finished exercise 4.2