solve exercise 18.11