Problem 3 and 4 - added