From ff0b3883da7b6d7bc3dcf837378928aa91a8bcb4 Mon Sep 17 00:00:00 2001 From: ahocevar Date: Tue, 5 Nov 2013 21:23:49 +0100 Subject: [PATCH] Add proj4.js --- ajax/libs/proj4js/2.0.0/proj4.js | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 ajax/libs/proj4js/2.0.0/proj4.js diff --git a/ajax/libs/proj4js/2.0.0/proj4.js b/ajax/libs/proj4js/2.0.0/proj4.js new file mode 100644 index 000000000..c870db7f5 --- /dev/null +++ b/ajax/libs/proj4js/2.0.0/proj4.js @@ -0,0 +1,3 @@ +!function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.proj4=a():"undefined"!=typeof global?global.proj4=a():"undefined"!=typeof self&&(self.proj4=a())}(function(){return function a(b,c,d){function e(g,h){if(!c[g]){if(!b[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};b[g][0].call(j.exports,function(a){var c=b[g][1][a];return e(c?c:a)},j,j.exports,a,b,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g=0||a.indexOf("GEOCCS")>=0||a.indexOf("PROJCS")>=0||a.indexOf("LOCAL_CS")>=0?(b=i(a),this.deriveConstants(b),c(this,b)):"+"===a[0]&&(b=j(a),this.deriveConstants(b),c(this,b)):(this.deriveConstants(a),c(this,a)),this.initTransforms(this.projName)}var c=a("./extend"),d=a("./common"),e=a("./defs"),f=a("./constants/index"),g=a("./datum"),h=a("./projections/index"),i=a("./wkt"),j=a("./projString");Projection.projections=h,Projection.projections.start(),Projection.prototype={initTransforms:function(a){var b=Projection.projections.get(a);if(!b)throw"unknown projection "+a;c(this,b),this.init()},deriveConstants:function(a){if(a.nadgrids&&0===a.nadgrids.length&&(a.nadgrids=null),a.nadgrids){a.grids=a.nadgrids.split(",");var b=null,e=a.grids.length;if(e>0)for(var h=0;e>h;h++){b=a.grids[h];var i=b.split("@");""!==i[i.length-1]&&(a.grids[h]={mandatory:1===i.length,name:i[i.length-1],grid:f.grids[i[i.length-1]]},a.grids[h].mandatory&&!a.grids[h].grid)}}if(a.datumCode&&"none"!==a.datumCode){var j=f.Datum[a.datumCode];j&&(a.datum_params=j.towgs84?j.towgs84.split(","):null,a.ellps=j.ellipse,a.datumName=j.datumName?j.datumName:a.datumCode)}if(!a.a){var k=f.Ellipsoid[a.ellps]?f.Ellipsoid[a.ellps]:f.Ellipsoid.WGS84;c(a,k)}a.rf&&!a.b&&(a.b=(1-1/a.rf)*a.a),(0===a.rf||Math.abs(a.a-a.b)f;f++)if(!b||2!==f||void 0!==c.z)switch(0===f?(d=g,e="x"):1===f?(d=h,e="y"):(d=i,e="z"),a.axis[f]){case"e":c[e]=d;break;case"w":c[e]=-d;break;case"n":c[e]=d;break;case"s":c[e]=-d;break;case"u":void 0!==c[e]&&(c.z=d);break;case"d":void 0!==c[e]&&(c.z=-d);break;default:return null}return c}},{}],4:[function(a,b,c){c.PI=3.141592653589793,c.HALF_PI=1.5707963267948966,c.TWO_PI=6.283185307179586,c.FORTPI=.7853981633974483,c.R2D=57.29577951308232,c.D2R=.017453292519943295,c.SEC_TO_RAD=484813681109536e-20,c.EPSLN=1e-10,c.MAX_ITER=20,c.COS_67P5=.3826834323650898,c.AD_C=1.0026,c.PJD_UNKNOWN=0,c.PJD_3PARAM=1,c.PJD_7PARAM=2,c.PJD_GRIDSHIFT=3,c.PJD_WGS84=4,c.PJD_NODATUM=5,c.SRS_WGS84_SEMIMAJOR=6378137,c.SRS_WGS84_ESQUARED=.006694379990141316,c.SIXTH=.16666666666666666,c.RA4=.04722222222222222,c.RA6=.022156084656084655,c.RV4=.06944444444444445,c.RV6=.04243827160493827,c.msfnz=function(a,b,c){var d=a*b;return c/Math.sqrt(1-d*d)},c.tsfnz=function(a,b,c){var d=a*c,e=.5*a;return d=Math.pow((1-d)/(1+d),e),Math.tan(.5*(this.HALF_PI-b))/d},c.phi2z=function(a,b){for(var c,d,e=.5*a,f=this.HALF_PI-2*Math.atan(b),g=0;15>=g;g++)if(c=a*Math.sin(f),d=this.HALF_PI-2*Math.atan(b*Math.pow((1-c)/(1+c),e))-f,f+=d,Math.abs(d)<=1e-10)return f;return-9999},c.qsfnz=function(a,b){var c;return a>1e-7?(c=a*b,(1-a*a)*(b/(1-c*c)-.5/a*Math.log((1-c)/(1+c)))):2*b},c.iqsfnz=function(a,b){var d=1-(1-a*a)/(2*a)*Math.log((1-a)/(1+a));if(Math.abs(Math.abs(b)-d)<1e-6)return 0>b?-1*c.HALF_PI:c.HALF_PI;for(var e,f,g,h,i=Math.asin(.5*b),j=0;30>j;j++)if(f=Math.sin(i),g=Math.cos(i),h=a*f,e=Math.pow(1-h*h,2)/(2*g)*(b/(1-a*a)-f/(1-h*h)+.5/a*Math.log((1-h)/(1+h))),i+=e,Math.abs(e)<=1e-10)return i;return 0/0},c.asinz=function(a){return Math.abs(a)>1&&(a=a>1?1:-1),Math.asin(a)},c.e0fn=function(a){return 1-.25*a*(1+a/16*(3+1.25*a))},c.e1fn=function(a){return.375*a*(1+.25*a*(1+.46875*a))},c.e2fn=function(a){return.05859375*a*a*(1+.75*a)},c.e3fn=function(a){return a*a*a*(35/3072)},c.mlfn=function(a,b,c,d,e){return a*e-b*Math.sin(2*e)+c*Math.sin(4*e)-d*Math.sin(6*e)},c.imlfn=function(a,b,c,d,e){var f,g;f=a/b;for(var h=0;15>h;h++)if(g=(a-(b*f-c*Math.sin(2*f)+d*Math.sin(4*f)-e*Math.sin(6*f)))/(b-2*c*Math.cos(2*f)+4*d*Math.cos(4*f)-6*e*Math.cos(6*f)),f+=g,Math.abs(g)<=1e-10)return f;return 0/0},c.srat=function(a,b){return Math.pow((1-a)/(1+a),b)},c.sign=function(a){return 0>a?-1:1},c.adjust_lon=function(a){return a=Math.abs(a)this.HALF_PI)return Number.NaN;if(b===this.HALF_PI)return Number.POSITIVE_INFINITY;if(b===-1*this.HALF_PI)return Number.NEGATIVE_INFINITY;var d=a*c;return Math.log(Math.tan((this.HALF_PI+b)/2))+a*Math.log((1-d)/(1+d))/2},c.fL=function(a,b){return 2*Math.atan(a*Math.exp(b))-this.HALF_PI},c.invlatiso=function(a,b){var c=this.fL(1,b),d=0,e=0;do d=c,e=a*Math.sin(d),c=this.fL(Math.exp(a*Math.log((1+e)/(1-e))/2),b);while(Math.abs(c-d)>1e-12);return c},c.sinh=function(a){var b=Math.exp(a);return b=(b-1/b)/2},c.cosh=function(a){var b=Math.exp(a);return b=(b+1/b)/2},c.tanh=function(a){var b=Math.exp(a);return b=(b-1/b)/(b+1/b)},c.asinh=function(a){var b=a>=0?1:-1;return b*Math.log(Math.abs(a)+Math.sqrt(a*a+1))},c.acosh=function(a){return 2*Math.log(Math.sqrt((a+1)/2)+Math.sqrt((a-1)/2))},c.atanh=function(a){return Math.log((a-1)/(a+1))/2},c.gN=function(a,b,c){var d=b*c;return a/Math.sqrt(1-d*d)},c.pj_enfn=function(a){var b=[];b[0]=this.C00-a*(this.C02+a*(this.C04+a*(this.C06+a*this.C08))),b[1]=a*(this.C22-a*(this.C04+a*(this.C06+a*this.C08)));var c=a*a;return b[2]=c*(this.C44-a*(this.C46+a*this.C48)),c*=a,b[3]=c*(this.C66-a*this.C68),b[4]=c*a*this.C88,b},c.pj_mlfn=function(a,b,c,d){return c*=b,b*=b,d[0]*a-c*(d[1]+b*(d[2]+b*(d[3]+b*d[4])))},c.pj_inv_mlfn=function(a,b,d){for(var e=1/(1-b),f=a,g=c.MAX_ITER;g;--g){var h=Math.sin(f),i=1-b*h*h;if(i=(this.pj_mlfn(f,h,Math.cos(f),d)-a)*i*Math.sqrt(i)*e,f-=i,Math.abs(i).99999999999))return!1;a[c]++,b[c]=0}else if(f=a[c]+1,f>=e.lim[d]){if(!(f===e.lim[d]&&b[c]<1e-11))return!1;"x"===c?a[c]--:a[c]++,b[c]=1}return[a,b]},c.nad_intr=function(a,b){var d={x:(a.x-1e-7)/b.del[0],y:(a.y-1e-7)/b.del[1]},e={x:Math.floor(d.x),y:Math.floor(d.y)},f={x:d.x-1*e.x,y:d.y-1*e.y},g={x:Number.NaN,y:Number.NaN},h=c.nadInterBreakout(e,f,"x",0,b);if(!h)return g;if(e=h[0],f=h[1],h=c.nadInterBreakout(e,f,"y",1,b),!h)return g;e=h[0],f=h[1];var i=e.y*b.lim[0]+e.x,j={x:b.cvs[i][0],y:b.cvs[i][1]};i++;var k={x:b.cvs[i][0],y:b.cvs[i][1]};i+=b.lim[0];var l={x:b.cvs[i][0],y:b.cvs[i][1]};i--;var m={x:b.cvs[i][0],y:b.cvs[i][1]},n=f.x*f.y,o=f.x*(1-f.y),p=(1-f.x)*(1-f.y),q=(1-f.x)*f.y;return g.x=p*j.x+o*k.x+q*m.x+n*l.x,g.y=p*j.y+o*k.y+q*m.y+n*l.y,g},c.inverseNadCvt=function(a,b,d,e){if(isNaN(a.x))return b;a.x=d.x+a.x,a.y=d.y-a.y;var f,g,h=9,i=1e-12;do{if(g=c.nad_intr(a,e),isNaN(g.x)){this.reportError("Inverse grid shift iteration failed, presumably at grid edge. Using first approximation.");break}f={x:a.x-g.x-d.x,y:a.y+g.y-d.y},a.x-=f.x,a.y-=f.y}while(h--&&Math.abs(f.x)>i&&Math.abs(f.y)>i);return 0>h?(this.reportError("Inverse grid shift iterator failed to converge."),b):(b.x=c.adjust_lon(a.x+e.ll[0]),b.y=a.y+e.ll[1],b)},c.nad_cvt=function(a,b,d){var e={x:Number.NaN,y:Number.NaN};if(isNaN(a.x))return e;var f={x:a.x,y:a.y};f.x-=d.ll[0],f.y-=d.ll[1],f.x=c.adjust_lon(f.x-c.PI)+c.PI;var g=c.nad_intr(f,d);return b?c.inverseNadCvt(g,e,f,d):(isNaN(g.x)||(e.x=a.x-g.x,e.y=a.y+g.y),e)},c.C00=1,c.C02=.25,c.C04=.046875,c.C06=.01953125,c.C08=.01068115234375,c.C22=.75,c.C44=.46875,c.C46=.013020833333333334,c.C48=.007120768229166667,c.C66=.3645833333333333,c.C68=.005696614583333333,c.C88=.3076171875},{}],5:[function(a,b,c){c.wgs84={towgs84:"0,0,0",ellipse:"WGS84",datumName:"WGS84"},c.ch1903={towgs84:"674.374,15.056,405.346",ellipse:"bessel",datumName:"swiss"},c.ggrs87={towgs84:"-199.87,74.79,246.62",ellipse:"GRS80",datumName:"Greek_Geodetic_Reference_System_1987"},c.nad83={towgs84:"0,0,0",ellipse:"GRS80",datumName:"North_American_Datum_1983"},c.nad27={nadgrids:"@conus,@alaska,@ntv2_0.gsb,@ntv1_can.dat",ellipse:"clrk66",datumName:"North_American_Datum_1927"},c.potsdam={towgs84:"606.0,23.0,413.0",ellipse:"bessel",datumName:"Potsdam Rauenberg 1950 DHDN"},c.carthage={towgs84:"-263.0,6.0,431.0",ellipse:"clark80",datumName:"Carthage 1934 Tunisia"},c.hermannskogel={towgs84:"653.0,-212.0,449.0",ellipse:"bessel",datumName:"Hermannskogel"},c.ire65={towgs84:"482.530,-130.596,564.557,-1.042,-0.214,-0.631,8.15",ellipse:"mod_airy",datumName:"Ireland 1965"},c.rassadiran={towgs84:"-133.63,-157.5,-158.62",ellipse:"intl",datumName:"Rassadiran"},c.nzgd49={towgs84:"59.47,-5.04,187.44,0.47,-0.1,1.024,-4.5993",ellipse:"intl",datumName:"New Zealand Geodetic Datum 1949"},c.osgb36={towgs84:"446.448,-125.157,542.060,0.1502,0.2470,0.8421,-20.4894",ellipse:"airy",datumName:"Airy 1830"},c.s_jtsk={towgs84:"589,76,480",ellipse:"bessel",datumName:"S-JTSK (Ferro)"},c.beduaram={towgs84:"-106,-87,188",ellipse:"clrk80",datumName:"Beduaram"},c.gunung_segara={towgs84:"-403,684,41",ellipse:"bessel",datumName:"Gunung Segara Jakarta"}},{}],6:[function(a,b,c){c.MERIT={a:6378137,rf:298.257,ellipseName:"MERIT 1983"},c.SGS85={a:6378136,rf:298.257,ellipseName:"Soviet Geodetic System 85"},c.GRS80={a:6378137,rf:298.257222101,ellipseName:"GRS 1980(IUGG, 1980)"},c.IAU76={a:6378140,rf:298.257,ellipseName:"IAU 1976"},c.airy={a:6377563.396,b:6356256.91,ellipseName:"Airy 1830"},c.APL4={a:6378137,rf:298.25,ellipseName:"Appl. Physics. 1965"},c.NWL9D={a:6378145,rf:298.25,ellipseName:"Naval Weapons Lab., 1965"},c.mod_airy={a:6377340.189,b:6356034.446,ellipseName:"Modified Airy"},c.andrae={a:6377104.43,rf:300,ellipseName:"Andrae 1876 (Den., Iclnd.)"},c.aust_SA={a:6378160,rf:298.25,ellipseName:"Australian Natl & S. Amer. 1969"},c.GRS67={a:6378160,rf:298.247167427,ellipseName:"GRS 67(IUGG 1967)"},c.bessel={a:6377397.155,rf:299.1528128,ellipseName:"Bessel 1841"},c.bess_nam={a:6377483.865,rf:299.1528128,ellipseName:"Bessel 1841 (Namibia)"},c.clrk66={a:6378206.4,b:6356583.8,ellipseName:"Clarke 1866"},c.clrk80={a:6378249.145,rf:293.4663,ellipseName:"Clarke 1880 mod."},c.clrk58={a:6378293.645208759,rf:294.2606763692654,ellipseName:"Clarke 1858"},c.CPM={a:6375738.7,rf:334.29,ellipseName:"Comm. des Poids et Mesures 1799"},c.delmbr={a:6376428,rf:311.5,ellipseName:"Delambre 1810 (Belgium)"},c.engelis={a:6378136.05,rf:298.2566,ellipseName:"Engelis 1985"},c.evrst30={a:6377276.345,rf:300.8017,ellipseName:"Everest 1830"},c.evrst48={a:6377304.063,rf:300.8017,ellipseName:"Everest 1948"},c.evrst56={a:6377301.243,rf:300.8017,ellipseName:"Everest 1956"},c.evrst69={a:6377295.664,rf:300.8017,ellipseName:"Everest 1969"},c.evrstSS={a:6377298.556,rf:300.8017,ellipseName:"Everest (Sabah & Sarawak)"},c.fschr60={a:6378166,rf:298.3,ellipseName:"Fischer (Mercury Datum) 1960"},c.fschr60m={a:6378155,rf:298.3,ellipseName:"Fischer 1960"},c.fschr68={a:6378150,rf:298.3,ellipseName:"Fischer 1968"},c.helmert={a:6378200,rf:298.3,ellipseName:"Helmert 1906"},c.hough={a:6378270,rf:297,ellipseName:"Hough"},c.intl={a:6378388,rf:297,ellipseName:"International 1909 (Hayford)"},c.kaula={a:6378163,rf:298.24,ellipseName:"Kaula 1961"},c.lerch={a:6378139,rf:298.257,ellipseName:"Lerch 1979"},c.mprts={a:6397300,rf:191,ellipseName:"Maupertius 1738"},c.new_intl={a:6378157.5,b:6356772.2,ellipseName:"New International 1967"},c.plessis={a:6376523,rf:6355863,ellipseName:"Plessis 1817 (France)"},c.krass={a:6378245,rf:298.3,ellipseName:"Krassovsky, 1942"},c.SEasia={a:6378155,b:6356773.3205,ellipseName:"Southeast Asia"},c.walbeck={a:6376896,b:6355834.8467,ellipseName:"Walbeck"},c.WGS60={a:6378165,rf:298.3,ellipseName:"WGS 60"},c.WGS66={a:6378145,rf:298.25,ellipseName:"WGS 66"},c.WGS7={a:6378135,rf:298.26,ellipseName:"WGS 72"},c.WGS84={a:6378137,rf:298.257223563,ellipseName:"WGS 84"},c.sphere={a:6370997,b:6370997,ellipseName:"Normal Sphere (r=6370997)"}},{}],7:[function(a,b,c){c.greenwich=0,c.lisbon=-9.131906111111,c.paris=2.337229166667,c.bogota=-74.080916666667,c.madrid=-3.687938888889,c.rome=12.452333333333,c.bern=7.439583333333,c.jakarta=106.807719444444,c.ferro=-17.666666666667,c.brussels=4.367975,c.stockholm=18.058277777778,c.athens=23.7163375,c.oslo=10.722916666667},{}],8:[function(a,b,c){c.null={ll:[-3.14159265,-1.57079633],del:[3.14159265,1.57079633],lim:[3,3],count:9,cvs:[[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0],[0,0]]}},{}],9:[function(a,b,c){c.PrimeMeridian=a("./PrimeMeridian"),c.Ellipsoid=a("./Ellipsoid"),c.Datum=a("./Datum"),c.Datum.OSB36=c.Datum.OSGB36,c.grids=a("./grids")},{"./Datum":5,"./Ellipsoid":6,"./PrimeMeridian":7,"./grids":8}],10:[function(a,b){function c(a,b,c){var d;return Array.isArray(c)?(d=g(a,b,e(c)),3===c.length?[d.x,d.y,d.z]:[d.x,d.y]):g(a,b,c)}function d(a){return a instanceof f?a:a.oProj?a.oProj:f(a)}function proj4(a,b,e){a=d(a);var f,g=!1;return"undefined"==typeof b?(b=a,a=h,g=!0):("undefined"!=typeof b.x||Array.isArray(b))&&(e=b,b=a,a=h,g=!0),b=d(b),e?c(a,b,e):(f={forward:function(d){return c(a,b,d)},inverse:function(d){return c(b,a,d)}},g&&(f.oProj=b),f)}var e=a("./Point"),f=a("./Proj"),g=a("./transform"),h=f("WGS84");b.exports=proj4},{"./Point":1,"./Proj":2,"./transform":45}],11:[function(a,b){var c=a("./common"),d=function(a){if(!(this instanceof d))return new d(a);if(this.datum_type=c.PJD_WGS84,a){if(a.datumCode&&"none"===a.datumCode&&(this.datum_type=c.PJD_NODATUM),a.datum_params){for(var b=0;b3&&(0!==a.datum_params[3]||0!==a.datum_params[4]||0!==a.datum_params[5]||0!==a.datum_params[6])&&(this.datum_type=c.PJD_7PARAM,a.datum_params[3]*=c.SEC_TO_RAD,a.datum_params[4]*=c.SEC_TO_RAD,a.datum_params[5]*=c.SEC_TO_RAD,a.datum_params[6]=a.datum_params[6]/1e6+1)}this.datum_type=a.grids?c.PJD_GRIDSHIFT:this.datum_type,this.a=a.a,this.b=a.b,this.es=a.es,this.ep2=a.ep2,this.datum_params=a.datum_params,this.datum_type===c.PJD_GRIDSHIFT&&(this.grids=a.grids)}};d.prototype={compare_datums:function(a){return this.datum_type!==a.datum_type?!1:this.a!==a.a||Math.abs(this.es-a.es)>5e-11?!1:this.datum_type===c.PJD_3PARAM?this.datum_params[0]===a.datum_params[0]&&this.datum_params[1]===a.datum_params[1]&&this.datum_params[2]===a.datum_params[2]:this.datum_type===c.PJD_7PARAM?this.datum_params[0]===a.datum_params[0]&&this.datum_params[1]===a.datum_params[1]&&this.datum_params[2]===a.datum_params[2]&&this.datum_params[3]===a.datum_params[3]&&this.datum_params[4]===a.datum_params[4]&&this.datum_params[5]===a.datum_params[5]&&this.datum_params[6]===a.datum_params[6]:this.datum_type===c.PJD_GRIDSHIFT||a.datum_type===c.PJD_GRIDSHIFT?this.nadgrids===a.nadgrids:!0},geodetic_to_geocentric:function(a){var b,d,e,f,g,h,i,j=a.x,k=a.y,l=a.z?a.z:0,m=0;if(k<-c.HALF_PI&&k>-1.001*c.HALF_PI)k=-c.HALF_PI;else if(k>c.HALF_PI&&k<1.001*c.HALF_PI)k=c.HALF_PI;else if(k<-c.HALF_PI||k>c.HALF_PI)return null;return j>c.PI&&(j-=2*c.PI),g=Math.sin(k),i=Math.cos(k),h=g*g,f=this.a/Math.sqrt(1-this.es*h),b=(f+l)*i*Math.cos(j),d=(f+l)*i*Math.sin(j),e=(f*(1-this.es)+l)*g,a.x=b,a.y=d,a.z=e,m},geocentric_to_geodetic:function(a){var b,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t=1e-12,u=t*t,v=30,w=a.x,x=a.y,y=a.z?a.z:0;if(o=!1,b=Math.sqrt(w*w+x*x),d=Math.sqrt(w*w+x*x+y*y),b/this.au&&v>p);return r=Math.atan(m/Math.abs(l)),a.x=q,a.y=r,a.z=s,a},geocentric_to_geodetic_noniter:function(a){var b,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t=a.x,u=a.y,v=a.z?a.z:0;if(t=parseFloat(t),u=parseFloat(u),v=parseFloat(v),s=!1,0!==t)b=Math.atan2(u,t);else if(u>0)b=c.HALF_PI;else if(0>u)b=-c.HALF_PI;else if(s=!0,b=0,v>0)d=c.HALF_PI;else{if(!(0>v))return d=c.HALF_PI,e=-this.b,void 0;d=-c.HALF_PI}return g=t*t+u*u,f=Math.sqrt(g),h=v*c.AD_C,j=Math.sqrt(h*h+g),l=h/j,n=f/j,m=l*l*l,i=v+this.b*this.ep2*m,r=f-this.a*this.es*n*n*n,k=Math.sqrt(i*i+r*r),o=i/k,p=r/k,q=this.a/Math.sqrt(1-this.es*o*o),e=p>=c.COS_67P5?f/p-q:p<=-c.COS_67P5?f/-p-q:v/o+q*(this.es-1),s===!1&&(d=Math.atan(o/p)),a.x=b,a.y=d,a.z=e,a},geocentric_to_wgs84:function(a){if(this.datum_type===c.PJD_3PARAM)a.x+=this.datum_params[0],a.y+=this.datum_params[1],a.z+=this.datum_params[2];else if(this.datum_type===c.PJD_7PARAM){var b=this.datum_params[0],d=this.datum_params[1],e=this.datum_params[2],f=this.datum_params[3],g=this.datum_params[4],h=this.datum_params[5],i=this.datum_params[6],j=i*(a.x-h*a.y+g*a.z)+b,k=i*(h*a.x+a.y-f*a.z)+d,l=i*(-g*a.x+f*a.y+a.z)+e;a.x=j,a.y=k,a.z=l}},geocentric_from_wgs84:function(a){if(this.datum_type===c.PJD_3PARAM)a.x-=this.datum_params[0],a.y-=this.datum_params[1],a.z-=this.datum_params[2];else if(this.datum_type===c.PJD_7PARAM){var b=this.datum_params[0],d=this.datum_params[1],e=this.datum_params[2],f=this.datum_params[3],g=this.datum_params[4],h=this.datum_params[5],i=this.datum_params[6],j=(a.x-b)/i,k=(a.y-d)/i,l=(a.z-e)/i;a.x=j+h*k-g*l,a.y=-h*j+k+f*l,a.z=g*j-f*k+l}}},b.exports=d},{"./common":4}],12:[function(a,b){var c=a("./common");b.exports=function(a,b,d){function e(a){return a===c.PJD_3PARAM||a===c.PJD_7PARAM}var f,g,h;if(a.compare_datums(b))return d;if(a.datum_type===c.PJD_NODATUM||b.datum_type===c.PJD_NODATUM)return d;var i=a.a,j=a.es,k=b.a,l=b.es,m=a.datum_type;if(m===c.PJD_GRIDSHIFT)if(0===this.apply_gridshift(a,0,d))a.a=c.SRS_WGS84_SEMIMAJOR,a.es=c.SRS_WGS84_ESQUARED;else{if(!a.datum_params)return a.a=i,a.es=a.es,d;for(f=1,g=0,h=a.datum_params.length;h>g;g++)f*=a.datum_params[g];if(0===f)return a.a=i,a.es=a.es,d;m=a.datum_params.length>3?c.PJD_7PARAM:c.PJD_3PARAM}return b.datum_type===c.PJD_GRIDSHIFT&&(b.a=c.SRS_WGS84_SEMIMAJOR,b.es=c.SRS_WGS84_ESQUARED),(a.es!==b.es||a.a!==b.a||e(m)||e(b.datum_type))&&(a.geodetic_to_geocentric(d),e(a.datum_type)&&a.geocentric_to_wgs84(d),e(b.datum_type)&&b.geocentric_from_wgs84(d),b.geocentric_to_geodetic(d)),b.datum_type===c.PJD_GRIDSHIFT&&this.apply_gridshift(b,1,d),a.a=i,a.es=j,b.a=k,b.es=l,d}},{"./common":4}],13:[function(a,b){function c(a){var b=this;if(2===arguments.length)c[a]="+"===arguments[1][0]?e(arguments[1]):f(arguments[1]);else if(1===arguments.length)return Array.isArray(a)?a.map(function(a){Array.isArray(a)?c.apply(b,a):c(a)}):("string"==typeof a||("EPSG"in a?c["EPSG:"+a.EPSG]=a:"ESRI"in a?c["ESRI:"+a.ESRI]=a:"IAU2000"in a?c["IAU2000:"+a.IAU2000]=a:console.log(a)),void 0)}var d=a("./global"),e=a("./projString"),f=a("./wkt");d(c),b.exports=c},{"./global":15,"./projString":18,"./wkt":47}],14:[function(a,b){b.exports=function(a,b){a=a||{};var c,d;if(!b)return a;for(d in b)c=b[d],void 0!==c&&(a[d]=c);return a}},{}],15:[function(a,b){b.exports=function(a){a("WGS84","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),a("EPSG:4326","+title=WGS 84 (long/lat) +proj=longlat +ellps=WGS84 +datum=WGS84 +units=degrees"),a("EPSG:4269","+title=NAD83 (long/lat) +proj=longlat +a=6378137.0 +b=6356752.31414036 +ellps=GRS80 +datum=NAD83 +units=degrees"),a("EPSG:3857","+title=WGS 84 / Pseudo-Mercator +proj=merc +a=6378137 +b=6378137 +lat_ts=0.0 +lon_0=0.0 +x_0=0.0 +y_0=0 +k=1.0 +units=m +nadgrids=@null +no_defs"),a["EPSG:3785"]=a["EPSG:3857"],a.GOOGLE=a["EPSG:3857"],a["EPSG:900913"]=a["EPSG:3857"],a["EPSG:102113"]=a["EPSG:3857"]}},{}],16:[function(a,b){var proj4=a("./core");proj4.defaultDatum="WGS84",proj4.Proj=a("./Proj"),proj4.WGS84=new proj4.Proj("WGS84"),proj4.Point=a("./Point"),proj4.defs=a("./defs"),proj4.transform=a("./transform"),proj4.mgrs=a("./mgrs"),proj4.version=a("./version"),b.exports=proj4},{"./Point":1,"./Proj":2,"./core":10,"./defs":13,"./mgrs":17,"./transform":45,"./version":46}],17:[function(a,b,c){function d(a){return a*(Math.PI/180)}function e(a){return 180*(a/Math.PI)}function f(a){var b,c,e,f,g,i,j,k,l,m=a.lat,n=a.lon,o=6378137,p=.00669438,q=.9996,r=d(m),s=d(n);l=Math.floor((n+180)/6)+1,180===n&&(l=60),m>=56&&64>m&&n>=3&&12>n&&(l=32),m>=72&&84>m&&(n>=0&&9>n?l=31:n>=9&&21>n?l=33:n>=21&&33>n?l=35:n>=33&&42>n&&(l=37)),b=6*(l-1)-180+3,k=d(b),c=p/(1-p),e=o/Math.sqrt(1-p*Math.sin(r)*Math.sin(r)),f=Math.tan(r)*Math.tan(r),g=c*Math.cos(r)*Math.cos(r),i=Math.cos(r)*(s-k),j=o*((1-p/4-3*p*p/64-5*p*p*p/256)*r-(3*p/8+3*p*p/32+45*p*p*p/1024)*Math.sin(2*r)+(15*p*p/256+45*p*p*p/1024)*Math.sin(4*r)-35*p*p*p/3072*Math.sin(6*r));var t=q*e*(i+(1-f+g)*i*i*i/6+(5-18*f+f*f+72*g-58*c)*i*i*i*i*i/120)+5e5,u=q*(j+e*Math.tan(r)*(i*i/2+(5-f+9*g+4*g*g)*i*i*i*i/24+(61-58*f+f*f+600*g-330*c)*i*i*i*i*i*i/720));return 0>m&&(u+=1e7),{northing:Math.round(u),easting:Math.round(t),zoneNumber:l,zoneLetter:h(m)}}function g(a){var b=a.northing,c=a.easting,d=a.zoneLetter,f=a.zoneNumber;if(0>f||f>60)return null;var h,i,j,k,l,m,n,o,p,q,r=.9996,s=6378137,t=.00669438,u=(1-Math.sqrt(1-t))/(1+Math.sqrt(1-t)),v=c-5e5,w=b;"N">d&&(w-=1e7),o=6*(f-1)-180+3,h=t/(1-t),n=w/r,p=n/(s*(1-t/4-3*t*t/64-5*t*t*t/256)),q=p+(3*u/2-27*u*u*u/32)*Math.sin(2*p)+(21*u*u/16-55*u*u*u*u/32)*Math.sin(4*p)+151*u*u*u/96*Math.sin(6*p),i=s/Math.sqrt(1-t*Math.sin(q)*Math.sin(q)),j=Math.tan(q)*Math.tan(q),k=h*Math.cos(q)*Math.cos(q),l=s*(1-t)/Math.pow(1-t*Math.sin(q)*Math.sin(q),1.5),m=v/(i*r);var x=q-i*Math.tan(q)/l*(m*m/2-(5+3*j+10*k-4*k*k-9*h)*m*m*m*m/24+(61+90*j+298*k+45*j*j-252*h-3*k*k)*m*m*m*m*m*m/720);x=e(x);var y=(m-(1+2*j+k)*m*m*m/6+(5-2*k+28*j-3*k*k+8*h+24*j*j)*m*m*m*m*m/120)/Math.cos(q);y=o+e(y);var z;if(a.accuracy){var A=g({northing:a.northing+a.accuracy,easting:a.easting+a.accuracy,zoneLetter:a.zoneLetter,zoneNumber:a.zoneNumber});z={top:A.lat,right:A.lon,bottom:x,left:y}}else z={lat:x,lon:y};return z}function h(a){var b="Z";return 84>=a&&a>=72?b="X":72>a&&a>=64?b="W":64>a&&a>=56?b="V":56>a&&a>=48?b="U":48>a&&a>=40?b="T":40>a&&a>=32?b="S":32>a&&a>=24?b="R":24>a&&a>=16?b="Q":16>a&&a>=8?b="P":8>a&&a>=0?b="N":0>a&&a>=-8?b="M":-8>a&&a>=-16?b="L":-16>a&&a>=-24?b="K":-24>a&&a>=-32?b="J":-32>a&&a>=-40?b="H":-40>a&&a>=-48?b="G":-48>a&&a>=-56?b="F":-56>a&&a>=-64?b="E":-64>a&&a>=-72?b="D":-72>a&&a>=-80&&(b="C"),b}function i(a,b){var c=""+a.easting,d=""+a.northing;return a.zoneNumber+a.zoneLetter+j(a.easting,a.northing,a.zoneNumber)+c.substr(c.length-5,b)+d.substr(d.length-5,b)}function j(a,b,c){var d=k(c),e=Math.floor(a/1e5),f=Math.floor(b/1e5)%20;return l(e,f,d)}function k(a){var b=a%q;return 0===b&&(b=q),b}function l(a,b,c){var d=c-1,e=r.charCodeAt(d),f=s.charCodeAt(d),g=e+a-1,h=f+b,i=!1;g>x&&(g=g-x+t-1,i=!0),(g===u||u>e&&g>u||(g>u||u>e)&&i)&&g++,(g===v||v>e&&g>v||(g>v||v>e)&&i)&&(g++,g===u&&g++),g>x&&(g=g-x+t-1),h>w?(h=h-w+t-1,i=!0):i=!1,(h===u||u>f&&h>u||(h>u||u>f)&&i)&&h++,(h===v||v>f&&h>v||(h>v||v>f)&&i)&&(h++,h===u&&h++),h>w&&(h=h-w+t-1);var j=String.fromCharCode(g)+String.fromCharCode(h);return j}function m(a){if(a&&0===a.length)throw"MGRSPoint coverting from nothing";for(var b,c=a.length,d=null,e="",f=0;!/[A-Z]/.test(b=a.charAt(f));){if(f>=2)throw"MGRSPoint bad conversion from: "+a;e+=b,f++}var g=parseInt(e,10);if(0===f||f+3>c)throw"MGRSPoint bad conversion from: "+a;var h=a.charAt(f++);if("A">=h||"B"===h||"Y"===h||h>="Z"||"I"===h||"O"===h)throw"MGRSPoint zone letter "+h+" not handled: "+a;d=a.substring(f,f+=2);for(var i=k(g),j=n(d.charAt(0),i),l=o(d.charAt(1),i);l0&&(q=1e5/Math.pow(10,v),r=a.substring(f,f+v),w=parseFloat(r)*q,s=a.substring(f+v),x=parseFloat(s)*q),t=w+j,u=x+l,{easting:t,northing:u,zoneLetter:h,zoneNumber:g,accuracy:q}}function n(a,b){for(var c=r.charCodeAt(b-1),d=1e5,e=!1;c!==a.charCodeAt(0);){if(c++,c===u&&c++,c===v&&c++,c>x){if(e)throw"Bad character: "+a;c=t,e=!0}d+=1e5}return d}function o(a,b){if(a>"V")throw"MGRSPoint given invalid Northing "+a;for(var c=s.charCodeAt(b-1),d=0,e=!1;c!==a.charCodeAt(0);){if(c++,c===u&&c++,c===v&&c++,c>w){if(e)throw"Bad character: "+a;c=t,e=!0}d+=1e5}return d}function p(a){var b;switch(a){case"C":b=11e5;break;case"D":b=2e6;break;case"E":b=28e5;break;case"F":b=37e5;break;case"G":b=46e5;break;case"H":b=55e5;break;case"J":b=64e5;break;case"K":b=73e5;break;case"L":b=82e5;break;case"M":b=91e5;break;case"N":b=0;break;case"P":b=8e5;break;case"Q":b=17e5;break;case"R":b=26e5;break;case"S":b=35e5;break;case"T":b=44e5;break;case"U":b=53e5;break;case"V":b=62e5;break;case"W":b=7e6;break;case"X":b=79e5;break;default:b=-1}if(b>=0)return b;throw"Invalid zone letter: "+a}var q=6,r="AJSAJS",s="AFAFAF",t=65,u=73,v=79,w=86,x=90;c.forward=function(a,b){return b=b||5,i(f({lat:a.lat,lon:a.lon}),b)},c.inverse=function(a){var b=g(m(a.toUpperCase()));return[b.left,b.bottom,b.right,b.top]}},{}],18:[function(a,b){var c=a("./common"),d=a("./constants/index");b.exports=function(a){var b={},e={};a.split("+").map(function(a){return a.trim()}).filter(function(a){return a}).forEach(function(a){var b=a.split("=");b.push(!0),e[b[0].toLowerCase()]=b[1]});var f,g,h,i={proj:"projName",datum:"datumCode",rf:function(a){b.rf=parseFloat(a,10)},lat_0:function(a){b.lat0=a*c.D2R},lat_1:function(a){b.lat1=a*c.D2R},lat_2:function(a){b.lat2=a*c.D2R},lat_ts:function(a){b.lat_ts=a*c.D2R},lon_0:function(a){b.long0=a*c.D2R},lon_1:function(a){b.long1=a*c.D2R},lon_2:function(a){b.long2=a*c.D2R},alpha:function(a){b.alpha=parseFloat(a)*c.D2R},lonc:function(a){b.longc=a*c.D2R},x_0:function(a){b.x0=parseFloat(a,10)},y_0:function(a){b.y0=parseFloat(a,10)},k_0:function(a){b.k0=parseFloat(a,10)},k:function(a){b.k0=parseFloat(a,10)},r_a:function(){b.R_A=!0},zone:function(a){b.zone=parseInt(a,10)},south:function(){b.utmSouth=!0},towgs84:function(a){b.datum_params=a.split(",").map(function(a){return parseFloat(a,10)})},to_meter:function(a){b.to_meter=parseFloat(a,10)},from_greenwich:function(a){b.from_greenwich=a*c.D2R},pm:function(a){b.from_greenwich=(d.PrimeMeridian[a]?d.PrimeMeridian[a]:parseFloat(a,10))*c.D2R},nadgrids:function(a){"@null"===a?b.datumCode="none":b.nadgrids=a},axis:function(a){var c="ewnsud";3===a.length&&-1!==c.indexOf(a.substr(0,1))&&-1!==c.indexOf(a.substr(1,1))&&-1!==c.indexOf(a.substr(2,1))&&(b.axis=a)}};for(f in e)g=e[f],f in i?(h=i[f],"function"==typeof h?h(g):b[h]=g):b[f]=g;return b}},{"./common":4,"./constants/index":9}],19:[function(a,b,c){var d=a("../common");c.init=function(){Math.abs(this.lat1+this.lat2)d.EPSLN?(this.ms1*this.ms1-this.ms2*this.ms2)/(this.qs2-this.qs1):this.con,this.c=this.ms1*this.ms1+this.ns0*this.qs1,this.rh=this.a*Math.sqrt(this.c-this.ns0*this.qs0)/this.ns0)},c.forward=function(a){var b=a.x,c=a.y;this.sin_phi=Math.sin(c),this.cos_phi=Math.cos(c);var e=d.qsfnz(this.e3,this.sin_phi,this.cos_phi),f=this.a*Math.sqrt(this.c-this.ns0*e)/this.ns0,g=this.ns0*d.adjust_lon(b-this.long0),h=f*Math.sin(g)+this.x0,i=this.rh-f*Math.cos(g)+this.y0;return a.x=h,a.y=i,a},c.inverse=function(a){var b,c,e,f,g,h;return a.x-=this.x0,a.y=this.rh-a.y+this.y0,this.ns0>=0?(b=Math.sqrt(a.x*a.x+a.y*a.y),e=1):(b=-Math.sqrt(a.x*a.x+a.y*a.y),e=-1),f=0,0!==b&&(f=Math.atan2(e*a.x,e*a.y)),e=b*this.ns0/this.a,this.sphere?h=Math.asin((this.c-e*e)/(2*this.ns0)):(c=(this.c-e*e)/this.ns0,h=this.phi1z(this.e3,c)),g=d.adjust_lon(f/this.ns0+this.long0),a.x=g,a.y=h,a},c.phi1z=function(a,b){var c,e,f,g,h,i=d.asinz(.5*b);if(a=k;k++)if(c=Math.sin(i),e=Math.cos(i),f=a*c,g=1-f*f,h=.5*g*g/e*(b/(1-j)-c/g+.5/a*Math.log((1-f)/(1+f))),i+=h,Math.abs(h)<=1e-7)return i;return null},c.names=["Albers_Conic_Equal_Area","Albers","aea"]},{"../common":4}],20:[function(a,b,c){var d=a("../common");c.init=function(){this.sin_p12=Math.sin(this.lat0),this.cos_p12=Math.cos(this.lat0)},c.forward=function(a){var b,c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z=a.x,A=a.y,B=Math.sin(a.y),C=Math.cos(a.y),D=d.adjust_lon(z-this.long0);return this.sphere?Math.abs(this.sin_p12-1)<=d.EPSLN?(a.x=this.x0+this.a*(d.HALF_PI-A)*Math.sin(D),a.y=this.y0-this.a*(d.HALF_PI-A)*Math.cos(D),a):Math.abs(this.sin_p12+1)<=d.EPSLN?(a.x=this.x0+this.a*(d.HALF_PI+A)*Math.sin(D),a.y=this.y0+this.a*(d.HALF_PI+A)*Math.cos(D),a):(t=this.sin_p12*B+this.cos_p12*C*Math.cos(D),r=Math.acos(t),s=r/Math.sin(r),a.x=this.x0+this.a*s*C*Math.sin(D),a.y=this.y0+this.a*s*(this.cos_p12*B-this.sin_p12*C*Math.cos(D)),a):(b=d.e0fn(this.es),c=d.e1fn(this.es),e=d.e2fn(this.es),f=d.e3fn(this.es),Math.abs(this.sin_p12-1)<=d.EPSLN?(g=this.a*d.mlfn(b,c,e,f,d.HALF_PI),h=this.a*d.mlfn(b,c,e,f,A),a.x=this.x0+(g-h)*Math.sin(D),a.y=this.y0-(g-h)*Math.cos(D),a):Math.abs(this.sin_p12+1)<=d.EPSLN?(g=this.a*d.mlfn(b,c,e,f,d.HALF_PI),h=this.a*d.mlfn(b,c,e,f,A),a.x=this.x0+(g+h)*Math.sin(D),a.y=this.y0+(g+h)*Math.cos(D),a):(i=B/C,j=d.gN(this.a,this.e,this.sin_p12),k=d.gN(this.a,this.e,B),l=Math.atan((1-this.es)*i+this.es*j*this.sin_p12/(k*C)),m=Math.atan2(Math.sin(D),this.cos_p12*Math.tan(l)-this.sin_p12*Math.cos(D)),u=0===m?Math.asin(this.cos_p12*Math.sin(l)-this.sin_p12*Math.cos(l)):Math.abs(Math.abs(m)-d.PI)<=d.EPSLN?-Math.asin(this.cos_p12*Math.sin(l)-this.sin_p12*Math.cos(l)):Math.asin(Math.sin(D)*Math.cos(l)/Math.sin(m)),n=this.e*this.sin_p12/Math.sqrt(1-this.es),o=this.e*this.cos_p12*Math.cos(m)/Math.sqrt(1-this.es),p=n*o,q=o*o,v=u*u,w=v*u,x=w*u,y=x*u,r=j*u*(1-v*q*(1-q)/6+w/8*p*(1-2*q)+x/120*(q*(4-7*q)-3*n*n*(1-7*q))-y/48*p),a.x=this.x0+r*Math.sin(m),a.y=this.y0+r*Math.cos(m),a))},c.inverse=function(a){a.x-=this.x0,a.y-=this.y0; +var b,c,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y;if(this.sphere){if(b=Math.sqrt(a.x*a.x+a.y*a.y),b>2*d.HALF_PI*this.a)return;return c=b/this.a,e=Math.sin(c),f=Math.cos(c),g=this.long0,Math.abs(b)<=d.EPSLN?h=this.lat0:(h=d.asinz(f*this.sin_p12+a.y*e*this.cos_p12/b),i=Math.abs(this.lat0)-d.HALF_PI,g=Math.abs(i)<=d.EPSLN?this.lat0>=0?d.adjust_lon(this.long0+Math.atan2(a.x,-a.y)):d.adjust_lon(this.long0-Math.atan2(-a.x,a.y)):d.adjust_lon(this.long0+Math.atan2(a.x*e,b*this.cos_p12*f-a.y*this.sin_p12*e))),a.x=g,a.y=h,a}return j=d.e0fn(this.es),k=d.e1fn(this.es),l=d.e2fn(this.es),m=d.e3fn(this.es),Math.abs(this.sin_p12-1)<=d.EPSLN?(n=this.a*d.mlfn(j,k,l,m,d.HALF_PI),b=Math.sqrt(a.x*a.x+a.y*a.y),o=n-b,h=d.imlfn(o/this.a,j,k,l,m),g=d.adjust_lon(this.long0+Math.atan2(a.x,-1*a.y)),a.x=g,a.y=h,a):Math.abs(this.sin_p12+1)<=d.EPSLN?(n=this.a*d.mlfn(j,k,l,m,d.HALF_PI),b=Math.sqrt(a.x*a.x+a.y*a.y),o=b-n,h=d.imlfn(o/this.a,j,k,l,m),g=d.adjust_lon(this.long0+Math.atan2(a.x,a.y)),a.x=g,a.y=h,a):(b=Math.sqrt(a.x*a.x+a.y*a.y),r=Math.atan2(a.x,a.y),p=d.gN(this.a,this.e,this.sin_p12),s=Math.cos(r),t=this.e*this.cos_p12*s,u=-t*t/(1-this.es),v=3*this.es*(1-u)*this.sin_p12*this.cos_p12*s/(1-this.es),w=b/p,x=w-u*(1+u)*Math.pow(w,3)/6-v*(1+3*u)*Math.pow(w,4)/24,y=1-u*x*x/2-w*x*x*x/6,q=Math.asin(this.sin_p12*Math.cos(x)+this.cos_p12*Math.sin(x)*s),g=d.adjust_lon(this.long0+Math.asin(Math.sin(r)*Math.sin(x)/Math.cos(q))),h=Math.atan((1-this.es*y*this.sin_p12/Math.sin(q))*Math.tan(q)/(1-this.es)),a.x=g,a.y=h,a)},c.names=["Azimuthal_Equidistant","aeqd"]},{"../common":4}],21:[function(a,b,c){var d=a("../common");c.init=function(){this.sphere||(this.e0=d.e0fn(this.es),this.e1=d.e1fn(this.es),this.e2=d.e2fn(this.es),this.e3=d.e3fn(this.es),this.ml0=this.a*d.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat0))},c.forward=function(a){var b,c,e=a.x,f=a.y;if(e=d.adjust_lon(e-this.long0),this.sphere)b=this.a*Math.asin(Math.cos(f)*Math.sin(e)),c=this.a*(Math.atan2(Math.tan(f),Math.cos(e))-this.lat0);else{var g=Math.sin(f),h=Math.cos(f),i=d.gN(this.a,this.e,g),j=Math.tan(f)*Math.tan(f),k=e*Math.cos(f),l=k*k,m=this.es*h*h/(1-this.es),n=this.a*d.mlfn(this.e0,this.e1,this.e2,this.e3,f);b=i*k*(1-l*j*(1/6-(8-j+8*m)*l/120)),c=n-this.ml0+i*g/h*l*(.5+(5-j+6*m)*l/24)}return a.x=b+this.x0,a.y=c+this.y0,a},c.inverse=function(a){a.x-=this.x0,a.y-=this.y0;var b,c,e=a.x/this.a,f=a.y/this.a;if(this.sphere){var g=f+this.lat0;b=Math.asin(Math.sin(g)*Math.cos(e)),c=Math.atan2(Math.tan(e),Math.cos(g))}else{var h=this.ml0/this.a+f,i=d.imlfn(h,this.e0,this.e1,this.e2,this.e3);if(Math.abs(Math.abs(i)-d.HALF_PI)<=d.EPSLN)return a.x=this.long0,a.y=d.HALF_PI,0>f&&(a.y*=-1),a;var j=d.gN(this.a,this.e,Math.sin(i)),k=j*j*j/this.a/this.a*(1-this.es),l=Math.pow(Math.tan(i),2),m=e*this.a/j,n=m*m;b=i-j*Math.tan(i)/k*m*m*(.5-(1+3*l)*m*m/24),c=m*(1-n*(l/3+(1+3*l)*l*n/15))/Math.cos(i)}return a.x=d.adjust_lon(c+this.long0),a.y=d.adjust_lat(b),a},c.names=["Cassini","Cassini_Soldner","cass"]},{"../common":4}],22:[function(a,b,c){var d=a("../common");c.init=function(){this.sphere||(this.k0=d.msfnz(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)))},c.forward=function(a){var b,c,e=a.x,f=a.y,g=d.adjust_lon(e-this.long0);if(this.sphere)b=this.x0+this.a*g*Math.cos(this.lat_ts),c=this.y0+this.a*Math.sin(f)/Math.cos(this.lat_ts);else{var h=d.qsfnz(this.e,Math.sin(f));b=this.x0+this.a*this.k0*g,c=this.y0+this.a*h*.5/this.k0}return a.x=b,a.y=c,a},c.inverse=function(a){a.x-=this.x0,a.y-=this.y0;var b,c;return this.sphere?(b=d.adjust_lon(this.long0+a.x/this.a/Math.cos(this.lat_ts)),c=Math.asin(a.y/this.a*Math.cos(this.lat_ts))):(c=d.iqsfnz(this.e,2*a.y*this.k0/this.a),b=d.adjust_lon(this.long0+a.x/(this.a*this.k0))),a.x=b,a.y=c,a},c.names=["cea"]},{"../common":4}],23:[function(a,b,c){var d=a("../common");c.init=function(){this.x0=this.x0||0,this.y0=this.y0||0,this.lat0=this.lat0||0,this.long0=this.long0||0,this.lat_ts=this.lat_t||0,this.title=this.title||"Equidistant Cylindrical (Plate Carre)",this.rc=Math.cos(this.lat_ts)},c.forward=function(a){var b=a.x,c=a.y,e=d.adjust_lon(b-this.long0),f=d.adjust_lat(c-this.lat0);return a.x=this.x0+this.a*e*this.rc,a.y=this.y0+this.a*f,a},c.inverse=function(a){var b=a.x,c=a.y;return a.x=d.adjust_lon(this.long0+(b-this.x0)/(this.a*this.rc)),a.y=d.adjust_lat(this.lat0+(c-this.y0)/this.a),a},c.names=["Equirectangular","Equidistant_Cylindrical","eqc"]},{"../common":4}],24:[function(a,b,c){var d=a("../common");c.init=function(){return Math.abs(this.lat1+this.lat2)=0?(c=Math.sqrt(a.x*a.x+a.y*a.y),b=1):(c=-Math.sqrt(a.x*a.x+a.y*a.y),b=-1);var g=0;if(0!==c&&(g=Math.atan2(b*a.x,b*a.y)),this.sphere)return f=d.adjust_lon(this.long0+g/this.ns),e=d.adjust_lat(this.g-c/this.a),a.x=f,a.y=e,a;var h=this.g-c/this.a;return e=d.imlfn(h,this.e0,this.e1,this.e2,this.e3),f=d.adjust_lon(this.long0+g/this.ns),a.x=f,a.y=e,a},c.names=["Equidistant_Conic","eqdc"]},{"../common":4}],25:[function(a,b,c){var d=a("../common");c.init=function(){var a=Math.sin(this.lat0),b=Math.cos(this.lat0);b*=b,this.rc=Math.sqrt(1-this.es)/(1-this.es*a*a),this.C=Math.sqrt(1+this.es*b*b/(1-this.es)),this.phic0=Math.asin(a/this.C),this.ratexp=.5*this.C*this.e,this.K=Math.tan(.5*this.phic0+d.FORTPI)/(Math.pow(Math.tan(.5*this.lat0+d.FORTPI),this.C)*d.srat(this.e*a,this.ratexp))},c.forward=function(a){var b=a.x,c=a.y;return a.y=2*Math.atan(this.K*Math.pow(Math.tan(.5*c+d.FORTPI),this.C)*d.srat(this.e*Math.sin(c),this.ratexp))-d.HALF_PI,a.x=this.C*b,a},c.inverse=function(a){for(var b=1e-14,c=a.x/this.C,e=a.y,f=Math.pow(Math.tan(.5*e+d.FORTPI)/this.K,1/this.C),g=d.MAX_ITER;g>0&&(e=2*Math.atan(f*d.srat(this.e*Math.sin(a.y),-.5*this.e))-d.HALF_PI,!(Math.abs(e-a.y)0||Math.abs(h)<=d.EPSLN?(i=this.x0+this.a*g*c*Math.sin(e)/h,j=this.y0+this.a*g*(this.cos_p14*b-this.sin_p14*c*f)/h):(i=this.x0+this.infinity_dist*c*Math.sin(e),j=this.y0+this.infinity_dist*(this.cos_p14*b-this.sin_p14*c*f)),a.x=i,a.y=j,a},c.inverse=function(a){var b,c,e,f,g,h;return a.x=(a.x-this.x0)/this.a,a.y=(a.y-this.y0)/this.a,a.x/=this.k0,a.y/=this.k0,(b=Math.sqrt(a.x*a.x+a.y*a.y))?(f=Math.atan2(b,this.rc),c=Math.sin(f),e=Math.cos(f),h=d.asinz(e*this.sin_p14+a.y*c*this.cos_p14/b),g=Math.atan2(a.x*c,b*this.cos_p14*e-a.y*this.sin_p14*c),g=d.adjust_lon(this.long0+g)):(h=this.phic0,g=0),a.x=g,a.y=h,a},c.names=["gnom"]},{"../common":4}],27:[function(a,b,c){function d(a,b){var c=g.length;return a.names?(g[c]=a,a.names.forEach(function(a){f[a.toLowerCase()]=c}),this):(console.log(b),!0)}var e=[a("./tmerc"),a("./utm"),a("./sterea"),a("./stere"),a("./somerc"),a("./omerc"),a("./lcc"),a("./krovak"),a("./cass"),a("./laea"),a("./merc"),a("./aea"),a("./gnom"),a("./cea"),a("./eqc"),a("./poly"),a("./nzmg"),a("./mill"),a("./sinu"),a("./moll"),a("./eqdc"),a("./vandg"),a("./aeqd"),a("./longlat")],f={},g=[];c.add=d,c.get=function(a){if(!a)return!1;var b=a.toLowerCase();return"undefined"!=typeof f[b]&&g[f[b]]?g[f[b]]:void 0},c.start=function(){e.forEach(d)}},{"./aea":19,"./aeqd":20,"./cass":21,"./cea":22,"./eqc":23,"./eqdc":24,"./gnom":26,"./krovak":28,"./laea":29,"./lcc":30,"./longlat":31,"./merc":32,"./mill":33,"./moll":34,"./nzmg":35,"./omerc":36,"./poly":37,"./sinu":38,"./somerc":39,"./stere":40,"./sterea":41,"./tmerc":42,"./utm":43,"./vandg":44}],28:[function(a,b,c){var d=a("../common");c.init=function(){this.a=6377397.155,this.es=.006674372230614,this.e=Math.sqrt(this.es),this.lat0||(this.lat0=.863937979737193),this.long0||(this.long0=.4334234309119251),this.k0||(this.k0=.9999),this.s45=.785398163397448,this.s90=2*this.s45,this.fi0=this.lat0,this.e2=this.es,this.e=Math.sqrt(this.e2),this.alfa=Math.sqrt(1+this.e2*Math.pow(Math.cos(this.fi0),4)/(1-this.e2)),this.uq=1.04216856380474,this.u0=Math.asin(Math.sin(this.fi0)/this.alfa),this.g=Math.pow((1+this.e*Math.sin(this.fi0))/(1-this.e*Math.sin(this.fi0)),this.alfa*this.e/2),this.k=Math.tan(this.u0/2+this.s45)/Math.pow(Math.tan(this.fi0/2+this.s45),this.alfa)*this.g,this.k1=this.k0,this.n0=this.a*Math.sqrt(1-this.e2)/(1-this.e2*Math.pow(Math.sin(this.fi0),2)),this.s0=1.37008346281555,this.n=Math.sin(this.s0),this.ro0=this.k1*this.n0/Math.tan(this.s0),this.ad=this.s90-this.uq},c.forward=function(a){var b,c,e,f,g,h,i,j=a.x,k=a.y,l=d.adjust_lon(j-this.long0);return b=Math.pow((1+this.e*Math.sin(k))/(1-this.e*Math.sin(k)),this.alfa*this.e/2),c=2*(Math.atan(this.k*Math.pow(Math.tan(k/2+this.s45),this.alfa)/b)-this.s45),e=-l*this.alfa,f=Math.asin(Math.cos(this.ad)*Math.sin(c)+Math.sin(this.ad)*Math.cos(c)*Math.cos(e)),g=Math.asin(Math.cos(c)*Math.sin(e)/Math.cos(f)),h=this.n*g,i=this.ro0*Math.pow(Math.tan(this.s0/2+this.s45),this.n)/Math.pow(Math.tan(f/2+this.s45),this.n),a.y=i*Math.cos(h)/1,a.x=i*Math.sin(h)/1,this.czech||(a.y*=-1,a.x*=-1),a},c.inverse=function(a){var b,c,d,e,f,g,h,i,j=a.x;a.x=a.y,a.y=j,this.czech||(a.y*=-1,a.x*=-1),g=Math.sqrt(a.x*a.x+a.y*a.y),f=Math.atan2(a.y,a.x),e=f/Math.sin(this.s0),d=2*(Math.atan(Math.pow(this.ro0/g,1/this.n)*Math.tan(this.s0/2+this.s45))-this.s45),b=Math.asin(Math.cos(this.ad)*Math.sin(d)-Math.sin(this.ad)*Math.cos(d)*Math.cos(e)),c=Math.asin(Math.cos(d)*Math.sin(e)/Math.cos(b)),a.x=this.long0-c/this.alfa,h=b,i=0;var k=0;do a.y=2*(Math.atan(Math.pow(this.k,-1/this.alfa)*Math.pow(Math.tan(b/2+this.s45),1/this.alfa)*Math.pow((1+this.e*Math.sin(h))/(1-this.e*Math.sin(h)),this.e/2))-this.s45),Math.abs(h-a.y)<1e-10&&(i=1),h=a.y,k+=1;while(0===i&&15>k);return k>=15?null:a},c.names=["Krovak","krovak"]},{"../common":4}],29:[function(a,b,c){var d=a("../common");c.S_POLE=1,c.N_POLE=2,c.EQUIT=3,c.OBLIQ=4,c.init=function(){var a=Math.abs(this.lat0);if(this.mode=Math.abs(a-d.HALF_PI)0){var b;switch(this.qp=d.qsfnz(this.e,1),this.mmf=.5/(1-this.es),this.apa=this.authset(this.es),this.mode){case this.N_POLE:this.dd=1;break;case this.S_POLE:this.dd=1;break;case this.EQUIT:this.rq=Math.sqrt(.5*this.qp),this.dd=1/this.rq,this.xmf=1,this.ymf=.5*this.qp;break;case this.OBLIQ:this.rq=Math.sqrt(.5*this.qp),b=Math.sin(this.lat0),this.sinb1=d.qsfnz(this.e,b)/this.qp,this.cosb1=Math.sqrt(1-this.sinb1*this.sinb1),this.dd=Math.cos(this.lat0)/(Math.sqrt(1-this.es*b*b)*this.rq*this.cosb1),this.ymf=(this.xmf=this.rq)/this.dd,this.xmf*=this.dd}}else this.mode===this.OBLIQ&&(this.sinph0=Math.sin(this.lat0),this.cosph0=Math.cos(this.lat0))},c.forward=function(a){var b,c,e,f,g,h,i,j,k,l,m=a.x,n=a.y;if(m=d.adjust_lon(m-this.long0),this.sphere){if(g=Math.sin(n),l=Math.cos(n),e=Math.cos(m),this.mode===this.OBLIQ||this.mode===this.EQUIT){if(c=this.mode===this.EQUIT?1+l*e:1+this.sinph0*g+this.cosph0*l*e,c<=d.EPSLN)return null;c=Math.sqrt(2/c),b=c*l*Math.sin(m),c*=this.mode===this.EQUIT?g:this.cosph0*g-this.sinph0*l*e}else if(this.mode===this.N_POLE||this.mode===this.S_POLE){if(this.mode===this.N_POLE&&(e=-e),Math.abs(n+this.phi0)=0?(b=(k=Math.sqrt(h))*f,c=e*(this.mode===this.S_POLE?k:-k)):b=c=0}}return a.x=this.a*b+this.x0,a.y=this.a*c+this.y0,a},c.inverse=function(a){a.x-=this.x0,a.y-=this.y0;var b,c,e,f,g,h,i,j=a.x/this.a,k=a.y/this.a;if(this.sphere){var l,m=0,n=0;if(l=Math.sqrt(j*j+k*k),c=.5*l,c>1)return null;switch(c=2*Math.asin(c),(this.mode===this.OBLIQ||this.mode===this.EQUIT)&&(n=Math.sin(c),m=Math.cos(c)),this.mode){case this.EQUIT:c=Math.abs(l)<=d.EPSLN?0:Math.asin(k*n/l),j*=n,k=m*l;break;case this.OBLIQ:c=Math.abs(l)<=d.EPSLN?this.phi0:Math.asin(m*this.sinph0+k*n*this.cosph0/l),j*=n*this.cosph0,k=(m-Math.sin(c)*this.sinph0)*l;break;case this.N_POLE:k=-k,c=d.HALF_PI-c;break;case this.S_POLE:c-=d.HALF_PI}b=0!==k||this.mode!==this.EQUIT&&this.mode!==this.OBLIQ?Math.atan2(j,k):0}else{if(i=0,this.mode===this.OBLIQ||this.mode===this.EQUIT){if(j/=this.dd,k*=this.dd,h=Math.sqrt(j*j+k*k),hd.EPSLN?Math.log(e/i)/Math.log(f/j):b,isNaN(this.ns)&&(this.ns=b),this.f0=e/(this.ns*Math.pow(f,this.ns)),this.rh=this.a*this.f0*Math.pow(k,this.ns),this.title||(this.title="Lambert Conformal Conic")}},c.forward=function(a){var b=a.x,c=a.y;Math.abs(2*Math.abs(c)-d.PI)<=d.EPSLN&&(c=d.sign(c)*(d.HALF_PI-2*d.EPSLN));var e,f,g=Math.abs(Math.abs(c)-d.HALF_PI);if(g>d.EPSLN)e=d.tsfnz(this.e,c,Math.sin(c)),f=this.a*this.f0*Math.pow(e,this.ns);else{if(g=c*this.ns,0>=g)return null;f=0}var h=this.ns*d.adjust_lon(b-this.long0);return a.x=this.k0*f*Math.sin(h)+this.x0,a.y=this.k0*(this.rh-f*Math.cos(h))+this.y0,a},c.inverse=function(a){var b,c,e,f,g,h=(a.x-this.x0)/this.k0,i=this.rh-(a.y-this.y0)/this.k0;this.ns>0?(b=Math.sqrt(h*h+i*i),c=1):(b=-Math.sqrt(h*h+i*i),c=-1);var j=0;if(0!==b&&(j=Math.atan2(c*h,c*i)),0!==b||this.ns>0){if(c=1/this.ns,e=Math.pow(b/(this.a*this.f0),c),f=d.phi2z(this.e,e),-9999===f)return null}else f=-d.HALF_PI;return g=d.adjust_lon(j/this.ns+this.long0),a.x=g,a.y=f,a},c.names=["Lambert Tangential Conformal Conic Projection","Lambert_Conformal_Conic","Lambert_Conformal_Conic_2SP","lcc"]},{"../common":4}],31:[function(a,b,c){function d(a){return a}c.init=function(){},c.forward=d,c.inverse=d,c.names=["longlat","identity"]},{}],32:[function(a,b,c){var d=a("../common");c.init=function(){var a=this.b/this.a;this.es=1-a*a,this.e=Math.sqrt(this.es),this.lat_ts?this.k0=this.sphere?Math.cos(this.lat_ts):d.msfnz(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts)):this.k0||(this.k0=this.k?this.k:1)},c.forward=function(a){var b=a.x,c=a.y;if(c*d.R2D>90&&c*d.R2D<-90&&b*d.R2D>180&&b*d.R2D<-180)return null;var e,f;if(Math.abs(Math.abs(c)-d.HALF_PI)<=d.EPSLN)return null;if(this.sphere)e=this.x0+this.a*this.k0*d.adjust_lon(b-this.long0),f=this.y0+this.a*this.k0*Math.log(Math.tan(d.FORTPI+.5*c));else{var g=Math.sin(c),h=d.tsfnz(this.e,c,g);e=this.x0+this.a*this.k0*d.adjust_lon(b-this.long0),f=this.y0-this.a*this.k0*Math.log(h)}return a.x=e,a.y=f,a},c.inverse=function(a){var b,c,e=a.x-this.x0,f=a.y-this.y0;if(this.sphere)c=d.HALF_PI-2*Math.atan(Math.exp(-f/(this.a*this.k0)));else{var g=Math.exp(-f/(this.a*this.k0));if(c=d.phi2z(this.e,g),-9999===c)return null}return b=d.adjust_lon(this.long0+e/(this.a*this.k0)),a.x=b,a.y=c,a},c.names=["Mercator","Popular Visualisation Pseudo Mercator","Mercator_1SP","Mercator_Auxiliary_Sphere","merc"]},{"../common":4}],33:[function(a,b,c){var d=a("../common");c.init=function(){},c.forward=function(a){var b=a.x,c=a.y,e=d.adjust_lon(b-this.long0),f=this.x0+this.a*e,g=this.y0+this.a*Math.log(Math.tan(d.PI/4+c/2.5))*1.25;return a.x=f,a.y=g,a},c.inverse=function(a){a.x-=this.x0,a.y-=this.y0;var b=d.adjust_lon(this.long0+a.x/this.a),c=2.5*(Math.atan(Math.exp(.8*a.y/this.a))-d.PI/4);return a.x=b,a.y=c,a},c.names=["Miller_Cylindrical","mill"]},{"../common":4}],34:[function(a,b,c){var d=a("../common");c.init=function(){},c.forward=function(a){for(var b=a.x,c=a.y,e=d.adjust_lon(b-this.long0),f=c,g=d.PI*Math.sin(c),h=0;!0;h++){var i=-(f+Math.sin(f)-g)/(1+Math.cos(f));if(f+=i,Math.abs(i).999999999999&&(c=.999999999999),b=Math.asin(c);var e=d.adjust_lon(this.long0+a.x/(.900316316158*this.a*Math.cos(b)));e<-d.PI&&(e=-d.PI),e>d.PI&&(e=d.PI),c=(2*b+Math.sin(2*b))/d.PI,Math.abs(c)>1&&(c=1);var f=Math.asin(c);return a.x=e,a.y=f,a},c.names=["Mollweide","moll"]},{"../common":4}],35:[function(a,b,c){var d=a("../common");c.iterations=1,c.init=function(){this.A=[],this.A[1]=.6399175073,this.A[2]=-.1358797613,this.A[3]=.063294409,this.A[4]=-.02526853,this.A[5]=.0117879,this.A[6]=-.0055161,this.A[7]=.0026906,this.A[8]=-.001333,this.A[9]=67e-5,this.A[10]=-34e-5,this.B_re=[],this.B_im=[],this.B_re[1]=.7557853228,this.B_im[1]=0,this.B_re[2]=.249204646,this.B_im[2]=.003371507,this.B_re[3]=-.001541739,this.B_im[3]=.04105856,this.B_re[4]=-.10162907,this.B_im[4]=.01727609,this.B_re[5]=-.26623489,this.B_im[5]=-.36249218,this.B_re[6]=-.6870983,this.B_im[6]=-1.1651967,this.C_re=[],this.C_im=[],this.C_re[1]=1.3231270439,this.C_im[1]=0,this.C_re[2]=-.577245789,this.C_im[2]=-.007809598,this.C_re[3]=.508307513,this.C_im[3]=-.112208952,this.C_re[4]=-.15094762,this.C_im[4]=.18200602,this.C_re[5]=1.01418179,this.C_im[5]=1.64497696,this.C_re[6]=1.9660549,this.C_im[6]=2.5127645,this.D=[],this.D[1]=1.5627014243,this.D[2]=.5185406398,this.D[3]=-.03333098,this.D[4]=-.1052906,this.D[5]=-.0368594,this.D[6]=.007317,this.D[7]=.0122,this.D[8]=.00394,this.D[9]=-.0013},c.forward=function(a){var b,c=a.x,e=a.y,f=e-this.lat0,g=c-this.long0,h=f/d.SEC_TO_RAD*1e-5,i=g,j=1,k=0;for(b=1;10>=b;b++)j*=h,k+=this.A[b]*j;var l,m,n=k,o=i,p=1,q=0,r=0,s=0;for(b=1;6>=b;b++)l=p*n-q*o,m=q*n+p*o,p=l,q=m,r=r+this.B_re[b]*p-this.B_im[b]*q,s=s+this.B_im[b]*p+this.B_re[b]*q;return a.x=s*this.a+this.x0,a.y=r*this.a+this.y0,a},c.inverse=function(a){var b,c,e,f=a.x,g=a.y,h=f-this.x0,i=g-this.y0,j=i/this.a,k=h/this.a,l=1,m=0,n=0,o=0;for(b=1;6>=b;b++)c=l*j-m*k,e=m*j+l*k,l=c,m=e,n=n+this.C_re[b]*l-this.C_im[b]*m,o=o+this.C_im[b]*l+this.C_re[b]*m;for(var p=0;p=b;b++)q=s*n-t*o,r=t*n+s*o,s=q,t=r,u+=(b-1)*(this.B_re[b]*s-this.B_im[b]*t),v+=(b-1)*(this.B_im[b]*s+this.B_re[b]*t);s=1,t=0;var w=this.B_re[1],x=this.B_im[1];for(b=2;6>=b;b++)q=s*n-t*o,r=t*n+s*o,s=q,t=r,w+=b*(this.B_re[b]*s-this.B_im[b]*t),x+=b*(this.B_im[b]*s+this.B_re[b]*t);var y=w*w+x*x;n=(u*w+v*x)/y,o=(v*w-u*x)/y}var z=n,A=o,B=1,C=0;for(b=1;9>=b;b++)B*=z,C+=this.D[b]*B;var D=this.lat0+C*d.SEC_TO_RAD*1e5,E=this.long0+A;return a.x=E,a.y=D,a},c.names=["New_Zealand_Map_Grid","nzmg"]},{"../common":4}],36:[function(a,b,c){var d=a("../common");c.init=function(){this.no_off=this.no_off||!1,this.no_rot=this.no_rot||!1,isNaN(this.k0)&&(this.k0=1);var a=Math.sin(this.lat0),b=Math.cos(this.lat0),c=this.e*a;this.bl=Math.sqrt(1+this.es/(1-this.es)*Math.pow(b,4)),this.al=this.a*this.bl*this.k0*Math.sqrt(1-this.es)/(1-c*c);var e=d.tsfnz(this.e,this.lat0,a),f=this.bl/b*Math.sqrt((1-this.es)/(1-c*c));1>f*f&&(f=1);var g,h;if(isNaN(this.longc)){var i=d.tsfnz(this.e,this.lat1,Math.sin(this.lat1)),j=d.tsfnz(this.e,this.lat2,Math.sin(this.lat2));this.el=this.lat0>=0?(f+Math.sqrt(f*f-1))*Math.pow(e,this.bl):(f-Math.sqrt(f*f-1))*Math.pow(e,this.bl);var k=Math.pow(i,this.bl),l=Math.pow(j,this.bl);g=this.el/k,h=.5*(g-1/g);var m=(this.el*this.el-l*k)/(this.el*this.el+l*k),n=(l-k)/(l+k),o=d.adjust_lon(this.long1-this.long2);this.long0=.5*(this.long1+this.long2)-Math.atan(m*Math.tan(.5*this.bl*o)/n)/this.bl,this.long0=d.adjust_lon(this.long0);var p=d.adjust_lon(this.long1-this.long0);this.gamma0=Math.atan(Math.sin(this.bl*p)/h),this.alpha=Math.asin(f*Math.sin(this.gamma0))}else g=this.lat0>=0?f+Math.sqrt(f*f-1):f-Math.sqrt(f*f-1),this.el=g*Math.pow(e,this.bl),h=.5*(g-1/g),this.gamma0=Math.asin(Math.sin(this.alpha)/f),this.long0=this.longc-Math.asin(h*Math.tan(this.gamma0))/this.bl;this.uc=this.no_off?0:this.lat0>=0?this.al/this.bl*Math.atan2(Math.sqrt(f*f-1),Math.cos(this.alpha)):-1*this.al/this.bl*Math.atan2(Math.sqrt(f*f-1),Math.cos(this.alpha))},c.forward=function(a){var b,c,e,f=a.x,g=a.y,h=d.adjust_lon(f-this.long0);if(Math.abs(Math.abs(g)-d.HALF_PI)<=d.EPSLN)e=g>0?-1:1,c=this.al/this.bl*Math.log(Math.tan(d.FORTPI+e*this.gamma0*.5)),b=-1*e*d.HALF_PI*this.al/this.bl;else{var i=d.tsfnz(this.e,g,Math.sin(g)),j=this.el/Math.pow(i,this.bl),k=.5*(j-1/j),l=.5*(j+1/j),m=Math.sin(this.bl*h),n=(k*Math.sin(this.gamma0)-m*Math.cos(this.gamma0))/l;c=Math.abs(Math.abs(n)-1)<=d.EPSLN?Number.POSITIVE_INFINITY:.5*this.al*Math.log((1-n)/(1+n))/this.bl,b=Math.abs(Math.cos(this.bl*h))<=d.EPSLN?this.al*this.bl*h:this.al*Math.atan2(k*Math.cos(this.gamma0)+m*Math.sin(this.gamma0),Math.cos(this.bl*h))/this.bl}return this.no_rot?(a.x=this.x0+b,a.y=this.y0+c):(b-=this.uc,a.x=this.x0+c*Math.cos(this.alpha)+b*Math.sin(this.alpha),a.y=this.y0+b*Math.cos(this.alpha)-c*Math.sin(this.alpha)),a},c.inverse=function(a){var b,c;this.no_rot?(c=a.y-this.y0,b=a.x-this.x0):(c=(a.x-this.x0)*Math.cos(this.alpha)-(a.y-this.y0)*Math.sin(this.alpha),b=(a.y-this.y0)*Math.cos(this.alpha)+(a.x-this.x0)*Math.sin(this.alpha),b+=this.uc);var e=Math.exp(-1*this.bl*c/this.al),f=.5*(e-1/e),g=.5*(e+1/e),h=Math.sin(this.bl*b/this.al),i=(h*Math.cos(this.gamma0)+f*Math.sin(this.gamma0))/g,j=Math.pow(this.el/Math.sqrt((1+i)/(1-i)),1/this.bl);return Math.abs(i-1)1e-7;){if(++l>20)return;i=1/this.alpha*(Math.log(Math.tan(Math.PI/4+f/2))-this.K)+this.e*Math.log(Math.tan(Math.PI/4+Math.asin(this.e*Math.sin(j))/2)),k=j,j=2*Math.atan(Math.exp(i))-Math.PI/2}return a.x=h,a.y=j,a},c.names=["somerc"]},{}],40:[function(a,b,c){var d=a("../common");c.ssfn_=function(a,b,c){return b*=c,Math.tan(.5*(d.HALF_PI+a))*Math.pow((1-b)/(1+b),.5*c)},c.init=function(){this.coslat0=Math.cos(this.lat0),this.sinlat0=Math.sin(this.lat0),this.sphere?1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=d.EPSLN&&(this.k0=.5*(1+d.sign(this.lat0)*Math.sin(this.lat_ts))):(Math.abs(this.coslat0)<=d.EPSLN&&(this.con=this.lat0>0?1:-1),this.cons=Math.sqrt(Math.pow(1+this.e,1+this.e)*Math.pow(1-this.e,1-this.e)),1===this.k0&&!isNaN(this.lat_ts)&&Math.abs(this.coslat0)<=d.EPSLN&&(this.k0=.5*this.cons*d.msfnz(this.e,Math.sin(this.lat_ts),Math.cos(this.lat_ts))/d.tsfnz(this.e,this.con*this.lat_ts,this.con*Math.sin(this.lat_ts))),this.ms1=d.msfnz(this.e,this.sinlat0,this.coslat0),this.X0=2*Math.atan(this.ssfn_(this.lat0,this.sinlat0,this.e))-d.HALF_PI,this.cosX0=Math.cos(this.X0),this.sinX0=Math.sin(this.X0))},c.forward=function(a){var b,c,e,f,g,h,i=a.x,j=a.y,k=Math.sin(j),l=Math.cos(j),m=d.adjust_lon(i-this.long0);return Math.abs(Math.abs(i-this.long0)-d.PI)<=d.EPSLN&&Math.abs(j+this.lat0)<=d.EPSLN?(a.x=0/0,a.y=0/0,a):this.sphere?(b=2*this.k0/(1+this.sinlat0*k+this.coslat0*l*Math.cos(m)),a.x=this.a*b*l*Math.sin(m)+this.x0,a.y=this.a*b*(this.coslat0*k-this.sinlat0*l*Math.cos(m))+this.y0,a):(c=2*Math.atan(this.ssfn_(j,k,this.e))-d.HALF_PI,f=Math.cos(c),e=Math.sin(c),Math.abs(this.coslat0)<=d.EPSLN?(g=d.tsfnz(this.e,j*this.con,this.con*k),h=2*this.a*this.k0*g/this.cons,a.x=this.x0+h*Math.sin(i-this.long0),a.y=this.y0-this.con*h*Math.cos(i-this.long0),a):(Math.abs(this.sinlat0)0?d.adjust_lon(this.long0+Math.atan2(a.x,-1*a.y)):d.adjust_lon(this.long0+Math.atan2(a.x,a.y)):d.adjust_lon(this.long0+Math.atan2(a.x*Math.sin(i),h*this.coslat0*Math.cos(i)-a.y*this.sinlat0*Math.sin(i))),a.x=b,a.y=c,a)}if(Math.abs(this.coslat0)<=d.EPSLN){if(h<=d.EPSLN)return c=this.lat0,b=this.long0,a.x=b,a.y=c,a;a.x*=this.con,a.y*=this.con,e=h*this.cons/(2*this.a*this.k0),c=this.con*d.phi2z(this.e,e),b=this.con*d.adjust_lon(this.con*this.long0+Math.atan2(a.x,-1*a.y))}else f=2*Math.atan(h*this.cosX0/(2*this.a*this.k0*this.ms1)),b=this.long0,h<=d.EPSLN?g=this.X0:(g=Math.asin(Math.cos(f)*this.sinX0+a.y*Math.sin(f)*this.cosX0/h),b=d.adjust_lon(this.long0+Math.atan2(a.x*Math.sin(f),h*this.cosX0*Math.cos(f)-a.y*this.sinX0*Math.sin(f)))),c=-1*d.phi2z(this.e,Math.tan(.5*(d.HALF_PI+g))); +return a.x=b,a.y=c,a},c.names=["stere"]},{"../common":4}],41:[function(a,b,c){var d=a("../common"),e=a("./gauss");c.init=function(){e.init.apply(this),this.rc&&(this.sinc0=Math.sin(this.phic0),this.cosc0=Math.cos(this.phic0),this.R2=2*this.rc,this.title||(this.title="Oblique Stereographic Alternative"))},c.forward=function(a){var b,c,f,g;return a.x=d.adjust_lon(a.x-this.long0),e.forward.apply(this,[a]),b=Math.sin(a.y),c=Math.cos(a.y),f=Math.cos(a.x),g=this.k0*this.R2/(1+this.sinc0*b+this.cosc0*c*f),a.x=g*c*Math.sin(a.x),a.y=g*(this.cosc0*b-this.sinc0*c*f),a.x=this.a*a.x+this.x0,a.y=this.a*a.y+this.y0,a},c.inverse=function(a){var b,c,f,g,h;if(a.x=(a.x-this.x0)/this.a,a.y=(a.y-this.y0)/this.a,a.x/=this.k0,a.y/=this.k0,h=Math.sqrt(a.x*a.x+a.y*a.y)){var i=2*Math.atan2(h,this.R2);b=Math.sin(i),c=Math.cos(i),g=Math.asin(c*this.sinc0+a.y*b*this.cosc0/h),f=Math.atan2(a.x*b,h*this.cosc0*c-a.y*this.sinc0*b)}else g=this.phic0,f=0;return a.x=f,a.y=g,e.inverse.apply(this,[a]),a.x=d.adjust_lon(a.x+this.long0),a},c.names=["Stereographic_North_Pole","Oblique_Stereographic","Polar_Stereographic","sterea","Oblique Stereographic Alternative"]},{"../common":4,"./gauss":25}],42:[function(a,b,c){var d=a("../common");c.init=function(){this.e0=d.e0fn(this.es),this.e1=d.e1fn(this.es),this.e2=d.e2fn(this.es),this.e3=d.e3fn(this.es),this.ml0=this.a*d.mlfn(this.e0,this.e1,this.e2,this.e3,this.lat0)},c.forward=function(a){var b,c,e,f=a.x,g=a.y,h=d.adjust_lon(f-this.long0),i=Math.sin(g),j=Math.cos(g);if(this.sphere){var k=j*Math.sin(h);if(Math.abs(Math.abs(k)-1)<1e-10)return 93;c=.5*this.a*this.k0*Math.log((1+k)/(1-k)),b=Math.acos(j*Math.cos(h)/Math.sqrt(1-k*k)),0>g&&(b=-b),e=this.a*this.k0*(b-this.lat0)}else{var l=j*h,m=Math.pow(l,2),n=this.ep2*Math.pow(j,2),o=Math.tan(g),p=Math.pow(o,2);b=1-this.es*Math.pow(i,2);var q=this.a/Math.sqrt(b),r=this.a*d.mlfn(this.e0,this.e1,this.e2,this.e3,g);c=this.k0*q*l*(1+m/6*(1-p+n+m/20*(5-18*p+Math.pow(p,2)+72*n-58*this.ep2)))+this.x0,e=this.k0*(r-this.ml0+q*o*m*(.5+m/24*(5-p+9*n+4*Math.pow(n,2)+m/30*(61-58*p+Math.pow(p,2)+600*n-330*this.ep2))))+this.y0}return a.x=c,a.y=e,a},c.inverse=function(a){var b,c,e,f,g,h,i=6;if(this.sphere){var j=Math.exp(a.x/(this.a*this.k0)),k=.5*(j-1/j),l=this.lat0+a.y/(this.a*this.k0),m=Math.cos(l);b=Math.sqrt((1-m*m)/(1+k*k)),g=d.asinz(b),0>l&&(g=-g),h=0===k&&0===m?this.long0:d.adjust_lon(Math.atan2(k,m)+this.long0)}else{var n=a.x-this.x0,o=a.y-this.y0;for(b=(this.ml0+o/this.k0)/this.a,c=b,f=0;!0&&(e=(b+this.e1*Math.sin(2*c)-this.e2*Math.sin(4*c)+this.e3*Math.sin(6*c))/this.e0-c,c+=e,!(Math.abs(e)<=d.EPSLN));f++)if(f>=i)return 95;if(Math.abs(c)=0?this.y0+d.PI*this.R*Math.tan(.5*h):this.y0+d.PI*this.R*-Math.tan(.5*h));var i=.5*Math.abs(d.PI/g-g/d.PI),j=i*i,k=Math.sin(h),l=Math.cos(h),m=l/(k+l-1),n=m*m,o=m*(2/k-1),p=o*o,q=d.PI*this.R*(i*(m-p)+Math.sqrt(j*(m-p)*(m-p)-(p+j)*(n-p)))/(p+j);0>g&&(q=-q),b=this.x0+q;var r=j+m;return q=d.PI*this.R*(o*r-i*Math.sqrt((p+j)*(j+1)-r*r))/(p+j),c=f>=0?this.y0+q:this.y0-q,a.x=b,a.y=c,a},c.inverse=function(a){var b,c,e,f,g,h,i,j,k,l,m,n,o;return a.x-=this.x0,a.y-=this.y0,m=d.PI*this.R,e=a.x/m,f=a.y/m,g=e*e+f*f,h=-Math.abs(f)*(1+g),i=h-2*f*f+e*e,j=-2*h+1+2*f*f+g*g,o=f*f/j+(2*i*i*i/j/j/j-9*h*i/j/j)/27,k=(h-i*i/3/j)/j,l=2*Math.sqrt(-k/3),m=3*o/k/l,Math.abs(m)>1&&(m=m>=0?1:-1),n=Math.acos(m)/3,c=a.y>=0?(-l*Math.cos(n+d.PI/3)-i/3/j)*d.PI:-(-l*Math.cos(n+d.PI/3)-i/3/j)*d.PI,b=Math.abs(e)-1?(b[e]={name:a[0].toLowerCase(),convert:a[1]},3===a.length&&(b[e].auth=a[2])):"SPHEROID"===e?(b[e]={name:a[0],a:a[1],rf:a[2]},4===a.length&&(b[e].auth=a[3])):["GEOGCS","GEOCCS","DATUM","VERT_CS","COMPD_CS","LOCAL_CS","FITTED_CS","LOCAL_DATUM"].indexOf(e)>-1?(a[0]=["name",a[0]],c(b,e,a)):a.every(function(a){return Array.isArray(a)})?c(b,e,a):d(a,b[e])):b[e]=!0,void 0):(b[a]=!0,void 0)}function e(a,b){var c=b[0],d=b[1];!(c in a)&&d in a&&(a[c]=a[d],3===b.length&&(a[c]=b[2](a[c])))}function f(a){return a*h.D2R}function g(a){function b(b){var c=a.to_meter||1;return parseFloat(b,10)*c}"GEOGCS"===a.type?a.projName="longlat":"LOCAL_CS"===a.type?(a.projName="identity",a.local=!0):a.projName="object"==typeof a.PROJECTION?Object.keys(a.PROJECTION)[0]:a.PROJECTION,a.UNIT&&(a.units=a.UNIT.name.toLowerCase(),"metre"===a.units&&(a.units="meter"),a.UNIT.convert&&(a.to_meter=parseFloat(a.UNIT.convert,10))),a.GEOGCS&&(a.datumCode=a.GEOGCS.DATUM?a.GEOGCS.DATUM.name.toLowerCase():a.GEOGCS.name.toLowerCase(),"d_"===a.datumCode.slice(0,2)&&(a.datumCode=a.datumCode.slice(2)),("new_zealand_geodetic_datum_1949"===a.datumCode||"new_zealand_1949"===a.datumCode)&&(a.datumCode="nzgd49"),"wgs_1984"===a.datumCode&&("Mercator_Auxiliary_Sphere"===a.PROJECTION&&(a.sphere=!0),a.datumCode="wgs84"),"_ferro"===a.datumCode.slice(-6)&&(a.datumCode=a.datumCode.slice(0,-6)),"_jakarta"===a.datumCode.slice(-8)&&(a.datumCode=a.datumCode.slice(0,-8)),a.GEOGCS.DATUM&&a.GEOGCS.DATUM.SPHEROID&&(a.ellps=a.GEOGCS.DATUM.SPHEROID.name.replace("_19","").replace(/[Cc]larke\_18/,"clrk"),"international"===a.ellps.toLowerCase().slice(0,13)&&(a.ellps="intl"),a.a=a.GEOGCS.DATUM.SPHEROID.a,a.rf=parseFloat(a.GEOGCS.DATUM.SPHEROID.rf,10))),a.b&&!isFinite(a.b)&&(a.b=a.a);var c=function(b){return e(a,b)},d=[["standard_parallel_1","Standard_Parallel_1"],["standard_parallel_2","Standard_Parallel_2"],["false_easting","False_Easting"],["false_northing","False_Northing"],["central_meridian","Central_Meridian"],["latitude_of_origin","Latitude_Of_Origin"],["scale_factor","Scale_Factor"],["k0","scale_factor"],["latitude_of_center","Latitude_of_center"],["lat0","latitude_of_center",f],["longitude_of_center","Longitude_Of_Center"],["longc","longitude_of_center",f],["x0","false_easting",b],["y0","false_northing",b],["long0","central_meridian",f],["lat0","latitude_of_origin",f],["lat0","standard_parallel_1",f],["lat1","standard_parallel_1",f],["lat2","standard_parallel_2",f],["alpha","azimuth",f],["srsCode","name"]];d.forEach(c),a.long0||!a.longc||"Albers_Conic_Equal_Area"!==a.PROJECTION&&"Lambert_Azimuthal_Equal_Area"!==a.PROJECTION||(a.long0=a.longc)}var h=a("./common"),i=a("./extend");b.exports=function(a,b){var c=JSON.parse((","+a).replace(/\s*\,\s*([A-Z_0-9]+?)(\[)/g,',["$1",').slice(1).replace(/\s*\,\s*([A-Z_0-9]+?)\]/g,',"$1"]')),e=c.shift(),f=c.shift();c.unshift(["name",f]),c.unshift(["type",e]),c.unshift("output");var h={};return d(c,h),g(h.output),i(b,h.output)}},{"./common":4,"./extend":14}]},{},[16])(16)});