attempting to add recursion