anchor.diff:       -7 -5 -4 -2)))
   
   (defpattern chords-4B (:accompany ((bassline-4B)))
  -  (chord 32 7 -0.2 nil  9 6 2 -1 -8 -17)
  -  (chord 32 7 -0.2 nil  7 2 0 -4 -14 -19)
  -  (chord 32 7 -0.2 nil  2 -2 -5 -14 -21)
  -  (chord 32 7 -0.2 nil  4 -1 -6 -11 -18)
  -  (chord 22 7 -0.2 t  10 6 1 -6 -13)
  -  (rst 10)
  -  (chord 22 7 -0.2 t  13 10 6 -2 -6 -13)
  -  (rst 10)
  +  (chord 24 7 -0.2 nil  9 6 2 -1 -8 -17)
  +  (chord 24 7 -0.2 nil  7 2 0 -4 -14 -19)
  +
  +  (chord 24 7 -0.2 nil  2 -2 -5 -14 -21)
  +  (chord 24 7 -0.2 nil  4 -1 -6 -11 -18)
  +
  +  (chord 24 7 -0.2 t  10 6 1 -6 -13)
  +  (chord (+ 12 6) 7 -0.2 t  13 10 6 -2 -6 -13)
  +  (rst (- 12 6))
  +
  +  (rst 6)
  +  (chord 10 7 -0.2 t  8 3 0 -3 -12)
     (rst 8)
  -  (chord 14 7 -0.2 t  8 3 0 -3 -12)
  -  (rst 10)
  -  (chord 32 7 -0.2 t  10 5 2 0 -2))
  +  (chord 24 7 -0.2 t  10 5 2 0 -2))
   
   (defpattern sax-4B (:accompany ((bassline-4B)))
     (fast-line '(nil 14 19 23 14 17 20 24))
     (fast-line '(15 17 19 22 16 18 20 23))
  -  (note 0 24 (et 18))
  +  (note 0 18 (et 18) :vibrato-delay 4)
     (fast-line '(15 13 12 11 7))
     (fast-line '(12 14 15 12 19 17 14 12)))
   
  
positive.code:      -3 -5 -6 -8)))
  
  (defpattern chords-4A (:accompany ((bassline-4A)))
    (chord (+ 16 6) 7 -0.2 t  13 10 6 3 -6 -13)
    (rst (- 16 6))
    (chord 32 7 -0.2 nil  11 6 4 0 -6 -10)
    (chord 32 7 -0.2 nil  9 6 2 -1 -8 -13)
    (chord 32 6 -0.2 nil  7 2 -2 -4 -14)
    (chord (+ 16 6) 7 -0.2 t  10 7 2 -5 -9)
    (rst (- 16 6))
    (chord (+ 16 6) 7 -0.2 t  10 7 2 -5 -9)
    (rst (- 16 6))
    (rst 8)                               ; skipped bass note..
    (chord (+ 8 6) 6 -0.2 t  11 7 4 0 -8)
    (rst (- 16 6))
    (chord 32 7 -0.2 t  14 9 6 4 2 0 -6))
  
  (defpattern sax-4A (:accompany ((bassline-4A) (chords-4A)))
    (note 0 56 (et 26) :vibrato-delay 20 :cfg *sax-long*)
    (note 0  4 (et 25) :cfg *sax-config*)
    (note 0  4 (et 24))
  
    (fast-line '(23 14 19 23 22 21 20 24))
  
    (fast-line '(22 19 17 15 19 15))
    (rst 16)
  
    (bup 26 24 :vibrato-delay 12)
    (note 0 8 (et 22))
    (rst 8)
    (note 0 8 (et 18))
    (note 0 16 (et 14)))
  
  (defpattern bassline-4B ()
    (walking-bassline
  
negative.code:               (list (register 1 0))))))
  
  (defpattern sax-1A (:accompany ((bassline-1A)))
    (bup 18 24 :vibrato-delay 16)
    (note 0 24 (et 14) :vibrato-delay 0)
    (bup 11 24)
    (note 0 18 (et  7))
    (note 0 (+ 48 6) (et 10) :d 64 :vibrato-delay 12)
    (bup 11 18)
    (note 0 (+ 6 24) (et 9) :vibrato-delay 8))
  
  (defpattern sax-1BCD (:accompany ((seq (bassline-1B)
                                         (bassline-1C)
                                         (bassline-1D))))
    (bup 14 24)
    (note 0 24 (et 11) :vibrato-delay 8)
    (bup 7 24 :vibrato-delay 24)
    (note 0 16 (et 3))
    (note 0 (+ 48 6) (et 6) :d 64 :vibrato-delay 24)
    (bup 7 24)
    (note 0 18 (et 5) :vibrato-delay 0)
    (note 0 (+ 48 6) (et 10) :vibrato-delay 24)
    (note 0 24 (et 11) :d 30 :vibrato-delay 8)
    (note 0 18 (et  9) :d 23)
    (note 0 (+ 6 48) (et 14) :vibrato-delay 8)
  
    (bup 15 24)
    (note 0 18 (et 15) :d 20)
    (note 0 (+ 6 48) (et 18) :d 64 :vibrato-delay 24)
    (note 0 24 (et 19) :vibrato-delay 8)
    (note 0 18 (et 19) :d 20)
    (note 0 (+ 6 48) (et 22) :d 64 :vibrato-delay 24)
  
    (note 0 18 (et 18) :vibrato-delay 0)
    (note 0 9 (et 18) :vibrato-delay 0)
    (rst 18))
  
  ;; FIXME: redefines existing definition, breaks other hacks..
  (defun chord (length volume decay mute &rest notes)
    (arpeggio 1 length (mapcar (lambda (x) (et (+ x 12))) notes)
              :rate (if (<= (length notes) 3) 2 1)
  