cmath_utils.c written. untested.