UNPKG

chartjs-chart-geo

Version:
1 lines 84.5 kB
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("chart.js"),require("chart.js/helpers")):"function"==typeof define&&define.amd?define(["exports","chart.js","chart.js/helpers"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).ChartGeo={},e.Chart,e.Chart.helpers)}(this,(function(e,t,n){"use strict";class a{constructor(){this._partials=new Float64Array(32),this._n=0}add(e){const t=this._partials;let n=0;for(let a=0;a<this._n&&a<32;a++){const r=t[a],i=e+r,f=Math.abs(e)<Math.abs(r)?e-(i-r):r-(i-e);f&&(t[n++]=f),e=i}return t[n]=e,this._n=n+1,this}valueOf(){const e=this._partials;let t,n,a,r=this._n,i=0;if(r>0){for(i=e[--r];r>0&&(t=i,n=e[--r],i=t+n,a=n-(i-t),!a););r>0&&(a<0&&e[r-1]<0||a>0&&e[r-1]>0)&&(n=2*a,t=i+n,n==t-i&&(i=t))}return i}}function r(e){return Array.from(function*(e){for(const t of e)yield*t}(e))}function i(e,t,n){e=+e,t=+t,n=(r=arguments.length)<2?(t=e,e=0,1):r<3?1:+n;for(var a=-1,r=0|Math.max(0,Math.ceil((t-e)/n)),i=new Array(r);++a<r;)i[a]=e+a*n;return i}var f=1e-6,c=1e-12,o=Math.PI,d=o/2,s=o/4,l=2*o,u=180/o,h=o/180,b=Math.abs,p=Math.atan,g=Math.atan2,m=Math.cos,v=Math.ceil,y=Math.exp,x=Math.log,w=Math.pow,M=Math.sin,S=Math.sign||function(e){return e>0?1:e<0?-1:0},E=Math.sqrt,_=Math.tan;function N(e){return e>1?0:e<-1?o:Math.acos(e)}function A(e){return e>1?d:e<-1?-d:Math.asin(e)}function k(){}function C(e,t){e&&I.hasOwnProperty(e.type)&&I[e.type](e,t)}var P={Feature:function(e,t){C(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,a=-1,r=n.length;++a<r;)C(n[a].geometry,t)}},I={Sphere:function(e,t){t.sphere()},Point:function(e,t){e=e.coordinates,t.point(e[0],e[1],e[2])},MultiPoint:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)e=n[a],t.point(e[0],e[1],e[2])},LineString:function(e,t){$(e.coordinates,t,0)},MultiLineString:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)$(n[a],t,0)},Polygon:function(e,t){j(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)j(n[a],t)},GeometryCollection:function(e,t){for(var n=e.geometries,a=-1,r=n.length;++a<r;)C(n[a],t)}};function $(e,t,n){var a,r=-1,i=e.length-n;for(t.lineStart();++r<i;)a=e[r],t.point(a[0],a[1],a[2]);t.lineEnd()}function j(e,t){var n=-1,a=e.length;for(t.polygonStart();++n<a;)$(e[n],t,1);t.polygonEnd()}function z(e,t){e&&P.hasOwnProperty(e.type)?P[e.type](e,t):C(e,t)}function O(e){return[g(e[1],e[0]),A(e[2])]}function D(e){var t=e[0],n=e[1],a=m(n);return[a*m(t),a*M(t),M(n)]}function R(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function G(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function B(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function q(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function L(e){var t=E(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}function T(e,t){function n(n,a){return n=e(n,a),t(n[0],n[1])}return e.invert&&t.invert&&(n.invert=function(n,a){return(n=t.invert(n,a))&&e.invert(n[0],n[1])}),n}function F(e,t){return b(e)>o&&(e-=Math.round(e/l)*l),[e,t]}function W(e,t,n){return(e%=l)?t||n?T(H(e),Y(t,n)):H(e):t||n?Y(t,n):F}function V(e){return function(t,n){return b(t+=e)>o&&(t-=Math.round(t/l)*l),[t,n]}}function H(e){var t=V(e);return t.invert=V(-e),t}function Y(e,t){var n=m(e),a=M(e),r=m(t),i=M(t);function f(e,t){var f=m(t),c=m(e)*f,o=M(e)*f,d=M(t),s=d*n+c*a;return[g(o*r-s*i,c*n-d*a),A(s*r+o*i)]}return f.invert=function(e,t){var f=m(t),c=m(e)*f,o=M(e)*f,d=M(t),s=d*r-o*i;return[g(o*r+d*i,c*n+s*a),A(s*n-c*a)]},f}function K(e,t){(t=D(t))[0]-=e,L(t);var n=N(-t[1]);return((-t[2]<0?-n:n)+l-f)%l}function U(){var e,t=[];return{point:function(t,n,a){e.push([t,n,a])},lineStart:function(){t.push(e=[])},lineEnd:k,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var n=t;return t=[],e=null,n}}}function X(e,t){return b(e[0]-t[0])<f&&b(e[1]-t[1])<f}function Z(e,t,n,a){this.x=e,this.z=t,this.o=n,this.e=a,this.v=!1,this.n=this.p=null}function J(e,t,n,a,r){var i,f,c=[],o=[];if(e.forEach((function(e){if(!((t=e.length-1)<=0)){var t,n,a=e[0],f=e[t];if(X(a,f)){if(!a[2]&&!f[2]){for(r.lineStart(),i=0;i<t;++i)r.point((a=e[i])[0],a[1]);return void r.lineEnd()}f[0]+=2e-6}c.push(n=new Z(a,e,null,!0)),o.push(n.o=new Z(a,null,n,!1)),c.push(n=new Z(f,e,null,!1)),o.push(n.o=new Z(f,null,n,!0))}})),c.length){for(o.sort(t),Q(c),Q(o),i=0,f=o.length;i<f;++i)o[i].e=n=!n;for(var d,s,l=c[0];;){for(var u=l,h=!0;u.v;)if((u=u.n)===l)return;d=u.z,r.lineStart();do{if(u.v=u.o.v=!0,u.e){if(h)for(i=0,f=d.length;i<f;++i)r.point((s=d[i])[0],s[1]);else a(u.x,u.n.x,1,r);u=u.n}else{if(h)for(d=u.p.z,i=d.length-1;i>=0;--i)r.point((s=d[i])[0],s[1]);else a(u.x,u.p.x,-1,r);u=u.p}d=(u=u.o).z,h=!h}while(!u.v);r.lineEnd()}}}function Q(e){if(t=e.length){for(var t,n,a=0,r=e[0];++a<t;)r.n=n=e[a],n.p=r,r=n;r.n=n=e[0],n.p=r}}function ee(e){return b(e[0])<=o?e[0]:S(e[0])*((b(e[0])+o)%l-o)}function te(e,t){var n=ee(t),r=t[1],i=M(r),c=[M(n),-m(n),0],u=0,h=0,b=new a;1===i?r=d+f:-1===i&&(r=-d-f);for(var p=0,v=e.length;p<v;++p)if(x=(y=e[p]).length)for(var y,x,w=y[x-1],S=ee(w),E=w[1]/2+s,_=M(E),N=m(E),k=0;k<x;++k,S=P,_=$,N=j,w=C){var C=y[k],P=ee(C),I=C[1]/2+s,$=M(I),j=m(I),z=P-S,O=z>=0?1:-1,R=O*z,B=R>o,q=_*$;if(b.add(g(q*O*M(R),N*j+q*m(R))),u+=B?z+O*l:z,B^S>=n^P>=n){var T=G(D(w),D(C));L(T);var F=G(c,T);L(F);var W=(B^z>=0?-1:1)*A(F[2]);(r>W||r===W&&(T[0]||T[1]))&&(h+=B^z>=0?1:-1)}}return(u<-f||u<f&&b<-1e-12)^1&h}function ne(e,t,n,a){return function(i){var f,c,o,d=t(i),s=U(),l=t(s),u=!1,h={point:b,lineStart:g,lineEnd:m,polygonStart:function(){h.point=v,h.lineStart=y,h.lineEnd=x,c=[],f=[]},polygonEnd:function(){h.point=b,h.lineStart=g,h.lineEnd=m,c=r(c);var e=te(f,a);c.length?(u||(i.polygonStart(),u=!0),J(c,re,e,n,i)):e&&(u||(i.polygonStart(),u=!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),u&&(i.polygonEnd(),u=!1),c=f=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function b(t,n){e(t,n)&&i.point(t,n)}function p(e,t){d.point(e,t)}function g(){h.point=p,d.lineStart()}function m(){h.point=b,d.lineEnd()}function v(e,t){o.push([e,t]),l.point(e,t)}function y(){l.lineStart(),o=[]}function x(){v(o[0][0],o[0][1]),l.lineEnd();var e,t,n,a,r=l.clean(),d=s.result(),h=d.length;if(o.pop(),f.push(o),o=null,h)if(1&r){if((t=(n=d[0]).length-1)>0){for(u||(i.polygonStart(),u=!0),i.lineStart(),e=0;e<t;++e)i.point((a=n[e])[0],a[1]);i.lineEnd()}}else h>1&&2&r&&d.push(d.pop().concat(d.shift())),c.push(d.filter(ae))}return h}}function ae(e){return e.length>1}function re(e,t){return((e=e.x)[0]<0?e[1]-d-f:d-e[1])-((t=t.x)[0]<0?t[1]-d-f:d-t[1])}F.invert=F;var ie=ne((function(){return!0}),(function(e){var t,n=NaN,a=NaN,r=NaN;return{lineStart:function(){e.lineStart(),t=1},point:function(i,c){var s=i>0?o:-o,l=b(i-n);b(l-o)<f?(e.point(n,a=(a+c)/2>0?d:-d),e.point(r,a),e.lineEnd(),e.lineStart(),e.point(s,a),e.point(i,a),t=0):r!==s&&l>=o&&(b(n-r)<f&&(n-=r*f),b(i-s)<f&&(i-=s*f),a=function(e,t,n,a){var r,i,c=M(e-n);return b(c)>f?p((M(t)*(i=m(a))*M(n)-M(a)*(r=m(t))*M(e))/(r*i*c)):(t+a)/2}(n,a,i,c),e.point(r,a),e.lineEnd(),e.lineStart(),e.point(s,a),t=0),e.point(n=i,a=c),r=s},lineEnd:function(){e.lineEnd(),n=a=NaN},clean:function(){return 2-t}}}),(function(e,t,n,a){var r;if(null==e)r=n*d,a.point(-o,r),a.point(0,r),a.point(o,r),a.point(o,0),a.point(o,-r),a.point(0,-r),a.point(-o,-r),a.point(-o,0),a.point(-o,r);else if(b(e[0]-t[0])>f){var i=e[0]<t[0]?o:-o;r=n*i/2,a.point(-i,r),a.point(0,r),a.point(i,r)}else a.point(t[0],t[1])}),[-o,-d]);function fe(e){var t=m(e),n=2*h,a=t>0,r=b(t)>f;function i(e,n){return m(e)*m(n)>t}function c(e,n,a){var r=[1,0,0],i=G(D(e),D(n)),c=R(i,i),d=i[0],s=c-d*d;if(!s)return!a&&e;var l=t*c/s,u=-t*d/s,h=G(r,i),p=q(r,l);B(p,q(i,u));var g=h,m=R(p,g),v=R(g,g),y=m*m-v*(R(p,p)-1);if(!(y<0)){var x=E(y),w=q(g,(-m-x)/v);if(B(w,p),w=O(w),!a)return w;var M,S=e[0],_=n[0],N=e[1],A=n[1];_<S&&(M=S,S=_,_=M);var k=_-S,C=b(k-o)<f;if(!C&&A<N&&(M=N,N=A,A=M),C||k<f?C?N+A>0^w[1]<(b(w[0]-S)<f?N:A):N<=w[1]&&w[1]<=A:k>o^(S<=w[0]&&w[0]<=_)){var P=q(g,(-m+x)/v);return B(P,p),[w,O(P)]}}}function d(t,n){var r=a?e:o-e,i=0;return t<-r?i|=1:t>r&&(i|=2),n<-r?i|=4:n>r&&(i|=8),i}return ne(i,(function(e){var t,n,f,s,l;return{lineStart:function(){s=f=!1,l=1},point:function(u,h){var b,p=[u,h],g=i(u,h),m=a?g?0:d(u,h):g?d(u+(u<0?o:-o),h):0;if(!t&&(s=f=g)&&e.lineStart(),g!==f&&(!(b=c(t,p))||X(t,b)||X(p,b))&&(p[2]=1),g!==f)l=0,g?(e.lineStart(),b=c(p,t),e.point(b[0],b[1])):(b=c(t,p),e.point(b[0],b[1],2),e.lineEnd()),t=b;else if(r&&t&&a^g){var v;m&n||!(v=c(p,t,!0))||(l=0,a?(e.lineStart(),e.point(v[0][0],v[0][1]),e.point(v[1][0],v[1][1]),e.lineEnd()):(e.point(v[1][0],v[1][1]),e.lineEnd(),e.lineStart(),e.point(v[0][0],v[0][1],3)))}!g||t&&X(t,p)||e.point(p[0],p[1]),t=p,f=g,n=m},lineEnd:function(){f&&e.lineEnd(),t=null},clean:function(){return l|(s&&f)<<1}}}),(function(t,a,r,i){!function(e,t,n,a,r,i){if(n){var f=m(t),c=M(t),o=a*n;null==r?(r=t+a*l,i=t-o/2):(r=K(f,r),i=K(f,i),(a>0?r<i:r>i)&&(r+=a*l));for(var d,s=r;a>0?s>i:s<i;s-=o)d=O([f,-c*m(s),-c*M(s)]),e.point(d[0],d[1])}}(i,e,n,r,t,a)}),a?[0,-e]:[-o,e-o])}var ce,oe,de,se,le=1e9,ue=-le;function he(e,t,n,a){function i(r,i){return e<=r&&r<=n&&t<=i&&i<=a}function c(r,i,f,c){var d=0,l=0;if(null==r||(d=o(r,f))!==(l=o(i,f))||s(r,i)<0^f>0)do{c.point(0===d||3===d?e:n,d>1?a:t)}while((d=(d+f+4)%4)!==l);else c.point(i[0],i[1])}function o(a,r){return b(a[0]-e)<f?r>0?0:3:b(a[0]-n)<f?r>0?2:1:b(a[1]-t)<f?r>0?1:0:r>0?3:2}function d(e,t){return s(e.x,t.x)}function s(e,t){var n=o(e,1),a=o(t,1);return n!==a?n-a:0===n?t[1]-e[1]:1===n?e[0]-t[0]:2===n?e[1]-t[1]:t[0]-e[0]}return function(f){var o,s,l,u,h,b,p,g,m,v,y,x=f,w=U(),M={point:S,lineStart:function(){M.point=E,s&&s.push(l=[]);v=!0,m=!1,p=g=NaN},lineEnd:function(){o&&(E(u,h),b&&m&&w.rejoin(),o.push(w.result()));M.point=S,m&&x.lineEnd()},polygonStart:function(){x=w,o=[],s=[],y=!0},polygonEnd:function(){var t=function(){for(var t=0,n=0,r=s.length;n<r;++n)for(var i,f,c=s[n],o=1,d=c.length,l=c[0],u=l[0],h=l[1];o<d;++o)i=u,f=h,u=(l=c[o])[0],h=l[1],f<=a?h>a&&(u-i)*(a-f)>(h-f)*(e-i)&&++t:h<=a&&(u-i)*(a-f)<(h-f)*(e-i)&&--t;return t}(),n=y&&t,i=(o=r(o)).length;(n||i)&&(f.polygonStart(),n&&(f.lineStart(),c(null,null,1,f),f.lineEnd()),i&&J(o,d,t,c,f),f.polygonEnd());x=f,o=s=l=null}};function S(e,t){i(e,t)&&x.point(e,t)}function E(r,f){var c=i(r,f);if(s&&l.push([r,f]),v)u=r,h=f,b=c,v=!1,c&&(x.lineStart(),x.point(r,f));else if(c&&m)x.point(r,f);else{var o=[p=Math.max(ue,Math.min(le,p)),g=Math.max(ue,Math.min(le,g))],d=[r=Math.max(ue,Math.min(le,r)),f=Math.max(ue,Math.min(le,f))];!function(e,t,n,a,r,i){var f,c=e[0],o=e[1],d=0,s=1,l=t[0]-c,u=t[1]-o;if(f=n-c,l||!(f>0)){if(f/=l,l<0){if(f<d)return;f<s&&(s=f)}else if(l>0){if(f>s)return;f>d&&(d=f)}if(f=r-c,l||!(f<0)){if(f/=l,l<0){if(f>s)return;f>d&&(d=f)}else if(l>0){if(f<d)return;f<s&&(s=f)}if(f=a-o,u||!(f>0)){if(f/=u,u<0){if(f<d)return;f<s&&(s=f)}else if(u>0){if(f>s)return;f>d&&(d=f)}if(f=i-o,u||!(f<0)){if(f/=u,u<0){if(f>s)return;f>d&&(d=f)}else if(u>0){if(f<d)return;f<s&&(s=f)}return d>0&&(e[0]=c+d*l,e[1]=o+d*u),s<1&&(t[0]=c+s*l,t[1]=o+s*u),!0}}}}}(o,d,e,t,n,a)?c&&(x.lineStart(),x.point(r,f),y=!1):(m||(x.lineStart(),x.point(o[0],o[1])),x.point(d[0],d[1]),c||x.lineEnd(),y=!1)}p=r,g=f,m=c}return M}}var be={sphere:k,point:k,lineStart:function(){be.point=ge,be.lineEnd=pe},lineEnd:k,polygonStart:k,polygonEnd:k};function pe(){be.point=be.lineEnd=k}function ge(e,t){oe=e*=h,de=M(t*=h),se=m(t),be.point=me}function me(e,t){e*=h;var n=M(t*=h),a=m(t),r=b(e-oe),i=m(r),f=a*M(r),c=se*n-de*a*i,o=de*n+se*a*i;ce.add(g(E(f*f+c*c),o)),oe=e,de=n,se=a}var ve=[null,null],ye={type:"LineString",coordinates:ve};function xe(e,t){return ve[0]=e,ve[1]=t,function(e){return ce=new a,z(e,be),+ce}(ye)}var we={Feature:function(e,t){return Se(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,a=-1,r=n.length;++a<r;)if(Se(n[a].geometry,t))return!0;return!1}},Me={Sphere:function(){return!0},Point:function(e,t){return Ee(e.coordinates,t)},MultiPoint:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)if(Ee(n[a],t))return!0;return!1},LineString:function(e,t){return _e(e.coordinates,t)},MultiLineString:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)if(_e(n[a],t))return!0;return!1},Polygon:function(e,t){return Ne(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,a=-1,r=n.length;++a<r;)if(Ne(n[a],t))return!0;return!1},GeometryCollection:function(e,t){for(var n=e.geometries,a=-1,r=n.length;++a<r;)if(Se(n[a],t))return!0;return!1}};function Se(e,t){return!(!e||!Me.hasOwnProperty(e.type))&&Me[e.type](e,t)}function Ee(e,t){return 0===xe(e,t)}function _e(e,t){for(var n,a,r,i=0,f=e.length;i<f;i++){if(0===(a=xe(e[i],t)))return!0;if(i>0&&(r=xe(e[i],e[i-1]))>0&&n<=r&&a<=r&&(n+a-r)*(1-Math.pow((n-a)/r,2))<c*r)return!0;n=a}return!1}function Ne(e,t){return!!te(e.map(Ae),ke(t))}function Ae(e){return(e=e.map(ke)).pop(),e}function ke(e){return[e[0]*h,e[1]*h]}function Ce(e,t,n){var a=i(e,t-f,n).concat(t);return function(e){return a.map((function(t){return[e,t]}))}}function Pe(e,t,n){var a=i(e,t-f,n).concat(t);return function(e){return a.map((function(t){return[t,e]}))}}function Ie(){var e,t,n,a,r,c,o,d,s,l,u,h,p=10,g=p,m=90,y=360,x=2.5;function w(){return{type:"MultiLineString",coordinates:M()}}function M(){return i(v(a/m)*m,n,m).map(u).concat(i(v(d/y)*y,o,y).map(h)).concat(i(v(t/p)*p,e,p).filter((function(e){return b(e%m)>f})).map(s)).concat(i(v(c/g)*g,r,g).filter((function(e){return b(e%y)>f})).map(l))}return w.lines=function(){return M().map((function(e){return{type:"LineString",coordinates:e}}))},w.outline=function(){return{type:"Polygon",coordinates:[u(a).concat(h(o).slice(1),u(n).reverse().slice(1),h(d).reverse().slice(1))]}},w.extent=function(e){return arguments.length?w.extentMajor(e).extentMinor(e):w.extentMinor()},w.extentMajor=function(e){return arguments.length?(a=+e[0][0],n=+e[1][0],d=+e[0][1],o=+e[1][1],a>n&&(e=a,a=n,n=e),d>o&&(e=d,d=o,o=e),w.precision(x)):[[a,d],[n,o]]},w.extentMinor=function(n){return arguments.length?(t=+n[0][0],e=+n[1][0],c=+n[0][1],r=+n[1][1],t>e&&(n=t,t=e,e=n),c>r&&(n=c,c=r,r=n),w.precision(x)):[[t,c],[e,r]]},w.step=function(e){return arguments.length?w.stepMajor(e).stepMinor(e):w.stepMinor()},w.stepMajor=function(e){return arguments.length?(m=+e[0],y=+e[1],w):[m,y]},w.stepMinor=function(e){return arguments.length?(p=+e[0],g=+e[1],w):[p,g]},w.precision=function(i){return arguments.length?(x=+i,s=Ce(c,r,90),l=Pe(t,e,x),u=Ce(d,o,90),h=Pe(a,n,x),w):x},w.extentMajor([[-180,-89.999999],[180,89.999999]]).extentMinor([[-180,-80.000001],[180,80.000001]])}var $e,je,ze,Oe,De=e=>e,Re=new a,Ge=new a,Be={point:k,lineStart:k,lineEnd:k,polygonStart:function(){Be.lineStart=qe,Be.lineEnd=Fe},polygonEnd:function(){Be.lineStart=Be.lineEnd=Be.point=k,Re.add(b(Ge)),Ge=new a},result:function(){var e=Re/2;return Re=new a,e}};function qe(){Be.point=Le}function Le(e,t){Be.point=Te,$e=ze=e,je=Oe=t}function Te(e,t){Ge.add(Oe*e-ze*t),ze=e,Oe=t}function Fe(){Te($e,je)}var We=1/0,Ve=We,He=-We,Ye=He,Ke={point:function(e,t){e<We&&(We=e);e>He&&(He=e);t<Ve&&(Ve=t);t>Ye&&(Ye=t)},lineStart:k,lineEnd:k,polygonStart:k,polygonEnd:k,result:function(){var e=[[We,Ve],[He,Ye]];return He=Ye=-(Ve=We=1/0),e}};var Ue,Xe,Ze,Je,Qe=0,et=0,tt=0,nt=0,at=0,rt=0,it=0,ft=0,ct=0,ot={point:dt,lineStart:st,lineEnd:ht,polygonStart:function(){ot.lineStart=bt,ot.lineEnd=pt},polygonEnd:function(){ot.point=dt,ot.lineStart=st,ot.lineEnd=ht},result:function(){var e=ct?[it/ct,ft/ct]:rt?[nt/rt,at/rt]:tt?[Qe/tt,et/tt]:[NaN,NaN];return Qe=et=tt=nt=at=rt=it=ft=ct=0,e}};function dt(e,t){Qe+=e,et+=t,++tt}function st(){ot.point=lt}function lt(e,t){ot.point=ut,dt(Ze=e,Je=t)}function ut(e,t){var n=e-Ze,a=t-Je,r=E(n*n+a*a);nt+=r*(Ze+e)/2,at+=r*(Je+t)/2,rt+=r,dt(Ze=e,Je=t)}function ht(){ot.point=dt}function bt(){ot.point=gt}function pt(){mt(Ue,Xe)}function gt(e,t){ot.point=mt,dt(Ue=Ze=e,Xe=Je=t)}function mt(e,t){var n=e-Ze,a=t-Je,r=E(n*n+a*a);nt+=r*(Ze+e)/2,at+=r*(Je+t)/2,rt+=r,it+=(r=Je*e-Ze*t)*(Ze+e),ft+=r*(Je+t),ct+=3*r,dt(Ze=e,Je=t)}function vt(e){this._context=e}vt.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){0===this._line&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:this._context.moveTo(e,t),this._point=1;break;case 1:this._context.lineTo(e,t);break;default:this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,l)}},result:k};var yt,xt,wt,Mt,St,Et=new a,_t={point:k,lineStart:function(){_t.point=Nt},lineEnd:function(){yt&&At(xt,wt),_t.point=k},polygonStart:function(){yt=!0},polygonEnd:function(){yt=null},result:function(){var e=+Et;return Et=new a,e}};function Nt(e,t){_t.point=At,xt=Mt=e,wt=St=t}function At(e,t){Mt-=e,St-=t,Et.add(E(Mt*Mt+St*St)),Mt=e,St=t}let kt,Ct,Pt,It;class $t{constructor(e){this._append=null==e?jt:function(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return jt;if(t!==kt){const e=10**t;kt=t,Ct=function(t){let n=1;this._+=t[0];for(const a=t.length;n<a;++n)this._+=Math.round(arguments[n]*e)/e+t[n]}}return Ct}(e),this._radius=4.5,this._=""}pointRadius(e){return this._radius=+e,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){0===this._line&&(this._+="Z"),this._point=NaN}point(e,t){switch(this._point){case 0:this._append`M${e},${t}`,this._point=1;break;case 1:this._append`L${e},${t}`;break;default:if(this._append`M${e},${t}`,this._radius!==Pt||this._append!==Ct){const e=this._radius,t=this._;this._="",this._append`m0,${e}a${e},${e} 0 1,1 0,${-2*e}a${e},${e} 0 1,1 0,${2*e}z`,Pt=e,Ct=this._append,It=this._,this._=t}this._+=It}}result(){const e=this._;return this._="",e.length?e:null}}function jt(e){let t=1;this._+=e[0];for(const n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function zt(e,t){let n,a,r=3,i=4.5;function f(e){return e&&("function"==typeof i&&a.pointRadius(+i.apply(this,arguments)),z(e,n(a))),a.result()}return f.area=function(e){return z(e,n(Be)),Be.result()},f.measure=function(e){return z(e,n(_t)),_t.result()},f.bounds=function(e){return z(e,n(Ke)),Ke.result()},f.centroid=function(e){return z(e,n(ot)),ot.result()},f.projection=function(t){return arguments.length?(n=null==t?(e=null,De):(e=t).stream,f):e},f.context=function(e){return arguments.length?(a=null==e?(t=null,new $t(r)):new vt(t=e),"function"!=typeof i&&a.pointRadius(i),f):t},f.pointRadius=function(e){return arguments.length?(i="function"==typeof e?e:(a.pointRadius(+e),+e),f):i},f.digits=function(e){if(!arguments.length)return r;if(null==e)r=null;else{const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);r=t}return null===t&&(a=new $t(r)),f},f.projection(e).digits(r).context(t)}function Ot(e){return function(t){var n=new Dt;for(var a in e)n[a]=e[a];return n.stream=t,n}}function Dt(){}function Rt(e,t,n){var a=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),null!=a&&e.clipExtent(null),z(n,e.stream(Ke)),t(Ke.result()),null!=a&&e.clipExtent(a),e}function Gt(e,t,n){return Rt(e,(function(n){var a=t[1][0]-t[0][0],r=t[1][1]-t[0][1],i=Math.min(a/(n[1][0]-n[0][0]),r/(n[1][1]-n[0][1])),f=+t[0][0]+(a-i*(n[1][0]+n[0][0]))/2,c=+t[0][1]+(r-i*(n[1][1]+n[0][1]))/2;e.scale(150*i).translate([f,c])}),n)}function Bt(e,t,n){return Gt(e,[[0,0],t],n)}function qt(e,t,n){return Rt(e,(function(n){var a=+t,r=a/(n[1][0]-n[0][0]),i=(a-r*(n[1][0]+n[0][0]))/2,f=-r*n[0][1];e.scale(150*r).translate([i,f])}),n)}function Lt(e,t,n){return Rt(e,(function(n){var a=+t,r=a/(n[1][1]-n[0][1]),i=-r*n[0][0],f=(a-r*(n[1][1]+n[0][1]))/2;e.scale(150*r).translate([i,f])}),n)}Dt.prototype={constructor:Dt,point:function(e,t){this.stream.point(e,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()}};var Tt=m(30*h);function Ft(e,t){return+t?function(e,t){function n(a,r,i,c,o,d,s,l,u,h,p,m,v,y){var x=s-a,w=l-r,M=x*x+w*w;if(M>4*t&&v--){var S=c+h,_=o+p,N=d+m,k=E(S*S+_*_+N*N),C=A(N/=k),P=b(b(N)-1)<f||b(i-u)<f?(i+u)/2:g(_,S),I=e(P,C),$=I[0],j=I[1],z=$-a,O=j-r,D=w*z-x*O;(D*D/M>t||b((x*z+w*O)/M-.5)>.3||c*h+o*p+d*m<Tt)&&(n(a,r,i,c,o,d,$,j,P,S/=k,_/=k,N,v,y),y.point($,j),n($,j,P,S,_,N,s,l,u,h,p,m,v,y))}}return function(t){var a,r,i,f,c,o,d,s,l,u,h,b,p={point:g,lineStart:m,lineEnd:y,polygonStart:function(){t.polygonStart(),p.lineStart=x},polygonEnd:function(){t.polygonEnd(),p.lineStart=m}};function g(n,a){n=e(n,a),t.point(n[0],n[1])}function m(){s=NaN,p.point=v,t.lineStart()}function v(a,r){var i=D([a,r]),f=e(a,r);n(s,l,d,u,h,b,s=f[0],l=f[1],d=a,u=i[0],h=i[1],b=i[2],16,t),t.point(s,l)}function y(){p.point=g,t.lineEnd()}function x(){m(),p.point=w,p.lineEnd=M}function w(e,t){v(a=e,t),r=s,i=l,f=u,c=h,o=b,p.point=v}function M(){n(s,l,d,u,h,b,r,i,a,f,c,o,16,t),p.lineEnd=y,y()}return p}}(e,t):function(e){return Ot({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}(e)}var Wt=Ot({point:function(e,t){this.stream.point(e*h,t*h)}});function Vt(e,t,n,a,r,i){if(!i)return function(e,t,n,a,r){function i(i,f){return[t+e*(i*=a),n-e*(f*=r)]}return i.invert=function(i,f){return[(i-t)/e*a,(n-f)/e*r]},i}(e,t,n,a,r);var f=m(i),c=M(i),o=f*e,d=c*e,s=f/e,l=c/e,u=(c*n-f*t)/e,h=(c*t+f*n)/e;function b(e,i){return[o*(e*=a)-d*(i*=r)+t,n-d*e-o*i]}return b.invert=function(e,t){return[a*(s*e-l*t+u),r*(h-l*e-s*t)]},b}function Ht(e){return Yt((function(){return e}))()}function Yt(e){var t,n,a,r,i,f,c,o,d,s,l=150,b=480,p=250,g=0,m=0,v=0,y=0,x=0,w=0,M=1,S=1,_=null,N=ie,A=null,k=De,C=.5;function P(e){return o(e[0]*h,e[1]*h)}function I(e){return(e=o.invert(e[0],e[1]))&&[e[0]*u,e[1]*u]}function $(){var e=Vt(l,0,0,M,S,w).apply(null,t(g,m)),a=Vt(l,b-e[0],p-e[1],M,S,w);return n=W(v,y,x),c=T(t,a),o=T(n,c),f=Ft(c,C),j()}function j(){return d=s=null,P}return P.stream=function(e){return d&&s===e?d:d=Wt(function(e){return Ot({point:function(t,n){var a=e(t,n);return this.stream.point(a[0],a[1])}})}(n)(N(f(k(s=e)))))},P.preclip=function(e){return arguments.length?(N=e,_=void 0,j()):N},P.postclip=function(e){return arguments.length?(k=e,A=a=r=i=null,j()):k},P.clipAngle=function(e){return arguments.length?(N=+e?fe(_=e*h):(_=null,ie),j()):_*u},P.clipExtent=function(e){return arguments.length?(k=null==e?(A=a=r=i=null,De):he(A=+e[0][0],a=+e[0][1],r=+e[1][0],i=+e[1][1]),j()):null==A?null:[[A,a],[r,i]]},P.scale=function(e){return arguments.length?(l=+e,$()):l},P.translate=function(e){return arguments.length?(b=+e[0],p=+e[1],$()):[b,p]},P.center=function(e){return arguments.length?(g=e[0]%360*h,m=e[1]%360*h,$()):[g*u,m*u]},P.rotate=function(e){return arguments.length?(v=e[0]%360*h,y=e[1]%360*h,x=e.length>2?e[2]%360*h:0,$()):[v*u,y*u,x*u]},P.angle=function(e){return arguments.length?(w=e%360*h,$()):w*u},P.reflectX=function(e){return arguments.length?(M=e?-1:1,$()):M<0},P.reflectY=function(e){return arguments.length?(S=e?-1:1,$()):S<0},P.precision=function(e){return arguments.length?(f=Ft(c,C=e*e),j()):E(C)},P.fitExtent=function(e,t){return Gt(P,e,t)},P.fitSize=function(e,t){return Bt(P,e,t)},P.fitWidth=function(e,t){return qt(P,e,t)},P.fitHeight=function(e,t){return Lt(P,e,t)},function(){return t=e.apply(this,arguments),P.invert=t.invert&&I,$()}}function Kt(e){var t=0,n=o/3,a=Yt(e),r=a(t,n);return r.parallels=function(e){return arguments.length?a(t=e[0]*h,n=e[1]*h):[t*u,n*u]},r}function Ut(e,t){var n=M(e),a=(n+M(t))/2;if(b(a)<f)return function(e){var t=m(e);function n(e,n){return[e*t,M(n)/t]}return n.invert=function(e,n){return[e/t,A(n*t)]},n}(e);var r=1+n*(2*a-n),i=E(r)/a;function c(e,t){var n=E(r-2*a*M(t))/a;return[n*M(e*=a),i-n*m(e)]}return c.invert=function(e,t){var n=i-t,f=g(e,b(n))*S(n);return n*a<0&&(f-=o*S(e)*S(n)),[f/a,A((r-(e*e+n*n)*a*a)/(2*a))]},c}function Xt(){return Kt(Ut).scale(155.424).center([0,33.6442])}function Zt(){return Xt().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Jt(){var e,t,n,a,r,i,c=Zt(),o=Xt().rotate([154,0]).center([-2,58.5]).parallels([55,65]),d=Xt().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s={point:function(e,t){i=[e,t]}};function l(e){var t=e[0],f=e[1];return i=null,n.point(t,f),i||(a.point(t,f),i)||(r.point(t,f),i)}function u(){return e=t=null,l}return l.invert=function(e){var t=c.scale(),n=c.translate(),a=(e[0]-n[0])/t,r=(e[1]-n[1])/t;return(r>=.12&&r<.234&&a>=-.425&&a<-.214?o:r>=.166&&r<.234&&a>=-.214&&a<-.115?d:c).invert(e)},l.stream=function(n){return e&&t===n?e:(a=[c.stream(t=n),o.stream(n),d.stream(n)],r=a.length,e={point:function(e,t){for(var n=-1;++n<r;)a[n].point(e,t)},sphere:function(){for(var e=-1;++e<r;)a[e].sphere()},lineStart:function(){for(var e=-1;++e<r;)a[e].lineStart()},lineEnd:function(){for(var e=-1;++e<r;)a[e].lineEnd()},polygonStart:function(){for(var e=-1;++e<r;)a[e].polygonStart()},polygonEnd:function(){for(var e=-1;++e<r;)a[e].polygonEnd()}});var a,r},l.precision=function(e){return arguments.length?(c.precision(e),o.precision(e),d.precision(e),u()):c.precision()},l.scale=function(e){return arguments.length?(c.scale(e),o.scale(.35*e),d.scale(e),l.translate(c.translate())):c.scale()},l.translate=function(e){if(!arguments.length)return c.translate();var t=c.scale(),i=+e[0],l=+e[1];return n=c.translate(e).clipExtent([[i-.455*t,l-.238*t],[i+.455*t,l+.238*t]]).stream(s),a=o.translate([i-.307*t,l+.201*t]).clipExtent([[i-.425*t+f,l+.12*t+f],[i-.214*t-f,l+.234*t-f]]).stream(s),r=d.translate([i-.205*t,l+.212*t]).clipExtent([[i-.214*t+f,l+.166*t+f],[i-.115*t-f,l+.234*t-f]]).stream(s),u()},l.fitExtent=function(e,t){return Gt(l,e,t)},l.fitSize=function(e,t){return Bt(l,e,t)},l.fitWidth=function(e,t){return qt(l,e,t)},l.fitHeight=function(e,t){return Lt(l,e,t)},l.scale(1070)}function Qt(e){return function(t,n){var a=m(t),r=m(n),i=e(a*r);return i===1/0?[2,0]:[i*r*M(t),i*M(n)]}}function en(e){return function(t,n){var a=E(t*t+n*n),r=e(a),i=M(r),f=m(r);return[g(t*i,a*f),A(a&&n*i/a)]}}var tn=Qt((function(e){return E(2/(1+e))}));function nn(){return Ht(tn).scale(124.75).clipAngle(179.999)}tn.invert=en((function(e){return 2*A(e/2)}));var an=Qt((function(e){return(e=N(e))&&e/M(e)}));function rn(){return Ht(an).scale(79.4188).clipAngle(179.999)}function fn(e,t){return[e,x(_((d+t)/2))]}function cn(){return on(fn).scale(961/l)}function on(e){var t,n,a,r=Ht(e),i=r.center,f=r.scale,c=r.translate,d=r.clipExtent,s=null;function l(){var i=o*f(),c=r(function(e){function t(t){return(t=e(t[0]*h,t[1]*h))[0]*=u,t[1]*=u,t}return e=W(e[0]*h,e[1]*h,e.length>2?e[2]*h:0),t.invert=function(t){return(t=e.invert(t[0]*h,t[1]*h))[0]*=u,t[1]*=u,t},t}(r.rotate()).invert([0,0]));return d(null==s?[[c[0]-i,c[1]-i],[c[0]+i,c[1]+i]]:e===fn?[[Math.max(c[0]-i,s),t],[Math.min(c[0]+i,n),a]]:[[s,Math.max(c[1]-i,t)],[n,Math.min(c[1]+i,a)]])}return r.scale=function(e){return arguments.length?(f(e),l()):f()},r.translate=function(e){return arguments.length?(c(e),l()):c()},r.center=function(e){return arguments.length?(i(e),l()):i()},r.clipExtent=function(e){return arguments.length?(null==e?s=t=n=a=null:(s=+e[0][0],t=+e[0][1],n=+e[1][0],a=+e[1][1]),l()):null==s?null:[[s,t],[n,a]]},l()}function dn(e){return _((d+e)/2)}function sn(e,t){var n=m(e),a=e===t?M(e):x(n/m(t))/x(dn(t)/dn(e)),r=n*w(dn(e),a)/a;if(!a)return fn;function i(e,t){r>0?t<-d+f&&(t=-d+f):t>d-f&&(t=d-f);var n=r/w(dn(t),a);return[n*M(a*e),r-n*m(a*e)]}return i.invert=function(e,t){var n=r-t,i=S(a)*E(e*e+n*n),f=g(e,b(n))*S(n);return n*a<0&&(f-=o*S(e)*S(n)),[f/a,2*p(w(r/i,1/a))-d]},i}function ln(){return Kt(sn).scale(109.5).parallels([30,30])}function un(e,t){return[e,t]}function hn(){return Ht(un).scale(152.63)}function bn(e,t){var n=m(e),a=e===t?M(e):(n-m(t))/(t-e),r=n/a+e;if(b(a)<f)return un;function i(e,t){var n=r-t,i=a*e;return[n*M(i),r-n*m(i)]}return i.invert=function(e,t){var n=r-t,i=g(e,b(n))*S(n);return n*a<0&&(i-=o*S(e)*S(n)),[i/a,r-S(a)*E(e*e+n*n)]},i}function pn(){return Kt(bn).scale(131.154).center([0,13.9389])}an.invert=en((function(e){return e})),fn.invert=function(e,t){return[e,2*p(y(t))-d]},un.invert=un;var gn=1.340264,mn=-.081106,vn=893e-6,yn=.003796,xn=E(3)/2;function wn(e,t){var n=A(xn*M(t)),a=n*n,r=a*a*a;return[e*m(n)/(xn*(gn+3*mn*a+r*(7*vn+9*yn*a))),n*(gn+mn*a+r*(vn+yn*a))]}function Mn(){return Ht(wn).scale(177.158)}function Sn(e,t){var n=m(t),a=m(e)*n;return[n*M(e)/a,M(t)/a]}function En(){return Ht(Sn).scale(144.049).clipAngle(60)}function _n(e,t){var n=t*t,a=n*n;return[e*(.8707-.131979*n+a*(a*(.003971*n-.001529*a)-.013791)),t*(1.007226+n*(.015085+a*(.028874*n-.044475-.005916*a)))]}function Nn(){return Ht(_n).scale(175.295)}function An(e,t){return[m(t)*M(e),M(t)]}function kn(){return Ht(An).scale(249.5).clipAngle(90.000001)}function Cn(e,t){var n=m(t),a=1+m(e)*n;return[n*M(e)/a,M(t)/a]}function Pn(){return Ht(Cn).scale(250).clipAngle(142)}function In(e,t){return[x(_((d+t)/2)),-e]}function $n(){var e=on(In),t=e.center,n=e.rotate;return e.center=function(e){return arguments.length?t([-e[1],e[0]]):[(e=t())[1],-e[0]]},e.rotate=function(e){return arguments.length?n([e[0],e[1],e.length>2?e[2]+90:90]):[(e=n())[0],e[1],e[2]-90]},n([0,0,90]).scale(159.155)}wn.invert=function(e,t){for(var n,a=t,r=a*a,i=r*r*r,f=0;f<12&&(i=(r=(a-=n=(a*(gn+mn*r+i*(vn+yn*r))-t)/(gn+3*mn*r+i*(7*vn+9*yn*r)))*a)*r*r,!(b(n)<c));++f);return[xn*e*(gn+3*mn*r+i*(7*vn+9*yn*r))/m(a),A(M(a)/xn)]},Sn.invert=en(p),_n.invert=function(e,t){var n,a=t,r=25;do{var i=a*a,c=i*i;a-=n=(a*(1.007226+i*(.015085+c*(.028874*i-.044475-.005916*c)))-t)/(1.007226+i*(.045255+c*(.259866*i-.311325-.005916*11*c)))}while(b(n)>f&&--r>0);return[e/(.8707+(i=a*a)*(i*(i*i*i*(.003971-.001529*i)-.013791)-.131979)),a]},An.invert=en(A),Cn.invert=en((function(e){return 2*p(e)})),In.invert=function(e,t){return[-t,2*p(y(e))-d]};const jn={geoAzimuthalEqualArea:nn,geoAzimuthalEquidistant:rn,geoGnomonic:En,geoOrthographic:kn,geoStereographic:Pn,geoEqualEarth:Mn,geoAlbers:Zt,geoAlbersUsa:Jt,geoConicConformal:ln,geoConicEqualArea:Xt,geoConicEquidistant:pn,geoEquirectangular:hn,geoMercator:cn,geoTransverseMercator:$n,geoNaturalEarth1:Nn};Object.keys(jn).forEach((e=>{jn[`${e.charAt(3).toLowerCase()}${e.slice(4)}`]=jn[e]}));class zn extends t.Scale{constructor(e){super(e),this.outlineBounds=null,this.oldChartBounds=null,this.geoPath=zt()}init(e){e.position="chartArea",super.init(e),"function"==typeof e.projection?this.projection=e.projection:this.projection=(jn[e.projection]||jn.albersUsa)(),this.geoPath.projection(this.projection),this.outlineBounds=null,this.oldChartBounds=null}computeBounds(e){const t=zt(this.projection.fitWidth(1e3,e)).bounds(e),n=Math.ceil(t[1][1]-t[0][1]),a=Math.ceil(t[1][0]-t[0][0]),r=this.projection.translate();this.outlineBounds={width:a,height:n,aspectRatio:a/n,refScale:this.projection.scale(),refX:r[0],refY:r[1]}}updateBounds(){const e=this.chart.chartArea,t=this.outlineBounds;if(!t)return!1;const n=this.options.padding,a="number"==typeof n?n:n.top,r="number"==typeof n?n:n.left,i="number"==typeof n?n:n.bottom,f="number"==typeof n?n:n.right,c=e.right-e.left-r-f,o=e.bottom-e.top-a-i,d=this.oldChartBounds;this.oldChartBounds={chartWidth:c,chartHeight:o};const s=Math.min(c/t.width,o/t.height),l=t.width*s,u=t.height*s,h=.5*(c-l)+e.left+r,b=.5*(o-u)+e.top+a,p=this.options;return this.projection.scale(t.refScale*s*p.projectionScale).translate([s*t.refX+h+p.projectionOffset[0],s*t.refY+b+p.projectionOffset[1]]),!d||d.chartWidth!==this.oldChartBounds.chartWidth||d.chartHeight!==this.oldChartBounds.chartHeight}}function On(e){for(var t=e.length/6|0,n=new Array(t),a=0;a<t;)n[a]="#"+e.slice(6*a,6*++a);return n}function Dn(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Rn(e,t){var n=Object.create(e.prototype);for(var a in t)n[a]=t[a];return n}function Gn(){}zn.id="projection",zn.defaults={projection:"albersUsa",projectionScale:1,projectionOffset:[0,0],padding:0},zn.descriptors={_scriptable:e=>"projection"!==e,_indexable:e=>"projectionOffset"!==e};var Bn=.7,qn=1/Bn,Ln="\\s*([+-]?\\d+)\\s*",Tn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Fn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",Wn=/^#([0-9a-f]{3,8})$/,Vn=new RegExp(`^rgb\\(${Ln},${Ln},${Ln}\\)$`),Hn=new RegExp(`^rgb\\(${Fn},${Fn},${Fn}\\)$`),Yn=new RegExp(`^rgba\\(${Ln},${Ln},${Ln},${Tn}\\)$`),Kn=new RegExp(`^rgba\\(${Fn},${Fn},${Fn},${Tn}\\)$`),Un=new RegExp(`^hsl\\(${Tn},${Fn},${Fn}\\)$`),Xn=new RegExp(`^hsla\\(${Tn},${Fn},${Fn},${Tn}\\)$`),Zn={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};function Jn(){return this.rgb().formatHex()}function Qn(){return this.rgb().formatRgb()}function ea(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=Wn.exec(e))?(n=t[1].length,t=parseInt(t[1],16),6===n?ta(t):3===n?new ia(t>>8&15|t>>4&240,t>>4&15|240&t,(15&t)<<4|15&t,1):8===n?na(t>>24&255,t>>16&255,t>>8&255,(255&t)/255):4===n?na(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|240&t,((15&t)<<4|15&t)/255):null):(t=Vn.exec(e))?new ia(t[1],t[2],t[3],1):(t=Hn.exec(e))?new ia(255*t[1]/100,255*t[2]/100,255*t[3]/100,1):(t=Yn.exec(e))?na(t[1],t[2],t[3],t[4]):(t=Kn.exec(e))?na(255*t[1]/100,255*t[2]/100,255*t[3]/100,t[4]):(t=Un.exec(e))?la(t[1],t[2]/100,t[3]/100,1):(t=Xn.exec(e))?la(t[1],t[2]/100,t[3]/100,t[4]):Zn.hasOwnProperty(e)?ta(Zn[e]):"transparent"===e?new ia(NaN,NaN,NaN,0):null}function ta(e){return new ia(e>>16&255,e>>8&255,255&e,1)}function na(e,t,n,a){return a<=0&&(e=t=n=NaN),new ia(e,t,n,a)}function aa(e){return e instanceof Gn||(e=ea(e)),e?new ia((e=e.rgb()).r,e.g,e.b,e.opacity):new ia}function ra(e,t,n,a){return 1===arguments.length?aa(e):new ia(e,t,n,null==a?1:a)}function ia(e,t,n,a){this.r=+e,this.g=+t,this.b=+n,this.opacity=+a}function fa(){return`#${sa(this.r)}${sa(this.g)}${sa(this.b)}`}function ca(){const e=oa(this.opacity);return`${1===e?"rgb(":"rgba("}${da(this.r)}, ${da(this.g)}, ${da(this.b)}${1===e?")":`, ${e})`}`}function oa(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function da(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function sa(e){return((e=da(e))<16?"0":"")+e.toString(16)}function la(e,t,n,a){return a<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new ha(e,t,n,a)}function ua(e){if(e instanceof ha)return new ha(e.h,e.s,e.l,e.opacity);if(e instanceof Gn||(e=ea(e)),!e)return new ha;if(e instanceof ha)return e;var t=(e=e.rgb()).r/255,n=e.g/255,a=e.b/255,r=Math.min(t,n,a),i=Math.max(t,n,a),f=NaN,c=i-r,o=(i+r)/2;return c?(f=t===i?(n-a)/c+6*(n<a):n===i?(a-t)/c+2:(t-n)/c+4,c/=o<.5?i+r:2-i-r,f*=60):c=o>0&&o<1?0:f,new ha(f,c,o,e.opacity)}function ha(e,t,n,a){this.h=+e,this.s=+t,this.l=+n,this.opacity=+a}function ba(e){return(e=(e||0)%360)<0?e+360:e}function pa(e){return Math.max(0,Math.min(1,e||0))}function ga(e,t,n){return 255*(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)}Dn(Gn,ea,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Jn,formatHex:Jn,formatHex8:function(){return this.rgb().formatHex8()},formatHsl:function(){return ua(this).formatHsl()},formatRgb:Qn,toString:Qn}),Dn(ia,ra,Rn(Gn,{brighter(e){return e=null==e?qn:Math.pow(qn,e),new ia(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=null==e?Bn:Math.pow(Bn,e),new ia(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ia(da(this.r),da(this.g),da(this.b),oa(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:fa,formatHex:fa,formatHex8:function(){return`#${sa(this.r)}${sa(this.g)}${sa(this.b)}${sa(255*(isNaN(this.opacity)?1:this.opacity))}`},formatRgb:ca,toString:ca})),Dn(ha,(function(e,t,n,a){return 1===arguments.length?ua(e):new ha(e,t,n,null==a?1:a)}),Rn(Gn,{brighter(e){return e=null==e?qn:Math.pow(qn,e),new ha(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?Bn:Math.pow(Bn,e),new ha(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+360*(this.h<0),t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,a=n+(n<.5?n:1-n)*t,r=2*n-a;return new ia(ga(e>=240?e-240:e+120,r,a),ga(e,r,a),ga(e<120?e+240:e-120,r,a),this.opacity)},clamp(){return new ha(ba(this.h),pa(this.s),pa(this.l),oa(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=oa(this.opacity);return`${1===e?"hsl(":"hsla("}${ba(this.h)}, ${100*pa(this.s)}%, ${100*pa(this.l)}%${1===e?")":`, ${e})`}`}}));const ma=Math.PI/180,va=180/Math.PI;var ya=-.14861,xa=1.78277,wa=-.29227,Ma=-.90649,Sa=1.97294,Ea=Sa*Ma,_a=Sa*xa,Na=xa*wa-Ma*ya;function Aa(e,t,n,a){return 1===arguments.length?function(e){if(e instanceof ka)return new ka(e.h,e.s,e.l,e.opacity);e instanceof ia||(e=aa(e));var t=e.r/255,n=e.g/255,a=e.b/255,r=(Na*a+Ea*t-_a*n)/(Na+Ea-_a),i=a-r,f=(Sa*(n-r)-wa*i)/Ma,c=Math.sqrt(f*f+i*i)/(Sa*r*(1-r)),o=c?Math.atan2(f,i)*va-120:NaN;return new ka(o<0?o+360:o,c,r,e.opacity)}(e):new ka(e,t,n,null==a?1:a)}function ka(e,t,n,a){this.h=+e,this.s=+t,this.l=+n,this.opacity=+a}Dn(ka,Aa,Rn(Gn,{brighter(e){return e=null==e?qn:Math.pow(qn,e),new ka(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=null==e?Bn:Math.pow(Bn,e),new ka(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*ma,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),a=Math.cos(e),r=Math.sin(e);return new ia(255*(t+n*(ya*a+xa*r)),255*(t+n*(wa*a+Ma*r)),255*(t+n*(Sa*a)),this.opacity)}}));var Ca=e=>()=>e;function Pa(e,t){return function(n){return e+n*t}}function Ia(e){return 1==(e=+e)?$a:function(t,n){return n-t?function(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(a){return Math.pow(e+a*t,n)}}(t,n,e):Ca(isNaN(t)?n:t)}}function $a(e,t){var n=t-e;return n?Pa(e,n):Ca(isNaN(e)?t:e)}!function e(t){var n=Ia(t);function a(e,t){var a=n((e=ra(e)).r,(t=ra(t)).r),r=n(e.g,t.g),i=n(e.b,t.b),f=$a(e.opacity,t.opacity);return function(t){return e.r=a(t),e.g=r(t),e.b=i(t),e.opacity=f(t),e+""}}return a.gamma=e,a}(1);var ja,za=(ja=function(e){var t=e.length-1;return function(n){var a=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),r=e[a],i=e[a+1],f=a>0?e[a-1]:2*r-i,c=a<t-1?e[a+2]:2*i-r;return function(e,t,n,a,r){var i=e*e,f=i*e;return((1-3*e+3*i-f)*t+(4-6*i+3*f)*n+(1+3*e+3*i-3*f)*a+f*r)/6}((n-a/t)*t,f,r,i,c)}},function(e){var t,n,a=e.length,r=new Array(a),i=new Array(a),f=new Array(a);for(t=0;t<a;++t)n=ra(e[t]),r[t]=n.r||0,i[t]=n.g||0,f[t]=n.b||0;return r=ja(r),i=ja(i),f=ja(f),n.opacity=1,function(e){return n.r=r(e),n.g=i(e),n.b=f(e),n+""}});function Oa(e){return function t(n){function a(t,a){var r=e((t=Aa(t)).h,(a=Aa(a)).h),i=$a(t.s,a.s),f=$a(t.l,a.l),c=$a(t.opacity,a.opacity);return function(e){return t.h=r(e),t.s=i(e),t.l=f(Math.pow(e,n)),t.opacity=c(e),t+""}}return n=+n,a.gamma=t,a}(1)}Oa((function(e,t){var n=t-e;return n?Pa(e,n>180||n<-180?n-360*Math.round(n/360):n):Ca(isNaN(e)?t:e)}));var Da=Oa($a),Ra=e=>za(e[e.length-1]),Ga=Ra(new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(On)),Ba=Ra(new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(On)),qa=Ra(new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(On)),La=Ra(new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(On)),Ta=Ra(new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(On)),Fa=Ra(new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(On)),Wa=Ra(new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(On)),Va=Ra(new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(On)),Ha=Ra(new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(On)),Ya=Ra(new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(On)),Ka=Ra(new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(On)),Ua=Ra(new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(On)),Xa=Ra(new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(On)),Za=Ra(new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(On)),Ja=Ra(new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(On)),Qa=Ra(new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(On)),er=Ra(new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(On)),tr=Ra(new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(On)),nr=Ra(new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(On)),ar=Ra(new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(On)),rr=Ra(new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(On)),ir=Ra(new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(On)),fr=Ra(new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(On)),cr=Ra(new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f