Complete exercise 2.17