@motionscript/geo 0.0.0-stage → 0.1.0-alpha.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/CHANGELOG.md +21 -0
  2. package/LICENSE +201 -0
  3. package/dist/border/format.d.ts +73 -0
  4. package/dist/border/format.d.ts.map +1 -0
  5. package/dist/border/format.js +68 -0
  6. package/dist/border/format.js.map +1 -0
  7. package/dist/border/geo-border.d.ts +44 -0
  8. package/dist/border/geo-border.d.ts.map +1 -0
  9. package/dist/border/geo-border.js +234 -0
  10. package/dist/border/geo-border.js.map +1 -0
  11. package/dist/border/geometry.d.ts +40 -0
  12. package/dist/border/geometry.d.ts.map +1 -0
  13. package/dist/border/geometry.js +382 -0
  14. package/dist/border/geometry.js.map +1 -0
  15. package/dist/border/index.d.ts +15 -0
  16. package/dist/border/index.d.ts.map +1 -0
  17. package/dist/border/index.js +15 -0
  18. package/dist/border/index.js.map +1 -0
  19. package/dist/border/loader.d.ts +31 -0
  20. package/dist/border/loader.d.ts.map +1 -0
  21. package/dist/border/loader.js +87 -0
  22. package/dist/border/loader.js.map +1 -0
  23. package/dist/border/registry.d.ts +64 -0
  24. package/dist/border/registry.d.ts.map +1 -0
  25. package/dist/border/registry.js +152 -0
  26. package/dist/border/registry.js.map +1 -0
  27. package/dist/border/selection.d.ts +21 -0
  28. package/dist/border/selection.d.ts.map +1 -0
  29. package/dist/border/selection.js +86 -0
  30. package/dist/border/selection.js.map +1 -0
  31. package/dist/border/simplify.d.ts +12 -0
  32. package/dist/border/simplify.d.ts.map +1 -0
  33. package/dist/border/simplify.js +116 -0
  34. package/dist/border/simplify.js.map +1 -0
  35. package/dist/browser/index.js +25 -0
  36. package/dist/browser/index.js.map +7 -0
  37. package/dist/browser/manifest.json +11 -0
  38. package/dist/globe/atmosphere.d.ts +38 -0
  39. package/dist/globe/atmosphere.d.ts.map +1 -0
  40. package/dist/globe/atmosphere.js +91 -0
  41. package/dist/globe/atmosphere.js.map +1 -0
  42. package/dist/globe/borders.d.ts +39 -0
  43. package/dist/globe/borders.d.ts.map +1 -0
  44. package/dist/globe/borders.js +116 -0
  45. package/dist/globe/borders.js.map +1 -0
  46. package/dist/globe/data/ne-110m.d.ts +25 -0
  47. package/dist/globe/data/ne-110m.d.ts.map +1 -0
  48. package/dist/globe/data/ne-110m.js +198 -0
  49. package/dist/globe/data/ne-110m.js.map +1 -0
  50. package/dist/globe/globe-places.d.ts +140 -0
  51. package/dist/globe/globe-places.d.ts.map +1 -0
  52. package/dist/globe/globe-places.js +262 -0
  53. package/dist/globe/globe-places.js.map +1 -0
  54. package/dist/globe/globe.d.ts +193 -0
  55. package/dist/globe/globe.d.ts.map +1 -0
  56. package/dist/globe/globe.js +435 -0
  57. package/dist/globe/globe.js.map +1 -0
  58. package/dist/globe/index.d.ts +17 -0
  59. package/dist/globe/index.d.ts.map +1 -0
  60. package/dist/globe/index.js +17 -0
  61. package/dist/globe/index.js.map +1 -0
  62. package/dist/globe/places.d.ts +69 -0
  63. package/dist/globe/places.d.ts.map +1 -0
  64. package/dist/globe/places.js +94 -0
  65. package/dist/globe/places.js.map +1 -0
  66. package/dist/globe/projection.d.ts +182 -0
  67. package/dist/globe/projection.d.ts.map +1 -0
  68. package/dist/globe/projection.js +215 -0
  69. package/dist/globe/projection.js.map +1 -0
  70. package/dist/globe/world-map.d.ts +83 -0
  71. package/dist/globe/world-map.d.ts.map +1 -0
  72. package/dist/globe/world-map.js +169 -0
  73. package/dist/globe/world-map.js.map +1 -0
  74. package/dist/globe/world.d.ts +46 -0
  75. package/dist/globe/world.d.ts.map +1 -0
  76. package/dist/globe/world.js +71 -0
  77. package/dist/globe/world.js.map +1 -0
  78. package/dist/index.d.ts +5 -0
  79. package/dist/index.d.ts.map +1 -0
  80. package/dist/index.js +6 -0
  81. package/dist/index.js.map +1 -0
  82. package/dist/nodes.d.ts +19 -0
  83. package/dist/nodes.d.ts.map +1 -0
  84. package/dist/nodes.js +19 -0
  85. package/dist/nodes.js.map +1 -0
  86. package/package.json +69 -3
  87. package/registry.json +31 -0
  88. package/src/border/format.ts +147 -0
  89. package/src/border/geo-border.ts +260 -0
  90. package/src/border/geometry.ts +463 -0
  91. package/src/border/index.ts +14 -0
  92. package/src/border/loader.ts +97 -0
  93. package/src/border/registry.ts +191 -0
  94. package/src/border/selection.ts +95 -0
  95. package/src/border/simplify.ts +110 -0
  96. package/src/globe/atmosphere.ts +98 -0
  97. package/src/globe/borders.ts +166 -0
  98. package/src/globe/data/ne-110m.ts +214 -0
  99. package/src/globe/globe-places.ts +352 -0
  100. package/src/globe/globe.ts +552 -0
  101. package/src/globe/index.ts +16 -0
  102. package/src/globe/places.ts +132 -0
  103. package/src/globe/projection.ts +261 -0
  104. package/src/globe/world-map.ts +227 -0
  105. package/src/globe/world.ts +111 -0
  106. package/src/index.ts +5 -0
  107. package/src/nodes.ts +19 -0
  108. package/README.md +0 -4
