refactored problem 10