def fib(n): if n < 0 then error("negative arguments not allowed") else [2, 0, 1] | recurse( if .[0] > n then empty else [ .[0]+1, .[2], .[1]+.[2] ] end) | .[1] end;