Adding solution to problem 22, refactoring MathUtils