<!--
    Novation Peak synth profile

     (note) uses CC#38 (data entry LSB) for osc2_modenv2_pitch
     (note) (N)RPN paramMode forced to MSB(-only)
     (note) MTS tuning program nr is shifted by 1. The first tuning table index is not 0 but 1.
     (note) the OSC tuning table selection NRPN message is apparently not handled by the synth (a bug)
     (note) FW2.0: 
              - add Noise mod source
              - add Pan Posn;0123Shpe;AEnv Del;AEnv Hld;AEnv Sus;MEnv1Del;MEnv1Hld;MEnv1Sus;MEnv2Del;MEnv2Hld;MEnv2Sus mod destinations
              - add Rev Size;RevLpass;RevHpass;Del Slew;DelLdamp;DelHdamp;DelWidth;DelRatio;LFO3Rate;LFO4Rate;NoiseLPF;NoiseHPF FX mod destinations
              - add NRPN#03230 AmpEnv Delay (0..127) (off=391)
              - add NRPN#03231 ModEnv1 Delay (0..127) (off=392)
              - add NRPN#03232 ModEnv2 Delay (0..127) (off=393)
              - add NRPN#03234 Anim1Att (0..127) (off=395)
              - add NRPN#03235 Anim1Rel (0..127) (off=396)
              - add NRPN#03236 Anim2Att (0..127) (off=397)
              - add NRPN#03237 Anim2Rel (0..127) (off=398)
              - add NRPN#52 SpreadMode (0..3, Diverge;Alternt;Diverge2;NoteVal) (off=156)
              - add NRPN#51 PanPosn (-64..+63) (off=155)
              - add NRPN#3238 LFO3 Phase (0..120, Free;0deg,3deg,..357deg) (off=400)
              - add NRPN#3239 LFO3 Slew (0..127) (off=400)
              - add NRPN#3240 LFO3 FadeTime (0..127) (off=401)
              - add NRPN#3241 LFO4 Phase (0..120, Free;0deg,3deg,..357deg) (off=402)
              - add NRPN#3242 LFO4 Slew (0..127) (off=403)
              - add NRPN#3243 LFO4 FadeTime (0..127) (off=404)
              - add NRPN#115 Chorus Mode (0..2, Chorus;Flanger;Phlanger) (off=249)
              - add NRPN#98 Delay TimeMode (0..4, "Normal;Double;Treble;QuadLoFi;HexVLoFi") (off=227)
              - add NRPN#3233 ArpChance (10..100) (off=394)
              - add Chord2 Arp Type
      (note) hanging notes issue when channel pressure occurs immediately before note off (in same MIDI buffer)
               => filterNoteOffChannelPressure=1
               (note) notes are lost when channel pressure occurs immediately before note on (in same MIDI buffer)
                       (however: channel pressure events are always emitted after any note-ons)

    Changed: 20Jan2019, 22Jan2019, 23Jan2019, 24Jan2019, 26Jan2019, 27Jan2019, 07Feb2019
             08Feb2019, 09Feb2019, 18Feb2019, 01Apr2022, 18Apr2022, 21Apr2022, 24Apr2022
             29Sep2022, 25Sep2023
  -->

