@0
S: MOV UP, ACC
MOV ACC, DOWN
JEZ W
SWP
MOV ACC, DOWN
SUB 27
JEZ W
MOV 0, DOWN
ADD 30
SWP
JMP S
W: SAV
MOV 3, DOWN

@3
S: MOV UP, ACC
MOV ACC, RIGHT
JEZ E
MOV ACC, DOWN
MOV UP, ACC
MOV ACC, DOWN
MOV ACC, RIGHT
E: MOV UP, RIGHT

@4
S: MOV LEFT, ACC
JEZ NL
MOV ACC, RIGHT
MOV LEFT, RIGHT
SWP
MOV ACC, DOWN
MOV ACC, RIGHT
E: ADD LEFT
SWP
JMP S
NL: SWP
JMP E

@5
MOV LEFT, DOWN

@6
S: MOV UP, ACC
SUB 3
JEZ C3
JGZ C4
MOV UP, ACC
O: MOV ACC, RIGHT
MOV 0, RIGHT
JMP S
C3: MOV UP, ACC
ADD 1
JMP O
C4: MOV UP, RIGHT
MOV 3, RIGHT

@7
S: MOV LEFT, DOWN
MOV UP, DOWN
MOV 3, DOWN
MOV LEFT, ACC
JEZ NF
MOV ACC, DOWN
NF: MOV -1, DOWN
MOV RIGHT, DOWN
MOV RIGHT, DOWN
MOV 3, DOWN
MOV -1, DOWN

@8
S: MOV UP, ACC
SUB 2
JEZ C2
MOV UP, ACC
JMP Y
C2: MOV UP, ACC
ADD 1
Y: SAV
MOV UP, ACC
ADD 1
SWP
MOV ACC, LEFT
SWP
MOV ACC, LEFT
