@0
MOV RIGHT, ACC
JRO ACC
NOP
ADD 1
NOP
ADD 1
NOP
ADD 1
NOP
SUB 3
MOV ACC, RIGHT
ADD UP
MOV ACC, RIGHT
MOV ACC, DOWN
MOV RIGHT, DOWN

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

@2
MOV UP, DOWN
MOV UP, ACC
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, ACC
MOV ACC, DOWN
K: MOV 1, RIGHT
SUB RIGHT
JGZ K
MOV 3, RIGHT
F: ADD RIGHT
JGZ X
MOV 1, RIGHT
JMP F
X: MOV -20, RIGHT
MOV ACC, DOWN

@4
MOV LEFT, ACC
NEG
ADD 11
SAV
ADD ACC
ADD ACC
L: JRO LEFT
MOV ACC, LEFT
JMP L
SWP
N: MOV ACC, LEFT
M: JRO LEFT
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
SUB UP
MOV ACC, DOWN
