@0
MOV 0 DOWN
MOV 2 DOWN
MOV 4 DOWN
MOV 6 DOWN
MOV UP NIL

@1
L:MOV ACC DOWN
MOV ACC DOWN
MOV ACC DOWN
NEG
ADD 17
MOV ACC DOWN
NEG
ADD 19
SAV
SUB 10
JEZ E
SWP
JMP L
E:JMP E

@2
MOV 29 DOWN
MOV 27 DOWN
MOV 25 DOWN
MOV 23 DOWN
MOV UP NIL

@4
MOV UP ACC
SAV
ADD 1
MOV ACC DOWN
SWP
SAV
ADD ACC
NEG
ADD 16
L:SWP
MOV ACC DOWN
SWP
SUB 1
JGZ L
MOV -1 DOWN

@5
MOV UP ACC
MOV ACC DOWN
MOV UP DOWN
NEG
ADD 15
MOV ACC DOWN

@6
MOV UP ACC
SAV
NEG
ADD 30
MOV ACC DOWN
SWP
SAV
ADD ACC
SUB 42
L:SWP
MOV ACC DOWN
SWP
SUB 1
JGZ L
MOV -1 DOWN

@8
S:MOV UP ACC
SAV
L:MOV UP ACC
JLZ S
MOV ACC RIGHT
SWP
MOV ACC RIGHT
MOV 0 RIGHT
ADD 1
SWP
JMP L

@9
MOV ANY DOWN
MOV LAST DOWN
MOV LAST ACC
L:MOV 3 DOWN
JEZ E
MOV 3 DOWN
SUB 1
JGZ L
E:MOV -1 DOWN

@10
S:MOV UP ACC
SAV
L:MOV UP ACC
JLZ S
MOV ACC LEFT
SWP
MOV ACC LEFT
MOV 0 LEFT
ADD 1
SWP
JMP L
