Finished exercise 3.3