Problem 1
Problem 2
Problem 3