exercise 2.3 completed