@0
S: MOV UP, ACC
MOV ACC, DOWN
MOV ACC, RIGHT
L: SUB RIGHT
JGZ C
MOV 1, RIGHT
MOV ACC, DOWN
JMP S
C: MOV -1, RIGHT
JMP L

@1
S: MOV UP, ACC
MOV ACC, DOWN
SAV
SUB 11
NEG
MOV ACC, DOWN
MOV LEFT, DOWN
SWP
ADD ACC
ADD ACC
L: MOV ACC, LEFT
JRO LEFT
JMP S

@2
S: MOV UP, DOWN
MOV RIGHT, ACC
MOV UP, DOWN
L: MOV ACC, DOWN
JRO DOWN
NEG
SAV
ADD DOWN
ADD DOWN
JGZ U
MOV DOWN, DOWN
JMP S
U: SWP
ADD DOWN
MOV ACC, DOWN

@3
S: MOV UP, LEFT
MOV UP, ACC
MOV UP, DOWN
L: MOV ACC, DOWN
JRO DOWN
SAV
ADD DOWN
ADD DOWN
JGZ U
SWP
ADD DOWN
MOV ACC, DOWN
JMP S
U: MOV DOWN, DOWN

@5
S: MOV UP, ACC
SAV
MOV UP, ACC
L: ADD UP
JGZ D
MOV -1, UP
JMP L
D: MOV 1, UP
MOV ACC, UP
MOV ACC, UP
MOV ACC, UP
SWP
SUB UP
MOV ACC, DOWN

@6
S: MOV UP, ACC
SAV
L: SUB UP
JGZ C
MOV 1, UP
MOV ACC, UP
MOV ACC, UP
MOV ACC, UP
SWP
SUB UP
MOV ACC, DOWN
JMP S
C: MOV -1, UP
JMP L
