exercise 2.89 done