Problem #3.
Challenge #4.
Problem 5.