@1
S: MOV UP, ACC
JMP L
P: MOV -4, DOWN
MOV 0, RIGHT
L: SUB RIGHT
JGZ P
N: MOV 0, RIGHT
ADD RIGHT
MOV -999, RIGHT
MOV 999, DOWN
MOV ACC, DOWN
F: MOV RIGHT, DOWN
MOV DOWN, ACC
MOV ACC, RIGHT
JEZ F

@2
S: MOV UP, ACC
SAV
ADD ACC
ADD ACC
D: MOV ACC, LEFT
ADD LEFT
JGZ D
SWP
E: MOV ACC, LEFT
ADD LEFT
JGZ E

@4
L: ADD UP
JLZ L
MOV ACC, DOWN
MOV UP, ACC
O: SUB UP
JLZ N
MOV -1, DOWN
MOV 0, UP
JMP O
N: MOV 0, UP
ADD UP
MOV -999, UP
MOV 999, DOWN
MOV ACC, DOWN
MOV 0, ACC

@7
MOV UP, ACC
NEG
ADD 999
L: SUB UP
JGZ L
ADD 999
MOV ACC, DOWN
MOV UP, RIGHT

@8
MOV LEFT, DOWN
