resetCycles

do
  -- let fGlob = 0.3 -- TODO: Filtre global FIXME: if defined?
  let mKick = "<f!8 t!8 f!7 t>"
  let mKick = "t"
  let mDrum = "<f!4 t!4>"
  let mRoll = "<f!8 t!8>"
  let mBass = "t"
  let mPiano = "t f"
  solo 1 -- Kick DNB/TECHNO
  solo 2 -- Drums DNB-compatibles
  unsolo 3 -- Drumroll masqué
  unsolo 4 -- Basse électrique
  unsolo 5 -- Piano FIXME Too noisy
  unsolo 6 -- Comete
  unsolo 8 -- Un bon sandwich
  setcps (174/60/4)
  d1 -- Kick
    $ mask mKick
    -- region TECHNOOO
    -- $ fast 2
    -- $ whenmod 16 12 (slow 2)
    -- $ "k k k <k!5 k*2 ~ [~ k]>"
    -- # "[kick:5,house]"
    -- region DNB
    $ "k ~ ~ ~ ~ k ~ ~"
    # "kick" # note "-6"
    # gain 0.75
    -- # djf fGlob
  d2
    $ mask mDrum
    $ "~ s*<1!6 2 [4 2]> . ~ s*<1!3 2 1!2 2!2 3 2 4>"
    # "snare"
    # n "[11,12]"  # note (
      "<0 0 -2!2 -4 -6 -7 -12>" -- snare aggrave
    )
    # gain 0.7
    -- # djf fGlob
  d3 -- Drumroll masqué
    $ mask mRoll
    $ fast "8 . <8 8 4 16>"
    $ "drum:8"
    # gain (slow 8 $ range 0.8 0.95 saw)
    -- # djf fGlob
  d4 -- Bass electrisée
    $ mask mBass
    $ whenmod 64 32 (slow 2)
    $ off "q" (|+ note 12)
    $ whenmod 32 16 rev
    $ slice 8 (
      run 8 -- classique
    -- (fast 2 $ run 4) -- loop begin
    -- "0*2 1*2"
    )
    $ "fbass:10"
    # gain (slow 16 $ range 0.9 0.8 sine)
    -- # crush (slow 16 $ range 9 4 sine) -- TODO Crush
    # cut 4
    -- # djf fGlob
  d8 -- Sandwich
    $ slice 6 (
      "2*<0 <2 1>>"
    )
    $ "macron:7"
    # waveloss 25
    # cut 5
    # gain 0.7
    # room 0.6
    -- # djf fGlob
  d5
    $ whenmod 16 8 (slow 2)
    $ slice 8 (
      cat [
      run 8,
      "[0,2*8]", -- attente noisée
      7 - run 8, -- rev
      ""
      ]
      )
    $ "fpiano:12"
    # pan 1
    # cut 5
    -- # djf fGlob
    # gain 0.85
  d6 -- Comete
    $ slice 8 "1!7 4"
    $ s "methbass:3" # cut 6
    # gain 0.55
    -- # djf fGlob


-- region Nass n Bassline
d1 $ "jazz*2"  # gain 0.8

d3
  $ chop 8
  $ note ("<c6'maj!3 c6'min>")
  # s "trump" # speed (1/12)
