@0 SS:MOV RIGHT ACC SAV MOV RIGHT DOWN SUB 999 SUB DOWN ADD DOWN MOV RIGHT DOWN SUB DOWN ADD 999 ADD DOWN MOV ACC RIGHT MOV ACC RIGHT SWP MOV ACC DOWN @1 SS:MOV UP ACC MOV UP LEFT MOV UP RIGHT MOV UP LEFT MOV UP RIGHT MOV UP LEFT MOV ACC RIGHT MOV ACC RIGHT MOV ACC RIGHT MOV LEFT RIGHT MOV LEFT RIGHT @2 SS:MOV LEFT ACC MOV ACC RIGHT MOV LEFT RIGHT SUB 999 SUB RIGHT ADD RIGHT MOV LEFT RIGHT SUB LEFT ADD LEFT SUB LEFT ADD 999 ADD LEFT MOV ACC DOWN @3 SS:MOV LEFT ACC SWP MOV LEFT ACC MOV ACC LEFT MOV ACC LEFT MOV LEFT DOWN MOV ACC DOWN SWP MOV ACC DOWN @4 SS:MOV UP ACC MOV ACC UP MOV ACC UP SWP MOV UP ACC MOV ACC UP MOV ACC UP MOV ACC RIGHT SWP MOV ACC RIGHT MOV UP RIGHT @5 SS:MOV LEFT ACC SWP MOV -1 LAST MOV LEFT ANY MOV LEFT ACC L1:JRO RIGHT MOV 1 DOWN JGZ G1 E1:SWP MOV 0 DOWN JMP L1 G1:SUB 1 MOV 3 DOWN SWP C1:JMP L1 @6 SS:MOV 17 ACC SWP MOV UP ACC L1:MOV 1 RIGHT MOV 1 LEFT SWP MOV ACC DOWN SUB 1 MOV -6 RIGHT MOV 2 LEFT SWP SUB 1 JNZ L1 MOV -99 RIGHT MOV -99 LEFT @7 SS:MOV UP ACC SWP MOV UP ACC MOV 11 LAST MOV UP ANY MOV LEFT DOWN L1:SWP JGZ G1 E1:MOV 0 DOWN JMP C1 G1:MOV 3 DOWN SUB 1 C1:JRO LEFT MOV 1 DOWN JMP L1 @8 SS:MOV UP ACC L1:JRO UP MOV UP RIGHT JGZ G1 E1:MOV 0 RIGHT JMP C1 G1:MOV 3 RIGHT SUB 1 C1:MOV UP RIGHT MOV -1 RIGHT JMP L1 @9 MOV ANY DOWN @10 SS:MOV UP ACC L1:SWP JRO UP MOV ACC LEFT SWP MOV UP LEFT JGZ G1 E1:MOV 0 LEFT JMP C1 G1:MOV 3 LEFT SUB 1 C1:MOV UP LEFT JMP L1 ADD 6 SWP