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 285
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.isOpen:()Z
            ifne 5
         1: .line 286
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implOpen:()V
         2: .line 288
            aload 0 /* this */
            iconst_1
            invokevirtual com.sun.media.sound.AbstractMixer.setOpen:(Z)V
         3: .line 289
            iload 1 /* manual */
            ifeq 5
         4: .line 290
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
         5: .line 293
      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=3, locals=2, args_size=2
        start local 0 // com.sun.media.sound.AbstractMixer this
        start local 1 // javax.sound.sampled.Line line
         0: .line 306
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 307
            return
         2: .line 311
      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 312
            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 13
         4: .line 315
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.open:(Z)V
         5: .line 318
            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 320
            goto 13
         7: .line 322
      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 12
         8: .line 323
            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 13
         9: .line 326
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.open:(Z)V
        10: .line 329
            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 331
            goto 13
        12: .line 332
      StackMap locals:
      StackMap stack:
            getstatic com.sun.media.sound.Printer.err:Z
            ifeq 13
            new java.lang.StringBuilder
            dup
            ldc "Unknown line received for AbstractMixer.open(Line): "
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            aload 1 /* line */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokestatic com.sun.media.sound.Printer.err:(Ljava/lang/String;)V
        13: .line 335
      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   14     0  this  Lcom/sun/media/sound/AbstractMixer;
            0   14     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 344
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 345
            return
         2: .line 348
      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 349
            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 351
            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 352
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.close:()V
         6: .line 354
      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 361
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.isOpen:()Z
            ifeq 15
         1: .line 363
            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 364
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 6
         4: .line 365
      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 364
            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 369
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.getTargetLines:()[Ljavax/sound/sampled/Line;
            astore 1 /* localLines */
         8: .line 370
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         9: goto 12
        10: .line 371
      StackMap locals:
      StackMap stack:
            aload 1 /* localLines */
            iload 2 /* i */
            aaload
            invokeinterface javax.sound.sampled.Line.close:()V
        11: .line 370
            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 374
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implClose:()V
        14: .line 377
            aload 0 /* this */
            iconst_0
            invokevirtual com.sun.media.sound.AbstractMixer.setOpen:(Z)V
        end local 1 // javax.sound.sampled.Line[] localLines
        15: .line 379
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.manuallyOpened:Z
        16: .line 380
            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 387
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 388
            return
         2: .line 392
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.started:Z
            ifne 5
         3: .line 393
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implStart:()V
         4: .line 394
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.AbstractMixer.started:Z
         5: .line 396
      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 403
            aload 0 /* this */
            aload 1 /* line */
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifeq 2
         1: .line 404
            return
         2: .line 408
      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 409
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         4: goto 10
         5: .line 414
      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 415
            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 416
            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 417
            return
        end local 4 // com.sun.media.sound.AbstractDataLine sourceLine
         9: .line 409
      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 423
            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 424
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        13: goto 19
        14: .line 428
      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 429
            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 430
            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 431
            return
        end local 5 // com.sun.media.sound.AbstractDataLine targetLine
        18: .line 424
      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 437
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.AbstractMixer.started:Z
        21: .line 438
            aload 0 /* this */
            invokevirtual com.sun.media.sound.AbstractMixer.implStop:()V
        22: .line 439
            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 448
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 449
      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 450
            iconst_1
            ireturn
         4: .line 448
      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 454
            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 464
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         1: goto 5
         2: .line 465
      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 466
            iconst_1
            ireturn
         4: .line 464
      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 470
            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 479
            aload 1 /* info */
            ifnonnull 2
         1: .line 480
            aconst_null
            areturn
         2: .line 485
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         3: goto 7
         4: .line 486
      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 487
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.sourceLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            areturn
         6: .line 485
      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 491
            iconst_0
            istore 2 /* i */
        start local 2 // int i
         9: goto 13
        10: .line 492
      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 493
            aload 0 /* this */
            getfield com.sun.media.sound.AbstractMixer.targetLineInfo:[Ljavax/sound/sampled/Line$Info;
            iload 2 /* i */
            aaload
            areturn
        12: .line 491
      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 496
            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