exercise 2 + 3 added