solution to problem 29