refactored sut to simply use recursion