@0
MOV 9, ACC
I: MOV 0, RIGHT
SUB 1
JNZ I
T: MOV UP, ACC
MOV ACC, DOWN
MOV ACC, DOWN
JMP T

@1
T: MOV DOWN, ACC
SUB 5
MOV ACC, LEFT
ADD 31
M: SUB 6
JGZ M
JNZ N
MOV LEFT, ACC
ADD 25
MOV ACC, LEFT
MOV -5, ACC
N: ADD 5
MOV ACC, DOWN
MOV LEFT, DOWN

@2
T: MOV UP, ACC
SWP
SUB UP
MOV ACC, RIGHT
SWP
MOV ACC, RIGHT
ADD RIGHT
SUB 2
SAV

@3
T: MOV LEFT, ACC
JGZ NG
PS: ADD 2
JGZ DN
MOV UP, DOWN
JMP PS
NG: MOV DOWN, UP
SUB 2
JGZ NG
ADD 2
DN: MOV ACC, RIGHT
MOV UP, RIGHT
MOV LEFT, RIGHT
MOV ACC, LEFT
MOV RIGHT, UP

@4
T: MOV LEFT, ACC
SUB 1
JEZ HI
MOV LEFT, RIGHT
JMP C
HI: MOV LEFT, UP
C: MOV 1, DOWN
MOV LEFT, DOWN
MOV ANY, DOWN
MOV LAST, LEFT
MOV -10, DOWN
MOV -10, DOWN

@5
T: MOV LEFT, ACC
ADD 6
SAV
ADD 16
M: SUB 5
JGZ M
ADD 4
MOV ACC, LEFT
JNZ N
SWP
SUB 30
SWP
N: SWP
MOV ACC, LEFT

@6
L: MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
MOV ACC, DOWN
JRO UP
MOV -1, DOWN
MOV 0, DOWN
MOV UP, DOWN
MOV UP, ACC
