hanoi can compile, but stack overflow :(
hanoi works