@0
S: MOV UP, ACC
JEZ T
SWP
ADD 1
SWP
MOV ACC, RIGHT
JMP S
T: SWP
NEG
MOV ACC, RIGHT

@1
MOV DOWN, ACC
D: SAV
SUB UP
NEG
ADD 11
MOV ACC, DOWN
SWP
A: SAV
MOV UP, ACC
ADD 1
NEG
ADD 11
MOV ACC, DOWN
SWP
JMP D

@3
L: MOV UP, ACC
MOV ACC, DOWN
MOV ACC, RIGHT
JGZ L
MOV ACC, UP
MOV DOWN, NIL
M: MOV DOWN, ACC
MOV ACC, UP
MOV ACC, RIGHT
JNZ M
MOV 0, DOWN
MOV UP, NIL

@4
LF: MOV LEFT, ACC
MOV ACC, RIGHT
JGZ LF
SL: NEG
MOV ACC, UP
Q: MOV UP, ACC
MOV ACC, RIGHT
F: MOV LEFT, ACC
MOV ACC, RIGHT
JGZ F
JMP Q

@5
D: MOV LEFT, ACC
JGZ D
R: MOV LEFT, ACC
JRO ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
MOV LEFT, ACC
P: MOV LEFT, DOWN

@7
MOV 0, LEFT
O: MOV RIGHT, DOWN
JMP O

@8
MOV UP, LEFT
