Finished exercises 5.1 and 5.2