%%HP: T(3)A(D)F(.);
@ BACH, by Lee Lightfoot
DIR
  up
    \<< UPDIR
    \>>
  SHH
    \<<
      IF -40 FS?
      THEN -40 CF
      ELSE -40 SF
      END
    \>>
  BACHEMAJ
    \<< P1 P9 P12 P15
P21 P26 P32 P35 P47
P53 P60 P70 P74 P81
P95 P101 P107 P114
P118 P1 P9 P12 P15
P21 P26 P32 P35
ENND
    \>>
  P1
    \<< .8 LE .8 LGS
.8 B .4 WAIT 1 2
      START .2 LGS
.2 A .4 B
      NEXT .4 E .4
B .2 B .2 A .4 LGS
.2 LFS .2 LE .2 A
.2 B .2 CS .2 A .2
LGS .2 A .2 B .2
LGS .2 LFS .2 B .2
CS .2 DS .2 E .2 FS
.2 GS .2 HA 1 8
      START .2 HB
      NEXT .28 HB
.2 GS .2 E .2 CS .2
B .2 CS .2 E .2 GS
1 8
      START .2 HA
      NEXT .28 HA
.2 FS .2 DS .2 B .2
A .2 B .2 DS .2 FS
1 8
      START .2 GS
      NEXT .2 HA .2
HB .2 HCS .2 HA .2
GS .2 HA .2 HB .2
GS .2 FS .2 GS .2
HA .2 FS .2 E .2 FS
.2 GS .2 E .2 DS .2
E .2 FS .2 DS .2 A
.2 B .2 CS .2 A .2
LFS .2 LGS .2 A .2
LFS .2 LDS .2 LE .2
LFS .2 LDS .8 LB
    \>>
  P9
    \<< .3 WAIT .2 FS
.08 GS .08 HA 1 5
      START .04 GS
.04 HA
      NEXT .05 GS
.08 FS .08 E .2 GS
.2 FS .2 E .2 DS .4
E .2 B .2 B .2 CS
.2 CS .2 DS .2 DS
.2 E .2 E .2 B .2 B
.2 CS .2 CS .2 DS
.2 DS .2 E .2 FS .2
GS .2 E .2 HA .2 FS
.4 HB 1 3
      START .04 GS
.04 HA
      NEXT .05 GS
.2 FS .2 E .2 GS .2
FS .2 E .2 DS .8 E
.8 WAIT
    \>>
  P12
    \<< .8 LE .8 LGS
.8 B .4 WAIT .4 B
.2 CS .2 DS .2 E .2
CS .6 B .2 B .2 CS
.08 DS .08 E .2 DS
.08 E .08 FS .2 B
.2 DS .2 E .2 GS .2
HA .2 GS .2 FS .2
HA .2 GS .2 FS .2 E
.2 GS .2 FS .2 E .2
DS .2 CS .2 B .2 A
.2 LGS .2 LFS .8 LE
    \>>
  P15
    \<< .8 LGS .8 B
.4 WAIT 1 2
      START .2 LGS
.2 A .4 B
      NEXT .4 E .4
B .2 B .2 A .4 LGS
.2 LFS .2 LE .2 A
.2 B .2 CS .2 A .2
LGS .2 A .2 B .2
LGS .2 LFS .2 A .2
B .2 DS .2 FS .2 DS
.2 CS .2 B .2 A .2
B .2 DS .2 FS .2 HA
.2 GS .2 FS .2 E .2
DS .2 E .2 FS .2 DS
.2 B .2 DS .2 CS .2
B .2 HA .2 GS .2 FS
.2 E .2 DS .2 E .2
FS .2 DS .2 B .2 DS
.2 CS .2 B .2 HA .2
GS .2 FS .2 E .2 DS
.2 E .2 FS .2 DS .4
B .2 DS .2 E .4 FS
.2 DS .2 E .4 FS .4
HB .4 FS .2 FS .2 E
.4 DS .2 DS .2 CS
    \>>
  P21
    \<< .2 FS .2 HB
