Implemented exercise 3 and 4.