fun ways to play with recursion