@1
L: MOV UP, ACC
MOV ACC, RIGHT
MOV ACC, DOWN
MOV ACC, RIGHT
JEZ Z
MOV -4, DOWN
JMP L
Z: MOV 1, DOWN

@2
MOV 999, ACC
L: SUB LEFT
JGZ LO
ADD LEFT
JMP L
LO: MOV LEFT, ACC
JEZ DN
SAV
JMP L
DN: SWP
MOV ACC, DOWN

@3
L1: SUB UP
SWP
ADD 1
SWP
JRO UP
MOV ACC, DOWN
SWP
MOV ACC, LEFT
MOV ACC, RIGHT
MOV 0, ACC
SAV

@4
MOV UP, ACC
L: SUB 1
MOV ACC, RIGHT
JEZ DN
MOV -2, RIGHT
JMP L
DN: MOV 1, RIGHT

@5
MOV UP, ACC
L: ADD LEFT
ADD RIGHT
JRO LEFT
MOV ACC, DOWN

@6
MOV UP, ACC
SAV
MOV UP, ACC
L: SWP
MOV ACC, LEFT
SWP
SUB 1
JGZ L
