@1
S:MOV UP DOWN
MOV DOWN ACC
MOV DOWN NIL
L:SAV
MOV UP DOWN
SUB DOWN
JGZ U
ADD DOWN
JMP L
U:MOV DOWN ACC
JNZ L
SWP
MOV ACC DOWN

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

@5
S:MOV 0 ACC
L:SUB UP
JRO UP
K:ADD UP
JGZ A
ADD UP
JGZ B
MOV 1 UP
JMP K
A:MOV UP NIL
B:MOV -999 UP
MOV ACC DOWN
