public final class com.sun.media.sound.AiffFileReader extends com.sun.media.sound.SunFileReader
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.sun.media.sound.AiffFileReader
  super_class: com.sun.media.sound.SunFileReader
{
  private static final int MAX_READ_LENGTH;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

  public void <init>();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.media.sound.AiffFileReader this
         0: .line 50
            aload 0 /* this */
            invokespecial com.sun.media.sound.SunFileReader.<init>:()V
            return
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/media/sound/AiffFileReader;

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream stream
         0: .line 76
            aload 0 /* this */
            aload 1 /* stream */
            iconst_1
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* aff */
        start local 2 // javax.sound.sampled.AudioFileFormat aff
         1: .line 79
            aload 1 /* stream */
            invokevirtual java.io.InputStream.reset:()V
         2: .line 80
            aload 2 /* aff */
            areturn
        end local 2 // javax.sound.sampled.AudioFileFormat aff
        end local 1 // java.io.InputStream stream
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    3     0    this  Lcom/sun/media/sound/AiffFileReader;
            0    3     1  stream  Ljava/io/InputStream;
            1    3     2     aff  Ljavax/sound/sampled/AudioFileFormat;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.net.URL url
         0: .line 95
            aconst_null
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 96
            aload 1 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 3 /* urlStream */
        start local 3 // java.io.InputStream urlStream
         2: .line 98
            aload 0 /* this */
            aload 3 /* urlStream */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
         3: .line 99
            goto 7
      StackMap locals: com.sun.media.sound.AiffFileReader java.net.URL javax.sound.sampled.AudioFileFormat java.io.InputStream
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 100
            aload 3 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         6: .line 101
            aload 4
            athrow
         7: .line 100
      StackMap locals:
      StackMap stack:
            aload 3 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         8: .line 102
            aload 2 /* fileFormat */
            areturn
        end local 3 // java.io.InputStream urlStream
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.net.URL url
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    9     1         url  Ljava/net/URL;
            1    9     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
            2    9     3   urlStream  Ljava/io/InputStream;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      url   

  public javax.sound.sampled.AudioFileFormat getAudioFileFormat(java.io.File);
    descriptor: (Ljava/io/File;)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.File file
         0: .line 117
            aconst_null
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 118
            new java.io.FileInputStream
            dup
            aload 1 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 3 /* fis */
        start local 3 // java.io.FileInputStream fis
         2: .line 121
            aload 0 /* this */
            aload 3 /* fis */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
         3: .line 122
            goto 7
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.File javax.sound.sampled.AudioFileFormat java.io.FileInputStream
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 123
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         6: .line 124
            aload 4
            athrow
         7: .line 123
      StackMap locals:
      StackMap stack:
            aload 3 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         8: .line 126
            aload 2 /* fileFormat */
            areturn
        end local 3 // java.io.FileInputStream fis
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.io.File file
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    9     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    9     1        file  Ljava/io/File;
            1    9     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
            2    9     3         fis  Ljava/io/FileInputStream;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.io.InputStream);
    descriptor: (Ljava/io/InputStream;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream stream
         0: .line 153
            aload 0 /* this */
            aload 1 /* stream */
            iconst_1
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 2 /* fileFormat */
        start local 2 // javax.sound.sampled.AudioFileFormat fileFormat
         1: .line 157
            new javax.sound.sampled.AudioInputStream
            dup
            aload 1 /* stream */
            aload 2 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 2 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 2 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 1 // java.io.InputStream stream
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    2     0        this  Lcom/sun/media/sound/AiffFileReader;
            0    2     1      stream  Ljava/io/InputStream;
            1    2     2  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
        Name  Flags
      stream  

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.net.URL);
    descriptor: (Ljava/net/URL;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.net.URL url
         0: .line 173
            aload 1 /* url */
            invokevirtual java.net.URL.openStream:()Ljava/io/InputStream;
            astore 2 /* urlStream */
        start local 2 // java.io.InputStream urlStream
         1: .line 174
            aconst_null
            astore 3 /* fileFormat */
        start local 3 // javax.sound.sampled.AudioFileFormat fileFormat
         2: .line 176
            aload 0 /* this */
            aload 2 /* urlStream */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 3 /* fileFormat */
         3: .line 177
            goto 8
      StackMap locals: com.sun.media.sound.AiffFileReader java.net.URL java.io.InputStream javax.sound.sampled.AudioFileFormat
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 178
            aload 3 /* fileFormat */
            ifnonnull 7
         6: .line 179
            aload 2 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
         7: .line 181
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4
            athrow
         8: .line 178
      StackMap locals:
      StackMap stack:
            aload 3 /* fileFormat */
            ifnonnull 10
         9: .line 179
            aload 2 /* urlStream */
            invokevirtual java.io.InputStream.close:()V
        10: .line 182
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.AudioInputStream
            dup
            aload 2 /* urlStream */
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 3 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 2 // java.io.InputStream urlStream
        end local 1 // java.net.URL url
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/AiffFileReader;
            0   11     1         url  Ljava/net/URL;
            1   11     2   urlStream  Ljava/io/InputStream;
            2   11     3  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      url   

  public javax.sound.sampled.AudioInputStream getAudioInputStream(java.io.File);
    descriptor: (Ljava/io/File;)Ljavax/sound/sampled/AudioInputStream;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.File file
         0: .line 200
            new java.io.FileInputStream
            dup
            aload 1 /* file */
            invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
            astore 2 /* fis */
        start local 2 // java.io.FileInputStream fis
         1: .line 201
            aconst_null
            astore 3 /* fileFormat */
        start local 3 // javax.sound.sampled.AudioFileFormat fileFormat
         2: .line 204
            aload 0 /* this */
            aload 2 /* fis */
            iconst_0
            invokevirtual com.sun.media.sound.AiffFileReader.getCOMM:(Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
            astore 3 /* fileFormat */
         3: .line 205
            goto 8
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.File java.io.FileInputStream javax.sound.sampled.AudioFileFormat
      StackMap stack: java.lang.Throwable
         4: astore 4
         5: .line 206
            aload 3 /* fileFormat */
            ifnonnull 7
         6: .line 207
            aload 2 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
         7: .line 209
      StackMap locals: java.lang.Throwable
      StackMap stack:
            aload 4
            athrow
         8: .line 206
      StackMap locals:
      StackMap stack:
            aload 3 /* fileFormat */
            ifnonnull 10
         9: .line 207
            aload 2 /* fis */
            invokevirtual java.io.FileInputStream.close:()V
        10: .line 210
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.AudioInputStream
            dup
            aload 2 /* fis */
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFormat:()Ljavax/sound/sampled/AudioFormat;
            aload 3 /* fileFormat */
            invokevirtual javax.sound.sampled.AudioFileFormat.getFrameLength:()I
            i2l
            invokespecial javax.sound.sampled.AudioInputStream.<init>:(Ljava/io/InputStream;Ljavax/sound/sampled/AudioFormat;J)V
            areturn
        end local 3 // javax.sound.sampled.AudioFileFormat fileFormat
        end local 2 // java.io.FileInputStream fis
        end local 1 // java.io.File file
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/AiffFileReader;
            0   11     1        file  Ljava/io/File;
            1   11     2         fis  Ljava/io/FileInputStream;
            2   11     3  fileFormat  Ljavax/sound/sampled/AudioFileFormat;
      Exception table:
        from    to  target  type
           2     4       4  any
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
      Name  Flags
      file  

  private javax.sound.sampled.AudioFileFormat getCOMM(java.io.InputStream, boolean);
    descriptor: (Ljava/io/InputStream;Z)Ljavax/sound/sampled/AudioFileFormat;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=9, locals=21, args_size=3
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.InputStream is
        start local 2 // boolean doReset
         0: .line 218
            new java.io.DataInputStream
            dup
            aload 1 /* is */
            invokespecial java.io.DataInputStream.<init>:(Ljava/io/InputStream;)V
            astore 3 /* dis */
        start local 3 // java.io.DataInputStream dis
         1: .line 220
            iload 2 /* doReset */
            ifeq 3
         2: .line 221
            aload 3 /* dis */
            bipush 8
            invokevirtual java.io.DataInputStream.mark:(I)V
         3: .line 227
      StackMap locals: java.io.DataInputStream
      StackMap stack:
            iconst_0
            istore 4 /* fileRead */
        start local 4 // int fileRead
         4: .line 228
            iconst_0
            istore 5 /* dataLength */
        start local 5 // int dataLength
         5: .line 229
            aconst_null
            astore 6 /* format */
        start local 6 // javax.sound.sampled.AudioFormat format
         6: .line 232
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 7 /* magic */
        start local 7 // int magic
         7: .line 235
            iload 7 /* magic */
            ldc 1179603533
            if_icmpeq 11
         8: .line 237
            iload 2 /* doReset */
            ifeq 10
         9: .line 238
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.reset:()V
        10: .line 240
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.InputStream int java.io.DataInputStream int int javax.sound.sampled.AudioFormat int
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "not an AIFF file"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        11: .line 243
      StackMap locals:
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 8 /* length */
        start local 8 // int length
        12: .line 244
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 9 /* iffType */
        start local 9 // int iffType
        13: .line 245
            iinc 4 /* fileRead */ 12
        14: .line 248
            iload 8 /* length */
            ifgt 18
        15: .line 249
            iconst_m1
            istore 8 /* length */
        16: .line 250
            iconst_m1
            istore 10 /* totallength */
        start local 10 // int totallength
        17: .line 251
            goto 19
        end local 10 // int totallength
        18: .line 252
      StackMap locals: int int
      StackMap stack:
            iload 8 /* length */
            bipush 8
            iadd
            istore 10 /* totallength */
        start local 10 // int totallength
        19: .line 256
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 11 /* aifc */
        start local 11 // boolean aifc
        20: .line 258
            iload 9 /* iffType */
            ldc 1095321155
            if_icmpne 22
        21: .line 259
            iconst_1
            istore 11 /* aifc */
        22: .line 264
      StackMap locals: int
      StackMap stack:
            iconst_0
            istore 12 /* ssndFound */
        start local 12 // boolean ssndFound
        23: .line 265
            goto 73
        24: .line 267
      StackMap locals: int
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 13 /* chunkName */
        start local 13 // int chunkName
        25: .line 268
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 14 /* chunkLen */
        start local 14 // int chunkLen
        26: .line 269
            iinc 4 /* fileRead */ 8
        27: .line 271
            iconst_0
            istore 15 /* chunkRead */
        start local 15 // int chunkRead
        28: .line 274
            iload 13 /* chunkName */
            lookupswitch { // 3
           1129270605: 30
           1180058962: 29
           1397968452: 59
              default: 67
          }
        29: .line 277
      StackMap locals: int int int
      StackMap stack:
            goto 67
        30: .line 282
      StackMap locals:
      StackMap stack:
            iload 11 /* aifc */
            ifne 31
            iload 14 /* chunkLen */
            bipush 18
            if_icmplt 32
      StackMap locals:
      StackMap stack:
        31: iload 11 /* aifc */
            ifeq 33
            iload 14 /* chunkLen */
            bipush 22
            if_icmpge 33
        32: .line 283
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid AIFF/COMM chunksize"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        33: .line 286
      StackMap locals:
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 16 /* channels */
        start local 16 // int channels
        34: .line 287
            iload 16 /* channels */
            ifgt 36
        35: .line 288
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid number of channels"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        36: .line 290
      StackMap locals: int
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        37: .line 291
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 17 /* sampleSizeInBits */
        start local 17 // int sampleSizeInBits
        38: .line 292
            iload 17 /* sampleSizeInBits */
            iconst_1
            if_icmplt 39
            iload 17 /* sampleSizeInBits */
            bipush 32
            if_icmple 40
        39: .line 293
      StackMap locals: int
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid AIFF/COMM sampleSize"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        40: .line 295
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 3 /* dis */
            invokevirtual com.sun.media.sound.AiffFileReader.read_ieee_extended:(Ljava/io/DataInputStream;)D
            d2f
            fstore 18 /* sampleRate */
        start local 18 // float sampleRate
        41: .line 296
            iinc 15 /* chunkRead */ 18
        42: .line 300
            getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        start local 19 // javax.sound.sampled.AudioFormat$Encoding encoding
        43: .line 302
            iload 11 /* aifc */
            ifeq 53
        44: .line 303
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            istore 20 /* enc */
        start local 20 // int enc
        45: iinc 15 /* chunkRead */ 4
        46: .line 304
            iload 20 /* enc */
            lookupswitch { // 2
           1313820229: 47
           1970037111: 49
              default: 52
          }
        47: .line 306
      StackMap locals: float javax.sound.sampled.AudioFormat$Encoding int
      StackMap stack:
            getstatic javax.sound.sampled.AudioFormat$Encoding.PCM_SIGNED:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        48: .line 307
            goto 53
        49: .line 309
      StackMap locals:
      StackMap stack:
            getstatic javax.sound.sampled.AudioFormat$Encoding.ULAW:Ljavax/sound/sampled/AudioFormat$Encoding;
            astore 19 /* encoding */
        50: .line 310
            bipush 8
            istore 17 /* sampleSizeInBits */
        51: .line 311
            goto 53
        52: .line 313
      StackMap locals:
      StackMap stack:
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "Invalid AIFF encoding"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        end local 20 // int enc
        53: .line 316
      StackMap locals:
      StackMap stack:
            iload 17 /* sampleSizeInBits */
            iload 16 /* channels */
            invokestatic com.sun.media.sound.AiffFileReader.calculatePCMFrameSize:(II)I
            istore 20 /* frameSize */
        start local 20 // int frameSize
        54: .line 321
            new javax.sound.sampled.AudioFormat
            dup
            aload 19 /* encoding */
            fload 18 /* sampleRate */
        55: .line 322
            iload 17 /* sampleSizeInBits */
            iload 16 /* channels */
        56: .line 323
            iload 20 /* frameSize */
            fload 18 /* sampleRate */
            iconst_1
        57: .line 321
            invokespecial javax.sound.sampled.AudioFormat.<init>:(Ljavax/sound/sampled/AudioFormat$Encoding;FIIIFZ)V
            astore 6 /* format */
        58: .line 324
            goto 67
        end local 20 // int frameSize
        end local 19 // javax.sound.sampled.AudioFormat$Encoding encoding
        end local 18 // float sampleRate
        end local 17 // int sampleSizeInBits
        end local 16 // int channels
        59: .line 329
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.InputStream int java.io.DataInputStream int int javax.sound.sampled.AudioFormat int int int int int int int int int
      StackMap stack:
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        60: .line 330
            aload 3 /* dis */
            invokevirtual java.io.DataInputStream.readInt:()I
            pop
        61: .line 331
            iinc 15 /* chunkRead */ 8
        62: .line 344
            iload 14 /* chunkLen */
            iload 8 /* length */
            if_icmpge 65
        63: .line 345
            iload 14 /* chunkLen */
            iload 15 /* chunkRead */
            isub
            istore 5 /* dataLength */
        64: .line 346
            goto 66
        65: .line 348
      StackMap locals:
      StackMap stack:
            iload 8 /* length */
            iload 4 /* fileRead */
            iload 15 /* chunkRead */
            iadd
            isub
            istore 5 /* dataLength */
        66: .line 350
      StackMap locals:
      StackMap stack:
            iconst_1
            istore 12 /* ssndFound */
        67: .line 352
      StackMap locals:
      StackMap stack:
            iload 4 /* fileRead */
        68: .line 353
            iload 15 /* chunkRead */
            iadd
            istore 4 /* fileRead */
        69: .line 355
            iload 12 /* ssndFound */
            ifne 73
        70: .line 356
            iload 14 /* chunkLen */
            iload 15 /* chunkRead */
            isub
            istore 16 /* toSkip */
        start local 16 // int toSkip
        71: .line 357
            iload 16 /* toSkip */
            ifle 73
        72: .line 358
            iload 4 /* fileRead */
            aload 3 /* dis */
            iload 16 /* toSkip */
            invokevirtual java.io.DataInputStream.skipBytes:(I)I
            iadd
            istore 4 /* fileRead */
        end local 16 // int toSkip
        end local 15 // int chunkRead
        end local 14 // int chunkLen
        end local 13 // int chunkName
        73: .line 265
      StackMap locals:
      StackMap stack:
            iload 12 /* ssndFound */
            ifeq 24
        74: .line 363
            aload 6 /* format */
            ifnonnull 76
        75: .line 364
            new javax.sound.sampled.UnsupportedAudioFileException
            dup
            ldc "missing COMM chunk"
            invokespecial javax.sound.sampled.UnsupportedAudioFileException.<init>:(Ljava/lang/String;)V
            athrow
        76: .line 366
      StackMap locals:
      StackMap stack:
            iload 11 /* aifc */
            ifeq 77
            getstatic javax.sound.sampled.AudioFileFormat$Type.AIFC:Ljavax/sound/sampled/AudioFileFormat$Type;
            goto 78
      StackMap locals:
      StackMap stack:
        77: getstatic javax.sound.sampled.AudioFileFormat$Type.AIFF:Ljavax/sound/sampled/AudioFileFormat$Type;
      StackMap locals:
      StackMap stack: javax.sound.sampled.AudioFileFormat$Type
        78: astore 13 /* type */
        start local 13 // javax.sound.sampled.AudioFileFormat$Type type
        79: .line 368
            new com.sun.media.sound.AiffFileFormat
            dup
            aload 13 /* type */
            iload 10 /* totallength */
            aload 6 /* format */
            iload 5 /* dataLength */
            aload 6 /* format */
            invokevirtual javax.sound.sampled.AudioFormat.getFrameSize:()I
            idiv
            invokespecial com.sun.media.sound.AiffFileFormat.<init>:(Ljavax/sound/sampled/AudioFileFormat$Type;ILjavax/sound/sampled/AudioFormat;I)V
            areturn
        end local 13 // javax.sound.sampled.AudioFileFormat$Type type
        end local 12 // boolean ssndFound
        end local 11 // boolean aifc
        end local 10 // int totallength
        end local 9 // int iffType
        end local 8 // int length
        end local 7 // int magic
        end local 6 // javax.sound.sampled.AudioFormat format
        end local 5 // int dataLength
        end local 4 // int fileRead
        end local 3 // java.io.DataInputStream dis
        end local 2 // boolean doReset
        end local 1 // java.io.InputStream is
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   80     0              this  Lcom/sun/media/sound/AiffFileReader;
            0   80     1                is  Ljava/io/InputStream;
            0   80     2           doReset  Z
            1   80     3               dis  Ljava/io/DataInputStream;
            4   80     4          fileRead  I
            5   80     5        dataLength  I
            6   80     6            format  Ljavax/sound/sampled/AudioFormat;
            7   80     7             magic  I
           12   80     8            length  I
           13   80     9           iffType  I
           17   18    10       totallength  I
           19   80    10       totallength  I
           20   80    11              aifc  Z
           23   80    12         ssndFound  Z
           25   73    13         chunkName  I
           26   73    14          chunkLen  I
           28   73    15         chunkRead  I
           34   59    16          channels  I
           38   59    17  sampleSizeInBits  I
           41   59    18        sampleRate  F
           43   59    19          encoding  Ljavax/sound/sampled/AudioFormat$Encoding;
           45   53    20               enc  I
           54   59    20         frameSize  I
           71   73    16            toSkip  I
           79   80    13              type  Ljavax/sound/sampled/AudioFileFormat$Type;
    Exceptions:
      throws javax.sound.sampled.UnsupportedAudioFileException, java.io.IOException
    MethodParameters:
         Name  Flags
      is       
      doReset  

  private void write_ieee_extended(java.io.DataOutputStream, double);
    descriptor: (Ljava/io/DataOutputStream;D)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=7, args_size=3
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.DataOutputStream dos
        start local 2 // double f
         0: .line 381
            sipush 16398
            istore 4 /* exponent */
        start local 4 // int exponent
         1: .line 382
            dload 2 /* f */
            dstore 5 /* highMantissa */
        start local 5 // double highMantissa
         2: .line 386
            goto 5
         3: .line 387
      StackMap locals: int double
      StackMap stack:
            dload 5 /* highMantissa */
            ldc 2.0
            dmul
            dstore 5 /* highMantissa */
         4: .line 388
            iinc 4 /* exponent */ -1
         5: .line 386
      StackMap locals:
      StackMap stack:
            dload 5 /* highMantissa */
            ldc 44000.0
            dcmpg
            iflt 3
         6: .line 390
            aload 1 /* dos */
            iload 4 /* exponent */
            invokevirtual java.io.DataOutputStream.writeShort:(I)V
         7: .line 391
            aload 1 /* dos */
            dload 5 /* highMantissa */
            d2i
            bipush 16
            ishl
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         8: .line 392
            aload 1 /* dos */
            iconst_0
            invokevirtual java.io.DataOutputStream.writeInt:(I)V
         9: .line 393
            return
        end local 5 // double highMantissa
        end local 4 // int exponent
        end local 2 // double f
        end local 1 // java.io.DataOutputStream dos
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   10     0          this  Lcom/sun/media/sound/AiffFileReader;
            0   10     1           dos  Ljava/io/DataOutputStream;
            0   10     2             f  D
            1   10     4      exponent  I
            2   10     5  highMantissa  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dos   
      f     

  private double read_ieee_extended(java.io.DataInputStream);
    descriptor: (Ljava/io/DataInputStream;)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=15, args_size=2
        start local 0 // com.sun.media.sound.AiffFileReader this
        start local 1 // java.io.DataInputStream dis
         0: .line 405
            dconst_0
            dstore 2 /* f */
        start local 2 // double f
         1: .line 406
            iconst_0
            istore 4 /* expon */
        start local 4 // int expon
         2: .line 407
            lconst_0
            lstore 5 /* hiMant */
        start local 5 // long hiMant
         3: lconst_0
            lstore 7 /* loMant */
        start local 7 // long loMant
         4: .line 409
            ldc 3.4028234663852886E38
            dstore 13 /* HUGE */
        start local 13 // double HUGE
         5: .line 412
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            istore 4 /* expon */
         6: .line 414
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 9 /* t1 */
        start local 9 // long t1
         7: .line 415
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 11 /* t2 */
        start local 11 // long t2
         8: .line 416
            lload 9 /* t1 */
            bipush 16
            lshl
            lload 11 /* t2 */
            lor
            lstore 5 /* hiMant */
         9: .line 418
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 9 /* t1 */
        10: .line 419
            aload 1 /* dis */
            invokevirtual java.io.DataInputStream.readUnsignedShort:()I
            i2l
            lstore 11 /* t2 */
        11: .line 420
            lload 9 /* t1 */
            bipush 16
            lshl
            lload 11 /* t2 */
            lor
            lstore 7 /* loMant */
        12: .line 422
            iload 4 /* expon */
            ifne 15
            lload 5 /* hiMant */
            lconst_0
            lcmp
            ifne 15
            lload 7 /* loMant */
            lconst_0
            lcmp
            ifne 15
        13: .line 423
            dconst_0
            dstore 2 /* f */
        14: .line 424
            goto 22
        15: .line 425
      StackMap locals: com.sun.media.sound.AiffFileReader java.io.DataInputStream double int long long long long double
      StackMap stack:
            iload 4 /* expon */
            sipush 32767
            if_icmpne 17
        16: .line 426
            dload 13 /* HUGE */
            dstore 2 /* f */
            goto 22
        17: .line 428
      StackMap locals:
      StackMap stack:
            iinc 4 /* expon */ -16383
        18: .line 429
            iinc 4 /* expon */ -31
        19: .line 430
            lload 5 /* hiMant */
            l2d
            ldc 2.0
            iload 4 /* expon */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dmul
            dstore 2 /* f */
        20: .line 431
            iinc 4 /* expon */ -32
        21: .line 432
            dload 2 /* f */
            lload 7 /* loMant */
            l2d
            ldc 2.0
            iload 4 /* expon */
            i2d
            invokestatic java.lang.Math.pow:(DD)D
            dmul
            dadd
            dstore 2 /* f */
        22: .line 436
      StackMap locals:
      StackMap stack:
            dload 2 /* f */
            dreturn
        end local 13 // double HUGE
        end local 11 // long t2
        end local 9 // long t1
        end local 7 // long loMant
        end local 5 // long hiMant
        end local 4 // int expon
        end local 2 // double f
        end local 1 // java.io.DataInputStream dis
        end local 0 // com.sun.media.sound.AiffFileReader this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   23     0    this  Lcom/sun/media/sound/AiffFileReader;
            0   23     1     dis  Ljava/io/DataInputStream;
            1   23     2       f  D
            2   23     4   expon  I
            3   23     5  hiMant  J
            4   23     7  loMant  J
            7   23     9      t1  J
            8   23    11      t2  J
            5   23    13    HUGE  D
    Exceptions:
      throws java.io.IOException
    MethodParameters:
      Name  Flags
      dis   
}
SourceFile: "AiffFileReader.java"
InnerClasses:
  public Type = javax.sound.sampled.AudioFileFormat$Type of javax.sound.sampled.AudioFileFormat
  public Encoding = javax.sound.sampled.AudioFormat$Encoding of javax.sound.sampled.AudioFormat