finished exercise except the last one