revision exercise 2 and 3