-- Inspiration rythms https://www.youtube.com/watch?v=kPlSyYtE63M
-- Inspiration key https://www.youtube.com/watch?v=osSXQMaieHU

-- Intro: Kick, click 3, puis keys, puis snare
-- Outro: ALWAYS GO DOWN SHE SAID

do
setcps (125/60/4)
-- let gMask = whenmod 8 6 (mask "<t <[t f] f>> . f f f t")
d1 $ gF1
  $ fix (# hpf 2000) "909"
  $ fix (# lpf 120) "[808bd,bd]"
  $ midiOn "^41" ((|* gain "1 1 0.95") . struct "t ~ [~ t]")
  $ midiOff "^41" (struct "t")
  -- $ "[808bd,cpu]"
  $ "[808bd:3,bd:1,909]"
  # room 0.2 # dry 1 # sz 0.8
  # note (-1)
  # release 10
  # midiG' "^78" 0 1.4
d2 $ gF1
  $ midiOn "^42" (mask "t!7 f")
  $ "~ ~ ~ s ~ <~!3 s>"
  # "snare:8"
  # hpf 2000 # gain "1.1"
  # midiG' "^79" 0 1.5
d3 $ gF2
  $ fix (|* gain (slow 2 $ range 0.5 0.81 sine)) "drum"
  $ fix ((# n "0!3 <0 1>") . (|* gain (range 0.7 0.5 sine))) "808oh"
  $ midiOn "^43" (fast 2)
  -- FIXME(#94) d3 drives more controls than the grid gives it (BT3 only — BL1-3 are the family mutes). ^44 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^44 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). ^44 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^44 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 "^44" (fast 2)
  $ (|* gain "1 0.9 0.85")
  $ "d d d"
  # "[drum:2,808oh]"
  # midiG' "^80" 0 1.6

d5 $ gF2 -- filler
  -- FIXME On different chorus
  -- f fs gs as c cs ds
  $ midiOn "^57" ((# note "fs5'maj'3")) -- Pre-verse
  $ midiOn  "^89" (# note ("gs4'maj'3")) -- Chorus
  -- FIXME(#94) d5 drives more controls than the grid gives it (BT5 + BL5). ^91 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^91 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 d5's own control with gSel.
  -- FIXME(#94) d5 drives more controls than the grid gives it (BT5 + BL5). ^91 now belongs to another orbit, so this step STILL FIRES ACROSS COLUMNS — turning ^91 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 d5's own control with gSel.
  $ midiOn  "^91" (# note ("ds5'maj'3")) -- Chorus
  $ "bassWarsaw"
  # velocity 1
  # note ("<cs5'maj'3>") -- Verse
  # att 1
  # rel 2
  # midiG' "^81" 0 1

-- TODO FIND A MORE ANALOGIC KICK :)
once
  $ "[808bd:3,bd:1,909]"

once $ "[808bd,cpu]"

once $ "kick:11" # gain 0.8

-- GRAVEYARD/WORKSHOP: FIND ME THE PROPER CHORDS
do
d1 $ "jazz/4"
d2
  $ whenmod 4 3 (off "0.25" (|* gain 0.9))
  $ "~ snare:54"
d3 $ "hh*6" # gain 0.8
d6
  $ note "<cs4 f4 <fs4 as4 fs> <gs4!3 ef4>>"
  # "superpiano" # gain 1 # velocity 0.7