.2 FS .2 E .2 DS .2
FS .2 DS .2 CS .2 B
.2 HA .2 FS .2 E .2
DS .2 FS .2 DS .2
CS .2 B .2 GS .2 E
.2 DS .2 CS .2 E .2
CS .2 B .2 BF .2 CS
.2 E .2 GS .6 FS .2
E .28 DS .2 FS .2
HAS .2 HB .28 CS .2
E .2 HAS .2 HB .28
B .2 DS .2 HAS .2
HB .28 LF .2 CS .2
GS .2 HB .2 HAS .2
FS .2 CS .2 BF .2
LFS .3 CS .3 DS .3
E 1 8
      START .2 FS
      NEXT .28 FS
.2 DS .2 C .2 LGS
.2 LFS .2 LGS .2 B
.2 DS 1 8
      START .2 E
      NEXT .28 E
    \>>
  P26
    \<< .2 CS .2 BF
.2 LFS .2 LE .2 LFS
.2 BF .2 CS 1 8
      START .2 DS
      NEXT .2 E .2
FS .2 GS .2 E .2 DS
.2 E .2 FS .2 DS .2
CS .2 DS .2 E .2 CS
.2 B .2 CS .2 DS .2
B .2 BF .2 B .2 CS
.2 BF .2 LE .2 LFS
.2 LGS .2 LE .2 LCS
.2 LDS .2 LE .2 LCS
.2 LAS .2 LB .2 LCS
.2 LDS .2 LE .2 LFS
.2 LGS .2 BF .2 B
.2 CS .2 DS .08 E
.08 FS .4 DS .2 CS
.2 B .4 CS .2 B .2
BF .2 B .08 DS .08
E .2 FS .2 B .2 GS
.2 B .2 HAS .2 B .2
HB .08 HAS .08 GS
.2 FS .2 E .08 DS
.08 E .2 FS .08 CS
.08 DS .2 E .08 DS
.08 CS .2 B .2 FS
.2 DS .2 HB .2 FS
.2 DS .2 B .2 LFS
.08 B .08 BF .2 B
.2 LFS .2 LDS .08
LFS .08 LE .2 LFS
.2 LDS .4 LB
    \>>
  P32
    \<< .2 LFS .2 LFS
.2 LGS .2 LGS .2 BF
.2 BF .4 B .2 LFS
.2 LFS .2 LGS .2
LGS .2 BF .2 BF .2
B .2 CS .2 DS .2 B
.2 E .2 CS .4 FS .2
E .2 DS .2 CS .2 B
.2 DS .2 CS .2 B .2
BF .8 B .8 WAIT
    \>>
  P35
    \<< .4 WAIT .2 LB
.2 LD .2 LE .2 LGS
.2 B .2 LGS .2 LFS
.2 LE .2 LD .2 LE
.2 LGS .2 B .2 D .2
CS .2 B .2 A .2 LGS
.2 A .2 B .2 LGS .2
LE .2 LGS .2 LFS .2
LE .22 D .2 CS .2 B
.2 A .2 LGS .2 A .2
B .2 LGS .2 LE .2
LGS .2 LFS .2 LE
.22 D .2 CS .2 B .2
A .2 LGS .2 A .2 B
.2 LGS .4 LE .2 LGS
.2 A .4 B .2 LGS .2
A .4 B .4 E .4 B .2
B .2 A .4 LGS .2
LFS .2 LE .2 B .2 E
.2 B .2 A .2 LGS .2
B .2 LGS .2 LFS .22
LE .2 D .2 B .2 A
.2 LGS .2 B .2 LGS
.2 LFS .22 LE .2 CS
.2 A .2 LGS .2 LFS
.2 A .2 LFS .2 LE
.2 LDS .2 LFS .2 A
.2 CS .6 B .2 A .23
LGS .2 B .2 DS .2 E
.23 LFS .2 A .2 DS
.2 E .23 LE .2 LGS
.2 DS .2 E .23 LAS
.2 LFS .2 CS .2 E
.2 DS .2 B .2 LFS
.2 LDS .2 LB .3 FS
.3 GS .3 HA 1 8
      START .2 HB
      NEXT .28 HB
