@0
MOV UP, ACC
SAV
MOV RIGHT, ACC
L: SUB 2
SWP
ADD 1
SWP
JGZ L
MOV ACC, RIGHT
SWP
MOV ACC, RIGHT
MOV RIGHT, DOWN
MOV ACC, DOWN

@1
MOV UP, ACC
SAV
MOV ACC, LEFT
NEG
ADD 11
MOV ACC, DOWN
SUB 5
ADD LEFT
ADD LEFT
MOV ACC, DOWN
SWP
MOV ACC, LEFT

@2
MOV UP, ACC
MOV UP, DOWN
SAV
ADD ACC
ADD ACC
L: JRO DOWN
MOV ACC, DOWN
JMP L
SWP
N: MOV ACC, DOWN
M: JRO DOWN
JMP N
MOV DOWN, DOWN

@3
MOV UP, RIGHT
MOV UP, DOWN

@4
MOV LEFT, ACC
SAV
ADD ACC
ADD ACC
L: JRO DOWN
MOV ACC, DOWN
JMP L
SWP
N: MOV ACC, DOWN
M: JRO DOWN
JMP N

@5
MOV UP, ACC
SAV
K: MOV 1, UP
SUB UP
JGZ K
MOV 3, UP
F: ADD UP
JGZ X
MOV 1, UP
JMP F
X: MOV 2, UP
MOV ACC, UP
SWP
SUB UP
MOV ACC, DOWN

@6
MOV UP, ACC
MOV ACC, RIGHT
SUB RIGHT
MOV ACC, DOWN

@7
MOV LEFT, ACC
K: MOV 1, UP
SUB UP
JGZ K
MOV 3, UP
F: ADD UP
JGZ X
MOV 1, UP
JMP F
X: MOV -20, UP
MOV ACC, LEFT
