public class javax.sound.sampled.AudioInputStream extends java.io.InputStream
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: javax.sound.sampled.AudioInputStream
  super_class: java.io.InputStream
{
  private final java.io.InputStream stream;
    descriptor: Ljava/io/InputStream;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected javax.sound.sampled.AudioFormat format;
    descriptor: Ljavax/sound/sampled/AudioFormat;
    flags: (0x0004) ACC_PROTECTED

  protected long frameLength;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

  protected int frameSize;
    descriptor: I
    flags: (0x0004) ACC_PROTECTED

  protected long framePos;
    descriptor: J
    flags: (0x0004) ACC_PROTECTED

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

  private byte[] pushBackBuffer;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

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

  private byte[] markPushBackBuffer;
    descriptor: [B
    flags: (0x0002) ACC_PRIVATE

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

  public void <init>(java.io.InputStream, javax.sound.sampled.AudioFormat, long);
    descriptor: (Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=4
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // java.io.InputStream stream
        start local 2 // javax.sound.sampled.AudioFormat format
        start local 3 // long length
         0: .line 122
            aload 0 /* this */
            invokespecial java.io.InputStream.<init>:()V
         1: .line 94
            aload 0 /* this */
            aconst_null
            putfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
         2: .line 99
            aload 0 /* this */
            iconst_0
            putfield javax.sound.sampled.AudioInputStream.pushBackLen:I
         3: .line 104
            aload 0 /* this */
            aconst_null
            putfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
         4: .line 109
            aload 0 /* this */
            iconst_0
            putfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
         5: .line 124
            aload 0 /* this */
            aload 2 /* format */
            putfield javax.sound.sampled.AudioInputStream.format:Ljavax/sound/sampled/AudioFormat;
         6: .line 125
            aload 0 /* this */
            lload 3 /* length */
            putfield javax.sound.sampled.AudioInputStream.frameLength:J
         7: .line 126
            aload 0 /* this */
            aload 2 /* format */
            invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
            putfield javax.sound.sampled.AudioInputStream.frameSize:I
         8: .line 130
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            iconst_m1
            if_icmpeq 9
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            ifgt 10
         9: .line 131
      StackMap locals: javax.sound.sampled.AudioInputStream java.io.InputStream javax.sound.sampled.AudioFormat long
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.sound.sampled.AudioInputStream.frameSize:I
        10: .line 134
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* stream */
            putfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
        11: .line 135
            aload 0 /* this */
            lconst_0
            putfield javax.sound.sampled.AudioInputStream.framePos:J
        12: .line 136
            aload 0 /* this */
            lconst_0
            putfield javax.sound.sampled.AudioInputStream.markpos:J
        13: .line 137
            return
        end local 3 // long length
        end local 2 // javax.sound.sampled.AudioFormat format
        end local 1 // java.io.InputStream stream
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   14     0    this  Ljavax/sound/sampled/AudioInputStream;
            0   14     1  stream  Ljava/io/InputStream;
            0   14     2  format  Ljavax/sound/sampled/AudioFormat;
            0   14     3  length  J
    MethodParameters:
        Name  Flags
      stream  
      format  
      length  

  public void <init>(javax.sound.sampled.TargetDataLine);
    descriptor: (Ljavax/sound/sampled/TargetDataLine;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=2
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // javax.sound.sampled.TargetDataLine line
         0: .line 147
            aload 0 /* this */
            invokespecial java.io.InputStream.<init>:()V
         1: .line 94
            aload 0 /* this */
            aconst_null
            putfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
         2: .line 99
            aload 0 /* this */
            iconst_0
            putfield javax.sound.sampled.AudioInputStream.pushBackLen:I
         3: .line 104
            aload 0 /* this */
            aconst_null
            putfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
         4: .line 109
            aload 0 /* this */
            iconst_0
            putfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
         5: .line 149
            new javax.sound.sampled.AudioInputStream$TargetDataLineInputStream
            dup
            aload 0 /* this */
            aload 1 /* line */
            invokespecial javax.sound.sampled.AudioInputStream$TargetDataLineInputStream.<init>:(Ljavax/sound/sampled/AudioInputStream;Ljavax/sound/sampled/TargetDataLine;)V
            astore 2 /* tstream */
        start local 2 // javax.sound.sampled.AudioInputStream$TargetDataLineInputStream tstream
         6: .line 150
            aload 0 /* this */
            aload 1 /* line */
            invokeinterface javax.sound.sampled.TargetDataLine.getFormat:()Ljavax/sound/sampled/AudioFormat;
            putfield javax.sound.sampled.AudioInputStream.format:Ljavax/sound/sampled/AudioFormat;
         7: .line 151
            aload 0 /* this */
            ldc -1
            putfield javax.sound.sampled.AudioInputStream.frameLength:J
         8: .line 152
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.format:Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
            putfield javax.sound.sampled.AudioInputStream.frameSize:I
         9: .line 154
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            iconst_m1
            if_icmpeq 10
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            ifgt 11
        10: .line 155
      StackMap locals: javax.sound.sampled.AudioInputStream javax.sound.sampled.TargetDataLine javax.sound.sampled.AudioInputStream$TargetDataLineInputStream
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield javax.sound.sampled.AudioInputStream.frameSize:I
        11: .line 157
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* tstream */
            putfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
        12: .line 158
            aload 0 /* this */
            lconst_0
            putfield javax.sound.sampled.AudioInputStream.framePos:J
        13: .line 159
            aload 0 /* this */
            lconst_0
            putfield javax.sound.sampled.AudioInputStream.markpos:J
        14: .line 160
            return
        end local 2 // javax.sound.sampled.AudioInputStream$TargetDataLineInputStream tstream
        end local 1 // javax.sound.sampled.TargetDataLine line
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   15     0     this  Ljavax/sound/sampled/AudioInputStream;
            0   15     1     line  Ljavax/sound/sampled/TargetDataLine;
            6   15     2  tstream  Ljavax/sound/sampled/AudioInputStream$TargetDataLineInputStream;
    MethodParameters:
      Name  Flags
      line  

  public javax.sound.sampled.AudioFormat getFormat();
    descriptor: ()Ljavax/sound/sampled/AudioFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 168
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.format:Ljavax/sound/sampled/AudioFormat;
            areturn
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/sound/sampled/AudioInputStream;

  public long getFrameLength();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 178
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            lreturn
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/sound/sampled/AudioInputStream;

  public int read();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 194
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            iconst_1
            if_icmpeq 2
         1: .line 195
            new java.io.IOException
            dup
            ldc "cannot read a single byte if frame size > 1"
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 198
      StackMap locals:
      StackMap stack:
            iconst_1
            newarray 8
            astore 1 /* data */
        start local 1 // byte[] data
         3: .line 199
            aload 0 /* this */
            aload 1 /* data */
            invokevirtual javax.sound.sampled.AudioInputStream.read:([B)I
            istore 2 /* temp */
        start local 2 // int temp
         4: .line 200
            iload 2 /* temp */
            ifgt 6
         5: .line 202
            iconst_m1
            ireturn
         6: .line 204
      StackMap locals: byte[] int
      StackMap stack:
            aload 1 /* data */
            iconst_0
            baload
            sipush 255
            iand
            ireturn
        end local 2 // int temp
        end local 1 // byte[] data
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Ljavax/sound/sampled/AudioInputStream;
            3    7     1  data  [B
            4    7     2  temp  I
    Exceptions:
      throws java.io.IOException

  public int read(byte[]);
    descriptor: ([B)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // byte[] b
         0: .line 227
            aload 0 /* this */
            aload 1 /* b */
            iconst_0
            aload 1 /* b */
            arraylength
            invokevirtual javax.sound.sampled.AudioInputStream.read:([BII)I
            ireturn
        end local 1 // byte[] b
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/sound/sampled/AudioInputStream;
            0    1     1     b  [B
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     

  public int read(byte[], int, int);
    descriptor: ([BII)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=8, args_size=4
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // byte[] b
        start local 2 // int off
        start local 3 // int len
         0: .line 253
            iload 3 /* len */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            irem
            istore 4 /* reminder */
        start local 4 // int reminder
         1: .line 254
            iload 4 /* reminder */
            ifeq 5
         2: .line 255
            iload 3 /* len */
            iload 4 /* reminder */
            isub
            istore 3 /* len */
         3: .line 256
            iload 3 /* len */
            ifne 5
         4: .line 257
            iconst_0
            ireturn
         5: .line 261
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            ldc -1
            lcmp
            ifeq 10
         6: .line 262
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            lcmp
            iflt 8
         7: .line 263
            iconst_m1
            ireturn
         8: .line 267
      StackMap locals:
      StackMap stack:
            iload 3 /* len */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            idiv
            i2l
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            lcmp
            ifle 10
         9: .line 268
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            l2i
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            imul
            istore 3 /* len */
        10: .line 273
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 5 /* bytesRead */
        start local 5 // int bytesRead
        11: .line 274
            iload 2 /* off */
            istore 6 /* thisOff */
        start local 6 // int thisOff
        12: .line 278
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            ifle 20
            iload 3 /* len */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            if_icmplt 20
        13: .line 279
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            iconst_0
        14: .line 280
            aload 1 /* b */
            iload 2 /* off */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
        15: .line 279
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        16: .line 281
            iload 6 /* thisOff */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            iadd
            istore 6 /* thisOff */
        17: .line 282
            iload 3 /* len */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            isub
            istore 3 /* len */
        18: .line 283
            iload 5 /* bytesRead */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            iadd
            istore 5 /* bytesRead */
        19: .line 284
            aload 0 /* this */
            iconst_0
            putfield javax.sound.sampled.AudioInputStream.pushBackLen:I
        20: .line 287
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            aload 1 /* b */
            iload 6 /* thisOff */
            iload 3 /* len */
            invokevirtual java.io.InputStream.read:([BII)I
            istore 7 /* thisBytesRead */
        start local 7 // int thisBytesRead
        21: .line 288
            iload 7 /* thisBytesRead */
            iconst_m1
            if_icmpne 23
        22: .line 289
            iconst_m1
            ireturn
        23: .line 291
      StackMap locals: int
      StackMap stack:
            iload 7 /* thisBytesRead */
            ifle 25
        24: .line 292
            iload 5 /* bytesRead */
            iload 7 /* thisBytesRead */
            iadd
            istore 5 /* bytesRead */
        25: .line 294
      StackMap locals:
      StackMap stack:
            iload 5 /* bytesRead */
            ifle 35
        26: .line 295
            aload 0 /* this */
            iload 5 /* bytesRead */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            irem
            putfield javax.sound.sampled.AudioInputStream.pushBackLen:I
        27: .line 296
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            ifle 34
        28: .line 299
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            ifnonnull 30
        29: .line 300
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            newarray 8
            putfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
        30: .line 302
      StackMap locals:
      StackMap stack:
            aload 1 /* b */
            iload 2 /* off */
            iload 5 /* bytesRead */
            iadd
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            isub
        31: .line 303
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
        32: .line 302
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
        33: .line 304
            iload 5 /* bytesRead */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            isub
            istore 5 /* bytesRead */
        34: .line 307
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            iload 5 /* bytesRead */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            idiv
            i2l
            ladd
            putfield javax.sound.sampled.AudioInputStream.framePos:J
        35: .line 309
      StackMap locals:
      StackMap stack:
            iload 5 /* bytesRead */
            ireturn
        end local 7 // int thisBytesRead
        end local 6 // int thisOff
        end local 5 // int bytesRead
        end local 4 // int reminder
        end local 3 // int len
        end local 2 // int off
        end local 1 // byte[] b
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   36     0           this  Ljavax/sound/sampled/AudioInputStream;
            0   36     1              b  [B
            0   36     2            off  I
            0   36     3            len  I
            1   36     4       reminder  I
           11   36     5      bytesRead  I
           12   36     6        thisOff  I
           21   36     7  thisBytesRead  I
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      b     
      off   
      len   

  public long skip(long);
    descriptor: (J)J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=9, args_size=2
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // long n
         0: .line 329
            lload 1 /* n */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            i2l
            lrem
            lstore 3 /* reminder */
        start local 3 // long reminder
         1: .line 330
            lload 3 /* reminder */
            lconst_0
            lcmp
            ifeq 3
         2: .line 331
            lload 1 /* n */
            lload 3 /* reminder */
            lsub
            lstore 1 /* n */
         3: .line 333
      StackMap locals: long
      StackMap stack:
            lload 1 /* n */
            lconst_0
            lcmp
            ifgt 5
         4: .line 334
            lconst_0
            lreturn
         5: .line 337
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            ldc -1
            lcmp
            ifeq 8
         6: .line 339
            lload 1 /* n */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            i2l
            ldiv
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            lcmp
            ifle 8
         7: .line 340
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            i2l
            lmul
            lstore 1 /* n */
         8: .line 343
      StackMap locals:
      StackMap stack:
            lload 1 /* n */
            lstore 5 /* remaining */
        start local 5 // long remaining
         9: .line 344
            goto 19
        10: .line 347
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            lload 5 /* remaining */
            invokevirtual java.io.InputStream.skip:(J)J
            lload 5 /* remaining */
            invokestatic java.lang.Math.min:(JJ)J
            lstore 7 /* ret */
        start local 7 // long ret
        11: .line 348
            lload 7 /* ret */
            lconst_0
            lcmp
            ifne 16
        12: .line 350
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.read:()I
            iconst_m1
            if_icmpne 14
        13: .line 351
            goto 20
        14: .line 353
      StackMap locals: long
      StackMap stack:
            lconst_1
            lstore 7 /* ret */
        15: .line 354
            goto 18
      StackMap locals:
      StackMap stack:
        16: lload 7 /* ret */
            lconst_0
            lcmp
            ifge 18
        17: .line 356
            goto 20
        18: .line 358
      StackMap locals:
      StackMap stack:
            lload 5 /* remaining */
            lload 7 /* ret */
            lsub
            lstore 5 /* remaining */
        end local 7 // long ret
        19: .line 344
      StackMap locals:
      StackMap stack:
            lload 5 /* remaining */
            lconst_0
            lcmp
            ifgt 10
        20: .line 360
      StackMap locals:
      StackMap stack:
            lload 1 /* n */
            lload 5 /* remaining */
            lsub
            lstore 7 /* temp */
        start local 7 // long temp
        21: .line 363
            lload 7 /* temp */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            i2l
            lrem
            lconst_0
            lcmp
            ifeq 23
        22: .line 365
            new java.io.IOException
            dup
            ldc "Could not skip an integer number of frames."
            invokespecial java.io.IOException.<init>:(Ljava/lang/String;)V
            athrow
        23: .line 367
      StackMap locals: long
      StackMap stack:
            aload 0 /* this */
            dup
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lload 7 /* temp */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            i2l
            ldiv
            ladd
            putfield javax.sound.sampled.AudioInputStream.framePos:J
        24: .line 368
            lload 7 /* temp */
            lreturn
        end local 7 // long temp
        end local 5 // long remaining
        end local 3 // long reminder
        end local 1 // long n
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   25     0       this  Ljavax/sound/sampled/AudioInputStream;
            0   25     1          n  J
            1   25     3   reminder  J
            9   25     5  remaining  J
           11   19     7        ret  J
           21   25     7       temp  J
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      n     

  public int available();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=2, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 390
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.available:()I
            istore 1 /* temp */
        start local 1 // int temp
         1: .line 393
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            ldc -1
            lcmp
            ifeq 3
            iload 1 /* temp */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            idiv
            i2l
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            lcmp
            ifle 3
         2: .line 394
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameLength:J
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            lsub
            l2i
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            imul
            ireturn
         3: .line 396
      StackMap locals: int
      StackMap stack:
            iload 1 /* temp */
            ireturn
        end local 1 // int temp
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Ljavax/sound/sampled/AudioInputStream;
            1    4     1  temp  I
    Exceptions:
      throws java.io.IOException

  public void close();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 408
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.close:()V
         1: .line 409
            return
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Ljavax/sound/sampled/AudioInputStream;
    Exceptions:
      throws java.io.IOException

  public void mark(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // javax.sound.sampled.AudioInputStream this
        start local 1 // int readlimit
         0: .line 422
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            iload 1 /* readlimit */
            invokevirtual java.io.InputStream.mark:(I)V
         1: .line 423
            aload 0 /* this */
            invokevirtual javax.sound.sampled.AudioInputStream.markSupported:()Z
            ifeq 8
         2: .line 424
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.framePos:J
            putfield javax.sound.sampled.AudioInputStream.markpos:J
         3: .line 426
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            putfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
         4: .line 427
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
            ifle 8
         5: .line 428
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
            ifnonnull 7
         6: .line 429
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            newarray 8
            putfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
         7: .line 431
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         8: .line 434
      StackMap locals:
      StackMap stack:
            return
        end local 1 // int readlimit
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0    9     0       this  Ljavax/sound/sampled/AudioInputStream;
            0    9     1  readlimit  I
    MethodParameters:
           Name  Flags
      readlimit  

  public void reset();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 447
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.reset:()V
         1: .line 448
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markpos:J
            putfield javax.sound.sampled.AudioInputStream.framePos:J
         2: .line 450
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackLen:I
            putfield javax.sound.sampled.AudioInputStream.pushBackLen:I
         3: .line 451
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            ifle 7
         4: .line 452
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            ifnonnull 6
         5: .line 453
            aload 0 /* this */
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.frameSize:I
            iconst_1
            isub
            newarray 8
            putfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
         6: .line 455
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.markPushBackBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackBuffer:[B
            iconst_0
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.pushBackLen:I
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         7: .line 457
      StackMap locals:
      StackMap stack:
            return
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Ljavax/sound/sampled/AudioInputStream;
    Exceptions:
      throws java.io.IOException

  public boolean markSupported();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // javax.sound.sampled.AudioInputStream this
         0: .line 471
            aload 0 /* this */
            getfield javax.sound.sampled.AudioInputStream.stream:Ljava/io/InputStream;
            invokevirtual java.io.InputStream.markSupported:()Z
            ireturn
        end local 0 // javax.sound.sampled.AudioInputStream this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Ljavax/sound/sampled/AudioInputStream;
}
SourceFile: "AudioInputStream.java"
NestMembers:
  javax.sound.sampled.AudioInputStream$TargetDataLineInputStream
InnerClasses:
  private TargetDataLineInputStream = javax.sound.sampled.AudioInputStream$TargetDataLineInputStream of javax.sound.sampled.AudioInputStream