.2 GS .2 E .2 CS .2
B .2 CS .2 E .2 GS
1 8
      START .2 HA
      NEXT .28 HA
.2 FS .2 DS .2 B .2
A .2 B .2 DS .2 FS
1 8
      START .2 GS
      NEXT .2 HA .2
HB .2 HCS .2 HA .2
GS .2 HA .2 HB .2
GS .2 FS .2 GS .2
HA .2 FS .2 E .2 FS
.2 GS .2 E .2 DS .2
E .2 FS .2 DS .2 A
.2 B .2 CS .2 A .2
LFS .2 LGS .2 A .2
LFS .2 LDS .2 LE .2
LFS .2 LDS .2 LB
    \>>
  P47
    \<< .2 LDS .2 LFS
.2 A .2 B .2 DS .2
FS .08 GS .08 HA .4
GS .2 FS .2 E .4 FS
.2 E .2 DS .2 E .08
GS .08 HA .2 HB .2
E .2 HCS .2 E .2
HDS .2 E .2 HE .08
HDS .08 HCS .2 HB
.2 HA .08 GS .08 HA
.2 HB .08 FS .08 GS
.2 HA .08 GS .08 FS
.2 E .2 HB .2 GS .2
HE .2 HB .2 GS .2 E
.2 B .08 E .08 DS
.2 E .2 B .2 LGS
.08 B .08 A .2 B .2
LGS .4 LE .2 B .2 B
.2 CS .2 CS .2 DS
.2 DS .4 E .2 B .2
B .2 CS .2 CS .2 DS
.2 DS .2 E .2 FS .2
GS .2 E .2 HA .2 FS
.4 HB .2 HA .2 GS
.2 FS .2 E .2 GS .2
FS .2 E .2 DS .8 E
.8 WAIT
    \>>
  P53
    \<< .28 GS .2 CS
.2 C .2 CS .2 LGS
.2 CS .2 DS .2 C .2
CS .2 LGS .2 A .2
LFS .2 LGS .2 CS .2
DS .2 E .22 DS .2
GS .2 G .2 GS .2 DS
.2 GS .2 HAS .2 G
.2 GS .2 DS .2 E .2
CS .2 DS .2 GS .2 G
.2 GS .2 CS .2 C .2
CS .2 FS .2 GS .2 F
.2 FS .2 CS .2 D .2
B .2 CS .2 LGS .2 A
.2 LFS .2 LGS .2 A
.22 LC .2 LGS .2 DS
.2 E .2 FS .2 DS .2
E .2 CS .2 C .2 DS
.2 FS .2 HA .2 GS
.2 FS .2 E .2 DS 1
8
      START .2 E .2
HCS
      NEXT 1 8
      START .2 DS
.2 HCS
      NEXT 1 4
      START .2 DS
.2 HB
      NEXT 1 4
      START .2 D .2
HB
      NEXT
    \>>
  P60
    \<< 1 8
      START .21 CS
.2 HB
      NEXT 1 8
      START .21 CS
.2 HA
      NEXT 1 6
      START .21 C
.2 HA
      NEXT .21 CS
.2 HA .21 CS .2 HA
1 4
      START .21 DS
.2 HA
      NEXT .21 DS
.2 GS .21 DS .2 GS
.21 DS .2 FS .21 DS
.2 FS 1 4
      START .21 DS
.2 E
      NEXT 1 4
      START .21 CS
.2 E
      NEXT 1 4
      START .21 B
.2 F
      NEXT 1 4
      START .21 A
.2 FS
      NEXT 1 4
      START .21 A
.2 DS
      NEXT .21 LGS
