exercise 2.56