docs: public static double cdf(double val, double loc, double scale, double shape) {
      val = (val - loc) / scale;
      if(shape != 0.) {
        final double tmp = 1 - shape * val;
        if(tmp < 1e-15) {
          return (shape < 0) ? 0 : 1;
        }
        val = -FastMath.log(tmp) / shape;
      }
      return 1. / (1. + FastMath.exp(-val));
    }