exercise 3.27 done