.2 E .21 LGS .2 E
.21 LGS .2 D .21
LGS .2 D 1 4
      START .21 LGS
.2 CS
      NEXT .21 LFS
.2 DS .21 LFS .2 DS
.21 LFS .2 CS .21
LFS .2 CS 1 4
      START .21 LFS
.2 C
      NEXT 1 4
      START .21 LE
.2 CS
      NEXT 1 4
      START .21 LG
.2 CS
      NEXT 1 4
      START .21 LGS
.2 C
      NEXT
    \>>
  P70
    \<< .86 CS .87 E
.91 GS .4 WAIT .2 E
.2 FS .4 GS .2 E .2
FS .4 GS .46 HCS .4
GS .2 GS .2 FS .4 E
.2 DS .2 CS .27 HAS
.2 E .2 DS .2 CS .2
LFS .2 CS .2 DS .2
E .26 HAS .2 E .2
DS .2 CS .2 LFS .2
CS .2 DS .2 E .24
HB .2 FS .2 DS .2
HB .2 FS .2 DS .2 B
.2 FS .2 DS .2 B .2
LFS .2 LDS .4 LB .2
DS .2 E
    \>>
  P74
    \<< .4 FS .2 DS
.2 E .4 FS .4 HB .4
FS .2 FS .2 E .4 DS
.2 CS .2 B .27 GS
.2 D .2 CS .2 B .2
LE .2 B .2 CS .2 D
.2 GS .2 D .2 CS .2
B .2 LE .2 B .2 CS
.2 D .2 HA .2 E .2
CS .2 HA .2 E .2 CS
.2 A .2 E .2 CS .2
A .2 LE .2 LCS .4
LA .2 LCS .2 LD .4
LE .2 LCS .2 LD .4
LE .4 A .4 LE .2 LE
.2 LD .4 LCS .2 LB
.2 LA .2 D .2 E .2
D .2 B .2 CS .2 D
.2 CS .2 A .2 B .2
LE .2 LFS .2 LGS .2
A .2 B .2 CS .2 D 1
9
      START .2 E
      NEXT .27 G
.29 HAS .3 HB .32
HCS .2 G .2 FS .2 E
1 9
      START .2 D
      NEXT .08 E
.08 FS .2 GS .2 HA
.2 HB .2 FS .2 E .2
D
    \>>
  P81
    \<< 1 8
      START .2 CS
      NEXT .2 D .08
GS .08 HA .2 HB .2
GS .2 CS .08 FS .08
GS .2 HA .2 FS .2 B
.08 E .08 FS .2 GS
.2 E .2 A .08 D .08
E .2 FS .2 D 1 4
      START .2 LGS
.2 D 1 3
        START .2 E
.2 D
        NEXT
      NEXT 1 4
      START .2 LG
.2 CS 1 3
        START .2 E
.2 CS
        NEXT
      NEXT 1 4
      START .2 LFS
.2 CS 1 3
        START .2 E
.2 CS
        NEXT
      NEXT 1 4
      START .2 LFS
.2 D 1 3
        START .2 HB
.2 D
        NEXT
      NEXT 1 4
      START .2 LF
.2 CS 1 3
        START .2 HB
.2 CS
        NEXT
      NEXT .4 HA .2
GS .2 FS .4 GS .2
FS .2 F .2 FS .2 FS
.2 E .2 FS .2 D .2
FS .2 CS .2 FS .2 D
.2 FS .2 CS .2 FS
.2 B .2 FS .2 A .2
FS .2 LGS .2 B .8 D
.4 CS .2 B .2 A .2
LGS .2 LFS .2 A .2
LGS .2 LFS .2 LF
    \>>
  P95
    \<< .4 LFS .02
