my solution to problem 3