Problem 28
Problem 29 (brute)
Problem 30