public class org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream extends org.apache.commons.compress.compressors.CompressorInputStream implements org.apache.commons.compress.utils.InputStreamStatistics
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream
  super_class: org.apache.commons.compress.compressors.CompressorInputStream
{
  private static final int FHCRC;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

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

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

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

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

  private final org.apache.commons.compress.utils.CountingInputStream countingStream;
    descriptor: Lorg/apache/commons/compress/utils/CountingInputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final java.io.InputStream in;
    descriptor: Ljava/io/InputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean decompressConcatenated;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private java.util.zip.Inflater inf;
    descriptor: Ljava/util/zip/Inflater;
    flags: (0x0002) ACC_PRIVATE

  private final java.util.zip.CRC32 crc;
    descriptor: Ljava/util/zip/CRC32;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

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

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

  private final org.apache.commons.compress.compressors.gzip.GzipParameters parameters;
    descriptor: Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  static final boolean $assertionsDisabled;
    descriptor: Z
    flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC

  static void <clinit>();
    descriptor: ()V
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 76
            ldc Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
            invokevirtual java.lang.Class.desiredAssertionStatus:()Z
            ifne 1
            iconst_1
            goto 2
      StackMap locals:
      StackMap stack:
         1: iconst_0
      StackMap locals:
      StackMap stack: int
         2: putstatic org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.$assertionsDisabled:Z
         3: .line 85
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  public void <init>(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
        start local 1 // java.io.InputStream inputStream
         0: .line 131
            aload 0 /* this */
            aload 1 /* inputStream */
            iconst_0
            invokespecial org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.<init>:(Ljava/io/InputStream;Z)V
         1: .line 132
            return
        end local 1 // java.io.InputStream inputStream
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0    2     0         this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
            0    2     1  inputStream  Ljava/io/InputStream;
    Exceptions:
      throws java.io.IOException
    MethodParameters:
             Name  Flags
      inputStream  final

  public void <init>(java.io.InputStream, boolean);
    descriptor: (Ljava/io/InputStream;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
        start local 1 // java.io.InputStream inputStream
        start local 2 // boolean decompressConcatenated
         0: .line 154
            aload 0 /* this */
            invokespecial org.apache.commons.compress.compressors.CompressorInputStream.<init>:()V
         1: .line 97
            aload 0 /* this */
            sipush 8192
            newarray 8
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.buf:[B
         2: .line 103
            aload 0 /* this */
            new java.util.zip.Inflater
            dup
            iconst_1
            invokespecial java.util.zip.Inflater.<init>:(Z)V
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
         3: .line 106
            aload 0 /* this */
            new java.util.zip.CRC32
            dup
            invokespecial java.util.zip.CRC32.<init>:()V
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.crc:Ljava/util/zip/CRC32;
         4: .line 109
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.endReached:Z
         5: .line 112
            aload 0 /* this */
            iconst_1
            newarray 8
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.oneByte:[B
         6: .line 114
            aload 0 /* this */
            new org.apache.commons.compress.compressors.gzip.GzipParameters
            dup
            invokespecial org.apache.commons.compress.compressors.gzip.GzipParameters.<init>:()V
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
         7: .line 157
            aload 0 /* this */
            new org.apache.commons.compress.utils.CountingInputStream
            dup
            aload 1 /* inputStream */
            invokespecial org.apache.commons.compress.utils.CountingInputStream.<init>:(Ljava/io/InputStream;)V
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.countingStream:Lorg/apache/commons/compress/utils/CountingInputStream;
         8: .line 160
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.countingStream:Lorg/apache/commons/compress/utils/CountingInputStream;
            invokevirtual org.apache.commons.compress.utils.CountingInputStream.markSupported:()Z
            ifeq 11
         9: .line 161
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.countingStream:Lorg/apache/commons/compress/utils/CountingInputStream;
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
        10: .line 162
            goto 12
        11: .line 163
      StackMap locals: org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream java.io.InputStream int
      StackMap stack:
            aload 0 /* this */
            new java.io.BufferedInputStream
            dup
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.countingStream:Lorg/apache/commons/compress/utils/CountingInputStream;
            invokespecial java.io.BufferedInputStream.<init>:(Ljava/io/InputStream;)V
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
        12: .line 166
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 2 /* decompressConcatenated */
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.decompressConcatenated:Z
        13: .line 167
            aload 0 /* this */
            iconst_1
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.init:(Z)Z
            pop
        14: .line 168
            return
        end local 2 // boolean decompressConcatenated
        end local 1 // java.io.InputStream inputStream
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot                    Name  Signature
            0   15     0                    this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
            0   15     1             inputStream  Ljava/io/InputStream;
            0   15     2  decompressConcatenated  Z
    Exceptions:
      throws java.io.IOException
    MethodParameters:
                        Name  Flags
      inputStream             final
      decompressConcatenated  final

  public org.apache.commons.compress.compressors.gzip.GzipParameters getMetaData();
    descriptor: ()Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
         0: .line 177
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            areturn
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;

  private boolean init(boolean);
    descriptor: (Z)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=8, args_size=2
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
        start local 1 // boolean isFirstMember
         0: .line 181
            getstatic org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.$assertionsDisabled:Z
            ifne 1
            iload 1 /* isFirstMember */
            ifne 1
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.decompressConcatenated:Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 184
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.read:()I
            istore 2 /* magic0 */
        start local 2 // int magic0
         2: .line 185
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.read:()I
            istore 3 /* magic1 */
        start local 3 // int magic1
         3: .line 189
            iload 2 /* magic0 */
            iconst_m1
            if_icmpne 5
            iload 1 /* isFirstMember */
            ifne 5
         4: .line 190
            iconst_0
            ireturn
         5: .line 193
      StackMap locals: int int
      StackMap stack:
            iload 2 /* magic0 */
            bipush 31
            if_icmpne 6
            iload 3 /* magic1 */
            sipush 139
            if_icmpeq 10
         6: .line 194
      StackMap locals:
      StackMap stack:
            new java.io.IOException
            dup
            iload 1 /* isFirstMember */
            ifeq 8
         7: .line 195
            ldc "Input is not in the .gz format"
            goto 9
         8: .line 196
      StackMap locals: org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream int int int
      StackMap stack: new 6 new 6
            ldc "Garbage after a valid .gz stream"
         9: .line 194
      StackMap locals: org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream int int int
      StackMap stack: new 6 new 6 java.lang.String
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        10: .line 200
      StackMap locals:
      StackMap stack:
            new java.io.DataInputStream
            dup
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 4 /* inData */
        start local 4 // java.io.DataInput inData
        11: .line 201
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            istore 5 /* method */
        start local 5 // int method
        12: .line 202
            iload 5 /* method */
            bipush 8
            if_icmpeq 16
        13: .line 203
            new java.io.IOException
            dup
            new java.lang.StringBuilder
            dup
            ldc "Unsupported compression method "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
        14: .line 204
            iload 5 /* method */
            invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
            ldc " in the .gz header"
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
        15: .line 203
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        16: .line 207
      StackMap locals: java.io.DataInput int
      StackMap stack:
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            istore 6 /* flg */
        start local 6 // int flg
        17: .line 208
            iload 6 /* flg */
            sipush 224
            iand
            ifeq 21
        18: .line 209
            new java.io.IOException
            dup
        19: .line 210
            ldc "Reserved flags are set in the .gz header"
        20: .line 209
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        21: .line 213
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            aload 4 /* inData */
            iconst_4
            invokestatic org.apache.commons.compress.utils.ByteUtils.fromLittleEndian:(Ljava/io/DataInput;I)J
            ldc 1000
            lmul
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setModificationTime:(J)V
        22: .line 214
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            tableswitch { // 2 - 4
                    2: 23
                    3: 27
                    4: 25
              default: 27
          }
        23: .line 216
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            bipush 9
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setCompressionLevel:(I)V
        24: .line 217
            goto 27
        25: .line 219
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            iconst_1
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setCompressionLevel:(I)V
        26: .line 220
            goto 27
        27: .line 225
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setOperatingSystem:(I)V
        28: .line 228
            iload 6 /* flg */
            iconst_4
            iand
            ifeq 34
        29: .line 229
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            istore 7 /* xlen */
        start local 7 // int xlen
        30: .line 230
            iload 7 /* xlen */
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            bipush 8
            ishl
            ior
            istore 7 /* xlen */
        31: .line 235
            goto 33
        32: .line 236
      StackMap locals: int
      StackMap stack:
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            pop
        33: .line 235
      StackMap locals:
      StackMap stack:
            iload 7 /* xlen */
            iinc 7 /* xlen */ -1
            ifgt 32
        end local 7 // int xlen
        34: .line 241
      StackMap locals:
      StackMap stack:
            iload 6 /* flg */
            bipush 8
            iand
            ifeq 38
        35: .line 242
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            new java.lang.String
            dup
            aload 4 /* inData */
            invokestatic org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.readToNull:(Ljava/io/DataInput;)[B
        36: .line 243
            ldc "ISO-8859-1"
            invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
        37: .line 242
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setFilename:(Ljava/lang/String;)V
        38: .line 247
      StackMap locals:
      StackMap stack:
            iload 6 /* flg */
            bipush 16
            iand
            ifeq 42
        39: .line 248
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.parameters:Lorg/apache/commons/compress/compressors/gzip/GzipParameters;
            new java.lang.String
            dup
            aload 4 /* inData */
            invokestatic org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.readToNull:(Ljava/io/DataInput;)[B
        40: .line 249
            ldc "ISO-8859-1"
            invokespecial java.lang.String.<init>:([BLjava/lang/String;)V
        41: .line 248
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipParameters.setComment:(Ljava/lang/String;)V
        42: .line 257
      StackMap locals:
      StackMap stack:
            iload 6 /* flg */
            iconst_2
            iand
            ifeq 44
        43: .line 258
            aload 4 /* inData */
            invokeinterface java.io.DataInput.readShort:()S
            pop
        44: .line 262
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.reset:()V
        45: .line 263
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.crc:Ljava/util/zip/CRC32;
            invokevirtual java.util.zip.CRC32.reset:()V
        46: .line 265
            iconst_1
            ireturn
        end local 6 // int flg
        end local 5 // int method
        end local 4 // java.io.DataInput inData
        end local 3 // int magic1
        end local 2 // int magic0
        end local 1 // boolean isFirstMember
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   47     0           this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
            0   47     1  isFirstMember  Z
            2   47     2         magic0  I
            3   47     3         magic1  I
           11   47     4         inData  Ljava/io/DataInput;
           12   47     5         method  I
           17   47     6            flg  I
           30   34     7           xlen  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
               Name  Flags
      isFirstMember  final

  private static byte[] readToNull(java.io.DataInput);
    descriptor: (Ljava/io/DataInput;)[B
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // java.io.DataInput inData
         0: .line 269
            new java.io.ByteArrayOutputStream
            dup
            invokespecial java.io.ByteArrayOutputStream.<init>:()V
            astore 1 /* bos */
        start local 1 // java.io.ByteArrayOutputStream bos
         1: .line 270
            iconst_0
            istore 2 /* b */
        start local 2 // int b
         2: .line 271
            goto 4
         3: .line 272
      StackMap locals: java.io.ByteArrayOutputStream int
      StackMap stack:
            aload 1 /* bos */
            iload 2 /* b */
            invokevirtual java.io.ByteArrayOutputStream.write:(I)V
         4: .line 271
      StackMap locals:
      StackMap stack:
            aload 0 /* inData */
            invokeinterface java.io.DataInput.readUnsignedByte:()I
            dup
            istore 2 /* b */
            ifne 3
         5: .line 274
            aload 1 /* bos */
            invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
            areturn
        end local 2 // int b
        end local 1 // java.io.ByteArrayOutputStream bos
        end local 0 // java.io.DataInput inData
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0  inData  Ljava/io/DataInput;
            1    6     1     bos  Ljava/io/ByteArrayOutputStream;
            2    6     2       b  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
        Name  Flags
      inData  final

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
         0: .line 279
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.oneByte:[B
            iconst_0
            iconst_1
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.read:([BII)I
            iconst_m1
            if_icmpne 1
            iconst_m1
            goto 2
      StackMap locals:
      StackMap stack:
         1: aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.oneByte:[B
            iconst_0
            baload
            sipush 255
            iand
      StackMap locals:
      StackMap stack: int
         2: ireturn
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
    Exceptions:
      throws java.io.IOException

  public int read(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=12, args_size=4
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 289
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.endReached:Z
            ifeq 2
         1: .line 290
            iconst_m1
            ireturn
         2: .line 293
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* size */
        start local 4 // int size
         3: .line 295
            goto 39
         4: .line 296
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.needsInput:()Z
            ifeq 10
         5: .line 299
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.buf:[B
            arraylength
            invokevirtual java.io.InputStream.mark:(I)V
         6: .line 301
            aload 0 /* this */
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.buf:[B
            invokevirtual java.io.InputStream.read:([B)I
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.bufUsed:I
         7: .line 302
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.bufUsed:I
            iconst_m1
            if_icmpne 9
         8: .line 303
            new java.io.EOFException
            dup
            invokespecial java.io.EOFException.<init>:()V
            athrow
         9: .line 306
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.buf:[B
            iconst_0
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.bufUsed:I
            invokevirtual java.util.zip.Inflater.setInput:([BII)V
        10: .line 311
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            aload 1 /* b */
            iload 2 /* off */
            iload 3 /* len */
            invokevirtual java.util.zip.Inflater.inflate:([BII)I
            istore 5 /* ret */
        start local 5 // int ret
        11: .line 312
            goto 14
        end local 5 // int ret
      StackMap locals:
      StackMap stack: java.util.zip.DataFormatException
        12: pop
        13: .line 313
            new java.io.IOException
            dup
            ldc "Gzip-compressed data is corrupt"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        start local 5 // int ret
        14: .line 316
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.crc:Ljava/util/zip/CRC32;
            aload 1 /* b */
            iload 2 /* off */
            iload 5 /* ret */
            invokevirtual java.util.zip.CRC32.update:([BII)V
        15: .line 317
            iload 2 /* off */
            iload 5 /* ret */
            iadd
            istore 2 /* off */
        16: .line 318
            iload 3 /* len */
            iload 5 /* ret */
            isub
            istore 3 /* len */
        17: .line 319
            iload 4 /* size */
            iload 5 /* ret */
            iadd
            istore 4 /* size */
        18: .line 320
            aload 0 /* this */
            iload 5 /* ret */
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.count:(I)V
        19: .line 322
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.finished:()Z
            ifeq 39
        20: .line 328
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.reset:()V
        21: .line 330
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.bufUsed:I
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.getRemaining:()I
            isub
            istore 6 /* skipAmount */
        start local 6 // int skipAmount
        22: .line 331
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            iload 6 /* skipAmount */
            i2l
            invokestatic org.apache.commons.compress.utils.IOUtils.skip:(Ljava/io/InputStream;J)J
            iload 6 /* skipAmount */
            i2l
            lcmp
            ifeq 24
        23: .line 332
            new java.io.IOException
            dup
            invokespecial java.io.IOException.<init>:()V
            athrow
        24: .line 335
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.bufUsed:I
        25: .line 337
            new java.io.DataInputStream
            dup
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 7 /* inData */
        start local 7 // java.io.DataInput inData
        26: .line 340
            aload 7 /* inData */
            iconst_4
            invokestatic org.apache.commons.compress.utils.ByteUtils.fromLittleEndian:(Ljava/io/DataInput;I)J
            lstore 8 /* crcStored */
        start local 8 // long crcStored
        27: .line 342
            lload 8 /* crcStored */
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.crc:Ljava/util/zip/CRC32;
            invokevirtual java.util.zip.CRC32.getValue:()J
            lcmp
            ifeq 29
        28: .line 343
            new java.io.IOException
            dup
            ldc "Gzip-compressed data is corrupt (CRC32 error)"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        29: .line 348
      StackMap locals: java.io.DataInput long
      StackMap stack:
            aload 7 /* inData */
            iconst_4
            invokestatic org.apache.commons.compress.utils.ByteUtils.fromLittleEndian:(Ljava/io/DataInput;I)J
            lstore 10 /* isize */
        start local 10 // long isize
        30: .line 350
            lload 10 /* isize */
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.getBytesWritten:()J
            ldc 4294967295
            land
            lcmp
            ifeq 32
        31: .line 351
            new java.io.IOException
            dup
            ldc "Gzip-compressed data is corrupt(uncompressed size mismatch)"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        32: .line 356
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.decompressConcatenated:Z
            ifeq 33
            aload 0 /* this */
            iconst_0
            invokevirtual org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.init:(Z)Z
            ifne 39
        33: .line 357
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.end:()V
        34: .line 358
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
        35: .line 359
            aload 0 /* this */
            iconst_1
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.endReached:Z
        36: .line 360
            iload 4 /* size */
            ifne 37
            iconst_m1
            goto 38
      StackMap locals:
      StackMap stack:
        37: iload 4 /* size */
      StackMap locals:
      StackMap stack: int
        38: ireturn
        end local 10 // long isize
        end local 8 // long crcStored
        end local 7 // java.io.DataInput inData
        end local 6 // int skipAmount
        end local 5 // int ret
        39: .line 295
      StackMap locals: org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream byte[] int int int
      StackMap stack:
            iload 3 /* len */
            ifgt 4
        40: .line 365
            iload 4 /* size */
            ireturn
        end local 4 // int size
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   41     0        this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
            0   41     1           b  [B
            0   41     2         off  I
            0   41     3         len  I
            3   41     4        size  I
           11   12     5         ret  I
           14   39     5         ret  I
           22   39     6  skipAmount  I
           26   39     7      inData  Ljava/io/DataInput;
           27   39     8   crcStored  J
           30   39    10       isize  J
      Exception table:
        from    to  target  type
          10    11      12  Class java.util.zip.DataFormatException
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     final
      off   
      len   

  public static boolean matches(byte[], int);
    descriptor: ([BI)Z
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // byte[] signature
        start local 1 // int length
         0: .line 378
            iload 1 /* length */
            iconst_2
            if_icmplt 1
            aload 0 /* signature */
            iconst_0
            baload
            bipush 31
            if_icmpne 1
            aload 0 /* signature */
            iconst_1
            baload
            bipush -117
            if_icmpne 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 1 // int length
        end local 0 // byte[] signature
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    2     0  signature  [B
            0    2     1     length  I
    MethodParameters:
           Name  Flags
      signature  final
      length     final

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
         0: .line 388
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            ifnull 3
         1: .line 389
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
            invokevirtual java.util.zip.Inflater.end:()V
         2: .line 390
            aload 0 /* this */
            aconst_null
            putfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.inf:Ljava/util/zip/Inflater;
         3: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            getstatic java.lang.System.in:Ljava/io/InputStream;
            if_acmpeq 5
         4: .line 394
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.in:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.close:()V
         5: .line 396
      StackMap locals:
      StackMap stack:
            return
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
    Exceptions:
      throws java.io.IOException

  public long getCompressedCount();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
         0: .line 403
            aload 0 /* this */
            getfield org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream.countingStream:Lorg/apache/commons/compress/utils/CountingInputStream;
            invokevirtual org.apache.commons.compress.utils.CountingInputStream.getBytesRead:()J
            lreturn
        end local 0 // org.apache.commons.compress.compressors.gzip.GzipCompressorInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/commons/compress/compressors/gzip/GzipCompressorInputStream;
}
SourceFile: "GzipCompressorInputStream.java"