@1
B: MOV RIGHT, ACC
JEZ C
NEG
MOV ACC, DOWN
JMP B
C: MOV RIGHT, ACC
JEZ B
MOV ACC, DOWN
JMP C

@2
A: MOV RIGHT, ACC
MOV ACC, DOWN
JNZ A
B: MOV RIGHT, LEFT
JMP B

@3
MOV UP, LEFT

@4
MOV ACC, LEFT
RS: MOV RIGHT, ACC
MOV ACC, LEFT
JNZ RS
Q: MOV UP, ACC
SAV
MOV LEFT, NIL
R: MOV LEFT, ACC
MOV ACC, DOWN
SWP
MOV ACC, DOWN
SWP
JNZ R
MOV ACC, RIGHT

@5
R5: MOV UP, ACC
MOV ACC, LEFT
JNZ R5
MOV ACC, DOWN
W: MOV LEFT, NIL
MOV DOWN, NIL
P: MOV DOWN, ACC
MOV ACC, LEFT
JNZ P
MOV ACC, DOWN
JMP W

@7
F: MOV UP, ACC
SAV
ADD UP
JNZ N
SWP
NEG
JGZ O
MOV ACC, RIGHT
JMP F
O: MOV ACC, DOWN
JMP F
N: SWP
MOV ACC, RIGHT
