flesh out recursion project