IPPMath.jl by @lindahua