solution to Exercise 2.4