@1
MOV UP, DOWN

@4
MOV 0, RIGHT
R: MOV UP, ACC
C: SUB 1
JEZ D
ADD 1
L: MOV ACC, RIGHT
SAV
MOV RIGHT, ACC
JGZ C
JLZ P
SWP
JMP L
P: SWP
MOV ACC, DOWN
D: MOV 0, DOWN

@5
T: MOV LEFT, ACC
JEZ E
L: SUB DOWN
MOV 13, DOWN
JGZ L
MOV DOWN, NIL
JEZ OK
MOV 1, DOWN
Y: MOV DOWN, LEFT
JMP T
OK: MOV 7, DOWN
JMP Y
E: MOV DOWN, NIL
MOV 11, DOWN

@8
MOV ANY, DOWN

@9
L: MOV ACC, UP
JRO UP
MOV 3, RIGHT
MOV ACC, RIGHT
MOV RIGHT, UP
MOV ACC, RIGHT
MOV RIGHT, ACC
JMP L
MOV ACC, LEFT
MOV 13, RIGHT
MOV RIGHT, UP
JMP L
MOV 2, ACC
JMP L
MOV 1, RIGHT

@10
L: JRO LEFT
ADD 1
JMP L
SUB LEFT
JGZ N
MOV -1, LEFT
JMP Z
N: MOV 0, LEFT
Z: MOV LEFT, ACC
SUB 2
JEZ X
ADD 1
X: ADD 3
MOV ACC, LEFT
MOV 0, ACC
