Exercise 4.3.1 solution