3 lines
56 KiB
JavaScript
3 lines
56 KiB
JavaScript
// https://d3js.org/d3-geo-projection/ Version 2.1.2. Copyright 2017 Mike Bostock.
|
|
!function(n,r){"object"==typeof exports&&"undefined"!=typeof module?r(exports,require("d3-geo"),require("d3-array")):"function"==typeof define&&define.amd?define(["exports","d3-geo","d3-array"],r):r(n.d3=n.d3||{},n.d3,n.d3)}(this,function(n,r,e){"use strict";function t(n){return n?n/Math.sin(n):1}function o(n){return n>1?Zr:n<-1?-Zr:Math.asin(n)}function i(n){return n>1?0:n<-1?Yr:Math.acos(n)}function u(n){return n>0?Math.sqrt(n):0}function a(n){return((n=Wr(2*n))-1)/(n+1)}function c(n){return(Wr(n)-Wr(-n))/2}function f(n){return(Wr(n)+Wr(-n))/2}function l(n){return Dr(n+u(n*n+1))}function g(n){return Dr(n+u(n*n-1))}function v(n){function r(n,r){var e=Ir(n),o=Ir(r),i=Or(r),u=o*e,a=-((1-u?Dr((1+u)/2)/(1-u):-.5)+t/(1+u));return[a*o*Or(n),a*i]}var e=Ur(n/2),t=2*Dr(Ir(n/2))/(e*e);return r.invert=function(r,e){var i,a=u(r*r+e*e),c=-n/2,f=50;if(!a)return[0,0];do{var l=c/2,g=Ir(l),v=Or(l),s=Ur(l),p=Dr(1/g);c-=i=(2/s*p-t*s-a)/(-p/(v*v)+1-t/(2*g*g))}while(qr(i)>Jr&&--f>0);var h=Or(c);return[Hr(r*h,a*Ir(c)),o(e*h/a)]},r}function s(n,r){var e=Ir(r),o=t(i(e*Ir(n/=2)));return[2*e*Or(n)*o,Or(r)*o]}function p(n){function r(n,r){var a=Ir(r),c=Ir(n/=2);return[(1+a)*Or(n),(o*r>-Hr(c,i)-.001?0:10*-o)+u+Or(r)*t-(1+a)*e*c]}var e=Or(n),t=Ir(n),o=n>=0?1:-1,i=Ur(o*n),u=(1+e-t)/2;return r.invert=function(n,r){var a=0,c=0,f=50;do{var l=Ir(a),g=Or(a),v=Ir(c),s=Or(c),p=1+v,h=p*g-n,d=u+s*t-p*e*l-r,w=p*l/2,y=-g*s,P=e*p*g/2,m=t*v+e*l*s,R=y*P-m*w,b=(d*y-h*m)/R/2,j=(h*P-d*w)/R;a-=b,c-=j}while((qr(b)>Jr||qr(j)>Jr)&&--f>0);return o*c>-Hr(Ir(a),i)-.001?[2*a,c]:null},r}function h(n,r){var e=Ur(r/2),t=u(1-e*e),o=1+t*Ir(n/=2),i=Or(n)*t/o,a=e/o,c=i*i,f=a*a;return[4/3*i*(3+c-3*f),4/3*a*(3+3*c-f)]}function d(n,r){var e=qr(r);return e<$r?[n,Dr(Ur($r+r/2))]:[n*Ir(e)*(2*re-1/Or(e)),Kr(r)*(2*re*(e-$r)-Dr(Ur(e/2)))]}function w(n){function e(n,e){var i=r.geoAzimuthalEquidistantRaw(n,e);if(qr(n)>Zr){var a=Hr(i[1],i[0]),c=u(i[0]*i[0]+i[1]*i[1]),f=t*_r((a-Zr)/t)+Zr,l=Hr(Or(a-=f),2-Ir(a));a=f+o(Yr/c*Or(l))-l,i[0]=c*Ir(a),i[1]=c*Or(a)}return i}var t=2*Yr/n;return e.invert=function(n,e){var o=u(n*n+e*e);if(o>Zr){var a=Hr(e,n),c=t*_r((a-Zr)/t)+Zr,f=a>c?-1:1,l=o*Ir(c-a),g=1/Ur(f*i((l-Yr)/u(Yr*(Yr-2*l)+o*o)));a=c+2*Br((g+f*u(g*g-3))/3),n=o*Ir(a),e=o*Or(a)}return r.geoAzimuthalEquidistantRaw.invert(n,e)},e}function y(n,r){var e,t=n*Or(r),o=30;do{r-=e=(r+Or(r)-t)/(1+Ir(r))}while(qr(e)>Jr&&--o>0);return r/2}function P(n,r,e){function t(t,o){return[n*t*Ir(o=y(e,o)),r*Or(o)]}return t.invert=function(t,i){return i=o(i/r),[t/(n*Ir(i)),o((2*i+Or(2*i))/e)]},t}function m(n,r){var e=y(Yr,r);return[de*n/(1/Ir(r)+we/Ir(e)),(r+re*Or(e))/de]}function R(n,r){return[n*Ir(r),r]}function b(n){function r(r,t){var o=e+n-t,i=o?r*Ir(t)/o:o;return[o*Or(i),e-o*Ir(i)]}if(!n)return R;var e=1/Ur(n);return r.invert=function(r,t){var o=u(r*r+(t=e-t)*t),i=e+n-o;return[o/Ir(i)*Hr(r,t),i]},r}function j(n){function r(r,e){var t=Zr-e,o=t?r*n*Or(t)/t:t;return[t*Or(o)/n,Zr-t*Ir(o)]}return r.invert=function(r,e){var t=r*n,o=Zr-e,i=u(t*t+o*o),a=Hr(t,o);return[(i?i/Or(i):1)*a/n,Zr-i]},r}function M(n,r,e,t,a,c){var f,l=Ir(c);if(qr(n)>1||qr(c)>1)f=i(e*a+r*t*l);else{var g=Or(n/2),v=Or(c/2);f=2*o(u(g*g+r*t*v*v))}return qr(f)>Jr?[f,Hr(t*Or(c),r*a-e*t*l)]:[0,0]}function E(n,r,e){return i((n*n+r*r-e*e)/(2*n*r))}function A(n){return n-2*Yr*Tr((n+Yr)/(2*Yr))}function S(n,r,e){function t(n,r){var e,t=Or(r),o=Ir(r),u=new Array(3);for(e=0;e<3;++e){var a=i[e];if(u[e]=M(r-a[1],a[3],a[2],o,t,n-a[0]),!u[e][0])return a.point;u[e][1]=A(u[e][1]-a.v[1])}var c=g.slice();for(e=0;e<3;++e){var v=2==e?0:e+1,s=E(i[e].v[0],u[e][0],u[v][0]);u[e][1]<0&&(s=-s),e?1==e?(s=f-s,c[0]-=u[e][0]*Ir(s),c[1]-=u[e][0]*Or(s)):(s=l-s,c[0]+=u[e][0]*Ir(s),c[1]+=u[e][0]*Or(s)):(c[0]+=u[e][0]*Ir(s),c[1]-=u[e][0]*Or(s))}return c[0]/=3,c[1]/=3,c}for(var o,i=[[n[0],n[1],Or(n[1]),Ir(n[1])],[r[0],r[1],Or(r[1]),Ir(r[1])],[e[0],e[1],Or(e[1]),Ir(e[1])]],u=i[2],a=0;a<3;++a,u=o)o=i[a],u.v=M(o[1]-u[1],u[3],u[2],o[3],o[2],o[0]-u[0]),u.point=[0,0];var c=E(i[0].v[0],i[2].v[0],i[1].v[0]),f=E(i[0].v[0],i[1].v[0],i[2].v[0]),l=Yr-c;i[2].point[1]=0,i[0].point[0]=-(i[1].point[0]=i[0].v[0]/2);var g=[i[2].point[0]=i[0].point[0]+i[2].v[0]*Ir(c),2*(i[0].point[1]=i[1].point[1]=i[2].v[0]*Or(c))];return t}function k(n){return n[0]*=ie,n[1]*=ie,n}function x(){return G([0,22],[45,22],[22.5,-22]).scale(380).center([22.5,2])}function G(n,e,t){var o=r.geoCentroid({type:"MultiPoint",coordinates:[n,e,t]}),i=[-o[0],-o[1]],u=r.geoRotation(i),a=r.geoProjection(S(k(u(n)),k(u(e)),k(u(t)))).rotate(i),c=a.center;return delete a.rotate,a.center=function(n){return arguments.length?c(u(n)):u.invert(c())},a.clipAngle(90)}function C(n,r){var e=u(1-Or(r));return[2/ee*n*e,ee*(1-e)]}function z(n){function r(n,r){return[n,(n?n/Or(n):1)*(Or(r)*Ir(n)-e*Ir(r))]}var e=Ur(n);return r.invert=e?function(n,r){n&&(r*=Or(n)/n);var t=Ir(n);return[n,2*Hr(u(t*t+e*e-r*r)-t,e-r)]}:function(n,r){return[n,o(n?r*Ur(n)/n:r)]},r}function F(n,r){return[Se*n*(2*Ir(2*r/3)-1)/ee,Se*ee*Or(r/3)]}function L(n){function r(n,r){return[n*e,Or(r)/e]}var e=Ir(n);return r.invert=function(n,r){return[n/e,o(r*e)]},r}function q(n){function r(n,r){return[n*e,(1+e)*Ur(r/2)]}var e=Ir(n);return r.invert=function(n,r){return[n/e,2*Br(r/(1+e))]},r}function B(n,r){var e=u(8/(3*Yr));return[e*n*(1-qr(r)/Yr),e*r]}function H(n,r){var e=u(4-3*Or(qr(r)));return[2/u(6*Yr)*n*e,Kr(r)*u(2*Yr/3)*(2-e)]}function I(n,r){var e=u(Yr*(4+Yr));return[2/e*n*(1+u(1-4*r*r/(Yr*Yr))),4/e*r]}function W(n,r){var e=(2+Zr)*Or(r);r/=2;for(var t=0,o=1/0;t<10&&qr(o)>Jr;t++){var i=Ir(r);r-=o=(r+Or(r)*(i+2)-e)/(2*i*(1+i))}return[2/u(Yr*(4+Yr))*n*(1+Ir(r)),2*u(Yr/(4+Yr))*Or(r)]}function T(n,r){return[n*(1+Ir(r))/u(2+Yr),2*r/u(2+Yr)]}function D(n,r){for(var e=(1+Zr)*Or(r),t=0,o=1/0;t<10&&qr(o)>Jr;t++)r-=o=(r+Or(r)-e)/(1+Ir(r));return e=u(2+Yr),[n*(1+Ir(r))/e,2*r/e]}function Q(n,r){var e=Or(n/=2),t=Ir(n),o=u(Ir(r)),i=Ir(r/=2),a=Or(r)/(i+re*t*o),c=u(2/(1+a*a)),f=u((re*i+(t+e)*o)/(re*i+(t-e)*o));return[He*(c*(f-1/f)-2*Dr(f)),He*(c*a*(f+1/f)-2*Br(a))]}function V(n,r){var e=Ur(r/2);return[n*We*u(1-e*e),(1+We)*e]}function N(n,r){var e=r/2,t=Ir(e);return[2*n/ee*Ir(r)*t*t,ee*Ur(e)]}function _(n){return[n[0]/2,o(Ur(n[1]/2*ie))*oe]}function K(n){return[2*n[0],2*Br(Or(n[1]*ie))*oe]}function O(n,e){function t(e,t){var a=r.geoAzimuthalEquidistantRaw(e,t),c=a[0],f=a[1],l=c*c+f*f;if(l>i){var g=u(l),v=Hr(f,c),s=o*_r(v/o),p=v-s,h=n*Ir(p),d=(n*Or(p)-p*Or(h))/(Zr-h),w=U(p,d),y=(Yr-n)/J(w,h,Yr);c=g;var P,m=50;do{c-=P=(n+J(w,h,c)*y-g)/(w(c)*y)}while(qr(P)>Jr&&--m>0);f=p*Or(c),c<Zr&&(f-=d*(c-Zr));var R=Or(s),b=Ir(s);a[0]=c*b-f*R,a[1]=c*R+f*b}return a}var o=2*Yr/e,i=n*n;return t.invert=function(e,t){var a=e*e+t*t;if(a>i){var c=u(a),f=Hr(t,e),l=o*_r(f/o),g=f-l;e=c*Ir(g),t=c*Or(g);for(var v=e-Zr,s=Or(e),p=t/s,h=e<Zr?1/0:0,d=10;;){var w=n*Or(p),y=n*Ir(p),P=Or(y),m=Zr-y,R=(w-p*P)/m,b=U(p,R);if(qr(h)<Xr||!--d)break;p-=h=(p*s-R*v-t)/(s-2*v*(m*(y+p*w*Ir(y)-P)-w*(w-p*P))/(m*m))}c=n+J(b,y,e)*(Yr-n)/J(b,y,Yr),f=l+p,e=c*Ir(f),t=c*Or(f)}return r.geoAzimuthalEquidistantRaw.invert(e,t)},t}function U(n,r){return function(e){var t=n*Ir(e);return e<Zr&&(t-=r),u(1+t*t)}}function J(n,r,e){for(var t=(e-r)/50,o=n(r)+n(e),i=1,u=r;i<50;++i)o+=2*n(u+=t);return.5*o*t}function X(n,r){var e=n*n,t=r*r;return[n*(1-.162388*t)*(.87-952426e-9*e*e),r*(1+t/12)]}function Y(n,r){var e=Kr(n),t=Kr(r),i=Ir(r),u=Ir(n)*i,a=Or(n)*i,c=Or(t*r);n=qr(Hr(a,c)),r=o(u),qr(n-Zr)>Jr&&(n%=Zr);var f=Z(n>Yr/4?Zr-n:n,r);return n>Yr/4&&(c=f[0],f[0]=-f[1],f[1]=-c),f[0]*=e,f[1]*=-t,f}function Z(n,r){if(r===Zr)return[0,0];var e,t,i=Or(r),a=i*i,c=a*a,f=1+c,l=1+3*c,g=1-c,v=o(1/u(f)),s=g+a*f*v,p=(1-i)/s,h=u(p),d=p*f,w=u(d),y=h*g;if(0===n)return[0,-(y+a*w)];var P,m=Ir(r),R=1/m,b=2*i*m,j=(-3*a+v*l)*b,M=(-s*m-(1-i)*j)/(s*s),E=.5*M/h,A=g*E-2*a*h*b,S=a*f*M+p*l*b,k=-R*b,x=-R*S,G=-2*R*A,C=4*n/Yr;if(n>.222*Yr||r<Yr/4&&n>.175*Yr){if(e=(y+a*u(d*(1+c)-y*y))/(1+c),n>Yr/4)return[e,e];var z=e,F=.5*e;e=.5*(F+z),t=50;do{var L=u(d-e*e),q=e*(G+k*L)+x*o(e/w)-C;if(!q)break;q<0?F=e:z=e,e=.5*(F+z)}while(qr(z-F)>Jr&&--t>0)}else{e=Jr,t=25;do{var B=e*e,H=u(d-B),I=G+k*H,W=e*I+x*o(e/w)-C,T=I+(x-k*B)/H;e-=P=H?W/T:0}while(qr(P)>Jr&&--t>0)}return[e,-y-a*u(d-e*e)]}function $(n,r){for(var e=0,t=1,i=.5,a=50;;){var c=i*i,f=u(i),l=o(1/u(1+c)),g=1-c+i*(1+c)*l,v=(1-f)/g,s=u(v),p=v*(1+c),h=s*(1-c),d=p-n*n,w=u(d),y=r+h+i*w;if(qr(t-e)<Xr||0==--a||0===y)break;y>0?e=i:t=i,i=.5*(e+t)}if(!a)return null;var P=o(f),m=Ir(P),R=1/m,b=2*f*m,j=(-3*i+l*(1+3*c))*b,M=(-g*m-(1-f)*j)/(g*g);return[Yr/4*(n*(-2*R*(.5*M/s*(1-c)-2*i*s*b)+-R*b*w)+-R*(i*(1+c)*M+v*(1+3*c)*b)*o(n/u(p))),P]}function nn(n,r,e){var t,o,i;return n?(t=rn(n,e),r?(o=rn(r,1-e),i=o[1]*o[1]+e*t[0]*t[0]*o[0]*o[0],[[t[0]*o[2]/i,t[1]*t[2]*o[0]*o[1]/i],[t[1]*o[1]/i,-t[0]*t[2]*o[0]*o[2]/i],[t[2]*o[1]*o[2]/i,-e*t[0]*t[1]*o[0]/i]]):[[t[0],0],[t[1],0],[t[2],0]]):(o=rn(r,1-e),[[0,o[0]/o[1]],[1/o[1],0],[o[2]/o[1],0]])}function rn(n,r){var e,t,i,l,g;if(r<Jr)return l=Or(n),t=Ir(n),e=r*(n-l*t)/4,[l-e*t,t+e*l,1-r*l*l/2,n-e];if(r>=1-Jr)return e=(1-r)/4,t=f(n),l=a(n),i=1/t,g=t*c(n),[l+e*(g-n)/(t*t),i-e*l*i*(g-n),i+e*l*i*(g+n),2*Br(Wr(n))-Zr+e*(g-n)/t];var v=[1,0,0,0,0,0,0,0,0],s=[u(r),0,0,0,0,0,0,0,0],p=0;for(t=u(1-r),g=1;qr(s[p]/v[p])>Jr&&p<8;)e=v[p++],s[p]=(e-t)/2,v[p]=(e+t)/2,t=u(e*t),g*=2;i=g*v[p]*n;do{l=s[p]*Or(t=i)/v[p],i=(o(l)+i)/2}while(--p);return[Or(i),l=Ir(i),l/Ir(i-t),i]}function en(n,r,e){var t=qr(n),o=qr(r),i=c(o);if(t){var a=1/Or(t),f=1/(Ur(t)*Ur(t)),l=-(f+e*(i*i*a*a)-1+e),g=(e-1)*f,v=(-l+u(l*l-4*g))/2;return[tn(Br(1/u(v)),e)*Kr(n),tn(Br(u((v/f-1)/e)),1-e)*Kr(r)]}return[0,tn(Br(i),1-e)*Kr(r)]}function tn(n,r){if(!r)return n;if(1===r)return Dr(Ur(n/2+$r));for(var e=1,t=u(1-r),o=u(r),i=0;qr(o)>Jr;i++){if(n%Yr){var a=Br(t*Ur(n)/e);a<0&&(a+=Yr),n+=a+~~(n/Yr)*Yr}else n+=n;o=(e+t)/2,t=u(e*t),o=((e=o)-t)/2}return n/(Nr(2,i)*e)}function on(n,r){var e=(re-1)/(re+1),t=u(1-e*e),o=tn(Zr,t*t),i=Dr(Ur(Yr/4+qr(r)/2)),a=Wr(-1*i)/u(e),c=un(a*Ir(-1*n),a*Or(-1*n)),f=en(c[0],c[1],t*t);return[-f[1],(r>=0?1:-1)*(.5*o-f[0])]}function un(n,r){var e=n*n,t=r+1,o=1-e-r*r;return[.5*((n>=0?Zr:-Zr)-Hr(o,2*n)),-.25*Dr(o*o+4*e)+.5*Dr(t*t+e)]}function an(n,r){var e=r[0]*r[0]+r[1]*r[1];return[(n[0]*r[0]+n[1]*r[1])/e,(n[1]*r[0]-n[0]*r[1])/e]}function cn(n,e){function t(t,o){var i=r.geoAzimuthalEqualAreaRaw(t/e,o);return i[0]*=n,i}return arguments.length<2&&(e=n),1===e?r.geoAzimuthalEqualAreaRaw:e===1/0?fn:(t.invert=function(t,o){var i=r.geoAzimuthalEqualAreaRaw.invert(t/n,o);return i[0]*=e,i},t)}function fn(n,r){return[n*Ir(r)/Ir(r/=2),2*Or(r)]}function ln(n){function r(n,r){var u=o(n,r);n=u[0],r=u[1];var a=Or(r),c=Ir(r),f=Ir(n),l=i(e*a+t*c*f),g=Or(l),v=qr(g)>Jr?l/g:1;return[v*t*Or(n),(qr(n)>Zr?v:-v)*(e*c-t*a*f)]}var e=Or(n),t=Ir(n),o=gn(n);return o.invert=gn(-n),r.invert=function(n,r){var t=u(n*n+r*r),i=-Or(t),a=Ir(t),c=t*a,f=-r*i,l=t*e,g=u(c*c+f*f-l*l),v=Hr(c*l+f*g,f*l-c*g),s=(t>Zr?-1:1)*Hr(n*i,t*Ir(v)*a+r*Or(v)*i);return o.invert(s,v)},r}function gn(n){var r=Or(n),e=Ir(n);return function(n,t){var i=Ir(t),u=Ir(n)*i,a=Or(n)*i,c=Or(t);return[Hr(a,u*e-c*r),o(c*e+u*r)]}}function vn(n){function r(r,l){var g,v=qr(l);if(v>e){var s=Vr(n-1,Qr(0,Tr((r+Yr)/a)));r+=Yr*(n-1)/n-s*a,g=C(r,v),g[0]=g[0]*te/t-te*(n-1)/(2*n)+s*te/n,g[1]=o+4*(g[1]-i)*u/te,l<0&&(g[1]=-g[1])}else g=ut(r,l);return g[0]*=c,g[1]/=f,g}var e=it*ie,t=C(Yr,e)[0]-C(-Yr,e)[0],o=ut(0,e)[1],i=C(0,e)[1],u=ee-i,a=te/n,c=4/te,f=o+u*u*4/te;return r.invert=function(r,e){r/=c,e*=f;var l=qr(e);if(l>o){var g=Vr(n-1,Qr(0,Tr((r+Yr)/a)));r=(r+Yr*(n-1)/n-g*a)*t/te;var v=C.invert(r,.25*(l-o)*te/u+i);return v[0]-=Yr*(n-1)/n-g*a,e<0&&(v[1]=-v[1]),v}return ut.invert(r,e)},r}function sn(n){return{type:"Polygon",coordinates:[e.range(-180,180+n/2,n).map(function(n,r){return[n,1&r?90-1e-6:it]}).concat(e.range(180,-180-n/2,-n).map(function(n,r){return[n,1&r?1e-6-90:-it]}))]}}function pn(n){function r(r,o){var i,a,s=1-Or(o);if(s&&s<2){var p,h=Zr-o,d=25;do{var w=Or(h),y=Ir(h),P=c+Hr(w,t-y),m=1+v-2*t*y;h-=p=(h-g*c-t*w+m*P-.5*s*e)/(2*t*w*P)}while(qr(p)>Xr&&--d>0);i=f*u(m),a=r*P/Yr}else i=f*(n+s),a=r*c/Yr;return[i*Or(a),l-i*Ir(a)]}var e,t=1+n,a=Or(1/t),c=o(a),f=2*u(Yr/(e=Yr+4*c*t)),l=.5*f*(t+u(n*(2+n))),g=n*n,v=t*t;return r.invert=function(n,r){var a=n*n+(r-=l)*r,s=(1+v-a/(f*f))/(2*t),p=i(s),h=Or(p),d=c+Hr(h,t-s);return[o(n/u(a))*Yr/d,o(1-2*(p-g*c-t*h+(1+v-2*t*s)*d)/e)]},r}function hn(n,r){return r>-ft?(n=pe(n,r),n[1]+=lt,n):R(n,r)}function dn(n,r){return qr(r)>ft?(n=pe(n,r),n[1]-=r>0?lt:-lt,n):R(n,r)}function wn(n,r){return qr(n[0]-r[0])<Jr&&qr(n[1]-r[1])<Jr}function yn(n,r){for(var e,t,o,i=-1,u=n.length,a=n[0],c=[];++i<u;){e=n[i],t=(e[0]-a[0])/r,o=(e[1]-a[1])/r;for(var f=0;f<r;++f)c.push([a[0]+f*t,a[1]+f*o]);a=e}return c.push(e),c}function Pn(n){var r,t,o,i,u,a,c,f=[],l=n[0].length;for(c=0;c<l;++c)r=n[0][c],t=r[0][0],o=r[0][1],i=r[1][1],u=r[2][0],a=r[2][1],f.push(yn([[t+Jr,o+Jr],[t+Jr,i-Jr],[u-Jr,i-Jr],[u-Jr,a+Jr]],30));for(c=n[1].length-1;c>=0;--c)r=n[1][c],t=r[0][0],o=r[0][1],i=r[1][1],u=r[2][0],a=r[2][1],f.push(yn([[u-Jr,a-Jr],[u-Jr,i+Jr],[t+Jr,i+Jr],[t+Jr,o-Jr]],30));return{type:"Polygon",coordinates:[e.merge(f)]}}function mn(n,r){return[3/te*n*u(Yr*Yr/3-r*r),r]}function Rn(n){function r(r,e){if(qr(qr(e)-Zr)<Jr)return[0,e<0?-2:2];var t=Or(e),o=Nr((1+t)/(1-t),n/2),i=.5*(o+1/o)+Ir(r*=n);return[2*Or(r)/i,(o-1/o)/i]}return r.invert=function(r,e){var t=qr(e);if(qr(t-2)<Jr)return r?null:[0,Kr(e)*Zr];if(t>2)return null;r/=2,e/=2;var i=r*r,u=e*e,a=2*e/(1+i+u);return a=Nr((1+a)/(1-a),1/n),[Hr(2*r,1-i-u)/n,o((a-1)/(a+1))]},r}function bn(n,r){return[n*(1+u(Ir(r)))/2,r/(Ir(r/2)*Ir(n/6))]}function jn(n,r){var e=n*n,t=r*r;return[n*(.975534+t*(-.0143059*e-.119161+-.0547009*t)),r*(1.00384+e*(.0802894+-.02855*t+199025e-9*e)+t*(.0998909+-.0491032*t))]}function Mn(n,r){return[Or(n)/Ir(r),Ur(r)*Ir(n)]}function En(n){function r(r,o){var i=o-n,u=qr(i)<Jr?r*e:qr(u=$r+o/2)<Jr||qr(qr(u)-Zr)<Jr?0:r*i/Dr(Ur(u)/t);return[u,i]}var e=Ir(n),t=Ur($r+n/2);return r.invert=function(r,o){var i,u=o+n;return[qr(o)<Jr?r/e:qr(i=$r+u/2)<Jr||qr(qr(i)-Zr)<Jr?0:r*Dr(Ur(i)/t)/o,u]},r}function An(n,r){return[n,1.25*Dr(Ur($r+.4*r))]}function Sn(n){function r(r,t){for(var o,i=Ir(t),u=2/(1+i*Ir(r)),a=u*i*Or(r),c=u*Or(t),f=e,l=n[f],g=l[0],v=l[1];--f>=0;)l=n[f],g=l[0]+a*(o=g)-c*v,v=l[1]+a*v+c*o;return g=a*(o=g)-c*v,v=a*v+c*o,[g,v]}var e=n.length-1;return r.invert=function(r,t){var i=20,a=r,c=t;do{for(var f,l=e,g=n[l],v=g[0],s=g[1],p=0,h=0;--l>=0;)g=n[l],p=v+a*(f=p)-c*h,h=s+a*h+c*f,v=g[0]+a*(f=v)-c*s,s=g[1]+a*s+c*f;p=v+a*(f=p)-c*h,h=s+a*h+c*f,v=a*(f=v)-c*s-r,s=a*s+c*f-t;var d,w,y=p*p+h*h;a-=d=(v*p+s*h)/y,c-=w=(s*p-v*h)/y}while(qr(d)+qr(w)>Jr*Jr&&--i>0);if(i){var P=u(a*a+c*c),m=2*Br(.5*P),R=Or(m);return[Hr(a*R,P*Ir(m)),P?o(c*R/P):0]}},r}function kn(){return Fn(Lt,[152,-64]).scale(1500).center([-160.908,62.4864]).clipAngle(25)}function xn(){return Fn(qt,[95,-38]).scale(1e3).clipAngle(55).center([-96.5563,38.8675])}function Gn(){return Fn(Bt,[120,-45]).scale(359.513).clipAngle(55).center([-117.474,53.0628])}function Cn(){return Fn(Ht,[-20,-18]).scale(209.091).center([20,16.7214]).clipAngle(82)}function zn(){return Fn(It,[165,10]).scale(250).clipAngle(130).center([-165,-10])}function Fn(n,e){var t=r.geoProjection(Sn(n)).rotate(e).clipAngle(90),o=r.geoRotation(e),i=t.center;return delete t.rotate,t.center=function(n){return arguments.length?i(o(n)):o.invert(i())},t}function Ln(n,r){var e=o(7*Or(r)/(3*Wt));return[Wt*n*(2*Ir(2*e/3)-1)/Tt,9*Or(e/3)/Tt]}function qn(n,r){for(var e,t=(1+ne)*Or(r),o=r,i=0;i<25&&(o-=e=(Or(o/2)+Or(o)-t)/(.5*Ir(o/2)+Ir(o)),!(qr(e)<Jr));i++);return[n*(1+2*Ir(o)/Ir(o/2))/(3*re),2*u(3)*Or(o/2)/u(2+re)]}function Bn(n,r){for(var e,t=u(6/(4+Yr)),o=(1+Yr/4)*Or(r),i=r/2,a=0;a<25&&(i-=e=(i/2+Or(i)-o)/(.5+Ir(i)),!(qr(e)<Jr));a++);return[t*(.5+Ir(i))*n/1.5,t*i]}function Hn(n,r){var e=r*r,t=e*e;return[n*(.8707-.131979*e+t*(t*(.003971*e-.001529*t)-.013791)),r*(1.007226+e*(.015085+t*(.028874*e-.044475-.005916*t)))]}function In(n,r){var e=r*r,t=e*e,o=e*t;return[n*(.84719-.13063*e+o*o*(.05494*e-.04515-.02326*t+.00331*o)),r*(1.01183+t*t*(.01926*e-.02625-.00396*t))]}function Wn(n,r){return[n*(1+Ir(r))/2,2*(r-Ur(r/2))]}function Tn(n,r){var e=r*r;return[n,r*(Ot+e*e*(Ut+e*(Jt+Xt*e)))]}function Dn(n,r){if(qr(r)<Jr)return[n,0];var e=Ur(r),t=n*Or(r);return[Or(t)/e,r+(1-Ir(t))/e]}function Qn(n){var r=1/(n[0]*n[4]-n[1]*n[3]);return[r*n[4],-r*n[1],r*(n[1]*n[5]-n[2]*n[4]),-r*n[3],r*n[0],r*(n[2]*n[3]-n[0]*n[5])]}function Vn(n,r){return[n[0]*r[0]+n[1]*r[3],n[0]*r[1]+n[1]*r[4],n[0]*r[2]+n[1]*r[5]+n[2],n[3]*r[0]+n[4]*r[3],n[3]*r[1]+n[4]*r[4],n[3]*r[2]+n[4]*r[5]+n[5]]}function Nn(n,r){return[n[0]-r[0],n[1]-r[1]]}function _n(n){return u(n[0]*n[0]+n[1]*n[1])}function Kn(n,r){return Hr(n[0]*r[1]-n[1]*r[0],n[0]*r[0]+n[1]*r[1])}function On(n,e,t){var o,i,u=e.edges,a=u.length,c={type:"MultiPoint",coordinates:e.face},f=e.face.filter(function(n){return 90!==qr(n[1])}),l=r.geoBounds({type:"MultiPoint",coordinates:f}),g=!1,v=-1,s=l[1][0]-l[0][0],p=180===s||360===s?[(l[0][0]+l[1][0])/2,(l[0][1]+l[1][1])/2]:r.geoCentroid(c);if(t)for(;++v<a&&u[v]!==t;);++v;for(var h=0;h<a;++h)i=u[(h+v)%a],Array.isArray(i)?(g||(n.point((o=r.geoInterpolate(i[0],p)(Jr))[0],o[1]),g=!0),n.point((o=r.geoInterpolate(i[1],p)(Jr))[0],o[1])):(g=!1,i!==t&&On(n,i,e))}function Un(n,r){return n&&r&&n[0]===r[0]&&n[1]===r[1]}function Jn(n,r){for(var e,t,o=n.length,i=null,u=0;u<o;++u){e=n[u];for(var a=r.length;--a>=0;)if(t=r[a],e[0]===t[0]&&e[1]===t[1]){if(i)return[i,e];i=e}}}function Xn(n){for(var r=n.length,e=[],t=n[r-1],o=0;o<r;++o)e.push([t,t=n[o]]);return e}function Yn(n){return n.project.invert||n.children&&n.children.some(Yn)}function Zn(n,r){var e=C(n,r);return[e[0]*co,e[1]]}function $n(n,r){for(var e=0,t=n.length,o=0;e<t;++e)o+=n[e]*r[e];return o}function nr(n,r){return[n[1]*r[2]-n[2]*r[1],n[2]*r[0]-n[0]*r[2],n[0]*r[1]-n[1]*r[0]]}function rr(n){return[Hr(n[1],n[0])*oe,o(Qr(-1,Vr(1,n[2])))*oe]}function er(n){var r=n[0]*ie,e=n[1]*ie,t=Ir(e);return[t*Ir(r),t*Or(r),Or(e)]}function tr(n,r){return{type:"FeatureCollection",features:n.features.map(function(n){return or(n,r)})}}function or(n,r){return{type:"Feature",id:n.id,properties:n.properties,geometry:ur(n.geometry,r)}}function ir(n,r){return{type:"GeometryCollection",geometries:n.geometries.map(function(n){return ur(n,r)})}}function ur(n,e){if(!n)return null;if("GeometryCollection"===n.type)return ir(n,e);var t;switch(n.type){case"Point":case"MultiPoint":t=yo;break;case"LineString":case"MultiLineString":t=Po;break;case"Polygon":case"MultiPolygon":case"Sphere":t=mo;break;default:return null}return r.geoStream(n,e(t)),t.result()}function ar(n){function r(r,t){var o=e?Ur(r*e/2)/e:r/2;if(!t)return[2*o,-n];var i=2*Br(o*Or(t)),u=1/Ur(t);return[Or(i)*u,t+(1-Ir(i))*u-n]}var e=Or(n);return r.invert=function(r,t){if(qr(t+=n)<Jr)return[e?2*Br(e*r/2)/e:r,0];var u,a=r*r+t*t,c=0,f=10;do{var l=Ur(c),g=1/Ir(c),v=a-2*t*c+c*c;c-=u=(l*v+2*(c-t))/(2+v*g*g+2*(c-t)*l)}while(qr(u)>Jr&&--f>0);var s=r*(l=Ur(c)),p=Ur(qr(t)<qr(c+1/l)?.5*o(s):.5*i(s)+Yr/4)/Or(c);return[e?2*Br(e*p)/e:2*p,c]},r}function cr(n,r){var e,t=Vr(18,36*qr(r)/Yr),o=Tr(t),i=t-o,u=(e=Ao[o])[0],a=e[1],c=(e=Ao[++o])[0],f=e[1],l=(e=Ao[Vr(19,++o)])[0],g=e[1];return[n*(c+i*(l-u)/2+i*i*(l-2*c+u)/2),(r>0?Zr:-Zr)*(f+i*(g-a)/2+i*i*(g-2*f+a)/2)]}function fr(n){function r(r,e){var t=Ir(e),o=(n-1)/(n-t*Ir(r));return[o*t*Or(r),o*Or(e)]}return r.invert=function(r,e){var t=r*r+e*e,i=u(t),a=(n-u(1-t*(n+1)/(n-1)))/((n-1)/i+i/(n-1));return[Hr(r*a,i*u(1-a*a)),i?o(e*a/i):0]},r}function lr(n,r){function e(r,e){var u=t(r,e),a=u[1],c=a*i/(n-1)+o;return[u[0]*o/c,a/c]}var t=fr(n);if(!r)return t;var o=Ir(r),i=Or(r);return e.invert=function(r,e){var u=(n-1)/(n-1-e*i);return t.invert(u*r,u*e*o)},e}function gr(n){return n.length>0}function vr(n){return Math.floor(n*xo)/xo}function sr(n){return n===Lo||n===Bo?[0,n]:[Go,vr(n)]}function pr(n){var r=n[0],e=n[1],t=!1;return r<=Co?(r=Go,t=!0):r>=Fo&&(r=zo,t=!0),e<=qo?(e=Lo,t=!0):e>=Ho&&(e=Bo,t=!0),t?[r,e]:n}function hr(n){return n.map(pr)}function dr(n,r,e){for(var t=0,o=n.length;t<o;++t){var i=n[t].slice();e.push({index:-1,polygon:r,ring:i});for(var u=0,a=i.length;u<a;++u){var c=i[u],f=c[0],l=c[1];if(f<=Co||f>=Fo||l<=qo||l>=Ho){i[u]=pr(c);for(var g=u+1;g<a;++g){var v=i[g],s=v[0],p=v[1];if(s>Co&&s<Fo&&p>qo&&p<Ho)break}if(g===u+1)continue;if(u){var h={index:-1,polygon:r,ring:i.slice(0,u+1)};h.ring[h.ring.length-1]=sr(l),e[e.length-1]=h}else e.pop();if(g>=a)break;e.push({index:-1,polygon:r,ring:i=i.slice(g-1)}),i[0]=sr(i[0][1]),u=-1,a=i.length}}}}function wr(n){var r,e,t,o,i,u,a=n.length,c={},f={};for(r=0;r<a;++r)e=n[r],t=e.ring[0],i=e.ring[e.ring.length-1],t[0]!==i[0]||t[1]!==i[1]?(e.index=r,c[t]=f[i]=e):(e.polygon.push(e.ring),n[r]=null);for(r=0;r<a;++r)if(e=n[r]){if(t=e.ring[0],i=e.ring[e.ring.length-1],o=f[t],u=c[i],delete c[t],delete f[i],t[0]===i[0]&&t[1]===i[1]){e.polygon.push(e.ring);continue}o?(delete f[t],delete c[o.ring[0]],o.ring.pop(),n[o.index]=null,e={index:-1,polygon:o.polygon,ring:o.ring.concat(e.ring)},o===u?e.polygon.push(e.ring):(e.index=a++,n.push(c[e.ring[0]]=f[e.ring[e.ring.length-1]]=e))):u?(delete c[i],delete f[u.ring[u.ring.length-1]],e.ring.pop(),e={index:a++,polygon:u.polygon,ring:e.ring.concat(u.ring)},n[u.index]=null,n.push(c[e.ring[0]]=f[e.ring[e.ring.length-1]]=e)):(e.ring.push(e.ring[0]),e.polygon.push(e.ring))}}function yr(n){var r={type:"Feature",geometry:Pr(n.geometry)};return null!=n.id&&(r.id=n.id),null!=n.bbox&&(r.bbox=n.bbox),null!=n.properties&&(r.properties=n.properties),r}function Pr(n){if(null==n)return n;var r,e,t,o;switch(n.type){case"GeometryCollection":r={type:"GeometryCollection",geometries:n.geometries.map(Pr)};break;case"Point":r={type:"Point",coordinates:pr(n.coordinates)};break;case"MultiPoint":case"LineString":r={type:n.type,coordinates:hr(n.coordinates)};break;case"MultiLineString":r={type:"MultiLineString",coordinates:n.coordinates.map(hr)};break;case"Polygon":var i=[];dr(n.coordinates,i,e=[]),wr(e),r={type:"Polygon",coordinates:i};break;case"MultiPolygon":e=[],t=-1,o=n.coordinates.length;for(var u=new Array(o);++t<o;)dr(n.coordinates[t],u[t]=[],e);wr(e),r={type:"MultiPolygon",coordinates:u.filter(gr)};break;default:return n}return null!=n.bbox&&(r.bbox=n.bbox),r}function mr(n,r){var e=Ur(r/2),t=Or($r*e);return[n*(.74482-.34588*t*t),1.70711*e]}function Rr(n){function e(n,e){var o=r.geoGnomonicRaw(n,e);return o[0]*=t,o}var t=Ir(n);return e.invert=function(n,e){return r.geoGnomonicRaw.invert(n/t,e)},e}function br(){return jr([-158,21.5],[-77,39]).clipAngle(60).scale(400)}function jr(n,r){return To(Rr,n,r)}function Mr(n){function e(r,e){var c=i(Ir(e)*Ir(r-t)),f=i(Ir(e)*Ir(r-o)),l=e<0?-1:1;return c*=c,f*=f,[(c-f)/(2*n),l*u(4*a*f-(a-c+f)*(a-c+f))/(2*n)]}if(!(n*=2))return r.geoAzimuthalEquidistantRaw;var t=-n/2,o=-t,a=n*n,c=Ur(o),f=.5/Or(o);return e.invert=function(n,r){var e,a,l=r*r,g=Ir(u(l+(e=n+t)*e)),v=Ir(u(l+(e=n+o)*e));return[Hr(a=g-v,e=(g+v)*c),(r<0?-1:1)*i(u(e*e+a*a)*f)]},e}function Er(){return Ar([-158,21.5],[-77,39]).clipAngle(130).scale(122.571)}function Ar(n,r){return To(Mr,n,r)}function Sr(n,r){if(qr(r)<Jr)return[n,0];var e=qr(r/Zr),t=o(e);if(qr(n)<Jr||qr(qr(r)-Zr)<Jr)return[0,Kr(r)*Yr*Ur(t/2)];var i=Ir(t),a=qr(Yr/n-n/Yr)/2,c=a*a,f=i/(e+i-1),l=f*(2/e-1),g=l*l,v=g+c,s=f-g,p=c+f;return[Kr(n)*Yr*(a*s+u(c*s*s-v*(f*f-g)))/v,Kr(r)*Yr*(l*p-a*u((c+1)*v-p*p))/v]}function kr(n,r){if(qr(r)<Jr)return[n,0];var e=qr(r/Zr),t=o(e);if(qr(n)<Jr||qr(qr(r)-Zr)<Jr)return[0,Kr(r)*Yr*Ur(t/2)];var i=Ir(t),a=qr(Yr/n-n/Yr)/2,c=a*a,f=i*(u(1+c)-a*i)/(1+c*e*e);return[Kr(n)*Yr*f,Kr(r)*Yr*u(1-f*(2*a+f))]}function xr(n,r){if(qr(r)<Jr)return[n,0];var e=r/Zr,t=o(e);if(qr(n)<Jr||qr(qr(r)-Zr)<Jr)return[0,Yr*Ur(t/2)];var i=(Yr/n-n/Yr)/2,a=e/(1+Ir(t));return[Yr*(Kr(n)*u(i*i+1-a*a)-i),Yr*a]}function Gr(n,r){if(!r)return[n,0];var e=qr(r);if(!n||e===Zr)return[0,r];var t=e/Zr,o=t*t,i=(8*t-o*(o+2)-5)/(2*o*(t-1)),a=i*i,c=t*i,f=o+a+2*c,l=t+3*i,g=n/Zr,v=g+1/g,s=Kr(qr(n)-Zr)*u(v*v-4),p=s*s,h=f*(o+a*p-1)+(1-o)*(o*(l*l+4*a)+12*c*a+4*a*a),d=(s*(f+a-1)+2*u(h))/(4*f+p);return[Kr(n)*Zr*d,Kr(r)*Zr*u(1+s*qr(d)-d*d)]}function Cr(n,r){return[n*u(1-3*r*r/(Yr*Yr)),r]}function zr(n,r){var e=.90631*Or(r),t=u(1-e*e),o=u(2/(1+t*Ir(n/=3)));return[2.66723*t*o*Or(n),1.24104*e*o]}function Fr(n,r){var e=Ir(r),t=Ir(n)*e,o=1-t,i=Ir(n=Hr(Or(n)*e,-Or(r))),a=Or(n);return e=u(1-t*t),[a*e-i*o,-i*e-a*o]}function Lr(n,r){var e=s(n,r);return[(e[0]+n/Zr)/2,(e[1]+r)/2]}var qr=Math.abs,Br=Math.atan,Hr=Math.atan2,Ir=Math.cos,Wr=Math.exp,Tr=Math.floor,Dr=Math.log,Qr=Math.max,Vr=Math.min,Nr=Math.pow,_r=Math.round,Kr=Math.sign||function(n){return n>0?1:n<0?-1:0},Or=Math.sin,Ur=Math.tan,Jr=1e-6,Xr=1e-12,Yr=Math.PI,Zr=Yr/2,$r=Yr/4,ne=Math.SQRT1_2,re=u(2),ee=u(Yr),te=2*Yr,oe=180/Yr,ie=Yr/180,ue=function(){var n=Zr,e=r.geoProjectionMutator(v),t=e(n);return t.radius=function(r){return arguments.length?e(n=r*ie):n*oe},t.scale(179.976).clipAngle(147)};s.invert=function(n,r){if(!(n*n+4*r*r>Yr*Yr+Jr)){var e=n,t=r,o=25;do{var a,c=Or(e),f=Or(e/2),l=Ir(e/2),g=Or(t),v=Ir(t),s=Or(2*t),p=g*g,h=v*v,d=f*f,w=1-h*l*l,y=w?i(v*l)*u(a=1/w):a=0,P=2*y*v*f-n,m=y*g-r,R=a*(h*d+y*v*l*p),b=a*(.5*c*s-2*y*g*f),j=.25*a*(s*f-y*g*h*c),M=a*(p*l+y*d*v),E=b*j-M*R;if(!E)break;var A=(m*b-P*M)/E,S=(P*j-m*R)/E;e-=A,t-=S}while((qr(A)>Jr||qr(S)>Jr)&&--o>0);return[e,t]}};var ae=function(){return r.geoProjection(s).scale(152.63)},ce=function(){var n=20*ie,e=n>=0?1:-1,t=Ur(e*n),o=r.geoProjectionMutator(p),i=o(n),u=i.stream;return i.parallel=function(r){return arguments.length?(t=Ur((e=(n=r*ie)>=0?1:-1)*n),o(n)):n*oe},i.stream=function(r){var o=i.rotate(),a=u(r),c=(i.rotate([0,0]),u(r));return i.rotate(o),a.sphere=function(){c.polygonStart(),c.lineStart();for(var r=-180*e;e*r<180;r+=90*e)c.point(r,90*e);for(;e*(r-=n)>=-180;)c.point(r,e*-Hr(Ir(r*ie/2),t)*oe);c.lineEnd(),c.polygonEnd()},a},i.scale(218.695).center([0,28.0974])};h.invert=function(n,r){if(n*=3/8,r*=3/8,!n&&qr(r)>1)return null;var e=n*n,t=r*r,i=1+e+t,a=u((i-u(i*i-4*r*r))/2),v=o(a)/3,s=a?g(qr(r/a))/3:l(qr(n))/3,p=Ir(v),h=f(s),d=h*h-p*p;return[2*Kr(n)*Hr(c(s)*p,.25-d),2*Kr(r)*Hr(h*Or(v),.25+d)]};var fe=function(){return r.geoProjection(h).scale(66.1603)},le=u(8),ge=Dr(1+re);d.invert=function(n,r){if((t=qr(r))<ge)return[n,2*Br(Wr(r))-Zr];var e,t,o=$r,i=25;do{var u=Ir(o/2),a=Ur(o/2);o-=e=(le*(o-$r)-Dr(a)-t)/(le-u*u/(2*a))}while(qr(e)>Xr&&--i>0);return[n/(Ir(o)*(le-1/Or(o))),Kr(r)*o]};var ve=function(){return r.geoProjection(d).scale(112.314)},se=function(){var n=5,e=r.geoProjectionMutator(w),t=e(n),i=t.stream,u=-Ir(.01*ie),a=Or(.01*ie);return t.lobes=function(r){return arguments.length?e(n=+r):n},t.stream=function(r){var e=t.rotate(),c=i(r),f=(t.rotate([0,0]),i(r));return t.rotate(e),c.sphere=function(){f.polygonStart(),f.lineStart();for(var r=0,e=360/n,t=2*Yr/n,i=90-180/n,c=Zr;r<n;++r,i-=e,c-=t)f.point(Hr(a*Ir(c),u)*oe,o(a*Or(c))*oe),i<-90?(f.point(-90,-180-i-.01),f.point(-90,-180-i+.01)):(f.point(90,i+.01),f.point(90,i-.01));f.lineEnd(),f.polygonEnd()},c},t.scale(87.8076).center([0,17.1875]).clipAngle(179.999)},pe=P(re/Zr,re,Yr),he=function(){return r.geoProjection(pe).scale(169.529)},de=2.00276,we=1.11072;m.invert=function(n,r){var e,t,o=de*r,i=r<0?-$r:$r,u=25;do{t=o-re*Or(i),i-=e=(Or(2*i)+2*i-Yr*Or(t))/(2*Ir(2*i)+2+Yr*Ir(t)*re*Ir(i))}while(qr(e)>Jr&&--u>0);return t=o-re*Or(i),[n*(1/Ir(t)+we/Ir(i))/de,t]};var ye=function(){return r.geoProjection(m).scale(160.857)},Pe=function(n){var e=0,t=r.geoProjectionMutator(n),o=t(e);return o.parallel=function(n){return arguments.length?t(e=n*ie):e*oe},o};R.invert=function(n,r){return[n/Ir(r),r]};var me=function(){return r.geoProjection(R).scale(152.63)},Re=function(){return Pe(b).scale(123.082).center([0,26.1441]).parallel(45)},be=function(){var n=.5,e=r.geoProjectionMutator(j),t=e(n);return t.fraction=function(r){return arguments.length?e(n=+r):n},t.scale(158.837)},je=P(1,4/Yr,Yr),Me=function(){return r.geoProjection(je).scale(152.63)};C.invert=function(n,r){var e=(e=r/ee-1)*e;return[e>0?n*u(Yr/e)/2:0,o(1-e)]};var Ee=function(){return r.geoProjection(C).scale(95.6464).center([0,30])},Ae=function(){return Pe(z).scale(249.828).clipAngle(90)},Se=u(3);F.invert=function(n,r){var e=3*o(r/(Se*ee));return[ee*n/(Se*(2*Ir(2*e/3)-1)),e]};var ke=function(){return r.geoProjection(F).scale(156.19)},xe=function(){return Pe(L).parallel(38.58).scale(195.044)},Ge=function(){return Pe(q).scale(124.75)};B.invert=function(n,r){var e=u(8/(3*Yr)),t=r/e;return[n/(e*(1-qr(t)/Yr)),t]};var Ce=function(){return r.geoProjection(B).scale(165.664)};H.invert=function(n,r){var e=2-qr(r)/u(2*Yr/3);return[n*u(6*Yr)/(2*e),Kr(r)*o((4-e*e)/3)]};var ze=function(){return r.geoProjection(H).scale(165.664)};I.invert=function(n,r){var e=u(Yr*(4+Yr))/2;return[n*e/(1+u(1-r*r*(4+Yr)/(4*Yr))),r*e/2]};var Fe=function(){return r.geoProjection(I).scale(180.739)};W.invert=function(n,r){var e=r*u((4+Yr)/Yr)/2,t=o(e),i=Ir(t);return[n/(2/u(Yr*(4+Yr))*(1+i)),o((t+e*(i+2))/(2+Zr))]};var Le=function(){return r.geoProjection(W).scale(180.739)};T.invert=function(n,r){var e=u(2+Yr),t=r*e/2;return[e*n/(1+Ir(t)),t]};var qe=function(){return r.geoProjection(T).scale(173.044)};D.invert=function(n,r){var e=1+Zr,t=u(e/2);return[2*n*t/(1+Ir(r*=t)),o((r+Or(r))/e)]};var Be=function(){return r.geoProjection(D).scale(173.044)},He=3+2*re;Q.invert=function(n,r){if(!(e=h.invert(n/1.2,1.065*r)))return null;var e,t=e[0],o=e[1],i=20;n/=He,r/=He;do{var a=t/2,c=o/2,f=Or(a),l=Ir(a),g=Or(c),v=Ir(c),s=Ir(o),p=u(s),d=g/(v+re*l*p),w=d*d,y=u(2/(1+w)),P=re*v+(l+f)*p,m=re*v+(l-f)*p,R=P/m,b=u(R),j=b-1/b,M=b+1/b,E=y*j-2*Dr(b)-n,A=y*d*M-2*Br(d)-r,S=g&&ne*p*f*w/g,k=(re*l*v+p)/(2*(v+re*l*p)*(v+re*l*p)*p),x=-.5*d*y*y*y,G=x*S,C=x*k,z=(z=2*v+re*p*(l-f))*z*b,F=(re*l*v*p+s)/z,L=-re*f*g/(p*z),q=j*G-2*F/b+y*(F+F/R),B=j*C-2*L/b+y*(L+L/R),H=d*M*G-2*S/(1+w)+y*M*S+y*d*(F-F/R),I=d*M*C-2*k/(1+w)+y*M*k+y*d*(L-L/R),W=B*H-I*q;if(!W)break;var T=(A*B-E*I)/W,D=(E*H-A*q)/W;t-=T,o=Qr(-Zr,Vr(Zr,o-D))}while((qr(T)>Jr||qr(D)>Jr)&&--i>0);return qr(qr(o)-Zr)<Jr?[0,o]:i&&[t,o]};var Ie=function(){return r.geoProjection(Q).scale(62.5271)},We=Ir(35*ie);V.invert=function(n,r){var e=r/(1+We);return[n&&n/(We*u(1-e*e)),2*Br(e)]};var Te=function(){return r.geoProjection(V).scale(137.152)};N.invert=function(n,r){var e=Br(r/ee),t=Ir(e),o=2*e;return[n*ee/2/(Ir(o)*t*t),o]};var De=function(){return r.geoProjection(N).scale(135.264)},Qe=function(n){function e(n){return i(_(n))}function t(n){e[n]=function(r){return arguments.length?(i[n](r),e):i[n]()}}null==n&&(n=r.geoOrthographic);var i=n(),u=r.geoEquirectangular().scale(oe).precision(0).clipAngle(null).translate([0,0]);return i.invert&&(e.invert=function(n){return K(i.invert(n))}),e.stream=function(n){var r=i.stream(n),e=u.stream({point:function(n,e){r.point(n/2,o(Ur(-e/2*ie))*oe)},lineStart:function(){r.lineStart()},lineEnd:function(){r.lineEnd()},polygonStart:function(){r.polygonStart()},polygonEnd:function(){r.polygonEnd()}});return e.sphere=r.sphere,e},e.rotate=function(n){return arguments.length?(u.rotate(n),e):u.rotate()},e.center=function(n){return arguments.length?(i.center(_(n)),e):K(i.center())},t("clipAngle"),t("clipExtent"),t("scale"),t("translate"),t("precision"),e.scale(249.5)},Ve=function(){var n=6,e=30*ie,t=Ir(e),i=Or(e),u=r.geoProjectionMutator(O),a=u(e,n),c=a.stream,f=-Ir(.01*ie),l=Or(.01*ie);return a.radius=function(r){return arguments.length?(t=Ir(e=r*ie),i=Or(e),u(e,n)):e*oe},a.lobes=function(r){return arguments.length?u(e,n=+r):n},a.stream=function(r){var e=a.rotate(),u=c(r),g=(a.rotate([0,0]),c(r));return a.rotate(e),u.sphere=function(){g.polygonStart(),g.lineStart();for(var r=0,e=2*Yr/n,u=0;r<n;++r,u-=e)g.point(Hr(l*Ir(u),f)*oe,o(l*Or(u))*oe),g.point(Hr(i*Ir(u-e/2),t)*oe,o(i*Or(u-e/2))*oe);g.lineEnd(),g.polygonEnd()},u},a.rotate([90,-40]).scale(91.7095).clipAngle(179.999)},Ne=function(n,r,e,t,i,a,c,f){function l(u,l){if(!l)return[n*u/Yr,0];var g=l*l,v=n+g*(r+g*(e+g*t)),s=l*(i-1+g*(a-f+g*c)),p=(v*v+s*s)/(2*s),h=u*o(v/p)/Yr;return[p*Or(h),l*(1+g*f)+p*(1-Ir(h))]}return arguments.length<8&&(f=0),l.invert=function(l,g){var v,s,p=Yr*l/n,h=g,d=50;do{
|
|
var w=h*h,y=n+w*(r+w*(e+w*t)),P=h*(i-1+w*(a-f+w*c)),m=y*y+P*P,R=2*P,b=m/R,j=b*b,M=o(y/b)/Yr,E=p*M,A=y*y,S=(2*r+w*(4*e+6*w*t))*h,k=i+w*(3*a+5*w*c),x=2*(y*S+P*(k-1)),G=2*(k-1),C=(x*R-m*G)/(R*R),z=Ir(E),F=Or(E),L=b*z,q=b*F,B=p/Yr*(1/u(1-A/j))*(S*b-y*C)/j,H=q-l,I=h*(1+w*f)+b-L-g,W=C*F+L*B,T=L*M,D=1+C-(C*z-q*B),Q=q*M,V=W*Q-D*T;if(!V)break;p-=v=(I*W-H*D)/V,h-=s=(H*Q-I*T)/V}while((qr(v)>Jr||qr(s)>Jr)&&--d>0);return[p,h]},l},_e=Ne(2.8284,-1.6988,.75432,-.18071,1.76003,-.38914,.042555),Ke=function(){return r.geoProjection(_e).scale(149.995)},Oe=Ne(2.583819,-.835827,.170354,-.038094,1.543313,-.411435,.082742),Ue=function(){return r.geoProjection(Oe).scale(153.93)},Je=Ne(5/6*Yr,-.62636,-.0344,0,1.3493,-.05524,0,.045),Xe=function(){return r.geoProjection(Je).scale(130.945)};X.invert=function(n,r){var e,t=n,o=r,i=50;do{var u=o*o;o-=e=(o*(1+u/12)-r)/(1+u/4)}while(qr(e)>Jr&&--i>0);i=50,n/=1-.162388*u;do{var a=(a=t*t)*a;t-=e=(t*(.87-952426e-9*a)-n)/(.87-.00476213*a)}while(qr(e)>Jr&&--i>0);return[t,o]};var Ye=function(){return r.geoProjection(X).scale(131.747)},Ze=Ne(2.6516,-.76534,.19123,-.047094,1.36289,-.13965,.031762),$e=function(){return r.geoProjection(Ze).scale(131.087)},nt=function(n){function r(r,t){var o=r>0?-.5:.5,i=n(r+o*Yr,t);return i[0]-=o*e,i}var e=n(Zr,0)[0]-n(-Zr,0)[0];return n.invert&&(r.invert=function(r,t){var o=r>0?-.5:.5,i=n.invert(r+o*e,t),u=i[0]-o*Yr;return u<-Yr?u+=2*Yr:u>Yr&&(u-=2*Yr),i[0]=u,i}),r};Y.invert=function(n,r){qr(n)>1&&(n=2*Kr(n)-n),qr(r)>1&&(r=2*Kr(r)-r);var e=Kr(n),t=Kr(r),i=-e*n,u=-t*r,a=u/i<1,c=$(a?u:i,a?i:u),f=c[0],l=c[1],g=Ir(l);return a&&(f=-Zr-f),[e*(Hr(Or(f)*g,-Or(l))+Yr),t*o(Ir(f)*g)]};var rt=function(){return r.geoProjection(nt(Y)).scale(239.75)};on.invert=function(n,r){var e=(re-1)/(re+1),t=u(1-e*e),o=tn(Zr,t*t),i=nn(.5*o-r,-n,t*t),a=an(i[0],i[1]);return[Hr(a[1],a[0])/-1,2*Br(Wr(-.5*Dr(e*a[0]*a[0]+e*a[1]*a[1])))-Zr]};var et=function(){return r.geoProjection(nt(on)).scale(151.496)};fn.invert=function(n,r){var e=2*o(r/2);return[n*Ir(e/2)/Ir(e),e]};var tt=function(){var n=2,e=r.geoProjectionMutator(cn),t=e(n);return t.coefficient=function(r){return arguments.length?e(n=+r):n},t.scale(169.529)},ot=function(){var n=0,e=r.geoProjectionMutator(ln),t=e(n),o=t.rotate,i=t.stream,u=r.geoCircle();return t.parallel=function(r){if(!arguments.length)return n*oe;var o=t.rotate();return e(n=r*ie).rotate(o)},t.rotate=function(r){return arguments.length?(o.call(t,[r[0],r[1]-n*oe]),u.center([-r[0],-r[1]]),t):(r=o.call(t),r[1]+=n*oe,r)},t.stream=function(n){return n=i(n),n.sphere=function(){n.polygonStart();var r,e=u.radius(89.99)().coordinates[0],t=e.length-1,o=-1;for(n.lineStart();++o<t;)n.point((r=e[o])[0],r[1]);for(n.lineEnd(),e=u.radius(90.01)().coordinates[0],t=e.length-1,n.lineStart();--o>=0;)n.point((r=e[o])[0],r[1]);n.lineEnd(),n.polygonEnd()},n},t.scale(79.4187).parallel(45).clipAngle(179.999)},it=41+48/36+37/3600,ut=L(0),at=function(){var n=4,e=r.geoProjectionMutator(vn),t=e(n),o=t.stream;return t.lobes=function(r){return arguments.length?e(n=+r):n},t.stream=function(e){var i=t.rotate(),u=o(e),a=(t.rotate([0,0]),o(e));return t.rotate(i),u.sphere=function(){r.geoStream(sn(180/n),a)},u},t.scale(239.75)},ct=function(){var n=1,e=r.geoProjectionMutator(pn),t=e(n);return t.ratio=function(r){return arguments.length?e(n=+r):n},t.scale(167.774).center([0,18.67])},ft=.7109889596207567,lt=.0528035274542;hn.invert=function(n,r){return r>-ft?pe.invert(n,r-lt):R.invert(n,r)};var gt=function(){return r.geoProjection(hn).rotate([-20,-55]).scale(164.263).center([0,-5.4036])};dn.invert=function(n,r){return qr(r)>ft?pe.invert(n,r+(r>0?lt:-lt)):R.invert(n,r)};var vt=function(){return r.geoProjection(dn).scale(152.63)},st=function(n,e){function t(r,t){for(var o=t<0?-1:1,i=e[+(t<0)],u=0,a=i.length-1;u<a&&r>i[u][2][0];++u);var c=n(r-i[u][1][0],t);return c[0]+=n(i[u][1][0],o*t>o*i[u][0][1]?i[u][0][1]:t)[0],c}var o=Pn(e);e=e.map(function(n){return n.map(function(n){return[[n[0][0]*ie,n[0][1]*ie],[n[1][0]*ie,n[1][1]*ie],[n[2][0]*ie,n[2][1]*ie]]})});var i=e.map(function(r){return r.map(function(r){var e,t=n(r[0][0],r[0][1])[0],o=n(r[2][0],r[2][1])[0],i=n(r[1][0],r[0][1])[1],u=n(r[1][0],r[1][1])[1];return i>u&&(e=i,i=u,u=e),[[t,i],[o,u]]})});n.invert&&(t.invert=function(r,o){for(var u=i[+(o<0)],a=e[+(o<0)],c=0,f=u.length;c<f;++c){var l=u[c];if(l[0][0]<=r&&r<l[1][0]&&l[0][1]<=o&&o<l[1][1]){var g=n.invert(r-n(a[c][1][0],0)[0],o);return g[0]+=a[c][1][0],wn(t(g[0],g[1]),[r,o])?g:null}}});var u=r.geoProjection(t),a=u.stream;return u.stream=function(n){var e=u.rotate(),t=a(n),i=(u.rotate([0,0]),a(n));return u.rotate(e),t.sphere=function(){r.geoStream(o,i)},t},u},pt=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],ht=function(){return st(m,pt).scale(160.857)},dt=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],wt=function(){return st(dn,dt).scale(152.63)},yt=[[[[-180,0],[-100,90],[-40,0]],[[-40,0],[30,90],[180,0]]],[[[-180,0],[-160,-90],[-100,0]],[[-100,0],[-60,-90],[-20,0]],[[-20,0],[20,-90],[80,0]],[[80,0],[140,-90],[180,0]]]],Pt=function(){return st(pe,yt).scale(169.529)},mt=[[[[-180,0],[-90,90],[0,0]],[[0,0],[90,90],[180,0]]],[[[-180,0],[-90,-90],[0,0]],[[0,0],[90,-90],[180,0]]]],Rt=function(){return st(pe,mt).scale(169.529).rotate([20,0])},bt=[[[[-180,35],[-30,90],[0,35]],[[0,35],[30,90],[180,35]]],[[[-180,-10],[-102,-90],[-65,-10]],[[-65,-10],[5,-90],[77,-10]],[[77,-10],[103,-90],[180,-10]]]],jt=function(){return st(hn,bt).rotate([-20,-55]).scale(164.263).center([0,-5.4036])},Mt=[[[[-180,0],[-110,90],[-40,0]],[[-40,0],[0,90],[40,0]],[[40,0],[110,90],[180,0]]],[[[-180,0],[-110,-90],[-40,0]],[[-40,0],[0,-90],[40,0]],[[40,0],[110,-90],[180,0]]]],Et=function(){return st(R,Mt).scale(152.63).rotate([-20,0])};mn.invert=function(n,r){return[te/3*n/u(Yr*Yr/3-r*r),r]};var At=function(){return r.geoProjection(mn).scale(158.837)},St=function(){var n=.5,e=r.geoProjectionMutator(Rn),t=e(n);return t.spacing=function(r){return arguments.length?e(n=+r):n},t.scale(124.75)},kt=Yr/re;bn.invert=function(n,r){var e=qr(n),t=qr(r),o=Jr,a=Zr;t<kt?a*=t/kt:o+=6*i(kt/t);for(var c=0;c<25;c++){var f=Or(a),l=u(Ir(a)),g=Or(a/2),v=Ir(a/2),s=Or(o/6),p=Ir(o/6),h=.5*o*(1+l)-e,d=a/(v*p)-t,w=l?-.25*o*f/l:0,y=.5*(1+l),P=(1+.5*a*g/v)/(v*p),m=a/v*(s/6)/(p*p),R=w*m-P*y,b=(h*m-d*y)/R,j=(d*w-h*P)/R;if(a-=b,o-=j,qr(b)<Jr&&qr(j)<Jr)break}return[n<0?-o:o,r<0?-a:a]};var xt=function(){return r.geoProjection(bn).scale(97.2672)};jn.invert=function(n,r){var e=Kr(n)*Yr,t=r/2,o=50;do{var i=e*e,u=t*t,a=e*t,c=e*(.975534+u*(-.0143059*i-.119161+-.0547009*u))-n,f=t*(1.00384+i*(.0802894+-.02855*u+199025e-9*i)+u*(.0998909+-.0491032*u))-r,l=.975534-u*(.119161+3*i*.0143059+.0547009*u),g=-a*(.238322+.2188036*u+.0286118*i),v=a*(.1605788+7961e-7*i+-.0571*u),s=1.00384+i*(.0802894+199025e-9*i)+u*(3*(.0998909-.02855*i)-.245516*u),p=g*v-s*l,h=(f*g-c*s)/p,d=(c*v-f*l)/p;e-=h,t-=d}while((qr(h)>Jr||qr(d)>Jr)&&--o>0);return o&&[e,t]};var Gt=function(){return r.geoProjection(jn).scale(139.98)};Mn.invert=function(n,r){var e=n*n,t=r*r,a=t+1,c=n?ne*u((a-u(e*e+2*e*(t-1)+a*a))/e+1):1/u(a);return[o(n*c),Kr(r)*i(c)]};var Ct=function(){return r.geoProjection(Mn).scale(144.049).clipAngle(89.999)},zt=function(){return Pe(En).parallel(40).scale(158.837)};An.invert=function(n,r){return[n,2.5*Br(Wr(.8*r))-.625*Yr]};var Ft=function(){return r.geoProjection(An).scale(108.318)},Lt=[[.9972523,0],[.0052513,-.0041175],[.0074606,.0048125],[-.0153783,-.1968253],[.0636871,-.1408027],[.3660976,-.2937382]],qt=[[.98879,0],[0,0],[-.050909,0],[0,0],[.075528,0]],Bt=[[.984299,0],[.0211642,.0037608],[-.1036018,-.0575102],[-.0329095,-.0320119],[.0499471,.1223335],[.026046,.0899805],[7388e-7,-.1435792],[.0075848,-.1334108],[-.0216473,.0776645],[-.0225161,.0853673]],Ht=[[.9245,0],[0,0],[.01943,0]],It=[[.721316,0],[0,0],[-.00881625,-.00617325]],Wt=u(6),Tt=u(7);Ln.invert=function(n,r){var e=3*o(r*Tt/9);return[n*Tt/(Wt*(2*Ir(2*e/3)-1)),o(3*Or(e)*Wt/7)]};var Dt=function(){return r.geoProjection(Ln).scale(164.859)};qn.invert=function(n,r){var e=r*u(2+re)/(2*u(3)),t=2*o(e);return[3*re*n/(1+2*Ir(t)/Ir(t/2)),o((e+Or(t))/(1+ne))]};var Qt=function(){return r.geoProjection(qn).scale(188.209)};Bn.invert=function(n,r){var e=u(6/(4+Yr)),t=r/e;return qr(qr(t)-Zr)<Jr&&(t=t<0?-Zr:Zr),[1.5*n/(e*(.5+Ir(t))),o((t/2+Or(t))/(1+Yr/4))]};var Vt=function(){return r.geoProjection(Bn).scale(166.518)};Hn.invert=function(n,r){var e,t=r,o=25;do{var i=t*t,u=i*i;t-=e=(t*(1.007226+i*(.015085+u*(.028874*i-.044475-.005916*u)))-r)/(1.007226+i*(.045255+u*(.259866*i-.311325-.005916*11*u)))}while(qr(e)>Jr&&--o>0);return[n/(.8707+(i=t*t)*(i*(i*i*i*(.003971-.001529*i)-.013791)-.131979)),t]};var Nt=function(){return r.geoProjection(Hn).scale(175.295)};In.invert=function(n,r){var e,t,o,i,u=r,a=25;do{t=u*u,o=t*t,u-=e=(u*(1.01183+o*o*(.01926*t-.02625-.00396*o))-r)/(1.01183+o*o*(.21186*t-.23625+-.05148*o))}while(qr(e)>Xr&&--a>0);return t=u*u,o=t*t,i=t*o,[n/(.84719-.13063*t+i*i*(.05494*t-.04515-.02326*o+.00331*i)),u]};var _t=function(){return r.geoProjection(In).scale(175.295)};Wn.invert=function(n,r){for(var e=r/2,t=0,o=1/0;t<10&&qr(o)>Jr;++t){var i=Ir(r/2);r-=o=(r-Ur(r/2)-e)/(1-.5/(i*i))}return[2*n/(1+Ir(r)),r]};var Kt=function(){return r.geoProjection(Wn).scale(152.63)},Ot=1.0148,Ut=.23185,Jt=-.14499,Xt=.02406,Yt=Ot,Zt=5*Ut,$t=7*Jt,no=9*Xt;Tn.invert=function(n,r){r>1.790857183?r=1.790857183:r<-1.790857183&&(r=-1.790857183);var e,t=r;do{var o=t*t;t-=e=(t*(Ot+o*o*(Ut+o*(Jt+Xt*o)))-r)/(Yt+o*o*(Zt+o*($t+no*o)))}while(qr(e)>Jr);return[n,t]};var ro=function(){return r.geoProjection(Tn).scale(139.319)};Dn.invert=function(n,r){if(qr(r)<Jr)return[n,0];var e,t=n*n+r*r,u=.5*r,a=10;do{var c=Ur(u),f=1/Ir(u),l=t-2*r*u+u*u;u-=e=(c*l+2*(u-r))/(2+l*f*f+2*(u-r)*c)}while(qr(e)>Jr&&--a>0);return c=Ur(u),[(qr(r)<qr(u+1/c)?o(n*c):Kr(n)*(i(qr(n*c))+Zr))/Or(u),u]};var eo=function(){return r.geoProjection(Dn).scale(103.74)},to=function(n,r){var e=Nn(n[1],n[0]),t=Nn(r[1],r[0]),o=Kn(e,t),i=_n(e)/_n(t);return Vn([1,0,n[0][0],0,1,n[0][1]],Vn([i,0,0,0,i,0],Vn([Ir(o),Or(o),0,-Or(o),Ir(o),0],[1,0,-r[0][0],0,1,-r[0][1]])))},oo=function(n,e,t){function o(n,r){if(n.edges=Xn(n.face),r.face){var e=n.shared=Jn(n.face,r.face),t=to(e.map(r.project),e.map(n.project));n.transform=r.transform?Vn(r.transform,t):t;for(var i=r.edges,u=0,a=i.length;u<a;++u)Un(e[0],i[u][1])&&Un(e[1],i[u][0])&&(i[u]=n),Un(e[0],i[u][0])&&Un(e[1],i[u][1])&&(i[u]=n);for(i=n.edges,u=0,a=i.length;u<a;++u)Un(e[0],i[u][0])&&Un(e[1],i[u][1])&&(i[u]=r),Un(e[0],i[u][1])&&Un(e[1],i[u][0])&&(i[u]=r)}else n.transform=r.transform;return n.children&&n.children.forEach(function(r){o(r,n)}),n}function i(n,r){var t,o=e(n,r),i=o.project([n*oe,r*oe]);return(t=o.transform)?[t[0]*i[0]+t[1]*i[1]+t[2],-(t[3]*i[0]+t[4]*i[1]+t[5])]:(i[1]=-i[1],i)}function u(n,r){var e=n.project.invert,t=n.transform,o=r;if(t&&(t=Qn(t),o=[t[0]*o[0]+t[1]*o[1]+t[2],t[3]*o[0]+t[4]*o[1]+t[5]]),e&&n===a(i=e(o)))return i;for(var i,c=n.children,f=0,l=c&&c.length;f<l;++f)if(i=u(c[f],r))return i}function a(n){return e(n[0]*ie,n[1]*ie)}t=null==t?-Yr/6:t,o(n,{transform:[Ir(t),Or(t),0,-Or(t),Ir(t),0]}),Yn(n)&&(i.invert=function(r,e){var t=u(n,[r,-e]);return t&&(t[0]*=ie,t[1]*=ie,t)});var c=r.geoProjection(i),f=c.stream;return c.stream=function(r){var e=c.rotate(),t=f(r),o=(c.rotate([0,0]),f(r));return c.rotate(e),t.sphere=function(){o.polygonStart(),o.lineStart(),On(o,n),o.lineEnd(),o.polygonEnd()},t},c},io=[[0,90],[-90,0],[0,0],[90,0],[180,0],[0,-90]],uo=[[0,2,1],[0,3,2],[5,1,2],[5,2,3],[0,1,4],[0,4,3],[5,4,1],[5,3,4]].map(function(n){return n.map(function(n){return io[n]})}),ao=function(n){n=n||function(n){var e=r.geoCentroid({type:"MultiPoint",coordinates:n});return r.geoGnomonic().scale(1).translate([0,0]).rotate([-e[0],-e[1]])};var e=uo.map(function(r){return{face:r,project:n(r)}});return[-1,0,0,1,0,1,4,5].forEach(function(n,r){var t=e[n];t&&(t.children||(t.children=[])).push(e[r])}),oo(e[0],function(n,r){return e[n<-Yr/2?r<0?6:4:n<0?r<0?2:0:n<Yr/2?r<0?3:1:r<0?7:5]}).scale(101.858).center([0,45])},co=2/u(3);Zn.invert=function(n,r){return C.invert(n/co,r)};var fo=function(n){n=n||function(n){var e=r.geoCentroid({type:"MultiPoint",coordinates:n});return r.geoProjection(Zn).translate([0,0]).scale(1).rotate(e[1]>0?[-e[0],0]:[180-e[0],180])};var e=uo.map(function(r){return{face:r,project:n(r)}});return[-1,0,0,1,0,1,4,5].forEach(function(n,r){var t=e[n];t&&(t.children||(t.children=[])).push(e[r])}),oo(e[0],function(n,r){return e[n<-Yr/2?r<0?6:4:n<0?r<0?2:0:n<Yr/2?r<0?3:1:r<0?7:5]}).scale(121.906).center([0,48.5904])},lo=function(n){function e(n,r){var e=Ir(r),t=[e*Ir(n),e*Or(n),Or(r)],i=n<-Yr/2?r<0?6:4:n<0?r<0?2:0:n<Yr/2?r<0?3:1:r<0?7:5,a=o[i];return u[$n(a[0],t)<0?8+3*i:$n(a[1],t)<0?8+3*i+1:$n(a[2],t)<0?8+3*i+2:i]}n=n||function(n){var e=6===n.length?r.geoCentroid({type:"MultiPoint",coordinates:n}):n[0];return r.geoGnomonic().scale(1).translate([0,0]).rotate([-e[0],-e[1]])};var t=uo.map(function(n){for(var r,e=n.map(er),t=e.length,o=e[t-1],i=[],u=0;u<t;++u)r=e[u],i.push(rr([.9486832980505138*o[0]+.31622776601683794*r[0],.9486832980505138*o[1]+.31622776601683794*r[1],.9486832980505138*o[2]+.31622776601683794*r[2]]),rr([.9486832980505138*r[0]+.31622776601683794*o[0],.9486832980505138*r[1]+.31622776601683794*o[1],.9486832980505138*r[2]+.31622776601683794*o[2]])),o=r;return i}),o=[],i=[-1,0,0,1,0,1,4,5];t.forEach(function(n,r){for(var e=uo[r],u=e.length,a=o[r]=[],c=0;c<u;++c)t.push([e[c],n[(2*c+2)%(2*u)],n[(2*c+1)%(2*u)]]),i.push(r),a.push(nr(er(n[(2*c+2)%(2*u)]),er(n[(2*c+1)%(2*u)])))});var u=t.map(function(r){return{project:n(r),face:r}});return i.forEach(function(n,r){var e=u[n];e&&(e.children||(e.children=[])).push(u[r])}),oo(u[0],e).scale(110.625).center([0,45])},go=function(){},vo=function(n){if((r=n.length)<4)return!1;for(var r,e=0,t=n[r-1][1]*n[0][0]-n[r-1][0]*n[0][1];++e<r;)t+=n[e-1][1]*n[e][0]-n[e-1][0]*n[e][1];return t<=0},so=function(n,r){for(var e=r[0],t=r[1],o=!1,i=0,u=n.length,a=u-1;i<u;a=i++){var c=n[i],f=c[0],l=c[1],g=n[a],v=g[0],s=g[1];l>t^s>t&&e<(v-f)*(t-l)/(s-l)+f&&(o=!o)}return o},po=function(n,r){var e,t=r.stream;if(!t)throw new Error("invalid projection");switch(n&&n.type){case"Feature":e=or;break;case"FeatureCollection":e=tr;break;default:e=ur}return e(n,t)},ho=[],wo=[],yo={point:function(n,r){ho.push([n,r])},result:function(){var n=ho.length?ho.length<2?{type:"Point",coordinates:ho[0]}:{type:"MultiPoint",coordinates:ho}:null;return ho=[],n}},Po={lineStart:go,point:function(n,r){ho.push([n,r])},lineEnd:function(){ho.length&&(wo.push(ho),ho=[])},result:function(){var n=wo.length?wo.length<2?{type:"LineString",coordinates:wo[0]}:{type:"MultiLineString",coordinates:wo}:null;return wo=[],n}},mo={polygonStart:go,lineStart:go,point:function(n,r){ho.push([n,r])},lineEnd:function(){var n=ho.length;if(n){do{ho.push(ho[0].slice())}while(++n<4);wo.push(ho),ho=[]}},polygonEnd:go,result:function(){if(!wo.length)return null;var n=[],r=[];return wo.forEach(function(e){vo(e)?n.push([e]):r.push(e)}),r.forEach(function(r){var e=r[0];n.some(function(n){if(so(n[0],e))return n.push(r),!0})||n.push([r])}),wo=[],n.length?n.length>1?{type:"MultiPolygon",coordinates:n}:{type:"Polygon",coordinates:n[0]}:null}},Ro=function(n){function e(r,e){var o=qr(r)<Zr,i=n(o?r:r>0?r-Yr:r+Yr,e),u=(i[0]-i[1])*ne,a=(i[0]+i[1])*ne;if(o)return[u,a];var c=t*ne,f=u>0^a>0?-1:1;return[f*u-Kr(a)*c,f*a-Kr(u)*c]}var t=n(Zr,0)[0]-n(-Zr,0)[0];return n.invert&&(e.invert=function(r,e){var o=(r+e)*ne,i=(e-r)*ne,u=qr(o)<.5*t&&qr(i)<.5*t;if(!u){var a=t*ne,c=o>0^i>0?-1:1,f=-c*r+(i>0?1:-1)*a,l=-c*e+(o>0?1:-1)*a;o=(-f-l)*ne,i=(f-l)*ne}var g=n.invert(o,i);return u||(g[0]+=o>0?Yr:-Yr),g}),r.geoProjection(e).rotate([-90,-90,45]).clipAngle(179.999)},bo=function(){return Ro(Y).scale(176.423)},jo=function(){return Ro(on).scale(111.48)},Mo=function(n,r){function e(n){var e=n.length,t=2,o=new Array(e);for(o[0]=+n[0].toFixed(r),o[1]=+n[1].toFixed(r);t<e;)o[t]=n[t],++t;return o}function t(n){return n.map(e)}function o(n){return n.map(t)}function i(n){if(null==n)return n;var r;switch(n.type){case"GeometryCollection":r={type:"GeometryCollection",geometries:n.geometries.map(i)};break;case"Point":r={type:"Point",coordinates:e(n.coordinates)};break;case"MultiPoint":case"LineString":r={type:n.type,coordinates:t(n.coordinates)};break;case"MultiLineString":case"Polygon":r={type:n.type,coordinates:o(n.coordinates)};break;case"MultiPolygon":r={type:"MultiPolygon",coordinates:n.coordinates.map(o)};break;default:return n}return null!=n.bbox&&(r.bbox=n.bbox),r}function u(n){var r={type:"Feature",properties:n.properties,geometry:i(n.geometry)};return null!=n.id&&(r.id=n.id),null!=n.bbox&&(r.bbox=n.bbox),r}if(!(0<=(r=+r)&&r<=20))throw new Error("invalid digits");if(null!=n)switch(n.type){case"Feature":return u(n);case"FeatureCollection":var a={type:"FeatureCollection",features:n.features.map(u)};return null!=n.bbox&&(a.bbox=n.bbox),a;default:return i(n)}return n},Eo=function(){return Pe(ar).scale(131.215)},Ao=[[.9986,-.062],[1,0],[.9986,.062],[.9954,.124],[.99,.186],[.9822,.248],[.973,.31],[.96,.372],[.9427,.434],[.9216,.4958],[.8962,.5571],[.8679,.6176],[.835,.6769],[.7986,.7346],[.7597,.7903],[.7186,.8435],[.6732,.8936],[.6213,.9394],[.5722,.9761],[.5322,1]];Ao.forEach(function(n){n[1]*=1.0144}),cr.invert=function(n,r){var e=r/Zr,t=90*e,o=Vr(18,qr(t/5)),i=Qr(0,Tr(o));do{var u=Ao[i][1],a=Ao[i+1][1],c=Ao[Vr(19,i+2)][1],f=c-u,l=c-2*a+u,g=2*(qr(e)-a)/f,v=l/f,s=g*(1-v*g*(1-2*v*g));if(s>=0||1===i){t=(r>=0?5:-5)*(s+o);var p,h=50;do{o=Vr(18,qr(t)/5),i=Tr(o),s=o-i,u=Ao[i][1],a=Ao[i+1][1],c=Ao[Vr(19,i+2)][1],t-=(p=(r>=0?Zr:-Zr)*(a+s*(c-u)/2+s*s*(c-2*a+u)/2)-r)*oe}while(qr(p)>Xr&&--h>0);break}}while(--i>=0);var d=Ao[i][0],w=Ao[i+1][0],y=Ao[Vr(19,i+2)][0];return[n/(w+s*(y-d)/2+s*s*(y-2*w+d)/2),t*ie]};var So=function(){return r.geoProjection(cr).scale(152.63)},ko=function(){var n=2,e=0,t=r.geoProjectionMutator(lr),o=t(n,e);return o.distance=function(r){return arguments.length?t(n=+r,e):n},o.tilt=function(r){return arguments.length?t(n,e=r*ie):e*oe},o.scale(432.147).clipAngle(i(1/n)*oe-1e-6)},xo=1e4,Go=-180,Co=Go+1e-4,zo=180,Fo=zo-1e-4,Lo=-90,qo=Lo+1e-4,Bo=90,Ho=Bo-1e-4,Io=function(n){if(null==n)return n;switch(n.type){case"Feature":return yr(n);case"FeatureCollection":var r={type:"FeatureCollection",features:n.features.map(yr)};return null!=n.bbox&&(r.bbox=n.bbox),r;default:return Pr(n)}};mr.invert=function(n,r){var e=r/1.70711,t=Or($r*e);return[n/(.74482-.34588*t*t),2*Br(e)]};var Wo=function(){return r.geoProjection(mr).scale(146.153)},To=function(n,e,t){var i=r.geoInterpolate(e,t),u=i(.5),a=r.geoRotation([-u[0],-u[1]])(e),c=i.distance/2,f=-o(Or(a[1]*ie)/Or(c)),l=[-u[0],-u[1],-(a[0]>0?Yr-f:f)*oe],g=r.geoProjection(n(c)).rotate(l),v=r.geoRotation(l),s=g.center;return delete g.rotate,g.center=function(n){return arguments.length?s(v(n)):v.invert(s())},g.clipAngle(90)};Sr.invert=function(n,r){if(qr(r)<Jr)return[n,0];if(qr(n)<Jr)return[0,Zr*Or(2*Br(r/Yr))];var e=(n/=Yr)*n,t=(r/=Yr)*r,o=e+t,a=o*o,c=-qr(r)*(1+o),f=c-2*t+e,l=-2*c+1+2*t+a,g=t/l+(2*f*f*f/(l*l*l)-9*c*f/(l*l))/27,v=(c-f*f/(3*l))/l,s=2*u(-v/3),p=i(3*g/(v*s))/3;return[Yr*(o-1+u(1+2*(e-t)+a))/(2*n),Kr(r)*Yr*(-s*Ir(p+Yr/3)-f/(3*l))]};var Do=function(){return r.geoProjection(Sr).scale(79.4183)};kr.invert=function(n,r){if(!n)return[0,Zr*Or(2*Br(r/Yr))];var e=qr(n/Yr),t=(1-e*e-(r/=Yr)*r)/(2*e),o=t*t,i=u(o+1);return[Kr(n)*Yr*(i-t),Kr(r)*Zr*Or(2*Hr(u((1-2*t*e)*(t+i)-e),u(i+t+e)))]};var Qo=function(){return r.geoProjection(kr).scale(79.4183)};xr.invert=function(n,r){if(!r)return[n,0];var e=r/Yr,t=(Yr*Yr*(1-e*e)-n*n)/(2*Yr*n);return[n?Yr*(Kr(n)*u(t*t+1)-t):0,Zr*Or(2*Br(e))]};var Vo=function(){return r.geoProjection(xr).scale(79.4183)};Gr.invert=function(n,r){var e;if(!n||!r)return[n,r];r/=Yr;var t=Kr(n)*n/Zr,o=(t*t-1+4*r*r)/qr(t),i=o*o,a=2*r,c=50;do{var f=a*a,l=(8*a-f*(f+2)-5)/(2*f*(a-1)),g=(3*a-f*a-10)/(2*f*a),v=l*l,s=a*l,p=a+l,h=p*p,d=a+3*l,w=h*(f+v*i-1)+(1-f)*(f*(d*d+4*v)+v*(12*s+4*v)),y=-2*p*(4*s*v+(1-4*f+3*f*f)*(1+g)+v*(14*f-6-i+(8*f-8-2*i)*g)+s*(12*f-8+(10*f-10-i)*g)),P=u(w);a-=e=(o*(h+v-1)+2*P-t*(4*h+i))/(o*(2*l*g+2*p*(1+g))+y/P-8*p*(o*(-1+v+h)+2*P)*(1+g)/(i+4*h))}while(e>Jr&&--c>0);return[Kr(n)*(u(o*o+4)+o)*Yr/4,Zr*a]};var No=function(){return r.geoProjection(Gr).scale(127.16)},_o=4*Yr+3*u(3),Ko=2*u(2*Yr*u(3)/_o),Oo=P(Ko*u(3)/Yr,Ko,_o/6),Uo=function(){return r.geoProjection(Oo).scale(176.84)};Cr.invert=function(n,r){return[n/u(1-3*r*r/(Yr*Yr)),r]};var Jo=function(){return r.geoProjection(Cr).scale(152.63)};zr.invert=function(n,r){var e=n/2.66723,t=r/1.24104,i=u(e*e+t*t),a=2*o(i/2);return[3*Hr(n*Ur(a),2.66723*i),i&&o(r*Or(a)/(1.24104*.90631*i))]};var Xo=function(){return r.geoProjection(zr).scale(172.632)};Fr.invert=function(n,r){var e=(n*n+r*r)/-2,t=u(-e*(2+e)),i=r*e+n*t,a=n*e-r*t,c=u(a*a+i*i);return[Hr(t*i,c*(1+e)),c?-o(t*a/c):0]};var Yo=function(){return r.geoProjection(Fr).rotate([0,-90,45]).scale(124.75).clipAngle(179.999)};Lr.invert=function(n,r){var e=n,t=r,o=25;do{var a,c=Ir(t),f=Or(t),l=Or(2*t),g=f*f,v=c*c,s=Or(e),p=Ir(e/2),h=Or(e/2),d=h*h,w=1-v*p*p,y=w?i(c*p)*u(a=1/w):a=0,P=.5*(2*y*c*h+e/Zr)-n,m=.5*(y*f+t)-r,R=.5*a*(v*d+y*c*p*g)+.5/Zr,b=a*(s*l/4-y*f*h),j=.125*a*(l*h-y*f*v*s),M=.5*a*(g*p+y*d*c)+.5,E=b*j-M*R,A=(m*b-P*M)/E,S=(P*j-m*R)/E;e-=A,t-=S}while((qr(A)>Jr||qr(S)>Jr)&&--o>0);return[e,t]};var Zo=function(){return r.geoProjection(Lr).scale(158.837)};n.geoAiry=ue,n.geoAiryRaw=v,n.geoAitoff=ae,n.geoAitoffRaw=s,n.geoArmadillo=ce,n.geoArmadilloRaw=p,n.geoAugust=fe,n.geoAugustRaw=h,n.geoBaker=ve,n.geoBakerRaw=d,n.geoBerghaus=se,n.geoBerghausRaw=w,n.geoBoggs=ye,n.geoBoggsRaw=m,n.geoBonne=Re,n.geoBonneRaw=b,n.geoBottomley=be,n.geoBottomleyRaw=j,n.geoBromley=Me,n.geoBromleyRaw=je,n.geoChamberlin=G,n.geoChamberlinRaw=S,n.geoChamberlinAfrica=x,n.geoCollignon=Ee,n.geoCollignonRaw=C,n.geoCraig=Ae,n.geoCraigRaw=z,n.geoCraster=ke,n.geoCrasterRaw=F,n.geoCylindricalEqualArea=xe,n.geoCylindricalEqualAreaRaw=L,n.geoCylindricalStereographic=Ge,n.geoCylindricalStereographicRaw=q,n.geoEckert1=Ce,n.geoEckert1Raw=B,n.geoEckert2=ze,n.geoEckert2Raw=H,n.geoEckert3=Fe,n.geoEckert3Raw=I,n.geoEckert4=Le,n.geoEckert4Raw=W,n.geoEckert5=qe,n.geoEckert5Raw=T,n.geoEckert6=Be,n.geoEckert6Raw=D,n.geoEisenlohr=Ie,n.geoEisenlohrRaw=Q,n.geoFahey=Te,n.geoFaheyRaw=V,n.geoFoucaut=De,n.geoFoucautRaw=N,n.geoGilbert=Qe,n.geoGingery=Ve,n.geoGingeryRaw=O,n.geoGinzburg4=Ke,n.geoGinzburg4Raw=_e,n.geoGinzburg5=Ue,n.geoGinzburg5Raw=Oe,n.geoGinzburg6=Xe,n.geoGinzburg6Raw=Je,n.geoGinzburg8=Ye,n.geoGinzburg8Raw=X,n.geoGinzburg9=$e,n.geoGinzburg9Raw=Ze,n.geoGringorten=rt,n.geoGringortenRaw=Y,n.geoGuyou=et,n.geoGuyouRaw=on,n.geoHammer=tt,n.geoHammerRaw=cn,n.geoHammerRetroazimuthal=ot,n.geoHammerRetroazimuthalRaw=ln,n.geoHealpix=at,n.geoHealpixRaw=vn,n.geoHill=ct,n.geoHillRaw=pn,n.geoHomolosine=vt,n.geoHomolosineRaw=dn,n.geoInterrupt=st,n.geoInterruptedBoggs=ht,n.geoInterruptedHomolosine=wt,n.geoInterruptedMollweide=Pt,n.geoInterruptedMollweideHemispheres=Rt,n.geoInterruptedSinuMollweide=jt,n.geoInterruptedSinusoidal=Et,n.geoKavrayskiy7=At,n.geoKavrayskiy7Raw=mn,n.geoLagrange=St,n.geoLagrangeRaw=Rn,n.geoLarrivee=xt,n.geoLarriveeRaw=bn,n.geoLaskowski=Gt,n.geoLaskowskiRaw=jn,n.geoLittrow=Ct,n.geoLittrowRaw=Mn,n.geoLoximuthal=zt,n.geoLoximuthalRaw=En,n.geoMiller=Ft,n.geoMillerRaw=An,n.geoModifiedStereographic=Fn,n.geoModifiedStereographicRaw=Sn,n.geoModifiedStereographicAlaska=kn,n.geoModifiedStereographicGs48=xn,n.geoModifiedStereographicGs50=Gn,n.geoModifiedStereographicMiller=Cn,n.geoModifiedStereographicLee=zn,n.geoMollweide=he,n.geoMollweideRaw=pe,n.geoMtFlatPolarParabolic=Dt,n.geoMtFlatPolarParabolicRaw=Ln,n.geoMtFlatPolarQuartic=Qt,n.geoMtFlatPolarQuarticRaw=qn,n.geoMtFlatPolarSinusoidal=Vt,n.geoMtFlatPolarSinusoidalRaw=Bn,n.geoNaturalEarth=Nt,n.geoNaturalEarthRaw=Hn,n.geoNaturalEarth2=_t,n.geoNaturalEarth2Raw=In,n.geoNellHammer=Kt,n.geoNellHammerRaw=Wn,n.geoPatterson=ro,n.geoPattersonRaw=Tn,n.geoPolyconic=eo,n.geoPolyconicRaw=Dn,n.geoPolyhedral=oo,n.geoPolyhedralButterfly=ao,n.geoPolyhedralCollignon=fo,n.geoPolyhedralWaterman=lo,n.geoProject=po,n.geoGringortenQuincuncial=bo,n.geoPeirceQuincuncial=jo,n.geoPierceQuincuncial=jo,n.geoQuantize=Mo,n.geoQuincuncial=Ro,n.geoRectangularPolyconic=Eo,n.geoRectangularPolyconicRaw=ar,n.geoRobinson=So,n.geoRobinsonRaw=cr,n.geoSatellite=ko,n.geoSatelliteRaw=lr,n.geoSinuMollweide=gt,n.geoSinuMollweideRaw=hn,n.geoSinusoidal=me,n.geoSinusoidalRaw=R,n.geoStitch=Io,n.geoTimes=Wo,n.geoTimesRaw=mr,n.geoTwoPointAzimuthal=jr,n.geoTwoPointAzimuthalRaw=Rr,n.geoTwoPointAzimuthalUsa=br,n.geoTwoPointEquidistant=Ar,n.geoTwoPointEquidistantRaw=Mr,n.geoTwoPointEquidistantUsa=Er,n.geoVanDerGrinten=Do,n.geoVanDerGrintenRaw=Sr,n.geoVanDerGrinten2=Qo,n.geoVanDerGrinten2Raw=kr,n.geoVanDerGrinten3=Vo,n.geoVanDerGrinten3Raw=xr,n.geoVanDerGrinten4=No,n.geoVanDerGrinten4Raw=Gr,n.geoWagner4=Uo,n.geoWagner4Raw=Oo,n.geoWagner6=Jo,n.geoWagner6Raw=Cr,n.geoWagner7=Xo,n.geoWagner7Raw=zr,n.geoWiechel=Yo,n.geoWiechelRaw=Fr,n.geoWinkel3=Zo,n.geoWinkel3Raw=Lr,Object.defineProperty(n,"__esModule",{value:!0})}); |