solved problem 20, 21 and 22