@0
SAV
MOV UP,ACC
MOV ACC,RIGHT
L: SUB RIGHT
JLZ E
SWP
ADD RIGHT
SWP
MOV 1,RIGHT
JMP L
E: MOV RIGHT,NIL
MOV ACC,RIGHT
SWP
MOV ACC,DOWN
SUB ACC

@1
A: MOV UP,ACC
MOV LEFT,DOWN
MOV ACC,DOWN
SAV
C: SWP
B: MOV ACC,LEFT
MOV ACC,LEFT
SAV
MOV LEFT,ACC
JGZ C
MOV ACC,DOWN

@2
MOV UP,ACC
SAV
MOV RIGHT,ACC
ADD RIGHT
ADD ACC
SUB RIGHT
JGZ U
MOV RIGHT,ACC
JMP O
U: SWP
ADD RIGHT
SWP
O: SWP
MOV ACC,DOWN

@3
MOV UP,RIGHT
MOV UP,ACC
MOV UP,LEFT
MOV ACC,LEFT
MOV ACC,LEFT
MOV ACC,LEFT
NEG
ADD 11
SAV
C: SWP
R: MOV ACC,RIGHT
MOV ACC,RIGHT
SAV
MOV RIGHT,ACC
JNZ C

@4
MOV 0,ACC
SAV
MOV LEFT,ACC
L: SUB LEFT
JLZ E
SWP
ADD LEFT
SWP
MOV 1,LEFT
JMP L
E: MOV ACC,DOWN
SWP
MOV ACC,DOWN
MOV LEFT,DOWN
MOV 0,LEFT

@5
MOV ANY,DOWN

@6
MOV RIGHT,ACC
SAV
MOV RIGHT,ACC
SWP
ADD RIGHT
ADD ACC
SUB RIGHT
JGZ U
MOV RIGHT,NIL
JMP O
U: SWP
ADD RIGHT
SWP
O: SWP
MOV ACC,DOWN

@7
MOV UP,LEFT
MOV UP,LEFT
MOV UP,ACC
MOV ACC,LEFT
MOV ACC,LEFT
MOV ACC,LEFT
