exercise 2.79 done