-- 1. Choeurs
-- 2. 10 + d3
-- 3. Beat1
-- 4. Snare
-- 5. Drop your number
-- 6. Drop the breaks
-- 7. Mask the breaks!
-- 8. Drop the bass
-- 9. Enjoy the vibe
-- 10. Drop second kick
-- 11. AirDrop the choir
-- 12. Bring back breaks
-- 13. Bring back bass!
-- 14. Drop d7 scatman
-- 15. Hide him as choir leave
-- 16. Drop d11 and d12 scatters
-- 17. Enjoy the vibe
-- 18. Drop the bass friends
-- 19. Slice the Number
-- 20. Combine that with Drums funsies
-- 21. Mask the Number until next choir
-- 22. Hold choir
-- 22. kill scats
-- 23. Fade out on choir


do
resetCycles
setcps (140/60/4)
let gMask = (midiOn "^41" (mask "t . <f t f <f t>> <t f f <t f>>"))
let gMute = (midiOn "^73" (mask "f*16"))
let gMute2 = (midiOn "^74" (mask "f*16"))
let gMute3 = (midiOn "^75" (mask "f*16"))
let gM1 = gMask . gMute
let gM2 = gMask . gMute2
let gM3   = gMask . gMute3
d1 $ gF1 $ gM2
  -- $ mask "<f!8 t!56>" -- Mask regulier
  $ midiOn "^42"  (<| "k k k <k k*2 [~ k] k*[2 <2 4>]>")
  $ midiOff "^42" (<| "k . ~ k ~ ~")
  $ midiOn "^42" (# "hardkick_rha:1")
  $ "[808bd:4,808bd:2]"
  # gain 1.3
  # lpf 2000
d2 $ gF1 $ gM1
  $ whenmod 8 15 (# silence)
  -- $ midiOn "^42" (# "[cp]") -- Un bon vieux clap
  -- $ midiOn "^42" (# "[vec1_snare:33]") -- Un snare vener'
  $ midiOn "^42" (<| "~ s ~ s")
  -- $ midiOn "^42" ((|* gain 0.8) . (# "[kick:4]")) -- Le snare s'est fait... kick?!
  $ midiOff "^42" (<| "~ s [~!3 <~!3 s>] s*<1 2>")
  -- # lpf 5000
  $ "[snare:40,snare:421,bssnare:2]"
  # octersub 0.6
  -- # "vec1_snare:1"
  -- # gain "1 1 0.93 1"
d3 $ gF1 $ gM1
  -- $ whenmod 8 15 (mask "t t t f")
  $ midiOn "^42" (mask "t(4,8,1)")-- Le snare s'est fait... kick?!
  $ "hh*[8 <16!6 8!2> <8!7 16>]"
  # "h2ogmhh:3" # cut 3 # gain (1.2 * "1 1 0.9 1 0.9 0.85 0.9 1")
d8 $ gF1 $ gM1
  -- $ midiOn "^92" (ply 2)
  $ midiOff "^60" (mask "t(4,8,1)" . chop 4)
  $ chop 8
  $ midiOn "^36" (loopAt 0.5 . (|> "jungle_breaks:40"))
  $ midiOn "^56" (loopAt 0.5 . (|> "jungle_breaks:20"))
  $ loopAt 2
  $ "jungle_breaks:45"
  # gain 1.4
d4 $ gF2 $ gM3
  $ note (
    "<f f e@2>"
    + "0(3,8) 0(3,8)"
    -- - 24
    )
  # "vec1_acid:35"
  -- # sz   0.4
  -- # room 0.3
  # gain 1.2
  # crush 6
d5 $ gF3 $ gM3
  $ fix ((|* gain (range 1 0  ("^34" + "^54"))) . (# "FMRhodes1")) "a"
  $ fix ((|* gain (range 0 0.8 "^54")) . (|* gain 1.1) . (# "vec1_acid:28")) "b"
  $ fix ((|* gain (range 0 0.8 "^34")) . (|* gain 1.1) . (# "vec1_acid:34")) "c"
  $ midiOn "^58" (slice 4 "0 1 0 0*4")
  $ superimpose ((|* gain (slow 16 $ range 0 1 saw)) . (|+ note 12) . (|+ pan 0.2))
  $ note (
    "<[f4@3 a4 b4@4] [f4 a4 b4 e5 d5@2 b4 c5] [b4 g4 e4@4 ~ d4] [e4 g4 e4@5 ~] >"
    -- + 12
  )
  # "[a,b,c]" -- 26
  -- # gain 1.2
  # room 0.1 # sz 0.1
  # legato 1
  # att 0.07 # rel 2
  -- # modIndex 3
