added problem 2 solution