code: function forward$17(p) {
          var lon = p.x;
          var lat = p.y;
          var x, y, el;
          var dlon = adjust_lon(lon - this.long0);
          el = dlon * Math.sin(lat);
          if (this.sphere) {
              if (Math.abs(lat) <= EPSLN) {
                  x = this.a * dlon;
                  y = -1 * this.a * this.lat0;
              }
              else {
                  x = this.a * Math.sin(el) / Math.tan(lat);
                  y = this.a * (adjust_lat(lat - this.lat0) + (1 - Math.cos(el)) / Math.tan(lat));
              }
          }
          else {
              if (Math.abs(lat) <= EPSLN) {
                  x = this.a * dlon;
                  y = -1 * this.ml0;
              }
              else {
                  var nl = gN(this.a, this.e, Math.sin(lat)) / Math.tan(lat);
                  x = nl * Math.sin(el);
                  y = this.a * mlfn(this.e0, this.e1, this.e2, this.e3, lat) - this.ml0 + nl * (1 - Math.cos(el));
              }
  
          }
          p.x = x + this.x0;
          p.y = y + this.y0;
          return p;
      }
docs: /* Polyconic forward equations--mapping lat,long to x,y
  ---------------------------------------------------