exercise 3.16