Exercise 42
Exercise 42: with comments