@2
A: MOV RIGHT, ACC
MOV ACC, DOWN
JNZ A
B: MOV RIGHT, ACC
JEZ C
NEG
MOV ACC, DOWN
JMP B
C: MOV RIGHT, DOWN
JMP C

@3
MOV UP, LEFT

@4
MOV ACC, LEFT
RS: MOV RIGHT, ACC
MOV ACC, LEFT
JNZ RS
Q: MOV RIGHT, 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
S: MOV ACC, DOWN
MOV UP, LEFT
MOV LEFT, NIL
MOV DOWN, NIL
P: MOV DOWN, ACC
MOV ACC, LEFT
JNZ P
JMP S

@7
F: MOV UP, ACC
MOV ACC, RIGHT
ADD UP
JNZ F
MOV RIGHT, ACC
NEG
MOV ACC, RIGHT
JLZ F
MOV ACC, DOWN
