How To Avoid Stack Overflow In Recursion