@0
MOV 10, ACC
I: MOV 0, LEFT
SUB 1
JGZ I
R: MOV UP, ACC
MOV ACC, DOWN
JLZ D
JMP R
D: MOV DOWN, ACC
O: MOV LEFT, DOWN
SUB 1
JGZ O

@3
R: MOV RIGHT, ACC
JLZ R
SAV
JEZ INC
L1: MOV UP, DOWN
SUB 1
JGZ L1
INC: MOV UP, ACC
ADD 1
MOV ACC, UP
SWP
JEZ R
L2: MOV DOWN, UP
SUB 1
JGZ L2

@4
L: MOV UP, ACC
MOV ACC, LEFT
ADD 1
JNZ L
MOV 10, UP
MOV 10, ACC
O: MOV UP, DOWN
SUB 1
JGZ O

@7
SAV
D: MOV UP, ACC
JEZ N
L: SWP
MOV ACC, DOWN
SWP
SUB 1
JNZ L
N: SWP
ADD 1
SAV
SUB 10
JNZ D
MOV -1, DOWN
