public final class com.sun.media.sound.SoftVoice extends javax.sound.midi.VoiceStatus
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: com.sun.media.sound.SoftVoice
  super_class: javax.sound.midi.VoiceStatus
{
  public int exclusiveClass;
    descriptor: I
    flags: (0x0001) ACC_PUBLIC

  public boolean releaseTriggered;
    descriptor: Z
    flags: (0x0001) ACC_PUBLIC

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

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

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

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

  com.sun.media.sound.ModelChannelMixer channelmixer;
    descriptor: Lcom/sun/media/sound/ModelChannelMixer;
    flags: (0x0000) 

  double tunedKey;
    descriptor: D
    flags: (0x0000) 

  com.sun.media.sound.SoftTuning tuning;
    descriptor: Lcom/sun/media/sound/SoftTuning;
    flags: (0x0000) 

  com.sun.media.sound.SoftChannel stealer_channel;
    descriptor: Lcom/sun/media/sound/SoftChannel;
    flags: (0x0000) 

  com.sun.media.sound.ModelConnectionBlock[] stealer_extendedConnectionBlocks;
    descriptor: [Lcom/sun/media/sound/ModelConnectionBlock;
    flags: (0x0000) 

  com.sun.media.sound.SoftPerformer stealer_performer;
    descriptor: Lcom/sun/media/sound/SoftPerformer;
    flags: (0x0000) 

  com.sun.media.sound.ModelChannelMixer stealer_channelmixer;
    descriptor: Lcom/sun/media/sound/ModelChannelMixer;
    flags: (0x0000) 

  int stealer_voiceID;
    descriptor: I
    flags: (0x0000) 

  int stealer_noteNumber;
    descriptor: I
    flags: (0x0000) 

  int stealer_velocity;
    descriptor: I
    flags: (0x0000) 

  boolean stealer_releaseTriggered;
    descriptor: Z
    flags: (0x0000) 

  int voiceID;
    descriptor: I
    flags: (0x0000) 

  boolean sustain;
    descriptor: Z
    flags: (0x0000) 

  boolean sostenuto;
    descriptor: Z
    flags: (0x0000) 

  boolean portamento;
    descriptor: Z
    flags: (0x0000) 

  private final com.sun.media.sound.SoftFilter filter_left;
    descriptor: Lcom/sun/media/sound/SoftFilter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftFilter filter_right;
    descriptor: Lcom/sun/media/sound/SoftFilter;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftProcess eg;
    descriptor: Lcom/sun/media/sound/SoftProcess;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftProcess lfo;
    descriptor: Lcom/sun/media/sound/SoftProcess;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  java.util.Map<java.lang.String, com.sun.media.sound.SoftControl> objects;
    descriptor: Ljava/util/Map;
    flags: (0x0000) 
    Signature: Ljava/util/Map<Ljava/lang/String;Lcom/sun/media/sound/SoftControl;>;

  com.sun.media.sound.SoftSynthesizer synthesizer;
    descriptor: Lcom/sun/media/sound/SoftSynthesizer;
    flags: (0x0000) 

  com.sun.media.sound.SoftInstrument instrument;
    descriptor: Lcom/sun/media/sound/SoftInstrument;
    flags: (0x0000) 

  com.sun.media.sound.SoftPerformer performer;
    descriptor: Lcom/sun/media/sound/SoftPerformer;
    flags: (0x0000) 

  com.sun.media.sound.SoftChannel softchannel;
    descriptor: Lcom/sun/media/sound/SoftChannel;
    flags: (0x0000) 

  boolean on;
    descriptor: Z
    flags: (0x0000) 

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

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

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

  private float osc_attenuation;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private com.sun.media.sound.ModelOscillatorStream osc_stream;
    descriptor: Lcom/sun/media/sound/ModelOscillatorStream;
    flags: (0x0002) ACC_PRIVATE

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

  private float[][] osc_buff;
    descriptor: [[F
    flags: (0x0002) ACC_PRIVATE

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

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

  private float out_mixer_left;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float out_mixer_right;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float out_mixer_effect1;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float out_mixer_effect2;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float last_out_mixer_left;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float last_out_mixer_right;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float last_out_mixer_effect1;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float last_out_mixer_effect2;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  com.sun.media.sound.ModelConnectionBlock[] extendedConnectionBlocks;
    descriptor: [Lcom/sun/media/sound/ModelConnectionBlock;
    flags: (0x0000) 

  private com.sun.media.sound.ModelConnectionBlock[] connections;
    descriptor: [Lcom/sun/media/sound/ModelConnectionBlock;
    flags: (0x0002) ACC_PRIVATE

  private double[] connections_last;
    descriptor: [D
    flags: (0x0002) ACC_PRIVATE

  private double[][][] connections_src;
    descriptor: [[[D
    flags: (0x0002) ACC_PRIVATE

  private int[][] connections_src_kc;
    descriptor: [[I
    flags: (0x0002) ACC_PRIVATE

  private double[][] connections_dst;
    descriptor: [[D
    flags: (0x0002) ACC_PRIVATE

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

  private float lastMuteValue;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  private float lastSoloMuteValue;
    descriptor: F
    flags: (0x0002) ACC_PRIVATE

  double[] co_noteon_keynumber;
    descriptor: [D
    flags: (0x0000) 

  double[] co_noteon_velocity;
    descriptor: [D
    flags: (0x0000) 

  double[] co_noteon_on;
    descriptor: [D
    flags: (0x0000) 

  private final com.sun.media.sound.SoftControl co_noteon;
    descriptor: Lcom/sun/media/sound/SoftControl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_active;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_gain;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_pan;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_balance;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_reverb;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_mixer_chorus;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftControl co_mixer;
    descriptor: Lcom/sun/media/sound/SoftControl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_osc_pitch;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftControl co_osc;
    descriptor: Lcom/sun/media/sound/SoftControl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_filter_freq;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_filter_type;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final double[] co_filter_q;
    descriptor: [D
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.sun.media.sound.SoftControl co_filter;
    descriptor: Lcom/sun/media/sound/SoftControl;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  com.sun.media.sound.SoftResamplerStreamer resampler;
    descriptor: Lcom/sun/media/sound/SoftResamplerStreamer;
    flags: (0x0000) 

  private final int nrofchannels;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(com.sun.media.sound.SoftSynthesizer);
    descriptor: (Lcom/sun/media/sound/SoftSynthesizer;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.SoftSynthesizer synth
         0: .line 186
            aload 0 /* this */
            invokespecial javax.sound.midi.VoiceStatus.<init>:()V
         1: .line 41
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.exclusiveClass:I
         2: .line 42
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.releaseTriggered:Z
         3: .line 43
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.noteOn_noteNumber:I
         4: .line 44
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.noteOn_velocity:I
         5: .line 45
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.noteOff_velocity:I
         6: .line 46
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.delay:I
         7: .line 47
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.channelmixer:Lcom/sun/media/sound/ModelChannelMixer;
         8: .line 48
            aload 0 /* this */
            dconst_0
            putfield com.sun.media.sound.SoftVoice.tunedKey:D
         9: .line 49
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.tuning:Lcom/sun/media/sound/SoftTuning;
        10: .line 50
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_channel:Lcom/sun/media/sound/SoftChannel;
        11: .line 51
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
        12: .line 52
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_performer:Lcom/sun/media/sound/SoftPerformer;
        13: .line 53
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_channelmixer:Lcom/sun/media/sound/ModelChannelMixer;
        14: .line 54
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.sound.SoftVoice.stealer_voiceID:I
        15: .line 55
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_noteNumber:I
        16: .line 56
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_velocity:I
        17: .line 57
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_releaseTriggered:Z
        18: .line 58
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.sound.SoftVoice.voiceID:I
        19: .line 59
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.sustain:Z
        20: .line 60
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.sostenuto:Z
        21: .line 61
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.portamento:Z
        22: .line 64
            aload 0 /* this */
            new com.sun.media.sound.SoftEnvelopeGenerator
            dup
            invokespecial com.sun.media.sound.SoftEnvelopeGenerator.<init>:()V
            putfield com.sun.media.sound.SoftVoice.eg:Lcom/sun/media/sound/SoftProcess;
        23: .line 65
            aload 0 /* this */
            new com.sun.media.sound.SoftLowFrequencyOscillator
            dup
            invokespecial com.sun.media.sound.SoftLowFrequencyOscillator.<init>:()V
            putfield com.sun.media.sound.SoftVoice.lfo:Lcom/sun/media/sound/SoftProcess;
        24: .line 66
            aload 0 /* this */
        25: .line 67
            new java.util.HashMap
            dup
            invokespecial java.util.HashMap.<init>:()V
            putfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
        26: .line 71
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
        27: .line 72
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.on:Z
        28: .line 73
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.audiostarted:Z
        29: .line 74
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.started:Z
        30: .line 75
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stopping:Z
        31: .line 76
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.osc_attenuation:F
        32: .line 79
            aload 0 /* this */
            iconst_2
            anewarray float[]
            putfield com.sun.media.sound.SoftVoice.osc_buff:[[F
        33: .line 80
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.osc_stream_off_transmitted:Z
        34: .line 81
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_end:Z
        35: .line 82
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_left:F
        36: .line 83
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_right:F
        37: .line 84
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
        38: .line 85
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
        39: .line 86
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
        40: .line 87
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
        41: .line 88
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
        42: .line 89
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
        43: .line 90
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
        44: .line 93
            aload 0 /* this */
            bipush 50
            newarray 7
            putfield com.sun.media.sound.SoftVoice.connections_last:[D
        45: .line 95
            aload 0 /* this */
            bipush 50
            iconst_3
            multianewarray [[[D 2
            putfield com.sun.media.sound.SoftVoice.connections_src:[[[D
        46: .line 97
            aload 0 /* this */
            bipush 50
            iconst_3
            multianewarray [[I 2
            putfield com.sun.media.sound.SoftVoice.connections_src_kc:[[I
        47: .line 99
            aload 0 /* this */
            bipush 50
            anewarray double[]
            putfield com.sun.media.sound.SoftVoice.connections_dst:[[D
        48: .line 100
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.soundoff:Z
        49: .line 101
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.lastMuteValue:F
        50: .line 102
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.lastSoloMuteValue:F
        51: .line 103
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
        52: .line 104
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_noteon_velocity:[D
        53: .line 105
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
        54: .line 106
            aload 0 /* this */
            new com.sun.media.sound.SoftVoice$1
            dup
            aload 0 /* this */
            invokespecial com.sun.media.sound.SoftVoice$1.<init>:(Lcom/sun/media/sound/SoftVoice;)V
            putfield com.sun.media.sound.SoftVoice.co_noteon:Lcom/sun/media/sound/SoftControl;
        55: .line 122
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_active:[D
        56: .line 123
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
        57: .line 124
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_pan:[D
        58: .line 125
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_balance:[D
        59: .line 126
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_reverb:[D
        60: .line 127
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_mixer_chorus:[D
        61: .line 128
            aload 0 /* this */
            new com.sun.media.sound.SoftVoice$2
            dup
            aload 0 /* this */
            invokespecial com.sun.media.sound.SoftVoice$2.<init>:(Lcom/sun/media/sound/SoftVoice;)V
            putfield com.sun.media.sound.SoftVoice.co_mixer:Lcom/sun/media/sound/SoftControl;
        62: .line 153
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_osc_pitch:[D
        63: .line 154
            aload 0 /* this */
            new com.sun.media.sound.SoftVoice$3
            dup
            aload 0 /* this */
            invokespecial com.sun.media.sound.SoftVoice$3.<init>:(Lcom/sun/media/sound/SoftVoice;)V
            putfield com.sun.media.sound.SoftVoice.co_osc:Lcom/sun/media/sound/SoftControl;
        64: .line 164
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_filter_freq:[D
        65: .line 165
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_filter_type:[D
        66: .line 166
            aload 0 /* this */
            iconst_1
            newarray 7
            putfield com.sun.media.sound.SoftVoice.co_filter_q:[D
        67: .line 167
            aload 0 /* this */
            new com.sun.media.sound.SoftVoice$4
            dup
            aload 0 /* this */
            invokespecial com.sun.media.sound.SoftVoice$4.<init>:(Lcom/sun/media/sound/SoftVoice;)V
            putfield com.sun.media.sound.SoftVoice.co_filter:Lcom/sun/media/sound/SoftControl;
        68: .line 187
            aload 0 /* this */
            aload 1 /* synth */
            putfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
        69: .line 188
            aload 0 /* this */
            new com.sun.media.sound.SoftFilter
            dup
            aload 1 /* synth */
            invokevirtual com.sun.media.sound.SoftSynthesizer.getFormat:()Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
            invokespecial com.sun.media.sound.SoftFilter.<init>:(F)V
            putfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
        70: .line 189
            aload 0 /* this */
            new com.sun.media.sound.SoftFilter
            dup
            aload 1 /* synth */
            invokevirtual com.sun.media.sound.SoftSynthesizer.getFormat:()Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
            invokespecial com.sun.media.sound.SoftFilter.<init>:(F)V
            putfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
        71: .line 190
            aload 0 /* this */
            aload 1 /* synth */
            invokevirtual com.sun.media.sound.SoftSynthesizer.getFormat:()Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getChannels:()I
            putfield com.sun.media.sound.SoftVoice.nrofchannels:I
        72: .line 191
            return
        end local 1 // com.sun.media.sound.SoftSynthesizer synth
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0   73     0   this  Lcom/sun/media/sound/SoftVoice;
            0   73     1  synth  Lcom/sun/media/sound/SoftSynthesizer;
    MethodParameters:
       Name  Flags
      synth  

  private int getValueKC(com.sun.media.sound.ModelIdentifier);
    descriptor: (Lcom/sun/media/sound/ModelIdentifier;)I
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.ModelIdentifier id
         0: .line 194
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getObject:()Ljava/lang/String;
            ldc "midi_cc"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 5
         1: .line 195
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getVariable:()Ljava/lang/String;
            invokestatic java.lang.Integer.parseInt:(Ljava/lang/String;)I
            istore 2 /* ic */
        start local 2 // int ic
         2: .line 196
            iload 2 /* ic */
            ifeq 10
            iload 2 /* ic */
            bipush 32
            if_icmpeq 10
         3: .line 197
            iload 2 /* ic */
            bipush 120
            if_icmpge 10
         4: .line 198
            iload 2 /* ic */
            ireturn
        end local 2 // int ic
         5: .line 200
      StackMap locals:
      StackMap stack:
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getObject:()Ljava/lang/String;
            ldc "midi_rpn"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         6: .line 201
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getVariable:()Ljava/lang/String;
            ldc "1"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 8
         7: .line 202
            bipush 120
            ireturn
         8: .line 203
      StackMap locals:
      StackMap stack:
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getVariable:()Ljava/lang/String;
            ldc "2"
            invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
            ifeq 10
         9: .line 204
            bipush 121
            ireturn
        10: .line 206
      StackMap locals:
      StackMap stack:
            iconst_m1
            ireturn
        end local 1 // com.sun.media.sound.ModelIdentifier id
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/media/sound/SoftVoice;
            0   11     1    id  Lcom/sun/media/sound/ModelIdentifier;
            2    5     2    ic  I
    MethodParameters:
      Name  Flags
      id    

  private double[] getValue(com.sun.media.sound.ModelIdentifier);
    descriptor: (Lcom/sun/media/sound/ModelIdentifier;)[D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.ModelIdentifier id
         0: .line 210
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getObject:()Ljava/lang/String;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast com.sun.media.sound.SoftControl
            astore 2 /* o */
        start local 2 // com.sun.media.sound.SoftControl o
         1: .line 211
            aload 2 /* o */
            ifnonnull 3
         2: .line 212
            aconst_null
            areturn
         3: .line 213
      StackMap locals: com.sun.media.sound.SoftControl
      StackMap stack:
            aload 2 /* o */
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getInstance:()I
            aload 1 /* id */
            invokevirtual com.sun.media.sound.ModelIdentifier.getVariable:()Ljava/lang/String;
            invokeinterface com.sun.media.sound.SoftControl.get:(ILjava/lang/String;)[D
            areturn
        end local 2 // com.sun.media.sound.SoftControl o
        end local 1 // com.sun.media.sound.ModelIdentifier id
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/sun/media/sound/SoftVoice;
            0    4     1    id  Lcom/sun/media/sound/ModelIdentifier;
            1    4     2     o  Lcom/sun/media/sound/SoftControl;
    MethodParameters:
      Name  Flags
      id    

  private double transformValue(double, com.sun.media.sound.ModelSource);
    descriptor: (DLcom/sun/media/sound/ModelSource;)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // double value
        start local 3 // com.sun.media.sound.ModelSource src
         0: .line 217
            aload 3 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getTransform:()Lcom/sun/media/sound/ModelTransform;
            ifnull 2
         1: .line 218
            aload 3 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getTransform:()Lcom/sun/media/sound/ModelTransform;
            dload 1 /* value */
            invokeinterface com.sun.media.sound.ModelTransform.transform:(D)D
            dreturn
         2: .line 220
      StackMap locals:
      StackMap stack:
            dload 1 /* value */
            dreturn
        end local 3 // com.sun.media.sound.ModelSource src
        end local 1 // double value
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/media/sound/SoftVoice;
            0    3     1  value  D
            0    3     3    src  Lcom/sun/media/sound/ModelSource;
    MethodParameters:
       Name  Flags
      value  
      src    

  private double transformValue(double, com.sun.media.sound.ModelDestination);
    descriptor: (DLcom/sun/media/sound/ModelDestination;)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=4, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // double value
        start local 3 // com.sun.media.sound.ModelDestination dst
         0: .line 224
            aload 3 /* dst */
            invokevirtual com.sun.media.sound.ModelDestination.getTransform:()Lcom/sun/media/sound/ModelTransform;
            ifnull 2
         1: .line 225
            aload 3 /* dst */
            invokevirtual com.sun.media.sound.ModelDestination.getTransform:()Lcom/sun/media/sound/ModelTransform;
            dload 1 /* value */
            invokeinterface com.sun.media.sound.ModelTransform.transform:(D)D
            dreturn
         2: .line 227
      StackMap locals:
      StackMap stack:
            dload 1 /* value */
            dreturn
        end local 3 // com.sun.media.sound.ModelDestination dst
        end local 1 // double value
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot   Name  Signature
            0    3     0   this  Lcom/sun/media/sound/SoftVoice;
            0    3     1  value  D
            0    3     3    dst  Lcom/sun/media/sound/ModelDestination;
    MethodParameters:
       Name  Flags
      value  
      dst    

  private double processKeyBasedController(double, int);
    descriptor: (DI)D
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=6, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // double value
        start local 3 // int keycontrol
         0: .line 231
            iload 3 /* keycontrol */
            iconst_m1
            if_icmpne 2
         1: .line 232
            dload 1 /* value */
            dreturn
         2: .line 233
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_active:[[Z
            ifnull 14
         3: .line 234
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_active:[[Z
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.note:I
            aaload
            ifnull 14
         4: .line 235
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_active:[[Z
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.note:I
            aaload
            iload 3 /* keycontrol */
            baload
            ifeq 14
         5: .line 237
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_value:[[D
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.note:I
            aaload
            iload 3 /* keycontrol */
            daload
         6: .line 236
            dstore 4 /* key_controlvalue */
        start local 4 // double key_controlvalue
         7: .line 238
            iload 3 /* keycontrol */
            bipush 10
            if_icmpeq 8
            iload 3 /* keycontrol */
            bipush 91
            if_icmpeq 8
            iload 3 /* keycontrol */
            bipush 93
            if_icmpne 9
         8: .line 239
      StackMap locals: double
      StackMap stack:
            dload 4 /* key_controlvalue */
            dreturn
         9: .line 240
      StackMap locals:
      StackMap stack:
            dload 1 /* value */
            dload 4 /* key_controlvalue */
            ldc 2.0
            dmul
            dconst_1
            dsub
            dadd
            dstore 1 /* value */
        10: .line 241
            dload 1 /* value */
            dconst_1
            dcmpl
            ifle 12
        11: .line 242
            dconst_1
            dstore 1 /* value */
            goto 14
        12: .line 243
      StackMap locals:
      StackMap stack:
            dload 1 /* value */
            dconst_0
            dcmpg
            ifge 14
        13: .line 244
            dconst_0
            dstore 1 /* value */
        end local 4 // double key_controlvalue
        14: .line 246
      StackMap locals:
      StackMap stack:
            dload 1 /* value */
            dreturn
        end local 3 // int keycontrol
        end local 1 // double value
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot              Name  Signature
            0   15     0              this  Lcom/sun/media/sound/SoftVoice;
            0   15     1             value  D
            0   15     3        keycontrol  I
            7   14     4  key_controlvalue  D
    MethodParameters:
            Name  Flags
      value       
      keycontrol  

  private void processConnection(int);
    descriptor: (I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=8, locals=10, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int ix
         0: .line 250
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            iload 1 /* ix */
            aaload
            astore 2 /* conn */
        start local 2 // com.sun.media.sound.ModelConnectionBlock conn
         1: .line 251
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 1 /* ix */
            aaload
            astore 3 /* src */
        start local 3 // double[][] src
         2: .line 252
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_dst:[[D
            iload 1 /* ix */
            aaload
            astore 4 /* dst */
        start local 4 // double[] dst
         3: .line 253
            aload 4 /* dst */
            ifnull 4
            aload 4 /* dst */
            iconst_0
            daload
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifeq 5
         4: .line 254
      StackMap locals: com.sun.media.sound.ModelConnectionBlock double[][] double[]
      StackMap stack:
            return
         5: .line 256
      StackMap locals:
      StackMap stack:
            aload 2 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getScale:()D
            dstore 5 /* value */
        start local 5 // double value
         6: .line 257
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_active:[[Z
            ifnonnull 16
         7: .line 258
            aload 2 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            astore 7 /* srcs */
        start local 7 // com.sun.media.sound.ModelSource[] srcs
         8: .line 259
            iconst_0
            istore 8 /* i */
        start local 8 // int i
         9: goto 14
        10: .line 260
      StackMap locals: double com.sun.media.sound.ModelSource[] int
      StackMap stack:
            dload 5 /* value */
            aload 0 /* this */
            aload 3 /* src */
            iload 8 /* i */
            aaload
            iconst_0
            daload
            aload 7 /* srcs */
            iload 8 /* i */
            aaload
            invokevirtual com.sun.media.sound.SoftVoice.transformValue:(DLcom/sun/media/sound/ModelSource;)D
            dmul
            dstore 5 /* value */
        11: .line 261
            dload 5 /* value */
            dconst_0
            dcmpl
            ifne 13
        12: .line 262
            goto 29
        13: .line 259
      StackMap locals:
      StackMap stack:
            iinc 8 /* i */ 1
      StackMap locals:
      StackMap stack:
        14: iload 8 /* i */
            aload 7 /* srcs */
            arraylength
            if_icmplt 10
        end local 8 // int i
        end local 7 // com.sun.media.sound.ModelSource[] srcs
        15: .line 264
            goto 29
        16: .line 265
      StackMap locals:
      StackMap stack:
            aload 2 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            astore 7 /* srcs */
        start local 7 // com.sun.media.sound.ModelSource[] srcs
        17: .line 266
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src_kc:[[I
            iload 1 /* ix */
            aaload
            astore 8 /* src_kc */
        start local 8 // int[] src_kc
        18: .line 267
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        19: goto 28
        20: .line 268
      StackMap locals: com.sun.media.sound.ModelSource[] int[] int
      StackMap stack:
            dload 5 /* value */
            aload 0 /* this */
            aload 0 /* this */
            aload 3 /* src */
            iload 9 /* i */
            aaload
            iconst_0
            daload
        21: .line 269
            aload 8 /* src_kc */
            iload 9 /* i */
            iaload
        22: .line 268
            invokevirtual com.sun.media.sound.SoftVoice.processKeyBasedController:(DI)D
        23: .line 269
            aload 7 /* srcs */
            iload 9 /* i */
            aaload
        24: .line 268
            invokevirtual com.sun.media.sound.SoftVoice.transformValue:(DLcom/sun/media/sound/ModelSource;)D
            dmul
            dstore 5 /* value */
        25: .line 270
            dload 5 /* value */
            dconst_0
            dcmpl
            ifne 27
        26: .line 271
            goto 29
        27: .line 267
      StackMap locals:
      StackMap stack:
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        28: iload 9 /* i */
            aload 7 /* srcs */
            arraylength
            if_icmplt 20
        end local 9 // int i
        end local 8 // int[] src_kc
        end local 7 // com.sun.media.sound.ModelSource[] srcs
        29: .line 275
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            dload 5 /* value */
            aload 2 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getDestination:()Lcom/sun/media/sound/ModelDestination;
            invokevirtual com.sun.media.sound.SoftVoice.transformValue:(DLcom/sun/media/sound/ModelDestination;)D
            dstore 5 /* value */
        30: .line 276
            aload 4 /* dst */
            iconst_0
            aload 4 /* dst */
            iconst_0
            daload
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_last:[D
            iload 1 /* ix */
            daload
            dsub
            dload 5 /* value */
            dadd
            dastore
        31: .line 277
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_last:[D
            iload 1 /* ix */
            dload 5 /* value */
            dastore
        32: .line 279
            return
        end local 5 // double value
        end local 4 // double[] dst
        end local 3 // double[][] src
        end local 2 // com.sun.media.sound.ModelConnectionBlock conn
        end local 1 // int ix
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0   33     0    this  Lcom/sun/media/sound/SoftVoice;
            0   33     1      ix  I
            1   33     2    conn  Lcom/sun/media/sound/ModelConnectionBlock;
            2   33     3     src  [[D
            3   33     4     dst  [D
            6   33     5   value  D
            8   15     7    srcs  [Lcom/sun/media/sound/ModelSource;
            9   15     8       i  I
           17   29     7    srcs  [Lcom/sun/media/sound/ModelSource;
           18   29     8  src_kc  [I
           19   29     9       i  I
    MethodParameters:
      Name  Flags
      ix    

  void updateTuning(com.sun.media.sound.SoftTuning);
    descriptor: (Lcom/sun/media/sound/SoftTuning;)V
    flags: (0x0000) 
    Code:
      stack=6, locals=4, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.SoftTuning newtuning
         0: .line 282
            aload 0 /* this */
            aload 1 /* newtuning */
            putfield com.sun.media.sound.SoftVoice.tuning:Lcom/sun/media/sound/SoftTuning;
         1: .line 283
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tuning:Lcom/sun/media/sound/SoftTuning;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.note:I
            invokevirtual com.sun.media.sound.SoftTuning.getTuning:(I)D
            ldc 100.0
            ddiv
            putfield com.sun.media.sound.SoftVoice.tunedKey:D
         2: .line 284
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.portamento:Z
            ifne 14
         3: .line 285
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tunedKey:D
            ldc 0.0078125
            dmul
            dastore
         4: .line 286
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 6
         5: .line 287
            return
         6: .line 288
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_4
            aaload
            astore 2 /* c */
        start local 2 // int[] c
         7: .line 289
            aload 2 /* c */
            ifnonnull 9
         8: .line 290
            return
         9: .line 291
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        10: goto 13
        11: .line 292
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* c */
            iload 3 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        12: .line 291
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 3 /* i */
            aload 2 /* c */
            arraylength
            if_icmplt 11
        end local 3 // int i
        end local 2 // int[] c
        14: .line 294
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.sun.media.sound.SoftTuning newtuning
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   15     0       this  Lcom/sun/media/sound/SoftVoice;
            0   15     1  newtuning  Lcom/sun/media/sound/SoftTuning;
            7   14     2          c  [I
           10   14     3          i  I
    MethodParameters:
           Name  Flags
      newtuning  

  void setNote(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=5, locals=2, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int noteNumber
         0: .line 297
            aload 0 /* this */
            iload 1 /* noteNumber */
            putfield com.sun.media.sound.SoftVoice.note:I
         1: .line 298
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tuning:Lcom/sun/media/sound/SoftTuning;
            iload 1 /* noteNumber */
            invokevirtual com.sun.media.sound.SoftTuning.getTuning:(I)D
            ldc 100.0
            ddiv
            putfield com.sun.media.sound.SoftVoice.tunedKey:D
         2: .line 299
            return
        end local 1 // int noteNumber
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    3     0        this  Lcom/sun/media/sound/SoftVoice;
            0    3     1  noteNumber  I
    MethodParameters:
            Name  Flags
      noteNumber  

  void noteOn(int, int, int);
    descriptor: (III)V
    flags: (0x0000) 
    Code:
      stack=6, locals=17, args_size=4
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int noteNumber
        start local 2 // int velocity
        start local 3 // int delay
         0: .line 303
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.sustain:Z
         1: .line 304
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.sostenuto:Z
         2: .line 305
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.portamento:Z
         3: .line 307
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.soundoff:Z
         4: .line 308
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.on:Z
         5: .line 309
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.active:Z
         6: .line 310
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.started:Z
         7: .line 313
            aload 0 /* this */
            iload 1 /* noteNumber */
            putfield com.sun.media.sound.SoftVoice.noteOn_noteNumber:I
         8: .line 314
            aload 0 /* this */
            iload 2 /* velocity */
            putfield com.sun.media.sound.SoftVoice.noteOn_velocity:I
         9: .line 315
            aload 0 /* this */
            iload 3 /* delay */
            putfield com.sun.media.sound.SoftVoice.delay:I
        10: .line 317
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.lastMuteValue:F
        11: .line 318
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.lastSoloMuteValue:F
        12: .line 320
            aload 0 /* this */
            iload 1 /* noteNumber */
            invokevirtual com.sun.media.sound.SoftVoice.setNote:(I)V
        13: .line 322
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.forcedKeynumber:Z
            ifeq 15
        14: .line 323
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            dconst_0
            dastore
            goto 16
        15: .line 325
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tunedKey:D
            ldc 0.0078125
            dmul
            dastore
        16: .line 326
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.forcedVelocity:Z
            ifeq 18
        17: .line 327
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_velocity:[D
            iconst_0
            dconst_0
            dastore
            goto 19
        18: .line 329
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_velocity:[D
            iconst_0
            iload 2 /* velocity */
            i2f
            ldc 0.0078125
            fmul
            f2d
            dastore
        19: .line 330
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_active:[D
            iconst_0
            dconst_0
            dastore
        20: .line 331
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            dconst_0
            dastore
        21: .line 332
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_pan:[D
            iconst_0
            dconst_0
            dastore
        22: .line 333
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_balance:[D
            iconst_0
            dconst_0
            dastore
        23: .line 334
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_reverb:[D
            iconst_0
            dconst_0
            dastore
        24: .line 335
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_chorus:[D
            iconst_0
            dconst_0
            dastore
        25: .line 336
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_osc_pitch:[D
            iconst_0
            dconst_0
            dastore
        26: .line 337
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_freq:[D
            iconst_0
            dconst_0
            dastore
        27: .line 338
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_q:[D
            iconst_0
            dconst_0
            dastore
        28: .line 339
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_type:[D
            iconst_0
            dconst_0
            dastore
        29: .line 340
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            dconst_1
            dastore
        30: .line 342
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.eg:Lcom/sun/media/sound/SoftProcess;
            invokeinterface com.sun.media.sound.SoftProcess.reset:()V
        31: .line 343
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lfo:Lcom/sun/media/sound/SoftProcess;
            invokeinterface com.sun.media.sound.SoftProcess.reset:()V
        32: .line 344
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
            invokevirtual com.sun.media.sound.SoftFilter.reset:()V
        33: .line 345
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
            invokevirtual com.sun.media.sound.SoftFilter.reset:()V
        34: .line 347
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "master"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            invokevirtual com.sun.media.sound.SoftSynthesizer.getMainMixer:()Lcom/sun/media/sound/SoftMainMixer;
            getfield com.sun.media.sound.SoftMainMixer.co_master:Lcom/sun/media/sound/SoftControl;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        35: .line 348
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "eg"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.eg:Lcom/sun/media/sound/SoftProcess;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        36: .line 349
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "lfo"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lfo:Lcom/sun/media/sound/SoftProcess;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        37: .line 350
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "noteon"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon:Lcom/sun/media/sound/SoftControl;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        38: .line 351
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "osc"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_osc:Lcom/sun/media/sound/SoftControl;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        39: .line 352
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "mixer"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer:Lcom/sun/media/sound/SoftControl;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        40: .line 353
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.objects:Ljava/util/Map;
            ldc "filter"
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter:Lcom/sun/media/sound/SoftControl;
            invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
            pop
        41: .line 355
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            putfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
        42: .line 357
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_last:[D
            ifnull 44
        43: .line 358
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_last:[D
            arraylength
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            if_icmpge 45
        44: .line 359
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            newarray 7
            putfield com.sun.media.sound.SoftVoice.connections_last:[D
        45: .line 361
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            ifnull 47
        46: .line 362
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            arraylength
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            if_icmpge 49
        47: .line 363
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            anewarray double[][]
            putfield com.sun.media.sound.SoftVoice.connections_src:[[[D
        48: .line 364
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            anewarray int[]
            putfield com.sun.media.sound.SoftVoice.connections_src_kc:[[I
        49: .line 366
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_dst:[[D
            ifnull 51
        50: .line 367
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_dst:[[D
            arraylength
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            if_icmpge 52
        51: .line 368
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            anewarray double[]
            putfield com.sun.media.sound.SoftVoice.connections_dst:[[D
        52: .line 370
      StackMap locals:
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        53: goto 78
        54: .line 371
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            iload 4 /* i */
            aaload
            astore 5 /* conn */
        start local 5 // com.sun.media.sound.ModelConnectionBlock conn
        55: .line 372
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_last:[D
            iload 4 /* i */
            dconst_0
            dastore
        56: .line 373
            aload 5 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            ifnull 71
        57: .line 374
            aload 5 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            astore 6 /* srcs */
        start local 6 // com.sun.media.sound.ModelSource[] srcs
        58: .line 375
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 4 /* i */
            aaload
            ifnull 60
        59: .line 376
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 4 /* i */
            aaload
            arraylength
            aload 6 /* srcs */
            arraylength
            if_icmpge 62
        60: .line 377
      StackMap locals: com.sun.media.sound.ModelConnectionBlock com.sun.media.sound.ModelSource[]
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 4 /* i */
            aload 6 /* srcs */
            arraylength
            anewarray double[]
            aastore
        61: .line 378
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src_kc:[[I
            iload 4 /* i */
            aload 6 /* srcs */
            arraylength
            newarray 10
            aastore
        62: .line 380
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 4 /* i */
            aaload
            astore 7 /* src */
        start local 7 // double[][] src
        63: .line 381
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src_kc:[[I
            iload 4 /* i */
            aaload
            astore 8 /* src_kc */
        start local 8 // int[] src_kc
        64: .line 382
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_src:[[[D
            iload 4 /* i */
            aload 7 /* src */
            aastore
        65: .line 383
            iconst_0
            istore 9 /* j */
        start local 9 // int j
        66: goto 70
        67: .line 384
      StackMap locals: double[][] int[] int
      StackMap stack:
            aload 8 /* src_kc */
            iload 9 /* j */
            aload 0 /* this */
            aload 6 /* srcs */
            iload 9 /* j */
            aaload
            invokevirtual com.sun.media.sound.ModelSource.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValueKC:(Lcom/sun/media/sound/ModelIdentifier;)I
            iastore
        68: .line 385
            aload 7 /* src */
            iload 9 /* j */
            aload 0 /* this */
            aload 6 /* srcs */
            iload 9 /* j */
            aaload
            invokevirtual com.sun.media.sound.ModelSource.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValue:(Lcom/sun/media/sound/ModelIdentifier;)[D
            aastore
        69: .line 383
            iinc 9 /* j */ 1
      StackMap locals:
      StackMap stack:
        70: iload 9 /* j */
            aload 6 /* srcs */
            arraylength
            if_icmplt 67
        end local 9 // int j
        end local 8 // int[] src_kc
        end local 7 // double[][] src
        end local 6 // com.sun.media.sound.ModelSource[] srcs
        71: .line 389
      StackMap locals: com.sun.media.sound.SoftVoice int int int int com.sun.media.sound.ModelConnectionBlock
      StackMap stack:
            aload 5 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getDestination:()Lcom/sun/media/sound/ModelDestination;
            ifnull 76
        72: .line 390
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_dst:[[D
            iload 4 /* i */
            aload 0 /* this */
            aload 5 /* conn */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getDestination:()Lcom/sun/media/sound/ModelDestination;
        73: .line 391
            invokevirtual com.sun.media.sound.ModelDestination.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
        74: .line 390
            invokevirtual com.sun.media.sound.SoftVoice.getValue:(Lcom/sun/media/sound/ModelIdentifier;)[D
            aastore
        75: .line 391
            goto 77
        76: .line 393
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections_dst:[[D
            iload 4 /* i */
            aconst_null
            aastore
        end local 5 // com.sun.media.sound.ModelConnectionBlock conn
        77: .line 370
      StackMap locals:
      StackMap stack:
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        78: iload 4 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            if_icmplt 54
        end local 4 // int i
        79: .line 396
            iconst_0
            istore 4 /* i */
        start local 4 // int i
        80: goto 83
        81: .line 397
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 4 /* i */
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        82: .line 396
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
        83: iload 4 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
            arraylength
            if_icmplt 81
        end local 4 // int i
        84: .line 399
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
            ifnull 118
        85: .line 400
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
            dup
            astore 7
            arraylength
            istore 6
            iconst_0
            istore 5
            goto 117
      StackMap locals: com.sun.media.sound.SoftVoice int int int top int int com.sun.media.sound.ModelConnectionBlock[]
      StackMap stack:
        86: aload 7
            iload 5
            aaload
            astore 4 /* connection */
        start local 4 // com.sun.media.sound.ModelConnectionBlock connection
        87: .line 401
            dconst_0
            dstore 8 /* value */
        start local 8 // double value
        88: .line 403
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.keybasedcontroller_active:[[Z
            ifnonnull 99
        89: .line 404
            aload 4 /* connection */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 97
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double top int int com.sun.media.sound.ModelSource[]
      StackMap stack:
        90: aload 13
            iload 11
            aaload
            astore 10 /* src */
        start local 10 // com.sun.media.sound.ModelSource src
        91: .line 405
            aload 0 /* this */
            aload 10 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValue:(Lcom/sun/media/sound/ModelIdentifier;)[D
            iconst_0
            daload
            dstore 14 /* x */
        start local 14 // double x
        92: .line 406
            aload 10 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getTransform:()Lcom/sun/media/sound/ModelTransform;
            astore 16 /* t */
        start local 16 // com.sun.media.sound.ModelTransform t
        93: .line 407
            aload 16 /* t */
            ifnonnull 95
        94: .line 408
            dload 8 /* value */
            dload 14 /* x */
            dadd
            dstore 8 /* value */
            goto 96
        95: .line 410
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double com.sun.media.sound.ModelSource int int com.sun.media.sound.ModelSource[] double com.sun.media.sound.ModelTransform
      StackMap stack:
            dload 8 /* value */
            aload 16 /* t */
            dload 14 /* x */
            invokeinterface com.sun.media.sound.ModelTransform.transform:(D)D
            dadd
            dstore 8 /* value */
        end local 16 // com.sun.media.sound.ModelTransform t
        end local 14 // double x
        end local 10 // com.sun.media.sound.ModelSource src
        96: .line 404
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double top int int com.sun.media.sound.ModelSource[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
        97: iload 11
            iload 12
            if_icmplt 90
        98: .line 412
            goto 111
        99: .line 413
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double
      StackMap stack:
            aload 4 /* connection */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getSources:()[Lcom/sun/media/sound/ModelSource;
            dup
            astore 13
            arraylength
            istore 12
            iconst_0
            istore 11
            goto 110
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double top int int com.sun.media.sound.ModelSource[]
      StackMap stack:
       100: aload 13
            iload 11
            aaload
            astore 10 /* src */
        start local 10 // com.sun.media.sound.ModelSource src
       101: .line 414
            aload 0 /* this */
            aload 10 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValue:(Lcom/sun/media/sound/ModelIdentifier;)[D
            iconst_0
            daload
            dstore 14 /* x */
        start local 14 // double x
       102: .line 415
            aload 0 /* this */
            dload 14 /* x */
       103: .line 416
            aload 0 /* this */
            aload 10 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValueKC:(Lcom/sun/media/sound/ModelIdentifier;)I
       104: .line 415
            invokevirtual com.sun.media.sound.SoftVoice.processKeyBasedController:(DI)D
            dstore 14 /* x */
       105: .line 417
            aload 10 /* src */
            invokevirtual com.sun.media.sound.ModelSource.getTransform:()Lcom/sun/media/sound/ModelTransform;
            astore 16 /* t */
        start local 16 // com.sun.media.sound.ModelTransform t
       106: .line 418
            aload 16 /* t */
            ifnonnull 108
       107: .line 419
            dload 8 /* value */
            dload 14 /* x */
            dadd
            dstore 8 /* value */
            goto 109
       108: .line 421
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double com.sun.media.sound.ModelSource int int com.sun.media.sound.ModelSource[] double com.sun.media.sound.ModelTransform
      StackMap stack:
            dload 8 /* value */
            aload 16 /* t */
            dload 14 /* x */
            invokeinterface com.sun.media.sound.ModelTransform.transform:(D)D
            dadd
            dstore 8 /* value */
        end local 16 // com.sun.media.sound.ModelTransform t
        end local 14 // double x
        end local 10 // com.sun.media.sound.ModelSource src
       109: .line 413
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double top int int com.sun.media.sound.ModelSource[]
      StackMap stack:
            iinc 11 1
      StackMap locals:
      StackMap stack:
       110: iload 11
            iload 12
            if_icmplt 100
       111: .line 425
      StackMap locals: com.sun.media.sound.SoftVoice int int int com.sun.media.sound.ModelConnectionBlock int int com.sun.media.sound.ModelConnectionBlock[] double
      StackMap stack:
            aload 4 /* connection */
            invokevirtual com.sun.media.sound.ModelConnectionBlock.getDestination:()Lcom/sun/media/sound/ModelDestination;
            astore 10 /* dest */
        start local 10 // com.sun.media.sound.ModelDestination dest
       112: .line 426
            aload 10 /* dest */
            invokevirtual com.sun.media.sound.ModelDestination.getTransform:()Lcom/sun/media/sound/ModelTransform;
            astore 11 /* t */
        start local 11 // com.sun.media.sound.ModelTransform t
       113: .line 427
            aload 11 /* t */
            ifnull 115
       114: .line 428
            aload 11 /* t */
            dload 8 /* value */
            invokeinterface com.sun.media.sound.ModelTransform.transform:(D)D
            dstore 8 /* value */
       115: .line 429
      StackMap locals: com.sun.media.sound.ModelDestination com.sun.media.sound.ModelTransform
      StackMap stack:
            aload 0 /* this */
            aload 10 /* dest */
            invokevirtual com.sun.media.sound.ModelDestination.getIdentifier:()Lcom/sun/media/sound/ModelIdentifier;
            invokevirtual com.sun.media.sound.SoftVoice.getValue:(Lcom/sun/media/sound/ModelIdentifier;)[D
            iconst_0
            dup2
            daload
            dload 8 /* value */
            dadd
            dastore
        end local 11 // com.sun.media.sound.ModelTransform t
        end local 10 // com.sun.media.sound.ModelDestination dest
        end local 8 // double value
        end local 4 // com.sun.media.sound.ModelConnectionBlock connection
       116: .line 400
            iinc 5 1
      StackMap locals: com.sun.media.sound.SoftVoice int int int top int int com.sun.media.sound.ModelConnectionBlock[]
      StackMap stack:
       117: iload 5
            iload 6
            if_icmplt 86
       118: .line 433
      StackMap locals: com.sun.media.sound.SoftVoice int int int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.eg:Lcom/sun/media/sound/SoftProcess;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            invokeinterface com.sun.media.sound.SoftProcess.init:(Lcom/sun/media/sound/SoftSynthesizer;)V
       119: .line 434
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lfo:Lcom/sun/media/sound/SoftProcess;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            invokeinterface com.sun.media.sound.SoftProcess.init:(Lcom/sun/media/sound/SoftSynthesizer;)V
       120: .line 436
            return
        end local 3 // int delay
        end local 2 // int velocity
        end local 1 // int noteNumber
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0  121     0        this  Lcom/sun/media/sound/SoftVoice;
            0  121     1  noteNumber  I
            0  121     2    velocity  I
            0  121     3       delay  I
           53   79     4           i  I
           55   77     5        conn  Lcom/sun/media/sound/ModelConnectionBlock;
           58   71     6        srcs  [Lcom/sun/media/sound/ModelSource;
           63   71     7         src  [[D
           64   71     8      src_kc  [I
           66   71     9           j  I
           80   84     4           i  I
           87  116     4  connection  Lcom/sun/media/sound/ModelConnectionBlock;
           88  116     8       value  D
           91   96    10         src  Lcom/sun/media/sound/ModelSource;
           92   96    14           x  D
           93   96    16           t  Lcom/sun/media/sound/ModelTransform;
          101  109    10         src  Lcom/sun/media/sound/ModelSource;
          102  109    14           x  D
          106  109    16           t  Lcom/sun/media/sound/ModelTransform;
          112  116    10        dest  Lcom/sun/media/sound/ModelDestination;
          113  116    11           t  Lcom/sun/media/sound/ModelTransform;
    MethodParameters:
            Name  Flags
      noteNumber  
      velocity    
      delay       

  void setPolyPressure(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int pressure
         0: .line 439
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 440
            return
         2: .line 441
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_2
            aaload
            astore 2 /* c */
        start local 2 // int[] c
         3: .line 442
            aload 2 /* c */
            ifnonnull 5
         4: .line 443
            return
         5: .line 444
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 9
         7: .line 445
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* c */
            iload 3 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 444
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 2 /* c */
            arraylength
            if_icmplt 7
        end local 3 // int i
        10: .line 446
            return
        end local 2 // int[] c
        end local 1 // int pressure
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  pressure  I
            3   11     2         c  [I
            6   10     3         i  I
    MethodParameters:
          Name  Flags
      pressure  

  void setChannelPressure(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int pressure
         0: .line 449
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 450
            return
         2: .line 451
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_1
            aaload
            astore 2 /* c */
        start local 2 // int[] c
         3: .line 452
            aload 2 /* c */
            ifnonnull 5
         4: .line 453
            return
         5: .line 454
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 9
         7: .line 455
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* c */
            iload 3 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 454
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 2 /* c */
            arraylength
            if_icmplt 7
        end local 3 // int i
        10: .line 456
            return
        end local 2 // int[] c
        end local 1 // int pressure
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   11     0      this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  pressure  I
            3   11     2         c  [I
            6   10     3         i  I
    MethodParameters:
          Name  Flags
      pressure  

  void controlChange(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int controller
        start local 2 // int value
         0: .line 459
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 460
            return
         2: .line 461
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_ctrl_connections:[[I
            iload 1 /* controller */
            aaload
            astore 3 /* c */
        start local 3 // int[] c
         3: .line 462
            aload 3 /* c */
            ifnonnull 5
         4: .line 463
            return
         5: .line 464
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 465
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* c */
            iload 4 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 464
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 3 /* c */
            arraylength
            if_icmplt 7
        end local 4 // int i
        10: .line 466
            return
        end local 3 // int[] c
        end local 2 // int value
        end local 1 // int controller
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  controller  I
            0   11     2       value  I
            3   11     3           c  [I
            6   10     4           i  I
    MethodParameters:
            Name  Flags
      controller  
      value       

  void nrpnChange(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int controller
        start local 2 // int value
         0: .line 469
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 470
            return
         2: .line 471
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_nrpn_connections:Ljava/util/Map;
            iload 1 /* controller */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast int[]
            astore 3 /* c */
        start local 3 // int[] c
         3: .line 472
            aload 3 /* c */
            ifnonnull 5
         4: .line 473
            return
         5: .line 474
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 475
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* c */
            iload 4 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 474
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 3 /* c */
            arraylength
            if_icmplt 7
        end local 4 // int i
        10: .line 476
            return
        end local 3 // int[] c
        end local 2 // int value
        end local 1 // int controller
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  controller  I
            0   11     2       value  I
            3   11     3           c  [I
            6   10     4           i  I
    MethodParameters:
            Name  Flags
      controller  
      value       

  void rpnChange(int, int);
    descriptor: (II)V
    flags: (0x0000) 
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int controller
        start local 2 // int value
         0: .line 479
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 480
            return
         2: .line 481
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_rpn_connections:Ljava/util/Map;
            iload 1 /* controller */
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
            checkcast int[]
            astore 3 /* c */
        start local 3 // int[] c
         3: .line 482
            aload 3 /* c */
            ifnonnull 5
         4: .line 483
            return
         5: .line 484
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 4 /* i */
        start local 4 // int i
         6: goto 9
         7: .line 485
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 3 /* c */
            iload 4 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 484
            iinc 4 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 4 /* i */
            aload 3 /* c */
            arraylength
            if_icmplt 7
        end local 4 // int i
        10: .line 486
            return
        end local 3 // int[] c
        end local 2 // int value
        end local 1 // int controller
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   11     0        this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  controller  I
            0   11     2       value  I
            3   11     3           c  [I
            6   10     4           i  I
    MethodParameters:
            Name  Flags
      controller  
      value       

  void setPitchBend(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=3, locals=4, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int bend
         0: .line 489
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 2
         1: .line 490
            return
         2: .line 491
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_0
            aaload
            astore 2 /* c */
        start local 2 // int[] c
         3: .line 492
            aload 2 /* c */
            ifnonnull 5
         4: .line 493
            return
         5: .line 494
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
         6: goto 9
         7: .line 495
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* c */
            iload 3 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
         8: .line 494
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
         9: iload 3 /* i */
            aload 2 /* c */
            arraylength
            if_icmplt 7
        end local 3 // int i
        10: .line 496
            return
        end local 2 // int[] c
        end local 1 // int bend
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0  this  Lcom/sun/media/sound/SoftVoice;
            0   11     1  bend  I
            3   11     2     c  [I
            6   10     3     i  I
    MethodParameters:
      Name  Flags
      bend  

  void setMute(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // boolean mute
         0: .line 499
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            dup2
            daload
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lastMuteValue:F
            f2d
            dsub
            dastore
         1: .line 500
            aload 0 /* this */
            iload 1 /* mute */
            ifeq 2
            sipush -960
            goto 3
      StackMap locals:
      StackMap stack: com.sun.media.sound.SoftVoice
         2: iconst_0
      StackMap locals: com.sun.media.sound.SoftVoice int
      StackMap stack: com.sun.media.sound.SoftVoice int
         3: i2f
            putfield com.sun.media.sound.SoftVoice.lastMuteValue:F
         4: .line 501
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            dup2
            daload
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lastMuteValue:F
            f2d
            dadd
            dastore
         5: .line 502
            return
        end local 1 // boolean mute
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/media/sound/SoftVoice;
            0    6     1  mute  Z
    MethodParameters:
      Name  Flags
      mute  

  void setSoloMute(boolean);
    descriptor: (Z)V
    flags: (0x0000) 
    Code:
      stack=6, locals=2, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // boolean mute
         0: .line 505
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            dup2
            daload
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lastSoloMuteValue:F
            f2d
            dsub
            dastore
         1: .line 506
            aload 0 /* this */
            iload 1 /* mute */
            ifeq 2
            sipush -960
            goto 3
      StackMap locals:
      StackMap stack: com.sun.media.sound.SoftVoice
         2: iconst_0
      StackMap locals: com.sun.media.sound.SoftVoice int
      StackMap stack: com.sun.media.sound.SoftVoice int
         3: i2f
            putfield com.sun.media.sound.SoftVoice.lastSoloMuteValue:F
         4: .line 507
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            dup2
            daload
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lastSoloMuteValue:F
            f2d
            dadd
            dastore
         5: .line 508
            return
        end local 1 // boolean mute
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/sun/media/sound/SoftVoice;
            0    6     1  mute  Z
    MethodParameters:
      Name  Flags
      mute  

  void shutdown();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.sun.media.sound.SoftVoice this
         0: .line 511
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            daload
            ldc -0.5
            dcmpg
            ifge 2
         1: .line 512
            return
         2: .line 513
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.on:Z
         3: .line 515
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            ldc -1.0
            dastore
         4: .line 517
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 6
         5: .line 518
            return
         6: .line 519
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_3
            aaload
            astore 1 /* c */
        start local 1 // int[] c
         7: .line 520
            aload 1 /* c */
            ifnonnull 9
         8: .line 521
            return
         9: .line 522
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        10: goto 13
        11: .line 523
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            iload 2 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        12: .line 522
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        13: iload 2 /* i */
            aload 1 /* c */
            arraylength
            if_icmplt 11
        end local 2 // int i
        14: .line 524
            return
        end local 1 // int[] c
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   15     0  this  Lcom/sun/media/sound/SoftVoice;
            7   15     1     c  [I
           10   14     2     i  I

  void soundOff();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.sun.media.sound.SoftVoice this
         0: .line 527
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.on:Z
         1: .line 528
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.soundoff:Z
         2: .line 529
            return
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/sun/media/sound/SoftVoice;

  void noteOff(int);
    descriptor: (I)V
    flags: (0x0000) 
    Code:
      stack=4, locals=4, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // int velocity
         0: .line 532
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.on:Z
            ifne 2
         1: .line 533
            return
         2: .line 534
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.on:Z
         3: .line 536
            aload 0 /* this */
            iload 1 /* velocity */
            putfield com.sun.media.sound.SoftVoice.noteOff_velocity:I
         4: .line 538
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.sustain:Z
            ifeq 7
         5: .line 539
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.sustain:Z
         6: .line 540
            return
         7: .line 542
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.sostenuto:Z
            ifeq 9
         8: .line 543
            return
         9: .line 545
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            dconst_0
            dastore
        10: .line 547
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 12
        11: .line 548
            return
        12: .line 549
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_3
            aaload
            astore 2 /* c */
        start local 2 // int[] c
        13: .line 550
            aload 2 /* c */
            ifnonnull 15
        14: .line 551
            return
        15: .line 552
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 3 /* i */
        start local 3 // int i
        16: goto 19
        17: .line 553
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* c */
            iload 3 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        18: .line 552
            iinc 3 /* i */ 1
      StackMap locals:
      StackMap stack:
        19: iload 3 /* i */
            aload 2 /* c */
            arraylength
            if_icmplt 17
        end local 3 // int i
        20: .line 554
            return
        end local 2 // int[] c
        end local 1 // int velocity
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   21     0      this  Lcom/sun/media/sound/SoftVoice;
            0   21     1  velocity  I
           13   21     2         c  [I
           16   20     3         i  I
    MethodParameters:
          Name  Flags
      velocity  

  void redamp();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=4, locals=3, args_size=1
        start local 0 // com.sun.media.sound.SoftVoice this
         0: .line 557
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            daload
            ldc 0.5
            dcmpl
            ifle 2
         1: .line 558
            return
         2: .line 559
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            daload
            ldc -0.5
            dcmpg
            ifge 4
         3: .line 560
            return
         4: .line 562
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.sustain:Z
         5: .line 563
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_on:[D
            iconst_0
            dconst_1
            dastore
         6: .line 565
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            ifnonnull 8
         7: .line 566
            return
         8: .line 567
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_3
            aaload
            astore 1 /* c */
        start local 1 // int[] c
         9: .line 568
            aload 1 /* c */
            ifnonnull 11
        10: .line 569
            return
        11: .line 570
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 2 /* i */
        start local 2 // int i
        12: goto 15
        13: .line 571
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 1 /* c */
            iload 2 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        14: .line 570
            iinc 2 /* i */ 1
      StackMap locals:
      StackMap stack:
        15: iload 2 /* i */
            aload 1 /* c */
            arraylength
            if_icmplt 13
        end local 2 // int i
        16: .line 572
            return
        end local 1 // int[] c
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lcom/sun/media/sound/SoftVoice;
            9   17     1     c  [I
           12   16     2     i  I

  void processControlLogic();
    descriptor: ()V
    flags: (0x0000) 
    Code:
      stack=10, locals=11, args_size=1
        start local 0 // com.sun.media.sound.SoftVoice this
         0: .line 575
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stopping:Z
            ifeq 27
         1: .line 576
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.active:Z
         2: .line 577
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stopping:Z
         3: .line 578
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.audiostarted:Z
         4: .line 579
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.instrument:Lcom/sun/media/sound/SoftInstrument;
         5: .line 580
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
         6: .line 581
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.connections:[Lcom/sun/media/sound/ModelConnectionBlock;
         7: .line 582
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
         8: .line 583
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.channelmixer:Lcom/sun/media/sound/ModelChannelMixer;
         9: .line 584
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            ifnull 13
        10: .line 586
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            invokeinterface com.sun.media.sound.ModelOscillatorStream.close:()V
        11: .line 587
            goto 13
      StackMap locals:
      StackMap stack: java.io.IOException
        12: pop
        13: .line 591
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_channel:Lcom/sun/media/sound/SoftChannel;
            ifnull 27
        14: .line 592
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_channel:Lcom/sun/media/sound/SoftChannel;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_performer:Lcom/sun/media/sound/SoftPerformer;
        15: .line 593
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_voiceID:I
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_noteNumber:I
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_velocity:I
            iconst_0
        16: .line 594
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_channelmixer:Lcom/sun/media/sound/ModelChannelMixer;
        17: .line 595
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.stealer_releaseTriggered:Z
        18: .line 592
            invokevirtual com.sun.media.sound.SoftChannel.initVoice:(Lcom/sun/media/sound/SoftVoice;Lcom/sun/media/sound/SoftPerformer;IIII[Lcom/sun/media/sound/ModelConnectionBlock;Lcom/sun/media/sound/ModelChannelMixer;Z)V
        19: .line 596
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_releaseTriggered:Z
        20: .line 597
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_channel:Lcom/sun/media/sound/SoftChannel;
        21: .line 598
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_performer:Lcom/sun/media/sound/SoftPerformer;
        22: .line 599
            aload 0 /* this */
            iconst_m1
            putfield com.sun.media.sound.SoftVoice.stealer_voiceID:I
        23: .line 600
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_noteNumber:I
        24: .line 601
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.stealer_velocity:I
        25: .line 602
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_extendedConnectionBlocks:[Lcom/sun/media/sound/ModelConnectionBlock;
        26: .line 603
            aload 0 /* this */
            aconst_null
            putfield com.sun.media.sound.SoftVoice.stealer_channelmixer:Lcom/sun/media/sound/ModelChannelMixer;
        27: .line 606
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.started:Z
            ifeq 48
        28: .line 607
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.audiostarted:Z
        29: .line 609
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.oscillators:[Lcom/sun/media/sound/ModelOscillator;
            iconst_0
            aaload
            astore 1 /* osc */
        start local 1 // com.sun.media.sound.ModelOscillator osc
        30: .line 611
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.osc_stream_off_transmitted:Z
        31: .line 612
            aload 1 /* osc */
            instanceof com.sun.media.sound.ModelWavetable
            ifeq 39
        32: .line 614
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.resampler:Lcom/sun/media/sound/SoftResamplerStreamer;
            aload 1 /* osc */
            checkcast com.sun.media.sound.ModelWavetable
        33: .line 615
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            invokevirtual com.sun.media.sound.SoftSynthesizer.getFormat:()Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
        34: .line 614
            invokeinterface com.sun.media.sound.SoftResamplerStreamer.open:(Lcom/sun/media/sound/ModelWavetable;F)V
        35: .line 616
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.resampler:Lcom/sun/media/sound/SoftResamplerStreamer;
            putfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
        36: .line 617
            goto 40
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.ModelOscillator
      StackMap stack: java.io.IOException
        37: pop
        38: .line 620
            goto 40
        39: .line 621
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* osc */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            invokevirtual com.sun.media.sound.SoftSynthesizer.getFormat:()Ljavax/sound/sampled/AudioFormat;
            invokevirtual javax.sound.sampled.AudioFormat.getSampleRate:()F
            invokeinterface com.sun.media.sound.ModelOscillator.open:(F)Lcom/sun/media/sound/ModelOscillatorStream;
            putfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
        40: .line 623
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* osc */
            invokeinterface com.sun.media.sound.ModelOscillator.getAttenuation:()F
            putfield com.sun.media.sound.SoftVoice.osc_attenuation:F
        41: .line 624
            aload 0 /* this */
            aload 1 /* osc */
            invokeinterface com.sun.media.sound.ModelOscillator.getChannels:()I
            putfield com.sun.media.sound.SoftVoice.osc_stream_nrofchannels:I
        42: .line 625
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            ifnull 43
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            arraylength
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream_nrofchannels:I
            if_icmpge 44
        43: .line 626
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream_nrofchannels:I
            anewarray float[]
            putfield com.sun.media.sound.SoftVoice.osc_buff:[[F
        44: .line 628
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            ifnull 48
        45: .line 629
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.noteOn_noteNumber:I
        46: .line 630
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.noteOn_velocity:I
        47: .line 629
            invokeinterface com.sun.media.sound.ModelOscillatorStream.noteOn:(Ljavax/sound/midi/MidiChannel;Ljavax/sound/midi/VoiceStatus;II)V
        end local 1 // com.sun.media.sound.ModelOscillator osc
        48: .line 634
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.audiostarted:Z
            ifeq 135
        49: .line 635
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.portamento:Z
            ifeq 69
        50: .line 636
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tunedKey:D
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            daload
            ldc 128.0
            dmul
            dsub
            dstore 1 /* note_delta */
        start local 1 // double note_delta
        51: .line 637
            dload 1 /* note_delta */
            invokestatic java.lang.Math.abs:(D)D
            dstore 3 /* note_delta_a */
        start local 3 // double note_delta_a
        52: .line 638
            dload 3 /* note_delta_a */
            ldc 1.0E-10
            dcmpg
            ifge 56
        53: .line 639
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.tunedKey:D
            ldc 0.0078125
            dmul
            dastore
        54: .line 640
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.portamento:Z
        55: .line 641
            goto 61
        56: .line 642
      StackMap locals: double double
      StackMap stack:
            dload 3 /* note_delta_a */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.portamento_time:D
            dcmpl
            ifle 60
        57: .line 643
            dload 1 /* note_delta */
            invokestatic java.lang.Math.signum:(D)D
        58: .line 644
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.softchannel:Lcom/sun/media/sound/SoftChannel;
            getfield com.sun.media.sound.SoftChannel.portamento_time:D
        59: .line 643
            dmul
            dstore 1 /* note_delta */
        60: .line 645
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_noteon_keynumber:[D
            iconst_0
            dup2
            daload
            dload 1 /* note_delta */
            ldc 0.0078125
            dmul
            dadd
            dastore
        61: .line 648
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.midi_connections:[[I
            iconst_4
            aaload
            astore 5 /* c */
        start local 5 // int[] c
        62: .line 649
            aload 5 /* c */
            ifnonnull 64
        63: .line 650
            return
        64: .line 651
      StackMap locals: int[]
      StackMap stack:
            iconst_0
            istore 6 /* i */
        start local 6 // int i
        65: goto 68
        66: .line 652
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 5 /* c */
            iload 6 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        67: .line 651
            iinc 6 /* i */ 1
      StackMap locals:
      StackMap stack:
        68: iload 6 /* i */
            aload 5 /* c */
            arraylength
            if_icmplt 66
        end local 6 // int i
        end local 5 // int[] c
        end local 3 // double note_delta_a
        end local 1 // double note_delta
        69: .line 655
      StackMap locals: com.sun.media.sound.SoftVoice
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.eg:Lcom/sun/media/sound/SoftProcess;
            invokeinterface com.sun.media.sound.SoftProcess.processControlLogic:()V
        70: .line 656
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.lfo:Lcom/sun/media/sound/SoftProcess;
            invokeinterface com.sun.media.sound.SoftProcess.processControlLogic:()V
        71: .line 658
            iconst_0
            istore 1 /* i */
        start local 1 // int i
        72: goto 75
        73: .line 659
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.ctrl_connections:[I
            iload 1 /* i */
            iaload
            invokevirtual com.sun.media.sound.SoftVoice.processConnection:(I)V
        74: .line 658
            iinc 1 /* i */ 1
      StackMap locals:
      StackMap stack:
        75: iload 1 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.performer:Lcom/sun/media/sound/SoftPerformer;
            getfield com.sun.media.sound.SoftPerformer.ctrl_connections:[I
            arraylength
            if_icmplt 73
        end local 1 // int i
        76: .line 661
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_osc_pitch:[D
            iconst_0
            daload
            d2f
            invokeinterface com.sun.media.sound.ModelOscillatorStream.setPitch:(F)V
        77: .line 663
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_type:[D
            iconst_0
            daload
            d2i
            istore 1 /* filter_type */
        start local 1 // int filter_type
        78: .line 666
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_freq:[D
            iconst_0
            daload
            ldc 13500.0
            dcmpl
            ifne 81
        79: .line 667
            ldc 19912.126958213175
            dstore 2 /* filter_freq */
        start local 2 // double filter_freq
        80: goto 86
        end local 2 // double filter_freq
        81: .line 669
      StackMap locals:
      StackMap stack:
            ldc 440.0
        82: .line 670
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_freq:[D
            iconst_0
            daload
            ldc 6900.0
            dsub
        83: .line 671
            ldc 2.0
            invokestatic java.lang.Math.log:(D)D
            ldc 1200.0
            ddiv
        84: .line 670
            dmul
        85: .line 669
            invokestatic java.lang.Math.exp:(D)D
            dmul
            dstore 2 /* filter_freq */
        start local 2 // double filter_freq
        86: .line 680
      StackMap locals: double
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_q:[D
            iconst_0
            daload
            ldc 10.0
            ddiv
            dstore 4 /* q */
        start local 4 // double q
        87: .line 681
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
            iload 1 /* filter_type */
            invokevirtual com.sun.media.sound.SoftFilter.setFilterType:(I)V
        88: .line 682
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
            dload 2 /* filter_freq */
            invokevirtual com.sun.media.sound.SoftFilter.setFrequency:(D)V
        89: .line 683
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
            dload 4 /* q */
            invokevirtual com.sun.media.sound.SoftFilter.setResonance:(D)V
        90: .line 684
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
            iload 1 /* filter_type */
            invokevirtual com.sun.media.sound.SoftFilter.setFilterType:(I)V
        91: .line 685
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
            dload 2 /* filter_freq */
            invokevirtual com.sun.media.sound.SoftFilter.setFrequency:(D)V
        92: .line 686
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
            dload 4 /* q */
            invokevirtual com.sun.media.sound.SoftFilter.setResonance:(D)V
        93: .line 692
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_attenuation:F
            fneg
            f2d
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            daload
            dadd
            ldc 10.0
            invokestatic java.lang.Math.log:(D)D
            ldc 200.0
            ddiv
            dmul
        94: .line 691
            invokestatic java.lang.Math.exp:(D)D
            d2f
            fstore 6 /* gain */
        start local 6 // float gain
        95: .line 694
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_gain:[D
            iconst_0
            daload
            ldc -960.0
            dcmpg
            ifgt 97
        96: .line 695
            fconst_0
            fstore 6 /* gain */
        97: .line 697
      StackMap locals: double float
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.soundoff:Z
            ifeq 100
        98: .line 698
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.stopping:Z
        99: .line 699
            fconst_0
            fstore 6 /* gain */
       100: .line 706
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 6 /* gain */
            f2d
            invokestatic java.lang.Math.sqrt:(D)D
            ldc 128.0
            dmul
            d2i
            putfield com.sun.media.sound.SoftVoice.volume:I
       101: .line 710
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_pan:[D
            iconst_0
            daload
            ldc 0.001
            dmul
            dstore 7 /* pan */
        start local 7 // double pan
       102: .line 712
            dload 7 /* pan */
            dconst_0
            dcmpg
            ifge 104
       103: .line 713
            dconst_0
            dstore 7 /* pan */
            goto 106
       104: .line 714
      StackMap locals: double
      StackMap stack:
            dload 7 /* pan */
            dconst_1
            dcmpl
            ifle 106
       105: .line 715
            dconst_1
            dstore 7 /* pan */
       106: .line 717
      StackMap locals:
      StackMap stack:
            dload 7 /* pan */
            ldc 0.5
            dcmpl
            ifne 110
       107: .line 718
            aload 0 /* this */
            fload 6 /* gain */
            ldc 0.70710677
            fmul
            putfield com.sun.media.sound.SoftVoice.out_mixer_left:F
       108: .line 719
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            putfield com.sun.media.sound.SoftVoice.out_mixer_right:F
       109: .line 720
            goto 112
       110: .line 721
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fload 6 /* gain */
            dload 7 /* pan */
            ldc 3.141592653589793
            dmul
            ldc 0.5
            dmul
            invokestatic java.lang.Math.cos:(D)D
            d2f
            fmul
            putfield com.sun.media.sound.SoftVoice.out_mixer_left:F
       111: .line 722
            aload 0 /* this */
            fload 6 /* gain */
            dload 7 /* pan */
            ldc 3.141592653589793
            dmul
            ldc 0.5
            dmul
            invokestatic java.lang.Math.sin:(D)D
            d2f
            fmul
            putfield com.sun.media.sound.SoftVoice.out_mixer_right:F
       112: .line 725
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_balance:[D
            iconst_0
            daload
            ldc 0.001
            dmul
            dstore 9 /* balance */
        start local 9 // double balance
       113: .line 726
            dload 9 /* balance */
            ldc 0.5
            dcmpl
            ifeq 117
       114: .line 727
            dload 9 /* balance */
            ldc 0.5
            dcmpl
            ifle 116
       115: .line 728
            aload 0 /* this */
            dup
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            f2d
            dconst_1
            dload 9 /* balance */
            dsub
            ldc 2.0
            dmul
            dmul
            d2f
            putfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            goto 117
       116: .line 730
      StackMap locals: double
      StackMap stack:
            aload 0 /* this */
            dup
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
            f2d
            dload 9 /* balance */
            ldc 2.0
            dmul
            dmul
            d2f
            putfield com.sun.media.sound.SoftVoice.out_mixer_right:F
       117: .line 733
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            getfield com.sun.media.sound.SoftSynthesizer.reverb_on:Z
            ifeq 121
       118: .line 734
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_reverb:[D
            iconst_0
            daload
            ldc 0.001
            dmul
            d2f
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
       119: .line 735
            aload 0 /* this */
            dup
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
            fload 6 /* gain */
            fmul
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
       120: .line 736
            goto 122
       121: .line 737
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
       122: .line 738
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.synthesizer:Lcom/sun/media/sound/SoftSynthesizer;
            getfield com.sun.media.sound.SoftSynthesizer.chorus_on:Z
            ifeq 126
       123: .line 739
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_chorus:[D
            iconst_0
            daload
            ldc 0.001
            dmul
            d2f
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
       124: .line 740
            aload 0 /* this */
            dup
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
            fload 6 /* gain */
            fmul
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
       125: .line 741
            goto 127
       126: .line 742
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            fconst_0
            putfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
       127: .line 743
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_mixer_active:[D
            iconst_0
            daload
            ldc 0.5
            dcmpg
            ifge 128
            iconst_1
            goto 129
      StackMap locals:
      StackMap stack: com.sun.media.sound.SoftVoice
       128: iconst_0
      StackMap locals: com.sun.media.sound.SoftVoice int double double float double double
      StackMap stack: com.sun.media.sound.SoftVoice int
       129: putfield com.sun.media.sound.SoftVoice.out_mixer_end:Z
       130: .line 745
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.on:Z
            ifne 135
       131: .line 746
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream_off_transmitted:Z
            ifne 135
       132: .line 747
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.osc_stream_off_transmitted:Z
       133: .line 748
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            ifnull 135
       134: .line 749
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.noteOff_velocity:I
            invokeinterface com.sun.media.sound.ModelOscillatorStream.noteOff:(I)V
        end local 9 // double balance
        end local 7 // double pan
        end local 6 // float gain
        end local 4 // double q
        end local 2 // double filter_freq
        end local 1 // int filter_type
       135: .line 753
      StackMap locals: com.sun.media.sound.SoftVoice
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.started:Z
            ifeq 141
       136: .line 754
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
       137: .line 755
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
       138: .line 756
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
       139: .line 757
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
       140: .line 758
            aload 0 /* this */
            iconst_0
            putfield com.sun.media.sound.SoftVoice.started:Z
       141: .line 761
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0  142     0          this  Lcom/sun/media/sound/SoftVoice;
           30   48     1           osc  Lcom/sun/media/sound/ModelOscillator;
           51   69     1    note_delta  D
           52   69     3  note_delta_a  D
           62   69     5             c  [I
           65   69     6             i  I
           72   76     1             i  I
           78  135     1   filter_type  I
           80   81     2   filter_freq  D
           86  135     2   filter_freq  D
           87  135     4             q  D
           95  135     6          gain  F
          102  135     7           pan  D
          113  135     9       balance  D
      Exception table:
        from    to  target  type
          10    11      12  Class java.io.IOException
          32    36      37  Class java.io.IOException

  void mixAudioStream(com.sun.media.sound.SoftAudioBuffer, com.sun.media.sound.SoftAudioBuffer, com.sun.media.sound.SoftAudioBuffer, float, float);
    descriptor: (Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
    flags: (0x0000) 
    Code:
      stack=5, locals=13, args_size=6
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.SoftAudioBuffer in
        start local 2 // com.sun.media.sound.SoftAudioBuffer out
        start local 3 // com.sun.media.sound.SoftAudioBuffer dout
        start local 4 // float amp_from
        start local 5 // float amp_to
         0: .line 766
            aload 1 /* in */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.getSize:()I
            istore 6 /* bufferlen */
        start local 6 // int bufferlen
         1: .line 767
            fload 4 /* amp_from */
            f2d
            ldc 1.0E-9
            dcmpg
            ifge 3
            fload 5 /* amp_to */
            f2d
            ldc 1.0E-9
            dcmpg
            ifge 3
         2: .line 768
            return
         3: .line 769
      StackMap locals: int
      StackMap stack:
            aload 3 /* dout */
            ifnull 39
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.delay:I
            ifeq 39
         4: .line 771
            fload 4 /* amp_from */
            fload 5 /* amp_to */
            fcmpl
            ifne 20
         5: .line 772
            aload 2 /* out */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 7 /* fout */
        start local 7 // float[] fout
         6: .line 773
            aload 1 /* in */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 8 /* fin */
        start local 8 // float[] fin
         7: .line 774
            iconst_0
            istore 9 /* j */
        start local 9 // int j
         8: .line 775
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.delay:I
            istore 10 /* i */
        start local 10 // int i
         9: goto 12
        10: .line 776
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int float[] float[] int int
      StackMap stack:
            aload 7 /* fout */
            iload 10 /* i */
            dup2
            faload
            aload 8 /* fin */
            iload 9 /* j */
            iinc 9 /* j */ 1
            faload
            fload 5 /* amp_to */
            fmul
            fadd
            fastore
        11: .line 775
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        12: iload 10 /* i */
            iload 6 /* bufferlen */
            if_icmplt 10
        end local 10 // int i
        13: .line 777
            aload 3 /* dout */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 7 /* fout */
        14: .line 778
            iconst_0
            istore 10 /* i */
        start local 10 // int i
        15: goto 18
        16: .line 779
      StackMap locals:
      StackMap stack:
            aload 7 /* fout */
            iload 10 /* i */
            dup2
            faload
            aload 8 /* fin */
            iload 9 /* j */
            iinc 9 /* j */ 1
            faload
            fload 5 /* amp_to */
            fmul
            fadd
            fastore
        17: .line 778
            iinc 10 /* i */ 1
      StackMap locals:
      StackMap stack:
        18: iload 10 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.delay:I
            if_icmplt 16
        end local 10 // int i
        end local 9 // int j
        end local 8 // float[] fin
        end local 7 // float[] fout
        19: .line 780
            goto 58
        20: .line 781
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int
      StackMap stack:
            fload 4 /* amp_from */
            fstore 7 /* amp */
        start local 7 // float amp
        21: .line 782
            fload 5 /* amp_to */
            fload 4 /* amp_from */
            fsub
            iload 6 /* bufferlen */
            i2f
            fdiv
            fstore 8 /* amp_delta */
        start local 8 // float amp_delta
        22: .line 783
            aload 2 /* out */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 9 /* fout */
        start local 9 // float[] fout
        23: .line 784
            aload 1 /* in */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 10 /* fin */
        start local 10 // float[] fin
        24: .line 785
            iconst_0
            istore 11 /* j */
        start local 11 // int j
        25: .line 786
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.delay:I
            istore 12 /* i */
        start local 12 // int i
        26: goto 30
        27: .line 787
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int float float float[] float[] int int
      StackMap stack:
            fload 7 /* amp */
            fload 8 /* amp_delta */
            fadd
            fstore 7 /* amp */
        28: .line 788
            aload 9 /* fout */
            iload 12 /* i */
            dup2
            faload
            aload 10 /* fin */
            iload 11 /* j */
            iinc 11 /* j */ 1
            faload
            fload 7 /* amp */
            fmul
            fadd
            fastore
        29: .line 786
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        30: iload 12 /* i */
            iload 6 /* bufferlen */
            if_icmplt 27
        end local 12 // int i
        31: .line 790
            aload 3 /* dout */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 9 /* fout */
        32: .line 791
            iconst_0
            istore 12 /* i */
        start local 12 // int i
        33: goto 37
        34: .line 792
      StackMap locals:
      StackMap stack:
            fload 7 /* amp */
            fload 8 /* amp_delta */
            fadd
            fstore 7 /* amp */
        35: .line 793
            aload 9 /* fout */
            iload 12 /* i */
            dup2
            faload
            aload 10 /* fin */
            iload 11 /* j */
            iinc 11 /* j */ 1
            faload
            fload 7 /* amp */
            fmul
            fadd
            fastore
        36: .line 791
            iinc 12 /* i */ 1
      StackMap locals:
      StackMap stack:
        37: iload 12 /* i */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.delay:I
            if_icmplt 34
        end local 12 // int i
        end local 11 // int j
        end local 10 // float[] fin
        end local 9 // float[] fout
        end local 8 // float amp_delta
        end local 7 // float amp
        38: .line 796
            goto 58
        39: .line 799
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int
      StackMap stack:
            fload 4 /* amp_from */
            fload 5 /* amp_to */
            fcmpl
            ifne 48
        40: .line 800
            aload 2 /* out */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 7 /* fout */
        start local 7 // float[] fout
        41: .line 801
            aload 1 /* in */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 8 /* fin */
        start local 8 // float[] fin
        42: .line 802
            iconst_0
            istore 9 /* i */
        start local 9 // int i
        43: goto 46
        44: .line 803
      StackMap locals: float[] float[] int
      StackMap stack:
            aload 7 /* fout */
            iload 9 /* i */
            dup2
            faload
            aload 8 /* fin */
            iload 9 /* i */
            faload
            fload 5 /* amp_to */
            fmul
            fadd
            fastore
        45: .line 802
            iinc 9 /* i */ 1
      StackMap locals:
      StackMap stack:
        46: iload 9 /* i */
            iload 6 /* bufferlen */
            if_icmplt 44
        end local 9 // int i
        end local 8 // float[] fin
        end local 7 // float[] fout
        47: .line 804
            goto 58
        48: .line 805
      StackMap locals:
      StackMap stack:
            fload 4 /* amp_from */
            fstore 7 /* amp */
        start local 7 // float amp
        49: .line 806
            fload 5 /* amp_to */
            fload 4 /* amp_from */
            fsub
            iload 6 /* bufferlen */
            i2f
            fdiv
            fstore 8 /* amp_delta */
        start local 8 // float amp_delta
        50: .line 807
            aload 2 /* out */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 9 /* fout */
        start local 9 // float[] fout
        51: .line 808
            aload 1 /* in */
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            astore 10 /* fin */
        start local 10 // float[] fin
        52: .line 809
            iconst_0
            istore 11 /* i */
        start local 11 // int i
        53: goto 57
        54: .line 810
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int float float float[] float[] int
      StackMap stack:
            fload 7 /* amp */
            fload 8 /* amp_delta */
            fadd
            fstore 7 /* amp */
        55: .line 811
            aload 9 /* fout */
            iload 11 /* i */
            dup2
            faload
            aload 10 /* fin */
            iload 11 /* i */
            faload
            fload 7 /* amp */
            fmul
            fadd
            fastore
        56: .line 809
            iinc 11 /* i */ 1
      StackMap locals:
      StackMap stack:
        57: iload 11 /* i */
            iload 6 /* bufferlen */
            if_icmplt 54
        end local 11 // int i
        end local 10 // float[] fin
        end local 9 // float[] fout
        end local 8 // float amp_delta
        end local 7 // float amp
        58: .line 816
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer float float int
      StackMap stack:
            return
        end local 6 // int bufferlen
        end local 5 // float amp_to
        end local 4 // float amp_from
        end local 3 // com.sun.media.sound.SoftAudioBuffer dout
        end local 2 // com.sun.media.sound.SoftAudioBuffer out
        end local 1 // com.sun.media.sound.SoftAudioBuffer in
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   59     0       this  Lcom/sun/media/sound/SoftVoice;
            0   59     1         in  Lcom/sun/media/sound/SoftAudioBuffer;
            0   59     2        out  Lcom/sun/media/sound/SoftAudioBuffer;
            0   59     3       dout  Lcom/sun/media/sound/SoftAudioBuffer;
            0   59     4   amp_from  F
            0   59     5     amp_to  F
            1   59     6  bufferlen  I
            6   19     7       fout  [F
            7   19     8        fin  [F
            8   19     9          j  I
            9   13    10          i  I
           15   19    10          i  I
           21   38     7        amp  F
           22   38     8  amp_delta  F
           23   38     9       fout  [F
           24   38    10        fin  [F
           25   38    11          j  I
           26   31    12          i  I
           33   38    12          i  I
           41   47     7       fout  [F
           42   47     8        fin  [F
           43   47     9          i  I
           49   58     7        amp  F
           50   58     8  amp_delta  F
           51   58     9       fout  [F
           52   58    10        fin  [F
           53   58    11          i  I
    MethodParameters:
          Name  Flags
      in        
      out       
      dout      
      amp_from  
      amp_to    

  void processAudioLogic(com.sun.media.sound.SoftAudioBuffer[]);
    descriptor: ([Lcom/sun/media/sound/SoftAudioBuffer;)V
    flags: (0x0000) 
    Code:
      stack=7, locals=15, args_size=2
        start local 0 // com.sun.media.sound.SoftVoice this
        start local 1 // com.sun.media.sound.SoftAudioBuffer[] buffer
         0: .line 819
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.audiostarted:Z
            ifne 2
         1: .line 820
            return
         2: .line 822
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            iconst_0
            aaload
            invokevirtual com.sun.media.sound.SoftAudioBuffer.getSize:()I
            istore 2 /* bufferlen */
        start local 2 // int bufferlen
         3: .line 825
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            iconst_0
            aload 1 /* buffer */
            bipush 10
            aaload
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            aastore
         4: .line 826
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.nrofchannels:I
            iconst_1
            if_icmpeq 6
         5: .line 827
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            iconst_1
            aload 1 /* buffer */
            bipush 11
            aaload
            invokevirtual com.sun.media.sound.SoftAudioBuffer.array:()[F
            aastore
         6: .line 828
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream:Lcom/sun/media/sound/ModelOscillatorStream;
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            iconst_0
            iload 2 /* bufferlen */
            invokeinterface com.sun.media.sound.ModelOscillatorStream.read:([[FII)I
            istore 3 /* ret */
        start local 3 // int ret
         7: .line 829
            iload 3 /* ret */
            iconst_m1
            if_icmpne 10
         8: .line 830
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.stopping:Z
         9: .line 831
            return
        10: .line 833
      StackMap locals: int
      StackMap stack:
            iload 3 /* ret */
            iload 2 /* bufferlen */
            if_icmpeq 16
        11: .line 834
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            iconst_0
            aaload
            iload 3 /* ret */
            iload 2 /* bufferlen */
            fconst_0
            invokestatic java.util.Arrays.fill:([FIIF)V
        12: .line 835
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.nrofchannels:I
            iconst_1
            if_icmpeq 16
        13: .line 836
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_buff:[[F
            iconst_1
            aaload
            iload 3 /* ret */
            iload 2 /* bufferlen */
            fconst_0
            invokestatic java.util.Arrays.fill:([FIIF)V
        end local 3 // int ret
        14: .line 839
            goto 16
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer[] int
      StackMap stack: java.io.IOException
        15: pop
        16: .line 843
      StackMap locals:
      StackMap stack:
            aload 1 /* buffer */
            iconst_0
            aaload
            astore 3 /* left */
        start local 3 // com.sun.media.sound.SoftAudioBuffer left
        17: .line 844
            aload 1 /* buffer */
            iconst_1
            aaload
            astore 4 /* right */
        start local 4 // com.sun.media.sound.SoftAudioBuffer right
        18: .line 845
            aload 1 /* buffer */
            iconst_2
            aaload
            astore 5 /* mono */
        start local 5 // com.sun.media.sound.SoftAudioBuffer mono
        19: .line 846
            aload 1 /* buffer */
            bipush 6
            aaload
            astore 6 /* eff1 */
        start local 6 // com.sun.media.sound.SoftAudioBuffer eff1
        20: .line 847
            aload 1 /* buffer */
            bipush 7
            aaload
            astore 7 /* eff2 */
        start local 7 // com.sun.media.sound.SoftAudioBuffer eff2
        21: .line 849
            aload 1 /* buffer */
            iconst_3
            aaload
            astore 8 /* dleft */
        start local 8 // com.sun.media.sound.SoftAudioBuffer dleft
        22: .line 850
            aload 1 /* buffer */
            iconst_4
            aaload
            astore 9 /* dright */
        start local 9 // com.sun.media.sound.SoftAudioBuffer dright
        23: .line 851
            aload 1 /* buffer */
            iconst_5
            aaload
            astore 10 /* dmono */
        start local 10 // com.sun.media.sound.SoftAudioBuffer dmono
        24: .line 852
            aload 1 /* buffer */
            bipush 8
            aaload
            astore 11 /* deff1 */
        start local 11 // com.sun.media.sound.SoftAudioBuffer deff1
        25: .line 853
            aload 1 /* buffer */
            bipush 9
            aaload
            astore 12 /* deff2 */
        start local 12 // com.sun.media.sound.SoftAudioBuffer deff2
        26: .line 855
            aload 1 /* buffer */
            bipush 10
            aaload
            astore 13 /* leftdry */
        start local 13 // com.sun.media.sound.SoftAudioBuffer leftdry
        27: .line 856
            aload 1 /* buffer */
            bipush 11
            aaload
            astore 14 /* rightdry */
        start local 14 // com.sun.media.sound.SoftAudioBuffer rightdry
        28: .line 858
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.osc_stream_nrofchannels:I
            iconst_1
            if_icmpne 30
        29: .line 859
            aconst_null
            astore 14 /* rightdry */
        30: .line 861
      StackMap locals: com.sun.media.sound.SoftVoice com.sun.media.sound.SoftAudioBuffer[] int com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer com.sun.media.sound.SoftAudioBuffer
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.co_filter_freq:[D
            iconst_0
            daload
            invokestatic java.lang.Double.isInfinite:(D)Z
            ifne 34
        31: .line 862
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_left:Lcom/sun/media/sound/SoftFilter;
            aload 13 /* leftdry */
            invokevirtual com.sun.media.sound.SoftFilter.processAudio:(Lcom/sun/media/sound/SoftAudioBuffer;)V
        32: .line 863
            aload 14 /* rightdry */
            ifnull 34
        33: .line 864
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.filter_right:Lcom/sun/media/sound/SoftFilter;
            aload 14 /* rightdry */
            invokevirtual com.sun.media.sound.SoftFilter.processAudio:(Lcom/sun/media/sound/SoftAudioBuffer;)V
        34: .line 867
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.nrofchannels:I
            iconst_1
            if_icmpne 42
        35: .line 868
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
            fadd
            fconst_2
            fdiv
            putfield com.sun.media.sound.SoftVoice.out_mixer_left:F
        36: .line 869
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 3 /* left */
            aload 8 /* dleft */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        37: .line 870
            aload 14 /* rightdry */
            ifnull 56
        38: .line 871
            aload 0 /* this */
            aload 14 /* rightdry */
            aload 3 /* left */
            aload 8 /* dleft */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
        39: .line 872
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
        40: .line 871
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        41: .line 873
            goto 56
        42: .line 874
      StackMap locals:
      StackMap stack:
            aload 14 /* rightdry */
            ifnonnull 47
        43: .line 875
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
            fcmpl
            ifne 47
        44: .line 876
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
            fcmpl
            ifne 47
        45: .line 878
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 5 /* mono */
            aload 10 /* dmono */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        46: .line 879
            goto 56
        47: .line 882
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 3 /* left */
            aload 8 /* dleft */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        48: .line 883
            aload 14 /* rightdry */
            ifnull 53
        49: .line 884
            aload 0 /* this */
            aload 14 /* rightdry */
            aload 4 /* right */
            aload 9 /* dright */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
        50: .line 885
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
        51: .line 884
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        52: .line 885
            goto 56
        53: .line 887
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 4 /* right */
            aload 9 /* dright */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
        54: .line 888
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
        55: .line 887
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        56: .line 892
      StackMap locals:
      StackMap stack:
            aload 14 /* rightdry */
            ifnonnull 64
        57: .line 893
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 6 /* eff1 */
            aload 11 /* deff1 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
        58: .line 894
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
        59: .line 893
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        60: .line 895
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 7 /* eff2 */
            aload 12 /* deff2 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
        61: .line 896
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
        62: .line 895
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        63: .line 897
            goto 76
        64: .line 898
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 6 /* eff1 */
            aload 11 /* deff1 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
            ldc 0.5
            fmul
        65: .line 899
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
            ldc 0.5
            fmul
        66: .line 898
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        67: .line 900
            aload 0 /* this */
            aload 13 /* leftdry */
            aload 7 /* eff2 */
            aload 12 /* deff2 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
            ldc 0.5
            fmul
        68: .line 901
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
            ldc 0.5
            fmul
        69: .line 900
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        70: .line 902
            aload 0 /* this */
            aload 14 /* rightdry */
            aload 6 /* eff1 */
            aload 11 /* deff1 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
            ldc 0.5
            fmul
        71: .line 903
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
            ldc 0.5
            fmul
        72: .line 902
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        73: .line 904
            aload 0 /* this */
            aload 14 /* rightdry */
            aload 7 /* eff2 */
            aload 12 /* deff2 */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
            ldc 0.5
            fmul
        74: .line 905
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
            ldc 0.5
            fmul
        75: .line 904
            invokevirtual com.sun.media.sound.SoftVoice.mixAudioStream:(Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;Lcom/sun/media/sound/SoftAudioBuffer;FF)V
        76: .line 908
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_left:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_left:F
        77: .line 909
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_right:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_right:F
        78: .line 910
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect1:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect1:F
        79: .line 911
            aload 0 /* this */
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_effect2:F
            putfield com.sun.media.sound.SoftVoice.last_out_mixer_effect2:F
        80: .line 913
            aload 0 /* this */
            getfield com.sun.media.sound.SoftVoice.out_mixer_end:Z
            ifeq 82
        81: .line 914
            aload 0 /* this */
            iconst_1
            putfield com.sun.media.sound.SoftVoice.stopping:Z
        82: .line 917
      StackMap locals:
      StackMap stack:
            return
        end local 14 // com.sun.media.sound.SoftAudioBuffer rightdry
        end local 13 // com.sun.media.sound.SoftAudioBuffer leftdry
        end local 12 // com.sun.media.sound.SoftAudioBuffer deff2
        end local 11 // com.sun.media.sound.SoftAudioBuffer deff1
        end local 10 // com.sun.media.sound.SoftAudioBuffer dmono
        end local 9 // com.sun.media.sound.SoftAudioBuffer dright
        end local 8 // com.sun.media.sound.SoftAudioBuffer dleft
        end local 7 // com.sun.media.sound.SoftAudioBuffer eff2
        end local 6 // com.sun.media.sound.SoftAudioBuffer eff1
        end local 5 // com.sun.media.sound.SoftAudioBuffer mono
        end local 4 // com.sun.media.sound.SoftAudioBuffer right
        end local 3 // com.sun.media.sound.SoftAudioBuffer left
        end local 2 // int bufferlen
        end local 1 // com.sun.media.sound.SoftAudioBuffer[] buffer
        end local 0 // com.sun.media.sound.SoftVoice this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   83     0       this  Lcom/sun/media/sound/SoftVoice;
            0   83     1     buffer  [Lcom/sun/media/sound/SoftAudioBuffer;
            3   83     2  bufferlen  I
            7   14     3        ret  I
           17   83     3       left  Lcom/sun/media/sound/SoftAudioBuffer;
           18   83     4      right  Lcom/sun/media/sound/SoftAudioBuffer;
           19   83     5       mono  Lcom/sun/media/sound/SoftAudioBuffer;
           20   83     6       eff1  Lcom/sun/media/sound/SoftAudioBuffer;
           21   83     7       eff2  Lcom/sun/media/sound/SoftAudioBuffer;
           22   83     8      dleft  Lcom/sun/media/sound/SoftAudioBuffer;
           23   83     9     dright  Lcom/sun/media/sound/SoftAudioBuffer;
           24   83    10      dmono  Lcom/sun/media/sound/SoftAudioBuffer;
           25   83    11      deff1  Lcom/sun/media/sound/SoftAudioBuffer;
           26   83    12      deff2  Lcom/sun/media/sound/SoftAudioBuffer;
           27   83    13    leftdry  Lcom/sun/media/sound/SoftAudioBuffer;
           28   83    14   rightdry  Lcom/sun/media/sound/SoftAudioBuffer;
      Exception table:
        from    to  target  type
           3     9      15  Class java.io.IOException
          10    14      15  Class java.io.IOException
    MethodParameters:
        Name  Flags
      buffer  
}
SourceFile: "SoftVoice.java"
NestMembers:
  com.sun.media.sound.SoftVoice$1  com.sun.media.sound.SoftVoice$2  com.sun.media.sound.SoftVoice$3  com.sun.media.sound.SoftVoice$4
InnerClasses:
  com.sun.media.sound.SoftVoice$1
  com.sun.media.sound.SoftVoice$2
  com.sun.media.sound.SoftVoice$3
  com.sun.media.sound.SoftVoice$4