solve exercise 30.09