-- CODESECRET
-- E B E G B
-- E C E G C
-- E C#E G C#
-- E C E G C
-- CODESECRET
do
let gF1 =  (# djfbus 1 (range 0.05 0.95 "^49"))
let gF2 = (# djfbus 2 (range 0.05 0.95 "^50"))
let gF3 = (# djfbus 3 (range 0.05 0.95 "^51"))  
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 gM = gMask . gMute
let gM2 = gMask . gMute2
let gM3 = gMask . gMute3
setcps (93/60/4)
d1 $ gF1 $ gMute2
  $ midiOn "^42" (<| "k k k k")
  $ midiOff "^42" (<| "k ~ ~ <~ k> . ~ k ~ <~!3 k*<1 2>>")
  $ fix ((# att 0.1) . (# rel 10)) "wobble"
  $ "[jazz,808bd:4,wobble]"
  -- # midiG' "^78" 0 1.5
d2 $ gF1 $ gM
-- $ mask "<f!8 t!24>"
  $ "~ s" # "snare:40"
  -- # midiG' "^79" 0 1.4
  # pan 0.8
d3 $ gF1 $ gM
  $ "~ h ~ h ~ h ~ [<h!2 ~ h> h*<1!7 2>]"
  # "hh" # pan 0.8
  -- # midiG' "^80" 0 1.4
d4 $ gF2 $ gMute3
  $ note "<[e2,b2] [e2,c3] [e2,cs3] [e3,c3]>"
  # "moogBass"
  # chorus 0
  # pan 0.1
  # crushbus 41 (range 16 2.5 "^53")
d10
  $ note ("<b4 c4 cs4 c4>" + 12)
  # "moogBass"
d5 $ gF3
  $ midiOn "^58" (ply "<[4 2] 4 [4 8] [4 <[8 4] <16 [16 4]>>]>")
  -- $ arpeggiate
  $ note ( -- TODO ADD CLIMB?
    "<[e4,g4,b4] [e4,g4,c5] [e4,g4,cs5] [e4,g4,c5]>"
    |+| "<[~!3 0]!8 [~ 0 ~ 0]!8 [~ 0 ~ 0*2]!8 [~ 0 ~ ?]!8>"
    + (slow 4 "<0 <12 24>>")
    + "12"
  )
  # modIndex (range 0 4.5 "^34")
  # crushbus 51 (range 16 4.5 "^54")
  # "marimba1"
  # pan 0.8
  # gain 1.2
d8 $ gM $ gF1
  $ midiOn "^92" (ply 4)
  $ midiOff "^56" (slice 4 "0 1 2 3*<1 2 4 8>")
  $ loopAt 4 $ chop 16
  $ midiOn "^56" (loopAt 0.25 . (>| "breaks165"))
  $ "trance_loops:0"
  # cut 8
  -- # midiG' "^84" 0 1.8