procedure main(arglist)
every write(F(!arglist)) # F of all arguments
end
procedure F(n)
if integer(n) >= 0 then
return (n = 0, 1) | n - M(F(n-1))
procedure M(n)
return (0 = n) | n - F(M(n-1))