abstract class com.sun.media.sound.AbstractMixer extends com.sun.media.sound.AbstractLine implements javax.sound.sampled.Mixer
  minor version: 0
  major version: 59
  flags: flags: (0x0420) ACC_SUPER, ACC_ABSTRACT
  this_class: com.sun.media.sound.AbstractMixer
  super_class: com.sun.media.sound.AbstractLine
{
  protected static final int PCM;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 0

  protected static final int ULAW;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  protected static final int ALAW;
    descriptor: I
    flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  private final javax.sound.sampled.Mixer$Info mixerInfo;
    descriptor: Ljavax/sound/sampled/Mixer$Info;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  protected javax.sound.sampled.Line$Info[] sourceLineInfo;
    descriptor: [Ljavax/sound/sampled/Line$Info;
    flags: (0x0004) ACC_PROTECTED

  protected javax.sound.sampled.Line$Info[] targetLineInfo;
    descriptor: [Ljavax/sound/sampled/Line$Info;
    flags: (0x0004) ACC_PROTECTED

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

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

  private final java.util.Vector<javax.sound.sampled.Line> sourceLines;
    descriptor: Ljava/util/Vector;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Vector<Ljavax/sound/sampled/Line;>;

  private final java.util.Vector<javax.sound.sampled.Line> targetLines;
    descriptor: Ljava/util/Vector;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: Ljava/util/Vector<Ljavax/sound/sampled/Line;>;

  protected void <init>(javax.sound.sampled.Mixer$Info, javax.sound.sampled.Control[], javax.sound.sampled.Line$Info[], javax.sound.sampled.Line$Info[]);
    descriptor: (Ljavax/sound/sampled/Mixer$Info;[Ljavax/sound/sampled/Control;[Ljavax/sound/sampled/Line$Info;[Ljavax/sound/sampled/Line$Info;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Mixer$Info mixerInfo
        start local 2 // javax.sound.sampled.Control[] controls
        start local 3 // javax.sound.sampled.Line$Info[] sourceLineInfo
        start local 4 // javax.sound.sampled.Line$Info[] targetLineInfo
         0: .line 102
            aload 0 /* this */
            new javax.sound.sampled.Line$Info
            dup
            ldc Ljavax/sound/sampled/Mixer;
            invokespecial javax.sound.sampled.Line$Info.<init>:(Ljava/lang/Class;)V
            aconst_null
            aload 2 /* controls */
            invokespecial com.sun.media.sound.AbstractLine.<init>:(Ljavax/sound/sampled/Line$Info;Lcom/sun/media/sound/AbstractMixer;[Ljavax/sound/sampled/Control;)V
         1: .line 70
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.started:Z
         2: .line 77
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
         3: .line 84
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
         4: .line 89
            aload 0 /* this */
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            putfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
         5: .line 105
            aload 0 /* this */
            aload 0 /* this */
            putfield com.sun.media.sound.AbstractMixer.mixer:Lcom/sun/media/sound/AbstractMixer;
         6: .line 106
            aload 2 /* controls */
            ifnonnull 8
         7: .line 107
            iconst_0
            anewarray javax.sound.sampled.Control
            astore 2 /* controls */
         8: .line 111
      StackMap locals: com.sun.media.sound.AbstractMixer javax.sound.sampled.Mixer$Info javax.sound.sampled.Control[] javax.sound.sampled.Line$Info[] javax.sound.sampled.Line$Info[]
      StackMap stack:
            aload 0 /* this */
            aload 1 /* mixerInfo */
            putfield com.sun.media.sound.AbstractMixer.mixerInfo:Ljavax/sound/sampled/Mixer$Info;
         9: .line 112
            aload 0 /* this */
            aload 3 /* sourceLineInfo */
            putfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
        10: .line 113
            aload 0 /* this */
            aload 4 /* targetLineInfo */
            putfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
        11: .line 114
            return
        end local 4 // javax.sound.sampled.Line$Info[] targetLineInfo
        end local 3 // javax.sound.sampled.Line$Info[] sourceLineInfo
        end local 2 // javax.sound.sampled.Control[] controls
        end local 1 // javax.sound.sampled.Mixer$Info mixerInfo
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   12     0            this  Lcom/sun/media/sound/AbstractMixer;
            0   12     1       mixerInfo  Ljavax/sound/sampled/Mixer$Info;
            0   12     2        controls  [Ljavax/sound/sampled/Control;
            0   12     3  sourceLineInfo  [Ljavax/sound/sampled/Line$Info;
            0   12     4  targetLineInfo  [Ljavax/sound/sampled/Line$Info;
    MethodParameters:
                Name  Flags
      mixerInfo       
      controls        
      sourceLineInfo  
      targetLineInfo  

  public final javax.sound.sampled.Mixer$Info getMixerInfo();
    descriptor: ()Ljavax/sound/sampled/Mixer$Info;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 120
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.mixerInfo:Ljavax/sound/sampled/Mixer$Info;
            areturn
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/sun/media/sound/AbstractMixer;

  public final javax.sound.sampled.Line$Info[] getSourceLineInfo();
    descriptor: ()[Ljavax/sound/sampled/Line$Info;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 125
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            anewarray javax.sound.sampled.Line$Info
            astore 1 /* localArray */
        start local 1 // javax.sound.sampled.Line$Info[] localArray
         1: .line 126
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iconst_0
            aload 1 /* localArray */
            iconst_0
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         2: .line 127
            aload 1 /* localArray */
            areturn
        end local 1 // javax.sound.sampled.Line$Info[] localArray
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/media/sound/AbstractMixer;
            1    3     1  localArray  [Ljavax/sound/sampled/Line$Info;

  public final javax.sound.sampled.Line$Info[] getTargetLineInfo();
    descriptor: ()[Ljavax/sound/sampled/Line$Info;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=5, locals=2, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 132
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            anewarray javax.sound.sampled.Line$Info
            astore 1 /* localArray */
        start local 1 // javax.sound.sampled.Line$Info[] localArray
         1: .line 133
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iconst_0
            aload 1 /* localArray */
            iconst_0
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            invokestatic java.lang.System.arraycopy:(Ljava/lang/Object;ILjava/lang/Object;II)V
         2: .line 134
            aload 1 /* localArray */
            areturn
        end local 1 // javax.sound.sampled.Line$Info[] localArray
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/media/sound/AbstractMixer;
            1    3     1  localArray  [Ljavax/sound/sampled/Line$Info;

  public final javax.sound.sampled.Line$Info[] getSourceLineInfo(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)[Ljavax/sound/sampled/Line$Info;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 141
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 3 /* vec */
        start local 3 // java.util.Vector vec
         1: .line 143
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 145
      StackMap locals: int java.util.Vector
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 5
         4: .line 146
            aload 3 /* vec */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         5: .line 143
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 3
         7: .line 150
            aload 3 /* vec */
            invokevirtual java.util.Vector.size:()I
            anewarray javax.sound.sampled.Line$Info
            astore 4 /* returnedArray */
        start local 4 // javax.sound.sampled.Line$Info[] returnedArray
         8: .line 151
            iconst_0
            istore 2 /* i */
            goto 11
         9: .line 152
      StackMap locals: javax.sound.sampled.Line$Info[]
      StackMap stack:
            aload 4 /* returnedArray */
            iload 2 /* i */
            aload 3 /* vec */
            iload 2 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.sound.sampled.Line$Info
            aastore
        10: .line 151
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 2 /* i */
            aload 4 /* returnedArray */
            arraylength
            if_icmplt 9
        12: .line 155
            aload 4 /* returnedArray */
            areturn
        end local 4 // javax.sound.sampled.Line$Info[] returnedArray
        end local 3 // java.util.Vector vec
        end local 2 // int i
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lcom/sun/media/sound/AbstractMixer;
            0   13     1           info  Ljavax/sound/sampled/Line$Info;
            2   13     2              i  I
            1   13     3            vec  Ljava/util/Vector<Ljavax/sound/sampled/Line$Info;>;
            8   13     4  returnedArray  [Ljavax/sound/sampled/Line$Info;
    MethodParameters:
      Name  Flags
      info  

  public final javax.sound.sampled.Line$Info[] getTargetLineInfo(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)[Ljavax/sound/sampled/Line$Info;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 162
            new java.util.Vector
            dup
            invokespecial java.util.Vector.<init>:()V
            astore 3 /* vec */
        start local 3 // java.util.Vector vec
         1: .line 164
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         2: goto 6
         3: .line 166
      StackMap locals: int java.util.Vector
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 5
         4: .line 167
            aload 3 /* vec */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         5: .line 164
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 3
         7: .line 171
            aload 3 /* vec */
            invokevirtual java.util.Vector.size:()I
            anewarray javax.sound.sampled.Line$Info
            astore 4 /* returnedArray */
        start local 4 // javax.sound.sampled.Line$Info[] returnedArray
         8: .line 172
            iconst_0
            istore 2 /* i */
            goto 11
         9: .line 173
      StackMap locals: javax.sound.sampled.Line$Info[]
      StackMap stack:
            aload 4 /* returnedArray */
            iload 2 /* i */
            aload 3 /* vec */
            iload 2 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.sound.sampled.Line$Info
            aastore
        10: .line 172
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        11: iload 2 /* i */
            aload 4 /* returnedArray */
            arraylength
            if_icmplt 9
        12: .line 176
            aload 4 /* returnedArray */
            areturn
        end local 4 // javax.sound.sampled.Line$Info[] returnedArray
        end local 3 // java.util.Vector vec
        end local 2 // int i
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   13     0           this  Lcom/sun/media/sound/AbstractMixer;
            0   13     1           info  Ljavax/sound/sampled/Line$Info;
            2   13     2              i  I
            1   13     3            vec  Ljava/util/Vector<Ljavax/sound/sampled/Line$Info;>;
            8   13     4  returnedArray  [Ljavax/sound/sampled/Line$Info;
    MethodParameters:
      Name  Flags
      info  

  public final boolean isLineSupported(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 184
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 186
      StackMap locals: int
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 4
         3: .line 187
            iconst_1
            ireturn
         4: .line 184
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 2
         6: .line 191
            iconst_0
            istore 2 /* i */
            goto 10
         7: .line 193
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 9
         8: .line 194
            iconst_1
            ireturn
         9: .line 191
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 7
        11: .line 198
            iconst_0
            ireturn
        end local 2 // int i
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/sun/media/sound/AbstractMixer;
            0   12     1  info  Ljavax/sound/sampled/Line$Info;
            1   12     2     i  I
    MethodParameters:
      Name  Flags
      info  

  public abstract javax.sound.sampled.Line getLine(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)Ljavax/sound/sampled/Line;
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    Exceptions:
      throws javax.sound.sampled.LineUnavailableException
    MethodParameters:
      Name  Flags
      info  

  public abstract int getMaxLines(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)I
    flags: (0x0401) ACC_PUBLIC, ACC_ABSTRACT
    MethodParameters:
      Name  Flags
      info  

  protected abstract void implOpen();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT
    Exceptions:
      throws javax.sound.sampled.LineUnavailableException

  protected abstract void implStart();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract void implStop();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  protected abstract void implClose();
    descriptor: ()V
    flags: (0x0404) ACC_PROTECTED, ACC_ABSTRACT

  public final javax.sound.sampled.Line[] getSourceLines();
    descriptor: ()[Ljavax/sound/sampled/Line;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 217
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            dup
            astore 2
            monitorenter
         1: .line 219
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            anewarray javax.sound.sampled.Line
            astore 1 /* localLines */
        start local 1 // javax.sound.sampled.Line[] localLines
         2: .line 221
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 222
      StackMap locals: javax.sound.sampled.Line[] java.util.Vector int
      StackMap stack:
            aload 1 /* localLines */
            iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            iload 3 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.sound.sampled.Line
            aastore
         5: .line 221
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 1 /* localLines */
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 217
            aload 2
            monitorexit
         8: goto 11
        end local 1 // javax.sound.sampled.Line[] localLines
      StackMap locals: com.sun.media.sound.AbstractMixer top java.util.Vector
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        start local 1 // javax.sound.sampled.Line[] localLines
        11: .line 226
      StackMap locals: com.sun.media.sound.AbstractMixer javax.sound.sampled.Line[]
      StackMap stack:
            aload 1 /* localLines */
            areturn
        end local 1 // javax.sound.sampled.Line[] localLines
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lcom/sun/media/sound/AbstractMixer;
            2    9     1  localLines  [Ljavax/sound/sampled/Line;
           11   12     1  localLines  [Ljavax/sound/sampled/Line;
            3    7     3           i  I
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any

  public final javax.sound.sampled.Line[] getTargetLines();
    descriptor: ()[Ljavax/sound/sampled/Line;
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=4, locals=4, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 234
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            dup
            astore 2
            monitorenter
         1: .line 236
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.size:()I
            anewarray javax.sound.sampled.Line
            astore 1 /* localLines */
        start local 1 // javax.sound.sampled.Line[] localLines
         2: .line 238
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         3: goto 6
         4: .line 239
      StackMap locals: javax.sound.sampled.Line[] java.util.Vector int
      StackMap stack:
            aload 1 /* localLines */
            iload 3 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            iload 3 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast javax.sound.sampled.Line
            aastore
         5: .line 238
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 3 /* i */
            aload 1 /* localLines */
            arraylength
            if_icmplt 4
        end local 3 // int i
         7: .line 234
            aload 2
            monitorexit
         8: goto 11
        end local 1 // javax.sound.sampled.Line[] localLines
      StackMap locals: com.sun.media.sound.AbstractMixer top java.util.Vector
      StackMap stack: java.lang.Throwable
         9: aload 2
            monitorexit
        10: athrow
        start local 1 // javax.sound.sampled.Line[] localLines
        11: .line 243
      StackMap locals: com.sun.media.sound.AbstractMixer javax.sound.sampled.Line[]
      StackMap stack:
            aload 1 /* localLines */
            areturn
        end local 1 // javax.sound.sampled.Line[] localLines
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lcom/sun/media/sound/AbstractMixer;
            2    9     1  localLines  [Ljavax/sound/sampled/Line;
           11   12     1  localLines  [Ljavax/sound/sampled/Line;
            3    7     3           i  I
      Exception table:
        from    to  target  type
           1     8       9  any
           9    10       9  any

  public final void synchronize(javax.sound.sampled.Line[], boolean);
    descriptor: ([Ljavax/sound/sampled/Line;Z)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line[] lines
        start local 2 // boolean maintainSync
         0: .line 251
            new java.lang.IllegalArgumentException
            dup
            ldc "Synchronization not supported by this mixer."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 2 // boolean maintainSync
        end local 1 // javax.sound.sampled.Line[] lines
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/media/sound/AbstractMixer;
            0    1     1         lines  [Ljavax/sound/sampled/Line;
            0    1     2  maintainSync  Z
    MethodParameters:
              Name  Flags
      lines         
      maintainSync  

  public final void unsynchronize(javax.sound.sampled.Line[]);
    descriptor: ([Ljavax/sound/sampled/Line;)V
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line[] lines
         0: .line 259
            new java.lang.IllegalArgumentException
            dup
            ldc "Synchronization not supported by this mixer."
            invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
            athrow
        end local 1 // javax.sound.sampled.Line[] lines
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    1     0   this  Lcom/sun/media/sound/AbstractMixer;
            0    1     1  lines  [Ljavax/sound/sampled/Line;
    MethodParameters:
       Name  Flags
      lines  

  public final boolean isSynchronizationSupported(javax.sound.sampled.Line[], boolean);
    descriptor: ([Ljavax/sound/sampled/Line;Z)Z
    flags: (0x0011) ACC_PUBLIC, ACC_FINAL
    Code:
      stack=1, locals=3, args_size=3
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line[] lines
        start local 2 // boolean maintainSync
         0: .line 268
            iconst_0
            ireturn
        end local 2 // boolean maintainSync
        end local 1 // javax.sound.sampled.Line[] lines
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    1     0          this  Lcom/sun/media/sound/AbstractMixer;
            0    1     1         lines  [Ljavax/sound/sampled/Line;
            0    1     2  maintainSync  Z
    MethodParameters:
              Name  Flags
      lines         
      maintainSync  

  public final synchronized void open();
    descriptor: ()V
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 278
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.media.sound.AbstractMixer.open:(Z)V
         1: .line 279
            return
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/sun/media/sound/AbstractMixer;
    Exceptions:
      throws javax.sound.sampled.LineUnavailableException

  final synchronized void open(boolean);
    descriptor: (Z)V
    flags: (0x0030) ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // boolean manual
         0: .line 286
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.isOpen:()Z
            ifne 5
         1: .line 287
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implOpen:()V
         2: .line 289
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.media.sound.AbstractMixer.setOpen:(Z)V
         3: .line 290
            iload 1 /* manual */
            ifeq 5
         4: .line 291
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
         5: .line 296
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean manual
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    6     0    this  Lcom/sun/media/sound/AbstractMixer;
            0    6     1  manual  Z
    Exceptions:
      throws javax.sound.sampled.LineUnavailableException
    MethodParameters:
        Name  Flags
      manual  

  final synchronized void open(javax.sound.sampled.Line);
    descriptor: (Ljavax/sound/sampled/Line;)V
    flags: (0x0030) ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line line
         0: .line 312
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 314
            return
         2: .line 318
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* line */
            invokeinterface javax.sound.sampled.Line.getLineInfo:()Ljavax/sound/sampled/Line$Info;
            invokevirtual com.sun.media.sound.AbstractMixer.isSourceLine:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 7
         3: .line 319
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifne 11
         4: .line 322
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.open:(Z)V
         5: .line 325
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
         6: .line 327
            goto 11
         7: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* line */
            invokeinterface javax.sound.sampled.Line.getLineInfo:()Ljavax/sound/sampled/Line$Info;
            invokevirtual com.sun.media.sound.AbstractMixer.isTargetLine:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 11
         8: .line 330
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.contains:(Ljava/lang/Object;)Z
            ifne 11
         9: .line 333
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.open:(Z)V
        10: .line 336
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.addElement:(Ljava/lang/Object;)V
        11: .line 344
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.sound.sampled.Line line
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lcom/sun/media/sound/AbstractMixer;
            0   12     1  line  Ljavax/sound/sampled/Line;
    Exceptions:
      throws javax.sound.sampled.LineUnavailableException
    MethodParameters:
      Name  Flags
      line  

  final synchronized void close(javax.sound.sampled.Line);
    descriptor: (Ljavax/sound/sampled/Line;)V
    flags: (0x0030) ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line line
         0: .line 356
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 358
            return
         2: .line 361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         3: .line 362
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            aload 1 /* line */
            invokevirtual java.util.Vector.removeElement:(Ljava/lang/Object;)Z
            pop
         4: .line 368
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 6
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.isEmpty:()Z
            ifeq 6
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
            ifne 6
         5: .line 370
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.close:()V
         6: .line 374
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.sound.sampled.Line line
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/media/sound/AbstractMixer;
            0    7     1  line  Ljavax/sound/sampled/Line;
    MethodParameters:
      Name  Flags
      line  

  public final synchronized void close();
    descriptor: ()V
    flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=3, args_size=1
        start local 0 // com.sun.media.sound.AbstractMixer this
         0: .line 382
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.isOpen:()Z
            ifeq 15
         1: .line 384
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.getSourceLines:()[Ljavax/sound/sampled/Line;
            astore 1 /* localLines */
        start local 1 // javax.sound.sampled.Line[] localLines
         2: .line 385
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 386
      StackMap locals: javax.sound.sampled.Line[] int
      StackMap stack:
            aload 1 /* localLines */
            iload 2 /* i */
            aaload
            invokeinterface javax.sound.sampled.Line.close:()V
         5: .line 385
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         6: iload 2 /* i */
            aload 1 /* localLines */
            arraylength
            if_icmplt 4
        end local 2 // int i
         7: .line 390
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.getTargetLines:()[Ljavax/sound/sampled/Line;
            astore 1 /* localLines */
         8: .line 391
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         9: goto 12
        10: .line 392
      StackMap locals:
      StackMap stack:
            aload 1 /* localLines */
            iload 2 /* i */
            aaload
            invokeinterface javax.sound.sampled.Line.close:()V
        11: .line 391
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 2 /* i */
            aload 1 /* localLines */
            arraylength
            if_icmplt 10
        end local 2 // int i
        13: .line 395
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implClose:()V
        14: .line 398
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.setOpen:(Z)V
        end local 1 // javax.sound.sampled.Line[] localLines
        15: .line 400
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
        16: .line 402
            return
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   17     0        this  Lcom/sun/media/sound/AbstractMixer;
            2   15     1  localLines  [Ljavax/sound/sampled/Line;
            3    7     2           i  I
            9   13     2           i  I

  final synchronized void start(javax.sound.sampled.Line);
    descriptor: (Ljavax/sound/sampled/Line;)V
    flags: (0x0030) ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line line
         0: .line 412
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 414
            return
         2: .line 418
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.started:Z
            ifne 5
         3: .line 420
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implStart:()V
         4: .line 421
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.AbstractMixer.started:Z
         5: .line 425
      StackMap locals:
      StackMap stack:
            return
        end local 1 // javax.sound.sampled.Line line
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/media/sound/AbstractMixer;
            0    6     1  line  Ljavax/sound/sampled/Line;
    MethodParameters:
      Name  Flags
      line  

  final synchronized void stop(javax.sound.sampled.Line);
    descriptor: (Ljavax/sound/sampled/Line;)V
    flags: (0x0030) ACC_FINAL, ACC_SYNCHRONIZED
    Code:
      stack=2, locals=6, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line line
         0: .line 435
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 437
            return
         2: .line 441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.clone:()Ljava/lang/Object;
            checkcast java.util.Vector
            astore 2 /* localSourceLines */
        start local 2 // java.util.Vector localSourceLines
         3: .line 442
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 10
         5: .line 447
      StackMap locals: java.util.Vector int
      StackMap stack:
            aload 2 /* localSourceLines */
            iload 3 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            instanceof com.sun.media.sound.AbstractDataLine
            ifeq 9
         6: .line 448
            aload 2 /* localSourceLines */
            iload 3 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast com.sun.media.sound.AbstractDataLine
            astore 4 /* sourceLine */
        start local 4 // com.sun.media.sound.AbstractDataLine sourceLine
         7: .line 449
            aload 4 /* sourceLine */
            invokevirtual com.sun.media.sound.AbstractDataLine.isStartedRunning:()Z
            ifeq 9
            aload 4 /* sourceLine */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 451
            return
        end local 4 // com.sun.media.sound.AbstractDataLine sourceLine
         9: .line 442
      StackMap locals:
      StackMap stack:
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        10: iload 3 /* i */
            aload 2 /* localSourceLines */
            invokevirtual java.util.Vector.size:()I
            if_icmplt 5
        end local 3 // int i
        11: .line 457
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLines:Ljava/util/Vector;
            invokevirtual java.util.Vector.clone:()Ljava/lang/Object;
            checkcast java.util.Vector
            astore 3 /* localTargetLines */
        start local 3 // java.util.Vector localTargetLines
        12: .line 458
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        13: goto 19
        14: .line 462
      StackMap locals: com.sun.media.sound.AbstractMixer javax.sound.sampled.Line java.util.Vector java.util.Vector int
      StackMap stack:
            aload 3 /* localTargetLines */
            iload 4 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            instanceof com.sun.media.sound.AbstractDataLine
            ifeq 18
        15: .line 463
            aload 3 /* localTargetLines */
            iload 4 /* i */
            invokevirtual java.util.Vector.elementAt:(I)Ljava/lang/Object;
            checkcast com.sun.media.sound.AbstractDataLine
            astore 5 /* targetLine */
        start local 5 // com.sun.media.sound.AbstractDataLine targetLine
        16: .line 464
            aload 5 /* targetLine */
            invokevirtual com.sun.media.sound.AbstractDataLine.isStartedRunning:()Z
            ifeq 18
            aload 5 /* targetLine */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 18
        17: .line 466
            return
        end local 5 // com.sun.media.sound.AbstractDataLine targetLine
        18: .line 458
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 4 /* i */
            aload 3 /* localTargetLines */
            invokevirtual java.util.Vector.size:()I
            if_icmplt 14
        end local 4 // int i
        20: .line 473
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.started:Z
        21: .line 474
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implStop:()V
        22: .line 477
            return
        end local 3 // java.util.Vector localTargetLines
        end local 2 // java.util.Vector localSourceLines
        end local 1 // javax.sound.sampled.Line line
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   23     0              this  Lcom/sun/media/sound/AbstractMixer;
            0   23     1              line  Ljavax/sound/sampled/Line;
            3   23     2  localSourceLines  Ljava/util/Vector<Ljavax/sound/sampled/Line;>;
            4   11     3                 i  I
            7    9     4        sourceLine  Lcom/sun/media/sound/AbstractDataLine;
           12   23     3  localTargetLines  Ljava/util/Vector<Ljavax/sound/sampled/Line;>;
           13   20     4                 i  I
           16   18     5        targetLine  Lcom/sun/media/sound/AbstractDataLine;
    MethodParameters:
      Name  Flags
      line  

  final boolean isSourceLine(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 486
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 487
      StackMap locals: int
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 4
         3: .line 488
            iconst_1
            ireturn
         4: .line 486
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 492
            iconst_0
            ireturn
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/media/sound/AbstractMixer;
            0    7     1  info  Ljavax/sound/sampled/Line$Info;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      info  

  final boolean isTargetLine(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 502
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 503
      StackMap locals: int
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 4
         3: .line 504
            iconst_1
            ireturn
         4: .line 502
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         5: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 2
        end local 2 // int i
         6: .line 508
            iconst_0
            ireturn
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    7     0  this  Lcom/sun/media/sound/AbstractMixer;
            0    7     1  info  Ljavax/sound/sampled/Line$Info;
            1    6     2     i  I
    MethodParameters:
      Name  Flags
      info  

  final javax.sound.sampled.Line$Info getLineInfo(javax.sound.sampled.Line$Info);
    descriptor: (Ljavax/sound/sampled/Line$Info;)Ljavax/sound/sampled/Line$Info;
    flags: (0x0010) ACC_FINAL
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line$Info info
         0: .line 517
            aload 1 /* info */
            ifnonnull 2
         1: .line 518
            aconst_null
            areturn
         2: .line 523
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 7
         4: .line 524
      StackMap locals: int
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 6
         5: .line 525
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            areturn
         6: .line 523
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
         7: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 4
        end local 2 // int i
         8: .line 529
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         9: goto 13
        10: .line 530
      StackMap locals:
      StackMap stack:
            aload 1 /* info */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            invokevirtual javax.sound.sampled.Line$Info.matches:(Ljavax/sound/sampled/Line$Info;)Z
            ifeq 12
        11: .line 531
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            areturn
        12: .line 529
      StackMap locals:
      StackMap stack:
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            arraylength
            if_icmplt 10
        end local 2 // int i
        14: .line 534
            aconst_null
            areturn
        end local 1 // javax.sound.sampled.Line$Info info
        end local 0 // com.sun.media.sound.AbstractMixer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lcom/sun/media/sound/AbstractMixer;
            0   15     1  info  Ljavax/sound/sampled/Line$Info;
            3    8     2     i  I
            9   14     2     i  I
    MethodParameters:
      Name  Flags
      info  
}
SourceFile: "AbstractMixer.java"
InnerClasses:
  public Info = javax.sound.sampled.Line$Info of javax.sound.sampled.Line
  public Info = javax.sound.sampled.Mixer$Info of javax.sound.sampled.Mixer