finished exercise 3.1