@0
MOV UP ACC
MOV ACC DOWN
SUB 2
MOV ACC DOWN

@1
L:JRO DOWN
JMP A
SWP
MOV ACC DOWN
MOV DOWN ACC
SWP
JMP L
A:MOV ACC DOWN
MOV DOWN ACC

@2
JMP A
L:MOV -1 RIGHT
A:MOV UP RIGHT
MOV UP ACC
SAV
F:SUB 1
JLZ X
MOV 1 RIGHT
JMP F
X:MOV 7 RIGHT
SWP
R:SUB 1
JLZ L
MOV 4 RIGHT
JMP R

@3
MOV 15 ACC
I:MOV 0 UP
SUB 1
JNZ I
S:MOV LEFT RIGHT
L:JRO LEFT
MOV ACC DOWN
MOV UP ACC
JMP L
MOV ACC UP
MOV DOWN ACC
JMP L
MOV ACC RIGHT
MOV RIGHT ACC
JMP L

@4
L:MOV LEFT ACC
MOV ACC DOWN
SUB 1
JGZ N
ADD 2
MOV ACC UP
MOV LEFT LEFT
N:MOV ANY DOWN
MOV DOWN LAST
MOV 14 ACC
P:MOV -2 DOWN
SUB 1
JNZ P
MOV 1 DOWN

@6
MOV 0 DOWN
MOV UP DOWN
MOV UP ACC
SUB 4
JEZ Z
ADD 5
Z:MOV ACC UP
MOV ACC DOWN
MOV ACC DOWN
JRO UP
MOV -1 DOWN
