Nice exercise. 11 tests passing.