@0
MOV UP, RIGHT

@1
U:MOV LEFT, ACC
SAV
L:MOV UP, ACC
MOV ACC, DOWN
JEZ U
SWP
MOV ACC, DOWN
MOV ACC, DOWN
SWP
JMP L

@2
MOV UP, DOWN

@4
L:MOV UP, ACC
JEZ Z
SUB UP
JLZ C
ADD UP
MOV ACC, DOWN
JMP L
C:MOV UP, DOWN
JMP L
Z:MOV ACC, DOWN

@5
MOV UP, DOWN

@8
L:MOV UP, ACC
JEZ Z
SUB RIGHT
JGZ C
ADD RIGHT
T:MOV 1, RIGHT
MOV ACC, DOWN
JMP L
C:MOV RIGHT, ACC
JMP T
Z:MOV ACC, DOWN
MOV RIGHT, NIL
MOV RIGHT, NIL
MOV 0, RIGHT

@9
U:MOV UP, ACC
R:MOV ACC, LEFT
MOV ACC, LEFT
SWP
MOV LEFT, ACC
JEZ U
SWP
JMP R
