increased code coverage to include recursive implementation