@0
LOOP: MOV UP, ACC
SAV
SUB RIGHT
MOV ACC, RIGHT
SWP
MOV ACC, RIGHT

@1
LOOP: MOV UP, ACC
SAV
MOV ACC, LEFT
MOV LEFT, ACC
JGZ S
MOV LEFT, ACC
JMP OUT
S: MOV LEFT, ACC
SWP
OUT: MOV ACC, DOWN
SWP
MOV ACC, DOWN

@2
LOOP: MOV UP, ACC
SAV
SUB RIGHT
MOV ACC, RIGHT
JGZ SWAP
SWP
JMP OUT
SWAP: SWP
MOV ACC, RIGHT
MOV RIGHT, ACC
OUT: MOV ACC, DOWN

@3
LOOP: MOV UP, ACC
SAV
MOV ACC, LEFT
MOV LEFT, ACC
JGZ SWAP
SWP
JMP OUT
SWAP:
MOV LEFT, ACC
SWP
MOV ACC, LEFT
SWP
OUT: MOV ACC, DOWN

@5
MOV UP, DOWN
MOV UP, RIGHT

@6
LOOP: MOV UP, DOWN
MOV LEFT, ACC
SAV
SUB RIGHT
MOV ACC, RIGHT
JGZ LOW
SWP
JMP OUT
LOW:
MOV RIGHT, ACC
OUT: MOV ACC, DOWN
MOV ACC, DOWN

@7
LOOP: MOV UP, ACC
SAV
MOV ACC, LEFT
MOV LEFT, ACC
JGZ SEND
JMP LOOP
SEND: SWP
MOV ACC, LEFT

@8
LOOP: MOV UP, ACC
SAV
SUB RIGHT
JGZ AHI
MOV RIGHT, ACC
JMP SEND
AHI:
MOV RIGHT, NIL
SWP
SEND:
MOV ACC, RIGHT

@9
LOOP: MOV UP, ACC
MOV ACC, LEFT
MOV ACC, LEFT
MOV LEFT, ACC
SAV
SUB UP
JGZ H
MOV UP, ACC
JMP OUT
H: MOV UP, NIL
SWP
OUT: MOV ACC, DOWN
