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

@1
MOV UP, ACC
MOV ACC, LEFT
MOV ACC, LEFT
MOV ACC, LEFT
MOV LEFT, ACC
MOV ACC, DOWN
MOV LEFT, ACC
MOV ACC, DOWN

@2
MOV UP, ACC
SUB RIGHT
JLZ N
ADD RIGHT
MOV RIGHT, DOWN
JMP E
N: ADD RIGHT
MOV ACC, DOWN
MOV RIGHT, ACC
E: MOV ACC, DOWN
MOV ACC, DOWN

@3
MOV UP, ACC
MOV ACC, LEFT
MOV ACC, LEFT
MOV ACC, LEFT

@5
MOV UP, ACC
MOV ACC, RIGHT
MOV ACC, RIGHT
MOV UP, ACC
SUB RIGHT
JLZ N
MOV RIGHT, ACC
JMP E
N: ADD RIGHT
E: MOV ACC, RIGHT

@6
MOV UP, ACC
SUB LEFT
JLZ N
ADD LEFT
JMP F
N: MOV LEFT, ACC
F: MOV UP, LEFT
MOV UP, LEFT
MOV LEFT, DOWN
MOV ACC, DOWN
MOV ACC, DOWN

@9
MOV UP, ACC
SUB UP
JLZ N
ADD UP
JMP O
N: MOV UP, ACC
O: MOV ACC, DOWN
