Problem 30
Problem 31