@0
MOV UP ACC
MOV ACC RIGHT
MOV ACC RIGHT
MOV ACC RIGHT
MOV ACC RIGHT

@1
S: MOV UP ACC
SUB LEFT
JLZ A
ADD LEFT
MOV ACC RIGHT
MOV ACC RIGHT
MOV LEFT RIGHT
MOV LEFT NIL
JMP S
A: MOV LEFT RIGHT
MOV LEFT RIGHT
ADD LEFT
MOV ACC RIGHT

@2
S: MOV UP ACC
SUB RIGHT
JLZ A
ADD RIGHT
MOV ACC DOWN
MOV LEFT DOWN
MOV RIGHT DOWN
JMP M
A: MOV RIGHT DOWN
MOV LEFT DOWN
ADD RIGHT
MOV ACC DOWN
M: MOV LEFT DOWN
MOV LEFT DOWN

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

@6
MOV UP ACC
SAV
SUB UP
JLZ A
MOV UP ACC
MOV UP DOWN
MOV UP NIL
JMP O
A: SWP
MOV UP NIL
MOV UP NIL
MOV UP DOWN
O: MOV ACC DOWN
MOV ACC DOWN

@9
S: MOV UP ACC
SUB UP
JGZ A
MOV UP DOWN
JMP S
A: ADD UP
MOV ACC DOWN
