solve exercise 30.03