public class org.apache.http.impl.io.ChunkedInputStream extends java.io.InputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.http.impl.io.ChunkedInputStream
  super_class: java.io.InputStream
{
  private static final int CHUNK_LEN;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

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

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

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

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

  private final org.apache.http.io.SessionInputBuffer in;
    descriptor: Lorg/apache/http/io/SessionInputBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.util.CharArrayBuffer buffer;
    descriptor: Lorg/apache/http/util/CharArrayBuffer;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final org.apache.http.config.MessageConstraints constraints;
    descriptor: Lorg/apache/http/config/MessageConstraints;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

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

  private boolean eof;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean closed;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private org.apache.http.Header[] footers;
    descriptor: [Lorg/apache/http/Header;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(org.apache.http.io.SessionInputBuffer, org.apache.http.config.MessageConstraints);
    descriptor: (Lorg/apache/http/io/SessionInputBuffer;Lorg/apache/http/config/MessageConstraints;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
        start local 1 // org.apache.http.io.SessionInputBuffer in
        start local 2 // org.apache.http.config.MessageConstraints constraints
         0: .line 100
            aload 0 /* this */
            invokespecial java.io.InputStream.<init>:()V
         1: .line 83
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
         2: .line 86
            aload 0 /* this */
            iconst_0
            putfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
         3: .line 88
            aload 0 /* this */
            iconst_0
            anewarray org.apache.http.Header
            putfield org.apache.http.impl.io.ChunkedInputStream.footers:[Lorg/apache/http/Header;
         4: .line 101
            aload 0 /* this */
            aload 1 /* in */
            ldc "Session input buffer"
            invokestatic org.apache.http.util.Args.notNull:(Ljava/lang/Object;Ljava/lang/String;)Ljava/lang/Object;
            checkcast org.apache.http.io.SessionInputBuffer
            putfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
         5: .line 102
            aload 0 /* this */
            lconst_0
            putfield org.apache.http.impl.io.ChunkedInputStream.pos:J
         6: .line 103
            aload 0 /* this */
            new org.apache.http.util.CharArrayBuffer
            dup
            bipush 16
            invokespecial org.apache.http.util.CharArrayBuffer.<init>:(I)V
            putfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
         7: .line 104
            aload 0 /* this */
            aload 2 /* constraints */
            ifnull 8
            aload 2 /* constraints */
            goto 9
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream org.apache.http.io.SessionInputBuffer org.apache.http.config.MessageConstraints
      StackMap stack: org.apache.http.impl.io.ChunkedInputStream
         8: getstatic org.apache.http.config.MessageConstraints.DEFAULT:Lorg/apache/http/config/MessageConstraints;
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream org.apache.http.io.SessionInputBuffer org.apache.http.config.MessageConstraints
      StackMap stack: org.apache.http.impl.io.ChunkedInputStream org.apache.http.config.MessageConstraints
         9: putfield org.apache.http.impl.io.ChunkedInputStream.constraints:Lorg/apache/http/config/MessageConstraints;
        10: .line 105
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
        11: .line 106
            return
        end local 2 // org.apache.http.config.MessageConstraints constraints
        end local 1 // org.apache.http.io.SessionInputBuffer in
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   12     0         this  Lorg/apache/http/impl/io/ChunkedInputStream;
            0   12     1           in  Lorg/apache/http/io/SessionInputBuffer;
            0   12     2  constraints  Lorg/apache/http/config/MessageConstraints;
    MethodParameters:
             Name  Flags
      in           final
      constraints  final

  public void <init>(org.apache.http.io.SessionInputBuffer);
    descriptor: (Lorg/apache/http/io/SessionInputBuffer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
        start local 1 // org.apache.http.io.SessionInputBuffer in
         0: .line 114
            aload 0 /* this */
            aload 1 /* in */
            aconst_null
            invokespecial org.apache.http.impl.io.ChunkedInputStream.<init>:(Lorg/apache/http/io/SessionInputBuffer;Lorg/apache/http/config/MessageConstraints;)V
         1: .line 115
            return
        end local 1 // org.apache.http.io.SessionInputBuffer in
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            0    2     1    in  Lorg/apache/http/io/SessionInputBuffer;
    MethodParameters:
      Name  Flags
      in    final

  public int available();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 119
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            instanceof org.apache.http.io.BufferInfo
            ifeq 3
         1: .line 120
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            checkcast org.apache.http.io.BufferInfo
            invokeinterface org.apache.http.io.BufferInfo.length:()I
            istore 1 /* len */
        start local 1 // int len
         2: .line 121
            iload 1 /* len */
            i2l
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            lsub
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            ireturn
        end local 1 // int len
         3: .line 123
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            2    3     1   len  I
    Exceptions:
      throws java.io.IOException

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 140
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
            ifeq 2
         1: .line 141
            new java.io.IOException
            dup
            ldc "Attempted read from closed stream."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 143
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
            ifeq 4
         3: .line 144
            iconst_m1
            ireturn
         4: .line 146
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.state:I
            iconst_2
            if_icmpeq 8
         5: .line 147
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.nextChunk:()V
         6: .line 148
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
            ifeq 8
         7: .line 149
            iconst_m1
            ireturn
         8: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            invokeinterface org.apache.http.io.SessionInputBuffer.read:()I
            istore 1 /* b */
        start local 1 // int b
         9: .line 153
            iload 1 /* b */
            iconst_m1
            if_icmpeq 13
        10: .line 154
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            lconst_1
            ladd
            putfield org.apache.http.impl.io.ChunkedInputStream.pos:J
        11: .line 155
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            lcmp
            iflt 13
        12: .line 156
            aload 0 /* this */
            iconst_3
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
        13: .line 159
      StackMap locals: int
      StackMap stack:
            iload 1 /* b */
            ireturn
        end local 1 // int b
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   14     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            9   14     1     b  I
    Exceptions:
      throws java.io.IOException

  public int read(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=9, locals=5, args_size=4
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 175
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
            ifeq 2
         1: .line 176
            new java.io.IOException
            dup
            ldc "Attempted read from closed stream."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 179
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
            ifeq 4
         3: .line 180
            iconst_m1
            ireturn
         4: .line 182
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.state:I
            iconst_2
            if_icmpeq 8
         5: .line 183
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.nextChunk:()V
         6: .line 184
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
            ifeq 8
         7: .line 185
            iconst_m1
            ireturn
         8: .line 188
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            i2l
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            lsub
            invokestatic java.lang.Math.min:(JJ)J
            l2i
            invokeinterface org.apache.http.io.SessionInputBuffer.read:([BII)I
            istore 4 /* readLen */
        start local 4 // int readLen
         9: .line 189
            iload 4 /* readLen */
            iconst_m1
            if_icmpeq 14
        10: .line 190
            aload 0 /* this */
            dup
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            iload 4 /* readLen */
            i2l
            ladd
            putfield org.apache.http.impl.io.ChunkedInputStream.pos:J
        11: .line 191
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            lcmp
            iflt 13
        12: .line 192
            aload 0 /* this */
            iconst_3
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
        13: .line 194
      StackMap locals: int
      StackMap stack:
            iload 4 /* readLen */
            ireturn
        14: .line 196
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
        15: .line 197
            new org.apache.http.TruncatedChunkException
            dup
            ldc "Truncated chunk (expected size: %,d; actual size: %,d)"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
        16: .line 198
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.pos:J
            invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
        17: .line 197
            aastore
            invokespecial org.apache.http.TruncatedChunkException.<init>:(Ljava/lang/String;[Ljava/lang/Object;)V
            athrow
        end local 4 // int readLen
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   18     0     this  Lorg/apache/http/impl/io/ChunkedInputStream;
            0   18     1        b  [B
            0   18     2      off  I
            0   18     3      len  I
            9   18     4  readLen  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final
      off   final
      len   final

  public int read(byte[]);
    descriptor: ([B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
        start local 1 // byte[] b
         0: .line 210
            aload 0 /* this */
            aload 1 /* b */
            iconst_0
            aload 1 /* b */
            arraylength
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.read:([BII)I
            ireturn
        end local 1 // byte[] b
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            0    1     1     b  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final

  private void nextChunk();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 218
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.state:I
            ldc 2147483647
            if_icmpne 2
         1: .line 219
            new org.apache.http.MalformedChunkCodingException
            dup
            ldc "Corrupt data stream"
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 222
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.getChunkSize:()J
            putfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
         3: .line 223
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            lconst_0
            lcmp
            ifge 5
         4: .line 224
            new org.apache.http.MalformedChunkCodingException
            dup
            ldc "Negative chunk size"
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            athrow
         5: .line 226
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_2
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
         6: .line 227
            aload 0 /* this */
            lconst_0
            putfield org.apache.http.impl.io.ChunkedInputStream.pos:J
         7: .line 228
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.chunkSize:J
            lconst_0
            lcmp
            ifne 14
         8: .line 229
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
         9: .line 230
            aload 0 /* this */
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.parseTrailerHeaders:()V
        10: .line 232
            goto 14
      StackMap locals:
      StackMap stack: org.apache.http.MalformedChunkCodingException
        11: astore 1 /* ex */
        start local 1 // org.apache.http.MalformedChunkCodingException ex
        12: .line 233
            aload 0 /* this */
            ldc 2147483647
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
        13: .line 234
            aload 1 /* ex */
            athrow
        end local 1 // org.apache.http.MalformedChunkCodingException ex
        14: .line 236
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
           12   14     1    ex  Lorg/apache/http/MalformedChunkCodingException;
      Exception table:
        from    to  target  type
           2    10      11  Class org.apache.http.MalformedChunkCodingException
    Exceptions:
      throws java.io.IOException

  private long getChunkSize();
    descriptor: ()J
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=6, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 244
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.state:I
            istore 1 /* st */
        start local 1 // int st
         1: .line 245
            iload 1 /* st */
            tableswitch { // 1 - 3
                    1: 13
                    2: 27
                    3: 2
              default: 27
          }
         2: .line 247
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokevirtual org.apache.http.util.CharArrayBuffer.clear:()V
         3: .line 248
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokeinterface org.apache.http.io.SessionInputBuffer.readLine:(Lorg/apache/http/util/CharArrayBuffer;)I
            istore 2 /* bytesRead1 */
        start local 2 // int bytesRead1
         4: .line 249
            iload 2 /* bytesRead1 */
            iconst_m1
            if_icmpne 8
         5: .line 250
            new org.apache.http.MalformedChunkCodingException
            dup
         6: .line 251
            ldc "CRLF expected at end of chunk"
         7: .line 250
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            athrow
         8: .line 253
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokevirtual org.apache.http.util.CharArrayBuffer.isEmpty:()Z
            ifne 12
         9: .line 254
            new org.apache.http.MalformedChunkCodingException
            dup
        10: .line 255
            ldc "Unexpected content at the end of chunk"
        11: .line 254
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 257
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.state:I
        end local 2 // int bytesRead1
        13: .line 260
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokevirtual org.apache.http.util.CharArrayBuffer.clear:()V
        14: .line 261
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokeinterface org.apache.http.io.SessionInputBuffer.readLine:(Lorg/apache/http/util/CharArrayBuffer;)I
            istore 3 /* bytesRead2 */
        start local 3 // int bytesRead2
        15: .line 262
            iload 3 /* bytesRead2 */
            iconst_m1
            if_icmpne 19
        16: .line 263
            new org.apache.http.ConnectionClosedException
            dup
        17: .line 264
            ldc "Premature end of chunk coded message body: closing chunk expected"
        18: .line 263
            invokespecial org.apache.http.ConnectionClosedException.<init>:(Ljava/lang/String;)V
            athrow
        19: .line 266
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream int top int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            bipush 59
            invokevirtual org.apache.http.util.CharArrayBuffer.indexOf:(I)I
            istore 4 /* separator */
        start local 4 // int separator
        20: .line 267
            iload 4 /* separator */
            ifge 22
        21: .line 268
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            invokevirtual org.apache.http.util.CharArrayBuffer.length:()I
            istore 4 /* separator */
        22: .line 270
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.buffer:Lorg/apache/http/util/CharArrayBuffer;
            iconst_0
            iload 4 /* separator */
            invokevirtual org.apache.http.util.CharArrayBuffer.substringTrimmed:(II)Ljava/lang/String;
            astore 5 /* s */
        start local 5 // java.lang.String s
        23: .line 272
            aload 5 /* s */
            bipush 16
            invokestatic java.lang.Long.parseLong:(Ljava/lang/String;I)J
        24: lreturn
        25: .line 273
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream int top int int java.lang.String
      StackMap stack: java.lang.NumberFormatException
            pop
        26: .line 274
            new org.apache.http.MalformedChunkCodingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Bad chunk header: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 5 /* s */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            athrow
        end local 5 // java.lang.String s
        end local 4 // int separator
        end local 3 // int bytesRead2
        27: .line 277
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream int
      StackMap stack:
            new java.lang.IllegalStateException
            dup
            ldc "Inconsistent codec state"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // int st
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   28     0        this  Lorg/apache/http/impl/io/ChunkedInputStream;
            1   28     1          st  I
            4   13     2  bytesRead1  I
           15   27     3  bytesRead2  I
           20   27     4   separator  I
           23   27     5           s  Ljava/lang/String;
      Exception table:
        from    to  target  type
          23    24      25  Class java.lang.NumberFormatException
    Exceptions:
      throws java.io.IOException

  private void parseTrailerHeaders();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=3, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 287
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.in:Lorg/apache/http/io/SessionInputBuffer;
         1: .line 288
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.constraints:Lorg/apache/http/config/MessageConstraints;
            invokevirtual org.apache.http.config.MessageConstraints.getMaxHeaderCount:()I
         2: .line 289
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.constraints:Lorg/apache/http/config/MessageConstraints;
            invokevirtual org.apache.http.config.MessageConstraints.getMaxLineLength:()I
         3: .line 290
            aconst_null
         4: .line 287
            invokestatic org.apache.http.impl.io.AbstractMessageParser.parseHeaders:(Lorg/apache/http/io/SessionInputBuffer;IILorg/apache/http/message/LineParser;)[Lorg/apache/http/Header;
            putfield org.apache.http.impl.io.ChunkedInputStream.footers:[Lorg/apache/http/Header;
         5: .line 291
            goto 12
      StackMap locals:
      StackMap stack: org.apache.http.HttpException
         6: astore 1 /* ex */
        start local 1 // org.apache.http.HttpException ex
         7: .line 292
            new org.apache.http.MalformedChunkCodingException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Invalid footer: "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         8: .line 293
            aload 1 /* ex */
            invokevirtual org.apache.http.HttpException.getMessage:()Ljava/lang/String;
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         9: .line 292
            invokespecial org.apache.http.MalformedChunkCodingException.<init>:(Ljava/lang/String;)V
            astore 2 /* ioe */
        start local 2 // java.io.IOException ioe
        10: .line 294
            aload 2 /* ioe */
            aload 1 /* ex */
            invokevirtual java.io.IOException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
            pop
        11: .line 295
            aload 2 /* ioe */
            athrow
        end local 2 // java.io.IOException ioe
        end local 1 // org.apache.http.HttpException ex
        12: .line 297
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   13     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            7   12     1    ex  Lorg/apache/http/HttpException;
           10   12     2   ioe  Ljava/io/IOException;
      Exception table:
        from    to  target  type
           0     5       6  Class org.apache.http.HttpException
    Exceptions:
      throws java.io.IOException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 307
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
            ifne 11
         1: .line 309
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
            ifne 9
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.state:I
            ldc 2147483647
            if_icmpeq 9
         2: .line 311
            sipush 2048
            newarray 8
            astore 1 /* buff */
        start local 1 // byte[] buff
         3: .line 312
      StackMap locals: byte[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* buff */
            invokevirtual org.apache.http.impl.io.ChunkedInputStream.read:([B)I
            ifge 3
        end local 1 // byte[] buff
         4: .line 315
            goto 9
      StackMap locals: org.apache.http.impl.io.ChunkedInputStream
      StackMap stack: java.lang.Throwable
         5: astore 2
         6: .line 316
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
         7: .line 317
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
         8: .line 318
            aload 2
            athrow
         9: .line 316
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.eof:Z
        10: .line 317
            aload 0 /* this */
            iconst_1
            putfield org.apache.http.impl.io.ChunkedInputStream.closed:Z
        11: .line 320
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
            3    4     1  buff  [B
      Exception table:
        from    to  target  type
           1     5       5  any
    Exceptions:
      throws java.io.IOException

  public org.apache.http.Header[] getFooters();
    descriptor: ()[Lorg/apache/http/Header;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.http.impl.io.ChunkedInputStream this
         0: .line 323
            aload 0 /* this */
            getfield org.apache.http.impl.io.ChunkedInputStream.footers:[Lorg/apache/http/Header;
            invokevirtual org.apache.http.Header[].clone:()Ljava/lang/Object;
            checkcast org.apache.http.Header[]
            areturn
        end local 0 // org.apache.http.impl.io.ChunkedInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/http/impl/io/ChunkedInputStream;
}
SourceFile: "ChunkedInputStream.java"