Assignement 1 - Problem 3 - Improvements