@@ -0,0 +1,25 @@
1
+ var J=class{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){let e=this._partials,r=0;for(let o=0;o<this._n&&o<32;o++){let i=e[o],s=t+i,a=Math.abs(t)<Math.abs(i)?t-(s-i):i-(s-t);a&&(e[r++]=a),t=s}return e[r]=t,this._n=r+1,this}valueOf(){let t=this._partials,e=this._n,r,o,i,s=0;if(e>0){for(s=t[--e];e>0&&(r=s,o=t[--e],s=r+o,i=o-(s-r),!i););e>0&&(i<0&&t[e-1]<0||i>0&&t[e-1]>0)&&(o=i*2,r=s+o,o==r-s&&(s=r))}return s}};function*So(n){for(let t of n)yield*t}function Sn(n){return Array.from(So(n))}var B=1e-6,Se=1e-12,j=Math.PI,U=j/2,Dn=j/4,K=j*2,T=180/j,M=j/180,E=Math.abs,st=Math.atan,Y=Math.atan2,z=Math.cos;var De=Math.exp;var Re=Math.log;var q=Math.sin,Rn=Math.sign||function(n){return n>0?1:n<0?-1:0},Q=Math.sqrt,Ie=Math.tan;function Fe(n){return n>1?0:n<-1?j:Math.acos(n)}function X(n){return n>1?U:n<-1?-U:Math.asin(n)}function G(){}function ft(n,t){n&&Ne.hasOwnProperty(n.type)&&Ne[n.type](n,t)}var Pe={Feature:function(n,t){ft(n.geometry,t)},FeatureCollection:function(n,t){for(var e=n.features,r=-1,o=e.length;++r<o;)ft(e[r].geometry,t)}},Ne={Sphere:function(n,t){t.sphere()},Point:function(n,t){n=n.coordinates,t.point(n[0],n[1],n[2])},MultiPoint:function(n,t){for(var e=n.coordinates,r=-1,o=e.length;++r<o;)n=e[r],t.point(n[0],n[1],n[2])},LineString:function(n,t){Ft(n.coordinates,t,0)},MultiLineString:function(n,t){for(var e=n.coordinates,r=-1,o=e.length;++r<o;)Ft(e[r],t,0)},Polygon:function(n,t){Le(n.coordinates,t)},MultiPolygon:function(n,t){for(var e=n.coordinates,r=-1,o=e.length;++r<o;)Le(e[r],t)},GeometryCollection:function(n,t){for(var e=n.geometries,r=-1,o=e.length;++r<o;)ft(e[r],t)}};function Ft(n,t,e){var r=-1,o=n.length-e,i;for(t.lineStart();++r<o;)i=n[r],t.point(i[0],i[1],i[2]);t.lineEnd()}function Le(n,t){var e=-1,r=n.length;for(t.polygonStart();++e<r;)Ft(n[e],t,1);t.polygonEnd()}function Z(n,t){n&&Pe.hasOwnProperty(n.type)?Pe[n.type](n,t):ft(n,t)}var Kn=new J,ct=new J,Te,Ge,Pt,Nt,Lt,fn={point:G,lineStart:G,lineEnd:G,polygonStart:function(){Kn=new J,fn.lineStart=Do,fn.lineEnd=Ro},polygonEnd:function(){var n=+Kn;ct.add(n<0?K+n:n),this.lineStart=this.lineEnd=this.point=G},sphere:function(){ct.add(K)}};function Do(){fn.point=Io}function Ro(){Oe(Te,Ge)}function Io(n,t){fn.point=Oe,Te=n,Ge=t,n*=M,t*=M,Pt=n,Nt=z(t=t/2+Dn),Lt=q(t)}function Oe(n,t){n*=M,t*=M,t=t/2+Dn;var e=n-Pt,r=e>=0?1:-1,o=r*e,i=z(t),s=q(t),a=Lt*s,c=Nt*i+a*z(o),l=a*r*q(o);Kn.add(Y(l,c)),Pt=n,Nt=i,Lt=s}function kn(n){return ct=new J,Z(n,fn),ct*2}function Bn(n){return[Y(n[1],n[0]),X(n[2])]}function sn(n){var t=n[0],e=n[1],r=z(e);return[r*z(t),r*q(t),q(e)]}function Jn(n,t){return n[0]*t[0]+n[1]*t[1]+n[2]*t[2]}function mn(n,t){return[n[1]*t[2]-n[2]*t[1],n[2]*t[0]-n[0]*t[2],n[0]*t[1]-n[1]*t[0]]}function lt(n,t){n[0]+=t[0],n[1]+=t[1],n[2]+=t[2]}function Wn(n,t){return[n[0]*t,n[1]*t,n[2]*t]}function jn(n){var t=Q(n[0]*n[0]+n[1]*n[1]+n[2]*n[2]);n[0]/=t,n[1]/=t,n[2]/=t}var O,en,H,on,qn,Je,We,In,Un,bn,_n,hn={point:Tt,lineStart:He,lineEnd:Ve,polygonStart:function(){hn.point=Qe,hn.lineStart=Fo,hn.lineEnd=Po,Un=new J,fn.polygonStart()},polygonEnd:function(){fn.polygonEnd(),hn.point=Tt,hn.lineStart=He,hn.lineEnd=Ve,Kn<0?(O=-(H=180),en=-(on=90)):Un>B?on=90:Un<-B&&(en=-90),_n[0]=O,_n[1]=H},sphere:function(){O=-(H=180),en=-(on=90)}};function Tt(n,t){bn.push(_n=[O=n,H=n]),t<en&&(en=t),t>on&&(on=t)}function Ue(n,t){var e=sn([n*M,t*M]);if(In){var r=mn(In,e),o=[r[1],-r[0],0],i=mn(o,r);jn(i),i=Bn(i);var s=n-qn,a=s>0?1:-1,c=i[0]*T*a,l,f=E(s)>180;f^(a*qn<c&&c<a*n)?(l=i[1]*T,l>on&&(on=l)):(c=(c+360)%360-180,f^(a*qn<c&&c<a*n)?(l=-i[1]*T,l<en&&(en=l)):(t<en&&(en=t),t>on&&(on=t))),f?n<qn?rn(O,n)>rn(O,H)&&(H=n):rn(n,H)>rn(O,H)&&(O=n):H>=O?(n<O&&(O=n),n>H&&(H=n)):n>qn?rn(O,n)>rn(O,H)&&(H=n):rn(n,H)>rn(O,H)&&(O=n)}else bn.push(_n=[O=n,H=n]);t<en&&(en=t),t>on&&(on=t),In=e,qn=n}function He(){hn.point=Ue}function Ve(){_n[0]=O,_n[1]=H,hn.point=Tt,In=null}function Qe(n,t){if(In){var e=n-qn;Un.add(E(e)>180?e+(e>0?360:-360):e)}else Je=n,We=t;fn.point(n,t),Ue(n,t)}function Fo(){fn.lineStart()}function Po(){Qe(Je,We),fn.lineEnd(),E(Un)>B&&(O=-(H=180)),_n[0]=O,_n[1]=H,In=null}function rn(n,t){return(t-=n)<0?t+360:t}function No(n,t){return n[0]-t[0]}function Ke(n,t){return n[0]<=n[1]?n[0]<=t&&t<=n[1]:t<n[0]||n[1]<t}function Gt(n){var t,e,r,o,i,s,a;if(on=H=-(O=en=1/0),bn=[],Z(n,hn),e=bn.length){for(bn.sort(No),t=1,r=bn[0],i=[r];t<e;++t)o=bn[t],Ke(r,o[0])||Ke(r,o[1])?(rn(r[0],o[1])>rn(r[0],r[1])&&(r[1]=o[1]),rn(o[0],r[1])>rn(r[0],r[1])&&(r[0]=o[0])):i.push(r=o);for(s=-1/0,e=i.length-1,t=0,r=i[e];t<=e;r=o,++t)o=i[t],(a=rn(r[1],o[0]))>s&&(s=a,O=o[0],H=r[1])}return bn=_n=null,O===1/0||en===1/0?[[NaN,NaN],[NaN,NaN]]:[[O,en],[H,on]]}function Qn(n,t){function e(r,o){return r=n(r,o),t(r[0],r[1])}return n.invert&&t.invert&&(e.invert=function(r,o){return r=t.invert(r,o),r&&n.invert(r[0],r[1])}),e}function Ot(n,t){return E(n)>j&&(n-=Math.round(n/K)*K),[n,t]}Ot.invert=Ot;function Ht(n,t,e){return(n%=K)?t||e?Qn(Ye(n),Ze(t,e)):Ye(n):t||e?Ze(t,e):Ot}function Xe(n){return function(t,e){return t+=n,E(t)>j&&(t-=Math.round(t/K)*K),[t,e]}}function Ye(n){var t=Xe(n);return t.invert=Xe(-n),t}function Ze(n,t){var e=z(n),r=q(n),o=z(t),i=q(t);function s(a,c){var l=z(c),f=z(a)*l,u=q(a)*l,A=q(c),p=A*e+f*r;return[Y(u*o-p*i,f*e-A*r),X(p*o+u*i)]}return s.invert=function(a,c){var l=z(c),f=z(a)*l,u=q(a)*l,A=q(c),p=A*o-u*i;return[Y(u*o+A*i,f*e+p*r),X(p*e-f*r)]},s}function $e(n){n=Ht(n[0]*M,n[1]*M,n.length>2?n[2]*M:0);function t(e){return e=n(e[0]*M,e[1]*M),e[0]*=T,e[1]*=T,e}return t.invert=function(e){return e=n.invert(e[0]*M,e[1]*M),e[0]*=T,e[1]*=T,e},t}function tr(n,t,e,r,o,i){if(e){var s=z(t),a=q(t),c=r*e;o==null?(o=t+r*K,i=t-c/2):(o=nr(s,o),i=nr(s,i),(r>0?o<i:o>i)&&(o+=r*K));for(var l,f=o;r>0?f>i:f<i;f-=c)l=Bn([s,-a*z(f),-a*q(f)]),n.point(l[0],l[1])}}function nr(n,t){t=sn(t),t[0]-=n,jn(t);var e=Fe(-t[1]);return((-t[2]<0?-e:e)+K-B)%K}function ut(){var n=[],t;return{point:function(e,r,o){t.push([e,r,o])},lineStart:function(){n.push(t=[])},lineEnd:G,rejoin:function(){n.length>1&&n.push(n.pop().concat(n.shift()))},result:function(){var e=n;return n=[],t=null,e}}}function Fn(n,t){return E(n[0]-t[0])<B&&E(n[1]-t[1])<B}function At(n,t,e,r){this.x=n,this.z=t,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function dt(n,t,e,r,o){var i=[],s=[],a,c;if(n.forEach(function(d){if(!((b=d.length-1)<=0)){var b,y=d[0],x=d[b],g;if(Fn(y,x)){if(!y[2]&&!x[2]){for(o.lineStart(),a=0;a<b;++a)o.point((y=d[a])[0],y[1]);o.lineEnd();return}x[0]+=2*B}i.push(g=new At(y,d,null,!0)),s.push(g.o=new At(y,null,g,!1)),i.push(g=new At(x,d,null,!1)),s.push(g.o=new At(x,null,g,!0))}}),!!i.length){for(s.sort(t),er(i),er(s),a=0,c=s.length;a<c;++a)s[a].e=e=!e;for(var l=i[0],f,u;;){for(var A=l,p=!0;A.v;)if((A=A.n)===l)return;f=A.z,o.lineStart();do{if(A.v=A.o.v=!0,A.e){if(p)for(a=0,c=f.length;a<c;++a)o.point((u=f[a])[0],u[1]);else r(A.x,A.n.x,1,o);A=A.n}else{if(p)for(f=A.p.z,a=f.length-1;a>=0;--a)o.point((u=f[a])[0],u[1]);else r(A.x,A.p.x,-1,o);A=A.p}A=A.o,f=A.z,p=!p}while(!A.v);o.lineEnd()}}}function er(n){if(t=n.length){for(var t,e=0,r=n[0],o;++e<t;)r.n=o=n[e],o.p=r,r=o;r.n=o=n[0],o.p=r}}function Vt(n){return E(n[0])<=j?n[0]:Rn(n[0])*((E(n[0])+j)%K-j)}function rr(n,t){var e=Vt(t),r=t[1],o=q(r),i=[q(e),-z(e),0],s=0,a=0,c=new J;o===1?r=U+B:o===-1&&(r=-U-B);for(var l=0,f=n.length;l<f;++l)if(A=(u=n[l]).length)for(var u,A,p=u[A-1],d=Vt(p),b=p[1]/2+Dn,y=q(b),x=z(b),g=0;g<A;++g,d=_,y=w,x=C,p=m){var m=u[g],_=Vt(m),v=m[1]/2+Dn,w=q(v),C=z(v),D=_-d,R=D>=0?1:-1,N=R*D,k=N>j,nn=y*w;if(c.add(Y(nn*R*q(N),x*C+nn*z(N))),s+=k?D+R*K:D,k^d>=e^_>=e){var V=mn(sn(p),sn(m));jn(V);var F=mn(i,V);jn(F);var h=(k^D>=0?-1:1)*X(F[2]);(r>h||r===h&&(V[0]||V[1]))&&(a+=k^D>=0?1:-1)}}return(s<-B||s<B&&c<-Se)^a&1}function pt(n,t,e,r){return function(o){var i=t(o),s=ut(),a=t(s),c=!1,l,f,u,A={point:p,lineStart:b,lineEnd:y,polygonStart:function(){A.point=x,A.lineStart=g,A.lineEnd=m,f=[],l=[]},polygonEnd:function(){A.point=p,A.lineStart=b,A.lineEnd=y,f=Sn(f);var _=rr(l,r);f.length?(c||(o.polygonStart(),c=!0),dt(f,To,_,e,o)):_&&(c||(o.polygonStart(),c=!0),o.lineStart(),e(null,null,1,o),o.lineEnd()),c&&(o.polygonEnd(),c=!1),f=l=null},sphere:function(){o.polygonStart(),o.lineStart(),e(null,null,1,o),o.lineEnd(),o.polygonEnd()}};function p(_,v){n(_,v)&&o.point(_,v)}function d(_,v){i.point(_,v)}function b(){A.point=d,i.lineStart()}function y(){A.point=p,i.lineEnd()}function x(_,v){u.push([_,v]),a.point(_,v)}function g(){a.lineStart(),u=[]}function m(){x(u[0][0],u[0][1]),a.lineEnd();var _=a.clean(),v=s.result(),w,C=v.length,D,R,N;if(u.pop(),l.push(u),u=null,!!C){if(_&1){if(R=v[0],(D=R.length-1)>0){for(c||(o.polygonStart(),c=!0),o.lineStart(),w=0;w<D;++w)o.point((N=R[w])[0],N[1]);o.lineEnd()}return}C>1&&_&2&&v.push(v.pop().concat(v.shift())),f.push(v.filter(Lo))}}return A}}function Lo(n){return n.length>1}function To(n,t){return((n=n.x)[0]<0?n[1]-U-B:U-n[1])-((t=t.x)[0]<0?t[1]-U-B:U-t[1])}var Kt=pt(function(){return!0},Go,Ho,[-j,-U]);function Go(n){var t=NaN,e=NaN,r=NaN,o;return{lineStart:function(){n.lineStart(),o=1},point:function(i,s){var a=i>0?j:-j,c=E(i-t);E(c-j)<B?(n.point(t,e=(e+s)/2>0?U:-U),n.point(r,e),n.lineEnd(),n.lineStart(),n.point(a,e),n.point(i,e),o=0):r!==a&&c>=j&&(E(t-r)<B&&(t-=r*B),E(i-a)<B&&(i-=a*B),e=Oo(t,e,i,s),n.point(r,e),n.lineEnd(),n.lineStart(),n.point(a,e),o=0),n.point(t=i,e=s),r=a},lineEnd:function(){n.lineEnd(),t=e=NaN},clean:function(){return 2-o}}}function Oo(n,t,e,r){var o,i,s=q(n-e);return E(s)>B?st((q(t)*(i=z(r))*q(e)-q(r)*(o=z(t))*q(n))/(o*i*s)):(t+r)/2}function Ho(n,t,e,r){var o;if(n==null)o=e*U,r.point(-j,o),r.point(0,o),r.point(j,o),r.point(j,0),r.point(j,-o),r.point(0,-o),r.point(-j,-o),r.point(-j,0),r.point(-j,o);else if(E(n[0]-t[0])>B){var i=n[0]<t[0]?j:-j;o=e*i/2,r.point(-i,o),r.point(0,o),r.point(i,o)}else r.point(t[0],t[1])}function or(n){var t=z(n),e=2*M,r=t>0,o=E(t)>B;function i(f,u,A,p){tr(p,n,e,A,f,u)}function s(f,u){return z(f)*z(u)>t}function a(f){var u,A,p,d,b;return{lineStart:function(){d=p=!1,b=1},point:function(y,x){var g=[y,x],m,_=s(y,x),v=r?_?0:l(y,x):_?l(y+(y<0?j:-j),x):0;if(!u&&(d=p=_)&&f.lineStart(),_!==p&&(m=c(u,g),(!m||Fn(u,m)||Fn(g,m))&&(g[2]=1)),_!==p)b=0,_?(f.lineStart(),m=c(g,u),f.point(m[0],m[1])):(m=c(u,g),f.point(m[0],m[1],2),f.lineEnd()),u=m;else if(o&&u&&r^_){var w;!(v&A)&&(w=c(g,u,!0))&&(b=0,r?(f.lineStart(),f.point(w[0][0],w[0][1]),f.point(w[1][0],w[1][1]),f.lineEnd()):(f.point(w[1][0],w[1][1]),f.lineEnd(),f.lineStart(),f.point(w[0][0],w[0][1],3)))}_&&(!u||!Fn(u,g))&&f.point(g[0],g[1]),u=g,p=_,A=v},lineEnd:function(){p&&f.lineEnd(),u=null},clean:function(){return b|(d&&p)<<1}}}function c(f,u,A){var p=sn(f),d=sn(u),b=[1,0,0],y=mn(p,d),x=Jn(y,y),g=y[0],m=x-g*g;if(!m)return!A&&f;var _=t*x/m,v=-t*g/m,w=mn(b,y),C=Wn(b,_),D=Wn(y,v);lt(C,D);var R=w,N=Jn(C,R),k=Jn(R,R),nn=N*N-k*(Jn(C,C)-1);if(!(nn<0)){var V=Q(nn),F=Wn(R,(-N-V)/k);if(lt(F,C),F=Bn(F),!A)return F;var h=f[0],S=u[0],W=f[1],tn=u[1],an;S<h&&(an=h,h=S,S=an);var Vn=S-h,pn=E(Vn-j)<B,xn=pn||Vn<B;if(!pn&&tn<W&&(an=W,W=tn,tn=an),xn?pn?W+tn>0^F[1]<(E(F[0]-h)<B?W:tn):W<=F[1]&&F[1]<=tn:Vn>j^(h<=F[0]&&F[0]<=S)){var gn=Wn(R,(-N+V)/k);return lt(gn,C),[F,Bn(gn)]}}}function l(f,u){var A=r?n:j-n,p=0;return f<-A?p|=1:f>A&&(p|=2),u<-A?p|=4:u>A&&(p|=8),p}return pt(s,a,i,r?[0,-n]:[-j,n-j])}function ir(n,t,e,r,o,i){var s=n[0],a=n[1],c=t[0],l=t[1],f=0,u=1,A=c-s,p=l-a,d;if(d=e-s,!(!A&&d>0)){if(d/=A,A<0){if(d<f)return;d<u&&(u=d)}else if(A>0){if(d>u)return;d>f&&(f=d)}if(d=o-s,!(!A&&d<0)){if(d/=A,A<0){if(d>u)return;d>f&&(f=d)}else if(A>0){if(d<f)return;d<u&&(u=d)}if(d=r-a,!(!p&&d>0)){if(d/=p,p<0){if(d<f)return;d<u&&(u=d)}else if(p>0){if(d>u)return;d>f&&(f=d)}if(d=i-a,!(!p&&d<0)){if(d/=p,p<0){if(d>u)return;d>f&&(f=d)}else if(p>0){if(d<f)return;d<u&&(u=d)}return f>0&&(n[0]=s+f*A,n[1]=a+f*p),u<1&&(t[0]=s+u*A,t[1]=a+u*p),!0}}}}}var Xn=1e9,gt=-Xn;function Jt(n,t,e,r){function o(l,f){return n<=l&&l<=e&&t<=f&&f<=r}function i(l,f,u,A){var p=0,d=0;if(l==null||(p=s(l,u))!==(d=s(f,u))||c(l,f)<0^u>0)do A.point(p===0||p===3?n:e,p>1?r:t);while((p=(p+u+4)%4)!==d);else A.point(f[0],f[1])}function s(l,f){return E(l[0]-n)<B?f>0?0:3:E(l[0]-e)<B?f>0?2:1:E(l[1]-t)<B?f>0?1:0:f>0?3:2}function a(l,f){return c(l.x,f.x)}function c(l,f){var u=s(l,1),A=s(f,1);return u!==A?u-A:u===0?f[1]-l[1]:u===1?l[0]-f[0]:u===2?l[1]-f[1]:f[0]-l[0]}return function(l){var f=l,u=ut(),A,p,d,b,y,x,g,m,_,v,w,C={point:D,lineStart:nn,lineEnd:V,polygonStart:N,polygonEnd:k};function D(h,S){o(h,S)&&f.point(h,S)}function R(){for(var h=0,S=0,W=p.length;S<W;++S)for(var tn=p[S],an=1,Vn=tn.length,pn=tn[0],xn,gn,at=pn[0],Mn=pn[1];an<Vn;++an)xn=at,gn=Mn,pn=tn[an],at=pn[0],Mn=pn[1],gn<=r?Mn>r&&(at-xn)*(r-gn)>(Mn-gn)*(n-xn)&&++h:Mn<=r&&(at-xn)*(r-gn)<(Mn-gn)*(n-xn)&&--h;return h}function N(){f=u,A=[],p=[],w=!0}function k(){var h=R(),S=w&&h,W=(A=Sn(A)).length;(S||W)&&(l.polygonStart(),S&&(l.lineStart(),i(null,null,1,l),l.lineEnd()),W&&dt(A,a,h,i,l),l.polygonEnd()),f=l,A=p=d=null}function nn(){C.point=F,p&&p.push(d=[]),v=!0,_=!1,g=m=NaN}function V(){A&&(F(b,y),x&&_&&u.rejoin(),A.push(u.result())),C.point=D,_&&f.lineEnd()}function F(h,S){var W=o(h,S);if(p&&d.push([h,S]),v)b=h,y=S,x=W,v=!1,W&&(f.lineStart(),f.point(h,S));else if(W&&_)f.point(h,S);else{var tn=[g=Math.max(gt,Math.min(Xn,g)),m=Math.max(gt,Math.min(Xn,m))],an=[h=Math.max(gt,Math.min(Xn,h)),S=Math.max(gt,Math.min(Xn,S))];ir(tn,an,n,t,e,r)?(_||(f.lineStart(),f.point(tn[0],tn[1])),f.point(an[0],an[1]),W||f.lineEnd(),w=!1):W&&(f.lineStart(),f.point(h,S),w=!1)}g=h,m=S,_=W}return C}}var Yn=n=>n;var Wt=new J,Ut=new J,ar,sr,Qt,Xt,vn={point:G,lineStart:G,lineEnd:G,polygonStart:function(){vn.lineStart=Vo,vn.lineEnd=Jo},polygonEnd:function(){vn.lineStart=vn.lineEnd=vn.point=G,Wt.add(E(Ut)),Ut=new J},result:function(){var n=Wt/2;return Wt=new J,n}};function Vo(){vn.point=Ko}function Ko(n,t){vn.point=fr,ar=Qt=n,sr=Xt=t}function fr(n,t){Ut.add(Xt*n-Qt*t),Qt=n,Xt=t}function Jo(){fr(ar,sr)}var Yt=vn;var Pn=1/0,mt=Pn,Zn=-Pn,ht=Zn,Wo={point:Uo,lineStart:G,lineEnd:G,polygonStart:G,polygonEnd:G,result:function(){var n=[[Pn,mt],[Zn,ht]];return Zn=ht=-(mt=Pn=1/0),n}};function Uo(n,t){n<Pn&&(Pn=n),n>Zn&&(Zn=n),t<mt&&(mt=t),t>ht&&(ht=t)}var Nn=Wo;var Zt=0,$t=0,$n=0,_t=0,yt=0,Ln=0,ne=0,te=0,nt=0,ur,Ar,ln,un,cn={point:zn,lineStart:cr,lineEnd:lr,polygonStart:function(){cn.lineStart=Yo,cn.lineEnd=Zo},polygonEnd:function(){cn.point=zn,cn.lineStart=cr,cn.lineEnd=lr},result:function(){var n=nt?[ne/nt,te/nt]:Ln?[_t/Ln,yt/Ln]:$n?[Zt/$n,$t/$n]:[NaN,NaN];return Zt=$t=$n=_t=yt=Ln=ne=te=nt=0,n}};function zn(n,t){Zt+=n,$t+=t,++$n}function cr(){cn.point=Qo}function Qo(n,t){cn.point=Xo,zn(ln=n,un=t)}function Xo(n,t){var e=n-ln,r=t-un,o=Q(e*e+r*r);_t+=o*(ln+n)/2,yt+=o*(un+t)/2,Ln+=o,zn(ln=n,un=t)}function lr(){cn.point=zn}function Yo(){cn.point=$o}function Zo(){dr(ur,Ar)}function $o(n,t){cn.point=dr,zn(ur=ln=n,Ar=un=t)}function dr(n,t){var e=n-ln,r=t-un,o=Q(e*e+r*r);_t+=o*(ln+n)/2,yt+=o*(un+t)/2,Ln+=o,o=un*n-ln*t,ne+=o*(ln+n),te+=o*(un+t),nt+=o*3,zn(ln=n,un=t)}var ee=cn;function bt(n){this._context=n}bt.prototype={_radius:4.5,pointRadius:function(n){return this._radius=n,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(n,t){switch(this._point){case 0:{this._context.moveTo(n,t),this._point=1;break}case 1:{this._context.lineTo(n,t);break}default:{this._context.moveTo(n+this._radius,t),this._context.arc(n,t,this._radius,0,K);break}}},result:G};var oe=new J,re,pr,gr,tt,et,vt={point:G,lineStart:function(){vt.point=ni},lineEnd:function(){re&&mr(pr,gr),vt.point=G},polygonStart:function(){re=!0},polygonEnd:function(){re=null},result:function(){var n=+oe;return oe=new J,n}};function ni(n,t){vt.point=mr,pr=tt=n,gr=et=t}function mr(n,t){tt-=n,et-=t,oe.add(Q(tt*tt+et*et)),tt=n,et=t}var ie=vt;var hr,wt,_r,yr,Tn=class{constructor(t){this._append=t==null?br:ti(t),this._radius=4.5,this._=""}pointRadius(t){return this._radius=+t,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(t,e){switch(this._point){case 0:{this._append`M${t},${e}`,this._point=1;break}case 1:{this._append`L${t},${e}`;break}default:{if(this._append`M${t},${e}`,this._radius!==_r||this._append!==wt){let r=this._radius,o=this._;this._="",this._append`m0,${r}a${r},${r} 0 1,1 0,${-2*r}a${r},${r} 0 1,1 0,${2*r}z`,_r=r,wt=this._append,yr=this._,this._=o}this._+=yr;break}}}result(){let t=this._;return this._="",t.length?t:null}};function br(n){let t=1;this._+=n[0];for(let e=n.length;t<e;++t)this._+=arguments[t]+n[t]}function ti(n){let t=Math.floor(n);if(!(t>=0))throw new RangeError(`invalid digits: ${n}`);if(t>15)return br;if(t!==hr){let e=10**t;hr=t,wt=function(o){let i=1;this._+=o[0];for(let s=o.length;i<s;++i)this._+=Math.round(arguments[i]*e)/e+o[i]}}return wt}function ae(n,t){let e=3,r=4.5,o,i;function s(a){return a&&(typeof r=="function"&&i.pointRadius(+r.apply(this,arguments)),Z(a,o(i))),i.result()}return s.area=function(a){return Z(a,o(Yt)),Yt.result()},s.measure=function(a){return Z(a,o(ie)),ie.result()},s.bounds=function(a){return Z(a,o(Nn)),Nn.result()},s.centroid=function(a){return Z(a,o(ee)),ee.result()},s.projection=function(a){return arguments.length?(o=a==null?(n=null,Yn):(n=a).stream,s):n},s.context=function(a){return arguments.length?(i=a==null?(t=null,new Tn(e)):new bt(t=a),typeof r!="function"&&i.pointRadius(r),s):t},s.pointRadius=function(a){return arguments.length?(r=typeof a=="function"?a:(i.pointRadius(+a),+a),s):r},s.digits=function(a){if(!arguments.length)return e;if(a==null)e=null;else{let c=Math.floor(a);if(!(c>=0))throw new RangeError(`invalid digits: ${a}`);e=c}return t===null&&(i=new Tn(e)),s},s.projection(n).digits(e).context(t)}function rt(n){return function(t){var e=new se;for(var r in n)e[r]=n[r];return e.stream=t,e}}function se(){}se.prototype={constructor:se,point:function(n,t){this.stream.point(n,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function fe(n,t,e){var r=n.clipExtent&&n.clipExtent();return n.scale(150).translate([0,0]),r!=null&&n.clipExtent(null),Z(e,n.stream(Nn)),t(Nn.result()),r!=null&&n.clipExtent(r),n}function ce(n,t,e){return fe(n,function(r){var o=t[1][0]-t[0][0],i=t[1][1]-t[0][1],s=Math.min(o/(r[1][0]-r[0][0]),i/(r[1][1]-r[0][1])),a=+t[0][0]+(o-s*(r[1][0]+r[0][0]))/2,c=+t[0][1]+(i-s*(r[1][1]+r[0][1]))/2;n.scale(150*s).translate([a,c])},e)}function vr(n,t,e){return ce(n,[[0,0],t],e)}function wr(n,t,e){return fe(n,function(r){var o=+t,i=o/(r[1][0]-r[0][0]),s=(o-i*(r[1][0]+r[0][0]))/2,a=-i*r[0][1];n.scale(150*i).translate([s,a])},e)}function xr(n,t,e){return fe(n,function(r){var o=+t,i=o/(r[1][1]-r[0][1]),s=-i*r[0][0],a=(o-i*(r[1][1]+r[0][1]))/2;n.scale(150*i).translate([s,a])},e)}var kr=16,ei=z(30*M);function le(n,t){return+t?oi(n,t):ri(n)}function ri(n){return rt({point:function(t,e){t=n(t,e),this.stream.point(t[0],t[1])}})}function oi(n,t){function e(r,o,i,s,a,c,l,f,u,A,p,d,b,y){var x=l-r,g=f-o,m=x*x+g*g;if(m>4*t&&b--){var _=s+A,v=a+p,w=c+d,C=Q(_*_+v*v+w*w),D=X(w/=C),R=E(E(w)-1)<B||E(i-u)<B?(i+u)/2:Y(v,_),N=n(R,D),k=N[0],nn=N[1],V=k-r,F=nn-o,h=g*V-x*F;(h*h/m>t||E((x*V+g*F)/m-.5)>.3||s*A+a*p+c*d<ei)&&(e(r,o,i,s,a,c,k,nn,R,_/=C,v/=C,w,b,y),y.point(k,nn),e(k,nn,R,_,v,w,l,f,u,A,p,d,b,y))}}return function(r){var o,i,s,a,c,l,f,u,A,p,d,b,y={point:x,lineStart:g,lineEnd:_,polygonStart:function(){r.polygonStart(),y.lineStart=v},polygonEnd:function(){r.polygonEnd(),y.lineStart=g}};function x(D,R){D=n(D,R),r.point(D[0],D[1])}function g(){u=NaN,y.point=m,r.lineStart()}function m(D,R){var N=sn([D,R]),k=n(D,R);e(u,A,f,p,d,b,u=k[0],A=k[1],f=D,p=N[0],d=N[1],b=N[2],kr,r),r.point(u,A)}function _(){y.point=x,r.lineEnd()}function v(){g(),y.point=w,y.lineEnd=C}function w(D,R){m(o=D,R),i=u,s=A,a=p,c=d,l=b,y.point=m}function C(){e(u,A,f,p,d,b,i,s,o,a,c,l,kr,r),y.lineEnd=_,_()}return y}}var ii=rt({point:function(n,t){this.stream.point(n*M,t*M)}});function ai(n){return rt({point:function(t,e){var r=n(t,e);return this.stream.point(r[0],r[1])}})}function si(n,t,e,r,o){function i(s,a){return s*=r,a*=o,[t+n*s,e-n*a]}return i.invert=function(s,a){return[(s-t)/n*r,(e-a)/n*o]},i}function Br(n,t,e,r,o,i){if(!i)return si(n,t,e,r,o);var s=z(i),a=q(i),c=s*n,l=a*n,f=s/n,u=a/n,A=(a*e-s*t)/n,p=(a*t+s*e)/n;function d(b,y){return b*=r,y*=o,[c*b-l*y+t,e-l*b-c*y]}return d.invert=function(b,y){return[r*(f*b-u*y+A),o*(p-u*b-f*y)]},d}function Cn(n){return ue(function(){return n})()}function ue(n){var t,e=150,r=480,o=250,i=0,s=0,a=0,c=0,l=0,f,u=0,A=1,p=1,d=null,b=Kt,y=null,x,g,m,_=Yn,v=.5,w,C,D,R,N;function k(h){return D(h[0]*M,h[1]*M)}function nn(h){return h=D.invert(h[0],h[1]),h&&[h[0]*T,h[1]*T]}k.stream=function(h){return R&&N===h?R:R=ii(ai(f)(b(w(_(N=h)))))},k.preclip=function(h){return arguments.length?(b=h,d=void 0,F()):b},k.postclip=function(h){return arguments.length?(_=h,y=x=g=m=null,F()):_},k.clipAngle=function(h){return arguments.length?(b=+h?or(d=h*M):(d=null,Kt),F()):d*T},k.clipExtent=function(h){return arguments.length?(_=h==null?(y=x=g=m=null,Yn):Jt(y=+h[0][0],x=+h[0][1],g=+h[1][0],m=+h[1][1]),F()):y==null?null:[[y,x],[g,m]]},k.scale=function(h){return arguments.length?(e=+h,V()):e},k.translate=function(h){return arguments.length?(r=+h[0],o=+h[1],V()):[r,o]},k.center=function(h){return arguments.length?(i=h[0]%360*M,s=h[1]%360*M,V()):[i*T,s*T]},k.rotate=function(h){return arguments.length?(a=h[0]%360*M,c=h[1]%360*M,l=h.length>2?h[2]%360*M:0,V()):[a*T,c*T,l*T]},k.angle=function(h){return arguments.length?(u=h%360*M,V()):u*T},k.reflectX=function(h){return arguments.length?(A=h?-1:1,V()):A<0},k.reflectY=function(h){return arguments.length?(p=h?-1:1,V()):p<0},k.precision=function(h){return arguments.length?(w=le(C,v=h*h),F()):Q(v)},k.fitExtent=function(h,S){return ce(k,h,S)},k.fitSize=function(h,S){return vr(k,h,S)},k.fitWidth=function(h,S){return wr(k,h,S)},k.fitHeight=function(h,S){return xr(k,h,S)};function V(){var h=Br(e,0,0,A,p,u).apply(null,t(i,s)),S=Br(e,r-h[0],o-h[1],A,p,u);return f=Ht(a,c,l),C=Qn(t,S),D=Qn(f,C),w=le(C,v),F()}function F(){return R=N=null,k}return function(){return t=n.apply(this,arguments),k.invert=t.invert&&nn,V()}}function jr(n){var t=0,e=j/3,r=ue(n),o=r(t,e);return o.parallels=function(i){return arguments.length?r(t=i[0]*M,e=i[1]*M):[t*T,e*T]},o}function qr(n){var t=z(n);function e(r,o){return[r*t,q(o)/t]}return e.invert=function(r,o){return[r/t,X(o*t)]},e}function zr(n,t){var e=q(n),r=(e+q(t))/2;if(E(r)<B)return qr(n);var o=1+e*(2*r-e),i=Q(o)/r;function s(a,c){var l=Q(o-2*r*q(c))/r;return[l*q(a*=r),i-l*z(a)]}return s.invert=function(a,c){var l=i-c,f=Y(a,E(l))*Rn(l);return l*r<0&&(f-=j*Rn(a)*Rn(l)),[f/r,X((o-(a*a+l*l)*r*r)/(2*r))]},s}function Ae(){return jr(zr).scale(155.424).center([0,33.6442])}function Cr(n){return function(t,e){var r=Q(t*t+e*e),o=n(r),i=q(o),s=z(o);return[Y(t*i,r*s),X(r&&e*i/r)]}}function xt(n,t){return[n,Re(Ie((U+t)/2))]}xt.invert=function(n,t){return[n,2*st(De(t))-U]};function de(){return fi(xt).scale(961/K)}function fi(n){var t=Cn(n),e=t.center,r=t.scale,o=t.translate,i=t.clipExtent,s=null,a,c,l;t.scale=function(u){return arguments.length?(r(u),f()):r()},t.translate=function(u){return arguments.length?(o(u),f()):o()},t.center=function(u){return arguments.length?(e(u),f()):e()},t.clipExtent=function(u){return arguments.length?(u==null?s=a=c=l=null:(s=+u[0][0],a=+u[0][1],c=+u[1][0],l=+u[1][1]),f()):s==null?null:[[s,a],[c,l]]};function f(){var u=j*r(),A=t($e(t.rotate()).invert([0,0]));return i(s==null?[[A[0]-u,A[1]-u],[A[0]+u,A[1]+u]]:n===xt?[[Math.max(A[0]-u,s),a],[Math.min(A[0]+u,c),l]]:[[s,Math.max(A[1]-u,a)],[c,Math.min(A[1]+u,l)]])}return f()}function kt(n,t){return[n,t]}kt.invert=kt;function pe(){return Cn(kt).scale(152.63)}function ge(n,t){return[z(t)*q(n),q(t)]}ge.invert=Cr(X);function me(){return Cn(ge).scale(249.5).clipAngle(90+B)}var Bt=1;function ci(n,t,[e,r],[o,i]){let s=n.length/3,a=new Float64Array(s*2),c=new Uint8Array(s),l=0,f=0;for(let u=0;u<s;u++)l+=n[u*3],f+=n[u*3+1],a[u*2]=l*e+o,a[u*2+1]=f*r+i,c[u]=n[u*3+2];return{key:t,points:a,buckets:c}}function he(n){let t=[];for(let{arc:e,reversed:r}of n){let o=e.buckets.length;for(let i=t.length===0?0:1;i<o;i++){let s=r?o-1-i:i;t.push([e.points[s*2],e.points[s*2+1]])}}return t}function li(n){let t=he(n);if(t.length<4)return 0;let e=kn({type:"Polygon",coordinates:[t]});return e>2*Math.PI?4*Math.PI-e:e}function Er(n){if(n.format!==Bt)throw new Error(`geo data format ${n.format} is not supported (expected ${Bt})`);let t=n.arcs.map((o,i)=>ci(o,n.arcIds[i],n.transform.scale,n.transform.translate)),e=o=>o<0?{arc:t[~o],reversed:!0}:{arc:t[o],reversed:!1},r=new Map;for(let o of n.features){let i=o.mainland?new Set(o.mainland):null;r.set(o.code,{code:o.code,name:o.name,nameNl:o.nameNl??o.name,parent:o.parent,first:o.first,listed:o.listed,remote:o.remote===!0,polygons:o.polygons.map((s,a)=>{let c=s.map(l=>l.map(e));return{rings:c,ringAreas:c.map((l,f)=>f===0?o.areas[a]:li(l)),area:o.areas[a],mainland:i===null||i.has(a)}})})}return{features:r}}import{Clip as Ei,Graphics2D as Be,ShapeNode as Mi,node as Si,property as On}from"@motionscript/sdk";import{snapValue as ot}from"@motionscript/sdk/component";var Mr=1024,ui=2,Ai=7,di=1.5,pi=6,ve=n=>n>1?1:n>0?n:0;function gi(n,t){if(n>=1||!(t>0))return 255;let e=t*10**-(ui+Ai*ve(n));return Math.floor(-2*Math.log2(e))}function mi(n,t){return n>=1?0:t*10**-(di+pi*ve(n))}function Rr(n,t){let e=[];for(let r of n){let o=t==="mainland"?r.polygons.filter(a=>a.mainland):[],i=o.length>0?o:r.polygons,s=null;for(let a of i)(!s||a.area>s.area)&&(s=a);for(let a of i)e.push({polygon:a,largest:a===s})}return e}function hi(n,t){if(n<=t)return(n+t)/2;let e=(n+t+360)/2;return e>180?e-360:e}function _i(n,t,e,r,o){let i=hi(t,r),s=(e+o)/2;switch(n){case"mercator":return de().rotate([-i,0]);case"equirectangular":return pe().rotate([-i,0]);case"orthographic":return me().rotate([-i,-s]);case"conic":{let a=o-e;return Ae().rotate([-i,0]).center([0,s]).parallels([e+a/6,o-a/6])}}}function yi(n,t){if(t.length===0)return null;let e={type:"MultiPolygon",coordinates:t.map(({polygon:a})=>[he(a.rings[0])])},[[r,o],[i,s]]=Gt(e);for(let a of[n,"equirectangular"]){let c=_i(a,r,o,i,s).fitSize([Mr,Mr],e),[[l,f],[u,A]]=ae(c).bounds(e),p=Math.max(u-l,A-f);if(!(!Number.isFinite(p)||p<=0))return{projection:c,centerX:(l+u)/2,centerY:(f+A)/2,size:p,width:(u-l)/p,height:(A-f)/p}}return null}function Sr(n,t,e){let r=[],o=null,{centerX:i,centerY:s,size:a}=n,c={point(l,f){o?.push((l-i)/a,-(f-s)/a)},lineStart(){o=[]},lineEnd(){let l=o;if(o=null,!l||l.length<4)return;let f=e;if(!e){let A=l.length;l[0]===l[A-2]&&l[1]===l[A-1]&&A>=8&&(l.length=A-2,f=!0)}let u=Float32Array.from(l);r.push({points:u,closed:f,length:bi(u,f)})},polygonStart(){},polygonEnd(){},sphere(){}};return Z(t,n.projection.stream(c)),r}function bi(n,t){let e=0,r=n.length/2;for(let o=1;o<r;o++)e+=Math.hypot(n[o*2]-n[o*2-2],n[o*2+1]-n[o*2-1]);return t&&r>1&&(e+=Math.hypot(n[0]-n[r*2-2],n[1]-n[r*2-1])),e}var Dr=20;function vi(n,t){let e=n.buckets.length,r=new Uint8Array(e),o=n.points[0],i=n.points[1];for(let s=0;s<e;s++){let a=n.points[s*2],c=n.points[s*2+1],l=!1;if(n.buckets[s]>t){let f=Math.abs(a-o);f>180&&(f=360-f),l=Math.abs(c-i)>Dr||f*Math.cos(c*Math.PI/180)>Dr}(n.buckets[s]<=t||l)&&(r[s]=1,o=a,i=c)}return r}function _e(n,t){let e=[];for(let{arc:r,reversed:o}of n){let i=r.buckets.length,s=t(r);for(let a=e.length===0?0:1;a<i;a++){let c=o?i-1-a:a;s[c]&&e.push([r.points[c*2],r.points[c*2+1]])}}return e}function wi(n,t){let e=0;for(let{arc:o}of n)for(let i=0;i<o.buckets.length-1;i++)o.buckets[i]<=t&&e++;if(e>=3)return t;let r=[];for(let{arc:o}of n)for(let i=0;i<o.buckets.length-1;i++)r.push(o.buckets[i]);return r.sort((o,i)=>o-i),Math.max(t,r[Math.min(2,r.length-1)]??t)}function xi(n,t){return n.length<4?!0:kn({type:"Polygon",coordinates:[n]})>2*Math.PI!==t}var Gn=(n,t)=>{let e=t?n.buckets.length-1:0;return`${n.points[e*2]},${n.points[e*2+1]}`};function ki(n){let t=new Map;for(let a of n)for(let c of[Gn(a,!1),Gn(a,!0)]){let l=t.get(c);l?l.push(a):t.set(c,[a])}let e=new Set,r=[],o=({arc:a,reversed:c})=>Gn(a,c),i=({arc:a,reversed:c})=>Gn(a,!c),s=a=>{let c=t.get(a);return c.length!==2?null:c.find(l=>!e.has(l))??null};for(let a of n){if(e.has(a))continue;e.add(a);let c=[{arc:a,reversed:!1}];for(let l=s(i(c[c.length-1]));l;l=s(i(c[c.length-1])))e.add(l),c.push({arc:l,reversed:Gn(l,!1)!==i(c[c.length-1])});for(let l=s(o(c[0]));l;l=s(o(c[0])))e.add(l),c.unshift({arc:l,reversed:Gn(l,!0)!==o(c[0])});r.push({refs:c,closed:o(c[0])===i(c[c.length-1])})}return r}function Bi(n,t,e,r,o){let i=Rr(n,t),s=i.reduce((m,{polygon:_})=>m+_.area,0),a=gi(o,s),c=mi(o,s),l=[];for(let{polygon:m,largest:_}of i)!_&&m.area<c||l.push(m.rings.filter((v,w)=>w===0||m.ringAreas[w]>=c));let f=new Map,u=new Map;for(let m of l)for(let _ of m){let v=wi(_,a);for(let{arc:w}of _){f.set(w.key,Math.max(f.get(w.key)??0,v));let C=u.get(w.key);C?C.count++:u.set(w.key,{arc:w,count:1})}}let A=new Map,p=m=>{let _=A.get(m.key);return _||(_=vi(m,f.get(m.key)??255),A.set(m.key,_)),_};if(a<255)for(let m of l)m.forEach((_,v)=>{let w=Math.min(..._.map(({arc:C})=>f.get(C.key)??a));for(;w<255&&!xi(_e(_,p),v===0);){w=Math.min(255,w+2);for(let{arc:C}of _)f.set(C.key,Math.max(f.get(C.key)??0,w)),A.delete(C.key)}});let d=Sr(e,{type:"MultiPolygon",coordinates:l.flatMap(m=>{let[_,...v]=m.map(w=>_e(w,p));return _.length<4?[]:[[_,...v.filter(w=>w.length>=4)]]})},!0),b=[...u.values()].filter(({count:m})=>r==="all"||m===1).map(({arc:m})=>m),y=[];for(let m of ki(b))y.push(...Sr(e,{type:"LineString",coordinates:_e(m.refs,p)},!1));let x=m=>m.reduce((_,v)=>_+v.length,0),g=[...d,...y].reduce((m,_)=>m+_.points.byteLength+32,0);return{width:e.width,height:e.height,fills:d,lines:y,fillLength:x(d),lineLength:x(y),bytes:g}}var jt=class{_budget;_entries=new Map;_bytes=0;constructor(t){this._budget=t}get(t){let e=this._entries.get(t);return e&&(this._entries.delete(t),this._entries.set(t,e)),e}set(t,e){let r=this._entries.get(t);r&&(this._bytes-=r.bytes),this._entries.delete(t),this._entries.set(t,e),this._bytes+=e.bytes;for(let[o,i]of this._entries){if(this._bytes<=this._budget||this._entries.size<=1)break;this._entries.delete(o),this._bytes-=i.bytes}}clear(){this._entries.clear(),this._bytes=0}},ye=new jt(64),be=new jt(64*1024*1024);function Ir(n){let t=Math.round(ve(n.detail)*100)/100,e=`${n.selectionKey}|${n.projection}`,r=`${e}|${n.borders}|${t}`,o=be.get(r);if(o)return o;let i=ye.get(e);if(!i){let a=yi(n.projection,Rr(n.features,n.frame));if(!a)return null;i=a,ye.set(e,{...a,bytes:1})}let s=Bi(n.features,n.frame,i,n.borders,t);return be.set(r,s),s}function Tf(){ye.clear(),be.clear()}function Fr(n){let t=n.length/2,e=new Uint8Array(t);if(t<3)return e;let r=Math.PI/180,o=new Float64Array(t),i=new Int32Array(t),s=new Int32Array(t);for(let g=0;g<t;g++)i[g]=g-1,s[g]=g+1;let a=(g,m,_)=>{let v=Math.cos(n[m*2+1]*r),w=n[g*2]*v,C=n[g*2+1],D=n[m*2]*v,R=n[m*2+1],N=n[_*2]*v,k=n[_*2+1];return Math.abs((D-w)*(k-C)-(N-w)*(R-C))/2*r*r},c=[],l=new Int32Array(t).fill(-1),f=(g,m)=>o[c[g]]<o[c[m]],u=(g,m)=>{[c[g],c[m]]=[c[m],c[g]],l[c[g]]=g,l[c[m]]=m},A=g=>{for(;g>0;){let m=g-1>>1;if(!f(g,m))break;u(g,m),g=m}},p=g=>{for(;;){let m=2*g+1,_=m+1,v=g;if(m<c.length&&f(m,v)&&(v=m),_<c.length&&f(_,v)&&(v=_),v===g)return;u(g,v),g=v}},d=g=>{l[g]=c.length,c.push(g),A(c.length-1)},b=g=>{let m=l[g],_=c.pop();l[g]=-1,m<c.length&&(c[m]=_,l[_]=m,A(m),p(l[_]))};for(let g=1;g<t-1;g++)o[g]=a(g-1,g,g+1),d(g);let y=0,x=new Float64Array(t);for(x[0]=x[t-1]=1/0;c.length>0;){let g=c[0];b(g),y=Math.max(y,o[g]),x[g]=y;let m=i[g],_=s[g];m>=0&&(s[m]=_),_<t&&(i[_]=m);for(let v of[m,_])v<=0||v>=t-1||l[v]<0||(b(v),o[v]=a(i[v],v,s[v]),d(v))}for(let g=0;g<t;g++)e[g]=ji(x[g]);return e}function ji(n){return n===1/0?0:n>0?Math.min(254,Math.max(1,Math.round(-2*Math.log2(n)))):255}var qt=`v${Bt}`;function Jf(n,t){return async e=>{let r=typeof n=="function"?n(e):`${n.replace(/\/+$/,"")}/${e}.json`,o=await fetch(r,t);if(o.status===404||o.status===400)return null;if(!o.ok)throw new Error(`${r} \u2192 HTTP ${o.status}`);return o.json()}}function Wf(n){return async t=>{let e=await n(t);return e==null?null:typeof e=="string"?JSON.parse(e):e instanceof ArrayBuffer||e instanceof Uint8Array?JSON.parse(new TextDecoder().decode(e)):e}}function qi(n,t,e){let r=t.shape.type==="Feature"?t.shape.geometry:t.shape,o=t.shape.type==="Feature"?t.shape:null,i=r.type==="Polygon"?[r.coordinates]:r.coordinates,s=0,a=f=>{let A=f.length>0&&f[0][0]===f[f.length-1][0]&&f[0][1]===f[f.length-1][1]?f:[...f,f[0]],p=new Float64Array(A.length*2);return A.forEach(([d,b],y)=>{p[y*2]=d,p[y*2+1]=b}),{arc:{key:`define:${e}:${n}:${s++}`,points:p,buckets:Fr(p)},reversed:!1}},c=i.map(f=>{let u=f.map(d=>[a(d)]),A=f.map(d=>{let b=kn({type:"Polygon",coordinates:[d]});return b>2*Math.PI?4*Math.PI-b:b}),p=Math.max(0,A[0]-A.slice(1).reduce((d,b)=>d+b,0));return{rings:u,ringAreas:A,area:p,mainland:!0}}),l=t.name??o?.properties?.name??n;return{code:n,name:l,nameNl:l,parent:t.parent??(n.includes("-")?n.slice(0,2):null),first:!0,listed:!1,remote:!1,polygons:c}}var we=class{_sources=[];_defined=new Map;_generation=0;_serial=0;get generation(){return this._generation}get hasSources(){return this._sources.length>0}use(t){return this._sources.push(t),this._generation++,()=>{let e=this._sources.indexOf(t);e<0||(this._sources.splice(e,1),this._generation++)}}define(t){let e=++this._serial,r=Object.entries(t).map(([o,i])=>{let s=o.trim().toUpperCase(),a="shape"in i?i:{shape:i};return this._defined.set(s,{serial:e,feature:qi(s,a,e)}),s});return this._generation++,()=>{for(let o of r)this._defined.get(o)?.serial===e&&this._defined.delete(o);this._generation++}}defined(t){return this._defined.get(t)?.feature}reset(){this._sources=[],this._defined.clear(),this._generation++}async resolve(t){if(this._sources.length===0)throw new Error("No geo source registered \u2014 call geoRegistry.use(geoUrlSource(\u2026)) before rendering GeoBorder");let e=null;for(let r of[...this._sources])try{let o=await r(t);if(o!=null)return o}catch(o){e??=o}if(e)throw e;return null}async index(){return await this.resolve(`${qt}/index`)}},wn=new we;var Et=new Map,zt=new Map,Pr=new Map,Ct=new Set,xe=0;function ke(n){return`${qt}/countries/${n}`}function Mt(n){return`${qt}/states/${n}`}function Nr(){return xe}function Lr(n){return Et.get(n)}async function zi(n){try{let t=await wn.resolve(n);return t===null&&n.includes("/states/")&&(t=await wn.resolve(n.replace("/states/","/countries/"))),t===null?{status:"missing"}:{status:"ready",file:Er(t)}}catch(t){return{status:"failed",error:t}}}function Ci(n){let t=Et.get(n);if(t?.status==="ready")return Promise.resolve(t);let e=zt.get(n);return e||(e=zi(n).then(r=>(zt.delete(n),Et.set(n,r),xe++,r.status==="ready"?Ct.delete(n):Ct.has(n)||(Ct.add(n),r.status==="failed"?console.warn(`[GeoBorder] could not load ${n}:`,r.error):console.warn(`[GeoBorder] no geo source has ${n}`)),r)),zt.set(n,e)),e}function Tr(n){let t=Pr.get(n);return t||(t=async()=>{await Ci(n)},Pr.set(n,t)),t}function Yf(){Et.clear(),zt.clear(),Ct.clear(),xe++}var Gr=/^[A-Z]{2}(-[A-Z0-9]{1,3})?$/;function Or(n){let t=Array.isArray(n)?n:typeof n=="string"?n.split(/[\s,;]+/):[],e=[];for(let r of t){if(typeof r!="string")continue;let o=r.trim().toUpperCase();o&&!e.includes(o)&&e.push(o)}return e}function Hr(n){return n.includes("-")}function Vr(n,t){let e=new Set;for(let r of n)!Gr.test(r)||wn.defined(r)||(Hr(r)?e.add(Mt(r.slice(0,2))):e.add(t==="state"?Mt(r):ke(r)));return[...e]}function Kr(n,t,e){let r=[],o=new Set,i=[],s=!1,a=c=>{o.has(c.code)||(o.add(c.code),r.push(c))};for(let c of n){let l=wn.defined(c);if(l){a(l);continue}if(!Gr.test(c)){i.push(c);continue}let f=Hr(c),u=f||t==="state"?Mt(c.slice(0,2)):ke(c),A=Lr(u);if(!A||A.status!=="ready"){A||(s=!0);continue}let p=A.file.features;if(f||t==="country"){let b=p.get(c);b?a(b):i.push(c);continue}let d=[...p.values()].filter(b=>b.parent===c&&b.first&&!(e==="mainland"&&b.remote));d.length>0?d.forEach(a):p.get(c)?a(p.get(c)):i.push(c)}return{features:r,pending:s,unknown:i}}var En=function(n,t,e,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(n,t,e,r);else for(var a=n.length-1;a>=0;a--)(s=n[a])&&(i=(o<3?s(i):o>3?s(t,e,i):s(t,e))||i);return o>3&&i&&Object.defineProperty(t,e,i),i},Di=256,Ri=4e4,Jr=n=>String(Math.round(n*100)/100);function Wr(n,t,e){let r=[],o=[],i=0,s=0,a=0,c=0,l=()=>{if(i===0)return;let f=t>0?Math.min(1,c/t):1;r.push({data:o.join(""),from:a,to:f}),a=f,o=[],i=0,s=0};for(let f of n){let u=f.points;for(let A=0;A<u.length;A+=2)o.push(A===0?"M":"L",Jr(u[A]*e)," ",Jr(-u[A+1]*e));f.closed&&o.push("Z"),i++,s+=u.length/2,c+=f.length,(i>=Di||s>=Ri)&&l()}return l(),r}var An=class extends Mi{constructor(t){super(t)}declareAssets(t){super.declareAssets(t);for(let e of Vr(this.iso,this.level))t.loader(`geo:${e}`,Tr(e),{gate:"render"})}renderSelf(t){let e=this._drawn(),r=this.fill;if(!e||e.fills.length===0)return;let o=this.shadow,i=new Be;for(let s of e.fills)this._pathOp(i,s)&&(o.length>0&&i.shadow(o),i.fill(r));t.draw(i)}renderOverlay(t){let e=this.overlay;if(e.length===0)return;let r=this._drawn();if(!r)return;let o=new Be;for(let i of r.fills)this._pathOp(o,i)&&o.fill(e);t.draw(o)}renderStroke(t){let e=this.stroke;if(e.length===0)return;let r=this._drawn();if(!r||r.lines.length===0)return;let o=e.map(c=>c.align===0?c:{...c,align:0}),i=this.shadow,s=i.length>0&&!this.fill.some(c=>(c.opacity??1)>0),a=new Be;for(let c of r.lines)this._pathOp(a,c)&&(s&&a.shadow(i),a.stroke(o));t.draw(a)}clipSelf(){return new Ei().rect({x:0,y:0,width:this.layoutBounds.width,height:this.layoutBounds.height})}_drawnCache=null;_warned=new Set;_pathOp(t,e){let r=this.start,o=this.end,i=this.layoutBounds.width,s=this.layoutBounds.height,a=[-i/2,-s/2,i/2,s/2];if(r<=0&&o>=1)return t.path({data:e.data,centerBounds:a}),!0;let c=e.to-e.from;if(c<=0)return!1;let l=Math.max(0,(r-e.from)/c),f=Math.min(1,(o-e.from)/c);return f<=l?!1:(t.path({data:e.data,centerBounds:a,start:l,end:f}),!0)}_drawn(){let t=this.iso,e=this.level,r=this.frame,o=Kr(t,e,r);for(let u of o.unknown)this._warned.has(u)||(this._warned.add(u),console.warn(`[GeoBorder] no region with code ${u}`));if(o.features.length===0)return null;let i=Ir({selectionKey:`${wn.generation}:${Nr()}:${e}:${r}:${t.join(",")}`,features:o.features,frame:r,projection:this.projection,borders:this.borders,detail:this.detail});if(!i)return null;let s=this.layoutBounds.width,a=this.layoutBounds.height,c=this._drawnCache;if(c&&c.geometry===i&&c.width===s&&c.height===a)return c;let l=Math.min(s/i.width,a/i.height),f={geometry:i,width:s,height:a,fills:Wr(i.fills,i.fillLength,l),lines:Wr(i.lines,i.lineLength,l)};return this._drawnCache=f,f}};En([On({default:["FR"],mapper:Or,tween:ot})],An.prototype,"iso",void 0);En([On({default:"country",tween:ot,options:["country","state"]})],An.prototype,"level",void 0);En([On({default:.5,min:0,max:1,step:.01})],An.prototype,"detail",void 0);En([On({default:"conic",tween:ot,options:["conic","mercator","equirectangular","orthographic"]})],An.prototype,"projection",void 0);En([On({default:"mainland",tween:ot,options:["mainland","all"]})],An.prototype,"frame",void 0);En([On({default:"all",tween:ot,options:["all","outline"]})],An.prototype,"borders",void 0);An=En([Si({key:"geoBorder",parentKey:"shape",forkable:!0,layout:{children:"freeform",acceptsChildren:!0,defaultWidthMode:"fixed",defaultHeightMode:"fixed"},seed:{width:480,height:480}})],An);import{Mat as Ii}from"@motionscript/sdk";var Fi=`
2
+ varying vec3 vNormal;
3
+ varying vec3 vView;
4
+
5
+ void main() {
6
+ vec4 viewPosition = modelViewMatrix * vec4(position, 1.0);
7
+ vNormal = normalize(normalMatrix * normal);
8
+ vView = -viewPosition.xyz;
9
+ gl_Position = projectionMatrix * viewPosition;
10
+ }
11
+ `,Pi=`
12
+ uniform vec3 uColor;
13
+ uniform float uFalloff;
14
+ uniform float uIntensity;
15
+
16
+ varying vec3 vNormal;
17
+ varying vec3 vView;
18
+
19
+ void main() {
20
+ float facing = abs(dot(normalize(vNormal), normalize(vView)));
21
+ float rim = pow(clamp(1.0 - facing, 0.0, 1.0), uFalloff) * uIntensity;
22
+ gl_FragColor = vec4(uColor * rim, rim);
23
+ }
24
+ `;function Ur(n,t,e){return Ii.shader({vertex:Fi,fragment:Pi,uniforms:{uColor:[n[0],n[1],n[2]],uFalloff:t,uIntensity:e},faces:"back",blend:"additive",transparent:!0,depthWrite:!1})}var Qr=[{id:"AFG",name:"Afghanistan",rings:[68]},{id:"AGO",name:"Angola",rings:[8,65]},{id:"ALB",name:"Albania",rings:[23]},{id:"ARE",name:"United Arab Emirates",rings:[21]},{id:"ARG",name:"Argentina",rings:[10,109]},{id:"ARM",name:"Armenia",rings:[19]},{id:"ATA",name:"Antarctica",rings:[21,12,25,12,9,7,10,555]},{id:"ATF",name:"Fr. S. Antarctic Lands",rings:[8]},{id:"AUS",name:"Australia",rings:[16,223]},{id:"AUT",name:"Austria",rings:[36]},{id:"AZE",name:"Azerbaijan",rings:[34,8]},{id:"BDI",name:"Burundi",rings:[12]},{id:"BEL",name:"Belgium",rings:[16]},{id:"BEN",name:"Benin",rings:[24]},{id:"BFA",name:"Burkina Faso",rings:[38]},{id:"BGD",name:"Bangladesh",rings:[35]},{id:"BGR",name:"Bulgaria",rings:[27]},{id:"BHS",name:"Bahamas",rings:[5,6,7]},{id:"BIH",name:"Bosnia and Herz.",rings:[22]},{id:"BLR",name:"Belarus",rings:[44]},{id:"BLZ",name:"Belize",rings:[19]},{id:"BOL",name:"Bolivia",rings:[59]},{id:"BRA",name:"Brazil",rings:[202]},{id:"BRN",name:"Brunei",rings:[7]},{id:"BTN",name:"Bhutan",rings:[12]},{id:"BWA",name:"Botswana",rings:[39]},{id:"CAF",name:"Central African Rep.",rings:[61]},{id:"CAN",name:"Canada",rings:[273,6,10,7,7,6,8,27,6,6,32,19,72,10,11,10,10,15,16,21,44,14,5,12,20,64,8,10,7,8]},{id:"CHE",name:"Switzerland",rings:[23]},{id:"CHL",name:"Chile",rings:[19,93]},{id:"CHN",name:"China",rings:[9,229]},{id:"CIV",name:"C\xF4te d'Ivoire",rings:[45]},{id:"CMR",name:"Cameroon",rings:[60]},{id:"COD",name:"Dem. Rep. Congo",rings:[123]},{id:"COG",name:"Congo",rings:[48]},{id:"COL",name:"Colombia",rings:[99]},{id:"CRI",name:"Costa Rica",rings:[35]},{id:"CUB",name:"Cuba",rings:[41]},{id:"CYN",name:"N. Cyprus",rings:[15]},{id:"CYP",name:"Cyprus",rings:[14]},{id:"CZE",name:"Czechia",rings:[34]},{id:"DEU",name:"Germany",rings:[57]},{id:"DJI",name:"Djibouti",rings:[14]},{id:"DNK",name:"Denmark",rings:[17,5]},{id:"DOM",name:"Dominican Rep.",rings:[25]},{id:"DZA",name:"Algeria",rings:[61]},{id:"ECU",name:"Ecuador",rings:[32]},{id:"EGY",name:"Egypt",rings:[43]},{id:"ERI",name:"Eritrea",rings:[27]},{id:"ESP",name:"Spain",rings:[50]},{id:"EST",name:"Estonia",rings:[18]},{id:"ETH",name:"Ethiopia",rings:[58]},{id:"FIN",name:"Finland",rings:[39]},{id:"FJI",name:"Fiji",rings:[7,8,4]},{id:"FLK",name:"Falkland Is.",rings:[9]},{id:"FRA",name:"France",rings:[18,47,6]},{id:"GAB",name:"Gabon",rings:[30]},{id:"GBR",name:"United Kingdom",rings:[7,47]},{id:"GEO",name:"Georgia",rings:[23]},{id:"GHA",name:"Ghana",rings:[24]},{id:"GIN",name:"Guinea",rings:[69]},{id:"GMB",name:"Gambia",rings:[15]},{id:"GNB",name:"Guinea-Bissau",rings:[18]},{id:"GNQ",name:"Eq. Guinea",rings:[6]},{id:"GRC",name:"Greece",rings:[10,42]},{id:"GRL",name:"Greenland",rings:[131]},{id:"GTM",name:"Guatemala",rings:[34]},{id:"GUY",name:"Guyana",rings:[39]},{id:"HND",name:"Honduras",rings:[56]},{id:"HRV",name:"Croatia",rings:[42]},{id:"HTI",name:"Haiti",rings:[20]},{id:"HUN",name:"Hungary",rings:[31]},{id:"IDN",name:"Indonesia",rings:[37,8,6,38,8,5,12,44,6,8,9,22,34]},{id:"IND",name:"India",rings:[135]},{id:"IRL",name:"Ireland",rings:[12]},{id:"IRN",name:"Iran",rings:[75]},{id:"IRQ",name:"Iraq",rings:[29]},{id:"ISL",name:"Iceland",rings:[19]},{id:"ISR",name:"Israel",rings:[25]},{id:"ITA",name:"Italy",rings:[65,10,9]},{id:"JAM",name:"Jamaica",rings:[10]},{id:"JOR",name:"Jordan",rings:[18]},{id:"JPN",name:"Japan",rings:[36,15,11]},{id:"KAZ",name:"Kazakhstan",rings:[111]},{id:"KEN",name:"Kenya",rings:[36]},{id:"KGZ",name:"Kyrgyzstan",rings:[34]},{id:"KHM",name:"Cambodia",rings:[16]},{id:"KOR",name:"South Korea",rings:[18]},{id:"KOS",name:"Kosovo",rings:[20]},{id:"KWT",name:"Kuwait",rings:[8]},{id:"LAO",name:"Laos",rings:[36]},{id:"LBN",name:"Lebanon",rings:[10]},{id:"LBR",name:"Liberia",rings:[26]},{id:"LBY",name:"Libya",rings:[55]},{id:"LKA",name:"Sri Lanka",rings:[9]},{id:"LSO",name:"Lesotho",rings:[11]},{id:"LTU",name:"Lithuania",rings:[18]},{id:"LUX",name:"Luxembourg",rings:[6]},{id:"LVA",name:"Latvia",rings:[21]},{id:"MAR",name:"Morocco",rings:[62]},{id:"MDA",name:"Moldova",rings:[26]},{id:"MDG",name:"Madagascar",rings:[48]},{id:"MEX",name:"Mexico",rings:[169]},{id:"MKD",name:"North Macedonia",rings:[17]},{id:"MLI",name:"Mali",rings:[75]},{id:"MMR",name:"Myanmar",rings:[69]},{id:"MNE",name:"Montenegro",rings:[17]},{id:"MNG",name:"Mongolia",rings:[74]},{id:"MOZ",name:"Mozambique",rings:[78]},{id:"MRT",name:"Mauritania",rings:[38]},{id:"MWI",name:"Malawi",rings:[27]},{id:"MYS",name:"Malaysia",rings:[24,36]},{id:"NAM",name:"Namibia",rings:[43]},{id:"NCL",name:"New Caledonia",rings:[12]},{id:"NER",name:"Niger",rings:[57]},{id:"NGA",name:"Nigeria",rings:[57]},{id:"NIC",name:"Nicaragua",rings:[51]},{id:"NLD",name:"Netherlands",rings:[14]},{id:"NOR",name:"Norway",rings:[17,49,11,7]},{id:"NPL",name:"Nepal",rings:[22]},{id:"NZL",name:"New Zealand",rings:[35,29]},{id:"OMN",name:"Oman",rings:[40,5]},{id:"PAK",name:"Pakistan",rings:[65]},{id:"PAN",name:"Panama",rings:[51]},{id:"PER",name:"Peru",rings:[75]},{id:"PHL",name:"Philippines",rings:[5,11,26,8,32,8,13]},{id:"PNG",name:"Papua New Guinea",rings:[33,13,21,10]},{id:"POL",name:"Poland",rings:[44]},{id:"PRI",name:"Puerto Rico",rings:[8]},{id:"PRK",name:"North Korea",rings:[3,43]},{id:"PRT",name:"Portugal",rings:[32]},{id:"PRY",name:"Paraguay",rings:[32]},{id:"PSX",name:"Palestine",rings:[8]},{id:"QAT",name:"Qatar",rings:[8]},{id:"ROU",name:"Romania",rings:[43]},{id:"RUS",name:"Russia",rings:[4,455,10,6,8,6,7,14,8,25,21,23,7,17]},{id:"RWA",name:"Rwanda",rings:[13]},{id:"SAH",name:"W. Sahara",rings:[27]},{id:"SAU",name:"Saudi Arabia",rings:[75]},{id:"SDN",name:"Sudan",rings:[80]},{id:"SDS",name:"S. Sudan",rings:[62]},{id:"SEN",name:"Senegal",rings:[43]},{id:"SLB",name:"Solomon Is.",rings:[5,6,7,8,6]},{id:"SLE",name:"Sierra Leone",rings:[21]},{id:"SLV",name:"El Salvador",rings:[19]},{id:"SOL",name:"Somaliland",rings:[24]},{id:"SOM",name:"Somalia",rings:[35]},{id:"SRB",name:"Serbia",rings:[47]},{id:"SUR",name:"Suriname",rings:[25]},{id:"SVK",name:"Slovakia",rings:[32]},{id:"SVN",name:"Slovenia",rings:[17]},{id:"SWE",name:"Sweden",rings:[39]},{id:"SWZ",name:"eSwatini",rings:[10]},{id:"SYR",name:"Syria",rings:[26]},{id:"TCD",name:"Chad",rings:[57]},{id:"TGO",name:"Togo",rings:[18]},{id:"THA",name:"Thailand",rings:[63]},{id:"TJK",name:"Tajikistan",rings:[40]},{id:"TKM",name:"Turkmenistan",rings:[53]},{id:"TLS",name:"Timor-Leste",rings:[10]},{id:"TTO",name:"Trinidad and Tobago",rings:[7]},{id:"TUN",name:"Tunisia",rings:[30]},{id:"TUR",name:"Turkey",rings:[53,13]},{id:"TWN",name:"Taiwan",rings:[8]},{id:"TZA",name:"Tanzania",rings:[51]},{id:"UGA",name:"Uganda",rings:[27]},{id:"UKR",name:"Ukraine",rings:[92]},{id:"URY",name:"Uruguay",rings:[20]},{id:"USA",name:"United States of America",rings:[232,16,8,4,8,6,6,8,137,11]},{id:"UZB",name:"Uzbekistan",rings:[53]},{id:"VEN",name:"Venezuela",rings:[91]},{id:"VNM",name:"Vietnam",rings:[43]},{id:"VUT",name:"Vanuatu",rings:[4,6]},{id:"YEM",name:"Yemen",rings:[43]},{id:"ZAF",name:"South Africa",rings:[81,-11]},{id:"ZMB",name:"Zambia",rings:[60]},{id:"ZWE",name:"Zimbabwe",rings:[36]}],St="m|`Ce~gAya@Lcn@dLcRrFel@aSaT`KeSs[kd@h@sHeHqEeX}YwTy`@dMxEbR}Q|AxDns@wWnSwTcLwZgE}e@}Zaj@pCm_ABcJ|Pjc@~Ev^pJvfAfFbbAbLnc@fZyMlYcFb^b^fYsA~VdPnUlz@}@qWhh@xf@zNnYtd@mBpd@lWpPbVyDvn@bGzEnPnm@Cza@jb@dAdt@dpA~Xpj@oDrKtLjd@}Fn}@hHvgB{^uw@uw@bDgg@hn@oIzCuf@nS{p@wYga@fZeHePol@oX{lAw~@tVcn@iGaLi[ip@mHeb@_RoK_q@us@aKyHgUm\\tOgkXxiHvUbLfI`O|@fZ|NrEtO_n@gX_Z{QoIcaWf|JyXkGcQb@}ToFmwDXkNrm@}Pld@kMfS}Vt_@ih@aDsSyGqa@xGkHsNuNmc@we@mAkByI{^GlDpUyjAQc@hf@uKbWdHtd@qCle@{SdVjBjiAoNwDcZp@we@kHm[tBsEjRbFh]_Jh\\hHlViDpTbaCYzAzeEci@br@yg@`f@zqBnXhvC{Ghj@}\\h|FtAlHjChd@g[ng@{@ld@tI`]zJzDif@uG}u@qTgx@gByYgSiw@{MsX}b@{g@aSyZqEim@hBmb@tQiUrO}d@jNod@kB_LeRwW|Qk{@xK{h@h^qf@w`h@uwnAf@lOhS`HvBhS`\\h]rIkCf@wLra@_TlDw\\iDui@oGkRnI{H??fC{RcZw]_CvJyOqDiLxO}MjEeCtU??|FfT{GxYwvcBijn@aJaBiAbP}o@yHur@r@wd@x@yi@gi@sm@ag@of@oe@{JfToGjp@|^FbDtg@aJtGf[hKDpXfQzXr@dXpKdLzzDo^|Vi~@r`eCvxeB_W~[g^zm@gpAnd@ovArNb[f^jz@bBz^aUrd@u@|aAAppoBn_z@rN`q@tOf_AQf}@pLzLxCjg@fCr_@inApt@nG`j@af@fZdBp]`{@boAt{An`@h|B~KtcAgEcLfd@xKxm@qJn^nd@~T~~@rGb{@wUbWhOuGb}@gi@xQea@uRsQl_@px@lRdq@xe@dHz}@vMn`@`z@D~o@~^|Pzm@o|@vl@wz@rKnT`w@xhAfb@rg@hhA`x@rWrXh\\eSz_Ash@dc@jYeBzx@wH`vCkGzXmc@e@ym@rh@~B~TsUlDiaA}n@mZyRuf@fFq^c`@kt@yUwqAtEuc@gZ{JtEoV~[qKsSeYd[uVrMcgAcXwKpIekAuM__AuOwv@md@uU~Q_|@Dmx@in@yg@l@es@ub@_|@Cox@dOmJx[{jBoe@i_A|Do{@kUyw@}g@sy@ak@{e@tQoWaLcS~@cgBccA{]mT}_ArFsNcs@ow@wpAfNwc@bl@kWgq@ifApAaIjL{qB~dBcr@nHkkAbm@k_AlW}GrZn|@~}A_~@~OeeAnHmp@_Iuw@{n@gIev@}]}Jk^`c@h@zp@rs@na@|h@lXpeAt{@syyAevjArUz@pXec@IsHrZBnQwO~Kt@rWgQnm@qNaEk]rI_UyuAwH}KlOyVxIpKrNi`@nTrPzRqY~O_[fIh`~A|lwC{^?_|AoLg}AnLclA|Y}Y~d@kF|YmAx^v_BrRpdBzNntBtM~aCfKbsCsB~pAyS_JwXmdCcP{t@yScf@_Ze[gV}d@_Ukg@wXbn`C~v{CwkClAueCbEom@wXa`@_U{_AtXjQz^jQb[|aCqGpjCtBjmAyS?mAvjoChejC??{i@iFegAlAkQ{^uBgVf@eq@ob@m\\qx@wHa`@fVuMfV{Yd[yS|YePd[iFb[~InWbPhVlhApGxdAfK~pAg@s]oWnhApGvdArGvn@kQtBwXtzfEjlkCef@_JqnApGqyAzCqcArGqcAkFwc@nb@~o@{CzjAlAblAmAlsAtBt~@gKznnFrznC??oLySsiA~IyoAxHuiAaJnb@`Uvy@|N|uA}CdrwFjnnC??il@oLk}@tMo~AnWtc@mAxoAcE`w~HfoxC}d@iVisBxHm}@rRwn@~TcPd[~vBpG~pAaUtc@_UnAuB_q~IpmdD?liI~b~T??miIsBNev@kc@soBrRgFeA_aA}RsGTiFNmyA~XcnA_YgMqBsvD_Jmz@pMk\\lFg}AxSopD|NwkCrRepFtM}rDcPshGfKquCpRgdDkQylDcPoLm\\`uFmA~hEuMrs@oWtfDmL_Je[gVuXgViVfKuX~fBePvn@_Ut_BsRwvCtBmoCyHsyAxSknBkQyeBgVeq@yS~TwXxoAcPxzAkQn_CuBroBqGdxBcElg@gVvoAsR~o@_UpRafAs]bEgw@rR{eBcEcbBqGmr@|YcbBcEgrAoLkmAcP_fAySg}AcEnAiV~TgVkQaUwoA_Jwc@xSo~AgKegA}NkxAe@msAcEosAuMibAoL{jAmL_p@rByi@|Ca|AqGgrA~IutAg@_qAqGmsAbEa|AbE}uAmAqyAf@_|Ad@utAmAu~@kQ{jAyHkmAnLsiA_JkbAaUkg@pRaU`Ukg@xS{_AkQuiAhVmsAhFggAbPcwAsBqnAaJg}AlAmsArGutA~Ia`@}Yjg@ySr]aUvoA{Cnb@iVnLgV~Tom@wn@pG_qArBwoAsBohAvHs~@jQ}Y`UmsAtByoAqGutAgKclAkFs~@tMgrA{C{t@wn@eq@b[ggA`JimAcEmr@nW_qAlA{jAhFuiAnL_p@gVmWaUm}@nWutAcEu~@lLyi@zSgrAcE{_AoLs~@}N}jAqGcwAiFqnAsGe|@mLwc@sRuM}YjFuXpRoW~ToWrRoWzNaUtBoWcEmWk\\iVoWuXwHoWfK}YhFoWq]e[ia@kQkg@gV{i@sReq@iQmW_Zia@cPef@}N}z@sBef@sRak@gKmr@iFgl@}Nob@sR_p@iFuc@zNfVzSr~@hQ|YnLnm@yHlr@bExi@tMhl@|Nr]jQpGnWuBfVk\\xSzi@vMvy@zCfa@xSvc@pRbf@~YxHfV_UtXa`@rRmr@tMwn@rRuXlWmLhVkQnWk\\xSkQfVqGpx@kQfV{CnWsRnWpG``@ha@vXtc@xSfrApGd[`U|d@xSf}AfVfrAxHhmAlLnsAnLdq@tXjcBnAdmBoAbbB|CfhB?qRnWo~A~IwdAbPef@`UxdArRtjBcEjxAzNtBvXlAnWmhAxSoLfVqnAhVecCvHsoBdPkxApRypBrRozCvH_xCdPoiBjQisBxSe|@j\\s]fV{jA_UyeBkQ}kBsRw`C{NmnBePmzCe@_xCpGc}BtMkg@}Y}uAkQ{|Cg@szBmLqtBoLw`CqGiiC_Ju_B}N`k@aU|Y_U?iVdxBlAn_CxHlyB?bPgVqGqm@c[mLkxAuMihBwM{jAiQ{jAkQiw@oWutAaJosAqGyi@{Cu_BmAyzAsGclAgK}jAuMocAuM}uAqRav@ySyy@kQiQoW`aAuM_UwXsh@qR{_AgKqcAwMs~@qR_p@oWs]k\\gl@ePuiAtBs]xSsiAnAoAiVy^oWibAbE}NhVsiArByoA_JkmAkF_fAtB{YvXqcAySu~@aJ_fAqGwdAqGu~@uMwdAyH{t@mL}d@aUom@|N{_AsGil@l\\ob@~T_fAgKc[mWu~@eP_qAtBoWfVkr@gVkbAkFmhAmAaaAf@ydAhFibAtBk\\xSkg@jQqcA_JmhAmA_fA?ydAg@m}@qGaaAkFcv@cPwy@_Js~@cEwn@ePga@ga@ob@yS{_AvHoW`U{t@tM{_A{Cak@~Tom@|Nu~@uM_U}Yiw@_J{_AySg|@sGmhAgK}o@mLmr@uM}o@oLwy@jFiw@aUmg@cPwy@d@kr@uMgKaUus@cPkr@gKm}@yHqx@{Cav@tBwy@bEeq@bPcE|Yav@xS_e@dPsiAhFsh@dPmr@bP}z@tBeq@gK{t@wXwy@nLg|@hFwy@jFe|@zCm}@?mr@|_AnA|NhFb[~z@|N|o@fVqGnWwdAe@pGlWx^hVj\\tXwn@rRegAbEggAaJga@mWySiVia@qRcf@kQ}NaUa`@s]ef@cE_fAmAk}@kFu~@wHs]oWiQiV{i@gVe|@{Nss@gKia@{Sob@_Jgl@yHm}@bEiw@cEg|@iFocArBil@cPy^sh@gVbPk\\l\\us@dK}z@|C_{@kFu~@|Cwy@d@cf@cEus@tBun@nLiw@qGkbA?ox@sG{_ArGsh@{Sy^yS{i@cPimAqm@mg@pGwn@dPqh@`UsnA|d@e|@f@ox@?kbAkFibAqGkr@cP{i@kQwdAoAqm@mL}o@fKy^pRak@rRqcAmA{i@zNsiA|NkmAbE{_A{C}o@sRsh@qRiw@}Ciw@pG{_AbEwy@wHiw@?cv@bEox@bEiw@aJibAwHu~@oA_fA?ox@cEiw@{CePs]mAuXcf@bPaJd[yStXuXxSss@`J_fAuB_qAg@iw@uBaqA?wy@e@_qAlAwdAzCck@rRfKfVkg@jQibAtMydA|NwoA~IosAxHs~@xH_fAf@mg@{Sav@dPwn@pRav@tM}jAbEegAjFs]nW_fAtMun@`UydAvHegAe@kbAtBsiAg@uiAzCydApG{_AvM{_AfKak@jQjFlW``@`Ub[d[`U`Uj\\tX~pAxHvc@~TvoAnLd[nWxi@fVhl@rRtXtX|NhVbEb[g@hVob@lWmLhVk\\`UisBpGoW|YroBvHn~AnLvuBlArs@nb@~Il\\|YfV``@fVgrAzSy^tX{t@fV{jAxS}uArRg}ApRgnCrRy^r]}rDlLaKxCum@nQskD}NenCrRmseC`~}Aig@tRaz@xFeAzJnPl[|~A`Cp@i`@gHwXqm_HnunAod@dCmCdiAlTpTlEhq@xTcPlj@pj@|KkBle@}@ne@ot@pGgh@`c@mu@s@u[{g@pDk{@pTaa@qGikuFn|}@faA`_@du@jM`Kx_@`VjX`t@n@ff@pDfv@kJ|k@xEzi@zAdd@h`@fQyAh^tP`]zRpl@oA|h@?haA}f@p`@yJk@{b@_^oGsIeMfAoUuFmj@~Ead@``@c~@fIub@uAsb@zWug@r@kQrZ{WxF}o@vb@op@rGsYmZ~Y`T_y@_^bQoQdW`@__@|]ep@~DuRlMuQwEec@yKkNoGg^rEqc@yX}k@uCpn@mY}i@wq@}Sm]sYyn@}Uk[{CgPtFgp@iV{d@}EoHuLoOuDqa@n@u`AiQ_a@wZ}Nm`@uc@u^yA}Ws@_a@wj@ct@iY~t@qYoKfUo\\sRk]qZpLsFqn@ca@w]aNuWm^sI_@mPmZfFc@uNoZ}Ge]mGem@t[ua@~c@cf@Luf@zDdLia@}\\cq@c[kOtHqNcZwb@yd@_U__@jFos@wJb@}^vl@qSg`@aHmh@lNe`@tXss@|N{PiEue@fRqc@}PmVlDsM_Kw[|]tOl`@vVfXlTbAgF|WjQf^dUt]mCtPup@na@co@`Se_@nTel@`d@sPAw_@~NoHhRsz@dTgh@kTgKq`@uKuZwFga@_Rwp@tGg]qCeQfFwb@eGan@_KuKvH{ScNe`@yJia@s@yPeVmVsPp]kCff@qNpFuAfYuUv^uCjb@dAvUoU~o@cg@qVuSlY_]lWlEtZiLrt@oHd^wNrF}Olt@~Dj_@eSji@wbAt_@ek@t\\{h@dZdGbNwb@ff@iWrbA}WwLkX`ZgNsHyIfaAik@je@a\\zVyo@rq@qPdq@s@rb@hCte@w\\bt@pBhv@xI|[zOvv@i@zb@jKvk@rZzw@hm@t]xUlo@xSz]pQ|t@bWd^xNvm@`G`j@eBvRxb@vT|dAfAtx@rXv[fWvd@xYvr@sZhe@aJuHq_@ba@xJvu@fl@`u@}Olb@{Htb@mCn{@cQlg@oe@pJmn@pMs^t]iXb{@qFoSi]`Nkm@p]fj@rv@nJu_@sa@oHac@cWs]~Cgm@xq@ht@`f@jT|Vtp@xo@uX}@e`@bf@il@|_@mVwJmMdoA{d@|j@w@b{@m]znBzD|oAjUbfAzSgd`@u~|AvCnXdb@BaKpLvSfg@zJnItu@p@p^dMrr@yCjxAeO|LuTv|@xIfF|Jzd@}G|^u@f[kJqHiNlAaJ{QmBs^jP}GoOav@rAuk@eJ_]|@oRvKyDsIzGug@mU}FaUy[mm@bScb@qX_UuCqo@`Ri\\gBy[xJ~C|FisyAiwpAqPbA}i@|d@uZhCuI}Nid@eX{_@|_@y^hk@c\\|AgRxOnr@`DzIpo@vIzTzUrMs@|]pNbB|e@w_@qT}]nQiQlVrCthA`m@l@ij@~ZgIpY_PsP{Rh`@oTqKsNxVyI|KmOiNeIsm@|Pu`@vBoGkFx]y`@_cyAitjAzi@iGp^{[|HqV_Lu@oQvOsZCHrHkoz@zuCsBrWmLbMQhSjNbLjWp_@rUrUzX~A~BkjAtNm[}d@|CcRsb@y_KgfbBbFfi@hOjAvE`b@tu@o[`_@zCrj@o\\`\\aX`\\a@~G_Uaq@iK????wl@|C}x@_Lqf@jZggDefKtr@hFjNcj@yAqnCpK{KjAs]tT}TbRmQ_G{_@mTcFwKiZq]yDsLuQ_TiQmUEsn@~b@lAvSaM`d@hKdXqExOh]te@fRbRvJlf@q@vf@vpIegSdCgc@aPoYl@eTsp@yr@eHyi@cPgNe]jGeYuKoGaOoo@_[}JqRmy@}Xka@{GsN~Jag@I|Ch]kGl[eb@xg@}@f]agAdMl@xi@rLtQp]xDvKhZlTbFvu@k@|[}CdS`IpZqCpkB|An@nb@qG`n@xi@cOf\\jAzTtNb[eL|IuSa_tDq`j@h@xk@xTmHcCfq@zPq_@rB{^zJa]bYkc@px@oAuDvXrRxa@rYuK`HjJtPyEdWsDvHmr@rT_n@sIud@ne@wO{LwUcf@iVbl@a`@aUmi@op@`Zy\\`BqDlj@mz@pG_y@[_c@rIx[|s@|ZpBhRpb@ea@l_@gI}f@gPEagk@ukuA_QtXeWqCao@vHwzAhB_^}NqhAqMol@vUwc@pEl_@zXxUtk@eStb@xt@kGt~@rRTb^xw@|D~j@{T`q@dPfm@y@lCih@f^aSgIyGvEmFoI}RyVoRj]_ZrDyUfgyCkis@k\\_Dgh@z@{@fObcA~Hz|vC_ys@kp@b[xIlk@lJ_G_@u_@~ZuW|uwCsfp@yQnA{Tzr@Ifc@hNbBzN_c@jVcQ_gc@shrAhv@uVrVaYxV{Lv[iVnLkRr]g\\aL}XmUjMqL_Le\\k@wt@jIej@[g[zL??uUErNnZc]`WbHj\\tMvAtJtDjSpMa`v@qulBy`AtN{GnNw_@mFc|@zMcEh\\jLzOcf@|g@mXjJvBhJei@~I_QtOhWrLlq@cA`KxDuMvSkN~f@??rt@vBhRtL~Bl^zW_Ejw@~AjOsMlVzInV_Hfp@g@vdA_Nb~@}Clo@l@fa@|Oz\\lAd@{ZhR}[od@wKK}WhPwVvAsZm{@JybAoVoMib@gr@_SzD_[_e@oIlbmD_xa@NeHqF}AkJlFkUwd@{JYGdHyJF^~ObI`ZmDtHpEhU}B~DdFp^hKrOfJ|@lKtTrQ?{CqeArxfCnkTom@fDe_@i@}L}Qsu@iX}_@oVypAqItExm@uF`W~Czh@{bA~v@_eAhIqWjVgi@jK{XbQif@Sic@pQwAbc@eKfQY|YfQ`@aWvgAyvBrAdH`c@uEtWca@nPyMze@bJfp@bPjZ_Erb@nR|K`@iRfy@}^`y@[zkBdQ~\\~u@p@r`@rWxiA`IkLhfAqAjWfq@vc@cl@vpAgNbs@nw@`l@pGnWeuAp`@aeAuRo{@x_@mYhGcl@r]oi@kf@mbAzYqs@kM_TfJeVmWe^g@et@aB}j@mLeTzfgBn}`AhPkb@qZs\\bc@qi@~o@oa@j_Aag@dVx@t}@io@pg@rEkrAetAqeAu{@}h@mXss@oa@i@{p@j^ac@|]|JgKac@oG}c@?ka@nUiJlV`IhVwAhFaWxDgx@tJuQdi@}OpXfK|`A_KcCysAlQwa@oR}K~Dsb@cPkZcJgp@xM{e@ba@oPtEuWeHac@xvBsA`WwgAgQa@X}YdKgQvAcc@hc@qQhf@RzXcQfi@kKpWkV~dAiIzbA_w@_D{h@tFaWuEym@xpApI|_@nVru@hX|L|Qd_@h@nm@gDfb@vIl[eFeC}}Afr@xc@dv@q@rVk`@nh@sBgLyYva@ae@~Xgw@oOmJ@kYwd@aQfEy`@}NwTqCc\\ofAqi@er@_KkGmHiw@|Ac[kjDo@aZxHyb@vZyUIkl@gb@iIoKlEaA}Vrc@mEVcf@wxBl@uSqTkPxReKzc@yJuFka@``@so@aCaKcRom@sMwXgIgFmYsk@yPjBcL|s@kDtGkf@qA{h@~ZeOuJwDim@|Fup@rN_QwM_l@uH{dAkV{U{VhGsPo_@wAqMjMbGlZoTlHiM`\\hP`U~Hdt@_Op^qC|[me@h\\u]bB}EgKwRuAg[_JiSsOqa@hDgNgA}`@bDsDwKlImKgEaQeXnDo\\kEyb@fLiZzKiR}O_MrAqGrP{\\oC_WwVeR_m@}c@ex@iT}AmNpa@ab@flBm`@jIu@bj@~m@lr@mRxQmmBxHiAt}@mn@_h@smAlUyfBde@o]rc@fIpa@ugAgRsxB``@k|AmAm{Avr@ynA~dAco@~Pmt@pAuUtReTpnAkIxd@zWhfBx^xg@bwA~uAxf@reAfm@du@rNf@lP|l@mCbtBlPh_BrEfh@xRrW`JprAj~@rpArIn_Apq@bZrMld@|bAChaB~V~j@xZ~dAfQphAvp@zs@~|@bHtm@kIna@tJb~@bMn]tj@ja@jdA~lB|u@rp@ni@d\\n[nz@un`FosIxAx]tBzf@x\\}@bLfTn[k_@wWkVabrDwfu@mX|RlCle@|q@x@xs@eCff@xHxw@wVj@oKkh@om@w`@yNuk@lM_`@n@onx@tcj@lwA`m@bw@rm@xSth@vQlV~`@~C~I|\\hEnR~f@pMzq@cBx\\oPjYqFn]lMfN|\\r\\xQf^|Zvk@jE~L_UyDae@`d@kz@zOkH@muDs|@eA{@s}Eom@aAk_B{T{VvX{f@oW_RCeb@aMgJtCaW|p@qKbJuRdc@weAtcAwYtEC`UkQrf@ko@pH{mt@cfIrSrE`g@m@`n@qEdVjDjHdNfSz@rWgLrdAd^n[gEpGxCtQvd@rm@eKtl@eExf@aVlr@gTn`@bShWv^rDrj@dg@oBhi@oIfd@b`@v_@by@rEaQvAq[r[aS`Vg_@hDmUp\\u_@aDsQfEiY{Cmo@_NiJk^k~@ur@uCqJaOiId@sNdMumA}VqYkWq_@{TdE_UsPwDk{@zByy@}[el@ecAu^iXqf@sIcFvY_c@`f@EnXbI~X_ClRuT~Pqn@hZga@fXQhSai@p_@_Y~YyNnd@um@vWn|nFou~AjGE~wBk|@tk@_ZdpB{Xxa@iv@}Gke@~nAqY|Imq@rjAkl@h@e_@??wa@c]v@mf@fiBwf@z~@ifAbf@yk@dx@e[bi@sXd`@i_@v}@fSv{@|a@pv@ah@rj@kZz{@iPp|@y@K{bJK_gF??qsB`NmaB`]c`AvD{u@aYujAoR{{ArFs|AoZgeBqN}i@|Xsm@sM_Mm\\ej@tEuhB~v@erAii@mGjn@ykAgIsVgQujArBq~AfYgqC|UauApIe|@_CisAt^|vA~]_pBlLugDkFgt@}IsaAnd@_cAs^x~@qYkg@kTakA{A_q@gEmq@|My}@|`@ydA_DmmBd[_`B}HezAn@fF{e@sv@}Iy_BfTJbz@yf@{p@gq@t@g[y}@|aAqe@|gAgX_DadA{hAkl@mqA`Ig~@pZ{sAneAlv@t]gsBrKH|~@qrA_p@uiAfg@pQjm@m{@bi@g`Acl@ql@_u@mBqcAywAxCk{AdH}rA~]wB~]nm@h`@ak@n`@~Fj]jyBtj@zuAtHr_AyQtQj^d{@ts@fQhZngAhi@lxAbCjp@lYbCrg@tgAxFnkArq@xbAjeAdWhp@nBpgA{zAlIc[ny@g\\ln@mvAkKcsB`Zo}@vVwk@p\\imAdPeaAhYefBrB_cA`EdIbu@mRx}@gl@|dA_|Ajz@co@kSy`@g_Ar_@uaBbk@}_@acBg\\yeAyj@ua@qj@bDyh@li@at@|jAan@whAo`AfZqw@zSs`Boj@mMejB`Pg_A`Ewr@mOey@dT_lAfc@}QfWonBvCz@ns@wS~mAax@vHil@xc@oyAua@yz@_dAih@a\\uo@xv@mpAvnAadA~iAbXff@crAfb@ew@tb@ubBdOcg@zRwW|s@uo@hGcXpVqCdeAjl@nVzk@|T~eBfUrmAhr@thBdItdCeLv|AMv_AhChs@xk@tnAvZdyAtqA|fAtx@ct@gIicBcqAcbCas@o|AgEiv@t]~y@|h@wRjbAmSdn@epAd^gfBaHu}@geAiChl@kg@tUhlA|g@liCdd@~|@fXxdA`l@ln@sClA{s@qkBur@`cB`AldApFzg@ib@AetAvZaQ|h@rIvSmOtn@dn@`Rro@dUl[pYtH~RbBfElNdrB@|}ALd[nJ`aA~k@xFzC~RhWjx@?j|@Ff[|HcIfKsD`Rd@hEvpAb^l_AxHpgAj`@tN?fT{H~E}Gk@oEwL{Tk\\ka@gQ}c@nKiu@hLww@b`Ai\\uFcJbHsFdP?pK{HbByMdKlEvO}@yBeEtMcE`EmOno@_Srq@ySb|@eWry@uU|v@tPlSRzkAgOrq@bGr{@kRx~@}Hrj@{BlRqIbJia@bTHD~Vj`CAxtE@jsE?rzD?nzD?jwD?n}D?l|@?pxD?r`cDi~xBom@y[ytAPh@bKdhAna@bk@m@~xzCeemCvcAc`@sAoUa]eCanCvEwjBha@qDhPlaA{@jbAi@jcAlGtz{CkgxBcWwQqXj@{NxKnWz_@rZiDjOsQxyuDgmqC~`@fWvyAuCvjAiOg`@c[{xAyOqu@|T~gvD_lvCn[x@btB_CrOoPy|B\\{j@rJb~{D{yxCuiAvT|OpUn{AzKzq@oMxYmV|C{X}oAnAjdkDohpC|cBwF`eDcSrTia@rF_^v}@gZf`CsFlgAkRoVsXy_C|BkdAbSazBE}t@pSfMnVwfAbMuf@zMisAvAezAfDibBqLi~BiDodBjC}aApV_MzX~e@rOd|AlL~nAsFfrDrH~hxEqswCcwAxHxStQnsB~Pt{AeSqq@}RfvwEg|xCipArKbkAdKxfBA_@}Gc_AuQ~qkBifcBj`@jf@jh@tu@yg@cT_i@jL|TxTmv@bPy[gNi}@fRhRvl@wj@uI}Fd`@mRxe@hY`v@f[hAbh@yJqLcr@jP}FpgAdu@fd@eAck@k\\~z@eNbbAvBhxB{@pHoQ{e@aUdZ}Oos@ud@q_AobBwe@qb@gu@qT_\\vAtybDkd~BmcAlTsfAnRqDt\\_m@yCsk@tSnv@tRf`BaNbb@c[||@f`@|wAj_@nTqc@tsA~Diu@}]_Gep@iTgx@el@bDqJlZ__@sHdzxC_ilCcz@{WuiCr^auAx\\cGfZasBcMc`Axf@{uCtWmu@dXcz@ny@vqBb\\erCxg@gbBtLyxAnx@iaBbClRzj@tlBpgA|kAuYfaBc{@zoAxFzFxb@u`Ajc@{sAv[wXpOug@z|@pT|k@xmA}Ov{Caq@iwAzt@c`Avd@cIxTlhD}WbeCic@vjAm]yTsPf|Ac_@~yAi]]bQtsD|Hzs@mTeh@_m@mtBc@s_C_GzSiUyTe^{oA{{@dPsZbWkTt~Ak]r}BgT_g@yNbaA{e@bv@oBfp@iTl`@lQhpB`GnbF_MdcCiQjdBmH|r@}Ti`Ao[vwAIxRg~@_o@{v@i_AqXk`DsO~l@lg@gp@|e@wx@kq@k}CuXgjBr_AhH|g@nqwDmxoCgaCdAkvBdNj|Atv@niAbK`bAtm@hfAiA~e@{u@_@a^s_@qYl}nFitsC??aiBwm@k_Cmg@{~AZutAeHpG~n@bo@tTjy@`BdsBvY`cBpHjebGophB_{@_DtQ|eAku@hq@|WCrd@s[bVw[p^mRpJoZwB}Rf`mEk{yCuyBpG_hDxUyn@t\\iW`Y`eB}EzeBgSbjCiAk{@qQrjAaNjfpF{v}Al^tGreBk[vQeU|v@{TfJyPh_AgJbW_a@mDoMq`ArLke@nHwy@rEgTpT{]t\\k}@xXbklFalpCgxA~Ks~ClBw{@bQabAhYpmAvNfxC|j@nlAvj@?fZncDb]~_@kZhoCa`@yYmYij@ul@eu@ah@b|@ie@tqqEkcsCsv@mIo`AvA_Jp]~d@t\\trEtHt|C`Z`~Al@|FkSy`CuZjyGnFjvAeJgtAa|@yy@oP{nDbTanB~c@elBvCjxAyz@gx@wUo_AfFcTv\\t`oEgvmCaeAdXef@|{@kR`k@_hB|]woBr\\vEnZreB~C{f@~V`T|UbpByHnjB{OtgAxBhtBdTj}CjHdnBzDz`@m\\htAaPnv@~E~kAop@qh@uEo_BsIcwAxAqpA{IzwBsMpdC~CrwAi@|_@_V}oC_Xl_BZblBoOms@ym@qj@{WifDae@{~@bKd^f\\ajC{Q}uAp^seA}^ax@nSer@j|@k^{Xjk@a_A_v@cHjdcEc_mCzcA{g@_iAg]oiAdLonB}FgObQjy@|\\s}A|YfJfw@neBdWd{@eDfj@{VhzCgo@g@_SneoE_wnCwrAoAon@vL~u@fh@n`Bwj@fk_E_ztCwn@|[_Ab_@n[lm@`fBlEdbA_Ii@oc@leBxC~Bio@gbA~@e}AiT{vApB~ozDsl|Cij@aRa_AkChZiMipCeBynAj`@ehBjLoeBxJkp@fh@kjAdSztArQlrB~m@pmBnCp`C_GbbAoX]uUmp@sOhqBNzcAySrf@i[d{qDk}~C}{A}J_hAaAsyBcI{zAgVolAfBobAnPon@w`@oqA_IaoB}Ea~DqAe`@vEmsDqIkfC|BkfC~BafDzCeeC~FkqB|OvAtOnwCbZdvCtKpw@~LcgCKnrC|d@zdBtPziB`r@|_CjIxf@vKf|DtEeuAxFdj@dJur@x]lz@lTp_BtPr\\lWhvAtQwGdMyiBmAk@fN~eDnd@hbDgPrvDtH~{AqFduBgBxF_]qrBcMx]cl@ce@kCcfD|YftAag@jdB_Ksq@eWymB{MwPwTfwAmWpYe_@{iDtAip@vEq`BwUvkCgFtyE~BnmBgT`s@gX~gAiQ~{qCgvbCrg@lQ`eAbBpNq]oYab@ix@sGyo@hPUvY`_{DcvfCae@zVze@|TdsA}Q|q@xEhtAa[_v@kRuj@cZiaAvPod@fJl_}Bal`BsTgDeqAtN{~@`Y{@nJl]b@~oAsR|_|BwzzA}Tj]il@jG}x@u@v]rXbV`ChnAqYrN{SsvQiy{AmA`JpHhNg[jJ}^t@~CrXnZpIfm@yFpLdXv\\~@xI}H`b@fTb]|AzYkLnTmZx\\xH[i[wl@cb@~@{Nm[vDePuIct@L{KqLr`eCvxeBApjC}aA@sd@t@tSfXrt@lRt]_A~c@aDjl@yQn`A_HrmA}a@x~@q`@buAaeAqr@bLwvAvh@{qAlUg_@s[iSyi@qx@yXj|fCvia@s]ni@iGbl@y_@lYtRn{@q`@`eAoWduAal@qGsFrNlT|_AbcAz]_AbgB`LbSuQnW`k@ze@|g@ry@jUxw@}Dn{@ne@h_Ay[zjBeOlJBnx@tb@~{@m@ds@hn@xg@Elx@_R~{@ld@tUtOvv@tM~~@qIdkAbXvKsMbgAe[tVrSdY_\\pKuEnVfZzJuEtc@xUvqAb`@jt@gFp^xRtf@|n@lZmDhaA_UrUsh@_Cd@xm@{Xlc@avCjG{x@vHpv@Mb]jNjw@pU`Ijy@nYl@neAiSpfAoj@??vlAwb@pRsf@uPsc@l^qh@~FoiBqYc{@_aAio@x}AeQoz@gv@gTyfBodA~Ts_@o`C|h@qOnR~lAlf@yGsRkxAiTyrBu[ui@~P_|@bDmeAiY_Ake@}cBej@_cBoYc|AlMs|AuQqr@nFelAqc@ikAgJ{wBaSy`CqRwjCpCieB`L_wAe_@}NeytEkpb@fr@kRx@wt@y]i[icAoP}b@l@}LzVlZnZnMbc@gw{C{uqA~Csb@{i@gOfw@skByzB}W__@}Lal@{nB_{BpSwa@g[_Bu}@}r@yDqn@sh@mWcDmOrj@os@b`@exAlVcj@jq@`W~gAoUbZgiAtIesAvGojA|e@se@|Em[rx@uc@`d@}cAm@_`C~LcrAuGu|@hHm{A~d@sjAAuZlRwgAq`@_dBwTu|AiA_hA_U{k@o`@wj@_TbIsS~R_Wy_@ig@eb@rDg_AtKg}@e`@i~AeWyl@ih@_k@yPwyAgGip@~E{EeUrw@uj@dq@_S~n@`Vt|@uHjb@zFbOoXek@o}@m]cn@_jArVawAof@PoZmw@iaAwa@_SVoa@ha@{Msr@a^ulAiJyqAu@q|ArQ{u@~Use@`~@mVzYwTje@cVf|@ykB|R_iAlk@iXvy@_~A@eu@sWgfBmQx_@fw@hWzUjTlcA`i@x{@zjAaJrt@`UoOnt@~GzhA|^t@Kv^jg@{c@xW~a@p_B|YwH|_@~t@gAt\\sR|i@jk@zcAp`@zq@bg@jvAbQ`m@f\\fbA`Pe`@_\\`LiWop@_i@``@w_@lu@`UpeAlj@pe@jg@f|@~Az^b\\}_@hi@cr@fIcA`[mp@fQ_eAsk@ov@hWmg@t@cIt_@nwAnPd\\v`@v{@h^b_@vj@ibAja@oWl|@ae@hx@mi@~n@^lm@ff@`P_Nh`@wc@jRrH|q@zNnp@za@rDtl@tbArq@~pA~x@riA|tArx@|uArs@leAdFde@vZrTgSjb@`^hvAh^daApHhT~`Ara@tBjOkl@wMeWxrA_Sp\\dI|}@gOv\\kX{H_c@bx@mJb]mVft@h`@v{@dFzp@Ip`@fNj_@dHmHnfAh`@w@rDuMz@yXxl@dQbZoJjm@mVeQ}r@pf@cK|Mox@|`AjIoFeiAez@es@oAqr@x@yn@hZ{MzSyc@pc@rCjbAiHcTgYh\\{e@pk@hYls@iN`gAvf@zw@nm@jq@xFjZyO~_@o@tk@mMv`@xNjh@nm@fDgp@be@bLxgAaEveAkMtq@mZpo@iK~S_]bb@_H`~@ug@bq@gR|X~MzuAwj@j|@qf@pP{cA{k@jGaA{^zW__@iE_r@dbAghAveBgXnQao@dm@c\\bJ}PjHsb@eAiW|d@gMpShEzNyx@yPiMrGsMuz@o\\ej@gKcaAjGsV{f@eoAmFiUyWmaB{`@ztN}|RcGsDiPjHgo@NqJgQwIf@aQaFuHvYqM}FyXgHa[rL}ItSc[dL{TuNg\\kAyi@bOqOzwAjYns@fOreAaZxt@xAtWl[Rrj@gK`g@V~hAzIlj@`Qz|@|U`Ku@yCmr@}DyFz@sWnYeYxReCfQePsLwZfEe]{AeQ{HAuBgZxCaK_EuGeVqFlN_q@lM{XaDeT_i[ubXyW~f@eClh@fAph@_a@xw@|a@SrPlCn[gEpLn\\{c@lc@gZrIyGzXuR`j@xH|Oj^j~@~MhJzClo@gEhY`DrQq\\t_@iDlUaVf_@s[`SwAp[sE`QnCv`@tp@wMnq@oOzmAmAxFmB~c@`G|d@kGv\\bCtdBm@cHip@lWkh@n[qItK_[~N_HUgPcOgk@u\\g{@cQQed@sc@uV_@cb@tX}i@aTyD_YaMeXuHs^m`@wXqKwj@iL}LyGm_@oO}f@ss@io@iBySyEgJvW}WaA{Rwhx@fxGgJnx@fEn_@oKfc@gc@~a@w`@vmA??rWkE|rApIvOnFxPzf@_MpZbJ~hAvFv}@{ObJwj@hWcPkJgDjbAzn@OrXka@`VuYzn@uG`Mw_@de@tR`q@uGzSk[tf@wDf\\n@rBmRpTq@l[uBve@jHbZq@nNvDkBkiAzSeVpCme@eHud@tKcWb@if@xjAPmDqUz^FjBxIve@lAtNlc@jHrNpa@yGrSxGhh@`D|Vu_@jMgS|Pmd@jNsm@lwDY|TnFbQc@xXjGvGkR}NsE}@gZgIaOwUcLkOjEkT}Vaa@R_CtPkV`Jwc@cf@mc@q]wN_S`Amr@cZu{@s[e_@eh@c]eF}Rq@}UeIuThBmb@yFkv@eK_f@wQk`@uBwd@sDsj@iWw^o`@cSmr@fTyf@`Vul@dEsm@dKuQwd@qGyCo[fEsdAe^sWfLgS{@kHeNeVkDan@pEag@l@sSsE{d@rr@a[pFwOoI{[bCya@gL{MtY_v@ph@??xB`hAaXnG`SdU~VpO|Vr_@bL`\\nBbq@nMzVPbn@|PlPhAdd@rGxCvDda@uNl[i`c@_zEtBvd@vQj`@dK~e@xFjv@iBlb@dItTp@|UdF|Rdh@b]r[d_@bZt{@aAlr@vN~Rlc@p]vc@bf@jVaJ~BuP`a@SjT|VjOkElVmTzQnIfX~Yhr@eaAqn@oa@pVih@mTwNei@sF}CuZm`@~\\cv@rAeRq\\{Fqh@xEwo@p\\_d@aZkgApNmKnm@bDnPi_@qCgZ{mAlAoq@nOup@vMoCw`@w_@cy@gd@c`@ii@nIvraCimAxJtFdK{c@jPyRtSpTvxBm@Wbf@sc@lE`A|VnKmEfb@hIHjl@wZxUyHxb@n@`Zb[jjDf^e`@tQo@ig@s~@xn@g\\pd@jDpUyIla@nOnm@yFzc@q`Az[aO~Ro\\ph@s\\rO|DvYyMt]uSvP|H`t@uGfN{YrJ^n}@ub@nGkRiVuCvAi^sMuU_^eCkYgf@{Vy_@~U{MwJgc@`Mex@kLkOzH{s@hXi`@aGk]cSnCwJqQnMyc@sFeHg_@~@}m@sj@uXsESuSqJys@yb@_\\kf@e@_D_L{o@dDep@q^kW_Mg]a]cUxBmOlOdK`Tbg@lIzNf^dW|PbQfVtFpk@hPpc@g_@dCaGv[wLvL}CbXlFbVgA`LkNfD{MvTkoA_Eic@~F_k@vt@gXuE_l@jBsb@cFcUvIhJr`@|L~SzCxk@qKph@wPpQeA~Lt^`^uUxLsOxTbf`D{tQdWpDKdX_LfHjHlFmAhJdDrKhBlKz`@{LtKcLeFyIhAyLhP_NpWgKpTaG`CgQlOeJaCdQnK|MfMkPbScEnGsKI_RiGuRtPyGiMaKmHaGeh@pOkMeGyRfDkIzKmQbC}MgL{N~`@cWbXvt_Dihl@_u@nCap@Tuy@hT}WzUky@aFcUtM}s@te@{e@d[qS[id@vKpCrPam@pAgn@pXlFtMph@|F`i@`B`j@}ClxAbE{h@{a@nXgOfg@eCrTaQxMqb@hb@lAfy@wOxQcLlpAuHxTeKmVsNh|@eBzk@l_@|XZ|GfN|]zEvY}D_`@iRqLqUg[{L{^eKkn@_Ew|~@gscAkCKaHaN_l@Zyw@uQdi@rYqCtJvEeA|JvChHi@bBlAf@iEnC{B`KS|OhDw|~@gscAwJfB}OiDaKRoCzBg@hEcBmAiHh@}JwCwEdA}@`D`_AjXr]cGpMaXqi\\eybBs\\bSwm@lD|BdP}`@|KkHcO{i@~E{DpRom@vBw[x]rQ@tHfJjMtA`CfM|J~Av@xDhTlEtZa@zGvLx[yJh\\fBpo@aR~TtCbb@pXlm@cShb@{Yz^_NrEkY|IqQml@sLeVqN{k@cKuN{JoOdFoqZy~gBqMx^jPtOuUfUmNl`@zCpTsXzf@zZpEnOeFtNzJzk@bKdVpNll@rL}IpQsEjY{^~Mib@zY`Ux[lU|F{Gtg@xDrInRwK~\\}@tk@dJ`v@sA|GnOr^kPzQlB|aAcRzKpLbt@M}Fok@q^yi@`yAoJn\\kOqBkZnKcMcFgi@nIo`Aod@?{NoVqNgx@tJcTeKgLgs@kBsJvLmi@y]hMmVzAmb@gn@fG_g@oHc@bWc~@pMTdUq~@uJcb@cPqeArW_vqA{nWwYlDyQiNyMjR~@|Xrb@|MyYbP~Ul`@zLcJ`NlCza@a@^_RzCgPcTi\\ckRmkjB~f@nHfn@gGjXua@z@{~@mI{O{PwQav@{B_UgPgq@sPbAb_@nQjSoFnP{`@lHfNrVrQyE~k@~k@edW}qlB}Rh^nd@rq@j`Aib@vG}Xv`kCyfb@g@_P`OwQgNoIwCaWlD_a@yFuIwo@Had@`OmOq@kJdUea@g@~@rQyZfAu]|UdVlXv\\sLt[rApS}AfJjJ~VzBnHeNtS~G~Wvi@bO}Hv}Ogot@e@aK@eCNaiA}cBcm@k}@qHer@wO{Vi^chAwWuAgm@cc@mDg[cVypAqImJiWlOgLpT_aAvB_e@pV_g@a{@ea@sbA{Imf@wXe{@aR}hBcJkfBaDo^fH{y@sWwaAMmXnMwi@wBtK`_@{Hpz@tMpr@pe@za@qD`n@ar@fd@QbNqe@dXsYdoBgSdv@kB`\\~I~q@oCn[|Fda@mDhf@xWbY_d@pl@iAvYgUza@e\\oJkp@`\\mZbf@duEbvB|sDxyBdwAzZhdAbETyf@|[cI|e@{PzMi\\xqEkgCxqEkgCxerCnHuGln@lRtg@bcAl`AdjArWhe@ju@xJdi@hb@tXfYq^fXwExX~Ct@}UyP{MlF_Yi`@um@pLiZzV~[ld@kZuKsPpIww@}TkHoJ}e@sVgg@jCoXga@mL_j@{Wo}@tb@sJ_@gNzYat@tGwP}Hu]tSc_gA_~i@zvF?nqF?fzF??eeF?g}EvQiq@cOse@tHuYsU_]crAa@e{@pO_}@lQ_\\vHao@yRwX{Pcv@eDmk@zF_P~]oMkScq@vMuo@pBw]wN??{a@bzAgEfOpPbXlLdn@~Op_@rMzIxScSd[}Zrk@qxAlEtD}X|`Ake@x}@gn@j`BaV|`@aShb@aw@ddAjK|I_Arg@ygA`w@{cfAkd[tE_X}Y{zAeEqh@sRcRam@iIs^sb@ic@hgAePjx@ga@l]itA`z@wa@rb@{`@`c@qRnTu]vQxQhNvYmDjTgStXsc@vZaSbOsTlu@aXxi@WbNaLrc@vM|d@k[nRrm@zpMsmgAdDuScVmVsG_PpTqQgPah@`Xod@_ZcDqAq\\cIcHYwo@{[}OnPi^jc@eAvIzFzc@@tNq]nX`HtUzNeBok@pXcZmwAal@okAfJ{rAKoaAtI{r@iBadB`A{WhWarBj[wUoLieAh[mgAcGiBhc@dz@rh@`oAdLrD`Tje@ra@bWzq@kWtb@bc@|ZnLrg@dn@lKfk@`o@jnA\\pz@e@bf@`UzVrVp]eDdVcTtP}b@ysu@edsB??mHzInk@~b@qQhy@xYxRnr@Axt@gVjZsFft@`JgF{c@~UzFrf@gUlD{b@_nAmPwmAaHybAhIo_Ay@yi|AesNpoDpzDlpAvAtv@`k@`g@d@bPtRti@?fXcT`x@bYnQ`Yrh@}CzLeFrMt@vRSbnAat@nj@?jTqS?ab@l_@oI|c@_cAp[oM|I_Xt^m]je@oCiTsb@e`@o@iHcRXew@mQk`As\\oPiEqXwYwn@wd@}]kXq|@_Iut@wgA`LoRsm@}d@j[sc@wMcN`Lyi@Vmu@`XcOrTwZ`SuXrc@kTfS~TrZbTh\\{CfP_@~Q{a@`@aNmC{LbJrLbUaVla@aVb]{VfUikEdiA_zv@q{eCbHvj@u~Ath@rx@bn@ugAbfAbi@pt@iw@pm@pXtg@o{Axi@nVz^`y@bc@xdCvnA????lpB~CzlB|UtdBdLdc@ca@p{@oS}Lq|@j]kw@y\\mc@uw@gf@_nCwbAuh@aLnEmY|uAq\\`TiWt@g_Bn`Bqi@hrAq]md@oOmdA~_@spAaBcbA`Nqz@sZu]yl@_`BeTgoAzW_q~Idk^?n]vf@jN|f@dL~FiVg^yKyRmB{{zI`ea@oNiIoT~PhIt_@ve@pGna@wF~DmZcWoT`d~Ihh^vF`]dDhB?o]~ovBrgdB_jAod@ct@rNod@_X_q@b[vQzTjsAvQb[{Tbt@b[r{cBwbG|c@dx@dR~l@~VvVz\\nCpGsP~LsAhR|OhZ{K}NgYoDs[}I{YpWad@|Cwi@q_@wt@gTzE_m@xMeaAvs@saKor_Bo\\jOayAnJp^xi@|Fnk@dPtIl[wD_AzNvl@bb@Zh[y\\yHoTlZrArPmQnVtT~QcOjo@{`@|FdFbZrw@hb@fzB}O`zAhSbFrd@lgAbGheAi[vUnL`rBk[zWiWi_@od@{Jo{Bn_Aq`A`m@s^p~AaWfEql@_pAsL}gBbOvRweA_z@xYopCwo@wQgr@uu@sK_H~Ta\\`@a\\`Xsj@n\\a_@{Cuu@n[_MjDsaPggrAgg@{VsIrt@rSfo@j[wKnMai@w_UilCw\\cC}d@jG_d@aGyFlBpCfZoPh_@om@cDqNlK`ZjgAq\\~c@yEvo@zFph@dRp\\bv@sAl`@_]|CtZdi@rFlTvNqVhh@pn@na@f_Ac~@hh@qr@|d@q_A_AwSsL_SeNol@sKim@aTsB}yARjbKwehBfn@{Kre@Z{Ko`@zKo`@ks@qA_bAre@j`EyhgBC@eHic@zh@oe@\\[zjA_J|M}OwU{ZpSgPr`@p\\tBg{@p^{^uUs_Aqo@uq@}p@|CkjAgDxaArbAu~@qGocAHhO|q@dw@~v@s_A~B}CpEuv@vhAyi@`Ime@dfAyPtWwjAzJrF~f@x^hQ}Wj_@fw@t_@rrAQjiBdPb\\iKhh@h\\zx@cFzj@zVf`@oKuzAs`A}v@oLNAp`BkItP{Wi`AkRfa@u`@{J}g@e`mAuysAsFkFys@tI_{AbIctA|\\}IrJ}d@yHgy@`LcRtXif@lMfOrGy]x`@nGjFt`@wBrm@}PhNdIxuAvHd{@u]raA|AiHuYrNsi@bc@aVra@eFo@uoTrCnRcYf_@Bjl@}Dfp@uNxUxLfw@}Cb^uOrf@}L|T~`Brc@va@jThw@dQtv@wPyAuW`Zyt@gOseAkYos@pO{wApGan@o@ob@qkB}AqZpCeSaIfwYsqWc]R}k@fNwLk@uC_Fca@|C_HoBsBzU{HAiOiGkI`AkPzNwY~CcPoLeSkG_NwGqKr@{LvLmFdPsXdYxKbOlAhSiLcEyFfFhBrQaR~PlKzC`DdTmMzXmN~p@dVpF~DtGyC`KtBfZzH@tPs@vKdXtPIbKiLcCcXbYge@jO~EhLl@dPpBU}U`IiOaAeQpLgYjPkU~p@ApMvJfPl@tInLdFhPl`@nZjZ_d@hWmW~NcGrNkK`FsZdHyLbQeIwZo]_Rd@iOoIwLC{HgGhDwSyEoErs_@upYacAy@cMwMyR_@uWjNkRFsSoIsK`Q`Z~LbZa@xYgLdVlMdJP~MvG|w@i@hq_@aeWa`@eIuS~@yO_ForBrAd@dTxEnEiDvSzHfGvLBhOnI~Qe@vZn]j`@cYhYeCjMsPKoH`RgLazQwmCudBl@QdjA|yAS`TrBtJmHcjr@g}cAxFlQ~xAhDSiIfkAeKqJqYea@`Tso@qBom@lCn@zIoyk@svoAgm@x@aq@eP_k@zTyw@}DUc^m]pOhRbf@zM~E`e@y@r_@{DtjAfOij@bb@v^dIxa@@``@e_@vJtL_Mjd@g^h\\pVtLya@x[}]bQ]hb@xx@qOmQz^tf@pEuVbv@nh@Xfr@eZlV_q@|Iqh@jWw[~^sb@fCyPa\\i]wBiSiSaHg@mO{g@oDyVuL{`@f@iI}IvizAgk`D{pEid@gzExAwnAaV{{E_EgrNxF}eKpp@lrB`WbnFvAjoIbEo^bJe|E{Ei{DpTixBcR}r@lUrcAhc@c~CgVonHeWkzD`Kab@tYv}Fnk@hb@jMvfExIwoC~AbhApl@hq@pg@}@ndAajAxg@r`BrAveBvRirBb`@uMbt@xaAvD}oAvt@xiCnCmgAlXlS`UbwArHbvADimAji@YxZrzB{Xd_@vOksArN{pAde@uVhq@jnB`Kdo@aWflA}b@kTli@rgAz_@wcDrAcuAlBnfDju@zhDhp@|uDpT|cAFr_AbW|uA|`AleCxj@dj@pAdrAjNxxArMpt@re@Zxj@r^`h@zdB~p@cXxo@`[tr@~^~{@`wAxBh{A_r@|{BIr{@ia@th@_|@hkBwlAt^ug@pGew@puAux@oUam@th@_Uy|@ahAa}AgVuWcYaLyo@lfAbU~`@hHbw@zGtkAkSdCmi@mWg`@_y@]q~BrOljBuf@|v@kTf}@vGds@mNydAgy@~d@iVrp@ej@fjAgaApnAiWWcYvfDqc@tcCqC~eDnAnwCrCpgA}RrkBif@ccDsRy|BiBljGgOzkCoXsGiWskFa]{cF_]eWwUtgDmUou@}WkwEsj@}yAuE`Ya[asCoOe_EyHa_EQecAnRwdDma@etCjVwvA|Cy`ChSrsCu`@fcsDuk[q@eQgFuMzGsJa]_r@goAEq@gTbIyB|EoLbVmMfV{Sg[E?eb@ky@Ayx@TNnp@zCpeAsQ?kShJmDiHiQ|Fn[zVr\\nPjC~J}CfK|KzNrMxBiBjFvJ|ElTvN|@dH`_@}I|e@c@r[kKtlmBwuBfNfApa@iDhSrOf[~IvRtA|EfKt]cBle@i\\pC}[~Nq^_Iet@iPaUhMa\\nTmHcGmZpMkMn_@vAfi@mn@}OePf@{[me@aIoNuJjTeVmDyUqp@uc@_h@~Uue@tg@w@d_@qVn@o`@n]uWvT~Hdw@|d@hOkBvMpJf_@uZjl@aSBeGfb@tkaDgh\\lTg@tGnGtTdGvN?xL|FpKyArIqHpEz@~FzM~DO^zKxTdPpJlFjEvFlQsKnLtO`LMrMl@i@v]dHPxFfMlRpAvIqR~QkDiCaXnGwExKoClZnFhAmGzQaInLmKjQgD}K{N|CgKkC_Ks\\oPo[{VoElAuL}I{P]yDbDuHcBa\\rD{[s@cS{EiF_F}RdB}MfCkOm@kKmDq[tG}Hj@aRtJaQ~LwUpHij_@oyyA{RtFum@xYsr@`KkVkHeNdWyRxP`WpVf[{Ldj@Zvt@kId\\j@pL~KlUkM`L|Xs]f\\oLjRw[hVyVzLsV`Yiv@tVzErI??vy@cVfc@oUdx@qQps@_m@sKuCn[gYb@cTdg@{HdR~YlQ}Sk@uTgA_@qj@bAmJqIgTdIqWf@FoPwTkEaEgX~`kCcoe@mD~`@vC`WfNnIaOvQf@~Onh@sIn\\hCde@oCd\\tJn`@oRoDcSox@tGen@~CoU{Lp[cZO{Vlf@wHaMgPce@vAkcj@kq}Aua@~OkCvOde@bLp\\ji@xd@ji@bq@xJ~e@yAzn@lO??jVjHrr@aKtm@yYzRuFbKaTpIUwSgg@`KqLeb@CwCoXw^~NaVxEos@uF_DqKyWy@m]wHwE~Bk\\yFuMuMmSyB}aA~QokrGnaDa@tjEa@tjEtv@ir@l~@qKlNxPdnA|@qY{q@kf@kPhO}bA~\\os@dxB{s@nr@gDz|Awx@lQj]~VnDdM}UDcZvn@u]ibAqUqk@f@fDqOnzACvWgd@xv@oJlY}]gsAeN__@iSkcBrXyHfVoP`dBu_Ald@es@iaAwfAud@qv@Amt@vTkm@jUqasFxjPiEhKe@|Qxg@tm@nt@vLnFoFsDgT{Yce@cceG|mL`Ean@aJmUcLcTeMhQBv\\sfeFsaGpb@nw@}l@bz@vIv[aeAzx@`iAjFzSri@wArw@b{@vi@r@f}@bWp~AdHgU~eAb[vWee@pk@qBd^_ShiAlUxUg]|g@lBnr@eFpHyrAd^kP~\\mt@tGuu@gF}x@cd@oh@mIvh@wi@hb@ig@uK}f@nCkc@s^_]oDcz@nP}q@iLa_@{uAaWwTuTcfAyfA@ut{FbnDwcAfQwUvn@vs@wXfs@eDfb@bCfj@gAyMia@uxvF|kFdj@oJdK{Yg~@_BoNrSwzxF}fCoCba@}c@nDyDpXfBru@f_@cEnH~d@wX~_@nPnFfXqf@pQ}nAsK}p@_boFuu@{fAsAw|@kl@}I|Lfq@~|@|m@~Jd{@eKbgBbBru@~GzGhn@}v@pv@w`@i[qsBgTdDv[dZaHbZrc@`v@dWez@boAlJlTew@dgAP`h@h`@jQpW_Ug]er@j|@dWpNgPcGeW`l@sc@sC{{@th@~QiDzgAqAjxArf@`HzYiQ}Pqx@tHi{@hYMjRyi@yX}g@{Gsp@m^e}AcLwXct@mm@yo@lQm}iFd`S|qAyj@gy@iK{_@`R{T~QvBzO{~kFptOqh@wCaw@}UdHva@||AvPbrAwFDyUsp@_Li~eFriOqe@aDqNpYhgApKfj@jGr`@OoT_c@ga@OwOaUm{rEjpKoGfUwvBdEyLwX}rB`]wUng@w|AlJukAbd@hfAxVvcAeXpw@t@z_AsCny@eJjgA{Vzl@eE~XxF~pBwXxI{Yfx@sC}i@uz@yjAtBmq@lWczjExbAqIpj@yTza@{l@pDm]pf@vNvlAlAr_BfdAh@rs@gs@foAar@vY{d@hn@{q@~]{m@pn@ovAzu@as@jQwt@`Vyo@hw@if@t_@ot@`n@_b@d`A{cAnDy^gg@nAw_BbKgv@b|@ko@ji@ma@~Xez@dbAq~@\\os@xi@ec@js@qn@n[~W`r@yb@tT}a}Dkev@wCtV|TnJcDle@tk@iJzoAdj@{@xb@na@ls@bBl]zZnr@zo@gMlAt_AbMhTsEpYx]xM|_@cbBfPDfI|f@da@m_@iRqb@}ZqBy[}s@~b@sI~x@Zlz@qGpDmj@x\\aBnp@aZ`Uli@cl@``@bf@hVzLvUoe@vOrItd@sT~m@wHlr@|GxUpi@W~kA|KqB`n@j`@|c@|xA`i@|dAphA~m@lf@f}@zg@Bv[b^lNhw@jUd\\hBvQtn@_LfpAiBzr@lYjz@HdiBh_@~An[tn@aRpS~w@vP`Tni@`X|Pdz@iy@|[qvA~V_~@zTq\\d`@a{@nNemAxI_f@zw@{tAzXcxBtQ}nAEwjA`Koy@~yAld@`k@oFrpAwjAa]sUlQoWhhAat@sh@uh@ohCBjKst@bb@u^bFco@|g@a[{cAo`AsgAvCk`Aq`Aef@k~@s{@w}@\\qk@it@cc@lq@{]vTgi@bUyu@s]}Yy}AfNudAiHi{@os@ebAfhAhE~q@{W~^`Az^zk@kGqPzcAk|@pf@{uAvj@rf@h[hWny@q{@rV}y@t]opA~a@utAbGac@x^go@|DejApMas@a@eFuWfGwf@yC}Yce@cLgDfp@k@nKyw@vVgf@yHys@dC}q@y@mCme@lX}Rkq@yF{w@om@agAwf@ms@hNqk@iYi\\ze@bTfYjbKwehBiItk@fn@xv@xmB|c@lwAmHuq@i`At_@o~@atA_p@gn@e\\{Kn`@zKn`@se@[oz}Ammy@pa@y_@Ri`@~R?gIgl@b_@on@rkAga@fj@mz@mMwo@o^qTvCoc@|g@yQng@oiA??da@cq@eKiRnRufAyi@yP}HpVq^z[{i@hGsU{@uhAam@mVsCoQhQpT|]}e@v_@qNcByR`m@gz@~Kkj@j^{wAxIs`BqO_EsM{u@aKok@wb@wh@x@mZsJmk@vDcdAt^}p@xEmfAjv@qm@dAoDrs@nXzlAdPnl@gZdHvYfa@oSzp@{Ctf@in@nIcDfg@tw@tw@}]z_@eXvd@wz@lZu@`v@}\\bIeDv[dyAh_@pVrgAptB{QbcAkMpeAcGrYskA|\\aJ~n@bJ`~@f]jkAuS`~@ao@d{@yPvh@iz@bm@irAr`@bIvf@uSupkAay}@dXckAkiC_`AsVqjAzDul@ea@mNa_@_f@yYuHugA`G}TzN_]oIog@niA}g@xQwCnc@n^pTlMvo@gj@lz@skAfa@c_@nn@fIfl@_S?Sh`@qa@x_@`d@aB~h@eDzl@~z@fsB_DdoDu|Bb|Awj@xi[ox`ClMlg@seAri@fpAtn@fsDxi@zt@lJhqAgHjmDwRq|@sZ`gCq]umBcKtAkQdbCoMei@wg@w}AeHm`Bji@}}Aaa@smAtP}dBi`@owdAi{~@zItRrUuG`Lrh@uN`F|NpGvAnOm\\oGm@hWb^|bBfEgOza@czA????eQsSfCqBqOe\\sKcn@}G{Nw@S}SBwD}IwOY]pXlGnHukS{qzA{d@|GgF}Jw|@yI}LtTkxAdOvEv]_NrYvp@cHxq@dUmB`^tFxPoSx^sy@l^m^tr@qdAjq@}o@KgNxLpPlK_w@pU{l@|Qst@p_@mEtJtJjUta@e\\fu@gIhYlg@cl@bVjFr_@bYtBj`@rt@`YxCGcRwKo`@qLkLjWec@`Ro^~XyFlQ_Zbg@iJ`ZcXfm@aCxo@g[dx@sg@ni@_c@nRy|@b^gFxq@sSv[lGbc@~[~XpCeFcZz`@}FbOko@uT_RlQoVsAsP{YjLc]}Aab@gTyI|Hw\\_AqLeXgm@xFoZqIqy[_oiAmn@mDnUdp@kHjRbLb_@xn@qVv^wEfvAw^wGa_@chAtDk_Pg{nAg^kRod@jk@vGtqAl[}BnXxStVqOnAkjAfMwb@bovCubc@ai@rDg`@~MiIbP|j@d@|QlI~a@aIvb@wUoFiMiYiCsldAsg~@{IuRsdAvWkyBsaAeXbkAzJlHd|Bj^i}@l}@tSrIfI|Stn@tG~MnU~YfRpdA_I`A_Hc^}bBl@iWeHkQybtGyokAzx@|}@a@n_AnVzp@{Ih^p_@`k@xnAj\\zlBzB`xAhfA~h@_WrAwm@tkBxL|hAl\\dhAd@k~@~l@th@fiBlg@fYf]gWkNiw@pf@eQlX{i@cz@gRw_@if@{}@i_@{l@ui@k{BuQ{aAxKk`AcnBuh@z\\uzAo}@ob@iWif@mkAvIgeAmYof@maAoJaa@tuAimyGqztAgk@oY{LdeAt{AbPvu@`}@haBwi@~`@jcAndA\\pGc}@{]ao@yaAoBeQmuAoQuo@mhA``A}n@~SepaGoj`Aqa@gd@qb@dFuXgY{l@nL_GlTdb@xd@rXaS`_@nMpOpc@vg@wP_siD}b_Bpn@rh@|r@xD~At}@va@f[~zBqS`l@znB~^|LxzB|Wgw@rkBzi@fO_Drb@ne@eHj^mUv{AqErfBu@tUzE~wAgYnb@|KtHzc@xeBoTdh@xG~LjZxb@pJlqApj@jZtk@fVLbPs\\nnA_AtKgr@n]MuCu}@xiAsl@djBzChhAbHtz@kw@br@sVz_Bwk@tJmDz_D|c@mAleF`_@`Bvj@_p@fi@oP|eA~KrZxSnBgNkNaY|JwTlgAiTd[cw@na@yN`AkSy{@|DkAul@ct@cIsu@hHgJ_|@bJse@p}@~Abt@gNjgAnZhy@bLv^cIkEe_@zf@wh@jm@v@`t@ki@cc@kn@fQwKyp@ucAi_Afc@wFsl@a`C_cAs`Bs@whChj@_iAfXiaAkYabBg@}nAl_@eQqQwvAtAuNs\\fdB}i@}z@o]tJ_P_{@gObl@yi@u[iT{hFwTo]mNk{CaVew@}XioBlLuRx_Ag`AgNioAhTdDba@}z@qBs{C_z@zUrRwnAho@ujCt}Cg`@u_@cuA~b@yxAaOoa@fJa]bc@wj@bKqYnYooAkGcqkAhcHtxAo}@fCgc@raFi~BpI{ERgaA{PiXw]kh@wUql@nZwfAhFk^r\\kj@me@id@ki@eh@m_@nI?`b@kTpSoj@?cnA`t@wRRsMu@{LdFsh@|CoQaYax@cYgXbTui@?ru@zeAWtbF_d@pr@vj@~WlN`YlVpCzG`k@`SdXdKrh@criCspqA_MkZeh@yGyeBnTuH{c@ob@}K_xAfYuU{EsfBt@w{ApEk^lUoe@dHxGbMlaBz`@hUxWdoAlFrVzf@baAkGdj@fKtz@n\\sGrMxPhMbuBnHflAiSvbAxC}D_c@_cAlI{UgRqn@bE_oA_l@`iA}_@nk@pNbm@oVms@og@qjgEuxVxMmjA_g@_s@yoA}Jsy@~Gqr@nWg[cj@mv@`VoMrh@vF|iA~gB`o@mZzd@r`ApCbu@bXhs@cHjXq_@}luFkvhA{BsD}ZdAiWe[ek@aBsYaC_HcN}t@vhAmNng@O~fApVja@pw@~J|p@zXhw@jD~Eaa@qJ{m@rZ_`Amm@qI{eg@}vpAdCuU|MkEhLyOuJ_M}MoCsGwSeJmB}GxGsJzBeG|HiI|AcKrJ{GK~EfNnFlFcAtC~LjA|c@tHxAxKmu|Aopy@_LrZpDfMcSbn@dk@r@pNy\\tv@_E{l@_{@mvpEsvZlv@aVf[bj@pr@oWiSe[yA{s@rq@ou@zBu|@pn@wq@fn@iCpKvTrc@x@tQ_Jz`Ahd@n@aw@kN{`Afi@yApBqd@`ZiRiL_Vet@ug@sDtMi`@v@lHofAk_@eHqc@jp@a[vw@}kANgWnu@~f@jOzPnU{iAjd@}r@zhAkf@`v@in@lj@wNdk@y}dAy~_AvOXvD|I|SCgU{q@c^ak@c@eAc[dBgInWba@pVlnOk_NzAdQgEd]rLvZgQdPyRdCoYdY{@rW|DxFxClr@jOPl_Aw\\vw@sn@ft@ea@bi@ig@}M_SiBeQe[{`@c\\e\\iLm@kO_FcYfe@bCbXcKhLuPHwKeXoyo@_~i@?x{BzfADVfYhxFuvBfxFuvBb~@da@dk@fVdb@ka@xaB}YlZcf@jp@a\\d\\nJfU{a@hAwY~c@ql@yWcYlDif@}Fea@nCo[_J_r@jBa\\fSev@o]mMmDmYtE{X}i@aWgRaSm]}PqB_o@khAnTgYkDgs@lI}qA|Zg\\pv@cw@bKawAbYqaAb^o]gO}\\w[pM{n@sRk]al@i\\_j@oGqsAvKiT~ZgVF}RrIa}@jFgNrSrU~\\uHtYbOre@wQhq@?f}Ewv~CeuMlH``AdYxPju@hMv\\up@`J{xAi[mdBej@va@a\\~j@crw@vpw@uTxQdRl]rIjSxa@vHnJ~RjUdEzm@ao@k`@qf@y`@oWg\\uK{vr@}rkB{D~Zfr@~RnMhb@xbAnVl{@K~MiR`_@uE~C}NuEcPrZ{Hn`A}IfLqs@qfAeRygB~Bm|@eEwG~Kg`@`CuxJ_|`BoKbMpBjZ~Ph@~LkDwEab@oht@egoBc]lMiDh]cSzc@dbAbW~d@nI`{@i]f`@aCvG_Ll|@dExgB_CpfAdRcAan@w]gf@{y@iTsp@tm@eq@g@_K}n@gt@aJkZrFyt@fVrfC_ucAqV~f@wB~d@qT~`AmOfLlJhWxpApIf[bVbc@lDtAfm@bhAvWzVh^dr@vOj}@pH|cBbm@O`iAnH?m@l`@re@`AbSdMj[?rUcGrs@vEhSto@pRpCj\\xmAzuAlbArShuArX`[nFnUvkC~C`@A}A_\\_W_PmSq_@~BeTmTak@ya@wf@aTaIoOoc@o@g`@qUse@sh@yUsf@y~@c@[m^_Wcy@}Egp@ui@i^uOes@es@rNwlAwVwt@kG}_@gg@ei@u}@q[im@yXyh@w_AsRke@_m@Hud@nYmz@iCw_AxLu~r@yd}A}MeHqh@eEam@lRuXjAg[xOnCdTwUdIaHbYyT|NlChHuJhEpOrCxc@y@dEuG`L~CmCdJbP|R|IlTtNxEfJq[sEuY~@kZ`c@ed@xRkYjRoQow_BjjWqOpYoNhh@_IdjAgOf\\fE|\\`JjQdTsc@vJnQ{Jhm@nDnYfPlM|B|s@rWzgAx]buAre@luB|VzuAf[ngAzq@vMnu@lY~b@}Nrp@kUfP}_@bCmv@~Typ@vD_l@eJal@y[yICyS{\\kn@sDyf@nMq\\xJmf@~Cqx@yT_b@mGsf@c^iA{a@yKcViJmZYsb@sb@mr@oe@wQm^nGuYqYnFma@mj@e@qd@uS}ZnwcFmp~@afAyCknAyEzDfKk}Aj]qmC~j@i{BMqp@?CyXgkB?yUdU}^vRed@nZuSr_@qNja@i_@zQ{r@vQkf@kp@cr@e@_k@zWk^xi@sTrc@{c@rb@wLvj@oPj\\wo@jRkk@vLkW{@fWzu@|I~k@pCtrA~Dp]yI`a@kRn]oKno@mh@nm@sMtb@mWv]kaApOyXdYyu@oPun@iEym@gJif@uIwf@oX{Mmc@eDqs@wIgQki@kOaaAoMkv@dA{d@iD_NfLbAb]p`@dd@zM~d@oJ|IjH~YrNvo@zNaO`L`@zJXjUvd@jJmFpF|AOdHxx@Ujy@@?db@f[DgVzScVlM}EnLcIxBp@fTfoAD`]~q@{GrJfFtMp@dQteAgbAf_@iS`r@iOza@pCdq@nVn^bEdk@mOxm@{Jly@u[xm@wGveAa\\hs@{\\xNuO|a@wB|~@wR`Yq[bbAmb@h^mf@zMm]yScElEyPkMeOIsT`Ta[rD{W~Sq^`v@c}@x}@yo@l]}e@rt@qXnJgNoHse@x^qM|c@k]pNsj@r`@aDhc@}_@f\\k]vAqRr`@cn@bU{n@]_Wdl@yWzSvArb@gP`IlXkI|\\aE|m@mTxXkm@~i@iIvMoHlCgGnTcJ[oKhg@_RzNiLbUif@x^uSby@qQjZkPh\\mB|_@c]`AaXl[uUzZn@dJhY~U`JInO_e@|g@sb@`l@e]|^{NaAwl@nH{`@v\\kR~i@{ZfG`GvNiOpe@cNxc@ic@qCuCwXpBeVkViAe[bo@qk@tc@iP~Uaf@dV}g@~[_q@yuj@_tqAg^`SmChh@zJ`AhI|Iz`@g@xVtLzg@nD|XeNzGyY}FgT??}FNyAyK}c@uH_MkAgTuBrnUuhW{AoRhDcWlVqPhKyb@zA{e@aTkJoIyc@yRm@sj@jPgb@iKeWbCkH{LwyF_@}Lwj@zIuFb]wlGd]wlGu~Ac@yqEjgCyqEjgC{Mh\\}e@zP}[bIUxf@idAcEE|nCda@vh@hDne@nv@zHftAjDbVfU`g@lA`g@HrN_Kja@zGly@|X|JpRno@~ZnG`OdYtKd]kGbPfNdHxi@rp@xr@m@dT`PnYeCfc@xXfHpM|FtHwY`Q`FvIg@pJfQfo@OhPkHbGrD`R_QiBsQxFgFhLbEmAiSyKcOrXeYlFePzLwLpKs@~MvGdSjGbPnLvY_DjP{NjIaAhOhGzH@gpbEc{f@xb@lMlc@bZbk@xAn[pbAjYjJe]xu@uf@rl@qXfh@zUju@pTnJ}Mj^uh@rp@cF|a@^~[mW~w@ha@fy@f]f_A`Ekm@gR{n@`T_d@cDacAjXk_@jSyiAhJ_nA~Ywr@dh@j^`fApk@`b@qDte@uMoTmlA~Kqy@~o@_gAsFqUpc@_Ghk@_r@bCgq@yTlHi@yk@y]yMrEqYcMiTmAu_A{o@fM{Zor@cBm]oa@ms@z@yb@{oAej@uk@hJbDme@}ToJvCuVqc@sC{Sxc@iZzMy@xn@nApr@dz@ds@nFdiA}`AkI}Mnx@qf@bKdQ|r@km@lVcZnJyl@eQ{@xXdt@tg@mef@ydrAxOpD~BwJbZv]gCzRbLyCnPmS~YkK{EsIcHka@kSqMuJuDqOvIcHrGqSvEyV|KbDjDmkjDah_B}`A{IgvByt@a~Ak\\iu@dRg`AZwh@f\\k}@fAkyAtNw{@oj@jXyc@u_Aw_AaeAxXuw@hFohA`O}Jxm@ywAhYaz@qJanAeGs}@fGe|@~\\}d@|^}x@SwmAdImx@oNiqAkIozA_k@od@vEw_@|SqiAgDl]bn@dk@n}@cOnXkb@{Fu|@tH_o@aVeq@~Rsw@tj@zEdUhp@_FvyAfG~j@xPxl@hh@h~AdWf}@d`@f_AuKdb@sDx_@hg@_S~VcIrSvj@~Szk@n`@~gA~Tt|AhA~cBvTvgAp`@tZmRrjA@l{A_e@t|@iHbrAtG~_C_M|cAl@tc@ad@l[sx@re@}EnjA}e@dsAwGfiAuInUcZaW_hAbj@kq@dxAmVns@c`@_obA~nU_n@aDcjArPiO{Foj@s@iUwQod@^icAgWwp@gc@????aI~ZpAh}@wFxu@mAt`B}Ir]rQrk@fWlj@vf@ve@dx@vVleAh]reAbbA`WjJrj@lk@vXlMfDpk@s\\hn@iKtc@YtQaJcBx@h|@bI~[uMvIfH~XbYdUpr@bTdjAz`@jZ`ViDjY_OdCjDz_@jn@OjDsZfHa[jDmUeJudAhOkk@|\\}vA{`A_fAoOal@mHuDaFwc@`IqQuAum@eKij@BcnAn_@aSv\\qCnLmN|[eLbs@f@`CiV|Dok@u|Dor@_c@~\\ePwDuWxNsB`XdL`\\sC`k@yg@pe@aRkj@aZcLhDkoAdYel@pUeStT\\nPgpAli`@o_h@sLySwsFJzJgyAiNc_@qy@sD~@{~CclEfBEu}AajFhvCt~Ab@e]vlGc]vlG{ItF|Lvj@vyF^jHzLdWcCfb@hKrj@kPxRl@nIxc@`TjJfh@}i@xd@}l@nh@qOx\\kQ|a@Tn]rL`^mDjT`SlDu`@mPy]yFyy@|Ey|@pFa^gEe^bOu\\m~~@|_Qi|@rJqKhPeTb\\oP~sAnPnn@oPfpAuT]qUdSeYdl@iDjoA`ZbL`Rjj@xg@qe@rCak@eLa\\rBaXtWyNdPvD~b@_]z_@eO_Ray@sRwT~Jyr@qKsq@uI}O|Nat@knbE_sK{IeJ_r@jZ{Cb_@gh@oFmSuXkMzD}c@vd@eYxh@sB`i@tEl[aEnTqC~c@aUfPqWfv@d@bThk@dCbz@im@|hAsp@hFy^dc@yh@rGwr@nUaa@yEql@sfeFsaGdu@oIxfAAtTbfA`WvT`_@zuA|q@hLbz@oP~\\nDjc@r^|f@oChg@tKvi@ib@lIwh@yl@jTio@uJqK{s@uYyJ}iAoLyk@op@u]of@o[j_@cLgTy\\|@uB{f@yAy]co@mj@o^{o@iXEa_@r^{AdZeh@jPcs@xQlCnW|h@`BcJp]oze@~jo@@xeFxv@|^p`@pChf@yJ`[oCnIwYtWcP|\\|]lm@gn@nWsl@vL{{@lNgl@|Sg_Bj@wiA~Fca@hWwXh_@sr@x_@_jArLgf@zq@_|@xB}n@a]{Jmd@uIog@z@id@f[mHkCi|FuAij@|\\ivCzG{qBoXer@eMog@pBuWbMMdDdb@`M~QBzf@nWzVwXj_BzTnm@`Az@r}Er|@dAgxbIndh@gr@ve@o_@v[vV~Mja@{Ovk@c[fg@c`@jh@ak@rGeT{YZ_b@fToZfTe_\\}sk@kNb`BkVhO_@zR_YjTpL|YbWx}BfBhpAvnA|y@~YhqAaYbVDfg@cg@l@fEl\\rPpB`AzRrJj@fi@kcAtMoAzo@|a@jo@gQr`@sB`QvGrc@{@zc@rYz^n@rjAi_@r\\jN|^a@lVsVr}@iVdbAlFfOnLxG|b@zPdXjCxv@rn@_c@lUD~ShQm@yi@`gAeM|@g]db@yg@jGm[}Ci]ag@mAcVgUgtAkDov@{HiDoe@ea@wh@D}nCewA{Z}sDyyBeuEcvByaB|Yeb@ja@ggDefKqBwcBp@wf@wJmf@gRcRi]ue@pEyOiKeX`Mad@mAwSkCyv@{PeXyG}b@gOoLebAmFs}@hVmVrV}^`@s\\kNsjAh_@{^o@{c@sYsc@z@aQwGs`@rBko@fQ{o@}a@uMnAgi@jcAsJk@wW|WxEfJhBxSrs@ho@nO|f@xGl_@hL|LpKvj@l`@vXtHr^`MdXxD~X|i@`Tbb@uXtV^dd@rc@bQPt\\f{@bOfk@z_AnUtViB`W~L~p@i@l`@cf@pSgl@fk@eh@~m@XnkbDujT|MfLlQcCjI{KxRgDjMdGdh@qOlH`GpTuRf\\gXvLaTjYsRf^g[}EuHiIlHuCmCmRqAyFgMeHQh@w]sMm@aLLoLuOmQrKkEwFqJmFyTeP_@{K_EN_G{MqE{@sIpHqKxAyL}FwN?uTeGuGoGmTf@jD~DdB|LkEzUjMhTvEbX~@pZiBbOs@b[pHbEzDvYiCnOvK~N{AzOqnLsmgBuJbTpNfx@zNnVnd@?oIn`Aja@qMpf@kZ|x@~Kvl@}C??e_@ePwu@}zAotAcYmq\\srzCwVkTwzAeAymAxTwlErm@h|CpWta@~l@zu@xJv\\xr@hjAlAjeCce@uw@gUt|AaQxxBws@po@}o@kiDkUga@zTyv{@kzfChiB`Xnq@vDoYyj@foA{W~_BdTt]xl@pz@rZbbAaNrpA`BldA_`@ld@nOxe@pAbHbh@xtB_IpOva@~z@Efh@nk@p}@fdA~_B|vAwUjTvTvW~|@a@pg@ry@yB~qA}f@r^tSnhA~r@zi@pZ~b@zh@ke@lzBhgAhrArMluAy^jUebAvRgoCqx@eg@_dDos@mzBo_AkqBcvAeuCuwBugB_n@wjDkmAchCkZ{eBhBe~Awr@}pBvAgoBmKmbEtl@noAvO_pt@oj{Ct{Ar`@htDjFhwDmIbJePtxAc@jcAu[_`EmPwyA~Me~@uQa}CrNgho@{`wCrjCpXfmBoMcj@cOvd@_So`CoKyWlVobkDimu@xC|YgGvf@dFtW`s@`@djAqMfo@}D`c@y^ttAcGnpA_b@|y@u]p{@sViWoy@sf@i[}X_Ncq@fRa~@tg@cb@~G_T~\\qo@hKuq@lZweAjMknxIbgmArVt`@~]xi@fo@zWvIkO`Y_Hac@mr@nSka@fbA_Xw@sUel@yToIco@zAmg@hX{h@u@_Jz\\yXdp@iv@bYgk@eV{C_a@ta@so@dOuPtv@il@x`Ai@ui@e[`PiHfn@iq@jSgi@~Cub@yVu^dFbNnv@`Rlc@tn@g@tO~QyDzYgkjIdatAqt@u_@od@m_@yZsm@uVyNgH{a@{j@{[yLpYeMxXmk@iXcQjYAhYhV|[xg@`m@~^bXaV`]do@Xnt@pVvOzg@nb@f~@bp@|Zd^xPpx@i@lg@sS|bAkCnI}Uq`@km@smAu|@ig@wJoyjBgjk@s@eXgQ{XEqXg[iK`JuGcDug@}^G_[ti@{a@tU{l@dG_d@jJg[zb@yOvSkUzFB|LvUfd@~HpPhY~RhVxi@j[gB~KzM~Ht^uFvh@|DtFv[E~e@jVbEl]fMdL|e@OlWvNIfXf]hPna@{Dvh@`Tz[pBlSuj@zo@cfBozDo}@uh@_|Bi{lBefq@zJgTeQiTwFlD|DxXy_wCkidAh{@ns@tdAhHx}AgNr]|YcUxu@wTfi@mq@z]ht@bc@]pk@r{@v}@df@j~@j`Ap`ArgAwCzcAn`A}g@`[cFbo@cb@t^kKrt@nhCCrh@th@xl@yNtQ}k@fo@qn@drBvJndBd@`wAvGqVsgAeyAi_@dDw[|\\cIt@av@vz@mZdXwd@|]{_@wgBz^o}@iHkd@|FsKuLqj@nDepA_YeAet@{a@kb@om@B{EoPwn@cGcVxDmWqPlBqd@oYud@yf@{NpWih@mz@|@ePoUrA_Wc^gYbFc^xMmYoc@gZcbAcLwfAgFw^qJkc@_Fem@b\\oQ`o@pavC}|OrFdHoMxc@vJpQbSoC`Gj]xS_QjLw`@mNuOxNiCtJsSb^kPjZ~BtKtTdXvNtLdAbE~Ky\\z`@`P~F~GfH`\\dBzIid@bGrIrSuBpKcXrXcCfOiFxY@|@pLdFmHiBmKeDsKlAiJkHmF~KgHJeXeWqDmUlUh@dL}WxA}DaDePjNw]qCqYwN}d@sKkTuQoa@tBhAbEya@dAyZvIkSxQjogCrkGhw@}AjGlHdr@~JnfApi@pCb\\|NvTgEx`@vd@`QAjYnOlJ_Yfw@wa@`e@fLxYoh@rBsVj`@ev@p@gr@yc@dC|}Am[dFgb@wIau@pcBlLdT`B|j@f@dt@lWd^gJdVjM~S{Yps@jf@lbAvO`_@d_@|Nr}@{b@lDuX|zBw}@`oBicAdo@qe@zXsr@gI_Q|s@_qAr|@irB`z@m{BpXo[tRam@no@wg@pk@iXgS{Zh]sz@mRyj@yp@mf@mF~XxPzMu@|UyX_DgXvEgYp^ib@uXyJei@ie@ku@ejAsWccAm`AmRug@tGmn@sO}Dqh@r\\_Sn\\{[`O{c@p`Aom@xFma@oOqUxIqd@kDyn@f\\hg@r~@uQn@c_kF_yW|^sn@qt@fAuTnUpO~t@slnFynRuNoP{Eye@oa@uB`Ibi@gm@k{@~Drz@lUpSpRnf@rRnQne@ej@qyuF}lOkEph@sB`b@fTdx@zUw~@d\\v^}R~l@zPh\\phAgc@pPgl@aRw\\rf@q\\rR|Xj\\kAhm@za@hIiQoWus@kf@qPca@qVaUh[on@cPgI{Zck@u@tBio@uq@r\\gDn^qmfFgeQdrAfz@s]uj@el@se@od@ej@w_@c}@eJ~q@hh@ja@a}mFarb@dI|XkTvk@nO~r@xc@tSzHjq@_Mxp@c`@zEsZmFamAta@|D~`@kS~MnEx[to@u]`Vy_@bO|Uvf@kd@xw@dH`^yLcByXqR{NtQoM`GpUz]}b@hHeZhA{z@cXpSoEw`BkSsw@yd@@qe@xPgRgOkjmFohUrHw\\od@jRwf@Cd@bY|[pYtf@vQfAa\\}btFewVoPxdAdo@qOi@|SgNpe@t\\~LrA}j@xQgBvHyd@wc@|CXsVde@wn@_{@j@okrGnaDmkB`j@qrBvb@aj@`_@ya@j^oHzc@cgBre@eNb`@nx@vEyLrh@yv@~g@qg@haAyb@cAnAtZgo@rIvQxJmaAhY|E`Qlh@hCjNeOtt@_Fb~@mHro@{f@lb@ia@n_@wu@npAiZ|s@xPde@rS_Gbm@bp@nT~a@mIr_AsA`@ujE_ciHvcFwV~RoFn_@pRrOvJ{c@pMcWh[oSpb@uYbl@kQkPaNw`@nPgTvLgY~MiofH`lJda@dN`_@rMd`@Afr@eQtb@mPeDiR_w@bHga@{CkH_]_Hq@aEd`@sb@wCuPkT{a@iUzEyc@md@e@sKfIf@ta@~Sbe@v_@bDogmHvlI}QdMi]rf@o\\dTvGnPnPfE`Z_WjZuf@lLsn@uGaEwzl@ohhBwArZiPvVJ|Wnd@vKiR|[e@zZm^pu@tEnP~]fFxw@~r@cOb[rLuBjz@_W~k@xGn\\kE|c@jLn^eUtXnGpBwBv[y]nm@wBzDqRzi@_FjHbO|`@}K}BePvm@mDr\\cSrX{f@{CqTlNm`@tUgUkPuOpMy^ui@kQo`B{[wmAeTk}@pIuCfNi{@X}kA`F}qB]a_@tErm`Cedc@}^nDgJlK~NvN`n@Knc@dArBuYyGeHwl~FwmqA????_d~FuxqA??wG|IvVwBbZdTtQfTkAzk@h_@xLbJ`JpVlQrh@hIbZvO|@`ZhF|E{WbImb@lZ~GbNrY`Cdk@`BhWd[|ZeAzBrDj]{JpFvJhQdDdAwJdOwDxO}HcPoZwMkFpDmJ{Nu`@bCeInc@yEl\\wO{q@cg@{cAq`@}i@kk@u\\rR_u@fAvH}_@q_B}YyW_b@tsPqxpAuU{NoXaHuNp]{c@AwI{Fkc@dAoPh^z[|OXvo@bIbHpAp\\~YbDaXnd@fP`h@qTpQrG~ObVlVeDtSbXfO|_@yGf_@zEqH{o@zDme@|ZwD~MuV_D}g@}WuUmCgX_Lsd@j@mYnKmUjrpB`lf@mQva@bCxsA}`A~JqXgKei@|OuJtQyDfx@iF`WiVvAmVaIoUhJ?ja@nG|c@fK`c@fIdv@tw@zn@lp@~HdeAoH~}@_Po|@_~A|GsZj_AmWjkAcm@br@oHzqB_eBsWyiAq@s`@_]_v@{kBeQay@Zgy@|^kcdAao|@l\\nGwAoO}NqGtNaFaLsh@sUtG@de@sfbBejo@bCml@yOy_@aPwE}QrRc@pc@pLxc@jPlCscv@_zwA{ZnJk\\aIi[vIo@bOh]lL~Q{DnPljAvc@qEnl@wUphApM~]|NvzAiB`o@wHdWpC~PuXlJ{IoMqIlNyFrR`Mlc@eQzCwXbe@uM~E}Rz`@oWcq@yJyd@ki@q\\ki@ee@cL}YkLue@zEag@F_\\fNkTqHcm@_EuNsMkY?aRbEkRnQyRjYac@dd@_AjZrEtYia|IuziCunAaY?vi@pcAdBy{~A}ryAn[`d@p{@hIb}@n_Ayw@hz@bE`i@ecArhA??hd@dXtI|NtZiC|i@}d@pPcAhf@mMbRuXfy@aL|d@xH|IsJbtA}\\~zAcIxs@uIrFjFtnAys@hfAqV~t@wc@ol@_I{r@gs@|a@wWc{AoXt@sL`w@`I}@wZg_@oPm{@qC{HySxLoa@kXu_@VkQb{AiSnc@Rre@g\\|n@zHjnA}Tk@iKfUcZxp@_BdDkRsNuK|f@kb@x_A`E~QeBxNfMhVqA??jN_g@tMwSaKyDmq@bAiWsL~PuOdi@_JwBiJlXkJbf@}g@kL{ObEi\\b|@{Mv_@lFzGoNx`AuNbS{c@hDi]b]mMyYyRpQiy@ok@_c@lH{I??afAqa@n`Aw\\??ydCwnAay@cc@oV{^n{Ayi@qXug@hw@qm@ci@qt@tgAcfAsx@cn@t~Auh@cHwj@oq@wDiiBaX??o_AwTseBxd@ejDzMckFteA_o@t\\cCph@jdAz_@`eBrO~uGon@|l@|F}dBxl@_C~[aCz~@moA`R{o@dOaGi]rd@yYwf@uVavCze@us@eN`i@yl@spCe|@ux@pBky@zTkc@}i@bs@gd@s]md@|l@we@ymD`Sub@~a@bnAtFMxa@ep@jTq_BqLiNyf@qaCy\\ayEst@en@`Br|@|d@olAnEyk@kTctBu@y{A}XefAtd@afAmh@n`Aec@o_@sSswD|QouAnRoaFlfAyh@w_@p~@_`@x@gLhjAeEsSs\\l`@wo@z@_SirBsw@_h@ww@om@iKodDnO_Lva@fz@tq@{e@|RcStj@dMrtA}cAhe@xYvh@lyBvwAmfAdH{WoUwcA_OsO}]au@w\\lc@qb@e\\gh@jcAcD~Mya@{p@w}@dpA}q@{nBci@nMmk@e^m@{_@ra@tWh{@{aAlJn[al@sgBqWu`CiBorBrb@pv@as@fEqaAukBsKiuCvAmfCeGvq@u_@igA_h@yfAw@oxB_^adDiGyScPccDyDcr@`MikCg`@yqB`@eP_Zwz@sYqrCsXejBfSbtAlNqlCpH{Oz]cx@eNuuDX}kCn]cq@jVpNn_@bdAnQfcDta@|m@pQolAvGm{AvNiw@yJ{^bg@mZgO}bB{HogEhIgNf\\idGhHqBwn@scC|IwbBI}cBz_@y[~f@~c@dYomAdp@iaBjXi{@q`AgcBb[oiByO_xBdR_m@oPgeBvGbl@_y@oqAaZosPpg@et@bd@sbDvn@k{FyJm{BfI_s@zXpFtl@_lAxPsrAyKymBs@_uBfKouB}E{kBpv@mlA_Spq@}f@yZwZmfEnP_aCwBwrDx\\ovAfZ?~wFLJjoAlZ~oAqCkw@f`@ed@nr@{[xOgFzXbOpOnsBsLtmD`n@pv@fFr~A|j@tyAje@~Uj[lxAgj@xaD`p@l[eVd{@vYrrAqGbSbh@~iAn{@gAfXefA~LjG~yA~x@hAxYfs@_Y|YflB|^tThfAd|AfNvQn~@`yAfy@bVaj@vYezAza@{iC_]uuAws@id@gBe\\c`B_MunBumAqjBg_AkoB{p@gq@cwA~jAhDnd@lr@p}CtcAdr@{kAh`DfTl{CvgBsr@he@njChOr_BlEoCel@b`BoHllAv]b~DwIplEnQniE~xBnnFjrCoaBzFu]df@w{@zL_g@g^qcA`CeyAvcAcAdt@zo@l}@fDriAd[|bBd}AlyA|Sfj@zsAvgAdsAdgAjg@|c@frAtc@lf@Xff@m]zrAvl@vHxS??????vG}I??Jw^}^u@_H{hAnOot@st@aU{jA`Jai@y{@kTmcAiW{Uy_@gw@ffBlQdu@rW~}AAhXwy@~hAmk@xkB}RbVg|@vTke@lV{Yre@a~@zu@_Vp|AsQxqAt@tlAhJrr@`^ia@zMWna@va@~Rlw@haAQnZ`wAnf@~iAsVpiAfDv_@}Snd@wEnzA~j@hqAjIlx@nNvmAeI|x@R|d@}^d|@_]r}@gG`nAdG`z@pJxwAiY|Jym@nhAaOtw@iF`eAyXt_Av_AkXxc@v{@nj@jyAuNj}@gAvh@g\\f`A[hu@eR`~Aj\\fvBxt@|`AzIlWbDd`@ge@noAjGpYoYvj@cK`]cc@na@gJxxA`ObuA_c@f`@t_@tjCu}CvnAio@{UsRr{C~y@|z@pBeDca@hoAiTf`AfNtRy_AhoBmLdw@|Xj{C`Vn]lNzhFvTt[hTcl@xi@~z@fOuJ~O|z@n]gdB|i@tNr\\vvAuAdQpQ|nAm_@`bBf@haAjY~hAgXvhCij@r`Br@``C~bAvFrl@h_Agc@xp@tcAgQvKbc@jn@at@ji@km@w@{f@vh@jEd_@cdvDag}CefCaMmxBl^}nCl{@lNdw@jgCxF`mDaQvfB{V~n@yk@ftAiKkzgEazyCk}Cnb@pQjXh_JbWeqBaqAir@_F}cnGqusCadDvA{`Fb`@bp@lm@jeFw@tfBxMxzBug@s`@}i@{n`HcdrC{{CjOfgAtW|bBqDbsBuW}MgSmdpGshnCiz@uWcmAyDywA|VqFlOv}ALb_C_F}qvA{k|C_yBkJ}}AWyKxO{b@}M}y@iIu{AtLdWpHzrAfGfw@tCtGhI`hAhItbAyMqb@oRukk@obiB|qB\\|kAaFeMoZguAgSo`A|IsZzHtEbPgogBk`oCstCyu@zOk[yjC_`@imEeg@_oEuJajBeVsxBcGmj@tW|h@lRn|E~]x}Dx\\daEnz@b|A~{@~`Bb{@wKzr@qvBhr@|c@lDfkEcGpOwZbpBwObHw`@{~@kLbAca@_{Bit@ecvGq{gBsTf{@r@n|@yX`~@{}@vmBn{AuSle@hyA{{@`_Av@tj@hn@ud@~g@jo@pJms@}E{{@bFmbAoMgn@wAqrArc@m|@qDmtAwx@w[xW}[yZyG~stIkgbCjDze@ci@nNnMkl@uhDhHiyBny@||@fZleBlEp@`|@~W~Kpy@{@rn@wTbrAgQ|LcZn~@eI`fA`G|`@yTqLgVziAxMe[l\\lb@nY?_xFcxCvn@j_|IymiCrpAxB?wi@_GsA_t@BkyA|PjDnGwh`AgxxAmOoNmk@lLcSlAcGjKmHz@OlDq]`Nw~@wBdKhUlcAxIxsAdc@xa@wKyLk\\hcAgQaJ_Kyz@ySelz@|eAyWfb@rBvc@~P|F??f`@cCbRrb@|d@}CwDea@sGyCiAed@}PmPeNjEr|Oo_u@AdCd@`KDt}AblEgB_Az~Cpy@rDhNb_@{JfyAvsFKrLxSuAkYa@@wkC_DoFoUsXa[sSiuA{uAmbAk\\ymAqRqCiSuo@ss@wEsUbGk[?cSeMse@aAl@m`@wgcAyix@qdA~H_ZgR_NoUun@uGgI}SuSsIh}@m}@e|Bk^{JmHijA|Oc|Avj@eoDt|BgsB~Cuv@~DqNx\\ek@s@oWzt@w]hMuI|Tqi@fYyBxXfExS}F~S}PnPkGnSiHhN{QlKkPmC{JzVkAlM}Vh~@{zDn^qKeLu[fk@th@~{BnzDn}@dsD|Vjy@b[vk@r`Ad\\lIrNyS|VbBl{@gElJgEbgAl@|OrDtXgOpOv]kEhYlZ|R`GuYzQyQxC}Wh_@kUh`@ms@rP{q@dj@aj@zZgIlh@qz@dFmj@sAad@xb@gdAh\\mWv`@{KpSyb@kBeMhPk_@fQ}LlWom@`e@mq@z^{i@b^FwHga@wA{Tm~n@iaOpn@iZtT_Q~BmRcI_YDoX~b@af@bFwYWeN|UkQTic@bLcW|TrBiE}UeOaYbF{XqSeR~KsMoOqe@q[am@{t@jC`BawFWgY{fAE?y{BgzF?oqF?{vF?eSh|@vLjJcHh_A}UriAyVjNea@bVr^rb@`m@hIrRbRdEph@|YzzAuE~W~Htt@jXp|@vd@|]vYvn@hEpXr\\nPlQj`AYdw@Vuo@rGg@a@c^nFmTd_@uWnFal@oFcm@~[iCfC|Lpd@fB_NfQkDnd@ha@ja@b^`l@d_@lEps@oc@rVzKlEfQd_@xJbAzKf}@?pG{K`l@eApUvIdPkDd_@mc@tIeP`l@pGdP~[bOvv@lTxJdRxEcf{@izE~u@qh@zMuYxa@fLz[cCvOnI`[qFzd@sr@`IyRtm@wWxNod@~X_Z`i@q_@PiSfa@gXni@mWeRyEmTyJcOwv@eP_\\al@qGuIdPe_@lc@ePjDqUwIal@dAqGzKg}@?cA{Ke_@yJmEgQsV{Kqs@nc@e_@mEc^al@ia@ka@jDod@~MgQqd@gBgC}L_\\hCnFbm@oF`l@e_@tWoFlT`@b^sGf@Wto@hHbRd`@n@hTrb@ke@nCu^l]}I~Wq[nM}c@~bAji@dh@le@hd@le@v[~j@Chq@rMtf@_Mrs_@upYvXuo@d^gUoZyJg]}j@{Ma_@kTaSa^lDo]sL}a@Uy\\jQoh@pOyd@|l@gh@|i@{Aze@iKxb@mVpPiDbWzAnR~GnBba@}CtC~EvLj@|k@gNb]SnrBsAxO~EtS_A``@dIhI{n@}w@h@_NwGeJQeVmMyYfLcZ`@aZ_MrKaQrSnIjRGtWkNxR^bMvMms{HdnSoPlTtj@KvVme@id@bN_xzH~vQlHnJhm@cu@~Kkd@gT?oU~p@gdyH`hRhWj@je@iE`LsH}ByWgh@xHkSbLoxvHftNuMxRsApK|o@oYfa@mUlVySiHkEw[~Mg|qHzuL{WjSlKpBhZgMtXuXgBmI|zXmkPm`@oZeFiPuIoLgPm@qMwJ_q@@kPjUqLfY`AdQaIhOT|UePqBb\\d\\d[z`@hBdQ|M~RxOsC~k@eXp_@o`@|IyUpomDod[kQfDoLlK{Q`IiAlGmZoFyKnCoGvEhC`X|EtMdc@]nU_EzXmKta@{BvPkL}@eHmTwNwJ}EhBkFgr~AehUJ`@FvX?~}@?r_@d[je@rj@ds@ps@JhkEeiAzVgU`Vc]`Vma@sLcU_Vm`@kSnJgKzXe[bY_^F}y@_O_cAmFav@kR_^cCiUkJqb@gAafpAdhB~c@qr@VubFsu@{eAcPuRag@e@uv@ak@mpAwAqoDqzDsj@es@e[ke@?s_@?_~@GwXKa@_Se@y[iHc`@iEq\\kTuVEm@hPvDhc@Ez_@dLpUrPpbA`]xdAre@xnArt@rzAjt@~dAnhAftAp}@pq@n|A`}@fy@pn@jcAtjAlM|_@{wc@itxA??{n@mO_f@xA{`@nW_F|Rce@tM{CvXmc@dQsRaMmNxFnMpImJzIlNdMsDxUk]~YxVnRnI|RwElFfIxG~[^fTtBbAuCoFmF_FgNzGJbKsJhI}AdG}HrJ{B|GyGdJlBrGvS|MnCcDkDxV}KpSwEbHsGpOwIuMwAcHk\\b]aWsNoZtUD??aWqVxRyPxniBooCxb@gLn\\jEdXoDfE`QmIlKrDvK|`@cDde@iu@dGgb@`SCtZkl@qJg_@jBwM}d@iO_Iew@{iAnKuEgJqq@oCebAvOp_@vt@}Cvi@qW`d@|IzYnDr[{`k@{z~AhPhOdKdXjLjE|aA_RlSxBtMtMj\\xFvE_Cl]vHxWx@~CpKns@tF`VyEv^_OfEuT_D}F{GwLuZ`@iTmEw@yD}J_BaCgMkMuAuHgJsQAqBvBuXoGo^dU}c@kLo\\jE_l@yG{}YyyyAsr@xCq^eMuu@q@{JoIqITcK`Tvp@rO`EfXvTjEGnPpWg@fTeIlJpIpj@cA}LuD~MsYepTo}qBqZ_c@_s@{i@uSohA|f@s^xB_rAqg@sy@_}@`@wTwWvUkT_`B}vAq}@gdAgh@ok@_{@DqOwa@ytB~HcHch@ye@qAirAp]o`Bpi@u@f_BaThWnjBtPp{@rj@wHfe@lbBfq@twBxt@nl@~vAmk@~j@yz@ta@lx@neA~_ArMxV|gBnb@py@xjAaEjb@pp@jgAzAzRaz@hs@}eAos}@zes@vKvZpc@vEhd@{`@PsTaPmV{DgQaQmCq^lJgH`[owdAi{~@d@MmGoH\\qXiNga@ca@qVfIoWb[eBxDyn@iNwXwOuLuOuLkB{a@oSdKycAkPg`@vJmr@E{fAmVu`@`@cfAwH`_@~e@da@lN{Dtl@rVpjAjiC~_AjyBraA{pm@wfe@aB`wFzt@kCp[`m@nOpe@_LrMpSdRcFzXdO`YhE|U}TsBcLbWUhc@}UjQVdNpf@rIt^hXdl@dcAxy@|[j{@{BrPvDeE~Tp_@zTpYjWtmA|VrNeMhIe@pJ`Otr@tCyH}OtRaj@xG{XfZsIzc@mc@qLo\\o[fEsPmC}a@R~`@yw@gAqh@dCmh@xW_g@gEm\\bg@m@Egg@`YcV_ZiqAwnA}y@gBipAcWy}BqL}Y~XkT^{RjViOjNc`Bc~@ea@gxFtvBgw@inT~Fz_@cRlQuT|TkAr]qKzKxApnCkNbj@hq@hL|L}TtOsf@|Cc^yLgw@tNyU|Dgp@Ckl@bYg_@sCoReolEa{Zry@_HxoA|J~f@~r@yMljAbw@u[lt@d@cHcp@~u@J|CvcAv`@hzAhSdv@gCfl@wg@|@kX`x@eJ`u@{a@xb@{d@fFk_@l_@lStXfh@nFzCc_@~q@kZzIdJtW_WtI}]f`@ib@f]s\\fItc@zJua@yE_f@mQ}z@g]g_Aia@gy@lW_x@_@_\\bF}a@th@sp@|Mk^qToJ{Uku@pXgh@tf@sl@d]yu@kYkJo[qbAck@yAmc@cZyb@mMaZhRqBpd@gi@xAjNz`Ao@`w@{`Aid@uQ~Isc@y@qKwTgn@hCqn@vq@{Bt|@sq@nu@xAzs@kncCqpgAcb@g~@nLqm@zl@{MeOoZes@|Aw\\qa@yRcg@srAoM`L~[}GhPyXq@zUfR~bAmI|D~b@wbAyCglAhScuBoH{Nxx@qSiE}d@fMdAhWkHrb@l_AC`j@qC|e@|ZvZfEvTbLvWoSyDos@|Q}AyEcRx`@eM|YvTpEdXrHdHjd@i@dSr[`TaKdl@`SkpeBmrpAsZyS}eA_Lgi@nPwj@~o@a_@aBoeAYfIo^mt@qTss@ic@esA``@uEzp@}VxKqbA{A_ThJu]l_AofAdj@wg@l\\k`Ap]crAvYt@fe@zQ}@l\\uOxHfUts@`KnK~p@db@~Qhp@lH`Lh[bn@hGv~@uVnDss@pm@eAlfAkv@|p@yEbdAu^lk@wDlZrJvh@y@nk@vb@zu@`KrJek@aHk`Avo@eTaOwi@nh@uByLus@}y@jN}u@_Spl@od@zPwb@hq@|NjExl@qasFxjPiFwMyt@aMsj@cAoRyFuVvF~U|Ob`AjZhs@|Pd@}Q~mwBo_T}b@cGcLdAnApm@ds@zEfJsDcQePsoQgez@rYeoBpe@eXPcN`r@gd@pDan@qe@{a@uMqr@zHqz@uKa_@acAgXwj@nFx@r^_t@_VmC~Jf^r]L|[uTnNfG`u@bh@l^{J`a@i_@`@wNv\\wVvHpB~n@l]|PfR`S|i@`WuEzXlDlYimvAcrgA~\\nI|T{NtgAaGxYtHbfAvHt`@a@zfAlVlr@Df`@wJxcAjPnSeKjBza@tOtLvOtL~Ui[uVoVbe@jDfs@mM~i@~b@z}A~Epq@o`@jbAcAlM|Xdj@lFl{@i`@fcAb@~c@c}@tl@ua@m]so@rf@{\\idAwz@g_BoAgYon@cvBfGcjAog@ygAuPmfBi@alB`k@uxAbWygAsHwt@pDyhAs_@saA}Ae{@t]sI~T`Ej]om@pNsWfQxi@xPoRtfAdKhRea@bq@i_r@eupAu~@sRyt@jGmF~Vou@dSjJhNdiAlBtYhRbs@t`@tRc\\[{K{M_FiRcf@czlFssn@rd@dcBxYfr@|_@ws@bFim@yc@k|@_q@in@o[pQ_faAjz@qIzEsaFh~BgCfc@uxAn}@x[~kAuBlb@_g@vU{@fOdPvd@qB~Q`Cz\\yTbf@{Xr|@}UtL??vp@fc@hcAfWnd@_@hUvQnj@r@hOzFbjAsP~m@`DnP_tAdTc\\pKiPh|@sJlb@yQvf@oIzWmIbY}N??v`@wmAfc@_b@nKgc@gEo_@fJox@{X_BsUsUkWq_@kNcLPiSlLcMrBsW??_Q}FsBwc@xWgb@}ToFocAV_faAjz@j~BxCncAW|TnFhd@fRdNkEQcn@oM{VoBcq@cLa\\}Vs_@_WqOaSeU`XoGyBahA??wXaPuf@~Liq@sM_k@Bme@w[s\\jj@iFj^oZvfAvUpl@v]jh@zPhXsa}@kwdBiVpAyNgM_RdBy_AaE}f@jb@rNtKeDjRyp@~AgUbZj@hKknA|T}n@{Hse@f\\oc@Sc{AhSWjQjXt_@yLna@zHxSl{@pCf_@nP|@vZ|p@~Cph@dSny@hBzt@hVeBl`@lH{@bGkKbSmAlk@mLlOnNpGyEd`BwNhCiVzx@tFdVla@lo@dm@h[wIj\\`IzZoJuNyE}ImTcP}RlCeJaL_DeEtGyc@x@qOsCtJiEmCiHxT}N`HcYvUeIoCeTf[yOtXkA`m@mRph@dE|MdHjY?tNrMbm@~DjTpH~[gN`g@Gte@{E|YjLjCwOta@_PeKeXiPiOsLtBbOc[yw@_s@_^gFuEoPl^qu@{\\mAga@}Omo@m@c~@|CwdA~Mgp@f@oV~GmV{IkOrMkw@_B{W~D_Cm^iRuLppoBn_z@qg@sEu}@ho@eVy@k_A`g@_p@na@cc@pi@pZr\\iPjb@~Yhf@reAva@bm@oKx`@tExx@{Yji@`A`e@sa@yCkg@qL{LPg}@uOg_An|nFou~AopD?qxD?m|@?o}D?kwD?ozD?szD?ksE?ytEAk`C@E_WcTIcJha@mRpIsj@zBy~@|Hs{@jRsq@cG{kAfOmSS}v@uPsy@tUc|@dWsq@xSoo@~RaElOuMbExBdEwO|@eKmEcBxMqKzHeP?cHrFtFbJc`Ah\\iLvw@oKhu@fQ|c@j\\ja@vLzTj@nE_F|GgTzHuN?qgAk`@m_AyHwpAc^e@iErDaRbIgKg[}Hk|@Gkx@?_SiWyF{CaaA_l@e[oJ}}AMerBAgEmN_ScBqYuHeUm[aRso@un@en@wSlO}h@sIwZ`Q@dtA{g@hb@wInSvaAh]d_ApT~`AnQ``@bd@rI`MRb`@sSb`@}Xp@pEyUwQzL~CzPdi@bI~\\e@fm@zIdZbBhc@`Bbs@bQyzAwJoQxJnvAvQxf@B{@uF`RhPmQzAnL|k@nl@`o@rC_OvLgBnSuN_Lt`@oNbJ]rV~RfWdb@|p@tDoAiRoi@|^{VhF}r@`K~YkLtf@hh@yH_j@bSuAnz@}PhCoErTyGn}@vf@jm@t_ApQ`h@tc@d^~Bt^|U|G~SpcApg@fb@v\\l\\`d@rHjk@_Jjj@{Snt@wZfk@K~Yq\\ngA|@bi@vAhWpNde@tQzFv]qFzHmZvVkMb`@wt@`\\yn@jHmWyKoh@nPka@vo@is@jWqH`~@j[dJcBh]e\\df@mNreAzFnv@}Ern@hCzXvHgJrO^hXgLjKzJdGdVeHnVzJhl@_Atm@_`@nu@xFll@oMze@jCrs@rMzw@hm@b}@~Yba@x\\jMb[Rbj@cB~\\{JfTjWz@jk@wLvo@kRnPk\\vLwj@zc@sb@rTsc@j^yi@~j@{Wbr@d@jf@jp@zr@wQh_@{QpNka@tSs_@dd@oZ|^wRxUeUfkB?BxXpp@?h{BLpmC_k@j}Ak]{DgKjnAxE`fAxCnI}^ng@}b@d\\oFxE}P`b@cBjU{O`y@eE|NcIpFga@t{@y}@~r@{uAeAmMpZuSjo@ks@rG}q@h`@ca@uLyr@dAst@|R{n@mW{y@qFww@sFuw@hJ{rAvRmt@dQ_\\qFgKkyAfTi`@~y@mNoO~Hgr@ronH_ff@aJlDeIjG}NzTn@nBlWhL~RxHbHlIpN}Gy@oPhIwUaB}E{IeIhCiKsByDwCb@vtoHwpg@dDnF|SnCxIeLdFaDP}BcEiDgU|DjdqHqjh@|@vEn`@y@uCsFpssHili@eD~BaQtSjBrBnCYvTeA|FeMlAoAjgvHmkj@i@pMlFdE`TkJgBqCqHcEfcdI_}tBsp@rD}D~Vje@vH|g@uJ|d@_PxgjHafpBoh@fCoYjR`u@t\\l}@xV|^cOtHg\\ww@gUrjrG_dgC??J~fFJzbJq|@x@{{@hPsj@jZqv@`h@w{@}a@w}@gSe`@h_@ci@rXex@d[cf@xk@{~@hfAgiBvf@w@lf@va@b]????ja@oV`v@}RtPou@poAqq@t`@_z@~z@aCjbBo@fhA_Qf`C{_Axz@{JhlBgUpuAhD|yBw[fiAsYjdAfL{Klj@pa@~BhgA~K~u@bTfdAfL|Gyc@a[i|@maAgRbPsNtnAxa@ri@ph@`yAnk@ul@h]~y@|k@dbAbYp}@`RnNtZp`Bf_@vRj\\bhAtY|i@yChy@lPl~@hT|r@zShjBzPvHoIkcAe\\c|@iRsaAea@olAaFy]sXuuAmd@}LoKcm@aUyIkn@w^}c@`gA|QbSwIz`@vUxg@u^xOjUjVc^n}@~Wje@AjDed@iJ}Ufg@gUfpA~Jvs@i\\vi@_NHmb@bo@sYeW}b@}q@{a@gUa_@sq@qC{i@~Hkq@e]ml@jDqn@kRpJq[~a@gJgm@cWje@VhaArL`RvLfp@wLlwA~EnzA_NfYcXbnAic@{vAcYkjCq]kr@?nGf^}bCmAvq@we@zkAwVlk@g^|z@uYztAwR}a@w_@{mBaA{mAm[{Mm]{~@u\\{{@eFouBwZmx@dCe_Bi`@q}AbLgl@f[wZcKshBvBvBjMs~ArIw~@gEubCvRewBzDco@bGerAeIw}AxQflnImq{Bse@|J}e@mEoq@nOc}@hGdDxEhn@fLrn@qLvVkJbv@rBzMoD_ilBytoAlAmeF{_D}c@uJlD{_Bvk@cr@rVuz@jw@ihAcHejB{CyiArl@tCt}@o]LuKfr@onA~@cPr\\gVMkZuk@mqAqj@yb@qJqQbEls@ng@cm@nVok@qNaiA|_@~nA~k@pn@cExXp@|GiPaL_\\rrAnMxRbg@v\\pa@ds@}AdOnZ{l@zMoLpm@bb@f~@bn@eLxa@Mu@ge@brAwYj`Aq]vg@m\\nfAej@t]m_A~SiJpbAzA|VyKtE{p@dsAa`@rs@hc@lt@pTgIn^zruB_dIiGrPzUzVzdAjV~k@tH~PvMtp@sNhm@}FtJvD_[dOpAzh@uGjf@}s@jDkBbLrk@xPfFlYvXfInm@rM`KbRro@`Cja@a`@`Rk}@rOyTtUyLu^a^dA_MvPqQpKqh@{Cyk@}L_TiJs`@bUwIrb@bF~k@kBfXtE~j@wt@hc@_GjoA~DzMwTjNgDfAaLmFcV|CcXvLwL`Gw[f_@eCiPqc@uFqk@cQgVeW}P{Ng^cg@mIv@vMtc@hFkSj[Vt_@pZfc@sVrp@}YaCaMel@jR_UdBin@{lAkXtGo\\}TuRmUzj@yj@`@sg@xa@mAtScw@PwaAmEyb@~Zyn@vFab@qRUuNmlAyB{iA[`t@nQiTn\\_q@tCkn@v]_I`q@q_@m@oWvMpp@tc@lDxUkTdVnNtJle@`Ig@z[|OdP{wjEmnScu@cXs`AqClZ{d@_hBao@wF}iAnMsh@kJo}@vNek@hn@mj@jf@av@|r@{hAziAkd@{PoU_g@kOfWou@|kAO`[ww@pc@kp@q`@gN{p@Hw{@eFgt@i`@c]lVcx@lJzH~b@w\\jX}}@fOlrAlt@`s@`z@vLjj@yn@z`Amy@tpAuw@pe@_e@dq@s[trBlG|lBbs@dh@pfAfg@~q@`s@|lAdy@tUag@qPii@areIf`^gf@zb@rSfG|SkZqwdIhr]|GgPh@}n@}\\fRcIjq@xOyF_qdBobd@{o@bfBmStj@fl@xO`KvZn@hTd}@jYzbBb\\~v@bk@nZlBvQuBpc@|Xxf@~Jls@fBxNpBtLnOjOpCrHzN|]k@~RnGfj@eBfOoc@w@ea@dImQfKem@|PuXoKaBlEq[sFaKxAgZmZ}RjEiYqOw]uXfO}OsDcgAm@mJfEm{@fE}VcBsNxSe\\mIwk@s`Aky@c[q|^`yv@}\\}]uWbPoIvYa[nCif@xJq`@qCyv@}^AyeF{OjHad@jz@xD`e@_M~Twk@kEg^}Zs\\yQgN}\\o]mMkYpFy\\nP{q@bB_g@qMiEoR_J}\\_a@_DwQmVySuh@cw@sm@mwAam@mXTg]rIaToFe`@fE}\\|vAiOjk@dJtdAkDlUp^mJ`QlCzDfQ`PlVQrTid@z`@qc@wEwKwZkn@NrNnl@jF|r@dOd[ri@p^dK`HnYv^lPb_@lb@vk@reAn_Abk@nd@dn@l[j`AfWx^fB`GjP~d@gH|]zJvbAaKzd@rFzXgBl_AtWjt@zHre@rVl[n@lYgUbTe@zY{Z~AtGhGyOKuc@hS{h@eSkJr@}n@|g@oy@l^}s@@Ecrw@vpw@fZgRf\\tKx`@nWj`@pf@{m@`o@kUeEoJ_Sya@wHsIkSeRm]g`{@fhOcY|N{WlIwf@nImb@xQo\\zZ}N`t@tI|OpKrq@_Kxr@rRvT~Q`y@{_@dOt|Dnr@}Dnk@hn@pGrb@zWpFtTjUzCju@lr@ra@lg@`Tl@hSeFzdAyEfJuCLeDtWcMng@qBdr@dMxg@af@bi@cr@{A{eEcaCXhDqTiHmV~Ii\\cFi]rEkRqTp@sBlRg\\o@uf@vD{Sj[aq@tGee@uRaMv_@{n@tGaVtYsXja@{n@NfDkbAbPjJvj@iWzOcJwFw}@cJ_iA~LqZyP{f@wOoF}rAqIm|{@vmj@d`@gE`TnFf]sIlXUxf@g[jo@qHjQsf@BaUvYuEveAucAtRec@pKcJ`W}p@{dAxEiSdFaTm@sa@mg@ku@mr@kU{CqFuTsb@{Win@qGaChVcs@g@}[dLoLlNw\\pCo_@`SCbnAdKhj@tAtm@aIpQ`Fvc@lHtDnO`l@";var Ni=null;function Dt(){return Ni??=Li()}function Li(){let n=[],t=[],e={at:0};for(let r of Qr){let o=[];for(let i of r.rings){let s={points:Ti(e,Math.abs(i)),hole:i<0};o.push(s),t.push(s)}n.push({id:r.id,name:r.name,rings:o})}if(e.at!==St.length)throw new Error(`globe: boundary data is inconsistent \u2014 decoded ${e.at} of ${St.length} characters`);return{countries:n,rings:t}}function Ti(n,t){let e=new Float64Array(t*2),r=0,o=0;for(let i=0;i<t;i++)r+=Yr(n),o+=Yr(n),e[i*2]=r/1e3,e[i*2+1]=o/1e3;return e}function Yr(n){let t=0,e=0;for(;;){let r=St.charCodeAt(n.at++)-63;if(e|=(r&31)<<t,r<32)break;t+=5}return e&1?~(e>>1):e>>1}var Gi=null;function $r(){return Gi??=Oi()}function Zr(n,t){return Math.round(n*1e3)*1e6+Math.round(t*1e3)}function Oi(){let n=new Map;for(let s of Dt().rings){let a=s.points.length/2;for(let c=0;c<a;c++){let l=(c+1)%a,f=s.points[c*2],u=s.points[c*2+1],A=s.points[l*2],p=s.points[l*2+1],d=Zr(f,u),b=Zr(A,p);if(d===b)continue;let y=d<b?`${d}:${b}`:`${b}:${d}`;n.has(y)||n.set(y,{a:d,b,ax:f,ay:u,bx:A,by:p})}}let t=[...n.values()],e=new Map;t.forEach((s,a)=>{for(let c of[s.a,s.b]){let l=e.get(c);l?l.push(a):e.set(c,[a])}});let r=new Uint8Array(t.length),o=[],i=s=>{for(let a of e.get(s)??[])if(!r[a])return a;return-1};for(let s=0;s<t.length;s++){if(r[s])continue;let a=t[s];r[s]=1;let c=[a.ax,a.ay,a.bx,a.by],l=a.b;for(;;){let p=i(l);if(p<0)break;r[p]=1;let d=t[p],b=d.a===l?d.b:d.a,y=d.a===l?d.bx:d.ax,x=d.a===l?d.by:d.ay;c.push(y,x),l=b}let f=[];for(l=a.a;;){let p=i(l);if(p<0)break;r[p]=1;let d=t[p],b=d.a===l?d.b:d.a,y=d.a===l?d.bx:d.ax,x=d.a===l?d.by:d.ay;f.push(y,x),l=b}if(f.length===0){o.push(Float64Array.from(c));continue}let u=new Float64Array(f.length+c.length),A=0;for(let p=f.length-2;p>=0;p-=2)u[A++]=f[p],u[A++]=f[p+1];u.set(c,A),o.push(u)}return o}import{command as Eo,driveCommand as Qi,easeInOut as qo,node as Xi,Canvas3D as Yi,Geo as zo,Graphics3D as Zi,Mat as Co,Scene3D as $i,property as L}from"@motionscript/sdk";import{lerpColor3D as Ee,resolveColor3D as Me,snapFlag as Mo,snapValue as dn,cameraOrbit as na,orbitProps as ta}from"@motionscript/sdk/component";var Hi=["#ff3b30","#ff9f0a","#ffd60a","#30d158","#5ac8fa","#bf5af2"];function io(n){let t=Hi;return t[(n%t.length+t.length)%t.length]}var ao="#ffd60a",so=.02,fo=.004,co=.25,no=0;function lo(n){return no+=1,`${n}-${no}-${Math.random().toString(36).slice(2,8)}`}function hc(n={lat:0,lon:0}){return{id:lo("mk"),label:"",lat:n.lat,lon:n.lon,color:"",size:so,opacity:1,enabled:!0}}function _c(n,t){return{id:lo("arc"),from:n,to:t,color:ao,width:fo,lift:co,progress:1,enabled:!0}}function to(n){return{kind:"marker",markerId:n}}function eo(n,t){return{kind:"place",lat:n,lon:t}}function qe(n){return Ao(n).flatMap((t,e)=>{let r=yn(t.lat??t.latitude),o=yn(t.lon??t.lng??t.longitude);return r===null||o===null?[]:[{id:po(t.id,`mk:${e}`),label:Rt(t.label??t.name)??"",lat:it(r,-90,90),lon:je(o),color:Rt(t.color)??"",size:mo(t.size,so),opacity:go(t.opacity),enabled:t.enabled!==!1}]})}function uo(n){return Ao(n).flatMap((t,e)=>{let r=oo(t.from),o=oo(t.to);return!r||!o?[]:[{id:po(t.id,`arc:${e}`),from:r,to:o,color:Rt(t.color)??ao,width:mo(t.width,fo),lift:it(yn(t.lift)??co,0,4),progress:go(t.progress),enabled:t.enabled!==!1}]})}function yc(n){return JSON.stringify(n)}function bc(n){return JSON.stringify(n.map(t=>({...t,from:ro(t.from),to:ro(t.to)})))}function ro(n){return n.kind==="marker"?n.markerId:[n.lat,n.lon]}function oo(n){if(typeof n=="string")return n.trim()===""?null:to(n);if(Array.isArray(n)){let o=yn(n[0]),i=yn(n[1]);return o===null||i===null?null:eo(it(o,-90,90),je(i))}if(typeof n!="object"||n===null)return null;let t=n;if(typeof t.markerId=="string")return to(t.markerId);let e=yn(t.lat??t.latitude),r=yn(t.lon??t.lng??t.longitude);return e===null||r===null?null:eo(it(e,-90,90),je(r))}function Ao(n){if(typeof n!="string"||n.trim()==="")return[];try{let t=JSON.parse(n);return Array.isArray(t)?t.filter(e=>typeof e=="object"&&e!==null):[]}catch{return[]}}function po(n,t){return Rt(n)??t}function Rt(n){return typeof n=="string"&&n.trim()!==""?n:null}function yn(n){return typeof n=="number"&&Number.isFinite(n)?n:null}function go(n){let t=yn(n);return t===null?1:it(t,0,1)}function mo(n,t){let e=yn(n);return e===null||e<=0?t:e}function je(n){return n>=-180&&n<=180?n:((n+180)%360+360)%360-180}function it(n,t,e){return n<t?t:n>e?e:n}function _o(n){return qe(n).flatMap((t,e)=>t.enabled&&t.opacity>0?[{id:t.id,lat:t.lat,lon:t.lon,color:t.color===""?io(e):t.color,size:vo(t.size,.001,.5),opacity:t.opacity}]:[])}function yo(n,t){let e=new Map;for(let r of qe(t))e.set(r.id,r);return uo(n).flatMap(r=>{if(!r.enabled||r.progress<=0)return[];let o=ho(r.from,e),i=ho(r.to,e);return!o||!i?[]:[{id:r.id,from:o,to:i,color:r.color,width:vo(r.width,5e-4,.1),lift:r.lift,progress:r.progress}]})}function ho(n,t){if(n.kind==="place")return{lat:n.lat,lon:n.lon};let e=t.get(n.markerId);return e?{lat:e.lat,lon:e.lon}:null}function bo(n){let t=n.from,e=n.to,r=Math.abs(e.lat-t.lat)+Math.abs(e.lon-t.lon);return Math.max(8,Math.min(128,Math.round(r*.7)))}function vo(n,t,e){return n<t?t:n>e?e:n}var kc=[-180,-90,180,90],wo=Math.PI/180;function ze({lat:n,lon:t}){let e=n*wo,r=t*wo,o=Math.cos(e);return{x:o*Math.cos(r),y:Math.sin(e),z:-o*Math.sin(r)}}function xo(n,t){let{x:e,y:r,z:o}=ze(n);return[e*t,r*t,o*t]}function Bc({lat:n,lon:t}){return{u:(t+180)/360,v:.5+n/180}}function Hn({lat:n,lon:t},e,r){return{x:t/360*e,y:n/180*r}}function ko(n,t){return[-n/2,-t/2,n/2,t/2]}function jc(n){return-n}function qc(n){return-n}function Bo(n,t,e={}){let r=e.radius??1,o=e.lift??0,i=Math.max(1,Math.floor(e.segments??64)),s=ze(n),a=ze(t),c=Vi(s.x*a.x+s.y*a.y+s.z*a.z,-1,1),l=Math.acos(c),f=[];for(let u=0;u<=i;u++){let A=u/i,[p,d]=Math.abs(l)<1e-6?[1-A,A]:[Math.sin((1-A)*l)/Math.sin(l),Math.sin(A*l)/Math.sin(l)],b=s.x*p+a.x*d,y=s.y*p+a.y*d,x=s.z*p+a.z*d,g=Math.hypot(b,y,x)||1,m=r*(1+o*Math.sin(Math.PI*A))/g;f.push([b*m,y*m,x*m])}return f}function zc(n,t){return((t-n)%360+540)%360-180}function Vi(n,t,e){return n<t?t:n>e?e:n}import{Graphics2D as Ki}from"@motionscript/sdk";function Ce(n){return Math.round(n/2)}function jo(n){let t=n.width,e=Ce(t),r=ko(t,e),o=new Ki;o.rect({width:t,height:e}).fill(n.ocean);for(let i of Dt().countries){let s=[];for(let a of i.rings)Ji(s,a,t,e);s.length!==0&&o.path({data:s,centerBounds:r}).fill(n.land)}if(n.borderWidth>0&&Wi(o,n,t,e,r),n.graticule)for(let i of Ui(n.graticuleStep,t,e))o.line({points:i}).stroke({fill:n.graticuleColor,weight:n.graticuleWidth});return o}function Ji(n,t,e,r){let o=t.points.length/2;for(let i=0;i<o;i++){let{x:s,y:a}=Hn({lon:t.points[i*2],lat:t.points[i*2+1]},e,r);n.push(i===0?{type:"M",x:s,y:a}:{type:"L",x:s,y:a})}n.push({type:"Z"})}function Wi(n,t,e,r,o){let i={fill:t.border,weight:t.borderWidth};for(let s of $r()){let a=s.length/2;if(a<2)continue;let c=[];for(let l=0;l<a;l++){let{x:f,y:u}=Hn({lon:s[l*2],lat:s[l*2+1]},e,r);c.push(l===0?{type:"M",x:f,y:u}:{type:"L",x:f,y:u})}n.path({data:c,centerBounds:o}).stroke(i)}}function Ui(n,t,e){let r=Math.max(5,Math.min(90,n)),o=[];for(let i=-180;i<=180;i+=r){let s=[];for(let a=-90;a<=90;a+=5)s.push(Hn({lat:a,lon:i},t,e));o.push(s)}for(let i=-90+r;i<=90-r;i+=r)o.push([Hn({lat:i,lon:-180},t,e),Hn({lat:i,lon:180},t,e)]);return o}var P=function(n,t,e,r){var o=arguments.length,i=o<3?t:r===null?r=Object.getOwnPropertyDescriptor(t,e):r,s;if(typeof Reflect=="object"&&typeof Reflect.decorate=="function")i=Reflect.decorate(n,t,e,r);else for(var a=n.length-1;a>=0;a--)(s=n[a])&&(i=(o<3?s(i):o>3?s(t,e,i):s(t,e))||i);return o>3&&i&&Object.defineProperty(t,e,i),i},$=1,ea=.35,I=class extends Yi{constructor(t){super(t)}orbitTo(t){return this.to({data:ta(t.data?.target??{}),duration:t.duration,easing:t.easing??qo()})}flyTo(t){let e=t.data??{latitude:0,longitude:0},{latitude:r,longitude:o,framing:i=2.2,arc:s=.35}=e,a=t.duration??1.6,c=t.easing??qo(),l=this.orbit,f=this.elevation,u=this.zoom,A=l+ra(l,-o);return Qi(a,p=>{let d=c(p);this.set({orbit:l+(A-l)*d,elevation:f+(r-f)*d,zoom:(u+(i-u)*d)*(1+s*Math.sin(Math.PI*d))})})}buildScene3D(){let t=new $i,e=$*Math.max(1.02,this.zoom);t.perspective({fov:this.fov,near:Math.max(.01,(e-$)*.5),far:e+$*4,orbit:na(this.orbit),elevation:this.elevation,distance:e}),t.light({type:"ambient",intensity:this.ambientIntensity,color:this.ambientColor}).light({type:"directional",intensity:this.keyIntensity,color:this.keyColor},{position:[$*3,$*2,$*3]}).light({type:"directional",intensity:this.keyIntensity*.35,color:this.keyColor},{position:[-$*3,-$,-$*2]});let r=new Zi;return this.addPlanet(r),this.addArcs(r),this.addMarkers(r),this.atmosphere&&this.addAtmosphere(r),t.draw(r),t}addPlanet(t){t.sphere({radius:$,segments:[128,64],fill:this.bakedMap().texture,roughness:.95,metalness:0})}addAtmosphere(t){t.sphere({radius:$*Math.max(1.001,this.atmosphereSize),segments:[96,48],material:Ur(this.atmosphereColor,this.atmosphereFalloff,this.atmosphereIntensity)})}addMarkers(t){let e=_o(this.markers);if(e.length===0)return;let r=[],o=[];for(let i of e){let s=i.size*$;r.push({position:xo(i,$+s*ea),scale:s}),o.push(i.color)}t.instances(zo.sphere({radius:1,segments:[16,12]}),Co.basic({transparent:!0}),r,{colors:o})}addArcs(t){for(let e of yo(this.arcs,this.markers)){let r=Bo(e.from,e.to,{radius:$,lift:e.lift,segments:bo(e)}),o=Math.max(2,Math.round(r.length*e.progress));t.mesh(zo.tube({points:r.slice(0,o),radius:e.width*$,segments:[o,8]}),Co.basic({color:e.color,transparent:!0}))}}cache=null;bakedMap(){let t=this.mapStyle(),e=[t.width,t.ocean,t.land,t.border,t.borderWidth,t.graticule,t.graticuleColor,t.graticuleStep,t.graticuleWidth].join("|"),r=this.cache;if(r?.key===e)return r.map;let o={texture:{source:jo(t),width:t.width,height:Ce(t.width),static:!0,identity:`globe:${e}`}};return this.cache={key:e,map:o},o}mapStyle(){return{width:Math.max(256,Math.round(this.resolution/2)*2),ocean:It(this.ocean),land:It(this.land),border:It(this.border),borderWidth:this.borderWidth,graticule:this.graticule,graticuleColor:It(this.graticuleColor),graticuleStep:this.graticuleStep,graticuleWidth:this.graticuleWidth}}};P([L({default:2048,tween:dn})],I.prototype,"resolution",void 0);P([L({default:"#0b1a2b",tween:dn})],I.prototype,"ocean",void 0);P([L({default:"#2c3e50",tween:dn})],I.prototype,"land",void 0);P([L({default:"#4a6076",tween:dn})],I.prototype,"border",void 0);P([L({default:1.5,tween:dn})],I.prototype,"borderWidth",void 0);P([L({default:!0,tween:Mo})],I.prototype,"graticule",void 0);P([L({default:"#ffffff20",tween:dn})],I.prototype,"graticuleColor",void 0);P([L({default:15,tween:dn})],I.prototype,"graticuleStep",void 0);P([L({default:1,tween:dn})],I.prototype,"graticuleWidth",void 0);P([L({default:-10})],I.prototype,"orbit",void 0);P([L({default:25})],I.prototype,"elevation",void 0);P([L({default:2.8})],I.prototype,"zoom",void 0);P([L({default:45})],I.prototype,"fov",void 0);P([L({default:.55})],I.prototype,"ambientIntensity",void 0);P([L({default:"#ffffff",mapper:Me,tween:Ee})],I.prototype,"ambientColor",void 0);P([L({default:1.9})],I.prototype,"keyIntensity",void 0);P([L({default:"#ffffff",mapper:Me,tween:Ee})],I.prototype,"keyColor",void 0);P([L({default:!0,tween:Mo})],I.prototype,"atmosphere",void 0);P([L({default:"#4da3ff",mapper:Me,tween:Ee})],I.prototype,"atmosphereColor",void 0);P([L({default:1.06})],I.prototype,"atmosphereSize",void 0);P([L({default:3})],I.prototype,"atmosphereFalloff",void 0);P([L({default:1.1})],I.prototype,"atmosphereIntensity",void 0);P([L({default:"[]",tween:dn})],I.prototype,"markers",void 0);P([L({default:"[]",tween:dn})],I.prototype,"arcs",void 0);P([Eo({args:[{key:"target",kind:"orbit",properties:{orbit:{kind:"number",step:1,unit:"\xB0"},elevation:{kind:"number",min:-89,max:89,step:1,unit:"\xB0"},zoom:{kind:"number",min:.2,max:24,step:.1,unit:"\xD7"}}}]})],I.prototype,"orbitTo",null);P([Eo({args:[{key:"latitude",kind:"number",default:0,min:-89,max:89,step:1,unit:"\xB0"},{key:"longitude",kind:"number",default:0,min:-180,max:180,step:1,unit:"\xB0"},{key:"framing",kind:"number",default:2.2,min:1.05,max:12,step:.1,unit:"\xD7"},{key:"arc",kind:"number",default:.35,min:0,max:3,step:.05,scale:100,unit:"%"}]})],I.prototype,"flyTo",null);I=P([Xi({key:"globe",parentKey:"node",forkable:!0,layout:{children:"freeform",acceptsChildren:!1,defaultWidthMode:"fixed",defaultHeightMode:"fixed"},seed:{width:640,height:640}})],I);function ra(n,t){return((t-n)%360+540)%360-180}function It(n){if(typeof n=="string")return n;let[t,e,r,o=1]=n,i=s=>Math.round(Math.min(1,Math.max(0,s))*255);return`rgba(${i(t)}, ${i(e)}, ${i(r)}, ${o})`}var oa=[I,An];export{ao as DEFAULT_ARC_COLOR,Hi as DEFAULT_MARKER_COLORS,Bt as GEO_DATA_FORMAT,qt as GEO_DATA_VERSION,An as GeoBorder,I as Globe,oa as NODES,kc as WORLD_BOUNDS,bo as arcSegments,uo as arcsOf,bc as arcsToValue,Ur as atmosphereMaterial,$r as borderLines,ko as canvasBounds,Yf as clearGeoFiles,Tf as clearGeoGeometry,ke as countryFileKey,_c as createArc,hc as createMarker,Er as decodeGeoFile,yo as drawableArcs,_o as drawableMarkers,Nr as geoDataVersion,Lr as geoFileEntry,Vr as geoFilesFor,Ir as geoGeometry,Tr as geoLoader,Wf as geoLoaderSource,wn as geoRegistry,Jf as geoUrlSource,Bo as greatCircle,Hn as latLonToCanvas,xo as latLonToPosition,Bc as latLonToUV,ze as latLonToVector,Ci as loadGeoFile,qc as longitudeForOrbit,Ce as mapHeight,io as markerColorAt,to as markerEnd,qe as markersOf,yc as markersToValue,Or as normalizeIso,jc as orbitForLongitude,eo as placeEnd,gi as pointBucketLimit,mi as polygonAreaLimit,li as ringArea,he as ringCoordinates,Kr as selectGeoFeatures,zc as shortestTurn,Mt as statesFileKey,Dt as world,jo as worldMapGraphics};
25
+ //# sourceMappingURL=index.js.map