WAIT .4 CS .02 WAIT
.4 FS .02 WAIT .4 A
.02 WAIT .2 LGS .2
B .2 D .2 FS .4 E
.4 GS .4 HAS .2 D
.2 CS .4 D .4 HB .4
GS .2 CS .2 B .4 CS
.4 HA .2 HA .2 FS
.2 DS .2 B .4 GS .4
GS .2 E .2 CS .2 BF
.2 LFS .2 BF .2 CS
.2 E .2 DS .4 E .2
CS .2 DS .4 E .4 E
.4 E .2 DS .2 CS .4
DS .2 B .2 CS .4 D
.2 B .2 CS .4 D .2
CS .2 B .4 CS .2 A
.2 B .4 CS .2 B .2
A .4 HA .2 FS .2 GS
.4 HA .2 GS .2 FS
.4 GS .2 B .2 CS .4
D .2 CS .2 B
    \>>
  P101
    \<< .4 GS .2 HA
.2 GS .2 FS .2 E .2
DS .2 CS .2 B .2
LGS .2 A .2 LFS .4
LB .4 HA .2 GS .2
HA .2 HB .2 GS .2
FS .2 GS .2 HA .2
FS .2 E .2 FS .2 GS
.2 E .2 DS .2 E .2
FS .2 DS .2 CS .2
DS .2 E .2 B .2 CS
.2 E .2 DS .2 FS .2
E .2 FS .2 GS .2 B
.2 CS .2 E .2 DS .2
FS .2 E .2 FS .2 GS
.2 DS .2 E .2 GS .2
FS .2 HA .2 GS .2
HA .2 HB .2 DS .2 E
.2 GS .2 FS .2 HA
.2 GS .2 HA .2 HB
.2 GS .2 HA .2 FS
.2 GS .2 E .2 DS .2
E .2 FS .2 DS .2 E
.2 CS .2 DS .2 B .2
A .2 B .2 CS .2 LGS
.2 A .2 LE .2 LFS
.2 LDS .8 LB .4
WAIT .4 DS
    \>>
  P107
    \<< .27 HAS .2 DS
.2 CS .2 DS .26 LG
.2 DS .2 CS .2 DS
.25 E .2 CS .2 DS
.2 B .24 CS .2 HAS
.2 GS .2 HAS .2 B
.2 CS .2 DS .2 GS
.2 DS .2 CS .2 B .2
BF .2 LGS .2 BF .2
B .2 DS .2 B .2 BF
.2 LGS .2 LFS .2 LE
.2 LFS .2 LGS .2 CS
.2 LGS .2 LFS .2 LE
.2 LDS .2 LCS .2
LDS .2 LE .2 LGS .2
CS .2 DS .2 E .2 CS
1 4
      START .19 G
.19 CS .19 HAS .19
CS
      NEXT 1 4
      START .18 GS
.18 B .18 HB .18 B
      NEXT 1 4
      START .17 HAS
.17 DS .17 HCS .17
DS
      NEXT 1 4
      START .16 HB
.16 DS .16 HDS .16
DS
      NEXT
    \>>
  P114
    \<< .15 E .15 DS
.15 E .35 HCS .16
HCS .16 HB .16 HCS
.32 HAS .16 HAS .16
GS .16 HAS .32 G
.16 G .16 GS .16 G
.32 E .17 E .17 DS
.17 E .32 CS .18 CS
.18 C .18 CS .35 LG
.1 LAS .1 LG 1.2 CS
.3 WAIT .2 CS .08
DS .08 E 1 4
      START .03 DS
.03 E
      NEXT .2 CS .2
B .2 DS .2 CS .2 B
.2 BF 3.7 LGS .2
BGS .2 LFS .2 BGS
.2 LE .2 BGS .2 LDS
.2 BGS
    \>>
  P118
    \<< .2 LE .2 LCS
