define method a (k :: , x1 :: , x2 :: , x3 :: , x4 :: , x5 :: ) => (i :: ) local b() => (i :: ) k := k - 1; a(k, b, x1, x2, x3, x4) end; if (k <= 0) x4() + x5() else b() end if end method a; define method man-or-boy (x :: ) => (i :: ) a(x, method() 1 end, method() -1 end, method() -1 end, method() 1 end, method() 0 end) end method man-or-boy; format-out("%d\n", man-or-boy(10))