code: function p_nor(z) {
          var e, z2, prev = 0.0, t, p, i = 3;
  
          if (z < -12) { return 0.0; }
          if (z > 12) { return 1.0; }
          if (z === 0.0) { return 0.5; }
          if (z > 0) {
              e = true;
          } else {
              e = false;
              z = -z;
          }
  
          z2 = z * z;
          p = z * Math.exp(-0.5 * z2) / SQ2PI;
          t = p;
  
          for (i; i < 200; i = i + 2) {
              prev = p;
              t = t * (z2 / i);
              p = p + t;
              if (p <= prev) { return (e ? 0.5 + p : 0.5 - p); }
          }
  
          return (e ? 1.0 : 0.0);
      }
docs: normal-distribution (-\infty, z]