code: function forward$21(p) {
  
          /* Forward equations
           -----------------*/
          var lon = p.x;
          var lat = p.y;
  
          var delta_lon = adjust_lon(lon - this.long0);
          var theta = lat;
          var con = Math.PI * Math.sin(lat);
  
          /* Iterate using the Newton-Raphson method to find theta
           -----------------------------------------------------*/
          for (var i = 0; true; i++) {
              var delta_theta = -(theta + Math.sin(theta) - con) / (1 + Math.cos(theta));
              theta += delta_theta;
              if (Math.abs(delta_theta) < EPSLN) {
                  break;
              }
          }
          theta /= 2;
  
          /* If the latitude is 90 deg, force the x coordinate to be "0 + false easting"
           this is done here because of precision problems with "cos(theta)"
           --------------------------------------------------------------------------*/
          if (Math.PI / 2 - Math.abs(lat) < EPSLN) {
              delta_lon = 0;
          }
          var x = 0.900316316158 * this.a * delta_lon * Math.cos(theta) + this.x0;
          var y = 1.4142135623731 * this.a * Math.sin(theta) + this.y0;
  
          p.x = x;
          p.y = y;
          return p;
      }
docs: /* Mollweide forward equations--mapping lat,long to x,y
  ----------------------------------------------------