<MIDISynthProfile
  id="novation_peak"
  caption="Novation Peak"
  inherit=0
  paramMode=MSB
  syxPatchReqMsg="F0 00 20 29 01 10 00 7E 40 00 00 00 00 00 F7"
  syxPatchSize=525
  tsl="syntheditor_generic.tsl"
  dataClass="MIDISynthProfileDataGeneric"
  formClass="EditMIDISynthFormGeneric"
  syxPatchInit="00 20 29 01 10 00 7e 00 00 00 00 00 00 00 00 49 6e 69 74 20 50 61 74 63 68 20 20 20 20 20 20 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 03 00 19 00 40 3c 40 00 00 00 00 7f 00 00 40 40 00 40 00 40 40 00 02 04 00 40 40 40 00 00 40 00 4c 00 00 40 40 00 40 00 40 40 00 02 04 00 40 40 40 00 00 40 00 4c 00 00 40 40 00 40 00 40 40 00 02 04 00 40 40 40 00 00 40 00 4c 00 00 7f 40 00 00 00 00 00 00 00 00 40 7f 7f 7f 00 00 01 00 7f 00 7f 40 40 00 00 01 40 40 00 00 00 40 00 00 00 02 5a 7f 28 40 00 00 00 00 02 4b 23 2d 40 01 00 00 02 4b 23 2d 40 01 00 00 00 40 00 10 00 00 00 00 00 01 00 00 00 00 00 40 00 10 00 00 00 00 00 01 00 00 00 00 00 00 00 00 00 00 40 00 7f 00 07 40 55 00 20 00 00 00 00 01 5a 32 01 40 40 04 4a 00 28 00 00 01 14 40 40 5a 02 00 3c 00 03 00 00 00 40 32 00 00 00 00 00 00 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 00 40 00 00 40 11 00 40 11 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00"
  defRandLockMask="0b1000000001"
  numMIDITunings=16
  mtsProgramOffset=1
  canDoSingleNoteTuning=0
  syxPatchNameOff=15
  syxPatchNameLen=16
  syxPatchEnc=PARAMS
  filterNoteOffChannelPressure=1
  runningStatus=1
  >

  <!-- Variables -->
  <var id=WAVES
       value="Sine;Tri;Saw;Pulse;More/WT"
       />

  <var id=WAVETABLES
       value="BS sine;Random;Zing;Tubey;Octaves;Wobbler;Chords;Didgery;Harsh;Organ;E.Piano;VoxOooEe;VoxYahEe;Winds;SoftClav;String;BassOrgn;Acid;Buzzy;Carousel;Choral;Climbing;CoinFlip;Deep;Dub;Eee;Eris;Flame;Further;GlassSaw;Glassy;Granular;Grime;Grow;Heavy;Hedge;Hungry;Ladders;Lead;Modeling;Modem;Monster;Screech;SeaBase;Shmorgan;Spirals;Steel;Sunrise;Swell;Thicker;Thinner;Tides;Tokyo;Tops;V.Chord;Variance;Vocaloid;Vowelled;WeirdVox;Yeah;*User 1;*User 2;*User 3;*User 4;*User 5;*User 6;*User 7;*User 8;*User 9;*User 10"
       />

  <var id=OSC_RANGES
       value="16';8';4';2'"
       />

  <var id=OSC_SHAPER_SOURCES
       value="Manual;ModEnv1;Lfo1"
       />

  <var id=OSC_FIXED_NOTES
       value="Off;C-2;C#-2;D-2;D#-2;E-2;F-2;F#-2;G-2;G#-2;A-2;A#-2;B-2;C-1;C#-1;D-1;D#-1;E-1;F-1;F#-1;G-1;G#-1;A-1;A#-1;B-1;C 0;C# 0;D 0;D# 0;E 0;F 0;F# 0;G 0;G# 0;A 0;A# 0;B 0;C 1;C# 1;D 1;D# 1;E 1;F 1;F# 1;G 1;G# 1;A 1;A# 1;B 1;C 2;C# 2;D 2;D# 2;E 2;F 2;F# 2;G 2;G# 2;A 2;A# 2;B 2;C 3;C# 3;D 3;D# 3;E 3;F 3;F# 3;G 3;G# 3;A 3;A# 3;B 3;C 4;C# 4;D 4;D# 4;E 4;F 4;F# 4;G 4;G# 4;A 4;A# 4;B 4;C 5;C# 5;D 5;D# 5"
       />

  <var id=ENV_REPEAT
       value="Off;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;88;89;90;91;92;93;94;95;96;97;98;99;100;10;102;103;104;105;106;107;108;109;110;111;112;113;114;115;116;117;118;119;120;121;122;123;124;125;126;On"
       />

  <var id=LFO_REPEAT
       value="Off;1;2;3;4;5;6;7;8;9;10;11;12;13;14;15;16;17;18;19;20;21;22;23;24;25;26;27;28;29;30;31;32;33;34;35;36;37;38;39;40;41;42;43;44;45;46;47;48;49;50;51;52;53;54;55;56;57;58;59;60;61;62;63;64;65;66;67;68;69;70;71;72;73;74;75;76;77;78;79;80;81;82;83;84;85;86;87;88;89;90;91;92;93;94;95;96;97;98;99;100;10;102;103;104;105;106;107;108;109;110;111;112;113;114;115;116;117;118;119;120;121;122;123;124;125;126;127"
       />

  <var id=LFO_WAVES
       value="Tri;RampDn;Pulse;Rand S&H"
       />

  <var id=LFO_FADE_MODES
       value="FadeIn;FadeOut;GateIn;GateOut"
       />

  <var id=LFO_RANGE_MODES
       value="Low;High;Sync"
       />

  <var id=LFO12_SYNC_RATES
       value="64 beats;48 beats;42 beats;36 beats;32 beats;30 beats;28 beats;24 beats;24 + 1/3;20 beats;18 + 2/3;18 beats;16 beats;13 + 1/3;12 beats;10 + 2/3;8 beats;6 beats;5 + 1/3;4 beats;3 beats;2 + 2/3;2nd;4th D;1 + 1/3;4th;8th D;4th T;8th;16th D;8th T;16th;16th T;32nd;32nd T"
       />

  <var id=LFO34_SYNC_RATES
       value="Off;64 beats;48 beats;42 beats;36 beats;32 beats;30 beats;28 beats;24 beats;24 + 1/3;20 beats;18 + 2/3;18 beats;16 beats;13 + 1/3;12 beats;10 + 2/3;8 beats;6 beats;5 + 1/3;4 beats;3 beats;2 + 2/3;2nd;4th D;1 + 1/3;4th;8th D;4th T;8th;16th D;8th T;16th;16th T;32nd;32nd T"
       />

  <var id=LFO_PHASE
       value="Free;0deg;3deg;6deg;9deg;12deg;15deg;18deg;21deg;24deg;27deg;30deg;33deg;36deg;39deg;42deg;45deg;48deg;51deg;54deg;57deg;60deg;63deg;66deg;69deg;72deg;75deg;78deg;81deg;84deg;87deg;90deg;93deg;96deg;99deg;102deg;105deg;108deg;111deg;114deg;117deg;120deg;123deg;126deg;129deg;132deg;135deg;138deg;141deg;144deg;147deg;150deg;153deg;156deg;159deg;162deg;165deg;168deg;171deg;174deg;177deg;180deg;183deg;186deg;189deg;192deg;195deg;198deg;201deg;204deg;207deg;210deg;213deg;216deg;219deg;222deg;225deg;228deg;231deg;234deg;237deg;240deg;243deg;246deg;249deg;252deg;255deg;258deg;261deg;264deg;267deg;270deg;273deg;276deg;279deg;282deg;285deg;288deg;291deg;294deg;297deg;300deg;303deg;306deg;309deg;312deg;315deg;318deg;321deg;324deg;327deg;330deg;333deg;336deg;339deg;342deg;345deg;348deg;351deg;354deg;357deg"
       />

  <var id=MOD_SOURCES
       value="Direct;ModWheel;AftTouch;ExprPED1;BrthPED2;Velocity;Keyboard;Lfo1+;Lfo1+/-;Lfo2+;Lfo2+/-;AmpEnv;ModEnv1;ModEnv2;Animate1;Animate2;CV+/-;Lfo3+;Lfo3+/-;Lfo4+;Lfo4+/-;BendWhl+;BendWhl-;Noise"
       />

  <var id=MOD_DESTINATIONS
       value="O123Ptch;Osc1Ptch;Osc2Ptch;Osc3Ptch;Osc1VSnc;Osc2VSnc;Osc3VSnc;Osc1Shpe;Osc2Shpe;Osc3Shpe;Osc1 Lev;Osc2 Lev;Osc3 Lev;NoiseLev;Ring Lev;VcaLevel;Filt Drv;FiltDist;FiltFreq;Filt Res;Lfo1Rate;Lfo2Rate;AmpEnv A;AmpEnv D;AmpEnv R;ModEnv1A;ModEnv1D;ModEnv1R;ModEnv2A;ModEnv2D;ModEnv2R;FM O1>O2;FM O2>O3;FM O3>O1;FM Ns>O1;O3>FiltF;Ns>FiltF;not used;Pan Posn;0123Shpe;AEnv Del;AEnv Hld;AEnv Sus;MEnv1Del;MEnv1Hld;MEnv1Sus;MEnv2Del;MEnv2Hld;MEnv2Sus"
       />

  <var id=FX_MOD_SOURCES
       value="Direct;ModWheel;AftTouch;ExprPED1;BrthPED2;Velocity;Keyboard;Animate1;Animate2;CV+/-;Lfo3+;Lfo3+/-;Lfo4+;Lfo4+/-;BendWhl+;BendWhl-;Noise"
       />

  <var id=FX_MOD_DESTINATIONS
       value="Dist Lev;Chor Lev;ChorRate;Chor Dep;Chor FB;Del Lev;Del Time;Del FB;Rev Lev;Rev Time;RevLdamp;RevHdamp;Rev Size;RevLpass;RevHpass;Del Slew;DelLdamp;DelHdamp;DelWidth;DelRatio;LFO3Rate;LFO4Rate;NoiseLPF;NoiseHPF"
       />


  <!-- (note) there's no modwheel LSB, cc#33 is osc1_lfo1_shape -->
  <cc id=modwheel_msb
      nr=1
      caption="Mod Wheel"
      class=value
      />

  <!-- (note) there's no breathcontrol LSB, cc#34 is osc1_vsync -->
  <cc id=cc_breathcontrol_msb
      nr=2
      caption="Breath Control MSB"
      class=value
      />

  <!-- (note) there's no expr LSB, cc#43 is osc3_modenv2_pitch -->
  <cc id=cc_expr_msb
      nr=11
      caption="Expression MSB"
      class=value
      />

  <cc id=cc_hold1sw
      nr=64
      caption="Hold 1 SW (Sustain)"
      class=value
      celRange=BINARY_127
      celStyle=HI_NIBL
      />

  <cc id=cc_sostenutosw
      ctl=66
      caption="Sostenuto SW"
      class=value
      celRange=BINARY_127
      celStyle=HI_NIBL
      />

  <!-- ?? supported ?? -->
  <cc ctl=4  id=cc_footcontrol_msb     caption="Foot Control MSB"      class=value/>
  <cc ctl=7  id=cc_volume_msb          caption="Volume MSB"            class=value/>

  <cc nr=120 id=cc_allsoundsoff        caption="All Sounds Off"        class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=121 id=cc_ctlreset            caption="Controller Reset"      class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=122 id=cc_localctl            caption="Local Ctl On/Off"      class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=123 id=cc_allnotesoff         caption="All Notes Off"         class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=124 id=cc_omnioff             caption="Omni Off"              class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=125 id=cc_omnion              caption="Omni On"               class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=126 id=cc_mono                caption="Mono On / Poly Off"    class=value celRange=BINARY_127 celStyle=HI_NIBL/>
  <cc nr=127 id=cc_poly                caption="Poly On / Mono Off"    class=value celRange=BINARY_127 celStyle=HI_NIBL/>

  <cc id=animate1_hold
      nr=114
      caption="Animate1 Hold"
      min=0 max=127
      celRange=BINARY_127
      celStyle=LO_NIBL
      />

  <cc id=animate2_hold
      nr=115
      caption="Animate2 Hold"
      min=0 max=127
      celRange=BINARY_127
      celStyle=LO_NIBL
      />


  <!-- syx off: ? (only when saved?) -->
  <nrpn id=patch_cat
        nr=0
        caption="Patch Category"
        min=0 max=14
        celRange=0_127
        celStyle=LO_NIBL
        />

  <!-- syx off: ? (not used?) -->
  <nrpn id=patch_gen
        nr=1
        caption="Patch Genre"
        min=0 max=9
        celRange=0_127
        celStyle=LO_NIBL
        />

  <editgroup caption="Voice"/>

  <nrpn id=voice_mode
        nr=2
        caption="Voice Mode"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Mono;MonoLG;Mono2;Poly;Poly2"
        syxOff=47
        />

  <nrpn id=voice_unison
        nr=3
        caption="Voice Unison"
        editOptions="Off;2 voices;3 voices;4 voices;8 voices"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=48
        />

  <nrpn id=voice_unison_detune
        nr=4
        caption="Voice Unison Detune"
        min=0 max=127
        syxOff=49
        />

  <nrpn id=voice_unison_spread
        nr=5
        caption="Voice Unison Spread"
        min=0 max=127
        syxOff=50
        />

  <nrpn id=voice_unison_spreadmode
        nr=52
        caption="Voice Unison Spread Mode"
        min=0 max=3
        editOptions="Diverge;Alternt;Diverge2;NoteVal"
        syxOff=156
        />

  <nrpn id=voice_pan
        nr=51
        caption="Voice Pan Position"
        min=0 max=127
        celRange=M64_P63
        syxOff=155
        />

  <!-- syx off: ?51? -->
  <nrpn id=voice_kbd_oct
        nr=6
        caption="Voice Keyboard Octave"
        min=61 max=67
        celRange=M64_P63
        syxOff=51
        />

  <cc id=glide_time
      nr=5
      caption="Glide Time"
      min=0 max=127
      syxOff=52
      />

  <nrpn id=voice_pre_glide
        nr=7
        caption="Voice Pre-Glide"
        min=52 max=76
        celRange=M64_P63
        syxOff=53
        />

  <cc id=glide_on
      nr=35
      caption="Glide On"
      min=0 max=1
      celRange=BINARY_127
      celStyle=LO_NIBL
      syxOff=54
      />

  <editgroup caption="Oscillator"/>
  <editsubgroup caption="Common"/>

  <nrpn id=osc_com_div
        nr=9
        caption="Osc Common Divergence"
        min=0 max=127
        syxOff=56
        />

  <nrpn id=osc_com_drift
        nr=10
        caption="Osc Common Drift"
        min=0 max=127
        syxOff=57
        />

  <nrpn id=osc_noise_lpf
        nr=11
        caption="Osc Common Noise LPF"
        min=0 max=127
        syxOff=58
        />

  <!-- syx off: ?59? -->
  <nrpn id=osc_noise_hpf
        nr=12
        caption="Osc Common Noise HPF"
        min=0 max=127
        syxOff=59
        />

  <nrpn id=osc_keysync_sw
        nr=13
        caption="Osc Common KeySync Sw"
        min=0 max=1
        syxOff=60
        celRange=BINARY_127
        celStyle=LO_NIBL
        />

  <nrpn id=osc_tuningtable
        nrHi=25
        nrLo=6
        caption="Osc Common Tuning Table"
        min=0 max=16
        syxOff=367
        randLockBit=6
        />


  <!-- Oscillator 1 -->
  <editsubgroup caption="Oscillator 1"/>

  <cc id=osc1_range
      nr=3
      caption="Osc1 Range"
      min=63 max=66
      celRange=M64_P63
      editOptions=$(OSC_RANGES)
      syxOff=61
      randLockBit=9
      />

  <cc id=osc1_coarse_msb
      nrHi=14
      nrLo=46
      caption="Osc1 Coarse MSB"
      min=0 max=255
      celRange=M128_P127
      syxOff=62
      syxOffLo=63
      randLockBit=3
      />

  <cc id=osc1_coarse_lsb
      nr=46
      caption="Osc1 Coarse LSB"
      min=0 max=127
      syxOff=63
      syxOffHi=62
      />

  <cc id=osc1_fine_msb
      nrHi=15
      nrLo=47
      caption="Osc1 Fine MSB"
      min=28 max=228
      celRange=M128_P127
      syxOff=64
      syxOffLo=65
      randLockBit=6
      />

  <cc id=osc1_fine_lsb
      nr=47
      caption="Osc1 Fine LSB"
      syxOff=65
      syxOffHi=64
      />

  <cc id=osc1_modenv2_pitch
      nr=9
      caption="Osc1 ModEnv2 => Pitch"
      min=1 max=127
      celRange=M64_P63
      syxOff=66
      randLockBit=2
      />

  <cc id=osc1_lfo2_pitch_msb
      nrHi=16
      nrLo=48
      caption="Osc1 LFO2 => Pitch MSB"
      min=1 max=255
      celRange=M128_P127
      syxOff=67
      syxOffLo=68
      randLockBit=2
      />

  <cc id=osc1_lfo2_pitch_lsb
      nr=48
      caption="Osc1 LFO2 => Pitch LSB"
      syxOff=68
      syxOffHi=67
      />

  <nrpn id=osc1_wave
        nr=14
        caption="Osc1 Wave"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(WAVES)
        syxOff=69
        randLockBit=8
        />

  <!-- osc2 min = 8 is a typo in the docs (==> first wavetable is 4 in syx)-->
  <nrpn id=osc1_wave_more
        nr=15
        caption="Osc1 Wave More"
        min=4 max=73
        editOptions=$(WAVETABLES)
        syxOff=70
        />

  <nrpn id=osc1_shaper_src
        nr=16
        caption="Osc1 Shaper Source"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(OSC_SHAPER_SOURCES)
        syxOff=71
        />

  <cc id=osc1_manual_shape
      nr=12
      caption="Osc1 Manual Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=72
      />

  <cc id=osc1_modenv1_shape
      nr=119
      caption="Osc1 ModEnv1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=73
      randLockBit=5
      />

  <cc id=osc1_lfo1_shape
      nr=33
      caption="Osc1 LFO1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=74
      randLockBit=5
      />

  <cc id=osc1_vsync
      nr=34
      caption="Osc1 VSync"
      min=0 max=127
      syxOff=75
      />

  <nrpn id=osc1_saw_density
        nr=17
        caption="Osc1 Saw Density"
        min=0 max=127
        syxOff=76
        />

  <nrpn id=osc1_saw_density_detune
        nr=18
        caption="Osc1 Saw Density Detune"
        min=0 max=127
        syxOff=77
        />

  <nrpn id=osc1_fixed_note
        nr=19
        caption="Osc1 Fixed Note"
        min=0 max=88
        editOptions=$(OSC_FIXED_NOTES)
        syxOff=78
        randLockBit=1
        />

  <nrpn id=osc1_bend_range
        nr=20
        caption="Osc1 Bend Range"
        min=40 max=88
        celRange=M64_P63
        syxOff=79
        />


  <!-- Oscillator 2 -->
  <editsubgroup caption="Oscillator 2"/>

  <cc id=osc2_range
      nr=37
      caption="Osc2 Range"
      min=63 max=66
      celRange=M64_P63
      editOptions=$(OSC_RANGES)
      syxOff=82
      randLockBit=9
      />

  <cc id=osc2_coarse_msb
      nrHi=17
      nrLo=49
      caption="Osc2 Coarse MSB"
      min=0 max=255
      celRange=M128_P127
      syxOff=83
      syxOffLo=84
      randLockBit=3
      />

  <cc id=osc2_coarse_lsb
      nr=49
      caption="Osc2 Coarse LSB"
      syxOff=84
      syxOffHi=83
      />

  <cc id=osc2_fine_msb
      nrHi=18
      nrLo=50
      caption="Osc2 Fine MSB"
      min=28 max=228
      celRange=M128_P127
      syxOff=85
      syxOffLo=86
      randLockBit=6
      />

  <cc id=osc2_fine_lsb
      nr=50
      caption="Osc2 Fine LSB"
      syxOff=86
      syxOffHi=85
      />

  <cc id=osc2_modenv2_pitch
      nr=38
      caption="Osc2 ModEnv2 => Pitch"
      min=1 max=127
      celRange=M64_P63
      syxOff=87
      randLockBit=2
      />

  <cc id=osc2_lfo2_pitch_msb
      nrHi=19
      nrLo=51
      caption="Osc2 LFO2 => Pitch MSB"
      min=1 max=255
      celRange=M128_P127
      syxOff=88
      syxOffLo=89
      randLockBit=2
      />

  <cc id=osc2_lfo2_pitch_lsb
      nr=51
      caption="Osc2 LFO2 => Pitch LSB"
      syxOff=89
      syxOffHi=88
      />

  <nrpn id=osc2_wave
        nr=23
        caption="Osc2 Wave"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(WAVES)
        syxOff=90
        randLockBit=8
        />

  <nrpn id=osc2_wave_more
        nr=24
        caption="Osc2 Wave More"
        min=4 max=73
        editOptions=$(WAVETABLES)
        syxOff=91
        />

  <nrpn id=osc2_shaper_src
        nr=25
        caption="Osc2 Shaper Source"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(OSC_SHAPER_SOURCES)
        syxOff=92
        />

  <cc id=osc2_manual_shape
      nr=39
      caption="Osc2 Manual Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=93
      />

  <cc id=osc2_modenv1_shape
      nr=40
      caption="Osc2 ModEnv1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=94
      randLockBit=5
      />

  <cc id=osc2_lfo1_shape
      nr=41
      caption="Osc2 LFO1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=95
      randLockBit=5
      />

  <cc id=osc2_vsync
      nr=42
      caption="Osc2 VSync"
      min=0 max=127
      syxOff=96
      />

  <nrpn id=osc2_saw_density
        nr=26
        caption="Osc2 Saw Density"
        min=0 max=127
        syxOff=97
        />

  <nrpn id=osc2_saw_density_detune
        nr=27
        caption="Osc2 Saw Density Detune"
        min=0 max=127
        syxOff=98
        />

  <nrpn id=osc2_fixed_note
        nr=28
        caption="Osc2 Fixed Note"
        min=0 max=88
        editOptions=$(OSC_FIXED_NOTES)
        syxOff=99
        randLockBit=1
        />

  <nrpn id=osc2_bend_range
        nr=29
        caption="Osc2 Bend Range"
        min=40 max=88
        celRange=M64_P63
        syxOff=100
        />


  <!-- Oscillator 3 -->
  <editsubgroup caption="Oscillator 3"/>

  <cc id=osc3_range
      nr=65
      caption="Osc3 Range"
      min=63 max=66
      celRange=M64_P63
      editOptions=$(OSC_RANGES)
      syxOff=103
      randLockBit=9
      />

  <cc id=osc3_coarse_msb
      nrHi=20
      nrLo=52
      caption="Osc3 Coarse MSB"
      min=0 max=255
      celRange=M128_P127
      syxOff=104
      syxOffLo=105
      randLockBit=3
      />

  <cc id=osc3_coarse_lsb
      nr=52
      caption="Osc3 Coarse LSB"
      syxOff=105
      syxOffHi=104
      />

  <cc id=osc3_fine_msb
      nrHi=21
      nrLo=53
      caption="Osc3 Fine MSB"
      min=28 max=228
      celRange=M128_P127
      syxOff=106
      syxOffLo=107
      randLockBit=6
      />

  <cc id=osc3_fine_lsb
      nr=53
      caption="Osc3 Fine LSB"
      syxOff=107
      syxOffHi=106
      />

  <cc id=osc3_modenv2_pitch
      nr=43
      caption="Osc3 ModEnv2 => Pitch"
      min=1 max=127
      celRange=M64_P63
      syxOff=108
      randLockBit=2
      />

  <cc id=osc3_lfo2_pitch_msb
      nrHi=22
      nrLo=54
      caption="Osc3 LFO2 => Pitch MSB"
      min=1 max=255
      celRange=M128_P127
      syxOff=109
      syxOffLo=110
      randLockBit=2
      />

  <cc id=osc3_lfo2_pitch_lsb
      nr=54
      caption="Osc3 LFO2 => Pitch LSB"
      syxOff=110
      syxOffHi=109
      />

  <nrpn id=osc3_wave
        nr=32
        caption="Osc3 Wave"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(WAVES)
        syxOff=111
        randLockBit=8
        />

  <nrpn id=osc3_wave_more
        nr=33
        caption="Osc3 Wave More"
        min=4 max=73
        editOptions=$(WAVETABLES)
        syxOff=112
        />

  <nrpn id=osc3_shaper_src
        nr=34
        caption="Osc3 Shaper Source"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(OSC_SHAPER_SOURCES)
        syxOff=113
        />

  <cc id=osc3_manual_shape
      nr=71
      caption="Osc3 Manual Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=114
      />

  <cc id=osc3_modenv1_shape
      nr=72
      caption="Osc3 ModEnv1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=115
      randLockBit=5
      />

  <cc id=osc3_lfo1_shape
      nr=73
      caption="Osc3 LFO1 => Shape"
      min=0 max=127
      celRange=M64_P63
      syxOff=116
      randLockBit=5
      />

  <cc id=osc3_vsync
      nr=44
      caption="Osc3 VSync"
      min=0 max=127
      syxOff=117
      />

  <nrpn id=osc3_saw_density
        nr=35
        caption="Osc3 Saw Density"
        min=0 max=127
        syxOff=118
        />

  <nrpn id=osc3_saw_density_detune
        nr=36
        caption="Osc3 Saw Density Detune"
        min=0 max=127
        syxOff=119
        />

  <nrpn id=osc3_fixed_note
        nr=37
        caption="Osc3 Fixed Note"
        min=0 max=88
        editOptions=$(OSC_FIXED_NOTES)
        syxOff=120
        randLockBit=1
        />

  <nrpn id=osc3_bend_range
        nr=38
        caption="Osc3 Bend Range"
        min=40 max=88
        celRange=M64_P63
        syxOff=121
        />


  <!-- Mixer -->
  <editgroup caption="Mixer"/>

  <cc id=mixer_osc1_msb
      nrHi=23
      nrLo=55
      caption="Mixer Osc1 MSB"
      min=0 max=255
      celRange=0_255
      syxOff=124
      syxOffLo=125
      />

  <cc id=mixer_osc1_lsb
      nr=55
      caption="Mixer Osc1 LSB"
      syxOff=125
      syxOffHi=124
      />

  <cc id=mixer_osc2_msb
      nrHi=24
      nrLo=56
      caption="Mixer Osc2 MSB"
      min=0 max=255
      celRange=0_255
      syxOff=126
      syxOffLo=127
      />

  <cc id=mixer_osc2_lsb
      nr=56
      caption="Mixer Osc2 LSB"
      syxOff=127
      syxOffHi=126
      />

  <cc id=mixer_osc3_msb
      nrHi=25
      nrLo=57
      caption="Mixer Osc3 MSB"
      min=0 max=255
      celRange=0_255
      syxOff=128
      syxOffLo=129
      />

  <cc id=mixer_osc3_lsb
      nr=57
      caption="Mixer Osc3 LSB"
      syxOff=129
      syxOffHi=128
      />

  <cc id=mixer_ring12_msb
      nrHi=26
      nrLo=58
      caption="Mixer Ring 1*2 MSB"
      min=0 max=255
      celRange=0_255
      syxOff=130
      syxOffLo=131
      />

  <cc id=mixer_ring12_lsb
      nr=58
      caption="Mixer Ring 1*2 LSB"
      syxOff=131
      syxOffHi=130
      />

  <cc id=mixer_noise_msb
      nrHi=27
      nrLo=59
      caption="Mixer Noise MSB"
      min=0 max=255
      celRange=0_255
      syxOff=132
      syxOffLo=133
      randLockBit=7
      />

  <cc id=mixer_noise_lsb
      nr=59
      caption="Mixer Noise LSB"
      syxOff=133
      syxOffHi=132
      />

  <nrpn id=mixer_patch_level
        nr=41
        caption="Mixer Patch Level"
        min=0 max=127
        syxOff=134
        randLockBit=4
        />

  <nrpn id=mixer_vca_gain
        nr=42
        caption="Mixer VCA Gain"
        min=0 max=127
        syxOff=135
        randLockBit=4
        />

  <nrpn id=mixer_dry_level
        nr=43
        caption="Mixer FX Dry Level"
        min=0 max=127
        syxOff=136
        randLockBit=4
        />

  <nrpn id=mixer_wet_level
        nr=44
        caption="Mixer FX Wet Level"
        min=0 max=127
        syxOff=137
        randLockBit=4
        />


  <!-- Filter -->
  <editgroup caption="Filter"/>

  <editsubgroup caption="Drive + Type"/>

  <cc id=filter_overdrive
      nr=80
      caption="Filter Overdrive (Pre)"
      min=0 max=127
      syxOff=138
      />

  <cc id=filter_post_drive
      nr=36
      caption="Filter Post Drive"
      min=0 max=127
      syxOff=139
      />

  <nrpn id=filter_shape
        nr=46
        caption="Filter Shape"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="LP;BP;HP"
        syxOff=141
        />

  <nrpn id=filter_slope
        nr=45
        caption="Filter Slope"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=140
        editOptions="12dB;24dB"
        />

  <editsubgroup caption="CutOff + Resonance"/>

  <cc id=filter_frequency_msb
      nrHi=29
      nrLo=61
      caption="Filter Frequency MSB"
      min=0 max=255
      celRange=0_255
      syxOff=144
      syxOffLo=145
      />

  <cc id=filter_frequency_lsb
      nr=61
      caption="Filter Frequency LSB"
      syxOff=145
      syxOffHi=144
      />

  <cc id=filter_resonance
      nr=79
      caption="Filter Resonance"
      min=0 max=127
      syxOff=143
      />

  <editsubgroup caption="CutOff Modulation"/>

  <cc id=filter_key_tracking
      nr=75
      caption="Filter Key Tracking"
      min=0 max=127
      syxOff=142
      />

  <cc id=filter_lfo1_freq_msb
      nrHi=28
      nrLo=60
      caption="Filter LFO1 => Freq MSB"
      min=1 max=255
      celRange=M128_P127
      syxOff=146
      syxOffLo=147
      />

  <cc id=filter_lfo1_freq_lsb
      nr=60
      caption="Filter LFO1 => Freq LSB"
      syxOff=147
      syxOffHi=146
      />

  <cc id=filter_osc3_freq
      nr=76
      caption="Filter OSC3 => Freq"
      min=0 max=127
      syxOff=148
      />

  <nrpn id=filter_env_select
        nr=47
        caption="Filter Env Select"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="AmpEnv;ModEnv1"
        syxOff=149
        />

  <cc id=filter_ampenv_freq
      nr=77
      caption="Filter AmpEnv => Freq"
      min=1 max=127
      celRange=M64_P63
      syxOff=150
      />

  <cc id=filter_modenv1_freq
      nr=78
      caption="Filter ModEnv1 => Freq"
      min=1 max=127
      celRange=M64_P63
      syxOff=151
      />

  <nrpn id=filter_divergence
        nr=48
        caption="Filter Divergence"
        min=0 max=127
        syxOff=152
        />


  <!-- Amp Envelope -->
  <editgroup caption="Envelope"/>
  <editsubgroup caption="Amp Envelope"/>

  <nrpn id=ampenv_delay
        nr=3230
        caption="AmpEnv Delay"
        min=0 max=127
        syxOff=391
        />

  <cc id=ampenv_attack
      nr=86
      caption="AmpEnv Attack"
      min=0 max=127
      syxOff=159
      />

  <cc id=ampenv_decay
      nr=87
      caption="AmpEnv Decay"
      min=0 max=127
      syxOff=160
      />

  <cc id=ampenv_sustain
      nr=88
      caption="AmpEnv Sustain"
      min=0 max=127
      syxOff=161
      />

  <cc id=ampenv_release
      nr=89
      caption="AmpEnv Release"
      min=0 max=127
      syxOff=162
      />

  <nrpn id=ampenv_velocity
        nr=55
        caption="AmpEnv Velocity"
        min=0 max=127
        celRange=M64_P63
        syxOff=163
        />

  <nrpn id=ampenv_trig_mode
        nr=56
        caption="AmpEnv Trig Mode"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Legato;Re-Trig"
        syxOff=164
        />

  <!-- 127=~500ms -->
  <nrpn id=ampenv_holdtime
        nr=57
        caption="AmpEnv HoldTime"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=165
        />

  <!-- syx off: 166 (0=off, 1..126, 127=on) -->
  <nrpn id=ampenv_repeats
        nr=58
        caption="AmpEnv Repeats"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=166
        editOptions=$(ENV_REPEAT)
        />


  <!-- Mod Envelope 1 -->
  <editsubgroup caption="Mod Envelope 1"/>

  <nrpn id=modenv1_select
        nr=59
        caption="ModEnv1 Select"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="ModEnv1;ModEnv2"
        syxOff=167
        />

  <nrpn id=modenv1_delay
        nr=3231
        caption="ModEnv1 Delay"
        min=0 max=127
        syxOff=392
        />

  <cc id=modenv1_attack
      nr=90
      caption="ModEnv1 Attack"
      min=0 max=127
      syxOff=168
      />

  <cc id=modenv1_decay
      nr=91
      caption="ModEnv1 Decay"
      min=0 max=127
      syxOff=169
      />

  <cc id=modenv1_sustain
      nr=92
      caption="ModEnv1 Sustain"
      min=0 max=127
      syxOff=170
      />

  <cc id=modenv1_release
      nr=93
      caption="ModEnv1 Release"
      min=0 max=127
      syxOff=171
      />

  <nrpn id=modenv1_velocity
        nr=60
        caption="ModEnv1 Velocity"
        min=0 max=127
        celRange=M64_P63
        syxOff=172
        />

  <nrpn id=modenv1_trig_mode
        nr=61
        caption="ModEnv1 Trig Mode"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Legato;Re-Trig"
        syxOff=173
        />

  <!-- 127=~500ms -->
  <nrpn id=modenv1_holdtime
        nr=62
        caption="ModEnv1 Hold Time"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=174
        />

  <nrpn id=modenv1_repeats
        nr=63
        caption="ModEnv1 Repeats"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        editOptions=$(ENV_REPEAT)
        syxOff=175
        />


  <!-- Mod Envelope 2 -->
  <editsubgroup caption="Mod Envelope 2"/>

  <nrpn id=modenv2_delay
        nr=3232
        caption="ModEnv2 Delay"
        min=0 max=127
        syxOff=393
        />

  <cc id=modenv2_attack
      nr=94
      caption="ModEnv2 Attack"
      min=0 max=127
      syxOff=176
      />

  <cc id=modenv2_decay
      nr=95
      caption="ModEnv2 Decay"
      min=0 max=127
      syxOff=177
      />

  <cc id=modenv2_sustain
      nr=117
      caption="ModEnv2 Sustain"
      min=0 max=127
      syxOff=178
      />

  <cc id=modenv2_release
      nr=103
      caption="ModEnv2 Release"
      min=0 max=127
      syxOff=179
      />

  <nrpn id=modenv2_velocity
        nr=64
        caption="ModEnv2 Velocity"
        min=0 max=127
        celRange=M64_P63
        syxOff=180
        />

  <nrpn id=modenv2_trig_mode
        nr=65
        caption="ModEnv2 Trig Mode"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=181
        />

  <!-- 127=~500ms -->
  <nrpn id=modenv2_holdtime
        nr=66
        caption="ModEnv2 Hold Time"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=182
        />

  <nrpn id=modenv2_repeats
        nr=67
        caption="ModEnv2 Repeats"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        editOptions=$(ENV_REPEAT)
        syxOff=183
        />

  <!-- Animate Envelopes -->
  <editsubgroup caption="Animate Envelopes"/>

  <nrpn id=anim1_att
        nr=3234
        caption="Animate 1 Attack"
        min=0 max=127
        celRange=0_127
        syxOff=395
        />

  <nrpn id=anim1_rel
        nr=3235
        caption="Animate 1 Release"
        min=0 max=127
        celRange=0_127
        syxOff=396
        />

  <nrpn id=anim2_att
        nr=3236
        caption="Animate 2 Attack"
        min=0 max=127
        celRange=0_127
        syxOff=397
        />

  <nrpn id=anim2_rel
        nr=3237
        caption="Animate 2 Release"
        min=0 max=127
        celRange=0_127
        syxOff=398
        />


  <!-- LFO1 -->
  <editgroup caption="LFO"/>
  <editsubgroup caption="LFO 1"/>

  <nrpn id=lfo1_range
        nr=68
        caption="LFO1 Range"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_RANGE_MODES)
        syxOff=184
        />

  <cc id=lfo1_rate_msb
      nrHi=30
      nrLo=62
      caption="LFO1 Rate MSB"
      min=0 max=255
      celRange=0_255
      syxOff=185
      syxOffLo=186
      />

  <cc id=lfo1_rate_lsb
      nr=62
      caption="LFO1 Rate LSB"
      syxOff=186
      syxOffHi=185
      />

  <cc id=lfo1_sync_rate
      nr=81
      caption="LFO1 Sync Rate"
      min=0 max=34
      editOptions=$(LFO12_SYNC_RATES)
      syxOff=187
      />

  <nrpn id=lfo1_wave
        nr=69
        caption="LFO1 Wave"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_WAVES)
        syxOff=188
        />

  <nrpn id=lfo1_phase
        nr=70
        caption="LFO1 Phase"
        min=0 max=120
        celRange=0_127
        editOptions=$(LFO_PHASE)
        uiClass=FloatParam
        syxOff=189
        />

  <nrpn id=lfo1_slew
        nr=71
        caption="LFO1 Slew"
        min=0 max=127
        celRange=0_127
        syxOff=190
        />

  <cc id=lfo1_fade_time
      nr=82
      caption="LFO1 Fade Time"
      min=0 max=127
      syxOff=191
      />

  <nrpn id=lfo1_fade_inout
        nr=72
        caption="LFO1 Fade In/Out"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_FADE_MODES)
        syxOff=192
        />

  <nrpn id=lfo1_repeats
        nr=75
        caption="LFO1 Repeats"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO_REPEAT)
        uiClass=FloatParam
        syxOff=195
        />

  <nrpn id=lfo1_common
        nr=76
        caption="LFO1 Common"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=196
        />


  <!-- LFO2 -->
  <editsubgroup caption="LFO 2"/>

  <cc id=lfo2_range
        nr=83
        caption="LFO2 Range"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_RANGE_MODES)
        syxOff=198
        />

  <cc id=lfo2_rate_msb
      nrHi=31
      nrLo=63
      caption="LFO2 Rate MSB"
      min=0 max=255
      celRange=0_255
      syxOff=199
      syxOffLo=200
      />

  <cc id=lfo2_rate_lsb
      nr=63
      caption="LFO2 Rate LSB"
      syxOff=200
      syxOffHi=199
      />

  <cc id=lfo2_sync_rate
      nr=84
      caption="LFO2 Sync Rate"
      min=0 max=34
      editOptions=$(LFO12_SYNC_RATES)
      syxOff=201
      />

  <nrpn id=lfo2_wave
        nr=78
        caption="LFO2 Wave"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_WAVES)
        syxOff=202
        />

  <nrpn id=lfo2_phase
        nr=79
        caption="LFO2 Phase"
        min=0 max=120
        celRange=0_127
        editOptions=$(LFO_PHASE)
        uiClass=FloatParam
        syxOff=203
        />

  <nrpn id=lfo2_slew
        nr=80
        caption="LFO2 Slew"
        min=0 max=127
        celRange=0_127
        syxOff=204
        />

  <cc id=lfo2_fade_time
      nr=85
      caption="LFO2 Fade Time"
      min=0 max=127
      syxOff=205
      />

  <nrpn id=lfo2_fade_inout
        nr=81
        caption="LFO2 Fade In/Out"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions=$(LFO_FADE_MODES)
        syxOff=206
        />

  <nrpn id=lfo2_repeats
        nr=84
        caption="LFO2 Repeats"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO_REPEAT)
        uiClass=FloatParam
        syxOff=209
        />

  <nrpn id=lfo2_common
        nr=85
        caption="LFO2 Common"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=210
        />

  <editsubgroup caption="LFO 3"/>

  <nrpn id=lfo3_wave
        nrHi=25
        nrLo=0
        caption="LFO3 Wave"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Tri;RampDn;Pulse;S&H"
        syxOff=361
        />

  <nrpn id=lfo3_rate
        nrHi=25
        nrLo=1
        caption="LFO3 Rate"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=362
        />

  <nrpn id=lfo3_rate_sync
        nrHi=25
        nrLo=2
        caption="LFO3 Rate Sync"
        min=0 max=35
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO34_SYNC_RATES)
        syxOff=363
        />

  <nrpn id=lfo3_phase
        nr=3238
        caption="LFO3 Phase"
        min=0 max=120
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO_PHASE)
        uiClass=FloatParam
        syxOff=399
        />

  <nrpn id=lfo3_slew
        nr=3239
        caption="LFO3 Slew"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=400
        />

  <nrpn id=lfo3_fadetime
        nr=3240
        caption="LFO3 FadeTime"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=401
        />

  <editsubgroup caption="LFO 4"/>

  <nrpn id=lfo4_wave
        nrHi=25
        nrLo=3
        caption="LFO4 Wave"
        min=0 max=3
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Tri;RampDn;Pulse;S&H"
        syxOff=364
        />

  <nrpn id=lfo4_rate
        nrHi=25
        nrLo=4
        caption="LFO4 Rate"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=365
        />

  <nrpn id=lfo4_rate_sync
        nrHi=25
        nrLo=5
        caption="LFO4 Rate Sync"
        min=0 max=35
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO34_SYNC_RATES)
        syxOff=366
        />

  <nrpn id=lfo4_phase
        nr=3241
        caption="LFO4 Phase"
        min=0 max=120
        celRange=0_127
        celStyle=HEX
        editOptions=$(LFO_PHASE)
        uiClass=FloatParam
        syxOff=402
        />

  <nrpn id=lfo4_slew
        nr=3242
        caption="LFO4 Slew"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=403
        />

  <nrpn id=lfo4_fadetime
        nr=3243
        caption="LFO4 FadeTime"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=404
        />


  <!-- Effects -->
  <editgroup caption="FX"/>

  <cc id=fx_distortion_level
      nr=104
      caption="FX: Distortion Level"
      min=0 max=127
      syxOff=212
      />

  <nrpn id=fx_bypass
        nr=88
        caption="FX: Master Bypass"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=214
        />

  <nrpn id=fx_routing
        nr=89
        caption="FX: Routing"
        min=0 max=6
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Parallel;D->R->C;D->C->R;R->D->C;R->C->D;C->D->R;C->R->D"
        syxOff=215
        />

  <!-- Effects: Delay -->
  <editsubgroup caption="Delay"/>

  <cc id=fx_delay_level
      nr=108
      caption="FX: Delay Level"
      min=0 max=127
      syxOff=217
      />

  <cc id=fx_delay_time
      nr=109
      caption="FX: Delay Time"
      min=0 max=127
      syxOff=218
      />

  <nrpn id=fx_delay_lr_ratio
        nr=91
        caption="FX: Delay L/R Ratio"
        min=0 max=10
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="1/1;4/3;3/4;3/2;2/3;2/1;1/2;3/1;1/3;4/1;1/4"
        syxOff=219
        />

  <nrpn id=fx_delay_width
        nr=92
        caption="FX: Delay Width"
        min=0 max=127
        celRange=0_127
        syxOff=220
        />

  <!-- syx off: 221 -->
  <nrpn id=fx_delay_sync
        nr=93
        caption="FX: Delay Sync Sw"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=221
        />

  <nrpn id=fx_delay_sync_time
        nr=94
        caption="FX: Delay Sync Time"
        min=0 max=18
        celRange=0_127
        editOptions="32nd T;32nd;16th T;16th;8th T;16th D;8th;4th T;8th D;4th;1 + 1/3;4th D;2nd;2 + 2/3;3 beats;4 beats"
        syxOff=222
        />

  <cc id=fx_delay_feedback
      nr=110
      caption="FX: Delay Feedback"
      min=0 max=127
      syxOff=223
      />

  <nrpn id=fx_delay_lowpass_damp
        nr=95
        caption="FX: Delay LP Damp"
        min=0 max=127
        celRange=0_127
        syxOff=224
        />

  <nrpn id=fx_delay_hipass_damp
        nr=96
        caption="FX: Delay HP Damp"
        min=0 max=127
        celRange=0_127
        syxOff=225
        />

  <nrpn id=fx_delay_slew
        nr=97
        caption="FX: Delay Slew"
        min=0 max=127
        celRange=0_127
        syxOff=226
        />

  <nrpn id=fx_delay_timemode
        nr=98
        caption="FX: Delay TimeMode"
        min=0 max=4
        celRange=0_127
        celStyle=LO_NIBL
        editOptions="Normal;Double;Treble;QuadLoFi;HexVLoFi"
        syxOff=227
        />

  <!-- Effects: Reverb -->
  <editsubgroup caption="Reverb"/>

  <cc id=fx_reverb_level
      nr=112
      caption="FX: Reverb Level"
      min=0 max=127
      syxOff=230
      />

  <!-- (note) sets fx_reverb_size to 0, 64, 127 -->
  <nrpn id=fx_reverb_type
        nr=101
        caption="FX: Reverb Type"
        min=0 max=2
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=231
        />

  <cc id=fx_reverb_time
      nr=113
      caption="FX: Reverb Time"
      min=0 max=127
      syxOff=232
      />

  <nrpn id=fx_reverb_damping_lf
        nr=102
        caption="FX: Reverb Damping LF"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=233
        />

  <nrpn id=fx_reverb_damping_hf
        nr=103
        caption="FX: Reverb Damping HF"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=234
        />

  <nrpn id=fx_reverb_size
        nr=104
        caption="FX: Reverb Size"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=235
        />

  <nrpn id=fx_reverb_mod
        nr=105
        caption="FX: Reverb Mod"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=236
        />

  <nrpn id=fx_reverb_mod_rate
        nr=106
        caption="FX: Reverb Mod Rate"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=237
        />

  <nrpn id=fx_reverb_lp
        nr=107
        caption="FX: Reverb Low Pass"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=238
        />

  <nrpn id=fx_reverb_hp
        nr=108
        caption="FX: Reverb High Pass"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=239
        />

  <nrpn id=fx_reverb_predelay
        nr=109
        caption="FX: Reverb Pre Delay"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=240
        />

  <!-- FX: Chorus -->
  <editsubgroup caption="Chorus"/>

  <cc id=fx_chorus_level
      nr=105
      caption="FX: Chorus Level"
      min=0 max=127
      syxOff=242
      />

  <nrpn id=fx_chorus_type
        nr=111
        caption="FX: Chorus Type"
        min=0 max=2
        editOptions="2 Tap;4 Tap;Ensemble"
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=243
        />

  <cc id=fx_chorus_rate
      nr=118
      caption="FX: Chorus Rate"
      min=0 max=127
      syxOff=244
      />

  <nrpn id=fx_chorus_mod_depth
        nr=112
        caption="FX: Chorus Mod Depth"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=245
        />

  <cc id=fx_chorus_feedback
      nr=107
      caption="FX: Chorus Feedback"
      min=0 max=127
      celRange=M64_P63
      celStyle=HEX
      syxOff=246
      />

  <nrpn id=fx_chorus_lp
        nr=113
        caption="FX: Chorus Low Pass"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=247
        />

  <nrpn id=fx_chorus_hp
        nr=114
        caption="FX: Chorus High Pass"
        min=0 max=127
        celRange=0_127
        celStyle=HEX
        syxOff=248
        />

  <nrpn id=fx_chorus_mode
        nr=115
        caption="FX: Chorus Mode"
        min=0 max=2
        editOptions="Chorus;Flanger;Phlanger"
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=249
        />


  <!-- Arpeggiator -->
  <editgroup caption="Arpeggiator"/>

  <nrpn id=arp_clk_sync_rate
        nr=116
        caption="Arp: Clock Sync Rate"
        min=0 max=18
        celRange=0_127
        celStyle=HEX
        editOptions="32nd T;32nd;16th T;16th;8th T;16th D;8th;4th T;8th D;4th;1 + 1/3;4th D;2nd;2 + 2/3;3 beats;4 beats;5 + 1/3;6 beats;8 beats"
        syxOff=252
        />

  <nrpn id=arp_type
        nr=117
        caption="Arp: Type"
        min=0 max=7
        celRange=0_127
        celStyle=HEX
        editOptions="Up;Down;Up-Down1;Up-Down2;Played;Random;Chord1;Chord2"
        syxOff=253
        />

  <nrpn id=arp_rhythm
        nr=118
        caption="Arp: Rhythm"
        min=0 max=32
        celRange=0_127
        celStyle=HEX
        syxOff=254
        />

  <nrpn id=arp_octaves
        nr=119
        caption="Arp: Octaves"
        min=0 max=5
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=255
        />

  <cc id=arp_gate_time
      nr=116
      caption="Arp: Gate Time"
      min=0 max=127
      syxOff=256
      />

  <nrpn id=arp_clock_swing
        nr=120
        caption="Arp: Clock Swing"
        min=20 max=80
        celRange=0_127
        celStyle=HEX
        syxOff=257
        />

  <nrpn id=arp_clock_on
        nr=121
        caption="Arp: Clock On"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=258
        />

  <nrpn id=arp_key_latch
        nr=122
        caption="Arp: Key Latch"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=259
        />

  <nrpn id=arp_key_sync
        nr=123
        caption="Arp: Key Sync"
        min=0 max=1
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=260
        />

  <nrpn id=arp_chance
        nr=3233
        caption="Arp: Chance"
        min=10 max=100
        celRange=0_127
        celStyle=HEX
        editOptions="10%;11%;12%;13%;14%;15%;16%;17%;18%;19%;20%;21%;22%;23%;24%;25%;26%;27%;28%;29%;30%;31%;32%;33%;34%;35%;36%;37%;38%;39%;40%;41%;42%;43%;44%;45%;46%;47%;48%;49%;50%;51%;52%;53%;54%;55%;56%;57%;58%;59%;60%;61%;62%;63%;64%;65%;66%;67%;68%;69%;70%;71%;72%;73%;74%;75%;76%;77%;78%;79%;80%;81%;82%;83%;84%;85%;86%;87%;88%;89%;90%;91%;92%;93%;94%;95%;96%;97%;98%;99%;100%"
        uiClass=FloatParam
        syxOff=394
        />


  <!-- Animate Buttons -->
  <!--  (note) why not 0..127 ? -->
  <!-- syx off: ? -->

  <!-- Mod Matrix -->
  <editgroup caption="Mod Matrix"/>

  <nrpn id=mm_selection
        nr=125
        caption="Mod Matrix Selection"
        min=0 max=15
        celRange=0_127
        celStyle=LO_NIBL
        syxOff=264
        ui=0
        />

  <!-- Mod Matrix 1 -->
  <editsubgroup caption="Mod Matrix Slot 1"/>

  <nrpn id=mm1_src1
        nrHi=1
        nrLo=0
        caption="Mod Matrix 1 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=265
        />

  <nrpn id=mm1_src2
        nrHi=1
        nrLo=1
        caption="Mod Matrix 1 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=266
        />

  <nrpn id=mm1_depth
        nrHi=1
        nrLo=2
        caption="Mod Matrix 1 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=267
        />

  <nrpn id=mm1_dest
        nrHi=1
        nrLo=3
        caption="Mod Matrix 1 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=268
        />

  <!-- Mod Matrix: 2 -->
  <editsubgroup caption="Mod Matrix Slot 2"/>

  <nrpn id=mm2_src1
        nrHi=2
        nrLo=0
        caption="Mod Matrix 2 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=269
        />

  <nrpn id=mm2_src2
        nrHi=2
        nrLo=1
        caption="Mod Matrix 2 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=270
        />

  <nrpn id=mm2_depth
        nrHi=2
        nrLo=2
        caption="Mod Matrix 2 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=271
        />

  <nrpn id=mm2_dest
        nrHi=2
        nrLo=3
        caption="Mod Matrix 2 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=272
        />

  <!-- Mod Matrix: 3 -->
  <editsubgroup caption="Mod Matrix Slot 3"/>

  <nrpn id=mm3_src1
        nrHi=3
        nrLo=0
        caption="Mod Matrix 3 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=273
        />

  <nrpn id=mm3_src2
        nrHi=3
        nrLo=1
        caption="Mod Matrix 3 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=274
        />

  <nrpn id=mm3_depth
        nrHi=3
        nrLo=2
        caption="Mod Matrix 3 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=275
        />

  <nrpn id=mm3_dest
        nrHi=3
        nrLo=3
        caption="Mod Matrix 3 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=276
        />

  <!-- Mod Matrix: 4 -->
  <editsubgroup caption="Mod Matrix Slot 4"/>

  <nrpn id=mm4_src1
        nrHi=4
        nrLo=0
        caption="Mod Matrix 4 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=277
        />

  <nrpn id=mm4_src2
        nrHi=4
        nrLo=1
        caption="Mod Matrix 4 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=278
        />

  <nrpn id=mm4_depth
        nrHi=4
        nrLo=2
        caption="Mod Matrix 4 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=279
        />

  <nrpn id=mm4_dest
        nrHi=4
        nrLo=3
        caption="Mod Matrix 4 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=280
        />

  <!-- Mod Matrix: 5 -->
  <editsubgroup caption="Mod Matrix Slot 5"/>

  <nrpn id=mm5_src1
        nrHi=5
        nrLo=0
        caption="Mod Matrix 5 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=281
        />

  <nrpn id=mm5_src2
        nrHi=5
        nrLo=1
        caption="Mod Matrix 5 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=282
        />

  <nrpn id=mm5_depth
        nrHi=5
        nrLo=2
        caption="Mod Matrix 5 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=283
        />

  <nrpn id=mm5_dest
        nrHi=5
        nrLo=3
        caption="Mod Matrix 5 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=284
        />

  <!-- Mod Matrix: 6 -->
  <editsubgroup caption="Mod Matrix Slot 6"/>

  <nrpn id=mm6_src1
        nrHi=6
        nrLo=0
        caption="Mod Matrix 6 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=285
        />

  <nrpn id=mm6_src2
        nrHi=6
        nrLo=1
        caption="Mod Matrix 6 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=286
        />

  <nrpn id=mm6_depth
        nrHi=6
        nrLo=2
        caption="Mod Matrix 6 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=287
        />

  <nrpn id=mm6_dest
        nrHi=6
        nrLo=3
        caption="Mod Matrix 6 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=288
        />

  <!-- Mod Matrix: 7 -->
  <editsubgroup caption="Mod Matrix Slot 7"/>

  <nrpn id=mm7_src1
        nrHi=7
        nrLo=0
        caption="Mod Matrix 7 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=289
        />

  <nrpn id=mm7_src2
        nrHi=7
        nrLo=1
        caption="Mod Matrix 7 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=290
        />

  <nrpn id=mm7_depth
        nrHi=7
        nrLo=2
        caption="Mod Matrix 7 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=291
        />

  <nrpn id=mm7_dest
        nrHi=7
        nrLo=3
        caption="Mod Matrix 7 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=292
        />

  <!-- Mod Matrix: 8 -->
  <editsubgroup caption="Mod Matrix Slot 8"/>

  <nrpn id=mm8_src1
        nrHi=8
        nrLo=0
        caption="Mod Matrix 8 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=293
        />

  <nrpn id=mm8_src2
        nrHi=8
        nrLo=1
        caption="Mod Matrix 8 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=294
        />

  <nrpn id=mm8_depth
        nrHi=8
        nrLo=2
        caption="Mod Matrix 8 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=295
        />

  <nrpn id=mm8_dest
        nrHi=8
        nrLo=3
        caption="Mod Matrix 8 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=296
        />

  <!-- Mod Matrix: 9 -->
  <editsubgroup caption="Mod Matrix Slot 9"/>

  <nrpn id=mm9_src1
        nrHi=9
        nrLo=0
        caption="Mod Matrix 9 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=297
        />

  <nrpn id=mm9_src2
        nrHi=9
        nrLo=1
        caption="Mod Matrix 9 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=298
        />

  <nrpn id=mm9_depth
        nrHi=9
        nrLo=2
        caption="Mod Matrix 9 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=299
        />

  <nrpn id=mm9_dest
        nrHi=9
        nrLo=3
        caption="Mod Matrix 9 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=300
        />

  <!-- Mod Matrix: 10 -->
  <editsubgroup caption="Mod Matrix Slot 10"/>

  <nrpn id=mm10_src1
        nrHi=10
        nrLo=0
        caption="Mod Matrix 10 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=301
        />

  <nrpn id=mm10_src2
        nrHi=10
        nrLo=1
        caption="Mod Matrix 10 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=302
        />

  <nrpn id=mm10_depth
        nrHi=10
        nrLo=2
        caption="Mod Matrix 10 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=303
        />

  <nrpn id=mm10_dest
        nrHi=10
        nrLo=3
        caption="Mod Matrix 10 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=304
        />

  <!-- Mod Matrix: 11 -->
  <editsubgroup caption="Mod Matrix Slot 11"/>

  <nrpn id=mm11_src1
        nrHi=11
        nrLo=0
        caption="Mod Matrix 11 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=305
        />

  <nrpn id=mm11_src2
        nrHi=11
        nrLo=1
        caption="Mod Matrix 11 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=306
        />

  <nrpn id=mm11_depth
        nrHi=11
        nrLo=2
        caption="Mod Matrix 11 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=307
        />

  <nrpn id=mm11_dest
        nrHi=11
        nrLo=3
        caption="Mod Matrix 11 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=308
        />

  <!-- Mod Matrix: 12 -->
  <editsubgroup caption="Mod Matrix Slot 12"/>

  <nrpn id=mm12_src1
        nrHi=12
        nrLo=0
        caption="Mod Matrix 12 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=309
        />

  <nrpn id=mm12_src2
        nrHi=12
        nrLo=1
        caption="Mod Matrix 12 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=310
        />

  <nrpn id=mm12_depth
        nrHi=12
        nrLo=2
        caption="Mod Matrix 12 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=311
        />

  <nrpn id=mm12_dest
        nrHi=12
        nrLo=3
        caption="Mod Matrix 12 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=312
        />

  <!-- Mod Matrix: 13 -->
  <editsubgroup caption="Mod Matrix Slot 13"/>

  <nrpn id=mm13_src1
        nrHi=13
        nrLo=0
        caption="Mod Matrix 13 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=313
        />

  <nrpn id=mm13_src2
        nrHi=13
        nrLo=1
        caption="Mod Matrix 13 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=314
        />

  <nrpn id=mm13_depth
        nrHi=13
        nrLo=2
        caption="Mod Matrix 13 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=315
        />

  <nrpn id=mm13_dest
        nrHi=13
        nrLo=3
        caption="Mod Matrix 13 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=316
        />

  <!-- Mod Matrix: 14 -->
  <editsubgroup caption="Mod Matrix Slot 14"/>

  <nrpn id=mm14_src1
        nrHi=14
        nrLo=0
        caption="Mod Matrix 14 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=317
        />

  <nrpn id=mm14_src2
        nrHi=14
        nrLo=1
        caption="Mod Matrix 14 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=318
        />

  <nrpn id=mm14_depth
        nrHi=14
        nrLo=2
        caption="Mod Matrix 14 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=319
        />

  <nrpn id=mm14_dest
        nrHi=14
        nrLo=3
        caption="Mod Matrix 14 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=320
        />

  <!-- Mod Matrix: 15 -->
  <editsubgroup caption="Mod Matrix Slot 15"/>

  <nrpn id=mm15_src1
        nrHi=15
        nrLo=0
        caption="Mod Matrix 15 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=321
        />

  <nrpn id=mm15_src2
        nrHi=15
        nrLo=1
        caption="Mod Matrix 15 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=322
        />

  <nrpn id=mm15_depth
        nrHi=15
        nrLo=2
        caption="Mod Matrix 15 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=323
        />

  <nrpn id=mm15_dest
        nrHi=15
        nrLo=3
        caption="Mod Matrix 15 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=324
        />

  <!-- Mod Matrix: 16 -->
  <editsubgroup caption="Mod Matrix Slot 16"/>

  <nrpn id=mm16_src1
        nrHi=16
        nrLo=0
        caption="Mod Matrix 16 Src1"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=325
        />

  <nrpn id=mm16_src2
        nrHi=16
        nrLo=1
        caption="Mod Matrix 16 Src2"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_SOURCES)
        syxOff=326
        />

  <nrpn id=mm16_depth
        nrHi=16
        nrLo=2
        caption="Mod Matrix 16 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=327
        />

  <nrpn id=mm16_dest
        nrHi=16
        nrLo=3
        caption="Mod Matrix 16 Dest"
        min=0 max=48
        celRange=0_127
        celStyle=HEX
        editOptions=$(MOD_DESTINATIONS)
        syxOff=328
        />


  <!-- FX Mod Matrix -->
  <editgroup caption="FX Mod Matrix"/>

  <!-- FX Mod Matrix 1 -->
  <editsubgroup caption="FX Mod Matrix Slot 1"/>

  <nrpn id=fxmm1_src1
        nrHi=17
        nrLo=0
        caption="FX Mod Matrix 1 Src1"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=329
        />

  <nrpn id=fxmm1_src2
        nrHi=17
        nrLo=1
        caption="FX Mod Matrix 1 Src2"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=330
        />

  <nrpn id=fxmm1_depth
        nrHi=17
        nrLo=2
        caption="FX Mod Matrix 1 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=331
        />

  <nrpn id=fxmm1_dest
        nrHi=17
        nrLo=3
        caption="FX Mod Matrix 1 Dest"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_DESTINATIONS)
        syxOff=332
        />

  <!-- FX Mod Matrix 2 -->
  <editsubgroup caption="FX Mod Matrix Slot 2"/>

  <nrpn id=fxmm2_src1
        nrHi=18
        nrLo=0
        caption="FX Mod Matrix 2 Src1"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=333
        />

  <nrpn id=fxmm2_src2
        nrHi=18
        nrLo=1
        caption="FX Mod Matrix 2 Src2"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=334
        />

  <nrpn id=fxmm2_depth
        nrHi=18
        nrLo=2
        caption="FX Mod Matrix 2 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=335
        />

  <nrpn id=fxmm2_dest
        nrHi=18
        nrLo=3
        caption="FX Mod Matrix 2 Dest"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_DESTINATIONS)
        syxOff=336
        />

  <!-- FX Mod Matrix 3 -->
  <editsubgroup caption="FX Mod Matrix Slot 3"/>

  <nrpn id=fxmm3_src1
        nrHi=19
        nrLo=0
        caption="FX Mod Matrix 3 Src1"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=337
        />

  <nrpn id=fxmm3_src2
        nrHi=19
        nrLo=1
        caption="FX Mod Matrix 3 Src2"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=338
        />

  <nrpn id=fxmm3_depth
        nrHi=19
        nrLo=2
        caption="FX Mod Matrix 3 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=339
        />

  <nrpn id=fxmm3_dest
        nrHi=19
        nrLo=3
        caption="FX Mod Matrix 3 Dest"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_DESTINATIONS)
        syxOff=340
        />

  <!-- FX Mod Matrix 4 -->
  <editsubgroup caption="FX Mod Matrix Slot 4"/>

  <nrpn id=fxmm4_src1
        nrHi=20
        nrLo=0
        caption="FX Mod Matrix 4 Src1"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=341
        />

  <nrpn id=fxmm4_src2
        nrHi=20
        nrLo=1
        caption="FX Mod Matrix 4 Src2"
        min=0 max=16
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_SOURCES)
        syxOff=342
        />

  <nrpn id=fxmm4_depth
        nrHi=20
        nrLo=2
        caption="FX Mod Matrix 4 Depth"
        min=0 max=127
        celRange=M64_P63
        celStyle=HEX
        syxOff=343
        />

  <nrpn id=fxmm4_dest
        nrHi=20
        nrLo=3
        caption="FX Mod Matrix 4 Dest"
        min=0 max=23
        celRange=0_127
        celStyle=HEX
        editOptions=$(FX_MOD_DESTINATIONS)
        syxOff=344
        />

  <!-- recvd when "more" osc type is selected (osc1..3) -->
  <nrpn id=osc_more_unknown
        nrHi=62
        nrLo=0
        caption="Osc More Unknown"
        min=0 max=1
        celRange=0_127
        celStyle=HEX
        />



</MIDISynthProfile>
