final class com.google.protobuf.CodedInputStream$StreamDecoder extends com.google.protobuf.CodedInputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.google.protobuf.CodedInputStream$StreamDecoder
  super_class: com.google.protobuf.CodedInputStream
{
  private final java.io.InputStream input;
    descriptor: Ljava/io/InputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final byte[] buffer;
    descriptor: [B
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

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

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

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

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

  private com.google.protobuf.CodedInputStream$StreamDecoder$RefillCallback refillCallback;
    descriptor: Lcom/google/protobuf/CodedInputStream$StreamDecoder$RefillCallback;
    flags: (0x0002) ACC_PRIVATE

  private void <init>(java.io.InputStream, int);
    descriptor: (Ljava/io/InputStream;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // java.io.InputStream input
        start local 2 // int bufferSize
         0: .line 2048
            aload 0 /* this */
            invokespecial com.google.protobuf.CodedInputStream.<init>:()V
         1: .line 2046
            aload 0 /* this */
            ldc 2147483647
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
         2: .line 2720
            aload 0 /* this */
            aconst_null
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.refillCallback:Lcom/google/protobuf/CodedInputStream$StreamDecoder$RefillCallback;
         3: .line 2049
            aload 1 /* input */
            ldc "input"
            invokestatic com.google.protobuf.Internal.checkNotNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            pop
         4: .line 2050
            aload 0 /* this */
            aload 1 /* input */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
         5: .line 2051
            aload 0 /* this */
            iload 2 /* bufferSize */
            newarray 8
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
         6: .line 2052
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
         7: .line 2053
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         8: .line 2054
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         9: .line 2055
            return
        end local 2 // int bufferSize
        end local 1 // java.io.InputStream input
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   10     0        this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   10     1       input  Ljava/io/InputStream;
            0   10     2  bufferSize  I
    MethodParameters:
            Name  Flags
      input       final
      bufferSize  

  public int readTag();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2059
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.isAtEnd:()Z
            ifeq 3
         1: .line 2060
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
         2: .line 2061
            iconst_0
            ireturn
         3: .line 2064
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
         4: .line 2065
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
            invokestatic com.google.protobuf.WireFormat.getTagFieldNumber:(I)I
            ifne 6
         5: .line 2068
            invokestatic com.google.protobuf.InvalidProtocolBufferException.invalidTag:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         6: .line 2070
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public void checkLastTagWas(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int value
         0: .line 2075
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
            iload 1 /* value */
            if_icmpeq 2
         1: .line 2076
            invokestatic com.google.protobuf.InvalidProtocolBufferException.invalidEndTag:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         2: .line 2078
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int value
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    3     1  value  I
    Exceptions:
      throws com.google.protobuf.InvalidProtocolBufferException
    MethodParameters:
       Name  Flags
      value  final

  public int getLastTag();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2082
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.lastTag:I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;

  public boolean skipField(int);
    descriptor: (I)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int tag
         0: .line 2087
            iload 1 /* tag */
            invokestatic com.google.protobuf.WireFormat.getTagWireType:(I)I
            tableswitch { // 0 - 5
                    0: 1
                    1: 3
                    2: 5
                    3: 7
                    4: 12
                    5: 13
              default: 15
          }
         1: .line 2089
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawVarint:()V
         2: .line 2090
            iconst_1
            ireturn
         3: .line 2092
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            bipush 8
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytes:(I)V
         4: .line 2093
            iconst_1
            ireturn
         5: .line 2095
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytes:(I)V
         6: .line 2096
            iconst_1
            ireturn
         7: .line 2098
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipMessage:()V
         8: .line 2099
            aload 0 /* this */
         9: .line 2100
            iload 1 /* tag */
            invokestatic com.google.protobuf.WireFormat.getTagFieldNumber:(I)I
            iconst_4
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
        10: .line 2099
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
        11: .line 2101
            iconst_1
            ireturn
        12: .line 2103
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        13: .line 2105
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_4
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytes:(I)V
        14: .line 2106
            iconst_1
            ireturn
        15: .line 2108
      StackMap locals:
      StackMap stack:
            invokestatic com.google.protobuf.InvalidProtocolBufferException.invalidWireType:()Lcom/google/protobuf/InvalidProtocolBufferException$InvalidWireTypeException;
            athrow
        end local 1 // int tag
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   16     1   tag  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      tag   final

  public boolean skipField(int, com.google.protobuf.CodedOutputStream);
    descriptor: (ILcom/google/protobuf/CodedOutputStream;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int tag
        start local 2 // com.google.protobuf.CodedOutputStream output
         0: .line 2114
            iload 1 /* tag */
            invokestatic com.google.protobuf.WireFormat.getTagWireType:(I)I
            tableswitch { // 0 - 5
                    0: 1
                    1: 5
                    2: 9
                    3: 13
                    4: 21
                    5: 22
              default: 26
          }
         1: .line 2117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readInt64:()J
            lstore 3 /* value */
        start local 3 // long value
         2: .line 2118
            aload 2 /* output */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
         3: .line 2119
            aload 2 /* output */
            lload 3 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream.writeUInt64NoTag:(J)V
         4: .line 2120
            iconst_1
            ireturn
        end local 3 // long value
         5: .line 2124
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian64:()J
            lstore 3 /* value */
        start local 3 // long value
         6: .line 2125
            aload 2 /* output */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
         7: .line 2126
            aload 2 /* output */
            lload 3 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream.writeFixed64NoTag:(J)V
         8: .line 2127
            iconst_1
            ireturn
        end local 3 // long value
         9: .line 2131
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readBytes:()Lcom/google/protobuf/ByteString;
            astore 3 /* value */
        start local 3 // com.google.protobuf.ByteString value
        10: .line 2132
            aload 2 /* output */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
        11: .line 2133
            aload 2 /* output */
            aload 3 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream.writeBytesNoTag:(Lcom/google/protobuf/ByteString;)V
        12: .line 2134
            iconst_1
            ireturn
        end local 3 // com.google.protobuf.ByteString value
        13: .line 2138
      StackMap locals:
      StackMap stack:
            aload 2 /* output */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
        14: .line 2139
            aload 0 /* this */
            aload 2 /* output */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipMessage:(Lcom/google/protobuf/CodedOutputStream;)V
        15: .line 2142
            iload 1 /* tag */
            invokestatic com.google.protobuf.WireFormat.getTagFieldNumber:(I)I
            iconst_4
        16: .line 2141
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
        17: .line 2140
            istore 3 /* endtag */
        start local 3 // int endtag
        18: .line 2143
            aload 0 /* this */
            iload 3 /* endtag */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
        19: .line 2144
            aload 2 /* output */
            iload 3 /* endtag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
        20: .line 2145
            iconst_1
            ireturn
        end local 3 // int endtag
        21: .line 2149
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        22: .line 2153
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian32:()I
            istore 3 /* value */
        start local 3 // int value
        23: .line 2154
            aload 2 /* output */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedOutputStream.writeRawVarint32:(I)V
        24: .line 2155
            aload 2 /* output */
            iload 3 /* value */
            invokevirtual com.google.protobuf.CodedOutputStream.writeFixed32NoTag:(I)V
        25: .line 2156
            iconst_1
            ireturn
        end local 3 // int value
        26: .line 2159
      StackMap locals:
      StackMap stack:
            invokestatic com.google.protobuf.InvalidProtocolBufferException.invalidWireType:()Lcom/google/protobuf/InvalidProtocolBufferException$InvalidWireTypeException;
            athrow
        end local 2 // com.google.protobuf.CodedOutputStream output
        end local 1 // int tag
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   27     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   27     1     tag  I
            0   27     2  output  Lcom/google/protobuf/CodedOutputStream;
            2    5     3   value  J
            6    9     3   value  J
           10   13     3   value  Lcom/google/protobuf/ByteString;
           18   21     3  endtag  I
           23   26     3   value  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      tag     final
      output  final

  public void skipMessage();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readTag:()I
            istore 1 /* tag */
        start local 1 // int tag
         1: .line 2167
            iload 1 /* tag */
            ifeq 2
            aload 0 /* this */
            iload 1 /* tag */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipField:(I)Z
            ifne 0
         2: .line 2168
      StackMap locals: int
      StackMap stack:
            return
        end local 1 // int tag
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    3     1   tag  I
    Exceptions:
      throws java.io.IOException

  public void skipMessage(com.google.protobuf.CodedOutputStream);
    descriptor: (Lcom/google/protobuf/CodedOutputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // com.google.protobuf.CodedOutputStream output
         0: .line 2176
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readTag:()I
            istore 2 /* tag */
        start local 2 // int tag
         1: .line 2177
            iload 2 /* tag */
            ifeq 2
            aload 0 /* this */
            iload 2 /* tag */
            aload 1 /* output */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipField:(ILcom/google/protobuf/CodedOutputStream;)Z
            ifne 0
         2: .line 2178
      StackMap locals: int
      StackMap stack:
            return
        end local 2 // int tag
        end local 1 // com.google.protobuf.CodedOutputStream output
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    3     1  output  Lcom/google/protobuf/CodedOutputStream;
            1    3     2     tag  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      output  

  public double readDouble();
    descriptor: ()D
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2213
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian64:()J
            invokestatic java.lang.Double.longBitsToDouble:(J)D
            dreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public float readFloat();
    descriptor: ()F
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2218
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian32:()I
            invokestatic java.lang.Float.intBitsToFloat:(I)F
            freturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public long readUInt64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2223
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64:()J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public long readInt64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2228
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64:()J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readInt32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2233
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public long readFixed64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2238
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian64:()J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readFixed32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2243
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian32:()I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public boolean readBool();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2248
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64:()J
            lconst_0
            lcmp
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public java.lang.String readString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2253
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 2254
            iload 1 /* size */
            ifle 5
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmpgt 5
         2: .line 2257
            new java.lang.String
            dup
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            getstatic com.google.protobuf.Internal.UTF_8:Ljava/nio/charset/Charset;
            invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
            astore 2 /* result */
        start local 2 // java.lang.String result
         3: .line 2258
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         4: .line 2259
            aload 2 /* result */
            areturn
        end local 2 // java.lang.String result
         5: .line 2261
      StackMap locals: int
      StackMap stack:
            iload 1 /* size */
            ifne 7
         6: .line 2262
            ldc ""
            areturn
         7: .line 2264
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpgt 12
         8: .line 2265
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
         9: .line 2266
            new java.lang.String
            dup
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            getstatic com.google.protobuf.Internal.UTF_8:Ljava/nio/charset/Charset;
            invokespecial java.lang.String.<init>:([BIILjava/nio/charset/Charset;)V
            astore 2 /* result */
        start local 2 // java.lang.String result
        10: .line 2267
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        11: .line 2268
            aload 2 /* result */
            areturn
        end local 2 // java.lang.String result
        12: .line 2271
      StackMap locals:
      StackMap stack:
            new java.lang.String
            dup
            aload 0 /* this */
            iload 1 /* size */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPath:(IZ)[B
            getstatic com.google.protobuf.Internal.UTF_8:Ljava/nio/charset/Charset;
            invokespecial java.lang.String.<init>:([BLjava/nio/charset/Charset;)V
            areturn
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   13     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   13     1    size  I
            3    5     2  result  Ljava/lang/String;
           10   12     2  result  Ljava/lang/String;
    Exceptions:
      throws java.io.IOException

  public java.lang.String readStringRequireUtf8();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2276
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 2278
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 3 /* oldPos */
        start local 3 // int oldPos
         2: .line 2280
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 3 /* oldPos */
            isub
            if_icmpgt 7
            iload 1 /* size */
            ifle 7
         3: .line 2283
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* bytes */
        start local 2 // byte[] bytes
         4: .line 2284
            aload 0 /* this */
            iload 3 /* oldPos */
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         5: .line 2285
            iload 3 /* oldPos */
            istore 4 /* tempPos */
        start local 4 // int tempPos
         6: .line 2286
            goto 17
        end local 4 // int tempPos
        end local 2 // byte[] bytes
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int top int
      StackMap stack:
         7: iload 1 /* size */
            ifne 9
         8: .line 2287
            ldc ""
            areturn
         9: .line 2288
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpgt 15
        10: .line 2289
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
        11: .line 2290
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* bytes */
        start local 2 // byte[] bytes
        12: .line 2291
            iconst_0
            istore 4 /* tempPos */
        start local 4 // int tempPos
        13: .line 2292
            aload 0 /* this */
            iload 4 /* tempPos */
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        14: .line 2293
            goto 17
        end local 4 // int tempPos
        end local 2 // byte[] bytes
        15: .line 2295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPath:(IZ)[B
            astore 2 /* bytes */
        start local 2 // byte[] bytes
        16: .line 2296
            iconst_0
            istore 4 /* tempPos */
        start local 4 // int tempPos
        17: .line 2298
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int byte[] int int
      StackMap stack:
            aload 2 /* bytes */
            iload 4 /* tempPos */
            iload 1 /* size */
            invokestatic com.google.protobuf.Utf8.decodeUtf8:([BII)Ljava/lang/String;
            areturn
        end local 4 // int tempPos
        end local 3 // int oldPos
        end local 2 // byte[] bytes
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   18     1     size  I
            4    7     2    bytes  [B
           12   15     2    bytes  [B
           16   18     2    bytes  [B
            2   18     3   oldPos  I
            6    7     4  tempPos  I
           13   15     4  tempPos  I
           17   18     4  tempPos  I
    Exceptions:
      throws java.io.IOException

  public void readGroup(int, com.google.protobuf.MessageLite$Builder, com.google.protobuf.ExtensionRegistryLite);
    descriptor: (ILcom/google/protobuf/MessageLite$Builder;Lcom/google/protobuf/ExtensionRegistryLite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite$Builder builder
        start local 3 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
         0: .line 2307
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionLimit:I
            if_icmplt 2
         1: .line 2308
            invokestatic com.google.protobuf.InvalidProtocolBufferException.recursionLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         2: .line 2310
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         3: .line 2311
            aload 2 /* builder */
            aload 0 /* this */
            aload 3 /* extensionRegistry */
            invokeinterface com.google.protobuf.MessageLite$Builder.mergeFrom:(Lcom/google/protobuf/CodedInputStream;Lcom/google/protobuf/ExtensionRegistryLite;)Lcom/google/protobuf/MessageLite$Builder;
            pop
         4: .line 2312
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_4
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
         5: .line 2313
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         6: .line 2314
            return
        end local 3 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
        end local 2 // com.google.protobuf.MessageLite$Builder builder
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    7     1        fieldNumber  I
            0    7     2            builder  Lcom/google/protobuf/MessageLite$Builder;
            0    7     3  extensionRegistry  Lcom/google/protobuf/ExtensionRegistryLite;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      fieldNumber        final
      builder            final
      extensionRegistry  final

  public <T extends com.google.protobuf.MessageLite> T readGroup(int, com.google.protobuf.Parser<T>, com.google.protobuf.ExtensionRegistryLite);
    descriptor: (ILcom/google/protobuf/Parser;Lcom/google/protobuf/ExtensionRegistryLite;)Lcom/google/protobuf/MessageLite;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.Parser parser
        start local 3 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
         0: .line 2323
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionLimit:I
            if_icmplt 2
         1: .line 2324
            invokestatic com.google.protobuf.InvalidProtocolBufferException.recursionLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         2: .line 2326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         3: .line 2327
            aload 2 /* parser */
            aload 0 /* this */
            aload 3 /* extensionRegistry */
            invokeinterface com.google.protobuf.Parser.parsePartialFrom:(Lcom/google/protobuf/CodedInputStream;Lcom/google/protobuf/ExtensionRegistryLite;)Ljava/lang/Object;
            checkcast com.google.protobuf.MessageLite
            astore 4 /* result */
        start local 4 // com.google.protobuf.MessageLite result
         4: .line 2328
            aload 0 /* this */
            iload 1 /* fieldNumber */
            iconst_4
            invokestatic com.google.protobuf.WireFormat.makeTag:(II)I
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
         5: .line 2329
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         6: .line 2330
            aload 4 /* result */
            areturn
        end local 4 // com.google.protobuf.MessageLite result
        end local 3 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
        end local 2 // com.google.protobuf.Parser parser
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    7     0               this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    7     1        fieldNumber  I
            0    7     2             parser  Lcom/google/protobuf/Parser<TT;>;
            0    7     3  extensionRegistry  Lcom/google/protobuf/ExtensionRegistryLite;
            4    7     4             result  TT;
    Exceptions:
      throws java.io.IOException
    Signature: <T::Lcom/google/protobuf/MessageLite;>(ILcom/google/protobuf/Parser<TT;>;Lcom/google/protobuf/ExtensionRegistryLite;)TT;
    MethodParameters:
                   Name  Flags
      fieldNumber        final
      parser             final
      extensionRegistry  final

  public void readUnknownGroup(int, com.google.protobuf.MessageLite$Builder);
    descriptor: (ILcom/google/protobuf/MessageLite$Builder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int fieldNumber
        start local 2 // com.google.protobuf.MessageLite$Builder builder
         0: .line 2337
            aload 0 /* this */
            iload 1 /* fieldNumber */
            aload 2 /* builder */
            invokestatic com.google.protobuf.ExtensionRegistryLite.getEmptyRegistry:()Lcom/google/protobuf/ExtensionRegistryLite;
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readGroup:(ILcom/google/protobuf/MessageLite$Builder;Lcom/google/protobuf/ExtensionRegistryLite;)V
         1: .line 2338
            return
        end local 2 // com.google.protobuf.MessageLite$Builder builder
        end local 1 // int fieldNumber
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    2     1  fieldNumber  I
            0    2     2      builder  Lcom/google/protobuf/MessageLite$Builder;
    Exceptions:
      throws java.io.IOException
    RuntimeVisibleAnnotations: 
      java.lang.Deprecated()
    MethodParameters:
             Name  Flags
      fieldNumber  final
      builder      final

  public void readMessage(com.google.protobuf.MessageLite$Builder, com.google.protobuf.ExtensionRegistryLite);
    descriptor: (Lcom/google/protobuf/MessageLite$Builder;Lcom/google/protobuf/ExtensionRegistryLite;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // com.google.protobuf.MessageLite$Builder builder
        start local 2 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
         0: .line 2344
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 3 /* length */
        start local 3 // int length
         1: .line 2345
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionLimit:I
            if_icmplt 3
         2: .line 2346
            invokestatic com.google.protobuf.InvalidProtocolBufferException.recursionLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         3: .line 2348
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.pushLimit:(I)I
            istore 4 /* oldLimit */
        start local 4 // int oldLimit
         4: .line 2349
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         5: .line 2350
            aload 1 /* builder */
            aload 0 /* this */
            aload 2 /* extensionRegistry */
            invokeinterface com.google.protobuf.MessageLite$Builder.mergeFrom:(Lcom/google/protobuf/CodedInputStream;Lcom/google/protobuf/ExtensionRegistryLite;)Lcom/google/protobuf/MessageLite$Builder;
            pop
         6: .line 2351
            aload 0 /* this */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
         7: .line 2352
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         8: .line 2353
            aload 0 /* this */
            iload 4 /* oldLimit */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.popLimit:(I)V
         9: .line 2354
            return
        end local 4 // int oldLimit
        end local 3 // int length
        end local 2 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
        end local 1 // com.google.protobuf.MessageLite$Builder builder
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   10     1            builder  Lcom/google/protobuf/MessageLite$Builder;
            0   10     2  extensionRegistry  Lcom/google/protobuf/ExtensionRegistryLite;
            1   10     3             length  I
            4   10     4           oldLimit  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                   Name  Flags
      builder            final
      extensionRegistry  final

  public <T extends com.google.protobuf.MessageLite> T readMessage(com.google.protobuf.Parser<T>, com.google.protobuf.ExtensionRegistryLite);
    descriptor: (Lcom/google/protobuf/Parser;Lcom/google/protobuf/ExtensionRegistryLite;)Lcom/google/protobuf/MessageLite;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=6, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // com.google.protobuf.Parser parser
        start local 2 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
         0: .line 2360
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 3 /* length */
        start local 3 // int length
         1: .line 2361
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionLimit:I
            if_icmplt 3
         2: .line 2362
            invokestatic com.google.protobuf.InvalidProtocolBufferException.recursionLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         3: .line 2364
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 3 /* length */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.pushLimit:(I)I
            istore 4 /* oldLimit */
        start local 4 // int oldLimit
         4: .line 2365
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         5: .line 2366
            aload 1 /* parser */
            aload 0 /* this */
            aload 2 /* extensionRegistry */
            invokeinterface com.google.protobuf.Parser.parsePartialFrom:(Lcom/google/protobuf/CodedInputStream;Lcom/google/protobuf/ExtensionRegistryLite;)Ljava/lang/Object;
            checkcast com.google.protobuf.MessageLite
            astore 5 /* result */
        start local 5 // com.google.protobuf.MessageLite result
         6: .line 2367
            aload 0 /* this */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.checkLastTagWas:(I)V
         7: .line 2368
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
            iconst_1
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.recursionDepth:I
         8: .line 2369
            aload 0 /* this */
            iload 4 /* oldLimit */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.popLimit:(I)V
         9: .line 2370
            aload 5 /* result */
            areturn
        end local 5 // com.google.protobuf.MessageLite result
        end local 4 // int oldLimit
        end local 3 // int length
        end local 2 // com.google.protobuf.ExtensionRegistryLite extensionRegistry
        end local 1 // com.google.protobuf.Parser parser
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   10     0               this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   10     1             parser  Lcom/google/protobuf/Parser<TT;>;
            0   10     2  extensionRegistry  Lcom/google/protobuf/ExtensionRegistryLite;
            1   10     3             length  I
            4   10     4           oldLimit  I
            6   10     5             result  TT;
    Exceptions:
      throws java.io.IOException
    Signature: <T::Lcom/google/protobuf/MessageLite;>(Lcom/google/protobuf/Parser<TT;>;Lcom/google/protobuf/ExtensionRegistryLite;)TT;
    MethodParameters:
                   Name  Flags
      parser             final
      extensionRegistry  final

  public com.google.protobuf.ByteString readBytes();
    descriptor: ()Lcom/google/protobuf/ByteString;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2375
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 2376
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmpgt 5
            iload 1 /* size */
            ifle 5
         2: .line 2379
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            invokestatic com.google.protobuf.ByteString.copyFrom:([BII)Lcom/google/protobuf/ByteString;
            astore 2 /* result */
        start local 2 // com.google.protobuf.ByteString result
         3: .line 2380
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         4: .line 2381
            aload 2 /* result */
            areturn
        end local 2 // com.google.protobuf.ByteString result
         5: .line 2383
      StackMap locals: int
      StackMap stack:
            iload 1 /* size */
            ifne 7
         6: .line 2384
            getstatic com.google.protobuf.ByteString.EMPTY:Lcom/google/protobuf/ByteString;
            areturn
         7: .line 2386
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readBytesSlowPath:(I)Lcom/google/protobuf/ByteString;
            areturn
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    8     1    size  I
            3    5     2  result  Lcom/google/protobuf/ByteString;
    Exceptions:
      throws java.io.IOException

  public byte[] readByteArray();
    descriptor: ()[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2391
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 2392
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmpgt 5
            iload 1 /* size */
            ifle 5
         2: .line 2395
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            invokestatic java.util.Arrays.copyOfRange:([BII)[B
            astore 2 /* result */
        start local 2 // byte[] result
         3: .line 2396
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         4: .line 2397
            aload 2 /* result */
            areturn
        end local 2 // byte[] result
         5: .line 2401
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPath:(IZ)[B
            areturn
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    6     1    size  I
            3    5     2  result  [B
    Exceptions:
      throws java.io.IOException

  public java.nio.ByteBuffer readByteBuffer();
    descriptor: ()Ljava/nio/ByteBuffer;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2407
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            istore 1 /* size */
        start local 1 // int size
         1: .line 2408
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmpgt 5
            iload 1 /* size */
            ifle 5
         2: .line 2410
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            invokestatic java.util.Arrays.copyOfRange:([BII)[B
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            astore 2 /* result */
        start local 2 // java.nio.ByteBuffer result
         3: .line 2411
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         4: .line 2412
            aload 2 /* result */
            areturn
        end local 2 // java.nio.ByteBuffer result
         5: .line 2414
      StackMap locals: int
      StackMap stack:
            iload 1 /* size */
            ifne 7
         6: .line 2415
            getstatic com.google.protobuf.Internal.EMPTY_BYTE_BUFFER:Ljava/nio/ByteBuffer;
            areturn
         7: .line 2421
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            iconst_1
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPath:(IZ)[B
            invokestatic java.nio.ByteBuffer.wrap:([B)Ljava/nio/ByteBuffer;
            areturn
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    8     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    8     1    size  I
            3    5     2  result  Ljava/nio/ByteBuffer;
    Exceptions:
      throws java.io.IOException

  public int readUInt32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2426
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readEnum();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2431
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readSFixed32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2436
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian32:()I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public long readSFixed64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2441
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawLittleEndian64:()J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readSInt32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2446
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint32:()I
            invokestatic com.google.protobuf.CodedInputStream$StreamDecoder.decodeZigZag32:(I)I
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public long readSInt64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2451
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64:()J
            invokestatic com.google.protobuf.CodedInputStream$StreamDecoder.decodeZigZag64:(J)J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int readRawVarint32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2461
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
        start local 1 // int tempPos
         1: .line 2463
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            if_icmpne 3
         2: .line 2464
            goto 31
         3: .line 2467
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* buffer */
        start local 2 // byte[] buffer
         4: .line 2469
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            dup
            istore 3 /* x */
        start local 3 // int x
         5: iflt 8
         6: .line 2470
            aload 0 /* this */
            iload 1 /* tempPos */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         7: .line 2471
            iload 3 /* x */
            ireturn
         8: .line 2472
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            isub
            bipush 9
            if_icmpge 10
         9: .line 2473
            goto 31
        10: .line 2474
      StackMap locals:
      StackMap stack:
            iload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 7
            ishl
            ixor
            dup
            istore 3 /* x */
            ifge 13
        11: .line 2475
            iload 3 /* x */
            bipush -128
            ixor
            istore 3 /* x */
        12: .line 2476
            goto 29
      StackMap locals:
      StackMap stack:
        13: iload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 14
            ishl
            ixor
            dup
            istore 3 /* x */
            iflt 16
        14: .line 2477
            iload 3 /* x */
            sipush 16256
            ixor
            istore 3 /* x */
        15: .line 2478
            goto 29
      StackMap locals:
      StackMap stack:
        16: iload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 21
            ishl
            ixor
            dup
            istore 3 /* x */
            ifge 19
        17: .line 2479
            iload 3 /* x */
            ldc -2080896
            ixor
            istore 3 /* x */
        18: .line 2480
            goto 29
        19: .line 2481
      StackMap locals:
      StackMap stack:
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            istore 4 /* y */
        start local 4 // int y
        20: .line 2482
            iload 3 /* x */
            iload 4 /* y */
            bipush 28
            ishl
            ixor
            istore 3 /* x */
        21: .line 2483
            iload 3 /* x */
            ldc 266354560
            ixor
            istore 3 /* x */
        22: .line 2484
            iload 4 /* y */
            ifge 29
        23: .line 2485
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            ifge 29
        24: .line 2486
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            ifge 29
        25: .line 2487
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            ifge 29
        26: .line 2488
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            ifge 29
        27: .line 2489
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            ifge 29
        28: .line 2490
            goto 31
        end local 4 // int y
        29: .line 2493
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* tempPos */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        30: .line 2494
            iload 3 /* x */
            ireturn
        end local 3 // int x
        end local 2 // byte[] buffer
        end local 1 // int tempPos
        31: .line 2496
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64SlowPath:()J
            l2i
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   32     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   31     1  tempPos  I
            4   31     2   buffer  [B
            5   31     3        x  I
           20   29     4        y  I
    Exceptions:
      throws java.io.IOException

  private void skipRawVarint();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2500
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            bipush 10
            if_icmplt 3
         1: .line 2501
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawVarintFastPath:()V
         2: .line 2502
            goto 4
         3: .line 2503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawVarintSlowPath:()V
         4: .line 2505
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  private void skipRawVarintFastPath();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2508
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 2509
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            dup_x1
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            baload
            iflt 4
         3: .line 2510
            return
         4: .line 2508
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            bipush 10
            if_icmplt 2
        end local 1 // int i
         6: .line 2513
            invokestatic com.google.protobuf.InvalidProtocolBufferException.malformedVarint:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    6     1     i  I
    Exceptions:
      throws java.io.IOException

  private void skipRawVarintSlowPath();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2517
            iconst_0
            istore 1 /* i */
        start local 1 // int i
         1: goto 5
         2: .line 2518
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawByte:()B
            iflt 4
         3: .line 2519
            return
         4: .line 2517
      StackMap locals:
      StackMap stack:
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 1 /* i */
            bipush 10
            if_icmplt 2
        end local 1 // int i
         6: .line 2522
            invokestatic com.google.protobuf.InvalidProtocolBufferException.malformedVarint:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1    6     1     i  I
    Exceptions:
      throws java.io.IOException

  public long readRawVarint64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2540
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
        start local 1 // int tempPos
         1: .line 2542
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            if_icmpne 3
         2: .line 2543
            goto 41
         3: .line 2546
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* buffer */
        start local 2 // byte[] buffer
         4: .line 2549
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            dup
            istore 5 /* y */
        start local 5 // int y
         5: iflt 8
         6: .line 2550
            aload 0 /* this */
            iload 1 /* tempPos */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         7: .line 2551
            iload 5 /* y */
            i2l
            lreturn
         8: .line 2552
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int byte[] top top int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            isub
            bipush 9
            if_icmpge 10
         9: .line 2553
            goto 41
        10: .line 2554
      StackMap locals:
      StackMap stack:
            iload 5 /* y */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 7
            ishl
            ixor
            dup
            istore 5 /* y */
            ifge 13
        11: .line 2555
            iload 5 /* y */
            bipush -128
            ixor
            i2l
            lstore 3 /* x */
        start local 3 // long x
        12: .line 2556
            goto 39
        end local 3 // long x
      StackMap locals:
      StackMap stack:
        13: iload 5 /* y */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 14
            ishl
            ixor
            dup
            istore 5 /* y */
            iflt 16
        14: .line 2557
            iload 5 /* y */
            sipush 16256
            ixor
            i2l
            lstore 3 /* x */
        start local 3 // long x
        15: .line 2558
            goto 39
        end local 3 // long x
      StackMap locals:
      StackMap stack:
        16: iload 5 /* y */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            bipush 21
            ishl
            ixor
            dup
            istore 5 /* y */
            ifge 19
        17: .line 2559
            iload 5 /* y */
            ldc -2080896
            ixor
            i2l
            lstore 3 /* x */
        start local 3 // long x
        18: .line 2560
            goto 39
        end local 3 // long x
      StackMap locals:
      StackMap stack:
        19: iload 5 /* y */
            i2l
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            bipush 28
            lshl
            lxor
            dup2
            lstore 3 /* x */
        start local 3 // long x
        20: lconst_0
            lcmp
            iflt 23
        21: .line 2561
            lload 3 /* x */
            ldc 266354560
            lxor
            lstore 3 /* x */
        22: .line 2562
            goto 39
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int byte[] long int
      StackMap stack:
        23: lload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            bipush 35
            lshl
            lxor
            dup2
            lstore 3 /* x */
            lconst_0
            lcmp
            ifge 26
        24: .line 2563
            lload 3 /* x */
            ldc -34093383808
            lxor
            lstore 3 /* x */
        25: .line 2564
            goto 39
      StackMap locals:
      StackMap stack:
        26: lload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            bipush 42
            lshl
            lxor
            dup2
            lstore 3 /* x */
            lconst_0
            lcmp
            iflt 29
        27: .line 2565
            lload 3 /* x */
            ldc 4363953127296
            lxor
            lstore 3 /* x */
        28: .line 2566
            goto 39
      StackMap locals:
      StackMap stack:
        29: lload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            bipush 49
            lshl
            lxor
            dup2
            lstore 3 /* x */
            lconst_0
            lcmp
            ifge 33
        30: .line 2567
            lload 3 /* x */
        31: .line 2568
            ldc -558586000294016
            lxor
            lstore 3 /* x */
        32: .line 2575
            goto 39
        33: .line 2576
      StackMap locals:
      StackMap stack:
            lload 3 /* x */
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            bipush 56
            lshl
            lxor
            lstore 3 /* x */
        34: .line 2577
            lload 3 /* x */
        35: .line 2578
            ldc 71499008037633920
            lxor
            lstore 3 /* x */
        36: .line 2586
            lload 3 /* x */
            lconst_0
            lcmp
            ifge 39
        37: .line 2587
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iinc 1 /* tempPos */ 1
            baload
            i2l
            lconst_0
            lcmp
            ifge 39
        38: .line 2588
            goto 41
        39: .line 2592
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* tempPos */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        40: .line 2593
            lload 3 /* x */
            lreturn
        end local 5 // int y
        end local 3 // long x
        end local 2 // byte[] buffer
        end local 1 // int tempPos
        41: .line 2595
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawVarint64SlowPath:()J
            lreturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   42     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   41     1  tempPos  I
            4   41     2   buffer  [B
           12   13     3        x  J
           15   16     3        x  J
           18   19     3        x  J
           20   41     3        x  J
            5   41     5        y  I
    Exceptions:
      throws java.io.IOException

  long readRawVarint64SlowPath();
    descriptor: ()J
    flags: (0x0000) 
    Code:
      stack=5, locals=5, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2600
            lconst_0
            lstore 1 /* result */
        start local 1 // long result
         1: .line 2601
            iconst_0
            istore 3 /* shift */
        start local 3 // int shift
         2: goto 8
         3: .line 2602
      StackMap locals: long int
      StackMap stack:
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawByte:()B
            istore 4 /* b */
        start local 4 // byte b
         4: .line 2603
            lload 1 /* result */
            iload 4 /* b */
            bipush 127
            iand
            i2l
            iload 3 /* shift */
            lshl
            lor
            lstore 1 /* result */
         5: .line 2604
            iload 4 /* b */
            sipush 128
            iand
            ifne 7
         6: .line 2605
            lload 1 /* result */
            lreturn
        end local 4 // byte b
         7: .line 2601
      StackMap locals:
      StackMap stack:
            iinc 3 /* shift */ 7
      StackMap locals:
      StackMap stack:
         8: iload 3 /* shift */
            bipush 64
            if_icmplt 3
        end local 3 // int shift
         9: .line 2608
            invokestatic com.google.protobuf.InvalidProtocolBufferException.malformedVarint:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
        end local 1 // long result
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   10     0    this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   10     1  result  J
            2    9     3   shift  I
            4    7     4       b  B
    Exceptions:
      throws java.io.IOException

  public int readRawLittleEndian32();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2613
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
        start local 1 // int tempPos
         1: .line 2615
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            isub
            iconst_4
            if_icmpge 4
         2: .line 2616
            aload 0 /* this */
            iconst_4
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
         3: .line 2617
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
         4: .line 2620
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* buffer */
        start local 2 // byte[] buffer
         5: .line 2621
            aload 0 /* this */
            iload 1 /* tempPos */
            iconst_4
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         6: .line 2622
            aload 2 /* buffer */
            iload 1 /* tempPos */
            baload
            sipush 255
            iand
         7: .line 2623
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_1
            iadd
            baload
            sipush 255
            iand
            bipush 8
            ishl
         8: .line 2622
            ior
         9: .line 2624
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_2
            iadd
            baload
            sipush 255
            iand
            bipush 16
            ishl
        10: .line 2622
            ior
        11: .line 2625
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_3
            iadd
            baload
            sipush 255
            iand
            bipush 24
            ishl
        12: .line 2622
            ior
            ireturn
        end local 2 // byte[] buffer
        end local 1 // int tempPos
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   13     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   13     1  tempPos  I
            5   13     2   buffer  [B
    Exceptions:
      throws java.io.IOException

  public long readRawLittleEndian64();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2630
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
        start local 1 // int tempPos
         1: .line 2632
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* tempPos */
            isub
            bipush 8
            if_icmpge 4
         2: .line 2633
            aload 0 /* this */
            bipush 8
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
         3: .line 2634
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 1 /* tempPos */
         4: .line 2637
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            astore 2 /* buffer */
        start local 2 // byte[] buffer
         5: .line 2638
            aload 0 /* this */
            iload 1 /* tempPos */
            bipush 8
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         6: .line 2639
            aload 2 /* buffer */
            iload 1 /* tempPos */
            baload
            i2l
            ldc 255
            land
         7: .line 2640
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_1
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 8
            lshl
         8: .line 2639
            lor
         9: .line 2641
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_2
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 16
            lshl
        10: .line 2639
            lor
        11: .line 2642
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_3
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 24
            lshl
        12: .line 2639
            lor
        13: .line 2643
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_4
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 32
            lshl
        14: .line 2639
            lor
        15: .line 2644
            aload 2 /* buffer */
            iload 1 /* tempPos */
            iconst_5
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 40
            lshl
        16: .line 2639
            lor
        17: .line 2645
            aload 2 /* buffer */
            iload 1 /* tempPos */
            bipush 6
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 48
            lshl
        18: .line 2639
            lor
        19: .line 2646
            aload 2 /* buffer */
            iload 1 /* tempPos */
            bipush 7
            iadd
            baload
            i2l
            ldc 255
            land
            bipush 56
            lshl
        20: .line 2639
            lor
            lreturn
        end local 2 // byte[] buffer
        end local 1 // int tempPos
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   21     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            1   21     1  tempPos  I
            5   21     2   buffer  [B
    Exceptions:
      throws java.io.IOException

  public void enableAliasing(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=0, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // boolean enabled
         0: .line 2654
            return
        end local 1 // boolean enabled
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    1     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    1     1  enabled  Z
    MethodParameters:
         Name  Flags
      enabled  

  public void resetSizeCounter();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2658
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            ineg
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         1: .line 2659
            return
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;

  public int pushLimit(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int byteLimit
         0: .line 2663
            iload 1 /* byteLimit */
            ifge 2
         1: .line 2664
            invokestatic com.google.protobuf.InvalidProtocolBufferException.negativeSize:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         2: .line 2666
      StackMap locals:
      StackMap stack:
            iload 1 /* byteLimit */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            iadd
            istore 1 /* byteLimit */
         3: .line 2667
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            istore 2 /* oldLimit */
        start local 2 // int oldLimit
         4: .line 2668
            iload 1 /* byteLimit */
            iload 2 /* oldLimit */
            if_icmple 6
         5: .line 2669
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         6: .line 2671
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* byteLimit */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
         7: .line 2673
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.recomputeBufferSizeAfterLimit:()V
         8: .line 2675
            iload 2 /* oldLimit */
            ireturn
        end local 2 // int oldLimit
        end local 1 // int byteLimit
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    9     1  byteLimit  I
            4    9     2   oldLimit  I
    Exceptions:
      throws com.google.protobuf.InvalidProtocolBufferException
    MethodParameters:
           Name  Flags
      byteLimit  

  private void recomputeBufferSizeAfterLimit();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2679
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSizeAfterLimit:I
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
         1: .line 2680
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iadd
            istore 1 /* bufferEnd */
        start local 1 // int bufferEnd
         2: .line 2681
            iload 1 /* bufferEnd */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            if_icmple 6
         3: .line 2683
            aload 0 /* this */
            iload 1 /* bufferEnd */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSizeAfterLimit:I
         4: .line 2684
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSizeAfterLimit:I
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
         5: .line 2685
            goto 7
         6: .line 2686
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSizeAfterLimit:I
         7: .line 2688
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int bufferEnd
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    8     0       this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            2    8     1  bufferEnd  I

  public void popLimit(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int oldLimit
         0: .line 2692
            aload 0 /* this */
            iload 1 /* oldLimit */
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
         1: .line 2693
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.recomputeBufferSizeAfterLimit:()V
         2: .line 2694
            return
        end local 1 // int oldLimit
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    3     0      this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    3     1  oldLimit  I
    MethodParameters:
          Name  Flags
      oldLimit  final

  public int getBytesUntilLimit();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2698
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            ldc 2147483647
            if_icmpne 2
         1: .line 2699
            iconst_m1
            ireturn
         2: .line 2702
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            istore 1 /* currentAbsolutePosition */
        start local 1 // int currentAbsolutePosition
         3: .line 2703
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            iload 1 /* currentAbsolutePosition */
            isub
            ireturn
        end local 1 // int currentAbsolutePosition
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot                     Name  Signature
            0    4     0                     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            3    4     1  currentAbsolutePosition  I

  public boolean isAtEnd();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2708
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpne 1
            aload 0 /* this */
            iconst_1
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.tryRefillBuffer:(I)Z
            ifne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public int getTotalBytesRead();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2713
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;

  private void refillBuffer(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int n
         0: .line 2731
            aload 0 /* this */
            iload 1 /* n */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.tryRefillBuffer:(I)Z
            ifne 4
         1: .line 2734
            iload 1 /* n */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.sizeLimit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmple 3
         2: .line 2735
            invokestatic com.google.protobuf.InvalidProtocolBufferException.sizeLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         3: .line 2737
      StackMap locals:
      StackMap stack:
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         4: .line 2740
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int n
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    5     1     n  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      n     

  private boolean tryRefillBuffer(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int n
         0: .line 2751
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* n */
            iadd
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpgt 4
         1: .line 2752
            new java.lang.IllegalStateException
            dup
         2: .line 2753
            new java.lang.StringBuilder
            dup
            ldc "refillBuffer() called when "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            iload 1 /* n */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " bytes were already available in buffer"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         3: .line 2752
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         4: .line 2759
      StackMap locals:
      StackMap stack:
            iload 1 /* n */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.sizeLimit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmple 6
         5: .line 2760
            iconst_0
            ireturn
         6: .line 2764
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            iload 1 /* n */
            iadd
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            if_icmple 8
         7: .line 2766
            iconst_0
            ireturn
         8: .line 2769
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.refillCallback:Lcom/google/protobuf/CodedInputStream$StreamDecoder$RefillCallback;
            ifnull 10
         9: .line 2770
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.refillCallback:Lcom/google/protobuf/CodedInputStream$StreamDecoder$RefillCallback;
            invokeinterface com.google.protobuf.CodedInputStream$StreamDecoder$RefillCallback.onRefill:()V
        10: .line 2773
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 2 /* tempPos */
        start local 2 // int tempPos
        11: .line 2774
            iload 2 /* tempPos */
            ifle 17
        12: .line 2775
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 2 /* tempPos */
            if_icmple 14
        13: .line 2776
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            iload 2 /* tempPos */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            iconst_0
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 2 /* tempPos */
            isub
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 2778
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            iload 2 /* tempPos */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
        15: .line 2779
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 2 /* tempPos */
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        16: .line 2780
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        17: .line 2785
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
        18: .line 2786
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
        19: .line 2787
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        20: .line 2790
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            arraylength
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            isub
        21: .line 2792
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.sizeLimit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            isub
        22: .line 2788
            invokestatic java.lang.Math.min:(II)I
        23: .line 2785
            invokevirtual java.io.InputStream.read:([BII)I
        24: .line 2784
            istore 3 /* bytesRead */
        start local 3 // int bytesRead
        25: .line 2793
            iload 3 /* bytesRead */
            ifeq 26
            iload 3 /* bytesRead */
            iconst_m1
            if_icmplt 26
            iload 3 /* bytesRead */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            arraylength
            if_icmple 33
        26: .line 2794
      StackMap locals: int
      StackMap stack:
            new java.lang.IllegalStateException
            dup
        27: .line 2795
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        28: .line 2796
            ldc "#read(byte[]) returned invalid result: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        29: .line 2797
            iload 3 /* bytesRead */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
        30: .line 2798
            ldc "\nThe InputStream implementation is buggy."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        31: .line 2795
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        32: .line 2794
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 2800
      StackMap locals:
      StackMap stack:
            iload 3 /* bytesRead */
            ifle 39
        34: .line 2801
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 3 /* bytesRead */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        35: .line 2802
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.recomputeBufferSizeAfterLimit:()V
        36: .line 2803
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 1 /* n */
            if_icmplt 37
            iconst_1
            goto 38
      StackMap locals:
      StackMap stack:
        37: aload 0 /* this */
            iload 1 /* n */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.tryRefillBuffer:(I)Z
      StackMap locals:
      StackMap stack: int
        38: ireturn
        39: .line 2806
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 3 // int bytesRead
        end local 2 // int tempPos
        end local 1 // int n
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   40     0       this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   40     1          n  I
           11   40     2    tempPos  I
           25   40     3  bytesRead  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      n     

  public byte readRawByte();
    descriptor: ()B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
         0: .line 2811
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpne 2
         1: .line 2812
            aload 0 /* this */
            iconst_1
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
         2: .line 2814
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            dup_x1
            iconst_1
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            baload
            ireturn
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
    Exceptions:
      throws java.io.IOException

  public byte[] readRawBytes(int);
    descriptor: (I)[B
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
         0: .line 2819
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 2 /* tempPos */
        start local 2 // int tempPos
         1: .line 2820
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iload 2 /* tempPos */
            isub
            if_icmpgt 4
            iload 1 /* size */
            ifle 4
         2: .line 2821
            aload 0 /* this */
            iload 2 /* tempPos */
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         3: .line 2822
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            iload 2 /* tempPos */
            iload 2 /* tempPos */
            iload 1 /* size */
            iadd
            invokestatic java.util.Arrays.copyOfRange:([BII)[B
            areturn
         4: .line 2825
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            iconst_0
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPath:(IZ)[B
            areturn
        end local 2 // int tempPos
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    5     0     this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    5     1     size  I
            1    5     2  tempPos  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      size  final

  private byte[] readRawBytesSlowPath(int, boolean);
    descriptor: (IZ)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=12, args_size=3
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
        start local 2 // boolean ensureNoLeakedReferences
         0: .line 2839
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPathOneChunk:(I)[B
            astore 3 /* result */
        start local 3 // byte[] result
         1: .line 2840
            aload 3 /* result */
            ifnull 5
         2: .line 2841
            iload 2 /* ensureNoLeakedReferences */
            ifeq 3
            aload 3 /* result */
            invokevirtual byte[].clone:()Ljava/lang/Object;
            checkcast byte[]
            goto 4
      StackMap locals: byte[]
      StackMap stack:
         3: aload 3 /* result */
      StackMap locals:
      StackMap stack: byte[]
         4: areturn
         5: .line 2844
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 4 /* originalBufferPos */
        start local 4 // int originalBufferPos
         6: .line 2845
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            istore 5 /* bufferedBytes */
        start local 5 // int bufferedBytes
         7: .line 2848
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         8: .line 2849
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         9: .line 2850
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        10: .line 2853
            iload 1 /* size */
            iload 5 /* bufferedBytes */
            isub
            istore 6 /* sizeLeft */
        start local 6 // int sizeLeft
        11: .line 2857
            aload 0 /* this */
            iload 6 /* sizeLeft */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPathRemainingChunks:(I)Ljava/util/List;
            astore 7 /* chunks */
        start local 7 // java.util.List chunks
        12: .line 2860
            iload 1 /* size */
            newarray 8
            astore 8 /* bytes */
        start local 8 // byte[] bytes
        13: .line 2863
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            iload 4 /* originalBufferPos */
            aload 8 /* bytes */
            iconst_0
            iload 5 /* bufferedBytes */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        14: .line 2866
            iload 5 /* bufferedBytes */
            istore 9 /* tempPos */
        start local 9 // int tempPos
        15: .line 2867
            aload 7 /* chunks */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 11
            goto 19
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int int byte[] int int int java.util.List byte[] int top java.util.Iterator
      StackMap stack:
        16: aload 11
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            astore 10 /* chunk */
        start local 10 // byte[] chunk
        17: .line 2868
            aload 10 /* chunk */
            iconst_0
            aload 8 /* bytes */
            iload 9 /* tempPos */
            aload 10 /* chunk */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        18: .line 2869
            iload 9 /* tempPos */
            aload 10 /* chunk */
            arraylength
            iadd
            istore 9 /* tempPos */
        end local 10 // byte[] chunk
        19: .line 2867
      StackMap locals:
      StackMap stack:
            aload 11
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 16
        20: .line 2873
            aload 8 /* bytes */
            areturn
        end local 9 // int tempPos
        end local 8 // byte[] bytes
        end local 7 // java.util.List chunks
        end local 6 // int sizeLeft
        end local 5 // int bufferedBytes
        end local 4 // int originalBufferPos
        end local 3 // byte[] result
        end local 2 // boolean ensureNoLeakedReferences
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot                      Name  Signature
            0   21     0                      this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   21     1                      size  I
            0   21     2  ensureNoLeakedReferences  Z
            1   21     3                    result  [B
            6   21     4         originalBufferPos  I
            7   21     5             bufferedBytes  I
           11   21     6                  sizeLeft  I
           12   21     7                    chunks  Ljava/util/List<[B>;
           13   21     8                     bytes  [B
           15   21     9                   tempPos  I
           17   19    10                     chunk  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                          Name  Flags
      size                      final
      ensureNoLeakedReferences  

  private byte[] readRawBytesSlowPathOneChunk(int);
    descriptor: (I)[B
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
         0: .line 2883
            iload 1 /* size */
            ifne 2
         1: .line 2884
            getstatic com.google.protobuf.Internal.EMPTY_BYTE_ARRAY:[B
            areturn
         2: .line 2886
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            ifge 4
         3: .line 2887
            invokestatic com.google.protobuf.InvalidProtocolBufferException.negativeSize:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         4: .line 2891
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            iload 1 /* size */
            iadd
            istore 2 /* currentMessageSize */
        start local 2 // int currentMessageSize
         5: .line 2892
            iload 2 /* currentMessageSize */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.sizeLimit:I
            isub
            ifle 7
         6: .line 2893
            invokestatic com.google.protobuf.InvalidProtocolBufferException.sizeLimitExceeded:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         7: .line 2897
      StackMap locals: int
      StackMap stack:
            iload 2 /* currentMessageSize */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            if_icmple 10
         8: .line 2899
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytes:(I)V
         9: .line 2900
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
        10: .line 2903
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            istore 3 /* bufferedBytes */
        start local 3 // int bufferedBytes
        11: .line 2905
            iload 1 /* size */
            iload 3 /* bufferedBytes */
            isub
            istore 4 /* sizeLeft */
        start local 4 // int sizeLeft
        12: .line 2907
            iload 4 /* sizeLeft */
            sipush 4096
            if_icmplt 13
            iload 4 /* sizeLeft */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.available:()I
            if_icmpgt 27
        13: .line 2910
      StackMap locals: int int
      StackMap stack:
            iload 1 /* size */
            newarray 8
            astore 5 /* bytes */
        start local 5 // byte[] bytes
        14: .line 2913
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            aload 5 /* bytes */
            iconst_0
            iload 3 /* bufferedBytes */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        15: .line 2914
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
        16: .line 2915
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        17: .line 2916
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        18: .line 2919
            iload 3 /* bufferedBytes */
            istore 6 /* tempPos */
        start local 6 // int tempPos
        19: .line 2920
            goto 25
        20: .line 2921
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            aload 5 /* bytes */
            iload 6 /* tempPos */
            iload 1 /* size */
            iload 6 /* tempPos */
            isub
            invokevirtual java.io.InputStream.read:([BII)I
            istore 7 /* n */
        start local 7 // int n
        21: .line 2922
            iload 7 /* n */
            iconst_m1
            if_icmpne 23
        22: .line 2923
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
        23: .line 2925
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            iload 7 /* n */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
        24: .line 2926
            iload 6 /* tempPos */
            iload 7 /* n */
            iadd
            istore 6 /* tempPos */
        end local 7 // int n
        25: .line 2920
      StackMap locals:
      StackMap stack:
            iload 6 /* tempPos */
            aload 5 /* bytes */
            arraylength
            if_icmplt 20
        26: .line 2929
            aload 5 /* bytes */
            areturn
        end local 6 // int tempPos
        end local 5 // byte[] bytes
        27: .line 2932
      StackMap locals:
      StackMap stack:
            aconst_null
            areturn
        end local 4 // int sizeLeft
        end local 3 // int bufferedBytes
        end local 2 // int currentMessageSize
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot                Name  Signature
            0   28     0                this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   28     1                size  I
            5   28     2  currentMessageSize  I
           11   28     3       bufferedBytes  I
           12   28     4            sizeLeft  I
           14   27     5               bytes  [B
           19   27     6             tempPos  I
           21   25     7                   n  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      size  final

  private java.util.List<byte[]> readRawBytesSlowPathRemainingChunks(int);
    descriptor: (I)Ljava/util/List;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int sizeLeft
         0: .line 2948
            new java.util.ArrayList
            dup
            invokespecial java.util.ArrayList.<init>:()V
            astore 2 /* chunks */
        start local 2 // java.util.List chunks
         1: .line 2950
            goto 13
         2: .line 2952
      StackMap locals: java.util.List
      StackMap stack:
            iload 1 /* sizeLeft */
            sipush 4096
            invokestatic java.lang.Math.min:(II)I
            newarray 8
            astore 3 /* chunk */
        start local 3 // byte[] chunk
         3: .line 2953
            iconst_0
            istore 4 /* tempPos */
        start local 4 // int tempPos
         4: .line 2954
            goto 10
         5: .line 2955
      StackMap locals: byte[] int
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            aload 3 /* chunk */
            iload 4 /* tempPos */
            aload 3 /* chunk */
            arraylength
            iload 4 /* tempPos */
            isub
            invokevirtual java.io.InputStream.read:([BII)I
            istore 5 /* n */
        start local 5 // int n
         6: .line 2956
            iload 5 /* n */
            iconst_m1
            if_icmpne 8
         7: .line 2957
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         8: .line 2959
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            iload 5 /* n */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         9: .line 2960
            iload 4 /* tempPos */
            iload 5 /* n */
            iadd
            istore 4 /* tempPos */
        end local 5 // int n
        10: .line 2954
      StackMap locals:
      StackMap stack:
            iload 4 /* tempPos */
            aload 3 /* chunk */
            arraylength
            if_icmplt 5
        11: .line 2962
            iload 1 /* sizeLeft */
            aload 3 /* chunk */
            arraylength
            isub
            istore 1 /* sizeLeft */
        12: .line 2963
            aload 2 /* chunks */
            aload 3 /* chunk */
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
        end local 4 // int tempPos
        end local 3 // byte[] chunk
        13: .line 2950
      StackMap locals:
      StackMap stack:
            iload 1 /* sizeLeft */
            ifgt 2
        14: .line 2966
            aload 2 /* chunks */
            areturn
        end local 2 // java.util.List chunks
        end local 1 // int sizeLeft
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   15     0      this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   15     1  sizeLeft  I
            1   15     2    chunks  Ljava/util/List<[B>;
            3   13     3     chunk  [B
            4   13     4   tempPos  I
            6   10     5         n  I
    Exceptions:
      throws java.io.IOException
    Signature: (I)Ljava/util/List<[B>;
    MethodParameters:
          Name  Flags
      sizeLeft  

  private com.google.protobuf.ByteString readBytesSlowPath(int);
    descriptor: (I)Lcom/google/protobuf/ByteString;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=11, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
         0: .line 2974
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPathOneChunk:(I)[B
            astore 2 /* result */
        start local 2 // byte[] result
         1: .line 2975
            aload 2 /* result */
            ifnull 3
         2: .line 2978
            aload 2 /* result */
            invokestatic com.google.protobuf.ByteString.copyFrom:([B)Lcom/google/protobuf/ByteString;
            areturn
         3: .line 2981
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            istore 3 /* originalBufferPos */
        start local 3 // int originalBufferPos
         4: .line 2982
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            istore 4 /* bufferedBytes */
        start local 4 // int bufferedBytes
         5: .line 2985
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         6: .line 2986
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         7: .line 2987
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
         8: .line 2990
            iload 1 /* size */
            iload 4 /* bufferedBytes */
            isub
            istore 5 /* sizeLeft */
        start local 5 // int sizeLeft
         9: .line 2994
            aload 0 /* this */
            iload 5 /* sizeLeft */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.readRawBytesSlowPathRemainingChunks:(I)Ljava/util/List;
            astore 6 /* chunks */
        start local 6 // java.util.List chunks
        10: .line 2997
            iload 1 /* size */
            newarray 8
            astore 7 /* bytes */
        start local 7 // byte[] bytes
        11: .line 3000
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.buffer:[B
            iload 3 /* originalBufferPos */
            aload 7 /* bytes */
            iconst_0
            iload 4 /* bufferedBytes */
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        12: .line 3003
            iload 4 /* bufferedBytes */
            istore 8 /* tempPos */
        start local 8 // int tempPos
        13: .line 3004
            aload 6 /* chunks */
            invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
            astore 10
            goto 17
      StackMap locals: com.google.protobuf.CodedInputStream$StreamDecoder int byte[] int int int java.util.List byte[] int top java.util.Iterator
      StackMap stack:
        14: aload 10
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast byte[]
            astore 9 /* chunk */
        start local 9 // byte[] chunk
        15: .line 3005
            aload 9 /* chunk */
            iconst_0
            aload 7 /* bytes */
            iload 8 /* tempPos */
            aload 9 /* chunk */
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 3006
            iload 8 /* tempPos */
            aload 9 /* chunk */
            arraylength
            iadd
            istore 8 /* tempPos */
        end local 9 // byte[] chunk
        17: .line 3004
      StackMap locals:
      StackMap stack:
            aload 10
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 14
        18: .line 3009
            aload 7 /* bytes */
            invokestatic com.google.protobuf.ByteString.wrap:([B)Lcom/google/protobuf/ByteString;
            areturn
        end local 8 // int tempPos
        end local 7 // byte[] bytes
        end local 6 // java.util.List chunks
        end local 5 // int sizeLeft
        end local 4 // int bufferedBytes
        end local 3 // int originalBufferPos
        end local 2 // byte[] result
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0   19     0               this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   19     1               size  I
            1   19     2             result  [B
            4   19     3  originalBufferPos  I
            5   19     4      bufferedBytes  I
            9   19     5           sizeLeft  I
           10   19     6             chunks  Ljava/util/List<[B>;
           11   19     7              bytes  [B
           13   19     8            tempPos  I
           15   17     9              chunk  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      size  final

  public void skipRawBytes(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
         0: .line 3014
            iload 1 /* size */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            if_icmpgt 3
            iload 1 /* size */
            iflt 3
         1: .line 3016
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iload 1 /* size */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
         2: .line 3017
            goto 4
         3: .line 3018
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* size */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytesSlowPath:(I)V
         4: .line 3020
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    5     0  this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0    5     1  size  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      size  final

  private void skipRawBytesSlowPath(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=7, args_size=2
        start local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
        start local 1 // int size
         0: .line 3027
            iload 1 /* size */
            ifge 2
         1: .line 3028
            invokestatic com.google.protobuf.InvalidProtocolBufferException.negativeSize:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         2: .line 3031
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            iload 1 /* size */
            iadd
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            if_icmple 5
         3: .line 3033
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.currentLimit:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.skipRawBytes:(I)V
         4: .line 3035
            invokestatic com.google.protobuf.InvalidProtocolBufferException.truncatedMessage:()Lcom/google/protobuf/InvalidProtocolBufferException;
            athrow
         5: .line 3038
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* totalSkipped */
        start local 2 // int totalSkipped
         6: .line 3039
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.refillCallback:Lcom/google/protobuf/CodedInputStream$StreamDecoder$RefillCallback;
            ifnonnull 33
         7: .line 3041
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
         8: .line 3042
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            istore 2 /* totalSkipped */
         9: .line 3043
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
        10: .line 3044
            aload 0 /* this */
            iconst_0
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        11: .line 3047
            goto 25
        12: .line 3048
      StackMap locals: int
      StackMap stack:
            iload 1 /* size */
            iload 2 /* totalSkipped */
            isub
            istore 3 /* toSkip */
        start local 3 // int toSkip
        13: .line 3049
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            iload 3 /* toSkip */
            i2l
            invokevirtual java.io.InputStream.skip:(J)J
            lstore 4 /* skipped */
        start local 4 // long skipped
        14: .line 3050
            lload 4 /* skipped */
            lconst_0
            lcmp
            iflt 15
            lload 4 /* skipped */
            iload 3 /* toSkip */
            i2l
            lcmp
            ifle 22
        15: .line 3051
      StackMap locals: int long
      StackMap stack:
            new java.lang.IllegalStateException
            dup
        16: .line 3052
            new java.lang.StringBuilder
            dup
            invokespecial java.lang.StringBuilder.<init>:()V
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.input:Ljava/io/InputStream;
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
        17: .line 3053
            ldc "#skip returned invalid result: "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        18: .line 3054
            lload 4 /* skipped */
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
        19: .line 3055
            ldc "\nThe InputStream implementation is buggy."
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
        20: .line 3052
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        21: .line 3051
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 3056
      StackMap locals:
      StackMap stack:
            lload 4 /* skipped */
            lconst_0
            lcmp
            ifne 24
        23: .line 3061
            goto 31
        24: .line 3063
      StackMap locals:
      StackMap stack:
            iload 2 /* totalSkipped */
            lload 4 /* skipped */
            l2i
            iadd
            istore 2 /* totalSkipped */
        end local 4 // long skipped
        end local 3 // int toSkip
        25: .line 3047
      StackMap locals:
      StackMap stack:
            iload 2 /* totalSkipped */
            iload 1 /* size */
            if_icmplt 12
        26: .line 3065
            goto 31
      StackMap locals:
      StackMap stack: java.lang.Throwable
        27: astore 6
        28: .line 3066
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            iload 2 /* totalSkipped */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
        29: .line 3067
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.recomputeBufferSizeAfterLimit:()V
        30: .line 3068
            aload 6
            athrow
        31: .line 3066
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
            iload 2 /* totalSkipped */
            iadd
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.totalBytesRetired:I
        32: .line 3067
            aload 0 /* this */
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.recomputeBufferSizeAfterLimit:()V
        33: .line 3070
      StackMap locals:
      StackMap stack:
            iload 2 /* totalSkipped */
            iload 1 /* size */
            if_icmpge 43
        34: .line 3072
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
            isub
            istore 3 /* tempPos */
        start local 3 // int tempPos
        35: .line 3073
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        36: .line 3077
            aload 0 /* this */
            iconst_1
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
        37: .line 3078
            goto 41
        38: .line 3079
      StackMap locals: int
      StackMap stack:
            iload 3 /* tempPos */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            iadd
            istore 3 /* tempPos */
        39: .line 3080
            aload 0 /* this */
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        40: .line 3081
            aload 0 /* this */
            iconst_1
            invokevirtual com.google.protobuf.CodedInputStream$StreamDecoder.refillBuffer:(I)V
        41: .line 3078
      StackMap locals:
      StackMap stack:
            iload 1 /* size */
            iload 3 /* tempPos */
            isub
            aload 0 /* this */
            getfield com.google.protobuf.CodedInputStream$StreamDecoder.bufferSize:I
            if_icmpgt 38
        42: .line 3084
            aload 0 /* this */
            iload 1 /* size */
            iload 3 /* tempPos */
            isub
            putfield com.google.protobuf.CodedInputStream$StreamDecoder.pos:I
        end local 3 // int tempPos
        43: .line 3086
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int totalSkipped
        end local 1 // int size
        end local 0 // com.google.protobuf.CodedInputStream$StreamDecoder this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   44     0          this  Lcom/google/protobuf/CodedInputStream$StreamDecoder;
            0   44     1          size  I
            6   44     2  totalSkipped  I
           13   25     3        toSkip  I
           14   25     4       skipped  J
           35   43     3       tempPos  I
      Exception table:
        from    to  target  type
          11    27      27  any
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      size  final
}
SourceFile: "CodedInputStream.java"
NestHost: com.google.protobuf.CodedInputStream
InnerClasses:
  private final StreamDecoder = com.google.protobuf.CodedInputStream$StreamDecoder of com.google.protobuf.CodedInputStream
  private abstract RefillCallback = com.google.protobuf.CodedInputStream$StreamDecoder$RefillCallback of com.google.protobuf.CodedInputStream$StreamDecoder
  private SkippedDataSink = com.google.protobuf.CodedInputStream$StreamDecoder$SkippedDataSink of com.google.protobuf.CodedInputStream$StreamDecoder
  public InvalidWireTypeException = com.google.protobuf.InvalidProtocolBufferException$InvalidWireTypeException of com.google.protobuf.InvalidProtocolBufferException
  public abstract Builder = com.google.protobuf.MessageLite$Builder of com.google.protobuf.MessageLite