Exercise 2.40
Exercise 2.41
Exercise 2.42