more tests, helper method, recursive solution?