Refactored and commented problem1