@liggi/figkit 0.1.0 → 0.2.0
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.
- package/GUIDE.md +34 -4
- package/README.md +2 -2
- package/bin/fig.mjs +3 -3
- package/dist/viz.iife.js +10 -10
- package/examples/charts/entities.json +17 -0
- package/examples/consolidate.html +10 -6
- package/package.json +1 -1
- package/runtime/fig.css +7 -1
- package/runtime/fig.js +164 -33
- package/viz/draw.js +88 -0
- package/viz/spec.js +48 -3
package/dist/viz.iife.js
CHANGED
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
var figkitViz=(()=>{var Ba=Object.defineProperty;var Ey=Object.getOwnPropertyDescriptor;var Ny=Object.getOwnPropertyNames;var Ry=Object.prototype.hasOwnProperty;var Ly=(t,n)=>{for(var e in n)Ba(t,e,{get:n[e],enumerable:!0})},Py=(t,n,e,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Ny(n))!Ry.call(t,i)&&i!==e&&Ba(t,i,{get:()=>n[i],enumerable:!(r=Ey(n,i))||r.enumerable});return t};var Dy=t=>Py(Ba({},"__esModule",{value:!0}),t);var a7={};Ly(a7,{drawBars:()=>my,drawChange:()=>yy,drawDumbbell:()=>vy,drawSeries:()=>xy,drawSpec:()=>o7,drawSplit:()=>gy});function At(t,n){return t==null||n==null?NaN:t<n?-1:t>n?1:t>=n?0:NaN}function Xe(t,n){return t==null||n==null?NaN:n<t?-1:n>t?1:n>=t?0:NaN}function Ve(t){let n,e,r;t.length!==2?(n=At,e=(u,c)=>At(t(u),c),r=(u,c)=>t(u)-c):(n=t===At||t===Xe?t:Iy,e=t,r=t);function i(u,c,f=0,s=u.length){if(f<s){if(n(c,c)!==0)return s;do{let d=f+s>>>1;e(u[d],c)<0?f=d+1:s=d}while(f<s)}return f}function o(u,c,f=0,s=u.length){if(f<s){if(n(c,c)!==0)return s;do{let d=f+s>>>1;e(u[d],c)<=0?f=d+1:s=d}while(f<s)}return f}function a(u,c,f=0,s=u.length){let d=i(u,c,f,s-1);return d>f&&r(u[d-1],c)>-r(u[d],c)?d-1:d}return{left:i,center:a,right:o}}function Iy(){return 0}function Pl(t){return t===null?NaN:+t}function*Oy(t,n){if(n===void 0)for(let e of t)e!=null&&(e=+e)>=e&&(yield e);else{let e=-1;for(let r of t)(r=n(r,++e,t))!=null&&(r=+r)>=r&&(yield r)}}var Dl=Ve(At),je=Dl.right,c7=Dl.left,f7=Ve(Pl).center;var Fy=Il(Ol),zy=Il(By);function Il(t){return function(n,e,r=e){if(!((e=+e)>=0))throw new RangeError("invalid rx");if(!((r=+r)>=0))throw new RangeError("invalid ry");let{data:i,width:o,height:a}=n;if(!((o=Math.floor(o))>=0))throw new RangeError("invalid width");if(!((a=Math.floor(a!==void 0?a:i.length/o))>=0))throw new RangeError("invalid height");if(!o||!a||!e&&!r)return n;let u=e&&t(e),c=r&&t(r),f=i.slice();return u&&c?(We(u,f,i,o,a),We(u,i,f,o,a),We(u,f,i,o,a),Ge(c,i,f,o,a),Ge(c,f,i,o,a),Ge(c,i,f,o,a)):u?(We(u,i,f,o,a),We(u,f,i,o,a),We(u,i,f,o,a)):c&&(Ge(c,i,f,o,a),Ge(c,f,i,o,a),Ge(c,i,f,o,a)),n}}function We(t,n,e,r,i){for(let o=0,a=r*i;o<a;)t(n,e,o,o+=r,1)}function Ge(t,n,e,r,i){for(let o=0,a=r*i;o<r;++o)t(n,e,o,o+a,r)}function By(t){let n=Ol(t);return(e,r,i,o,a)=>{i<<=2,o<<=2,a<<=2,n(e,r,i+0,o+0,a),n(e,r,i+1,o+1,a),n(e,r,i+2,o+2,a),n(e,r,i+3,o+3,a)}}function Ol(t){let n=Math.floor(t);if(n===t)return qy(t);let e=t-n,r=2*t+1;return(i,o,a,u,c)=>{if(!((u-=c)>=a))return;let f=n*o[a],s=c*n,d=s+c;for(let l=a,h=a+s;l<h;l+=c)f+=o[Math.min(u,l)];for(let l=a,h=u;l<=h;l+=c)f+=o[Math.min(u,l+s)],i[l]=(f+e*(o[Math.max(a,l-d)]+o[Math.min(u,l+d)]))/r,f-=o[Math.max(a,l-s)]}}function qy(t){let n=2*t+1;return(e,r,i,o,a)=>{if(!((o-=a)>=i))return;let u=t*r[i],c=a*t;for(let f=i,s=i+c;f<s;f+=a)u+=r[Math.min(o,f)];for(let f=i,s=o;f<=s;f+=a)u+=r[Math.min(o,f+c)],e[f]=u/n,u-=r[Math.max(i,f-c)]}}function Vi(t,n){let e=0;if(n===void 0)for(let r of t)r!=null&&(r=+r)>=r&&++e;else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(i=+i)>=i&&++e}return e}function Yy(t){return t.length|0}function Uy(t){return!(t>0)}function Wy(t){return typeof t!="object"||"length"in t?t:Array.from(t)}function Gy(t){return n=>t(...n)}function Fl(...t){let n=typeof t[t.length-1]=="function"&&Gy(t.pop());t=t.map(Wy);let e=t.map(Yy),r=t.length-1,i=new Array(r+1).fill(0),o=[];if(r<0||e.some(Uy))return o;for(;;){o.push(i.map((u,c)=>t[c][u]));let a=r;for(;++i[a]===e[a];){if(a===0)return n?o.map(n):o;i[a--]=0}}}function zl(t,n){var e=0,r=0;return Float64Array.from(t,n===void 0?i=>e+=+i||0:i=>e+=+n(i,r++,t)||0)}function Ua(t,n){let e=0,r,i=0,o=0;if(n===void 0)for(let a of t)a!=null&&(a=+a)>=a&&(r=a-i,i+=r/++e,o+=r*(a-i));else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(u=+u)>=u&&(r=u-i,i+=r/++e,o+=r*(u-i))}if(e>1)return o/(e-1)}function Wa(t,n){let e=Ua(t,n);return e&&Math.sqrt(e)}function Yt(t,n){let e,r;if(n===void 0)for(let i of t)i!=null&&(e===void 0?i>=i&&(e=r=i):(e>i&&(e=i),r<i&&(r=i)));else{let i=-1;for(let o of t)(o=n(o,++i,t))!=null&&(e===void 0?o>=o&&(e=r=o):(e>o&&(e=o),r<o&&(r=o)))}return[e,r]}var Xt=class{constructor(){this._partials=new Float64Array(32),this._n=0}add(n){let e=this._partials,r=0;for(let i=0;i<this._n&&i<32;i++){let o=e[i],a=n+o,u=Math.abs(n)<Math.abs(o)?n-(a-o):o-(a-n);u&&(e[r++]=u),n=a}return e[r]=n,this._n=r+1,this}valueOf(){let n=this._partials,e=this._n,r,i,o,a=0;if(e>0){for(a=n[--e];e>0&&(r=a,i=n[--e],a=r+i,o=i-(a-r),!o););e>0&&(o<0&&n[e-1]<0||o>0&&n[e-1]>0)&&(i=o*2,r=a+i,i==r-a&&(a=r))}return a}};var on=class extends Map{constructor(n,e=Yl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(let[r,i]of n)this.set(r,i)}get(n){return super.get(qa(this,n))}has(n){return super.has(qa(this,n))}set(n,e){return super.set(Bl(this,n),e)}delete(n){return super.delete(ql(this,n))}},de=class extends Set{constructor(n,e=Yl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(let r of n)this.add(r)}has(n){return super.has(qa(this,n))}add(n){return super.add(Bl(this,n))}delete(n){return super.delete(ql(this,n))}};function qa({_intern:t,_key:n},e){let r=n(e);return t.has(r)?t.get(r):e}function Bl({_intern:t,_key:n},e){let r=n(e);return t.has(r)?t.get(r):(t.set(r,e),e)}function ql({_intern:t,_key:n},e){let r=n(e);return t.has(r)&&(e=t.get(r),t.delete(r)),e}function Yl(t){return t!==null&&typeof t=="object"?t.valueOf():t}function Ya(t){return t}function Or(t,...n){return Ga(t,Ya,Ya,n)}function he(t,n,...e){return Ga(t,Ya,n,e)}function Ul(t,n,...e){return Ga(t,Array.from,n,e)}function Ga(t,n,e,r){return(function i(o,a){if(a>=r.length)return e(o);let u=new on,c=r[a++],f=-1;for(let s of o){let d=c(s,++f,o),l=u.get(d);l?l.push(s):u.set(d,[s])}for(let[s,d]of u)u.set(s,i(d,a));return n(u)})(t,0)}function Hy(t,n){return Array.from(n,e=>t[e])}function Ir(t,...n){if(typeof t[Symbol.iterator]!="function")throw new TypeError("values is not iterable");t=Array.from(t);let[e]=n;if(e&&e.length!==2||n.length>1){let r=Uint32Array.from(t,(i,o)=>o);return n.length>1?(n=n.map(i=>t.map(i)),r.sort((i,o)=>{for(let a of n){let u=Hi(a[i],a[o]);if(u)return u}})):(e=t.map(e),r.sort((i,o)=>Hi(e[i],e[o]))),Hy(t,r)}return t.sort(Wl(e))}function Wl(t=At){if(t===At)return Hi;if(typeof t!="function")throw new TypeError("compare is not a function");return(n,e)=>{let r=t(n,e);return r||r===0?r:(t(e,e)===0)-(t(n,n)===0)}}function Hi(t,n){return(t==null||!(t>=t))-(n==null||!(n>=n))||(t<n?-1:t>n?1:0)}function ji(t,n,e){return(n.length!==2?Ir(he(t,n,e),(([r,i],[o,a])=>At(i,a)||At(r,o))):Ir(Or(t,e),(([r,i],[o,a])=>n(i,a)||At(r,o)))).map(([r])=>r)}var Xy=Array.prototype,s7=Xy.slice;var Vy=Math.sqrt(50),jy=Math.sqrt(10),Zy=Math.sqrt(2);function Xi(t,n,e){let r=(n-t)/Math.max(0,e),i=Math.floor(Math.log10(r)),o=r/Math.pow(10,i),a=o>=Vy?10:o>=jy?5:o>=Zy?2:1,u,c,f;return i<0?(f=Math.pow(10,-i)/a,u=Math.round(t*f),c=Math.round(n*f),u/f<t&&++u,c/f>n&&--c,f=-f):(f=Math.pow(10,i)*a,u=Math.round(t/f),c=Math.round(n/f),u*f<t&&++u,c*f>n&&--c),c<u&&.5<=e&&e<2?Xi(t,n,e*2):[u,c,f]}function pe(t,n,e){if(n=+n,t=+t,e=+e,!(e>0))return[];if(t===n)return[t];let r=n<t,[i,o,a]=r?Xi(n,t,e):Xi(t,n,e);if(!(o>=i))return[];let u=o-i+1,c=new Array(u);if(r)if(a<0)for(let f=0;f<u;++f)c[f]=(o-f)/-a;else for(let f=0;f<u;++f)c[f]=(o-f)*a;else if(a<0)for(let f=0;f<u;++f)c[f]=(i+f)/-a;else for(let f=0;f<u;++f)c[f]=(i+f)*a;return c}function He(t,n,e){return n=+n,t=+t,e=+e,Xi(t,n,e)[2]}function Fr(t,n,e){n=+n,t=+t,e=+e;let r=n<t,i=r?He(n,t,e):He(t,n,e);return(r?-1:1)*(i<0?1/-i:i)}function Gl(t){return Math.max(1,Math.ceil(Math.log(Vi(t))/Math.LN2)+1)}function qt(t,n){let e;if(n===void 0)for(let r of t)r!=null&&(e<r||e===void 0&&r>=r)&&(e=r);else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(e<i||e===void 0&&i>=i)&&(e=i)}return e}function Hl(t,n){let e,r=-1,i=-1;if(n===void 0)for(let o of t)++i,o!=null&&(e<o||e===void 0&&o>=o)&&(e=o,r=i);else for(let o of t)(o=n(o,++i,t))!=null&&(e<o||e===void 0&&o>=o)&&(e=o,r=i);return r}function an(t,n){let e;if(n===void 0)for(let r of t)r!=null&&(e>r||e===void 0&&r>=r)&&(e=r);else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(e>i||e===void 0&&i>=i)&&(e=i)}return e}function Xl(t,n){let e,r=-1,i=-1;if(n===void 0)for(let o of t)++i,o!=null&&(e>o||e===void 0&&o>=o)&&(e=o,r=i);else for(let o of t)(o=n(o,++i,t))!=null&&(e>o||e===void 0&&o>=o)&&(e=o,r=i);return r}function Vl(t,n,e=0,r=1/0,i){if(n=Math.floor(n),e=Math.floor(Math.max(0,e)),r=Math.floor(Math.min(t.length-1,r)),!(e<=n&&n<=r))return t;for(i=i===void 0?Hi:Wl(i);r>e;){if(r-e>600){let c=r-e+1,f=n-e+1,s=Math.log(c),d=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*d*(c-d)/c)*(f-c/2<0?-1:1),h=Math.max(e,Math.floor(n-f*d/c+l)),p=Math.min(r,Math.floor(n+(c-f)*d/c+l));Vl(t,n,h,p,i)}let o=t[n],a=e,u=r;for(Dr(t,e,n),i(t[r],o)>0&&Dr(t,e,r);a<u;){for(Dr(t,a,u),++a,--u;i(t[a],o)<0;)++a;for(;i(t[u],o)>0;)--u}i(t[e],o)===0?Dr(t,e,u):(++u,Dr(t,u,r)),u<=n&&(e=u+1),n<=u&&(r=u-1)}return t}function Dr(t,n,e){let r=t[n];t[n]=t[e],t[e]=r}function Ha(t,n=At){let e,r=!1;if(n.length===1){let i;for(let o of t){let a=n(o);(r?At(a,i)>0:At(a,a)===0)&&(e=o,i=a,r=!0)}}else for(let i of t)(r?n(i,e)>0:n(i,i)===0)&&(e=i,r=!0);return e}function Zn(t,n,e){if(t=Float64Array.from(Oy(t,e)),!(!(r=t.length)||isNaN(n=+n))){if(n<=0||r<2)return an(t);if(n>=1)return qt(t);var r,i=(r-1)*n,o=Math.floor(i),a=qt(Vl(t,o).subarray(0,o+1)),u=an(t.subarray(o+1));return a+(u-a)*(i-o)}}function jl(t,n,e=Pl){if(!(!(r=t.length)||isNaN(n=+n))){if(n<=0||r<2)return+e(t[0],0,t);if(n>=1)return+e(t[r-1],r-1,t);var r,i=(r-1)*n,o=Math.floor(i),a=+e(t[o],o,t),u=+e(t[o+1],o+1,t);return a+(u-a)*(i-o)}}function Zl(t,n,e){let r=Vi(t),i=Zn(t,.75)-Zn(t,.25);return r&&i?Math.ceil((e-n)/(2*i*Math.pow(r,-1/3))):1}function Xa(t,n,e){let r=Vi(t),i=Wa(t);return r&&i?Math.ceil((e-n)*Math.cbrt(r)/(3.49*i)):1}function Va(t,n){let e=0,r=0;if(n===void 0)for(let i of t)i!=null&&(i=+i)>=i&&(++e,r+=i);else{let i=-1;for(let o of t)(o=n(o,++i,t))!=null&&(o=+o)>=o&&(++e,r+=o)}if(e)return r/e}function zr(t,n){return Zn(t,.5,n)}function*Ky(t){for(let n of t)yield*n}function ja(t){return Array.from(Ky(t))}function Kl(t,n){let e=new on;if(n===void 0)for(let o of t)o!=null&&o>=o&&e.set(o,(e.get(o)||0)+1);else{let o=-1;for(let a of t)(a=n(a,++o,t))!=null&&a>=a&&e.set(a,(e.get(a)||0)+1)}let r,i=0;for(let[o,a]of e)a>i&&(i=a,r=o);return r}function Ql(t,n=Qy){let e=[],r,i=!1;for(let o of t)i&&e.push(n(r,o)),r=o,i=!0;return e}function Qy(t,n){return[t,n]}function Ze(t,n,e){t=+t,n=+n,e=(i=arguments.length)<2?(n=t,t=0,1):i<3?1:+e;for(var r=-1,i=Math.max(0,Math.ceil((n-t)/e))|0,o=new Array(i);++r<i;)o[r]=t+r*e;return o}var l7=Jy(Math.random);function Jy(t){return function(e,r=0,i=e.length){let o=i-(r=+r);for(;o;){let a=t()*o--|0,u=e[o+r];e[o+r]=e[a+r],e[a+r]=u}return e}}function pn(t,n){let e=0;if(n===void 0)for(let r of t)(r=+r)&&(e+=r);else{let r=-1;for(let i of t)(i=+n(i,++r,t))&&(e+=i)}return e}function Br(t){if(typeof t[Symbol.iterator]!="function")throw new TypeError("values is not iterable");return Array.from(t).reverse()}function tb(t){return t}var Za=1,Ka=2,Qa=3,Zi=4,Jl=1e-6;function nb(t){return"translate("+t+",0)"}function eb(t){return"translate(0,"+t+")"}function rb(t){return n=>+t(n)}function ib(t,n){return n=Math.max(0,t.bandwidth()-n*2)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function ob(){return!this.__axis}function ab(t,n){var e=[],r=null,i=null,o=6,a=6,u=3,c=typeof window<"u"&&window.devicePixelRatio>1?0:.5,f=t===Za||t===Zi?-1:1,s=t===Zi||t===Ka?"x":"y",d=t===Za||t===Qa?nb:eb;function l(h){var p=r??(n.ticks?n.ticks.apply(n,e):n.domain()),m=i??(n.tickFormat?n.tickFormat.apply(n,e):tb),w=Math.max(o,0)+u,x=n.range(),v=+x[0]+c,M=+x[x.length-1]+c,g=(n.bandwidth?ib:rb)(n.copy(),c),b=h.selection?h.selection():h,y=b.selectAll(".domain").data([null]),_=b.selectAll(".tick").data(p,n).order(),$=_.exit(),S=_.enter().append("g").attr("class","tick"),C=_.select("line"),A=_.select("text");y=y.merge(y.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(S),C=C.merge(S.append("line").attr("stroke","currentColor").attr(s+"2",f*o)),A=A.merge(S.append("text").attr("fill","currentColor").attr(s,f*w).attr("dy",t===Za?"0em":t===Qa?"0.71em":"0.32em")),h!==b&&(y=y.transition(h),_=_.transition(h),C=C.transition(h),A=A.transition(h),$=$.transition(h).attr("opacity",Jl).attr("transform",function(k){return isFinite(k=g(k))?d(k+c):this.getAttribute("transform")}),S.attr("opacity",Jl).attr("transform",function(k){var D=this.parentNode.__axis;return d((D&&isFinite(D=D(k))?D:g(k))+c)})),$.remove(),y.attr("d",t===Zi||t===Ka?a?"M"+f*a+","+v+"H"+c+"V"+M+"H"+f*a:"M"+c+","+v+"V"+M:a?"M"+v+","+f*a+"V"+c+"H"+M+"V"+f*a:"M"+v+","+c+"H"+M),_.attr("opacity",1).attr("transform",function(k){return d(g(k)+c)}),C.attr(s+"2",f*o),A.attr(s,f*w).text(m),b.filter(ob).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===Ka?"start":t===Zi?"end":"middle"),b.each(function(){this.__axis=g})}return l.scale=function(h){return arguments.length?(n=h,l):n},l.ticks=function(){return e=Array.from(arguments),l},l.tickArguments=function(h){return arguments.length?(e=h==null?[]:Array.from(h),l):e.slice()},l.tickValues=function(h){return arguments.length?(r=h==null?null:Array.from(h),l):r&&r.slice()},l.tickFormat=function(h){return arguments.length?(i=h,l):i},l.tickSize=function(h){return arguments.length?(o=a=+h,l):o},l.tickSizeInner=function(h){return arguments.length?(o=+h,l):o},l.tickSizeOuter=function(h){return arguments.length?(a=+h,l):a},l.tickPadding=function(h){return arguments.length?(u=+h,l):u},l.offset=function(h){return arguments.length?(c=+h,l):c},l}function td(t){return ab(Qa,t)}var Ja="http://www.w3.org/1999/xhtml",ge={svg:"http://www.w3.org/2000/svg",xhtml:Ja,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function nd(t){var n=t+="",e=n.indexOf(":");return e>=0&&(n=t.slice(0,e))!=="xmlns"&&(t=t.slice(e+1)),ge.hasOwnProperty(n)?{space:ge[n],local:t}:t}function ub(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===Ja&&n.documentElement.namespaceURI===Ja?n.createElement(t):n.createElementNS(e,t)}}function cb(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function qr(t){var n=nd(t);return(n.local?cb:ub)(n)}function fb(){}function ed(t){return t==null?fb:function(){return this.querySelector(t)}}function sb(t){typeof t!="function"&&(t=ed(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o=n[i],a=o.length,u=r[i]=new Array(a),c,f,s=0;s<a;++s)(c=o[s])&&(f=t.call(c,c.__data__,s,o))&&("__data__"in c&&(f.__data__=c.__data__),u[s]=f);return new Ut(r,this._parents)}function lb(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function db(){return[]}function hb(t){return t==null?db:function(){return this.querySelectorAll(t)}}function pb(t){return function(){return lb(t.apply(this,arguments))}}function gb(t){typeof t=="function"?t=pb(t):t=hb(t);for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a=n[o],u=a.length,c,f=0;f<u;++f)(c=a[f])&&(r.push(t.call(c,c.__data__,f,a)),i.push(c));return new Ut(r,i)}function mb(t){return function(){return this.matches(t)}}function rd(t){return function(n){return n.matches(t)}}var yb=Array.prototype.find;function bb(t){return function(){return yb.call(this.children,t)}}function wb(){return this.firstElementChild}function vb(t){return this.select(t==null?wb:bb(typeof t=="function"?t:rd(t)))}var xb=Array.prototype.filter;function _b(){return Array.from(this.children)}function Mb(t){return function(){return xb.call(this.children,t)}}function $b(t){return this.selectAll(t==null?_b:Mb(typeof t=="function"?t:rd(t)))}function Sb(t){typeof t!="function"&&(t=mb(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o=n[i],a=o.length,u=r[i]=[],c,f=0;f<a;++f)(c=o[f])&&t.call(c,c.__data__,f,o)&&u.push(c);return new Ut(r,this._parents)}function id(t){return new Array(t.length)}function Ab(){return new Ut(this._enter||this._groups.map(id),this._parents)}function Ki(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}Ki.prototype={constructor:Ki,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function Tb(t){return function(){return t}}function kb(t,n,e,r,i,o){for(var a=0,u,c=n.length,f=o.length;a<f;++a)(u=n[a])?(u.__data__=o[a],r[a]=u):e[a]=new Ki(t,o[a]);for(;a<c;++a)(u=n[a])&&(i[a]=u)}function Cb(t,n,e,r,i,o,a){var u,c,f=new Map,s=n.length,d=o.length,l=new Array(s),h;for(u=0;u<s;++u)(c=n[u])&&(l[u]=h=a.call(c,c.__data__,u,n)+"",f.has(h)?i[u]=c:f.set(h,c));for(u=0;u<d;++u)h=a.call(t,o[u],u,o)+"",(c=f.get(h))?(r[u]=c,c.__data__=o[u],f.delete(h)):e[u]=new Ki(t,o[u]);for(u=0;u<s;++u)(c=n[u])&&f.get(l[u])===c&&(i[u]=c)}function Eb(t){return t.__data__}function Nb(t,n){if(!arguments.length)return Array.from(this,Eb);var e=n?Cb:kb,r=this._parents,i=this._groups;typeof t!="function"&&(t=Tb(t));for(var o=i.length,a=new Array(o),u=new Array(o),c=new Array(o),f=0;f<o;++f){var s=r[f],d=i[f],l=d.length,h=Rb(t.call(s,s&&s.__data__,f,r)),p=h.length,m=u[f]=new Array(p),w=a[f]=new Array(p),x=c[f]=new Array(l);e(s,d,m,w,x,h,n);for(var v=0,M=0,g,b;v<p;++v)if(g=m[v]){for(v>=M&&(M=v+1);!(b=w[M])&&++M<p;);g._next=b||null}}return a=new Ut(a,r),a._enter=u,a._exit=c,a}function Rb(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Lb(){return new Ut(this._exit||this._groups.map(id),this._parents)}function Pb(t,n,e){var r=this.enter(),i=this,o=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),n!=null&&(i=n(i),i&&(i=i.selection())),e==null?o.remove():e(o),r&&i?r.merge(i).order():i}function Db(t){for(var n=t.selection?t.selection():t,e=this._groups,r=n._groups,i=e.length,o=r.length,a=Math.min(i,o),u=new Array(i),c=0;c<a;++c)for(var f=e[c],s=r[c],d=f.length,l=u[c]=new Array(d),h,p=0;p<d;++p)(h=f[p]||s[p])&&(l[p]=h);for(;c<i;++c)u[c]=e[c];return new Ut(u,this._parents)}function Ib(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r=t[n],i=r.length-1,o=r[i],a;--i>=0;)(a=r[i])&&(o&&a.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(a,o),o=a);return this}function Ob(t){t||(t=Fb);function n(d,l){return d&&l?t(d.__data__,l.__data__):!d-!l}for(var e=this._groups,r=e.length,i=new Array(r),o=0;o<r;++o){for(var a=e[o],u=a.length,c=i[o]=new Array(u),f,s=0;s<u;++s)(f=a[s])&&(c[s]=f);c.sort(n)}return new Ut(i,this._parents).order()}function Fb(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function zb(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function Bb(){return Array.from(this)}function qb(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,o=r.length;i<o;++i){var a=r[i];if(a)return a}return null}function Yb(){let t=0;for(let n of this)++t;return t}function Ub(){return!this.node()}function Wb(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i=n[e],o=0,a=i.length,u;o<a;++o)(u=i[o])&&t.call(u,u.__data__,o,i);return this}function Gb(t){return function(){this.removeAttribute(t)}}function Hb(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Xb(t,n){return function(){this.setAttribute(t,n)}}function Vb(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function jb(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttribute(t):this.setAttribute(t,e)}}function Zb(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function Kb(t,n){var e=nd(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((n==null?e.local?Hb:Gb:typeof n=="function"?e.local?Zb:jb:e.local?Vb:Xb)(e,n))}function od(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Qb(t){return function(){this.style.removeProperty(t)}}function Jb(t,n,e){return function(){this.style.setProperty(t,n,e)}}function t2(t,n,e){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function n2(t,n,e){return arguments.length>1?this.each((n==null?Qb:typeof n=="function"?t2:Jb)(t,n,e??"")):e2(this.node(),t)}function e2(t,n){return t.style.getPropertyValue(n)||od(t).getComputedStyle(t,null).getPropertyValue(n)}function r2(t){return function(){delete this[t]}}function i2(t,n){return function(){this[t]=n}}function o2(t,n){return function(){var e=n.apply(this,arguments);e==null?delete this[t]:this[t]=e}}function a2(t,n){return arguments.length>1?this.each((n==null?r2:typeof n=="function"?o2:i2)(t,n)):this.node()[t]}function ad(t){return t.trim().split(/^|\s+/)}function nu(t){return t.classList||new ud(t)}function ud(t){this._node=t,this._names=ad(t.getAttribute("class")||"")}ud.prototype={add:function(t){var n=this._names.indexOf(t);n<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function cd(t,n){for(var e=nu(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function fd(t,n){for(var e=nu(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function u2(t){return function(){cd(this,t)}}function c2(t){return function(){fd(this,t)}}function f2(t,n){return function(){(n.apply(this,arguments)?cd:fd)(this,t)}}function s2(t,n){var e=ad(t+"");if(arguments.length<2){for(var r=nu(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each((typeof n=="function"?f2:n?u2:c2)(e,n))}function l2(){this.textContent=""}function d2(t){return function(){this.textContent=t}}function h2(t){return function(){var n=t.apply(this,arguments);this.textContent=n??""}}function p2(t){return arguments.length?this.each(t==null?l2:(typeof t=="function"?h2:d2)(t)):this.node().textContent}function g2(){this.innerHTML=""}function m2(t){return function(){this.innerHTML=t}}function y2(t){return function(){var n=t.apply(this,arguments);this.innerHTML=n??""}}function b2(t){return arguments.length?this.each(t==null?g2:(typeof t=="function"?y2:m2)(t)):this.node().innerHTML}function w2(){this.nextSibling&&this.parentNode.appendChild(this)}function v2(){return this.each(w2)}function x2(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function _2(){return this.each(x2)}function M2(t){var n=typeof t=="function"?t:qr(t);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function $2(){return null}function S2(t,n){var e=typeof t=="function"?t:qr(t),r=n==null?$2:typeof n=="function"?n:ed(n);return this.select(function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)})}function A2(){var t=this.parentNode;t&&t.removeChild(this)}function T2(){return this.each(A2)}function k2(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function C2(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function E2(t){return this.select(t?C2:k2)}function N2(t){return arguments.length?this.property("__data__",t):this.node().__data__}function R2(t){return function(n){t.call(this,n,this.__data__)}}function L2(t){return t.trim().split(/^|\s+/).map(function(n){var e="",r=n.indexOf(".");return r>=0&&(e=n.slice(r+1),n=n.slice(0,r)),{type:n,name:e}})}function P2(t){return function(){var n=this.__on;if(n){for(var e=0,r=-1,i=n.length,o;e<i;++e)o=n[e],(!t.type||o.type===t.type)&&o.name===t.name?this.removeEventListener(o.type,o.listener,o.options):n[++r]=o;++r?n.length=r:delete this.__on}}}function D2(t,n,e){return function(){var r=this.__on,i,o=R2(n);if(r){for(var a=0,u=r.length;a<u;++a)if((i=r[a]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=o,i.options=e),i.value=n;return}}this.addEventListener(t.type,o,e),i={type:t.type,name:t.name,value:n,listener:o,options:e},r?r.push(i):this.__on=[i]}}function I2(t,n,e){var r=L2(t+""),i,o=r.length,a;if(arguments.length<2){var u=this.node().__on;if(u){for(var c=0,f=u.length,s;c<f;++c)for(i=0,s=u[c];i<o;++i)if((a=r[i]).type===s.type&&a.name===s.name)return s.value}return}for(u=n?D2:P2,i=0;i<o;++i)this.each(u(r[i],n,e));return this}function sd(t,n,e){var r=od(t),i=r.CustomEvent;typeof i=="function"?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function O2(t,n){return function(){return sd(this,t,n)}}function F2(t,n){return function(){return sd(this,t,n.apply(this,arguments))}}function z2(t,n){return this.each((typeof n=="function"?F2:O2)(t,n))}function*B2(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,o=r.length,a;i<o;++i)(a=r[i])&&(yield a)}var ld=[null];function Ut(t,n){this._groups=t,this._parents=n}function q2(){return new Ut([[document.documentElement]],ld)}function Y2(){return this}Ut.prototype=q2.prototype={constructor:Ut,select:sb,selectAll:gb,selectChild:vb,selectChildren:$b,filter:Sb,data:Nb,enter:Ab,exit:Lb,join:Pb,merge:Db,selection:Y2,order:Ib,sort:Ob,call:zb,nodes:Bb,node:qb,size:Yb,empty:Ub,each:Wb,attr:Kb,style:n2,property:a2,classed:s2,text:p2,html:b2,raise:v2,lower:_2,append:M2,insert:S2,remove:T2,clone:E2,datum:N2,on:I2,dispatch:z2,[Symbol.iterator]:B2};function Nn(t){return typeof t=="string"?new Ut([[document.querySelector(t)]],[document.documentElement]):new Ut([[t]],ld)}var U2=0;function W2(){return new tu}function tu(){this._="@"+(++U2).toString(36)}tu.prototype=W2.prototype={constructor:tu,get:function(t){for(var n=this._;!(n in t);)if(!(t=t.parentNode))return;return t[n]},set:function(t,n){return t[this._]=n},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};function G2(t){let n;for(;n=t.sourceEvent;)t=n;return t}function dd(t,n){if(t=G2(t),n===void 0&&(n=t.currentTarget),n){var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}}return[t.pageX,t.pageY]}function tr(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Wr(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function Kn(){}var we=.7,Je=1/we,Ke="\\s*([+-]?\\d+)\\s*",Yr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",H2=/^#([0-9a-f]{3,8})$/,X2=new RegExp(`^rgb\\(${Ke},${Ke},${Ke}\\)$`),V2=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),j2=new RegExp(`^rgba\\(${Ke},${Ke},${Ke},${Yr}\\)$`),Z2=new RegExp(`^rgba\\(${gn},${gn},${gn},${Yr}\\)$`),K2=new RegExp(`^hsl\\(${Yr},${gn},${gn}\\)$`),Q2=new RegExp(`^hsla\\(${Yr},${gn},${gn},${Yr}\\)$`),hd={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};tr(Kn,nr,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:pd,formatHex:pd,formatHex8:J2,formatHsl:tw,formatRgb:gd,toString:gd});function pd(){return this.rgb().formatHex()}function J2(){return this.rgb().formatHex8()}function tw(){return $d(this).formatHsl()}function gd(){return this.rgb().formatRgb()}function nr(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=H2.exec(t))?(e=n[1].length,n=parseInt(n[1],16),e===6?md(n):e===3?new bt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):e===8?Qi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):e===4?Qi(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=X2.exec(t))?new bt(n[1],n[2],n[3],1):(n=V2.exec(t))?new bt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=j2.exec(t))?Qi(n[1],n[2],n[3],n[4]):(n=Z2.exec(t))?Qi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=K2.exec(t))?wd(n[1],n[2]/100,n[3]/100,1):(n=Q2.exec(t))?wd(n[1],n[2]/100,n[3]/100,n[4]):hd.hasOwnProperty(t)?md(hd[t]):t==="transparent"?new bt(NaN,NaN,NaN,0):null}function md(t){return new bt(t>>16&255,t>>8&255,t&255,1)}function Qi(t,n,e,r){return r<=0&&(t=n=e=NaN),new bt(t,n,e,r)}function uu(t){return t instanceof Kn||(t=nr(t)),t?(t=t.rgb(),new bt(t.r,t.g,t.b,t.opacity)):new bt}function ve(t,n,e,r){return arguments.length===1?uu(t):new bt(t,n,e,r??1)}function bt(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}tr(bt,ve,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new bt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new bt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new bt(ye(this.r),ye(this.g),ye(this.b),to(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:yd,formatHex:yd,formatHex8:nw,formatRgb:bd,toString:bd}));function yd(){return`#${me(this.r)}${me(this.g)}${me(this.b)}`}function nw(){return`#${me(this.r)}${me(this.g)}${me(this.b)}${me((isNaN(this.opacity)?1:this.opacity)*255)}`}function bd(){let t=to(this.opacity);return`${t===1?"rgb(":"rgba("}${ye(this.r)}, ${ye(this.g)}, ${ye(this.b)}${t===1?")":`, ${t})`}`}function to(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ye(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function me(t){return t=ye(t),(t<16?"0":"")+t.toString(16)}function wd(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new un(t,n,e,r)}function $d(t){if(t instanceof un)return new un(t.h,t.s,t.l,t.opacity);if(t instanceof Kn||(t=nr(t)),!t)return new un;if(t instanceof un)return t;t=t.rgb();var n=t.r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,u=o-i,c=(o+i)/2;return u?(n===o?a=(e-r)/u+(e<r)*6:e===o?a=(r-n)/u+2:a=(n-e)/u+4,u/=c<.5?o+i:2-o-i,a*=60):u=c>0&&c<1?0:a,new un(a,u,c,t.opacity)}function eo(t,n,e,r){return arguments.length===1?$d(t):new un(t,n,e,r??1)}function un(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}tr(un,eo,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new un(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new un(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new bt(eu(t>=240?t-240:t+120,i,r),eu(t,i,r),eu(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new un(vd(this.h),Ji(this.s),Ji(this.l),to(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(){let t=to(this.opacity);return`${t===1?"hsl(":"hsla("}${vd(this.h)}, ${Ji(this.s)*100}%, ${Ji(this.l)*100}%${t===1?")":`, ${t})`}`}}));function vd(t){return t=(t||0)%360,t<0?t+360:t}function Ji(t){return Math.max(0,Math.min(1,t||0))}function eu(t,n,e){return(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)*255}var Sd=Math.PI/180,Ad=180/Math.PI,no=18,Td=.96422,kd=1,Cd=.82521,Ed=4/29,Qe=6/29,Nd=3*Qe*Qe,ew=Qe*Qe*Qe;function Rd(t){if(t instanceof mn)return new mn(t.l,t.a,t.b,t.opacity);if(t instanceof Rn)return Ld(t);t instanceof bt||(t=uu(t));var n=au(t.r),e=au(t.g),r=au(t.b),i=ru((.2225045*n+.7168786*e+.0606169*r)/kd),o,a;return n===e&&e===r?o=a=i:(o=ru((.4360747*n+.3850649*e+.1430804*r)/Td),a=ru((.0139322*n+.0971045*e+.7141733*r)/Cd)),new mn(116*i-16,500*(o-i),200*(i-a),t.opacity)}function ro(t,n,e,r){return arguments.length===1?Rd(t):new mn(t,n,e,r??1)}function mn(t,n,e,r){this.l=+t,this.a=+n,this.b=+e,this.opacity=+r}tr(mn,ro,Wr(Kn,{brighter(t){return new mn(this.l+no*(t??1),this.a,this.b,this.opacity)},darker(t){return new mn(this.l-no*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,n=isNaN(this.a)?t:t+this.a/500,e=isNaN(this.b)?t:t-this.b/200;return n=Td*iu(n),t=kd*iu(t),e=Cd*iu(e),new bt(ou(3.1338561*n-1.6168667*t-.4906146*e),ou(-.9787684*n+1.9161415*t+.033454*e),ou(.0719453*n-.2289914*t+1.4052427*e),this.opacity)}}));function ru(t){return t>ew?Math.pow(t,1/3):t/Nd+Ed}function iu(t){return t>Qe?t*t*t:Nd*(t-Ed)}function ou(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function au(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function rw(t){if(t instanceof Rn)return new Rn(t.h,t.c,t.l,t.opacity);if(t instanceof mn||(t=Rd(t)),t.a===0&&t.b===0)return new Rn(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var n=Math.atan2(t.b,t.a)*Ad;return new Rn(n<0?n+360:n,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function io(t,n,e,r){return arguments.length===1?rw(t):new Rn(t,n,e,r??1)}function Rn(t,n,e,r){this.h=+t,this.c=+n,this.l=+e,this.opacity=+r}function Ld(t){if(isNaN(t.h))return new mn(t.l,0,0,t.opacity);var n=t.h*Sd;return new mn(t.l,Math.cos(n)*t.c,Math.sin(n)*t.c,t.opacity)}tr(Rn,io,Wr(Kn,{brighter(t){return new Rn(this.h,this.c,this.l+no*(t??1),this.opacity)},darker(t){return new Rn(this.h,this.c,this.l-no*(t??1),this.opacity)},rgb(){return Ld(this).rgb()}}));var Pd=-.14861,cu=1.78277,fu=-.29227,oo=-.90649,Ur=1.97294,xd=Ur*oo,_d=Ur*cu,Md=cu*fu-oo*Pd;function iw(t){if(t instanceof be)return new be(t.h,t.s,t.l,t.opacity);t instanceof bt||(t=uu(t));var n=t.r/255,e=t.g/255,r=t.b/255,i=(Md*r+xd*n-_d*e)/(Md+xd-_d),o=r-i,a=(Ur*(e-i)-fu*o)/oo,u=Math.sqrt(a*a+o*o)/(Ur*i*(1-i)),c=u?Math.atan2(a,o)*Ad-120:NaN;return new be(c<0?c+360:c,u,i,t.opacity)}function Vt(t,n,e,r){return arguments.length===1?iw(t):new be(t,n,e,r??1)}function be(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}tr(be,Vt,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new be(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new be(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=isNaN(this.h)?0:(this.h+120)*Sd,n=+this.l,e=isNaN(this.s)?0:this.s*n*(1-n),r=Math.cos(t),i=Math.sin(t);return new bt(255*(n+e*(Pd*r+cu*i)),255*(n+e*(fu*r+oo*i)),255*(n+e*(Ur*r)),this.opacity)}}));function Od(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}function ow(t){var n=t.length-1;return function(e){var r=e<=0?e=0:e>=1?(e=1,n-1):Math.floor(e*n),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r<n-1?t[r+2]:2*o-i;return Od((e-r/n)*n,a,i,o,u)}}function aw(t){var n=t.length;return function(e){var r=Math.floor(((e%=1)<0?++e:e)*n),i=t[(r+n-1)%n],o=t[r%n],a=t[(r+1)%n],u=t[(r+2)%n];return Od((e-r/n)*n,i,o,a,u)}}var uo=t=>()=>t;function Fd(t,n){return function(e){return t+e*n}}function uw(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}function hu(t,n){var e=n-t;return e?Fd(t,e>180||e<-180?e-360*Math.round(e/360):e):uo(isNaN(t)?n:t)}function cw(t){return(t=+t)==1?wt:function(n,e){return e-n?uw(n,e,t):uo(isNaN(n)?e:n)}}function wt(t,n){var e=n-t;return e?Fd(t,e):uo(isNaN(t)?n:t)}var er=(function t(n){var e=cw(n);function r(i,o){var a=e((i=ve(i)).r,(o=ve(o)).r),u=e(i.g,o.g),c=e(i.b,o.b),f=wt(i.opacity,o.opacity);return function(s){return i.r=a(s),i.g=u(s),i.b=c(s),i.opacity=f(s),i+""}}return r.gamma=t,r})(1);function zd(t){return function(n){var e=n.length,r=new Array(e),i=new Array(e),o=new Array(e),a,u;for(a=0;a<e;++a)u=ve(n[a]),r[a]=u.r||0,i[a]=u.g||0,o[a]=u.b||0;return r=t(r),i=t(i),o=t(o),u.opacity=1,function(c){return u.r=r(c),u.g=i(c),u.b=o(c),u+""}}}var Bd=zd(ow),y7=zd(aw);function fw(t,n){n||(n=[]);var e=t?Math.min(n.length,t.length):0,r=n.slice(),i;return function(o){for(i=0;i<e;++i)r[i]=t[i]*(1-o)+n[i]*o;return r}}function sw(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function lw(t,n){var e=n?n.length:0,r=t?Math.min(e,t.length):0,i=new Array(r),o=new Array(e),a;for(a=0;a<r;++a)i[a]=rr(t[a],n[a]);for(;a<e;++a)o[a]=n[a];return function(u){for(a=0;a<r;++a)o[a]=i[a](u);return o}}function dw(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function Mt(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function hw(t,n){var e={},r={},i;(t===null||typeof t!="object")&&(t={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in t?e[i]=rr(t[i],n[i]):r[i]=n[i];return function(o){for(i in e)r[i]=e[i](o);return r}}var lu=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,su=new RegExp(lu.source,"g");function pw(t){return function(){return t}}function gw(t){return function(n){return t(n)+""}}function mw(t,n){var e=lu.lastIndex=su.lastIndex=0,r,i,o,a=-1,u=[],c=[];for(t=t+"",n=n+"";(r=lu.exec(t))&&(i=su.exec(n));)(o=i.index)>e&&(o=n.slice(e,o),u[a]?u[a]+=o:u[++a]=o),(r=r[0])===(i=i[0])?u[a]?u[a]+=i:u[++a]=i:(u[++a]=null,c.push({i:a,x:Mt(r,i)})),e=su.lastIndex;return e<n.length&&(o=n.slice(e),u[a]?u[a]+=o:u[++a]=o),u.length<2?c[0]?gw(c[0].x):pw(n):(n=c.length,function(f){for(var s=0,d;s<n;++s)u[(d=c[s]).i]=d.x(f);return u.join("")})}function rr(t,n){var e=typeof n,r;return n==null||e==="boolean"?uo(n):(e==="number"?Mt:e==="string"?(r=nr(n))?(n=r,er):mw:n instanceof nr?er:n instanceof Date?dw:sw(n)?fw:Array.isArray(n)?lw:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?hw:Mt)(t,n)}function Gr(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}var Dd=180/Math.PI,du={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function qd(t,n,e,r,i,o){var a,u,c;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(c=t*e+n*r)&&(e-=t*c,r-=n*c),(u=Math.sqrt(e*e+r*r))&&(e/=u,r/=u,c/=u),t*r<n*e&&(t=-t,n=-n,c=-c,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(n,t)*Dd,skewX:Math.atan(c)*Dd,scaleX:a,scaleY:u}}var ao;function yw(t){let n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?du:qd(n.a,n.b,n.c,n.d,n.e,n.f)}function bw(t){return t==null||(ao||(ao=document.createElementNS("http://www.w3.org/2000/svg","g")),ao.setAttribute("transform",t),!(t=ao.transform.baseVal.consolidate()))?du:(t=t.matrix,qd(t.a,t.b,t.c,t.d,t.e,t.f))}function Yd(t,n,e,r){function i(f){return f.length?f.pop()+" ":""}function o(f,s,d,l,h,p){if(f!==d||s!==l){var m=h.push("translate(",null,n,null,e);p.push({i:m-4,x:Mt(f,d)},{i:m-2,x:Mt(s,l)})}else(d||l)&&h.push("translate("+d+n+l+e)}function a(f,s,d,l){f!==s?(f-s>180?s+=360:s-f>180&&(f+=360),l.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Mt(f,s)})):s&&d.push(i(d)+"rotate("+s+r)}function u(f,s,d,l){f!==s?l.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Mt(f,s)}):s&&d.push(i(d)+"skewX("+s+r)}function c(f,s,d,l,h,p){if(f!==d||s!==l){var m=h.push(i(h)+"scale(",null,",",null,")");p.push({i:m-4,x:Mt(f,d)},{i:m-2,x:Mt(s,l)})}else(d!==1||l!==1)&&h.push(i(h)+"scale("+d+","+l+")")}return function(f,s){var d=[],l=[];return f=t(f),s=t(s),o(f.translateX,f.translateY,s.translateX,s.translateY,d,l),a(f.rotate,s.rotate,d,l),u(f.skewX,s.skewX,d,l),c(f.scaleX,f.scaleY,s.scaleX,s.scaleY,d,l),f=s=null,function(h){for(var p=-1,m=l.length,w;++p<m;)d[(w=l[p]).i]=w.x(h);return d.join("")}}}var b7=Yd(yw,"px, ","px)","deg)"),w7=Yd(bw,", ",")",")"),ww=1e-12;function Id(t){return((t=Math.exp(t))+1/t)/2}function vw(t){return((t=Math.exp(t))-1/t)/2}function xw(t){return((t=Math.exp(2*t))-1)/(t+1)}var v7=(function t(n,e,r){function i(o,a){var u=o[0],c=o[1],f=o[2],s=a[0],d=a[1],l=a[2],h=s-u,p=d-c,m=h*h+p*p,w,x;if(m<ww)x=Math.log(l/f)/n,w=function(_){return[u+_*h,c+_*p,f*Math.exp(n*_*x)]};else{var v=Math.sqrt(m),M=(l*l-f*f+r*m)/(2*f*e*v),g=(l*l-f*f-r*m)/(2*l*e*v),b=Math.log(Math.sqrt(M*M+1)-M),y=Math.log(Math.sqrt(g*g+1)-g);x=(y-b)/n,w=function(_){var $=_*x,S=Id(b),C=f/(e*v)*(S*xw(n*$+b)-vw(b));return[u+C*h,c+C*p,f*S/Id(n*$+b)]}}return w.duration=Math.abs(x)*1e3*n/Math.SQRT2,w}return i.rho=function(o){var a=Math.max(.001,+o),u=a*a,c=u*u;return t(a,u,c)},i})(Math.SQRT2,2,4);function Ud(t){return function(n,e){var r=t((n=eo(n)).h,(e=eo(e)).h),i=wt(n.s,e.s),o=wt(n.l,e.l),a=wt(n.opacity,e.opacity);return function(u){return n.h=r(u),n.s=i(u),n.l=o(u),n.opacity=a(u),n+""}}}var Wd=Ud(hu),x7=Ud(wt);function Gd(t,n){var e=wt((t=ro(t)).l,(n=ro(n)).l),r=wt(t.a,n.a),i=wt(t.b,n.b),o=wt(t.opacity,n.opacity);return function(a){return t.l=e(a),t.a=r(a),t.b=i(a),t.opacity=o(a),t+""}}function Hd(t){return function(n,e){var r=t((n=io(n)).h,(e=io(e)).h),i=wt(n.c,e.c),o=wt(n.l,e.l),a=wt(n.opacity,e.opacity);return function(u){return n.h=r(u),n.c=i(u),n.l=o(u),n.opacity=a(u),n+""}}}var Xd=Hd(hu),_7=Hd(wt);function Vd(t){return(function n(e){e=+e;function r(i,o){var a=t((i=Vt(i)).h,(o=Vt(o)).h),u=wt(i.s,o.s),c=wt(i.l,o.l),f=wt(i.opacity,o.opacity);return function(s){return i.h=a(s),i.s=u(s),i.l=c(Math.pow(s,e)),i.opacity=f(s),i+""}}return r.gamma=n,r})(1)}var M7=Vd(hu),co=Vd(wt);function ir(t,n){n===void 0&&(n=t,t=rr);for(var e=0,r=n.length-1,i=n[0],o=new Array(r<0?0:r);e<r;)o[e]=t(i,i=n[++e]);return function(a){var u=Math.max(0,Math.min(r-1,Math.floor(a*=r)));return o[u](a-u)}}function Wt(t,n){for(var e=new Array(n),r=0;r<n;++r)e[r]=t(r/(n-1));return e}var Hr=Math.PI,pu=2*Hr,xe=1e-6,_w=pu-xe;function jd(t){this._+=t[0];for(let n=1,e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function Mw(t){let n=Math.floor(t);if(!(n>=0))throw new Error(`invalid digits: ${t}`);if(n>15)return jd;let e=10**n;return function(r){this._+=r[0];for(let i=1,o=r.length;i<o;++i)this._+=Math.round(arguments[i]*e)/e+r[i]}}function Zd(t,n,e,r){return t===e&&n===r}function $w(t){let n=Math.floor(t);if(!(n<=15))return Zd;let e=10**n,r=function(i){return Math.round(i*e)};return function(i,o,a,u){return r(i)===r(a)&&r(o)===r(u)}}var _e=class{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?jd:Mw(n),this._equal=n==null?Zd:$w(n)}moveTo(n,e){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,e){this._append`L${this._x1=+n},${this._y1=+e}`}quadraticCurveTo(n,e,r,i){this._append`Q${+n},${+e},${this._x1=+r},${this._y1=+i}`}bezierCurveTo(n,e,r,i,o,a){this._append`C${+n},${+e},${+r},${+i},${this._x1=+o},${this._y1=+a}`}arcTo(n,e,r,i,o){if(n=+n,e=+e,r=+r,i=+i,o=+o,o<0)throw new Error(`negative radius: ${o}`);let a=this._x1,u=this._y1,c=r-n,f=i-e,s=a-n,d=u-e,l=s*s+d*d;if(this._x1===null)this._append`M${this._x1=n},${this._y1=e}`;else if(l>xe)if(!(Math.abs(d*c-f*s)>xe)||!o)this._append`L${this._x1=n},${this._y1=e}`;else{let h=r-a,p=i-u,m=c*c+f*f,w=h*h+p*p,x=Math.sqrt(m),v=Math.sqrt(l),M=o*Math.tan((Hr-Math.acos((m+l-w)/(2*x*v)))/2),g=M/v,b=M/x;Math.abs(g-1)>xe&&this._append`L${n+g*s},${e+g*d}`,this._append`A${o},${o},0,0,${+(d*h>s*p)},${this._x1=n+b*c},${this._y1=e+b*f}`}}arc(n,e,r,i,o,a){if(n=+n,e=+e,r=+r,a=!!a,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=n+u,s=e+c,d=1^a,l=a?i-o:o-i;if(this._x1===null?this._append`M${f},${s}`:(Math.abs(this._x1-f)>xe||Math.abs(this._y1-s)>xe)&&this._append`L${f},${s}`,!!r){if(l<0&&(l=l%pu+pu),l>_w)this._append`A${r},${r},0,1,${d},${n-u},${e-c}A${r},${r},0,1,${d},${this._x1=f},${this._y1=s}`;else if(l>xe){let h=n+r*Math.cos(o),p=e+r*Math.sin(o);if(l>=Hr&&this._equal(f,s,h,p)){l/=2;let m=i+l;this._append`A${r},${r},0,${+(l>=Hr)},${d},${n+r*Math.cos(m)},${e+r*Math.sin(m)}`}this._append`A${r},${r},0,${+(l>=Hr)},${d},${this._x1=h},${this._y1=p}`}}}rect(n,e,r,i){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}};function Sw(){return new _e}Sw.prototype=_e.prototype;function Ln(t=3){return new _e(+t)}function Aw(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function so(t,n){if(!isFinite(t)||t===0)return null;var e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"),r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function or(t){return t=so(Math.abs(t)),t?t[1]:NaN}function Tw(t,n){return function(e,r){for(var i=e.length,o=[],a=0,u=t[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),o.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=t[a=(a+1)%t.length];return o.reverse().join(n)}}function kw(t){return function(n){return n.replace(/[0-9]/g,function(e){return t[+e]})}}var Cw=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ar(t){if(!(n=Cw.exec(t)))throw new Error("invalid format: "+t);var n;return new gu({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}ar.prototype=gu.prototype;function gu(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}gu.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Ew(t){t:for(var n=t.length,e=1,r=-1,i;e<n;++e)switch(t[e]){case".":r=i=e;break;case"0":r===0&&(r=e),i=e;break;default:if(!+t[e])break t;r>0&&(r=0);break}return r>0?t.slice(0,r)+t.slice(i+1):t}var lo;function Nw(t,n){var e=so(t,n);if(!e)return lo=void 0,t.toPrecision(n);var r=e[0],i=e[1],o=i-(lo=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+so(t,Math.max(0,n+o-1))[0]}function Kd(t,n){var e=so(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}var Qd={"%":(t,n)=>(t*100).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:Aw,e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>Kd(t*100,n),r:Kd,s:Nw,X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Jd(t){return t}var th=Array.prototype.map,nh=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function Rw(t){var n=t.grouping===void 0||t.thousands===void 0?Jd:Tw(th.call(t.grouping,Number),t.thousands+""),e=t.currency===void 0?"":t.currency[0]+"",r=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",o=t.numerals===void 0?Jd:kw(th.call(t.numerals,String)),a=t.percent===void 0?"%":t.percent+"",u=t.minus===void 0?"\u2212":t.minus+"",c=t.nan===void 0?"NaN":t.nan+"";function f(d,l){d=ar(d);var h=d.fill,p=d.align,m=d.sign,w=d.symbol,x=d.zero,v=d.width,M=d.comma,g=d.precision,b=d.trim,y=d.type;y==="n"?(M=!0,y="g"):Qd[y]||(g===void 0&&(g=12),b=!0,y="g"),(x||h==="0"&&p==="=")&&(x=!0,h="0",p="=");var _=(l&&l.prefix!==void 0?l.prefix:"")+(w==="$"?e:w==="#"&&/[boxX]/.test(y)?"0"+y.toLowerCase():""),$=(w==="$"?r:/[%p]/.test(y)?a:"")+(l&&l.suffix!==void 0?l.suffix:""),S=Qd[y],C=/[defgprs%]/.test(y);g=g===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g));function A(k){var D=_,P=$,T,O,R;if(y==="c")P=S(k)+P,k="";else{k=+k;var U=k<0||1/k<0;if(k=isNaN(k)?c:S(Math.abs(k),g),b&&(k=Ew(k)),U&&+k==0&&m!=="+"&&(U=!1),D=(U?m==="("?m:u:m==="-"||m==="("?"":m)+D,P=(y==="s"&&!isNaN(k)&&lo!==void 0?nh[8+lo/3]:"")+P+(U&&m==="("?")":""),C){for(T=-1,O=k.length;++T<O;)if(R=k.charCodeAt(T),48>R||R>57){P=(R===46?i+k.slice(T+1):k.slice(T))+P,k=k.slice(0,T);break}}}M&&!x&&(k=n(k,1/0));var L=D.length+k.length+P.length,I=L<v?new Array(v-L+1).join(h):"";switch(M&&x&&(k=n(I+k,I.length?v-P.length:1/0),I=""),p){case"<":k=D+k+P+I;break;case"=":k=D+I+k+P;break;case"^":k=I.slice(0,L=I.length>>1)+D+k+P+I.slice(L);break;default:k=I+D+k+P;break}return o(k)}return A.toString=function(){return d+""},A}function s(d,l){var h=Math.max(-8,Math.min(8,Math.floor(or(l)/3)))*3,p=Math.pow(10,-h),m=f((d=ar(d),d.type="f",d),{suffix:nh[8+h/3]});return function(w){return m(p*w)}}return{format:f,formatPrefix:s}}var fo,Qn,mu;Lw({thousands:",",grouping:[3],currency:["$",""]});function Lw(t){return fo=Rw(t),Qn=fo.format,mu=fo.formatPrefix,fo}function eh(t){return Math.max(0,-or(Math.abs(t)))}function rh(t,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(or(n)/3)))*3-or(Math.abs(t)))}function ih(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,or(n)-or(t))+1}var V=1e-6,Mh=1e-12,tt=Math.PI,dt=tt/2,oh=tt/4,Gt=tt*2,Et=180/tt,lt=tt/180,ot=Math.abs,sr=Math.atan,Dn=Math.atan2,Q=Math.cos;var $h=Math.exp;var wo=Math.log,yu=Math.pow,j=Math.sin,Zt=Math.sign||function(t){return t>0?1:t<0?-1:0},Dt=Math.sqrt,Ou=Math.tan;function Sh(t){return t>1?0:t<-1?tt:Math.acos(t)}function Qt(t){return t>1?dt:t<-1?-dt:Math.asin(t)}function Kt(){}function vo(t,n){t&&uh.hasOwnProperty(t.type)&&uh[t.type](t,n)}var ah={Feature:function(t,n){vo(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)vo(e[r].geometry,n)}},uh={Sphere:function(t,n){n.sphere()},Point:function(t,n){t=t.coordinates,n.point(t[0],t[1],t[2])},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)t=e[r],n.point(t[0],t[1],t[2])},LineString:function(t,n){_u(t.coordinates,n,0)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)_u(e[r],n,0)},Polygon:function(t,n){ch(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)ch(e[r],n)},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)vo(e[r],n)}};function _u(t,n,e){var r=-1,i=t.length-e,o;for(n.lineStart();++r<i;)o=t[r],n.point(o[0],o[1],o[2]);n.lineEnd()}function ch(t,n){var e=-1,r=t.length;for(n.polygonStart();++e<r;)_u(t[e],n,1);n.polygonEnd()}function Jn(t,n){t&&ah.hasOwnProperty(t.type)?ah[t.type](t,n):vo(t,n)}var k7=new Xt,C7=new Xt;function Mu(t){return[Dn(t[1],t[0]),Qt(t[2])]}function cr(t){var n=t[0],e=t[1],r=Q(e);return[r*Q(n),r*j(n),j(e)]}function ho(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function xo(t,n){return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function bu(t,n){t[0]+=n[0],t[1]+=n[1],t[2]+=n[2]}function po(t,n){return[t[0]*n,t[1]*n,t[2]*n]}function $u(t){var n=Dt(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=n,t[1]/=n,t[2]/=n}function Su(t,n){function e(r,i){return r=t(r,i),n(r[0],r[1])}return t.invert&&n.invert&&(e.invert=function(r,i){return r=n.invert(r,i),r&&t.invert(r[0],r[1])}),e}function Au(t,n){return ot(t)>tt&&(t-=Math.round(t/Gt)*Gt),[t,n]}Au.invert=Au;function Ah(t,n,e){return(t%=Gt)?n||e?Su(sh(t),lh(n,e)):sh(t):n||e?lh(n,e):Au}function fh(t){return function(n,e){return n+=t,ot(n)>tt&&(n-=Math.round(n/Gt)*Gt),[n,e]}}function sh(t){var n=fh(t);return n.invert=fh(-t),n}function lh(t,n){var e=Q(t),r=j(t),i=Q(n),o=j(n);function a(u,c){var f=Q(c),s=Q(u)*f,d=j(u)*f,l=j(c),h=l*e+s*r;return[Dn(d*i-h*o,s*e-l*r),Qt(h*i+d*o)]}return a.invert=function(u,c){var f=Q(c),s=Q(u)*f,d=j(u)*f,l=j(c),h=l*i-d*o;return[Dn(d*i+l*o,s*e+h*r),Qt(h*e-s*r)]},a}function Pw(t){t=Ah(t[0]*lt,t[1]*lt,t.length>2?t[2]*lt:0);function n(e){return e=t(e[0]*lt,e[1]*lt),e[0]*=Et,e[1]*=Et,e}return n.invert=function(e){return e=t.invert(e[0]*lt,e[1]*lt),e[0]*=Et,e[1]*=Et,e},n}function Dw(t,n,e,r,i,o){if(e){var a=Q(n),u=j(n),c=r*e;i==null?(i=n+r*Gt,o=n-c/2):(i=dh(a,i),o=dh(a,o),(r>0?i<o:i>o)&&(i+=r*Gt));for(var f,s=i;r>0?s>o:s<o;s-=c)f=Mu([a,-u*Q(s),-u*j(s)]),t.point(f[0],f[1])}}function dh(t,n){n=cr(n),n[0]-=t,$u(n);var e=Sh(-n[1]);return((-n[2]<0?-e:e)+Gt-V)%Gt}function Th(){var t=[],n;return{point:function(e,r,i){n.push([e,r,i])},lineStart:function(){t.push(n=[])},lineEnd:Kt,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var e=t;return t=[],n=null,e}}}function bo(t,n){return ot(t[0]-n[0])<V&&ot(t[1]-n[1])<V}function go(t,n,e,r){this.x=t,this.z=n,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function kh(t,n,e,r,i){var o=[],a=[],u,c;if(t.forEach(function(p){if(!((m=p.length-1)<=0)){var m,w=p[0],x=p[m],v;if(bo(w,x)){if(!w[2]&&!x[2]){for(i.lineStart(),u=0;u<m;++u)i.point((w=p[u])[0],w[1]);i.lineEnd();return}x[0]+=2*V}o.push(v=new go(w,p,null,!0)),a.push(v.o=new go(w,null,v,!1)),o.push(v=new go(x,p,null,!1)),a.push(v.o=new go(x,null,v,!0))}}),!!o.length){for(a.sort(n),hh(o),hh(a),u=0,c=a.length;u<c;++u)a[u].e=e=!e;for(var f=o[0],s,d;;){for(var l=f,h=!0;l.v;)if((l=l.n)===f)return;s=l.z,i.lineStart();do{if(l.v=l.o.v=!0,l.e){if(h)for(u=0,c=s.length;u<c;++u)i.point((d=s[u])[0],d[1]);else r(l.x,l.n.x,1,i);l=l.n}else{if(h)for(s=l.p.z,u=s.length-1;u>=0;--u)i.point((d=s[u])[0],d[1]);else r(l.x,l.p.x,-1,i);l=l.p}l=l.o,s=l.z,h=!h}while(!l.v);i.lineEnd()}}}function hh(t){if(n=t.length){for(var n,e=0,r=t[0],i;++e<n;)r.n=i=t[e],i.p=r,r=i;r.n=i=t[0],i.p=r}}function wu(t){return ot(t[0])<=tt?t[0]:Zt(t[0])*((ot(t[0])+tt)%Gt-tt)}function Iw(t,n){var e=wu(n),r=n[1],i=j(r),o=[j(e),-Q(e),0],a=0,u=0,c=new Xt;i===1?r=dt+V:i===-1&&(r=-dt-V);for(var f=0,s=t.length;f<s;++f)if(l=(d=t[f]).length)for(var d,l,h=d[l-1],p=wu(h),m=h[1]/2+oh,w=j(m),x=Q(m),v=0;v<l;++v,p=g,w=y,x=_,h=M){var M=d[v],g=wu(M),b=M[1]/2+oh,y=j(b),_=Q(b),$=g-p,S=$>=0?1:-1,C=S*$,A=C>tt,k=w*y;if(c.add(Dn(k*S*j(C),x*_+k*Q(C))),a+=A?$+S*Gt:$,A^p>=e^g>=e){var D=xo(cr(h),cr(M));$u(D);var P=xo(o,D);$u(P);var T=(A^$>=0?-1:1)*Qt(P[2]);(r>T||r===T&&(D[0]||D[1]))&&(u+=A^$>=0?1:-1)}}return(a<-V||a<V&&c<-Mh)^u&1}function Ch(t,n,e,r){return function(i){var o=n(i),a=Th(),u=n(a),c=!1,f,s,d,l={point:h,lineStart:m,lineEnd:w,polygonStart:function(){l.point=x,l.lineStart=v,l.lineEnd=M,s=[],f=[]},polygonEnd:function(){l.point=h,l.lineStart=m,l.lineEnd=w,s=ja(s);var g=Iw(f,r);s.length?(c||(i.polygonStart(),c=!0),kh(s,Fw,g,e,i)):g&&(c||(i.polygonStart(),c=!0),i.lineStart(),e(null,null,1,i),i.lineEnd()),c&&(i.polygonEnd(),c=!1),s=f=null},sphere:function(){i.polygonStart(),i.lineStart(),e(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function h(g,b){t(g,b)&&i.point(g,b)}function p(g,b){o.point(g,b)}function m(){l.point=p,o.lineStart()}function w(){l.point=h,o.lineEnd()}function x(g,b){d.push([g,b]),u.point(g,b)}function v(){u.lineStart(),d=[]}function M(){x(d[0][0],d[0][1]),u.lineEnd();var g=u.clean(),b=a.result(),y,_=b.length,$,S,C;if(d.pop(),f.push(d),d=null,!!_){if(g&1){if(S=b[0],($=S.length-1)>0){for(c||(i.polygonStart(),c=!0),i.lineStart(),y=0;y<$;++y)i.point((C=S[y])[0],C[1]);i.lineEnd()}return}_>1&&g&2&&b.push(b.pop().concat(b.shift())),s.push(b.filter(Ow))}}return l}}function Ow(t){return t.length>1}function Fw(t,n){return((t=t.x)[0]<0?t[1]-dt-V:dt-t[1])-((n=n.x)[0]<0?n[1]-dt-V:dt-n[1])}var ph=Ch(function(){return!0},zw,qw,[-tt,-dt]);function zw(t){var n=NaN,e=NaN,r=NaN,i;return{lineStart:function(){t.lineStart(),i=1},point:function(o,a){var u=o>0?tt:-tt,c=ot(o-n);ot(c-tt)<V?(t.point(n,e=(e+a)/2>0?dt:-dt),t.point(r,e),t.lineEnd(),t.lineStart(),t.point(u,e),t.point(o,e),i=0):r!==u&&c>=tt&&(ot(n-r)<V&&(n-=r*V),ot(o-u)<V&&(o-=u*V),e=Bw(n,e,o,a),t.point(r,e),t.lineEnd(),t.lineStart(),t.point(u,e),i=0),t.point(n=o,e=a),r=u},lineEnd:function(){t.lineEnd(),n=e=NaN},clean:function(){return 2-i}}}function Bw(t,n,e,r){var i,o,a=j(t-e);return ot(a)>V?sr((j(n)*(o=Q(r))*j(e)-j(r)*(i=Q(n))*j(t))/(i*o*a)):(n+r)/2}function qw(t,n,e,r){var i;if(t==null)i=e*dt,r.point(-tt,i),r.point(0,i),r.point(tt,i),r.point(tt,0),r.point(tt,-i),r.point(0,-i),r.point(-tt,-i),r.point(-tt,0),r.point(-tt,i);else if(ot(t[0]-n[0])>V){var o=t[0]<n[0]?tt:-tt;i=e*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(n[0],n[1])}function Yw(t){var n=Q(t),e=2*lt,r=n>0,i=ot(n)>V;function o(s,d,l,h){Dw(h,t,e,l,s,d)}function a(s,d){return Q(s)*Q(d)>n}function u(s){var d,l,h,p,m;return{lineStart:function(){p=h=!1,m=1},point:function(w,x){var v=[w,x],M,g=a(w,x),b=r?g?0:f(w,x):g?f(w+(w<0?tt:-tt),x):0;if(!d&&(p=h=g)&&s.lineStart(),g!==h&&(M=c(d,v),(!M||bo(d,M)||bo(v,M))&&(v[2]=1)),g!==h)m=0,g?(s.lineStart(),M=c(v,d),s.point(M[0],M[1])):(M=c(d,v),s.point(M[0],M[1],2),s.lineEnd()),d=M;else if(i&&d&&r^g){var y;!(b&l)&&(y=c(v,d,!0))&&(m=0,r?(s.lineStart(),s.point(y[0][0],y[0][1]),s.point(y[1][0],y[1][1]),s.lineEnd()):(s.point(y[1][0],y[1][1]),s.lineEnd(),s.lineStart(),s.point(y[0][0],y[0][1],3)))}g&&(!d||!bo(d,v))&&s.point(v[0],v[1]),d=v,h=g,l=b},lineEnd:function(){h&&s.lineEnd(),d=null},clean:function(){return m|(p&&h)<<1}}}function c(s,d,l){var h=cr(s),p=cr(d),m=[1,0,0],w=xo(h,p),x=ho(w,w),v=w[0],M=x-v*v;if(!M)return!l&&s;var g=n*x/M,b=-n*v/M,y=xo(m,w),_=po(m,g),$=po(w,b);bu(_,$);var S=y,C=ho(_,S),A=ho(S,S),k=C*C-A*(ho(_,_)-1);if(!(k<0)){var D=Dt(k),P=po(S,(-C-D)/A);if(bu(P,_),P=Mu(P),!l)return P;var T=s[0],O=d[0],R=s[1],U=d[1],L;O<T&&(L=T,T=O,O=L);var I=O-T,q=ot(I-tt)<V,W=q||I<V;if(!q&&U<R&&(L=R,R=U,U=L),W?q?R+U>0^P[1]<(ot(P[0]-T)<V?R:U):R<=P[1]&&P[1]<=U:I>tt^(T<=P[0]&&P[0]<=O)){var z=po(S,(-C+D)/A);return bu(z,_),[P,Mu(z)]}}}function f(s,d){var l=r?t:tt-t,h=0;return s<-l?h|=1:s>l&&(h|=2),d<-l?h|=4:d>l&&(h|=8),h}return Ch(a,u,o,r?[0,-t]:[-tt,t-tt])}function Uw(t,n,e,r,i,o){var a=t[0],u=t[1],c=n[0],f=n[1],s=0,d=1,l=c-a,h=f-u,p;if(p=e-a,!(!l&&p>0)){if(p/=l,l<0){if(p<s)return;p<d&&(d=p)}else if(l>0){if(p>d)return;p>s&&(s=p)}if(p=i-a,!(!l&&p<0)){if(p/=l,l<0){if(p>d)return;p>s&&(s=p)}else if(l>0){if(p<s)return;p<d&&(d=p)}if(p=r-u,!(!h&&p>0)){if(p/=h,h<0){if(p<s)return;p<d&&(d=p)}else if(h>0){if(p>d)return;p>s&&(s=p)}if(p=o-u,!(!h&&p<0)){if(p/=h,h<0){if(p>d)return;p>s&&(s=p)}else if(h>0){if(p<s)return;p<d&&(d=p)}return s>0&&(t[0]=a+s*l,t[1]=u+s*h),d<1&&(n[0]=a+d*l,n[1]=u+d*h),!0}}}}}var Xr=1e9,mo=-Xr;function Fu(t,n,e,r){function i(f,s){return t<=f&&f<=e&&n<=s&&s<=r}function o(f,s,d,l){var h=0,p=0;if(f==null||(h=a(f,d))!==(p=a(s,d))||c(f,s)<0^d>0)do l.point(h===0||h===3?t:e,h>1?r:n);while((h=(h+d+4)%4)!==p);else l.point(s[0],s[1])}function a(f,s){return ot(f[0]-t)<V?s>0?0:3:ot(f[0]-e)<V?s>0?2:1:ot(f[1]-n)<V?s>0?1:0:s>0?3:2}function u(f,s){return c(f.x,s.x)}function c(f,s){var d=a(f,1),l=a(s,1);return d!==l?d-l:d===0?s[1]-f[1]:d===1?f[0]-s[0]:d===2?f[1]-s[1]:s[0]-f[0]}return function(f){var s=f,d=Th(),l,h,p,m,w,x,v,M,g,b,y,_={point:$,lineStart:k,lineEnd:D,polygonStart:C,polygonEnd:A};function $(T,O){i(T,O)&&s.point(T,O)}function S(){for(var T=0,O=0,R=h.length;O<R;++O)for(var U=h[O],L=1,I=U.length,q=U[0],W,z,K=q[0],et=q[1];L<I;++L)W=K,z=et,q=U[L],K=q[0],et=q[1],z<=r?et>r&&(K-W)*(r-z)>(et-z)*(t-W)&&++T:et<=r&&(K-W)*(r-z)<(et-z)*(t-W)&&--T;return T}function C(){s=d,l=[],h=[],y=!0}function A(){var T=S(),O=y&&T,R=(l=ja(l)).length;(O||R)&&(f.polygonStart(),O&&(f.lineStart(),o(null,null,1,f),f.lineEnd()),R&&kh(l,u,T,o,f),f.polygonEnd()),s=f,l=h=p=null}function k(){_.point=P,h&&h.push(p=[]),b=!0,g=!1,v=M=NaN}function D(){l&&(P(m,w),x&&g&&d.rejoin(),l.push(d.result())),_.point=$,g&&s.lineEnd()}function P(T,O){var R=i(T,O);if(h&&p.push([T,O]),b)m=T,w=O,x=R,b=!1,R&&(s.lineStart(),s.point(T,O));else if(R&&g)s.point(T,O);else{var U=[v=Math.max(mo,Math.min(Xr,v)),M=Math.max(mo,Math.min(Xr,M))],L=[T=Math.max(mo,Math.min(Xr,T)),O=Math.max(mo,Math.min(Xr,O))];Uw(U,L,t,n,e,r)?(g||(s.lineStart(),s.point(U[0],U[1])),s.point(L[0],L[1]),R||s.lineEnd(),y=!1):R&&(s.lineStart(),s.point(T,O),y=!1)}v=T,M=O,g=R}return _}}var Tu=t=>t,vu=new Xt,ku=new Xt,Eh,Nh,Cu,Eu,Pn={point:Kt,lineStart:Kt,lineEnd:Kt,polygonStart:function(){Pn.lineStart=Ww,Pn.lineEnd=Hw},polygonEnd:function(){Pn.lineStart=Pn.lineEnd=Pn.point=Kt,vu.add(ot(ku)),ku=new Xt},result:function(){var t=vu/2;return vu=new Xt,t}};function Ww(){Pn.point=Gw}function Gw(t,n){Pn.point=Rh,Eh=Cu=t,Nh=Eu=n}function Rh(t,n){ku.add(Eu*t-Cu*n),Cu=t,Eu=n}function Hw(){Rh(Eh,Nh)}var fr=1/0,_o=fr,ei=-fr,Mo=ei,$o={point:Xw,lineStart:Kt,lineEnd:Kt,polygonStart:Kt,polygonEnd:Kt,result:function(){var t=[[fr,_o],[ei,Mo]];return ei=Mo=-(_o=fr=1/0),t}};function Xw(t,n){t<fr&&(fr=t),t>ei&&(ei=t),n<_o&&(_o=n),n>Mo&&(Mo=n)}var Nu=0,Ru=0,Vr=0,So=0,Ao=0,ur=0,Lu=0,Pu=0,jr=0,Lh,Ph,yn,bn,jt={point:Me,lineStart:gh,lineEnd:mh,polygonStart:function(){jt.lineStart=Zw,jt.lineEnd=Kw},polygonEnd:function(){jt.point=Me,jt.lineStart=gh,jt.lineEnd=mh},result:function(){var t=jr?[Lu/jr,Pu/jr]:ur?[So/ur,Ao/ur]:Vr?[Nu/Vr,Ru/Vr]:[NaN,NaN];return Nu=Ru=Vr=So=Ao=ur=Lu=Pu=jr=0,t}};function Me(t,n){Nu+=t,Ru+=n,++Vr}function gh(){jt.point=Vw}function Vw(t,n){jt.point=jw,Me(yn=t,bn=n)}function jw(t,n){var e=t-yn,r=n-bn,i=Dt(e*e+r*r);So+=i*(yn+t)/2,Ao+=i*(bn+n)/2,ur+=i,Me(yn=t,bn=n)}function mh(){jt.point=Me}function Zw(){jt.point=Qw}function Kw(){Dh(Lh,Ph)}function Qw(t,n){jt.point=Dh,Me(Lh=yn=t,Ph=bn=n)}function Dh(t,n){var e=t-yn,r=n-bn,i=Dt(e*e+r*r);So+=i*(yn+t)/2,Ao+=i*(bn+n)/2,ur+=i,i=bn*t-yn*n,Lu+=i*(yn+t),Pu+=i*(bn+n),jr+=i*3,Me(yn=t,bn=n)}function Ih(t){this._context=t}Ih.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,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(t,n){switch(this._point){case 0:{this._context.moveTo(t,n),this._point=1;break}case 1:{this._context.lineTo(t,n);break}default:{this._context.moveTo(t+this._radius,n),this._context.arc(t,n,this._radius,0,Gt);break}}},result:Kt};var Du=new Xt,xu,Oh,Fh,Zr,Kr,ri={point:Kt,lineStart:function(){ri.point=Jw},lineEnd:function(){xu&&zh(Oh,Fh),ri.point=Kt},polygonStart:function(){xu=!0},polygonEnd:function(){xu=null},result:function(){var t=+Du;return Du=new Xt,t}};function Jw(t,n){ri.point=zh,Oh=Zr=t,Fh=Kr=n}function zh(t,n){Zr-=t,Kr-=n,Du.add(Dt(Zr*Zr+Kr*Kr)),Zr=t,Kr=n}var yh,To,bh,wh,ko=class{constructor(n){this._append=n==null?Bh:tv(n),this._radius=4.5,this._=""}pointRadius(n){return this._radius=+n,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(n,e){switch(this._point){case 0:{this._append`M${n},${e}`,this._point=1;break}case 1:{this._append`L${n},${e}`;break}default:{if(this._append`M${n},${e}`,this._radius!==bh||this._append!==To){let r=this._radius,i=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`,bh=r,To=this._append,wh=this._,this._=i}this._+=wh;break}}}result(){let n=this._;return this._="",n.length?n:null}};function Bh(t){let n=1;this._+=t[0];for(let e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function tv(t){let n=Math.floor(t);if(!(n>=0))throw new RangeError(`invalid digits: ${t}`);if(n>15)return Bh;if(n!==yh){let e=10**n;yh=n,To=function(i){let o=1;this._+=i[0];for(let a=i.length;o<a;++o)this._+=Math.round(arguments[o]*e)/e+i[o]}}return To}function No(t,n){let e=3,r=4.5,i,o;function a(u){return u&&(typeof r=="function"&&o.pointRadius(+r.apply(this,arguments)),Jn(u,i(o))),o.result()}return a.area=function(u){return Jn(u,i(Pn)),Pn.result()},a.measure=function(u){return Jn(u,i(ri)),ri.result()},a.bounds=function(u){return Jn(u,i($o)),$o.result()},a.centroid=function(u){return Jn(u,i(jt)),jt.result()},a.projection=function(u){return arguments.length?(i=u==null?(t=null,Tu):(t=u).stream,a):t},a.context=function(u){return arguments.length?(o=u==null?(n=null,new ko(e)):new Ih(n=u),typeof r!="function"&&o.pointRadius(r),a):n},a.pointRadius=function(u){return arguments.length?(r=typeof u=="function"?u:(o.pointRadius(+u),+u),a):r},a.digits=function(u){if(!arguments.length)return e;if(u==null)e=null;else{let c=Math.floor(u);if(!(c>=0))throw new RangeError(`invalid digits: ${u}`);e=c}return n===null&&(o=new ko(e)),a},a.projection(t).digits(e).context(n)}function oi(t){return{stream:Ro(t)}}function Ro(t){return function(n){var e=new Iu;for(var r in t)e[r]=t[r];return e.stream=n,e}}function Iu(){}Iu.prototype={constructor:Iu,point:function(t,n){this.stream.point(t,n)},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 zu(t,n,e){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),r!=null&&t.clipExtent(null),Jn(e,t.stream($o)),n($o.result()),r!=null&&t.clipExtent(r),t}function Bu(t,n,e){return zu(t,function(r){var i=n[1][0]-n[0][0],o=n[1][1]-n[0][1],a=Math.min(i/(r[1][0]-r[0][0]),o/(r[1][1]-r[0][1])),u=+n[0][0]+(i-a*(r[1][0]+r[0][0]))/2,c=+n[0][1]+(o-a*(r[1][1]+r[0][1]))/2;t.scale(150*a).translate([u,c])},e)}function qh(t,n,e){return Bu(t,[[0,0],n],e)}function Yh(t,n,e){return zu(t,function(r){var i=+n,o=i/(r[1][0]-r[0][0]),a=(i-o*(r[1][0]+r[0][0]))/2,u=-o*r[0][1];t.scale(150*o).translate([a,u])},e)}function Uh(t,n,e){return zu(t,function(r){var i=+n,o=i/(r[1][1]-r[0][1]),a=-o*r[0][0],u=(i-o*(r[1][1]+r[0][1]))/2;t.scale(150*o).translate([a,u])},e)}var vh=16,nv=Q(30*lt);function xh(t,n){return+n?rv(t,n):ev(t)}function ev(t){return Ro({point:function(n,e){n=t(n,e),this.stream.point(n[0],n[1])}})}function rv(t,n){function e(r,i,o,a,u,c,f,s,d,l,h,p,m,w){var x=f-r,v=s-i,M=x*x+v*v;if(M>4*n&&m--){var g=a+l,b=u+h,y=c+p,_=Dt(g*g+b*b+y*y),$=Qt(y/=_),S=ot(ot(y)-1)<V||ot(o-d)<V?(o+d)/2:Dn(b,g),C=t(S,$),A=C[0],k=C[1],D=A-r,P=k-i,T=v*D-x*P;(T*T/M>n||ot((x*D+v*P)/M-.5)>.3||a*l+u*h+c*p<nv)&&(e(r,i,o,a,u,c,A,k,S,g/=_,b/=_,y,m,w),w.point(A,k),e(A,k,S,g,b,y,f,s,d,l,h,p,m,w))}}return function(r){var i,o,a,u,c,f,s,d,l,h,p,m,w={point:x,lineStart:v,lineEnd:g,polygonStart:function(){r.polygonStart(),w.lineStart=b},polygonEnd:function(){r.polygonEnd(),w.lineStart=v}};function x($,S){$=t($,S),r.point($[0],$[1])}function v(){d=NaN,w.point=M,r.lineStart()}function M($,S){var C=cr([$,S]),A=t($,S);e(d,l,s,h,p,m,d=A[0],l=A[1],s=$,h=C[0],p=C[1],m=C[2],vh,r),r.point(d,l)}function g(){w.point=x,r.lineEnd()}function b(){v(),w.point=y,w.lineEnd=_}function y($,S){M(i=$,S),o=d,a=l,u=h,c=p,f=m,w.point=M}function _(){e(d,l,s,h,p,m,o,a,i,u,c,f,vh,r),w.lineEnd=g,g()}return w}}var iv=Ro({point:function(t,n){this.stream.point(t*lt,n*lt)}});function ov(t){return Ro({point:function(n,e){var r=t(n,e);return this.stream.point(r[0],r[1])}})}function av(t,n,e,r,i){function o(a,u){return a*=r,u*=i,[n+t*a,e-t*u]}return o.invert=function(a,u){return[(a-n)/t*r,(e-u)/t*i]},o}function _h(t,n,e,r,i,o){if(!o)return av(t,n,e,r,i);var a=Q(o),u=j(o),c=a*t,f=u*t,s=a/t,d=u/t,l=(u*e-a*n)/t,h=(u*n+a*e)/t;function p(m,w){return m*=r,w*=i,[c*m-f*w+n,e-f*m-c*w]}return p.invert=function(m,w){return[r*(s*m-d*w+l),i*(h-d*m-s*w)]},p}function te(t){return Wh(function(){return t})()}function Wh(t){var n,e=150,r=480,i=250,o=0,a=0,u=0,c=0,f=0,s,d=0,l=1,h=1,p=null,m=ph,w=null,x,v,M,g=Tu,b=.5,y,_,$,S,C;function A(T){return $(T[0]*lt,T[1]*lt)}function k(T){return T=$.invert(T[0],T[1]),T&&[T[0]*Et,T[1]*Et]}A.stream=function(T){return S&&C===T?S:S=iv(ov(s)(m(y(g(C=T)))))},A.preclip=function(T){return arguments.length?(m=T,p=void 0,P()):m},A.postclip=function(T){return arguments.length?(g=T,w=x=v=M=null,P()):g},A.clipAngle=function(T){return arguments.length?(m=+T?Yw(p=T*lt):(p=null,ph),P()):p*Et},A.clipExtent=function(T){return arguments.length?(g=T==null?(w=x=v=M=null,Tu):Fu(w=+T[0][0],x=+T[0][1],v=+T[1][0],M=+T[1][1]),P()):w==null?null:[[w,x],[v,M]]},A.scale=function(T){return arguments.length?(e=+T,D()):e},A.translate=function(T){return arguments.length?(r=+T[0],i=+T[1],D()):[r,i]},A.center=function(T){return arguments.length?(o=T[0]%360*lt,a=T[1]%360*lt,D()):[o*Et,a*Et]},A.rotate=function(T){return arguments.length?(u=T[0]%360*lt,c=T[1]%360*lt,f=T.length>2?T[2]%360*lt:0,D()):[u*Et,c*Et,f*Et]},A.angle=function(T){return arguments.length?(d=T%360*lt,D()):d*Et},A.reflectX=function(T){return arguments.length?(l=T?-1:1,D()):l<0},A.reflectY=function(T){return arguments.length?(h=T?-1:1,D()):h<0},A.precision=function(T){return arguments.length?(y=xh(_,b=T*T),P()):Dt(b)},A.fitExtent=function(T,O){return Bu(A,T,O)},A.fitSize=function(T,O){return qh(A,T,O)},A.fitWidth=function(T,O){return Yh(A,T,O)},A.fitHeight=function(T,O){return Uh(A,T,O)};function D(){var T=_h(e,0,0,l,h,d).apply(null,n(o,a)),O=_h(e,r-T[0],i-T[1],l,h,d);return s=Ah(u,c,f),_=Su(n,O),$=Su(s,_),y=xh(_,b),P()}function P(){return S=C=null,A}return function(){return n=t.apply(this,arguments),A.invert=n.invert&&k,D()}}function qu(t){var n=0,e=tt/3,r=Wh(t),i=r(n,e);return i.parallels=function(o){return arguments.length?r(n=o[0]*lt,e=o[1]*lt):[n*Et,e*Et]},i}function uv(t){var n=Q(t);function e(r,i){return[r*n,j(i)/n]}return e.invert=function(r,i){return[r/n,Qt(i*n)]},e}function cv(t,n){var e=j(t),r=(e+j(n))/2;if(ot(r)<V)return uv(t);var i=1+e*(2*r-e),o=Dt(i)/r;function a(u,c){var f=Dt(i-2*r*j(c))/r;return[f*j(u*=r),o-f*Q(u)]}return a.invert=function(u,c){var f=o-c,s=Dn(u,ot(f))*Zt(f);return f*r<0&&(s-=tt*Zt(u)*Zt(f)),[s/r,Qt((i-(u*u+f*f)*r*r)/(2*r))]},a}function ii(){return qu(cv).scale(155.424).center([0,33.6442])}function Yu(){return ii().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function fv(t){var n=t.length;return{point:function(e,r){for(var i=-1;++i<n;)t[i].point(e,r)},sphere:function(){for(var e=-1;++e<n;)t[e].sphere()},lineStart:function(){for(var e=-1;++e<n;)t[e].lineStart()},lineEnd:function(){for(var e=-1;++e<n;)t[e].lineEnd()},polygonStart:function(){for(var e=-1;++e<n;)t[e].polygonStart()},polygonEnd:function(){for(var e=-1;++e<n;)t[e].polygonEnd()}}}function Gh(){var t,n,e=Yu(),r,i=ii().rotate([154,0]).center([-2,58.5]).parallels([55,65]),o,a=ii().rotate([157,0]).center([-3,19.9]).parallels([8,18]),u,c,f={point:function(l,h){c=[l,h]}};function s(l){var h=l[0],p=l[1];return c=null,r.point(h,p),c||(o.point(h,p),c)||(u.point(h,p),c)}s.invert=function(l){var h=e.scale(),p=e.translate(),m=(l[0]-p[0])/h,w=(l[1]-p[1])/h;return(w>=.12&&w<.234&&m>=-.425&&m<-.214?i:w>=.166&&w<.234&&m>=-.214&&m<-.115?a:e).invert(l)},s.stream=function(l){return t&&n===l?t:t=fv([e.stream(n=l),i.stream(l),a.stream(l)])},s.precision=function(l){return arguments.length?(e.precision(l),i.precision(l),a.precision(l),d()):e.precision()},s.scale=function(l){return arguments.length?(e.scale(l),i.scale(l*.35),a.scale(l),s.translate(e.translate())):e.scale()},s.translate=function(l){if(!arguments.length)return e.translate();var h=e.scale(),p=+l[0],m=+l[1];return r=e.translate(l).clipExtent([[p-.455*h,m-.238*h],[p+.455*h,m+.238*h]]).stream(f),o=i.translate([p-.307*h,m+.201*h]).clipExtent([[p-.425*h+V,m+.12*h+V],[p-.214*h-V,m+.234*h-V]]).stream(f),u=a.translate([p-.205*h,m+.212*h]).clipExtent([[p-.214*h+V,m+.166*h+V],[p-.115*h-V,m+.234*h-V]]).stream(f),d()},s.fitExtent=function(l,h){return Bu(s,l,h)},s.fitSize=function(l,h){return qh(s,l,h)},s.fitWidth=function(l,h){return Yh(s,l,h)},s.fitHeight=function(l,h){return Uh(s,l,h)};function d(){return t=n=null,s}return s.scale(1070)}function Hh(t){return function(n,e){var r=Q(n),i=Q(e),o=t(r*i);return o===1/0?[2,0]:[o*i*j(n),o*j(e)]}}function ai(t){return function(n,e){var r=Dt(n*n+e*e),i=t(r),o=j(i),a=Q(i);return[Dn(n*o,r*a),Qt(r&&e*o/r)]}}var Xh=Hh(function(t){return Dt(2/(1+t))});Xh.invert=ai(function(t){return 2*Qt(t/2)});function Vh(){return te(Xh).scale(124.75).clipAngle(180-.001)}var jh=Hh(function(t){return(t=Sh(t))&&t/j(t)});jh.invert=ai(function(t){return t});function Zh(){return te(jh).scale(79.4188).clipAngle(180-.001)}function Lo(t,n){return[t,wo(Ou((dt+n)/2))]}Lo.invert=function(t,n){return[t,2*sr($h(n))-dt]};function Kh(){return Qh(Lo).scale(961/Gt)}function Qh(t){var n=te(t),e=n.center,r=n.scale,i=n.translate,o=n.clipExtent,a=null,u,c,f;n.scale=function(d){return arguments.length?(r(d),s()):r()},n.translate=function(d){return arguments.length?(i(d),s()):i()},n.center=function(d){return arguments.length?(e(d),s()):e()},n.clipExtent=function(d){return arguments.length?(d==null?a=u=c=f=null:(a=+d[0][0],u=+d[0][1],c=+d[1][0],f=+d[1][1]),s()):a==null?null:[[a,u],[c,f]]};function s(){var d=tt*r(),l=n(Pw(n.rotate()).invert([0,0]));return o(a==null?[[l[0]-d,l[1]-d],[l[0]+d,l[1]+d]]:t===Lo?[[Math.max(l[0]-d,a),u],[Math.min(l[0]+d,c),f]]:[[a,Math.max(l[1]-d,u)],[c,Math.min(l[1]+d,f)]])}return s()}function yo(t){return Ou((dt+t)/2)}function sv(t,n){var e=Q(t),r=t===n?j(t):wo(e/Q(n))/wo(yo(n)/yo(t)),i=e*yu(yo(t),r)/r;if(!r)return Lo;function o(a,u){i>0?u<-dt+V&&(u=-dt+V):u>dt-V&&(u=dt-V);var c=i/yu(yo(u),r);return[c*j(r*a),i-c*Q(r*a)]}return o.invert=function(a,u){var c=i-u,f=Zt(r)*Dt(a*a+c*c),s=Dn(a,ot(c))*Zt(c);return c*r<0&&(s-=tt*Zt(a)*Zt(c)),[s/r,2*sr(yu(i/f,1/r))-dt]},o}function Jh(){return qu(sv).scale(109.5).parallels([30,30])}function Co(t,n){return[t,n]}Co.invert=Co;function t0(){return te(Co).scale(152.63)}function lv(t,n){var e=Q(t),r=t===n?j(t):(e-Q(n))/(n-t),i=e/r+t;if(ot(r)<V)return Co;function o(a,u){var c=i-u,f=r*a;return[c*j(f),i-c*Q(f)]}return o.invert=function(a,u){var c=i-u,f=Dn(a,ot(c))*Zt(c);return c*r<0&&(f-=tt*Zt(a)*Zt(c)),[f/r,i-Zt(r)*Dt(a*a+c*c)]},o}function n0(){return qu(lv).scale(131.154).center([0,13.9389])}var Qr=1.340264,Jr=-.081106,ti=893e-6,ni=.003796,Eo=Dt(3)/2,dv=12;function e0(t,n){var e=Qt(Eo*j(n)),r=e*e,i=r*r*r;return[t*Q(e)/(Eo*(Qr+3*Jr*r+i*(7*ti+9*ni*r))),e*(Qr+Jr*r+i*(ti+ni*r))]}e0.invert=function(t,n){for(var e=n,r=e*e,i=r*r*r,o=0,a,u,c;o<dv&&(u=e*(Qr+Jr*r+i*(ti+ni*r))-n,c=Qr+3*Jr*r+i*(7*ti+9*ni*r),e-=a=u/c,r=e*e,i=r*r*r,!(ot(a)<Mh));++o);return[Eo*t*(Qr+3*Jr*r+i*(7*ti+9*ni*r))/Q(e),Qt(j(e)/Eo)]};function r0(){return te(e0).scale(177.158)}function i0(t,n){var e=Q(n),r=Q(t)*e;return[e*j(t)/r,j(n)/r]}i0.invert=ai(sr);function o0(){return te(i0).scale(144.049).clipAngle(60)}function hv(t,n){var e=n*n,r=e*e;return[t*(.8707-.131979*e+r*(-.013791+r*(.003971*e-.001529*r))),n*(1.007226+e*(.015085+r*(-.044475+.028874*e-.005916*r)))]}hv.invert=function(t,n){var e=n,r=25,i;do{var o=e*e,a=o*o;e-=i=(e*(1.007226+o*(.015085+a*(-.044475+.028874*o-.005916*a)))-n)/(1.007226+o*(.015085*3+a*(-.044475*7+.028874*9*o-.005916*11*a)))}while(ot(i)>V&&--r>0);return[t/(.8707+(o=e*e)*(-.131979+o*(-.013791+o*o*o*(.003971-.001529*o)))),e]};function a0(t,n){return[Q(n)*j(t),j(n)]}a0.invert=ai(Qt);function u0(){return te(a0).scale(249.5).clipAngle(90+V)}function c0(t,n){var e=Q(n),r=1+Q(t)*e;return[e*j(t)/r,j(n)/r]}c0.invert=ai(function(t){return 2*sr(t)});function f0(){return te(c0).scale(250).clipAngle(142)}function s0(t,n){return[wo(Ou((dt+n)/2)),-t]}s0.invert=function(t,n){return[-n,2*sr($h(t))-dt]};function l0(){var t=Qh(s0),n=t.center,e=t.rotate;return t.center=function(r){return arguments.length?n([-r[1],r[0]]):(r=n(),[r[1],-r[0]])},t.rotate=function(r){return arguments.length?e([r[0],r[1],r.length>2?r[2]+90:90]):(r=e(),[r[0],r[1],r[2]-90])},e([0,0,90]).scale(159.155)}var Uu=new Date,Wu=new Date;function mt(t,n,e,r){function i(o){return t(o=arguments.length===0?new Date:new Date(+o)),o}return i.floor=o=>(t(o=new Date(+o)),o),i.ceil=o=>(t(o=new Date(o-1)),n(o,1),t(o),o),i.round=o=>{let a=i(o),u=i.ceil(o);return o-a<u-o?a:u},i.offset=(o,a)=>(n(o=new Date(+o),a==null?1:Math.floor(a)),o),i.range=(o,a,u)=>{let c=[];if(o=i.ceil(o),u=u==null?1:Math.floor(u),!(o<a)||!(u>0))return c;let f;do c.push(f=new Date(+o)),n(o,u),t(o);while(f<o&&o<a);return c},i.filter=o=>mt(a=>{if(a>=a)for(;t(a),!o(a);)a.setTime(a-1)},(a,u)=>{if(a>=a)if(u<0)for(;++u<=0;)for(;n(a,-1),!o(a););else for(;--u>=0;)for(;n(a,1),!o(a););}),e&&(i.count=(o,a)=>(Uu.setTime(+o),Wu.setTime(+a),t(Uu),t(Wu),Math.floor(e(Uu,Wu))),i.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?i.filter(r?a=>r(a)%o===0:a=>i.count(0,a)%o===0):i)),i}var Po=mt(()=>{},(t,n)=>{t.setTime(+t+n)},(t,n)=>n-t);Po.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?mt(n=>{n.setTime(Math.floor(n/t)*t)},(n,e)=>{n.setTime(+n+e*t)},(n,e)=>(e-n)/t):Po);var R7=Po.range,In=1e3,Jt=In*60,On=Jt*60,Fn=On*24,Hu=Fn*7,d0=Fn*30,Gu=Fn*365,Nt=mt(t=>{t.setTime(t-t.getMilliseconds())},(t,n)=>{t.setTime(+t+n*In)},(t,n)=>(n-t)/In,t=>t.getUTCSeconds()),L7=Nt.range,$e=mt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*In)},(t,n)=>{t.setTime(+t+n*Jt)},(t,n)=>(n-t)/Jt,t=>t.getMinutes()),P7=$e.range,Se=mt(t=>{t.setUTCSeconds(0,0)},(t,n)=>{t.setTime(+t+n*Jt)},(t,n)=>(n-t)/Jt,t=>t.getUTCMinutes()),D7=Se.range,Ae=mt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*In-t.getMinutes()*Jt)},(t,n)=>{t.setTime(+t+n*On)},(t,n)=>(n-t)/On,t=>t.getHours()),I7=Ae.range,Te=mt(t=>{t.setUTCMinutes(0,0,0)},(t,n)=>{t.setTime(+t+n*On)},(t,n)=>(n-t)/On,t=>t.getUTCHours()),O7=Te.range,wn=mt(t=>t.setHours(0,0,0,0),(t,n)=>t.setDate(t.getDate()+n),(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*Jt)/Fn,t=>t.getDate()-1),F7=wn.range,lr=mt(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/Fn,t=>t.getUTCDate()-1),z7=lr.range,ui=mt(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/Fn,t=>Math.floor(t/Fn)),B7=ui.range;function ke(t){return mt(n=>{n.setDate(n.getDate()-(n.getDay()+7-t)%7),n.setHours(0,0,0,0)},(n,e)=>{n.setDate(n.getDate()+e*7)},(n,e)=>(e-n-(e.getTimezoneOffset()-n.getTimezoneOffset())*Jt)/Hu)}var vn=ke(0),Ce=ke(1),Xu=ke(2),Vu=ke(3),zn=ke(4),ju=ke(5),Zu=ke(6),q7=vn.range,Y7=Ce.range,U7=Xu.range,W7=Vu.range,G7=zn.range,H7=ju.range,X7=Zu.range;function Ee(t){return mt(n=>{n.setUTCDate(n.getUTCDate()-(n.getUTCDay()+7-t)%7),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCDate(n.getUTCDate()+e*7)},(n,e)=>(e-n)/Hu)}var xn=Ee(0),Ne=Ee(1),Ku=Ee(2),Qu=Ee(3),Bn=Ee(4),Ju=Ee(5),tc=Ee(6),V7=xn.range,j7=Ne.range,Z7=Ku.range,K7=Qu.range,Q7=Bn.range,J7=Ju.range,t_=tc.range,Re=mt(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,n)=>{t.setMonth(t.getMonth()+n)},(t,n)=>n.getMonth()-t.getMonth()+(n.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),n_=Re.range,Le=mt(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCMonth(t.getUTCMonth()+n)},(t,n)=>n.getUTCMonth()-t.getUTCMonth()+(n.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),e_=Le.range,It=mt(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n)},(t,n)=>n.getFullYear()-t.getFullYear(),t=>t.getFullYear());It.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:mt(n=>{n.setFullYear(Math.floor(n.getFullYear()/t)*t),n.setMonth(0,1),n.setHours(0,0,0,0)},(n,e)=>{n.setFullYear(n.getFullYear()+e*t)});var r_=It.range,Ot=mt(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n)},(t,n)=>n.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());Ot.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:mt(n=>{n.setUTCFullYear(Math.floor(n.getUTCFullYear()/t)*t),n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCFullYear(n.getUTCFullYear()+e*t)});var i_=Ot.range;function h0(t,n,e,r,i,o){let a=[[Nt,1,In],[Nt,5,5*In],[Nt,15,15*In],[Nt,30,30*In],[o,1,Jt],[o,5,5*Jt],[o,15,15*Jt],[o,30,30*Jt],[i,1,On],[i,3,3*On],[i,6,6*On],[i,12,12*On],[r,1,Fn],[r,2,2*Fn],[e,1,Hu],[n,1,d0],[n,3,3*d0],[t,1,Gu]];function u(f,s,d){let l=s<f;l&&([f,s]=[s,f]);let h=d&&typeof d.range=="function"?d:c(f,s,d),p=h?h.range(f,+s+1):[];return l?p.reverse():p}function c(f,s,d){let l=Math.abs(s-f)/d,h=Ve(([,,w])=>w).right(a,l);if(h===a.length)return t.every(Fr(f/Gu,s/Gu,d));if(h===0)return Po.every(Math.max(Fr(f,s,d),1));let[p,m]=a[l/a[h-1][2]<a[h][2]/l?h-1:h];return p.every(m)}return[u,c]}var[p0,Do]=h0(Ot,Le,xn,ui,Te,Se),[g0,m0]=h0(It,Re,vn,wn,Ae,$e);function nc(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function ec(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function ci(t,n,e){return{y:t,m:n,d:e,H:0,M:0,S:0,L:0}}function pv(t){var n=t.dateTime,e=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,u=t.months,c=t.shortMonths,f=fi(i),s=si(i),d=fi(o),l=si(o),h=fi(a),p=si(a),m=fi(u),w=si(u),x=fi(c),v=si(c),M={a:R,A:U,b:L,B:I,c:null,d:_0,e:_0,f:Ov,g:Xv,G:jv,H:Pv,I:Dv,j:Iv,L:T0,m:Fv,M:zv,p:q,q:W,Q:S0,s:A0,S:Bv,u:qv,U:Yv,V:Uv,w:Wv,W:Gv,x:null,X:null,y:Hv,Y:Vv,Z:Zv,"%":$0},g={a:z,A:K,b:et,B:at,c:null,d:M0,e:M0,f:tx,g:sx,G:dx,H:Kv,I:Qv,j:Jv,L:C0,m:nx,M:ex,p:B,q:G,Q:S0,s:A0,S:rx,u:ix,U:ox,V:ax,w:ux,W:cx,x:null,X:null,y:fx,Y:lx,Z:hx,"%":$0},b={a:C,A,b:k,B:D,c:P,d:v0,e:v0,f:Ev,g:w0,G:b0,H:x0,I:x0,j:Av,L:Cv,m:Sv,M:Tv,p:S,q:$v,Q:Rv,s:Lv,S:kv,u:wv,U:vv,V:xv,w:bv,W:_v,x:T,X:O,y:w0,Y:b0,Z:Mv,"%":Nv};M.x=y(e,M),M.X=y(r,M),M.c=y(n,M),g.x=y(e,g),g.X=y(r,g),g.c=y(n,g);function y(N,F){return function(Y){var E=[],nt=-1,H=0,J=N.length,rt,ct,Cn;for(Y instanceof Date||(Y=new Date(+Y));++nt<J;)N.charCodeAt(nt)===37&&(E.push(N.slice(H,nt)),(ct=y0[rt=N.charAt(++nt)])!=null?rt=N.charAt(++nt):ct=rt==="e"?" ":"0",(Cn=F[rt])&&(rt=Cn(Y,ct)),E.push(rt),H=nt+1);return E.push(N.slice(H,nt)),E.join("")}}function _(N,F){return function(Y){var E=ci(1900,void 0,1),nt=$(E,N,Y+="",0),H,J;if(nt!=Y.length)return null;if("Q"in E)return new Date(E.Q);if("s"in E)return new Date(E.s*1e3+("L"in E?E.L:0));if(F&&!("Z"in E)&&(E.Z=0),"p"in E&&(E.H=E.H%12+E.p*12),E.m===void 0&&(E.m="q"in E?E.q:0),"V"in E){if(E.V<1||E.V>53)return null;"w"in E||(E.w=1),"Z"in E?(H=ec(ci(E.y,0,1)),J=H.getUTCDay(),H=J>4||J===0?Ne.ceil(H):Ne(H),H=lr.offset(H,(E.V-1)*7),E.y=H.getUTCFullYear(),E.m=H.getUTCMonth(),E.d=H.getUTCDate()+(E.w+6)%7):(H=nc(ci(E.y,0,1)),J=H.getDay(),H=J>4||J===0?Ce.ceil(H):Ce(H),H=wn.offset(H,(E.V-1)*7),E.y=H.getFullYear(),E.m=H.getMonth(),E.d=H.getDate()+(E.w+6)%7)}else("W"in E||"U"in E)&&("w"in E||(E.w="u"in E?E.u%7:"W"in E?1:0),J="Z"in E?ec(ci(E.y,0,1)).getUTCDay():nc(ci(E.y,0,1)).getDay(),E.m=0,E.d="W"in E?(E.w+6)%7+E.W*7-(J+5)%7:E.w+E.U*7-(J+6)%7);return"Z"in E?(E.H+=E.Z/100|0,E.M+=E.Z%100,ec(E)):nc(E)}}function $(N,F,Y,E){for(var nt=0,H=F.length,J=Y.length,rt,ct;nt<H;){if(E>=J)return-1;if(rt=F.charCodeAt(nt++),rt===37){if(rt=F.charAt(nt++),ct=b[rt in y0?F.charAt(nt++):rt],!ct||(E=ct(N,Y,E))<0)return-1}else if(rt!=Y.charCodeAt(E++))return-1}return E}function S(N,F,Y){var E=f.exec(F.slice(Y));return E?(N.p=s.get(E[0].toLowerCase()),Y+E[0].length):-1}function C(N,F,Y){var E=h.exec(F.slice(Y));return E?(N.w=p.get(E[0].toLowerCase()),Y+E[0].length):-1}function A(N,F,Y){var E=d.exec(F.slice(Y));return E?(N.w=l.get(E[0].toLowerCase()),Y+E[0].length):-1}function k(N,F,Y){var E=x.exec(F.slice(Y));return E?(N.m=v.get(E[0].toLowerCase()),Y+E[0].length):-1}function D(N,F,Y){var E=m.exec(F.slice(Y));return E?(N.m=w.get(E[0].toLowerCase()),Y+E[0].length):-1}function P(N,F,Y){return $(N,n,F,Y)}function T(N,F,Y){return $(N,e,F,Y)}function O(N,F,Y){return $(N,r,F,Y)}function R(N){return a[N.getDay()]}function U(N){return o[N.getDay()]}function L(N){return c[N.getMonth()]}function I(N){return u[N.getMonth()]}function q(N){return i[+(N.getHours()>=12)]}function W(N){return 1+~~(N.getMonth()/3)}function z(N){return a[N.getUTCDay()]}function K(N){return o[N.getUTCDay()]}function et(N){return c[N.getUTCMonth()]}function at(N){return u[N.getUTCMonth()]}function B(N){return i[+(N.getUTCHours()>=12)]}function G(N){return 1+~~(N.getUTCMonth()/3)}return{format:function(N){var F=y(N+="",M);return F.toString=function(){return N},F},parse:function(N){var F=_(N+="",!1);return F.toString=function(){return N},F},utcFormat:function(N){var F=y(N+="",g);return F.toString=function(){return N},F},utcParse:function(N){var F=_(N+="",!0);return F.toString=function(){return N},F}}}var y0={"-":"",_:" ",0:"0"},vt=/^\s*\d+/,gv=/^%/,mv=/[\\^$*+?|[\]().{}]/g;function it(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<e?new Array(e-o+1).join(n)+i:i)}function yv(t){return t.replace(mv,"\\$&")}function fi(t){return new RegExp("^(?:"+t.map(yv).join("|")+")","i")}function si(t){return new Map(t.map((n,e)=>[n.toLowerCase(),e]))}function bv(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function wv(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function vv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function xv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function _v(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function b0(t,n,e){var r=vt.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function w0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),e+r[0].length):-1}function Mv(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function $v(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.q=r[0]*3-3,e+r[0].length):-1}function Sv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function v0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function Av(t,n,e){var r=vt.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function x0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function Tv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function kv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function Cv(t,n,e){var r=vt.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function Ev(t,n,e){var r=vt.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function Nv(t,n,e){var r=gv.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function Rv(t,n,e){var r=vt.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function Lv(t,n,e){var r=vt.exec(n.slice(e));return r?(t.s=+r[0],e+r[0].length):-1}function _0(t,n){return it(t.getDate(),n,2)}function Pv(t,n){return it(t.getHours(),n,2)}function Dv(t,n){return it(t.getHours()%12||12,n,2)}function Iv(t,n){return it(1+wn.count(It(t),t),n,3)}function T0(t,n){return it(t.getMilliseconds(),n,3)}function Ov(t,n){return T0(t,n)+"000"}function Fv(t,n){return it(t.getMonth()+1,n,2)}function zv(t,n){return it(t.getMinutes(),n,2)}function Bv(t,n){return it(t.getSeconds(),n,2)}function qv(t){var n=t.getDay();return n===0?7:n}function Yv(t,n){return it(vn.count(It(t)-1,t),n,2)}function k0(t){var n=t.getDay();return n>=4||n===0?zn(t):zn.ceil(t)}function Uv(t,n){return t=k0(t),it(zn.count(It(t),t)+(It(t).getDay()===4),n,2)}function Wv(t){return t.getDay()}function Gv(t,n){return it(Ce.count(It(t)-1,t),n,2)}function Hv(t,n){return it(t.getFullYear()%100,n,2)}function Xv(t,n){return t=k0(t),it(t.getFullYear()%100,n,2)}function Vv(t,n){return it(t.getFullYear()%1e4,n,4)}function jv(t,n){var e=t.getDay();return t=e>=4||e===0?zn(t):zn.ceil(t),it(t.getFullYear()%1e4,n,4)}function Zv(t){var n=t.getTimezoneOffset();return(n>0?"-":(n*=-1,"+"))+it(n/60|0,"0",2)+it(n%60,"0",2)}function M0(t,n){return it(t.getUTCDate(),n,2)}function Kv(t,n){return it(t.getUTCHours(),n,2)}function Qv(t,n){return it(t.getUTCHours()%12||12,n,2)}function Jv(t,n){return it(1+lr.count(Ot(t),t),n,3)}function C0(t,n){return it(t.getUTCMilliseconds(),n,3)}function tx(t,n){return C0(t,n)+"000"}function nx(t,n){return it(t.getUTCMonth()+1,n,2)}function ex(t,n){return it(t.getUTCMinutes(),n,2)}function rx(t,n){return it(t.getUTCSeconds(),n,2)}function ix(t){var n=t.getUTCDay();return n===0?7:n}function ox(t,n){return it(xn.count(Ot(t)-1,t),n,2)}function E0(t){var n=t.getUTCDay();return n>=4||n===0?Bn(t):Bn.ceil(t)}function ax(t,n){return t=E0(t),it(Bn.count(Ot(t),t)+(Ot(t).getUTCDay()===4),n,2)}function ux(t){return t.getUTCDay()}function cx(t,n){return it(Ne.count(Ot(t)-1,t),n,2)}function fx(t,n){return it(t.getUTCFullYear()%100,n,2)}function sx(t,n){return t=E0(t),it(t.getUTCFullYear()%100,n,2)}function lx(t,n){return it(t.getUTCFullYear()%1e4,n,4)}function dx(t,n){var e=t.getUTCDay();return t=e>=4||e===0?Bn(t):Bn.ceil(t),it(t.getUTCFullYear()%1e4,n,4)}function hx(){return"+0000"}function $0(){return"%"}function S0(t){return+t}function A0(t){return Math.floor(+t/1e3)}var dr,li,px,ne,N0;gx({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function gx(t){return dr=pv(t),li=dr.format,px=dr.parse,ne=dr.utcFormat,N0=dr.utcParse,dr}var R0="%Y-%m-%dT%H:%M:%S.%LZ";function mx(t){return t.toISOString()}var u_=Date.prototype.toISOString?mx:ne(R0);function yx(t){var n=new Date(t);return isNaN(n)?null:n}var c_=+new Date("2000-01-01T00:00:00.000Z")?yx:N0(R0);function _n(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t);break}return this}function Oo(t,n){switch(arguments.length){case 0:break;case 1:{typeof t=="function"?this.interpolator(t):this.range(t);break}default:{this.domain(t),typeof n=="function"?this.interpolator(n):this.range(n);break}}return this}var Io=Symbol("implicit");function Fo(){var t=new on,n=[],e=[],r=Io;function i(o){let a=t.get(o);if(a===void 0){if(r!==Io)return r;t.set(o,a=n.push(o)-1)}return e[a%e.length]}return i.domain=function(o){if(!arguments.length)return n.slice();n=[],t=new on;for(let a of o)t.has(a)||t.set(a,n.push(a)-1);return i},i.range=function(o){return arguments.length?(e=Array.from(o),i):e.slice()},i.unknown=function(o){return arguments.length?(r=o,i):r},i.copy=function(){return Fo(n,e).unknown(r)},_n.apply(i,arguments),i}function di(){var t=Fo().unknown(void 0),n=t.domain,e=t.range,r=0,i=1,o,a,u=!1,c=0,f=0,s=.5;delete t.unknown;function d(){var l=n().length,h=i<r,p=h?i:r,m=h?r:i;o=(m-p)/Math.max(1,l-c+f*2),u&&(o=Math.floor(o)),p+=(m-p-o*(l-c))*s,a=o*(1-c),u&&(p=Math.round(p),a=Math.round(a));var w=Ze(l).map(function(x){return p+o*x});return e(h?w.reverse():w)}return t.domain=function(l){return arguments.length?(n(l),d()):n()},t.range=function(l){return arguments.length?([r,i]=l,r=+r,i=+i,d()):[r,i]},t.rangeRound=function(l){return[r,i]=l,r=+r,i=+i,u=!0,d()},t.bandwidth=function(){return a},t.step=function(){return o},t.round=function(l){return arguments.length?(u=!!l,d()):u},t.padding=function(l){return arguments.length?(c=Math.min(1,f=+l),d()):c},t.paddingInner=function(l){return arguments.length?(c=Math.min(1,l),d()):c},t.paddingOuter=function(l){return arguments.length?(f=+l,d()):f},t.align=function(l){return arguments.length?(s=Math.max(0,Math.min(1,l)),d()):s},t.copy=function(){return di(n(),[r,i]).round(u).paddingInner(c).paddingOuter(f).align(s)},_n.apply(d(),arguments)}function B0(t){var n=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,delete t.paddingOuter,t.copy=function(){return B0(n())},t}function q0(){return B0(di.apply(null,arguments).paddingInner(1))}function bx(t){return function(){return t}}function rc(t){return+t}var L0=[0,1];function tn(t){return t}function ic(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:bx(isNaN(n)?NaN:.5)}function wx(t,n){var e;return t>n&&(e=t,t=n,n=e),function(r){return Math.max(t,Math.min(n,r))}}function vx(t,n,e){var r=t[0],i=t[1],o=n[0],a=n[1];return i<r?(r=ic(i,r),o=e(a,o)):(r=ic(r,i),o=e(o,a)),function(u){return o(r(u))}}function xx(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),o=new Array(r),a=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++a<r;)i[a]=ic(t[a],t[a+1]),o[a]=e(n[a],n[a+1]);return function(u){var c=je(t,u,1,r)-1;return o[c](i[c](u))}}function hi(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function zo(){var t=L0,n=L0,e=rr,r,i,o,a=tn,u,c,f;function s(){var l=Math.min(t.length,n.length);return a!==tn&&(a=wx(t[0],t[l-1])),u=l>2?xx:vx,c=f=null,d}function d(l){return l==null||isNaN(l=+l)?o:(c||(c=u(t.map(r),n,e)))(r(a(l)))}return d.invert=function(l){return a(i((f||(f=u(n,t.map(r),Mt)))(l)))},d.domain=function(l){return arguments.length?(t=Array.from(l,rc),s()):t.slice()},d.range=function(l){return arguments.length?(n=Array.from(l),s()):n.slice()},d.rangeRound=function(l){return n=Array.from(l),e=Gr,s()},d.clamp=function(l){return arguments.length?(a=l?!0:tn,s()):a!==tn},d.interpolate=function(l){return arguments.length?(e=l,s()):e},d.unknown=function(l){return arguments.length?(o=l,d):o},function(l,h){return r=l,i=h,s()}}function Y0(){return zo()(tn,tn)}function _x(t,n,e,r){var i=Fr(t,n,e),o;switch(r=ar(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(t),Math.abs(n));return r.precision==null&&!isNaN(o=rh(i,a))&&(r.precision=o),mu(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=ih(i,Math.max(Math.abs(t),Math.abs(n))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=eh(i))&&(r.precision=o-(r.type==="%")*2);break}}return Qn(r)}function pi(t){var n=t.domain;return t.ticks=function(e){var r=n();return pe(r[0],r[r.length-1],e??10)},t.tickFormat=function(e,r){var i=n();return _x(i[0],i[i.length-1],e??10,r)},t.nice=function(e){e==null&&(e=10);var r=n(),i=0,o=r.length-1,a=r[i],u=r[o],c,f,s=10;for(u<a&&(f=a,a=u,u=f,f=i,i=o,o=f);s-- >0;){if(f=He(a,u,e),f===c)return r[i]=a,r[o]=u,n(r);if(f>0)a=Math.floor(a/f)*f,u=Math.ceil(u/f)*f;else if(f<0)a=Math.ceil(a*f)/f,u=Math.floor(u*f)/f;else break;c=f}return t},t}function Bo(){var t=Y0();return t.copy=function(){return hi(t,Bo())},_n.apply(t,arguments),pi(t)}function oc(t){var n;function e(r){return r==null||isNaN(r=+r)?n:r}return e.invert=e,e.domain=e.range=function(r){return arguments.length?(t=Array.from(r,rc),e):t.slice()},e.unknown=function(r){return arguments.length?(n=r,e):n},e.copy=function(){return oc(t).unknown(n)},t=arguments.length?Array.from(t,rc):[0,1],pi(e)}function U0(t,n){t=t.slice();var e=0,r=t.length-1,i=t[e],o=t[r],a;return o<i&&(a=e,e=r,r=a,a=i,i=o,o=a),t[e]=n.floor(i),t[r]=n.ceil(o),t}function P0(t){return Math.log(t)}function D0(t){return Math.exp(t)}function Mx(t){return-Math.log(-t)}function $x(t){return-Math.exp(-t)}function Sx(t){return isFinite(t)?+("1e"+t):t<0?0:t}function Ax(t){return t===10?Sx:t===Math.E?Math.exp:n=>Math.pow(t,n)}function Tx(t){return t===Math.E?Math.log:t===10&&Math.log10||t===2&&Math.log2||(t=Math.log(t),n=>Math.log(n)/t)}function I0(t){return(n,e)=>-t(-n,e)}function W0(t){let n=t(P0,D0),e=n.domain,r=10,i,o;function a(){return i=Tx(r),o=Ax(r),e()[0]<0?(i=I0(i),o=I0(o),t(Mx,$x)):t(P0,D0),n}return n.base=function(u){return arguments.length?(r=+u,a()):r},n.domain=function(u){return arguments.length?(e(u),a()):e()},n.ticks=u=>{let c=e(),f=c[0],s=c[c.length-1],d=s<f;d&&([f,s]=[s,f]);let l=i(f),h=i(s),p,m,w=u==null?10:+u,x=[];if(!(r%1)&&h-l<w){if(l=Math.floor(l),h=Math.ceil(h),f>0){for(;l<=h;++l)for(p=1;p<r;++p)if(m=l<0?p/o(-l):p*o(l),!(m<f)){if(m>s)break;x.push(m)}}else for(;l<=h;++l)for(p=r-1;p>=1;--p)if(m=l>0?p/o(-l):p*o(l),!(m<f)){if(m>s)break;x.push(m)}x.length*2<w&&(x=pe(f,s,w))}else x=pe(l,h,Math.min(h-l,w)).map(o);return d?x.reverse():x},n.tickFormat=(u,c)=>{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ar(c)).precision==null&&(c.trim=!0),c=Qn(c)),u===1/0)return c;let f=Math.max(1,r*u/n.ticks().length);return s=>{let d=s/o(Math.round(i(s)));return d*r<r-.5&&(d*=r),d<=f?c(s):""}},n.nice=()=>e(U0(e(),{floor:u=>o(Math.floor(i(u))),ceil:u=>o(Math.ceil(i(u)))})),n}function ac(){let t=W0(zo()).domain([1,10]);return t.copy=()=>hi(t,ac()).base(t.base()),_n.apply(t,arguments),t}function O0(t){return function(n){return Math.sign(n)*Math.log1p(Math.abs(n/t))}}function F0(t){return function(n){return Math.sign(n)*Math.expm1(Math.abs(n))*t}}function G0(t){var n=1,e=t(O0(n),F0(n));return e.constant=function(r){return arguments.length?t(O0(n=+r),F0(n)):n},pi(e)}function uc(){var t=G0(zo());return t.copy=function(){return hi(t,uc()).constant(t.constant())},_n.apply(t,arguments)}function z0(t){return function(n){return n<0?-Math.pow(-n,t):Math.pow(n,t)}}function kx(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function Cx(t){return t<0?-t*t:t*t}function H0(t){var n=t(tn,tn),e=1;function r(){return e===1?t(tn,tn):e===.5?t(kx,Cx):t(z0(e),z0(1/e))}return n.exponent=function(i){return arguments.length?(e=+i,r()):e},pi(n)}function cc(){var t=H0(zo());return t.copy=function(){return hi(t,cc()).exponent(t.exponent())},_n.apply(t,arguments),t}function fc(){var t=[],n=[],e=[],r;function i(){var a=0,u=Math.max(1,n.length);for(e=new Array(u-1);++a<u;)e[a-1]=jl(t,a/u);return o}function o(a){return a==null||isNaN(a=+a)?r:n[je(e,a)]}return o.invertExtent=function(a){var u=n.indexOf(a);return u<0?[NaN,NaN]:[u>0?e[u-1]:t[0],u<e.length?e[u]:t[t.length-1]]},o.domain=function(a){if(!arguments.length)return t.slice();t=[];for(let u of a)u!=null&&!isNaN(u=+u)&&t.push(u);return t.sort(At),i()},o.range=function(a){return arguments.length?(n=Array.from(a),i()):n.slice()},o.unknown=function(a){return arguments.length?(r=a,o):r},o.quantiles=function(){return e.slice()},o.copy=function(){return fc().domain(t).range(n).unknown(r)},_n.apply(o,arguments)}function sc(){var t=[.5],n=[0,1],e,r=1;function i(o){return o!=null&&o<=o?n[je(t,o,0,r)]:e}return i.domain=function(o){return arguments.length?(t=Array.from(o),r=Math.min(t.length,n.length-1),i):t.slice()},i.range=function(o){return arguments.length?(n=Array.from(o),r=Math.min(t.length,n.length-1),i):n.slice()},i.invertExtent=function(o){var a=n.indexOf(o);return[t[a-1],t[a]]},i.unknown=function(o){return arguments.length?(e=o,i):e},i.copy=function(){return sc().domain(t).range(n).unknown(e)},_n.apply(i,arguments)}function Ex(t){return new Date(t)}function Nx(t){return t instanceof Date?+t:Math.round(t)}function lc(t,n,e,r,i,o,a,u,c,f){var s=Y0(),d=s.invert,l=s.domain,h=f(".%L"),p=f(":%S"),m=f("%I:%M"),w=f("%I %p"),x=f("%a %d"),v=f("%b %d"),M=f("%B"),g=f("%Y");function b(y){return(c(y)<y?h:u(y)<y?p:a(y)<y?m:o(y)<y?w:r(y)<y?i(y)<y?x:v:e(y)<y?M:g)(y)}return s.invert=function(y){return new Date(Math.round(d(y)))},s.domain=function(y){return arguments.length?l(Array.from(y,Nx)):l().map(Ex)},s.ticks=function(y){var _=l();return t(_[0],_[_.length-1],y??10)},s.tickFormat=function(y,_){return _==null?b:f(_)},s.nice=function(y){var _=l();return(!y||typeof y.range!="function")&&(y=n(_[0],_[_.length-1],y??10)),y?l(U0(_,y)):s},s.copy=function(){return hi(s,lc(t,n,e,r,i,o,a,u,c,f))},s}function X0(){return _n.apply(lc(g0,m0,It,Re,vn,wn,Ae,$e,Nt,li).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function V0(){return _n.apply(lc(p0,Do,Ot,Le,xn,lr,Te,Se,Nt,ne).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function qo(t,n){return n.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function Yo(){var t=0,n=.5,e=1,r=1,i,o,a,u,c,f=tn,s,d=!1,l;function h(m){return m==null||isNaN(m=+m)?l:(m=.5+((m=+s(m))-o)*(r*m<r*o?u:c),f(d?Math.max(0,Math.min(1,m)):m))}h.domain=function(m){return arguments.length?([t,n,e]=m,i=s(t=+t),o=s(n=+n),a=s(e=+e),u=i===o?0:.5/(o-i),c=o===a?0:.5/(a-o),r=o<i?-1:1,h):[t,n,e]},h.clamp=function(m){return arguments.length?(d=!!m,h):d},h.interpolator=function(m){return arguments.length?(f=m,h):f};function p(m){return function(w){var x,v,M;return arguments.length?([x,v,M]=w,f=ir(m,[x,v,M]),h):[f(0),f(.5),f(1)]}}return h.range=p(rr),h.rangeRound=p(Gr),h.unknown=function(m){return arguments.length?(l=m,h):l},function(m){return s=m,i=m(t),o=m(n),a=m(e),u=i===o?0:.5/(o-i),c=o===a?0:.5/(a-o),r=o<i?-1:1,h}}function dc(){var t=pi(Yo()(tn));return t.copy=function(){return qo(t,dc())},Oo.apply(t,arguments)}function hc(){var t=W0(Yo()).domain([.1,1,10]);return t.copy=function(){return qo(t,hc()).base(t.base())},Oo.apply(t,arguments)}function pc(){var t=G0(Yo());return t.copy=function(){return qo(t,pc()).constant(t.constant())},Oo.apply(t,arguments)}function gc(){var t=H0(Yo());return t.copy=function(){return qo(t,gc()).exponent(t.exponent())},Oo.apply(t,arguments)}function Z(t){for(var n=t.length/6|0,e=new Array(n),r=0;r<n;)e[r]="#"+t.slice(r*6,++r*6);return e}var j0=Z("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),Z0=Z("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),K0=Z("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),Q0=Z("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),J0=Z("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),t1=Z("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),n1=Z("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),e1=Z("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),r1=Z("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),i1=Z("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),o1=Z("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab"),ut=t=>Bd(t[t.length-1]),mc=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Z),yc=ut(mc),bc=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Z),wc=ut(bc),vc=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Z),xc=ut(vc),_c=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Z),Mc=ut(_c),Go=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Z),gi=ut(Go),$c=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Z),Sc=ut($c),Ho=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Z),mi=ut(Ho),Ac=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Z),Tc=ut(Ac),kc=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Z),Cc=ut(kc),Ec=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Z),Nc=ut(Ec),Rc=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Z),Lc=ut(Rc),Pc=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Z),Dc=ut(Pc),Ic=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Z),Oc=ut(Ic),Fc=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Z),zc=ut(Fc),Bc=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Z),qc=ut(Bc),Yc=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Z),Uc=ut(Yc),Wc=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Z),Gc=ut(Wc),Hc=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Z),Xc=ut(Hc),Vc=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Z),jc=ut(Vc),Zc=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Z),Kc=ut(Zc),Qc=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Z),Jc=ut(Qc),tf=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Z),nf=ut(tf),ef=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Z),rf=ut(ef),of=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Z),af=ut(of),uf=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Z),cf=ut(uf),ff=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Z),sf=ut(ff),lf=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Z),df=ut(lf);function hf(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-t*(35.34-t*(2381.73-t*(6402.7-t*(7024.72-t*2710.57)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+t*(170.73+t*(52.82-t*(131.46-t*(176.58-t*67.37)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+t*(442.36-t*(2482.43-t*(6167.24-t*(6614.94-t*2475.67)))))))+")"}var pf=co(Vt(300,.5,0),Vt(-240,.5,1)),gf=co(Vt(-100,.75,.35),Vt(80,1.5,.8)),mf=co(Vt(260,.75,.35),Vt(80,1.5,.8)),Uo=Vt();function yf(t){(t<0||t>1)&&(t-=Math.floor(t));var n=Math.abs(t-.5);return Uo.h=360*t-100,Uo.s=1.5-1.5*n,Uo.l=.8-.9*n,Uo+""}var Wo=ve(),Rx=Math.PI/3,Lx=Math.PI*2/3;function bf(t){var n;return t=(.5-t)*Math.PI,Wo.r=255*(n=Math.sin(t))*n,Wo.g=255*(n=Math.sin(t+Rx))*n,Wo.b=255*(n=Math.sin(t+Lx))*n,Wo+""}function wf(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-t*14825.05)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+t*707.56)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-t*6838.66)))))))+")"}function Xo(t){var n=t.length;return function(e){return t[Math.max(0,Math.min(n-1,Math.floor(e*n)))]}}var vf=Xo(Z("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),xf=Xo(Z("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),_f=Xo(Z("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Mf=Xo(Z("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function xt(t){return function(){return t}}var l1=Math.cos;var Tf=Math.min,Vo=Math.sin,yt=Math.sqrt,a1=1e-12,yi=Math.PI,v_=yi/2,Jo=2*yi;function d1(t){let n=3;return t.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{let r=Math.floor(e);if(!(r>=0))throw new RangeError(`invalid digits: ${e}`);n=r}return t},()=>new _e(n)}var x_=Array.prototype.slice;function h1(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function p1(t){this._context=t}p1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._context.lineTo(t,n);break}}};function Pe(t){return new p1(t)}function g1(t){return t[0]}function m1(t){return t[1]}function ta(t,n){var e=xt(!0),r=null,i=Pe,o=null,a=d1(u);t=typeof t=="function"?t:t===void 0?g1:xt(t),n=typeof n=="function"?n:n===void 0?m1:xt(n);function u(c){var f,s=(c=h1(c)).length,d,l=!1,h;for(r==null&&(o=i(h=a())),f=0;f<=s;++f)!(f<s&&e(d=c[f],f,c))===l&&((l=!l)?o.lineStart():o.lineEnd()),l&&o.point(+t(d,f,c),+n(d,f,c));if(h)return o=null,h+""||null}return u.x=function(c){return arguments.length?(t=typeof c=="function"?c:xt(+c),u):t},u.y=function(c){return arguments.length?(n=typeof c=="function"?c:xt(+c),u):n},u.defined=function(c){return arguments.length?(e=typeof c=="function"?c:xt(!!c),u):e},u.curve=function(c){return arguments.length?(i=c,r!=null&&(o=i(r)),u):i},u.context=function(c){return arguments.length?(c==null?r=o=null:o=i(r=c),u):r},u}function kf(t,n,e){var r=null,i=xt(!0),o=null,a=Pe,u=null,c=d1(f);t=typeof t=="function"?t:t===void 0?g1:xt(+t),n=typeof n=="function"?n:xt(n===void 0?0:+n),e=typeof e=="function"?e:e===void 0?m1:xt(+e);function f(d){var l,h,p,m=(d=h1(d)).length,w,x=!1,v,M=new Array(m),g=new Array(m);for(o==null&&(u=a(v=c())),l=0;l<=m;++l){if(!(l<m&&i(w=d[l],l,d))===x)if(x=!x)h=l,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),p=l-1;p>=h;--p)u.point(M[p],g[p]);u.lineEnd(),u.areaEnd()}x&&(M[l]=+t(w,l,d),g[l]=+n(w,l,d),u.point(r?+r(w,l,d):M[l],e?+e(w,l,d):g[l]))}if(v)return u=null,v+""||null}function s(){return ta().defined(i).curve(a).context(o)}return f.x=function(d){return arguments.length?(t=typeof d=="function"?d:xt(+d),r=null,f):t},f.x0=function(d){return arguments.length?(t=typeof d=="function"?d:xt(+d),f):t},f.x1=function(d){return arguments.length?(r=d==null?null:typeof d=="function"?d:xt(+d),f):r},f.y=function(d){return arguments.length?(n=typeof d=="function"?d:xt(+d),e=null,f):n},f.y0=function(d){return arguments.length?(n=typeof d=="function"?d:xt(+d),f):n},f.y1=function(d){return arguments.length?(e=d==null?null:typeof d=="function"?d:xt(+d),f):e},f.lineX0=f.lineY0=function(){return s().x(t).y(n)},f.lineY1=function(){return s().x(t).y(e)},f.lineX1=function(){return s().x(r).y(n)},f.defined=function(d){return arguments.length?(i=typeof d=="function"?d:xt(!!d),f):i},f.curve=function(d){return arguments.length?(a=d,o!=null&&(u=a(o)),f):a},f.context=function(d){return arguments.length?(d==null?o=u=null:u=a(o=d),f):o},f}var __=Px(Pe);function y1(t){this._curve=t}y1.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,n){this._curve.point(n*Math.sin(t),n*-Math.cos(t))}};function Px(t){function n(e){return new y1(t(e))}return n._curve=t,n}var jo=class{constructor(n,e){this._context=n,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(n,e){switch(n=+n,e=+e,this._point){case 0:{this._point=1,this._line?this._context.lineTo(n,e):this._context.moveTo(n,e);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+n)/2,this._y0,this._x0,e,n,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,n,this._y0,n,e);break}}this._x0=n,this._y0=e}};function b1(t){return new jo(t,!0)}function w1(t){return new jo(t,!1)}var Dx=yt(3),Cf={draw(t,n){let e=yt(n+Tf(n/28,.75))*.59436,r=e/2,i=r*Dx;t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-i,-r),t.lineTo(i,r),t.moveTo(-i,r),t.lineTo(i,-r)}},hr={draw(t,n){let e=yt(n/yi);t.moveTo(e,0),t.arc(0,0,e,0,Jo)}},Ef={draw(t,n){let e=yt(n/5)/2;t.moveTo(-3*e,-e),t.lineTo(-e,-e),t.lineTo(-e,-3*e),t.lineTo(e,-3*e),t.lineTo(e,-e),t.lineTo(3*e,-e),t.lineTo(3*e,e),t.lineTo(e,e),t.lineTo(e,3*e),t.lineTo(-e,3*e),t.lineTo(-e,e),t.lineTo(-3*e,e),t.closePath()}},v1=yt(1/3),Ix=v1*2,Nf={draw(t,n){let e=yt(n/Ix),r=e*v1;t.moveTo(0,-e),t.lineTo(r,0),t.lineTo(0,e),t.lineTo(-r,0),t.closePath()}},Rf={draw(t,n){let e=yt(n)*.62625;t.moveTo(0,-e),t.lineTo(e,0),t.lineTo(0,e),t.lineTo(-e,0),t.closePath()}},Lf={draw(t,n){let e=yt(n-Tf(n/7,2))*.87559;t.moveTo(-e,0),t.lineTo(e,0),t.moveTo(0,e),t.lineTo(0,-e)}},Pf={draw(t,n){let e=yt(n),r=-e/2;t.rect(r,r,e,e)}},Df={draw(t,n){let e=yt(n)*.4431;t.moveTo(e,e),t.lineTo(e,-e),t.lineTo(-e,-e),t.lineTo(-e,e),t.closePath()}},Ox=.8908130915292852,x1=Vo(yi/10)/Vo(7*yi/10),Fx=Vo(Jo/10)*x1,zx=-l1(Jo/10)*x1,If={draw(t,n){let e=yt(n*Ox),r=Fx*e,i=zx*e;t.moveTo(0,-e),t.lineTo(r,i);for(let o=1;o<5;++o){let a=Jo*o/5,u=l1(a),c=Vo(a);t.lineTo(c*e,-u*e),t.lineTo(u*r-c*i,c*r+u*i)}t.closePath()}},$f=yt(3),Of={draw(t,n){let e=-yt(n/($f*3));t.moveTo(0,e*2),t.lineTo(-$f*e,-e),t.lineTo($f*e,-e),t.closePath()}},Bx=yt(3),Ff={draw(t,n){let e=yt(n)*.6824,r=e/2,i=e*Bx/2;t.moveTo(0,-e),t.lineTo(i,r),t.lineTo(-i,r),t.closePath()}},nn=-.5,en=yt(3)/2,Af=1/yt(12),qx=(Af/2+1)*3,zf={draw(t,n){let e=yt(n/qx),r=e/2,i=e*Af,o=r,a=e*Af+e,u=-o,c=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,c),t.lineTo(nn*r-en*i,en*r+nn*i),t.lineTo(nn*o-en*a,en*o+nn*a),t.lineTo(nn*u-en*c,en*u+nn*c),t.lineTo(nn*r+en*i,nn*i-en*r),t.lineTo(nn*o+en*a,nn*a-en*o),t.lineTo(nn*u+en*c,nn*c-en*u),t.closePath()}},Bf={draw(t,n){let e=yt(n-Tf(n/6,1.7))*.6189;t.moveTo(-e,-e),t.lineTo(e,e),t.moveTo(-e,e),t.lineTo(e,-e)}},_1=[hr,Ef,Nf,Pf,If,Of,zf],M1=[hr,Lf,Bf,Ff,Cf,Df,Rf];function ee(){}function Zo(t,n,e){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+n)/6,(t._y0+4*t._y1+e)/6)}function na(t){this._context=t}na.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Zo(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function $1(t){return new na(t)}function S1(t){this._context=t}S1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x2=t,this._y2=n;break;case 1:this._point=2,this._x3=t,this._y3=n;break;case 2:this._point=3,this._x4=t,this._y4=n,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+n)/6);break;default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function A1(t){return new S1(t)}function T1(t){this._context=t}T1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var e=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+n)/6;this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 3:this._point=4;default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function k1(t){return new T1(t)}function C1(t,n){this._basis=new na(t),this._beta=n}C1.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,n=this._y,e=t.length-1;if(e>0)for(var r=t[0],i=n[0],o=t[e]-r,a=n[e]-i,u=-1,c;++u<=e;)c=u/e,this._basis.point(this._beta*t[u]+(1-this._beta)*(r+c*o),this._beta*n[u]+(1-this._beta)*(i+c*a));this._x=this._y=null,this._basis.lineEnd()},point:function(t,n){this._x.push(+t),this._y.push(+n)}};var E1=(function t(n){function e(r){return n===1?new na(r):new C1(r,n)}return e.beta=function(r){return t(+r)},e})(.85);function Ko(t,n,e){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-n),t._y2+t._k*(t._y1-e),t._x2,t._y2)}function qf(t,n){this._context=t,this._k=(1-n)/6}qf.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ko(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2,this._x1=t,this._y1=n;break;case 2:this._point=3;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var N1=(function t(n){function e(r){return new qf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Yf(t,n){this._context=t,this._k=(1-n)/6}Yf.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var R1=(function t(n){function e(r){return new Yf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Uf(t,n){this._context=t,this._k=(1-n)/6}Uf.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var L1=(function t(n){function e(r){return new Uf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Wf(t,n,e){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>a1){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,c=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/c,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/c}if(t._l23_a>a1){var f=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,s=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*f+t._x1*t._l23_2a-n*t._l12_2a)/s,a=(a*f+t._y1*t._l23_2a-e*t._l12_2a)/s}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function P1(t,n){this._context=t,this._alpha=n}P1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var D1=(function t(n){function e(r){return n?new P1(r,n):new qf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function I1(t,n){this._context=t,this._alpha=n}I1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var O1=(function t(n){function e(r){return n?new I1(r,n):new Yf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function F1(t,n){this._context=t,this._alpha=n}F1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var z1=(function t(n){function e(r){return n?new F1(r,n):new Uf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function B1(t){this._context=t}B1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,n){t=+t,n=+n,this._point?this._context.lineTo(t,n):(this._point=1,this._context.moveTo(t,n))}};function q1(t){return new B1(t)}function u1(t){return t<0?-1:1}function c1(t,n,e){var r=t._x1-t._x0,i=n-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(e-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(u1(o)+u1(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function f1(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function Sf(t,n,e){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*n,o-u,a-u*e,o,a)}function Qo(t){this._context=t}Qo.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Sf(this,this._t0,f1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(t=+t,n=+n,!(t===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,Sf(this,f1(this,e=c1(this,t,n)),e);break;default:Sf(this,this._t0,e=c1(this,t,n));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}};function Y1(t){this._context=new U1(t)}(Y1.prototype=Object.create(Qo.prototype)).point=function(t,n){Qo.prototype.point.call(this,n,t)};function U1(t){this._context=t}U1.prototype={moveTo:function(t,n){this._context.moveTo(n,t)},closePath:function(){this._context.closePath()},lineTo:function(t,n){this._context.lineTo(n,t)},bezierCurveTo:function(t,n,e,r,i,o){this._context.bezierCurveTo(n,t,r,e,o,i)}};function W1(t){return new Qo(t)}function G1(t){return new Y1(t)}function H1(t){this._context=t}H1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,n=this._y,e=t.length;if(e)if(this._line?this._context.lineTo(t[0],n[0]):this._context.moveTo(t[0],n[0]),e===2)this._context.lineTo(t[1],n[1]);else for(var r=s1(t),i=s1(n),o=0,a=1;a<e;++o,++a)this._context.bezierCurveTo(r[0][o],i[0][o],r[1][o],i[1][o],t[a],n[a]);(this._line||this._line!==0&&e===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,n){this._x.push(+t),this._y.push(+n)}};function s1(t){var n,e=t.length-1,r,i=new Array(e),o=new Array(e),a=new Array(e);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],n=1;n<e-1;++n)i[n]=1,o[n]=4,a[n]=4*t[n]+2*t[n+1];for(i[e-1]=2,o[e-1]=7,a[e-1]=8*t[e-1]+t[e],n=1;n<e;++n)r=i[n]/o[n-1],o[n]-=r,a[n]-=r*a[n-1];for(i[e-1]=a[e-1]/o[e-1],n=e-2;n>=0;--n)i[n]=(a[n]-i[n+1])/o[n];for(o[e-1]=(t[e]+i[e-1])/2,n=0;n<e-1;++n)o[n]=2*t[n+1]-i[n+1];return[i,o]}function X1(t){return new H1(t)}function ea(t,n){this._context=t,this._t=n}ea.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(t,n);else{var e=this._x*(1-this._t)+t*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,n)}break}}this._x=t,this._y=n}};function V1(t){return new ea(t,.5)}function j1(t){return new ea(t,0)}function Z1(t){return new ea(t,1)}function An(t){return t!=null&&!Number.isNaN(t)}function fn(t,n){return+An(n)-+An(t)||At(t,n)}function pa(t,n){return+An(n)-+An(t)||Xe(t,n)}function Ls(t){return t!=null&&`${t}`!=""}function Vp(t){return isFinite(t)?t:NaN}function Ma(t){return t>0&&isFinite(t)?t:NaN}function Ps(t){return t<0&&isFinite(t)?t:NaN}function Yx(t,n){if(t instanceof Date||(t=new Date(+t)),isNaN(t))return typeof n=="function"?n(t):n;let e=t.getUTCHours(),r=t.getUTCMinutes(),i=t.getUTCSeconds(),o=t.getUTCMilliseconds();return`${Ux(t.getUTCFullYear())}-${Gn(t.getUTCMonth()+1,2)}-${Gn(t.getUTCDate(),2)}${e||r||i||o?`T${Gn(e,2)}:${Gn(r,2)}${i||o?`:${Gn(i,2)}${o?`.${Gn(o,3)}`:""}`:""}Z`:""}`}function Ux(t){return t<0?`-${Gn(-t,6)}`:t>9999?`+${Gn(t,6)}`:Gn(t,4)}function Gn(t,n){return`${t}`.padStart(n,"0")}var Wx=/^(?:[-+]\d{2})?\d{4}(?:-\d{2}(?:-\d{2})?)?(?:T\d{2}:\d{2}(?::\d{2}(?:\.\d{3})?)?(?:Z|[-+]\d{2}:?\d{2})?)?$/;function jp(t,n){return Wx.test(t+="")?new Date(t):typeof n=="function"?n(t):n}function vr(t){if(t==null)return;let n=t[0],e=t[t.length-1];return Xe(n,e)}var mr=1e3,ie=mr*60,oe=ie*60,Tn=oe*24,Mn=Tn*7,De=Tn*30,re=Tn*365,Gf=[["millisecond",1],["2 milliseconds",2],["5 milliseconds",5],["10 milliseconds",10],["20 milliseconds",20],["50 milliseconds",50],["100 milliseconds",100],["200 milliseconds",200],["500 milliseconds",500],["second",mr],["5 seconds",5*mr],["15 seconds",15*mr],["30 seconds",30*mr],["minute",ie],["5 minutes",5*ie],["15 minutes",15*ie],["30 minutes",30*ie],["hour",oe],["3 hours",3*oe],["6 hours",6*oe],["12 hours",12*oe],["day",Tn],["2 days",2*Tn],["week",Mn],["2 weeks",2*Mn],["month",De],["3 months",3*De],["6 months",6*De],["year",re],["2 years",2*re],["5 years",5*re],["10 years",10*re],["20 years",20*re],["50 years",50*re],["100 years",100*re]],Ds=new Map([["second",mr],["minute",ie],["hour",oe],["day",Tn],["monday",Mn],["tuesday",Mn],["wednesday",Mn],["thursday",Mn],["friday",Mn],["saturday",Mn],["sunday",Mn],["week",Mn],["month",De],["year",re]]),Zp=new Map([["second",Nt],["minute",$e],["hour",Ae],["day",wn],["monday",Ce],["tuesday",Xu],["wednesday",Vu],["thursday",zn],["friday",ju],["saturday",Zu],["sunday",vn],["week",vn],["month",Re],["year",It]]),Is=new Map([["second",Nt],["minute",Se],["hour",Te],["day",ui],["monday",Ne],["tuesday",Ku],["wednesday",Qu],["thursday",Bn],["friday",Ju],["saturday",tc],["sunday",xn],["week",xn],["month",Le],["year",Ot]]),Ri=Symbol("intervalDuration"),$a=Symbol("intervalType");for(let[t,n]of Zp)n[Ri]=Ds.get(t),n[$a]="time";for(let[t,n]of Is)n[Ri]=Ds.get(t),n[$a]="utc";var vi=[["year",Ot,"utc"],["month",Le,"utc"],["day",ui,"utc",6*De],["hour",Te,"utc",3*Tn],["minute",Se,"utc",6*oe],["second",Nt,"utc",30*ie]],la=[["year",It,"time"],["month",Re,"time"],["day",wn,"time",6*De],["hour",Ae,"time",3*Tn],["minute",$e,"time",6*oe],["second",Nt,"time",30*ie]],Gx=[vi[0],la[0],vi[1],la[1],vi[2],la[2],...vi.slice(3)];function Kp(t){let n=`${t}`.toLowerCase();n.endsWith("s")&&(n=n.slice(0,-1));let e=1,r=/^(?:(\d+)\s+)/.exec(n);switch(r&&(n=n.slice(r[0].length),e=+r[1]),n){case"quarter":n="month",e*=3;break;case"half":n="month",e*=6;break}let i=Is.get(n);if(!i)throw new Error(`unknown interval: ${t}`);if(e>1&&!i.every)throw new Error(`non-periodic interval: ${n}`);return[n,e]}function Qp(t){return Jp(Kp(t),"time")}function Os(t){return Jp(Kp(t),"utc")}function Jp([t,n],e){let r=(e==="time"?Zp:Is).get(t);return n>1&&(r=r.every(n),r[Ri]=Ds.get(t)*n,r[$a]=e),r}function K1(t,n){if(!(n>1))return;let e=t[Ri];if(!Gf.some(([,i])=>i===e)||e%Tn===0&&Tn<e&&e<De)return;let[r]=Gf[Ve(([,i])=>Math.log(i)).center(Gf,Math.log(e*n))];return(t[$a]==="time"?Qp:Os)(r)}function Q1(t,n,e){let r=n==="time"?li:ne;if(e==null)return r(t==="year"?"%Y":t==="month"?"%Y-%m":t==="day"?"%Y-%m-%d":t==="hour"||t==="minute"?"%Y-%m-%dT%H:%M":t==="second"?"%Y-%m-%dT%H:%M:%S":"%Y-%m-%dT%H:%M:%S.%L");let i=Hx(e);switch(t){case"millisecond":return pr(r(".%L"),r(":%M:%S"),i);case"second":return pr(r(":%S"),r("%-I:%M"),i);case"minute":return pr(r("%-I:%M"),r("%p"),i);case"hour":return pr(r("%-I %p"),r("%b %-d"),i);case"day":return pr(r("%-d"),r("%b"),i);case"month":return pr(r("%b"),r("%Y"),i);case"year":return r("%Y")}throw new Error("unable to format time ticks")}function Hx(t){return t==="left"||t==="right"?(n,e)=>`
|
|
1
|
+
var figkitViz=(()=>{var Ba=Object.defineProperty;var Ny=Object.getOwnPropertyDescriptor;var Ry=Object.getOwnPropertyNames;var Ly=Object.prototype.hasOwnProperty;var Py=(t,n)=>{for(var e in n)Ba(t,e,{get:n[e],enumerable:!0})},Dy=(t,n,e,r)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of Ry(n))!Ly.call(t,i)&&i!==e&&Ba(t,i,{get:()=>n[i],enumerable:!(r=Ny(n,i))||r.enumerable});return t};var Iy=t=>Dy(Ba({},"__esModule",{value:!0}),t);var c7={};Py(c7,{drawBars:()=>my,drawChange:()=>yy,drawDumbbell:()=>vy,drawSeries:()=>xy,drawSpec:()=>u7,drawSplit:()=>gy,placeRecords:()=>_y});function At(t,n){return t==null||n==null?NaN:t<n?-1:t>n?1:t>=n?0:NaN}function Xe(t,n){return t==null||n==null?NaN:n<t?-1:n>t?1:n>=t?0:NaN}function Ve(t){let n,e,r;t.length!==2?(n=At,e=(u,c)=>At(t(u),c),r=(u,c)=>t(u)-c):(n=t===At||t===Xe?t:Oy,e=t,r=t);function i(u,c,f=0,s=u.length){if(f<s){if(n(c,c)!==0)return s;do{let d=f+s>>>1;e(u[d],c)<0?f=d+1:s=d}while(f<s)}return f}function o(u,c,f=0,s=u.length){if(f<s){if(n(c,c)!==0)return s;do{let d=f+s>>>1;e(u[d],c)<=0?f=d+1:s=d}while(f<s)}return f}function a(u,c,f=0,s=u.length){let d=i(u,c,f,s-1);return d>f&&r(u[d-1],c)>-r(u[d],c)?d-1:d}return{left:i,center:a,right:o}}function Oy(){return 0}function Pl(t){return t===null?NaN:+t}function*Fy(t,n){if(n===void 0)for(let e of t)e!=null&&(e=+e)>=e&&(yield e);else{let e=-1;for(let r of t)(r=n(r,++e,t))!=null&&(r=+r)>=r&&(yield r)}}var Dl=Ve(At),je=Dl.right,s7=Dl.left,l7=Ve(Pl).center;var zy=Il(Ol),By=Il(qy);function Il(t){return function(n,e,r=e){if(!((e=+e)>=0))throw new RangeError("invalid rx");if(!((r=+r)>=0))throw new RangeError("invalid ry");let{data:i,width:o,height:a}=n;if(!((o=Math.floor(o))>=0))throw new RangeError("invalid width");if(!((a=Math.floor(a!==void 0?a:i.length/o))>=0))throw new RangeError("invalid height");if(!o||!a||!e&&!r)return n;let u=e&&t(e),c=r&&t(r),f=i.slice();return u&&c?(We(u,f,i,o,a),We(u,i,f,o,a),We(u,f,i,o,a),Ge(c,i,f,o,a),Ge(c,f,i,o,a),Ge(c,i,f,o,a)):u?(We(u,i,f,o,a),We(u,f,i,o,a),We(u,i,f,o,a)):c&&(Ge(c,i,f,o,a),Ge(c,f,i,o,a),Ge(c,i,f,o,a)),n}}function We(t,n,e,r,i){for(let o=0,a=r*i;o<a;)t(n,e,o,o+=r,1)}function Ge(t,n,e,r,i){for(let o=0,a=r*i;o<r;++o)t(n,e,o,o+a,r)}function qy(t){let n=Ol(t);return(e,r,i,o,a)=>{i<<=2,o<<=2,a<<=2,n(e,r,i+0,o+0,a),n(e,r,i+1,o+1,a),n(e,r,i+2,o+2,a),n(e,r,i+3,o+3,a)}}function Ol(t){let n=Math.floor(t);if(n===t)return Yy(t);let e=t-n,r=2*t+1;return(i,o,a,u,c)=>{if(!((u-=c)>=a))return;let f=n*o[a],s=c*n,d=s+c;for(let l=a,h=a+s;l<h;l+=c)f+=o[Math.min(u,l)];for(let l=a,h=u;l<=h;l+=c)f+=o[Math.min(u,l+s)],i[l]=(f+e*(o[Math.max(a,l-d)]+o[Math.min(u,l+d)]))/r,f-=o[Math.max(a,l-s)]}}function Yy(t){let n=2*t+1;return(e,r,i,o,a)=>{if(!((o-=a)>=i))return;let u=t*r[i],c=a*t;for(let f=i,s=i+c;f<s;f+=a)u+=r[Math.min(o,f)];for(let f=i,s=o;f<=s;f+=a)u+=r[Math.min(o,f+c)],e[f]=u/n,u-=r[Math.max(i,f-c)]}}function Vi(t,n){let e=0;if(n===void 0)for(let r of t)r!=null&&(r=+r)>=r&&++e;else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(i=+i)>=i&&++e}return e}function Uy(t){return t.length|0}function Wy(t){return!(t>0)}function Gy(t){return typeof t!="object"||"length"in t?t:Array.from(t)}function Hy(t){return n=>t(...n)}function Fl(...t){let n=typeof t[t.length-1]=="function"&&Hy(t.pop());t=t.map(Gy);let e=t.map(Uy),r=t.length-1,i=new Array(r+1).fill(0),o=[];if(r<0||e.some(Wy))return o;for(;;){o.push(i.map((u,c)=>t[c][u]));let a=r;for(;++i[a]===e[a];){if(a===0)return n?o.map(n):o;i[a--]=0}}}function zl(t,n){var e=0,r=0;return Float64Array.from(t,n===void 0?i=>e+=+i||0:i=>e+=+n(i,r++,t)||0)}function Ua(t,n){let e=0,r,i=0,o=0;if(n===void 0)for(let a of t)a!=null&&(a=+a)>=a&&(r=a-i,i+=r/++e,o+=r*(a-i));else{let a=-1;for(let u of t)(u=n(u,++a,t))!=null&&(u=+u)>=u&&(r=u-i,i+=r/++e,o+=r*(u-i))}if(e>1)return o/(e-1)}function Wa(t,n){let e=Ua(t,n);return e&&Math.sqrt(e)}function Ut(t,n){let e,r;if(n===void 0)for(let i of t)i!=null&&(e===void 0?i>=i&&(e=r=i):(e>i&&(e=i),r<i&&(r=i)));else{let i=-1;for(let o of t)(o=n(o,++i,t))!=null&&(e===void 0?o>=o&&(e=r=o):(e>o&&(e=o),r<o&&(r=o)))}return[e,r]}var Vt=class{constructor(){this._partials=new Float64Array(32),this._n=0}add(n){let e=this._partials,r=0;for(let i=0;i<this._n&&i<32;i++){let o=e[i],a=n+o,u=Math.abs(n)<Math.abs(o)?n-(a-o):o-(a-n);u&&(e[r++]=u),n=a}return e[r]=n,this._n=r+1,this}valueOf(){let n=this._partials,e=this._n,r,i,o,a=0;if(e>0){for(a=n[--e];e>0&&(r=a,i=n[--e],a=r+i,o=i-(a-r),!o););e>0&&(o<0&&n[e-1]<0||o>0&&n[e-1]>0)&&(i=o*2,r=a+i,i==r-a&&(a=r))}return a}};var on=class extends Map{constructor(n,e=Yl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(let[r,i]of n)this.set(r,i)}get(n){return super.get(qa(this,n))}has(n){return super.has(qa(this,n))}set(n,e){return super.set(Bl(this,n),e)}delete(n){return super.delete(ql(this,n))}},de=class extends Set{constructor(n,e=Yl){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(let r of n)this.add(r)}has(n){return super.has(qa(this,n))}add(n){return super.add(Bl(this,n))}delete(n){return super.delete(ql(this,n))}};function qa({_intern:t,_key:n},e){let r=n(e);return t.has(r)?t.get(r):e}function Bl({_intern:t,_key:n},e){let r=n(e);return t.has(r)?t.get(r):(t.set(r,e),e)}function ql({_intern:t,_key:n},e){let r=n(e);return t.has(r)&&(e=t.get(r),t.delete(r)),e}function Yl(t){return t!==null&&typeof t=="object"?t.valueOf():t}function Ya(t){return t}function Or(t,...n){return Ga(t,Ya,Ya,n)}function he(t,n,...e){return Ga(t,Ya,n,e)}function Ul(t,n,...e){return Ga(t,Array.from,n,e)}function Ga(t,n,e,r){return(function i(o,a){if(a>=r.length)return e(o);let u=new on,c=r[a++],f=-1;for(let s of o){let d=c(s,++f,o),l=u.get(d);l?l.push(s):u.set(d,[s])}for(let[s,d]of u)u.set(s,i(d,a));return n(u)})(t,0)}function Xy(t,n){return Array.from(n,e=>t[e])}function Ir(t,...n){if(typeof t[Symbol.iterator]!="function")throw new TypeError("values is not iterable");t=Array.from(t);let[e]=n;if(e&&e.length!==2||n.length>1){let r=Uint32Array.from(t,(i,o)=>o);return n.length>1?(n=n.map(i=>t.map(i)),r.sort((i,o)=>{for(let a of n){let u=Hi(a[i],a[o]);if(u)return u}})):(e=t.map(e),r.sort((i,o)=>Hi(e[i],e[o]))),Xy(t,r)}return t.sort(Wl(e))}function Wl(t=At){if(t===At)return Hi;if(typeof t!="function")throw new TypeError("compare is not a function");return(n,e)=>{let r=t(n,e);return r||r===0?r:(t(e,e)===0)-(t(n,n)===0)}}function Hi(t,n){return(t==null||!(t>=t))-(n==null||!(n>=n))||(t<n?-1:t>n?1:0)}function ji(t,n,e){return(n.length!==2?Ir(he(t,n,e),(([r,i],[o,a])=>At(i,a)||At(r,o))):Ir(Or(t,e),(([r,i],[o,a])=>n(i,a)||At(r,o)))).map(([r])=>r)}var Vy=Array.prototype,d7=Vy.slice;var jy=Math.sqrt(50),Zy=Math.sqrt(10),Ky=Math.sqrt(2);function Xi(t,n,e){let r=(n-t)/Math.max(0,e),i=Math.floor(Math.log10(r)),o=r/Math.pow(10,i),a=o>=jy?10:o>=Zy?5:o>=Ky?2:1,u,c,f;return i<0?(f=Math.pow(10,-i)/a,u=Math.round(t*f),c=Math.round(n*f),u/f<t&&++u,c/f>n&&--c,f=-f):(f=Math.pow(10,i)*a,u=Math.round(t/f),c=Math.round(n/f),u*f<t&&++u,c*f>n&&--c),c<u&&.5<=e&&e<2?Xi(t,n,e*2):[u,c,f]}function pe(t,n,e){if(n=+n,t=+t,e=+e,!(e>0))return[];if(t===n)return[t];let r=n<t,[i,o,a]=r?Xi(n,t,e):Xi(t,n,e);if(!(o>=i))return[];let u=o-i+1,c=new Array(u);if(r)if(a<0)for(let f=0;f<u;++f)c[f]=(o-f)/-a;else for(let f=0;f<u;++f)c[f]=(o-f)*a;else if(a<0)for(let f=0;f<u;++f)c[f]=(i+f)/-a;else for(let f=0;f<u;++f)c[f]=(i+f)*a;return c}function He(t,n,e){return n=+n,t=+t,e=+e,Xi(t,n,e)[2]}function Fr(t,n,e){n=+n,t=+t,e=+e;let r=n<t,i=r?He(n,t,e):He(t,n,e);return(r?-1:1)*(i<0?1/-i:i)}function Gl(t){return Math.max(1,Math.ceil(Math.log(Vi(t))/Math.LN2)+1)}function Yt(t,n){let e;if(n===void 0)for(let r of t)r!=null&&(e<r||e===void 0&&r>=r)&&(e=r);else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(e<i||e===void 0&&i>=i)&&(e=i)}return e}function Hl(t,n){let e,r=-1,i=-1;if(n===void 0)for(let o of t)++i,o!=null&&(e<o||e===void 0&&o>=o)&&(e=o,r=i);else for(let o of t)(o=n(o,++i,t))!=null&&(e<o||e===void 0&&o>=o)&&(e=o,r=i);return r}function an(t,n){let e;if(n===void 0)for(let r of t)r!=null&&(e>r||e===void 0&&r>=r)&&(e=r);else{let r=-1;for(let i of t)(i=n(i,++r,t))!=null&&(e>i||e===void 0&&i>=i)&&(e=i)}return e}function Xl(t,n){let e,r=-1,i=-1;if(n===void 0)for(let o of t)++i,o!=null&&(e>o||e===void 0&&o>=o)&&(e=o,r=i);else for(let o of t)(o=n(o,++i,t))!=null&&(e>o||e===void 0&&o>=o)&&(e=o,r=i);return r}function Vl(t,n,e=0,r=1/0,i){if(n=Math.floor(n),e=Math.floor(Math.max(0,e)),r=Math.floor(Math.min(t.length-1,r)),!(e<=n&&n<=r))return t;for(i=i===void 0?Hi:Wl(i);r>e;){if(r-e>600){let c=r-e+1,f=n-e+1,s=Math.log(c),d=.5*Math.exp(2*s/3),l=.5*Math.sqrt(s*d*(c-d)/c)*(f-c/2<0?-1:1),h=Math.max(e,Math.floor(n-f*d/c+l)),p=Math.min(r,Math.floor(n+(c-f)*d/c+l));Vl(t,n,h,p,i)}let o=t[n],a=e,u=r;for(Dr(t,e,n),i(t[r],o)>0&&Dr(t,e,r);a<u;){for(Dr(t,a,u),++a,--u;i(t[a],o)<0;)++a;for(;i(t[u],o)>0;)--u}i(t[e],o)===0?Dr(t,e,u):(++u,Dr(t,u,r)),u<=n&&(e=u+1),n<=u&&(r=u-1)}return t}function Dr(t,n,e){let r=t[n];t[n]=t[e],t[e]=r}function Ha(t,n=At){let e,r=!1;if(n.length===1){let i;for(let o of t){let a=n(o);(r?At(a,i)>0:At(a,a)===0)&&(e=o,i=a,r=!0)}}else for(let i of t)(r?n(i,e)>0:n(i,i)===0)&&(e=i,r=!0);return e}function Zn(t,n,e){if(t=Float64Array.from(Fy(t,e)),!(!(r=t.length)||isNaN(n=+n))){if(n<=0||r<2)return an(t);if(n>=1)return Yt(t);var r,i=(r-1)*n,o=Math.floor(i),a=Yt(Vl(t,o).subarray(0,o+1)),u=an(t.subarray(o+1));return a+(u-a)*(i-o)}}function jl(t,n,e=Pl){if(!(!(r=t.length)||isNaN(n=+n))){if(n<=0||r<2)return+e(t[0],0,t);if(n>=1)return+e(t[r-1],r-1,t);var r,i=(r-1)*n,o=Math.floor(i),a=+e(t[o],o,t),u=+e(t[o+1],o+1,t);return a+(u-a)*(i-o)}}function Zl(t,n,e){let r=Vi(t),i=Zn(t,.75)-Zn(t,.25);return r&&i?Math.ceil((e-n)/(2*i*Math.pow(r,-1/3))):1}function Xa(t,n,e){let r=Vi(t),i=Wa(t);return r&&i?Math.ceil((e-n)*Math.cbrt(r)/(3.49*i)):1}function Va(t,n){let e=0,r=0;if(n===void 0)for(let i of t)i!=null&&(i=+i)>=i&&(++e,r+=i);else{let i=-1;for(let o of t)(o=n(o,++i,t))!=null&&(o=+o)>=o&&(++e,r+=o)}if(e)return r/e}function zr(t,n){return Zn(t,.5,n)}function*Qy(t){for(let n of t)yield*n}function ja(t){return Array.from(Qy(t))}function Kl(t,n){let e=new on;if(n===void 0)for(let o of t)o!=null&&o>=o&&e.set(o,(e.get(o)||0)+1);else{let o=-1;for(let a of t)(a=n(a,++o,t))!=null&&a>=a&&e.set(a,(e.get(a)||0)+1)}let r,i=0;for(let[o,a]of e)a>i&&(i=a,r=o);return r}function Ql(t,n=Jy){let e=[],r,i=!1;for(let o of t)i&&e.push(n(r,o)),r=o,i=!0;return e}function Jy(t,n){return[t,n]}function Ze(t,n,e){t=+t,n=+n,e=(i=arguments.length)<2?(n=t,t=0,1):i<3?1:+e;for(var r=-1,i=Math.max(0,Math.ceil((n-t)/e))|0,o=new Array(i);++r<i;)o[r]=t+r*e;return o}var h7=tb(Math.random);function tb(t){return function(e,r=0,i=e.length){let o=i-(r=+r);for(;o;){let a=t()*o--|0,u=e[o+r];e[o+r]=e[a+r],e[a+r]=u}return e}}function pn(t,n){let e=0;if(n===void 0)for(let r of t)(r=+r)&&(e+=r);else{let r=-1;for(let i of t)(i=+n(i,++r,t))&&(e+=i)}return e}function Br(t){if(typeof t[Symbol.iterator]!="function")throw new TypeError("values is not iterable");return Array.from(t).reverse()}function nb(t){return t}var Za=1,Ka=2,Qa=3,Zi=4,Jl=1e-6;function eb(t){return"translate("+t+",0)"}function rb(t){return"translate(0,"+t+")"}function ib(t){return n=>+t(n)}function ob(t,n){return n=Math.max(0,t.bandwidth()-n*2)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function ab(){return!this.__axis}function ub(t,n){var e=[],r=null,i=null,o=6,a=6,u=3,c=typeof window<"u"&&window.devicePixelRatio>1?0:.5,f=t===Za||t===Zi?-1:1,s=t===Zi||t===Ka?"x":"y",d=t===Za||t===Qa?eb:rb;function l(h){var p=r??(n.ticks?n.ticks.apply(n,e):n.domain()),m=i??(n.tickFormat?n.tickFormat.apply(n,e):nb),v=Math.max(o,0)+u,x=n.range(),w=+x[0]+c,M=+x[x.length-1]+c,g=(n.bandwidth?ob:ib)(n.copy(),c),b=h.selection?h.selection():h,y=b.selectAll(".domain").data([null]),_=b.selectAll(".tick").data(p,n).order(),$=_.exit(),S=_.enter().append("g").attr("class","tick"),C=_.select("line"),A=_.select("text");y=y.merge(y.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),_=_.merge(S),C=C.merge(S.append("line").attr("stroke","currentColor").attr(s+"2",f*o)),A=A.merge(S.append("text").attr("fill","currentColor").attr(s,f*v).attr("dy",t===Za?"0em":t===Qa?"0.71em":"0.32em")),h!==b&&(y=y.transition(h),_=_.transition(h),C=C.transition(h),A=A.transition(h),$=$.transition(h).attr("opacity",Jl).attr("transform",function(k){return isFinite(k=g(k))?d(k+c):this.getAttribute("transform")}),S.attr("opacity",Jl).attr("transform",function(k){var D=this.parentNode.__axis;return d((D&&isFinite(D=D(k))?D:g(k))+c)})),$.remove(),y.attr("d",t===Zi||t===Ka?a?"M"+f*a+","+w+"H"+c+"V"+M+"H"+f*a:"M"+c+","+w+"V"+M:a?"M"+w+","+f*a+"V"+c+"H"+M+"V"+f*a:"M"+w+","+c+"H"+M),_.attr("opacity",1).attr("transform",function(k){return d(g(k)+c)}),C.attr(s+"2",f*o),A.attr(s,f*v).text(m),b.filter(ab).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===Ka?"start":t===Zi?"end":"middle"),b.each(function(){this.__axis=g})}return l.scale=function(h){return arguments.length?(n=h,l):n},l.ticks=function(){return e=Array.from(arguments),l},l.tickArguments=function(h){return arguments.length?(e=h==null?[]:Array.from(h),l):e.slice()},l.tickValues=function(h){return arguments.length?(r=h==null?null:Array.from(h),l):r&&r.slice()},l.tickFormat=function(h){return arguments.length?(i=h,l):i},l.tickSize=function(h){return arguments.length?(o=a=+h,l):o},l.tickSizeInner=function(h){return arguments.length?(o=+h,l):o},l.tickSizeOuter=function(h){return arguments.length?(a=+h,l):a},l.tickPadding=function(h){return arguments.length?(u=+h,l):u},l.offset=function(h){return arguments.length?(c=+h,l):c},l}function td(t){return ub(Qa,t)}var Ja="http://www.w3.org/1999/xhtml",ge={svg:"http://www.w3.org/2000/svg",xhtml:Ja,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function nd(t){var n=t+="",e=n.indexOf(":");return e>=0&&(n=t.slice(0,e))!=="xmlns"&&(t=t.slice(e+1)),ge.hasOwnProperty(n)?{space:ge[n],local:t}:t}function cb(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===Ja&&n.documentElement.namespaceURI===Ja?n.createElement(t):n.createElementNS(e,t)}}function fb(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function qr(t){var n=nd(t);return(n.local?fb:cb)(n)}function sb(){}function ed(t){return t==null?sb:function(){return this.querySelector(t)}}function lb(t){typeof t!="function"&&(t=ed(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o=n[i],a=o.length,u=r[i]=new Array(a),c,f,s=0;s<a;++s)(c=o[s])&&(f=t.call(c,c.__data__,s,o))&&("__data__"in c&&(f.__data__=c.__data__),u[s]=f);return new Wt(r,this._parents)}function db(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function hb(){return[]}function pb(t){return t==null?hb:function(){return this.querySelectorAll(t)}}function gb(t){return function(){return db(t.apply(this,arguments))}}function mb(t){typeof t=="function"?t=gb(t):t=pb(t);for(var n=this._groups,e=n.length,r=[],i=[],o=0;o<e;++o)for(var a=n[o],u=a.length,c,f=0;f<u;++f)(c=a[f])&&(r.push(t.call(c,c.__data__,f,a)),i.push(c));return new Wt(r,i)}function yb(t){return function(){return this.matches(t)}}function rd(t){return function(n){return n.matches(t)}}var bb=Array.prototype.find;function wb(t){return function(){return bb.call(this.children,t)}}function vb(){return this.firstElementChild}function xb(t){return this.select(t==null?vb:wb(typeof t=="function"?t:rd(t)))}var _b=Array.prototype.filter;function Mb(){return Array.from(this.children)}function $b(t){return function(){return _b.call(this.children,t)}}function Sb(t){return this.selectAll(t==null?Mb:$b(typeof t=="function"?t:rd(t)))}function Ab(t){typeof t!="function"&&(t=yb(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var o=n[i],a=o.length,u=r[i]=[],c,f=0;f<a;++f)(c=o[f])&&t.call(c,c.__data__,f,o)&&u.push(c);return new Wt(r,this._parents)}function id(t){return new Array(t.length)}function Tb(){return new Wt(this._enter||this._groups.map(id),this._parents)}function Ki(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}Ki.prototype={constructor:Ki,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function kb(t){return function(){return t}}function Cb(t,n,e,r,i,o){for(var a=0,u,c=n.length,f=o.length;a<f;++a)(u=n[a])?(u.__data__=o[a],r[a]=u):e[a]=new Ki(t,o[a]);for(;a<c;++a)(u=n[a])&&(i[a]=u)}function Eb(t,n,e,r,i,o,a){var u,c,f=new Map,s=n.length,d=o.length,l=new Array(s),h;for(u=0;u<s;++u)(c=n[u])&&(l[u]=h=a.call(c,c.__data__,u,n)+"",f.has(h)?i[u]=c:f.set(h,c));for(u=0;u<d;++u)h=a.call(t,o[u],u,o)+"",(c=f.get(h))?(r[u]=c,c.__data__=o[u],f.delete(h)):e[u]=new Ki(t,o[u]);for(u=0;u<s;++u)(c=n[u])&&f.get(l[u])===c&&(i[u]=c)}function Nb(t){return t.__data__}function Rb(t,n){if(!arguments.length)return Array.from(this,Nb);var e=n?Eb:Cb,r=this._parents,i=this._groups;typeof t!="function"&&(t=kb(t));for(var o=i.length,a=new Array(o),u=new Array(o),c=new Array(o),f=0;f<o;++f){var s=r[f],d=i[f],l=d.length,h=Lb(t.call(s,s&&s.__data__,f,r)),p=h.length,m=u[f]=new Array(p),v=a[f]=new Array(p),x=c[f]=new Array(l);e(s,d,m,v,x,h,n);for(var w=0,M=0,g,b;w<p;++w)if(g=m[w]){for(w>=M&&(M=w+1);!(b=v[M])&&++M<p;);g._next=b||null}}return a=new Wt(a,r),a._enter=u,a._exit=c,a}function Lb(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Pb(){return new Wt(this._exit||this._groups.map(id),this._parents)}function Db(t,n,e){var r=this.enter(),i=this,o=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),n!=null&&(i=n(i),i&&(i=i.selection())),e==null?o.remove():e(o),r&&i?r.merge(i).order():i}function Ib(t){for(var n=t.selection?t.selection():t,e=this._groups,r=n._groups,i=e.length,o=r.length,a=Math.min(i,o),u=new Array(i),c=0;c<a;++c)for(var f=e[c],s=r[c],d=f.length,l=u[c]=new Array(d),h,p=0;p<d;++p)(h=f[p]||s[p])&&(l[p]=h);for(;c<i;++c)u[c]=e[c];return new Wt(u,this._parents)}function Ob(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r=t[n],i=r.length-1,o=r[i],a;--i>=0;)(a=r[i])&&(o&&a.compareDocumentPosition(o)^4&&o.parentNode.insertBefore(a,o),o=a);return this}function Fb(t){t||(t=zb);function n(d,l){return d&&l?t(d.__data__,l.__data__):!d-!l}for(var e=this._groups,r=e.length,i=new Array(r),o=0;o<r;++o){for(var a=e[o],u=a.length,c=i[o]=new Array(u),f,s=0;s<u;++s)(f=a[s])&&(c[s]=f);c.sort(n)}return new Wt(i,this._parents).order()}function zb(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function Bb(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function qb(){return Array.from(this)}function Yb(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,o=r.length;i<o;++i){var a=r[i];if(a)return a}return null}function Ub(){let t=0;for(let n of this)++t;return t}function Wb(){return!this.node()}function Gb(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i=n[e],o=0,a=i.length,u;o<a;++o)(u=i[o])&&t.call(u,u.__data__,o,i);return this}function Hb(t){return function(){this.removeAttribute(t)}}function Xb(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Vb(t,n){return function(){this.setAttribute(t,n)}}function jb(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function Zb(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttribute(t):this.setAttribute(t,e)}}function Kb(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function Qb(t,n){var e=nd(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((n==null?e.local?Xb:Hb:typeof n=="function"?e.local?Kb:Zb:e.local?jb:Vb)(e,n))}function od(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Jb(t){return function(){this.style.removeProperty(t)}}function t2(t,n,e){return function(){this.style.setProperty(t,n,e)}}function n2(t,n,e){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function e2(t,n,e){return arguments.length>1?this.each((n==null?Jb:typeof n=="function"?n2:t2)(t,n,e??"")):r2(this.node(),t)}function r2(t,n){return t.style.getPropertyValue(n)||od(t).getComputedStyle(t,null).getPropertyValue(n)}function i2(t){return function(){delete this[t]}}function o2(t,n){return function(){this[t]=n}}function a2(t,n){return function(){var e=n.apply(this,arguments);e==null?delete this[t]:this[t]=e}}function u2(t,n){return arguments.length>1?this.each((n==null?i2:typeof n=="function"?a2:o2)(t,n)):this.node()[t]}function ad(t){return t.trim().split(/^|\s+/)}function nu(t){return t.classList||new ud(t)}function ud(t){this._node=t,this._names=ad(t.getAttribute("class")||"")}ud.prototype={add:function(t){var n=this._names.indexOf(t);n<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function cd(t,n){for(var e=nu(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function fd(t,n){for(var e=nu(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function c2(t){return function(){cd(this,t)}}function f2(t){return function(){fd(this,t)}}function s2(t,n){return function(){(n.apply(this,arguments)?cd:fd)(this,t)}}function l2(t,n){var e=ad(t+"");if(arguments.length<2){for(var r=nu(this.node()),i=-1,o=e.length;++i<o;)if(!r.contains(e[i]))return!1;return!0}return this.each((typeof n=="function"?s2:n?c2:f2)(e,n))}function d2(){this.textContent=""}function h2(t){return function(){this.textContent=t}}function p2(t){return function(){var n=t.apply(this,arguments);this.textContent=n??""}}function g2(t){return arguments.length?this.each(t==null?d2:(typeof t=="function"?p2:h2)(t)):this.node().textContent}function m2(){this.innerHTML=""}function y2(t){return function(){this.innerHTML=t}}function b2(t){return function(){var n=t.apply(this,arguments);this.innerHTML=n??""}}function w2(t){return arguments.length?this.each(t==null?m2:(typeof t=="function"?b2:y2)(t)):this.node().innerHTML}function v2(){this.nextSibling&&this.parentNode.appendChild(this)}function x2(){return this.each(v2)}function _2(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function M2(){return this.each(_2)}function $2(t){var n=typeof t=="function"?t:qr(t);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function S2(){return null}function A2(t,n){var e=typeof t=="function"?t:qr(t),r=n==null?S2:typeof n=="function"?n:ed(n);return this.select(function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)})}function T2(){var t=this.parentNode;t&&t.removeChild(this)}function k2(){return this.each(T2)}function C2(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function E2(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function N2(t){return this.select(t?E2:C2)}function R2(t){return arguments.length?this.property("__data__",t):this.node().__data__}function L2(t){return function(n){t.call(this,n,this.__data__)}}function P2(t){return t.trim().split(/^|\s+/).map(function(n){var e="",r=n.indexOf(".");return r>=0&&(e=n.slice(r+1),n=n.slice(0,r)),{type:n,name:e}})}function D2(t){return function(){var n=this.__on;if(n){for(var e=0,r=-1,i=n.length,o;e<i;++e)o=n[e],(!t.type||o.type===t.type)&&o.name===t.name?this.removeEventListener(o.type,o.listener,o.options):n[++r]=o;++r?n.length=r:delete this.__on}}}function I2(t,n,e){return function(){var r=this.__on,i,o=L2(n);if(r){for(var a=0,u=r.length;a<u;++a)if((i=r[a]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=o,i.options=e),i.value=n;return}}this.addEventListener(t.type,o,e),i={type:t.type,name:t.name,value:n,listener:o,options:e},r?r.push(i):this.__on=[i]}}function O2(t,n,e){var r=P2(t+""),i,o=r.length,a;if(arguments.length<2){var u=this.node().__on;if(u){for(var c=0,f=u.length,s;c<f;++c)for(i=0,s=u[c];i<o;++i)if((a=r[i]).type===s.type&&a.name===s.name)return s.value}return}for(u=n?I2:D2,i=0;i<o;++i)this.each(u(r[i],n,e));return this}function sd(t,n,e){var r=od(t),i=r.CustomEvent;typeof i=="function"?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function F2(t,n){return function(){return sd(this,t,n)}}function z2(t,n){return function(){return sd(this,t,n.apply(this,arguments))}}function B2(t,n){return this.each((typeof n=="function"?z2:F2)(t,n))}function*q2(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,o=r.length,a;i<o;++i)(a=r[i])&&(yield a)}var ld=[null];function Wt(t,n){this._groups=t,this._parents=n}function Y2(){return new Wt([[document.documentElement]],ld)}function U2(){return this}Wt.prototype=Y2.prototype={constructor:Wt,select:lb,selectAll:mb,selectChild:xb,selectChildren:Sb,filter:Ab,data:Rb,enter:Tb,exit:Pb,join:Db,merge:Ib,selection:U2,order:Ob,sort:Fb,call:Bb,nodes:qb,node:Yb,size:Ub,empty:Wb,each:Gb,attr:Qb,style:e2,property:u2,classed:l2,text:g2,html:w2,raise:x2,lower:M2,append:$2,insert:A2,remove:k2,clone:N2,datum:R2,on:O2,dispatch:B2,[Symbol.iterator]:q2};function Nn(t){return typeof t=="string"?new Wt([[document.querySelector(t)]],[document.documentElement]):new Wt([[t]],ld)}var W2=0;function G2(){return new tu}function tu(){this._="@"+(++W2).toString(36)}tu.prototype=G2.prototype={constructor:tu,get:function(t){for(var n=this._;!(n in t);)if(!(t=t.parentNode))return;return t[n]},set:function(t,n){return t[this._]=n},remove:function(t){return this._ in t&&delete t[this._]},toString:function(){return this._}};function H2(t){let n;for(;n=t.sourceEvent;)t=n;return t}function dd(t,n){if(t=H2(t),n===void 0&&(n=t.currentTarget),n){var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}}return[t.pageX,t.pageY]}function tr(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Wr(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function Kn(){}var we=.7,Je=1/we,Ke="\\s*([+-]?\\d+)\\s*",Yr="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",gn="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",X2=/^#([0-9a-f]{3,8})$/,V2=new RegExp(`^rgb\\(${Ke},${Ke},${Ke}\\)$`),j2=new RegExp(`^rgb\\(${gn},${gn},${gn}\\)$`),Z2=new RegExp(`^rgba\\(${Ke},${Ke},${Ke},${Yr}\\)$`),K2=new RegExp(`^rgba\\(${gn},${gn},${gn},${Yr}\\)$`),Q2=new RegExp(`^hsl\\(${Yr},${gn},${gn}\\)$`),J2=new RegExp(`^hsla\\(${Yr},${gn},${gn},${Yr}\\)$`),hd={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};tr(Kn,nr,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:pd,formatHex:pd,formatHex8:tw,formatHsl:nw,formatRgb:gd,toString:gd});function pd(){return this.rgb().formatHex()}function tw(){return this.rgb().formatHex8()}function nw(){return $d(this).formatHsl()}function gd(){return this.rgb().formatRgb()}function nr(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=X2.exec(t))?(e=n[1].length,n=parseInt(n[1],16),e===6?md(n):e===3?new bt(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):e===8?Qi(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):e===4?Qi(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=V2.exec(t))?new bt(n[1],n[2],n[3],1):(n=j2.exec(t))?new bt(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=Z2.exec(t))?Qi(n[1],n[2],n[3],n[4]):(n=K2.exec(t))?Qi(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=Q2.exec(t))?wd(n[1],n[2]/100,n[3]/100,1):(n=J2.exec(t))?wd(n[1],n[2]/100,n[3]/100,n[4]):hd.hasOwnProperty(t)?md(hd[t]):t==="transparent"?new bt(NaN,NaN,NaN,0):null}function md(t){return new bt(t>>16&255,t>>8&255,t&255,1)}function Qi(t,n,e,r){return r<=0&&(t=n=e=NaN),new bt(t,n,e,r)}function uu(t){return t instanceof Kn||(t=nr(t)),t?(t=t.rgb(),new bt(t.r,t.g,t.b,t.opacity)):new bt}function ve(t,n,e,r){return arguments.length===1?uu(t):new bt(t,n,e,r??1)}function bt(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}tr(bt,ve,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new bt(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new bt(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new bt(ye(this.r),ye(this.g),ye(this.b),to(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:yd,formatHex:yd,formatHex8:ew,formatRgb:bd,toString:bd}));function yd(){return`#${me(this.r)}${me(this.g)}${me(this.b)}`}function ew(){return`#${me(this.r)}${me(this.g)}${me(this.b)}${me((isNaN(this.opacity)?1:this.opacity)*255)}`}function bd(){let t=to(this.opacity);return`${t===1?"rgb(":"rgba("}${ye(this.r)}, ${ye(this.g)}, ${ye(this.b)}${t===1?")":`, ${t})`}`}function to(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function ye(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function me(t){return t=ye(t),(t<16?"0":"")+t.toString(16)}function wd(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new un(t,n,e,r)}function $d(t){if(t instanceof un)return new un(t.h,t.s,t.l,t.opacity);if(t instanceof Kn||(t=nr(t)),!t)return new un;if(t instanceof un)return t;t=t.rgb();var n=t.r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),o=Math.max(n,e,r),a=NaN,u=o-i,c=(o+i)/2;return u?(n===o?a=(e-r)/u+(e<r)*6:e===o?a=(r-n)/u+2:a=(n-e)/u+4,u/=c<.5?o+i:2-o-i,a*=60):u=c>0&&c<1?0:a,new un(a,u,c,t.opacity)}function eo(t,n,e,r){return arguments.length===1?$d(t):new un(t,n,e,r??1)}function un(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}tr(un,eo,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new un(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new un(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new bt(eu(t>=240?t-240:t+120,i,r),eu(t,i,r),eu(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new un(vd(this.h),Ji(this.s),Ji(this.l),to(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(){let t=to(this.opacity);return`${t===1?"hsl(":"hsla("}${vd(this.h)}, ${Ji(this.s)*100}%, ${Ji(this.l)*100}%${t===1?")":`, ${t})`}`}}));function vd(t){return t=(t||0)%360,t<0?t+360:t}function Ji(t){return Math.max(0,Math.min(1,t||0))}function eu(t,n,e){return(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)*255}var Sd=Math.PI/180,Ad=180/Math.PI,no=18,Td=.96422,kd=1,Cd=.82521,Ed=4/29,Qe=6/29,Nd=3*Qe*Qe,rw=Qe*Qe*Qe;function Rd(t){if(t instanceof mn)return new mn(t.l,t.a,t.b,t.opacity);if(t instanceof Rn)return Ld(t);t instanceof bt||(t=uu(t));var n=au(t.r),e=au(t.g),r=au(t.b),i=ru((.2225045*n+.7168786*e+.0606169*r)/kd),o,a;return n===e&&e===r?o=a=i:(o=ru((.4360747*n+.3850649*e+.1430804*r)/Td),a=ru((.0139322*n+.0971045*e+.7141733*r)/Cd)),new mn(116*i-16,500*(o-i),200*(i-a),t.opacity)}function ro(t,n,e,r){return arguments.length===1?Rd(t):new mn(t,n,e,r??1)}function mn(t,n,e,r){this.l=+t,this.a=+n,this.b=+e,this.opacity=+r}tr(mn,ro,Wr(Kn,{brighter(t){return new mn(this.l+no*(t??1),this.a,this.b,this.opacity)},darker(t){return new mn(this.l-no*(t??1),this.a,this.b,this.opacity)},rgb(){var t=(this.l+16)/116,n=isNaN(this.a)?t:t+this.a/500,e=isNaN(this.b)?t:t-this.b/200;return n=Td*iu(n),t=kd*iu(t),e=Cd*iu(e),new bt(ou(3.1338561*n-1.6168667*t-.4906146*e),ou(-.9787684*n+1.9161415*t+.033454*e),ou(.0719453*n-.2289914*t+1.4052427*e),this.opacity)}}));function ru(t){return t>rw?Math.pow(t,1/3):t/Nd+Ed}function iu(t){return t>Qe?t*t*t:Nd*(t-Ed)}function ou(t){return 255*(t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055)}function au(t){return(t/=255)<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)}function iw(t){if(t instanceof Rn)return new Rn(t.h,t.c,t.l,t.opacity);if(t instanceof mn||(t=Rd(t)),t.a===0&&t.b===0)return new Rn(NaN,0<t.l&&t.l<100?0:NaN,t.l,t.opacity);var n=Math.atan2(t.b,t.a)*Ad;return new Rn(n<0?n+360:n,Math.sqrt(t.a*t.a+t.b*t.b),t.l,t.opacity)}function io(t,n,e,r){return arguments.length===1?iw(t):new Rn(t,n,e,r??1)}function Rn(t,n,e,r){this.h=+t,this.c=+n,this.l=+e,this.opacity=+r}function Ld(t){if(isNaN(t.h))return new mn(t.l,0,0,t.opacity);var n=t.h*Sd;return new mn(t.l,Math.cos(n)*t.c,Math.sin(n)*t.c,t.opacity)}tr(Rn,io,Wr(Kn,{brighter(t){return new Rn(this.h,this.c,this.l+no*(t??1),this.opacity)},darker(t){return new Rn(this.h,this.c,this.l-no*(t??1),this.opacity)},rgb(){return Ld(this).rgb()}}));var Pd=-.14861,cu=1.78277,fu=-.29227,oo=-.90649,Ur=1.97294,xd=Ur*oo,_d=Ur*cu,Md=cu*fu-oo*Pd;function ow(t){if(t instanceof be)return new be(t.h,t.s,t.l,t.opacity);t instanceof bt||(t=uu(t));var n=t.r/255,e=t.g/255,r=t.b/255,i=(Md*r+xd*n-_d*e)/(Md+xd-_d),o=r-i,a=(Ur*(e-i)-fu*o)/oo,u=Math.sqrt(a*a+o*o)/(Ur*i*(1-i)),c=u?Math.atan2(a,o)*Ad-120:NaN;return new be(c<0?c+360:c,u,i,t.opacity)}function jt(t,n,e,r){return arguments.length===1?ow(t):new be(t,n,e,r??1)}function be(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}tr(be,jt,Wr(Kn,{brighter(t){return t=t==null?Je:Math.pow(Je,t),new be(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?we:Math.pow(we,t),new be(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=isNaN(this.h)?0:(this.h+120)*Sd,n=+this.l,e=isNaN(this.s)?0:this.s*n*(1-n),r=Math.cos(t),i=Math.sin(t);return new bt(255*(n+e*(Pd*r+cu*i)),255*(n+e*(fu*r+oo*i)),255*(n+e*(Ur*r)),this.opacity)}}));function Od(t,n,e,r,i){var o=t*t,a=o*t;return((1-3*t+3*o-a)*n+(4-6*o+3*a)*e+(1+3*t+3*o-3*a)*r+a*i)/6}function aw(t){var n=t.length-1;return function(e){var r=e<=0?e=0:e>=1?(e=1,n-1):Math.floor(e*n),i=t[r],o=t[r+1],a=r>0?t[r-1]:2*i-o,u=r<n-1?t[r+2]:2*o-i;return Od((e-r/n)*n,a,i,o,u)}}function uw(t){var n=t.length;return function(e){var r=Math.floor(((e%=1)<0?++e:e)*n),i=t[(r+n-1)%n],o=t[r%n],a=t[(r+1)%n],u=t[(r+2)%n];return Od((e-r/n)*n,i,o,a,u)}}var uo=t=>()=>t;function Fd(t,n){return function(e){return t+e*n}}function cw(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}function hu(t,n){var e=n-t;return e?Fd(t,e>180||e<-180?e-360*Math.round(e/360):e):uo(isNaN(t)?n:t)}function fw(t){return(t=+t)==1?wt:function(n,e){return e-n?cw(n,e,t):uo(isNaN(n)?e:n)}}function wt(t,n){var e=n-t;return e?Fd(t,e):uo(isNaN(t)?n:t)}var er=(function t(n){var e=fw(n);function r(i,o){var a=e((i=ve(i)).r,(o=ve(o)).r),u=e(i.g,o.g),c=e(i.b,o.b),f=wt(i.opacity,o.opacity);return function(s){return i.r=a(s),i.g=u(s),i.b=c(s),i.opacity=f(s),i+""}}return r.gamma=t,r})(1);function zd(t){return function(n){var e=n.length,r=new Array(e),i=new Array(e),o=new Array(e),a,u;for(a=0;a<e;++a)u=ve(n[a]),r[a]=u.r||0,i[a]=u.g||0,o[a]=u.b||0;return r=t(r),i=t(i),o=t(o),u.opacity=1,function(c){return u.r=r(c),u.g=i(c),u.b=o(c),u+""}}}var Bd=zd(aw),w7=zd(uw);function sw(t,n){n||(n=[]);var e=t?Math.min(n.length,t.length):0,r=n.slice(),i;return function(o){for(i=0;i<e;++i)r[i]=t[i]*(1-o)+n[i]*o;return r}}function lw(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function dw(t,n){var e=n?n.length:0,r=t?Math.min(e,t.length):0,i=new Array(r),o=new Array(e),a;for(a=0;a<r;++a)i[a]=rr(t[a],n[a]);for(;a<e;++a)o[a]=n[a];return function(u){for(a=0;a<r;++a)o[a]=i[a](u);return o}}function hw(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function Mt(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function pw(t,n){var e={},r={},i;(t===null||typeof t!="object")&&(t={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in t?e[i]=rr(t[i],n[i]):r[i]=n[i];return function(o){for(i in e)r[i]=e[i](o);return r}}var lu=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,su=new RegExp(lu.source,"g");function gw(t){return function(){return t}}function mw(t){return function(n){return t(n)+""}}function yw(t,n){var e=lu.lastIndex=su.lastIndex=0,r,i,o,a=-1,u=[],c=[];for(t=t+"",n=n+"";(r=lu.exec(t))&&(i=su.exec(n));)(o=i.index)>e&&(o=n.slice(e,o),u[a]?u[a]+=o:u[++a]=o),(r=r[0])===(i=i[0])?u[a]?u[a]+=i:u[++a]=i:(u[++a]=null,c.push({i:a,x:Mt(r,i)})),e=su.lastIndex;return e<n.length&&(o=n.slice(e),u[a]?u[a]+=o:u[++a]=o),u.length<2?c[0]?mw(c[0].x):gw(n):(n=c.length,function(f){for(var s=0,d;s<n;++s)u[(d=c[s]).i]=d.x(f);return u.join("")})}function rr(t,n){var e=typeof n,r;return n==null||e==="boolean"?uo(n):(e==="number"?Mt:e==="string"?(r=nr(n))?(n=r,er):yw:n instanceof nr?er:n instanceof Date?hw:lw(n)?sw:Array.isArray(n)?dw:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?pw:Mt)(t,n)}function Gr(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}var Dd=180/Math.PI,du={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function qd(t,n,e,r,i,o){var a,u,c;return(a=Math.sqrt(t*t+n*n))&&(t/=a,n/=a),(c=t*e+n*r)&&(e-=t*c,r-=n*c),(u=Math.sqrt(e*e+r*r))&&(e/=u,r/=u,c/=u),t*r<n*e&&(t=-t,n=-n,c=-c,a=-a),{translateX:i,translateY:o,rotate:Math.atan2(n,t)*Dd,skewX:Math.atan(c)*Dd,scaleX:a,scaleY:u}}var ao;function bw(t){let n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?du:qd(n.a,n.b,n.c,n.d,n.e,n.f)}function ww(t){return t==null||(ao||(ao=document.createElementNS("http://www.w3.org/2000/svg","g")),ao.setAttribute("transform",t),!(t=ao.transform.baseVal.consolidate()))?du:(t=t.matrix,qd(t.a,t.b,t.c,t.d,t.e,t.f))}function Yd(t,n,e,r){function i(f){return f.length?f.pop()+" ":""}function o(f,s,d,l,h,p){if(f!==d||s!==l){var m=h.push("translate(",null,n,null,e);p.push({i:m-4,x:Mt(f,d)},{i:m-2,x:Mt(s,l)})}else(d||l)&&h.push("translate("+d+n+l+e)}function a(f,s,d,l){f!==s?(f-s>180?s+=360:s-f>180&&(f+=360),l.push({i:d.push(i(d)+"rotate(",null,r)-2,x:Mt(f,s)})):s&&d.push(i(d)+"rotate("+s+r)}function u(f,s,d,l){f!==s?l.push({i:d.push(i(d)+"skewX(",null,r)-2,x:Mt(f,s)}):s&&d.push(i(d)+"skewX("+s+r)}function c(f,s,d,l,h,p){if(f!==d||s!==l){var m=h.push(i(h)+"scale(",null,",",null,")");p.push({i:m-4,x:Mt(f,d)},{i:m-2,x:Mt(s,l)})}else(d!==1||l!==1)&&h.push(i(h)+"scale("+d+","+l+")")}return function(f,s){var d=[],l=[];return f=t(f),s=t(s),o(f.translateX,f.translateY,s.translateX,s.translateY,d,l),a(f.rotate,s.rotate,d,l),u(f.skewX,s.skewX,d,l),c(f.scaleX,f.scaleY,s.scaleX,s.scaleY,d,l),f=s=null,function(h){for(var p=-1,m=l.length,v;++p<m;)d[(v=l[p]).i]=v.x(h);return d.join("")}}}var v7=Yd(bw,"px, ","px)","deg)"),x7=Yd(ww,", ",")",")"),vw=1e-12;function Id(t){return((t=Math.exp(t))+1/t)/2}function xw(t){return((t=Math.exp(t))-1/t)/2}function _w(t){return((t=Math.exp(2*t))-1)/(t+1)}var _7=(function t(n,e,r){function i(o,a){var u=o[0],c=o[1],f=o[2],s=a[0],d=a[1],l=a[2],h=s-u,p=d-c,m=h*h+p*p,v,x;if(m<vw)x=Math.log(l/f)/n,v=function(_){return[u+_*h,c+_*p,f*Math.exp(n*_*x)]};else{var w=Math.sqrt(m),M=(l*l-f*f+r*m)/(2*f*e*w),g=(l*l-f*f-r*m)/(2*l*e*w),b=Math.log(Math.sqrt(M*M+1)-M),y=Math.log(Math.sqrt(g*g+1)-g);x=(y-b)/n,v=function(_){var $=_*x,S=Id(b),C=f/(e*w)*(S*_w(n*$+b)-xw(b));return[u+C*h,c+C*p,f*S/Id(n*$+b)]}}return v.duration=Math.abs(x)*1e3*n/Math.SQRT2,v}return i.rho=function(o){var a=Math.max(.001,+o),u=a*a,c=u*u;return t(a,u,c)},i})(Math.SQRT2,2,4);function Ud(t){return function(n,e){var r=t((n=eo(n)).h,(e=eo(e)).h),i=wt(n.s,e.s),o=wt(n.l,e.l),a=wt(n.opacity,e.opacity);return function(u){return n.h=r(u),n.s=i(u),n.l=o(u),n.opacity=a(u),n+""}}}var Wd=Ud(hu),M7=Ud(wt);function Gd(t,n){var e=wt((t=ro(t)).l,(n=ro(n)).l),r=wt(t.a,n.a),i=wt(t.b,n.b),o=wt(t.opacity,n.opacity);return function(a){return t.l=e(a),t.a=r(a),t.b=i(a),t.opacity=o(a),t+""}}function Hd(t){return function(n,e){var r=t((n=io(n)).h,(e=io(e)).h),i=wt(n.c,e.c),o=wt(n.l,e.l),a=wt(n.opacity,e.opacity);return function(u){return n.h=r(u),n.c=i(u),n.l=o(u),n.opacity=a(u),n+""}}}var Xd=Hd(hu),$7=Hd(wt);function Vd(t){return(function n(e){e=+e;function r(i,o){var a=t((i=jt(i)).h,(o=jt(o)).h),u=wt(i.s,o.s),c=wt(i.l,o.l),f=wt(i.opacity,o.opacity);return function(s){return i.h=a(s),i.s=u(s),i.l=c(Math.pow(s,e)),i.opacity=f(s),i+""}}return r.gamma=n,r})(1)}var S7=Vd(hu),co=Vd(wt);function ir(t,n){n===void 0&&(n=t,t=rr);for(var e=0,r=n.length-1,i=n[0],o=new Array(r<0?0:r);e<r;)o[e]=t(i,i=n[++e]);return function(a){var u=Math.max(0,Math.min(r-1,Math.floor(a*=r)));return o[u](a-u)}}function Gt(t,n){for(var e=new Array(n),r=0;r<n;++r)e[r]=t(r/(n-1));return e}var Hr=Math.PI,pu=2*Hr,xe=1e-6,Mw=pu-xe;function jd(t){this._+=t[0];for(let n=1,e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function $w(t){let n=Math.floor(t);if(!(n>=0))throw new Error(`invalid digits: ${t}`);if(n>15)return jd;let e=10**n;return function(r){this._+=r[0];for(let i=1,o=r.length;i<o;++i)this._+=Math.round(arguments[i]*e)/e+r[i]}}function Zd(t,n,e,r){return t===e&&n===r}function Sw(t){let n=Math.floor(t);if(!(n<=15))return Zd;let e=10**n,r=function(i){return Math.round(i*e)};return function(i,o,a,u){return r(i)===r(a)&&r(o)===r(u)}}var _e=class{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?jd:$w(n),this._equal=n==null?Zd:Sw(n)}moveTo(n,e){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,e){this._append`L${this._x1=+n},${this._y1=+e}`}quadraticCurveTo(n,e,r,i){this._append`Q${+n},${+e},${this._x1=+r},${this._y1=+i}`}bezierCurveTo(n,e,r,i,o,a){this._append`C${+n},${+e},${+r},${+i},${this._x1=+o},${this._y1=+a}`}arcTo(n,e,r,i,o){if(n=+n,e=+e,r=+r,i=+i,o=+o,o<0)throw new Error(`negative radius: ${o}`);let a=this._x1,u=this._y1,c=r-n,f=i-e,s=a-n,d=u-e,l=s*s+d*d;if(this._x1===null)this._append`M${this._x1=n},${this._y1=e}`;else if(l>xe)if(!(Math.abs(d*c-f*s)>xe)||!o)this._append`L${this._x1=n},${this._y1=e}`;else{let h=r-a,p=i-u,m=c*c+f*f,v=h*h+p*p,x=Math.sqrt(m),w=Math.sqrt(l),M=o*Math.tan((Hr-Math.acos((m+l-v)/(2*x*w)))/2),g=M/w,b=M/x;Math.abs(g-1)>xe&&this._append`L${n+g*s},${e+g*d}`,this._append`A${o},${o},0,0,${+(d*h>s*p)},${this._x1=n+b*c},${this._y1=e+b*f}`}}arc(n,e,r,i,o,a){if(n=+n,e=+e,r=+r,a=!!a,r<0)throw new Error(`negative radius: ${r}`);let u=r*Math.cos(i),c=r*Math.sin(i),f=n+u,s=e+c,d=1^a,l=a?i-o:o-i;if(this._x1===null?this._append`M${f},${s}`:(Math.abs(this._x1-f)>xe||Math.abs(this._y1-s)>xe)&&this._append`L${f},${s}`,!!r){if(l<0&&(l=l%pu+pu),l>Mw)this._append`A${r},${r},0,1,${d},${n-u},${e-c}A${r},${r},0,1,${d},${this._x1=f},${this._y1=s}`;else if(l>xe){let h=n+r*Math.cos(o),p=e+r*Math.sin(o);if(l>=Hr&&this._equal(f,s,h,p)){l/=2;let m=i+l;this._append`A${r},${r},0,${+(l>=Hr)},${d},${n+r*Math.cos(m)},${e+r*Math.sin(m)}`}this._append`A${r},${r},0,${+(l>=Hr)},${d},${this._x1=h},${this._y1=p}`}}}rect(n,e,r,i){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}};function Aw(){return new _e}Aw.prototype=_e.prototype;function Ln(t=3){return new _e(+t)}function Tw(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function so(t,n){if(!isFinite(t)||t===0)return null;var e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"),r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function or(t){return t=so(Math.abs(t)),t?t[1]:NaN}function kw(t,n){return function(e,r){for(var i=e.length,o=[],a=0,u=t[0],c=0;i>0&&u>0&&(c+u+1>r&&(u=Math.max(1,r-c)),o.push(e.substring(i-=u,i+u)),!((c+=u+1)>r));)u=t[a=(a+1)%t.length];return o.reverse().join(n)}}function Cw(t){return function(n){return n.replace(/[0-9]/g,function(e){return t[+e]})}}var Ew=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function ar(t){if(!(n=Ew.exec(t)))throw new Error("invalid format: "+t);var n;return new gu({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}ar.prototype=gu.prototype;function gu(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}gu.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function Nw(t){t:for(var n=t.length,e=1,r=-1,i;e<n;++e)switch(t[e]){case".":r=i=e;break;case"0":r===0&&(r=e),i=e;break;default:if(!+t[e])break t;r>0&&(r=0);break}return r>0?t.slice(0,r)+t.slice(i+1):t}var lo;function Rw(t,n){var e=so(t,n);if(!e)return lo=void 0,t.toPrecision(n);var r=e[0],i=e[1],o=i-(lo=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,a=r.length;return o===a?r:o>a?r+new Array(o-a+1).join("0"):o>0?r.slice(0,o)+"."+r.slice(o):"0."+new Array(1-o).join("0")+so(t,Math.max(0,n+o-1))[0]}function Kd(t,n){var e=so(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}var Qd={"%":(t,n)=>(t*100).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:Tw,e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>Kd(t*100,n),r:Kd,s:Rw,X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Jd(t){return t}var th=Array.prototype.map,nh=["y","z","a","f","p","n","\xB5","m","","k","M","G","T","P","E","Z","Y"];function Lw(t){var n=t.grouping===void 0||t.thousands===void 0?Jd:kw(th.call(t.grouping,Number),t.thousands+""),e=t.currency===void 0?"":t.currency[0]+"",r=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",o=t.numerals===void 0?Jd:Cw(th.call(t.numerals,String)),a=t.percent===void 0?"%":t.percent+"",u=t.minus===void 0?"\u2212":t.minus+"",c=t.nan===void 0?"NaN":t.nan+"";function f(d,l){d=ar(d);var h=d.fill,p=d.align,m=d.sign,v=d.symbol,x=d.zero,w=d.width,M=d.comma,g=d.precision,b=d.trim,y=d.type;y==="n"?(M=!0,y="g"):Qd[y]||(g===void 0&&(g=12),b=!0,y="g"),(x||h==="0"&&p==="=")&&(x=!0,h="0",p="=");var _=(l&&l.prefix!==void 0?l.prefix:"")+(v==="$"?e:v==="#"&&/[boxX]/.test(y)?"0"+y.toLowerCase():""),$=(v==="$"?r:/[%p]/.test(y)?a:"")+(l&&l.suffix!==void 0?l.suffix:""),S=Qd[y],C=/[defgprs%]/.test(y);g=g===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,g)):Math.max(0,Math.min(20,g));function A(k){var D=_,P=$,T,O,R;if(y==="c")P=S(k)+P,k="";else{k=+k;var U=k<0||1/k<0;if(k=isNaN(k)?c:S(Math.abs(k),g),b&&(k=Nw(k)),U&&+k==0&&m!=="+"&&(U=!1),D=(U?m==="("?m:u:m==="-"||m==="("?"":m)+D,P=(y==="s"&&!isNaN(k)&&lo!==void 0?nh[8+lo/3]:"")+P+(U&&m==="("?")":""),C){for(T=-1,O=k.length;++T<O;)if(R=k.charCodeAt(T),48>R||R>57){P=(R===46?i+k.slice(T+1):k.slice(T))+P,k=k.slice(0,T);break}}}M&&!x&&(k=n(k,1/0));var L=D.length+k.length+P.length,I=L<w?new Array(w-L+1).join(h):"";switch(M&&x&&(k=n(I+k,I.length?w-P.length:1/0),I=""),p){case"<":k=D+k+P+I;break;case"=":k=D+I+k+P;break;case"^":k=I.slice(0,L=I.length>>1)+D+k+P+I.slice(L);break;default:k=I+D+k+P;break}return o(k)}return A.toString=function(){return d+""},A}function s(d,l){var h=Math.max(-8,Math.min(8,Math.floor(or(l)/3)))*3,p=Math.pow(10,-h),m=f((d=ar(d),d.type="f",d),{suffix:nh[8+h/3]});return function(v){return m(p*v)}}return{format:f,formatPrefix:s}}var fo,Qn,mu;Pw({thousands:",",grouping:[3],currency:["$",""]});function Pw(t){return fo=Lw(t),Qn=fo.format,mu=fo.formatPrefix,fo}function eh(t){return Math.max(0,-or(Math.abs(t)))}function rh(t,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(or(n)/3)))*3-or(Math.abs(t)))}function ih(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,or(n)-or(t))+1}var V=1e-6,Mh=1e-12,tt=Math.PI,dt=tt/2,oh=tt/4,Ht=tt*2,Et=180/tt,lt=tt/180,ot=Math.abs,sr=Math.atan,Dn=Math.atan2,Q=Math.cos;var $h=Math.exp;var wo=Math.log,yu=Math.pow,j=Math.sin,Kt=Math.sign||function(t){return t>0?1:t<0?-1:0},It=Math.sqrt,Ou=Math.tan;function Sh(t){return t>1?0:t<-1?tt:Math.acos(t)}function Jt(t){return t>1?dt:t<-1?-dt:Math.asin(t)}function Qt(){}function vo(t,n){t&&uh.hasOwnProperty(t.type)&&uh[t.type](t,n)}var ah={Feature:function(t,n){vo(t.geometry,n)},FeatureCollection:function(t,n){for(var e=t.features,r=-1,i=e.length;++r<i;)vo(e[r].geometry,n)}},uh={Sphere:function(t,n){n.sphere()},Point:function(t,n){t=t.coordinates,n.point(t[0],t[1],t[2])},MultiPoint:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)t=e[r],n.point(t[0],t[1],t[2])},LineString:function(t,n){_u(t.coordinates,n,0)},MultiLineString:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)_u(e[r],n,0)},Polygon:function(t,n){ch(t.coordinates,n)},MultiPolygon:function(t,n){for(var e=t.coordinates,r=-1,i=e.length;++r<i;)ch(e[r],n)},GeometryCollection:function(t,n){for(var e=t.geometries,r=-1,i=e.length;++r<i;)vo(e[r],n)}};function _u(t,n,e){var r=-1,i=t.length-e,o;for(n.lineStart();++r<i;)o=t[r],n.point(o[0],o[1],o[2]);n.lineEnd()}function ch(t,n){var e=-1,r=t.length;for(n.polygonStart();++e<r;)_u(t[e],n,1);n.polygonEnd()}function Jn(t,n){t&&ah.hasOwnProperty(t.type)?ah[t.type](t,n):vo(t,n)}var E7=new Vt,N7=new Vt;function Mu(t){return[Dn(t[1],t[0]),Jt(t[2])]}function cr(t){var n=t[0],e=t[1],r=Q(e);return[r*Q(n),r*j(n),j(e)]}function ho(t,n){return t[0]*n[0]+t[1]*n[1]+t[2]*n[2]}function xo(t,n){return[t[1]*n[2]-t[2]*n[1],t[2]*n[0]-t[0]*n[2],t[0]*n[1]-t[1]*n[0]]}function bu(t,n){t[0]+=n[0],t[1]+=n[1],t[2]+=n[2]}function po(t,n){return[t[0]*n,t[1]*n,t[2]*n]}function $u(t){var n=It(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=n,t[1]/=n,t[2]/=n}function Su(t,n){function e(r,i){return r=t(r,i),n(r[0],r[1])}return t.invert&&n.invert&&(e.invert=function(r,i){return r=n.invert(r,i),r&&t.invert(r[0],r[1])}),e}function Au(t,n){return ot(t)>tt&&(t-=Math.round(t/Ht)*Ht),[t,n]}Au.invert=Au;function Ah(t,n,e){return(t%=Ht)?n||e?Su(sh(t),lh(n,e)):sh(t):n||e?lh(n,e):Au}function fh(t){return function(n,e){return n+=t,ot(n)>tt&&(n-=Math.round(n/Ht)*Ht),[n,e]}}function sh(t){var n=fh(t);return n.invert=fh(-t),n}function lh(t,n){var e=Q(t),r=j(t),i=Q(n),o=j(n);function a(u,c){var f=Q(c),s=Q(u)*f,d=j(u)*f,l=j(c),h=l*e+s*r;return[Dn(d*i-h*o,s*e-l*r),Jt(h*i+d*o)]}return a.invert=function(u,c){var f=Q(c),s=Q(u)*f,d=j(u)*f,l=j(c),h=l*i-d*o;return[Dn(d*i+l*o,s*e+h*r),Jt(h*e-s*r)]},a}function Dw(t){t=Ah(t[0]*lt,t[1]*lt,t.length>2?t[2]*lt:0);function n(e){return e=t(e[0]*lt,e[1]*lt),e[0]*=Et,e[1]*=Et,e}return n.invert=function(e){return e=t.invert(e[0]*lt,e[1]*lt),e[0]*=Et,e[1]*=Et,e},n}function Iw(t,n,e,r,i,o){if(e){var a=Q(n),u=j(n),c=r*e;i==null?(i=n+r*Ht,o=n-c/2):(i=dh(a,i),o=dh(a,o),(r>0?i<o:i>o)&&(i+=r*Ht));for(var f,s=i;r>0?s>o:s<o;s-=c)f=Mu([a,-u*Q(s),-u*j(s)]),t.point(f[0],f[1])}}function dh(t,n){n=cr(n),n[0]-=t,$u(n);var e=Sh(-n[1]);return((-n[2]<0?-e:e)+Ht-V)%Ht}function Th(){var t=[],n;return{point:function(e,r,i){n.push([e,r,i])},lineStart:function(){t.push(n=[])},lineEnd:Qt,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var e=t;return t=[],n=null,e}}}function bo(t,n){return ot(t[0]-n[0])<V&&ot(t[1]-n[1])<V}function go(t,n,e,r){this.x=t,this.z=n,this.o=e,this.e=r,this.v=!1,this.n=this.p=null}function kh(t,n,e,r,i){var o=[],a=[],u,c;if(t.forEach(function(p){if(!((m=p.length-1)<=0)){var m,v=p[0],x=p[m],w;if(bo(v,x)){if(!v[2]&&!x[2]){for(i.lineStart(),u=0;u<m;++u)i.point((v=p[u])[0],v[1]);i.lineEnd();return}x[0]+=2*V}o.push(w=new go(v,p,null,!0)),a.push(w.o=new go(v,null,w,!1)),o.push(w=new go(x,p,null,!1)),a.push(w.o=new go(x,null,w,!0))}}),!!o.length){for(a.sort(n),hh(o),hh(a),u=0,c=a.length;u<c;++u)a[u].e=e=!e;for(var f=o[0],s,d;;){for(var l=f,h=!0;l.v;)if((l=l.n)===f)return;s=l.z,i.lineStart();do{if(l.v=l.o.v=!0,l.e){if(h)for(u=0,c=s.length;u<c;++u)i.point((d=s[u])[0],d[1]);else r(l.x,l.n.x,1,i);l=l.n}else{if(h)for(s=l.p.z,u=s.length-1;u>=0;--u)i.point((d=s[u])[0],d[1]);else r(l.x,l.p.x,-1,i);l=l.p}l=l.o,s=l.z,h=!h}while(!l.v);i.lineEnd()}}}function hh(t){if(n=t.length){for(var n,e=0,r=t[0],i;++e<n;)r.n=i=t[e],i.p=r,r=i;r.n=i=t[0],i.p=r}}function wu(t){return ot(t[0])<=tt?t[0]:Kt(t[0])*((ot(t[0])+tt)%Ht-tt)}function Ow(t,n){var e=wu(n),r=n[1],i=j(r),o=[j(e),-Q(e),0],a=0,u=0,c=new Vt;i===1?r=dt+V:i===-1&&(r=-dt-V);for(var f=0,s=t.length;f<s;++f)if(l=(d=t[f]).length)for(var d,l,h=d[l-1],p=wu(h),m=h[1]/2+oh,v=j(m),x=Q(m),w=0;w<l;++w,p=g,v=y,x=_,h=M){var M=d[w],g=wu(M),b=M[1]/2+oh,y=j(b),_=Q(b),$=g-p,S=$>=0?1:-1,C=S*$,A=C>tt,k=v*y;if(c.add(Dn(k*S*j(C),x*_+k*Q(C))),a+=A?$+S*Ht:$,A^p>=e^g>=e){var D=xo(cr(h),cr(M));$u(D);var P=xo(o,D);$u(P);var T=(A^$>=0?-1:1)*Jt(P[2]);(r>T||r===T&&(D[0]||D[1]))&&(u+=A^$>=0?1:-1)}}return(a<-V||a<V&&c<-Mh)^u&1}function Ch(t,n,e,r){return function(i){var o=n(i),a=Th(),u=n(a),c=!1,f,s,d,l={point:h,lineStart:m,lineEnd:v,polygonStart:function(){l.point=x,l.lineStart=w,l.lineEnd=M,s=[],f=[]},polygonEnd:function(){l.point=h,l.lineStart=m,l.lineEnd=v,s=ja(s);var g=Ow(f,r);s.length?(c||(i.polygonStart(),c=!0),kh(s,zw,g,e,i)):g&&(c||(i.polygonStart(),c=!0),i.lineStart(),e(null,null,1,i),i.lineEnd()),c&&(i.polygonEnd(),c=!1),s=f=null},sphere:function(){i.polygonStart(),i.lineStart(),e(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function h(g,b){t(g,b)&&i.point(g,b)}function p(g,b){o.point(g,b)}function m(){l.point=p,o.lineStart()}function v(){l.point=h,o.lineEnd()}function x(g,b){d.push([g,b]),u.point(g,b)}function w(){u.lineStart(),d=[]}function M(){x(d[0][0],d[0][1]),u.lineEnd();var g=u.clean(),b=a.result(),y,_=b.length,$,S,C;if(d.pop(),f.push(d),d=null,!!_){if(g&1){if(S=b[0],($=S.length-1)>0){for(c||(i.polygonStart(),c=!0),i.lineStart(),y=0;y<$;++y)i.point((C=S[y])[0],C[1]);i.lineEnd()}return}_>1&&g&2&&b.push(b.pop().concat(b.shift())),s.push(b.filter(Fw))}}return l}}function Fw(t){return t.length>1}function zw(t,n){return((t=t.x)[0]<0?t[1]-dt-V:dt-t[1])-((n=n.x)[0]<0?n[1]-dt-V:dt-n[1])}var ph=Ch(function(){return!0},Bw,Yw,[-tt,-dt]);function Bw(t){var n=NaN,e=NaN,r=NaN,i;return{lineStart:function(){t.lineStart(),i=1},point:function(o,a){var u=o>0?tt:-tt,c=ot(o-n);ot(c-tt)<V?(t.point(n,e=(e+a)/2>0?dt:-dt),t.point(r,e),t.lineEnd(),t.lineStart(),t.point(u,e),t.point(o,e),i=0):r!==u&&c>=tt&&(ot(n-r)<V&&(n-=r*V),ot(o-u)<V&&(o-=u*V),e=qw(n,e,o,a),t.point(r,e),t.lineEnd(),t.lineStart(),t.point(u,e),i=0),t.point(n=o,e=a),r=u},lineEnd:function(){t.lineEnd(),n=e=NaN},clean:function(){return 2-i}}}function qw(t,n,e,r){var i,o,a=j(t-e);return ot(a)>V?sr((j(n)*(o=Q(r))*j(e)-j(r)*(i=Q(n))*j(t))/(i*o*a)):(n+r)/2}function Yw(t,n,e,r){var i;if(t==null)i=e*dt,r.point(-tt,i),r.point(0,i),r.point(tt,i),r.point(tt,0),r.point(tt,-i),r.point(0,-i),r.point(-tt,-i),r.point(-tt,0),r.point(-tt,i);else if(ot(t[0]-n[0])>V){var o=t[0]<n[0]?tt:-tt;i=e*o/2,r.point(-o,i),r.point(0,i),r.point(o,i)}else r.point(n[0],n[1])}function Uw(t){var n=Q(t),e=2*lt,r=n>0,i=ot(n)>V;function o(s,d,l,h){Iw(h,t,e,l,s,d)}function a(s,d){return Q(s)*Q(d)>n}function u(s){var d,l,h,p,m;return{lineStart:function(){p=h=!1,m=1},point:function(v,x){var w=[v,x],M,g=a(v,x),b=r?g?0:f(v,x):g?f(v+(v<0?tt:-tt),x):0;if(!d&&(p=h=g)&&s.lineStart(),g!==h&&(M=c(d,w),(!M||bo(d,M)||bo(w,M))&&(w[2]=1)),g!==h)m=0,g?(s.lineStart(),M=c(w,d),s.point(M[0],M[1])):(M=c(d,w),s.point(M[0],M[1],2),s.lineEnd()),d=M;else if(i&&d&&r^g){var y;!(b&l)&&(y=c(w,d,!0))&&(m=0,r?(s.lineStart(),s.point(y[0][0],y[0][1]),s.point(y[1][0],y[1][1]),s.lineEnd()):(s.point(y[1][0],y[1][1]),s.lineEnd(),s.lineStart(),s.point(y[0][0],y[0][1],3)))}g&&(!d||!bo(d,w))&&s.point(w[0],w[1]),d=w,h=g,l=b},lineEnd:function(){h&&s.lineEnd(),d=null},clean:function(){return m|(p&&h)<<1}}}function c(s,d,l){var h=cr(s),p=cr(d),m=[1,0,0],v=xo(h,p),x=ho(v,v),w=v[0],M=x-w*w;if(!M)return!l&&s;var g=n*x/M,b=-n*w/M,y=xo(m,v),_=po(m,g),$=po(v,b);bu(_,$);var S=y,C=ho(_,S),A=ho(S,S),k=C*C-A*(ho(_,_)-1);if(!(k<0)){var D=It(k),P=po(S,(-C-D)/A);if(bu(P,_),P=Mu(P),!l)return P;var T=s[0],O=d[0],R=s[1],U=d[1],L;O<T&&(L=T,T=O,O=L);var I=O-T,q=ot(I-tt)<V,W=q||I<V;if(!q&&U<R&&(L=R,R=U,U=L),W?q?R+U>0^P[1]<(ot(P[0]-T)<V?R:U):R<=P[1]&&P[1]<=U:I>tt^(T<=P[0]&&P[0]<=O)){var z=po(S,(-C+D)/A);return bu(z,_),[P,Mu(z)]}}}function f(s,d){var l=r?t:tt-t,h=0;return s<-l?h|=1:s>l&&(h|=2),d<-l?h|=4:d>l&&(h|=8),h}return Ch(a,u,o,r?[0,-t]:[-tt,t-tt])}function Ww(t,n,e,r,i,o){var a=t[0],u=t[1],c=n[0],f=n[1],s=0,d=1,l=c-a,h=f-u,p;if(p=e-a,!(!l&&p>0)){if(p/=l,l<0){if(p<s)return;p<d&&(d=p)}else if(l>0){if(p>d)return;p>s&&(s=p)}if(p=i-a,!(!l&&p<0)){if(p/=l,l<0){if(p>d)return;p>s&&(s=p)}else if(l>0){if(p<s)return;p<d&&(d=p)}if(p=r-u,!(!h&&p>0)){if(p/=h,h<0){if(p<s)return;p<d&&(d=p)}else if(h>0){if(p>d)return;p>s&&(s=p)}if(p=o-u,!(!h&&p<0)){if(p/=h,h<0){if(p>d)return;p>s&&(s=p)}else if(h>0){if(p<s)return;p<d&&(d=p)}return s>0&&(t[0]=a+s*l,t[1]=u+s*h),d<1&&(n[0]=a+d*l,n[1]=u+d*h),!0}}}}}var Xr=1e9,mo=-Xr;function Fu(t,n,e,r){function i(f,s){return t<=f&&f<=e&&n<=s&&s<=r}function o(f,s,d,l){var h=0,p=0;if(f==null||(h=a(f,d))!==(p=a(s,d))||c(f,s)<0^d>0)do l.point(h===0||h===3?t:e,h>1?r:n);while((h=(h+d+4)%4)!==p);else l.point(s[0],s[1])}function a(f,s){return ot(f[0]-t)<V?s>0?0:3:ot(f[0]-e)<V?s>0?2:1:ot(f[1]-n)<V?s>0?1:0:s>0?3:2}function u(f,s){return c(f.x,s.x)}function c(f,s){var d=a(f,1),l=a(s,1);return d!==l?d-l:d===0?s[1]-f[1]:d===1?f[0]-s[0]:d===2?f[1]-s[1]:s[0]-f[0]}return function(f){var s=f,d=Th(),l,h,p,m,v,x,w,M,g,b,y,_={point:$,lineStart:k,lineEnd:D,polygonStart:C,polygonEnd:A};function $(T,O){i(T,O)&&s.point(T,O)}function S(){for(var T=0,O=0,R=h.length;O<R;++O)for(var U=h[O],L=1,I=U.length,q=U[0],W,z,K=q[0],et=q[1];L<I;++L)W=K,z=et,q=U[L],K=q[0],et=q[1],z<=r?et>r&&(K-W)*(r-z)>(et-z)*(t-W)&&++T:et<=r&&(K-W)*(r-z)<(et-z)*(t-W)&&--T;return T}function C(){s=d,l=[],h=[],y=!0}function A(){var T=S(),O=y&&T,R=(l=ja(l)).length;(O||R)&&(f.polygonStart(),O&&(f.lineStart(),o(null,null,1,f),f.lineEnd()),R&&kh(l,u,T,o,f),f.polygonEnd()),s=f,l=h=p=null}function k(){_.point=P,h&&h.push(p=[]),b=!0,g=!1,w=M=NaN}function D(){l&&(P(m,v),x&&g&&d.rejoin(),l.push(d.result())),_.point=$,g&&s.lineEnd()}function P(T,O){var R=i(T,O);if(h&&p.push([T,O]),b)m=T,v=O,x=R,b=!1,R&&(s.lineStart(),s.point(T,O));else if(R&&g)s.point(T,O);else{var U=[w=Math.max(mo,Math.min(Xr,w)),M=Math.max(mo,Math.min(Xr,M))],L=[T=Math.max(mo,Math.min(Xr,T)),O=Math.max(mo,Math.min(Xr,O))];Ww(U,L,t,n,e,r)?(g||(s.lineStart(),s.point(U[0],U[1])),s.point(L[0],L[1]),R||s.lineEnd(),y=!1):R&&(s.lineStart(),s.point(T,O),y=!1)}w=T,M=O,g=R}return _}}var Tu=t=>t,vu=new Vt,ku=new Vt,Eh,Nh,Cu,Eu,Pn={point:Qt,lineStart:Qt,lineEnd:Qt,polygonStart:function(){Pn.lineStart=Gw,Pn.lineEnd=Xw},polygonEnd:function(){Pn.lineStart=Pn.lineEnd=Pn.point=Qt,vu.add(ot(ku)),ku=new Vt},result:function(){var t=vu/2;return vu=new Vt,t}};function Gw(){Pn.point=Hw}function Hw(t,n){Pn.point=Rh,Eh=Cu=t,Nh=Eu=n}function Rh(t,n){ku.add(Eu*t-Cu*n),Cu=t,Eu=n}function Xw(){Rh(Eh,Nh)}var fr=1/0,_o=fr,ei=-fr,Mo=ei,$o={point:Vw,lineStart:Qt,lineEnd:Qt,polygonStart:Qt,polygonEnd:Qt,result:function(){var t=[[fr,_o],[ei,Mo]];return ei=Mo=-(_o=fr=1/0),t}};function Vw(t,n){t<fr&&(fr=t),t>ei&&(ei=t),n<_o&&(_o=n),n>Mo&&(Mo=n)}var Nu=0,Ru=0,Vr=0,So=0,Ao=0,ur=0,Lu=0,Pu=0,jr=0,Lh,Ph,yn,bn,Zt={point:Me,lineStart:gh,lineEnd:mh,polygonStart:function(){Zt.lineStart=Kw,Zt.lineEnd=Qw},polygonEnd:function(){Zt.point=Me,Zt.lineStart=gh,Zt.lineEnd=mh},result:function(){var t=jr?[Lu/jr,Pu/jr]:ur?[So/ur,Ao/ur]:Vr?[Nu/Vr,Ru/Vr]:[NaN,NaN];return Nu=Ru=Vr=So=Ao=ur=Lu=Pu=jr=0,t}};function Me(t,n){Nu+=t,Ru+=n,++Vr}function gh(){Zt.point=jw}function jw(t,n){Zt.point=Zw,Me(yn=t,bn=n)}function Zw(t,n){var e=t-yn,r=n-bn,i=It(e*e+r*r);So+=i*(yn+t)/2,Ao+=i*(bn+n)/2,ur+=i,Me(yn=t,bn=n)}function mh(){Zt.point=Me}function Kw(){Zt.point=Jw}function Qw(){Dh(Lh,Ph)}function Jw(t,n){Zt.point=Dh,Me(Lh=yn=t,Ph=bn=n)}function Dh(t,n){var e=t-yn,r=n-bn,i=It(e*e+r*r);So+=i*(yn+t)/2,Ao+=i*(bn+n)/2,ur+=i,i=bn*t-yn*n,Lu+=i*(yn+t),Pu+=i*(bn+n),jr+=i*3,Me(yn=t,bn=n)}function Ih(t){this._context=t}Ih.prototype={_radius:4.5,pointRadius:function(t){return this._radius=t,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(t,n){switch(this._point){case 0:{this._context.moveTo(t,n),this._point=1;break}case 1:{this._context.lineTo(t,n);break}default:{this._context.moveTo(t+this._radius,n),this._context.arc(t,n,this._radius,0,Ht);break}}},result:Qt};var Du=new Vt,xu,Oh,Fh,Zr,Kr,ri={point:Qt,lineStart:function(){ri.point=tv},lineEnd:function(){xu&&zh(Oh,Fh),ri.point=Qt},polygonStart:function(){xu=!0},polygonEnd:function(){xu=null},result:function(){var t=+Du;return Du=new Vt,t}};function tv(t,n){ri.point=zh,Oh=Zr=t,Fh=Kr=n}function zh(t,n){Zr-=t,Kr-=n,Du.add(It(Zr*Zr+Kr*Kr)),Zr=t,Kr=n}var yh,To,bh,wh,ko=class{constructor(n){this._append=n==null?Bh:nv(n),this._radius=4.5,this._=""}pointRadius(n){return this._radius=+n,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(n,e){switch(this._point){case 0:{this._append`M${n},${e}`,this._point=1;break}case 1:{this._append`L${n},${e}`;break}default:{if(this._append`M${n},${e}`,this._radius!==bh||this._append!==To){let r=this._radius,i=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`,bh=r,To=this._append,wh=this._,this._=i}this._+=wh;break}}}result(){let n=this._;return this._="",n.length?n:null}};function Bh(t){let n=1;this._+=t[0];for(let e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function nv(t){let n=Math.floor(t);if(!(n>=0))throw new RangeError(`invalid digits: ${t}`);if(n>15)return Bh;if(n!==yh){let e=10**n;yh=n,To=function(i){let o=1;this._+=i[0];for(let a=i.length;o<a;++o)this._+=Math.round(arguments[o]*e)/e+i[o]}}return To}function No(t,n){let e=3,r=4.5,i,o;function a(u){return u&&(typeof r=="function"&&o.pointRadius(+r.apply(this,arguments)),Jn(u,i(o))),o.result()}return a.area=function(u){return Jn(u,i(Pn)),Pn.result()},a.measure=function(u){return Jn(u,i(ri)),ri.result()},a.bounds=function(u){return Jn(u,i($o)),$o.result()},a.centroid=function(u){return Jn(u,i(Zt)),Zt.result()},a.projection=function(u){return arguments.length?(i=u==null?(t=null,Tu):(t=u).stream,a):t},a.context=function(u){return arguments.length?(o=u==null?(n=null,new ko(e)):new Ih(n=u),typeof r!="function"&&o.pointRadius(r),a):n},a.pointRadius=function(u){return arguments.length?(r=typeof u=="function"?u:(o.pointRadius(+u),+u),a):r},a.digits=function(u){if(!arguments.length)return e;if(u==null)e=null;else{let c=Math.floor(u);if(!(c>=0))throw new RangeError(`invalid digits: ${u}`);e=c}return n===null&&(o=new ko(e)),a},a.projection(t).digits(e).context(n)}function oi(t){return{stream:Ro(t)}}function Ro(t){return function(n){var e=new Iu;for(var r in t)e[r]=t[r];return e.stream=n,e}}function Iu(){}Iu.prototype={constructor:Iu,point:function(t,n){this.stream.point(t,n)},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 zu(t,n,e){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),r!=null&&t.clipExtent(null),Jn(e,t.stream($o)),n($o.result()),r!=null&&t.clipExtent(r),t}function Bu(t,n,e){return zu(t,function(r){var i=n[1][0]-n[0][0],o=n[1][1]-n[0][1],a=Math.min(i/(r[1][0]-r[0][0]),o/(r[1][1]-r[0][1])),u=+n[0][0]+(i-a*(r[1][0]+r[0][0]))/2,c=+n[0][1]+(o-a*(r[1][1]+r[0][1]))/2;t.scale(150*a).translate([u,c])},e)}function qh(t,n,e){return Bu(t,[[0,0],n],e)}function Yh(t,n,e){return zu(t,function(r){var i=+n,o=i/(r[1][0]-r[0][0]),a=(i-o*(r[1][0]+r[0][0]))/2,u=-o*r[0][1];t.scale(150*o).translate([a,u])},e)}function Uh(t,n,e){return zu(t,function(r){var i=+n,o=i/(r[1][1]-r[0][1]),a=-o*r[0][0],u=(i-o*(r[1][1]+r[0][1]))/2;t.scale(150*o).translate([a,u])},e)}var vh=16,ev=Q(30*lt);function xh(t,n){return+n?iv(t,n):rv(t)}function rv(t){return Ro({point:function(n,e){n=t(n,e),this.stream.point(n[0],n[1])}})}function iv(t,n){function e(r,i,o,a,u,c,f,s,d,l,h,p,m,v){var x=f-r,w=s-i,M=x*x+w*w;if(M>4*n&&m--){var g=a+l,b=u+h,y=c+p,_=It(g*g+b*b+y*y),$=Jt(y/=_),S=ot(ot(y)-1)<V||ot(o-d)<V?(o+d)/2:Dn(b,g),C=t(S,$),A=C[0],k=C[1],D=A-r,P=k-i,T=w*D-x*P;(T*T/M>n||ot((x*D+w*P)/M-.5)>.3||a*l+u*h+c*p<ev)&&(e(r,i,o,a,u,c,A,k,S,g/=_,b/=_,y,m,v),v.point(A,k),e(A,k,S,g,b,y,f,s,d,l,h,p,m,v))}}return function(r){var i,o,a,u,c,f,s,d,l,h,p,m,v={point:x,lineStart:w,lineEnd:g,polygonStart:function(){r.polygonStart(),v.lineStart=b},polygonEnd:function(){r.polygonEnd(),v.lineStart=w}};function x($,S){$=t($,S),r.point($[0],$[1])}function w(){d=NaN,v.point=M,r.lineStart()}function M($,S){var C=cr([$,S]),A=t($,S);e(d,l,s,h,p,m,d=A[0],l=A[1],s=$,h=C[0],p=C[1],m=C[2],vh,r),r.point(d,l)}function g(){v.point=x,r.lineEnd()}function b(){w(),v.point=y,v.lineEnd=_}function y($,S){M(i=$,S),o=d,a=l,u=h,c=p,f=m,v.point=M}function _(){e(d,l,s,h,p,m,o,a,i,u,c,f,vh,r),v.lineEnd=g,g()}return v}}var ov=Ro({point:function(t,n){this.stream.point(t*lt,n*lt)}});function av(t){return Ro({point:function(n,e){var r=t(n,e);return this.stream.point(r[0],r[1])}})}function uv(t,n,e,r,i){function o(a,u){return a*=r,u*=i,[n+t*a,e-t*u]}return o.invert=function(a,u){return[(a-n)/t*r,(e-u)/t*i]},o}function _h(t,n,e,r,i,o){if(!o)return uv(t,n,e,r,i);var a=Q(o),u=j(o),c=a*t,f=u*t,s=a/t,d=u/t,l=(u*e-a*n)/t,h=(u*n+a*e)/t;function p(m,v){return m*=r,v*=i,[c*m-f*v+n,e-f*m-c*v]}return p.invert=function(m,v){return[r*(s*m-d*v+l),i*(h-d*m-s*v)]},p}function te(t){return Wh(function(){return t})()}function Wh(t){var n,e=150,r=480,i=250,o=0,a=0,u=0,c=0,f=0,s,d=0,l=1,h=1,p=null,m=ph,v=null,x,w,M,g=Tu,b=.5,y,_,$,S,C;function A(T){return $(T[0]*lt,T[1]*lt)}function k(T){return T=$.invert(T[0],T[1]),T&&[T[0]*Et,T[1]*Et]}A.stream=function(T){return S&&C===T?S:S=ov(av(s)(m(y(g(C=T)))))},A.preclip=function(T){return arguments.length?(m=T,p=void 0,P()):m},A.postclip=function(T){return arguments.length?(g=T,v=x=w=M=null,P()):g},A.clipAngle=function(T){return arguments.length?(m=+T?Uw(p=T*lt):(p=null,ph),P()):p*Et},A.clipExtent=function(T){return arguments.length?(g=T==null?(v=x=w=M=null,Tu):Fu(v=+T[0][0],x=+T[0][1],w=+T[1][0],M=+T[1][1]),P()):v==null?null:[[v,x],[w,M]]},A.scale=function(T){return arguments.length?(e=+T,D()):e},A.translate=function(T){return arguments.length?(r=+T[0],i=+T[1],D()):[r,i]},A.center=function(T){return arguments.length?(o=T[0]%360*lt,a=T[1]%360*lt,D()):[o*Et,a*Et]},A.rotate=function(T){return arguments.length?(u=T[0]%360*lt,c=T[1]%360*lt,f=T.length>2?T[2]%360*lt:0,D()):[u*Et,c*Et,f*Et]},A.angle=function(T){return arguments.length?(d=T%360*lt,D()):d*Et},A.reflectX=function(T){return arguments.length?(l=T?-1:1,D()):l<0},A.reflectY=function(T){return arguments.length?(h=T?-1:1,D()):h<0},A.precision=function(T){return arguments.length?(y=xh(_,b=T*T),P()):It(b)},A.fitExtent=function(T,O){return Bu(A,T,O)},A.fitSize=function(T,O){return qh(A,T,O)},A.fitWidth=function(T,O){return Yh(A,T,O)},A.fitHeight=function(T,O){return Uh(A,T,O)};function D(){var T=_h(e,0,0,l,h,d).apply(null,n(o,a)),O=_h(e,r-T[0],i-T[1],l,h,d);return s=Ah(u,c,f),_=Su(n,O),$=Su(s,_),y=xh(_,b),P()}function P(){return S=C=null,A}return function(){return n=t.apply(this,arguments),A.invert=n.invert&&k,D()}}function qu(t){var n=0,e=tt/3,r=Wh(t),i=r(n,e);return i.parallels=function(o){return arguments.length?r(n=o[0]*lt,e=o[1]*lt):[n*Et,e*Et]},i}function cv(t){var n=Q(t);function e(r,i){return[r*n,j(i)/n]}return e.invert=function(r,i){return[r/n,Jt(i*n)]},e}function fv(t,n){var e=j(t),r=(e+j(n))/2;if(ot(r)<V)return cv(t);var i=1+e*(2*r-e),o=It(i)/r;function a(u,c){var f=It(i-2*r*j(c))/r;return[f*j(u*=r),o-f*Q(u)]}return a.invert=function(u,c){var f=o-c,s=Dn(u,ot(f))*Kt(f);return f*r<0&&(s-=tt*Kt(u)*Kt(f)),[s/r,Jt((i-(u*u+f*f)*r*r)/(2*r))]},a}function ii(){return qu(fv).scale(155.424).center([0,33.6442])}function Yu(){return ii().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function sv(t){var n=t.length;return{point:function(e,r){for(var i=-1;++i<n;)t[i].point(e,r)},sphere:function(){for(var e=-1;++e<n;)t[e].sphere()},lineStart:function(){for(var e=-1;++e<n;)t[e].lineStart()},lineEnd:function(){for(var e=-1;++e<n;)t[e].lineEnd()},polygonStart:function(){for(var e=-1;++e<n;)t[e].polygonStart()},polygonEnd:function(){for(var e=-1;++e<n;)t[e].polygonEnd()}}}function Gh(){var t,n,e=Yu(),r,i=ii().rotate([154,0]).center([-2,58.5]).parallels([55,65]),o,a=ii().rotate([157,0]).center([-3,19.9]).parallels([8,18]),u,c,f={point:function(l,h){c=[l,h]}};function s(l){var h=l[0],p=l[1];return c=null,r.point(h,p),c||(o.point(h,p),c)||(u.point(h,p),c)}s.invert=function(l){var h=e.scale(),p=e.translate(),m=(l[0]-p[0])/h,v=(l[1]-p[1])/h;return(v>=.12&&v<.234&&m>=-.425&&m<-.214?i:v>=.166&&v<.234&&m>=-.214&&m<-.115?a:e).invert(l)},s.stream=function(l){return t&&n===l?t:t=sv([e.stream(n=l),i.stream(l),a.stream(l)])},s.precision=function(l){return arguments.length?(e.precision(l),i.precision(l),a.precision(l),d()):e.precision()},s.scale=function(l){return arguments.length?(e.scale(l),i.scale(l*.35),a.scale(l),s.translate(e.translate())):e.scale()},s.translate=function(l){if(!arguments.length)return e.translate();var h=e.scale(),p=+l[0],m=+l[1];return r=e.translate(l).clipExtent([[p-.455*h,m-.238*h],[p+.455*h,m+.238*h]]).stream(f),o=i.translate([p-.307*h,m+.201*h]).clipExtent([[p-.425*h+V,m+.12*h+V],[p-.214*h-V,m+.234*h-V]]).stream(f),u=a.translate([p-.205*h,m+.212*h]).clipExtent([[p-.214*h+V,m+.166*h+V],[p-.115*h-V,m+.234*h-V]]).stream(f),d()},s.fitExtent=function(l,h){return Bu(s,l,h)},s.fitSize=function(l,h){return qh(s,l,h)},s.fitWidth=function(l,h){return Yh(s,l,h)},s.fitHeight=function(l,h){return Uh(s,l,h)};function d(){return t=n=null,s}return s.scale(1070)}function Hh(t){return function(n,e){var r=Q(n),i=Q(e),o=t(r*i);return o===1/0?[2,0]:[o*i*j(n),o*j(e)]}}function ai(t){return function(n,e){var r=It(n*n+e*e),i=t(r),o=j(i),a=Q(i);return[Dn(n*o,r*a),Jt(r&&e*o/r)]}}var Xh=Hh(function(t){return It(2/(1+t))});Xh.invert=ai(function(t){return 2*Jt(t/2)});function Vh(){return te(Xh).scale(124.75).clipAngle(180-.001)}var jh=Hh(function(t){return(t=Sh(t))&&t/j(t)});jh.invert=ai(function(t){return t});function Zh(){return te(jh).scale(79.4188).clipAngle(180-.001)}function Lo(t,n){return[t,wo(Ou((dt+n)/2))]}Lo.invert=function(t,n){return[t,2*sr($h(n))-dt]};function Kh(){return Qh(Lo).scale(961/Ht)}function Qh(t){var n=te(t),e=n.center,r=n.scale,i=n.translate,o=n.clipExtent,a=null,u,c,f;n.scale=function(d){return arguments.length?(r(d),s()):r()},n.translate=function(d){return arguments.length?(i(d),s()):i()},n.center=function(d){return arguments.length?(e(d),s()):e()},n.clipExtent=function(d){return arguments.length?(d==null?a=u=c=f=null:(a=+d[0][0],u=+d[0][1],c=+d[1][0],f=+d[1][1]),s()):a==null?null:[[a,u],[c,f]]};function s(){var d=tt*r(),l=n(Dw(n.rotate()).invert([0,0]));return o(a==null?[[l[0]-d,l[1]-d],[l[0]+d,l[1]+d]]:t===Lo?[[Math.max(l[0]-d,a),u],[Math.min(l[0]+d,c),f]]:[[a,Math.max(l[1]-d,u)],[c,Math.min(l[1]+d,f)]])}return s()}function yo(t){return Ou((dt+t)/2)}function lv(t,n){var e=Q(t),r=t===n?j(t):wo(e/Q(n))/wo(yo(n)/yo(t)),i=e*yu(yo(t),r)/r;if(!r)return Lo;function o(a,u){i>0?u<-dt+V&&(u=-dt+V):u>dt-V&&(u=dt-V);var c=i/yu(yo(u),r);return[c*j(r*a),i-c*Q(r*a)]}return o.invert=function(a,u){var c=i-u,f=Kt(r)*It(a*a+c*c),s=Dn(a,ot(c))*Kt(c);return c*r<0&&(s-=tt*Kt(a)*Kt(c)),[s/r,2*sr(yu(i/f,1/r))-dt]},o}function Jh(){return qu(lv).scale(109.5).parallels([30,30])}function Co(t,n){return[t,n]}Co.invert=Co;function t0(){return te(Co).scale(152.63)}function dv(t,n){var e=Q(t),r=t===n?j(t):(e-Q(n))/(n-t),i=e/r+t;if(ot(r)<V)return Co;function o(a,u){var c=i-u,f=r*a;return[c*j(f),i-c*Q(f)]}return o.invert=function(a,u){var c=i-u,f=Dn(a,ot(c))*Kt(c);return c*r<0&&(f-=tt*Kt(a)*Kt(c)),[f/r,i-Kt(r)*It(a*a+c*c)]},o}function n0(){return qu(dv).scale(131.154).center([0,13.9389])}var Qr=1.340264,Jr=-.081106,ti=893e-6,ni=.003796,Eo=It(3)/2,hv=12;function e0(t,n){var e=Jt(Eo*j(n)),r=e*e,i=r*r*r;return[t*Q(e)/(Eo*(Qr+3*Jr*r+i*(7*ti+9*ni*r))),e*(Qr+Jr*r+i*(ti+ni*r))]}e0.invert=function(t,n){for(var e=n,r=e*e,i=r*r*r,o=0,a,u,c;o<hv&&(u=e*(Qr+Jr*r+i*(ti+ni*r))-n,c=Qr+3*Jr*r+i*(7*ti+9*ni*r),e-=a=u/c,r=e*e,i=r*r*r,!(ot(a)<Mh));++o);return[Eo*t*(Qr+3*Jr*r+i*(7*ti+9*ni*r))/Q(e),Jt(j(e)/Eo)]};function r0(){return te(e0).scale(177.158)}function i0(t,n){var e=Q(n),r=Q(t)*e;return[e*j(t)/r,j(n)/r]}i0.invert=ai(sr);function o0(){return te(i0).scale(144.049).clipAngle(60)}function pv(t,n){var e=n*n,r=e*e;return[t*(.8707-.131979*e+r*(-.013791+r*(.003971*e-.001529*r))),n*(1.007226+e*(.015085+r*(-.044475+.028874*e-.005916*r)))]}pv.invert=function(t,n){var e=n,r=25,i;do{var o=e*e,a=o*o;e-=i=(e*(1.007226+o*(.015085+a*(-.044475+.028874*o-.005916*a)))-n)/(1.007226+o*(.015085*3+a*(-.044475*7+.028874*9*o-.005916*11*a)))}while(ot(i)>V&&--r>0);return[t/(.8707+(o=e*e)*(-.131979+o*(-.013791+o*o*o*(.003971-.001529*o)))),e]};function a0(t,n){return[Q(n)*j(t),j(n)]}a0.invert=ai(Jt);function u0(){return te(a0).scale(249.5).clipAngle(90+V)}function c0(t,n){var e=Q(n),r=1+Q(t)*e;return[e*j(t)/r,j(n)/r]}c0.invert=ai(function(t){return 2*sr(t)});function f0(){return te(c0).scale(250).clipAngle(142)}function s0(t,n){return[wo(Ou((dt+n)/2)),-t]}s0.invert=function(t,n){return[-n,2*sr($h(t))-dt]};function l0(){var t=Qh(s0),n=t.center,e=t.rotate;return t.center=function(r){return arguments.length?n([-r[1],r[0]]):(r=n(),[r[1],-r[0]])},t.rotate=function(r){return arguments.length?e([r[0],r[1],r.length>2?r[2]+90:90]):(r=e(),[r[0],r[1],r[2]-90])},e([0,0,90]).scale(159.155)}var Uu=new Date,Wu=new Date;function mt(t,n,e,r){function i(o){return t(o=arguments.length===0?new Date:new Date(+o)),o}return i.floor=o=>(t(o=new Date(+o)),o),i.ceil=o=>(t(o=new Date(o-1)),n(o,1),t(o),o),i.round=o=>{let a=i(o),u=i.ceil(o);return o-a<u-o?a:u},i.offset=(o,a)=>(n(o=new Date(+o),a==null?1:Math.floor(a)),o),i.range=(o,a,u)=>{let c=[];if(o=i.ceil(o),u=u==null?1:Math.floor(u),!(o<a)||!(u>0))return c;let f;do c.push(f=new Date(+o)),n(o,u),t(o);while(f<o&&o<a);return c},i.filter=o=>mt(a=>{if(a>=a)for(;t(a),!o(a);)a.setTime(a-1)},(a,u)=>{if(a>=a)if(u<0)for(;++u<=0;)for(;n(a,-1),!o(a););else for(;--u>=0;)for(;n(a,1),!o(a););}),e&&(i.count=(o,a)=>(Uu.setTime(+o),Wu.setTime(+a),t(Uu),t(Wu),Math.floor(e(Uu,Wu))),i.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?i.filter(r?a=>r(a)%o===0:a=>i.count(0,a)%o===0):i)),i}var Po=mt(()=>{},(t,n)=>{t.setTime(+t+n)},(t,n)=>n-t);Po.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?mt(n=>{n.setTime(Math.floor(n/t)*t)},(n,e)=>{n.setTime(+n+e*t)},(n,e)=>(e-n)/t):Po);var P7=Po.range,In=1e3,tn=In*60,On=tn*60,Fn=On*24,Hu=Fn*7,d0=Fn*30,Gu=Fn*365,Nt=mt(t=>{t.setTime(t-t.getMilliseconds())},(t,n)=>{t.setTime(+t+n*In)},(t,n)=>(n-t)/In,t=>t.getUTCSeconds()),D7=Nt.range,$e=mt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*In)},(t,n)=>{t.setTime(+t+n*tn)},(t,n)=>(n-t)/tn,t=>t.getMinutes()),I7=$e.range,Se=mt(t=>{t.setUTCSeconds(0,0)},(t,n)=>{t.setTime(+t+n*tn)},(t,n)=>(n-t)/tn,t=>t.getUTCMinutes()),O7=Se.range,Ae=mt(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*In-t.getMinutes()*tn)},(t,n)=>{t.setTime(+t+n*On)},(t,n)=>(n-t)/On,t=>t.getHours()),F7=Ae.range,Te=mt(t=>{t.setUTCMinutes(0,0,0)},(t,n)=>{t.setTime(+t+n*On)},(t,n)=>(n-t)/On,t=>t.getUTCHours()),z7=Te.range,wn=mt(t=>t.setHours(0,0,0,0),(t,n)=>t.setDate(t.getDate()+n),(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*tn)/Fn,t=>t.getDate()-1),B7=wn.range,lr=mt(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/Fn,t=>t.getUTCDate()-1),q7=lr.range,ui=mt(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/Fn,t=>Math.floor(t/Fn)),Y7=ui.range;function ke(t){return mt(n=>{n.setDate(n.getDate()-(n.getDay()+7-t)%7),n.setHours(0,0,0,0)},(n,e)=>{n.setDate(n.getDate()+e*7)},(n,e)=>(e-n-(e.getTimezoneOffset()-n.getTimezoneOffset())*tn)/Hu)}var vn=ke(0),Ce=ke(1),Xu=ke(2),Vu=ke(3),zn=ke(4),ju=ke(5),Zu=ke(6),U7=vn.range,W7=Ce.range,G7=Xu.range,H7=Vu.range,X7=zn.range,V7=ju.range,j7=Zu.range;function Ee(t){return mt(n=>{n.setUTCDate(n.getUTCDate()-(n.getUTCDay()+7-t)%7),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCDate(n.getUTCDate()+e*7)},(n,e)=>(e-n)/Hu)}var xn=Ee(0),Ne=Ee(1),Ku=Ee(2),Qu=Ee(3),Bn=Ee(4),Ju=Ee(5),tc=Ee(6),Z7=xn.range,K7=Ne.range,Q7=Ku.range,J7=Qu.range,t_=Bn.range,n_=Ju.range,e_=tc.range,Re=mt(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,n)=>{t.setMonth(t.getMonth()+n)},(t,n)=>n.getMonth()-t.getMonth()+(n.getFullYear()-t.getFullYear())*12,t=>t.getMonth()),r_=Re.range,Le=mt(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCMonth(t.getUTCMonth()+n)},(t,n)=>n.getUTCMonth()-t.getUTCMonth()+(n.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth()),i_=Le.range,Ot=mt(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n)},(t,n)=>n.getFullYear()-t.getFullYear(),t=>t.getFullYear());Ot.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:mt(n=>{n.setFullYear(Math.floor(n.getFullYear()/t)*t),n.setMonth(0,1),n.setHours(0,0,0,0)},(n,e)=>{n.setFullYear(n.getFullYear()+e*t)});var o_=Ot.range,Ft=mt(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n)},(t,n)=>n.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());Ft.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:mt(n=>{n.setUTCFullYear(Math.floor(n.getUTCFullYear()/t)*t),n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCFullYear(n.getUTCFullYear()+e*t)});var a_=Ft.range;function h0(t,n,e,r,i,o){let a=[[Nt,1,In],[Nt,5,5*In],[Nt,15,15*In],[Nt,30,30*In],[o,1,tn],[o,5,5*tn],[o,15,15*tn],[o,30,30*tn],[i,1,On],[i,3,3*On],[i,6,6*On],[i,12,12*On],[r,1,Fn],[r,2,2*Fn],[e,1,Hu],[n,1,d0],[n,3,3*d0],[t,1,Gu]];function u(f,s,d){let l=s<f;l&&([f,s]=[s,f]);let h=d&&typeof d.range=="function"?d:c(f,s,d),p=h?h.range(f,+s+1):[];return l?p.reverse():p}function c(f,s,d){let l=Math.abs(s-f)/d,h=Ve(([,,v])=>v).right(a,l);if(h===a.length)return t.every(Fr(f/Gu,s/Gu,d));if(h===0)return Po.every(Math.max(Fr(f,s,d),1));let[p,m]=a[l/a[h-1][2]<a[h][2]/l?h-1:h];return p.every(m)}return[u,c]}var[p0,Do]=h0(Ft,Le,xn,ui,Te,Se),[g0,m0]=h0(Ot,Re,vn,wn,Ae,$e);function nc(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function ec(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function ci(t,n,e){return{y:t,m:n,d:e,H:0,M:0,S:0,L:0}}function gv(t){var n=t.dateTime,e=t.date,r=t.time,i=t.periods,o=t.days,a=t.shortDays,u=t.months,c=t.shortMonths,f=fi(i),s=si(i),d=fi(o),l=si(o),h=fi(a),p=si(a),m=fi(u),v=si(u),x=fi(c),w=si(c),M={a:R,A:U,b:L,B:I,c:null,d:_0,e:_0,f:Fv,g:Vv,G:Zv,H:Dv,I:Iv,j:Ov,L:T0,m:zv,M:Bv,p:q,q:W,Q:S0,s:A0,S:qv,u:Yv,U:Uv,V:Wv,w:Gv,W:Hv,x:null,X:null,y:Xv,Y:jv,Z:Kv,"%":$0},g={a:z,A:K,b:et,B:at,c:null,d:M0,e:M0,f:nx,g:lx,G:hx,H:Qv,I:Jv,j:tx,L:C0,m:ex,M:rx,p:B,q:G,Q:S0,s:A0,S:ix,u:ox,U:ax,V:ux,w:cx,W:fx,x:null,X:null,y:sx,Y:dx,Z:px,"%":$0},b={a:C,A,b:k,B:D,c:P,d:v0,e:v0,f:Nv,g:w0,G:b0,H:x0,I:x0,j:Tv,L:Ev,m:Av,M:kv,p:S,q:Sv,Q:Lv,s:Pv,S:Cv,u:vv,U:xv,V:_v,w:wv,W:Mv,x:T,X:O,y:w0,Y:b0,Z:$v,"%":Rv};M.x=y(e,M),M.X=y(r,M),M.c=y(n,M),g.x=y(e,g),g.X=y(r,g),g.c=y(n,g);function y(N,F){return function(Y){var E=[],nt=-1,H=0,J=N.length,rt,ct,Cn;for(Y instanceof Date||(Y=new Date(+Y));++nt<J;)N.charCodeAt(nt)===37&&(E.push(N.slice(H,nt)),(ct=y0[rt=N.charAt(++nt)])!=null?rt=N.charAt(++nt):ct=rt==="e"?" ":"0",(Cn=F[rt])&&(rt=Cn(Y,ct)),E.push(rt),H=nt+1);return E.push(N.slice(H,nt)),E.join("")}}function _(N,F){return function(Y){var E=ci(1900,void 0,1),nt=$(E,N,Y+="",0),H,J;if(nt!=Y.length)return null;if("Q"in E)return new Date(E.Q);if("s"in E)return new Date(E.s*1e3+("L"in E?E.L:0));if(F&&!("Z"in E)&&(E.Z=0),"p"in E&&(E.H=E.H%12+E.p*12),E.m===void 0&&(E.m="q"in E?E.q:0),"V"in E){if(E.V<1||E.V>53)return null;"w"in E||(E.w=1),"Z"in E?(H=ec(ci(E.y,0,1)),J=H.getUTCDay(),H=J>4||J===0?Ne.ceil(H):Ne(H),H=lr.offset(H,(E.V-1)*7),E.y=H.getUTCFullYear(),E.m=H.getUTCMonth(),E.d=H.getUTCDate()+(E.w+6)%7):(H=nc(ci(E.y,0,1)),J=H.getDay(),H=J>4||J===0?Ce.ceil(H):Ce(H),H=wn.offset(H,(E.V-1)*7),E.y=H.getFullYear(),E.m=H.getMonth(),E.d=H.getDate()+(E.w+6)%7)}else("W"in E||"U"in E)&&("w"in E||(E.w="u"in E?E.u%7:"W"in E?1:0),J="Z"in E?ec(ci(E.y,0,1)).getUTCDay():nc(ci(E.y,0,1)).getDay(),E.m=0,E.d="W"in E?(E.w+6)%7+E.W*7-(J+5)%7:E.w+E.U*7-(J+6)%7);return"Z"in E?(E.H+=E.Z/100|0,E.M+=E.Z%100,ec(E)):nc(E)}}function $(N,F,Y,E){for(var nt=0,H=F.length,J=Y.length,rt,ct;nt<H;){if(E>=J)return-1;if(rt=F.charCodeAt(nt++),rt===37){if(rt=F.charAt(nt++),ct=b[rt in y0?F.charAt(nt++):rt],!ct||(E=ct(N,Y,E))<0)return-1}else if(rt!=Y.charCodeAt(E++))return-1}return E}function S(N,F,Y){var E=f.exec(F.slice(Y));return E?(N.p=s.get(E[0].toLowerCase()),Y+E[0].length):-1}function C(N,F,Y){var E=h.exec(F.slice(Y));return E?(N.w=p.get(E[0].toLowerCase()),Y+E[0].length):-1}function A(N,F,Y){var E=d.exec(F.slice(Y));return E?(N.w=l.get(E[0].toLowerCase()),Y+E[0].length):-1}function k(N,F,Y){var E=x.exec(F.slice(Y));return E?(N.m=w.get(E[0].toLowerCase()),Y+E[0].length):-1}function D(N,F,Y){var E=m.exec(F.slice(Y));return E?(N.m=v.get(E[0].toLowerCase()),Y+E[0].length):-1}function P(N,F,Y){return $(N,n,F,Y)}function T(N,F,Y){return $(N,e,F,Y)}function O(N,F,Y){return $(N,r,F,Y)}function R(N){return a[N.getDay()]}function U(N){return o[N.getDay()]}function L(N){return c[N.getMonth()]}function I(N){return u[N.getMonth()]}function q(N){return i[+(N.getHours()>=12)]}function W(N){return 1+~~(N.getMonth()/3)}function z(N){return a[N.getUTCDay()]}function K(N){return o[N.getUTCDay()]}function et(N){return c[N.getUTCMonth()]}function at(N){return u[N.getUTCMonth()]}function B(N){return i[+(N.getUTCHours()>=12)]}function G(N){return 1+~~(N.getUTCMonth()/3)}return{format:function(N){var F=y(N+="",M);return F.toString=function(){return N},F},parse:function(N){var F=_(N+="",!1);return F.toString=function(){return N},F},utcFormat:function(N){var F=y(N+="",g);return F.toString=function(){return N},F},utcParse:function(N){var F=_(N+="",!0);return F.toString=function(){return N},F}}}var y0={"-":"",_:" ",0:"0"},vt=/^\s*\d+/,mv=/^%/,yv=/[\\^$*+?|[\]().{}]/g;function it(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",o=i.length;return r+(o<e?new Array(e-o+1).join(n)+i:i)}function bv(t){return t.replace(yv,"\\$&")}function fi(t){return new RegExp("^(?:"+t.map(bv).join("|")+")","i")}function si(t){return new Map(t.map((n,e)=>[n.toLowerCase(),e]))}function wv(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function vv(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function xv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function _v(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function Mv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function b0(t,n,e){var r=vt.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function w0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),e+r[0].length):-1}function $v(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function Sv(t,n,e){var r=vt.exec(n.slice(e,e+1));return r?(t.q=r[0]*3-3,e+r[0].length):-1}function Av(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function v0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function Tv(t,n,e){var r=vt.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function x0(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function kv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function Cv(t,n,e){var r=vt.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function Ev(t,n,e){var r=vt.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function Nv(t,n,e){var r=vt.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function Rv(t,n,e){var r=mv.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function Lv(t,n,e){var r=vt.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function Pv(t,n,e){var r=vt.exec(n.slice(e));return r?(t.s=+r[0],e+r[0].length):-1}function _0(t,n){return it(t.getDate(),n,2)}function Dv(t,n){return it(t.getHours(),n,2)}function Iv(t,n){return it(t.getHours()%12||12,n,2)}function Ov(t,n){return it(1+wn.count(Ot(t),t),n,3)}function T0(t,n){return it(t.getMilliseconds(),n,3)}function Fv(t,n){return T0(t,n)+"000"}function zv(t,n){return it(t.getMonth()+1,n,2)}function Bv(t,n){return it(t.getMinutes(),n,2)}function qv(t,n){return it(t.getSeconds(),n,2)}function Yv(t){var n=t.getDay();return n===0?7:n}function Uv(t,n){return it(vn.count(Ot(t)-1,t),n,2)}function k0(t){var n=t.getDay();return n>=4||n===0?zn(t):zn.ceil(t)}function Wv(t,n){return t=k0(t),it(zn.count(Ot(t),t)+(Ot(t).getDay()===4),n,2)}function Gv(t){return t.getDay()}function Hv(t,n){return it(Ce.count(Ot(t)-1,t),n,2)}function Xv(t,n){return it(t.getFullYear()%100,n,2)}function Vv(t,n){return t=k0(t),it(t.getFullYear()%100,n,2)}function jv(t,n){return it(t.getFullYear()%1e4,n,4)}function Zv(t,n){var e=t.getDay();return t=e>=4||e===0?zn(t):zn.ceil(t),it(t.getFullYear()%1e4,n,4)}function Kv(t){var n=t.getTimezoneOffset();return(n>0?"-":(n*=-1,"+"))+it(n/60|0,"0",2)+it(n%60,"0",2)}function M0(t,n){return it(t.getUTCDate(),n,2)}function Qv(t,n){return it(t.getUTCHours(),n,2)}function Jv(t,n){return it(t.getUTCHours()%12||12,n,2)}function tx(t,n){return it(1+lr.count(Ft(t),t),n,3)}function C0(t,n){return it(t.getUTCMilliseconds(),n,3)}function nx(t,n){return C0(t,n)+"000"}function ex(t,n){return it(t.getUTCMonth()+1,n,2)}function rx(t,n){return it(t.getUTCMinutes(),n,2)}function ix(t,n){return it(t.getUTCSeconds(),n,2)}function ox(t){var n=t.getUTCDay();return n===0?7:n}function ax(t,n){return it(xn.count(Ft(t)-1,t),n,2)}function E0(t){var n=t.getUTCDay();return n>=4||n===0?Bn(t):Bn.ceil(t)}function ux(t,n){return t=E0(t),it(Bn.count(Ft(t),t)+(Ft(t).getUTCDay()===4),n,2)}function cx(t){return t.getUTCDay()}function fx(t,n){return it(Ne.count(Ft(t)-1,t),n,2)}function sx(t,n){return it(t.getUTCFullYear()%100,n,2)}function lx(t,n){return t=E0(t),it(t.getUTCFullYear()%100,n,2)}function dx(t,n){return it(t.getUTCFullYear()%1e4,n,4)}function hx(t,n){var e=t.getUTCDay();return t=e>=4||e===0?Bn(t):Bn.ceil(t),it(t.getUTCFullYear()%1e4,n,4)}function px(){return"+0000"}function $0(){return"%"}function S0(t){return+t}function A0(t){return Math.floor(+t/1e3)}var dr,li,gx,ne,N0;mx({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function mx(t){return dr=gv(t),li=dr.format,gx=dr.parse,ne=dr.utcFormat,N0=dr.utcParse,dr}var R0="%Y-%m-%dT%H:%M:%S.%LZ";function yx(t){return t.toISOString()}var f_=Date.prototype.toISOString?yx:ne(R0);function bx(t){var n=new Date(t);return isNaN(n)?null:n}var s_=+new Date("2000-01-01T00:00:00.000Z")?bx:N0(R0);function _n(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t);break}return this}function Oo(t,n){switch(arguments.length){case 0:break;case 1:{typeof t=="function"?this.interpolator(t):this.range(t);break}default:{this.domain(t),typeof n=="function"?this.interpolator(n):this.range(n);break}}return this}var Io=Symbol("implicit");function Fo(){var t=new on,n=[],e=[],r=Io;function i(o){let a=t.get(o);if(a===void 0){if(r!==Io)return r;t.set(o,a=n.push(o)-1)}return e[a%e.length]}return i.domain=function(o){if(!arguments.length)return n.slice();n=[],t=new on;for(let a of o)t.has(a)||t.set(a,n.push(a)-1);return i},i.range=function(o){return arguments.length?(e=Array.from(o),i):e.slice()},i.unknown=function(o){return arguments.length?(r=o,i):r},i.copy=function(){return Fo(n,e).unknown(r)},_n.apply(i,arguments),i}function di(){var t=Fo().unknown(void 0),n=t.domain,e=t.range,r=0,i=1,o,a,u=!1,c=0,f=0,s=.5;delete t.unknown;function d(){var l=n().length,h=i<r,p=h?i:r,m=h?r:i;o=(m-p)/Math.max(1,l-c+f*2),u&&(o=Math.floor(o)),p+=(m-p-o*(l-c))*s,a=o*(1-c),u&&(p=Math.round(p),a=Math.round(a));var v=Ze(l).map(function(x){return p+o*x});return e(h?v.reverse():v)}return t.domain=function(l){return arguments.length?(n(l),d()):n()},t.range=function(l){return arguments.length?([r,i]=l,r=+r,i=+i,d()):[r,i]},t.rangeRound=function(l){return[r,i]=l,r=+r,i=+i,u=!0,d()},t.bandwidth=function(){return a},t.step=function(){return o},t.round=function(l){return arguments.length?(u=!!l,d()):u},t.padding=function(l){return arguments.length?(c=Math.min(1,f=+l),d()):c},t.paddingInner=function(l){return arguments.length?(c=Math.min(1,l),d()):c},t.paddingOuter=function(l){return arguments.length?(f=+l,d()):f},t.align=function(l){return arguments.length?(s=Math.max(0,Math.min(1,l)),d()):s},t.copy=function(){return di(n(),[r,i]).round(u).paddingInner(c).paddingOuter(f).align(s)},_n.apply(d(),arguments)}function B0(t){var n=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,delete t.paddingOuter,t.copy=function(){return B0(n())},t}function q0(){return B0(di.apply(null,arguments).paddingInner(1))}function wx(t){return function(){return t}}function rc(t){return+t}var L0=[0,1];function nn(t){return t}function ic(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:wx(isNaN(n)?NaN:.5)}function vx(t,n){var e;return t>n&&(e=t,t=n,n=e),function(r){return Math.max(t,Math.min(n,r))}}function xx(t,n,e){var r=t[0],i=t[1],o=n[0],a=n[1];return i<r?(r=ic(i,r),o=e(a,o)):(r=ic(r,i),o=e(o,a)),function(u){return o(r(u))}}function _x(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),o=new Array(r),a=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++a<r;)i[a]=ic(t[a],t[a+1]),o[a]=e(n[a],n[a+1]);return function(u){var c=je(t,u,1,r)-1;return o[c](i[c](u))}}function hi(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function zo(){var t=L0,n=L0,e=rr,r,i,o,a=nn,u,c,f;function s(){var l=Math.min(t.length,n.length);return a!==nn&&(a=vx(t[0],t[l-1])),u=l>2?_x:xx,c=f=null,d}function d(l){return l==null||isNaN(l=+l)?o:(c||(c=u(t.map(r),n,e)))(r(a(l)))}return d.invert=function(l){return a(i((f||(f=u(n,t.map(r),Mt)))(l)))},d.domain=function(l){return arguments.length?(t=Array.from(l,rc),s()):t.slice()},d.range=function(l){return arguments.length?(n=Array.from(l),s()):n.slice()},d.rangeRound=function(l){return n=Array.from(l),e=Gr,s()},d.clamp=function(l){return arguments.length?(a=l?!0:nn,s()):a!==nn},d.interpolate=function(l){return arguments.length?(e=l,s()):e},d.unknown=function(l){return arguments.length?(o=l,d):o},function(l,h){return r=l,i=h,s()}}function Y0(){return zo()(nn,nn)}function Mx(t,n,e,r){var i=Fr(t,n,e),o;switch(r=ar(r??",f"),r.type){case"s":{var a=Math.max(Math.abs(t),Math.abs(n));return r.precision==null&&!isNaN(o=rh(i,a))&&(r.precision=o),mu(r,a)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(o=ih(i,Math.max(Math.abs(t),Math.abs(n))))&&(r.precision=o-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(o=eh(i))&&(r.precision=o-(r.type==="%")*2);break}}return Qn(r)}function pi(t){var n=t.domain;return t.ticks=function(e){var r=n();return pe(r[0],r[r.length-1],e??10)},t.tickFormat=function(e,r){var i=n();return Mx(i[0],i[i.length-1],e??10,r)},t.nice=function(e){e==null&&(e=10);var r=n(),i=0,o=r.length-1,a=r[i],u=r[o],c,f,s=10;for(u<a&&(f=a,a=u,u=f,f=i,i=o,o=f);s-- >0;){if(f=He(a,u,e),f===c)return r[i]=a,r[o]=u,n(r);if(f>0)a=Math.floor(a/f)*f,u=Math.ceil(u/f)*f;else if(f<0)a=Math.ceil(a*f)/f,u=Math.floor(u*f)/f;else break;c=f}return t},t}function Bo(){var t=Y0();return t.copy=function(){return hi(t,Bo())},_n.apply(t,arguments),pi(t)}function oc(t){var n;function e(r){return r==null||isNaN(r=+r)?n:r}return e.invert=e,e.domain=e.range=function(r){return arguments.length?(t=Array.from(r,rc),e):t.slice()},e.unknown=function(r){return arguments.length?(n=r,e):n},e.copy=function(){return oc(t).unknown(n)},t=arguments.length?Array.from(t,rc):[0,1],pi(e)}function U0(t,n){t=t.slice();var e=0,r=t.length-1,i=t[e],o=t[r],a;return o<i&&(a=e,e=r,r=a,a=i,i=o,o=a),t[e]=n.floor(i),t[r]=n.ceil(o),t}function P0(t){return Math.log(t)}function D0(t){return Math.exp(t)}function $x(t){return-Math.log(-t)}function Sx(t){return-Math.exp(-t)}function Ax(t){return isFinite(t)?+("1e"+t):t<0?0:t}function Tx(t){return t===10?Ax:t===Math.E?Math.exp:n=>Math.pow(t,n)}function kx(t){return t===Math.E?Math.log:t===10&&Math.log10||t===2&&Math.log2||(t=Math.log(t),n=>Math.log(n)/t)}function I0(t){return(n,e)=>-t(-n,e)}function W0(t){let n=t(P0,D0),e=n.domain,r=10,i,o;function a(){return i=kx(r),o=Tx(r),e()[0]<0?(i=I0(i),o=I0(o),t($x,Sx)):t(P0,D0),n}return n.base=function(u){return arguments.length?(r=+u,a()):r},n.domain=function(u){return arguments.length?(e(u),a()):e()},n.ticks=u=>{let c=e(),f=c[0],s=c[c.length-1],d=s<f;d&&([f,s]=[s,f]);let l=i(f),h=i(s),p,m,v=u==null?10:+u,x=[];if(!(r%1)&&h-l<v){if(l=Math.floor(l),h=Math.ceil(h),f>0){for(;l<=h;++l)for(p=1;p<r;++p)if(m=l<0?p/o(-l):p*o(l),!(m<f)){if(m>s)break;x.push(m)}}else for(;l<=h;++l)for(p=r-1;p>=1;--p)if(m=l>0?p/o(-l):p*o(l),!(m<f)){if(m>s)break;x.push(m)}x.length*2<v&&(x=pe(f,s,v))}else x=pe(l,h,Math.min(h-l,v)).map(o);return d?x.reverse():x},n.tickFormat=(u,c)=>{if(u==null&&(u=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=ar(c)).precision==null&&(c.trim=!0),c=Qn(c)),u===1/0)return c;let f=Math.max(1,r*u/n.ticks().length);return s=>{let d=s/o(Math.round(i(s)));return d*r<r-.5&&(d*=r),d<=f?c(s):""}},n.nice=()=>e(U0(e(),{floor:u=>o(Math.floor(i(u))),ceil:u=>o(Math.ceil(i(u)))})),n}function ac(){let t=W0(zo()).domain([1,10]);return t.copy=()=>hi(t,ac()).base(t.base()),_n.apply(t,arguments),t}function O0(t){return function(n){return Math.sign(n)*Math.log1p(Math.abs(n/t))}}function F0(t){return function(n){return Math.sign(n)*Math.expm1(Math.abs(n))*t}}function G0(t){var n=1,e=t(O0(n),F0(n));return e.constant=function(r){return arguments.length?t(O0(n=+r),F0(n)):n},pi(e)}function uc(){var t=G0(zo());return t.copy=function(){return hi(t,uc()).constant(t.constant())},_n.apply(t,arguments)}function z0(t){return function(n){return n<0?-Math.pow(-n,t):Math.pow(n,t)}}function Cx(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function Ex(t){return t<0?-t*t:t*t}function H0(t){var n=t(nn,nn),e=1;function r(){return e===1?t(nn,nn):e===.5?t(Cx,Ex):t(z0(e),z0(1/e))}return n.exponent=function(i){return arguments.length?(e=+i,r()):e},pi(n)}function cc(){var t=H0(zo());return t.copy=function(){return hi(t,cc()).exponent(t.exponent())},_n.apply(t,arguments),t}function fc(){var t=[],n=[],e=[],r;function i(){var a=0,u=Math.max(1,n.length);for(e=new Array(u-1);++a<u;)e[a-1]=jl(t,a/u);return o}function o(a){return a==null||isNaN(a=+a)?r:n[je(e,a)]}return o.invertExtent=function(a){var u=n.indexOf(a);return u<0?[NaN,NaN]:[u>0?e[u-1]:t[0],u<e.length?e[u]:t[t.length-1]]},o.domain=function(a){if(!arguments.length)return t.slice();t=[];for(let u of a)u!=null&&!isNaN(u=+u)&&t.push(u);return t.sort(At),i()},o.range=function(a){return arguments.length?(n=Array.from(a),i()):n.slice()},o.unknown=function(a){return arguments.length?(r=a,o):r},o.quantiles=function(){return e.slice()},o.copy=function(){return fc().domain(t).range(n).unknown(r)},_n.apply(o,arguments)}function sc(){var t=[.5],n=[0,1],e,r=1;function i(o){return o!=null&&o<=o?n[je(t,o,0,r)]:e}return i.domain=function(o){return arguments.length?(t=Array.from(o),r=Math.min(t.length,n.length-1),i):t.slice()},i.range=function(o){return arguments.length?(n=Array.from(o),r=Math.min(t.length,n.length-1),i):n.slice()},i.invertExtent=function(o){var a=n.indexOf(o);return[t[a-1],t[a]]},i.unknown=function(o){return arguments.length?(e=o,i):e},i.copy=function(){return sc().domain(t).range(n).unknown(e)},_n.apply(i,arguments)}function Nx(t){return new Date(t)}function Rx(t){return t instanceof Date?+t:Math.round(t)}function lc(t,n,e,r,i,o,a,u,c,f){var s=Y0(),d=s.invert,l=s.domain,h=f(".%L"),p=f(":%S"),m=f("%I:%M"),v=f("%I %p"),x=f("%a %d"),w=f("%b %d"),M=f("%B"),g=f("%Y");function b(y){return(c(y)<y?h:u(y)<y?p:a(y)<y?m:o(y)<y?v:r(y)<y?i(y)<y?x:w:e(y)<y?M:g)(y)}return s.invert=function(y){return new Date(Math.round(d(y)))},s.domain=function(y){return arguments.length?l(Array.from(y,Rx)):l().map(Nx)},s.ticks=function(y){var _=l();return t(_[0],_[_.length-1],y??10)},s.tickFormat=function(y,_){return _==null?b:f(_)},s.nice=function(y){var _=l();return(!y||typeof y.range!="function")&&(y=n(_[0],_[_.length-1],y??10)),y?l(U0(_,y)):s},s.copy=function(){return hi(s,lc(t,n,e,r,i,o,a,u,c,f))},s}function X0(){return _n.apply(lc(g0,m0,Ot,Re,vn,wn,Ae,$e,Nt,li).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function V0(){return _n.apply(lc(p0,Do,Ft,Le,xn,lr,Te,Se,Nt,ne).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function qo(t,n){return n.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function Yo(){var t=0,n=.5,e=1,r=1,i,o,a,u,c,f=nn,s,d=!1,l;function h(m){return m==null||isNaN(m=+m)?l:(m=.5+((m=+s(m))-o)*(r*m<r*o?u:c),f(d?Math.max(0,Math.min(1,m)):m))}h.domain=function(m){return arguments.length?([t,n,e]=m,i=s(t=+t),o=s(n=+n),a=s(e=+e),u=i===o?0:.5/(o-i),c=o===a?0:.5/(a-o),r=o<i?-1:1,h):[t,n,e]},h.clamp=function(m){return arguments.length?(d=!!m,h):d},h.interpolator=function(m){return arguments.length?(f=m,h):f};function p(m){return function(v){var x,w,M;return arguments.length?([x,w,M]=v,f=ir(m,[x,w,M]),h):[f(0),f(.5),f(1)]}}return h.range=p(rr),h.rangeRound=p(Gr),h.unknown=function(m){return arguments.length?(l=m,h):l},function(m){return s=m,i=m(t),o=m(n),a=m(e),u=i===o?0:.5/(o-i),c=o===a?0:.5/(a-o),r=o<i?-1:1,h}}function dc(){var t=pi(Yo()(nn));return t.copy=function(){return qo(t,dc())},Oo.apply(t,arguments)}function hc(){var t=W0(Yo()).domain([.1,1,10]);return t.copy=function(){return qo(t,hc()).base(t.base())},Oo.apply(t,arguments)}function pc(){var t=G0(Yo());return t.copy=function(){return qo(t,pc()).constant(t.constant())},Oo.apply(t,arguments)}function gc(){var t=H0(Yo());return t.copy=function(){return qo(t,gc()).exponent(t.exponent())},Oo.apply(t,arguments)}function Z(t){for(var n=t.length/6|0,e=new Array(n),r=0;r<n;)e[r]="#"+t.slice(r*6,++r*6);return e}var j0=Z("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),Z0=Z("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),K0=Z("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),Q0=Z("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),J0=Z("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),t1=Z("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),n1=Z("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),e1=Z("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),r1=Z("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),i1=Z("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f"),o1=Z("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab"),ut=t=>Bd(t[t.length-1]),mc=new Array(3).concat("d8b365f5f5f55ab4ac","a6611adfc27d80cdc1018571","a6611adfc27df5f5f580cdc1018571","8c510ad8b365f6e8c3c7eae55ab4ac01665e","8c510ad8b365f6e8c3f5f5f5c7eae55ab4ac01665e","8c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e","8c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e","5430058c510abf812ddfc27df6e8c3c7eae580cdc135978f01665e003c30","5430058c510abf812ddfc27df6e8c3f5f5f5c7eae580cdc135978f01665e003c30").map(Z),yc=ut(mc),bc=new Array(3).concat("af8dc3f7f7f77fbf7b","7b3294c2a5cfa6dba0008837","7b3294c2a5cff7f7f7a6dba0008837","762a83af8dc3e7d4e8d9f0d37fbf7b1b7837","762a83af8dc3e7d4e8f7f7f7d9f0d37fbf7b1b7837","762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b7837","762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b7837","40004b762a839970abc2a5cfe7d4e8d9f0d3a6dba05aae611b783700441b","40004b762a839970abc2a5cfe7d4e8f7f7f7d9f0d3a6dba05aae611b783700441b").map(Z),wc=ut(bc),vc=new Array(3).concat("e9a3c9f7f7f7a1d76a","d01c8bf1b6dab8e1864dac26","d01c8bf1b6daf7f7f7b8e1864dac26","c51b7de9a3c9fde0efe6f5d0a1d76a4d9221","c51b7de9a3c9fde0eff7f7f7e6f5d0a1d76a4d9221","c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221","c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221","8e0152c51b7dde77aef1b6dafde0efe6f5d0b8e1867fbc414d9221276419","8e0152c51b7dde77aef1b6dafde0eff7f7f7e6f5d0b8e1867fbc414d9221276419").map(Z),xc=ut(vc),_c=new Array(3).concat("998ec3f7f7f7f1a340","5e3c99b2abd2fdb863e66101","5e3c99b2abd2f7f7f7fdb863e66101","542788998ec3d8daebfee0b6f1a340b35806","542788998ec3d8daebf7f7f7fee0b6f1a340b35806","5427888073acb2abd2d8daebfee0b6fdb863e08214b35806","5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b35806","2d004b5427888073acb2abd2d8daebfee0b6fdb863e08214b358067f3b08","2d004b5427888073acb2abd2d8daebf7f7f7fee0b6fdb863e08214b358067f3b08").map(Z),Mc=ut(_c),Go=new Array(3).concat("ef8a62f7f7f767a9cf","ca0020f4a58292c5de0571b0","ca0020f4a582f7f7f792c5de0571b0","b2182bef8a62fddbc7d1e5f067a9cf2166ac","b2182bef8a62fddbc7f7f7f7d1e5f067a9cf2166ac","b2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac","b2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac","67001fb2182bd6604df4a582fddbc7d1e5f092c5de4393c32166ac053061","67001fb2182bd6604df4a582fddbc7f7f7f7d1e5f092c5de4393c32166ac053061").map(Z),gi=ut(Go),$c=new Array(3).concat("ef8a62ffffff999999","ca0020f4a582bababa404040","ca0020f4a582ffffffbababa404040","b2182bef8a62fddbc7e0e0e09999994d4d4d","b2182bef8a62fddbc7ffffffe0e0e09999994d4d4d","b2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d","b2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d","67001fb2182bd6604df4a582fddbc7e0e0e0bababa8787874d4d4d1a1a1a","67001fb2182bd6604df4a582fddbc7ffffffe0e0e0bababa8787874d4d4d1a1a1a").map(Z),Sc=ut($c),Ho=new Array(3).concat("fc8d59ffffbf91bfdb","d7191cfdae61abd9e92c7bb6","d7191cfdae61ffffbfabd9e92c7bb6","d73027fc8d59fee090e0f3f891bfdb4575b4","d73027fc8d59fee090ffffbfe0f3f891bfdb4575b4","d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4","d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4","a50026d73027f46d43fdae61fee090e0f3f8abd9e974add14575b4313695","a50026d73027f46d43fdae61fee090ffffbfe0f3f8abd9e974add14575b4313695").map(Z),mi=ut(Ho),Ac=new Array(3).concat("fc8d59ffffbf91cf60","d7191cfdae61a6d96a1a9641","d7191cfdae61ffffbfa6d96a1a9641","d73027fc8d59fee08bd9ef8b91cf601a9850","d73027fc8d59fee08bffffbfd9ef8b91cf601a9850","d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850","d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850","a50026d73027f46d43fdae61fee08bd9ef8ba6d96a66bd631a9850006837","a50026d73027f46d43fdae61fee08bffffbfd9ef8ba6d96a66bd631a9850006837").map(Z),Tc=ut(Ac),kc=new Array(3).concat("fc8d59ffffbf99d594","d7191cfdae61abdda42b83ba","d7191cfdae61ffffbfabdda42b83ba","d53e4ffc8d59fee08be6f59899d5943288bd","d53e4ffc8d59fee08bffffbfe6f59899d5943288bd","d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd","d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd","9e0142d53e4ff46d43fdae61fee08be6f598abdda466c2a53288bd5e4fa2","9e0142d53e4ff46d43fdae61fee08bffffbfe6f598abdda466c2a53288bd5e4fa2").map(Z),Cc=ut(kc),Ec=new Array(3).concat("e5f5f999d8c92ca25f","edf8fbb2e2e266c2a4238b45","edf8fbb2e2e266c2a42ca25f006d2c","edf8fbccece699d8c966c2a42ca25f006d2c","edf8fbccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45005824","f7fcfde5f5f9ccece699d8c966c2a441ae76238b45006d2c00441b").map(Z),Nc=ut(Ec),Rc=new Array(3).concat("e0ecf49ebcda8856a7","edf8fbb3cde38c96c688419d","edf8fbb3cde38c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68856a7810f7c","edf8fbbfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d6e016b","f7fcfde0ecf4bfd3e69ebcda8c96c68c6bb188419d810f7c4d004b").map(Z),Lc=ut(Rc),Pc=new Array(3).concat("e0f3dba8ddb543a2ca","f0f9e8bae4bc7bccc42b8cbe","f0f9e8bae4bc7bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc443a2ca0868ac","f0f9e8ccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe08589e","f7fcf0e0f3dbccebc5a8ddb57bccc44eb3d32b8cbe0868ac084081").map(Z),Dc=ut(Pc),Ic=new Array(3).concat("fee8c8fdbb84e34a33","fef0d9fdcc8afc8d59d7301f","fef0d9fdcc8afc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59e34a33b30000","fef0d9fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301f990000","fff7ecfee8c8fdd49efdbb84fc8d59ef6548d7301fb300007f0000").map(Z),Oc=ut(Ic),Fc=new Array(3).concat("ece2f0a6bddb1c9099","f6eff7bdc9e167a9cf02818a","f6eff7bdc9e167a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf1c9099016c59","f6eff7d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016450","fff7fbece2f0d0d1e6a6bddb67a9cf3690c002818a016c59014636").map(Z),zc=ut(Fc),Bc=new Array(3).concat("ece7f2a6bddb2b8cbe","f1eef6bdc9e174a9cf0570b0","f1eef6bdc9e174a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf2b8cbe045a8d","f1eef6d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0034e7b","fff7fbece7f2d0d1e6a6bddb74a9cf3690c00570b0045a8d023858").map(Z),qc=ut(Bc),Yc=new Array(3).concat("e7e1efc994c7dd1c77","f1eef6d7b5d8df65b0ce1256","f1eef6d7b5d8df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0dd1c77980043","f1eef6d4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125691003f","f7f4f9e7e1efd4b9dac994c7df65b0e7298ace125698004367001f").map(Z),Uc=ut(Yc),Wc=new Array(3).concat("fde0ddfa9fb5c51b8a","feebe2fbb4b9f768a1ae017e","feebe2fbb4b9f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1c51b8a7a0177","feebe2fcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a0177","fff7f3fde0ddfcc5c0fa9fb5f768a1dd3497ae017e7a017749006a").map(Z),Gc=ut(Wc),Hc=new Array(3).concat("edf8b17fcdbb2c7fb8","ffffcca1dab441b6c4225ea8","ffffcca1dab441b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c42c7fb8253494","ffffccc7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea80c2c84","ffffd9edf8b1c7e9b47fcdbb41b6c41d91c0225ea8253494081d58").map(Z),Xc=ut(Hc),Vc=new Array(3).concat("f7fcb9addd8e31a354","ffffccc2e69978c679238443","ffffccc2e69978c67931a354006837","ffffccd9f0a3addd8e78c67931a354006837","ffffccd9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443005a32","ffffe5f7fcb9d9f0a3addd8e78c67941ab5d238443006837004529").map(Z),jc=ut(Vc),Zc=new Array(3).concat("fff7bcfec44fd95f0e","ffffd4fed98efe9929cc4c02","ffffd4fed98efe9929d95f0e993404","ffffd4fee391fec44ffe9929d95f0e993404","ffffd4fee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c028c2d04","ffffe5fff7bcfee391fec44ffe9929ec7014cc4c02993404662506").map(Z),Kc=ut(Zc),Qc=new Array(3).concat("ffeda0feb24cf03b20","ffffb2fecc5cfd8d3ce31a1c","ffffb2fecc5cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cf03b20bd0026","ffffb2fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cb10026","ffffccffeda0fed976feb24cfd8d3cfc4e2ae31a1cbd0026800026").map(Z),Jc=ut(Qc),tf=new Array(3).concat("deebf79ecae13182bd","eff3ffbdd7e76baed62171b5","eff3ffbdd7e76baed63182bd08519c","eff3ffc6dbef9ecae16baed63182bd08519c","eff3ffc6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b5084594","f7fbffdeebf7c6dbef9ecae16baed64292c62171b508519c08306b").map(Z),nf=ut(tf),ef=new Array(3).concat("e5f5e0a1d99b31a354","edf8e9bae4b374c476238b45","edf8e9bae4b374c47631a354006d2c","edf8e9c7e9c0a1d99b74c47631a354006d2c","edf8e9c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45005a32","f7fcf5e5f5e0c7e9c0a1d99b74c47641ab5d238b45006d2c00441b").map(Z),rf=ut(ef),of=new Array(3).concat("f0f0f0bdbdbd636363","f7f7f7cccccc969696525252","f7f7f7cccccc969696636363252525","f7f7f7d9d9d9bdbdbd969696636363252525","f7f7f7d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525","fffffff0f0f0d9d9d9bdbdbd969696737373525252252525000000").map(Z),af=ut(of),uf=new Array(3).concat("efedf5bcbddc756bb1","f2f0f7cbc9e29e9ac86a51a3","f2f0f7cbc9e29e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8756bb154278f","f2f0f7dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a34a1486","fcfbfdefedf5dadaebbcbddc9e9ac8807dba6a51a354278f3f007d").map(Z),cf=ut(uf),ff=new Array(3).concat("fee0d2fc9272de2d26","fee5d9fcae91fb6a4acb181d","fee5d9fcae91fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4ade2d26a50f15","fee5d9fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181d99000d","fff5f0fee0d2fcbba1fc9272fb6a4aef3b2ccb181da50f1567000d").map(Z),sf=ut(ff),lf=new Array(3).concat("fee6cefdae6be6550d","feeddefdbe85fd8d3cd94701","feeddefdbe85fd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3ce6550da63603","feeddefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d948018c2d04","fff5ebfee6cefdd0a2fdae6bfd8d3cf16913d94801a636037f2704").map(Z),df=ut(lf);function hf(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(-4.54-t*(35.34-t*(2381.73-t*(6402.7-t*(7024.72-t*2710.57)))))))+", "+Math.max(0,Math.min(255,Math.round(32.49+t*(170.73+t*(52.82-t*(131.46-t*(176.58-t*67.37)))))))+", "+Math.max(0,Math.min(255,Math.round(81.24+t*(442.36-t*(2482.43-t*(6167.24-t*(6614.94-t*2475.67)))))))+")"}var pf=co(jt(300,.5,0),jt(-240,.5,1)),gf=co(jt(-100,.75,.35),jt(80,1.5,.8)),mf=co(jt(260,.75,.35),jt(80,1.5,.8)),Uo=jt();function yf(t){(t<0||t>1)&&(t-=Math.floor(t));var n=Math.abs(t-.5);return Uo.h=360*t-100,Uo.s=1.5-1.5*n,Uo.l=.8-.9*n,Uo+""}var Wo=ve(),Lx=Math.PI/3,Px=Math.PI*2/3;function bf(t){var n;return t=(.5-t)*Math.PI,Wo.r=255*(n=Math.sin(t))*n,Wo.g=255*(n=Math.sin(t+Lx))*n,Wo.b=255*(n=Math.sin(t+Px))*n,Wo+""}function wf(t){return t=Math.max(0,Math.min(1,t)),"rgb("+Math.max(0,Math.min(255,Math.round(34.61+t*(1172.33-t*(10793.56-t*(33300.12-t*(38394.49-t*14825.05)))))))+", "+Math.max(0,Math.min(255,Math.round(23.31+t*(557.33+t*(1225.33-t*(3574.96-t*(1073.77+t*707.56)))))))+", "+Math.max(0,Math.min(255,Math.round(27.2+t*(3211.1-t*(15327.97-t*(27814-t*(22569.18-t*6838.66)))))))+")"}function Xo(t){var n=t.length;return function(e){return t[Math.max(0,Math.min(n-1,Math.floor(e*n)))]}}var vf=Xo(Z("44015444025645045745055946075a46085c460a5d460b5e470d60470e6147106347116447136548146748166848176948186a481a6c481b6d481c6e481d6f481f70482071482173482374482475482576482677482878482979472a7a472c7a472d7b472e7c472f7d46307e46327e46337f463480453581453781453882443983443a83443b84433d84433e85423f854240864241864142874144874045884046883f47883f48893e49893e4a893e4c8a3d4d8a3d4e8a3c4f8a3c508b3b518b3b528b3a538b3a548c39558c39568c38588c38598c375a8c375b8d365c8d365d8d355e8d355f8d34608d34618d33628d33638d32648e32658e31668e31678e31688e30698e306a8e2f6b8e2f6c8e2e6d8e2e6e8e2e6f8e2d708e2d718e2c718e2c728e2c738e2b748e2b758e2a768e2a778e2a788e29798e297a8e297b8e287c8e287d8e277e8e277f8e27808e26818e26828e26828e25838e25848e25858e24868e24878e23888e23898e238a8d228b8d228c8d228d8d218e8d218f8d21908d21918c20928c20928c20938c1f948c1f958b1f968b1f978b1f988b1f998a1f9a8a1e9b8a1e9c891e9d891f9e891f9f881fa0881fa1881fa1871fa28720a38620a48621a58521a68522a78522a88423a98324aa8325ab8225ac8226ad8127ad8128ae8029af7f2ab07f2cb17e2db27d2eb37c2fb47c31b57b32b67a34b67935b77937b87838b9773aba763bbb753dbc743fbc7340bd7242be7144bf7046c06f48c16e4ac16d4cc26c4ec36b50c46a52c56954c56856c66758c7655ac8645cc8635ec96260ca6063cb5f65cb5e67cc5c69cd5b6ccd5a6ece5870cf5773d05675d05477d1537ad1517cd2507fd34e81d34d84d44b86d54989d5488bd6468ed64590d74393d74195d84098d83e9bd93c9dd93ba0da39a2da37a5db36a8db34aadc32addc30b0dd2fb2dd2db5de2bb8de29bade28bddf26c0df25c2df23c5e021c8e020cae11fcde11dd0e11cd2e21bd5e21ad8e219dae319dde318dfe318e2e418e5e419e7e419eae51aece51befe51cf1e51df4e61ef6e620f8e621fbe723fde725")),xf=Xo(Z("00000401000501010601010802010902020b02020d03030f03031204041405041606051806051a07061c08071e0907200a08220b09240c09260d0a290e0b2b100b2d110c2f120d31130d34140e36150e38160f3b180f3d19103f1a10421c10441d11471e114920114b21114e22115024125325125527125829115a2a115c2c115f2d11612f116331116533106734106936106b38106c390f6e3b0f703d0f713f0f72400f74420f75440f764510774710784910784a10794c117a4e117b4f127b51127c52137c54137d56147d57157e59157e5a167e5c167f5d177f5f187f601880621980641a80651a80671b80681c816a1c816b1d816d1d816e1e81701f81721f817320817521817621817822817922827b23827c23827e24828025828125818326818426818627818827818928818b29818c29818e2a81902a81912b81932b80942c80962c80982d80992d809b2e7f9c2e7f9e2f7fa02f7fa1307ea3307ea5317ea6317da8327daa337dab337cad347cae347bb0357bb2357bb3367ab5367ab73779b83779ba3878bc3978bd3977bf3a77c03a76c23b75c43c75c53c74c73d73c83e73ca3e72cc3f71cd4071cf4070d0416fd2426fd3436ed5446dd6456cd8456cd9466bdb476adc4869de4968df4a68e04c67e24d66e34e65e44f64e55064e75263e85362e95462ea5661eb5760ec5860ed5a5fee5b5eef5d5ef05f5ef1605df2625df2645cf3655cf4675cf4695cf56b5cf66c5cf66e5cf7705cf7725cf8745cf8765cf9785df9795df97b5dfa7d5efa7f5efa815ffb835ffb8560fb8761fc8961fc8a62fc8c63fc8e64fc9065fd9266fd9467fd9668fd9869fd9a6afd9b6bfe9d6cfe9f6dfea16efea36ffea571fea772fea973feaa74feac76feae77feb078feb27afeb47bfeb67cfeb77efeb97ffebb81febd82febf84fec185fec287fec488fec68afec88cfeca8dfecc8ffecd90fecf92fed194fed395fed597fed799fed89afdda9cfddc9efddea0fde0a1fde2a3fde3a5fde5a7fde7a9fde9aafdebacfcecaefceeb0fcf0b2fcf2b4fcf4b6fcf6b8fcf7b9fcf9bbfcfbbdfcfdbf")),_f=Xo(Z("00000401000501010601010802010a02020c02020e03021004031204031405041706041907051b08051d09061f0a07220b07240c08260d08290e092b10092d110a30120a32140b34150b37160b39180c3c190c3e1b0c411c0c431e0c451f0c48210c4a230c4c240c4f260c51280b53290b552b0b572d0b592f0a5b310a5c320a5e340a5f3609613809623909633b09643d09653e0966400a67420a68440a68450a69470b6a490b6a4a0c6b4c0c6b4d0d6c4f0d6c510e6c520e6d540f6d550f6d57106e59106e5a116e5c126e5d126e5f136e61136e62146e64156e65156e67166e69166e6a176e6c186e6d186e6f196e71196e721a6e741a6e751b6e771c6d781c6d7a1d6d7c1d6d7d1e6d7f1e6c801f6c82206c84206b85216b87216b88226a8a226a8c23698d23698f24699025689225689326679526679727669827669a28659b29649d29649f2a63a02a63a22b62a32c61a52c60a62d60a82e5fa92e5eab2f5ead305dae305cb0315bb1325ab3325ab43359b63458b73557b93556ba3655bc3754bd3853bf3952c03a51c13a50c33b4fc43c4ec63d4dc73e4cc83f4bca404acb4149cc4248ce4347cf4446d04545d24644d34743d44842d54a41d74b3fd84c3ed94d3dda4e3cdb503bdd513ade5238df5337e05536e15635e25734e35933e45a31e55c30e65d2fe75e2ee8602de9612bea632aeb6429eb6628ec6726ed6925ee6a24ef6c23ef6e21f06f20f1711ff1731df2741cf3761bf37819f47918f57b17f57d15f67e14f68013f78212f78410f8850ff8870ef8890cf98b0bf98c0af98e09fa9008fa9207fa9407fb9606fb9706fb9906fb9b06fb9d07fc9f07fca108fca309fca50afca60cfca80dfcaa0ffcac11fcae12fcb014fcb216fcb418fbb61afbb81dfbba1ffbbc21fbbe23fac026fac228fac42afac62df9c72ff9c932f9cb35f8cd37f8cf3af7d13df7d340f6d543f6d746f5d949f5db4cf4dd4ff4df53f4e156f3e35af3e55df2e661f2e865f2ea69f1ec6df1ed71f1ef75f1f179f2f27df2f482f3f586f3f68af4f88ef5f992f6fa96f8fb9af9fc9dfafda1fcffa4")),Mf=Xo(Z("0d088710078813078916078a19068c1b068d1d068e20068f2206902406912605912805922a05932c05942e05952f059631059733059735049837049938049a3a049a3c049b3e049c3f049c41049d43039e44039e46039f48039f4903a04b03a14c02a14e02a25002a25102a35302a35502a45601a45801a45901a55b01a55c01a65e01a66001a66100a76300a76400a76600a76700a86900a86a00a86c00a86e00a86f00a87100a87201a87401a87501a87701a87801a87a02a87b02a87d03a87e03a88004a88104a78305a78405a78606a68707a68808a68a09a58b0aa58d0ba58e0ca48f0da4910ea3920fa39410a29511a19613a19814a099159f9a169f9c179e9d189d9e199da01a9ca11b9ba21d9aa31e9aa51f99a62098a72197a82296aa2395ab2494ac2694ad2793ae2892b02991b12a90b22b8fb32c8eb42e8db52f8cb6308bb7318ab83289ba3388bb3488bc3587bd3786be3885bf3984c03a83c13b82c23c81c33d80c43e7fc5407ec6417dc7427cc8437bc9447aca457acb4679cc4778cc4977cd4a76ce4b75cf4c74d04d73d14e72d24f71d35171d45270d5536fd5546ed6556dd7566cd8576bd9586ada5a6ada5b69db5c68dc5d67dd5e66de5f65de6164df6263e06363e16462e26561e26660e3685fe4695ee56a5de56b5de66c5ce76e5be76f5ae87059e97158e97257ea7457eb7556eb7655ec7754ed7953ed7a52ee7b51ef7c51ef7e50f07f4ff0804ef1814df1834cf2844bf3854bf3874af48849f48948f58b47f58c46f68d45f68f44f79044f79143f79342f89441f89540f9973ff9983ef99a3efa9b3dfa9c3cfa9e3bfb9f3afba139fba238fca338fca537fca636fca835fca934fdab33fdac33fdae32fdaf31fdb130fdb22ffdb42ffdb52efeb72dfeb82cfeba2cfebb2bfebd2afebe2afec029fdc229fdc328fdc527fdc627fdc827fdca26fdcb26fccd25fcce25fcd025fcd225fbd324fbd524fbd724fad824fada24f9dc24f9dd25f8df25f8e125f7e225f7e425f6e626f6e826f5e926f5eb27f4ed27f3ee27f3f027f2f227f1f426f1f525f0f724f0f921"));function xt(t){return function(){return t}}var l1=Math.cos;var Tf=Math.min,Vo=Math.sin,yt=Math.sqrt,a1=1e-12,yi=Math.PI,__=yi/2,Jo=2*yi;function d1(t){let n=3;return t.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{let r=Math.floor(e);if(!(r>=0))throw new RangeError(`invalid digits: ${e}`);n=r}return t},()=>new _e(n)}var M_=Array.prototype.slice;function h1(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function p1(t){this._context=t}p1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._context.lineTo(t,n);break}}};function Pe(t){return new p1(t)}function g1(t){return t[0]}function m1(t){return t[1]}function ta(t,n){var e=xt(!0),r=null,i=Pe,o=null,a=d1(u);t=typeof t=="function"?t:t===void 0?g1:xt(t),n=typeof n=="function"?n:n===void 0?m1:xt(n);function u(c){var f,s=(c=h1(c)).length,d,l=!1,h;for(r==null&&(o=i(h=a())),f=0;f<=s;++f)!(f<s&&e(d=c[f],f,c))===l&&((l=!l)?o.lineStart():o.lineEnd()),l&&o.point(+t(d,f,c),+n(d,f,c));if(h)return o=null,h+""||null}return u.x=function(c){return arguments.length?(t=typeof c=="function"?c:xt(+c),u):t},u.y=function(c){return arguments.length?(n=typeof c=="function"?c:xt(+c),u):n},u.defined=function(c){return arguments.length?(e=typeof c=="function"?c:xt(!!c),u):e},u.curve=function(c){return arguments.length?(i=c,r!=null&&(o=i(r)),u):i},u.context=function(c){return arguments.length?(c==null?r=o=null:o=i(r=c),u):r},u}function kf(t,n,e){var r=null,i=xt(!0),o=null,a=Pe,u=null,c=d1(f);t=typeof t=="function"?t:t===void 0?g1:xt(+t),n=typeof n=="function"?n:xt(n===void 0?0:+n),e=typeof e=="function"?e:e===void 0?m1:xt(+e);function f(d){var l,h,p,m=(d=h1(d)).length,v,x=!1,w,M=new Array(m),g=new Array(m);for(o==null&&(u=a(w=c())),l=0;l<=m;++l){if(!(l<m&&i(v=d[l],l,d))===x)if(x=!x)h=l,u.areaStart(),u.lineStart();else{for(u.lineEnd(),u.lineStart(),p=l-1;p>=h;--p)u.point(M[p],g[p]);u.lineEnd(),u.areaEnd()}x&&(M[l]=+t(v,l,d),g[l]=+n(v,l,d),u.point(r?+r(v,l,d):M[l],e?+e(v,l,d):g[l]))}if(w)return u=null,w+""||null}function s(){return ta().defined(i).curve(a).context(o)}return f.x=function(d){return arguments.length?(t=typeof d=="function"?d:xt(+d),r=null,f):t},f.x0=function(d){return arguments.length?(t=typeof d=="function"?d:xt(+d),f):t},f.x1=function(d){return arguments.length?(r=d==null?null:typeof d=="function"?d:xt(+d),f):r},f.y=function(d){return arguments.length?(n=typeof d=="function"?d:xt(+d),e=null,f):n},f.y0=function(d){return arguments.length?(n=typeof d=="function"?d:xt(+d),f):n},f.y1=function(d){return arguments.length?(e=d==null?null:typeof d=="function"?d:xt(+d),f):e},f.lineX0=f.lineY0=function(){return s().x(t).y(n)},f.lineY1=function(){return s().x(t).y(e)},f.lineX1=function(){return s().x(r).y(n)},f.defined=function(d){return arguments.length?(i=typeof d=="function"?d:xt(!!d),f):i},f.curve=function(d){return arguments.length?(a=d,o!=null&&(u=a(o)),f):a},f.context=function(d){return arguments.length?(d==null?o=u=null:u=a(o=d),f):o},f}var $_=Dx(Pe);function y1(t){this._curve=t}y1.prototype={areaStart:function(){this._curve.areaStart()},areaEnd:function(){this._curve.areaEnd()},lineStart:function(){this._curve.lineStart()},lineEnd:function(){this._curve.lineEnd()},point:function(t,n){this._curve.point(n*Math.sin(t),n*-Math.cos(t))}};function Dx(t){function n(e){return new y1(t(e))}return n._curve=t,n}var jo=class{constructor(n,e){this._context=n,this._x=e}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(n,e){switch(n=+n,e=+e,this._point){case 0:{this._point=1,this._line?this._context.lineTo(n,e):this._context.moveTo(n,e);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+n)/2,this._y0,this._x0,e,n,e):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+e)/2,n,this._y0,n,e);break}}this._x0=n,this._y0=e}};function b1(t){return new jo(t,!0)}function w1(t){return new jo(t,!1)}var Ix=yt(3),Cf={draw(t,n){let e=yt(n+Tf(n/28,.75))*.59436,r=e/2,i=r*Ix;t.moveTo(0,e),t.lineTo(0,-e),t.moveTo(-i,-r),t.lineTo(i,r),t.moveTo(-i,r),t.lineTo(i,-r)}},hr={draw(t,n){let e=yt(n/yi);t.moveTo(e,0),t.arc(0,0,e,0,Jo)}},Ef={draw(t,n){let e=yt(n/5)/2;t.moveTo(-3*e,-e),t.lineTo(-e,-e),t.lineTo(-e,-3*e),t.lineTo(e,-3*e),t.lineTo(e,-e),t.lineTo(3*e,-e),t.lineTo(3*e,e),t.lineTo(e,e),t.lineTo(e,3*e),t.lineTo(-e,3*e),t.lineTo(-e,e),t.lineTo(-3*e,e),t.closePath()}},v1=yt(1/3),Ox=v1*2,Nf={draw(t,n){let e=yt(n/Ox),r=e*v1;t.moveTo(0,-e),t.lineTo(r,0),t.lineTo(0,e),t.lineTo(-r,0),t.closePath()}},Rf={draw(t,n){let e=yt(n)*.62625;t.moveTo(0,-e),t.lineTo(e,0),t.lineTo(0,e),t.lineTo(-e,0),t.closePath()}},Lf={draw(t,n){let e=yt(n-Tf(n/7,2))*.87559;t.moveTo(-e,0),t.lineTo(e,0),t.moveTo(0,e),t.lineTo(0,-e)}},Pf={draw(t,n){let e=yt(n),r=-e/2;t.rect(r,r,e,e)}},Df={draw(t,n){let e=yt(n)*.4431;t.moveTo(e,e),t.lineTo(e,-e),t.lineTo(-e,-e),t.lineTo(-e,e),t.closePath()}},Fx=.8908130915292852,x1=Vo(yi/10)/Vo(7*yi/10),zx=Vo(Jo/10)*x1,Bx=-l1(Jo/10)*x1,If={draw(t,n){let e=yt(n*Fx),r=zx*e,i=Bx*e;t.moveTo(0,-e),t.lineTo(r,i);for(let o=1;o<5;++o){let a=Jo*o/5,u=l1(a),c=Vo(a);t.lineTo(c*e,-u*e),t.lineTo(u*r-c*i,c*r+u*i)}t.closePath()}},$f=yt(3),Of={draw(t,n){let e=-yt(n/($f*3));t.moveTo(0,e*2),t.lineTo(-$f*e,-e),t.lineTo($f*e,-e),t.closePath()}},qx=yt(3),Ff={draw(t,n){let e=yt(n)*.6824,r=e/2,i=e*qx/2;t.moveTo(0,-e),t.lineTo(i,r),t.lineTo(-i,r),t.closePath()}},en=-.5,rn=yt(3)/2,Af=1/yt(12),Yx=(Af/2+1)*3,zf={draw(t,n){let e=yt(n/Yx),r=e/2,i=e*Af,o=r,a=e*Af+e,u=-o,c=a;t.moveTo(r,i),t.lineTo(o,a),t.lineTo(u,c),t.lineTo(en*r-rn*i,rn*r+en*i),t.lineTo(en*o-rn*a,rn*o+en*a),t.lineTo(en*u-rn*c,rn*u+en*c),t.lineTo(en*r+rn*i,en*i-rn*r),t.lineTo(en*o+rn*a,en*a-rn*o),t.lineTo(en*u+rn*c,en*c-rn*u),t.closePath()}},Bf={draw(t,n){let e=yt(n-Tf(n/6,1.7))*.6189;t.moveTo(-e,-e),t.lineTo(e,e),t.moveTo(-e,e),t.lineTo(e,-e)}},_1=[hr,Ef,Nf,Pf,If,Of,zf],M1=[hr,Lf,Bf,Ff,Cf,Df,Rf];function ee(){}function Zo(t,n,e){t._context.bezierCurveTo((2*t._x0+t._x1)/3,(2*t._y0+t._y1)/3,(t._x0+2*t._x1)/3,(t._y0+2*t._y1)/3,(t._x0+4*t._x1+n)/6,(t._y0+4*t._y1+e)/6)}function na(t){this._context=t}na.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Zo(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function $1(t){return new na(t)}function S1(t){this._context=t}S1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x2=t,this._y2=n;break;case 1:this._point=2,this._x3=t,this._y3=n;break;case 2:this._point=3,this._x4=t,this._y4=n,this._context.moveTo((this._x0+4*this._x1+t)/6,(this._y0+4*this._y1+n)/6);break;default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function A1(t){return new S1(t)}function T1(t){this._context=t}T1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var e=(this._x0+4*this._x1+t)/6,r=(this._y0+4*this._y1+n)/6;this._line?this._context.lineTo(e,r):this._context.moveTo(e,r);break;case 3:this._point=4;default:Zo(this,t,n);break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n}};function k1(t){return new T1(t)}function C1(t,n){this._basis=new na(t),this._beta=n}C1.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var t=this._x,n=this._y,e=t.length-1;if(e>0)for(var r=t[0],i=n[0],o=t[e]-r,a=n[e]-i,u=-1,c;++u<=e;)c=u/e,this._basis.point(this._beta*t[u]+(1-this._beta)*(r+c*o),this._beta*n[u]+(1-this._beta)*(i+c*a));this._x=this._y=null,this._basis.lineEnd()},point:function(t,n){this._x.push(+t),this._y.push(+n)}};var E1=(function t(n){function e(r){return n===1?new na(r):new C1(r,n)}return e.beta=function(r){return t(+r)},e})(.85);function Ko(t,n,e){t._context.bezierCurveTo(t._x1+t._k*(t._x2-t._x0),t._y1+t._k*(t._y2-t._y0),t._x2+t._k*(t._x1-n),t._y2+t._k*(t._y1-e),t._x2,t._y2)}function qf(t,n){this._context=t,this._k=(1-n)/6}qf.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Ko(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2,this._x1=t,this._y1=n;break;case 2:this._point=3;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var N1=(function t(n){function e(r){return new qf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Yf(t,n){this._context=t,this._k=(1-n)/6}Yf.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var R1=(function t(n){function e(r){return new Yf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Uf(t,n){this._context=t,this._k=(1-n)/6}Uf.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Ko(this,t,n);break}this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var L1=(function t(n){function e(r){return new Uf(r,n)}return e.tension=function(r){return t(+r)},e})(0);function Wf(t,n,e){var r=t._x1,i=t._y1,o=t._x2,a=t._y2;if(t._l01_a>a1){var u=2*t._l01_2a+3*t._l01_a*t._l12_a+t._l12_2a,c=3*t._l01_a*(t._l01_a+t._l12_a);r=(r*u-t._x0*t._l12_2a+t._x2*t._l01_2a)/c,i=(i*u-t._y0*t._l12_2a+t._y2*t._l01_2a)/c}if(t._l23_a>a1){var f=2*t._l23_2a+3*t._l23_a*t._l12_a+t._l12_2a,s=3*t._l23_a*(t._l23_a+t._l12_a);o=(o*f+t._x1*t._l23_2a-n*t._l12_2a)/s,a=(a*f+t._y1*t._l23_2a-e*t._l12_2a)/s}t._context.bezierCurveTo(r,i,o,a,t._x2,t._y2)}function P1(t,n){this._context=t,this._alpha=n}P1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var D1=(function t(n){function e(r){return n?new P1(r,n):new qf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function I1(t,n){this._context=t,this._alpha=n}I1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=t,this._y3=n;break;case 1:this._point=2,this._context.moveTo(this._x4=t,this._y4=n);break;case 2:this._point=3,this._x5=t,this._y5=n;break;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var O1=(function t(n){function e(r){return n?new I1(r,n):new Yf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function F1(t,n){this._context=t,this._alpha=n}F1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){if(t=+t,n=+n,this._point){var e=this._x2-t,r=this._y2-n;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(e*e+r*r,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Wf(this,t,n);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=t,this._y0=this._y1,this._y1=this._y2,this._y2=n}};var z1=(function t(n){function e(r){return n?new F1(r,n):new Uf(r,0)}return e.alpha=function(r){return t(+r)},e})(.5);function B1(t){this._context=t}B1.prototype={areaStart:ee,areaEnd:ee,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(t,n){t=+t,n=+n,this._point?this._context.lineTo(t,n):(this._point=1,this._context.moveTo(t,n))}};function q1(t){return new B1(t)}function u1(t){return t<0?-1:1}function c1(t,n,e){var r=t._x1-t._x0,i=n-t._x1,o=(t._y1-t._y0)/(r||i<0&&-0),a=(e-t._y1)/(i||r<0&&-0),u=(o*i+a*r)/(r+i);return(u1(o)+u1(a))*Math.min(Math.abs(o),Math.abs(a),.5*Math.abs(u))||0}function f1(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function Sf(t,n,e){var r=t._x0,i=t._y0,o=t._x1,a=t._y1,u=(o-r)/3;t._context.bezierCurveTo(r+u,i+u*n,o-u,a-u*e,o,a)}function Qo(t){this._context=t}Qo.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:Sf(this,this._t0,f1(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(t=+t,n=+n,!(t===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,Sf(this,f1(this,e=c1(this,t,n)),e);break;default:Sf(this,this._t0,e=c1(this,t,n));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}};function Y1(t){this._context=new U1(t)}(Y1.prototype=Object.create(Qo.prototype)).point=function(t,n){Qo.prototype.point.call(this,n,t)};function U1(t){this._context=t}U1.prototype={moveTo:function(t,n){this._context.moveTo(n,t)},closePath:function(){this._context.closePath()},lineTo:function(t,n){this._context.lineTo(n,t)},bezierCurveTo:function(t,n,e,r,i,o){this._context.bezierCurveTo(n,t,r,e,o,i)}};function W1(t){return new Qo(t)}function G1(t){return new Y1(t)}function H1(t){this._context=t}H1.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var t=this._x,n=this._y,e=t.length;if(e)if(this._line?this._context.lineTo(t[0],n[0]):this._context.moveTo(t[0],n[0]),e===2)this._context.lineTo(t[1],n[1]);else for(var r=s1(t),i=s1(n),o=0,a=1;a<e;++o,++a)this._context.bezierCurveTo(r[0][o],i[0][o],r[1][o],i[1][o],t[a],n[a]);(this._line||this._line!==0&&e===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(t,n){this._x.push(+t),this._y.push(+n)}};function s1(t){var n,e=t.length-1,r,i=new Array(e),o=new Array(e),a=new Array(e);for(i[0]=0,o[0]=2,a[0]=t[0]+2*t[1],n=1;n<e-1;++n)i[n]=1,o[n]=4,a[n]=4*t[n]+2*t[n+1];for(i[e-1]=2,o[e-1]=7,a[e-1]=8*t[e-1]+t[e],n=1;n<e;++n)r=i[n]/o[n-1],o[n]-=r,a[n]-=r*a[n-1];for(i[e-1]=a[e-1]/o[e-1],n=e-2;n>=0;--n)i[n]=(a[n]-i[n+1])/o[n];for(o[e-1]=(t[e]+i[e-1])/2,n=0;n<e-1;++n)o[n]=2*t[n+1]-i[n+1];return[i,o]}function X1(t){return new H1(t)}function ea(t,n){this._context=t,this._t=n}ea.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,n),this._context.lineTo(t,n);else{var e=this._x*(1-this._t)+t*this._t;this._context.lineTo(e,this._y),this._context.lineTo(e,n)}break}}this._x=t,this._y=n}};function V1(t){return new ea(t,.5)}function j1(t){return new ea(t,0)}function Z1(t){return new ea(t,1)}function An(t){return t!=null&&!Number.isNaN(t)}function fn(t,n){return+An(n)-+An(t)||At(t,n)}function pa(t,n){return+An(n)-+An(t)||Xe(t,n)}function Ls(t){return t!=null&&`${t}`!=""}function Vp(t){return isFinite(t)?t:NaN}function Ma(t){return t>0&&isFinite(t)?t:NaN}function Ps(t){return t<0&&isFinite(t)?t:NaN}function Ux(t,n){if(t instanceof Date||(t=new Date(+t)),isNaN(t))return typeof n=="function"?n(t):n;let e=t.getUTCHours(),r=t.getUTCMinutes(),i=t.getUTCSeconds(),o=t.getUTCMilliseconds();return`${Wx(t.getUTCFullYear())}-${Gn(t.getUTCMonth()+1,2)}-${Gn(t.getUTCDate(),2)}${e||r||i||o?`T${Gn(e,2)}:${Gn(r,2)}${i||o?`:${Gn(i,2)}${o?`.${Gn(o,3)}`:""}`:""}Z`:""}`}function Wx(t){return t<0?`-${Gn(-t,6)}`:t>9999?`+${Gn(t,6)}`:Gn(t,4)}function Gn(t,n){return`${t}`.padStart(n,"0")}var Gx=/^(?:[-+]\d{2})?\d{4}(?:-\d{2}(?:-\d{2})?)?(?:T\d{2}:\d{2}(?::\d{2}(?:\.\d{3})?)?(?:Z|[-+]\d{2}:?\d{2})?)?$/;function jp(t,n){return Gx.test(t+="")?new Date(t):typeof n=="function"?n(t):n}function vr(t){if(t==null)return;let n=t[0],e=t[t.length-1];return Xe(n,e)}var mr=1e3,ie=mr*60,oe=ie*60,Tn=oe*24,Mn=Tn*7,De=Tn*30,re=Tn*365,Gf=[["millisecond",1],["2 milliseconds",2],["5 milliseconds",5],["10 milliseconds",10],["20 milliseconds",20],["50 milliseconds",50],["100 milliseconds",100],["200 milliseconds",200],["500 milliseconds",500],["second",mr],["5 seconds",5*mr],["15 seconds",15*mr],["30 seconds",30*mr],["minute",ie],["5 minutes",5*ie],["15 minutes",15*ie],["30 minutes",30*ie],["hour",oe],["3 hours",3*oe],["6 hours",6*oe],["12 hours",12*oe],["day",Tn],["2 days",2*Tn],["week",Mn],["2 weeks",2*Mn],["month",De],["3 months",3*De],["6 months",6*De],["year",re],["2 years",2*re],["5 years",5*re],["10 years",10*re],["20 years",20*re],["50 years",50*re],["100 years",100*re]],Ds=new Map([["second",mr],["minute",ie],["hour",oe],["day",Tn],["monday",Mn],["tuesday",Mn],["wednesday",Mn],["thursday",Mn],["friday",Mn],["saturday",Mn],["sunday",Mn],["week",Mn],["month",De],["year",re]]),Zp=new Map([["second",Nt],["minute",$e],["hour",Ae],["day",wn],["monday",Ce],["tuesday",Xu],["wednesday",Vu],["thursday",zn],["friday",ju],["saturday",Zu],["sunday",vn],["week",vn],["month",Re],["year",Ot]]),Is=new Map([["second",Nt],["minute",Se],["hour",Te],["day",ui],["monday",Ne],["tuesday",Ku],["wednesday",Qu],["thursday",Bn],["friday",Ju],["saturday",tc],["sunday",xn],["week",xn],["month",Le],["year",Ft]]),Ri=Symbol("intervalDuration"),$a=Symbol("intervalType");for(let[t,n]of Zp)n[Ri]=Ds.get(t),n[$a]="time";for(let[t,n]of Is)n[Ri]=Ds.get(t),n[$a]="utc";var vi=[["year",Ft,"utc"],["month",Le,"utc"],["day",ui,"utc",6*De],["hour",Te,"utc",3*Tn],["minute",Se,"utc",6*oe],["second",Nt,"utc",30*ie]],la=[["year",Ot,"time"],["month",Re,"time"],["day",wn,"time",6*De],["hour",Ae,"time",3*Tn],["minute",$e,"time",6*oe],["second",Nt,"time",30*ie]],Hx=[vi[0],la[0],vi[1],la[1],vi[2],la[2],...vi.slice(3)];function Kp(t){let n=`${t}`.toLowerCase();n.endsWith("s")&&(n=n.slice(0,-1));let e=1,r=/^(?:(\d+)\s+)/.exec(n);switch(r&&(n=n.slice(r[0].length),e=+r[1]),n){case"quarter":n="month",e*=3;break;case"half":n="month",e*=6;break}let i=Is.get(n);if(!i)throw new Error(`unknown interval: ${t}`);if(e>1&&!i.every)throw new Error(`non-periodic interval: ${n}`);return[n,e]}function Qp(t){return Jp(Kp(t),"time")}function Os(t){return Jp(Kp(t),"utc")}function Jp([t,n],e){let r=(e==="time"?Zp:Is).get(t);return n>1&&(r=r.every(n),r[Ri]=Ds.get(t)*n,r[$a]=e),r}function K1(t,n){if(!(n>1))return;let e=t[Ri];if(!Gf.some(([,i])=>i===e)||e%Tn===0&&Tn<e&&e<De)return;let[r]=Gf[Ve(([,i])=>Math.log(i)).center(Gf,Math.log(e*n))];return(t[$a]==="time"?Qp:Os)(r)}function Q1(t,n,e){let r=n==="time"?li:ne;if(e==null)return r(t==="year"?"%Y":t==="month"?"%Y-%m":t==="day"?"%Y-%m-%d":t==="hour"||t==="minute"?"%Y-%m-%dT%H:%M":t==="second"?"%Y-%m-%dT%H:%M:%S":"%Y-%m-%dT%H:%M:%S.%L");let i=Xx(e);switch(t){case"millisecond":return pr(r(".%L"),r(":%M:%S"),i);case"second":return pr(r(":%S"),r("%-I:%M"),i);case"minute":return pr(r("%-I:%M"),r("%p"),i);case"hour":return pr(r("%-I %p"),r("%b %-d"),i);case"day":return pr(r("%-d"),r("%b"),i);case"month":return pr(r("%b"),r("%Y"),i);case"year":return r("%Y")}throw new Error("unable to format time ticks")}function Xx(t){return t==="left"||t==="right"?(n,e)=>`
|
|
2
2
|
${n}
|
|
3
3
|
${e}`:t==="top"?(n,e)=>`${e}
|
|
4
4
|
${n}`:(n,e)=>`${n}
|
|
5
|
-
${e}`}function Xx(t){return t==="time"?la:t==="utc"?vi:Gx}function Vx(t,n,e){let r=qt(Ql(n,(i,o)=>Math.abs(o-i)));if(r<1e3)return Q1("millisecond","utc",e);for(let[i,o,a,u]of Xx(t)){if(r>u||i==="hour"&&!r)break;if(n.every(c=>o.floor(c)>=c))return Q1(i,a,e)}}function pr(t,n,e){return(r,i,o)=>{let a=t(r,i),u=n(r,i),c=i-vr(o);return i!==c&&o[c]!==void 0&&u===n(o[c],c)?a:e(a,u)}}var Fs=Object.getPrototypeOf(Uint8Array),jx=Object.prototype.toString;function Ie(t){return t instanceof Array||t instanceof Fs}function tg(t){return t instanceof Fs&&!Zx(t)}function ng(t){return t?.prototype instanceof Fs&&!Kx(t)}function Zx(t){return t instanceof BigInt64Array||t instanceof BigUint64Array}function Kx(t){return t===BigInt64Array||t===BigUint64Array}var eg=Symbol("reindex");function ft(t,n,e){let r=typeof n;return r==="string"?bg(t)?zs(t.getChild(n),e):J1(t,rg(n),e):r==="function"?J1(t,n,e):r==="number"||n instanceof Date||r==="boolean"?gt(t,Hn(n),e):typeof n?.transform=="function"?fs(n.transform(t),e):Qx(fs(n,e),t?.[eg])}function Qx(t,n){return t!=null&&n?Ys(t,n):t}function J1(t,n,e){return gt(t,ng(e)?(r,i)=>Bs(n(r,i)):n,e)}function fs(t,n){return n===void 0?Fe(t):wg(t)?zs(t,n):t instanceof n?t:n.from(t,ng(n)&&!tg(t)?Bs:void 0)}function zs(t,n){return t==null?t:(n===void 0||n===Array)&&m6(t.type)?og(tp(t)):fs(tp(t),n)}function tp(t){return t.nullCount?t.toJSON():t.toArray()}var da=[null],rg=t=>n=>{let e=n[t];return e===void 0&&n.type==="Feature"?n.properties?.[t]:e},Oe={transform:Vn},ht={transform:t=>t},Jx=()=>1,t6=()=>!0,Tt=t=>t==null?t:`${t}`,kt=t=>t==null?t:+t,ig=t=>t?t[0]:void 0,ss=t=>t?t[1]:void 0;var Hn=t=>()=>t;function n6(t){let n=+`${t}`.slice(1)/100;return(e,r)=>Zn(e,n,r)}function $n(t){return tg(t)?t:gt(t,Bs,Float64Array)}function Bs(t){return t==null?NaN:Number(t)}function og(t){return gt(t,ag)}function ag(t){return t instanceof Date&&!isNaN(t)?t:typeof t=="string"?jp(t):t==null||isNaN(t=Number(t))?void 0:new Date(t)}function sn(t,n){return t===void 0&&(t=n),t===null?[void 0,"none"]:Ta(t)?[void 0,t]:[t,void 0]}function Rt(t,n){return t===void 0&&(t=n),t===null||typeof t=="number"?[void 0,t]:[t,void 0]}function ug(t,n,e){if(t!=null)return dn(t,n,e)}function dn(t,n,e){let r=`${t}`.toLowerCase();if(!e.includes(r))throw new Error(`invalid ${n}: ${t}`);return r}function xr(t){return bg(t)?t:Fe(t)}function Fe(t){if(t==null||Ie(t))return t;if(wg(t))return zs(t);if(cg(t))switch(t.type){case"FeatureCollection":return t.features;case"GeometryCollection":return t.geometries;default:return[t]}return Array.from(t)}function cg(t){switch(t?.type){case"FeatureCollection":case"GeometryCollection":case"Feature":case"LineString":case"MultiLineString":case"MultiPoint":case"MultiPolygon":case"Point":case"Polygon":case"Sphere":return!0;default:return!1}}function gt(t,n,e=Array){return t==null?t:t instanceof e?t.map(n):e.from(t,n)}function _i(t,n=Array){return t instanceof n?t.slice():n.from(t)}function fg(t){return t?.x!==void 0||t?.x1!==void 0||t?.x2!==void 0}function sg(t){return t?.y!==void 0||t?.y1!==void 0||t?.y2!==void 0}function Sa(t){return fg(t)||sg(t)||t?.interval!==void 0}function ue(t){return t?.toString===jx}function ls(t){return ue(t)&&(t.type!==void 0||t.domain!==void 0)}function Aa(t){return ue(t)&&typeof t.transform!="function"}function _r(t){return Aa(t)&&t.value===void 0&&t.channel===void 0}function lg(t,n,e,r=ht){return n===void 0&&e===void 0?(n=0,e=t===void 0?r:t):n===void 0?n=t===void 0?0:t:e===void 0&&(e=t===void 0?0:t),[n,e]}function ze(t,n){return t===void 0&&n===void 0?[ig,ss]:[t,n]}function qs({z:t,fill:n,stroke:e}={}){return t===void 0&&([t]=sn(n)),t===void 0&&([t]=sn(e)),t}function Mi(t){return Ie(t)?t.length:t?.numRows}function Vn(t){let n=Mi(t),e=new Uint32Array(n);for(let r=0;r<n;++r)e[r]=r;return e}function Ys(t,n){return Ie(t)?gt(n,e=>t[e],t.constructor):gt(n,e=>t.at(e))}function e6(t,n,e){return t.subarray?t.subarray(n,e):t.slice(n,e)}function Xn(t){return t!==null&&typeof t=="object"?t.valueOf():t}function r6(t,n){if(n[t]!==void 0)return n[t];switch(t){case"x1":case"x2":t="x";break;case"y1":case"y2":t="y";break}return n[t]}function ga(t){let n;return[{transform:()=>n,label:Be(t)},e=>n=e]}function Ft(t){return t==null?[t]:ga(t)}function Be(t,n){return typeof t=="string"?t:t&&t.label!==void 0?t.label:n}function ma(t,n){return{transform(e){let r=t.transform(e),i=n.transform(e);return Bt(r)||Bt(i)?gt(r,(o,a)=>new Date((+r[a]+ +i[a])/2)):gt(r,(o,a)=>(+r[a]+ +i[a])/2,Float64Array)},label:t.label}}function ya(t,n){let e=dg(n?.interval,n?.type);return e?gt(t,e):t}function dg(t,n){let e=Us(t,n);return e&&(r=>An(r)?e.floor(r):r)}function Us(t,n){if(t!=null){if(typeof t=="number")return i6(t);if(typeof t=="string")return(n==="time"?Qp:Os)(t);if(typeof t.floor!="function")throw new Error("invalid interval; missing floor method");if(typeof t.offset!="function")throw new Error("invalid interval; missing offset method");return t}}function i6(t){t=+t,0<t&&t<1&&Number.isInteger(1/t)&&(t=-1/t);let n=Math.abs(t);return t<0?{floor:e=>Math.floor(e*n)/n,offset:(e,r=1)=>(e*n+Math.floor(r))/n,range:(e,r)=>Ze(Math.ceil(e*n),r*n).map(i=>i/n)}:{floor:e=>Math.floor(e/n)*n,offset:(e,r=1)=>e+n*Math.floor(r),range:(e,r)=>Ze(Math.ceil(e/n),r/n).map(i=>i*n)}}function Tr(t,n){if(t=Us(t,n),t&&typeof t.range!="function")throw new Error("invalid interval: missing range method");return t}function o6(t,n){if(t=Tr(t,n),t&&typeof t.ceil!="function")throw new Error("invalid interval: missing ceil method");return t}function a6(t){return yr(t)&&typeof t?.floor=="function"&&t.floor()instanceof Date}function yr(t){return typeof t?.range=="function"}function Li(t){return t===void 0||Aa(t)?t:{value:t}}function u6(t){return t==null?null:{transform:n=>ft(n,t,Float64Array),label:Be(t)}}function ce(t){return t&&typeof t[Symbol.iterator]=="function"}function hg(t){for(let n of t)if(n!=null)return typeof n!="object"||n instanceof Date}function np(t){for(let n of t){if(n==null)continue;let e=typeof n;return e==="string"||e==="boolean"}}function Bt(t){for(let n of t)if(n!=null)return n instanceof Date}function c6(t){for(let n of t)if(n!=null)return typeof n=="string"&&isNaN(n)&&jp(n)}function f6(t){for(let n of t)if(n!=null){if(typeof n!="string")return!1;if(n.trim())return!isNaN(n)}}function s6(t){for(let n of t)if(n!=null)return typeof n=="number"}function pg(t){return ha(t,l6)}function l6(t){return typeof t=="number"&&Number.isInteger(t)&&1500<=t&&t<=2500}function ha(t,n){let e;for(let r of t)if(r!=null){if(!n(r))return!1;e=!0}return e}var d6=new Set("none,currentcolor,transparent,aliceblue,antiquewhite,aqua,aquamarine,azure,beige,bisque,black,blanchedalmond,blue,blueviolet,brown,burlywood,cadetblue,chartreuse,chocolate,coral,cornflowerblue,cornsilk,crimson,cyan,darkblue,darkcyan,darkgoldenrod,darkgray,darkgreen,darkgrey,darkkhaki,darkmagenta,darkolivegreen,darkorange,darkorchid,darkred,darksalmon,darkseagreen,darkslateblue,darkslategray,darkslategrey,darkturquoise,darkviolet,deeppink,deepskyblue,dimgray,dimgrey,dodgerblue,firebrick,floralwhite,forestgreen,fuchsia,gainsboro,ghostwhite,gold,goldenrod,gray,green,greenyellow,grey,honeydew,hotpink,indianred,indigo,ivory,khaki,lavender,lavenderblush,lawngreen,lemonchiffon,lightblue,lightcoral,lightcyan,lightgoldenrodyellow,lightgray,lightgreen,lightgrey,lightpink,lightsalmon,lightseagreen,lightskyblue,lightslategray,lightslategrey,lightsteelblue,lightyellow,lime,limegreen,linen,magenta,maroon,mediumaquamarine,mediumblue,mediumorchid,mediumpurple,mediumseagreen,mediumslateblue,mediumspringgreen,mediumturquoise,mediumvioletred,midnightblue,mintcream,mistyrose,moccasin,navajowhite,navy,oldlace,olive,olivedrab,orange,orangered,orchid,palegoldenrod,palegreen,paleturquoise,palevioletred,papayawhip,peachpuff,peru,pink,plum,powderblue,purple,rebeccapurple,red,rosybrown,royalblue,saddlebrown,salmon,sandybrown,seagreen,seashell,sienna,silver,skyblue,slateblue,slategray,slategrey,snow,springgreen,steelblue,tan,teal,thistle,tomato,turquoise,violet,wheat,white,whitesmoke,yellow".split(","));function Ta(t){return typeof t!="string"?!1:(t=t.toLowerCase().trim(),/^#[0-9a-f]{3,8}$/.test(t)||/^(?:url|var|rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch|color|color-mix|light-dark)\(.*\)$/.test(t)||d6.has(t))}function h6(t){return typeof t=="number"&&(0<=t&&t<=1||isNaN(t))}function zt(t){return t==null||$i(t)}function $i(t){return/^\s*none\s*$/i.test(t)}function p6(t){return/^\s*round\s*$/i.test(t)}function ds(t,n){return ug(t,n,["middle","top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"])}function ka(t="middle"){return ds(t,"frameAnchor")}function gg(t={},...n){let e=t;for(let r of n)for(let i in r)if(e[i]===void 0){let o=r[i];e===t?e={...e,[i]:o}:e[i]=o}return e}function g6(t){console.warn("named iterables are deprecated; please use an object instead");let n=new Set;return Object.fromEntries(Array.from(t,e=>{let{name:r}=e;if(r==null)throw new Error("missing name");let i=`${r}`;if(i==="__proto__")throw new Error(`illegal name: ${i}`);if(n.has(i))throw new Error(`duplicate name: ${i}`);return n.add(i),[r,e]}))}function mg(t){return ce(t)?g6(t):t}function yg(t){return t===!0?t="frame":t===!1?t=null:!cg(t)&&t!=null&&(t=dn(t,"clip",["frame","sphere"]),t==="sphere"&&(t={type:"Sphere"})),t}function bg(t){return t&&typeof t.getChild=="function"&&typeof t.toArray=="function"&&t.schema&&Array.isArray(t.schema.fields)}function wg(t){return t&&typeof t.toArray=="function"&&t.type}function m6(t){return t&&(t.typeId===8||t.typeId===10)&&t.unit===1}var Sn=Symbol("position"),jn=Symbol("color"),Pi=Symbol("radius"),Di=Symbol("length"),kr=Symbol("opacity"),Ca=Symbol("symbol"),vg=Symbol("projection"),st=new Map([["x",Sn],["y",Sn],["fx",Sn],["fy",Sn],["r",Pi],["color",jn],["opacity",kr],["symbol",Ca],["length",Di],["projection",vg]]);function y6(t){return t===Sn||t===vg}function b6(t){return t===Sn||t===Pi||t===Di||t===kr}var w6=Math.sqrt(3),v6=2/w6,x6={draw(t,n){let e=Math.sqrt(n/Math.PI),r=e*v6,i=r/2;t.moveTo(0,r),t.lineTo(e,i),t.lineTo(e,-i),t.lineTo(0,-r),t.lineTo(-e,-i),t.lineTo(-e,i),t.closePath()}},Ws=new Map([["asterisk",Cf],["circle",hr],["cross",Ef],["diamond",Nf],["diamond2",Rf],["hexagon",x6],["plus",Lf],["square",Pf],["square2",Df],["star",If],["times",Bf],["triangle",Of],["triangle2",Ff],["wye",zf]]);function Gs(t){return t&&typeof t.draw=="function"}function _6(t){return Gs(t)?!0:typeof t!="string"?!1:Ws.has(t.toLowerCase())}function Hs(t){if(t==null||Gs(t))return t;let n=Ws.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid symbol: ${t}`)}function M6(t){if(t==null||Gs(t))return[void 0,t];if(typeof t=="string"){let n=Ws.get(`${t}`.toLowerCase());if(n)return[void 0,n]}return[t,void 0]}function Ii({filter:t,sort:n,reverse:e,transform:r,initializer:i,...o}={},a){if(r===void 0&&(t!=null&&(r=xg(t)),n!=null&&!_r(n)&&(r=Hf(r,Xs(n))),e&&(r=Hf(r,_g))),a!=null&&i!=null)throw new Error("transforms cannot be applied after initializers");return{...o,...(n===null||_r(n))&&{sort:n},transform:Hf(r,a)}}function Mr({filter:t,sort:n,reverse:e,initializer:r,...i}={},o){return r===void 0&&(t!=null&&(r=xg(t)),n!=null&&!_r(n)&&(r=Xf(r,Xs(n))),e&&(r=Xf(r,_g))),{...i,...(n===null||_r(n))&&{sort:n},initializer:Xf(r,o)}}function Hf(t,n){return t==null?n===null?void 0:n:n==null?t===null?void 0:t:function(e,r,i){return{data:e,facets:r}=t.call(this,e,r,i),n.call(this,xr(e),r,i)}}function Xf(t,n){return t==null?n===null?void 0:n:n==null?t===null?void 0:t:function(e,r,i,...o){let a,u,c,f,s,d;return{data:u=e,facets:c=r,channels:a}=t.call(this,e,r,i,...o),{data:s=u,facets:d=c,channels:f}=n.call(this,u,c,{...i,...a},...o),{data:s,facets:d,channels:{...a,...f}}}}function $6(t,n){return(t.initializer!=null?Mr:Ii)(t,n)}function xg(t){return(n,e)=>{let r=ft(n,t);return{data:n,facets:e.map(i=>i.filter(o=>r[o]))}}}function _g(t,n){return{data:t,facets:n.map(e=>e.slice().reverse())}}function S6(t,{sort:n,...e}={}){return{...(Aa(t)&&t.channel!==void 0?Mr:$6)(e,Xs(t)),sort:_r(n)?n:null}}function Xs(t){return(typeof t=="function"&&t.length!==1?A6:T6)(t)}function A6(t){return(n,e)=>{let r=Ie(n)?(i,o)=>t(n[i],n[o]):(i,o)=>t(n.get(i),n.get(o));return{data:n,facets:e.map(i=>i.slice().sort(r))}}}function T6(t){let n,e;({channel:n,value:t,order:e}={...Li(t)});let r=n?.startsWith("-");if(r&&(n=n.slice(1)),e===void 0&&(e=r?pa:fn),typeof e!="function")switch(`${e}`.toLowerCase()){case"ascending":e=fn;break;case"descending":e=pa;break;default:throw new Error(`invalid order: ${e}`)}return(i,o,a)=>{let u;if(n===void 0)u=ft(i,t);else{if(a===void 0)throw new Error("channel sort requires an initializer");if(u=a[n],!u)return{};u=u.value}let c=(f,s)=>e(u[f],u[s]);return{data:i,facets:o.map(f=>f.slice().sort(c))}}}function k6(t={y:"count"},n={}){let{x:e=ht}=n;if(e==null)throw new Error("missing channel: x");return Vs(e,null,t,n)}function C6(t={x:"count"},n={}){let{y:e=ht}=n;if(e==null)throw new Error("missing channel: y");return Vs(null,e,t,n)}function E6(t={fill:"count"},n={}){let{x:e,y:r}=n;if([e,r]=ze(e,r),e==null)throw new Error("missing channel: x");if(r==null)throw new Error("missing channel: y");return Vs(e,r,t,n)}function Vs(t,n,{data:e=Ks,filter:r,sort:i,reverse:o,...a}={},u={}){a=L6(a,u),e=Ag(e,ht),i=i==null?void 0:$g("sort",i,u),r=r==null?void 0:Sg("filter",r,u);let[c,f]=Ft(t),[s,d]=Ft(n),{z:l,fill:h,stroke:p,x1:m,x2:w,y1:x,y2:v,...M}=u,[g,b]=Ft(l),[y]=sn(h),[_]=sn(p),[$,S]=Ft(y),[C,A]=Ft(_);return{..."z"in u&&{z:g||l},..."fill"in u&&{fill:$||h},..."stroke"in u&&{stroke:C||p},...Ii(M,(k,D,P)=>{let T=ya(ft(k,t),P?.x),O=ya(ft(k,n),P?.y),R=ft(k,l),U=ft(k,y),L=ft(k,_),I=Tg(a,{z:R,fill:U,stroke:L}),q=[],W=[],z=T&&f([]),K=O&&d([]),et=R&&b([]),at=U&&S([]),B=L&&A([]),G=0;for(let N of a)N.initialize(k);i&&i.initialize(k),r&&r.initialize(k);for(let N of D){let F=[];for(let Y of a)Y.scope("facet",N);i&&i.scope("facet",N),r&&r.scope("facet",N);for(let[Y,E]of xi(N,I))for(let[nt,H]of xi(E,O))for(let[J,rt]of xi(H,T)){let ct={data:k};if(T&&(ct.x=J),O&&(ct.y=nt),I&&(ct.z=Y),!(r&&!r.reduce(rt,ct))){F.push(G++),W.push(e.reduceIndex(rt,k,ct)),T&&z.push(J),O&&K.push(nt),R&&et.push(I===R?Y:R[rt[0]]),U&&at.push(I===U?Y:U[rt[0]]),L&&B.push(I===L?Y:L[rt[0]]);for(let Cn of a)Cn.reduce(rt,ct);i&&i.reduce(rt,ct)}}q.push(F)}return kg(q,i,o),{data:W,facets:q}}),...!br(a,"x")&&(c?{x:c}:{x1:m,x2:w}),...!br(a,"y")&&(s?{y:s}:{y1:x,y2:v}),...Object.fromEntries(a.map(({name:k,output:D})=>[k,D]))}}function br(t,...n){for(let{name:e}of t)if(n.includes(e))return!0;return!1}function Mg(t,n,e=js){let r=Object.entries(t);return n.title!=null&&t.title===void 0&&r.push(["title",O6]),n.href!=null&&t.href===void 0&&r.push(["href",Qs]),r.filter(([,i])=>i!==void 0).map(([i,o])=>o===null?N6(i):e(i,o,n))}function js(t,n,e,r=Zs){let i;ue(n)&&"reduce"in n&&(i=n.scale,n=n.reduce);let o=r(t,n,e),[a,u]=ga(o.label),c;return{name:t,output:i===void 0?a:{value:a,scale:i},initialize(f){o.initialize(f),c=u([])},scope(f,s){o.scope(f,s)},reduce(f,s){c.push(o.reduce(f,s))}}}function N6(t){return{name:t,initialize(){},scope(){},reduce(){}}}function Zs(t,n,e,r=Ea){let i=r6(t,e),o=r(n,i),a,u;return{label:Be(o===ba?null:i,o.label),initialize(c){a=i===void 0?c:ft(c,i),o.scope==="data"&&(u=o.reduceIndex(Vn(c),a))},scope(c,f){o.scope===c&&(u=o.reduceIndex(f,a))},reduce(c,f){return o.scope==null?o.reduceIndex(c,a,f):o.reduceIndex(c,a,u,f)}}}function xi(t,n){return n?Or(t,e=>n[e]):[[,t]]}function Ea(t,n,e=R6){if(t==null)return e(t);if(typeof t.reduceIndex=="function")return t;if(typeof t.reduce=="function"&&ue(t))return D6(t);if(typeof t=="function")return I6(t);if(/^p\d{2}$/i.test(t))return Wn(n6(t));switch(`${t}`.toLowerCase()){case"first":return Qs;case"last":return F6;case"identity":return Ks;case"count":return ba;case"distinct":return z6;case"sum":return n==null?ba:B6;case"proportion":return rp(n,"data");case"proportion-facet":return rp(n,"facet");case"deviation":return Wn(Wa);case"min":return Wn(an);case"min-index":return Wn(Xl);case"max":return Wn(qt);case"max-index":return Wn(Hl);case"mean":return ep(Va);case"median":return ep(zr);case"variance":return Wn(Ua);case"mode":return Wn(Kl)}return e(t)}function R6(t){throw new Error(`invalid reduce: ${t}`)}function L6(t,n){return Mg(t,n,$g)}function $g(t,n,e){return js(t,n,e,Sg)}function Sg(t,n,e){return Zs(t,n,e,Ag)}function Ag(t,n){return Ea(t,n,P6)}function P6(t){switch(`${t}`.toLowerCase()){case"x":return q6;case"y":return Y6;case"z":return Cg}throw new Error(`invalid group reduce: ${t}`)}function Tg(t,n){for(let e in n){let r=n[e];if(r!==void 0&&!t.some(i=>i.name===e))return r}}function kg(t,n,e){if(n){let r=n.output.transform(),i=(o,a)=>fn(r[o],r[a]);t.forEach(o=>o.sort(i))}e&&t.forEach(r=>r.reverse())}function D6(t){return console.warn("deprecated reduce interface; implement reduceIndex instead."),{...t,reduceIndex:t.reduce.bind(t)}}function I6(t){return{reduceIndex(n,e,r){return t(Ys(e,n),r)}}}function Wn(t){return{reduceIndex(n,e){return t(n,r=>e[r])}}}function ep(t){return{reduceIndex(n,e){let r=t(n,i=>e[i]);return Bt(e)?new Date(r):r}}}var Ks={reduceIndex(t,n){return Ys(n,t)}},Qs={reduceIndex(t,n){return n[t[0]]}},O6={reduceIndex(t,n){let r=Ir(he(t,o=>o.length,o=>n[o]),ss),i=r.slice(-5).reverse();if(i.length<r.length){let o=r.slice(0,-4);i[4]=[`\u2026 ${o.length.toLocaleString("en-US")} more`,pn(o,ss)]}return i.map(([o,a])=>`${o} (${a.toLocaleString("en-US")})`).join(`
|
|
6
|
-
`)}},F6={reduceIndex(t,n){return n[t[t.length-1]]}},ba={label:"Frequency",reduceIndex(t){return t.length}},z6={label:"Distinct",reduceIndex(t,n){let e=new de;for(let r of t)e.add(n[r]);return e.size}},B6=Wn(pn);function rp(t,n){return t==null?{scope:n,label:"Frequency",reduceIndex:(e,r,i=1)=>e.length/i}:{scope:n,reduceIndex:(e,r,i=1)=>pn(e,o=>r[o])/i}}var q6={reduceIndex(t,n,{x:e}){return e}},Y6={reduceIndex(t,n,{y:e}){return e}},Cg={reduceIndex(t,n,{z:e}){return e}};function Si(t,{scale:n,type:e,value:r,filter:i,hint:o,label:a=Be(r)},u){return o===void 0&&typeof r?.transform=="function"&&(o=r.hint),Eg(u,{scale:n,type:e,value:ft(t,r),label:a,filter:i,hint:o})}function U6(t,n){return Object.fromEntries(Object.entries(t).map(([e,r])=>[e,Si(n,r,e)]))}function W6(t,n){let e=Object.fromEntries(Object.entries(t).map(([r,{scale:i,value:o}])=>{let a=i==null?null:n[i];return[r,a==null?o:gt(o,a)]}));return e.channels=t,e}function Eg(t,n){let{scale:e,value:r}=n;if(e===!0||e==="auto")switch(t){case"fill":case"stroke":case"color":n.scale=e!==!0&&ha(r,Ta)?null:"color",n.defaultScale="color";break;case"fillOpacity":case"strokeOpacity":case"opacity":n.scale=e!==!0&&ha(r,h6)?null:"opacity",n.defaultScale="opacity";break;case"symbol":e!==!0&&ha(r,_6)?(n.scale=null,n.value=gt(r,Hs)):n.scale="symbol",n.defaultScale="symbol";break;default:n.scale=st.has(t)?t:null;break}else if(e===!1)n.scale=null;else if(e!=null&&!st.has(e))throw new Error(`unknown scale: ${e}`);return n}function G6(t,n,e,r,i){let{order:o,reverse:a,reduce:u=!0,limit:c}=i;for(let f in i){if(!st.has(f))continue;let{value:s,order:d=o,reverse:l=a,reduce:h=u,limit:p=c}=Li(i[f]),m=s?.startsWith("-");if(m&&(s=s.slice(1)),d=d===void 0?m!==(s==="width"||s==="height")?Rg:Ng:V6(d),h==null||h===!1)continue;let w=f==="fx"||f==="fy"?X6(n,r[f]):H6(e,f);if(!w)throw new Error(`missing channel for scale: ${f}`);let x=w.value,[v=0,M=1/0]=ce(p)?p:p<0?[p]:[0,p];if(s==null)w.domain=()=>{let g=Array.from(new de(x));return l&&(g=g.reverse()),(v!==0||M!==1/0)&&(g=g.slice(v,M)),g};else{let g=s==="data"?t:s==="height"?ip(e,"y1","y2"):s==="width"?ip(e,"x1","x2"):hs(e,s,s==="y"?"y2":s==="x"?"x2":void 0),b=Ea(h===!0?"max":h,g);w.domain=()=>{let y=Ul(Vn(x),_=>b.reduceIndex(_,g),_=>x[_]);return d&&y.sort(d),l&&y.reverse(),(v!==0||M!==1/0)&&(y=y.slice(v,M)),y.map(ig)}}}}function H6(t,n){for(let e in t){let r=t[e];if(r.scale===n)return r}}function X6(t,n){let e=t.original;if(e===t)return n;let r=n.value,i=n.value=[];for(let o=0;o<e.length;++o){let a=r[e[o][0]];for(let u of t[o])i[u]=a}return n}function ip(t,n,e){let r=hs(t,n),i=hs(t,e);return gt(i,(o,a)=>Math.abs(o-r[a]),Float64Array)}function hs(t,n,e){let r=t[n];if(!r&&e!==void 0&&(r=t[e]),r)return r.value;throw new Error(`missing channel: ${n}`)}function V6(t){if(t==null||typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"ascending":return Ng;case"descending":return Rg}throw new Error(`invalid order: ${t}`)}function Ng([t,n],[e,r]){return fn(n,r)||fn(t,e)}function Rg([t,n],[e,r]){return pa(n,r)||fn(t,e)}function op(t,n){let e=t[n];if(e){for(;e.source;)e=e.source;return e.source===null?null:e}}function Js(t={}){let{document:n=typeof window<"u"?window.document:void 0,clip:e}=t;return{document:n,clip:yg(e)}}function pt(t,{document:n}){return Nn(qr(t).call(n.documentElement))}var ps=0,gs;function j6(){let t=ps;return ps=0,gs=void 0,t}function ae(t){t!==gs&&(gs=t,console.warn(t),++ps)}var Lg=Math.PI,qn=2*Lg,Vf=.618;function Z6({projection:t,inset:n=0,insetTop:e=n,insetRight:r=n,insetBottom:i=n,insetLeft:o=n}={},a){if(t==null)return;if(typeof t.stream=="function")return K6(t);let u,c,f="frame";if(ue(t)){let y;if({type:t,domain:c,inset:y,insetTop:e=y!==void 0?y:e,insetRight:r=y!==void 0?y:r,insetBottom:i=y!==void 0?y:i,insetLeft:o=y!==void 0?y:o,clip:f=f,...u}=t,t==null)return}typeof t!="function"&&({type:t}=ms(t));let{width:s,height:d,marginLeft:l,marginRight:h,marginTop:p,marginBottom:m}=a,w=s-l-h-o-r,x=d-p-m-e-i;if(t=t?.({width:w,height:x,clip:f,...u}),t==null)return;f=Q6(f,l,p,s-h,d-m);let v=l+o,M=p+e,g,b=1;if(c!=null){let[[y,_],[$,S]]=No(t).bounds(c);b=Math.min(w/($-y),x/(S-_)),b>0?(v-=(b*(y+$)-w)/2,M-=(b*(_+S)-x)/2,g=t5(b,v,M)):ae("Warning: the projection could not be fit to the specified domain; using the default scale.")}return g??=Dg(v,M),{stream(y){return t.stream(g.stream(f(y)))},apply(y){let _=null;return this.stream({point:(...$)=>_=$}).point(...y),_},...t.invert&&{invert(y){return t.invert(g.invert(y))}}}}function K6(t){return typeof t=="function"?{stream:n=>t.stream(n),apply:n=>t(n),...t.invert&&{invert:n=>t.invert(n)}}:t}function ms(t){switch(`${t}`.toLowerCase()){case"albers-usa":return cn(Gh,.7463,.4673);case"albers":return ra(Yu,.7463,.4673);case"azimuthal-equal-area":return cn(Vh,4,4);case"azimuthal-equidistant":return cn(Zh,qn,qn);case"conic-conformal":return ra(Jh,qn,qn);case"conic-equal-area":return ra(ii,6.1702,2.9781);case"conic-equidistant":return ra(n0,7.312,3.6282);case"equal-earth":return cn(r0,5.4133,2.6347);case"equirectangular":return cn(t0,qn,Lg);case"gnomonic":return cn(o0,3.4641,3.4641);case"identity":return{type:Pg};case"reflect-y":return{type:J6};case"mercator":return cn(Kh,qn,qn);case"orthographic":return cn(u0,2,2);case"stereographic":return cn(f0,2,2);case"transverse-mercator":return cn(l0,qn,qn);default:throw new Error(`unknown projection type: ${t}`)}}function Q6(t,n,e,r,i){if(t===!1||t==null||typeof t=="number")return o=>o;if(t===!0&&(t="frame"),`${t}`.toLowerCase()==="frame")return Fu(n,e,r,i);throw new Error(`unknown projection clip type: ${t}`)}function cn(t,n,e){return{type:({width:r,height:i,rotate:o,precision:a=.15,clip:u})=>{let c=t();return a!=null&&c.precision?.(a),o!=null&&c.rotate?.(o),typeof u=="number"&&c.clipAngle?.(u),r!=null&&(c.scale(Math.min(r/n,i/e)),c.translate([r/2,i/2])),c},aspectRatio:e/n}}function ra(t,n,e){let{type:r,aspectRatio:i}=cn(t,n,e);return{type:o=>{let{parallels:a,domain:u,width:c,height:f}=o,s=r(o);return a!=null&&(s.parallels(a),u===void 0&&c!=null&&s.fitSize([c,f],{type:"Sphere"})),s},aspectRatio:i}}var Pg=Hn({stream:t=>t,invert:t=>t}),J6=Hn({...oi({point(t,n){this.stream.point(t,-n)}}),invert:([t,n])=>[t,-n]});function Dg(t,n){return t===0&&n===0?Pg():{...oi({point(e,r){this.stream.point(e+t,r+n)}}),invert:([e,r])=>[e-t,r-n]}}function t5(t,n,e){return t===1?Dg(n,e):{...oi({point(r,i){this.stream.point(r*t+n,i*t+e)}}),invert:([r,i])=>[(r-n)/t,(i-e)/t]}}function n5(t,n,e,r){let i=e[t],o=e[n],a=i.length,u=e[t]=new Float64Array(a).fill(NaN),c=e[n]=new Float64Array(a).fill(NaN),f,s=r.stream({point(d,l){u[f]=d,c[f]=l}});for(f=0;f<a;++f)s.point(i[f],o[f])}function e5({projection:t}={}){return t==null?!1:typeof t.stream=="function"?!0:(ue(t)&&(t=t.type),t!=null)}function r5(t){if(typeof t?.stream=="function")return Vf;if(ue(t)){let n,e;if({domain:n,type:t,...e}=t,n!=null&&t!=null){let r=typeof t=="string"?ms(t).type:t,[[i,o],[a,u]]=No(r({...e,width:100,height:100})).bounds(n),c=(u-o)/(a-i);return c&&isFinite(c)?c<.2?.2:c>5?5:c:Vf}}if(t!=null){if(typeof t!="function"){let{aspectRatio:n}=ms(t);if(n)return n}return Vf}}function i5(t){let n=[],e=[],r={scale:"x",value:n},i={scale:"y",value:e},o={point(a,u){n.push(a),e.push(u)},lineStart(){},lineEnd(){},polygonStart(){},polygonEnd(){},sphere(){}};for(let a of t.value)Jn(a,o);return[r,i]}function o5({x:t,y:n}){if(t||n)return t??=e=>e,n??=e=>e,oi({point(e,r){this.stream.point(t(e),n(r))}})}var Ig=new Map([["accent",Z0],["category10",j0],["dark2",K0],["observable10",Q0],["paired",J0],["pastel1",t1],["pastel2",n1],["set1",e1],["set2",r1],["set3",i1],["tableau10",o1]]);function a5(t){return t!=null&&Ig.has(`${t}`.toLowerCase())}var ap=new Map([...Ig,["brbg",Yn(mc,yc)],["prgn",Yn(bc,wc)],["piyg",Yn(vc,xc)],["puor",Yn(_c,Mc)],["rdbu",Yn(Go,gi)],["rdgy",Yn($c,Sc)],["rdylbu",Yn(Ho,mi)],["rdylgn",Yn(Ac,Tc)],["spectral",Yn(kc,Cc)],["burd",up(Go,gi)],["buylrd",up(Ho,mi)],["blues",_t(tf,nf)],["greens",_t(ef,rf)],["greys",_t(of,af)],["oranges",_t(lf,df)],["purples",_t(uf,cf)],["reds",_t(ff,sf)],["turbo",Un(wf)],["viridis",Un(vf)],["magma",Un(xf)],["inferno",Un(_f)],["plasma",Un(Mf)],["cividis",Un(hf)],["cubehelix",Un(pf)],["warm",Un(gf)],["cool",Un(mf)],["bugn",_t(Ec,Nc)],["bupu",_t(Rc,Lc)],["gnbu",_t(Pc,Dc)],["orrd",_t(Ic,Oc)],["pubu",_t(Bc,qc)],["pubugn",_t(Fc,zc)],["purd",_t(Yc,Uc)],["rdpu",_t(Wc,Gc)],["ylgn",_t(Vc,jc)],["ylgnbu",_t(Hc,Xc)],["ylorbr",_t(Zc,Kc)],["ylorrd",_t(Qc,Jc)],["rainbow",cp(yf)],["sinebow",cp(bf)]]);function _t(t,n){return({length:e})=>e===1?[t[3][1]]:e===2?[t[3][1],t[3][2]]:(e=Math.max(3,Math.floor(e)),e>9?Wt(n,e):t[e])}function Yn(t,n){return({length:e})=>e===2?[t[3][0],t[3][2]]:(e=Math.max(3,Math.floor(e)),e>11?Wt(n,e):t[e])}function up(t,n){return({length:e})=>e===2?[t[3][2],t[3][0]]:(e=Math.max(3,Math.floor(e)),e>11?Wt(r=>n(1-r),e):t[e].slice().reverse())}function Un(t){return({length:n})=>Wt(t,Math.max(2,Math.floor(n)))}function cp(t){return({length:n})=>Wt(t,Math.floor(n)+1).slice(0,-1)}function Og(t){let n=`${t}`.toLowerCase();if(!ap.has(n))throw new Error(`unknown ordinal scheme: ${n}`);return ap.get(n)}function Na(t,n){let e=Og(t),r=typeof e=="function"?e({length:n}):e;return r.length!==n?r.slice(0,n):r}function u5(t,n="greys"){let e=new Set,[r,i]=Na(n,2);for(let o of t)if(o!=null)if(o===!0)e.add(i);else if(o===!1)e.add(r);else return;return[...e]}var fp=new Map([["brbg",yc],["prgn",wc],["piyg",xc],["puor",Mc],["rdbu",gi],["rdgy",Sc],["rdylbu",mi],["rdylgn",Tc],["spectral",Cc],["burd",t=>gi(1-t)],["buylrd",t=>mi(1-t)],["blues",nf],["greens",rf],["greys",af],["purples",cf],["reds",sf],["oranges",df],["turbo",wf],["viridis",vf],["magma",xf],["inferno",_f],["plasma",Mf],["cividis",hf],["cubehelix",pf],["warm",gf],["cool",mf],["bugn",Nc],["bupu",Lc],["gnbu",Dc],["orrd",Oc],["pubugn",zc],["pubu",qc],["purd",Uc],["rdpu",Gc],["ylgnbu",Xc],["ylgn",jc],["ylorbr",Kc],["ylorrd",Jc],["rainbow",yf],["sinebow",bf]]);function tl(t){let n=`${t}`.toLowerCase();if(!fp.has(n))throw new Error(`unknown quantitative scheme: ${n}`);return fp.get(n)}var c5=new Set(["brbg","prgn","piyg","puor","rdbu","rdgy","rdylbu","rdylgn","spectral","burd","buylrd"]);function f5(t){return t!=null&&c5.has(`${t}`.toLowerCase())}var Fg=t=>n=>t(1-n),jf=[0,1],sp=new Map([["number",Mt],["rgb",er],["hsl",Wd],["hcl",Xd],["lab",Gd]]);function zg(t){let n=`${t}`.toLowerCase();if(!sp.has(n))throw new Error(`unknown interpolator: ${n}`);return sp.get(n)}function Oi(t,n,e,{type:r,nice:i,clamp:o,zero:a,domain:u=qg(t,e),unknown:c,round:f,scheme:s,interval:d,range:l=st.get(t)===Pi?v5(e,u):st.get(t)===Di?x5(e,u):st.get(t)===kr?jf:void 0,interpolate:h=st.get(t)===jn?s==null&&l!==void 0?er:tl(s!==void 0?s:r==="cyclical"?"rainbow":"turbo"):f?Gr:Mt,reverse:p}){if(u=lp(u),d=Tr(d,r),(r==="cyclical"||r==="sequential")&&(r="linear"),typeof h!="function"&&(h=zg(h)),p=!!p,l!==void 0){let m=u.length,w=(l=lp(l)).length;if(m!==w){if(h.length===1)throw new Error("invalid piecewise interpolator");h=ir(h,l),l=void 0}}if(h.length===1?(p&&(h=Fg(h),p=!1),l===void 0&&(l=Float64Array.from(u,(m,w)=>w/(u.length-1)),l.length===2&&(l=jf)),n.interpolate((l===jf?Hn:el)(h))):n.interpolate(h),a){let[m,w]=Yt(u);(m>0||w<0)&&(u=_i(u),(vr(u)||1)===Math.sign(m)?u[0]=0:u[u.length-1]=0)}return p&&(u=Br(u)),n.domain(u).unknown(c),i&&(n.nice(s5(i,r)),u=n.domain()),l!==void 0&&n.range(l),o&&n.clamp(o),{type:r,domain:u,range:l,scale:n,interpolate:h,interval:d}}function lp(t){return t=Fe(t),t.length>=2?t:[t[0],t[0]]}function s5(t,n){return t===!0?void 0:typeof t=="number"?t:o6(t,n)}function l5(t,n,e){return Oi(t,Bo(),n,e)}function d5(t,n,e){return Bg(t,n,{...e,exponent:.5})}function Bg(t,n,{exponent:e=1,...r}){return Oi(t,cc().exponent(e),n,{...r,type:"pow"})}function h5(t,n,{base:e=10,domain:r=_5(n),...i}){return Oi(t,ac().base(e),n,{...i,domain:r})}function p5(t,n,{constant:e=1,...r}){return Oi(t,uc().constant(e),n,r)}function g5(t,n,{range:e,quantiles:r=e===void 0?5:(e=[...e]).length,n:i=r,scheme:o="rdylbu",domain:a=M5(n),unknown:u,interpolate:c,reverse:f}){return e===void 0&&(e=c!==void 0?Wt(c,i):st.get(t)===jn?Na(o,i):void 0),a.length>0&&(a=fc(a,e===void 0?{length:i}:e).quantiles()),nl(t,n,{domain:a,range:e,reverse:f,unknown:u})}function m5(t,n,{range:e,n:r=e===void 0?5:(e=[...e]).length,scheme:i="rdylbu",domain:o=qg(t,n),unknown:a,interpolate:u,reverse:c}){let[f,s]=Yt(o),d;return e===void 0?(d=pe(f,s,r),d[0]<=f&&d.splice(0,1),d[d.length-1]>=s&&d.pop(),r=d.length+1,e=u!==void 0?Wt(u,r):st.get(t)===jn?Na(i,r):void 0):(d=Wt(Mt(f,s),r+1).slice(1,-1),f instanceof Date&&(d=d.map(l=>new Date(l)))),vr(Fe(o))<0&&d.reverse(),nl(t,n,{domain:d,range:e,reverse:c,unknown:a})}function nl(t,n,{domain:e=[0],unknown:r,scheme:i="rdylbu",interpolate:o,range:a=o!==void 0?Wt(o,e.length+1):st.get(t)===jn?Na(i,e.length+1):void 0,reverse:u}){e=Fe(e);let c=vr(e);if(!isNaN(c)&&!y5(e,c))throw new Error(`the ${t} scale has a non-monotonic domain`);return u&&(a=Br(a)),{type:"threshold",scale:sc(c<0?Br(e):e,a===void 0?[]:a).unknown(r),domain:e,range:a}}function y5(t,n){for(let e=1,r=t.length,i=t[0];e<r;++e){let o=Xe(i,i=t[e]);if(o!==0&&o!==n)return!1}return!0}function b5(t){return{type:"identity",scale:b6(st.get(t))?oc():n=>n}}function Ai(t,n=Vp){return t.length?[an(t,({value:e})=>e===void 0?e:an(e,n)),qt(t,({value:e})=>e===void 0?e:qt(e,n))]:[0,1]}function qg(t,n){let e=st.get(t);return(e===Pi||e===kr||e===Di?w5:Ai)(n)}function w5(t){return[0,t.length?qt(t,({value:n})=>n===void 0?n:qt(n,Vp)):1]}function v5(t,n){let e=t.find(({radius:a})=>a!==void 0);if(e!==void 0)return[0,e.radius];let r=Zn(t,.5,({value:a})=>a===void 0?NaN:Zn(a,.25,Ma)),i=n.map(a=>3*Math.sqrt(a/r)),o=30/qt(i);return o<1?i.map(a=>a*o):i}function x5(t,n){let e=zr(t,({value:o})=>o===void 0?NaN:zr(o,Math.abs)),r=n.map(o=>12*o/e),i=60/qt(r);return i<1?r.map(o=>o*i):r}function _5(t){for(let{value:n}of t)if(n!==void 0)for(let e of n){if(e>0)return Ai(t,Ma);if(e<0)return Ai(t,Ps)}return[1,10]}function M5(t){let n=[];for(let{value:e}of t)if(e!==void 0)for(let r of e)n.push(r);return n}function el(t){return(n,e)=>r=>t(n+r*(e-n))}function Ra(t,n,e,r,{type:i,nice:o,clamp:a,domain:u=Ai(r),unknown:c,pivot:f=0,scheme:s,range:d,symmetric:l=!0,interpolate:h=st.get(t)===jn?s==null&&d!==void 0?er:tl(s!==void 0?s:"rdbu"):Mt,reverse:p}){f=+f,u=Fe(u);let[m,w]=u;if(u.length>2&&ae(`Warning: the diverging ${t} scale domain contains extra elements.`),Xe(m,w)<0&&([m,w]=[w,m],p=!p),m=Math.min(m,f),w=Math.max(w,f),typeof h!="function"&&(h=zg(h)),d!==void 0&&(h=h.length===1?el(h)(...d):ir(h,d)),p&&(h=Fg(h)),l){let x=e.apply(f),v=x-e.apply(m),M=e.apply(w)-x;v<M?m=e.invert(x-M):v>M&&(w=e.invert(x+v))}return n.domain([m,f,w]).unknown(c).interpolator(h),a&&n.clamp(a),o&&n.nice(o),{type:i,domain:[m,w],pivot:f,interpolate:h,scale:n}}function $5(t,n,e){return Ra(t,dc(),k5,n,e)}function S5(t,n,e){return Yg(t,n,{...e,exponent:.5})}function Yg(t,n,{exponent:e=1,...r}){return Ra(t,gc().exponent(e=+e),N5(e),n,{...r,type:"diverging-pow"})}function A5(t,n,{base:e=10,pivot:r=1,domain:i=Ai(n,r<0?Ps:Ma),...o}){return Ra(t,hc().base(e=+e),C5,n,{domain:i,pivot:r,...o})}function T5(t,n,{constant:e=1,...r}){return Ra(t,pc().constant(e=+e),R5(e),n,r)}var k5={apply(t){return t},invert(t){return t}},C5={apply:Math.log,invert:Math.exp},E5={apply(t){return Math.sign(t)*Math.sqrt(Math.abs(t))},invert(t){return Math.sign(t)*(t*t)}};function N5(t){return t===.5?E5:{apply(n){return Math.sign(n)*Math.pow(Math.abs(n),t)},invert(n){return Math.sign(n)*Math.pow(Math.abs(n),1/t)}}}function R5(t){return{apply(n){return Math.sign(n)*Math.log1p(Math.abs(n/t))},invert(n){return Math.sign(n)*Math.expm1(Math.abs(n))*t}}}function Ug(t,n,e,r){return Oi(t,n,e,r)}function L5(t,n,e){return Ug(t,X0(),n,e)}function P5(t,n,e){return Ug(t,V0(),n,e)}var Fi=Symbol("ordinal");function Wg(t,n,e,{type:r,interval:i,domain:o,range:a,reverse:u,hint:c}){return i=Tr(i,r),o===void 0&&(o=Hg(e,i,t)),(r==="categorical"||r===Fi)&&(r="ordinal"),u&&(o=Br(o)),o=n.domain(o).domain(),a!==void 0&&(typeof a=="function"&&(a=a(o)),n.range(a)),{type:r,domain:o,range:a,scale:n,hint:c,interval:i}}function D5(t,n,{type:e,interval:r,domain:i,range:o,scheme:a,unknown:u,...c}){r=Tr(r,e),i===void 0&&(i=Hg(n,r,t));let f;if(st.get(t)===Ca)f=F5(n),o=o===void 0?z5(f):gt(o,Hs);else if(st.get(t)===jn){if(o===void 0&&(e==="ordinal"||e===Fi)&&(o=u5(i,a),o!==void 0&&(a=void 0)),a===void 0&&o===void 0&&(a=e==="ordinal"?"turbo":"observable10"),a!==void 0)if(o!==void 0){let s=tl(a),d=o[0],l=o[1]-o[0];o=({length:h})=>Wt(p=>s(d+l*p),h)}else o=Og(a)}else st.get(t)===kr&&o===void 0&&(o=({length:s})=>Wt(d=>d,s));if(u===Io)throw new Error(`implicit unknown on ${t} scale is not supported`);return Wg(t,Fo().unknown(u),n,{...c,type:e,domain:i,range:o,hint:f})}function I5(t,n,{align:e=.5,padding:r=.5,...i}){return Gg(q0().align(e).padding(r),n,i,t)}function O5(t,n,{align:e=.5,padding:r=.1,paddingInner:i=r,paddingOuter:o=t==="fx"||t==="fy"?0:r,...a}){return Gg(di().align(e).paddingInner(i).paddingOuter(o),n,a,t)}function Gg(t,n,e,r){let{round:i}=e;return i!==void 0&&t.round(i=!!i),t=Wg(r,t,n,e),t.round=i,t}function Hg(t,n,e){let r=new de;for(let{value:i,domain:o}of t){if(o!==void 0)return o();if(i!==void 0)for(let a of i)r.add(a)}if(e==="opacity"&&r.add(0),n!==void 0){let[i,o]=Yt(r).map(n.floor,n);return n.range(i,n.offset(o))}if(r.size>1e4&&st.get(e)===Sn)throw new Error(`implicit ordinal domain of ${e} scale has more than 10,000 values`);return Ir(r,fn)}function dp(t,n){let e;for(let{hint:r}of t){let i=r?.[n];if(i!==void 0){if(e===void 0)e=i;else if(e!==i)return}}return e}function F5(t){return{fill:dp(t,"fill"),stroke:dp(t,"stroke")}}function z5(t){return zt(t.fill)?M1:_1}function ys(t,{label:n,inset:e=0,insetTop:r=e,insetRight:i=e,insetBottom:o=e,insetLeft:a=e,round:u,nice:c,clamp:f,zero:s,align:d,padding:l,projection:h,facet:{label:p=n}={},...m}={}){let w={};for(let[x,v]of t){let M=m[x],g=W5(x,v,{round:st.get(x)===Sn?u:void 0,nice:c,clamp:f,zero:s,align:d,padding:l,projection:h,...M});if(g){let{label:b=x==="fx"||x==="fy"?p:n,percent:y,transform:_,inset:$,insetTop:S=$!==void 0?$:x==="y"?r:0,insetRight:C=$!==void 0?$:x==="x"?i:0,insetBottom:A=$!==void 0?$:x==="y"?o:0,insetLeft:k=$!==void 0?$:x==="x"?a:0}=M||{};if(_==null)_=void 0;else if(typeof _!="function")throw new Error("invalid scale transform; not a function");g.percent=!!y,g.label=b===void 0?q5(v,g):b,g.transform=_,x==="x"||x==="fx"?(g.insetLeft=+k,g.insetRight=+C):(x==="y"||x==="fy")&&(g.insetTop=+S,g.insetBottom=+A),w[x]=g}}return w}function hp(t){let n={},e={scales:n};for(let[r,i]of Object.entries(t)){let{scale:o,type:a,interval:u,label:c}=i;n[r]=j5(i),e[r]=o,o.type=a,u!=null&&(o.interval=u),c!=null&&(o.label=c)}return e}function B5(t,n){let{x:e,y:r,fx:i,fy:o}=t,a=i||o?rl(n):n;i&&pp(i,a),o&&gp(o,a);let u=i||o?Xg(t,n):n;e&&pp(e,u),r&&gp(r,u)}function q5(t=[],n){let e;for(let{label:r}of t)if(r!==void 0){if(e===void 0)e=r;else if(e!==r)return}if(e!==void 0)return!qe(n)&&n.percent&&(e=`${e} (%)`),{inferred:!0,toString:()=>e}}function Y5(t){return Math.sign(vr(t.domain()))*Math.sign(vr(t.range()))}function rl(t){let{marginTop:n,marginRight:e,marginBottom:r,marginLeft:i,width:o,height:a,facet:{marginTop:u,marginRight:c,marginBottom:f,marginLeft:s}}=t;return{marginTop:Math.max(n,u),marginRight:Math.max(e,c),marginBottom:Math.max(r,f),marginLeft:Math.max(i,s),width:o,height:a}}function Xg({fx:t,fy:n},e){let{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:u,height:c}=rl(e);return{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:t?t.scale.bandwidth()+a+i:u,height:n?n.scale.bandwidth()+r+o:c,facet:{width:u,height:c}}}function pp(t,n){if(t.range===void 0){let{insetLeft:e,insetRight:r}=t,{width:i,marginLeft:o=0,marginRight:a=0}=n,u=o+e,c=i-a-r;t.range=[u,Math.max(u,c)],qe(t)||(t.range=jg(t)),t.scale.range(t.range)}Vg(t)}function gp(t,n){if(t.range===void 0){let{insetTop:e,insetBottom:r}=t,{height:i,marginTop:o=0,marginBottom:a=0}=n,u=o+e,c=i-a-r;t.range=[Math.max(u,c),u],qe(t)?t.range.reverse():t.range=jg(t),t.scale.range(t.range)}Vg(t)}function Vg(t){t.round===void 0&&H5(t)&&U5(t)<=30&&t.scale.round(!0)}function U5({scale:t}){let n=t.domain().length,[e,r]=t.range(),i=t.paddingInner?t.paddingInner():1,o=t.paddingOuter?t.paddingOuter():t.padding(),a=n-i,u=Math.abs(r-e)/Math.max(1,a+o*2);return(u-Math.floor(u))*a}function jg(t){let n=t.scale.domain().length+Zg(t);if(!(n>2))return t.range;let[e,r]=t.range;return Array.from({length:n},(i,o)=>e+o/(n-1)*(r-e))}function W5(t,n=[],e={}){let r=G5(t,n,e);if(e.type===void 0&&e.domain===void 0&&e.range===void 0&&e.interval==null&&t!=="fx"&&t!=="fy"&&qe({type:r})){let i=n.map(({value:o})=>o).filter(o=>o!==void 0);i.some(Bt)?ae(`Warning: some data associated with the ${t} scale are dates. Dates are typically associated with a "utc" or "time" scale rather than a "${gr(r)}" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${t} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`):i.some(c6)?ae(`Warning: some data associated with the ${t} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a "utc" or "time" scale rather than a "${gr(r)}" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`):i.some(f6)&&ae(`Warning: some data associated with the ${t} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a "linear" scale rather than a "${gr(r)}" scale. If you want to treat this data as ordinal, you can specify the interval of the ${t} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`)}switch(e.type=r,r){case"diverging":case"diverging-sqrt":case"diverging-pow":case"diverging-log":case"diverging-symlog":case"cyclical":case"sequential":case"linear":case"sqrt":case"threshold":case"quantile":case"pow":case"log":case"symlog":e=ia(n,e,$n);break;case"identity":switch(st.get(t)){case Sn:e=ia(n,e,$n);break;case Ca:e=ia(n,e,X5);break}break;case"utc":case"time":e=ia(n,e,og);break}switch(r){case"diverging":return $5(t,n,e);case"diverging-sqrt":return S5(t,n,e);case"diverging-pow":return Yg(t,n,e);case"diverging-log":return A5(t,n,e);case"diverging-symlog":return T5(t,n,e);case"categorical":case"ordinal":case Fi:return D5(t,n,e);case"cyclical":case"sequential":case"linear":return l5(t,n,e);case"sqrt":return d5(t,n,e);case"threshold":return nl(t,n,e);case"quantile":return g5(t,n,e);case"quantize":return m5(t,n,e);case"pow":return Bg(t,n,e);case"log":return h5(t,n,e);case"symlog":return p5(t,n,e);case"utc":return P5(t,n,e);case"time":return L5(t,n,e);case"point":return I5(t,n,e);case"band":return O5(t,n,e);case"identity":return b5(t);case void 0:return;default:throw new Error(`unknown scale type: ${r}`)}}function gr(t){return typeof t=="symbol"?t.description:t}function mp(t){return typeof t=="string"?`${t}`.toLowerCase():t}var yp={toString:()=>"projection"};function G5(t,n,{type:e,domain:r,range:i,scheme:o,pivot:a,projection:u}){if(e=mp(e),t==="fx"||t==="fy")return"band";(t==="x"||t==="y")&&u!=null&&(e=yp);for(let s of n){let d=mp(s.type);if(d!==void 0){if(e===void 0)e=d;else if(e!==d)throw new Error(`scale incompatible with channel: ${e} !== ${d}`)}}if(e===yp)return;if(e!==void 0)return e;if(r===void 0&&!n.some(({value:s})=>s!==void 0))return;let c=st.get(t);if(c===Pi)return"sqrt";if(c===kr||c===Di)return"linear";if(c===Ca)return"ordinal";let f=(r??i)?.length;if(f<2||f>2)return Zf(c);if(r!==void 0){if(np(r))return Zf(c);if(Bt(r))return"utc"}else{let s=n.map(({value:d})=>d).filter(d=>d!==void 0);if(s.some(np))return Zf(c);if(s.some(Bt))return"utc"}if(c===jn){if(a!=null||f5(o))return"diverging";if(a5(o))return"categorical"}return"linear"}function Zf(t){switch(t){case Sn:return"point";case jn:return Fi;default:return"ordinal"}}function qe({type:t}){return t==="ordinal"||t==="point"||t==="band"||t===Fi}function Zg({type:t}){return t==="threshold"}function H5({type:t}){return t==="point"||t==="band"}function kn(t){if(t===void 0)return!0;let n=t.domain(),e=t(n[0]);for(let r=1,i=n.length;r<i;++r)if(t(n[r])-e)return!1;return!0}function ia(t,{domain:n,...e},r){for(let i of t)i.value!==void 0&&(n===void 0&&(n=i.value?.domain),i.value=r(i.value));return{domain:n===void 0?n:r(n),...e}}function X5(t){return gt(t,Hs)}function V5(t,n){return e=>{if(!st.has(e=`${e}`))throw new Error(`unknown scale: ${e}`);return(e==="projection"?n:t)[e]}}function j5({scale:t,type:n,domain:e,range:r,interpolate:i,interval:o,transform:a,percent:u,pivot:c}){if(n==="identity")return{type:"identity",apply:s=>s,invert:s=>s};let f=t.unknown?t.unknown():void 0;return{type:n,domain:_i(e),...r!==void 0&&{range:_i(r)},...a!==void 0&&{transform:a},...u&&{percent:u},...f!==void 0&&{unknown:f},...o!==void 0&&{interval:o},...i!==void 0&&{interpolate:i},...t.clamp&&{clamp:t.clamp()},...c!==void 0&&{pivot:c,symmetric:!1},...t.base&&{base:t.base()},...t.exponent&&{exponent:t.exponent()},...t.constant&&{constant:t.constant()},...t.align&&{align:t.align(),round:t.round()},...t.padding&&(t.paddingInner?{paddingInner:t.paddingInner(),paddingOuter:t.paddingOuter()}:{padding:t.padding()}),...t.bandwidth&&{bandwidth:t.bandwidth(),step:t.step()},apply:s=>t(s),...t.invert&&{invert:s=>t.invert(s)}}}var bs=Symbol("unset");function il(t){return(t.length===1?Z5:K5)(t)}function Z5(t){let n,e=bs;return r=>(Object.is(e,r)||(e=r,n=t(r)),n)}function K5(t){let n,e;return(...r)=>((e?.length!==r.length||e.some((i,o)=>!Object.is(i,r[o])))&&(e=r,n=t(...r)),n)}var Q5=il(t=>new Intl.NumberFormat(t)),O_=il((t,n)=>new Intl.DateTimeFormat(t,{timeZone:"UTC",...n&&{month:n}})),F_=il((t,n)=>new Intl.DateTimeFormat(t,{timeZone:"UTC",...n&&{weekday:n}}));function J5(t="en-US"){let n=Q5(t);return e=>e!=null&&!isNaN(e)?n.format(e):void 0}function t3(t){return Yx(t,"Invalid Date")}function n3(t="en-US"){let n=J5(t);return e=>(e instanceof Date?t3:typeof e=="number"?n:Tt)(e)}var $r=n3(),St=typeof window<"u"&&!(window.devicePixelRatio>1)?.5:0,e3=0,r3=0;function Kg(){return`plot-clip-${++e3}`}function i3(){return`plot-filter-${++r3}`}function o3(t,{title:n,href:e,ariaLabel:r,ariaDescription:i,ariaHidden:o,target:a,fill:u,fillOpacity:c,stroke:f,strokeWidth:s,strokeOpacity:d,strokeLinejoin:l,strokeLinecap:h,strokeMiterlimit:p,strokeDasharray:m,strokeDashoffset:w,opacity:x,mixBlendMode:v,imageFilter:M,paintOrder:g,pointerEvents:b,shapeRendering:y,channels:_},{ariaLabel:$,fill:S="currentColor",fillOpacity:C,stroke:A="none",strokeOpacity:k,strokeWidth:D,strokeLinecap:P,strokeLinejoin:T,strokeMiterlimit:O,paintOrder:R}){S===null&&(u=null,c=null),A===null&&(f=null,d=null),zt(S)?!zt(A)&&(!zt(u)||_?.fill)&&(A="none"):zt(A)&&(!zt(f)||_?.stroke)&&(S="none");let[U,L]=sn(u,S),[I,q]=Rt(c,C),[W,z]=sn(f,A),[K,et]=Rt(d,k),[at,B]=Rt(x);$i(z)||(s===void 0&&(s=D),h===void 0&&(h=P),l===void 0&&(l=T),p===void 0&&!p6(l)&&(p=O),!$i(L)&&g===void 0&&(g=R));let[G,N]=Rt(s);return S!==null&&(t.fill=$t(L,"currentColor"),t.fillOpacity=bi(q,1)),A!==null&&(t.stroke=$t(z,"none"),t.strokeWidth=bi(N,1),t.strokeOpacity=bi(et,1),t.strokeLinejoin=$t(l,"miter"),t.strokeLinecap=$t(h,"butt"),t.strokeMiterlimit=bi(p,4),t.strokeDasharray=$t(m,"none"),t.strokeDashoffset=$t(w,"0")),t.target=Tt(a),t.ariaLabel=Tt($),t.ariaDescription=Tt(i),t.ariaHidden=Tt(o),t.opacity=bi(B,1),t.mixBlendMode=$t(v,"normal"),t.imageFilter=$t(M,"none"),t.paintOrder=$t(g,"normal"),t.pointerEvents=$t(b,"auto"),t.shapeRendering=$t(y,"auto"),{title:{value:n,optional:!0,filter:null},href:{value:e,optional:!0,filter:null},ariaLabel:{value:r,optional:!0,filter:null},fill:{value:U,scale:"auto",optional:!0},fillOpacity:{value:I,scale:"auto",optional:!0},stroke:{value:W,scale:"auto",optional:!0},strokeOpacity:{value:K,scale:"auto",optional:!0},strokeWidth:{value:G,optional:!0},opacity:{value:at,scale:"auto",optional:!0}}}function a3(t,n){n&&t.filter(e=>Ls(n[e])).append("title").call(c3,n)}function u3(t,n){n&&t.filter(([e])=>Ls(n[e])).append("title").call(f3,n)}function c3(t,n){n&&t.text(e=>$r(n[e]))}function f3(t,n){n&&t.text(([e])=>$r(n[e]))}function ln(t,{target:n,tip:e},{ariaLabel:r,title:i,fill:o,fillOpacity:a,stroke:u,strokeOpacity:c,strokeWidth:f,opacity:s,href:d}){r&&X(t,"aria-label",l=>r[l]),o&&X(t,"fill",l=>o[l]),a&&X(t,"fill-opacity",l=>a[l]),u&&X(t,"stroke",l=>u[l]),c&&X(t,"stroke-opacity",l=>c[l]),f&&X(t,"stroke-width",l=>f[l]),s&&X(t,"opacity",l=>s[l]),d&&Qg(t,l=>d[l],n),e||a3(t,i)}function ol(t,{target:n,tip:e},{ariaLabel:r,title:i,fill:o,fillOpacity:a,stroke:u,strokeOpacity:c,strokeWidth:f,opacity:s,href:d}){r&&X(t,"aria-label",([l])=>r[l]),o&&X(t,"fill",([l])=>o[l]),a&&X(t,"fill-opacity",([l])=>a[l]),u&&X(t,"stroke",([l])=>u[l]),c&&X(t,"stroke-opacity",([l])=>c[l]),f&&X(t,"stroke-width",([l])=>f[l]),s&&X(t,"opacity",([l])=>s[l]),d&&Qg(t,([l])=>d[l],n),e||u3(t,i)}function s3({ariaLabel:t,title:n,fill:e,fillOpacity:r,stroke:i,strokeOpacity:o,strokeWidth:a,opacity:u,href:c},{tip:f}){return[t,f?void 0:n,e,r,i,o,a,u,c].filter(s=>s!==void 0)}function l3(t,n,e){let r=Or(t,i=>n[i]);return e===void 0&&r.size>1+t.length>>1&&ae("Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null."),r.values()}function*al(t,n,e,r){let{z:i}=e,{z:o}=r,a=s3(r,e),u=[...n,...a];for(let c of o?l3(t,o,i):[t]){let f,s;t:for(let d of c){for(let l of u)if(!An(l[d])){s&&s.push(-1);continue t}if(f===void 0){s&&(yield s),f=a.map(l=>Xn(l[d])),s=[d];continue}s.push(d);for(let l=0;l<a.length;++l)if(Xn(a[l][d])!==f[l]){yield s,f=a.map(p=>Xn(p[d])),s=[d];continue t}}s&&(yield s)}}function d3(t,n,e,r){let i,{clip:o=r.clip}=n;o==="frame"?(t=pt("svg:g",r).each(function(){this.appendChild(t.node()),t.node=()=>this}),i=p3(r,e)):o&&(i=m3(o,r)),X(t,"aria-label",n.ariaLabel),X(t,"aria-description",n.ariaDescription),X(t,"aria-hidden",n.ariaHidden),X(t,"clip-path",i)}function h3(t){let n=new WeakMap;return(e,r)=>{let i=n.get(e);if(!i){let o=Kg();Nn(e.ownerSVGElement).append("clipPath").attr("id",o).call(t,e,r),n.set(e,i=`url(#${o})`)}return i}}var p3=h3((t,n,e)=>{let{width:r,height:i,marginLeft:o,marginRight:a,marginTop:u,marginBottom:c}=e;t.append("rect").attr("x",o).attr("y",u).attr("width",r-a-o).attr("height",i-u-c)}),bp=new WeakMap,g3={type:"Sphere"};function m3(t,n){let e,r;if((e=bp.get(n))||bp.set(n,e=new WeakMap),t.type==="Sphere"&&(t=g3),!(r=e.get(t))){let i=Kg();Nn(n.ownerSVGElement).append("clipPath").attr("id",i).append("path").attr("d",n.path()(t)),e.set(t,r=`url(#${i})`)}return r}function Ht(t,n,e,r){d3(t,n,e,r),X(t,"class",n.className),X(t,"fill",n.fill),X(t,"fill-opacity",n.fillOpacity),X(t,"stroke",n.stroke),X(t,"stroke-width",n.strokeWidth),X(t,"stroke-opacity",n.strokeOpacity),X(t,"stroke-linejoin",n.strokeLinejoin),X(t,"stroke-linecap",n.strokeLinecap),X(t,"stroke-miterlimit",n.strokeMiterlimit),X(t,"stroke-dasharray",n.strokeDasharray),X(t,"stroke-dashoffset",n.strokeDashoffset),X(t,"shape-rendering",n.shapeRendering),X(t,"filter",n.imageFilter),X(t,"paint-order",n.paintOrder);let{pointerEvents:i=r.pointerSticky===!1?"none":void 0}=n;X(t,"pointer-events",i)}function Lt(t,n){y3(t,"mix-blend-mode",n.mixBlendMode),X(t,"opacity",n.opacity)}function Qg(t,n,e){t.each(function(r){let i=n(r);if(i!=null){let o=this.ownerDocument.createElementNS(ge.svg,"a");o.setAttribute("fill","inherit"),o.setAttributeNS(ge.xlink,"href",i),e!=null&&o.setAttribute("target",e),this.parentNode.insertBefore(o,this).appendChild(this)}})}function X(t,n,e){e!=null&&t.attr(n,e)}function y3(t,n,e){e!=null&&t.style(n,e)}function Pt(t,n,{x:e,y:r},i=St,o=St){i+=n.dx,o+=n.dy,e?.bandwidth&&(i+=e.bandwidth()/2),r?.bandwidth&&(o+=r.bandwidth()/2),(i||o)&&t.attr("transform",`translate(${i},${o})`)}function $t(t,n){if((t=Tt(t))!==n)return t}function bi(t,n){if((t=kt(t))!==n)return t}var b3=/^-?([_a-z]|[\240-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])([_a-z0-9-]|[\240-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])*$/i;function ul(t){if(t===void 0)return"plot-d6a7b5";if(t=`${t}`,!b3.test(t))throw new Error(`invalid class name: ${t}`);return t}function cl(t,n){if(typeof n=="string")t.property("style",n);else if(n!=null)for(let e of t)Object.assign(e.style,n)}function zi({frameAnchor:t},{width:n,height:e,marginTop:r,marginRight:i,marginBottom:o,marginLeft:a}){return[/left$/.test(t)?a:/right$/.test(t)?n-i:(a+n-i)/2,/^top/.test(t)?r:/^bottom/.test(t)?e-o:(r+e-o)/2]}function w3(t,n,e={}){let r=.5-St,i=.5+St,o=.5+St,a=.5-St;for(let{marginTop:m,marginRight:w,marginBottom:x,marginLeft:v}of n)m>r&&(r=m),w>i&&(i=w),x>o&&(o=x),v>a&&(a=v);let{margin:u,marginTop:c=u!==void 0?u:r,marginRight:f=u!==void 0?u:i,marginBottom:s=u!==void 0?u:o,marginLeft:d=u!==void 0?u:a}=e;c=+c,f=+f,s=+s,d=+d;let{width:l=640,height:h=v3(t,e,{width:l,marginTopDefault:r,marginRightDefault:i,marginBottomDefault:o,marginLeftDefault:a})+Math.max(0,c-r+s-o)}=e;l=+l,h=+h;let p={width:l,height:h,marginTop:c,marginRight:f,marginBottom:s,marginLeft:d};if(t.fx||t.fy){let{margin:m,marginTop:w=m!==void 0?m:c,marginRight:x=m!==void 0?m:f,marginBottom:v=m!==void 0?m:s,marginLeft:M=m!==void 0?m:d}=e.facet??{};w=+w,x=+x,v=+v,M=+M,p.facet={marginTop:w,marginRight:x,marginBottom:v,marginLeft:M}}return p}function v3({x:t,y:n,fy:e,fx:r},{projection:i,aspectRatio:o},{width:a,marginTopDefault:u,marginRightDefault:c,marginBottomDefault:f,marginLeftDefault:s}){let d=e&&e.scale.domain().length||1,l=r5(i);if(l){let p=r?r.scale.domain().length:1,m=(1.1*d-.1)/(1.1*p-.1)*l,w=Math.max(.1,Math.min(10,m));return Math.round((a-s-c)*w+u+f)}let h=n?qe(n)?n.scale.domain().length||1:Math.max(7,17/d):1;if(o!=null){if(o=+o,!(isFinite(o)&&o>0))throw new Error(`invalid aspectRatio: ${o}`);let p=wp("y",n)/(wp("x",t)*o),m=r?r.scale.bandwidth():1,w=e?e.scale.bandwidth():1,x=m*(a-s-c)-t.insetLeft-t.insetRight;return(p*x+n.insetTop+n.insetBottom)/w+u+f}return!!(n||e)*Math.max(1,Math.min(60,h*d))*20+!!r*30+60}function wp(t,n){if(!n)throw new Error(`aspectRatio requires ${t} scale`);let{type:e,domain:r}=n,i;switch(e){case"linear":case"utc":case"time":i=Number;break;case"pow":{let u=n.scale.exponent();i=c=>Math.pow(c,u);break}case"log":i=Math.log;break;case"point":case"band":return r.length;default:throw new Error(`unsupported ${t} scale for aspectRatio: ${e}`)}let[o,a]=Yt(r);return Math.abs(i(a)-i(o))}function x3(t,n){let{fx:e,fy:r}=ys(t,n),i=e?.scale.domain(),o=r?.scale.domain();return i&&o?Fl(i,o).map(([a,u],c)=>({x:a,y:u,i:c})):i?i.map((a,u)=>({x:a,i:u})):o?o.map((a,u)=>({y:a,i:u})):void 0}function _3(t,{x:n,y:e}){return n&&=ws(n),e&&=ws(e),t.filter(n&&e?r=>n.has(r.x)&&e.has(r.y):n?r=>n.has(r.x):r=>e.has(r.y)).sort(n&&e?(r,i)=>n.get(r.x)-n.get(i.x)||e.get(r.y)-e.get(i.y):n?(r,i)=>n.get(r.x)-n.get(i.x):(r,i)=>e.get(r.y)-e.get(i.y))}function fl(t,{fx:n,fy:e}){let r=Vn(t),i=n?.value,o=e?.value;return n&&e?he(r,a=>(a.fx=i[a[0]],a.fy=o[a[0]],a),a=>i[a],a=>o[a]):n?he(r,a=>(a.fx=i[a[0]],a),a=>i[a]):he(r,a=>(a.fy=o[a[0]],a),a=>o[a])}function M3(t,n,{marginTop:e,marginLeft:r}){let i=t?({x:a})=>t(a)-r:()=>0,o=n?({y:a})=>n(a)-e:()=>0;return function(a){this.tagName==="svg"?(this.setAttribute("x",i(a)),this.setAttribute("y",o(a))):this.setAttribute("transform",`translate(${i(a)},${o(a)})`)}}function $3(t){let n=[],e=new Uint32Array(pn(t,r=>r.length));for(let r of t){let i=0;for(let o of t)r!==o&&(e.set(o,i),i+=o.length);n.push(e.slice(0,i))}return n}var S3=new Map([["top",Kf],["right",ts],["bottom",Qf],["left",Jf],["top-left",oa(Kf,Jf)],["top-right",oa(Kf,ts)],["bottom-left",oa(Qf,Jf)],["bottom-right",oa(Qf,ts)],["top-empty",k3],["right-empty",N3],["bottom-empty",C3],["left-empty",E3],["empty",R3]]);function A3(t){if(t==null)return null;let n=S3.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid facet anchor: ${t}`)}var vp=new WeakMap;function ws(t){let n=vp.get(t);return n||vp.set(t,n=new on(gt(t,(e,r)=>[e,r]))),n}function fe(t,n){return ws(t).get(n)}function T3(t,n,e){return n=Xn(n),e=Xn(e),t.find(r=>Object.is(Xn(r.x),n)&&Object.is(Xn(r.y),e))}function La(t,n,e){return T3(t,n,e)?.empty}function Kf(t,{y:n},{y:e}){return n?fe(n,e)===0:!0}function Qf(t,{y:n},{y:e}){return n?fe(n,e)===n.length-1:!0}function Jf(t,{x:n},{x:e}){return n?fe(n,e)===0:!0}function ts(t,{x:n},{x:e}){return n?fe(n,e)===n.length-1:!0}function k3(t,{y:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,r);if(o>0)return La(t,e,n[o-1])}function C3(t,{y:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,r);if(o<n.length-1)return La(t,e,n[o+1])}function E3(t,{x:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,e);if(o>0)return La(t,n[o-1],r)}function N3(t,{x:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,e);if(o<n.length-1)return La(t,n[o+1],r)}function R3(t,n,{empty:e}){return e}function oa(t,n){return function(){return t.apply(null,arguments)&&n.apply(null,arguments)}}function ns(t,{channels:{fx:n,fy:e},groups:r}){return n&&e?t.map(({x:i,y:o})=>r.get(i)?.get(o)??[]):n?t.map(({x:i})=>r.get(i)??[]):t.map(({y:i})=>r.get(i)??[])}var Ct=class{constructor(n,e={},r={},i){let{facet:o="auto",facetAnchor:a,fx:u,fy:c,sort:f,dx:s=0,dy:d=0,margin:l=0,marginTop:h=l,marginRight:p=l,marginBottom:m=l,marginLeft:w=l,className:x,clip:v=i?.clip,channels:M,tip:g,pool:b=i?.pool,render:y}=r;if(this.data=n,this.sort=_r(f)?f:null,this.initializer=Mr(r).initializer,this.transform=this.initializer?r.transform:Ii(r).transform,o===null||o===!1?this.facet=null:(this.facet=dn(o===!0?"include":o,"facet",["auto","include","exclude","super"]),this.fx=n===da&&typeof u=="string"?[u]:u,this.fy=n===da&&typeof c=="string"?[c]:c),this.facetAnchor=A3(a),e=mg(e),M!==void 0&&(e={...L3(M),...e}),i!==void 0&&(e={...o3(this,r,i),...e}),this.channels=Object.fromEntries(Object.entries(e).map(([_,$])=>{if(Aa($.value)){let{value:S,label:C=$.label,scale:A=$.scale}=$.value;$={...$,label:C,scale:A,value:S}}if(n===da&&typeof $.value=="string"){let{value:S}=$;$={...$,value:[S]}}return[_,$]}).filter(([_,{value:$,optional:S}])=>{if($!=null)return!0;if(S)return!1;throw new Error(`missing channel value: ${_}`)})),this.dx=+s,this.dy=+d,this.marginTop=+h,this.marginRight=+p,this.marginBottom=+m,this.marginLeft=+w,this.clip=yg(v),this.tip=P3(g),this.pool=!!b,this.className=Tt(x),this.facet==="super"){if(u||c)throw new Error("super-faceting cannot use fx or fy");for(let _ in this.channels){let{scale:$}=e[_];if(!($!=="x"&&$!=="y"))throw new Error("super-faceting cannot use x or y")}}y!=null&&(this.render=tm(y,this.render))}initialize(n,e,r){let i=xr(this.data);n===void 0&&i!=null&&(n=[Vn(i)]);let o=n;this.transform!=null&&({facets:n,data:i}=this.transform(i,n,r),i=xr(i)),n!==void 0&&(n.original=o);let a=U6(this.channels,i);return this.sort!=null&&G6(i,n,a,e,this.sort),{data:i,facets:n,channels:a}}filter(n,e,r){for(let i in e){let{filter:o=An}=e[i];if(o!==null){let a=r[i];n=n.filter(u=>o(a[u]))}}return n}project(n,e,r){for(let i in n)if(n[i].scale==="x"&&/^x|x$/.test(i)){let o=i.replace(/^x|x$/,"y");o in n&&n[o].scale==="y"&&n5(i,o,e,r.projection)}}scale(n,e,r){let i=W6(n,e);return r.projection&&this.project(n,i,r),i}plot({marks:n=[],...e}={}){return Ml({...e,marks:[...n,this]})}};function Jg(...t){return t.plot=Ct.prototype.plot,t}function tm(t,n){if(t==null)return n===null?void 0:n;if(n==null)return t===null?void 0:t;if(typeof t!="function")throw new TypeError(`invalid render transform: ${t}`);if(typeof n!="function")throw new TypeError(`invalid render transform: ${n}`);return function(e,r,i,o,a,u){return t.call(this,e,r,i,o,a,(c,f,s,d,l)=>n.call(this,c,f,s,d,l,u))}}function L3(t){return Object.fromEntries(Object.entries(mg(t)).map(([n,e])=>(e=typeof e=="string"?{value:e,label:n}:Li(e),e.filter===void 0&&e.scale==null&&(e={...e,filter:null}),[n,e])))}function P3(t){return t===!0?"xy":t===!1||t==null?null:typeof t=="string"?dn(t,"tip",["x","y","xy"]):t}function Cr(t,n){return t?.tip===!0?{...t,tip:n}:ue(t?.tip)&&t.tip.pointer===void 0?{...t,tip:{...t.tip,pointer:n}}:t}var xp=new WeakMap,_p=new WeakSet;function sl(t,n,{x:e,y:r,px:i,py:o,maxRadius:a=40,channels:u,render:c,...f}={}){return a=+a,i!=null&&(e??=null,u={...u,px:{value:i,scale:"x"}}),o!=null&&(r??=null,u={...u,py:{value:o,scale:"y"}}),{x:e,y:r,channels:u,...f,render:tm(function(s,d,l,h,p,m){p={...p,pointerSticky:!1};let w=p.ownerSVGElement,{data:x}=p.getMarkState(this),v=xp.get(w);v||(v={sticky:!1,roots:[],renders:[],pool:this.pool?{map:new Map}:null},xp.set(w,v));let M=v.renders.push(z)-1,{x:g,y:b,fx:y,fy:_}=d,$=y?y(s.fx)-h.marginLeft:0,S=_?_(s.fy)-h.marginTop:0;g?.bandwidth&&($+=g.bandwidth()/2),b?.bandwidth&&(S+=b.bandwidth()/2);let C=s.fi!=null,A;if(C){let B=v.facetPools;B||(v.facetPools=B=new Map),A=B.get(this),A||B.set(this,A={map:new Map})}let[k,D]=zi(this,h),{px:P,py:T}=l,O=P?B=>P[B]:nm(l,k),R=T?B=>T[B]:em(l,D),U,L,I,q=v.pool??A;function W(B,G){if(!q)return void z(B);B==null&&z(B),q.map.set(M,{ii:B,ri:G,render:z}),q.frame!==void 0&&cancelAnimationFrame(q.frame),q.frame=requestAnimationFrame(()=>{q.frame=void 0;let N=null;for(let F of q.map.values())(!N||F.ri<N.ri)&&(N=F);for(let F of q.map.values())F.render(F===N?F.ii:null)})}function z(B){if(U===B&&I===v.sticky)return;U=B,I=p.pointerSticky=v.sticky;let G=U==null?[]:[U];C&&(G.fx=s.fx,G.fy=s.fy,G.fi=s.fi);let N=m(G,d,l,h,p);if(L){if(C){let F=L.parentNode,Y=L.getAttribute("transform"),E=N.getAttribute("transform");Y?N.setAttribute("transform",Y):N.removeAttribute("transform"),E?F.setAttribute("transform",E):F.removeAttribute("transform"),N.removeAttribute("aria-label"),N.removeAttribute("aria-description"),N.removeAttribute("aria-hidden")}L.replaceWith(N)}if(v.roots[M]=L=N,!(U==null&&A?.map.size>1)){let F=U==null?null:Ie(x)?x[U]:x.get(U);p.dispatchValue(F)}return N}function K(B){if(v.sticky||B.pointerType==="mouse"&&B.buttons===1)return;let[G,N]=dd(B);G-=$,N-=S;let F=G<h.marginLeft||G>h.width-h.marginRight?1:t,Y=N<h.marginTop||N>h.height-h.marginBottom?1:n,E=null,nt=a*a;for(let H of s){let J=F*(O(H)-G),rt=Y*(R(H)-N),ct=J*J+rt*rt;ct<=nt&&(E=H,nt=ct)}if(E!=null&&(t!==1||n!==1)){let H=O(E)-G,J=R(E)-N;nt=H*H+J*J}W(E,nt)}function et(B){_p.has(B)||(_p.add(B),B.pointerType==="mouse"&&U!=null&&(v.sticky&&v.roots.some(G=>G?.contains(B.target))||(v.sticky?(v.sticky=!1,v.renders.forEach(G=>G(null))):(v.sticky=!0,z(U)))))}function at(B){B.pointerType==="mouse"&&(v.sticky||W(null))}return w.addEventListener("pointerenter",K),w.addEventListener("pointermove",K),w.addEventListener("pointerdown",et),w.addEventListener("pointerleave",at),z(null)},c)}}function D3(t){return sl(1,1,t)}function I3(t){return sl(1,.01,t)}function Mp(t){return sl(.01,1,t)}function nm({x1:t,x2:n,x:e=t},r){return t&&n?i=>(t[i]+n[i])/2:e?i=>e[i]:()=>r}function em({y1:t,y2:n,y:e=t},r){return t&&n?i=>(t[i]+n[i])/2:e?i=>e[i]:()=>r}function rm(t){return qe(t)&&t.interval===void 0?void 0:"tabular-nums"}function im(t,n){let{label:e=t.label,tickSize:r=6,width:i=240,height:o=44+r,marginTop:a=18,marginRight:u=0,marginBottom:c=16+r,marginLeft:f=0,style:s,ticks:d=(i-f-u)/64,tickFormat:l,fontVariant:h=rm(t),round:p=!0,opacity:m,className:w}=n,x=Js(n);w=ul(w),m=Rt(m)[1],l===null&&(l=()=>null);let v=pt("svg",x).attr("class",`${w}-ramp`).attr("font-family","system-ui, sans-serif").attr("font-size",10).attr("width",i).attr("height",o).attr("viewBox",`0 0 ${i} ${o}`).call(k=>k.append("style").text(`:where(.${w}-ramp) {
|
|
5
|
+
${e}`}function Vx(t){return t==="time"?la:t==="utc"?vi:Hx}function jx(t,n,e){let r=Yt(Ql(n,(i,o)=>Math.abs(o-i)));if(r<1e3)return Q1("millisecond","utc",e);for(let[i,o,a,u]of Vx(t)){if(r>u||i==="hour"&&!r)break;if(n.every(c=>o.floor(c)>=c))return Q1(i,a,e)}}function pr(t,n,e){return(r,i,o)=>{let a=t(r,i),u=n(r,i),c=i-vr(o);return i!==c&&o[c]!==void 0&&u===n(o[c],c)?a:e(a,u)}}var Fs=Object.getPrototypeOf(Uint8Array),Zx=Object.prototype.toString;function Ie(t){return t instanceof Array||t instanceof Fs}function tg(t){return t instanceof Fs&&!Kx(t)}function ng(t){return t?.prototype instanceof Fs&&!Qx(t)}function Kx(t){return t instanceof BigInt64Array||t instanceof BigUint64Array}function Qx(t){return t===BigInt64Array||t===BigUint64Array}var eg=Symbol("reindex");function ft(t,n,e){let r=typeof n;return r==="string"?bg(t)?zs(t.getChild(n),e):J1(t,rg(n),e):r==="function"?J1(t,n,e):r==="number"||n instanceof Date||r==="boolean"?gt(t,Hn(n),e):typeof n?.transform=="function"?fs(n.transform(t),e):Jx(fs(n,e),t?.[eg])}function Jx(t,n){return t!=null&&n?Ys(t,n):t}function J1(t,n,e){return gt(t,ng(e)?(r,i)=>Bs(n(r,i)):n,e)}function fs(t,n){return n===void 0?Fe(t):wg(t)?zs(t,n):t instanceof n?t:n.from(t,ng(n)&&!tg(t)?Bs:void 0)}function zs(t,n){return t==null?t:(n===void 0||n===Array)&&y6(t.type)?og(tp(t)):fs(tp(t),n)}function tp(t){return t.nullCount?t.toJSON():t.toArray()}var da=[null],rg=t=>n=>{let e=n[t];return e===void 0&&n.type==="Feature"?n.properties?.[t]:e},Oe={transform:Vn},ht={transform:t=>t},t6=()=>1,n6=()=>!0,Tt=t=>t==null?t:`${t}`,kt=t=>t==null?t:+t,ig=t=>t?t[0]:void 0,ss=t=>t?t[1]:void 0;var Hn=t=>()=>t;function e6(t){let n=+`${t}`.slice(1)/100;return(e,r)=>Zn(e,n,r)}function $n(t){return tg(t)?t:gt(t,Bs,Float64Array)}function Bs(t){return t==null?NaN:Number(t)}function og(t){return gt(t,ag)}function ag(t){return t instanceof Date&&!isNaN(t)?t:typeof t=="string"?jp(t):t==null||isNaN(t=Number(t))?void 0:new Date(t)}function sn(t,n){return t===void 0&&(t=n),t===null?[void 0,"none"]:Ta(t)?[void 0,t]:[t,void 0]}function Rt(t,n){return t===void 0&&(t=n),t===null||typeof t=="number"?[void 0,t]:[t,void 0]}function ug(t,n,e){if(t!=null)return dn(t,n,e)}function dn(t,n,e){let r=`${t}`.toLowerCase();if(!e.includes(r))throw new Error(`invalid ${n}: ${t}`);return r}function xr(t){return bg(t)?t:Fe(t)}function Fe(t){if(t==null||Ie(t))return t;if(wg(t))return zs(t);if(cg(t))switch(t.type){case"FeatureCollection":return t.features;case"GeometryCollection":return t.geometries;default:return[t]}return Array.from(t)}function cg(t){switch(t?.type){case"FeatureCollection":case"GeometryCollection":case"Feature":case"LineString":case"MultiLineString":case"MultiPoint":case"MultiPolygon":case"Point":case"Polygon":case"Sphere":return!0;default:return!1}}function gt(t,n,e=Array){return t==null?t:t instanceof e?t.map(n):e.from(t,n)}function _i(t,n=Array){return t instanceof n?t.slice():n.from(t)}function fg(t){return t?.x!==void 0||t?.x1!==void 0||t?.x2!==void 0}function sg(t){return t?.y!==void 0||t?.y1!==void 0||t?.y2!==void 0}function Sa(t){return fg(t)||sg(t)||t?.interval!==void 0}function ue(t){return t?.toString===Zx}function ls(t){return ue(t)&&(t.type!==void 0||t.domain!==void 0)}function Aa(t){return ue(t)&&typeof t.transform!="function"}function _r(t){return Aa(t)&&t.value===void 0&&t.channel===void 0}function lg(t,n,e,r=ht){return n===void 0&&e===void 0?(n=0,e=t===void 0?r:t):n===void 0?n=t===void 0?0:t:e===void 0&&(e=t===void 0?0:t),[n,e]}function ze(t,n){return t===void 0&&n===void 0?[ig,ss]:[t,n]}function qs({z:t,fill:n,stroke:e}={}){return t===void 0&&([t]=sn(n)),t===void 0&&([t]=sn(e)),t}function Mi(t){return Ie(t)?t.length:t?.numRows}function Vn(t){let n=Mi(t),e=new Uint32Array(n);for(let r=0;r<n;++r)e[r]=r;return e}function Ys(t,n){return Ie(t)?gt(n,e=>t[e],t.constructor):gt(n,e=>t.at(e))}function r6(t,n,e){return t.subarray?t.subarray(n,e):t.slice(n,e)}function Xn(t){return t!==null&&typeof t=="object"?t.valueOf():t}function i6(t,n){if(n[t]!==void 0)return n[t];switch(t){case"x1":case"x2":t="x";break;case"y1":case"y2":t="y";break}return n[t]}function ga(t){let n;return[{transform:()=>n,label:Be(t)},e=>n=e]}function zt(t){return t==null?[t]:ga(t)}function Be(t,n){return typeof t=="string"?t:t&&t.label!==void 0?t.label:n}function ma(t,n){return{transform(e){let r=t.transform(e),i=n.transform(e);return qt(r)||qt(i)?gt(r,(o,a)=>new Date((+r[a]+ +i[a])/2)):gt(r,(o,a)=>(+r[a]+ +i[a])/2,Float64Array)},label:t.label}}function ya(t,n){let e=dg(n?.interval,n?.type);return e?gt(t,e):t}function dg(t,n){let e=Us(t,n);return e&&(r=>An(r)?e.floor(r):r)}function Us(t,n){if(t!=null){if(typeof t=="number")return o6(t);if(typeof t=="string")return(n==="time"?Qp:Os)(t);if(typeof t.floor!="function")throw new Error("invalid interval; missing floor method");if(typeof t.offset!="function")throw new Error("invalid interval; missing offset method");return t}}function o6(t){t=+t,0<t&&t<1&&Number.isInteger(1/t)&&(t=-1/t);let n=Math.abs(t);return t<0?{floor:e=>Math.floor(e*n)/n,offset:(e,r=1)=>(e*n+Math.floor(r))/n,range:(e,r)=>Ze(Math.ceil(e*n),r*n).map(i=>i/n)}:{floor:e=>Math.floor(e/n)*n,offset:(e,r=1)=>e+n*Math.floor(r),range:(e,r)=>Ze(Math.ceil(e/n),r/n).map(i=>i*n)}}function Tr(t,n){if(t=Us(t,n),t&&typeof t.range!="function")throw new Error("invalid interval: missing range method");return t}function a6(t,n){if(t=Tr(t,n),t&&typeof t.ceil!="function")throw new Error("invalid interval: missing ceil method");return t}function u6(t){return yr(t)&&typeof t?.floor=="function"&&t.floor()instanceof Date}function yr(t){return typeof t?.range=="function"}function Li(t){return t===void 0||Aa(t)?t:{value:t}}function c6(t){return t==null?null:{transform:n=>ft(n,t,Float64Array),label:Be(t)}}function ce(t){return t&&typeof t[Symbol.iterator]=="function"}function hg(t){for(let n of t)if(n!=null)return typeof n!="object"||n instanceof Date}function np(t){for(let n of t){if(n==null)continue;let e=typeof n;return e==="string"||e==="boolean"}}function qt(t){for(let n of t)if(n!=null)return n instanceof Date}function f6(t){for(let n of t)if(n!=null)return typeof n=="string"&&isNaN(n)&&jp(n)}function s6(t){for(let n of t)if(n!=null){if(typeof n!="string")return!1;if(n.trim())return!isNaN(n)}}function l6(t){for(let n of t)if(n!=null)return typeof n=="number"}function pg(t){return ha(t,d6)}function d6(t){return typeof t=="number"&&Number.isInteger(t)&&1500<=t&&t<=2500}function ha(t,n){let e;for(let r of t)if(r!=null){if(!n(r))return!1;e=!0}return e}var h6=new Set("none,currentcolor,transparent,aliceblue,antiquewhite,aqua,aquamarine,azure,beige,bisque,black,blanchedalmond,blue,blueviolet,brown,burlywood,cadetblue,chartreuse,chocolate,coral,cornflowerblue,cornsilk,crimson,cyan,darkblue,darkcyan,darkgoldenrod,darkgray,darkgreen,darkgrey,darkkhaki,darkmagenta,darkolivegreen,darkorange,darkorchid,darkred,darksalmon,darkseagreen,darkslateblue,darkslategray,darkslategrey,darkturquoise,darkviolet,deeppink,deepskyblue,dimgray,dimgrey,dodgerblue,firebrick,floralwhite,forestgreen,fuchsia,gainsboro,ghostwhite,gold,goldenrod,gray,green,greenyellow,grey,honeydew,hotpink,indianred,indigo,ivory,khaki,lavender,lavenderblush,lawngreen,lemonchiffon,lightblue,lightcoral,lightcyan,lightgoldenrodyellow,lightgray,lightgreen,lightgrey,lightpink,lightsalmon,lightseagreen,lightskyblue,lightslategray,lightslategrey,lightsteelblue,lightyellow,lime,limegreen,linen,magenta,maroon,mediumaquamarine,mediumblue,mediumorchid,mediumpurple,mediumseagreen,mediumslateblue,mediumspringgreen,mediumturquoise,mediumvioletred,midnightblue,mintcream,mistyrose,moccasin,navajowhite,navy,oldlace,olive,olivedrab,orange,orangered,orchid,palegoldenrod,palegreen,paleturquoise,palevioletred,papayawhip,peachpuff,peru,pink,plum,powderblue,purple,rebeccapurple,red,rosybrown,royalblue,saddlebrown,salmon,sandybrown,seagreen,seashell,sienna,silver,skyblue,slateblue,slategray,slategrey,snow,springgreen,steelblue,tan,teal,thistle,tomato,turquoise,violet,wheat,white,whitesmoke,yellow".split(","));function Ta(t){return typeof t!="string"?!1:(t=t.toLowerCase().trim(),/^#[0-9a-f]{3,8}$/.test(t)||/^(?:url|var|rgb|rgba|hsl|hsla|hwb|lab|lch|oklab|oklch|color|color-mix|light-dark)\(.*\)$/.test(t)||h6.has(t))}function p6(t){return typeof t=="number"&&(0<=t&&t<=1||isNaN(t))}function Bt(t){return t==null||$i(t)}function $i(t){return/^\s*none\s*$/i.test(t)}function g6(t){return/^\s*round\s*$/i.test(t)}function ds(t,n){return ug(t,n,["middle","top-left","top","top-right","right","bottom-right","bottom","bottom-left","left"])}function ka(t="middle"){return ds(t,"frameAnchor")}function gg(t={},...n){let e=t;for(let r of n)for(let i in r)if(e[i]===void 0){let o=r[i];e===t?e={...e,[i]:o}:e[i]=o}return e}function m6(t){console.warn("named iterables are deprecated; please use an object instead");let n=new Set;return Object.fromEntries(Array.from(t,e=>{let{name:r}=e;if(r==null)throw new Error("missing name");let i=`${r}`;if(i==="__proto__")throw new Error(`illegal name: ${i}`);if(n.has(i))throw new Error(`duplicate name: ${i}`);return n.add(i),[r,e]}))}function mg(t){return ce(t)?m6(t):t}function yg(t){return t===!0?t="frame":t===!1?t=null:!cg(t)&&t!=null&&(t=dn(t,"clip",["frame","sphere"]),t==="sphere"&&(t={type:"Sphere"})),t}function bg(t){return t&&typeof t.getChild=="function"&&typeof t.toArray=="function"&&t.schema&&Array.isArray(t.schema.fields)}function wg(t){return t&&typeof t.toArray=="function"&&t.type}function y6(t){return t&&(t.typeId===8||t.typeId===10)&&t.unit===1}var Sn=Symbol("position"),jn=Symbol("color"),Pi=Symbol("radius"),Di=Symbol("length"),kr=Symbol("opacity"),Ca=Symbol("symbol"),vg=Symbol("projection"),st=new Map([["x",Sn],["y",Sn],["fx",Sn],["fy",Sn],["r",Pi],["color",jn],["opacity",kr],["symbol",Ca],["length",Di],["projection",vg]]);function b6(t){return t===Sn||t===vg}function w6(t){return t===Sn||t===Pi||t===Di||t===kr}var v6=Math.sqrt(3),x6=2/v6,_6={draw(t,n){let e=Math.sqrt(n/Math.PI),r=e*x6,i=r/2;t.moveTo(0,r),t.lineTo(e,i),t.lineTo(e,-i),t.lineTo(0,-r),t.lineTo(-e,-i),t.lineTo(-e,i),t.closePath()}},Ws=new Map([["asterisk",Cf],["circle",hr],["cross",Ef],["diamond",Nf],["diamond2",Rf],["hexagon",_6],["plus",Lf],["square",Pf],["square2",Df],["star",If],["times",Bf],["triangle",Of],["triangle2",Ff],["wye",zf]]);function Gs(t){return t&&typeof t.draw=="function"}function M6(t){return Gs(t)?!0:typeof t!="string"?!1:Ws.has(t.toLowerCase())}function Hs(t){if(t==null||Gs(t))return t;let n=Ws.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid symbol: ${t}`)}function $6(t){if(t==null||Gs(t))return[void 0,t];if(typeof t=="string"){let n=Ws.get(`${t}`.toLowerCase());if(n)return[void 0,n]}return[t,void 0]}function Ii({filter:t,sort:n,reverse:e,transform:r,initializer:i,...o}={},a){if(r===void 0&&(t!=null&&(r=xg(t)),n!=null&&!_r(n)&&(r=Hf(r,Xs(n))),e&&(r=Hf(r,_g))),a!=null&&i!=null)throw new Error("transforms cannot be applied after initializers");return{...o,...(n===null||_r(n))&&{sort:n},transform:Hf(r,a)}}function Mr({filter:t,sort:n,reverse:e,initializer:r,...i}={},o){return r===void 0&&(t!=null&&(r=xg(t)),n!=null&&!_r(n)&&(r=Xf(r,Xs(n))),e&&(r=Xf(r,_g))),{...i,...(n===null||_r(n))&&{sort:n},initializer:Xf(r,o)}}function Hf(t,n){return t==null?n===null?void 0:n:n==null?t===null?void 0:t:function(e,r,i){return{data:e,facets:r}=t.call(this,e,r,i),n.call(this,xr(e),r,i)}}function Xf(t,n){return t==null?n===null?void 0:n:n==null?t===null?void 0:t:function(e,r,i,...o){let a,u,c,f,s,d;return{data:u=e,facets:c=r,channels:a}=t.call(this,e,r,i,...o),{data:s=u,facets:d=c,channels:f}=n.call(this,u,c,{...i,...a},...o),{data:s,facets:d,channels:{...a,...f}}}}function S6(t,n){return(t.initializer!=null?Mr:Ii)(t,n)}function xg(t){return(n,e)=>{let r=ft(n,t);return{data:n,facets:e.map(i=>i.filter(o=>r[o]))}}}function _g(t,n){return{data:t,facets:n.map(e=>e.slice().reverse())}}function A6(t,{sort:n,...e}={}){return{...(Aa(t)&&t.channel!==void 0?Mr:S6)(e,Xs(t)),sort:_r(n)?n:null}}function Xs(t){return(typeof t=="function"&&t.length!==1?T6:k6)(t)}function T6(t){return(n,e)=>{let r=Ie(n)?(i,o)=>t(n[i],n[o]):(i,o)=>t(n.get(i),n.get(o));return{data:n,facets:e.map(i=>i.slice().sort(r))}}}function k6(t){let n,e;({channel:n,value:t,order:e}={...Li(t)});let r=n?.startsWith("-");if(r&&(n=n.slice(1)),e===void 0&&(e=r?pa:fn),typeof e!="function")switch(`${e}`.toLowerCase()){case"ascending":e=fn;break;case"descending":e=pa;break;default:throw new Error(`invalid order: ${e}`)}return(i,o,a)=>{let u;if(n===void 0)u=ft(i,t);else{if(a===void 0)throw new Error("channel sort requires an initializer");if(u=a[n],!u)return{};u=u.value}let c=(f,s)=>e(u[f],u[s]);return{data:i,facets:o.map(f=>f.slice().sort(c))}}}function C6(t={y:"count"},n={}){let{x:e=ht}=n;if(e==null)throw new Error("missing channel: x");return Vs(e,null,t,n)}function E6(t={x:"count"},n={}){let{y:e=ht}=n;if(e==null)throw new Error("missing channel: y");return Vs(null,e,t,n)}function N6(t={fill:"count"},n={}){let{x:e,y:r}=n;if([e,r]=ze(e,r),e==null)throw new Error("missing channel: x");if(r==null)throw new Error("missing channel: y");return Vs(e,r,t,n)}function Vs(t,n,{data:e=Ks,filter:r,sort:i,reverse:o,...a}={},u={}){a=P6(a,u),e=Ag(e,ht),i=i==null?void 0:$g("sort",i,u),r=r==null?void 0:Sg("filter",r,u);let[c,f]=zt(t),[s,d]=zt(n),{z:l,fill:h,stroke:p,x1:m,x2:v,y1:x,y2:w,...M}=u,[g,b]=zt(l),[y]=sn(h),[_]=sn(p),[$,S]=zt(y),[C,A]=zt(_);return{..."z"in u&&{z:g||l},..."fill"in u&&{fill:$||h},..."stroke"in u&&{stroke:C||p},...Ii(M,(k,D,P)=>{let T=ya(ft(k,t),P?.x),O=ya(ft(k,n),P?.y),R=ft(k,l),U=ft(k,y),L=ft(k,_),I=Tg(a,{z:R,fill:U,stroke:L}),q=[],W=[],z=T&&f([]),K=O&&d([]),et=R&&b([]),at=U&&S([]),B=L&&A([]),G=0;for(let N of a)N.initialize(k);i&&i.initialize(k),r&&r.initialize(k);for(let N of D){let F=[];for(let Y of a)Y.scope("facet",N);i&&i.scope("facet",N),r&&r.scope("facet",N);for(let[Y,E]of xi(N,I))for(let[nt,H]of xi(E,O))for(let[J,rt]of xi(H,T)){let ct={data:k};if(T&&(ct.x=J),O&&(ct.y=nt),I&&(ct.z=Y),!(r&&!r.reduce(rt,ct))){F.push(G++),W.push(e.reduceIndex(rt,k,ct)),T&&z.push(J),O&&K.push(nt),R&&et.push(I===R?Y:R[rt[0]]),U&&at.push(I===U?Y:U[rt[0]]),L&&B.push(I===L?Y:L[rt[0]]);for(let Cn of a)Cn.reduce(rt,ct);i&&i.reduce(rt,ct)}}q.push(F)}return kg(q,i,o),{data:W,facets:q}}),...!br(a,"x")&&(c?{x:c}:{x1:m,x2:v}),...!br(a,"y")&&(s?{y:s}:{y1:x,y2:w}),...Object.fromEntries(a.map(({name:k,output:D})=>[k,D]))}}function br(t,...n){for(let{name:e}of t)if(n.includes(e))return!0;return!1}function Mg(t,n,e=js){let r=Object.entries(t);return n.title!=null&&t.title===void 0&&r.push(["title",F6]),n.href!=null&&t.href===void 0&&r.push(["href",Qs]),r.filter(([,i])=>i!==void 0).map(([i,o])=>o===null?R6(i):e(i,o,n))}function js(t,n,e,r=Zs){let i;ue(n)&&"reduce"in n&&(i=n.scale,n=n.reduce);let o=r(t,n,e),[a,u]=ga(o.label),c;return{name:t,output:i===void 0?a:{value:a,scale:i},initialize(f){o.initialize(f),c=u([])},scope(f,s){o.scope(f,s)},reduce(f,s){c.push(o.reduce(f,s))}}}function R6(t){return{name:t,initialize(){},scope(){},reduce(){}}}function Zs(t,n,e,r=Ea){let i=i6(t,e),o=r(n,i),a,u;return{label:Be(o===ba?null:i,o.label),initialize(c){a=i===void 0?c:ft(c,i),o.scope==="data"&&(u=o.reduceIndex(Vn(c),a))},scope(c,f){o.scope===c&&(u=o.reduceIndex(f,a))},reduce(c,f){return o.scope==null?o.reduceIndex(c,a,f):o.reduceIndex(c,a,u,f)}}}function xi(t,n){return n?Or(t,e=>n[e]):[[,t]]}function Ea(t,n,e=L6){if(t==null)return e(t);if(typeof t.reduceIndex=="function")return t;if(typeof t.reduce=="function"&&ue(t))return I6(t);if(typeof t=="function")return O6(t);if(/^p\d{2}$/i.test(t))return Wn(e6(t));switch(`${t}`.toLowerCase()){case"first":return Qs;case"last":return z6;case"identity":return Ks;case"count":return ba;case"distinct":return B6;case"sum":return n==null?ba:q6;case"proportion":return rp(n,"data");case"proportion-facet":return rp(n,"facet");case"deviation":return Wn(Wa);case"min":return Wn(an);case"min-index":return Wn(Xl);case"max":return Wn(Yt);case"max-index":return Wn(Hl);case"mean":return ep(Va);case"median":return ep(zr);case"variance":return Wn(Ua);case"mode":return Wn(Kl)}return e(t)}function L6(t){throw new Error(`invalid reduce: ${t}`)}function P6(t,n){return Mg(t,n,$g)}function $g(t,n,e){return js(t,n,e,Sg)}function Sg(t,n,e){return Zs(t,n,e,Ag)}function Ag(t,n){return Ea(t,n,D6)}function D6(t){switch(`${t}`.toLowerCase()){case"x":return Y6;case"y":return U6;case"z":return Cg}throw new Error(`invalid group reduce: ${t}`)}function Tg(t,n){for(let e in n){let r=n[e];if(r!==void 0&&!t.some(i=>i.name===e))return r}}function kg(t,n,e){if(n){let r=n.output.transform(),i=(o,a)=>fn(r[o],r[a]);t.forEach(o=>o.sort(i))}e&&t.forEach(r=>r.reverse())}function I6(t){return console.warn("deprecated reduce interface; implement reduceIndex instead."),{...t,reduceIndex:t.reduce.bind(t)}}function O6(t){return{reduceIndex(n,e,r){return t(Ys(e,n),r)}}}function Wn(t){return{reduceIndex(n,e){return t(n,r=>e[r])}}}function ep(t){return{reduceIndex(n,e){let r=t(n,i=>e[i]);return qt(e)?new Date(r):r}}}var Ks={reduceIndex(t,n){return Ys(n,t)}},Qs={reduceIndex(t,n){return n[t[0]]}},F6={reduceIndex(t,n){let r=Ir(he(t,o=>o.length,o=>n[o]),ss),i=r.slice(-5).reverse();if(i.length<r.length){let o=r.slice(0,-4);i[4]=[`\u2026 ${o.length.toLocaleString("en-US")} more`,pn(o,ss)]}return i.map(([o,a])=>`${o} (${a.toLocaleString("en-US")})`).join(`
|
|
6
|
+
`)}},z6={reduceIndex(t,n){return n[t[t.length-1]]}},ba={label:"Frequency",reduceIndex(t){return t.length}},B6={label:"Distinct",reduceIndex(t,n){let e=new de;for(let r of t)e.add(n[r]);return e.size}},q6=Wn(pn);function rp(t,n){return t==null?{scope:n,label:"Frequency",reduceIndex:(e,r,i=1)=>e.length/i}:{scope:n,reduceIndex:(e,r,i=1)=>pn(e,o=>r[o])/i}}var Y6={reduceIndex(t,n,{x:e}){return e}},U6={reduceIndex(t,n,{y:e}){return e}},Cg={reduceIndex(t,n,{z:e}){return e}};function Si(t,{scale:n,type:e,value:r,filter:i,hint:o,label:a=Be(r)},u){return o===void 0&&typeof r?.transform=="function"&&(o=r.hint),Eg(u,{scale:n,type:e,value:ft(t,r),label:a,filter:i,hint:o})}function W6(t,n){return Object.fromEntries(Object.entries(t).map(([e,r])=>[e,Si(n,r,e)]))}function G6(t,n){let e=Object.fromEntries(Object.entries(t).map(([r,{scale:i,value:o}])=>{let a=i==null?null:n[i];return[r,a==null?o:gt(o,a)]}));return e.channels=t,e}function Eg(t,n){let{scale:e,value:r}=n;if(e===!0||e==="auto")switch(t){case"fill":case"stroke":case"color":n.scale=e!==!0&&ha(r,Ta)?null:"color",n.defaultScale="color";break;case"fillOpacity":case"strokeOpacity":case"opacity":n.scale=e!==!0&&ha(r,p6)?null:"opacity",n.defaultScale="opacity";break;case"symbol":e!==!0&&ha(r,M6)?(n.scale=null,n.value=gt(r,Hs)):n.scale="symbol",n.defaultScale="symbol";break;default:n.scale=st.has(t)?t:null;break}else if(e===!1)n.scale=null;else if(e!=null&&!st.has(e))throw new Error(`unknown scale: ${e}`);return n}function H6(t,n,e,r,i){let{order:o,reverse:a,reduce:u=!0,limit:c}=i;for(let f in i){if(!st.has(f))continue;let{value:s,order:d=o,reverse:l=a,reduce:h=u,limit:p=c}=Li(i[f]),m=s?.startsWith("-");if(m&&(s=s.slice(1)),d=d===void 0?m!==(s==="width"||s==="height")?Rg:Ng:j6(d),h==null||h===!1)continue;let v=f==="fx"||f==="fy"?V6(n,r[f]):X6(e,f);if(!v)throw new Error(`missing channel for scale: ${f}`);let x=v.value,[w=0,M=1/0]=ce(p)?p:p<0?[p]:[0,p];if(s==null)v.domain=()=>{let g=Array.from(new de(x));return l&&(g=g.reverse()),(w!==0||M!==1/0)&&(g=g.slice(w,M)),g};else{let g=s==="data"?t:s==="height"?ip(e,"y1","y2"):s==="width"?ip(e,"x1","x2"):hs(e,s,s==="y"?"y2":s==="x"?"x2":void 0),b=Ea(h===!0?"max":h,g);v.domain=()=>{let y=Ul(Vn(x),_=>b.reduceIndex(_,g),_=>x[_]);return d&&y.sort(d),l&&y.reverse(),(w!==0||M!==1/0)&&(y=y.slice(w,M)),y.map(ig)}}}}function X6(t,n){for(let e in t){let r=t[e];if(r.scale===n)return r}}function V6(t,n){let e=t.original;if(e===t)return n;let r=n.value,i=n.value=[];for(let o=0;o<e.length;++o){let a=r[e[o][0]];for(let u of t[o])i[u]=a}return n}function ip(t,n,e){let r=hs(t,n),i=hs(t,e);return gt(i,(o,a)=>Math.abs(o-r[a]),Float64Array)}function hs(t,n,e){let r=t[n];if(!r&&e!==void 0&&(r=t[e]),r)return r.value;throw new Error(`missing channel: ${n}`)}function j6(t){if(t==null||typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"ascending":return Ng;case"descending":return Rg}throw new Error(`invalid order: ${t}`)}function Ng([t,n],[e,r]){return fn(n,r)||fn(t,e)}function Rg([t,n],[e,r]){return pa(n,r)||fn(t,e)}function op(t,n){let e=t[n];if(e){for(;e.source;)e=e.source;return e.source===null?null:e}}function Js(t={}){let{document:n=typeof window<"u"?window.document:void 0,clip:e}=t;return{document:n,clip:yg(e)}}function pt(t,{document:n}){return Nn(qr(t).call(n.documentElement))}var ps=0,gs;function Z6(){let t=ps;return ps=0,gs=void 0,t}function ae(t){t!==gs&&(gs=t,console.warn(t),++ps)}var Lg=Math.PI,qn=2*Lg,Vf=.618;function K6({projection:t,inset:n=0,insetTop:e=n,insetRight:r=n,insetBottom:i=n,insetLeft:o=n}={},a){if(t==null)return;if(typeof t.stream=="function")return Q6(t);let u,c,f="frame";if(ue(t)){let y;if({type:t,domain:c,inset:y,insetTop:e=y!==void 0?y:e,insetRight:r=y!==void 0?y:r,insetBottom:i=y!==void 0?y:i,insetLeft:o=y!==void 0?y:o,clip:f=f,...u}=t,t==null)return}typeof t!="function"&&({type:t}=ms(t));let{width:s,height:d,marginLeft:l,marginRight:h,marginTop:p,marginBottom:m}=a,v=s-l-h-o-r,x=d-p-m-e-i;if(t=t?.({width:v,height:x,clip:f,...u}),t==null)return;f=J6(f,l,p,s-h,d-m);let w=l+o,M=p+e,g,b=1;if(c!=null){let[[y,_],[$,S]]=No(t).bounds(c);b=Math.min(v/($-y),x/(S-_)),b>0?(w-=(b*(y+$)-v)/2,M-=(b*(_+S)-x)/2,g=n5(b,w,M)):ae("Warning: the projection could not be fit to the specified domain; using the default scale.")}return g??=Dg(w,M),{stream(y){return t.stream(g.stream(f(y)))},apply(y){let _=null;return this.stream({point:(...$)=>_=$}).point(...y),_},...t.invert&&{invert(y){return t.invert(g.invert(y))}}}}function Q6(t){return typeof t=="function"?{stream:n=>t.stream(n),apply:n=>t(n),...t.invert&&{invert:n=>t.invert(n)}}:t}function ms(t){switch(`${t}`.toLowerCase()){case"albers-usa":return cn(Gh,.7463,.4673);case"albers":return ra(Yu,.7463,.4673);case"azimuthal-equal-area":return cn(Vh,4,4);case"azimuthal-equidistant":return cn(Zh,qn,qn);case"conic-conformal":return ra(Jh,qn,qn);case"conic-equal-area":return ra(ii,6.1702,2.9781);case"conic-equidistant":return ra(n0,7.312,3.6282);case"equal-earth":return cn(r0,5.4133,2.6347);case"equirectangular":return cn(t0,qn,Lg);case"gnomonic":return cn(o0,3.4641,3.4641);case"identity":return{type:Pg};case"reflect-y":return{type:t5};case"mercator":return cn(Kh,qn,qn);case"orthographic":return cn(u0,2,2);case"stereographic":return cn(f0,2,2);case"transverse-mercator":return cn(l0,qn,qn);default:throw new Error(`unknown projection type: ${t}`)}}function J6(t,n,e,r,i){if(t===!1||t==null||typeof t=="number")return o=>o;if(t===!0&&(t="frame"),`${t}`.toLowerCase()==="frame")return Fu(n,e,r,i);throw new Error(`unknown projection clip type: ${t}`)}function cn(t,n,e){return{type:({width:r,height:i,rotate:o,precision:a=.15,clip:u})=>{let c=t();return a!=null&&c.precision?.(a),o!=null&&c.rotate?.(o),typeof u=="number"&&c.clipAngle?.(u),r!=null&&(c.scale(Math.min(r/n,i/e)),c.translate([r/2,i/2])),c},aspectRatio:e/n}}function ra(t,n,e){let{type:r,aspectRatio:i}=cn(t,n,e);return{type:o=>{let{parallels:a,domain:u,width:c,height:f}=o,s=r(o);return a!=null&&(s.parallels(a),u===void 0&&c!=null&&s.fitSize([c,f],{type:"Sphere"})),s},aspectRatio:i}}var Pg=Hn({stream:t=>t,invert:t=>t}),t5=Hn({...oi({point(t,n){this.stream.point(t,-n)}}),invert:([t,n])=>[t,-n]});function Dg(t,n){return t===0&&n===0?Pg():{...oi({point(e,r){this.stream.point(e+t,r+n)}}),invert:([e,r])=>[e-t,r-n]}}function n5(t,n,e){return t===1?Dg(n,e):{...oi({point(r,i){this.stream.point(r*t+n,i*t+e)}}),invert:([r,i])=>[(r-n)/t,(i-e)/t]}}function e5(t,n,e,r){let i=e[t],o=e[n],a=i.length,u=e[t]=new Float64Array(a).fill(NaN),c=e[n]=new Float64Array(a).fill(NaN),f,s=r.stream({point(d,l){u[f]=d,c[f]=l}});for(f=0;f<a;++f)s.point(i[f],o[f])}function r5({projection:t}={}){return t==null?!1:typeof t.stream=="function"?!0:(ue(t)&&(t=t.type),t!=null)}function i5(t){if(typeof t?.stream=="function")return Vf;if(ue(t)){let n,e;if({domain:n,type:t,...e}=t,n!=null&&t!=null){let r=typeof t=="string"?ms(t).type:t,[[i,o],[a,u]]=No(r({...e,width:100,height:100})).bounds(n),c=(u-o)/(a-i);return c&&isFinite(c)?c<.2?.2:c>5?5:c:Vf}}if(t!=null){if(typeof t!="function"){let{aspectRatio:n}=ms(t);if(n)return n}return Vf}}function o5(t){let n=[],e=[],r={scale:"x",value:n},i={scale:"y",value:e},o={point(a,u){n.push(a),e.push(u)},lineStart(){},lineEnd(){},polygonStart(){},polygonEnd(){},sphere(){}};for(let a of t.value)Jn(a,o);return[r,i]}function a5({x:t,y:n}){if(t||n)return t??=e=>e,n??=e=>e,oi({point(e,r){this.stream.point(t(e),n(r))}})}var Ig=new Map([["accent",Z0],["category10",j0],["dark2",K0],["observable10",Q0],["paired",J0],["pastel1",t1],["pastel2",n1],["set1",e1],["set2",r1],["set3",i1],["tableau10",o1]]);function u5(t){return t!=null&&Ig.has(`${t}`.toLowerCase())}var ap=new Map([...Ig,["brbg",Yn(mc,yc)],["prgn",Yn(bc,wc)],["piyg",Yn(vc,xc)],["puor",Yn(_c,Mc)],["rdbu",Yn(Go,gi)],["rdgy",Yn($c,Sc)],["rdylbu",Yn(Ho,mi)],["rdylgn",Yn(Ac,Tc)],["spectral",Yn(kc,Cc)],["burd",up(Go,gi)],["buylrd",up(Ho,mi)],["blues",_t(tf,nf)],["greens",_t(ef,rf)],["greys",_t(of,af)],["oranges",_t(lf,df)],["purples",_t(uf,cf)],["reds",_t(ff,sf)],["turbo",Un(wf)],["viridis",Un(vf)],["magma",Un(xf)],["inferno",Un(_f)],["plasma",Un(Mf)],["cividis",Un(hf)],["cubehelix",Un(pf)],["warm",Un(gf)],["cool",Un(mf)],["bugn",_t(Ec,Nc)],["bupu",_t(Rc,Lc)],["gnbu",_t(Pc,Dc)],["orrd",_t(Ic,Oc)],["pubu",_t(Bc,qc)],["pubugn",_t(Fc,zc)],["purd",_t(Yc,Uc)],["rdpu",_t(Wc,Gc)],["ylgn",_t(Vc,jc)],["ylgnbu",_t(Hc,Xc)],["ylorbr",_t(Zc,Kc)],["ylorrd",_t(Qc,Jc)],["rainbow",cp(yf)],["sinebow",cp(bf)]]);function _t(t,n){return({length:e})=>e===1?[t[3][1]]:e===2?[t[3][1],t[3][2]]:(e=Math.max(3,Math.floor(e)),e>9?Gt(n,e):t[e])}function Yn(t,n){return({length:e})=>e===2?[t[3][0],t[3][2]]:(e=Math.max(3,Math.floor(e)),e>11?Gt(n,e):t[e])}function up(t,n){return({length:e})=>e===2?[t[3][2],t[3][0]]:(e=Math.max(3,Math.floor(e)),e>11?Gt(r=>n(1-r),e):t[e].slice().reverse())}function Un(t){return({length:n})=>Gt(t,Math.max(2,Math.floor(n)))}function cp(t){return({length:n})=>Gt(t,Math.floor(n)+1).slice(0,-1)}function Og(t){let n=`${t}`.toLowerCase();if(!ap.has(n))throw new Error(`unknown ordinal scheme: ${n}`);return ap.get(n)}function Na(t,n){let e=Og(t),r=typeof e=="function"?e({length:n}):e;return r.length!==n?r.slice(0,n):r}function c5(t,n="greys"){let e=new Set,[r,i]=Na(n,2);for(let o of t)if(o!=null)if(o===!0)e.add(i);else if(o===!1)e.add(r);else return;return[...e]}var fp=new Map([["brbg",yc],["prgn",wc],["piyg",xc],["puor",Mc],["rdbu",gi],["rdgy",Sc],["rdylbu",mi],["rdylgn",Tc],["spectral",Cc],["burd",t=>gi(1-t)],["buylrd",t=>mi(1-t)],["blues",nf],["greens",rf],["greys",af],["purples",cf],["reds",sf],["oranges",df],["turbo",wf],["viridis",vf],["magma",xf],["inferno",_f],["plasma",Mf],["cividis",hf],["cubehelix",pf],["warm",gf],["cool",mf],["bugn",Nc],["bupu",Lc],["gnbu",Dc],["orrd",Oc],["pubugn",zc],["pubu",qc],["purd",Uc],["rdpu",Gc],["ylgnbu",Xc],["ylgn",jc],["ylorbr",Kc],["ylorrd",Jc],["rainbow",yf],["sinebow",bf]]);function tl(t){let n=`${t}`.toLowerCase();if(!fp.has(n))throw new Error(`unknown quantitative scheme: ${n}`);return fp.get(n)}var f5=new Set(["brbg","prgn","piyg","puor","rdbu","rdgy","rdylbu","rdylgn","spectral","burd","buylrd"]);function s5(t){return t!=null&&f5.has(`${t}`.toLowerCase())}var Fg=t=>n=>t(1-n),jf=[0,1],sp=new Map([["number",Mt],["rgb",er],["hsl",Wd],["hcl",Xd],["lab",Gd]]);function zg(t){let n=`${t}`.toLowerCase();if(!sp.has(n))throw new Error(`unknown interpolator: ${n}`);return sp.get(n)}function Oi(t,n,e,{type:r,nice:i,clamp:o,zero:a,domain:u=qg(t,e),unknown:c,round:f,scheme:s,interval:d,range:l=st.get(t)===Pi?x5(e,u):st.get(t)===Di?_5(e,u):st.get(t)===kr?jf:void 0,interpolate:h=st.get(t)===jn?s==null&&l!==void 0?er:tl(s!==void 0?s:r==="cyclical"?"rainbow":"turbo"):f?Gr:Mt,reverse:p}){if(u=lp(u),d=Tr(d,r),(r==="cyclical"||r==="sequential")&&(r="linear"),typeof h!="function"&&(h=zg(h)),p=!!p,l!==void 0){let m=u.length,v=(l=lp(l)).length;if(m!==v){if(h.length===1)throw new Error("invalid piecewise interpolator");h=ir(h,l),l=void 0}}if(h.length===1?(p&&(h=Fg(h),p=!1),l===void 0&&(l=Float64Array.from(u,(m,v)=>v/(u.length-1)),l.length===2&&(l=jf)),n.interpolate((l===jf?Hn:el)(h))):n.interpolate(h),a){let[m,v]=Ut(u);(m>0||v<0)&&(u=_i(u),(vr(u)||1)===Math.sign(m)?u[0]=0:u[u.length-1]=0)}return p&&(u=Br(u)),n.domain(u).unknown(c),i&&(n.nice(l5(i,r)),u=n.domain()),l!==void 0&&n.range(l),o&&n.clamp(o),{type:r,domain:u,range:l,scale:n,interpolate:h,interval:d}}function lp(t){return t=Fe(t),t.length>=2?t:[t[0],t[0]]}function l5(t,n){return t===!0?void 0:typeof t=="number"?t:a6(t,n)}function d5(t,n,e){return Oi(t,Bo(),n,e)}function h5(t,n,e){return Bg(t,n,{...e,exponent:.5})}function Bg(t,n,{exponent:e=1,...r}){return Oi(t,cc().exponent(e),n,{...r,type:"pow"})}function p5(t,n,{base:e=10,domain:r=M5(n),...i}){return Oi(t,ac().base(e),n,{...i,domain:r})}function g5(t,n,{constant:e=1,...r}){return Oi(t,uc().constant(e),n,r)}function m5(t,n,{range:e,quantiles:r=e===void 0?5:(e=[...e]).length,n:i=r,scheme:o="rdylbu",domain:a=$5(n),unknown:u,interpolate:c,reverse:f}){return e===void 0&&(e=c!==void 0?Gt(c,i):st.get(t)===jn?Na(o,i):void 0),a.length>0&&(a=fc(a,e===void 0?{length:i}:e).quantiles()),nl(t,n,{domain:a,range:e,reverse:f,unknown:u})}function y5(t,n,{range:e,n:r=e===void 0?5:(e=[...e]).length,scheme:i="rdylbu",domain:o=qg(t,n),unknown:a,interpolate:u,reverse:c}){let[f,s]=Ut(o),d;return e===void 0?(d=pe(f,s,r),d[0]<=f&&d.splice(0,1),d[d.length-1]>=s&&d.pop(),r=d.length+1,e=u!==void 0?Gt(u,r):st.get(t)===jn?Na(i,r):void 0):(d=Gt(Mt(f,s),r+1).slice(1,-1),f instanceof Date&&(d=d.map(l=>new Date(l)))),vr(Fe(o))<0&&d.reverse(),nl(t,n,{domain:d,range:e,reverse:c,unknown:a})}function nl(t,n,{domain:e=[0],unknown:r,scheme:i="rdylbu",interpolate:o,range:a=o!==void 0?Gt(o,e.length+1):st.get(t)===jn?Na(i,e.length+1):void 0,reverse:u}){e=Fe(e);let c=vr(e);if(!isNaN(c)&&!b5(e,c))throw new Error(`the ${t} scale has a non-monotonic domain`);return u&&(a=Br(a)),{type:"threshold",scale:sc(c<0?Br(e):e,a===void 0?[]:a).unknown(r),domain:e,range:a}}function b5(t,n){for(let e=1,r=t.length,i=t[0];e<r;++e){let o=Xe(i,i=t[e]);if(o!==0&&o!==n)return!1}return!0}function w5(t){return{type:"identity",scale:w6(st.get(t))?oc():n=>n}}function Ai(t,n=Vp){return t.length?[an(t,({value:e})=>e===void 0?e:an(e,n)),Yt(t,({value:e})=>e===void 0?e:Yt(e,n))]:[0,1]}function qg(t,n){let e=st.get(t);return(e===Pi||e===kr||e===Di?v5:Ai)(n)}function v5(t){return[0,t.length?Yt(t,({value:n})=>n===void 0?n:Yt(n,Vp)):1]}function x5(t,n){let e=t.find(({radius:a})=>a!==void 0);if(e!==void 0)return[0,e.radius];let r=Zn(t,.5,({value:a})=>a===void 0?NaN:Zn(a,.25,Ma)),i=n.map(a=>3*Math.sqrt(a/r)),o=30/Yt(i);return o<1?i.map(a=>a*o):i}function _5(t,n){let e=zr(t,({value:o})=>o===void 0?NaN:zr(o,Math.abs)),r=n.map(o=>12*o/e),i=60/Yt(r);return i<1?r.map(o=>o*i):r}function M5(t){for(let{value:n}of t)if(n!==void 0)for(let e of n){if(e>0)return Ai(t,Ma);if(e<0)return Ai(t,Ps)}return[1,10]}function $5(t){let n=[];for(let{value:e}of t)if(e!==void 0)for(let r of e)n.push(r);return n}function el(t){return(n,e)=>r=>t(n+r*(e-n))}function Ra(t,n,e,r,{type:i,nice:o,clamp:a,domain:u=Ai(r),unknown:c,pivot:f=0,scheme:s,range:d,symmetric:l=!0,interpolate:h=st.get(t)===jn?s==null&&d!==void 0?er:tl(s!==void 0?s:"rdbu"):Mt,reverse:p}){f=+f,u=Fe(u);let[m,v]=u;if(u.length>2&&ae(`Warning: the diverging ${t} scale domain contains extra elements.`),Xe(m,v)<0&&([m,v]=[v,m],p=!p),m=Math.min(m,f),v=Math.max(v,f),typeof h!="function"&&(h=zg(h)),d!==void 0&&(h=h.length===1?el(h)(...d):ir(h,d)),p&&(h=Fg(h)),l){let x=e.apply(f),w=x-e.apply(m),M=e.apply(v)-x;w<M?m=e.invert(x-M):w>M&&(v=e.invert(x+w))}return n.domain([m,f,v]).unknown(c).interpolator(h),a&&n.clamp(a),o&&n.nice(o),{type:i,domain:[m,v],pivot:f,interpolate:h,scale:n}}function S5(t,n,e){return Ra(t,dc(),C5,n,e)}function A5(t,n,e){return Yg(t,n,{...e,exponent:.5})}function Yg(t,n,{exponent:e=1,...r}){return Ra(t,gc().exponent(e=+e),R5(e),n,{...r,type:"diverging-pow"})}function T5(t,n,{base:e=10,pivot:r=1,domain:i=Ai(n,r<0?Ps:Ma),...o}){return Ra(t,hc().base(e=+e),E5,n,{domain:i,pivot:r,...o})}function k5(t,n,{constant:e=1,...r}){return Ra(t,pc().constant(e=+e),L5(e),n,r)}var C5={apply(t){return t},invert(t){return t}},E5={apply:Math.log,invert:Math.exp},N5={apply(t){return Math.sign(t)*Math.sqrt(Math.abs(t))},invert(t){return Math.sign(t)*(t*t)}};function R5(t){return t===.5?N5:{apply(n){return Math.sign(n)*Math.pow(Math.abs(n),t)},invert(n){return Math.sign(n)*Math.pow(Math.abs(n),1/t)}}}function L5(t){return{apply(n){return Math.sign(n)*Math.log1p(Math.abs(n/t))},invert(n){return Math.sign(n)*Math.expm1(Math.abs(n))*t}}}function Ug(t,n,e,r){return Oi(t,n,e,r)}function P5(t,n,e){return Ug(t,X0(),n,e)}function D5(t,n,e){return Ug(t,V0(),n,e)}var Fi=Symbol("ordinal");function Wg(t,n,e,{type:r,interval:i,domain:o,range:a,reverse:u,hint:c}){return i=Tr(i,r),o===void 0&&(o=Hg(e,i,t)),(r==="categorical"||r===Fi)&&(r="ordinal"),u&&(o=Br(o)),o=n.domain(o).domain(),a!==void 0&&(typeof a=="function"&&(a=a(o)),n.range(a)),{type:r,domain:o,range:a,scale:n,hint:c,interval:i}}function I5(t,n,{type:e,interval:r,domain:i,range:o,scheme:a,unknown:u,...c}){r=Tr(r,e),i===void 0&&(i=Hg(n,r,t));let f;if(st.get(t)===Ca)f=z5(n),o=o===void 0?B5(f):gt(o,Hs);else if(st.get(t)===jn){if(o===void 0&&(e==="ordinal"||e===Fi)&&(o=c5(i,a),o!==void 0&&(a=void 0)),a===void 0&&o===void 0&&(a=e==="ordinal"?"turbo":"observable10"),a!==void 0)if(o!==void 0){let s=tl(a),d=o[0],l=o[1]-o[0];o=({length:h})=>Gt(p=>s(d+l*p),h)}else o=Og(a)}else st.get(t)===kr&&o===void 0&&(o=({length:s})=>Gt(d=>d,s));if(u===Io)throw new Error(`implicit unknown on ${t} scale is not supported`);return Wg(t,Fo().unknown(u),n,{...c,type:e,domain:i,range:o,hint:f})}function O5(t,n,{align:e=.5,padding:r=.5,...i}){return Gg(q0().align(e).padding(r),n,i,t)}function F5(t,n,{align:e=.5,padding:r=.1,paddingInner:i=r,paddingOuter:o=t==="fx"||t==="fy"?0:r,...a}){return Gg(di().align(e).paddingInner(i).paddingOuter(o),n,a,t)}function Gg(t,n,e,r){let{round:i}=e;return i!==void 0&&t.round(i=!!i),t=Wg(r,t,n,e),t.round=i,t}function Hg(t,n,e){let r=new de;for(let{value:i,domain:o}of t){if(o!==void 0)return o();if(i!==void 0)for(let a of i)r.add(a)}if(e==="opacity"&&r.add(0),n!==void 0){let[i,o]=Ut(r).map(n.floor,n);return n.range(i,n.offset(o))}if(r.size>1e4&&st.get(e)===Sn)throw new Error(`implicit ordinal domain of ${e} scale has more than 10,000 values`);return Ir(r,fn)}function dp(t,n){let e;for(let{hint:r}of t){let i=r?.[n];if(i!==void 0){if(e===void 0)e=i;else if(e!==i)return}}return e}function z5(t){return{fill:dp(t,"fill"),stroke:dp(t,"stroke")}}function B5(t){return Bt(t.fill)?M1:_1}function ys(t,{label:n,inset:e=0,insetTop:r=e,insetRight:i=e,insetBottom:o=e,insetLeft:a=e,round:u,nice:c,clamp:f,zero:s,align:d,padding:l,projection:h,facet:{label:p=n}={},...m}={}){let v={};for(let[x,w]of t){let M=m[x],g=G5(x,w,{round:st.get(x)===Sn?u:void 0,nice:c,clamp:f,zero:s,align:d,padding:l,projection:h,...M});if(g){let{label:b=x==="fx"||x==="fy"?p:n,percent:y,transform:_,inset:$,insetTop:S=$!==void 0?$:x==="y"?r:0,insetRight:C=$!==void 0?$:x==="x"?i:0,insetBottom:A=$!==void 0?$:x==="y"?o:0,insetLeft:k=$!==void 0?$:x==="x"?a:0}=M||{};if(_==null)_=void 0;else if(typeof _!="function")throw new Error("invalid scale transform; not a function");g.percent=!!y,g.label=b===void 0?Y5(w,g):b,g.transform=_,x==="x"||x==="fx"?(g.insetLeft=+k,g.insetRight=+C):(x==="y"||x==="fy")&&(g.insetTop=+S,g.insetBottom=+A),v[x]=g}}return v}function hp(t){let n={},e={scales:n};for(let[r,i]of Object.entries(t)){let{scale:o,type:a,interval:u,label:c}=i;n[r]=Z5(i),e[r]=o,o.type=a,u!=null&&(o.interval=u),c!=null&&(o.label=c)}return e}function q5(t,n){let{x:e,y:r,fx:i,fy:o}=t,a=i||o?rl(n):n;i&&pp(i,a),o&&gp(o,a);let u=i||o?Xg(t,n):n;e&&pp(e,u),r&&gp(r,u)}function Y5(t=[],n){let e;for(let{label:r}of t)if(r!==void 0){if(e===void 0)e=r;else if(e!==r)return}if(e!==void 0)return!qe(n)&&n.percent&&(e=`${e} (%)`),{inferred:!0,toString:()=>e}}function U5(t){return Math.sign(vr(t.domain()))*Math.sign(vr(t.range()))}function rl(t){let{marginTop:n,marginRight:e,marginBottom:r,marginLeft:i,width:o,height:a,facet:{marginTop:u,marginRight:c,marginBottom:f,marginLeft:s}}=t;return{marginTop:Math.max(n,u),marginRight:Math.max(e,c),marginBottom:Math.max(r,f),marginLeft:Math.max(i,s),width:o,height:a}}function Xg({fx:t,fy:n},e){let{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:u,height:c}=rl(e);return{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:t?t.scale.bandwidth()+a+i:u,height:n?n.scale.bandwidth()+r+o:c,facet:{width:u,height:c}}}function pp(t,n){if(t.range===void 0){let{insetLeft:e,insetRight:r}=t,{width:i,marginLeft:o=0,marginRight:a=0}=n,u=o+e,c=i-a-r;t.range=[u,Math.max(u,c)],qe(t)||(t.range=jg(t)),t.scale.range(t.range)}Vg(t)}function gp(t,n){if(t.range===void 0){let{insetTop:e,insetBottom:r}=t,{height:i,marginTop:o=0,marginBottom:a=0}=n,u=o+e,c=i-a-r;t.range=[Math.max(u,c),u],qe(t)?t.range.reverse():t.range=jg(t),t.scale.range(t.range)}Vg(t)}function Vg(t){t.round===void 0&&X5(t)&&W5(t)<=30&&t.scale.round(!0)}function W5({scale:t}){let n=t.domain().length,[e,r]=t.range(),i=t.paddingInner?t.paddingInner():1,o=t.paddingOuter?t.paddingOuter():t.padding(),a=n-i,u=Math.abs(r-e)/Math.max(1,a+o*2);return(u-Math.floor(u))*a}function jg(t){let n=t.scale.domain().length+Zg(t);if(!(n>2))return t.range;let[e,r]=t.range;return Array.from({length:n},(i,o)=>e+o/(n-1)*(r-e))}function G5(t,n=[],e={}){let r=H5(t,n,e);if(e.type===void 0&&e.domain===void 0&&e.range===void 0&&e.interval==null&&t!=="fx"&&t!=="fy"&&qe({type:r})){let i=n.map(({value:o})=>o).filter(o=>o!==void 0);i.some(qt)?ae(`Warning: some data associated with the ${t} scale are dates. Dates are typically associated with a "utc" or "time" scale rather than a "${gr(r)}" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can specify the interval of the ${t} scale (e.g., d3.utcDay), or you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`):i.some(f6)?ae(`Warning: some data associated with the ${t} scale are strings that appear to be dates (e.g., YYYY-MM-DD). If these strings represent dates, you should parse them to Date objects. Dates are typically associated with a "utc" or "time" scale rather than a "${gr(r)}" scale. If you are using a bar mark, you probably want a rect mark with the interval option instead; if you are using a group transform, you probably want a bin transform instead. If you want to treat this data as ordinal, you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`):i.some(s6)&&ae(`Warning: some data associated with the ${t} scale are strings that appear to be numbers. If these strings represent numbers, you should parse or coerce them to numbers. Numbers are typically associated with a "linear" scale rather than a "${gr(r)}" scale. If you want to treat this data as ordinal, you can specify the interval of the ${t} scale (e.g., 1 for integers), or you can suppress this warning by setting the type of the ${t} scale to "${gr(r)}".`)}switch(e.type=r,r){case"diverging":case"diverging-sqrt":case"diverging-pow":case"diverging-log":case"diverging-symlog":case"cyclical":case"sequential":case"linear":case"sqrt":case"threshold":case"quantile":case"pow":case"log":case"symlog":e=ia(n,e,$n);break;case"identity":switch(st.get(t)){case Sn:e=ia(n,e,$n);break;case Ca:e=ia(n,e,V5);break}break;case"utc":case"time":e=ia(n,e,og);break}switch(r){case"diverging":return S5(t,n,e);case"diverging-sqrt":return A5(t,n,e);case"diverging-pow":return Yg(t,n,e);case"diverging-log":return T5(t,n,e);case"diverging-symlog":return k5(t,n,e);case"categorical":case"ordinal":case Fi:return I5(t,n,e);case"cyclical":case"sequential":case"linear":return d5(t,n,e);case"sqrt":return h5(t,n,e);case"threshold":return nl(t,n,e);case"quantile":return m5(t,n,e);case"quantize":return y5(t,n,e);case"pow":return Bg(t,n,e);case"log":return p5(t,n,e);case"symlog":return g5(t,n,e);case"utc":return D5(t,n,e);case"time":return P5(t,n,e);case"point":return O5(t,n,e);case"band":return F5(t,n,e);case"identity":return w5(t);case void 0:return;default:throw new Error(`unknown scale type: ${r}`)}}function gr(t){return typeof t=="symbol"?t.description:t}function mp(t){return typeof t=="string"?`${t}`.toLowerCase():t}var yp={toString:()=>"projection"};function H5(t,n,{type:e,domain:r,range:i,scheme:o,pivot:a,projection:u}){if(e=mp(e),t==="fx"||t==="fy")return"band";(t==="x"||t==="y")&&u!=null&&(e=yp);for(let s of n){let d=mp(s.type);if(d!==void 0){if(e===void 0)e=d;else if(e!==d)throw new Error(`scale incompatible with channel: ${e} !== ${d}`)}}if(e===yp)return;if(e!==void 0)return e;if(r===void 0&&!n.some(({value:s})=>s!==void 0))return;let c=st.get(t);if(c===Pi)return"sqrt";if(c===kr||c===Di)return"linear";if(c===Ca)return"ordinal";let f=(r??i)?.length;if(f<2||f>2)return Zf(c);if(r!==void 0){if(np(r))return Zf(c);if(qt(r))return"utc"}else{let s=n.map(({value:d})=>d).filter(d=>d!==void 0);if(s.some(np))return Zf(c);if(s.some(qt))return"utc"}if(c===jn){if(a!=null||s5(o))return"diverging";if(u5(o))return"categorical"}return"linear"}function Zf(t){switch(t){case Sn:return"point";case jn:return Fi;default:return"ordinal"}}function qe({type:t}){return t==="ordinal"||t==="point"||t==="band"||t===Fi}function Zg({type:t}){return t==="threshold"}function X5({type:t}){return t==="point"||t==="band"}function kn(t){if(t===void 0)return!0;let n=t.domain(),e=t(n[0]);for(let r=1,i=n.length;r<i;++r)if(t(n[r])-e)return!1;return!0}function ia(t,{domain:n,...e},r){for(let i of t)i.value!==void 0&&(n===void 0&&(n=i.value?.domain),i.value=r(i.value));return{domain:n===void 0?n:r(n),...e}}function V5(t){return gt(t,Hs)}function j5(t,n){return e=>{if(!st.has(e=`${e}`))throw new Error(`unknown scale: ${e}`);return(e==="projection"?n:t)[e]}}function Z5({scale:t,type:n,domain:e,range:r,interpolate:i,interval:o,transform:a,percent:u,pivot:c}){if(n==="identity")return{type:"identity",apply:s=>s,invert:s=>s};let f=t.unknown?t.unknown():void 0;return{type:n,domain:_i(e),...r!==void 0&&{range:_i(r)},...a!==void 0&&{transform:a},...u&&{percent:u},...f!==void 0&&{unknown:f},...o!==void 0&&{interval:o},...i!==void 0&&{interpolate:i},...t.clamp&&{clamp:t.clamp()},...c!==void 0&&{pivot:c,symmetric:!1},...t.base&&{base:t.base()},...t.exponent&&{exponent:t.exponent()},...t.constant&&{constant:t.constant()},...t.align&&{align:t.align(),round:t.round()},...t.padding&&(t.paddingInner?{paddingInner:t.paddingInner(),paddingOuter:t.paddingOuter()}:{padding:t.padding()}),...t.bandwidth&&{bandwidth:t.bandwidth(),step:t.step()},apply:s=>t(s),...t.invert&&{invert:s=>t.invert(s)}}}var bs=Symbol("unset");function il(t){return(t.length===1?K5:Q5)(t)}function K5(t){let n,e=bs;return r=>(Object.is(e,r)||(e=r,n=t(r)),n)}function Q5(t){let n,e;return(...r)=>((e?.length!==r.length||e.some((i,o)=>!Object.is(i,r[o])))&&(e=r,n=t(...r)),n)}var J5=il(t=>new Intl.NumberFormat(t)),z_=il((t,n)=>new Intl.DateTimeFormat(t,{timeZone:"UTC",...n&&{month:n}})),B_=il((t,n)=>new Intl.DateTimeFormat(t,{timeZone:"UTC",...n&&{weekday:n}}));function t3(t="en-US"){let n=J5(t);return e=>e!=null&&!isNaN(e)?n.format(e):void 0}function n3(t){return Ux(t,"Invalid Date")}function e3(t="en-US"){let n=t3(t);return e=>(e instanceof Date?n3:typeof e=="number"?n:Tt)(e)}var $r=e3(),St=typeof window<"u"&&!(window.devicePixelRatio>1)?.5:0,r3=0,i3=0;function Kg(){return`plot-clip-${++r3}`}function o3(){return`plot-filter-${++i3}`}function a3(t,{title:n,href:e,ariaLabel:r,ariaDescription:i,ariaHidden:o,target:a,fill:u,fillOpacity:c,stroke:f,strokeWidth:s,strokeOpacity:d,strokeLinejoin:l,strokeLinecap:h,strokeMiterlimit:p,strokeDasharray:m,strokeDashoffset:v,opacity:x,mixBlendMode:w,imageFilter:M,paintOrder:g,pointerEvents:b,shapeRendering:y,channels:_},{ariaLabel:$,fill:S="currentColor",fillOpacity:C,stroke:A="none",strokeOpacity:k,strokeWidth:D,strokeLinecap:P,strokeLinejoin:T,strokeMiterlimit:O,paintOrder:R}){S===null&&(u=null,c=null),A===null&&(f=null,d=null),Bt(S)?!Bt(A)&&(!Bt(u)||_?.fill)&&(A="none"):Bt(A)&&(!Bt(f)||_?.stroke)&&(S="none");let[U,L]=sn(u,S),[I,q]=Rt(c,C),[W,z]=sn(f,A),[K,et]=Rt(d,k),[at,B]=Rt(x);$i(z)||(s===void 0&&(s=D),h===void 0&&(h=P),l===void 0&&(l=T),p===void 0&&!g6(l)&&(p=O),!$i(L)&&g===void 0&&(g=R));let[G,N]=Rt(s);return S!==null&&(t.fill=$t(L,"currentColor"),t.fillOpacity=bi(q,1)),A!==null&&(t.stroke=$t(z,"none"),t.strokeWidth=bi(N,1),t.strokeOpacity=bi(et,1),t.strokeLinejoin=$t(l,"miter"),t.strokeLinecap=$t(h,"butt"),t.strokeMiterlimit=bi(p,4),t.strokeDasharray=$t(m,"none"),t.strokeDashoffset=$t(v,"0")),t.target=Tt(a),t.ariaLabel=Tt($),t.ariaDescription=Tt(i),t.ariaHidden=Tt(o),t.opacity=bi(B,1),t.mixBlendMode=$t(w,"normal"),t.imageFilter=$t(M,"none"),t.paintOrder=$t(g,"normal"),t.pointerEvents=$t(b,"auto"),t.shapeRendering=$t(y,"auto"),{title:{value:n,optional:!0,filter:null},href:{value:e,optional:!0,filter:null},ariaLabel:{value:r,optional:!0,filter:null},fill:{value:U,scale:"auto",optional:!0},fillOpacity:{value:I,scale:"auto",optional:!0},stroke:{value:W,scale:"auto",optional:!0},strokeOpacity:{value:K,scale:"auto",optional:!0},strokeWidth:{value:G,optional:!0},opacity:{value:at,scale:"auto",optional:!0}}}function u3(t,n){n&&t.filter(e=>Ls(n[e])).append("title").call(f3,n)}function c3(t,n){n&&t.filter(([e])=>Ls(n[e])).append("title").call(s3,n)}function f3(t,n){n&&t.text(e=>$r(n[e]))}function s3(t,n){n&&t.text(([e])=>$r(n[e]))}function ln(t,{target:n,tip:e},{ariaLabel:r,title:i,fill:o,fillOpacity:a,stroke:u,strokeOpacity:c,strokeWidth:f,opacity:s,href:d}){r&&X(t,"aria-label",l=>r[l]),o&&X(t,"fill",l=>o[l]),a&&X(t,"fill-opacity",l=>a[l]),u&&X(t,"stroke",l=>u[l]),c&&X(t,"stroke-opacity",l=>c[l]),f&&X(t,"stroke-width",l=>f[l]),s&&X(t,"opacity",l=>s[l]),d&&Qg(t,l=>d[l],n),e||u3(t,i)}function ol(t,{target:n,tip:e},{ariaLabel:r,title:i,fill:o,fillOpacity:a,stroke:u,strokeOpacity:c,strokeWidth:f,opacity:s,href:d}){r&&X(t,"aria-label",([l])=>r[l]),o&&X(t,"fill",([l])=>o[l]),a&&X(t,"fill-opacity",([l])=>a[l]),u&&X(t,"stroke",([l])=>u[l]),c&&X(t,"stroke-opacity",([l])=>c[l]),f&&X(t,"stroke-width",([l])=>f[l]),s&&X(t,"opacity",([l])=>s[l]),d&&Qg(t,([l])=>d[l],n),e||c3(t,i)}function l3({ariaLabel:t,title:n,fill:e,fillOpacity:r,stroke:i,strokeOpacity:o,strokeWidth:a,opacity:u,href:c},{tip:f}){return[t,f?void 0:n,e,r,i,o,a,u,c].filter(s=>s!==void 0)}function d3(t,n,e){let r=Or(t,i=>n[i]);return e===void 0&&r.size>1+t.length>>1&&ae("Warning: the implicit z channel has high cardinality. This may occur when the fill or stroke channel is associated with quantitative data rather than ordinal or categorical data. You can suppress this warning by setting the z option explicitly; if this data represents a single series, set z to null."),r.values()}function*al(t,n,e,r){let{z:i}=e,{z:o}=r,a=l3(r,e),u=[...n,...a];for(let c of o?d3(t,o,i):[t]){let f,s;t:for(let d of c){for(let l of u)if(!An(l[d])){s&&s.push(-1);continue t}if(f===void 0){s&&(yield s),f=a.map(l=>Xn(l[d])),s=[d];continue}s.push(d);for(let l=0;l<a.length;++l)if(Xn(a[l][d])!==f[l]){yield s,f=a.map(p=>Xn(p[d])),s=[d];continue t}}s&&(yield s)}}function h3(t,n,e,r){let i,{clip:o=r.clip}=n;o==="frame"?(t=pt("svg:g",r).each(function(){this.appendChild(t.node()),t.node=()=>this}),i=g3(r,e)):o&&(i=y3(o,r)),X(t,"aria-label",n.ariaLabel),X(t,"aria-description",n.ariaDescription),X(t,"aria-hidden",n.ariaHidden),X(t,"clip-path",i)}function p3(t){let n=new WeakMap;return(e,r)=>{let i=n.get(e);if(!i){let o=Kg();Nn(e.ownerSVGElement).append("clipPath").attr("id",o).call(t,e,r),n.set(e,i=`url(#${o})`)}return i}}var g3=p3((t,n,e)=>{let{width:r,height:i,marginLeft:o,marginRight:a,marginTop:u,marginBottom:c}=e;t.append("rect").attr("x",o).attr("y",u).attr("width",r-a-o).attr("height",i-u-c)}),bp=new WeakMap,m3={type:"Sphere"};function y3(t,n){let e,r;if((e=bp.get(n))||bp.set(n,e=new WeakMap),t.type==="Sphere"&&(t=m3),!(r=e.get(t))){let i=Kg();Nn(n.ownerSVGElement).append("clipPath").attr("id",i).append("path").attr("d",n.path()(t)),e.set(t,r=`url(#${i})`)}return r}function Xt(t,n,e,r){h3(t,n,e,r),X(t,"class",n.className),X(t,"fill",n.fill),X(t,"fill-opacity",n.fillOpacity),X(t,"stroke",n.stroke),X(t,"stroke-width",n.strokeWidth),X(t,"stroke-opacity",n.strokeOpacity),X(t,"stroke-linejoin",n.strokeLinejoin),X(t,"stroke-linecap",n.strokeLinecap),X(t,"stroke-miterlimit",n.strokeMiterlimit),X(t,"stroke-dasharray",n.strokeDasharray),X(t,"stroke-dashoffset",n.strokeDashoffset),X(t,"shape-rendering",n.shapeRendering),X(t,"filter",n.imageFilter),X(t,"paint-order",n.paintOrder);let{pointerEvents:i=r.pointerSticky===!1?"none":void 0}=n;X(t,"pointer-events",i)}function Lt(t,n){b3(t,"mix-blend-mode",n.mixBlendMode),X(t,"opacity",n.opacity)}function Qg(t,n,e){t.each(function(r){let i=n(r);if(i!=null){let o=this.ownerDocument.createElementNS(ge.svg,"a");o.setAttribute("fill","inherit"),o.setAttributeNS(ge.xlink,"href",i),e!=null&&o.setAttribute("target",e),this.parentNode.insertBefore(o,this).appendChild(this)}})}function X(t,n,e){e!=null&&t.attr(n,e)}function b3(t,n,e){e!=null&&t.style(n,e)}function Pt(t,n,{x:e,y:r},i=St,o=St){i+=n.dx,o+=n.dy,e?.bandwidth&&(i+=e.bandwidth()/2),r?.bandwidth&&(o+=r.bandwidth()/2),(i||o)&&t.attr("transform",`translate(${i},${o})`)}function $t(t,n){if((t=Tt(t))!==n)return t}function bi(t,n){if((t=kt(t))!==n)return t}var w3=/^-?([_a-z]|[\240-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])([_a-z0-9-]|[\240-\377]|\\[0-9a-f]{1,6}(\r\n|[ \t\r\n\f])?|\\[^\r\n\f0-9a-f])*$/i;function ul(t){if(t===void 0)return"plot-d6a7b5";if(t=`${t}`,!w3.test(t))throw new Error(`invalid class name: ${t}`);return t}function cl(t,n){if(typeof n=="string")t.property("style",n);else if(n!=null)for(let e of t)Object.assign(e.style,n)}function zi({frameAnchor:t},{width:n,height:e,marginTop:r,marginRight:i,marginBottom:o,marginLeft:a}){return[/left$/.test(t)?a:/right$/.test(t)?n-i:(a+n-i)/2,/^top/.test(t)?r:/^bottom/.test(t)?e-o:(r+e-o)/2]}function v3(t,n,e={}){let r=.5-St,i=.5+St,o=.5+St,a=.5-St;for(let{marginTop:m,marginRight:v,marginBottom:x,marginLeft:w}of n)m>r&&(r=m),v>i&&(i=v),x>o&&(o=x),w>a&&(a=w);let{margin:u,marginTop:c=u!==void 0?u:r,marginRight:f=u!==void 0?u:i,marginBottom:s=u!==void 0?u:o,marginLeft:d=u!==void 0?u:a}=e;c=+c,f=+f,s=+s,d=+d;let{width:l=640,height:h=x3(t,e,{width:l,marginTopDefault:r,marginRightDefault:i,marginBottomDefault:o,marginLeftDefault:a})+Math.max(0,c-r+s-o)}=e;l=+l,h=+h;let p={width:l,height:h,marginTop:c,marginRight:f,marginBottom:s,marginLeft:d};if(t.fx||t.fy){let{margin:m,marginTop:v=m!==void 0?m:c,marginRight:x=m!==void 0?m:f,marginBottom:w=m!==void 0?m:s,marginLeft:M=m!==void 0?m:d}=e.facet??{};v=+v,x=+x,w=+w,M=+M,p.facet={marginTop:v,marginRight:x,marginBottom:w,marginLeft:M}}return p}function x3({x:t,y:n,fy:e,fx:r},{projection:i,aspectRatio:o},{width:a,marginTopDefault:u,marginRightDefault:c,marginBottomDefault:f,marginLeftDefault:s}){let d=e&&e.scale.domain().length||1,l=i5(i);if(l){let p=r?r.scale.domain().length:1,m=(1.1*d-.1)/(1.1*p-.1)*l,v=Math.max(.1,Math.min(10,m));return Math.round((a-s-c)*v+u+f)}let h=n?qe(n)?n.scale.domain().length||1:Math.max(7,17/d):1;if(o!=null){if(o=+o,!(isFinite(o)&&o>0))throw new Error(`invalid aspectRatio: ${o}`);let p=wp("y",n)/(wp("x",t)*o),m=r?r.scale.bandwidth():1,v=e?e.scale.bandwidth():1,x=m*(a-s-c)-t.insetLeft-t.insetRight;return(p*x+n.insetTop+n.insetBottom)/v+u+f}return!!(n||e)*Math.max(1,Math.min(60,h*d))*20+!!r*30+60}function wp(t,n){if(!n)throw new Error(`aspectRatio requires ${t} scale`);let{type:e,domain:r}=n,i;switch(e){case"linear":case"utc":case"time":i=Number;break;case"pow":{let u=n.scale.exponent();i=c=>Math.pow(c,u);break}case"log":i=Math.log;break;case"point":case"band":return r.length;default:throw new Error(`unsupported ${t} scale for aspectRatio: ${e}`)}let[o,a]=Ut(r);return Math.abs(i(a)-i(o))}function _3(t,n){let{fx:e,fy:r}=ys(t,n),i=e?.scale.domain(),o=r?.scale.domain();return i&&o?Fl(i,o).map(([a,u],c)=>({x:a,y:u,i:c})):i?i.map((a,u)=>({x:a,i:u})):o?o.map((a,u)=>({y:a,i:u})):void 0}function M3(t,{x:n,y:e}){return n&&=ws(n),e&&=ws(e),t.filter(n&&e?r=>n.has(r.x)&&e.has(r.y):n?r=>n.has(r.x):r=>e.has(r.y)).sort(n&&e?(r,i)=>n.get(r.x)-n.get(i.x)||e.get(r.y)-e.get(i.y):n?(r,i)=>n.get(r.x)-n.get(i.x):(r,i)=>e.get(r.y)-e.get(i.y))}function fl(t,{fx:n,fy:e}){let r=Vn(t),i=n?.value,o=e?.value;return n&&e?he(r,a=>(a.fx=i[a[0]],a.fy=o[a[0]],a),a=>i[a],a=>o[a]):n?he(r,a=>(a.fx=i[a[0]],a),a=>i[a]):he(r,a=>(a.fy=o[a[0]],a),a=>o[a])}function $3(t,n,{marginTop:e,marginLeft:r}){let i=t?({x:a})=>t(a)-r:()=>0,o=n?({y:a})=>n(a)-e:()=>0;return function(a){this.tagName==="svg"?(this.setAttribute("x",i(a)),this.setAttribute("y",o(a))):this.setAttribute("transform",`translate(${i(a)},${o(a)})`)}}function S3(t){let n=[],e=new Uint32Array(pn(t,r=>r.length));for(let r of t){let i=0;for(let o of t)r!==o&&(e.set(o,i),i+=o.length);n.push(e.slice(0,i))}return n}var A3=new Map([["top",Kf],["right",ts],["bottom",Qf],["left",Jf],["top-left",oa(Kf,Jf)],["top-right",oa(Kf,ts)],["bottom-left",oa(Qf,Jf)],["bottom-right",oa(Qf,ts)],["top-empty",C3],["right-empty",R3],["bottom-empty",E3],["left-empty",N3],["empty",L3]]);function T3(t){if(t==null)return null;let n=A3.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid facet anchor: ${t}`)}var vp=new WeakMap;function ws(t){let n=vp.get(t);return n||vp.set(t,n=new on(gt(t,(e,r)=>[e,r]))),n}function fe(t,n){return ws(t).get(n)}function k3(t,n,e){return n=Xn(n),e=Xn(e),t.find(r=>Object.is(Xn(r.x),n)&&Object.is(Xn(r.y),e))}function La(t,n,e){return k3(t,n,e)?.empty}function Kf(t,{y:n},{y:e}){return n?fe(n,e)===0:!0}function Qf(t,{y:n},{y:e}){return n?fe(n,e)===n.length-1:!0}function Jf(t,{x:n},{x:e}){return n?fe(n,e)===0:!0}function ts(t,{x:n},{x:e}){return n?fe(n,e)===n.length-1:!0}function C3(t,{y:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,r);if(o>0)return La(t,e,n[o-1])}function E3(t,{y:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,r);if(o<n.length-1)return La(t,e,n[o+1])}function N3(t,{x:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,e);if(o>0)return La(t,n[o-1],r)}function R3(t,{x:n},{x:e,y:r,empty:i}){if(i)return!1;if(!n)return;let o=fe(n,e);if(o<n.length-1)return La(t,n[o+1],r)}function L3(t,n,{empty:e}){return e}function oa(t,n){return function(){return t.apply(null,arguments)&&n.apply(null,arguments)}}function ns(t,{channels:{fx:n,fy:e},groups:r}){return n&&e?t.map(({x:i,y:o})=>r.get(i)?.get(o)??[]):n?t.map(({x:i})=>r.get(i)??[]):t.map(({y:i})=>r.get(i)??[])}var Ct=class{constructor(n,e={},r={},i){let{facet:o="auto",facetAnchor:a,fx:u,fy:c,sort:f,dx:s=0,dy:d=0,margin:l=0,marginTop:h=l,marginRight:p=l,marginBottom:m=l,marginLeft:v=l,className:x,clip:w=i?.clip,channels:M,tip:g,pool:b=i?.pool,render:y}=r;if(this.data=n,this.sort=_r(f)?f:null,this.initializer=Mr(r).initializer,this.transform=this.initializer?r.transform:Ii(r).transform,o===null||o===!1?this.facet=null:(this.facet=dn(o===!0?"include":o,"facet",["auto","include","exclude","super"]),this.fx=n===da&&typeof u=="string"?[u]:u,this.fy=n===da&&typeof c=="string"?[c]:c),this.facetAnchor=T3(a),e=mg(e),M!==void 0&&(e={...P3(M),...e}),i!==void 0&&(e={...a3(this,r,i),...e}),this.channels=Object.fromEntries(Object.entries(e).map(([_,$])=>{if(Aa($.value)){let{value:S,label:C=$.label,scale:A=$.scale}=$.value;$={...$,label:C,scale:A,value:S}}if(n===da&&typeof $.value=="string"){let{value:S}=$;$={...$,value:[S]}}return[_,$]}).filter(([_,{value:$,optional:S}])=>{if($!=null)return!0;if(S)return!1;throw new Error(`missing channel value: ${_}`)})),this.dx=+s,this.dy=+d,this.marginTop=+h,this.marginRight=+p,this.marginBottom=+m,this.marginLeft=+v,this.clip=yg(w),this.tip=D3(g),this.pool=!!b,this.className=Tt(x),this.facet==="super"){if(u||c)throw new Error("super-faceting cannot use fx or fy");for(let _ in this.channels){let{scale:$}=e[_];if(!($!=="x"&&$!=="y"))throw new Error("super-faceting cannot use x or y")}}y!=null&&(this.render=tm(y,this.render))}initialize(n,e,r){let i=xr(this.data);n===void 0&&i!=null&&(n=[Vn(i)]);let o=n;this.transform!=null&&({facets:n,data:i}=this.transform(i,n,r),i=xr(i)),n!==void 0&&(n.original=o);let a=W6(this.channels,i);return this.sort!=null&&H6(i,n,a,e,this.sort),{data:i,facets:n,channels:a}}filter(n,e,r){for(let i in e){let{filter:o=An}=e[i];if(o!==null){let a=r[i];n=n.filter(u=>o(a[u]))}}return n}project(n,e,r){for(let i in n)if(n[i].scale==="x"&&/^x|x$/.test(i)){let o=i.replace(/^x|x$/,"y");o in n&&n[o].scale==="y"&&e5(i,o,e,r.projection)}}scale(n,e,r){let i=G6(n,e);return r.projection&&this.project(n,i,r),i}plot({marks:n=[],...e}={}){return Ml({...e,marks:[...n,this]})}};function Jg(...t){return t.plot=Ct.prototype.plot,t}function tm(t,n){if(t==null)return n===null?void 0:n;if(n==null)return t===null?void 0:t;if(typeof t!="function")throw new TypeError(`invalid render transform: ${t}`);if(typeof n!="function")throw new TypeError(`invalid render transform: ${n}`);return function(e,r,i,o,a,u){return t.call(this,e,r,i,o,a,(c,f,s,d,l)=>n.call(this,c,f,s,d,l,u))}}function P3(t){return Object.fromEntries(Object.entries(mg(t)).map(([n,e])=>(e=typeof e=="string"?{value:e,label:n}:Li(e),e.filter===void 0&&e.scale==null&&(e={...e,filter:null}),[n,e])))}function D3(t){return t===!0?"xy":t===!1||t==null?null:typeof t=="string"?dn(t,"tip",["x","y","xy"]):t}function Cr(t,n){return t?.tip===!0?{...t,tip:n}:ue(t?.tip)&&t.tip.pointer===void 0?{...t,tip:{...t.tip,pointer:n}}:t}var xp=new WeakMap,_p=new WeakSet;function sl(t,n,{x:e,y:r,px:i,py:o,maxRadius:a=40,channels:u,render:c,...f}={}){return a=+a,i!=null&&(e??=null,u={...u,px:{value:i,scale:"x"}}),o!=null&&(r??=null,u={...u,py:{value:o,scale:"y"}}),{x:e,y:r,channels:u,...f,render:tm(function(s,d,l,h,p,m){p={...p,pointerSticky:!1};let v=p.ownerSVGElement,{data:x}=p.getMarkState(this),w=xp.get(v);w||(w={sticky:!1,roots:[],renders:[],pool:this.pool?{map:new Map}:null},xp.set(v,w));let M=w.renders.push(z)-1,{x:g,y:b,fx:y,fy:_}=d,$=y?y(s.fx)-h.marginLeft:0,S=_?_(s.fy)-h.marginTop:0;g?.bandwidth&&($+=g.bandwidth()/2),b?.bandwidth&&(S+=b.bandwidth()/2);let C=s.fi!=null,A;if(C){let B=w.facetPools;B||(w.facetPools=B=new Map),A=B.get(this),A||B.set(this,A={map:new Map})}let[k,D]=zi(this,h),{px:P,py:T}=l,O=P?B=>P[B]:nm(l,k),R=T?B=>T[B]:em(l,D),U,L,I,q=w.pool??A;function W(B,G){if(!q)return void z(B);B==null&&z(B),q.map.set(M,{ii:B,ri:G,render:z}),q.frame!==void 0&&cancelAnimationFrame(q.frame),q.frame=requestAnimationFrame(()=>{q.frame=void 0;let N=null;for(let F of q.map.values())(!N||F.ri<N.ri)&&(N=F);for(let F of q.map.values())F.render(F===N?F.ii:null)})}function z(B){if(U===B&&I===w.sticky)return;U=B,I=p.pointerSticky=w.sticky;let G=U==null?[]:[U];C&&(G.fx=s.fx,G.fy=s.fy,G.fi=s.fi);let N=m(G,d,l,h,p);if(L){if(C){let F=L.parentNode,Y=L.getAttribute("transform"),E=N.getAttribute("transform");Y?N.setAttribute("transform",Y):N.removeAttribute("transform"),E?F.setAttribute("transform",E):F.removeAttribute("transform"),N.removeAttribute("aria-label"),N.removeAttribute("aria-description"),N.removeAttribute("aria-hidden")}L.replaceWith(N)}if(w.roots[M]=L=N,!(U==null&&A?.map.size>1)){let F=U==null?null:Ie(x)?x[U]:x.get(U);p.dispatchValue(F)}return N}function K(B){if(w.sticky||B.pointerType==="mouse"&&B.buttons===1)return;let[G,N]=dd(B);G-=$,N-=S;let F=G<h.marginLeft||G>h.width-h.marginRight?1:t,Y=N<h.marginTop||N>h.height-h.marginBottom?1:n,E=null,nt=a*a;for(let H of s){let J=F*(O(H)-G),rt=Y*(R(H)-N),ct=J*J+rt*rt;ct<=nt&&(E=H,nt=ct)}if(E!=null&&(t!==1||n!==1)){let H=O(E)-G,J=R(E)-N;nt=H*H+J*J}W(E,nt)}function et(B){_p.has(B)||(_p.add(B),B.pointerType==="mouse"&&U!=null&&(w.sticky&&w.roots.some(G=>G?.contains(B.target))||(w.sticky?(w.sticky=!1,w.renders.forEach(G=>G(null))):(w.sticky=!0,z(U)))))}function at(B){B.pointerType==="mouse"&&(w.sticky||W(null))}return v.addEventListener("pointerenter",K),v.addEventListener("pointermove",K),v.addEventListener("pointerdown",et),v.addEventListener("pointerleave",at),z(null)},c)}}function I3(t){return sl(1,1,t)}function O3(t){return sl(1,.01,t)}function Mp(t){return sl(.01,1,t)}function nm({x1:t,x2:n,x:e=t},r){return t&&n?i=>(t[i]+n[i])/2:e?i=>e[i]:()=>r}function em({y1:t,y2:n,y:e=t},r){return t&&n?i=>(t[i]+n[i])/2:e?i=>e[i]:()=>r}function rm(t){return qe(t)&&t.interval===void 0?void 0:"tabular-nums"}function im(t,n){let{label:e=t.label,tickSize:r=6,width:i=240,height:o=44+r,marginTop:a=18,marginRight:u=0,marginBottom:c=16+r,marginLeft:f=0,style:s,ticks:d=(i-f-u)/64,tickFormat:l,fontVariant:h=rm(t),round:p=!0,opacity:m,className:v}=n,x=Js(n);v=ul(v),m=Rt(m)[1],l===null&&(l=()=>null);let w=pt("svg",x).attr("class",`${v}-ramp`).attr("font-family","system-ui, sans-serif").attr("font-size",10).attr("width",i).attr("height",o).attr("viewBox",`0 0 ${i} ${o}`).call(k=>k.append("style").text(`:where(.${v}-ramp) {
|
|
7
7
|
display: block;
|
|
8
8
|
height: auto;
|
|
9
9
|
height: intrinsic;
|
|
10
10
|
max-width: 100%;
|
|
11
11
|
overflow: visible;
|
|
12
12
|
}
|
|
13
|
-
:where(.${
|
|
13
|
+
:where(.${v}-ramp text) {
|
|
14
14
|
white-space: pre;
|
|
15
|
-
}`)).call(cl,s),M=k=>k.selectAll(".tick line").attr("y1",a+c-o),g,b=p?(k,D)=>k.rangeRound(D):(k,D)=>k.range(D),{type:y,domain:_,range:$,interpolate:S,scale:C,pivot:A}=t;if(S){let k=$===void 0?S:ir(S.length===1?el(S):S,$);g=b(C.copy(),Wt(Mt(f,i-u),Math.min(_.length+(A!==void 0),$===void 0?1/0:$.length)));let D=256,P=x.document.createElement("canvas");P.width=D,P.height=1;let T=P.getContext("2d",{colorSpace:"display-p3"}),O=t.key==="opacity"?"globalAlpha":"fillStyle";for(let R=0,U=D-1;R<D;++R)T[O]=k(R/U),T.fillRect(R,0,1,1);v.append("image").attr("opacity",m).attr("x",f).attr("y",a).attr("width",i-f-u).attr("height",o-a-c).attr("preserveAspectRatio","none").attr("xlink:href",P.toDataURL())}else if(y==="threshold"){let k=_,D=l===void 0?P=>P:typeof l=="string"?Qn(l):l;g=b(Bo().domain([-1,$.length-1]),[f,i-u]),v.append("g").attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",m).selectAll().data($).enter().append("rect").attr("x",(P,T)=>g(T-1)).attr("y",a).attr("width",(P,T)=>g(T)-g(T-1)).attr("height",o-a-c).attr(t.key==="opacity"?"fill-opacity":"fill",P=>P),d=gt(k,(P,T)=>T),l=P=>D(k[P],P)}else g=b(di().domain(_),[f,i-u]),v.append("g").attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",m).selectAll().data(_).enter().append("rect").attr("x",g).attr("y",a).attr("width",Math.max(0,g.bandwidth()-1)).attr("height",o-a-c).attr(t.key==="opacity"?"fill-opacity":"fill",C),M=()=>{};return v.append("g").attr("transform",`translate(0,${o-c})`).call(td(g).ticks(Array.isArray(d)?null:d,typeof l=="string"?l:void 0).tickFormat(typeof l=="function"?l:void 0).tickSize(r).tickValues(Array.isArray(d)?d:null).offset(St)).attr("font-size",null).attr("font-family",null).attr("font-variant",$t(h,"normal")).call(M).call(k=>k.select(".domain").remove()),e!==void 0&&v.append("text").attr("x",f).attr("y",a-6).attr("fill","currentColor").attr("font-weight","bold").text(e),v.node()}var om=Math.PI/180;function Bi(t,{marker:n,markerStart:e=n,markerMid:r=n,markerEnd:i=n}={}){t.markerStart=es(e),t.markerMid=es(r),t.markerEnd=es(i)}function es(t){if(t==null||t===!1)return null;if(t===!0)return Sp;if(typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"none":return null;case"arrow":return $p("auto");case"arrow-reverse":return $p("auto-start-reverse");case"dot":return O3;case"circle":case"circle-fill":return Sp;case"circle-stroke":return F3;case"tick":return rs("auto");case"tick-x":return rs(90);case"tick-y":return rs(0)}throw new Error(`invalid marker: ${t}`)}function $p(t){return(n,e)=>pt("svg:marker",e).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("orient",t).attr("fill","none").attr("stroke",n).attr("stroke-dasharray","none").attr("stroke-width",1.5).attr("stroke-linecap","round").attr("stroke-linejoin","round").call(r=>r.append("path").attr("d","M-1.5,-3l3,3l-3,3")).node()}function O3(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill",t).attr("stroke","none").call(e=>e.append("circle").attr("r",2.5)).node()}function Sp(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill",t).attr("stroke","var(--plot-background)").attr("stroke-dasharray","none").attr("stroke-width",1.5).call(e=>e.append("circle").attr("r",3)).node()}function F3(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill","var(--plot-background)").attr("stroke",t).attr("stroke-dasharray","none").attr("stroke-width",1.5).call(e=>e.append("circle").attr("r",3)).node()}function rs(t){return(n,e)=>pt("svg:marker",e).attr("viewBox","-3 -3 6 6").attr("markerWidth",6).attr("markerHeight",6).attr("orient",t).attr("stroke",n).attr("stroke-dasharray","none").call(r=>r.append("path").attr("d","M0,-3v6")).node()}var z3=0;function ll(t,n,{stroke:e},r){return cm(t,n,e&&(i=>e[i]),null,r)}function am(t,n,{stroke:e,z:r},i){return cm(t,n,e&&(([o])=>e[o]),r,i)}var vs=1,um=2;function B3(t,n){let e=new Uint8Array(n.length),r=t.data().filter(o=>o.length>1),i=r.length;for(let o=0,a=bs;o<i;++o){let u=r[o];if(u.length>1){let c=u[0];a!==(a=Xn(n[c]))&&(e[c]|=vs)}}for(let o=i-1,a=bs;o>=0;--o){let u=r[o];if(u.length>1){let c=u[0];a!==(a=Xn(n[c]))&&(e[c]|=um)}}return([o])=>e[o]}function cm(t,{markerStart:n,markerMid:e,markerEnd:r,stroke:i},o=()=>i,a,u){if(!n&&!e&&!r)return;let c=new Map,f=a&&B3(t,a);function s(d,l,h){return function(p){if(h&&!h(p))return;let m=o(p),w=c.get(l);w||c.set(l,w=new Map);let x=w.get(m);if(!x){let v=this.parentNode.insertBefore(l(m,u),this),M=`plot-marker-${++z3}`;v.setAttribute("id",M),w.set(m,x=`url(#${M})`)}this.setAttribute(d,x)}}n&&t.each(s("marker-start",n,f&&(d=>f(d)&vs))),e&&f&&t.each(s("marker-start",e,d=>!(f(d)&vs))),e&&t.each(s("marker-mid",e)),r&&t.each(s("marker-end",r,f&&(d=>f(d)&um)))}function qi({inset:t,insetLeft:n,insetRight:e,...r}={}){return[n,e]=fm(t,n,e),{inset:t,insetLeft:n,insetRight:e,...r}}function Yi({inset:t,insetTop:n,insetBottom:e,...r}={}){return[n,e]=fm(t,n,e),{inset:t,insetTop:n,insetBottom:e,...r}}function fm(t,n,e){return t===void 0&&n===void 0&&e===void 0?St?[1,0]:[.5,.5]:[n,e]}function sm(t,{interval:n}){return t={...Li(t)},t.interval=Us(t.interval===void 0?n:t.interval),t}function Pa(t,n,e,r){let{[t]:i,[`${t}1`]:o,[`${t}2`]:a}=e,{value:u,interval:c}=sm(i,e);if(u==null||c==null&&!r)return e;let f=Be(i);if(c==null){let h,p={transform:m=>h||(h=ft(m,u)),label:f};return{...e,[t]:void 0,[`${t}1`]:o===void 0?p:o,[`${t}2`]:a===void 0&&!(o===a&&r)?p:a}}let s,d;function l(h){return d!==void 0&&h===s?d:d=gt(ft(s=h,u),p=>c.floor(p))}return n({...e,[t]:void 0,[`${t}1`]:o===void 0?{transform:l,label:f}:o,[`${t}2`]:a===void 0?{transform:h=>l(h).map(p=>c.offset(p)),label:f}:a})}function lm(t,n,e){let{[t]:r}=e,{value:i,interval:o}=sm(r,e);return i==null||o==null?e:n({...e,[t]:{label:Be(r),transform:a=>{let u=gt(ft(a,i),f=>o.floor(f)),c=u.map(f=>o.offset(f));return u.map(Bt(u)?(f,s)=>f==null||isNaN(f=+f)||(s=c[s],s==null)||isNaN(s=+s)?void 0:new Date((f+s)/2):(f,s)=>f==null||(s=c[s],s==null)?NaN:(+f+ +s)/2)}}})}function dm(t={}){return Pa("x",qi,t,!0)}function hm(t={}){return Pa("y",Yi,t,!0)}function pm(t={}){return Pa("x",qi,t)}function gm(t={}){return Pa("y",Yi,t)}function q3(t={}){return lm("x",qi,t)}function Y3(t={}){return lm("y",Yi,t)}var mm={ariaLabel:"rule",fill:null,stroke:"currentColor"},xs=class extends Ct{constructor(n,e={}){let{x:r,y1:i,y2:o,inset:a=0,insetTop:u=a,insetBottom:c=a}=e;super(n,{x:{value:r,scale:"x",optional:!0},y1:{value:i,scale:"y",optional:!0},y2:{value:o,scale:"y",optional:!0}},Cr(e,"x"),mm),this.insetTop=kt(u),this.insetBottom=kt(c),Bi(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y1:f,y2:s}=r,{width:d,height:l,marginTop:h,marginRight:p,marginLeft:m,marginBottom:w}=i,{insetTop:x,insetBottom:v}=this;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,{x:c&&a},St,0).call(M=>M.selectAll().data(n).enter().append("line").call(Lt,this).attr("x1",c?g=>c[g]:(m+d-p)/2).attr("x2",c?g=>c[g]:(m+d-p)/2).attr("y1",f&&!kn(u)?g=>f[g]+x:h+x).attr("y2",s&&!kn(u)?u.bandwidth?g=>s[g]+u.bandwidth()-v:g=>s[g]-v:l-w-v).call(ln,this,r).call(ll,this,r,o)).node()}},_s=class extends Ct{constructor(n,e={}){let{x1:r,x2:i,y:o,inset:a=0,insetRight:u=a,insetLeft:c=a}=e;super(n,{y:{value:o,scale:"y",optional:!0},x1:{value:r,scale:"x",optional:!0},x2:{value:i,scale:"x",optional:!0}},Cr(e,"y"),mm),this.insetRight=kt(u),this.insetLeft=kt(c),Bi(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{y:c,x1:f,x2:s}=r,{width:d,height:l,marginTop:h,marginRight:p,marginLeft:m,marginBottom:w}=i,{insetLeft:x,insetRight:v}=this;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,{y:c&&u},0,St).call(M=>M.selectAll().data(n).enter().append("line").call(Lt,this).attr("x1",f&&!kn(a)?g=>f[g]+x:m+x).attr("x2",s&&!kn(a)?a.bandwidth?g=>s[g]+a.bandwidth()-v:g=>s[g]-v:d-p-v).attr("y1",c?g=>c[g]:(h+l-w)/2).attr("y2",c?g=>c[g]:(h+l-w)/2).call(ln,this,r).call(ll,this,r,o)).node()}};function ym(t,n){let{x:e=ht,y:r,y1:i,y2:o,...a}=gm(n);return[i,o]=bm(r,i,o),new xs(t,{...a,x:e,y1:i,y2:o})}function Da(t,n){let{y:e=ht,x:r,x1:i,x2:o,...a}=pm(n);return[i,o]=bm(r,i,o),new _s(t,{...a,y:e,x1:i,x2:o})}function bm(t,n,e){if(t==null){if(n===void 0){if(e!==void 0)return[0,e]}else if(e===void 0)return[0,n]}else{if(n===void 0)return e===void 0?[0,t]:[t,e];if(e===void 0)return[t,n]}return[n,e]}function dl(t,...n){let e=n.length;for(let r=0,i=!0;r<e;++r)typeof n[r]!="function"&&(i&&(t=t.slice(),i=!1),t.splice(r,2,t[r]+n[r]+t[r+1]),n.splice(r,1),--r,--e);return r=>{let i=t[0];for(let o=0;o<e;++o)i+=n[o](r)+t[o+1];return i}}var U3={ariaLabel:"text",strokeLinejoin:"round",strokeWidth:3,paintOrder:"stroke"},wm="\xAD",Ti=class extends Ct{constructor(n,e={}){let{x:r,y:i,text:o=ce(n)&&hg(n)?ht:Oe,frameAnchor:a,textAnchor:u=/right$/i.test(a)?"end":/left$/i.test(a)?"start":"middle",lineAnchor:c=/^top/i.test(a)?"top":/^bottom/i.test(a)?"bottom":"middle",lineHeight:f=1,lineWidth:s=1/0,textOverflow:d,monospace:l,fontFamily:h=l?"ui-monospace, monospace":void 0,fontSize:p,fontStyle:m,fontVariant:w,fontWeight:x,rotate:v}=e,[M,g]=Rt(v,0),[b,y]=j3(p);if(super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},fontSize:{value:b,optional:!0},rotate:{value:u6(M),optional:!0},text:{value:o,filter:Ls,optional:!0}},e,U3),this.rotate=g,this.textAnchor=$t(u,"middle"),this.lineAnchor=dn(c,"lineAnchor",["top","middle","bottom"]),this.lineHeight=+f,this.lineWidth=+s,this.textOverflow=vm(d),this.monospace=!!l,this.fontFamily=Tt(h),this.fontSize=y,this.fontStyle=Tt(m),this.fontVariant=Tt(w),this.fontWeight=Tt(x),this.frameAnchor=ka(a),!(this.lineWidth>=0))throw new Error(`invalid lineWidth: ${s}`);this.splitLines=_m(this),this.clipLine=Mm(this)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,rotate:s,text:d,title:l,fontSize:h}=r,{rotate:p}=this,[m,w]=zi(this,i);return pt("svg:g",o).call(Ht,this,i,o).call(xm,this,d,i).call(Pt,this,{x:c&&a,y:f&&u}).call(x=>x.selectAll().data(n).enter().append("text").call(Lt,this).call(W3,this,d,l).attr("transform",dl`translate(${c?v=>c[v]:m},${f?v=>f[v]:w})${s?v=>` rotate(${s[v]})`:p?` rotate(${p})`:""}`).call(X,"font-size",h&&(v=>h[v])).call(ln,this,r)).node()}};function vm(t){return t==null?null:dn(t,"textOverflow",["clip","ellipsis","clip-start","clip-end","ellipsis-start","ellipsis-middle","ellipsis-end"]).replace(/^(clip|ellipsis)$/,"$1-end")}function W3(t,n,e,r){if(!e)return;let{lineAnchor:i,lineHeight:o,textOverflow:a,splitLines:u,clipLine:c}=n;t.each(function(f){let s=u($r(e[f])??"").map(c),d=s.length,l=i==="top"?.71:i==="bottom"?1-d:(164-d*100)/200;if(d>1){let h=0;for(let p=0;p<d;++p){if(++h,!s[p])continue;let m=this.ownerDocument.createElementNS(ge.svg,"tspan");m.setAttribute("x",0),p===h-1?m.setAttribute("y",`${(l+p)*o}em`):m.setAttribute("dy",`${h*o}em`),m.textContent=s[p],this.appendChild(m),h=0}}else l&&this.setAttribute("y",`${l*o}em`),this.textContent=s[0];if(a&&!r&&s[0]!==e[f]){let h=this.ownerDocument.createElementNS(ge.svg,"title");h.textContent=e[f],this.appendChild(h)}})}function Er(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new Ti(t,{...r,x:n,y:e})}function G3(t,{x:n=ht,...e}={}){return new Ti(t,Y3({...e,x:n}))}function H3(t,{y:n=ht,...e}={}){return new Ti(t,q3({...e,y:n}))}function xm(t,n,e){X(t,"text-anchor",n.textAnchor),X(t,"font-family",n.fontFamily),X(t,"font-size",n.fontSize),X(t,"font-style",n.fontStyle),X(t,"font-variant",n.fontVariant===void 0?X3(e):n.fontVariant),X(t,"font-weight",n.fontWeight)}function X3(t){return t&&(s6(t)||Bt(t))?"tabular-nums":void 0}var V3=new Set(["inherit","initial","revert","unset","xx-small","x-small","small","medium","large","x-large","xx-large","xxx-large","larger","smaller"]);function j3(t){return t==null||typeof t=="number"?[void 0,t]:typeof t!="string"?[t,void 0]:(t=t.trim().toLowerCase(),V3.has(t)||/^[+-]?\d*\.?\d+(e[+-]?\d+)?(\w*|%)$/.test(t)?[void 0,t]:[t,void 0])}function Z3(t,n,e){let r=[],i,o=0;for(let[a,u,c]of K3(t)){if(i===void 0&&(i=a),o>i&&e(t,i,u)>n&&(r.push(t.slice(i,o)+(t[o-1]===wm?"-":"")),i=a),c){r.push(t.slice(i,u)),i=void 0;continue}o=u}return r}function*K3(t){let n=0,e=0,r=t.length;for(;e<r;){let i=1;switch(t[e]){case wm:case"-":++e,yield[n,e,!1],n=e;break;case" ":for(yield[n,e,!1];t[++e]===" ";);n=e;break;case"\r":t[e+1]===`
|
|
15
|
+
}`)).call(cl,s),M=k=>k.selectAll(".tick line").attr("y1",a+c-o),g,b=p?(k,D)=>k.rangeRound(D):(k,D)=>k.range(D),{type:y,domain:_,range:$,interpolate:S,scale:C,pivot:A}=t;if(S){let k=$===void 0?S:ir(S.length===1?el(S):S,$);g=b(C.copy(),Gt(Mt(f,i-u),Math.min(_.length+(A!==void 0),$===void 0?1/0:$.length)));let D=256,P=x.document.createElement("canvas");P.width=D,P.height=1;let T=P.getContext("2d",{colorSpace:"display-p3"}),O=t.key==="opacity"?"globalAlpha":"fillStyle";for(let R=0,U=D-1;R<D;++R)T[O]=k(R/U),T.fillRect(R,0,1,1);w.append("image").attr("opacity",m).attr("x",f).attr("y",a).attr("width",i-f-u).attr("height",o-a-c).attr("preserveAspectRatio","none").attr("xlink:href",P.toDataURL())}else if(y==="threshold"){let k=_,D=l===void 0?P=>P:typeof l=="string"?Qn(l):l;g=b(Bo().domain([-1,$.length-1]),[f,i-u]),w.append("g").attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",m).selectAll().data($).enter().append("rect").attr("x",(P,T)=>g(T-1)).attr("y",a).attr("width",(P,T)=>g(T)-g(T-1)).attr("height",o-a-c).attr(t.key==="opacity"?"fill-opacity":"fill",P=>P),d=gt(k,(P,T)=>T),l=P=>D(k[P],P)}else g=b(di().domain(_),[f,i-u]),w.append("g").attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",m).selectAll().data(_).enter().append("rect").attr("x",g).attr("y",a).attr("width",Math.max(0,g.bandwidth()-1)).attr("height",o-a-c).attr(t.key==="opacity"?"fill-opacity":"fill",C),M=()=>{};return w.append("g").attr("transform",`translate(0,${o-c})`).call(td(g).ticks(Array.isArray(d)?null:d,typeof l=="string"?l:void 0).tickFormat(typeof l=="function"?l:void 0).tickSize(r).tickValues(Array.isArray(d)?d:null).offset(St)).attr("font-size",null).attr("font-family",null).attr("font-variant",$t(h,"normal")).call(M).call(k=>k.select(".domain").remove()),e!==void 0&&w.append("text").attr("x",f).attr("y",a-6).attr("fill","currentColor").attr("font-weight","bold").text(e),w.node()}var om=Math.PI/180;function Bi(t,{marker:n,markerStart:e=n,markerMid:r=n,markerEnd:i=n}={}){t.markerStart=es(e),t.markerMid=es(r),t.markerEnd=es(i)}function es(t){if(t==null||t===!1)return null;if(t===!0)return Sp;if(typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"none":return null;case"arrow":return $p("auto");case"arrow-reverse":return $p("auto-start-reverse");case"dot":return F3;case"circle":case"circle-fill":return Sp;case"circle-stroke":return z3;case"tick":return rs("auto");case"tick-x":return rs(90);case"tick-y":return rs(0)}throw new Error(`invalid marker: ${t}`)}function $p(t){return(n,e)=>pt("svg:marker",e).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("orient",t).attr("fill","none").attr("stroke",n).attr("stroke-dasharray","none").attr("stroke-width",1.5).attr("stroke-linecap","round").attr("stroke-linejoin","round").call(r=>r.append("path").attr("d","M-1.5,-3l3,3l-3,3")).node()}function F3(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill",t).attr("stroke","none").call(e=>e.append("circle").attr("r",2.5)).node()}function Sp(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill",t).attr("stroke","var(--plot-background)").attr("stroke-dasharray","none").attr("stroke-width",1.5).call(e=>e.append("circle").attr("r",3)).node()}function z3(t,n){return pt("svg:marker",n).attr("viewBox","-5 -5 10 10").attr("markerWidth",6.67).attr("markerHeight",6.67).attr("fill","var(--plot-background)").attr("stroke",t).attr("stroke-dasharray","none").attr("stroke-width",1.5).call(e=>e.append("circle").attr("r",3)).node()}function rs(t){return(n,e)=>pt("svg:marker",e).attr("viewBox","-3 -3 6 6").attr("markerWidth",6).attr("markerHeight",6).attr("orient",t).attr("stroke",n).attr("stroke-dasharray","none").call(r=>r.append("path").attr("d","M0,-3v6")).node()}var B3=0;function ll(t,n,{stroke:e},r){return cm(t,n,e&&(i=>e[i]),null,r)}function am(t,n,{stroke:e,z:r},i){return cm(t,n,e&&(([o])=>e[o]),r,i)}var vs=1,um=2;function q3(t,n){let e=new Uint8Array(n.length),r=t.data().filter(o=>o.length>1),i=r.length;for(let o=0,a=bs;o<i;++o){let u=r[o];if(u.length>1){let c=u[0];a!==(a=Xn(n[c]))&&(e[c]|=vs)}}for(let o=i-1,a=bs;o>=0;--o){let u=r[o];if(u.length>1){let c=u[0];a!==(a=Xn(n[c]))&&(e[c]|=um)}}return([o])=>e[o]}function cm(t,{markerStart:n,markerMid:e,markerEnd:r,stroke:i},o=()=>i,a,u){if(!n&&!e&&!r)return;let c=new Map,f=a&&q3(t,a);function s(d,l,h){return function(p){if(h&&!h(p))return;let m=o(p),v=c.get(l);v||c.set(l,v=new Map);let x=v.get(m);if(!x){let w=this.parentNode.insertBefore(l(m,u),this),M=`plot-marker-${++B3}`;w.setAttribute("id",M),v.set(m,x=`url(#${M})`)}this.setAttribute(d,x)}}n&&t.each(s("marker-start",n,f&&(d=>f(d)&vs))),e&&f&&t.each(s("marker-start",e,d=>!(f(d)&vs))),e&&t.each(s("marker-mid",e)),r&&t.each(s("marker-end",r,f&&(d=>f(d)&um)))}function qi({inset:t,insetLeft:n,insetRight:e,...r}={}){return[n,e]=fm(t,n,e),{inset:t,insetLeft:n,insetRight:e,...r}}function Yi({inset:t,insetTop:n,insetBottom:e,...r}={}){return[n,e]=fm(t,n,e),{inset:t,insetTop:n,insetBottom:e,...r}}function fm(t,n,e){return t===void 0&&n===void 0&&e===void 0?St?[1,0]:[.5,.5]:[n,e]}function sm(t,{interval:n}){return t={...Li(t)},t.interval=Us(t.interval===void 0?n:t.interval),t}function Pa(t,n,e,r){let{[t]:i,[`${t}1`]:o,[`${t}2`]:a}=e,{value:u,interval:c}=sm(i,e);if(u==null||c==null&&!r)return e;let f=Be(i);if(c==null){let h,p={transform:m=>h||(h=ft(m,u)),label:f};return{...e,[t]:void 0,[`${t}1`]:o===void 0?p:o,[`${t}2`]:a===void 0&&!(o===a&&r)?p:a}}let s,d;function l(h){return d!==void 0&&h===s?d:d=gt(ft(s=h,u),p=>c.floor(p))}return n({...e,[t]:void 0,[`${t}1`]:o===void 0?{transform:l,label:f}:o,[`${t}2`]:a===void 0?{transform:h=>l(h).map(p=>c.offset(p)),label:f}:a})}function lm(t,n,e){let{[t]:r}=e,{value:i,interval:o}=sm(r,e);return i==null||o==null?e:n({...e,[t]:{label:Be(r),transform:a=>{let u=gt(ft(a,i),f=>o.floor(f)),c=u.map(f=>o.offset(f));return u.map(qt(u)?(f,s)=>f==null||isNaN(f=+f)||(s=c[s],s==null)||isNaN(s=+s)?void 0:new Date((f+s)/2):(f,s)=>f==null||(s=c[s],s==null)?NaN:(+f+ +s)/2)}}})}function dm(t={}){return Pa("x",qi,t,!0)}function hm(t={}){return Pa("y",Yi,t,!0)}function pm(t={}){return Pa("x",qi,t)}function gm(t={}){return Pa("y",Yi,t)}function Y3(t={}){return lm("x",qi,t)}function U3(t={}){return lm("y",Yi,t)}var mm={ariaLabel:"rule",fill:null,stroke:"currentColor"},xs=class extends Ct{constructor(n,e={}){let{x:r,y1:i,y2:o,inset:a=0,insetTop:u=a,insetBottom:c=a}=e;super(n,{x:{value:r,scale:"x",optional:!0},y1:{value:i,scale:"y",optional:!0},y2:{value:o,scale:"y",optional:!0}},Cr(e,"x"),mm),this.insetTop=kt(u),this.insetBottom=kt(c),Bi(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y1:f,y2:s}=r,{width:d,height:l,marginTop:h,marginRight:p,marginLeft:m,marginBottom:v}=i,{insetTop:x,insetBottom:w}=this;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,{x:c&&a},St,0).call(M=>M.selectAll().data(n).enter().append("line").call(Lt,this).attr("x1",c?g=>c[g]:(m+d-p)/2).attr("x2",c?g=>c[g]:(m+d-p)/2).attr("y1",f&&!kn(u)?g=>f[g]+x:h+x).attr("y2",s&&!kn(u)?u.bandwidth?g=>s[g]+u.bandwidth()-w:g=>s[g]-w:l-v-w).call(ln,this,r).call(ll,this,r,o)).node()}},_s=class extends Ct{constructor(n,e={}){let{x1:r,x2:i,y:o,inset:a=0,insetRight:u=a,insetLeft:c=a}=e;super(n,{y:{value:o,scale:"y",optional:!0},x1:{value:r,scale:"x",optional:!0},x2:{value:i,scale:"x",optional:!0}},Cr(e,"y"),mm),this.insetRight=kt(u),this.insetLeft=kt(c),Bi(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{y:c,x1:f,x2:s}=r,{width:d,height:l,marginTop:h,marginRight:p,marginLeft:m,marginBottom:v}=i,{insetLeft:x,insetRight:w}=this;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,{y:c&&u},0,St).call(M=>M.selectAll().data(n).enter().append("line").call(Lt,this).attr("x1",f&&!kn(a)?g=>f[g]+x:m+x).attr("x2",s&&!kn(a)?a.bandwidth?g=>s[g]+a.bandwidth()-w:g=>s[g]-w:d-p-w).attr("y1",c?g=>c[g]:(h+l-v)/2).attr("y2",c?g=>c[g]:(h+l-v)/2).call(ln,this,r).call(ll,this,r,o)).node()}};function ym(t,n){let{x:e=ht,y:r,y1:i,y2:o,...a}=gm(n);return[i,o]=bm(r,i,o),new xs(t,{...a,x:e,y1:i,y2:o})}function Da(t,n){let{y:e=ht,x:r,x1:i,x2:o,...a}=pm(n);return[i,o]=bm(r,i,o),new _s(t,{...a,y:e,x1:i,x2:o})}function bm(t,n,e){if(t==null){if(n===void 0){if(e!==void 0)return[0,e]}else if(e===void 0)return[0,n]}else{if(n===void 0)return e===void 0?[0,t]:[t,e];if(e===void 0)return[t,n]}return[n,e]}function dl(t,...n){let e=n.length;for(let r=0,i=!0;r<e;++r)typeof n[r]!="function"&&(i&&(t=t.slice(),i=!1),t.splice(r,2,t[r]+n[r]+t[r+1]),n.splice(r,1),--r,--e);return r=>{let i=t[0];for(let o=0;o<e;++o)i+=n[o](r)+t[o+1];return i}}var W3={ariaLabel:"text",strokeLinejoin:"round",strokeWidth:3,paintOrder:"stroke"},wm="\xAD",Ti=class extends Ct{constructor(n,e={}){let{x:r,y:i,text:o=ce(n)&&hg(n)?ht:Oe,frameAnchor:a,textAnchor:u=/right$/i.test(a)?"end":/left$/i.test(a)?"start":"middle",lineAnchor:c=/^top/i.test(a)?"top":/^bottom/i.test(a)?"bottom":"middle",lineHeight:f=1,lineWidth:s=1/0,textOverflow:d,monospace:l,fontFamily:h=l?"ui-monospace, monospace":void 0,fontSize:p,fontStyle:m,fontVariant:v,fontWeight:x,rotate:w}=e,[M,g]=Rt(w,0),[b,y]=Z3(p);if(super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},fontSize:{value:b,optional:!0},rotate:{value:c6(M),optional:!0},text:{value:o,filter:Ls,optional:!0}},e,W3),this.rotate=g,this.textAnchor=$t(u,"middle"),this.lineAnchor=dn(c,"lineAnchor",["top","middle","bottom"]),this.lineHeight=+f,this.lineWidth=+s,this.textOverflow=vm(d),this.monospace=!!l,this.fontFamily=Tt(h),this.fontSize=y,this.fontStyle=Tt(m),this.fontVariant=Tt(v),this.fontWeight=Tt(x),this.frameAnchor=ka(a),!(this.lineWidth>=0))throw new Error(`invalid lineWidth: ${s}`);this.splitLines=_m(this),this.clipLine=Mm(this)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,rotate:s,text:d,title:l,fontSize:h}=r,{rotate:p}=this,[m,v]=zi(this,i);return pt("svg:g",o).call(Xt,this,i,o).call(xm,this,d,i).call(Pt,this,{x:c&&a,y:f&&u}).call(x=>x.selectAll().data(n).enter().append("text").call(Lt,this).call(G3,this,d,l).attr("transform",dl`translate(${c?w=>c[w]:m},${f?w=>f[w]:v})${s?w=>` rotate(${s[w]})`:p?` rotate(${p})`:""}`).call(X,"font-size",h&&(w=>h[w])).call(ln,this,r)).node()}};function vm(t){return t==null?null:dn(t,"textOverflow",["clip","ellipsis","clip-start","clip-end","ellipsis-start","ellipsis-middle","ellipsis-end"]).replace(/^(clip|ellipsis)$/,"$1-end")}function G3(t,n,e,r){if(!e)return;let{lineAnchor:i,lineHeight:o,textOverflow:a,splitLines:u,clipLine:c}=n;t.each(function(f){let s=u($r(e[f])??"").map(c),d=s.length,l=i==="top"?.71:i==="bottom"?1-d:(164-d*100)/200;if(d>1){let h=0;for(let p=0;p<d;++p){if(++h,!s[p])continue;let m=this.ownerDocument.createElementNS(ge.svg,"tspan");m.setAttribute("x",0),p===h-1?m.setAttribute("y",`${(l+p)*o}em`):m.setAttribute("dy",`${h*o}em`),m.textContent=s[p],this.appendChild(m),h=0}}else l&&this.setAttribute("y",`${l*o}em`),this.textContent=s[0];if(a&&!r&&s[0]!==e[f]){let h=this.ownerDocument.createElementNS(ge.svg,"title");h.textContent=e[f],this.appendChild(h)}})}function Er(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new Ti(t,{...r,x:n,y:e})}function H3(t,{x:n=ht,...e}={}){return new Ti(t,U3({...e,x:n}))}function X3(t,{y:n=ht,...e}={}){return new Ti(t,Y3({...e,y:n}))}function xm(t,n,e){X(t,"text-anchor",n.textAnchor),X(t,"font-family",n.fontFamily),X(t,"font-size",n.fontSize),X(t,"font-style",n.fontStyle),X(t,"font-variant",n.fontVariant===void 0?V3(e):n.fontVariant),X(t,"font-weight",n.fontWeight)}function V3(t){return t&&(l6(t)||qt(t))?"tabular-nums":void 0}var j3=new Set(["inherit","initial","revert","unset","xx-small","x-small","small","medium","large","x-large","xx-large","xxx-large","larger","smaller"]);function Z3(t){return t==null||typeof t=="number"?[void 0,t]:typeof t!="string"?[t,void 0]:(t=t.trim().toLowerCase(),j3.has(t)||/^[+-]?\d*\.?\d+(e[+-]?\d+)?(\w*|%)$/.test(t)?[void 0,t]:[t,void 0])}function K3(t,n,e){let r=[],i,o=0;for(let[a,u,c]of Q3(t)){if(i===void 0&&(i=a),o>i&&e(t,i,u)>n&&(r.push(t.slice(i,o)+(t[o-1]===wm?"-":"")),i=a),c){r.push(t.slice(i,u)),i=void 0;continue}o=u}return r}function*Q3(t){let n=0,e=0,r=t.length;for(;e<r;){let i=1;switch(t[e]){case wm:case"-":++e,yield[n,e,!1],n=e;break;case" ":for(yield[n,e,!1];t[++e]===" ";);n=e;break;case"\r":t[e+1]===`
|
|
16
16
|
`&&++i;case`
|
|
17
|
-
`:yield[n,e,!0],e+=i,n=e;break;default:++e;break}}yield[n,e,!0]}var Ap={a:56,b:63,c:57,d:63,e:58,f:37,g:62,h:60,i:26,j:26,k:55,l:26,m:88,n:60,o:60,p:62,q:62,r:39,s:54,t:38,u:60,v:55,w:79,x:54,y:55,z:55,A:69,B:67,C:73,D:74,E:61,F:58,G:76,H:75,I:28,J:55,K:67,L:58,M:89,N:75,O:78,P:65,Q:78,R:67,S:65,T:65,U:75,V:69,W:98,X:69,Y:67,Z:67,0:64,1:48,2:62,3:64,4:66,5:63,6:65,7:58,8:65,9:65," ":29,"!":32,'"':49,"'":31,"(":39,")":39,",":31,"-":48,".":31,"/":32,":":31,";":31,"?":52,"\u2018":31,"\u2019":31,"\u201C":47,"\u201D":47,"\u2026":82};function hl(t,n=0,e=t.length){let r=0;for(let i=n;i<e;i=Nr(t,i))r+=Ap[t[i]]??(Sm(t,i)?120:Ap.e);return r}function pl(t,n=0,e=t.length){let r=0;for(let i=n;i<e;i=Nr(t,i))r+=Sm(t,i)?126:63;return r}function _m({monospace:t,lineWidth:n,textOverflow:e}){if(e!=null||n==1/0)return o=>o.split(/\r\n?|\n/g);let r=t?pl:hl,i=n*100;return o=>Z3(o,i,r)}function Mm({monospace:t,lineWidth:n,textOverflow:e}){if(e==null||n==1/0)return o=>o;let r=t?pl:hl,i=n*100;switch(e){case"clip-start":return o=>kp(o,i,r,"");case"clip-end":return o=>Tp(o,i,r,"");case"ellipsis-start":return o=>kp(o,i,r,wr);case"ellipsis-middle":return o=>Q3(o,i,r,wr);case"ellipsis-end":return o=>Tp(o,i,r,wr)}}var wr="\u2026";function Sr(t,n,e,r){let i=[],o=0;for(let a=0,u=0,c=t.length;a<c;a=u){u=Nr(t,a);let f=e(t,a,u);if(o+f>n){for(o+=r;o>n&&a>0;)u=a,a=i.pop(),o-=e(t,a,u);return[a,n-o]}o+=f,i.push(a)}return[-1,0]}function Tp(t,n,e,r){t=t.trim();let i=e(r),[o]=Sr(t,n,e,i);return o<0?t:t.slice(0,o).trimEnd()+r}function Q3(t,n,e,r){t=t.trim();let i=e(t);if(i<=n)return t;let o=e(r)/2,[a,u]=Sr(t,n/2,e,o),[c]=Sr(t,i-n/2-u+o,e,-o);return c<0?r:t.slice(0,a).trimEnd()+r+t.slice(Nr(t,c)).trimStart()}function kp(t,n,e,r){t=t.trim();let i=e(t);if(i<=n)return t;let o=e(r),[a]=Sr(t,i-n+o,e,-o);return a<0?r:r+t.slice(Nr(t,a)).trimStart()}var Ms=/[\p{Combining_Mark}\p{Emoji_Modifier}]+/uy,Cp=/\p{Extended_Pictographic}/uy;function Nr(t,n){return n+=J3(t,n)?2:1,n8(t,n)&&(n=Ms.lastIndex),t8(t,n)?Nr(t,n+1):n}function $m(t,n){return t.charCodeAt(n)<128}function J3(t,n){let e=t.charCodeAt(n);if(e>=55296&&e<56320){let r=t.charCodeAt(n+1);return r>=56320&&r<57344}return!1}function t8(t,n){return t.charCodeAt(n)===8205}function n8(t,n){return $m(t,n)?!1:(Ms.lastIndex=n,Ms.test(t))}function Sm(t,n){return $m(t,n)?!1:(Cp.lastIndex=n,Cp.test(t))}var e8={ariaLabel:"vector",fill:"none",stroke:"currentColor",strokeWidth:1.5,strokeLinejoin:"round",strokeLinecap:"round"},Am=3.5,r8=Am*5,Tm={draw(t,n,e){let r=n*e/r8;t.moveTo(0,0),t.lineTo(0,-n),t.moveTo(-r,r-n),t.lineTo(0,-n),t.lineTo(r,r-n)}},i8={draw(t,n,e){t.moveTo(-e,0),t.lineTo(0,-n),t.lineTo(e,0)}},o8=new Map([["arrow",Tm],["spike",i8]]);function a8(t){return t&&typeof t.draw=="function"}function u8(t){if(a8(t))return t;let n=o8.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid shape: ${t}`)}var wa=class extends Ct{constructor(n,e={}){let{x:r,y:i,r:o=Am,length:a,rotate:u,shape:c=Tm,anchor:f="middle",frameAnchor:s}=e,[d,l]=Rt(a,12),[h,p]=Rt(u,0);super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},length:{value:d,scale:"length",optional:!0},rotate:{value:h,optional:!0}},e,e8),this.r=+o,this.length=l,this.rotate=p,this.shape=u8(c),this.anchor=dn(f,"anchor",["start","middle","end"]),this.frameAnchor=ka(s)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,length:s,rotate:d}=r,{length:l,rotate:h,anchor:p,shape:m,r:w}=this,[x,v]=zi(this,i);return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,{x:c&&a,y:f&&u}).call(M=>M.selectAll().data(n).enter().append("path").call(Lt,this).attr("transform",dl`translate(${c?g=>c[g]:x},${f?g=>f[g]:v})${d?g=>` rotate(${d[g]})`:h?` rotate(${h})`:""}${p==="start"?"":p==="end"?s?g=>` translate(0,${s[g]})`:` translate(0,${l})`:s?g=>` translate(0,${s[g]/2})`:` translate(0,${l/2})`}`).attr("d",s?g=>{let b=Ln();return m.draw(b,s[g],w),b}:(()=>{let g=Ln();return m.draw(g,l,w),g})()).call(ln,this,r)).node()}};function c8(t,n={}){let{x:e=ht,...r}=n;return new wa(t,{...r,x:e})}function f8(t,n={}){let{y:e=ht,...r}=n;return new wa(t,{...r,y:e})}function se(t,n){return arguments.length<2&&!ce(t)&&(n=t,t=null),n===void 0&&(n={}),[t,n]}function Ia({anchor:t}={},n){return t===void 0?n[0]:dn(t,"anchor",n)}function km(t){return Ia(t,["left","right"])}function Cm(t){return Ia(t,["right","left"])}function Em(t){return Ia(t,["bottom","top"])}function Nm(t){return Ia(t,["top","bottom"])}function Rm(){let[t,n]=se(...arguments);return Pm("y",km(n),t,n)}function s8(){let[t,n]=se(...arguments);return Pm("fy",Cm(n),t,n)}function Lm(){let[t,n]=se(...arguments);return Dm("x",Em(n),t,n)}function l8(){let[t,n]=se(...arguments);return Dm("fx",Nm(n),t,n)}function Pm(t,n,e,{color:r="currentColor",opacity:i=1,stroke:o=r,strokeOpacity:a=i,strokeWidth:u=1,fill:c=r,fillOpacity:f=i,textAnchor:s,textStroke:d,textStrokeOpacity:l,textStrokeWidth:h,tickSize:p=t==="y"?6:0,tickPadding:m,tickRotate:w,x,margin:v,marginTop:M=v===void 0?20:v,marginRight:g=v===void 0?n==="right"?40:0:v,marginBottom:b=v===void 0?20:v,marginLeft:y=v===void 0?n==="left"?40:0:v,label:_,labelAnchor:$,labelArrow:S,labelOffset:C,ariaLabel:A=`${t}-axis`,...k}){return p=kt(p),m=kt(m),w=kt(w),$!==void 0&&($=dn($,"labelAnchor",["center","top","bottom"])),S=Um(S),Jg(p&&!zt(o)?d8(t,n,e,{stroke:o,strokeOpacity:a,strokeWidth:u,tickSize:p,tickPadding:m,tickRotate:w,x,ariaLabel:A,...k}):null,zt(c)?null:p8(t,n,e,{fill:c,fillOpacity:f,stroke:d,strokeOpacity:l,strokeWidth:h,textAnchor:s,tickSize:p,tickPadding:m,tickRotate:w,x,marginTop:M,marginRight:g,marginBottom:b,marginLeft:y,ariaLabel:A,...k}),!zt(c)&&_!==null?Er([],zm({fill:c,fillOpacity:f,...k},function(D,P,T,O,R){let U=O[t],{marginTop:L,marginRight:I,marginBottom:q,marginLeft:W}=t==="y"&&R.inset||R,z=$??(U.bandwidth?"center":"top"),K=C??(n==="right"?I:W)-3;return z==="center"?(this.textAnchor=void 0,this.lineAnchor=n==="right"?"bottom":"top",this.frameAnchor=n,this.rotate=-90):(this.textAnchor=n==="right"?"end":"start",this.lineAnchor=z,this.frameAnchor=`${z}-${n}`,this.rotate=0),this.dy=z==="top"?3-L:z==="bottom"?q-3:0,this.dx=n==="right"?K:-K,this.ariaLabel=`${A} label`,{facets:[[0]],channels:{text:{value:[Ym(t,U,{anchor:n,label:_,labelAnchor:z,labelArrow:S})]}}}})):null)}function Dm(t,n,e,{color:r="currentColor",opacity:i=1,stroke:o=r,strokeOpacity:a=i,strokeWidth:u=1,fill:c=r,fillOpacity:f=i,textAnchor:s,textStroke:d,textStrokeOpacity:l,textStrokeWidth:h,tickSize:p=t==="x"?6:0,tickPadding:m,tickRotate:w,y:x,margin:v,marginTop:M=v===void 0?n==="top"?30:0:v,marginRight:g=v===void 0?20:v,marginBottom:b=v===void 0?n==="bottom"?30:0:v,marginLeft:y=v===void 0?20:v,label:_,labelAnchor:$,labelArrow:S,labelOffset:C,ariaLabel:A=`${t}-axis`,...k}){return p=kt(p),m=kt(m),w=kt(w),$!==void 0&&($=dn($,"labelAnchor",["center","left","right"])),S=Um(S),Jg(p&&!zt(o)?h8(t,n,e,{stroke:o,strokeOpacity:a,strokeWidth:u,tickSize:p,tickPadding:m,tickRotate:w,y:x,ariaLabel:A,...k}):null,zt(c)?null:g8(t,n,e,{fill:c,fillOpacity:f,stroke:d,strokeOpacity:l,strokeWidth:h,textAnchor:s,tickSize:p,tickPadding:m,tickRotate:w,y:x,marginTop:M,marginRight:g,marginBottom:b,marginLeft:y,ariaLabel:A,...k}),!zt(c)&&_!==null?Er([],zm({fill:c,fillOpacity:f,...k},function(D,P,T,O,R){let U=O[t],{marginTop:L,marginRight:I,marginBottom:q,marginLeft:W}=t==="x"&&R.inset||R,z=$??(U.bandwidth?"center":"right"),K=C??(n==="top"?L:q)-3;return z==="center"?(this.frameAnchor=n,this.textAnchor=void 0):(this.frameAnchor=`${n}-${z}`,this.textAnchor=z==="right"?"end":"start"),this.lineAnchor=n,this.dy=n==="top"?-K:K,this.dx=z==="right"?I-3:z==="left"?3-W:0,this.ariaLabel=`${A} label`,{facets:[[0]],channels:{text:{value:[Ym(t,U,{anchor:n,label:_,labelAnchor:z,labelArrow:S})]}}}})):null)}function d8(t,n,e,{strokeWidth:r=1,strokeLinecap:i=null,strokeLinejoin:o=null,facetAnchor:a=n+(t==="y"?"-empty":""),frameAnchor:u=n,tickSize:c,inset:f=0,insetLeft:s=f,insetRight:d=f,dx:l=0,y:h=t==="y"?void 0:null,ariaLabel:p,...m}){return Rr(f8,t,e,{ariaLabel:`${p} tick`,ariaHidden:!0},{strokeWidth:r,strokeLinecap:i,strokeLinejoin:o,facetAnchor:a,frameAnchor:u,y:h,...m,dx:n==="left"?+l-St+ +s:+l+St-d,anchor:"start",length:c,shape:n==="left"?M8:$8})}function h8(t,n,e,{strokeWidth:r=1,strokeLinecap:i=null,strokeLinejoin:o=null,facetAnchor:a=n+(t==="x"?"-empty":""),frameAnchor:u=n,tickSize:c,inset:f=0,insetTop:s=f,insetBottom:d=f,dy:l=0,x:h=t==="x"?void 0:null,ariaLabel:p,...m}){return Rr(c8,t,e,{ariaLabel:`${p} tick`,ariaHidden:!0},{strokeWidth:r,strokeLinejoin:o,strokeLinecap:i,facetAnchor:a,frameAnchor:u,x:h,...m,dy:n==="bottom"?+l-St-d:+l+St+ +s,anchor:"start",length:c,shape:n==="bottom"?x8:_8})}function p8(t,n,e,{facetAnchor:r=n+(t==="y"?"-empty":""),frameAnchor:i=n,tickSize:o,tickRotate:a=0,tickPadding:u=Math.max(3,9-o)+(Math.abs(a)>60?4*Math.cos(a*om):0),text:c,textAnchor:f=Math.abs(a)>60?"middle":n==="left"?"end":"start",lineAnchor:s=a>60?"top":a<-60?"bottom":"middle",fontVariant:d,inset:l=0,insetLeft:h=l,insetRight:p=l,dx:m=0,ariaLabel:w,y:x=t==="y"?void 0:null,...v}){return Rr(H3,t,e,{ariaLabel:`${w} tick label`},{facetAnchor:r,frameAnchor:i,text:c,textAnchor:f,lineAnchor:s,fontVariant:d,rotate:a,y:x,...v,dx:n==="left"?+m-o-u+ +h:+m+ +o+ +u-p},function(M,g,b,y,_){d===void 0&&(this.fontVariant=qm(M)),c===void 0&&(_.text=Bm(M,g,b,y,n))})}function g8(t,n,e,{facetAnchor:r=n+(t==="x"?"-empty":""),frameAnchor:i=n,tickSize:o,tickRotate:a=0,tickPadding:u=Math.max(3,9-o)+(Math.abs(a)>=10?4*Math.cos(a*om):0),text:c,textAnchor:f=Math.abs(a)>=10?a<0^n==="bottom"?"start":"end":"middle",lineAnchor:s=Math.abs(a)>=10?"middle":n==="bottom"?"top":"bottom",fontVariant:d,inset:l=0,insetTop:h=l,insetBottom:p=l,dy:m=0,x:w=t==="x"?void 0:null,ariaLabel:x,...v}){return Rr(G3,t,e,{ariaLabel:`${x} tick label`},{facetAnchor:r,frameAnchor:i,text:c===void 0?null:c,textAnchor:f,lineAnchor:s,fontVariant:d,rotate:a,x:w,...v,dy:n==="bottom"?+m+ +o+ +u-p:+m-o-u+ +h},function(M,g,b,y,_){d===void 0&&(this.fontVariant=qm(M)),c===void 0&&(_.text=Bm(M,g,b,y,n))})}function m8(){let[t,n]=se(...arguments);return Im("y",km(n),t,n)}function y8(){let[t,n]=se(...arguments);return Im("fy",Cm(n),t,n)}function b8(){let[t,n]=se(...arguments);return Om("x",Em(n),t,n)}function w8(){let[t,n]=se(...arguments);return Om("fx",Nm(n),t,n)}function Im(t,n,e,{y:r=t==="y"?void 0:null,x:i=null,x1:o=n==="left"?i:null,x2:a=n==="right"?i:null,ariaLabel:u=`${t}-grid`,ariaHidden:c=!0,...f}){return Rr(Da,t,e,{ariaLabel:u,ariaHidden:c},{y:r,x1:o,x2:a,...Fm(f)})}function Om(t,n,e,{x:r=t==="x"?void 0:null,y:i=null,y1:o=n==="top"?i:null,y2:a=n==="bottom"?i:null,ariaLabel:u=`${t}-grid`,ariaHidden:c=!0,...f}){return Rr(ym,t,e,{ariaLabel:u,ariaHidden:c},{x:r,y1:o,y2:a,...Fm(f)})}function Fm({color:t="currentColor",opacity:n=.1,stroke:e=t,strokeOpacity:r=n,strokeWidth:i=1,...o}){return{stroke:e,strokeOpacity:r,strokeWidth:i,...o}}function zm({fill:t,fillOpacity:n,fontFamily:e,fontSize:r,fontStyle:i,fontVariant:o,fontWeight:a,monospace:u,pointerEvents:c,shapeRendering:f,clip:s=!1},d){return[,t]=sn(t),[,n]=Rt(n),{facet:"super",x:null,y:null,fill:t,fillOpacity:n,fontFamily:e,fontSize:r,fontStyle:i,fontVariant:o,fontWeight:a,monospace:u,pointerEvents:c,shapeRendering:f,clip:s,initializer:d}}function Rr(t,n,e,r,i,o){let a;function u(s,d,l,h,p,m){let w=s==null&&(n==="fx"||n==="fy"),{[n]:x}=h;if(!x)throw new Error(`missing scale: ${n}`);let v=x.domain(),{interval:M,ticks:g,tickFormat:b,tickSpacing:y=n==="x"?80:35}=i;if(typeof g=="string"&&Wm(x)&&(M=g,g=void 0),g===void 0&&(g=Tr(M,x.type)??v8(x,y)),s==null){if(ce(g))s=Fe(g);else if(yr(g))s=is(g,...Yt(v));else if(x.interval){let $=x.interval;if(x.ticks){let[S,C]=Yt(v),A=(C-S)/$[Ri];$=K1($,A/g)??$,s=is($,S,C)}else{s=v;let S=s.length;$=K1($,S/g)??$,$!==x.interval&&(s=is($,...Yt(s)))}if($===x.interval){let S=Math.round(s.length/g);S>1&&(s=s.filter((C,A)=>A%S===0))}}else x.ticks?s=x.ticks(g):s=v;if(!x.ticks&&s.length&&s!==v){let $=new de(v);s=s.filter(S=>$.has(S)),s.length||ae(`Warning: the ${n}-axis ticks appear to not align with the scale domain, resulting in no ticks. Try different ticks?`)}n==="y"||n==="x"?d=[Vn(s)]:a[n]={scale:n,value:ht}}o?.call(this,x,s,g,b,a);let _=Object.fromEntries(Object.entries(a).map(([$,S])=>[$,{...S,value:ft(s,S.value)}]));return w&&(d=m.filterFacets(s,_)),{data:s,facets:d,channels:_}}let c=Mr(i).initializer,f=t(e,Mr({...i,initializer:u},c));return e==null?(a=f.channels,f.channels={}):a={},r!==void 0&&Object.assign(f,r),f.clip===void 0&&(f.clip=!1),f}function v8(t,n){let[e,r]=Yt(t.range());return(r-e)/n}function Bm(t,n,e,r,i){return{value:gl(t,n,e,r,i)}}function gl(t,n,e,r,i){return typeof r=="function"&&!(t.type==="log"&&t.tickFormat)?r:r===void 0&&n&&Bt(n)?Vx(t.type,n,i)??$r:r===void 0&&n&&pg(n)?String:t.tickFormat?t.tickFormat(typeof e=="number"?e:null,r):typeof r=="string"&&t.domain().length>0?(Bt(t.domain())?ne:Qn)(r):r===void 0?$r:Hn(r)}function is(t,n,e){return t.range(n,t.offset(t.floor(e)))}var x8={draw(t,n){t.moveTo(0,0),t.lineTo(0,n)}},_8={draw(t,n){t.moveTo(0,0),t.lineTo(0,-n)}},M8={draw(t,n){t.moveTo(0,0),t.lineTo(-n,0)}},$8={draw(t,n){t.moveTo(0,0),t.lineTo(n,0)}};function qm(t){return t.bandwidth&&!t.interval?void 0:"tabular-nums"}function Ym(t,n,{anchor:e,label:r=n.label,labelAnchor:i,labelArrow:o}={}){if(!(r==null||r.inferred&&Wm(n)&&/^(date|time|year)$/i.test(r))){if(r=String(r),o==="auto"&&(o=(!n.bandwidth||n.interval)&&!/[↑↓→←]/.test(r)),!o)return r;if(o===!0){let a=Y5(n);a&&(o=/x$/.test(t)||i==="center"?/x$/.test(t)===a<0?"left":"right":a<0?"up":"down")}switch(o){case"left":return`\u2190 ${r}`;case"right":return`${r} \u2192`;case"up":return e==="right"?`${r} \u2191`:`\u2191 ${r}`;case"down":return e==="right"?`${r} \u2193`:`\u2193 ${r}`}return r}}function Um(t="auto"){return zt(t)?!1:typeof t=="boolean"?t:dn(t,"labelArrow",["auto","up","right","down","left"])}function Wm(t){return Bt(t.domain())}function Ep(t,n){if(n==null)return n;let e=t(n);if(!e)throw new Error(`scale not found: ${n}`);return e}function Gm(t,{opacity:n,...e}={}){if(!qe(t)&&!Zg(t))throw new Error(`swatches legend requires ordinal or threshold color scale (not ${t.type})`);return Xm(t,e,(r,i,o,a)=>r.append("svg").attr("width",o).attr("height",a).attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",Rt(n)[1]).attr(t.key==="opacity"?"fill-opacity":"fill",i.scale).append("rect").attr("width","100%").attr("height","100%"))}var Hm=new WeakSet;function S8(t,{fill:n=t.hint?.fill!==void 0?t.hint.fill:"none",fillOpacity:e=1,stroke:r=t.hint?.stroke!==void 0?t.hint.stroke:zt(n)?"currentColor":"none",strokeOpacity:i=1,strokeWidth:o=1.5,r:a=4.5,...u}={},c){let[f,s]=sn(n),[d,l]=sn(r),h=Ep(c,f),p=Ep(c,d),m=a*a*Math.PI;e=Rt(e)[1],i=Rt(i)[1],o=Rt(o)[1];let w=Xm(t,u,(x,v,M,g)=>x.append("svg").attr("viewBox","-8 -8 16 16").attr("width",M).attr("height",g).attr("fill",f==="color"?b=>h.scale(b):s).attr("fill-opacity",e).attr("stroke",d==="color"?b=>p.scale(b):l).attr("stroke-opacity",i).attr("stroke-width",o).append("path").attr("d",b=>{let y=Ln();return t.scale(b).draw(y,m),y}));return(f==="color"||d==="color")&&Hm.add(w),w}function A8(t){return Hm.has(t)}function Xm(t,n={},e){let{columns:r,tickFormat:i,fontVariant:o=rm(t),swatchSize:a=15,swatchWidth:u=a,swatchHeight:c=a,marginLeft:f=0,className:s,style:d,width:l}=n,h=Js(n);s=ul(s),i=gl(t.scale,t.domain,void 0,i);let p=pt("div",h).attr("class",`${s}-swatches ${s}-swatches-${r!=null?"columns":"wrap"}`),m;return r!=null?(m=`:where(.${s}-swatches-columns .${s}-swatch) {
|
|
17
|
+
`:yield[n,e,!0],e+=i,n=e;break;default:++e;break}}yield[n,e,!0]}var Ap={a:56,b:63,c:57,d:63,e:58,f:37,g:62,h:60,i:26,j:26,k:55,l:26,m:88,n:60,o:60,p:62,q:62,r:39,s:54,t:38,u:60,v:55,w:79,x:54,y:55,z:55,A:69,B:67,C:73,D:74,E:61,F:58,G:76,H:75,I:28,J:55,K:67,L:58,M:89,N:75,O:78,P:65,Q:78,R:67,S:65,T:65,U:75,V:69,W:98,X:69,Y:67,Z:67,0:64,1:48,2:62,3:64,4:66,5:63,6:65,7:58,8:65,9:65," ":29,"!":32,'"':49,"'":31,"(":39,")":39,",":31,"-":48,".":31,"/":32,":":31,";":31,"?":52,"\u2018":31,"\u2019":31,"\u201C":47,"\u201D":47,"\u2026":82};function hl(t,n=0,e=t.length){let r=0;for(let i=n;i<e;i=Nr(t,i))r+=Ap[t[i]]??(Sm(t,i)?120:Ap.e);return r}function pl(t,n=0,e=t.length){let r=0;for(let i=n;i<e;i=Nr(t,i))r+=Sm(t,i)?126:63;return r}function _m({monospace:t,lineWidth:n,textOverflow:e}){if(e!=null||n==1/0)return o=>o.split(/\r\n?|\n/g);let r=t?pl:hl,i=n*100;return o=>K3(o,i,r)}function Mm({monospace:t,lineWidth:n,textOverflow:e}){if(e==null||n==1/0)return o=>o;let r=t?pl:hl,i=n*100;switch(e){case"clip-start":return o=>kp(o,i,r,"");case"clip-end":return o=>Tp(o,i,r,"");case"ellipsis-start":return o=>kp(o,i,r,wr);case"ellipsis-middle":return o=>J3(o,i,r,wr);case"ellipsis-end":return o=>Tp(o,i,r,wr)}}var wr="\u2026";function Sr(t,n,e,r){let i=[],o=0;for(let a=0,u=0,c=t.length;a<c;a=u){u=Nr(t,a);let f=e(t,a,u);if(o+f>n){for(o+=r;o>n&&a>0;)u=a,a=i.pop(),o-=e(t,a,u);return[a,n-o]}o+=f,i.push(a)}return[-1,0]}function Tp(t,n,e,r){t=t.trim();let i=e(r),[o]=Sr(t,n,e,i);return o<0?t:t.slice(0,o).trimEnd()+r}function J3(t,n,e,r){t=t.trim();let i=e(t);if(i<=n)return t;let o=e(r)/2,[a,u]=Sr(t,n/2,e,o),[c]=Sr(t,i-n/2-u+o,e,-o);return c<0?r:t.slice(0,a).trimEnd()+r+t.slice(Nr(t,c)).trimStart()}function kp(t,n,e,r){t=t.trim();let i=e(t);if(i<=n)return t;let o=e(r),[a]=Sr(t,i-n+o,e,-o);return a<0?r:r+t.slice(Nr(t,a)).trimStart()}var Ms=/[\p{Combining_Mark}\p{Emoji_Modifier}]+/uy,Cp=/\p{Extended_Pictographic}/uy;function Nr(t,n){return n+=t8(t,n)?2:1,e8(t,n)&&(n=Ms.lastIndex),n8(t,n)?Nr(t,n+1):n}function $m(t,n){return t.charCodeAt(n)<128}function t8(t,n){let e=t.charCodeAt(n);if(e>=55296&&e<56320){let r=t.charCodeAt(n+1);return r>=56320&&r<57344}return!1}function n8(t,n){return t.charCodeAt(n)===8205}function e8(t,n){return $m(t,n)?!1:(Ms.lastIndex=n,Ms.test(t))}function Sm(t,n){return $m(t,n)?!1:(Cp.lastIndex=n,Cp.test(t))}var r8={ariaLabel:"vector",fill:"none",stroke:"currentColor",strokeWidth:1.5,strokeLinejoin:"round",strokeLinecap:"round"},Am=3.5,i8=Am*5,Tm={draw(t,n,e){let r=n*e/i8;t.moveTo(0,0),t.lineTo(0,-n),t.moveTo(-r,r-n),t.lineTo(0,-n),t.lineTo(r,r-n)}},o8={draw(t,n,e){t.moveTo(-e,0),t.lineTo(0,-n),t.lineTo(e,0)}},a8=new Map([["arrow",Tm],["spike",o8]]);function u8(t){return t&&typeof t.draw=="function"}function c8(t){if(u8(t))return t;let n=a8.get(`${t}`.toLowerCase());if(n)return n;throw new Error(`invalid shape: ${t}`)}var wa=class extends Ct{constructor(n,e={}){let{x:r,y:i,r:o=Am,length:a,rotate:u,shape:c=Tm,anchor:f="middle",frameAnchor:s}=e,[d,l]=Rt(a,12),[h,p]=Rt(u,0);super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},length:{value:d,scale:"length",optional:!0},rotate:{value:h,optional:!0}},e,r8),this.r=+o,this.length=l,this.rotate=p,this.shape=c8(c),this.anchor=dn(f,"anchor",["start","middle","end"]),this.frameAnchor=ka(s)}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,length:s,rotate:d}=r,{length:l,rotate:h,anchor:p,shape:m,r:v}=this,[x,w]=zi(this,i);return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,{x:c&&a,y:f&&u}).call(M=>M.selectAll().data(n).enter().append("path").call(Lt,this).attr("transform",dl`translate(${c?g=>c[g]:x},${f?g=>f[g]:w})${d?g=>` rotate(${d[g]})`:h?` rotate(${h})`:""}${p==="start"?"":p==="end"?s?g=>` translate(0,${s[g]})`:` translate(0,${l})`:s?g=>` translate(0,${s[g]/2})`:` translate(0,${l/2})`}`).attr("d",s?g=>{let b=Ln();return m.draw(b,s[g],v),b}:(()=>{let g=Ln();return m.draw(g,l,v),g})()).call(ln,this,r)).node()}};function f8(t,n={}){let{x:e=ht,...r}=n;return new wa(t,{...r,x:e})}function s8(t,n={}){let{y:e=ht,...r}=n;return new wa(t,{...r,y:e})}function se(t,n){return arguments.length<2&&!ce(t)&&(n=t,t=null),n===void 0&&(n={}),[t,n]}function Ia({anchor:t}={},n){return t===void 0?n[0]:dn(t,"anchor",n)}function km(t){return Ia(t,["left","right"])}function Cm(t){return Ia(t,["right","left"])}function Em(t){return Ia(t,["bottom","top"])}function Nm(t){return Ia(t,["top","bottom"])}function Rm(){let[t,n]=se(...arguments);return Pm("y",km(n),t,n)}function l8(){let[t,n]=se(...arguments);return Pm("fy",Cm(n),t,n)}function Lm(){let[t,n]=se(...arguments);return Dm("x",Em(n),t,n)}function d8(){let[t,n]=se(...arguments);return Dm("fx",Nm(n),t,n)}function Pm(t,n,e,{color:r="currentColor",opacity:i=1,stroke:o=r,strokeOpacity:a=i,strokeWidth:u=1,fill:c=r,fillOpacity:f=i,textAnchor:s,textStroke:d,textStrokeOpacity:l,textStrokeWidth:h,tickSize:p=t==="y"?6:0,tickPadding:m,tickRotate:v,x,margin:w,marginTop:M=w===void 0?20:w,marginRight:g=w===void 0?n==="right"?40:0:w,marginBottom:b=w===void 0?20:w,marginLeft:y=w===void 0?n==="left"?40:0:w,label:_,labelAnchor:$,labelArrow:S,labelOffset:C,ariaLabel:A=`${t}-axis`,...k}){return p=kt(p),m=kt(m),v=kt(v),$!==void 0&&($=dn($,"labelAnchor",["center","top","bottom"])),S=Um(S),Jg(p&&!Bt(o)?h8(t,n,e,{stroke:o,strokeOpacity:a,strokeWidth:u,tickSize:p,tickPadding:m,tickRotate:v,x,ariaLabel:A,...k}):null,Bt(c)?null:g8(t,n,e,{fill:c,fillOpacity:f,stroke:d,strokeOpacity:l,strokeWidth:h,textAnchor:s,tickSize:p,tickPadding:m,tickRotate:v,x,marginTop:M,marginRight:g,marginBottom:b,marginLeft:y,ariaLabel:A,...k}),!Bt(c)&&_!==null?Er([],zm({fill:c,fillOpacity:f,...k},function(D,P,T,O,R){let U=O[t],{marginTop:L,marginRight:I,marginBottom:q,marginLeft:W}=t==="y"&&R.inset||R,z=$??(U.bandwidth?"center":"top"),K=C??(n==="right"?I:W)-3;return z==="center"?(this.textAnchor=void 0,this.lineAnchor=n==="right"?"bottom":"top",this.frameAnchor=n,this.rotate=-90):(this.textAnchor=n==="right"?"end":"start",this.lineAnchor=z,this.frameAnchor=`${z}-${n}`,this.rotate=0),this.dy=z==="top"?3-L:z==="bottom"?q-3:0,this.dx=n==="right"?K:-K,this.ariaLabel=`${A} label`,{facets:[[0]],channels:{text:{value:[Ym(t,U,{anchor:n,label:_,labelAnchor:z,labelArrow:S})]}}}})):null)}function Dm(t,n,e,{color:r="currentColor",opacity:i=1,stroke:o=r,strokeOpacity:a=i,strokeWidth:u=1,fill:c=r,fillOpacity:f=i,textAnchor:s,textStroke:d,textStrokeOpacity:l,textStrokeWidth:h,tickSize:p=t==="x"?6:0,tickPadding:m,tickRotate:v,y:x,margin:w,marginTop:M=w===void 0?n==="top"?30:0:w,marginRight:g=w===void 0?20:w,marginBottom:b=w===void 0?n==="bottom"?30:0:w,marginLeft:y=w===void 0?20:w,label:_,labelAnchor:$,labelArrow:S,labelOffset:C,ariaLabel:A=`${t}-axis`,...k}){return p=kt(p),m=kt(m),v=kt(v),$!==void 0&&($=dn($,"labelAnchor",["center","left","right"])),S=Um(S),Jg(p&&!Bt(o)?p8(t,n,e,{stroke:o,strokeOpacity:a,strokeWidth:u,tickSize:p,tickPadding:m,tickRotate:v,y:x,ariaLabel:A,...k}):null,Bt(c)?null:m8(t,n,e,{fill:c,fillOpacity:f,stroke:d,strokeOpacity:l,strokeWidth:h,textAnchor:s,tickSize:p,tickPadding:m,tickRotate:v,y:x,marginTop:M,marginRight:g,marginBottom:b,marginLeft:y,ariaLabel:A,...k}),!Bt(c)&&_!==null?Er([],zm({fill:c,fillOpacity:f,...k},function(D,P,T,O,R){let U=O[t],{marginTop:L,marginRight:I,marginBottom:q,marginLeft:W}=t==="x"&&R.inset||R,z=$??(U.bandwidth?"center":"right"),K=C??(n==="top"?L:q)-3;return z==="center"?(this.frameAnchor=n,this.textAnchor=void 0):(this.frameAnchor=`${n}-${z}`,this.textAnchor=z==="right"?"end":"start"),this.lineAnchor=n,this.dy=n==="top"?-K:K,this.dx=z==="right"?I-3:z==="left"?3-W:0,this.ariaLabel=`${A} label`,{facets:[[0]],channels:{text:{value:[Ym(t,U,{anchor:n,label:_,labelAnchor:z,labelArrow:S})]}}}})):null)}function h8(t,n,e,{strokeWidth:r=1,strokeLinecap:i=null,strokeLinejoin:o=null,facetAnchor:a=n+(t==="y"?"-empty":""),frameAnchor:u=n,tickSize:c,inset:f=0,insetLeft:s=f,insetRight:d=f,dx:l=0,y:h=t==="y"?void 0:null,ariaLabel:p,...m}){return Rr(s8,t,e,{ariaLabel:`${p} tick`,ariaHidden:!0},{strokeWidth:r,strokeLinecap:i,strokeLinejoin:o,facetAnchor:a,frameAnchor:u,y:h,...m,dx:n==="left"?+l-St+ +s:+l+St-d,anchor:"start",length:c,shape:n==="left"?$8:S8})}function p8(t,n,e,{strokeWidth:r=1,strokeLinecap:i=null,strokeLinejoin:o=null,facetAnchor:a=n+(t==="x"?"-empty":""),frameAnchor:u=n,tickSize:c,inset:f=0,insetTop:s=f,insetBottom:d=f,dy:l=0,x:h=t==="x"?void 0:null,ariaLabel:p,...m}){return Rr(f8,t,e,{ariaLabel:`${p} tick`,ariaHidden:!0},{strokeWidth:r,strokeLinejoin:o,strokeLinecap:i,facetAnchor:a,frameAnchor:u,x:h,...m,dy:n==="bottom"?+l-St-d:+l+St+ +s,anchor:"start",length:c,shape:n==="bottom"?_8:M8})}function g8(t,n,e,{facetAnchor:r=n+(t==="y"?"-empty":""),frameAnchor:i=n,tickSize:o,tickRotate:a=0,tickPadding:u=Math.max(3,9-o)+(Math.abs(a)>60?4*Math.cos(a*om):0),text:c,textAnchor:f=Math.abs(a)>60?"middle":n==="left"?"end":"start",lineAnchor:s=a>60?"top":a<-60?"bottom":"middle",fontVariant:d,inset:l=0,insetLeft:h=l,insetRight:p=l,dx:m=0,ariaLabel:v,y:x=t==="y"?void 0:null,...w}){return Rr(X3,t,e,{ariaLabel:`${v} tick label`},{facetAnchor:r,frameAnchor:i,text:c,textAnchor:f,lineAnchor:s,fontVariant:d,rotate:a,y:x,...w,dx:n==="left"?+m-o-u+ +h:+m+ +o+ +u-p},function(M,g,b,y,_){d===void 0&&(this.fontVariant=qm(M)),c===void 0&&(_.text=Bm(M,g,b,y,n))})}function m8(t,n,e,{facetAnchor:r=n+(t==="x"?"-empty":""),frameAnchor:i=n,tickSize:o,tickRotate:a=0,tickPadding:u=Math.max(3,9-o)+(Math.abs(a)>=10?4*Math.cos(a*om):0),text:c,textAnchor:f=Math.abs(a)>=10?a<0^n==="bottom"?"start":"end":"middle",lineAnchor:s=Math.abs(a)>=10?"middle":n==="bottom"?"top":"bottom",fontVariant:d,inset:l=0,insetTop:h=l,insetBottom:p=l,dy:m=0,x:v=t==="x"?void 0:null,ariaLabel:x,...w}){return Rr(H3,t,e,{ariaLabel:`${x} tick label`},{facetAnchor:r,frameAnchor:i,text:c===void 0?null:c,textAnchor:f,lineAnchor:s,fontVariant:d,rotate:a,x:v,...w,dy:n==="bottom"?+m+ +o+ +u-p:+m-o-u+ +h},function(M,g,b,y,_){d===void 0&&(this.fontVariant=qm(M)),c===void 0&&(_.text=Bm(M,g,b,y,n))})}function y8(){let[t,n]=se(...arguments);return Im("y",km(n),t,n)}function b8(){let[t,n]=se(...arguments);return Im("fy",Cm(n),t,n)}function w8(){let[t,n]=se(...arguments);return Om("x",Em(n),t,n)}function v8(){let[t,n]=se(...arguments);return Om("fx",Nm(n),t,n)}function Im(t,n,e,{y:r=t==="y"?void 0:null,x:i=null,x1:o=n==="left"?i:null,x2:a=n==="right"?i:null,ariaLabel:u=`${t}-grid`,ariaHidden:c=!0,...f}){return Rr(Da,t,e,{ariaLabel:u,ariaHidden:c},{y:r,x1:o,x2:a,...Fm(f)})}function Om(t,n,e,{x:r=t==="x"?void 0:null,y:i=null,y1:o=n==="top"?i:null,y2:a=n==="bottom"?i:null,ariaLabel:u=`${t}-grid`,ariaHidden:c=!0,...f}){return Rr(ym,t,e,{ariaLabel:u,ariaHidden:c},{x:r,y1:o,y2:a,...Fm(f)})}function Fm({color:t="currentColor",opacity:n=.1,stroke:e=t,strokeOpacity:r=n,strokeWidth:i=1,...o}){return{stroke:e,strokeOpacity:r,strokeWidth:i,...o}}function zm({fill:t,fillOpacity:n,fontFamily:e,fontSize:r,fontStyle:i,fontVariant:o,fontWeight:a,monospace:u,pointerEvents:c,shapeRendering:f,clip:s=!1},d){return[,t]=sn(t),[,n]=Rt(n),{facet:"super",x:null,y:null,fill:t,fillOpacity:n,fontFamily:e,fontSize:r,fontStyle:i,fontVariant:o,fontWeight:a,monospace:u,pointerEvents:c,shapeRendering:f,clip:s,initializer:d}}function Rr(t,n,e,r,i,o){let a;function u(s,d,l,h,p,m){let v=s==null&&(n==="fx"||n==="fy"),{[n]:x}=h;if(!x)throw new Error(`missing scale: ${n}`);let w=x.domain(),{interval:M,ticks:g,tickFormat:b,tickSpacing:y=n==="x"?80:35}=i;if(typeof g=="string"&&Wm(x)&&(M=g,g=void 0),g===void 0&&(g=Tr(M,x.type)??x8(x,y)),s==null){if(ce(g))s=Fe(g);else if(yr(g))s=is(g,...Ut(w));else if(x.interval){let $=x.interval;if(x.ticks){let[S,C]=Ut(w),A=(C-S)/$[Ri];$=K1($,A/g)??$,s=is($,S,C)}else{s=w;let S=s.length;$=K1($,S/g)??$,$!==x.interval&&(s=is($,...Ut(s)))}if($===x.interval){let S=Math.round(s.length/g);S>1&&(s=s.filter((C,A)=>A%S===0))}}else x.ticks?s=x.ticks(g):s=w;if(!x.ticks&&s.length&&s!==w){let $=new de(w);s=s.filter(S=>$.has(S)),s.length||ae(`Warning: the ${n}-axis ticks appear to not align with the scale domain, resulting in no ticks. Try different ticks?`)}n==="y"||n==="x"?d=[Vn(s)]:a[n]={scale:n,value:ht}}o?.call(this,x,s,g,b,a);let _=Object.fromEntries(Object.entries(a).map(([$,S])=>[$,{...S,value:ft(s,S.value)}]));return v&&(d=m.filterFacets(s,_)),{data:s,facets:d,channels:_}}let c=Mr(i).initializer,f=t(e,Mr({...i,initializer:u},c));return e==null?(a=f.channels,f.channels={}):a={},r!==void 0&&Object.assign(f,r),f.clip===void 0&&(f.clip=!1),f}function x8(t,n){let[e,r]=Ut(t.range());return(r-e)/n}function Bm(t,n,e,r,i){return{value:gl(t,n,e,r,i)}}function gl(t,n,e,r,i){return typeof r=="function"&&!(t.type==="log"&&t.tickFormat)?r:r===void 0&&n&&qt(n)?jx(t.type,n,i)??$r:r===void 0&&n&&pg(n)?String:t.tickFormat?t.tickFormat(typeof e=="number"?e:null,r):typeof r=="string"&&t.domain().length>0?(qt(t.domain())?ne:Qn)(r):r===void 0?$r:Hn(r)}function is(t,n,e){return t.range(n,t.offset(t.floor(e)))}var _8={draw(t,n){t.moveTo(0,0),t.lineTo(0,n)}},M8={draw(t,n){t.moveTo(0,0),t.lineTo(0,-n)}},$8={draw(t,n){t.moveTo(0,0),t.lineTo(-n,0)}},S8={draw(t,n){t.moveTo(0,0),t.lineTo(n,0)}};function qm(t){return t.bandwidth&&!t.interval?void 0:"tabular-nums"}function Ym(t,n,{anchor:e,label:r=n.label,labelAnchor:i,labelArrow:o}={}){if(!(r==null||r.inferred&&Wm(n)&&/^(date|time|year)$/i.test(r))){if(r=String(r),o==="auto"&&(o=(!n.bandwidth||n.interval)&&!/[↑↓→←]/.test(r)),!o)return r;if(o===!0){let a=U5(n);a&&(o=/x$/.test(t)||i==="center"?/x$/.test(t)===a<0?"left":"right":a<0?"up":"down")}switch(o){case"left":return`\u2190 ${r}`;case"right":return`${r} \u2192`;case"up":return e==="right"?`${r} \u2191`:`\u2191 ${r}`;case"down":return e==="right"?`${r} \u2193`:`\u2193 ${r}`}return r}}function Um(t="auto"){return Bt(t)?!1:typeof t=="boolean"?t:dn(t,"labelArrow",["auto","up","right","down","left"])}function Wm(t){return qt(t.domain())}function Ep(t,n){if(n==null)return n;let e=t(n);if(!e)throw new Error(`scale not found: ${n}`);return e}function Gm(t,{opacity:n,...e}={}){if(!qe(t)&&!Zg(t))throw new Error(`swatches legend requires ordinal or threshold color scale (not ${t.type})`);return Xm(t,e,(r,i,o,a)=>r.append("svg").attr("width",o).attr("height",a).attr("fill",t.key==="opacity"?t.color:null).attr("fill-opacity",Rt(n)[1]).attr(t.key==="opacity"?"fill-opacity":"fill",i.scale).append("rect").attr("width","100%").attr("height","100%"))}var Hm=new WeakSet;function A8(t,{fill:n=t.hint?.fill!==void 0?t.hint.fill:"none",fillOpacity:e=1,stroke:r=t.hint?.stroke!==void 0?t.hint.stroke:Bt(n)?"currentColor":"none",strokeOpacity:i=1,strokeWidth:o=1.5,r:a=4.5,...u}={},c){let[f,s]=sn(n),[d,l]=sn(r),h=Ep(c,f),p=Ep(c,d),m=a*a*Math.PI;e=Rt(e)[1],i=Rt(i)[1],o=Rt(o)[1];let v=Xm(t,u,(x,w,M,g)=>x.append("svg").attr("viewBox","-8 -8 16 16").attr("width",M).attr("height",g).attr("fill",f==="color"?b=>h.scale(b):s).attr("fill-opacity",e).attr("stroke",d==="color"?b=>p.scale(b):l).attr("stroke-opacity",i).attr("stroke-width",o).append("path").attr("d",b=>{let y=Ln();return t.scale(b).draw(y,m),y}));return(f==="color"||d==="color")&&Hm.add(v),v}function T8(t){return Hm.has(t)}function Xm(t,n={},e){let{columns:r,tickFormat:i,fontVariant:o=rm(t),swatchSize:a=15,swatchWidth:u=a,swatchHeight:c=a,marginLeft:f=0,className:s,style:d,width:l}=n,h=Js(n);s=ul(s),i=gl(t.scale,t.domain,void 0,i);let p=pt("div",h).attr("class",`${s}-swatches ${s}-swatches-${r!=null?"columns":"wrap"}`),m;return r!=null?(m=`:where(.${s}-swatches-columns .${s}-swatch) {
|
|
18
18
|
display: flex;
|
|
19
19
|
align-items: center;
|
|
20
20
|
break-inside: avoid;
|
|
@@ -27,7 +27,7 @@ ${e}`}function Xx(t){return t==="time"?la:t==="utc"?vi:Gx}function Vx(t,n,e){let
|
|
|
27
27
|
white-space: nowrap;
|
|
28
28
|
overflow: hidden;
|
|
29
29
|
text-overflow: ellipsis;
|
|
30
|
-
}`,p.style("columns",r).selectAll().data(t.domain).enter().append("div").attr("class",`${s}-swatch`).call(e,t,u,c).call(
|
|
30
|
+
}`,p.style("columns",r).selectAll().data(t.domain).enter().append("div").attr("class",`${s}-swatch`).call(e,t,u,c).call(v=>v.append("div").attr("class",`${s}-swatch-label`).attr("title",i).text(i))):(m=`:where(.${s}-swatches-wrap) {
|
|
31
31
|
display: flex;
|
|
32
32
|
align-items: center;
|
|
33
33
|
min-height: 33px;
|
|
@@ -37,7 +37,7 @@ ${e}`}function Xx(t){return t==="time"?la:t==="utc"?vi:Gx}function Vx(t,n,e){let
|
|
|
37
37
|
display: inline-flex;
|
|
38
38
|
align-items: center;
|
|
39
39
|
margin-right: 1em;
|
|
40
|
-
}`,p.selectAll().data(t.domain).enter().append("span").attr("class",`${s}-swatch`).call(e,t,u,c).append(function(){return this.ownerDocument.createTextNode(i.apply(this,arguments))})),p.call(
|
|
40
|
+
}`,p.selectAll().data(t.domain).enter().append("span").attr("class",`${s}-swatch`).call(e,t,u,c).append(function(){return this.ownerDocument.createTextNode(i.apply(this,arguments))})),p.call(v=>v.insert("style","*").text(`:where(.${s}-swatches) {
|
|
41
41
|
font-family: system-ui, sans-serif;
|
|
42
42
|
font-size: 10px;
|
|
43
43
|
margin-bottom: 0.5em;
|
|
@@ -46,7 +46,7 @@ ${e}`}function Xx(t){return t==="time"?la:t==="utc"?vi:Gx}function Vx(t,n,e){let
|
|
|
46
46
|
margin-right: 0.5em;
|
|
47
47
|
overflow: visible;
|
|
48
48
|
}
|
|
49
|
-
${m}`)).style("margin-left",f?`${+f}px`:null).style("width",l===void 0?null:`${+l}px`).style("font-variant",$t(o,"normal")).call(cl,d).node()}var $s=new Map([["symbol",S8],["color",k8],["opacity",C8]]);function T8(t,n,e={}){return(r,i)=>{if(!$s.has(r))throw new Error(`unknown legend type: ${r}`);if(r in t)return $s.get(r)(t[r],Vm(n,e[r],i),o=>t[o])}}function Vm({className:t,...n},{label:e,ticks:r,tickFormat:i}={},o){return gg(o,{className:t,...n},{label:e,ticks:r,tickFormat:i})}function k8(t,{legend:n=!0,...e}){if(n===!0&&(n=t.type==="ordinal"?"swatches":"ramp"),t.domain!==void 0)switch(`${n}`.toLowerCase()){case"swatches":return Gm(t,e);case"ramp":return im(t,e);default:throw new Error(`unknown color legend type: ${n}`)}}function C8(t,{legend:n=!0,color:e="currentColor",...r}){switch(n===!0&&(n=t.type==="ordinal"?"swatches":"ramp"),t={...t,color:e,key:"opacity"},`${n}`.toLowerCase()){case"swatches":return Gm(t,r);case"ramp":{let i=im(t,r),o=i3(),a=Nn(i);a.select("image").attr("filter",`url(#${o})`);let u=a.append("filter").attr("id",o);return u.append("feFlood").attr("flood-color",e),u.append("feComposite").attr("in2","SourceGraphic").attr("operator","in"),i}default:throw new Error(`unknown opacity legend type: ${n}`)}}function E8(t,n,e){let r=[],i=!1;for(let[o,a]of $s){if(!(o in t)||o==="color"&&i)continue;let u=gg(e[o],{legend:e.legend});if(!u.legend)continue;let c=a(t[o],Vm(n,t[o],u),f=>t[f]);c!=null&&(o==="symbol"&&A8(c)&&(i=!0),r.push(c))}return r}function ml(t){return fg(t)?t:{...t,x:ht}}function yl(t){return sg(t)?t:{...t,y:ht}}function N8(t,n){if(n.length===1)return{data:t,facets:n};let e=Mi(t),r=new Uint8Array(e),i=0;for(let u of n)for(let c of u)r[c]&&++i,r[c]=1;if(i===0)return{data:t,facets:n};t=_i(t);let o=t[eg]=new Uint32Array(e+i);n=n.map(u=>_i(u,Uint32Array));let a=e;r.fill(0);for(let u of n)for(let c=0,f=u.length;c<f;++c){let s=u[c];r[s]?(u[c]=a,t[a]=t[s],o[a]=s,++a):o[s]=s,r[s]=1}return{data:t,facets:n}}function R8(t={},n={}){arguments.length===1&&([t,n]=jm(t));let{y1:e,y:r=e,x:i,...o}=n,[a,u,c,f]=Zm(r,i,"y","x",t,o);return{...a,y1:e,y:u,x1:c,x2:f,x:ma(c,f)}}function L8(t={},n={}){arguments.length===1&&([t,n]=jm(t));let{x1:e,x:r=e,y:i,...o}=n,[a,u,c,f]=Zm(r,i,"x","y",t,o);return{...a,x1:e,x:u,y1:c,y2:f,y:ma(c,f)}}function bl({x:t,x1:n,x2:e,...r}={}){return r=Cr(r,"y"),n===void 0&&e===void 0?R8({x:t,...r}):([n,e]=lg(t,n,e),{...r,x1:n,x2:e})}function wl({y:t,y1:n,y2:e,...r}={}){return r=Cr(r,"x"),n===void 0&&e===void 0?L8({y:t,...r}):([n,e]=lg(t,n,e),{...r,y1:n,y2:e})}function jm(t){let{offset:n,order:e,reverse:r,...i}=t;return[{offset:n,order:e,reverse:r},i]}var P8={length:!0};function Zm(t,n=Jx,e,r,{offset:i,order:o,reverse:a},u){if(n===null)throw new Error(`stack requires ${r}`);let c=qs(u),[f,s]=Ft(t),[d,l]=ga(n),[h,p]=ga(n);return d.hint=h.hint=P8,i=D8(i),o=F8(o,i,r),[Ii(u,(m,w,x)=>{({data:m,facets:w}=N8(m,w));let v=t==null?void 0:s(ya(ft(m,t),x?.[e])),M=ft(m,n,Float64Array),g=ft(m,c),b=o&&o(m,v,M,g),y=Mi(m),_=l(new Float64Array(y).fill(NaN)),$=p(new Float64Array(y).fill(NaN)),S=[];for(let C of w){let A=v?Array.from(Or(C,k=>v[k]).values()):[C];if(b)for(let k of A)k.sort(b);for(let k of A){let D=0,P=0;a&&k.reverse();for(let T of k){let O=M[T];O<0?D=$[T]=(_[T]=D)+O:O>=0&&(P=$[T]=(_[T]=P)+O)}}S.push(A)}return i&&i(S,_,$,g),{data:m,facets:w}}),f,d,h]}function D8(t){if(t!=null){if(typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"expand":case"normalize":return I8;case"center":case"silhouette":return O8;case"wiggle":return Qm}throw new Error(`unknown offset: ${t}`)}}function Km(t,n){let e=0,r=0;for(let i of t){let o=n[i];o<e&&(e=o),o>r&&(r=o)}return[e,r]}function I8(t,n,e){for(let r of t)for(let i of r){let[o,a]=Km(i,e);for(let u of i){let c=1/(a-o||1);n[u]=c*(n[u]-o),e[u]=c*(e[u]-o)}}}function O8(t,n,e){for(let r of t){for(let i of r){let[o,a]=Km(i,e);for(let u of i){let c=(a+o)/2;n[u]-=c,e[u]-=c}}Jm(r,n,e)}ty(t,n,e)}function Qm(t,n,e,r){for(let i of t){let o=new on,a=0;for(let u of i){let c=-1,f=u.map(h=>Math.abs(e[h]-n[h])),s=u.map(h=>{c=r?r[h]:++c;let p=e[h]-n[h],m=o.has(c)?p-o.get(c):0;return o.set(c,p),m}),d=[0,...zl(s)];for(let h of u)n[h]+=a,e[h]+=a;let l=pn(f);l&&(a-=pn(f,(h,p)=>(s[p]/2+d[p])*h)/l)}Jm(i,n,e)}ty(t,n,e)}function Jm(t,n,e){let r=an(t,i=>an(i,o=>n[o]));for(let i of t)for(let o of i)n[o]-=r,e[o]-=r}function ty(t,n,e){let r=t.length;if(r===1)return;let i=t.map(u=>u.flat()),o=i.map(u=>(an(u,c=>n[c])+qt(u,c=>e[c]))/2),a=an(o);for(let u=0;u<r;u++){let c=a-o[u];for(let f of i[u])n[f]+=c,e[f]+=c}}function F8(t,n,e){if(t===void 0&&n===Qm)return Np(fn);if(t!=null){if(typeof t=="string"){let r=t.startsWith("-"),i=r?pa:fn;switch((r?t.slice(1):t).toLowerCase()){case"value":case e:return z8(i);case"z":return B8(i);case"sum":return q8(i);case"appearance":return Y8(i);case"inside-out":return Np(i)}return Rp(rg(t))}if(typeof t=="function")return(t.length===1?Rp:U8)(t);if(Ie(t))return W8(t);throw new Error(`invalid order: ${t}`)}}function z8(t){return(n,e,r)=>(i,o)=>t(r[i],r[o])}function B8(t){return(n,e,r,i)=>(o,a)=>t(i[o],i[a])}function q8(t){return Oa(t,(n,e,r,i)=>ji(Vn(n),o=>pn(o,a=>r[a]),o=>i[o]))}function Y8(t){return Oa(t,(n,e,r,i)=>ji(Vn(n),o=>e[Ha(o,a=>r[a])],o=>i[o]))}function Np(t){return Oa(t,(n,e,r,i)=>{let o=Vn(n),a=ji(o,d=>e[Ha(d,l=>r[l])],d=>i[d]),u=he(o,d=>pn(d,l=>r[l]),d=>i[d]),c=[],f=[],s=0;for(let d of a)s<0?(s+=u.get(d),c.push(d)):(s-=u.get(d),f.push(d));return f.reverse().concat(c)})}function Rp(t){return n=>{let e=ft(n,t);return(r,i)=>fn(e[r],e[i])}}function U8(t){return n=>Ie(n)?(e,r)=>t(n[e],n[r]):(e,r)=>t(n.get(e),n.get(r))}function W8(t){return Oa(fn,()=>t)}function Oa(t,n){return(e,r,i,o)=>{if(!o)throw new Error("missing channel: z");let a=new on(n(e,r,i,o).map((u,c)=>[u,c]));return(u,c)=>t(a.get(o[u]),a.get(o[c]))}}var G8={ariaLabel:"rect"},ki=class extends Ct{constructor(n,e={}){let{x1:r,y1:i,x2:o,y2:a}=e;super(n,{x1:{value:r,scale:"x",type:r!=null&&o==null?"band":void 0,optional:!0},y1:{value:i,scale:"y",type:i!=null&&a==null?"band":void 0,optional:!0},x2:{value:o,scale:"x",optional:!0},y2:{value:a,scale:"y",optional:!0}},e,G8),vl(this,e),xl(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{x1:c,y1:f,x2:s,y2:d}=r,{marginTop:l,marginRight:h,marginBottom:p,marginLeft:m,width:w,height:x}=i,{projection:v}=o,{insetTop:M,insetRight:g,insetBottom:b,insetLeft:y}=this,{rx:_,ry:$,rx1y1:S,rx1y2:C,rx2y1:A,rx2y2:k}=this;(c||s)&&!v&&kn(a)&&(c=s=null),(f||d)&&!v&&kn(u)&&(f=d=null);let D=a?.bandwidth?a.bandwidth():0,P=u?.bandwidth?u.bandwidth():0;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,{},0,0).call(T=>T.selectAll().data(n).enter().call(S||C||A||k?O=>O.append("path").call(Lt,this).call(_l,c&&s?R=>c[R]+(s[R]<c[R]?-g:y):c?R=>c[R]+y:m+y,f&&d?R=>f[R]+(d[R]<f[R]?-b:M):f?R=>f[R]+M:l+M,c&&s?R=>s[R]-(s[R]<c[R]?-y:g):c?R=>c[R]+D-g:w-h-g,f&&d?R=>d[R]-(d[R]<f[R]?-M:b):f?R=>f[R]+P-b:x-p-b,this).call(ln,this,r):O=>O.append("rect").call(Lt,this).attr("x",c?s?R=>Math.min(c[R],s[R])+y:R=>c[R]+y:m+y).attr("y",f?d?R=>Math.min(f[R],d[R])+M:R=>f[R]+M:l+M).attr("width",c?s?R=>Math.max(0,Math.abs(s[R]-c[R])+D-y-g):D-y-g:w-h-m-g-y).attr("height",f?d?R=>Math.max(0,Math.abs(f[R]-d[R])+P-M-b):P-M-b:x-l-p-M-b).call(X,"rx",_).call(X,"ry",$).call(ln,this,r))).node()}};function vl(t,{inset:n=0,insetTop:e=n,insetRight:r=n,insetBottom:i=n,insetLeft:o=n}={}){t.insetTop=kt(e),t.insetRight=kt(r),t.insetBottom=kt(i),t.insetLeft=kt(o)}function xl(t,{r:n,rx:e,ry:r,rx1:i=n,ry1:o=n,rx2:a=n,ry2:u=n,rx1y1:c=i!==void 0?+i:o!==void 0?+o:0,rx1y2:f=i!==void 0?+i:u!==void 0?+u:0,rx2y1:s=a!==void 0?+a:o!==void 0?+o:0,rx2y2:d=a!==void 0?+a:u!==void 0?+u:0}={}){c||f||s||d?(t.rx1y1=c,t.rx1y2=f,t.rx2y1=s,t.rx2y2=d):(t.rx=$t(e,"auto"),t.ry=$t(r,"auto"))}function _l(t,n,e,r,i,o){let{rx1y1:a,rx1y2:u,rx2y1:c,rx2y2:f}=o;typeof n!="function"&&(n=Hn(n)),typeof e!="function"&&(e=Hn(e)),typeof r!="function"&&(r=Hn(r)),typeof i!="function"&&(i=Hn(i));let s=Math.max(Math.abs(a+c),Math.abs(u+f)),d=Math.max(Math.abs(a+u),Math.abs(c+f));t.attr("d",l=>{let h=n(l),p=e(l),m=r(l),w=i(l),x=h>m,v=p>w,M=x?m:h,g=x?h:m,b=v?w:p,y=v?p:w,_=Math.min(1,(g-M)/s,(y-b)/d),$=_*(x?v?f:c:v?u:a),S=_*(x?v?u:a:v?f:c),C=_*(x?v?a:u:v?c:f),A=_*(x?v?c:f:v?a:u);return`M${M},${b+ua($,A)}A${$},${$} 0 0 ${$<0?0:1} ${M+aa($,A)},${b}H${g-aa(S,C)}A${S},${S} 0 0 ${S<0?0:1} ${g},${b+ua(S,C)}V${y-ua(C,S)}A${C},${C} 0 0 ${C<0?0:1} ${g-aa(C,S)},${y}H${M+aa(A,$)}A${A},${A} 0 0 ${A<0?0:1} ${M},${y-ua(A,$)}Z`})}function aa(t,n){return n<0?t:Math.abs(t)}function ua(t,n){return n<0?Math.abs(t):t}function H8(t,n){return new ki(t,dm(hm(n)))}function X8(t,n={}){return Sa(n)||(n={...n,y:Oe,x2:ht,interval:1}),new ki(t,bl(hm(ml(n))))}function V8(t,n={}){return Sa(n)||(n={...n,x:Oe,y2:ht,interval:1}),new ki(t,wl(dm(yl(n))))}var j8={ariaLabel:"frame",fill:"none",stroke:"currentColor",clip:!1},Z8={ariaLabel:"frame",fill:null,stroke:"currentColor",strokeLinecap:"square",clip:!1},Ss=class extends Ct{constructor(n={}){let{anchor:e=null}=n;super(da,void 0,n,e==null?j8:Z8),this.anchor=ug(e,"anchor",["top","right","bottom","left"]),vl(this,n),e||xl(this,n)}render(n,e,r,i,o){let{marginTop:a,marginRight:u,marginBottom:c,marginLeft:f,width:s,height:d}=i,{anchor:l,insetTop:h,insetRight:p,insetBottom:m,insetLeft:w}=this,{rx:x,ry:v,rx1y1:M,rx1y2:g,rx2y1:b,rx2y2:y}=this,_=f+w,$=s-u-p,S=a+h,C=d-c-m;return pt(l?"svg:line":M||g||b||y?"svg:path":"svg:rect",o).datum(0).call(Ht,this,i,o).call(Lt,this).call(ln,this,r).call(Pt,this,{}).call(l==="left"?A=>A.attr("x1",_).attr("x2",_).attr("y1",S).attr("y2",C):l==="right"?A=>A.attr("x1",$).attr("x2",$).attr("y1",S).attr("y2",C):l==="top"?A=>A.attr("x1",_).attr("x2",$).attr("y1",S).attr("y2",S):l==="bottom"?A=>A.attr("x1",_).attr("x2",$).attr("y1",C).attr("y2",C):M||g||b||y?A=>A.call(_l,_,S,$,C,this):A=>A.attr("x",_).attr("y",S).attr("width",$-_).attr("height",C-S).attr("rx",x).attr("ry",v)).node()}};function K8(t){return new Ss(t)}var os={ariaLabel:"tip",fill:"var(--plot-background)",stroke:"currentColor",pool:!0},Q8=new Set(["geometry","href","src","ariaLabel","scales","contours"]),As=class extends Ct{constructor(n,e={}){e.tip&&(e={...e,tip:!1}),e.title===void 0&&ce(n)&&hg(n)&&(e={...e,title:ht});let{x:r,y:i,x1:o,x2:a,y1:u,y2:c,anchor:f,preferredAnchor:s="bottom",monospace:d,fontFamily:l=d?"ui-monospace, monospace":void 0,fontSize:h,fontStyle:p,fontVariant:m,fontWeight:w,lineHeight:x=1,lineWidth:v=20,frameAnchor:M,format:g,textAnchor:b="start",textOverflow:y,textPadding:_=8,title:$,pointerSize:S=12,pathFilter:C="drop-shadow(0 3px 4px rgba(0,0,0,0.2))"}=e;super(n,{x:{value:o!=null&&a!=null?null:r,scale:"x",optional:!0},y:{value:u!=null&&c!=null?null:i,scale:"y",optional:!0},x1:{value:o,scale:"x",optional:a==null},y1:{value:u,scale:"y",optional:c==null},x2:{value:a,scale:"x",optional:o==null},y2:{value:c,scale:"y",optional:u==null},title:{value:$,optional:!0}},e,os),this.anchor=ds(f,"anchor"),this.preferredAnchor=ds(s,"preferredAnchor"),this.frameAnchor=ka(M),this.textAnchor=$t(b,"middle"),this.textPadding=+_,this.pointerSize=+S,this.pathFilter=Tt(C),this.lineHeight=+x,this.lineWidth=+v,this.textOverflow=vm(y),this.monospace=!!d,this.fontFamily=Tt(l),this.fontSize=kt(h),this.fontStyle=Tt(p),this.fontVariant=Tt(m),this.fontWeight=Tt(w);for(let A in os)A in this.channels&&(this[A]=os[A]);this.splitLines=_m(this),this.clipLine=Mm(this),this.format=typeof g=="string"||typeof g=="function"?{title:g}:{...g}}render(n,e,r,i,o){let a=this,{x:u,y:c,fx:f,fy:s}=e,{ownerSVGElement:d,document:l}=o,{anchor:h,monospace:p,lineHeight:m,lineWidth:w}=this,{textPadding:x,pointerSize:v,pathFilter:M}=this,{marginTop:g,marginLeft:b}=i,{x1:y,y1:_,x2:$,y2:S,x:C=y??$,y:A=_??S}=r,k=f?f(n.fx)-b:0,D=s?s(n.fy)-g:0,[P,T]=zi(this,i),O=nm(r,P),R=em(r,T),U=p?pl:hl,L=U(wr),I,q;"title"in r?(I=Lp.call(this,{title:r.channels.title},e),q=r4):(I=Lp.call(this,r.channels,e),q=i4);let W=new Array(n.length);for(let at of n)W[at]=q.call(a,at,n,I,e,r);n=n.filter(at=>W[at]!=null);let z=pt("svg:g",o).call(Ht,this,i,o).call(xm,this).call(Pt,this,{x:C&&u,y:A&&c}).call(at=>at.selectAll().data(n).enter().append("g").attr("transform",B=>`translate(${Math.round(O(B))},${Math.round(R(B))})`).call(Lt,this).call(B=>B.append("path").attr("filter",M)).call(B=>B.append("text").each(function(G){let N=Nn(this);this.setAttribute("fill","currentColor"),this.setAttribute("fill-opacity",1),this.setAttribute("stroke","none");let F=W[G];if(typeof F=="string")for(let Y of a.splitLines(F))K(N,{value:a.clipLine(Y)});else{let Y=new Set;for(let E of F){let{label:nt=""}=E;nt&&Y.has(nt)||(Y.add(nt),K(N,E))}}})));function K(at,{label:B,value:G,color:N,opacity:F}){B??="",G??="";let Y=N!=null||F!=null,E,nt=w*100,[H]=Sr(B,nt,U,L);if(H>=0)B=B.slice(0,H).trimEnd()+wr,E=G.trim(),G="";else{(B||!G&&!Y)&&(G=" "+G);let[rt]=Sr(G,nt-U(B),U,L);rt>=0&&(E=G.trim(),G=G.slice(0,rt).trimEnd()+wr)}let J=at.append("tspan").attr("x",0).attr("dy",`${m}em`).text("\u200B");B&&J.append("tspan").attr("font-weight","bold").text(B),G&&J.append(()=>l.createTextNode(G)),Y&&J.append("tspan").text(" \u25A0").attr("fill",N).attr("fill-opacity",F).style("user-select","none"),E&&J.append("title").text(E)}function et(){let{width:at,height:B}=i.facet??i;z.selectChildren().each(function(G){let{x:N,width:F,height:Y}=this.getBBox();F=Math.round(F),Y=Math.round(Y);let E=h;if(E===void 0){let J=O(G)+k,rt=R(G)+D,ct=J+F+v+x*2<at,Cn=J-F-v-x*2>0,Pr=rt+Y+v+x*2<B,le=rt-Y-v-x*2>0;E=ct&&Cn?Pr&&le?a.preferredAnchor:le?"bottom":"top":Pr&&le?ct?"left":"right":(ct||Cn)&&(Pr||le)?`${le?"bottom":"top"}-${ct?"left":"right"}`:a.preferredAnchor}let nt=this.firstChild,H=this.lastChild;if(nt.setAttribute("d",e4(E,v,x,F,Y)),N)for(let J of H.childNodes)J.setAttribute("x",-N);H.setAttribute("y",`${+t4(E,H.childNodes.length,m).toFixed(6)}em`),H.setAttribute("transform",`translate(${n4(E,v,x,F,Y)})`)}),z.attr("visibility",null)}return n.length&&(z.attr("visibility","hidden"),d.isConnected?Promise.resolve().then(et):typeof requestAnimationFrame<"u"&&requestAnimationFrame(et)),z.node()}};function J8(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new As(t,{...r,x:n,y:e})}function t4(t,n,e){return/^top(?:-|$)/.test(t)?.94-e:-.29-n*e}function n4(t,n,e,r,i){switch(t){case"middle":return[-r/2,i/2];case"top-left":return[e,n/2+e];case"top":return[-r/2,n/2+e];case"top-right":return[-r-e,n/2+e];case"right":return[-n/2-r-e,i/2];case"bottom-left":return[e,-n/2-e];case"bottom":return[-r/2,-n/2-e];case"bottom-right":return[-r-e,-n/2-e];case"left":return[e+n/2,i/2]}}function e4(t,n,e,r,i){let o=r+e*2,a=i+e*2;switch(t){case"middle":return`M${-o/2},${-a/2}h${o}v${a}h${-o}z`;case"top-left":return`M0,0l${n/2},${n/2}h${o-n/2}v${a}h${-o}z`;case"top":return`M0,0l${n/2},${n/2}h${(o-n)/2}v${a}h${-o}v${-a}h${(o-n)/2}z`;case"top-right":return`M0,0l${-n/2},${n/2}h${n/2-o}v${a}h${o}z`;case"right":return`M0,0l${-n/2},${-n/2}v${n/2-a/2}h${-o}v${a}h${o}v${n/2-a/2}z`;case"bottom-left":return`M0,0l${n/2},${-n/2}h${o-n/2}v${-a}h${-o}z`;case"bottom":return`M0,0l${n/2},${-n/2}h${(o-n)/2}v${-a}h${-o}v${a}h${(o-n)/2}z`;case"bottom-right":return`M0,0l${-n/2},${-n/2}h${n/2-o}v${-a}h${o}z`;case"left":return`M0,0l${n/2},${-n/2}v${n/2-a/2}h${o}v${a}h${-o}v${n/2-a/2}z`}}function Lp(t,n){let e={},r=this.format;r=Pp(r,t,"x"),r=Pp(r,t,"y"),this.format=r;for(let i in r){let o=r[i];if(!(o===null||o===!1))if(i==="fx"||i==="fy")e[i]=!0;else{let a=op(t,i);a&&(e[i]=a)}}for(let i in t){if(i in e||i in r||Q8.has(i)||(i==="x"||i==="y")&&t.geometry)continue;let o=op(t,i);if(o){if(o.scale==null&&o.defaultScale)continue;e[i]=o}}this.facet&&(n.fx&&!("fx"in r)&&(e.fx=!0),n.fy&&!("fy"in r)&&(e.fy=!0));for(let i in e){let o=this.format[i],a=n[i],u=e[i]?.value??a?.domain()??[];typeof o=="string"?this.format[i]=(Bt(u)?ne:Qn)(o):(o===void 0||o===!0)&&(this.format[i]=a?.bandwidth?gl(a,a.domain()):pg(u)?String:$r)}return e}function Pp(t,n,e){if(!(e in t))return t;let r=`${e}1`,i=`${e}2`;if((r in t||!(r in n))&&(i in t||!(i in n)))return t;let o=Object.entries(t),a=t[e];return o.splice(o.findIndex(([u])=>u===e)+1,0,[r,a],[i,a]),Object.fromEntries(o)}function r4(t,n,{title:e}){return this.format.title(e.value[t],t)}function*i4(t,n,e,r,i){for(let o in e){if(o==="fx"||o==="fy"){yield{label:va(r,e,o),value:this.format[o](n[o],t)};continue}if(o==="x1"&&"x2"in e||o==="y1"&&"y2"in e)continue;let a=e[o];if(o==="x2"&&"x1"in e)yield{label:Ip(r,e,"x"),value:Dp(this.format.x2,e.x1,a,t)};else if(o==="y2"&&"y1"in e)yield{label:Ip(r,e,"y"),value:Dp(this.format.y2,e.y1,a,t)};else{let u=a.value[t],c=a.scale;if(!An(u)&&c==null)continue;yield{label:va(r,e,o),value:this.format[o](u,t),color:c==="color"?i[o][t]:null,opacity:c==="opacity"?i[o][t]:null}}}}function Dp(t,n,e,r){return e.hint?.length?`${t(e.value[r]-n.value[r],r)}`:`${t(n.value[r],r)}\u2013${t(e.value[r],r)}`}function Ip(t,n,e){let r=va(t,n,`${e}1`,e),i=va(t,n,`${e}2`,e);return r===i?r:`${r}\u2013${i}`}function va(t,n,e,r=e){let i=n[e],o=t[i?.scale??e];return String(o?.label??i?.label??r)}function Ml(t={}){let{facet:n,style:e,title:r,subtitle:i,caption:o,ariaLabel:a,ariaDescription:u}=t,c=ul(t.className),f=t.marks===void 0?[]:Fp(t.marks);f.push(...s4(f));let s=c4(n,t),d=new Map;for(let L of f){let I=zp(L,s,t);I&&d.set(L,I)}let l=new Map;s&&wi(l,[s],t),wi(l,d,t);let h=Fp(l4(f,l,t));for(let L of h){let I=zp(L,s,t);I&&d.set(L,I)}f.unshift(...h);let p=x3(l,t);if(p!==void 0){let L=s?ns(p,s):void 0;for(let q of f){if(q.facet===null||q.facet==="super")continue;let W=d.get(q);W!==void 0&&(W.facetsIndex=q.fx!=null||q.fy!=null?ns(p,W):L)}let I=new Set;for(let{facetsIndex:q}of d.values())q?.forEach((W,z)=>{W?.length>0&&I.add(z)});p.forEach(0<I.size&&I.size<p.length?(q,W)=>q.empty=!I.has(W):q=>q.empty=!1);for(let q of f)if(q.facet==="exclude"){let W=d.get(q);W!==void 0&&(W.facetsIndex=$3(W.facetsIndex))}}for(let L of st.keys())ls(t[L])&&L!=="fx"&&L!=="fy"&&l.set(L,[]);let m=new Map;for(let L of f){if(m.has(L))throw new Error("duplicate mark; each mark must be unique");let{facetsIndex:I,channels:q}=d.get(L)??{},{data:W,facets:z,channels:K}=L.initialize(I,q,t);$l(K,t),m.set(L,{data:W,facets:z,channels:K})}let w=ys(wi(l,m,t),t),x=w3(w,f,t);B5(w,x);let v=hp(w),{fx:M,fy:g}=v,b=M||g?Xg(w,x):x,y=M||g?b4(v,x):x,_=Js(t),$=_.document,S=qr("svg").call($.documentElement),C=S;_.ownerSVGElement=S,_.className=c,_.projection=Z6(t,b),_.path=function(){return No(this.projection??o5(v))},_.filterFacets=(L,I)=>ns(p,{channels:I,groups:fl(L,I)}),_.getMarkState=L=>{let I=m.get(L),q=d.get(L);return{...I,channels:{...I.channels,...q?.channels}}},_.dispatchValue=L=>{C.value!==L&&(C.value=L,C.dispatchEvent(new _.document.defaultView.Event("input",{bubbles:!0})))};let A=new Set;for(let[L,I]of m)if(L.initializer!=null){let q=L.facet==="super"?y:b,W=L.initializer(I.data,I.facets,I.channels,v,q,_);if(W.data!==void 0&&(I.data=W.data),W.facets!==void 0&&(I.facets=W.facets),W.channels!==void 0){let{fx:z,fy:K,...et}=W.channels;u4(et),Object.assign(I.channels,et);for(let at of Object.values(et)){let{scale:B}=at;B!=null&&!y6(st.get(B))&&(ny(at,t),A.add(B))}(z!=null||K!=null)&&d.set(L,!0)}}if(A.size){let L=new Map;wi(L,m,t,z=>A.has(z)),wi(l,m,t,z=>A.has(z));let I=y4(ys(L,t),w),{scales:q,...W}=hp(I);Object.assign(w,I),Object.assign(v,W),Object.assign(v.scales,q)}let k,D;p!==void 0&&(k={x:M?.domain(),y:g?.domain()},p=_3(p,k),D=M3(M,g,x));for(let[L,I]of m)I.values=L.scale(I.channels,v,_);let{width:P,height:T}=x;Nn(S).attr("class",c).attr("fill","currentColor").attr("font-family","system-ui, sans-serif").attr("font-size",10).attr("text-anchor","middle").attr("width",P).attr("height",T).attr("viewBox",`0 0 ${P} ${T}`).attr("aria-label",a).attr("aria-description",u).call(L=>L.append("style").text(`:where(.${c}) {
|
|
49
|
+
${m}`)).style("margin-left",f?`${+f}px`:null).style("width",l===void 0?null:`${+l}px`).style("font-variant",$t(o,"normal")).call(cl,d).node()}var $s=new Map([["symbol",A8],["color",C8],["opacity",E8]]);function k8(t,n,e={}){return(r,i)=>{if(!$s.has(r))throw new Error(`unknown legend type: ${r}`);if(r in t)return $s.get(r)(t[r],Vm(n,e[r],i),o=>t[o])}}function Vm({className:t,...n},{label:e,ticks:r,tickFormat:i}={},o){return gg(o,{className:t,...n},{label:e,ticks:r,tickFormat:i})}function C8(t,{legend:n=!0,...e}){if(n===!0&&(n=t.type==="ordinal"?"swatches":"ramp"),t.domain!==void 0)switch(`${n}`.toLowerCase()){case"swatches":return Gm(t,e);case"ramp":return im(t,e);default:throw new Error(`unknown color legend type: ${n}`)}}function E8(t,{legend:n=!0,color:e="currentColor",...r}){switch(n===!0&&(n=t.type==="ordinal"?"swatches":"ramp"),t={...t,color:e,key:"opacity"},`${n}`.toLowerCase()){case"swatches":return Gm(t,r);case"ramp":{let i=im(t,r),o=o3(),a=Nn(i);a.select("image").attr("filter",`url(#${o})`);let u=a.append("filter").attr("id",o);return u.append("feFlood").attr("flood-color",e),u.append("feComposite").attr("in2","SourceGraphic").attr("operator","in"),i}default:throw new Error(`unknown opacity legend type: ${n}`)}}function N8(t,n,e){let r=[],i=!1;for(let[o,a]of $s){if(!(o in t)||o==="color"&&i)continue;let u=gg(e[o],{legend:e.legend});if(!u.legend)continue;let c=a(t[o],Vm(n,t[o],u),f=>t[f]);c!=null&&(o==="symbol"&&T8(c)&&(i=!0),r.push(c))}return r}function ml(t){return fg(t)?t:{...t,x:ht}}function yl(t){return sg(t)?t:{...t,y:ht}}function R8(t,n){if(n.length===1)return{data:t,facets:n};let e=Mi(t),r=new Uint8Array(e),i=0;for(let u of n)for(let c of u)r[c]&&++i,r[c]=1;if(i===0)return{data:t,facets:n};t=_i(t);let o=t[eg]=new Uint32Array(e+i);n=n.map(u=>_i(u,Uint32Array));let a=e;r.fill(0);for(let u of n)for(let c=0,f=u.length;c<f;++c){let s=u[c];r[s]?(u[c]=a,t[a]=t[s],o[a]=s,++a):o[s]=s,r[s]=1}return{data:t,facets:n}}function L8(t={},n={}){arguments.length===1&&([t,n]=jm(t));let{y1:e,y:r=e,x:i,...o}=n,[a,u,c,f]=Zm(r,i,"y","x",t,o);return{...a,y1:e,y:u,x1:c,x2:f,x:ma(c,f)}}function P8(t={},n={}){arguments.length===1&&([t,n]=jm(t));let{x1:e,x:r=e,y:i,...o}=n,[a,u,c,f]=Zm(r,i,"x","y",t,o);return{...a,x1:e,x:u,y1:c,y2:f,y:ma(c,f)}}function bl({x:t,x1:n,x2:e,...r}={}){return r=Cr(r,"y"),n===void 0&&e===void 0?L8({x:t,...r}):([n,e]=lg(t,n,e),{...r,x1:n,x2:e})}function wl({y:t,y1:n,y2:e,...r}={}){return r=Cr(r,"x"),n===void 0&&e===void 0?P8({y:t,...r}):([n,e]=lg(t,n,e),{...r,y1:n,y2:e})}function jm(t){let{offset:n,order:e,reverse:r,...i}=t;return[{offset:n,order:e,reverse:r},i]}var D8={length:!0};function Zm(t,n=t6,e,r,{offset:i,order:o,reverse:a},u){if(n===null)throw new Error(`stack requires ${r}`);let c=qs(u),[f,s]=zt(t),[d,l]=ga(n),[h,p]=ga(n);return d.hint=h.hint=D8,i=I8(i),o=z8(o,i,r),[Ii(u,(m,v,x)=>{({data:m,facets:v}=R8(m,v));let w=t==null?void 0:s(ya(ft(m,t),x?.[e])),M=ft(m,n,Float64Array),g=ft(m,c),b=o&&o(m,w,M,g),y=Mi(m),_=l(new Float64Array(y).fill(NaN)),$=p(new Float64Array(y).fill(NaN)),S=[];for(let C of v){let A=w?Array.from(Or(C,k=>w[k]).values()):[C];if(b)for(let k of A)k.sort(b);for(let k of A){let D=0,P=0;a&&k.reverse();for(let T of k){let O=M[T];O<0?D=$[T]=(_[T]=D)+O:O>=0&&(P=$[T]=(_[T]=P)+O)}}S.push(A)}return i&&i(S,_,$,g),{data:m,facets:v}}),f,d,h]}function I8(t){if(t!=null){if(typeof t=="function")return t;switch(`${t}`.toLowerCase()){case"expand":case"normalize":return O8;case"center":case"silhouette":return F8;case"wiggle":return Qm}throw new Error(`unknown offset: ${t}`)}}function Km(t,n){let e=0,r=0;for(let i of t){let o=n[i];o<e&&(e=o),o>r&&(r=o)}return[e,r]}function O8(t,n,e){for(let r of t)for(let i of r){let[o,a]=Km(i,e);for(let u of i){let c=1/(a-o||1);n[u]=c*(n[u]-o),e[u]=c*(e[u]-o)}}}function F8(t,n,e){for(let r of t){for(let i of r){let[o,a]=Km(i,e);for(let u of i){let c=(a+o)/2;n[u]-=c,e[u]-=c}}Jm(r,n,e)}ty(t,n,e)}function Qm(t,n,e,r){for(let i of t){let o=new on,a=0;for(let u of i){let c=-1,f=u.map(h=>Math.abs(e[h]-n[h])),s=u.map(h=>{c=r?r[h]:++c;let p=e[h]-n[h],m=o.has(c)?p-o.get(c):0;return o.set(c,p),m}),d=[0,...zl(s)];for(let h of u)n[h]+=a,e[h]+=a;let l=pn(f);l&&(a-=pn(f,(h,p)=>(s[p]/2+d[p])*h)/l)}Jm(i,n,e)}ty(t,n,e)}function Jm(t,n,e){let r=an(t,i=>an(i,o=>n[o]));for(let i of t)for(let o of i)n[o]-=r,e[o]-=r}function ty(t,n,e){let r=t.length;if(r===1)return;let i=t.map(u=>u.flat()),o=i.map(u=>(an(u,c=>n[c])+Yt(u,c=>e[c]))/2),a=an(o);for(let u=0;u<r;u++){let c=a-o[u];for(let f of i[u])n[f]+=c,e[f]+=c}}function z8(t,n,e){if(t===void 0&&n===Qm)return Np(fn);if(t!=null){if(typeof t=="string"){let r=t.startsWith("-"),i=r?pa:fn;switch((r?t.slice(1):t).toLowerCase()){case"value":case e:return B8(i);case"z":return q8(i);case"sum":return Y8(i);case"appearance":return U8(i);case"inside-out":return Np(i)}return Rp(rg(t))}if(typeof t=="function")return(t.length===1?Rp:W8)(t);if(Ie(t))return G8(t);throw new Error(`invalid order: ${t}`)}}function B8(t){return(n,e,r)=>(i,o)=>t(r[i],r[o])}function q8(t){return(n,e,r,i)=>(o,a)=>t(i[o],i[a])}function Y8(t){return Oa(t,(n,e,r,i)=>ji(Vn(n),o=>pn(o,a=>r[a]),o=>i[o]))}function U8(t){return Oa(t,(n,e,r,i)=>ji(Vn(n),o=>e[Ha(o,a=>r[a])],o=>i[o]))}function Np(t){return Oa(t,(n,e,r,i)=>{let o=Vn(n),a=ji(o,d=>e[Ha(d,l=>r[l])],d=>i[d]),u=he(o,d=>pn(d,l=>r[l]),d=>i[d]),c=[],f=[],s=0;for(let d of a)s<0?(s+=u.get(d),c.push(d)):(s-=u.get(d),f.push(d));return f.reverse().concat(c)})}function Rp(t){return n=>{let e=ft(n,t);return(r,i)=>fn(e[r],e[i])}}function W8(t){return n=>Ie(n)?(e,r)=>t(n[e],n[r]):(e,r)=>t(n.get(e),n.get(r))}function G8(t){return Oa(fn,()=>t)}function Oa(t,n){return(e,r,i,o)=>{if(!o)throw new Error("missing channel: z");let a=new on(n(e,r,i,o).map((u,c)=>[u,c]));return(u,c)=>t(a.get(o[u]),a.get(o[c]))}}var H8={ariaLabel:"rect"},ki=class extends Ct{constructor(n,e={}){let{x1:r,y1:i,x2:o,y2:a}=e;super(n,{x1:{value:r,scale:"x",type:r!=null&&o==null?"band":void 0,optional:!0},y1:{value:i,scale:"y",type:i!=null&&a==null?"band":void 0,optional:!0},x2:{value:o,scale:"x",optional:!0},y2:{value:a,scale:"y",optional:!0}},e,H8),vl(this,e),xl(this,e)}render(n,e,r,i,o){let{x:a,y:u}=e,{x1:c,y1:f,x2:s,y2:d}=r,{marginTop:l,marginRight:h,marginBottom:p,marginLeft:m,width:v,height:x}=i,{projection:w}=o,{insetTop:M,insetRight:g,insetBottom:b,insetLeft:y}=this,{rx:_,ry:$,rx1y1:S,rx1y2:C,rx2y1:A,rx2y2:k}=this;(c||s)&&!w&&kn(a)&&(c=s=null),(f||d)&&!w&&kn(u)&&(f=d=null);let D=a?.bandwidth?a.bandwidth():0,P=u?.bandwidth?u.bandwidth():0;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,{},0,0).call(T=>T.selectAll().data(n).enter().call(S||C||A||k?O=>O.append("path").call(Lt,this).call(_l,c&&s?R=>c[R]+(s[R]<c[R]?-g:y):c?R=>c[R]+y:m+y,f&&d?R=>f[R]+(d[R]<f[R]?-b:M):f?R=>f[R]+M:l+M,c&&s?R=>s[R]-(s[R]<c[R]?-y:g):c?R=>c[R]+D-g:v-h-g,f&&d?R=>d[R]-(d[R]<f[R]?-M:b):f?R=>f[R]+P-b:x-p-b,this).call(ln,this,r):O=>O.append("rect").call(Lt,this).attr("x",c?s?R=>Math.min(c[R],s[R])+y:R=>c[R]+y:m+y).attr("y",f?d?R=>Math.min(f[R],d[R])+M:R=>f[R]+M:l+M).attr("width",c?s?R=>Math.max(0,Math.abs(s[R]-c[R])+D-y-g):D-y-g:v-h-m-g-y).attr("height",f?d?R=>Math.max(0,Math.abs(f[R]-d[R])+P-M-b):P-M-b:x-l-p-M-b).call(X,"rx",_).call(X,"ry",$).call(ln,this,r))).node()}};function vl(t,{inset:n=0,insetTop:e=n,insetRight:r=n,insetBottom:i=n,insetLeft:o=n}={}){t.insetTop=kt(e),t.insetRight=kt(r),t.insetBottom=kt(i),t.insetLeft=kt(o)}function xl(t,{r:n,rx:e,ry:r,rx1:i=n,ry1:o=n,rx2:a=n,ry2:u=n,rx1y1:c=i!==void 0?+i:o!==void 0?+o:0,rx1y2:f=i!==void 0?+i:u!==void 0?+u:0,rx2y1:s=a!==void 0?+a:o!==void 0?+o:0,rx2y2:d=a!==void 0?+a:u!==void 0?+u:0}={}){c||f||s||d?(t.rx1y1=c,t.rx1y2=f,t.rx2y1=s,t.rx2y2=d):(t.rx=$t(e,"auto"),t.ry=$t(r,"auto"))}function _l(t,n,e,r,i,o){let{rx1y1:a,rx1y2:u,rx2y1:c,rx2y2:f}=o;typeof n!="function"&&(n=Hn(n)),typeof e!="function"&&(e=Hn(e)),typeof r!="function"&&(r=Hn(r)),typeof i!="function"&&(i=Hn(i));let s=Math.max(Math.abs(a+c),Math.abs(u+f)),d=Math.max(Math.abs(a+u),Math.abs(c+f));t.attr("d",l=>{let h=n(l),p=e(l),m=r(l),v=i(l),x=h>m,w=p>v,M=x?m:h,g=x?h:m,b=w?v:p,y=w?p:v,_=Math.min(1,(g-M)/s,(y-b)/d),$=_*(x?w?f:c:w?u:a),S=_*(x?w?u:a:w?f:c),C=_*(x?w?a:u:w?c:f),A=_*(x?w?c:f:w?a:u);return`M${M},${b+ua($,A)}A${$},${$} 0 0 ${$<0?0:1} ${M+aa($,A)},${b}H${g-aa(S,C)}A${S},${S} 0 0 ${S<0?0:1} ${g},${b+ua(S,C)}V${y-ua(C,S)}A${C},${C} 0 0 ${C<0?0:1} ${g-aa(C,S)},${y}H${M+aa(A,$)}A${A},${A} 0 0 ${A<0?0:1} ${M},${y-ua(A,$)}Z`})}function aa(t,n){return n<0?t:Math.abs(t)}function ua(t,n){return n<0?Math.abs(t):t}function X8(t,n){return new ki(t,dm(hm(n)))}function V8(t,n={}){return Sa(n)||(n={...n,y:Oe,x2:ht,interval:1}),new ki(t,bl(hm(ml(n))))}function j8(t,n={}){return Sa(n)||(n={...n,x:Oe,y2:ht,interval:1}),new ki(t,wl(dm(yl(n))))}var Z8={ariaLabel:"frame",fill:"none",stroke:"currentColor",clip:!1},K8={ariaLabel:"frame",fill:null,stroke:"currentColor",strokeLinecap:"square",clip:!1},Ss=class extends Ct{constructor(n={}){let{anchor:e=null}=n;super(da,void 0,n,e==null?Z8:K8),this.anchor=ug(e,"anchor",["top","right","bottom","left"]),vl(this,n),e||xl(this,n)}render(n,e,r,i,o){let{marginTop:a,marginRight:u,marginBottom:c,marginLeft:f,width:s,height:d}=i,{anchor:l,insetTop:h,insetRight:p,insetBottom:m,insetLeft:v}=this,{rx:x,ry:w,rx1y1:M,rx1y2:g,rx2y1:b,rx2y2:y}=this,_=f+v,$=s-u-p,S=a+h,C=d-c-m;return pt(l?"svg:line":M||g||b||y?"svg:path":"svg:rect",o).datum(0).call(Xt,this,i,o).call(Lt,this).call(ln,this,r).call(Pt,this,{}).call(l==="left"?A=>A.attr("x1",_).attr("x2",_).attr("y1",S).attr("y2",C):l==="right"?A=>A.attr("x1",$).attr("x2",$).attr("y1",S).attr("y2",C):l==="top"?A=>A.attr("x1",_).attr("x2",$).attr("y1",S).attr("y2",S):l==="bottom"?A=>A.attr("x1",_).attr("x2",$).attr("y1",C).attr("y2",C):M||g||b||y?A=>A.call(_l,_,S,$,C,this):A=>A.attr("x",_).attr("y",S).attr("width",$-_).attr("height",C-S).attr("rx",x).attr("ry",w)).node()}};function Q8(t){return new Ss(t)}var os={ariaLabel:"tip",fill:"var(--plot-background)",stroke:"currentColor",pool:!0},J8=new Set(["geometry","href","src","ariaLabel","scales","contours"]),As=class extends Ct{constructor(n,e={}){e.tip&&(e={...e,tip:!1}),e.title===void 0&&ce(n)&&hg(n)&&(e={...e,title:ht});let{x:r,y:i,x1:o,x2:a,y1:u,y2:c,anchor:f,preferredAnchor:s="bottom",monospace:d,fontFamily:l=d?"ui-monospace, monospace":void 0,fontSize:h,fontStyle:p,fontVariant:m,fontWeight:v,lineHeight:x=1,lineWidth:w=20,frameAnchor:M,format:g,textAnchor:b="start",textOverflow:y,textPadding:_=8,title:$,pointerSize:S=12,pathFilter:C="drop-shadow(0 3px 4px rgba(0,0,0,0.2))"}=e;super(n,{x:{value:o!=null&&a!=null?null:r,scale:"x",optional:!0},y:{value:u!=null&&c!=null?null:i,scale:"y",optional:!0},x1:{value:o,scale:"x",optional:a==null},y1:{value:u,scale:"y",optional:c==null},x2:{value:a,scale:"x",optional:o==null},y2:{value:c,scale:"y",optional:u==null},title:{value:$,optional:!0}},e,os),this.anchor=ds(f,"anchor"),this.preferredAnchor=ds(s,"preferredAnchor"),this.frameAnchor=ka(M),this.textAnchor=$t(b,"middle"),this.textPadding=+_,this.pointerSize=+S,this.pathFilter=Tt(C),this.lineHeight=+x,this.lineWidth=+w,this.textOverflow=vm(y),this.monospace=!!d,this.fontFamily=Tt(l),this.fontSize=kt(h),this.fontStyle=Tt(p),this.fontVariant=Tt(m),this.fontWeight=Tt(v);for(let A in os)A in this.channels&&(this[A]=os[A]);this.splitLines=_m(this),this.clipLine=Mm(this),this.format=typeof g=="string"||typeof g=="function"?{title:g}:{...g}}render(n,e,r,i,o){let a=this,{x:u,y:c,fx:f,fy:s}=e,{ownerSVGElement:d,document:l}=o,{anchor:h,monospace:p,lineHeight:m,lineWidth:v}=this,{textPadding:x,pointerSize:w,pathFilter:M}=this,{marginTop:g,marginLeft:b}=i,{x1:y,y1:_,x2:$,y2:S,x:C=y??$,y:A=_??S}=r,k=f?f(n.fx)-b:0,D=s?s(n.fy)-g:0,[P,T]=zi(this,i),O=nm(r,P),R=em(r,T),U=p?pl:hl,L=U(wr),I,q;"title"in r?(I=Lp.call(this,{title:r.channels.title},e),q=i4):(I=Lp.call(this,r.channels,e),q=o4);let W=new Array(n.length);for(let at of n)W[at]=q.call(a,at,n,I,e,r);n=n.filter(at=>W[at]!=null);let z=pt("svg:g",o).call(Xt,this,i,o).call(xm,this).call(Pt,this,{x:C&&u,y:A&&c}).call(at=>at.selectAll().data(n).enter().append("g").attr("transform",B=>`translate(${Math.round(O(B))},${Math.round(R(B))})`).call(Lt,this).call(B=>B.append("path").attr("filter",M)).call(B=>B.append("text").each(function(G){let N=Nn(this);this.setAttribute("fill","currentColor"),this.setAttribute("fill-opacity",1),this.setAttribute("stroke","none");let F=W[G];if(typeof F=="string")for(let Y of a.splitLines(F))K(N,{value:a.clipLine(Y)});else{let Y=new Set;for(let E of F){let{label:nt=""}=E;nt&&Y.has(nt)||(Y.add(nt),K(N,E))}}})));function K(at,{label:B,value:G,color:N,opacity:F}){B??="",G??="";let Y=N!=null||F!=null,E,nt=v*100,[H]=Sr(B,nt,U,L);if(H>=0)B=B.slice(0,H).trimEnd()+wr,E=G.trim(),G="";else{(B||!G&&!Y)&&(G=" "+G);let[rt]=Sr(G,nt-U(B),U,L);rt>=0&&(E=G.trim(),G=G.slice(0,rt).trimEnd()+wr)}let J=at.append("tspan").attr("x",0).attr("dy",`${m}em`).text("\u200B");B&&J.append("tspan").attr("font-weight","bold").text(B),G&&J.append(()=>l.createTextNode(G)),Y&&J.append("tspan").text(" \u25A0").attr("fill",N).attr("fill-opacity",F).style("user-select","none"),E&&J.append("title").text(E)}function et(){let{width:at,height:B}=i.facet??i;z.selectChildren().each(function(G){let{x:N,width:F,height:Y}=this.getBBox();F=Math.round(F),Y=Math.round(Y);let E=h;if(E===void 0){let J=O(G)+k,rt=R(G)+D,ct=J+F+w+x*2<at,Cn=J-F-w-x*2>0,Pr=rt+Y+w+x*2<B,le=rt-Y-w-x*2>0;E=ct&&Cn?Pr&&le?a.preferredAnchor:le?"bottom":"top":Pr&&le?ct?"left":"right":(ct||Cn)&&(Pr||le)?`${le?"bottom":"top"}-${ct?"left":"right"}`:a.preferredAnchor}let nt=this.firstChild,H=this.lastChild;if(nt.setAttribute("d",r4(E,w,x,F,Y)),N)for(let J of H.childNodes)J.setAttribute("x",-N);H.setAttribute("y",`${+n4(E,H.childNodes.length,m).toFixed(6)}em`),H.setAttribute("transform",`translate(${e4(E,w,x,F,Y)})`)}),z.attr("visibility",null)}return n.length&&(z.attr("visibility","hidden"),d.isConnected?Promise.resolve().then(et):typeof requestAnimationFrame<"u"&&requestAnimationFrame(et)),z.node()}};function t4(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new As(t,{...r,x:n,y:e})}function n4(t,n,e){return/^top(?:-|$)/.test(t)?.94-e:-.29-n*e}function e4(t,n,e,r,i){switch(t){case"middle":return[-r/2,i/2];case"top-left":return[e,n/2+e];case"top":return[-r/2,n/2+e];case"top-right":return[-r-e,n/2+e];case"right":return[-n/2-r-e,i/2];case"bottom-left":return[e,-n/2-e];case"bottom":return[-r/2,-n/2-e];case"bottom-right":return[-r-e,-n/2-e];case"left":return[e+n/2,i/2]}}function r4(t,n,e,r,i){let o=r+e*2,a=i+e*2;switch(t){case"middle":return`M${-o/2},${-a/2}h${o}v${a}h${-o}z`;case"top-left":return`M0,0l${n/2},${n/2}h${o-n/2}v${a}h${-o}z`;case"top":return`M0,0l${n/2},${n/2}h${(o-n)/2}v${a}h${-o}v${-a}h${(o-n)/2}z`;case"top-right":return`M0,0l${-n/2},${n/2}h${n/2-o}v${a}h${o}z`;case"right":return`M0,0l${-n/2},${-n/2}v${n/2-a/2}h${-o}v${a}h${o}v${n/2-a/2}z`;case"bottom-left":return`M0,0l${n/2},${-n/2}h${o-n/2}v${-a}h${-o}z`;case"bottom":return`M0,0l${n/2},${-n/2}h${(o-n)/2}v${-a}h${-o}v${a}h${(o-n)/2}z`;case"bottom-right":return`M0,0l${-n/2},${-n/2}h${n/2-o}v${-a}h${o}z`;case"left":return`M0,0l${n/2},${-n/2}v${n/2-a/2}h${o}v${a}h${-o}v${n/2-a/2}z`}}function Lp(t,n){let e={},r=this.format;r=Pp(r,t,"x"),r=Pp(r,t,"y"),this.format=r;for(let i in r){let o=r[i];if(!(o===null||o===!1))if(i==="fx"||i==="fy")e[i]=!0;else{let a=op(t,i);a&&(e[i]=a)}}for(let i in t){if(i in e||i in r||J8.has(i)||(i==="x"||i==="y")&&t.geometry)continue;let o=op(t,i);if(o){if(o.scale==null&&o.defaultScale)continue;e[i]=o}}this.facet&&(n.fx&&!("fx"in r)&&(e.fx=!0),n.fy&&!("fy"in r)&&(e.fy=!0));for(let i in e){let o=this.format[i],a=n[i],u=e[i]?.value??a?.domain()??[];typeof o=="string"?this.format[i]=(qt(u)?ne:Qn)(o):(o===void 0||o===!0)&&(this.format[i]=a?.bandwidth?gl(a,a.domain()):pg(u)?String:$r)}return e}function Pp(t,n,e){if(!(e in t))return t;let r=`${e}1`,i=`${e}2`;if((r in t||!(r in n))&&(i in t||!(i in n)))return t;let o=Object.entries(t),a=t[e];return o.splice(o.findIndex(([u])=>u===e)+1,0,[r,a],[i,a]),Object.fromEntries(o)}function i4(t,n,{title:e}){return this.format.title(e.value[t],t)}function*o4(t,n,e,r,i){for(let o in e){if(o==="fx"||o==="fy"){yield{label:va(r,e,o),value:this.format[o](n[o],t)};continue}if(o==="x1"&&"x2"in e||o==="y1"&&"y2"in e)continue;let a=e[o];if(o==="x2"&&"x1"in e)yield{label:Ip(r,e,"x"),value:Dp(this.format.x2,e.x1,a,t)};else if(o==="y2"&&"y1"in e)yield{label:Ip(r,e,"y"),value:Dp(this.format.y2,e.y1,a,t)};else{let u=a.value[t],c=a.scale;if(!An(u)&&c==null)continue;yield{label:va(r,e,o),value:this.format[o](u,t),color:c==="color"?i[o][t]:null,opacity:c==="opacity"?i[o][t]:null}}}}function Dp(t,n,e,r){return e.hint?.length?`${t(e.value[r]-n.value[r],r)}`:`${t(n.value[r],r)}\u2013${t(e.value[r],r)}`}function Ip(t,n,e){let r=va(t,n,`${e}1`,e),i=va(t,n,`${e}2`,e);return r===i?r:`${r}\u2013${i}`}function va(t,n,e,r=e){let i=n[e],o=t[i?.scale??e];return String(o?.label??i?.label??r)}function Ml(t={}){let{facet:n,style:e,title:r,subtitle:i,caption:o,ariaLabel:a,ariaDescription:u}=t,c=ul(t.className),f=t.marks===void 0?[]:Fp(t.marks);f.push(...l4(f));let s=f4(n,t),d=new Map;for(let L of f){let I=zp(L,s,t);I&&d.set(L,I)}let l=new Map;s&&wi(l,[s],t),wi(l,d,t);let h=Fp(d4(f,l,t));for(let L of h){let I=zp(L,s,t);I&&d.set(L,I)}f.unshift(...h);let p=_3(l,t);if(p!==void 0){let L=s?ns(p,s):void 0;for(let q of f){if(q.facet===null||q.facet==="super")continue;let W=d.get(q);W!==void 0&&(W.facetsIndex=q.fx!=null||q.fy!=null?ns(p,W):L)}let I=new Set;for(let{facetsIndex:q}of d.values())q?.forEach((W,z)=>{W?.length>0&&I.add(z)});p.forEach(0<I.size&&I.size<p.length?(q,W)=>q.empty=!I.has(W):q=>q.empty=!1);for(let q of f)if(q.facet==="exclude"){let W=d.get(q);W!==void 0&&(W.facetsIndex=S3(W.facetsIndex))}}for(let L of st.keys())ls(t[L])&&L!=="fx"&&L!=="fy"&&l.set(L,[]);let m=new Map;for(let L of f){if(m.has(L))throw new Error("duplicate mark; each mark must be unique");let{facetsIndex:I,channels:q}=d.get(L)??{},{data:W,facets:z,channels:K}=L.initialize(I,q,t);$l(K,t),m.set(L,{data:W,facets:z,channels:K})}let v=ys(wi(l,m,t),t),x=v3(v,f,t);q5(v,x);let w=hp(v),{fx:M,fy:g}=w,b=M||g?Xg(v,x):x,y=M||g?w4(w,x):x,_=Js(t),$=_.document,S=qr("svg").call($.documentElement),C=S;_.ownerSVGElement=S,_.className=c,_.projection=K6(t,b),_.path=function(){return No(this.projection??a5(w))},_.filterFacets=(L,I)=>ns(p,{channels:I,groups:fl(L,I)}),_.getMarkState=L=>{let I=m.get(L),q=d.get(L);return{...I,channels:{...I.channels,...q?.channels}}},_.dispatchValue=L=>{C.value!==L&&(C.value=L,C.dispatchEvent(new _.document.defaultView.Event("input",{bubbles:!0})))};let A=new Set;for(let[L,I]of m)if(L.initializer!=null){let q=L.facet==="super"?y:b,W=L.initializer(I.data,I.facets,I.channels,w,q,_);if(W.data!==void 0&&(I.data=W.data),W.facets!==void 0&&(I.facets=W.facets),W.channels!==void 0){let{fx:z,fy:K,...et}=W.channels;c4(et),Object.assign(I.channels,et);for(let at of Object.values(et)){let{scale:B}=at;B!=null&&!b6(st.get(B))&&(ny(at,t),A.add(B))}(z!=null||K!=null)&&d.set(L,!0)}}if(A.size){let L=new Map;wi(L,m,t,z=>A.has(z)),wi(l,m,t,z=>A.has(z));let I=b4(ys(L,t),v),{scales:q,...W}=hp(I);Object.assign(v,I),Object.assign(w,W),Object.assign(w.scales,q)}let k,D;p!==void 0&&(k={x:M?.domain(),y:g?.domain()},p=M3(p,k),D=$3(M,g,x));for(let[L,I]of m)I.values=L.scale(I.channels,w,_);let{width:P,height:T}=x;Nn(S).attr("class",c).attr("fill","currentColor").attr("font-family","system-ui, sans-serif").attr("font-size",10).attr("text-anchor","middle").attr("width",P).attr("height",T).attr("viewBox",`0 0 ${P} ${T}`).attr("aria-label",a).attr("aria-description",u).call(L=>L.append("style").text(`:where(.${c}) {
|
|
50
50
|
--plot-background: white;
|
|
51
51
|
display: block;
|
|
52
52
|
height: auto;
|
|
@@ -56,4 +56,4 @@ ${m}`)).style("margin-left",f?`${+f}px`:null).style("width",l===void 0?null:`${+
|
|
|
56
56
|
:where(.${c} text),
|
|
57
57
|
:where(.${c} tspan) {
|
|
58
58
|
white-space: pre;
|
|
59
|
-
}`)).call(cl,e);for(let L of f){let{channels:I,values:q,facets:W}=m.get(L);if(p===void 0||L.facet==="super"){let z=null;if(W&&(z=W[0],z=L.filter(z,I,q),z.length===0))continue;let K=L.render(z,v,q,y,_);if(K==null)continue;S.appendChild(K)}else{let z;for(let K of p){if(!(L.facetAnchor?.(p,k,K)??!K.empty))continue;let et=null;if(W){let B=d.has(L);if(et=W[B?K.i:0],et=L.filter(et,I,q),et.length===0)continue;!B&&et===W[0]&&(et=e6(et)),et.fx=K.x,et.fy=K.y,et.fi=K.i}let at=L.render(et,v,q,b,_);if(at!=null){(z??=Nn(S).append("g")).append(()=>at).datum(K);for(let B of["aria-label","aria-description","aria-hidden","transform"])at.hasAttribute(B)&&(z.attr(B,at.getAttribute(B)),at.removeAttribute(B))}}z?.selectChildren().each(D)}}let O=E8(w,_,t),{figure:R=r!=null||i!=null||o!=null||O.length>0}=t;R&&(C=$.createElement("figure"),C.className=`${c}-figure`,C.style.maxWidth="initial",r!=null&&C.append(Op($,r,"h2")),i!=null&&C.append(Op($,i,"h3")),C.append(...O,S),o!=null&&C.append(o4($,o)),"value"in S&&(C.value=S.value,delete S.value)),C.scale=V5(v.scales,_),C.legend=T8(w,_,t);let U=j6();return U>0&&Nn(S).append("text").attr("x",P).attr("y",20).attr("dy","-1em").attr("text-anchor","end").attr("font-family","initial").text("\u26A0\uFE0F").append("title").text(`${U.toLocaleString("en-US")} warning${U===1?"":"s"}. Please check the console.`),C}function Op(t,n,e){if(n.ownerDocument)return n;let r=t.createElement(e);return r.append(n),r}function o4(t,n){let e=t.createElement("figcaption");return e.append(n),e}function Fp(t){return t.flat(1/0).filter(n=>n!=null).map(a4)}function a4(t){return typeof t.render=="function"?t:new Ts(t)}var Ts=class extends Ct{constructor(n){if(typeof n!="function")throw new TypeError("invalid mark; missing render function");super(),this.render=n}render(){}};function $l(t,n){for(let e in t)ny(t[e],n);return t}function ny(t,n){let{scale:e,transform:r=!0}=t;if(e==null||!r)return;let{type:i,percent:o,interval:a,transform:u=o?c=>c==null?NaN:c*100:dg(a,i)}=n[e]??{};u!=null&&(t.value=gt(t.value,u),t.transform=!1)}function u4(t){for(let n in t)Eg(n,t[n])}function wi(t,n,e,r=t6){for(let{channels:i}of n.values())for(let o in i){let a=i[o],{scale:u}=a;if(u!=null&&r(u))if(u==="projection"){if(!e5(e)){let c=e.x?.domain===void 0,f=e.y?.domain===void 0;if(c||f){let[s,d]=i5(a);c&&as(t,"x",s),f&&as(t,"y",d)}}}else as(t,u,a)}return t}function as(t,n,e){let r=t.get(n);r!==void 0?r.push(e):t.set(n,[e])}function c4(t,n){if(t==null)return;let{x:e,y:r}=t;if(e==null&&r==null)return;let i=xr(t.data);if(i==null)throw new Error("missing facet data");let o={};e!=null&&(o.fx=Si(i,{value:e,scale:"fx"})),r!=null&&(o.fy=Si(i,{value:r,scale:"fy"})),$l(o,n);let a=fl(i,o);return{channels:o,groups:a,data:t.data}}function zp(t,n,e){if(t.facet===null||t.facet==="super")return;let{fx:r,fy:i}=t;if(r!=null||i!=null){let c=xr(t.data??r??i);if(c===void 0)throw new Error(`missing facet data in ${t.ariaLabel}`);if(c===null)return;let f={};return r!=null&&(f.fx=Si(c,{value:r,scale:"fx"})),i!=null&&(f.fy=Si(c,{value:i,scale:"fy"})),$l(f,e),{channels:f,groups:fl(c,f)}}if(n===void 0)return;let{channels:o,groups:a,data:u}=n;if(t.facet!=="auto"||t.data===u)return{channels:o,groups:a};u.length>0&&(a.size>1||a.size===1&&o.fx&&o.fy&&[...a][0][1].size>1)&&Mi(xr(t.data))===Mi(u)&&ae(`Warning: the ${t.ariaLabel} mark appears to use faceted data, but isn\u2019t faceted. The mark data has the same length as the facet data and the mark facet option is "auto", but the mark data and facet data are distinct. If this mark should be faceted, set the mark facet option to true; otherwise, suppress this warning by setting the mark facet option to false.`)}function f4(t,n={}){return Mr({...n,x:null,y:null},(e,r,i,o,a,u)=>u.getMarkState(t))}function s4(t){let n=[];for(let e of t){let r=e.tip;if(r){r===!0?r={}:typeof r=="string"&&(r={pointer:r});let{pointer:i,preferredAnchor:o}=r;i=/^x$/i.test(i)?I3:/^y$/i.test(i)?Mp:D3,r=i(f4(e,r)),r.title=null,o===void 0&&(r.preferredAnchor=i===Mp?"left":"bottom");let a=J8(e.data,r);a.facet=e.facet,a.facetAnchor=e.facetAnchor,n.push(a)}}return n}function l4(t,n,e){let{projection:r,x:i={},y:o={},fx:a={},fy:u={},axis:c,grid:f,facet:s={},facet:{axis:d=c,grid:l}=s,x:{axis:h=c,grid:p=h===null?null:f}=i,y:{axis:m=c,grid:w=m===null?null:f}=o,fx:{axis:x=d,grid:v=x===null?null:l}=a,fy:{axis:M=d,grid:g=M===null?null:l}=u}=e;(r||!ls(i)&&!Bp("x",t))&&(h=p=null),(r||!ls(o)&&!Bp("y",t))&&(m=w=null),n.has("fx")||(x=v=null),n.has("fy")||(M=g=null),h===void 0&&(h=!sa(t,"x")),m===void 0&&(m=!sa(t,"y")),x===void 0&&(x=!sa(t,"fx")),M===void 0&&(M=!sa(t,"fy")),h===!0&&(h="bottom"),m===!0&&(m="left"),x===!0&&(x=h==="top"||h===null?"bottom":"top"),M===!0&&(M=m==="right"||m===null?"left":"right");let b=[];return fa(b,g,y8,u),ca(b,M,s8,"right","left",s,u),fa(b,v,w8,a),ca(b,x,l8,"top","bottom",s,a),fa(b,w,m8,o),ca(b,m,Rm,"left","right",e,o),fa(b,p,b8,i),ca(b,h,Lm,"bottom","top",e,i),b}function ca(t,n,e,r,i,o,a){if(!n)return;let u=d4(n);a=h4(u?r:n,o,a);let{line:c}=a;(e===Rm||e===Lm)&&c&&!$i(c)&&t.push(K8(p4(a))),t.push(e(a)),u&&t.push(e({...a,anchor:i,label:null}))}function fa(t,n,e,r){!n||$i(n)||t.push(e(g4(n,r)))}function d4(t){return/^\s*both\s*$/i.test(t)}function h4(t,n,{line:e=n.line,ticks:r,tickSize:i,tickSpacing:o,tickPadding:a,tickFormat:u,tickRotate:c,fontVariant:f,ariaLabel:s,ariaDescription:d,label:l=n.label,labelAnchor:h,labelArrow:p=n.labelArrow,labelOffset:m}){return{anchor:t,line:e,ticks:r,tickSize:i,tickSpacing:o,tickPadding:a,tickFormat:u,tickRotate:c,fontVariant:f,ariaLabel:s,ariaDescription:d,label:l,labelAnchor:h,labelArrow:p,labelOffset:m}}function p4(t){let{anchor:n,line:e}=t;return{anchor:n,facetAnchor:n+"-empty",stroke:e===!0?void 0:e}}function g4(t,{stroke:n=Ta(t)?t:void 0,ticks:e=m4(t)?t:void 0,tickSpacing:r,ariaLabel:i,ariaDescription:o}){return{stroke:n,ticks:e,tickSpacing:r,ariaLabel:i,ariaDescription:o}}function m4(t){switch(typeof t){case"number":return!0;case"string":return!Ta(t)}return ce(t)||typeof t?.range=="function"}function sa(t,n){let e=`${n}-axis `;return t.some(r=>r.ariaLabel?.startsWith(e))}function Bp(t,n){for(let e of n)for(let r in e.channels){let{scale:i}=e.channels[r];if(i===t||i==="projection")return!0}return!1}function y4(t,n){for(let e in t){let r=t[e],i=n[e];r.label===void 0&&i&&(r.label=i.label)}return t}function b4({fx:t,fy:n},e){let{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:u,height:c}=rl(e),f=t&&qp(t),s=n&&qp(n);return{marginTop:n?s[0]:r,marginRight:t?u-f[1]:i,marginBottom:n?c-s[1]:o,marginLeft:t?f[0]:a,inset:{marginTop:e.marginTop,marginRight:e.marginRight,marginBottom:e.marginBottom,marginLeft:e.marginLeft},width:u,height:c}}function qp(t){let n=t.domain();if(n.length===0)return[0,t.bandwidth()];let e=t(n[0]),r=t(n[n.length-1]);return r<e&&([e,r]=[r,e]),[e,r+t.bandwidth()]}var w4=new Map([["basis",$1],["basis-closed",A1],["basis-open",k1],["bundle",E1],["bump-x",b1],["bump-y",w1],["cardinal",N1],["cardinal-closed",R1],["cardinal-open",L1],["catmull-rom",D1],["catmull-rom-closed",O1],["catmull-rom-open",z1],["linear",Pe],["linear-closed",q1],["monotone-x",W1],["monotone-y",G1],["natural",X1],["step",V1],["step-after",Z1],["step-before",j1]]);function ey(t=Pe,n){if(typeof t=="function")return t;let e=w4.get(`${t}`.toLowerCase());if(!e)throw new Error(`unknown curve: ${t}`);if(n!==void 0){if("beta"in e)return e.beta(n);if("tension"in e)return e.tension(n);if("alpha"in e)return e.alpha(n)}return e}function ry(t=Ar,n){return typeof t!="function"&&`${t}`.toLowerCase()==="auto"?Ar:ey(t,n)}function Ar(t){return Pe(t)}function iy(t={y:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=n;return Sl(xa(e,n,ht),null,null,r,t,qi(n))}function oy(t={x:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=n;return Sl(null,xa(r,n,ht),e,null,t,Yi(n))}function v4(t={fill:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=x4(n);return Sl(e,r,null,null,t,qi(Yi(n)))}function ay(t,n,e={}){if(e?.interval==null)return e;let{reduce:r=Qs}=e,i={filter:null};return e[n]!=null&&(i[n]=r),e[`${n}1`]!=null&&(i[`${n}1`]=r),e[`${n}2`]!=null&&(i[`${n}2`]=r),t(i,e)}function uy({x:t=Oe,...n}={}){return ay(iy,"y",Cr({x:t,...yl(n)},"x"))}function cy({y:t=Oe,...n}={}){return ay(oy,"x",Cr({y:t,...ml(n)},"y"))}function Sl(t,n,e,r,{data:i=Ks,filter:o=ba,sort:a,reverse:u,...c}={},f={}){t=Yp(t),n=Yp(n),c=M4(c,f),i=ly(i,ht),a=a==null?void 0:fy("sort",a,f),o=o==null?void 0:sy("filter",o,f),e!=null&&br(c,"x","x1","x2")&&(e=null),r!=null&&br(c,"y","y1","y2")&&(r=null);let[s,d]=Ft(t),[l,h]=Ft(t),[p,m]=Ft(n),[w,x]=Ft(n),[v,M]=e!=null?[e,"x"]:r!=null?[r,"y"]:[],[g,b]=Ft(v),{x:y,y:_,z:$,fill:S,stroke:C,x1:A,x2:k,y1:D,y2:P,domain:T,cumulative:O,thresholds:R,interval:U,...L}=f,[I,q]=Ft($),[W]=sn(S),[z]=sn(C),[K,et]=Ft(W),[at,B]=Ft(z);return{..."z"in f&&{z:I||$},..."fill"in f&&{fill:K||S},..."stroke"in f&&{stroke:at||C},...Ii(L,(G,N,F)=>{let Y=ya(ft(G,v),F?.[M]),E=ft(G,$),nt=ft(G,W),H=ft(G,z),J=Tg(c,{z:E,fill:nt,stroke:H}),rt=[],ct=[],Cn=Y&&b([]),Pr=E&&q([]),le=nt&&et([]),_y=H&&B([]),Nl=t&&d([]),My=t&&h([]),Rl=n&&m([]),$y=n&&x([]),Sy=A4(t,n,G),Ay=0;for(let Ye of c)Ye.initialize(G);a&&a.initialize(G),o&&o.initialize(G);for(let Ye of N){let Ll=[];for(let Ue of c)Ue.scope("facet",Ye);a&&a.scope("facet",Ye),o&&o.scope("facet",Ye);for(let[Ue,Ty]of xi(Ye,J))for(let[ky,Gi]of xi(Ty,Y))for(let[hn,En]of Sy(Gi))if(J&&(En.z=Ue),!(o&&!o.reduce(hn,En))){Ll.push(Ay++),ct.push(i.reduceIndex(hn,G,En)),Y&&Cn.push(ky),E&&Pr.push(J===E?Ue:E[(hn.length>0?hn:Gi)[0]]),nt&&le.push(J===nt?Ue:nt[(hn.length>0?hn:Gi)[0]]),H&&_y.push(J===H?Ue:H[(hn.length>0?hn:Gi)[0]]),Nl&&(Nl.push(En.x1),My.push(En.x2)),Rl&&(Rl.push(En.y1),$y.push(En.y2));for(let Cy of c)Cy.reduce(hn,En);a&&a.reduce(hn,En)}rt.push(Ll)}return kg(rt,a,u),{data:ct,facets:rt}}),...!br(c,"x")&&(s?{x1:s,x2:l,x:ma(s,l)}:{x:y,x1:A,x2:k}),...!br(c,"y")&&(p?{y1:p,y2:w,y:ma(p,w)}:{y:_,y1:D,y2:P}),...g&&{[M]:g},...Object.fromEntries(c.map(({name:G,output:N})=>[G,N]))}}function Al({cumulative:t,domain:n,thresholds:e,interval:r,...i},o){return[i,{cumulative:t,domain:n,thresholds:e,interval:r,...o}]}function xa(t,{cumulative:n,domain:e,thresholds:r,interval:i},o){return t={...Li(t)},t.domain===void 0&&(t.domain=e),t.cumulative===void 0&&(t.cumulative=n),t.thresholds===void 0&&(t.thresholds=r),t.interval===void 0&&(t.interval=i),t.value===void 0&&(t.value=o),t.thresholds=_4(t.thresholds,t.interval),t}function x4(t){let{x:n,y:e}=t;return n=xa(n,t),e=xa(e,t),[n.value,e.value]=ze(n.value,e.value),{x:n,y:e}}function Yp(t){if(t==null)return;let{value:n,cumulative:e,domain:r=Yt,thresholds:i}=t,o=a=>{let u=ft(a,n),c;if(Bt(u)||S4(i)){u=gt(u,ag,Float64Array);let[s,d]=typeof r=="function"?r(u):r,l=typeof i=="function"&&!yr(i)?i(u,s,d):i;typeof l=="number"&&(l=Do(s,d,l)),yr(l)&&(r===Yt&&(s=l.floor(s),d=l.offset(l.floor(d))),l=l.range(s,l.offset(d))),c=l}else{u=$n(u);let[s,d]=typeof r=="function"?r(u):r,l=typeof i=="function"&&!yr(i)?i(u,s,d):i;if(typeof l=="number")if(r===Yt){let h=He(s,d,l);if(isFinite(h))if(h>0){let p=Math.round(s/h),m=Math.round(d/h);p*h<=s||--p,m*h>d||++m;let w=m-p+1;l=new Float64Array(w);for(let x=0;x<w;++x)l[x]=(p+x)*h}else if(h<0){h=-h;let p=Math.round(s*h),m=Math.round(d*h);p/h<=s||--p,m/h>d||++m;let w=m-p+1;l=new Float64Array(w);for(let x=0;x<w;++x)l[x]=(p+x)/h}else l=[s];else l=[s]}else l=pe(s,d,l);else yr(l)&&(r===Yt&&(s=l.floor(s),d=l.offset(l.floor(d))),l=l.range(s,l.offset(d)));c=l}let f=[];if(c.length===1)f.push([c[0],c[0]]);else for(let s=1;s<c.length;++s)f.push([c[s-1],c[s]]);return f.bin=(e<0?k4:e>0?T4:Tl)(f,c,u),f};return o.label=Be(n),o}function _4(t,n,e=Up){if(t===void 0)return n===void 0?e:Tr(n);if(typeof t=="string"){switch(t.toLowerCase()){case"freedman-diaconis":return Zl;case"scott":return Xa;case"sturges":return Gl;case"auto":return Up}return Os(t)}return t}function M4(t,n){return Mg(t,n,fy)}function fy(t,n,e){return js(t,n,e,sy)}function sy(t,n,e){return Zs(t,n,e,ly)}function ly(t,n){return Ea(t,n,$4)}function $4(t){switch(`${t}`.toLowerCase()){case"x":return C4;case"x1":return N4;case"x2":return R4;case"y":return E4;case"y1":return L4;case"y2":return P4;case"z":return Cg}throw new Error(`invalid bin reduce: ${t}`)}function Up(t,n,e){return Math.min(200,Xa(t,n,e))}function S4(t){return a6(t)||ce(t)&&Bt(t)}function A4(t,n,e){let r=t?.(e),i=n?.(e);return r&&i?function*(o){let a=r.bin(o);for(let[u,[c,f]]of r.entries()){let s=i.bin(a[u]);for(let[d,[l,h]]of i.entries())yield[s[d],{data:e,x1:c,y1:l,x2:f,y2:h}]}}:r?function*(o){let a=r.bin(o);for(let[u,[c,f]]of r.entries())yield[a[u],{data:e,x1:c,x2:f}]}:function*(o){let a=i.bin(o);for(let[u,[c,f]]of i.entries())yield[a[u],{data:e,y1:c,y2:f}]}}function Tl(t,n,e){return n=$n(n),r=>{let i=t.map(()=>[]);for(let o of r)i[je(n,e[o])-1]?.push(o);return i}}function T4(t,n,e){let r=Tl(t,n,e);return i=>{let o=r(i);for(let a=1,u=o.length;a<u;++a){let c=o[a-1],f=o[a];for(let s of c)f.push(s)}return o}}function k4(t,n,e){let r=Tl(t,n,e);return i=>{let o=r(i);for(let a=o.length-2;a>=0;--a){let u=o[a+1],c=o[a];for(let f of u)c.push(f)}return o}}function dy(t,n){let e=(+t+ +n)/2;return t instanceof Date?new Date(e):e}var C4={reduceIndex(t,n,{x1:e,x2:r}){return dy(e,r)}},E4={reduceIndex(t,n,{y1:e,y2:r}){return dy(e,r)}},N4={reduceIndex(t,n,{x1:e}){return e}},R4={reduceIndex(t,n,{x2:e}){return e}},L4={reduceIndex(t,n,{y1:e}){return e}},P4={reduceIndex(t,n,{y2:e}){return e}},D4={ariaLabel:"area",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},I4={ariaLabel:"area-line",fillOpacity:.3,stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},Ci=class extends Ct{constructor(n,e={},r=D4){let{x1:i,y1:o,x2:a,y2:u,z:c,curve:f,tension:s}=e;super(n,{x1:{value:i,scale:"x"},y1:{value:o,scale:"y"},x2:{value:a,scale:"x",optional:!0},y2:{value:u,scale:"y",optional:!0},z:{value:qs(e),optional:!0}},e,r),this.z=c,this.curve=ey(f,s)}filter(n){return n}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,e,0,0).call(s=>s.selectAll().data(al(n,[a,u,c,f],this,r)).enter().append("path").call(Lt,this).call(ol,this,r).attr("d",kf().curve(this.curve).defined(d=>d>=0).x0(d=>a[d]).y0(d=>u[d]).x1(d=>c[d]).y1(d=>f[d]))).node()}},_a=class extends Ci{constructor(n,e={}){super(n,e,I4),Bi(this,e)}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,e,0,0).call(s=>s.selectAll().data(al(n,[a,u,c,f],this,r)).enter().append("g").call(Lt,this).call(ol,this,r).call(d=>d.append("path").attr("stroke","none").attr("d",kf().curve(this.curve).defined(l=>l>=0).x0(l=>a[l]).y0(l=>u[l]).x1(l=>c[l]).y1(l=>f[l]))).call(d=>d.append("path").call(am,this,r,o).attr("fill","none").attr("transform",St?`translate(${St},${St})`:null).attr("d",ta().curve(this.curve).defined(l=>l>=0).x(l=>c[l]).y(l=>f[l])))).node()}};function O4(t,n){let{x:e,y:r,line:i,color:o,stroke:a=o,fill:u=o,z:c=e===u||e===a?null:void 0,...f}=cy(n);return new(i?_a:Ci)(t,bl({...f,x:e,y1:r,y2:void 0,z:c,stroke:a,fill:u}))}function F4(t,n){let{x:e,y:r,line:i,color:o,stroke:a=o,fill:u=o,z:c=r===u||r===a?null:void 0,...f}=uy(n);return new(i?_a:Ci)(t,wl({...f,x1:e,x2:void 0,y:r,z:c,stroke:a,fill:u}))}var z4={ariaLabel:"link",fill:"none",stroke:"currentColor",strokeMiterlimit:1},ks=class extends Ct{constructor(n,e={}){let{x1:r,y1:i,x2:o,y2:a,curve:u,tension:c}=e;super(n,{x1:{value:r,scale:"x"},y1:{value:i,scale:"y"},x2:{value:o,scale:"x",optional:!0},y2:{value:a,scale:"y",optional:!0}},e,z4),this.curve=ry(u,c),Bi(this,e)}project(n,e,r){this.curve!==Ar&&super.project(n,e,r)}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r,{curve:s}=this;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,e).call(d=>d.selectAll().data(n).enter().append("path").call(Lt,this).attr("d",s===Ar&&o.projection?B4(o.path(),a,u,c,f):l=>{let h=Ln(),p=s(h);return p.lineStart(),p.point(a[l],u[l]),p.point(c[l],f[l]),p.lineEnd(),h}).call(ln,this,r).call(ll,this,r,o)).node()}};function B4(t,n,e,r,i){return n=$n(n),e=$n(e),r=$n(r),i=$n(i),o=>t({type:"LineString",coordinates:[[n[o],e[o]],[r[o],i[o]]]})}function hy(t,{x:n,x1:e,x2:r,y:i,y1:o,y2:a,...u}={}){return[e,r]=Wp(n,e,r),[o,a]=Wp(i,o,a),new ks(t,{...u,x1:e,x2:r,y1:o,y2:a})}function Wp(t,n,e){if(t===void 0){if(n===void 0){if(e!==void 0)return[e]}else if(e===void 0)return[n]}else{if(n===void 0)return e===void 0?[t]:[t,e];if(e===void 0)return[t,n]}return[n,e]}var q4={ariaLabel:"bar"},Ei=class extends Ct{constructor(n,e,r={},i=q4){super(n,e,r,i),vl(this,r),xl(this,r)}render(n,e,r,i,o){let{rx:a,ry:u,rx1y1:c,rx1y2:f,rx2y1:s,rx2y2:d}=this,l=this._x(e,r,i),h=this._y(e,r,i),p=this._width(e,r,i),m=this._height(e,r,i);return pt("svg:g",o).call(Ht,this,i,o).call(this._transform,this,e).call(w=>w.selectAll().data(n).enter().call(c||f||s||d?x=>x.append("path").call(Lt,this).call(_l,l,h,Gp(l,p),Gp(h,m),this).call(ln,this,r):x=>x.append("rect").call(Lt,this).attr("x",l).attr("width",p).attr("y",h).attr("height",m).call(X,"rx",a).call(X,"ry",u).call(ln,this,r))).node()}_x(n,{x:e},{marginLeft:r}){let{insetLeft:i}=this;return e?o=>e[o]+i:r+i}_y(n,{y:e},{marginTop:r}){let{insetTop:i}=this;return e?o=>e[o]+i:r+i}_width({x:n},{x:e},{marginRight:r,marginLeft:i,width:o}){let{insetLeft:a,insetRight:u}=this,c=e&&n?n.bandwidth():o-r-i;return Math.max(0,c-a-u)}_height({y:n},{y:e},{marginTop:r,marginBottom:i,height:o}){let{insetTop:a,insetBottom:u}=this,c=e&&n?n.bandwidth():o-r-i;return Math.max(0,c-a-u)}};function Gp(t,n){return typeof t=="function"&&typeof n=="function"?e=>t(e)+n(e):typeof t=="function"?e=>t(e)+n:typeof n=="function"?e=>t+n(e):t+n}var Cs=class extends Ei{constructor(n,e={},r){let{x1:i,x2:o,y:a}=e;super(n,{x1:{value:i,scale:"x"},x2:{value:o,scale:"x"},y:{value:a,scale:"y",type:"band",optional:!0}},e,r)}_transform(n,e,{x:r}){n.call(Pt,e,{x:r},0,0)}_x({x:n},{x1:e,x2:r},{marginLeft:i}){let{insetLeft:o}=this;return kn(n)?i+o:a=>Math.min(e[a],r[a])+o}_width({x:n},{x1:e,x2:r},{marginRight:i,marginLeft:o,width:a}){let{insetLeft:u,insetRight:c}=this;return kn(n)?a-i-o-u-c:f=>Math.max(0,Math.abs(r[f]-e[f])-u-c)}},Es=class extends Ei{constructor(n,e={},r){let{x:i,y1:o,y2:a}=e;super(n,{y1:{value:o,scale:"y"},y2:{value:a,scale:"y"},x:{value:i,scale:"x",type:"band",optional:!0}},e,r)}_transform(n,e,{y:r}){n.call(Pt,e,{y:r},0,0)}_y({y:n},{y1:e,y2:r},{marginTop:i}){let{insetTop:o}=this;return kn(n)?i+o:a=>Math.min(e[a],r[a])+o}_height({y:n},{y1:e,y2:r},{marginTop:i,marginBottom:o,height:a}){let{insetTop:u,insetBottom:c}=this;return kn(n)?a-i-o-u-c:f=>Math.max(0,Math.abs(r[f]-e[f])-u-c)}};function Y4(t,n={}){return Sa(n)||(n={...n,y:Oe,x2:ht}),new Cs(t,bl(pm(ml(n))))}function U4(t,n={}){return Sa(n)||(n={...n,x:Oe,y2:ht}),new Es(t,wl(gm(yl(n))))}var W4={ariaLabel:"cell"},Ns=class extends Ei{constructor(n,{x:e,y:r,...i}={}){super(n,{x:{value:e,scale:"x",type:"band",optional:!0},y:{value:r,scale:"y",type:"band",optional:!0}},i,W4)}_transform(n,e){n.call(Pt,e,{},0,0)}};function G4(t,{x:n,y:e,...r}={}){return[n,e]=ze(n,e),new Ns(t,{...r,x:n,y:e})}var H4={ariaLabel:"dot",fill:"none",stroke:"currentColor",strokeWidth:1.5};function X4(t){return t.sort===void 0&&t.reverse===void 0?S6({channel:"-r"},t):t}var Rs=class extends Ct{constructor(n,e={}){let{x:r,y:i,r:o,rotate:a,symbol:u=hr,frameAnchor:c}=e,[f,s]=Rt(a,0),[d,l]=M6(u),[h,p]=Rt(o,d==null?3:4.5);super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},r:{value:h,scale:"r",filter:Ma,optional:!0},rotate:{value:f,optional:!0},symbol:{value:d,scale:"auto",optional:!0}},X4(e),H4),this.r=p,this.rotate=s,this.symbol=l,this.frameAnchor=ka(c);let{channels:m}=this,{symbol:w}=m;if(w){let{fill:x,stroke:v}=m;w.hint={fill:x?x.value===w.value?"color":"currentColor":this.fill??"currentColor",stroke:v?v.value===w.value?"color":"currentColor":this.stroke??"none"}}}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,r:s,rotate:d,symbol:l}=r,{r:h,rotate:p,symbol:m}=this,[w,x]=zi(this,i),v=m===hr,M=s?void 0:h*h*Math.PI;return Ps(h)&&(n=[]),pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,{x:c&&a,y:f&&u}).call(g=>g.selectAll().data(n).enter().append(v?"circle":"path").call(Lt,this).call(v?b=>{b.attr("cx",c?y=>c[y]:w).attr("cy",f?y=>f[y]:x).attr("r",s?y=>s[y]:h)}:b=>{b.attr("transform",dl`translate(${c?y=>c[y]:w},${f?y=>f[y]:x})${d?y=>` rotate(${d[y]})`:p?` rotate(${p})`:""}`).attr("d",s&&l?y=>{let _=Ln();return l[y].draw(_,s[y]*s[y]*Math.PI),_}:s?y=>{let _=Ln();return m.draw(_,s[y]*s[y]*Math.PI),_}:l?y=>{let _=Ln();return l[y].draw(_,M),_}:(()=>{let y=Ln();return m.draw(y,M),y})())}).call(ln,this,r)).node()}};function Lr(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new Rs(t,{...r,x:n,y:e})}var V4={ariaLabel:"line",fill:"none",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},Ni=class extends Ct{constructor(n,e={}){let{x:r,y:i,z:o,curve:a,tension:u}=e;super(n,{x:{value:r,scale:"x"},y:{value:i,scale:"y"},z:{value:qs(e),optional:!0}},e,V4),this.z=o,this.curve=ry(a,u),Bi(this,e)}filter(n){return n}project(n,e,r){this.curve!==Ar&&super.project(n,e,r)}render(n,e,r,i,o){let{x:a,y:u}=r,{curve:c}=this;return pt("svg:g",o).call(Ht,this,i,o).call(Pt,this,e).call(f=>f.selectAll().data(al(n,[a,u],this,r)).enter().append("path").call(Lt,this).call(ol,this,r).call(am,this,r,o).attr("d",c===Ar&&o.projection?j4(o.path(),a,u):ta().curve(c).defined(s=>s>=0).x(s=>a[s]).y(s=>u[s]))).node()}};function j4(t,n,e){return n=$n(n),e=$n(e),r=>{let i=[],o=[i];for(let a of r)a===-1?(i=[],o.push(i)):i.push([n[a],e[a]]);return t({type:"MultiLineString",coordinates:o})}}function Z4(t,{x:n,y:e,...r}={}){return[n,e]=ze(n,e),new Ni(t,{...r,x:n,y:e})}function K4(t,n){let{x:e,y:r,stroke:i,z:o=i===e?null:void 0,...a}=cy(n);return new Ni(t,{...a,x:e,y:r,z:o,stroke:i})}function kl(t,n){let{x:e,y:r,stroke:i,z:o=i===r?null:void 0,...a}=uy(n);return new Ni(t,{...a,x:e,y:r,z:o,stroke:i})}var Q4={dot:Lr,line:Z4,lineX:K4,lineY:kl,areaX:O4,areaY:F4,ruleX:ym,ruleY:Da,barX:Y4,barY:U4,rect:H8,rectX:X8,rectY:V8,cell:G4,bin:v4,binX:iy,binY:oy,group:E6,groupX:k6,groupY:C6},z_=Object.fromEntries(Object.entries(Q4).map(([t,n])=>[n,t]));var B_=new Uint8ClampedArray(4);var us,Hp;function J4(){if(Hp)return us;Hp=1;function t(a,u,c,f,s){for(var d=s+1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p>=0?(d=l,s=l-1):f=l+1}return d}function n(a,u,c,f,s){for(var d=s+1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p>0?(d=l,s=l-1):f=l+1}return d}function e(a,u,c,f,s){for(var d=f-1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p<0?(d=l,f=l+1):s=l-1}return d}function r(a,u,c,f,s){for(var d=f-1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p<=0?(d=l,f=l+1):s=l-1}return d}function i(a,u,c,f,s){for(;f<=s;){var d=f+s>>>1,l=a[d],h=c!==void 0?c(l,u):l-u;if(h===0)return d;h<=0?f=d+1:s=d-1}return-1}function o(a,u,c,f,s,d){return typeof c=="function"?d(a,u,c,f===void 0?0:f|0,s===void 0?a.length-1:s|0):d(a,u,void 0,c===void 0?0:c|0,f===void 0?a.length-1:f|0)}return us={ge:function(a,u,c,f,s){return o(a,u,c,f,s,t)},gt:function(a,u,c,f,s){return o(a,u,c,f,s,n)},lt:function(a,u,c,f,s){return o(a,u,c,f,s,e)},le:function(a,u,c,f,s){return o(a,u,c,f,s,r)},eq:function(a,u,c,f,s){return o(a,u,c,f,s,i)}},us}var cs,Xp;function t7(){if(Xp)return cs;Xp=1;var t=J4(),n=0,e=1,r=2;cs=M;function i(g,b,y,_,$){this.mid=g,this.left=b,this.right=y,this.leftPoints=_,this.rightPoints=$,this.count=(b?b.count:0)+(y?y.count:0)+_.length}var o=i.prototype;function a(g,b){g.mid=b.mid,g.left=b.left,g.right=b.right,g.leftPoints=b.leftPoints,g.rightPoints=b.rightPoints,g.count=b.count}function u(g,b){var y=w(b);g.mid=y.mid,g.left=y.left,g.right=y.right,g.leftPoints=y.leftPoints,g.rightPoints=y.rightPoints,g.count=y.count}function c(g,b){var y=g.intervals([]);y.push(b),u(g,y)}function f(g,b){var y=g.intervals([]),_=y.indexOf(b);return _<0?n:(y.splice(_,1),u(g,y),e)}o.intervals=function(g){return g.push.apply(g,this.leftPoints),this.left&&this.left.intervals(g),this.right&&this.right.intervals(g),g},o.insert=function(g){var b=this.count-this.leftPoints.length;if(this.count+=1,g[1]<this.mid)this.left?4*(this.left.count+1)>3*(b+1)?c(this,g):this.left.insert(g):this.left=w([g]);else if(g[0]>this.mid)this.right?4*(this.right.count+1)>3*(b+1)?c(this,g):this.right.insert(g):this.right=w([g]);else{var y=t.ge(this.leftPoints,g,p),_=t.ge(this.rightPoints,g,m);this.leftPoints.splice(y,0,g),this.rightPoints.splice(_,0,g)}},o.remove=function(g){var b=this.count-this.leftPoints;if(g[1]<this.mid){if(!this.left)return n;var y=this.right?this.right.count:0;if(4*y>3*(b-1))return f(this,g);var _=this.left.remove(g);return _===r?(this.left=null,this.count-=1,e):(_===e&&(this.count-=1),_)}else if(g[0]>this.mid){if(!this.right)return n;var $=this.left?this.left.count:0;if(4*$>3*(b-1))return f(this,g);var _=this.right.remove(g);return _===r?(this.right=null,this.count-=1,e):(_===e&&(this.count-=1),_)}else{if(this.count===1)return this.leftPoints[0]===g?r:n;if(this.leftPoints.length===1&&this.leftPoints[0]===g){if(this.left&&this.right){for(var S=this,C=this.left;C.right;)S=C,C=C.right;if(S===this)C.right=this.right;else{var A=this.left,_=this.right;S.count-=C.count,S.right=C.left,C.left=A,C.right=_}a(this,C),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?a(this,this.left):a(this,this.right);return e}for(var A=t.ge(this.leftPoints,g,p);A<this.leftPoints.length&&this.leftPoints[A][0]===g[0];++A)if(this.leftPoints[A]===g){this.count-=1,this.leftPoints.splice(A,1);for(var _=t.ge(this.rightPoints,g,m);_<this.rightPoints.length&&this.rightPoints[_][1]===g[1];++_)if(this.rightPoints[_]===g)return this.rightPoints.splice(_,1),e}return n}};function s(g,b,y){for(var _=0;_<g.length&&g[_][0]<=b;++_){var $=y(g[_]);if($)return $}}function d(g,b,y){for(var _=g.length-1;_>=0&&g[_][1]>=b;--_){var $=y(g[_]);if($)return $}}function l(g,b){for(var y=0;y<g.length;++y){var _=b(g[y]);if(_)return _}}o.queryPoint=function(g,b){if(g<this.mid){if(this.left){var y=this.left.queryPoint(g,b);if(y)return y}return s(this.leftPoints,g,b)}else if(g>this.mid){if(this.right){var y=this.right.queryPoint(g,b);if(y)return y}return d(this.rightPoints,g,b)}else return l(this.leftPoints,b)},o.queryInterval=function(g,b,y){if(g<this.mid&&this.left){var _=this.left.queryInterval(g,b,y);if(_)return _}if(b>this.mid&&this.right){var _=this.right.queryInterval(g,b,y);if(_)return _}return b<this.mid?s(this.leftPoints,b,y):g>this.mid?d(this.rightPoints,g,y):l(this.leftPoints,y)};function h(g,b){return g-b}function p(g,b){var y=g[0]-b[0];return y||g[1]-b[1]}function m(g,b){var y=g[1]-b[1];return y||g[0]-b[0]}function w(g){if(g.length===0)return null;for(var b=[],y=0;y<g.length;++y)b.push(g[y][0],g[y][1]);b.sort(h);for(var _=b[b.length>>1],$=[],S=[],C=[],y=0;y<g.length;++y){var A=g[y];A[1]<_?$.push(A):_<A[0]?S.push(A):C.push(A)}var k=C,D=C.slice();return k.sort(p),D.sort(m),new i(_,w($),w(S),k,D)}function x(g){this.root=g}var v=x.prototype;v.insert=function(g){this.root?this.root.insert(g):this.root=new i(g[0],null,null,[g],[g])},v.remove=function(g){if(this.root){var b=this.root.remove(g);return b===r&&(this.root=null),b!==n}return!1},v.queryPoint=function(g,b){if(this.root)return this.root.queryPoint(g,b)},v.queryInterval=function(g,b,y){if(g<=b&&this.root)return this.root.queryInterval(g,b,y)},Object.defineProperty(v,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(v,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function M(g){return!g||g.length===0?new x(null):new x(w(g))}return cs}var q_=t7();function Cl(t){return{mapIndex(n,e,r){let i=+t(n,e);for(let o of n)r[o]=e[o]===null?NaN:e[o]/i}}}function Ui(t){return Cl((n,e)=>t(n,r=>e[r]))}var Y_=Cl((t,n)=>{for(let e=0;e<t.length;++e){let r=n[t[e]];if(An(r))return r}}),U_=Cl((t,n)=>{for(let e=t.length-1;e>=0;--e){let r=n[t[e]];if(An(r))return r}});var W_=Ui(qt),G_=Ui(Va),H_=Ui(zr),X_=Ui(an),V_=Ui(pn);var py="http://www.w3.org/2000/svg",rn=t=>String(t).replace(/[&<>"]/g,n=>({"&":"&","<":"<",">":">",'"':"""})[n]),Fa=(t,n)=>t.show??t.text+(n??"");function gy(t,n,e){let r=n.reduce((b,y)=>b+y.value,0);t.innerHTML="";let i=Object.assign(document.createElement("div"),{className:"fs-bar"}),o=Object.assign(document.createElement("div"),{className:"fs-rest"});t.append(i,o);let u=n.map(b=>{let y=document.createElement("div");return y.className="fs-seg"+(b.tone?" "+b.tone:""),y.style.flex=`${b.value/r} 1 0`,y.innerHTML=`<b>${rn(Fa(b,e))}</b><span>${b.label}</span>`,i.appendChild(y),{p:b,seg:y}}).filter(b=>b.seg.scrollWidth>b.seg.clientWidth+1);if(!u.length){o.remove();return}let c=t.getBoundingClientRect();for(let b of u)b.seg.classList.add("fs-out"),b.item=document.createElement("span"),b.item.innerHTML=`<b>${rn(Fa(b.p,e))}</b> ${b.p.label}`,b.item.style.cssText="position: absolute; white-space: nowrap;",o.appendChild(b.item);let f=c.width,s=22;for(let b of u){let y=b.seg.getBoundingClientRect();b.cx=y.left-c.left+y.width/2,b.w=b.item.offsetWidth}let d=getComputedStyle(t).getPropertyValue("--line").trim(),l=[],h;for(let b of u)b.x=Math.max(0,Math.min(f-b.w,b.cx-b.w/2));for(let b=1;b<u.length;b++)u[b].x=Math.max(u[b].x,u[b-1].x+u[b-1].w+s);for(let b=u.length-1;b>=0;b--){let y=b===u.length-1?f-u[b].w:u[b+1].x-s-u[b].w;u[b].x=Math.min(u[b].x,y)}let p=28,m=Math.max(...u.map(b=>b.w)),w=Math.min(...u.map(b=>b.cx)),x=Math.max(...u.map(b=>b.cx)),v=w-p>=m?"left":f-x-p>=m?"right":null;if(!u.some(b=>u.some(y=>y!==b&&y.cx>b.x&&y.cx<b.x+b.w))||!v){for(let y of u){y.y=26;let _=Math.max(y.x+8,Math.min(y.x+y.w-8,y.cx));l.push(`M${y.cx},-8 V${26/2-4} H${_} V23`)}h=26+u[0].item.offsetHeight}else{let y=u[0].item.offsetHeight+8,_=v==="left",$=[...u].sort((S,C)=>_?S.cx-C.cx:C.cx-S.cx);$.forEach((S,C)=>{S.y=14+C*y;let A=S.y+S.item.offsetHeight/2;if(_){let k=w-p;S.right=f-k,l.push(`M${S.cx},-8 V${A} H${k+6}`)}else{let k=x+p;S.x=k,l.push(`M${S.cx},-8 V${A} H${k-6}`)}}),h=14+$.length*y-8}o.style.cssText=`position: relative; display: block; height: ${h}px;`;let g=document.createElementNS(py,"svg");g.setAttribute("width",f),g.setAttribute("height",h),g.setAttribute("style","position:absolute;left:0;top:0;overflow:visible"),o.appendChild(g);for(let b of u)b.item.style.cssText=`position: absolute; ${b.right===void 0?`left: ${b.x}`:`right: ${b.right}`}px; top: ${b.y}px; white-space: nowrap;`;for(let b of l){let y=document.createElementNS(py,"path");for(let[_,$]of Object.entries({d:b,fill:"none",stroke:d,"stroke-width":1.5}))y.setAttribute(_,$);g.appendChild(y)}}function my(t,n,e,r){let i=r??Math.max(...n.map(u=>u.value));t.innerHTML="";let o=n.map(u=>{let c=Object.assign(document.createElement("div"),{className:"fb-label",innerHTML:u.label}),f=Object.assign(document.createElement("div"),{className:"fb-track"}),s=u.tone?" "+u.tone:"";return f.innerHTML=`<div class="fb-bar${s}"></div><div class="fb-val${u.tone?" lead "+u.tone:""}">${rn(Fa(u,e))}${u.note?`<span class="fb-sub">${rn(u.note)}</span>`:""}</div>`,t.append(c,f),{bar:f.firstChild,ratio:i>0?Math.max(0,u.value)/i:0}}),a=Math.max(...[...t.querySelectorAll(".fb-val")].map(u=>u.offsetWidth))+12;for(let u of o)u.bar.style.width=`calc((100% - ${a}px) * ${u.ratio})`}var e7='<svg width="56" height="24" viewBox="0 0 56 24" aria-hidden="true"><path d="M2 12 H48 M38 3 L50 12 L38 21" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg>';function yy(t,n){let e=n.max??Math.max(n.before.value,n.after.value),r=n.after.tone??"accent",i=(o,a)=>`<div class="fc-side ${a}"><span class="fc-when">${rn(o.label)}</span><b class="fc-num">${rn(Fa({...o,text:String(o.value)},n.unit))}</b><div class="fc-bar" style="width:${e>0?100*o.value/e:0}%"></div></div>`;t.innerHTML=i(n.before,"before")+`<div class="fc-arrow">${e7}</div>`+i(n.after,"after "+r)}var by=t=>{let n=e=>getComputedStyle(t).getPropertyValue(e).trim();return{css:n,ink:n("--ink"),muted:n("--muted"),soft:n("--soft"),line:n("--line"),accent:n("--accent"),second:n("--second"),good:n("--good"),bad:n("--bad"),small:parseFloat(n("--small"))||15,body:parseFloat(n("--body"))||16,sans:n("--sans")}},za=t=>typeof t=="number"?t:new Date(t),Wi=t=>(Math.abs(t)>=100?Math.round(t):Math.round(t*10)/10).toLocaleString("en-GB");function r7(t,n){let e=Math.abs(n-t)/864e5;return e<1?`${Wi(e*24)} hours`:`${Wi(e)} ${e===1?"day":"days"}`}function El(t,n,e,r=400){let i=document.createElement("span");i.style.cssText=`position:absolute;visibility:hidden;white-space:nowrap;font-size:${e}px;font-weight:${r}`,t.appendChild(i);let o=Math.max(...n.map(a=>(i.textContent=a,i.getBoundingClientRect().width)));return i.remove(),o}function wy(t,n,e){t.classList.add("chart"),t.innerHTML="",t.appendChild(Ml({...e,style:{background:"transparent",color:n.muted,fontFamily:n.sans,fontSize:n.small+"px",overflow:"visible"}}))}function vy(t,n){let e=by(t),r=Math.floor(t.clientWidth)||640,i=typeof n.rows[0].from=="string",o=n.rows.map(h=>({...h,a:za(h.from),b:za(h.to)}));for(let h of o)h.text=h.gap??(i?r7(h.a,h.b):Wi(Math.abs(h.b-h.a))+(n.unit??"")),h.mid=i?new Date((+h.a+ +h.b)/2):(h.a+h.b)/2,h.color=e[h.tone??"accent"];let a=o.flatMap(h=>[+h.a,+h.b]),u=Math.min(...a),c=Math.max(...a),f=(c-u||1)*.08,s=i?[new Date(u-f),new Date(c+f)]:[u-f,c+f],d=El(t,o.map(h=>h.label),e.body);wy(t,e,{width:r,height:o.length*92+50,marginLeft:Math.ceil(d)+28,marginRight:24,marginTop:0,marginBottom:40,x:{domain:s,ticks:r<600?4:5,label:null,tickFormat:i?void 0:h=>Wi(h)+(n.unit??"")},y:{domain:o.map(h=>h.label),axis:null,padding:.5},marks:[Er(o,{y:"label",text:"label",frameAnchor:"left",dx:-(Math.ceil(d)+28),textAnchor:"start",fill:e.ink,fontSize:e.body}),hy(o,{x1:"a",x2:"b",y1:"label",y2:"label",stroke:"color",strokeWidth:3}),Lr(o,{x:"a",y:"label",r:6.5,fill:e.soft}),Lr(o.filter(h=>h.b>=h.a),{x:"b",y:"label",symbol:"triangle2",r:7.5,dx:-5,fill:"color",rotate:90}),Lr(o.filter(h=>h.b<h.a),{x:"b",y:"label",symbol:"triangle2",r:7.5,dx:5,fill:"color",rotate:-90}),Er(o,{x:"mid",y:"label",text:"text",dy:-22,fill:e.ink,fontWeight:600,fontSize:e.small})]});let l=document.createElement("p");l.className="fd-key",l.innerHTML=`<span class="fd-from"><i></i>${rn(n.fromLabel)}</span><span class="fd-to${o.every(h=>h.b<h.a)?" back":""}" style="color:${e.accent}"><i></i>${rn(n.toLabel)}</span>`,t.prepend(l)}function xy(t,n){let e=by(t),r=Math.floor(t.clientWidth)||640,i=n.points.map(b=>({x:za(b.x),y:b.y})),o=i.findIndex(b=>+b.x==+za(n.mark.x)),a=i[o],u=i.slice(Math.max(0,o-3),o+4).map(b=>b.y),c=a.y>=u.reduce((b,y)=>b+y,0)/u.length,f=i.map(b=>b.y),s=n.zero??!0,d=Math.max(...f),l=s?Math.min(0,...f):Math.min(...f),h=b=>Wi(b)+(n.unit??""),p=El(t,[h(d),h(l)],e.small),m=Math.ceil(p)+14,w=r-m-20,v=m+w*((+a.x-+i[0].x)/(+i[i.length-1].x-+i[0].x))+14+El(t,[n.mark.label],e.body,600)<=r-20,M=s?(a.y-l)/(d*1.04-l)*270:1/0,g=c?-12:Math.min(0,M-18);wy(t,e,{width:r,height:340,marginLeft:m,marginRight:20,marginTop:30,marginBottom:40,x:{label:null,ticks:r<600?4:5,insetLeft:18},y:{label:null,grid:!0,ticks:4,tickSize:0,domain:s?[l,d*1.04]:void 0,tickFormat:h},marks:[s?Da([0],{stroke:e.line}):null,kl(i,{x:"x",y:"y",stroke:e.soft,strokeWidth:2.5}),Lr([a],{x:"x",y:"y",r:6.5,fill:e.accent}),Er([a],{x:"x",y:"y",text:()=>n.mark.label,dx:v?14:-14,dy:g,textAnchor:v?"start":"end",fill:e.accent,fontWeight:600,fontSize:e.body})]})}var i7={split:"fig-split",bars:"fig-bars","before-after":"fig-change",dumbbell:"div",series:"div"};function o7(t,n){let e=document.createElement("header");e.innerHTML=`<h1>${rn(t.title)}</h1>${t.note?`<p class="read">${rn(t.note)}</p>`:""}`;let r=document.createElement(i7[t.type]);if(n.append(e,r),t.source){let o=document.createElement("footer");o.innerHTML=`<p>${rn(t.source)}</p>`,n.append(o)}let i=()=>{if(t.type==="before-after")return yy(r,t);if(t.type==="dumbbell")return vy(r,t);if(t.type==="series")return xy(r,t);let o=(t.parts??t.bars).map(a=>({...a,text:String(a.value),label:rn(a.label)}));t.type==="split"?gy(r,o,t.unit):my(r,o,t.unit,t.max)};return i(),{chart:r,draw:i}}return Dy(a7);})();
|
|
59
|
+
}`)).call(cl,e);for(let L of f){let{channels:I,values:q,facets:W}=m.get(L);if(p===void 0||L.facet==="super"){let z=null;if(W&&(z=W[0],z=L.filter(z,I,q),z.length===0))continue;let K=L.render(z,w,q,y,_);if(K==null)continue;S.appendChild(K)}else{let z;for(let K of p){if(!(L.facetAnchor?.(p,k,K)??!K.empty))continue;let et=null;if(W){let B=d.has(L);if(et=W[B?K.i:0],et=L.filter(et,I,q),et.length===0)continue;!B&&et===W[0]&&(et=r6(et)),et.fx=K.x,et.fy=K.y,et.fi=K.i}let at=L.render(et,w,q,b,_);if(at!=null){(z??=Nn(S).append("g")).append(()=>at).datum(K);for(let B of["aria-label","aria-description","aria-hidden","transform"])at.hasAttribute(B)&&(z.attr(B,at.getAttribute(B)),at.removeAttribute(B))}}z?.selectChildren().each(D)}}let O=N8(v,_,t),{figure:R=r!=null||i!=null||o!=null||O.length>0}=t;R&&(C=$.createElement("figure"),C.className=`${c}-figure`,C.style.maxWidth="initial",r!=null&&C.append(Op($,r,"h2")),i!=null&&C.append(Op($,i,"h3")),C.append(...O,S),o!=null&&C.append(a4($,o)),"value"in S&&(C.value=S.value,delete S.value)),C.scale=j5(w.scales,_),C.legend=k8(v,_,t);let U=Z6();return U>0&&Nn(S).append("text").attr("x",P).attr("y",20).attr("dy","-1em").attr("text-anchor","end").attr("font-family","initial").text("\u26A0\uFE0F").append("title").text(`${U.toLocaleString("en-US")} warning${U===1?"":"s"}. Please check the console.`),C}function Op(t,n,e){if(n.ownerDocument)return n;let r=t.createElement(e);return r.append(n),r}function a4(t,n){let e=t.createElement("figcaption");return e.append(n),e}function Fp(t){return t.flat(1/0).filter(n=>n!=null).map(u4)}function u4(t){return typeof t.render=="function"?t:new Ts(t)}var Ts=class extends Ct{constructor(n){if(typeof n!="function")throw new TypeError("invalid mark; missing render function");super(),this.render=n}render(){}};function $l(t,n){for(let e in t)ny(t[e],n);return t}function ny(t,n){let{scale:e,transform:r=!0}=t;if(e==null||!r)return;let{type:i,percent:o,interval:a,transform:u=o?c=>c==null?NaN:c*100:dg(a,i)}=n[e]??{};u!=null&&(t.value=gt(t.value,u),t.transform=!1)}function c4(t){for(let n in t)Eg(n,t[n])}function wi(t,n,e,r=n6){for(let{channels:i}of n.values())for(let o in i){let a=i[o],{scale:u}=a;if(u!=null&&r(u))if(u==="projection"){if(!r5(e)){let c=e.x?.domain===void 0,f=e.y?.domain===void 0;if(c||f){let[s,d]=o5(a);c&&as(t,"x",s),f&&as(t,"y",d)}}}else as(t,u,a)}return t}function as(t,n,e){let r=t.get(n);r!==void 0?r.push(e):t.set(n,[e])}function f4(t,n){if(t==null)return;let{x:e,y:r}=t;if(e==null&&r==null)return;let i=xr(t.data);if(i==null)throw new Error("missing facet data");let o={};e!=null&&(o.fx=Si(i,{value:e,scale:"fx"})),r!=null&&(o.fy=Si(i,{value:r,scale:"fy"})),$l(o,n);let a=fl(i,o);return{channels:o,groups:a,data:t.data}}function zp(t,n,e){if(t.facet===null||t.facet==="super")return;let{fx:r,fy:i}=t;if(r!=null||i!=null){let c=xr(t.data??r??i);if(c===void 0)throw new Error(`missing facet data in ${t.ariaLabel}`);if(c===null)return;let f={};return r!=null&&(f.fx=Si(c,{value:r,scale:"fx"})),i!=null&&(f.fy=Si(c,{value:i,scale:"fy"})),$l(f,e),{channels:f,groups:fl(c,f)}}if(n===void 0)return;let{channels:o,groups:a,data:u}=n;if(t.facet!=="auto"||t.data===u)return{channels:o,groups:a};u.length>0&&(a.size>1||a.size===1&&o.fx&&o.fy&&[...a][0][1].size>1)&&Mi(xr(t.data))===Mi(u)&&ae(`Warning: the ${t.ariaLabel} mark appears to use faceted data, but isn\u2019t faceted. The mark data has the same length as the facet data and the mark facet option is "auto", but the mark data and facet data are distinct. If this mark should be faceted, set the mark facet option to true; otherwise, suppress this warning by setting the mark facet option to false.`)}function s4(t,n={}){return Mr({...n,x:null,y:null},(e,r,i,o,a,u)=>u.getMarkState(t))}function l4(t){let n=[];for(let e of t){let r=e.tip;if(r){r===!0?r={}:typeof r=="string"&&(r={pointer:r});let{pointer:i,preferredAnchor:o}=r;i=/^x$/i.test(i)?O3:/^y$/i.test(i)?Mp:I3,r=i(s4(e,r)),r.title=null,o===void 0&&(r.preferredAnchor=i===Mp?"left":"bottom");let a=t4(e.data,r);a.facet=e.facet,a.facetAnchor=e.facetAnchor,n.push(a)}}return n}function d4(t,n,e){let{projection:r,x:i={},y:o={},fx:a={},fy:u={},axis:c,grid:f,facet:s={},facet:{axis:d=c,grid:l}=s,x:{axis:h=c,grid:p=h===null?null:f}=i,y:{axis:m=c,grid:v=m===null?null:f}=o,fx:{axis:x=d,grid:w=x===null?null:l}=a,fy:{axis:M=d,grid:g=M===null?null:l}=u}=e;(r||!ls(i)&&!Bp("x",t))&&(h=p=null),(r||!ls(o)&&!Bp("y",t))&&(m=v=null),n.has("fx")||(x=w=null),n.has("fy")||(M=g=null),h===void 0&&(h=!sa(t,"x")),m===void 0&&(m=!sa(t,"y")),x===void 0&&(x=!sa(t,"fx")),M===void 0&&(M=!sa(t,"fy")),h===!0&&(h="bottom"),m===!0&&(m="left"),x===!0&&(x=h==="top"||h===null?"bottom":"top"),M===!0&&(M=m==="right"||m===null?"left":"right");let b=[];return fa(b,g,b8,u),ca(b,M,l8,"right","left",s,u),fa(b,w,v8,a),ca(b,x,d8,"top","bottom",s,a),fa(b,v,y8,o),ca(b,m,Rm,"left","right",e,o),fa(b,p,w8,i),ca(b,h,Lm,"bottom","top",e,i),b}function ca(t,n,e,r,i,o,a){if(!n)return;let u=h4(n);a=p4(u?r:n,o,a);let{line:c}=a;(e===Rm||e===Lm)&&c&&!$i(c)&&t.push(Q8(g4(a))),t.push(e(a)),u&&t.push(e({...a,anchor:i,label:null}))}function fa(t,n,e,r){!n||$i(n)||t.push(e(m4(n,r)))}function h4(t){return/^\s*both\s*$/i.test(t)}function p4(t,n,{line:e=n.line,ticks:r,tickSize:i,tickSpacing:o,tickPadding:a,tickFormat:u,tickRotate:c,fontVariant:f,ariaLabel:s,ariaDescription:d,label:l=n.label,labelAnchor:h,labelArrow:p=n.labelArrow,labelOffset:m}){return{anchor:t,line:e,ticks:r,tickSize:i,tickSpacing:o,tickPadding:a,tickFormat:u,tickRotate:c,fontVariant:f,ariaLabel:s,ariaDescription:d,label:l,labelAnchor:h,labelArrow:p,labelOffset:m}}function g4(t){let{anchor:n,line:e}=t;return{anchor:n,facetAnchor:n+"-empty",stroke:e===!0?void 0:e}}function m4(t,{stroke:n=Ta(t)?t:void 0,ticks:e=y4(t)?t:void 0,tickSpacing:r,ariaLabel:i,ariaDescription:o}){return{stroke:n,ticks:e,tickSpacing:r,ariaLabel:i,ariaDescription:o}}function y4(t){switch(typeof t){case"number":return!0;case"string":return!Ta(t)}return ce(t)||typeof t?.range=="function"}function sa(t,n){let e=`${n}-axis `;return t.some(r=>r.ariaLabel?.startsWith(e))}function Bp(t,n){for(let e of n)for(let r in e.channels){let{scale:i}=e.channels[r];if(i===t||i==="projection")return!0}return!1}function b4(t,n){for(let e in t){let r=t[e],i=n[e];r.label===void 0&&i&&(r.label=i.label)}return t}function w4({fx:t,fy:n},e){let{marginTop:r,marginRight:i,marginBottom:o,marginLeft:a,width:u,height:c}=rl(e),f=t&&qp(t),s=n&&qp(n);return{marginTop:n?s[0]:r,marginRight:t?u-f[1]:i,marginBottom:n?c-s[1]:o,marginLeft:t?f[0]:a,inset:{marginTop:e.marginTop,marginRight:e.marginRight,marginBottom:e.marginBottom,marginLeft:e.marginLeft},width:u,height:c}}function qp(t){let n=t.domain();if(n.length===0)return[0,t.bandwidth()];let e=t(n[0]),r=t(n[n.length-1]);return r<e&&([e,r]=[r,e]),[e,r+t.bandwidth()]}var v4=new Map([["basis",$1],["basis-closed",A1],["basis-open",k1],["bundle",E1],["bump-x",b1],["bump-y",w1],["cardinal",N1],["cardinal-closed",R1],["cardinal-open",L1],["catmull-rom",D1],["catmull-rom-closed",O1],["catmull-rom-open",z1],["linear",Pe],["linear-closed",q1],["monotone-x",W1],["monotone-y",G1],["natural",X1],["step",V1],["step-after",Z1],["step-before",j1]]);function ey(t=Pe,n){if(typeof t=="function")return t;let e=v4.get(`${t}`.toLowerCase());if(!e)throw new Error(`unknown curve: ${t}`);if(n!==void 0){if("beta"in e)return e.beta(n);if("tension"in e)return e.tension(n);if("alpha"in e)return e.alpha(n)}return e}function ry(t=Ar,n){return typeof t!="function"&&`${t}`.toLowerCase()==="auto"?Ar:ey(t,n)}function Ar(t){return Pe(t)}function iy(t={y:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=n;return Sl(xa(e,n,ht),null,null,r,t,qi(n))}function oy(t={x:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=n;return Sl(null,xa(r,n,ht),e,null,t,Yi(n))}function x4(t={fill:"count"},n={}){[t,n]=Al(t,n);let{x:e,y:r}=_4(n);return Sl(e,r,null,null,t,qi(Yi(n)))}function ay(t,n,e={}){if(e?.interval==null)return e;let{reduce:r=Qs}=e,i={filter:null};return e[n]!=null&&(i[n]=r),e[`${n}1`]!=null&&(i[`${n}1`]=r),e[`${n}2`]!=null&&(i[`${n}2`]=r),t(i,e)}function uy({x:t=Oe,...n}={}){return ay(iy,"y",Cr({x:t,...yl(n)},"x"))}function cy({y:t=Oe,...n}={}){return ay(oy,"x",Cr({y:t,...ml(n)},"y"))}function Sl(t,n,e,r,{data:i=Ks,filter:o=ba,sort:a,reverse:u,...c}={},f={}){t=Yp(t),n=Yp(n),c=$4(c,f),i=ly(i,ht),a=a==null?void 0:fy("sort",a,f),o=o==null?void 0:sy("filter",o,f),e!=null&&br(c,"x","x1","x2")&&(e=null),r!=null&&br(c,"y","y1","y2")&&(r=null);let[s,d]=zt(t),[l,h]=zt(t),[p,m]=zt(n),[v,x]=zt(n),[w,M]=e!=null?[e,"x"]:r!=null?[r,"y"]:[],[g,b]=zt(w),{x:y,y:_,z:$,fill:S,stroke:C,x1:A,x2:k,y1:D,y2:P,domain:T,cumulative:O,thresholds:R,interval:U,...L}=f,[I,q]=zt($),[W]=sn(S),[z]=sn(C),[K,et]=zt(W),[at,B]=zt(z);return{..."z"in f&&{z:I||$},..."fill"in f&&{fill:K||S},..."stroke"in f&&{stroke:at||C},...Ii(L,(G,N,F)=>{let Y=ya(ft(G,w),F?.[M]),E=ft(G,$),nt=ft(G,W),H=ft(G,z),J=Tg(c,{z:E,fill:nt,stroke:H}),rt=[],ct=[],Cn=Y&&b([]),Pr=E&&q([]),le=nt&&et([]),My=H&&B([]),Nl=t&&d([]),$y=t&&h([]),Rl=n&&m([]),Sy=n&&x([]),Ay=T4(t,n,G),Ty=0;for(let Ye of c)Ye.initialize(G);a&&a.initialize(G),o&&o.initialize(G);for(let Ye of N){let Ll=[];for(let Ue of c)Ue.scope("facet",Ye);a&&a.scope("facet",Ye),o&&o.scope("facet",Ye);for(let[Ue,ky]of xi(Ye,J))for(let[Cy,Gi]of xi(ky,Y))for(let[hn,En]of Ay(Gi))if(J&&(En.z=Ue),!(o&&!o.reduce(hn,En))){Ll.push(Ty++),ct.push(i.reduceIndex(hn,G,En)),Y&&Cn.push(Cy),E&&Pr.push(J===E?Ue:E[(hn.length>0?hn:Gi)[0]]),nt&&le.push(J===nt?Ue:nt[(hn.length>0?hn:Gi)[0]]),H&&My.push(J===H?Ue:H[(hn.length>0?hn:Gi)[0]]),Nl&&(Nl.push(En.x1),$y.push(En.x2)),Rl&&(Rl.push(En.y1),Sy.push(En.y2));for(let Ey of c)Ey.reduce(hn,En);a&&a.reduce(hn,En)}rt.push(Ll)}return kg(rt,a,u),{data:ct,facets:rt}}),...!br(c,"x")&&(s?{x1:s,x2:l,x:ma(s,l)}:{x:y,x1:A,x2:k}),...!br(c,"y")&&(p?{y1:p,y2:v,y:ma(p,v)}:{y:_,y1:D,y2:P}),...g&&{[M]:g},...Object.fromEntries(c.map(({name:G,output:N})=>[G,N]))}}function Al({cumulative:t,domain:n,thresholds:e,interval:r,...i},o){return[i,{cumulative:t,domain:n,thresholds:e,interval:r,...o}]}function xa(t,{cumulative:n,domain:e,thresholds:r,interval:i},o){return t={...Li(t)},t.domain===void 0&&(t.domain=e),t.cumulative===void 0&&(t.cumulative=n),t.thresholds===void 0&&(t.thresholds=r),t.interval===void 0&&(t.interval=i),t.value===void 0&&(t.value=o),t.thresholds=M4(t.thresholds,t.interval),t}function _4(t){let{x:n,y:e}=t;return n=xa(n,t),e=xa(e,t),[n.value,e.value]=ze(n.value,e.value),{x:n,y:e}}function Yp(t){if(t==null)return;let{value:n,cumulative:e,domain:r=Ut,thresholds:i}=t,o=a=>{let u=ft(a,n),c;if(qt(u)||A4(i)){u=gt(u,ag,Float64Array);let[s,d]=typeof r=="function"?r(u):r,l=typeof i=="function"&&!yr(i)?i(u,s,d):i;typeof l=="number"&&(l=Do(s,d,l)),yr(l)&&(r===Ut&&(s=l.floor(s),d=l.offset(l.floor(d))),l=l.range(s,l.offset(d))),c=l}else{u=$n(u);let[s,d]=typeof r=="function"?r(u):r,l=typeof i=="function"&&!yr(i)?i(u,s,d):i;if(typeof l=="number")if(r===Ut){let h=He(s,d,l);if(isFinite(h))if(h>0){let p=Math.round(s/h),m=Math.round(d/h);p*h<=s||--p,m*h>d||++m;let v=m-p+1;l=new Float64Array(v);for(let x=0;x<v;++x)l[x]=(p+x)*h}else if(h<0){h=-h;let p=Math.round(s*h),m=Math.round(d*h);p/h<=s||--p,m/h>d||++m;let v=m-p+1;l=new Float64Array(v);for(let x=0;x<v;++x)l[x]=(p+x)/h}else l=[s];else l=[s]}else l=pe(s,d,l);else yr(l)&&(r===Ut&&(s=l.floor(s),d=l.offset(l.floor(d))),l=l.range(s,l.offset(d)));c=l}let f=[];if(c.length===1)f.push([c[0],c[0]]);else for(let s=1;s<c.length;++s)f.push([c[s-1],c[s]]);return f.bin=(e<0?C4:e>0?k4:Tl)(f,c,u),f};return o.label=Be(n),o}function M4(t,n,e=Up){if(t===void 0)return n===void 0?e:Tr(n);if(typeof t=="string"){switch(t.toLowerCase()){case"freedman-diaconis":return Zl;case"scott":return Xa;case"sturges":return Gl;case"auto":return Up}return Os(t)}return t}function $4(t,n){return Mg(t,n,fy)}function fy(t,n,e){return js(t,n,e,sy)}function sy(t,n,e){return Zs(t,n,e,ly)}function ly(t,n){return Ea(t,n,S4)}function S4(t){switch(`${t}`.toLowerCase()){case"x":return E4;case"x1":return R4;case"x2":return L4;case"y":return N4;case"y1":return P4;case"y2":return D4;case"z":return Cg}throw new Error(`invalid bin reduce: ${t}`)}function Up(t,n,e){return Math.min(200,Xa(t,n,e))}function A4(t){return u6(t)||ce(t)&&qt(t)}function T4(t,n,e){let r=t?.(e),i=n?.(e);return r&&i?function*(o){let a=r.bin(o);for(let[u,[c,f]]of r.entries()){let s=i.bin(a[u]);for(let[d,[l,h]]of i.entries())yield[s[d],{data:e,x1:c,y1:l,x2:f,y2:h}]}}:r?function*(o){let a=r.bin(o);for(let[u,[c,f]]of r.entries())yield[a[u],{data:e,x1:c,x2:f}]}:function*(o){let a=i.bin(o);for(let[u,[c,f]]of i.entries())yield[a[u],{data:e,y1:c,y2:f}]}}function Tl(t,n,e){return n=$n(n),r=>{let i=t.map(()=>[]);for(let o of r)i[je(n,e[o])-1]?.push(o);return i}}function k4(t,n,e){let r=Tl(t,n,e);return i=>{let o=r(i);for(let a=1,u=o.length;a<u;++a){let c=o[a-1],f=o[a];for(let s of c)f.push(s)}return o}}function C4(t,n,e){let r=Tl(t,n,e);return i=>{let o=r(i);for(let a=o.length-2;a>=0;--a){let u=o[a+1],c=o[a];for(let f of u)c.push(f)}return o}}function dy(t,n){let e=(+t+ +n)/2;return t instanceof Date?new Date(e):e}var E4={reduceIndex(t,n,{x1:e,x2:r}){return dy(e,r)}},N4={reduceIndex(t,n,{y1:e,y2:r}){return dy(e,r)}},R4={reduceIndex(t,n,{x1:e}){return e}},L4={reduceIndex(t,n,{x2:e}){return e}},P4={reduceIndex(t,n,{y1:e}){return e}},D4={reduceIndex(t,n,{y2:e}){return e}},I4={ariaLabel:"area",strokeWidth:1,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},O4={ariaLabel:"area-line",fillOpacity:.3,stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},Ci=class extends Ct{constructor(n,e={},r=I4){let{x1:i,y1:o,x2:a,y2:u,z:c,curve:f,tension:s}=e;super(n,{x1:{value:i,scale:"x"},y1:{value:o,scale:"y"},x2:{value:a,scale:"x",optional:!0},y2:{value:u,scale:"y",optional:!0},z:{value:qs(e),optional:!0}},e,r),this.z=c,this.curve=ey(f,s)}filter(n){return n}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,e,0,0).call(s=>s.selectAll().data(al(n,[a,u,c,f],this,r)).enter().append("path").call(Lt,this).call(ol,this,r).attr("d",kf().curve(this.curve).defined(d=>d>=0).x0(d=>a[d]).y0(d=>u[d]).x1(d=>c[d]).y1(d=>f[d]))).node()}},_a=class extends Ci{constructor(n,e={}){super(n,e,O4),Bi(this,e)}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,e,0,0).call(s=>s.selectAll().data(al(n,[a,u,c,f],this,r)).enter().append("g").call(Lt,this).call(ol,this,r).call(d=>d.append("path").attr("stroke","none").attr("d",kf().curve(this.curve).defined(l=>l>=0).x0(l=>a[l]).y0(l=>u[l]).x1(l=>c[l]).y1(l=>f[l]))).call(d=>d.append("path").call(am,this,r,o).attr("fill","none").attr("transform",St?`translate(${St},${St})`:null).attr("d",ta().curve(this.curve).defined(l=>l>=0).x(l=>c[l]).y(l=>f[l])))).node()}};function F4(t,n){let{x:e,y:r,line:i,color:o,stroke:a=o,fill:u=o,z:c=e===u||e===a?null:void 0,...f}=cy(n);return new(i?_a:Ci)(t,bl({...f,x:e,y1:r,y2:void 0,z:c,stroke:a,fill:u}))}function z4(t,n){let{x:e,y:r,line:i,color:o,stroke:a=o,fill:u=o,z:c=r===u||r===a?null:void 0,...f}=uy(n);return new(i?_a:Ci)(t,wl({...f,x1:e,x2:void 0,y:r,z:c,stroke:a,fill:u}))}var B4={ariaLabel:"link",fill:"none",stroke:"currentColor",strokeMiterlimit:1},ks=class extends Ct{constructor(n,e={}){let{x1:r,y1:i,x2:o,y2:a,curve:u,tension:c}=e;super(n,{x1:{value:r,scale:"x"},y1:{value:i,scale:"y"},x2:{value:o,scale:"x",optional:!0},y2:{value:a,scale:"y",optional:!0}},e,B4),this.curve=ry(u,c),Bi(this,e)}project(n,e,r){this.curve!==Ar&&super.project(n,e,r)}render(n,e,r,i,o){let{x1:a,y1:u,x2:c=a,y2:f=u}=r,{curve:s}=this;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,e).call(d=>d.selectAll().data(n).enter().append("path").call(Lt,this).attr("d",s===Ar&&o.projection?q4(o.path(),a,u,c,f):l=>{let h=Ln(),p=s(h);return p.lineStart(),p.point(a[l],u[l]),p.point(c[l],f[l]),p.lineEnd(),h}).call(ln,this,r).call(ll,this,r,o)).node()}};function q4(t,n,e,r,i){return n=$n(n),e=$n(e),r=$n(r),i=$n(i),o=>t({type:"LineString",coordinates:[[n[o],e[o]],[r[o],i[o]]]})}function hy(t,{x:n,x1:e,x2:r,y:i,y1:o,y2:a,...u}={}){return[e,r]=Wp(n,e,r),[o,a]=Wp(i,o,a),new ks(t,{...u,x1:e,x2:r,y1:o,y2:a})}function Wp(t,n,e){if(t===void 0){if(n===void 0){if(e!==void 0)return[e]}else if(e===void 0)return[n]}else{if(n===void 0)return e===void 0?[t]:[t,e];if(e===void 0)return[t,n]}return[n,e]}var Y4={ariaLabel:"bar"},Ei=class extends Ct{constructor(n,e,r={},i=Y4){super(n,e,r,i),vl(this,r),xl(this,r)}render(n,e,r,i,o){let{rx:a,ry:u,rx1y1:c,rx1y2:f,rx2y1:s,rx2y2:d}=this,l=this._x(e,r,i),h=this._y(e,r,i),p=this._width(e,r,i),m=this._height(e,r,i);return pt("svg:g",o).call(Xt,this,i,o).call(this._transform,this,e).call(v=>v.selectAll().data(n).enter().call(c||f||s||d?x=>x.append("path").call(Lt,this).call(_l,l,h,Gp(l,p),Gp(h,m),this).call(ln,this,r):x=>x.append("rect").call(Lt,this).attr("x",l).attr("width",p).attr("y",h).attr("height",m).call(X,"rx",a).call(X,"ry",u).call(ln,this,r))).node()}_x(n,{x:e},{marginLeft:r}){let{insetLeft:i}=this;return e?o=>e[o]+i:r+i}_y(n,{y:e},{marginTop:r}){let{insetTop:i}=this;return e?o=>e[o]+i:r+i}_width({x:n},{x:e},{marginRight:r,marginLeft:i,width:o}){let{insetLeft:a,insetRight:u}=this,c=e&&n?n.bandwidth():o-r-i;return Math.max(0,c-a-u)}_height({y:n},{y:e},{marginTop:r,marginBottom:i,height:o}){let{insetTop:a,insetBottom:u}=this,c=e&&n?n.bandwidth():o-r-i;return Math.max(0,c-a-u)}};function Gp(t,n){return typeof t=="function"&&typeof n=="function"?e=>t(e)+n(e):typeof t=="function"?e=>t(e)+n:typeof n=="function"?e=>t+n(e):t+n}var Cs=class extends Ei{constructor(n,e={},r){let{x1:i,x2:o,y:a}=e;super(n,{x1:{value:i,scale:"x"},x2:{value:o,scale:"x"},y:{value:a,scale:"y",type:"band",optional:!0}},e,r)}_transform(n,e,{x:r}){n.call(Pt,e,{x:r},0,0)}_x({x:n},{x1:e,x2:r},{marginLeft:i}){let{insetLeft:o}=this;return kn(n)?i+o:a=>Math.min(e[a],r[a])+o}_width({x:n},{x1:e,x2:r},{marginRight:i,marginLeft:o,width:a}){let{insetLeft:u,insetRight:c}=this;return kn(n)?a-i-o-u-c:f=>Math.max(0,Math.abs(r[f]-e[f])-u-c)}},Es=class extends Ei{constructor(n,e={},r){let{x:i,y1:o,y2:a}=e;super(n,{y1:{value:o,scale:"y"},y2:{value:a,scale:"y"},x:{value:i,scale:"x",type:"band",optional:!0}},e,r)}_transform(n,e,{y:r}){n.call(Pt,e,{y:r},0,0)}_y({y:n},{y1:e,y2:r},{marginTop:i}){let{insetTop:o}=this;return kn(n)?i+o:a=>Math.min(e[a],r[a])+o}_height({y:n},{y1:e,y2:r},{marginTop:i,marginBottom:o,height:a}){let{insetTop:u,insetBottom:c}=this;return kn(n)?a-i-o-u-c:f=>Math.max(0,Math.abs(r[f]-e[f])-u-c)}};function U4(t,n={}){return Sa(n)||(n={...n,y:Oe,x2:ht}),new Cs(t,bl(pm(ml(n))))}function W4(t,n={}){return Sa(n)||(n={...n,x:Oe,y2:ht}),new Es(t,wl(gm(yl(n))))}var G4={ariaLabel:"cell"},Ns=class extends Ei{constructor(n,{x:e,y:r,...i}={}){super(n,{x:{value:e,scale:"x",type:"band",optional:!0},y:{value:r,scale:"y",type:"band",optional:!0}},i,G4)}_transform(n,e){n.call(Pt,e,{},0,0)}};function H4(t,{x:n,y:e,...r}={}){return[n,e]=ze(n,e),new Ns(t,{...r,x:n,y:e})}var X4={ariaLabel:"dot",fill:"none",stroke:"currentColor",strokeWidth:1.5};function V4(t){return t.sort===void 0&&t.reverse===void 0?A6({channel:"-r"},t):t}var Rs=class extends Ct{constructor(n,e={}){let{x:r,y:i,r:o,rotate:a,symbol:u=hr,frameAnchor:c}=e,[f,s]=Rt(a,0),[d,l]=$6(u),[h,p]=Rt(o,d==null?3:4.5);super(n,{x:{value:r,scale:"x",optional:!0},y:{value:i,scale:"y",optional:!0},r:{value:h,scale:"r",filter:Ma,optional:!0},rotate:{value:f,optional:!0},symbol:{value:d,scale:"auto",optional:!0}},V4(e),X4),this.r=p,this.rotate=s,this.symbol=l,this.frameAnchor=ka(c);let{channels:m}=this,{symbol:v}=m;if(v){let{fill:x,stroke:w}=m;v.hint={fill:x?x.value===v.value?"color":"currentColor":this.fill??"currentColor",stroke:w?w.value===v.value?"color":"currentColor":this.stroke??"none"}}}render(n,e,r,i,o){let{x:a,y:u}=e,{x:c,y:f,r:s,rotate:d,symbol:l}=r,{r:h,rotate:p,symbol:m}=this,[v,x]=zi(this,i),w=m===hr,M=s?void 0:h*h*Math.PI;return Ps(h)&&(n=[]),pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,{x:c&&a,y:f&&u}).call(g=>g.selectAll().data(n).enter().append(w?"circle":"path").call(Lt,this).call(w?b=>{b.attr("cx",c?y=>c[y]:v).attr("cy",f?y=>f[y]:x).attr("r",s?y=>s[y]:h)}:b=>{b.attr("transform",dl`translate(${c?y=>c[y]:v},${f?y=>f[y]:x})${d?y=>` rotate(${d[y]})`:p?` rotate(${p})`:""}`).attr("d",s&&l?y=>{let _=Ln();return l[y].draw(_,s[y]*s[y]*Math.PI),_}:s?y=>{let _=Ln();return m.draw(_,s[y]*s[y]*Math.PI),_}:l?y=>{let _=Ln();return l[y].draw(_,M),_}:(()=>{let y=Ln();return m.draw(y,M),y})())}).call(ln,this,r)).node()}};function Lr(t,{x:n,y:e,...r}={}){return r.frameAnchor===void 0&&([n,e]=ze(n,e)),new Rs(t,{...r,x:n,y:e})}var j4={ariaLabel:"line",fill:"none",stroke:"currentColor",strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",strokeMiterlimit:1},Ni=class extends Ct{constructor(n,e={}){let{x:r,y:i,z:o,curve:a,tension:u}=e;super(n,{x:{value:r,scale:"x"},y:{value:i,scale:"y"},z:{value:qs(e),optional:!0}},e,j4),this.z=o,this.curve=ry(a,u),Bi(this,e)}filter(n){return n}project(n,e,r){this.curve!==Ar&&super.project(n,e,r)}render(n,e,r,i,o){let{x:a,y:u}=r,{curve:c}=this;return pt("svg:g",o).call(Xt,this,i,o).call(Pt,this,e).call(f=>f.selectAll().data(al(n,[a,u],this,r)).enter().append("path").call(Lt,this).call(ol,this,r).call(am,this,r,o).attr("d",c===Ar&&o.projection?Z4(o.path(),a,u):ta().curve(c).defined(s=>s>=0).x(s=>a[s]).y(s=>u[s]))).node()}};function Z4(t,n,e){return n=$n(n),e=$n(e),r=>{let i=[],o=[i];for(let a of r)a===-1?(i=[],o.push(i)):i.push([n[a],e[a]]);return t({type:"MultiLineString",coordinates:o})}}function K4(t,{x:n,y:e,...r}={}){return[n,e]=ze(n,e),new Ni(t,{...r,x:n,y:e})}function Q4(t,n){let{x:e,y:r,stroke:i,z:o=i===e?null:void 0,...a}=cy(n);return new Ni(t,{...a,x:e,y:r,z:o,stroke:i})}function kl(t,n){let{x:e,y:r,stroke:i,z:o=i===r?null:void 0,...a}=uy(n);return new Ni(t,{...a,x:e,y:r,z:o,stroke:i})}var J4={dot:Lr,line:K4,lineX:Q4,lineY:kl,areaX:F4,areaY:z4,ruleX:ym,ruleY:Da,barX:U4,barY:W4,rect:X8,rectX:V8,rectY:j8,cell:H4,bin:x4,binX:iy,binY:oy,group:N6,groupX:C6,groupY:E6},q_=Object.fromEntries(Object.entries(J4).map(([t,n])=>[n,t]));var Y_=new Uint8ClampedArray(4);var us,Hp;function t7(){if(Hp)return us;Hp=1;function t(a,u,c,f,s){for(var d=s+1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p>=0?(d=l,s=l-1):f=l+1}return d}function n(a,u,c,f,s){for(var d=s+1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p>0?(d=l,s=l-1):f=l+1}return d}function e(a,u,c,f,s){for(var d=f-1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p<0?(d=l,f=l+1):s=l-1}return d}function r(a,u,c,f,s){for(var d=f-1;f<=s;){var l=f+s>>>1,h=a[l],p=c!==void 0?c(h,u):h-u;p<=0?(d=l,f=l+1):s=l-1}return d}function i(a,u,c,f,s){for(;f<=s;){var d=f+s>>>1,l=a[d],h=c!==void 0?c(l,u):l-u;if(h===0)return d;h<=0?f=d+1:s=d-1}return-1}function o(a,u,c,f,s,d){return typeof c=="function"?d(a,u,c,f===void 0?0:f|0,s===void 0?a.length-1:s|0):d(a,u,void 0,c===void 0?0:c|0,f===void 0?a.length-1:f|0)}return us={ge:function(a,u,c,f,s){return o(a,u,c,f,s,t)},gt:function(a,u,c,f,s){return o(a,u,c,f,s,n)},lt:function(a,u,c,f,s){return o(a,u,c,f,s,e)},le:function(a,u,c,f,s){return o(a,u,c,f,s,r)},eq:function(a,u,c,f,s){return o(a,u,c,f,s,i)}},us}var cs,Xp;function n7(){if(Xp)return cs;Xp=1;var t=t7(),n=0,e=1,r=2;cs=M;function i(g,b,y,_,$){this.mid=g,this.left=b,this.right=y,this.leftPoints=_,this.rightPoints=$,this.count=(b?b.count:0)+(y?y.count:0)+_.length}var o=i.prototype;function a(g,b){g.mid=b.mid,g.left=b.left,g.right=b.right,g.leftPoints=b.leftPoints,g.rightPoints=b.rightPoints,g.count=b.count}function u(g,b){var y=v(b);g.mid=y.mid,g.left=y.left,g.right=y.right,g.leftPoints=y.leftPoints,g.rightPoints=y.rightPoints,g.count=y.count}function c(g,b){var y=g.intervals([]);y.push(b),u(g,y)}function f(g,b){var y=g.intervals([]),_=y.indexOf(b);return _<0?n:(y.splice(_,1),u(g,y),e)}o.intervals=function(g){return g.push.apply(g,this.leftPoints),this.left&&this.left.intervals(g),this.right&&this.right.intervals(g),g},o.insert=function(g){var b=this.count-this.leftPoints.length;if(this.count+=1,g[1]<this.mid)this.left?4*(this.left.count+1)>3*(b+1)?c(this,g):this.left.insert(g):this.left=v([g]);else if(g[0]>this.mid)this.right?4*(this.right.count+1)>3*(b+1)?c(this,g):this.right.insert(g):this.right=v([g]);else{var y=t.ge(this.leftPoints,g,p),_=t.ge(this.rightPoints,g,m);this.leftPoints.splice(y,0,g),this.rightPoints.splice(_,0,g)}},o.remove=function(g){var b=this.count-this.leftPoints;if(g[1]<this.mid){if(!this.left)return n;var y=this.right?this.right.count:0;if(4*y>3*(b-1))return f(this,g);var _=this.left.remove(g);return _===r?(this.left=null,this.count-=1,e):(_===e&&(this.count-=1),_)}else if(g[0]>this.mid){if(!this.right)return n;var $=this.left?this.left.count:0;if(4*$>3*(b-1))return f(this,g);var _=this.right.remove(g);return _===r?(this.right=null,this.count-=1,e):(_===e&&(this.count-=1),_)}else{if(this.count===1)return this.leftPoints[0]===g?r:n;if(this.leftPoints.length===1&&this.leftPoints[0]===g){if(this.left&&this.right){for(var S=this,C=this.left;C.right;)S=C,C=C.right;if(S===this)C.right=this.right;else{var A=this.left,_=this.right;S.count-=C.count,S.right=C.left,C.left=A,C.right=_}a(this,C),this.count=(this.left?this.left.count:0)+(this.right?this.right.count:0)+this.leftPoints.length}else this.left?a(this,this.left):a(this,this.right);return e}for(var A=t.ge(this.leftPoints,g,p);A<this.leftPoints.length&&this.leftPoints[A][0]===g[0];++A)if(this.leftPoints[A]===g){this.count-=1,this.leftPoints.splice(A,1);for(var _=t.ge(this.rightPoints,g,m);_<this.rightPoints.length&&this.rightPoints[_][1]===g[1];++_)if(this.rightPoints[_]===g)return this.rightPoints.splice(_,1),e}return n}};function s(g,b,y){for(var _=0;_<g.length&&g[_][0]<=b;++_){var $=y(g[_]);if($)return $}}function d(g,b,y){for(var _=g.length-1;_>=0&&g[_][1]>=b;--_){var $=y(g[_]);if($)return $}}function l(g,b){for(var y=0;y<g.length;++y){var _=b(g[y]);if(_)return _}}o.queryPoint=function(g,b){if(g<this.mid){if(this.left){var y=this.left.queryPoint(g,b);if(y)return y}return s(this.leftPoints,g,b)}else if(g>this.mid){if(this.right){var y=this.right.queryPoint(g,b);if(y)return y}return d(this.rightPoints,g,b)}else return l(this.leftPoints,b)},o.queryInterval=function(g,b,y){if(g<this.mid&&this.left){var _=this.left.queryInterval(g,b,y);if(_)return _}if(b>this.mid&&this.right){var _=this.right.queryInterval(g,b,y);if(_)return _}return b<this.mid?s(this.leftPoints,b,y):g>this.mid?d(this.rightPoints,g,y):l(this.leftPoints,y)};function h(g,b){return g-b}function p(g,b){var y=g[0]-b[0];return y||g[1]-b[1]}function m(g,b){var y=g[1]-b[1];return y||g[0]-b[0]}function v(g){if(g.length===0)return null;for(var b=[],y=0;y<g.length;++y)b.push(g[y][0],g[y][1]);b.sort(h);for(var _=b[b.length>>1],$=[],S=[],C=[],y=0;y<g.length;++y){var A=g[y];A[1]<_?$.push(A):_<A[0]?S.push(A):C.push(A)}var k=C,D=C.slice();return k.sort(p),D.sort(m),new i(_,v($),v(S),k,D)}function x(g){this.root=g}var w=x.prototype;w.insert=function(g){this.root?this.root.insert(g):this.root=new i(g[0],null,null,[g],[g])},w.remove=function(g){if(this.root){var b=this.root.remove(g);return b===r&&(this.root=null),b!==n}return!1},w.queryPoint=function(g,b){if(this.root)return this.root.queryPoint(g,b)},w.queryInterval=function(g,b,y){if(g<=b&&this.root)return this.root.queryInterval(g,b,y)},Object.defineProperty(w,"count",{get:function(){return this.root?this.root.count:0}}),Object.defineProperty(w,"intervals",{get:function(){return this.root?this.root.intervals([]):[]}});function M(g){return!g||g.length===0?new x(null):new x(v(g))}return cs}var U_=n7();function Cl(t){return{mapIndex(n,e,r){let i=+t(n,e);for(let o of n)r[o]=e[o]===null?NaN:e[o]/i}}}function Ui(t){return Cl((n,e)=>t(n,r=>e[r]))}var W_=Cl((t,n)=>{for(let e=0;e<t.length;++e){let r=n[t[e]];if(An(r))return r}}),G_=Cl((t,n)=>{for(let e=t.length-1;e>=0;--e){let r=n[t[e]];if(An(r))return r}});var H_=Ui(Yt),X_=Ui(Va),V_=Ui(zr),j_=Ui(an),Z_=Ui(pn);var py="http://www.w3.org/2000/svg",Dt=t=>String(t).replace(/[&<>"]/g,n=>({"&":"&","<":"<",">":">",'"':"""})[n]),Fa=(t,n)=>t.show??t.text+(n??"");function gy(t,n,e){let r=n.reduce((b,y)=>b+y.value,0);t.innerHTML="";let i=Object.assign(document.createElement("div"),{className:"fs-bar"}),o=Object.assign(document.createElement("div"),{className:"fs-rest"});t.append(i,o);let u=n.map(b=>{let y=document.createElement("div");return y.className="fs-seg"+(b.tone?" "+b.tone:""),y.style.flex=`${b.value/r} 1 0`,y.innerHTML=`<b>${Dt(Fa(b,e))}</b><span>${b.label}</span>`,i.appendChild(y),{p:b,seg:y}}).filter(b=>b.seg.scrollWidth>b.seg.clientWidth+1);if(!u.length){o.remove();return}let c=t.getBoundingClientRect();for(let b of u)b.seg.classList.add("fs-out"),b.item=document.createElement("span"),b.item.innerHTML=`<b>${Dt(Fa(b.p,e))}</b> ${b.p.label}`,b.item.style.cssText="position: absolute; white-space: nowrap;",o.appendChild(b.item);let f=c.width,s=22;for(let b of u){let y=b.seg.getBoundingClientRect();b.cx=y.left-c.left+y.width/2,b.w=b.item.offsetWidth}let d=getComputedStyle(t).getPropertyValue("--line").trim(),l=[],h;for(let b of u)b.x=Math.max(0,Math.min(f-b.w,b.cx-b.w/2));for(let b=1;b<u.length;b++)u[b].x=Math.max(u[b].x,u[b-1].x+u[b-1].w+s);for(let b=u.length-1;b>=0;b--){let y=b===u.length-1?f-u[b].w:u[b+1].x-s-u[b].w;u[b].x=Math.min(u[b].x,y)}let p=28,m=Math.max(...u.map(b=>b.w)),v=Math.min(...u.map(b=>b.cx)),x=Math.max(...u.map(b=>b.cx)),w=v-p>=m?"left":f-x-p>=m?"right":null;if(!u.some(b=>u.some(y=>y!==b&&y.cx>b.x&&y.cx<b.x+b.w))||!w){for(let y of u){y.y=26;let _=Math.max(y.x+8,Math.min(y.x+y.w-8,y.cx));l.push(`M${y.cx},-8 V${26/2-4} H${_} V23`)}h=26+u[0].item.offsetHeight}else{let y=u[0].item.offsetHeight+8,_=w==="left",$=[...u].sort((S,C)=>_?S.cx-C.cx:C.cx-S.cx);$.forEach((S,C)=>{S.y=14+C*y;let A=S.y+S.item.offsetHeight/2;if(_){let k=v-p;S.right=f-k,l.push(`M${S.cx},-8 V${A} H${k+6}`)}else{let k=x+p;S.x=k,l.push(`M${S.cx},-8 V${A} H${k-6}`)}}),h=14+$.length*y-8}o.style.cssText=`position: relative; display: block; height: ${h}px;`;let g=document.createElementNS(py,"svg");g.setAttribute("width",f),g.setAttribute("height",h),g.setAttribute("style","position:absolute;left:0;top:0;overflow:visible"),o.appendChild(g);for(let b of u)b.item.style.cssText=`position: absolute; ${b.right===void 0?`left: ${b.x}`:`right: ${b.right}`}px; top: ${b.y}px; white-space: nowrap;`;for(let b of l){let y=document.createElementNS(py,"path");for(let[_,$]of Object.entries({d:b,fill:"none",stroke:d,"stroke-width":1.5}))y.setAttribute(_,$);g.appendChild(y)}}function my(t,n,e,r){let i=r??Math.max(...n.map(u=>u.value));t.innerHTML="";let o=n.map(u=>{let c=Object.assign(document.createElement("div"),{className:"fb-label",innerHTML:u.label}),f=Object.assign(document.createElement("div"),{className:"fb-track"}),s=u.tone?" "+u.tone:"";return f.innerHTML=`<div class="fb-bar${s}"></div><div class="fb-val${u.tone?" lead "+u.tone:""}">${Dt(Fa(u,e))}${u.note?`<span class="fb-sub">${Dt(u.note)}</span>`:""}</div>`,t.append(c,f),{bar:f.firstChild,ratio:i>0?Math.max(0,u.value)/i:0}}),a=Math.max(...[...t.querySelectorAll(".fb-val")].map(u=>u.offsetWidth))+12;for(let u of o)u.bar.style.width=`calc((100% - ${a}px) * ${u.ratio})`}var r7='<svg width="56" height="24" viewBox="0 0 56 24" aria-hidden="true"><path d="M2 12 H48 M38 3 L50 12 L38 21" fill="none" stroke="currentColor" stroke-width="3" stroke-linecap="round" stroke-linejoin="round"/></svg>';function yy(t,n){let e=n.max??Math.max(n.before.value,n.after.value),r=n.after.tone??"accent",i=(o,a)=>`<div class="fc-side ${a}"><span class="fc-when">${Dt(o.label)}</span><b class="fc-num">${Dt(Fa({...o,text:String(o.value)},n.unit))}</b><div class="fc-bar" style="width:${e>0?100*o.value/e:0}%"></div></div>`;t.innerHTML=i(n.before,"before")+`<div class="fc-arrow">${r7}</div>`+i(n.after,"after "+r)}var by=t=>{let n=e=>getComputedStyle(t).getPropertyValue(e).trim();return{css:n,ink:n("--ink"),muted:n("--muted"),soft:n("--soft"),line:n("--line"),accent:n("--accent"),second:n("--second"),good:n("--good"),bad:n("--bad"),small:parseFloat(n("--small"))||15,body:parseFloat(n("--body"))||16,sans:n("--sans")}},za=t=>typeof t=="number"?t:new Date(t),Wi=t=>(Math.abs(t)>=100?Math.round(t):Math.round(t*10)/10).toLocaleString("en-GB");function i7(t,n){let e=Math.abs(n-t)/864e5;return e<1?`${Wi(e*24)} hours`:`${Wi(e)} ${e===1?"day":"days"}`}function El(t,n,e,r=400){let i=document.createElement("span");i.style.cssText=`position:absolute;visibility:hidden;white-space:nowrap;font-size:${e}px;font-weight:${r}`,t.appendChild(i);let o=Math.max(...n.map(a=>(i.textContent=a,i.getBoundingClientRect().width)));return i.remove(),o}function wy(t,n,e){t.classList.add("chart"),t.innerHTML="",t.appendChild(Ml({...e,style:{background:"transparent",color:n.muted,fontFamily:n.sans,fontSize:n.small+"px",overflow:"visible"}}))}function vy(t,n){let e=by(t),r=Math.floor(t.clientWidth)||640,i=typeof n.rows[0].from=="string",o=n.rows.map(h=>({...h,a:za(h.from),b:za(h.to)}));for(let h of o)h.text=h.gap??(i?i7(h.a,h.b):Wi(Math.abs(h.b-h.a))+(n.unit??"")),h.mid=i?new Date((+h.a+ +h.b)/2):(h.a+h.b)/2,h.color=e[h.tone??"accent"];let a=o.flatMap(h=>[+h.a,+h.b]),u=Math.min(...a),c=Math.max(...a),f=(c-u||1)*.08,s=i?[new Date(u-f),new Date(c+f)]:[u-f,c+f],d=El(t,o.map(h=>h.label),e.body);wy(t,e,{width:r,height:o.length*92+50,marginLeft:Math.ceil(d)+28,marginRight:24,marginTop:0,marginBottom:40,x:{domain:s,ticks:r<600?4:5,label:null,tickFormat:i?void 0:h=>Wi(h)+(n.unit??"")},y:{domain:o.map(h=>h.label),axis:null,padding:.5},marks:[Er(o,{y:"label",text:"label",frameAnchor:"left",dx:-(Math.ceil(d)+28),textAnchor:"start",fill:e.ink,fontSize:e.body}),hy(o,{x1:"a",x2:"b",y1:"label",y2:"label",stroke:"color",strokeWidth:3}),Lr(o,{x:"a",y:"label",r:6.5,fill:e.soft}),Lr(o.filter(h=>h.b>=h.a),{x:"b",y:"label",symbol:"triangle2",r:7.5,dx:-5,fill:"color",rotate:90}),Lr(o.filter(h=>h.b<h.a),{x:"b",y:"label",symbol:"triangle2",r:7.5,dx:5,fill:"color",rotate:-90}),Er(o,{x:"mid",y:"label",text:"text",dy:-22,fill:e.ink,fontWeight:600,fontSize:e.small})]});let l=document.createElement("p");l.className="fd-key",l.innerHTML=`<span class="fd-from"><i></i>${Dt(n.fromLabel)}</span><span class="fd-to${o.every(h=>h.b<h.a)?" back":""}" style="color:${e.accent}"><i></i>${Dt(n.toLabel)}</span>`,t.prepend(l)}function xy(t,n){let e=by(t),r=Math.floor(t.clientWidth)||640,i=n.points.map(b=>({x:za(b.x),y:b.y})),o=i.findIndex(b=>+b.x==+za(n.mark.x)),a=i[o],u=i.slice(Math.max(0,o-3),o+4).map(b=>b.y),c=a.y>=u.reduce((b,y)=>b+y,0)/u.length,f=i.map(b=>b.y),s=n.zero??!0,d=Math.max(...f),l=s?Math.min(0,...f):Math.min(...f),h=b=>Wi(b)+(n.unit??""),p=El(t,[h(d),h(l)],e.small),m=Math.ceil(p)+14,v=r-m-20,w=m+v*((+a.x-+i[0].x)/(+i[i.length-1].x-+i[0].x))+14+El(t,[n.mark.label],e.body,600)<=r-20,M=s?(a.y-l)/(d*1.04-l)*270:1/0,g=c?-12:Math.min(0,M-18);wy(t,e,{width:r,height:340,marginLeft:m,marginRight:20,marginTop:30,marginBottom:40,x:{label:null,ticks:r<600?4:5,insetLeft:18},y:{label:null,grid:!0,ticks:4,tickSize:0,domain:s?[l,d*1.04]:void 0,tickFormat:h},marks:[s?Da([0],{stroke:e.line}):null,kl(i,{x:"x",y:"y",stroke:e.soft,strokeWidth:2.5}),Lr([a],{x:"x",y:"y",r:6.5,fill:e.accent}),Er([a],{x:"x",y:"y",text:()=>n.mark.label,dx:w?14:-14,dy:g,textAnchor:w?"start":"end",fill:e.accent,fontWeight:600,fontSize:e.body})]})}function _y(t,n,e){let r=t.length,i=[];for(let d=1;d<=3;d++)for(let l=1;l<=(e?2:3);l++)d*l>=r&&d*l-r<Math.min(d,l)&&i.push([d,l]);let o=new Map(t.map((d,l)=>[d.id,l])),a=n.map(d=>[o.get(d.from),o.get(d.to)]),u=(d,l,h,p)=>{let m=(v,x,w)=>Math.sign((x[0]-v[0])*(w[1]-v[1])-(x[1]-v[1])*(w[0]-v[0]));return m(d,l,h)*m(d,l,p)<0&&m(h,p,d)*m(h,p,l)<0},c=([d,l])=>[l*1.6,d],f=(d,l,h)=>{let[p,m]=c(d),[v,x]=c(l),[w,M]=c(h),g=.55,b=.32;for(let y=.04;y<1;y+=.04){let _=p+(v-p)*y,$=m+(x-m)*y;if(Math.abs(_-w)<g&&Math.abs($-M)<b)return!0}return!1},s=null;for(let[d,l]of i){let h=[];for(let w=0;w<d;w++)for(let M=0;M<l;M++)h.push([w,M]);let p=new Array(h.length).fill(!1),m=new Array(r),v=()=>{let w=d*.6+l*.3,M=m.map(g=>h[g]);a.forEach(([g,b],y)=>{let _=M[g],$=M[b],[S,C]=c(_),[A,k]=c($);w+=Math.hypot(A-S,k-C)*1.2,_[0]!==$[0]&&_[1]!==$[1]&&(w+=1.5),_[0]<$[0]&&(w+=3),M.forEach((D,P)=>{P!==g&&P!==b&&f(_,$,D)&&(w+=12)});for(let[D,P]of a.slice(y+1))D!==g&&D!==b&&P!==g&&P!==b&&u(c(_),c($),c(M[D]),c(M[P]))&&(w+=8)});for(let g=0;g<d;g++)for(let b=1;b<l-1;b++)!M.some(y=>y[0]===g&&y[1]===b)&&M.some(y=>y[0]===g)&&(w+=4);return w},x=w=>{if(w===r){let M=v();(!s||M<s.s-1e-9)&&(s={s:M,rows:d,cols:l,pos:m.map(g=>h[g])});return}for(let M=0;M<h.length;M++)p[M]||(p[M]=!0,m[w]=M,x(w+1),p[M]=!1)};x(0)}return s}function o7(t,n){let e=n.classList.contains("phone"),{rows:r,cols:i,pos:o}=_y(t.records,t.refs,e),a=document.createElement("div");a.className="entities",a.style.cssText=`grid-template-columns: repeat(${i}, minmax(0, 1fr)); grid-template-rows: repeat(${r}, auto);`,t.records.forEach((u,c)=>{let f=u.fields??[],s=document.createElement("div");s.className="node record"+(u.tone?" accent":""),s.id="rec-"+u.id,s.style.gridArea=`${o[c][0]+1} / ${o[c][1]+1}`,s.innerHTML=`<h3>${Dt(u.name)}</h3>${f.length?`<ul>${f.map(d=>`<li>${Dt(d)}</li>`).join("")}</ul>`:""}`,a.appendChild(s)}),n.appendChild(a);for(let u of t.refs){let c=document.createElement("fig-arrow");c.setAttribute("from","rec-"+u.from),c.setAttribute("to","rec-"+u.to),c.setAttribute("ref",u.count),u.optional&&c.setAttribute("dashed",""),n.appendChild(c)}}var a7={split:"fig-split",bars:"fig-bars","before-after":"fig-change",dumbbell:"div",series:"div"};function u7(t,n){let e=document.createElement("header");if(e.innerHTML=`<h1>${Dt(t.title)}</h1>${t.note?`<p class="read">${Dt(t.note)}</p>`:""}`,t.type==="entities"){if(n.append(e),o7(t,n),t.source){let o=document.createElement("footer");o.innerHTML=`<p>${Dt(t.source)}</p>`,n.append(o)}return{chart:n.querySelector(".entities"),draw:()=>{}}}let r=document.createElement(a7[t.type]);if(n.append(e,r),t.source){let o=document.createElement("footer");o.innerHTML=`<p>${Dt(t.source)}</p>`,n.append(o)}let i=()=>{if(t.type==="before-after")return yy(r,t);if(t.type==="dumbbell")return vy(r,t);if(t.type==="series")return xy(r,t);let o=(t.parts??t.bars).map(a=>({...a,text:String(a.value),label:Dt(a.label)}));t.type==="split"?gy(r,o,t.unit):my(r,o,t.unit,t.max)};return i(),{chart:r,draw:i}}return Iy(c7);})();
|