         echo       (comb-n reverb 0.4 0.3 0.5)]
     (* amp echo)))
 
-(definst pad [note 60 t 10 amt 0.3 amp 0.1 a 0.4 d 0.5 s 0.8 r 2]
+(definst pad
+  [note 60 t 10 amt 0.3 amp 0.1 a 0.4 d 0.5 s 0.8 r 2]
   (let [freq       (midicps note)
         lfo        (+ 2 (* 0.01 (sin-osc:kr 5 (rand 1.5))))
         src        (apply + (saw [freq (* freq lfo)]))

        sound (apply + sound)]
  (* (lf-saw:kr (line:kr 13 17 3)) (line:kr 1 0 dur FREE) sound)))

(definst bubbles [bass-freq 80]
  (let [bub (+ bass-freq (* 3 (lf-saw:kr [8 7.23])))
        glis (+ bub (* 24 (lf-saw:kr 0.4 0)))
        freq (midicps glis)

        snd        (* amp dist (line:kr 1 0 t))]
    src))

(definst overpad
  [note 60 amp 0.7 attack 0.001 release 2]
  (let [freq  (midicps note)
        env   (env-gen (perc attack release) :action FREE)
        f-env (+ freq (* 3 freq (env-gen (perc 0.012 (- release 0.1)))))
        bfreq (/ freq 2)
        sig   (apply +
                     (concat (* 0.7 (sin-osc [bfreq (* 0.99 bfreq)]))
                             (lpf (saw [freq (* freq 1.01)]) f-env)))
        audio (* amp env sig)]
    audio))

(definst buzz
  [pitch 40 cutoff 300 dur 200]
  (let [lpf-lev (* (+ 1 (lf-noise1:kr 10)) 400)
        a (lpf (saw (midicps pitch)) lpf-lev)
        b (sin-osc (midicps (- pitch 12)))
        env (env-gen 1 1 0 1 2 (perc 0.01 (/ dur 1000)))]
    (* env (+ a b))))

(definst bass
  [freq 120 t 0.6 amp 0.5]
  (let [env (env-gen (perc 0.08 t) :action FREE)
        src (saw [freq (* 0.98 freq) (* 2.015 freq)])
        src (clip2 (* 1.3 src) 0.8)
