exercise 2.57 completed