: fib ( n -- fib ) dup 2 < if drop 1 else 1- dup recurse swap 1- recurse + then ;