finished exercise 1.28