chapter 3: exercise 19