@0
L: MOV UP ACC
MOV ACC DOWN
JEZ L
SUB 3
MOV ACC RIGHT

@1
L: MOV LEFT ACC
JEZ C
MOV 0 DOWN
JGZ D
MOV -1 DOWN
ADD 2
MOV ACC DOWN
JMP L
D: MOV 3 DOWN
MOV 0 DOWN
JMP L
C: MOV 1 DOWN
MOV -1 DOWN
MOV -1 DOWN

@3
L: MOV UP ACC
JNZ C
N: MOV 1 DOWN
SAV
JMP L
C: SWP
MOV ACC RIGHT
MOV 3 DOWN
SUB 27
JEZ N
ADD 30
SWP

@4
MOV LEFT ACC
ADD UP
MOV ACC DOWN
MOV UP DOWN
ADD UP
MOV ACC DOWN

@6
L: JRO UP
ADD 3
JMP L
MOV ACC RIGHT
ADD 1
MOV ACC RIGHT
SUB 1

@7
MOV UP DOWN
MOV LEFT DOWN
MOV 3 DOWN
MOV UP DOWN
MOV -1 DOWN
MOV UP DOWN
MOV LEFT DOWN
MOV 3 DOWN
MOV -1 DOWN