.2 LC .2 LCS 1 A .2
LE .2 LDS .2 LE 1
CS .2 A .2 LGS .2 A
1 E .2 DS .2 CS .2
E 1 HAS .25 GS .26
G .27 HAS 1.1 HCS
.28 HB .29 HAS .3
HCS 1.5 HE .5 WAIT
.7 HDS .7 HCS .7 HB
.7 HAS .7 GS .7 G
.7 GS .7 E .7 DS .7
D .7 DS .7 LG .7
LGS .7 LD .7 LDS
.15 WAIT 3.6 B .35
BF .7 LGS .35 LG
.35 LGS 3.5 LGS 3.5
WAIT
    \>>
  ENND
    \<< .2 LDS .2 LFS
.2 A .2 B .2 DS .2
FS .08 GS .08 HA .4
GS .2 FS .2 E .4 FS
.2 E .2 DS .2 E .08
GS .08 HA .2 HB .2
E .2 HCS .2 E .2
HDS .2 E .2 HE .08
HDS .08 HCS .2 HB
.2 HA .08 GS .08 HA
.2 HB .08 FS .08 GS
.2 HA .08 GS .08 FS
.2 E .2 HB .2 GS .2
HE .2 HB .2 GS .2 E
.2 B .08 E .08 DS
.2 E .2 B .2 LGS
.08 B .08 A .2 B .2
LGS .4 LE .2 B .2 B
.2 CS .2 CS .2 DS
.2 DS .4 E .2 B .2
B .2 CS .2 CS .2 DS
.2 DS .2 E .2 FS .2
GS .2 E .2 HA .2 FS
.4 HB .22 HA .24 GS
.26 FS .28 E .3 GS
.32 FS .34 E .36 DS
1.5 E
    \>>
  BGS
    \<< 207 SWAP BEEP
    \>>
  LA
    \<< 220 SWAP BEEP
    \>>
  LAS
    \<< 233 SWAP BEEP
    \>>
  LB
    \<< 246.94 SWAP
BEEP
    \>>
  LC
    \<< 261 SWAP BEEP
    \>>
  LCS
    \<< 277 SWAP BEEP
    \>>
  LD
    \<< 294 SWAP BEEP
    \>>
  LDS
    \<< 311 SWAP BEEP
    \>>
  LE
    \<< 329 SWAP BEEP
    \>>
  LF
    \<< 349 SWAP BEEP
    \>>
  LFS
    \<< 370 SWAP BEEP
    \>>
  LG
    \<< 392 SWAP BEEP
    \>>
  LGS
    \<< 415 SWAP BEEP
    \>>
  A
    \<< 440 SWAP BEEP
    \>>
  BF
    \<< 466 SWAP BEEP
    \>>
  B
    \<< 493 SWAP BEEP
    \>>
  C
    \<< 523 SWAP BEEP
    \>>
  CS
    \<< 554 SWAP BEEP
    \>>
  D
    \<< 587 SWAP BEEP
    \>>
  DS
    \<< 622 SWAP BEEP
    \>>
  E
    \<< 659 SWAP BEEP
    \>>
  F
    \<< 698 SWAP BEEP
    \>>
  FS
    \<< 740 SWAP BEEP
    \>>
  G
    \<< 784 SWAP BEEP
    \>>
  GS
    \<< 831 SWAP BEEP
    \>>
  HA
    \<< 880 SWAP BEEP
    \>>
  HAS
    \<< 932 SWAP BEEP
    \>>
  HB
    \<< 988 SWAP BEEP
    \>>
  HC
    \<< 1046 SWAP
BEEP
    \>>
  HCS
    \<< 1109 SWAP
BEEP
    \>>
  HD
    \<< 1175 SWAP
BEEP
    \>>
  HDS
    \<< 1244 SWAP
BEEP
    \>>
  HE
    \<< 1318 SWAP
BEEP
    \>>
  order
    \<< { up SHH
BACHEMAJ P1 P9 P12
P15 P21 P26 P32 P35
P47 P53 P60 P70 P74
P81 P95 P101 P107
P114 P118 ENND BGS
LA LAS LB LC LCS LD
LDS LE LF LFS LG
LGS A BF B C CS D
DS E F FS G GS HA
HAS HB HC HCS HD
HDS HE } ORDER
    \>>
END
