-- once $ "bassWarsaw"
-- 
do
-- resetCycles
setcps (110/60/4)
let gMute = (midiOn "^73" (mask "f*16"))
let gM = gMask . gMute
d1 $ gF1 $ gM1
  $ midiOn  "^41" (<| "k k k k*2")
  $ midiOff "^41" (<| "k")
  $ fix ((|* gain 0.9) . (# lpf 1000)) "jazz"
  $ fix ((# att 0.02) . (# rel 0.5) . (# lpf 400)) "kick:4"
  $ "[808bd:1,808bd:2,jazz,kick:4]"
d2 $ gF1 $ gM 
  $ midiOn "^42" (<|"~ sn <~ [~ sn]> sn" )
  $ midiOff "^42" (<| "~ s")
  $ "sn"
  # note "0 0 -1 0" 
  # legato "1 1 0.75 1"
  # "[snare:40,snare:29]"
  # lpf 4000
  # room 0.4 # sz 0.1 # dry 1.1
d3 $ gF1 $ gM  
  -- FIXME(#94) d3 drives more controls than the grid gives it (BT3 only — BL1-3 are the family mutes). ^76 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^76 for its new owner also moves this. NOT commented out: this is a `$`-step and something above it is a partial application waiting for it, so removing it would stop the whole block compiling. Fold it onto d3's own control with gSel.
  -- FIXME(#94) d3 drives more controls than the grid gives it (BT3 only — BL1-3 are the family mutes). ^76 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^76 for its new owner also moves this. NOT commented out: this is a `$`-step and something above it is a partial application waiting for it, so removing it would stop the whole block compiling. Fold it onto d3's own control with gSel.
  $ midiOn "^76" (ply 2)
  $ midiOff "^43" (mask "t(4,8,1)")
  $ "[<~ <~ d> <~!3 d> d> d d <d!3 <d!3 ~>>]*4" # "dr" # "h2ogmhh:3" 
  # cut 3 
d4 $ gF2 $ gM3
  $ midiOn "^44" (struct "0(3,8) 0(3,8)")
--   -- $ midiOn "^57" ((|+ note 12) . (# freeze 0.8))
--   $ sometimesBy (1 -120_Rhodes_RiffChords_E_1 "^17") (mask "[t@6 <f!3 t> <f t>]")
  $ fix ( -- ANGEL BASS INCOMING
    (# cut 41) 
    . (mask "<f!32 t!32>")
    . (|* gain (slow 32 $ range 0 0.92 saw))
    . (# panbus 44 (slow 16 $ range 0.8 0.4 saw))
    . (swing 3)
  ) "vec1_acid:28"
  $ midiOn "^76" (fix (
    -- fast "<1 1 [2 1] [4 1] 2!12 4!16 4!3 2 4!3 1 4 2 4 1 4 1 4 2>"
    fast "<4!3 [4 <4 4 2 4>]>"
    ) "vec1_acid:27")
  $ note "[cs3 b3 <gs3!3 cs4> b3]"
  # crushbus 41 (range 16 2.5 "^32")
  # octersubbus 42 (range 0 2.5  "^52")
  # octersubsubbus 43 (range 0 5  "^52")
  -- FIXME(#54) d4 drives more controls than the grid gives it (B4 + C4). ^17 now belongs to another orbit, so the line(s) below are COMMENTED OUT rather than left firing across columns. Nothing is lost — restore by removing the dashes once gSel folds this onto d4's own control.
  -- # roombus 45 (range 0 0.5 "^17")
  # "bassWarsaw" -- Classique
  # "[vec1_acid:27,vec1_acid:28]"  |+ note 12
  # gain (slow 32 $ range 0.8 1.2 saw)
d10
  $ struct "<~!12 t ~ ~ ~>"
  $ loopAt 4
  $ "risers:8"
  # room 0.4 # sz 0.9
  # cut 10
  # gain 0.8
d5  $ gF3 $ gM3 -- Keys angeliques
  $ superimpose (const
      $ midiOn "^57" (off 0.5 id)
      $ midiOn "^89" (striate 8)
      $ gF3 $ gM3 
      $ slow 2
      $ n "<42!16 <44 ~>!16>" 
      # "nujazz_keys120"
      # cut 51
      # gain "^33")
  $ note "<[b3, gs4] ~ [cs3, b4] [cs4, gs5]>(<1!3 2>,3,1)"
  # modIndex 2
  # "FMRhodes1"
  # room 0.4 # sz 0.8 
  # delay 0.75 
  # delayt 0.25
  # gain (1 - "^33")
d11 $ gF3 $ gM3 -- CBOW COEUR
  $ slow 2 $ note "<[b4@3 ef5] cs5>"
  # modIndex 2
  # "cbow:1"
  # cut 1
  # room 0.4 # sz 0.8 
  # delay 0.75 
  # delayt 0.25
  # gain 0.9
d12 $ gF3 $ gM3 -- Cpluck Tete
  $ slow 2 
  $ note ("<[b4@3 ef5] <cs5!2 e5 cs5>>" + "0(3,8,1) 0(3,8,1)")
  # modIndex 2
  # "cpluck:4"
  # cut 1
  # room 0.4 # sz 0.8 
  # delay 0.75 
  # delayt 0.25
d9   -- b ef 
  $ note "<[b4, gs5] ~ [cs4, b5] ~>"
  # "moogBass" 
  # legato 2
d7 $ gF2 $ gM3 
  $ midiOff "^91"  (chop 8 . (struct "t*8"))
  $ midiOff "^59" (mask "t(3,8) t(3,8)")
  $ note (
  "<e4 b3 cs4 cs4>" + "0(<3!3 5>,8) [0 <0 <7!3 <5 7>>> 0](5,8)"
  )
  # "giorgio_syn:7"
  -- # lpf 500
  -- # orbit 6
  # octersubbus 72 (range 0 2 "^35")
  # squizbus  73  (range 0 8 "^55")
  # attbus 74  (range 0.05 0.2 "^55")
  # rel 2
  # gain 1.3
  # room 0.4
  # room 0.5
d8 $ gF1 $ gM
  $ midiOn ("^60" - "^92") (ply "1!2 <1!3 <2 1 1 2>>!2" . mask "f(4,8)")
  $ midiOn ("^36" - "^92") ((loopAt 1) . (# hpf 1500) . (# "jungle_breaks:45")) -- Clochettes?
  $ midiOn ("^56" - "^92") ((loopAt 1) . (# hpf 1500) . (# "jungle_breaks:30")) -- Clochettes?
  $ midiOn ("^92") ( -- Bouton Nassim <3
    slice 16 "[0 .. 7] . <[0 .. 7]!7 [0 1 . [2 3]]>"
    . loopAt 0.5 . (# "breaks165") . (# octersub 2)
  )
  $ chop 16
  $ loopAt 2
  $ "jungle_breaks:74"
  # room 0
  # gain 0.9
