Cleaning up solution to problem 22