@0
S: MOV UP, ACC
JEZ W
MOV UP, ACC
MOV ACC, RIGHT
MOV ACC, RIGHT
MOV 0, RIGHT
JMP S
W: MOV UP, ACC
MOV ACC, RIGHT
MOV ACC, RIGHT
MOV UP, RIGHT

@1
SUB LEFT
MOV ACC, DOWN
MOV LEFT, ACC
MOV LEFT, DOWN

@3
S: JRO RIGHT
MOV UP, DOWN
MOV UP, DOWN
MOV UP, DOWN
MOV UP, DOWN
JMP O
MOV DOWN, UP
MOV DOWN, UP
MOV DOWN, UP
MOV DOWN, UP
MOV DOWN, UP
MOV DOWN, UP
MOV DOWN, UP
O: MOV DOWN, RIGHT
MOV RIGHT, DOWN

@4
S: MOV RIGHT, LEFT
MOV RIGHT, ACC
JGZ W
JLZ E
MOV LEFT, ACC
MOV ACC, LEFT
MOV ACC, DOWN
JMP S
E: MOV LEFT, LEFT
JMP S
W: MOV LEFT, NIL
MOV ACC, LEFT

@5
S: MOV UP, ACC
JGZ B
ADD 13
JMP E
B: NEG
ADD 5
JGZ E
MOV 1, LEFT
MOV -2, LEFT
ADD 4
E: MOV ACC, LEFT
MOV UP, LEFT

@7
MOV 2, ACC
I: MOV 0, LEFT
MOV 0, LEFT
MOV 0, LEFT
MOV 0, LEFT
SUB 1
JNZ I
S: MOV UP, DOWN
JMP S
