added recursion comment