looping-is-recursion, all tests passed