exercise 9.3.2, Page 311
exercise 9.3.3, Page 312