@0
S:MOV 999 ACC
L:SAV
SUB RIGHT
JGZ U
ADD RIGHT
JMP L
U:MOV RIGHT ACC
JNZ L
SWP
MOV ACC RIGHT

@1
L:MOV UP ACC
MOV ACC LEFT
MOV ACC LEFT
MOV ACC DOWN
JNZ L
MOV LEFT DOWN

@3
S:MOV UP ACC
JNZ N
MOV -999 DOWN
MOV UP ACC
L:MOV ACC DOWN
JRO DOWN
ADD 1
JMP L
N:MOV ACC DOWN

@5
S:MOV 0 ACC
L:SUB UP
JLZ L
SUB 999
K:ADD UP
JGZ O
MOV 1 UP
JMP K
O:MOV -999 UP
MOV ACC DOWN
