solutions to problem 1 and 2