@0
S: MOV RIGHT, ACC
SAV
MOV RIGHT, ACC
SUB 2
JGZ M
SWP
JMP O
M: SWP
L: SUB 10
JGZ L
ADD 10
O: MOV ACC, DOWN
SWP
MOV ACC, DOWN

@1
S: MOV UP, ACC
SAV
SUB 1
JNZ M
MOV RIGHT, ACC
JMP O
M: MOV RIGHT, ACC
L: SUB 100
JGZ L
ADD 100
O: MOV ACC, LEFT
SWP
MOV ACC, LEFT

@2
MOV UP, ACC
ADD 1
MOV ACC, LEFT

@3
MOV UP, ACC
MOV UP, RIGHT
MOV ACC, RIGHT

@4
S: MOV LEFT, ACC
JGZ P
JEZ T
MOV LEFT, ACC
L1: MOV 1, DOWN
SUB 100
JGZ L1
JMP E
T: MOV LEFT, ACC
L2: MOV 1, DOWN
SUB 10
JGZ L2
JMP E
P: MOV LEFT, DOWN
E: MOV -999, DOWN

@7
S: MOV 1, ACC
L: ADD UP
JGZ L
ADD 997
MOV ACC, RIGHT

@8
MOV LEFT, ACC
ADD ACC
MOV ACC, RIGHT
ADD ACC
ADD ACC
ADD RIGHT
ADD LEFT
ADD ACC
MOV ACC, RIGHT
ADD ACC
ADD ACC
ADD RIGHT
ADD LEFT
MOV ACC, DOWN

@9
MOV LEFT, LEFT
