public class android.net.NetworkStatsHistory implements android.os.Parcelable
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.net.NetworkStatsHistory
  super_class: java.lang.Object
{
  private static final int VERSION_INIT;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private static final int VERSION_ADD_PACKETS;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private static final int VERSION_ADD_ACTIVE;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 3

  public static final int FIELD_ACTIVE_TIME;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int FIELD_RX_BYTES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int FIELD_RX_PACKETS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int FIELD_TX_BYTES;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public static final int FIELD_TX_PACKETS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 16

  public static final int FIELD_OPERATIONS;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 32

  public static final int FIELD_ALL;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: -1

  private long bucketDuration;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private int bucketCount;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private long[] bucketStart;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] activeTime;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] rxBytes;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] rxPackets;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] txBytes;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] txPackets;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long[] operations;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long totalBytes;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  public static final android.os.Parcelable$Creator<android.net.NetworkStatsHistory> CREATOR;
    descriptor: Landroid/os/Parcelable$Creator;
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    Signature: Landroid/os/Parcelable$Creator<Landroid/net/NetworkStatsHistory;>;

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=0, args_size=0
         0: .line 704
            new android.net.NetworkStatsHistory$1
            dup
            invokespecial android.net.NetworkStatsHistory$1.<init>:()V
            putstatic android.net.NetworkStatsHistory.CREATOR:Landroid/os/Parcelable$Creator;
         1: .line 714
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long bucketDuration
         0: .line 103
            aload 0 /* this */
            lload 1 /* bucketDuration */
            bipush 10
            iconst_m1
            invokespecial android.net.NetworkStatsHistory.<init>:(JII)V
         1: .line 104
            return
        end local 1 // long bucketDuration
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Landroid/net/NetworkStatsHistory;
            0    2     1  bucketDuration  J
    MethodParameters:
                Name  Flags
      bucketDuration  

  public void <init>(long, int);
    descriptor: (JI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long bucketDuration
        start local 3 // int initialSize
         0: .line 107
            aload 0 /* this */
            lload 1 /* bucketDuration */
            iload 3 /* initialSize */
            iconst_m1
            invokespecial android.net.NetworkStatsHistory.<init>:(JII)V
         1: .line 108
            return
        end local 3 // int initialSize
        end local 1 // long bucketDuration
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Landroid/net/NetworkStatsHistory;
            0    2     1  bucketDuration  J
            0    2     3     initialSize  I
    MethodParameters:
                Name  Flags
      bucketDuration  
      initialSize     

  public void <init>(long, int, int);
    descriptor: (JII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long bucketDuration
        start local 3 // int initialSize
        start local 4 // int fields
         0: .line 110
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 111
            aload 0 /* this */
            lload 1 /* bucketDuration */
            putfield android.net.NetworkStatsHistory.bucketDuration:J
         2: .line 112
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.bucketStart:[J
         3: .line 113
            iload 4 /* fields */
            iconst_1
            iand
            ifeq 4
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.activeTime:[J
         4: .line 114
      StackMap locals: android.net.NetworkStatsHistory long int int
      StackMap stack:
            iload 4 /* fields */
            iconst_2
            iand
            ifeq 5
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.rxBytes:[J
         5: .line 115
      StackMap locals:
      StackMap stack:
            iload 4 /* fields */
            iconst_4
            iand
            ifeq 6
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.rxPackets:[J
         6: .line 116
      StackMap locals:
      StackMap stack:
            iload 4 /* fields */
            bipush 8
            iand
            ifeq 7
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.txBytes:[J
         7: .line 117
      StackMap locals:
      StackMap stack:
            iload 4 /* fields */
            bipush 16
            iand
            ifeq 8
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.txPackets:[J
         8: .line 118
      StackMap locals:
      StackMap stack:
            iload 4 /* fields */
            bipush 32
            iand
            ifeq 9
            aload 0 /* this */
            iload 3 /* initialSize */
            newarray 11
            putfield android.net.NetworkStatsHistory.operations:[J
         9: .line 119
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield android.net.NetworkStatsHistory.bucketCount:I
        10: .line 120
            aload 0 /* this */
            lconst_0
            putfield android.net.NetworkStatsHistory.totalBytes:J
        11: .line 121
            return
        end local 4 // int fields
        end local 3 // int initialSize
        end local 1 // long bucketDuration
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Landroid/net/NetworkStatsHistory;
            0   12     1  bucketDuration  J
            0   12     3     initialSize  I
            0   12     4          fields  I
    MethodParameters:
                Name  Flags
      bucketDuration  
      initialSize     
      fields          

  public void <init>(android.net.NetworkStatsHistory, long);
    descriptor: (Landroid/net/NetworkStatsHistory;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // android.net.NetworkStatsHistory existing
        start local 2 // long bucketDuration
         0: .line 124
            aload 0 /* this */
            lload 2 /* bucketDuration */
            aload 1 /* existing */
            lload 2 /* bucketDuration */
            invokevirtual android.net.NetworkStatsHistory.estimateResizeBuckets:(J)I
            invokespecial android.net.NetworkStatsHistory.<init>:(JI)V
         1: .line 125
            aload 0 /* this */
            aload 1 /* existing */
            invokevirtual android.net.NetworkStatsHistory.recordEntireHistory:(Landroid/net/NetworkStatsHistory;)V
         2: .line 126
            return
        end local 2 // long bucketDuration
        end local 1 // android.net.NetworkStatsHistory existing
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    3     0            this  Landroid/net/NetworkStatsHistory;
            0    3     1        existing  Landroid/net/NetworkStatsHistory;
            0    3     2  bucketDuration  J
    MethodParameters:
                Name  Flags
      existing        
      bucketDuration  

  public void <init>(android.os.Parcel);
    descriptor: (Landroid/os/Parcel;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // android.os.Parcel in
         0: .line 128
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 129
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual android.os.Parcel.readLong:()J
            putfield android.net.NetworkStatsHistory.bucketDuration:J
         2: .line 130
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.bucketStart:[J
         3: .line 131
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.activeTime:[J
         4: .line 132
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.rxBytes:[J
         5: .line 133
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.rxPackets:[J
         6: .line 134
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.txBytes:[J
         7: .line 135
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.txPackets:[J
         8: .line 136
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.readLongArray:(Landroid/os/Parcel;)[J
            putfield android.net.NetworkStatsHistory.operations:[J
         9: .line 137
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            putfield android.net.NetworkStatsHistory.bucketCount:I
        10: .line 138
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual android.os.Parcel.readLong:()J
            putfield android.net.NetworkStatsHistory.totalBytes:J
        11: .line 139
            return
        end local 1 // android.os.Parcel in
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Landroid/net/NetworkStatsHistory;
            0   12     1    in  Landroid/os/Parcel;
    MethodParameters:
      Name  Flags
      in    

  public void writeToParcel(android.os.Parcel, int);
    descriptor: (Landroid/os/Parcel;I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // android.os.Parcel out
        start local 2 // int flags
         0: .line 143
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            invokevirtual android.os.Parcel.writeLong:(J)V
         1: .line 144
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         2: .line 145
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         3: .line 146
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         4: .line 147
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         5: .line 148
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         6: .line 149
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         7: .line 150
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$ParcelUtils.writeLongArray:(Landroid/os/Parcel;[JI)V
         8: .line 151
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.totalBytes:J
            invokevirtual android.os.Parcel.writeLong:(J)V
         9: .line 152
            return
        end local 2 // int flags
        end local 1 // android.os.Parcel out
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Landroid/net/NetworkStatsHistory;
            0   10     1    out  Landroid/os/Parcel;
            0   10     2  flags  I
    MethodParameters:
       Name  Flags
      out    
      flags  

  public void <init>(java.io.DataInputStream);
    descriptor: (Ljava/io/DataInputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // java.io.DataInputStream in
         0: .line 154
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 155
            aload 1 /* in */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 2 /* version */
        start local 2 // int version
         2: .line 156
            iload 2 /* version */
            tableswitch { // 1 - 3
                    1: 3
                    2: 13
                    3: 13
              default: 26
          }
         3: .line 158
      StackMap locals: android.net.NetworkStatsHistory java.io.DataInputStream int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual java.io.DataInputStream.readLong:()J
            putfield android.net.NetworkStatsHistory.bucketDuration:J
         4: .line 159
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readFullLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.bucketStart:[J
         5: .line 160
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readFullLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.rxBytes:[J
         6: .line 161
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            newarray 11
            putfield android.net.NetworkStatsHistory.rxPackets:[J
         7: .line 162
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readFullLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.txBytes:[J
         8: .line 163
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            newarray 11
            putfield android.net.NetworkStatsHistory.txPackets:[J
         9: .line 164
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            newarray 11
            putfield android.net.NetworkStatsHistory.operations:[J
        10: .line 165
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            putfield android.net.NetworkStatsHistory.bucketCount:I
        11: .line 166
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            invokestatic com.android.internal.util.ArrayUtils.total:([J)J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            invokestatic com.android.internal.util.ArrayUtils.total:([J)J
            ladd
            putfield android.net.NetworkStatsHistory.totalBytes:J
        12: .line 167
            goto 27
        13: .line 171
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* in */
            invokevirtual java.io.DataInputStream.readLong:()J
            putfield android.net.NetworkStatsHistory.bucketDuration:J
        14: .line 172
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.bucketStart:[J
        15: .line 173
            aload 0 /* this */
            iload 2 /* version */
            iconst_3
            if_icmplt 16
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            goto 17
        16: .line 174
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            newarray 11
        17: .line 173
      StackMap locals: android.net.NetworkStatsHistory java.io.DataInputStream int
      StackMap stack: android.net.NetworkStatsHistory long[]
            putfield android.net.NetworkStatsHistory.activeTime:[J
        18: .line 175
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.rxBytes:[J
        19: .line 176
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.rxPackets:[J
        20: .line 177
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.txBytes:[J
        21: .line 178
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.txPackets:[J
        22: .line 179
            aload 0 /* this */
            aload 1 /* in */
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.readVarLongArray:(Ljava/io/DataInputStream;)[J
            putfield android.net.NetworkStatsHistory.operations:[J
        23: .line 180
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            putfield android.net.NetworkStatsHistory.bucketCount:I
        24: .line 181
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            invokestatic com.android.internal.util.ArrayUtils.total:([J)J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            invokestatic com.android.internal.util.ArrayUtils.total:([J)J
            ladd
            putfield android.net.NetworkStatsHistory.totalBytes:J
        25: .line 182
            goto 27
        26: .line 185
      StackMap locals:
      StackMap stack:
            new java.net.ProtocolException
            dup
            new java.lang.StringBuilder
            dup
            ldc "unexpected version: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 2 /* version */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        27: .line 189
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpne 30
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpne 30
        28: .line 190
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpne 30
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpne 30
        29: .line 191
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpne 30
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            arraylength
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpeq 31
        30: .line 192
      StackMap locals:
      StackMap stack:
            new java.net.ProtocolException
            dup
            ldc "Mismatched history lengths"
            invokespecial java.net.ProtocolException.<init>:(Ljava/lang/String;)V
            athrow
        31: .line 194
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int version
        end local 1 // java.io.DataInputStream in
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Landroid/net/NetworkStatsHistory;
            0   32     1       in  Ljava/io/DataInputStream;
            2   32     2  version  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      in    

  public void writeToStream(java.io.DataOutputStream);
    descriptor: (Ljava/io/DataOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // java.io.DataOutputStream out
         0: .line 197
            aload 1 /* out */
            iconst_3
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         1: .line 198
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            invokevirtual java.io.DataOutputStream.writeLong:(J)V
         2: .line 199
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         3: .line 200
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         4: .line 201
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         5: .line 202
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         6: .line 203
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         7: .line 204
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         8: .line 205
            aload 1 /* out */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            invokestatic android.net.NetworkStatsHistory$DataStreamUtils.writeVarLongArray:(Ljava/io/DataOutputStream;[JI)V
         9: .line 206
            return
        end local 1 // java.io.DataOutputStream out
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   10     0  this  Landroid/net/NetworkStatsHistory;
            0   10     1   out  Ljava/io/DataOutputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      out   

  public int describeContents();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 210
            iconst_0
            ireturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;

  public int size();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 214
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            ireturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;

  public long getBucketDuration();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 218
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lreturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;

  public long getStart();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 222
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            ifle 2
         1: .line 223
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iconst_0
            laload
            lreturn
         2: .line 225
      StackMap locals:
      StackMap stack:
            ldc 9223372036854775807
            lreturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/net/NetworkStatsHistory;

  public long getEnd();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 230
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            ifle 2
         1: .line 231
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iconst_1
            isub
            laload
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lreturn
         2: .line 233
      StackMap locals:
      StackMap stack:
            ldc -9223372036854775808
            lreturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/net/NetworkStatsHistory;

  public long getTotalBytes();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 241
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.totalBytes:J
            lreturn
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;

  public int getIndexBefore(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long time
         0: .line 249
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            lload 1 /* time */
            invokestatic java.util.Arrays.binarySearch:([JIIJ)I
            istore 3 /* index */
        start local 3 // int index
         1: .line 250
            iload 3 /* index */
            ifge 4
         2: .line 251
            iload 3 /* index */
            iconst_m1
            ixor
            iconst_1
            isub
            istore 3 /* index */
         3: .line 252
            goto 5
         4: .line 253
      StackMap locals: int
      StackMap stack:
            iinc 3 /* index */ -1
         5: .line 255
      StackMap locals:
      StackMap stack:
            iload 3 /* index */
            iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iconst_1
            isub
            invokestatic android.util.MathUtils.constrain:(III)I
            ireturn
        end local 3 // int index
        end local 1 // long time
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Landroid/net/NetworkStatsHistory;
            0    6     1   time  J
            1    6     3  index  I
    MethodParameters:
      Name  Flags
      time  

  public int getIndexAfter(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long time
         0: .line 263
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            lload 1 /* time */
            invokestatic java.util.Arrays.binarySearch:([JIIJ)I
            istore 3 /* index */
        start local 3 // int index
         1: .line 264
            iload 3 /* index */
            ifge 4
         2: .line 265
            iload 3 /* index */
            iconst_m1
            ixor
            istore 3 /* index */
         3: .line 266
            goto 5
         4: .line 267
      StackMap locals: int
      StackMap stack:
            iinc 3 /* index */ 1
         5: .line 269
      StackMap locals:
      StackMap stack:
            iload 3 /* index */
            iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iconst_1
            isub
            invokestatic android.util.MathUtils.constrain:(III)I
            ireturn
        end local 3 // int index
        end local 1 // long time
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    6     0   this  Landroid/net/NetworkStatsHistory;
            0    6     1   time  J
            1    6     3  index  I
    MethodParameters:
      Name  Flags
      time  

  public android.net.NetworkStatsHistory$Entry getValues(int, android.net.NetworkStatsHistory$Entry);
    descriptor: (ILandroid/net/NetworkStatsHistory$Entry;)Landroid/net/NetworkStatsHistory$Entry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // int i
        start local 2 // android.net.NetworkStatsHistory$Entry recycle
         0: .line 276
            aload 2 /* recycle */
            ifnull 1
            aload 2 /* recycle */
            goto 2
      StackMap locals:
      StackMap stack:
         1: new android.net.NetworkStatsHistory$Entry
            dup
            invokespecial android.net.NetworkStatsHistory$Entry.<init>:()V
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
         2: astore 3 /* entry */
        start local 3 // android.net.NetworkStatsHistory$Entry entry
         3: .line 277
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 1 /* i */
            laload
            putfield android.net.NetworkStatsHistory$Entry.bucketStart:J
         4: .line 278
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            putfield android.net.NetworkStatsHistory$Entry.bucketDuration:J
         5: .line 279
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.activeTime:J
         6: .line 280
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.rxBytes:J
         7: .line 281
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.rxPackets:J
         8: .line 282
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.txBytes:J
         9: .line 283
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.txPackets:J
        10: .line 284
            aload 3 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 1 /* i */
            ldc -1
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStatsHistory$Entry.operations:J
        11: .line 285
            aload 3 /* entry */
            areturn
        end local 3 // android.net.NetworkStatsHistory$Entry entry
        end local 2 // android.net.NetworkStatsHistory$Entry recycle
        end local 1 // int i
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   12     0     this  Landroid/net/NetworkStatsHistory;
            0   12     1        i  I
            0   12     2  recycle  Landroid/net/NetworkStatsHistory$Entry;
            3   12     3    entry  Landroid/net/NetworkStatsHistory$Entry;
    MethodParameters:
         Name  Flags
      i        
      recycle  

  public void setValues(int, android.net.NetworkStatsHistory$Entry);
    descriptor: (ILandroid/net/NetworkStatsHistory$Entry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // int i
        start local 2 // android.net.NetworkStatsHistory$Entry entry
         0: .line 290
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 1
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.totalBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* i */
            laload
            lsub
            putfield android.net.NetworkStatsHistory.totalBytes:J
         1: .line 291
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 2
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.totalBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* i */
            laload
            lsub
            putfield android.net.NetworkStatsHistory.totalBytes:J
         2: .line 293
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.bucketStart:J
            lastore
         3: .line 294
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.activeTime:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         4: .line 295
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.rxBytes:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         5: .line 296
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.rxPackets:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         6: .line 297
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.txBytes:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         7: .line 298
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.txPackets:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         8: .line 299
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 1 /* i */
            aload 2 /* entry */
            getfield android.net.NetworkStatsHistory$Entry.operations:J
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
         9: .line 302
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 10
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.totalBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* i */
            laload
            ladd
            putfield android.net.NetworkStatsHistory.totalBytes:J
        10: .line 303
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 11
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.totalBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* i */
            laload
            ladd
            putfield android.net.NetworkStatsHistory.totalBytes:J
        11: .line 304
      StackMap locals:
      StackMap stack:
            return
        end local 2 // android.net.NetworkStatsHistory$Entry entry
        end local 1 // int i
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   12     0   this  Landroid/net/NetworkStatsHistory;
            0   12     1      i  I
            0   12     2  entry  Landroid/net/NetworkStatsHistory$Entry;
    MethodParameters:
       Name  Flags
      i      
      entry  

  public void recordData(long, long, long, long);
    descriptor: (JJJJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=21, locals=9, args_size=5
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // long rxBytes
        start local 7 // long txBytes
         0: .line 312
            aload 0 /* this */
            lload 1 /* start */
            lload 3 /* end */
            new android.net.NetworkStats$Entry
            dup
         1: .line 313
            getstatic android.net.NetworkStats.IFACE_ALL:Ljava/lang/String;
            iconst_m1
            iconst_0
            iconst_0
            lload 5 /* rxBytes */
            lconst_0
            lload 7 /* txBytes */
            lconst_0
            lconst_0
            invokespecial android.net.NetworkStats$Entry.<init>:(Ljava/lang/String;IIIJJJJJ)V
         2: .line 312
            invokevirtual android.net.NetworkStatsHistory.recordData:(JJLandroid/net/NetworkStats$Entry;)V
         3: .line 314
            return
        end local 7 // long txBytes
        end local 5 // long rxBytes
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Landroid/net/NetworkStatsHistory;
            0    4     1    start  J
            0    4     3      end  J
            0    4     5  rxBytes  J
            0    4     7  txBytes  J
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
         Name  Flags
      start    
      end      
      rxBytes  
      txBytes  

  public void recordData(long, long, android.net.NetworkStats$Entry);
    descriptor: (JJLandroid/net/NetworkStats$Entry;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=36, args_size=4
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // android.net.NetworkStats$Entry entry
         0: .line 321
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.rxBytes:J
            lstore 6 /* rxBytes */
        start local 6 // long rxBytes
         1: .line 322
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.rxPackets:J
            lstore 8 /* rxPackets */
        start local 8 // long rxPackets
         2: .line 323
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.txBytes:J
            lstore 10 /* txBytes */
        start local 10 // long txBytes
         3: .line 324
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.txPackets:J
            lstore 12 /* txPackets */
        start local 12 // long txPackets
         4: .line 325
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.operations:J
            lstore 14 /* operations */
        start local 14 // long operations
         5: .line 327
            aload 5 /* entry */
            invokevirtual android.net.NetworkStats$Entry.isNegative:()Z
            ifeq 7
         6: .line 328
            new java.lang.IllegalArgumentException
            dup
            ldc "tried recording negative data"
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
         7: .line 330
      StackMap locals: android.net.NetworkStatsHistory long long android.net.NetworkStats$Entry long long long long long
      StackMap stack:
            aload 5 /* entry */
            invokevirtual android.net.NetworkStats$Entry.isEmpty:()Z
            ifeq 9
         8: .line 331
            return
         9: .line 335
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 1 /* start */
            lload 3 /* end */
            invokevirtual android.net.NetworkStatsHistory.ensureBuckets:(JJ)V
        10: .line 338
            lload 3 /* end */
            lload 1 /* start */
            lsub
            lstore 16 /* duration */
        start local 16 // long duration
        11: .line 339
            aload 0 /* this */
            lload 3 /* end */
            invokevirtual android.net.NetworkStatsHistory.getIndexAfter:(J)I
            istore 18 /* startIndex */
        start local 18 // int startIndex
        12: .line 340
            iload 18 /* startIndex */
            istore 19 /* i */
        start local 19 // int i
        13: goto 33
        14: .line 341
      StackMap locals: long int int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 19 /* i */
            laload
            lstore 20 /* curStart */
        start local 20 // long curStart
        15: .line 342
            lload 20 /* curStart */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lstore 22 /* curEnd */
        start local 22 // long curEnd
        16: .line 345
            lload 22 /* curEnd */
            lload 1 /* start */
            lcmp
            ifge 17
            goto 34
        17: .line 347
      StackMap locals: long long
      StackMap stack:
            lload 20 /* curStart */
            lload 3 /* end */
            lcmp
            ifle 18
            goto 32
        18: .line 349
      StackMap locals:
      StackMap stack:
            lload 22 /* curEnd */
            lload 3 /* end */
            invokestatic java.lang.Math.min:(JJ)J
            lload 20 /* curStart */
            lload 1 /* start */
            invokestatic java.lang.Math.max:(JJ)J
            lsub
            lstore 24 /* overlap */
        start local 24 // long overlap
        19: .line 350
            lload 24 /* overlap */
            lconst_0
            lcmp
            ifgt 20
            goto 32
        20: .line 353
      StackMap locals: long
      StackMap stack:
            lload 6 /* rxBytes */
            lload 24 /* overlap */
            lmul
            lload 16 /* duration */
            ldiv
            lstore 26 /* fracRxBytes */
        start local 26 // long fracRxBytes
        21: .line 354
            lload 8 /* rxPackets */
            lload 24 /* overlap */
            lmul
            lload 16 /* duration */
            ldiv
            lstore 28 /* fracRxPackets */
        start local 28 // long fracRxPackets
        22: .line 355
            lload 10 /* txBytes */
            lload 24 /* overlap */
            lmul
            lload 16 /* duration */
            ldiv
            lstore 30 /* fracTxBytes */
        start local 30 // long fracTxBytes
        23: .line 356
            lload 12 /* txPackets */
            lload 24 /* overlap */
            lmul
            lload 16 /* duration */
            ldiv
            lstore 32 /* fracTxPackets */
        start local 32 // long fracTxPackets
        24: .line 357
            lload 14 /* operations */
            lload 24 /* overlap */
            lmul
            lload 16 /* duration */
            ldiv
            lstore 34 /* fracOperations */
        start local 34 // long fracOperations
        25: .line 359
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 19 /* i */
            lload 24 /* overlap */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
        26: .line 360
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 19 /* i */
            lload 26 /* fracRxBytes */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
            lload 6 /* rxBytes */
            lload 26 /* fracRxBytes */
            lsub
            lstore 6 /* rxBytes */
        27: .line 361
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 19 /* i */
            lload 28 /* fracRxPackets */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
            lload 8 /* rxPackets */
            lload 28 /* fracRxPackets */
            lsub
            lstore 8 /* rxPackets */
        28: .line 362
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 19 /* i */
            lload 30 /* fracTxBytes */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
            lload 10 /* txBytes */
            lload 30 /* fracTxBytes */
            lsub
            lstore 10 /* txBytes */
        29: .line 363
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 19 /* i */
            lload 32 /* fracTxPackets */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
            lload 12 /* txPackets */
            lload 32 /* fracTxPackets */
            lsub
            lstore 12 /* txPackets */
        30: .line 364
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 19 /* i */
            lload 34 /* fracOperations */
            invokestatic android.net.NetworkStatsHistory.addLong:([JIJ)V
            lload 14 /* operations */
            lload 34 /* fracOperations */
            lsub
            lstore 14 /* operations */
        31: .line 366
            lload 16 /* duration */
            lload 24 /* overlap */
            lsub
            lstore 16 /* duration */
        end local 34 // long fracOperations
        end local 32 // long fracTxPackets
        end local 30 // long fracTxBytes
        end local 28 // long fracRxPackets
        end local 26 // long fracRxBytes
        end local 24 // long overlap
        end local 22 // long curEnd
        end local 20 // long curStart
        32: .line 340
      StackMap locals:
      StackMap stack:
            iinc 19 /* i */ -1
      StackMap locals:
      StackMap stack:
        33: iload 19 /* i */
            ifge 14
        end local 19 // int i
        34: .line 369
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.totalBytes:J
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.rxBytes:J
            aload 5 /* entry */
            getfield android.net.NetworkStats$Entry.txBytes:J
            ladd
            ladd
            putfield android.net.NetworkStatsHistory.totalBytes:J
        35: .line 370
            return
        end local 18 // int startIndex
        end local 16 // long duration
        end local 14 // long operations
        end local 12 // long txPackets
        end local 10 // long txBytes
        end local 8 // long rxPackets
        end local 6 // long rxBytes
        end local 5 // android.net.NetworkStats$Entry entry
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   36     0            this  Landroid/net/NetworkStatsHistory;
            0   36     1           start  J
            0   36     3             end  J
            0   36     5           entry  Landroid/net/NetworkStats$Entry;
            1   36     6         rxBytes  J
            2   36     8       rxPackets  J
            3   36    10         txBytes  J
            4   36    12       txPackets  J
            5   36    14      operations  J
           11   36    16        duration  J
           12   36    18      startIndex  I
           13   34    19               i  I
           15   32    20        curStart  J
           16   32    22          curEnd  J
           19   32    24         overlap  J
           21   32    26     fracRxBytes  J
           22   32    28   fracRxPackets  J
           23   32    30     fracTxBytes  J
           24   32    32   fracTxPackets  J
           25   32    34  fracOperations  J
    MethodParameters:
       Name  Flags
      start  
      end    
      entry  

  public void recordEntireHistory(android.net.NetworkStatsHistory);
    descriptor: (Landroid/net/NetworkStatsHistory;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // android.net.NetworkStatsHistory input
         0: .line 377
            aload 0 /* this */
            aload 1 /* input */
            ldc -9223372036854775808
            ldc 9223372036854775807
            invokevirtual android.net.NetworkStatsHistory.recordHistory:(Landroid/net/NetworkStatsHistory;JJ)V
         1: .line 378
            return
        end local 1 // android.net.NetworkStatsHistory input
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0   this  Landroid/net/NetworkStatsHistory;
            0    2     1  input  Landroid/net/NetworkStatsHistory;
    MethodParameters:
       Name  Flags
      input  

  public void recordHistory(android.net.NetworkStatsHistory, long, long);
    descriptor: (Landroid/net/NetworkStatsHistory;JJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=12, args_size=4
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // android.net.NetworkStatsHistory input
        start local 2 // long start
        start local 4 // long end
         0: .line 386
            new android.net.NetworkStats$Entry
            dup
         1: .line 387
            getstatic android.net.NetworkStats.IFACE_ALL:Ljava/lang/String;
            iconst_m1
            iconst_0
            iconst_0
            lconst_0
            lconst_0
            lconst_0
            lconst_0
            lconst_0
         2: .line 386
            invokespecial android.net.NetworkStats$Entry.<init>:(Ljava/lang/String;IIIJJJJJ)V
            astore 6 /* entry */
        start local 6 // android.net.NetworkStats$Entry entry
         3: .line 388
            iconst_0
            istore 7 /* i */
        start local 7 // int i
         4: goto 15
         5: .line 389
      StackMap locals: android.net.NetworkStats$Entry int
      StackMap stack:
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 7 /* i */
            laload
            lstore 8 /* bucketStart */
        start local 8 // long bucketStart
         6: .line 390
            lload 8 /* bucketStart */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lstore 10 /* bucketEnd */
        start local 10 // long bucketEnd
         7: .line 393
            lload 8 /* bucketStart */
            lload 2 /* start */
            lcmp
            iflt 14
            lload 10 /* bucketEnd */
            lload 4 /* end */
            lcmp
            ifle 8
            goto 14
         8: .line 395
      StackMap locals: long long
      StackMap stack:
            aload 6 /* entry */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 7 /* i */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStats$Entry.rxBytes:J
         9: .line 396
            aload 6 /* entry */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 7 /* i */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStats$Entry.rxPackets:J
        10: .line 397
            aload 6 /* entry */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 7 /* i */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStats$Entry.txBytes:J
        11: .line 398
            aload 6 /* entry */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 7 /* i */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStats$Entry.txPackets:J
        12: .line 399
            aload 6 /* entry */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 7 /* i */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.getLong:([JIJ)J
            putfield android.net.NetworkStats$Entry.operations:J
        13: .line 401
            aload 0 /* this */
            lload 8 /* bucketStart */
            lload 10 /* bucketEnd */
            aload 6 /* entry */
            invokevirtual android.net.NetworkStatsHistory.recordData:(JJLandroid/net/NetworkStats$Entry;)V
        end local 10 // long bucketEnd
        end local 8 // long bucketStart
        14: .line 388
      StackMap locals:
      StackMap stack:
            iinc 7 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 7 /* i */
            aload 1 /* input */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmplt 5
        end local 7 // int i
        16: .line 403
            return
        end local 6 // android.net.NetworkStats$Entry entry
        end local 4 // long end
        end local 2 // long start
        end local 1 // android.net.NetworkStatsHistory input
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   17     0         this  Landroid/net/NetworkStatsHistory;
            0   17     1        input  Landroid/net/NetworkStatsHistory;
            0   17     2        start  J
            0   17     4          end  J
            3   17     6        entry  Landroid/net/NetworkStats$Entry;
            4   16     7            i  I
            6   14     8  bucketStart  J
            7   14    10    bucketEnd  J
    MethodParameters:
       Name  Flags
      input  
      start  
      end    

  private void ensureBuckets(long, long);
    descriptor: (JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=8, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
         0: .line 410
            lload 1 /* start */
            lload 1 /* start */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lrem
            lsub
            lstore 1 /* start */
         1: .line 411
            lload 3 /* end */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lload 3 /* end */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lrem
            lsub
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lrem
            ladd
            lstore 3 /* end */
         2: .line 413
            lload 1 /* start */
            lstore 5 /* now */
        start local 5 // long now
         3: goto 8
         4: .line 415
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            lload 5 /* now */
            invokestatic java.util.Arrays.binarySearch:([JIIJ)I
            istore 7 /* index */
        start local 7 // int index
         5: .line 416
            iload 7 /* index */
            ifge 7
         6: .line 418
            aload 0 /* this */
            iload 7 /* index */
            iconst_m1
            ixor
            lload 5 /* now */
            invokevirtual android.net.NetworkStatsHistory.insertBucket:(IJ)V
        end local 7 // int index
         7: .line 413
      StackMap locals:
      StackMap stack:
            lload 5 /* now */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lstore 5 /* now */
      StackMap locals:
      StackMap stack:
         8: lload 5 /* now */
            lload 3 /* end */
            lcmp
            iflt 4
        end local 5 // long now
         9: .line 421
            return
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   10     0   this  Landroid/net/NetworkStatsHistory;
            0   10     1  start  J
            0   10     3    end  J
            3    9     5    now  J
            5    7     7  index  I
    MethodParameters:
       Name  Flags
      start  
      end    

  private void insertBucket(int, long);
    descriptor: (IJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // int index
        start local 2 // long start
         0: .line 428
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            if_icmplt 9
         1: .line 429
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            bipush 10
            invokestatic java.lang.Math.max:(II)I
            iconst_3
            imul
            iconst_2
            idiv
            istore 4 /* newLength */
        start local 4 // int newLength
         2: .line 430
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.bucketStart:[J
         3: .line 431
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            ifnull 4
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.activeTime:[J
         4: .line 432
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 5
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.rxBytes:[J
         5: .line 433
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 6
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.rxPackets:[J
         6: .line 434
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 7
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.txBytes:[J
         7: .line 435
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 8
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.txPackets:[J
         8: .line 436
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 9
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 4 /* newLength */
            invokestatic java.util.Arrays.copyOf:([JI)[J
            putfield android.net.NetworkStatsHistory.operations:[J
        end local 4 // int newLength
         9: .line 440
      StackMap locals:
      StackMap stack:
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmpge 19
        10: .line 441
            iload 1 /* index */
            iconst_1
            iadd
            istore 4 /* dstPos */
        start local 4 // int dstPos
        11: .line 442
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iload 1 /* index */
            isub
            istore 5 /* length */
        start local 5 // int length
        12: .line 444
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        13: .line 445
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            ifnull 14
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 446
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 15
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        15: .line 447
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 16
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 448
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 17
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        17: .line 449
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 18
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 450
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 19
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 1 /* index */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 4 /* dstPos */
            iload 5 /* length */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        end local 5 // int length
        end local 4 // int dstPos
        19: .line 453
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 1 /* index */
            lload 2 /* start */
            lastore
        20: .line 454
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        21: .line 455
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        22: .line 456
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        23: .line 457
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        24: .line 458
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        25: .line 459
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 1 /* index */
            lconst_0
            invokestatic android.net.NetworkStatsHistory.setLong:([JIJ)V
        26: .line 460
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iconst_1
            iadd
            putfield android.net.NetworkStatsHistory.bucketCount:I
        27: .line 461
            return
        end local 2 // long start
        end local 1 // int index
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   28     0       this  Landroid/net/NetworkStatsHistory;
            0   28     1      index  I
            0   28     2      start  J
            2    9     4  newLength  I
           11   19     4     dstPos  I
           12   19     5     length  I
    MethodParameters:
       Name  Flags
      index  
      start  

  public void clear();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 467
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n\tEmptyArray cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;

  public void removeBucketsBefore(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=8, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long cutoff
         0: .line 484
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         1: goto 6
         2: .line 485
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 3 /* i */
            laload
            lstore 4 /* curStart */
        start local 4 // long curStart
         3: .line 486
            lload 4 /* curStart */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lstore 6 /* curEnd */
        start local 6 // long curEnd
         4: .line 490
            lload 6 /* curEnd */
            lload 1 /* cutoff */
            lcmp
            ifle 5
            goto 7
        end local 6 // long curEnd
        end local 4 // long curStart
         5: .line 484
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmplt 2
         7: .line 493
      StackMap locals:
      StackMap stack:
            iload 3 /* i */
            ifle 17
         8: .line 494
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            arraylength
            istore 4 /* length */
        start local 4 // int length
         9: .line 495
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.bucketStart:[J
        10: .line 496
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            ifnull 11
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.activeTime:[J
        11: .line 497
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 12
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.rxBytes:[J
        12: .line 498
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 13
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.rxPackets:[J
        13: .line 499
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 14
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.txBytes:[J
        14: .line 500
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 15
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.txPackets:[J
        15: .line 501
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 16
            aload 0 /* this */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 3 /* i */
            iload 4 /* length */
            invokestatic java.util.Arrays.copyOfRange:([JII)[J
            putfield android.net.NetworkStatsHistory.operations:[J
        16: .line 502
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield android.net.NetworkStatsHistory.bucketCount:I
            iload 3 /* i */
            isub
            putfield android.net.NetworkStatsHistory.bucketCount:I
        end local 4 // int length
        17: .line 506
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int i
        end local 1 // long cutoff
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   18     0      this  Landroid/net/NetworkStatsHistory;
            0   18     1    cutoff  J
            1   18     3         i  I
            3    5     4  curStart  J
            4    5     6    curEnd  J
            9   17     4    length  I
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
        Name  Flags
      cutoff  

  public android.net.NetworkStatsHistory$Entry getValues(long, long, android.net.NetworkStatsHistory$Entry);
    descriptor: (JJLandroid/net/NetworkStatsHistory$Entry;)Landroid/net/NetworkStatsHistory$Entry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=8, locals=6, args_size=4
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // android.net.NetworkStatsHistory$Entry recycle
         0: .line 513
            aload 0 /* this */
            lload 1 /* start */
            lload 3 /* end */
            ldc 9223372036854775807
            aload 5 /* recycle */
            invokevirtual android.net.NetworkStatsHistory.getValues:(JJJLandroid/net/NetworkStatsHistory$Entry;)Landroid/net/NetworkStatsHistory$Entry;
            areturn
        end local 5 // android.net.NetworkStatsHistory$Entry recycle
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Landroid/net/NetworkStatsHistory;
            0    1     1    start  J
            0    1     3      end  J
            0    1     5  recycle  Landroid/net/NetworkStatsHistory$Entry;
    MethodParameters:
         Name  Flags
      start    
      end      
      recycle  

  public android.net.NetworkStatsHistory$Entry getValues(long, long, long, android.net.NetworkStatsHistory$Entry);
    descriptor: (JJJLandroid/net/NetworkStatsHistory$Entry;)Landroid/net/NetworkStatsHistory$Entry;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=22, args_size=5
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // long now
        start local 7 // android.net.NetworkStatsHistory$Entry recycle
         0: .line 521
            aload 7 /* recycle */
            ifnull 1
            aload 7 /* recycle */
            goto 2
      StackMap locals:
      StackMap stack:
         1: new android.net.NetworkStatsHistory$Entry
            dup
            invokespecial android.net.NetworkStatsHistory$Entry.<init>:()V
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
         2: astore 8 /* entry */
        start local 8 // android.net.NetworkStatsHistory$Entry entry
         3: .line 522
            aload 8 /* entry */
            lload 3 /* end */
            lload 1 /* start */
            lsub
            putfield android.net.NetworkStatsHistory$Entry.bucketDuration:J
         4: .line 523
            aload 8 /* entry */
            lload 1 /* start */
            putfield android.net.NetworkStatsHistory$Entry.bucketStart:J
         5: .line 524
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            ifnull 6
            lconst_0
            goto 7
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry
         6: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
         7: putfield android.net.NetworkStatsHistory$Entry.activeTime:J
         8: .line 525
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 9
            lconst_0
            goto 10
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
         9: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
        10: putfield android.net.NetworkStatsHistory$Entry.rxBytes:J
        11: .line 526
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 12
            lconst_0
            goto 13
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
        12: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
        13: putfield android.net.NetworkStatsHistory$Entry.rxPackets:J
        14: .line 527
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 15
            lconst_0
            goto 16
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
        15: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
        16: putfield android.net.NetworkStatsHistory$Entry.txBytes:J
        17: .line 528
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 18
            lconst_0
            goto 19
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
        18: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
        19: putfield android.net.NetworkStatsHistory$Entry.txPackets:J
        20: .line 529
            aload 8 /* entry */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 21
            lconst_0
            goto 22
      StackMap locals:
      StackMap stack: android.net.NetworkStatsHistory$Entry
        21: ldc -1
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry
      StackMap stack: android.net.NetworkStatsHistory$Entry long
        22: putfield android.net.NetworkStatsHistory$Entry.operations:J
        23: .line 531
            aload 0 /* this */
            lload 3 /* end */
            invokevirtual android.net.NetworkStatsHistory.getIndexAfter:(J)I
            istore 9 /* startIndex */
        start local 9 // int startIndex
        24: .line 532
            iload 9 /* startIndex */
            istore 10 /* i */
        start local 10 // int i
        25: goto 51
        26: .line 533
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 10 /* i */
            laload
            lstore 11 /* curStart */
        start local 11 // long curStart
        27: .line 534
            lload 11 /* curStart */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ladd
            lstore 13 /* curEnd */
        start local 13 // long curEnd
        28: .line 537
            lload 13 /* curEnd */
            lload 1 /* start */
            lcmp
            ifgt 29
            goto 52
        29: .line 539
      StackMap locals: long long
      StackMap stack:
            lload 11 /* curStart */
            lload 3 /* end */
            lcmp
            iflt 30
            goto 50
        30: .line 542
      StackMap locals:
      StackMap stack:
            lload 11 /* curStart */
            lload 5 /* now */
            lcmp
            ifge 31
            lload 13 /* curEnd */
            lload 5 /* now */
            lcmp
            ifle 31
            iconst_1
            goto 32
      StackMap locals:
      StackMap stack:
        31: iconst_0
      StackMap locals:
      StackMap stack: int
        32: istore 15 /* activeBucket */
        start local 15 // boolean activeBucket
        33: .line 544
            iload 15 /* activeBucket */
            ifeq 36
        34: .line 545
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            lstore 16 /* overlap */
        start local 16 // long overlap
        35: .line 546
            goto 43
        end local 16 // long overlap
        36: .line 547
      StackMap locals: int
      StackMap stack:
            lload 13 /* curEnd */
            lload 3 /* end */
            lcmp
            ifge 37
            lload 13 /* curEnd */
            goto 38
      StackMap locals:
      StackMap stack:
        37: lload 3 /* end */
      StackMap locals:
      StackMap stack: long
        38: lstore 18 /* overlapEnd */
        start local 18 // long overlapEnd
        39: .line 548
            lload 11 /* curStart */
            lload 1 /* start */
            lcmp
            ifle 40
            lload 11 /* curStart */
            goto 41
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry int int long long int top top long
      StackMap stack:
        40: lload 1 /* start */
      StackMap locals:
      StackMap stack: long
        41: lstore 20 /* overlapStart */
        start local 20 // long overlapStart
        42: .line 549
            lload 18 /* overlapEnd */
            lload 20 /* overlapStart */
            lsub
            lstore 16 /* overlap */
        end local 20 // long overlapStart
        end local 18 // long overlapEnd
        start local 16 // long overlap
        43: .line 551
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry int int long long int long
      StackMap stack:
            lload 16 /* overlap */
            lconst_0
            lcmp
            ifgt 44
            goto 50
        44: .line 554
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            ifnull 45
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.activeTime:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.activeTime:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.activeTime:J
        45: .line 555
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 46
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.rxBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.rxBytes:J
        46: .line 556
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 47
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.rxPackets:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.rxPackets:J
        47: .line 557
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 48
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.txBytes:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.txBytes:J
        48: .line 558
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 49
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.txPackets:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.txPackets:J
        49: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 50
            aload 8 /* entry */
            dup
            getfield android.net.NetworkStatsHistory$Entry.operations:J
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 10 /* i */
            laload
            lload 16 /* overlap */
            lmul
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldiv
            ladd
            putfield android.net.NetworkStatsHistory$Entry.operations:J
        end local 16 // long overlap
        end local 15 // boolean activeBucket
        end local 13 // long curEnd
        end local 11 // long curStart
        50: .line 532
      StackMap locals: android.net.NetworkStatsHistory long long long android.net.NetworkStatsHistory$Entry android.net.NetworkStatsHistory$Entry int int
      StackMap stack:
            iinc 10 /* i */ -1
      StackMap locals:
      StackMap stack:
        51: iload 10 /* i */
            ifge 26
        end local 10 // int i
        52: .line 561
      StackMap locals:
      StackMap stack:
            aload 8 /* entry */
            areturn
        end local 9 // int startIndex
        end local 8 // android.net.NetworkStatsHistory$Entry entry
        end local 7 // android.net.NetworkStatsHistory$Entry recycle
        end local 5 // long now
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   53     0          this  Landroid/net/NetworkStatsHistory;
            0   53     1         start  J
            0   53     3           end  J
            0   53     5           now  J
            0   53     7       recycle  Landroid/net/NetworkStatsHistory$Entry;
            3   53     8         entry  Landroid/net/NetworkStatsHistory$Entry;
           24   53     9    startIndex  I
           25   52    10             i  I
           27   50    11      curStart  J
           28   50    13        curEnd  J
           33   50    15  activeBucket  Z
           35   36    16       overlap  J
           43   50    16       overlap  J
           39   43    18    overlapEnd  J
           42   43    20  overlapStart  J
    MethodParameters:
         Name  Flags
      start    
      end      
      now      
      recycle  

  public void generateRandom(long, long, long);
    descriptor: (JJJ)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=19, args_size=4
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // long bytes
         0: .line 569
            new java.util.Random
            dup
            invokespecial java.util.Random.<init>:()V
            astore 7 /* r */
        start local 7 // java.util.Random r
         1: .line 571
            aload 7 /* r */
            invokevirtual java.util.Random.nextFloat:()F
            fstore 8 /* fractionRx */
        start local 8 // float fractionRx
         2: .line 572
            lload 5 /* bytes */
            l2f
            fload 8 /* fractionRx */
            fmul
            f2l
            lstore 9 /* rxBytes */
        start local 9 // long rxBytes
         3: .line 573
            lload 5 /* bytes */
            l2f
            fconst_1
            fload 8 /* fractionRx */
            fsub
            fmul
            f2l
            lstore 11 /* txBytes */
        start local 11 // long txBytes
         4: .line 575
            lload 9 /* rxBytes */
            ldc 1024
            ldiv
            lstore 13 /* rxPackets */
        start local 13 // long rxPackets
         5: .line 576
            lload 11 /* txBytes */
            ldc 1024
            ldiv
            lstore 15 /* txPackets */
        start local 15 // long txPackets
         6: .line 577
            lload 9 /* rxBytes */
            ldc 2048
            ldiv
            lstore 17 /* operations */
        start local 17 // long operations
         7: .line 579
            aload 0 /* this */
            lload 1 /* start */
            lload 3 /* end */
            lload 9 /* rxBytes */
            lload 13 /* rxPackets */
            lload 11 /* txBytes */
            lload 15 /* txPackets */
            lload 17 /* operations */
            aload 7 /* r */
            invokevirtual android.net.NetworkStatsHistory.generateRandom:(JJJJJJJLjava/util/Random;)V
         8: .line 580
            return
        end local 17 // long operations
        end local 15 // long txPackets
        end local 13 // long rxPackets
        end local 11 // long txBytes
        end local 9 // long rxBytes
        end local 8 // float fractionRx
        end local 7 // java.util.Random r
        end local 5 // long bytes
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Landroid/net/NetworkStatsHistory;
            0    9     1       start  J
            0    9     3         end  J
            0    9     5       bytes  J
            1    9     7           r  Ljava/util/Random;
            2    9     8  fractionRx  F
            3    9     9     rxBytes  J
            4    9    11     txBytes  J
            5    9    13   rxPackets  J
            6    9    15   txPackets  J
            7    9    17  operations  J
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
       Name  Flags
      start  
      end    
      bytes  

  public void generateRandom(long, long, long, long, long, long, long, java.util.Random);
    descriptor: (JJJJJJJLjava/util/Random;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=16, locals=21, args_size=9
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
        start local 5 // long rxBytes
        start local 7 // long rxPackets
        start local 9 // long txBytes
        start local 11 // long txPackets
        start local 13 // long operations
        start local 15 // java.util.Random r
         0: .line 588
            aload 0 /* this */
            lload 1 /* start */
            lload 3 /* end */
            invokevirtual android.net.NetworkStatsHistory.ensureBuckets:(JJ)V
         1: .line 590
            new android.net.NetworkStats$Entry
            dup
         2: .line 591
            getstatic android.net.NetworkStats.IFACE_ALL:Ljava/lang/String;
            iconst_m1
            iconst_0
            iconst_0
            lconst_0
            lconst_0
            lconst_0
            lconst_0
            lconst_0
         3: .line 590
            invokespecial android.net.NetworkStats$Entry.<init>:(Ljava/lang/String;IIIJJJJJ)V
            astore 16 /* entry */
        start local 16 // android.net.NetworkStats$Entry entry
         4: .line 592
            goto 18
         5: .line 594
      StackMap locals: android.net.NetworkStats$Entry
      StackMap stack:
            aload 15 /* r */
            lload 1 /* start */
            lload 3 /* end */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            lstore 17 /* curStart */
        start local 17 // long curStart
         6: .line 595
            lload 17 /* curStart */
            aload 15 /* r */
            lconst_0
            lload 3 /* end */
            lload 17 /* curStart */
            lsub
            ldc 2
            ldiv
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            ladd
            lstore 19 /* curEnd */
        start local 19 // long curEnd
         7: .line 597
            aload 16 /* entry */
            aload 15 /* r */
            lconst_0
            lload 5 /* rxBytes */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            putfield android.net.NetworkStats$Entry.rxBytes:J
         8: .line 598
            aload 16 /* entry */
            aload 15 /* r */
            lconst_0
            lload 7 /* rxPackets */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            putfield android.net.NetworkStats$Entry.rxPackets:J
         9: .line 599
            aload 16 /* entry */
            aload 15 /* r */
            lconst_0
            lload 9 /* txBytes */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            putfield android.net.NetworkStats$Entry.txBytes:J
        10: .line 600
            aload 16 /* entry */
            aload 15 /* r */
            lconst_0
            lload 11 /* txPackets */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            putfield android.net.NetworkStats$Entry.txPackets:J
        11: .line 601
            aload 16 /* entry */
            aload 15 /* r */
            lconst_0
            lload 13 /* operations */
            invokestatic android.net.NetworkStatsHistory.randomLong:(Ljava/util/Random;JJ)J
            putfield android.net.NetworkStats$Entry.operations:J
        12: .line 603
            lload 5 /* rxBytes */
            aload 16 /* entry */
            getfield android.net.NetworkStats$Entry.rxBytes:J
            lsub
            lstore 5 /* rxBytes */
        13: .line 604
            lload 7 /* rxPackets */
            aload 16 /* entry */
            getfield android.net.NetworkStats$Entry.rxPackets:J
            lsub
            lstore 7 /* rxPackets */
        14: .line 605
            lload 9 /* txBytes */
            aload 16 /* entry */
            getfield android.net.NetworkStats$Entry.txBytes:J
            lsub
            lstore 9 /* txBytes */
        15: .line 606
            lload 11 /* txPackets */
            aload 16 /* entry */
            getfield android.net.NetworkStats$Entry.txPackets:J
            lsub
            lstore 11 /* txPackets */
        16: .line 607
            lload 13 /* operations */
            aload 16 /* entry */
            getfield android.net.NetworkStats$Entry.operations:J
            lsub
            lstore 13 /* operations */
        17: .line 609
            aload 0 /* this */
            lload 17 /* curStart */
            lload 19 /* curEnd */
            aload 16 /* entry */
            invokevirtual android.net.NetworkStatsHistory.recordData:(JJLandroid/net/NetworkStats$Entry;)V
        end local 19 // long curEnd
        end local 17 // long curStart
        18: .line 592
      StackMap locals:
      StackMap stack:
            lload 5 /* rxBytes */
            ldc 1024
            lcmp
            ifgt 5
            lload 7 /* rxPackets */
            ldc 128
            lcmp
            ifgt 5
            lload 9 /* txBytes */
            ldc 1024
            lcmp
            ifgt 5
            lload 11 /* txPackets */
            ldc 128
            lcmp
            ifgt 5
        19: .line 593
            lload 13 /* operations */
            ldc 32
        20: .line 592
            lcmp
            ifgt 5
        21: .line 611
            return
        end local 16 // android.net.NetworkStats$Entry entry
        end local 15 // java.util.Random r
        end local 13 // long operations
        end local 11 // long txPackets
        end local 9 // long txBytes
        end local 7 // long rxPackets
        end local 5 // long rxBytes
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   22     0        this  Landroid/net/NetworkStatsHistory;
            0   22     1       start  J
            0   22     3         end  J
            0   22     5     rxBytes  J
            0   22     7   rxPackets  J
            0   22     9     txBytes  J
            0   22    11   txPackets  J
            0   22    13  operations  J
            0   22    15           r  Ljava/util/Random;
            4   22    16       entry  Landroid/net/NetworkStats$Entry;
            6   18    17    curStart  J
            7   18    19      curEnd  J
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
            Name  Flags
      start       
      end         
      rxBytes     
      rxPackets   
      txBytes     
      txPackets   
      operations  
      r           

  public static long randomLong(java.util.Random, long, long);
    descriptor: (Ljava/util/Random;JJ)J
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=6, locals=5, args_size=3
        start local 0 // java.util.Random r
        start local 1 // long start
        start local 3 // long end
         0: .line 614
            lload 1 /* start */
            l2f
            aload 0 /* r */
            invokevirtual java.util.Random.nextFloat:()F
            lload 3 /* end */
            lload 1 /* start */
            lsub
            l2f
            fmul
            fadd
            f2l
            lreturn
        end local 3 // long end
        end local 1 // long start
        end local 0 // java.util.Random r
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0      r  Ljava/util/Random;
            0    1     1  start  J
            0    1     3    end  J
    MethodParameters:
       Name  Flags
      r      
      start  
      end    

  public boolean intersects(long, long);
    descriptor: (JJ)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long start
        start local 3 // long end
         0: .line 621
            aload 0 /* this */
            invokevirtual android.net.NetworkStatsHistory.getStart:()J
            lstore 5 /* dataStart */
        start local 5 // long dataStart
         1: .line 622
            aload 0 /* this */
            invokevirtual android.net.NetworkStatsHistory.getEnd:()J
            lstore 7 /* dataEnd */
        start local 7 // long dataEnd
         2: .line 623
            lload 1 /* start */
            lload 5 /* dataStart */
            lcmp
            iflt 3
            lload 1 /* start */
            lload 7 /* dataEnd */
            lcmp
            ifgt 3
            iconst_1
            ireturn
         3: .line 624
      StackMap locals: long long
      StackMap stack:
            lload 3 /* end */
            lload 5 /* dataStart */
            lcmp
            iflt 4
            lload 3 /* end */
            lload 7 /* dataEnd */
            lcmp
            ifgt 4
            iconst_1
            ireturn
         4: .line 625
      StackMap locals:
      StackMap stack:
            lload 5 /* dataStart */
            lload 1 /* start */
            lcmp
            iflt 5
            lload 5 /* dataStart */
            lload 3 /* end */
            lcmp
            ifgt 5
            iconst_1
            ireturn
         5: .line 626
      StackMap locals:
      StackMap stack:
            lload 7 /* dataEnd */
            lload 1 /* start */
            lcmp
            iflt 6
            lload 7 /* dataEnd */
            lload 3 /* end */
            lcmp
            ifgt 6
            iconst_1
            ireturn
         6: .line 627
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 7 // long dataEnd
        end local 5 // long dataStart
        end local 3 // long end
        end local 1 // long start
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    7     0       this  Landroid/net/NetworkStatsHistory;
            0    7     1      start  J
            0    7     3        end  J
            1    7     5  dataStart  J
            2    7     7    dataEnd  J
    MethodParameters:
       Name  Flags
      start  
      end    

  public void dump(com.android.internal.util.IndentingPrintWriter, boolean);
    descriptor: (Lcom/android/internal/util/IndentingPrintWriter;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // com.android.internal.util.IndentingPrintWriter pw
        start local 2 // boolean fullHistory
         0: .line 631
            aload 1 /* pw */
            ldc "NetworkStatsHistory: bucketDuration="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
         1: .line 632
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldc 1000
            ldiv
            invokevirtual com.android.internal.util.IndentingPrintWriter.println:(J)V
         2: .line 633
            aload 1 /* pw */
            invokevirtual com.android.internal.util.IndentingPrintWriter.increaseIndent:()Lcom/android/internal/util/IndentingPrintWriter;
            pop
         3: .line 635
            iload 2 /* fullHistory */
            ifeq 4
            iconst_0
            goto 5
      StackMap locals:
      StackMap stack:
         4: iconst_0
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            bipush 32
            isub
            invokestatic java.lang.Math.max:(II)I
      StackMap locals:
      StackMap stack: int
         5: istore 3 /* start */
        start local 3 // int start
         6: .line 636
            iload 3 /* start */
            ifle 8
         7: .line 637
            aload 1 /* pw */
            ldc "(omitting "
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            iload 3 /* start */
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(I)V
            aload 1 /* pw */
            ldc " buckets)"
            invokevirtual com.android.internal.util.IndentingPrintWriter.println:(Ljava/lang/String;)V
         8: .line 640
      StackMap locals: int
      StackMap stack:
            iload 3 /* start */
            istore 4 /* i */
        start local 4 // int i
         9: goto 18
        10: .line 641
      StackMap locals: int
      StackMap stack:
            aload 1 /* pw */
            ldc "st="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 4 /* i */
            laload
            ldc 1000
            ldiv
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        11: .line 642
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 12
            aload 1 /* pw */
            ldc " rb="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 4 /* i */
            laload
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        12: .line 643
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 13
            aload 1 /* pw */
            ldc " rp="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 4 /* i */
            laload
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        13: .line 644
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 14
            aload 1 /* pw */
            ldc " tb="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 4 /* i */
            laload
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        14: .line 645
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 15
            aload 1 /* pw */
            ldc " tp="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 4 /* i */
            laload
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        15: .line 646
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 16
            aload 1 /* pw */
            ldc " op="
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(Ljava/lang/String;)V
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 4 /* i */
            laload
            invokevirtual com.android.internal.util.IndentingPrintWriter.print:(J)V
        16: .line 647
      StackMap locals:
      StackMap stack:
            aload 1 /* pw */
            invokevirtual com.android.internal.util.IndentingPrintWriter.println:()V
        17: .line 640
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 4 /* i */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmplt 10
        end local 4 // int i
        19: .line 650
            aload 1 /* pw */
            invokevirtual com.android.internal.util.IndentingPrintWriter.decreaseIndent:()Lcom/android/internal/util/IndentingPrintWriter;
            pop
        20: .line 651
            return
        end local 3 // int start
        end local 2 // boolean fullHistory
        end local 1 // com.android.internal.util.IndentingPrintWriter pw
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   21     0         this  Landroid/net/NetworkStatsHistory;
            0   21     1           pw  Lcom/android/internal/util/IndentingPrintWriter;
            0   21     2  fullHistory  Z
            6   21     3        start  I
            9   19     4            i  I
    MethodParameters:
             Name  Flags
      pw           
      fullHistory  

  public void dumpCheckin(java.io.PrintWriter);
    descriptor: (Ljava/io/PrintWriter;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // java.io.PrintWriter pw
         0: .line 654
            aload 1 /* pw */
            ldc "d,"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         1: .line 655
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketDuration:J
            ldc 1000
            ldiv
            invokevirtual java.io.PrintWriter.print:(J)V
         2: .line 656
            aload 1 /* pw */
            invokevirtual java.io.PrintWriter.println:()V
         3: .line 658
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         4: goto 23
         5: .line 659
      StackMap locals: int
      StackMap stack:
            aload 1 /* pw */
            ldc "b,"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
         6: .line 660
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketStart:[J
            iload 2 /* i */
            laload
            ldc 1000
            ldiv
            invokevirtual java.io.PrintWriter.print:(J)V
            aload 1 /* pw */
            bipush 44
            invokevirtual java.io.PrintWriter.print:(C)V
         7: .line 661
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            ifnull 8
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxBytes:[J
            iload 2 /* i */
            laload
            invokevirtual java.io.PrintWriter.print:(J)V
            goto 9
      StackMap locals:
      StackMap stack:
         8: aload 1 /* pw */
            ldc "*"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
      StackMap locals:
      StackMap stack:
         9: aload 1 /* pw */
            bipush 44
            invokevirtual java.io.PrintWriter.print:(C)V
        10: .line 662
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            ifnull 11
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.rxPackets:[J
            iload 2 /* i */
            laload
            invokevirtual java.io.PrintWriter.print:(J)V
            goto 12
      StackMap locals:
      StackMap stack:
        11: aload 1 /* pw */
            ldc "*"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
      StackMap locals:
      StackMap stack:
        12: aload 1 /* pw */
            bipush 44
            invokevirtual java.io.PrintWriter.print:(C)V
        13: .line 663
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            ifnull 14
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txBytes:[J
            iload 2 /* i */
            laload
            invokevirtual java.io.PrintWriter.print:(J)V
            goto 15
      StackMap locals:
      StackMap stack:
        14: aload 1 /* pw */
            ldc "*"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
      StackMap locals:
      StackMap stack:
        15: aload 1 /* pw */
            bipush 44
            invokevirtual java.io.PrintWriter.print:(C)V
        16: .line 664
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            ifnull 17
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.txPackets:[J
            iload 2 /* i */
            laload
            invokevirtual java.io.PrintWriter.print:(J)V
            goto 18
      StackMap locals:
      StackMap stack:
        17: aload 1 /* pw */
            ldc "*"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
      StackMap locals:
      StackMap stack:
        18: aload 1 /* pw */
            bipush 44
            invokevirtual java.io.PrintWriter.print:(C)V
        19: .line 665
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            ifnull 20
            aload 1 /* pw */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.operations:[J
            iload 2 /* i */
            laload
            invokevirtual java.io.PrintWriter.print:(J)V
            goto 21
      StackMap locals:
      StackMap stack:
        20: aload 1 /* pw */
            ldc "*"
            invokevirtual java.io.PrintWriter.print:(Ljava/lang/String;)V
        21: .line 666
      StackMap locals:
      StackMap stack:
            aload 1 /* pw */
            invokevirtual java.io.PrintWriter.println:()V
        22: .line 658
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        23: iload 2 /* i */
            aload 0 /* this */
            getfield android.net.NetworkStatsHistory.bucketCount:I
            if_icmplt 5
        end local 2 // int i
        24: .line 668
            return
        end local 1 // java.io.PrintWriter pw
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   25     0  this  Landroid/net/NetworkStatsHistory;
            0   25     1    pw  Ljava/io/PrintWriter;
            4   24     2     i  I
    MethodParameters:
      Name  Flags
      pw    

  public void writeToProto(android.util.proto.ProtoOutputStream, long);
    descriptor: (Landroid/util/proto/ProtoOutputStream;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 673
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tNetworkStatsHistoryProto cannot be resolved to a variable\n\tNetworkStatsHistoryProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n\tNetworkStatsHistoryBucketProto cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Landroid/net/NetworkStatsHistory;
    MethodParameters:
       Name  Flags
      proto  
      tag    

  private static void writeToProto(android.util.proto.ProtoOutputStream, long, long[], int);
    descriptor: (Landroid/util/proto/ProtoOutputStream;J[JI)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=5, locals=5, args_size=4
        start local 0 // android.util.proto.ProtoOutputStream proto
        start local 1 // long tag
        start local 3 // long[] array
        start local 4 // int index
         0: .line 692
            aload 3 /* array */
            ifnull 2
         1: .line 693
            aload 0 /* proto */
            lload 1 /* tag */
            aload 3 /* array */
            iload 4 /* index */
            laload
            invokevirtual android.util.proto.ProtoOutputStream.write:(JJ)V
         2: .line 695
      StackMap locals:
      StackMap stack:
            return
        end local 4 // int index
        end local 3 // long[] array
        end local 1 // long tag
        end local 0 // android.util.proto.ProtoOutputStream proto
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  proto  Landroid/util/proto/ProtoOutputStream;
            0    3     1    tag  J
            0    3     3  array  [J
            0    3     4  index  I
    MethodParameters:
       Name  Flags
      proto  
      tag    
      array  
      index  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // android.net.NetworkStatsHistory this
         0: .line 699
            new java.io.CharArrayWriter
            dup
            invokespecial java.io.CharArrayWriter.<init>:()V
            astore 1 /* writer */
        start local 1 // java.io.CharArrayWriter writer
         1: .line 700
            aload 0 /* this */
            new com.android.internal.util.IndentingPrintWriter
            dup
            aload 1 /* writer */
            ldc "  "
            invokespecial com.android.internal.util.IndentingPrintWriter.<init>:(Ljava/io/Writer;Ljava/lang/String;)V
            iconst_0
            invokevirtual android.net.NetworkStatsHistory.dump:(Lcom/android/internal/util/IndentingPrintWriter;Z)V
         2: .line 701
            aload 1 /* writer */
            invokevirtual java.io.CharArrayWriter.toString:()Ljava/lang/String;
            areturn
        end local 1 // java.io.CharArrayWriter writer
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Landroid/net/NetworkStatsHistory;
            1    3     1  writer  Ljava/io/CharArrayWriter;

  private static long getLong(long[], int, long);
    descriptor: ([JIJ)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=4, args_size=3
        start local 0 // long[] array
        start local 1 // int i
        start local 2 // long value
         0: .line 717
            aload 0 /* array */
            ifnull 1
            aload 0 /* array */
            iload 1 /* i */
            laload
            goto 2
      StackMap locals:
      StackMap stack:
         1: lload 2 /* value */
      StackMap locals:
      StackMap stack: long
         2: lreturn
        end local 2 // long value
        end local 1 // int i
        end local 0 // long[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0  array  [J
            0    3     1      i  I
            0    3     2  value  J
    MethodParameters:
       Name  Flags
      array  
      i      
      value  

  private static void setLong(long[], int, long);
    descriptor: ([JIJ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=4, args_size=3
        start local 0 // long[] array
        start local 1 // int i
        start local 2 // long value
         0: .line 721
            aload 0 /* array */
            ifnull 1
            aload 0 /* array */
            iload 1 /* i */
            lload 2 /* value */
            lastore
         1: .line 722
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long value
        end local 1 // int i
        end local 0 // long[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  array  [J
            0    2     1      i  I
            0    2     2  value  J
    MethodParameters:
       Name  Flags
      array  
      i      
      value  

  private static void addLong(long[], int, long);
    descriptor: ([JIJ)V
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=6, locals=4, args_size=3
        start local 0 // long[] array
        start local 1 // int i
        start local 2 // long value
         0: .line 725
            aload 0 /* array */
            ifnull 1
            aload 0 /* array */
            iload 1 /* i */
            dup2
            laload
            lload 2 /* value */
            ladd
            lastore
         1: .line 726
      StackMap locals:
      StackMap stack:
            return
        end local 2 // long value
        end local 1 // int i
        end local 0 // long[] array
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    2     0  array  [J
            0    2     1      i  I
            0    2     2  value  J
    MethodParameters:
       Name  Flags
      array  
      i      
      value  

  public int estimateResizeBuckets(long);
    descriptor: (J)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // android.net.NetworkStatsHistory this
        start local 1 // long newBucketDuration
         0: .line 729
            aload 0 /* this */
            invokevirtual android.net.NetworkStatsHistory.size:()I
            i2l
            aload 0 /* this */
            invokevirtual android.net.NetworkStatsHistory.getBucketDuration:()J
            lmul
            lload 1 /* newBucketDuration */
            ldiv
            l2i
            ireturn
        end local 1 // long newBucketDuration
        end local 0 // android.net.NetworkStatsHistory this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    1     0               this  Landroid/net/NetworkStatsHistory;
            0    1     1  newBucketDuration  J
    MethodParameters:
                   Name  Flags
      newBucketDuration  
}
SourceFile: "NetworkStatsHistory.java"
NestMembers:
  android.net.NetworkStatsHistory$1  android.net.NetworkStatsHistory$DataStreamUtils  android.net.NetworkStatsHistory$Entry  android.net.NetworkStatsHistory$ParcelUtils
InnerClasses:
  public Entry = android.net.NetworkStats$Entry of android.net.NetworkStats
  android.net.NetworkStatsHistory$1
  public DataStreamUtils = android.net.NetworkStatsHistory$DataStreamUtils of android.net.NetworkStatsHistory
  public Entry = android.net.NetworkStatsHistory$Entry of android.net.NetworkStatsHistory
  public ParcelUtils = android.net.NetworkStatsHistory$ParcelUtils of android.net.NetworkStatsHistory
  public abstract Creator = android.os.Parcelable$Creator of android.os.Parcelable