PageSourceSearch

https://chat.uncensoredgpt.ai/_app/immutable/chunks/BsAKizII.js

js uncensoredgpt.ai collected 2026-09-25 22:32:06 UTC 448,324 bytes, 14 lines download raw bytes

vendor: 25,629 bytes, line 1
1import{i as Oa,d as lw,e as fw,n as cw,o as dw,f as tu,g as ha,h as hw,j as gw,k as y0,m as fi,p as yc,a as vc,q as v0,r as Bn,s as xr,b as bc,t as ga,u as pw,v as mw,w as yw,l as vw,x as bw,y as xw}from"./CrKpsNbG.js";import{q as ww,r as Ew,u as jl,i as Aw,v as kw,m as Ul,a as gr,w as Mw,x as Dw,y as F1,s as xc,z as $1,A as _1,B as ta,C as wc,D as Wl,E as R1,F as Cw,G as Sw,p as O1,o as Fw,n as $w,l as Ro,d as z1,c as b0,H as _w,I as Rw,b as Ow,J as zw,K as Bw,t as Tw,L as Pw}from"./CrATNjtF.js";import{a as Gl,f as B1,c as Lw,b as Nw}from"./CzDG__Ur.js";import{r as ge}from"./OtVwhkKS.js";import{R as T1,r as Iw,e as qw,f as jw,m as x0,o as w0,C as Uw,h as Ec,p as Yl,n as Ee,q as Ww,s as Gw,i as Yw,b as Hw,u as Vw,v as Xw,d as Kw,k as Jw,j as Zw,T as Qw,l as tE,t as eE,g as nE,w as es}from"./CGEFt5-M.js";import{i as rE}from"./C-V_EQOO.js";import{i as Rr,a as Xn}from"./Dmth1JHB.js";import{I as ns,o as P1,i as iE}from"./D9kC5om8.js";import{c as ln}from"./Cc3OSVma.js";import{w as L1,n as aE,a as Bt,z as N1,J as oE,K as sE,l as I1,t as uE,b as lE,p as fE,o as cE,q as dE,r as hE,u as gE,x as pE,v as mE,y as yE,B as vE,C as bE,A as xE,F as wE,E as EE,D as AE,G as kE,H as ME,I as DE,k as CE,L as q1}from"./Bb3-t4AS.js";import{d as SE}from"./BtqEITbA.js";import{o as Oo,c as E0,a as FE,r as $E,b as eu,N as j1,d as _E,e as Ac,s as RE,p as OE,h as zE,t as BE,f as TE}from"./Bi7T_FA4.js";var U1=-.14861,kc=1.78277,Mc=-.29227,nu=-.90649,pa=1.97294,A0=pa*nu,k0=pa*kc,M0=kc*Mc-nu*U1;function PE(t){if(t instanceof pr)return new pr(t.h,t.s,t.l,t.opacity);t instanceof T1||(t=Iw(t));var e=t.r/255,n=t.g/255,r=t.b/255,i=(M0*r+A0*e-k0*n)/(M0+A0-k0),a=r-i,o=(pa*(n-i)-Mc*a)/nu,s=Math.sqrt(o*o+a*a)/(pa*i*(1-i)),u=s?Math.atan2(o,a)*ww-120:NaN;return new pr(u<0?u+360:u,s,i,t.opacity)}function Hl(t,e,n,r){return arguments.length===1?PE(t):new pr(t,e,n,r??1)}function pr(t,e,n,r){this.h=+t,this.s=+e,this.l=+n,this.opacity=+r}qw(pr,Hl,jw(Uw,{brighter(t){return t=t==null?w0:Math.pow(w0,t),new pr(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?x0:Math.pow(x0,t),new pr(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=isNaN(this.h)?0:(this.h+120)*Ew,e=+this.l,n=isNaN(this.s)?0:this.s*e*(1-e),r=Math.cos(t),i=Math.sin(t);return new T1(255*(e+n*(U1*r+kc*i)),255*(e+n*(Mc*r+nu*i)),255*(e+n*(pa*r)),this.opacity)}}));function LE(t){var e=t.length;return function(n){return t[Math.max(0,Math.min(e-1,Math.floor(n*e)))]}}function NE(t,e){var n=Ec(+t,+e);return function(r){var i=n(r);return i-360*Math.floor(i/360)}}function W1(t){return function(e,n){var r=t((e=Yl(e)).h,(n=Yl(n)).h),i=Ee(e.s,n.s),a=Ee(e.l,n.l),o=Ee(e.opacity,n.opacity);return function(s){return e.h=r(s),e.s=i(s),e.l=a(s),e.opacity=o(s),e+""}}}const IE=W1(Ec);var qE=W1(Ee);function jE(t,e){var n=Ee((t=jl(t)).l,(e=jl(e)).l),r=Ee(t.a,e.a),i=Ee(t.b,e.b),a=Ee(t.opacity,e.opacity);return function(o){return t.l=n(o),t.a=r(o),t.b=i(o),t.opacity=a(o),t+""}}function G1(t){return function e(n){n=+n;function r(i,a){var o=t((i=Hl(i)).h,(a=Hl(a)).h),s=Ee(i.s,a.s),u=Ee(i.l,a.l),l=Ee(i.opacity,a.opacity);return function(f){return i.h=o(f),i.s=s(f),i.l=u(Math.pow(f,n)),i.opacity=l(f),i+""}}return r.gamma=e,r}(1)}const UE=G1(Ec);var WE=G1(Ee);function Dc(t,e){e===void 0&&(e=t,t=Oa);for(var n=0,r=e.length-1,i=e[0],a=new Array(r<0?0:r);n<r;)a[n]=t(i,i=e[++n]);return function(o){var s=Math.max(0,Math.min(r-1,Math.floor(o*=r)));return a[s](o-s)}}function GE(t,e){for(var n=new Array(e),r=0;r<e;++r)n[r]=t(r/(e-1));return n}const YE=Object.freeze(Object.defineProperty({__proto__:null,interpolate:Oa,interpolateArray:lw,interpolateBasis:Ww,interpolateBasisClosed:Gw,interpolateCubehelix:UE,interpolateCubehelixLong:WE,interpolateDate:fw,interpolateDiscrete:LE,interpolateHcl:Aw,interpolateHclLong:kw,interpolateHsl:IE,interpolateHslLong:qE,interpolateHue:NE,interpolateLab:jE,interpolateNumber:Yw,interpolateNumberArray:cw,interpolateObject:dw,interpolateRgb:Hw,interpolateRgbBasis:Vw,interpolateRgbBasisClosed:Xw,interpolateRound:tu,interpolateString:Kw,interpolateTransformCss:Jw,interpolateTransformSvg:Zw,interpolateZoom:rE,piecewise:Dc,quantize:GE},Symbol.toStringTag,{value:"Module"}));function HE(t,e,n){var r=new Qw,i=e;return e==null?(r.restart(t,e,n),r):(r._restart=r.restart,r.restart=function(a,o,s){o=+o,s=s==null?tE():+s,r._restart(function u(l){l+=i,r._restart(u,i+=o,s),a(l)},o,s)},r.restart(t,e,n),r)}function VE(t,e){let n=0,r,i=0,a=0;if(e===void 0)for(let o of t)o!=null&&(o=+o)>=o&&(r=o-i,i+=r/++n,a+=r*(o-i));else{let o=-1;for(let s of t)(s=e(s,++o,t))!=null&&(s=+s)>=s&&(r=s-i,i+=r/++n,a+=r*(s-i))}if(n>1)return a/(n-1)}function XE(t,e){const n=VE(t,e);return n&&Math.sqrt(n)}class Jt{constructor(){this._partials=new Float64Array(32),this._n=0}add(e){const n=this._partials;let r=0;for(let i=0;i<this._n&&i<32;i++){const a=n[i],o=e+a,s=Math.abs(e)<Math.abs(a)?e-(o-a):a-(o-e);s&&(n[r++]=s),e=o}return n[r]=e,this._n=r+1,this}valueOf(){const e=this._partials;let n=this._n,r,i,a,o=0;if(n>0){for(o=e[--n];n>0&&(r=o,i=e[--n],o=r+i,a=i-(o-r),!a););n>0&&(a<0&&e[n-1]<0||a>0&&e[n-1]>0)&&(i=a*2,r=o+i,i==r-o&&(o=r))}return o}}function KE(t,e){return Array.from(e,n=>t[n])}function JE(t=ha){if(t===ha)return Y1;if(typeof t!="function")throw new TypeError("compare is not a function");return(e,n)=>{const r=t(e,n);return r||r===0?r:(t(n,n)===0)-(t(e,e)===0)}}function Y1(t,e){return(t==null||!(t>=t))-(e==null||!(e>=e))||(t<e?-1:t>e?1:0)}function H1(t,e,n=0,r=1/0,i){if(e=Math.floor(e),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(t.length-1,r)),!(n<=e&&e<=r))return t;for(i=i===void 0?Y1:JE(i);r>n;){if(r-n>600){const u=r-n+1,l=e-n+1,f=Math.log(u),c=.5*Math.exp(2*f/3),d=.5*Math.sqrt(f*c*(u-c)/u)*(l-u/2<0?-1:1),h=Math.max(n,Math.floor(e-l*c/u+d)),g=Math.min(r,Math.floor(e+(u-l)*c/u+d));H1(t,e,h,g,i)}const a=t[e];let o=n,s=r;for(bi(t,n,e),i(t[r],a)>0&&bi(t,n,r);o<s;){for(bi(t,o,s),++o,--s;i(t[o],a)<0;)++o;for(;i(t[s],a)>0;)--s}i(t[n],a)===0?bi(t,n,s):(++s,bi(t,s,r)),s<=e&&(n=s+1),e<=s&&(r=s-1)}return t}function bi(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function Vl(t,e,n){if(t=Float64Array.from(hw(t,n)),!(!(r=t.length)||isNaN(e=+e))){if(e<=0||r<2)return Ul(t);if(e>=1)return gr(t);var r,i=(r-1)*e,a=Math.floor(i),o=gr(H1(t,a).subarray(0,a+1)),s=Ul(t.subarray(a+1));return o+(s-o)*(i-a)}}function V1(t,e,n=gw){if(!(!(r=t.length)||isNaN(e=+e))){if(e<=0||r<2)return+n(t[0],0,t);if(e>=1)return+n(t[r-1],r-1,t);var r,i=(r-1)*e,a=Math.floor(i),o=+n(t[a],a,t),s=+n(t[a+1],a+1,t);return o+(s-o)*(i-a)}}function ZE(t,e){let n=0,r=0;if(e===void 0)for(let i of t)i!=null&&(i=+i)>=i&&(++n,r+=i);else{let i=-1;for(let a of t)(a=e(a,++i,t))!=null&&(a=+a)>=a&&(++n,r+=a)}if(n)return r/n}function X1(t,e){return Vl(t,.5,e)}function*QE(t){for(const e of t)yield*e}function K1(t){return Array.from(QE(t))}function J1(t,e){let n=0;for(let r of t)(r=+r)&&(n+=r);return n}function tA(t,...e){t=new ns(t),e=e.map(eA);t:for(const n of t)for(const r of e)if(!r.has(n)){t.delete(n);continue t}return t}function eA(t){return t instanceof ns?t:new ns(t)}function nA(...t){const e=new ns;for(const n of t)for(const r of n)e.add(r);return e}const An=11102230246251565e-32,Ot=134217729,rA=(3+8*An)*An;function Xu(t,e,n,r,i){let a,o,s,u,l=e[0],f=r[0],c=0,d=0;f>l==f>-l?(a=l,l=e[++c]):(a=f,f=r[++d]);let h=0;if(c<t&&d<n)for(f>l==f>-l?(o=l+a,s=a-(o-l),l=e[++c]):(o=f+a,s=a-(o-f),f=r[++d]),a=o,s!==0&&(i[h++]=s);c<t&&d<n;)f>l==f>-l?(o=a+l,u=o-a,s=a-(o-u)+(l-u),l=e[++c]):(o=a+f,u=o-a,s=a-(o-u)+(f-u),f=r[++d]),a=o,s!==0&&(i[h++]=s);for(;c<t;)o=a+l,u=o-a,s=a-(o-u)+(l-u),l=e[++c],a=o,s!==0&&(i[h++]=s);for(;d<n;)o=a+f,u=o-a,s=a-(o-u)+(f-u),f=r[++d],a=o,s!==0&&(i[h++]=s);return(a!==0||h===0)&&(i[h++]=a),h}function iA(t,e){let n=e[0];for(let r=1;r<t;r++)n+=e[r];return n}function za(t){return new Float64Array(t)}const aA=(3+16*An)*An,oA=(2+12*An)*An,sA=(9+64*An)*An*An,Nr=za(4),D0=za(8),C0=za(12),S0=za(16),It=za(4);function uA(t,e,n,r,i,a,o){let s,u,l,f,c,d,h,g,p,m,y,v,b,x,E,A,w,k;const M=t-i,D=n-i,S=e-a,O=r-a;x=M*O,d=Ot*M,h=d-(d-M),g=M-h,d=Ot*O,p=d-(d-O),m=O-p,E=g*m-(x-h*p-g*p-h*m),A=S*D,d=Ot*S,h=d-(d-S),g=S-h,d=Ot*D,p=d-(d-D),m=D-p,w=g*m-(A-h*p-g*p-h*m),y=E-w,c=E-y,Nr[0]=E-(y+c)+(c-w),v=x+y,c=v-x,b=x-(v-c)+(y-c),y=b-A,c=b-y,Nr[1]=b-(y+c)+(c-A),k=v+y,c=k-v,Nr[2]=v-(k-c)+(y-c),Nr[3]=k;let z=iA(4,Nr),T=oA*o;if(z>=T||-z>=T||(c=t-M,s=t-(M+c)+(c-i),c=n-D,l=n-(D+c)+(c-i),c=e-S,u=e-(S+c)+(c-a),c=r-O,f=r-(O+c)+(c-a),s===0&&u===0&&l===0&&f===0)||(T=sA*o+rA*Math.abs(z),z+=M*f+O*s-(S*l+D*u),z>=T||-z>=T))return z;x=s*O,d=Ot*s,h=d-(d-s),g=s-h,d=Ot*O,p=d-(d-O),m=O-p,E=g*m-(x-h*p-g*p-h*m),A=u*D,d=Ot*u,h=d-(d-u),g=u-h,d=Ot*D,p=d-(d-D),m=D-p,w=g*m-(A-h*p-g*p-h*m),y=E-w,c=E-y,It[0]=E-(y+c)+(c-w),v=x+y,c=v-x,b=x-(v-c)+(y-c),y=b-A,c=b-y,It[1]=b-(y+c)+(c-A),k=v+y,c=k-v,It[2]=v-(k-c)+(y-c),It[3]=k;const C=Xu(4,Nr,4,It,D0);x=M*f,d=Ot*M,h=d-(d-M),g=M-h,d=Ot*f,p=d-(d-f),m=f-p,E=g*m-(x-h*p-g*p-h*m),A=S*l,d=Ot*S,h=d-(d-S),g=S-h,d=Ot*l,p=d-(d-l),m=l-p,w=g*m-(A-h*p-g*p-h*m),y=E-w,c=E-y,It[0]=E-(y+c)+(c-w),v=x+y,c=v-x,b=x-(v-c)+(y-c),y=b-A,c=b-y,It[1]=b-(y+c)+(c-A),k=v+y,c=k-v,It[2]=v-(k-c)+(y-c),It[3]=k;const R=Xu(C,D0,4,It,C0);x=s*f,d=Ot*s,h=d-(d-s),g=s-h,d=Ot*f,p=d-(d-f),m=f-p,E=g*m-(x-h*p-g*p-h*m),A=u*l,d=Ot*u,h=d-(d-u),g=u-h,d=Ot*l,p=d-(d-l),m=l-p,w=g*m-(A-h*p-g*p-h*m),y=E-w,c=E-y,It[0]=E-(y+c)+(c-w),v=x+y,c=v-x,b=x-(v-c)+(y-c),y=b-A,c=b-y,It[1]=b-(y+c)+(c-A),k=v+y,c=k-v,It[2]=v-(k-c)+(y-c),It[3]=k;const N=Xu(R,C0,4,It,S0);return S0[N-1]}function oo(t,e,n,r,i,a){const o=(e-a)*(n-i),s=(t-i)*(r-a),u=o-s,l=Math.abs(o+s);return Math.abs(u)>=aA*l?u:-uA(t,e,n,r,i,a,l)}const F0=Math.pow(2,-52),so=new Uint32Array(512);class rs{static from(e,n=hA,r=gA){const i=e.length,a=new Float64Array(i*2);for(let o=0;o<i;o++){const s=e[o];a[2*o]=n(s),a[2*o+1]=r(s)}return new rs(a)}constructor(e){const n=e.length>>1;if(n>0&&typeof e[0]!="number")throw new Error("Expected coords to contain numbers.");this.coords=e;const r=Math.max(2*n-5,0);this._triangles=new Uint32Array(r*3),this._halfedges=new Int32Array(r*3),this._hashSize=Math.ceil(Math.sqrt(n)),this._hullPrev=new Uint32Array(n),this._hullNext=new Uint32Array(n),this._hullTri=new Uint32Array(n),this._hullHash=new Int32Array(this._hashSize),this._ids=new Uint32Array(n),this._dists=new Float64Array(n),this.update()}update(){const{coords:e,_hullPrev:n,_hullNext:r,_hullTri:i,_hullHash:a}=this,o=e.length>>1;let s=1/0,u=1/0,l=-1/0,f=-1/0;for(let M=0;M<o;M++){const D=e[2*M],S=e[2*M+1];D<s&&(s=D),S<u&&(u=S),D>l&&(l=D),S>f&&(f=S),this._ids[M]=M}const c=(s+l)/2,d=(u+f)/2;let h,g,p;for(let M=0,D=1/0;M<o;M++){const S=Ku(c,d,e[2*M],e[2*M+1]);S<D&&(h=M,D=S)}const m=e[2*h],y=e[2*h+1];for(let M=0,D=1/0;M<o;M++){if(M===h)continue;const S=Ku(m,y,e[2*M],e[2*M+1]);S<D&&S>0&&(g=M,D=S)}let v=e[2*g],b=e[2*g+1],x=1/0;for(let M=0;M<o;M++){if(M===h||M===g)continue;const D=cA(m,y,v,b,e[2*M],e[2*M+1]);D<x&&(p=M,x=D)}let E=e[2*p],A=e[2*p+1];if(x===1/0){for(let S=0;S<o;S++)this._dists[S]=e[2*S]-e[0]||e[2*S+1]-e[1];Vr(this._ids,this._dists,0,o-1);const M=new Uint32Array(o);let D=0;for(let S=0,O=-1/0;S<o;S++){const z=this._ids[S],T=this._dists[z];T>O&&(M[D++]=z,O=T)}this.hull=M.subarray(0,D),this.triangles=new Uint32Array(0),this.halfedges=new Uint32Array(0);return}if(oo(m,y,v,b,E,A)<0){const M=g,D=v,S=b;g=p,v=E,b=A,p=M,E=D,A=S}const w=dA(m,y,v,b,E,A);this._cx=w.x,this._cy=w.y;for(let M=0;M<o;M++)this._dists[M]=Ku(e[2*M],e[2*M+1],w.x,w.y);Vr(this._ids,this._dists,0,o-1),this._hullStart=h;let k=3;r[h]=n[p]=g,r[g]=n[h]=p,r[p]=n[g]=h,i[h]=0,i[g]=1,i[p]=2,a.fill(-1),a[this._hashKey(m,y)]=h,a[this._hashKey(v,b)]=g,a[this._hashKey(E,A)]=p,this.trianglesLen=0,this._addTriangle(h,g,p,-1,-1,-1);for(let M=0,D,S;M<this._ids.length;M++){const O=this._ids[M],z=e[2*O],T=e[2*O+1];if(M>0&&Math.abs(z-D)<=F0&&Math.abs(T-S)<=F0||(D=z,S=T,O===h||O===g||O===p))continue;let C=0;for(let vt=0,Oe=this._hashKey(z,T);vt<this._hashSize&&(C=a[(Oe+vt)%this._hashSize],!(C!==-1&&C!==r[C]));vt++);C=n[C];let R=C,N;for(;N=r[R],oo(z,T,e[2*R],e[2*R+1],e[2*N],e[2*N+1])>=0;)if(R=N,R===C){R=-1;break}if(R===-1)continue;let X=this._addTriangle(R,O,r[R],-1,-1,i[R]);i[O]=this._legalize(X+2),i[R]=X,k++;let V=r[R];for(;N=r[V],oo(z,T,e[2*V],e[2*V+1],e[2*N],e[2*N+1])<0;)X=this._addTriangle(V,O,N,i[O],-1,i[V]),i[O]=this._legalize(X+2),r[V]=V,k--,V=N;if(R===C)for(;N=n[R],oo(z,T,e[2*N],e[2*N+1],e[2*R],e[2*R+1])<0;)X=this._addTriangle(N,O,R,-1,i[R],i[N]),this._legalize(X+2),i[N]=X,r[R]=R,k--,R=N;this._hullStart=n[O]=R,r[R]=n[V]=O,r[O]=V,a[this._hashKey(z,T)]=O,a[this._hashKey(e[2*R],e[2*R+1])]=R}this.hull=new Uint32Array(k);for(let M=0,D=this._hullStart;M<k;M++)this.hull[M]=D,D=r[D];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(e,n){return Math.floor(lA(e-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(e){const{_triangles:n,_halfedges:r,coords:i}=this;let a=0,o=0;for(;;){const s=r[e],u=e-e%3;if(o=u+(e+2)%3,s===-1){if(a===0)break;e=so[--a];continue}const l=s-s%3,f=u+(e+1)%3,c=l+(s+2)%3,d=n[o],h=n[e],g=n[f],p=n[c];if(fA(i[2*d],i[2*d+1],i[2*h],i[2*h+1],i[2*g],i[2*g+1],i[2*p],i[2*p+1])){n[e]=p,n[s]=d;const y=r[c];if(y===-1){let b=this._hullStart;do{if(this._hullTri[b]===c){this._hullTri[b]=e;break}b=this._hullPrev[b]}while(b!==this._hullStart)}this._link(e,y),this._link(s,r[o]),this._link(o,c);const v=l+(s+1)%3;a<so.length&&(so[a++]=v)}else{if(a===0)break;e=so[--a]}}return o}_link(e,n){this._halfedges[e]=n,n!==-1&&(this._halfedges[n]=e)}_addTriangle(e,n,r,i,a,o){const s=this.trianglesLen;return this._triangles[s]=e,this._triangles[s+1]=n,this._triangles[s+2]=r,this._link(s,i),this._link(s+1,a),this._link(s+2,o),this.trianglesLen+=3,s}}function lA(t,e){const n=t/(Math.abs(t)+Math.abs(e));return(e>0?3-n:1+n)/4}function Ku(t,e,n,r){const i=t-n,a=e-r;return i*i+a*a}function fA(t,e,n,r,i,a,o,s){const u=t-o,l=e-s,f=n-o,c=r-s,d=i-o,h=a-s,g=u*u+l*l,p=f*f+c*c,m=d*d+h*h;return u*(c*m-p*h)-l*(f*m-p*d)+g*(f*h-c*d)<0}function cA(t,e,n,r,i,a){const o=n-t,s=r-e,u=i-t,l=a-e,f=o*o+s*s,c=u*u+l*l,d=.5/(o*l-s*u),h=(l*f-s*c)*d,g=(o*c-u*f)*d;return h*h+g*g}function dA(t,e,n,r,i,a){const o=n-t,s=r-e,u=i-t,l=a-e,f=o*o+s*s,c=u*u+l*l,d=.5/(o*l-s*u),h=t+(l*f-s*c)*d,g=e+(o*c-u*f)*d;return{x:h,y:g}}function Vr(t,e,n,r){if(r-n<=20)for(let i=n+1;i<=r;i++){const a=t[i],o=e[a];let s=i-1;for(;s>=n&&e[t[s]]>o;)t[s+1]=t[s--];t[s+1]=a}else{const i=n+r>>1;let a=n+1,o=r;xi(t,i,a),e[t[n]]>e[t[r]]&&xi(t,n,r),e[t[a]]>e[t[r]]&&xi(t,a,r),e[t[n]]>e[t[a]]&&xi(t,n,a);const s=t[a],u=e[s];for(;;){do a++;while(e[t[a]]<u);do o--;while(e[t[o]]>u);if(o<a)break;xi(t,a,o)}t[n+1]=t[o],t[o]=s,r-a+1>=o-n?(Vr(t,e,a,r),Vr(t,e,n,o-1)):(Vr(t,e,n,o-1),Vr(t,e,a,r))}}function xi(t,e,n){const r=t[e];t[e]=t[n],t[n]=r}function hA(t){return t[0]}function gA(t){return t[1]}const $0=1e-6;class fr{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(e,n){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(e,n){this._+=`L${this._x1=+e},${this._y1=+n}`}arc(e,n,r){e=+e,n=+n,r=+r;const i=e+r,a=n;if(r<0)throw new Error("negative radius");this._x1===null?this._+=`M${i},${a}`:(Math.abs(this._x1-i)>$0||Math.abs(this._y1-a)>$0)&&(this._+="L"+i+","+a),r&&(this._+=`A${r},${r},0,1,1,${e-r},${n}A${r},${r},0,1,1,${this._x1=i},${this._y1=a}`)}rect(e,n,r,i){this._+=`M${this._x0=this._x1=+e},${this._y0=this._y1=+n}h${+r}v${+i}h${-r}Z`}value(){return this._||null}}class Xl{constructor(){this._=[]}moveTo(e,n){this._.push([e,n])}closePath(){this._.push(this._[0].slice())}lineTo(e,n){this._.push([e,n])}value(){return this._.length?this._:null}}let pA=class{constructor(e,[n,r,i,a]=[0,0,960,500]){if(!((i=+i)>=(n=+n))||!((a=+a)>=(r=+r)))throw new Error("invalid bounds");this.delaunay=e,this._circumcenters=new Float64Array(e.points.length*2),this.vectors=new Float64Array(e.points.length*2),this.xmax=i,this.xmin=n,this.ymax=a,this.ymin=r,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:e,hull:n,triangles:r},vectors:i}=this;let a,o;const s=this.circumcenters=this._circumcenters.subarray(0,r.length/3*2);for(let p=0,m=0,y=r.length,v,b;p<y;p+=3,m+=2){const x=r[p]*2,E=r[p+1]*2,A=r[p+2]*2,w=e[x],k=e[x+1],M=e[E],D=e[E+1],S=e[A],O=e[A+1],z=M-w,T=D-k,C=S-w,R=O-k,N=(z*R-T*C)*2;if(Math.abs(N)<1e-9){if(a===void 0){a=o=0;for(const V of n)a+=e[V*2],o+=e[V*2+1];a/=n.length,o/=n.length}const X=1e9*Math.sign((a-w)*R-(o-k)*C);v=(w+S)/2-X*R,b=(k+O)/2+X*C}else{const X=1/N,V=z*z+T*T,vt=C*C+R*R;v=w+(R*V-T*vt)*X,b=k+(z*vt-C*V)*X}s[m]=v,s[m+1]=b}let u=n[n.length-1],l,f=u*4,c,d=e[2*u],h,g=e[2*u+1];i.fill(0);for(let p=0;p<n.length;++p)u=n[p],l=f,c=d,h=g,f=u*4,d=e[2*u],g=e[2*u+1],i[l+2]=i[f]=h-g,i[l+3]=i[f+1]=d-c}render(e){const n=e==null?e=new fr:void 0,{delaunay:{halfedges:r,inedges:i,hull:a},circumcenters:o,vectors:s}=this;if(a.length<=1)return null;for(let f=0,c=r.length;f<c;++f){const d=r[f];if(d<f)continue;const h=Math.floor(f/3)*2,g=Math.floor(d/3)*2,p=o[h],m=o[h+1],y=o[g],v=o[g+1];this._renderSegment(p,m,y,v,e)}let u,l=a[a.length-1];for(let f=0;f<a.length;++f){u=l,l=a[f];const c=Math.floor(i[l]/3)*2,d=o[c],h=o[c+1],g=u*4,p=this._project(d,h,s[g+2],s[g+3]);p&&this._renderSegment(d,h,p[0],p[1],e)}return n&&n.value()}renderBounds(e){const n=e==null?e=new fr:void 0;return e.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),n&&n.value()}renderCell(e,n){const r=n==null?n=new fr:void 0,i=this._clip(e);if(i===null||!i.length)return;n.moveTo(i[0],i[1]);let a=i.length;for(;i[0]===i[a-2]&&i[1]===i[a-1]&&a>1;)a-=2;for(let o=2;o<a;o+=2)(i[o]!==i[o-2]||i[o+1]!==i[o-1])&&n.lineTo(i[o],i[o+1]);return n.closePath(),r&&r.value()}*cellPolygons(){const{delaunay:{points:e}}=this;for(let n=0,r=e.length/2;n<r;++n){const i=this.cellPolygon(n);i&&(i.index=n,yield i)}}cellPolygon(e){const n=new Xl;return this.renderCell(e,n),n.value()}_renderSegment(e,n,r,i,a){let o;const s=this._regioncode(e,n),u=this._regioncode(r,i);s===0&&u===0?(a.moveTo(e,n),a.lineTo(r,i)):(o=this._clipSegment(e,n,r,i,s,u))&&(a.moveTo(o[0],o[1]),a.lineTo(o[2],o[3]))}contains(e,n,r){return n=+n,n!==n||(r=+r,r!==r)?!1:this.delaunay._step(e,n,r)===e}*neighbors(e){const n=this._clip(e);if(n)for(const r of this.delaunay.neighbors(e)){const i=this._clip(r);if(i){t:for(let a=0,o=n.length;a<o;a+=2)for(let s=0,u=i.length;s<u;s+=2)if(n[a]===i[s]&&n[a+1]===i[s+1]&&n[(a+2)%o]===i[(s+u-2)%u]&&n[(a+3)%o]===i[(s+u-1)%u]){yield r;break t}}}}_cell(e){const{circumcenters:n,delaunay:{inedges:r,halfedges:i,triangles:a}}=this,o=r[e];if(o===-1)return null;const s=[];let u=o;do{const l=Math.floor(u/3);if(s.push(n[l*2],n[l*2+1]),u=u%3===2?u-2:u+1,a[u]!==e)break;u=i[u]}while(u!==o&&u!==-1);return s}_clip(e){if(e===0&&this.delaunay.hull.length===1)return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];const n=this._cell(e);if(n===null)return null;const{vectors:r}=this,i=e*4;return this._simplify(r[i]||r[i+1]?this._clipInfinite(e,n,r[i],r[i+1],r[i+2],r[i+3]):this._clipFinite(e,n))}_clipFinite(e,n){const r=n.length;let i=null,a,o,s=n[r-2],u=n[r-1],l,f=this._regioncode(s,u),c,d=0;for(let h=0;h<r;h+=2)if(a=s,o=u,s=n[h],u=n[h+1],l=f,f=this._regioncode(s,u),l===0&&f===0)c=d,d=0,i?i.push(s,u):i=[s,u];else{let g,p,m,y,v;if(l===0){if((g=this._clipSegment(a,o,s,u,l,f))===null)continue;[p,m,y,v]=g}else{if((g=this._clipSegment(s,u,a,o,f,l))===null)continue;[y,v,p,m]=g,c=d,d=this._edgecode(p,m),c&&d&&this._edge(e,c,d,i,i.length),i?i.push(p,m):i=[p,m]}c=d,d=this._edgecode(y,v),c&&d&&this._edge(e,c,d,i,i.length),i?i.push(y,v):i=[y,v]}if(i)c=d,d=this._edgecode(i[0],i[1]),c&&d&&this._edge(e,c,d,i,i.length);else if(this.contains(e,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2))return[this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax,this.xmin,this.ymin];return i}_clipSegment(e,n,r,i,a,o){const s=a<o;for(s&&([e,n,r,i,a,o]=[r,i,e,n,o,a]);;){if(a===0&&o===0)return s?[r,i,e,n]:[e,n,r,i];if(a&o)return null;let u,l,f=a||o;f&8?(u=e+(r-e)*(this.ymax-n)/(i-n),l=this.ymax):f&4?(u=e+(r-e)*(this.ymin-n)/(i-n),l=this.ymin):f&2?(l=n+(i-n)*(this.xmax-e)/(r-e),u=this.xmax):(l=n+(i-n)*(this.xmin-e)/(r-e),u=this.xmin),a?(e=u,n=l,a=this._regioncode(e,n)):(r=u,i=l,o=this._regioncode(r,i))}}_clipInfinite(e,n,r,i,a,o){let s=Array.from(n),u;if((u=this._project(s[0],s[1],r,i))&&s.unshift(u[0],u[1]),(u=this._project(s[s.length-2],s[s.length-1],a,o))&&s.push(u[0],u[1]),s=this._clipFinite(e,s))for(let l=0,f=s.length,c,d=this._edgecode(s[f-2],s[f-1]);l<f;l+=2)c=d,d=this._edgecode(s[l],s[l+1]),c&&d&&(l=this._edge(e,c,d,s,l),f=s.length);else this.contains(e,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(s=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return s}_edge(e,n,r,i,a){for(;n!==r;){let o,s;switch(n){case 5:n=4;continue;case 4:n=6,o=this.xmax,s=this.ymin;break;case 6:n=2;continue;case 2:n=10,o=this.xmax,s=this.ymax;break;case 10:n=8;continue;case 8:n=9,o=this.xmin,s=this.ymax;break;case 9:n=1;continue;case 1:n=5,o=this.xmin,s=this.ymin;break}(i[a]!==o||i[a+1]!==s)&&this.contains(e,o,s)&&(i.splice(a,0,o,s),a+=2)}return a}_project(e,n,r,i){let a=1/0,o,s,u;if(i<0){if(n<=this.ymin)return null;(o=(this.ymin-n)/i)<a&&(u=this.ymin,s=e+(a=o)*r)}else if(i>0){if(n>=this.ymax)return null;(o=(this.ymax-n)/i)<a&&(u=this.ymax,s=e+(a=o)*r)}if(r>0){if(e>=this.xmax)return null;(o=(this.xmax-e)/r)<a&&(s=this.xmax,u=n+(a=o)*i)}else if(r<0){if(e<=this.xmin)return null;(o=(this.xmin-e)/r)<a&&(s=this.xmin,u=n+(a=o)*i)}return[s,u]}_edgecode(e,n){return(e===this.xmin?1:e===this.xmax?2:0)|(n===this.ymin?4:n===this.ymax?8:0)}_regioncode(e,n){return(e<this.xmin?1:e>this.xmax?2:0)|(n<this.ymin?4:n>this.ymax?8:0)}_simplify(e){if(e&&e.length>4){for(let n=0;n<e.length;n+=2){const r=(n+2)%e.length,i=(n+4)%e.length;(e[n]===e[r]&&e[r]===e[i]||e[n+1]===e[r+1]&&e[r+1]===e[i+1])&&(e.splice(r,2),n-=2)}e.length||(e=null)}return e}};const mA=2*Math.PI,Ir=Math.pow;function yA(t){return t[0]}function vA(t){return t[1]}function bA(t){const{triangles:e,coords:n}=t;for(let r=0;r<e.length;r+=3){const i=2*e[r],a=2*e[r+1],o=2*e[r+2];if((n[o]-n[i])*(n[a+1]-n[i+1])-(n[a]-n[i])*(n[o+1]-n[i+1])>1e-10)return!1}return!0}function xA(t,e,n){return[t+Math.sin(t+e)*n,e+Math.cos(t-e)*n]}class Cc{static from(e,n=yA,r=vA,i){return new Cc("length"in e?wA(e,n,r,i):Float64Array.from(EA(e,n,r,i)))}constructor(e){this._delaunator=new rs(e),this.inedges=new Int32Array(e.length/2),this._hullIndex=new Int32Array(e.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const e=this._delaunator,n=this.points;if(e.hull&&e.hull.length>2&&bA(e)){this.collinear=Int32Array.from({length:n.length/2},(d,h)=>h).sort((d,h)=>n[2*d]-n[2*h]||n[2*d+1]-n[2*h+1]);const u=this.collinear[0],l=this.collinear[this.collinear.length-1],f=[n[2*u],n[2*u+1],n[2*l],n[2*l+1]],c=1e-8*Math.hypot(f[3]-f[1],f[2]-f[0]);for(let d=0,h=n.length/2;d<h;++d){const g=xA(n[2*d],n[2*d+1],c);n[2*d]=g[0],n[2*d+1]=g[1]}this._delaunator=new rs(n)}else delete this.collinear;const r=this.halfedges=this._delaunator.halfedges,i=this.hull=this._delaunator.hull,a=this.triangles=this._delaunator.triangles,o=this.inedges.fill(-1),s=this._hullIndex.fill(-1);for(let u=0,l=r.length;u<l;++u){const f=a[u%3===2?u-2:u+1];(r[u]===-1||o[f]===-1)&&(o[f]=u)}for(let u=0,l=i.length;u<l;++u)s[i[u]]=u;i.length<=2&&i.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=i[0],o[i[0]]=1,i.length===2&&(o[i[1]]=0,this.triangles[1]=i[1],this.triangles[2]=i[1]))}voronoi(e){return new pA(this,e)}*neighbors(e){const{inedges:n,hull:r,_hullIndex:i,halfedges:a,triangles:o,collinear:s}=this;if(s){const c=s.indexOf(e);c>0&&(yield s[c-1]),c<s.length-1&&(yield s[c+1]);return}const u=n[e];if(u===-1)return;let l=u,f=-1;do{if(yield f=o[l],l=l%3===2?l-2:l+1,o[l]!==e)return;if(l=a[l],l===-1){const c=r[(i[e]+1)%r.length];c!==f&&(yield c);return}}while(l!==u)}find(e,n,r=0){if(e=+e,e!==e||(n=+n,n!==n))return-1;const i=r;let a;for(;(a=this._step(r,e,n))>=0&&a!==r&&a!==i;)r=a;return a}_step(e,n,r){const{inedges:i,hull:a,_hullIndex:o,halfedges:s,triangles:u,points:l}=this;if(i[e]===-1||!l.length)return(e+1)%(l.length>>1);let f=e,c=Ir(n-l[e*2],2)+Ir(r-l[e*2+1],2);const d=i[e];let h=d;do{let g=u[h];const p=Ir(n-l[g*2],2)+Ir(r-l[g*2+1],2);if(p<c&&(c=p,f=g),h=h%3===2?h-2:h+1,u[h]!==e)break;if(h=s[h],h===-1){if(h=a[(o[e]+1)%a.length],h!==g&&Ir(n-l[h*2],2)+Ir(r-l[h*2+1],2)<c)return h;break}}while(h!==d);return f}render(e){const n=e==null?e=new fr:void 0,{points:r,halfedges:i,triangles:a}=this;for(let o=0,s=i.length;o<s;++o){const u=i[o];if(u<o)continue;const l=a[o]*2,f=a[u]*2;e.moveTo(r[l],r[l+1]),e.lineTo(r[f],r[f+1])}return this.renderHull(e),n&&n.value()}renderPoints(e,n){n===void 0&&(!e||typeof e.moveTo!="function")&&(n=e,e=null),n=n==null?2:+n;const r=e==null?e=new fr:void 0,{points:i}=this;for(let a=0,o=i.length;a<o;a+=2){const s=i[a],u=i[a+1];e.moveTo(s+n,u),e.arc(s,u,n,0,mA)}return r&&r.value()}renderHull(e){const n=e==null?e=new fr:void 0,{hull:r,points:i}=this,a=r[0]*2,o=r.length;e.moveTo(i[a],i[a+1]);for(let s=1;s<o;++s){const u=2*r[s];e.lineTo(i[u],i[u+1])}return e.closePath(),n&&n.value()}hullPolygon(){const e=new Xl;return this.renderHull(e),e.value()}renderTriangle(e,n){const r=n==null?n=new fr:void 0,{points:i,triangles:a}=this,o=a[e*=3]*2,s=a[e+1]*2,u=a[e+2]*2;return n.moveTo(i[o],i[o+1]),n.lineTo(i[s],i[s+1]),n.lineTo(i[u],i[u+1]),n.closePath(),r&&r.value()}*trianglePolygons(){const{triangles:e}=this;for(let n=0,r=e.length/3;n<r;++n)yield this.trianglePolygon(n)}trianglePolygon(e){const n=new Xl;
1return this.renderTriangle(e,n),n.value()}}function wA(t,e,n,r){const i=t.length,a=new Float64Array(i*2);for(let o=0;o<i;++o){const s=t[o];a[o*2]=e.call(r,s,o,t),a[o*2+1]=n.call(r,s,o,t)}return a}function*EA(t,e,n,r){let i=0;for(const a of t)yield e.call(r,a,i,t),yield n.call(r,a,i,t),++i}var _0={},Ju={},Zu=34,wi=10,Qu=13;function Z1(t){return new Function("d","return {"+t.map(function(e,n){return JSON.stringify(e)+": d["+n+'] || ""'}).join(",")+"}")}function AA(t,e){var n=Z1(t);return function(r,i){return e(n(r),i,t)}}function R0(t){var e=Object.create(null),n=[];return t.forEach(function(r){for(var i in r)i in e||n.push(e[i]=i)}),n}function ae(t,e){var n=t+"",r=n.length;return r<e?new Array(e-r+1).join(0)+n:n}function kA(t){return t<0?"-"+ae(-t,6):t>9999?"+"+ae(t,6):ae(t,4)}function MA(t){var e=t.getUTCHours(),n=t.getUTCMinutes(),r=t.getUTCSeconds(),i=t.getUTCMilliseconds();return isNaN(t)?"Invalid Date":kA(t.getUTCFullYear())+"-"+ae(t.getUTCMonth()+1,2)+"-"+ae(t.getUTCDate(),2)+(i?"T"+ae(e,2)+":"+ae(n,2)+":"+ae(r,2)+"."+ae(i,3)+"Z":r?"T"+ae(e,2)+":"+ae(n,2)+":"+ae(r,2)+"Z":n||e?"T"+ae(e,2)+":"+ae(n,2)+"Z":"")}function DA(t){var e=new RegExp('["'+t+`
2\r]`),n=t.charCodeAt(0);function r(c,d){var h,g,p=i(c,function(m,y){if(h)return h(m,y-1);g=m,h=d?AA(m,d):Z1(m)});return p.columns=g||[],p}function i(c,d){var h=[],g=c.length,p=0,m=0,y,v=g<=0,b=!1;c.charCodeAt(g-1)===wi&&--g,c.charCodeAt(g-1)===Qu&&--g;function x(){if(v)return Ju;if(b)return b=!1,_0;var A,w=p,k;if(c.charCodeAt(w)===Zu){for(;p++<g&&c.charCodeAt(p)!==Zu||c.charCodeAt(++p)===Zu;);return(A=p)>=g?v=!0:(k=c.charCodeAt(p++))===wi?b=!0:k===Qu&&(b=!0,c.charCodeAt(p)===wi&&++p),c.slice(w+1,A-1).replace(/""/g,'"')}for(;p<g;){if((k=c.charCodeAt(A=p++))===wi)b=!0;else if(k===Qu)b=!0,c.charCodeAt(p)===wi&&++p;else if(k!==n)continue;return c.slice(w,A)}return v=!0,c.slice(w,g)}for(;(y=x())!==Ju;){for(var E=[];y!==_0&&y!==Ju;)E.push(y),y=x();d&&(E=d(E,m++))==null||h.push(E)}return h}function a(c,d){return c.map(function(h){return d.map(function(g){return f(h[g])}).join(t)})}function o(c,d){return d==null&&(d=R0(c)),[d.map(f).join(t)].concat(a(c,d)).join(`
3`)}function s(c,d){return d==null&&(d=R0(c)),a(c,d).join(`
4`)}function u(c){return c.map(l).join(`
5`)}function l(c){return c.map(f).join(t)}function f(c){return c==null?"":c instanceof Date?MA(c):e.test(c+="")?'"'+c.replace(/"/g,'""')+'"':c}return{parse:r,parseRows:i,format:o,formatBody:s,formatRows:u,formatRow:l,formatValue:f}}function CA(t,e){var n,r=1;t==null&&(t=0),e==null&&(e=0);function i(){var a,o=n.length,s,u=0,l=0;for(a=0;a<o;++a)s=n[a],u+=s.x,l+=s.y;for(u=(u/o-t)*r,l=(l/o-e)*r,a=0;a<o;++a)s=n[a],s.x-=u,s.y-=l}return i.initialize=function(a){n=a},i.x=function(a){return arguments.length?(t=+a,i):t},i.y=function(a){return arguments.length?(e=+a,i):e},i.strength=function(a){return arguments.length?(r=+a,i):r},i}function SA(t){const e=+this._x.call(null,t),n=+this._y.call(null,t);return Q1(this.cover(e,n),e,n,t)}function Q1(t,e,n,r){if(isNaN(e)||isNaN(n))return t;var i,a=t._root,o={data:r},s=t._x0,u=t._y0,l=t._x1,f=t._y1,c,d,h,g,p,m,y,v;if(!a)return t._root=o,t;for(;a.length;)if((p=e>=(c=(s+l)/2))?s=c:l=c,(m=n>=(d=(u+f)/2))?u=d:f=d,i=a,!(a=a[y=m<<1|p]))return i[y]=o,t;if(h=+t._x.call(null,a.data),g=+t._y.call(null,a.data),e===h&&n===g)return o.next=a,i?i[y]=o:t._root=o,t;do i=i?i[y]=new Array(4):t._root=new Array(4),(p=e>=(c=(s+l)/2))?s=c:l=c,(m=n>=(d=(u+f)/2))?u=d:f=d;while((y=m<<1|p)===(v=(g>=d)<<1|h>=c));return i[v]=a,i[y]=o,t}function FA(t){var e,n,r=t.length,i,a,o=new Array(r),s=new Array(r),u=1/0,l=1/0,f=-1/0,c=-1/0;for(n=0;n<r;++n)isNaN(i=+this._x.call(null,e=t[n]))||isNaN(a=+this._y.call(null,e))||(o[n]=i,s[n]=a,i<u&&(u=i),i>f&&(f=i),a<l&&(l=a),a>c&&(c=a));if(u>f||l>c)return this;for(this.cover(u,l).cover(f,c),n=0;n<r;++n)Q1(this,o[n],s[n],t[n]);return this}function $A(t,e){if(isNaN(t=+t)||isNaN(e=+e))return this;var n=this._x0,r=this._y0,i=this._x1,a=this._y1;if(isNaN(n))i=(n=Math.floor(t))+1,a=(r=Math.floor(e))+1;else{for(var o=i-n||1,s=this._root,u,l;n>t||t>=i||r>e||e>=a;)switch(l=(e<r)<<1|t<n,u=new Array(4),u[l]=s,s=u,o*=2,l){case 0:i=n+o,a=r+o;break;case 1:n=i-o,a=r+o;break;case 2:i=n+o,r=a-o;break;case 3:n=i-o,r=a-o;break}this._root&&this._root.length&&(this._root=s)}return this._x0=n,this._y0=r,this._x1=i,this._y1=a,this}function _A(){var t=[];return this.visit(function(e){if(!e.length)do t.push(e.data);while(e=e.next)}),t}function RA(t){return arguments.length?this.cover(+t[0][0],+t[0][1]).cover(+t[1][0],+t[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function Ht(t,e,n,r,i){this.node=t,this.x0=e,this.y0=n,this.x1=r,this.y1=i}function OA(t,e,n){var r,i=this._x0,a=this._y0,o,s,u,l,f=this._x1,c=this._y1,d=[],h=this._root,g,p;for(h&&d.push(new Ht(h,i,a,f,c)),n==null?n=1/0:(i=t-n,a=e-n,f=t+n,c=e+n,n*=n);g=d.pop();)if(!(!(h=g.node)||(o=g.x0)>f||(s=g.y0)>c||(u=g.x1)<i||(l=g.y1)<a))if(h.length){var m=(o+u)/2,y=(s+l)/2;d.push(new Ht(h[3],m,y,u,l),new Ht(h[2],o,y,m,l),new Ht(h[1],m,s,u,y),new Ht(h[0],o,s,m,y)),(p=(e>=y)<<1|t>=m)&&(g=d[d.length-1],d[d.length-1]=d[d.length-1-p],d[d.length-1-p]=g)}else{var v=t-+this._x.call(null,h.data),b=e-+this._y.call(null,h.data),x=v*v+b*b;if(x<n){var E=Math.sqrt(n=x);i=t-E,a=e-E,f=t+E,c=e+E,r=h.data}}return r}function zA(t){if(isNaN(f=+this._x.call(null,t))||isNaN(c=+this._y.call(null,t)))return this;var e,n=this._root,r,i,a,o=this._x0,s=this._y0,u=this._x1,l=this._y1,f,c,d,h,g,p,m,y;if(!n)return this;if(n.length)for(;;){if((g=f>=(d=(o+u)/2))?o=d:u=d,(p=c>=(h=(s+l)/2))?s=h:l=h,e=n,!(n=n[m=p<<1|g]))return this;if(!n.length)break;(e[m+1&3]||e[m+2&3]||e[m+3&3])&&(r=e,y=m)}for(;n.data!==t;)if(i=n,!(n=n.next))return this;return(a=n.next)&&delete n.next,i?(a?i.next=a:delete i.next,this):e?(a?e[m]=a:delete e[m],(n=e[0]||e[1]||e[2]||e[3])&&n===(e[3]||e[2]||e[1]||e[0])&&!n.length&&(r?r[y]=n:this._root=n),this):(this._root=a,this)}function BA(t){for(var e=0,n=t.length;e<n;++e)this.remove(t[e]);return this}function TA(){return this._root}function PA(){var t=0;return this.visit(function(e){if(!e.length)do++t;while(e=e.next)}),t}function LA(t){var e=[],n,r=this._root,i,a,o,s,u;for(r&&e.push(new Ht(r,this._x0,this._y0,this._x1,this._y1));n=e.pop();)if(!t(r=n.node,a=n.x0,o=n.y0,s=n.x1,u=n.y1)&&r.length){var l=(a+s)/2,f=(o+u)/2;(i=r[3])&&e.push(new Ht(i,l,f,s,u)),(i=r[2])&&e.push(new Ht(i,a,f,l,u)),(i=r[1])&&e.push(new Ht(i,l,o,s,f)),(i=r[0])&&e.push(new Ht(i,a,o,l,f))}return this}function NA(t){var e=[],n=[],r;for(this._root&&e.push(new Ht(this._root,this._x0,this._y0,this._x1,this._y1));r=e.pop();){var i=r.node;if(i.length){var a,o=r.x0,s=r.y0,u=r.x1,l=r.y1,f=(o+u)/2,c=(s+l)/2;(a=i[0])&&e.push(new Ht(a,o,s,f,c)),(a=i[1])&&e.push(new Ht(a,f,s,u,c)),(a=i[2])&&e.push(new Ht(a,o,c,f,l)),(a=i[3])&&e.push(new Ht(a,f,c,u,l))}n.push(r)}for(;r=n.pop();)t(r.node,r.x0,r.y0,r.x1,r.y1);return this}function IA(t){return t[0]}function qA(t){return arguments.length?(this._x=t,this):this._x}function jA(t){return t[1]}function UA(t){return arguments.length?(this._y=t,this):this._y}function Sc(t,e,n){var r=new Fc(e??IA,n??jA,NaN,NaN,NaN,NaN);return t==null?r:r.addAll(t)}function Fc(t,e,n,r,i,a){this._x=t,this._y=e,this._x0=n,this._y0=r,this._x1=i,this._y1=a,this._root=void 0}function O0(t){for(var e={data:t.data},n=e;t=t.next;)n=n.next={data:t.data};return e}var ie=Sc.prototype=Fc.prototype;ie.copy=function(){var t=new Fc(this._x,this._y,this._x0,this._y0,this._x1,this._y1),e=this._root,n,r;if(!e)return t;if(!e.length)return t._root=O0(e),t;for(n=[{source:e,target:t._root=new Array(4)}];e=n.pop();)for(var i=0;i<4;++i)(r=e.source[i])&&(r.length?n.push({source:r,target:e.target[i]=new Array(4)}):e.target[i]=O0(r));return t};ie.add=SA;ie.addAll=FA;ie.cover=$A;ie.data=_A;ie.extent=RA;ie.find=OA;ie.remove=zA;ie.removeAll=BA;ie.root=TA;ie.size=PA;ie.visit=LA;ie.visitAfter=NA;ie.x=qA;ie.y=UA;function Xt(t){return function(){return t}}function Tn(t){return(t()-.5)*1e-6}function WA(t){return t.x+t.vx}function GA(t){return t.y+t.vy}function YA(t){var e,n,r,i=1,a=1;typeof t!="function"&&(t=Xt(t==null?1:+t));function o(){for(var l,f=e.length,c,d,h,g,p,m,y=0;y<a;++y)for(c=Sc(e,WA,GA).visitAfter(s),l=0;l<f;++l)d=e[l],p=n[d.index],m=p*p,h=d.x+d.vx,g=d.y+d.vy,c.visit(v);function v(b,x,E,A,w){var k=b.data,M=b.r,D=p+M;if(k){if(k.index>d.index){var S=h-k.x-k.vx,O=g-k.y-k.vy,z=S*S+O*O;
vendor: 34,302 bytes, line 5
5z<D*D&&(S===0&&(S=Tn(r),z+=S*S),O===0&&(O=Tn(r),z+=O*O),z=(D-(z=Math.sqrt(z)))/z*i,d.vx+=(S*=z)*(D=(M*=M)/(m+M)),d.vy+=(O*=z)*D,k.vx-=S*(D=1-D),k.vy-=O*D)}return}return x>h+D||A<h-D||E>g+D||w<g-D}}function s(l){if(l.data)return l.r=n[l.data.index];for(var f=l.r=0;f<4;++f)l[f]&&l[f].r>l.r&&(l.r=l[f].r)}function u(){if(e){var l,f=e.length,c;for(n=new Array(f),l=0;l<f;++l)c=e[l],n[c.index]=+t(c,l,e)}}return o.initialize=function(l,f){e=l,r=f,u()},o.iterations=function(l){return arguments.length?(a=+l,o):a},o.strength=function(l){return arguments.length?(i=+l,o):i},o.radius=function(l){return arguments.length?(t=typeof l=="function"?l:Xt(+l),u(),o):t},o}function HA(t){return t.index}function z0(t,e){var n=t.get(e);if(!n)throw new Error("node not found: "+e);return n}function VA(t){var e=HA,n=c,r,i=Xt(30),a,o,s,u,l,f=1;t==null&&(t=[]);function c(m){return 1/Math.min(s[m.source.index],s[m.target.index])}function d(m){for(var y=0,v=t.length;y<f;++y)for(var b=0,x,E,A,w,k,M,D;b<v;++b)x=t[b],E=x.source,A=x.target,w=A.x+A.vx-E.x-E.vx||Tn(l),k=A.y+A.vy-E.y-E.vy||Tn(l),M=Math.sqrt(w*w+k*k),M=(M-a[b])/M*m*r[b],w*=M,k*=M,A.vx-=w*(D=u[b]),A.vy-=k*D,E.vx+=w*(D=1-D),E.vy+=k*D}function h(){if(o){var m,y=o.length,v=t.length,b=new Map(o.map((E,A)=>[e(E,A,o),E])),x;for(m=0,s=new Array(y);m<v;++m)x=t[m],x.index=m,typeof x.source!="object"&&(x.source=z0(b,x.source)),typeof x.target!="object"&&(x.target=z0(b,x.target)),s[x.source.index]=(s[x.source.index]||0)+1,s[x.target.index]=(s[x.target.index]||0)+1;for(m=0,u=new Array(v);m<v;++m)x=t[m],u[m]=s[x.source.index]/(s[x.source.index]+s[x.target.index]);r=new Array(v),g(),a=new Array(v),p()}}function g(){if(o)for(var m=0,y=t.length;m<y;++m)r[m]=+n(t[m],m,t)}function p(){if(o)for(var m=0,y=t.length;m<y;++m)a[m]=+i(t[m],m,t)}return d.initialize=function(m,y){o=m,l=y,h()},d.links=function(m){return arguments.length?(t=m,h(),d):t},d.id=function(m){return arguments.length?(e=m,d):e},d.iterations=function(m){return arguments.length?(f=+m,d):f},d.strength=function(m){return arguments.length?(n=typeof m=="function"?m:Xt(+m),g(),d):n},d.distance=function(m){return arguments.length?(i=typeof m=="function"?m:Xt(+m),p(),d):i},d}const XA=1664525,KA=1013904223,B0=4294967296;function JA(){let t=1;return()=>(t=(XA*t+KA)%B0)/B0}function ZA(t){return t.x}function QA(t){return t.y}var t3=10,e3=Math.PI*(3-Math.sqrt(5));function n3(t){var e,n=1,r=.001,i=1-Math.pow(r,1/300),a=0,o=.6,s=new Map,u=eE(c),l=nE("tick","end"),f=JA();t==null&&(t=[]);function c(){d(),l.call("tick",e),n<r&&(u.stop(),l.call("end",e))}function d(p){var m,y=t.length,v;p===void 0&&(p=1);for(var b=0;b<p;++b)for(n+=(a-n)*i,s.forEach(function(x){x(n)}),m=0;m<y;++m)v=t[m],v.fx==null?v.x+=v.vx*=o:(v.x=v.fx,v.vx=0),v.fy==null?v.y+=v.vy*=o:(v.y=v.fy,v.vy=0);return e}function h(){for(var p=0,m=t.length,y;p<m;++p){if(y=t[p],y.index=p,y.fx!=null&&(y.x=y.fx),y.fy!=null&&(y.y=y.fy),isNaN(y.x)||isNaN(y.y)){var v=t3*Math.sqrt(.5+p),b=p*e3;y.x=v*Math.cos(b),y.y=v*Math.sin(b)}(isNaN(y.vx)||isNaN(y.vy))&&(y.vx=y.vy=0)}}function g(p){return p.initialize&&p.initialize(t,f),p}return h(),e={tick:d,restart:function(){return u.restart(c),e},stop:function(){return u.stop(),e},nodes:function(p){return arguments.length?(t=p,h(),s.forEach(g),e):t},alpha:function(p){return arguments.length?(n=+p,e):n},alphaMin:function(p){return arguments.length?(r=+p,e):r},alphaDecay:function(p){return arguments.length?(i=+p,e):+i},alphaTarget:function(p){return arguments.length?(a=+p,e):a},velocityDecay:function(p){return arguments.length?(o=1-p,e):1-o},randomSource:function(p){return arguments.length?(f=p,s.forEach(g),e):f},force:function(p,m){return arguments.length>1?(m==null?s.delete(p):s.set(p,g(m)),e):s.get(p)},find:function(p,m,y){var v=0,b=t.length,x,E,A,w,k;for(y==null?y=1/0:y*=y,v=0;v<b;++v)w=t[v],x=p-w.x,E=m-w.y,A=x*x+E*E,A<y&&(k=w,y=A);return k},on:function(p,m){return arguments.length>1?(l.on(p,m),e):l.on(p)}}}function r3(){var t,e,n,r,i=Xt(-30),a,o=1,s=1/0,u=.81;function l(h){var g,p=t.length,m=Sc(t,ZA,QA).visitAfter(c);for(r=h,g=0;g<p;++g)e=t[g],m.visit(d)}function f(){if(t){var h,g=t.length,p;for(a=new Array(g),h=0;h<g;++h)p=t[h],a[p.index]=+i(p,h,t)}}function c(h){var g=0,p,m,y=0,v,b,x;if(h.length){for(v=b=x=0;x<4;++x)(p=h[x])&&(m=Math.abs(p.value))&&(g+=p.value,y+=m,v+=m*p.x,b+=m*p.y);h.x=v/y,h.y=b/y}else{p=h,p.x=p.data.x,p.y=p.data.y;do g+=a[p.data.index];while(p=p.next)}h.value=g}function d(h,g,p,m){if(!h.value)return!0;var y=h.x-e.x,v=h.y-e.y,b=m-g,x=y*y+v*v;if(b*b/u<x)return x<s&&(y===0&&(y=Tn(n),x+=y*y),v===0&&(v=Tn(n),x+=v*v),x<o&&(x=Math.sqrt(o*x)),e.vx+=y*h.value*r/x,e.vy+=v*h.value*r/x),!0;if(h.length||x>=s)return;(h.data!==e||h.next)&&(y===0&&(y=Tn(n),x+=y*y),v===0&&(v=Tn(n),x+=v*v),x<o&&(x=Math.sqrt(o*x)));do h.data!==e&&(b=a[h.data.index]*r/x,e.vx+=y*b,e.vy+=v*b);while(h=h.next)}return l.initialize=function(h,g){t=h,n=g,f()},l.strength=function(h){return arguments.length?(i=typeof h=="function"?h:Xt(+h),f(),l):i},l.distanceMin=function(h){return arguments.length?(o=h*h,l):Math.sqrt(o)},l.distanceMax=function(h){return arguments.length?(s=h*h,l):Math.sqrt(s)},l.theta=function(h){return arguments.length?(u=h*h,l):Math.sqrt(u)},l}function i3(t){var e=Xt(.1),n,r,i;typeof t!="function"&&(t=Xt(t==null?0:+t));function a(s){for(var u=0,l=n.length,f;u<l;++u)f=n[u],f.vx+=(i[u]-f.x)*r[u]*s}function o(){if(n){var s,u=n.length;for(r=new Array(u),i=new Array(u),s=0;s<u;++s)r[s]=isNaN(i[s]=+t(n[s],s,n))?0:+e(n[s],s,n)}}return a.initialize=function(s){n=s,o()},a.strength=function(s){return arguments.length?(e=typeof s=="function"?s:Xt(+s),o(),a):e},a.x=function(s){return arguments.length?(t=typeof s=="function"?s:Xt(+s),o(),a):t},a}function a3(t){var e=Xt(.1),n,r,i;typeof t!="function"&&(t=Xt(t==null?0:+t));function a(s){for(var u=0,l=n.length,f;u<l;++u)f=n[u],f.vy+=(i[u]-f.y)*r[u]*s}function o(){if(n){var s,u=n.length;for(r=new Array(u),i=new Array(u),s=0;s<u;++s)r[s]=isNaN(i[s]=+t(n[s],s,n))?0:+e(n[s],s,n)}}return a.initialize=function(s){n=s,o()},a.strength=function(s){return arguments.length?(e=typeof s=="function"?s:Xt(+s),o(),a):e},a.y=function(s){return arguments.length?(t=typeof s=="function"?s:Xt(+s),o(),a):t},a}var W=1e-6,is=1e-12,tt=Math.PI,pt=tt/2,as=tt/4,ee=tt*2,mt=180/tt,Q=tt/180,et=Math.abs,ci=Math.atan,Se=Math.atan2,Y=Math.cos,uo=Math.ceil,tm=Math.exp,Kl=Math.hypot,os=Math.log,tl=Math.pow,q=Math.sin,Ae=Math.sign||function(t){return t>0?1:t<0?-1:0},ne=Math.sqrt,$c=Math.tan;function em(t){return t>1?0:t<-1?tt:Math.acos(t)}function le(t){return t>1?pt:t<-1?-pt:Math.asin(t)}function Ft(){}function ss(t,e){t&&P0.hasOwnProperty(t.type)&&P0[t.type](t,e)}var T0={Feature:function(t,e){ss(t.geometry,e)},FeatureCollection:function(t,e){for(var n=t.features,r=-1,i=n.length;++r<i;)ss(n[r].geometry,e)}},P0={Sphere:function(t,e){e.sphere()},Point:function(t,e){t=t.coordinates,e.point(t[0],t[1],t[2])},MultiPoint:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)t=n[r],e.point(t[0],t[1],t[2])},LineString:function(t,e){Jl(t.coordinates,e,0)},MultiLineString:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)Jl(n[r],e,0)},Polygon:function(t,e){L0(t.coordinates,e)},MultiPolygon:function(t,e){for(var n=t.coordinates,r=-1,i=n.length;++r<i;)L0(n[r],e)},GeometryCollection:function(t,e){for(var n=t.geometries,r=-1,i=n.length;++r<i;)ss(n[r],e)}};function Jl(t,e,n){var r=-1,i=t.length-n,a;for(e.lineStart();++r<i;)a=t[r],e.point(a[0],a[1],a[2]);e.lineEnd()}function L0(t,e){var n=-1,r=t.length;for(e.polygonStart();++n<r;)Jl(t[n],e,1);e.polygonEnd()}function xn(t,e){t&&T0.hasOwnProperty(t.type)?T0[t.type](t,e):ss(t,e)}var us=new Jt,ls=new Jt,nm,rm,Zl,Ql,tf,rn={point:Ft,lineStart:Ft,lineEnd:Ft,polygonStart:function(){us=new Jt,rn.lineStart=o3,rn.lineEnd=s3},polygonEnd:function(){var t=+us;ls.add(t<0?ee+t:t),this.lineStart=this.lineEnd=this.point=Ft},sphere:function(){ls.add(ee)}};function o3(){rn.point=u3}function s3(){im(nm,rm)}function u3(t,e){rn.point=im,nm=t,rm=e,t*=Q,e*=Q,Zl=t,Ql=Y(e=e/2+as),tf=q(e)}function im(t,e){t*=Q,e*=Q,e=e/2+as;var n=t-Zl,r=n>=0?1:-1,i=r*n,a=Y(e),o=q(e),s=tf*o,u=Ql*a+s*Y(i),l=s*r*q(i);us.add(Se(l,u)),Zl=t,Ql=a,tf=o}function l3(t){return ls=new Jt,xn(t,rn),ls*2}function fs(t){return[Se(t[1],t[0]),le(t[2])]}function wr(t){var e=t[0],n=t[1],r=Y(n);return[r*Y(e),r*q(e),q(n)]}function lo(t,e){return t[0]*e[0]+t[1]*e[1]+t[2]*e[2]}function ti(t,e){return[t[1]*e[2]-t[2]*e[1],t[2]*e[0]-t[0]*e[2],t[0]*e[1]-t[1]*e[0]]}function el(t,e){t[0]+=e[0],t[1]+=e[1],t[2]+=e[2]}function fo(t,e){return[t[0]*e,t[1]*e,t[2]*e]}function cs(t){var e=ne(t[0]*t[0]+t[1]*t[1]+t[2]*t[2]);t[0]/=e,t[1]/=e,t[2]/=e}var ht,se,gt,he,rr,am,om,Zr,ea,Rn,kn,vn={point:ef,lineStart:N0,lineEnd:I0,polygonStart:function(){vn.point=um,vn.lineStart=f3,vn.lineEnd=c3,ea=new Jt,rn.polygonStart()},polygonEnd:function(){rn.polygonEnd(),vn.point=ef,vn.lineStart=N0,vn.lineEnd=I0,us<0?(ht=-(gt=180),se=-(he=90)):ea>W?he=90:ea<-W&&(se=-90),kn[0]=ht,kn[1]=gt},sphere:function(){ht=-(gt=180),se=-(he=90)}};function ef(t,e){Rn.push(kn=[ht=t,gt=t]),e<se&&(se=e),e>he&&(he=e)}function sm(t,e){var n=wr([t*Q,e*Q]);if(Zr){var r=ti(Zr,n),i=[r[1],-r[0],0],a=ti(i,r);cs(a),a=fs(a);var o=t-rr,s=o>0?1:-1,u=a[0]*mt*s,l,f=et(o)>180;f^(s*rr<u&&u<s*t)?(l=a[1]*mt,l>he&&(he=l)):(u=(u+360)%360-180,f^(s*rr<u&&u<s*t)?(l=-a[1]*mt,l<se&&(se=l)):(e<se&&(se=e),e>he&&(he=e))),f?t<rr?de(ht,t)>de(ht,gt)&&(gt=t):de(t,gt)>de(ht,gt)&&(ht=t):gt>=ht?(t<ht&&(ht=t),t>gt&&(gt=t)):t>rr?de(ht,t)>de(ht,gt)&&(gt=t):de(t,gt)>de(ht,gt)&&(ht=t)}else Rn.push(kn=[ht=t,gt=t]);e<se&&(se=e),e>he&&(he=e),Zr=n,rr=t}function N0(){vn.point=sm}function I0(){kn[0]=ht,kn[1]=gt,vn.point=ef,Zr=null}function um(t,e){if(Zr){var n=t-rr;ea.add(et(n)>180?n+(n>0?360:-360):n)}else am=t,om=e;rn.point(t,e),sm(t,e)}function f3(){rn.lineStart()}function c3(){um(am,om),rn.lineEnd(),et(ea)>W&&(ht=-(gt=180)),kn[0]=ht,kn[1]=gt,Zr=null}function de(t,e){return(e-=t)<0?e+360:e}function d3(t,e){return t[0]-e[0]}function q0(t,e){return t[0]<=t[1]?t[0]<=e&&e<=t[1]:e<t[0]||t[1]<e}function h3(t){var e,n,r,i,a,o,s;if(he=gt=-(ht=se=1/0),Rn=[],xn(t,vn),n=Rn.length){for(Rn.sort(d3),e=1,r=Rn[0],a=[r];e<n;++e)i=Rn[e],q0(r,i[0])||q0(r,i[1])?(de(r[0],i[1])>de(r[0],r[1])&&(r[1]=i[1]),de(i[0],r[1])>de(r[0],r[1])&&(r[0]=i[0])):a.push(r=i);for(o=-1/0,n=a.length-1,e=0,r=a[n];e<=n;r=i,++e)i=a[e],(s=de(r[1],i[0]))>o&&(o=s,ht=i[0],gt=r[1])}return Rn=kn=null,ht===1/0||se===1/0?[[NaN,NaN],[NaN,NaN]]:[[ht,se],[gt,he]]}var zi,ds,hs,gs,ps,ms,ys,vs,nf,rf,af,lm,fm,Wt,Gt,Yt,Ie={sphere:Ft,point:_c,lineStart:j0,lineEnd:U0,polygonStart:function(){Ie.lineStart=m3,Ie.lineEnd=y3},polygonEnd:function(){Ie.lineStart=j0,Ie.lineEnd=U0}};function _c(t,e){t*=Q,e*=Q;var n=Y(e);Ba(n*Y(t),n*q(t),q(e))}function Ba(t,e,n){++zi,hs+=(t-hs)/zi,gs+=(e-gs)/zi,ps+=(n-ps)/zi}function j0(){Ie.point=g3}function g3(t,e){t*=Q,e*=Q;var n=Y(e);Wt=n*Y(t),Gt=n*q(t),Yt=q(e),Ie.point=p3,Ba(Wt,Gt,Yt)}function p3(t,e){t*=Q,e*=Q;var n=Y(e),r=n*Y(t),i=n*q(t),a=q(e),o=Se(ne((o=Gt*a-Yt*i)*o+(o=Yt*r-Wt*a)*o+(o=Wt*i-Gt*r)*o),Wt*r+Gt*i+Yt*a);ds+=o,ms+=o*(Wt+(Wt=r)),ys+=o*(Gt+(Gt=i)),vs+=o*(Yt+(Yt=a)),Ba(Wt,Gt,Yt)}function U0(){Ie.point=_c}function m3(){Ie.point=v3}function y3(){cm(lm,fm),Ie.point=_c}function v3(t,e){lm=t,fm=e,t*=Q,e*=Q,Ie.point=cm;var n=Y(e);Wt=n*Y(t),Gt=n*q(t),Yt=q(e),Ba(Wt,Gt,Yt)}function cm(t,e){t*=Q,e*=Q;var n=Y(e),r=n*Y(t),i=n*q(t),a=q(e),o=Gt*a-Yt*i,s=Yt*r-Wt*a,u=Wt*i-Gt*r,l=Kl(o,s,u),f=le(l),c=l&&-f/l;nf.add(c*o),rf.add(c*s),af.add(c*u),ds+=f,ms+=f*(Wt+(Wt=r)),ys+=f*(Gt+(Gt=i)),vs+=f*(Yt+(Yt=a)),Ba(Wt,Gt,Yt)}function b3(t){zi=ds=hs=gs=ps=ms=ys=vs=0,nf=new Jt,rf=new Jt,af=new Jt,xn(t,Ie);var e=+nf,n=+rf,r=+af,i=Kl(e,n,r);return i<is&&(e=ms,n=ys,r=vs,ds<W&&(e=hs,n=gs,r=ps),i=Kl(e,n,r),i<is)?[NaN,NaN]:[Se(n,e)*mt,le(r/i)*mt]}function of(t,e){function n(r,i){return r=t(r,i),e(r[0],r[1])}return t.invert&&e.invert&&(n.invert=function(r,i){return r=e.invert(r,i),r&&t.invert(r[0],r[1])}),n}function sf(t,e){return et(t)>tt&&(t-=Math.round(t/ee)*ee),[t,e]}sf.invert=sf;function dm(t,e,n){return(t%=ee)?e||n?of(G0(t),Y0(e,n)):G0(t):e||n?Y0(e,n):sf}function W0(t){return function(e,n){return e+=t,et(e)>tt&&(e-=Math.round(e/ee)*ee),[e,n]}}function G0(t){var e=W0(t);return e.invert=W0(-t),e}function Y0(t,e){var n=Y(t),r=q(t),i=Y(e),a=q(e);function o(s,u){var l=Y(u),f=Y(s)*l,c=q(s)*l,d=q(u),h=d*n+f*r;return[Se(c*i-h*a,f*n-d*r),le(h*i+c*a)]}return o.invert=function(s,u){var l=Y(u),f=Y(s)*l,c=q(s)*l,d=q(u),h=d*i-c*a;return[Se(c*i+d*a,f*n+h*r),le(h*n-f*r)]},o}function x3(t){t=dm(t[0]*Q,t[1]*Q,t.length>2?t[2]*Q:0);function e(n){return n=t(n[0]*Q,n[1]*Q),n[0]*=mt,n[1]*=mt,n}return e.invert=function(n){return n=t.invert(n[0]*Q,n[1]*Q),n[0]*=mt,n[1]*=mt,n},e}function w3(t,e,n,r,i,a){if(n){var o=Y(e),s=q(e),u=r*n;i==null?(i=e+r*ee,a=e-u/2):(i=H0(o,i),a=H0(o,a),(r>0?i<a:i>a)&&(i+=r*ee));for(var l,f=i;r>0?f>a:f<a;f-=u)l=fs([o,-s*Y(f),-s*q(f)]),t.point(l[0],l[1])}}function H0(t,e){e=wr(e),e[0]-=t,cs(e);var n=em(-e[1]);return((-e[2]<0?-n:n)+ee-W)%ee}function hm(){var t=[],e;return{point:function(n,r,i){e.push([n,r,i])},lineStart:function(){t.push(e=[])},lineEnd:Ft,rejoin:function(){t.length>1&&t.push(t.pop().concat(t.shift()))},result:function(){var n=t;return t=[],e=null,n}}}function zo(t,e){return et(t[0]-e[0])<W&&et(t[1]-e[1])<W}function co(t,e,n,r){this.x=t,this.z=e,this.o=n,this.e=r,this.v=!1,this.n=this.p=null}function gm(t,e,n,r,i){var a=[],o=[],s,u;if(t.forEach(function(g){if(!((p=g.length-1)<=0)){var p,m=g[0],y=g[p],v;if(zo(m,y)){if(!m[2]&&!y[2]){for(i.lineStart(),s=0;s<p;++s)i.point((m=g[s])[0],m[1]);i.lineEnd();return}y[0]+=2*W}a.push(v=new co(m,g,null,!0)),o.push(v.o=new co(m,null,v,!1)),a.push(v=new co(y,g,null,!1)),o.push(v.o=new co(y,null,v,!0))}}),!!a.length){for(o.sort(e),V0(a),V0(o),s=0,u=o.length;s<u;++s)o[s].e=n=!n;for(var l=a[0],f,c;;){for(var d=l,h=!0;d.v;)if((d=d.n)===l)return;f=d.z,i.lineStart();do{if(d.v=d.o.v=!0,d.e){if(h)for(s=0,u=f.length;s<u;++s)i.point((c=f[s])[0],c[1]);else r(d.x,d.n.x,1,i);d=d.n}else{if(h)for(f=d.p.z,s=f.length-1;s>=0;--s)i.point((c=f[s])[0],c[1]);else r(d.x,d.p.x,-1,i);d=d.p}d=d.o,f=d.z,h=!h}while(!d.v);i.lineEnd()}}}function V0(t){if(e=t.length){for(var e,n=0,r=t[0],i;++n<e;)r.n=i=t[n],i.p=r,r=i;r.n=i=t[0],i.p=r}}function nl(t){return et(t[0])<=tt?t[0]:Ae(t[0])*((et(t[0])+tt)%ee-tt)}function E3(t,e){var n=nl(e),r=e[1],i=q(r),a=[q(n),-Y(n),0],o=0,s=0,u=new Jt;i===1?r=pt+W:i===-1&&(r=-pt-W);for(var l=0,f=t.length;l<f;++l)if(d=(c=t[l]).length)for(var c,d,h=c[d-1],g=nl(h),p=h[1]/2+as,m=q(p),y=Y(p),v=0;v<d;++v,g=x,m=A,y=w,h=b){var b=c[v],x=nl(b),E=b[1]/2+as,A=q(E),w=Y(E),k=x-g,M=k>=0?1:-1,D=M*k,S=D>tt,O=m*A;if(u.add(Se(O*M*q(D),y*w+O*Y(D))),o+=S?k+M*ee:k,S^g>=n^x>=n){var z=ti(wr(h),wr(b));cs(z);var T=ti(a,z);cs(T);var C=(S^k>=0?-1:1)*le(T[2]);(r>C||r===C&&(z[0]||z[1]))&&(s+=S^k>=0?1:-1)}}return(o<-W||o<W&&u<-is)^s&1}function pm(t,e,n,r){return function(i){var a=e(i),o=hm(),s=e(o),u=!1,l,f,c,d={point:h,lineStart:p,lineEnd:m,polygonStart:function(){d.point=y,d.lineStart=v,d.lineEnd=b,f=[],l=[]},polygonEnd:function(){d.point=h,d.lineStart=p,d.lineEnd=m,f=K1(f);var x=E3(l,r);f.length?(u||(i.polygonStart(),u=!0),gm(f,k3,x,n,i)):x&&(u||(i.polygonStart(),u=!0),i.lineStart(),n(null,null,1,i),i.lineEnd()),u&&(i.polygonEnd(),u=!1),f=l=null},sphere:function(){i.polygonStart(),i.lineStart(),n(null,null,1,i),i.lineEnd(),i.polygonEnd()}};function h(x,E){t(x,E)&&i.point(x,E)}function g(x,E){a.point(x,E)}function p(){d.point=g,a.lineStart()}function m(){d.point=h,a.lineEnd()}function y(x,E){c.push([x,E]),s.point(x,E)}function v(){s.lineStart(),c=[]}function b(){y(c[0][0],c[0][1]),s.lineEnd();var x=s.clean(),E=o.result(),A,w=E.length,k,M,D;if(c.pop(),l.push(c),c=null,!!w){if(x&1){if(M=E[0],(k=M.length-1)>0){for(u||(i.polygonStart(),u=!0),i.lineStart(),A=0;A<k;++A)i.point((D=M[A])[0],D[1]);i.lineEnd()}return}w>1&&x&2&&E.push(E.pop().concat(E.shift())),f.push(E.filter(A3))}}return d}}function A3(t){return t.length>1}function k3(t,e){return((t=t.x)[0]<0?t[1]-pt-W:pt-t[1])-((e=e.x)[0]<0?e[1]-pt-W:pt-e[1])}const X0=pm(function(){return!0},M3,C3,[-tt,-pt]);function M3(t){var e=NaN,n=NaN,r=NaN,i;return{lineStart:function(){t.lineStart(),i=1},point:function(a,o){var s=a>0?tt:-tt,u=et(a-e);et(u-tt)<W?(t.point(e,n=(n+o)/2>0?pt:-pt),t.point(r,n),t.lineEnd(),t.lineStart(),t.point(s,n),t.point(a,n),i=0):r!==s&&u>=tt&&(et(e-r)<W&&(e-=r*W),et(a-s)<W&&(a-=s*W),n=D3(e,n,a,o),t.point(r,n),t.lineEnd(),t.lineStart(),t.point(s,n),i=0),t.point(e=a,n=o),r=s},lineEnd:function(){t.lineEnd(),e=n=NaN},clean:function(){return 2-i}}}function D3(t,e,n,r){var i,a,o=q(t-n);return et(o)>W?ci((q(e)*(a=Y(r))*q(n)-q(r)*(i=Y(e))*q(t))/(i*a*o)):(e+r)/2}function C3(t,e,n,r){var i;if(t==null)i=n*pt,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(et(t[0]-e[0])>W){var a=t[0]<e[0]?tt:-tt;i=n*a/2,r.point(-a,i),r.point(0,i),r.point(a,i)}else r.point(e[0],e[1])}function S3(t){var e=Y(t),n=2*Q,r=e>0,i=et(e)>W;function a(f,c,d,h){w3(h,t,n,d,f,c)}function o(f,c){return Y(f)*Y(c)>e}function s(f){var c,d,h,g,p;return{lineStart:function(){g=h=!1,p=1},point:function(m,y){var v=[m,y],b,x=o(m,y),E=r?x?0:l(m,y):x?l(m+(m<0?tt:-tt),y):0;if(!c&&(g=h=x)&&f.lineStart(),x!==h&&(b=u(c,v),(!b||zo(c,b)||zo(v,b))&&(v[2]=1)),x!==h)p=0,x?(f.lineStart(),b=u(v,c),f.point(b[0],b[1])):(b=u(c,v),f.point(b[0],b[1],2),f.lineEnd()),c=b;else if(i&&c&&r^x){var A;!(E&d)&&(A=u(v,c,!0))&&(p=0,r?(f.lineStart(),f.point(A[0][0],A[0][1]),f.point(A[1][0],A[1][1]),f.lineEnd()):(f.point(A[1][0],A[1][1]),f.lineEnd(),f.lineStart(),f.point(A[0][0],A[0][1],3)))}x&&(!c||!zo(c,v))&&f.point(v[0],v[1]),c=v,h=x,d=E},lineEnd:function(){h&&f.lineEnd(),c=null},clean:function(){return p|(g&&h)<<1}}}function u(f,c,d){var h=wr(f),g=wr(c),p=[1,0,0],m=ti(h,g),y=lo(m,m),v=m[0],b=y-v*v;if(!b)return!d&&f;var x=e*y/b,E=-e*v/b,A=ti(p,m),w=fo(p,x),k=fo(m,E);el(w,k);var M=A,D=lo(w,M),S=lo(M,M),O=D*D-S*(lo(w,w)-1);if(!(O<0)){var z=ne(O),T=fo(M,(-D-z)/S);if(el(T,w),T=fs(T),!d)return T;var C=f[0],R=c[0],N=f[1],X=c[1],V;R<C&&(V=C,C=R,R=V);var vt=R-C,Oe=et(vt-tt)<W,Qn=Oe||vt<W;if(!Oe&&X<N&&(V=N,N=X,X=V),Qn?Oe?N+X>0^T[1]<(et(T[0]-C)<W?N:X):N<=T[1]&&T[1]<=X:vt>tt^(C<=T[0]&&T[0]<=R)){var hn=fo(M,(-D+z)/S);return el(hn,w),[T,fs(hn)]}}}function l(f,c){var d=r?t:tt-t,h=0;return f<-d?h|=1:f>d&&(h|=2),c<-d?h|=4:c>d&&(h|=8),h}return pm(o,s,a,r?[0,-t]:[-tt,t-tt])}function F3(t,e,n,r,i,a){var o=t[0],s=t[1],u=e[0],l=e[1],f=0,c=1,d=u-o,h=l-s,g;if(g=n-o,!(!d&&g>0)){if(g/=d,d<0){if(g<f)return;g<c&&(c=g)}else if(d>0){if(g>c)return;g>f&&(f=g)}if(g=i-o,!(!d&&g<0)){if(g/=d,d<0){if(g>c)return;g>f&&(f=g)}else if(d>0){if(g<f)return;g<c&&(c=g)}if(g=r-s,!(!h&&g>0)){if(g/=h,h<0){if(g<f)return;g<c&&(c=g)}else if(h>0){if(g>c)return;g>f&&(f=g)}if(g=a-s,!(!h&&g<0)){if(g/=h,h<0){if(g>c)return;g>f&&(f=g)}else if(h>0){if(g<f)return;g<c&&(c=g)}return f>0&&(t[0]=o+f*d,t[1]=s+f*h),c<1&&(e[0]=o+c*d,e[1]=s+c*h),!0}}}}}var Bi=1e9,ho=-Bi;function mm(t,e,n,r){function i(l,f){return t<=l&&l<=n&&e<=f&&f<=r}function a(l,f,c,d){var h=0,g=0;if(l==null||(h=o(l,c))!==(g=o(f,c))||u(l,f)<0^c>0)do d.point(h===0||h===3?t:n,h>1?r:e);while((h=(h+c+4)%4)!==g);else d.point(f[0],f[1])}function o(l,f){return et(l[0]-t)<W?f>0?0:3:et(l[0]-n)<W?f>0?2:1:et(l[1]-e)<W?f>0?1:0:f>0?3:2}function s(l,f){return u(l.x,f.x)}function u(l,f){var c=o(l,1),d=o(f,1);return c!==d?c-d:c===0?f[1]-l[1]:c===1?l[0]-f[0]:c===2?l[1]-f[1]:f[0]-l[0]}return function(l){var f=l,c=hm(),d,h,g,p,m,y,v,b,x,E,A,w={point:k,lineStart:O,lineEnd:z,polygonStart:D,polygonEnd:S};function k(C,R){i(C,R)&&f.point(C,R)}function M(){for(var C=0,R=0,N=h.length;R<N;++R)for(var X=h[R],V=1,vt=X.length,Oe=X[0],Qn,hn,ao=Oe[0],Lr=Oe[1];V<vt;++V)Qn=ao,hn=Lr,Oe=X[V],ao=Oe[0],Lr=Oe[1],hn<=r?Lr>r&&(ao-Qn)*(r-hn)>(Lr-hn)*(t-Qn)&&++C:Lr<=r&&(ao-Qn)*(r-hn)<(Lr-hn)*(t-Qn)&&--C;return C}function D(){f=c,d=[],h=[],A=!0}function S(){var C=M(),R=A&&C,N=(d=K1(d)).length;(R||N)&&(l.polygonStart(),R&&(l.lineStart(),a(null,null,1,l),l.lineEnd()),N&&gm(d,s,C,a,l),l.polygonEnd()),f=l,d=h=g=null}function O(){w.point=T,h&&h.push(g=[]),E=!0,x=!1,v=b=NaN}function z(){d&&(T(p,m),y&&x&&c.rejoin(),d.push(c.result())),w.point=k,x&&f.lineEnd()}function T(C,R){var N=i(C,R);if(h&&g.push([C,R]),E)p=C,m=R,y=N,E=!1,N&&(f.lineStart(),f.point(C,R));else if(N&&x)f.point(C,R);else{var X=[v=Math.max(ho,Math.min(Bi,v)),b=Math.max(ho,Math.min(Bi,b))],V=[C=Math.max(ho,Math.min(Bi,C)),R=Math.max(ho,Math.min(Bi,R))];F3(X,V,t,e,n,r)?(x||(f.lineStart(),f.point(X[0],X[1])),f.point(V[0],V[1]),N||f.lineEnd(),A=!1):N&&(f.lineStart(),f.point(C,R),A=!1)}v=C,b=R,x=N}return w}}function K0(t,e,n){var r=ge(t,e-W,n).concat(e);return function(i){return r.map(function(a){return[i,a]})}}function J0(t,e,n){var r=ge(t,e-W,n).concat(e);return function(i){return r.map(function(a){return[a,i]})}}function $3(){var t,e,n,r,i,a,o,s,u=10,l=u,f=90,c=360,d,h,g,p,m=2.5;function y(){return{type:"MultiLineString",coordinates:v()}}function v(){return ge(uo(r/f)*f,n,f).map(g).concat(ge(uo(s/c)*c,o,c).map(p)).concat(ge(uo(e/u)*u,t,u).filter(function(b){return et(b%f)>W}).map(d)).concat(ge(uo(a/l)*l,i,l).filter(function(b){return et(b%c)>W}).map(h))}return y.lines=function(){return v().map(function(b){return{type:"LineString",coordinates:b}})},y.outline=function(){return{type:"Polygon",coordinates:[g(r).concat(p(o).slice(1),g(n).reverse().slice(1),p(s).reverse().slice(1))]}},y.extent=function(b){return arguments.length?y.extentMajor(b).extentMinor(b):y.extentMinor()},y.extentMajor=function(b){return arguments.length?(r=+b[0][0],n=+b[1][0],s=+b[0][1],o=+b[1][1],r>n&&(b=r,r=n,n=b),s>o&&(b=s,s=o,o=b),y.precision(m)):[[r,s],[n,o]]},y.extentMinor=function(b){return arguments.length?(e=+b[0][0],t=+b[1][0],a=+b[0][1],i=+b[1][1],e>t&&(b=e,e=t,t=b),a>i&&(b=a,a=i,i=b),y.precision(m)):[[e,a],[t,i]]},y.step=function(b){return arguments.length?y.stepMajor(b).stepMinor(b):y.stepMinor()},y.stepMajor=function(b){return arguments.length?(f=+b[0],c=+b[1],y):[f,c]},y.stepMinor=function(b){return arguments.length?(u=+b[0],l=+b[1],y):[u,l]},y.precision=function(b){return arguments.length?(m=+b,d=K0(a,i,90),h=J0(e,t,m),g=K0(s,o,90),p=J0(r,n,m),y):m},y.extentMajor([[-180,-90+W],[180,90-W]]).extentMinor([[-180,-80-W],[180,80+W]])}const ma=t=>t;var rl=new Jt,uf=new Jt,ym,vm,lf,ff,wn={point:Ft,lineStart:Ft,lineEnd:Ft,polygonStart:function(){wn.lineStart=_3,wn.lineEnd=O3},polygonEnd:function(){wn.lineStart=wn.lineEnd=wn.point=Ft,rl.add(et(uf)),uf=new Jt},result:function(){var t=rl/2;return rl=new Jt,t}};function _3(){wn.point=R3}function R3(t,e){wn.point=bm,ym=lf=t,vm=ff=e}function bm(t,e){uf.add(ff*t-lf*e),lf=t,ff=e}function O3(){bm(ym,vm)}var ei=1/0,bs=ei,ya=-ei,xs=ya,ws={point:z3,lineStart:Ft,lineEnd:Ft,polygonStart:Ft,polygonEnd:Ft,result:function(){var t=[[ei,bs],[ya,xs]];return ya=xs=-(bs=ei=1/0),t}};function z3(t,e){t<ei&&(ei=t),t>ya&&(ya=t),e<bs&&(bs=e),e>xs&&(xs=e)}var cf=0,df=0,Ti=0,Es=0,As=0,Xr=0,hf=0,gf=0,Pi=0,xm,wm,Qe,tn,we={point:Er,lineStart:Z0,lineEnd:Q0,polygonStart:function(){we.lineStart=P3,we.lineEnd=L3},polygonEnd:function(){we.point=Er,we.lineStart=Z0,we.lineEnd=Q0},result:function(){var t=Pi?[hf/Pi,gf/Pi]:Xr?[Es/Xr,As/Xr]:Ti?[cf/Ti,df/Ti]:[NaN,NaN];return cf=df=Ti=Es=As=Xr=hf=gf=Pi=0,t}};function Er(t,e){cf+=t,df+=e,++Ti}function Z0(){we.point=B3}function B3(t,e){we.point=T3,Er(Qe=t,tn=e)}function T3(t,e){var n=t-Qe,r=e-tn,i=ne(n*n+r*r);Es+=i*(Qe+t)/2,As+=i*(tn+e)/2,Xr+=i,Er(Qe=t,tn=e)}function Q0(){we.point=Er}function P3(){we.point=N3}function L3(){Em(xm,wm)}function N3(t,e){we.point=Em,Er(xm=Qe=t,wm=tn=e)}function Em(t,e){var n=t-Qe,r=e-tn,i=ne(n*n+r*r);Es+=i*(Qe+t)/2,As+=i*(tn+e)/2,Xr+=i,i=tn*t-Qe*e,hf+=i*(Qe+t),gf+=i*(tn+e),Pi+=i*3,Er(Qe=t,tn=e)}function Am(t){this._context=t}Am.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,e){switch(this._point){case 0:{this._context.moveTo(t,e),this._point=1;break}case 1:{this._context.lineTo(t,e);break}default:{this._context.moveTo(t+this._radius,e),this._context.arc(t,e,this._radius,0,ee);break}}},result:Ft};var pf=new Jt,il,km,Mm,Li,Ni,va={point:Ft,lineStart:function(){va.point=I3},lineEnd:function(){il&&Dm(km,Mm),va.point=Ft},polygonStart:function(){il=!0},polygonEnd:function(){il=null},result:function(){var t=+pf;return pf=new Jt,t}};function I3(t,e){va.point=Dm,km=Li=t,Mm=Ni=e}function Dm(t,e){Li-=t,Ni-=e,pf.add(ne(Li*Li+Ni*Ni)),Li=t,Ni=e}let tg,ks,eg,ng;class rg{constructor(e){this._append=e==null?Cm:q3(e),this._radius=4.5,this._=""}pointRadius(e){return this._radius=+e,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(e,n){switch(this._point){case 0:{this._append`M${e},${n}`,this._point=1;break}case 1:{this._append`L${e},${n}`;break}default:{if(this._append`M${e},${n}`,this._radius!==eg||this._append!==ks){const 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`,eg=r,ks=this._append,ng=this._,this._=i}this._+=ng;break}}}result(){const e=this._;return this._="",e.length?e:null}}function Cm(t){let e=1;this._+=t[0];for(const n=t.length;e<n;++e)this._+=arguments[e]+t[e]}function q3(t){const e=Math.floor(t);if(!(e>=0))throw new RangeError(`invalid digits: ${t}`);if(e>15)return Cm;if(e!==tg){const n=10**e;tg=e,ks=function(i){let a=1;this._+=i[0];for(const o=i.length;a<o;++a)this._+=Math.round(arguments[a]*n)/n+i[a]}}return ks}function Sm(t,e){let n=3,r=4.5,i,a;function o(s){return s&&(typeof r=="function"&&a.pointRadius(+r.apply(this,arguments)),xn(s,i(a))),a.result()}return o.area=function(s){return xn(s,i(wn)),wn.result()},o.measure=function(s){return xn(s,i(va)),va.result()},o.bounds=function(s){return xn(s,i(ws)),ws.result()},o.centroid=function(s){return xn(s,i(we)),we.result()},o.projection=function(s){return arguments.length?(i=s==null?(t=null,ma):(t=s).stream,o):t},o.context=function(s){return arguments.length?(a=s==null?(e=null,new rg(n)):new Am(e=s),typeof r!="function"&&a.pointRadius(r),o):e},o.pointRadius=function(s){return arguments.length?(r=typeof s=="function"?s:(a.pointRadius(+s),+s),o):r},o.digits=function(s){if(!arguments.length)return n;if(s==null)n=null;else{const u=Math.floor(s);if(!(u>=0))throw new RangeError(`invalid digits: ${s}`);n=u}return e===null&&(a=new rg(n)),o},o.projection(t).digits(n).context(e)}function ru(t){return function(e){var n=new mf;for(var r in t)n[r]=t[r];return n.stream=e,n}}function mf(){}mf.prototype={constructor:mf,point:function(t,e){this.stream.point(t,e)},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 Rc(t,e,n){var r=t.clipExtent&&t.clipExtent();return t.scale(150).translate([0,0]),r!=null&&t.clipExtent(null),xn(n,t.stream(ws)),e(ws.result()),r!=null&&t.clipExtent(r),t}function iu(t,e,n){return Rc(t,function(r){var i=e[1][0]-e[0][0],a=e[1][1]-e[0][1],o=Math.min(i/(r[1][0]-r[0][0]),a/(r[1][1]-r[0][1])),s=+e[0][0]+(i-o*(r[1][0]+r[0][0]))/2,u=+e[0][1]+(a-o*(r[1][1]+r[0][1]))/2;t.scale(150*o).translate([s,u])},n)}function Oc(t,e,n){return iu(t,[[0,0],e],n)}function zc(t,e,n){return Rc(t,function(r){var i=+e,a=i/(r[1][0]-r[0][0]),o=(i-a*(r[1][0]+r[0][0]))/2,s=-a*r[0][1];t.scale(150*a).translate([o,s])},n)}function Bc(t,e,n){return Rc(t,function(r){var i=+e,a=i/(r[1][1]-r[0][1]),o=-a*r[0][0],s=(i-a*(r[1][1]+r[0][1]))/2;t.scale(150*a).translate([o,s])},n)}var ig=16,j3=Y(30*Q);function ag(t,e){return+e?W3(t,e):U3(t)}function U3(t){return ru({point:function(e,n){e=t(e,n),this.stream.point(e[0],e[1])}})}function W3(t,e){function n(r,i,a,o,s,u,l,f,c,d,h,g,p,m){var y=l-r,v=f-i,b=y*y+v*v;if(b>4*e&&p--){var x=o+d,E=s+h,A=u+g,w=ne(x*x+E*E+A*A),k=le(A/=w),M=et(et(A)-1)<W||et(a-c)<W?(a+c)/2:Se(E,x),D=t(M,k),S=D[0],O=D[1],z=S-r,T=O-i,C=v*z-y*T;(C*C/b>e||et((y*z+v*T)/b-.5)>.3||o*d+s*h+u*g<j3)&&(n(r,i,a,o,s,u,S,O,M,x/=w,E/=w,A,p,m),m.point(S,O),n(S,O,M,x,E,A,l,f,c,d,h,g,p,m))}}return function(r){var i,a,o,s,u,l,f,c,d,h,g,p,m={point:y,lineStart:v,lineEnd:x,polygonStart:function(){r.polygonStart(),m.lineStart=E},polygonEnd:function(){r.polygonEnd(),m.lineStart=v}};function y(k,M){k=t(k,M),r.point(k[0],k[1])}function v(){c=NaN,m.point=b,r.lineStart()}function b(k,M){var D=wr([k,M]),S=t(k,M);n(c,d,f,h,g,p,c=S[0],d=S[1],f=k,h=D[0],g=D[1],p=D[2],ig,r),r.point(c,d)}function x(){m.point=y,r.lineEnd()}function E(){v(),m.point=A,m.lineEnd=w}function A(k,M){b(i=k,M),a=c,o=d,s=h,u=g,l=p,m.point=b}function w(){n(c,d,f,h,g,p,a,o,i,s,u,l,ig,r),m.lineEnd=x,x()}return m}}var G3=ru({point:function(t,e){this.stream.point(t*Q,e*Q)}});function Y3(t){return ru({point:function(e,n){var r=t(e,n);return this.stream.point(r[0],r[1])}})}function H3(t,e,n,r,i){function a(o,s){return o*=r,s*=i,[e+t*o,n-t*s]}return a.invert=function(o,s){return[(o-e)/t*r,(n-s)/t*i]},a}function og(t,e,n,r,i,a){if(!a)return H3(t,e,n,r,i);var o=Y(a),s=q(a),u=o*t,l=s*t,f=o/t,c=s/t,d=(s*n-o*e)/t,h=(s*e+o*n)/t;function g(p,m){return p*=r,m*=i,[u*p-l*m+e,n-l*p-u*m]}return g.invert=function(p,m){return[r*(f*p-c*m+d),i*(h-c*p-f*m)]},g}function fn(t){return Fm(function(){return t})()}function Fm(t){var e,n=150,r=480,i=250,a=0,o=0,s=0,u=0,l=0,f,c=0,d=1,h=1,g=null,p=X0,m=null,y,v,b,x=ma,E=.5,A,w,k,M,D;function S(C){return k(C[0]*Q,C[1]*Q)}function O(C){return C=k.invert(C[0],C[1]),C&&[C[0]*mt,C[1]*mt]}S.stream=function(C){return M&&D===C?M:M=G3(Y3(f)(p(A(x(D=C)))))},S.preclip=function(C){return arguments.length?(p=C,g=void 0,T()):p},S.postclip=function(C){return arguments.length?(x=C,m=y=v=b=null,T()):x},S.clipAngle=function(C){return arguments.length?(p=+C?S3(g=C*Q):(g=null,X0),T()):g*mt},S.clipExtent=function(C){return arguments.length?(x=C==null?(m=y=v=b=null,ma):mm(m=+C[0][0],y=+C[0][1],v=+C[1][0],b=+C[1][1]),T()):m==null?null:[[m,y],[v,b]]},S.scale=function(C){return arguments.length?(n=+C,z()):n},S.translate=function(C){return arguments.length?(r=+C[0],i=+C[1],z()):[r,i]},S.center=function(C){return arguments.length?(a=C[0]%360*Q,o=C[1]%360*Q,z()):[a*mt,o*mt]},S.rotate=function(C){return arguments.length?(s=C[0]%360*Q,u=C[1]%360*Q,l=C.length>2?C[2]%360*Q:0,z()):[s*mt,u*mt,l*mt]},S.angle=function(C){return arguments.length?(c=C%360*Q,z()):c*mt},S.reflectX=function(C){return arguments.length?(d=C?-1:1,z()):d<0},S.reflectY=function(C){return arguments.length?(h=C?-1:1,z()):h<0},S.precision=function(C){return arguments.length?(A=ag(w,E=C*C),T()):ne(E)},S.fitExtent=function(C,R){return iu(S,C,R)},S.fitSize=function(C,R){return Oc(S,C,R)},S.fitWidth=function(C,R){return zc(S,C,R)},S.fitHeight=function(C,R){return Bc(S,C,R)};function z(){var C=og(n,0,0,d,h,c).apply(null,e(a,o)),R=og(n,r-C[0],i-C[1],d,h,c);return f=dm(s,u,l),w=of(e,R),k=of(f,w),A=ag(w,E),T()}function T(){return M=D=null,S}return function(){return e=t.apply(this,arguments),S.invert=e.invert&&O,z()}}function Tc(t){var e=0,n=tt/3,r=Fm(t),i=r(e,n);return i.parallels=function(a){return arguments.length?r(e=a[0]*Q,n=a[1]*Q):[e*mt,n*mt]},i}function V3(t){var e=Y(t);function n(r,i){return[r*e,q(i)/e]}return n.invert=function(r,i){return[r/e,le(i*e)]},n}function X3(t,e){var n=q(t),r=(n+q(e))/2;if(et(r)<W)return V3(t);var i=1+n*(2*r-n),a=ne(i)/r;function o(s,u){var l=ne(i-2*r*q(u))/r;return[l*q(s*=r),a-l*Y(s)]}return o.invert=function(s,u){var l=a-u,f=Se(s,et(l))*Ae(l);return l*r<0&&(f-=tt*Ae(s)*Ae(l)),[f/r,le((i-(s*s+l*l)*r*r)/(2*r))]},o}function Ms(){return Tc(X3).scale(155.424).center([0,33.6442])}function $m(){return Ms().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function K3(t){var e=t.length;return{point:function(n,r){for(var i=-1;++i<e;)t[i].point(n,r)},sphere:function(){for(var n=-1;++n<e;)t[n].sphere()},lineStart:function(){for(var n=-1;++n<e;)t[n].lineStart()},lineEnd:function(){for(var n=-1;++n<e;)t[n].lineEnd()},polygonStart:function(){for(var n=-1;++n<e;)t[n].polygonStart()},polygonEnd:function(){for(var n=-1;++n<e;)t[n].polygonEnd()}}}function J3(){var t,e,n=$m(),r,i=Ms().rotate([154,0]).center([-2,58.5]).parallels([55,65]),a,o=Ms().rotate([157,0]).center([-3,19.9]).parallels([8,18]),s,u,l={point:function(d,h){u=[d,h]}};function f(d){var h=d[0],g=d[1];return u=null,r.point(h,g),u||(a.point(h,g),u)||(s.point(h,g),u)}f.invert=function(d){var h=n.scale(),g=n.translate(),p=(d[0]-g[0])/h,m=(d[1]-g[1])/h;return(m>=.12&&m<.234&&p>=-.425&&p<-.214?i:m>=.166&&m<.234&&p>=-.214&&p<-.115?o:n).invert(d)},f.stream=function(d){return t&&e===d?t:t=K3([n.stream(e=d),i.stream(d),o.stream(d)])},f.precision=function(d){return arguments.length?(n.precision(d),i.precision(d),o.precision(d),c()):n.precision()},f.scale=function(d){return arguments.length?(n.scale(d),i.scale(d*.35),o.scale(d),f.translate(n.translate())):n.scale()},f.translate=function(d){if(!arguments.length)return n.translate();var h=n.scale(),g=+d[0],p=+d[1];return r=n.translate(d).clipExtent([[g-.455*h,p-.238*h],[g+.455*h,p+.238*h]]).stream(l),a=i.translate([g-.307*h,p+.201*h]).clipExtent([[g-.425*h+W,p+.12*h+W],[g-.214*h-W,p+.234*h-W]]).stream(l),s=o.translate([g-.205*h,p+.212*h]).clipExtent([[g-.214*h+W,p+.166*h+W],[g-.115*h-W,p+.234*h-W]]).stream(l),c()},f.fitExtent=function(d,h){return iu(f,d,h)},f.fitSize=function(d,h){return Oc(f,d,h)},f.fitWidth=function(d,h){return zc(f,d,h)},f.fitHeight=function(d,h){return Bc(f,d,h)};function c(){return t=e=null,f}return f.scale(1070)}function _m(t){return function(e,n){var r=Y(e),i=Y(n),a=t(r*i);return a===1/0?[2,0]:[a*i*q(e),a*q(n)]}}function Ta(t){return function(e,n){var r=ne(e*e+n*n),i=t(r),a=q(i),o=Y(i);return[Se(e*a,r*o),le(r&&n*a/r)]}}var Rm=_m(function(t){return ne(2/(1+t))});Rm.invert=Ta(function(t){return 2*le(t/2)});function Z3(){return fn(Rm).scale(124.75).clipAngle(180-.001)}var Om=_m(function(t){return(t=em(t))&&t/q(t)});Om.invert=Ta(function(t){return t});function Q3(){return fn(Om).scale(79.4188).clipAngle(180-.001)}function au(t,e){return[t,os($c((pt+e)/2))]}au.invert=function(t,e){return[t,2*ci(tm(e))-pt]};function tk(){return zm(au).scale(961/ee)}
vendor: 1,180 bytes, line 5
5function zm(t){var e=fn(t),n=e.center,r=e.scale,i=e.translate,a=e.clipExtent,o=null,s,u,l;e.scale=function(c){return arguments.length?(r(c),f()):r()},e.translate=function(c){return arguments.length?(i(c),f()):i()},e.center=function(c){return arguments.length?(n(c),f()):n()},e.clipExtent=function(c){return arguments.length?(c==null?o=s=u=l=null:(o=+c[0][0],s=+c[0][1],u=+c[1][0],l=+c[1][1]),f()):o==null?null:[[o,s],[u,l]]};function f(){var c=tt*r(),d=e(x3(e.rotate()).invert([0,0]));return a(o==null?[[d[0]-c,d[1]-c],[d[0]+c,d[1]+c]]:t===au?[[Math.max(d[0]-c,o),s],[Math.min(d[0]+c,u),l]]:[[o,Math.max(d[1]-c,s)],[u,Math.min(d[1]+c,l)]])}return f()}function go(t){return $c((pt+t)/2)}function ek(t,e){var n=Y(t),r=t===e?q(t):os(n/Y(e))/os(go(e)/go(t)),i=n*tl(go(t),r)/r;if(!r)return au;function a(o,s){i>0?s<-pt+W&&(s=-pt+W):s>pt-W&&(s=pt-W);var u=i/tl(go(s),r);return[u*q(r*o),i-u*Y(r*o)]}return a.invert=function(o,s){var u=i-s,l=Ae(r)*ne(o*o+u*u),f=Se(o,et(u))*Ae(u);return u*r<0&&(f-=tt*Ae(o)*Ae(u)),[f/r,2*ci(tl(i/l,1/r))-pt]},a}function nk(){return Tc(ek).scale(109.5).parallels([30,30])}function Ds(t,e){return[t,e]}Ds.invert=Ds;function rk(){return fn(Ds).scale(152.63)}
vendor: 121,362 bytes, lines 5-6
5function ik(t,e){var n=Y(t),r=t===e?q(t):(n-Y(e))/(e-t),i=n/r+t;if(et(r)<W)return Ds;function a(o,s){var u=i-s,l=r*o;return[u*q(l),i-u*Y(l)]}return a.invert=function(o,s){var u=i-s,l=Se(o,et(u))*Ae(u);return u*r<0&&(l-=tt*Ae(o)*Ae(u)),[l/r,i-Ae(r)*ne(o*o+u*u)]},a}function ak(){return Tc(ik).scale(131.154).center([0,13.9389])}var na=1.340264,ra=-.081106,ia=893e-6,aa=.003796,Cs=ne(3)/2,ok=12;function Bm(t,e){var n=le(Cs*q(e)),r=n*n,i=r*r*r;return[t*Y(n)/(Cs*(na+3*ra*r+i*(7*ia+9*aa*r))),n*(na+ra*r+i*(ia+aa*r))]}Bm.invert=function(t,e){for(var n=e,r=n*n,i=r*r*r,a=0,o,s,u;a<ok&&(s=n*(na+ra*r+i*(ia+aa*r))-e,u=na+3*ra*r+i*(7*ia+9*aa*r),n-=o=s/u,r=n*n,i=r*r*r,!(et(o)<is));++a);return[Cs*t*(na+3*ra*r+i*(7*ia+9*aa*r))/Y(n),le(q(n)/Cs)]};function sk(){return fn(Bm).scale(177.158)}function Tm(t,e){var n=Y(e),r=Y(t)*n;return[n*q(t)/r,q(e)/r]}Tm.invert=Ta(ci);function uk(){return fn(Tm).scale(144.049).clipAngle(60)}function lk(){var t=1,e=0,n=0,r=1,i=1,a=0,o,s,u=null,l,f,c,d=1,h=1,g=ru({point:function(x,E){var A=b([x,E]);this.stream.point(A[0],A[1])}}),p=ma,m,y;function v(){return d=t*r,h=t*i,m=y=null,b}function b(x){var E=x[0]*d,A=x[1]*h;if(a){var w=A*o-E*s;E=E*o+A*s,A=w}return[E+e,A+n]}return b.invert=function(x){var E=x[0]-e,A=x[1]-n;if(a){var w=A*o+E*s;E=E*o-A*s,A=w}return[E/d,A/h]},b.stream=function(x){return m&&y===x?m:m=g(p(y=x))},b.postclip=function(x){return arguments.length?(p=x,u=l=f=c=null,v()):p},b.clipExtent=function(x){return arguments.length?(p=x==null?(u=l=f=c=null,ma):mm(u=+x[0][0],l=+x[0][1],f=+x[1][0],c=+x[1][1]),v()):u==null?null:[[u,l],[f,c]]},b.scale=function(x){return arguments.length?(t=+x,v()):t},b.translate=function(x){return arguments.length?(e=+x[0],n=+x[1],v()):[e,n]},b.angle=function(x){return arguments.length?(a=x%360*Q,s=q(a),o=Y(a),v()):a*mt},b.reflectX=function(x){return arguments.length?(r=x?-1:1,v()):r<0},b.reflectY=function(x){return arguments.length?(i=x?-1:1,v()):i<0},b.fitExtent=function(x,E){return iu(b,x,E)},b.fitSize=function(x,E){return Oc(b,x,E)},b.fitWidth=function(x,E){return zc(b,x,E)},b.fitHeight=function(x,E){return Bc(b,x,E)},b}function Pm(t,e){var n=e*e,r=n*n;return[t*(.8707-.131979*n+r*(-.013791+r*(.003971*n-.001529*r))),e*(1.007226+n*(.015085+r*(-.044475+.028874*n-.005916*r)))]}Pm.invert=function(t,e){var n=e,r=25,i;do{var a=n*n,o=a*a;n-=i=(n*(1.007226+a*(.015085+o*(-.044475+.028874*a-.005916*o)))-e)/(1.007226+a*(.015085*3+o*(-.044475*7+.028874*9*a-.005916*11*o)))}while(et(i)>W&&--r>0);return[t/(.8707+(a=n*n)*(-.131979+a*(-.013791+a*a*a*(.003971-.001529*a)))),n]};function fk(){return fn(Pm).scale(175.295)}function Lm(t,e){return[Y(e)*q(t),q(e)]}Lm.invert=Ta(le);function ck(){return fn(Lm).scale(249.5).clipAngle(90+W)}function Nm(t,e){var n=Y(e),r=1+Y(t)*n;return[n*q(t)/r,q(e)/r]}Nm.invert=Ta(function(t){return 2*ci(t)});function dk(){return fn(Nm).scale(250).clipAngle(142)}function Im(t,e){return[os($c((pt+e)/2)),-t]}Im.invert=function(t,e){return[-e,2*ci(tm(t))-pt]};function hk(){var t=zm(Im),e=t.center,n=t.rotate;return t.center=function(r){return arguments.length?e([-r[1],r[0]]):(r=e(),[r[1],-r[0]])},t.rotate=function(r){return arguments.length?n([r[0],r[1],r.length>2?r[2]+90:90]):(r=n(),[r[0],r[1],r[2]-90])},n([0,0,90]).scale(159.155)}function gk(t,e){return t.parent===e.parent?1:2}function pk(t){return t.reduce(mk,0)/t.length}function mk(t,e){return t+e.x}function yk(t){return 1+t.reduce(vk,0)}function vk(t,e){return Math.max(t,e.y)}function bk(t){for(var e;e=t.children;)t=e[0];return t}function xk(t){for(var e;e=t.children;)t=e[e.length-1];return t}function wk(){var t=gk,e=1,n=1,r=!1;function i(a){var o,s=0;a.eachAfter(function(d){var h=d.children;h?(d.x=pk(h),d.y=yk(h)):(d.x=o?s+=t(d,o):0,d.y=0,o=d)});var u=bk(a),l=xk(a),f=u.x-t(u,l)/2,c=l.x+t(l,u)/2;return a.eachAfter(r?function(d){d.x=(d.x-a.x)*e,d.y=(a.y-d.y)*n}:function(d){d.x=(d.x-f)/(c-f)*e,d.y=(1-(a.y?d.y/a.y:1))*n})}return i.separation=function(a){return arguments.length?(t=a,i):t},i.size=function(a){return arguments.length?(r=!1,e=+a[0],n=+a[1],i):r?null:[e,n]},i.nodeSize=function(a){return arguments.length?(r=!0,e=+a[0],n=+a[1],i):r?[e,n]:null},i}const Ek=1664525,Ak=1013904223,sg=4294967296;function kk(){let t=1;return()=>(t=(Ek*t+Ak)%sg)/sg}function Mk(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Dk(t,e){let n=t.length,r,i;for(;n;)i=e()*n--|0,r=t[n],t[n]=t[i],t[i]=r;return t}function Ck(t,e){for(var n=0,r=(t=Dk(Array.from(t),e)).length,i=[],a,o;n<r;)a=t[n],o&&qm(o,a)?++n:(o=Fk(i=Sk(i,a)),n=0);return o}function Sk(t,e){var n,r;if(al(e,t))return[e];for(n=0;n<t.length;++n)if(po(e,t[n])&&al(Ii(t[n],e),t))return[t[n],e];for(n=0;n<t.length-1;++n)for(r=n+1;r<t.length;++r)if(po(Ii(t[n],t[r]),e)&&po(Ii(t[n],e),t[r])&&po(Ii(t[r],e),t[n])&&al(jm(t[n],t[r],e),t))return[t[n],t[r],e];throw new Error}function po(t,e){var n=t.r-e.r,r=e.x-t.x,i=e.y-t.y;return n<0||n*n<r*r+i*i}function qm(t,e){var n=t.r-e.r+Math.max(t.r,e.r,1)*1e-9,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function al(t,e){for(var n=0;n<e.length;++n)if(!qm(t,e[n]))return!1;return!0}function Fk(t){switch(t.length){case 1:return $k(t[0]);case 2:return Ii(t[0],t[1]);case 3:return jm(t[0],t[1],t[2])}}function $k(t){return{x:t.x,y:t.y,r:t.r}}function Ii(t,e){var n=t.x,r=t.y,i=t.r,a=e.x,o=e.y,s=e.r,u=a-n,l=o-r,f=s-i,c=Math.sqrt(u*u+l*l);return{x:(n+a+u/c*f)/2,y:(r+o+l/c*f)/2,r:(c+i+s)/2}}function jm(t,e,n){var r=t.x,i=t.y,a=t.r,o=e.x,s=e.y,u=e.r,l=n.x,f=n.y,c=n.r,d=r-o,h=r-l,g=i-s,p=i-f,m=u-a,y=c-a,v=r*r+i*i-a*a,b=v-o*o-s*s+u*u,x=v-l*l-f*f+c*c,E=h*g-d*p,A=(g*x-p*b)/(E*2)-r,w=(p*m-g*y)/E,k=(h*b-d*x)/(E*2)-i,M=(d*y-h*m)/E,D=w*w+M*M-1,S=2*(a+A*w+k*M),O=A*A+k*k-a*a,z=-(Math.abs(D)>1e-6?(S+Math.sqrt(S*S-4*D*O))/(2*D):O/S);return{x:r+A+w*z,y:i+k+M*z,r:z}}function ug(t,e,n){var r=t.x-e.x,i,a,o=t.y-e.y,s,u,l=r*r+o*o;l?(a=e.r+n.r,a*=a,u=t.r+n.r,u*=u,a>u?(i=(l+u-a)/(2*l),s=Math.sqrt(Math.max(0,u/l-i*i)),n.x=t.x-i*r-s*o,n.y=t.y-i*o+s*r):(i=(l+a-u)/(2*l),s=Math.sqrt(Math.max(0,a/l-i*i)),n.x=e.x+i*r-s*o,n.y=e.y+i*o+s*r)):(n.x=e.x+n.r,n.y=e.y)}function lg(t,e){var n=t.r+e.r-1e-6,r=e.x-t.x,i=e.y-t.y;return n>0&&n*n>r*r+i*i}function fg(t){var e=t._,n=t.next._,r=e.r+n.r,i=(e.x*n.r+n.x*e.r)/r,a=(e.y*n.r+n.y*e.r)/r;return i*i+a*a}function mo(t){this._=t,this.next=null,this.previous=null}function _k(t,e){if(!(a=(t=Mk(t)).length))return 0;var n,r,i,a,o,s,u,l,f,c,d;if(n=t[0],n.x=0,n.y=0,!(a>1))return n.r;if(r=t[1],n.x=-r.r,r.x=n.r,r.y=0,!(a>2))return n.r+r.r;ug(r,n,i=t[2]),n=new mo(n),r=new mo(r),i=new mo(i),n.next=i.previous=r,r.next=n.previous=i,i.next=r.previous=n;t:for(u=3;u<a;++u){ug(n._,r._,i=t[u]),i=new mo(i),l=r.next,f=n.previous,c=r._.r,d=n._.r;do if(c<=d){if(lg(l._,i._)){r=l,n.next=r,r.previous=n,--u;continue t}c+=l._.r,l=l.next}else{if(lg(f._,i._)){n=f,n.next=r,r.previous=n,--u;continue t}d+=f._.r,f=f.previous}while(l!==f.next);for(i.previous=n,i.next=r,n.next=r.previous=r=i,o=fg(n);(i=i.next)!==r;)(s=fg(i))<o&&(n=i,o=s);r=n.next}for(n=[r._],i=r;(i=i.next)!==r;)n.push(i._);for(i=Ck(n,e),u=0;u<a;++u)n=t[u],n.x-=i.x,n.y-=i.y;return i.r}function Rk(t){return Math.sqrt(t.value)}function Ok(){var t=null,e=1,n=1,r=E0;function i(a){const o=kk();return a.x=e/2,a.y=n/2,t?a.eachBefore(cg(t)).eachAfter(ol(r,.5,o)).eachBefore(dg(1)):a.eachBefore(cg(Rk)).eachAfter(ol(E0,1,o)).eachAfter(ol(r,a.r/Math.min(e,n),o)).eachBefore(dg(Math.min(e,n)/(2*a.r))),a}return i.radius=function(a){return arguments.length?(t=Oo(a),i):t},i.size=function(a){return arguments.length?(e=+a[0],n=+a[1],i):[e,n]},i.padding=function(a){return arguments.length?(r=typeof a=="function"?a:FE(+a),i):r},i}function cg(t){return function(e){e.children||(e.r=Math.max(0,+t(e)||0))}}function ol(t,e,n){return function(r){if(i=r.children){var i,a,o=i.length,s=t(r)*e||0,u;if(s)for(a=0;a<o;++a)i[a].r+=s;if(u=_k(i,n),s)for(a=0;a<o;++a)i[a].r-=s;r.r=u+s}}}function dg(t){return function(e){var n=e.parent;e.r*=t,n&&(e.x=n.x+t*e.x,e.y=n.y+t*e.y)}}function zk(){var t=1,e=1,n=0,r=!1;function i(o){var s=o.height+1;return o.x0=o.y0=n,o.x1=t,o.y1=e/s,o.eachBefore(a(e,s)),r&&o.eachBefore($E),o}function a(o,s){return function(u){u.children&&eu(u,u.x0,o*(u.depth+1)/s,u.x1,o*(u.depth+2)/s);var l=u.x0,f=u.y0,c=u.x1-n,d=u.y1-n;c<l&&(l=c=(l+c)/2),d<f&&(f=d=(f+d)/2),u.x0=l,u.y0=f,u.x1=c,u.y1=d}}return i.round=function(o){return arguments.length?(r=!!o,i):r},i.size=function(o){return arguments.length?(t=+o[0],e=+o[1],i):[t,e]},i.padding=function(o){return arguments.length?(n=+o,i):n},i}var Bk={depth:-1},hg={},sl={};function Tk(t){return t.id}function Pk(t){return t.parentId}function gg(){var t=Tk,e=Pk,n;function r(i){var a=Array.from(i),o=t,s=e,u,l,f,c,d,h,g,p,m=new Map;if(n!=null){const y=a.map((x,E)=>Lk(n(x,E,i))),v=y.map(pg),b=new Set(y).add("");for(const x of v)b.has(x)||(b.add(x),y.push(x),v.push(pg(x)),a.push(sl));o=(x,E)=>y[E],s=(x,E)=>v[E]}for(f=0,u=a.length;f<u;++f)l=a[f],h=a[f]=new j1(l),(g=o(l,f,i))!=null&&(g+="")&&(p=h.id=g,m.set(p,m.has(p)?hg:h)),(g=s(l,f,i))!=null&&(g+="")&&(h.parent=g);for(f=0;f<u;++f)if(h=a[f],g=h.parent){if(d=m.get(g),!d)throw new Error("missing: "+g);if(d===hg)throw new Error("ambiguous: "+g);d.children?d.children.push(h):d.children=[h],h.parent=d}else{if(c)throw new Error("multiple roots");c=h}if(!c)throw new Error("no root");if(n!=null){for(;c.data===sl&&c.children.length===1;)c=c.children[0],--u;for(let y=a.length-1;y>=0&&(h=a[y],h.data===sl);--y)h.data=null}if(c.parent=Bk,c.eachBefore(function(y){y.depth=y.parent.depth+1,--u}).eachBefore(_E),c.parent=null,u>0)throw new Error("cycle");return c}return r.id=function(i){return arguments.length?(t=Oo(i),r):t},r.parentId=function(i){return arguments.length?(e=Oo(i),r):e},r.path=function(i){return arguments.length?(n=Oo(i),r):n},r}function Lk(t){t=`${t}`;let e=t.length;return yf(t,e-1)&&!yf(t,e-2)&&(t=t.slice(0,-1)),t[0]==="/"?t:`/${t}`}function pg(t){let e=t.length;if(e<2)return"";for(;--e>1&&!yf(t,e););return t.slice(0,e)}function yf(t,e){if(t[e]==="/"){let n=0;for(;e>0&&t[--e]==="\\";)++n;if(!(n&1))return!0}return!1}function Nk(t,e){return t.parent===e.parent?1:2}function ul(t){var e=t.children;return e?e[0]:t.t}function ll(t){var e=t.children;return e?e[e.length-1]:t.t}function Ik(t,e,n){var r=n/(e.i-t.i);e.c-=r,e.s+=n,t.c+=r,e.z+=n,e.m+=n}function qk(t){for(var e=0,n=0,r=t.children,i=r.length,a;--i>=0;)a=r[i],a.z+=e,a.m+=e,e+=a.s+(n+=a.c)}function jk(t,e,n){return t.a.parent===e.parent?t.a:n}function Bo(t,e){this._=t,this.parent=null,this.children=null,this.A=null,this.a=this,this.z=0,this.m=0,this.c=0,this.s=0,this.t=null,this.i=e}Bo.prototype=Object.create(j1.prototype);function Uk(t){for(var e=new Bo(t,0),n,r=[e],i,a,o,s;n=r.pop();)if(a=n._.children)for(n.children=new Array(s=a.length),o=s-1;o>=0;--o)r.push(i=n.children[o]=new Bo(a[o],o)),i.parent=n;return(e.parent=new Bo(null,0)).children=[e],e}function Wk(){var t=Nk,e=1,n=1,r=null;function i(l){var f=Uk(l);if(f.eachAfter(a),f.parent.m=-f.z,f.eachBefore(o),r)l.eachBefore(u);else{var c=l,d=l,h=l;l.eachBefore(function(v){v.x<c.x&&(c=v),v.x>d.x&&(d=v),v.depth>h.depth&&(h=v)});var g=c===d?1:t(c,d)/2,p=g-c.x,m=e/(d.x+g+p),y=n/(h.depth||1);l.eachBefore(function(v){v.x=(v.x+p)*m,v.y=v.depth*y})}return l}function a(l){var f=l.children,c=l.parent.children,d=l.i?c[l.i-1]:null;if(f){qk(l);var h=(f[0].z+f[f.length-1].z)/2;d?(l.z=d.z+t(l._,d._),l.m=l.z-h):l.z=h}else d&&(l.z=d.z+t(l._,d._));l.parent.A=s(l,d,l.parent.A||c[0])}function o(l){l._.x=l.z+l.parent.m,l.m+=l.parent.m}function s(l,f,c){if(f){for(var d=l,h=l,g=f,p=d.parent.children[0],m=d.m,y=h.m,v=g.m,b=p.m,x;g=ll(g),d=ul(d),g&&d;)p=ul(p),h=ll(h),h.a=l,x=g.z+v-d.z-m+t(g._,d._),x>0&&(Ik(jk(g,l,c),l,x),m+=x,y+=x),v+=g.m,m+=d.m,b+=p.m,y+=h.m;g&&!ll(h)&&(h.t=g,h.m+=v-y),d&&!ul(p)&&(p.t=d,p.m+=m-b,c=l)}return c}function u(l){l.x*=e,l.y=l.depth*n}return i.separation=function(l){return arguments.length?(t=l,i):t},i.size=function(l){return arguments.length?(r=!1,e=+l[0],n=+l[1],i):r?null:[e,n]},i.nodeSize=function(l){return arguments.length?(r=!0,e=+l[0],n=+l[1],i):r?[e,n]:null},i}function Gk(t,e,n,r,i){var a=t.children,o,s=a.length,u,l=new Array(s+1);for(l[0]=u=o=0;o<s;++o)l[o+1]=u+=a[o].value;f(0,s,t.value,e,n,r,i);function f(c,d,h,g,p,m,y){if(c>=d-1){var v=a[c];v.x0=g,v.y0=p,v.x1=m,v.y1=y;return}for(var b=l[c],x=h/2+b,E=c+1,A=d-1;E<A;){var w=E+A>>>1;l[w]<x?E=w+1:A=w}x-l[E-1]<l[E]-x&&c+1<E&&--E;var k=l[E]-b,M=h-k;if(m-g>y-p){var D=h?(g*M+m*k)/h:m;f(c,E,k,g,p,D,y),f(E,d,M,D,p,m,y)}else{var S=h?(p*M+y*k)/h:y;f(c,E,k,g,p,m,S),f(E,d,M,g,S,m,y)}}}function Yk(t,e,n,r,i){(t.depth&1?Ac:eu)(t,e,n,r,i)}const Hk=function t(e){function n(r,i,a,o,s){if((u=r._squarify)&&u.ratio===e)for(var u,l,f,c,d=-1,h,g=u.length,p=r.value;++d<g;){for(l=u[d],f=l.children,c=l.value=0,h=f.length;c<h;++c)l.value+=f[c].value;l.dice?eu(l,i,a,o,p?a+=(s-a)*l.value/p:s):Ac(l,i,a,p?i+=(o-i)*l.value/p:o,s),p-=l.value}else r._squarify=u=RE(e,r,i,a,o,s),u.ratio=e}return n.ratio=function(r){return t((r=+r)>1?r:1)},n}(OE);function Um(t){var e;function n(r){return r==null||isNaN(r=+r)?e:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(t=Array.from(r,y0),n):t.slice()},n.unknown=function(r){return arguments.length?(e=r,n):e},n.copy=function(){return Um(t).unknown(e)},t=arguments.length?Array.from(t,y0):[0,1],fi(n)}function mg(t){return Math.log(t)}function yg(t){return Math.exp(t)}function Vk(t){return-Math.log(-t)}function Xk(t){return-Math.exp(-t)}function Kk(t){return isFinite(t)?+("1e"+t):t<0?0:t}function Jk(t){return t===10?Kk:t===Math.E?Math.exp:e=>Math.pow(t,e)}function Zk(t){return t===Math.E?Math.log:t===10&&Math.log10||t===2&&Math.log2||(t=Math.log(t),e=>Math.log(e)/t)}function vg(t){return(e,n)=>-t(-e,n)}function Pc(t){const e=t(mg,yg),n=e.domain;let r=10,i,a;function o(){return i=Zk(r),a=Jk(r),n()[0]<0?(i=vg(i),a=vg(a),t(Vk,Xk)):t(mg,yg),e}return e.base=function(s){return arguments.length?(r=+s,o()):r},e.domain=function(s){return arguments.length?(n(s),o()):n()},e.ticks=s=>{const u=n();let l=u[0],f=u[u.length-1];const c=f<l;c&&([l,f]=[f,l]);let d=i(l),h=i(f),g,p;const m=s==null?10:+s;let y=[];if(!(r%1)&&h-d<m){if(d=Math.floor(d),h=Math.ceil(h),l>0){for(;d<=h;++d)for(g=1;g<r;++g)if(p=d<0?g/a(-d):g*a(d),!(p<l)){if(p>f)break;y.push(p)}}else for(;d<=h;++d)for(g=r-1;g>=1;--g)if(p=d>0?g/a(-d):g*a(d),!(p<l)){if(p>f)break;y.push(p)}y.length*2<m&&(y=v0(l,f,m))}else y=v0(d,h,Math.min(h-d,m)).map(a);return c?y.reverse():y},e.tickFormat=(s,u)=>{if(s==null&&(s=10),u==null&&(u=r===10?"s":","),typeof u!="function"&&(!(r%1)&&(u=Gl(u)).precision==null&&(u.trim=!0),u=B1(u)),s===1/0)return u;const l=Math.max(1,r*s/e.ticks().length);return f=>{let c=f/a(Math.round(i(f)));return c*r<r-.5&&(c*=r),c<=l?u(f):""}},e.nice=()=>n(Mw(n(),{floor:s=>a(Math.floor(i(s))),ceil:s=>a(Math.ceil(i(s)))})),e}function Wm(){const t=Pc(yc()).domain([1,10]);return t.copy=()=>vc(t,Wm()).base(t.base()),Rr.apply(t,arguments),t}function bg(t){return function(e){return Math.sign(e)*Math.log1p(Math.abs(e/t))}}function xg(t){return function(e){return Math.sign(e)*Math.expm1(Math.abs(e))*t}}function Lc(t){var e=1,n=t(bg(e),xg(e));return n.constant=function(r){return arguments.length?t(bg(e=+r),xg(e)):e},fi(n)}function Gm(){var t=Lc(yc());return t.copy=function(){return vc(t,Gm()).constant(t.constant())},Rr.apply(t,arguments)}function wg(t){return function(e){return e<0?-Math.pow(-e,t):Math.pow(e,t)}}function Qk(t){return t<0?-Math.sqrt(-t):Math.sqrt(t)}function t5(t){return t<0?-t*t:t*t}function Nc(t){var e=t(Bn,Bn),n=1;function r(){return n===1?t(Bn,Bn):n===.5?t(Qk,t5):t(wg(n),wg(1/n))}return e.exponent=function(i){return arguments.length?(n=+i,r()):n},fi(e)}function Ic(){var t=Nc(yc());return t.copy=function(){return vc(t,Ic()).exponent(t.exponent())},Rr.apply(t,arguments),t}function e5(){return Ic.apply(null,arguments).exponent(.5)}function Ym(){var t=[],e=[],n=[],r;function i(){var o=0,s=Math.max(1,e.length);for(n=new Array(s-1);++o<s;)n[o-1]=V1(t,o/s);return a}function a(o){return o==null||isNaN(o=+o)?r:e[xr(n,o)]}return a.invertExtent=function(o){var s=e.indexOf(o);return s<0?[NaN,NaN]:[s>0?n[s-1]:t[0],s<n.length?n[s]:t[t.length-1]]},a.domain=function(o){if(!arguments.length)return t.slice();t=[];for(let s of o)s!=null&&!isNaN(s=+s)&&t.push(s);return t.sort(ha),i()},a.range=function(o){return arguments.length?(e=Array.from(o),i()):e.slice()},a.unknown=function(o){return arguments.length?(r=o,a):r},a.quantiles=function(){return n.slice()},a.copy=function(){return Ym().domain(t).range(e).unknown(r)},Rr.apply(a,arguments)}function Hm(){var t=0,e=1,n=1,r=[.5],i=[0,1],a;function o(u){return u!=null&&u<=u?i[xr(r,u,0,n)]:a}function s(){var u=-1;for(r=new Array(n);++u<n;)r[u]=((u+1)*e-(u-n)*t)/(n+1);return o}return o.domain=function(u){return arguments.length?([t,e]=u,t=+t,e=+e,s()):[t,e]},o.range=function(u){return arguments.length?(n=(i=Array.from(u)).length-1,s()):i.slice()},o.invertExtent=function(u){var l=i.indexOf(u);return l<0?[NaN,NaN]:l<1?[t,r[0]]:l>=n?[r[n-1],e]:[r[l-1],r[l]]},o.unknown=function(u){return arguments.length&&(a=u),o},o.thresholds=function(){return r.slice()},o.copy=function(){return Hm().domain([t,e]).range(i).unknown(a)},Rr.apply(fi(o),arguments)}function Vm(){var t=[.5],e=[0,1],n,r=1;function i(a){return a!=null&&a<=a?e[xr(t,a,0,r)]:n}return i.domain=function(a){return arguments.length?(t=Array.from(a),r=Math.min(t.length,e.length-1),i):t.slice()},i.range=function(a){return arguments.length?(e=Array.from(a),r=Math.min(t.length,e.length-1),i):e.slice()},i.invertExtent=function(a){var o=e.indexOf(a);return[t[o-1],t[o]]},i.unknown=function(a){return arguments.length?(n=a,i):n},i.copy=function(){return Vm().domain(t).range(e).unknown(n)},Rr.apply(i,arguments)}function n5(){return Rr.apply(Dw(Sw,Cw,R1,Wl,wc,ta,_1,$1,xc,F1).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function ou(){var t=0,e=1,n,r,i,a,o=Bn,s=!1,u;function l(c){return c==null||isNaN(c=+c)?u:o(i===0?.5:(c=(a(c)-n)*i,s?Math.max(0,Math.min(1,c)):c))}l.domain=function(c){return arguments.length?([t,e]=c,n=a(t=+t),r=a(e=+e),i=n===r?0:1/(r-n),l):[t,e]},l.clamp=function(c){return arguments.length?(s=!!c,l):s},l.interpolator=function(c){return arguments.length?(o=c,l):o};function f(c){return function(d){var h,g;return arguments.length?([h,g]=d,o=c(h,g),l):[o(0),o(1)]}}return l.range=f(Oa),l.rangeRound=f(tu),l.unknown=function(c){return arguments.length?(u=c,l):u},function(c){return a=c,n=c(t),r=c(e),i=n===r?0:1/(r-n),l}}function Kn(t,e){return e.domain(t.domain()).interpolator(t.interpolator()).clamp(t.clamp()).unknown(t.unknown())}function qc(){var t=fi(ou()(Bn));return t.copy=function(){return Kn(t,qc())},Xn.apply(t,arguments)}function Xm(){var t=Pc(ou()).domain([1,10]);return t.copy=function(){return Kn(t,Xm()).base(t.base())},Xn.apply(t,arguments)}function Km(){var t=Lc(ou());return t.copy=function(){return Kn(t,Km()).constant(t.constant())},Xn.apply(t,arguments)}function jc(){var t=Nc(ou());return t.copy=function(){return Kn(t,jc()).exponent(t.exponent())},Xn.apply(t,arguments)}function r5(){return jc.apply(null,arguments).exponent(.5)}function su(){var t=0,e=.5,n=1,r=1,i,a,o,s,u,l=Bn,f,c=!1,d;function h(p){return isNaN(p=+p)?d:(p=.5+((p=+f(p))-a)*(r*p<r*a?s:u),l(c?Math.max(0,Math.min(1,p)):p))}h.domain=function(p){return arguments.length?([t,e,n]=p,i=f(t=+t),a=f(e=+e),o=f(n=+n),s=i===a?0:.5/(a-i),u=a===o?0:.5/(o-a),r=a<i?-1:1,h):[t,e,n]},h.clamp=function(p){return arguments.length?(c=!!p,h):c},h.interpolator=function(p){return arguments.length?(l=p,h):l};function g(p){return function(m){var y,v,b;return arguments.length?([y,v,b]=m,l=Dc(p,[y,v,b]),h):[l(0),l(.5),l(1)]}}return h.range=g(Oa),h.rangeRound=g(tu),h.unknown=function(p){return arguments.length?(d=p,h):d},function(p){return f=p,i=p(t),a=p(e),o=p(n),s=i===a?0:.5/(a-i),u=a===o?0:.5/(o-a),r=a<i?-1:1,h}}function Jm(){var t=fi(su()(Bn));return t.copy=function(){return Kn(t,Jm())},Xn.apply(t,arguments)}function Zm(){var t=Pc(su()).domain([.1,1,10]);return t.copy=function(){return Kn(t,Zm()).base(t.base())},Xn.apply(t,arguments)}function Qm(){var t=Lc(su());return t.copy=function(){return Kn(t,Qm()).constant(t.constant())},Xn.apply(t,arguments)}function Uc(){var t=Nc(su());return t.copy=function(){return Kn(t,Uc()).exponent(t.exponent())},Xn.apply(t,arguments)}function i5(){return Uc.apply(null,arguments).exponent(.5)}const a5=ln("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),o5=ln("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),s5=ln("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),u5=ln("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),l5=ln("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),f5=ln("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),c5=ln("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),d5=ln("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),h5=ln("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),g5=ln("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f");function ty(t,e,n){var r=null,i=Bt(!0),a=null,o=N1,s=null,u=L1(l);t=typeof t=="function"?t:t===void 0?oE:Bt(+t),e=typeof e=="function"?e:e===void 0?Bt(0):Bt(+e),n=typeof n=="function"?n:n===void 0?sE:Bt(+n);function l(c){var d,h,g,p=(c=aE(c)).length,m,y=!1,v,b=new Array(p),x=new Array(p);for(a==null&&(s=o(v=u())),d=0;d<=p;++d){if(!(d<p&&i(m=c[d],d,c))===y)if(y=!y)h=d,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),g=d-1;g>=h;--g)s.point(b[g],x[g]);s.lineEnd(),s.areaEnd()}y&&(b[d]=+t(m,d,c),x[d]=+e(m,d,c),s.point(r?+r(m,d,c):b[d],n?+n(m,d,c):x[d]))}if(v)return s=null,v+""||null}function f(){return I1().defined(i).curve(o).context(a)}return l.x=function(c){return arguments.length?(t=typeof c=="function"?c:Bt(+c),r=null,l):t},l.x0=function(c){return arguments.length?(t=typeof c=="function"?c:Bt(+c),l):t},l.x1=function(c){return arguments.length?(r=c==null?null:typeof c=="function"?c:Bt(+c),l):r},l.y=function(c){return arguments.length?(e=typeof c=="function"?c:Bt(+c),n=null,l):e},l.y0=function(c){return arguments.length?(e=typeof c=="function"?c:Bt(+c),l):e},l.y1=function(c){return arguments.length?(n=c==null?null:typeof c=="function"?c:Bt(+c),l):n},l.lineX0=l.lineY0=function(){return f().x(t).y(e)},l.lineY1=function(){return f().x(t).y(n)},l.lineX1=function(){return f().x(r).y(e)},l.defined=function(c){return arguments.length?(i=typeof c=="function"?c:Bt(!!c),l):i},l.curve=function(c){return arguments.length?(o=c,a!=null&&(s=o(a)),l):o},l.context=function(c){return arguments.length?(c==null?a=s=null:s=o(a=c),l):a},l}const p5={draw(t,e){const n=lE(e/fE);t.moveTo(n,0),t.arc(0,0,n,0,uE)}};function m5(t,e){let n=null,r=L1(i);t=typeof t=="function"?t:Bt(t||p5),e=typeof e=="function"?e:Bt(e===void 0?64:+e);function i(){let a;if(n||(n=a=r()),t.apply(this,arguments).draw(n,+e.apply(this,arguments)),a)return n=null,a+""||null}return i.type=function(a){return arguments.length?(t=typeof a=="function"?a:Bt(a),i):t},i.size=function(a){return arguments.length?(e=typeof a=="function"?a:Bt(+a),i):e},i.context=function(a){return arguments.length?(n=a??null,i):n},i}function be(t,e,n){return t.fields=e||[],t.fname=n,t}function yt(t){return t==null?null:t.fname}function Zt(t){return t==null?null:t.fields}function ey(t){return t.length===1?y5(t[0]):v5(t)}const y5=t=>function(e){return e[t]},v5=t=>{const e=t.length;return function(n){for(let r=0;r<e;++r)n=n[t[r]];return n}};function _(t){throw Error(t)}function Wc(t){const e=[],n=t.length;let r=null,i=0,a="",o,s,u;t=t+"";function l(){e.push(a+t.substring(o,s)),a="",o=s+1}for(o=s=0;s<n;++s)if(u=t[s],u==="\\")a+=t.substring(o,s++),o=s;else if(u===r)l(),r=null,i=-1;else{if(r)continue;o===i&&u==='"'||o===i&&u==="'"?(o=s+1,r=u):u==="."&&!i?s>o?l():o=s+1:u==="["?(s>o&&l(),i=o=s+1):u==="]"&&(i||_("Access path missing open bracket: "+t),i>0&&l(),i=0,o=s+1)}return i&&_("Access path missing closing bracket: "+t),r&&_("Access path missing closing quote: "+t),s>o&&(s++,l()),e}function Ue(t,e,n){const r=Wc(t);return t=r.length===1?r[0]:t,be((n&&n.get||ey)(r),[t],e||t)}const uu=Ue("id"),fe=be(t=>t,[],"identity"),ar=be(()=>0,[],"zero"),Pa=be(()=>1,[],"one"),We=be(()=>!0,[],"true"),tr=be(()=>!1,[],"false"),b5=new Set([...Object.getOwnPropertyNames(Object.prototype).filter(t=>typeof Object.prototype[t]=="function"),"__proto__"]);function x5(t,e,n){const r=[e].concat([].slice.call(n));console[t].apply(console,r)}const w5=0,ny=1,E5=2,A5=3,k5=4;function M5(t,e,n=x5){let r=t||w5;return{level(i){return arguments.length?(r=+i,this):r},error(){return r>=ny&&n(e||"error","ERROR",arguments),this},warn(){return r>=E5&&n(e||"warn","WARN",arguments),this},info(){return r>=A5&&n(e||"log","INFO",arguments),this},debug(){return r>=k5&&n(e||"log","DEBUG",arguments),this}}}var L=Array.isArray;function K(t){return t===Object(t)}const Eg=t=>t!=="__proto__";function D5(...t){return t.reduce((e,n)=>{for(const r in n)if(r==="signals")e.signals=C5(e.signals,n.signals);else{const i=r==="legend"?{layout:1}:r==="style"?!0:null;ry(e,r,n[r],i)}return e},{})}function ry(t,e,n,r){if(!Eg(e))return;let i,a;if(K(n)&&!L(n)){a=K(t[e])?t[e]:t[e]={};for(i in n)r&&(r===!0||r[i])?ry(a,i,n[i]):Eg(i)&&(a[i]=n[i])}else t[e]=n}function C5(t,e){if(t==null)return e;const n={},r=[];function i(a){n[a.name]||(n[a.name]=1,r.push(a))}return e.forEach(i),t.forEach(i),r}function rt(t){return t[t.length-1]}function Kt(t){return t==null||t===""?null:+t}const iy=t=>e=>t*Math.exp(e),ay=t=>e=>Math.log(t*e),oy=t=>e=>Math.sign(e)*Math.log1p(Math.abs(e/t)),sy=t=>e=>Math.sign(e)*Math.expm1(Math.abs(e))*t,Ss=t=>e=>e<0?-Math.pow(-e,t):Math.pow(e,t);function lu(t,e,n,r){const i=n(t[0]),a=n(rt(t)),o=(a-i)*e;return[r(i-o),r(a-o)]}function S5(t,e){return lu(t,e,Kt,fe)}function F5(t,e){var n=Math.sign(t[0]);return lu(t,e,ay(n),iy(n))}function $5(t,e,n){return lu(t,e,Ss(n),Ss(1/n))}function _5(t,e,n){return lu(t,e,oy(n),sy(n))}function fu(t,e,n,r,i){const a=r(t[0]),o=r(rt(t)),s=e!=null?r(e):(a+o)/2;return[i(s+(a-s)*n),i(s+(o-s)*n)]}function uy(t,e,n){return fu(t,e,n,Kt,fe)}function ly(t,e,n){const r=Math.sign(t[0]);return fu(t,e,n,ay(r),iy(r))}function vf(t,e,n,r){return fu(t,e,n,Ss(r),Ss(1/r))}function fy(t,e,n,r){return fu(t,e,n,oy(r),sy(r))}function R5(t){return 1+~~(new Date(t).getMonth()/3)}function O5(t){return 1+~~(new Date(t).getUTCMonth()/3)}function G(t){return t!=null?L(t)?t:[t]:[]}function z5(t,e,n){let r=t[0],i=t[1],a;return i<r&&(a=i,i=r,r=a),a=i-r,a>=n-e?[e,n]:[r=Math.min(Math.max(r,e),n-a),r+a]}function Z(t){return typeof t=="function"}const B5="descending";function cy(t,e,n){n=n||{},e=G(e)||[];const r=[],i=[],a={},o=n.comparator||T5;return G(t).forEach((s,u)=>{s!=null&&(r.push(e[u]===B5?-1:1),i.push(s=Z(s)?s:Ue(s,null,n)),(Zt(s)||[]).forEach(l=>a[l]=1))}),i.length===0?null:be(o(i,r),Object.keys(a))}const cu=(t,e)=>(t<e||t==null)&&e!=null?-1:(t>e||e==null)&&t!=null?1:(e=e instanceof Date?+e:e,(t=t instanceof Date?+t:t)!==t&&e===e?-1:e!==e&&t===t?1:0),T5=(t,e)=>t.length===1?P5(t[0],e[0]):L5(t,e,t.length),P5=(t,e)=>function(n,r){return cu(t(n),t(r))*e},L5=(t,e,n)=>(e.push(0),function(r,i){let a,o=0,s=-1;for(;o===0&&++s<n;)a=t[s],o=cu(a(r),a(i));return o*e[s]});function re(t){return Z(t)?t:()=>t}function dy(t,e){let n;return r=>{n&&clearTimeout(n),n=setTimeout(()=>(e(r),n=null),t)}}function J(t){for(let e,n,r=1,i=arguments.length;r<i;++r){e=arguments[r];for(n in e)t[n]=e[n]}return t}function Mn(t,e){let n=0,r,i,a,o;if(t&&(r=t.length))if(e==null){for(i=t[n];n<r&&(i==null||i!==i);i=t[++n]);for(a=o=i;n<r;++n)i=t[n],i!=null&&(i<a&&(a=i),i>o&&(o=i))}else{for(i=e(t[n]);n<r&&(i==null||i!==i);i=e(t[++n]));for(a=o=i;n<r;++n)i=e(t[n]),i!=null&&(i<a&&(a=i),i>o&&(o=i))}return[a,o]}function N5(t,e){const n=t.length;let r=-1,i,a,o,s,u;if(e==null){for(;++r<n;)if(a=t[r],a!=null&&a>=a){i=o=a;break}if(r===n)return[-1,-1];for(s=u=r;++r<n;)a=t[r],a!=null&&(i>a&&(i=a,s=r),o<a&&(o=a,u=r))}else{for(;++r<n;)if(a=e(t[r],r,t),a!=null&&a>=a){i=o=a;break}if(r===n)return[-1,-1];for(s=u=r;++r<n;)a=e(t[r],r,t),a!=null&&(i>a&&(i=a,s=r),o<a&&(o=a,u=r))}return[s,u]}function H(t,e){return Object.hasOwn(t,e)}const yo={};function La(t){let e={},n;function r(a){return H(e,a)&&e[a]!==yo}const i={size:0,empty:0,object:e,has:r,get(a){return r(a)?e[a]:void 0},set(a,o){return r(a)||(++i.size,e[a]===yo&&--i.empty),e[a]=o,this},delete(a){return r(a)&&(--i.size,++i.empty,e[a]=yo),this},clear(){i.size=i.empty=0,i.object=e={}},test(a){return arguments.length?(n=a,i):n},clean(){const a={};let o=0;for(const s in e){const u=e[s];u!==yo&&(!n||!n(u))&&(a[s]=u,++o)}i.size=o,i.empty=0,i.object=e=a}};return t&&Object.keys(t).forEach(a=>{i.set(a,t[a])}),i}function I5(t,e,n,r,i,a){if(!n&&n!==0)return a;const o=+n;let s=t[0],u=rt(t),l;u<s&&(l=s,s=u,u=l),l=Math.abs(e-s);const f=Math.abs(u-e);return l<f&&l<=o?r:f<=o?i:a}function B(t,e,n){const r=t.prototype=Object.create(e.prototype);return Object.defineProperty(r,"constructor",{value:t,writable:!0,enumerable:!0,configurable:!0}),J(r,n)}function qi(t,e,n,r){let i=e[0],a=e[e.length-1],o;return i>a&&(o=i,i=a,a=o),n=n===void 0||n,r=r===void 0||r,(n?i<=t:i<t)&&(r?t<=a:t<a)}function q5(t){return typeof t=="boolean"}function mr(t){return Object.prototype.toString.call(t)==="[object Date]"}function j5(t){return t&&Z(t[Symbol.iterator])}function Ar(t){return typeof t=="number"}function hy(t){return Object.prototype.toString.call(t)==="[object RegExp]"}function ct(t){return typeof t=="string"}function gy(t,e,n){t&&(t=e?G(t).map(s=>s.replace(/\\(.)/g,"$1")):G(t));const r=t&&t.length,i=n&&n.get||ey,a=s=>i(e?[s]:Wc(s));let o;if(!r)o=function(){return""};else if(r===1){const s=a(t[0]);o=function(u){return""+s(u)}}else{const s=t.map(a);o=function(u){let l=""+s[0](u),f=0;for(;++f<r;)l+="|"+s[f](u);return l}}return be(o,t,"key")}function U5(t,e){const n=t[0],r=rt(t),i=+e;return i?i===1?r:n+i*(r-n):n}const W5=1e4;function G5(t){t=+t||W5;let e,n,r;const i=()=>{e={},n={},r=0},a=(o,s)=>(++r>t&&(n=e,e={},r=1),e[o]=s);return i(),{clear:i,has:o=>H(e,o)||H(n,o),get:o=>H(e,o)?e[o]:H(n,o)?a(o,n[o]):void 0,set:(o,s)=>H(e,o)?e[o]=s:a(o,s)}}function Y5(t,e,n,r){const i=e.length,a=n.length;if(!a)return e;if(!i)return n;const o=r||new e.constructor(i+a);let s=0,u=0,l=0;for(;s<i&&u<a;++l)o[l]=t(e[s],n[u])>0?n[u++]:e[s++];for(;s<i;++s,++l)o[l]=e[s];for(;u<a;++u,++l)o[l]=n[u];return o}function vo(t,e){let n="";for(;--e>=0;)n+=t;return n}function H5(t,e,n,r){const i=n||" ",a=t+"",o=e-a.length;return o<=0?a:r==="left"?vo(i,o)+a:r==="center"?vo(i,~~(o/2))+a+vo(i,Math.ceil(o/2)):a+vo(i,o)}function du(t){return t&&rt(t)-t[0]||0}function U(t){return L(t)?`[${t.map(e=>e===null?"null":U(e))}]`:K(t)||ct(t)?JSON.stringify(t).replaceAll("\u2028","\\u2028").replaceAll("\u2029","\\u2029"):t}function py(t){return t==null||t===""?null:!t||t==="false"||t==="0"?!1:!!t}const V5=t=>Ar(t)||mr(t)?t:Date.parse(t);function my(t,e){return e=e||V5,t==null||t===""?null:e(t)}function yy(t){return t==null||t===""?null:t+""}function an(t){const e={},n=t.length;for(let r=0;r<n;++r)e[t[r]]=!0;return e}function X5(t,e,n,r){const i=r??"…",a=t+"",o=a.length,s=Math.max(0,e-i.length);return o<=e?a:n==="left"?i+a.slice(o-s):n==="center"?a.slice(0,Math.ceil(s/2))+i+a.slice(o-~~(s/2)):a.slice(0,s)+i}function ir(t,e,n){if(t)if(e){const r=t.length;for(let i=0;i<r;++i){const a=e(t[i]);a&&n(a,i,t)}}else t.forEach(n)}function K5(t){return t}function J5(t){if(t==null)return K5;var e,n,r=t.scale[0],i=t.scale[1],a=t.translate[0],o=t.translate[1];return function(s,u){u||(e=n=0);var l=2,f=s.length,c=new Array(f);for(c[0]=(e+=s[0])*r+a,c[1]=(n+=s[1])*i+o;l<f;)c[l]=s[l],++l;return c}}function Z5(t,e){for(var n,r=t.length,i=r-e;i<--r;)n=t[i],t[i++]=t[r],t[r]=n}function Q5(t,e){return typeof e=="string"&&(e=t.objects[e]),e.type==="GeometryCollection"?{type:"FeatureCollection",features:e.geometries.map(function(n){return Ag(t,n)})}:Ag(t,e)}function Ag(t,e){var n=e.id,r=e.bbox,i=e.properties==null?{}:e.properties,a=vy(t,e);return n==null&&r==null?{type:"Feature",properties:i,geometry:a}:r==null?{type:"Feature",id:n,properties:i,geometry:a}:{type:"Feature",id:n,bbox:r,properties:i,geometry:a}}function vy(t,e){var n=J5(t.transform),r=t.arcs;function i(f,c){c.length&&c.pop();for(var d=r[f<0?~f:f],h=0,g=d.length;h<g;++h)c.push(n(d[h],h));f<0&&Z5(c,g)}function a(f){return n(f)}function o(f){for(var c=[],d=0,h=f.length;d<h;++d)i(f[d],c);return c.length<2&&c.push(c[0]),c}function s(f){for(var c=o(f);c.length<4;)c.push(c[0]);return c}function u(f){return f.map(s)}function l(f){var c=f.type,d;switch(c){case"GeometryCollection":return{type:c,geometries:f.geometries.map(l)};case"Point":d=a(f.coordinates);break;case"MultiPoint":d=f.coordinates.map(a);break;case"LineString":d=o(f.arcs);break;case"MultiLineString":d=f.arcs.map(o);break;case"Polygon":d=u(f.arcs);break;case"MultiPolygon":d=f.arcs.map(u);break;default:return null}return{type:c,coordinates:d}}return l(e)}function tM(t,e){var n={},r={},i={},a=[],o=-1;e.forEach(function(l,f){var c=t.arcs[l<0?~l:l],d;c.length<3&&!c[1][0]&&!c[1][1]&&(d=e[++o],e[o]=l,e[f]=d)}),e.forEach(function(l){var f=s(l),c=f[0],d=f[1],h,g;if(h=i[c])if(delete i[h.end],h.push(l),h.end=d,g=r[d]){delete r[g.start];var p=g===h?h:h.concat(g);r[p.start=h.start]=i[p.end=g.end]=p}else r[h.start]=i[h.end]=h;else if(h=r[d])if(delete r[h.start],h.unshift(l),h.start=c,g=i[c]){delete i[g.end];var m=g===h?h:g.concat(h);r[m.start=g.start]=i[m.end=h.end]=m}else r[h.start]=i[h.end]=h;else h=[l],r[h.start=c]=i[h.end=d]=h});function s(l){var f=t.arcs[l<0?~l:l],c=f[0],d;return t.transform?(d=[0,0],f.forEach(function(h){d[0]+=h[0],d[1]+=h[1]})):d=f[f.length-1],l<0?[d,c]:[c,d]}function u(l,f){for(var c in l){var d=l[c];delete f[d.start],delete d.start,delete d.end,d.forEach(function(h){n[h<0?~h:h]=1}),a.push(d)}}return u(i,r),u(r,i),e.forEach(function(l){n[l<0?~l:l]||a.push([l])}),a}function eM(t){return vy(t,nM.apply(this,arguments))}function nM(t,e,n){var r,i,a;if(arguments.length>1)r=rM(t,e,n);else for(i=0,r=new Array(a=t.arcs.length);i<a;++i)r[i]=i;return{type:"MultiLineString",arcs:tM(t,r)}}function rM(t,e,n){var r=[],i=[],a;function o(c){var d=c<0?~c:c;(i[d]||(i[d]=[])).push({i:c,g:a})}function s(c){c.forEach(o)}function u(c){c.forEach(s)}function l(c){c.forEach(u)}function f(c){switch(a=c,c.type){case"GeometryCollection":c.geometries.forEach(f);break;case"LineString":s(c.arcs);break;case"MultiLineString":case"Polygon":u(c.arcs);break;case"MultiPolygon":l(c.arcs);break}}return f(e),i.forEach(n==null?function(c){r.push(c[0].i)}:function(c){n(c[0].g,c[c.length-1].g)&&r.push(c[0].i)}),r}const Pt="year",me="quarter",Qt="month",Mt="week",ye="date",Vt="day",Dn="dayofyear",Fe="hours",$e="minutes",Ge="seconds",on="milliseconds",by=[Pt,me,Qt,Mt,ye,Vt,Dn,Fe,$e,Ge,on],fl=by.reduce((t,e,n)=>(t[e]=1+n,t),{});function xy(t){const e=G(t).slice(),n={};return e.length||_("Missing time unit."),e.forEach(i=>{H(fl,i)?n[i]=1:_(`Invalid time unit: ${i}.`)}),(n[Mt]||n[Vt]?1:0)+(n[me]||n[Qt]||n[ye]?1:0)+(n[Dn]?1:0)>1&&_(`Incompatible time units: ${t}`),e.sort((i,a)=>fl[i]-fl[a]),e}const iM={[Pt]:"%Y ",[me]:"Q%q ",[Qt]:"%b ",[ye]:"%d ",[Mt]:"W%U ",[Vt]:"%a ",[Dn]:"%j ",[Fe]:"%H:00",[$e]:"00:%M",[Ge]:":%S",[on]:".%L",[`${Pt}-${Qt}`]:"%Y-%m ",[`${Pt}-${Qt}-${ye}`]:"%Y-%m-%d ",[`${Fe}-${$e}`]:"%H:%M"};function aM(t,e){const n=J({},iM,e),r=xy(t),i=r.length;let a="",o=0,s,u;for(o=0;o<i;)for(s=r.length;s>o;--s)if(u=r.slice(o,s).join("-"),n[u]!=null){a+=n[u],o=s;break}return a.trim()}const or=new Date;function Gc(t){return or.setFullYear(t),or.setMonth(0),or.setDate(1),or.setHours(0,0,0,0),or}function oM(t){return wy(new Date(t))}function sM(t){return bf(new Date(t))}function wy(t){return Ro.count(Gc(t.getFullYear())-1,t)}function bf(t){return z1.count(Gc(t.getFullYear())-1,t)}function xf(t){return Gc(t).getDay()}function uM(t,e,n,r,i,a,o){if(0<=t&&t<100){const s=new Date(-1,e,n,r,i,a,o);return s.setFullYear(t),s}return new Date(t,e,n,r,i,a,o)}function lM(t){return Ey(new Date(t))}function fM(t){return wf(new Date(t))}function Ey(t){const e=Date.UTC(t.getUTCFullYear(),0,1);return ta.count(e-1,t)}function wf(t){const e=Date.UTC(t.getUTCFullYear(),0,1);return wc.count(e-1,t)}function Ef(t){return or.setTime(Date.UTC(t,0,1)),or.getUTCDay()}function cM(t,e,n,r,i,a,o){if(0<=t&&t<100){const s=new Date(Date.UTC(-1,e,n,r,i,a,o));return s.setUTCFullYear(n.y),s}return new Date(Date.UTC(t,e,n,r,i,a,o))}function Ay(t,e,n,r,i){const a=e||1,o=rt(t),s=(y,v,b)=>(b=b||y,dM(n[b],r[b],y===o&&a,v)),u=new Date,l=an(t),f=l[Pt]?s(Pt):re(2012),c=l[Qt]?s(Qt):l[me]?s(me):ar,d=l[Mt]&&l[Vt]?s(Vt,1,Mt+Vt):l[Mt]?s(Mt,1):l[Vt]?s(Vt,1):l[ye]?s(ye,1):l[Dn]?s(Dn,1):Pa,h=l[Fe]?s(Fe):ar,g=l[$e]?s($e):ar,p=l[Ge]?s(Ge):ar,m=l[on]?s(on):ar;return function(y){u.setTime(+y);const v=f(u);return i(v,c(u),d(u,v),h(u),g(u),p(u),m(u))}}function dM(t,e,n,r){const i=n<=1?t:r?(a,o)=>r+n*Math.floor((t(a,o)-r)/n):(a,o)=>n*Math.floor(t(a,o)/n);return e?(a,o)=>e(i(a,o),o):i}function ni(t,e,n){return e+t*7-(n+6)%7}const hM={[Pt]:t=>t.getFullYear(),[me]:t=>Math.floor(t.getMonth()/3),[Qt]:t=>t.getMonth(),[ye]:t=>t.getDate(),[Fe]:t=>t.getHours(),[$e]:t=>t.getMinutes(),[Ge]:t=>t.getSeconds(),[on]:t=>t.getMilliseconds(),[Dn]:t=>wy(t),[Mt]:t=>bf(t),[Mt+Vt]:(t,e)=>ni(bf(t),t.getDay(),xf(e)),[Vt]:(t,e)=>ni(1,t.getDay(),xf(e))},gM={[me]:t=>3*t,[Mt]:(t,e)=>ni(t,0,xf(e))};function pM(t,e){return Ay(t,e||1,hM,gM,uM)}const mM={[Pt]:t=>t.getUTCFullYear(),[me]:t=>Math.floor(t.getUTCMonth()/3),[Qt]:t=>t.getUTCMonth(),[ye]:t=>t.getUTCDate(),[Fe]:t=>t.getUTCHours(),[$e]:t=>t.getUTCMinutes(),[Ge]:t=>t.getUTCSeconds(),[on]:t=>t.getUTCMilliseconds(),[Dn]:t=>Ey(t),[Mt]:t=>wf(t),[Vt]:(t,e)=>ni(1,t.getUTCDay(),Ef(e)),[Mt+Vt]:(t,e)=>ni(wf(t),t.getUTCDay(),Ef(e))},yM={[me]:t=>3*t,[Mt]:(t,e)=>ni(t,0,Ef(e))};function vM(t,e){return Ay(t,e||1,mM,yM,cM)}const bM={[Pt]:_w,[me]:b0.every(3),[Qt]:b0,[Mt]:z1,[ye]:Ro,[Vt]:Ro,[Dn]:Ro,[Fe]:$w,[$e]:Fw,[Ge]:xc,[on]:O1},xM={[Pt]:R1,[me]:Wl.every(3),[Qt]:Wl,[Mt]:wc,[ye]:ta,[Vt]:ta,[Dn]:ta,[Fe]:_1,[$e]:$1,[Ge]:xc,[on]:O1};function Na(t){return bM[t]}function Ia(t){return xM[t]}function ky(t,e,n){return t?t.offset(e,n):void 0}function wM(t,e,n){return ky(Na(t),e,n)}function EM(t,e,n){return ky(Ia(t),e,n)}function My(t,e,n,r){return t?t.range(e,n,r):void 0}function AM(t,e,n,r){return My(Na(t),e,n,r)}function kM(t,e,n,r){return My(Ia(t),e,n,r)}const ji=1e3,Ui=ji*60,Wi=Ui*60,hu=Wi*24,MM=hu*7,kg=hu*30,Af=hu*365,Dy=[Pt,Qt,ye,Fe,$e,Ge,on],Gi=Dy.slice(0,-1),Yi=Gi.slice(0,-1),Hi=Yi.slice(0,-1),DM=Hi.slice(0,-1),CM=[Pt,Mt],Mg=[Pt,Qt],Cy=[Pt],Ei=[[Gi,1,ji],[Gi,5,5*ji],[Gi,15,15*ji],[Gi,30,30*ji],[Yi,1,Ui],[Yi,5,5*Ui],[Yi,15,15*Ui],[Yi,30,30*Ui],[Hi,1,Wi],[Hi,3,3*Wi],[Hi,6,6*Wi],[Hi,12,12*Wi],[DM,1,hu],[CM,1,MM],[Mg,1,kg],[Mg,3,3*kg],[Cy,1,Af]];function SM(t){const e=t.extent,n=t.maxbins||40,r=Math.abs(du(e))/n;let i=bc(s=>s[2]).right(Ei,r),a,o;return i===Ei.length?(a=Cy,o=ga(e[0]/Af,e[1]/Af,n)):i?(i=Ei[r/Ei[i-1][2]<Ei[i][2]/r?i-1:i],a=i[0],o=i[1]):(a=Dy,o=Math.max(ga(e[0],e[1],n),1)),{units:a,step:o}}function Vi(t){const e={};return n=>e[n]||(e[n]=t(n))}function FM(t,e){return n=>{const r=t(n),i=r.indexOf(e);if(i<0)return r;let a=$M(r,i);const o=a<r.length?r.slice(a):"";for(;--a>i;)if(r[a]!=="0"){++a;break}return r.slice(0,a)+o}}function $M(t,e){let n=t.lastIndexOf("e"),r;if(n>0)return n;for(n=t.length;--n>e;)if(r=t.charCodeAt(n),r>=48&&r<=57)return n+1}function Sy(t){const e=Vi(t.format),n=t.formatPrefix;return{format:e,formatPrefix:n,formatFloat(r){const i=Gl(r||",");if(i.precision==null){switch(i.precision=12,i.type){case"%":i.precision-=2;break;case"e":i.precision-=1;break}return FM(e(i),e(".1f")(1)[1])}else return e(i)},formatSpan(r,i,a,o){o=Gl(o??",f");const s=ga(r,i,a),u=Math.max(Math.abs(r),Math.abs(i));let l;if(o.precision==null)switch(o.type){case"s":return isNaN(l=yw(s,u))||(o.precision=l),n(o,u);case"":case"e":case"g":case"p":case"r":{isNaN(l=mw(s,u))||(o.precision=l-(o.type==="e"));break}case"f":case"%":{isNaN(l=pw(s))||(o.precision=l-(o.type==="%")*2);break}}return e(o)}}}let kf;Fy();function Fy(){return kf=Sy({format:B1,formatPrefix:Nw})}function $y(t){return Sy(Lw(t))}function Mf(t){return arguments.length?kf=$y(t):kf}function Dg(t,e,n){n=n||{},K(n)||_(`Invalid time multi-format specifier: ${n}`);const r=e(Ge),i=e($e),a=e(Fe),o=e(ye),s=e(Mt),u=e(Qt),l=e(me),f=e(Pt),c=t(n[on]||".%L"),d=t(n[Ge]||":%S"),h=t(n[$e]||"%I:%M"),g=t(n[Fe]||"%I %p"),p=t(n[ye]||n[Vt]||"%a %d"),m=t(n[Mt]||"%b %d"),y=t(n[Qt]||"%B"),v=t(n[me]||"%B"),b=t(n[Pt]||"%Y");return x=>(r(x)<x?c:i(x)<x?d:a(x)<x?h:o(x)<x?g:u(x)<x?s(x)<x?p:m:f(x)<x?l(x)<x?y:v:b)(x)}function _y(t){const e=Vi(t.format),n=Vi(t.utcFormat);return{timeFormat:r=>ct(r)?e(r):Dg(e,Na,r),utcFormat:r=>ct(r)?n(r):Dg(n,Ia,r),timeParse:Vi(t.parse),utcParse:Vi(t.utcParse)}}let Df;Ry();function Ry(){return Df=_y({format:Ow,parse:Bw,utcFormat:F1,utcParse:zw})}function Oy(t){return _y(Rw(t))}function Fs(t){return arguments.length?Df=Oy(t):Df}const Cf=(t,e)=>J({},t,e);function _M(t,e){const n=t?$y(t):Mf(),r=e?Oy(e):Fs();return Cf(n,r)}function zy(t,e){const n=arguments.length;return n&&n!==2&&_("defaultLocale expects either zero or two arguments."),n?Cf(Mf(t),Fs(e)):Cf(Mf(),Fs())}function OT(){return Fy(),Ry(),zy()}const RM=/^(data:|([A-Za-z]+:)?\/\/)/,OM=/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,zM=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,Cg="file://";function BM(t){return e=>({options:e||{},sanitize:PM,load:TM,fileAccess:!1,file:LM(),http:IM})}async function TM(t,e){const n=await this.sanitize(t,e),r=n.href;return n.localFile?this.file(r):this.http(r,e==null?void 0:e.http)}async function PM(t,e){e=J({},this.options,e);const n=this.fileAccess,r={href:null};let i,a,o;const s=OM.test(t.replace(zM,""));(t==null||typeof t!="string"||!s)&&_("Sanitize failure, invalid URI: "+U(t));const u=RM.test(t);return(o=e.baseURL)&&!u&&(!t.startsWith("/")&&!o.endsWith("/")&&(t="/"+t),t=o+t),a=(i=t.startsWith(Cg))||e.mode==="file"||e.mode!=="http"&&!u&&n,i?t=t.slice(Cg.length):t.startsWith("//")&&(e.defaultProtocol==="file"?(t=t.slice(2),a=!0):t=(e.defaultProtocol||"http")+":"+t),Object.defineProperty(r,"localFile",{value:!!a}),r.href=t,e.target&&(r.target=e.target+""),e.rel&&(r.rel=e.rel+""),e.context==="image"&&e.crossOrigin&&(r.crossOrigin=e.crossOrigin+""),r}function LM(t){return NM}async function NM(){_("No file system access.")}async function IM(t,e){const n=J({},this.options.http,e),r=e&&e.response,i=await fetch(t,n);return i.ok?Z(i[r])?i[r]():i.text():_(i.status+""+i.statusText)}const qM=t=>t!=null&&t===t,jM=t=>t==="true"||t==="false"||t===!0||t===!1,UM=t=>!Number.isNaN(Date.parse(t)),By=t=>!Number.isNaN(+t)&&!(t instanceof Date),WM=t=>By(t)&&Number.isInteger(+t),Sg={boolean:py,integer:Kt,number:Kt,date:my,string:yy,unknown:fe},bo=[jM,WM,By,UM],GM=["boolean","integer","number","date"];function YM(t,e){if(!t||!t.length)return"unknown";const n=t.length,r=bo.length,i=bo.map((a,o)=>o+1);for(let a=0,o=0,s,u;a<n;++a)for(u=e?t[a][e]:t[a],s=0;s<r;++s)if(i[s]&&qM(u)&&!bo[s](u)&&(i[s]=0,++o,o===bo.length))return"string";return GM[i.reduce((a,o)=>a===0?o:a,0)-1]}function HM(t,e){return e.reduce((n,r)=>(n[r]=YM(t,r),n),{})}function Fg(t){const e=function(n,r){const i={delimiter:t};return Yc(n,r?J(r,i):i)};return e.responseType="text",e}function Yc(t,e){return e.header&&(t=e.header.map(U).join(e.delimiter)+`
6`+t),DA(e.delimiter).parse(t+"")}Yc.responseType="text";function VM(t){return typeof Buffer=="function"&&Z(Buffer.isBuffer)?Buffer.isBuffer(t):!1}function Hc(t,e){const n=e&&e.property?Ue(e.property):fe;return K(t)&&!VM(t)?XM(n(t),e):n(JSON.parse(t))}Hc.responseType="json";function XM(t,e){return!L(t)&&j5(t)&&(t=[...t]),e&&e.copy?JSON.parse(JSON.stringify(t)):t}const KM={interior:(t,e)=>t!==e,exterior:(t,e)=>t===e};function Ty(t,e){let n,r,i,a;return t=Hc(t,e),e&&e.feature?(n=Q5,i=e.feature):e&&e.mesh?(n=eM,i=e.mesh,a=KM[e.filter]):_("Missing TopoJSON feature or mesh parameter."),r=(r=t.objects[i])?n(t,r,a):_("Invalid TopoJSON object: "+i),r&&r.features||[r]}Ty.responseType="json";const cl={dsv:Yc,csv:Fg(","),tsv:Fg("	"),json:Hc,topojson:Ty};function Py(t,e){return arguments.length>1?(cl[t]=e,this):H(cl,t)?cl[t]:null}function JM(t){const e=Py(t);return e&&e.responseType||"text"}function ZM(t,e,n,r){e=e||{};const i=Py(e.type||"json");return i||_("Unknown data format type: "+e.type),t=i(t,e),e.parse&&QM(t,e.parse,n,r),H(t,"columns")&&delete t.columns,t}function QM(t,e,n,r){if(!t.length)return;const i=Fs();n=n||i.timeParse,r=r||i.utcParse;let a=t.columns||Object.keys(t[0]),o,s,u,l,f,c;e==="auto"&&(e=HM(t,a)),a=Object.keys(e);const d=a.map(h=>{const g=e[h];let p,m;if(g&&(g.startsWith("date:")||g.startsWith("utc:")))return p=g.split(/:(.+)?/,2),m=p[1],(m[0]==="'"&&m[m.length-1]==="'"||m[0]==='"'&&m[m.length-1]==='"')&&(m=m.slice(1,-1)),(p[0]==="utc"?r:n)(m);if(!Sg[g])throw Error("Illegal format pattern: "+h+":"+g);return Sg[g]});for(u=0,f=t.length,c=a.length;u<f;++u)for(o=t[u],l=0;l<c;++l)s=a[l],o[s]=d[l](o[s])}const Vc=BM();function gu(t){const e=t||fe,n=[],r={};return n.add=i=>{const a=e(i);return r[a]||(r[a]=1,n.push(i)),n},n.remove=i=>{const a=e(i);if(r[a]){r[a]=0;const o=n.indexOf(i);o>=0&&n.splice(o,1)}return n},n}async function To(t,e){try{await e(t)}catch(n){t.error(n)}}const Ly=Symbol("vega_id");let t6=1;function Xc(t){return!!(t&&j(t))}function j(t){return t[Ly]}function Ny(t,e){return t[Ly]=e,t}function ot(t){const e=t===Object(t)?t:{data:t};return j(e)?e:Ny(e,t6++)}function Kc(t){return pu(t,ot({}))}function pu(t,e){for(const n in t)e[n]=t[n];return e}function Iy(t,e){return Ny(e,j(t))}function Or(t,e){return t?e?(n,r)=>t(n,r)||j(e(n))-j(e(r)):(n,r)=>t(n,r)||j(n)-j(r):null}function qy(t){return t&&t.constructor===di}function di(){const t=[],e=[],n=[],r=[],i=[];let a=null,o=!1;return{constructor:di,insert(s){const u=G(s),l=u.length;for(let f=0;f<l;++f)t.push(u[f]);return this},remove(s){const u=Z(s)?r:e,l=G(s),f=l.length;for(let c=0;c<f;++c)u.push(l[c]);return this},modify(s,u,l){const f={field:u,value:re(l)};return Z(s)?(f.filter=s,i.push(f)):(f.tuple=s,n.push(f)),this},encode(s,u){return Z(s)?i.push({filter:s,field:u}):n.push({tuple:s,field:u}),this},clean(s){return a=s,this},reflow(){return o=!0,this},pulse(s,u){const l={},f={};let c,d,h,g,p,m;for(c=0,d=u.length;c<d;++c)l[j(u[c])]=1;for(c=0,d=e.length;c<d;++c)p=e[c],l[j(p)]=-1;for(c=0,d=r.length;c<d;++c)g=r[c],u.forEach(v=>{g(v)&&(l[j(v)]=-1)});for(c=0,d=t.length;c<d;++c)p=t[c],m=j(p),l[m]?l[m]=1:s.add.push(ot(t[c]));for(c=0,d=u.length;c<d;++c)p=u[c],l[j(p)]<0&&s.rem.push(p);function y(v,b,x){x?v[b]=x(v):s.encode=b,o||(f[j(v)]=v)}for(c=0,d=n.length;c<d;++c)h=n[c],p=h.tuple,g=h.field,m=l[j(p)],m>0&&(y(p,g,h.value),s.modifies(g));for(c=0,d=i.length;c<d;++c)h=i[c],g=h.filter,u.forEach(v=>{g(v)&&l[j(v)]>0&&y(v,h.field,h.value)}),s.modifies(h.field);if(o)s.mod=e.length||r.length?u.filter(v=>l[j(v)]>0):u.slice();else for(m in f)s.mod.push(f[m]);return(a||a==null&&(e.length||r.length))&&s.clean(!0),s}}}const Po="_:mod:_";function Jc(){Object.defineProperty(this,Po,{writable:!0,value:{}})}Jc.prototype={set(t,e,n,r){const i=this,a=i[t],o=i[Po];return e!=null&&e>=0?(a[e]!==n||r)&&(a[e]=n,o[e+":"+t]=-1,o[t]=-1):(a!==n||r)&&(i[t]=n,o[t]=L(n)?1+n.length:-1),i},modified(t,e){const n=this[Po];if(arguments.length){if(L(t)){for(let r=0;r<t.length;++r)if(n[t[r]])return!0;return!1}}else{for(const r in n)if(n[r])return!0;return!1}return e!=null&&e>=0?e+1<n[t]||!!n[e+":"+t]:!!n[t]},clear(){return this[Po]={},this}};let e6=0;const n6="pulse",r6=new Jc,i6=1,a6=2;function lt(t,e,n,r){this.id=++e6,this.value=t,this.stamp=-1,this.rank=-1,this.qrank=-1,this.flags=0,e&&(this._update=e),n&&this.parameters(n,r)}function $g(t){return function(e){const n=this.flags;return arguments.length===0?!!(n&t):(this.flags=e?n|t:n&~t,this)}}lt.prototype={targets(){return this._targets||(this._targets=gu(uu))},set(t){return this.value!==t?(this.value=t,1):0},skip:$g(i6),modified:$g(a6),parameters(t,e,n){e=e!==!1;const r=this._argval=this._argval||new Jc,i=this._argops=this._argops||[],a=[];let o,s,u,l;const f=(c,d,h)=>{h instanceof lt?(h!==this&&(e&&h.targets().add(this),a.push(h)),i.push({op:h,name:c,index:d})):r.set(c,d,h)};for(o in t)if(s=t[o],o===n6)G(s).forEach(c=>{c instanceof lt?c!==this&&(c.targets().add(this),a.push(c)):_("Pulse parameters must be operator instances.")}),this.source=s;else if(L(s))for(r.set(o,-1,Array(u=s.length)),l=0;l<u;++l)f(o,l,s[l]);else f(o,-1,s);return this.marshall().clear(),n&&(i.initonly=!0),a},marshall(t){const e=this._argval||r6,n=this._argops;let r,i,a,o;if(n){const s=n.length;for(i=0;i<s;++i)r=n[i],a=r.op,o=a.modified()&&a.stamp===t,e.set(r.name,r.index,a.value,o);if(n.initonly){for(i=0;i<s;++i)r=n[i],r.op.targets().remove(this);this._argops=null,this._update=null}}return e},detach(){const t=this._argops;let e,n,r,i;if(t)for(e=0,n=t.length;e<n;++e)r=t[e],i=r.op,i._targets&&i._targets.remove(this);this.pulse=null,this.source=null},evaluate(t){const e=this._update;if(e){const n=this.marshall(t.stamp),r=e.call(this,n,t);if(n.clear(),r!==this.value)this.value=r;else if(!this.modified())return t.StopPropagation}},run(t){if(t.stamp<this.stamp)return t.StopPropagation;let e;return this.skip()?(this.skip(!1),e=0):e=this.evaluate(t),this.pulse=e||t}};function o6(t,e,n,r){let i=1,a;return t instanceof lt?a=t:t&&t.prototype instanceof lt?a=new t:Z(t)?a=new lt(null,t):(i=0,a=new lt(t,e)),this.rank(a),i&&(r=n,n=e),n&&this.connect(a,a.parameters(n,r)),this.touch(a),a}function s6(t,e){const n=t.rank,r=e.length;for(let i=0;i<r;++i)if(n<e[i].rank){this.rerank(t);return}}let u6=0;function Zc(t,e,n){this.id=++u6,this.value=null,n&&(this.receive=n),t&&(this._filter=t),e&&(this._apply=e)}function _n(t,e,n){return new Zc(t,e,n)}Zc.prototype={_filter:We,_apply:fe,targets(){return this._targets||(this._targets=gu(uu))},consume(t){return arguments.length?(this._consume=!!t,this):!!this._consume},receive(t){if(this._filter(t)){const e=this.value=this._apply(t),n=this._targets,r=n?n.length:0;for(let i=0;i<r;++i)n[i].receive(e);this._consume&&(t.preventDefault(),t.stopPropagation())}},filter(t){const e=_n(t);return this.targets().add(e),e},apply(t){const e=_n(null,t);return this.targets().add(e),e},merge(){const t=_n();this.targets().add(t);for(let e=0,n=arguments.length;e<n;++e)arguments[e].targets().add(t);return t},throttle(t){let e=-1;return this.filter(()=>{const n=Date.now();return n-e>t?(e=n,1):0})},debounce(t){const e=_n();return this.targets().add(_n(null,null,dy(t,n=>{const r=n.dataflow;e.receive(n),r&&r.run&&r.run()}))),e},between(t,e){let n=!1;return t.targets().add(_n(null,null,()=>n=!0)),e.targets().add(_n(null,null,()=>n=!1)),this.filter(()=>n)},detach(){this._filter=We,this._targets=null}};function l6(t,e,n,r){const i=this,a=_n(n,r),o=function(l){l.dataflow=i;try{a.receive(l)}catch(f){i.error(f)}finally{i.run()}};let s;typeof t=="string"&&typeof document<"u"?s=document.querySelectorAll(t):s=G(t);const u=s.length;for(let l=0;l<u;++l)s[l].addEventListener(e,o);return a}function f6(t,e){const n=this.locale();return ZM(t,e,n.timeParse,n.utcParse)}function c6(t,e,n){return e=this.parse(e,n),this.pulse(t,this.changeset().insert(e))}async function d6(t,e){const n=this;let r=0,i;try{i=await n.loader().load(t,{context:"dataflow",response:JM(e&&e.type)});try{i=n.parse(i,e)}catch(a){r=-2,n.warn("Data ingestion failed",t,a)}}catch(a){r=-1,n.warn("Loading failed",t,a)}return{data:i,status:r}}async function h6(t,e,n){const r=this,i=r._pending||g6(r);i.requests+=1;const a=await r.request(e,n);return r.pulse(t,r.changeset().remove(We).insert(a.data||[])),i.done(),a}function g6(t){let e;const n=new Promise(r=>e=r);return n.requests=0,n.done=()=>{--n.requests===0&&(t._pending=null,e(t))},t._pending=n}const p6={skip:!0};function m6(t,e,n,r,i){return(t instanceof lt?v6:y6)(this,t,e,n,r,i),this}function y6(t,e,n,r,i,a){const o=J({},a,p6);let s,u;Z(n)||(n=re(n)),r===void 0?s=l=>t.touch(n(l)):Z(r)?(u=new lt(null,r,i,!1),s=l=>{u.evaluate(l);const f=n(l),c=u.value;qy(c)?t.pulse(f,c,a):t.update(f,c,o)}):s=l=>t.update(n(l),r,o),e.apply(s)}function v6(t,e,n,r,i,a){if(r===void 0)e.targets().add(n);else{const o=a||{},s=new lt(null,b6(n,r),i,!1);s.modified(o.force),s.rank=e.rank,e.targets().add(s),n&&(s.skip(!0),s.value=n.value,s.targets().add(n),t.connect(n,[s]))}}function b6(t,e){return e=Z(e)?e:re(e),t?function(n,r){const i=e(n,r);return t.skip()||(t.skip(i!==this.value).value=i),i}:e}function x6(t){t.rank=++this._rank}function w6(t){const e=[t];let n,r,i;for(;e.length;)if(this.rank(n=e.pop()),r=n._targets)for(i=r.length;--i>=0;)e.push(n=r[i]),n===t&&_("Cycle detected in dataflow graph.")}const $s={},Je=1,On=2,yn=4,E6=Je|On,_g=Je|yn,qr=Je|On|yn,Rg=8,Ai=16,Og=32,zg=64;function yr(t,e,n){this.dataflow=t,this.stamp=e??-1,this.add=[],this.rem=[],this.mod=[],this.fields=null,this.encode=n||null}function dl(t,e){const n=[];return ir(t,e,r=>n.push(r)),n}function Bg(t,e){const n={};return t.visit(e,r=>{n[j(r)]=1}),r=>n[j(r)]?null:r}function xo(t,e){return t?(n,r)=>t(n,r)&&e(n,r):e}yr.prototype={StopPropagation:$s,ADD:Je,REM:On,MOD:yn,ADD_REM:E6,ADD_MOD:_g,ALL:qr,REFLOW:Rg,SOURCE:Ai,NO_SOURCE:Og,NO_FIELDS:zg,fork(t){return new yr(this.dataflow).init(this,t)},clone(){const t=this.fork(qr);return t.add=t.add.slice(),t.rem=t.rem.slice(),t.mod=t.mod.slice(),t.source&&(t.source=t.source.slice()),t.materialize(qr|Ai)},addAll(){let t=this;return!t.source||t.add===t.rem||!t.rem.length&&t.source.length===t.add.length||(t=new yr(this.dataflow).init(this),t.add=t.source,t.rem=[]),t},init(t,e){const n=this;return n.stamp=t.stamp,n.encode=t.encode,t.fields&&!(e&zg)&&(n.fields=t.fields),e&Je?(n.addF=t.addF,n.add=t.add):(n.addF=null,n.add=[]),e&On?(n.remF=t.remF,n.rem=t.rem):(n.remF=null,n.rem=[]),e&yn?(n.modF=t.modF,n.mod=t.mod):(n.modF=null,n.mod=[]),e&Og?(n.srcF=null,n.source=null):(n.srcF=t.srcF,n.source=t.source,t.cleans&&(n.cleans=t.cleans)),n},runAfter(t){this.dataflow.runAfter(t)},changed(t){const e=t||qr;return e&Je&&this.add.length||e&On&&this.rem.length||e&yn&&this.mod.length},reflow(t){if(t)return this.fork(qr).reflow();const e=this.add.length,n=this.source&&this.source.length;return n&&n!==e&&(this.mod=this.source,e&&this.filter(yn,Bg(this,Je))),this},clean(t){return arguments.length?(this.cleans=!!t,this):this.cleans},modifies(t){const e=this.fields||(this.fields={});return L(t)?t.forEach(n=>e[n]=!0):e[t]=!0,this},modified(t,e){const n=this.fields;return(e||this.mod.length)&&n?arguments.length?L(t)?t.some(r=>n[r]):n[t]:!!n:!1},filter(t,e){const n=this;return t&Je&&(n.addF=xo(n.addF,e)),t&On&&(n.remF=xo(n.remF,e)),t&yn&&(n.modF=xo(n.modF,e)),t&Ai&&(n.srcF=xo(n.srcF,e)),n},materialize(t){t=t||qr;const e=this;return t&Je&&e.addF&&(e.add=dl(e.add,e.addF),e.addF=null),t&On&&e.remF&&(e.rem=dl(e.rem,e.remF),e.remF=null),t&yn&&e.modF&&(e.mod=dl(e.mod,e.modF),e.modF=null),t&Ai&&e.srcF&&(e.source=e.source.filter(e.srcF),e.srcF=null),e},visit(t,e){const n=this,r=e;if(t&Ai)return ir(n.source,n.srcF,r),n;t&Je&&ir(n.add,n.addF,r),t&On&&ir(n.rem,n.remF,r),t&yn&&ir(n.mod,n.modF,r);const i=n.source;if(t&Rg&&i){const a=n.add.length+n.mod.length;a===i.length||(a?ir(i,Bg(n,_g),r):ir(i,n.srcF,r))}return n}};function jy(t,e,n,r){const i=this;let a=0;this.dataflow=t,this.stamp=e,this.fields=null,this.encode=r||null,this.pulses=n;for(const o of n)if(o.stamp===e){if(o.fields){const s=i.fields||(i.fields={});for(const u in o.fields)s[u]=1}o.changed(i.ADD)&&(a|=i.ADD),o.changed(i.REM)&&(a|=i.REM),o.changed(i.MOD)&&(a|=i.MOD)}this.changes=a}B(jy,yr,{fork(t){const e=new yr(this.dataflow).init(this,t&this.NO_FIELDS);return t!==void 0&&(t&e.ADD&&this.visit(e.ADD,n=>e.add.push(n)),t&e.REM&&this.visit(e.REM,n=>e.rem.push(n)),t&e.MOD&&this.visit(e.MOD,n=>e.mod.push(n))),e},changed(t){return this.changes&t},modified(t){const e=this,n=e.fields;return n&&e.changes&e.MOD?L(t)?t.some(r=>n[r]):n[t]:0},filter(){_("MultiPulse does not support filtering.")},materialize(){_("MultiPulse does not support materialization.")},visit(t,e){const n=this,r=n.pulses,i=r.length;let a=0;if(t&n.SOURCE)for(;a<i;++a)r[a].visit(t,e);else for(;a<i;++a)r[a].stamp===n.stamp&&r[a].visit(t,e);return n}});async function A6(t,e,n){const r=this,i=[];if(r._pulse)return Uy(r);if(r._pending&&await r._pending,e&&await To(r,e),!r._touched.length)return r.debug("Dataflow invoked, but nothing to do."),r;const a=++r._clock;r._pulse=new yr(r,a,t),r._touched.forEach(f=>r._enqueue(f,!0)),r._touched=gu(uu);let o=0,s,u,l;try{for(;r._heap.size()>0;){if(s=r._heap.pop(),s.rank!==s.qrank){r._enqueue(s,!0);continue}u=s.run(r._getPulse(s,t)),u.then?u=await u:u.async&&(i.push(u.async),u=$s),u!==$s&&s._targets&&s._targets.forEach(f=>r._enqueue(f)),++o}}catch(f){r._heap.clear(),l=f}if(r._input={},r._pulse=null,r.debug(`Pulse ${a}: ${o} operators`),l&&(r._postrun=[],r.error(l)),r._postrun.length){const f=r._postrun.sort((c,d)=>d.priority-c.priority);r._postrun=[];for(let c=0;c<f.length;++c)await To(r,f[c].callback)}return n&&await To(r,n),i.length&&Promise.all(i).then(f=>r.runAsync(null,()=>{f.forEach(c=>{try{c(r)}catch(d){r.error(d)}})})),r}async function k6(t,e,n){for(;this._running;)await this._running;const r=()=>this._running=null;return(this._running=this.evaluate(t,e,n)).then(r,r),this._running}function M6(t,e,n){return this._pulse?Uy(this):(this.evaluate(t,e,n),this)}function D6(t,e,n){if(this._pulse||e)this._postrun.push({priority:n||0,callback:t});else try{t(this)}catch(r){this.error(r)}}function Uy(t){return t.error("Dataflow already running. Use runAsync() to chain invocations."),t}function C6(t,e){const n=t.stamp<this._clock;n&&(t.stamp=this._clock),(n||e)&&(t.qrank=t.rank,this._heap.push(t))}function S6(t,e){const n=t.source,r=this._clock;return n&&L(n)?new jy(this,r,n.map(i=>i.pulse),e):this._input[t.id]||F6(this._pulse,n&&n.pulse)}function F6(t,e){return e&&e.stamp===t.stamp?e:(t=t.fork(),e&&e!==$s&&(t.source=e.source),t)}const Qc={skip:!1,force:!1};function $6(t,e){const n=e||Qc;return this._pulse?this._enqueue(t):this._touched.add(t),n.skip&&t.skip(!0),this}function _6(t,e,n){const r=n||Qc;return(t.set(e)||r.force)&&this.touch(t,r),this}function R6(t,e,n){this.touch(t,n||Qc);const r=new yr(this,this._clock+(this._pulse?0:1)),i=t.pulse&&t.pulse.source||[];return r.target=t,this._input[t.id]=e.pulse(r,i),this}function O6(t){let e=[];return{clear:()=>e=[],size:()=>e.length,peek:()=>e[0],push:n=>(e.push(n),Wy(e,0,e.length-1,t)),pop:()=>{const n=e.pop();let r;return e.length?(r=e[0],e[0]=n,z6(e,0,t)):r=n,r}}}function Wy(t,e,n,r){let i,a;const o=t[n];for(;n>e;){if(a=n-1>>1,i=t[a],r(o,i)<0){t[n]=i,n=a;continue}break}return t[n]=o}function z6(t,e,n){const r=e,i=t.length,a=t[e];let o=(e<<1)+1,s;for(;o<i;)s=o+1,s<i&&n(t[o],t[s])>=0&&(o=s),t[e]=t[o],e=o,o=(e<<1)+1;return t[e]=a,Wy(t,r,e,n)}function oa(){this.logger(M5()),this.logLevel(ny),this._clock=0,this._rank=0,this._locale=zy();try{this._loader=Vc()}catch{}this._touched=gu(uu),this._input={},this._pulse=null,this._heap=O6((t,e)=>t.qrank-e.qrank),this._postrun=[]}function ki(t){return function(){return this._log[t].apply(this,arguments)}}oa.prototype={stamp(){return this._clock},loader(t){return arguments.length?(this._loader=t,this):this._loader},locale(t){return arguments.length?(this._locale=t,this):this._locale},logger(t){return arguments.length?(this._log=t,this):this._log},error:ki("error"),warn:ki("warn"),info:ki("info"),debug:ki("debug"),logLevel:ki("level"),cleanThreshold:1e4,add:o6,connect:s6,rank:x6,rerank:w6,pulse:R6,touch:$6,update:_6,changeset:di,ingest:c6,parse:f6,preload:h6,request:d6,events:l6,on:m6,evaluate:A6,run:M6,runAsync:k6,runAfter:D6,_enqueue:C6,_getPulse:S6};function F(t,e){lt.call(this,t,null,e)}B(F,lt,{run(t){if(t.stamp<this.stamp)return t.StopPropagation;let e;return this.skip()?this.skip(!1):e=this.evaluate(t),e=e||t,e.then?e=e.then(n=>this.pulse=n):e!==t.StopPropagation&&(this.pulse=e),e},evaluate(t){const e=this.marshall(t.stamp),n=this.transform(e,t);return e.clear(),n},transform(){}});const ba={};function B6(t){const e=T6(t);return e&&e.Definition||null}function T6(t){return t=t&&t.toLowerCase(),H(ba,t)?ba[t]:null}function*Gy(t,e){if(e==null)for(let n of t)n!=null&&n!==""&&(n=+n)>=n&&(yield n);else{let n=-1;for(let r of t)r=e(r,++n,t),r!=null&&r!==""&&(r=+r)>=r&&(yield r)}}function Yy(t,e,n){const r=Float64Array.from(Gy(t,n));return r.sort(ha),e.map(i=>V1(r,i))}function Hy(t,e){return Yy(t,[.25,.5,.75],e)}function Vy(t,e){const n=t.length,r=XE(t,e),i=Hy(t,e),a=(i[2]-i[0])/1.34;return 1.06*(Math.min(r,a)||r||Math.abs(i[0])||1)*Math.pow(n,-.2)}function P6(t){const e=t.maxbins||20,n=t.base||10,r=Math.log(n),i=t.divide||[5,2];let a=t.extent[0],o=t.extent[1],s,u,l,f,c,d;const h=t.span||o-a||Math.abs(a)||1;if(t.step)s=t.step;else if(t.steps){for(f=h/e,c=0,d=t.steps.length;c<d&&t.steps[c]<f;++c);s=t.steps[Math.max(0,c-1)]}else{for(u=Math.ceil(Math.log(e)/r),l=t.minstep||0,s=Math.max(l,Math.pow(n,Math.round(Math.log(h)/r)-u));Math.ceil(h/s)>e;)s*=n;for(c=0,d=i.length;c<d;++c)f=s/i[c],f>=l&&h/f<=e&&(s=f)}f=Math.log(s);const g=f>=0?0:~~(-f/r)+1,p=Math.pow(n,-g-1);return(t.nice||t.nice===void 0)&&(f=Math.floor(a/s+p)*s,a=a<f?f-s:f,o=Math.ceil(o/s)*s),{start:a,stop:o===a?a+s:o,step:s}}var Ye=Math.random;function zT(t){Ye=t}function L6(t,e,n,r){if(!t.length)return[void 0,void 0];const i=Float64Array.from(Gy(t,r)),a=i.length,o=e;let s,u,l,f;for(l=0,f=Array(o);l<o;++l){for(s=0,u=0;u<a;++u)s+=i[~~(Ye()*a)];f[l]=s/a}return f.sort(ha),[Vl(f,n/2),Vl(f,1-n/2)]}function N6(t,e,n,r){r=r||(d=>d);const i=t.length,a=new Float64Array(i);let o=0,s=1,u=r(t[0]),l=u,f=u+e,c;for(;s<i;++s){if(c=r(t[s]),c>=f){for(l=(u+l)/2;o<s;++o)a[o]=l;f=c+e,u=c}l=c}for(l=(u+l)/2;o<s;++o)a[o]=l;return n?I6(a,e+e/4):a}function I6(t,e){const n=t.length;let r=0,i=1,a,o;for(;t[r]===t[i];)++i;for(;i<n;){for(a=i+1;t[i]===t[a];)++a;if(t[i]-t[i-1]<e){for(o=i+(r+a-i-i>>1);o<i;)t[o++]=t[i];for(;o>i;)t[o--]=t[r]}r=i,i=a}return t}function BT(t){return function(){return t=(1103515245*t+12345)%2147483647,t/2147483647}}function TT(t,e){e==null&&(e=t,t=0);let n,r,i;const a={min(o){return arguments.length?(n=o||0,i=r-n,a):n},max(o){return arguments.length?(r=o||0,i=r-n,a):r},sample(){return n+Math.floor(i*Ye())},pdf(o){return o===Math.floor(o)&&o>=n&&o<r?1/i:0},cdf(o){const s=Math.floor(o);return s<n?0:s>=r?1:(s-n+1)/i},icdf(o){return o>=0&&o<=1?n-1+Math.floor(o*i):NaN}};return a.min(t).max(e)}const Xy=Math.sqrt(2*Math.PI),q6=Math.SQRT2;let Mi=NaN;function td(t,e){t=t||0,e=e??1;let n=0,r=0,i,a;if(Mi===Mi)n=Mi,Mi=NaN;else{do n=Ye()*2-1,r=Ye()*2-1,i=n*n+r*r;while(i===0||i>1);a=Math.sqrt(-2*Math.log(i)/i),n*=a,Mi=r*a}return t+n*e}function Ky(t,e,n){n=n??1;const r=(t-(e||0))/n;return Math.exp(-.5*r*r)/(n*Xy)}function ed(t,e,n){e=e||0,n=n??1;const r=(t-e)/n,i=Math.abs(r);let a;if(i>37)a=0;else{const o=Math.exp(-i*i/2);let s;i<7.07106781186547?(s=.0352624965998911*i+.700383064443688,s=s*i+6.37396220353165,s=s*i+33.912866078383,s=s*i+112.079291497871,s=s*i+221.213596169931,s=s*i+220.206867912376,a=o*s,s=.0883883476483184*i+1.75566716318264,s=s*i+16.064177579207,s=s*i+86.7807322029461,s=s*i+296.564248779674,s=s*i+637.333633378831,s=s*i+793.826512519948,s=s*i+440.413735824752,a=a/s):(s=i+.65,s=i+4/s,s=i+3/s,s=i+2/s,s=i+1/s,a=o/s/2.506628274631)}return r>0?1-a:a}function nd(t,e,n){return t<0||t>1?NaN:(e||0)+(n??1)*q6*j6(2*t-1)}function j6(t){let e=-Math.log((1-t)*(1+t)),n;return e<6.25?(e-=3.125,n=-364441206401782e-35,n=-16850591381820166e-35+n*e,n=128584807152564e-32+n*e,n=11157877678025181e-33+n*e,n=-1333171662854621e-31+n*e,n=20972767875968562e-33+n*e,n=6637638134358324e-30+n*e,n=-4054566272975207e-29+n*e,n=-8151934197605472e-29+n*e,n=26335093153082323e-28+n*e,n=-12975133253453532e-27+n*e,n=-5415412054294628e-26+n*e,n=10512122733215323e-25+n*e,n=-4112633980346984e-24+n*e,n=-29070369957882005e-24+n*e,n=42347877827932404e-23+n*e,n=-13654692000834679e-22+n*e,n=-13882523362786469e-21+n*e,n=.00018673420803405714+n*e,n=-.000740702534166267+n*e,n=-.006033670871430149+n*e,n=.24015818242558962+n*e,n=1.6536545626831027+n*e):e<16?(e=Math.sqrt(e)-3.25,n=22137376921775787e-25,n=9075656193888539e-23+n*e,n=-27517406297064545e-23+n*e,n=18239629214389228e-24+n*e,n=15027403968909828e-22+n*e,n=-4013867526981546e-21+n*e,n=29234449089955446e-22+n*e,n=12475304481671779e-21+n*e,n=-47318229009055734e-21+n*e,n=6828485145957318e-20+n*e,n=24031110387097894e-21+n*e,n=-.0003550375203628475+n*e,n=.0009532893797373805+n*e,n=-.0016882755560235047+n*e,n=.002491442096107851+n*e,n=-.003751208507569241+n*e,n=.005370914553590064+n*e,n=1.0052589676941592+n*e,n=3.0838856104922208+n*e):Number.isFinite(e)?(e=Math.sqrt(e)-5,n=-27109920616438573e-27,n=-2555641816996525e-25+n*e,n=15076572693500548e-25+n*e,n=-3789465440126737e-24+n*e,n=761570120807834e-23+n*e,n=-1496002662714924e-23+n*e,n=2914795345090108e-23+n*e,n=-6771199775845234e-23+n*e,n=22900482228026655e-23+n*e,n=-99298272942317e-20+n*e,n=4526062597223154e-21+n*e,n=-1968177810553167e-20+n*e,n=7599527703001776e-20+n*e,n=-.00021503011930044477+n*e,n=-.00013871931833623122+n*e,n=1.0103004648645344+n*e,n=4.849906401408584+n*e):n=1/0,n*t}function Jy(t,e){let n,r;const i={mean(a){return arguments.length?(n=a||0,i):n},stdev(a){return arguments.length?(r=a??1,i):r},sample:()=>td(n,r),pdf:a=>Ky(a,n,r),cdf:a=>ed(a,n,r),icdf:a=>nd(a,n,r)};return i.mean(t).stdev(e)}function Zy(t,e){const n=Jy();let r=0;const i={data(a){return arguments.length?(t=a,r=a?a.length:0,i.bandwidth(e)):t},bandwidth(a){return arguments.length?(e=a,!e&&t&&(e=Vy(t)),i):e},sample(){return t[~~(Ye()*r)]+e*n.sample()},pdf(a){let o=0,s=0;for(;s<r;++s)o+=n.pdf((a-t[s])/e);return o/e/r},cdf(a){let o=0,s=0;for(;s<r;++s)o+=n.cdf((a-t[s])/e);return o/r},icdf(){throw Error("KDE icdf not supported.")}};return i.data(t)}function Qy(t,e){return t=t||0,e=e??1,Math.exp(t+td()*e)}function t2(t,e,n){if(t<=0)return 0;e=e||0,n=n??1;const r=(Math.log(t)-e)/n;return Math.exp(-.5*r*r)/(n*Xy*t)}function e2(t,e,n){return ed(Math.log(t),e,n)}function n2(t,e,n){return Math.exp(nd(t,e,n))}function U6(t,e){let n,r;const i={mean(a){return arguments.length?(n=a||0,i):n},stdev(a){return arguments.length?(r=a??1,i):r},sample:()=>Qy(n,r),pdf:a=>t2(a,n,r),cdf:a=>e2(a,n,r),icdf:a=>n2(a,n,r)};return i.mean(t).stdev(e)}function W6(t,e){let n=0,r;function i(o){const s=[];let u=0,l;for(l=0;l<n;++l)u+=s[l]=o[l]==null?1:+o[l];for(l=0;l<n;++l)s[l]/=u;return s}const a={weights(o){return arguments.length?(r=i(e=o||[]),a):e},distributions(o){return arguments.length?(o?(n=o.length,t=o):(n=0,t=[]),a.weights(e)):t},sample(){const o=Ye();let s=t[n-1],u=r[0],l=0;for(;l<n-1;u+=r[++l])if(o<u){s=t[l];break}return s.sample()},pdf(o){let s=0,u=0;for(;u<n;++u)s+=r[u]*t[u].pdf(o);return s},cdf(o){let s=0,u=0;for(;u<n;++u)s+=r[u]*t[u].cdf(o);return s},icdf(){throw Error("Mixture icdf not supported.")}};return a.distributions(t).weights(e)}function r2(t,e){return e==null&&(e=t??1,t=0),t+(e-t)*Ye()}function i2(t,e,n){return n==null&&(n=e??1,e=0),t>=e&&t<=n?1/(n-e):0}function a2(t,e,n){return n==null&&(n=e??1,e=0),t<e?0:t>n?1:(t-e)/(n-e)}function o2(t,e,n){return n==null&&(n=e??1,e=0),t>=0&&t<=1?e+t*(n-e):NaN}function G6(t,e){let n,r;const i={min(a){return arguments.length?(n=a||0,i):n},max(a){return arguments.length?(r=a??1,i):r},sample:()=>r2(n,r),pdf:a=>i2(a,n,r),cdf:a=>a2(a,n,r),icdf:a=>o2(a,n,r)};return e==null&&(e=t??1,t=0),i.min(t).max(e)}function s2(t,e,n){let r=0,i=0;for(const a of t){const o=n(a);e(a)==null||o==null||isNaN(o)||(r+=(o-r)/++i)}return{coef:[r],predict:()=>r,rSquared:0}}function qa(t,e,n,r){const i=r-t*t,a=Math.abs(i)<1e-24?0:(n-t*e)/i;return[e-a*t,a]}function mu(t,e,n,r){t=t.filter(h=>{let g=e(h),p=n(h);return g!=null&&(g=+g)>=g&&p!=null&&(p=+p)>=p}),r&&t.sort((h,g)=>e(h)-e(g));const i=t.length,a=new Float64Array(i),o=new Float64Array(i);let s=0,u=0,l=0,f,c,d;for(d of t)a[s]=f=+e(d),o[s]=c=+n(d),++s,u+=(f-u)/s,l+=(c-l)/s;for(s=0;s<i;++s)a[s]-=u,o[s]-=l;return[a,o,u,l]}function ja(t,e,n,r){let i=-1,a,o;for(const s of t)a=e(s),o=n(s),a!=null&&(a=+a)>=a&&o!=null&&(o=+o)>=o&&r(a,o,++i)}function hi(t,e,n,r,i){let a=0,o=0;return ja(t,e,n,(s,u)=>{const l=u-i(s),f=u-r;a+=l*l,o+=f*f}),1-a/o}function u2(t,e,n){let r=0,i=0,a=0,o=0,s=0;ja(t,e,n,(f,c)=>{++s,r+=(f-r)/s,i+=(c-i)/s,a+=(f*c-a)/s,o+=(f*f-o)/s});const u=qa(r,i,a,o),l=f=>u[0]+u[1]*f;return{coef:u,predict:l,rSquared:hi(t,e,n,i,l)}}function Y6(t,e,n){let r=0,i=0,a=0,o=0,s=0;ja(t,e,n,(f,c)=>{++s,f=Math.log(f),r+=(f-r)/s,i+=(c-i)/s,a+=(f*c-a)/s,o+=(f*f-o)/s});const u=qa(r,i,a,o),l=f=>u[0]+u[1]*Math.log(f);return{coef:u,predict:l,rSquared:hi(t,e,n,i,l)}}function H6(t,e,n){const[r,i,a,o]=mu(t,e,n);let s=0,u=0,l=0,f=0,c=0,d,h,g;ja(t,e,n,(v,b)=>{d=r[c++],h=Math.log(b),g=d*b,s+=(b*h-s)/c,u+=(g-u)/c,l+=(g*h-l)/c,f+=(d*g-f)/c});const[p,m]=qa(u/o,s/o,l/o,f/o),y=v=>Math.exp(p+m*(v-a));return{coef:[Math.exp(p-m*a),m],predict:y,rSquared:hi(t,e,n,o,y)}}function V6(t,e,n){let r=0,i=0,a=0,o=0,s=0,u=0;ja(t,e,n,(c,d)=>{const h=Math.log(c),g=Math.log(d);++u,r+=(h-r)/u,i+=(g-i)/u,a+=(h*g-a)/u,o+=(h*h-o)/u,s+=(d-s)/u});const l=qa(r,i,a,o),f=c=>l[0]*Math.pow(c,l[1]);return l[0]=Math.exp(l[0]),{coef:l,predict:f,rSquared:hi(t,e,n,s,f)}}function l2(t,e,n){const[r,i,a,o]=mu(t,e,n),s=r.length;let u=0,l=0,f=0,c=0,d=0,h,g,p,m;for(h=0;h<s;)g=r[h],p=i[h++],m=g*g,u+=(m-u)/h,l+=(m*g-l)/h,f+=(m*m-f)/h,c+=(g*p-c)/h,d+=(m*p-d)/h;const y=f-u*u,v=u*y-l*l,b=(d*u-c*l)/v,x=(c*y-d*l)/v,E=-b*u,A=w=>(w=w-a,b*w*w+x*w+E+o);return{coef:[E-x*a+b*a*a+o,x-2*b*a,b],predict:A,rSquared:hi(t,e,n,o,A)}}function X6(t,e,n,r){if(r===0)return s2(t,e,n);if(r===1)return u2(t,e,n);if(r===2)return l2(t,e,n);const[i,a,o,s]=mu(t,e,n),u=i.length,l=[],f=[],c=r+1;let d,h,g,p,m;for(d=0;d<c;++d){for(g=0,p=0;g<u;++g)p+=Math.pow(i[g],d)*a[g];for(l.push(p),m=new Float64Array(c),h=0;h<c;++h){for(g=0,p=0;g<u;++g)p+=Math.pow(i[g],d+h);m[h]=p}f.push(m)}f.push(l);const y=J6(f),v=b=>{b-=o;let x=s+y[0]+y[1]*b+y[2]*b*b;for(d=3;d<c;++d)x+=y[d]*Math.pow(b,d);return x};return{coef:K6(c,y,-o,s),predict:v,rSquared:hi(t,e,n,s,v)}}function K6(t,e,n,r){const i=Array(t);let a,o,s,u;for(a=0;a<t;++a)i[a]=0;for(a=t-1;a>=0;--a)for(s=e[a],u=1,i[a]+=s,o=1;o<=a;++o)u*=(a+1-o)/o,i[a-o]+=s*Math.pow(n,o)*u;return i[0]+=r,i}function J6(t){const e=t.length-1,n=[];let r,i,a,o,s;for(r=0;r<e;++r){for(o=r,i=r+1;i<e;++i)Math.abs(t[r][i])>Math.abs(t[r][o])&&(o=i);for(a=r;a<e+1;++a)s=t[a][r],t[a][r]=t[a][o],t[a][o]=s;for(i=r+1;i<e;++i)for(a=e;a>=r;a--)t[a][i]-=t[a][r]*t[r][i]/t[r][r]}for(i=e-1;i>=0;--i){for(s=0,a=i+1;a<e;++a)s+=t[a][i]*n[a];n[i]=(t[e][i]-s)/t[i][i]}return n}const Tg=2,Pg=1e-12;function Z6(t,e,n,r){const[i,a,o,s]=mu(t,e,n,!0),u=i.length,l=Math.max(2,~~(r*u)),f=new Float64Array(u),c=new Float64Array(u),d=new Float64Array(u).fill(1);for(let h=-1;++h<=Tg;){const g=[0,l-1];for(let m=0;m<u;++m){const y=i[m],v=g[0],b=g[1],x=y-i[v]>i[b]-y?v:b;let E=0,A=0,w=0,k=0,M=0;const D=1/Math.abs(i[x]-y||1);for(let z=v;z<=b;++z){const T=i[z],C=a[z],R=Q6(Math.abs(y-T)*D)*d[z],N=T*R;E+=R,A+=N,w+=C*R,k+=C*N,M+=T*N}const[S,O]=qa(A/E,w/E,k/E,M/E);f[m]=S+O*y,c[m]=Math.abs(a[m]-f[m]),tD(i,m+1,g)}if(h===Tg)break;const p=X1(c);if(Math.abs(p)<Pg)break;for(let m=0,y,v;m<u;++m)y=c[m]/(6*p),d[m]=y>=1?Pg:(v=1-y*y)*v}return eD(i,f,o,s)}function Q6(t){return(t=1-t*t*t)*t*t}function tD(t,e,n){const r=t[e];let i=n[0],a=n[1]+1;if(!(a>=t.length))for(;e>i&&t[a]-r<=r-t[i];)n[0]=++i,n[1]=a,++a}function eD(t,e,n,r){const i=t.length,a=[];let o=0,s=0,u=[],l;for(;o<i;++o)l=t[o]+n,u[0]===l?u[1]+=(e[o]-u[1])/++s:(s=0,u[1]+=r,u=[l,e[o]],a.push(u));return u[1]+=r,a}const nD=.5*Math.PI/180;function rd(t,e,n,r){n=n||25,r=Math.max(n,r||200);const i=p=>[p,t(p)],a=e[0],o=e[1],s=o-a,u=s/r,l=[i(a)],f=[];if(n===r){for(let p=1;p<r;++p)l.push(i(a+p/n*s));return l.push(i(o)),l}else{f.push(i(o));for(let p=n;--p>0;)f.push(i(a+p/n*s))}let c=l[0],d=f[f.length-1];const h=1/s,g=rD(c[1],f);for(;d;){const p=i((c[0]+d[0])/2);p[0]-c[0]>=u&&iD(c,p,d,h,g)>nD?f.push(p):(c=d,l.push(d),f.pop()),d=f[f.length-1]}return l}function rD(t,e){let n=t,r=t;const i=e.length;for(let a=0;a<i;++a){const o=e[a][1];o<n&&(n=o),o>r&&(r=o)}return 1/(r-n)}function iD(t,e,n,r,i){const a=Math.atan2(i*(n[1]-t[1]),r*(n[0]-t[0])),o=Math.atan2(i*(e[1]-t[1]),r*(e[0]-t[0]));return Math.abs(a-o)}function aD(t){return e=>{const n=t.length;let r=1,i=String(t[0](e));for(;r<n;++r)i+="|"+t[r](e);return i}}function Sf(t){return!t||!t.length?function(){return""}:t.length===1?t[0]:aD(t)}function f2(t,e,n){return n||t+(e?"_"+e:"")}const hl=()=>{},oD={init:hl,add:hl,rem:hl,idx:0},xa={values:{init:t=>t.cell.store=!0,value:t=>t.cell.data.values(),idx:-1},count:{value:t=>t.cell.num},__count__:{value:t=>t.missing+t.valid},missing:{value:t=>t.missing},valid:{value:t=>t.valid},sum:{init:t=>t.sum=0,value:t=>t.valid?t.sum:void 0,add:(t,e)=>t.sum+=+e,rem:(t,e)=>t.sum-=e},product:{init:t=>t.product=1,value:t=>t.valid?t.product:void 0,add:(t,e)=>t.product*=e,rem:(t,e)=>t.product/=e},mean:{init:t=>t.mean=0,value:t=>t.valid?t.mean:void 0,add:(t,e)=>(t.mean_d=e-t.mean,t.mean+=t.mean_d/t.valid),rem:(t,e)=>(t.mean_d=e-t.mean,t.mean-=t.valid?t.mean_d/t.valid:t.mean)},average:{value:t=>t.valid?t.mean:void 0,req:["mean"],idx:1},variance:{init:t=>t.dev=0,value:t=>t.valid>1?t.dev/(t.valid-1):void 0,add:(t,e)=>t.dev+=t.mean_d*(e-t.mean),rem:(t,e)=>t.dev-=t.mean_d*(e-t.mean),req:["mean"],idx:1},variancep:{value:t=>t.valid>1?t.dev/t.valid:void 0,req:["variance"],idx:2},stdev:{value:t=>t.valid>1?Math.sqrt(t.dev/(t.valid-1)):void 0,req:["variance"],idx:2},stdevp:{value:t=>t.valid>1?Math.sqrt(t.dev/t.valid):void 0,req:["variance"],idx:2},stderr:{value:t=>t.valid>1?Math.sqrt(t.dev/(t.valid*(t.valid-1))):void 0,req:["variance"],idx:2},distinct:{value:t=>t.cell.data.distinct(t.get),req:["values"],idx:3},ci0:{value:t=>t.cell.data.ci0(t.get),req:["values"],idx:3},ci1:{value:t=>t.cell.data.ci1(t.get),req:["values"],idx:3},median:{value:t=>t.cell.data.q2(t.get),req:["values"],idx:3},q1:{value:t=>t.cell.data.q1(t.get),req:["values"],idx:3},q3:{value:t=>t.cell.data.q3(t.get),req:["values"],idx:3},min:{init:t=>t.min=void 0,value:t=>t.min=Number.isNaN(t.min)?t.cell.data.min(t.get):t.min,add:(t,e)=>{(e<t.min||t.min===void 0)&&(t.min=e)},rem:(t,e)=>{e<=t.min&&(t.min=NaN)},req:["values"],idx:4},max:{init:t=>t.max=void 0,value:t=>t.max=Number.isNaN(t.max)?t.cell.data.max(t.get):t.max,add:(t,e)=>{(e>t.max||t.max===void 0)&&(t.max=e)},rem:(t,e)=>{e>=t.max&&(t.max=NaN)},req:["values"],idx:4},argmin:{init:t=>t.argmin=void 0,value:t=>t.argmin||t.cell.data.argmin(t.get),add:(t,e,n)=>{e<t.min&&(t.argmin=n)},rem:(t,e)=>{e<=t.min&&(t.argmin=void 0)},req:["min","values"],idx:3},argmax:{init:t=>t.argmax=void 0,value:t=>t.argmax||t.cell.data.argmax(t.get),add:(t,e,n)=>{e>t.max&&(t.argmax=n)},rem:(t,e)=>{e>=t.max&&(t.argmax=void 0)},req:["max","values"],idx:3},exponential:{init:(t,e)=>{t.exp=0,t.exp_r=e},value:t=>t.valid?t.exp*(1-t.exp_r)/(1-t.exp_r**t.valid):void 0,add:(t,e)=>t.exp=t.exp_r*t.exp+e,rem:(t,e)=>t.exp=(t.exp-e/t.exp_r**(t.valid-1))/t.exp_r},exponentialb:{value:t=>t.valid?t.exp*(1-t.exp_r):void 0,req:["exponential"],idx:1}},Ua=Object.keys(xa).filter(t=>t!=="__count__");function sD(t,e){return(n,r)=>J({name:t,aggregate_param:r,out:n||t},oD,e)}[...Ua,"__count__"].forEach(t=>{xa[t]=sD(t,xa[t])});function c2(t,e,n){return xa[t](n,e)}function d2(t,e){return t.idx-e.idx}function uD(t){const e={};t.forEach(r=>e[r.name]=r);const n=r=>{r.req&&r.req.forEach(i=>{e[i]||n(e[i]=xa[i]())})};return t.forEach(n),Object.values(e).sort(d2)}function lD(){this.valid=0,this.missing=0,this._ops.forEach(t=>t.aggregate_param==null?t.init(this):t.init(this,t.aggregate_param))}function fD(t,e){if(t==null||t===""){++this.missing;return}t===t&&(++this.valid,this._ops.forEach(n=>n.add(this,t,e)))}function cD(t,e){if(t==null||t===""){--this.missing;return}t===t&&(--this.valid,this._ops.forEach(n=>n.rem(this,t,e)))}function dD(t){return this._out.forEach(e=>t[e.out]=e.value(this)),t}function h2(t,e){const n=e||fe,r=uD(t),i=t.slice().sort(d2);function a(o){this._ops=r,this._out=i,this.cell=o,this.init()}return a.prototype.init=lD,a.prototype.add=fD,a.prototype.rem=cD,a.prototype.set=dD,a.prototype.get=n,a.fields=t.map(o=>o.out),a}function id(t){this._key=t?Ue(t):j,this.reset()}const Rt=id.prototype;Rt.reset=function(){this._add=[],this._rem=[],this._ext=null,this._get=null,this._q=null};Rt.add=function(t){this._add.push(t)};Rt.rem=function(t){this._rem.push(t)};Rt.values=function(){if(this._get=null,this._rem.length===0)return this._add;const t=this._add,e=this._rem,n=this._key,r=t.length,i=e.length,a=Array(r-i),o={};let s,u,l;for(s=0;s<i;++s)o[n(e[s])]=1;for(s=0,u=0;s<r;++s)o[n(l=t[s])]?o[n(l)]=0:a[u++]=l;return this._rem=[],this._add=a};Rt.distinct=function(t){const e=this.values(),n={};let r=e.length,i=0,a;for(;--r>=0;)a=t(e[r])+"",H(n,a)||(n[a]=1,++i);return i};Rt.extent=function(t){if(this._get!==t||!this._ext){const e=this.values(),n=N5(e,t);this._ext=[e[n[0]],e[n[1]]],this._get=t}return this._ext};Rt.argmin=function(t){return this.extent(t)[0]||{}};Rt.argmax=function(t){return this.extent(t)[1]||{}};Rt.min=function(t){const e=this.extent(t)[0];return e!=null?t(e):void 0};Rt.max=function(t){const e=this.extent(t)[1];return e!=null?t(e):void 0};Rt.quartile=function(t){return(this._get!==t||!this._q)&&(this._q=Hy(this.values(),t),this._get=t),this._q};Rt.q1=function(t){return this.quartile(t)[0]};Rt.q2=function(t){return this.quartile(t)[1]};Rt.q3=function(t){return this.quartile(t)[2]};Rt.ci=function(t){return(this._get!==t||!this._ci)&&(this._ci=L6(this.values(),1e3,.05,t),this._get=t),this._ci};Rt.ci0=function(t){return this.ci(t)[0]};Rt.ci1=function(t){return this.ci(t)[1]};function Wn(t){F.call(this,null,t),this._adds=[],this._mods=[],this._alen=0,this._mlen=0,this._drop=!0,this._cross=!1,this._dims=[],this._dnames=[],this._measures=[],this._countOnly=!1,this._counts=null,this._prev=null,this._inputs=null,this._outputs=null}Wn.Definition={type:"Aggregate",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:Ua},{name:"aggregate_params",type:"number",null:!0,array:!0},{name:"fields",type:"field",null:!0,array:!0},{name:"as",type:"string",null:!0,array:!0},{name:"drop",type:"boolean",default:!0},{name:"cross",type:"boolean",default:!1},{name:"key",type:"field"}]};B(Wn,F,{transform(t,e){const n=this,r=e.fork(e.NO_SOURCE|e.NO_FIELDS),i=t.modified();return n.stamp=r.stamp,n.value&&(i||e.modified(n._inputs,!0))?(n._prev=n.value,n.value=i?n.init(t):Object.create(null),e.visit(e.SOURCE,a=>n.add(a))):(n.value=n.value||n.init(t),e.visit(e.REM,a=>n.rem(a)),e.visit(e.ADD,a=>n.add(a))),r.modifies(n._outputs),n._drop=t.drop!==!1,t.cross&&n._dims.length>1&&(n._drop=!1,n.cross()),e.clean()&&n._drop&&r.clean(!0).runAfter(()=>this.clean()),n.changes(r)},cross(){const t=this,e=t.value,n=t._dnames,r=n.map(()=>({})),i=n.length;function a(s){let u,l,f,c;for(u in s)for(f=s[u].tuple,l=0;l<i;++l)r[l][c=f[n[l]]]=c}a(t._prev),a(e);function o(s,u,l){const f=n[l],c=r[l++];for(const d in c){const h=s?s+"|"+d:d;u[f]=c[d],l<i?o(h,u,l):e[h]||t.cell(h,u)}}o("",{},0)},init(t){const e=this._inputs=[],n=this._outputs=[],r={};function i(v){const b=G(Zt(v)),x=b.length;let E=0,A;for(;E<x;++E)r[A=b[E]]||(r[A]=1,e.push(A))}this._dims=G(t.groupby),this._dnames=this._dims.map(v=>{const b=yt(v);return i(v),n.push(b),b}),this.cellkey=t.key?t.key:Sf(this._dims),this._countOnly=!0,this._counts=[],this._measures=[];const a=t.fields||[null],o=t.ops||["count"],s=t.aggregate_params||[null],u=t.as||[],l=a.length,f={};let c,d,h,g,p,m,y;for(l!==o.length&&_("Unmatched number of fields and aggregate ops."),y=0;y<l;++y){if(c=a[y],d=o[y],h=s[y]||null,c==null&&d!=="count"&&_("Null aggregate field specified."),p=yt(c),m=f2(d,p,u[y]),n.push(m),d==="count"){this._counts.push(m);continue}g=f[p],g||(i(c),g=f[p]=[],g.field=c,this._measures.push(g)),d!=="count"&&(this._countOnly=!1),g.push(c2(d,h,m))}return this._measures=this._measures.map(v=>h2(v,v.field)),Object.create(null)},cellkey:Sf(),cell(t,e){let n=this.value[t];return n?n.num===0&&this._drop&&n.stamp<this.stamp?(n.stamp=this.stamp,this._adds[this._alen++]=n):n.stamp<this.stamp&&(n.stamp=this.stamp,this._mods[this._mlen++]=n):(n=this.value[t]=this.newcell(t,e),this._adds[this._alen++]=n),n},newcell(t,e){const n={key:t,num:0,agg:null,tuple:this.newtuple(e,this._prev&&this._prev[t]),stamp:this.stamp,store:!1};if(!this._countOnly){const r=this._measures,i=r.length;n.agg=Array(i);for(let a=0;a<i;++a)n.agg[a]=new r[a](n)}return n.store&&(n.data=new id),n},newtuple(t,e){const n=this._dnames,r=this._dims,i=r.length,a={};for(let o=0;o<i;++o)a[n[o]]=r[o](t);return e?Iy(e.tuple,a):ot(a)},clean(){const t=this.value;for(const e in t)t[e].num===0&&delete t[e]},add(t){const e=this.cellkey(t),n=this.cell(e,t);if(n.num+=1,this._countOnly)return;n.store&&n.data.add(t);const r=n.agg;for(let i=0,a=r.length;i<a;++i)r[i].add(r[i].get(t),t)},rem(t){const e=this.cellkey(t),n=this.cell(e,t);if(n.num-=1,this._countOnly)return;n.store&&n.data.rem(t);const r=n.agg;for(let i=0,a=r.length;i<a;++i)r[i].rem(r[i].get(t),t)},celltuple(t){const e=t.tuple,n=this._counts;t.store&&t.data.values();for(let r=0,i=n.length;r<i;++r)e[n[r]]=t.num;if(!this._countOnly){const r=t.agg;for(let i=0,a=r.length;i<a;++i)r[i].set(e)}return e},changes(t){const e=this._adds,n=this._mods,r=this._prev,i=this._drop,a=t.add,o=t.rem,s=t.mod;let u,l,f,c;if(r)for(l in r)u=r[l],(!i||u.num)&&o.push(u.tuple);for(f=0,c=this._alen;f<c;++f)a.push(this.celltuple(e[f])),e[f]=null;for(f=0,c=this._mlen;f<c;++f)u=n[f],(u.num===0&&i?o:s).push(this.celltuple(u)),n[f]=null;return this._alen=this._mlen=0,this._prev=null,t}});const hD=1e-14;function ad(t){F.call(this,null,t)}ad.Definition={type:"Bin",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"anchor",type:"number"},{name:"maxbins",type:"number",default:20},{name:"base",type:"number",default:10},{name:"divide",type:"number",array:!0,default:[5,2]},{name:"extent",type:"number",array:!0,length:2,required:!0},{name:"span",type:"number"},{name:"step",type:"number"},{name:"steps",type:"number",array:!0},{name:"minstep",type:"number",default:0},{name:"nice",type:"boolean",default:!0},{name:"name",type:"string"},{name:"as",type:"string",array:!0,length:2,default:["bin0","bin1"]}]};B(ad,F,{transform(t,e){const n=t.interval!==!1,r=this._bins(t),i=r.start,a=r.step,o=t.as||["bin0","bin1"],s=o[0],u=o[1];let l;return t.modified()?(e=e.reflow(!0),l=e.SOURCE):l=e.modified(Zt(t.field))?e.ADD_MOD:e.ADD,e.visit(l,n?f=>{const c=r(f);f[s]=c,f[u]=c==null?null:i+a*(1+(c-i)/a)}:f=>f[s]=r(f)),e.modifies(n?o:s)},_bins(t){if(this.value&&!t.modified())return this.value;const e=t.field,n=P6(t),r=n.step;let i=n.start,a=i+Math.ceil((n.stop-i)/r)*r,o,s;(o=t.anchor)!=null&&(s=o-(i+r*Math.floor((o-i)/r)),i+=s,a+=s);const u=function(l){let f=Kt(e(l));return f==null?null:f<i?-1/0:f>a?1/0:(f=Math.max(i,Math.min(f,a-r)),i+r*Math.floor(hD+(f-i)/r))};return u.start=i,u.stop=n.stop,u.step=r,this.value=be(u,Zt(e),t.name||"bin_"+yt(e))}});function g2(t,e,n){const r=t;let i=e||[],a=n||[],o={},s=0;return{add:u=>a.push(u),remove:u=>o[r(u)]=++s,size:()=>i.length,data:(u,l)=>(s&&(i=i.filter(f=>!o[r(f)]),o={},s=0),l&&u&&i.sort(u),a.length&&(i=u?Y5(u,i,a.sort(u)):i.concat(a),a=[]),i)}}function od(t){F.call(this,[],t)}od.Definition={type:"Collect",metadata:{source:!0},params:[{name:"sort",type:"compare"}]};B(od,F,{transform(t,e){const n=e.fork(e.ALL),r=g2(j,this.value,n.materialize(n.ADD).add),i=t.sort,a=e.changed()||i&&(t.modified("sort")||e.modified(i.fields));return n.visit(n.REM,r.remove),this.modified(a),this.value=n.source=r.data(Or(i),a),e.source&&e.source.root&&(this.value.root=e.source.root),n}});function p2(t){lt.call(this,null,gD,t)}B(p2,lt);function gD(t){return this.value&&!t.modified()?this.value:cy(t.fields,t.orders)}function sd(t){F.call(this,null,t)}sd.Definition={type:"CountPattern",metadata:{generates:!0,changes:!0},params:[{name:"field",type:"field",required:!0},{name:"case",type:"enum",values:["upper","lower","mixed"],default:"mixed"},{name:"pattern",type:"string",default:'[\\w"]+'},{name:"stopwords",type:"string",default:""},{name:"as",type:"string",array:!0,length:2,default:["text","count"]}]};function pD(t,e,n){switch(e){case"upper":t=t.toUpperCase();break;case"lower":t=t.toLowerCase();break}return t.match(n)}B(sd,F,{transform(t,e){const n=c=>d=>{for(var h=pD(s(d),t.case,a)||[],g,p=0,m=h.length;p<m;++p)o.test(g=h[p])||c(g)},r=this._parameterCheck(t,e),i=this._counts,a=this._match,o=this._stop,s=t.field,u=t.as||["text","count"],l=n(c=>i[c]=1+(i[c]||0)),f=n(c=>i[c]-=1);return r?e.visit(e.SOURCE,l):(e.visit(e.ADD,l),e.visit(e.REM,f)),this._finish(e,u)},_parameterCheck(t,e){let n=!1;return(t.modified("stopwords")||!this._stop)&&(this._stop=new RegExp("^"+(t.stopwords||"")+"$","i"),n=!0),(t.modified("pattern")||!this._match)&&(this._match=new RegExp(t.pattern||"[\\w']+","g"),n=!0),(t.modified("field")||e.modified(t.field.fields))&&(n=!0),n&&(this._counts={}),n},_finish(t,e){const n=this._counts,r=this._tuples||(this._tuples={}),i=e[0],a=e[1],o=t.fork(t.NO_SOURCE|t.NO_FIELDS);let s,u,l;for(s in n)u=r[s],l=n[s]||0,!u&&l?(r[s]=u=ot({}),u[i]=s,u[a]=l,o.add.push(u)):l===0?(u&&o.rem.push(u),n[s]=null,r[s]=null):u[a]!==l&&(u[a]=l,o.mod.push(u));return o.modifies(e)}});function ud(t){F.call(this,null,t)}ud.Definition={type:"Cross",metadata:{generates:!0},params:[{name:"filter",type:"expr"},{name:"as",type:"string",array:!0,length:2,default:["a","b"]}]};B(ud,F,{transform(t,e){const n=e.fork(e.NO_SOURCE),r=t.as||["a","b"],i=r[0],a=r[1],o=!this.value||e.changed(e.ADD_REM)||t.modified("as")||t.modified("filter");let s=this.value;return o?(s&&(n.rem=s),s=e.materialize(e.SOURCE).source,n.add=this.value=mD(s,i,a,t.filter||We)):n.mod=s,n.source=this.value,n.modifies(r)}});function mD(t,e,n,r){for(var i=[],a={},o=t.length,s=0,u,l;s<o;++s)for(a[e]=l=t[s],u=0;u<o;++u)a[n]=t[u],r(a)&&(i.push(ot(a)),a={},a[e]=l);return i}const Lg={kde:Zy,mixture:W6,normal:Jy,lognormal:U6,uniform:G6},yD="distributions",Ng="function",vD="field";function m2(t,e){const n=t[Ng];H(Lg,n)||_("Unknown distribution function: "+n);const r=Lg[n]();for(const i in t)i===vD?r.data((t.from||e()).map(t[i])):i===yD?r[i](t[i].map(a=>m2(a,e))):typeof r[i]===Ng&&r[i](t[i]);return r}function ld(t){F.call(this,null,t)}const y2=[{key:{function:"normal"},params:[{name:"mean",type:"number",default:0},{name:"stdev",type:"number",default:1}]},{key:{function:"lognormal"},params:[{name:"mean",type:"number",default:0},{name:"stdev",type:"number",default:1}]},{key:{function:"uniform"},params:[{name:"min",type:"number",default:0},{name:"max",type:"number",default:1}]},{key:{function:"kde"},params:[{name:"field",type:"field",required:!0},{name:"from",type:"data"},{name:"bandwidth",type:"number",default:0}]}],bD={key:{function:"mixture"},params:[{name:"distributions",type:"param",array:!0,params:y2},{name:"weights",type:"number",array:!0}]};ld.Definition={type:"Density",metadata:{generates:!0},params:[{name:"extent",type:"number",array:!0,length:2},{name:"steps",type:"number"},{name:"minsteps",type:"number",default:25},{name:"maxsteps",type:"number",default:200},{name:"method",type:"string",default:"pdf",values:["pdf","cdf"]},{name:"distribution",type:"param",params:y2.concat(bD)},{name:"as",type:"string",array:!0,default:["value","density"]}]};B(ld,F,{transform(t,e){const n=e.fork(e.NO_SOURCE|e.NO_FIELDS);if(!this.value||e.changed()||t.modified()){const r=m2(t.distribution,xD(e)),i=t.steps||t.minsteps||25,a=t.steps||t.maxsteps||200;let o=t.method||"pdf";o!=="pdf"&&o!=="cdf"&&_("Invalid density method: "+o),!t.extent&&!r.data&&_("Missing density extent parameter."),o=r[o];const s=t.as||["value","density"],u=t.extent||Mn(r.data()),l=rd(o,u,i,a).map(f=>{const c={};return c[s[0]]=f[0],c[s[1]]=f[1],ot(c)});this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function xD(t){return()=>t.materialize(t.SOURCE).source}function v2(t,e){return t?t.map((n,r)=>e[r]||yt(n)):null}function fd(t,e,n){const r=[],i=c=>c(u);let a,o,s,u,l,f;if(e==null)r.push(t.map(n));else for(a={},o=0,s=t.length;o<s;++o)u=t[o],l=e.map(i),f=a[l],f||(a[l]=f=[],f.dims=l,r.push(f)),f.push(n(u));return r}const b2="bin";function cd(t){F.call(this,null,t)}cd.Definition={type:"DotBin",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"step",type:"number"},{name:"smooth",type:"boolean",default:!1},{name:"as",type:"string",default:b2}]};const wD=(t,e)=>du(Mn(t,e))/30;B(cd,F,{transform(t,e){if(this.value&&!(t.modified()||e.changed()))return e;const n=e.materialize(e.SOURCE).source,r=fd(e.source,t.groupby,fe),i=t.smooth||!1,a=t.field,o=t.step||wD(n,a),s=Or((g,p)=>a(g)-a(p)),u=t.as||b2,l=r.length;let f=1/0,c=-1/0,d=0,h;for(;d<l;++d){const g=r[d].sort(s);h=-1;for(const p of N6(g,o,i,a))p<f&&(f=p),p>c&&(c=p),g[++h][u]=p}return this.value={start:f,stop:c,step:o},e.reflow(!0).modifies(u)}});function x2(t){lt.call(this,null,ED,t),this.modified(!0)}B(x2,lt);function ED(t){const e=t.expr;return this.value&&!t.modified("expr")?this.value:be(n=>e(n,t),Zt(e),yt(e))}function dd(t){F.call(this,[void 0,void 0],t)}dd.Definition={type:"Extent",metadata:{},params:[{name:"field",type:"field",required:!0}]};B(dd,F,{transform(t,e){const n=this.value,r=t.field,i=e.changed()||e.modified(r.fields)||t.modified("field");let a=n[0],o=n[1];if((i||a==null)&&(a=1/0,o=-1/0),e.visit(i?e.SOURCE:e.ADD,s=>{const u=Kt(r(s));u!=null&&(u<a&&(a=u),u>o&&(o=u))}),!Number.isFinite(a)||!Number.isFinite(o)){let s=yt(r);s&&(s=` for field "${s}"`),e.dataflow.warn(`Infinite extent${s}: [${a}, ${o}]`),a=o=void 0}this.value=[a,o]}});function hd(t,e){lt.call(this,t),this.parent=e,this.count=0}B(hd,lt,{connect(t){return this.detachSubflow=t.detachSubflow,this.targets().add(t),t.source=this},add(t){this.count+=1,this.value.add.push(t)},rem(t){this.count-=1,this.value.rem.push(t)},mod(t){this.value.mod.push(t)},init(t){this.value.init(t,t.NO_SOURCE)},evaluate(){return this.value}});function yu(t){F.call(this,{},t),this._keys=La();const e=this._targets=[];e.active=0,e.forEach=n=>{for(let r=0,i=e.active;r<i;++r)n(e[r],r,e)}}B(yu,F,{activate(t){this._targets[this._targets.active++]=t},subflow(t,e,n,r){const i=this.value;let a=H(i,t)&&i[t],o,s;return a?a.value.stamp<n.stamp&&(a.init(n),this.activate(a)):(s=r||(s=this._group[t])&&s.tuple,o=n.dataflow,a=new hd(n.fork(n.NO_SOURCE),this),o.add(a).connect(e(o,t,s)),i[t]=a,this.activate(a)),a},clean(){const t=this.value;let e=0;for(const n in t)if(t[n].count===0){const r=t[n].detachSubflow;r&&r(),delete t[n],++e}if(e){const n=this._targets.filter(r=>r&&r.count>0);this.initTargets(n)}},initTargets(t){const e=this._targets,n=e.length,r=t?t.length:0;let i=0;for(;i<r;++i)e[i]=t[i];for(;i<n&&e[i]!=null;++i)e[i]=null;e.active=r},transform(t,e){const n=e.dataflow,r=t.key,i=t.subflow,a=this._keys,o=t.modified("key"),s=u=>this.subflow(u,i,e);return this._group=t.group||{},this.initTargets(),e.visit(e.REM,u=>{const l=j(u),f=a.get(l);f!==void 0&&(a.delete(l),s(f).rem(u))}),e.visit(e.ADD,u=>{const l=r(u);a.set(j(u),l),s(l).add(u)}),o||e.modified(r.fields)?e.visit(e.MOD,u=>{const l=j(u),f=a.get(l),c=r(u);f===c?s(c).mod(u):(a.set(l,c),s(f).rem(u),s(c).add(u))}):e.changed(e.MOD)&&e.visit(e.MOD,u=>{s(a.get(j(u))).mod(u)}),o&&e.visit(e.REFLOW,u=>{const l=j(u),f=a.get(l),c=r(u);f!==c&&(a.set(l,c),s(f).rem(u),s(c).add(u))}),e.clean()?n.runAfter(()=>{this.clean(),a.clean()}):a.empty>n.cleanThreshold&&n.runAfter(a.clean),e}});function w2(t){lt.call(this,null,AD,t)}B(w2,lt);function AD(t){return this.value&&!t.modified()?this.value:L(t.name)?G(t.name).map(e=>Ue(e)):Ue(t.name,t.as)}function gd(t){F.call(this,La(),t)}gd.Definition={type:"Filter",metadata:{changes:!0},params:[{name:"expr",type:"expr",required:!0}]};B(gd,F,{transform(t,e){const n=e.dataflow,r=this.value,i=e.fork(),a=i.add,o=i.rem,s=i.mod,u=t.expr;let l=!0;e.visit(e.REM,c=>{const d=j(c);r.has(d)?r.delete(d):o.push(c)}),e.visit(e.ADD,c=>{u(c,t)?a.push(c):r.set(j(c),1)});function f(c){const d=j(c),h=u(c,t),g=r.get(d);h&&g?(r.delete(d),a.push(c)):!h&&!g?(r.set(d,1),o.push(c)):l&&h&&!g&&s.push(c)}return e.visit(e.MOD,f),t.modified()&&(l=!1,e.visit(e.REFLOW,f)),r.empty>n.cleanThreshold&&n.runAfter(r.clean),i}});function pd(t){F.call(this,[],t)}pd.Definition={type:"Flatten",metadata:{generates:!0},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"index",type:"string"},{name:"as",type:"string",array:!0}]};B(pd,F,{transform(t,e){const n=e.fork(e.NO_SOURCE),r=t.fields,i=v2(r,t.as||[]),a=t.index||null,o=i.length;return n.rem=this.value,e.visit(e.SOURCE,s=>{const u=r.map(g=>g(s)),l=u.reduce((g,p)=>Math.max(g,p.length),0);let f=0,c,d,h;for(;f<l;++f){for(d=Kc(s),c=0;c<o;++c)d[i[c]]=(h=u[c][f])==null?null:h;a&&(d[a]=f),n.add.push(d)}}),this.value=n.source=n.add,a&&n.modifies(a),n.modifies(i)}});function md(t){F.call(this,[],t)}md.Definition={type:"Fold",metadata:{generates:!0},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"as",type:"string",array:!0,length:2,default:["key","value"]}]};B(md,F,{transform(t,e){const n=e.fork(e.NO_SOURCE),r=t.fields,i=r.map(yt),a=t.as||["key","value"],o=a[0],s=a[1],u=r.length;return n.rem=this.value,e.visit(e.SOURCE,l=>{for(let f=0,c;f<u;++f)c=Kc(l),c[o]=i[f],c[s]=r[f](l),n.add.push(c)}),this.value=n.source=n.add,n.modifies(a)}});function yd(t){F.call(this,null,t)}yd.Definition={type:"Formula",metadata:{modifies:!0},params:[{name:"expr",type:"expr",required:!0},{name:"as",type:"string",required:!0},{name:"initonly",type:"boolean"}]};B(yd,F,{transform(t,e){const n=t.expr,r=t.as,i=t.modified(),a=t.initonly?e.ADD:i?e.SOURCE:e.modified(n.fields)||e.modified(r)?e.ADD_MOD:e.ADD;return i&&(e=e.materialize().reflow(!0)),t.initonly||e.modifies(r),e.visit(a,o=>o[r]=n(o,t))}});function E2(t){F.call(this,[],t)}B(E2,F,{transform(t,e){const n=e.fork(e.ALL),r=t.generator;let i=this.value,a=t.size-i.length,o,s,u;if(a>0){for(o=[];--a>=0;)o.push(u=ot(r(t))),i.push(u);n.add=n.add.length?n.materialize(n.ADD).add.concat(o):o}else s=i.slice(0,-a),n.rem=n.rem.length?n.materialize(n.REM).rem.concat(s):s,i=i.slice(-a);return n.source=this.value=i,n}});const wo={value:"value",median:X1,mean:ZE,min:Ul,max:gr},kD=[];function vd(t){F.call(this,[],t)}vd.Definition={type:"Impute",metadata:{changes:!0},params:[{name:"field",type:"field",required:!0},{name:"key",type:"field",required:!0},{name:"keyvals",array:!0},{name:"groupby",type:"field",array:!0},{name:"method",type:"enum",default:"value",values:["value","mean","median","max","min"]},{name:"value",default:0}]};function MD(t){var e=t.method||wo.value,n;if(wo[e]==null)_("Unrecognized imputation method: "+e);else return e===wo.value?(n=t.value!==void 0?t.value:0,()=>n):wo[e]}function DD(t){const e=t.field;return n=>n?e(n):NaN}B(vd,F,{transform(t,e){var n=e.fork(e.ALL),r=MD(t),i=DD(t),a=yt(t.field),o=yt(t.key),s=(t.groupby||[]).map(yt),u=CD(e.source,t.groupby,t.key,t.keyvals),l=[],f=this.value,c=u.domain.length,d,h,g,p,m,y,v,b,x,E;for(m=0,b=u.length;m<b;++m)for(d=u[m],g=d.values,h=NaN,v=0;v<c;++v)if(d[v]==null){for(p=u.domain[v],E={_impute:!0},y=0,x=g.length;y<x;++y)E[s[y]]=g[y];E[o]=p,E[a]=Number.isNaN(h)?h=r(d,i):h,l.push(ot(E))}return l.length&&(n.add=n.materialize(n.ADD).add.concat(l)),f.length&&(n.rem=n.materialize(n.REM).rem.concat(f)),this.value=l,n}});function CD(t,e,n,r){var i=y=>y(m),a=[],o=r?r.slice():[],s={},u={},l,f,c,d,h,g,p,m;for(o.forEach((y,v)=>s[y]=v+1),d=0,p=t.length;d<p;++d)m=t[d],g=n(m),h=s[g]||(s[g]=o.push(g)),f=(l=e?e.map(i):kD)+"",(c=u[f])||(c=u[f]=[],a.push(c),c.values=l),c[h-1]=m;return a.domain=o,a}function bd(t){Wn.call(this,t)}bd.Definition={type:"JoinAggregate",metadata:{modifies:!0},params:[{name:"groupby",type:"field",array:!0},{name:"fields",type:"field",null:!0,array:!0},{name:"ops",type:"enum",array:!0,values:Ua},{name:"as",type:"string",null:!0,array:!0},{name:"key",type:"field"}]};B(bd,Wn,{transform(t,e){const n=this,r=t.modified();let i;return n.value&&(r||e.modified(n._inputs,!0))?(i=n.value=r?n.init(t):{},e.visit(e.SOURCE,a=>n.add(a))):(i=n.value=n.value||this.init(t),e.visit(e.REM,a=>n.rem(a)),e.visit(e.ADD,a=>n.add(a))),n.changes(),e.visit(e.SOURCE,a=>{J(a,i[n.cellkey(a)].tuple)}),e.reflow(r).modifies(this._outputs)},changes(){const t=this._adds,e=this._mods;let n,r;for(n=0,r=this._alen;n<r;++n)this.celltuple(t[n]),t[n]=null;for(n=0,r=this._mlen;n<r;++n)this.celltuple(e[n]),e[n]=null;this._alen=this._mlen=0}});function xd(t){F.call(this,null,t)}xd.Definition={type:"KDE",metadata:{generates:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"cumulative",type:"boolean",default:!1},{name:"counts",type:"boolean",default:!1},{name:"bandwidth",type:"number",default:0},{name:"extent",type:"number",array:!0,length:2},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"steps",type:"number"},{name:"minsteps",type:"number",default:25},{name:"maxsteps",type:"number",default:200},{name:"as",type:"string",array:!0,default:["value","density"]}]};B(xd,F,{transform(t,e){const n=e.fork(e.NO_SOURCE|e.NO_FIELDS);if(!this.value||e.changed()||t.modified()){const r=e.materialize(e.SOURCE).source,i=fd(r,t.groupby,t.field),a=(t.groupby||[]).map(yt),o=t.bandwidth,s=t.cumulative?"cdf":"pdf",u=t.as||["value","density"],l=[];let f=t.extent,c=t.steps||t.minsteps||25,d=t.steps||t.maxsteps||200;s!=="pdf"&&s!=="cdf"&&_("Invalid density method: "+s),t.resolve==="shared"&&(f||(f=Mn(r,t.field)),c=d=t.steps||d),i.forEach(h=>{const g=Zy(h,o)[s],p=t.counts?h.length:1,m=f||Mn(h);rd(g,m,c,d).forEach(y=>{const v={};for(let b=0;b<a.length;++b)v[a[b]]=h.dims[b];v[u[0]]=y[0],v[u[1]]=y[1]*p,l.push(ot(v))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function A2(t){lt.call(this,null,SD,t)}B(A2,lt);function SD(t){return this.value&&!t.modified()?this.value:gy(t.fields,t.flat)}function k2(t){F.call(this,[],t),this._pending=null}B(k2,F,{transform(t,e){const n=e.dataflow;return this._pending?gl(this,e,this._pending):FD(t)?e.StopPropagation:t.values?gl(this,e,n.parse(t.values,t.format)):t.async?{async:n.request(t.url,t.format).then(i=>(this._pending=G(i.data),a=>a.touch(this)))}:n.request(t.url,t.format).then(r=>gl(this,e,G(r.data)))}});function FD(t){return t.modified("async")&&!(t.modified("values")||t.modified("url")||t.modified("format"))}function gl(t,e,n){n.forEach(ot);const r=e.fork(e.NO_FIELDS&e.NO_SOURCE);return r.rem=t.value,t.value=r.source=r.add=n,t._pending=null,r.rem.length&&r.clean(!0),r}function wd(t){F.call(this,{},t)}wd.Definition={type:"Lookup",metadata:{modifies:!0},params:[{name:"index",type:"index",params:[{name:"from",type:"data",required:!0},{name:"key",type:"field",required:!0}]},{name:"values",type:"field",array:!0},{name:"fields",type:"field",array:!0,required:!0},{name:"as",type:"string",array:!0},{name:"default",default:null}]};B(wd,F,{transform(t,e){const n=t.fields,r=t.index,i=t.values,a=t.default==null?null:t.default,o=t.modified(),s=n.length;let u=o?e.SOURCE:e.ADD,l=e,f=t.as,c,d,h;return i?(d=i.length,s>1&&!f&&_('Multi-field lookup requires explicit "as" parameter.'),f&&f.length!==s*d&&_('The "as" parameter has too few output field names.'),f=f||i.map(yt),c=function(g){for(var p=0,m=0,y,v;p<s;++p)if(v=r.get(n[p](g)),v==null)for(y=0;y<d;++y,++m)g[f[m]]=a;else for(y=0;y<d;++y,++m)g[f[m]]=i[y](v)}):(f||_("Missing output field names."),c=function(g){for(var p=0,m;p<s;++p)m=r.get(n[p](g)),g[f[p]]=m??a}),o?l=e.reflow(!0):(h=n.some(g=>e.modified(g.fields)),u|=h?e.MOD:0),e.visit(u,c),l.modifies(f)}});function M2(t){lt.call(this,null,$D,t)}B(M2,lt);function $D(t){if(this.value&&!t.modified())return this.value;const e=t.extents,n=e.length;let r=1/0,i=-1/0,a,o;for(a=0;a<n;++a)o=e[a],o[0]<r&&(r=o[0]),o[1]>i&&(i=o[1]);return[r,i]}function D2(t){lt.call(this,null,_D,t)}B(D2,lt);function _D(t){return this.value&&!t.modified()?this.value:t.values.reduce((e,n)=>e.concat(n),[])}function C2(t){F.call(this,null,t)}B(C2,F,{transform(t,e){return this.modified(t.modified()),this.value=t,e.fork(e.NO_SOURCE|e.NO_FIELDS)}});function Ed(t){Wn.call(this,t)}Ed.Definition={type:"Pivot",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"value",type:"field",required:!0},{name:"op",type:"enum",values:Ua,default:"sum"},{name:"limit",type:"number",default:0},{name:"key",type:"field"}]};B(Ed,Wn,{_transform:Wn.prototype.transform,transform(t,e){return this._transform(RD(t,e),e)}});function RD(t,e){const n=t.field,r=t.value,i=(t.op==="count"?"__count__":t.op)||"sum",a=Zt(n).concat(Zt(r)),o=zD(n,t.limit||0,e);return e.changed()&&t.set("__pivot__",null,null,!0),{key:t.key,groupby:t.groupby,ops:o.map(()=>i),fields:o.map(s=>OD(s,n,r,a)),as:o.map(s=>s+""),modified:t.modified.bind(t)}}function OD(t,e,n,r){return be(i=>e(i)===t?n(i):NaN,r,t+"")}function zD(t,e,n){const r={},i=[];return n.visit(n.SOURCE,a=>{const o=t(a);r[o]||(r[o]=1,i.push(o))}),i.sort(cu),e?i.slice(0,e):i}function S2(t){yu.call(this,t)}B(S2,yu,{transform(t,e){const n=t.subflow,r=t.field,i=a=>this.subflow(j(a),n,e,a);return(t.modified("field")||r&&e.modified(Zt(r)))&&_("PreFacet does not support field modification."),this.initTargets(),r?(e.visit(e.MOD,a=>{const o=i(a);r(a).forEach(s=>o.mod(s))}),e.visit(e.ADD,a=>{const o=i(a);r(a).forEach(s=>o.add(ot(s)))}),e.visit(e.REM,a=>{const o=i(a);r(a).forEach(s=>o.rem(s))})):(e.visit(e.MOD,a=>i(a).mod(a)),e.visit(e.ADD,a=>i(a).add(a)),e.visit(e.REM,a=>i(a).rem(a))),e.clean()&&e.runAfter(()=>this.clean()),e}});function Ad(t){F.call(this,null,t)}Ad.Definition={type:"Project",metadata:{generates:!0,changes:!0},params:[{name:"fields",type:"field",array:!0},{name:"as",type:"string",null:!0,array:!0}]};B(Ad,F,{transform(t,e){const n=e.fork(e.NO_SOURCE),r=t.fields,i=v2(t.fields,t.as||[]),a=r?(s,u)=>BD(s,u,r,i):pu;let o;return this.value?o=this.value:(e=e.addAll(),o=this.value={}),e.visit(e.REM,s=>{const u=j(s);n.rem.push(o[u]),o[u]=null}),e.visit(e.ADD,s=>{const u=a(s,ot({}));o[j(s)]=u,n.add.push(u)}),e.visit(e.MOD,s=>{n.mod.push(a(s,o[j(s)]))}),n}});function BD(t,e,n,r){for(let i=0,a=n.length;i<a;++i)e[r[i]]=n[i](t);return e}function F2(t){F.call(this,null,t)}B(F2,F,{transform(t,e){return this.value=t.value,t.modified("value")?e.fork(e.NO_SOURCE|e.NO_FIELDS):e.StopPropagation}});function kd(t){F.call(this,null,t)}kd.Definition={type:"Quantile",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"field",type:"field",required:!0},{name:"probs",type:"number",array:!0},{name:"step",type:"number",default:.01},{name:"as",type:"string",array:!0,default:["prob","value"]}]};const TD=1e-14;B(kd,F,{transform(t,e){const n=e.fork(e.NO_SOURCE|e.NO_FIELDS),r=t.as||["prob","value"];if(this.value&&!t.modified()&&!e.changed())return n.source=this.value,n;const i=e.materialize(e.SOURCE).source,a=fd(i,t.groupby,t.field),o=(t.groupby||[]).map(yt),s=[],u=t.step||.01,l=t.probs||ge(u/2,1-TD,u),f=l.length;return a.forEach(c=>{const d=Yy(c,l);for(let h=0;h<f;++h){const g={};for(let p=0;p<o.length;++p)g[o[p]]=c.dims[p];g[r[0]]=l[h],g[r[1]]=d[h],s.push(ot(g))}}),this.value&&(n.rem=this.value),this.value=n.add=n.source=s,n}});function $2(t){F.call(this,null,t)}B($2,F,{transform(t,e){let n,r;return this.value?r=this.value:(n=e=e.addAll(),r=this.value={}),t.derive&&(n=e.fork(e.NO_SOURCE),e.visit(e.REM,i=>{const a=j(i);n.rem.push(r[a]),r[a]=null}),e.visit(e.ADD,i=>{const a=Kc(i);r[j(i)]=a,n.add.push(a)}),e.visit(e.MOD,i=>{const a=r[j(i)];for(const o in i)a[o]=i[o],n.modifies(o);n.mod.push(a)})),n}});function Md(t){F.call(this,[],t),this.count=0}Md.Definition={type:"Sample",metadata:{},params:[{name:"size",type:"number",default:1e3}]};B(Md,F,{transform(t,e){const n=e.fork(e.NO_SOURCE),r=t.modified("size"),i=t.size,a=this.value.reduce((f,c)=>(f[j(c)]=1,f),{});let o=this.value,s=this.count,u=0;function l(f){let c,d;o.length<i?o.push(f):(d=~~((s+1)*Ye()),d<o.length&&d>=u&&(c=o[d],a[j(c)]&&n.rem.push(c),o[d]=f)),++s}if(e.rem.length&&(e.visit(e.REM,f=>{const c=j(f);a[c]&&(a[c]=-1,n.rem.push(f)),--s}),o=o.filter(f=>a[j(f)]!==-1)),(e.rem.length||r)&&o.length<i&&e.source&&(u=s=o.length,e.visit(e.SOURCE,f=>{a[j(f)]||l(f)}),u=-1),r&&o.length>i){const f=o.length-i;for(let c=0;c<f;++c)a[j(o[c])]=-1,n.rem.push(o[c]);o=o.slice(f)}return e.mod.length&&e.visit(e.MOD,f=>{a[j(f)]&&n.mod.push(f)}),e.add.length&&e.visit(e.ADD,l),(e.add.length||u<0)&&(n.add=o.filter(f=>!a[j(f)])),this.count=s,this.value=n.source=o,n}});function Dd(t){F.call(this,null,t)}Dd.Definition={type:"Sequence",metadata:{generates:!0,changes:!0},params:[{name:"start",type:"number",required:!0},{name:"stop",type:"number",required:!0},{name:"step",type:"number",default:1},{name:"as",type:"string",default:"data"}]};B(Dd,F,{transform(t,e){if(this.value&&!t.modified())return;const n=e.materialize().fork(e.MOD),r=t.as||"data";return n.rem=this.value?e.rem.concat(this.value):e.rem,this.value=ge(t.start,t.stop,t.step||1).map(i=>{const a={};return a[r]=i,ot(a)}),n.add=e.add.concat(this.value),n}});function _2(t){F.call(this,null,t),this.modified(!0)}B(_2,F,{transform(t,e){return this.value=e.source,e.changed()?e.fork(e.NO_SOURCE|e.NO_FIELDS):e.StopPropagation}});function Cd(t){F.call(this,null,t)}const R2=["unit0","unit1"];Cd.Definition={type:"TimeUnit",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"units",type:"enum",values:by,array:!0},{name:"step",type:"number",default:1},{name:"maxbins",type:"number",default:40},{name:"extent",type:"date",array:!0},{name:"timezone",type:"enum",default:"local",values:["local","utc"]},{name:"as",type:"string",array:!0,length:2,default:R2}]};B(Cd,F,{transform(t,e){const n=t.field,r=t.interval!==!1,i=t.timezone==="utc",a=this._floor(t,e),o=(i?Ia:Na)(a.unit).offset,s=t.as||R2,u=s[0],l=s[1],f=a.step;let c=a.start||1/0,d=a.stop||-1/0,h=e.ADD;return(t.modified()||e.changed(e.REM)||e.modified(Zt(n)))&&(e=e.reflow(!0),h=e.SOURCE,c=1/0,d=-1/0),e.visit(h,g=>{const p=n(g);let m,y;p==null?(g[u]=null,r&&(g[l]=null)):(g[u]=m=y=a(p),r&&(g[l]=y=o(m,f)),m<c&&(c=m),y>d&&(d=y))}),a.start=c,a.stop=d,e.modifies(r?s:u)},_floor(t,e){const n=t.timezone==="utc",{units:r,step:i}=t.units?{units:t.units,step:t.step||1}:SM({extent:t.extent||Mn(e.materialize(e.SOURCE).source,t.field),maxbins:t.maxbins}),a=xy(r),o=this.value||{},s=(n?vM:pM)(a,i);return s.unit=rt(a),s.units=a,s.step=i,s.start=o.start,s.stop=o.stop,this.value=s}});function O2(t){F.call(this,La(),t)}B(O2,F,{transform(t,e){const n=e.dataflow,r=t.field,i=this.value,a=s=>i.set(r(s),s);let o=!0;return t.modified("field")||e.modified(r.fields)?(i.clear(),e.visit(e.SOURCE,a)):e.changed()?(e.visit(e.REM,s=>i.delete(r(s))),e.visit(e.ADD,a)):o=!1,this.modified(o),i.empty>n.cleanThreshold&&n.runAfter(i.clean),e.fork()}});function z2(t){F.call(this,null,t)}B(z2,F,{transform(t,e){(!this.value||t.modified("field")||t.modified("sort")||e.changed()||t.sort&&e.modified(t.sort.fields))&&(this.value=(t.sort?e.source.slice().sort(Or(t.sort)):e.source).map(t.field))}});function PD(t,e,n,r){const i=wa[t](e,n);return{init:i.init||ar,update:function(a,o){o[r]=i.next(a)}}}const wa={row_number:function(){return{next:t=>t.index+1}},rank:function(){let t;return{init:()=>t=1,next:e=>{const n=e.index,r=e.data;return n&&e.compare(r[n-1],r[n])?t=n+1:t}}},dense_rank:function(){let t;return{init:()=>t=1,next:e=>{const n=e.index,r=e.data;return n&&e.compare(r[n-1],r[n])?++t:t}}},percent_rank:function(){const t=wa.rank(),e=t.next;return{init:t.init,next:n=>(e(n)-1)/(n.data.length-1)}},cume_dist:function(){let t;return{init:()=>t=0,next:e=>{const n=e.data,r=e.compare;let i=e.index;if(t<i){for(;i+1<n.length&&!r(n[i],n[i+1]);)++i;t=i}return(1+t)/n.length}}},ntile:function(t,e){e=+e,e>0||_("ntile num must be greater than zero.");const n=wa.cume_dist(),r=n.next;return{init:n.init,next:i=>Math.ceil(e*r(i))}},lag:function(t,e){return e=+e||1,{next:n=>{const r=n.index-e;return r>=0?t(n.data[r]):null}}},lead:function(t,e){return e=+e||1,{next:n=>{const r=n.index+e,i=n.data;return r<i.length?t(i[r]):null}}},first_value:function(t){return{next:e=>t(e.data[e.i0])}},last_value:function(t){return{next:e=>t(e.data[e.i1-1])}},nth_value:function(t,e){return e=+e,e>0||_("nth_value nth must be greater than zero."),{next:n=>{const r=n.i0+(e-1);return r<n.i1?t(n.data[r]):null}}},prev_value:function(t){let e;return{init:()=>e=null,next:n=>{const r=t(n.data[n.index]);return r!=null?e=r:e}}},next_value:function(t){let e,n;return{init:()=>(e=null,n=-1),next:r=>{const i=r.data;return r.index<=n?e:(n=LD(t,i,r.index))<0?(n=i.length,e=null):e=t(i[n])}}}};function LD(t,e,n){for(let r=e.length;n<r;++n)if(t(e[n])!=null)return n;return-1}const ND=Object.keys(wa);function B2(t){const e=G(t.ops),n=G(t.fields),r=G(t.params),i=G(t.aggregate_params),a=G(t.as),o=this.outputs=[],s=this.windows=[],u={},l={},f=[],c=[];let d=!0;function h(g){G(Zt(g)).forEach(p=>u[p]=1)}h(t.sort),e.forEach((g,p)=>{const m=n[p],y=r[p],v=i[p]||null,b=yt(m),x=f2(g,b,a[p]);if(h(m),o.push(x),H(wa,g))s.push(PD(g,m,y,x));else{if(m==null&&g!=="count"&&_("Null aggregate field specified."),g==="count"){f.push(x);return}d=!1;let E=l[b];E||(E=l[b]=[],E.field=m,c.push(E)),E.push(c2(g,v,x))}}),(f.length||c.length)&&(this.cell=ID(c,f,d)),this.inputs=Object.keys(u)}const T2=B2.prototype;T2.init=function(){this.windows.forEach(t=>t.init()),this.cell&&this.cell.init()};T2.update=function(t,e){const n=this.cell,r=this.windows,i=t.data,a=r&&r.length;let o;if(n){for(o=t.p0;o<t.i0;++o)n.rem(i[o]);for(o=t.p1;o<t.i1;++o)n.add(i[o]);n.set(e)}for(o=0;o<a;++o)r[o].update(t,e)};function ID(t,e,n){t=t.map(u=>h2(u,u.field));const r={num:0,agg:null,store:!1,count:e};if(!n)for(var i=t.length,a=r.agg=Array(i),o=0;o<i;++o)a[o]=new t[o](r);if(r.store)var s=r.data=new id;return r.add=function(u){if(r.num+=1,!n){s&&s.add(u);for(let l=0;l<i;++l)a[l].add(a[l].get(u),u)}},r.rem=function(u){if(r.num-=1,!n){s&&s.rem(u);for(let l=0;l<i;++l)a[l].rem(a[l].get(u),u)}},r.set=function(u){let l,f;for(s&&s.values(),l=0,f=e.length;l<f;++l)u[e[l]]=r.num;if(!n)for(l=0,f=a.length;l<f;++l)a[l].set(u)},r.init=function(){r.num=0,s&&s.reset();for(let u=0;u<i;++u)a[u].init()},r}function Sd(t){F.call(this,{},t),this._mlen=0,this._mods=[]}Sd.Definition={type:"Window",metadata:{modifies:!0},params:[{name:"sort",type:"compare"},{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:ND.concat(Ua)},{name:"params",type:"number",null:!0,array:!0},{name:"aggregate_params",type:"number",null:!0,array:!0},{name:"fields",type:"field",null:!0,array:!0},{name:"as",type:"string",null:!0,array:!0},{name:"frame",type:"number",null:!0,array:!0,length:2,default:[null,0]},{name:"ignorePeers",type:"boolean",default:!1}]};B(Sd,F,{transform(t,e){this.stamp=e.stamp;const n=t.modified(),r=Or(t.sort),i=Sf(t.groupby),a=s=>this.group(i(s));let o=this.state;(!o||n)&&(o=this.state=new B2(t)),n||e.modified(o.inputs)?(this.value={},e.visit(e.SOURCE,s=>a(s).add(s))):(e.visit(e.REM,s=>a(s).remove(s)),e.visit(e.ADD,s=>a(s).add(s)));for(let s=0,u=this._mlen;s<u;++s)qD(this._mods[s],o,r,t);return this._mlen=0,this._mods=[],e.reflow(n).modifies(o.outputs)},group(t){let e=this.value[t];return e||(e=this.value[t]=g2(j),e.stamp=-1),e.stamp<this.stamp&&(e.stamp=this.stamp,this._mods[this._mlen++]=e),e}});function qD(t,e,n,r){const i=r.sort,a=i&&!r.ignorePeers,o=r.frame||[null,0],s=t.data(n),u=s.length,l=a?bc(i):null,f={i0:0,i1:0,p0:0,p1:0,index:0,data:s,compare:i||re(-1)};e.init();for(let c=0;c<u;++c)jD(f,o,c,u),a&&UD(f,l),e.update(f,s[c])}function jD(t,e,n,r){t.p0=t.i0,t.p1=t.i1,t.i0=e[0]==null?0:Math.max(0,n-Math.abs(e[0])),t.i1=e[1]==null?r:Math.min(r,n+Math.abs(e[1])+1),t.index=n}function UD(t,e){const n=t.i0,r=t.i1-1,i=t.compare,a=t.data,o=a.length-1;n>0&&!i(a[n],a[n-1])&&(t.i0=e.left(a,a[n])),r<o&&!i(a[r],a[r+1])&&(t.i1=e.right(a,a[r]))}const WD=Object.freeze(Object.defineProperty({__proto__:null,aggregate:Wn,bin:ad,collect:od,compare:p2,countpattern:sd,cross:ud,density:ld,dotbin:cd,expression:x2,extent:dd,facet:yu,field:w2,filter:gd,flatten:pd,fold:md,formula:yd,generate:E2,impute:vd,joinaggregate:bd,kde:xd,key:A2,load:k2,lookup:wd,multiextent:M2,multivalues:D2,params:C2,pivot:Ed,prefacet:S2,project:Ad,proxy:F2,quantile:kd,relay:$2,sample:Md,sequence:Dd,sieve:_2,subflow:hd,timeunit:Cd,tupleindex:O2,values:z2,window:Sd},Symbol.toStringTag,{value:"Module"}));function jn(t,e){if(typeof document<"u"&&document.createElement){const n=document.createElement("canvas");if(n&&n.getContext)return n.width=t,n.height=e,n}return null}const GD=()=>typeof Image<"u"?Image:null;function Fd(t,e,n){const r=t-e+n*2;return t?r>0?r:1:0}const YD="identity",ri="linear",Cn="log",Wa="pow",Ga="sqrt",vu="symlog",kr="time",Mr="utc",nn="sequential",gi="diverging",ii="quantile",bu="quantize",xu="threshold",$d="ordinal",Ff="point",P2="band",_d="bin-ordinal",At="continuous",Ya="discrete",Ha="discretizing",Re="interpolating",Rd="temporal";function HD(t){return function(e){let n=e[0],r=e[1],i;return r<n&&(i=n,n=r,r=i),[t.invert(n),t.invert(r)]}}function VD(t){return function(e){const n=t.range();let r=e[0],i=e[1],a=-1,o,s,u,l;for(i<r&&(s=r,r=i,i=s),u=0,l=n.length;u<l;++u)n[u]>=r&&n[u]<=i&&(a<0&&(a=u),o=u);if(!(a<0))return r=t.invertExtent(n[a]),i=t.invertExtent(n[o]),[r[0]===void 0?r[1]:r[0],i[1]===void 0?i[0]:i[1]]}}function Od(){const t=P1().unknown(void 0),e=t.domain,n=t.range;let r=[0,1],i,a,o=!1,s=0,u=0,l=.5;delete t.unknown;function f(){const c=e().length,d=r[1]<r[0],h=r[1-d],g=Fd(c,s,u);let p=r[d-0];i=(h-p)/(g||1),o&&(i=Math.floor(i)),p+=(h-p-i*(c-s))*l,a=i*(1-s),o&&(p=Math.round(p),a=Math.round(a));const m=ge(c).map(y=>p+i*y);return n(d?m.reverse():m)}return t.domain=function(c){return arguments.length?(e(c),f()):e()},t.range=function(c){return arguments.length?(r=[+c[0],+c[1]],f()):r.slice()},t.rangeRound=function(c){return r=[+c[0],+c[1]],o=!0,f()},t.bandwidth=function(){return a},t.step=function(){return i},t.round=function(c){return arguments.length?(o=!!c,f()):o},t.padding=function(c){return arguments.length?(u=Math.max(0,Math.min(1,c)),s=u,f()):s},t.paddingInner=function(c){return arguments.length?(s=Math.max(0,Math.min(1,c)),f()):s},t.paddingOuter=function(c){return arguments.length?(u=Math.max(0,Math.min(1,c)),f()):u},t.align=function(c){return arguments.length?(l=Math.max(0,Math.min(1,c)),f()):l},t.invertRange=function(c){if(c[0]==null||c[1]==null)return;const d=r[1]<r[0],h=d?n().reverse():n(),g=h.length-1;let p=+c[0],m=+c[1],y,v,b;if(!(p!==p||m!==m)&&(m<p&&(b=p,p=m,m=b),!(m<h[0]||p>r[1-d])))return y=Math.max(0,xr(h,p)-1),v=p===m?y:xr(h,m)-1,p-h[y]>a+1e-10&&++y,d&&(b=y,y=g-v,v=g-b),y>v?void 0:e().slice(y,v+1)},t.invert=function(c){const d=t.invertRange([c,c]);return d&&d[0]},t.copy=function(){return Od().domain(e()).range(r).round(o).paddingInner(s).paddingOuter(u).align(l)},f()}function L2(t){const e=t.copy;return t.padding=t.paddingOuter,delete t.paddingInner,t.copy=function(){return L2(e())},t}function XD(){return L2(Od().paddingInner(1))}var KD=Array.prototype.map;function JD(t){return KD.call(t,Kt)}const ZD=Array.prototype.slice;function N2(){let t=[],e=[];function n(r){return r==null||r!==r?void 0:e[(xr(t,r)-1)%e.length]}return n.domain=function(r){return arguments.length?(t=JD(r),n):t.slice()},n.range=function(r){return arguments.length?(e=ZD.call(r),n):e.slice()},n.tickFormat=function(r,i){return bw(t[0],rt(t),r??10,i)},n.copy=function(){return N2().domain(n.domain()).range(n.range())},n}const _s=new Map,I2=Symbol("vega_scale");function q2(t){return t[I2]=!0,t}function Ig(t){return t&&t[I2]===!0}function QD(t,e,n){const r=function(){const a=e();return a.invertRange||(a.invertRange=a.invert?HD(a):a.invertExtent?VD(a):void 0),a.type=t,q2(a)};return r.metadata=an(G(n)),r}function at(t,e,n){return arguments.length>1?(_s.set(t,QD(t,e,n)),this):j2(t)?_s.get(t):void 0}at(YD,Um);at(ri,vw,At);at(Cn,Wm,[At,Cn]);at(Wa,Ic,At);at(Ga,e5,At);at(vu,Gm,At);at(kr,Tw,[At,Rd]);at(Mr,n5,[At,Rd]);at(nn,qc,[At,Re]);at(`${nn}-${ri}`,qc,[At,Re]);at(`${nn}-${Cn}`,Xm,[At,Re,Cn]);at(`${nn}-${Wa}`,jc,[At,Re]);at(`${nn}-${Ga}`,r5,[At,Re]);at(`${nn}-${vu}`,Km,[At,Re]);at(`${gi}-${ri}`,Jm,[At,Re]);at(`${gi}-${Cn}`,Zm,[At,Re,Cn]);at(`${gi}-${Wa}`,Uc,[At,Re]);at(`${gi}-${Ga}`,i5,[At,Re]);at(`${gi}-${vu}`,Qm,[At,Re]);at(ii,Ym,[Ha,ii]);at(bu,Hm,Ha);at(xu,Vm,Ha);at(_d,N2,[Ya,Ha]);at($d,P1,Ya);at(P2,Od,Ya);at(Ff,XD,Ya);function j2(t){return _s.has(t)}function zr(t,e){const n=_s.get(t);return n&&n.metadata[e]}function zd(t){return zr(t,At)}function ai(t){return zr(t,Ya)}function $f(t){return zr(t,Ha)}function U2(t){return zr(t,Cn)}function tC(t){return zr(t,Rd)}function W2(t){return zr(t,Re)}function G2(t){return zr(t,ii)}const eC=["clamp","base","constant","exponent"];function nC(t,e){const n=e[0],r=rt(e)-n;return function(i){return t(n+i*r)}}function Bd(t,e,n){return Dc(H2(e||"rgb",n),t)}function rC(t,e){const n=new Array(e),r=e+1;for(let i=0;i<e;)n[i]=t(++i/r);return n}function Y2(t,e,n){const r=n-e;let i,a,o;return!r||!Number.isFinite(r)?re(.5):(i=(a=t.type).indexOf("-"),a=i<0?a:a.slice(i+1),o=at(a)().domain([e,n]).range([0,1]),eC.forEach(s=>t[s]?o[s](t[s]()):0),o)}function H2(t,e){const n=YE[iC(t)];return e!=null&&n&&n.gamma?n.gamma(e):n}function iC(t){return"interpolate"+t.toLowerCase().split("-").map(e=>e[0].toUpperCase()+e.slice(1)).join("")}const aC={blues:"cfe1f2bed8eca8cee58fc1de74b2d75ba3cf4592c63181bd206fb2125ca40a4a90",greens:"d3eecdc0e6baabdda594d3917bc77d60ba6c46ab5e329a512089430e7735036429",greys:"e2e2e2d4d4d4c4c4c4b1b1b19d9d9d8888887575756262624d4d4d3535351e1e1e",oranges:"fdd8b3fdc998fdb87bfda55efc9244f87f2cf06b18e4580bd14904b93d029f3303",purples:"e2e1efd4d4e8c4c5e0b4b3d6a3a0cc928ec3827cb97566ae684ea25c3696501f8c",reds:"fdc9b4fcb49afc9e80fc8767fa7051f6573fec3f2fdc2a25c81b1db21218970b13",blueGreen:"d5efedc1e8e0a7ddd18bd2be70c6a958ba9144ad77319c5d2089460e7736036429",bluePurple:"ccddecbad0e4a8c2dd9ab0d4919cc98d85be8b6db28a55a6873c99822287730f71",greenBlue:"d3eecec5e8c3b1e1bb9bd8bb82cec269c2ca51b2cd3c9fc7288abd1675b10b60a1",orangeRed:"fddcaffdcf9bfdc18afdad77fb9562f67d53ee6545e24932d32d1ebf130da70403",purpleBlue:"dbdaebc8cee4b1c3de97b7d87bacd15b9fc93a90c01e7fb70b70ab056199045281",purpleBlueGreen:"dbd8eac8cee4b0c3de93b7d872acd1549fc83892bb1c88a3097f8702736b016353",purpleRed:"dcc9e2d3b3d7ce9eccd186c0da6bb2e14da0e23189d91e6fc61159ab07498f023a",redPurple:"fccfccfcbec0faa9b8f98faff571a5ec539ddb3695c41b8aa908808d0179700174",yellowGreen:"e4f4acd1eca0b9e2949ed68880c97c62bb6e47aa5e3297502083440e723b036034",yellowOrangeBrown:"feeaa1fedd84fecc63feb746fca031f68921eb7215db5e0bc54c05ab3d038f3204",yellowOrangeRed:"fee087fed16ffebd59fea849fd903efc7335f9522bee3423de1b20ca0b22af0225",blueOrange:"134b852f78b35da2cb9dcae1d2e5eff2f0ebfce0bafbbf74e8932fc5690d994a07",brownBlueGreen:"704108a0651ac79548e3c78af3e6c6eef1eac9e9e48ed1c74da79e187a72025147",purpleGreen:"5b1667834792a67fb6c9aed3e6d6e8eff0efd9efd5aedda971bb75368e490e5e29",purpleOrange:"4114696647968f83b7b9b4d6dadbebf3eeeafce0bafbbf74e8932fc5690d994a07",redBlue:"8c0d25bf363adf745ef4ae91fbdbc9f2efeed2e5ef9dcae15da2cb2f78b3134b85",redGrey:"8c0d25bf363adf745ef4ae91fcdccbfaf4f1e2e2e2c0c0c0969696646464343434",yellowGreenBlue:"eff9bddbf1b4bde5b594d5b969c5be45b4c22c9ec02182b82163aa23479c1c3185",redYellowBlue:"a50026d4322cf16e43fcac64fedd90faf8c1dcf1ecabd6e875abd04a74b4313695",redYellowGreen:"a50026d4322cf16e43fcac63fedd8df9f7aed7ee8ea4d86e64bc6122964f006837",pinkYellowGreen:"8e0152c0267edd72adf0b3d6faddedf5f3efe1f2cab6de8780bb474f9125276419",spectral:"9e0142d13c4bf0704afcac63fedd8dfbf8b0e0f3a1a9dda269bda94288b55e4fa2",viridis:"440154470e61481a6c482575472f7d443a834144873d4e8a39568c35608d31688e2d708e2a788e27818e23888e21918d1f988b1fa08822a8842ab07f35b77943bf7154c56866cc5d7ad1518fd744a5db36bcdf27d2e21be9e51afde725",magma:"0000040404130b0924150e3720114b2c11603b0f704a107957157e651a80721f817f24828c29819a2e80a8327db6377ac43c75d1426fde4968e95462f1605df76f5cfa7f5efc8f65fe9f6dfeaf78febf84fece91fddea0fcedaffcfdbf",inferno:"0000040403130c0826170c3b240c4f330a5f420a68500d6c5d126e6b176e781c6d86216b932667a12b62ae305cbb3755c73e4cd24644dd513ae65c30ed6925f3771af8850ffb9506fca50afcb519fac62df6d645f2e661f3f484fcffa4",plasma:"0d088723069033059742039d5002a25d01a66a00a87801a88405a7900da49c179ea72198b12a90ba3488c33d80cb4779d35171da5a69e16462e76e5bed7953f2834cf68f44fa9a3dfca636fdb32ffec029fcce25f9dc24f5ea27f0f921",cividis:"00205100235800265d002961012b65042e670831690d346b11366c16396d1c3c6e213f6e26426e2c456e31476e374a6e3c4d6e42506e47536d4c566d51586e555b6e5a5e6e5e616e62646f66676f6a6a706e6d717270717573727976737c79747f7c75827f758682768985778c8877908b78938e789691789a94789e9778a19b78a59e77a9a177aea575b2a874b6ab73bbaf71c0b26fc5b66dc9b96acebd68d3c065d8c462ddc85fe2cb5ce7cf58ebd355f0d652f3da4ff7de4cfae249fce647",rainbow:"6e40aa883eb1a43db3bf3cafd83fa4ee4395fe4b83ff576eff6659ff7847ff8c38f3a130e2b72fcfcc36bee044aff05b8ff4576ff65b52f6673af27828ea8d1ddfa319d0b81cbecb23abd82f96e03d82e14c6edb5a5dd0664dbf6e40aa",sinebow:"ff4040fc582af47218e78d0bd5a703bfbf00a7d5038de70b72f41858fc2a40ff402afc5818f4720be78d03d5a700bfbf03a7d50b8de71872f42a58fc4040ff582afc7218f48d0be7a703d5bf00bfd503a7e70b8df41872fc2a58ff4040",turbo:"23171b32204a3e2a71453493493eae4b49c54a53d7485ee44569ee4074f53c7ff8378af93295f72e9ff42ba9ef28b3e926bce125c5d925cdcf27d5c629dcbc2de3b232e9a738ee9d3ff39347f68950f9805afc7765fd6e70fe667cfd5e88fc5795fb51a1f84badf545b9f140c5ec3cd0e637dae034e4d93
61ecd12ef4c92bfac029ffb626ffad24ffa223ff9821ff8d1fff821dff771cfd6c1af76118f05616e84b14df4111d5380fcb2f0dc0260ab61f07ac1805a313029b0f00950c00910b00",browns:"eedbbdecca96e9b97ae4a865dc9856d18954c7784cc0673fb85536ad44339f3632",tealBlues:"bce4d89dd3d181c3cb65b3c245a2b9368fae347da0306a932c5985",teals:"bbdfdfa2d4d58ac9c975bcbb61b0af4da5a43799982b8b8c1e7f7f127273006667",warmGreys:"dcd4d0cec5c1c0b8b4b3aaa7a59c9998908c8b827f7e7673726866665c5a59504e",goldGreen:"f4d166d5ca60b6c35c98bb597cb25760a6564b9c533f8f4f33834a257740146c36",goldOrange:"f4d166f8be5cf8aa4cf5983bf3852aef701be2621fd65322c54923b142239e3a26",goldRed:"f4d166f6be59f9aa51fc964ef6834bee734ae56249db5247cf4244c43141b71d3e",lightGreyRed:"efe9e6e1dad7d5cbc8c8bdb9bbaea9cd967ddc7b43e15f19df4011dc000b",lightGreyTeal:"e4eaead6dcddc8ced2b7c2c7a6b4bc64b0bf22a6c32295c11f85be1876bc",lightMulti:"e0f1f2c4e9d0b0de9fd0e181f6e072f6c053f3993ef77440ef4a3c",lightOrange:"f2e7daf7d5baf9c499fab184fa9c73f68967ef7860e8645bde515bd43d5b",lightTealBlue:"e3e9e0c0dccf9aceca7abfc859afc0389fb9328dad2f7ca0276b95255988",darkBlue:"3232322d46681a5c930074af008cbf05a7ce25c0dd38daed50f3faffffff",darkGold:"3c3c3c584b37725e348c7631ae8b2bcfa424ecc31ef9de30fff184ffffff",darkGreen:"3a3a3a215748006f4d048942489e4276b340a6c63dd2d836ffeb2cffffaa",darkMulti:"3737371f5287197d8c29a86995ce3fffe800ffffff",darkRed:"3434347036339e3c38cc4037e75d1eec8620eeab29f0ce32ffeb2c"},oC={accent:o5,category10:a5,category20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",category20b:"393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6",category20c:"3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9",dark2:s5,observable10:u5,paired:l5,pastel1:f5,pastel2:c5,set1:d5,set2:h5,set3:g5,tableau10:"4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac",tableau20:"4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5"};function V2(t){if(L(t))return t;const e=t.length/6|0,n=new Array(e);for(let r=0;r<e;)n[r]="#"+t.slice(r*6,++r*6);return n}function X2(t,e){for(const n in t)K2(n,e(t[n]))}const qg={};X2(oC,V2);X2(aC,t=>Bd(V2(t)));function K2(t,e){return t=t&&t.toLowerCase(),arguments.length>1?(qg[t]=e,this):qg[t]}const Lo="symbol",sC="discrete",uC="gradient",lC=t=>L(t)?t.map(e=>String(e)):String(t),fC=(t,e)=>t[1]-e[1],cC=(t,e)=>e[1]-t[1];function Td(t,e,n){let r;return Ar(e)&&(t.bins&&(e=Math.max(e,t.bins.length)),n!=null&&(e=Math.min(e,Math.floor(du(t.domain())/n||1)+1))),K(e)&&(r=e.step,e=e.interval),ct(e)&&(e=t.type===kr?Na(e):t.type==Mr?Ia(e):_("Only time and utc scales accept interval strings."),r&&(e=e.every(r))),e}function J2(t,e,n){let r=t.range(),i=r[0],a=rt(r),o=fC;if(i>a&&(r=a,a=i,i=r,o=cC),i=Math.floor(i),a=Math.ceil(a),e=e.map(s=>[s,t(s)]).filter(s=>i<=s[1]&&s[1]<=a).sort(o).map(s=>s[0]),n>0&&e.length>1){const s=[e[0],rt(e)];for(;e.length>n&&e.length>=3;)e=e.filter((u,l)=>!(l%2));e.length<3&&(e=s)}return e}function Pd(t,e){return t.bins?J2(t,t.bins,e):t.ticks?t.ticks(e):t.domain()}function Z2(t,e,n,r,i,a){const o=e.type;let s=lC;if(o===kr||i===kr)s=t.timeFormat(r);else if(o===Mr||i===Mr)s=t.utcFormat(r);else if(U2(o)){const u=t.formatFloat(r);if(a||e.bins)s=u;else{const l=Q2(e,n,!1);s=f=>l(f)?u(f):""}}else if(e.tickFormat){const u=e.domain();s=t.formatSpan(u[0],u[u.length-1],n,r)}else r&&(s=t.format(r));return s}function Q2(t,e,n){const r=Pd(t,e),i=t.base(),a=Math.log(i),o=Math.max(1,i*e/r.length),s=u=>{let l=u/Math.pow(i,Math.round(Math.log(u)/a));return l*i<i-.5&&(l*=i),l<=o};return n?r.filter(s):s}const _f={[ii]:"quantiles",[bu]:"thresholds",[xu]:"domain"},tv={[ii]:"quantiles",[bu]:"domain"};function ev(t,e){return t.bins?gC(t.bins):t.type===Cn?Q2(t,e,!0):_f[t.type]?hC(t[_f[t.type]]()):Pd(t,e)}function dC(t,e,n){const r=e[tv[e.type]](),i=r.length;let a=i>1?r[1]-r[0]:r[0],o;for(o=1;o<i;++o)a=Math.min(a,r[o]-r[o-1]);return t.formatSpan(0,a,3*10,n)}function hC(t){const e=[-1/0].concat(t);return e.max=1/0,e}function gC(t){const e=t.slice(0,-1);return e.max=rt(t),e}const pC=t=>_f[t.type]||t.bins;function nv(t,e,n,r,i,a,o){const s=tv[e.type]&&a!==kr&&a!==Mr?dC(t,e,i):Z2(t,e,n,i,a,o);return r===Lo&&pC(e)?mC(s):r===sC?yC(s):vC(s)}const mC=t=>(e,n,r)=>{const i=jg(r[n+1],jg(r.max,1/0)),a=Ug(e,t),o=Ug(i,t);return a&&o?a+" – "+o:o?"< "+o:"≥ "+a},jg=(t,e)=>t??e,yC=t=>(e,n)=>n?t(e):null,vC=t=>e=>t(e),Ug=(t,e)=>Number.isFinite(t)?e(t):null;function bC(t){const e=t.domain(),n=e.length-1;let r=+e[0],i=+rt(e),a=i-r;
vendor: 28,875 bytes, line 6
6if(t.type===xu){const o=n?a/n:.1;r-=o,i+=o,a=i-r}return o=>(o-r)/a}function xC(t,e,n,r){const i=r||e.type;return ct(n)&&tC(i)&&(n=n.replace(/%a/g,"%A").replace(/%b/g,"%B")),!n&&i===kr?t.timeFormat("%A, %d %B %Y, %X"):!n&&i===Mr?t.utcFormat("%A, %d %B %Y, %X UTC"):nv(t,e,5,null,n,r,!0)}function rv(t,e,n){n=n||{};const r=Math.max(3,n.maxlen||7),i=xC(t,e,n.format,n.formatType);if($f(e.type)){const a=ev(e).slice(1).map(i),o=a.length;return`${o} boundar${o===1?"y":"ies"}: ${a.join(", ")}`}else if(ai(e.type)){const a=e.domain(),o=a.length,s=o>r?a.slice(0,r-2).map(i).join(", ")+", ending with "+a.slice(-1).map(i):a.map(i).join(", ");return`${o} value${o===1?"":"s"}: ${s}`}else{const a=e.domain();return`values from ${i(a[0])} to ${i(rt(a))}`}}let iv=0;function wC(){iv=0}const Rs="p_";function Ld(t){return t&&t.gradient}function av(t,e,n){const r=t.gradient;let i=t.id,a=r==="radial"?Rs:"";return i||(i=t.id="gradient_"+iv++,r==="radial"?(t.x1=Ke(t.x1,.5),t.y1=Ke(t.y1,.5),t.r1=Ke(t.r1,0),t.x2=Ke(t.x2,.5),t.y2=Ke(t.y2,.5),t.r2=Ke(t.r2,.5),a=Rs):(t.x1=Ke(t.x1,0),t.y1=Ke(t.y1,0),t.x2=Ke(t.x2,1),t.y2=Ke(t.y2,0))),e[i]=t,"url("+(n||"")+"#"+a+i+")"}function Ke(t,e){return t??e}function EC(t,e){var n=[],r;return r={gradient:"linear",x1:t?t[0]:0,y1:t?t[1]:0,x2:e?e[0]:1,y2:e?e[1]:0,stops:n,stop:function(i,a){return n.push({offset:i,color:a}),r}}}const Wg={basis:{curve:CE},"basis-closed":{curve:DE},"basis-open":{curve:ME},bundle:{curve:kE,tension:"beta",value:.85},cardinal:{curve:AE,tension:"tension",value:0},"cardinal-open":{curve:EE,tension:"tension",value:0},"cardinal-closed":{curve:wE,tension:"tension",value:0},"catmull-rom":{curve:xE,tension:"alpha",value:.5},"catmull-rom-closed":{curve:bE,tension:"alpha",value:.5},"catmull-rom-open":{curve:vE,tension:"alpha",value:.5},linear:{curve:N1},"linear-closed":{curve:yE},monotone:{horizontal:mE,vertical:pE},natural:{curve:gE},step:{curve:hE},"step-after":{curve:dE},"step-before":{curve:cE}};function ov(t,e,n){var r=H(Wg,t)&&Wg[t],i=null;return r&&(i=r.curve||r[e||"vertical"],r.tension&&n!=null&&(i=i[r.tension](n))),i}const AC={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},kC=/[mlhvzcsqta]([^mlhvzcsqta]+|$)/gi,MC=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,DC=/^((\s+,?\s*)|(,\s*))/,CC=/^[01]/;function Ea(t){const e=[];return(t.match(kC)||[]).forEach(r=>{let i=r[0];const a=i.toLowerCase(),o=AC[a],s=SC(a,o,r.slice(1).trim()),u=s.length;if(u<o||u&&u%o!==0)throw Error("Invalid SVG path, incorrect parameter count");if(e.push([i,...s.slice(0,o)]),u!==o){a==="m"&&(i=i==="M"?"L":"l");for(let l=o;l<u;l+=o)e.push([i,...s.slice(l,l+o)])}}),e}function SC(t,e,n){const r=[];for(let i=0;e&&i<n.length;)for(let a=0;a<e;++a){const o=t==="a"&&(a===3||a===4)?CC:MC,s=n.slice(i).match(o);if(s===null)throw Error("Invalid SVG path, incorrect parameter type");i+=s[0].length,r.push(+s[0]);const u=n.slice(i).match(DC);u!==null&&(i+=u[0].length)}return r}const Gn=Math.PI/180,FC=1e-14,sr=Math.PI/2,en=Math.PI*2,jr=Math.sqrt(3)/2;var pl={},ml={},sv=[].join;function $C(t,e,n,r,i,a,o,s,u){const l=sv.call(arguments);if(pl[l])return pl[l];const f=o*Gn,c=Math.sin(f),d=Math.cos(f);n=Math.abs(n),r=Math.abs(r);const h=d*(s-t)*.5+c*(u-e)*.5,g=d*(u-e)*.5-c*(s-t)*.5;let p=h*h/(n*n)+g*g/(r*r);p>1&&(p=Math.sqrt(p),n*=p,r*=p);const m=d/n,y=c/n,v=-c/r,b=d/r,x=m*s+y*u,E=v*s+b*u,A=m*t+y*e,w=v*t+b*e;let M=1/((A-x)*(A-x)+(w-E)*(w-E))-.25;M<0&&(M=0);let D=Math.sqrt(M);a==i&&(D=-D);const S=.5*(x+A)-D*(w-E),O=.5*(E+w)+D*(A-x),z=Math.atan2(E-O,x-S);let C=Math.atan2(w-O,A-S)-z;C<0&&a===1?C+=en:C>0&&a===0&&(C-=en);const R=Math.ceil(Math.abs(C/(sr+.001))),N=[];for(let X=0;X<R;++X){const V=z+X*C/R,vt=z+(X+1)*C/R;N[X]=[S,O,V,vt,n,r,c,d]}return pl[l]=N}function _C(t){const e=sv.call(t);if(ml[e])return ml[e];var n=t[0],r=t[1],i=t[2],a=t[3],o=t[4],s=t[5],u=t[6],l=t[7];const f=l*o,c=-u*s,d=u*o,h=l*s,g=Math.cos(i),p=Math.sin(i),m=Math.cos(a),y=Math.sin(a),v=.5*(a-i),b=Math.sin(v*.5),x=8/3*b*b/Math.sin(v),E=n+g-x*p,A=r+p+x*g,w=n+m,k=r+y,M=w+x*y,D=k-x*m;return ml[e]=[f*E+c*A,d*E+h*A,f*M+c*D,d*M+h*D,f*w+c*k,d*w+h*k]}const xe=["l",0,0,0,0,0,0,0];function RC(t,e,n){const r=xe[0]=t[0];if(r==="a"||r==="A")xe[1]=e*t[1],xe[2]=n*t[2],xe[3]=t[3],xe[4]=t[4],xe[5]=t[5],xe[6]=e*t[6],xe[7]=n*t[7];else if(r==="h"||r==="H")xe[1]=e*t[1];else if(r==="v"||r==="V")xe[1]=n*t[1];else for(var i=1,a=t.length;i<a;++i)xe[i]=(i%2==1?e:n)*t[i];return xe}function Os(t,e,n,r,i,a){var o,s=null,u=0,l=0,f=0,c=0,d,h,g,p,m=0,y=0;n==null&&(n=0),r==null&&(r=0),i==null&&(i=1),a==null&&(a=i),t.beginPath&&t.beginPath();for(var v=0,b=e.length;v<b;++v){switch(o=e[v],(i!==1||a!==1)&&(o=RC(o,i,a)),o[0]){case"l":u+=o[1],l+=o[2],t.lineTo(u+n,l+r);break;case"L":u=o[1],l=o[2],t.lineTo(u+n,l+r);break;case"h":u+=o[1],t.lineTo(u+n,l+r);break;case"H":u=o[1],t.lineTo(u+n,l+r);break;case"v":l+=o[1],t.lineTo(u+n,l+r);break;case"V":l=o[1],t.lineTo(u+n,l+r);break;case"m":u+=o[1],l+=o[2],m=u,y=l,t.moveTo(u+n,l+r);break;case"M":u=o[1],l=o[2],m=u,y=l,t.moveTo(u+n,l+r);break;case"c":d=u+o[5],h=l+o[6],f=u+o[3],c=l+o[4],t.bezierCurveTo(u+o[1]+n,l+o[2]+r,f+n,c+r,d+n,h+r),u=d,l=h;break;case"C":u=o[5],l=o[6],f=o[3],c=o[4],t.bezierCurveTo(o[1]+n,o[2]+r,f+n,c+r,u+n,l+r);break;case"s":d=u+o[3],h=l+o[4],f=2*u-f,c=2*l-c,t.bezierCurveTo(f+n,c+r,u+o[1]+n,l+o[2]+r,d+n,h+r),f=u+o[1],c=l+o[2],u=d,l=h;break;case"S":d=o[3],h=o[4],f=2*u-f,c=2*l-c,t.bezierCurveTo(f+n,c+r,o[1]+n,o[2]+r,d+n,h+r),u=d,l=h,f=o[1],c=o[2];break;case"q":d=u+o[3],h=l+o[4],f=u+o[1],c=l+o[2],t.quadraticCurveTo(f+n,c+r,d+n,h+r),u=d,l=h;break;case"Q":d=o[3],h=o[4],t.quadraticCurveTo(o[1]+n,o[2]+r,d+n,h+r),u=d,l=h,f=o[1],c=o[2];break;case"t":d=u+o[1],h=l+o[2],s[0].match(/[QqTt]/)===null?(f=u,c=l):s[0]==="t"?(f=2*u-g,c=2*l-p):s[0]==="q"&&(f=2*u-f,c=2*l-c),g=f,p=c,t.quadraticCurveTo(f+n,c+r,d+n,h+r),u=d,l=h,f=u+o[1],c=l+o[2];break;case"T":d=o[1],h=o[2],f=2*u-f,c=2*l-c,t.quadraticCurveTo(f+n,c+r,d+n,h+r),u=d,l=h;break;case"a":Gg(t,u+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+u+n,o[7]+l+r]),u+=o[6],l+=o[7];break;case"A":Gg(t,u+n,l+r,[o[1],o[2],o[3],o[4],o[5],o[6]+n,o[7]+r]),u=o[6],l=o[7];break;case"z":case"Z":u=m,l=y,t.closePath();break}s=o}}function Gg(t,e,n,r){const i=$C(r[5],r[6],r[0],r[1],r[3],r[4],r[2],e,n);for(let a=0;a<i.length;++a){const o=_C(i[a]);t.bezierCurveTo(o[0],o[1],o[2],o[3],o[4],o[5])}}const Yg=.5773502691896257,Hg={circle:{draw:function(t,e){const n=Math.sqrt(e)/2;t.moveTo(n,0),t.arc(0,0,n,0,en)}},cross:{draw:function(t,e){var n=Math.sqrt(e)/2,r=n/2.5;t.moveTo(-n,-r),t.lineTo(-n,r),t.lineTo(-r,r),t.lineTo(-r,n),t.lineTo(r,n),t.lineTo(r,r),t.lineTo(n,r),t.lineTo(n,-r),t.lineTo(r,-r),t.lineTo(r,-n),t.lineTo(-r,-n),t.lineTo(-r,-r),t.closePath()}},diamond:{draw:function(t,e){const n=Math.sqrt(e)/2;t.moveTo(-n,0),t.lineTo(0,-n),t.lineTo(n,0),t.lineTo(0,n),t.closePath()}},square:{draw:function(t,e){var n=Math.sqrt(e),r=-n/2;t.rect(r,r,n,n)}},arrow:{draw:function(t,e){var n=Math.sqrt(e)/2,r=n/7,i=n/2.5,a=n/8;t.moveTo(-r,n),t.lineTo(r,n),t.lineTo(r,-a),t.lineTo(i,-a),t.lineTo(0,-n),t.lineTo(-i,-a),t.lineTo(-r,-a),t.closePath()}},wedge:{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n,i=r-n*Yg,a=n/4;t.moveTo(0,-r-i),t.lineTo(-a,r-i),t.lineTo(a,r-i),t.closePath()}},triangle:{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n,i=r-n*Yg;t.moveTo(0,-r-i),t.lineTo(-n,r-i),t.lineTo(n,r-i),t.closePath()}},"triangle-up":{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n;t.moveTo(0,-r),t.lineTo(-n,r),t.lineTo(n,r),t.closePath()}},"triangle-down":{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n;t.moveTo(0,r),t.lineTo(-n,-r),t.lineTo(n,-r),t.closePath()}},"triangle-right":{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n;t.moveTo(r,0),t.lineTo(-r,-n),t.lineTo(-r,n),t.closePath()}},"triangle-left":{draw:function(t,e){var n=Math.sqrt(e)/2,r=jr*n;t.moveTo(-r,0),t.lineTo(r,-n),t.lineTo(r,n),t.closePath()}},stroke:{draw:function(t,e){const n=Math.sqrt(e)/2;t.moveTo(-n,0),t.lineTo(n,0)}}};function OC(t){return H(Hg,t)?Hg[t]:zC(t)}var yl={};function zC(t){if(!H(yl,t)){const e=Ea(t);yl[t]={draw:function(n,r){Os(n,e,0,0,Math.sqrt(r)/2)}}}return yl[t]}const $n=.448084975506;function BC(t){return t.x}function TC(t){return t.y}function PC(t){return t.width}function LC(t){return t.height}function gn(t){return typeof t=="function"?t:()=>+t}function Eo(t,e,n){return Math.max(e,Math.min(t,n))}function NC(){var t=BC,e=TC,n=PC,r=LC,i=gn(0),a=i,o=i,s=i,u=null;function l(f,c,d){var h,g=c??+t.call(this,f),p=d??+e.call(this,f),m=+n.call(this,f),y=+r.call(this,f),v=Math.min(m,y)/2,b=Eo(+i.call(this,f),0,v),x=Eo(+a.call(this,f),0,v),E=Eo(+o.call(this,f),0,v),A=Eo(+s.call(this,f),0,v);if(u||(u=h=q1()),b<=0&&x<=0&&E<=0&&A<=0)u.rect(g,p,m,y);else{var w=g+m,k=p+y;u.moveTo(g+b,p),u.lineTo(w-x,p),u.bezierCurveTo(w-$n*x,p,w,p+$n*x,w,p+x),u.lineTo(w,k-A),u.bezierCurveTo(w,k-$n*A,w-$n*A,k,w-A,k),u.lineTo(g+E,k),u.bezierCurveTo(g+$n*E,k,g,k-$n*E,g,k-E),u.lineTo(g,p+b),u.bezierCurveTo(g,p+$n*b,g+$n*b,p,g+b,p),u.closePath()}if(h)return u=null,h+""||null}return l.x=function(f){return arguments.length?(t=gn(f),l):t},l.y=function(f){return arguments.length?(e=gn(f),l):e},l.width=function(f){return arguments.length?(n=gn(f),l):n},l.height=function(f){return arguments.length?(r=gn(f),l):r},l.cornerRadius=function(f,c,d,h){return arguments.length?(i=gn(f),a=c!=null?gn(c):i,s=d!=null?gn(d):i,o=h!=null?gn(h):a,l):i},l.context=function(f){return arguments.length?(u=f??null,l):u},l}function IC(){var t,e,n,r,i=null,a,o,s,u;function l(c,d,h){const g=h/2;if(a){var p=s-d,m=c-o;if(p||m){var y=Math.hypot(p,m),v=(p/=y)*u,b=(m/=y)*u,x=Math.atan2(m,p);i.moveTo(o-v,s-b),i.lineTo(c-p*g,d-m*g),i.arc(c,d,g,x-Math.PI,x),i.lineTo(o+v,s+b),i.arc(o,s,u,x,x+Math.PI)}else i.arc(c,d,g,0,en);i.closePath()}else a=1;o=c,s=d,u=g}function f(c){var d,h=c.length,g,p=!1,m;for(i==null&&(i=m=q1()),d=0;d<=h;++d)!(d<h&&r(g=c[d],d,c))===p&&(p=!p)&&(a=0),p&&l(+t(g,d,c),+e(g,d,c),+n(g,d,c));if(m)return i=null,m+""||null}return f.x=function(c){return arguments.length?(t=c,f):t},f.y=function(c){return arguments.length?(e=c,f):e},f.size=function(c){return arguments.length?(n=c,f):n},f.defined=function(c){return arguments.length?(r=c,f):r},f.context=function(c){return arguments.length?(c==null?i=null:i=c,f):i},f}function Va(t,e){return t??e}const Xa=t=>t.x||0,Ka=t=>t.y||0,qC=t=>t.width||0,jC=t=>t.height||0,UC=t=>(t.x||0)+(t.width||0),WC=t=>(t.y||0)+(t.height||0),GC=t=>t.startAngle||0,YC=t=>t.endAngle||0,HC=t=>t.padAngle||0,VC=t=>t.innerRadius||0,XC=t=>t.outerRadius||0,KC=t=>t.cornerRadius||0,JC=t=>Va(t.cornerRadiusTopLeft,t.cornerRadius)||0,ZC=t=>Va(t.cornerRadiusTopRight,t.cornerRadius)||0,QC=t=>Va(t.cornerRadiusBottomRight,t.cornerRadius)||0,tS=t=>Va(t.cornerRadiusBottomLeft,t.cornerRadius)||0,eS=t=>Va(t.size,64),nS=t=>t.size||1,wu=t=>t.defined!==!1,rS=t=>OC(t.shape||"circle"),iS=SE().startAngle(GC).endAngle(YC).padAngle(HC).innerRadius(VC).outerRadius(XC).cornerRadius(KC),aS=ty().x(Xa).y1(Ka).y0(WC).defined(wu),oS=ty().y(Ka).x1(Xa).x0(UC).defined(wu),sS=I1().x(Xa).y(Ka).defined(wu),uS=NC().x(Xa).y(Ka).width(qC).height(jC).cornerRadius(JC,ZC,QC,tS),lS=m5().type(rS).size(eS),fS=IC().x(Xa).y(Ka).defined(wu).size(nS);function Nd(t){return t.cornerRadius||t.cornerRadiusTopLeft||t.cornerRadiusTopRight||t.cornerRadiusBottomRight||t.cornerRadiusBottomLeft}function cS(t,e){return iS.context(t)(e)}function dS(t,e){const n=e[0],r=n.interpolate||"linear";return(n.orient==="horizontal"?oS:aS).curve(ov(r,n.orient,n.tension)).context(t)(e)}function hS(t,e){const n=e[0],r=n.interpolate||"linear";return sS.curve(ov(r,n.orient,n.tension)).context(t)(e)}function pi(t,e,n,r){return uS.context(t)(e,n,r)}function gS(t,e){return(e.mark.shape||e.shape).context(t)(e)}function pS(t,e){return lS.context(t)(e)}function mS(t,e){return fS.context(t)(e)}var uv=1;function yS(){uv=1}function Id(t,e,n){var r=e.clip,i=t._defs,a=e.clip_id||(e.clip_id="clip"+uv++),o=i.clipping[a]||(i.clipping[a]={id:a});return Z(r)?o.path=r(null):Nd(n)?o.path=pi(null,n,0,0):(o.width=n.width||0,o.height=n.height||0),"url(#"+a+")"}function Et(t){this.clear(),t&&this.union(t)}Et.prototype={clone(){return new Et(this)},clear(){return this.x1=+Number.MAX_VALUE,this.y1=+Number.MAX_VALUE,this.x2=-Number.MAX_VALUE,this.y2=-Number.MAX_VALUE,this},empty(){return this.x1===+Number.MAX_VALUE&&this.y1===+Number.MAX_VALUE&&this.x2===-Number.MAX_VALUE&&this.y2===-Number.MAX_VALUE},equals(t){return this.x1===t.x1&&this.y1===t.y1&&this.x2===t.x2&&this.y2===t.y2},set(t,e,n,r){return n<t?(this.x2=t,this.x1=n):(this.x1=t,this.x2=n),r<e?(this.y2=e,this.y1=r):(this.y1=e,this.y2=r),this},add(t,e){return t<this.x1&&(this.x1=t),e<this.y1&&(this.y1=e),t>this.x2&&(this.x2=t),e>this.y2&&(this.y2=e),this},expand(t){return this.x1-=t,this.y1-=t,this.x2+=t,this.y2+=t,this},round(){return this.x1=Math.floor(this.x1),this.y1=Math.floor(this.y1),this.x2=Math.ceil(this.x2),this.y2=Math.ceil(this.y2),this},scale(t){return this.x1*=t,this.y1*=t,this.x2*=t,this.y2*=t,this},translate(t,e){return this.x1+=t,this.x2+=t,this.y1+=e,this.y2+=e,this},rotate(t,e,n){const r=this.rotatedPoints(t,e,n);return this.clear().add(r[0],r[1]).add(r[2],r[3]).add(r[4],r[5]).add(r[6],r[7])},rotatedPoints(t,e,n){var{x1:r,y1:i,x2:a,y2:o}=this,s=Math.cos(t),u=Math.sin(t),l=e-e*s+n*u,f=n-e*u-n*s;return[s*r-u*i+l,u*r+s*i+f,s*r-u*o+l,u*r+s*o+f,s*a-u*i+l,u*a+s*i+f,s*a-u*o+l,u*a+s*o+f]},union(t){return t.x1<this.x1&&(this.x1=t.x1),t.y1<this.y1&&(this.y1=t.y1),t.x2>this.x2&&(this.x2=t.x2),t.y2>this.y2&&(this.y2=t.y2),this},intersect(t){return t.x1>this.x1&&(this.x1=t.x1),t.y1>this.y1&&(this.y1=t.y1),t.x2<this.x2&&(this.x2=t.x2),t.y2<this.y2&&(this.y2=t.y2),this},encloses(t){return t&&this.x1<=t.x1&&this.x2>=t.x2&&this.y1<=t.y1&&this.y2>=t.y2},alignsWith(t){return t&&(this.x1==t.x1||this.x2==t.x2||this.y1==t.y1||this.y2==t.y2)},intersects(t){return t&&!(this.x2<t.x1||this.x1>t.x2||this.y2<t.y1||this.y1>t.y2)},contains(t,e){return!(t<this.x1||t>this.x2||e<this.y1||e>this.y2)},width(){return this.x2-this.x1},height(){return this.y2-this.y1}};function qd(t){this.mark=t,this.bounds=this.bounds||new Et}function jd(t){qd.call(this,t),this.items=this.items||[]}B(jd,qd);class vS{constructor(e){this._pending=0,this._loader=e||Vc()}pending(){return this._pending}sanitizeURL(e){const n=this;return Vg(n),n._loader.sanitize(e,{context:"href"}).then(r=>(Di(n),r)).catch(()=>(Di(n),null))}loadImage(e){const n=this,r=GD();return Vg(n),n._loader.sanitize(e,{context:"image"}).then(i=>{const a=i.href;if(!a||!r)throw{url:a};const o=new r,s=H(i,"crossOrigin")?i.crossOrigin:"anonymous";return s!=null&&(o.crossOrigin=s),o.onload=()=>Di(n),o.onerror=()=>Di(n),o.src=a,o}).catch(i=>(Di(n),{complete:!1,width:0,height:0,src:i&&i.url||""}))}ready(){const e=this;return new Promise(n=>{function r(i){e.pending()?setTimeout(()=>{r(!0)},10):n(i)}r(!1)})}}function Vg(t){t._pending+=1}function Di(t){t._pending-=1}function Jn(t,e,n){if(e.stroke&&e.opacity!==0&&e.strokeOpacity!==0){const r=e.strokeWidth!=null?+e.strokeWidth:1;t.expand(r+(n?bS(e,r):0))}return t}function bS(t,e){return t.strokeJoin&&t.strokeJoin!=="miter"?0:e}const xS=en-1e-8;let Eu,No,Io,cr,Rf,qo,Of,zf;const Pn=(t,e)=>Eu.add(t,e),jo=(t,e)=>Pn(No=t,Io=e),Xg=t=>Pn(t,Eu.y1),Kg=t=>Pn(Eu.x1,t),ur=(t,e)=>Rf*t+Of*e,lr=(t,e)=>qo*t+zf*e,vl=(t,e)=>Pn(ur(t,e),lr(t,e)),bl=(t,e)=>jo(ur(t,e),lr(t,e));function Au(t,e){return Eu=t,e?(cr=e*Gn,Rf=zf=Math.cos(cr),qo=Math.sin(cr),Of=-qo):(Rf=zf=1,cr=qo=Of=0),wS}const wS={beginPath(){},closePath(){},moveTo:bl,lineTo:bl,rect(t,e,n,r){cr?(vl(t+n,e),vl(t+n,e+r),vl(t,e+r),bl(t,e)):(Pn(t+n,e+r),jo(t,e))},quadraticCurveTo(t,e,n,r){const i=ur(t,e),a=lr(t,e),o=ur(n,r),s=lr(n,r);Jg(No,i,o,Xg),Jg(Io,a,s,Kg),jo(o,s)},bezierCurveTo(t,e,n,r,i,a){const o=ur(t,e),s=lr(t,e),u=ur(n,r),l=lr(n,r),f=ur(i,a),c=lr(i,a);Zg(No,o,u,f,Xg),Zg(Io,s,l,c,Kg),jo(f,c)},arc(t,e,n,r,i,a){if(r+=cr,i+=cr,No=n*Math.cos(i)+t,Io=n*Math.sin(i)+e,Math.abs(i-r)>xS)Pn(t-n,e-n),Pn(t+n,e+n);else{const o=l=>Pn(n*Math.cos(l)+t,n*Math.sin(l)+e);let s,u;if(o(r),o(i),i!==r)if(r=r%en,r<0&&(r+=en),i=i%en,i<0&&(i+=en),i<r&&(a=!a,s=r,r=i,i=s),a)for(i-=en,s=r-r%sr,u=0;u<4&&s>i;++u,s-=sr)o(s);else for(s=r-r%sr+sr,u=0;u<4&&s<i;++u,s=s+sr)o(s)}}};function Jg(t,e,n,r){const i=(t-e)/(t+n-2*e);0<i&&i<1&&r(t+(e-t)*i)}function Zg(t,e,n,r,i){const a=r-t+3*e-3*n,o=t+n-2*e,s=t-e;let u=0,l=0,f;Math.abs(a)>FC?(f=o*o+s*a,f>=0&&(f=Math.sqrt(f),u=(-o+f)/a,l=(-o-f)/a)):u=.5*s/o,0<u&&u<1&&i(Qg(u,t,e,n,r)),0<l&&l<1&&i(Qg(l,t,e,n,r))}function Qg(t,e,n,r,i){const a=1-t,o=a*a,s=t*t;return o*a*e+3*o*t*n+3*a*s*r+s*t*i}var Un=(Un=jn(1,1))?Un.getContext("2d"):null;const Bf=new Et;function lv(t){return function(e,n){if(!Un)return!0;t(Un,e),Bf.clear().union(e.bounds).intersect(n).round();const{x1:r,y1:i,x2:a,y2:o}=Bf;for(let s=i;s<=o;++s)for(let u=r;u<=a;++u)if(Un.isPointInPath(u,s))return!0;return!1}}function fv(t,e){return e.contains(t.x||0,t.y||0)}function cv(t,e){const n=t.x||0,r=t.y||0,i=t.width||0,a=t.height||0;return e.intersects(Bf.set(n,r,n+i,r+a))}function ES(t,e){const n=t.x||0,r=t.y||0,i=t.x2!=null?t.x2:n,a=t.y2!=null?t.y2:r;return Xi(e,n,r,i,a)}function Xi(t,e,n,r,i){const{x1:a,y1:o,x2:s,y2:u}=t,l=r-e,f=i-n;let c=0,d=1,h,g,p,m;for(m=0;m<4;++m){if(m===0&&(h=-l,g=-(a-e)),m===1&&(h=l,g=s-e),m===2&&(h=-f,g=-(o-n)),m===3&&(h=f,g=u-n),Math.abs(h)<1e-10&&g<0)return!1;if(p=g/h,h<0){if(p>d)return!1;p>c&&(c=p)}else if(h>0){if(p<c)return!1;p<d&&(d=p)}}return!0}function oi(t,e){t.globalCompositeOperation=e.blend||"source-over"}function ze(t,e){return t??e}function tp(t,e){const n=e.length;for(let r=0;r<n;++r)t.addColorStop(e[r].offset,e[r].color);return t}function AS(t,e,n){const r=n.width(),i=n.height();let a;if(e.gradient==="radial")a=t.createRadialGradient(n.x1+ze(e.x1,.5)*r,n.y1+ze(e.y1,.5)*i,Math.max(r,i)*ze(e.r1,0),n.x1+ze(e.x2,.5)*r,n.y1+ze(e.y2,.5)*i,Math.max(r,i)*ze(e.r2,.5));else{const o=ze(e.x1,0),s=ze(e.y1,0),u=ze(e.x2,1),l=ze(e.y2,0);if(o===u||s===l||r===i)a=t.createLinearGradient(n.x1+o*r,n.y1+s*i,n.x1+u*r,n.y1+l*i);else{const f=jn(Math.ceil(r),Math.ceil(i)),c=f.getContext("2d");return c.scale(r,i),c.fillStyle=tp(c.createLinearGradient(o,s,u,l),e.stops),c.fillRect(0,0,r,i),t.createPattern(f,"no-repeat")}}return tp(a,e.stops)}function dv(t,e,n){return Ld(n)?AS(t,n,e.bounds):n}function zs(t,e,n){return n*=e.fillOpacity==null?1:e.fillOpacity,n>0?(t.globalAlpha=n,t.fillStyle=dv(t,e,e.fill),!0):!1}var kS=[];function si(t,e,n){var r=(r=e.strokeWidth)!=null?r:1;return r<=0?!1:(n*=e.strokeOpacity==null?1:e.strokeOpacity,n>0?(t.globalAlpha=n,t.strokeStyle=dv(t,e,e.stroke),t.lineWidth=r,t.lineCap=e.strokeCap||"butt",t.lineJoin=e.strokeJoin||"miter",t.miterLimit=e.strokeMiterLimit||10,t.setLineDash&&(t.setLineDash(e.strokeDash||kS),t.lineDashOffset=e.strokeDashOffset||0),!0):!1)}function MS(t,e){return t.zindex-e.zindex||t.index-e.index}function hv(t){if(!t.zdirty)return t.zitems;var e=t.items,n=[],r,i,a;for(i=0,a=e.length;i<a;++i)r=e[i],r.index=i,r.zindex&&n.push(r);return t.zdirty=!1,t.zitems=n.sort(MS)}function sn(t,e){var n=t.items,r,i;if(!n||!n.length)return;const a=hv(t);if(a&&a.length){for(r=0,i=n.length;r<i;++r)n[r].zindex||e(n[r]);n=a}for(r=0,i=n.length;r<i;++r)e(n[r])}function Tf(t,e){var n=t.items,r,i;if(!n||!n.length)return null;const a=hv(t);for(a&&a.length&&(n=a),i=n.length;--i>=0;)if(r=e(n[i]))return r;if(n===a){for(n=t.items,i=n.length;--i>=0;)if(!n[i].zindex&&(r=e(n[i])))return r}return null}function Ud(t){return function(e,n,r){sn(n,i=>{(!r||r.intersects(i.bounds))&&gv(t,e,i,i)})}}function DS(t){return function(e,n,r){n.items.length&&(!r||r.intersects(n.bounds))&&gv(t,e,n.items[0],n.items)}}function gv(t,e,n,r){var i=n.opacity==null?1:n.opacity;i!==0&&(t(e,r)||(oi(e,n),n.fill&&zs(e,n,i)&&e.fill(),n.stroke&&si(e,n,i)&&e.stroke()))}function ku(t){return t=t||We,function(e,n,r,i,a,o){return r*=e.pixelRatio,i*=e.pixelRatio,Tf(n,s=>{const u=s.bounds;if(!(u&&!u.contains(a,o)||!u)&&t(e,s,r,i,a,o))return s})}}function Ja(t,e){return function(n,r,i,a){var o=Array.isArray(r)?r[0]:r,s=e??o.fill,u=o.stroke&&n.isPointInStroke,l,f;return u&&(l=o.strokeWidth,f=o.strokeCap,n.lineWidth=l??1,n.lineCap=f??"butt"),t(n,r)?!1:s&&n.isPointInPath(i,a)||u&&n.isPointInStroke(i,a)}}function Wd(t){return ku(Ja(t))}function vr(t,e){return"translate("+t+","+e+")"}function Gd(t){return"rotate("+t+")"}function CS(t,e){return"scale("+t+","+e+")"}function pv(t){return vr(t.x||0,t.y||0)}function SS(t){return vr(t.x||0,t.y||0)+(t.angle?" "+Gd(t.angle):"")}function FS(t){return vr(t.x||0,t.y||0)+(t.angle?" "+Gd(t.angle):"")+(t.scaleX||t.scaleY?" "+CS(t.scaleX||1,t.scaleY||1):"")}function Yd(t,e,n){function r(o,s){o("transform",SS(s)),o("d",e(null,s))}function i(o,s){return e(Au(o,s.angle),s),Jn(o,s).translate(s.x||0,s.y||0)}function a(o,s){var u=s.x||0,l=s.y||0,f=s.angle||0;o.translate(u,l),f&&o.rotate(f*=Gn),o.beginPath(),e(o,s),f&&o.rotate(-f),o.translate(-u,-l)}return{type:t,tag:"path",nested:!1,attr:r,bound:i,draw:Ud(a),pick:Wd(a),isect:n||lv(a)}}var $S=Yd("arc",cS);function _S(t,e){for(var n=t[0].orient==="horizontal"?e[1]:e[0],r=t[0].orient==="horizontal"?"y":"x",i=t.length,a=1/0,o,s;--i>=0;)t[i].defined!==!1&&(s=Math.abs(t[i][r]-n),s<a&&(a=s,o=t[i]));return o}function RS(t,e){for(var n=Math.pow(t[0].strokeWidth||1,2),r=t.length,i,a,o;--r>=0;)if(t[r].defined!==!1&&(i=t[r].x-e[0],a=t[r].y-e[1],o=i*i+a*a,o<n))return t[r];return null}function OS(t,e){for(var n=t.length,r,i,a;--n>=0;)if(t[n].defined!==!1&&(r=t[n].x-e[0],i=t[n].y-e[1],a=r*r+i*i,r=t[n].size||1,a<r*r))return t[n];return null}function Hd(t,e,n){function r(u,l){var f=l.mark.items;f.length&&u("d",e(null,f))}function i(u,l){var f=l.items;return f.length===0?u:(e(Au(u),f),Jn(u,f[0]))}function a(u,l){u.beginPath(),e(u,l)}const o=Ja(a);function s(u,l,f,c,d,h){var g=l.items,p=l.bounds;return!g||!g.length||p&&!p.contains(d,h)?null:(f*=u.pixelRatio,c*=u.pixelRatio,o(u,g,f,c)?g[0]:null)}return{type:t,tag:"path",nested:!0,attr:r,bound:i,draw:DS(a),pick:s,isect:fv,tip:n}}var zS=Hd("area",dS,_S);function BS(t,e){var n=e.clip;t.save(),Z(n)?(t.beginPath(),n(t),t.clip()):mv(t,e.group)}function mv(t,e){t.beginPath(),Nd(e)?pi(t,e,0,0):t.rect(0,0,e.width||0,e.height||0),t.clip()}function yv(t){const e=ze(t.strokeWidth,1);return t.strokeOffset!=null?t.strokeOffset:t.stroke&&e>.5&&e<1.5?.5-Math.abs(e-1):0}function TS(t,e){t("transform",pv(e))}function vv(t,e){const n=yv(e);t("d",pi(null,e,n,n))}function PS(t,e){t("class","background"),t("aria-hidden",!0),vv(t,e)}function LS(t,e){t("class","foreground"),t("aria-hidden",!0),e.strokeForeground?vv(t,e):t("d","")}function NS(t,e,n){const r=e.clip?Id(n,e,e):null;t("clip-path",r)}function IS(t,e){if(!e.clip&&e.items){const n=e.items,r=n.length;for(let i=0;i<r;++i)t.union(n[i].bounds)}return(e.clip||e.width||e.height)&&!e.noBound&&t.add(0,0).add(e.width||0,e.height||0),Jn(t,e),t.translate(e.x||0,e.y||0)}function Aa(t,e,n,r){const i=yv(e);t.beginPath(),pi(t,e,(n||0)+i,(r||0)+i)}const qS=Ja(Aa),jS=Ja(Aa,!1),US=Ja(Aa,!0);function WS(t,e,n,r){sn(e,i=>{const a=i.x||0,o=i.y||0,s=i.strokeForeground,u=i.opacity==null?1:i.opacity;(i.stroke||i.fill)&&u&&(Aa(t,i,a,o),oi(t,i),i.fill&&zs(t,i,u)&&t.fill(),i.stroke&&!s&&si(t,i,u)&&t.stroke()),t.save(),t.translate(a,o),i.clip&&mv(t,i),n&&n.translate(-a,-o),sn(i,l=>{(l.marktype==="group"||r==null||r.includes(l.marktype))&&this.draw(t,l,n,r)}),n&&n.translate(a,o),t.restore(),s&&i.stroke&&u&&(Aa(t,i,a,o),oi(t,i),si(t,i,u)&&t.stroke())})}function GS(t,e,n,r,i,a){if(e.bounds&&!e.bounds.contains(i,a)||!e.items)return null;const o=n*t.pixelRatio,s=r*t.pixelRatio;return Tf(e,u=>{let l,f,c;const d=u.bounds;if(d&&!d.contains(i,a))return;f=u.x||0,c=u.y||0;const h=f+(u.width||0),g=c+(u.height||0),p=u.clip;if(p&&(i<f||i>h||a<c||a>g))return;if(t.save(),t.translate(f,c),f=i-f,c=a-c,p&&Nd(u)&&!US(t,u,o,s))return t.restore(),null;const m=u.strokeForeground,y=e.interactive!==!1;return y&&m&&u.stroke&&jS(t,u,o,s)?(t.restore(),u):(l=Tf(u,v=>YS(v,f,c)?this.pick(v,n,r,f,c):null),!l&&y&&(u.fill||!m&&u.stroke)&&qS(t,u,o,s)&&(l=u),t.restore(),l||null)})}function YS(t,e,n){return(t.interactive!==!1||t.marktype==="group")&&t.bounds&&t.bounds.contains(e,n)}var HS={type:"group",tag:"g",nested:!1,attr:TS,bound:IS,draw:WS,pick:GS,isect:cv,content:NS,background:PS,foreground:LS},ka={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1"};function Vd(t,e){var n=t.image;return(!n||t.url&&t.url!==n.url)&&(n={complete:!1,width:0,height:0},e.loadImage(t.url).then(r=>{t.image=r,t.image.url=t.url})),n}function Xd(t,e){return t.width!=null?t.width:!e||!e.width?0:t.aspect!==!1&&t.height?t.height*e.width/e.height:e.width}function Kd(t,e){return t.height!=null?t.height:!e||!e.height?0:t.aspect!==!1&&t.width?t.width*e.height/e.width:e.height}function Mu(t,e){return t==="center"?e/2:t==="right"?e:0}function Du(t,e){return t==="middle"?e/2:t==="bottom"?e:0}function VS(t,e,n){const r=Vd(e,n),i=Xd(e,r),a=Kd(e,r),o=(e.x||0)-Mu(e.align,i),s=(e.y||0)-Du(e.baseline,a),u=!r.src&&r.toDataURL?r.toDataURL():r.src||"";t("href",u,ka["xmlns:xlink"],"xlink:href"),t("transform",vr(o,s)),t("width",i),t("height",a),t("preserveAspectRatio",e.aspect===!1?"none":"xMidYMid")}function XS(t,e){const n=e.image,r=Xd(e,n),i=Kd(e,n),a=(e.x||0)-Mu(e.align,r),o=(e.y||0)-Du(e.baseline,i);return t.set(a,o,a+r,o+i)}function KS(t,e,n){sn(e,r=>{if(n&&!n.intersects(r.bounds))return;const i=Vd(r,this);let a=Xd(r,i),o=Kd(r,i);if(a===0||o===0)return;let s=(r.x||0)-Mu(r.align,a),u=(r.y||0)-Du(r.baseline,o),l,f,c,d;r.aspect!==!1&&(f=i.width/i.height,c=r.width/r.height,f===f&&c===c&&f!==c&&(c<f?(d=a/f,u+=(o-d)/2,o=d):(d=o*f,s+=(a-d)/2,a=d))),(i.complete||i.toDataURL)&&(oi(t,r),t.globalAlpha=(l=r.opacity)!=null?l:1,t.imageSmoothingEnabled=r.smooth!==!1,t.drawImage(i,s,u,a,o))})}var JS={type:"image",tag:"image",nested:!1,attr:VS,bound:XS,draw:KS,pick:ku(),isect:We,get:Vd,xOffset:Mu,yOffset:Du},ZS=Hd("line",hS,RS);function QS(t,e){var n=e.scaleX||1,r=e.scaleY||1;(n!==1||r!==1)&&t("vector-effect","non-scaling-stroke"),t("transform",FS(e)),t("d",e.path)}function Uo(t,e){var n=e.path;if(n==null)return!0;var r=e.x||0,i=e.y||0,a=e.scaleX||1,o=e.scaleY||1,s=(e.angle||0)*Gn,u=e.pathCache;(!u||u.path!==n)&&((e.pathCache=u=Ea(n)).path=n),s&&t.rotate&&t.translate?(t.translate(r,i),t.rotate(s),Os(t,u,0,0,a,o),t.rotate(-s),t.translate(-r,-i)):Os(t,u,r,i,a,o)}function t4(t,e){return Uo(Au(t,e.angle),e)?t.set(0,0,0,0):Jn(t,e,!0)}var e4={type:"path",tag:"path",nested:!1,attr:QS,bound:t4,draw:Ud(Uo),pick:Wd(Uo),isect:lv(Uo)};function n4(t,e){t("d",pi(null,e))}function r4(t,e){var n,r;return Jn(t.set(n=e.x||0,r=e.y||0,n+e.width||0,r+e.height||0),e)}function ep(t,e){t.beginPath(),pi(t,e)}var i4={type:"rect",tag:"path",nested:!1,attr:n4,bound:r4,draw:Ud(ep),pick:Wd(ep),isect:cv};function a4(t,e){t("transform",pv(e)),t("x2",e.x2!=null?e.x2-(e.x||0):0),t("y2",e.y2!=null?e.y2-(e.y||0):0)}function o4(t,e){var n,r;return Jn(t.set(n=e.x||0,r=e.y||0,e.x2!=null?e.x2:n,e.y2!=null?e.y2:r),e)}function bv(t,e,n){var r,i,a,o;return e.stroke&&si(t,e,n)?(r=e.x||0,i=e.y||0,a=e.x2!=null?e.x2:r,o=e.y2!=null?e.y2:i,t.beginPath(),t.moveTo(r,i),t.lineTo(a,o),!0):!1}function s4(t,e,n){sn(e,r=>{if(!(n&&!n.intersects(r.bounds))){var i=r.opacity==null?1:r.opacity;i&&bv(t,r,i)&&(oi(t,r),t.stroke())}})}function u4(t,e,n,r){return t.isPointInStroke?bv(t,e,1)&&t.isPointInStroke(n,r):!1}var l4={type:"rule",tag:"line",nested:!1,attr:a4,bound:o4,draw:s4,pick:ku(u4),isect:ES},f4=Yd("shape",gS),c4=Yd("symbol",pS,fv);const np=G5();var Me={height:Sn,measureWidth:Jd,estimateWidth:Bs,width:Bs,canvas:xv};xv(!0);function xv(t){Me.width=t&&Un?Jd:Bs}function Bs(t,e){return wv(Yn(t,e),Sn(t))}function wv(t,e){return~~(.8*t.length*e)}function Jd(t,e){return Sn(t)<=0||!(e=Yn(t,e))?0:Ev(e,Zd(t))}function Ev(t,e){const n=`(${e}) ${t}`;let r=np.get(n);return r===void 0&&(Un.font=e,r=Un.measureText(t).width,np.set(n,r)),r}function Sn(t){return t.fontSize!=null?+t.fontSize||0:11}function Dr(t){return t.lineHeight!=null?t.lineHeight:Sn(t)+2}function d4(t){return L(t)?t.length>1?t:t[0]:t}function Za(t){return d4(t.lineBreak&&t.text&&!L(t.text)?t.text.split(t.lineBreak):t.text)}function Av(t){const e=Za(t);return(L(e)?e.length-1:0)*Dr(t)}function Yn(t,e){const n=e==null?"":(e+"").trim();return t.limit>0&&n.length?g4(t,n):n}function h4(t){if(Me.width===Jd){const e=Zd(t);return n=>Ev(n,e)}else if(Me.width===Bs){const e=Sn(t);return n=>wv(n,e)}else return e=>Me.width(t,e)}function g4(t,e){var n=+t.limit,r=h4(t);if(r(e)<n)return e;var i=t.ellipsis||"…",a=t.dir==="rtl",o=0,s=e.length,u;if(n-=r(i),a){for(;o<s;)u=o+s>>>1,r(e.slice(u))>n?o=u+1:s=u;return i+e.slice(o)}else{for(;o<s;)u=1+(o+s>>>1),r(e.slice(0,u))<n?o=u:s=u-1;return e.slice(0,o)+i}}function Cu(t,e){var n=t.font;return(e&&n?String(n).replace(/"/g,"'"):n)||"sans-serif"}function Zd(t,e){return(t.fontStyle?t.fontStyle+" ":"")+(t.fontVariant?t.fontVariant+" ":"")+(t.fontWeight?t.fontWeight+" ":"")+Sn(t)+"px "+Cu(t,e)}function Qd(t){var e=t.baseline,n=Sn(t);
vendor: 7,486 bytes, line 6
6return Math.round(e==="top"?.79*n:e==="middle"?.3*n:e==="bottom"?-.21*n:e==="line-top"?.29*n+.5*Dr(t):e==="line-bottom"?.29*n-.5*Dr(t):0)}const p4={left:"start",center:"middle",right:"end"},sa=new Et;function Su(t){var e=t.x||0,n=t.y||0,r=t.radius||0,i;return r&&(i=(t.theta||0)-sr,e+=r*Math.cos(i),n+=r*Math.sin(i)),sa.x1=e,sa.y1=n,sa}function m4(t,e){var n=e.dx||0,r=(e.dy||0)+Qd(e),i=Su(e),a=i.x1,o=i.y1,s=e.angle||0,u;t("text-anchor",p4[e.align]||"start"),s?(u=vr(a,o)+" "+Gd(s),(n||r)&&(u+=" "+vr(n,r))):u=vr(a+n,o+r),t("transform",u)}function th(t,e,n){var r=Me.height(e),i=e.align,a=Su(e),o=a.x1,s=a.y1,u=e.dx||0,l=(e.dy||0)+Qd(e)-Math.round(.8*r),f=Za(e),c;if(L(f)?(r+=Dr(e)*(f.length-1),c=f.reduce((d,h)=>Math.max(d,Me.width(e,h)),0)):c=Me.width(e,f),i==="center"?u-=c/2:i==="right"&&(u-=c),t.set(u+=o,l+=s,u+c,l+r),e.angle&&!n)t.rotate(e.angle*Gn,o,s);else if(n===2)return t.rotatedPoints(e.angle*Gn,o,s);return t}function y4(t,e,n){sn(e,r=>{var i=r.opacity==null?1:r.opacity,a,o,s,u,l,f,c;if(!(n&&!n.intersects(r.bounds)||i===0||r.fontSize<=0||r.text==null||r.text.length===0)){if(t.font=Zd(r),t.textAlign=r.align||"left",a=Su(r),o=a.x1,s=a.y1,r.angle&&(t.save(),t.translate(o,s),t.rotate(r.angle*Gn),o=s=0),o+=r.dx||0,s+=(r.dy||0)+Qd(r),f=Za(r),oi(t,r),L(f))for(l=Dr(r),u=0;u<f.length;++u)c=Yn(r,f[u]),r.fill&&zs(t,r,i)&&t.fillText(c,o,s),r.stroke&&si(t,r,i)&&t.strokeText(c,o,s),s+=l;else c=Yn(r,f),r.fill&&zs(t,r,i)&&t.fillText(c,o,s),r.stroke&&si(t,r,i)&&t.strokeText(c,o,s);r.angle&&t.restore()}})}function v4(t,e,n,r,i,a){if(e.fontSize<=0)return!1;if(!e.angle)return!0;var o=Su(e),s=o.x1,u=o.y1,l=th(sa,e,1),f=-e.angle*Gn,c=Math.cos(f),d=Math.sin(f),h=c*i-d*a+(s-c*s+d*u),g=d*i+c*a+(u-d*s-c*u);return l.contains(h,g)}function b4(t,e){const n=th(sa,t,2);return Xi(e,n[0],n[1],n[2],n[3])||Xi(e,n[0],n[1],n[4],n[5])||Xi(e,n[4],n[5],n[6],n[7])||Xi(e,n[2],n[3],n[6],n[7])}var x4={type:"text",tag:"text",nested:!1,attr:m4,bound:th,draw:y4,pick:ku(v4),isect:b4},w4=Hd("trail",mS,OS),_e={arc:$S,area:zS,group:HS,image:JS,line:ZS,path:e4,rect:i4,rule:l4,shape:f4,symbol:c4,text:x4,trail:w4};function rp(t,e,n){var r=_e[t.mark.marktype],i=e||r.bound;return r.nested&&(t=t.mark),i(t.bounds||(t.bounds=new Et),t,n)}var ip={mark:null};function E4(t,e,n){var r=_e[t.marktype],i=r.bound,a=t.items,o=a&&a.length,s,u,l,f;if(r.nested)return o?l=a[0]:(ip.mark=t,l=ip),f=rp(l,i,n),e=e&&e.union(f)||f,e;if(e=e||t.bounds&&t.bounds.clear()||new Et,o)for(s=0,u=a.length;s<u;++s)e.union(rp(a[s],i,n));return t.bounds=e}const A4=["marktype","name","role","interactive","clip","items","zindex","x","y","width","height","align","baseline","fill","fillOpacity","opacity","blend","stroke","strokeOpacity","strokeWidth","strokeCap","strokeDash","strokeDashOffset","strokeForeground","strokeOffset","startAngle","endAngle","innerRadius","outerRadius","cornerRadius","padAngle","cornerRadiusTopLeft","cornerRadiusTopRight","cornerRadiusBottomLeft","cornerRadiusBottomRight","interpolate","tension","orient","defined","url","aspect","smooth","path","scaleX","scaleY","x2","y2","size","shape","text","angle","theta","radius","dir","dx","dy","ellipsis","limit","lineBreak","lineHeight","font","fontSize","fontWeight","fontStyle","fontVariant","description","aria","ariaRole","ariaRoleDescription"];function k4(t,e){return JSON.stringify(t,A4,e)}function M4(t){const e=typeof t=="string"?JSON.parse(t):t;return kv(e)}function kv(t){var e=t.marktype,n=t.items,r,i,a;if(n)for(i=0,a=n.length;i<a;++i)r=e?"mark":"group",n[i][r]=t,n[i].zindex&&(n[i][r].zdirty=!0),(e||r)==="group"&&kv(n[i]);return e&&E4(t),t}class D4{constructor(e){arguments.length?this.root=M4(e):(this.root=ap({marktype:"group",name:"root",role:"frame"}),this.root.items=[new jd(this.root)])}toJSON(e){return k4(this.root,e||0)}mark(e,n,r){n=n||this.root.items[0];const i=ap(e,n);return n.items[r]=i,i.zindex&&(i.group.zdirty=!0),i}}function ap(t,e){const n={bounds:new Et,clip:!!t.clip,group:e,interactive:t.interactive!==!1,items:[],marktype:t.marktype,name:t.name||void 0,role:t.role||void 0,zindex:t.zindex||0};return t.aria!=null&&(n.aria=t.aria),t.description&&(n.description=t.description),n}function dr(t,e,n){return!t&&typeof document<"u"&&document.createElement&&(t=document),t?n?t.createElementNS(n,e):t.createElement(e):null}function Mv(t,e){e=e.toLowerCase();for(var n=t.childNodes,r=0,i=n.length;r<i;++r)if(n[r].tagName.toLowerCase()===e)return n[r]}function kt(t,e,n,r){var i=t.childNodes[e],a;return(!i||i.tagName.toLowerCase()!==n.toLowerCase())&&(a=i||null,i=dr(t.ownerDocument,n,r),t.insertBefore(i,a)),i}function Pe(t,e){for(var n=t.childNodes,r=n.length;r>e;)t.removeChild(n[--r]);return t}function Dv(t){return"mark-"+t.marktype+(t.role?" role-"+t.role:"")+(t.name?" "+t.name:"")}function eh(t,e){const n=e.getBoundingClientRect();return[t.clientX-n.left-(e.clientLeft||0),t.clientY-n.top-(e.clientTop||0)]}function C4(t,e,n,r){var i=t&&t.mark,a,o;if(i&&(a=_e[i.marktype]).tip){for(o=eh(e,n),o[0]-=r[0],o[1]-=r[1];t=t.mark.group;)o[0]-=t.x||0,o[1]-=t.y||0;t=a.tip(i.items,o)}return t}class Cv{constructor(e,n){this._active=null,this._handlers={},this._loader=e||Vc(),this._tooltip=n||S4}initialize(e,n,r){return this._el=e,this._obj=r||null,this.origin(n)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}origin(e){return arguments.length?(this._origin=e||[0,0],this):this._origin.slice()}scene(e){return arguments.length?(this._scene=e,this):this._scene}on(){}off(){}_handlerIndex(e,n,r){for(let i=e?e.length:0;--i>=0;)if(e[i].type===n&&(!r||e[i].handler===r))return i;return-1}handlers(e){const n=this._handlers,r=[];if(e)r.push(...n[this.eventName(e)]);else for(const i in n)r.push(...n[i]);return r}eventName(e){const n=e.indexOf(".");return n<0?e:e.slice(0,n)}handleHref(e,n,r){this._loader.sanitize(r,{context:"href"}).then(i=>{const a=new MouseEvent(e.type,e),o=dr(null,"a");for(const s in i)o.setAttribute(s,i[s]);o.dispatchEvent(a)}).catch(()=>{})}handleTooltip(e,n,r){if(n&&n.tooltip!=null){n=C4(n,e,this.canvas(),this._origin);const i=r&&n&&n.tooltip||null;this._tooltip.call(this._obj,this,e,n,i)}}getItemBoundingClientRect(e){const n=this.canvas();if(!n)return;const r=n.getBoundingClientRect(),i=this._origin,a=e.bounds,o=a.width(),s=a.height();let u=a.x1+i[0]+r.left,l=a.y1+i[1]+r.top;for(;e.mark&&(e=e.mark.group);)u+=e.x||0,l+=e.y||0;return{x:u,y:l,width:o,height:s,left:u,top:l,right:u+o,bottom:l+s}}}function S4(t,e,n,r){t.element().setAttribute("title",r||"")}class Fu{constructor(e){this._el=null,this._bgcolor=null,this._loader=new vS(e)}initialize(e,n,r,i,a){return this._el=e,this.resize(n,r,i,a)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}background(e){return arguments.length===0?this._bgcolor:(this._bgcolor=e,this)}resize(e,n,r,i){return this._width=e,this._height=n,this._origin=r||[0,0],this._scale=i||1,this}dirty(){}render(e,n){const r=this;return r._call=function(){r._render(e,n)},r._call(),r._call=null,r}_render(){}renderAsync(e,n){const r=this.render(e,n);return this._ready?this._ready.then(()=>r):Promise.resolve(r)}_load(e,n){var r=this,i=r._loader[e](n);if(!r._ready){const a=r._call;r._ready=r._loader.ready().then(o=>{o&&a(),r._ready=null})}return i}sanitizeURL(e){return this._load("sanitizeURL",e)}loadImage(e){return this._load("loadImage",e)}}const F4="keydown",$4="keypress",_4="keyup",Sv="dragenter",Wo="dragleave",Fv="dragover",Pf="pointerdown",R4="pointerup",Ts="pointermove",Go="pointerout",$v="pointerover",Lf="mou
6sedown",O4="mouseup",_v="mousemove",Ps="mouseout",Rv="mouseover",Ls="click",z4="dblclick",B4="wheel",Ov="mousewheel",Ns="touchstart",Is="touchmove",qs="touchend",T4=[F4,$4,_4,Sv,Wo,Fv,Pf,R4,Ts,Go,$v,Lf,O4,_v,Ps,Rv,Ls,z4,B4,Ov,Ns,Is,qs],Nf=Ts,ua=Ps,If=Ls;class $u extends Cv{constructor(e,n){super(e,n),this._down=null,this._touch=null,this._first=!0,this._events={},this.events=T4,this.pointermove=sp([Ts,_v],[$v,Rv],[Go,Ps]),this.dragover=sp([Fv],[Sv],[Wo]),this.pointerout=up([Go,Ps]),this.dragleave=up([Wo])}initialize(e,n,r){return this._canvas=e&&Mv(e,"canvas"),[Ls,Lf,Pf,Ts,Go,Wo].forEach(i=>op(this,i)),super.initialize(e,n,r)}canvas(){return this._canvas}context(){return this._canvas.getContext("2d")}DOMMouseScroll(e){this.fire(Ov,e)}pointerdown(e){this._down=this._active,this.fire(Pf,e)}mousedown(e){this._down=this._active,this.fire(Lf,e)}click(e){this._down===this._active&&(this.fire(Ls,e),this._down=null)}touchstart(e){this._touch=this.pickEvent(e.changedTouches[0]),this._first&&(this._active=this._touch,this._first=!1),this.fire(Ns,e,!0)}touchmove(e){this.fire(Is,e,!0)}touchend(e){this.fire(qs,e,!0),this._touch=null}fire(e,n,r){const i=r?this._touch:this._active,a=this._handlers[e];if(n.vegaType=e,e===If&&i&&i.href?this.handleHref(n,i,i.href):(e===Nf||e===ua)&&this.handleTooltip(n,i,e!==ua),a)for(let o=0,s=a.length;o<s;++o)a[o].handler.call(this._obj,n,i)}on(e,n){const r=this.eventName(e),i=this._handlers;return this._handlerIndex(i[r],e,n)<0&&(op(this,e),(i[r]||(i[r]=[])).push({type:e,handler:n})),this}off(e,n){const r=this.eventName(e),i=this._handlers[r],a=this._handlerIndex(i,e,n);return a>=0&&i.splice(a,1),this}pickEvent(e){const n=eh(e,this._canvas),r=this._origin;return this.pick(this._scene,n[0],n[1],n[0]-r[0],n[1]-r[1])}pick(e,n,r,i,a){const o=this.context();return _e[e.marktype].pick.call(this,o,e,n,r,i,a)}}const P4=t=>t===Ns||t===Is||t===qs?[Ns,Is,qs]:[t];function op(t,e){P4(e).forEach(n=>L4(t,n))}function L4(t,e){const n=t.canvas();n&&!t._events[e]&&(t._events[e]=1,n.addEventListener(e,t[e]?r=>t[e](r):r=>t.fire(e,r)))}function Ki(t,e,n){e.forEach(r=>t.fire(r,n))}function sp(t,e,n){return function(r){const i=this._active,a=this.pickEvent(r);a===i?Ki(this,t,r):((!i||!i.exit)&&Ki(this,n,r),this._active=a,Ki(this,e,r),Ki(this,t,r))}}function up(t){return function(e){Ki(this,t,e),this._active=null}}function N4(){return typeof window<"u"&&window.devicePixelRatio||1}function I4(t,e,n,r,i,a){const o=typeof HTMLElement<"u"&&t instanceof HTMLElement&&t.parentNode!=null,s=t.getContext("2d"),u=o?N4():i;t.width=e*u,t.height=n*u;for(const l in a)s[l]=a[l];return o&&u!==1&&(t.style.width=e+"px",t.style.height=n+"px"),s.pixelRatio=u,s.setTransform(u,0,0,u,u*r[0],u*r[1]),t}class qf extends Fu{constructor(e){super(e),this._options={},this._redraw=!1,this._dirty=new Et,this._tempb=new Et}initialize(e,n,r,i,a,o){return this._options=o||{},this._canvas=this._options.externalContext?null:jn(1,1,this._options.type),e&&this._canvas&&(Pe(e,0).appendChild(this._canvas),this._canvas.setAttribute("class","marks")),super.initialize(e,n,r,i,a)}resize(e,n,r,i){if(super.resize(e,n,r,i),this._canvas)I4(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{const a=this._options.externalContext;a||_("CanvasRenderer is missing a valid canvas or context"),a.scale(this._scale,this._scale),a.translate(this._origin[0],this._origin[1])}return this._redraw=!0,this}canvas(){return this._canvas}context(){return this._options.externalContext||(this._canvas?this._canvas.getContext("2d"):null)}dirty(e){const n=this._tempb.clear().union(e.bounds);let r=e.mark.group;for(;r;)n.translate(r.x||0,r.y||0),r=r.mark.group;this._dirty.union(n)}_render(e,n){const r=this.context(),i=this._origin,a=this._width,o=this._height,s=this._dirty,u=q4(i,a,o);r.save();const l=this._redraw||s.empty()?(this._redraw=!1,u.expand(1)):j4(r,u.intersect(s),i);return this.clear(-i[0],-i[1],a,o),this.draw(r,e,l,n),r.restore(),s.clear(),this}draw(e,n,r,i){if(n.marktype!=="group"&&i!=null&&!i.includes(n.marktype))return;const a=_e[n.marktype];
6n.clip&&BS(e,n),a.draw.call(this,e,n,r,i),n.clip&&e.restore()}clear(e,n,r,i){const a=this._options,o=this.context();a.type!=="pdf"&&!a.externalContext&&o.clearRect(e,n,r,i),this._bgcolor!=null&&(o.fillStyle=this._bgcolor,o.fillRect(e,n,r,i))}}const q4=(t,e,n)=>new Et().set(0,0,e,n).translate(-t[0],-t[1]);function j4(t,e,n){return e.expand(1).round(),t.pixelRatio%1&&e.scale(t.pixelRatio).round().scale(1/t.pixelRatio),e.translate(-(n[0]%1),-(n[1]%1)),t.beginPath(),t.rect(e.x1,e.y1,e.width(),e.height()),t.clip(),e}class U4 extends Cv{constructor(e,n){super(e,n);const r=this;r._hrefHandler=xl(r,(i,a)=>{a&&a.href&&r.handleHref(i,a,a.href)}),r._tooltipHandler=xl(r,(i,a)=>{r.handleTooltip(i,a,i.type!==ua)})}initialize(e,n,r){let i=this._svg;return i&&(i.removeEventListener(If,this._hrefHandler),i.removeEventListener(Nf,this._tooltipHandler),i.removeEventListener(ua,this._tooltipHandler)),this._svg=i=e&&Mv(e,"svg"),i&&(i.addEventListener(If,this._hrefHandler),i.addEventListener(Nf,this._tooltipHandler),i.addEventListener(ua,this._tooltipHandler)),super.initialize(e,n,r)}canvas(){return this._svg}on(e,n){const r=this.eventName(e),i=this._handlers;if(this._handlerIndex(i[r],e,n)<0){const o={type:e,handler:n,listener:xl(this,n)};(i[r]||(i[r]=[])).push(o),this._svg&&this._svg.addEventListener(r,o.listener)}return this}off(e,n){const r=this.eventName(e),i=this._handlers[r],a=this._handlerIndex(i,e,n);return a>=0&&(this._svg&&this._svg.removeEventListener(r,i[a].listener),i.splice(a,1)),this}}const xl=(t,e)=>n=>{let r=n.target.__data__;r=Array.isArray(r)?r[0]:r,n.vegaType=n.type,e.call(t._obj,n,r)},zv="aria-hidden",nh="aria-label",rh="role",ih="aria-roledescription",Bv="graphics-object",ah="graphics-symbol",Tv=(t,e,n)=>({[rh]:t,[ih]:e,[nh]:n||void 0}),W4=an(["axis-domain","axis-grid","axis-label","axis-tick","axis-title","legend-band","legend-entry","legend-gradient","legend-label","legend-title","legend-symbol","title"]),lp={axis:{desc:"axis",caption:H4},legend:{desc:"legend",caption:V4},"title-text":{desc:"title",caption:t=>`Title text '${cp(t)}'`}
6,"title-subtitle":{desc:"subtitle",caption:t=>`Subtitle text '${cp(t)}'`}},fp={ariaRole:rh,ariaRoleDescription:ih,description:nh};function Pv(t,e){const n=e.aria===!1;if(t(zv,n||void 0),n||e.description==null)for(const r in fp)t(fp[r],void 0);else{const r=e.mark.marktype;t(nh,e.description),t(rh,e.ariaRole||(r==="group"?Bv:ah)),t(ih,e.ariaRoleDescription||`${r} mark`)}}function Lv(t){return t.aria===!1?{[zv]:!0}:W4[t.role]?null:lp[t.role]?Y4(t,lp[t.role]):G4(t)}function G4(t){const e=t.marktype,n=e==="group"||e==="text"||t.items.some(r=>r.description!=null&&r.aria!==!1);return Tv(n?Bv:ah,`${e} mark container`,t.description)}function Y4(t,e){try{const n=t.items[0],r=e.caption||(()=>"");return Tv(e.role||ah,e.desc,n.description||r(n))}catch{return null}}function cp(t){return G(t.text).join(" ")}function H4(t){const e=t.datum,n=t.orient,r=e.title?Nv(t):null,i=t.context,a=i.scales[e.scale].value,o=i.dataflow.locale(),s=a.type;return`${n==="left"||n==="right"?"Y":"X"}-axis`+(r?` titled '${r}'`:"")+` for a ${ai(s)?"discrete":s} scale with ${rv(o,a,t)}`}function V4(t){const e=t.datum,n=e.title?Nv(t):null,r=`${e.type||""} legend`.trim(),i=e.scales,a=Object.keys(i),o=t.context,s=o.scales[i[a[0]]].value,u=o.dataflow.locale();return K4(r)+(n?` titled '${n}'`:"")+` for ${X4(a)} with ${rv(u,s,t)}`}function Nv(t){try{return G(rt(t.items).items[0].text).join(" ")}catch{return null}}function X4(t){return t=t.map(e=>e+(e==="fill"||e==="stroke"?" color":"")),t.length<2?t[0]:t.slice(0,-1).join(", ")+" and "+rt(t)}function K4(t){return t.length?t[0].toUpperCase()+t.slice(1):t}const Iv=t=>(t+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),J4=t=>Iv(t).replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;");function qv(){let t="",e="",n="";const r=[],i=()=>e=n="",a=u=>{e&&(t+=`${e}>${n}`,i()),r.push(u)},o=(u,l)=>(l!=null&&(e+=` ${u}="${J4(l)}"`),s),s={open(u,...l){a(u),e="<"+u;for(const f of l)for(const c in f)o(c,f[c]);return s},close(){const u=r.pop();return e?t+=e+(n?`>${n}</${u}>`:"/>"):t+=`</${u}>`,i(),s},attr:o,text:u=>(n+=Iv(u),s),toString:()=>t};return s}const Z4=t=>jv(qv(),t)+"";function jv(t,e){if(t.open(e.tagName),e.hasAttributes()){const n=e.attributes,r=n.length;for(let i=0;i<r;++i)t.attr(n[i].name,n[i].value)}if(e.hasChildNodes()){const n=e.childNodes;for(const r of n)r.nodeType===3?t.text(r.nodeValue):jv(t,r)}return t.close()}const js={fill:"fill",fillOpacity:"fill-opacity",stroke:"stroke",strokeOpacity:"stroke-opacity",strokeWidth:"stroke-width",strokeCap:"stroke-linecap",strokeJoin:"stroke-linejoin",strokeDash:"stroke-dasharray",strokeDashOffset:"stroke-dashoffset",strokeMiterLimit:"stroke-miterlimit",opacity:"opacity"},Us={blend:"mix-blend-mode"},Uv={fill:"none","stroke-miterlimit":10},Ci=0,dp="http://www.w3.org/2000/xmlns/",xt=ka.xmlns;class Wv extends Fu{constructor(e){super(e),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}initialize(e,n,r,i,a){return this._defs={},this._clearDefs(),e&&(this._svg=kt(e,0,"svg",xt),this._svg.setAttributeNS(dp,"xmlns",xt),this._svg.setAttributeNS(dp,"xmlns:xlink",ka["xmlns:xlink"]),this._svg.setAttribute("version",ka.version),this._svg.setAttribute("class","marks"),Pe(e,1),this._root=kt(this._svg,Ci,"g",xt),Ln(this._root,Uv),Pe(this._svg,Ci+1)),this.background(this._bgcolor),super.initialize(e,n,r,i,a)}background(e){return arguments.length&&this._svg&&this._svg.style.setProperty("background-color",e),super.background(...arguments)}resize(e,n,r,i){return super.resize(e,n,r,i),this._svg&&(Ln(this._svg,{width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}),this._root.setAttribute("transform",`translate(${this._origin})`)),this._dirty=[],this}canvas(){return this._svg}svg(){const e=this._svg,n=this._bgcolor;if(!e)return null;let r;n&&(e.removeAttribute("style"),r=kt(e,Ci,"rect",xt),Ln(r,{width:this._width,height:this._height,fill:n}));const i=Z4(e);return n&&(e.removeChild(r),this._svg.style.setProperty("background-color",n)),i}_render(e,n){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,e,void 0,n),Pe(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this}dirty(e){e.dirty!==this._dirtyID&&(e.dirty=this._dirtyID,this._dirty.push(e))}isDirty(e){return this._dirtyAll||!e._svg||!e._svg.ownerSVGElement||e.dirty===this._dirtyID}_dirtyCheck(){this._dirtyAll=!0;const e=this._dirty;if(!e.length||!this._dirtyID)return!0;const n=++this._dirtyID;let r,i,a,o,s,u,l;for(s=0,u=e.length;s<u;++s)if(r=e[s],i=r.mark,i.marktype!==a&&(a=i.marktype,o=_e[a]),i.zdirty&&i.dirty!==n&&(this._dirtyAll=!1,hp(r,n),i.items.forEac
vendor: 6,767 bytes, lines 6-7
6h(f=>{f.dirty=n})),!i.zdirty){if(r.exit){o.nested&&i.items.length?(l=i.items[0],l._svg&&this._update(o,l._svg,l)):r._svg&&(l=r._svg.parentNode,l&&l.removeChild(r._svg)),r._svg=null;continue}r=o.nested?i.items[0]:r,r._update!==n&&(!r._svg||!r._svg.ownerSVGElement?(this._dirtyAll=!1,hp(r,n)):this._update(o,r._svg,r),r._update=n)}return!this._dirtyAll}mark(e,n,r,i){if(!this.isDirty(n))return n._svg;const a=this._svg,o=n.marktype,s=_e[o],u=n.interactive===!1?"none":null,l=s.tag==="g",f=gp(n,e,r,"g",a);if(o!=="group"&&i!=null&&!i.includes(o))return Pe(f,0),n._svg;f.setAttribute("class",Dv(n));const c=Lv(n);for(const p in c)jt(f,p,c[p]);l||jt(f,"pointer-events",u),jt(f,"clip-path",n.clip?Id(this,n,n.group):null);let d=null,h=0;const g=p=>{const m=this.isDirty(p),y=gp(p,f,d,s.tag,a);m&&(this._update(s,y,p),l&&e8(this,y,p,i)),d=y,++h};return s.nested?n.items.length&&g(n.items[0]):sn(n,g),Pe(f,h),f}_update(e,n,r){En=n,Tt=n.__values__,Pv(la,r),e.attr(la,r,this);const i=r8[e.type];i&&i.call(this,e,n,r),En&&this.style(En,r)}style(e,n){if(n!=null){for(const r in js){let i=r==="font"?Cu(n):n[r];if(i===Tt[r])continue;const a=js[r];i==null?e.removeAttribute(a):(Ld(i)&&(i=av(i,this._defs.gradient,Gv())),e.setAttribute(a,i+"")),Tt[r]=i}for(const r in Us)Yo(e,Us[r],n[r])}}defs(){const e=this._svg,n=this._defs;let r=n.el,i=0;for(const a in n.gradient)r||(n.el=r=kt(e,Ci+1,"defs",xt)),i=Q4(r,n.gradient[a],i);for(const a in n.clipping)r||(n.el=r=kt(e,Ci+1,"defs",xt)),i=t8(r,n.clipping[a],i);r&&(i===0?(e.removeChild(r),n.el=null):Pe(r,i))}_clearDefs(){const e=this._defs;e.gradient={},e.clipping={}}}function hp(t,e){for(;t&&t.dirty!==e;t=t.mark.group)if(t.dirty=e,t.mark&&t.mark.dirty!==e)t.mark.dirty=e;else return}function Q4(t,e,n){let r,i,a;if(e.gradient==="radial"){let o=kt(t,n++,"pattern",xt);Ln(o,{id:Rs+e.id,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),o=kt(o,0,"rect",xt),Ln(o,{width:1,height:1,fill:`url(${Gv()}#${e.id})`}),t=kt(t,n++,"radialGradient",xt),Ln(t,{id:e.id,fx:e.x1,fy:e.y1,fr:e.r1,cx:e.x2,cy:e.y2,r:e.r2})}else t=kt(t,n++,"linearGradient",xt),Ln(t,{id:e.id,x1:e.x1,x2:e.x2,y1:e.y1,y2:e.y2});for(r=0,i=e.stops.length;r<i;++r)a=kt(t,r,"stop",xt),a.setAttribute("offset",e.stops[r].offset),a.setAttribute("stop-color",e.stops[r].color);return Pe(t,r),n}function t8(t,e,n){let r;return t=kt(t,n,"clipPath",xt),t.setAttribute("id",e.id),e.path?(r=kt(t,0,"path",xt),r.setAttribute("d",e.path)):(r=kt(t,0,"rect",xt),Ln(r,{x:0,y:0,width:e.width,height:e.height})),Pe(t,1),n+1}function e8(t,e,n,r){e=e.lastChild.previousSibling;let i,a=0;sn(n,o=>{i=t.mark(e,o,i,r),++a}),Pe(e,1+a)}function gp(t,e,n,r,i){let a=t._svg,o;if(!a&&(o=e.ownerDocument,a=dr(o,r,xt),t._svg=a,t.mark&&(a.__data__=t,a.__values__={fill:"default"},r==="g"))){const s=dr(o,"path",xt);a.appendChild(s),s.__data__=t;const u=dr(o,"g",xt);a.appendChild(u),u.__data__=t;const l=dr(o,"path",xt);a.appendChild(l),l.__data__=t,l.__values__={fill:"default"}}return(a.ownerSVGElement!==i||n8(a,n))&&e.insertBefore(a,n?n.nextSibling:e.firstChild),a}function n8(t,e){return t.parentNode&&t.parentNode.childNodes.length>1&&t.previousSibling!=e}let En=null,Tt=null;const r8={group(t,e,n){const r=En=e.childNodes[2];Tt=r.__values__,t.foreground(la,n,this),Tt=e.__values__,En=e.childNodes[1],t.content(la,n,this);const i=En=e.childNodes[0];t.background(la,n,this);const a=n.mark.interactive===!1?"none":null;if(a!==Tt.events&&(jt(r,"pointer-events",a),jt(i,"pointer-events",a),Tt.events=a),n.strokeForeground&&n.stroke){const o=n.fill;jt(r,"display",null),this.style(i,n),jt(i,"stroke",null),o&&(n.fill=null),Tt=r.__values__,this.style(r,n),o&&(n.fill=o),En=null}else jt(r,"display","none")},image(t,e,n){n.smooth===!1?(Yo(e,"image-rendering","optimizeSpeed"),Yo(e,"image-rendering","pixelated")):Yo(e,"image-rendering",null)},text(t,e,n){const r=Za(n);let i,a,o,s;L(r)?(a=r.map(u=>Yn(n,u)),i=a.join(`
7`),i!==Tt.text&&(Pe(e,0),o=e.ownerDocument,s=Dr(n),a.forEach((u,l)=>{const f=dr(o,"tspan",xt);f.__data__=n,f.textContent=u,l&&(f.setAttribute("x",0),f.setAttribute("dy",s)),e.appendChild(f)}),Tt.text=i)):(a=Yn(n,r),a!==Tt.text&&(e.textContent=a,Tt.text=a)),jt(e,"font-family",Cu(n)),jt(e,"font-size",Sn(n)+"px"),jt(e,"font-style",n.fontStyle),jt(e,"font-variant",n.fontVariant),jt(e,"font-weight",n.fontWeight)}};function la(t,e,n){e!==Tt[t]&&(n?i8(En,t,e,n):jt(En,t,e),Tt[t]=e)}function Yo(t,e,n){n!==Tt[e]&&(n==null?t.style.removeProperty(e):t.style.setProperty(e,n+""),Tt[e]=n)}function Ln(t,e){for(const n in e)jt(t,n,e[n])}function jt(t,e,n){n!=null?t.setAttribute(e,n):t.removeAttribute(e)}function i8(t,e,n,r){n!=null?t.setAttributeNS(r,e,n):t.removeAttributeNS(r,e)}function Gv(){let t;return typeof window>"u"?"":(t=window.location).hash?t.href.slice(0,-t.hash.length):t.href}class a8 extends Fu{constructor(e){super(e),this._text=null,this._defs={gradient:{},clipping:{}}}svg(){return this._text}_render(e){const n=qv();n.open("svg",J({},ka,{class:"marks",width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}));const r=this._bgcolor;return r&&r!=="transparent"&&r!=="none"&&n.open("rect",{width:this._width,height:this._height,fill:r}).close(),n.open("g",Uv,{transform:"translate("+this._origin+")"}),this.mark(n,e),n.close(),this.defs(n),this._text=n.close()+"",this}mark(e,n){const r=_e[n.marktype],i=r.tag,a=[Pv,r.attr];e.open("g",{class:Dv(n),"clip-path":n.clip?Id(this,n,n.group):null},Lv(n),{"pointer-events":i!=="g"&&n.interactive===!1?"none":null});const o=s=>{const u=this.href(s);if(u&&e.open("a",u),e.open(i,this.attr(n,s,a,i!=="g"?i:null)),i==="text"){const l=Za(s);if(L(l)){const f={x:0,dy:Dr(s)};for(let c=0;c<l.length;++c)e.open("tspan",c?f:null).text(Yn(s,l[c])).close()}else e.text(Yn(s,l))}else if(i==="g"){const l=s.strokeForeground,f=s.fill,c=s.stroke;l&&c&&(s.stroke=null),e.open("path",this.attr(n,s,r.background,"bgrect")).close(),e.open("g",this.attr(n,s,r.content)),sn(s,d=>this.mark(e,d)),e.close(),l&&c?(f&&(s.fill=null),s.stroke=c,e.open("path",this.attr(n,s,r.foreground,"bgrect")).close(),f&&(s.fill=f)):e.open("path",this.attr(n,s,r.foreground,"bgfore")).close()}e.close(),u&&e.close()};return r.nested?n.items&&n.items.length&&o(n.items[0]):sn(n,o),e.close()}href(e){const n=e.href;let r;if(n){if(r=this._hrefs&&this._hrefs[n])return r;this.sanitizeURL(n).then(i=>{i["xlink:href"]=i.href,i.href=null,(this._hrefs||(this._hrefs={}))[n]=i})}return null}attr(e,n,r,i){const a={},o=(s,u,l,f)=>{a[f||s]=u};return Array.isArray(r)?r.forEach(s=>s(o,n,this)):r(o,n,this),i&&o8(a,n,e,i,this._defs),a}defs(e){const n=this._defs.gradient,r=this._defs.clipping;if(Object.keys(n).length+Object.keys(r).length!==0){e.open("defs");for(const a in n){const o=n[a],s=o.stops;
7o.gradient==="radial"?(e.open("pattern",{id:Rs+a,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),e.open("rect",{width:"1",height:"1",fill:"url(#"+a+")"}).close(),e.close(),e.open("radialGradient",{id:a,fx:o.x1,fy:o.y1,fr:o.r1,cx:o.x2,cy:o.y2,r:o.r2})):e.open("linearGradient",{id:a,x1:o.x1,x2:o.x2,y1:o.y1,y2:o.y2});for(let u=0;u<s.length;++u)e.open("stop",{offset:s[u].offset,"stop-color":s[u].color}).close();e.close()}for(const a in r){const o=r[a];e.open("clipPath",{id:a}),o.path?e.open("path",{d:o.path}).close():e.open("rect",{x:0,y:0,width:o.width,height:o.height}).close(),e.close()}e.close()}}}function o8(t,e,n,r,i){let a;if(e==null||(r==="bgrect"&&n.interactive===!1&&(t["pointer-events"]="none"),r==="bgfore"&&(n.interactive===!1&&(t["pointer-events"]="none"),t.display="none",e.fill!==null)))return t;r==="image"&&e.smooth===!1&&(a=["image-rendering: optimizeSpeed;","image-rendering: pixelated;"]),r==="text"&&(t["font-family"]=Cu(e),t["font-size"]=Sn(e)+"px",t["font-style"]=e.fontStyle,t["font-variant"]=e.fontVariant,t["font-weight"]=e.fontWeight);for(const o in js){let s=e[o];const u=js[o];s==="transparent"&&(u==="fill"||u==="stroke")||s!=null&&(Ld(s)&&(s=av(s,i.gradient,"")),t[u]=s)}for(const o in Us){const s=e[o];s!=null&&(a=a||[],a.push(`${Us[o]}: ${s};`))}return a&&(t.style=a.join(" ")),t}const Be={svgMarkTypes:["text"],svgOnTop:!0,debug:!1};function PT(t){Be.svgMarkTypes=t.svgMarkTypes??["text"],Be.svgOnTop=t.svgOnTop??!0,Be.debug=t.debug??!1}class pp extends Fu{constructor(e){super(e),this._svgRenderer=new Wv(e),this._canvasRenderer=new qf(e)}initialize(e,n,r,i,a){this._root_el=kt(e,0,"div");const o=kt(this._root_el,0,"div"),s=kt(this._root_el,1,"div");return this._root_el.style.position="relative",Be.debug||(o.style.height="100%",s.style.position="absolute",s.style.top="0",s.style.left="0",s.style.height="100%",s.style.width="100%"),this._svgEl=Be.svgOnTop?s:o,this._canvasEl=Be.svgOnTop?o:s,this._svgEl.style.pointerEvents="none",this._canvasRenderer.initialize(this._canvasEl,n,r,i,a),this._svgRenderer.initialize(this._svgEl,n,r,i,a),super.initialize(e,n,r,i,a)}dirty(e){return Be.svgMarkTypes.includes(e.mark.marktype)?this._svgRenderer.dirty(e):this._canvasRenderer.dirty(e),this}_render(e,n){const i=(n??["arc","area","image","line","path","rect","rule","shape","symbol","text","trail"]).filter(a=>!Be.svgMarkTypes.includes(a));this._svgRenderer.render(e,Be.svgMarkTypes),this._canvasRenderer.render(e,i)}resize(e,n,r,i){return super.resize(e,n,r,i),this._svgRenderer.resize(e,n,r,i),this._canvasRenderer.resize(e,n,r,i),this}background(e){return Be.svgOnTop?this._canvasRenderer.background(e):this._svgRenderer.background(e),this}}class s8 extends $u{constructor(e,n){super(e,n)}initialize(e,n,r){const i=kt(kt(e,0,"div"),Be.svgOnTop?0:1,"div");return super.initialize(i,n,r)}}const Yv="canvas",Hv="hybrid",Vv="png",Xv="svg",Kv="none",hr={Canvas:Yv,PNG:Vv,SVG:Xv,Hybrid:Hv,None:Kv},Cr={};Cr[Yv]=Cr[Vv]={renderer:qf,headless:qf,handler:$u};Cr[Xv]={renderer:Wv,headless:a8,handler:U4};Cr[Hv]={renderer:pp,headless:pp,handler:s8};Cr[Kv]={};function oh(t,e){return t=String(t||"").toLowerCase(),arguments.length>1?(Cr[t]=e,this):Cr[t]}function u8(t,e,n){const r=[],i=new Et().union(e),a=t.marktype;return a?Jv(t,i,n,r):a==="group"?Zv(t,i,n,r):_("Intersect scene must be mark node or group item.")}function Jv(t,e,n,r){if(l8(t,e,n)){const i=t.items,a=t.marktype,o=i.length;let s=0;if(a==="group")for(;s<o;++s)Zv(i[s],e,n,r);else for(const u=_e[a].isect;s<o;++s){const l=i[s];Qv(l,e,u)&&r.push(l)}}return r}function l8(t,e,n){return t.bounds&&e.intersects(t.bounds)&&(t.marktype==="group"||t.interactive!==!1&&(!n||n(t)))}function Zv(t,e,n,r){n&&n(t.mark)&&Qv(t,e,_e.group.isect)&&r.push(t);const i=t.items,a=i&&i.length;if(a){const o=t.x||0,s=t.y||0;e.translate(-o,-s);for(let u=0;u<a;++u)Jv(i[u],e,n,r);e.translate(o,s)}return r}function Qv(t,e,n){const r=t.bounds;return e.encloses(r)||e.intersects(r)&&n(t,e)}const wl=new Et;function f8(t){const e=t.clip;if(Z(e))e(Au(wl.clear()));else if(e)wl.set(0,0,t.group.width,t.group.height);else return;t.bounds.intersect(wl)}const c8=1e-9;function tb(t,e,n){return t===e?!0:n==="path"?d8(t,e):t instanceof Date&&e instanceof Date?+t==+e:Ar(t)&&Ar(e)?Math.abs(t-e)<=c8:!t||!e||!K(t)&&!K(e)?t==e:h8(t,e)}function d8(t,e){return tb(Ea(t),Ea(e))}function h8(t,e){var n=Object.keys(t),r=Object.keys(e),i,a;if(n.length!==r.length)return!1;
vendor: 78,959 bytes, line 7
7for(n.sort(),r.sort(),a=n.length-1;a>=0;a--)if(n[a]!=r[a])return!1;for(a=n.length-1;a>=0;a--)if(i=n[a],!tb(t[i],e[i],i))return!1;return typeof t==typeof e}function LT(){yS(),wC()}const ui="top",Ne="left",qe="right",Hn="bottom",g8="top-left",p8="top-right",m8="bottom-left",y8="bottom-right",sh="start",jf="middle",Ut="end",v8="x",b8="y",_u="group",uh="axis",lh="title",x8="frame",w8="scope",fh="legend",eb="row-header",nb="row-footer",rb="row-title",ib="column-header",ab="column-footer",ob="column-title",E8="padding",A8="symbol",sb="fit",ub="fit-x",lb="fit-y",k8="pad",ch="none",Ao="all",Uf="each",dh="flush",Nn="column",In="row";function fb(t){F.call(this,null,t)}B(fb,F,{transform(t,e){const n=e.dataflow,r=t.mark,i=r.marktype,a=_e[i],o=a.bound;let s=r.bounds,u;if(a.nested)r.items.length&&n.dirty(r.items[0]),s=ko(r,o),r.items.forEach(l=>{l.bounds.clear().union(s)});else if(i===_u||t.modified())switch(e.visit(e.MOD,l=>n.dirty(l)),s.clear(),r.items.forEach(l=>s.union(ko(l,o))),r.role){case uh:case fh:case lh:e.reflow()}else u=e.changed(e.REM),e.visit(e.ADD,l=>{s.union(ko(l,o))}),e.visit(e.MOD,l=>{u=u||s.alignsWith(l.bounds),n.dirty(l),s.union(ko(l,o))}),u&&(s.clear(),r.items.forEach(l=>s.union(l.bounds)));return f8(r),e.modifies("bounds")}});function ko(t,e,n){return e(t.bounds.clear(),t,n)}const mp=":vega_identifier:";function hh(t){F.call(this,0,t)}hh.Definition={type:"Identifier",metadata:{modifies:!0},params:[{name:"as",type:"string",required:!0}]};B(hh,F,{transform(t,e){const n=M8(e.dataflow),r=t.as;let i=n.value;return e.visit(e.ADD,a=>a[r]=a[r]||++i),n.set(this.value=i),e}});function M8(t){return t._signals[mp]||(t._signals[mp]=t.add(0))}function cb(t){F.call(this,null,t)}B(cb,F,{transform(t,e){let n=this.value;n||(n=e.dataflow.scenegraph().mark(t.markdef,D8(t),t.index),n.group.context=t.context,t.context.group||(t.context.group=n.group),n.source=this.source,n.clip=t.clip,n.interactive=t.interactive,this.value=n);const r=n.marktype===_u?jd:qd;return e.visit(e.ADD,i=>r.call(i,n)),(t.modified("clip")||t.modified("interactive"))&&(n.clip=t.clip,n.interactive=!!t.interactive,n.zdirty=!0,e.reflow()),n.items=e.source,e}});function D8(t){const e=t.groups,n=t.parent;return e&&e.size===1?e.get(Object.keys(e.object)[0]):e&&n?e.lookup(n):null}function db(t){F.call(this,null,t)}const yp={parity:t=>t.filter((e,n)=>n%2?e.opacity=0:1),greedy:(t,e)=>{let n;return t.filter((r,i)=>!i||!hb(n.bounds,r.bounds,e)?(n=r,1):r.opacity=0)}},hb=(t,e,n)=>n>Math.max(e.x1-t.x2,t.x1-e.x2,e.y1-t.y2,t.y1-e.y2),vp=(t,e)=>{for(var n=1,r=t.length,i=t[0].bounds,a;n<r;i=a,++n)if(hb(i,a=t[n].bounds,e))return!0},C8=t=>{const e=t.bounds;return e.width()>1&&e.height()>1},S8=(t,e,n)=>{var r=t.range(),i=new Et;return e===ui||e===Hn?i.set(r[0],-1/0,r[1],1/0):i.set(-1/0,r[0],1/0,r[1]),i.expand(n||1),a=>i.encloses(a.bounds)},bp=t=>(t.forEach(e=>e.opacity=1),t),xp=(t,e)=>t.reflow(e.modified()).modifies("opacity");B(db,F,{transform(t,e){const n=yp[t.method]||yp.parity,r=t.separation||0;let i=e.materialize(e.SOURCE).source,a,o;if(!i||!i.length)return;if(!t.method)return t.modified("method")&&(bp(i),e=xp(e,t)),e;if(i=i.filter(C8),!i.length)return;if(t.sort&&(i=i.slice().sort(t.sort)),a=bp(i),e=xp(e,t),a.length>=3&&vp(a,r)){do a=n(a,r);while(a.length>=3&&vp(a,r));a.length<3&&!rt(i).opacity&&(a.length>1&&(rt(a).opacity=0),rt(i).opacity=1)}t.boundScale&&t.boundTolerance>=0&&(o=S8(t.boundScale,t.boundOrient,+t.boundTolerance),i.forEach(u=>{o(u)||(u.opacity=0)}));const s=a[0].mark.bounds.clear();return i.forEach(u=>{u.opacity&&s.union(u.bounds)}),e}});function gb(t){F.call(this,null,t)}B(gb,F,{transform(t,e){const n=e.dataflow;if(e.visit(e.ALL,r=>n.dirty(r)),e.fields&&e.fields.zindex){const r=e.source&&e.source[0];r&&(r.mark.zdirty=!0)}}});const zt=new Et;function Kr(t,e,n){return t[e]===n?0:(t[e]=n,1)}function F8(t){var e=t.items[0].orient;return e===Ne||e===qe}function $8(t){let e=+t.grid;return[t.ticks?e++:-1,t.labels?e++:-1,e+ +t.domain]}function _8(t,e,n,r){var i=e.items[0],a=i.datum,o=i.translate!=null?i.translate:.5,s=i.orient,u=$8(a),l=i.range,f=i.offset,c=i.position,d=i.minExtent,h=i.maxExtent,g=a.title&&i.items[u[2]].items[0],p=i.titlePadding,m=i.bounds,y=g&&Av(g),v=0,b=0,x,E;switch(zt.clear().union(m),m.clear(),(x=u[0])>-1&&m.union(i.items[x].bounds),(x=u[1])>-1&&m.union(i.items[x].bounds),s){case ui:v=c||0,b=-f,E=Math.max(d,Math.min(h,-m.y1)),m.add(0,-E).add(l,0),g&&Mo(t,g,E,p,y,0,-1,m);break;case Ne:v=-f,b=c||0,E=Math.max(d,Math.min(h,-m.x1)),m.add(-E,0).add(0,l),g&&Mo(t,g,E,p,y,1,-1,m);break;case qe:v=n+f,b=c||0,E=Math.max(d,Math.min(h,m.x2)),m.add(0,0).add(E,l),g&&Mo(t,g,E,p,y,1,1,m);break;case Hn:v=c||0,b=r+f,E=Math.max(d,Math.min(h,m.y2)),m.add(0,0).add(l,E),g&&Mo(t,g,E,p,0,0,1,m);break;default:v=i.x,b=i.y}return Jn(m.translate(v,b),i),Kr(i,"x",v+o)|Kr(i,"y",b+o)&&(i.bounds=zt,t.dirty(i),i.bounds=m,t.dirty(i)),i.mark.bounds.clear().union(m)}function Mo(t,e,n,r,i,a,o,s){const u=e.bounds;if(e.auto){const l=o*(n+i+r);let f=0,c=0;t.dirty(e),a?f=(e.x||0)-(e.x=l):c=(e.y||0)-(e.y=l),e.mark.bounds.clear().union(u.translate(-f,-c)),t.dirty(e)}s.union(u)}const wp=(t,e)=>Math.floor(Math.min(t,e)),Ep=(t,e)=>Math.ceil(Math.max(t,e));function R8(t){var e=t.items,n=e.length,r=0,i,a;const o={marks:[],rowheaders:[],rowfooters:[],colheaders:[],colfooters:[],rowtitle:null,coltitle:null};for(;r<n;++r)if(i=e[r],a=i.items,i.marktype===_u)switch(i.role){case uh:case fh:case lh:break;case eb:o.rowheaders.push(...a);break;case nb:o.rowfooters.push(...a);break;case ib:o.colheaders.push(...a);break;case ab:o.colfooters.push(...a);break;case rb:o.rowtitle=a[0];break;case ob:o.coltitle=a[0];break;default:o.marks.push(...a)}return o}function O8(t){return new Et().set(0,0,t.width||0,t.height||0)}function z8(t){const e=t.bounds.clone();return e.empty()?e.set(0,0,0,0):e.translate(-(t.x||0),-(t.y||0))}function dt(t,e,n){const r=K(t)?t[e]:t;return r??(n!==void 0?n:0)}function Ap(t){return t<0?Math.ceil(-t):0}function pb(t,e,n){var r=!n.nodirty,i=n.bounds===dh?O8:z8,a=zt.set(0,0,0,0),o=dt(n.align,Nn),s=dt(n.align,In),u=dt(n.padding,Nn),l=dt(n.padding,In),f=n.columns||e.length,c=f<=0?1:Math.ceil(e.length/f),d=e.length,h=Array(d),g=Array(f),p=0,m=Array(d),y=Array(c),v=0,b=Array(d),x=Array(d),E=Array(d),A,w,k,M,D,S,O,z,T,C,R;for(w=0;w<f;++w)g[w]=0;for(w=0;w<c;++w)y[w]=0;for(w=0;w<d;++w)S=e[w],D=E[w]=i(S),S.x=S.x||0,b[w]=0,S.y=S.y||0,x[w]=0,k=w%f,M=~~(w/f),p=Math.max(p,O=Math.ceil(D.x2)),v=Math.max(v,z=Math.ceil(D.y2)),g[k]=Math.max(g[k],O),y[M]=Math.max(y[M],z),h[w]=u+Ap(D.x1),m[w]=l+Ap(D.y1),r&&t.dirty(e[w]);for(w=0;w<d;++w)w%f===0&&(h[w]=0),w<f&&(m[w]=0);if(o===Uf)for(k=1;k<f;++k){for(R=0,w=k;w<d;w+=f)R<h[w]&&(R=h[w]);for(w=k;w<d;w+=f)h[w]=R+g[k-1]}else if(o===Ao){for(R=0,w=0;w<d;++w)w%f&&R<h[w]&&(R=h[w]);for(w=0;w<d;++w)w%f&&(h[w]=R+p)}else for(o=!1,k=1;k<f;++k)for(w=k;w<d;w+=f)h[w]+=g[k-1];if(s===Uf)for(M=1;M<c;++M){for(R=0,w=M*f,A=w+f;w<A;++w)R<m[w]&&(R=m[w]);for(w=M*f;w<A;++w)m[w]=R+y[M-1]}else if(s===Ao){for(R=0,w=f;w<d;++w)R<m[w]&&(R=m[w]);for(w=f;w<d;++w)m[w]=R+v}else for(s=!1,M=1;M<c;++M)for(w=M*f,A=w+f;w<A;++w)m[w]+=y[M-1];for(T=0,w=0;w<d;++w)T=h[w]+(w%f?T:0),b[w]+=T-e[w].x;for(k=0;k<f;++k)for(C=0,w=k;w<d;w+=f)C+=m[w],x[w]+=C-e[w].y;if(o&&dt(n.center,Nn)&&c>1)for(w=0;w<d;++w)D=o===Ao?p:g[w%f],T=D-E[w].x2-e[w].x-b[w],T>0&&(b[w]+=T/2);if(s&&dt(n.center,In)&&f!==1)for(w=0;w<d;++w)D=s===Ao?v:y[~~(w/f)],C=D-E[w].y2-e[w].y-x[w],C>0&&(x[w]+=C/2);for(w=0;w<d;++w)a.union(E[w].translate(b[w],x[w]));switch(T=dt(n.anchor,v8),C=dt(n.anchor,b8),dt(n.anchor,Nn)){case Ut:T-=a.width();break;case jf:T-=a.width()/2}switch(dt(n.anchor,In)){case Ut:C-=a.height();break;case jf:C-=a.height()/2}for(T=Math.round(T),C=Math.round(C),a.clear(),w=0;w<d;++w)e[w].mark.bounds.clear();for(w=0;w<d;++w)S=e[w],S.x+=b[w]+=T,S.y+=x[w]+=C,a.union(S.mark.bounds.union(S.bounds.translate(b[w],x[w]))),r&&t.dirty(S);return a}function B8(t,e,n){var r=R8(e),i=r.marks,a=n.bounds===dh?T8:P8,o=n.offset,s=n.columns||i.length,u=s<=0?1:Math.ceil(i.length/s),l=u*s,f,c,d,h,g,p,m;const y=pb(t,i,n);y.empty()&&y.set(0,0,0,0),r.rowheaders&&(p=dt(n.headerBand,In,null),f=Do(t,r.rowheaders,i,s,u,-dt(o,"rowHeader"),wp,0,a,"x1",0,s,1,p)),r.colheaders&&(p=dt(n.headerBand,Nn,null),c=Do(t,r.colheaders,i,s,s,-dt(o,"columnHeader"),wp,1,a,"y1",0,1,s,p)),r.rowfooters&&(p=dt(n.footerBand,In,null),d=Do(t,r.rowfooters,i,s,u,dt(o,"rowFooter"),Ep,0,a,"x2",s-1,s,1,p)),r.colfooters&&(p=dt(n.footerBand,Nn,null),h=Do(t,r.colfooters,i,s,s,dt(o,"columnFooter"),Ep,1,a,"y2",l-s,1,s,p)),r.rowtitle&&(g=dt(n.titleAnchor,In),m=dt(o,"rowTitle"),m=g===Ut?d+m:f-m,p=dt(n.titleBand,In,.5),kp(t,r.rowtitle,m,0,y,p)),r.coltitle&&(g=dt(n.titleAnchor,Nn),m=dt(o,"columnTitle"),m=g===Ut?h+m:c-m,p=dt(n.titleBand,Nn,.5),kp(t,r.coltitle,m,1,y,p))}function T8(t,e){return e==="x1"?t.x||0:e==="y1"?t.y||0:e==="x2"?(t.x||0)+(t.width||0):e==="y2"?(t.y||0)+(t.height||0):void 0}function P8(t,e){return t.bounds[e]}function Do(t,e,n,r,i,a,o,s,u,l,f,c,d,h){var g=n.length,p=0,m=0,y,v,b,x,E,A,w,k,M;if(!g)return p;for(y=f;y<g;y+=c)n[y]&&(p=o(p,u(n[y],l)));if(!e.length)return p;for(e.length>i&&(t.warn("Grid headers exceed limit: "+i),e=e.slice(0,i)),p+=a,v=0,x=e.length;v<x;++v)t.dirty(e[v]),e[v].mark.bounds.clear();for(y=f,v=0,x=e.length;v<x;++v,y+=c){for(A=e[v],E=A.mark.bounds,b=y;b>=0&&(w=n[b])==null;b-=d);s?(k=h==null?w.x:Math.round(w.bounds.x1+h*w.bounds.width()),M=p):(k=p,M=h==null?w.y:Math.round(w.bounds.y1+h*w.bounds.height())),E.union(A.bounds.translate(k-(A.x||0),M-(A.y||0))),A.x=k,A.y=M,t.dirty(A),m=o(m,E[l])}return m}function kp(t,e,n,r,i,a){if(e){t.dirty(e);var o=n,s=n;r?o=Math.round(i.x1+a*i.width()):s=Math.round(i.y1+a*i.height()),e.bounds.translate(o-(e.x||0),s-(e.y||0)),e.mark.bounds.clear().union(e.bounds),e.x=o,e.y=s,t.dirty(e)}}function L8(t,e){const n=t[e]||{};return(r,i)=>n[r]!=null?n[r]:t[r]!=null?t[r]:i}function N8(t,e){let n=-1/0;return t.forEach(r=>{r.offset!=null&&(n=Math.max(n,r.offset))}),n>-1/0?n:e}function I8(t,e,n,r,i,a,o){const s=L8(n,e),u=N8(t,s("offset",0)),l=s("anchor",sh),f=l===Ut?1:l===jf?.5:0,c={align:Uf,bounds:s("bounds",dh),columns:s("direction")==="vertical"?1:t.length,padding:s("margin",8),center:s("center"),nodirty:!0};switch(e){case Ne:c.anchor={x:Math.floor(r.x1)-u,column:Ut,y:f*(o||r.height()+2*r.y1),row:l};break;case qe:c.anchor={x:Math.ceil(r.x2)+u,y:f*(o||r.height()+2*r.y1),row:l};break;case ui:c.anchor={y:Math.floor(i.y1)-u,row:Ut,x:f*(a||i.width()+2*i.x1),column:l};break;case Hn:c.anchor={y:Math.ceil(i.y2)+u,x:f*(a||i.width()+2*i.x1),column:l};break;case g8:c.anchor={x:u,y:u};break;case p8:c.anchor={x:a-u,y:u,column:Ut};break;case m8:c.anchor={x:u,y:o-u,row:Ut};break;case y8:c.anchor={x:a-u,y:o-u,column:Ut,row:Ut};break}return c}function q8(t,e){var n=e.items[0],r=n.datum,i=n.orient,a=n.bounds,o=n.x,s=n.y,u,l;return n._bounds?n._bounds.clear().union(a):n._bounds=a.clone(),a.clear(),U8(t,n,n.items[0].items[0]),a=j8(n,a),u=2*n.padding,l=2*n.padding,a.empty()||(u=Math.ceil(a.width()+u),l=Math.ceil(a.height()+l)),r.type===A8&&W8(n.items[0].items[0].items[0].items),i!==ch&&(n.x=o=0,n.y=s=0),n.width=u,n.height=l,Jn(a.set(o,s,o+u,s+l),n),n.mark.bounds.clear().union(a),n}function j8(t,e){return t.items.forEach(n=>e.union(n.bounds)),e.x1=t.padding,e.y1=t.padding,e}function U8(t,e,n){var r=e.padding,i=r-n.x,a=r-n.y;if(!e.datum.title)(i||a)&&Si(t,n,i,a);else{var o=e.items[1].items[0],s=o.anchor,u=e.titlePadding||0,l=r-o.x,f=r-o.y;switch(o.orient){case Ne:i+=Math.ceil(o.bounds.width())+u;break;case qe:case Hn:break;default:a+=o.bounds.height()+u}switch((i||a)&&Si(t,n,i,a),o.orient){case Ne:f+=Ur(e,n,o,s,1,1);break;case qe:l+=Ur(e,n,o,Ut,0,0)+u,f+=Ur(e,n,o,s,1,1);break;case Hn:l+=Ur(e,n,o,s,0,0),f+=Ur(e,n,o,Ut,-1,0,1)+u;break;default:l+=Ur(e,n,o,s,0,0)}(l||f)&&Si(t,o,l,f),(l=Math.round(o.bounds.x1-r))<0&&(Si(t,n,-l,0),Si(t,o,-l,0))}}function Ur(t,e,n,r,i,a,o){const s=t.datum.type!=="symbol",u=n.datum.vgrad,l=s&&(a||!u)&&!o?e.items[0]:e,f=l.bounds[i?"y2":"x2"]-t.padding,c=u&&a?f:0,d=u&&a?0:f,h=i<=0?0:Av(n);return Math.round(r===sh?c:r===Ut?d-h:.5*(f-h))}function Si(t,e,n,r){e.x+=n,e.y+=r,e.bounds.translate(n,r),e.mark.bounds.translate(n,r),t.dirty(e)}function W8(t){const e=t.reduce((n,r)=>(n[r.column]=Math.max(r.bounds.x2-r.x,n[r.column]||0),n),{});t.forEach(n=>{n.width=e[n.column],n.height=n.bounds.y2-n.y})}function G8(t,e,n,r,i){var a=e.items[0],o=a.frame,s=a.orient,u=a.anchor,l=a.offset,f=a.padding,c=a.items[0].items[0],d=a.items[1]&&a.items[1].items[0],h=s===Ne||s===qe?r:n,g=0,p=0,m=0,y=0,v=0,b;if(o!==_u?s===Ne?(g=i.y2,h=i.y1):s===qe?(g=i.y1,h=i.y2):(g=i.x1,h=i.x2):s===Ne&&(g=r,h=0),b=u===sh?g:u===Ut?h:(g+h)/2,d&&d.text){switch(s){case ui:case Hn:v=c.bounds.height()+f;break;case Ne:y=c.bounds.width()+f;break;case qe:y=-c.bounds.width()-f;break}zt.clear().union(d.bounds),zt.translate(y-(d.x||0),v-(d.y||0)),Kr(d,"x",y)|Kr(d,"y",v)&&(t.dirty(d),d.bounds.clear().union(zt),d.mark.bounds.clear().union(zt),t.dirty(d)),zt.clear().union(d.bounds)}else zt.clear();switch(zt.union(c.bounds),s){case ui:p=b,m=i.y1-zt.height()-l;break;case Ne:p=i.x1-zt.width()-l,m=b;break;case qe:p=i.x2+zt.width()+l,m=b;break;case Hn:p=b,m=i.y2+l;break;default:p=a.x,m=a.y}return Kr(a,"x",p)|Kr(a,"y",m)&&(zt.translate(p,m),t.dirty(a),a.bounds.clear().union(zt),e.bounds.clear().union(zt),t.dirty(a)),a.bounds}function mb(t){F.call(this,null,t)}B(mb,F,{transform(t,e){const n=e.dataflow;return t.mark.items.forEach(r=>{t.layout&&B8(n,r,t.layout),H8(n,r,t)}),Y8(t.mark.group)?e.reflow():e}});function Y8(t){return t&&t.mark.role!=="legend-entry"}function H8(t,e,n){var r=e.items,i=Math.max(0,e.width||0),a=Math.max(0,e.height||0),o=new Et().set(0,0,i,a),s=o.clone(),u=o.clone(),l=[],f,c,d,h,g,p;for(g=0,p=r.length;g<p;++g)switch(c=r[g],c.role){case uh:h=F8(c)?s:u,h.union(_8(t,c,i,a));break;case lh:f=c;break;case fh:l.push(q8(t,c));break;case x8:case w8:case eb:case nb:case rb:case ib:case ab:case ob:s.union(c.bounds),u.union(c.bounds);break;default:o.union(c.bounds)}if(l.length){const m={};l.forEach(y=>{d=y.orient||qe,d!==ch&&(m[d]||(m[d]=[])).push(y)});for(const y in m){const v=m[y];pb(t,v,I8(v,y,n.legends,s,u,i,a))}l.forEach(y=>{const v=y.bounds;if(v.equals(y._bounds)||(y.bounds=y._bounds,t.dirty(y),y.bounds=v,t.dirty(y)),n.autosize&&(n.autosize.type===sb||n.autosize.type===ub||n.autosize.type===lb))switch(y.orient){case Ne:case qe:o.add(v.x1,0).add(v.x2,0);break;case ui:case Hn:o.add(0,v.y1).add(0,v.y2)}else o.union(v)})}o.union(s).union(u),f&&o.union(G8(t,f,i,a,o)),e.clip&&o.set(0,0,e.width||0,e.height||0),V8(t,e,o,n)}function V8(t,e,n,r){const i=r.autosize||{},a=i.type;if(t._autosize<1||!a)return;let o=t._width,s=t._height,u=Math.max(0,e.width||0),l=Math.max(0,Math.ceil(-n.x1)),f=Math.max(0,e.height||0),c=Math.max(0,Math.ceil(-n.y1));const d=Math.max(0,Math.ceil(n.x2-u)),h=Math.max(0,Math.ceil(n.y2-f));if(i.contains===E8){const g=t.padding();o-=g.left+g.right,s-=g.top+g.bottom}a===ch?(l=0,c=0,u=o,f=s):a===sb?(u=Math.max(0,o-l-d),f=Math.max(0,s-c-h)):a===ub?(u=Math.max(0,o-l-d),s=f+c+h):a===lb?(o=u+l+d,f=Math.max(0,s-c-h)):a===k8&&(o=u+l+d,s=f+c+h),t._resizeView(o,s,u,f,[l,c],i.resize)}const X8=Object.freeze(Object.defineProperty({__proto__:null,bound:fb,identifier:hh,mark:cb,overlap:db,render:gb,viewlayout:mb},Symbol.toStringTag,{value:"Module"}));function yb(t){F.call(this,null,t)}B(yb,F,{transform(t,e){if(this.value&&!t.modified())return e.StopPropagation;var n=e.dataflow.locale(),r=e.fork(e.NO_SOURCE|e.NO_FIELDS),i=this.value,a=t.scale,o=t.count==null?t.values?t.values.length:10:t.count,s=Td(a,o,t.minstep),u=t.format||Z2(n,a,s,t.formatSpecifier,t.formatType,!!t.values),l=t.values?J2(a,t.values,s):Pd(a,s);return i&&(r.rem=i),i=l.map((f,c)=>ot({index:c/(l.length-1||1),value:f,label:u(f)})),t.extra&&i.length&&i.push(ot({index:-1,extra:{value:i[0].value},label:""})),r.source=i,r.add=i,this.value=i,r}});function vb(t){F.call(this,null,t)}function K8(){return ot({})}function J8(t){const e=La().test(n=>n.exit);return e.lookup=n=>e.get(t(n)),e}B(vb,F,{transform(t,e){var n=e.dataflow,r=e.fork(e.NO_SOURCE|e.NO_FIELDS),i=t.item||K8,a=t.key||j,o=this.value;return L(r.encode)&&(r.encode=null),o&&(t.modified("key")||e.modified(a))&&_("DataJoin does not support modified key function or fields."),o||(e=e.addAll(),this.value=o=J8(a)),e.visit(e.ADD,s=>{const u=a(s);let l=o.get(u);l?l.exit?(o.empty--,r.add.push(l)):r.mod.push(l):(l=i(s),o.set(u,l),r.add.push(l)),l.datum=s,l.exit=!1}),e.visit(e.MOD,s=>{const u=a(s),l=o.get(u);l&&(l.datum=s,r.mod.push(l))}),e.visit(e.REM,s=>{const u=a(s),l=o.get(u);s===l.datum&&!l.exit&&(r.rem.push(l),l.exit=!0,++o.empty)}),e.changed(e.ADD_MOD)&&r.modifies("datum"),(e.clean()||t.clean&&o.empty>n.cleanThreshold)&&n.runAfter(o.clean),r}});function bb(t){F.call(this,null,t)}B(bb,F,{transform(t,e){var n=e.fork(e.ADD_REM),r=t.mod||!1,i=t.encoders,a=e.encode;if(L(a))if(n.changed()||a.every(c=>i[c]))a=a[0],n.encode=null;else return e.StopPropagation;var o=a==="enter",s=i.update||tr,u=i.enter||tr,l=i.exit||tr,f=(a&&!o?i[a]:s)||tr;if(e.changed(e.ADD)&&(e.visit(e.ADD,c=>{u(c,t),s(c,t)}),n.modifies(u.output),n.modifies(s.output),f!==tr&&f!==s&&(e.visit(e.ADD,c=>{f(c,t)}),n.modifies(f.output))),e.changed(e.REM)&&l!==tr&&(e.visit(e.REM,c=>{l(c,t)}),n.modifies(l.output)),o||f!==tr){const c=e.MOD|(t.modified()?e.REFLOW:0);o?(e.visit(c,d=>{const h=u(d,t)||r;(f(d,t)||h)&&n.mod.push(d)}),n.mod.length&&n.modifies(u.output)):e.visit(c,d=>{(f(d,t)||r)&&n.mod.push(d)}),n.mod.length&&n.modifies(f.output)}return n.changed()?n:e.StopPropagation}});function xb(t){F.call(this,[],t)}B(xb,F,{transform(t,e){if(this.value!=null&&!t.modified())return e.StopPropagation;var n=e.dataflow.locale(),r=e.fork(e.NO_SOURCE|e.NO_FIELDS),i=this.value,a=t.type||Lo,o=t.scale,s=+t.limit,u=Td(o,t.count==null?5:t.count,t.minstep),l=!!t.values||a===Lo,f=t.format||nv(n,o,u,a,t.formatSpecifier,t.formatType,l),c=t.values||ev(o,u),d,h,g,p,m;return i&&(r.rem=i),a===Lo?(s&&c.length>s?(e.dataflow.warn("Symbol legend count exceeds limit, filtering items."),i=c.slice(0,s-1),m=!0):i=c,Z(g=t.size)?(!t.values&&o(i[0])===0&&(i=i.slice(1)),p=i.reduce((y,v)=>Math.max(y,g(v,t)),0)):g=re(p=g||8),i=i.map((y,v)=>ot({index:v,label:f(y,v,i),value:y,offset:p,size:g(y,t)})),m&&(m=c[i.length],i.push(ot({index:i.length,label:`…${c.length-i.length} entries`,value:m,offset:p,size:g(m,t)})))):a===uC?(d=o.domain(),h=Y2(o,d[0],rt(d)),c.length<3&&!t.values&&d[0]!==rt(d)&&(c=[d[0],rt(d)]),i=c.map((y,v)=>ot({index:v,label:f(y,v,c),value:y,perc:h(y)}))):(g=c.length-1,h=bC(o),i=c.map((y,v)=>ot({index:v,label:f(y,v,c),value:y,perc:v?h(y):0,perc2:v===g?1:h(c[v+1])}))),r.source=i,r.add=i,this.value=i,r}});const Z8=t=>t.source.x,Q8=t=>t.source.y,t7=t=>t.target.x,e7=t=>t.target.y;function gh(t){F.call(this,{},t)}gh.Definition={type:"LinkPath",metadata:{modifies:!0},params:[{name:"sourceX",type:"field",default:"source.x"},{name:"sourceY",type:"field",default:"source.y"},{name:"targetX",type:"field",default:"target.x"},{name:"targetY",type:"field",default:"target.y"},{name:"orient",type:"enum",default:"vertical",values:["horizontal","vertical","radial"]},{name:"shape",type:"enum",default:"line",values:["line","arc","curve","diagonal","orthogonal"]},{name:"require",type:"signal"},{name:"as",type:"string",default:"path"}]};B(gh,F,{transform(t,e){var n=t.sourceX||Z8,r=t.sourceY||Q8,i=t.targetX||t7,a=t.targetY||e7,o=t.as||"path",s=t.orient||"vertical",u=t.shape||"line",l=Mp.get(u+"-"+s)||Mp.get(u);return l||_("LinkPath unsupported type: "+t.shape+(t.orient?"-"+t.orient:"")),e.visit(e.SOURCE,f=>{f[o]=l(n(f),r(f),i(f),a(f))}),e.reflow(t.modified()).modifies(o)}});const wb=(t,e,n,r)=>"M"+t+","+e+"L"+n+","+r,n7=(t,e,n,r)=>wb(e*Math.cos(t),e*Math.sin(t),r*Math.cos(n),r*Math.sin(n)),Eb=(t,e,n,r)=>{var i=n-t,a=r-e,o=Math.hypot(i,a)/2,s=180*Math.atan2(a,i)/Math.PI;return"M"+t+","+e+"A"+o+","+o+" "+s+" 0 1 "+n+","+r},r7=(t,e,n,r)=>Eb(e*Math.cos(t),e*Math.sin(t),r*Math.cos(n),r*Math.sin(n)),Ab=(t,e,n,r)=>{const i=n-t,a=r-e,o=.2*(i+a),s=.2*(a-i);return"M"+t+","+e+"C"+(t+o)+","+(e+s)+" "+(n+s)+","+(r-o)+" "+n+","+r},i7=(t,e,n,r)=>Ab(e*Math.cos(t),e*Math.sin(t),r*Math.cos(n),r*Math.sin(n)),a7=(t,e,n,r)=>"M"+t+","+e+"V"+r+"H"+n,o7=(t,e,n,r)=>"M"+t+","+e+"H"+n+"V"+r,s7=(t,e,n,r)=>{const i=Math.cos(t),a=Math.sin(t),o=Math.cos(n),s=Math.sin(n),u=Math.abs(n-t)>Math.PI?n<=t:n>t;return"M"+e*i+","+e*a+"A"+e+","+e+" 0 0,"+(u?1:0)+" "+e*o+","+e*s+"L"+r*o+","+r*s},u7=(t,e,n,r)=>{const i=(t+n)/2;return"M"+t+","+e+"C"+i+","+e+" "+i+","+r+" "+n+","+r},l7=(t,e,n,r)=>{const i=(e+r)/2;return"M"+t+","+e+"C"+t+","+i+" "+n+","+i+" "+n+","+r},f7=(t,e,n,r)=>{const i=Math.cos(t),a=Math.sin(t),o=Math.cos(n),s=Math.sin(n),u=(e+r)/2;return"M"+e*i+","+e*a+"C"+u*i+","+u*a+" "+u*o+","+u*s+" "+r*o+","+r*s},Mp=La({line:wb,"line-radial":n7,arc:Eb,"arc-radial":r7,curve:Ab,"curve-radial":i7,"orthogonal-horizontal":a7,"orthogonal-vertical":o7,"orthogonal-radial":s7,"diagonal-horizontal":u7,"diagonal-vertical":l7,"diagonal-radial":f7});function ph(t){F.call(this,null,t)}ph.Definition={type:"Pie",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"startAngle",type:"number",default:0},{name:"endAngle",type:"number",default:6.283185307179586},{name:"sort",type:"boolean",default:!1},{name:"as",type:"string",array:!0,length:2,default:["startAngle","endAngle"]}]};B(ph,F,{transform(t,e){var n=t.as||["startAngle","endAngle"],r=n[0],i=n[1],a=t.field||Pa,o=t.startAngle||0,s=t.endAngle!=null?t.endAngle:2*Math.PI,u=e.source,l=u.map(a),f=l.length,c=o,d=(s-o)/J1(l),h=ge(f),g,p,m;for(t.sort&&h.sort((y,v)=>l[y]-l[v]),g=0;g<f;++g)m=l[h[g]],p=u[h[g]],p[r]=c,p[i]=c+=m*d;return this.value=l,e.reflow(t.modified()).modifies(n)}});const c7=5;function d7(t){const e=t.type;return!t.bins&&(e===ri||e===Wa||e===Ga)}function kb(t){return zd(t)&&t!==nn}const h7=an(["set","modified","clear","type","scheme","schemeExtent","schemeCount","domain","domainMin","domainMid","domainMax","domainRaw","domainImplicit","nice","zero","bins","range","rangeStep","round","reverse","interpolate","interpolateGamma"]);function Mb(t){F.call(this,null,t),this.modified(!0)}B(Mb,F,{transform(t,e){var n=e.dataflow,r=this.value,i=g7(t);(!r||i!==r.type)&&(this.value=r=at(i)());for(i in t)if(!h7[i]){if(i==="padding"&&kb(r.type))continue;Z(r[i])?r[i](t[i]):n.warn("Unsupported scale property: "+i)}return x7(r,t,b7(r,t,m7(r,t,n))),e.fork(e.NO_SOURCE|e.NO_FIELDS)}});function g7(t){var e=t.type,n="",r;return e===nn?nn+"-"+ri:(p7(t)&&(r=t.rawDomain?t.rawDomain.length:t.domain?t.domain.length+ +(t.domainMid!=null):0,n=r===2?nn+"-":r===3?gi+"-":""),(n+e||ri).toLowerCase())}function p7(t){const e=t.type;return zd(e)&&e!==kr&&e!==Mr&&(t.scheme||t.range&&t.range.length&&t.range.every(ct))}function m7(t,e,n){const r=y7(t,e.domainRaw,n);if(r>-1)return r;var i=e.domain,a=t.type,o=e.zero||e.zero===void 0&&d7(t),s,u;if(!i)return 0;if((o||e.domainMin!=null||e.domainMax!=null||e.domainMid!=null)&&(s=(i=i.slice()).length-1||1,o&&(i[0]>0&&(i[0]=0),i[s]<0&&(i[s]=0)),e.domainMin!=null&&(i[0]=e.domainMin),e.domainMax!=null&&(i[s]=e.domainMax),e.domainMid!=null)){u=e.domainMid;const l=u>i[s]?s+1:u<i[0]?0:s;l!==s&&n.warn("Scale domainMid exceeds domain min or max.",u),i.splice(l,0,u)}return kb(a)&&e.padding&&i[0]!==rt(i)&&(i=v7(a,i,e.range,e.padding,e.exponent,e.constant)),t.domain(Db(a,i,n)),a===$d&&t.unknown(e.domainImplicit?iE:void 0),e.nice&&t.nice&&t.nice(e.nice!==!0&&Td(t,e.nice)||null),i.length}function y7(t,e,n){return e?(t.domain(Db(t.type,e,n)),e.length):-1}function v7(t,e,n,r,i,a){var o=Math.abs(rt(n)-n[0]),s=o/(o-2*r),u=t===Cn?ly(e,null,s):t===Ga?vf(e,null,s,.5):t===Wa?vf(e,null,s,i||1):t===vu?fy(e,null,s,a||1):uy(e,null,s);return e=e.slice(),e[0]=u[0],e[e.length-1]=u[1],e}function Db(t,e,n){if(U2(t)){var r=Math.abs(e.reduce((i,a)=>i+(a<0?-1:a>0?1:0),0));r!==e.length&&n.warn("Log scale domain includes zero: "+U(e))}return e}function b7(t,e,n){let r=e.bins;if(r&&!L(r)){const i=t.domain(),a=i[0],o=rt(i),s=r.step;let u=r.start==null?a:r.start,l=r.stop==null?o:r.stop;s||_("Scale bins parameter missing step property."),u<a&&(u=s*Math.ceil(a/s)),l>o&&(l=s*Math.floor(o/s)),r=ge(u,l+s/2,s)}return r?t.bins=r:t.bins&&delete t.bins,t.type===_d&&(r?!e.domain&&!e.domainRaw&&(t.domain(r),n=r.length):t.bins=t.domain()),n}function x7(t,e,n){var r=t.type,i=e.round||!1,a=e.range;if(e.rangeStep!=null)a=w7(r,e,n);else if(e.scheme&&(a=E7(r,e,n),Z(a))){if(t.interpolator)return t.interpolator(a);_(`Scale type ${r} does not support interpolating color schemes.`)}if(a&&W2(r))return t.interpolator(Bd(Wf(a,e.reverse),e.interpolate,e.interpolateGamma));a&&e.interpolate&&t.interpolate?t.interpolate(H2(e.interpolate,e.interpolateGamma)):Z(t.round)?t.round(i):Z(t.rangeRound)&&t.interpolate(i?tu:Oa),a&&t.range(Wf(a,e.reverse))}function w7(t,e,n){t!==P2&&t!==Ff&&_("Only band and point scales support rangeStep.");var r=(e.paddingOuter!=null?e.paddingOuter:e.padding)||0,i=t===Ff?1:(e.paddingInner!=null?e.paddingInner:e.padding)||0;return[0,e.rangeStep*Fd(n,i,r)]}function E7(t,e,n){var r=e.schemeExtent,i,a;return L(e.scheme)?a=Bd(e.scheme,e.interpolate,e.interpolateGamma):(i=e.scheme.toLowerCase(),a=K2(i),a||_(`Unrecognized scheme name: ${e.scheme}`)),n=t===xu?n+1:t===_d?n-1:t===ii||t===bu?+e.schemeCount||c7:n,W2(t)?Dp(a,r,e.reverse):Z(a)?rC(Dp(a,r),n):t===$d?a:a.slice(0,n)}function Dp(t,e,n){return Z(t)&&(e||n)?nC(t,Wf(e||[0,1],n)):t}function Wf(t,e){return e?t.slice().reverse():t}function Cb(t){F.call(this,null,t)}B(Cb,F,{transform(t,e){const n=t.modified("sort")||e.changed(e.ADD)||e.modified(t.sort.fields)||e.modified("datum");return n&&e.source.sort(Or(t.sort)),this.modified(n),e}});const Cp="zero",Sb="center",Fb="normalize",$b=["y0","y1"];function mh(t){F.call(this,null,t)}mh.Definition={type:"Stack",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"groupby",type:"field",array:!0},{name:"sort",type:"compare"},{name:"offset",type:"enum",default:Cp,values:[Cp,Sb,Fb]},{name:"as",type:"string",array:!0,length:2,default:$b}]};B(mh,F,{transform(t,e){var n=t.as||$b,r=n[0],i=n[1],a=Or(t.sort),o=t.field||Pa,s=t.offset===Sb?A7:t.offset===Fb?k7:M7,u,l,f,c;for(u=D7(e.source,t.groupby,a,o),l=0,f=u.length,c=u.max;l<f;++l)s(u[l],c,o,r,i);return e.reflow(t.modified()).modifies(n)}});function A7(t,e,n,r,i){for(var a=(e-t.sum)/2,o=t.length,s=0,u;s<o;++s)u=t[s],u[r]=a,u[i]=a+=Math.abs(n(u))}function k7(t,e,n,r,i){for(var a=1/t.sum,o=0,s=t.length,u=0,l=0,f;u<s;++u)f=t[u],f[r]=o,f[i]=o=a*(l+=Math.abs(n(f)))}function M7(t,e,n,r,i){for(var a=0,o=0,s=t.length,u=0,l,f;u<s;++u)f=t[u],l=+n(f),l<0?(f[r]=o,f[i]=o+=l):(f[r]=a,f[i]=a+=l)}function D7(t,e,n,r){var i=[],a=p=>p(f),o,s,u,l,f,c,d,h,g;if(e==null)i.push(t.slice());else for(o={},s=0,u=t.length;s<u;++s)f=t[s],c=e.map(a),d=o[c],d||(o[c]=d=[],i.push(d)),d.push(f);for(c=0,g=0,l=i.length;c<l;++c){for(d=i[c],s=0,h=0,u=d.length;s<u;++s)h+=Math.abs(r(d[s]));d.sum=h,h>g&&(g=h),n&&d.sort(n)}return i.max=g,i}const C7=Object.freeze(Object.defineProperty({__proto__:null,axisticks:yb,datajoin:vb,encode:bb,legendentries:xb,linkpath:gh,pie:ph,scale:Mb,sortitems:Cb,stack:mh},Symbol.toStringTag,{value:"Module"}));var S7=Math.abs,Gf=Math.cos,Ws=Math.sin,F7=1e-6,_b=Math.PI,Yf=_b/2,Sp=$7(2);function Fp(t){return t>1?Yf:t<-1?-Yf:Math.asin(t)}function $7(t){return t>0?Math.sqrt(t):0}function _7(t,e){var n=t*Ws(e),r=30,i;do e-=i=(e+Ws(e)-n)/(1+Gf(e));while(S7(i)>F7&&--r>0);return e/2}function R7(t,e,n){function r(i,a){return[t*i*Gf(a=_7(n,a)),e*Ws(a)]}return r.invert=function(i,a){return a=Fp(a/e),[i/(t*Gf(a)),Fp((2*a+Ws(2*a))/n)]},r}var O7=R7(Sp/Yf,Sp,_b);function z7(){return fn(O7).scale(169.529)}const B7=Sm(),Hf=["clipAngle","clipExtent","scale","translate","center","rotate","parallels","precision","reflectX","reflectY","coefficient","distance","fraction","lobes","parallel","radius","ratio","spacing","tilt"];function T7(t,e){return function n(){const r=e();return r.type=t,r.path=Sm().projection(r),r.copy=r.copy||function(){const i=n();return Hf.forEach(a=>{r[a]&&i[a](r[a]())}),i.path.pointRadius(r.path.pointRadius()),i},q2(r)}}function Rb(t,e){if(!t||typeof t!="string")throw new Error("Projection type must be a name string.");return t=t.toLowerCase(),arguments.length>1?(Gs[t]=T7(t,e),this):Gs[t]||null}function Ob(t){return t&&t.path||B7}const Gs={albers:$m,albersusa:J3,azimuthalequalarea:Z3,azimuthalequidistant:Q3,conicconformal:nk,conicequalarea:Ms,conicequidistant:ak,equalEarth:sk,equirectangular:rk,gnomonic:uk,identity:lk,mercator:tk,mollweide:z7,naturalEarth1:fk,orthographic:ck,stereographic:dk,transversemercator:hk};for(const t in Gs)Rb(t,Gs[t]);function P7(){}const pn=[[],[[[1,1.5],[.5,1]]],[[[1.5,1],[1,1.5]]],[[[1.5,1],[.5,1]]],[[[1,.5],[1.5,1]]],[[[1,1.5],[.5,1]],[[1,.5],[1.5,1]]],[[[1,.5],[1,1.5]]],[[[1,.5],[.5,1]]],[[[.5,1],[1,.5]]],[[[1,1.5],[1,.5]]],[[[.5,1],[1,.5]],[[1.5,1],[1,1.5]]],[[[1.5,1],[1,.5]]],[[[.5,1],[1.5,1]]],[[[1,1.5],[1.5,1]]],[[[.5,1],[1,1.5]]],[]];function zb(){var t=1,e=1,n=s;function r(u,l){return l.map(f=>i(u,f))}function i(u,l){var f=[],c=[];return a(u,l,d=>{n(d,u,l),L7(d)>0?f.push([d]):c.push(d)}),c.forEach(d=>{for(var h=0,g=f.length,p;h<g;++h)if(N7((p=f[h])[0],d)!==-1){p.push(d);return}}),{type:"MultiPolygon",value:l,coordinates:f}}function a(u,l,f){var c=[],d=[],h,g,p,m,y,v;for(h=g=-1,m=u[0]>=l,pn[m<<1].forEach(b);++h<t-1;)p=m,m=u[h+1]>=l,pn[p|m<<1].forEach(b);for(pn[m<<0].forEach(b);++g<e-1;){for(h=-1,m=u[g*t+t]>=l,y=u[g*t]>=l,pn[m<<1|y<<2].forEach(b);++h<t-1;)p=m,m=u[g*t+t+h+1]>=l,v=y,y=u[g*t+h+1]>=l,pn[p|m<<1|y<<2|v<<3].forEach(b);pn[m|y<<3].forEach(b)}for(h=-1,y=u[g*t]>=l,pn[y<<2].forEach(b);++h<t-1;)v=y,y=u[g*t+h+1]>=l,pn[y<<2|v<<3].forEach(b);pn[y<<3].forEach(b);function b(x){var E=[x[0][0]+h,x[0][1]+g],A=[x[1][0]+h,x[1][1]+g],w=o(E),k=o(A),M,D;(M=d[w])?(D=c[k])?(delete d[M.end],delete c[D.start],M===D?(M.ring.push(A),f(M.ring)):c[M.start]=d[D.end]={start:M.start,end:D.end,ring:M.ring.concat(D.ring)}):(delete d[M.end],M.ring.push(A),d[M.end=k]=M):(M=c[k])?(D=d[w])?(delete c[M.start],delete d[D.end],M===D?(M.ring.push(A),f(M.ring)):c[D.start]=d[M.end]={start:D.start,end:M.end,ring:D.ring.concat(M.ring)}):(delete c[M.start],M.ring.unshift(E),c[M.start=w]=M):c[w]=d[k]={start:w,end:k,ring:[E,A]}}}function o(u){return u[0]*2+u[1]*(t+1)*4}function s(u,l,f){u.forEach(c=>{var d=c[0],h=c[1],g=d|0,p=h|0,m,y=l[p*t+g];d>0&&d<t&&g===d&&(m=l[p*t+g-1],c[0]=d+(f-m)/(y-m)-.5),h>0&&h<e&&p===h&&(m=l[(p-1)*t+g],c[1]=h+(f-m)/(y-m)-.5)})}return r.contour=i,r.size=function(u){if(!arguments.length)return[t,e];var l=Math.floor(u[0]),f=Math.floor(u[1]);return l>=0&&f>=0||_("invalid size"),t=l,e=f,r},r.smooth=function(u){return arguments.length?(n=u?s:P7,r):n===s},r}function L7(t){for(var e=0,n=t.length,r=t[n-1][1]*t[0][0]-t[n-1][0]*t[0][1];++e<n;)r+=t[e-1][1]*t[e][0]-t[e-1][0]*t[e][1];return r}function N7(t,e){for(var n=-1,r=e.length,i;++n<r;)if(i=I7(t,e[n]))return i;return 0}function I7(t,e){for(var n=e[0],r=e[1],i=-1,a=0,o=t.length,s=o-1;a<o;s=a++){var u=t[a],l=u[0],f=u[1],c=t[s],d=c[0],h=c[1];if(q7(u,c,e))return 0;f>r!=h>r&&n<(d-l)*(r-f)/(h-f)+l&&(i=-i)}return i}function q7(t,e,n){var r;return j7(t,e,n)&&U7(t[r=+(t[0]===e[0])],n[r],e[r])}function j7(t,e,n){return(e[0]-t[0])*(n[1]-t[1])===(n[0]-t[0])*(e[1]-t[1])}function U7(t,e,n){return t<=e&&e<=n||n<=e&&e<=t}function Bb(t,e,n){return function(r){var i=Mn(r),a=n?Math.min(i[0],0):i[0],o=i[1],s=o-a,u=e?ga(a,o,t):s/(t+1);return ge(a+u,o,u)}}function yh(t){F.call(this,null,t)}yh.Definition={type:"Isocontour",metadata:{generates:!0},params:[{name:"field",type:"field"},{name:"thresholds",type:"number",array:!0},{name:"levels",type:"number"},{name:"nice",type:"boolean",default:!1},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"zero",type:"boolean",default:!0},{name:"smooth",type:"boolean",default:!0},{name:"scale",type:"number",expr:!0},{name:"translate",type:"number",array:!0,expr:!0},{name:"as",type:"string",null:!0,default:"contour"}]};B(yh,F,{transform(t,e){if(this.value&&!e.changed()&&!t.modified())return e.StopPropagation;var n=e.fork(e.NO_SOURCE|e.NO_FIELDS),r=e.materialize(e.SOURCE).source,i=t.field||fe,a=zb().smooth(t.smooth!==!1),o=t.thresholds||W7(r,i,t),s=t.as===null?null:t.as||"contour",u=[];return r.forEach(l=>{const f=i(l),c=a.size([f.width,f.height])(f.values,L(o)?o:o(f.values));G7(c,f,l,t),c.forEach(d=>{u.push(pu(l,ot(s!=null?{[s]:d}:d)))})}),this.value&&(n.rem=this.value),this.value=n.source=n.add=u,n}});function W7(t,e,n){const r=Bb(n.levels||10,n.nice,n.zero!==!1);return n.resolve!=="shared"?r:r(t.map(i=>gr(e(i).values)))}function G7(t,e,n,r){let i=r.scale||e.scale,a=r.translate||e.translate;if(Z(i)&&(i=i(n,r)),Z(a)&&(a=a(n,r)),(i===1||i==null)&&!a)return;const o=(Ar(i)?i:i[0])||1,s=(Ar(i)?i:i[1])||1,u=a&&a[0]||0,l=a&&a[1]||0;t.forEach(Tb(e,o,s,u,l))}function Tb(t,e,n,r,i){const a=t.x1||0,o=t.y1||0,s=e*n<0;function u(c){c.forEach(l)}function l(c){s&&c.reverse(),c.forEach(f)}function f(c){c[0]=(c[0]-a)*e+r,c[1]=(c[1]-o)*n+i}return function(c){return c.coordinates.forEach(u),c}}function $p(t,e,n){const r=t>=0?t:Vy(e,n);return Math.round((Math.sqrt(4*r*r+1)-1)/2)}function El(t){return Z(t)?t:re(+t)}function Pb(){var t=u=>u[0],e=u=>u[1],n=Pa,r=[-1,-1],i=960,a=500,o=2;function s(u,l){const f=$p(r[0],u,t)>>o,c=$p(r[1],u,e)>>o,d=f?f+2:0,h=c?c+2:0,g=2*d+(i>>o),p=2*h+(a>>o),m=new Float32Array(g*p),y=new Float32Array(g*p);let v=m;u.forEach(x=>{const E=d+(+t(x)>>o),A=h+(+e(x)>>o);E>=0&&E<g&&A>=0&&A<p&&(m[E+A*g]+=+n(x))}),f>0&&c>0?(Wr(g,p,m,y,f),Gr(g,p,y,m,c),Wr(g,p,m,y,f),Gr(g,p,y,m,c),Wr(g,p,m,y,f),Gr(g,p,y,m,c)):f>0?(Wr(g,p,m,y,f),Wr(g,p,y,m,f),Wr(g,p,m,y,f),v=y):c>0&&(Gr(g,p,m,y,c),Gr(g,p,y,m,c),Gr(g,p,m,y,c),v=y);const b=l?Math.pow(2,-2*o):1/J1(v);for(let x=0,E=g*p;x<E;++x)v[x]*=b;return{values:v,scale:1<<o,width:g,height:p,x1:d,y1:h,x2:d+(i>>o),y2:h+(a>>o)}}return s.x=function(u){return arguments.length?(t=El(u),s):t},s.y=function(u){return arguments.length?(e=El(u),s):e},s.weight=function(u){return arguments.length?(n=El(u),s):n},s.size=function(u){if(!arguments.length)return[i,a];var l=+u[0],f=+u[1];return l>=0&&f>=0||_("invalid size"),i=l,a=f,s},s.cellSize=function(u){return arguments.length?((u=+u)>=1||_("invalid cell size"),o=Math.floor(Math.log(u)/Math.LN2),s):1<<o},s.bandwidth=function(u){return arguments.length?(u=G(u),u.length===1&&(u=[+u[0],+u[0]]),u.length!==2&&_("invalid bandwidth"),r=u,s):r},s}function Wr(t,e,n,r,i){const a=(i<<1)+1;for(let o=0;o<e;++o)for(let s=0,u=0;s<t+i;++s)s<t&&(u+=n[s+o*t]),s>=i&&(s>=a&&(u-=n[s-a+o*t]),r[s-i+o*t]=u/Math.min(s+1,t-1+a-s,a))}function Gr(t,e,n,r,i){const a=(i<<1)+1;for(let o=0;o<t;++o)for(let s=0,u=0;s<e+i;++s)s<e&&(u+=n[o+s*t]),s>=i&&(s>=a&&(u-=n[o+(s-a)*t]),r[o+(s-i)*t]=u/Math.min(s+1,e-1+a-s,a))}function vh(t){F.call(this,null,t)}vh.Definition={type:"KDE2D",metadata:{generates:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"weight",type:"field"},{name:"groupby",type:"field",array:!0},{name:"cellSize",type:"number"},{name:"bandwidth",type:"number",array:!0,length:2},{name:"counts",type:"boolean",default:!1},{name:"as",type:"string",default:"grid"}]};const Y7=["x","y","weight","size","cellSize","bandwidth"];function Lb(t,e){return Y7.forEach(n=>e[n]!=null?t[n](e[n]):0),t}B(vh,F,{transform(t,e){if(this.value&&!e.changed()&&!t.modified())return e.StopPropagation;var n=e.fork(e.NO_SOURCE|e.NO_FIELDS),r=e.materialize(e.SOURCE).source,i=H7(r,t.groupby),a=(t.groupby||[]).map(yt),o=Lb(Pb(),t),s=t.as||"grid",u=[];function l(f,c){for(let d=0;d<a.length;++d)f[a[d]]=c[d];return f}return u=i.map(f=>ot(l({[s]:o(f,t.counts)},f.dims))),this.value&&(n.rem=this.value),this.value=n.source=n.add=u,n}});function H7(t,e){var n=[],r=f=>f(s),i,a,o,s,u,l;if(e==null)n.push(t);else for(i={},a=0,o=t.length;a<o;++a)s=t[a],u=e.map(r),l=i[u],l||(i[u]=l=[],l.dims=u,n.push(l)),l.push(s);return n}function bh(t){F.call(this,null,t)}bh.Definition={type:"Contour",metadata:{generates:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"values",type:"number",array:!0},{name:"x",type:"field"},{name:"y",type:"field"},{name:"weight",type:"field"},{name:"cellSize",type:"number"},{name:"bandwidth",type:"number"},{name:"count",type:"number"},{name:"nice",type:"boolean",default:!1},{name:"thresholds",type:"number",array:!0},{name:"smooth",type:"boolean",default:!0}]};B(bh,F,{transform(t,e){if(this.value&&!e.changed()&&!t.modified())return e.StopPropagation;var n=e.fork(e.NO_SOURCE|e.NO_FIELDS),r=zb().smooth(t.smooth!==!1),i=t.values,a=t.thresholds||Bb(t.count||10,t.nice,!!i),o=t.size,s,u;return i||(i=e.materialize(e.SOURCE).source,s=Lb(Pb(),t)(i,!0),u=Tb(s,s.scale||1,s.scale||1,0,0),o=[s.width,s.height],i=s.values),a=L(a)?a:a(i),i=r.size(o)(i,a),u&&i.forEach(u),this.value&&(n.rem=this.value),this.value=n.source=n.add=(i||[]).map(ot),n}});const Vf="Feature",xh="FeatureCollection",V7="MultiPoint";function wh(t){F.call(this,null,t)}wh.Definition={type:"GeoJSON",metadata:{},params:[{name:"fields",type:"field",array:!0,length:2},{name:"geojson",type:"field"}]};B(wh,F,{transform(t,e){var n=this._features,r=this._points,i=t.fields,a=i&&i[0],o=i&&i[1],s=t.geojson||!i&&fe,u=e.ADD,l;l=t.modified()||e.changed(e.REM)||e.modified(Zt(s))||a&&e.modified(Zt(a))||o&&e.modified(Zt(o)),(!this.value||l)&&(u=e.SOURCE,this._features=n=[],this._points=r=[]),s&&e.visit(u,f=>n.push(s(f))),a&&o&&(e.visit(u,f=>{var c=a(f),d=o(f);c!=null&&d!=null&&(c=+c)===c&&(d=+d)===d&&r.push([c,d])}),n=n.concat({type:Vf,geometry:{type:V7,coordinates:r}})),this.value={type:xh,features:n}}});function Eh(t){F.call(this,null,t)}Eh.Definition={type:"GeoPath",metadata:{modifies:!0},params:[{name:"projection",type:"projection"},{name:"field",type:"field"},{name:"pointRadius",type:"number",expr:!0},{name:"as",type:"string",default:"path"}]};B(Eh,F,{transform(t,e){var n=e.fork(e.ALL),r=this.value,i=t.field||fe,a=t.as||"path",o=n.SOURCE;!r||t.modified()?(this.value=r=Ob(t.projection),n.materialize().reflow()):o=i===fe||e.modified(i.fields)?n.ADD_MOD:n.ADD;const s=X7(r,t.pointRadius);return n.visit(o,u=>u[a]=r(i(u))),r.pointRadius(s),n.modifies(a)}});function X7(t,e){const n=t.pointRadius();return t.context(null),e!=null&&t.pointRadius(e),n}function Ah(t){F.call(this,null,t)}Ah.Definition={type:"GeoPoint",metadata:{modifies:!0},params:[{name:"projection",type:"projection",required:!0},{name:"fields",type:"field",array:!0,required:!0,length:2},{name:"as",type:"string",array:!0,length:2,default:["x","y"]}]};B(Ah,F,{transform(t,e){var n=t.projection,r=t.fields[0],i=t.fields[1],a=t.as||["x","y"],o=a[0],s=a[1],u;function l(f){const c=n([r(f),i(f)]);c?(f[o]=c[0],f[s]=c[1]):(f[o]=void 0,f[s]=void 0)}return t.modified()?e=e.materialize().reflow(!0).visit(e.SOURCE,l):(u=e.modified(r.fields)||e.modified(i.fields),e.visit(u?e.ADD_MOD:e.ADD,l)),e.modifies(a)}});function kh(t){F.call(this,null,t)}kh.Definition={type:"GeoShape",metadata:{modifies:!0,nomod:!0},params:[{name:"projection",type:"projection"},{name:"field",type:"field",default:"datum"},{name:"pointRadius",type:"number",expr:!0},{name:"as",type:"string",default:"shape"}]};B(kh,F,{transform(t,e){var n=e.fork(e.ALL),r=this.value,i=t.as||"shape",a=n.ADD;return(!r||t.modified())&&(this.value=r=K7(Ob(t.projection),t.field||Ue("datum"),t.pointRadius),n.materialize().reflow(),a=n.SOURCE),n.visit(a,o=>o[i]=r),n.modifies(i)}});function K7(t,e,n){const r=n==null?i=>t(e(i)):i=>{var a=t.pointRadius(),o=t.pointRadius(n)(e(i));return t.pointRadius(a),o};return r.context=i=>(t.context(i),r),r}function Mh(t){F.call(this,[],t),this.generator=$3()}Mh.Definition={type:"Graticule",metadata:{changes:!0,generates:!0},params:[{name:"extent",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"extentMajor",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"extentMinor",type:"array",array:!0,length:2,content:{type:"number",array:!0,length:2}},{name:"step",type:"number",array:!0,length:2},{name:"stepMajor",type:"number",array:!0,length:2,default:[90,360]},{name:"stepMinor",type:"number",array:!0,length:2,default:[10,10]},{name:"precision",type:"number",default:2.5}]};B(Mh,F,{transform(t,e){var n=this.value,r=this.generator,i;if(!n.length||t.modified())for(const a in t)Z(r[a])&&r[a](t[a]);return i=r(),n.length?e.mod.push(Iy(n[0],i)):e.add.push(ot(i)),n[0]=i,e}});function Dh(t){F.call(this,null,t)}Dh.Definition={type:"heatmap",metadata:{modifies:!0},params:[{name:"field",type:"field"},{name:"color",type:"string",expr:!0},{name:"opacity",type:"number",expr:!0},{name:"resolve",type:"enum",values:["shared","independent"],default:"independent"},{name:"as",type:"string",default:"image"}]};B(Dh,F,{transform(t,e){if(!e.changed()&&!t.modified())return e.StopPropagation;var n=e.materialize(e.SOURCE).source,r=t.resolve==="shared",i=t.field||fe,a=Z7(t.opacity,t),o=J7(t.color,t),s=t.as||"image",u={$x:0,$y:0,$value:0,$max:r?gr(n.map(l=>gr(i(l).values))):0};return n.forEach(l=>{const f=i(l),c=J({},l,u);r||(c.$max=gr(f.values||[])),l[s]=Q7(f,c,o.dep?o:re(o(c)),a.dep?a:re(a(c)))}),e.reflow(!0).modifies(s)}});function J7(t,e){let n;return Z(t)?(n=r=>es(t(r,e)),n.dep=Nb(t)):n=re(es(t||"#888")),n}function Z7(t,e){let n;return Z(t)?(n=r=>t(r,e),n.dep=Nb(t)):t?n=re(t):(n=r=>r.$value/r.$max||0,n.dep=!0),n}function Nb(t){if(!Z(t))return!1;const e=an(Zt(t));return e.$x||e.$y||e.$value||e.$max}function Q7(t,e,n,r){const i=t.width,a=t.height,o=t.x1||0,s=t.y1||0,u=t.x2||i,l=t.y2||a,f=t.values,c=f?m=>f[m]:ar,d=jn(u-o,l-s),h=d.getContext("2d"),g=h.getImageData(0,0,u-o,l-s),p=g.data;for(let m=s,y=0;m<l;++m){e.$y=m-s;for(let v=o,b=m*i;v<u;++v,y+=4){e.$x=v-o,e.$value=c(v+b);const x=n(e);p[y+0]=x.r,p[y+1]=x.g,p[y+2]=x.b,p[y+3]=~~(255*r(e))}}return h.putImageData(g,0,0),d}function Ib(t){F.call(this,null,t),this.modified(!0)}B(Ib,F,{transform(t,e){let n=this.value;return!n||t.modified("type")?(this.value=n=e9(t.type),Hf.forEach(r=>{t[r]!=null&&_p(n,r,t[r])})):Hf.forEach(r=>{t.modified(r)&&_p(n,r,t[r])}),t.pointRadius!=null&&n.path.pointRadius(t.pointRadius),t.fit&&t9(n,t),e.fork(e.NO_SOURCE|e.NO_FIELDS)}});function t9(t,e){const n=n9(e.fit);e.extent?t.fitExtent(e.extent,n):e.size&&t.fitSize(e.size,n)}function e9(t){const e=Rb((t||"mercator").toLowerCase());return e||_("Unrecognized projection type: "+t),e()}function _p(t,e,n){Z(t[e])&&t[e](n)}function n9(t){return t=G(t),t.length===1?t[0]:{type:xh,features:t.reduce((e,n)=>e.concat(r9(n)),[])}}function r9(t){return t.type===xh?t.features:G(t).filter(e=>e!=null).map(e=>e.type===Vf?e:{type:Vf,geometry:e})}const i9=Object.freeze(Object.defineProperty({__proto__:null,contour:bh,geojson:wh,geopath:Eh,geopoint:Ah,geoshape:kh,graticule:Mh,heatmap:Dh,isocontour:yh,kde2d:vh,projection:Ib},Symbol.toStringTag,{value:"Module"})),Rp={center:CA,collide:YA,nbody:r3,link:VA,x:i3,y:a3},Ji="forces",Xf=["alpha","alphaMin","alphaTarget","velocityDecay","forces"],a9=["static","iterations"],qb=["x","y","vx","vy"];function Ch(t){F.call(this,null,t)}Ch.Definition={type:"Force",metadata:{modifies:!0},params:[{name:"static",type:"boolean",default:!1},{name:"restart",type:"boolean",default:!1},{name:"iterations",type:"number",default:300},{name:"alpha",type:"number",default:1},{name:"alphaMin",type:"number",default:.001},{name:"alphaTarget",type:"number",default:0},{name:"velocityDecay",type:"number",default:.4},{name:"forces",type:"param",array:!0,params:[{key:{force:"center"},params:[{name:"x",type:"number",default:0},{name:"y",type:"number",default:0}]},{key:{force:"collide"},params:[{name:"radius",type:"number",expr:!0},{name:"strength",type:"number",default:.7},{name:"iterations",type:"number",default:1}]},{key:{force:"nbody"},params:[{name:"strength",type:"number",default:-30,expr:!0},{name:"theta",type:"number",default:.9},{name:"distanceMin",type:"number",default:1},{name:"distanceMax",type:"number"}]},{key:{force:"link"},params:[{name:"links",type:"data"},{name:"id",type:"field"},{name:"distance",type:"number",default:30,expr:!0},{name:"strength",type:"number",expr:!0},{name:"iterations",type:"number",default:1}]},{key:{force:"x"},params:[{name:"strength",type:"number",default:.1},{name:"x",type:"field"}]},{key:{force:"y"},params:[{name:"strength",type:"number",default:.1},{name:"y",type:"field"}]}]},{name:"as",type:"string",array:!0,modify:!1,default:qb}]};B(Ch,F,{transform(t,e){var n=this.value,r=e.changed(e.ADD_REM),i=t.modified(Xf),a=t.iterations||300;if(n?(r&&(e.modifies("index"),n.nodes(e.source)),(i||e.changed(e.MOD))&&jb(n,t,0,e)):(this.value=n=s9(e.source,t),n.on("tick",o9(e.dataflow,this)),t.static||(r=!0,n.tick()),e.modifies("index")),i||r||t.modified(a9)||e.changed()&&t.restart){if(n.alpha(Math.max(n.alpha(),t.alpha||1)).alphaDecay(1-Math.pow(n.alphaMin(),1/a)),t.static)for(n.stop();--a>=0;)n.tick();else if(n.stopped()&&n.restart(),!r)return e.StopPropagation}return this.finish(t,e)},finish(t,e){const n=e.dataflow;for(let s=this._argops,u=0,l=s.length,f;u<l;++u)if(f=s[u],!(f.name!==Ji||f.op._argval.force!=="link")){for(var r=f.op._argops,i=0,a=r.length,o;i<a;++i)if(r[i].name==="links"&&(o=r[i].op.source)){n.pulse(o,n.changeset().reflow());break}}return e.reflow(t.modified()).modifies(qb)}});function o9(t,e){return()=>t.touch(e).run()}function s9(t,e){const n=n3(t),r=n.stop,i=n.restart;let a=!1;return n.stopped=()=>a,n.restart=()=>(a=!1,i()),n.stop=()=>(a=!0,r()),jb(n,e,!0).on("end",()=>a=!0)}function jb(t,e,n,r){var i=G(e.forces),a,o,s,u;for(a=0,o=Xf.length;a<o;++a)s=Xf[a],s!==Ji&&e.modified(s)&&t[s](e[s]);for(a=0,o=i.length;a<o;++a)u=Ji+a,s=n||e.modified(Ji,a)?l9(i[a]):r&&u9(i[a],r)?t.force(u):null,s&&t.force(u,s);for(o=t.numForces||0;a<o;++a)t.force(Ji+a,null);return t.numForces=i.length,t}function u9(t,e){var n,r;for(n in t)if(Z(r=t[n])&&e.modified(Zt(r)))return 1;return 0}function l9(t){var e,n;H(Rp,t.force)||_("Unrecognized force: "+t.force),e=Rp[t.force]();for(n in t)Z(e[n])&&f9(e[n],t[n],t);return e}function f9(t,e,n){t(Z(e)?r=>e(r,n):e)}const c9=Object.freeze(Object.defineProperty({__proto__:null,force:Ch},Symbol.toStringTag,{value:"Module"}));function Kf(t,e,n){const r={};return t.each(i=>{const a=i.data;n(a)&&(r[e(a)]=i)}),t.lookup=r,t}function Sh(t){F.call(this,null,t)}Sh.Definition={type:"Nest",metadata:{treesource:!0,changes:!0},params:[{name:"keys",type:"field",array:!0},{name:"generate",type:"boolean"}]};const d9=t=>t.values;B(Sh,F,{transform(t,e){e.source||_("Nest transform requires an upstream data source.");var n=t.generate,r=t.modified(),i=e.clone(),a=this.value;return(!a||r||e.changed())&&(a&&a.each(o=>{o.children&&Xc(o.data)&&i.rem.push(o.data)}),this.value=a=zE({values:G(t.keys).reduce((o,s)=>(o.key(s),o),h9()).entries(i.source)},d9),n&&a.each(o=>{o.children&&(o=ot(o.data),i.add.push(o),i.source.push(o))}),Kf(a,j,j)),i.source.root=a,i}});function h9(){const t=[],e={entries:i=>r(n(i,0),0),key:i=>(t.push(i),e)};function n(i,a){if(a>=t.length)return i;const o=i.length,s=t[a++],u={},l={};let f=-1,c,d,h;for(;++f<o;)c=s(d=i[f])+"",(h=u[c])?h.push(d):u[c]=[d];for(c in u)l[c]=n(u[c],a);return l}function r(i,a){if(++a>t.length)return i;const o=[];for(const s in i)o.push({key:s,values:r(i[s],a)});return o}return e}function Fn(t){F.call(this,null,t)}const g9=(t,e)=>t.parent===e.parent?1:2;B(Fn,F,{transform(t,e){(!e.source||!e.source.root)&&_(this.constructor.name+" transform requires a backing tree data source.");const n=this.layout(t.method),r=this.fields,i=e.source.root,a=t.as||r;t.field?i.sum(t.field):i.count(),t.sort&&i.sort(Or(t.sort,o=>o.data)),p9(n,this.params,t),n.separation&&n.separation(t.separation!==!1?g9:Pa);try{this.value=n(i)}catch(o){_(o)}return i.each(o=>m9(o,r,a)),e.reflow(t.modified()).modifies(a).modifies("leaf")}});function p9(t,e,n){for(let r,i=0,a=e.length;i<a;++i)r=e[i],r in n&&t[r](n[r])}function m9(t,e,n){const r=t.data,i=e.length-1;for(let a=0;a<i;++a)r[n[a]]=t[e[a]];r[n[i]]=t.children?t.children.length:0}const Jf=["x","y","r","depth","children"];function Fh(t){Fn.call(this,t)}Fh.Definition={type:"Pack",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"padding",type:"number",default:0},{name:"radius",type:"field",default:null},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:Jf.length,default:Jf}]};B(Fh,Fn,{layout:Ok,params:["radius","size","padding"],fields:Jf});const Zf=["x0","y0","x1","y1","depth","children"];function $h(t){Fn.call(this,t)}$h.Definition={type:"Partition",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"padding",type:"number",default:0},{name:"round",type:"boolean",default:!1},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:Zf.length,default:Zf}]};B($h,Fn,{layout:zk,params:["size","round","padding"],fields:Zf});function _h(t){F.call(this,null,t)}_h.Definition={type:"Stratify",metadata:{treesource:!0},params:[{name:"key",type:"field",required:!0},{name:"parentKey",type:"field",required:!0}]};B(_h,F,{transform(t,e){e.source||_("Stratify transform requires an upstream data source.");let n=this.value;const r=t.modified(),i=e.fork(e.ALL).materialize(e.SOURCE),a=!n||r||e.changed(e.ADD_REM)||e.modified(t.key.fields)||e.modified(t.parentKey.fields);return i.source=i.source.slice(),a&&(n=i.source.length?Kf(gg().id(t.key).parentId(t.parentKey)(i.source),t.key,We):Kf(gg()([{}]),t.key,t.key)),i.source.root=this.value=n,i}});const Op={tidy:Wk,cluster:wk},Qf=["x","y","depth","children"];function Rh(t){Fn.call(this,t)}Rh.Definition={type:"Tree",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"method",type:"enum",default:"tidy",values:["tidy","cluster"]},{name:"size",type:"number",array:!0,length:2},{name:"nodeSize",type:"number",array:!0,length:2},{name:"separation",type:"boolean",default:!0},{name:"as",type:"string",array:!0,length:Qf.length,default:Qf}]};B(Rh,Fn,{layout(t){const e=t||"tidy";if(H(Op,e))return Op[e]();_("Unrecognized Tree layout method: "+e)},params:["size","nodeSize"],fields:Qf});function Oh(t){F.call(this,[],t)}Oh.Definition={type:"TreeLinks",metadata:{tree:!0,generates:!0,changes:!0},params:[]};B(Oh,F,{transform(t,e){const n=this.value,r=e.source&&e.source.root,i=e.fork(e.NO_SOURCE),a={};return r||_("TreeLinks transform requires a tree data source."),e.changed(e.ADD_REM)?(i.rem=n,e.visit(e.SOURCE,o=>a[j(o)]=1),r.each(o=>{const s=o.data,u=o.parent&&o.parent.data;u&&a[j(s)]&&a[j(u)]&&i.add.push(ot({source:u,target:s}))}),this.value=i.add):e.changed(e.MOD)&&(e.visit(e.MOD,o=>a[j(o)]=1),n.forEach(o=>{(a[j(o.source)]||a[j(o.target)])&&i.mod.push(o)})),i}});const zp={binary:Gk,dice:eu,slice:Ac,slicedice:Yk,squarify:TE,resquarify:Hk},tc=["x0","y0","x1","y1","depth","children"];function zh(t){Fn.call(this,t)}zh.Definition={type:"Treemap",metadata:{tree:!0,modifies:!0},params:[{name:"field",type:"field"},{name:"sort",type:"compare"},{name:"method",type:"enum",default:"squarify",values:["squarify","resquarify","binary","dice","slice","slicedice"]},{name:"padding",type:"number",default:0},{name:"paddingInner",type:"number",default:0},{name:"paddingOuter",type:"number",default:0},{name:"paddingTop",type:"number",default:0},{name:"paddingRight",type:"number",default:0},{name:"paddingBottom",type:"number",default:0},{name:"paddingLeft",type:"number",default:0},{name:"ratio",type:"number",default:1.618033988749895},{name:"round",type:"boolean",default:!1},{name:"size",type:"number",array:!0,length:2},{name:"as",type:"string",array:!0,length:tc.length,default:tc}]};B(zh,Fn,{layout(){const t=BE();return t.ratio=e=>{const n=t.tile();n.ratio&&t.tile(n.ratio(e))},t.method=e=>{H(zp,e)?t.tile(zp[e]):_("Unrecognized Treemap layout method: "+e)},t},params:["method","ratio","size","round","padding","paddingInner","paddingOuter","paddingTop","paddingRight","paddingBottom","paddingLeft"],fields:tc});const y9=Object.freeze(Object.defineProperty({__proto__:null,nest:Sh,pack:Fh,partition:$h,stratify:_h,tree:Rh,treelinks:Oh,treemap:zh},Symbol.toStringTag,{value:"Module"})),Al=4278190080;function v9(t,e){const n=t.bitmap();return(e||[]).forEach(r=>n.set(t(r.boundary[0]),t(r.boundary[3]))),[n,void 0]}function b9(t,e,n,r,i){const a=t.width,o=t.height,s=r||i,u=jn(a,o).getContext("2d"),l=jn(a,o).getContext("2d"),f=s&&jn(a,o).getContext("2d");n.forEach(k=>Ho(u,k,!1)),Ho(l,e,!1),s&&Ho(f,e,!0);const c=kl(u,a,o),d=kl(l,a,o),h=s&&kl(f,a,o),g=t.bitmap(),p=s&&t.bitmap();let m,y,v,b,x,E,A,w;for(y=0;y<o;++y)for(m=0;m<a;++m)x=y*a+m,E=c[x]&Al,w=d[x]&Al,A=s&&h[x]&Al,(E||A||w)&&(v=t(m),b=t(y),!i&&(E||w)&&g.set(v,b),s&&(E||A)&&p.set(v,b));return[g,p]}function kl(t,e,n){return new Uint32Array(t.getImageData(0,0,e,n).data.buffer)}function Ho(t,e,n){if(!e.length)return;const r=e[0].mark.marktype;r==="group"?e.forEach(i=>{i.items.forEach(a=>Ho(t,a.items,n))}):_e[r].draw(t,{items:n?e.map(x9):e})}function x9(t){const e=pu(t,{});return e.stroke&&e.strokeOpacity!==0||e.fill&&e.fillOpacity!==0?{...e,strokeOpacity:1,stroke:"#000",fillOpacity:0}:e}const mn=5,qt=31,Ma=32,zn=new Uint32Array(Ma+1),Le=new Uint32Array(Ma+1);Le[0]=0;zn[0]=~Le[0];for(let t=1;t<=Ma;++t)Le[t]=Le[t-1]<<1|1,zn[t]=~Le[t];function w9(t,e){const n=new Uint32Array(~~((t*e+Ma)/Ma));function r(a,o){n[a]|=o}function i(a,o){n[a]&=o}return{array:n,get:(a,o)=>{const s=o*t+a;return n[s>>>mn]&1<<(s&qt)},set:(a,o)=>{const s=o*t+a;r(s>>>mn,1<<(s&qt))},clear:(a,o)=>{const s=o*t+a;i(s>>>mn,~(1<<(s&qt)))},getRange:(a,o,s,u)=>{let l=u,f,c,d,h;for(;l>=o;--l)if(f=l*t+a,c=l*t+s,d=f>>>mn,h=c>>>mn,d===h){if(n[d]&zn[f&qt]&Le[(c&qt)+1])return!0}else{if(n[d]&zn[f&qt]||n[h]&Le[(c&qt)+1])return!0;for(let g=d+1;g<h;++g)if(n[g])return!0}return!1},setRange:(a,o,s,u)=>{let l,f,c,d,h;for(;o<=u;++o)if(l=o*t+a,f=o*t+s,c=l>>>mn,d=f>>>mn,c===d)r(c,zn[l&qt]&Le[(f&qt)+1]);else for(r(c,zn[l&qt]),r(d,Le[(f&qt)+1]),h=c+1;h<d;++h)r(h,4294967295)},clearRange:(a,o,s,u)=>{let l,f,c,d,h;for(;o<=u;++o)if(l=o*t+a,f=o*t+s,c=l>>>mn,d=f>>>mn,c===d)i(c,Le[l&qt]|zn[(f&qt)+1]);else for(i(c,Le[l&qt]),i(d,zn[(f&qt)+1]),h=c+1;h<d;++h)i(h,0)},outOfBounds:(a,o,s,u)=>a<0||o<0||u>=e||s>=t}}function E9(t,e,n){const r=Math.max(1,Math.sqrt(t*e/1e6)),i=~~((t+2*n+r)/r),a=~~((e+2*n+r)/r),o=s=>~~((s+n)/r);return o.invert=s=>s*r-n,o.bitmap=()=>w9(i,a),o.ratio=r,o.padding=n,o.width=t,o.height=e,o}function A9(t,e,n,r){const i=t.width,a=t.height;return function(o){const s=o.datum.datum.items[r].items,u=s.length,l=o.datum.fontSize,f=Me.width(o.datum,o.datum.text);let c=0,d,h,g,p,m,y,v;for(let b=0;b<u;++b)d=s[b].x,g=s[b].y,h=s[b].x2===void 0?d:s[b].x2,p=s[b].y2===void 0?g:s[b].y2,m=(d+h)/2,y=(g+p)/2,v=Math.abs(h-d+p-g),v>=c&&(c=v,o.x=m,o.y=y);return m=f/2,y=l/2,d=o.x-m,h=o.x+m,g=o.y-y,p=o.y+y,o.align="center",d<0&&h<=i?o.align="left":0<=d&&i<h&&(o.align="right"),o.baseline="middle",g<0&&p<=a?o.baseline="top":0<=g&&a<p&&(o.baseline="bottom"),!0}}function Ys(t,e,n,r,i,a){let o=n/2;return t-o<0||t+o>i||e-(o=r/2)<0||e+o>a}function qn(t,e,n,r,i,a,o,s){const u=i*a/(r*2),l=t(e-u),f=t(e+u),c=t(n-(a=a/2)),d=t(n+a);return o.outOfBounds(l,c,f,d)||o.getRange(l,c,f,d)||s&&s.getRange(l,c,f,d)}function k9(t,e,n,r){const i=t.width,a=t.height,o=e[0],s=e[1];function u(l,f,c,d,h){const g=t.invert(l),p=t.invert(f);let m=c,y=a,v;if(!Ys(g,p,d,h,i,a)&&!qn(t,g,p,h,d,m,o,s)&&!qn(t,g,p,h,d,h,o,null)){for(;y-m>=1;)v=(m+y)/2,qn(t,g,p,h,d,v,o,s)?y=v:m=v;if(m>c)return[g,p,m,!0]}}return function(l){const f=l.datum.datum.items[r].items,c=f.length,d=l.datum.fontSize,h=Me.width(l.datum,l.datum.text);let g=n?d:0,p=!1,m=!1,y=0,v,b,x,E,A,w,k,M,D,S,O,z,T,C,R,N,X;for(let V=0;V<c;++V){for(v=f[V].x,x=f[V].y,b=f[V].x2===void 0?v:f[V].x2,E=f[V].y2===void 0?x:f[V].y2,v>b&&(X=v,v=b,b=X),x>E&&(X=x,x=E,E=X),D=t(v),O=t(b),S=~~((D+O)/2),z=t(x),C=t(E),T=~~((z+C)/2),k=S;k>=D;--k)for(M=T;M>=z;--M)N=u(k,M,g,h,d),N&&([l.x,l.y,g,p]=N);for(k=S;k<=O;++k)for(M=T;M<=C;++M)N=u(k,M,g,h,d),N&&([l.x,l.y,g,p]=N);!p&&!n&&(R=Math.abs(b-v+E-x),A=(v+b)/2,w=(x+E)/2,R>=y&&!Ys(A,w,h,d,i,a)&&!qn(t,A,w,d,h,d,o,null)&&(y=R,l.x=A,l.y=w,m=!0))}return p||m?(A=h/2,w=d/2,o.setRange(t(l.x-A),t(l.y-w),t(l.x+A),t(l.y+w)),l.align="center",l.baseline="middle",!0):!1}}const M9=[-1,-1,1,1],D9=[-1,1,-1,1];function C9(t,e,n,r){const i=t.width,a=t.height,o=e[0],s=e[1],u=t.bitmap();return function(l){const f=l.datum.datum.items[r].items,c=f.length,d=l.datum.fontSize,h=Me.width(l.datum,l.datum.text),g=[];let p=n?d:0,m=!1,y=!1,v=0,b,x,E,A,w,k,M,D,S,O,z,T;for(let C=0;C<c;++C){for(b=f[C].x,E=f[C].y,x=f[C].x2===void 0?b:f[C].x2,A=f[C].y2===void 0?E:f[C].y2,g.push([t((b+x)/2),t((E+A)/2)]);g.length;)if([M,D]=g.pop(),!(o.get(M,D)||s.get(M,D)||u.get(M,D))){u.set(M,D);for(let R=0;R<4;++R)w=M+M9[R],k=D+D9[R],u.outOfBounds(w,k,w,k)||g.push([w,k]);if(w=t.invert(M),k=t.invert(D),S=p,O=a,!Ys(w,k,h,d,i,a)&&!qn(t,w,k,d,h,S,o,s)&&!qn(t,w,k,d,h,d,o,null)){for(;O-S>=1;)z=(S+O)/2,qn(t,w,k,d,h,z,o,s)?O=z:S=z;S>p&&(l.x=w,l.y=k,p=S,m=!0)}}!m&&!n&&(T=Math.abs(x-b+A-E),w=(b+x)/2,k=(E+A)/2,T>=v&&!Ys(w,k,h,d,i,a)&&!qn(t,w,k,d,h,d,o,null)&&(v=T,l.x=w,l.y=k,y=!0))}return m||y?(w=h/2,k=d/2,o.setRange(t(l.x-w),t(l.y-k),t(l.x+w),t(l.y+k)),l.align="center",l.baseline="middle",!0):!1}}const S9=["right","center","left"],F9=["bottom","middle","top"];function $9(t,e,n,r){const i=t.width,a=t.height,o=e[0],s=e[1],u=r.length;return function(l){const f=l.boundary,c=l.datum.fontSize;if(f[2]<0||f[5]<0||f[0]>i||f[3]>a)return!1;let d=l.textWidth??0,h,g,p,m,y,v,b,x,E,A,w,k,M,D,S;for(let O=0;O<u;++O){if(h=(n[O]&3)-1,g=(n[O]>>>2&3)-1,p=h===0&&g===0||r[O]<0,m=h&&g?Math.SQRT1_2:1,y=r[O]<0?-1:1,v=f[1+h]+r[O]*h*m,w=f[4+g]+y*c*g/2+r[O]*g*m,x=w-c/2,E=w+c/2,k=t(v),D=t(x),S=t(E),!d)if(Bp(k,k,D,S,o,s,v,v,x,E,f,p))d=Me.width(l.datum,l.datum.text);else continue;if(A=v+y*d*h/2,v=A-d/2,b=A+d/2,k=t(v),M=t(b),Bp(k,M,D,S,o,s,v,b,x,E,f,p))return l.x=h?h*y<0?b:v:A,l.y=g?g*y<0?E:x:w,l.align=S9[h*y+1],l.baseline=F9[g*y+1],o.setRange(k,D,M,S),!0}return!1}}function Bp(t,e,n,r,i,a,o,s,u,l,f,c){return!(i.outOfBounds(t,n,e,r)||(c&&a||i).getRange(t,n,e,r))}const Ml=0,Dl=4,Cl=8,Sl=0,Fl=1,$l=2,_9={"top-left":Ml+Sl,top:Ml+Fl,"top-right":Ml+$l,left:Dl+Sl,middle:Dl+Fl,right:Dl+$l,"bottom-left":Cl+Sl,bottom:Cl+Fl,"bottom-right":Cl+$l},R9={naive:A9,"reduced-search":k9,floodfill:C9};function O9(t,e,n,r,i,a,o,s,u,l,f){if(!t.length)return t;const c=Math.max(r.length,i.length),d=z9(r,c),h=B9(i,c),g=T9(t[0].datum),p=g==="group"&&t[0].datum.items[u].marktype,m=p==="area",y=P9(g,p,s,u),v=l===null||l===1/0,b=m&&f==="naive";let x=-1,E=-1;const A=t.map(D=>{const S=v?Me.width(D,D.text):void 0;return x=Math.max(x,S),E=Math.max(E,D.fontSize),{datum:D,opacity:0,x:void 0,y:void 0,align:void 0,baseline:void 0,boundary:y(D),textWidth:S}});l=l===null||l===1/0?Math.max(x,E)+Math.max(...r):l;const w=E9(e[0],e[1],l);let k;if(!b){n&&A.sort((O,z)=>n(O.datum,z.datum));let D=!1;for(let O=0;O<h.length&&!D;++O)D=h[O]===5||d[O]<0;const S=(g&&o||m)&&t.map(O=>O.datum);k=a.length||S?b9(w,S||[],a,D,m):v9(w,o&&A)}const M=m?R9[f](w,k,o,u):$9(w,k,h,d);return A.forEach(D=>D.opacity=+M(D)),A}function z9(t,e){const n=new Float64Array(e),r=t.length;for(let i=0;i<r;++i)n[i]=t[i]||0;for(let i=r;i<e;++i)n[i]=n[r-1];return n}function B9(t,e){const n=new Int8Array(e),r=t.length;for(let i=0;i<r;++i)n[i]|=_9[t[i]];for(let i=r;i<e;++i)n[i]=n[r-1];return n}function T9(t){return t&&t.mark&&t.mark.marktype}function P9(t,e,n,r){const i=a=>[a.x,a.x,a.x,a.y,a.y,a.y];return t?t==="line"||t==="area"?a=>i(a.datum):e==="line"?a=>{const o=a.datum.items[r].items;return i(o.length?o[n==="start"?0:o.length-1]:{x:NaN,y:NaN})}:a=>{const o=a.datum.bounds;return[o.x1,(o.x1+o.x2)/2,o.x2,o.y1,(o.y1+o.y2)/2,o.y2]}:i}const ec=["x","y","opacity","align","baseline"],Ub=["top-left","left","bottom-left","top","bottom","top-right","right","bottom-right"];function Bh(t){F.call(this,null,t)}Bh.Definition={type:"Label",metadata:{modifies:!0},params:[{name:"size",type:"number",array:!0,length:2,required:!0},{name:"sort",type:"compare"},{name:"anchor",type:"string",array:!0,default:Ub},{name:"offset",type:"number",array:!0,default:[1]},{name:"padding",type:"number",default:0,null:!0},{name:"lineAnchor",type:"string",values:["start","end"],default:"end"},{name:"markIndex",type:"number",default:0},{name:"avoidBaseMark",type:"boolean",default:!0},{name:"avoidMarks",type:"data",array:!0},{name:"method",type:"string",default:"naive"},{name:"as",type:"string",array:!0,length:ec.length,default:ec}]};B(Bh,F,{transform(t,e){function n(a){const o=t[a];return Z(o)&&e.modified(o.fields)}const r=t.modified();if(!(r||e.changed(e.ADD_REM)||n("sort")))return;(!t.size||t.size.length!==2)&&_("Size parameter should be specified as a [width, height] array.");const i=t.as||ec;return O9(e.materialize(e.SOURCE).source||[],t.size,t.sort,G(t.offset==null?1:t.offset),G(t.anchor||Ub),t.avoidMarks||[],t.avoidBaseMark!==!1,t.lineAnchor||"end",t.markIndex||0,t.padding===void 0?0:t.padding,t.method||"naive").forEach(a=>{const o=a.datum;o[i[0]]=a.x,o[i[1]]=a.y,o[i[2]]=a.opacity,o[i[3]]=a.align,o[i[4]]=a.baseline}),e.reflow(r).modifies(i)}});const L9=Object.freeze(Object.defineProperty({__proto__:null,label:Bh},Symbol.toStringTag,{value:"Module"}));function Wb(t,e){var n=[],r=function(f){return f(s)},i,a,o,s,u,l;if(e==null)n.push(t);else for(i={},a=0,o=t.length;a<o;++a)s=t[a],u=e.map(r),l=i[u],l||(i[u]=l=[],l.dims=u,n.push(l)),l.push(s);return n}function Th(t){F.call(this,null,t)}Th.Definition={type:"Loess",metadata:{generates:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"bandwidth",type:"number",default:.3},{name:"as",type:"string",array:!0}]};B(Th,F,{transform(t,e){const n=e.fork(e.NO_SOURCE|e.NO_FIELDS);if(!this.value||e.changed()||t.modified()){const r=e.materialize(e.SOURCE).source,i=Wb(r,t.groupby),a=(t.groupby||[]).map(yt),o=a.length,s=t.as||[yt(t.x),yt(t.y)],u=[];i.forEach(l=>{Z6(l,t.x,t.y,t.bandwidth||.3).forEach(f=>{const c={};for(let d=0;d<o;++d)c[a[d]]=l.dims[d];c[s[0]]=f[0],c[s[1]]=f[1],u.push(ot(c))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=u}return n}});const nc={constant:s2,linear:u2,log:Y6,exp:H6,pow:V6,quad:l2,poly:X6},N9=(t,e)=>t==="poly"?e:t==="quad"?2:1;function Ph(t){F.call(this,null,t)}Ph.Definition={type:"Regression",metadata:{generates:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"groupby",type:"field",array:!0},{name:"method",type:"string",default:"linear",values:Object.keys(nc)},{name:"order",type:"number",default:3},{name:"extent",type:"number",array:!0,length:2},{name:"params",type:"boolean",default:!1},{name:"as",type:"string",array:!0}]};B(Ph,F,{transform(t,e){const n=e.fork(e.NO_SOURCE|e.NO_FIELDS);if(!this.value||e.changed()||t.modified()){const r=e.materialize(e.SOURCE).source,i=Wb(r,t.groupby),a=(t.groupby||[]).map(yt),o=t.method||"linear",s=t.order==null?3:t.order,u=N9(o,s),l=t.as||[yt(t.x),yt(t.y)],f=nc[o],c=[];let d=t.extent;H(nc,o)||_("Invalid regression method: "+o),d!=null&&o==="log"&&d[0]<=0&&(e.dataflow.warn("Ignoring extent with values <= 0 for log regression."),d=null),i.forEach(h=>{if(h.length<=u){e.dataflow.warn("Skipping regression with more parameters than data points.");return}const p=f(h,t.x,t.y,s);if(t.params){c.push(ot({keys:h.dims,coef:p.coef,rSquared:p.rSquared}));return}const m=d||Mn(h,t.x),y=v=>{const b={};for(let x=0;x<a.length;++x)b[a[x]]=h.dims[x];b[l[0]]=v[0],b[l[1]]=v[1],c.push(ot(b))};o==="linear"||o==="constant"?m.forEach(v=>y([v,p.predict(v)])):rd(p.predict,m,25,200).forEach(y)}),this.value&&(n.rem=this.value),this.value=n.add=n.source=c}return n}});const I9=Object.freeze(Object.defineProperty({__proto__:null,loess:Th,regression:Ph},Symbol.toStringTag,{value:"Module"}));function Lh(t){F.call(this,null,t)}Lh.Definition={type:"Voronoi",metadata:{modifies:!0},params:[{name:"x",type:"field",required:!0},{name:"y",type:"field",required:!0},{name:"size",type:"number",array:!0,length:2},{name:"extent",type:"array",array:!0,length:2,default:[[-1e5,-1e5],[1e5,1e5]],content:{type:"number",array:!0,length:2}},{name:"as",type:"string",default:"path"}]};const q9=[-1e5,-1e5,1e5,1e5];B(Lh,F,{transform(t,e){const n=t.as||"path",r=e.source;if(!r||!r.length)return e;let i=t.size;i=i?[0,0,i[0],i[1]]:(i=t.extent)?[i[0][0],i[0][1],i[1][0],i[1][1]]:q9;const a=this.value=Cc.from(r,t.x,t.y).voronoi(i);for(let o=0,s=r.length;o<s;++o){const u=a.cellPolygon(o);r[o][n]=u&&!U9(u)?j9(u):null}return e.reflow(t.modified()).modifies(n)}});function j9(t){const e=t[0][0],n=t[0][1];let r=t.length-1;for(;t[r][0]===e&&t[r][1]===n;--r);return"M"+t.slice(0,r+1).join("L")+"Z"}function U9(t){return t.length===2&&t[0][0]===t[1][0]&&t[0][1]===t[1][1]}const W9=Object.freeze(Object.defineProperty({__proto__:null,voronoi:Lh},Symbol.toStringTag,{value:"Module"}));var _l=Math.PI/180,Zi=64,Vo=2048;function G9(){var t=[256,256],e,n,r,i,a,o,s,u=Gb,l=[],f=Math.random,c={};c.layout=function(){for(var g=d(jn()),p=J9((t[0]>>5)*t[1]),m=null,y=l.length,v=-1,b=[],x=l.map(A=>({text:e(A),font:n(A),style:i(A),weight:a(A),rotate:o(A),size:~~(r(A)+1e-14),padding:s(A),xoff:0,yoff:0,x1:0,y1:0,x0:0,y0:0,hasText:!1,sprite:null,datum:A})).sort((A,w)=>w.size-A.size);++v<y;){var E=x[v];E.x=t[0]*(f()+.5)>>1,E.y=t[1]*(f()+.5)>>1,Y9(g,E,x,v),E.hasText&&h(p,E,m)&&(b.push(E),m?V9(m,E):m=[{x:E.x+E.x0,y:E.y+E.y0},{x:E.x+E.x1,y:E.y+E.y1}],E.x-=t[0]>>1,E.y-=t[1]>>1)}return b};function d(g){g.width=g.height=1;var p=Math.sqrt(g.getContext("2d").getImageData(0,0,1,1).data.length>>2);g.width=(Zi<<5)/p,g.height=Vo/p;var m=g.getContext("2d");return m.fillStyle=m.strokeStyle="red",m.textAlign="center",{context:m,ratio:p}}function h(g,p,m){for(var y=p.x,v=p.y,b=Math.hypot(t[0],t[1]),x=u(t),E=f()<.5?1:-1,A=-E,w,k,M;(w=x(A+=E))&&(k=~~w[0],M=~~w[1],!(Math.min(Math.abs(k),Math.abs(M))>=b));)if(p.x=y+k,p.y=v+M,!(p.x+p.x0<0||p.y+p.y0<0||p.x+p.x1>t[0]||p.y+p.y1>t[1])&&(!m||!H9(p,g,t[0]))&&(!m||X9(p,m))){for(var D=p.sprite,S=p.width>>5,O=t[0]>>5,z=p.x-(S<<4),T=z&127,C=32-T,R=p.y1-p.y0,N=(p.y+p.y0)*O+(z>>5),X,V=0;V<R;V++){X=0;for(var vt=0;vt<=S;vt++)g[N+vt]|=X<<C|(vt<S?(X=D[V*S+vt])>>>T:0);N+=O}return p.sprite=null,!0}return!1}return c.words=function(g){return arguments.length?(l=g,c):l},c.size=function(g){return arguments.length?(t=[+g[0],+g[1]],c):t},c.font=function(g){return arguments.length?(n=er(g),c):n},c.fontStyle=function(g){return arguments.length?(i=er(g),c):i},c.fontWeight=function(g){return arguments.length?(a=er(g),c):a},c.rotate=function(g){return arguments.length?(o=er(g),c):o},c.text=function(g){return arguments.length?(e=er(g),c):e},c.spiral=function(g){return arguments.length?(u=Z9[g]||g,c):u},c.fontSize=function(g){return arguments.length?(r=er(g),c):r},c.padding=function(g){return arguments.length?(s=er(g),c):s},c.random=function(g){return arguments.length?(f=g,c):f},c}function Y9(t,e,n,r){if(!e.sprite){var i=t.context,a=t.ratio;i.clearRect(0,0,(Zi<<5)/a,Vo/a);var o=0,s=0,u=0,l=n.length,f,c,d,h,g;for(--r;++r<l;){if(e=n[r],i.save(),i.font=e.style+" "+e.weight+" "+~~((e.size+1)/a)+"px "+e.font,f=i.measureText(e.text+"m").width*a,d=e.size<<1,e.rotate){var p=Math.sin(e.rotate*_l),m=Math.cos(e.rotate*_l),y=f*m,v=f*p,b=d*m,x=d*p;f=Math.max(Math.abs(y+x),Math.abs(y-x))+31>>5<<5,d=~~Math.max(Math.abs(v+b),Math.abs(v-b))}else f=f+31>>5<<5;if(d>u&&(u=d),o+f>=Zi<<5&&(o=0,s+=u,u=0),s+d>=Vo)break;i.translate((o+(f>>1))/a,(s+(d>>1))/a),e.rotate&&i.rotate(e.rotate*_l),i.fillText(e.text,0,0),e.padding&&(i.lineWidth=2*e.padding,i.strokeText(e.text,0,0)),i.restore(),e.width=f,e.height=d,e.xoff=o,e.yoff=s,e.x1=f>>1,e.y1=d>>1,e.x0=-e.x1,e.y0=-e.y1,e.hasText=!0,o+=f}for(var E=i.getImageData(0,0,(Zi<<5)/a,Vo/a).data,A=[];--r>=0;)if(e=n[r],!!e.hasText){for(f=e.width,c=f>>5,d=e.y1-e.y0,h=0;h<d*c;h++)A[h]=0;if(o=e.xoff,o==null)return;s=e.yoff;var w=0,k=-1;for(g=0;g<d;g++){for(h=0;h<f;h++){var M=c*g+(h>>5),D=E[(s+g)*(Zi<<5)+(o+h)<<2]?1<<31-h%32:0;A[M]|=D,w|=D}w?k=g:(e.y0++,d--,g--,s++)}e.y1=e.y0+k,e.sprite=A.slice(0,(e.y1-e.y0)*c)}}}function H9(t,e,n){n>>=5;for(var r=t.sprite,i=t.width>>5,a=t.x-(i<<4),o=a&127,s=32-o,u=t.y1-t.y0,l=(t.y+t.y0)*n+(a>>5),f,c=0;c<u;c++){f=0;for(var d=0;d<=i;d++)if((f<<s|(d<i?(f=r[c*i+d])>>>o:0))&e[l+d])return!0;l+=n}return!1}function V9(t,e){var n=t[0],r=t[1];e.x+e.x0<n.x&&(n.x=e.x+e.x0),e.y+e.y0<n.y&&(n.y=e.y+e.y0),e.x+e.x1>r.x&&(r.x=e.x+e.x1),e.y+e.y1>r.y&&(r.y=e.y+e.y1)}function X9(t,e){return t.x+t.x1>e[0].x&&t.x+t.x0<e[1].x&&t.y+t.y1>e[0].y&&t.y+t.y0<e[1].y}function Gb(t){var e=t[0]/t[1];return function(n){return[e*(n*=.1)*Math.cos(n),n*Math.sin(n)]}}function K9(t){var e=4,n=e*t[0]/t[1],r=0,i=0;return function(a){var o=a<0?-1:1;switch(Math.sqrt(1+4*o*a)-o&3){case 0:r+=n;break;case 1:i+=e;break;case 2:r-=n;break;default:i-=e;break}return[r,i]}}function J9(t){for(var e=[],n=-1;++n<t;)e[n]=0;return e}function er(t){return typeof t=="function"?t:function(){return t}}var Z9={archimedean:Gb,rectangular:K9};const Yb=["x","y","font","fontSize","fontStyle","fontWeight","angle"],Q9=["text","font","rotate","fontSize","fontStyle","fontWeight"];function Nh(t){F.call(this,G9(),t)}Nh.Definition={type:"Wordcloud",metadata:{modifies:!0},params:[{name:"size",type:"number",array:!0,length:2},{name:"font",type:"string",expr:!0,default:"sans-serif"},{name:"fontStyle",type:"string",expr:!0,default:"normal"},{name:"fontWeight",type:"string",expr:!0,default:"normal"},{name:"fontSize",type:"number",expr:!0,default:14},{name:"fontSizeRange",type:"number",array:"nullable",default:[10,50]},{name:"rotate",type:"number",expr:!0,default:0},{name:"text",type:"field"},{name:"spiral",type:"string",values:["archimedean","rectangular"]},{name:"padding",type:"number",expr:!0},{name:"as",type:"string",array:!0,length:7,default:Yb}]};B(Nh,F,{transform(t,e){t.size&&!(t.size[0]&&t.size[1])&&_("Wordcloud size dimensions must be non-zero.");function n(g){const p=t[g];return Z(p)&&e.modified(p.fields)}const r=t.modified();if(!(r||e.changed(e.ADD_REM)||Q9.some(n)))return;const i=e.materialize(e.SOURCE).source,a=this.value,o=t.as||Yb;let s=t.fontSize||14,u;if(Z(s)?u=t.fontSizeRange:s=re(s),u){const g=s,p=at("sqrt")().domain(Mn(i,g)).range(u);s=m=>p(g(m))}i.forEach(g=>{g[o[0]]=NaN,g[o[1]]=NaN,g[o[3]]=0});const l=a.words(i).text(t.text).size(t.size||[500,500]).padding(t.padding||1).spiral(t.spiral||"archimedean").rotate(t.rotate||0).font(t.font||"sans-serif").fontStyle(t.fontStyle||"normal").fontWeight(t.fontWeight||"normal").fontSize(s).random(Ye).layout(),f=a.size(),c=f[0]>>1,d=f[1]>>1,h=l.length;for(let g=0,p,m;g<h;++g)p=l[g],m=p.datum,m[o[0]]=p.x+c,m[o[1]]=p.y+d,m[o[2]]=p.font,m[o[3]]=p.size,m[o[4]]=p.style,m[o[5]]=p.weight,m[o[6]]=p.rotate;return e.reflow(r).modifies(o)}});const tF=Object.freeze(Object.defineProperty({__proto__:null,wordcloud:Nh},Symbol.toStringTag,{value:"Module"})),eF=t=>new Uint8Array(t),nF=t=>new Uint16Array(t),fa=t=>new Uint32Array(t);function rF(){let t=8,e=[],n=fa(0),r=Co(0,t),i=Co(0,t);return{data:()=>e,seen:()=>n=iF(n,e.length),add(a){for(let o=0,s=e.length,u=a.length,l;o<u;++o)l=a[o],l._index=s++,e.push(l)},remove(a,o){const s=e.length,u=Array(s-a),l=e;let f,c,d;for(c=0;!o[c]&&c<s;++c)u[c]=e[c],l[c]=c;for(d=c;c<s;++c)f=e[c],o[c]?l[c]=-1:(l[c]=d,r[d]=r[c],i[d]=i[c],u[d]=f,f._index=d++),r[c]=0;return e=u,l},size:()=>e.length,curr:()=>r,prev:()=>i,reset:a=>i[a]=r[a],all:()=>t<257?255:t<65537?65535:4294967295,set(a,o){r[a]|=o},clear(a,o){r[a]&=~o},resize(a,o){const s=r.length;(a>s||o>t)&&(t=Math.max(o,t),r=Co(a,t,r),i=Co(a,t))}}}function iF(t,e,n){return t.length>=e?t:(n=n||new t.constructor(e),n.set(t),n)}function Co(t,e,n){const r=(e<257?eF:e<65537?nF:fa)(t);return n&&r.set(n),r}function Tp(t,e,n){const r=1<<e;return{one:r,zero:~r,range:n.slice(),bisect:t.bisect,index:t.index,size:t.size,onAdd(i,a){const o=this,s=o.bisect(o.range,i.value),u=i.index,l=s[0],f=s[1],c=u.length;let d;for(d=0;d<l;++d)a[u[d]]|=r;for(d=f;d<c;++d)a[u[d]]|=r;return o}}}function Pp(){let t=fa(0),e=[],n=0;function r(s,u,l){if(!u.length)return[];const f=n,c=u.length,d=fa(c);let h=Array(c),g,p,m;for(m=0;m<c;++m)h[m]=s(u[m]),d[m]=m;if(h=aF(h,d),f)g=e,p=t,e=Array(f+c),t=fa(f+c),oF(l,g,p,f,h,d,c,e,t);else{if(l>0)for(m=0;m<c;++m)d[m]+=l;e=h,t=d}return n=f+c,{index:d,value:h}}function i(s,u){const l=n;let f,c,d;for(c=0;!u[t[c]]&&c<l;++c);for(d=c;c<l;++c)u[f=t[c]]||(t[d]=f,e[d]=e[c],++d);n=l-s}function a(s){for(let u=0,l=n;u<l;++u)t[u]=s[t[u]]}function o(s,u){let l;return u?l=u.length:(u=e,l=n),[xw(u,s[0],0,l),xr(u,s[1],0,l)]}return{insert:r,remove:i,bisect:o,reindex:a,index:()=>t,size:()=>n}}function aF(t,e){return t.sort.call(e,(n,r)=>{const i=t[n],a=t[r];return i<a?-1:i>a?1:0}),KE(t,e)}function oF(t,e,n,r,i,a,o,s,u){let l=0,f=0,c;for(c=0;l<r&&f<o;++c)e[l]<i[f]?(s[c]=e[l],u[c]=n[l++]):(s[c]=i[f],u[c]=a[f++]+t);for(;l<r;++l,++c)s[c]=e[l],u[c]=n[l];for(;f<o;++f,++c)s[c]=i[f],u[c]=a[f]+t}function Ih(t){F.call(this,rF(),t),this._indices=null,this._dims=null}Ih.Definition={type:"CrossFilter",metadata:{},params:[{name:"fields",type:"field",array:!0,required:!0},{name:"query",type:"array",array:!0,required:!0,content:{type:"number",array:!0,length:2}}]};B(Ih,F,{transform(t,e){if(this._dims){var n=t.modified("fields")||t.fields.some(r=>e.modified(r.fields));return n?this.reinit(t,e):this.eval(t,e)}else return this.init(t,e)},init(t,e){const n=t.fields,r=t.query,i=this._indices={},a=this._dims=[],o=r.length;let s=0,u,l;for(;s<o;++s)u=n[s].fname,l=i[u]||(i[u]=Pp()),a.push(Tp(l,s,r[s]));return this.eval(t,e)},reinit(t,e){const n=e.materialize().fork(),r=t.fields,i=t.query,a=this._indices,o=this._dims,s=this.value,u=s.curr(),l=s.prev(),f=s.all(),c=n.rem=n.add,d=n.mod,h=i.length,g={};let p,m,y,v,b,x,E,A,w;if(l.set(u),e.rem.length&&(b=this.remove(t,e,n)),e.add.length&&s.add(e.add),e.mod.length)for(x={},v=e.mod,E=0,A=v.length;E<A;++E)x[v[E]._index]=1;for(E=0;E<h;++E)w=r[E],(!o[E]||t.modified("fields",E)||e.modified(w.fields))&&(y=w.fname,(p=g[y])||(a[y]=m=Pp(),g[y]=p=m.insert(w,e.source,0)),o[E]=Tp(m,E,i[E]).onAdd(p,u));for(E=0,A=s.data().length;E<A;++E)b[E]||(l[E]!==u[E]?c.push(E):x[E]&&u[E]!==f&&d.push(E));return s.mask=(1<<h)-1,n},eval(t,e){const n=e.materialize().fork(),r=this._dims.length;let i=0;return e.rem.length&&(this.remove(t,e,n),i|=(1<<r)-1),t.modified("query")&&!t.modified("fields")&&(i|=this.update(t,e,n)),e.add.length&&(this.insert(t,e,n),i|=(1<<r)-1),e.mod.length&&(this.modify(e,n),i|=(1<<r)-1),this.value.mask=i,n},insert(t,e,n){const r=e.add,i=this.value,a=this._dims,o=this._indices,s=t.fields,u={},l=n.add,f=i.size()+r.length,c=a.length;let d=i.size(),h,g,p;i.resize(f,c),i.add(r);const m=i.curr(),y=i.prev(),v=i.all();for(h=0;h<c;++h)g=s[h].fname,p=u[g]||(u[g]=o[g].insert(s[h],r,d)),a[h].onAdd(p,m);for(;d<f;++d)y[d]=v,m[d]!==v&&l.push(d)},modify(t,e){const n=e.mod,r=this.value,i=r.curr(),a=r.all(),o=t.mod;let s,u,l;for(s=0,u=o.length;s<u;++s)l=o[s]._index,i[l]!==a&&n.push(l)},remove(t,e,n){const r=this._indices,i=this.value,a=i.curr(),o=i.prev(),s=i.all(),u={},l=n.rem,f=e.rem;let c,d,h,g;for(c=0,d=f.length;c<d;++c)h=f[c]._index,u[h]=1,o[h]=g=a[h],a[h]=s,g!==s&&l.push(h);for(h in r)r[h].remove(d,u);return this.reindex(e,d,u),u},reindex(t,e,n){const r=this._indices,i=this.value;t.runAfter(()=>{const a=i.remove(e,n);for(const o in r)r[o].reindex(a)})},update(t,e,n){const r=this._dims,i=t.query,a=e.stamp,o=r.length;let s=0,u,l;for(n.filters=0,l=0;l<o;++l)t.modified("query",l)&&(u=l,++s);if(s===1)s=r[u].one,this.incrementOne(r[u],i[u],n.add,n.rem);else for(l=0,s=0;l<o;++l)t.modified("query",l)&&(s|=r[l].one,this.incrementAll(r[l],i[l],a,n.add),n.rem=n.add);return s},incrementAll(t,e,n,r){const i=this.value,a=i.seen(),o=i.curr(),s=i.prev(),u=t.index(),l=t.bisect(t.range),f=t.bisect(e),c=f[0],d=f[1],h=l[0],g=l[1],p=t.one;let m,y,v;if(c<h)for(m=c,y=Math.min(h,d);m<y;++m)v=u[m],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=p;else if(c>h)for(m=h,y=Math.min(c,g);m<y;++m)v=u[m],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=p;if(d>g)for(m=Math.max(c,g),y=d;m<y;++m)v=u[m],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=p;else if(d<g)for(m=Math.max(h,d),y=g;m<y;++m)v=u[m],a[v]!==n&&(s[v]=o[v],a[v]=n,r.push(v)),o[v]^=p;t.range=e.slice()},incrementOne(t,e,n,r){const i=this.value,a=i.curr(),o=t.index(),s=t.bisect(t.range),u=t.bisect(e),l=u[0],f=u[1],c=s[0],d=s[1],h=t.one;let g,p,m;if(l<c)for(g=l,p=Math.min(c,f);g<p;++g)m=o[g],a[m]^=h,n.push(m);else if(l>c)for(g=c,p=Math.min(l,d);g<p;++g)m=o[g],a[m]^=h,r.push(m);if(f>d)for(g=Math.max(l,d),p=f;g<p;++g)m=o[g],a[m]^=h,n.push(m);else if(f<d)for(g=Math.max(c,f),p=d;g<p;++g)m=o[g],a[m]^=h,r.push(m);t.range=e.slice()}});function qh(t){F.call(this,null,t)}qh.Definition={type:"ResolveFilter",metadata:{},params:[{name:"ignore",type:"number",required:!0,description:"A bit mask indicating which filters to ignore."},{name:"filter",type:"object",required:!0,description:"Per-tuple filter bitmaps from a CrossFilter transform."}]};B(qh,F,{transform(t,e){const n=~(t.ignore||0),r=t.filter,i=r.mask;if(!(i&n))return e.StopPropagation;const a=e.fork(e.ALL),o=r.data(),s=r.curr(),u=r.prev(),l=f=>s[f]&n?null:o[f];return a.filter(a.MOD,l),i&i-1?(a.filter(a.ADD,f=>{const c=s[f]&n;return!c&&c^u[f]&n?o[f]:null}),a.filter(a.REM,f=>{const c=s[f]&n;return c&&!(c^(c^u[f]&n))?o[f]:null})):(a.filter(a.ADD,l),a.filter(a.REM,f=>(s[f]&n)===i?o[f]:null)),a.filter(a.SOURCE,f=>l(f._index))}});const sF=Object.freeze(Object.defineProperty({__proto__:null,crossfilter:Ih,resolvefilter:qh},Symbol.toStringTag,{value:"Module"})),uF="RawCode",Sr="Literal",lF="Property",fF="Identifier",cF="ArrayExpression",dF="BinaryExpression",Hb="CallExpression",hF="ConditionalExpression",gF="LogicalExpression",pF="MemberExpression",mF="ObjectExpression",yF="UnaryExpression";function He(t){this.type=t}He.prototype.visit=function(t){let e,n,r;if(t(this))return 1;for(e=vF(this),n=0,r=e.length;n<r;++n)if(e[n].visit(t))return 1};function vF(t){switch(t.type){case cF:return t.elements;case dF:case gF:return[t.left,t.right];case Hb:return[t.callee].concat(t.arguments);case hF:return[t.test,t.consequent,t.alternate];case pF:return[t.object,t.property];case mF:return t.properties;case lF:return[t.key,t.value];case yF:return[t.argument];case fF:case Sr:case uF:default:return[]}}var cn,P,$,Lt,st,Ru=1,Qa=2,Fr=3,Zn=4,Ou=5,Br=6,oe=7,to=8,bF=9;cn={};cn[Ru]="Boolean";cn[Qa]="<end>";cn[Fr]="Identifier";cn[Zn]="Keyword";cn[Ou]="Null";cn[Br]="Numeric";cn[oe]="Punctuator";cn[to]="String";cn[bF]="RegularExpression";var xF="ArrayExpression",wF="BinaryExpression",EF="CallExpression",AF="ConditionalExpression",Vb="Identifier",kF="Literal",MF="LogicalExpression",DF="MemberExpression",CF="ObjectExpression",SF="Property",FF="UnaryExpression",Dt="Unexpected token %0",$F="Unexpected number",_F="Unexpected string",RF="Unexpected identifier",OF="Unexpected reserved word",zF="Unexpected end of input",rc="Invalid regular expression",Rl="Invalid regular expression: missing /",Xb="Octal literals are not allowed in strict mode.",BF="Duplicate data property in object literal not allowed in strict mode",$t="ILLEGAL",Da="Disabled.",TF
vendor: 4,932 bytes, line 7
7=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u08A0-\\u08B2\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58\\u0C59\\u0C60\\u0C61\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D60\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19C1-\\u19C7\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]"),
7PF=new RegExp("[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u08A0-\\u08B2\\u08E4-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58\\u0C59\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C81-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D01-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D57\\u0D60-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F4\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1CD0-\\u1CD2\\u1CD4-\\u1CF6\\u1CF8\\u1CF9\\u1D00-\\u1DF5\\u1DFC-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u200C\\u200D\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312D\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FCC\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA69D\\uA69F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA78E\\uA790-\\uA7AD\\uA7B0\\uA7B1\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C4\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB5F\\uAB64\\uAB65\\uABC0-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC
77\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2D\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]");function zu(t,e){if(!t)throw new Error("ASSERT: "+e)}function bn(t){return t>=48&&t<=57}function jh(t){return"0123456789abcdefABCDEF".includes(t)}function ca(t){return"01234567".includes(t)}function LF(t){return t===32||t===9||t===11||t===12||t===160||t>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(t)}function Ca(t){return t===10||t===13||t===8232||t===8233}function eo(t){return t===36||t===95||t>=65&&t<=90||t>=97&&t<=122||t===92||t>=128&&TF.test(String.fromCharCode(t))}function Hs(t){return t===36||t===95||t>=65&&t<=90||t>=97&&t<=122||t>=48&&t<=57||t===92||t>=128&&PF.test(String.fromCharCode(t))}const NF={if:1,in:1,do:1,var:1,for:1,new:1,try:1,let:1,this:1,else:1,case:1,void:1,with:1,enum:1,while:1,break:1,catch:1,throw:1,const:1,yield:1,class:1,super:1,return:1,typeof:1,delete:1,switch:1,export:1,import:1,public:1,static:1,default:1,finally:1,extends:1,package:1,private:1,function:1,continue:1,debugger:1,interface:1,protected:1,instanceof:1,implements:1};function Kb(){for(;$<Lt;){const t=P.charCodeAt($);if(LF(t)||Ca(t))++$;else break}}function ic(t){var e,n,r,i=0;for(n=t==="u"?4:2,e=0;e<n;++e)$<Lt&&jh(P[$])?(r=P[$++],i=i*16+"0123456789abcdef".indexOf(r.toLowerCase())):it({},Dt,$t);return String.fromCharCode(i)}function IF(){var t,e,n,r;for(t=P[$],e=0,t==="}"&&it({},Dt,$t);$<Lt&&(t=P[$++],!!jh(t));)e=e*16+"0123456789abcdef".indexOf(t.toLowerCase());return(e>1114111||t!=="}")&&it({},Dt,$t),e<=65535?String.fromCharCode(e):(n=(e-65536>>10)+55296,r=(e-65536&1023)+56320,String.fromCharCode(n,r))}function Jb(){var t,e;for(t=P.charCodeAt($++),e=String.fromCharCode(t),t===92&&(P.charCodeAt($)!==117&&it({},Dt,$t),++$,t=ic("u"),(!t||t==="\\"||!eo(t.charCodeAt(0)))&&it({},Dt,$t),e=t);$<Lt&&(t=P.charCodeAt($),!!Hs(t));)++$,e+=String.fromCharCode(t),t===92&&(e=e.substr(0,e.length-1),P.charCodeAt($)!==117&&it({},Dt,$t),++$,t=ic("u"),(!t||t==="\\"||!Hs(t.charCodeAt(0)))&&it({},Dt,$t),e+=t);return e}function qF(){var t,e;for(t=$++;$<Lt;){if(e=P.charCodeAt($),e===92)return $=t,Jb();if(Hs(e))++$;else break}return P.slice(t,$)}function jF(){var t,e,n;return t=$,e=P.charCodeAt($)===92?Jb():qF(),e.length===1?n=Fr:NF.hasOwnProperty(e)?n=Zn:e==="null"?n=Ou:e==="true"||e==="false"?n=Ru:n=Fr,{type:n,value:e,start:t,end:$}}function Ol(){var t=$,e=P.charCodeAt($),n,r=P[$],i,a,o;switch(e){case 46:case 40:case 41:case 59:case 44:case 123:case 125:case 91:case 93:case 58:case 63:case 126:return++$,{type:oe,value:String.fromCharCode(e),start:t,end:$};default:if(n=P.charCodeAt($+1),n===61)switch(e){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return $+=2,{type:oe,value:String.fromCharCode(e)+String.fromCharCode(n),start:t,end:$};case 33:case 61:return $+=2,P.charCodeAt($)===61&&++$,{type:oe,value:P.slice(t,$),start:t,end:$}}}if(o=P.substr($,4),o===">>>=")return $+=4,{type:oe,value:o,start:t,end:$};if(a=o.substr(0,3),a===">>>"||a==="<<="||a===">>=")return $+=3,{type:oe,value:a,start:t,end:$};if(i=a.substr(0,2),r===i[1]&&"+-<>&|".includes(r)||i==="=>")return $+=2,{type:oe,value:i,start:t,end:$};if(i==="//"&&it({},Dt,$t),"<>=!+-*%&|^/".includes(r))return++$,{type:oe,value:r,start:t,end:$};it({},Dt,$t)}function UF(t){let e="";for(;$<Lt&&jh(P[$]);)e+=P[$++];return e.length===0&&it({},Dt,$t),eo(P.charCodeAt($))&&it({},Dt,$t),{type:Br,value:parseInt("0x"+e,16),start:t,end:$}}function WF(t){let e="0"+P[$++];for(;$<Lt&&ca(P[$]);)e+=P[$++];return(eo(P.charCodeAt($))||bn(P.charCodeAt($)))&&it({},Dt,$t),{type:Br,value:parseInt(e,8),octal:!0,start:t,end:$}}function Lp(){var t,e,n;if(n=P[$],zu(bn(n.charCodeAt(0))||n===".","Numeric literal must start with a decimal digit or a decimal point"),e=$,t="",n!=="."){if(t=P[$++],n=P[$],t==="0"){if(n==="x"||n==="X")return++$,UF(e);if(ca(n))return WF(e);n&&bn(n.charCodeAt(0))&&it({},Dt,$t)}for(;bn(P.charCodeAt($));)t+=P[$++];n=P[$]}if(n==="."){for(t+=P[$++];bn(P.charCodeAt($));)t+=P[$++];n=P[$]}if(n==="e"||n==="E")if(t+=P[$++],n=P[$],(n==="+"||n==="-")&&(t+=P[$++]),bn(P.charCodeAt($)))for(;bn(P.charCodeAt($));)t+=P[$++];else it({},Dt,$t);return eo(P.charCodeAt($))&&it({},Dt,$t),{type:Br,value:parseFloat(t),start:e,end:$}}function GF(){var t="",e,n,r,i,a=!1;for(e=P[$],zu(e==="'"||e==='"',"String literal must starts with a quote"),n=$,++$;$<Lt;)if(r=P[$++],r===e){e="";break}else if(r==="\\")if(r=P[$++],!r||!Ca(r.charCodeAt(0)))switch(r){case"u":case"x":P[$]==="{"?(++$,t+=IF()):t+=ic(r);break;case"n":t+=`
8`;break;case"r":t+="\r";break;case"t":t+="	";break;case"b":t+="\b";break;case"f":t+="\f";break;case"v":t+="\v";break;default:ca(r)?(i="01234567".indexOf(r),i!==0&&(a=!0),$<Lt&&ca(P[$])&&(a=!0,i=i*8+"01234567".indexOf(P[$++]),"0123".includes(r)&&$<Lt&&ca(P[$])&&(i=i*8+"01234567".indexOf(P[$++]))),t+=String.fromCharCode(i)):t+=r;break}else r==="\r"&&P[$]===`
9`&&++$;else{if(Ca(r.charCodeAt(0)))break;t+=r}return e!==""&&it({},Dt,$t),{type:to,value:t,octal:a,start:n,end:$}}function YF(t,e){let n=t;e.includes("u")&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(r,i)=>{if(parseInt(i,16)<=1114111)return"x";it({},rc)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch{it({},rc)}try{return new RegExp(t,e)}catch{return null}}function HF(){var t,e,n,r,i;for(t=P[$],zu(t==="/","Regular expression literal must start with a slash"),e=P[$++],n=!1,r=!1;$<Lt;)if(t=P[$++],e+=t,t==="\\")t=P[$++],Ca(t.charCodeAt(0))&&it({},Rl),e+=t;else if(Ca(t.charCodeAt(0)))it({},Rl);else if(n)t==="]"&&(n=!1);else if(t==="/"){r=!0;break}else t==="["&&(n=!0);return r||it({},Rl),i=e.substr(1,e.length-2),{value:i,literal:e}}function VF(){var t,e,n;for(e="",n="";$<Lt&&(t=P[$],!!Hs(t.charCodeAt(0)));)++$,t==="\\"&&$<Lt?it({},Dt,$t):(n+=t,e+=t);return n.search(/[^gimuy]/g)>=0&&it({},rc,n),{value:n,literal:e}}function XF(){var t,e,n,r;return st=null,Kb(),t=$,e=HF(),n=VF(),r=YF(e.value,n.value),{literal:e.literal+n.literal,value:r,regex:{pattern:e.value,flags:n.value},start:t,end:$}}function KF(t){return t.type===Fr||t.type===Zn||t.type===Ru||t.type===Ou}function Zb(){if(Kb(),$>=Lt)return{type:Qa,start:$,end:$};const t=P.charCodeAt($);return eo(t)?jF():t===40||t===41||t===59?Ol():t===39||t===34?GF():t===46?bn(P.charCodeAt($+1))?Lp():Ol():bn(t)?Lp():Ol()}function ue(){const t=st;return $=t.end,st=Zb(),$=t.end,t}function Qb(){const t=$;st=Zb(),$=t}function JF(t){const e=new He(xF);return e.elements=t,e}
vendor: 7,104 bytes, line 9
9function Np(t,e,n){const r=new He(t==="||"||t==="&&"?MF:wF);return r.operator=t,r.left=e,r.right=n,r}function ZF(t,e){const n=new He(EF);return n.callee=t,n.arguments=e,n}function QF(t,e,n){const r=new He(AF);return r.test=t,r.consequent=e,r.alternate=n,r}function Uh(t){const e=new He(Vb);return e.name=t,e}function Qi(t){const e=new He(kF);return e.value=t.value,e.raw=P.slice(t.start,t.end),t.regex&&(e.raw==="//"&&(e.raw="/(?:)/"),e.regex=t.regex),e}function Ip(t,e,n){const r=new He(DF);return r.computed=t==="[",r.object=e,r.property=n,r.computed||(n.member=!0),r}function t$(t){const e=new He(CF);return e.properties=t,e}function qp(t,e,n){const r=new He(SF);return r.key=e,r.value=n,r.kind=t,r}function e$(t,e){const n=new He(FF);return n.operator=t,n.argument=e,n.prefix=!0,n}function it(t,e){var n,r=Array.prototype.slice.call(arguments,2),i=e.replace(/%(\d)/g,(a,o)=>(zu(o<r.length,"Message reference must be in range"),r[o]));throw n=new Error(i),n.index=$,n.description=i,n}function Bu(t){t.type===Qa&&it(t,zF),t.type===Br&&it(t,$F),t.type===to&&it(t,_F),t.type===Fr&&it(t,RF),t.type===Zn&&it(t,OF),it(t,Dt,t.value)}function Nt(t){const e=ue();(e.type!==oe||e.value!==t)&&Bu(e)}function ft(t){return st.type===oe&&st.value===t}function zl(t){return st.type===Zn&&st.value===t}function n$(){const t=[];for($=st.start,Nt("[");!ft("]");)ft(",")?(ue(),t.push(null)):(t.push($r()),ft("]")||Nt(","));return ue(),JF(t)}function jp(){$=st.start;const t=ue();return t.type===to||t.type===Br?(t.octal&&it(t,Xb),Qi(t)):Uh(t.value)}function r$(){var t,e,n,r;if($=st.start,t=st,t.type===Fr)return n=jp(),Nt(":"),r=$r(),qp("init",n,r);if(t.type===Qa||t.type===oe)Bu(t);else return e=jp(),Nt(":"),r=$r(),qp("init",e,r)}function i$(){var t=[],e,n,r,i={},a=String;for($=st.start,Nt("{");!ft("}");)e=r$(),e.key.type===Vb?n=e.key.name:n=a(e.key.value),r="$"+n,Object.prototype.hasOwnProperty.call(i,r)?it({},BF):i[r]=!0,t.push(e),ft("}")||Nt(",");return Nt("}"),t$(t)}function a$(){Nt("(");const t=Wh();return Nt(")"),t}const o$={if:1};function s$(){var t,e,n;if(ft("("))return a$();if(ft("["))return n$();if(ft("{"))return i$();if(t=st.type,$=st.start,t===Fr||o$[st.value])n=Uh(ue().value);else if(t===to||t===Br)st.octal&&it(st,Xb),n=Qi(ue());else{if(t===Zn)throw new Error(Da);t===Ru?(e=ue(),e.value=e.value==="true",n=Qi(e)):t===Ou?(e=ue(),e.value=null,n=Qi(e)):ft("/")||ft("/=")?(n=Qi(XF()),Qb()):Bu(ue())}return n}function u$(){const t=[];if(Nt("("),!ft(")"))for(;$<Lt&&(t.push($r()),!ft(")"));)Nt(",");return Nt(")"),t}function l$(){$=st.start;const t=ue();return KF(t)||Bu(t),Uh(t.value)}function f$(){return Nt("."),l$()}function c$(){Nt("[");const t=Wh();return Nt("]"),t}function d$(){var t,e,n;for(t=s$();;)if(ft("."))n=f$(),t=Ip(".",t,n);else if(ft("("))e=u$(),t=ZF(t,e);else if(ft("["))n=c$(),t=Ip("[",t,n);else break;return t}function Up(){const t=d$();if(st.type===oe&&(ft("++")||ft("--")))throw new Error(Da);return t}function Xo(){var t,e;if(st.type!==oe&&st.type!==Zn)e=Up();else{if(ft("++")||ft("--"))throw new Error(Da);if(ft("+")||ft("-")||ft("~")||ft("!"))t=ue(),e=Xo(),e=e$(t.value,e);else{if(zl("delete")||zl("void")||zl("typeof"))throw new Error(Da);e=Up()}}return e}function Wp(t){let e=0;if(t.type!==oe&&t.type!==Zn)return 0;switch(t.value){case"||":e=1;break;case"&&":e=2;break;case"|":e=3;break;case"^":e=4;break;case"&":e=5;break;case"==":case"!=":case"===":case"!==":e=6;break;case"<":case">":case"<=":case">=":case"instanceof":case"in":e=7;break;case"<<":case">>":case">>>":e=8;break;case"+":case"-":e=9;break;case"*":case"/":case"%":e=11;break}return e}function h$(){var t,e,n,r,i,a,o,s,u,l;if(t=st,u=Xo(),r=st,i=Wp(r),i===0)return u;for(r.prec=i,ue(),e=[t,st],o=Xo(),a=[u,r,o];(i=Wp(st))>0;){for(;a.length>2&&i<=a[a.length-2].prec;)o=a.pop(),s=a.pop().value,u=a.pop(),e.pop(),n=Np(s,u,o),a.push(n);r=ue(),r.prec=i,a.push(r),e.push(st),n=Xo(),a.push(n)}for(l=a.length-1,n=a[l],e.pop();l>1;)e.pop(),n=Np(a[l-1].value,a[l-2],n),l-=2;return n}function $r(){var t,e,n;return t=h$(),ft("?")&&(ue(),e=$r(),Nt(":"),n=$r(),t=QF(t,e,n)),t}function Wh(){const t=$r();if(ft(","))throw new Error(Da);return t}function g$(t){P=t,$=0,Lt=P.length,st=null,Qb();const e=Wh();if(st.type!==Qa)throw new Error("Unexpect token after expression.");return e}var tx={NaN:"NaN",E:"Math.E",LN2:"Math.LN2",LN10:"Math.LN10",LOG2E:"Math.LOG2E",LOG10E:"Math.LOG10E",PI:"Math.PI",SQRT1_2:"Math.SQRT1_2",SQRT2:"Math.SQRT2",MIN_VALUE:"Number.MIN_VALUE",MAX_VALUE:"Number.MAX_VALUE"};function ex(t){function e(o,s,u,l){let f=t(s[0]);return u&&(f=u+"("+f+")",u.lastIndexOf("new ",0)===0&&(f="("+f+")")),f+"."+o+(l<0?"":l===0?"()":"("+s.slice(1).map(t).join(",")+")")}function n(o,s,u){return l=>e(o,l,s,u)}const r="new Date",i="String",a="RegExp";return{isNaN:"Number.isNaN",isFinite:"Number.isFinite",abs:"Math.abs",acos:"Math.acos",asin:"Math.asin",atan:"Math.atan",atan2:"Math.atan2",ceil:"Math.ceil",cos:"Math.cos",exp:"Math.exp",floor:"Math.floor",hypot:"Math.hypot",log:"Math.log",max:"Math.max",min:"Math.min",pow:"Math.pow",random:"Math.random",round:"Math.round",sin:"Math.sin",sqrt:"Math.sqrt",tan:"Math.tan",clamp:function(o){o.length<3&&_("Missing arguments to clamp function."),o.length>3&&_("Too many arguments to clamp function.");const s=o.map(t);return"Math.max("+s[1]+", Math.min("+s[2]+","+s[0]+"))"},now:"Date.now",utc:"Date.UTC",datetime:r,date:n("getDate",r,0),day:n("getDay",r,0),year:n("getFullYear",r,0),month:n("getMonth",r,0),hours:n("getHours",r,0),minutes:n("getMinutes",r,0),seconds:n("getSeconds",r,0),milliseconds:n("getMilliseconds",r,0),time:n("getTime",r,0),timezoneoffset:n("getTimezoneOffset",r,0),utcdate:n("getUTCDate",r,0),utcday:n("getUTCDay",r,0),utcyear:n("getUTCFullYear",r,0),utcmonth:n("getUTCMonth",r,0),utchours:n("getUTCHours",r,0),utcminutes:n("getUTCMinutes",r,0),utcseconds:n("getUTCSeconds",r,0),utcmilliseconds:n("getUTCMilliseconds",r,0),length:n("length",null,-1),parseFloat:"parseFloat",parseInt:"parseInt",upper:n("toUpperCase",i,0),lower:n("toLowerCase",i,0),substring:n("substring",i),split:n("split",i),trim:n("trim",i,0),btoa:"btoa",atob:"atob",regexp:a,test:n("test",a),if:function(o){o.length<3&&_("Missing arguments to if function."),o.length>3&&_("Too many arguments to if function.");const s=o.map(t);return"("+s[0]+"?"+s[1]+":"+s[2]+")"}}}function p$(t){const e=t&&t.length-1;return e&&(t[0]==='"'&&t[e]==='"'||t[0]==="'"&&t[e]==="'")?t.slice(1,-1):t}function m$(t){t=t||{};const e=t.allowed?an(t.allowed):{},n=t.forbidden?an(t.forbidden):{},r=t.constants||tx,i=(t.functions||ex)(c),a=t.globalvar,o=t.fieldvar,s=Z(a)?a:g=>`${a}["${g}"]`;[...Object.getOwnPropertyNames(Object.prototype).filter(g=>typeof Object.prototype[g]=="function")];let u={},l={},f=0;function c(g){if(ct(g))return g;const p=d[g.type];return p==null&&_("Unsupported type: "+g.type),p(g)}const d={Literal:g=>g.raw,Identifier:g=>{const p=g.name;return f>0?p:H(n,p)?_("Illegal identifier: "+p):H(r,p)?r[p]:H(e,p)?p:(u[p]=1,s(p))},MemberExpression:g=>{const p=!g.computed,m=c(g.object);p&&(f+=1);const y=c(g.property);return m===o&&(l[p$(y)]=1),p&&(f-=1),m+(p?"."+y:"["+y+"]")}
9,CallExpression:g=>{g.callee.type!=="Identifier"&&_("Illegal callee type: "+g.callee.type);const p=g.callee.name,m=g.arguments,y=H(i,p)&&i[p];return y||_("Unrecognized function: "+p),Z(y)?y(m):y+"("+m.map(c).join(",")+")"},ArrayExpression:g=>"["+g.elements.map(c).join(",")+"]",BinaryExpression:g=>"("+c(g.left)+" "+g.operator+" "+c(g.right)+")",UnaryExpression:g=>"("+g.operator+c(g.argument)+")",ConditionalExpression:g=>"("+c(g.test)+"?"+c(g.consequent)+":"+c(g.alternate)+")",LogicalExpression:g=>"("+c(g.left)+g.operator+c(g.right)+")",ObjectExpression:g=>{for(const p of g.properties){const m=p.key.name;b5.has(m)&&_("Illegal property: "+m)}return"{"+g.properties.map(c).join(",")+"}"},Property:g=>{f+=1;const p=c(g.key);return f-=1,p+":"+c(g.value)}};function h(g){const p={code:c(g),globals:Object.keys(u),fields:Object.keys(l)};return u={},l={},p}return h.functions=i,h.constants=r,h}const Gp=Symbol("vega_selection_getter");function nx(t){return(!t.getter||!t.getter[Gp])&&(t.getter=Ue(t.field),t.getter[Gp]=!0),t.getter}const Gh="intersect",Yp="union",y$="vlMulti",v$="vlPoint",Hp="or",b$="and",Ze="_vgsid_",Sa=Ue(Ze),x$="E",w$="R",E$="R-E",A$="R-LE",k$="R-RE",M$="E-LT",D$="E-LTE",C$="E-GT",S$="E-GTE",F$="E-VALID",$$="E-ONE",Vs="index:unit";function Vp(t,e){for(var n=e.fields,r=e.values,i=n.length,a=0,o,s;a<i;
vendor: 56,142 bytes, lines 9-13
9++a)if(s=n[a],o=nx(s)(t),mr(o)&&(o=Kt(o)),mr(r[a])&&(r[a]=Kt(r[a])),L(r[a])&&mr(r[a][0])&&(r[a]=r[a].map(Kt)),s.type===x$){if(L(r[a])?!r[a].includes(o):o!==r[a])return!1}else if(s.type===w$){if(!qi(o,r[a]))return!1}else if(s.type===k$){if(!qi(o,r[a],!0,!1))return!1}else if(s.type===E$){if(!qi(o,r[a],!1,!1))return!1}else if(s.type===A$){if(!qi(o,r[a],!1,!0))return!1}else if(s.type===M$){if(o>=r[a])return!1}else if(s.type===D$){if(o>r[a])return!1}else if(s.type===C$){if(o<=r[a])return!1}else if(s.type===S$){if(o<r[a])return!1}else if(s.type===F$){if(o===null||isNaN(o))return!1}else if(s.type===$$&&r[a].indexOf(o)===-1)return!1;return!0}function _$(t,e,n){for(var r=this.context.data[t],i=r?r.values.value:[],a=r?r[Vs]&&r[Vs].value:void 0,o=n===Gh,s=i.length,u=0,l,f,c,d,h;u<s;++u)if(l=i[u],a&&o){if(f=f||{},c=f[d=l.unit]||0,c===-1)continue;if(h=Vp(e,l),f[d]=h?-1:++c,h&&a.size===1)return!0;if(!h&&c===a.get(d).count)return!1}else if(h=Vp(e,l),o^h)return h;return s&&o}const rx=bc(Sa),R$=rx.left,O$=rx.right;function z$(t,e,n){const r=this.context.data[t],i=r?r.values.value:[],a=r?r[Vs]&&r[Vs].value:void 0,o=n===Gh,s=Sa(e),u=R$(i,s);if(u===i.length||Sa(i[u])!==s)return!1;if(a&&o){if(a.size===1)return!0;if(O$(i,s)-u<a.size)return!1}return!0}function B$(t,e){return L(t)||_("First argument to selectionTuples must be an array."),K(e)||_("Second argument to selectionTuples must be an object."),t.map(n=>J(e.fields?{values:e.fields.map(r=>nx(r)(n.datum))}:{[Ze]:Sa(n.datum)},e))}function T$(t,e,n,r){for(var i=this.context.data[t],a=i?i.values.value:[],o={},s={},u={},l,f,c,d,h,g,p,m,y,v,b=a.length,x=0,E,A;x<b;++x)if(l=a[x],d=l.unit,f=l.fields,c=l.values,f&&c){for(E=0,A=f.length;E<A;++E)h=f[E],p=o[h.field]||(o[h.field]={}),m=p[d]||(p[d]=[]),u[h.field]=y=h.type.charAt(0),v=Bl[`${y}_union`],p[d]=v(m,G(c[E]));n&&(m=s[d]||(s[d]=[]),m.push(G(c).reduce((w,k,M)=>(w[f[M].field]=k,w),{})))}else h=Ze,g=Sa(l),p=o[h]||(o[h]={}),m=p[d]||(p[d]=[]),m.push(g),n&&(m=s[d]||(s[d]=[]),m.push({[Ze]:g}));if(e=e||Yp,o[Ze]?o[Ze]=Bl[`${Ze}_${e}`](...Object.values(o[Ze])):Object.keys(o).forEach(w=>{o[w]=Object.keys(o[w]).map(k=>o[w][k]).reduce((k,M)=>k===void 0?M:Bl[`${u[w]}_${e}`](k,M))}),a=Object.keys(s),n&&a.length){const w=r?v$:y$;o[w]=e===Yp?{[Hp]:a.reduce((k,M)=>(k.push(...s[M]),k),[])}:{[b$]:a.map(k=>({[Hp]:s[k]}))}}return o}var Bl={[`${Ze}_union`]:nA,[`${Ze}_intersect`]:tA,E_union:function(t,e){if(!t.length)return e;for(var n=0,r=e.length;n<r;++n)t.includes(e[n])||t.push(e[n]);return t},E_intersect:function(t,e){return t.length?t.filter(n=>e.includes(n)):e},R_union:function(t,e){var n=Kt(e[0]),r=Kt(e[1]);return n>r&&(n=e[1],r=e[0]),t.length?(t[0]>n&&(t[0]=n),t[1]<r&&(t[1]=r),t):[n,r]},R_intersect:function(t,e){var n=Kt(e[0]),r=Kt(e[1]);return n>r&&(n=e[1],r=e[0]),t.length?r<t[0]||t[1]<n?[]:(t[0]<n&&(t[0]=n),t[1]>r&&(t[1]=r),t):[n,r]}};const P$=":",L$="@";function Yh(t,e,n,r){e[0].type!==Sr&&_("First argument to selection functions must be a string literal.");const i=e[0].value,a=e.length>=2&&rt(e).value,o="unit",s=L$+o,u=P$+i;a===Gh&&!H(r,s)&&(r[s]=n.getData(i).indataRef(n,o)),H(r,u)||(r[u]=n.getData(i).tuplesRef())}function ix(t){const e=this.context.data[t];return e?e.values.value:[]}function N$(t,e,n){const r=this.context.data[t]["index:"+e],i=r?r.value.get(n):void 0;return i&&i.count}function I$(t,e){const n=this.context.dataflow,r=this.context.data[t],i=r.input;return n.pulse(i,n.changeset().remove(We).insert(e)),1}function q$(t,e,n){if(t){const r=this.context.dataflow,i=t.mark.source;r.pulse(i,r.changeset().encode(t,e))}return n!==void 0?n:t}const no=t=>function(e,n){const r=this.context.dataflow.locale();return e===null?"null":r[t](n)(e)},j$=no("format"),ax=no("timeFormat"),U$=no("utcFormat"),W$=no("timeParse"),G$=no("utcParse"),So=new Date(2e3,0,1);function Tu(t,e,n){return!Number.isInteger(t)||!Number.isInteger(e)?"":(So.setYear(2e3),So.setMonth(t),So.setDate(e),ax.call(this,So,n))}function Y$(t){return Tu.call(this,t,1,"%B")}function H$(t){return Tu.call(this,t,1,"%b")}function V$(t){return Tu.call(this,0,2+t,"%A")}function X$(t){return Tu.call(this,0,2+t,"%a")}const K$=":",J$="@",ac="%",ox="$";function Hh(t,e,n,r){e[0].type!==Sr&&_("First argument to data functions must be a string literal.");const i=e[0].value,a=K$+i;if(!H(a,r))try{r[a]=n.getData(i).tuplesRef()}catch{}}function Z$(t,e,n,r){e[0].type!==Sr&&_("First argument to indata must be a string literal."),e[1].type!==Sr&&_("Second argument to indata must be a string literal.");const i=e[0].value,a=e[1].value,o=J$+a;H(o,r)||(r[o]=n.getData(i).indataRef(n,a))}function te(t,e,n,r){if(e[0].type===Sr)Xp(n,r,e[0].value);else for(t in n.scales)Xp(n,r,t)}function Xp(t,e,n){const r=ac+n;if(!H(e,r))try{e[r]=t.scaleRef(n)}catch{}}function dn(t,e){if(ct(t)){const n=e.scales[t];return n&&Ig(n.value)?n.value:void 0}else if(Z(t))return Ig(t)?t:void 0}function Q$(t,e,n){e.__bandwidth=i=>i&&i.bandwidth?i.bandwidth():0,n._bandwidth=te,n._range=te,n._scale=te;const r=i=>"_["+(i.type===Sr?U(ac+i.value):U(ac)+"+"+t(i))+"]";return{_bandwidth:i=>`this.__bandwidth(${r(i[0])})`,_range:i=>`${r(i[0])}.range()`,_scale:i=>`${r(i[0])}(${t(i[1])})`}}function Vh(t,e){return function(n,r,i){if(n){const a=dn(n,(i||this).context);return a&&a.path[t](r)}else return e(r)}}const t_=Vh("area",l3),e_=Vh("bounds",h3),n_=Vh("centroid",b3);function r_(t,e){const n=dn(t,(e||this).context);return n&&n.scale()}function i_(t){const e=this.context.group;let n=!1;if(e)for(;t;){if(t===e){n=!0;break}t=t.mark.group}return n}function Xh(t,e,n){try{t[e].apply(t,["EXPRESSION"].concat([].slice.call(n)))}catch(r){t.warn(r)}return n[n.length-1]}function a_(){return Xh(this.context.dataflow,"warn",arguments)}function o_(){return Xh(this.context.dataflow,"info",arguments)}function s_(){return Xh(this.context.dataflow,"debug",arguments)}function Tl(t){const e=t/255;return e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4)}function oc(t){const e=es(t),n=Tl(e.r),r=Tl(e.g),i=Tl(e.b);return .2126*n+.7152*r+.0722*i}function u_(t,e){const n=oc(t),r=oc(e),i=Math.max(n,r),a=Math.min(n,r);return(i+.05)/(a+.05)}function l_(){const t=[].slice.call(arguments);return t.unshift({}),J(...t)}function sx(t,e){return t===e||t!==t&&e!==e?!0:L(t)?L(e)&&t.length===e.length?f_(t,e):!1:K(t)&&K(e)?ux(t,e):!1}function f_(t,e){for(let n=0,r=t.length;n<r;++n)if(!sx(t[n],e[n]))return!1;return!0}function ux(t,e){for(const n in t)if(!sx(t[n],e[n]))return!1;return!0}function Kp(t){return e=>ux(t,e)}function c_(t,e,n,r,i,a){const o=this.context.dataflow,s=this.context.data[t],u=s.input,l=o.stamp();let f=s.changes,c,d;if(o._trigger===!1||!(u.value.length||e||r))return 0;if((!f||f.stamp<l)&&(s.changes=f=o.changeset(),f.stamp=l,o.runAfter(()=>{s.modified=!0,o.pulse(u,f).run()},!0,1)),n&&(c=n===!0?We:L(n)||Xc(n)?n:Kp(n),f.remove(c)),e&&f.insert(e),r&&(c=Kp(r),u.value.some(c)?f.remove(c):f.insert(r)),i){if(Z(i))throw Error("modify parameter must be a data tuple, not a function");for(d in a)f.modify(i,d,a[d])}return 1}function d_(t){const e=t.touches,n=e[0].clientX-e[1].clientX,r=e[0].clientY-e[1].clientY;return Math.hypot(n,r)}function h_(t){const e=t.touches;return Math.atan2(e[0].clientY-e[1].clientY,e[0].clientX-e[1].clientX)}const Jp={};function g_(t,e){const n=Jp[e]||(Jp[e]=Ue(e));return L(t)?t.map(n):n(t)}function Pu(t){return L(t)||ArrayBuffer.isView(t)?t:null}function Kh(t){return Pu(t)||(ct(t)?t:null)}function p_(t,...e){return Pu(t).join(...e)}function m_(t,...e){return Kh(t).indexOf(...e)}function y_(t,...e){return Kh(t).lastIndexOf(...e)}function v_(t,...e){return Kh(t).slice(...e)}function b_(t,e,n){return Z(n)&&_("Function argument passed to replace."),!ct(e)&&!hy(e)&&_("Please pass a string or RegExp argument to replace."),String(t).replace(e,n)}function x_(t){return Pu(t).slice().reverse()}function w_(t){return Pu(t).slice().sort(cu)}function E_(t,e,n){return Fd(t||0,e||0,n||0)}function A_(t,e){const n=dn(t,(e||this).context);return n&&n.bandwidth?n.bandwidth():0}function k_(t,e){const n=dn(t,(e||this).context);return n?n.copy():void 0}function M_(t,e){const n=dn(t,(e||this).context);return n?n.domain():[]}function D_(t,e,n){const r=dn(t,(n||this).context);return r?L(e)?(r.invertRange||r.invert)(e):(r.invert||r.invertExtent)(e):void 0}function C_(t,e){const n=dn(t,(e||this).context);return n&&n.range?n.range():[]}function S_(t,e,n){const r=dn(t,(n||this).context);return r?r(e):void 0}function F_(t,e,n,r,i){t=dn(t,(i||this).context);const a=EC(e,n);let o=t.domain(),s=o[0],u=rt(o),l=fe;return u-s?l=Y2(t,s,u):t=(t.interpolator?at("sequential")().interpolator(t.interpolator()):at("linear")().interpolate(t.interpolate()).range(t.range())).domain([s=0,u=1]),t.ticks&&(o=t.ticks(+r||15),s!==o[0]&&o.unshift(s),u!==rt(o)&&o.push(u)),o.forEach(f=>a.stop(l(f),t(f))),a}function $_(t,e,n){const r=dn(t,(n||this).context);return function(i){return r?r.path.context(i)(e):""}}function __(t){let e=null;return function(n){return n?Os(n,e=e||Ea(t)):t}}const lx=t=>t.data;function fx(t,e){const n=ix.call(e,t);return n.root&&n.root.lookup||{}}function R_(t,e,n){const r=fx(t,this),i=r[e],a=r[n];return i&&a?i.path(a).map(lx):void 0}function O_(t,e){const n=fx(t,this)[e];return n?n.ancestors().map(lx):void 0}const cx=()=>typeof window<"u"&&window||null;function z_(){const t=cx();return t?t.screen:{}}function B_(){const t=cx();return t?[t.innerWidth,t.innerHeight]:[void 0,void 0]}function T_(){const t=this.context.dataflow,e=t.container&&t.container();return e?[e.clientWidth,e.clientHeight]:[void 0,void 0]}function dx(t,e,n){if(!t)return[];const[r,i]=t,a=new Et().set(r[0],r[1],i[0],i[1]),o=n||this.context.dataflow.scenegraph().root;return u8(o,a,P_(e))}function P_(t){let e=null;if(t){const n=G(t.marktype),r=G(t.markname);e=i=>(!n.length||n.some(a=>i.marktype===a))&&(!r.length||r.some(a=>i.name===a))}return e}function L_(t,e,n,r=5){t=G(t);const i=t[t.length-1];return i===void 0||Math.hypot(i[0]-e,i[1]-n)>r?[...t,[e,n]]:t}function N_(t){return G(t).reduce((e,[n,r],i)=>e+=i==0?`M ${n},${r} `:i===t.length-1?" Z":`L ${n},${r} `,"")}function I_(t,e,n){const{x:r,y:i,mark:a}=n,o=new Et().set(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER,Number.MIN_SAFE_INTEGER);for(const[u,l]of e)u<o.x1&&(o.x1=u),u>o.x2&&(o.x2=u),l<o.y1&&(o.y1=l),l>o.y2&&(o.y2=l);return o.translate(r,i),dx([[o.x1,o.y1],[o.x2,o.y2]],t,a).filter(u=>q_(u.x,u.y,e))}function q_(t,e,n){let r=0;for(let i=0,a=n.length-1;i<n.length;a=i++){const[o,s]=n[a],[u,l]=n[i];l>e!=s>e&&t<(o-u)*(e-l)/(s-l)+u&&r++}return r&1}const Fa={random(){return Ye()},cumulativeNormal:ed,cumulativeLogNormal:e2,cumulativeUniform:a2,densityNormal:Ky,densityLogNormal:t2,densityUniform:i2,quantileNormal:nd,quantileLogNormal:n2,quantileUniform:o2,sampleNormal:td,sampleLogNormal:Qy,sampleUniform:r2,isArray:L,isBoolean:q5,isDate:mr,isDefined(t){return t!==void 0},isNumber:Ar,isObject:K,isRegExp:hy,isString:ct,isTuple:Xc,isValid(t){return t!=null&&t===t},toBoolean:py,toDate(t){return my(t)},toNumber:Kt,toString:yy,indexof:m_,join:p_,lastindexof:y_,replace:b_,reverse:x_,sort:w_,slice:v_,flush:I5,lerp:U5,merge:l_,pad:H5,peek:rt,pluck:g_,span:du,inrange:qi,truncate:X5,rgb:es,lab:jl,hcl:Pw,hsl:Yl,luminance:oc,contrast:u_,sequence:ge,format:j$,utcFormat:U$,utcParse:G$,utcOffset:EM,utcSequence:kM,timeFormat:ax,timeParse:W$,timeOffset:wM,timeSequence:AM,timeUnitSpecifier:aM,monthFormat:Y$,monthAbbrevFormat:H$,dayFormat:V$,dayAbbrevFormat:X$,quarter:R5,utcquarter:O5,week:sM,utcweek:fM,dayofyear:oM,utcdayofyear:lM,warn:a_,info:o_,debug:s_,extent(t){return Mn(t)},inScope:i_,intersect:dx,clampRange:z5,pinchDistance:d_,pinchAngle:h_,screen:z_,containerSize:T_,windowSize:B_,bandspace:E_,setdata:I$,pathShape:__,panLinear:S5,panLog:F5,panPow:$5,panSymlog:_5,zoomLinear:uy,zoomLog:ly,zoomPow:vf,zoomSymlog:fy,encode:q$,modify:c_,lassoAppend:L_,lassoPath:N_,intersectLasso:I_},j_=["view","item","group","xy","x","y"],U_="event.vega.",hx="this.",Jh={},gx={forbidden:["_"],allowed:["datum","event","item"],fieldvar:"datum",globalvar:t=>`_[${U(ox+t)}]`,functions:W_,constants:tx,visitors:Jh},sc=m$(gx);function W_(t){const e=ex(t);j_.forEach(n=>e[n]=U_+n);for(const n in Fa)e[n]=hx+n;return J(e,Q$(t,Fa,Jh)),e}function bt(t,e,n){return arguments.length===1?Fa[t]:(Fa[t]=e,n&&(Jh[t]=n),sc&&(sc.functions[t]=hx+t),this)}bt("bandwidth",A_,te);bt("copy",k_,te);bt("domain",M_,te);bt("range",C_,te);bt("invert",D_,te);bt("scale",S_,te);bt("gradient",F_,te);bt("geoArea",t_,te);bt("geoBounds",e_,te);bt("geoCentroid",n_,te);bt("geoShape",$_,te);bt("geoScale",r_,te);bt("indata",N$,Z$);bt("data",ix,Hh);bt("treePath",R_,Hh);bt("treeAncestors",O_,Hh);bt("vlSelectionTest",_$,Yh);bt("vlSelectionIdTest",z$,Yh);bt("vlSelectionResolve",T$,Yh);bt("vlSelectionTuples",B$);function un(t,e){const n={};let r;try{t=ct(t)?t:U(t)+"",r=g$(t)}catch{_("Expression parse error: "+t)}r.visit(a=>{if(a.type!==Hb)return;const o=a.callee.name,s=gx.visitors[o];s&&s(o,a.arguments,e,n)});const i=sc(r);return i.globals.forEach(a=>{const o=ox+a;!H(n,o)&&e.getSignal(a)&&(n[o]=e.signalRef(a))}),{$expr:J({code:i.code},e.options.ast?{ast:r}:null),$fields:i.fields,$params:n}}function G_(t){const e=this,n=t.operators||[];return t.background&&(e.background=t.background),t.eventConfig&&(e.eventConfig=t.eventConfig),t.locale&&(e.locale=t.locale),n.forEach(r=>e.parseOperator(r)),n.forEach(r=>e.parseOperatorParameters(r)),(t.streams||[]).forEach(r=>e.parseStream(r)),(t.updates||[]).forEach(r=>e.parseUpdate(r)),e.resolve()}const Y_=an(["rule"]),Zp=an(["group","image","rect"]);function H_(t,e){let n="";return Y_[e]||(t.x2&&(t.x?(Zp[e]&&(n+="if(o.x>o.x2)$=o.x,o.x=o.x2,o.x2=$;"),n+="o.width=o.x2-o.x;"):n+="o.x=o.x2-(o.width||0);"),t.xc&&(n+="o.x=o.xc-(o.width||0)/2;"),t.y2&&(t.y?(Zp[e]&&(n+="if(o.y>o.y2)$=o.y,o.y=o.y2,o.y2=$;"),n+="o.height=o.y2-o.y;"):n+="o.y=o.y2-(o.height||0);"),t.yc&&(n+="o.y=o.yc-(o.height||0)/2;")),n}function Zh(t){return(t+"").toLowerCase()}function V_(t){return Zh(t)==="operator"}function X_(t){return Zh(t)==="collect"}function Fi(t,e,n){n.endsWith(";")||(n="return("+n+");");const r=Function(...e.concat(n));return t&&t.functions?r.bind(t.functions):r}function K_(t,e,n,r){return`((u = ${t}) < (v = ${e}) || u == null) && v != null ? ${n}
10  : (u > v || v == null) && u != null ? ${r}
11  : ((v = v instanceof Date ? +v : v), (u = u instanceof Date ? +u : u)) !== u && v === v ? ${n}
12  : v !== v && u === u ? ${r} : `}var J_={operator:(t,e)=>Fi(t,["_"],e.code),parameter:(t,e)=>Fi(t,["datum","_"],e.code),event:(t,e)=>Fi(t,["event"],e.code),handler:(t,e)=>{const n=`var datum=event.item&&event.item.datum;return ${e.code};`;return Fi(t,["_","event"],n)},encode:(t,e)=>{const{marktype:n,channels:r}=e;let i="var o=item,datum=o.datum,m=0,$;";for(const a in r){const o="o["+U(a)+"]";i+=`$=${r[a].code};if(${o}!==$)${o}=$,m=1;`}return i+=H_(r,n),i+="return m;",Fi(t,["item","_"],i)},codegen:{get(t){const e=`[${t.map(U).join("][")}]`,n=Function("_",`return _${e};`);return n.path=e,n},comparator(t,e){let n;const r=(a,o)=>{const s=e[o];let u,l;return a.path?(u=`a${a.path}`,l=`b${a.path}`):((n=n||{})["f"+o]=a,u=`this.f${o}(a)`,l=`this.f${o}(b)`),K_(u,l,-s,s)},i=Function("a","b","var u, v; return "+t.map(r).join("")+"0;");return n?i.bind(n):i}}};function Z_(t){const e=this;V_(t.type)||!t.type?e.operator(t,t.update?e.operatorExpression(t.update):null):e.transform(t,t.type)}function Q_(t){const e=this;if(t.params){const n=e.get(t.id);n||_("Invalid operator id: "+t.id),e.dataflow.connect(n,n.parameters(e.parseParameters(t.params),t.react,t.initonly))}}function tR(t,e){e=e||{};const n=this;for(const r in t){const i=t[r];e[r]=L(i)?i.map(a=>Qp(a,n,e)):Qp(i,n,e)}return e}function Qp(t,e,n){if(!t||!K(t))return t;for(let r=0,i=t1.length,a;r<i;++r)if(a=t1[r],H(t,a.key))return a.parse(t,e,n);return t}var t1=[{key:"$ref",parse:eR},{key:"$key",parse:rR},{key:"$expr",parse:nR},{key:"$field",parse:iR},{key:"$encode",parse:oR},{key:"$compare",parse:aR},{key:"$context",parse:sR},{key:"$subflow",parse:uR},{key:"$tupleid",parse:lR}];function eR(t,e){return e.get(t.$ref)||_("Operator not defined: "+t.$ref)}function nR(t,e,n){t.$params&&e.parseParameters(t.$params,n);const r="e:"+t.$expr.code;return e.fn[r]||(e.fn[r]=be(e.parameterExpression(t.$expr),t.$fields))}function rR(t,e){const n="k:"+t.$key+"_"+!!t.$flat;return e.fn[n]||(e.fn[n]=gy(t.$key,t.$flat,e.expr.codegen))}function iR(t,e){if(!t.$field)return null;const n="f:"+t.$field+"_"+t.$name;return e.fn[n]||(e.fn[n]=Ue(t.$field,t.$name,e.expr.codegen))}function aR(t,e){const n="c:"+t.$compare+"_"+t.$order,r=G(t.$compare).map(i=>i&&i.$tupleid?j:i);return e.fn[n]||(e.fn[n]=cy(r,t.$order,e.expr.codegen))}function oR(t,e){const n=t.$encode,r={};for(const i in n){const a=n[i];r[i]=be(e.encodeExpression(a.$expr),a.$fields),r[i].output=a.$output}return r}function sR(t,e){return e}function uR(t,e){const n=t.$subflow;return function(r,i,a){const o=e.fork().parse(n),s=o.get(n.operators[0].id),u=o.signals.parent;return u&&u.set(a),s.detachSubflow=()=>e.detach(o),s}}function lR(){return j}function fR(t){var e=this,n=t.filter!=null?e.eventExpression(t.filter):void 0,r=t.stream!=null?e.get(t.stream):void 0,i;t.source?r=e.events(t.source,t.type,n):t.merge&&(i=t.merge.map(a=>e.get(a)),r=i[0].merge.apply(i[0],i.slice(1))),t.between&&(i=t.between.map(a=>e.get(a)),r=r.between(i[0],i[1])),t.filter&&(r=r.filter(n)),t.throttle!=null&&(r=r.throttle(+t.throttle)),t.debounce!=null&&(r=r.debounce(+t.debounce)),r==null&&_("Invalid stream definition: "+JSON.stringify(t)),t.consume&&r.consume(!0),e.stream(t,r)}function cR(t){var e=this,n=K(n=t.source)?n.$ref:n,r=e.get(n),i=null,a=t.update,o=void 0;r||_("Source not defined: "+t.source),i=t.target&&t.target.$expr?e.eventExpression(t.target.$expr):e.get(t.target),a&&a.$expr&&(a.$params&&(o=e.parseParameters(a.$params)),a=e.handlerExpression(a.$expr)),e.update(t,r,i,a,o)}const dR={skip:!0};function hR(t){var e=this,n={};if(t.signals){var r=n.signals={};Object.keys(e.signals).forEach(a=>{const o=e.signals[a];t.signals(a,o)&&(r[a]=o.value)})}if(t.data){var i=n.data={};Object.keys(e.data).forEach(a=>{const o=e.data[a];t.data(a,o)&&(i[a]=o.input.value)})}return e.subcontext&&t.recurse!==!1&&(n.subcontext=e.subcontext.map(a=>a.getState(t))),n}function gR(t){var e=this,n=e.dataflow,r=t.data,i=t.signals;Object.keys(i||{}).forEach(a=>{n.update(e.signals[a],i[a],dR)}),Object.keys(r||{}).forEach(a=>{n.pulse(e.data[a].input,n.changeset().remove(We).insert(r[a]))}),(t.subcontext||[]).forEach((a,o)=>{const s=e.subcontext[o];s&&s.setState(a)})}function pR(t,e,n,r){return new px(t,e,n,r)}function px(t,e,n,r){this.dataflow=t,this.transforms=e,this.events=t.events.bind(t),this.expr=r||J_,this.signals={},this.scales={},this.nodes={},this.data={},this.fn={},n&&(this.functions=Object.create(n),this.functions.context=this)}function e1(t){this.dataflow=t.dataflow,this.transforms=t.transforms,this.events=t.events,this.expr=t.expr,this.signals=Object.create(t.signals),this.scales=Object.create(t.scales),this.nodes=Object.create(t.nodes),this.data=Object.create(t.data),this.fn=Object.create(t.fn),t.functions&&(this.functions=Object.create(t.functions),this.functions.context=this)}px.prototype=e1.prototype={fork(){const t=new e1(this);return(this.subcontext||(this.subcontext=[])).push(t),t},detach(t){this.subcontext=this.subcontext.filter(n=>n!==t);const e=Object.keys(t.nodes);for(const n of e)t.nodes[n]._targets=null;for(const n of e)t.nodes[n].detach();t.nodes=null},get(t){return this.nodes[t]},set(t,e){return this.nodes[t]=e},add(t,e){const n=this,r=n.dataflow,i=t.value;if(n.set(t.id,e),X_(t.type)&&i&&(i.$ingest?r.ingest(e,i.$ingest,i.$format):i.$request?r.preload(e,i.$request,i.$format):r.pulse(e,r.changeset().insert(i))),t.root&&(n.root=e),t.parent){let a=n.get(t.parent.$ref);a?(r.connect(a,[e]),e.targets().add(a)):(n.unresolved=n.unresolved||[]).push(()=>{a=n.get(t.parent.$ref),r.connect(a,[e]),e.targets().add(a)})}if(t.signal&&(n.signals[t.signal]=e),t.scale&&(n.scales[t.scale]=e),t.data)for(const a in t.data){const o=n.data[a]||(n.data[a]={});t.data[a].forEach(s=>o[s]=e)}},resolve(){return(this.unresolved||[]).forEach(t=>t()),delete this.unresolved,this},operator(t,e){this.add(t,this.dataflow.add(t.value,e))},transform(t,e){this.add(t,this.dataflow.add(this.transforms[Zh(e)]))},stream(t,e){this.set(t.id,e)},update(t,e,n,r,i){this.dataflow.on(e,n,r,i,t.options)},operatorExpression(t){return this.expr.operator(this,t)},parameterExpression(t){return this.expr.parameter(this,t)},eventExpression(t){return this.expr.event(this,t)},handlerExpression(t){return this.expr.handler(this,t)},encodeExpression(t){return this.expr.encode(this,t)},parse:G_,parseOperator:Z_,parseOperatorParameters:Q_,parseParameters:tR,parseStream:fR,parseUpdate:cR,getState:hR,setState:gR};function mR(t){const e=t.container();e&&(e.setAttribute("role","graphics-document"),e.setAttribute("aria-roleDescription","visualization"),mx(e,t.description()))}function mx(t,e){t&&(e==null?t.removeAttribute("aria-label"):t.setAttribute("aria-label",e))}function yR(t){t.add(null,e=>(t._background=e.bg,t._resize=1,e.bg),{bg:t._signals.background})}const Pl="default";function vR(t){const e=t._signals.cursor||(t._signals.cursor=t.add({user:Pl,item:null}));t.on(t.events("view","pointermove"),e,(n,r)=>{const i=e.value,a=i?ct(i)?i:i.user:Pl,o=r.item&&r.item.cursor||null;return i&&a===i.user&&o==i.item?i:{user:a,item:o}}),t.add(null,function(n){let r=n.cursor,i=this.value;return ct(r)||(i=r.item,r=r.user),uc(t,r&&r!==Pl?r:i||r),i},{cursor:e})}function uc(t,e){const n=t.globalCursor()?typeof document<"u"&&document.body:t.container();if(n)return e==null?n.style.removeProperty("cursor"):n.style.cursor=e}function Xs(t,e){var n=t._runtime.data;return H(n,e)||_("Unrecognized data set: "+e),n[e]}function bR(t,e){return arguments.length<2?Xs(this,t).values.value:Lu.call(this,t,di().remove(We).insert(e))}function Lu(t,e){qy(e)||_("Second argument to changes must be a changeset.");const n=Xs(this,t);return n.modified=!0,this.pulse(n.input,e)}function xR(t,e){return Lu.call(this,t,di().insert(e))}function wR(t,e){return Lu.call(this,t,di().remove(e))}function yx(t){var e=t.padding();return Math.max(0,t._viewWidth+e.left+e.right)}function vx(t){var e=t.padding();return Math.max(0,t._viewHeight+e.top+e.bottom)}function Nu(t){var e=t.padding(),n=t._origin;return[e.left+n[0],e.top+n[1]]}function ER(t){var e=Nu(t),n=yx(t),r=vx(t);t._renderer.background(t.background()),t._renderer.resize(n,r,e),t._handler.origin(e),t._resizeListeners.forEach(i=>{try{i(n,r)}catch(a){t.error(a)}})}function AR(t,e,n){var r=t._renderer,i=r&&r.canvas(),a,o,s;return i&&(s=Nu(t),o=e.changedTouches?e.changedTouches[0]:e,a=eh(o,i),a[0]-=s[0],a[1]-=s[1]),e.dataflow=t,e.item=n,e.vega=kR(t,n,a),e}function kR(t,e,n){const r=e?e.mark.marktype==="group"?e:e.mark.group:null;function i(o){var s=r,u;if(o){for(u=e;u;u=u.mark.group)if(u.mark.name===o){s=u;break}}return s&&s.mark&&s.mark.interactive?s:{}}function a(o){if(!o)return n;ct(o)&&(o=i(o));const s=n.slice();for(;o;)s[0]-=o.x||0,s[1]-=o.y||0,o=o.mark&&o.mark.group;return s}return{view:re(t),item:re(e||{}),group:i,xy:a,x:o=>a(o)[0],y:o=>a(o)[1]}}const n1="view",MR="timer",DR="window",CR={trap:!1};function SR(t){const e=J({defaults:{}},t),n=(r,i)=>{i.forEach(a=>{L(r[a])&&(r[a]=an(r[a]))})};return n(e.defaults,["prevent","allow"]),n(e,["view","window","selector"]),e}function bx(t,e,n,r){t._eventListeners.push({type:n,sources:G(e),handler:r})}function FR(t,e){var n=t._eventConfig.defaults,r=n.prevent,i=n.allow;return r===!1||i===!0?!1:r===!0||i===!1?!0:r?r[e]:i?!i[e]:t.preventDefault()}function Fo(t,e,n){const r=t._eventConfig&&t._eventConfig[e];return r===!1||K(r)&&!r[n]?(t.warn(`Blocked ${e} ${n} event listener.`),!1):!0}function $R(t,e,n){var r=this,i=new Zc(n),a=function(l,f){r.runAsync(null,()=>{t===n1&&FR(r,e)&&l.preventDefault(),i.receive(AR(r,l,f))})},o;if(t===MR)Fo(r,"timer",e)&&r.timer(a,e);else if(t===n1)Fo(r,"view",e)&&r.addEventListener(e,a,CR);else if(t===DR?Fo(r,"window",e)&&typeof window<"u"&&(o=[window]):typeof document<"u"&&Fo(r,"selector",e)&&(o=Array.from(document.querySelectorAll(t))),!o)r.warn("Can not resolve event source: "+t);else{for(var s=0,u=o.length;s<u;++s)o[s].addEventListener(e,a);bx(r,o,e,a)}return i}function r1(t){return t.item}function i1(t){return t.item.mark.source}function a1(t){return function(e,n){return n.vega.view().changeset().encode(n.item,t)}}function _R(t,e){return t=[t||"hover"],e=[e||"update",t[0]],this.on(this.events("view","pointerover",r1),i1,a1(t)),this.on(this.events("view","pointerout",r1),i1,a1(e)),this}function RR(){var t=this._tooltip,e=this._timers,n=this._handler.handlers(),r=this._eventListeners,i,a,o,s,u;for(i=e.length;--i>=0;)e[i].stop();for(i=r.length;--i>=0;)for(o=r[i],a=o.sources.length;--a>=0;)o.sources[a].removeEventListener(o.type,o.handler);for(t&&t.call(this,this._handler,null,null,null),i=n.length;--i>=0;)u=n[i].type,s=n[i].handler,this._handler.off(u,s);return this}function pe(t,e,n){const r=document.createElement(t);for(const i in e)r.setAttribute(i,e[i]);return n!=null&&(r.textContent=n),r}const OR="vega-bind",zR="vega-bind-name",BR="vega-bind-radio";function TR(t,e,n){if(!e)return;const r=n.param;let i=n.state;return i||(i=n.state={elements:null,active:!1,set:null,update:o=>{o!=t.signal(r.signal)&&t.runAsync(null,()=>{i.source=!0,t.signal(r.signal,o)})}},r.debounce&&(i.update=dy(r.debounce,i.update))),(r.input==null&&r.element?PR:NR)(i,e,r,t),i.active||(t.on(t._signals[r.signal],null,()=>{i.source?i.source=!1:i.set(t.signal(r.signal))}),i.active=!0),i}function PR(t,e,n,r){const i=n.event||"input",a=()=>t.update(e.value);r.signal(n.signal,e.value),e.addEventListener(i,a),bx(r,e,i,a),t.set=o=>{e.value=o,e.dispatchEvent(LR(i))}}function LR(t){return typeof Event<"u"?new Event(t):{type:t}}function NR(t,e,n,r){const i=r.signal(n.signal),a=pe("div",{class:OR}),o=n.input==="radio"?a:a.appendChild(pe("label"));o.appendChild(pe("span",{class:zR},n.name||n.signal)),e.appendChild(a);let s=IR;switch(n.input){case"checkbox":s=qR;break;case"select":s=jR;break;case"radio":s=UR;break;case"range":s=WR;break}s(t,o,n,i)}function IR(t,e,n,r){const i=pe("input");for(const a in n)a!=="signal"&&a!=="element"&&i.setAttribute(a==="input"?"type":a,n[a]);i.setAttribute("name",n.signal),i.value=r,e.appendChild(i),i.addEventListener("input",()=>t.update(i.value)),t.elements=[i],t.set=a=>i.value=a}function qR(t,e,n,r){const i={type:"checkbox",name:n.signal};r&&(i.checked=!0);const a=pe("input",i);e.appendChild(a),a.addEventListener("change",()=>t.update(a.checked)),t.elements=[a],t.set=o=>a.checked=!!o||null}function jR(t,e,n,r){const i=pe("select",{name:n.signal}),a=n.labels||[];n.options.forEach((o,s)=>{const u={value:o};Ks(o,r)&&(u.selected=!0),i.appendChild(pe("option",u,(a[s]||o)+""))}),e.appendChild(i),i.addEventListener("change",()=>{t.update(n.options[i.selectedIndex])}),t.elements=[i],t.set=o=>{for(let s=0,u=n.options.length;s<u;++s)if(Ks(n.options[s],o)){i.selectedIndex=s;return}}}function UR(t,e,n,r){const i=pe("span",{class:BR}),a=n.labels||[];e.appendChild(i),t.elements=n.options.map((o,s)=>{const u={type:"radio",name:n.signal,value:o};Ks(o,r)&&(u.checked=!0);const l=pe("input",u);l.addEventListener("change",()=>t.update(o));const f=pe("label",{},(a[s]||o)+"");return f.prepend(l),i.appendChild(f),l}),t.set=o=>{const s=t.elements,u=s.length;for(let l=0;l<u;++l)Ks(s[l].value,o)&&(s[l].checked=!0)}}function WR(t,e,n,r){r=r!==void 0?r:(+n.max+ +n.min)/2;const i=n.max!=null?n.max:Math.max(100,+r)||100,a=n.min||Math.min(0,i,+r)||0,o=n.step||ga(a,i,100),s=pe("input",{type:"range",name:n.signal,min:a,max:i,step:o});s.value=r;const u=pe("span",{},+r);e.appendChild(s),e.appendChild(u);const l=()=>{u.textContent=s.value,t.update(+s.value)};s.addEventListener("input",l),s.addEventListener("change",l),t.elements=[s],t.set=f=>{s.value=f,u.textContent=f}}function Ks(t,e){return t===e||t+""==e+""}function xx(t,e,n,r,i,a){return e=e||new r(t.loader()),e.initialize(n,yx(t),vx(t),Nu(t),i,a).background(t.background())}function Qh(t,e){return e?function(){try{e.apply(this,arguments)}catch(n){t.error(n)}}:null}function GR(t,e,n,r){const i=new r(t.loader(),Qh(t,t.tooltip())).scene(t.scenegraph().root).initialize(n,Nu(t),t);return e&&e.handlers().forEach(a=>{i.on(a.type,a.handler)}),i}function YR(t,e){const n=this,r=n._renderType,i=n._eventConfig.bind,a=oh(r);t=n._el=t?Ll(n,t,!0):null,mR(n),a||n.error("Unrecognized renderer type: "+r);const o=a.handler||$u,s=t?a.renderer:a.headless;return n._renderer=s?xx(n,n._renderer,t,s):null,n._handler=GR(n,n._handler,t,o),n._redraw=!0,t&&i!=="none"&&(e=e?n._elBind=Ll(n,e,!0):t.appendChild(pe("form",{class:"vega-bindings"})),n._bind.forEach(u=>{u.param.element&&i!=="container"&&(u.element=Ll(n,u.param.element,!!u.param.input))}),n._bind.forEach(u=>{TR(n,u.element||e,u)})),n}function Ll(t,e,n){if(typeof e=="string")if(typeof document<"u"){if(e=document.querySelector(e),!e)return t.error("Signal bind element not found: "+e),null}else return t.error("DOM document instance not found."),null;if(e&&n)try{e.textContent=""}catch(r){e=null,t.error(r)}return e}const $i=t=>+t||0,HR=t=>({top:t,bottom:t,left:t,right:t});function o1(t){return K(t)?{top:$i(t.top),bottom:$i(t.bottom),left:$i(t.left),right:$i(t.right)}:HR($i(t))}async function t0(t,e,n,r){const i=oh(e),a=i&&i.headless;return a||_("Unrecognized renderer type: "+e),await t.runAsync(),xx(t,null,null,a,n,r).renderAsync(t._scenegraph.root)}async function VR(t,e){t!==hr.Canvas&&t!==hr.SVG&&t!==hr.PNG&&_("Unrecognized image type: "+t);const n=await t0(this,t,e);return t===hr.SVG?XR(n.svg(),"image/svg+xml"):n.canvas().toDataURL("image/png")}function XR(t,e){const n=new Blob([t],{type:e});return window.URL.createObjectURL(n)}async function KR(t,e){return(await t0(this,hr.Canvas,t,e)).canvas()}async function JR(t){return(await t0(this,hr.SVG,t)).svg()}function ZR(t,e,n){return pR(t,ba,Fa,n).parse(e)}function QR(t){var e=this._runtime.scales;return H(e,t)||_("Unrecognized scale or projection: "+t),e[t].value}var wx="width",Ex="height",e0="padding",s1={skip:!0};function Ax(t,e){var n=t.autosize(),r=t.padding();return e-(n&&n.contains===e0?r.left+r.right:0)}function kx(t,e){var n=t.autosize(),r=t.padding();return e-(n&&n.contains===e0?r.top+r.bottom:0)}function tO(t){var e=t._signals,n=e[wx],r=e[Ex],i=e[e0];function a(){t._autosize=t._resize=1}t._resizeWidth=t.add(null,s=>{t._width=s.size,t._viewWidth=Ax(t,s.size),a()},{size:n}),t._resizeHeight=t.add(null,s=>{t._height=s.size,t._viewHeight=kx(t,s.size),a()},{size:r});const o=t.add(null,a,{pad:i});t._resizeWidth.rank=n.rank+1,t._resizeHeight.rank=r.rank+1,o.rank=i.rank+1}function eO(t,e,n,r,i,a){this.runAfter(o=>{let s=0;o._autosize=0,o.width()!==n&&(s=1,o.signal(wx,n,s1),o._resizeWidth.skip(!0)),o.height()!==r&&(s=1,o.signal(Ex,r,s1),o._resizeHeight.skip(!0)),o._viewWidth!==t&&(o._resize=1,o._viewWidth=t),o._viewHeight!==e&&(o._resize=1,o._viewHeight=e),(o._origin[0]!==i[0]||o._origin[1]!==i[1])&&(o._resize=1,o._origin=i),s&&o.run("enter"),a&&o.runAfter(u=>u.resize())},!1,1)}function nO(t){return this._runtime.getState(t||{data:rO,signals:iO,recurse:!0})}function rO(t,e){return e.modified&&L(e.input.value)&&!t.startsWith("_:vega:_")}function iO(t,e){return!(t==="parent"||e instanceof ba.proxy)}function aO(t){return this.runAsync(null,e=>{e._trigger=!1,e._runtime.setState(t)},e=>{e._trigger=!0}),this}function oO(t,e){function n(r){t({timestamp:Date.now(),elapsed:r})}this._timers.push(HE(n,e))}function sO(t,e,n,r){const i=t.element();i&&i.setAttribute("title",uO(r))}function uO(t){return t==null?"":L(t)?Mx(t):K(t)&&!mr(t)?lO(t):t+""}function lO(t){return Object.keys(t).map(e=>{const n=t[e];return e+": "+(L(n)?Mx(n):Dx(n))}).join(`
13`)}function Mx(t){return"["+t.map(Dx).join(", ")+"]"}function Dx(t){return L(t)?"[…]":K(t)&&!mr(t)?"{…}":t}function fO(){if(this.renderer()==="canvas"&&this._renderer._canvas){let t=null;const e=()=>{t!=null&&t();const n=matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);n.addEventListener("change",e),t=()=>{n.removeEventListener("change",e)},this._renderer._canvas.getContext("2d").pixelRatio=window.devicePixelRatio||1,this._redraw=!0,this._resize=1,this.resize().runAsync()};e()}}function cO(t,e){const n=this;if(e=e||{},oa.call(n),e.loader&&n.loader(e.loader),e.logger&&n.logger(e.logger),e.logLevel!=null&&n.logLevel(e.logLevel),e.locale||t.locale){const a=J({},t.locale,e.locale);n.locale(_M(a.number,a.time))}n._el=null,n._elBind=null,n._renderType=e.renderer||hr.Canvas,n._scenegraph=new D4;const r=n._scenegraph.root;n._renderer=null,n._tooltip=e.tooltip||sO,n._redraw=!0,n._handler=new $u().scene(r),n._globalCursor=!1,n._preventDefault=!1,n._timers=[],n._eventListeners=[],n._resizeListeners=[],n._eventConfig=SR(t.eventConfig),n.globalCursor(n._eventConfig.globalCursor);const i=ZR(n,t,e.expr);n._runtime=i,n._signals=i.signals,n._bind=(t.bindings||[]).map(a=>({state:null,param:J({},a)})),i.root&&i.root.set(r),r.source=i.data.root.input,n.pulse(i.data.root.input,n.changeset().insert(r.items)),n._width=n.width(),n._height=n.height(),n._viewWidth=Ax(n,n._width),n._viewHeight=kx(n,n._height),n._origin=[0,0],n._resize=0,n._autosize=1,tO(n),yR(n),vR(n),n.description(t.description),e.hover&&n.hover(),e.container&&n.initialize(e.container,e.bind),e.watchPixelRatio&&n._watchPixelRatio()}function $o(t,e){return H(t._signals,e)?t._signals[e]:_("Unrecognized signal name: "+U(e))}function Cx(t,e){const n=(t._targets||[]).filter(r=>r._update&&r._update.handler===e);return n.length?n[0]:null}function u1(t,e,n,r){let i=Cx(n,r);return i||(i=Qh(t,()=>r(e,n.value)),i.handler=r,t.on(n,null,i)),t}function l1(t,e,n){const r=Cx(e,n);return r&&e._targets.remove(r),t}B(cO,oa,{async evaluate(t,e,n){if(await oa.prototype.evaluate.call(this,t,e),this._redraw||this._resize)try{this._renderer&&(this._resize&&(this._resize=0,ER(this)),await this._renderer.renderAsync(this._scenegraph.root)),this._redraw=!1}catch(r){this.error(r)}return n&&To(this,n),this},dirty(t){this._redraw=!0,this._renderer&&this._renderer.dirty(t)},description(t){if(arguments.length){const e=t!=null?t+"":null;return e!==this._desc&&mx(this._el,this._desc=e),this}return this._desc},container(){return this._el},scenegraph(){return this._scenegraph},origin(){return this._origin.slice()},signal(t,e,n){const r=$o(this,t);return arguments.length===1?r.value:this.update(r,e,n)},width(t){return arguments.length?this.signal("width",t):this.signal("width")},height(t){return arguments.length?this.signal("height",t):this.signal("height")},padding(t){return arguments.length?this.signal("padding",o1(t)):o1(this.signal("padding"))},autosize(t){return arguments.length?this.signal("autosize",t):this.signal("autosize")},background(t){return arguments.length?this.signal("background",t):this.signal("background")},renderer(t){return arguments.length?(oh(t)||_("Unrecognized renderer type: "+t),t!==this._renderType&&(this._renderType=t,this._resetRenderer()),this):this._renderType},tooltip(t){return arguments.length?(t!==this._tooltip&&(this._tooltip=t,this._resetRenderer()),this):this._tooltip},loader(t){return arguments.length?(t!==this._loader&&(oa.prototype.loader.call(this,t),this._resetRenderer()),this):this._loader},resize(){return this._autosize=1,this.touch($o(this,"autosize"))},_resetRenderer(){this._renderer&&(this._renderer=null,this.initialize(this._el,this._elBind))},_resizeView:eO,addEventListener(t,e,n){let r=e;return n&&n.trap===!1||(r=Qh(this,e),r.raw=e),this._handler.on(t,r),this},removeEventListener(t,e){for(var n=this._handler.handlers(t),r=n.length,i,a;--r>=0;)if(a=n[r].type,i=n[r].handler,t===a&&(e===i||e===i.raw)){this._handler.off(a,i);break}return this},addResizeListener(t){const e=this._resizeListeners;return e.includes(t)||e.push(t),this},removeResizeListener(t){var e=this._resizeListeners,n=e.indexOf(t);return n>=0&&e.splice(n,1),this},addSignalListener(t,e){return u1(this,t,$o(this,t),e)},removeSignalListener(t,e){return l1(this,$o(this,t),e)},addDataListener(t,e){return u1(this,t,Xs(this,t).values,e)},removeDataListener(t,e){return l1(this,Xs(this,t).values,e)},globalCursor(t){if(arguments.length){if(this._globalCursor!==!!t){const e=uc(this,null);this._globalCursor=!!t,e&&uc(this,e)}return this}else return this._globalCursor},preventDefault(t){return arguments.length?(this._preventDefault=t,this):this._preventDefault},timer:oO,events:$R,finalize:RR,hover:_R,data:bR,change:Lu,insert:xR,remove:wR,scale:QR,initialize:YR,toImageURL:VR,toCanvas:KR,toSVG:JR,getState:nO,setState:aO,_watchPixelRatio:fO});const dO="view",Js="[",Zs="]",Sx="{",Fx="}",hO=":",$x=",",gO="@",pO=">",mO=/[[\]{}]/,yO={"*":1,arc:1,area:1,group:1,image:1,line:1,path:1,rect:1,rule:1,shape:1,symbol:1,text:1,trail:1};let _x,Rx;function vO(t,e,n){return _x=e||dO,Rx=n||yO,Ox(t.trim()).map(lc)}function bO(t){return Rx[t]}function da(t,e,n,r,i){const a=t.length;let o=0,s;for(;e<a;++e){if(s=t[e],!o&&s===n)return e;i&&i.includes(s)?--o:r&&r.includes(s)&&++o}return e}function Ox(t){const e=[],n=t.length;let r=0,i=0;for(;i<n;)i=da(t,i,$x,Js+Sx,Zs+Fx),e.push(t.substring(r,i).trim()),r=++i;if(e.length===0)throw"Empty event selector: "+t;return e}function lc(t){return t[0]==="["?xO(t):wO(t)}function xO(t){const e=t.length;let n=1,r;if(n=da(t,n,Zs,Js,Zs),n===e)throw"Empty between selector: "+t;if(r=Ox(t.substring(1,n)),r.length!==2)throw"Between selector must have two elements: "+t;if(t=t.slice(n+1).trim(),t[0]!==pO)throw"Expected '>' after between selector: "+t;r=r.map(lc);const i=lc(t.slice(1).trim());return i.between?{between:r,stream:i}:(i.between=r,i)}function wO(t){const e={source:_x},n=[];let r=[0,0],i=0,a=0,o=t.length,s=0,u,l;if(t[o-1]===Fx){if(s=t.lastIndexOf(Sx),s>=0){try{r=EO(t.substring(s+1,o-1))}catch{throw"Invalid throttle specification: "+t}t=t.slice(0,s).trim(),o=t.length}else throw"Unmatched right brace: "+t;s=0}if(!o)throw t;if(t[0]===gO&&(i=++s),u=da(t,s,hO),u<o&&(n.push(t.substring(a,u).trim()),a=s=++u),s=da(t,s,Js),s===o)n.push(t.substring(a,o).trim());else if(n.push(t.substring(a,s).trim()),l=[],a=++s,a===o)throw"Unmatched left bracket: "+t;for(;s<o;){if(s=da(t,s,Zs),s===o)throw"Unmatched left bracket: "+t;if(l.push(t.substring(a,s).trim()),s<o-1&&t[++s]!==Js)throw"Expected left bracket: "+t;a=++s}if(!(o=n.length)||mO.test(n[o-1]))throw"Invalid event selector: "+t;return o>1?(e.type=n[1],i?e.markname=n[0].slice(1):bO(n[0])?e.marktype=n[0]:e.source=n[0]):e.type=n[0],e.type.slice(-1)==="!"&&(e.consume=!0,e.type=e.type.slice(0,-1)),l!=null&&(e.filter=l),r[0]&&(e.throttle=r[0]),r[1]&&(e.debounce=r[1]),e}function EO(t){const e=t.split($x);if(!t.length||e.length>2)throw t;return e.map(n=>{const r=+n;if(r!==r)throw t;return r})}function AO(t){return K(t)?t:{type:t||"pad"}}const _i=t=>+t||0,kO=t=>({top:t,bottom:t,left:t,right:t});function MO(t){return K(t)?t.signal?t:{top:_i(t.top),bottom:_i(t.bottom),left:_i(t.left),right:_i(t.right)}:kO(_i(t))}const Ct=t=>K(t)&&!L(t)?J({},t):{value:t};function f1(t,e,n,r){return n!=null?(K(n)&&!L(n)||L(n)&&n.length&&K(n[0])?t.update[e]=n:t[r||"enter"][e]={value:n},1):0}function _t(t,e,n){for(const r in e)f1(t,r,e[r]);for(const r in n)f1(t,r,n[r],"update")}function mi(t,e,n){for(const r in e)n&&H(n,r)||(t[r]=J(t[r]||{},e[r]));return t}function Hr(t,e){return e&&(e.enter&&e.enter[t]||e.update&&e.update[t])}const n0="mark",r0="frame",i0="scope",DO="axis",CO="axis-domain",SO="axis-grid",FO="axis-label",$O="axis-tick",_O="axis-title",RO="legend",OO="legend-band",zO="legend-entry",BO="legend-gradient",zx="legend-label",TO="legend-symbol",PO="legend-title",LO="title",NO="title-text",IO="title-subtitle";function qO(t,e,n,r,i){const a={},o={};let s,u,l,f;u="lineBreak",e==="text"&&i[u]!=null&&!Hr(u,t)&&Nl(a,u,i[u]),(n=="legend"||String(n).startsWith("axis"))&&(n=null),f=n===r0?i.group:n===n0?J({},i.mark,i[e]):null;for(u in f)l=Hr(u,t)||(u==="fill"||u==="stroke")&&(Hr("fill",t)||Hr("stroke",t)),l||Nl(a,u,f[u]);G(r).forEach(c=>{const d=i.style&&i.style[c];for(const h in d)Hr(h,t)||Nl(a,h,d[h])}),t=J({},t);for(u in a)f=a[u],f.signal?(s=s||{})[u]=f:o[u]=f;return t.enter=J(o,t.enter),s&&(t.update=J(s,t.update)),t}function Nl(t,e,n){t[e]=n&&n.signal?{signal:n.signal}:{value:n}}const Bx=t=>ct(t)?U(t):t.signal?`(${t.signal})`:Tx(t);function Iu(t){if(t.gradient!=null)return UO(t);let e=t.signal?`(${t.signal})`:t.color?jO(t.color):t.field!=null?Tx(t.field):t.value!==void 0?U(t.value):void 0;return t.scale!=null&&(e=WO(t,e)),e===void 0&&(e=null),t.exponent!=null&&(e=`pow(${e},${Ko(t.exponent)})`),t.mult!=null&&(e+=`*${Ko(t.mult)}`),t.offset!=null&&(e+=`+${Ko(t.offset)}`),t.round&&(e=`round(${e})`),e}const _o=(t,e,n,r)=>`(${t}(${[e,n,r].map(Iu).join(",")})+'')`;function jO(t){return t.c?_o("hcl",t.h,t.c,t.l):t.h||t.s?_o("hsl",t.h,t.s,t.l):t.l||t.a?_o("lab",t.l,t.a,t.b):t.r||t.g||t.b?_o("rgb",t.r,t.g,t.b):null}function UO(t){const e=[t.start,t.stop,t.count].map(n=>n==null?null:U(n));for(;e.length&&rt(e)==null;)e.pop();return e.unshift(Bx(t.gradient)),`gradient(${e.join(",")})`}function Ko(t){return K(t)?"("+Iu(t)+")":t}function Tx(t){return Px(K(t)?t:{datum:t})}function Px(t){let e,n,r;if(t.signal)e="datum",r=t.signal;else if(t.group||t.parent){for(n=Math.max(1,t.level||1),e="item";n-- >0;)e+=".mark.group";t.parent?(r=t.parent,e+=".datum"):r=t.group}else t.datum?(e="datum",r=t.datum):_("Invalid field reference: "+U(t));return t.signal||(r=ct(r)?Wc(r).map(U).join("]["):Px(r)),e+"["+r+"]"}function WO(t,e){const n=Bx(t.scale);return t.range!=null?e=`lerp(_range(${n}), ${+t.range})`:(e!==void 0&&(e=`_scale(${n}, ${e})`),t.band&&(e=(e?e+"+":"")+`_bandwidth(${n})`+(+t.band==1?"":"*"+Ko(t.band)),t.extra&&(e=`(datum.extra ? _scale(${n}, datum.extra.value) : ${e})`)),e==null&&(e="0")),e}function GO(t){let e="";return t.forEach(n=>{const r=Iu(n);e+=n.test?`(${n.test})?${r}:`:r}),rt(e)===":"&&(e+="null"),e}function Lx(t,e,n,r,i,a){const o={};a=a||{},a.encoders={$encode:o},t=qO(t,e,n,r,i.config);for(const s in t)o[s]=YO(t[s],e,a,i);return a}function YO(t,e,n,r){const i={},a={};for(const o in t)t[o]!=null&&(i[o]=VO(HO(t[o]),r,n,a));return{$expr:{marktype:e,channels:i},$fields:Object.keys(a),$output:Object.keys(t)}}function HO(t){return L(t)?GO(t):Iu(t)}function VO(t,e,n,r){const i=un(t,e);return i.$fields.forEach(a=>r[a]=1),J(n,i.$params),i.$expr}const XO="outer",KO=["value","update","init","react","bind"];function c1(t,e){_(t+' for "outer" push: '+U(e))}function Nx(t,e){const n=t.name;if(t.push===XO)e.signals[n]||c1("No prior signal definition",n),KO.forEach(r=>{t[r]!==void 0&&c1("Invalid property ",r)});else{const r=e.addSignal(n,t.value);t.react===!1&&(r.react=!1),t.bind&&e.addBinding(n,t.bind)}}function fc(t,e,n,r){this.id=-1,this.type=t,this.value=e,this.params=n,r&&(this.parent=r)}function qu(t,e,n,r){return new fc(t,e,n,r)}function Qs(t,e){return qu("operator",t,e)}function I(t){const e={$ref:t.id};return t.id<0&&(t.refs=t.refs||[]).push(e),e}function $a(t,e){return e?{$field:t,$name:e}:{$field:t}}const cc=$a("key");function d1(t,e){return{$compare:t,$order:e}}function JO(t,e){const n={$key:t};return e&&(n.$flat=!0),n}const ZO="ascending",QO="descending";function tz(t){return K(t)?(t.order===QO?"-":"+")+ju(t.op,t.field):""}function ju(t,e){return(t&&t.signal?"$"+t.signal:t||"")+(t&&e?"_":"")+(e&&e.signal?"$"+e.signal:e||"")}const a0="scope",dc="view";function wt(t){return t&&t.signal}function ez(t){return t&&t.expr}function Jo(t){if(wt(t))return!0;if(K(t)){for(const e in t)if(Jo(t[e]))return!0}return!1}function Te(t,e){return t??e}function br(t){return t&&t.signal||t}const h1="timer";function _a(t,e){return(t.merge?rz:t.stream?iz:t.type?az:_("Invalid stream specification: "+U(t)))(t,e)}function nz(t){return t===a0?dc:t||dc}function rz(t,e){const n=t.merge.map(i=>_a(i,e)),r=o0({merge:n},t,e);return e.addStream(r).id}function iz(t,e){const n=_a(t.stream,e),r=o0({stream:n},t,e);return e.addStream(r).id}function az(t,e){let n;t.type===h1?(n=e.event(h1,t.throttle),t={between:t.between,filter:t.filter}):n=e.event(nz(t.source),t.type);const r=o0({stream:n},t,e);return Object.keys(r).length===1?n:e.addStream(r).id}function o0(t,e,n){let r=e.between;return r&&(r.length!==2&&_('Stream "between" parameter must have 2 entries: '+U(e)),t.between=[_a(r[0],n),_a(r[1],n)]),r=e.filter?[].concat(e.filter):[],(e.marktype||e.markname||e.markrole)&&r.push(oz(e.marktype,e.markname,e.markrole)),e.source===a0&&r.push("inScope(event.item)"),r.length&&(t.filter=un("("+r.join(")&&(")+")",n).$expr),(r=e.throttle)!=null&&(t.throttle=+r),(r=e.debounce)!=null&&(t.debounce=+r),e.consume&&(t.consume=!0),t}function oz(t,e,n){const r="event.item";return r+(t&&t!=="*"?"&&"+r+".mark.marktype==='"+t+"'":"")+(n?"&&"+r+".mark.role==='"+n+"'":"")+(e?"&&"+r+".mark.name==='"+e+"'":"")}const sz={code:"_.$value",ast:{type:"Identifier",value:"value"}};function uz(t,e,n){const r=t.encode,i={target:n};let a=t.events,o=t.update,s=[];a||_("Signal update missing events specification."),ct(a)&&(a=vO(a,e.isSubscope()?a0:dc)),a=G(a).filter(u=>u.signal||u.scale?(s.push(u),0):1),s.length>1&&(s=[fz(s)]),a.length&&s.push(a.length>1?{merge:a}:a[0]),r!=null&&(o&&_("Signal encode and update are mutually exclusive."),o="encode(item(),"+U(r)+")"),i.update=ct(o)?un(o,e):o.expr!=null?un(o.expr,e):o.value!=null?o.value:o.signal!=null?{$expr:sz,$params:{$value:e.signalRef(o.signal)}}:_("Invalid signal update specification."),t.force&&(i.options={force:!0}),s.forEach(u=>e.addUpdate(J(lz(u,e),i)))}function lz(t,e){return{source:t.signal?e.signalRef(t.signal):t.scale?e.scaleRef(t.scale):_a(t,e)}}function fz(t){return{signal:"["+t.map(e=>e.scale?'scale("'+e.scale+'")':e.signal)+"]"}}function cz(t,e){const n=e.getSignal(t.name);let r=t.update;t.init&&(r?_("Signals can not include both init and update expressions."):(r=t.init,n.initonly=!0)),r&&(r=un(r,e),n.update=r.$expr,n.params=r.$params),t.on&&t.on.forEach(i=>uz(i,e,n.id))}const ut=t=>(e,n,r)=>qu(t,n,e||void 0,r),Ix=ut("aggregate"),dz=ut("axisticks"),qx=ut("bound"),Ve=ut("collect"),g1=ut("compare"),hz=ut("datajoin"),jx=ut("encode"),gz=ut("expression"),pz=ut("facet"),mz=ut("field"),yz=ut("key"),vz=ut("legendentries"),bz=ut("load"),xz=ut("mark"),wz=ut("multiextent"),Ez=ut("multivalues"),Az=ut("overlap"),kz=ut("params"),Ux=ut("prefacet"),Mz=ut("projection"),Dz=ut("proxy"),Cz=ut("relay"),Wx=ut("render"),Sz=ut("scale"),Tr=ut("sieve"),Fz=ut("sortitems"),Gx=ut("viewlayout"),$z=ut("values");let _z=0;const Yx={min:"min",max:"max",count:"sum"};function Rz(t,e){const n=t.type||"linear";j2(n)||_("Unrecognized scale type: "+U(n)),e.addScale(t.name,{type:n,domain:void 0})}function Oz(t,e){const n=e.getScale(t.name).params;let r;n.domain=Hx(t.domain,t,e),t.range!=null&&(n.range=Xx(t,e,n)),t.interpolate!=null&&Uz(t.interpolate,n),t.nice!=null&&(n.nice=jz(t.nice,e)),t.bins!=null&&(n.bins=qz(t.bins,e));for(r in t)H(n,r)||r==="name"||(n[r]=ke(t[r],e))}function ke(t,e){return K(t)?t.signal?e.signalRef(t.signal):_("Unsupported object: "+U(t)):t}function Zo(t,e){return t.signal?e.signalRef(t.signal):t.map(n=>ke(n,e))}function Uu(t){_("Can not find data set: "+U(t))}function Hx(t,e,n){if(!t){(e.domainMin!=null||e.domainMax!=null)&&_("No scale domain defined for domainMin/domainMax to override.");return}return t.signal?n.signalRef(t.signal):(L(t)?zz:t.fields?Tz:Bz)(t,e,n)}function zz(t,e,n){return t.map(r=>ke(r,n))}function Bz(t,e,n){const r=n.getData(t.data);return r||Uu(t.data),ai(e.type)?r.valuesRef(n,t.field,Vx(t.sort,!1)):G2(e.type)?r.domainRef(n,t.field):r.extentRef(n,t.field)}function Tz(t,e,n){const r=t.data,i=t.fields.reduce((a,o)=>(o=ct(o)?{data:r,field:o}:L(o)||o.signal?Pz(o,n):o,a.push(o),a),[]);return(ai(e.type)?Lz:G2(e.type)?Nz:Iz)(t,n,i)}function Pz(t,e){const n="_:vega:_"+_z++,r=Ve({});if(L(t))r.value={$ingest:t};else if(t.signal){const i="setdata("+U(n)+","+t.signal+")";r.params.input=e.signalRef(i)}return e.addDataPipeline(n,[r,Tr({})]),{data:n,field:"data"}}function Lz(t,e,n){const r=Vx(t.sort,!0);let i,a;const o=n.map(l=>{const f=e.getData(l.data);return f||Uu(l.data),f.countsRef(e,l.field,r)}),s={groupby:cc,pulse:o};r&&(i=r.op||"count",a=r.field?ju(i,r.field):"count",s.ops=[Yx[i]],s.fields=[e.fieldRef(a)],s.as=[a]),i=e.add(Ix(s));const u=e.add(Ve({pulse:I(i)}));return a=e.add($z({field:cc,sort:e.sortRef(r),pulse:I(u)})),I(a)}function Vx(t,e){return t&&(!t.field&&!t.op?K(t)?t.field="key":t={field:"key"}:!t.field&&t.op!=="count"?_("No field provided for sort aggregate op: "+t.op):e&&t.field&&t.op&&!Yx[t.op]&&_("Multiple domain scales can not be sorted using "+t.op)),t}function Nz(t,e,n){const r=n.map(i=>{const a=e.getData(i.data);return a||Uu(i.data),a.domainRef(e,i.field)});return I(e.add(Ez({values:r})))}function Iz(t,e,n){const r=n.map(i=>{const a=e.getData(i.data);return a||Uu(i.data),a.extentRef(e,i.field)});return I(e.add(wz({extents:r})))}function qz(t,e){return t.signal||L(t)?Zo(t,e):e.objectProperty(t)}function jz(t,e){return t.signal?e.signalRef(t.signal):K(t)?{interval:ke(t.interval),step:ke(t.step)}:ke(t)}function Uz(t,e){e.interpolate=ke(t.type||t),t.gamma!=null&&(e.interpolateGamma=ke(t.gamma))}function Xx(t,e,n){const r=e.config.range;let i=t.range;if(i.signal)return e.signalRef(i.signal);if(ct(i)){if(r&&H(r,i))return t=J({},t,{range:r[i]}),Xx(t,e,n);i==="width"?i=[0,{signal:"width"}]:i==="height"?i=ai(t.type)?[0,{signal:"height"}]:[{signal:"height"},0]:_("Unrecognized scale range value: "+U(i))}else if(i.scheme){n.scheme=L(i.scheme)?Zo(i.scheme,e):ke(i.scheme,e),i.extent&&(n.schemeExtent=Zo(i.extent,e)),i.count&&(n.schemeCount=ke(i.count,e));return}else if(i.step){n.rangeStep=ke(i.step,e);return}else{if(ai(t.type)&&!L(i))return Hx(i,t,e);L(i)||_("Unsupported range type: "+U(i))}return i.map(a=>(L(a)?Zo:ke)(a,e))}function Wz(t,e){const n=e.config.projection||{},r={};for(const i in t)i!=="name"&&(r[i]=hc(t[i],i,e));for(const i in n)r[i]==null&&(r[i]=hc(n[i],i,e));e.addProjection(t.name,r)}function hc(t,e,n){return L(t)?t.map(r=>hc(r,e,n)):K(t)?t.signal?n.signalRef(t.signal):e==="fit"?t:_("Unsupported parameter object: "+U(t)):t}const Xe="top",yi="left",vi="right",Vn="bottom",Kx="center",Gz="vertical",Yz="start",Hz="middle",Vz="end",gc="index",s0="label",Xz="offset",li="perc",Kz="perc2",De="value",ro="guide-label",u0="guide-title",Jz="group-title",Zz="group-subtitle",p1="symbol",Qo="gradient",pc="discrete",mc="size",Qz="shape",tB="fill",eB="stroke",nB="strokeWidth",rB="strokeDash",iB="opacity",l0=[mc,Qz,tB,eB,nB,rB,iB],io={name:1,style:1,interactive:1},nt={value:0},Ce={value:1},Wu="group",Jx="rect",f0="rule",aB="symbol",Pr="text";function Ra(t){return t.type=Wu,t.interactive=t.interactive||!1,t}function ce(t,e){const n=(r,i)=>Te(t[r],Te(e[r],i));return n.isVertical=r=>Gz===Te(t.direction,e.direction||(r?e.symbolDirection:e.gradientDirection)),n.gradientLength=()=>Te(t.gradientLength,e.gradientLength||e.gradientWidth),n.gradientThickness=()=>Te(t.gradientThickness,e.gradientThickness||e.gradientHeight),n.entryColumns=()=>Te(t.columns,Te(e.columns,+n.isVertical(!0))),n}function Zx(t,e){const n=e&&(e.update&&e.update[t]||e.enter&&e.enter[t]);return n&&n.signal?n:n?n.value:null}function oB(t,e,n){const r=e.config.style[n];return r&&r[t]}function Gu(t,e,n){return`item.anchor === '${Yz}' ? ${t} : item.anchor === '${Vz}' ? ${e} : ${n}`}const c0=Gu(U(yi),U(vi),U(Kx));function sB(t){const e=t("tickBand");let n=t("tickOffset"),r,i;return e?e.signal?(r={signal:`(${e.signal}) === 'extent' ? 1 : 0.5`},i={signal:`(${e.signal}) === 'extent'`},K(n)||(n={signal:`(${e.signal}) === 'extent' ? 0 : ${n}`})):e==="extent"?(r=1,i=!0,n=0):(r=.5,i=!1):(r=t("bandPosition"),i=t("tickExtra")),{extra:i,band:r,offset:n}}function Qx(t,e){return e?t?K(t)?Object.assign({},t,{offset:Qx(t.offset,e)}):{value:t,offset:e}:e:t}function ve(t,e){return e?(t.name=e.name,t.style=e.style||t.style,t.interactive=!!e.interactive,t.encode=mi(t.encode,e,io)):t.interactive=!1,t}function uB(t,e,n,r){const i=ce(t,n),a=i.isVertical(),o=i.gradientThickness(),s=i.gradientLength();let u,l,f,c,d;a?(l=[0,1],f=[0,0],c=o,d=s):(l=[0,0],f=[1,0],c=s,d=o);const h={enter:u={opacity:nt,x:nt,y:nt,width:Ct(c),height:Ct(d)},update:J({},u,{opacity:Ce,fill:{gradient:e,start:l,stop:f}}),exit:{opacity:nt}};return _t(h,{stroke:i("gradientStrokeColor"),strokeWidth:i("gradientStrokeWidth")},{opacity:i("gradientOpacity")}),ve({type:Jx,role:BO,encode:h},r)}function lB(t,e,n,r,i){const a=ce(t,n),o=a.isVertical(),s=a.gradientThickness(),u=a.gradientLength();let l,f,c,d,h="";o?(l="y",c="y2",f="x",d="width",h="1-"):(l="x",c="x2",f="y",d="height");const g={opacity:nt,fill:{scale:e,field:De}};g[l]={signal:h+"datum."+li,mult:u},g[f]=nt,g[c]={signal:h+"datum."+Kz,mult:u},g[d]=Ct(s);const p={enter:g,update:J({},g,{opacity:Ce}),exit:{opacity:nt}};return _t(p,{stroke:a("gradientStrokeColor"),strokeWidth:a("gradientStrokeWidth")},{opacity:a("gradientOpacity")}),ve({type:Jx,role:OO,key:De,from:i,encode:p},r)}const fB=`datum.${li}<=0?"${yi}":datum.${li}>=1?"${vi}":"${Kx}"`,cB=`datum.${li}<=0?"${Vn}":datum.${li}>=1?"${Xe}":"${Hz}"`;function m1(t,e,n,r){const i=ce(t,e),a=i.isVertical(),o=Ct(i.gradientThickness()),s=i.gradientLength();let u=i("labelOverlap"),l,f,c,d,h="";const g={enter:l={opacity:nt},update:f={opacity:Ce,text:{field:s0}},exit:{opacity:nt}};return _t(g,{fill:i("labelColor"),fillOpacity:i("labelOpacity"),font:i("labelFont"),fontSize:i("labelFontSize"),fontStyle:i("labelFontStyle"),fontWeight:i("labelFontWeight"),limit:Te(t.labelLimit,e.gradientLabelLimit)}),a?(l.align={value:"left"},l.baseline=f.baseline={signal:cB},c="y",d="x",h="1-"):(l.align=f.align={signal:fB},l.baseline={value:"top"},c="x",d="y"),l[c]=f[c]={signal:h+"datum."+li,mult:s},l[d]=f[d]=o,o.offset=Te(t.labelOffset,e.gradientLabelOffset)||0,u=u?{separation:i("labelSeparation"),method:u,order:"datum."+gc}:void 0,ve({type:Pr,role:zx,style:ro,key:De,from:r,encode:g,overlap:u},n)}function dB(t,e,n,r,i){const a=ce(t,e),o=n.entries,s=!!(o&&o.interactive),u=o?o.name:void 0,l=a("clipHeight"),f=a("symbolOffset"),c={data:"value"},d=`(${i}) ? datum.${Xz} : datum.${mc}`,h=l?Ct(l):{field:mc},g=`datum.${gc}`,p=`max(1, ${i})`;let m,y,v,b,x;h.mult=.5,m={enter:y={opacity:nt,x:{signal:d,mult:.5,offset:f},y:h},update:v={opacity:Ce,x:y.x,y:y.y},exit:{opacity:nt}};let E=null,A=null;t.fill||(E=e.symbolBaseFillColor,A=e.symbolBaseStrokeColor),_t(m,{fill:a("symbolFillColor",E),shape:a("symbolType"),size:a("symbolSize"),stroke:a("symbolStrokeColor",A),strokeDash:a("symbolDash"),strokeDashOffset:a("symbolDashOffset"),strokeWidth:a("symbolStrokeWidth")},{opacity:a("symbolOpacity")}),l0.forEach(D=>{t[D]&&(v[D]=y[D]={scale:t[D],field:De})});const w=ve({type:aB,role:TO,key:De,from:c,clip:l?!0:void 0,encode:m},n.symbols),k=Ct(f);k.offset=a("labelOffset"),m={enter:y={opacity:nt,x:{signal:d,offset:k},y:h},update:v={opacity:Ce,text:{field:s0},x:y.x,y:y.y},exit:{opacity:nt}},_t(m,{align:a("labelAlign"),baseline:a("labelBaseline"),fill:a("labelColor"),fillOpacity:a("labelOpacity"),font:a("labelFont"),fontSize:a("labelFontSize"),fontStyle:a("labelFontStyle"),fontWeight:a("labelFontWeight"),limit:a("labelLimit")});const M=ve({type:Pr,role:zx,style:ro,key:De,from:c,encode:m},n.labels);return m={enter:{noBound:{value:!l},width:nt,height:l?Ct(l):nt,opacity:nt},exit:{opacity:nt},update:v={opacity:Ce,row:{signal:null},column:{signal:null}}},a.isVertical(!0)?(b=`ceil(item.mark.items.length / ${p})`,v.row.signal=`${g}%${b}`,v.column.signal=`floor(${g} / ${b})`,x={field:["row",g]}):(v.row.signal=`floor(${g} / ${p})`,v.column.signal=`${g} % ${p}`,x={field:g}),v.column.signal=`(${i})?${v.column.signal}:${g}`,r={facet:{data:r,name:"value",groupby:gc}},Ra({role:i0,from:r,encode:mi(m,o,io),marks:[w,M],name:u,interactive:s,sort:x})}function hB(t,e){const n=ce(t,e);return{align:n("gridAlign"),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n("rowPadding"),column:n("columnPadding")}}}const d0='item.orient === "left"',h0='item.orient === "right"',Yu=`(${d0} || ${h0})`,gB=`datum.vgrad && ${Yu}`,pB=Gu('"top"','"bottom"','"middle"'),mB=Gu('"right"','"left"','"center"'),yB=`datum.vgrad && ${h0} ? (${mB}) : (${Yu} && !(datum.vgrad && ${d0})) ? "left" : ${c0}
13`,vB=`item._anchor || (${Yu} ? "middle" : "start")`,bB=`${gB} ? (${d0} ? -90 : 90) : 0`,xB=`${Yu} ? (datum.vgrad ? (${h0} ? "bottom" : "top") : ${pB}) : "top"`;function wB(t,e,n,r){const i=ce(t,e),a={enter:{opacity:nt},update:{opacity:Ce,x:{field:{group:"padding"}},y:{field:{group:"padding"}}},exit:{opacity:nt}};return _t(a,{orient:i("titleOrient"),_anchor:i("titleAnchor"),anchor:{signal:vB},angle:{signal:bB},align:{signal:yB},baseline:{signal:xB},text:t.title,fill:i("titleColor"),fillOpacity:i("titleOpacity"),font:i("titleFont"),fontSize:i("titleFontSize"),fontStyle:i("titleFontStyle"),fontWeight:i("titleFontWeight"),limit:i("titleLimit"),lineHeight:i("titleLineHeight")},{align:i("titleAlign"),baseline:i("titleBaseline")}),ve({type:Pr,role:PO,style:u0,from:r,encode:a},n)}function EB(t,e){let n;return K(t)&&(t.signal?n=t.signal:t.path?n="pathShape("+y1(t.path)+")":t.sphere&&(n="geoShape("+y1(t.sphere)+', {type: "Sphere"})')),n?e.signalRef(n):!!t}function y1(t){return K(t)&&t.signal?t.signal:U(t)}function tw(t){const e=t.role||"";return e.startsWith("axis")||e.startsWith("legend")||e.startsWith("title")?e:t.type===Wu?i0:e||n0}function AB(t){return{marktype:t.type,name:t.name||void 0,role:t.role||tw(t),zindex:+t.zindex||void 0,aria:t.aria,description:t.description}}function kB(t,e){return t&&t.signal?e.signalRef(t.signal):t!==!1}function g0(t,e){const n=B6(t.type);n||_("Unrecognized transform type: "+U(t.type));const r=qu(n.type.toLowerCase(),null,ew(n,t,e));return t.signal&&e.addSignal(t.signal,e.proxy(r)),r.metadata=n.metadata||{},r}function ew(t,e,n){const r={},i=t.params.length;for(let a=0;a<i;++a){const o=t.params[a];r[o.name]=MB(o,e,n)}return r}function MB(t,e,n){const r=t.type,i=e[t.name];if(r==="index")return DB(t,e,n);if(i===void 0){t.required&&_("Missing required "+U(e.type)+" parameter: "+U(t.name));return}else{if(r==="param")return CB(t,e,n);if(r==="projection")return n.projectionRef(e[t.name])}return t.array&&!wt(i)?i.map(a=>v1(t,a,n)):v1(t,i,n)}function v1(t,e,n){const r=t.type;if(wt(e))return x1(r)?_("Expression references can not be signals."):Il(r)?n.fieldRef(e):w1(r)?n.compareRef(e):n.signalRef(e.signal);{const i=t.expr||Il(r);return i&&SB(e)?n.exprRef(e.expr,e.as):i&&FB(e)?$a(e.field,e.as):x1(r)?un(e,n):$B(r)?I(n.getData(e).values):Il(r)?$a(e):w1(r)?n.compareRef(e):e}}function DB(t,e,n){return ct(e.from)||_('Lookup "from" parameter must be a string literal.'),n.getData(e.from).lookupRef(n,e.key)}function CB(t,e,n){const r=e[t.name];return t.array?(L(r)||_("Expected an array of sub-parameters. Instead: "+U(r)),r.map(i=>b1(t,i,n))):b1(t,r,n)}function b1(t,e,n){const r=t.params.length;let i;for(let o=0;o<r;++o){i=t.params[o];for(const s in i.key)if(i.key[s]!==e[s]){i=null;break}if(i)break}i||_("Unsupported parameter: "+U(e));const a=J(ew(i,e,n),i.key);return I(n.add(kz(a)))}const SB=t=>t&&t.expr,FB=t=>t&&t.field,$B=t=>t==="data",x1=t=>t==="expr",Il=t=>t==="field",w1=t=>t==="compare";function _B(t,e,n){let r,i,a,o,s;return t?(r=t.facet)&&(e||_("Only group marks can be faceted."),r.field!=null?o=s=ts(r,n):(t.data?s=I(n.getData(t.data).aggregate):(a=g0(J({type:"aggregate",groupby:G(r.groupby)},r.aggregate),n),a.params.key=n.keyRef(r.groupby),a.params.pulse=ts(r,n),o=s=I(n.add(a))),i=n.keyRef(r.groupby,!0))):o=I(n.add(Ve(null,[{}]))),o||(o=ts(t,n)),{key:i,pulse:o,parent:s}}function ts(t,e){return t.$ref?t:t.data&&t.data.$ref?t.data:I(e.getData(t.data).output)}function _r(t,e,n,r,i){this.scope=t,this.input=e,this.output=n,this.values=r,this.aggregate=i,this.index={}}_r.fromEntries=function(t,e){const n=e.length,r=e[n-1],i=e[n-2];let a=e[0],o=null,s=1;for(a&&a.type==="load"&&(a=e[1]),t.add(e[0]);s<n;++s)e[s].params.pulse=I(e[s-1]),t.add(e[s]),e[s].type==="aggregate"&&(o=e[s]);return new _r(t,a,i,r,o)};function nw(t){return ct(t)?t:null}function E1(t,e,n){const r=ju(n.op,n.field);let i;if(e.ops){for(let a=0,o=e.as.length;a<o;++a)if(e.as[a]===r)return}else e.ops=["count"],e.fields=[null],e.as=["count"];n.op&&(e.ops.push((i=n.op.signal)?t.signalRef(i):n.op),e.fields.push(t.fieldRef(n.field)),e.as.push(r))}function Ri(t,e,n,r,i,a,o){const s=e[n]||(e[n]={}),u=tz(a);let l=nw(i),f,c;if(l!=null&&(t=e.scope,l=l+(u?"|"+u:""),f=s[l]),!f){const d=a?{field:cc,pulse:e.countsRef(t,
vendor: 25,735 bytes, line 13
13i,a)}:{field:t.fieldRef(i),pulse:I(e.output)};u&&(d.sort=t.sortRef(a)),c=t.add(qu(r,void 0,d)),o&&(e.index[i]=c),f=I(c),l!=null&&(s[l]=f)}return f}_r.prototype={countsRef(t,e,n){const r=this,i=r.counts||(r.counts={}),a=nw(e);let o,s,u;return a!=null&&(t=r.scope,o=i[a]),o?n&&n.field&&E1(t,o.agg.params,n):(u={groupby:t.fieldRef(e,"key"),pulse:I(r.output)},n&&n.field&&E1(t,u,n),s=t.add(Ix(u)),o=t.add(Ve({pulse:I(s)})),o={agg:s,ref:I(o)},a!=null&&(i[a]=o)),o.ref},tuplesRef(){return I(this.values)},extentRef(t,e){return Ri(t,this,"extent","extent",e,!1)},domainRef(t,e){return Ri(t,this,"domain","values",e,!1)},valuesRef(t,e,n){return Ri(t,this,"vals","values",e,n||!0)},lookupRef(t,e){return Ri(t,this,"lookup","tupleindex",e,!1)},indataRef(t,e){return Ri(t,this,"indata","tupleindex",e,!0,!0)}};function RB(t,e,n){const r=t.from.facet,i=r.name,a=ts(r,e);let o;r.name||_("Facet must have a name: "+U(r)),r.data||_("Facet must reference a data set: "+U(r)),r.field?o=e.add(Ux({field:e.fieldRef(r.field),pulse:a})):r.groupby?o=e.add(pz({key:e.keyRef(r.groupby),group:I(e.proxy(n.parent)),pulse:a})):_("Facet must specify groupby or field: "+U(r));const s=e.fork(),u=s.add(Ve()),l=s.add(Tr({pulse:I(u)}));s.addData(i,new _r(s,u,u,l)),s.addSignal("parent",null),o.params.subflow={$subflow:s.parse(t).toRuntime()}}function OB(t,e,n){const r=e.add(Ux({pulse:n.pulse})),i=e.fork();i.add(Tr()),i.addSignal("parent",null),r.params.subflow={$subflow:i.parse(t).toRuntime()}}function rw(t,e,n){const r=t.remove,i=t.insert,a=t.toggle,o=t.modify,s=t.values,u=e.add(Qs()),l="if("+t.trigger+',modify("'+n+'",'+[i,r,a,o,s].map(c=>c??"null").join(",")+"),0)",f=un(l,e);u.update=f.$expr,u.params=f.$params}function Hu(t,e){const n=tw(t),r=t.type===Wu,i=t.from&&t.from.facet,a=t.overlap;let o=t.layout||n===i0||n===r0,s,u,l,f,c,d,h;const g=n===n0||o||i,p=_B(t.from,r,e);u=e.add(hz({key:p.key||(t.key?$a(t.key):void 0),pulse:p.pulse,clean:!r}));const m=I(u);u=l=e.add(Ve({pulse:m})),u=e.add(xz({markdef:AB(t),interactive:kB(t.interactive,e),clip:EB(t.clip,e),context:{$context:!0},groups:e.lookup(),parent:e.signals.parent?e.signalRef("parent"):null,index:e.markpath(),pulse:I(u)}));const y=I(u);u=f=e.add(jx(Lx(t.encode,t.type,n,t.style,e,{mod:!1,pulse:y}))),u.params.parent=e.encode(),t.transform&&t.transform.forEach(A=>{const w=g0(A,e),k=w.metadata;(k.generates||k.changes)&&_("Mark transforms should not generate new data."),k.nomod||(f.params.mod=!0),w.params.pulse=I(u),e.add(u=w)}),t.sort&&(u=e.add(Fz({sort:e.compareRef(t.sort),pulse:I(u)})));const v=I(u);(i||o)&&(o=e.add(Gx({layout:e.objectProperty(t.layout),legends:e.legends,mark:y,pulse:v})),d=I(o));const b=e.add(qx({mark:y,pulse:d||v}));h=I(b),r&&(g&&(s=e.operators,s.pop(),o&&s.pop()),e.pushState(v,d||h,m),i?RB(t,e,p):g?OB(t,e,p):e.parse(t),e.popState(),g&&(o&&s.push(o),s.push(b))),a&&(h=zB(a,h,e));const x=e.add(Wx({pulse:h})),E=e.add(Tr({pulse:I(x)},void 0,e.parent()));t.name!=null&&(c=t.name,e.addData(c,new _r(e,l,x,E)),t.on&&t.on.forEach(A=>{(A.insert||A.remove||A.toggle)&&_("Marks only support modify triggers."),rw(A,e,c)}))}function zB(t,e,n){const r=t.method,i=t.bound,a=t.separation,o={separation:wt(a)?n.signalRef(a.signal):a,method:wt(r)?n.signalRef(r.signal):r,pulse:e};if(t.order&&(o.sort=n.compareRef({field:t.order})),i){const s=i.tolerance;o.boundTolerance=wt(s)?n.signalRef(s.signal):+s,o.boundScale=n.scaleRef(i.scale),o.boundOrient=i.orient}return I(n.add(Az(o)))}function BB(t,e){const n=e.config.legend,r=t.encode||{},i=ce(t,n),a=r.legend||{},o=a.name||void 0,s=a.interactive,u=a.style,l={};let f=0,c,d,h;l0.forEach(b=>t[b]?(l[b]=t[b],f=f||t[b]):0),f||_("Missing valid scale for legend.");const g=TB(t,e.scaleType(f)),p={title:t.title!=null,scales:l,type:g,vgrad:g!=="symbol"&&i.isVertical()},m=I(e.add(Ve(null,[p]))),y={enter:{x:{value:0},y:{value:0}}},v=I(e.add(vz(d={type:g,scale:e.scaleRef(f),count:e.objectProperty(i("tickCount")),limit:e.property(i("symbolLimit")),values:e.objectProperty(t.values),minstep:e.property(t.tickMinStep),formatType:e.property(t.formatType),formatSpecifier:e.property(t.format)})));return g===Qo?(h=[uB(t,f,n,r.gradient),m1(t,n,r.labels,v)],d.count=d.count||e.signalRef(`max(2,2*floor((${br(i.gradientLength())})/100))`)):g===pc?h=[lB(t,f,n,r.gradient,v),m1(t,n,r.labels,v)]:(c=hB(t,n),h=[dB(t,n,r,v,br(c.columns))],d.size=NB(t,e,h[0].marks)),h=[Ra({role:zO,from:m,encode:y,marks:h,layout:c,interactive:s})],p.title&&h.push(wB(t,n,r.title,m)),Hu(Ra({role:RO,from:m,encode:mi(LB(i,t,n),a,io),marks:h,aria:i("aria"),description:i("description"),zindex:i("zindex"),name:o,interactive:s,style:u}),e)}function TB(t,e){let n=t.type||p1;return!t.type&&PB(t)===1&&(t.fill||t.stroke)&&(n=zd(e)?Qo:$f(e)?pc:p1),n!==Qo?n:$f(e)?pc:Qo}function PB(t){return l0.reduce((e,n)=>e+(t[n]?1:0),0)}function LB(t,e,n){const r={enter:{},update:{}};return _t(r,{orient:t("orient"),offset:t("offset"),padding:t("padding"),titlePadding:t("titlePadding"),cornerRadius:t("cornerRadius"),fill:t("fillColor"),stroke:t("strokeColor"),strokeWidth:n.strokeWidth,strokeDash:n.strokeDash,x:t("legendX"),y:t("legendY"),format:e.format,formatType:e.formatType}),r}function NB(t,e,n){const r=br(A1("size",t,n)),i=br(A1("strokeWidth",t,n)),a=br(IB(n[1].encode,e,ro));return un(`max(ceil(sqrt(${r})+${i}),${a})`,e)}function A1(t,e,n){return e[t]?`scale("${e[t]}",datum)`:Zx(t,n[0].encode)}function IB(t,e,n){return Zx("fontSize",t)||oB("fontSize",e,n)}const qB=`item.orient==="${yi}"?-90:item.orient==="${vi}"?90:0`;function jB(t,e){t=ct(t)?{text:t}:t;const n=ce(t,e.config.title),r=t.encode||{},i=r.group||{},a=i.name||void 0,o=i.interactive,s=i.style,u=[],l={},f=I(e.add(Ve(null,[l])));return u.push(GB(t,n,UB(t),f)),t.subtitle&&u.push(YB(t,n,r.subtitle,f)),Hu(Ra({role:LO,from:f,encode:WB(n,i),marks:u,aria:n("aria"),description:n("description"),zindex:n("zindex"),name:a,interactive:o,style:s}),e)}function UB(t){const e=t.encode;return e&&e.title||J({name:t.name,interactive:t.interactive,style:t.style},e)}function WB(t,e){const n={enter:{},update:{}};return _t(n,{orient:t("orient"),anchor:t("anchor"),align:{signal:c0},angle:{signal:qB},limit:t("limit"),frame:t("frame"),offset:t("offset")||0,padding:t("subtitlePadding")}),mi(n,e,io)}function GB(t,e,n,r){const i={value:0},a=t.text,o={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return _t(o,{text:a,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:e("dx"),dy:e("dy"),fill:e("color"),font:e("font"),fontSize:e("fontSize"),fontStyle:e("fontStyle"),fontWeight:e("fontWeight"),lineHeight:e("lineHeight")},{align:e("align"),angle:e("angle"),baseline:e("baseline")}),ve({type:Pr,role:NO,style:Jz,from:r,encode:o},n)}function YB(t,e,n,r){const i={value:0},a=t.subtitle,o={enter:{opacity:i},update:{opacity:{value:1}},exit:{opacity:i}};return _t(o,{text:a,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:e("dx"),dy:e("dy"),fill:e("subtitleColor"),font:e("subtitleFont"),fontSize:e("subtitleFontSize"),fontStyle:e("subtitleFontStyle"),fontWeight:e("subtitleFontWeight"),lineHeight:e("subtitleLineHeight")},{align:e("align"),angle:e("angle"),baseline:e("baseline")}),ve({type:Pr,role:IO,style:Zz,from:r,encode:o},n)}function HB(t,e){const n=[];t.transform&&t.transform.forEach(r=>{n.push(g0(r,e))}),t.on&&t.on.forEach(r=>{rw(r,e,t.name)}),e.addDataPipeline(t.name,VB(t,e,n))}function VB(t,e,n){const r=[];let i=null,a=!1,o=!1,s,u,l,f,c;for(t.values?wt(t.values)||Jo(t.format)?(r.push(k1(e,t)),r.push(i=nr())):r.push(i=nr({$ingest:t.values,$format:t.format})):t.url?Jo(t.url)||Jo(t.format)?(r.push(k1(e,t)),r.push(i=nr())):r.push(i=nr({$request:t.url,$format:t.format})):t.source&&(i=s=G(t.source).map(d=>I(e.getData(d).output)),r.push(null)),u=0,l=n.length;u<l;++u)f=n[u],c=f.metadata,!i&&!c.source&&r.push(i=nr()),r.push(f),c.generates&&(o=!0),c.modifies&&!o&&(a=!0),c.source?i=f:c.changes&&(i=null);return s&&(l=s.length-1,r[0]=Cz({derive:a,pulse:l?s:s[0]}),(a||l)&&r.splice(1,0,nr())),i||r.push(nr()),r.push(Tr({})),r}function nr(t){const e=Ve({},t);return e.metadata={source:!0},e}function k1(t,e){return bz({url:e.url?t.property(e.url):void 0,async:e.async?t.property(e.async):void 0,values:e.values?t.property(e.values):void 0,format:t.objectProperty(e.format)})}const iw=t=>t===Vn||t===Xe,Vu=(t,e,n)=>wt(t)?ZB(t.signal,e,n):t===yi||t===Xe?e:n,St=(t,e,n)=>wt(t)?KB(t.signal,e,n):iw(t)?e:n,je=(t,e,n)=>wt(t)?JB(t.signal,e,n):iw(t)?n:e,aw=(t,e,n)=>wt(t)?QB(t.signal,e,n):t===Xe?{value:e}:{value:n},XB=(t,e,n)=>wt(t)?tT(t.signal,e,n):t===vi?{value:e}:{value:n},KB=(t,e,n)=>ow(`${t} === '${Xe}' || ${t} === '${Vn}'`,e,n),JB=(t,e,n)=>ow(`${t} !== '${Xe}' && ${t} !== '${Vn}'`,e,n),ZB=(t,e,n)=>p0(`${t} === '${yi}' || ${t} === '${Xe}'`,e,n),QB=(t,e,n)=>p0(`${t} === '${Xe}'`,e,n),tT=(t,e,n)=>p0(`${t} === '${vi}'`,e,n),ow=(t,e,n)=>(e=e!=null?Ct(e):e,n=n!=null?Ct(n):n,M1(e)&&M1(n)?(e=e?e.signal||U(e.value):null,n=n?n.signal||U(n.value):null,{signal:`${t} ? (${e}) : (${n})`}):[J({test:t},e)].concat(n||[])),M1=t=>t==null||Object.keys(t).length===1,p0=(t,e,n)=>({signal:`${t} ? (${Jr(e)}) : (${Jr(n)})`}),eT=(t,e,n,r,i)=>({signal:(r!=null?`${t} === '${yi}' ? (${Jr(r)}) : `:"")+(n!=null?`${t} === '${Vn}' ? (${Jr(n)}) : `:"")+(i!=null?`${t} === '${vi}' ? (${Jr(i)}) : `:"")+(e!=null?`${t} === '${Xe}' ? (${Jr(e)}) : `:"")+"(null)"}),Jr=t=>wt(t)?t.signal:t==null?null:U(t),nT=(t,e)=>e===0?0:wt(t)?{signal:`(${t.signal}) * ${e}`}:{value:t*e},Qr=(t,e)=>{const n=t.signal;return n&&n.endsWith("(null)")?{signal:n.slice(0,-6)+e.signal}:t};function Yr(t,e,n,r){let i;if(e&&H(e,t))return e[t];if(H(n,t))return n[t];if(t.startsWith("title")){switch(t){case"titleColor":i="fill";break;case"titleFont":case"titleFontSize":case"titleFontWeight":i=t[5].toLowerCase()+t.slice(6)}return r[u0][i]}else if(t.startsWith("label")){switch(t){case"labelColor":i="fill";break;case"labelFont":case"labelFontSize":i=t[5].toLowerCase()+t.slice(6)}return r[ro][i]}return null}function D1(t){const e={};for(const n of t)if(n)for(const r in n)e[r]=1;return Object.keys(e)}function rT(t,e){var n=e.config,r=n.style,i=n.axis,a=e.scaleType(t.scale)==="band"&&n.axisBand,o=t.orient,s,u,l;if(wt(o)){const c=D1([n.axisX,n.axisY]),d=D1([n.axisTop,n.axisBottom,n.axisLeft,n.axisRight]);s={};for(l of c)s[l]=St(o,Yr(l,n.axisX,i,r),Yr(l,n.axisY,i,r));u={};for(l of d)u[l]=eT(o.signal,Yr(l,n.axisTop,i,r),Yr(l,n.axisBottom,i,r),Yr(l,n.axisLeft,i,r),Yr(l,n.axisRight,i,r))}else s=o===Xe||o===Vn?n.axisX:n.axisY,u=n["axis"+o[0].toUpperCase()+o.slice(1)];return s||u||a?J({},i,s,u,a):i}function iT(t,e,n,r){const i=ce(t,e),a=t.orient;let o,s;const u={enter:o={opacity:nt},update:s={opacity:Ce},exit:{opacity:nt}};_t(u,{stroke:i("domainColor"),strokeCap:i("domainCap"),strokeDash:i("domainDash"),strokeDashOffset:i("domainDashOffset"),strokeWidth:i("domainWidth"),strokeOpacity:i("domainOpacity")});const l=C1(t,0),f=C1(t,1);return o.x=s.x=St(a,l,nt),o.x2=s.x2=St(a,f),o.y=s.y=je(a,l,nt),o.y2=s.y2=je(a,f),ve({type:f0,role:CO,from:r,encode:u},n)}function C1(t,e){return{scale:t.scale,range:e}}function aT(t,e,n,r,i){const a=ce(t,e),o=t.orient,s=t.gridScale,u=Vu(o,1,-1),l=oT(t.offset,u);let f,c,d;const h={enter:f={opacity:nt},update:d={opacity:Ce},exit:c={opacity:nt}};_t(h,{stroke:a("gridColor"),strokeCap:a("gridCap"),strokeDash:a("gridDash"),strokeDashOffset:a("gridDashOffset"),strokeOpacity:a("gridOpacity"),strokeWidth:a("gridWidth")});const g={scale:t.scale,field:De,band:i.band,extra:i.extra,offset:i.offset,round:a("tickRound")},p=St(o,{signal:"height"},{signal:"width"}),m=s?{scale:s,range:0,mult:u,offset:l}:{value:0,offset:l},y=s?{scale:s,range:1,mult:u,offset:l}:J(p,{mult:u,offset:l});return f.x=d.x=St(o,g,m),f.y=d.y=je(o,g,m),f.x2=d.x2=je(o,y),f.y2=d.y2=St(o,y),c.x=St(o,g),c.y=je(o,g),ve({type:f0,role:SO,key:De,from:r,encode:h},n)}function oT(t,e){if(e!==1)if(!K(t))t=wt(e)?{signal:`(${e.signal}) * (${t||0})`}:e*(t||0);else{let n=t=J({},t);for(;n.mult!=null;)if(K(n.mult))n=n.mult=J({},n.mult);else return n.mult=wt(e)?{signal:`(${n.mult}) * (${e.signal})`}:n.mult*e,t;n.mult=e}return t}function sT(t,e,n,r,i,a){const o=ce(t,e),s=t.orient,u=Vu(s,-1,1);let l,f,c;const d={enter:l={opacity:nt},update:c={opacity:Ce},exit:f={opacity:nt}};_t(d,{stroke:o("tickColor"),strokeCap:o("tickCap"),strokeDash:o("tickDash"),strokeDashOffset:o("tickDashOffset"),strokeOpacity:o("tickOpacity"),strokeWidth:o("tickWidth")});const h=Ct(i);h.mult=u;const g={scale:t.scale,field:De,band:a.band,extra:a.extra,offset:a.offset,round:o("tickRound")};return c.y=l.y=St(s,nt,g),c.y2=l.y2=St(s,h),f.x=St(s,g),c.x=l.x=je(s,nt,g),c.x2=l.x2=je(s,h),f.y=je(s,g),ve({type:f0,role:$O,key:De,from:r,encode:d},n)}function ql(t,e,n,r,i){return{signal:'flush(range("'+t+'"), scale("'+t+'", datum.value), '+e+","+n+","+r+","+i+")"}}function uT(t,e,n,r,i,a){const o=ce(t,e),s=t.orient,u=t.scale,l=Vu(s,-1,1),f=br(o("labelFlush")),c=br(o("labelFlushOffset")),d=o("labelAlign"),h=o("labelBaseline");let g=f===0||!!f,p;const m=Ct(i);m.mult=l,m.offset=Ct(o("labelPadding")||0),m.offset.mult=l;const y={scale:u,field:De,band:.5,offset:Qx(a.offset,o("labelOffset"))},v=St(s,g?ql(u,f,'"left"','"right"','"center"'):{value:"center"},XB(s,"left","right")),b=St(s,aw(s,"bottom","top"),g?ql(u,f,'"top"','"bottom"','"middle"'):{value:"middle"}),x=ql(u,f,`-(${c})`,c,0);g=g&&c;const E={opacity:nt,x:St(s,y,m),y:je(s,y,m)},A={enter:E,update:p={opacity:Ce,text:{field:s0},x:E.x,y:E.y,align:v,baseline:b},exit:{opacity:nt,x:E.x,y:E.y}};_t(A,{dx:!d&&g?St(s,x):null,dy:!h&&g?je(s,x):null}),_t(A,{angle:o("labelAngle"),fill:o("labelColor"),fillOpacity:o("labelOpacity"),font:o("labelFont"),fontSize:o("labelFontSize"),fontWeight:o("labelFontWeight"),fontStyle:o("labelFontStyle"),limit:o("labelLimit"),lineHeight:o("labelLineHeight")},{align:d,baseline:h});const w=o("labelBound");let k=o("labelOverlap");return k=k||w?{separation:o("labelSeparation"),method:k,order:"datum.index",bound:w?{scale:u,orient:s,tolerance:w}:null}:void 0,p.align!==v&&(p.align=Qr(p.align,v)),p.baseline!==b&&(p.baseline=Qr(p.baseline,b)),ve({type:Pr,role:FO,style:ro,key:De,from:r,encode:A,overlap:k},n)}function lT(t,e,n,r){const i=ce(t,e),a=t.orient,o=Vu(a,-1,1);let s,u;const l={enter:s={opacity:nt,anchor:Ct(i("titleAnchor",null)),align:{signal:c0}},update:u=J({},s,{opacity:Ce,text:Ct(t.title)}),exit:{opacity:nt}},f={signal:`lerp(range("${t.scale}"), ${Gu(0,1,.5)})`};return u.x=St(a,f),u.y=je(a,f),s.angle=St(a,nt,nT(o,90)),s.baseline=St(a,aw(a,Vn,Xe),{value:Vn}),u.angle=s.angle,u.baseline=s.baseline,_t(l,{fill:i("titleColor"),fillOpacity:i("titleOpacity"),font:i("titleFont"),fontSize:i("titleFontSize"),fontStyle:i("titleFontStyle"),fontWeight:i("titleFontWeight"),limit:i("titleLimit"),lineHeight:i("titleLineHeight")},{align:i("titleAlign"),angle:i("titleAngle"),baseline:i("titleBaseline")}),fT(i,a,l,n),l.update.align=Qr(l.update.align,s.align),l.update.angle=Qr(l.update.angle,s.angle),l.update.baseline=Qr(l.update.baseline,s.baseline),ve({type:Pr,role:_O,style:u0,from:r,encode:l},n)}function fT(t,e,n,r){const i=(s,u)=>s!=null?(n.update[u]=Qr(Ct(s),n.update[u]),!1):!Hr(u,r),a=i(t("titleX"),"x"),o=i(t("titleY"),"y");n.enter.auto=o===a?Ct(o):St(e,Ct(o),Ct(a))}function cT(t,e){const n=rT(t,e),r=t.encode||{},i=r.axis||{},a=i.name||void 0,o=i.interactive,s=i.style,u=ce(t,n),l=sB(u),f={scale:t.scale,ticks:!!u("ticks"),labels:!!u("labels"),grid:!!u("grid"),domain:!!u("domain"),title:t.title!=null},c=I(e.add(Ve({},[f]))),d=I(e.add(dz({scale:e.scaleRef(t.scale),extra:e.property(l.extra),count:e.objectProperty(t.tickCount),values:e.objectProperty(t.values),minstep:e.property(t.tickMinStep),formatType:e.property(t.formatType),formatSpecifier:e.property(t.format)}))),h=[];let g;return f.grid&&h.push(aT(t,n,r.grid,d,l)),f.ticks&&(g=u("tickSize"),h.push(sT(t,n,r.ticks,d,g,l))),f.labels&&(g=f.ticks?g:0,h.push(uT(t,n,r.labels,d,g,l))),f.domain&&h.push(iT(t,n,r.domain,c)),f.title&&h.push(lT(t,n,r.title,c)),Hu(Ra({role:DO,from:c,encode:mi(dT(u,t),i,io),marks:h,aria:u("aria"),description:u("description"),zindex:u("zindex"),name:a,interactive:o,style:s}),e)}function dT(t,e){const n={enter:{},update:{}};return _t(n,{orient:t("orient"),offset:t("offset")||0,position:Te(e.position,0),titlePadding:t("titlePadding"),minExtent:t("minExtent"),maxExtent:t("maxExtent"),range:{signal:`abs(span(range("${e.scale}")))`},translate:t("translate"),format:e.format,formatType:e.formatType}),n}function sw(t,e,n){const r=G(t.signals),i=G(t.scales);return n||r.forEach(a=>Nx(a,e)),G(t.projections).forEach(a=>Wz(a,e)),i.forEach(a=>Rz(a,e)),G(t.data).forEach(a=>HB(a,e)),i.forEach(a=>Oz(a,e)),(n||r).forEach(a=>cz(a,e)),G(t.axes).forEach(a=>cT(a,e)),G(t.marks).forEach(a=>Hu(a,e)),G(t.legends).forEach(a=>BB(a,e)),t.title&&jB(t.title,e),e.parseLambdas(),e}const hT=t=>mi({enter:{x:{value:0},y:{value:0}},update:{width:{signal:"width"},height:{signal:"height"}}},t);function gT(t,e){const n=e.config,r=I(e.root=e.add(Qs())),i=pT(t,n);i.forEach(l=>Nx(l,e)),e.description=t.description||n.description,e.eventConfig=n.events,e.legends=e.objectProperty(n.legend&&n.legend.layout),e.locale=n.locale;const a=e.add(Ve()),o=e.add(jx(Lx(hT(t.encode),Wu,r0,t.style,e,{pulse:I(a)}))),s=e.add(Gx({layout:e.objectProperty(t.layout),legends:e.legends,autosize:e.signalRef("autosize"),mark:r,pulse:I(o)}));e.operators.pop(),e.pushState(I(o),I(s),null),sw(t,e,i),e.operators.push(s);let u=e.add(qx({mark:r,pulse:I(s)}));return u=e.add(Wx({pulse:I(u)})),u=e.add(Tr({pulse:I(u)})),e.addData("root",new _r(e,a,a,u)),e}function Oi(t,e){return e&&e.signal?{name:t,update:e.signal}:{name:t,value:e}}function pT(t,e){const n=o=>Te(t[o],e[o]),r=[Oi("background",n("background")),Oi("autosize",AO(n("autosize"))),Oi("padding",MO(n("padding"))),Oi("width",n("width")||0),Oi("height",n("height")||0)],i=r.reduce((o,s)=>(o[s.name]=s,o),{}),a={};return G(t.signals).forEach(o=>{H(i,o.name)?o=J(i[o.name],o):r.push(o),a[o.name]=o}),G(e.signals).forEach(o=>{!H(a,o.name)&&!H(i,o.name)&&r.push(o)}),r}function uw(t,e){this.config=t||{},this.options=e||{},this.bindings=[],this.field={},this.signals={},this.lambdas={},this.scales={},this.events={},this.data={},this.streams=[],this.updates=[],this.operators=[],this.eventConfig=null,this.locale=null,this._id=0,this._subid=0,this._nextsub=[0],this._parent=[],this._encode=[],this._lookup=[],this._markpath=[]}function S1(t){this.config=t.config,this.options=t.options,this.legends=t.legends,this.field=Object.create(t.field),this.signals=Object.create(t.signals),this.lambdas=Object.create(t.lambdas),this.scales=Object.create(t.scales),this.events=Object.create(t.events),this.data=Object.create(t.data),this.streams=[],this.updates=[],this.operators=[],this._id=0,this._subid=++t._nextsub[0],this._nextsub=t._nextsub,this._parent=t._parent.slice(),this._encode=t._encode.slice(),this._lookup=t._lookup.slice(),this._markpath=t._markpath}uw.prototype=S1.prototype={parse(t){return sw(t,this)},fork(){return new S1(this)},isSubscope(){return this._subid>0},toRuntime(){return this.finish(),{description:this.description,operators:this.operators,streams:this.streams,updates:this.updates,bindings:this.bindings,eventConfig:this.eventConfig,locale:this.locale}},id(){return(this._subid?this._subid+":":0)+this._id++},add(t){return this.operators.push(t),t.id=this.id(),t.refs&&(t.refs.forEach(e=>{e.$ref=t.id}),t.refs=null),t},proxy(t){const e=t instanceof fc?I(t):t;return this.add(Dz({value:e}))},addStream(t){return this.streams.push(t),t.id=this.id(),t},addUpdate(t){return this.updates.push(t),t},finish(){let t,e;this.root&&(this.root.root=!0);for(t in this.signals)this.signals[t].signal=t;for(t in this.scales)this.scales[t].scale=t;function n(r,i,a){let o,s;r&&(o=r.data||(r.data={}),s=o[i]||(o[i]=[]),s.push(a))}for(t in this.data){e=this.data[t],n(e.input,t,"input"),n(e.output,t,"output"),n(e.values,t,"values");for(const r in e.index)n(e.index[r],t,"index:"+r)}return this},pushState(t,e,n){this._encode.push(I(this.add(Tr({pulse:t})))),this._parent.push(e),this._lookup.push(n?I(this.proxy(n)):null),this._markpath.push(-1)},popState(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},parent(){return rt(this._parent)},encode(){return rt(this._encode)},lookup(){return rt(this._lookup)},markpath(){const t=this._markpath;return++t[t.length-1]},fieldRef(t,e){if(ct(t))return $a(t,e);t.signal||_("Unsupported field reference: "+U(t));const n=t.signal;let r=this.field[n];if(!r){const i={name:this.signalRef(n)};e&&(i.as=e),this.field[n]=r=I(this.add(mz(i)))}return r},compareRef(t){let e=!1;const n=a=>wt(a)?(e=!0,this.signalRef(a.signal)):ez(a)?(e=!0,this.exprRef(a.expr)):a,r=G(t.field).map(n),i=G(t.order).map(n);return e?I(this.add(g1({fields:r,orders:i}))):d1(r,i)},keyRef(t,e){let n=!1;const r=a=>wt(a)?(n=!0,I(i[a.signal])):a,i=this.signals;return t=G(t).map(r),n?I(this.add(yz({fields:t,flat:e}))):JO(t,e)},sortRef(t){if(!t)return t;const e=ju(t.op,t.field),n=t.order||ZO;return n.signal?I(this.add(g1({fields:e,orders:this.signalRef(n.signal)}))):d1(e,n)},event(t,e){const n=t+":"+e;if(!this.events[n]){const r=this.id();this.streams.push({id:r,source:t,type:e}),this.events[n]=r}return this.events[n]},hasOwnSignal(t){return H(this.signals,t)},addSignal(t,e){this.hasOwnSignal(t)&&_("Duplicate signal name: "+U(t));const n=e instanceof fc?e:this.add(Qs(e));return this.signals[t]=n},getSignal(t){return this.signals[t]||_("Unrecognized signal name: "+U(t)),this.signals[t]},signalRef(t){return this.signals[t]?I(this.signals[t]):(H(this.lambdas,t)||(this.lambdas[t]=this.add(Qs(null))),I(this.lambdas[t]))},parseLambdas(){const t=Object.keys(this.lambdas);for(let e=0,n=t.length;e<n;++e){const r=t[e],i=un(r,this),a=this.lambdas[r];a.params=i.$params,a.update=i.$expr}},property(t){return t&&t.signal?this.signalRef(t.signal):t},objectProperty(t){return!t||!K(t)?t:this.signalRef(t.signal||m0(t))},exprRef(t,e){const n={expr:un(t,this)};return e&&(n.expr.$name=e),I(this.add(gz(n)))},addBinding(t,e){this.bindings||_("Nested signals do not support binding: "+U(t)),this.bindings.push(J({signal:t},e))},addScaleProj(t,e){H(this.scales,t)&&_("Duplicate scale or projection name: "+U(t)),this.scales[t]=this.add(e)},addScale(t,e){this.addScaleProj(t,Sz(e))},addProjection(t,e){this.addScaleProj(t,Mz(e))},getScale(t){return this.scales[t]||_("Unrecognized scale name: "+U(t)),this.scales[t]},scaleRef(t){return I(this.getScale(t))},scaleType(t){return this.getScale(t).params.type},projectionRef(t){return this.scaleRef(t)},projectionType(t){return this.scaleType(t)},addData(t,e){return H(this.data,t)&&_("Duplicate data set name: "+U(t)),this.data[t]=e},getData(t){return this.data[t]||_("Undefined data set name: "+U(t)),this.data[t]},addDataPipeline(t,e){return H(this.data,t)&&_("Duplicate data set name: "+U(t)),this.addData(t,_r.fromEntries(this,e))}};function m0(t){return(L(t)?mT:yT)(t)}function mT(t){const e=t.length;let n="[";for(let r=0;r<e;++r){const i=t[r];n+=(r>0?",":"")+(K(i)?i.signal||m0(i):U(i))}return n+"]"}function yT(t){let e="{",n=0,r,i;for(r in t)i=t[r],e+=(++n>1?",":"")+U(r)+":"+(K(i)?i.signal||m0(i):U(i));return e+"}"}function vT(){const t="sans-serif",r="#4c78a8",i="#000",a="#888",o="#ddd";return{description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:r},area:{fill:r},image:null,line:{stroke:r,strokeWidth:2},path:{stroke:r},rect:{fill:r},rule:{stroke:i},shape:{stroke:r},symbol:{fill:r,size:64},text:{fill:i,font:t,fontSize:11},trail:{fill:r,size:2},style:{"guide-label":{fill:i,font:t,fontSize:10},"guide-title":{fill:i,font:t,fontSize:11,fontWeight:"bold"},"group-title":{fill:i,font:t,fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:i,font:t,fontSize:12},point:{size:30,strokeWidth:2,shape:"circle"},circle:{size:30,strokeWidth:2},square:{size:30,strokeWidth:2,shape:"square"},cell:{fill:"transparent",stroke:o},view:{fill:"transparent"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:a,grid:!1,gridWidth:1,gridColor:o,labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:a,tickOffset:0,tickRound:!0,tickSize:5,tickWidth:1,titlePadding:4},axisBand:{tickOffset:-.5},projection:{type:"mercator"},legend:{orient:"right",padding:0,gridAlign:"each",columnPadding:10,rowPadding:2,symbolDirection:"vertical",gradientDirection:"vertical",gradientLength:200,gradientThickness:16,gradientStrokeColor:o,gradientStrokeWidth:0,gradientLabelOffset:2,labelAlign:"left",labelBaseline:"middle",labelLimit:160,labelOffset:4,labelOverlap:!0,symbolLimit:30,symbolType:"circle",symbolSize:100,symbolOffset:0,symbolStrokeWidth:1.5,symbolBaseFillColor:"transparent",symbolBaseStrokeColor:a,titleLimit:180,titleOrient:"top",titlePadding:5,layout:{offset:18,direction:"horizontal",left:{direction:"vertical"},right:{direction:"vertical"}}},range:{category:{scheme:"tableau10"},ordinal:{scheme:"blues"},heatmap:{scheme:"yellowgreenblue"},ramp:{scheme:"blues"},diverging:{scheme:"blueorange",extent:[1,0]},symbol:["circle","square","triangle-up","cross","diamond","triangle-right","triangle-down","triangle-left"]}}}function NT(t,e,n){return K(t)||_("Input Vega specification must be an object."),e=D5(vT(),e,t.config),gT(t,new uw(e,n)).toRuntime()}var bT="6.2.0";J(ba,WD,X8,C7,i9,c9,L9,y9,I9,W9,tF,sF);const IT=bT;export{Et as Bounds,$u as CanvasHandler,qf as CanvasRenderer,ye as DATE,Vt as DAY,Dn as DAYOFYEAR,oa as Dataflow,k5 as Debug,b5 as DisallowedObjectProperties,ny as Error,Zc as EventStream,EC as Gradient,j
13d as GroupItem,Fe as HOURS,Cv as Handler,s8 as HybridHandler,pp as HybridRenderer,A5 as Info,qd as Item,on as MILLISECONDS,$e as MINUTES,Qt as MONTH,_e as Marks,jy as MultiPulse,w5 as None,lt as Operator,Jc as Parameters,yr as Pulse,me as QUARTER,hr as RenderType,Fu as Renderer,vS as ResourceLoader,Ge as SECONDS,U4 as SVGHandler,Wv as SVGRenderer,a8 as SVGStringRenderer,D4 as Scenegraph,by as TIME_UNITS,F as Transform,cO as View,Mt as WEEK,E5 as Warn,Pt as YEAR,be as accessor,Zt as accessorFields,yt as accessorName,G as array,cu as ascending,Vy as bandwidthNRD,P6 as bin,L6 as bootstrapCI,f8 as boundClip,Au as boundContext,rp as boundItem,E4 as boundMark,Jn as boundStroke,di as changeset,z5 as clampRange,m$ as codegenExpression,cy as compare,re as constant,e2 as cumulativeLogNormal,ed as cumulativeNormal,a2 as cumulativeUniform,oM as dayofyear,dy as debounce,zy as defaultLocale,B6 as definition,t2 as densityLogNormal,Ky as densityNormal,i2 as densityUniform,kt as domChild,Pe as domClear,dr as domCreate,Mv as domFind,N6 as dotbin,_ as error,bt as expressionFunction,J as extend,Mn as extent,N5 as extentIndex,tr as falsy,La as fastmap,Ue as field,I5 as flush,Zd as font,Cu as fontFamily,Sn as fontSize,cl as format,Mf as formatLocale,Py as formats,H as hasOwnProperty,uu as id,fe as identity,YM as inferType,HM as inferTypes,ot as ingest,B as inherits,qi as inrange,H2 as interpolate,Bd as interpolateColors,nC as interpolateRange,u8 as intersect,Xi as intersectBoxLine,lv as intersectPath,fv as intersectPoint,ES as intersectRule,L as isArray,q5 as isBoolean,mr as isDate,Z as isFunction,j5 as isIterable,Ar as isNumber,K as isObject,hy as isRegExp,ct as isString,Xc as isTuple,gy as key,U5 as lerp,Dr as lineHeight,Vc as loader,_M as locale,M5 as logger,G5 as lruCache,qv as markup,Y5 as merge,D5 as mergeConfig,Av as multiLineOffset,Pa as one,H5 as pad,S5 as panLinear,F5 as panLog,$5 as panPow,_5 as panSymlog,NT as parse,g$ as parseExpression,vO as parseSelector,q1 as path,ov as pathCurves,d8 as pathEqual,Ea as pathParse,NC as pathRectangle,Os as pathRender,OC as pathSymbols,IC as pathTrail,rt as peek,eh as point,Rb as projection,n2 as quantileLogNormal,nd as quantileNormal,o2 as quantileUniform,Yy as quantiles,rC as quantizeInterpolator,R5 as quarter,Hy as quartiles,Ye as random,TT as randomInteger,Zy as randomKDE,BT as randomLCG,U6 as randomLogNormal,W6 as randomMixture,Jy as randomNormal,G6 as randomUniform,ZM as read,s2 as regressionConstant,H6 as regressionExp,u2 as regressionLinear,Z6 as regressionLoess,Y6 as regressionLog,X6 as regressionPoly,V6 as regressionPow,l2 as regressionQuad,oh as renderModule,vo as repeat,OT as resetDefaultLocale,LT as resetSVGDefIds,JM as responseType,pR as runtimeContext,rd as sampleCurve,Qy as sampleLogNormal,td as sampleNormal,r2 as sampleUniform,at as scale,tb as sce
13neEqual,M4 as sceneFromJSON,Tf as scenePickVisit,k4 as sceneToJSON,sn as sceneVisit,hv as sceneZOrder,K2 as scheme,Z4 as serializeXML,PT as setHybridRendererOptions,zT as setRandom,du as span,Wc as splitAccessPath,U as stringValue,Me as textMetrics,SM as timeBin,pM as timeFloor,Fs as timeFormatLocale,Na as timeInterval,wM as timeOffset,AM as timeSequence,aM as timeUnitSpecifier,xy as timeUnits,py as toBoolean,my as toDate,Kt as toNumber,an as toSet,yy as toString,T6 as transform,ba as transforms,X5 as truncate,We as truthy,j as tupleid,Sg as typeParsers,vM as utcFloor,Ia as utcInterval,EM as utcOffset,kM as utcSequence,lM as utcdayofyear,O5 as utcquarter,fM as utcweek,IT as version,ir as visitArray,sM as week,ry as writeConfig,ar as zero,uy as zoomLinear,ly as zoomLog,vf as zoomPow,fy as zoomSymlog};
14//# sourceMappingURL=BsAKizII.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.