public class android.net.metrics.NetworkMetrics$Summary
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.net.metrics.NetworkMetrics$Summary
  super_class: java.lang.Object
{
  public final int netId;
    descriptor: I
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final long transports;
    descriptor: J
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics dnsLatencies;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics dnsErrorRate;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics connectLatencies;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics connectErrorRate;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics tcpLossRate;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics roundTripTimeUs;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public final android.net.metrics.NetworkMetrics$Metrics sentAckTimeDiffenceMs;
    descriptor: Landroid/net/metrics/NetworkMetrics$Metrics;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL

  public void <init>(int, long);
    descriptor: (IJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.net.metrics.NetworkMetrics$Summary this
        start local 1 // int netId
        start local 2 // long transports
         0: .line 130
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 115
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.dnsLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
         2: .line 117
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.dnsErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
         3: .line 119
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.connectLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
         4: .line 121
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.connectErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
         5: .line 123
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
         6: .line 125
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.roundTripTimeUs:Landroid/net/metrics/NetworkMetrics$Metrics;
         7: .line 128
            aload 0 /* this */
            new android.net.metrics.NetworkMetrics$Metrics
            dup
            invokespecial android.net.metrics.NetworkMetrics$Metrics.<init>:()V
            putfield android.net.metrics.NetworkMetrics$Summary.sentAckTimeDiffenceMs:Landroid/net/metrics/NetworkMetrics$Metrics;
         8: .line 131
            aload 0 /* this */
            iload 1 /* netId */
            putfield android.net.metrics.NetworkMetrics$Summary.netId:I
         9: .line 132
            aload 0 /* this */
            lload 2 /* transports */
            putfield android.net.metrics.NetworkMetrics$Summary.transports:J
        10: .line 133
            return
        end local 2 // long transports
        end local 1 // int netId
        end local 0 // android.net.metrics.NetworkMetrics$Summary this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Landroid/net/metrics/NetworkMetrics$Summary;
            0   11     1       netId  I
            0   11     2  transports  J
    MethodParameters:
            Name  Flags
      netId       
      transports  

  void merge(android.net.metrics.NetworkMetrics$Summary);
    descriptor: (Landroid/net/metrics/NetworkMetrics$Summary;)V
    flags: (0x0000) 
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.net.metrics.NetworkMetrics$Summary this
        start local 1 // android.net.metrics.NetworkMetrics$Summary that
         0: .line 136
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            aload 1 /* that */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.merge:(Landroid/net/metrics/NetworkMetrics$Metrics;)V
         1: .line 137
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            aload 1 /* that */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.merge:(Landroid/net/metrics/NetworkMetrics$Metrics;)V
         2: .line 138
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            aload 1 /* that */
            getfield android.net.metrics.NetworkMetrics$Summary.connectLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.merge:(Landroid/net/metrics/NetworkMetrics$Metrics;)V
         3: .line 139
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            aload 1 /* that */
            getfield android.net.metrics.NetworkMetrics$Summary.connectErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.merge:(Landroid/net/metrics/NetworkMetrics$Metrics;)V
         4: .line 140
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            aload 1 /* that */
            getfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.merge:(Landroid/net/metrics/NetworkMetrics$Metrics;)V
         5: .line 141
            return
        end local 1 // android.net.metrics.NetworkMetrics$Summary that
        end local 0 // android.net.metrics.NetworkMetrics$Summary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Landroid/net/metrics/NetworkMetrics$Summary;
            0    6     1  that  Landroid/net/metrics/NetworkMetrics$Summary;
    MethodParameters:
      Name  Flags
      that  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=6, args_size=1
        start local 0 // android.net.metrics.NetworkMetrics$Summary this
         0: .line 145
            new java.util.StringJoiner
            dup
            ldc ", "
            ldc "{"
            ldc "}"
            invokespecial java.util.StringJoiner.<init>:(Ljava/lang/CharSequence;Ljava/lang/CharSequence;Ljava/lang/CharSequence;)V
            astore 1 /* j */
        start local 1 // java.util.StringJoiner j
         1: .line 146
            aload 1 /* j */
            new java.lang.StringBuilder
            dup
            ldc "netId="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.netId:I
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
         2: .line 147
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.transports:J
            invokestatic com.android.internal.util.BitUtils.unpackBits:(J)[I
            dup
            astore 5
            arraylength
            istore 4
            iconst_0
            istore 3
            goto 6
      StackMap locals: android.net.metrics.NetworkMetrics$Summary java.util.StringJoiner top int int int[]
      StackMap stack:
         3: aload 5
            iload 3
            iaload
            istore 2 /* t */
        start local 2 // int t
         4: .line 148
            aload 1 /* j */
            iload 2 /* t */
            invokestatic android.net.NetworkCapabilities.transportNameOf:(I)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        end local 2 // int t
         5: .line 147
            iinc 3 1
      StackMap locals:
      StackMap stack:
         6: iload 3
            iload 4
            if_icmplt 3
         7: .line 150
            aload 1 /* j */
            ldc "dns avg=%dms max=%dms err=%.1f%% tot=%d"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
         8: .line 151
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.max:D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
         9: .line 152
            ldc 100.0
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            dmul
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.dnsErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.count:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        10: .line 150
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        11: .line 153
            aload 1 /* j */
            ldc "connect avg=%dms max=%dms err=%.1f%% tot=%d"
            iconst_4
            anewarray java.lang.Object
            dup
            iconst_0
        12: .line 154
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectLatencies:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.max:D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
        13: .line 155
            ldc 100.0
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            dmul
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_3
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.connectErrorRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.count:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        14: .line 153
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        15: .line 156
            aload 1 /* j */
            ldc "tcp avg_loss=%.1f%% total_sent=%d total_lost=%d"
            iconst_3
            anewarray java.lang.Object
            dup
            iconst_0
        16: .line 157
            ldc 100.0
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            dmul
            invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.count:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            dup
            iconst_2
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.tcpLossRate:Landroid/net/metrics/NetworkMetrics$Metrics;
            getfield android.net.metrics.NetworkMetrics$Metrics.sum:D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
        17: .line 156
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        18: .line 158
            aload 1 /* j */
            ldc "tcp rtt=%dms"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.roundTripTimeUs:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            ldc 1000.0
            ddiv
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        19: .line 159
            aload 1 /* j */
            ldc "tcp sent-ack_diff=%dms"
            iconst_1
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield android.net.metrics.NetworkMetrics$Summary.sentAckTimeDiffenceMs:Landroid/net/metrics/NetworkMetrics$Metrics;
            invokevirtual android.net.metrics.NetworkMetrics$Metrics.average:()D
            d2i
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            invokevirtual java.util.StringJoiner.add:(Ljava/lang/CharSequence;)Ljava/util/StringJoiner;
            pop
        20: .line 160
            aload 1 /* j */
            invokevirtual java.util.StringJoiner.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.util.StringJoiner j
        end local 0 // android.net.metrics.NetworkMetrics$Summary this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   21     0  this  Landroid/net/metrics/NetworkMetrics$Summary;
            1   21     1     j  Ljava/util/StringJoiner;
            4    5     2     t  I
}
SourceFile: "NetworkMetrics.java"
NestHost: android.net.metrics.NetworkMetrics
InnerClasses:
  Metrics = android.net.metrics.NetworkMetrics$Metrics of android.net.metrics.NetworkMetrics
  public Summary = android.net.metrics.NetworkMetrics$Summary of android.net.metrics.NetworkMetrics