@0
MOV 15, ACC
I: MOV 0, RIGHT
SUB 1
JGZ I
L: MOV UP, DOWN
JMP L

@1
JMP E
JMP A
JMP B
E: JRO DOWN
B: SWP
SUB 4
JEZ Z1
ADD 5
Z1: MOV ACC, DOWN
SWP
JMP E
A: SUB 4
JEZ Z2
ADD 5
Z2: MOV ACC, DOWN

@2
MOV UP, ACC
MOV ACC, RIGHT
SUB 3
MOV ACC, RIGHT

@3
E: MOV LEFT, RIGHT
MOV LEFT, ACC
JLZ E
SAV
L1: JEZ E1
MOV UP, DOWN
SUB 1
JMP L1
E1: MOV UP, RIGHT
MOV RIGHT, UP
SWP
L2: JEZ E
MOV DOWN, UP
SUB 1
JMP L2

@4
E: MOV LEFT, ACC
MOV ACC, DOWN
SUB 2
JGZ R
JEZ R2
MOV ACC, UP
MOV UP, DOWN
JMP E
R2: MOV -1, RIGHT
MOV RIGHT, DOWN
JMP E
R: MOV LEFT, RIGHT
MOV RIGHT, ACC
MOV ACC, LEFT
MOV ACC, DOWN

@5
E: MOV LEFT, ACC
JLZ C2
SUB 4
JEZ Z
ADD 5
Z: MOV ACC, LEFT
JMP E
C2: SWP
SUB 4
JEZ Z2
ADD 5
Z2: MOV ACC, LEFT
SWP

@6
MOV 0, DOWN
MOV UP, DOWN
MOV UP, ACC
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 RIGHT
MOV -1, DOWN

@7
MOV -10, LEFT
MOV -10, LEFT
MOV 1, LEFT
