-- /home/pln/Downloads/PerfectSunriseLoop.gif

do
setcps (124/60/4)
let gMask = (midiOn "^41" (mask "<t f>"))
let gMute1 = (midiOn "^73" (mask "f*16"))
let gMute2 = (midiOn "^74" (mask "f*16"))
let gMute3 = (midiOn "^75" (mask "f*16"))
let gM1 = gMask . gMute1
let gM2 = gMask . gMute2
let gM3 = gMask . gMute3
let modIndex = pF "modIndex"
let chord = "<Dm79 FM79 CM79 CM79>"
d1 $ gF1 $ gMute2
  $ midiOn "^42"  (struct "t t t*<1!6 2 1> t*<1!7 2>") -- RUN 4/4
  $ midiOff "^42" (struct "t . ~ t ~ ~ ") -- OFFBEAT DNB
  $ stack [
  "kick" # lpf 10000 # cut 1,
  "rumble" |* gain 1.3
  # lpf 200
  # cut 11,
  ""
  ]
  # "[techno:1,jazz]"
  # gain 0.9
d2 $ gF1 $ gM1 
  $ "~ s ~ <s!3 [s ~ [~ s ~]]>" 
  # "gretsch:14"
  # begin 0.2
  # gain 1.4 
  # room 0.4 # dry 1.14 # sz 0.1
  # rel 0.08
  # lpf 2500
d3 $ gF1 $ gM1 
  $ "dr*[16 16 8 <16 8 64 [128 64]>]" 
  # gain 0.8
  # "gretsch:14"
  # begin 0.5
  # gain 1.7
d4 $ gF2 $ gM3
  -- $ degradeBy "0 0.2 <0.2!3 0.8> 0"
  -- $ fast 2
  $ slice 3 (
    "<0!8 3!8> <0 1> <2 3 0 3> <3 1 2 3>" -- Note
    + "0(3,8) 0(<3 3 1 <5 2>>,8)"
    )
  $ arp "[updown|thumbupdown|pinkyup]"
  -- $ arp "up" 
  $ jchord chord
  # "bassWarsaw"
  # octave 2
  # crushbus 41 (range 16 3.5 "^53")
  # lpfbus 41 (range 40 260 (fast 32 $ ((0.2 ~>) $ sine)))
  -- # lpf 340
  # lpq 0.3
  # legato "1 [1|1|0.6]!7"
  # gain 1.2
  # cut 4
  # legato 0.55
d5 $ gF3 $ gM3
  $ jchord (chord)
  # octave 3
  # "FMRhodes1" 
  # gain 1.3
d8 $ gF1 $ gM1
  $ midiOff "^60" (mask "t(4,8,1)") -- Techno drum mask
  $ midiOn "^56" (loopAt 2 . (# "jungle_breaks:23")) -- Raise COMEON!
  $ midiOn "^92" ( -- Bouton Nassim <3
    slice 16 "[0 .. 7] . <[0 .. 7]!3 [0 1 . [2 3]]>"
    . loopAt 1 . (# "breaks165")
    -- . (# octer 0.4) . ( octersubsub 4)
    . (# lpf 2500)
    . (# room 0)
  )
  $ chop 16
  $ "jungle_breaks:45"
  # cut 8
  # octersub 0.5
  # gain 1.2


d1 $ fast 2 $ degradeBy 0.2 $ "hh" # gain 1.4
  -- # att 0.05 


once $ arp"up" 
  $ "FMRhodes1" # note "[c4'min]" # gain 1.8
