updated solution to problem 10