About to try a new method for the recursion without using a while loop. Revert back to here if all else fails.