1 e=1:h=5:j=1:p=1:g=18
30 ENV 1,4,-1,1:SOUND 1,95,24,15,1:SOUND 1,119,24,15,1:FOR a=1 TO 3:g=g-3:RESTORE 40:FOR b=1 TO 3:READ n,m:SOUND 1,n,m,g,1:NEXT b:NEXT a
40 DATA 95,12,89,12,106,24
50 FOR a=1 TO 1000:NEXT a
60 ENV 2,4,0,1,7,-1,1:ENV 3,24,-1.25,0.5:FOR a=1 TO h:RESTORE 100:FOR b=0 TO 15:READ c,d
84 IF d=1 THEN g=12 ELSE g=15
85 IF d=1 THEN ENV 3,3,0,1,1,-12,1
90 SOUND 1,c,12,15,2:SOUND 2+16,0,12,g,3,,d :
93 IF d=31 OR d=8 THEN g=15
94 IF j=2 THEN 96 ELSE GOTO 95
95 NEXT b:NEXT a
96 IF e=1 THEN GOTO 100
97 RETURN
100 DATA 638,1,638,1,319,1,319,1,638,31,638,1,319,1,319,1,638,1,638,1,426,1,426,1,358,31,379,1,426,1,506,1
109 FOR k=1 TO 450:NEXT k
110 RESTORE 200:FOR u=1 TO 32:READ v,w,x
120 IF w=1 THEN y=12 ELSE y=15
130 IF w=1 THEN ENV 3,3,0,1,1,-12,1
135 ENV 5,4,0,1,8,-1,1
140 SOUND 1,v,12,15,2:SOUND 2+16,0,12,y,3,,w:SOUND 4+32,x,12,14,5
150 IF w=31 THEN y=15
160 NEXT u
200 DATA 638,1,0,638,1,0,319,1,119,319,1,0,638,31,106,638,1,0,319,1,119,319,1,0,638,1,127,638,1,0,426,1,159,426,1,0,358,31,127,379,1,0,426,1,159,506,1,0
210 DATA 638,1,95,638,1,106,319,1,89,319,1,106,638,31,0,638,1,0,319,1,0,319,1,0,638,1,0,638,1,0,426,1,0,426,1,0,358,31,0,379,1,0,426,1,0,506,1,0
220 e=2:h=3:GOSUB 60:e=1
221 j=2
230 e=2:RESTORE 260:FOR b=0 TO 15:READ c,d:GOSUB 84
255 NEXT b
260 DATA 638,1,638,1,319,1,319,1,638,31,638,1,319,1,319,1,638,31,638,31,426,1,426,31,358,1,379,31,426,31,506,31
265 e=2:j=2:RESTORE 400:FOR b=0 TO 15:READ c,d:GOSUB 84
270 NEXT b:p=p+1:IF p=4 THEN 273 ELSE 265
273 S=1:p=1
275 e=2:j=2:RESTORE 410:FOR b=0 TO 15:READ c,d:GOSUB 84
280 NEXT b:p=p+1:IF p=2 THEN 281 ELSE 275
281 FOR w=1 TO 420:NEXT w
282 FOR j=1 TO 3
283 k=1
284 GOTO 360
285 s=s+1:RESTORE 420:FOR u=1 TO 16:READ v,w,x
290 IF w=1 THEN y=12 ELSE y=15
300 IF w=1 THEN ENV 3,3,0,1,1,-12,1
310 ENV 5,4,0,1,8,-1,1
320 SOUND 1,v/m,12,15,2:SOUND 2+16,0,12,y,3,,w:SOUND 4+32,x/n,12,14,2
330 IF w=31 THEN y=15
335 IF f=2 THEN RETURN
340 NEXT u
344 IF K=4 AND KIO=2 AND J=2 THEN RETURN
346 IF j=3 AND m=0.891791 THEN 430
350 k=k+1:IF k=1 THEN 360 ELSE IF k=2 THEN 365 ELSE IF k=3 OR k=4 THEN 370
352 IF q=2 THEN RETURN
355 IF k=5 THEN NEXT j
360 m=1:n=1:GOTO 285
365 m=1.189055:n=1.189055:GOTO 285
370 m=0.891791:n=0.891791:GOTO 285
400 DATA 638,31,638,1,319,1,319,1,638,8,638,1,319,1,319,1,638,31,638,1,426,1,426,1,358,8,379,1,426,1,506,1
410 DATA 638,10,638,31,319,1,319,1,638,10,638,31,319,1,319,31,638,10,638,31,426,1,426,31,358,31,379,10,426,10,506,31
420 DATA 638,31,159,638,1,0,319,1,106,319,1,0,638,8,119,638,1,0,319,1,106,319,1,159,638,31,0,638,1,159,426,1,0,426,1,106,358,8,119,379,1,0,426,1,106,506,1,0
430 f=2:q=2:RESTORE 460:FOR u=1 TO 16:READ v,w,x:GOSUB 290:NEXT u
460 DATA 638,31,159,638,1,0,319,1,106,319,1,0,638,8,119,638,1,0,319,1,106,319,1,159,638,31,0,638,1,159,426,1,127,426,1,0,358,8,119,379,1,0,426,1,106,506,1,0
468 te1=1:FOR bsw=1 TO 2:tes=2
470 m=1:n=1:f=2:q=2:GOSUB 880:GOSUB 882:m=1.190299:GOSUB 880:GOSUB 890:m=0.891061:n=0.888268:GOSUB 884:GOSUB 882:GOSUB 884:GOSUB 890:NEXT bsw:kio=2:GOTO 900
471 FOR u=1 TO 8:READ v,w,x:GOSUB 290:NEXT u:RETURN
475 m=1.190299:RESTORE 490:FOR u=1 TO 16:READ v,w,x:GOSUB 290:NEXT u:m=0.891061:n=0.888268:RESTORE 480:FOR u=1 TO 16:READ v,w,x:GOSUB 290:NEXT u
480 DATA 638,31,106,638,1,0,319,1,119,319,1,0,638,8,119,638,1,0,319,1,134,319,1,0
482 DATA 638,31,119,638,1,0,426,1,106,426,1,159,358,8,0,379,1,159,426,1,0,506,1,159
484 DATA 638,31,106,638,1,0,319,1,119,319,1,0,638,8,119,638,1,0,319,1,127,319,1,0
490 DATA 638,31,119,638,1,0,426,1,0,426,1,106,358,8,0,379,1,0,426,1,0,506,1,0
880 RESTORE 480:GOTO 471
882 RESTORE 482:GOTO 471
884 RESTORE 484:GOTO 471
890 RESTORE 490:GOTO 471
900 kio=2:f=1:GOSUB 282:FOR qwe=1 TO 2:m=1:n=1:f=2:q=2:RESTORE 1000:GOSUB 911:m=1.190299:RESTORE 1000:GOSUB 911:RESTORE 1010:m=0.891061:GOSUB 911:RESTORE 1020:GOSUB 911:NEXT qwe:GOTO 1030
911 f=2:FOR u=1 TO 16:READ v,w,x:GOSUB 290:NEXT u:RETURN
1000 DATA 638,8,67,638,1,0,319,1,71,319,15,0,638,31,80,638,31,0,319,1,89,319,31,80,638,8,0,638,1,0,426,1,213,426,31,179,358,8,159,379,12,179,426,1,213,506,31,0
1010 DATA 638,31,67,638,1,0,319,1,71,319,1,0,638,8,80,638,1,0,319,1,89,319,31,119,638,8,0,638,11,0,426,14,0,426,17,0,358,21,0,379,24,0,426,27,0,506,31,0
1020 DATA 638,31,179,638,31,0,319,1,119,319,31,0,638,8,134,638,1,142,319,15,134,319,1,179,638,31,0,638,31,179,426,1,0,426,31,179,358,8,119,379,31,0,426,1,119,506,31,0
1030 FOR qwe=1 TO 2:m=1:n=1:f=2:q=2:RESTORE 1100:GOSUB 1040:RESTORE 1100:m=1.190299:GOSUB 1040:FOR sd=1 TO 2:RESTORE 1110:m=0.891061:GOSUB 1040:NEXT sd:NEXT qwe:q=1:kio=2:f=1:GOSUB 282:GOTO 1120
1040 FOR u=1 TO 16:READ v,w,x:GOSUB 290:NEXT u:RETURN
1100 DATA 638,31,80,638,1,0,319,1,106,319,1,89,638,8,80,638,1,89,319,1,106,319,1,80,638,31,0,638,1,0,426,1,142,426,1,0,358,8,134,379,31,0,426,31,119,506,8,0
1110 DATA 638,31,179,638,1,0,319,1,119,319,1,0,638,8,134,638,1,0,319,1,119,319,1,179,638,31,0,638,1,0,426,5,142,426,8,0,358,13,134,379,19,0,426,25,119,506,31,0
1120 f=12:FOR g=1 TO 2:ENT -4,2,1,1,2,-1,1:ENV 4,15,-1,3.4:SOUND 1,638,f,15,4,4:SOUND 2+16,319,f,15,4,4:SOUND 4+32,159,f,15,4,4:f=30:ENV 4,15,-1,3:NEXT
1130 d=1:j=1:FOR a=1 TO 30:SOUND 1,0,3,j,,,d:j=j+0.4:d=d+0.7:NEXT a
1140 d=0:zF=12:FOR g=1 TO 2:SOUND 1,638,zf+d,15,2,4:SOUND 2+16,0,zf,15,3,,15:SOUND 4+32,0,zf,15,3,,15:zf=45:ENV 3,15,-1,3:ENV 2,15,-1,4:d=15:NEXT g
1150 END