-- Lunar -light: Esbrouffe collective
do
setcps (110/60/4)
let modIndex = pF "modIndex"
let gDJF = (# djfbus 1 (range 0.15 0.85 "^49"))
let mBreak = (midiOn "^41" (mask "t f . f <f!4 t!4> <f!2 t!6> t"))
let g = (gDJF)
let m = mBreak
d1 $ g --
  $ midiOn "^41" (<| "k k k <k [<~ k> k]>")
  $ midiOff "^41" (<| "k . ~ <k k ~ ~> k*<1!3 2 2 2 1 2> <~ ~ k <k ~>>")
  $ "jazz"
  -- # release "<0.7!3 1>"
  # midiG' "^78" 0 1.4
d3 $ g $ m -- Clap contretemps stable
   $ fix (# lpf 2000) ("cp")
   $ superimpose (# "cp:0")
   $ whenmod 16 8 (fast 2)
   $ "~ clap:1"
   # crush 5.5
   # legato 2
   # room 0.8 # sz 0.8 # dry 0.99
   # midiG' "^79" 0 1.8
d2 $ g $ m -- BREAK
  -- FIXME(#94) d2 drives more controls than the grid gives it (BT2 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 d2's own control with gSel.
  -- FIXME(#94) d2 drives more controls than the grid gives it (BT2 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 d2's own control with gSel.
  $ midiOn ("^42" - "^76") (ply 2)
  $ midiOn "^76" (fast 2)
  $ loopAt 2
  $ whenmod 8 6 (off "h" id)
  $ whenmod 8 6 (mask "t . f")
  $ slice 8 (run 8)
  $ "break" # n "<13!12 14!4 15!16>"
  # midiG' "^80" 0 1.7
  # cut 2
d9
  $ struct "t . t(<<5 1> 3>,8)"
  $ slice 16 (iter 4 $ run 8)
  $ "igor:14"
  # cut 3
  # begin 0.5
  # gain 0






d4 $ g $ m
  $ midiOn "^76" (chop "8 1")
  $ superimpose ((# cut 41)
  . (|+| note "0*<1!3 2 1!3 4 2!4 4!4> 7(<5 5 3 3>,8)")
  )
  $ note (scale "aeolian" (
    "<3 3 5 <5 4> 5 4 3 <~ 2 3 ~>>"
    )
    - 24
  )
  # "bassWarsaw"
  # midiG' "^81" 0 1.5
  # crushbus 4 (range 16 1.5 "^32")
  # cut 4
  # pan 0.2
d5 $ g $ m
  $ midiOn "^89" (superimpose (
      (# cut 51)
      . (|+| note "~ 12(<1 1 2 1 2 5 2 1 2 2 5 2 2 4 3 8>,8)")
      . (|* gain 0.9)
  ))
  $ note (scale "aeolian" (
    "<3 [3 . ~!7 4] <5 [5 . ~!3 6]> 5 2 2 3 [4 3@7]>"
    )
    - 12
  )
  # "FMRhodes1"
  # midiG' "^82" 0 1.8
  # modIndex (range 0.1 32 "^33")
  # cut 5
  # pan 0.8
