Problem 3: Solved
Problem 3: Refactor