https://www.sourcebaran.com/learn/javascript_math_object/