solution for problem 1