PageSourceSearch

https://circularity-gap.world/_nuxt/eSqioDNW.js

js circularity-gap.world collected 2026-09-24 08:40:49 UTC 772,969 bytes, 67 lines download raw bytes

1import{_ as cO}from"./Z4Rbm4QB.js";import fO from"./9l43tyIY.js";import{e as dO,r as cf,m as hO,f as gO,J as pO,c as gr,o as _n,q as ma,F as mO,j as yO,a as Qo,n as ow,s as ff,p as df,t as sw,b as xO,w as bO,d as vO,k as wO,aj as _O}from"#entry";import{u as SO}from"./D3fzG1ib.js";import{_ as EO}from"./DlAUqK2U.js";function Nn(e,t,n){return e.fields=t||[],e.fname=n,e}function Xe(e){return e==null?null:e.fname}function Qt(e){return e==null?null:e.fields}function u$(e){return e.length===1?kO(e[0]):$O(e)}const kO=e=>function(t){return t[e]},$O=e=>{const t=e.length;return function(n){for(let i=0;i<t;++i)n=n[e[i]];return n}};function R(e){throw Error(e)}function Yr(e){const t=[],n=e.length;let i=null,r=0,o="",s,a,u;e=e+"";function l(){t.push(o+e.substring(s,a)),o="",s=a+1}for(s=a=0;a<n;++a)if(u=e[a],u==="\\")o+=e.substring(s,a++),s=a;else if(u===i)l(),i=null,r=-1;else{if(i)continue;s===r&&u==='"'||s===r&&u==="'"?(s=a+1,i=u):u==="."&&!r?a>s?l():s=a+1:u==="["?(a>s&&l(),r=s=a+1):u==="]"&&(r||R("Access path missing open bracket: "+e),r>0&&l(),r=0,s=a+1)}return r&&R("Access path missing closing bracket: "+e),i&&R("Access path missing closing quote: "+e),a>s&&(a++,l()),t}function hi(e,t,n){const i=Yr(e);return e=i.length===1?i[0]:e,Nn((n&&n.get||u$)(i),[e],t||e)}const Kh=hi("id"),nn=Nn(e=>e,[],"identity"),ss=Nn(()=>0,[],"zero"),bc=Nn(()=>1,[],"one"),gi=Nn(()=>!0,[],"true"),Jo=Nn(()=>!1,[],"false");function AO(e,t,n){const i=[t].concat([].slice.call(n));console[e].apply(console,i)}const CO=0,l$=1,c$=2,MO=3,FO=4;function f$(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:AO,i=e||CO;return{level(r){return arguments.length?(i=+r,this):i},error(){return i>=l$&&n("error","ERROR",arguments),this},warn(){return i>=c$&&n("warn","WARN",arguments),this},info(){return i>=MO&&n("log","INFO",arguments),this},debug(){return i>=FO&&n("log","DEBUG",arguments),this}}}var z=Array.isArray;function V(e){return e===Object(e)}const aw=e=>e!=="__proto__";function Sy(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return t.reduce((i,r)=>{for(const o in r)if(o==="signals")i.signals=DO(i.signals,r.signals);else{const s=o==="legend"?{layout:1}:o==="style"?!0:null;Zh(i,o,r[o],s)}return i},{})}function Zh(e,t,n,i){if(!aw(t))return;let r,o;if(V(n)&&!z(n)){o=V(e[t])?e[t]:e[t]={};for(r in n)i&&(i===!0||i[r])?Zh(o,r,n[r]):aw(r)&&(o[r]=n[r])}else e[t]=n}function DO(e,t){if(e==null)return t;const n={},i=[];function r(o){n[o.name]||(n[o.name]=1,i.push(o))}return t.forEach(r),e.forEach(r),i}function xe(e){return e[e.length-1]}function Xt(e){return e==null||e===""?null:+e}const d$=e=>t=>e*Math.exp(t),h$=e=>t=>Math.log(e*t),g$=e=>t=>Math.sign(t)*Math.log1p(Math.abs(t/e)),p$=e=>t=>Math.sign(t)*Math.expm1(Math.abs(t))*e,wd=e=>t=>t<0?-Math.pow(-t,e):Math.pow(t,e);function Qh(e,t,n,i){const r=n(e[0]),o=n(xe(e)),s=(o-r)*t;return[i(r-s),i(o-s)]}function TO(e,t){return Qh(e,t,Xt,nn)}function NO(e,t){var n=Math.sign(e[0]);return Qh(e,t,h$(n),d$(n))}function RO(e,t,n){return Qh(e,t,wd(n),wd(1/n))}function OO(e,t,n){return Qh(e,t,g$(n),p$(n))}function Jh(e,t,n,i,r){const o=i(e[0]),s=i(xe(e)),a=t!=null?i(t):(o+s)/2;return[r(a+(o-a)*n),r(a+(s-a)*n)]}function m$(e,t,n){return Jh(e,t,n,Xt,nn)}function y$(e,t,n){const i=Math.sign(e[0]);return Jh(e,t,n,h$(i),d$(i))}function g0(e,t,n,i){return Jh(e,t,n,wd(i),wd(1/i))}function x$(e,t,n,i){return Jh(e,t,n,g$(i),p$(i))}function zO(e){return 1+~~(new Date(e).getMonth()/3)}function PO(e){return 1+~~(new Date(e).getUTCMonth()/3)}function H(e){return e!=null?z(e)?e:[e]:[]}function LO(e,t,n){let i=e[0],r=e[1],o;return r<i&&(o=r,r=i,i=o),o=r-i,o>=n-t?[t,n]:[i=Math.min(Math.max(i,t),n-o),i+o]}function ce(e){return typeof e=="function"}const IO="descending";function b$(e,t,n){n=n||{},t=H(t)||[];const i=[],r=[],o={},s=n.comparator||BO;return H(e).forEach((a,u)=>{a!=null&&(i.push(t[u]===IO?-1:1),r.push(a=ce(a)?a:hi(a,null,n)),(Qt(a)||[]).forEach(l=>o[l]=1))}),r.length===0?null:Nn(s(r,i),Object.keys(o))}const eg=(e,t)=>(e<t||e==null)&&t!=null?-1:(e>t||t==null)&&e!=null?1:(t=t instanceof Date?+t:t,(e=e instanceof Date?+e:e)!==e&&t===t?-1:t!==t&&e===e?1:0),BO=(e,t)=>
1e.length===1?UO(e[0],t[0]):jO(e,t,e.length),UO=(e,t)=>function(n,i){return eg(e(n),e(i))*t},jO=(e,t,n)=>(t.push(0),function(i,r){let o,s=0,a=-1;for(;s===0&&++a<n;)o=e[a],s=eg(o(i),o(r));return s*t[a]});function rn(e){return ce(e)?e:()=>e}function v$(e,t){let n;return i=>{n&&clearTimeout(n),n=setTimeout(()=>(t(i),n=null),e)}}function le(e){for(let t,n,i=1,r=arguments.length;i<r;++i){t=arguments[i];for(n in t)e[n]=t[n]}return e}function Ir(e,t){let n=0,i,r,o,s;if(e&&(i=e.length))if(t==null){for(r=e[n];n<i&&(r==null||r!==r);r=e[++n]);for(o=s=r;n<i;++n)r=e[n],r!=null&&(r<o&&(o=r),r>s&&(s=r))}else{for(r=t(e[n]);n<i&&(r==null||r!==r);r=t(e[++n]));for(o=s=r;n<i;++n)r=t(e[n]),r!=null&&(r<o&&(o=r),r>s&&(s=r))}return[o,s]}function qO(e,t){const n=e.length;let i=-1,r,o,s,a,u;if(t==null){for(;++i<n;)if(o=e[i],o!=null&&o>=o){r=s=o;break}if(i===n)return[-1,-1];for(a=u=i;++i<n;)o=e[i],o!=null&&(r>o&&(r=o,a=i),s<o&&(s=o,u=i))}else{for(;++i<n;)if(o=t(e[i],i,e),o!=null&&o>=o){r=s=o;break}if(i===n)return[-1,-1];for(a=u=i;++i<n;)o=t(e[i],i,e),o!=null&&(r>o&&(r=o,a=i),s<o&&(s=o,u=i))}return[a,u]}function X(e,t){return Object.hasOwn(e,t)}const hf={};function vc(e){let t={},n;function i(o){return X(t,o)&&t[o]!==hf}const r={size:0,empty:0,object:t,has:i,get(o){return i(o)?t[o]:void 0},set(o,s){return i(o)||(++r.size,t[o]===hf&&--r.empty),t[o]=s,this},delete(o){return i(o)&&(--r.size,++r.empty,t[o]=hf),this},clear(){r.size=r.empty=0,r.object=t={}},test(o){return arguments.length?(n=o,r):n},clean(){const o={};let s=0;for(const a in t){const u=t[a];u!==hf&&(!n||!n(u))&&(o[a]=u,++s)}r.size=s,r.empty=0,r.object=t=o}};return e&&Object.keys(e).forEach(o=>{r.set(o,e[o])}),r}function WO(e,t,n,i,r,o){if(!n&&n!==0)return o;const s=+n;let a=e[0],u=xe(e),l;u<a&&(l=a,a=u,u=l),l=Math.abs(t-a);const c=Math.abs(u-t);return l<c&&l<=s?i:c<=s?r:o}function q(e,t,n){const i=e.prototype=Object.create(t.prototype);return Object.defineProperty(i,"constructor",{value:e,writable:!0,enumerable:!0,configurable:!0}),le(i,n)}function al(e,t,n,i){let r=t[0],o=t[t.length-1],s;return r>o&&(s=r,r=o,o=s),n=n===void 0||n,i=i===void 0||i,(n?r<=e:r<e)&&(i?e<=o:e<o)}function wu(e){return typeof e=="boolean"}function xs(e){return Object.prototype.toString.call(e)==="[object Date]"}function HO(e){return e&&ce(e[Symbol.iterator])}function Ce(e){return typeof e=="number"}function w$(e){return Object.prototype.toString.call(e)==="[object RegExp]"}function Y(e){return typeof e=="string"}function _$(e,t,n){e&&(e=t?H(e).map(a=>a.replace(/\\(.)/g,"$1")):H(e));const i=e&&e.length,r=n&&n.get||u$,o=a=>r(t?[a]:Yr(a));let s;if(!i)s=function(){return""};else if(i===1){const a=o(e[0]);s=function(u){return""+a(u)}}else{const a=e.map(o);s=function(u){let l=""+a[0](u),c=0;for(;++c<i;)l+="|"+a[c](u);return l}}return Nn(s,e,"key")}function GO(e,t){const n=e[0],i=xe(e),r=+t;return r?r===1?i:n+r*(i-n):n}const VO=1e4;function YO(e){e=+e||VO;let t,n,i;const r=()=>{t={},n={},i=0},o=(s,a)=>(++i>e&&(n=t,t={},i=1),t[s]=a);return r(),{clear:r,has:s=>X(t,s)||X(n,s),get:s=>X(t,s)?t[s]:X(n,s)?o(s,n[s]):void 0,set:(s,a)=>X(t,s)?t[s]=a:o(s,a)}}function XO(e,t,n,i){const r=t.length,o=n.length;if(!o)return t;if(!r)return n;const s=i||new t.constructor(r+o);let a=0,u=0,l=0;for(;a<r&&u<o;++l)s[l]=e(t[a],n[u])>0?n[u++]:t[a++];for(;a<r;++a,++l)s[l]=t[a];for(;u<o;++u,++l)s[l]=n[u];return s}function gf(e,t){let n="";for(;--t>=0;)n+=e;return n}function KO(e,t,n,i){const r=n||" ",o=e+"",s=t-o.length;return s<=0?o:i==="left"?gf(r,s)+o:i==="center"?gf(r,~~(s/2))+o+gf(r,Math.ceil(s/2)):o+gf(r,s)}function tg(e){return e&&xe(e)-e[0]||0}function j(e){return z(e)?"["+e.map(j)+"]":V(e)||Y(e)?JSON.stringify(e).replace("\u2028","\\u2028").replace("\u2029","\\u2029"):e}function S$(e){return e==null||e===""?null:!e||e==="false"||e==="0"?!1:!!e}const ZO=e=>Ce(e)||xs(e)?e:Date.parse(e);function E$(e,t){return t=t||ZO,e==null||e===""?null:t(e)}function k$(e){return e==null||e===""?null:e+""}function Gi(e){const t={},n=e.length;for(let i=0;i<n;++i)t[e[i]]=!0;return t}function QO(e,t,n,i){const r=i??"…",o=e+"",s=o.length,a=Math.max(0,t-r.length);return s<=t?o:n==="left"?r+o.slice(s-a):n==="center"?o.slice(0,Math.ceil(a/2))+r+o.slice(s-~~(a/2)):o.slice(0,a)+r}function is(e,t,n){if(e)if(t){const i=e.length;for(let r=0;r<i;++r){const o=t(e[r]);o&&n(o,r,e)}}else e.forEach(n)}var uw={},Gp={},Vp=34,Uu=10,Yp=13;function $$(e){return new Function("d","return {"+e.map(function(t,n){return JSON.stringify(t)+": d["+n+'] || ""'}).join(",")+"}")}function JO(e,t){var n=$$(e);return function(i,r){return t(n(i),r,e)}}function lw(e){var t=Object.create(null),n=[];return e.forEach(function(i){for(var r in i)r in t||n.push(t[r]=r)}),n}function cn(e,t){var n=e+"",i=n.length;return i<t?new Array(t-i+1).join(0)+n:n}function e6(e){return e<0?"-"+cn(-e,6):e>9999?"+"+cn(e,6):cn(e,4)}function t6(e){var t=e.getUTCHours(),n=e.getUTCMinutes(),i=e.getUTCSeconds(),r=e.getUTCMilliseconds();return isNaN(e)?"Invalid Date":e6(e.getUTCFullYear())+"-"+cn(e.getUTCMonth()+1,2)+"-"+cn(e.getUTCDate(),2)+(r?"T"+cn(t,2)+":"+cn(n,2)+":"+cn(i,2)+"."+cn(r,3)+"Z":i?"T"+cn(t,2)+":"+cn(n,2)+":"+cn(i,2)+"Z":n||t?"T"+cn(t,2)+":"+cn(n,2)+"Z":"")}function n6(e){var t=new RegExp('["'+e+`
2\r]`),n=e.charCodeAt(0);function i(f,d){var h,g,p=r(f,function(m,y){if(h)return h(m,y-1);g=m,h=d?JO(m,d):$$(m)});return p.columns=g||[],p}function r(f,d){var h=[],g=f.length,p=0,m=0,y,x=g<=0,b=!1;f.charCodeAt(g-1)===Uu&&--g,f.charCodeAt(g-1)===Yp&&--g;function v(){if(x)return Gp;if(b)return b=!1,uw;var S,_=p,E;if(f.charCodeAt(_)===Vp){for(;p++<g&&f.charCodeAt(p)!==Vp||f.charCodeAt(++p)===Vp;);return(S=p)>=g?x=!0:(E=f.charCodeAt(p++))===Uu?b=!0:E===Yp&&(b=!0,f.charCodeAt(p)===Uu&&
2++p),f.slice(_+1,S-1).replace(/""/g,'"')}for(;p<g;){if((E=f.charCodeAt(S=p++))===Uu)b=!0;else if(E===Yp)b=!0,f.charCodeAt(p)===Uu&&++p;else if(E!==n)continue;return f.slice(_,S)}return x=!0,f.slice(_,g)}for(;(y=v())!==Gp;){for(var w=[];y!==uw&&y!==Gp;)w.push(y),y=v();d&&(w=d(w,m++))==null||h.push(w)}return h}function o(f,d){return f.map(function(h){return d.map(function(g){return c(h[g])}).join(e)})}function s(f,d){return d==null&&(d=lw(f)),[d.map(c).join(e)].concat(o(f,d)).join(`
3`)}function a(f,d){return d==null&&(d=lw(f)),o(f,d).join(`
4`)}function u(f){return f.map(l).join(`
5`)}function l(f){return f.map(c).join(e)}function c(f){return f==null?"":f instanceof Date?t6(f):t.test(f+="")?'"'+f.replace(/"/g,'""')+'"':f}return{parse:i,parseRows:r,format:s,formatBody:a,formatRows:u,formatRow:l,formatValue:c}}function i6(e){return e}function r6(e){if(e==null)return i6;var t,n,i=e.scale[0],r=e.scale[1],o=e.translate[0],s=e.translate[1];return function(a,u){u||(t=n=0);var l=2,c=a.length,f=new Array(c);for(f[0]=(t+=a[0])*i+o,f[1]=(n+=a[1])*r+s;l<c;)f[l]=a[l],++l;return f}}function o6(e,t){for(var n,i=e.length,r=i-t;r<--i;)n=e[r],e[r++]=e[i],e[i]=n}function s6(e,t){return typeof t=="string"&&(t=e.objects[t]),t.type==="GeometryCollection"?{type:"FeatureCollection",features:t.geometries.map(function(n){return cw(e,n)})}:cw(e,t)}function cw(e,t){var n=t.id,i=t.bbox,r=t.properties==null?{}:t.properties,o=A$(e,t);return n==null&&i==null?{type:"Feature",properties:r,geometry:o}:i==null?{type:"Feature",id:n,properties:r,geometry:o}:{type:"Feature",id:n,bbox:i,properties:r,geometry:o}}function A$(e,t){var n=r6(e.transform),i=e.arcs;function r(c,f){f.length&&f.pop();for(var d=i[c<0?~c:c],h=0,g=d.length;h<g;++h)f.push(n(d[h],h));c<0&&o6(f,g)}function o(c){return n(c)}function s(c){for(var f=[],d=0,h=c.length;d<h;++d)r(c[d],f);return f.length<2&&f.push(f[0]),f}function a(c){for(var f=s(c);f.length<4;)f.push(f[0]);return f}function u(c){return c.map(a)}function l(c){var f=c.type,d;switch(f){case"GeometryCollection":return{type:f,geometries:c.geometries.map(l)};case"Point":d=o(c.coordinates);break;case"MultiPoint":d=c.coordinates.map(o);break;case"LineString":d=s(c.arcs);break;case"MultiLineString":d=c.arcs.map(s);break;case"Polygon":d=u(c.arcs);break;case"MultiPolygon":d=c.arcs.map(u);break;default:return null}return{type:f,coordinates:d}}return l(t)}function a6(e,t){var n={},i={},r={},o=[],s=-1;t.forEach(function(l,c){var f=e.arcs[l<0?~l:l],d;f.length<3&&!f[1][0]&&!f[1][1]&&(d=t[++s],t[s]=l,t[c]=d)}),t.forEach(function(l){var c=a(l),f=c[0],d=c[1],h,g;if(h=r[f])if(delete r[h.end],h.push(l),h.end=d,g=i[d]){delete i[g.start];var p=g===h?h:h.concat(g);i[p.start=h.start]=r[p.end=g.end]=p}else i[h.start]=r[h.end]=h;else if(h=i[d])if(delete i[h.start],h.unshift(l),h.start=f,g=r[f]){delete r[g.end];var m=g===h?h:g.concat(h);i[m.start=g.start]=r[m.end=h.end]=m}else i[h.start]=r[h.end]=h;else h=[l],i[h.start=f]=r[h.end=d]=h});function a(l){var c=e.arcs[l<0?~l:l],f=c[0],d;return e.transform?(d=[0,0],c.forEach(function(h){d[0]+=h[0],d[1]+=h[1]})):d=c[c.length-1],l<0?[d,f]:[f,d]}function u(l,c){for(var f in l){var d=l[f];delete c[d.start],delete d.start,delete d.end,d.forEach(function(h){n[h<0?~h:h]=1}),o.push(d)}}return u(r,i),u(i,r),t.forEach(function(l){n[l<0?~l:l]||o.push([l])}),o}function u6(e){return A$(e,l6.apply(this,arguments))}function l6(e,t,n){var i,r,o;if(arguments.length>1)i=c6(e,t,n);else for(r=0,i=new Array(o=e.arcs.length);r<o;++r)i[r]=r;return{type:"MultiLineString",arcs:a6(e,i)}}function c6(e,t,n){var i=[],r=[],o;function s(f){var d=f<0?~f:f;(r[d]||(r[d]=[])).push({i:f,g:o})}function a(f){f.forEach(s)}function u(f){f.forEach(a)}function l(f){f.forEach(u)}function c(f){switch(o=f,f.type){case"GeometryCollection":f.geometries.forEach(c);break;case"LineString":a(f.arcs);break;case"MultiLineString":case"Polygon":u(f.arcs);break;case"MultiPolygon":l(f.arcs);break}}return c(t),r.forEach(n==null?function(f){i.push(f[0].i)}:function(f){n(f[0].g,f[f.length-1].g)&&i.push(f[0].i)}),i}function Dr(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function f6(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function _u(e){let t,n,i;e.length!==2?(t=Dr,n=(a,u)=>Dr(e(a),u),i=(a,u)=>e(a)-u):(t=e===Dr||e===f6?e:d6,n=e,i=e);function r(a,u,l=0,c=a.length){if(l<c){if(t(u,u)!==0)return c;do{const f=l+c>>>1;n(a[f],u)<0?l=f+1:c=f}while(l<c)}return l}function o(a,u,l=0,c=a.length){if(l<c){if(t(u,u)!==0)return c;do{const f=l+c>>>1;n(a[f],u)<=0?l=f+1:c=f}while(l<c)}return l}function s(a,u,l=0,c=a.length){const f=r(a,u,l,c-1);return f>l&&i(a[f-1],u)>-i(a[f],u)?f-1:f}return{left:r,center:s,right:o}}function d6(){return 0}function C$(e){return e===null?NaN:+e}function*h6(e,t){if(t===void 0)for(let n of e)n!=null&&(n=+n)>=n&&(yield n);else{let n=-1;for(let i of e)(i=t(i,++n,e))!=null&&(i=+i)>=i&&(yield i)}}const M$=_u(Dr),Eo=M$.right,g6=M$.left;_u(C$).center;function p6(e,t){let n=0,i,r=0,o=0;if(t===void 0)for(let s of e)s!=null&&(s=+s)>=s&&(i=s-r,r+=i/++n,o+=i*(s-r));else{let s=-1;for(let a of e)(a=t(a,++s,e))!=null&&(a=+a)>=a&&(i=a-r,r+=i/++n,o+=i*(a-r))}if(n>1)return o/(n-1)}function m6(e,t){const n=p6(e,t);return n&&Math.sqrt(n)}class Jt{constructor(){this._partials=new Float64Array(32),this._n=0}add(t){const n=this._partials;let i=0;for(let r=0;r<this._n&&r<32;r++){const o=n[r],s=t+o,a=Math.abs(t)<Math.abs(o)?t-(s-o):o-(s-t);a&&(n[i++]=a),t=s}return n[i]=t,this._n=i+1,this}valueOf(){const t=this._partials;let n=this._n,i,r,o,s=0;if(n>0){for(s=t[--n];n>
50&&(i=s,r=t[--n],s=i+r,o=r-(s-i),!o););n>0&&(o<0&&t[n-1]<0||o>0&&t[n-1]>0)&&(r=o*2,i=s+r,r==i-s&&(s=i))}return s}}class fw extends Map{constructor(t,n=T$){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[i,r]of t)this.set(i,r)}get(t){return super.get(p0(this,t))}has(t){return super.has(p0(this,t))}set(t,n){return super.set(F$(this,t),n)}delete(t){return super.delete(D$(this,t))}}class _d extends Set{constructor(t,n=T$){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const i of t)this.add(i)}has(t){return super.has(p0(this,t))}add(t){return super.add(F$(this,t))}delete(t){return super.delete(D$(this,t))}}function p0({_intern:e,_key:t},n){const i=t(n);return e.has(i)?e.get(i):n}function F$({_intern:e,_key:t},n){const i=t(n);return e.has(i)?e.get(i):(e.set(i,n),n)}function D$({_intern:e,_key:t},n){const i=t(n);return e.has(i)&&(n=e.get(i),e.delete(i)),n}function T$(e){return e!==null&&typeof e=="object"?e.valueOf():e}function y6(e,t){return Array.from(t,n=>e[n])}function x6(e=Dr){if(e===Dr)return N$;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const i=e(t,n);return i||i===0?i:(e(n,n)===0)-(e(t,t)===0)}}function N$(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}const b6=Math.sqrt(50),v6=Math.sqrt(10),w6=Math.sqrt(2);function Sd(e,t,n){const i=(t-e)/Math.max(0,n),r=Math.floor(Math.log10(i)),o=i/Math.pow(10,r),s=o>=b6?10:o>=v6?5:o>=w6?2:1;let a,u,l;return r<0?(l=Math.pow(10,-r)/s,a=Math.round(e*l),u=Math.round(t*l),a/l<e&&++a,u/l>t&&--u,l=-l):(l=Math.pow(10,r)*s,a=Math.round(e/l),u=Math.round(t/l),a*l<e&&++a,u*l>t&&--u),u<a&&.5<=n&&n<2?Sd(e,t,n*2):[a,u,l]}function m0(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];const i=t<e,[r,o,s]=i?Sd(t,e,n):Sd(e,t,n);if(!(o>=r))return[];const a=o-r+1,u=new Array(a);if(i)if(s<0)for(let l=0;l<a;++l)u[l]=(o-l)/-s;else for(let l=0;l<a;++l)u[l]=(o-l)*s;else if(s<0)for(let l=0;l<a;++l)u[l]=(r+l)/-s;else for(let l=0;l<a;++l)u[l]=(r+l)*s;return u}function y0(e,t,n){return t=+t,e=+e,n=+n,Sd(e,t,n)[2]}function ko(e,t,n){t=+t,e=+e,n=+n;const i=t<e,r=i?y0(t,e,n):y0(e,t,n);return(i?-1:1)*(r<0?1/-r:r)}function bs(e,t){let n;if(t===void 0)for(const i of e)i!=null&&(n<i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of e)(r=t(r,++i,e))!=null&&(n<r||n===void 0&&r>=r)&&(n=r)}return n}function x0(e,t){let n;if(t===void 0)for(const i of e)i!=null&&(n>i||n===void 0&&i>=i)&&(n=i);else{let i=-1;for(let r of e)(r=t(r,++i,e))!=null&&(n>r||n===void 0&&r>=r)&&(n=r)}return n}function R$(e,t,n=0,i=1/0,r){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),i=Math.floor(Math.min(e.length-1,i)),!(n<=t&&t<=i))return e;for(r=r===void 0?N$:x6(r);i>n;){if(i-n>600){const u=i-n+1,l=t-n+1,c=Math.log(u),f=.5*Math.exp(2*c/3),d=.5*Math.sqrt(c*f*(u-f)/u)*(l-u/2<0?-1:1),h=Math.max(n,Math.floor(t-l*f/u+d)),g=Math.min(i,Math.floor(t+(u-l)*f/u+d));R$(e,t,h,g,r)}const o=e[t];let s=n,a=i;for(ju(e,n,t),r(e[i],o)>0&&ju(e,n,i);s<a;){for(ju(e,s,a),++s,--a;r(e[s],o)<0;)++s;for(;r(e[a],o)>0;)--a}r(e[n],o)===0?ju(e,n,a):(++a,ju(e,a,i)),a<=t&&(n=a+1),t<=a&&(i=a-1)}return e}function ju(e,t,n){const i=e[t];e[t]=e[n],e[n]=i}function b0(e,t,n){if(e=Float64Array.from(h6(e,n)),!(!(i=e.length)||isNaN(t=+t))){if(t<=0||i<2)return x0(e);if(t>=1)return bs(e);var i,r=(i-1)*t,o=Math.floor(r),s=bs(R$(e,o).subarray(0,o+1)),a=x0(e.subarray(o+1));return s+(a-s)*(r-o)}}function O$(e,t,n=C$){if(!(!(i=e.length)||isNaN(t=+t))){if(t<=0||i<2)return+n(e[0],0,e);if(t>=1)return+n(e[i-1],i-1,e);var i,r=(i-1)*t,o=Math.floor(r),s=+n(e[o],o,e),a=+n(e[o+1],o+1,e);return s+(a-s)*(r-o)}}function _6(e,t){let n=0,i=0;if(t===void 0)for(let r of e)r!=null&&(r=+r)>=r&&(++n,i+=r);else{let r=-1;for(let o of e)(o=t(o,++r,e))!=null&&(o=+o)>=o&&(++n,i+=o)}if(n)return i/n}function z$(e,t){return b0(e,.5,t)}function*S6(e){for(const t of e)yield*t}function P$(e){return Array.from(S6(e))}function An(e,t,n){e=+e,t=+t,n=(r=arguments.length)<2?(t=e,e=0,1):r<3?1:+n;for(var i=-1,r=Math.max(0,Math.ceil((t-e)/n))|0,o=new Array(r);++i<r;)o[i]=e+i*n;return o}function L$(e,t){let n=0;for(let i of e)(i=+i)&&(n+=i);return n}function E6(e,...t){e=new _d(e),t=t.map(k6);e:for(const n of e)for(const i of t)if(!i.has(n)){e.delete(n);continue e}return e}
vendor: 5,280 bytes, line 5
5function k6(e){return e instanceof _d?e:new _d(e)}function $6(...e){const t=new _d;for(const n of e)for(const i of n)t.add(i);return t}function A6(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Ed(e,t){if((n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"))<0)return null;var n,i=e.slice(0,n);return[i.length>1?i[0]+i.slice(2):i,+e.slice(n+1)]}function Wa(e){return e=Ed(Math.abs(e)),e?e[1]:NaN}function C6(e,t){return function(n,i){for(var r=n.length,o=[],s=0,a=e[0],u=0;r>0&&a>0&&(u+a+1>i&&(a=Math.max(1,i-u)),o.push(n.substring(r-=a,r+a)),!((u+=a+1)>i));)a=e[s=(s+1)%e.length];return o.reverse().join(t)}}function M6(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var F6=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function Ms(e){if(!(t=F6.exec(e)))throw new Error("invalid format: "+e);var t;return new Ey({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}Ms.prototype=Ey.prototype;function Ey(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Ey.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function D6(e){e:for(var t=e.length,n=1,i=-1,r;n<t;++n)switch(e[n]){case".":i=r=n;break;case"0":i===0&&(i=n),r=n;break;default:if(!+e[n])break e;i>0&&(i=0);break}return i>0?e.slice(0,i)+e.slice(r+1):e}var I$;function T6(e,t){var n=Ed(e,t);if(!n)return e+"";var i=n[0],r=n[1],o=r-(I$=Math.max(-8,Math.min(8,Math.floor(r/3)))*3)+1,s=i.length;return o===s?i:o>s?i+new Array(o-s+1).join("0"):o>0?i.slice(0,o)+"."+i.slice(o):"0."+new Array(1-o).join("0")+Ed(e,Math.max(0,t+o-1))[0]}function dw(e,t){var n=Ed(e,t);if(!n)return e+"";var i=n[0],r=n[1];return r<0?"0."+new Array(-r).join("0")+i:i.length>r+1?i.slice(0,r+1)+"."+i.slice(r+1):i+new Array(r-i.length+2).join("0")}const hw={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:A6,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>dw(e*100,t),r:dw,s:T6,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function gw(e){return e}var pw=Array.prototype.map,mw=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function B$(e){var t=e.grouping===void 0||e.thousands===void 0?gw:C6(pw.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",i=e.currency===void 0?"":e.currency[1]+"",r=e.decimal===void 0?".":e.decimal+"",o=e.numerals===void 0?gw:M6(pw.call(e.numerals,String)),s=e.percent===void 0?"%":e.percent+"",a=e.minus===void 0?"−":e.minus+"",u=e.nan===void 0?"NaN":e.nan+"";function l(f){f=Ms(f);var d=f.fill,h=f.align,g=f.sign,p=f.symbol,m=f.zero,y=f.width,x=f.comma,b=f.precision,v=f.trim,w=f.type;w==="n"?(x=!0,w="g"):hw[w]||(b===void 0&&(b=12),v=!0,w="g"),(m||d==="0"&&h==="=")&&(m=!0,d="0",h="=");var S=p==="$"?n:p==="#"&&/[boxX]/.test(w)?"0"+w.toLowerCase():"",_=p==="$"?i:/[%p]/.test(w)?s:"",E=hw[w],k=/[defgprs%]/.test(w);b=b===void 0?6:/[gprs]/.test(w)?Math.max(1,Math.min(21,b)):Math.max(0,Math.min(20,b));function A($){var D=S,M=_,O,C,N;if(w==="c")M=E($)+M,$="";else{$=+$;var G=$<0||1/$<0;if($=isNaN($)?u:E(Math.abs($),b),v&&($=D6($)),G&&+$==0&&g!=="+"&&(G=!1),D=(G?g==="("?g:a:g==="-"||g==="("?"":g)+D,M=(w==="s"?mw[8+I$/3]:"")+M+(G&&g==="("?")":""),k){for(O=-1,C=$.length;++O<C;)if(N=$.charCodeAt(O),48>N||N>57){M=(N===46?r+$.slice(O+1):$.slice(O))+M,$=$.slice(0,O);break}}}x&&!m&&($=t($,1/0));var Q=D.length+$.length+M.length,Z=Q<y?new Array(y-Q+1).join(d):"";switch(x&&m&&($=t(Z+$,Z.length?y-M.length:1/0),Z=""),h){case"<":$=D+$+M+Z;break;case"=":$=D+Z+$+M;break;case"^":$=Z.slice(0,Q=Z.length>>1)+D+$+M+Z.slice(Q);break;default:$=Z+D+$+M;break}return o($)}return A.toString=function(){return f+""},A}function c(f,d){var h=l((f=Ms(f),f.type="f",f)),g=Math.max(-8,Math.min(8,Math.floor(Wa(d)/3)))*3,p=Math.pow(10,-g),m=mw[8+g/3];return function(y){return h(p*y)+m}}return{format:l,formatPrefix:c}}var pf,ng,ky;N6({thousands:",",grouping:[3],currency:["$",""]});function N6(e){return pf=B$(e),ng=pf.format,ky=pf.formatPrefix,pf}function U$(e){return Math.max(0,-Wa(Math.abs(e)))}function j$(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Wa(t)/3)))*3-Wa(Math.abs(e)))}function q$(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Wa(t)-Wa(e))+1}const Xp=new Date,Kp=new Date;function rt(e,t,n,i){function r(o){return e(o=arguments.length===0?new Date:new Date(+o)),o}return r.floor=o=>(e(o=new Date(+o)),o),r.ceil=o=>(e(o=new Date(o-1)),t(o,1),e(o),o),r.round=o=>{const s=r(o),a=r.ceil(o);return o-s<a-o?s:a},r.offset=(o,s)=>(t(o=new Date(+o),s==null?1:Math.floor(s)),o),r.range=(o,s,a)=>{const u=[];
5if(o=r.ceil(o),a=a==null?1:Math.floor(a),!(o<s)||!(a>0))return u;let l;do u.push(l=new Date(+o)),t(o,a),e(o);while(l<o&&o<s);return u},r.filter=o=>rt(s=>{if(s>=s)for(;e(s),!o(s);)s.setTime(s-1)},(s,a)=>{if(s>=s)if(a<0)for(;++a<=0;)for(;t(s,-1),!o(s););else for(;--a>=0;)for(;t(s,1),!o(s););}),n&&(r.count=(o,s)=>(Xp.setTime(+o),Kp.setTime(+s),e(Xp),e(Kp),Math.floor(n(Xp,Kp))),r.every=o=>(o=Math.floor(o),!isFinite(o)||!(o>0)?null:o>1?r.filter(i?s=>i(s)%o===0:s=>r.count(0,s)%o===0):r)),r}const Ha=rt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Ha.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?rt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):Ha);Ha.range;const Er=1e3,zn=Er*60,kr=zn*60,Br=kr*24,$y=Br*7,yw=Br*30,Zp=Br*365,$r=rt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Er)},(e,t)=>(t-e)/Er,e=>e.getUTCSeconds());$r.range;const ig=rt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Er)},(e,t)=>{e.setTime(+e+t*zn)},(e,t)=>(t-e)/zn,e=>e.getMinutes());ig.range;const rg=rt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*zn)},(e,t)=>(t-e)/zn,e=>e.getUTCMinutes());rg.range;const og=rt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Er-e.getMinutes()*zn)},(e,t)=>{e.setTime(+e+t*kr)},(e,t)=>(t-e)/kr,e=>e.getHours());og.range;const sg=rt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*kr)},(e,t)=>(t-e)/kr,e=>e.getUTCHours());sg.range;const Tr=rt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*zn)/Br,e=>e.getDate()-1);Tr.range;const vo=rt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Br,e=>e.getUTCDate()-1);vo.range;const W$=rt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Br,e=>Math.floor(e/Br));W$.range;function Qs(e){return rt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*zn)/$y)}const Su=Qs(0),kd=Qs(1),R6=Qs(2),O6=Qs(3),Ga=Qs(4),z6=Qs(5),P6=Qs(6);Su.range;kd.range;R6.range;O6.range;Ga.range;z6.range;P6.range;function Js(e){return rt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/$y)}const Eu=Js(0),$d=Js(1),L6=Js(2),I6=Js(3),Va=Js(4),B6=Js(5),U6=Js(6);Eu.range;$d.range;L6.range;I6.range;Va.range;B6.range;U6.range;const Wl=rt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());Wl.range;const Hl=rt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());Hl.range;const Vi=rt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Vi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:rt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Vi.range;const Yi=rt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());Yi.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:rt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});Yi.range;function H$(e,t,n,i,r,o){const s=[[$r,1,Er],[$r,5,5*Er],[$r,15,15*Er],[$r,30,30*Er],[o,1,zn],[o,5,5*zn],[o,15,15*zn],[o,30,30*zn],[r,1,kr],[r,3,3*kr],[r,6,6*kr],[r,12,12*kr],[i,1,Br],[i,2,2*Br],[n,1,$y],[t,1,yw],[t,3,3*yw],[e,1,Zp]];function a(l,c,f){const d=c<l;d&&([l,c]=[c,l]);const h=f&&typeof f.range=="function"?f:u(l,c,f),g=h?h.range(l,+c+1):[];return d?g.reverse():g}function u(l,c,f){const d=Math.abs(c-l)/f,h=_u(([,,m])=>m).right(s,d);if(h===s.length)return e.every(ko(l/Zp,c/Zp,f));if(h===0)return Ha.every(Math.max(ko(l,c,f),1));const[g,p]=s[d/s[h-1][2]<s[h][2]/d?h-1:h];return g.every(p)}return[a,u]}const[j6,q6]=H$(Yi,Hl,Eu,W$,sg,rg),[W6,H6]=H$(Vi,Wl,Su,Tr,og,ig),Pt="year",Fn="quarter",en="month",ct="week",Dn="date",Vt="day",Ur="dayofyear",Hn="hours",Gn="minutes",pi="seconds",Xi="milliseconds",G$=[Pt,Fn,en,ct,Dn,Vt,Ur,Hn,Gn,pi,Xi],Qp=G$.reduce((e,t,n
5)=>(e[t]=1+n,e),{});function V$(e){const t=H(e).slice(),n={};return t.length||R("Missing time unit."),t.forEach(r=>{X(Qp,r)?n[r]=1:R(`Invalid time unit: ${r}.`)}),(n[ct]||n[Vt]?1:0)+(n[Fn]||n[en]||n[Dn]?1:0)+(n[Ur]?1:0)>1&&R(`Incompatible time units: ${e}`),t.sort((r,o)=>Qp[r]-Qp[o]),t}const G6={[Pt]:"%Y ",[Fn]:"Q%q ",[en]:"%b ",[Dn]:"%d ",[ct]:"W%U ",[Vt]:"%a ",[Ur]:"%j ",[Hn]:"%H:00",[Gn]:"00:%M",[pi]:":%S",[Xi]:".%L",[`${Pt}-${en}`]:"%Y-%m ",[`${Pt}-${en}-${Dn}`]:"%Y-%m-%d ",[`${Hn}-${Gn}`]:"%H:%M"};function V6(e,t){const n=le({},G6,t),i=V$(e),r=i.length;let o="",s=0,a,u;for(s=0;s<r;)for(a=i.length;a>s;--a)if(u=i.slice(s,a).join("-"),n[u]!=null){o+=n[u],s=a;break}return o.trim()}const as=new Date;function Ay(e){return as.setFullYear(e),as.setMonth(0),as.setDate(1),as.setHours(0,0,0,0),as}function Y6(e){return Y$(new Date(e))}function X6(e){return v0(new Date(e))}function Y$(e){return Tr.count(Ay(e.getFullYear())-1,e)}function v0(e){return Su.count(Ay(e.getFullYear())-1,e)}function w0(e){return Ay(e).getDay()}function K6(e,t,n,i,r,o,s){if(0<=e&&e<100){const a=new Date(-1,t,n,i,r,o,s);return a.setFullYear(e),a}return new Date(e,t,n,i,r,o,s)}function Z6(e){return X$(new Date(e))}function Q6(e){return _0(new Date(e))}function X$(e){const t=Date.UTC(e.getUTCFullYear(),0,1);return vo.count(t-1,e)}function _0(e){const t=Date.UTC(e.getUTCFullYear(),0,1);return Eu.count(t-1,e)}function S0(e){return as.setTime(Date.UTC(e,0,1)),as.getUTCDay()}function J6(e,t,n,i,r,o,s){if(0<=e&&e<100){const a=new Date(Date.UTC(-1,t,n,i,r,o,s));return a.setUTCFullYear(n.y),a}return new Date(Date.UTC(e,t,n,i,r,o,s))}function K$(e,t,n,i,r){const o=t||1,s=xe(e),a=(y,x,b)=>(b=b||y,e4(n[b],i[b],y===s&&o,x)),u=new Date,l=Gi(e),c=l[Pt]?a(Pt):rn(2012),f=l[en]?a(en):l[Fn]?a(Fn):ss,d=l[ct]&&l[Vt]?a(Vt,1,ct+Vt):l[ct]?a(ct,1):l[Vt]?a(Vt,1):l[Dn]?a(Dn,1):l[Ur]?a(Ur,1):bc,h=l[Hn]?a(Hn):ss,g=l[Gn]?a(Gn):ss,p=l[pi]?a(pi):ss,m=l[Xi]?a(Xi):ss;return function(y){u.setTime(+y);const x=c(u);return r(x,f(u),d(u,x),h(u),g(u),p(u),m(u))}}function e4(e,t,n,i){const r=n<=1?e:i?(o,s)=>i+n*Math.floor((e(o,s)-i)/n):(o,s)=>n*Math.floor(e(o,s)/n);return t?(o,s)=>t(r(o,s),s):r}function Ya(e,t,n){return t+e*7-(n+6)%7}const t4={[Pt]:e=>e.getFullYear(),[Fn]:e=>Math.floor(e.getMonth()/3),[en]:e=>e.getMonth(),[Dn]:e=>e.getDate(),[Hn]:e=>e.getHours(),[Gn]:e=>e.getMinutes(),[pi]:e=>e.getSeconds(),[Xi]:e=>
5e.getMilliseconds(),[Ur]:e=>Y$(e),[ct]:e=>v0(e),[ct+Vt]:(e,t)=>Ya(v0(e),e.getDay(),w0(t)),[Vt]:(e,t)=>Ya(1,e.getDay(),w0(t))},n4={[Fn]:e=>3*e,[ct]:(e,t)=>Ya(e,0,w0(t))};function i4(e,t){return K$(e,t||1,t4,n4,K6)}const r4={[Pt]:e=>e.getUTCFullYear(),[Fn]:e=>Math.floor(e.getUTCMonth()/3),[en]:e=>e.getUTCMonth(),[Dn]:e=>e.getUTCDate(),[Hn]:e=>e.getUTCHours(),[Gn]:e=>e.getUTCMinutes(),[pi]:e=>e.getUTCSeconds(),[Xi]:e=>e.getUTCMilliseconds(),[Ur]:e=>X$(e),[ct]:e=>_0(e),[Vt]:(e,t)=>Ya(1,e.getUTCDay(),S0(t)),[ct+Vt]:(e,t)=>Ya(_0(e),e.getUTCDay(),S0(t))},o4={[Fn]:e=>3*e,[ct]:(e,t)=>Ya(e,0,S0(t))};function s4(e,t){return K$(e,t||1,r4,o4,J6)}const a4={[Pt]:Vi,[Fn]:Wl.every(3),[en]:Wl,[ct]:Su,[Dn]:Tr,[Vt]:Tr,[Ur]:Tr,[Hn]:og,[Gn]:ig,[pi]:$r,[Xi]:Ha},u4={[Pt]:Yi,[Fn]:Hl.every(3),[en]:Hl,[ct]:Eu,[Dn]:vo,[Vt]:vo,[Ur]:vo,[Hn]:sg,[Gn]:rg,[pi]:$r,[Xi]:Ha};function wc(e){return a4[e]}function _c(e){return u4[e]}function Z$(e,t,n){return e?e.offset(t,n):void 0}function l4(e,t,n){return Z$(wc(e),t,n)}function c4(e,t,n){return Z$(_c(e),t,n)}function Q$(e,t,n,i){return e?e.range(t,n,i):void 0}function f4(e,t,n,i){return Q$(wc(e),t,n,i)}function d4(e,t,n,i){return Q$(_c(e),t,n,i)}const ul=1e3,ll=ul*60,cl=ll*60,ag=cl*24,h4=ag*7,xw=ag*30,E0=ag*365,J$=[Pt,en,Dn,Hn,Gn,pi,Xi],fl=J$.slice(0,-1),dl=fl.slice(0,-1),hl=dl.slice(0,-1),g4=hl.slice(0,-1),p4=[Pt,ct],bw=[Pt,en],eA=[Pt],qu=[[fl,1,ul],[fl,5,5*ul],[fl,15,15*ul],[fl,30,30*ul],[dl,1,ll],[dl,5,5*ll],[dl,15,15*ll],[dl,30,30*ll],[hl,1,cl],[hl,3,3*cl],[hl,6,6*cl],[hl,12,12*cl],[g4,1,ag],[p4,1,h4],[bw,1,xw],[bw,3,3*xw],[eA,1,E0]];function m4(e){const t=e.extent,n=e.maxbins||40,i=Math.abs(tg(t))/n;let r=_u(a=>a[2]).right(qu,i),o,s;return r===qu.length?(o=eA,s=ko(t[0]/E0,t[1]/E0,n)):r?(r=qu[i/qu[r-1][2]<qu[r][2]/i?r-1:r],o=r[0],s=r[1]):(o=J$,s=Math.max(ko(t[0],t[1],n),1)),{units:o,step:s}}function Jp(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function em(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function Wu(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function tA(e){var t=e.dateTime,n=e.date,i=e.time,r=e.periods,o=e.days,s=e.shortDays,a=e.months,u=e.shortMonths,l=Hu(r),c=Gu(r),f=Hu(o),d=Gu(o),h=Hu(s),g=Gu(s),p=Hu(a),m=Gu(a),y=Hu(u),x=Gu(u),b={a:G,A:Q,b:Z,B:_e,c:null,d:kw,e:kw,f:I4,g:X4,G:Z4,H:z4,I:P4,j:L4,L:nA,m:B4,M:U4,p:Ge,q:vt,Q:Cw,s:Mw,S:j4,u:q4,U:W4,V:H4,w:G4,W:V4,x:null,X:null,y:Y4,Y:K4,Z:Q4,"%":Aw},v={a:st,A:wn,b:Ve,B:Mi,c:null,d:$w,e:$w,f:n8,g:d8,G:g8,H:J4,I:e8,j:t8,L:rA,m:i8,M:r8,p:Zo,q:ro,Q:Cw,s:Mw,S:o8,u:s8,U:a8,V:u8,w:l8,W:c8,x:null,X:null,y:f8,Y:h8,Z:p8,"%":Aw},w={a:A,A:$,b:D,B:M,c:O,d:Sw,e:Sw,f:T4,g:_w,G:ww,H:Ew,I:Ew,j:C4,L:D4,m:A4,M:M4,p:k,q:$4,Q:R4,s:O4,S:F4,u:w4,U:_4,V:S4,w:v4,W:E4,x:C,X:N,y:_w,Y:ww,Z:k4,"%":N4};b.x=S(n,b),b.X=S(i,b),b.c=S(t,b),v.x=S(n,v),v.X=S(i,v),v.c=S(t,v);function S(K,ue){return function(de){var B=[],wt=-1,ke=0,at=K.length,Ft,hr,rw;for(de instanceof Date||(de=new Date(+de));++wt<at;)K.charCodeAt(wt)===37&&(B.push(K.slice(ke,wt)),(hr=vw[Ft=K.charAt(++wt)])!=null?Ft=K.charAt(++wt):hr=Ft==="e"?" ":"0",(rw=ue[Ft])&&(Ft=rw(de,hr)),B.push(Ft),ke=wt+1);return B.push(K.slice(ke,wt)),B.join("")}}function _(K,ue){return function(de){var B=Wu(1900,void 0,1),wt=E(B,K,de+="",0),ke,at;if(wt!=de.length)return null;if("Q"in B)return new Date(B.Q);if("s"in B)return new Date(B.s*1e3+("L"in B?B.L:0));if(ue&&!("Z"in B)&&(B.Z=0),"p"in B&&(B.H=B.H%12+B.p*12),B.m===void 0&&(B.m="q"in B?B.q:0),"V"in B){if(B.V<1||B.V>53)return null;"w"in B||(B.w=1),"Z"in B?(ke=em(Wu(B.y,0,1)),at=ke.getUTCDay(),ke=at>4||at===0?$d.ceil(ke):$d(ke),ke=vo.offset(ke,(B.V-1)*7),B.y=ke.getUTCFullYear(),B.m=ke.getUTCMonth(),B.d=ke.getUTCDate()+(B.w+6)%7):(ke=Jp(Wu(B.y,0,1)),at=ke.getDay(),ke=at>4||at===0?kd.ceil(ke):kd(ke),ke=Tr.offset(ke,(B.V-1)*7),B.y=ke.getFullYear(),B.m=ke.getMonth(),B.d=ke.getDate()+(B.w+6)%7)}else("W"in B||"U"in B)&&("w"in B||(B.w="u"in B?B.u%7:"W"in B?1:0),at="Z"in B?em(Wu(B.y,0,1)).getUTCDay():Jp(Wu(B.y,0,1)).getDay(),B.m=0,B.d="W"in B?(B.w+6)%7+B.W*7-(at+5)%7:B.w+B.U*7-(at+6)%7);return"Z"in B?(B.H+=B.Z/100|0,B.M+=B.Z%100,em(B)):Jp(B)}}function E(K,ue,de,B){for(var wt=0,ke=ue.length,at=de.length,Ft,hr;wt<ke;){if(B>=at)return-1;if(Ft=ue.charCodeAt(wt++),Ft===37){if(Ft=ue.charAt(wt++),hr=w[Ft in vw?ue.charAt(wt++):Ft],!hr||(B=hr(K,de,B))<0)return-1}else if(Ft!=de.charCodeAt(B++))return-1}return B}function k(K,ue,de){var B=l.exec(ue.slice(de));
vendor: 6,070 bytes, line 5
5return B?(K.p=c.get(B[0].toLowerCase()),de+B[0].length):-1}function A(K,ue,de){var B=h.exec(ue.slice(de));return B?(K.w=g.get(B[0].toLowerCase()),de+B[0].length):-1}function $(K,ue,de){var B=f.exec(ue.slice(de));return B?(K.w=d.get(B[0].toLowerCase()),de+B[0].length):-1}function D(K,ue,de){var B=y.exec(ue.slice(de));return B?(K.m=x.get(B[0].toLowerCase()),de+B[0].length):-1}function M(K,ue,de){var B=p.exec(ue.slice(de));return B?(K.m=m.get(B[0].toLowerCase()),de+B[0].length):-1}function O(K,ue,de){return E(K,t,ue,de)}function C(K,ue,de){return E(K,n,ue,de)}function N(K,ue,de){return E(K,i,ue,de)}function G(K){return s[K.getDay()]}function Q(K){return o[K.getDay()]}function Z(K){return u[K.getMonth()]}function _e(K){return a[K.getMonth()]}function Ge(K){return r[+(K.getHours()>=12)]}function vt(K){return 1+~~(K.getMonth()/3)}function st(K){return s[K.getUTCDay()]}function wn(K){return o[K.getUTCDay()]}function Ve(K){return u[K.getUTCMonth()]}function Mi(K){return a[K.getUTCMonth()]}function Zo(K){return r[+(K.getUTCHours()>=12)]}function ro(K){return 1+~~(K.getUTCMonth()/3)}return{format:function(K){var ue=S(K+="",b);return ue.toString=function(){return K},ue},parse:function(K){var ue=_(K+="",!1);return ue.toString=function(){return K},ue},utcFormat:function(K){var ue=S(K+="",v);return ue.toString=function(){return K},ue},utcParse:function(K){var ue=_(K+="",!0);return ue.toString=function(){return K},ue}}}var vw={"-":"",_:" ",0:"0"},xt=/^\s*\d+/,y4=/^%/,x4=/[\\^$*+?|[\]().{}]/g;function ve(e,t,n){var i=e<0?"-":"",r=(i?-e:e)+"",o=r.length;return i+(o<n?new Array(n-o+1).join(t)+r:r)}function b4(e){return e.replace(x4,"\\$&")}function Hu(e){return new RegExp("^(?:"+e.map(b4).join("|")+")","i")}function Gu(e){return new Map(e.map((t,n)=>[t.toLowerCase(),n]))}function v4(e,t,n){var i=xt.exec(t.slice(n,n+1));return i?(e.w=+i[0],n+i[0].length):-1}function w4(e,t,n){var i=xt.exec(t.slice(n,n+1));return i?(e.u=+i[0],n+i[0].length):-1}function _4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.U=+i[0],n+i[0].length):-1}function S4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.V=+i[0],n+i[0].length):-1}function E4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.W=+i[0],n+i[0].length):-1}function ww(e,t,n){var i=xt.exec(t.slice(n,n+4));return i?(e.y=+i[0],n+i[0].length):-1}function _w(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.y=+i[0]+(+i[0]>68?1900:2e3),n+i[0].length):-1}function k4(e,t,n){var i=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return i?(e.Z=i[1]?0:-(i[2]+(i[3]||"00")),n+i[0].length):-1}function $4(e,t,n){var i=xt.exec(t.slice(n,n+1));return i?(e.q=i[0]*3-3,n+i[0].length):-1}function A4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.m=i[0]-1,n+i[0].length):-1}function Sw(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.d=+i[0],n+i[0].length):-1}function C4(e,t,n){var i=xt.exec(t.slice(n,n+3));return i?(e.m=0,e.d=+i[0],n+i[0].length):-1}function Ew(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.H=+i[0],n+i[0].length):-1}function M4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.M=+i[0],n+i[0].length):-1}function F4(e,t,n){var i=xt.exec(t.slice(n,n+2));return i?(e.S=+i[0],n+i[0].length):-1}function D4(e,t,n){var i=xt.exec(t.slice(n,n+3));return i?(e.L=+i[0],n+i[0].length):-1}function T4(e,t,n){var i=xt.exec(t.slice(n,n+6));return i?(e.L=Math.floor(i[0]/1e3),n+i[0].length):-1}function N4(e,t,n){var i=y4.exec(t.slice(n,n+1));return i?n+i[0].length:-1}function R4(e,t,n){var i=xt.exec(t.slice(n));return i?(e.Q=+i[0],n+i[0].length):-1}function O4(e,t,n){var i=xt.exec(t.slice(n));return i?(e.s=+i[0],n+i[0].length):-1}function kw(e,t){return ve(e.getDate(),t,2)}function z4(e,t){return ve(e.getHours(),t,2)}function P4(e,t){return ve(e.getHours()%12||12,t,2)}function L4(e,t){return ve(1+Tr.count(Vi(e),e),t,3)}function nA(e,t){return ve(e.getMilliseconds(),t,3)}function I4(e,t){return nA(e,t)+"000"}function B4(e,t){return ve(e.getMonth()+1,t,2)}function U4(e,t){return ve(e.getMinutes(),t,2)}function j4(e,t){return ve(e.getSeconds(),t,2)}function q4(e){var t=e.getDay();return t===0?7:t}function W4(e,t){return ve(Su.count(Vi(e)-1,e),t,2)}function iA(e){var t=e.getDay();return t>=4||t===0?Ga(e):Ga.ceil(e)}function H4(e,t){return e=iA(e),ve(Ga.count(Vi(e),e)+(Vi(e).getDay()===4),t,2)}function G4(e){return e.getDay()}function V4(e,t){return ve(kd.count(Vi(e)-1,e),t,2)}function Y4(e,t){return ve(e.getFullYear()%100,t,2)}function X4(e,t){return e=iA(e),ve(e.getFullYear()%100,t,2)}function K4(e,t){return ve(e.getFullYear()%1e4,t,4)}function Z4(e,t){var n=e.getDay();return e=n>=4||n===0?Ga(e):Ga.ceil(e),ve(e.getFullYear()%1e4,t,4)}function Q4(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+ve(t/60|0,"0",2)+ve(t%60,"0",2)}function $w(e,t){return ve(e.getUTCDate(),t,2)}function J4(e,t){return ve(e.getUTCHours(),t,2)}function e8(e,t){return ve(e.getUTCHours()%12||12,t,2)}function t8(e,t){return ve(1+vo.count(Yi(e),e),t,3)}function rA(e,t){return ve(e.getUTCMilliseconds(),t,3)}function n8(e,t){return rA(e,t)+"000"}function i8(e,t){return ve(e.getUTCMonth()+1,t,2)}function r8(e,t){return ve(e.getUTCMinutes(),t,2)}function o8(e,t){return ve(e.getUTCSeconds(),t,2)}function s8(e){var t=e.getUTCDay();return t===0?7:t}function a8(e,t){return ve(Eu.count(Yi(e)-1,e),t,2)}function oA(e){var t=e.getUTCDay();return t>=4||t===0?Va(e):Va.ceil(e)}function u8(e,t){return e=oA(e),ve(Va.count(Yi(e),e)+(Yi(e).getUTCDay()===4),t,2)}function l8(e){return e.getUTCDay()}function c8(e,t){return ve($d.count(Yi(e)-1,e),t,2)}function f8(e,t){return ve(e.getUTCFullYear()%100,t,2)}function d8(e,t){return e=oA(e),ve(e.getUTCFullYear()%100,t,2)}function h8(e,t){return ve(e.getUTCFullYear()%1e4,t,4)}function g8(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Va(e):Va.ceil(e),ve(e.getUTCFullYear()%1e4,t,4)}function p8(){return"+0000"}function Aw(){return"%"}function Cw(e){return+e}function Mw(e){return Math.floor(+e/1e3)}var ya,Cy,sA,My,aA;m8({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Frid
5ay","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function m8(e){return ya=tA(e),Cy=ya.format,sA=ya.parse,My=ya.utcFormat,aA=ya.utcParse,ya}function gl(e){const t={};return n=>t[n]||(t[n]=e(n))}function y8(e,t){return n=>{const i=e(n),r=i.indexOf(t);if(r<0)return i;let o=x8(i,r);const s=o<i.length?i.slice(o):"";for(;--o>r;)if(i[o]!=="0"){++o;break}return i.slice(0,o)+s}}function x8(e,t){let n=e.lastIndexOf("e"),i;if(n>0)return n;for(n=e.length;--n>t;)if(i=e.charCodeAt(n),i>=48&&i<=57)return n+1}function uA(e){const t=gl(e.format),n=e.formatPrefix;return{format:t,formatPrefix:n,formatFloat(i){const r=Ms(i||",");if(r.precision==null){switch(r.precision=12,r.type){case"%":r.precision-=2;break;case"e":r.precision-=1;break}return y8(t(r),t(".1f")(1)[1])}else return t(r)},formatSpan(i,r,o,s){s=Ms(s??",f");const a=ko(i,r,o),u=Math.max(Math.abs(i),Math.abs(r));let l;if(s.precision==null)switch(s.type){case"s":return isNaN(l=j$(a,u))||(s.precision=l),n(s,u);case"":case"e":case"g":case"p":case"r":{isNaN(l=q$(a,u))||(s.precision=l-(s.type==="e"));break}case"f":case"%":{isNaN(l=U$(a))||(s.precision=l-(s.type==="%")*2);break}}return t(s)}}}let k0;b8();function b8(){return k0=uA({format:ng,formatPrefix:ky})}function lA(e){return uA(B$(e))}function $0(e){return arguments.length?k0=lA(e):k0}function Fw(e,t,n){n=n||{},V(n)||R(`Invalid time multi-format specifier: ${n}`);const i=t(pi),r=t(Gn),o=t(Hn),s=t(Dn),a=t(ct),u=t(en),l=t(Fn),c=t(Pt),f=e(n[Xi]||".%L"),d=e(n[pi]||":%S"),h=e(n[Gn]||"%I:%M"),g=e(n[Hn]||"%I %p"),p=e(n[Dn]||n[Vt]||"%a %d"),m=e(n[ct]||"%b %d"),y=e(n[en]||"%B"),x=e(n[Fn]||"%B"),b=e(n[Pt]||"%Y");return v=>(i(v)<v?f:r(v)<v?d:o(v)<v?h:s(v)<v?g:u(v)<v?a(v)<v?p:m:c(v)<v?l(v)<v?y:x:b)(v)}function cA(e){const t=gl(e.format),n=gl(e.utcFormat);return{timeFormat:i=>Y(i)?t(i):Fw(t,wc,i),utcFormat:i=>Y(i)?n(i):Fw(n,_c,i),timeParse:gl(e.parse),utcParse:gl(e.utcParse)}}let A0;v8();function v8(){return A0=cA({format:Cy,parse:sA,utcFormat:My,utcParse:aA})}function fA(e){return cA(tA(e))}function Ad(e){return arguments.length?A0=fA(e):A0}const C0=(e,t)=>le({},e,t);function w8(e,t){const n=e?lA(e):$0(),i=t?fA(t):Ad();return C0(n,i)}function _8(e,t){const n=arguments.length;return n&&n!==2&&R("defaultLocale expects either zero or two arguments."),n?C0($0(e),Ad(t)):C0($0(),Ad())}const S8=/^(data:|([A-Za-z]+:)?\/\/)/,E8=/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp|file|data):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i,k8=/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205f\u3000]/g,Dw="file://";function $8(e,t){return n=>({options:n||{},sanitize:C8,load:A8,fileAccess:!1,file:M8(),http:D8(e)})}async function A8(e,t){const n=await this.sanitize(e,t),i=n.href;return n.localFile?this.file(i):this.http(i,t)}async function C8(e,t){t=le({},this.options,t);const n=this.fileAccess,i={href:null};let r,o,s;const a=E8.test(e.replace(k8,""));(e==null||typeof e!="string"||!a)&&R("Sanitize failure, invalid URI: "+j(e));const u=S8.test(e);return(s=t.baseURL)&&!u&&(!e.startsWith("/")&&!s.endsWith("/")&&(e="/"+e),e=s+e),o=(r=e.startsWith(Dw))||t.mode==="file"||t.mode!=="http"&&!u&&n,r?e=e.slice(Dw.length):e.startsWith("//")&&(t.defaultProtocol==="file"?(e=e.slice(2),o=!0):e=(t.defaultProtocol||"http")+":"+e),Object.defineProperty(i,"localFile",{value:!!o}),i.href=e,t.target&&(i.target=t.target+""),t.rel&&(i.rel=t.rel+""),t.context==="image"&&t.crossOrigin&&(i.crossOrigin=t.crossOrigin+""),i}function M8(e){return F8}async function F8(){R("No file system access.")}function D8(e){return e?async function(t,n){const i=le({},this.options.http,n),r=n&&n.response,o=await e(t,i);return o.ok?ce(o[r])?o[r]():o.text():R(o.status+""+o.statusText)}:T8}async function T8(){R("No HTTP fetch method available.")}const N8=e=>e!=null&&e===e,R8=e=>e==="true"||e==="false"||e===!0||e===!1,O8=e=>!Number.isNaN(Date.parse(e)),dA=e=>!Number.isNaN(+e)&&!(e instanceof Date),z8=e=>dA(e)&&Number.isInteger(+e),Tw={boolean:S$,integer:Xt,number:Xt,date:E$,string:k$,unknown:nn},mf=[R8,z8,dA,O8],P8=["boolean","integer","number","date"];function L8(e,t){if(!e||!e.length)return"unknown";const n=e.length,i=mf.length,r=mf.map((o,s)=>s+1);for(let o=0,s=0,a,u;o<n;++o)for(u=t?e[o][t]:e[o],a=0;a<i;++a)if(r[a]&&N8(u)&&!mf[a](u)&&(r[a]=0,++s,s===mf.length))return"string";return P8[r.reduce((o,s)=>o===0?s:o,0)-1]}function I8(e,t){return t.reduce((n,i)=>
5(n[i]=L8(e,i),n),{})}function Nw(e){const t=function(n,i){const r={delimiter:e};return Fy(n,i?le(i,r):r)};return t.responseType="text",t}function Fy(e,t){return t.header&&(e=t.header.map(j).join(t.delimiter)+`
6`+e),n6(t.delimiter).parse(e+"")}Fy.responseType="text";function B8(e){return typeof Buffer=="function"&&ce(Buffer.isBuffer)?Buffer.isBuffer(e):!1}function Dy(e,t){const n=t&&t.property?hi(t.property):nn;return V(e)&&!B8(e)?U8(n(e),t):n(JSON.parse(e))}Dy.responseType="json";function U8(e,t){return!z(e)&&HO(e)&&(e=[...e]),t&&t.copy?JSON.parse(JSON.stringify(e)):e}const j8={interior:(e,t)=>e!==t,exterior:(e,t)=>e===t};function hA(e,t){let n,i,r,o;return e=Dy(e,t),t&&t.feature?(n=s6,r=t.feature):t&&t.mesh?(n=u6,r=t.mesh,o=j8[t.filter]):R("Missing TopoJSON feature or mesh parameter."),i=(i=e.objects[r])?n(e,i,o):R("Invalid TopoJSON object: "+r),i&&i.features||[i]}hA.responseType="json";const tm={dsv:Fy,csv:Nw(","),tsv:Nw("	"),json:Dy,topojson:hA};function gA(e,t){return arguments.length>1?(tm[e]=t,this):X(tm,e)?tm[e]:null}function q8(e){const t=gA(e);return t&&t.responseType||"text"}function W8(e,t,n,i){t=t||{};const r=gA(t.type||"json");return r||R("Unknown data format type: "+t.type),e=r(e,t),t.parse&&H8(e,t.parse,n,i),X(e,"columns")&&delete e.columns,e}function H8(e,t,n,i){if(!e.length)return;const r=Ad();n=n||r.timeParse,i=i||r.utcParse;let o=e.columns||Object.keys(e[0]),s,a,u,l,c,f;t==="auto"&&(t=I8(e,o)),o=Object.keys(t);const d=o.map(h=>{const g=t[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"?i:n)(m);if(!Tw[g])throw Error("Illegal format pattern: "+h+":"+g);return Tw[g]});for(u=0,c=e.length,f=o.length;u<c;++u)for(s=e[u],l=0;l<f;++l)a=o[l],s[a]=d[l](s[a])}const Ty=$8(typeof fetch<"u"&&fetch);function ug(e){const t=e||nn,n=[],i={};return n.add=r=>{const o=t(r);return i[o]||(i[o]=1,n.push(r)),n},n.remove=r=>{const o=t(r);if(i[o]){i[o]=0;const s=n.indexOf(r);s>=0&&n.splice(s,1)}return n},n}async function Xf(e,t){try{await t(e)}catch(n){e.error(n)}}const pA=Symbol("vega_id");let G8=1;function Ny(e){return!!(e&&ie(e))}function ie(e){return e[pA]}function mA(e,t){return e[pA]=t,e}function Ee(e){const t=e===Object(e)?e:{data:e};return ie(t)?t:mA(t,G8++)}function Ry(e){return lg(e,Ee({}))}function lg(e,t){for(const n in e)t[n]=e[n];return t}function yA(e,t){return mA(t,ie(e))}function ea(e,t){return e?t?(n,i)=>e(n,i)||ie(t(n))-ie(t(i)):(n,i)=>e(n,i)||ie(n)-ie(i):null}function xA(e){return e&&e.constructor===ku}function ku(){const e=[],t=[],n=[],i=[],r=[];let o=null,s=!1;return{constructor:ku,insert(a){const u=H(a),l=u.length;for(let c=0;c<l;++c)e.push(u[c]);return this},remove(a){const u=ce(a)?i:t,l=H(a),c=l.length;for(let f=0;f<c;++f)u.push(l[f]);return this},modify(a,u,l){const c={field:u,value:rn(l)};return ce(a)?(c.filter=a,r.push(c)):(c.tuple=a,n.push(c)),this},encode(a,u){return ce(a)?r.push({filter:a,field:u}):n.push({tuple:a,field:u}),this},clean(a){return o=a,this},reflow(){return s=!0,this},pulse(a,u){const l={},c={};let f,d,h,g,p,m;for(f=0,d=u.length;f<d;++f)l[ie(u[f])]=1;for(f=0,d=t.length;f<d;++f)p=t[f],l[ie(p)]=-1;for(f=0,d=i.length;f<d;++f)g=i[f],u.forEach(x=>{g(x)&&(l[ie(x)]=-1)});for(f=0,d=e.length;f<d;++f)p=e[f],m=ie(p),l[m]?l[m]=1:a.add.push(Ee(e[f]));for(f=0,d=u.length;f<d;++f)p=u[f],l[ie(p)]<0&&a.rem.push(p);function y(x,b,v){v?x[b]=v(x):a.encode=b,s||(c[ie(x)]=x)}for(f=0,d=n.length;f<d;++f)h=n[f],p=h.tuple,g=h.field,m=l[ie(p)],m>0&&(y(p,g,h.value),a.modifies(g));for(f=0,d=r.length;f<d;++f)h=r[f],g=h.filter,u.forEach(x=>{g(x)&&l[ie(x)]>0&&y(x,h.field,h.value)}),a.modifies(h.field);if(s)a.mod=t.length||i.length?u.filter(x=>l[ie(x)]>0):u.slice();else for(m in c)a.mod.push(c[m]);return(o||o==null&&(t.length||i.length))&&a.clean(!0),a}}}const Kf="_:mod:_";function Oy(){Object.defineProperty(this,Kf,{writable:!0,value:{}})}Oy.prototype={set(e,t,n,i){const r=this,o=r[e],s=r[Kf];return t!=null&&t>=0?(o[t]!==n||i)&&(o[t]=n,s[t+":"+e]=-1,s[e]=-1):(o!==n||i)&&(r[e]=n,s[e]=z(n)?1+n.length:-1),r},modified(e,t){const n=this[Kf];if(arguments.length){if(z(e)){for(let i=0;i<e.length;++i)if(n[e[i]])return!0;return!1}}else{for(const i in n)if(n[i])return!0;return!1}return t!=null&&t>=0?t+1<n[e]||!!n[t+":"+e]:!!n[e]},clear(){return this[Kf]={},this}};let V8=0;const Y8="pulse",X8=new Oy,K8=1,Z8=2;function Ne(e,t,n,i){this.id=++V8,this.value=e,this.stamp=-1,this.rank=-1,this.qrank=-1,this.flags=0,t&&(this._update=t),n&&this.parameters(n,i)}function Rw(e){return function(t){const n=this.flags;return arguments.length===0?!!(n&e):(this.flags=t?n|e:n&~e,this)}}Ne.prototype={targets(){return this._targets||(this._targets=ug(Kh))},set(e){return this.value!==e?(this.value=e,1):0},skip:Rw(K8),modified:Rw(Z8),parameters(e,t,n){t=t!==!1;const i=this._argval=this._argval||new Oy,r=this._argops=this._argops||[],o=[];let s,a,u,l;const c=(f,d,h)=>{h instanceof Ne?(h!==this&&(t&&h.targets().add(this),o.push(h)),r.push({op:h,name:f,index:d})):i.set(f,d,h)};
6for(s in e)if(a=e[s],s===Y8)H(a).forEach(f=>{f instanceof Ne?f!==this&&(f.targets().add(this),o.push(f)):R("Pulse parameters must be operator instances.")}),this.source=a;else if(z(a))for(i.set(s,-1,Array(u=a.length)),l=0;l<u;++l)c(s,l,a[l]);else c(s,-1,a);return this.marshall().clear(),n&&(r.initonly=!0),o},marshall(e){const t=this._argval||X8,n=this._argops;let i,r,o,s;if(n){const a=n.length;for(r=0;r<a;++r)i=n[r],o=i.op,s=o.modified()&&o.stamp===e,t.set(i.name,i.index,o.value,s);if(n.initonly){for(r=0;r<a;++r)i=n[r],i.op.targets().remove(this);this._argops=null,this._update=null}}return t},detach(){const e=this._argops;let t,n,i,r;if(e)for(t=0,n=e.length;t<n;++t)i=e[t],r=i.op,r._targets&&r._targets.remove(this);this.pulse=null,this.source=null},evaluate(e){const t=this._update;if(t){const n=this.marshall(e.stamp),i=t.call(this,n,e);if(n.clear(),i!==this.value)this.value=i;else if(!this.modified())return e.StopPropagation}},run(e){if(e.stamp<this.stamp)return e.StopPropagation;let t;return this.skip()?(this.skip(!1),t=0):t=this.evaluate(e),this.pulse=t||e}};function Q8(e,t,n,i){let r=1,o;return e instanceof Ne?o=e:e&&e.prototype instanceof Ne?o=new e:ce(e)?o=new Ne(null,e):(r=0,o=new Ne(e,t)),this.rank(o),r&&(i=n,n=t),n&&this.connect(o,o.parameters(n,i)),this.touch(o),o}function J8(e,t){const n=e.rank,i=t.length;for(let r=0;r<i;++r)if(n<t[r].rank){this.rerank(e);return}}let ez=0;function zy(e,t,n){this.id=++ez,this.value=null,n&&(this.receive=n),e&&(this._filter=e),t&&(this._apply=t)}function so(e,t,n){return new zy(e,t,n)}zy.prototype={_filter:gi,_apply:nn,targets(){return this._targets||(this._targets=ug(Kh))},consume(e){return arguments.length?(this._consume=!!e,this):!!this._consume},receive(e){if(this._filter(e)){const t=this.value=this._apply(e),n=this._targets,i=n?n.length:0;for(let r=0;r<i;++r)n[r].receive(t);this._consume&&(e.preventDefault(),e.stopPropagation())}},filter(e){const t=so(e);return this.targets().add(t),t},apply(e){const t=so(null,e);return this.targets().add(t),t},merge(){const e=so();this.targets().add(e);for(let t=0,n=arguments.length;t<n;++t)arguments[t].targets().add(e);return e},throttle(e){let t=-1;return this.filter(()=>{const n=Date.now();return n-t>e?(t=n,1):0})},debounce(e){const t=so();return this.targets().add(so(null,null,v$(e,n=>{const i=n.dataflow;t.receive(n),i&&i.run&&i.run()}))),t},between(e,t){let n=!1;return e.targets().add(so(null,null,()=>n=!0)),t.targets().add(so(null,null,()=>n=!1)),this.filter(()=>n)},detach(){this._filter=gi,this._targets=null}};function tz(e,t,n,i){const r=this,o=so(n,i),s=function(l){l.dataflow=r;try{o.receive(l)}catch(c){r.error(c)}finally{r.run()}};let a;typeof e=="string"&&typeof document<"u"?a=document.querySelectorAll(e):a=H(e);const u=a.length;for(let l=0;l<u;++l)a[l].addEventListener(t,s);return o}function nz(e,t){const n=this.locale();return W8(e,t,n.timeParse,n.utcParse)}function iz(e,t,n){return t=this.parse(t,n),this.pulse(e,this.changeset().insert(t))}async function rz(e,t){const n=this;let i=0,r;try{r=await n.loader().load(e,{context:"dataflow",response:q8(t&&t.type)});try{r=n.parse(r,t)}catch(o){i=-2,n.warn("Data ingestion failed",e,o)}}catch(o){i=-1,n.warn("Loading failed",e,o)}return{data:r,status:i}}async function oz(e,t,n){const i=this,r=i._pending||sz(i);r.requests+=1;const o=await i.request(t,n);return i.pulse(e,i.changeset().remove(gi).insert(o.data||[])),r.done(),o}function sz(e){let t;const n=new Promise(i=>t=i);return n.requests=0,n.done=()=>{--n.requests===0&&(e._pending=null,t(e))},e._pending=n}const az={skip:!0};function uz(e,t,n,i,r){return(e instanceof Ne?cz:lz)(this,e,t,n,i,r),this}function lz(e,t,n,i,r,o){const s=le({},o,az);let a,u;ce(n)||(n=rn(n)),i===void 0?a=l=>e.touch(n(l)):ce(i)?(u=new Ne(null,i,r,!1),a=l=>{u.evaluate(l);const c=n(l),f=u.value;xA(f)?e.pulse(c,f,o):e.update(c,f,s)}):a=l=>e.update(n(l),i,s),t.apply(a)}function cz(e,t,n,i,r,o){if(i===void 0)t.targets().add(n);else{const s=o||{},a=new Ne(null,fz(n,i),r,!1);a.modified(s.force),a.rank=t.rank,t.targets().add(a),n&&(a.skip(!0),a.value=n.value,a.targets().add(n),e.connect(n,[a]))}}function fz(e,t){return t=ce(t)?t:rn(t),e?function(n,i){const r=t(n,i);return e.skip()||(e.skip(r!==this.value).value=r),r}:t}function dz(e){e.rank=++this._rank}
6function hz(e){const t=[e];let n,i,r;for(;t.length;)if(this.rank(n=t.pop()),i=n._targets)for(r=i.length;--r>=0;)t.push(n=i[r]),n===e&&R("Cycle detected in dataflow graph.")}const Cd={},Ni=1,uo=2,br=4,gz=Ni|uo,Ow=Ni|br,xa=Ni|uo|br,zw=8,Vu=16,Pw=32,Lw=64;function vs(e,t,n){this.dataflow=e,this.stamp=t??-1,this.add=[],this.rem=[],this.mod=[],this.fields=null,this.encode=n||null}function nm(e,t){const n=[];return is(e,t,i=>n.push(i)),n}function Iw(e,t){const n={};return e.visit(t,i=>{n[ie(i)]=1}),i=>n[ie(i)]?null:i}function yf(e,t){return e?(n,i)=>e(n,i)&&t(n,i):t}vs.prototype={StopPropagation:Cd,ADD:Ni,REM:uo,MOD:br,ADD_REM:gz,ADD_MOD:Ow,ALL:xa,REFLOW:zw,SOURCE:Vu,NO_SOURCE:Pw,NO_FIELDS:Lw,fork(e){return new vs(this.dataflow).init(this,e)},clone(){const e=this.fork(xa);return e.add=e.add.slice(),e.rem=e.rem.slice(),e.mod=e.mod.slice(),e.source&&(e.source=e.source.slice()),e.materialize(xa|Vu)},addAll(){let e=this;return!e.source||e.add===e.rem||!e.rem.length&&e.source.length===e.add.length||(e=new vs(this.dataflow).init(this),e.add=e.source,e.rem=[]),e},init(e,t){const n=this;return n.stamp=e.stamp,n.encode=e.encode,e.fields&&!(t&Lw)&&(n.fields=e.fields),t&Ni?(n.addF=e.addF,n.add=e.add):(n.addF=null,n.add=[]),t&uo?(n.remF=e.remF,n.rem=e.rem):(n.remF=null,n.rem=[]),t&br?(n.modF=e.modF,n.mod=e.mod):(n.modF=null,n.mod=[]),t&Pw?(n.srcF=null,n.source=null):(n.srcF=e.srcF,n.source=e.source,e.cleans&&(n.cleans=e.cleans)),n},runAfter(e){this.dataflow.runAfter(e)},changed(e){const t=e||xa;return t&Ni&&this.add.length||t&uo&&this.rem.length||t&br&&this.mod.length},reflow(e){if(e)return this.fork(xa).reflow();const t=this.add.length,n=this.source&&this.source.length;return n&&n!==t&&(this.mod=this.source,t&&this.filter(br,Iw(this,Ni))),this},clean(e){return arguments.length?(this.cleans=!!e,this):this.cleans},modifies(e){const t=this.fields||(this.fields={});return z(e)?e.forEach(n=>t[n]=!0):t[e]=!0,this},modified(e,t){const n=this.fields;return(t||this.mod.length)&&n?arguments.length?z(e)?e.some(i=>n[i]):n[e]:!!n:!1},filter(e,t){const n=this;return e&Ni&&(n.addF=yf(n.addF,t)),e&uo&&(n.remF=yf(n.remF,t)),e&br&&(n.modF=yf(n.modF,t)),e&Vu&&(n.srcF=yf(n.srcF,t)),n},materialize(e){e=e||xa;const t=this;return e&Ni&&t.addF&&(t.add=nm(t.add,t.addF),t.addF=null),e&uo&&t.remF&&(t.rem=nm(t.rem,t.remF),t.remF=null),e&br&&t.modF&&(t.mod=nm(t.mod,t.modF),t.modF=null),e&Vu&&t.srcF&&(t.source=t.source.filter(t.srcF),t.srcF=null),t},visit(e,t){const n=this,i=t;if(e&Vu)return is(n.source,n.srcF,i),n;e&Ni&&is(n.add,n.addF,i),e&uo&&is(n.rem,n.remF,i),e&br&&is(n.mod,n.modF,i);const r=n.source;if(e&zw&&r){const o=n.add.length+n.mod.length;o===r.length||(o?is(r,Iw(n,Ow),i):is(r,n.srcF,i))}return n}};function bA(e,t,n,i){const r=this;let o=0;this.dataflow=e,this.stamp=t,this.fields=null,this.encode=i||null,this.pulses=n;for(const s of n)if(s.stamp===t){if(s.fields){const a=r.fields||(r.fields={});for(const u in s.fields)a[u]=1}s.changed(r.ADD)&&(o|=r.ADD),s.changed(r.REM)&&(o|=r.REM),s.changed(r.MOD)&&(o|=r.MOD)}this.changes=o}q(bA,vs,{fork(e){const t=new vs(this.dataflow).init(this,e&this.NO_FIELDS);return e!==void 0&&(e&t.ADD&&this.visit(t.ADD,n=>t.add.push(n)),e&t.REM&&this.visit(t.REM,n=>t.rem.push(n)),e&t.MOD&&this.visit(t.MOD,n=>t.mod.push(n))),t},changed(e){return this.changes&e},modified(e){const t=this,n=t.fields;return n&&t.changes&t.MOD?z(e)?e.some(i=>n[i]):n[e]:0},filter(){R("MultiPulse does not support filtering.")},materialize(){R("MultiPulse does not support materialization.")},visit(e,t){const n=this,i=n.pulses,r=i.length;let o=0;if(e&n.SOURCE)for(;o<r;++o)i[o].visit(e,t);else for(;o<r;++o)i[o].stamp===n.stamp&&i[o].visit(e,t);return n}});async function pz(e,t,n){const i=this,r=[];if(i._pulse)return vA(i);if(i._pending&&await i._pending,t&&await Xf(i,t),!i._touched.length)return i.debug("Dataflow invoked, but nothing to do."),i;const o=++i._clock;i._pulse=new vs(i,o,e),i._touched.forEach(c=>i._enqueue(c,!0)),i._touched=ug(Kh);let s=0,a,u,l;try{for(;i._heap.size()>0;){if(a=i._heap.pop(),a.rank!==a.qrank){i._enqueue(a,!0);continue}u=a.run(i._getPulse(a,e)),u.then?u=await u:u.async&&(r.push(u.async),u=Cd),u!==Cd&&a._targets&&a._targets.forEac
6h(c=>i._enqueue(c)),++s}}catch(c){i._heap.clear(),l=c}if(i._input={},i._pulse=null,i.debug(`Pulse ${o}: ${s} operators`),l&&(i._postrun=[],i.error(l)),i._postrun.length){const c=i._postrun.sort((f,d)=>d.priority-f.priority);i._postrun=[];for(let f=0;f<c.length;++f)await Xf(i,c[f].callback)}return n&&await Xf(i,n),r.length&&Promise.all(r).then(c=>i.runAsync(null,()=>{c.forEach(f=>{try{f(i)}catch(d){i.error(d)}})})),i}async function mz(e,t,n){for(;this._running;)await this._running;const i=()=>this._running=null;return(this._running=this.evaluate(e,t,n)).then(i,i),this._running}function yz(e,t,n){return this._pulse?vA(this):(this.evaluate(e,t,n),this)}function xz(e,t,n){if(this._pulse||t)this._postrun.push({priority:n||0,callback:e});else try{e(this)}catch(i){this.error(i)}}function vA(e){return e.error("Dataflow already running. Use runAsync() to chain invocations."),e}function bz(e,t){const n=e.stamp<this._clock;n&&(e.stamp=this._clock),(n||t)&&(e.qrank=e.rank,this._heap.push(e))}function vz(e,t){const n=e.source,i=this._clock;return n&&z(n)?new bA(this,i,n.map(r=>r.pulse),t):this._input[e.id]||wz(this._pulse,n&&n.pulse)}function wz(e,t){return t&&t.stamp===e.stamp?t:(e=e.fork(),t&&t!==Cd&&(e.source=t.source),e)}const Py={skip:!1,force:!1};function _z(e,t){const n=t||Py;return this._pulse?this._enqueue(e):this._touched.add(e),n.skip&&e.skip(!0),this}function Sz(e,t,n){const i=n||Py;return(e.set(t)||i.force)&&this.touch(e,i),this}function Ez(e,t,n){this.touch(e,n||Py);const i=new vs(this,this._clock+(this._pulse?0:1)),r=e.pulse&&e.pulse.source||[];return i.target=e,this._input[e.id]=t.pulse(i,r),this}function kz(e){let t=[];return{clear:()=>t=[],size:()=>t.length,peek:()=>t[0],push:n=>(t.push(n),wA(t,0,t.length-1,e)),pop:()=>{const n=t.pop();let i;return t.length?(i=t[0],t[0]=n,$z(t,0,e)):i=n,i}}}function wA(e,t,n,i){let r,o;const s=e[n];for(;n>t;){if(o=n-1>>1,r=e[o],i(s,r)<0){e[n]=r,n=o;continue}break}return e[n]=s}function $z(e,t,n){const i=t,r=e.length,o=e[t];let s=(t<<1)+1,a;for(;s<r;)a=s+1,a<r&&n(e[s],e[a])>=0&&(s=a),e[t]=e[s],t=s,s=(t<<1)+1;return e[t]=o,wA(e,i,t,n)}function Fl(){this.logger(f$()),this.logLevel(l$),this._clock=0,this._rank=0,this._locale=_8();try{this._loader=Ty()}catch{}this._touched=ug(Kh),this._input={},this._pulse=null,this._heap=kz((e,t)=>e.qrank-t.qrank),this._postrun=[]}function Yu(e){return function(){return this._log[e].apply(this,arguments)}}Fl.prototype={stamp(){return this._clock},loader(e){return arguments.length?(this._loader=e,this):this._loader},locale(e){return arguments.length?(this._locale=e,this):this._locale},logger(e){return arguments.length?(this._log=e,this):this._log},error:Yu("error"),warn:Yu("warn"),info:Yu("info"),debug:Yu("debug"),logLevel:Yu("level"),cleanThreshold:1e4,add:Q8,connect:J8,rank:dz,rerank:hz,pulse:Ez,touch:_z,update:Sz,changeset:ku,ingest:iz,parse:nz,preload:oz,request:rz,events:tz,on:uz,evaluate:pz,run:yz,runAsync:mz,runAfter:xz,_enqueue:bz,_getPulse:vz};function F(e,t){Ne.call(this,e,null,t)}q(F,Ne,{run(e){if(e.stamp<this.stamp)return e.StopPropagation;let t;return this.skip()?this.skip(!1):t=this.evaluate(e),t=t||e,t.then?t=t.then(n=>this.pulse=n):t!==e.StopPropagation&&(this.pulse=t),t},evaluate(e){const t=this.marshall(e.stamp),n=this.transform(t,e);return t.clear(),n},transform(){}});const Gl={};function Az(e){const t=Cz(e);return t&&t.Definition||null}function Cz(e){return e=e&&e.toLowerCase(),X(Gl,e)?Gl[e]:null}function*_A(e,t){if(t==null)for(let n of e)n!=null&&n!==""&&(n=+n)>=n&&(yield n);else{let n=-1;for(let i of e)i=t(i,++n,e),i!=null&&i!==""&&(i=+i)>=i&&(yield i)}}function SA(e,t,n){const i=Float64Array.from(_A(e,n));return i.sort(Dr),t.map(r=>O$(i,r))}function EA(e,t){return SA(e,[.25,.5,.75],t)}function kA(e,t){const n=e.length,i=m6(e,t),r=EA(e,t),o=(r[2]-r[0])/1.34;return 1.06*(Math.min(i,o)||i||Math.abs(r[0])||1)*Math.pow(n,-.2)}function Mz(e){const t=e.maxbins||20,n=e.base||10,i=Math.log(n),r=e.divide||[5,2];let o=e.extent[0],s=e.extent[1],a,u,l,c,f,d;const h=e.span||s-o||Math.abs(o)||1;if(e.step)a=e.step;else if(e.steps){for(c=h/t,f=0,d=e.steps.length;f<d&&e.steps[f]<c;++f);a=e.steps[Math.max(0,f-1)]}else{for(u=Math.ceil(Math.log(t)/i),l=e.minstep||0,a=Math.max(l,Math.pow(n,Math.round(Math.log(h)/i)-u));
6Math.ceil(h/a)>t;)a*=n;for(f=0,d=r.length;f<d;++f)c=a/r[f],c>=l&&h/c<=t&&(a=c)}c=Math.log(a);const g=c>=0?0:~~(-c/i)+1,p=Math.pow(n,-g-1);return(e.nice||e.nice===void 0)&&(c=Math.floor(o/a+p)*a,o=o<c?c-a:c,s=Math.ceil(s/a)*a),{start:o,stop:s===o?o+a:s,step:a}}var jr=Math.random;function Fz(e,t,n,i){if(!e.length)return[void 0,void 0];const r=Float64Array.from(_A(e,i)),o=r.length,s=t;let a,u,l,c;for(l=0,c=Array(s);l<s;++l){for(a=0,u=0;u<o;++u)a+=r[~~(jr()*o)];c[l]=a/o}return c.sort(Dr),[b0(c,n/2),b0(c,1-n/2)]}function Dz(e,t,n,i){i=i||(d=>d);const r=e.length,o=new Float64Array(r);let s=0,a=1,u=i(e[0]),l=u,c=u+t,f;for(;a<r;++a){if(f=i(e[a]),f>=c){for(l=(u+l)/2;s<a;++s)o[s]=l;c=f+t,u=f}l=f}for(l=(u+l)/2;s<a;++s)o[s]=l;return n?Tz(o,t+t/4):o}function Tz(e,t){const n=e.length;let i=0,r=1,o,s;for(;e[i]===e[r];)++r;for(;r<n;){for(o=r+1;e[r]===e[o];)++o;if(e[r]-e[r-1]<t){for(s=r+(i+o-r-r>>1);s<r;)e[s++]=e[r];for(;s>r;)e[s--]=e[i]}i=r,r=o}return e}const $A=Math.sqrt(2*Math.PI),Nz=Math.SQRT2;let Xu=NaN;function Ly(e,t){e=e||0,t=t??1;let n=0,i=0,r,o;if(Xu===Xu)n=Xu,Xu=NaN;else{do n=jr()*2-1,i=jr()*2-1,r=n*n+i*i;while(r===0||r>1);o=Math.sqrt(-2*Math.log(r)/r),n*=o,Xu=i*o}return e+n*t}function AA(e,t,n){n=n??1;const i=(e-(t||0))/n;return Math.exp(-.5*i*i)/(n*$A)}function Iy(e,t,n){t=t||0,n=n??1;const i=(e-t)/n,r=Math.abs(i);let o;if(r>37)o=0;else{const s=Math.exp(-r*r/2);let a;r<7.07106781186547?(a=.0352624965998911*r+.700383064443688,a=a*r+6.37396220353165,a=a*r+33.912866078383,a=a*r+112.079291497871,a=a*r+221.213596169931,a=a*r+220.206867912376,o=s*a,a=.0883883476483184*r+1.75566716318264,a=a*r+16.064177579207,a=a*r+86.7807322029461,a=a*r+296.564248779674,a=a*r+637.333633378831,a=a*r+793.826512519948,a=a*r+440.413735824752,o=o/a):(a=r+.65,a=r+4/a,a=r+3/a,a=r+2/a,a=r+1/a,o=s/a/2.506628274631)}return i>0?1-o:o}function By(e,t,n){return e<0||e>1?NaN:(t||0)+(n??1)*Nz*Rz(2*e-1)}function Rz(e){let t=-Math.log((1-e)*(1+e)),n;return t<6.25?(t-=3.125,n=-364441206401782e-35,n=-16850591381820166e-35+n*t,n=128584807152564e-32+n*t,n=11157877678025181e-33+n*t,n=-1333171662854621e-31+n*t,n=20972767875968562e-33+n*t,n=6637638134358324e-30+n*t,n=-4054566272975207e-29+n*t,n=-8151934197605472e-29+n*t,n=26335093153082323e-28+n*t,n=-12975133253453532e-27+n*t,n=-5415412054294628e-26+n*t,n=10512122733215323e-25+n*t,n=-4112633980346984e-24+n*t,n=-29070369957882005e-24+n*t,n=42347877827932404e-23+n*t,n=-13654692000834679e-22+n*t,n=-13882523362786469e-21+n*t,n=.00018673420803405714+n*t,n=-.000740702534166267+n*t,n=-.006033670871430149+n*t,n=.24015818242558962+n*t,n=1.6536545626831027+n*t):t<16?(t=Math.sqrt(t)-3.25,n=22137376921775787e-25,n=9075656193888539e-23+n*t,n=-27517406297064545e-23+n*t,n=18239629214389228e-24+n*t,n=15027403968909828e-22+n*t,n=-4013867526981546e-21+n*t,n=29234449089955446e-22+n*t,n=12475304481671779e-21+n*t,n=-47318229009055734e-21+n*t,n=6828485145957318e-20+n*t,n=24031110387097894e-21+n*t,n=-.0003550375203628475+n*t,n=.0009532893797373805+n*t,n=-.0016882755560235047+n*t,n=.002491442096107851+n*t,n=-.003751208507569241+n*t,n=.005370914553590064+n*t,n=1.0052589676941592+n*t,n=3.0838856104922208+n*t):Number.isFinite(t)?(t=Math.sqrt(t)-5,n=-27109920616438573e-27,n=-2555641816996525e-25+n*t,n=15076572693500548e-25+n*t,n=-3789465440126737e-24+n*t,n=761570120807834e-23+n*t,n=-1496002662714924e-23+n*t,n=2914795345090108e-23+n*t,n=-6771199775845234e-23+n*t,n=22900482228026655e-23+n*t,n=-99298272942317e-20+n*t,n=4526062597223154e-21+n*t,n=-1968177810553167e-20+n*t,n=7599527703001776e-20+n*t,n=-.00021503011930044477+n*t,n=-.00013871931833623122+n*t,n=1.0103004648645344+n*t,n=4.849906401408584+n*t):n=1/0,n*e}function CA(e,t){let n,i;const r={mean(o){return arguments.length?(n=o||0,r):n},stdev(o){return arguments.length?(i=o??1,r):i},sample:()=>Ly(n,i),pdf:o=>AA(o,n,i),cdf:o=>Iy(o,n,i),icdf:o=>By(o,n,i)};return r.mean(e).stdev(t)}function MA(e,t){const n=CA();let i=0;const r={data(o){return arguments.length?(e=o,i=o?o.length:0,r.bandwidth(t)):e},bandwidth(o){return arguments.length?(t=o,!t&&e&&(t=kA(e)),r):t},sample(){return e[~~(jr()*i)]+t*n.sample()},pdf(o){let s=0,a=0;for(;a<i;++a)s+=n.pdf((o-e[a])/t);return s/t/i},cdf(o){let s=0,a=0;for(;a<i;++a)s+=n.cdf((o-e[a])/t);return s/i},icdf(){throw Error("KDE icdf not supported.")}};return r.data(e)}function FA(e,t){return e=e||0,t=t??1,Math.exp(e+Ly()*t)}function DA(e,t,n){if(e<=0)return 0;t=t||0,n=n??1;const i=(Math.log(e)-t)/n;return Math.exp(-.5*i*i)/(n*$A*e)}function TA(e,t,n){return Iy(Math.log(e),t,n)}function NA(e,t,n){return Math.exp(By(e,t,n))}function Oz(e,t){let n,i;const r={mean(o){return arguments.length?(n=o||0,r):n},stdev(o){return arguments.length?(i=o??1,r):i},sample:()=>FA(n,i),pdf:o=>DA(o,n,i),cdf:o=>TA(o,n,i),icdf:o=>NA(o,n,i)};return r.mean(e).stdev(t)}function zz(e,t){let n=0,i;function r(s){const a=[];let u=0,l;for(l=0;l<n;++l)u+=a[l]=s[l]==null?1:+s[l];for(l=0;l<n;++l)a[l]/=u;return a}const o={weights(s){return arguments.length?(i=r(t=s||[]),o):t},distributions(s){return arguments.length?(s?(n=s.length,e=s):(n=0,e=[]),o.weights(t)):e},sample(){const s=jr();let a=e[n-1],u=i[0],l=0;for(;l<n-1;u+=i[++l])if(s<u){a=e[l];break}return a.sample()},pdf(s){let a=0,u=0;for(;u<n;++u)a+=i[u]*e[u].pdf(s);return a},cdf(s){let a=0,u=0;for(;u<n;++u)a+=i[u]*e[u].cdf(s);return a},icdf(){throw Error("Mixture icdf not supported.")}};return o.distributions(e).weights(t)}
6function RA(e,t){return t==null&&(t=e??1,e=0),e+(t-e)*jr()}function OA(e,t,n){return n==null&&(n=t??1,t=0),e>=t&&e<=n?1/(n-t):0}function zA(e,t,n){return n==null&&(n=t??1,t=0),e<t?0:e>n?1:(e-t)/(n-t)}function PA(e,t,n){return n==null&&(n=t??1,t=0),e>=0&&e<=1?t+e*(n-t):NaN}function Pz(e,t){let n,i;const r={min(o){return arguments.length?(n=o||0,r):n},max(o){return arguments.length?(i=o??1,r):i},sample:()=>RA(n,i),pdf:o=>OA(o,n,i),cdf:o=>zA(o,n,i),icdf:o=>PA(o,n,i)};return t==null&&(t=e??1,e=0),r.min(e).max(t)}function LA(e,t,n){let i=0,r=0;for(const o of e){const s=n(o);t(o)==null||s==null||isNaN(s)||(i+=(s-i)/++r)}return{coef:[i],predict:()=>i,rSquared:0}}function Sc(e,t,n,i){const r=i-e*e,o=Math.abs(r)<1e-24?0:(n-e*t)/r;return[t-o*e,o]}function cg(e,t,n,i){e=e.filter(h=>{let g=t(h),p=n(h);return g!=null&&(g=+g)>=g&&p!=null&&(p=+p)>=p}),i&&e.sort((h,g)=>t(h)-t(g));const r=e.length,o=new Float64Array(r),s=new Float64Array(r);let a=0,u=0,l=0,c,f,d;for(d of e)o[a]=c=+t(d),s[a]=f=+n(d),++a,u+=(c-u)/a,l+=(f-l)/a;for(a=0;a<r;++a)o[a]-=u,s[a]-=l;return[o,s,u,l]}function Ec(e,t,n,i){let r=-1,o,s;for(const a of e)o=t(a),s=n(a),o!=null&&(o=+o)>=o&&s!=null&&(s=+s)>=s&&i(o,s,++r)}function $u(e,t,n,i,r){let o=0,s=0;return Ec(e,t,n,(a,u)=>{const l=u-r(a),c=u-i;o+=l*l,s+=c*c}),1-o/s}function IA(e,t,n){let i=0,r=0,o=0,s=0,a=0;Ec(e,t,n,(c,f)=>{++a,i+=(c-i)/a,r+=(f-r)/a,o+=(c*f-o)/a,s+=(c*c-s)/a});const u=Sc(i,r,o,s),l=c=>u[0]+u[1]*c;return{coef:u,predict:l,rSquared:$u(e,t,n,r,l)}}function Lz(e,t,n){let i=0,r=0,o=0,s=0,a=0;Ec(e,t,n,(c,f)=>{++a,c=Math.log(c),i+=(c-i)/a,r+=(f-r)/a,o+=(c*f-o)/a,s+=(c*c-s)/a});const u=Sc(i,r,o,s),l=c=>u[0]+u[1]*Math.log(c);return{coef:u,predict:l,rSquared:$u(e,t,n,r,l)}}function Iz(e,t,n){const[i,r,o,s]=cg(e,t,n);let a=0,u=0,l=0,c=0,f=0,d,h,g;Ec(e,t,n,(x,b)=>{d=i[f++],h=Math.log(b),g=d*b,a+=(b*h-a)/f,u+=(g-u)/f,l+=(g*h-l)/f,c+=(d*g-c)/f});const[p,m]=Sc(u/s,a/s,l/s,c/s),y=x=>Math.exp(p+m*(x-o));return{coef:[Math.exp(p-m*o),m],predict:y,rSquared:$u(e,t,n,s,y)}}function Bz(e,t,n){let i=0,r=0,o=0,s=0,a=0,u=0;Ec(e,t,n,(f,d)=>{const h=Math.log(f),g=Math.log(d);++u,i+=(h-i)/u,r+=(g-r)/u,o+=(h*g-o)/u,s+=(h*h-s)/u,a+=(d-a)/u});const l=Sc(i,r,o,s),c=f=>l[0]*Math.pow(f,l[1]);return l[0]=Math.exp(l[0]),{coef:l,predict:c,rSquared:$u(e,t,n,a,c)}}function BA(e,t,n){const[i,r,o,s]=cg(e,t,n),a=i.length;let u=0,l=0,c=0,f=0,d=0,h,g,p,m;for(h=0;h<a;)g=i[h],p=r[h++],m=g*g,u+=(m-u)/h,l+=(m*g-l)/h,c+=(m*m-c)/h,f+=(g*p-f)/h,d+=(m*p-d)/h;const y=c-u*u,x=u*y-l*l,b=(d*u-f*l)/x,v=(f*y-d*l)/x,w=-b*u,S=_=>(_=_-o,b*_*_+v*_+w+s);return{coef:[w-v*o+b*o*o+s,v-2*b*o,b],predict:S,rSquared:$u(e,t,n,s,S)}}function Uz(e,t,n,i){if(i===0)return LA(e,t,n);if(i===1)return IA(e,t,n);if(i===2)return BA(e,t,n);const[r,o,s,a]=cg(e,t,n),u=r.length,l=[],c=[],f=i+1;let d,h,g,p,m;for(d=0;d<f;++d){for(g=0,p=0;g<u;++g)p+=Math.pow(r[g],d)*o[g];for(l.push(p),m=new Float64Array(f),h=0;h<f;++h){for(g=0,p=0;g<u;++g)p+=Math.pow(r[g],d+h);m[h]=p}c.push(m)}c.push(l);const y=qz(c),x=b=>{b-=s;let v=a+y[0]+y[1]*b+y[2]*b*b;for(d=3;d<f;++d)v+=y[d]*Math.pow(b,d);return v};return{coef:jz(f,y,-s,a),predict:x,rSquared:$u(e,t,n,a,x)}}function jz(e,t,n,i){const r=Array(e);let o,s,a,u;for(o=0;o<e;++o)r[o]=0;for(o=e-1;o>=0;--o)for(a=t[o],u=1,r[o]+=a,s=1;s<=o;++s)u*=(o+1-s)/s,r[o-s]+=a*Math.pow(n,s)*u;return r[0]+=i,r}function qz(e){const t=e.length-1,n=[];let i,r,o,s,a;for(i=0;i<t;++i){for(s=i,r=i+1;r<t;++r)Math.abs(e[i][r])>Math.abs(e[i][s])&&(s=r);for(o=i;o<t+1;++o)a=e[o][i],e[o][i]=e[o][s],e[o][s]=a;for(r=i+1;r<t;++r)for(o=t;o>=i;o--)e[o][r]-=e[o][i]*e[i][r]/e[i][i]}for(r=t-1;r>=0;--r){for(a=0,o=r+1;o<t;++o)a+=e[o][r]*n[o];n[r]=(e[t][r]-a)/e[r][r]}return n}const Bw=2,Uw=1e-12;function Wz(e,t,n,i){const[r,o,s,a]=cg(e,t,n,!0),u=r.length,l=Math.max(2,~~(i*u)),c=new Float64Array(u),f=new Float64Array(u),d=new Float64Array(u).fill(1);for(let h=-1;++h<=Bw;){const g=[0,l-1];for(let m=0;m<u;++m){const y=r[m],x=g[0],b=g[1],v=y-r[x]>r[b]-y?x:b;let w=0,S=0,_=0,E=0,k=0;const A=1/Math.abs(r[v]-y||1);for(let M=x;M<=b;++M){const O=r[M],C=o[M],N=Hz(Math.abs(y-O)*A)*d[M],G=O*N;w+=N,S+=G,_+=C*N,E+=C*G,k+=O*G}const[$,D]=Sc(S/w,_/w,E/w,k/w);c[m]=$+D*y,f[m]=Math.abs(o[m]-c[m]),Gz(r,m+1,g)}if(h===Bw)break;const p=z$(f);if(Math.abs(p)<Uw)break;for(let m=0,y,x;m<u;++m)y=f[m]/(6*p),d[m]=y>=1?Uw:(x=1-y*y)*x}return Vz(r,c,s,a)}function Hz(e){return(e=1-e*e*e)*e*e}function Gz(e,t,n){const i=e[t];let r=n[0],o=n[1]+1;if(!(o>=e.length))for(;t>r&&e[o]-i<=i-e[r];)n[0]=++r,n[1]=o,++o}function Vz(e,t,n,i){const r=e.length,o=[];let s=0,a=0,u=[],l;for(;s<r;++s)l=e[s]+n,u[0]===l?u[1]+=(t[s]-u[1])/++a:(a=0,u[1]+=i,u=[l,t[s]],o.push(u));return u[1]+=i,o}const Yz=.5*Math.PI/180;function Uy(e,t,n,i){n=n||25,i=Math.max(n,i||200);const r=p=>
6[p,e(p)],o=t[0],s=t[1],a=s-o,u=a/i,l=[r(o)],c=[];if(n===i){for(let p=1;p<i;++p)l.push(r(o+p/n*a));return l.push(r(s)),l}else{c.push(r(s));for(let p=n;--p>0;)c.push(r(o+p/n*a))}let f=l[0],d=c[c.length-1];const h=1/a,g=Xz(f[1],c);for(;d;){const p=r((f[0]+d[0])/2);p[0]-f[0]>=u&&Kz(f,p,d,h,g)>Yz?c.push(p):(f=d,l.push(d),c.pop()),d=c[c.length-1]}return l}function Xz(e,t){let n=e,i=e;const r=t.length;for(let o=0;o<r;++o){const s=t[o][1];s<n&&(n=s),s>i&&(i=s)}return 1/(i-n)}function Kz(e,t,n,i,r){const o=Math.atan2(r*(n[1]-e[1]),i*(n[0]-e[0])),s=Math.atan2(r*(t[1]-e[1]),i*(t[0]-e[0]));return Math.abs(o-s)}function Zz(e){return t=>{const n=e.length;let i=1,r=String(e[0](t));for(;i<n;++i)r+="|"+e[i](t);return r}}function M0(e){return!e||!e.length?function(){return""}:e.length===1?e[0]:Zz(e)}function UA(e,t,n){return n||e+(t?"_"+t:"")}const im=()=>{},Qz={init:im,add:im,rem:im,idx:0},Vl={values:{init:e=>e.cell.store=!0,value:e=>e.cell.data.values(),idx:-1},count:{value:e=>e.cell.num},__count__:{value:e=>e.missing+e.valid},missing:{value:e=>e.missing},valid:{value:e=>e.valid},sum:{init:e=>e.sum=0,value:e=>e.valid?e.sum:void 0,add:(e,t)=>e.sum+=+t,rem:(e,t)=>e.sum-=t},product:{init:e=>e.product=1,value:e=>e.valid?e.product:void 0,add:(e,t)=>e.product*=t,rem:(e,t)=>e.product/=t},mean:{init:e=>e.mean=0,value:e=>e.valid?e.mean:void 0,add:(e,t)=>(e.mean_d=t-e.mean,e.mean+=e.mean_d/e.valid),rem:(e,t)=>(e.mean_d=t-e.mean,e.mean-=e.valid?e.mean_d/e.valid:e.mean)},average:{value:e=>e.valid?e.mean:void 0,req:["mean"],idx:1},variance:{init:e=>e.dev=0,value:e=>e.valid>1?e.dev/(e.valid-1):void 0,add:(e,t)=>e.dev+=e.mean_d*(t-e.mean),rem:(e,t)=>e.dev-=e.mean_d*(t-e.mean),req:["mean"],idx:1},variancep:{value:e=>e.valid>1?e.dev/e.valid:void 0,req:["variance"],idx:2},stdev:{value:e=>e.valid>1?Math.sqrt(e.dev/(e.valid-1)):void 0,req:["variance"],idx:2},stdevp:{value:e=>e.valid>1?Math.sqrt(e.dev/e.valid):void 0,req:["variance"],idx:2},stderr:{value:e=>e.valid>1?Math.sqrt(e.dev/(e.valid*(e.valid-1))):void 0,req:["variance"],idx:2},distinct:{value:e=>e.cell.data.distinct(e.get),req:["values"],idx:3},ci0:{value:e=>e.cell.data.ci0(e.get),req:["values"],idx:3},ci1:{value:e=>e.cell.data.ci1(e.get),req:["values"],idx:3},median:{value:e=>e.cell.data.q2(e.get),req:["values"],idx:3},q1:{value:e=>e.cell.data.q1(e.get),req:["values"],idx:3},q3:{value:e=>e.cell.data.q3(e.get),req:["values"],idx:3},min:{init:e=>e.min=void 0,value:e=>e.min=Number.isNaN(e.min)?e.cell.data.min(e.get):e.min,add:(e,t)=>{(t<e.min||e.min===void 0)&&(e.min=t)},rem:(e,t)=>{t<=e.min&&(e.min=NaN)},req:["values"],idx:4},max:{init:e=>e.max=void 0,value:e=>e.max=Number.isNaN(e.max)?e.cell.data.max(e.get):e.max,add:(e,t)=>{(t>e.max||e.max===void 0)&&(e.max=t)},rem:(e,t)=>{t>=e.max&&(e.max=NaN)},req:["values"],idx:4},argmin:{init:e=>e.argmin=void 0,value:e=>e.argmin||e.cell.data.argmin(e.get),add:(e,t,n)=>{t<e.min&&(e.argmin=n)},rem:(e,t)=>{t<=e.min&&(e.argmin=void 0)},req:["min","values"],idx:3},argmax:{init:e=>e.argmax=void 0,value:e=>e.argmax||e.cell.data.argmax(e.get),add:(e,t,n)=>{t>e.max&&(e.argmax=n)},rem:(e,t)=>{t>=e.max&&(e.argmax=void 0)},req:["max","values"],idx:3},exponential:{init:(e,t)=>{e.exp=0,e.exp_r=t},value:e=>e.valid?e.exp*(1-e.exp_r)/(1-e.exp_r**e.valid):void 0,add:(e,t)=>e.exp=e.exp_r*e.exp+t,rem:(e,t)=>e.exp=(e.exp-t/e.exp_r**(e.valid-1))/e.exp_r},exponentialb:{value:e=>e.valid?e.exp*(1-e.exp_r):void 0,req:["exponential"],idx:1}},kc=Object.keys(Vl).filter(e=>e!=="__count__");function Jz(e,t){return(n,i)=>le({name:e,aggregate_param:i,out:n||e},Qz,t)}[...kc,"__count__"].forEach(e=>{Vl[e]=Jz(e,Vl[e])});function jA(e,t,n){return Vl[e](n,t)}function qA(e,t){return e.idx-t.idx}function eP(e){const t={};e.forEach(i=>t[i.name]=i);const n=i=>{i.req&&i.req.forEach(r=>{t[r]||n(t[r]=Vl[r]())})};return e.forEach(n),Object.values(t).sort(qA)}function tP(){this.valid=0,this.missing=0,this._ops.forEach(e=>e.aggregate_param==null?e.init(this):e.init(this,e.aggregate_param))}function nP(e,t){if(e==null||e===""){++this.missing;return}e===e&&(++this.valid,this._ops.forEach(n=>n.add(this,e,t)))}function iP(e,t){if(e==null||e===""){--this.missing;return}e===e&&(--this.valid,this._ops.forEach(n=>n.rem(this,e,t)))}function rP(e){return this._out.forEach(t=>e[t.out]=t.value(this)),e}function WA(e,t){const n=t||nn,i=eP(e),r=e.slice().sort(qA);function o(s){this._ops=i,this._out=r,this.cell=s,this.init()}return o.prototype.init=tP,o.prototype.add=nP,o.prototype.rem=iP,o.prototype.set=rP,o.prototype.get=n,o.fields=e.map(s=>s.out),o}function jy(e){this._key=e?hi(e):ie,this.reset()}const Mt=jy.prototype;Mt.reset=function(){this._add=[],this._rem=[],this._ext=null,this._get=null,this._q=null};Mt.add=function(e){this._add.push(e)};Mt.rem=function(e){this._rem.push(e)};Mt.values=function(){if(this._get=null,this._rem.length===0)return this._add;const e=this._add,t=this._rem,n=this._key,i=e.length,r=t.length,o=Array(i-r),s={};let a,u,l;for(a=0;a<r;++a)s[n(t[a])]=1;for(a=0,u=0;a<i;++a)s[n(l=e[a])]?s[n(l)]=0:o[u++]=l;return this._rem=[],this._add=o};Mt.distinct=function(e){const t=this.values(),n={};let i=t.length,r=0,o;for(;--i>=0;)o=e(t[i])+"",X(n,o)||(n[o]=1,++r);return r};Mt.extent=function(e){if(this._get!==e||!this._ext){const t=this.values(),n=qO(t,e);this._ext=[t[n[0]],t[n[1]]],this._get=e}return this._ext};Mt.argmin=function(e){return this.extent(e)[0]||{}};Mt.argmax=function(e){return this.extent(e)[1]||{}};Mt.min=function(e){const t=this.extent(e)[0];return t!=null?e(t):void 0};Mt.max=function(e){const t=this.extent(e)[1];return t!=null?e(t):void 0};Mt.quartile=function(e){return(this._get!==e||!this._q)&&(this._q=EA(this.values(),e),this._get=e),this._q};Mt.q1=function(e){return this.quartile(e)[0]};Mt.q2=function(e){return this.quartile(e)[1]};Mt.q3=function(e){return this.quartile(e)[2]};Mt.ci=function(e){return(this._get!==e||!this._ci)&&(this._ci=Fz(this.values(),1e3,.05,e),this._get=e),this._ci};Mt.ci0=function(e){return this.ci(e)[0]};Mt.ci1=function(e){return this.ci(e)[1]};function $o(e){F.call(this,null,e),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}$o.Definition={type:"Aggregate",metadata:{generates:!0,changes:!0},params:[{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:kc},{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"}]};q($o,F,{transform(e,t){const n=this,i=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=e.modified();return n.stamp=i.stamp,n.value&&(r||t.modified(n._inputs,!0))?(n._prev=n.value,
6n.value=r?n.init(e):Object.create(null),t.visit(t.SOURCE,o=>n.add(o))):(n.value=n.value||n.init(e),t.visit(t.REM,o=>n.rem(o)),t.visit(t.ADD,o=>n.add(o))),i.modifies(n._outputs),n._drop=e.drop!==!1,e.cross&&n._dims.length>1&&(n._drop=!1,n.cross()),t.clean()&&n._drop&&i.clean(!0).runAfter(()=>this.clean()),n.changes(i)},cross(){const e=this,t=e.value,n=e._dnames,i=n.map(()=>({})),r=n.length;function o(a){let u,l,c,f;for(u in a)for(c=a[u].tuple,l=0;l<r;++l)i[l][f=c[n[l]]]=f}o(e._prev),o(t);function s(a,u,l){const c=n[l],f=i[l++];for(const d in f){const h=a?a+"|"+d:d;u[c]=f[d],l<r?s(h,u,l):t[h]||e.cell(h,u)}}s("",{},0)},init(e){const t=this._inputs=[],n=this._outputs=[],i={};function r(x){const b=H(Qt(x)),v=b.length;let w=0,S;for(;w<v;++w)i[S=b[w]]||(i[S]=1,t.push(S))}this._dims=H(e.groupby),this._dnames=this._dims.map(x=>{const b=Xe(x);return r(x),n.push(b),b}),this.cellkey=e.key?e.key:M0(this._dims),this._countOnly=!0,this._counts=[],this._measures=[];const o=e.fields||[null],s=e.ops||["count"],a=e.aggregate_params||[null],u=e.as||[],l=o.length,c={};let f,d,h,g,p,m,y;for(l!==s.length&&R("Unmatched number of fields and aggregate ops."),y=0;y<l;++y){if(f=o[y],d=s[y],h=a[y]||null,f==null&&d!=="count"&&R("Null aggregate field specified."),p=Xe(f),m=UA(d,p,u[y]),n.push(m),d==="count"){this._counts.push(m);continue}g=c[p],g||(r(f),g=c[p]=[],g.field=f,this._measures.push(g)),d!=="count"&&(this._countOnly=!1),g.push(jA(d,h,m))}return this._measures=this._measures.map(x=>WA(x,x.field)),Object.create(null)},cellkey:M0(),cell(e,t){let n=this.value[e];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[e]=this.newcell(e,t),this._adds[this._alen++]=n),n},newcell(e,t){const n={key:e,num:0,agg:null,tuple:this.newtuple(t,this._prev&&this._prev[e]),stamp:this.stamp,store:!1};if(!this._countOnly){const i=this._measures,r=i.length;n.agg=Array(r);for(let o=0;o<r;++o)n.agg[o]=new i[o](n)}return n.store&&(n.data=new jy),n},newtuple(e,t){const n=this._dnames,i=this._dims,r=i.length,o={};for(let s=0;s<r;++s)o[n[s]]=i[s](e);return t?yA(t.tuple,o):Ee(o)},clean(){const e=this.value;for(const t in e)e[t].num===0&&delete e[t]},add(e){const t=this.cellkey(e),n=this.cell(t,e);if(n.num+=1,this._countOnly)return;n.store&&n.data.add(e);const i=n.agg;for(let r=0,o=i.length;r<o;++r)i[r].add(i[r].get(e),e)},rem(e){const t=this.cellkey(e),n=this.cell(t,e);if(n.num-=1,this._countOnly)return;n.store&&n.data.rem(e);const i=n.agg;for(let r=0,o=i.length;r<o;++r)i[r].rem(i[r].get(e),e)},celltuple(e){const t=e.tuple,n=this._counts;e.store&&e.data.values();for(let i=0,r=n.length;i<r;++i)t[n[i]]=e.num;if(!this._countOnly){const i=e.agg;for(let r=0,o=i.length;r<o;++r)i[r].set(t)}return t},changes(e){const t=this._adds,n=this._mods,i=this._prev,r=this._drop,o=e.add,s=e.rem,a=e.mod;let u,l,c,f;if(i)for(l in i)u=i[l],(!r||u.num)&&s.push(u.tuple);for(c=0,f=this._alen;c<f;++c)o.push(this.celltuple(t[c])),t[c]=null;for(c=0,f=this._mlen;c<f;++c)u=n[c],(u.num===0&&r?s:a).push(this.celltuple(u)),n[c]=null;return this._alen=this._mlen=0,this._prev=null,e}});const oP=1e-14;function qy(e){F.call(this,null,e)}qy.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"]}]};q(qy,F,{transform(e,t){const n=e.interval!==!1,i=this._bins(e),r=i.start,o=i.step,s=e.as||["bin0","bin1"],a=s[0],u=s[1];let l;return e.modified()?(t=t.reflow(!0),l=t.SOURCE):l=t.modified(Qt(e.field))?t.ADD_MOD:t.ADD,t.visit(l,n?c=>{const f=i(c);c[a]=f,c[u]=f==null?null:r+o*(1+(f-r)/o)}:c=>c[a]=i(c)),t.modifies(n?s:a)},_bins(e){if(this.value&&!e.modified())return this.value;const t=e.field,n=Mz(e),i=n.step;let r=n.start,o=r+Math.ceil((n.stop-r)/i)*i,s,a;(s=e.anchor)!=null&&(a=s-(r+i*Math.floor((s-r)/i)),r+=a,o+=a);const u=function(l){let c=Xt(t(l));return c==null?null:c<r?-1/0:c>o?1/0:(c=Math.max(r,Math.min(c,o-i)),r+i*Math.floor(oP+(c-r)/i))};return u.start=r,u.stop=n.stop,u.step=i,this.value=Nn(u,Qt(t),e.name||"bin_"+Xe(t))}});function HA(e,t,n){const i=e;let r=t||[],o=n||[],s={},a=0;return{add:u=>o.push(u),remove:u=>s[i(u)]=++a,size:()=>r.length,data:(u,l)=>(a&&(r=r.filter(c=>!s[i(c)]),s={},a=0),l&&u&&r.sort(u),o.length&&(r=u?XO(u,r,o.sort(u)):r.concat(o),o=[]),r)}}function Wy(e){F.call(this,[],e)}Wy.Definition={type:"Collect",metadata:{source:!0},params:[{name:"sort",type:"compare"}]};q(Wy,F,{transform(e,t){const n=t.fork(t.ALL),i=HA(ie,this.value,
6n.materialize(n.ADD).add),r=e.sort,o=t.changed()||r&&(e.modified("sort")||t.modified(r.fields));return n.visit(n.REM,i.remove),this.modified(o),this.value=n.source=i.data(ea(r),o),t.source&&t.source.root&&(this.value.root=t.source.root),n}});function GA(e){Ne.call(this,null,sP,e)}q(GA,Ne);function sP(e){return this.value&&!e.modified()?this.value:b$(e.fields,e.orders)}function Hy(e){F.call(this,null,e)}Hy.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 aP(e,t,n){switch(t){case"upper":e=e.toUpperCase();break;case"lower":e=e.toLowerCase();break}return e.match(n)}q(Hy,F,{transform(e,t){const n=f=>d=>{for(var h=aP(a(d),e.case,o)||[],g,p=0,m=h.length;p<m;++p)s.test(g=h[p])||f(g)},i=this._parameterCheck(e,t),r=this._counts,o=this._match,s=this._stop,a=e.field,u=e.as||["text","count"],l=n(f=>r[f]=1+(r[f]||0)),c=n(f=>r[f]-=1);return i?t.visit(t.SOURCE,l):(t.visit(t.ADD,l),t.visit(t.REM,c)),this._finish(t,u)},_parameterCheck(e,t){let n=!1;return(e.modified("stopwords")||!this._stop)&&(this._stop=new RegExp("^"+(e.stopwords||"")+"$","i"),n=!0),(e.modified("pattern")||!this._match)&&(this._match=new RegExp(e.pattern||"[\\w']+","g"),n=!0),(e.modified("field")||t.modified(e.field.fields))&&(n=!0),n&&(this._counts={}),n},_finish(e,t){const n=this._counts,i=this._tuples||(this._tuples={}),r=t[0],o=t[1],s=e.fork(e.NO_SOURCE|e.NO_FIELDS);let a,u,l;for(a in n)u=i[a],l=n[a]||0,!u&&l?(i[a]=u=Ee({}),u[r]=a,u[o]=l,s.add.push(u)):l===0?(u&&s.rem.push(u),n[a]=null,i[a]=null):u[o]!==l&&(u[o]=l,s.mod.push(u));return s.modifies(t)}});function Gy(e){F.call(this,null,e)}Gy.Definition={type:"Cross",metadata:{generates:!0},params:[{name:"filter",type:"expr"},{name:"as",type:"string",array:!0,length:2,default:["a","b"]}]};q(Gy,F,{transform(e,t){const n=t.fork(t.NO_SOURCE),i=e.as||["a","b"],r=i[0],o=i[1],s=!this.value||t.changed(t.ADD_REM)||e.modified("as")||e.modified("filter");let a=this.value;return s?(a&&(n.rem=a),a=t.materialize(t.SOURCE).source,n.add=this.value=uP(a,r,o,e.filter||gi)):n.mod=a,n.source=this.value,n.modifies(i)}});function uP(e,t,n,i){for(var r=[],o={},s=e.length,a=0,u,l;a<s;++a)for(o[t]=l=e[a],u=0;u<s;++u)o[n]=e[u],i(o)&&(r.push(Ee(o)),o={},o[t]=l);return r}const jw={kde:MA,mixture:zz,normal:CA,lognormal:Oz,uniform:Pz},lP="distributions",qw="function",cP="field";function VA(e,t){const n=e[qw];X(jw,n)||R("Unknown distribution function: "+n);const i=jw[n]();for(const r in e)r===cP?i.data((e.from||t()).map(e[r])):r===lP?i[r](e[r].map(o=>VA(o,t))):typeof i[r]===qw&&i[r](e[r]);return i}function Vy(e){F.call(this,null,e)}const YA=[{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}]}],fP={key:{function:"mixture"},params:[{name:"distributions",type:"param",array:!0,params:YA},{name:"weights",type:"number",array:!0}]};Vy.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:YA.concat(fP)},{name:"as",type:"string",array:!0,default:["value","density"]}]};q(Vy,F,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const i=VA(e.distribution,dP(t)),r=e.steps||e.minsteps||25,o=e.steps||e.maxsteps||200;let s=e.method||"pdf";s!=="pdf"&&s!=="cdf"&&R("Invalid density method: "+s),!e.extent&&!i.data&&R("Missing density extent parameter."),s=i[s];const a=e.as||["value","density"],u=e.extent||Ir(i.data()),l=Uy(s,u,r,o).map(c=>{const f={};return f[a[0]]=c[0],f[a[1]]=c[1],Ee(f)});this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function dP(e){return()=>e.materialize(e.SOURCE).source}function XA(e,t){return e?e.map((n,i)=>t[i]||Xe(n)):null}
6function Yy(e,t,n){const i=[],r=f=>f(u);let o,s,a,u,l,c;if(t==null)i.push(e.map(n));else for(o={},s=0,a=e.length;s<a;++s)u=e[s],l=t.map(r),c=o[l],c||(o[l]=c=[],c.dims=l,i.push(c)),c.push(n(u));return i}const KA="bin";function Xy(e){F.call(this,null,e)}Xy.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:KA}]};const hP=(e,t)=>tg(Ir(e,t))/30;q(Xy,F,{transform(e,t){if(this.value&&!(e.modified()||t.changed()))return t;const n=t.materialize(t.SOURCE).source,i=Yy(t.source,e.groupby,nn),r=e.smooth||!1,o=e.field,s=e.step||hP(n,o),a=ea((g,p)=>o(g)-o(p)),u=e.as||KA,l=i.length;let c=1/0,f=-1/0,d=0,h;for(;d<l;++d){const g=i[d].sort(a);h=-1;for(const p of Dz(g,s,r,o))p<c&&(c=p),p>f&&(f=p),g[++h][u]=p}return this.value={start:c,stop:f,step:s},t.reflow(!0).modifies(u)}});function ZA(e){Ne.call(this,null,gP,e),this.modified(!0)}q(ZA,Ne);function gP(e){const t=e.expr;return this.value&&!e.modified("expr")?this.value:Nn(n=>t(n,e),Qt(t),Xe(t))}function Ky(e){F.call(this,[void 0,void 0],e)}Ky.Definition={type:"Extent",metadata:{},params:[{name:"field",type:"field",required:!0}]};q(Ky,F,{transform(e,t){const n=this.value,i=e.field,r=t.changed()||t.modified(i.fields)||e.modified("field");let o=n[0],s=n[1];if((r||o==null)&&(o=1/0,s=-1/0),t.visit(r?t.SOURCE:t.ADD,a=>{const u=Xt(i(a));u!=null&&(u<o&&(o=u),u>s&&(s=u))}),!Number.isFinite(o)||!Number.isFinite(s)){let a=Xe(i);a&&(a=` for field "${a}"`),t.dataflow.warn(`Infinite extent${a}: [${o}, ${s}]`),o=s=void 0}this.value=[o,s]}});function Zy(e,t){Ne.call(this,e),this.parent=t,this.count=0}q(Zy,Ne,{connect(e){return this.detachSubflow=e.detachSubflow,this.targets().add(e),e.source=this},add(e){this.count+=1,this.value.add.push(e)},rem(e){this.count-=1,this.value.rem.push(e)},mod(e){this.value.mod.push(e)},init(e){this.value.init(e,e.NO_SOURCE)},evaluate(){return this.value}});function fg(e){F.call(this,{},e),this._keys=vc();const t=this._targets=[];t.active=0,t.forEach=n=>{for(let i=0,r=t.active;i<r;++i)n(t[i],i,t)}}q(fg,F,{activate(e){this._targets[this._targets.active++]=e},subflow(e,t,n,i){const r=this.value;let o=X(r,e)&&r[e],s,a;return o?o.value.stamp<n.stamp&&(o.init(n),this.activate(o)):(a=i||(a=this._group[e])&&a.tuple,s=n.dataflow,o=new Zy(n.fork(n.NO_SOURCE),this),s.add(o).connect(t(s,e,a)),r[e]=o,this.activate(o)),o},clean(){const e=this.value;let t=0;for(const n in e)if(e[n].count===0){const i=e[n].detachSubflow;i&&i(),delete e[n],++t}if(t){const n=this._targets.filter(i=>i&&i.count>0);this.initTargets(n)}},initTargets(e){const t=this._targets,n=t.length,i=e?e.length:0;let r=0;for(;r<i;++r)t[r]=e[r];for(;r<n&&t[r]!=null;++r)t[r]=null;t.active=i},transform(e,t){const n=t.dataflow,i=e.key,r=e.subflow,o=this._keys,s=e.modified("key"),a=u=>this.subflow(u,r,t);return this._group=e.group||{},this.initTargets(),t.visit(t.REM,u=>{const l=ie(u),c=o.get(l);c!==void 0&&(o.delete(l),a(c).rem(u))}),t.visit(t.ADD,u=>{const l=i(u);o.set(ie(u),l),a(l).add(u)}),s||t.modified(i.fields)?t.visit(t.MOD,u=>{const l=ie(u),c=o.get(l),f=i(u);c===f?a(f).mod(u):(o.set(l,f),a(c).rem(u),a(f).add(u))}):t.changed(t.MOD)&&t.visit(t.MOD,u=>{a(o.get(ie(u))).mod(u)}),s&&t.visit(t.REFLOW,u=>{const l=ie(u),c=o.get(l),f=i(u);c!==f&&(o.set(l,f),a(c).rem(u),a(f).add(u))}),t.clean()?n.runAfter(()=>{this.clean(),o.clean()}):o.empty>n.cleanThreshold&&n.runAfter(o.clean),t}});function QA(e){Ne.call(this,null,pP,e)}q(QA,Ne);function pP(e){return this.value&&!e.modified()?this.value:z(e.name)?H(e.name).map(t=>hi(t)):hi(e.name,e.as)}function Qy(e){F.call(this,vc(),e)}Qy.Definition={type:"Filter",metadata:{changes:!0},params:[{name:"expr",type:"expr",required:!0}]};q(Qy,F,{transform(e,t){const n=t.dataflow,i=this.value,r=t.fork(),o=r.add,s=r.rem,a=r.mod,u=e.expr;let l=!0;t.visit(t.REM,f=>{const d=ie(f);i.has(d)?i.delete(d):s.push(f)}),t.visit(t.ADD,f=>{u(f,e)?o.push(f):i.set(ie(f),1)});function c(f){const d=ie(f),h=u(f,e),g=i.get(d);
6h&&g?(i.delete(d),o.push(f)):!h&&!g?(i.set(d,1),s.push(f)):l&&h&&!g&&a.push(f)}return t.visit(t.MOD,c),e.modified()&&(l=!1,t.visit(t.REFLOW,c)),i.empty>n.cleanThreshold&&n.runAfter(i.clean),r}});function Jy(e){F.call(this,[],e)}Jy.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}]};q(Jy,F,{transform(e,t){const n=t.fork(t.NO_SOURCE),i=e.fields,r=XA(i,e.as||[]),o=e.index||null,s=r.length;return n.rem=this.value,t.visit(t.SOURCE,a=>{const u=i.map(g=>g(a)),l=u.reduce((g,p)=>Math.max(g,p.length),0);let c=0,f,d,h;for(;c<l;++c){for(d=Ry(a),f=0;f<s;++f)d[r[f]]=(h=u[f][c])==null?null:h;o&&(d[o]=c),n.add.push(d)}}),this.value=n.source=n.add,o&&n.modifies(o),n.modifies(r)}});function ex(e){F.call(this,[],e)}ex.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"]}]};q(ex,F,{transform(e,t){const n=t.fork(t.NO_SOURCE),i=e.fields,r=i.map(Xe),o=e.as||["key","value"],s=o[0],a=o[1],u=i.length;return n.rem=this.value,t.visit(t.SOURCE,l=>{for(let c=0,f;c<u;++c)f=Ry(l),f[s]=r[c],f[a]=i[c](l),n.add.push(f)}),this.value=n.source=n.add,n.modifies(o)}});function tx(e){F.call(this,null,e)}tx.Definition={type:"Formula",metadata:{modifies:!0},params:[{name:"expr",type:"expr",required:!0},{name:"as",type:"string",required:!0},{name:"initonly",type:"boolean"}]};q(tx,F,{transform(e,t){const n=e.expr,i=e.as,r=e.modified(),o=e.initonly?t.ADD:r?t.SOURCE:t.modified(n.fields)||t.modified(i)?t.ADD_MOD:t.ADD;return r&&(t=t.materialize().reflow(!0)),e.initonly||t.modifies(i),t.visit(o,s=>s[i]=n(s,e))}});function JA(e){F.call(this,[],e)}q(JA,F,{transform(e,t){const n=t.fork(t.ALL),i=e.generator;let r=this.value,o=e.size-r.length,s,a,u;if(o>0){for(s=[];--o>=0;)s.push(u=Ee(i(e))),r.push(u);n.add=n.add.length?n.materialize(n.ADD).add.concat(s):s}else a=r.slice(0,-o),n.rem=n.rem.length?n.materialize(n.REM).rem.concat(a):a,r=r.slice(-o);return n.source=this.value=r,n}});const xf={value:"value",median:z$,mean:_6,min:x0,max:bs},mP=[];function nx(e){F.call(this,[],e)}nx.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 yP(e){var t=e.method||xf.value,n;if(xf[t]==null)R("Unrecognized imputation method: "+t);else return t===xf.value?(n=e.value!==void 0?e.value:0,()=>n):xf[t]}function xP(e){const t=e.field;return n=>n?t(n):NaN}q(nx,F,{transform(e,t){var n=t.fork(t.ALL),i=yP(e),r=xP(e),o=Xe(e.field),s=Xe(e.key),a=(e.groupby||[]).map(Xe),u=bP(t.source,e.groupby,e.key,e.keyvals),l=[],c=this.value,f=u.domain.length,d,h,g,p,m,y,x,b,v,w;for(m=0,b=u.length;m<b;++m)for(d=u[m],g=d.values,h=NaN,x=0;x<f;++x)if(d[x]==null){for(p=u.domain[x],w={_impute:!0},y=0,v=g.length;y<v;++y)w[a[y]]=g[y];w[s]=p,w[o]=Number.isNaN(h)?h=i(d,r):h,l.push(Ee(w))}return l.length&&(n.add=n.materialize(n.ADD).add.concat(l)),c.length&&(n.rem=n.materialize(n.REM).rem.concat(c)),this.value=l,n}});function bP(e,t,n,i){var r=y=>y(m),o=[],s=i?i.slice():[],a={},u={},l,c,f,d,h,g,p,m;for(s.forEach((y,x)=>a[y]=x+1),d=0,p=e.length;d<p;++d)m=e[d],g=n(m),h=a[g]||(a[g]=s.push(g)),c=(l=t?t.map(r):mP)+"",(f=u[c])||(f=u[c]=[],o.push(f),f.values=l),f[h-1]=m;return o.domain=s,o}function ix(e){$o.call(this,e)}ix.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:kc},{name:"as",type:"string",null:!0,array:!0},{name:"key",type:"field"}]};q(ix,$o,{transform(e,t){const n=this,i=e.modified();let r;return n.value&&(i||t.modified(n._inputs,!0))?(r=n.value=i?n.init(e):{},t.visit(t.SOURCE,o=>n.add(o))):(r=n.value=n.value||this.init(e),t.visit(t.REM,o=>n.rem(o)),t.visit(t.ADD,o=>n.add(o))),n.changes(),t.visit(t.SOURCE,o=>{le(o,r[n.cellkey(o)].tuple)}),t.reflow(i).modifies(this._outputs)},changes(){const e=this._adds,t=this._mods;let n,i;for(n=0,i=this._alen;n<i;++n)this.celltuple(e[n]),e[n]=null;for(n=0,i=this._mlen;n<i;++n)this.celltuple(t[n]),t[n]=null;this._alen=this._mlen=0}});function rx(e){F.call(this,null,e)}rx.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"]}]};q(rx,F,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const i=t.materialize(t.SOURCE).source,r=Yy(i,e.groupby,e.field),o=(e.groupby||[]).map(Xe),s=e.bandwidth,a=e.cumulative?"cdf":"pdf",u=e.as||["value","density"],l=[];let c=e.extent,f=e.steps||e.minsteps||25,d=e.steps||e.maxsteps||200;a!=="pdf"&&a!=="cdf"&&R("Invalid density method: "+a),e.resolve==="shared"&&(c||(c=Ir(i,e.field)),f=d=e.steps||d),r.forEach(h=>{const g=MA(h,s)[a],p=e.counts?h.length:1,m=c||Ir(h);
vendor: 5,283 bytes, line 6
6Uy(g,m,f,d).forEach(y=>{const x={};for(let b=0;b<o.length;++b)x[o[b]]=h.dims[b];x[u[0]]=y[0],x[u[1]]=y[1]*p,l.push(Ee(x))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=l}return n}});function eC(e){Ne.call(this,null,vP,e)}q(eC,Ne);function vP(e){return this.value&&!e.modified()?this.value:_$(e.fields,e.flat)}function tC(e){F.call(this,[],e),this._pending=null}q(tC,F,{transform(e,t){const n=t.dataflow;return this._pending?rm(this,t,this._pending):wP(e)?t.StopPropagation:e.values?rm(this,t,n.parse(e.values,e.format)):e.async?{async:n.request(e.url,e.format).then(r=>(this._pending=H(r.data),o=>o.touch(this)))}:n.request(e.url,e.format).then(i=>rm(this,t,H(i.data)))}});function wP(e){return e.modified("async")&&!(e.modified("values")||e.modified("url")||e.modified("format"))}function rm(e,t,n){n.forEach(Ee);const i=t.fork(t.NO_FIELDS&t.NO_SOURCE);return i.rem=e.value,e.value=i.source=i.add=n,e._pending=null,i.rem.length&&i.clean(!0),i}function ox(e){F.call(this,{},e)}ox.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}]};q(ox,F,{transform(e,t){const n=e.fields,i=e.index,r=e.values,o=e.default==null?null:e.default,s=e.modified(),a=n.length;let u=s?t.SOURCE:t.ADD,l=t,c=e.as,f,d,h;return r?(d=r.length,a>1&&!c&&R('Multi-field lookup requires explicit "as" parameter.'),c&&c.length!==a*d&&R('The "as" parameter has too few output field names.'),c=c||r.map(Xe),f=function(g){for(var p=0,m=0,y,x;p<a;++p)if(x=i.get(n[p](g)),x==null)for(y=0;y<d;++y,++m)g[c[m]]=o;else for(y=0;y<d;++y,++m)g[c[m]]=r[y](x)}):(c||R("Missing output field names."),f=function(g){for(var p=0,m;p<a;++p)m=i.get(n[p](g)),g[c[p]]=m??o}),s?l=t.reflow(!0):(h=n.some(g=>t.modified(g.fields)),u|=h?t.MOD:0),t.visit(u,f),l.modifies(c)}});function nC(e){Ne.call(this,null,_P,e)}q(nC,Ne);function _P(e){if(this.value&&!e.modified())return this.value;const t=e.extents,n=t.length;let i=1/0,r=-1/0,o,s;for(o=0;o<n;++o)s=t[o],s[0]<i&&(i=s[0]),s[1]>r&&(r=s[1]);return[i,r]}function iC(e){Ne.call(this,null,SP,e)}q(iC,Ne);function SP(e){return this.value&&!e.modified()?this.value:e.values.reduce((t,n)=>t.concat(n),[])}function rC(e){F.call(this,null,e)}q(rC,F,{transform(e,t){return this.modified(e.modified()),this.value=e,t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function sx(e){$o.call(this,e)}sx.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:kc,default:"sum"},{name:"limit",type:"number",default:0},{name:"key",type:"field"}]};q(sx,$o,{_transform:$o.prototype.transform,transform(e,t){return this._transform(EP(e,t),t)}});function EP(e,t){const n=e.field,i=e.value,r=(e.op==="count"?"__count__":e.op)||"sum",o=Qt(n).concat(Qt(i)),s=$P(n,e.limit||0,t);return t.changed()&&e.set("__pivot__",null,null,!0),{key:e.key,groupby:e.groupby,ops:s.map(()=>r),fields:s.map(a=>kP(a,n,i,o)),as:s.map(a=>a+""),modified:e.modified.bind(e)}}function kP(e,t,n,i){return Nn(r=>t(r)===e?n(r):NaN,i,e+"")}function $P(e,t,n){const i={},r=[];return n.visit(n.SOURCE,o=>{const s=e(o);i[s]||(i[s]=1,r.push(s))}),r.sort(eg),t?r.slice(0,t):r}function oC(e){fg.call(this,e)}q(oC,fg,{transform(e,t){const n=e.subflow,i=e.field,r=o=>this.subflow(ie(o),n,t,o);return(e.modified("field")||i&&t.modified(Qt(i)))&&R("PreFacet does not support field modification."),this.initTargets(),i?(t.visit(t.MOD,o=>{const s=r(o);i(o).forEach(a=>s.mod(a))}),t.visit(t.ADD,o=>{const s=r(o);i(o).forEach(a=>s.add(Ee(a)))}),t.visit(t.REM,o=>{const s=r(o);i(o).forEach(a=>s.rem(a))})):(t.visit(t.MOD,o=>r(o).mod(o)),t.visit(t.ADD,o=>r(o).add(o)),t.visit(t.REM,o=>r(o).rem(o))),t.clean()&&t.runAfter(()=>this.clean()),t}});function ax(e){F.call(this,null,e)}ax.Definition={type:"Project",metadata:{generates:!0,changes:!0},params:[{name:"fields",type:"field",array:!0},{name:"as",type:"string",null:!0,array:!0}]};q(ax,F,{transform(e,t){const n=t.fork(t.NO_SOURCE),i=e.fields,r=XA(e.fields,e.as||[]),o=i?(a,u)=>AP(a,u,i,r):lg;let s;return this.value?s=this.value:(t=t.addAll(),s=this.value={}),t.visit(t.REM,a=>{const u=ie(a);n.rem.push(s[u]),s[u]=null}),t.visit(t.ADD,a=>{const u=o(a,Ee({}));s[ie(a)]=u,n.add.push(u)}),t.visit(t.MOD,a=>{n.mod.push(o(a,s[ie(a)]))}),n}});function AP(e,t,n,i){for(let r=0,o=n.length;r<o;++r)t[i[r]]=n[r](e);return t}function sC(e){F.call(this,null,e)}q(sC,F,{transform(e,t){return this.value=e.value,e.modified("value")?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function ux(e){F.call(this,null,e)}ux.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 CP=1e-14;q(ux,F,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=e.as||["prob","value"];if(this.value&&!e.modified()&&!t.changed())return n.source=this.value,
6n;const r=t.materialize(t.SOURCE).source,o=Yy(r,e.groupby,e.field),s=(e.groupby||[]).map(Xe),a=[],u=e.step||.01,l=e.probs||An(u/2,1-CP,u),c=l.length;return o.forEach(f=>{const d=SA(f,l);for(let h=0;h<c;++h){const g={};for(let p=0;p<s.length;++p)g[s[p]]=f.dims[p];g[i[0]]=l[h],g[i[1]]=d[h],a.push(Ee(g))}}),this.value&&(n.rem=this.value),this.value=n.add=n.source=a,n}});function aC(e){F.call(this,null,e)}q(aC,F,{transform(e,t){let n,i;return this.value?i=this.value:(n=t=t.addAll(),i=this.value={}),e.derive&&(n=t.fork(t.NO_SOURCE),t.visit(t.REM,r=>{const o=ie(r);n.rem.push(i[o]),i[o]=null}),t.visit(t.ADD,r=>{const o=Ry(r);i[ie(r)]=o,n.add.push(o)}),t.visit(t.MOD,r=>{const o=i[ie(r)];for(const s in r)o[s]=r[s],n.modifies(s);n.mod.push(o)})),n}});function lx(e){F.call(this,[],e),this.count=0}lx.Definition={type:"Sample",metadata:{},params:[{name:"size",type:"number",default:1e3}]};q(lx,F,{transform(e,t){const n=t.fork(t.NO_SOURCE),i=e.modified("size"),r=e.size,o=this.value.reduce((c,f)=>(c[ie(f)]=1,c),{});let s=this.value,a=this.count,u=0;function l(c){let f,d;s.length<r?s.push(c):(d=~~((a+1)*jr()),d<s.length&&d>=u&&(f=s[d],o[ie(f)]&&n.rem.push(f),s[d]=c)),++a}if(t.rem.length&&(t.visit(t.REM,c=>{const f=ie(c);o[f]&&(o[f]=-1,n.rem.push(c)),--a}),s=s.filter(c=>o[ie(c)]!==-1)),(t.rem.length||i)&&s.length<r&&t.source&&(u=a=s.length,t.visit(t.SOURCE,c=>{o[ie(c)]||l(c)}),u=-1),i&&s.length>r){const c=s.length-r;for(let f=0;f<c;++f)o[ie(s[f])]=-1,n.rem.push(s[f]);s=s.slice(c)}return t.mod.length&&t.visit(t.MOD,c=>{o[ie(c)]&&n.mod.push(c)}),t.add.length&&t.visit(t.ADD,l),(t.add.length||u<0)&&(n.add=s.filter(c=>!o[ie(c)])),this.count=a,this.value=n.source=s,n}});function cx(e){F.call(this,null,e)}cx.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"}]};q(cx,F,{transform(e,t){if(this.value&&!e.modified())return;const n=t.materialize().fork(t.MOD),i=e.as||"data";return n.rem=this.value?t.rem.concat(this.value):t.rem,this.value=An(e.start,e.stop,e.step||1).map(r=>{const o={};return o[i]=r,Ee(o)}),n.add=t.add.concat(this.value),n}});function uC(e){F.call(this,null,e),this.modified(!0)}q(uC,F,{transform(e,t){return this.value=t.source,t.changed()?t.fork(t.NO_SOURCE|t.NO_FIELDS):t.StopPropagation}});function fx(e){F.call(this,null,e)}const lC=["unit0","unit1"];fx.Definition={type:"TimeUnit",metadata:{modifies:!0},params:[{name:"field",type:"field",required:!0},{name:"interval",type:"boolean",default:!0},{name:"units",type:"enum",values:G$,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:lC}]};q(fx,F,{transform(e,t){const n=e.field,i=e.interval!==!1,r=e.timezone==="utc",o=this._floor(e,t),s=(r?_c:wc)(o.unit).offset,a=e.as||lC,u=a[0],l=a[1],c=o.step;let f=o.start||1/0,d=o.stop||-1/0,h=t.ADD;return(e.modified()||t.changed(t.REM)||t.modified(Qt(n)))&&(t=t.reflow(!0),h=t.SOURCE,f=1/0,d=-1/0),t.visit(h,g=>{const p=n(g);let m,y;p==null?(g[u]=null,i&&(g[l]=null)):(g[u]=m=y=o(p),i&&(g[l]=y=s(m,c)),m<f&&(f=m),y>d&&(d=y))}),o.start=f,o.stop=d,t.modifies(i?a:u)},_floor(e,t){const n=e.timezone==="utc",{units:i,step:r}=e.units?{units:e.units,step:e.step||1}:m4({extent:e.extent||Ir(t.materialize(t.SOURCE).source,e.field),maxbins:e.maxbins}),o=V$(i),s=this.value||{},a=(n?s4:i4)(o,r);return a.unit=xe(o),a.units=o,a.step=r,a.start=s.start,a.stop=s.stop,this.value=a}});function cC(e){F.call(this,vc(),e)}q(cC,F,{transform(e,t){const n=t.dataflow,i=e.field,r=this.value,o=a=>r.set(i(a),a);let s=!0;return e.modified("field")||t.modified(i.fields)?(r.clear(),t.visit(t.SOURCE,o)):t.changed()?(t.visit(t.REM,a=>r.delete(i(a))),t.visit(t.ADD,o)):s=!1,this.modified(s),r.empty>n.cleanThreshold&&n.runAfter(r.clean),t.fork()}});function fC(e){F.call(this,null,e)}q(fC,F,{transform(e,t){(!this.value||e.modified("field")||e.modified("sort")||t.changed()||e.sort&&t.modified(e.sort.fields))&&(this.value=(e.sort?t.source.slice().sort(ea(e.sort)):t.source).map(e.field))}});function MP(e,t,n,i){const r=Yl[e](t,n);
6return{init:r.init||ss,update:function(o,s){s[i]=r.next(o)}}}const Yl={row_number:function(){return{next:e=>e.index+1}},rank:function(){let e;return{init:()=>e=1,next:t=>{const n=t.index,i=t.data;return n&&t.compare(i[n-1],i[n])?e=n+1:e}}},dense_rank:function(){let e;return{init:()=>e=1,next:t=>{const n=t.index,i=t.data;return n&&t.compare(i[n-1],i[n])?++e:e}}},percent_rank:function(){const e=Yl.rank(),t=e.next;return{init:e.init,next:n=>(t(n)-1)/(n.data.length-1)}},cume_dist:function(){let e;return{init:()=>e=0,next:t=>{const n=t.data,i=t.compare;let r=t.index;if(e<r){for(;r+1<n.length&&!i(n[r],n[r+1]);)++r;e=r}return(1+e)/n.length}}},ntile:function(e,t){t=+t,t>0||R("ntile num must be greater than zero.");const n=Yl.cume_dist(),i=n.next;return{init:n.init,next:r=>Math.ceil(t*i(r))}},lag:function(e,t){return t=+t||1,{next:n=>{const i=n.index-t;return i>=0?e(n.data[i]):null}}},lead:function(e,t){return t=+t||1,{next:n=>{const i=n.index+t,r=n.data;return i<r.length?e(r[i]):null}}},first_value:function(e){return{next:t=>e(t.data[t.i0])}},last_value:function(e){return{next:t=>e(t.data[t.i1-1])}},nth_value:function(e,t){return t=+t,t>0||R("nth_value nth must be greater than zero."),{next:n=>{const i=n.i0+(t-1);return i<n.i1?e(n.data[i]):null}}},prev_value:function(e){let t;return{init:()=>t=null,next:n=>{const i=e(n.data[n.index]);return i!=null?t=i:t}}},next_value:function(e){let t,n;return{init:()=>(t=null,n=-1),next:i=>{const r=i.data;return i.index<=n?t:(n=FP(e,r,i.index))<0?(n=r.length,t=null):t=e(r[n])}}}};function FP(e,t,n){for(let i=t.length;n<i;++n)if(e(t[n])!=null)return n;return-1}const DP=Object.keys(Yl);function dC(e){const t=H(e.ops),n=H(e.fields),i=H(e.params),r=H(e.aggregate_params),o=H(e.as),s=this.outputs=[],a=this.windows=[],u={},l={},c=[],f=[];let d=!0;function h(g){H(Qt(g)).forEach(p=>u[p]=1)}h(e.sort),t.forEach((g,p)=>{const m=n[p],y=i[p],x=r[p]||null,b=Xe(m),v=UA(g,b,o[p]);if(h(m),s.push(v),X(Yl,g))a.push(MP(g,m,y,v));else{if(m==null&&g!=="count"&&R("Null aggregate field specified."),g==="count"){c.push(v);return}d=!1;let w=l[b];w||(w=l[b]=[],w.field=m,f.push(w)),w.push(jA(g,x,v))}}),(c.length||f.length)&&(this.cell=TP(f,c,d)),this.inputs=Object.keys(u)}const hC=dC.prototype;hC.init=function(){this.windows.forEach(e=>e.init()),this.cell&&this.cell.init()};hC.update=function(e,t){const n=this.cell,i=this.windows,r=e.data,o=i&&i.length;let s;if(n){for(s=e.p0;s<e.i0;++s)n.rem(r[s]);for(s=e.p1;s<e.i1;++s)n.add(r[s]);n.set(t)}for(s=0;s<o;++s)i[s].update(e,t)};function TP(e,t,n){e=e.map(u=>WA(u,u.field));const i={num:0,agg:null,store:!1,count:t};if(!n)for(var r=e.length,o=i.agg=Array(r),s=0;s<r;++s)o[s]=new e[s](i);if(i.store)var a=i.data=new jy;return i.add=function(u){if(i.num+=1,!n){a&&a.add(u);for(let l=0;l<r;++l)o[l].add(o[l].get(u),u)}},i.rem=function(u){if(i.num-=1,!n){a&&a.rem(u);for(let l=0;l<r;++l)o[l].rem(o[l].get(u),u)}},i.set=function(u){let l,c;for(a&&a.values(),l=0,c=t.length;l<c;++l)u[t[l]]=i.num;if(!n)for(l=0,c=o.length;l<c;++l)o[l].set(u)},i.init=function(){i.num=0,a&&a.reset();for(let u=0;u<r;++u)o[u].init()},i}function dx(e){F.call(this,{},e),this._mlen=0,this._mods=[]}dx.Definition={type:"Window",metadata:{modifies:!0},params:[{name:"sort",type:"compare"},{name:"groupby",type:"field",array:!0},{name:"ops",type:"enum",array:!0,values:DP.concat(kc)},{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}]};q(dx,F,{transform(e,t){this.stamp=t.stamp;const n=e.modified(),i=ea(e.sort),r=M0(e.groupby),o=a=>this.group(r(a));let s=this.state;(!s||n)&&(s=this.state=new dC(e)),n||t.modified(s.inputs)?(this.value={},t.visit(t.SOURCE,a=>o(a).add(a))):(t.visit(t.REM,a=>o(a).remove(a)),t.visit(t.ADD,a=>o(a).add(a)));for(let a=0,u=this._mlen;a<u;++a)NP(this._mods[a],s,i,e);return this._mlen=0,this._mods=[],t.reflow(n).modifies(s.outputs)},group(e){let t=this.value[e];return t||(t=this.value[e]=HA(ie),t.stamp=-1),t.stamp<this.stamp&&(t.stamp=this.stamp,this._mods[this._mlen++]=t),t}});function NP(e,t,n,i){const r=i.sort,o=r&&!i.ignorePeers,s=i.frame||[null,0],a=e.data(n),u=a.length,l=o?_u(r):null,c={i0:0,i1:0,p0:0,p1:0,index:0,data:a,compare:r||rn(-1)};t.init();for(let f=0;f<u;++f)RP(c,s,f,u),o&&OP(c,l),t.update(c,a[f])}function RP(e,t,n,i){e.p0=e.i0,e.p1=e.i1,e.i0=t[0]==null?0:Math.max(0,n-Math.abs(t[0])),e.i1=t[1]==null?i:Math.min(i,n+Math.abs(t[1])+1),e.index=n}function OP(e,t){const n=e.i0,i=e.i1-1,r=e.compare,o=e.data,s=o.length-1;n>0&&!r(o[n],o[n-1])&&(e.i0=t.left(o,o[n])),i<s&&!r(o[i],o[i+1])&&(e.i1=t.right(o,o[i]))}const zP=Object.freeze(Object.defineProperty({__proto__:null,aggregate:$o,bin:qy,collect:Wy,compare:GA,countpattern:Hy,cross:Gy,density:Vy,dotbin:Xy,expression:ZA,extent:Ky,facet:fg,field:QA,filter:Qy,flatten:Jy,fold:ex,formula:tx,generate:JA,impute:nx,joinaggregate:ix,kde:rx,key:eC,load:tC,lookup:ox,multiextent:nC,multivalues:iC,params:rC,pivot:sx,prefacet:oC,project:ax,proxy:sC,quantile:ux,relay:aC,sample:lx,sequence:cx,sieve:uC,subflow:Zy,timeunit:fx,tupleindex:cC,values:fC,window:dx},Symbol.toStringTag,{value:"Module"}));function Se(e){return function(){return e}}
6const Ww=Math.abs,Dt=Math.atan2,es=Math.cos,PP=Math.max,om=Math.min,Fi=Math.sin,ds=Math.sqrt,Nt=1e-12,Xa=Math.PI,Md=Xa/2,gC=2*Xa;function LP(e){return e>1?0:e<-1?Xa:Math.acos(e)}function Hw(e){return e>=1?Md:e<=-1?-Md:Math.asin(e)}const F0=Math.PI,D0=2*F0,rs=1e-6,IP=D0-rs;function pC(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function BP(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return pC;const n=10**t;return function(i){this._+=i[0];for(let r=1,o=i.length;r<o;++r)this._+=Math.round(arguments[r]*n)/n+i[r]}}let hx=class{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?pC:BP(t)}moveTo(t,n){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,n){this._append`L${this._x1=+t},${this._y1=+n}`}quadraticCurveTo(t,n,i,r){this._append`Q${+t},${+n},${this._x1=+i},${this._y1=+r}`}bezierCurveTo(t,n,i,r,o,s){this._append`C${+t},${+n},${+i},${+r},${this._x1=+o},${this._y1=+s}`}arcTo(t,n,i,r,o){if(t=+t,n=+n,i=+i,r=+r,o=+o,o<0)throw new Error(`negative radius: ${o}`);let s=this._x1,a=this._y1,u=i-t,l=r-n,c=s-t,f=a-n,d=c*c+f*f;if(this._x1===null)this._append`M${this._x1=t},${this._y1=n}`;else if(d>rs)if(!(Math.abs(f*u-l*c)>rs)||!o)this._append`L${this._x1=t},${this._y1=n}`;else{let h=i-s,g=r-a,p=u*u+l*l,m=h*h+g*g,y=Math.sqrt(p),x=Math.sqrt(d),b=o*Math.tan((F0-Math.acos((p+d-m)/(2*y*x)))/2),v=b/x,w=b/y;Math.abs(v-1)>rs&&this._append`L${t+v*c},${n+v*f}`,this._append`A${o},${o},0,0,${+(f*h>c*g)},${this._x1=t+w*u},${this._y1=n+w*l}`}}arc(t,n,i,r,o,s){if(t=+t,n=+n,i=+i,s=!!s,i<0)throw new Error(`negative radius: ${i}`);let a=i*Math.cos(r),u=i*Math.sin(r),l=t+a,c=n+u,f=1^s,d=s?r-o:o-r;this._x1===null?this._append`M${l},${c}`:(Math.abs(this._x1-l)>rs||Math.abs(this._y1-c)>rs)&&this._append`L${l},${c}`,i&&(d<0&&(d=d%D0+D0),d>IP?this._append`A${i},${i},0,1,${f},${t-a},${n-u}A${i},${i},0,1,${f},${this._x1=l},${this._y1=c}`:d>rs&&this._append`A${i},${i},0,${+(d>=F0)},${f},${this._x1=t+i*Math.cos(o)},${this._y1=n+i*Math.sin(o)}`)}rect(t,n,i,r){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${i=+i}v${+r}h${-i}Z`}toString(){return this._}};function gx(){return new hx}gx.prototype=hx.prototype;function dg(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const i=Math.floor(n);if(!(i>=0))throw new RangeError(`invalid digits: ${n}`);t=i}return e},()=>new hx(t)}function UP(e){return e.innerRadius}function jP(e){return e.outerRadius}function qP(e){return e.startAngle}function WP(e){return e.endAngle}function HP(e){return e&&e.padAngle}function GP(e,t,n,i,r,o,s,a){var u=n-e,l=i-t,c=s-r,f=a-o,d=f*u-c*l;if(!(d*d<Nt))return d=(c*(t-o)-f*(e-r))/d,[e+d*u,t+d*l]}function bf(e,t,n,i,r,o,s){var a=e-n,u=t-i,l=(s?o:-o)/ds(a*a+u*u),c=l*u,f=-l*a,d=e+c,h=t+f,g=n+c,p=i+f,m=(d+g)/2,y=(h+p)/2,x=g-d,b=p-h,v=x*x+b*b,w=r-o,S=d*p-g*h,_=(b<0?-1:1)*ds(PP(0,w*w*v-S*S)),E=(S*b-x*_)/v,k=(-S*x-b*_)/v,A=(S*b+x*_)/v,$=(-S*x+b*_)/v,D=E-m,M=k-y,O=A-m,C=$-y;return D*D+M*M>O*O+C*C&&(E=A,k=$),{cx:E,cy:k,x01:-c,y01:-f,x11:E*(r/w-1),y11:k*(r/w-1)}}function VP(){var e=UP,t=jP,n=Se(0),i=null,r=qP,o=WP,s=HP,a=null,u=dg(l);function l(){var c,f,d=+e.apply(this,arguments),h=+t.apply(this,arguments),g=r.apply(this,arguments)-Md,p=o.apply(this,arguments)-Md,m=Ww(p-g),y=p>g;if(a||(a=c=u()),h<d&&(f=h,h=d,d=f),!(h>Nt))a.moveTo(0,0);else if(m>gC-Nt)a.moveTo(h*es(g),h*Fi(g)),a.arc(0,0,h,g,p,!y),d>Nt&&(a.moveTo(d*es(p),d*Fi(p)),a.arc(0,0,d,p,g,y));else{var x=g,b=p,v=g,w=p,S=m,_=m,E=s.apply(this,arguments)/2,k=E>Nt&&(i?+i.apply(this,arguments):ds(d*d+h*h)),A=om(Ww(h-d)/2,+n.apply(this,arguments)),$=A,D=A,M,O;if(k>Nt){var C=Hw(k/d*Fi(E)),N=Hw(k/h*Fi(E));(S-=C*2)>Nt?(C*=y?1:-1,v+=C,w-=C):(S=0,v=w=(g+p)/2),(_-=N*2)>Nt?(N*=y?1:-1,x+=N,b-=N):(_=0,x=b=(g+p)/2)}var G=h*es(x),Q=h*Fi(x),Z=d*es(w),_e=d*Fi(w);if(A>Nt){var Ge=h*es(b),vt=h*Fi(b),st=d*es(v),wn=d*Fi(v),Ve;if(m<Xa)if(Ve=GP(G,Q,st,wn,Ge,vt,Z,_e)){var Mi=G-Ve[0],Zo=Q-Ve[1],ro=Ge-Ve[0],K=vt-Ve[1],ue=1/Fi(LP((Mi*ro+Zo*K)/(ds(Mi*Mi+Zo*Zo)*ds(ro*ro+K*K)))/2),de=ds(Ve[0]*Ve[0]+Ve[1]*Ve[1]);$=om(A,(d-de)/(ue-1)),D=om(A,(h-de)/(ue+1))}else $=D=0}_>Nt?D>Nt?(M=bf(st,wn,G,Q,h,D,y),O=bf(Ge,vt,Z,_e,h,D,y),a.moveTo(M.cx+M.x01,M.cy+M.y01),D<A?a.arc(M.cx,M.cy,D,Dt(M.y01,M.x01),Dt(O.y01,O.x01),!y):(a.arc(M.cx,M.cy,D,Dt(M.y01,M.x01),Dt(M.y11,M.x11),!y),a.arc(0,0,h,Dt(M.cy+M.y11,M.cx+M.x11),Dt(O.cy+O.y11,O.cx+O.x11),!y),a.arc(O.cx,O.cy,D,Dt(O.y11,O.x11),Dt(O.y01,O.x01),!y))):(a.moveTo(G,Q),a.arc(0,0,h,x,b,!y)):a.moveTo(G,Q),!(d>Nt)||!(S>Nt)?a.lineTo(Z,_e):$>Nt?(M=bf(Z,_e,Ge,vt,d,-$,y),O=bf(G,Q,st,wn,d,-$,y),a.lineTo(M.cx+M.x01,M.cy+M.y01),$<A?a.arc(M.cx,M.cy,$,Dt(M.y01,M.x01),Dt(O.y01,O.x01),!y):(a.arc(M.cx,M.cy,$,Dt(M.y01,M.x01),Dt(M.y11,M.x11),!y),a.arc(0,0,d,Dt(M.cy+M.y11,M.cx+M.x11),Dt(O.cy+O.y11,O.cx+O.x11),y),a.arc(O.cx,O.cy,$,Dt(O.y11,O.x11),Dt(O.y01,O.x01),!y))):a.arc(0,0,d,w,v,y)}if(a.closePath(),c)return a=null,c+""||null}return l.centroid=function(){var c=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,f=(+r.apply(this,arguments)+ +o.apply(this,arguments))/2-Xa/2;return[es(f)*c,Fi(f)*c]},l.innerRadius=function(c){return arguments.length?(e=typeof c=="function"?c:Se(+c),l):e},l.outerRadius=function(c){return arguments.length?(t=typeof c=="function"?c:Se(+c),l):t},l.cornerRadius=function(c){return arguments.length?(n=typeof c=="function"?c:Se(+c),l):n},l.padRadius=function(c){return arguments.length?(i=c==null?null:typeof c=="function"?c:Se(+c),l):i},l.startAngle=function(c){return arguments.length?(r=typeof c=="function"?c:Se(+c),l):r},l.endAngle=function(c){return arguments.length?(o=typeof c=="function"?c:Se(+c),l):o},l.padAngle=function(c){return arguments.length?(s=typeof c=="function"?c:Se(+c),l):s},l.context=function(c){return arguments.length?(a=c??null,l):a},l}function mC(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function yC(e){this._context=e}yC.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function px(e){return new yC(e)}function xC(e){return e[0]}function bC(e){return e[1]}function vC(e,t){var n=Se(!0),i=null,r=px,o=null,s=dg(a);e=typeof e=="function"?e:e===void 0?xC:Se(e),t=typeof t=="function"?t:t===void 0?bC:Se(t);function a(u){var l,c=(u=mC(u)).length,f,d=!1,h;for(i==null&&(o=r(h=s())),l=0;l<=c;++l)!(l<c&&n(f=u[l],l,u))===d&&((d=!d)?o.lineStart():o.lineEnd()),d&&o.point(+e(f,l,u),+t(f,l,u));if(h)return o=null,h+""||null}return a.x=function(u){return arguments.length?(e=typeof u=="function"?u:Se(+u),a):e},a.y=function(u){return arguments.length?(t=typeof u=="function"?u:Se(+u),a):t},a.defined=function(u){return arguments.length?(n=typeof u=="function"?u:Se(!!u),a):n},a.curve=function(u){return arguments.length?(r=u,i!=null&&(o=r(i)),a):r},a.context=function(u){return arguments.length?(u==null?i=o=null:o=r(i=u),a):i},a}function wC(e,t,n){var i=null,r=Se(!0),o=null,s=px,a=null,u=dg(l);e=typeof e=="function"?e:e===void 0?xC:Se(+e),t=typeof t=="function"?t:Se(t===void 0?0:+t),n=typeof n=="function"?n:n===void 0?bC:Se(+n);function l(f){var d,h,g,p=(f=mC(f)).length,m,y=!1,x,b=new Array(p),v=new Array(p);for(o==null&&(a=s(x=u())),d=0;d<=p;++d){if(!(d<p&&r(m=f[d],d,f))===y)if(y=!y)h=d,a.areaStart(),a.lineStart();else{for(a.lineEnd(),a.lineStart(),g=d-1;g>=h;--g)a.point(b[g],v[g]);a.lineEnd(),a.areaEnd()}y&&(b[d]=+e(m,d,f),v[d]=+t(m,d,f),a.point(i?+i(m,d,f):b[d],n?+n(m,d,f):v[d]))}if(x)return a=null,x+""||null}
6function c(){return vC().defined(r).curve(s).context(o)}return l.x=function(f){return arguments.length?(e=typeof f=="function"?f:Se(+f),i=null,l):e},l.x0=function(f){return arguments.length?(e=typeof f=="function"?f:Se(+f),l):e},l.x1=function(f){return arguments.length?(i=f==null?null:typeof f=="function"?f:Se(+f),l):i},l.y=function(f){return arguments.length?(t=typeof f=="function"?f:Se(+f),n=null,l):t},l.y0=function(f){return arguments.length?(t=typeof f=="function"?f:Se(+f),l):t},l.y1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:Se(+f),l):n},l.lineX0=l.lineY0=function(){return c().x(e).y(t)},l.lineY1=function(){return c().x(e).y(n)},l.lineX1=function(){return c().x(i).y(t)},l.defined=function(f){return arguments.length?(r=typeof f=="function"?f:Se(!!f),l):r},l.curve=function(f){return arguments.length?(s=f,o!=null&&(a=s(o)),l):s},l.context=function(f){return arguments.length?(f==null?o=a=null:a=s(o=f),l):o},l}const YP={draw(e,t){const n=ds(t/Xa);e.moveTo(n,0),e.arc(0,0,n,0,gC)}};function XP(e,t){let n=null,i=dg(r);e=typeof e=="function"?e:Se(e||YP),t=typeof t=="function"?t:Se(t===void 0?64:+t);function r(){let o;if(n||(n=o=i()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),o)return n=null,o+""||null}return r.type=function(o){return arguments.length?(e=typeof o=="function"?o:Se(o),r):e},r.size=function(o){return arguments.length?(t=typeof o=="function"?o:Se(+o),r):t},r.context=function(o){return arguments.length?(n=o??null,r):n},r}function Ao(){}function Fd(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function hg(e){this._context=e}hg.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:Fd(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:Fd(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function KP(e){return new hg(e)}function _C(e){this._context=e}_C.prototype={areaStart:Ao,areaEnd:Ao,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:Fd(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function ZP(e){return new _C(e)}function SC(e){this._context=e}SC.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,i=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,i):this._context.moveTo(n,i);break;case 3:this._point=4;default:Fd(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function QP(e){return new SC(e)}function EC(e,t){this._basis=new hg(e),this._beta=t}EC.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var e=this._x,t=this._y,n=e.length-1;if(n>0)for(var i=e[0],r=t[0],o=e[n]-i,s=t[n]-r,a=-1,u;++a<=n;)u=a/n,this._basis.point(this._beta*e[a]+(1-this._beta)*(i+u*o),this._beta*t[a]+(1-this._beta)*(r+u*s));this._x=this._y=null,this._basis.lineEnd()},point:function(e,t){this._x.push(+e),this._y.push(+t)}};const JP=(function e(t){function n(i){return t===1?new hg(i):new EC(i,t)}return n.beta=function(i){return e(+i)},n})(.85);
6function Dd(e,t,n){e._context.bezierCurveTo(e._x1+e._k*(e._x2-e._x0),e._y1+e._k*(e._y2-e._y0),e._x2+e._k*(e._x1-t),e._y2+e._k*(e._y1-n),e._x2,e._y2)}function mx(e,t){this._context=e,this._k=(1-t)/6}mx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:Dd(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2,this._x1=e,this._y1=t;break;case 2:this._point=3;default:Dd(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const e9=(function e(t){function n(i){return new mx(i,t)}return n.tension=function(i){return e(+i)},n})(0);function yx(e,t){this._context=e,this._k=(1-t)/6}yx.prototype={areaStart:Ao,areaEnd:Ao,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:Dd(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const t9=(function e(t){function n(i){return new yx(i,t)}return n.tension=function(i){return e(+i)},n})(0);function xx(e,t){this._context=e,this._k=(1-t)/6}xx.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:Dd(this,e,t);break}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const n9=(function e(t){function n(i){return new xx(i,t)}return n.tension=function(i){return e(+i)},n})(0);function bx(e,t,n){var i=e._x1,r=e._y1,o=e._x2,s=e._y2;if(e._l01_a>Nt){var a=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,u=3*e._l01_a*(e._l01_a+e._l12_a);i=(i*a-e._x0*e._l12_2a+e._x2*e._l01_2a)/u,r=(r*a-e._y0*e._l12_2a+e._y2*e._l01_2a)/u}if(e._l23_a>Nt){var l=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,c=3*e._l23_a*(e._l23_a+e._l12_a);o=(o*l+e._x1*e._l23_2a-t*e._l12_2a)/c,s=(s*l+e._y1*e._l23_2a-n*e._l12_2a)/c}e._context.bezierCurveTo(i,r,o,s,e._x2,e._y2)}function kC(e,t){this._context=e,this._alpha=t}kC.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3;default:bx(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const i9=(function e(t){function n(i){return t?new kC(i,t):new mx(i,0)}
6return n.alpha=function(i){return e(+i)},n})(.5);function $C(e,t){this._context=e,this._alpha=t}$C.prototype={areaStart:Ao,areaEnd:Ao,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=e,this._y3=t;break;case 1:this._point=2,this._context.moveTo(this._x4=e,this._y4=t);break;case 2:this._point=3,this._x5=e,this._y5=t;break;default:bx(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const r9=(function e(t){function n(i){return t?new $C(i,t):new yx(i,0)}return n.alpha=function(i){return e(+i)},n})(.5);function AC(e,t){this._context=e,this._alpha=t}AC.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){if(e=+e,t=+t,this._point){var n=this._x2-e,i=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(n*n+i*i,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:bx(this,e,t);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};const o9=(function e(t){function n(i){return t?new AC(i,t):new xx(i,0)}return n.alpha=function(i){return e(+i)},n})(.5);function CC(e){this._context=e}CC.prototype={areaStart:Ao,areaEnd:Ao,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function s9(e){return new CC(e)}function Gw(e){return e<0?-1:1}function Vw(e,t,n){var i=e._x1-e._x0,r=t-e._x1,o=(e._y1-e._y0)/(i||r<0&&-0),s=(n-e._y1)/(r||i<0&&-0),a=(o*r+s*i)/(i+r);return(Gw(o)+Gw(s))*Math.min(Math.abs(o),Math.abs(s),.5*Math.abs(a))||0}function Yw(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function sm(e,t,n){var i=e._x0,r=e._y0,o=e._x1,s=e._y1,a=(o-i)/3;e._context.bezierCurveTo(i+a,r+a*t,o-a,s-a*n,o,s)}function Td(e){this._context=e}Td.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:sm(this,this._t0,Yw(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,sm(this,Yw(this,n=Vw(this,e,t)),n);break;default:sm(this,this._t0,n=Vw(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function MC(e){this._context=new FC(e)}(MC.prototype=Object.create(Td.prototype)).point=function(e,t){Td.prototype.point.call(this,t,e)};function FC(e){this._context=e}FC.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,i,r,o){this._context.bezierCurveTo(t,e,i,n,o,r)}};function a9(e){return new Td(e)}function u9(e){return new MC(e)}function DC(e){this._context=e}DC.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var i=Xw(e),r=Xw(t),o=0,s=1;s<n;++o,++s)this._context.bezierCurveTo(i[0][o],r[0][o],i[1][o],r[1][o],e[s],t[s]);(this._line||this._line!==0&&n===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function Xw(e){var t,n=e.length-1,i,r=new Array(n),o=new Array(n),s=new Array(n);for(r[0]=0,o[0]=2,s[0]=e[0]+2*e[1],t=1;t<n-1;++t)r[t]=1,o[t]=4,s[t]=4*e[t]+2*e[t+1];for(r[n-1]=2,o[n-1]=7,s[n-1]=8*e[n-1]+e[n],t=1;t<n;++t)i=r[t]/o[t-1],o[t]-=i,s[t]-=i*s[t-1];for(r[n-1]=s[n-1]/o[n-1],t=n-2;t>=0;--t)r[t]=(s[t]-r[t+1])/o[t];for(o[n-1]=(e[n]+r[n-1])/2,t=0;t<n-1;++t)o[t]=2*e[t+1]-r[t+1];return[r,o]}function l9(e){return new DC(e)}function gg(e,t){this._context=e,this._t=t}gg.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;
6default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function c9(e){return new gg(e,.5)}function f9(e){return new gg(e,0)}function d9(e){return new gg(e,1)}function wo(e,t){if(typeof document<"u"&&document.createElement){const n=document.createElement("canvas");if(n&&n.getContext)return n.width=e,n.height=t,n}return null}const h9=()=>typeof Image<"u"?Image:null;function nr(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function Po(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const T0=Symbol("implicit");function vx(){var e=new fw,t=[],n=[],i=T0;function r(o){let s=e.get(o);if(s===void 0){if(i!==T0)return i;e.set(o,s=t.push(o)-1)}return n[s%n.length]}return r.domain=function(o){if(!arguments.length)return t.slice();t=[],e=new fw;for(const s of o)e.has(s)||e.set(s,t.push(s)-1);return r},r.range=function(o){return arguments.length?(n=Array.from(o),r):n.slice()},r.unknown=function(o){return arguments.length?(i=o,r):i},r.copy=function(){return vx(t,n).unknown(i)},nr.apply(r,arguments),r}function Au(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function $c(e,t){var n=Object.create(e.prototype);for(var i in t)n[i]=t[i];return n}function Lo(){}var Fs=.7,Ka=1/Fs,Oa="\\s*([+-]?\\d+)\\s*",Xl="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Bi="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",g9=/^#([0-9a-f]{3,8})$/,p9=new RegExp(`^rgb\\(${Oa},${Oa},${Oa}\\)$`),m9=new RegExp(`^rgb\\(${Bi},${Bi},${Bi}\\)$`),y9=new RegExp(`^rgba\\(${Oa},${Oa},${Oa},${Xl}\\)$`),x9=new RegExp(`^rgba\\(${Bi},${Bi},${Bi},${Xl}\\)$`),b9=new RegExp(`^hsl\\(${Xl},${Bi},${Bi}\\)$`),v9=new RegExp(`^hsla\\(${Xl},${Bi},${Bi},${Xl}\\)$`),Kw={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Au(Lo,Kl,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Zw,formatHex:Zw,formatHex8:w9,formatHsl:_9,formatRgb:Qw,toString:Qw});function Zw(){return this.rgb().formatHex()}function w9(){return this.rgb().formatHex8()}function _9(){return TC(this).formatHsl()}function Qw(){return this.rgb().formatRgb()}function Kl(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=g9.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Jw(t):n===3?new ft(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?vf(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?vf(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=p9.exec(e))?new ft(t[1],t[2],t[3],1):(t=m9.exec(e))?new ft(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=y9.exec(e))?vf(t[1],t[2],t[3],t[4]):(t=x9.exec(e))?vf(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=b9.exec(e))?n_(t[1],t[2]/100,t[3]/100,1):(t=v9.exec(e))?n_(t[1],t[2]/100,t[3]/100,t[4]):Kw.hasOwnProperty(e)?Jw(Kw[e]):e==="transparent"?new ft(NaN,NaN,NaN,0):null}function Jw(e){return new ft(e>>16&255,e>>8&255,e&255,1)}function vf(e,t,n,i){return i<=0&&(e=t=n=NaN),new ft(e,t,n,i)}function wx(e){return e instanceof Lo||(e=Kl(e)),e?(e=e.rgb(),new ft(e.r,e.g,e.b,e.opacity)):new ft}function Co(e,t,n,i){return arguments.length===1?wx(e):new ft(e,t,n,i??1)}function ft(e,t,n,i){this.r=+e,this.g=+t,this.b=+n,this.opacity=+i}Au(ft,Co,$c(Lo,{brighter(e){return e=e==null?Ka:Math.pow(Ka,e),new ft(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Fs:Math.pow(Fs,e),new ft(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new ft(ws(this.r),ws(this.g),ws(this.b),Nd(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:e_,formatHex:e_,formatHex8:S9,formatRgb:t_,toString:t_}));function e_(){return`#${hs(this.r)}${hs(this.g)}${hs(this.b)}`}function S9(){return`#${hs(this.r)}${hs(this.g)}${hs(this.b)}${hs((isNaN(this.opacity)?1:this.opacity)*255)}`}function t_(){const e=Nd(this.opacity);return`${e===1?"rgb(":"rgba("}${ws(this.r)}, ${ws(this.g)}, ${ws(this.b)}${e===1?")":`, ${e})`}`}function Nd(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function ws(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function hs(e){return e=ws(e),(e<16?"0":"")+e.toString(16)}function n_(e,t,n,i){return i<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new oi(e,t,n,i)}function TC(e){if(e instanceof oi)return new oi(e.h,e.s,e.l,e.opacity);if(e instanceof Lo||(e=Kl(e)),!e)return new oi;if(e instanceof oi)return e;e=e.rgb();var t=e.r/255,n=e.g/255,i=e.b/255,r=Math.min(t,n,i),o=Math.max(t,n,i),s=NaN,a=o-r,u=(o+r)/2;return a?(t===o?s=(n-i)/a+(n<i)*6:n===o?s=(i-t)/a+2:s=(t-n)/a+4,a/=u<.5?o+r:2-o-r,s*=60):a=u>0&&u<1?0:s,new oi(s,a,u,e.opacity)}function Rd(e,t,n,i){return arguments.length===1?TC(e):new oi(e,t,n,i??1)}function oi(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}Au(oi,Rd,$c(Lo,{brighter(e){return e=e==null?Ka:Math.pow(Ka,e),new oi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Fs:Math.pow(Fs,e),new oi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*t,r=2*n-i;return new ft(am(e>=240?e-240:e+120,r,i),am(e,r,i),am(e<120?e+240:e-120,r,i),this.opacity)},clamp(){return new oi(i_(this.h),wf(this.s),wf(this.l),Nd(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Nd(this.opacity);return`${e===1?"hsl(":"hsla("}${i_(this.h)}, ${wf(this.s)*100}%, ${wf(this.l)*100}%${e===1?")":`, ${e})`}`}}));function i_(e){return e=(e||0)%360,e<0?e+360:e}function wf(e){return Math.max(0,Math.min(1,e||0))}function am(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const NC=Math.PI/180,RC=180/Math.PI,Od=18,OC=.96422,zC=1,PC=.82521,LC=4/29,za=6/29,IC=3*za*za,E9=za*za*za;function BC(e){if(e instanceof Ui)return new Ui(e.l,e.a,e.b,e.opacity);if(e instanceof Ar)return UC(e);e instanceof ft||(e=wx(e));var t=fm(e.r),n=fm(e.g),i=fm(e.b),r=um((.2225045*t+.7168786*n+.0606169*i)/zC),o,s;return t===n&&n===i?o=s=r:(o=um((.4360747*t+.3850649*n+.1430804*i)/OC),s=um((.0139322*t+.0971045*n+.7141733*i)/PC)),new Ui(116*r-16,500*(o-r),200*(r-s),e.o
6pacity)}function zd(e,t,n,i){return arguments.length===1?BC(e):new Ui(e,t,n,i??1)}function Ui(e,t,n,i){this.l=+e,this.a=+t,this.b=+n,this.opacity=+i}Au(Ui,zd,$c(Lo,{brighter(e){return new Ui(this.l+Od*(e??1),this.a,this.b,this.opacity)},darker(e){return new Ui(this.l-Od*(e??1),this.a,this.b,this.opacity)},rgb(){var e=(this.l+16)/116,t=isNaN(this.a)?e:e+this.a/500,n=isNaN(this.b)?e:e-this.b/200;return t=OC*lm(t),e=zC*lm(e),n=PC*lm(n),new ft(cm(3.1338561*t-1.6168667*e-.4906146*n),cm(-.9787684*t+1.9161415*e+.033454*n),cm(.0719453*t-.2289914*e+1.4052427*n),this.opacity)}}));function um(e){return e>E9?Math.pow(e,1/3):e/IC+LC}function lm(e){return e>za?e*e*e:IC*(e-LC)}function cm(e){return 255*(e<=.0031308?12.92*e:1.055*Math.pow(e,1/2.4)-.055)}function fm(e){return(e/=255)<=.04045?e/12.92:Math.pow((e+.055)/1.055,2.4)}function k9(e){if(e instanceof Ar)return new Ar(e.h,e.c,e.l,e.opacity);if(e instanceof Ui||(e=BC(e)),e.a===0&&e.b===0)return new Ar(NaN,0<e.l&&e.l<100?0:NaN,e.l,e.opacity);var t=Math.atan2(e.b,e.a)*RC;return new Ar(t<0?t+360:t,Math.sqrt(e.a*e.a+e.b*e.b),e.l,e.opacity)}function Pd(e,t,n,i){return arguments.length===1?k9(e):new Ar(e,t,n,i??1)}function Ar(e,t,n,i){this.h=+e,this.c=+t,this.l=+n,this.opacity=+i}function UC(e){if(isNaN(e.h))return new Ui(e.l,0,0,e.opacity);var t=e.h*NC;return new Ui(e.l,Math.cos(t)*e.c,Math.sin(t)*e.c,e.opacity)}Au(Ar,Pd,$c(Lo,{brighter(e){return new Ar(this.h,this.c,this.l+Od*(e??1),this.opacity)},darker(e){return new Ar(this.h,this.c,this.l-Od*(e??1),this.opacity)},rgb(){return UC(this).rgb()}}));var jC=-.14861,_x=1.78277,Sx=-.29227,pg=-.90649,Zl=1.97294,r_=Zl*pg,o_=Zl*_x,s_=_x*Sx-pg*jC;function $9(e){if(e instanceof _s)return new _s(e.h,e.s,e.l,e.opacity);e instanceof ft||(e=wx(e));var t=e.r/255,n=e.g/255,i=e.b/255,r=(s_*i+r_*t-o_*n)/(s_+r_-o_),o=i-r,s=(Zl*(n-r)-Sx*o)/pg,a=Math.sqrt(s*s+o*o)/(Zl*r*(1-r)),u=a?Math.atan2(s,o)*RC-120:NaN;return new _s(u<0?u+360:u,a,r,e.opacity)}function N0(e,t,n,i){return arguments.length===1?$9(e):new _s(e,t,n,i??1)}function _s(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}Au(_s,N0,$c(Lo,{brighter(e){return e=e==null?Ka:Math.pow(Ka,e),new _s(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Fs:Math.pow(Fs,e),new _s(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=isNaN(this.h)?0:(this.h+120)*NC,t=+this.l,n=isNaN(this.s)?0:this.s*t*(1-t),i=Math.cos(e),r=Math.sin(e);return new ft(255*(t+n*(jC*i+_x*r)),255*(t+n*(Sx*i+pg*r)),255*(t+n*(Zl*i)),this.opacity)}}));function qC(e,t,n,i,r){var o=e*e,s=o*e;return((1-3*e+3*o-s)*t+(4-6*o+3*s)*n+(1+3*e+3*o-3*s)*i+s*r)/6}function WC(e){var t=e.length-1;return function(n){var i=n<=0?n=0:n>=1?(n=1,t-1):Math.floor(n*t),r=e[i],o=e[i+1],s=i>0?e[i-1]:2*r-o,a=i<t-1?e[i+2]:2*o-r;return qC((n-i/t)*t,s,r,o,a)}}function HC(e){var t=e.length;return function(n){var i=Math.floor(((n%=1)<0?++n:n)*t),r=e[(i+t-1)%t],o=e[i%t],s=e[(i+1)%t],a=e[(i+2)%t];return qC((n-i/t)*t,r,o,s,a)}}const mg=e=>()=>e;function GC(e,t){return function(n){return e+n*t}}function A9(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(i){return Math.pow(e+i*t,n)}}function yg(e,t){var n=t-e;return n?GC(e,n>180||n<-180?n-360*Math.round(n/360):n):mg(isNaN(e)?t:e)}function C9(e){return(e=+e)==1?dt:function(t,n){return n-t?A9(t,n,e):mg(isNaN(t)?n:t)}}function dt(e,t){var n=t-e;return n?GC(e,n):mg(isNaN(e)?t:e)}const R0=(function e(t){var n=C9(t);function i(r,o){var s=n((r=Co(r)).r,(o=Co(o)).r),a=n(r.g,o.g),u=n(r.b,o.b),l=dt(r.opacity,o.opacity);return function(c){return r.r=s(c),r.g=a(c),r.b=u(c),r.opacity=l(c),r+""}}return i.gamma=e,i})(1);function VC(e){return function(t){var n=t.length,i=new Array(n),r=new Array(n),o=new Array(n),s,a;for(s=0;s<n;++s)a=Co(t[s]),i[s]=a.r||0,r[s]=a.g||0,o[s]=a.b||0;return i=e(i),r=e(r),o=e(o),a.opacity=1,function(u){return a.r=i(u),a.g=r(u),a.b=o(u),a+""}}}var M9=VC(WC),F9=VC(HC);function Ex(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,i=t.slice(),r;return function(o){for(r=0;r<n;++r)i[r]=e[r]*(1-o)+t[r]*o;return i}}function YC(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function D9(e,t){return(YC(t)?Ex:XC)(e,t)}function XC(e,t){var n=t?t.length:0,i=e?Math.min(n,e.length):0,r=new Array(i),o=new Array(n),s;for(s=0;s<i;++s)r[s]=Io(e[s],t[s]);for(;s<n;++s)o[s]=t[s];return function(a){for(s=0;s<i;++s)o[s]=r[s](a);return o}}function KC(e,t){var n=new Date;return e=+e,t=+t,function(i){return n.setTime(e*(1-i)+t*i),n}}function ni(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function ZC(e,t){var n={},i={},r;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(r in t)r in e?n[r]=Io(e[r],t[r]):i[r]=t[r];return function(o){for(r in n)i[r]=n[r](o);return i}}var O0=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,dm=new RegExp(O0.source,"g");function T9(e){return function(){return e}}function N9(e){return function(t){return e(t)+""}}function QC(e,t){var n=O0.lastIndex=dm.lastIndex=0,i,r,o,s=-1,a=[],u=[];for(e=e+"",t=t+"";(i=O0.exec(e))&&(r=dm.exec(t));)(o=r.index)>n&&(o=t.slice(n,o),a[s]?a[s]+=o:a[++s]=o),(i=i[0])===(r=r[0])?a[s]?a[s]+=r:a[++s]=r:(a[++s]=null,u.push({i:s,x:ni(i,r)})),n=dm.lastIndex;return n<t.length&&(o=t.slice(n),a[s]?a[s]+=o:a[++s]=o),a.length<2?u[0]?N9(u[0].x):T9(t):(t=u.length,function(l){for(var c=0,f;c<t;++c)a[(f=u[c]).i]=f.x(l);return a.join("")})}function Io(e,t){var n=typeof t,i;return t==null||n==="boolean"?mg(t):(n==="number"?ni:n==="string"?(i=Kl(t))?(t=i,R0):QC:t instanceof Kl?R0:t instanceof Date?KC:YC(t)?Ex:Array.isArray(t)?XC:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?ZC:ni)(e,t)}function R9(e){var t=e.length;return function(n){return e[Math.max(0,Math.min(t-1,Math.floor(n*t)))]}}function O9(e,t){var n=yg(+e,+t);return function(i){var r=n(i);return r-360*Math.floor(r/360)}}function Ac(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var a_=180/Math.PI,z0={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function JC(e,t,n,i,r,o){var s,a,u;return(s=Math.sqrt(e*e+t*t))&&(e/=s,t/=s),(u=e*n+t*i)&&(n-=e*u,i-=t*u),(a=Math.sqrt(n*n+i*i))&&(n/=a,i/=a,u/=a),e*i<t*n&&(e=-e,t=-t,u=-u,s=-s),{translateX:r,translateY:o,rotate:Math.atan2(t,e)*a_,skewX:Math.atan(u)*a_,scaleX:s,scaleY:a}}var _f;function z9(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?z0:JC(t.a,t.b,t.c,t.d,t.e,t.f)}function P9(e){return e==null||(_f||(_f=document.createElementNS("http://www.w3.org/2000/svg","g")),_f.setAttribute("transform",e),!(e=_f.transform.baseVal.consolidate()))?z0:(e=e.matrix,JC(e.a,e.b,e.c,e.d,e.e,e.f))}function eM(e,t,n,i){function r(l){return l.length?l.pop()+" ":""}function o(l,c,f,d,h,g){if(l!==f||c!==d){var p=h.push("translate(",null,t,null,n);g.push({i:p-4,x:ni(l,f)},{i:p-2,x:ni(c,d)})}else(f||d)&&h.push("translate("+f+t+d+n)}function s(l,c,f,d){l!==c?(l-c>180?c+=360:c-l>180&&(l+=360),d.push({i:f.push(r(f)+"rotate(",null,i)-2,x:ni(l,c)})):c&&f.push(r(f)+"rotate("+c+i)}
6function a(l,c,f,d){l!==c?d.push({i:f.push(r(f)+"skewX(",null,i)-2,x:ni(l,c)}):c&&f.push(r(f)+"skewX("+c+i)}function u(l,c,f,d,h,g){if(l!==f||c!==d){var p=h.push(r(h)+"scale(",null,",",null,")");g.push({i:p-4,x:ni(l,f)},{i:p-2,x:ni(c,d)})}else(f!==1||d!==1)&&h.push(r(h)+"scale("+f+","+d+")")}return function(l,c){var f=[],d=[];return l=e(l),c=e(c),o(l.translateX,l.translateY,c.translateX,c.translateY,f,d),s(l.rotate,c.rotate,f,d),a(l.skewX,c.skewX,f,d),u(l.scaleX,l.scaleY,c.scaleX,c.scaleY,f,d),l=c=null,function(h){for(var g=-1,p=d.length,m;++g<p;)f[(m=d[g]).i]=m.x(h);return f.join("")}}}var L9=eM(z9,"px, ","px)","deg)"),I9=eM(P9,", ",")",")"),B9=1e-12;function u_(e){return((e=Math.exp(e))+1/e)/2}function U9(e){return((e=Math.exp(e))-1/e)/2}function j9(e){return((e=Math.exp(2*e))-1)/(e+1)}const q9=(function e(t,n,i){function r(o,s){var a=o[0],u=o[1],l=o[2],c=s[0],f=s[1],d=s[2],h=c-a,g=f-u,p=h*h+g*g,m,y;if(p<B9)y=Math.log(d/l)/t,m=function(_){return[a+_*h,u+_*g,l*Math.exp(t*_*y)]};else{var x=Math.sqrt(p),b=(d*d-l*l+i*p)/(2*l*n*x),v=(d*d-l*l-i*p)/(2*d*n*x),w=Math.log(Math.sqrt(b*b+1)-b),S=Math.log(Math.sqrt(v*v+1)-v);y=(S-w)/t,m=function(_){var E=_*y,k=u_(w),A=l/(n*x)*(k*j9(t*E+w)-U9(w));return[a+A*h,u+A*g,l*k/u_(t*E+w)]}}return m.duration=y*1e3*t/Math.SQRT2,m}return r.rho=function(o){var s=Math.max(.001,+o),a=s*s,u=a*a;return e(s,a,u)},r})(Math.SQRT2,2,4);function tM(e){return function(t,n){var i=e((t=Rd(t)).h,(n=Rd(n)).h),r=dt(t.s,n.s),o=dt(t.l,n.l),s=dt(t.opacity,n.opacity);return function(a){return t.h=i(a),t.s=r(a),t.l=o(a),t.opacity=s(a),t+""}}}const W9=tM(yg);var H9=tM(dt);function G9(e,t){var n=dt((e=zd(e)).l,(t=zd(t)).l),i=dt(e.a,t.a),r=dt(e.b,t.b),o=dt(e.opacity,t.opacity);return function(s){return e.l=n(s),e.a=i(s),e.b=r(s),e.opacity=o(s),e+""}}function nM(e){return function(t,n){var i=e((t=Pd(t)).h,(n=Pd(n)).h),r=dt(t.c,n.c),o=dt(t.l,n.l),s=dt(t.opacity,n.opacity);return function(a){return t.h=i(a),t.c=r(a),t.l=o(a),t.opacity=s(a),t+""}}}const V9=nM(yg);var Y9=nM(dt);function iM(e){return(function t(n){n=+n;function i(r,o){var s=e((r=N0(r)).h,(o=N0(o)).h),a=dt(r.s,o.s),u=dt(r.l,o.l),l=dt(r.opacity,o.opacity);return function(c){return r.h=s(c),r.s=a(c),r.l=u(Math.pow(c,n)),r.opacity=l(c),r+""}}return i.gamma=t,i})(1)}const X9=iM(yg);var K9=iM(dt);function kx(e,t){t===void 0&&(t=e,e=Io);for(var n=0,i=t.length-1,r=t[0],o=new Array(i<0?0:i);n<i;)o[n]=e(r,r=t[++n]);return function(s){var a=Math.max(0,Math.min(i-1,Math.floor(s*=i)));return o[a](s-a)}}function Z9(e,t){for(var n=new Array(t),i=0;i<t;++i)n[i]=e(i/(t-1));return n}const Q9=Object.freeze(Object.defineProperty({__proto__:null,interpolate:Io,interpolateArray:D9,interpolateBasis:WC,interpolateBasisClosed:HC,interpolateCubehelix:X9,interpolateCubehelixLong:K9,interpolateDate:KC,interpolateDiscrete:R9,interpolateHcl:V9,interpolateHclLong:Y9,interpolateHsl:W9,interpolateHslLong:H9,interpolateHue:O9,interpolateLab:G9,interpolateNumber:ni,interpolateNumberArray:Ex,interpolateObject:ZC,interpolateRgb:R0,interpolateRgbBasis:M9,interpolateRgbBasisClosed:F9,interpolateRound:Ac,interpolateString:QC,interpolateTransformCss:L9,interpolateTransformSvg:I9,interpolateZoom:q9,piecewise:kx,quantize:Z9},Symbol.toStringTag,{value:"Module"}));function J9(e){return function(){return e}}function P0(e){return+e}var l_=[0,1];function gn(e){return e}function L0(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:J9(isNaN(t)?NaN:.5)}function e7(e,t){var n;return e>t&&(n=e,e=t,t=n),function(i){return Math.max(e,Math.min(t,i))}}function t7(e,t,n){var i=e[0],r=e[1],o=t[0],s=t[1];return r<i?(i=L0(r,i),o=n(s,o)):(i=L0(i,r),o=n(o,s)),function(a){return o(i(a))}}
6function n7(e,t,n){var i=Math.min(e.length,t.length)-1,r=new Array(i),o=new Array(i),s=-1;for(e[i]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++s<i;)r[s]=L0(e[s],e[s+1]),o[s]=n(t[s],t[s+1]);return function(a){var u=Eo(e,a,1,i)-1;return o[u](r[u](a))}}function Cc(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function xg(){var e=l_,t=l_,n=Io,i,r,o,s=gn,a,u,l;function c(){var d=Math.min(e.length,t.length);return s!==gn&&(s=e7(e[0],e[d-1])),a=d>2?n7:t7,u=l=null,f}function f(d){return d==null||isNaN(d=+d)?o:(u||(u=a(e.map(i),t,n)))(i(s(d)))}return f.invert=function(d){return s(r((l||(l=a(t,e.map(i),ni)))(d)))},f.domain=function(d){return arguments.length?(e=Array.from(d,P0),c()):e.slice()},f.range=function(d){return arguments.length?(t=Array.from(d),c()):t.slice()},f.rangeRound=function(d){return t=Array.from(d),n=Ac,c()},f.clamp=function(d){return arguments.length?(s=d?!0:gn,c()):s!==gn},f.interpolate=function(d){return arguments.length?(n=d,c()):n},f.unknown=function(d){return arguments.length?(o=d,f):o},function(d,h){return i=d,r=h,c()}}function rM(){return xg()(gn,gn)}function oM(e,t,n,i){var r=ko(e,t,n),o;switch(i=Ms(i??",f"),i.type){case"s":{var s=Math.max(Math.abs(e),Math.abs(t));return i.precision==null&&!isNaN(o=j$(r,s))&&(i.precision=o),ky(i,s)}case"":case"e":case"g":case"p":case"r":{i.precision==null&&!isNaN(o=q$(r,Math.max(Math.abs(e),Math.abs(t))))&&(i.precision=o-(i.type==="e"));break}case"f":case"%":{i.precision==null&&!isNaN(o=U$(r))&&(i.precision=o-(i.type==="%")*2);break}}return ng(i)}function ta(e){var t=e.domain;return e.ticks=function(n){var i=t();return m0(i[0],i[i.length-1],n??10)},e.tickFormat=function(n,i){var r=t();return oM(r[0],r[r.length-1],n??10,i)},e.nice=function(n){n==null&&(n=10);var i=t(),r=0,o=i.length-1,s=i[r],a=i[o],u,l,c=10;for(a<s&&(l=s,s=a,a=l,l=r,r=o,o=l);c-- >0;){if(l=y0(s,a,n),l===u)return i[r]=s,i[o]=a,t(i);if(l>0)s=Math.floor(s/l)*l,a=Math.ceil(a/l)*l;else if(l<0)s=Math.ceil(s*l)/l,a=Math.floor(a*l)/l;else break;u=l}return e},e}function sM(){var e=rM();return e.copy=function(){return Cc(e,sM())},nr.apply(e,arguments),ta(e)}function aM(e){var t;function n(i){return i==null||isNaN(i=+i)?t:i}return n.invert=n,n.domain=n.range=function(i){return arguments.length?(e=Array.from(i,P0),n):e.slice()},n.unknown=function(i){return arguments.length?(t=i,n):t},n.copy=function(){return aM(e).unknown(t)},e=arguments.length?Array.from(e,P0):[0,1],ta(n)}function uM(e,t){e=e.slice();var n=0,i=e.length-1,r=e[n],o=e[i],s;return o<r&&(s=n,n=i,i=s,s=r,r=o,o=s),e[n]=t.floor(r),e[i]=t.ceil(o),e}function c_(e){return Math.log(e)}function f_(e){return Math.exp(e)}function i7(e){return-Math.log(-e)}function r7(e){return-Math.exp(-e)}function o7(e){return isFinite(e)?+("1e"+e):e<0?0:e}function s7(e){return e===10?o7:e===Math.E?Math.exp:t=>Math.pow(e,t)}function a7(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function d_(e){return(t,n)=>-e(-t,n)}function $x(e){const t=e(c_,f_),n=t.domain;let i=10,r,o;function s(){return r=a7(i),o=s7(i),n()[0]<0?(r=d_(r),o=d_(o),e(i7,r7)):e(c_,f_),t}return t.base=function(a){return arguments.length?(i=+a,s()):i},t.domain=function(a){return arguments.length?(n(a),s()):n()},t.ticks=a=>{const u=n();let l=u[0],c=u[u.length-1];const f=c<l;f&&([l,c]=[c,l]);let d=r(l),h=r(c),g,p;const m=a==null?10:+a;let y=[];if(!(i%1)&&h-d<m){if(d=Math.floor(d),h=Math.ceil(h),l>0){for(;d<=h;++d)for(g=1;g<i;++g)if(p=d<0?g/o(-d):g*o(d),!(p<l)){if(p>c)break;y.push(p)}}else for(;d<=h;++d)for(g=i-1;g>=1;--g)if(p=d>0?g/o(-d):g*o(d),!(p<l)){if(p>c)break;y.push(p)}y.length*2<m&&(y=m0(l,c,m))}else y=m0(d,h,Math.min(h-d,m)).map(o);return f?y.reverse():y},t.tickFormat=(a,u)=>{if(a==null&&(a=10),u==null&&(u=i===10?"s":","),typeof u!="function"&&(!(i%1)&&(u=Ms(u)).precision==null&&(u.trim=!0),u=ng(u)),a===1/0)return u;const l=Math.max(1,i*a/t.ticks().length);return c=>{let f=c/o(Math.round(r(c)));return f*i<i-.5&&(f*=i),f<=l?u(c):""}},t.nice=()=>n(uM(n(),{floor:a=>o(Math.floor(r(a))),ceil:a=>o(Math.ceil(r(a)))})),t}function lM(){const e=$x(xg()).domain([1,10]);return e.copy=()=>Cc(e,lM()).base(e.base()),nr.apply(e,arguments),e}
6function h_(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function g_(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Ax(e){var t=1,n=e(h_(t),g_(t));return n.constant=function(i){return arguments.length?e(h_(t=+i),g_(t)):t},ta(n)}function cM(){var e=Ax(xg());return e.copy=function(){return Cc(e,cM()).constant(e.constant())},nr.apply(e,arguments)}function p_(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function u7(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function l7(e){return e<0?-e*e:e*e}function Cx(e){var t=e(gn,gn),n=1;function i(){return n===1?e(gn,gn):n===.5?e(u7,l7):e(p_(n),p_(1/n))}return t.exponent=function(r){return arguments.length?(n=+r,i()):n},ta(t)}function Mx(){var e=Cx(xg());return e.copy=function(){return Cc(e,Mx()).exponent(e.exponent())},nr.apply(e,arguments),e}function c7(){return Mx.apply(null,arguments).exponent(.5)}function fM(){var e=[],t=[],n=[],i;function r(){var s=0,a=Math.max(1,t.length);for(n=new Array(a-1);++s<a;)n[s-1]=O$(e,s/a);return o}function o(s){return s==null||isNaN(s=+s)?i:t[Eo(n,s)]}return o.invertExtent=function(s){var a=t.indexOf(s);return a<0?[NaN,NaN]:[a>0?n[a-1]:e[0],a<n.length?n[a]:e[e.length-1]]},o.domain=function(s){if(!arguments.length)return e.slice();e=[];for(let a of s)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort(Dr),r()},o.range=function(s){return arguments.length?(t=Array.from(s),r()):t.slice()},o.unknown=function(s){return arguments.length?(i=s,o):i},o.quantiles=function(){return n.slice()},o.copy=function(){return fM().domain(e).range(t).unknown(i)},nr.apply(o,arguments)}function dM(){var e=0,t=1,n=1,i=[.5],r=[0,1],o;function s(u){return u!=null&&u<=u?r[Eo(i,u,0,n)]:o}function a(){var u=-1;for(i=new Array(n);++u<n;)i[u]=((u+1)*t-(u-n)*e)/(n+1);return s}return s.domain=function(u){return arguments.length?([e,t]=u,e=+e,t=+t,a()):[e,t]},s.range=function(u){return arguments.length?(n=(r=Array.from(u)).length-1,a()):r.slice()},s.invertExtent=function(u){var l=r.indexOf(u);return l<0?[NaN,NaN]:l<1?[e,i[0]]:l>=n?[i[n-1],t]:[i[l-1],i[l]]},s.unknown=function(u){return arguments.length&&(o=u),s},s.thresholds=function(){return i.slice()},s.copy=function(){return dM().domain([e,t]).range(r).unknown(o)},nr.apply(ta(s),arguments)}function hM(){var e=[.5],t=[0,1],n,i=1;function r(o){return o!=null&&o<=o?t[Eo(e,o,0,i)]:n}return r.domain=function(o){return arguments.length?(e=Array.from(o),i=Math.min(e.length,t.length-1),r):e.slice()},r.range=function(o){return arguments.length?(t=Array.from(o),i=Math.min(e.length,t.length-1),r):t.slice()},r.invertExtent=function(o){var s=t.indexOf(o);return[e[s-1],e[s]]},r.unknown=function(o){return arguments.length?(n=o,r):n},r.copy=function(){return hM().domain(e).range(t).unknown(n)},nr.apply(r,arguments)}function f7(e){return new Date(e)}function d7(e){return e instanceof Date?+e:+new Date(+e)}function Fx(e,t,n,i,r,o,s,a,u,l){var c=rM(),f=c.invert,d=c.domain,h=l(".%L"),g=l(":%S"),p=l("%I:%M"),m=l("%I %p"),y=l("%a %d"),x=l("%b %d"),b=l("%B"),v=l("%Y");function w(S){return(u(S)<S?h:a(S)<S?g:s(S)<S?p:o(S)<S?m:i(S)<S?r(S)<S?y:x:n(S)<S?b:v)(S)}return c.invert=function(S){return new Date(f(S))},c.domain=function(S){return arguments.length?d(Array.from(S,d7)):d().map(f7)},c.ticks=function(S){var _=d();return e(_[0],_[_.length-1],S??10)},c.tickFormat=function(S,_){return _==null?w:l(_)},c.nice=function(S){var _=d();return(!S||typeof S.range!="function")&&(S=t(_[0],_[_.length-1],S??10)),S?d(uM(_,S)):c},c.copy=function(){return Cc(c,Fx(e,t,n,i,r,o,s,a,u,l))},c}function h7(){return nr.apply(Fx(W6,H6,Vi,Wl,Su,Tr,og,ig,$r,Cy).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function g7(){return nr.apply(Fx(j6,q6,Yi,Hl,Eu,vo,sg,rg,$r,My).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function bg(){var e=0,t=1,n,i,r,o,s=gn,a=!1,u;function l(f){return f==null||isNaN(f=+f)?u:s(r===0?.5:(f=(o(f)-n)*r,a?Math.max(0,Math.min(1,f)):f))}l.domain=function(f){return arguments.length?([e,t]=f,n=o(e=+e),i=o(t=+t),r=n===i?0:1/(i-n),l):[e,t]},l.clamp=function(f){return arguments.length?(a=!!f,l):a},l.interpolator=function(f){return arguments.length?(s=f,l):s};function c(f){return function(d){var h,g;return arguments.length?([h,g]=d,s=f(h,g),l):[s(0),s(1)]}}return l.range=c(Io),l.rangeRound=c(Ac),l.unknown=function(f){return arguments.length?(u=f,l):u},function(f){return o=f,n=f(e),i=f(t),r=n===i?0:1/(i-n),l}}function Bo(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function Dx(){var e=ta(bg()(gn));return e.copy=function(){return Bo(e,Dx())},Po.apply(e,arguments)}function gM(){var e=$x(bg()).domain([1,10]);return e.copy=function(){return Bo(e,gM()).base(e.base())},Po.apply(e,arguments)}function pM(){var e=Ax(bg());return e.copy=function(){return Bo(e,pM()).constant(e.constant())},Po.apply(e,arguments)}function Tx(){var e=Cx(bg());return e.copy=function(){return Bo(e,Tx()).exponent(e.exponent())},Po.apply(e,arguments)}function p7(){return Tx.apply(null,arguments).exponent(.5)}function vg(){var e=0,t=.5,n=1,i=1,r,o,s,a,u,l=gn,c,f=!1,d;function h(p){return isNaN(p=+p)?d:(p=.5+((p=+c(p))-o)*(i*p<i*o?a:u),l(f?Math.max(0,Math.min(1,p)):p))}h.domain=function(p){return arguments.length?([e,t,n]=p,r=c(e=+e),o=c(t=+t),s=c(n=+n),a=r===o?0:.5/(o-r),u=o===s?0:.5/(s-o),i=o<r?-1:1,h):[e,t,n]},h.clamp=function(p){return arguments.length?(f=!!p,h):f},h.interpolator=function(p){return arguments.length?(l=p,h):l};function g(p){return function(m){var y,x,b;return arguments.length?([y,x,b]=m,l=kx(p,[y,x,b]),h):[l(0),l(.5),l(1)]}}return h.range=g(Io),h.rangeRound=g(Ac),h.unknown=function(p){return arguments.length?(d=p,h):d}
6,function(p){return c=p,r=p(e),o=p(t),s=p(n),a=r===o?0:.5/(o-r),u=o===s?0:.5/(s-o),i=o<r?-1:1,h}}function mM(){var e=ta(vg()(gn));return e.copy=function(){return Bo(e,mM())},Po.apply(e,arguments)}function yM(){var e=$x(vg()).domain([.1,1,10]);return e.copy=function(){return Bo(e,yM()).base(e.base())},Po.apply(e,arguments)}function xM(){var e=Ax(vg());return e.copy=function(){return Bo(e,xM()).constant(e.constant())},Po.apply(e,arguments)}function Nx(){var e=Cx(vg());return e.copy=function(){return Bo(e,Nx()).exponent(e.exponent())},Po.apply(e,arguments)}function m7(){return Nx.apply(null,arguments).exponent(.5)}function ir(e){for(var t=e.length/6|0,n=new Array(t),i=0;i<t;)n[i]="#"+e.slice(i*6,++i*6);return n}const y7=ir("1f77b4ff7f0e2ca02cd627289467bd8c564be377c27f7f7fbcbd2217becf"),x7=ir("7fc97fbeaed4fdc086ffff99386cb0f0027fbf5b17666666"),b7=ir("1b9e77d95f027570b3e7298a66a61ee6ab02a6761d666666"),v7=ir("4269d0efb118ff725c6cc5b03ca951ff8ab7a463f297bbf59c6b4e9498a0"),w7=ir("a6cee31f78b4b2df8a33a02cfb9a99e31a1cfdbf6fff7f00cab2d66a3d9affff99b15928"),_7=ir("fbb4aeb3cde3ccebc5decbe4fed9a6ffffcce5d8bdfddaecf2f2f2"),S7=ir("b3e2cdfdcdaccbd5e8f4cae4e6f5c9fff2aef1e2cccccccc"),E7=ir("e41a1c377eb84daf4a984ea3ff7f00ffff33a65628f781bf999999"),k7=ir("66c2a5fc8d628da0cbe78ac3a6d854ffd92fe5c494b3b3b3"),$7=ir("8dd3c7ffffb3bebadafb807280b1d3fdb462b3de69fccde5d9d9d9bc80bdccebc5ffed6f");function Rx(e,t,n){const i=e-t+n*2;return e?i>0?i:1:0}const A7="identity",Za="linear",qr="log",Mc="pow",Fc="sqrt",wg="symlog",Ds="time",Ts="utc",ji="sequential",Cu="diverging",Qa="quantile",_g="quantize",Sg="threshold",Ox="ordinal",I0="point",bM="band",zx="bin-ordinal",ot="continuous",Dc="discrete",Tc="discretizing",Kn="interpolating",Px="temporal";function C7(e){return function(t){let n=t[0],i=t[1],r;return i<n&&(r=n,n=i,i=r),[e.invert(n),e.invert(i)]}}function M7(e){return function(t){const n=e.range();let i=t[0],r=t[1],o=-1,s,a,u,l;for(r<i&&(a=i,i=r,r=a),u=0,l=n.length;u<l;++u)n[u]>=i&&n[u]<=r&&(o<0&&(o=u),s=u);if(!(o<0))return i=e.invertExtent(n[o]),r=e.invertExtent(n[s]),[i[0]===void 0?i[1]:i[0],r[1]===void 0?r[0]:r[1]]}}function Lx(){const e=vx().unknown(void 0),t=e.domain,n=e.range;let i=[0,1],r,o,s=!1,a=0,u=0,l=.5;delete e.unknown;function c(){const f=t().length,d=i[1]<i[0],h=i[1-d],g=Rx(f,a,u);let p=i[d-0];r=(h-p)/(g||1),s&&(r=Math.floor(r)),p+=(h-p-r*(f-a))*l,o=r*(1-a),s&&(p=Math.round(p),o=Math.round(o));const m=An(f).map(y=>p+r*y);return n(d?m.reverse():m)}return e.domain=function(f){return arguments.length?(t(f),c()):t()},e.range=function(f){return arguments.length?(i=[+f[0],+f[1]],c()):i.slice()},e.rangeRound=function(f){return i=[+f[0],+f[1]],s=!0,c()},e.bandwidth=function(){return o},e.step=function(){return r},e.round=function(f){return arguments.length?(s=!!f,c()):s},e.padding=function(f){return arguments.length?(u=Math.max(0,Math.min(1,f)),a=u,c()):a},e.paddingInner=function(f){return arguments.length?(a=Math.max(0,Math.min(1,f)),c()):a},e.paddingOuter=function(f){return arguments.length?(u=Math.max(0,Math.min(1,f)),c()):u},e.align=function(f){return arguments.length?(l=Math.max(0,Math.min(1,f)),c()):l},e.invertRange=function(f){if(f[0]==null||f[1]==null)return;const d=i[1]<i[0],h=d?n().reverse():n(),g=h.length-1;let p=+f[0],m=+f[1],y,x,b;if(!(p!==p||m!==m)&&(m<p&&(b=p,p=m,m=b),!(m<h[0]||p>i[1-d])))return y=Math.max(0,Eo(h,p)-1),x=p===m?y:Eo(h,m)-1,p-h[y]>o+1e-10&&++y,d&&(b=y,y=g-x,x=g-b),y>x?void 0:t().slice(y,x+1)},e.invert=function(f){const d=e.invertRange([f,f]);return d&&d[0]},e.copy=function(){return Lx().domain(t()).range(i).round(s).paddingInner(a).paddingOuter(u).align(l)},c()}function vM(e){const t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,e.copy=function(){return vM(t())},e}function F7(){return vM(Lx().paddingInner(1))}var D7=Array.prototype.map;function T7(e){return D7.call(e,Xt)}const N7=Array.prototype.slice;function wM(){let e=[],t=[];function n(i){return i==null||i!==i?void 0:t[(Eo(e,i)-1)%t.length]}return n.domain=function(i){return arguments.length?(e=T7(i),n):e.slice()},n.range=function(i){return arguments.length?(t=N7.call(i),n):t.slice()}
6,n.tickFormat=function(i,r){return oM(e[0],xe(e),i??10,r)},n.copy=function(){return wM().domain(n.domain()).range(n.range())},n}const Ld=new Map,_M=Symbol("vega_scale");function SM(e){return e[_M]=!0,e}function m_(e){return e&&e[_M]===!0}function R7(e,t,n){const i=function(){const o=t();return o.invertRange||(o.invertRange=o.invert?C7(o):o.invertExtent?M7(o):void 0),o.type=e,SM(o)};return i.metadata=Gi(H(n)),i}function we(e,t,n){return arguments.length>1?(Ld.set(e,R7(e,t,n)),this):EM(e)?Ld.get(e):void 0}we(A7,aM);we(Za,sM,ot);we(qr,lM,[ot,qr]);we(Mc,Mx,ot);we(Fc,c7,ot);we(wg,cM,ot);we(Ds,h7,[ot,Px]);we(Ts,g7,[ot,Px]);we(ji,Dx,[ot,Kn]);we(`${ji}-${Za}`,Dx,[ot,Kn]);we(`${ji}-${qr}`,gM,[ot,Kn,qr]);we(`${ji}-${Mc}`,Tx,[ot,Kn]);we(`${ji}-${Fc}`,p7,[ot,Kn]);we(`${ji}-${wg}`,pM,[ot,Kn]);we(`${Cu}-${Za}`,mM,[ot,Kn]);we(`${Cu}-${qr}`,yM,[ot,Kn,qr]);we(`${Cu}-${Mc}`,Nx,[ot,Kn]);we(`${Cu}-${Fc}`,m7,[ot,Kn]);we(`${Cu}-${wg}`,xM,[ot,Kn]);we(Qa,fM,[Tc,Qa]);we(_g,dM,Tc);we(Sg,hM,Tc);we(zx,wM,[Dc,Tc]);we(Ox,vx,Dc);we(bM,Lx,Dc);we(I0,F7,Dc);function EM(e){return Ld.has(e)}function na(e,t){const n=Ld.get(e);return n&&n.metadata[t]}function Ix(e){return na(e,ot)}function Ja(e){return na(e,Dc)}function B0(e){return na(e,Tc)}function kM(e){return na(e,qr)}function O7(e){return na(e,Px)}function $M(e){return na(e,Kn)}function AM(e){return na(e,Qa)}const z7=["clamp","base","constant","exponent"];function P7(e,t){const n=t[0],i=xe(t)-n;return function(r){return e(n+r*i)}}function Bx(e,t,n){return kx(MM(t||"rgb",n),e)}function L7(e,t){const n=new Array(t),i=t+1;for(let r=0;r<t;)n[r]=e(++r/i);return n}function CM(e,t,n){const i=n-t;let r,o,s;return!i||!Number.isFinite(i)?rn(.5):(r=(o=e.type).indexOf("-"),o=r<0?o:o.slice(r+1),s=we(o)().domain([t,n]).range([0,1]),z7.forEach(a=>e[a]?s[a](e[a]()):0),s)}function MM(e,t){const n=Q9[I7(e)];return t!=null&&n&&n.gamma?n.gamma(t):n}function I7(e){return"interpolate"+e.toLowerCase().split("-").map(t=>t[0].toUpperCase()+t.slice(1)).join("")}const B7={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:"0d088723069033
6059742039d5002a25d01a66a00a87801a88405a7900da49c179ea72198b12a90ba3488c33d80cb4779d35171da5a69e16462e76e5bed7953f2834cf68f44fa9a3dfca636fdb32ffec029fcce25f9dc24f5ea27f0f921",cividis:"00205100235800265d002961012b65042e670831690d346b11366c16396d1c3c6e213f6e26426e2c456e31476e374a6e3c4d6e42506e47536d4c566d51586e555b6e5a5e6e5e616e62646f66676f6a6a706e6d717270717573727976737c79747f7c75827f758682768985778c8877908b78938e789691789a94789e9778a19b78a59e77a9a177aea575b2a874b6ab73bbaf71c0b26fc5b66dc9b96acebd68d3c065d8c462ddc85fe2cb5ce7cf58ebd355f0d652f3da4ff7de4cfae249fce647",rainbow:"6e40aa883eb1a43db3bf3cafd83fa4ee4395fe4b83ff576eff6659ff7847ff8c38f3a130e2b72fcfcc36bee044aff05b8ff4576ff65b52f6673af27828ea8d1ddfa319d0b81cbecb23abd82f96e03d82e14c6edb5a5dd0664dbf6e40aa",sinebow:"ff4040fc582af47218e78d0bd5a703bfbf00a7d5038de70b72f41858fc2a40ff402afc5818f4720be78d03d5a700bfbf03a7d50b8de71872f42a58fc4040ff582afc7218f48d0be7a703d5bf00bfd503a7e70b8df41872fc2a58ff4040",turbo:"23171b32204a3e2a71453493493eae4b49c54a53d7485ee44569ee4074f53c7ff8378af93295f72e9ff42ba9ef28b3e926bce125c5d925cdcf27d5c629dcbc2de3b232e9a738ee9d3ff39347f68950f9805afc7765fd6e70fe667cfd5e88fc5795fb51a1f84badf545b9f140c5ec3cd0e637dae034e4d931ecd12ef4c92bfac029ffb626ffad24ffa223ff9821ff8d1fff821dff771cfd6c1af76118f05616e84b14df4111d5380fcb2f0dc0260ab61f07ac1805a313029b0f00950c00910b00",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"},U7={accent:x7,category10:y7,category20:"1f77b4aec7e8ff7f0effbb782ca02c98df8ad62728ff98969467bdc5b0d58c564bc49c94e377c2f7b6d27f7f7fc7c7c7bcbd22dbdb8d17becf9edae5",category20b:"393b795254a36b6ecf9c9ede6379398ca252b5cf6bcedb9c8c6d31bd9e39e7ba52e7cb94843c39ad494ad6616be7969c7b4173a55194ce6dbdde9ed6",category20c:"3182bd6baed69ecae1c6dbefe6550dfd8d3cfdae6bfdd0a231a35474c476a1d99bc7e9c0756bb19e9ac8bcbddcdadaeb636363969696bdbdbdd9d9d9",dark2:b7,observable10:v7,paired:w7,pastel1:_7,pastel2:S7,set1:E7,set2:k7,set3:$7,tableau10:"4c78a8f58518e4575672b7b254a24beeca3bb279a2ff9da69d755dbab0ac",tableau20:"4c78a89ecae9f58518ffbf7954a24b88d27ab79a20f2cf5b43989483bcb6e45756ff9d9879706ebab0acd67195fcbfd2b279a2d6a5c99e765fd8b5a5"};function FM(e){if(z(e))return e;const t=e.length/6|0,n=new Array(t);for(let i=0;i<t;)n[i]="#"+e.slice(i*6,++i*6);return n}function DM(e,t){for(const n in e)TM(n,t(e[n]))}const y_={};DM(U7,FM);DM(B7,e=>Bx(FM(e)));function TM(e,t){return e=e&&e.toLowerCase(),arguments.length>1?(y_[e]=t,this):y_[e]}const Zf="symbol",j7="discrete",q7="gradient",W7=e=>z(e)?e.map(t=>String(t)):String(e),H7=(e,t)=>e[1]-t[1],G7=(e,t)=>t[1]-e[1];function Ux(e,t,n){let i;return Ce(t)&&(e.bins&&(t=Math.max(t,e.bins.length)),n!=null&&(t=Math.min(t,Math.floor(tg(e.domain())/n||1)+1))),V(t)&&(i=t.step,t=t.interval),Y(t)&&(t=e.type===Ds?wc(t):e.type==Ts?_c(t):R("Only time and utc scales accept interval strings."),i&&(t=t.every(i))),t}function NM(e,t,n){let i=e.range(),r=i[0],o=xe(i),s=H7;if(r>o&&(i=o,o=r,r=i,s=G7),r=Math.floor(r),o=Math.ceil(o),t=t.map(a=>[a,e(a)]).filter(a=>r<=a[1]&&a[1]<=o).sort(s).map(a=>a[0]),n>0&&t.length>1){const a=[t[0],xe(t)];for(;t.length>n&&t.length>=3;)t=t.filter((u,l)=>!(l%2));t.length<3&&(t=a)}return t}function jx(e,t){return e.bins?NM(e,e.bins,t):e.ticks?e.ticks(t):e.domain()}function RM(e,t,n,i,r,o){const s=t.type;let a=W7;if(s===Ds||r===Ds)a=e.timeFormat(i);else if(s===Ts||r===Ts)a=e.utcFormat(i);else if(kM(s)){const u=e.formatFloat(i);if(o||t.bins)a=u;else{const l=OM(t,n,!1);a=c=>l(c)?u(c):""}}else if(t.tickFormat){const u=t.domain();a=e.formatSpan(u[0],u[u.length-1],n,i)}else i&&(a=e.format(i));return a}function OM(e,t,n){const i=jx(e,t),r=e.base(),o=Math.log(r),s=Math.max(1,r*t/i.length),a=u=>{let l=u/Math.pow(r,Math.round(Math.log(u)/o));return l*r<r-.5&&(l*=r),l<=s};return n?i.filter(a):a}const U0={[Qa]:"quantiles",[_g]:"thresholds",[Sg]:"domain"},zM={[Qa]:"quantiles",[_g]:"domain"};function PM(e,t){return e.bins?X7(e.bins):e.type===qr?OM(e,t,!0):U0[e.type]?Y7(e[U0[e.type]]()):jx(e,t)}
6function V7(e,t,n){const i=t[zM[t.type]](),r=i.length;let o=r>1?i[1]-i[0]:i[0],s;for(s=1;s<r;++s)o=Math.min(o,i[s]-i[s-1]);return e.formatSpan(0,o,30,n)}function Y7(e){const t=[-1/0].concat(e);return t.max=1/0,t}function X7(e){const t=e.slice(0,-1);return t.max=xe(e),t}const K7=e=>U0[e.type]||e.bins;function LM(e,t,n,i,r,o,s){const a=zM[t.type]&&o!==Ds&&o!==Ts?V7(e,t,r):RM(e,t,n,r,o,s);return i===Zf&&K7(t)?Z7(a):i===j7?Q7(a):J7(a)}const Z7=e=>(t,n,i)=>{const r=x_(i[n+1],x_(i.max,1/0)),o=b_(t,e),s=b_(r,e);return o&&s?o+" – "+s:s?"< "+s:"≥ "+o},x_=(e,t)=>e??t,Q7=e=>(t,n)=>n?e(t):null,J7=e=>t=>e(t),b_=(e,t)=>Number.isFinite(e)?t(e):null;function eL(e){const t=e.domain(),n=t.length-1;let i=+t[0],r=+xe(t),o=r-i;if(e.type===Sg){const s=n?o/n:.1;i-=s,r+=s,o=r-i}return s=>(s-i)/o}function tL(e,t,n,i){const r=i||t.type;return Y(n)&&O7(r)&&(n=n.replace(/%a/g,"%A").replace(/%b/g,"%B")),!n&&r===Ds?e.timeFormat("%A, %d %B %Y, %X"):!n&&r===Ts?e.utcFormat("%A, %d %B %Y, %X UTC"):LM(e,t,5,null,n,i,!0)}function IM(e,t,n){n=n||{};const i=Math.max(3,n.maxlen||7),r=tL(e,t,n.format,n.formatType);if(B0(t.type)){const o=PM(t).slice(1).map(r),s=o.length;return`${s} boundar${s===1?"y":"ies"}: ${o.join(", ")}`}else if(Ja(t.type)){const o=t.domain(),s=o.length,a=s>i?o.slice(0,i-2).map(r).join(", ")+", ending with "+o.slice(-1).map(r):o.map(r).join(", ");return`${s} value${s===1?"":"s"}: ${a}`}else{const o=t.domain();return`values from ${r(o[0])} to ${r(xe(o))}`}}let nL=0;const Id="p_";function qx(e){return e&&e.gradient}function BM(e,t,n){const i=e.gradient;let r=e.id,o=i==="radial"?Id:"";return r||(r=e.id="gradient_"+nL++,i==="radial"?(e.x1=Di(e.x1,.5),e.y1=Di(e.y1,.5),e.r1=Di(e.r1,0),e.x2=Di(e.x2,.5),e.y2=Di(e.y2,.5),e.r2=Di(e.r2,.5),o=Id):(e.x1=Di(e.x1,0),e.y1=Di(e.y1,0),e.x2=Di(e.x2,1),e.y2=Di(e.y2,0))),t[r]=e,"url("+(n||"")+"#"+o+r+")"}function Di(e,t){return e??t}function iL(e,t){var n=[],i;return i={gradient:"linear",x1:e?e[0]:0,y1:e?e[1]:0,x2:t?t[0]:1,y2:t?t[1]:0,stops:n,stop:function(r,o){return n.push({offset:r,color:o}),i}}}const v_={basis:{curve:KP},"basis-closed":{curve:ZP},"basis-open":{curve:QP},bundle:{curve:JP,tension:"beta",value:.85},cardinal:{curve:e9,tension:"tension",value:0},"cardinal-open":{curve:n9,tension:"tension",value:0},"cardinal-closed":{curve:t9,tension:"tension",value:0},"catmull-rom":{curve:i9,tension:"alpha",value:.5},"catmull-rom-closed":{curve:r9,tension:"alpha",value:.5},"catmull-rom-open":{curve:o9,tension:"alpha",value:.5},linear:{curve:px},"linear-closed":{curve:s9},monotone:{horizontal:u9,vertical:a9},natural:{curve:l9},step:{curve:c9},"step-after":{curve:d9},"step-before":{curve:f9}};function UM(e,t,n){var i=X(v_,e)&&v_[e],r=null;return i&&(r=i.curve||i[t||"vertical"],i.tension&&n!=null&&(r=r[i.tension](n))),r}const rL={m:2,l:2,h:1,v:1,z:0,c:6,s:4,q:4,t:2,a:7},oL=/[mlhvzcsqta]([^mlhvzcsqta]+|$)/gi,sL=/^[+-]?(([0-9]*\.[0-9]+)|([0-9]+\.)|([0-9]+))([eE][+-]?[0-9]+)?/,aL=/^((\s+,?\s*)|(,\s*))/,uL=/^[01]/;function Wx(e){const t=[];return(e.match(oL)||[]).forEach(i=>{let r=i[0];const o=r.toLowerCase(),s=rL[o],a=lL(o,s,i.slice(1).trim()),u=a.length;if(u<s||u&&u%s!==0)throw Error("Invalid SVG path, incorrect parameter count");if(t.push([r,...a.slice(0,s)]),u!==s){o==="m"&&(r=r==="M"?"L":"l");for(let l=s;l<u;l+=s)t.push([r,...a.slice(l,l+s)])}}),t}function lL(e,t,n){const i=[];for(let r=0;t&&r<n.length;)for(let o=0;o<t;++o){const s=e==="a"&&(o===3||o===4)?uL:sL,a=n.slice(r).match(s);if(a===null)throw Error("Invalid SVG path, incorrect parameter type");r+=a[0].length,i.push(+a[0]);const u=n.slice(r).match(aL);u!==null&&(r+=u[0].length)}return i}const Mo=Math.PI/180,cL=1e-14,us=Math.PI/2,zi=Math.PI*2,ba=Math.sqrt(3)/2;var hm={},gm={},jM=[].join;function fL(e,t,n,i,r,o,s,a,u){const l=jM.call(arguments);if(hm[l])return hm[l];const c=s*Mo,f=Math.sin(c),d=Math.cos(c);n=Math.abs(n),i=Math.abs(i);const h=d*(a-e)*.5+f*(u-t)*.5,g=d*(u-t)*.5-f*(a-e)*.5;let p=h*h/(n*n)+g*g/(i*i);p>1&&(p=Math.sqrt(p),n*=p,i*=p);const m=d/n,y=f/n,x=-f/i,b=d/i,v=m*a+y*u,w=x*a+b*u,S=m*e+y*t,_=x*e+b*t;let k=1/((S-v)*(S-v)+(_-w)*(_-w))-.25;k<0&&(k=0);let A=Math.sqrt(k);o==r&&(A=-A);const $=.5*(v+S)-A*(_-w),D=.5*(w+_)+A*(S-v),M=Math.atan2(w-D,v-$);let C=Math.atan2(_-D,S-$)-M;C<0&&o===1?C+=zi:C>0&&o===0&&(C-=zi);const N=Math.ceil(Math.abs(C/(us+.001))),G=[];for(let Q=0;Q<N;++Q){const Z=M+Q*C/N,_e=M+(Q+1)*C/N;G[Q]=[$,D,Z,_e,n,i,f,d]}return hm[l]=G}function dL(e){const t=jM.call(e);
vendor: 5,994 bytes, line 6
6if(gm[t])return gm[t];var n=e[0],i=e[1],r=e[2],o=e[3],s=e[4],a=e[5],u=e[6],l=e[7];const c=l*s,f=-u*a,d=u*s,h=l*a,g=Math.cos(r),p=Math.sin(r),m=Math.cos(o),y=Math.sin(o),x=.5*(o-r),b=Math.sin(x*.5),v=8/3*b*b/Math.sin(x),w=n+g-v*p,S=i+p+v*g,_=n+m,E=i+y,k=_+v*y,A=E-v*m;return gm[t]=[c*w+f*S,d*w+h*S,c*k+f*A,d*k+h*A,c*_+f*E,d*_+h*E]}const Rn=["l",0,0,0,0,0,0,0];function hL(e,t,n){const i=Rn[0]=e[0];if(i==="a"||i==="A")Rn[1]=t*e[1],Rn[2]=n*e[2],Rn[3]=e[3],Rn[4]=e[4],Rn[5]=e[5],Rn[6]=t*e[6],Rn[7]=n*e[7];else if(i==="h"||i==="H")Rn[1]=t*e[1];else if(i==="v"||i==="V")Rn[1]=n*e[1];else for(var r=1,o=e.length;r<o;++r)Rn[r]=(r%2==1?t:n)*e[r];return Rn}function Bd(e,t,n,i,r,o){var s,a=null,u=0,l=0,c=0,f=0,d,h,g,p,m=0,y=0;n==null&&(n=0),i==null&&(i=0),r==null&&(r=1),o==null&&(o=r),e.beginPath&&e.beginPath();for(var x=0,b=t.length;x<b;++x){switch(s=t[x],(r!==1||o!==1)&&(s=hL(s,r,o)),s[0]){case"l":u+=s[1],l+=s[2],e.lineTo(u+n,l+i);break;case"L":u=s[1],l=s[2],e.lineTo(u+n,l+i);break;case"h":u+=s[1],e.lineTo(u+n,l+i);break;case"H":u=s[1],e.lineTo(u+n,l+i);break;case"v":l+=s[1],e.lineTo(u+n,l+i);break;case"V":l=s[1],e.lineTo(u+n,l+i);break;case"m":u+=s[1],l+=s[2],m=u,y=l,e.moveTo(u+n,l+i);break;case"M":u=s[1],l=s[2],m=u,y=l,e.moveTo(u+n,l+i);break;case"c":d=u+s[5],h=l+s[6],c=u+s[3],f=l+s[4],e.bezierCurveTo(u+s[1]+n,l+s[2]+i,c+n,f+i,d+n,h+i),u=d,l=h;break;case"C":u=s[5],l=s[6],c=s[3],f=s[4],e.bezierCurveTo(s[1]+n,s[2]+i,c+n,f+i,u+n,l+i);break;case"s":d=u+s[3],h=l+s[4],c=2*u-c,f=2*l-f,e.bezierCurveTo(c+n,f+i,u+s[1]+n,l+s[2]+i,d+n,h+i),c=u+s[1],f=l+s[2],u=d,l=h;break;case"S":d=s[3],h=s[4],c=2*u-c,f=2*l-f,e.bezierCurveTo(c+n,f+i,s[1]+n,s[2]+i,d+n,h+i),u=d,l=h,c=s[1],f=s[2];break;case"q":d=u+s[3],h=l+s[4],c=u+s[1],f=l+s[2],e.quadraticCurveTo(c+n,f+i,d+n,h+i),u=d,l=h;break;case"Q":d=s[3],h=s[4],e.quadraticCurveTo(s[1]+n,s[2]+i,d+n,h+i),u=d,l=h,c=s[1],f=s[2];break;case"t":d=u+s[1],h=l+s[2],a[0].match(/[QqTt]/)===null?(c=u,f=l):a[0]==="t"?(c=2*u-g,f=2*l-p):a[0]==="q"&&(c=2*u-c,f=2*l-f),g=c,p=f,e.quadraticCurveTo(c+n,f+i,d+n,h+i),u=d,l=h,c=u+s[1],f=l+s[2];break;case"T":d=s[1],h=s[2],c=2*u-c,f=2*l-f,e.quadraticCurveTo(c+n,f+i,d+n,h+i),u=d,l=h;break;case"a":w_(e,u+n,l+i,[s[1],s[2],s[3],s[4],s[5],s[6]+u+n,s[7]+l+i]),u+=s[6],l+=s[7];break;case"A":w_(e,u+n,l+i,[s[1],s[2],s[3],s[4],s[5],s[6]+n,s[7]+i]),u=s[6],l=s[7];break;case"z":case"Z":u=m,l=y,e.closePath();break}a=s}}function w_(e,t,n,i){const r=fL(i[5],i[6],i[0],i[1],i[3],i[4],i[2],t,n);for(let o=0;o<r.length;++o){const s=dL(r[o]);e.bezierCurveTo(s[0],s[1],s[2],s[3],s[4],s[5])}}const __=.5773502691896257,S_={circle:{draw:function(e,t){const n=Math.sqrt(t)/2;e.moveTo(n,0),e.arc(0,0,n,0,zi)}},cross:{draw:function(e,t){var n=Math.sqrt(t)/2,i=n/2.5;e.moveTo(-n,-i),e.lineTo(-n,i),e.lineTo(-i,i),e.lineTo(-i,n),e.lineTo(i,n),e.lineTo(i,i),e.lineTo(n,i),e.lineTo(n,-i),e.lineTo(i,-i),e.lineTo(i,-n),e.lineTo(-i,-n),e.lineTo(-i,-i),e.closePath()}},diamond:{draw:function(e,t){const n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(0,-n),e.lineTo(n,0),e.lineTo(0,n),e.closePath()}},square:{draw:function(e,t){var n=Math.sqrt(t),i=-n/2;e.rect(i,i,n,n)}},arrow:{draw:function(e,t){var n=Math.sqrt(t)/2,i=n/7,r=n/2.5,o=n/8;e.moveTo(-i,n),e.lineTo(i,n),e.lineTo(i,-o),e.lineTo(r,-o),e.lineTo(0,-n),e.lineTo(-r,-o),e.lineTo(-i,-o),e.closePath()}},wedge:{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n,r=i-n*__,o=n/4;e.moveTo(0,-i-r),e.lineTo(-o,i-r),e.lineTo(o,i-r),e.closePath()}},triangle:{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n,r=i-n*__;e.moveTo(0,-i-r),e.lineTo(-n,i-r),e.lineTo(n,i-r),e.closePath()}},"triangle-up":{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n;e.moveTo(0,-i),e.lineTo(-n,i),e.lineTo(n,i),e.closePath()}},"triangle-down":{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n;e.moveTo(0,i),e.lineTo(-n,-i),e.lineTo(n,-i),e.closePath()}},"triangle-right":{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n;e.moveTo(i,0),e.lineTo(-i,-n),e.lineTo(-i,n),e.closePath()}},"triangle-left":{draw:function(e,t){var n=Math.sqrt(t)/2,i=ba*n;e.moveTo(-i,0),e.lineTo(i,-n),e.lineTo(i,n),e.closePath()}},stroke:{draw:function(e,t){const n=Math.sqrt(t)/2;e.moveTo(-n,0),e.lineTo(n,0)}}};function gL(e){return X(S_,e)?S_[e]:pL(e)}var pm={};function pL(e){if(!X(pm,e)){const t=Wx(e);pm[e]={draw:function(n,i){Bd(n,t,0,0,Math.sqrt(i)/2)}}}return pm[e]}const oo=.448084975506;function mL(e){return e.x}function yL(e){return e.y}function xL(e){return e.width}function bL(e){return e.height}function pr(e){return typeof e=="function"?e:()=>+e}function Sf(e,t,n){return Math.max(t,Math.min(e,n))}function vL(){var e=mL,t=yL,n=xL,i=bL,r=pr(0),o=r,s=r,a=r,u=null;function l(c,f,d){var h,g=f??+e.call(this,c),p=d??+t.call(this,c),m=+n.call(this,c),y=+i.call(this,c),x=Math.min(m,y)/2,b=Sf(+r.call(this,c),0,x),v=Sf(+o.call(this,c),0,x),w=Sf(+s.call(this,c),0,x),S=Sf(+a.call(this,c),0,x);if(u||(u=h=gx()),b<=0&&v<=0&&w<=0&&S<=0)u.rect(g,p,m,y);else{var _=g+m,E=p+y;u.moveTo(g+b,p),u.lineTo(_-v,p),u.bezierCurveTo(_-oo*v,p,_,p+oo*v,_,p+v),u.lineTo(_,E-S),u.bezierCurveTo(_,E-oo*S,_-oo*S,E,_-S,E),u.lineTo(g+w,E),u.bezierCurveTo(g+oo*w,E,g,E-oo*w,g,E-w),u.lineTo(g,p+b),u.bezierCurveTo(g,p+oo*b,g+oo*b,p,g+b,p),u.closePath()}if(h)return u=null,h+""||null}return l.x=function(c){return arguments.length?(e=pr(c),l):e},l.y=function(c){return arguments.length?(t=pr(c),l):t},l.width=function(c){return arguments.length?(n=pr(c),l):n},l.height=function(c){return arguments.length?(i=pr(c),l):i},l.cornerRadius=function(c,f,d,h){return arguments.length?(r=pr(c),o=f!=null?pr(f):r,a=d!=null?pr(d):r,s=h!=null?pr(h):o,l):r},l.context=function(c){return arguments.length?(u=c??null,l):u},l}function wL(){var e,t,n,i,r=null,o,s,a,u;function l(f,d,h){const g=h/2;if(o){var p=a-d,m=f-s;if(p||m){var y=Math.hypot(p,m),x=(p/=y)*u,b=(m/=y)*u,v=Math.atan2(m,p);r.moveTo(s-x,a-b),r.lineTo(f-p*g,d-m*g),r.arc(f,d,g,v-Math.PI,v),r.lineTo(s+x,a+b),r.arc(s,a,u,v,v+Math.PI)}else r.arc(f,d,g,0,zi);r.closePath()}else o=1;s=f,a=d,u=g}function c(f){var d,h=f.length,g,p=!1,m;
6for(r==null&&(r=m=gx()),d=0;d<=h;++d)!(d<h&&i(g=f[d],d,f))===p&&(p=!p)&&(o=0),p&&l(+e(g,d,f),+t(g,d,f),+n(g,d,f));if(m)return r=null,m+""||null}return c.x=function(f){return arguments.length?(e=f,c):e},c.y=function(f){return arguments.length?(t=f,c):t},c.size=function(f){return arguments.length?(n=f,c):n},c.defined=function(f){return arguments.length?(i=f,c):i},c.context=function(f){return arguments.length?(f==null?r=null:r=f,c):r},c}function Nc(e,t){return e??t}const Rc=e=>e.x||0,Oc=e=>e.y||0,_L=e=>e.width||0,SL=e=>e.height||0,EL=e=>(e.x||0)+(e.width||0),kL=e=>(e.y||0)+(e.height||0),$L=e=>e.startAngle||0,AL=e=>e.endAngle||0,CL=e=>e.padAngle||0,ML=e=>e.innerRadius||0,FL=e=>e.outerRadius||0,DL=e=>e.cornerRadius||0,TL=e=>Nc(e.cornerRadiusTopLeft,e.cornerRadius)||0,NL=e=>Nc(e.cornerRadiusTopRight,e.cornerRadius)||0,RL=e=>Nc(e.cornerRadiusBottomRight,e.cornerRadius)||0,OL=e=>Nc(e.cornerRadiusBottomLeft,e.cornerRadius)||0,zL=e=>Nc(e.size,64),PL=e=>e.size||1,Eg=e=>e.defined!==!1,LL=e=>gL(e.shape||"circle"),IL=VP().startAngle($L).endAngle(AL).padAngle(CL).innerRadius(ML).outerRadius(FL).cornerRadius(DL),BL=wC().x(Rc).y1(Oc).y0(kL).defined(Eg),UL=wC().y(Oc).x1(Rc).x0(EL).defined(Eg),jL=vC().x(Rc).y(Oc).defined(Eg),qL=vL().x(Rc).y(Oc).width(_L).height(SL).cornerRadius(TL,NL,RL,OL),WL=XP().type(LL).size(zL),HL=wL().x(Rc).y(Oc).defined(Eg).size(PL);function Hx(e){return e.cornerRadius||e.cornerRadiusTopLeft||e.cornerRadiusTopRight||e.cornerRadiusBottomRight||e.cornerRadiusBottomLeft}function GL(e,t){return IL.context(e)(t)}function VL(e,t){const n=t[0],i=n.interpolate||"linear";return(n.orient==="horizontal"?UL:BL).curve(UM(i,n.orient,n.tension)).context(e)(t)}function YL(e,t){const n=t[0],i=n.interpolate||"linear";return jL.curve(UM(i,n.orient,n.tension)).context(e)(t)}function Mu(e,t,n,i){return qL.context(e)(t,n,i)}function XL(e,t){return(t.mark.shape||t.shape).context(e)(t)}function KL(e,t){return WL.context(e)(t)}function ZL(e,t){return HL.context(e)(t)}var QL=1;function Gx(e,t,n){var i=t.clip,r=e._defs,o=t.clip_id||(t.clip_id="clip"+QL++),s=r.clipping[o]||(r.clipping[o]={id:o});return ce(i)?s.path=i(null):Hx(n)?s.path=Mu(null,n,0,0):(s.width=n.width||0,s.height=n.height||0),"url(#"+o+")"}function it(e){this.clear(),e&&this.union(e)}it.prototype={clone(){return new it(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(e){return this.x1===e.x1&&this.y1===e.y1&&this.x2===e.x2&&this.y2===e.y2},set(e,t,n,i){return n<e?(this.x2=e,this.x1=n):(this.x1=e,this.x2=n),i<t?(this.y2=t,this.y1=i):(this.y1=t,this.y2=i),this},add(e,t){return e<this.x1&&(this.x1=e),t<this.y1&&(this.y1=t),e>this.x2&&(this.x2=e),t>this.y2&&(this.y2=t),this},expand(e){return this.x1-=e,this.y1-=e,this.x2+=e,this.y2+=e,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(e){return this.x1*=e,this.y1*=e,this.x2*=e,this.y2*=e,this},translate(e,t){return this.x1+=e,this.x2+=e,this.y1+=t,this.y2+=t,this},rotate(e,t,n){const i=this.rotatedPoints(e,t,n);return this.clear().add(i[0],i[1]).add(i[2],i[3]).add(i[4],i[5]).add(i[6],i[7])},rotatedPoints(e,t,n){var{x1:i,y1:r,x2:o,y2:s}=this,a=Math.cos(e),u=Math.sin(e),l=t-t*a+n*u,c=n-t*u-n*a;return[a*i-u*r+l,u*i+a*r+c,a*i-u*s+l,u*i+a*s+c,a*o-u*r+l,u*o+a*r+c,a*o-u*s+l,u*o+a*s+c]},union(e){return e.x1<this.x1&&(this.x1=e.x1),e.y1<this.y1&&(this.y1=e.y1),e.x2>this.x2&&(this.x2=e.x2),e.y2>this.y2&&(this.y2=e.y2),this},intersect(e){return e.x1>this.x1&&(this.x1=e.x1),e.y1>this.y1&&(this.y1=e.y1),e.x2<this.x2&&(this.x2=e.x2),e.y2<this.y2&&(this.y2=e.y2),this},encloses(e){return e&&this.x1<=e.x1&&this.x2>=e.x2&&this.y1<=e.y1&&this.y2>=e.y2},alignsWith(e){return e&&(this.x1==e.x1||this.x2==e.x2||this.y1==e.y1||this.y2==e.y2)},intersects(e){return e&&!(this.x2<e.x1||this.x1>e.x2||this.y2<e.y1||this.y1>e.y2)},contains(e,t){return!(e<this.x1||e>this.x2||t<this.y1||t>this.y2)},width(){return this.x2-this.x1},height(){return this.y2-this.y1}};function Vx(e){this.mark=e,this.bounds=this.bounds||new it}function Yx(e){Vx.call(this,e),this.items=this.items||[]}q(Yx,Vx);class JL{constructor(t){this._pending=0,this._loader=t||Ty()}pending(){return this._pending}sanitizeURL(t){const n=this;return E_(n),n._loader.sanitize(t,{context:"href"}).then(i=>(Ku(n),i)).catch(()=>(Ku(n),null))}loadImage(t){const n=this,i=h9();return E_(n),n._loader.sanitize(t,{context:"image"}).then(r=>{const o=r.href;if(!o||!i)throw{url:o};const s=new i,a=X(r,"crossOrigin")?r.crossOrigin:"anonymous";return a!=null&&(s.crossOrigin=a),s.onload=()=>Ku(n),s.onerror=()=>Ku(n),s.src=o,s}).catch(r=>(Ku(n),{complete:!1,width:0,height:0,src:r&&r.url||""}))}ready(){const t=this;return new Promise(n=>{function i(r){t.pending()?setTimeout(()=>{i(!0)},10):n(r)}i(!1)})}}function E_(e){e._pending+=1}function Ku(e){e._pending-=1}function Uo(e,t,n){if(t.stroke&&t.opacity!==0&&t.strokeOpacity!==0){const i=t.strokeWidth!=null?+t.strokeWidth:1;e.expand(i+(n?eI(t,i):0))}return e}function eI(e,t){return e.strokeJoin&&e.strokeJoin!=="miter"?0:t}const tI=zi-1e-8;let kg,Qf,Jf,gs,j0,ed,q0,W0;const ho=(e,t)=>kg.add(e,t),td=(e,t)=>ho(Qf=e,Jf=t),k_=e=>ho(e,kg.y1),$_=e=>ho(kg.x1,e),ls=(e,t)=>j0*e+q0*t,cs=(e,t)=>ed*e+W0*t,mm=(e,t)=>
6ho(ls(e,t),cs(e,t)),ym=(e,t)=>td(ls(e,t),cs(e,t));function $g(e,t){return kg=e,t?(gs=t*Mo,j0=W0=Math.cos(gs),ed=Math.sin(gs),q0=-ed):(j0=W0=1,gs=ed=q0=0),nI}const nI={beginPath(){},closePath(){},moveTo:ym,lineTo:ym,rect(e,t,n,i){gs?(mm(e+n,t),mm(e+n,t+i),mm(e,t+i),ym(e,t)):(ho(e+n,t+i),td(e,t))},quadraticCurveTo(e,t,n,i){const r=ls(e,t),o=cs(e,t),s=ls(n,i),a=cs(n,i);A_(Qf,r,s,k_),A_(Jf,o,a,$_),td(s,a)},bezierCurveTo(e,t,n,i,r,o){const s=ls(e,t),a=cs(e,t),u=ls(n,i),l=cs(n,i),c=ls(r,o),f=cs(r,o);C_(Qf,s,u,c,k_),C_(Jf,a,l,f,$_),td(c,f)},arc(e,t,n,i,r,o){if(i+=gs,r+=gs,Qf=n*Math.cos(r)+e,Jf=n*Math.sin(r)+t,Math.abs(r-i)>tI)ho(e-n,t-n),ho(e+n,t+n);else{const s=l=>ho(n*Math.cos(l)+e,n*Math.sin(l)+t);let a,u;if(s(i),s(r),r!==i)if(i=i%zi,i<0&&(i+=zi),r=r%zi,r<0&&(r+=zi),r<i&&(o=!o,a=i,i=r,r=a),o)for(r-=zi,a=i-i%us,u=0;u<4&&a>r;++u,a-=us)s(a);else for(a=i-i%us+us,u=0;u<4&&a<r;++u,a=a+us)s(a)}}};function A_(e,t,n,i){const r=(e-t)/(e+n-2*t);0<r&&r<1&&i(e+(t-e)*r)}function C_(e,t,n,i,r){const o=i-e+3*t-3*n,s=e+n-2*t,a=e-t;let u=0,l=0,c;Math.abs(o)>cL?(c=s*s+a*o,c>=0&&(c=Math.sqrt(c),u=(-s+c)/o,l=(-s-c)/o)):u=.5*a/s,0<u&&u<1&&r(M_(u,e,t,n,i)),0<l&&l<1&&r(M_(l,e,t,n,i))}function M_(e,t,n,i,r){const o=1-e,s=o*o,a=e*e;return s*o*t+3*s*e*n+3*o*a*i+a*e*r}var _o=(_o=wo(1,1))?_o.getContext("2d"):null;const H0=new it;function qM(e){return function(t,n){if(!_o)return!0;e(_o,t),H0.clear().union(t.bounds).intersect(n).round();const{x1:i,y1:r,x2:o,y2:s}=H0;for(let a=r;a<=s;++a)for(let u=i;u<=o;++u)if(_o.isPointInPath(u,a))return!0;return!1}}function WM(e,t){return t.contains(e.x||0,e.y||0)}function HM(e,t){const n=e.x||0,i=e.y||0,r=e.width||0,o=e.height||0;return t.intersects(H0.set(n,i,n+r,i+o))}function iI(e,t){const n=e.x||0,i=e.y||0,r=e.x2!=null?e.x2:n,o=e.y2!=null?e.y2:i;return pl(t,n,i,r,o)}function pl(e,t,n,i,r){const{x1:o,y1:s,x2:a,y2:u}=e,l=i-t,c=r-n;let f=0,d=1,h,g,p,m;for(m=0;m<4;++m){if(m===0&&(h=-l,g=-(o-t)),m===1&&(h=l,g=a-t),m===2&&(h=-c,g=-(s-n)),m===3&&(h=c,g=u-n),Math.abs(h)<1e-10&&g<0)return!1;if(p=g/h,h<0){if(p>d)return!1;p>f&&(f=p)}else if(h>0){if(p<f)return!1;p<d&&(d=p)}}return!0}function eu(e,t){e.globalCompositeOperation=t.blend||"source-over"}function ei(e,t){return e??t}function F_(e,t){const n=t.length;for(let i=0;i<n;++i)e.addColorStop(t[i].offset,t[i].color);return e}function rI(e,t,n){const i=n.width(),r=n.height();let o;if(t.gradient==="radial")o=e.createRadialGradient(n.x1+ei(t.x1,.5)*i,n.y1+ei(t.y1,.5)*r,Math.max(i,r)*ei(t.r1,0),n.x1+ei(t.x2,.5)*i,n.y1+ei(t.y2,.5)*r,Math.max(i,r)*ei(t.r2,.5));else{const s=ei(t.x1,0),a=ei(t.y1,0),u=ei(t.x2,1),l=ei(t.y2,0);if(s===u||a===l||i===r)o=e.createLinearGradient(n.x1+s*i,n.y1+a*r,n.x1+u*i,n.y1+l*r);else{const c=wo(Math.ceil(i),Math.ceil(r)),f=c.getContext("2d");return f.scale(i,r),f.fillStyle=F_(f.createLinearGradient(s,a,u,l),t.stops),f.fillRect(0,0,i,r),e.createPattern(c,"no-repeat")}}return F_(o,t.stops)}function GM(e,t,n){return qx(n)?rI(e,n,t.bounds):n}function Ud(e,t,n){return n*=t.fillOpacity==null?1:t.fillOpacity,n>0?(e.globalAlpha=n,e.fillStyle=GM(e,t,t.fill),!0):!1}var oI=[];function tu(e,t,n){var i=(i=t.strokeWidth)!=null?i:1;return i<=0?!1:(n*=t.strokeOpacity==null?1:t.strokeOpacity,n>0?(e.globalAlpha=n,e.strokeStyle=GM(e,t,t.stroke),e.lineWidth=i,e.lineCap=t.strokeCap||"butt",e.lineJoin=t.strokeJoin||"miter",e.miterLimit=t.strokeMiterLimit||10,e.setLineDash&&(e.setLineDash(t.strokeDash||oI),e.lineDashOffset=t.strokeDashOffset||0),!0):!1)}function sI(e,t){return e.zindex-t.zindex||e.index-t.index}function VM(e){if(!e.zdirty)return e.zitems;var t=e.items,n=[],i,r,o;for(r=0,o=t.length;r<o;++r)i=t[r],i.index=r,i.zindex&&n.push(i);return e.zdirty=!1,e.zitems=n.sort(sI)}function Ki(e,t){var n=e.items,i,r;if(!n||!n.length)return;const o=VM(e);if(o&&o.length){for(i=0,r=n.length;i<r;++i)n[i].zindex||t(n[i]);n=o}for(i=0,r=n.length;i<r;++i)t(n[i])}function G0(e,t){var n=e.items,i,r;if(!n||!n.length)return null;const o=VM(e);for(o&&o.length&&(n=o),r=n.length;--r>=0;)if(i=t(n[r]))return i;if(n===o){for(n=e.items,r=n.length;--r>=0;)if(!n[r].zindex&&(i=t(n[r])))return i}return null}function Xx(e){return function(t,n,i){Ki(n,r=>{(!i||i.intersects(r.bounds))&&YM(e,t,r,r)})}}function aI(e){return function(t,n,i){n.items.length&&(!i||i.intersects(n.bounds))&&YM(e,t,n.items[0],n.items)}}
6function YM(e,t,n,i){var r=n.opacity==null?1:n.opacity;r!==0&&(e(t,i)||(eu(t,n),n.fill&&Ud(t,n,r)&&t.fill(),n.stroke&&tu(t,n,r)&&t.stroke()))}function Ag(e){return e=e||gi,function(t,n,i,r,o,s){return i*=t.pixelRatio,r*=t.pixelRatio,G0(n,a=>{const u=a.bounds;if(!(u&&!u.contains(o,s)||!u)&&e(t,a,i,r,o,s))return a})}}function zc(e,t){return function(n,i,r,o){var s=Array.isArray(i)?i[0]:i,a=t??s.fill,u=s.stroke&&n.isPointInStroke,l,c;return u&&(l=s.strokeWidth,c=s.strokeCap,n.lineWidth=l??1,n.lineCap=c??"butt"),e(n,i)?!1:a&&n.isPointInPath(r,o)||u&&n.isPointInStroke(r,o)}}function Kx(e){return Ag(zc(e))}function Ss(e,t){return"translate("+e+","+t+")"}function Zx(e){return"rotate("+e+")"}function uI(e,t){return"scale("+e+","+t+")"}function XM(e){return Ss(e.x||0,e.y||0)}function lI(e){return Ss(e.x||0,e.y||0)+(e.angle?" "+Zx(e.angle):"")}function cI(e){return Ss(e.x||0,e.y||0)+(e.angle?" "+Zx(e.angle):"")+(e.scaleX||e.scaleY?" "+uI(e.scaleX||1,e.scaleY||1):"")}function Qx(e,t,n){function i(s,a){s("transform",lI(a)),s("d",t(null,a))}function r(s,a){return t($g(s,a.angle),a),Uo(s,a).translate(a.x||0,a.y||0)}function o(s,a){var u=a.x||0,l=a.y||0,c=a.angle||0;s.translate(u,l),c&&s.rotate(c*=Mo),s.beginPath(),t(s,a),c&&s.rotate(-c),s.translate(-u,-l)}return{type:e,tag:"path",nested:!1,attr:i,bound:r,draw:Xx(o),pick:Kx(o),isect:n||qM(o)}}var fI=Qx("arc",GL);function dI(e,t){for(var n=e[0].orient==="horizontal"?t[1]:t[0],i=e[0].orient==="horizontal"?"y":"x",r=e.length,o=1/0,s,a;--r>=0;)e[r].defined!==!1&&(a=Math.abs(e[r][i]-n),a<o&&(o=a,s=e[r]));return s}function hI(e,t){for(var n=Math.pow(e[0].strokeWidth||1,2),i=e.length,r,o,s;--i>=0;)if(e[i].defined!==!1&&(r=e[i].x-t[0],o=e[i].y-t[1],s=r*r+o*o,s<n))return e[i];return null}function gI(e,t){for(var n=e.length,i,r,o;--n>=0;)if(e[n].defined!==!1&&(i=e[n].x-t[0],r=e[n].y-t[1],o=i*i+r*r,i=e[n].size||1,o<i*i))return e[n];return null}function Jx(e,t,n){function i(u,l){var c=l.mark.items;c.length&&u("d",t(null,c))}function r(u,l){var c=l.items;return c.length===0?u:(t($g(u),c),Uo(u,c[0]))}function o(u,l){u.beginPath(),t(u,l)}const s=zc(o);function a(u,l,c,f,d,h){var g=l.items,p=l.bounds;return!g||!g.length||p&&!p.contains(d,h)?null:(c*=u.pixelRatio,f*=u.pixelRatio,s(u,g,c,f)?g[0]:null)}return{type:e,tag:"path",nested:!0,attr:i,bound:r,draw:aI(o),pick:a,isect:WM,tip:n}}var pI=Jx("area",VL,dI);function mI(e,t){var n=t.clip;e.save(),ce(n)?(e.beginPath(),n(e),e.clip()):KM(e,t.group)}function KM(e,t){e.beginPath(),Hx(t)?Mu(e,t,0,0):e.rect(0,0,t.width||0,t.height||0),e.clip()}function ZM(e){const t=ei(e.strokeWidth,1);return e.strokeOffset!=null?e.strokeOffset:e.stroke&&t>.5&&t<1.5?.5-Math.abs(t-1):0}function yI(e,t){e("transform",XM(t))}function QM(e,t){const n=ZM(t);e("d",Mu(null,t,n,n))}function xI(e,t){e("class","background"),e("aria-hidden",!0),QM(e,t)}function bI(e,t){e("class","foreground"),e("aria-hidden",!0),t.strokeForeground?QM(e,t):e("d","")}function vI(e,t,n){const i=t.clip?Gx(n,t,t):null;e("clip-path",i)}function wI(e,t){if(!t.clip&&t.items){const n=t.items,i=n.length;for(let r=0;r<i;++r)e.union(n[r].bounds)}return(t.clip||t.width||t.height)&&!t.noBound&&e.add(0,0).add(t.width||0,t.height||0),Uo(e,t),e.translate(t.x||0,t.y||0)}function Ql(e,t,n,i){const r=ZM(t);e.beginPath(),Mu(e,t,(n||0)+r,(i||0)+r)}const _I=zc(Ql),SI=zc(Ql,!1),EI=zc(Ql,!0);function kI(e,t,n,i){Ki(t,r=>{const o=r.x||0,s=r.y||0,a=r.strokeForeground,u=r.opacity==null?1:r.opacity;(r.stroke||r.fill)&&u&&(Ql(e,r,o,s),eu(e,r),r.fill&&Ud(e,r,u)&&e.fill(),r.stroke&&!a&&tu(e,r,u)&&e.stroke()),e.save(),e.translate(o,s),r.clip&&KM(e,r),n&&n.translate(-o,-s),Ki(r,l=>{(l.marktype==="group"||i==null||i.includes(l.marktype))&&this.draw(e,l,n,i)}),n&&n.translate(o,s),e.restore(),a&&r.stroke&&u&&(Ql(e,r,o,s),eu(e,r),tu(e,r,u)&&e.stroke())})}function $I(e,t,n,i,r,o){if(t.bounds&&!t.bounds.contains(r,o)||!t.items)return null;const s=n*e.pixelRatio,a=i*e.pixelRatio;return G0(t,u=>{let l,c,f;const d=u.bounds;if(d&&!d.contains(r,o))return;c=u.x||0,f=u.y||0;const h=c+(u.width||0),g=f+(u.height||0),p=u.clip;if(p&&(r<c||r>h||o<f||o>g))return;if(e.save(),e.translate(c,f),c=r-c,f=o-f,p&&Hx(u)&&!EI(e,u,s,a))return e.restore(
6),null;const m=u.strokeForeground,y=t.interactive!==!1;return y&&m&&u.stroke&&SI(e,u,s,a)?(e.restore(),u):(l=G0(u,x=>AI(x,c,f)?this.pick(x,n,i,c,f):null),!l&&y&&(u.fill||!m&&u.stroke)&&_I(e,u,s,a)&&(l=u),e.restore(),l||null)})}function AI(e,t,n){return(e.interactive!==!1||e.marktype==="group")&&e.bounds&&e.bounds.contains(t,n)}var CI={type:"group",tag:"g",nested:!1,attr:yI,bound:wI,draw:kI,pick:$I,isect:HM,content:vI,background:xI,foreground:bI},Jl={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink",version:"1.1"};function eb(e,t){var n=e.image;return(!n||e.url&&e.url!==n.url)&&(n={complete:!1,width:0,height:0},t.loadImage(e.url).then(i=>{e.image=i,e.image.url=e.url})),n}function tb(e,t){return e.width!=null?e.width:!t||!t.width?0:e.aspect!==!1&&e.height?e.height*t.width/t.height:t.width}function nb(e,t){return e.height!=null?e.height:!t||!t.height?0:e.aspect!==!1&&e.width?e.width*t.height/t.width:t.height}function Cg(e,t){return e==="center"?t/2:e==="right"?t:0}function Mg(e,t){return e==="middle"?t/2:e==="bottom"?t:0}function MI(e,t,n){const i=eb(t,n),r=tb(t,i),o=nb(t,i),s=(t.x||0)-Cg(t.align,r),a=(t.y||0)-Mg(t.baseline,o),u=!i.src&&i.toDataURL?i.toDataURL():i.src||"";e("href",u,Jl["xmlns:xlink"],"xlink:href"),e("transform",Ss(s,a)),e("width",r),e("height",o),e("preserveAspectRatio",t.aspect===!1?"none":"xMidYMid")}function FI(e,t){const n=t.image,i=tb(t,n),r=nb(t,n),o=(t.x||0)-Cg(t.align,i),s=(t.y||0)-Mg(t.baseline,r);return e.set(o,s,o+i,s+r)}function DI(e,t,n){Ki(t,i=>{if(n&&!n.intersects(i.bounds))return;const r=eb(i,this);let o=tb(i,r),s=nb(i,r);if(o===0||s===0)return;let a=(i.x||0)-Cg(i.align,o),u=(i.y||0)-Mg(i.baseline,s),l,c,f,d;i.aspect!==!1&&(c=r.width/r.height,f=i.width/i.height,c===c&&f===f&&c!==f&&(f<c?(d=o/c,u+=(s-d)/2,s=d):(d=s*c,a+=(o-d)/2,o=d))),(r.complete||r.toDataURL)&&(eu(e,i),e.globalAlpha=(l=i.opacity)!=null?l:1,e.imageSmoothingEnabled=i.smooth!==!1,e.drawImage(r,a,u,o,s))})}var TI={type:"image",tag:"image",nested:!1,attr:MI,bound:FI,draw:DI,pick:Ag(),isect:gi,get:eb,xOffset:Cg,yOffset:Mg},NI=Jx("line",YL,hI);function RI(e,t){var n=t.scaleX||1,i=t.scaleY||1;(n!==1||i!==1)&&e("vector-effect","non-scaling-stroke"),e("transform",cI(t)),e("d",t.path)}function nd(e,t){var n=t.path;if(n==null)return!0;var i=t.x||0,r=t.y||0,o=t.scaleX||1,s=t.scaleY||1,a=(t.angle||0)*Mo,u=t.pathCache;(!u||u.path!==n)&&((t.pathCache=u=Wx(n)).path=n),a&&e.rotate&&e.translate?(e.translate(i,r),e.rotate(a),Bd(e,u,0,0,o,s),e.rotate(-a),e.translate(-i,-r)):Bd(e,u,i,r,o,s)}function OI(e,t){return nd($g(e,t.angle),t)?e.set(0,0,0,0):Uo(e,t,!0)}var zI={type:"path",tag:"path",nested:!1,attr:RI,bound:OI,draw:Xx(nd),pick:Kx(nd),isect:qM(nd)};function PI(e,t){e("d",Mu(null,t))}function LI(e,t){var n,i;return Uo(e.set(n=t.x||0,i=t.y||0,n+t.width||0,i+t.height||0),t)}function D_(e,t){e.beginPath(),Mu(e,t)}var II={type:"rect",tag:"path",nested:!1,attr:PI,bound:LI,draw:Xx(D_),pick:Kx(D_),isect:HM};function BI(e,t){e("transform",XM(t)),e("x2",t.x2!=null?t.x2-(t.x||0):0),e("y2",t.y2!=null?t.y2-(t.y||0):0)}function UI(e,t){var n,i;return Uo(e.set(n=t.x||0,i=t.y||0,t.x2!=null?t.x2:n,t.y2!=null?t.y2:i),t)}function JM(e,t,n){var i,r,o,s;return t.stroke&&tu(e,t,n)?(i=t.x||0,r=t.y||0,o=t.x2!=null?t.x2:i,s=t.y2!=null?t.y2:r,e.beginPath(),e.moveTo(i,r),e.lineTo(o,s),!0):!1}function jI(e,t,n){Ki(t,i=>{if(!(n&&!n.intersects(i.bounds))){var r=i.opacity==null?1:i.opacity;r&&JM(e,i,r)&&(eu(e,i),e.stroke())}})}function qI(e,t,n,i){return e.isPointInStroke?JM(e,t,1)&&e.isPointInStroke(n,i):!1}var WI={type:"rule",tag:"line",nested:!1,attr:BI,bound:UI,draw:jI,pick:Ag(qI),isect:iI},HI=Qx("shape",XL),GI=Qx("symbol",KL,WM);const T_=YO();var Un={height:Xr,measureWidth:ib,estimateWidth:jd,width:jd,canvas:eF};eF(!0);function eF(e){Un.width=e&&_o?ib:jd}function jd(e,t){return tF(Fo(e,t),Xr(e))}function tF(e,t){return~~(.8*e.length*t)}function ib(e,t){return Xr(e)<=0||!(t=Fo(e,t))?0:nF(t,rb(e))}function nF(e,t){const n=`(${t}) ${e}`;let i=T_.get(n);return i===void 0&&(_o.font=t,i=_o.measureText(e).width,T_.set(n,i)),i}function Xr(e){return e.fontSize!=null?+e.fontSize||0:11}function Ns(e){return e.lineHeight!=null?e.lineHeight:Xr(e)+2}function VI(e){return z(e)?e.length>1?e:e[0]:e}function Pc(e){return VI(e.lineBreak&&e.text&&!z(e.text)?e.text.split(e.lineBreak):e.text)}
6function iF(e){const t=Pc(e);return(z(t)?t.length-1:0)*Ns(e)}function Fo(e,t){const n=t==null?"":(t+"").trim();return e.limit>0&&n.length?XI(e,n):n}function YI(e){if(Un.width===ib){const t=rb(e);return n=>nF(n,t)}else if(Un.width===jd){const t=Xr(e);return n=>tF(n,t)}else return t=>Un.width(e,t)}function XI(e,t){var n=+e.limit,i=YI(e);if(i(t)<n)return t;var r=e.ellipsis||"…",o=e.dir==="rtl",s=0,a=t.length,u;if(n-=i(r),o){for(;s<a;)u=s+a>>>1,i(t.slice(u))>n?s=u+1:a=u;return r+t.slice(s)}else{for(;s<a;)u=1+(s+a>>>1),i(t.slice(0,u))<n?s=u:a=u-1;return t.slice(0,s)+r}}function Fg(e,t){var n=e.font;return n||"sans-serif"}function rb(e,t){return(e.fontStyle?e.fontStyle+" ":"")+(e.fontVariant?e.fontVariant+" ":"")+(e.fontWeight?e.fontWeight+" ":"")+Xr(e)+"px "+Fg(e)}function ob(e){var t=e.baseline,n=Xr(e);return Math.round(t==="top"?.79*n:t==="middle"?.3*n:t==="bottom"?-.21*n:t==="line-top"?.29*n+.5*Ns(e):t==="line-bottom"?.29*n-.5*Ns(e):0)}const KI={left:"start",center:"middle",right:"end"},Dl=new it;function Dg(e){var t=e.x||0,n=e.y||0,i=e.radius||0,r;return i&&(r=(e.theta||0)-us,t+=i*Math.cos(r),n+=i*Math.sin(r)),Dl.x1=t,Dl.y1=n,Dl}function ZI(e,t){var n=t.dx||0,i=(t.dy||0)+ob(t),r=Dg(t),o=r.x1,s=r.y1,a=t.angle||0,u;e("text-anchor",KI[t.align]||"start"),a?(u=Ss(o,s)+" "+Zx(a),(n||i)&&(u+=" "+Ss(n,i))):u=Ss(o+n,s+i),e("transform",u)}function sb(e,t,n){var i=Un.height(t),r=t.align,o=Dg(t),s=o.x1,a=o.y1,u=t.dx||0,l=(t.dy||0)+ob(t)-Math.round(.8*i),c=Pc(t),f;if(z(c)?(i+=Ns(t)*(c.length-1),f=c.reduce((d,h)=>Math.max(d,Un.width(t,h)),0)):f=Un.width(t,c),r==="center"?u-=f/2:r==="right"&&(u-=f),e.set(u+=s,l+=a,u+f,l+i),t.angle&&!n)e.rotate(t.angle*Mo,s,a);else if(n===2)return e.rotatedPoints(t.angle*Mo,s,a);return e}function QI(e,t,n){Ki(t,i=>{var r=i.opacity==null?1:i.opacity,o,s,a,u,l,c,f;if(!(n&&!n.intersects(i.bounds)||r===0||i.fontSize<=0||i.text==null||i.text.length===0)){if(e.font=rb(i),e.textAlign=i.align||"left",o=Dg(i),s=o.x1,a=o.y1,i.angle&&(e.save(),e.translate(s,a),e.rotate(i.angle*Mo),s=a=0),s+=i.dx||0,a+=(i.dy||0)+ob(i),c=Pc(i),eu(e,i),z(c))for(l=Ns(i),u=0;u<c.length;++u)f=Fo(i,c[u]),i.fill&&Ud(e,i,r)&&e.fillText(f,s,a),i.stroke&&tu(e,i,r)&&e.strokeText(f,s,a),a+=l;else f=Fo(i,c),i.fill&&Ud(e,i,r)&&e.fillText(f,s,a),i.stroke&&tu(e,i,r)&&e.strokeText(f,s,a);i.angle&&e.restore()}})}function JI(e,t,n,i,r,o){if(t.fontSize<=0)return!1;if(!t.angle)return!0;var s=Dg(t),a=s.x1,u=s.y1,l=sb(Dl,t,1),c=-t.angle*Mo,f=Math.cos(c),d=Math.sin(c),h=f*r-d*o+(a-f*a+d*u),g=d*r+f*o+(u-d*a-f*u);return l.contains(h,g)}function eB(e,t){const n=sb(Dl,e,2);return pl(t,n[0],n[1],n[2],n[3])||pl(t,n[0],n[1],n[4],n[5])||pl(t,n[4],n[5],n[6],n[7])||pl(t,n[2],n[3],n[6],n[7])}var tB={type:"text",tag:"text",nested:!1,attr:ZI,bound:sb,draw:QI,pick:Ag(JI),isect:eB},nB=Jx("trail",ZL,gI),Vn={arc:fI,area:pI,group:CI,image:TI,line:NI,path:zI,rect:II,rule:WI,shape:HI,symbol:GI,text:tB,trail:nB};function N_(e,t,n){var i=Vn[e.mark.marktype],r=t||i.bound;return i.nested&&(e=e.mark),r(e.bounds||(e.bounds=new it),e,n)}var R_={mark:null};function iB(e,t,n){var i=Vn[e.marktype],r=i.bound,o=e.items,s=o&&o.length,a,u,l,c;if(i.nested)return s?l=o[0]:(R_.mark=e,l=R_),c=N_(l,r,n),t=t&&t.union(c)||c,t;if(t=t||e.bounds&&e.bounds.clear()||new it,s)for(a=0,u=o.length;a<u;++a)t.union(N_(o[a],r,n));return e.bounds=t}const rB=["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 oB(e,t){return JSON.stringify(e,rB,t)}function sB(e){const t=typeof e=="string"?JSON.parse(e):e;return rF(t)}function rF(e){var t=e.marktype,n=e.items,i,r,o;
6if(n)for(r=0,o=n.length;r<o;++r)i=t?"mark":"group",n[r][i]=e,n[r].zindex&&(n[r][i].zdirty=!0),(t||i)==="group"&&rF(n[r]);return t&&iB(e),e}class aB{constructor(t){arguments.length?this.root=sB(t):(this.root=O_({marktype:"group",name:"root",role:"frame"}),this.root.items=[new Yx(this.root)])}toJSON(t){return oB(this.root,t||0)}mark(t,n,i){n=n||this.root.items[0];const r=O_(t,n);return n.items[i]=r,r.zindex&&(r.group.zdirty=!0),r}}function O_(e,t){const n={bounds:new it,clip:!!e.clip,group:t,interactive:e.interactive!==!1,items:[],marktype:e.marktype,name:e.name||void 0,role:e.role||void 0,zindex:e.zindex||0};return e.aria!=null&&(n.aria=e.aria),e.description&&(n.description=e.description),n}function ps(e,t,n){return!e&&typeof document<"u"&&document.createElement&&(e=document),e?n?e.createElementNS(n,t):e.createElement(t):null}function oF(e,t){t=t.toLowerCase();for(var n=e.childNodes,i=0,r=n.length;i<r;++i)if(n[i].tagName.toLowerCase()===t)return n[i]}function lt(e,t,n,i){var r=e.childNodes[t],o;return(!r||r.tagName.toLowerCase()!==n.toLowerCase())&&(o=r||null,r=ps(e.ownerDocument,n,i),e.insertBefore(r,o)),r}function ii(e,t){for(var n=e.childNodes,i=n.length;i>t;)e.removeChild(n[--i]);return e}function sF(e){return"mark-"+e.marktype+(e.role?" role-"+e.role:"")+(e.name?" "+e.name:"")}function ab(e,t){const n=t.getBoundingClientRect();return[e.clientX-n.left-(t.clientLeft||0),e.clientY-n.top-(t.clientTop||0)]}function uB(e,t,n,i){var r=e&&e.mark,o,s;if(r&&(o=Vn[r.marktype]).tip){for(s=ab(t,n),s[0]-=i[0],s[1]-=i[1];e=e.mark.group;)s[0]-=e.x||0,s[1]-=e.y||0;e=o.tip(r.items,s)}return e}let aF=class{constructor(t,n){this._active=null,this._handlers={},this._loader=t||Ty(),this._tooltip=n||lB}initialize(t,n,i){return this._el=t,this._obj=i||null,this.origin(n)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}origin(t){return arguments.length?(this._origin=t||[0,0],this):this._origin.slice()}scene(t){return arguments.length?(this._scene=t,this):this._scene}on(){}off(){}_handlerIndex(t,n,i){for(let r=t?t.length:0;--r>=0;)if(t[r].type===n&&(!i||t[r].handler===i))return r;return-1}handlers(t){const n=this._handlers,i=[];if(t)i.push(...n[this.eventName(t)]);else for(const r in n)i.push(...n[r]);return i}eventName(t){const n=t.indexOf(".");return n<0?t:t.slice(0,n)}handleHref(t,n,i){this._loader.sanitize(i,{context:"href"}).then(r=>{const o=new MouseEvent(t.type,t),s=ps(null,"a");for(const a in r)s.setAttribute(a,r[a]);s.dispatchEvent(o)}).catch(()=>{})}handleTooltip(t,n,i){if(n&&n.tooltip!=null){n=uB(n,t,this.canvas(),this._origin);const r=i&&n&&n.tooltip||null;this._tooltip.call(this._obj,this,t,n,r)}}getItemBoundingClientRect(t){const n=this.canvas();if(!n)return;const i=n.getBoundingClientRect(),r=this._origin,o=t.bounds,s=o.width(),a=o.height();let u=o.x1+r[0]+i.left,l=o.y1+r[1]+i.top;for(;t.mark&&(t=t.mark.group);)u+=t.x||0,l+=t.y||0;return{x:u,y:l,width:s,height:a,left:u,top:l,right:u+s,bottom:l+a}}};function lB(e,t,n,i){e.element().setAttribute("title",i||"")}class Tg{constructor(t){this._el=null,this._bgcolor=null,this._loader=new JL(t)}initialize(t,n,i,r,o){return this._el=t,this.resize(n,i,r,o)}element(){return this._el}canvas(){return this._el&&this._el.firstChild}background(t){return arguments.length===0?this._bgcolor:(this._bgcolor=t,this)}resize(t,n,i,r){return this._width=t,this._height=n,this._origin=i||[0,0],this._scale=r||1,this}dirty(){}render(t,n){const i=this;return i._call=function(){i._render(t,n)},i._call(),i._call=null,i}_render(){}renderAsync(t,n){const i=this.render(t,n);return this._ready?this._ready.then(()=>i):Promise.resolve(i)}_load(t,n){var i=this,r=i._loader[t](n);if(!i._ready){const o=i._call;i._ready=i._loader.ready().then(s=>{s&&o(),i._ready=null})}return r}sanitizeURL(t){return this._load("sanitizeURL",t)}loadImage(t){return this._load("loadImage",t)}}const cB="keydown",fB="keypress",dB="keyup",uF="dragenter",id="dragleave",lF="dragover",V0="pointerdown",hB="pointerup",qd="pointermove",rd="pointerout",cF="pointerover",Y0="mousedown",gB="mouseup",fF="mousemove",Wd="mouseout",dF="mouseover",Hd="click",pB="dblclick",mB="wheel",hF="mousewheel",Gd="touchstart",Vd="touchmove",Yd="touchend",yB=[cB,fB,dB,uF,id,lF,V0,hB,qd,rd,cF,Y0,gB,fF,Wd,dF,Hd,pB,mB,hF,Gd,Vd,Yd],X0=qd,Tl=Wd,K0=H
6d;class Ng extends aF{constructor(t,n){super(t,n),this._down=null,this._touch=null,this._first=!0,this._events={},this.events=yB,this.pointermove=P_([qd,fF],[cF,dF],[rd,Wd]),this.dragover=P_([lF],[uF],[id]),this.pointerout=L_([rd,Wd]),this.dragleave=L_([id])}initialize(t,n,i){return this._canvas=t&&oF(t,"canvas"),[Hd,Y0,V0,qd,rd,id].forEach(r=>z_(this,r)),super.initialize(t,n,i)}canvas(){return this._canvas}context(){return this._canvas.getContext("2d")}DOMMouseScroll(t){this.fire(hF,t)}pointerdown(t){this._down=this._active,this.fire(V0,t)}mousedown(t){this._down=this._active,this.fire(Y0,t)}click(t){this._down===this._active&&(this.fire(Hd,t),this._down=null)}touchstart(t){this._touch=this.pickEvent(t.changedTouches[0]),this._first&&(this._active=this._touch,this._first=!1),this.fire(Gd,t,!0)}touchmove(t){this.fire(Vd,t,!0)}touchend(t){this.fire(Yd,t,!0),this._touch=null}fire(t,n,i){const r=i?this._touch:this._active,o=this._handlers[t];if(n.vegaType=t,t===K0&&r&&r.href?this.handleHref(n,r,r.href):(t===X0||t===Tl)&&this.handleTooltip(n,r,t!==Tl),o)for(let s=0,a=o.length;s<a;++s)o[s].handler.call(this._obj,n,r)}on(t,n){const i=this.eventName(t),r=this._handlers;return this._handlerIndex(r[i],t,n)<0&&(z_(this,t),(r[i]||(r[i]=[])).push({type:t,handler:n})),this}off(t,n){const i=this.eventName(t),r=this._handlers[i],o=this._handlerIndex(r,t,n);return o>=0&&r.splice(o,1),this}pickEvent(t){const n=ab(t,this._canvas),i=this._origin;return this.pick(this._scene,n[0],n[1],n[0]-i[0],n[1]-i[1])}pick(t,n,i,r,o){const s=this.context();return Vn[t.marktype].pick.call(this,s,t,n,i,r,o)}}const xB=e=>e===Gd||e===Vd||e===Yd?[Gd,Vd,Yd]:[e];function z_(e,t){xB(t).forEach(n=>bB(e,n))}function bB(e,t){const n=e.canvas();n&&!e._events[t]&&(e._events[t]=1,n.addEventListener(t,e[t]?i=>e[t](i):i=>e.fire(t,i)))}function ml(e,t,n){t.forEach(i=>e.fire(i,n))}function P_(e,t,n){return function(i){const r=this._active,o=this.pickEvent(i);o===r?ml(this,e,i):((!r||!r.exit)&&ml(this,n,i),this._active=o,ml(this,t,i),ml(this,e,i))}}function L_(e){return function(t){ml(this,e,t),this._active=null}}function vB(){return typeof window<"u"&&window.devicePixelRatio||1}function wB(e,t,n,i,r,o){const s=typeof HTMLElement<"u"&&e instanceof HTMLElement&&e.parentNode!=null,a=e.getContext("2d"),u=s?vB():r;e.width=t*u,e.height=n*u;for(const l in o)a[l]=o[l];return s&&u!==1&&(e.style.width=t+"px",e.style.height=n+"px"),a.pixelRatio=u,a.setTransform(u,0,0,u,u*i[0],u*i[1]),e}class Z0 extends Tg{constructor(t){super(t),this._options={},this._redraw=!1,this._dirty=new it,this._tempb=new it}initialize(t,n,i,r,o,s){return this._options=s||{},this._canvas=this._options.externalContext?null:wo(1,1,this._options.type),t&&this._canvas&&(ii(t,0).appendChild(this._canvas),this._canvas.setAttribute("class","marks")),super.initialize(t,n,i,r,o)}resize(t,n,i,r){if(super.resize(t,n,i,r),this._canvas)wB(this._canvas,this._width,this._height,this._origin,this._scale,this._options.context);else{const o=this._options.externalContext;o||R("CanvasRenderer is missing a valid canvas or context"),o.scale(this._scale,this._scale),o.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(t){const n=this._tempb.clear().union(t.bounds);let i=t.mark.group;for(;i;)n.translate(i.x||0,i.y||0),i=i.mark.group;this._dirty.union(n)}_render(t,n){const i=this.context(),r=this._origin,o=this._width,s=this._height,a=this._dirty,u=_B(r,o,s);i.save();const l=this._redraw||a.empty()?(this._redraw=!1,u.expand(1)):SB(i,u.intersect(a),r);return this.clear(-r[0],-r[1],o,s),this.draw(i,t,l,n),i.restore(),a.clear(),this}draw(t,n,i,r){if(n.marktype!=="group"&&r!=null&&!r.includes(n.marktype))return;const o=Vn[n.marktype];n.clip&&mI(t,n),o.draw.call(this,t,n,i,r),n.clip&&t.restore()}clear(t,n,i,r){const o=this._options,s=this.context();o.type!=="pdf"&&!o.externalContext&&s.clearRect(t,n,i,r),this._bgcolor!=null&&(s.fillStyle=this._bgcolor,s.fillRect(t,n,i,r))}}const _B=(e,t,n)=>new it().set(0,0,t,n).translate(-e[0],-e[1]);
6function SB(e,t,n){return t.expand(1).round(),e.pixelRatio%1&&t.scale(e.pixelRatio).round().scale(1/e.pixelRatio),t.translate(-(n[0]%1),-(n[1]%1)),e.beginPath(),e.rect(t.x1,t.y1,t.width(),t.height()),e.clip(),t}class EB extends aF{constructor(t,n){super(t,n);const i=this;i._hrefHandler=xm(i,(r,o)=>{o&&o.href&&i.handleHref(r,o,o.href)}),i._tooltipHandler=xm(i,(r,o)=>{i.handleTooltip(r,o,r.type!==Tl)})}initialize(t,n,i){let r=this._svg;return r&&(r.removeEventListener(K0,this._hrefHandler),r.removeEventListener(X0,this._tooltipHandler),r.removeEventListener(Tl,this._tooltipHandler)),this._svg=r=t&&oF(t,"svg"),r&&(r.addEventListener(K0,this._hrefHandler),r.addEventListener(X0,this._tooltipHandler),r.addEventListener(Tl,this._tooltipHandler)),super.initialize(t,n,i)}canvas(){return this._svg}on(t,n){const i=this.eventName(t),r=this._handlers;if(this._handlerIndex(r[i],t,n)<0){const s={type:t,handler:n,listener:xm(this,n)};(r[i]||(r[i]=[])).push(s),this._svg&&this._svg.addEventListener(i,s.listener)}return this}off(t,n){const i=this.eventName(t),r=this._handlers[i],o=this._handlerIndex(r,t,n);return o>=0&&(this._svg&&this._svg.removeEventListener(i,r[o].listener),r.splice(o,1)),this}}const xm=(e,t)=>n=>{let i=n.target.__data__;i=Array.isArray(i)?i[0]:i,n.vegaType=n.type,t.call(e._obj,n,i)},gF="aria-hidden",ub="aria-label",lb="role",cb="aria-roledescription",pF="graphics-object",fb="graphics-symbol",mF=(e,t,n)=>({[lb]:e,[cb]:t,[ub]:n||void 0}),kB=Gi(["axis-domain","axis-grid","axis-label","axis-tick","axis-title","legend-band","legend-entry","legend-gradient","legend-label","legend-title","legend-symbol","title"]),I_={axis:{desc:"axis",caption:CB},legend:{desc:"legend",caption:MB},"title-text":{desc:"title",caption:e=>`Title text '${U_(e)}'`}
6,"title-subtitle":{desc:"subtitle",caption:e=>`Subtitle text '${U_(e)}'`}},B_={ariaRole:lb,ariaRoleDescription:cb,description:ub};function yF(e,t){const n=t.aria===!1;if(e(gF,n||void 0),n||t.description==null)for(const i in B_)e(B_[i],void 0);else{const i=t.mark.marktype;e(ub,t.description),e(lb,t.ariaRole||(i==="group"?pF:fb)),e(cb,t.ariaRoleDescription||`${i} mark`)}}function xF(e){return e.aria===!1?{[gF]:!0}:kB[e.role]?null:I_[e.role]?AB(e,I_[e.role]):$B(e)}function $B(e){const t=e.marktype,n=t==="group"||t==="text"||e.items.some(i=>i.description!=null&&i.aria!==!1);return mF(n?pF:fb,`${t} mark container`,e.description)}function AB(e,t){try{const n=e.items[0],i=t.caption||(()=>"");return mF(t.role||fb,t.desc,n.description||i(n))}catch{return null}}function U_(e){return H(e.text).join(" ")}function CB(e){const t=e.datum,n=e.orient,i=t.title?bF(e):null,r=e.context,o=r.scales[t.scale].value,s=r.dataflow.locale(),a=o.type;return`${n==="left"||n==="right"?"Y":"X"}-axis`+(i?` titled '${i}'`:"")+` for a ${Ja(a)?"discrete":a} scale with ${IM(s,o,e)}`}function MB(e){const t=e.datum,n=t.title?bF(e):null,i=`${t.type||""} legend`.trim(),r=t.scales,o=Object.keys(r),s=e.context,a=s.scales[r[o[0]]].value,u=s.dataflow.locale();return DB(i)+(n?` titled '${n}'`:"")+` for ${FB(o)} with ${IM(u,a,e)}`}function bF(e){try{return H(xe(e.items).items[0].text).join(" ")}catch{return null}}function FB(e){return e=e.map(t=>t+(t==="fill"||t==="stroke"?" color":"")),e.length<2?e[0]:e.slice(0,-1).join(", ")+" and "+xe(e)}function DB(e){return e.length?e[0].toUpperCase()+e.slice(1):e}const vF=e=>(e+"").replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;"),TB=e=>vF(e).replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;");function wF(){let e="",t="",n="";const i=[],r=()=>t=n="",o=u=>{t&&(e+=`${t}>${n}`,r()),i.push(u)},s=(u,l)=>(l!=null&&(t+=` ${u}="${TB(l)}"`),a),a={open(u){o(u),t="<"+u;for(var l=arguments.length,c=new Array(l>1?l-1:0),f=1;f<l;f++)c[f-1]=arguments[f];for(const d of c)for(const h in d)s(h,d[h]);return a},close(){const u=i.pop();return t?e+=t+(n?`>${n}</${u}>`:"/>"):e+=`</${u}>`,r(),a},attr:s,text:u=>(n+=vF(u),a),toString:()=>e};return a}const NB=e=>_F(wF(),e)+"";function _F(e,t){if(e.open(t.tagName),t.hasAttributes()){const n=t.attributes,i=n.length;for(let r=0;r<i;++r)e.attr(n[r].name,n[r].value)}if(t.hasChildNodes()){const n=t.childNodes;for(const i of n)i.nodeType===3?e.text(i.nodeValue):_F(e,i)}return e.close()}const Xd={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"},Kd={blend:"mix-blend-mode"},SF={fill:"none","stroke-miterlimit":10},Zu=0,j_="http://www.w3.org/2000/xmlns/",Je=Jl.xmlns;class EF extends Tg{constructor(t){super(t),this._dirtyID=0,this._dirty=[],this._svg=null,this._root=null,this._defs=null}initialize(t,n,i,r,o){return this._defs={},this._clearDefs(),t&&(this._svg=lt(t,0,"svg",Je),this._svg.setAttributeNS(j_,"xmlns",Je),this._svg.setAttributeNS(j_,"xmlns:xlink",Jl["xmlns:xlink"]),this._svg.setAttribute("version",Jl.version),this._svg.setAttribute("class","marks"),ii(t,1),this._root=lt(this._svg,Zu,"g",Je),go(this._root,SF),ii(this._svg,Zu+1)),this.background(this._bgcolor),super.initialize(t,n,i,r,o)}background(t){return arguments.length&&this._svg&&this._svg.style.setProperty("background-color",t),super.background(...arguments)}resize(t,n,i,r){return super.resize(t,n,i,r),this._svg&&(go(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 t=this._svg,n=this._bgcolor;if(!t)return null;let i;n&&(t.removeAttribute("style"),i=lt(t,Zu,"rect",Je),go(i,{width:this._width,height:this._height,fill:n}));const r=NB(t);return n&&(t.removeChild(i),this._svg.style.setProperty("background-color",n)),r}_render(t,n){return this._dirtyCheck()&&(this._dirtyAll&&this._clearDefs(),this.mark(this._root,t,void 0,n),ii(this._root,1)),this.defs(),this._dirty=[],++this._dirtyID,this}dirty(t){t.dirty!==this._dirtyID&&(t.dirty=this._dirtyID,this._dirty.push(t))}isDirty(t){return this._dirtyAll||!t._svg||!t._svg.ownerSVGElement||t.dirty===this._dirtyID}_dirtyCheck(){this._dirtyAll=!0;const t=this._dirty;if(!t.length||!this._dirtyID)return!0;const n=++this._dirtyID;let i,r,o,s,a,u,l;for(a=0,u=t.length;a<u;++a)if(i=t[a],r=i.mark,r.marktype!==o&&(o=r.marktype,s=Vn[o]),r.zdirty&&r.dirty!==n&&(this._dirtyAll=!1,q_(i,n),r.items.forEac
6h(c=>{c.dirty=n})),!r.zdirty){if(i.exit){s.nested&&r.items.length?(l=r.items[0],l._svg&&this._update(s,l._svg,l)):i._svg&&(l=i._svg.parentNode,l&&l.removeChild(i._svg)),i._svg=null;continue}i=s.nested?r.items[0]:i,i._update!==n&&(!i._svg||!i._svg.ownerSVGElement?(this._dirtyAll=!1,q_(i,n)):this._update(s,i._svg,i),i._update=n)}return!this._dirtyAll}mark(t,n,i,r){if(!this.isDirty(n))return n._svg;const o=this._svg,s=n.marktype,a=Vn[s],u=n.interactive===!1?"none":null,l=a.tag==="g",c=W_(n,t,i,"g",o);if(s!=="group"&&r!=null&&!r.includes(s))return ii(c,0),n._svg;c.setAttribute("class",sF(n));const f=xF(n);for(const p in f)jt(c,p,f[p]);l||jt(c,"pointer-events",u),jt(c,"clip-path",n.clip?Gx(this,n,n.group):null);let d=null,h=0;const g=p=>{const m=this.isDirty(p),y=W_(p,c,d,a.tag,o);m&&(this._update(a,y,p),l&&zB(this,y,p,r)),d=y,++h};return a.nested?n.items.length&&g(n.items[0]):Ki(n,g),ii(c,h),c}_update(t,n,i){Cr=n,Ot=n.__values__,yF(Nl,i),t.attr(Nl,i,this);const r=LB[t.type];r&&r.call(this,t,n,i),Cr&&this.style(Cr,i)}style(t,n){if(n!=null){for(const i in Xd){let r=i==="font"?Fg(n):n[i];if(r===Ot[i])continue;const o=Xd[i];r==null?t.removeAttribute(o):(qx(r)&&(r=BM(r,this._defs.gradient,kF())),t.setAttribute(o,r+"")),Ot[i]=r}for(const i in Kd)od(t,Kd[i],n[i])}}defs(){const t=this._svg,n=this._defs;let i=n.el,r=0;for(const o in n.gradient)i||(n.el=i=lt(t,Zu+1,"defs",Je)),r=RB(i,n.gradient[o],r);for(const o in n.clipping)i||(n.el=i=lt(t,Zu+1,"defs",Je)),r=OB(i,n.clipping[o],r);i&&(r===0?(t.removeChild(i),n.el=null):ii(i,r))}_clearDefs(){const t=this._defs;t.gradient={},t.clipping={}}}function q_(e,t){for(;e&&e.dirty!==t;e=e.mark.group)if(e.dirty=t,e.mark&&e.mark.dirty!==t)e.mark.dirty=t;else return}function RB(e,t,n){let i,r,o;if(t.gradient==="radial"){let s=lt(e,n++,"pattern",Je);go(s,{id:Id+t.id,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),s=lt(s,0,"rect",Je),go(s,{width:1,height:1,fill:`url(${kF()}#${t.id})`}),e=lt(e,n++,"radialGradient",Je),go(e,{id:t.id,fx:t.x1,fy:t.y1,fr:t.r1,cx:t.x2,cy:t.y2,r:t.r2})}else e=lt(e,n++,"linearGradient",Je),go(e,{id:t.id,x1:t.x1,x2:t.x2,y1:t.y1,y2:t.y2});for(i=0,r=t.stops.length;i<r;++i)o=lt(e,i,"stop",Je),o.setAttribute("offset",t.stops[i].offset),o.setAttribute("stop-color",t.stops[i].color);return ii(e,i),n}function OB(e,t,n){let i;return e=lt(e,n,"clipPath",Je),e.setAttribute("id",t.id),t.path?(i=lt(e,0,"path",Je),i.setAttribute("d",t.path)):(i=lt(e,0,"rect",Je),go(i,{x:0,y:0,width:t.width,height:t.height})),ii(e,1),n+1}function zB(e,t,n,i){t=t.lastChild.previousSibling;let r,o=0;Ki(n,s=>{r=e.mark(t,s,r,i),++o}),ii(t,1+o)}function W_(e,t,n,i,r){let o=e._svg,s;if(!o&&(s=t.ownerDocument,o=ps(s,i,Je),e._svg=o,e.mark&&(o.__data__=e,o.__values__={fill:"default"},i==="g"))){const a=ps(s,"path",Je);o.appendChild(a),a.__data__=e;const u=ps(s,"g",Je);o.appendChild(u),u.__data__=e;const l=ps(s,"path",Je);o.appendChild(l),l.__data__=e,l.__values__={fill:"default"}}return(o.ownerSVGElement!==r||PB(o,n))&&t.insertBefore(o,n?n.nextSibling:t.firstChild),o}function PB(e,t){return e.parentNode&&e.parentNode.childNodes.length>1&&e.previousSibling!=t}let Cr=null,Ot=null;const LB={group(e,t,n){const i=Cr=t.childNodes[2];Ot=i.__values__,e.foreground(Nl,n,this),Ot=t.__values__,Cr=t.childNodes[1],e.content(Nl,n,this);const r=Cr=t.childNodes[0];e.background(Nl,n,this);const o=n.mark.interactive===!1?"none":null;if(o!==Ot.events&&(jt(i,"pointer-events",o),jt(r,"pointer-events",o),Ot.events=o),n.strokeForeground&&n.stroke){const s=n.fill;jt(i,"display",null),this.style(r,n),jt(r,"stroke",null),s&&(n.fill=null),Ot=i.__values__,this.style(i,n),s&&(n.fill=s),Cr=null}else jt(i,"display","none")},image(e,t,n){n.smooth===!1?(od(t,"image-rendering","optimizeSpeed"),od(t,"image-rendering","pixelated")):od(t,"image-rendering",null)},text(e,t,n){const i=Pc(n);let r,o,s,a;z(i)?(o=i.map(u=>Fo(n,u)),r=o.join(`
7`),r!==Ot.text&&(ii(t,0),s=t.ownerDocument,a=Ns(n),o.forEach((u,l)=>{const c=ps(s,"tspan",Je);c.__data__=n,c.textContent=u,l&&(c.setAttribute("x",0),c.setAttribute("dy",a)),t.appendChild(c)}),Ot.text=r)):(o=Fo(n,i),o!==Ot.text&&(t.textContent=o,Ot.text=o)),jt(t,"font-family",Fg(n)),jt(t,"font-size",Xr(n)+"px"),jt(t,"font-style",n.fontStyle),jt(t,"font-variant",n.fontVariant),jt(t,"font-weight",n.fontWeight)}};function Nl(e,t,n){t!==Ot[e]&&(n?IB(Cr,e,t,n):jt(Cr,e,t),Ot[e]=t)}
7function od(e,t,n){n!==Ot[t]&&(n==null?e.style.removeProperty(t):e.style.setProperty(t,n+""),Ot[t]=n)}function go(e,t){for(const n in t)jt(e,n,t[n])}function jt(e,t,n){n!=null?e.setAttribute(t,n):e.removeAttribute(t)}function IB(e,t,n,i){n!=null?e.setAttributeNS(i,t,n):e.removeAttributeNS(i,t)}function kF(){let e;return typeof window>"u"?"":(e=window.location).hash?e.href.slice(0,-e.hash.length):e.href}class BB extends Tg{constructor(t){super(t),this._text=null,this._defs={gradient:{},clipping:{}}}svg(){return this._text}_render(t){const n=wF();n.open("svg",le({},Jl,{class:"marks",width:this._width*this._scale,height:this._height*this._scale,viewBox:`0 0 ${this._width} ${this._height}`}));const i=this._bgcolor;return i&&i!=="transparent"&&i!=="none"&&n.open("rect",{width:this._width,height:this._height,fill:i}).close(),n.open("g",SF,{transform:"translate("+this._origin+")"}),this.mark(n,t),n.close(),this.defs(n),this._text=n.close()+"",this}mark(t,n){const i=Vn[n.marktype],r=i.tag,o=[yF,i.attr];t.open("g",{class:sF(n),"clip-path":n.clip?Gx(this,n,n.group):null},xF(n),{"pointer-events":r!=="g"&&n.interactive===!1?"none":null});const s=a=>{const u=this.href(a);if(u&&t.open("a",u),t.open(r,this.attr(n,a,o,r!=="g"?r:null)),r==="text"){const l=Pc(a);if(z(l)){const c={x:0,dy:Ns(a)};for(let f=0;f<l.length;++f)t.open("tspan",f?c:null).text(Fo(a,l[f])).close()}else t.text(Fo(a,l))}else if(r==="g"){const l=a.strokeForeground,c=a.fill,f=a.stroke;l&&f&&(a.stroke=null),t.open("path",this.attr(n,a,i.background,"bgrect")).close(),t.open("g",this.attr(n,a,i.content)),Ki(a,d=>this.mark(t,d)),t.close(),l&&f?(c&&(a.fill=null),a.stroke=f,t.open("path",this.attr(n,a,i.foreground,"bgrect")).close(),c&&(a.fill=c)):t.open("path",this.attr(n,a,i.foreground,"bgfore")).close()}t.close(),u&&t.close()};return i.nested?n.items&&n.items.length&&s(n.items[0]):Ki(n,s),t.close()}href(t){const n=t.href;let i;if(n){if(i=this._hrefs&&this._hrefs[n])return i;this.sanitizeURL(n).then(r=>{r["xlink:href"]=r.href,r.href=null,(this._hrefs||(this._hrefs={}))[n]=r})}return null}attr(t,n,i,r){const o={},s=(a,u,l,c)=>{o[c||a]=u};return Array.isArray(i)?i.forEach(a=>a(s,n,this)):i(s,n,this),r&&UB(o,n,t,r,this._defs),o}defs(t){const n=this._defs.gradient,i=this._defs.clipping;if(Object.keys(n).length+Object.keys(i).length!==0){t.open("defs");for(const o in n){const s=n[o],a=s.stops;s.gradient==="radial"?(t.open("pattern",{id:Id+o,viewBox:"0,0,1,1",width:"100%",height:"100%",preserveAspectRatio:"xMidYMid slice"}),t.open("rect",{width:"1",height:"1",fill:"url(#"+o+")"}).close(),t.close(),t.open("radialGradient",{id:o,fx:s.x1,fy:s.y1,fr:s.r1,cx:s.x2,cy:s.y2,r:s.r2})):t.open("linearGradient",{id:o,x1:s.x1,x2:s.x2,y1:s.y1,y2:s.y2});for(let u=0;u<a.length;++u)t.open("stop",{offset:a[u].offset,"stop-color":a[u].color}).close();t.close()}for(const o in i){const s=i[o];t.open("clipPath",{id:o}),s.path?t.open("path",{d:s.path}).close():t.open("rect",{x:0,y:0,width:s.width,height:s.height}).close(),t.close()}t.close()}}}function UB(e,t,n,i,r){let o;if(t==null||(i==="bgrect"&&n.interactive===!1&&(e["pointer-events"]="none"),i==="bgfore"&&(n.interactive===!1&&(e["pointer-events"]="none"),e.display="none",t.fill!==null)))return e;i==="image"&&t.smooth===!1&&(o=["image-rendering: optimizeSpeed;","image-rendering: pixelated;"]),i==="text"&&(e["font-family"]=Fg(t),e["font-size"]=Xr(t)+"px",e["font-style"]=t.fontStyle,e["font-variant"]=t.fontVariant,e["font-weight"]=t.fontWeight);for(const s in Xd){let a=t[s];const u=Xd[s];a==="transparent"&&(u==="fill"||u==="stroke")||a!=null&&(qx(a)&&(a=BM(a,r.gradient,"")),e[u]=a)}for(const s in Kd){const a=t[s];a!=null&&(o=o||[],o.push(`${Kd[s]}: ${a};`))}return o&&(e.style=o.join(" ")),e}const bm={svgMarkTypes:["text"]};class H_ extends Tg{constructor(t){super(t),this._svgRenderer=new EF(t),this._canvasRenderer=new Z0(t)}initialize(t,n,i,r,o){this._root_el=lt(t,0,"div");const s=lt(this._root_el,0,"div"),a=lt(this._root_el,1,"div");return this._root_el.style.position="relative",s.style.height="100%",a.style.position="absolute",a.style.top="0",a.style.left="0",a.style.height="100%",a.style.width="100%",this._svgEl=a,this._canvasEl=s,this._svgEl.style.pointerEvents="none",this._canvasRenderer.initialize(this._canvasEl,n,i,r,o),this._svgRenderer.initialize(this._svgEl,n,i,r,o),super.initialize(t,n,i,r,o)}dirty(t){return bm.svgMarkTypes.includes(t.mark.marktype)?this._svgRenderer.dirty(t):this._canvasRenderer.dirty(t),this}_render(t,n){const r=(n??["arc","area","image","line","path","rect","rule","shape","symbol","text","trail"]).filter(o=>!bm.svgMarkTypes.includes(o));this._svgRenderer.render(t,bm.svgMarkTypes),this._canvasRenderer.render(t,r)}resize(t,n,i,r){return super.resize(t,n,i,r),this._svgRenderer.resize(t,n,i,r),this._canvasRenderer.resize(t,n,i,r),this}background(t){return this._canvasRenderer.background(t),this}}class jB extends Ng{constructor(t,n){super(t,n)}initialize(t,n,i){const r=lt(lt(t,0,"div"),0,"div");return super.initialize(r,n,i)}}const $F="canvas",qB="hybrid",AF="png",CF="svg",WB="none",ms={Canvas:$F,PNG:AF,SVG:CF},Rs={};Rs[$F]=Rs[AF]={renderer:Z0,headless:Z0,handler:Ng};Rs[CF]={renderer:EF,headless:BB,handler:EB};Rs[qB]={renderer:H_,headless:H_,handler:jB};Rs[WB]={};function db(e,t){return e=String(e||"").toLowerCase(),arguments.length>1?(Rs[e]=t,this):Rs[e]}
7function HB(e,t,n){const i=[],r=new it().union(t),o=e.marktype;return o?MF(e,r,n,i):o==="group"?FF(e,r,n,i):R("Intersect scene must be mark node or group item.")}function MF(e,t,n,i){if(GB(e,t,n)){const r=e.items,o=e.marktype,s=r.length;let a=0;if(o==="group")for(;a<s;++a)FF(r[a],t,n,i);else for(const u=Vn[o].isect;a<s;++a){const l=r[a];DF(l,t,u)&&i.push(l)}}return i}function GB(e,t,n){return e.bounds&&t.intersects(e.bounds)&&(e.marktype==="group"||e.interactive!==!1&&(!n||n(e)))}function FF(e,t,n,i){n&&n(e.mark)&&DF(e,t,Vn.group.isect)&&i.push(e);const r=e.items,o=r&&r.length;if(o){const s=e.x||0,a=e.y||0;t.translate(-s,-a);for(let u=0;u<o;++u)MF(r[u],t,n,i);t.translate(s,a)}return i}function DF(e,t,n){const i=e.bounds;return t.encloses(i)||t.intersects(i)&&n(e,t)}const vm=new it;function VB(e){const t=e.clip;if(ce(t))t($g(vm.clear()));else if(t)vm.set(0,0,e.group.width,e.group.height);else return;e.bounds.intersect(vm)}const nu="top",si="left",ai="right",Do="bottom",YB="top-left",XB="top-right",KB="bottom-left",ZB="bottom-right",hb="start",Q0="middle",qt="end",QB="x",JB="y",Rg="group",gb="axis",pb="title",eU="frame",tU="scope",mb="legend",TF="row-header",NF="row-footer",RF="row-title",OF="column-header",zF="column-footer",PF="column-title",nU="padding",iU="symbol",LF="fit",IF="fit-x",BF="fit-y",rU="pad",yb="none",Ef="all",J0="each",xb="flush",po="column",mo="row";function UF(e){F.call(this,null,e)}q(UF,F,{transform(e,t){const n=t.dataflow,i=e.mark,r=i.marktype,o=Vn[r],s=o.bound;let a=i.bounds,u;if(o.nested)i.items.length&&n.dirty(i.items[0]),a=kf(i,s),i.items.forEach(l=>{l.bounds.clear().union(a)});else if(r===Rg||e.modified())switch(t.visit(t.MOD,l=>n.dirty(l)),a.clear(),i.items.forEach(l=>a.union(kf(l,s))),i.role){case gb:case mb:case pb:t.reflow()}else u=t.changed(t.REM),t.visit(t.ADD,l=>{a.union(kf(l,s))}),t.visit(t.MOD,l=>{u=u||a.alignsWith(l.bounds),n.dirty(l),a.union(kf(l,s))}),u&&(a.clear(),i.items.forEach(l=>a.union(l.bounds)));return VB(i),t.modifies("bounds")}});function kf(e,t,n){return t(e.bounds.clear(),e,n)}const G_=":vega_identifier:";function bb(e){F.call(this,0,e)}bb.Definition={type:"Identifier",metadata:{modifies:!0},params:[{name:"as",type:"string",required:!0}]};q(bb,F,{transform(e,t){const n=oU(t.dataflow),i=e.as;let r=n.value;return t.visit(t.ADD,o=>o[i]=o[i]||++r),n.set(this.value=r),t}});function oU(e){return e._signals[G_]||(e._signals[G_]=e.add(0))}function jF(e){F.call(this,null,e)}q(jF,F,{transform(e,t){let n=this.value;n||(n=t.dataflow.scenegraph().mark(e.markdef,sU(e),e.index),n.group.context=e.context,e.context.group||(e.context.group=n.group),n.source=this.source,n.clip=e.clip,n.interactive=e.interactive,this.value=n);const i=n.marktype===Rg?Yx:Vx;return t.visit(t.ADD,r=>i.call(r,n)),(e.modified("clip")||e.modified("interactive"))&&(n.clip=e.clip,n.interactive=!!e.interactive,n.zdirty=!0,t.reflow()),n.items=t.source,t}});function sU(e){const t=e.groups,n=e.parent;return t&&t.size===1?t.get(Object.keys(t.object)[0]):t&&n?t.lookup(n):null}function qF(e){F.call(this,null,e)}const V_={parity:e=>e.filter((t,n)=>n%2?t.opacity=0:1),greedy:(e,t)=>{let n;return e.filter((i,r)=>!r||!WF(n.bounds,i.bounds,t)?(n=i,1):i.opacity=0)}},WF=(e,t,n)=>n>Math.max(t.x1-e.x2,e.x1-t.x2,t.y1-e.y2,e.y1-t.y2),Y_=(e,t)=>{for(var n=1,i=e.length,r=e[0].bounds,o;n<i;r=o,++n)if(WF(r,o=e[n].bounds,t))return!0},aU=e=>{const t=e.bounds;return t.width()>1&&t.height()>1},uU=(e,t,n)=>{var i=e.range(),r=new it;return t===nu||t===Do?r.set(i[0],-1/0,i[1],1/0):r.set(-1/0,i[0],1/0,i[1]),r.expand(n||1),o=>r.encloses(o.bounds)},X_=e=>(e.forEach(t=>t.opacity=1),e),K_=(e,t)=>e.reflow(t.modified()).modifies("opacity");q(qF,F,{transform(e,t){const n=V_[e.method]||V_.parity,i=e.separation||0;let r=t.materialize(t.SOURCE).source,o,s;if(!r||!r.length)return;if(!e.method)return e.modified("method")&&(X_(r),t=K_(t,e)),t;if(r=r.filter(aU),!r.length)return;if(e.sort&&(r=r.slice().sort(e.sort)),o=X_(r),t=K_(t,e),o.length>=3&&Y_(o,i)){do o=n(o,i);while(o.length>=3&&Y_(o,i));o.length<3&&!xe(r).opacity&&(o.length>1&&(xe(o).opacity=0),xe(r).opacity=1)}e.boundScale&&e.boundTolerance>=0&&(s=uU(e.boundScale,e.boundOrient,+e.boundTolerance),r.forEach(u=>{s(u)||(u.opacity=0)}));const a=o[0].mark.bounds.clear();return r.forEach(u=>{u.opacity&&a.union(u.bounds)}),t}});function HF(e){F.call(this,null,e)}q(HF,F,{transform(e,t){const n=t.dataflow;if(t.visit(t.ALL,i=>n.dirty(i)),t.fields&&t.fields.zindex){const i=t.source&&t.source[0];i&&(i.mark.zdirty=!0)}}});const Rt=new it;
vendor: 13,137 bytes, line 7
7function Da(e,t,n){return e[t]===n?0:(e[t]=n,1)}function lU(e){var t=e.items[0].orient;return t===si||t===ai}function cU(e){let t=+e.grid;return[e.ticks?t++:-1,e.labels?t++:-1,t+ +e.domain]}function fU(e,t,n,i){var r=t.items[0],o=r.datum,s=r.translate!=null?r.translate:.5,a=r.orient,u=cU(o),l=r.range,c=r.offset,f=r.position,d=r.minExtent,h=r.maxExtent,g=o.title&&r.items[u[2]].items[0],p=r.titlePadding,m=r.bounds,y=g&&iF(g),x=0,b=0,v,w;switch(Rt.clear().union(m),m.clear(),(v=u[0])>-1&&m.union(r.items[v].bounds),(v=u[1])>-1&&m.union(r.items[v].bounds),a){case nu:x=f||0,b=-c,w=Math.max(d,Math.min(h,-m.y1)),m.add(0,-w).add(l,0),g&&$f(e,g,w,p,y,0,-1,m);break;case si:x=-c,b=f||0,w=Math.max(d,Math.min(h,-m.x1)),m.add(-w,0).add(0,l),g&&$f(e,g,w,p,y,1,-1,m);break;case ai:x=n+c,b=f||0,w=Math.max(d,Math.min(h,m.x2)),m.add(0,0).add(w,l),g&&$f(e,g,w,p,y,1,1,m);break;case Do:x=f||0,b=i+c,w=Math.max(d,Math.min(h,m.y2)),m.add(0,0).add(l,w),g&&$f(e,g,w,p,0,0,1,m);break;default:x=r.x,b=r.y}return Uo(m.translate(x,b),r),Da(r,"x",x+s)|Da(r,"y",b+s)&&(r.bounds=Rt,e.dirty(r),r.bounds=m,e.dirty(r)),r.mark.bounds.clear().union(m)}function $f(e,t,n,i,r,o,s,a){const u=t.bounds;if(t.auto){const l=s*(n+r+i);let c=0,f=0;e.dirty(t),o?c=(t.x||0)-(t.x=l):f=(t.y||0)-(t.y=l),t.mark.bounds.clear().union(u.translate(-c,-f)),e.dirty(t)}a.union(u)}const Z_=(e,t)=>Math.floor(Math.min(e,t)),Q_=(e,t)=>Math.ceil(Math.max(e,t));function dU(e){var t=e.items,n=t.length,i=0,r,o;const s={marks:[],rowheaders:[],rowfooters:[],colheaders:[],colfooters:[],rowtitle:null,coltitle:null};for(;i<n;++i)if(r=t[i],o=r.items,r.marktype===Rg)switch(r.role){case gb:case mb:case pb:break;case TF:s.rowheaders.push(...o);break;case NF:s.rowfooters.push(...o);break;case OF:s.colheaders.push(...o);break;case zF:s.colfooters.push(...o);break;case RF:s.rowtitle=o[0];break;case PF:s.coltitle=o[0];break;default:s.marks.push(...o)}return s}function hU(e){return new it().set(0,0,e.width||0,e.height||0)}function gU(e){const t=e.bounds.clone();return t.empty()?t.set(0,0,0,0):t.translate(-(e.x||0),-(e.y||0))}function Le(e,t,n){const i=V(e)?e[t]:e;return i??(n!==void 0?n:0)}function J_(e){return e<0?Math.ceil(-e):0}function GF(e,t,n){var i=!n.nodirty,r=n.bounds===xb?hU:gU,o=Rt.set(0,0,0,0),s=Le(n.align,po),a=Le(n.align,mo),u=Le(n.padding,po),l=Le(n.padding,mo),c=n.columns||t.length,f=c<=0?1:Math.ceil(t.length/c),d=t.length,h=Array(d),g=Array(c),p=0,m=Array(d),y=Array(f),x=0,b=Array(d),v=Array(d),w=Array(d),S,_,E,k,A,$,D,M,O,C,N;for(_=0;_<c;++_)g[_]=0;for(_=0;_<f;++_)y[_]=0;for(_=0;_<d;++_)$=t[_],A=w[_]=r($),$.x=$.x||0,b[_]=0,$.y=$.y||0,v[_]=0,E=_%c,k=~~(_/c),p=Math.max(p,D=Math.ceil(A.x2)),x=Math.max(x,M=Math.ceil(A.y2)),g[E]=Math.max(g[E],D),y[k]=Math.max(y[k],M),h[_]=u+J_(A.x1),m[_]=l+J_(A.y1),i&&e.dirty(t[_]);for(_=0;_<d;++_)_%c===0&&(h[_]=0),_<c&&(m[_]=0);if(s===J0)for(E=1;E<c;++E){for(N=0,_=E;_<d;_+=c)N<h[_]&&(N=h[_]);for(_=E;_<d;_+=c)h[_]=N+g[E-1]}else if(s===Ef){for(N=0,_=0;_<d;++_)_%c&&N<h[_]&&(N=h[_]);for(_=0;_<d;++_)_%c&&(h[_]=N+p)}else for(s=!1,E=1;E<c;++E)for(_=E;_<d;_+=c)h[_]+=g[E-1];if(a===J0)for(k=1;k<f;++k){for(N=0,_=k*c,S=_+c;_<S;++_)N<m[_]&&(N=m[_]);for(_=k*c;_<S;++_)m[_]=N+y[k-1]}else if(a===Ef){for(N=0,_=c;_<d;++_)N<m[_]&&(N=m[_]);for(_=c;_<d;++_)m[_]=N+x}else for(a=!1,k=1;k<f;++k)for(_=k*c,S=_+c;_<S;++_)m[_]+=y[k-1];for(O=0,_=0;_<d;++_)O=h[_]+(_%c?O:0),b[_]+=O-t[_].x;for(E=0;E<c;++E)for(C=0,_=E;_<d;_+=c)C+=m[_],v[_]+=C-t[_].y;if(s&&Le(n.center,po)&&f>1)for(_=0;_<d;++_)A=s===Ef?p:g[_%c],O=A-w[_].x2-t[_].x-b[_],O>0&&(b[_]+=O/2);if(a&&Le(n.center,mo)&&c!==1)for(_=0;_<d;++_)A=a===Ef?x:y[~~(_/c)],C=A-w[_].y2-t[_].y-v[_],C>0&&(v[_]+=C/2);for(_=0;_<d;++_)o.union(w[_].translate(b[_],v[_]));switch(O=Le(n.anchor,QB),C=Le(n.anchor,JB),Le(n.anchor,po)){case qt:O-=o.width();break;case Q0:O-=o.width()/2}switch(Le(n.anchor,mo)){case qt:C-=o.height();break;case Q0:C-=o.height()/2}for(O=Math.round(O),C=Math.round(C),o.clear(),_=0;_<d;++_)t[_].mark.bounds.clear();for(_=0;_<d;++_)$=t[_],$.x+=b[_]+=O,$.y+=v[_]+=C,o.union($.mark.bounds.union($.bounds.translate(b[_],v[_]))),i&&e.dirty($);return o}function pU(e,t,n){var i=dU(t),r=i.marks,o=n.bounds===xb?mU:yU,s=n.offset,a=n.columns||r.length,u=a<=0?1:Math.ceil(r.length/a),l=u*a,c,f,d,h,g,p,m;const y=GF(e,r,n);y.empty()&&y.set(0,0,0,0),i.rowheaders&&(p=Le(n.headerBand,mo,null),c=Af(e,i.rowheaders,r,a,u,-Le(s,"rowHeader"),Z_,0,o,"x1",0,a,1,p)),i.colheaders&&(p=Le(n.headerBand,po,null),f=Af(e,i.colheaders,r,a,a,-Le(s,"columnHeader"),Z_,1,o,"y1",0,1,a,p)),i.rowfooters&&(p=Le(n.footerBand,mo,null),d=Af(e,i.rowfooters,r,a,u,Le(s,"rowFooter"),Q_,0,o,"x2",a-1,a,1,p)),i.colfooters&&(p=Le(n.footerBand,po,null),h=Af(e,i.colfooters,r,a,a,Le(s,"columnFooter"),Q_,1,o,"y2",l-a,1,a,p)),i.rowtitle&&(g=Le(n.titleAnchor,mo),m=Le(s,"rowTitle"),m=g===qt?d+m:c-m,p=Le(n.titleBand,mo,.5),eS(e,i.rowtitle,m,0,y,p)),i.coltitle&&(g=Le(n.titleAnchor,po),m=Le(s,"columnTitle"),m=g===qt?h+m:f-m,p=Le(n.titleBand,po,.5),eS(e,i.coltitle,m,1,y,p))}function mU(e,t){return t==="x1"?e.x||0:t==="y1"?e.y||0:t==="x2"?(e.x||0)+(e.width||0):t==="y2"?(e.y||0)+(e.height||0):void 0}function yU(e,t){return e.bounds[t]}function Af(e,t,n,i,r,o,s,a,u,l,c,f,d,h){var g=n.length,p=0,m=0,y,x,b,v,w,S,_,E,k;if(!g)return p;for(y=c;y<g;y+=f)n[y]&&(p=s(p,u(n[y],l)));if(!t.length)return p;for(t.length>r&&(e.warn("Grid headers exceed limit: "+r),t=t.slice(0,r)),p+=o,x=0,v=t.length;x<v;++x)e.dirty(t[x]),t[x].mark.bounds.clear();for(y=c,x=0,v=t.length;x<v;++x,y+=f){for(S=t[x],w=S.mark.bounds,b=y;b>=0&&(_=n[b])==null;b-=d);a?(E=h==null?_.x:Math.round(_.bounds.x1+h*_.bounds.width()),k=p):(E=p,k=h==null?_.y:Math.round(_.bounds.y1+h*_.bounds.height())),w.union(S.bounds.translate(E-(S.x||0),k-(S.y||0))),S.x=E,S.y=k,e.dirty(S),m=s(m,w[l])}return m}function eS(e,t,n,i,r,o){if(t){e.dirty(t);var s=n,a=n;i?s=Math.round(r.x1+o*r.width()):a=Math.round(r.y1+o*r.height()),t.bounds.translate(s-(t.x||0),a-(t.y||0)),t.mark.bounds.clear().union(t.bounds),t.x=s,t.y=a,e.dirty(t)}}function xU(e,t){const n=e[t]||{};return(i,r)=>n[i]!=null?n[i]:e[i]!=null?e[i]:r}function bU(e,t){let n=-1/0;return e.forEach(i=>{i.offset!=null&&(n=Math.max(n,i.offset))}),n>-1/0?n:t}function vU(e,t,n,i,r,o,s){const a=xU(n,t),u=bU(e,a("offset",0)),l=a("anchor",hb),c=l===qt?1:l===Q0?.5:0,f={align:J0,bounds:a("bounds",xb),columns:a("direction")==="vertical"?1:e.length,padding:a("margin",8),center:a("center"),nodirty:!0};switch(t){case si:f.anchor={x:Math.floor(i.x1)-u,column:qt,y:c*(s||i.height()+2*i.y1),row:l};break;case ai:f.anchor={x:Math.ceil(i.x2)+u,y:c*(s||i.height()+2*i.y1),row:l};break;case nu:f.anchor={y:Math.floor(r.y1)-u,row:qt,x:c*(o||r.width()+2*r.x1),column:l};break;case Do:f.anchor={y:Math.ceil(r.y2)+u,x:c*(o||r.width()+2*r.x1),column:l};break;case YB:f.anchor={x:u,y:u};break;case XB:f.anchor={x:o-u,y:u,column:qt};break;case KB:f.anchor={x:u,y:s-u,row:qt};break;case ZB:f.anchor={x:o-u,y:s-u,column:qt,row:qt};break}return f}function wU(e,t){var n=t.items[0],i=n.datum,r=n.orient,o=n.bounds,s=n.x,a=n.y,u,l;return n._bounds?n._bounds.clear().union(o):n._bounds=o.clone(),o.clear(),SU(e,n,n.items[0].items[0]),o=_U(n,o),u=2*n.padding,l=2*n.padding,o.empty()||(u=Math.ceil(o.width()+u),l=Math.ceil(o.height()+l)),i.type===iU&&EU(n.items[0].items[0].items[0].items),r!==yb&&(n.x=s=0,n.y=a=0),n.width=u,n.height=l,Uo(o.set(s,a,s+u,a+l),n),n.mark.bounds.clear().union(o),n}function _U(e,t){return e.items.forEach(n=>t.union(n.bounds)),t.x1=e.padding,t.y1=e.padding,t}function SU(e,t,n){var i=t.padding,r=i-n.x,o=i-n.y;if(!t.datum.title)(r||o)&&Qu(e,n,r,o);else{var s=t.items[1].items[0],a=s.anchor,u=t.titlePadding||0,l=i-s.x,c=i-s.y;switch(s.orient){case si:r+=Math.ceil(s.bounds.width())+u;break;case ai:case Do:break;default:o+=s.bounds.height()+u}switch((r||o)&&Qu(e,n,r,o),s.orient){case si:c+=va(t,n,s,a,1,1);break;case ai:l+=va(t,n,s,qt,0,0)+u,c+=va(t,n,s,a,1,1);break;case Do:l+=va(t,n,s,a,0,0),c+=va(t,n,s,qt,-1,0,1)+u;break;default:l+=va(t,n,s,a,0,0)}(l||c)&&Qu(e,s,l,c),(l=Math.round(s.bounds.x1-i))<0&&(Qu(e,n,-l,0),Qu(e,s,-l,0))}}function va(e,t,n,i,r,o,s){const a=e.datum.type!=="symbol",u=n.datum.vgrad,l=a&&(o||!u)&&!s?t.items[0]:t,c=l.bounds[r?"y2":"x2"]-e.padding,f=u&&o?c:0,d=u&&o?0:c,h=r<=0?0:iF(n);return Math.round(i===hb?f:i===qt?d-h:.5*(c-h))}function Qu(e,t,n,i){t.x+=n,t.y+=i,t.bounds.translate(n,i),t.mark.bounds.translate(n,i),e.dirty(t)}function EU(e){const t=e.reduce((n,i)=>(n[i.column]=Math.max(i.bounds.x2-i.x,n[i.column]||0),n),{});e.forEach(n=>{n.width=t[n.column],n.height=n.bounds.y2-n.y})}function kU(e,t,n,i,r){var o=t.items[0],s=o.frame,a=o.orient,u=o.anchor,l=o.offset,c=o.padding,f=o.items[0].items[0],d=o.items[1]&&o.items[1].items[0],h=a===si||a===ai?i:n,g=0,p=0,m=0,y=0,x=0,b;if(s!==Rg?a===si?(g=r.y2,h=r.y1):a===ai?(g=r.y1,h=r.y2):(g=r.x1,h=r.x2):a===si&&(g=i,h=0),b=u===hb?g:u===qt?h:(g+h)/2,d&&d.text){switch(a){case nu:case Do:x=f.bounds.height()+c;break;case si:y=f.bounds.width()+c;break;case ai:y=-f.bounds.width()-c;break}Rt.clear().union(d.bounds),Rt.translate(y-(d.x||0),x-(d.y||0)),Da(d,"x",y)|Da(d,"y",x)&&(e.dirty(d),d.bounds.clear().union(Rt),d.mark.bounds.clear().union(Rt),e.dirty(d)),Rt.clear().union(d.bounds)}else Rt.clear();switch(Rt.union(f.bounds),a){case nu:p=b,m=r.y1-Rt.height()-l;break;case si:p=r.x1-Rt.width()-l,m=b;break;case ai:p=r.x2+Rt.width()+l,m=b;break;case Do:p=b,m=r.y2+l;break;default:p=o.x,m=o.y}return Da(o,"x",p)|Da(o,"y",m)&&(Rt.translate(p,m),e.dirty(o),o.bounds.clear().union(Rt),t.bounds.clear().union(Rt),e.dirty(o)),o.bounds}function VF(e){F.call(this,null,e)}q(VF,F,{transform(e,t){const n=t.dataflow;return e.mark.items.forEach(i=>{e.layout&&pU(n,i,e.layout),AU(n,i,e)}),$U(e.mark.group)?t.reflow():t}});function $U(e){return e&&e.mark.role!=="legend-entry"}function AU(e,t,n){var i=t.items,r=Math.max(0,t.width||0),o=Math.max(0,t.height||0),s=new it().set(0,0,r,o),a=s.clone(),u=s.clone(),l=[],c,f,d,h,g,p;for(g=0,p=i.length;g<p;++g)switch(f=i[g],f.role){case gb:h=lU(f)?a:u,h.union(fU(e,f,r,o));break;case pb:c=f;break;case mb:l.push(wU(e,f));break;case eU:case tU:case TF:case NF:case RF:case OF:case zF:case PF:a.union(f.bounds),u.union(f.bounds);break;default:s.union(f.bounds)}if(l.length){const m={};l.forEach(y=>{d=y.orient||ai,d!==yb&&(m[d]||(m[d]=[])).push(y)});for(const y in m){const x=m[y];GF(e,x,vU(x,y,n.legends,a,u,r,o))}l.forEach(y=>{const x=y.bounds;if(x.equals(y._bounds)||(y.bounds=y._bounds,e.dirty(y),y.bounds=x,e.dirty(y)),n.autosize&&(n.autosize.type===LF||n.autosize.type===IF||n.autosize.type===BF))switch(y.orient){case si:case ai:s.add(x.x1,0).add(x.x2,0);break;case nu:case Do:s.add(0,x.y1).add(0,x.y2)}else s.union(x)})}s.union(a).union(u),c&&s.union(kU(e,c,r,o,s)),t.clip&&s.set(0,0,t.width||0,t.height||0),CU(e,t,s,n)}function CU(e,t,n,i){const r=i.autosize||{},o=r.type;if(e._autosize<1||!o)return;let s=e._width,a=e._height,u=Math.max(0,t.width||0),l=Math.max(0,Math.ceil(-n.x1)),c=Math.max(0,t.height||0),f=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-c));if(r.contains===nU){const g=e.padding();s-=g.left+g.right,a-=g.top+g.bottom}o===yb?(l=0,f=0,u=s,c=a):o===LF?(u=Math.max(0,s-l-d),c=Math.max(0,a-f-h)):o===IF?(u=Math.max(0,s-l-d),a=c+f+h):o===BF?(s=u+l+d,c=Math.max(0,a-f-h)):o===rU&&(s=u+l+d,a=c+f+h),e._resizeView(s,a,u,c,[l,f],r.resize)}const MU=Object.freeze(Object.defineProperty({__proto__:null,bound:UF,identifier:bb,mark:jF,overlap:qF,render:HF,viewlayout:VF},Symbol.toStringTag,{value:"Module"}));function YF(e){F.call(this,null,e)}q(YF,F,{transform(e,t){if(this.value&&!e.modified())return t.StopPropagation;var n=t.dataflow.locale(),i=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=this.value,o=e.scale,s=e.count==null?e.values?e.values.length:10:e.count,a=Ux(o,s,e.minstep),u=e.format||RM(n,o,a,e.formatSpecifier,e.formatType,!!e.values),l=e.values?NM(o,e.values,a):jx(o,a);return r&&(i.rem=r),r=l.map((c,f)=>Ee({index:f/(l.length-1||1),value:c,label:u(c)})),e.extra&&r.length&&r.push(Ee({index:-1,extra:{value:r[0].value},label:""})),i.source=r,i.add=r,this.value=r,i}});function XF(e){F.call(this,null,e)}function FU(){return Ee({})}function DU(e){const t=vc().test(n=>n.exit);return t.lookup=n=>t.get(e(n)),t}q(XF,F,{transform(e,t){var n=t.dataflow,i=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=e.item||FU,o=e.key||ie,s=this.value;return z(i.encode)&&(i.encode=null),s&&(e.modified("key")||t.modified(o))&&R("DataJoin does not support modified key function or fields."),s||(t=t.addAll(),this.value=s=DU(o)),t.visit(t.ADD,a=>{const u=o(a);let l=s.get(u);l?l.exit?(s.empty--,i.add.push(l)):i.mod.push(l):(l=r(a),s.set(u,l),i.add.push(l)),l.datum=a,l.exit=!1}),t.visit(t.MOD,a=>{const u=o(a),l=s.get(u);l&&(l.datum=a,i.mod.push(l))}),t.visit(t.REM,a=>{const u=o(a),l=s.get(u);a===l.datum&&!l.exit&&(i.rem.push(l),l.exit=!0,++s.empty)}),t.changed(t.ADD_MOD)&&i.modifies("datum"),(t.clean()||e.clean&&s.empty>n.cleanThreshold)&&n.runAfter(s.clean),i}});function KF(e){F.call(this,null,e)}q(KF,F,{transform(e,t){var n=t.fork(t.ADD_REM),i=e.mod||!1,r=e.encoders,o=t.encode;if(z(o))if(n.changed()||o.every(f=>r[f]))o=o[0],n.encode=null;else return t.StopPropagation;
7var s=o==="enter",a=r.update||Jo,u=r.enter||Jo,l=r.exit||Jo,c=(o&&!s?r[o]:a)||Jo;if(t.changed(t.ADD)&&(t.visit(t.ADD,f=>{u(f,e),a(f,e)}),n.modifies(u.output),n.modifies(a.output),c!==Jo&&c!==a&&(t.visit(t.ADD,f=>{c(f,e)}),n.modifies(c.output))),t.changed(t.REM)&&l!==Jo&&(t.visit(t.REM,f=>{l(f,e)}),n.modifies(l.output)),s||c!==Jo){const f=t.MOD|(e.modified()?t.REFLOW:0);s?(t.visit(f,d=>{const h=u(d,e)||i;(c(d,e)||h)&&n.mod.push(d)}),n.mod.length&&n.modifies(u.output)):t.visit(f,d=>{(c(d,e)||i)&&n.mod.push(d)}),n.mod.length&&n.modifies(c.output)}return n.changed()?n:t.StopPropagation}});function ZF(e){F.call(this,[],e)}q(ZF,F,{transform(e,t){if(this.value!=null&&!e.modified())return t.StopPropagation;var n=t.dataflow.locale(),i=t.fork(t.NO_SOURCE|t.NO_FIELDS),r=this.value,o=e.type||Zf,s=e.scale,a=+e.limit,u=Ux(s,e.count==null?5:e.count,e.minstep),l=!!e.values||o===Zf,c=e.format||LM(n,s,u,o,e.formatSpecifier,e.formatType,l),f=e.values||PM(s,u),d,h,g,p,m;return r&&(i.rem=r),o===Zf?(a&&f.length>a?(t.dataflow.warn("Symbol legend count exceeds limit, filtering items."),r=f.slice(0,a-1),m=!0):r=f,ce(g=e.size)?(!e.values&&s(r[0])===0&&(r=r.slice(1)),p=r.reduce((y,x)=>Math.max(y,g(x,e)),0)):g=rn(p=g||8),r=r.map((y,x)=>Ee({index:x,label:c(y,x,r),value:y,offset:p,size:g(y,e)})),m&&(m=f[r.length],r.push(Ee({index:r.length,label:`…${f.length-r.length} entries`,value:m,offset:p,size:g(m,e)})))):o===q7?(d=s.domain(),h=CM(s,d[0],xe(d)),f.length<3&&!e.values&&d[0]!==xe(d)&&(f=[d[0],xe(d)]),r=f.map((y,x)=>Ee({index:x,label:c(y,x,f),value:y,perc:h(y)}))):(g=f.length-1,h=eL(s),r=f.map((y,x)=>Ee({index:x,label:c(y,x,f),value:y,perc:x?h(y):0,perc2:x===g?1:h(f[x+1])}))),i.source=r,i.add=r,this.value=r,i}});const TU=e=>e.source.x,NU=e=>e.source.y,RU=e=>e.target.x,OU=e=>e.target.y;function vb(e){F.call(this,{},e)}vb.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"}]};q(vb,F,{transform(e,t){var n=e.sourceX||TU,i=e.sourceY||NU,r=e.targetX||RU,o=e.targetY||OU,s=e.as||"path",a=e.orient||"vertical",u=e.shape||"line",l=tS.get(u+"-"+a)||tS.get(u);return l||R("LinkPath unsupported type: "+e.shape+(e.orient?"-"+e.orient:"")),t.visit(t.SOURCE,c=>{c[s]=l(n(c),i(c),r(c),o(c))}),t.reflow(e.modified()).modifies(s)}});const QF=(e,t,n,i)=>"M"+e+","+t+"L"+n+","+i,zU=(e,t,n,i)=>QF(t*Math.cos(e),t*Math.sin(e),i*Math.cos(n),i*Math.sin(n)),JF=(e,t,n,i)=>{var r=n-e,o=i-t,s=Math.hypot(r,o)/2,a=180*Math.atan2(o,r)/Math.PI;return"M"+e+","+t+"A"+s+","+s+" "+a+" 0 1 "+n+","+i},PU=(e,t,n,i)=>JF(t*Math.cos(e),t*Math.sin(e),i*Math.cos(n),i*Math.sin(n)),e3=(e,t,n,i)=>{const r=n-e,o=i-t,s=.2*(r+o),a=.2*(o-r);return"M"+e+","+t+"C"+(e+s)+","+(t+a)+" "+(n+a)+","+(i-s)+" "+n+","+i},LU=(e,t,n,i)=>e3(t*Math.cos(e),t*Math.sin(e),i*Math.cos(n),i*Math.sin(n)),IU=(e,t,n,i)=>"M"+e+","+t+"V"+i+"H"+n,BU=(e,t,n,i)=>"M"+e+","+t+"H"+n+"V"+i,UU=(e,t,n,i)=>{const r=Math.cos(e),o=Math.sin(e),s=Math.cos(n),a=Math.sin(n),u=Math.abs(n-e)>Math.PI?n<=e:n>e;return"M"+t*r+","+t*o+"A"+t+","+t+" 0 0,"+(u?1:0)+" "+t*s+","+t*a+"L"+i*s+","+i*a},jU=(e,t,n,i)=>{const r=(e+n)/2;return"M"+e+","+t+"C"+r+","+t+" "+r+","+i+" "+n+","+i},qU=(e,t,n,i)=>{const r=(t+i)/2;return"M"+e+","+t+"C"+e+","+r+" "+n+","+r+" "+n+","+i},WU=(e,t,n,i)=>{const r=Math.cos(e),o=Math.sin(e),s=Math.cos(n),a=Math.sin(n),u=(t+i)/2;return"M"+t*r+","+t*o+"C"+u*r+","+u*o+" "+u*s+","+u*a+" "+i*s+","+i*a},tS=vc({line:QF,"line-radial":zU,arc:JF,"arc-radial":PU,curve:e3,"curve-radial":LU,"orthogonal-horizontal":IU,"orthogonal-vertical":BU,"orthogonal-radial":UU,"diagonal-horizontal":jU,"diagonal-vertical":qU,"diagonal-radial":WU});function wb(e){F.call(this,null,e)}wb.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"]}]};q(wb,F,{transform(e,t){var n=e.as||["startAngle","endAngle"],i=n[0],r=n[1],o=e.field||bc,s=e.startAngle||0,a=e.endAngle!=null?e.endAngle:2*Math.PI,u=t.source,l=u.map(o),c=l.length,f=s,d=(a-s)/L$(l),h=An(c),g,p,m;
7for(e.sort&&h.sort((y,x)=>l[y]-l[x]),g=0;g<c;++g)m=l[h[g]],p=u[h[g]],p[i]=f,p[r]=f+=m*d;return this.value=l,t.reflow(e.modified()).modifies(n)}});const HU=5;function GU(e){const t=e.type;return!e.bins&&(t===Za||t===Mc||t===Fc)}function t3(e){return Ix(e)&&e!==ji}const VU=Gi(["set","modified","clear","type","scheme","schemeExtent","schemeCount","domain","domainMin","domainMid","domainMax","domainRaw","domainImplicit","nice","zero","bins","range","rangeStep","round","reverse","interpolate","interpolateGamma"]);function n3(e){F.call(this,null,e),this.modified(!0)}q(n3,F,{transform(e,t){var n=t.dataflow,i=this.value,r=YU(e);(!i||r!==i.type)&&(this.value=i=we(r)());for(r in e)if(!VU[r]){if(r==="padding"&&t3(i.type))continue;ce(i[r])?i[r](e[r]):n.warn("Unsupported scale property: "+r)}return ej(i,e,JU(i,e,KU(i,e,n))),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function YU(e){var t=e.type,n="",i;return t===ji?ji+"-"+Za:(XU(e)&&(i=e.rawDomain?e.rawDomain.length:e.domain?e.domain.length+ +(e.domainMid!=null):0,n=i===2?ji+"-":i===3?Cu+"-":""),(n+t||Za).toLowerCase())}function XU(e){const t=e.type;return Ix(t)&&t!==Ds&&t!==Ts&&(e.scheme||e.range&&e.range.length&&e.range.every(Y))}function KU(e,t,n){const i=ZU(e,t.domainRaw,n);if(i>-1)return i;var r=t.domain,o=e.type,s=t.zero||t.zero===void 0&&GU(e),a,u;if(!r)return 0;if((s||t.domainMin!=null||t.domainMax!=null||t.domainMid!=null)&&(a=(r=r.slice()).length-1||1,s&&(r[0]>0&&(r[0]=0),r[a]<0&&(r[a]=0)),t.domainMin!=null&&(r[0]=t.domainMin),t.domainMax!=null&&(r[a]=t.domainMax),t.domainMid!=null)){u=t.domainMid;const l=u>r[a]?a+1:u<r[0]?0:a;l!==a&&n.warn("Scale domainMid exceeds domain min or max.",u),r.splice(l,0,u)}return t3(o)&&t.padding&&r[0]!==xe(r)&&(r=QU(o,r,t.range,t.padding,t.exponent,t.constant)),e.domain(i3(o,r,n)),o===Ox&&e.unknown(t.domainImplicit?T0:void 0),t.nice&&e.nice&&e.nice(t.nice!==!0&&Ux(e,t.nice)||null),r.length}function ZU(e,t,n){return t?(e.domain(i3(e.type,t,n)),t.length):-1}function QU(e,t,n,i,r,o){var s=Math.abs(xe(n)-n[0]),a=s/(s-2*i),u=e===qr?y$(t,null,a):e===Fc?g0(t,null,a,.5):e===Mc?g0(t,null,a,r||1):e===wg?x$(t,null,a,o||1):m$(t,null,a);return t=t.slice(),t[0]=u[0],t[t.length-1]=u[1],t}function i3(e,t,n){if(kM(e)){var i=Math.abs(t.reduce((r,o)=>r+(o<0?-1:o>0?1:0),0));i!==t.length&&n.warn("Log scale domain includes zero: "+j(t))}return t}function JU(e,t,n){let i=t.bins;if(i&&!z(i)){const r=e.domain(),o=r[0],s=xe(r),a=i.step;let u=i.start==null?o:i.start,l=i.stop==null?s:i.stop;a||R("Scale bins parameter missing step property."),u<o&&(u=a*Math.ceil(o/a)),l>s&&(l=a*Math.floor(s/a)),i=An(u,l+a/2,a)}return i?e.bins=i:e.bins&&delete e.bins,e.type===zx&&(i?!t.domain&&!t.domainRaw&&(e.domain(i),n=i.length):e.bins=e.domain()),n}function ej(e,t,n){var i=e.type,r=t.round||!1,o=t.range;if(t.rangeStep!=null)o=tj(i,t,n);else if(t.scheme&&(o=nj(i,t,n),ce(o))){if(e.interpolator)return e.interpolator(o);R(`Scale type ${i} does not support interpolating color schemes.`)}if(o&&$M(i))return e.interpolator(Bx(e1(o,t.reverse),t.interpolate,t.interpolateGamma));o&&t.interpolate&&e.interpolate?e.interpolate(MM(t.interpolate,t.interpolateGamma)):ce(e.round)?e.round(r):ce(e.rangeRound)&&e.interpolate(r?Ac:Io),o&&e.range(e1(o,t.reverse))}function tj(e,t,n){e!==bM&&e!==I0&&R("Only band and point scales support rangeStep.");var i=(t.paddingOuter!=null?t.paddingOuter:t.padding)||0,r=e===I0?1:(t.paddingInner!=null?t.paddingInner:t.padding)||0;return[0,t.rangeStep*Rx(n,r,i)]}function nj(e,t,n){var i=t.schemeExtent,r,o;return z(t.scheme)?o=Bx(t.scheme,t.interpolate,t.interpolateGamma):(r=t.scheme.toLowerCase(),o=TM(r),o||R(`Unrecognized scheme name: ${t.scheme}`)),n=e===Sg?n+1:e===zx?n-1:e===Qa||e===_g?+t.schemeCount||HU:n,$M(e)?nS(o,i,t.reverse):ce(o)?L7(nS(o,i),n):e===Ox?o:o.slice(0,n)}function nS(e,t,n){return ce(e)&&(t||n)?P7(e,e1(t||[0,1],n)):e}function e1(e,t){return t?e.slice().reverse():e}function r3(e){F.call(this,null,e)}q(r3,F,{transform(e,t){const n=e.modified("sort")||t.changed(t.ADD)||t.modified(e.sort.fields)||t.modified("datum");return n&&t.source.sort(ea(e.sort)),this.modified(n),t}});const iS="zero",o3="center",s3="normalize",a3=["y0","y1"];function _b(e){F.call(this,null,e)}_b.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:iS,values:[iS,o3,s3]},{name:"as",type:"string",array:!0,length:2,default:a3}]};q(_b,F,{transform(e,t){var n=e.as||a3,i=n[0],r=n[1],o=ea(e.sort),s=e.field||bc,a=e.offset===o3?ij:e.offset===s3?rj:oj,u,l,c,f;for(u=sj(t.source,e.groupby,o,s),l=0,c=u.length,f=u.max;l<c;++l)a(u[l],f,s,i,r);return t.reflow(e.modified()).modifies(n)}});function ij(e,t,n,i,r){for(var o=(t-e.sum)/2,s=e.length,a=0,u;a<s;++a)u=e[a],u[i]=o,u[r]=o+=Math.abs(n(u))}function rj(e,t,n,i,r){for(var o=1/e.sum,s=0,a=e.length,u=0,l=0,c;u<a;++u)c=e[u],c[i]=s,c[r]=s=o*(l+=Math.abs(n(c)))}function oj(e,t,n,i,r){for(var o=0,s=0,a=e.length,u=0,l,c;u<a;++u)c=e[u],l=+n(c),l<0?(c[i]=s,c[r]=s+=l):(c[i]=o,c[r]=o+=l)}function sj(e,t,n,i){var r=[],o=p=>p(c),s,a,u,l,c,f,d,h,g;if(t==null)r.push(e.slice());else for(s={},a=0,u=e.length;a<u;++a)c=e[a],f=t.map(o),d=s[f],d||(s[f]=d=[],r.push(d)),d.push(c);for(f=0,g=0,l=r.length;f<l;++f){for(d=r[f],a=0,h=0,u=d.length;a<u;++a)h+=Math.abs(i(d[a]));d.sum=h,h>g&&(g=h),n&&d.sort(n)}return r.max=g,r}const aj=Object.freeze(Object.defineProperty({__proto__:null,axisticks:YF,datajoin:XF,encode:KF,legendentries:ZF,linkpath:vb,pie:wb,
vendor: 16,380 bytes, line 7
7scale:n3,sortitems:r3,stack:_b},Symbol.toStringTag,{value:"Module"}));var re=1e-6,Zd=1e-12,he=Math.PI,He=he/2,Qd=he/4,on=he*2,Ye=180/he,fe=he/180,pe=Math.abs,Fu=Math.atan,Yn=Math.atan2,oe=Math.cos,Cf=Math.ceil,u3=Math.exp,t1=Math.hypot,Jd=Math.log,wm=Math.pow,ne=Math.sin,Pn=Math.sign||function(e){return e>0?1:e<0?-1:0},sn=Math.sqrt,Sb=Math.tan;function l3(e){return e>1?0:e<-1?he:Math.acos(e)}function mn(e){return e>1?He:e<-1?-He:Math.asin(e)}function $t(){}function eh(e,t){e&&oS.hasOwnProperty(e.type)&&oS[e.type](e,t)}var rS={Feature:function(e,t){eh(e.geometry,t)},FeatureCollection:function(e,t){for(var n=e.features,i=-1,r=n.length;++i<r;)eh(n[i].geometry,t)}},oS={Sphere:function(e,t){t.sphere()},Point:function(e,t){e=e.coordinates,t.point(e[0],e[1],e[2])},MultiPoint:function(e,t){for(var n=e.coordinates,i=-1,r=n.length;++i<r;)e=n[i],t.point(e[0],e[1],e[2])},LineString:function(e,t){n1(e.coordinates,t,0)},MultiLineString:function(e,t){for(var n=e.coordinates,i=-1,r=n.length;++i<r;)n1(n[i],t,0)},Polygon:function(e,t){sS(e.coordinates,t)},MultiPolygon:function(e,t){for(var n=e.coordinates,i=-1,r=n.length;++i<r;)sS(n[i],t)},GeometryCollection:function(e,t){for(var n=e.geometries,i=-1,r=n.length;++i<r;)eh(n[i],t)}};function n1(e,t,n){var i=-1,r=e.length-n,o;for(t.lineStart();++i<r;)o=e[i],t.point(o[0],o[1],o[2]);t.lineEnd()}function sS(e,t){var n=-1,i=e.length;for(t.polygonStart();++n<i;)n1(e[n],t,1);t.polygonEnd()}function _r(e,t){e&&rS.hasOwnProperty(e.type)?rS[e.type](e,t):eh(e,t)}var th=new Jt,nh=new Jt,c3,f3,i1,r1,o1,Zi={point:$t,lineStart:$t,lineEnd:$t,polygonStart:function(){th=new Jt,Zi.lineStart=uj,Zi.lineEnd=lj},polygonEnd:function(){var e=+th;nh.add(e<0?on+e:e),this.lineStart=this.lineEnd=this.point=$t},sphere:function(){nh.add(on)}};function uj(){Zi.point=cj}function lj(){d3(c3,f3)}function cj(e,t){Zi.point=d3,c3=e,f3=t,e*=fe,t*=fe,i1=e,r1=oe(t=t/2+Qd),o1=ne(t)}function d3(e,t){e*=fe,t*=fe,t=t/2+Qd;var n=e-i1,i=n>=0?1:-1,r=i*n,o=oe(t),s=ne(t),a=o1*s,u=r1*o+a*oe(r),l=a*i*ne(r);th.add(Yn(l,u)),i1=e,r1=o,o1=s}function fj(e){return nh=new Jt,_r(e,Zi),nh*2}function ih(e){return[Yn(e[1],e[0]),mn(e[2])]}function Os(e){var t=e[0],n=e[1],i=oe(n);return[i*oe(t),i*ne(t),ne(n)]}function Mf(e,t){return e[0]*t[0]+e[1]*t[1]+e[2]*t[2]}function iu(e,t){return[e[1]*t[2]-e[2]*t[1],e[2]*t[0]-e[0]*t[2],e[0]*t[1]-e[1]*t[0]]}function _m(e,t){e[0]+=t[0],e[1]+=t[1],e[2]+=t[2]}function Ff(e,t){return[e[0]*t,e[1]*t,e[2]*t]}function rh(e){var t=sn(e[0]*e[0]+e[1]*e[1]+e[2]*e[2]);e[0]/=t,e[1]/=t,e[2]/=t}var Be,dn,We,kn,os,h3,g3,Pa,Rl,lo,Wr,vr={point:s1,lineStart:aS,lineEnd:uS,polygonStart:function(){vr.point=m3,vr.lineStart=dj,vr.lineEnd=hj,Rl=new Jt,Zi.polygonStart()},polygonEnd:function(){Zi.polygonEnd(),vr.point=s1,vr.lineStart=aS,vr.lineEnd=uS,th<0?(Be=-(We=180),dn=-(kn=90)):Rl>re?kn=90:Rl<-re&&(dn=-90),Wr[0]=Be,Wr[1]=We},sphere:function(){Be=-(We=180),dn=-(kn=90)}};function s1(e,t){lo.push(Wr=[Be=e,We=e]),t<dn&&(dn=t),t>kn&&(kn=t)}function p3(e,t){var n=Os([e*fe,t*fe]);if(Pa){var i=iu(Pa,n),r=[i[1],-i[0],0],o=iu(r,i);rh(o),o=ih(o);var s=e-os,a=s>0?1:-1,u=o[0]*Ye*a,l,c=pe(s)>180;c^(a*os<u&&u<a*e)?(l=o[1]*Ye,l>kn&&(kn=l)):(u=(u+360)%360-180,c^(a*os<u&&u<a*e)?(l=-o[1]*Ye,l<dn&&(dn=l)):(t<dn&&(dn=t),t>kn&&(kn=t))),c?e<os?En(Be,e)>En(Be,We)&&(We=e):En(e,We)>En(Be,We)&&(Be=e):We>=Be?(e<Be&&(Be=e),e>We&&(We=e)):e>os?En(Be,e)>En(Be,We)&&(We=e):En(e,We)>En(Be,We)&&(Be=e)}else lo.push(Wr=[Be=e,We=e]);t<dn&&(dn=t),t>kn&&(kn=t),Pa=n,os=e}function aS(){vr.point=p3}function uS(){Wr[0]=Be,Wr[1]=We,vr.point=s1,Pa=null}function m3(e,t){if(Pa){var n=e-os;Rl.add(pe(n)>180?n+(n>0?360:-360):n)}else h3=e,g3=t;Zi.point(e,t),p3(e,t)}function dj(){Zi.lineStart()}function hj(){m3(h3,g3),Zi.lineEnd(),pe(Rl)>re&&(Be=-(We=180)),Wr[0]=Be,Wr[1]=We,Pa=null}function En(e,t){return(t-=e)<0?t+360:t}function gj(e,t){return e[0]-t[0]}function lS(e,t){return e[0]<=e[1]?e[0]<=t&&t<=e[1]:t<e[0]||e[1]<t}function pj(e){var t,n,i,r,o,s,a;if(kn=We=-(Be=dn=1/0),lo=[],_r(e,vr),n=lo.length){for(lo.sort(gj),t=1,i=lo[0],o=[i];t<n;++t)r=lo[t],lS(i,r[0])||lS(i,r[1])?(En(i[0],r[1])>En(i[0],i[1])&&(i[1]=r[1]),En(r[0],i[1])>En(i[0],i[1])&&(i[0]=r[0])):o.push(i=r);for(s=-1/0,n=o.length-1,t=0,i=o[n];t<=n;i=r,++t)r=o[t],(a=En(i[1],r[0]))>s&&(s=a,Be=r[0],We=i[1])}return lo=Wr=null,Be===1/0||dn===1/0?[[NaN,NaN],[NaN,NaN]]:[[Be,dn],[We,kn]]}var yl,oh,sh,ah,uh,lh,ch,fh,a1,u1,l1,y3,x3,Wt,Ht,Gt,ui={sphere:$t,point:Eb,lineStart:cS,lineEnd:fS,polygonStart:function(){ui.lineStart=xj,ui.lineEnd=bj},polygonEnd:function(){ui.lineStart=cS,ui.lineEnd=fS}};function Eb(e,t){e*=fe,t*=fe;var n=oe(t);Lc(n*oe(e),n*ne(e),ne(t))}function Lc(e,t,n){++yl,sh+=(e-sh)/yl,ah+=(t-ah)/yl,uh+=(n-uh)/yl}function cS(){ui.point=mj}function mj(e,t){e*=fe,t*=fe;var n=oe(t);Wt=n*oe(e),Ht=n*ne(e),Gt=ne(t),ui.point=yj,Lc(Wt,Ht,Gt)}function yj(e,t){e*=fe,t*=fe;var n=oe(t),i=n*oe(e),r=n*ne(e),o=ne(t),s=Yn(sn((s=Ht*o-Gt*r)*s+(s=Gt*i-Wt*o)*s+(s=Wt*r-Ht*i)*s),Wt*i+Ht*r+Gt*o);oh+=s,lh+=s*(Wt+(Wt=i)),ch+=s*(Ht+(Ht=r)),fh+=s*(Gt+(Gt=o)),Lc(Wt,Ht,Gt)}function fS(){ui.point=Eb}function xj(){ui.point=vj}function bj(){b3(y3,x3),ui.point=Eb}function vj(e,t){y3=e,x3=t,e*=fe,t*=fe,ui.point=b3;var n=oe(t);Wt=n*oe(e),Ht=n*ne(e),Gt=ne(t),Lc(Wt,Ht,Gt)}function b3(e,t){e*=fe,t*=fe;var n=oe(t),i=n*oe(e),r=n*ne(e),o=ne(t),s=Ht*o-Gt*r,a=Gt*i-Wt*o,u=Wt*r-Ht*i,l=t1(s,a,u),c=mn(l),f=l&&-c/l;a1.add(f*s),u1.add(f*a),l1.add(f*u),oh+=c,lh+=c*(Wt+(Wt=i)),ch+=c*(Ht+(Ht=r)),fh+=c*(Gt+(Gt=o)),Lc(Wt,Ht,Gt)}function wj(e){yl=oh=sh=ah=uh=lh=ch=fh=0,a1=new Jt,u1=new Jt,l1=new Jt,_r(e,ui);var t=+a1,n=+u1,i=+l1,r=t1(t,n,i);return r<Zd&&(t=lh,n=ch,i=fh,oh<re&&(t=sh,n=ah,i=uh),r=t1(t,n,i),r<Zd)?[NaN,NaN]:[Yn(n,t)*Ye,mn(i/r)*Ye]}function c1(e,t){function n(i,r){return i=e(i,r),t(i[0],i[1])}return e.invert&&t.invert&&(n.invert=function(i,r){return i=t.invert(i,r),i&&e.invert(i[0],i[1])}),n}function f1(e,t){return pe(e)>he&&(e-=Math.round(e/on)*on),[e,t]}f1.invert=f1;function v3(e,t,n){return(e%=on)?t||n?c1(hS(e),gS(t,n)):hS(e):t||n?gS(t,n):f1}function dS(e){return function(t,n){return t+=e,pe(t)>he&&(t-=Math.round(t/on)*on),[t,n]}}function hS(e){var t=dS(e);return t.invert=dS(-e),t}function gS(e,t){var n=oe(e),i=ne(e),r=oe(t),o=ne(t);function s(a,u){var l=oe(u),c=oe(a)*l,f=ne(a)*l,d=ne(u),h=d*n+c*i;return[Yn(f*r-h*o,c*n-d*i),mn(h*r+f*o)]}return s.invert=function(a,u){var l=oe(u),c=oe(a)*l,f=ne(a)*l,d=ne(u),h=d*r-f*o;return[Yn(f*r+d*o,c*n+h*i),mn(h*n-c*i)]},s}function _j(e){e=v3(e[0]*fe,e[1]*fe,e.length>2?e[2]*fe:0);function t(n){return n=e(n[0]*fe,n[1]*fe),n[0]*=Ye,n[1]*=Ye,n}return t.invert=function(n){return n=e.invert(n[0]*fe,n[1]*fe),n[0]*=Ye,n[1]*=Ye,n},t}function Sj(e,t,n,i,r,o){if(n){var s=oe(t),a=ne(t),u=i*n;r==null?(r=t+i*on,o=t-u/2):(r=pS(s,r),o=pS(s,o),(i>0?r<o:r>o)&&(r+=i*on));for(var l,c=r;i>0?c>o:c<o;c-=u)l=ih([s,-a*oe(c),-a*ne(c)]),e.point(l[0],l[1])}}function pS(e,t){t=Os(t),t[0]-=e,rh(t);var n=l3(-t[1]);return((-t[2]<0?-n:n)+on-re)%on}function w3(){var e=[],t;return{point:function(n,i,r){t.push([n,i,r])},lineStart:function(){e.push(t=[])},lineEnd:$t,rejoin:function(){e.length>1&&e.push(e.pop().concat(e.shift()))},result:function(){var n=e;return e=[],t=null,n}}}function sd(e,t){return pe(e[0]-t[0])<re&&pe(e[1]-t[1])<re}function Df(e,t,n,i){this.x=e,this.z=t,this.o=n,this.e=i,this.v=!1,this.n=this.p=null}function _3(e,t,n,i,r){var o=[],s=[],a,u;if(e.forEach(function(g){if(!((p=g.length-1)<=0)){var p,m=g[0],y=g[p],x;if(sd(m,y)){if(!m[2]&&!y[2]){for(r.lineStart(),a=0;a<p;++a)r.point((m=g[a])[0],m[1]);r.lineEnd();return}y[0]+=2*re}o.push(x=new Df(m,g,null,!0)),s.push(x.o=new Df(m,null,x,!1)),o.push(x=new Df(y,g,null,!1)),s.push(x.o=new Df(y,null,x,!0))}}),!!o.length){for(s.sort(t),mS(o),mS(s),a=0,u=s.length;a<u;++a)s[a].e=n=!n;for(var l=o[0],c,f;;){for(var d=l,h=!0;d.v;)if((d=d.n)===l)return;c=d.z,r.lineStart();do{if(d.v=d.o.v=!0,d.e){if(h)for(a=0,u=c.length;a<u;++a)r.point((f=c[a])[0],f[1]);else i(d.x,d.n.x,1,r);d=d.n}else{if(h)for(c=d.p.z,a=c.length-1;a>=0;--a)r.point((f=c[a])[0],f[1]);else i(d.x,d.p.x,-1,r);d=d.p}d=d.o,c=d.z,h=!h}while(!d.v);r.lineEnd()}}}function mS(e){if(t=e.length){for(var t,n=0,i=e[0],r;++n<t;)i.n=r=e[n],r.p=i,i=r;i.n=r=e[0],r.p=i}}function Sm(e){return pe(e[0])<=he?e[0]:Pn(e[0])*((pe(e[0])+he)%on-he)}function Ej(e,t){var n=Sm(t),i=t[1],r=ne(i),o=[ne(n),-oe(n),0],s=0,a=0,u=new Jt;r===1?i=He+re:r===-1&&(i=-He-re);for(var l=0,c=e.length;l<c;++l)if(d=(f=e[l]).length)for(var f,d,h=f[d-1],g=Sm(h),p=h[1]/2+Qd,m=ne(p),y=oe(p),x=0;x<d;++x,g=v,m=S,y=_,h=b){var b=f[x],v=Sm(b),w=b[1]/2+Qd,S=ne(w),_=oe(w),E=v-g,k=E>=0?1:-1,A=k*E,$=A>he,D=m*S;if(u.add(Yn(D*k*ne(A),y*_+D*oe(A))),s+=$?E+k*on:E,$^g>=n^v>=n){var M=iu(Os(h),Os(b));rh(M);var O=iu(o,M);rh(O);var C=($^E>=0?-1:1)*mn(O[2]);(i>C||i===C&&(M[0]||M[1]))&&(a+=$^E>=0?1:-1)}}return(s<-re||s<re&&u<-Zd)^a&1}function S3(e,t,n,i){return function(r){var o=t(r),s=w3(),a=t(s),u=!1,l,c,f,d={point:h,lineStart:p,lineEnd:m,polygonStart:function(){d.point=y,d.lineStart=x,d.lineEnd=b,c=[],l=[]},polygonEnd:function(){d.point=h,d.lineStart=p,d.lineEnd=m,c=P$(c);var v=Ej(l,i);c.length?(u||(r.polygonStart(),u=!0),_3(c,$j,v,n,r)):v&&(u||(r.polygonStart(),u=!0),r.lineStart(),n(null,null,1,r),r.lineEnd()),u&&(r.polygonEnd(),u=!1),c=l=null},sphere:function(){r.polygonStart(),r.lineStart(),n(null,null,1,r),r.lineEnd(),r.polygonEnd()}};function h(v,w){e(v,w)&&r.point(v,w)}function g(v,w){o.point(v,w)}function p(){d.point=g,o.lineStart()}function m(){d.point=h,o.lineEnd()}function y(v,w){f.push([v,w]),a.point(v,w)}function x(){a.lineStart(),f=[]}function b(){y(f[0][0],f[0][1]),a.lineEnd();var v=a.clean(),w=s.result(),S,_=w.length,E,k,A;if(f.pop(),l.push(f),f=null,!!_){if(v&1){if(k=w[0],(E=k.length-1)>0){for(u||(r.polygonStart(),u=!0),r.lineStart(),S=0;S<E;++S)r.point((A=k[S])[0],A[1]);r.lineEnd()}return}_>1&&v&2&&w.push(w.pop().concat(w.shift())),c.push(w.filter(kj))}}return d}}function kj(e){return e.length>1}function $j(e,t){return((e=e.x)[0]<0?e[1]-He-re:He-e[1])-((t=t.x)[0]<0?t[1]-He-re:He-t[1])}const yS=S3(function(){return!0},Aj,Mj,[-he,-He]);function Aj(e){var t=NaN,n=NaN,i=NaN,r;return{lineStart:function(){e.lineStart(),r=1},point:function(o,s){var a=o>0?he:-he,u=pe(o-t);pe(u-he)<re?(e.point(t,n=(n+s)/2>0?He:-He),e.point(i,n),e.lineEnd(),e.lineStart(),e.point(a,n),e.point(o,n),r=0):i!==a&&u>=he&&(pe(t-i)<re&&(t-=i*re),pe(o-a)<re&&(o-=a*re),n=Cj(t,n,o,s),e.point(i,n),e.lineEnd(),e.lineStart(),e.point(a,n),r=0),e.point(t=o,n=s),i=a},lineEnd:function(){e.lineEnd(),t=n=NaN},clean:function(){return 2-r}}}function Cj(e,t,n,i){var r,o,s=ne(e-n);return pe(s)>re?Fu((ne(t)*(o=oe(i))*ne(n)-ne(i)*(r=oe(t))*ne(e))/(r*o*s)):(t+i)/2}function Mj(e,t,n,i){var r;if(e==null)r=n*He,i.point(-he,r),i.point(0,r),i.point(he,r),i.point(he,0),i.point(he,-r),i.point(0,-r),i.point(-he,-r),i.point(-he,0),i.point(-he,r);else if(pe(e[0]-t[0])>re){var o=e[0]<t[0]?he:-he;r=n*o/2,i.point(-o,r),i.point(0,r),i.point(o,r)}else i.point(t[0],t[1])}function Fj(e){var t=oe(e),n=2*fe,i=t>0,r=pe(t)>re;function o(c,f,d,h){Sj(h,e,n,d,c,f)}function s(c,f){return oe(c)*oe(f)>t}function a(c){var f,d,h,g,p;return{lineStart:function(){g=h=!1,p=1},point:function(m,y){var x=[m,y],b,v=s(m,y),w=i?v?0:l(m,y):v?l(m+(m<0?he:-he),y):0;if(!f&&(g=h=v)&&c.lineStart(),v!==h&&(b=u(f,x),(!b||sd(f,b)||sd(x,b))&&(x[2]=1)),v!==h)p=0,v?(c.lineStart(),b=u(x,f),c.point(b[0],b[1])):(b=u(f,x),c.point(b[0],b[1],2),c.lineEnd()),f=b;else if(r&&f&&i^v){var S;!(w&d)&&(S=u(x,f,!0))&&(p=0,i?(c.lineStart(),c.point(S[0][0],S[0][1]),c.point(S[1][0],S[1][1]),c.lineEnd()):(c.point(S[1][0],S[1][1]),c.lineEnd(),c.lineStart(),c.point(S[0][0],S[0][1],3)))}v&&(!f||!sd(f,x))&&c.point(x[0],x[1]),f=x,h=v,d=w},lineEnd:function(){h&&c.lineEnd(),f=null},clean:function(){return p|(g&&h)<<1}}}function u(c,f,d){var h=Os(c),g=Os(f),p=[1,0,0],m=iu(h,g),y=Mf(m,m),x=m[0],b=y-x*x;if(!b)return!d&&c;var v=t*y/b,w=-t*x/b,S=iu(p,m),_=Ff(p,v),E=Ff(m,w);_m(_,E);var k=S,A=Mf(_,k),$=Mf(k,k),D=A*A-$*(Mf(_,_)-1);if(!(D<0)){var M=sn(D),O=Ff(k,(-A-M)/$);if(_m(O,_),O=ih(O),!d)return O;var C=c[0],N=f[0],G=c[1],Q=f[1],Z;N<C&&(Z=C,C=N,N=Z);var _e=N-C,Ge=pe(_e-he)<re,vt=Ge||_e<re;if(!Ge&&Q<G&&(Z=G,G=Q,Q=Z),vt?Ge?G+Q>0^O[1]<(pe(O[0]-C)<re?G:Q):G<=O[1]&&O[1]<=Q:_e>he^(C<=O[0]&&O[0]<=N)){var st=Ff(k,(-A+M)/$);return _m(st,_),[O,ih(st)]}}}function l(c,f){var d=i?e:he-e,h=0;return c<-d?h|=1:c>d&&(h|=2),f<-d?h|=4:f>d&&(h|=8),h}return S3(s,a,o,i?[0,-e]:[-he,e-he])}function Dj(e,t,n,i,r,o){var s=e[0],a=e[1],u=t[0],l=t[1],c=0,f=1,d=u-s,h=l-a,g;if(g=n-s,!(!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,!(!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-a,!(!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)}if(g=o-a,!(!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)}return c>0&&(e[0]=s+c*d,e[1]=a+c*h),f<1&&(t[0]=s+f*d,t[1]=a+f*h),!0}}}}}var xl=1e9,Tf=-xl;function E3(e,t,n,i){function r(l,c){return e<=l&&l<=n&&t<=c&&c<=i}function o(l,c,f,d){var h=0,g=0;if(l==null||(h=s(l,f))!==(g=s(c,f))||u(l,c)<0^f>0)do d.point(h===0||h===3?e:n,h>1?i:t);while((h=(h+f+4)%4)!==g);else d.point(c[0],c[1])}function s(l,c){return pe(l[0]-e)<re?c>0?0:3:pe(l[0]-n)<re?c>0?2:1:pe(l[1]-t)<re?c>0?1:0:c>0?3:2}function a(l,c){return u(l.x,c.x)}function u(l,c){var f=s(l,1),d=s(c,1);return f!==d?f-d:f===0?c[1]-l[1]:f===1?l[0]-c[0]:f===2?l[1]-c[1]:c[0]-l[0]}return function(l){var c=l,f=w3(),d,h,g,p,m,y,x,b,v,w,S,_={point:E,lineStart:D,lineEnd:M,polygonStart:A,polygonEnd:$};function E(C,N){r(C,N)&&c.point(C,N)}function k(){for(var C=0,N=0,G=h.length;N<G;++N)for(var Q=h[N],Z=1,_e=Q.length,Ge=Q[0],vt,st,wn=Ge[0],Ve=Ge[1];Z<_e;++Z)vt=wn,st=Ve,Ge=Q[Z],wn=Ge[0],Ve=Ge[1],st<=i?Ve>i&&(wn-vt)*(i-st)>(Ve-st)*(e-vt)&&++C:Ve<=i&&(wn-vt)*(i-st)<(Ve-st)*(e-vt)&&--C;return C}function A(){c=f,d=[],h=[],S=!0}function $(){var C=k(),N=S&&C,G=(d=P$(d)).length;(N||G)&&(l.polygonStart(),N&&(l.lineStart(),o(null,null,1,l),l.lineEnd()),G&&_3(d,a,C,o,l),l.polygonEnd()),c=l,d=h=g=null}function D(){_.point=O,h&&h.push(g=[]),w=!0,v=!1,x=b=NaN}function M(){d&&(O(p,m),y&&v&&f.rejoin(),d.push(f.result())),_.point=E,v&&c.lineEnd()}function O(C,N){var G=r(C,N);if(h&&g.push([C,N]),w)p=C,m=N,y=G,w=!1,G&&(c.lineStart(),c.point(C,N));else if(G&&v)c.point(C,N);else{var Q=[x=Math.max(Tf,Math.min(xl,x)),b=Math.max(Tf,Math.min(xl,b))],Z=[C=Math.max(Tf,Math.min(xl,C)),N=Math.max(Tf,Math.min(xl,N))];Dj(Q,Z,e,t,n,i)?(v||(c.lineStart(),c.point(Q[0],Q[1])),c.point(Z[0],Z[1]),G||c.lineEnd(),S=!1):G&&(c.lineStart(),c.point(C,N),S=!1)}x=C,b=N,v=G}return _}}function xS(e,t,n){var i=An(e,t-re,n).concat(t);return function(r){return i.map(function(o){return[r,o]})}}function bS(e,t,n){var i=An(e,t-re,n).concat(t);return function(r){return i.map(function(o){return[o,r]})}}function Tj(){var e,t,n,i,r,o,s,a,u=10,l=u,c=90,f=360,d,h,g,p,m=2.5;function y(){return{type:"MultiLineString",coordinates:x()}}function x(){return An(Cf(i/c)*c,n,c).map(g).concat(An(Cf(a/f)*f,s,f).map(p)).concat(An(Cf(t/u)*u,e,u).filter(function(b){return pe(b%c)>re}).map(d)).concat(An(Cf(o/l)*l,r,l).filter(function(b){return pe(b%f)>re}).map(h))}return y.lines=function(){return x().map(function(b){return{type:"LineString",coordinates:b}})},y.outline=function(){return{type:"Polygon",coordinates:[g(i).concat(p(s).slice(1),g(n).reverse().slice(1),p(a).reverse().slice(1))]}},y.extent=function(b){return arguments.length?y.extentMajor(b).extentMinor(b):y.extentMinor()},y.extentMajor=function(b){return arguments.length?(i=+b[0][0],n=+b[1][0],a=+b[0][1],s=+b[1][1],i>n&&(b=i,i=n,n=b),a>s&&(b=a,a=s,s=b),y.precision(m)):[[i,a],[n,s]]},y.extentMinor=function(b){return arguments.length?(t=+b[0][0],e=+b[1][0],o=+b[0][1],r=+b[1][1],t>e&&(b=t,t=e,e=b),o>r&&(b=o,o=r,r=b),y.precision(m)):[[t,o],[e,r]]},y.step=function(b){return arguments.length?y.stepMajor(b).stepMinor(b):y.stepMinor()},y.stepMajor=function(b){return arguments.length?(c=+b[0],f=+b[1],y):[c,f]},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=xS(o,r,90),h=bS(t,e,m),g=xS(a,s,90),p=bS(i,n,m),y):m},y.extentMajor([[-180,-90+re],[180,90-re]]).extentMinor([[-180,-80-re],[180,80+re]])}const ec=e=>e;var Em=new Jt,d1=new Jt,k3,$3,h1,g1,Sr={point:$t,lineStart:$t,lineEnd:$t,polygonStart:function(){Sr.lineStart=Nj,Sr.lineEnd=Oj}
7,polygonEnd:function(){Sr.lineStart=Sr.lineEnd=Sr.point=$t,Em.add(pe(d1)),d1=new Jt},result:function(){var e=Em/2;return Em=new Jt,e}};function Nj(){Sr.point=Rj}function Rj(e,t){Sr.point=A3,k3=h1=e,$3=g1=t}function A3(e,t){d1.add(g1*e-h1*t),h1=e,g1=t}function Oj(){A3(k3,$3)}var ru=1/0,dh=ru,tc=-ru,hh=tc,gh={point:zj,lineStart:$t,lineEnd:$t,polygonStart:$t,polygonEnd:$t,result:function(){var e=[[ru,dh],[tc,hh]];return tc=hh=-(dh=ru=1/0),e}};function zj(e,t){e<ru&&(ru=e),e>tc&&(tc=e),t<dh&&(dh=t),t>hh&&(hh=t)}var p1=0,m1=0,bl=0,ph=0,mh=0,Ta=0,y1=0,x1=0,vl=0,C3,M3,Pi,Li,On={point:zs,lineStart:vS,lineEnd:wS,polygonStart:function(){On.lineStart=Ij,On.lineEnd=Bj},polygonEnd:function(){On.point=zs,On.lineStart=vS,On.lineEnd=wS},result:function(){var e=vl?[y1/vl,x1/vl]:Ta?[ph/Ta,mh/Ta]:bl?[p1/bl,m1/bl]:[NaN,NaN];return p1=m1=bl=ph=mh=Ta=y1=x1=vl=0,e}};function zs(e,t){p1+=e,m1+=t,++bl}function vS(){On.point=Pj}function Pj(e,t){On.point=Lj,zs(Pi=e,Li=t)}function Lj(e,t){var n=e-Pi,i=t-Li,r=sn(n*n+i*i);ph+=r*(Pi+e)/2,mh+=r*(Li+t)/2,Ta+=r,zs(Pi=e,Li=t)}function wS(){On.point=zs}function Ij(){On.point=Uj}function Bj(){F3(C3,M3)}function Uj(e,t){On.point=F3,zs(C3=Pi=e,M3=Li=t)}function F3(e,t){var n=e-Pi,i=t-Li,r=sn(n*n+i*i);ph+=r*(Pi+e)/2,mh+=r*(Li+t)/2,Ta+=r,r=Li*e-Pi*t,y1+=r*(Pi+e),x1+=r*(Li+t),vl+=r*3,zs(Pi=e,Li=t)}function D3(e){this._context=e}D3.prototype={_radius:4.5,pointRadius:function(e){return this._radius=e,this},polygonStart:function(){this._line=0},polygonEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){this._line===0&&this._context.closePath(),this._point=NaN},point:function(e,t){switch(this._point){case 0:{this._context.moveTo(e,t),this._point=1;break}case 1:{this._context.lineTo(e,t);break}default:{this._context.moveTo(e+this._radius,t),this._context.arc(e,t,this._radius,0,on);break}}},result:$t};var b1=new Jt,km,T3,N3,wl,_l,nc={point:$t,lineStart:function(){nc.point=jj},lineEnd:function(){km&&R3(T3,N3),nc.point=$t},polygonStart:function(){km=!0},polygonEnd:function(){km=null},result:function(){var e=+b1;return b1=new Jt,e}};function jj(e,t){nc.point=R3,T3=wl=e,N3=_l=t}function R3(e,t){wl-=e,_l-=t,b1.add(sn(wl*wl+_l*_l)),wl=e,_l=t}let _S,yh,SS,ES;class kS{constructor(t){this._append=t==null?O3:qj(t),this._radius=4.5,this._=""}pointRadius(t){return this._radius=+t,this}polygonStart(){this._line=0}polygonEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){this._line===0&&(this._+="Z"),this._point=NaN}point(t,n){switch(this._point){case 0:{this._append`M${t},${n}`,this._point=1;break}case 1:{this._append`L${t},${n}`;break}default:{if(this._append`M${t},${n}`,this._radius!==SS||this._append!==yh){const i=this._radius,r=this._;this._="",this._append`m0,${i}a${i},${i} 0 1,1 0,${-2*i}a${i},${i} 0 1,1 0,${2*i}z`,SS=i,yh=this._append,ES=this._,this._=r}this._+=ES;break}}}result(){const t=this._;return this._="",t.length?t:null}}function O3(e){let t=1;this._+=e[0];for(const n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function qj(e){const t=Math.floor(e);if(!(t>=0))throw new RangeError(`invalid digits: ${e}`);if(t>15)return O3;if(t!==_S){const n=10**t;_S=t,yh=function(r){let o=1;this._+=r[0];for(const s=r.length;o<s;++o)this._+=Math.round(arguments[o]*n)/n+r[o]}}return yh}function z3(e,t){let n=3,i=4.5,r,o;function s(a){return a&&(typeof i=="function"&&o.pointRadius(+i.apply(this,arguments)),_r(a,r(o))),o.result()}return s.area=function(a){return _r(a,r(Sr)),Sr.result()},s.measure=function(a){return _r(a,r(nc)),nc.result()},s.bounds=function(a){return _r(a,r(gh)),gh.result()},s.centroid=function(a){return _r(a,r(On)),On.result()},s.projection=function(a){return arguments.length?(r=a==null?(e=null,ec):(e=a).stream,s):e},s.context=function(a){return arguments.length?(o=a==null?(t=null,new kS(n)):new D3(t=a),typeof i!="function"&&o.pointRadius(i),s):t},s.pointRadius=function(a){return arguments.length?(i=typeof a=="function"?a:(o.pointRadius(+a),+a),s):i},s.digits=function(a){if(!arguments.length)return n;if(a==null)n=null;else{const u=Math.floor(a);if(!(u>=0))throw new RangeError(`invalid digits: ${a}`);n=u}return t===null&&(o=new kS(n)),s},s.projection(e).digits(n).context(t)}
vendor: 19,292 bytes, line 7
7function Og(e){return function(t){var n=new v1;for(var i in e)n[i]=e[i];return n.stream=t,n}}function v1(){}v1.prototype={constructor:v1,point:function(e,t){this.stream.point(e,t)},sphere:function(){this.stream.sphere()},lineStart:function(){this.stream.lineStart()},lineEnd:function(){this.stream.lineEnd()},polygonStart:function(){this.stream.polygonStart()},polygonEnd:function(){this.stream.polygonEnd()}};function kb(e,t,n){var i=e.clipExtent&&e.clipExtent();return e.scale(150).translate([0,0]),i!=null&&e.clipExtent(null),_r(n,e.stream(gh)),t(gh.result()),i!=null&&e.clipExtent(i),e}function zg(e,t,n){return kb(e,function(i){var r=t[1][0]-t[0][0],o=t[1][1]-t[0][1],s=Math.min(r/(i[1][0]-i[0][0]),o/(i[1][1]-i[0][1])),a=+t[0][0]+(r-s*(i[1][0]+i[0][0]))/2,u=+t[0][1]+(o-s*(i[1][1]+i[0][1]))/2;e.scale(150*s).translate([a,u])},n)}function $b(e,t,n){return zg(e,[[0,0],t],n)}function Ab(e,t,n){return kb(e,function(i){var r=+t,o=r/(i[1][0]-i[0][0]),s=(r-o*(i[1][0]+i[0][0]))/2,a=-o*i[0][1];e.scale(150*o).translate([s,a])},n)}function Cb(e,t,n){return kb(e,function(i){var r=+t,o=r/(i[1][1]-i[0][1]),s=-o*i[0][0],a=(r-o*(i[1][1]+i[0][1]))/2;e.scale(150*o).translate([s,a])},n)}var $S=16,Wj=oe(30*fe);function AS(e,t){return+t?Gj(e,t):Hj(e)}function Hj(e){return Og({point:function(t,n){t=e(t,n),this.stream.point(t[0],t[1])}})}function Gj(e,t){function n(i,r,o,s,a,u,l,c,f,d,h,g,p,m){var y=l-i,x=c-r,b=y*y+x*x;if(b>4*t&&p--){var v=s+d,w=a+h,S=u+g,_=sn(v*v+w*w+S*S),E=mn(S/=_),k=pe(pe(S)-1)<re||pe(o-f)<re?(o+f)/2:Yn(w,v),A=e(k,E),$=A[0],D=A[1],M=$-i,O=D-r,C=x*M-y*O;(C*C/b>t||pe((y*M+x*O)/b-.5)>.3||s*d+a*h+u*g<Wj)&&(n(i,r,o,s,a,u,$,D,k,v/=_,w/=_,S,p,m),m.point($,D),n($,D,k,v,w,S,l,c,f,d,h,g,p,m))}}return function(i){var r,o,s,a,u,l,c,f,d,h,g,p,m={point:y,lineStart:x,lineEnd:v,polygonStart:function(){i.polygonStart(),m.lineStart=w},polygonEnd:function(){i.polygonEnd(),m.lineStart=x}};function y(E,k){E=e(E,k),i.point(E[0],E[1])}function x(){f=NaN,m.point=b,i.lineStart()}function b(E,k){var A=Os([E,k]),$=e(E,k);n(f,d,c,h,g,p,f=$[0],d=$[1],c=E,h=A[0],g=A[1],p=A[2],$S,i),i.point(f,d)}function v(){m.point=y,i.lineEnd()}function w(){x(),m.point=S,m.lineEnd=_}function S(E,k){b(r=E,k),o=f,s=d,a=h,u=g,l=p,m.point=b}function _(){n(f,d,c,h,g,p,o,s,r,a,u,l,$S,i),m.lineEnd=v,v()}return m}}var Vj=Og({point:function(e,t){this.stream.point(e*fe,t*fe)}});function Yj(e){return Og({point:function(t,n){var i=e(t,n);return this.stream.point(i[0],i[1])}})}function Xj(e,t,n,i,r){function o(s,a){return s*=i,a*=r,[t+e*s,n-e*a]}return o.invert=function(s,a){return[(s-t)/e*i,(n-a)/e*r]},o}function CS(e,t,n,i,r,o){if(!o)return Xj(e,t,n,i,r);var s=oe(o),a=ne(o),u=s*e,l=a*e,c=s/e,f=a/e,d=(a*n-s*t)/e,h=(a*t+s*n)/e;function g(p,m){return p*=i,m*=r,[u*p-l*m+t,n-l*p-u*m]}return g.invert=function(p,m){return[i*(c*p-f*m+d),r*(h-f*p-c*m)]},g}function rr(e){return P3(function(){return e})()}function P3(e){var t,n=150,i=480,r=250,o=0,s=0,a=0,u=0,l=0,c,f=0,d=1,h=1,g=null,p=yS,m=null,y,x,b,v=ec,w=.5,S,_,E,k,A;function $(C){return E(C[0]*fe,C[1]*fe)}function D(C){return C=E.invert(C[0],C[1]),C&&[C[0]*Ye,C[1]*Ye]}$.stream=function(C){return k&&A===C?k:k=Vj(Yj(c)(p(S(v(A=C)))))},$.preclip=function(C){return arguments.length?(p=C,g=void 0,O()):p},$.postclip=function(C){return arguments.length?(v=C,m=y=x=b=null,O()):v},$.clipAngle=function(C){return arguments.length?(p=+C?Fj(g=C*fe):(g=null,yS),O()):g*Ye},$.clipExtent=function(C){return arguments.length?(v=C==null?(m=y=x=b=null,ec):E3(m=+C[0][0],y=+C[0][1],x=+C[1][0],b=+C[1][1]),O()):m==null?null:[[m,y],[x,b]]},$.scale=function(C){return arguments.length?(n=+C,M()):n},$.translate=function(C){return arguments.length?(i=+C[0],r=+C[1],M()):[i,r]},$.center=function(C){return arguments.length?(o=C[0]%360*fe,s=C[1]%360*fe,M()):[o*Ye,s*Ye]},$.rotate=function(C){return arguments.length?(a=C[0]%360*fe,u=C[1]%360*fe,l=C.length>2?C[2]%360*fe:0,M()):[a*Ye,u*Ye,l*Ye]},$.angle=function(C){return arguments.length?(f=C%360*fe,M()):f*Ye},$.reflectX=function(C){return arguments.length?(d=C?-1:1,M()):d<0},$.reflectY=function(C){return arguments.length?(h=C?-1:1,M()):h<0},$.precision=function(C){return arguments.length?(S=AS(_,w=C*C),O()):sn(w)},$.fitExtent=function(C,N){return zg($,C,N)},$.fitSize=function(C,N){return $b($,C,N)},$.fitWidth=function(C,N){return Ab($,C,N)},$.fitHeight=function(C,N){return Cb($,C,N)};function M(){var C=CS(n,0,0,d,h,f).apply(null,t(o,s)),N=CS(n,i-C[0],r-C[1],d,h,f);return c=v3(a,u,l),_=c1(t,N),E=c1(c,_),S=AS(_,w),O()}function O(){return k=A=null,$}return function(){return t=e.apply(this,arguments),$.invert=t.invert&&D,M()}}function Mb(e){var t=0,n=he/3,i=P3(e),r=i(t,n);return r.parallels=function(o){return arguments.length?i(t=o[0]*fe,n=o[1]*fe):[t*Ye,n*Ye]},r}function Kj(e){var t=oe(e);function n(i,r){return[i*t,ne(r)/t]}return n.invert=function(i,r){return[i/t,mn(r*t)]},n}function Zj(e,t){var n=ne(e),i=(n+ne(t))/2;if(pe(i)<re)return Kj(e);var r=1+n*(2*i-n),o=sn(r)/i;function s(a,u){var l=sn(r-2*i*ne(u))/i;return[l*ne(a*=i),o-l*oe(a)]}return s.invert=function(a,u){var l=o-u,c=Yn(a,pe(l))*Pn(l);return l*i<0&&(c-=he*Pn(a)*Pn(l)),[c/i,mn((r-(a*a+l*l)*i*i)/(2*i))]},s}function xh(){return Mb(Zj).scale(155.424).center([0,33.6442])}function L3(){return xh().parallels([29.5,45.5]).scale(1070).translate([480,250]).rotate([96,0]).center([-.6,38.7])}function Qj(e){var t=e.length;return{point:function(n,i){for(var r=-1;++r<t;)e[r].point(n,i)},sphere:function(){for(var n=-1;++n<t;)e[n].sphere()},lineStart:function(){for(var n=-1;++n<t;)e[n].lineStart()},lineEnd:function(){for(var n=-1;++n<t;)e[n].lineEnd()},polygonStart:function(){for(var n=-1;++n<t;)e[n].polygonStart()},polygonEnd:function(){for(var n=-1;++n<t;)e[n].polygonEnd()}}}function Jj(){var e,t,n=L3(),i,r=xh().rotate([154,0]).center([-2,58.5]).parallels([55,65]),o,s=xh().rotate([157,0]).center([-3,19.9]).parallels([8,18]),a,u,l={point:function(d,h){u=[d,h]}};function c(d){var h=d[0],g=d[1];return u=null,i.point(h,g),u||(o.point(h,g),u)||(a.point(h,g),u)}c.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?r:m>=.166&&m<.234&&p>=-.214&&p<-.115?s:n).invert(d)},c.stream=function(d){return e&&t===d?e:e=Qj([n.stream(t=d),r.stream(d),s.stream(d)])},c.precision=function(d){return arguments.length?(n.precision(d),r.precision(d),s.precision(d),f()):n.precision()},c.scale=function(d){return arguments.length?(n.scale(d),r.scale(d*.35),s.scale(d),c.translate(n.translate())):n.scale()},c.translate=function(d){if(!arguments.length)return n.translate();var h=n.scale(),g=+d[0],p=+d[1];return i=n.translate(d).clipExtent([[g-.455*h,p-.238*h],[g+.455*h,p+.238*h]]).stream(l),o=r.translate([g-.307*h,p+.201*h]).clipExtent([[g-.425*h+re,p+.12*h+re],[g-.214*h-re,p+.234*h-re]]).stream(l),a=s.translate([g-.205*h,p+.212*h]).clipExtent([[g-.214*h+re,p+.166*h+re],[g-.115*h-re,p+.234*h-re]]).stream(l),f()},c.fitExtent=function(d,h){return zg(c,d,h)},c.fitSize=function(d,h){return $b(c,d,h)},c.fitWidth=function(d,h){return Ab(c,d,h)},c.fitHeight=function(d,h){return Cb(c,d,h)};function f(){return e=t=null,c}return c.scale(1070)}function I3(e){return function(t,n){var i=oe(t),r=oe(n),o=e(i*r);return o===1/0?[2,0]:[o*r*ne(t),o*ne(n)]}}function Ic(e){return function(t,n){var i=sn(t*t+n*n),r=e(i),o=ne(r),s=oe(r);return[Yn(t*o,i*s),mn(i&&n*o/i)]}}var B3=I3(function(e){return sn(2/(1+e))});B3.invert=Ic(function(e){return 2*mn(e/2)});function eq(){return rr(B3).scale(124.75).clipAngle(180-.001)}var U3=I3(function(e){return(e=l3(e))&&e/ne(e)});U3.invert=Ic(function(e){return e});function tq(){return rr(U3).scale(79.4188).clipAngle(180-.001)}function Pg(e,t){return[e,Jd(Sb((He+t)/2))]}Pg.invert=function(e,t){return[e,2*Fu(u3(t))-He]};function nq(){return j3(Pg).scale(961/on)}function j3(e){var t=rr(e),n=t.center,i=t.scale,r=t.translate,o=t.clipExtent,s=null,a,u,l;t.scale=function(f){return arguments.length?(i(f),c()):i()},t.translate=function(f){return arguments.length?(r(f),c()):r()},t.center=function(f){return arguments.length?(n(f),c()):n()},t.clipExtent=function(f){return arguments.length?(f==null?s=a=u=l=null:(s=+f[0][0],a=+f[0][1],u=+f[1][0],l=+f[1][1]),c()):s==null?null:[[s,a],[u,l]]};function c(){var f=he*i(),d=t(_j(t.rotate()).invert([0,0]));return o(s==null?[[d[0]-f,d[1]-f],[d[0]+f,d[1]+f]]:e===Pg?[[Math.max(d[0]-f,s),a],[Math.min(d[0]+f,u),l]]:[[s,Math.max(d[1]-f,a)],[u,Math.min(d[1]+f,l)]])}return c()}function Nf(e){return Sb((He+e)/2)}function iq(e,t){var n=oe(e),i=e===t?ne(e):Jd(n/oe(t))/Jd(Nf(t)/Nf(e)),r=n*wm(Nf(e),i)/i;if(!i)return Pg;function o(s,a){r>0?a<-He+re&&(a=-He+re):a>He-re&&(a=He-re);var u=r/wm(Nf(a),i);return[u*ne(i*s),r-u*oe(i*s)]}return o.invert=function(s,a){var u=r-a,l=Pn(i)*sn(s*s+u*u),c=Yn(s,pe(u))*Pn(u);return u*i<0&&(c-=he*Pn(s)*Pn(u)),[c/i,2*Fu(wm(r/l,1/i))-He]},o}function rq(){return Mb(iq).scale(109.5).parallels([30,30])}function bh(e,t){return[e,t]}bh.invert=bh;function oq(){return rr(bh).scale(152.63)}function sq(e,t){var n=oe(e),i=e===t?ne(e):(n-oe(t))/(t-e),r=n/i+e;if(pe(i)<re)return bh;function o(s,a){var u=r-a,l=i*s;return[u*ne(l),r-u*oe(l)]}return o.invert=function(s,a){var u=r-a,l=Yn(s,pe(u))*Pn(u);return u*i<0&&(l-=he*Pn(s)*Pn(u)),[l/i,r-Pn(i)*sn(s*s+u*u)]},o}function aq(){return Mb(sq).scale(131.154).center([0,13.9389])}var Ol=1.340264,zl=-.081106,Pl=893e-6,Ll=.003796,vh=sn(3)/2,uq=12;function q3(e,t){var n=mn(vh*ne(t)),i=n*n,r=i*i*i;return[e*oe(n)/(vh*(Ol+3*zl*i+r*(7*Pl+9*Ll*i))),n*(Ol+zl*i+r*(Pl+Ll*i))]}q3.invert=function(e,t){for(var n=t,i=n*n,r=i*i*i,o=0,s,a,u;o<uq&&(a=n*(Ol+zl*i+r*(Pl+Ll*i))-t,u=Ol+3*zl*i+r*(7*Pl+9*Ll*i),n-=s=a/u,i=n*n,r=i*i*i,!(pe(s)<Zd));++o);return[vh*e*(Ol+3*zl*i+r*(7*Pl+9*Ll*i))/oe(n),mn(ne(n)/vh)]};function lq(){return rr(q3).scale(177.158)}function W3(e,t){var n=oe(t),i=oe(e)*n;return[n*ne(e)/i,ne(t)/i]}W3.invert=Ic(Fu);function cq(){return rr(W3).scale(144.049).clipAngle(60)}function fq(){var e=1,t=0,n=0,i=1,r=1,o=0,s,a,u=null,l,c,f,d=1,h=1,g=Og({point:function(v,w){var S=b([v,w]);this.stream.point(S[0],S[1])}}),p=ec,m,y;function x(){return d=e*i,h=e*r,m=y=null,b}function b(v){var w=v[0]*d,S=v[1]*h;if(o){var _=S*s-w*a;w=w*s+S*a,S=_}return[w+t,S+n]}return b.invert=function(v){var w=v[0]-t,S=v[1]-n;if(o){var _=S*s+w*a;w=w*s-S*a,S=_}return[w/d,S/h]},b.stream=function(v){return m&&y===v?m:m=g(p(y=v))},b.postclip=function(v){return arguments.length?(p=v,u=l=c=f=null,x()):p},b.clipExtent=function(v){return arguments.length?(p=v==null?(u=l=c=f=null,ec):E3(u=+v[0][0],l=+v[0][1],c=+v[1][0],f=+v[1][1]),x()):u==null?null:[[u,l],[c,f]]},b.scale=function(v){return arguments.length?(e=+v,x()):e},b.translate=function(v){return arguments.length?(t=+v[0],n=+v[1],x()):[t,n]},b.angle=function(v){return arguments.length?(o=v%360*fe,a=ne(o),s=oe(o),x()):o*Ye},b.reflectX=function(v){return arguments.length?(i=v?-1:1,x()):i<0},b.reflectY=function(v){return arguments.length?(r=v?-1:1,x()):r<0},b.fitExtent=function(v,w){return zg(b,v,w)},b.fitSize=function(v,w){return $b(b,v,w)},b.fitWidth=function(v,w){return Ab(b,v,w)},b.fitHeight=function(v,w){return Cb(b,v,w)},b}function H3(e,t){var n=t*t,i=n*n;return[e*(.8707-.131979*n+i*(-.013791+i*(.003971*n-.001529*i))),t*(1.007226+n*(.015085+i*(-.044475+.028874*n-.005916*i)))]}H3.invert=function(e,t){var n=t,i=25,r;do{var o=n*n,s=o*o;n-=r=(n*(1.007226+o*(.015085+s*(-.044475+.028874*o-.005916*s)))-t)/(1.007226+o*(.015085*3+s*(-.044475*7+.028874*9*o-.005916*11*s)))}while(pe(r)>re&&--i>0);return[e/(.8707+(o=n*n)*(-.131979+o*(-.013791+o*o*o*(.003971-.001529*o)))),n]};function dq(){return rr(H3).scale(175.295)}function G3(e,t){return[oe(t)*ne(e),ne(t)]}G3.invert=Ic(mn);function hq(){return rr(G3).scale(249.5).clipAngle(90+re)}function V3(e,t){var n=oe(t),i=1+oe(e)*n;return[n*ne(e)/i,ne(t)/i]}V3.invert=Ic(function(e){return 2*Fu(e)});function gq(){return rr(V3).scale(250).clipAngle(142)}function Y3(e,t){return[Jd(Sb((He+t)/2)),-e]}Y3.invert=function(e,t){return[-t,2*Fu(u3(e))-He]};function pq(){var e=j3(Y3),t=e.center,n=e.rotate;return e.center=function(i){return arguments.length?t([-i[1],i[0]]):(i=t(),[i[1],-i[0]])},e.rotate=function(i){return arguments.length?n([i[0],i[1],i.length>2?i[2]+90:90]):(i=n(),[i[0],i[1],i[2]-90])},n([0,0,90]).scale(159.155)}var mq=Math.abs,w1=Math.cos,wh=Math.sin,yq=1e-6,X3=Math.PI,_1=X3/2,MS=xq(2);function FS(e){return e>1?_1:e<-1?-_1:Math.asin(e)}function xq(e){return e>0?Math.sqrt(e):0}function bq(e,t){var n=e*wh(t),i=30,r;do t-=r=(t+wh(t)-n)/(1+w1(t));while(mq(r)>yq&&--i>0);return t/2}function vq(e,t,n){function i(r,o){return[e*r*w1(o=bq(n,o)),t*wh(o)]}return i.invert=function(r,o){return o=FS(o/t),[r/(e*w1(o)),FS((2*o+wh(2*o))/n)]},i}var wq=vq(MS/_1,MS,X3);function _q(){return rr(wq).scale(169.529)}const Sq=z3(),S1=["clipAngle","clipExtent","scale","translate","center","rotate","parallels","precision","reflectX","reflectY","coefficient","distance","fraction","lobes","parallel","radius","ratio","spacing","tilt"];function Eq(e,t){return function n(){const i=t();return i.type=e,i.path=z3().projection(i),i.copy=i.copy||function(){const r=n();return S1.forEach(o=>{i[o]&&r[o](i[o]())}),r.path.pointRadius(i.path.pointRadius()),r},SM(i)}}function K3(e,t){if(!e||typeof e!="string")throw new Error("Projection type must be a name string.");return e=e.toLowerCase(),arguments.length>1?(_h[e]=Eq(e,t),this):_h[e]||null}function Z3(e){return e&&e.path||Sq}const _h={albers:L3,albersusa:Jj,azimuthalequalarea:eq,azimuthalequidistant:tq,conicconformal:rq,conicequalarea:xh,conicequidistant:aq,equalEarth:lq,equirectangular:oq,gnomonic:cq,identity:fq,mercator:nq,mollweide:_q,naturalEarth1:dq,orthographic:hq,stereographic:gq,transversemercator:pq};for(const e in _h)K3(e,_h[e]);function kq(){}const mr=[[],[[[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 Q3(){var e=1,t=1,n=a;function i(u,l){return l.map(c=>r(u,c))}function r(u,l){var c=[],f=[];return o(u,l,d=>{n(d,u,l),$q(d)>0?c.push([d]):f.push(d)}),f.forEach(d=>{for(var h=0,g=c.length,p;h<g;++h)if(Aq((p=c[h])[0],d)!==-1){p.push(d);return}}),{type:"MultiPolygon",value:l,coordinates:c}}function o(u,l,c){var f=[],d=[],h,g,p,m,y,x;for(h=g=-1,m=u[0]>=l,mr[m<<1].forEach(b);++h<e-1;)p=m,m=u[h+1]>=l,mr[p|m<<1].forEach(b);for(mr[m<<0].forEach(b);++g<t-1;){for(h=-1,m=u[g*e+e]>=l,y=u[g*e]>=l,mr[m<<1|y<<2].forEach(b);++h<e-1;)p=m,m=u[g*e+e+h+1]>=l,x=y,y=u[g*e+h+1]>=l,mr[p|m<<1|y<<2|x<<3].forEach(b);mr[m|y<<3].forEach(b)}for(h=-1,y=u[g*e]>=l,mr[y<<2].forEach(b);++h<e-1;)x=y,y=u[g*e+h+1]>=l,mr[y<<2|x<<3].forEach(b);mr[y<<3].forEach(b);function b(v){var w=[v[0][0]+h,v[0][1]+g],S=[v[1][0]+h,v[1][1]+g],_=s(w),E=s(S),k,A;(k=d[_])?(A=f[E])?(delete d[k.end],delete f[A.start],k===A?(k.ring.push(S),c(k.ring)):f[k.start]=d[A.end]={start:k.start,end:A.end,ring:k.ring.concat(A.ring)}):(delete d[k.end],k.ring.push(S),d[k.end=E]=k):(k=f[E])?(A=d[_])?(delete f[k.start],delete d[A.end],k===A?(k.ring.push(S),c(k.ring)):f[A.start]=d[k.end]={start:A.start,end:k.end,ring:A.ring.concat(k.ring)}):(delete f[k.start],k.ring.unshift(w),f[k.start=_]=k):f[_]=d[E]={start:_,end:E,ring:[w,S]}}}function s(u){return u[0]*2+u[1]*(e+1)*4}function a(u,l,c){u.forEach(f=>{var d=f[0],h=f[1],g=d|0,p=h|0,m,y=l[p*e+g];d>0&&d<e&&g===d&&(m=l[p*e+g-1],f[0]=d+(c-m)/(y-m)-.5),h>0&&h<t&&p===h&&(m=l[(p-1)*e+g],f[1]=h+(c-m)/(y-m)-.5)})}return i.contour=r,i.size=function(u){if(!arguments.length)return[e,t];var l=Math.floor(u[0]),c=Math.floor(u[1]);return l>=0&&c>=0||R("invalid size"),e=l,t=c,i},i.smooth=function(u){return arguments.length?(n=u?a:kq,i):n===a},i}function $q(e){for(var t=0,n=e.length,i=e[n-1][1]*e[0][0]-e[n-1][0]*e[0][1];++t<n;)i+=e[t-1][1]*e[t][0]-e[t-1][0]*e[t][1];return i}function Aq(e,t){for(var n=-1,i=t.length,r;++n<i;)if(r=Cq(e,t[n]))return r;return 0}function Cq(e,t){for(var n=t[0],i=t[1],r=-1,o=0,s=e.length,a=s-1;o<s;a=o++){var u=e[o],l=u[0],c=u[1],f=e[a],d=f[0],h=f[1];if(Mq(u,f,t))return 0;c>i!=h>i&&n<(d-l)*(i-c)/(h-c)+l&&(r=-r)}return r}function Mq(e,t,n){var i;return Fq(e,t,n)&&Dq(e[i=+(e[0]===t[0])],n[i],t[i])}function Fq(e,t,n){return(t[0]-e[0])*(n[1]-e[1])===(n[0]-e[0])*(t[1]-e[1])}function Dq(e,t,n){return e<=t&&t<=n||n<=t&&t<=e}function J3(e,t,n){return function(i){var r=Ir(i),o=n?Math.min(r[0],0):r[0],s=r[1],a=s-o,u=t?ko(o,s,e):a/(e+1);return An(o+u,s,u)}}function Fb(e){F.call(this,null,e)}Fb.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"}]};q(Fb,F,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=t.materialize(t.SOURCE).source,r=e.field||nn,o=Q3().smooth(e.smooth!==!1),s=e.thresholds||Tq(i,r,e),a=e.as===null?null:e.as||"contour",u=[];return i.forEach(l=>{const c=r(l),f=o.size([c.width,c.height])(c.values,z(s)?s:s(c.values));Nq(f,c,l,e),f.forEach(d=>{u.push(lg(l,Ee(a!=null?{[a]:d}:d)))})}),this.value&&(n.rem=this.value),this.value=n.source=n.add=u,n}});function Tq(e,t,n){const i=J3(n.levels||10,n.nice,n.zero!==!1);return n.resolve!=="shared"?i:i(e.map(r=>bs(t(r).values)))}function Nq(e,t,n,i){let r=i.scale||t.scale,o=i.translate||t.translate;if(ce(r)&&(r=r(n,i)),ce(o)&&(o=o(n,i)),(r===1||r==null)&&!o)return;const s=(Ce(r)?r:r[0])||1,a=(Ce(r)?r:r[1])||1,u=o&&o[0]||0,l=o&&o[1]||0;e.forEach(eD(t,s,a,u,l))}function eD(e,t,n,i,r){const o=e.x1||0,s=e.y1||0,a=t*n<0;function u(f){f.forEach(l)}function l(f){a&&f.reverse(),f.forEach(c)}function c(f){f[0]=(f[0]-o)*t+i,f[1]=(f[1]-s)*n+r}return function(f){return f.coordinates.forEach(u),f}}function DS(e,t,n){const i=e>=0?e:kA(t,n);return Math.round((Math.sqrt(4*i*i+1)-1)/2)}function $m(e){return ce(e)?e:rn(+e)}function tD(){var e=u=>u[0],t=u=>u[1],n=bc,i=[-1,-1],r=960,o=500,s=2;function a(u,l){const c=DS(i[0],u,e)>>s,f=DS(i[1],u,t)>>s,d=c?c+2:0,h=f?f+2:0,g=2*d+(r>>s),p=2*h+(o>>s),m=new Float32Array(g*p),y=new Float32Array(g*p);let x=m;u.forEach(v=>{const w=d+(+e(v)>>s),S=h+(+t(v)>>s);w>=0&&w<g&&S>=0&&S<p&&(m[w+S*g]+=+n(v))}),c>0&&f>0?(wa(g,p,m,y,c),_a(g,p,y,m,f),wa(g,p,m,y,c),_a(g,p,y,m,f),wa(g,p,m,y,c),_a(g,p,y,m,f)):c>0?(wa(g,p,m,y,c),wa(g,p,y,m,c),wa(g,p,m,y,c),x=y):f>0&&(_a(g,p,m,y,f),_a(g,p,y,m,f),_a(g,p,m,y,f),x=y);const b=l?Math.pow(2,-2*s):1/L$(x);for(let v=0,w=g*p;v<w;++v)x[v]*=b;return{values:x,scale:1<<s,width:g,height:p,x1:d,y1:h,x2:d+(r>>s),y2:h+(o>>s)}}return a.x=function(u){return arguments.length?(e=$m(u),a):e},a.y=function(u){return arguments.length?(t=$m(u),a):t},a.weight=function(u){return arguments.length?(n=$m(u),a):n},a.size=function(u){if(!arguments.length)return[r,o];var l=+u[0],c=+u[1];return l>=0&&c>=0||R("invalid size"),r=l,o=c,a},a.cellSize=function(u){return arguments.length?((u=+u)>
7=1||R("invalid cell size"),s=Math.floor(Math.log(u)/Math.LN2),a):1<<s},a.bandwidth=function(u){return arguments.length?(u=H(u),u.length===1&&(u=[+u[0],+u[0]]),u.length!==2&&R("invalid bandwidth"),i=u,a):i},a}function wa(e,t,n,i,r){const o=(r<<1)+1;for(let s=0;s<t;++s)for(let a=0,u=0;a<e+r;++a)a<e&&(u+=n[a+s*e]),a>=r&&(a>=o&&(u-=n[a-o+s*e]),i[a-r+s*e]=u/Math.min(a+1,e-1+o-a,o))}function _a(e,t,n,i,r){const o=(r<<1)+1;for(let s=0;s<e;++s)for(let a=0,u=0;a<t+r;++a)a<t&&(u+=n[s+a*e]),a>=r&&(a>=o&&(u-=n[s+(a-o)*e]),i[s+(a-r)*e]=u/Math.min(a+1,t-1+o-a,o))}function Db(e){F.call(this,null,e)}Db.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 Rq=["x","y","weight","size","cellSize","bandwidth"];function nD(e,t){return Rq.forEach(n=>t[n]!=null?e[n](t[n]):0),e}q(Db,F,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=t.materialize(t.SOURCE).source,r=Oq(i,e.groupby),o=(e.groupby||[]).map(Xe),s=nD(tD(),e),a=e.as||"grid",u=[];function l(c,f){for(let d=0;d<o.length;++d)c[o[d]]=f[d];return c}return u=r.map(c=>Ee(l({[a]:s(c,e.counts)},c.dims))),this.value&&(n.rem=this.value),this.value=n.source=n.add=u,n}});function Oq(e,t){var n=[],i=c=>c(a),r,o,s,a,u,l;if(t==null)n.push(e);else for(r={},o=0,s=e.length;o<s;++o)a=e[o],u=t.map(i),l=r[u],l||(r[u]=l=[],l.dims=u,n.push(l)),l.push(a);return n}function Tb(e){F.call(this,null,e)}Tb.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}]};q(Tb,F,{transform(e,t){if(this.value&&!t.changed()&&!e.modified())return t.StopPropagation;var n=t.fork(t.NO_SOURCE|t.NO_FIELDS),i=Q3().smooth(e.smooth!==!1),r=e.values,o=e.thresholds||J3(e.count||10,e.nice,!!r),s=e.size,a,u;return r||(r=t.materialize(t.SOURCE).source,a=nD(tD(),e)(r,!0),u=eD(a,a.scale||1,a.scale||1,0,0),s=[a.width,a.height],r=a.values),o=z(o)?o:o(r),r=i.size(s)(r,o),u&&r.forEach(u),this.value&&(n.rem=this.value),this.value=n.source=n.add=(r||[]).map(Ee),n}});const E1="Feature",Nb="FeatureCollection",zq="MultiPoint";function Rb(e){F.call(this,null,e)}Rb.Definition={type:"GeoJSON",metadata:{},params:[{name:"fields",type:"field",array:!0,length:2},{name:"geojson",type:"field"}]};q(Rb,F,{transform(e,t){var n=this._features,i=this._points,r=e.fields,o=r&&r[0],s=r&&r[1],a=e.geojson||!r&&nn,u=t.ADD,l;l=e.modified()||t.changed(t.REM)||t.modified(Qt(a))||o&&t.modified(Qt(o))||s&&t.modified(Qt(s)),(!this.value||l)&&(u=t.SOURCE,this._features=n=[],this._points=i=[]),a&&t.visit(u,c=>n.push(a(c))),o&&s&&(t.visit(u,c=>{var f=o(c),d=s(c);f!=null&&d!=null&&(f=+f)===f&&(d=+d)===d&&i.push([f,d])}),n=n.concat({type:E1,geometry:{type:zq,coordinates:i}})),this.value={type:Nb,features:n}}});function Ob(e){F.call(this,null,e)}Ob.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"}]};q(Ob,F,{transform(e,t){var n=t.fork(t.ALL),i=this.value,r=e.field||nn,o=e.as||"path",s=n.SOURCE;!i||e.modified()?(this.value=i=Z3(e.projection),n.materialize().reflow()):s=r===nn||t.modified(r.fields)?n.ADD_MOD:n.ADD;const a=Pq(i,e.pointRadius);return n.visit(s,u=>u[o]=i(r(u))),i.pointRadius(a),n.modifies(o)}});function Pq(e,t){const n=e.pointRadius();return e.context(null),t!=null&&e.pointRadius(t),n}function zb(e){F.call(this,null,e)}zb.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"]}]};q(zb,F,{transform(e,t){var n=e.projection,i=e.fields[0],r=e.fields[1],o=e.as||["x","y"],s=o[0],a=o[1],u;function l(c){const f=n([i(c),r(c)]);f?(c[s]=f[0],c[a]=f[1]):(c[s]=void 0,c[a]=void 0)}return e.modified()?t=t.materialize().reflow(!0).visit(t.SOURCE,l):(u
vendor: 11,190 bytes, line 7
7=t.modified(i.fields)||t.modified(r.fields),t.visit(u?t.ADD_MOD:t.ADD,l)),t.modifies(o)}});function Pb(e){F.call(this,null,e)}Pb.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"}]};q(Pb,F,{transform(e,t){var n=t.fork(t.ALL),i=this.value,r=e.as||"shape",o=n.ADD;return(!i||e.modified())&&(this.value=i=Lq(Z3(e.projection),e.field||hi("datum"),e.pointRadius),n.materialize().reflow(),o=n.SOURCE),n.visit(o,s=>s[r]=i),n.modifies(r)}});function Lq(e,t,n){const i=n==null?r=>e(t(r)):r=>{var o=e.pointRadius(),s=e.pointRadius(n)(t(r));return e.pointRadius(o),s};return i.context=r=>(e.context(r),i),i}function Lb(e){F.call(this,[],e),this.generator=Tj()}Lb.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}]};q(Lb,F,{transform(e,t){var n=this.value,i=this.generator,r;if(!n.length||e.modified())for(const o in e)ce(i[o])&&i[o](e[o]);return r=i(),n.length?t.mod.push(yA(n[0],r)):t.add.push(Ee(r)),n[0]=r,t}});function Ib(e){F.call(this,null,e)}Ib.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"}]};q(Ib,F,{transform(e,t){if(!t.changed()&&!e.modified())return t.StopPropagation;var n=t.materialize(t.SOURCE).source,i=e.resolve==="shared",r=e.field||nn,o=Bq(e.opacity,e),s=Iq(e.color,e),a=e.as||"image",u={$x:0,$y:0,$value:0,$max:i?bs(n.map(l=>bs(r(l).values))):0};return n.forEach(l=>{const c=r(l),f=le({},l,u);i||(f.$max=bs(c.values||[])),l[a]=Uq(c,f,s.dep?s:rn(s(f)),o.dep?o:rn(o(f)))}),t.reflow(!0).modifies(a)}});function Iq(e,t){let n;return ce(e)?(n=i=>Co(e(i,t)),n.dep=iD(e)):n=rn(Co(e||"#888")),n}function Bq(e,t){let n;return ce(e)?(n=i=>e(i,t),n.dep=iD(e)):e?n=rn(e):(n=i=>i.$value/i.$max||0,n.dep=!0),n}function iD(e){if(!ce(e))return!1;const t=Gi(Qt(e));return t.$x||t.$y||t.$value||t.$max}function Uq(e,t,n,i){const r=e.width,o=e.height,s=e.x1||0,a=e.y1||0,u=e.x2||r,l=e.y2||o,c=e.values,f=c?m=>c[m]:ss,d=wo(u-s,l-a),h=d.getContext("2d"),g=h.getImageData(0,0,u-s,l-a),p=g.data;for(let m=a,y=0;m<l;++m){t.$y=m-a;for(let x=s,b=m*r;x<u;++x,y+=4){t.$x=x-s,t.$value=f(x+b);const v=n(t);p[y+0]=v.r,p[y+1]=v.g,p[y+2]=v.b,p[y+3]=~~(255*i(t))}}return h.putImageData(g,0,0),d}function rD(e){F.call(this,null,e),this.modified(!0)}q(rD,F,{transform(e,t){let n=this.value;return!n||e.modified("type")?(this.value=n=qq(e.type),S1.forEach(i=>{e[i]!=null&&TS(n,i,e[i])})):S1.forEach(i=>{e.modified(i)&&TS(n,i,e[i])}),e.pointRadius!=null&&n.path.pointRadius(e.pointRadius),e.fit&&jq(n,e),t.fork(t.NO_SOURCE|t.NO_FIELDS)}});function jq(e,t){const n=Wq(t.fit);t.extent?e.fitExtent(t.extent,n):t.size&&e.fitSize(t.size,n)}function qq(e){const t=K3((e||"mercator").toLowerCase());return t||R("Unrecognized projection type: "+e),t()}function TS(e,t,n){ce(e[t])&&e[t](n)}function Wq(e){return e=H(e),e.length===1?e[0]:{type:Nb,features:e.reduce((t,n)=>t.concat(Hq(n)),[])}}function Hq(e){return e.type===Nb?e.features:H(e).filter(t=>t!=null).map(t=>t.type===E1?t:{type:E1,geometry:t})}const Gq=Object.freeze(Object.defineProperty({__proto__:null,contour:Tb,geojson:Rb,geopath:Ob,geopoint:zb,geoshape:Pb,graticule:Lb,heatmap:Ib,isocontour:Fb,kde2d:Db,projection:rD},Symbol.toStringTag,{value:"Module"}));function Vq(e,t){var n,i=1;e==null&&(e=0),t==null&&(t=0);function r(){var o,s=n.length,a,u=0,l=0;for(o=0;o<s;++o)a=n[o],u+=a.x,l+=a.y;for(u=(u/s-e)*i,l=(l/s-t)*i,o=0;o<s;++o)a=n[o],a.x-=u,a.y-=l}return r.initialize=function(o){n=o},r.x=function(o){return arguments.length?(e=+o,r):e},r.y=function(o){return arguments.length?(t=+o,r):t},r.strength=function(o){return arguments.length?(i=+o,r):i},r}function Yq(e){const t=+this._x.call(null,e),n=+this._y.call(null,e);return oD(this.cover(t,n),t,n,e)}function oD(e,t,n,i){if(isNaN(t)||isNaN(n))return e;var r,o=e._root,s={data:i},a=e._x0,u=e._y0,l=e._x1,c=e._y1,f,d,h,g,p,m,y,x;if(!o)return e._root=s,e;for(;o.length;)if((p=t>=(f=(a+l)/2))?a=f:l=f,(m=n>=(d=(u+c)/2))?u=d:c=d,r=o,!(o=o[y=m<<1|p]))return r[y]=s,e;if(h=+e._x.call(null,o.data),g=+e._y.call(null,o.data),t===h&&n===g)return s.next=o,r?r[y]=s:e._root=s,e;do r=r?r[y]=new Array(4):e._root=new Array(4),(p=t>=(f=(a+l)/2))?a=f:l=f,(m=n>=(d=(u+c)/2))?u=d:c=d;while((y=m<<1|p)===(x=(g>=d)<<1|h>=f));return r[x]=o,r[y]=s,e}function Xq(e){var t,n,i=e.length,r,o,s=new Array(i),a=new Array(i),u=1/0,l=1/0,c=-1/0,f=-1/0;for(n=0;n<i;++n)isNaN(r=+this._x.call(null,t=e[n]))||isNaN(o=+this._y.call(null,t))||(s[n]=r,a[n]=o,r<u&&(u=r),r>c&&(c=r),o<l&&(l=o),o>f&&(f=o));if(u>c||l>f)return this;for(this.cover(u,l).cover(c,f),n=0;n<i;++n)oD(this,s[n],a[n],e[n]);return this}function Kq(e,t){if(isNaN(e=+e)||isNaN(t=+t))return this;var n=this._x0,i=this._y0,r=this._x1,o=this._y1;if(isNaN(n))r=(n=Math.floor(e))+1,o=(i=Math.floor(t))+1;else{for(var s=r-n||1,a=this._root,u,l;n>e||e>=r||i>t||t>=o;)switch(l=(t<i)<<1|e<n,u=new Array(4),u[l]=a,a=u,s*=2,l){case 0:r=n+s,o=i+s;break;case 1:n=r-s,o=i+s;break;case 2:r=n+s,i=o-s;break;case 3:n=r-s,i=o-s;break}this._root&&this._root.length&&(this._root=a)}return this._x0=n,this._y0=i,this._x1=r,this._y1=o,this}function Zq(){var e=[];return this.visit(function(t){if(!t.length)do e.push(t.data);while(t=t.next)}),e}function Qq(e){return arguments.length?this.cover(+e[0][0],+e[0][1]).cover(+e[1][0],+e[1][1]):isNaN(this._x0)?void 0:[[this._x0,this._y0],[this._x1,this._y1]]}function Yt(e,t,n,i,r){this.node=e,this.x0=t,this.y0=n,this.x1=i,this.y1=r}function Jq(e,t,n){var i,r=this._x0,o=this._y0,s,a,u,l,c=this._x1,f=this._y1,d=[],h=this._root,g,p;for(h&&d.push(new Yt(h,r,o,c,f)),n==null?n=1/0:(r=e-n,o=t-n,c=e+n,f=t+n,n*=n);g=d.pop();)if(!(!(h=g.node)||(s=g.x0)>c||(a=g.y0)>f||(u=g.x1)<r||(l=g.y1)<o))if(h.length){var m=(s+u)/2,y=(a+l)/2;d.push(new Yt(h[3],m,y,u,l),new Yt(h[2],s,y,m,l),new Yt(h[1],m,a,u,y),new Yt(h[0],s,a,m,y)),(p=(t>=y)<<1|e>=m)&&(g=d[d.length-1],d[d.length-1]=d[d.length-1-p],d[d.length-1-p]=g)}else{var x=e-+this._x.call(null,h.data),b=t-+this._y.call(null,h.data),v=x*x+b*b;if(v<n){var w=Math.sqrt(n=v);r=e-w,o=t-w,c=e+w,f=t+w,i=h.data}}return i}function eW(e){if(isNaN(c=+this._x.call(null,e))||isNaN(f=+this._y.call(null,e)))return this;var t,n=this._root,i,r,o,s=this._x0,a=this._y0,u=this._x1,l=this._y1,c,f,d,h,g,p,m,y;if(!n)return this;if(n.length)for(;;){if((g=c>=(d=(s+u)/2))?s=d:u=d,(p=f>=(h=(a+l)/2))?a=h:l=h,t=n,!(n=n[m=p<<1|g]))return this;if(!n.length)break;(t[m+1&3]||t[m+2&3]||t[m+3&3])&&(i=t,y=m)}for(;n.data!==e;)if(r=n,!(n=n.next))return this;return(o=n.next)&&delete n.next,r?(o?r.next=o:delete r.next,this):t?(o?t[m]=o:delete t[m],(n=t[0]||t[1]||t[2]||t[3])&&n===(t[3]||t[2]||t[1]||t[0])&&!n.length&&(i?i[y]=n:this._root=n),this):(this._root=o,this)}function tW(e){for(var t=0,n=e.length;t<n;++t)this.remove(e[t]);return this}function nW(){return this._root}function iW(){var e=0;return this.visit(function(t){if(!t.length)do++e;while(t=t.next)}),e}function rW(e){var t=[],n,i=this._root,r,o,s,a,u;for(i&&t.push(new Yt(i,this._x0,this._y0,this._x1,this._y1));n=t.pop();)if(!e(i=n.node,o=n.x0,s=n.y0,a=n.x1,u=n.y1)&&i.length){var l=(o+a)/2,c=(s+u)/2;(r=i[3])&&t.push(new Yt(r,l,c,a,u)),(r=i[2])&&t.push(new Yt(r,o,c,l,u)),(r=i[1])&&t.push(new Yt(r,l,s,a,c)),(r=i[0])&&t.push(new Yt(r,o,s,l,c))}return this}function oW(e){var t=[],n=[],i;for(this._root&&t.push(new Yt(this._root,this._x0,this._y0,this._x1,this._y1));i=t.pop();){var r=i.node;if(r.length){var o,s=i.x0,a=i.y0,u=i.x1,l=i.y1,c=(s+u)/2,f=(a+l)/2;(o=r[0])&&t.push(new Yt(o,s,a,c,f)),(o=r[1])&&t.push(new Yt(o,c,a,u,f)),(o=r[2])&&t.push(new Yt(o,s,f,c,l)),(o=r[3])&&t.push(new Yt(o,c,f,u,l))}n.push(i)}for(;i=n.pop();)e(i.node,i.x0,i.y0,i.x1,i.y1);return this}function sW(e){return e[0]}function aW(e){return arguments.length?(this._x=e,this):this._x}function uW(e){return e[1]}function lW(e){return arguments.length?(this._y=e,this):this._y}function Bb(e,t,n){var i=new Ub(t??sW,n??uW,NaN,NaN,NaN,NaN);return e==null?i:i.addAll(e)}function Ub(e,t,n,i,r,o){this._x=e,this._y=t,this._x0=n,this._y0=i,this._x1=r,this._y1=o,this._root=void 0}function NS(e){for(var t={data:e.data},n=t;e=e.next;)n=n.next={data:e.data};return t}var un=Bb.prototype=Ub.prototype;un.copy=function(){var e=new Ub(this._x,this._y,this._x0,this._y0,this._x1,this._y1),t=this._root,n,i;if(!t)return e;if(!t.length)return e._root=NS(t),e;for(n=[{source:t,target:e._root=new Array(4)}];t=n.pop();)for(var r=0;r<4;++r)(i=t.source[r])&&(i.length?n.push({source:i,target:t.target[r]=new Array(4)}):t.target[r]=NS(i));return e};un.add=Yq;un.addAll=Xq;un.cover=Kq;un.data=Zq;un.extent=Qq;un.find=Jq;un.remove=eW;un.removeAll=tW;un.root=nW;un.size=iW;un.visit=rW;un.visitAfter=oW;un.x=aW;un.y=lW;function Kt(e){return function(){return e}}function yo(e){return(e()-.5)*1e-6}function cW(e){return e.x+e.vx}function fW(e){return e.y+e.vy}function dW(e){var t,n,i,r=1,o=1;typeof e!="function"&&(e=Kt(e==null?1:+e));function s(){for(var l,c=t.length,f,d,h,g,p,m,y=0;y<o;++y)for(f=Bb(t,cW,fW).visitAfter(a),l=0;l<c;++l)d=t[l],p=n[d.index],m=p*p,h=d.x+d.vx,g=d.y+d.vy,f.visit(x);function x(b,v,w,S,_){var E=b.data,k=b.r,A=p+k;if(E){if(E.index>d.index){var $=h-E.x-E.vx,D=g-E.y-E.vy,M=$*$+D*D;M<A*A&&($===0&&($=yo(i),M+=$*$),D===0&&(D=yo(i),M+=D*D),M=(A-(M=Math.sqrt(M)))/M*r,d.vx+=($*=M)*(A=(k*=k)/(m+k)),d.vy+=(D*=M)*A,E.vx-=$*(A=1-A),E.vy-=D*A)}return}return v>h+A||S<h-A||w>g+A||_<g-A}}function a(l){if(l.data)return l.r=n[l.data.index];for(var c=l.r=0;c<4;++c)l[c]&&l[c].r>l.r&&(l.r=l[c].r)}function u(){if(t){var l,c=t.length,f;for(n=new Array(c),l=0;l<c;++l)f=t[l],n[f.index]=+e(f,l,t)}}return s.initialize=function(l,c){t=l,i=c,u()},s.iterations=function(l){return arguments.length?(o=+l,s):o},s.strength=function(l){return arguments.length?(r=+l,s):r},s.radius=function(l){return arguments.length?(e=typeof l=="function"?l:Kt(+l),u(),s):e},s}function hW(e){return e.index}function RS(e,t){var n=e.get(t);if(!n)throw new Error("node not found: "+t);return n}function gW(e){var t=hW,n=f,i,r=Kt(30),o,s,a,u,l,c=1;e==null&&(e=[]);function f(m){return 1/Math.min(a[m.source.index],a[m.target.index])}function d(m){for(var y=0,x=e.length;y<c;++y)for(var b=0,v,w,S,_,E,k,A;b<x;++b)v=e[b],w=v.source,S=v.target,_=S.x+S.vx-w.x-w.vx||yo(l),E=S.y+S.vy-w.y-w.vy||yo(l),k=Math.sqrt(_*_+E*E),k=(k-o[b])/k*m*i[b],_*=k,E*=k,S.vx-=_*(A=u[b]),S.vy-=E*A,w.vx+=_*(A=1-A),w.vy+=E*A}function h(){if(s){var m,y=s.length,x=e.length,b=new Map(s.map((w,S)=>[t(w,S,s),w])),v;
7for(m=0,a=new Array(y);m<x;++m)v=e[m],v.index=m,typeof v.source!="object"&&(v.source=RS(b,v.source)),typeof v.target!="object"&&(v.target=RS(b,v.target)),a[v.source.index]=(a[v.source.index]||0)+1,a[v.target.index]=(a[v.target.index]||0)+1;for(m=0,u=new Array(x);m<x;++m)v=e[m],u[m]=a[v.source.index]/(a[v.source.index]+a[v.target.index]);i=new Array(x),g(),o=new Array(x),p()}}function g(){if(s)for(var m=0,y=e.length;m<y;++m)i[m]=+n(e[m],m,e)}function p(){if(s)for(var m=0,y=e.length;m<y;++m)o[m]=+r(e[m],m,e)}return d.initialize=function(m,y){s=m,l=y,h()},d.links=function(m){return arguments.length?(e=m,h(),d):e},d.id=function(m){return arguments.length?(t=m,d):t},d.iterations=function(m){return arguments.length?(c=+m,d):c},d.strength=function(m){return arguments.length?(n=typeof m=="function"?m:Kt(+m),g(),d):n},d.distance=function(m){return arguments.length?(r=typeof m=="function"?m:Kt(+m),p(),d):r},d}var pW={value:()=>{}};function sD(){for(var e=0,t=arguments.length,n={},i;e<t;++e){if(!(i=arguments[e]+"")||i in n||/[\s.]/.test(i))throw new Error("illegal type: "+i);n[i]=[]}return new ad(n)}function ad(e){this._=e}function mW(e,t){return e.trim().split(/^|\s+/).map(function(n){var i="",r=n.indexOf(".");if(r>=0&&(i=n.slice(r+1),n=n.slice(0,r)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:i}})}ad.prototype=sD.prototype={constructor:ad,on:function(e,t){var n=this._,i=mW(e+"",n),r,o=-1,s=i.length;if(arguments.length<2){for(;++o<s;)if((r=(e=i[o]).type)&&(r=yW(n[r],e.name)))return r;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++o<s;)if(r=(e=i[o]).type)n[r]=OS(n[r],e.name,t);else if(t==null)for(r in n)n[r]=OS(n[r],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new ad(e)},call:function(e,t){if((r=arguments.length-2)>0)for(var n=new Array(r),i=0,r,o;i<r;++i)n[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(o=this._[e],i=0,r=o.length;i<r;++i)o[i].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var i=this._[e],r=0,o=i.length;r<o;++r)i[r].value.apply(t,n)}};function yW(e,t){for(var n=0,i=e.length,r;n<i;++n)if((r=e[n]).name===t)return r.value}function OS(e,t,n){for(var i=0,r=e.length;i<r;++i)if(e[i].name===t){e[i]=pW,e=e.slice(0,i).concat(e.slice(i+1));break}return n!=null&&e.push({name:t,value:n}),e}var ou=0,Sl=0,Ju=0,aD=1e3,Sh,El,Eh=0,Ps=0,Lg=0,ic=typeof performance=="object"&&performance.now?performance:Date,uD=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function jb(){return Ps||(uD(xW),Ps=ic.now()+Lg)}function xW(){Ps=0}function kh(){this._call=this._time=this._next=null}kh.prototype=lD.prototype={constructor:kh,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?jb():+n)+(t==null?0:+t),!this._next&&El!==this&&(El?El._next=this:Sh=this,El=this),this._call=e,this._time=n,k1()},stop:function(){this._call&&(this._call=null,this._time=1/0,k1())}};function lD(e,t,n){var i=new kh;return i.restart(e,t,n),i}function bW(){jb(),++ou;for(var e=Sh,t;e;)(t=Ps-e._time)>=0&&e._call.call(void 0,t),e=e._next;--ou}function zS(){Ps=(Eh=ic.now())+Lg,ou=Sl=0;try{bW()}finally{ou=0,wW(),Ps=0}}function vW(){var e=ic.now(),t=e-Eh;t>aD&&(Lg-=t,Eh=e)}function wW(){for(var e,t=Sh,n,i=1/0;t;)t._call?(i>t._time&&(i=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Sh=n);El=e,k1(i)}function k1(e){if(!ou){Sl&&(Sl=clearTimeout(Sl));var t=e-Ps;t>24?(e<1/0&&(Sl=setTimeout(zS,e-ic.now()-Lg)),Ju&&(Ju=clearInterval(Ju))):(Ju||(Eh=ic.now(),Ju=setInterval(vW,aD)),ou=1,uD(zS))}}function _W(e,t,n){var i=new kh,r=t;return t==null?(i.restart(e,t,n),i):(i._restart=i.restart,i.restart=function(o,s,a){s=+s,a=a==null?jb():+a,i._restart(function u(l){l+=r,i._restart(u,r+=s,a),o(l)},s,a)},i.restart(e,t,n),i)}const SW=1664525,EW=1013904223,PS=4294967296;function kW(){let e=1;return()=>(e=(SW*e+EW)%PS)/PS}function $W(e){return e.x}function AW(e){return e.y}var CW=10,MW=Math.PI*(3-Math.sqrt(5));function FW(e){var t,n=1,i=.001,r=1-Math.pow(i,1/300),o=0,s=.6,a=new Map,u=lD(f),l=sD("tick","end"),c=kW();e==null&&(e=[]);function f(){d(),l.call("tick",t),n<i&&(u.stop(),l.call("end",t))}function d(p){var m,y=e.length,x;p===void 0&&(p=1);for(var b=0;b<p;++b)for(n+=(o-n)*r,a.forEach(function(v){v(n)}),m=0;m<y;++m)x=e[m],x.fx==null?x.x+=x.vx*=s:(x.x=x.fx,x.vx=0),x.fy==null?x.y+=x.vy*=s:(x.y=x.fy,x.vy=0);return t}function h(){for(var p=0,m=e.length,y;p<m;
vendor: 1,669 bytes, line 7
7++p){if(y=e[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 x=CW*Math.sqrt(.5+p),b=p*MW;y.x=x*Math.cos(b),y.y=x*Math.sin(b)}(isNaN(y.vx)||isNaN(y.vy))&&(y.vx=y.vy=0)}}function g(p){return p.initialize&&p.initialize(e,c),p}return h(),t={tick:d,restart:function(){return u.restart(f),t},stop:function(){return u.stop(),t},nodes:function(p){return arguments.length?(e=p,h(),a.forEach(g),t):e},alpha:function(p){return arguments.length?(n=+p,t):n},alphaMin:function(p){return arguments.length?(i=+p,t):i},alphaDecay:function(p){return arguments.length?(r=+p,t):+r},alphaTarget:function(p){return arguments.length?(o=+p,t):o},velocityDecay:function(p){return arguments.length?(s=1-p,t):1-s},randomSource:function(p){return arguments.length?(c=p,a.forEach(g),t):c},force:function(p,m){return arguments.length>1?(m==null?a.delete(p):a.set(p,g(m)),t):a.get(p)},find:function(p,m,y){var x=0,b=e.length,v,w,S,_,E;for(y==null?y=1/0:y*=y,x=0;x<b;++x)_=e[x],v=p-_.x,w=m-_.y,S=v*v+w*w,S<y&&(E=_,y=S);return E},on:function(p,m){return arguments.length>1?(l.on(p,m),t):l.on(p)}}}function DW(){var e,t,n,i,r=Kt(-30),o,s=1,a=1/0,u=.81;function l(h){var g,p=e.length,m=Bb(e,$W,AW).visitAfter(f);for(i=h,g=0;g<p;++g)t=e[g],m.visit(d)}function c(){if(e){var h,g=e.length,p;for(o=new Array(g),h=0;h<g;++h)p=e[h],o[p.index]=+r(p,h,e)}}function f(h){var g=0,p,m,y=0,x,b,v;if(h.length){for(x=b=v=0;v<4;++v)(p=h[v])&&(m=Math.abs(p.value))&&(g+=p.value,y+=m,x+=m*p.x,b+=m*p.y);h.x=x/y,h.y=b/y}else{p=h,p.x=p.data.x,p.y=p.data.y;do g+=o[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-t.x,x=h.y-t.y,b=m-g,v=y*y+x*x;
7if(b*b/u<v)return v<a&&(y===0&&(y=yo(n),v+=y*y),x===0&&(x=yo(n),v+=x*x),v<s&&(v=Math.sqrt(s*v)),t.vx+=y*h.value*i/v,t.vy+=x*h.value*i/v),!0;if(h.length||v>=a)return;(h.data!==t||h.next)&&(y===0&&(y=yo(n),v+=y*y),x===0&&(x=yo(n),v+=x*x),v<s&&(v=Math.sqrt(s*v)));do h.data!==t&&(b=o[h.data.index]*i/v,t.vx+=y*b,t.vy+=x*b);while(h=h.next)}return l.initialize=function(h,g){e=h,n=g,c()},l.strength=function(h){return arguments.length?(r=typeof h=="function"?h:Kt(+h),c(),l):r},l.distanceMin=function(h){return arguments.length?(s=h*h,l):Math.sqrt(s)},l.distanceMax=function(h){return arguments.length?(a=h*h,l):Math.sqrt(a)},l.theta=function(h){return arguments.length?(u=h*h,l):Math.sqrt(u)},l}function TW(e){var t=Kt(.1),n,i,r;typeof e!="function"&&(e=Kt(e==null?0:+e));function o(a){for(var u=0,l=n.length,c;u<l;++u)c=n[u],c.vx+=(r[u]-c.x)*i[u]*a}function s(){if(n){var a,u=n.length;for(i=new Array(u),r=new Array(u),a=0;a<u;++a)i[a]=isNaN(r[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return o.initialize=function(a){n=a,s()},o.strength=function(a){return arguments.length?(t=typeof a=="function"?a:Kt(+a),s(),o):t},o.x=function(a){return arguments.length?(e=typeof a=="function"?a:Kt(+a),s(),o):e},o}function NW(e){var t=Kt(.1),n,i,r;typeof e!="function"&&(e=Kt(e==null?0:+e));function o(a){for(var u=0,l=n.length,c;u<l;++u)c=n[u],c.vy+=(r[u]-c.y)*i[u]*a}function s(){if(n){var a,u=n.length;for(i=new Array(u),r=new Array(u),a=0;a<u;++a)i[a]=isNaN(r[a]=+e(n[a],a,n))?0:+t(n[a],a,n)}}return o.initialize=function(a){n=a,s()},o.strength=function(a){return arguments.length?(t=typeof a=="function"?a:Kt(+a),s(),o):t},o.y=function(a){return arguments.length?(e=typeof a=="function"?a:Kt(+a),s(),o):e},o}const LS={center:Vq,collide:dW,nbody:DW,link:gW,x:TW,y:NW},kl="forces",$1=["alpha","alphaMin","alphaTarget","velocityDecay","forces"],RW=["static","iterations"],cD=["x","y","vx","vy"];function qb(e){F.call(this,null,e)}qb.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:cD}]};q(qb,F,{transform(e,t){var n=this.value,i=t.changed(t.ADD_REM),r=e.modified($1),o=e.iterations||300;if(n?(i&&(t.modifies("index"),n.nodes(t.source)),(r||t.changed(t.MOD))&&fD(n,e,0,t)):(this.value=n=zW(t.source,e),n.on("tick",OW(t.dataflow,this)),e.static||(i=!0,n.tick()),t.modifies("index")),r||i||e.modified(RW)||t.changed()&&e.restart){if(n.alpha(Math.max(n.alpha(),e.alpha||1)).alphaDecay(1-Math.pow(n.alphaMin(),1/o)),e.static)for(n.stop();--o>=0;)n.tick();else if(n.stopped()&&n.restart(),!i)return t.StopPropagation}return this.finish(e,t)},finish(e,t){const n=t.dataflow;for(let a=this._argops,u=0,l=a.length,c;u<l;++u)if(c=a[u],!(c.name!==kl||c.op._argval.force!=="link")){for(var i=c.op._argops,r=0,o=i.length,s;r<o;++r)if(i[r].name==="links"&&(s=i[r].op.source)){n.pulse(s,n.changeset().reflow());break}}return t.reflow(e.modified()).modifies(cD)}});function OW(e,t){return()=>e.touch(t).run()}function zW(e,t){const n=FW(e),i=n.stop,r=n.restart;let o=!1;return n.stopped=()=>o,n.restart=()=>(o=!1,r()),n.stop=()=>(o=!0,i()),fD(n,t,!0).on("end",()=>o=!0)}function fD(e,t,n,i){var r=H(t.forces),o,s,a,u;for(o=0,s=$1.length;o<s;++o)a=$1[o],a!==kl&&t.modified(a)&&e[a](t[a]);for(o=0,s=r.length;o<s;++o)u=kl+o,a=n||t.modified(kl,o)?LW(r[o]):i&&PW(r[o],i)?e.force(u):null,a&&e.force(u,a);for(s=e.numForces||0;o<s;++o)e.force(kl+o,null);return e.numForces=r.length,e}function PW(e,t){var n,i;for(n in e)if(ce(i=e[n])&&t.modified(Qt(i)))return 1;return 0}function LW(e){var t,n;X(LS,e.force)||R("Unrecognized force: "+e.force),t=LS[e.force]();for(n in e)ce(t[n])&&IW(t[n],e[n],e);return t}function IW(e,t,n){e(ce(t)?i=>t(i,n):t)}const BW=Object.freeze(Object.defineProperty({__proto__:null,force:qb},Symbol.toStringTag,{value:"Module"}));function UW(e,t){return e.parent===t.parent?1:2}function jW(e){return e.reduce(qW,0)/e.length}function qW(e,t){return e+t.x}function WW(e){return 1+e.reduce(HW,0)}function HW(e,t){return Math.max(e,t.y)}function GW(e){for(var t;t=e.children;)e=t[0];return e}function VW(e){for(var t;t=e.children;)e=t[t.length-1];return e}function YW(){var e=UW,t=1,n=1,i=!1;function r(o){var s,a=0;o.eachAfter(function(d){var h=d.children;h?(d.x=jW(h),d.y=WW(h)):(d.x=s?a+=e(d,s):0,d.y=0,s=d)});var u=GW(o),l=VW(o),c=u.x-e(u,l)/2,f=l.x+e(l,u)/2;return o.eachAfter(i?function(d){d.x=(d.x-o.x)*t,d.y=(o.y-d.y)*n}:function(d){d.x=(d.x-c)/(f-c)*t,d.y=(1-(o.y?d.y/o.y:1))*n})}return r.separation=function(o){return arguments.length?(e=o,r):e},r.size=function(o){return arguments.length?(i=!1,t=+o[0],n=+o[1],r):i?null:[t,n]},r.nodeSize=function(o){return arguments.length?(i=!0,t=+o[0],n=+o[1],r):i?[t,n]:null},r}function XW(e){var t=0,n=e.children,i=n&&n.length;if(!i)t=1;else for(;--i>=0;)t+=n[i].value;e.value=t}function KW(){return this.eachAfter(XW)}function ZW(e,t){let n=-1;for(const i of this)e.call(t,i,++n,this);return this}function QW(e,t){for(var n=this,i=[n],r,o,s=-1;n=i.pop();)if(e.call(t,n,++s,this),r=n.children)for(o=r.length-1;o>=0;--o)i.push(r[o]);return this}function JW(e,t){for(var n=this,i=[n],r=[],o,s,a,u=-1;n=i.pop();)if(r.push(n),o=n.children)for(s=0,a=o.length;s<a;++s)i.push(o[s]);for(;n=r.pop();)e.call(t,n,++u,this);return this}function eH(e,t){let n=-1;for(const i of this)if(e.call(t,i,++n,this))return i}function tH(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,i=t.children,r=i&&i.length;--r>=0;)n+=i[r].value;t.value=n})}function nH(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function iH(e){for(var t=this,n=rH(t,e),i=[t];t!==n;)t=t.parent,i.push(t);for(var r=i.length;e!==n;)i.splice(r,0,e),e=e.parent;return i}function rH(e,t){if(e===t)return e;var n=e.ancestors(),i=t.ancestors(),r=null;for(e=n.pop(),t=i.pop();e===t;)r=e,e=n.pop(),t=i.pop();return r}function oH(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function sH(){return Array.from(this)}function aH(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function uH(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*lH(){var e=this,t,n=[e],i,r,o;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,i=e.children)for(r=0,o=i.length;r<o;++r)n.push(i[r]);while(n.length)}function Wb(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=dH)):t===void 0&&(t=fH);for(var n=new su(e),i,r=[n],o,s,a,u;i=r.pop();)if((s=t(i.data))&&(u=(s=Array.from(s)).length))for(i.children=s,a=u-1;a>=0;--a)r.push(o=s[a]=new su(s[a])),o.parent=i,o.depth=i.depth+1;return n.eachBefore(dD)}function cH(){return Wb(this).eachBefore(hH)}function fH(e){return e.children}function dH(e){return Array.isArray(e)?e[1]:null}function hH(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function dD(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function su(e){this.data=e,this.depth=this.height=0,this.parent=null}su.prototype=Wb.prototype={constructor:su,count:KW,each:ZW,eachAfter:JW,eachBefore:QW,find:eH,sum:tH,sort:nH,path:iH,ancestors:oH,descendants:sH,leaves:aH,links:uH,copy:cH,[Symbol.iterator]:lH};function ud(e){return e==null?null:hD(e)}function hD(e){if(typeof e!="function")throw new Error;return e}function fs(){return 0}function Ca(e){return function(){return e}}const gH=1664525,pH=1013904223,IS=4294967296;function mH(){let e=1;return()=>(e=(gH*e+pH)%IS)/IS}function yH(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function xH(e,t){let n=e.length,i,r;for(;n;)r=t()*n--|0,i=e[n],e[n]=e[r],e[r]=i;return e}function bH(e,t){for(var n=0,i=(e=xH(Array.from(e),t)).length,r=[],o,s;n<i;)o=e[n],s&&gD(s,o)?++n:(s=wH(r=vH(r,o)),n=0);return s}function vH(e,t){var n,i;if(Am(t,e))return[t];for(n=0;n<e.length;
vendor: 4,890 bytes, line 7
7++n)if(Rf(t,e[n])&&Am($l(e[n],t),e))return[e[n],t];for(n=0;n<e.length-1;++n)for(i=n+1;i<e.length;++i)if(Rf($l(e[n],e[i]),t)&&Rf($l(e[n],t),e[i])&&Rf($l(e[i],t),e[n])&&Am(pD(e[n],e[i],t),e))return[e[n],e[i],t];throw new Error}function Rf(e,t){var n=e.r-t.r,i=t.x-e.x,r=t.y-e.y;return n<0||n*n<i*i+r*r}function gD(e,t){var n=e.r-t.r+Math.max(e.r,t.r,1)*1e-9,i=t.x-e.x,r=t.y-e.y;return n>0&&n*n>i*i+r*r}function Am(e,t){for(var n=0;n<t.length;++n)if(!gD(e,t[n]))return!1;return!0}function wH(e){switch(e.length){case 1:return _H(e[0]);case 2:return $l(e[0],e[1]);case 3:return pD(e[0],e[1],e[2])}}function _H(e){return{x:e.x,y:e.y,r:e.r}}function $l(e,t){var n=e.x,i=e.y,r=e.r,o=t.x,s=t.y,a=t.r,u=o-n,l=s-i,c=a-r,f=Math.sqrt(u*u+l*l);return{x:(n+o+u/f*c)/2,y:(i+s+l/f*c)/2,r:(f+r+a)/2}}function pD(e,t,n){var i=e.x,r=e.y,o=e.r,s=t.x,a=t.y,u=t.r,l=n.x,c=n.y,f=n.r,d=i-s,h=i-l,g=r-a,p=r-c,m=u-o,y=f-o,x=i*i+r*r-o*o,b=x-s*s-a*a+u*u,v=x-l*l-c*c+f*f,w=h*g-d*p,S=(g*v-p*b)/(w*2)-i,_=(p*m-g*y)/w,E=(h*b-d*v)/(w*2)-r,k=(d*y-h*m)/w,A=_*_+k*k-1,$=2*(o+S*_+E*k),D=S*S+E*E-o*o,M=-(Math.abs(A)>1e-6?($+Math.sqrt($*$-4*A*D))/(2*A):D/$);return{x:i+S+_*M,y:r+E+k*M,r:M}}function BS(e,t,n){var i=e.x-t.x,r,o,s=e.y-t.y,a,u,l=i*i+s*s;l?(o=t.r+n.r,o*=o,u=e.r+n.r,u*=u,o>u?(r=(l+u-o)/(2*l),a=Math.sqrt(Math.max(0,u/l-r*r)),n.x=e.x-r*i-a*s,n.y=e.y-r*s+a*i):(r=(l+o-u)/(2*l),a=Math.sqrt(Math.max(0,o/l-r*r)),n.x=t.x+r*i-a*s,n.y=t.y+r*s+a*i)):(n.x=t.x+n.r,n.y=t.y)}function US(e,t){var n=e.r+t.r-1e-6,i=t.x-e.x,r=t.y-e.y;return n>0&&n*n>i*i+r*r}function jS(e){var t=e._,n=e.next._,i=t.r+n.r,r=(t.x*n.r+n.x*t.r)/i,o=(t.y*n.r+n.y*t.r)/i;return r*r+o*o}function Of(e){this._=e,this.next=null,this.previous=null}function SH(e,t){if(!(o=(e=yH(e)).length))return 0;var n,i,r,o,s,a,u,l,c,f,d;if(n=e[0],n.x=0,n.y=0,!(o>1))return n.r;if(i=e[1],n.x=-i.r,i.x=n.r,i.y=0,!(o>2))return n.r+i.r;BS(i,n,r=e[2]),n=new Of(n),i=new Of(i),r=new Of(r),n.next=r.previous=i,i.next=n.previous=r,r.next=i.previous=n;e:for(u=3;u<o;++u){BS(n._,i._,r=e[u]),r=new Of(r),l=i.next,c=n.previous,f=i._.r,d=n._.r;do if(f<=d){if(US(l._,r._)){i=l,n.next=i,i.previous=n,--u;continue e}f+=l._.r,l=l.next}else{if(US(c._,r._)){n=c,n.next=i,i.previous=n,--u;continue e}d+=c._.r,c=c.previous}while(l!==c.next);for(r.previous=n,r.next=i,n.next=i.previous=i=r,s=jS(n);(r=r.next)!==i;)(a=jS(r))<s&&(n=r,s=a);i=n.next}for(n=[i._],r=i;(r=r.next)!==i;)n.push(r._);for(r=bH(n,t),u=0;u<o;++u)n=e[u],n.x-=r.x,n.y-=r.y;return r.r}function EH(e){return Math.sqrt(e.value)}function kH(){var e=null,t=1,n=1,i=fs;function r(o){const s=mH();return o.x=t/2,o.y=n/2,e?o.eachBefore(qS(e)).eachAfter(Cm(i,.5,s)).eachBefore(WS(1)):o.eachBefore(qS(EH)).eachAfter(Cm(fs,1,s)).eachAfter(Cm(i,o.r/Math.min(t,n),s)).eachBefore(WS(Math.min(t,n)/(2*o.r))),o}return r.radius=function(o){return arguments.length?(e=ud(o),r):e},r.size=function(o){return arguments.length?(t=+o[0],n=+o[1],r):[t,n]},r.padding=function(o){return arguments.length?(i=typeof o=="function"?o:Ca(+o),r):i},r}function qS(e){return function(t){t.children||(t.r=Math.max(0,+e(t)||0))}}function Cm(e,t,n){return function(i){if(r=i.children){var r,o,s=r.length,a=e(i)*t||0,u;if(a)for(o=0;o<s;++o)r[o].r+=a;if(u=SH(r,n),a)for(o=0;o<s;++o)r[o].r-=a;i.r=u+a}}}function WS(e){return function(t){var n=t.parent;t.r*=e,n&&(t.x=n.x+e*t.x,t.y=n.y+e*t.y)}}function mD(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function Bc(e,t,n,i,r){for(var o=e.children,s,a=-1,u=o.length,l=e.value&&(i-t)/e.value;++a<u;)s=o[a],s.y0=n,s.y1=r,s.x0=t,s.x1=t+=s.value*l}function $H(){var e=1,t=1,n=0,i=!1;function r(s){var a=s.height+1;return s.x0=s.y0=n,s.x1=e,s.y1=t/a,s.eachBefore(o(t,a)),i&&s.eachBefore(mD),s}function o(s,a){return function(u){u.children&&Bc(u,u.x0,s*(u.depth+1)/a,u.x1,s*(u.depth+2)/a);var l=u.x0,c=u.y0,f=u.x1-n,d=u.y1-n;f<l&&(l=f=(l+f)/2),d<c&&(c=d=(c+d)/2),u.x0=l,u.y0=c,u.x1=f,u.y1=d}}return r.round=function(s){return arguments.length?(i=!!s,r):i},r.size=function(s){return arguments.length?(e=+s[0],t=+s[1],r):[e,t]},r.padding=function(s){return arguments.length?(n=+s,r):n},r}var AH={depth:-1},HS={},Mm={};function CH(e){return e.id}function MH(e){return e.parentId}function GS(){var e=CH,t=MH,n;function i(r){var o=Array.from(r),s=e,a=t,u,l,c,f,d,h,g,p,m=new Map;if(n!=null){const y=o.map((v,w)=>FH(n(v,w,r))),x=y.map(VS),b=new Set(y).add("");for(const v of x)b.has(v)||(b.add(v),y.push(v),x.push(VS(v)),o.push(Mm));s=(v,w)=>y[w],a=(v,w)=>x[w]}for(c=0,u=o.length;c<u;++c)l=o[c],h=o[c]=new su(l),(g=s(l,c,r))!=null&&(g+="")&&(p=h.id=g,m.set(p,m.has(p)?HS:h)),(g=a(l,c,r))!=null&&(g+="")&&(h.parent=g);for(c=0;c<u;++c)if(h=o[c],g=h.parent){if(d=m.get(g),!d)throw new Error("missing: "+g);if(d===HS)throw new Error("ambiguous: "+g);d.children?d.children.push(h):d.children=[h],h.parent=d}else{if(f)throw new Error("multiple roots");f=h}if(!f)throw new Error("no root");
7if(n!=null){for(;f.data===Mm&&f.children.length===1;)f=f.children[0],--u;for(let y=o.length-1;y>=0&&(h=o[y],h.data===Mm);--y)h.data=null}if(f.parent=AH,f.eachBefore(function(y){y.depth=y.parent.depth+1,--u}).eachBefore(dD),f.parent=null,u>0)throw new Error("cycle");return f}return i.id=function(r){return arguments.length?(e=ud(r),i):e},i.parentId=function(r){return arguments.length?(t=ud(r),i):t},i.path=function(r){return arguments.length?(n=ud(r),i):n},i}function FH(e){e=`${e}`;let t=e.length;return A1(e,t-1)&&!A1(e,t-2)&&(e=e.slice(0,-1)),e[0]==="/"?e:`/${e}`}function VS(e){let t=e.length;if(t<2)return"";for(;--t>1&&!A1(e,t););return e.slice(0,t)}function A1(e,t){if(e[t]==="/"){let n=0;for(;t>0&&e[--t]==="\\";)++n;if((n&1)===0)return!0}return!1}function DH(e,t){return e.parent===t.parent?1:2}function Fm(e){var t=e.children;return t?t[0]:e.t}function Dm(e){var t=e.children;return t?t[t.length-1]:e.t}function TH(e,t,n){var i=n/(t.i-e.i);t.c-=i,t.s+=n,e.c+=i,t.z+=n,t.m+=n}function NH(e){for(var t=0,n=0,i=e.children,r=i.length,o;--r>=0;)o=i[r],o.z+=t,o.m+=t,t+=o.s+(n+=o.c)}function RH(e,t,n){return e.a.parent===t.parent?e.a:n}function ld(e,t){this._=e,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=t}ld.prototype=Object.create(su.prototype);function OH(e){for(var t=new ld(e,0),n,i=[t],r,o,s,a;n=i.pop();)if(o=n._.children)for(n.children=new Array(a=o.length),s=a-1;s>=0;--s)i.push(r=n.children[s]=new ld(o[s],s)),r.parent=n;return(t.parent=new ld(null,0)).children=[t],t}function zH(){var e=DH,t=1,n=1,i=null;function r(l){var c=OH(l);if(c.eachAfter(o),c.parent.m=-c.z,c.eachBefore(s),i)l.eachBefore(u);else{var f=l,d=l,h=l;l.eachBefore(function(x){x.x<f.x&&(f=x),x.x>d.x&&(d=x),x.depth>h.depth&&(h=x)});var g=f===d?1:e(f,d)/2,p=g-f.x,m=t/(d.x+g+p),y=n/(h.depth||1);l.eachBefore(function(x){x.x=(x.x+p)*m,x.y=x.depth*y})}return l}function o(l){var c=l.children,f=l.parent.children,d=l.i?f[l.i-1]:null;if(c){NH(l);var h=(c[0].z+c[c.length-1].z)/2;d?(l.z=d.z+e(l._,d._),l.m=l.z-h):l.z=h}else d&&(l.z=d.z+e(l._,d._));l.parent.A=a(l,d,l.parent.A||f[0])}function s(l){l._.x=l.z+l.parent.m,l.m+=l.parent.m}function a(l,c,f){if(c){for(var d=l,h=l,g=c,p=d.parent.children[0],m=d.m,y=h.m,x=g.m,b=p.m,v;g=Dm(g),d=Fm(d),g&&d;)p=Fm(p),h=Dm(h),h.a=l,v=g.z+x-d.z-m+e(g._,d._),v>0&&(TH(RH(g,l,f),l,v),m+=v,y+=v),x+=g.m,m+=d.m,b+=p.m,y+=h.m;g&&!Dm(h)&&(h.t=g,h.m+=x-y),d&&!Fm(p)&&(p.t=d,p.m+=m-b,f=l)}return f}function u(l){l.x*=t,l.y=l.depth*n}return r.separation=function(l){return arguments.length?(e=l,r):e},r.size=function(l){return arguments.length?(i=!1,t=+l[0],n=+l[1],r):i?null:[t,n]},r.nodeSize=function(l){return arguments.length?(i=!0,t=+l[0],n=+l[1],r):i?[t,n]:null},r}function Ig(e,t,n,i,r){for(var o=e.children,s,a=-1,u=o.length,l=e.value&&(r-n)/e.value;++a<u;)s=o[a],s.x0=t,s.x1=i,s.y0=n,s.y1=n+=s.value*l}var yD=(1+Math.sqrt(5))/2;function xD(e,t,n,i,r,o){for(var s=[],a=t.children,u,l,c=0,f=0,d=a.length,h,g,p=t.value,m,y,x,b,v,w,S;c<d;){h=r-n,g=o-i;do m=a[f++].value;while(!m&&f<d);for(y=x=m,w=Math.max(g/h,h/g)/(p*e),S=m*m*w,v=Math.max(x/S,S/y);f<d;++f){if(m+=l=a[f].value,l<y&&(y=l),l>x&&(x=l),S=m*m*w,b=Math.max(x/S,S/y),b>v){m-=l;break}v=b}s.push(u={value:m,dice:h<g,children:a.slice(c,f)}),u.dice?Bc(u,n,i,r,p?i+=g*m/p:o):Ig(u,n,i,p?n+=h*m/p:r,o),p-=m,c=f}return s}const bD=(function e(t){function n(i,r,o,s,a){xD(t,i,r,o,s,a)}return n.ratio=function(i){return e((i=+i)>1?i:1)},n})(yD);function PH(){var e=bD,t=!1,n=1,i=1,r=[0],o=fs,s=fs,a=fs,u=fs,l=fs;function c(d){return d.x0=d.y0=0,d.x1=n,d.y1=i,d.eachBefore(f),r=[0],t&&d.eachBefore(mD),d}function f(d){var h=r[d.depth],g=d.x0+h,p=d.y0+h,m=d.x1-h,y=d.y1-h;m<g&&(g=m=(g+m)/2),y<p&&(p=y=(p+y)/2),d.x0=g,d.y0=p,d.x1=m,d.y1=y,d.children&&(h=r[d.depth+1]=o(d)/2,g+=l(d)-h,p+=s(d)-h,m-=a(d)-h,y-=u(d)-h,m<g&&(g=m=(g+m)/2),y<p&&(p=y=(p+y)/2),e(d,g,p,m,y))}return c.round=function(d){return arguments.length?(t=!!d,c):t},c.size=function(d){return arguments.length?(n=+d[0],i=+d[1],c):[n,i]},c.tile=function(d){return arguments.length?(e=hD(d),c):e},c.padding=function(d){return arguments.length?c.paddingInner(d).paddingOuter(d):c.paddingInner()},c.paddingInner=function(d){return arguments.length?(o=typeof d=="function"?d:Ca(+d),c):o},c.paddingOuter=function(d){return arguments.length?c.paddingTop(d).paddingRight(d).paddingBottom(d).paddingLeft(d):c.paddingTop()},c.paddingTop=function(d){return arguments.length?(s=typeof d=="function"?d:Ca(+d),c):s},c.paddingRight=function(d){return arguments.length?(a=typeof d=="function"?d:Ca(+d),c):a},c.paddingBottom=function(d){return arguments.length?(u=typeof d=="function"?d:Ca(+d),c):u},c.paddingLeft=function(d){return arguments.length?(l=typeof d=="function"?d:Ca(+d),c):l},c}function LH(e,t,n,i,r){var o=e.children,s,a=o.length,u,l=new Array(a+1);for(l[0]=u=s=0;s<a;++s)l[s+1]=u+=o[s].value;c(0,a,e.value,t,n,i,r);function c(f,d,h,g,p,m,y){if(f>=d-1){var x=o[f];x.x0=g,x.y0=p,x.x1=m,x.y1=y;return}for(var b=l[f],v=h/2+b,w=f+1,S=d-1;w<S;){var _=w+S>>>1;l[_]<v?w=_+1:S=_}v-l[w-1]<l[w]-v&&f+1<w&&--w;var E=l[w]-b,k=h-E;if(m-g>y-p){var A=h?(g*k+m*E)/h:m;c(f,w,E,g,p,A,y),c(w,d,k,A,p,m,y)}else{var $=h?(p*k+y*E)/h:y;c(f,w,E,g,p,m,$),c(w,d,k,g,$,m,y)}}}function IH(e,t,n,i,r){(e.depth&1?Ig:Bc)(e,t,n,i,r)}const BH=(function e(t){function n(i,r,o,s,a){if((u=i._squarify)&&u.ratio===t)for(var u,l,c,f,d=-1,h,g=u.length,p=i.value;++d<g;){for(l=u[d],c=l.children,f=l.value=0,h=c.length;f<h;++f)l.value+=c[f].value;l.dice?Bc(l,r,o,s,p?o+=(a-o)*l.value/p:a):Ig(l,r,o,p?r+=(s-r)*l.value/p:s,a),p-=l.value}else i._squarify=u=xD(t,i,r,o,s,a),u.ratio=t}return n.ratio=function(i){return e((i=+i)>1?i:1)},n})(yD);function C1(e,t,n){const i={};return e.each(r=>{const o=r.data;n(o)&&(i[t(o)]=r)}),e.lookup=i,e}function Hb(e){F.call(this,null,e)}Hb.Definition={type:"Nest",metadata:{treesource:!0,changes:!0},params:[{name:"keys",type:"field",array:!0},{name:"generate",type:"boolean"}]};const UH=e=>e.values;
7q(Hb,F,{transform(e,t){t.source||R("Nest transform requires an upstream data source.");var n=e.generate,i=e.modified(),r=t.clone(),o=this.value;return(!o||i||t.changed())&&(o&&o.each(s=>{s.children&&Ny(s.data)&&r.rem.push(s.data)}),this.value=o=Wb({values:H(e.keys).reduce((s,a)=>(s.key(a),s),jH()).entries(r.source)},UH),n&&o.each(s=>{s.children&&(s=Ee(s.data),r.add.push(s),r.source.push(s))}),C1(o,ie,ie)),r.source.root=o,r}});function jH(){const e=[],t={entries:r=>i(n(r,0),0),key:r=>(e.push(r),t)};function n(r,o){if(o>=e.length)return r;const s=r.length,a=e[o++],u={},l={};let c=-1,f,d,h;for(;++c<s;)f=a(d=r[c])+"",(h=u[f])?h.push(d):u[f]=[d];for(f in u)l[f]=n(u[f],o);return l}function i(r,o){if(++o>e.length)return r;const s=[];for(const a in r)s.push({key:a,values:i(r[a],o)});return s}return t}function Kr(e){F.call(this,null,e)}const qH=(e,t)=>e.parent===t.parent?1:2;q(Kr,F,{transform(e,t){(!t.source||!t.source.root)&&R(this.constructor.name+" transform requires a backing tree data source.");const n=this.layout(e.method),i=this.fields,r=t.source.root,o=e.as||i;e.field?r.sum(e.field):r.count(),e.sort&&r.sort(ea(e.sort,s=>s.data)),WH(n,this.params,e),n.separation&&n.separation(e.separation!==!1?qH:bc);try{this.value=n(r)}catch(s){R(s)}return r.each(s=>HH(s,i,o)),t.reflow(e.modified()).modifies(o).modifies("leaf")}});function WH(e,t,n){for(let i,r=0,o=t.length;r<o;++r)i=t[r],i in n&&e[i](n[i])}function HH(e,t,n){const i=e.data,r=t.length-1;for(let o=0;o<r;++o)i[n[o]]=e[t[o]];i[n[r]]=e.children?e.children.length:0}const M1=["x","y","r","depth","children"];function Gb(e){Kr.call(this,e)}Gb.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:M1.length,default:M1}]};q(Gb,Kr,{layout:kH,params:["radius","size","padding"],fields:M1});const F1=["x0","y0","x1","y1","depth","children"];function Vb(e){Kr.call(this,e)}Vb.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:F1.length,default:F1}]};q(Vb,Kr,{layout:$H,params:["size","round","padding"],fields:F1});function Yb(e){F.call(this,null,e)}Yb.Definition={type:"Stratify",metadata:{treesource:!0},params:[{name:"key",type:"field",required:!0},{name:"parentKey",type:"field",required:!0}]};q(Yb,F,{transform(e,t){t.source||R("Stratify transform requires an upstream data source.");let n=this.value;const i=e.modified(),r=t.fork(t.ALL).materialize(t.SOURCE),o=!n||i||t.changed(t.ADD_REM)||t.modified(e.key.fields)||t.modified(e.parentKey.fields);return r.source=r.source.slice(),o&&(n=r.source.length?C1(GS().id(e.key).parentId(e.parentKey)(r.source),e.key,gi):C1(GS()([{}]),e.key,e.key)),r.source.root=this.value=n,r}});const YS={tidy:zH,cluster:YW},D1=["x","y","depth","children"];function Xb(e){Kr.call(this,e)}Xb.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:D1.length,default:D1}]};q(Xb,Kr,{layout(e){const t=e||"tidy";if(X(YS,t))return YS[t]();R("Unrecognized Tree layout method: "+t)},params:["size","nodeSize"],fields:D1});function Kb(e){F.call(this,[],e)}Kb.Definition={type:"TreeLinks",metadata:{tree:!0,generates:!0,changes:!0},params:[]};q(Kb,F,{transform(e,t){const n=this.value,i=t.source&&t.source.root,r=t.fork(t.NO_SOURCE),o={};return i||R("TreeLinks transform requires a tree data source."),t.changed(t.ADD_REM)?(r.rem=n,t.visit(t.SOURCE,s=>o[ie(s)]=1),i.each(s=>{const a=s.data,u=s.parent&&s.parent.data;u&&o[ie(a)]&&o[ie(u)]&&r.add.push(Ee({source:u,target:a}))}),this.value=r.add):t.changed(t.MOD)&&(t.visit(t.MOD,s=>
7o[ie(s)]=1),n.forEach(s=>{(o[ie(s.source)]||o[ie(s.target)])&&r.mod.push(s)})),r}});const XS={binary:LH,dice:Bc,slice:Ig,slicedice:IH,squarify:bD,resquarify:BH},T1=["x0","y0","x1","y1","depth","children"];function Zb(e){Kr.call(this,e)}Zb.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:T1.length,default:T1}]};q(Zb,Kr,{layout(){const e=PH();return e.ratio=t=>{const n=e.tile();n.ratio&&e.tile(n.ratio(t))},e.method=t=>{X(XS,t)?e.tile(XS[t]):R("Unrecognized Treemap layout method: "+t)},e},params:["method","ratio","size","round","padding","paddingInner","paddingOuter","paddingTop","paddingRight","paddingBottom","paddingLeft"],fields:T1});const GH=Object.freeze(Object.defineProperty({__proto__:null,nest:Hb,pack:Gb,partition:Vb,stratify:Yb,tree:Xb,treelinks:Kb,treemap:Zb},Symbol.toStringTag,{value:"Module"})),Tm=4278190080;function VH(e,t){const n=e.bitmap();return(t||[]).forEach(i=>n.set(e(i.boundary[0]),e(i.boundary[3]))),[n,void 0]}function YH(e,t,n,i,r){const o=e.width,s=e.height,a=i||r,u=wo(o,s).getContext("2d"),l=wo(o,s).getContext("2d"),c=a&&wo(o,s).getContext("2d");n.forEach(E=>cd(u,E,!1)),cd(l,t,!1),a&&cd(c,t,!0);const f=Nm(u,o,s),d=Nm(l,o,s),h=a&&Nm(c,o,s),g=e.bitmap(),p=a&&e.bitmap();let m,y,x,b,v,w,S,_;for(y=0;y<s;++y)for(m=0;m<o;++m)v=y*o+m,w=f[v]&Tm,_=d[v]&Tm,S=a&&h[v]&Tm,(w||S||_)&&(x=e(m),b=e(y),!r&&(w||_)&&g.set(x,b),a&&(w||S)&&p.set(x,b));return[g,p]}function Nm(e,t,n){return new Uint32Array(e.getImageData(0,0,t,n).data.buffer)}function cd(e,t,n){if(!t.length)return;const i=t[0].mark.marktype;i==="group"?t.forEach(r=>{r.items.forEach(o=>cd(e,o.items,n))}):Vn[i].draw(e,{items:n?t.map(XH):t})}function XH(e){const t=lg(e,{});return t.stroke&&t.strokeOpacity!==0||t.fill&&t.fillOpacity!==0?{...t,strokeOpacity:1,stroke:"#000",fillOpacity:0}:t}const yr=5,Bt=31,rc=32,co=new Uint32Array(rc+1),ri=new Uint32Array(rc+1);ri[0]=0;co[0]=~ri[0];for(let e=1;e<=rc;++e)ri[e]=ri[e-1]<<1|1,co[e]=~ri[e];function KH(e,t){const n=new Uint32Array(~~((e*t+rc)/rc));function i(o,s){n[o]|=s}function r(o,s){n[o]&=s}return{array:n,get:(o,s)=>{const a=s*e+o;return n[a>>>yr]&1<<(a&Bt)},set:(o,s)=>{const a=s*e+o;i(a>>>yr,1<<(a&Bt))},clear:(o,s)=>{const a=s*e+o;r(a>>>yr,~(1<<(a&Bt)))},getRange:(o,s,a,u)=>{let l=u,c,f,d,h;for(;l>=s;--l)if(c=l*e+o,f=l*e+a,d=c>>>yr,h=f>>>yr,d===h){if(n[d]&co[c&Bt]&ri[(f&Bt)+1])return!0}else{if(n[d]&co[c&Bt]||n[h]&ri[(f&Bt)+1])return!0;for(let g=d+1;g<h;++g)if(n[g])return!0}return!1},setRange:(o,s,a,u)=>{let l,c,f,d,h;for(;s<=u;++s)if(l=s*e+o,c=s*e+a,f=l>>>yr,d=c>>>yr,f===d)i(f,co[l&Bt]&ri[(c&Bt)+1]);else for(i(f,co[l&Bt]),i(d,ri[(c&Bt)+1]),h=f+1;h<d;++h)i(h,4294967295)},clearRange:(o,s,a,u)=>{let l,c,f,d,h;for(;s<=u;++s)if(l=s*e+o,c=s*e+a,f=l>>>yr,d=c>>>yr,f===d)r(f,ri[l&Bt]|co[(c&Bt)+1]);else for(r(f,ri[l&Bt]),r(d,co[(c&Bt)+1]),h=f+1;h<d;++h)r(h,0)},outOfBounds:(o,s,a,u)=>o<0||s<0||u>=t||a>=e}}function ZH(e,t,n){const i=Math.max(1,Math.sqrt(e*t/1e6)),r=~~((e+2*n+i)/i),o=~~((t+2*n+i)/i),s=a=>~~((a+n)/i);return s.invert=a=>a*i-n,s.bitmap=()=>KH(r,o),s.ratio=i,s.padding=n,s.width=e,s.height=t,s}function QH(e,t,n,i){const r=e.width,o=e.height;return function(s){const a=s.datum.datum.items[i].items,u=a.length,l=s.datum.fontSize,c=Un.width(s.datum,s.datum.text);let f=0,d,h,g,p,m,y,x;for(let b=0;b<u;++b)d=a[b].x,g=a[b].y,h=a[b].x2===void 0?d:a[b].x2,p=a[b].y2===void 0?g:a[b].y2,m=(d+h)/2,y=(g+p)/2,x=Math.abs(h-d+p-g),x>=f&&(f=x,s.x=m,s.y=y);return m=c/2,y=l/2,d=s.x-m,h=s.x+m,g=s.y-y,p=s.y+y,s.align="center",d<0&&h<=r?s.align="left":0<=d&&r<h&&(s.align="right"),s.baseline="middle",g<0&&p<=o?s.baseline="top":0<=g&&o<p&&(s.baseline="bottom"),!0}}function $h(e,t,n,i,r,o){let s=n/2;return e-s<0||e+s>r||t-(s=i/2)<0||t+s>o}function xo(e,t,n,i,r,o,s,a){const u=r*o/(i*2),l=e(t-u),c=e(t+u),f=e(n-(o=o/2)),d=e(n+o);return s.outOfBounds(l,f,c,d)||s.getRange(l,f,c,d)||a&&a.getRange(l,f,c,d)}function JH(e,t,n,i){const r=e.width,o=e.height,s=t[0],a=t[1];function u(l,c,f,d,h){const g=e.invert(l),p=e.invert(c);let m=f,y=o,x;if(!$h(g,p,d,h,r,o)&&!xo(e,g,p,h,d,m,s,a)&&!xo(e,g,p,h,d,h,s,null)){for(;y-m>=1;)x=(m+y)/2,xo(e,g,p,h,d,x,s,a)?y=x:m=x;if(m>f)return[g,p,m,!0]}}return function(l){const c=l.datum.datum.items[i].items,f=c.length,d=l.datum.fontSize,h=Un.width(l.datum,l.datum.text);let g=n?d:0,p=!1,m=!1,y=0,x,b,v,w,S,_,E,k,A,$,D,M,O,C,N,G,Q;for(let Z=0;Z<f;++Z){for(x=c[Z].x,v=c[Z].y,b=c[Z].x2===void 0?x:c[Z].x2,w=c[Z].y2===void 0?v:c[Z].y2,x>b&&(Q=x,x=b,b=Q),v>w&&(Q=v,v=w,w=Q),A=e(x),D=e(b),$=~~((A+D)/2),M=e(v),C=e(w),O=~~((M+C)/2),E=$;E>=A;--E)for(k=O;k>=M;--k)G=u(E,k,g,h,d),G&&([l.x,l.y,g,p]=G);for(E=$;E<=D;++E)for(k=O;k<=C;++k)G=u(E,k,g,h,d),G&&([l.x,l.y,g,p]=G);!p&&!n&&(N=Math.abs(b-x+w-v),S=(x+b)/2,_=(v+w)/2,N>=y&&!$h(S,_,h,d,r,o)&&!xo(e,S,_,d,h,d,s,null)&&(y=N,l.x=S,l.y=_,m=!0))}return p||m?(S=h/2,_=d/2,s.setRange(e(l.x-S),e(l.y-_),e(l.x+S),e(l.y+_)),l.align="center",l.baseline="middle",!0):!1}}const eG=[-1,-1,1,1],tG=[-1,1,-1,1];function nG(e,t,n,i){const r=e.width,o=e.height,s=t[0],a=t[1],u=e.bitmap();return function(l){const c=l.datum.datum.items[i].items,f=c.length,d=l.datum.fontSize,h=Un.width(l.datum,l.datum.text),g=[];let p=n?d:0,m=!1,y=!1,x=0,b,v,w,S,_,E,k,A,$,D,M,O;for(let C=0;C<f;++C){for(b=c[C].x,w=c[C].y,v=c[C].x2===void 0?b:c[C].x2,S=c[C].y2===void 0?w:c[C].y2,g.push([e((b+v)/2),e((w+S)/2)]);g.length;)if([k,A]=g.pop(),!(s.get(k,A)||a.get(k,A)||u.get(k,A))){u.set(k,A);for(let N=0;N<4;++N)_=k+eG[N],E=A+tG[N],u.outOfBounds(_,E,_,E)||g.push([_,E]);if(_=e.invert(k),E=e.invert(A),$=p,D=o,!$h(_,E,h,d,r,o)&&!xo(e,_,E,d,h,$,s,a)&&!xo(e,_,E,d,h,d,s,null)){for(;D-$>=1;)M=($+D)/2,xo(e,_,E,d,h,M,s,a)?D=M:$=M;$>p&&(l.x=_,l.y=E,p=$,m=!0)}}!m&&!n&&(O=Math.abs(v-b+S-w),_=(b+v)/2,E=(w+S)/2,O>=x&&!$h(_,E,h,d,r,o)&&!xo(e,_,E,d,h,d,s,null)&&(x=O,l.x=_,l.y=E,y=!0))}return m||y?(_=h/2,E=d/2,s.setRange(e(l.x-_),e(l.y-E),e(l.x+_),e(l.y+E)),l.align="center",l.baseline="middle",!0):!1}}const iG=["right","center","left"],rG=["bottom","middle","top"];function oG(e,t,n,i){const r=e.width,o=e.height,s=t[0],a=t[1],u=i.length;return function(l){const c=l.boundary,f=l.datum.fontSize;if(c[2]<0||c[5]<0||c[0]>r||c[3]>o)return!1;let d=l.textWidth??0,h,g,p,m,y,x,b,v,w,S,_,E,k,A,$;for(let D=0;D<u;++D){if(h=(n[D]&3)-1,g=(n[D]>>>2&3)-1,p=h===0&&g===0||i[D]<0,m=h&&g?Math.SQRT1_2:1,y=i[D]<0?-1:1,x=c[1+h]+i[D]*h*m,_=c[4+g]+y*f*g/2+i[D]*g*m,v=_-f/2,w=_+f/2,E=e(x),A=e(v),$=e(w),!d)if(KS(E,E,A,$,s,a,x,x,v,w,c,p))d=Un.width(l.datum,l.datum.text);else continue;if(S=x+y*d*h/2,x=S-d/2,b=S+d/2,E=e(x),k=e(b),KS(E,k,A,$,s,a,x,b,v,w,c,p))return l.x=h?h*y<0?b:x:S,l.y=g?g*y<0?w:v:_,l.align=iG[h*y+1],l.baseline=rG[g*y+1],s.setRange(E,A,k,$),!0}return!1}}function KS(e,t,n,i,r,o,s,a,u,l,c,f){return!(r.outOfBounds(e,n,t,i)||(f&&o||r).getRange(e,n,t,i))}const Rm=0,Om=4,zm=8,Pm=0,Lm=1,Im=2,sG={"top-left":Rm+Pm,top:Rm+Lm,"top-right":Rm+Im,left:Om+Pm,middle:Om+Lm,right:Om+Im,"bottom-left":zm+Pm,bottom:zm+Lm,"bottom-right":zm+Im},aG={naive:QH,"reduced-search":JH,floodfill:nG};function uG(e,t,n,i,r,o,s,a,u,l,c){if(!e.length)return e;const f=Math.max(i.length,r.length),d=lG(i,f),h=cG(r,f),g=fG(e[0].datum),p=g==="group"&&e[0].datum.items[u].marktype,m=p==="area",y=dG(g,p,a,u),x=l===null||l===1/0,b=m&&c==="naive";let v=-1,w=-1;const S=e.map(A=>{const $=x?Un.width(A,A.text):void 0;return v=Math.max(v,$),w=Math.max(w,A.fontSize),{datum:A,opacity:0,x:void 0,y:void 0,align:void 0,baseline:void 0,boundary:y(A),textWidth:$}});l=l===null||l===1/0?Math.max(v,w)+Math.max(...i):l;const _=ZH(t[0],t[1],l);let E;if(!b){n&&S.sort((D,M)=>n(D.datum,M.datum));let A=!1;for(let D=0;D<h.length&&!A;++D)A=h[D]===5||d[D]<0;const $=(g&&s||m)&&e.map(D=>D.datum);E=o.length||$?YH(_,$||[],o,A,m):VH(_,s&&S)}const k=m?aG[c](_,E,s,u):oG(_,E,h,d);
7return S.forEach(A=>A.opacity=+k(A)),S}function lG(e,t){const n=new Float64Array(t),i=e.length;for(let r=0;r<i;++r)n[r]=e[r]||0;for(let r=i;r<t;++r)n[r]=n[i-1];return n}function cG(e,t){const n=new Int8Array(t),i=e.length;for(let r=0;r<i;++r)n[r]|=sG[e[r]];for(let r=i;r<t;++r)n[r]=n[i-1];return n}function fG(e){return e&&e.mark&&e.mark.marktype}function dG(e,t,n,i){const r=o=>[o.x,o.x,o.x,o.y,o.y,o.y];return e?e==="line"||e==="area"?o=>r(o.datum):t==="line"?o=>{const s=o.datum.items[i].items;return r(s.length?s[n==="start"?0:s.length-1]:{x:NaN,y:NaN})}:o=>{const s=o.datum.bounds;return[s.x1,(s.x1+s.x2)/2,s.x2,s.y1,(s.y1+s.y2)/2,s.y2]}:r}const N1=["x","y","opacity","align","baseline"],vD=["top-left","left","bottom-left","top","bottom","top-right","right","bottom-right"];function Qb(e){F.call(this,null,e)}Qb.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:vD},{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:N1.length,default:N1}]};q(Qb,F,{transform(e,t){function n(o){const s=e[o];return ce(s)&&t.modified(s.fields)}const i=e.modified();if(!(i||t.changed(t.ADD_REM)||n("sort")))return;(!e.size||e.size.length!==2)&&R("Size parameter should be specified as a [width, height] array.");const r=e.as||N1;return uG(t.materialize(t.SOURCE).source||[],e.size,e.sort,H(e.offset==null?1:e.offset),H(e.anchor||vD),e.avoidMarks||[],e.avoidBaseMark!==!1,e.lineAnchor||"end",e.markIndex||0,e.padding===void 0?0:e.padding,e.method||"naive").forEach(o=>{const s=o.datum;s[r[0]]=o.x,s[r[1]]=o.y,s[r[2]]=o.opacity,s[r[3]]=o.align,s[r[4]]=o.baseline}),t.reflow(i).modifies(r)}});const hG=Object.freeze(Object.defineProperty({__proto__:null,label:Qb},Symbol.toStringTag,{value:"Module"}));function wD(e,t){var n=[],i=function(c){return c(a)},r,o,s,a,u,l;if(t==null)n.push(e);else for(r={},o=0,s=e.length;o<s;++o)a=e[o],u=t.map(i),l=r[u],l||(r[u]=l=[],l.dims=u,n.push(l)),l.push(a);return n}function Jb(e){F.call(this,null,e)}Jb.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}]};q(Jb,F,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const i=t.materialize(t.SOURCE).source,r=wD(i,e.groupby),o=(e.groupby||[]).map(Xe),s=o.length,a=e.as||[Xe(e.x),Xe(e.y)],u=[];r.forEach(l=>{Wz(l,e.x,e.y,e.bandwidth||.3).forEach(c=>{const f={};for(let d=0;d<s;++d)f[o[d]]=l.dims[d];f[a[0]]=c[0],f[a[1]]=c[1],u.push(Ee(f))})}),this.value&&(n.rem=this.value),this.value=n.add=n.source=u}return n}});const R1={constant:LA,linear:IA,log:Lz,exp:Iz,pow:Bz,quad:BA,poly:Uz},gG=(e,t)=>e==="poly"?t:e==="quad"?2:1;function ev(e){F.call(this,null,e)}ev.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(R1)},{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}]};q(ev,F,{transform(e,t){const n=t.fork(t.NO_SOURCE|t.NO_FIELDS);if(!this.value||t.changed()||e.modified()){const i=t.materialize(t.SOURCE).source,r=wD(i,e.groupby),o=(e.groupby||[]).map(Xe),s=e.method||"linear",a=e.order==null?3:e.order,u=gG(s,a),l=e.as||[Xe(e.x),Xe(e.y)],c=R1[s],f=[];let d=e.extent;X(R1,s)||R("Invalid regression method: "+s),d!=null&&s==="log"&&d[0]<=0&&(t.dataflow.warn("Ignoring extent with values <= 0 for log regression."),d=null),r.forEach(h=>{if(h.length<=u){t.dataflow.warn("Skipping regression with more parameters than data points.");return}const p=c(h,e.x,e.y,a);if(e.params){f.push(Ee({keys:h.dims,coef:p.coef,rSquared:p.rSquared}));return}const m=d||Ir(h,e.x),y=x=>{const b={};for(let v=0;v<o.length;++v)b[o[v]]=h.dims[v];b[l[0]]=x[0],b[l[1]]=x[1],f.push(Ee(b))};s==="linear"||s==="constant"?m.forEach(x=>
7y([x,p.predict(x)])):Uy(p.predict,m,25,200).forEach(y)}),this.value&&(n.rem=this.value),this.value=n.add=n.source=f}return n}});const pG=Object.freeze(Object.defineProperty({__proto__:null,loess:Jb,regression:ev},Symbol.toStringTag,{value:"Module"})),Nr=11102230246251565e-32,Tt=134217729,mG=(3+8*Nr)*Nr;function Bm(e,t,n,i,r){let o,s,a,u,l=t[0],c=i[0],f=0,d=0;c>l==c>-l?(o=l,l=t[++f]):(o=c,c=i[++d]);let h=0;if(f<e&&d<n)for(c>l==c>-l?(s=l+o,a=o-(s-l),l=t[++f]):(s=c+o,a=o-(s-c),c=i[++d]),o=s,a!==0&&(r[h++]=a);f<e&&d<n;)c>l==c>-l?(s=o+l,u=s-o,a=o-(s-u)+(l-u),l=t[++f]):(s=o+c,u=s-o,a=o-(s-u)+(c-u),c=i[++d]),o=s,a!==0&&(r[h++]=a);for(;f<e;)s=o+l,u=s-o,a=o-(s-u)+(l-u),l=t[++f],o=s,a!==0&&(r[h++]=a);for(;d<n;)s=o+c,u=s-o,a=o-(s-u)+(c-u),c=i[++d],o=s,a!==0&&(r[h++]=a);return(o!==0||h===0)&&(r[h++]=o),h}function yG(e,t){let n=t[0];for(let i=1;i<e;i++)n+=t[i];return n}function Uc(e){return new Float64Array(e)}const xG=(3+16*Nr)*Nr,bG=(2+12*Nr)*Nr,vG=(9+64*Nr)*Nr*Nr,Sa=Uc(4),ZS=Uc(8),QS=Uc(12),JS=Uc(16),Ut=Uc(4);function wG(e,t,n,i,r,o,s){let a,u,l,c,f,d,h,g,p,m,y,x,b,v,w,S,_,E;const k=e-r,A=n-r,$=t-o,D=i-o;
vendor: 1,112 bytes, line 7
7v=k*D,d=Tt*k,h=d-(d-k),g=k-h,d=Tt*D,p=d-(d-D),m=D-p,w=g*m-(v-h*p-g*p-h*m),S=$*A,d=Tt*$,h=d-(d-$),g=$-h,d=Tt*A,p=d-(d-A),m=A-p,_=g*m-(S-h*p-g*p-h*m),y=w-_,f=w-y,Sa[0]=w-(y+f)+(f-_),x=v+y,f=x-v,b=v-(x-f)+(y-f),y=b-S,f=b-y,Sa[1]=b-(y+f)+(f-S),E=x+y,f=E-x,Sa[2]=x-(E-f)+(y-f),Sa[3]=E;let M=yG(4,Sa),O=bG*s;if(M>=O||-M>=O||(f=e-k,a=e-(k+f)+(f-r),f=n-A,l=n-(A+f)+(f-r),f=t-$,u=t-($+f)+(f-o),f=i-D,c=i-(D+f)+(f-o),a===0&&u===0&&l===0&&c===0)||(O=vG*s+mG*Math.abs(M),M+=k*c+D*a-($*l+A*u),M>=O||-M>=O))return M;v=a*D,d=Tt*a,h=d-(d-a),g=a-h,d=Tt*D,p=d-(d-D),m=D-p,w=g*m-(v-h*p-g*p-h*m),S=u*A,d=Tt*u,h=d-(d-u),g=u-h,d=Tt*A,p=d-(d-A),m=A-p,_=g*m-(S-h*p-g*p-h*m),y=w-_,f=w-y,Ut[0]=w-(y+f)+(f-_),x=v+y,f=x-v,b=v-(x-f)+(y-f),y=b-S,f=b-y,Ut[1]=b-(y+f)+(f-S),E=x+y,f=E-x,Ut[2]=x-(E-f)+(y-f),Ut[3]=E;const C=Bm(4,Sa,4,Ut,ZS);v=k*c,d=Tt*k,h=d-(d-k),g=k-h,d=Tt*c,p=d-(d-c),m=c-p,w=g*m-(v-h*p-g*p-h*m),S=$*l,d=Tt*$,h=d-(d-$),g=$-h,d=Tt*l,p=d-(d-l),m=l-p,_=g*m-(S-h*p-g*p-h*m),y=w-_,f=w-y,Ut[0]=w-(y+f)+(f-_),x=v+y,f=x-v,b=v-(x-f)+(y-f),y=b-S,f=b-y,Ut[1]=b-(y+f)+(f-S),E=x+y,f=E-x,Ut[2]=x-(E-f)+(y-f),Ut[3]=E;const N=Bm(C,ZS,4,Ut,QS);
7v=a*c,d=Tt*a,h=d-(d-a),g=a-h,d=Tt*c,p=d-(d-c),m=c-p,w=g*m-(v-h*p-g*p-h*m),S=u*l,d=Tt*u,h=d-(d-u),g=u-h,d=Tt*l,p=d-(d-l),m=l-p,_=g*m-(S-h*p-g*p-h*m),y=w-_,f=w-y,Ut[0]=w-(y+f)+(f-_),x=v+y,f=x-v,b=v-(x-f)+(y-f),y=b-S,f=b-y,Ut[1]=b-(y+f)+(f-S),E=x+y,f=E-x,Ut[2]=x-(E-f)+(y-f),Ut[3]=E;const G=Bm(N,QS,4,Ut,JS);return JS[G-1]}function zf(e,t,n,i,r,o){const s=(t-o)*(n-r),a=(e-r)*(i-o),u=s-a,l=Math.abs(s+a);return Math.abs(u)>=xG*l?u:-wG(e,t,n,i,r,o,l)}const eE=Math.pow(2,-52),Pf=new Uint32Array(512);class Ah{static from(t,n=$G,i=AG){const r=t.length,o=new Float64Array(r*2);for(let s=0;s<r;s++){const a=t[s];o[2*s]=n(a),o[2*s+1]=i(a)}return new Ah(o)}constructor(t){const n=t.length>>1;if(n>0&&typeof t[0]!="number")throw new Error("Expected coords to contain numbers.");this.coords=t;const i=Math.max(2*n-5,0);this._triangles=new Uint32Array(i*3),this._halfedges=new Int32Array(i*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:t,_hullPrev:n,_hullNext:i,_hullTri:r,_hullHash:o}=this,s=t.length>>1;let a=1/0,u=1/0,l=-1/0,c=-1/0;for(let k=0;k<s;k++){const A=t[2*k],$=t[2*k+1];A<a&&(a=A),$<u&&(u=$),A>l&&(l=A),$>c&&(c=$),this._ids[k]=k}const f=(a+l)/2,d=(u+c)/2;let h,g,p;for(let k=0,A=1/0;k<s;k++){const $=Um(f,d,t[2*k],t[2*k+1]);$<A&&(h=k,A=$)}const m=t[2*h],y=t[2*h+1];for(let k=0,A=1/0;k<s;k++){if(k===h)continue;const $=Um(m,y,t[2*k],t[2*k+1]);$<A&&$>0&&(g=k,A=$)}let x=t[2*g],b=t[2*g+1],v=1/0;for(let k=0;k<s;k++){if(k===h||k===g)continue;const A=EG(m,y,x,b,t[2*k],t[2*k+1]);A<v&&(p=k,v=A)}let w=t[2*p],S=t[2*p+1];if(v===1/0){for(let $=0;$<s;$++)this._dists[$]=t[2*$]-t[0]||t[2*$+1]-t[1];Na(this._ids,this._dists,0,s-1);const k=new Uint32Array(s);let A=0;for(let $=0,D=-1/0;$<s;$++){const M=this._ids[$],O=this._dists[M];O>D&&(k[A++]=M,D=O)}this.hull=k.subarray(0,A),this.triangles=new Uint32Array(0),this.halfedges=new Uint32Array(0);return}if(zf(m,y,x,b,w,S)<0){const k=g,A=x,$=b;g=p,x=w,b=S,p=k,w=A,S=$}const _=kG(m,y,x,b,w,S);this._cx=_.x,this._cy=_.y;for(let k=0;k<s;k++)this._dists[k]=Um(t[2*k],t[2*k+1],_.x,_.y);Na(this._ids,this._dists,0,s-1),this._hullStart=h;let E=3;i[h]=n[p]=g,i[g]=n[h]=p,i[p]=n[g]=h,r[h]=0,r[g]=1,r[p]=2,o.fill(-1),o[this._hashKey(m,y)]=h,o[this._hashKey(x,b)]=g,o[this._hashKey(w,S)]=p,this.trianglesLen=0,this._addTriangle(h,g,p,-1,-1,-1);for(let k=0,A,$;k<this._ids.length;k++){const D=this._ids[k],M=t[2*D],O=t[2*D+1];if(k>0&&Math.abs(M-A)<=eE&&Math.abs(O-$)<=eE||(A=M,$=O,D===h||D===g||D===p))continue;let C=0;for(let _e=0,Ge=this._hashKey(M,O);_e<this._hashSize&&(C=o[(Ge+_e)%this._hashSize],!(C!==-1&&C!==i[C]));_e++);C=n[C];let N=C,G;for(;G=i[N],zf(M,O,t[2*N],t[2*N+1],t[2*G],t[2*G+1])>=0;)if(N=G,N===C){N=-1;break}if(N===-1)continue;let Q=this._addTriangle(N,D,i[N],-1,-1,r[N]);r[D]=this._legalize(Q+2),r[N]=Q,E++;let Z=i[N];for(;G=i[Z],zf(M,O,t[2*Z],t[2*Z+1],t[2*G],t[2*G+1])<0;)Q=this._addTriangle(Z,D,G,r[D],-1,r[Z]),r[D]=this._legalize(Q+2),i[Z]=Z,E--,Z=G;if(N===C)for(;G=n[N],zf(M,O,t[2*G],t[2*G+1],t[2*N],t[2*N+1])<0;)Q=this._addTriangle(G,D,N,-1,r[N],r[G]),this._legalize(Q+2),r[G]=Q,i[N]=N,E--,N=G;this._hullStart=n[D]=N,i[N]=n[Z]=D,i[D]=Z,o[this._hashKey(M,O)]=D,o[this._hashKey(t[2*N],t[2*N+1])]=N}this.hull=new Uint32Array(E);for(let k=0,A=this._hullStart;k<E;k++)this.hull[k]=A,A=i[A];this.triangles=this._triangles.subarray(0,this.trianglesLen),this.halfedges=this._halfedges.subarray(0,this.trianglesLen)}_hashKey(t,n){return Math.floor(_G(t-this._cx,n-this._cy)*this._hashSize)%this._hashSize}_legalize(t){const{_triangles:n,_halfedges:i,coords:r}=this;let o=0,s=0;for(;;){const a=i[t],u=t-t%3;if(s=u+(t+2)%3,a===-1){if(o===0)break;t=Pf[--o];continue}const l=a-a%3,c=u+(t+1)%3,f=l+(a+2)%3,d=n[s],h=n[t],g=n[c],p=n[f];if(SG(r[2*d],r[2*d+1],r[2*h],r[2*h+1],r[2*g],r[2*g+1],r[2*p],r[2*p+1])){n[t]=p,n[a]=d;const y=i[f];if(y===-1){let b=this._hullStart;do{if(this._hullTri[b]===f){this._hullTri[b]=t;break}b=this._hullPrev[b]}while(b!==this._hullStart)}this._link(t,y),this._link(a,i[s]),this._link(s,f);const x=l+(a+1)%3;o<Pf.length&&(Pf[o++]=x)}else{if(o===0)break;t=Pf[--o]}}return s}_link(t,n){this._halfedges[t]=n,n!==-1&&(this._halfedges[n]=t)}_addTriangle(t,n,i,r,o,s){const a=this.trianglesLen;return this._triangles[a]=t,this._triangles[a+1]=n,this._triangles[a+2]=i,this._link(a,r),this._link(a+1,o),this._link(a+2,s),this.trianglesLen+=3,a}}function _G(e,t){const n=e/(Math.abs(e)+Math.abs(t));return(t>0?3-n:1+n)/4}function Um(e,t,n,i){const r=e-n,o=t-i;return r*r+o*o}function SG(e,t,n,i,r,o,s,a){const u=e-s,l=t-a,c=n-s,f=i-a,d=r-s,h=o-a,g=u*u+l*l,p=c*c+f*f,m=d*d+h*h;return u*(f*m-p*h)-l*(c*m-p*d)+g*(c*h-f*d)<0}function EG(e,t,n,i,r,o){const s=n-e,a=i-t,u=r-e,l=o-t,c=s*s+a*a,f=u*u+l*l,d=.5/(s*l-a*u),h=(l*c-a*f)*d,g=(s*f-u*c)*d;return h*h+g*g}function kG(e,t,n,i,r,o){const s=n-e,a=i-t,u=r-e,l=o-t,c=s*s+a*a,f=u*u+l*l,d=.5/(s*l-a*u),h=e+(l*c-a*f)*d,g=t+(s*f-u*c)*d;return{x:h,y:g}}function Na(e,t,n,i){if(i-n<=20)for(let r=n+1;r<=i;r++){const o=e[r],s=t[o];let a=r-1;for(;a>=n&&t[e[a]]>s;)e[a+1]=e[a--];e[a+1]=o}else{const r=n+i>>1;let o=n+1,s=i;el(e,r,o),t[e[n]]>t[e[i]]&&el(e,n,i),t[e[o]]>t[e[i]]&&el(e,o,i),t[e[n]]>t[e[o]]&&el(e,n,o);const a=e[o],u=t[a];for(;;){do o++;while(t[e[o]]<u);do s--;while(t[e[s]]>u);
7if(s<o)break;el(e,o,s)}e[n+1]=e[s],e[s]=a,i-o+1>=s-n?(Na(e,t,o,i),Na(e,t,n,s-1)):(Na(e,t,n,s-1),Na(e,t,o,i))}}function el(e,t,n){const i=e[t];e[t]=e[n],e[n]=i}function $G(e){return e[0]}function AG(e){return e[1]}const tE=1e-6;class ys{constructor(){this._x0=this._y0=this._x1=this._y1=null,this._=""}moveTo(t,n){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._+="Z")}lineTo(t,n){this._+=`L${this._x1=+t},${this._y1=+n}`}arc(t,n,i){t=+t,n=+n,i=+i;const r=t+i,o=n;if(i<0)throw new Error("negative radius");this._x1===null?this._+=`M${r},${o}`:(Math.abs(this._x1-r)>tE||Math.abs(this._y1-o)>tE)&&(this._+="L"+r+","+o),i&&(this._+=`A${i},${i},0,1,1,${t-i},${n}A${i},${i},0,1,1,${this._x1=r},${this._y1=o}`)}rect(t,n,i,r){this._+=`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${+i}v${+r}h${-i}Z`}value(){return this._||null}}class O1{constructor(){this._=[]}moveTo(t,n){this._.push([t,n])}closePath(){this._.push(this._[0].slice())}lineTo(t,n){this._.push([t,n])}value(){return this._.length?this._:null}}let CG=class{constructor(t,[n,i,r,o]=[0,0,960,500]){if(!((r=+r)>=(n=+n))||!((o=+o)>=(i=+i)))throw new Error("invalid bounds");this.delaunay=t,this._circumcenters=new Float64Array(t.points.length*2),this.vectors=new Float64Array(t.points.length*2),this.xmax=r,this.xmin=n,this.ymax=o,this.ymin=i,this._init()}update(){return this.delaunay.update(),this._init(),this}_init(){const{delaunay:{points:t,hull:n,triangles:i},vectors:r}=this;let o,s;const a=this.circumcenters=this._circumcenters.subarray(0,i.length/3*2);for(let p=0,m=0,y=i.length,x,b;p<y;p+=3,m+=2){const v=i[p]*2,w=i[p+1]*2,S=i[p+2]*2,_=t[v],E=t[v+1],k=t[w],A=t[w+1],$=t[S],D=t[S+1],M=k-_,O=A-E,C=$-_,N=D-E,G=(M*N-O*C)*2;if(Math.abs(G)<1e-9){if(o===void 0){o=s=0;for(const Z of n)o+=t[Z*2],s+=t[Z*2+1];o/=n.length,s/=n.length}const Q=1e9*Math.sign((o-_)*N-(s-E)*C);x=(_+$)/2-Q*N,b=(E+D)/2+Q*C}else{const Q=1/G,Z=M*M+O*O,_e=C*C+N*N;x=_+(N*Z-O*_e)*Q,b=E+(M*_e-C*Z)*Q}a[m]=x,a[m+1]=b}let u=n[n.length-1],l,c=u*4,f,d=t[2*u],h,g=t[2*u+1];r.fill(0);for(let p=0;p<n.length;++p)u=n[p],l=c,f=d,h=g,c=u*4,d=t[2*u],g=t[2*u+1],r[l+2]=r[c]=h-g,r[l+3]=r[c+1]=d-f}render(t){const n=t==null?t=new ys:void 0,{delaunay:{halfedges:i,inedges:r,hull:o},circumcenters:s,vectors:a}=this;if(o.length<=1)return null;for(let c=0,f=i.length;c<f;++c){const d=i[c];if(d<c)continue;const h=Math.floor(c/3)*2,g=Math.floor(d/3)*2,p=s[h],m=s[h+1],y=s[g],x=s[g+1];this._renderSegment(p,m,y,x,t)}let u,l=o[o.length-1];for(let c=0;c<o.length;++c){u=l,l=o[c];const f=Math.floor(r[l]/3)*2,d=s[f],h=s[f+1],g=u*4,p=this._project(d,h,a[g+2],a[g+3]);p&&this._renderSegment(d,h,p[0],p[1],t)}return n&&n.value()}renderBounds(t){const n=t==null?t=new ys:void 0;return t.rect(this.xmin,this.ymin,this.xmax-this.xmin,this.ymax-this.ymin),n&&n.value()}renderCell(t,n){const i=n==null?n=new ys:void 0,r=this._clip(t);if(r===null||!r.length)return;n.moveTo(r[0],r[1]);let o=r.length;for(;r[0]===r[o-2]&&r[1]===r[o-1]&&o>1;)o-=2;for(let s=2;s<o;s+=2)(r[s]!==r[s-2]||r[s+1]!==r[s-1])&&n.lineTo(r[s],r[s+1]);return n.closePath(),i&&i.value()}*cellPolygons(){const{delaunay:{points:t}}=this;for(let n=0,i=t.length/2;n<i;++n){const r=this.cellPolygon(n);r&&(r.index=n,yield r)}}cellPolygon(t){const n=new O1;return this.renderCell(t,n),n.value()}_renderSegment(t,n,i,r,o){let s;const a=this._regioncode(t,n),u=this._regioncode(i,r);a===0&&u===0?(o.moveTo(t,n),o.lineTo(i,r)):(s=this._clipSegment(t,n,i,r,a,u))&&(o.moveTo(s[0],s[1]),o.lineTo(s[2],s[3]))}contains(t,n,i){return n=+n,n!==n||(i=+i,i!==i)?!1:this.delaunay._step(t,n,i)===t}*neighbors(t){const n=this._clip(t);if(n)for(const i of this.delaunay.neighbors(t)){const r=this._clip(i);if(r){e:for(let o=0,s=n.length;o<s;o+=2)for(let a=0,u=r.length;a<u;a+=2)if(n[o]===r[a]&&n[o+1]===r[a+1]&&n[(o+2)%s]===r[(a+u-2)%u]&&n[(o+3)%s]===r[(a+u-1)%u]){yield i;break e}}}}_cell(t){const{circumcenters:n,delaunay:{inedges:i,halfedges:r,triangles:o}}=this,s=i[t];if(s===-1)return null;const a=[];let u=s;do{const l=Math.floor(u/3);if(a.push(n[l*2],n[l*2+1]),u=u%3===2?u-2:u+1,o[u]!==t)break;u=r[u]}while(u!==s&&u!==-1);return a}_clip(t){if(t===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(t);if(n===null)return null;const{vectors:i}=this,r=t*4;return this._simplify(i[r]||i[r+1]?this._clipInfinite(t,n,i[r],i[r+1],i[r+2],i[r+3]):this._clipFinite(t,n))}_clipFinite(t,n){const i=n.length;let r=null,o,s,a=n[i-2],u=n[i-1],l,c=this._regioncode(a,u),f,d=0;for(let h=0;h<i;h+=2)if(o=a,s=u,a=n[h],u=n[h+1],l=c,c=this._regioncode(a,u),l===0&&c===0)f=d,d=0,r?r.push(a,u):r=[a,u];else{let g,p,m,y,x;if(l===0){if((g=this._clipSegment(o,s,a,u,l,c))===null)continue;[p,m,y,x]=g}else{if((g=this._clipSegment(a,u,o,s,c,l))===null)continue;[y,x,p,m]=g,f=d,d=this._edgecode(p,m),f&&d&&this._edge(t,f,d,r,r.length),r?r.push(p,m):r=[p,m]}f=d,d=this._edgecode(y,x),f&&d&&this._edge(t,f,d,r,r.length),r?r.push(y,x):r=[y,x]}if(r)f=d,d=this._edgecode(r[0],r[1]),f&&d&&this._edge(t,f,d,r,r.length);else if(this.contains(t,(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 r}_clipSegment(t,n,i,r,o,s){const a=o<s;
7for(a&&([t,n,i,r,o,s]=[i,r,t,n,s,o]);;){if(o===0&&s===0)return a?[i,r,t,n]:[t,n,i,r];if(o&s)return null;let u,l,c=o||s;c&8?(u=t+(i-t)*(this.ymax-n)/(r-n),l=this.ymax):c&4?(u=t+(i-t)*(this.ymin-n)/(r-n),l=this.ymin):c&2?(l=n+(r-n)*(this.xmax-t)/(i-t),u=this.xmax):(l=n+(r-n)*(this.xmin-t)/(i-t),u=this.xmin),o?(t=u,n=l,o=this._regioncode(t,n)):(i=u,r=l,s=this._regioncode(i,r))}}_clipInfinite(t,n,i,r,o,s){let a=Array.from(n),u;if((u=this._project(a[0],a[1],i,r))&&a.unshift(u[0],u[1]),(u=this._project(a[a.length-2],a[a.length-1],o,s))&&a.push(u[0],u[1]),a=this._clipFinite(t,a))for(let l=0,c=a.length,f,d=this._edgecode(a[c-2],a[c-1]);l<c;l+=2)f=d,d=this._edgecode(a[l],a[l+1]),f&&d&&(l=this._edge(t,f,d,a,l),c=a.length);else this.contains(t,(this.xmin+this.xmax)/2,(this.ymin+this.ymax)/2)&&(a=[this.xmin,this.ymin,this.xmax,this.ymin,this.xmax,this.ymax,this.xmin,this.ymax]);return a}_edge(t,n,i,r,o){for(;n!==i;){let s,a;switch(n){case 5:n=4;continue;case 4:n=6,s=this.xmax,a=this.ymin;break;case 6:n=2;continue;case 2:n=10,s=this.xmax,a=this.ymax;break;case 10:n=8;continue;case 8:n=9,s=this.xmin,a=this.ymax;break;case 9:n=1;continue;case 1:n=5,s=this.xmin,a=this.ymin;break}(r[o]!==s||r[o+1]!==a)&&this.contains(t,s,a)&&(r.splice(o,0,s,a),o+=2)}return o}_project(t,n,i,r){let o=1/0,s,a,u;if(r<0){if(n<=this.ymin)return null;(s=(this.ymin-n)/r)<o&&(u=this.ymin,a=t+(o=s)*i)}else if(r>0){if(n>=this.ymax)return null;(s=(this.ymax-n)/r)<o&&(u=this.ymax,a=t+(o=s)*i)}if(i>0){if(t>=this.xmax)return null;(s=(this.xmax-t)/i)<o&&(a=this.xmax,u=n+(o=s)*r)}else if(i<0){if(t<=this.xmin)return null;(s=(this.xmin-t)/i)<o&&(a=this.xmin,u=n+(o=s)*r)}return[a,u]}_edgecode(t,n){return(t===this.xmin?1:t===this.xmax?2:0)|(n===this.ymin?4:n===this.ymax?8:0)}_regioncode(t,n){return(t<this.xmin?1:t>this.xmax?2:0)|(n<this.ymin?4:n>this.ymax?8:0)}_simplify(t){if(t&&t.length>4){for(let n=0;n<t.length;n+=2){const i=(n+2)%t.length,r=(n+4)%t.length;(t[n]===t[i]&&t[i]===t[r]||t[n+1]===t[i+1]&&t[i+1]===t[r+1])&&(t.splice(i,2),n-=2)}t.length||(t=null)}return t}};const MG=2*Math.PI,Ea=Math.pow;function FG(e){return e[0]}function DG(e){return e[1]}function TG(e){const{triangles:t,coords:n}=e;for(let i=0;i<t.length;i+=3){const r=2*t[i],o=2*t[i+1],s=2*t[i+2];if((n[s]-n[r])*(n[o+1]-n[r+1])-(n[o]-n[r])*(n[s+1]-n[r+1])>1e-10)return!1}return!0}function NG(e,t,n){return[e+Math.sin(e+t)*n,t+Math.cos(e-t)*n]}class tv{static from(t,n=FG,i=DG,r){return new tv("length"in t?RG(t,n,i,r):Float64Array.from(OG(t,n,i,r)))}constructor(t){this._delaunator=new Ah(t),this.inedges=new Int32Array(t.length/2),this._hullIndex=new Int32Array(t.length/2),this.points=this._delaunator.coords,this._init()}update(){return this._delaunator.update(),this._init(),this}_init(){const t=this._delaunator,n=this.points;if(t.hull&&t.hull.length>2&&TG(t)){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],c=[n[2*u],n[2*u+1],n[2*l],n[2*l+1]],f=1e-8*Math.hypot(c[3]-c[1],c[2]-c[0]);for(let d=0,h=n.length/2;d<h;++d){const g=NG(n[2*d],n[2*d+1],f);n[2*d]=g[0],n[2*d+1]=g[1]}this._delaunator=new Ah(n)}else delete this.collinear;const i=this.halfedges=this._delaunator.halfedges,r=this.hull=this._delaunator.hull,o=this.triangles=this._delaunator.triangles,s=this.inedges.fill(-1),a=this._hullIndex.fill(-1);for(let u=0,l=i.length;u<l;++u){const c=o[u%3===2?u-2:u+1];(i[u]===-1||s[c]===-1)&&(s[c]=u)}for(let u=0,l=r.length;u<l;++u)a[r[u]]=u;r.length<=2&&r.length>0&&(this.triangles=new Int32Array(3).fill(-1),this.halfedges=new Int32Array(3).fill(-1),this.triangles[0]=r[0],s[r[0]]=1,r.length===2&&(s[r[1]]=0,this.triangles[1]=r[1],this.triangles[2]=r[1]))}voronoi(t){return new CG(this,t)}*neighbors(t){const{inedges:n,hull:i,_hullIndex:r,halfedges:o,triangles:s,collinear:a}=this;if(a){const f=a.indexOf(t);f>0&&(yield a[f-1]),f<a.length-1&&(yield a[f+1]);return}const u=n[t];if(u===-1)return;let l=u,c=-1;do{if(yield c=s[l],l=l%3===2?l-2:l+1,s[l]!==t)return;if(l=o[l],l===-1){const f=i[(r[t]+1)%i.length];f!==c&&(yield f);return}}while(l!==u)}find(t,n,i=0){if(t=+t,t!==t||(n=+n,n!==n))return-1;const r=i;let o;for(;(o=this._step(i,t,n))>=0&&o!==i&&o!==r;)i=o;return o}_step(t,n,i){const{inedges:r,hull:o,_hullIndex:s,halfedges:a,triangles:u,points:l}=this;if(r[t]===-1||!l.length)return(t+1)%(l.length>>1);
7let c=t,f=Ea(n-l[t*2],2)+Ea(i-l[t*2+1],2);const d=r[t];let h=d;do{let g=u[h];const p=Ea(n-l[g*2],2)+Ea(i-l[g*2+1],2);if(p<f&&(f=p,c=g),h=h%3===2?h-2:h+1,u[h]!==t)break;if(h=a[h],h===-1){if(h=o[(s[t]+1)%o.length],h!==g&&Ea(n-l[h*2],2)+Ea(i-l[h*2+1],2)<f)return h;break}}while(h!==d);return c}render(t){const n=t==null?t=new ys:void 0,{points:i,halfedges:r,triangles:o}=this;for(let s=0,a=r.length;s<a;++s){const u=r[s];if(u<s)continue;const l=o[s]*2,c=o[u]*2;t.moveTo(i[l],i[l+1]),t.lineTo(i[c],i[c+1])}return this.renderHull(t),n&&n.value()}renderPoints(t,n){n===void 0&&(!t||typeof t.moveTo!="function")&&(n=t,t=null),n=n==null?2:+n;const i=t==null?t=new ys:void 0,{points:r}=this;for(let o=0,s=r.length;o<s;o+=2){const a=r[o],u=r[o+1];t.moveTo(a+n,u),t.arc(a,u,n,0,MG)}return i&&i.value()}renderHull(t){const n=t==null?t=new ys:void 0,{hull:i,points:r}=this,o=i[0]*2,s=i.length;t.moveTo(r[o],r[o+1]);for(let a=1;a<s;++a){const u=2*i[a];t.lineTo(r[u],r[u+1])}return t.closePath(),n&&n.value()}hullPolygon(){const t=new O1;return this.renderHull(t),t.value()}renderTriangle(t,n){const i=n==null?n=new ys:void 0,{points:r,triangles:o}=this,s=o[t*=3]*2,a=o[t+1]*2,u=o[t+2]*2;return n.moveTo(r[s],r[s+1]),n.lineTo(r[a],r[a+1]),n.lineTo(r[u],r[u+1]),n.closePath(),i&&i.value()}*trianglePolygons(){const{triangles:t}=this;for(let n=0,i=t.length/3;n<i;++n)yield this.trianglePolygon(n)}trianglePolygon(t){const n=new O1;return this.renderTriangle(t,n),n.value()}}function RG(e,t,n,i){const r=e.length,o=new Float64Array(r*2);for(let s=0;s<r;++s){const a=e[s];o[s*2]=t.call(i,a,s,e),o[s*2+1]=n.call(i,a,s,e)}return o}function*OG(e,t,n,i){let r=0;for(const o of e)yield t.call(i,o,r,e),yield n.call(i,o,r,e),++r}function nv(e){F.call(this,null,e)}nv.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 zG=[-1e5,-1e5,1e5,1e5];q(nv,F,{transform(e,t){const n=e.as||"path",i=t.source;if(!i||!i.length)return t;let r=e.size;r=r?[0,0,r[0],r[1]]:(r=e.extent)?[r[0][0],r[0][1],r[1][0],r[1][1]]:zG;const o=this.value=tv.from(i,e.x,e.y).voronoi(r);for(let s=0,a=i.length;s<a;++s){const u=o.cellPolygon(s);i[s][n]=u&&!LG(u)?PG(u):null}return t.reflow(e.modified()).modifies(n)}});function PG(e){const t=e[0][0],n=e[0][1];let i=e.length-1;for(;e[i][0]===t&&e[i][1]===n;--i);return"M"+e.slice(0,i+1).join("L")+"Z"}function LG(e){return e.length===2&&e[0][0]===e[1][0]&&e[0][1]===e[1][1]}const IG=Object.freeze(Object.defineProperty({__proto__:null,voronoi:nv},Symbol.toStringTag,{value:"Module"}));var jm=Math.PI/180,Al=64,fd=2048;function BG(){var e=[256,256],t,n,i,r,o,s,a,u=_D,l=[],c=Math.random,f={};f.layout=function(){for(var g=d(wo()),p=GG((e[0]>>5)*e[1]),m=null,y=l.length,x=-1,b=[],v=l.map(S=>({text:t(S),font:n(S),style:r(S),weight:o(S),rotate:s(S),size:~~(i(S)+1e-14),padding:a(S),xoff:0,yoff:0,x1:0,y1:0,x0:0,y0:0,hasText:!1,sprite:null,datum:S})).sort((S,_)=>_.size-S.size);++x<y;){var w=v[x];w.x=e[0]*(c()+.5)>>1,w.y=e[1]*(c()+.5)>>1,UG(g,w,v,x),w.hasText&&h(p,w,m)&&(b.push(w),m?qG(m,w):m=[{x:w.x+w.x0,y:w.y+w.y0},{x:w.x+w.x1,y:w.y+w.y1}],w.x-=e[0]>>1,w.y-=e[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=(Al<<5)/p,g.height=fd/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,x=p.y,b=Math.hypot(e[0],e[1]),v=u(e),w=c()<.5?1:-1,S=-w,_,E,k;(_=v(S+=w))&&(E=~~_[0],k=~~_[1],!(Math.min(Math.abs(E),Math.abs(k))>=b));)if(p.x=y+E,p.y=x+k,!(p.x+p.x0<0||p.y+p.y0<0||p.x+p.x1>e[0]||p.y+p.y1>e[1])&&(!m||!jG(p,g,e[0]))&&(!m||WG(p,m))){for(var A=p.sprite,$=p.width>>5,D=e[0]>>5,M=p.x-($<<4),O=M&127,C=32-O,N=p.y1-p.y0,G=(p.y+p.y0)*D+(M>>5),Q,Z=0;Z<N;Z++){Q=0;for(var _e=0;_e<=$;_e++)g[G+_e]|=Q<<C|(_e<$?(Q=A[Z*$+_e])>>>O:0);G+=D}return p.sprite=null,!0}return!1}return f.words=function(g){return arguments.length?(l=g,f):l},f.size=function(g){return arguments.length?(e=[+g[0],+g[1]],f):e},f.font=function(g){return arguments.length?(n=ts(g),f):n},f.fontStyle=function(g){return arguments.length?(r=ts(g),f):r},f.fontWeight=function(g){return arguments.length?(o=ts(g),f):o},f.rotate=function(g){return arguments.length?(s=ts(g),f):s},f.text=function(g){return arguments.length?(t=ts(g),f):t},f.spiral=function(g){return arguments.length?(u=VG[g]||g,f):u},f.fontSize=function(g){return arguments.length?(i=ts(g),f):i},f.padding=function(g){return arguments.length?(a=ts(g),f):a},f.random=function(g){return arguments.length?(c=g,f):c},f}function UG(e,t,n,i){if(!t.sprite){var r=e.context,o=e.ratio;
vendor: 4,249 bytes, line 7
7r.clearRect(0,0,(Al<<5)/o,fd/o);var s=0,a=0,u=0,l=n.length,c,f,d,h,g;for(--i;++i<l;){if(t=n[i],r.save(),r.font=t.style+" "+t.weight+" "+~~((t.size+1)/o)+"px "+t.font,c=r.measureText(t.text+"m").width*o,d=t.size<<1,t.rotate){var p=Math.sin(t.rotate*jm),m=Math.cos(t.rotate*jm),y=c*m,x=c*p,b=d*m,v=d*p;c=Math.max(Math.abs(y+v),Math.abs(y-v))+31>>5<<5,d=~~Math.max(Math.abs(x+b),Math.abs(x-b))}else c=c+31>>5<<5;if(d>u&&(u=d),s+c>=Al<<5&&(s=0,a+=u,u=0),a+d>=fd)break;r.translate((s+(c>>1))/o,(a+(d>>1))/o),t.rotate&&r.rotate(t.rotate*jm),r.fillText(t.text,0,0),t.padding&&(r.lineWidth=2*t.padding,r.strokeText(t.text,0,0)),r.restore(),t.width=c,t.height=d,t.xoff=s,t.yoff=a,t.x1=c>>1,t.y1=d>>1,t.x0=-t.x1,t.y0=-t.y1,t.hasText=!0,s+=c}for(var w=r.getImageData(0,0,(Al<<5)/o,fd/o).data,S=[];--i>=0;)if(t=n[i],!!t.hasText){for(c=t.width,f=c>>5,d=t.y1-t.y0,h=0;h<d*f;h++)S[h]=0;if(s=t.xoff,s==null)return;a=t.yoff;var _=0,E=-1;for(g=0;g<d;g++){for(h=0;h<c;h++){var k=f*g+(h>>5),A=w[(a+g)*(Al<<5)+(s+h)<<2]?1<<31-h%32:0;S[k]|=A,_|=A}_?E=g:(t.y0++,d--,g--,a++)}t.y1=t.y0+E,t.sprite=S.slice(0,(t.y1-t.y0)*f)}}}function jG(e,t,n){n>>=5;for(var i=e.sprite,r=e.width>>5,o=e.x-(r<<4),s=o&127,a=32-s,u=e.y1-e.y0,l=(e.y+e.y0)*n+(o>>5),c,f=0;f<u;f++){c=0;for(var d=0;d<=r;d++)if((c<<a|(d<r?(c=i[f*r+d])>>>s:0))&t[l+d])return!0;l+=n}return!1}function qG(e,t){var n=e[0],i=e[1];t.x+t.x0<n.x&&(n.x=t.x+t.x0),t.y+t.y0<n.y&&(n.y=t.y+t.y0),t.x+t.x1>i.x&&(i.x=t.x+t.x1),t.y+t.y1>i.y&&(i.y=t.y+t.y1)}function WG(e,t){return e.x+e.x1>t[0].x&&e.x+e.x0<t[1].x&&e.y+e.y1>t[0].y&&e.y+e.y0<t[1].y}function _D(e){var t=e[0]/e[1];return function(n){return[t*(n*=.1)*Math.cos(n),n*Math.sin(n)]}}function HG(e){var t=4,n=t*e[0]/e[1],i=0,r=0;return function(o){var s=o<0?-1:1;switch(Math.sqrt(1+4*s*o)-s&3){case 0:i+=n;break;case 1:r+=t;break;case 2:i-=n;break;default:r-=t;break}return[i,r]}}function GG(e){for(var t=[],n=-1;++n<e;)t[n]=0;return t}function ts(e){return typeof e=="function"?e:function(){return e}}var VG={archimedean:_D,rectangular:HG};const SD=["x","y","font","fontSize","fontStyle","fontWeight","angle"],YG=["text","font","rotate","fontSize","fontStyle","fontWeight"];function iv(e){F.call(this,BG(),e)}iv.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:SD}]};q(iv,F,{transform(e,t){e.size&&!(e.size[0]&&e.size[1])&&R("Wordcloud size dimensions must be non-zero.");function n(g){const p=e[g];return ce(p)&&t.modified(p.fields)}const i=e.modified();if(!(i||t.changed(t.ADD_REM)||YG.some(n)))return;const r=t.materialize(t.SOURCE).source,o=this.value,s=e.as||SD;let a=e.fontSize||14,u;if(ce(a)?u=e.fontSizeRange:a=rn(a),u){const g=a,p=we("sqrt")().domain(Ir(r,g)).range(u);a=m=>p(g(m))}r.forEach(g=>{g[s[0]]=NaN,g[s[1]]=NaN,g[s[3]]=0});const l=o.words(r).text(e.text).size(e.size||[500,500]).padding(e.padding||1).spiral(e.spiral||"archimedean").rotate(e.rotate||0).font(e.font||"sans-serif").fontStyle(e.fontStyle||"normal").fontWeight(e.fontWeight||"normal").fontSize(a).random(jr).layout(),c=o.size(),f=c[0]>>1,d=c[1]>>1,h=l.length;for(let g=0,p,m;g<h;++g)p=l[g],m=p.datum,m[s[0]]=p.x+f,m[s[1]]=p.y+d,m[s[2]]=p.font,m[s[3]]=p.size,m[s[4]]=p.style,m[s[5]]=p.weight,m[s[6]]=p.rotate;return t.reflow(i).modifies(s)}});const XG=Object.freeze(Object.defineProperty({__proto__:null,wordcloud:iv},Symbol.toStringTag,{value:"Module"})),KG=e=>new Uint8Array(e),ZG=e=>new Uint16Array(e),Il=e=>new Uint32Array(e);function QG(){let e=8,t=[],n=Il(0),i=Lf(0,e),r=Lf(0,e);return{data:()=>t,seen:()=>n=JG(n,t.length),add(o){for(let s=0,a=t.length,u=o.length,l;s<u;++s)l=o[s],l._index=a++,t.push(l)},remove(o,s){const a=t.length,u=Array(a-o),l=t;let c,f,d;for(f=0;!s[f]&&f<a;++f)u[f]=t[f],l[f]=f;
7for(d=f;f<a;++f)c=t[f],s[f]?l[f]=-1:(l[f]=d,i[d]=i[f],r[d]=r[f],u[d]=c,c._index=d++),i[f]=0;return t=u,l},size:()=>t.length,curr:()=>i,prev:()=>r,reset:o=>r[o]=i[o],all:()=>e<257?255:e<65537?65535:4294967295,set(o,s){i[o]|=s},clear(o,s){i[o]&=~s},resize(o,s){const a=i.length;(o>a||s>e)&&(e=Math.max(s,e),i=Lf(o,e,i),r=Lf(o,e))}}}function JG(e,t,n){return e.length>=t?e:(n=n||new e.constructor(t),n.set(e),n)}function Lf(e,t,n){const i=(t<257?KG:t<65537?ZG:Il)(e);return n&&i.set(n),i}function nE(e,t,n){const i=1<<t;return{one:i,zero:~i,range:n.slice(),bisect:e.bisect,index:e.index,size:e.size,onAdd(r,o){const s=this,a=s.bisect(s.range,r.value),u=r.index,l=a[0],c=a[1],f=u.length;let d;for(d=0;d<l;++d)o[u[d]]|=i;for(d=c;d<f;++d)o[u[d]]|=i;return s}}}function iE(){let e=Il(0),t=[],n=0;function i(a,u,l){if(!u.length)return[];const c=n,f=u.length,d=Il(f);let h=Array(f),g,p,m;for(m=0;m<f;++m)h[m]=a(u[m]),d[m]=m;if(h=eV(h,d),c)g=t,p=e,t=Array(c+f),e=Il(c+f),tV(l,g,p,c,h,d,f,t,e);else{if(l>0)for(m=0;m<f;++m)d[m]+=l;t=h,e=d}return n=c+f,{index:d,value:h}}function r(a,u){const l=n;let c,f,d;for(f=0;!u[e[f]]&&f<l;++f);for(d=f;f<l;++f)u[c=e[f]]||(e[d]=c,t[d]=t[f],++d);n=l-a}function o(a){for(let u=0,l=n;u<l;++u)e[u]=a[e[u]]}function s(a,u){let l;return u?l=u.length:(u=t,l=n),[g6(u,a[0],0,l),Eo(u,a[1],0,l)]}return{insert:i,remove:r,bisect:s,reindex:o,index:()=>e,size:()=>n}}function eV(e,t){return e.sort.call(t,(n,i)=>{const r=e[n],o=e[i];return r<o?-1:r>o?1:0}),y6(e,t)}function tV(e,t,n,i,r,o,s,a,u){let l=0,c=0,f;for(f=0;l<i&&c<s;++f)t[l]<r[c]?(a[f]=t[l],u[f]=n[l++]):(a[f]=r[c],u[f]=o[c++]+e);for(;l<i;++l,++f)a[f]=t[l],u[f]=n[l];for(;c<s;++c,++f)a[f]=r[c],u[f]=o[c]+e}function rv(e){F.call(this,QG(),e),this._indices=null,this._dims=null}rv.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}}]};q(rv,F,{transform(e,t){if(this._dims){var n=e.modified("fields")||e.fields.some(i=>t.modified(i.fields));return n?this.reinit(e,t):this.eval(e,t)}else return this.init(e,t)},init(e,t){const n=e.fields,i=e.query,r=this._indices={},o=this._dims=[],s=i.length;let a=0,u,l;for(;a<s;++a)u=n[a].fname,l=r[u]||(r[u]=iE()),o.push(nE(l,a,i[a]));return this.eval(e,t)},reinit(e,t){const n=t.materialize().fork(),i=e.fields,r=e.query,o=this._indices,s=this._dims,a=this.value,u=a.curr(),l=a.prev(),c=a.all(),f=n.rem=n.add,d=n.mod,h=r.length,g={};let p,m,y,x,b,v,w,S,_;if(l.set(u),t.rem.length&&(b=this.remove(e,t,n)),t.add.length&&a.add(t.add),t.mod.length)for(v={},x=t.mod,w=0,S=x.length;w<S;++w)v[x[w]._index]=1;for(w=0;w<h;++w)_=i[w],(!s[w]||e.modified("fields",w)||t.modified(_.fields))&&(y=_.fname,(p=g[y])||(o[y]=m=iE(),g[y]=p=m.insert(_,t.source,0)),s[w]=nE(m,w,r[w]).onAdd(p,u));for(w=0,S=a.data().length;w<S;++w)b[w]||(l[w]!==u[w]?f.push(w):v[w]&&u[w]!==c&&d.push(w));return a.mask=(1<<h)-1,n},eval(e,t){const n=t.materialize().fork(),i=this._dims.length;let r=0;return t.rem.length&&(this.remove(e,t,n),r|=(1<<i)-1),e.modified("query")&&!e.modified("fields")&&(r|=this.update(e,t,n)),t.add.length&&(this.insert(e,t,n),r|=(1<<i)-1),t.mod.length&&(this.modify(t,n),r|=(1<<i)-1),this.value.mask=r,n},insert(e,t,n){const i=t.add,r=this.value,o=this._dims,s=this._indices,a=e.fields,u={},l=n.add,c=r.size()+i.length,f=o.length;let d=r.size(),h,g,p;r.resize(c,f),r.add(i);const m=r.curr(),y=r.prev(),x=r.all();for(h=0;h<f;++h)g=a[h].fname,p=u[g]||(u[g]=s[g].insert(a[h],i,d)),o[h].onAdd(p,m);for(;d<c;++d)y[d]=x,m[d]!==x&&l.push(d)},modify(e,t){const n=t.mod,i=this.value,r=i.curr(),o=i.all(),s=e.mod;let a,u,l;for(a=0,u=s.length;a<u;++a)l=s[a]._index,r[l]!==o&&n.push(l)},remove(e,t,n){const i=this._indices,r=this.value,o=r.curr(),s=r.prev(),a=r.all(),u={},l=n.rem,c=t.rem;let f,d,h,g;for(f=0,d=c.length;f<d;++f)h=c[f]._index,u[h]=1,s[h]=g=o[h],o[h]=a,g!==a&&l.push(h);for(h in i)i[h].remove(d,u);return this.reindex(t,d,u),u},reindex(e,t,n){const i=this._indices,r=this.value;e.runAfter(()=>{const o=r.remove(t,n);for(const s in i)i[s].reindex(o)})},update(e,t,n){const i=this._dims,r=e.query,o=t.stamp,s=i.length;let a=0,u,l;for(n.filters=0,l=0;l<s;++l)e.modified("query",l)&&(u=l,++a);if(a===1)a=i[u].one,this.incrementOne(i[u],r[u],n.add,n.rem);else for(l=0,a=0;l<s;++l)e.modified("query",l)&&(a|=i[l].one,this.incrementAll(i[l],r[l],o,n.add),n.rem=n.add);return a},incrementAll(e,t,n,i){const r=this.value,o=r.seen(),s=r.curr(),a=r.prev(),u=e.index(),l=e.bisect(e.range),c=e.bisect(t),f=c[0],d=c[1],h=l[0],g=l[1],p=e.one;let m,y,x;if(f<h)for(m=f,y=Math.min(h,d);m<y;++m)x=u[m],o[x]!==n&&(a[x]=s[x],o[x]=n,i.push(x)),s[x]^=p;else if(f>h)for(m=h,y=Math.min(f,g);m<y;++m)x=u[m],o[x]!==n&&(a[x]=s[x],o[x]=n,i.push(x)),s[x]^=p;if(d>g)for(m=Math.max(f,g),y=d;m<y;++m)x=u[m],o[x]!==n&&(a[x]=s[x],o[x]=n,i.push(x)),s[x]^=p;else if(d<g)for(m=Math.max(h,d),y=g;m<y;++m)x=u[m],o[x]!==n&&(a[x]=s[x],o[x]=n,i.push(x)),s[x]^=p;e.range=t.slice()},incrementOne(e,t,n,i){const r=this.value,o=r.curr(),s=e.index(),a=e.bisect(e.range),u=e.bisect(t),l=u[0],c=u[1],f=a[0],d=a[1],h=e.one;let g,p,m;if(l<f)for(g=l,p=Math.min(f,c);g<p;++g)m=s[g],o[m]^=h,n.push(m);else if(l>f)for(g=f,p=Math.min(l,d);g<p;++g)m=s[g],o[m]^=h,i.push(m);if(c>d)for(g=Math.max(l,d),p=c;g<p;++g)m=s[g],o[m]^=h,n.push(m);else if(c<d)for(g=Math.max(f,c),p=d;g<p;++g)m=s[g],o[m]^=h,i.push(m);e.range=t.slice()}});function ov(e){F.call(this,null,e)}ov.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."}]};q(ov,F,{transform(e,t){const n=~(e.ignore||0),i=e.filter,r=i.mask;if((r&n)===0)return t.StopPropagation;const o=t.fork(t.ALL),s=i.data(),a=i.curr(),u=i.prev(),l=c=>a[c]&n?null:s[c];return o.filter(o.MOD,l),r&r-1?(o.filter(o.ADD,c=>{const f=a[c]&n;return!f&&f^u[c]&n?s[c]:null}),o.filter(o.REM,c=>{const f=a[c]&n;return f&&!(f^(f^u[c]&n))?s[c]:null})):(o.filter(o.ADD,l),o.filter(o.REM,c=>(a[c]&n)===r?s[c]:null)),o.filter(o.SOURCE,c=>l(c._index))}});const nV=Object.freeze(Object.defineProperty({__proto__:null,crossfilter:rv,resolvefilter:ov},Symbol.toStringTag,{value:"Module"})),iV="RawCode",Ls="Literal",rV="Property",oV="Identifier",sV="ArrayExpression",aV="BinaryExpression",ED="CallExpression",uV="ConditionalExpression",lV="LogicalExpression",cV="MemberExpression",fV="ObjectExpression",dV="UnaryExpression";function wi(e){this.type=e}wi.prototype.visit=function(e){let t,n,i;if(e(this))return 1;for(t=hV(this),n=0,i=t.length;n<i;++n)if(t[n].visit(e))return 1};function hV(e){switch(e.type){case sV:return e.elements;case aV:case lV:return[e.left,e.right];
7case ED:return[e.callee].concat(e.arguments);case uV:return[e.test,e.consequent,e.alternate];case cV:return[e.object,e.property];case fV:return e.properties;case rV:return[e.key,e.value];case dV:return[e.argument];case oV:case Ls:case iV:default:return[]}}var or,J,T,Lt,$e,Bg=1,jc=2,Is=3,jo=4,Ug=5,ia=6,fn=7,qc=8,gV=9;or={};or[Bg]="Boolean";or[jc]="<end>";or[Is]="Identifier";or[jo]="Keyword";or[Ug]="Null";or[ia]="Numeric";or[fn]="Punctuator";or[qc]="String";or[gV]="RegularExpression";var pV="ArrayExpression",mV="BinaryExpression",yV="CallExpression",xV="ConditionalExpression",kD="Identifier",bV="Literal",vV="LogicalExpression",wV="MemberExpression",_V="ObjectExpression",SV="Property",EV="UnaryExpression",ht="Unexpected token %0",kV="Unexpected number",$V="Unexpected string",AV="Unexpected identifier",CV="Unexpected reserved word",MV="Unexpected end of input",z1="Invalid regular expression",qm="Invalid regular expression: missing /",$D="Octal literals are not allowed in strict mode.",FV="Duplicate data property in object literal not allowed in strict mode",At="ILLEGAL",oc="Disabled.",DV=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\\u
70AE1\\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]"),TV
vendor: 5,882 bytes, line 7
7=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-\\uFDC7\\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 
7jg(e,t){if(!e)throw new Error("ASSERT: "+t)}function wr(e){return e>=48&&e<=57}function sv(e){return"0123456789abcdefABCDEF".includes(e)}function Bl(e){return"01234567".includes(e)}function NV(e){return e===32||e===9||e===11||e===12||e===160||e>=5760&&[5760,6158,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8239,8287,12288,65279].includes(e)}function sc(e){return e===10||e===13||e===8232||e===8233}function Wc(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e===92||e>=128&&DV.test(String.fromCharCode(e))}function Ch(e){return e===36||e===95||e>=65&&e<=90||e>=97&&e<=122||e>=48&&e<=57||e===92||e>=128&&TV.test(String.fromCharCode(e))}const RV={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 AD(){for(;T<Lt;){const e=J.charCodeAt(T);if(NV(e)||sc(e))++T;else break}}function P1(e){var t,n,i,r=0;for(n=e==="u"?4:2,t=0;t<n;++t)T<Lt&&sv(J[T])?(i=J[T++],r=r*16+"0123456789abcdef".indexOf(i.toLowerCase())):be({},ht,At);return String.fromCharCode(r)}function OV(){var e,t,n,i;for(e=J[T],t=0,e==="}"&&be({},ht,At);T<Lt&&(e=J[T++],!!sv(e));)t=t*16+"0123456789abcdef".indexOf(e.toLowerCase());return(t>1114111||e!=="}")&&be({},ht,At),t<=65535?String.fromCharCode(t):(n=(t-65536>>10)+55296,i=(t-65536&1023)+56320,String.fromCharCode(n,i))}function CD(){var e,t;for(e=J.charCodeAt(T++),t=String.fromCharCode(e),e===92&&(J.charCodeAt(T)!==117&&be({},ht,At),++T,e=P1("u"),(!e||e==="\\"||!Wc(e.charCodeAt(0)))&&be({},ht,At),t=e);T<Lt&&(e=J.charCodeAt(T),!!Ch(e));)++T,t+=String.fromCharCode(e),e===92&&(t=t.substr(0,t.length-1),J.charCodeAt(T)!==117&&be({},ht,At),++T,e=P1("u"),(!e||e==="\\"||!Ch(e.charCodeAt(0)))&&be({},ht,At),t+=e);return t}function zV(){var e,t;for(e=T++;T<Lt;){if(t=J.charCodeAt(T),t===92)return T=e,CD();if(Ch(t))++T;else break}return J.slice(e,T)}function PV(){var e,t,n;return e=T,t=J.charCodeAt(T)===92?CD():zV(),t.length===1?n=Is:RV.hasOwnProperty(t)?n=jo:t==="null"?n=Ug:t==="true"||t==="false"?n=Bg:n=Is,{type:n,value:t,start:e,end:T}}function Wm(){var e=T,t=J.charCodeAt(T),n,i=J[T],r,o,s;switch(t){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++T,{type:fn,value:String.fromCharCode(t),start:e,end:T};default:if(n=J.charCodeAt(T+1),n===61)switch(t){case 43:case 45:case 47:case 60:case 62:case 94:case 124:case 37:case 38:case 42:return T+=2,{type:fn,value:String.fromCharCode(t)+String.fromCharCode(n),start:e,end:T};case 33:case 61:return T+=2,J.charCodeAt(T)===61&&++T,{type:fn,value:J.slice(e,T),start:e,end:T}}}if(s=J.substr(T,4),s===">>>=")return T+=4,{type:fn,value:s,start:e,end:T};if(o=s.substr(0,3),o===">>>"||o==="<<="||o===">>=")return T+=3,{type:fn,value:o,start:e,end:T};if(r=o.substr(0,2),i===r[1]&&"+-<>&|".includes(i)||r==="=>")return T+=2,{type:fn,value:r,start:e,end:T};if(r==="//"&&be({},ht,At),"<>=!+-*%&|^/".includes(i))return++T,{type:fn,value:i,start:e,end:T};be({},ht,At)}function LV(e){let t="";for(;T<Lt&&sv(J[T]);)t+=J[T++];return t.length===0&&be({},ht,At),Wc(J.charCodeAt(T))&&be({},ht,At),{type:ia,value:parseInt("0x"+t,16),start:e,end:T}}function IV(e){let t="0"+J[T++];for(;T<Lt&&Bl(J[T]);)t+=J[T++];return(Wc(J.charCodeAt(T))||wr(J.charCodeAt(T)))&&be({},ht,At),{type:ia,value:parseInt(t,8),octal:!0,start:e,end:T}}function rE(){var e,t,n;if(n=J[T],jg(wr(n.charCodeAt(0))||n===".","Numeric literal must start with a decimal digit or a decimal point"),t=T,e="",n!=="."){if(e=J[T++],n=J[T],e==="0"){if(n==="x"||n==="X")return++T,LV(t);if(Bl(n))return IV(t);n&&wr(n.charCodeAt(0))&&be({},ht,At)}for(;wr(J.charCodeAt(T));)e+=J[T++];n=J[T]}if(n==="."){for(e+=J[T++];wr(J.charCodeAt(T));)e+=J[T++];n=J[T]}if(n==="e"||n==="E")if(e+=J[T++],n=J[T],(n==="+"||n==="-")&&(e+=J[T++]),wr(J.charCodeAt(T)))for(;wr(J.charCodeAt(T));)e+=J[T++];else be({},ht,At);return Wc(J.charCodeAt(T))&&be({},ht,At),{type:ia,value:parseFloat(e),start:t,end:T}}function BV(){var e="",t,n,i,r,o=!1;for(t=J[T],jg(t==="'"||t==='"',"String literal must starts with a quote"),n=T,++T;T<Lt;
7)if(i=J[T++],i===t){t="";break}else if(i==="\\")if(i=J[T++],!i||!sc(i.charCodeAt(0)))switch(i){case"u":case"x":J[T]==="{"?(++T,e+=OV()):e+=P1(i);break;case"n":e+=`
8`;break;case"r":e+="\r";break;case"t":e+="	";break;case"b":e+="\b";break;case"f":e+="\f";break;case"v":e+="\v";break;default:Bl(i)?(r="01234567".indexOf(i),r!==0&&(o=!0),T<Lt&&Bl(J[T])&&(o=!0,r=r*8+"01234567".indexOf(J[T++]),"0123".includes(i)&&T<Lt&&Bl(J[T])&&(r=r*8+"01234567".indexOf(J[T++]))),e+=String.fromCharCode(r)):e+=i;break}else i==="\r"&&J[T]===`
9`&&++T;else{if(sc(i.charCodeAt(0)))break;e+=i}return t!==""&&be({},ht,At),{type:qc,value:e,octal:o,start:n,end:T}}function UV(e,t){let n=e;t.includes("u")&&(n=n.replace(/\\u\{([0-9a-fA-F]+)\}/g,(i,r)=>{if(parseInt(r,16)<=1114111)return"x";be({},z1)}).replace(/[\uD800-\uDBFF][\uDC00-\uDFFF]/g,"x"));try{new RegExp(n)}catch{be({},z1)}try{return new RegExp(e,t)}catch{return null}}function jV(){var e,t,n,i,r;for(e=J[T],jg(e==="/","Regular expression literal must start with a slash"),t=J[T++],n=!1,i=!1;T<Lt;)if(e=J[T++],t+=e,e==="\\")e=J[T++],sc(e.charCodeAt(0))&&be({},qm),t+=e;else if(sc(e.charCodeAt(0)))be({},qm);else if(n)e==="]"&&(n=!1);else if(e==="/"){i=!0;break}else e==="["&&(n=!0);return i||be({},qm),r=t.substr(1,t.length-2),{value:r,literal:t}}function qV(){var e,t,n;for(t="",n="";T<Lt&&(e=J[T],!!Ch(e.charCodeAt(0)));)++T,e==="\\"&&T<Lt?be({},ht,At):(n+=e,t+=e);return n.search(/[^gimuy]/g)>=0&&be({},z1,n),{value:n,literal:t}}function WV(){var e,t,n,i;return $e=null,AD(),e=T,t=jV(),n=qV(),i=UV(t.value,n.value),{literal:t.literal+n.literal,value:i,regex:{pattern:t.value,flags:n.value},start:e,end:T}}function HV(e){return e.type===Is||e.type===jo||e.type===Bg||e.type===Ug}function MD(){if(AD(),T>=Lt)return{type:jc,start:T,end:T};const e=J.charCodeAt(T);return Wc(e)?PV():e===40||e===41||e===59?Wm():e===39||e===34?BV():e===46?wr(J.charCodeAt(T+1))?rE():Wm():wr(e)?rE():Wm()}function hn(){const e=$e;return T=e.end,$e=MD(),T=e.end,e}function FD(){const e=T;$e=MD(),T=e}function GV(e){const t=new wi(pV);return t.elements=e,t}function oE(e,t,n){const i=new wi(e==="||"||e==="&&"?vV:mV);return i.operator=e,i.left=t,i.right=n,i}function VV(e,t){const n=new wi(yV);return n.callee=e,n.arguments=t,n}function YV(e,t,n){const i=new wi(xV);return i.test=e,i.consequent=t,i.alternate=n,i}function av(e){const t=new wi(kD);return t.name=e,t}function Cl(e){const t=new wi(bV);return t.value=e.value,t.raw=J.slice(e.start,e.end),e.regex&&(t.raw==="//"&&(t.raw="/(?:)/"),t.regex=e.regex),t}function sE(e,t,n){const i=new wi(wV);return i.computed=e==="[",i.object=t,i.property=n,i.computed||(n.member=!0),i}function XV(e){const t=new wi(_V);return t.properties=e,t}function aE(e,t,n){const i=new wi(SV);return i.key=t,i.value=n,i.kind=e,i}function KV(e,t){const n=new wi(EV);return n.operator=e,n.argument=t,n.prefix=!0,n}function be(e,t){var n,i=Array.prototype.slice.call(arguments,2),r=t.replace(/%(\d)/g,(o,s)=>(jg(s<i.length,"Message reference must be in range"),i[s]));throw n=new Error(r),n.index=T,n.description=r,n}function qg(e){e.type===jc&&be(e,MV),e.type===ia&&be(e,kV),e.type===qc&&be(e,$V),e.type===Is&&be(e,AV),e.type===jo&&be(e,CV),be(e,ht,e.value)}function It(e){const t=hn();(t.type!==fn||t.value!==e)&&qg(t)}function ze(e){return $e.type===fn&&$e.value===e}function Hm(e){return $e.type===jo&&$e.value===e}function ZV(){const e=[];for(T=$e.start,It("[");!ze("]");)ze(",")?(hn(),e.push(null)):(e.push(Bs()),ze("]")||It(","));return hn(),GV(e)}function uE(){T=$e.start;const e=hn();return e.type===qc||e.type===ia?(e.octal&&be(e,$D),Cl(e)):av(e.value)}function QV(){var e,t,n,i;if(T=$e.start,e=$e,e.type===Is)return n=uE(),It(":"),i=Bs(),aE("init",n,i);if(e.type===jc||e.type===fn)qg(e);else return t=uE(),It(":"),i=Bs(),aE("init",t,i)}function JV(){var e=[],t,n,i,r={},o=String;for(T=$e.start,It("{");!ze("}");)t=QV(),t.key.type===kD?n=t.key.name:n=o(t.key.value),i="$"+n,Object.prototype.hasOwnProperty.call(r,i)?be({},FV):r[i]=!0,e.push(t),ze("}")||It(",");return It("}"),XV(e)}function eY(){It("(");const e=uv();return It(")"),e}const tY={if:1};function nY(){var e,t,n;if(ze("("))return eY();if(ze("["))return ZV();if(ze("{"))return JV();if(e=$e.type,T=$e.start,e===Is||tY[$e.value])n=av(hn().value);else if(e===qc||e===ia)$e.octal&&be($e,$D),n=Cl(hn());else{if(e===jo)throw new Error(oc);e===Bg?(t=hn(),t.value=t.value==="true",n=Cl(t)):e===Ug?(t=hn(),t.value=null,n=Cl(t)):ze("/")||ze("/=")?(n=Cl(WV()),FD()):qg(hn())}return n}function iY(){const e=[];
9if(It("("),!ze(")"))for(;T<Lt&&(e.push(Bs()),!ze(")"));)It(",");return It(")"),e}function rY(){T=$e.start;const e=hn();return HV(e)||qg(e),av(e.value)}function oY(){return It("."),rY()}function sY(){It("[");const e=uv();return It("]"),e}function aY(){var e,t,n;for(e=nY();;)if(ze("."))n=oY(),e=sE(".",e,n);else if(ze("("))t=iY(),e=VV(e,t);else if(ze("["))n=sY(),e=sE("[",e,n);else break;return e}function lE(){const e=aY();if($e.type===fn&&(ze("++")||ze("--")))throw new Error(oc);return e}function dd(){var e,t;if($e.type!==fn&&$e.type!==jo)t=lE();else{if(ze("++")||ze("--"))throw new Error(oc);if(ze("+")||ze("-")||ze("~")||ze("!"))e=hn(),t=dd(),t=KV(e.value,t);else{if(Hm("delete")||Hm("void")||Hm("typeof"))throw new Error(oc);t=lE()}}return t}function cE(e){let t=0;if(e.type!==fn&&e.type!==jo)return 0;switch(e.value){case"||":t=1;break;case"&&":t=2;break;case"|":t=3;break;case"^":t=4;break;case"&":t=5;break;case"==":case"!=":case"===":case"!==":t=6;break;case"<":case">":case"<=":case">=":case"instanceof":case"in":t=7;break;case"<<":case">>":case">>>":t=8;break;case"+":case"-":t=9;break;case"*":case"/":case"%":t=11;break}return t}function uY(){var e,t,n,i,r,o,s,a,u,l;if(e=$e,u=dd(),i=$e,r=cE(i),r===0)return u;for(i.prec=r,hn(),t=[e,$e],s=dd(),o=[u,i,s];(r=cE($e))>0;){for(;o.length>2&&r<=o[o.length-2].prec;)s=o.pop(),a=o.pop().value,u=o.pop(),t.pop(),n=oE(a,u,s),o.push(n);i=hn(),i.prec=r,o.push(i),t.push($e),n=dd(),o.push(n)}for(l=o.length-1,n=o[l],t.pop();l>1;)t.pop(),n=oE(o[l-1].value,o[l-2],n),l-=2;return n}function Bs(){var e,t,n;return e=uY(),ze("?")&&(hn(),t=Bs(),It(":"),n=Bs(),e=YV(e,t,n)),e}function uv(){const e=Bs();if(ze(","))throw new Error(oc);return e}function DD(e){J=e,T=0,Lt=J.length,$e=null,FD();const t=uv();if($e.type!==jc)throw new Error("Unexpect token after expression.");return t}var TD={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 ND(e){function t(s,a,u,l){let c=e(a[0]);return u&&(c=u+"("+c+")",u.lastIndexOf("new ",0)===0&&(c="("+c+")")),c+"."+s+(l<0?"":l===0?"()":"("+a.slice(1).map(e).join(",")+")")}function n(s,a,u){return l=>t(s,l,a,u)}const i="new Date",r="String",o="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(s){s.length<3&&R("Missing arguments to clamp function."),s.length>3&&R("Too many arguments to clamp function.");const a=s.map(e);return"Math.max("+a[1]+", Math.min("+a[2]+","+a[0]+"))"},now:"Date.now",utc:"Date.UTC",datetime:i,date:n("getDate",i,0),day:n("getDay",i,0),year:n("getFullYear",i,0),month:n("getMonth",i,0),hours:n("getHours",i,0),minutes:n("getMinutes",i,0),seconds:n("getSeconds",i,0),milliseconds:n("getMilliseconds",i,0),time:n("getTime",i,0),timezoneoffset:n("getTimezoneOffset",i,0),utcdate:n("getUTCDate",i,0),utcday:n("getUTCDay",i,0),utcyear:n("getUTCFullYear",i,0),utcmonth:n("getUTCMonth",i,0),utchours:n("getUTCHours",i,0),utcminutes:n("getUTCMinutes",i,0),utcseconds:n("getUTCSeconds",i,0),utcmilliseconds:n("getUTCMilliseconds",i,0),length:n("length",null,-1),parseFloat:"parseFloat",parseInt:"parseInt",upper:n("toUpperCase",r,0),lower:n("toLowerCase",r,0),substring:n("substring",r),split:n("split",r),trim:n("trim",r,0),btoa:"btoa",atob:"atob",regexp:o,test:n("test",o),if:function(s){s.length<3&&R("Missing arguments to if function."),s.length>3&&R("Too many arguments to if function.");const a=s.map(e);return"("+a[0]+"?"+a[1]+":"+a[2]+")"}}}function lY(e){const t=e&&e.length-1;return t&&(e[0]==='"'&&e[t]==='"'||e[0]==="'"&&e[t]==="'")?e.slice(1,-1):e}function cY(e){e=e||{};const t=e.allowed?Gi(e.allowed):{},n=e.forbidden?Gi(e.forbidden):{},i=e.constants||TD,r=(e.functions||ND)(f),o=e.globalvar,s=e.fieldvar,a=ce(o
9)?o:g=>`${o}["${g}"]`;let u={},l={},c=0;function f(g){if(Y(g))return g;const p=d[g.type];return p==null&&R("Unsupported type: "+g.type),p(g)}const d={Literal:g=>g.raw,Identifier:g=>{const p=g.name;return c>0?p:X(n,p)?R("Illegal identifier: "+p):X(i,p)?i[p]:X(t,p)?p:(u[p]=1,a(p))},MemberExpression:g=>{const p=!g.computed,m=f(g.object);p&&(c+=1);const y=f(g.property);return m===s&&(l[lY(y)]=1),p&&(c-=1),m+(p?"."+y:"["+y+"]")},CallExpression:g=>{g.callee.type!=="Identifier"&&R("Illegal callee type: "+g.callee.type);const p=g.callee.name,m=g.arguments,y=X(r,p)&&r[p];return y||R("Unrecognized function: "+p),ce(y)?y(m):y+"("+m.map(f).join(",")+")"},ArrayExpression:g=>"["+g.elements.map(f).join(",")+"]",BinaryExpression:g=>"("+f(g.left)+" "+g.operator+" "+f(g.right)+")",UnaryExpression:g=>"("+g.operator+f(g.argument)+")",ConditionalExpression:g=>"("+f(g.test)+"?"+f(g.consequent)+":"+f(g.alternate)+")",LogicalExpression:g=>"("+f(g.left)+g.operator+f(g.right)+")",ObjectExpression:g=>"{"+g.properties.map(f).join(",")+"}",Property:g=>{c+=1;const p=f(g.key);return c-=1,p+":"+f(g.value)}};function h(g){const p={code:f(g),globals:Object.keys(u),fields:Object.keys(l)};return u={},l={},p}return h.functions=r,h.constants=i,h}const fE=Symbol("vega_selection_getter");function RD(e){return(!e.getter||!e.getter[fE])&&(e.getter=hi(e.field),e.getter[fE]=!0),e.getter}const lv="intersect",dE="union",fY="vlMulti",dY="vlPoint",hE="or",hY="and",Oi="_vgsid_",ac=hi(Oi),gY="E",pY="R",mY="R-E",yY="R-LE",xY="R-RE",bY="E-LT",vY="E-LTE",wY="E-GT",_Y="E-GTE",SY="E-VALID",EY="E-ONE",Mh="index:unit";function gE(e,t){for(var n=t.fields,i=t.values,r=n.length,o=0,s,a;o<r;++o)if(a=n[o],s=RD(a)(e),xs(s)&&(s=Xt(s)),xs(i[o])&&(i[o]=Xt(i[o])),z(i[o])&&xs(i[o][0])&&(i[o]=i[o].map(Xt)),a.type===gY){if(z(i[o])?!i[o].includes(s):s!==i[o])return!1}else if(a.type===pY){if(!al(s,i[o]))return!1}else if(a.type===xY){if(!al(s,i[o],!0,!1))return!1}else if(a.type===mY){if(!al(s,i[o],!1,!1))return!1}else if(a.type===yY){if(!al(s,i[o],!1,!0))return!1}else if(a.type===bY){if(s>=i[o])return!1}else if(a.type===vY){if(s>i[o])return!1}else if(a.type===wY){if(s<=i[o])return!1}else if(a.type===_Y){if(s<i[o])return!1}else if(a.type===SY){if(s===null||isNaN(s))return!1}else if(a.type===EY&&i[o].indexOf(s)===-1)return!1;return!0}function kY(e,t,n){for(var i=this.context.data[e],r=i?i.values.value:[],o=i?i[Mh]&&i[Mh].value:void 0,s=n===lv,a=r.length,u=0,l,c,f,d,h;u<a;++u)if(l=r[u],o&&s){if(c=c||{},f=c[d=l.unit]||0,f===-1)continue;if(h=gE(t,l),c[d]=h?-1:++f,h&&o.size===1)return!0;if(!h&&f===o.get(d).count)return!1}else if(h=gE(t,l),s^h)return h;return a&&s}const OD=_u(ac),$Y=OD.left,AY=OD.right;function CY(e,t,n){const i=this.context.data[e],r=i?i.values.value:[],o=i?i[Mh]&&i[Mh].value:void 0,s=n===lv,a=ac(t),u=$Y(r,a);if(u===r.length||ac(r[u])!==a)return!1;if(o&&s){if(o.size===1)return!0;if(AY(r,a)-u<o.size)return!1}return!0}function MY(e,t){return e.map(n=>le(t.fields?{values:t.fields.map(i=>RD(i)(n.datum))}:{[Oi]:ac(n.datum)},t))}function FY(e,t,n,i){for(var r=this.context.data[e],o=r?r.values.value:[],s={},a={},u={},l,c,f,d,h,g,p,m,y,x,b=o.length,v=0,w,S;v<b;++v)if(l=o[v],d=l.unit,c=l.fields,f=l.values,c&&f){for(w=0,S=c.length;w<S;++w)h=c[w],p=s[h.field]||(s[h.field]={}),m=p[d]||(p[d]=[]),u[h.field]=y=h.type.charAt(0),x=Gm[`${y}_union`],p[d]=x(m,H(f[w]));n&&(m=a[d]||(a[d]=[]),m.push(H(f).reduce((_,E,k)=>(_[c[k].field]=E,_),{})))}else h=Oi,g=ac(l),p=s[h]||(s[h]={}),m=p[d]||(p[d]=[]),m.push(g),n&&(m=a[d]||(a[d]=[]),m.push({[Oi]:g}));if(t=t||dE,s[Oi]?s[Oi]=Gm[`${Oi}_${t}`](...Object.values(s[Oi])):Object.keys(s).forEach(_=>{s[_]=Object.keys(s[_]).map(E=>s[_][E]).reduce((E,k)=>E===void 0?k:Gm[`${u[_]}_${t}`](E,k))}),o=Object.keys(a),n&&o.length){const _=i?dY:fY;s[_]=t===dE?{[hE]:o.reduce((E,k)=>(E.push(...a[k]),E),[])}:{[hY]:o.map(E=>({[hE]:a[E]}))}}return s}var Gm={[`${Oi}_union`]:$6,[`${Oi}_intersect`]:E6,E_union:function(e,t){if(!e.length)return t;for(var n=0,i=t.length;n<i;++n)e.includes(t[n])||e.push(t[n]);return e},E_intersect:function(e,t){return e.length?e.filter(n=>t.includes(n)):t},R_union:function(e,t){var n=Xt(t[0]),i=Xt(t[1]);return n>i&&(n=t[1],i=t[0]),e.length?(e[0]>n&&(e[0]=n),e[1]<i&&(e[1]=i),e):[n,i]},R_intersect:function(e,t){var n=Xt(t[0]),i=Xt(t[1]);return n>
9i&&(n=t[1],i=t[0]),e.length?i<e[0]||e[1]<n?[]:(e[0]<n&&(e[0]=n),e[1]>i&&(e[1]=i),e):[n,i]}};const DY=":",TY="@";function cv(e,t,n,i){t[0].type!==Ls&&R("First argument to selection functions must be a string literal.");const r=t[0].value,o=t.length>=2&&xe(t).value,s="unit",a=TY+s,u=DY+r;o===lv&&!X(i,a)&&(i[a]=n.getData(r).indataRef(n,s)),X(i,u)||(i[u]=n.getData(r).tuplesRef())}function zD(e){const t=this.context.data[e];return t?t.values.value:[]}function NY(e,t,n){const i=this.context.data[e]["index:"+t],r=i?i.value.get(n):void 0;return r&&r.count}function RY(e,t){const n=this.context.dataflow,i=this.context.data[e],r=i.input;return n.pulse(r,n.changeset().remove(gi).insert(t)),1}function OY(e,t,n){if(e){const i=this.context.dataflow,r=e.mark.source;i.pulse(r,i.changeset().encode(e,t))}return n!==void 0?n:e}const Hc=e=>function(t,n){const i=this.context.dataflow.locale();return t===null?"null":i[e](n)(t)},zY=Hc("format"),PD=Hc("timeFormat"),PY=Hc("utcFormat"),LY=Hc("timeParse"),IY=Hc("utcParse"),If=new Date(2e3,0,1);function Wg(e,t,n){return!Number.isInteger(e)||!Number.isInteger(t)?"":(If.setYear(2e3),If.setMonth(e),If.setDate(t),PD.call(this,If,n))}function BY(e){return Wg.call(this,e,1,"%B")}function UY(e){return Wg.call(this,e,1,"%b")}function jY(e){return Wg.call(this,0,2+e,"%A")}function qY(e){return Wg.call(this,0,2+e,"%a")}const WY=":",HY="@",L1="%",LD="$";function fv(e,t,n,i){t[0].type!==Ls&&R("First argument to data functions must be a string literal.");const r=t[0].value,o=WY+r;if(!X(o,i))try{i[o]=n.getData(r).tuplesRef()}catch{}}function GY(e,t,n,i){t[0].type!==Ls&&R("First argument to indata must be a string literal."),t[1].type!==Ls&&R("Second argument to indata must be a string literal.");const r=t[0].value,o=t[1].value,s=HY+o;X(s,i)||(i[s]=n.getData(r).indataRef(n,o))}function tn(e,t,n,i){if(t[0].type===Ls)pE(n,i,t[0].value);else for(e in n.scales)pE(n,i,e)}function pE(e,t,n){const i=L1+n;if(!X(t,i))try{t[i]=e.scaleRef(n)}catch{}}function sr(e,t){if(Y(e)){const n=t.scales[e];return n&&m_(n.value)?n.value:void 0}else if(ce(e))return m_(e)?e:void 0}function VY(e,t,n){t.__bandwidth=r=>r&&r.bandwidth?r.bandwidth():0,n._bandwidth=tn,n._range=tn,n._scale=tn;const i=r=>"_["+(r.type===Ls?j(L1+r.value):j(L1)+"+"+e(r))+"]";return{_bandwidth:r=>`this.__bandwidth(${i(r[0])})`,_range:r=>`${i(r[0])}.range()`,_scale:r=>`${i(r[0])}(${e(r[1])})`}}function dv(e,t){return function(n,i,r){if(n){const o=sr(n,(r||this).context);return o&&o.path[e](i)}else return t(i)}}const YY=dv("area",fj),XY=dv("bounds",pj),KY=dv("centroid",wj);function ZY(e,t){const n=sr(e,(t||this).context);return n&&n.scale()}function QY(e){const t=this.context.group;let n=!1;if(t)for(;e;){if(e===t){n=!0;break}e=e.mark.group}return n}function hv(e,t,n){try{e[t].apply(e,["EXPRESSION"].concat([].slice.call(n)))}catch(i){e.warn(i)}return n[n.length-1]}function JY(){return hv(this.context.dataflow,"warn",arguments)}function eX(){return hv(this.context.dataflow,"info",arguments)}function tX(){return hv(this.context.dataflow,"debug",arguments)}function Vm(e){const t=e/255;return t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4)}function I1(e){const t=Co(e),n=Vm(t.r),i=Vm(t.g),r=Vm(t.b);return .2126*n+.7152*i+.0722*r}function nX(e,t){const n=I1(e),i=I1(t),r=Math.max(n,i),o=Math.min(n,i);return(r+.05)/(o+.05)}function iX(){const e=[].slice.call(arguments);return e.unshift({}),le(...e)}function ID(e,t){return e===t||e!==e&&t!==t?!0:z(e)?z(t)&&e.length===t.length?rX(e,t):!1:V(e)&&V(t)?BD(e,t):!1}function rX(e,t){for(let n=0,i=e.length;n<i;++n)if(!ID(e[n],t[n]))return!1;return!0}function BD(e,t){for(const n in e)if(!ID(e[n],t[n]))return!1;return!0}function mE(e){return t=>BD(e,t)}function oX(e,t,n,i,r,o){const s=this.context.dataflow,a=this.context.data[e],u=a.input,l=s.stamp();let c=a.changes,f,d;if(s._trigger===!1||!(u.value.length||t||i))return 0;if((!c||c.stamp<l)&&(a.changes=c=s.changeset(),c.stamp=l,s.runAfter(()=>{a.modified=!0,s.pulse(u,c).run()},!0,1)),n&&(f=n===!0?gi:z(n)||Ny(n)?n:mE(n),c.remove(f)),t&&c.insert(t),i&&(f=mE(i),u.value.some(f)?c.remove(f):c.insert(i)),r)for(d in o)c.modify(r,d,o[d]);return 1}function sX(e){const t=e.touches,n=t[0].clientX-t[1].clientX,i=t[0].clientY-t[1].clientY;return Math.hypot(n,i)}function aX(e){const t=e.touches;return Math.atan2(t[0].clientY-t[1].clientY,t[0].clientX-t[1].clientX)}const yE={};function uX(e,t){const n=yE[t]||(yE[t]=hi(t));return z(e)?e.map(n):n(e)}function Hg(e){return z(e)||ArrayBuffer.isView(e)?e:null}
9function gv(e){return Hg(e)||(Y(e)?e:null)}function lX(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return Hg(e).join(...n)}function cX(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return gv(e).indexOf(...n)}function fX(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return gv(e).lastIndexOf(...n)}function dX(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];return gv(e).slice(...n)}function hX(e,t,n){return ce(n)&&R("Function argument passed to replace."),!Y(t)&&!w$(t)&&R("Please pass a string or RegExp argument to replace."),String(e).replace(t,n)}function gX(e){return Hg(e).slice().reverse()}function pX(e){return Hg(e).slice().sort(eg)}function mX(e,t,n){return Rx(e||0,t||0,n||0)}function yX(e,t){const n=sr(e,(t||this).context);return n&&n.bandwidth?n.bandwidth():0}function xX(e,t){const n=sr(e,(t||this).context);return n?n.copy():void 0}function bX(e,t){const n=sr(e,(t||this).context);return n?n.domain():[]}function vX(e,t,n){const i=sr(e,(n||this).context);return i?z(t)?(i.invertRange||i.invert)(t):(i.invert||i.invertExtent)(t):void 0}function wX(e,t){const n=sr(e,(t||this).context);return n&&n.range?n.range():[]}function _X(e,t,n){const i=sr(e,(n||this).context);return i?i(t):void 0}function SX(e,t,n,i,r){e=sr(e,(r||this).context);const o=iL(t,n);let s=e.domain(),a=s[0],u=xe(s),l=nn;return u-a?l=CM(e,a,u):e=(e.interpolator?we("sequential")().interpolator(e.interpolator()):we("linear")().interpolate(e.interpolate()).range(e.range())).domain([a=0,u=1]),e.ticks&&(s=e.ticks(+i||15),a!==s[0]&&s.unshift(a),u!==xe(s)&&s.push(u)),s.forEac
9h(c=>o.stop(l(c),e(c))),o}function EX(e,t,n){const i=sr(e,(n||this).context);return function(r){return i?i.path.context(r)(t):""}}function kX(e){let t=null;return function(n){return n?Bd(n,t=t||Wx(e)):e}}const UD=e=>e.data;function jD(e,t){const n=zD.call(t,e);return n.root&&n.root.lookup||{}}function $X(e,t,n){const i=jD(e,this),r=i[t],o=i[n];return r&&o?r.path(o).map(UD):void 0}function AX(e,t){const n=jD(e,this)[t];return n?n.ancestors().map(UD):void 0}const qD=()=>typeof window<"u"&&window||null;function CX(){const e=qD();return e?e.screen:{}}function MX(){const e=qD();return e?[e.innerWidth,e.innerHeight]:[void 0,void 0]}function FX(){const e=this.context.dataflow,t=e.container&&e.container();return t?[t.clientWidth,t.clientHeight]:[void 0,void 0]}function WD(e,t,n){if(!e)return[];const[i,r]=e,o=new it().set(i[0],i[1],r[0],r[1]),s=n||this.context.dataflow.scenegraph().root;return HB(s,o,DX(t))}function DX(e){let t=null;if(e){const n=H(e.marktype),i=H(e.markname);t=r=>(!n.length||n.some(o=>r.marktype===o))&&(!i.length||i.some(o=>r.name===o))}return t}function TX(e,t,n){let i=arguments.length>3&&arguments[3]!==void 0?arguments[3]:5;e=H(e);const r=e[e.length-1];return r===void 0||Math.hypot(r[0]-t,r[1]-n)>i?[...e,[t,n]]:e}function NX(e){return H(e).reduce((t,n,i)=>{let[r,o]=n;return t+=i==0?`M ${r},${o} `:i===e.length-1?" Z":`L ${r},${o} `},"")}function RX(e,t,n){const{x:i,y:r,mark:o}=n,s=new it().set(Number.MAX_SAFE_INTEGER,Number.MAX_SAFE_INTEGER,Number.MIN_SAFE_INTEGER,Number.MIN_SAFE_INTEGER);for(const[u,l]of t)u<s.x1&&(s.x1=u),u>s.x2&&(s.x2=u),l<s.y1&&(s.y1=l),l>s.y2&&(s.y2=l);return s.translate(i,r),WD([[s.x1,s.y1],[s.x2,s.y2]],e,o).filter(u=>OX(u.x,u.y,t))}function OX(e,t,n){let i=0;for(let r=0,o=n.length-1;r<n.length;o=r++){const[s,a]=n[o],[u,l]=n[r];l>t!=a>t&&e<(s-u)*(t-l)/(a-l)+u&&i++}return i&1}const uc={random(){return jr()},cumulativeNormal:Iy,cumulativeLogNormal:TA,cumulativeUniform:zA,densityNormal:AA,densityLogNormal:DA,densityUniform:OA,quantileNormal:By,quantileLogNormal:NA,quantileUniform:PA,sampleNormal:Ly,sampleLogNormal:FA,sampleUniform:RA,isArray:z,isBoolean:wu,isDate:xs,isDefined(e){return e!==void 0},isNumber:Ce,isObject:V,isRegExp:w$,isString:Y,isTuple:Ny,isValid(e){return e!=null&&e===e},toBoolean:S$,toDate(e){return E$(e)},toNumber:Xt,toString:k$,indexof:cX,join:lX,lastindexof:fX,replace:hX,reverse:gX,sort:pX,slice:dX,flush:WO,lerp:GO,merge:iX,pad:KO,peek:xe,pluck:uX,span:tg,inrange:al,truncate:QO,rgb:Co,lab:zd,hcl:Pd,hsl:Rd,luminance:I1,contrast:nX,sequence:An,format:zY,utcFormat:PY,utcParse:IY,utcOffset:c4,utcSequence:d4,timeFormat:PD,timeParse:LY,timeOffset:l4,timeSequence:f4,timeUnitSpecifier:V6,monthFormat:BY,monthAbbrevFormat:UY,dayFormat:jY,dayAbbrevFormat:qY,quarter:zO,utcquarter:PO,week:X6,utcweek:Q6,dayofyear:Y6,utcdayofyear:Z6,warn:JY,info:eX,debug:tX,extent(e){return Ir(e)},inScope:QY,intersect:WD,clampRange:LO,pinchDistance:sX,pinchAngle:aX,screen:CX,containerSize:FX,windowSize:MX,bandspace:mX,setdata:RY,pathShape:kX,panLinear:TO,panLog:NO,panPow:RO,panSymlog:OO,zoomLinear:m$,zoomLog:y$,zoomPow:g0,zoomSymlog:x$,encode:OY,modify:oX,lassoAppend:TX,lassoPath:NX,intersectLasso:RX},zX=["view","item","group","xy","x","y"],PX="event.vega.",HD="this.",pv={},GD={forbidden:["_"],allowed:["datum","event","item"],fieldvar:"datum",globalvar:e=>`_[${j(LD+e)}]`,functions:LX,constants:TD,visitors:pv},B1=cY(GD);function LX(e){const t=ND(e);zX.forEach(n=>t[n]=PX+n);for(const n in uc)t[n]=HD+n;return le(t,VY(e,uc,pv)),t}function Qe(e,t,n){return arguments.length===1?uc[e]:(uc[e]=t,n&&(pv[e]=n),B1&&(B1.functions[e]=HD+e),this)}Qe("bandwidth",yX,tn);Qe("copy",xX,tn);Qe("domain",bX,tn);Qe("range",wX,tn);Qe("invert",vX,tn);Qe("scale",_X,tn);Qe("gradient",SX,tn);Qe("geoArea",YY,tn);Qe("geoBounds",XY,tn);Qe("geoCentroid",KY,tn);Qe("geoShape",EX,tn);Qe("geoScale",ZY,tn);Qe("indata",NY,GY);Qe("data",zD,fv);Qe("treePath",$X,fv);Qe("treeAncestors",AX,fv);Qe("vlSelectionTest",kY,cv);Qe("vlSelectionIdTest",CY,cv);Qe("vlSelectionResolve",FY,cv);Qe("vlSelectionTuples",MY);function Qi(e,t){const n={};let i;try{e=Y(e)?e:j(e)+"",i=DD(e)}catch{R("Expression parse error: "+e)}i.visit(o=>{if(o.type!==ED)return;const s=o.callee.name,a=GD.visitors[s];a&&a(s,o.arguments,t,n)});const r=B1(i);
9return r.globals.forEach(o=>{const s=LD+o;!X(n,s)&&t.getSignal(o)&&(n[s]=t.signalRef(o))}),{$expr:le({code:r.code},t.options.ast?{ast:i}:null),$fields:r.fields,$params:n}}function IX(e){const t=this,n=e.operators||[];return e.background&&(t.background=e.background),e.eventConfig&&(t.eventConfig=e.eventConfig),e.locale&&(t.locale=e.locale),n.forEach(i=>t.parseOperator(i)),n.forEach(i=>t.parseOperatorParameters(i)),(e.streams||[]).forEach(i=>t.parseStream(i)),(e.updates||[]).forEach(i=>t.parseUpdate(i)),t.resolve()}const BX=Gi(["rule"]),xE=Gi(["group","image","rect"]);function UX(e,t){let n="";return BX[t]||(e.x2&&(e.x?(xE[t]&&(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);"),e.xc&&(n+="o.x=o.xc-(o.width||0)/2;"),e.y2&&(e.y?(xE[t]&&(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);"),e.yc&&(n+="o.y=o.yc-(o.height||0)/2;")),n}function mv(e){return(e+"").toLowerCase()}function jX(e){return mv(e)==="operator"}function qX(e){return mv(e)==="collect"}function tl(e,t,n){n.endsWith(";")||(n="return("+n+");");const i=Function(...t.concat(n));return e&&e.functions?i.bind(e.functions):i}function WX(e,t,n,i){return`((u = ${e}) < (v = ${t}) || u == null) && v != null ? ${n}
10  : (u > v || v == null) && u != null ? ${i}
11  : ((v = v instanceof Date ? +v : v), (u = u instanceof Date ? +u : u)) !== u && v === v ? ${n}
12  : v !== v && u === u ? ${i} : `}var HX={operator:(e,t)=>tl(e,["_"],t.code),parameter:(e,t)=>tl(e,["datum","_"],t.code),event:(e,t)=>tl(e,["event"],t.code),handler:(e,t)=>{const n=`var datum=event.item&&event.item.datum;return ${t.code};`;return tl(e,["_","event"],n)},encode:(e,t)=>{const{marktype:n,channels:i}=t;let r="var o=item,datum=o.datum,m=0,$;";for(const o in i){const s="o["+j(o)+"]";r+=`$=${i[o].code};if(${s}!==$)${s}=$,m=1;`}return r+=UX(i,n),r+="return m;",tl(e,["item","_"],r)},codegen:{get(e){const t=`[${e.map(j).join("][")}]`,n=Function("_",`return _${t};`);return n.path=t,n},comparator(e,t){let n;const i=(o,s)=>{const a=t[s];let u,l;return o.path?(u=`a${o.path}`,l=`b${o.path}`):((n=n||{})["f"+s]=o,u=`this.f${s}(a)`,l=`this.f${s}(b)`),WX(u,l,-a,a)},r=Function("a","b","var u, v; return "+e.map(i).join("")+"0;");return n?r.bind(n):r}}};function GX(e){const t=this;jX(e.type)||!e.type?t.operator(e,e.update?t.operatorExpression(e.update):null):t.transform(e,e.type)}function VX(e){const t=this;if(e.params){const n=t.get(e.id);n||R("Invalid operator id: "+e.id),t.dataflow.connect(n,n.parameters(t.parseParameters(e.params),e.react,e.initonly))}}function YX(e,t){t=t||{};const n=this;for(const i in e){const r=e[i];t[i]=z(r)?r.map(o=>bE(o,n,t)):bE(r,n,t)}return t}function bE(e,t,n){if(!e||!V(e))return e;for(let i=0,r=vE.length,o;i<r;++i)if(o=vE[i],X(e,o.key))return o.parse(e,t,n);return e}var vE=[{key:"$ref",parse:XX},{key:"$key",parse:ZX},{key:"$expr",parse:KX},{key:"$field",parse:QX},{key:"$encode",parse:eK},{key:"$compare",parse:JX},{key:"$context",parse:tK},{key:"$subflow",parse:nK},{key:"$tupleid",parse:iK}];function XX(e,t){return t.get(e.$ref)||R("Operator not defined: "+e.$ref)}function KX(e,t,n){e.$params&&t.parseParameters(e.$params,n);const i="e:"+e.$expr.code;return t.fn[i]||(t.fn[i]=Nn(t.parameterExpression(e.$expr),e.$fields))}function ZX(e,t){const n="k:"+e.$key+"_"+!!e.$flat;return t.fn[n]||(t.fn[n]=_$(e.$key,e.$flat,t.expr.codegen))}function QX(e,t){if(!e.$field)return null;const n="f:"+e.$field+"_"+e.$name;return t.fn[n]||(t.fn[n]=hi(e.$field,e.$name,t.expr.codegen))}function JX(e,t){const n="c:"+e.$compare+"_"+e.$order,i=H(e.$compare).map(r=>r&&r.$tupleid?ie:r);return t.fn[n]||(t.fn[n]=b$(i,e.$order,t.expr.codegen))}function eK(e,t){const n=e.$encode,i={};for(const r in n){const o=n[r];i[r]=Nn(t.encodeExpression(o.$expr),o.$fields),i[r].output=o.$output}return i}function tK(e,t){return t}function nK(e,t){const n=e.$subflow;return function(i,r,o){const s=t.fork().parse(n),a=s.get(n.operators[0].id),u=s.signals.parent;return u&&u.set(o),a.detachSubflow=()=>t.detach(s),a}}function iK(){return ie}function rK(e){var t=this,n=e.filter!=null?t.eventExpression(e.filter):void 0,i=e.stream!=null?t.get(e.stream):void 0,r;e.source?i=t.events(e.source,e.type,n):e.merge&&(r=e.merge.map(o=>t.get(o)),i=r[0].merge.apply(r[0],r.slice(1))),e.between&&(r=e.between.map(o=>t.get(o)),i=i.between(r[0],r[1])),e.filter&&(i=i.filter(n)),e.throttle!=null&&(i=i.throttle(+e.throttle)),e.debounce!=null&&(i=i.debounce(+e.debounce)),i==null&&R("Invalid stream definition: "+JSON.stringify(e)),e.consume&&i.consume(!0),t.stream(e,i)}function oK(e){var t=this,n=V(n=e.source)?n.$ref:n,i=t.get(n),r=null,o=e.update,s=void 0;i||R("Source not defined: "+e.source),r=e.target&&e.target.$expr?t.eventExpression(e.target.$expr):t.get(e.target),o&&o.$expr&&(o.$params&&(s=t.parseParameters(o.$params)),o=t.handlerExpression(o.$expr)),t.update(e,i,r,o,s)}
12const sK={skip:!0};function aK(e){var t=this,n={};if(e.signals){var i=n.signals={};Object.keys(t.signals).forEach(o=>{const s=t.signals[o];e.signals(o,s)&&(i[o]=s.value)})}if(e.data){var r=n.data={};Object.keys(t.data).forEach(o=>{const s=t.data[o];e.data(o,s)&&(r[o]=s.input.value)})}return t.subcontext&&e.recurse!==!1&&(n.subcontext=t.subcontext.map(o=>o.getState(e))),n}function uK(e){var t=this,n=t.dataflow,i=e.data,r=e.signals;Object.keys(r||{}).forEach(o=>{n.update(t.signals[o],r[o],sK)}),Object.keys(i||{}).forEach(o=>{n.pulse(t.data[o].input,n.changeset().remove(gi).insert(i[o]))}),(e.subcontext||[]).forEach((o,s)=>{const a=t.subcontext[s];a&&a.setState(o)})}function lK(e,t,n,i){return new VD(e,t,n,i)}function VD(e,t,n,i){this.dataflow=e,this.transforms=t,this.events=e.events.bind(e),this.expr=i||HX,this.signals={},this.scales={},this.nodes={},this.data={},this.fn={},n&&(this.functions=Object.create(n),this.functions.context=this)}function wE(e){this.dataflow=e.dataflow,this.transforms=e.transforms,this.events=e.events,this.expr=e.expr,this.signals=Object.create(e.signals),this.scales=Object.create(e.scales),this.nodes=Object.create(e.nodes),this.data=Object.create(e.data),this.fn=Object.create(e.fn),e.functions&&(this.functions=Object.create(e.functions),this.functions.context=this)}VD.prototype=wE.prototype={fork(){const e=new wE(this);return(this.subcontext||(this.subcontext=[])).push(e),e},detach(e){this.subcontext=this.subcontext.filter(n=>n!==e);const t=Object.keys(e.nodes);for(const n of t)e.nodes[n]._targets=null;for(const n of t)e.nodes[n].detach();e.nodes=null},get(e){return this.nodes[e]},set(e,t){return this.nodes[e]=t},add(e,t){const n=this,i=n.dataflow,r=e.value;if(n.set(e.id,t),qX(e.type)&&r&&(r.$ingest?i.ingest(t,r.$ingest,r.$format):r.$request?i.preload(t,r.$request,r.$format):i.pulse(t,i.changeset().insert(r))),e.root&&(n.root=t),e.parent){let o=n.get(e.parent.$ref);o?(i.connect(o,[t]),t.targets().add(o)):(n.unresolved=n.unresolved||[]).push(()=>{o=n.get(e.parent.$ref),i.connect(o,[t]),t.targets().add(o)})}if(e.signal&&(n.signals[e.signal]=t),e.scale&&(n.scales[e.scale]=t),e.data)for(const o in e.data){const s=n.data[o]||(n.data[o]={});e.data[o].forEach(a=>s[a]=t)}},resolve(){return(this.unresolved||[]).forEach(e=>e()),delete this.unresolved,this},operator(e,t){this.add(e,this.dataflow.add(e.value,t))},transform(e,t){this.add(e,this.dataflow.add(this.transforms[mv(t)]))},stream(e,t){this.set(e.id,t)},update(e,t,n,i,r){this.dataflow.on(t,n,i,r,e.options)},operatorExpression(e){return this.expr.operator(this,e)},parameterExpression(e){return this.expr.parameter(this,e)},eventExpression(e){return this.expr.event(this,e)},handlerExpression(e){return this.expr.handler(this,e)},encodeExpression(e){return this.expr.encode(this,e)},parse:IX,parseOperator:GX,parseOperatorParameters:VX,parseParameters:YX,parseStream:rK,parseUpdate:oK,getState:aK,setState:uK};function cK(e){const t=e.container();t&&(t.setAttribute("role","graphics-document"),t.setAttribute("aria-roleDescription","visualization"),YD(t,e.description()))}function YD(e,t){e&&(t==null?e.removeAttribute("aria-label"):e.setAttribute("aria-label",t))}function fK(e){e.add(null,t=>(e._background=t.bg,e._resize=1,t.bg),{bg:e._signals.background})}const Ym="default";function dK(e){const t=e._signals.cursor||(e._signals.cursor=e.add({user:Ym,item:null}));e.on(e.events("view","pointermove"),t,(n,i)=>{const r=t.value,o=r?Y(r)?r:r.user:Ym,s=i.item&&i.item.cursor||null;return r&&o===r.user&&s==r.item?r:{user:o,item:s}}),e.add(null,function(n){let i=n.cursor,r=this.value;return Y(i)||(r=i.item,i=i.user),U1(e,i&&i!==Ym?i:r||i),r},{cursor:t})}function U1(e,t){const n=e.globalCursor()?typeof document<"u"&&document.body:e.container();if(n)return t==null?n.style.removeProperty("cursor"):n.style.cursor=t}function Fh(e,t){var n=e._runtime.data;return X(n,t)||R("Unrecognized data set: "+t),n[t]}function hK(e,t){return arguments.length<2?Fh(this,e).values.value:Gg.call(this,e,ku().remove(gi).insert(t))}function Gg(e,t){xA(t)||R("Second argument to changes must be a changeset.");const n=Fh(this,e);return n.modified=!0,this.pulse(n.input,t)}function gK(e,t){return Gg.call(this,e,ku().insert(t))}function pK(e,t){return Gg.call(this,e,ku().remove(t))}function XD(e){var t=e.padding();return Math.max(0,e._viewWidth+t.left+t.right)}function KD(e){var t=e.padding();return Math.max(0,e._viewHeight+t.top+t.bottom)}function Vg(e){var t=e.padding(),n=e._origin;return[t.left+n[0],t.top+n[1]]}function mK(e){var t=Vg(e),n=XD(e),i=KD(e);e._renderer.background(e.background()),e._renderer.resize(n,i,t),e._handler.origin(t),e._resizeListeners.forEac
12h(r=>{try{r(n,i)}catch(o){e.error(o)}})}function yK(e,t,n){var i=e._renderer,r=i&&i.canvas(),o,s,a;return r&&(a=Vg(e),s=t.changedTouches?t.changedTouches[0]:t,o=ab(s,r),o[0]-=a[0],o[1]-=a[1]),t.dataflow=e,t.item=n,t.vega=xK(e,n,o),t}function xK(e,t,n){const i=t?t.mark.marktype==="group"?t:t.mark.group:null;function r(s){var a=i,u;if(s){for(u=t;u;u=u.mark.group)if(u.mark.name===s){a=u;break}}return a&&a.mark&&a.mark.interactive?a:{}}function o(s){if(!s)return n;Y(s)&&(s=r(s));const a=n.slice();for(;s;)a[0]-=s.x||0,a[1]-=s.y||0,s=s.mark&&s.mark.group;return a}return{view:rn(e),item:rn(t||{}),group:r,xy:o,x:s=>o(s)[0],y:s=>o(s)[1]}}const _E="view",bK="timer",vK="window",wK={trap:!1};function _K(e){const t=le({defaults:{}},e),n=(i,r)=>{r.forEach(o=>{z(i[o])&&(i[o]=Gi(i[o]))})};return n(t.defaults,["prevent","allow"]),n(t,["view","window","selector"]),t}function ZD(e,t,n,i){e._eventListeners.push({type:n,sources:H(t),handler:i})}function SK(e,t){var n=e._eventConfig.defaults,i=n.prevent,r=n.allow;return i===!1||r===!0?!1:i===!0||r===!1?!0:i?i[t]:r?!r[t]:e.preventDefault()}function Bf(e,t,n){const i=e._eventConfig&&e._eventConfig[t];return i===!1||V(i)&&!i[n]?(e.warn(`Blocked ${t} ${n} event listener.`),!1):!0}function EK(e,t,n){var i=this,r=new zy(n),o=function(l,c){i.runAsync(null,()=>{e===_E&&SK(i,t)&&l.preventDefault(),r.receive(yK(i,l,c))})},s;if(e===bK)Bf(i,"timer",t)&&i.timer(o,t);else if(e===_E)Bf(i,"view",t)&&i.addEventListener(t,o,wK);else if(e===vK?Bf(i,"window",t)&&typeof window<"u"&&(s=[window]):typeof document<"u"&&Bf(i,"selector",t)&&(s=Array.from(document.querySelectorAll(e))),!s)i.warn("Can not resolve event source: "+e);else{for(var a=0,u=s.length;a<u;++a)s[a].addEventListener(t,o);ZD(i,s,t,o)}return r}function SE(e){return e.item}function EE(e){return e.item.mark.source}function kE(e){return function(t,n){return n.vega.view().changeset().encode(n.item,e)}}function kK(e,t){return e=[e||"hover"],t=[t||"update",e[0]],this.on(this.events("view","pointerover",SE),EE,kE(e)),this.on(this.events("view","pointerout",SE),EE,kE(t)),this}function $K(){var e=this._tooltip,t=this._timers,n=this._handler.handlers(),i=this._eventListeners,r,o,s,a,u;for(r=t.length;--r>=0;)t[r].stop();for(r=i.length;--r>=0;)for(s=i[r],o=s.sources.length;--o>=0;)s.sources[o].removeEventListener(s.type,s.handler);for(e&&e.call(this,this._handler,null,null,null),r=n.length;--r>=0;)u=n[r].type,a=n[r].handler,this._handler.off(u,a);return this}function Cn(e,t,n){const i=document.createElement(e);for(const r in t)i.setAttribute(r,t[r]);return n!=null&&(i.textContent=n),i}const AK="vega-bind",CK="vega-bind-name",MK="vega-bind-radio";function FK(e,t,n){if(!t)return;const i=n.param;let r=n.state;return r||(r=n.state={elements:null,active:!1,set:null,update:s=>{s!=e.signal(i.signal)&&e.runAsync(null,()=>{r.source=!0,e.signal(i.signal,s)})}},i.debounce&&(r.update=v$(i.debounce,r.update))),(i.input==null&&i.element?DK:NK)(r,t,i,e),r.active||(e.on(e._signals[i.signal],null,()=>{r.source?r.source=!1:r.set(e.signal(i.signal))}),r.active=!0),r}function DK(e,t,n,i){const r=n.event||"input",o=()=>e.update(t.value);i.signal(n.signal,t.value),t.addEventListener(r,o),ZD(i,t,r,o),e.set=s=>{t.value=s,t.dispatchEvent(TK(r))}}function TK(e){return typeof Event<"u"?new Event(e):{type:e}}function NK(e,t,n,i){const r=i.signal(n.signal),o=Cn("div",{class:AK}),s=n.input==="radio"?o:o.appendChild(Cn("label"));s.appendChild(Cn("span",{class:CK},n.name||n.signal)),t.appendChild(o);let a=RK;switch(n.input){case"checkbox":a=OK;break;case"select":a=zK;break;case"radio":a=PK;break;case"range":a=LK;break}a(e,s,n,r)}function RK(e,t,n,i){const r=Cn("input");for(const o in n)o!=="signal"&&o!=="element"&&r.setAttribute(o==="input"?"type":o,n[o]);r.setAttribute("name",n.signal),r.value=i,t.appendChild(r),r.addEventListener("input",()=>e.update(r.value)),e.elements=[r],e.set=o=>r.value=o}function OK(e,t,n,i){const r={type:"checkbox",name:n.signal};i&&(r.checked=!0);const o=Cn("input",r);t.appendChild(o),o.addEventListener("change",()=>e.update(o.checked)),e.elements=[o],e.set=s=>o.checked=!!s||null}function zK(e,t,n,i){const r=Cn("select",{name:n.signal}),o=n.labels||[];n.options.forEach((s,a)=>{const u={value:s};Dh(s,i)&&(u.selected=!0),r.appendChild(Cn("option",u,(o[a]||s)+""))}),t.appendChild(r),r.addEventListener("change",()=>{e.update(n.options[r.selectedIndex])}),e.elements=[r],e.set=s=>{for(let a=0,u=n.options.length;a<u;++a)if(Dh(n.options[a],s)){r.selectedIndex=a;return}}}function PK(e,t,n,i){const r=Cn("span",{class:MK}),o=n.labels||[];t.appendChild(r),e.elements=n.options.map((s,a)=>{const u={type:"radio",name:n.signal,value:s};Dh(s,i)&&(u.checked=!0);const l=Cn("input",u);l.addEventListener("change",()=>e.update(s));const c=Cn("label",{},(o[a]||s)+"");return c.prepend(l),r.appendChild(c),l}),e.set=s=>{const a=e.elements,u=a.length;for(let l=0;l<u;
vendor: 9,959 bytes, lines 12-13
12++l)Dh(a[l].value,s)&&(a[l].checked=!0)}}function LK(e,t,n,i){i=i!==void 0?i:(+n.max+ +n.min)/2;const r=n.max!=null?n.max:Math.max(100,+i)||100,o=n.min||Math.min(0,r,+i)||0,s=n.step||ko(o,r,100),a=Cn("input",{type:"range",name:n.signal,min:o,max:r,step:s});a.value=i;const u=Cn("span",{},+i);t.appendChild(a),t.appendChild(u);const l=()=>{u.textContent=a.value,e.update(+a.value)};a.addEventListener("input",l),a.addEventListener("change",l),e.elements=[a],e.set=c=>{a.value=c,u.textContent=c}}function Dh(e,t){return e===t||e+""==t+""}function QD(e,t,n,i,r,o){return t=t||new i(e.loader()),t.initialize(n,XD(e),KD(e),Vg(e),r,o).background(e.background())}function yv(e,t){return t?function(){try{t.apply(this,arguments)}catch(n){e.error(n)}}:null}function IK(e,t,n,i){const r=new i(e.loader(),yv(e,e.tooltip())).scene(e.scenegraph().root).initialize(n,Vg(e),e);return t&&t.handlers().forEach(o=>{r.on(o.type,o.handler)}),r}function BK(e,t){const n=this,i=n._renderType,r=n._eventConfig.bind,o=db(i);e=n._el=e?Xm(n,e,!0):null,cK(n),o||n.error("Unrecognized renderer type: "+i);const s=o.handler||Ng,a=e?o.renderer:o.headless;return n._renderer=a?QD(n,n._renderer,e,a):null,n._handler=IK(n,n._handler,e,s),n._redraw=!0,e&&r!=="none"&&(t=t?n._elBind=Xm(n,t,!0):e.appendChild(Cn("form",{class:"vega-bindings"})),n._bind.forEach(u=>{u.param.element&&r!=="container"&&(u.element=Xm(n,u.param.element,!!u.param.input))}),n._bind.forEach(u=>{FK(n,u.element||t,u)})),n}function Xm(e,t,n){if(typeof t=="string")if(typeof document<"u"){if(t=document.querySelector(t),!t)return e.error("Signal bind element not found: "+t),null}else return e.error("DOM document instance not found."),null;if(t&&n)try{t.textContent=""}catch(i){t=null,e.error(i)}return t}const nl=e=>+e||0,UK=e=>({top:e,bottom:e,left:e,right:e});function $E(e){return V(e)?{top:nl(e.top),bottom:nl(e.bottom),left:nl(e.left),right:nl(e.right)}:UK(nl(e))}async function xv(e,t,n,i){const r=db(t),o=r&&r.headless;return o||R("Unrecognized renderer type: "+t),await e.runAsync(),QD(e,null,null,o,n,i).renderAsync(e._scenegraph.root)}async function jK(e,t){e!==ms.Canvas&&e!==ms.SVG&&e!==ms.PNG&&R("Unrecognized image type: "+e);const n=await xv(this,e,t);return e===ms.SVG?qK(n.svg(),"image/svg+xml"):n.canvas().toDataURL("image/png")}function qK(e,t){const n=new Blob([e],{type:t});return window.URL.createObjectURL(n)}async function WK(e,t){return(await xv(this,ms.Canvas,e,t)).canvas()}async function HK(e){return(await xv(this,ms.SVG,e)).svg()}function GK(e,t,n){return lK(e,Gl,uc,n).parse(t)}function VK(e){var t=this._runtime.scales;return X(t,e)||R("Unrecognized scale or projection: "+e),t[e].value}var JD="width",e5="height",bv="padding",AE={skip:!0};function t5(e,t){var n=e.autosize(),i=e.padding();return t-(n&&n.contains===bv?i.left+i.right:0)}function n5(e,t){var n=e.autosize(),i=e.padding();return t-(n&&n.contains===bv?i.top+i.bottom:0)}function YK(e){var t=e._signals,n=t[JD],i=t[e5],r=t[bv];function o(){e._autosize=e._resize=1}e._resizeWidth=e.add(null,a=>{e._width=a.size,e._viewWidth=t5(e,a.size),o()},{size:n}),e._resizeHeight=e.add(null,a=>{e._height=a.size,e._viewHeight=n5(e,a.size),o()},{size:i});const s=e.add(null,o,{pad:r});e._resizeWidth.rank=n.rank+1,e._resizeHeight.rank=i.rank+1,s.rank=r.rank+1}function XK(e,t,n,i,r,o){this.runAfter(s=>{let a=0;s._autosize=0,s.width()!==n&&(a=1,s.signal(JD,n,AE),s._resizeWidth.skip(!0)),s.height()!==i&&(a=1,s.signal(e5,i,AE),s._resizeHeight.skip(!0)),s._viewWidth!==e&&(s._resize=1,s._viewWidth=e),s._viewHeight!==t&&(s._resize=1,s._viewHeight=t),(s._origin[0]!==r[0]||s._origin[1]!==r[1])&&(s._resize=1,s._origin=r),a&&s.run("enter"),o&&s.runAfter(u=>u.resize())},!1,1)}function KK(e){return this._runtime.getState(e||{data:ZK,signals:QK,recurse:!0})}function ZK(e,t){return t.modified&&z(t.input.value)&&!e.startsWith("_:vega:_")}function QK(e,t){return!(e==="parent"||t instanceof Gl.proxy)}function JK(e){return this.runAsync(null,t=>{t._trigger=!1,t._runtime.setState(e)},t=>{t._trigger=!0}),this}function eZ(e,t){function n(i){e({timestamp:Date.now(),elapsed:i})}this._timers.push(_W(n,t))}function tZ(e,t,n,i){const r=e.element();r&&r.setAttribute("title",nZ(i))}function nZ(e){return e==null?"":z(e)?i5(e):V(e)&&!xs(e)?iZ(e):e+""}function iZ(e){return Object.keys(e).map(t=>{const n=e[t];return t+": "+(z(n)?i5(n):r5(n))}).join(`
13`)}function i5(e){return"["+e.map(r5).join(", ")+"]"}function r5(e){return z(e)?"[…]":V(e)&&!xs(e)?"{…}":e}function rZ(){if(this.renderer()==="canvas"&&this._renderer._canvas){let e=null;const t=()=>{e?.();const n=matchMedia(`(resolution: ${window.devicePixelRatio}dppx)`);n.addEventListener("change",t),e=()=>{n.removeEventListener("change",t)},this._renderer._canvas.getContext("2d").pixelRatio=window.devicePixelRatio||1,this._redraw=!0,this._resize=1,this.resize().runAsync()};t()}}function o5(e,t){const n=this;if(t=t||{},Fl.call(n),t.loader&&n.loader(t.loader),t.logger&&n.logger(t.logger),t.logLevel!=null&&n.logLevel(t.logLevel),t.locale||e.locale){const o=le({},e.locale,t.locale);n.locale(w8(o.number,o.time))}n._el=null,n._elBind=null,n._renderType=t.renderer||ms.Canvas,n._scenegraph=new aB;const i=n._scenegraph.root;n._renderer=null,n._tooltip=t.tooltip||tZ,n._redraw=!0,n._handler=new Ng().scene(i),n._globalCursor=!1,n._preventDefault=!1,n._timers=[],n._eventListeners=[],n._resizeListeners=[],n._eventConfig=_K(e.eventConfig),n.globalCursor(n._eventConfig.globalCursor);const r=GK(n,e,t.expr);n._runtime=r,n._signals=r.signals,n._bind=(e.bindings||[]).map(o=>({state:null,param:le({},o)})),r.root&&r.root.set(i),i.source=r.data.root.input,n.pulse(r.data.root.input,n.changeset().insert(i.items)),n._width=n.width(),n._height=n.height(),n._viewWidth=t5(n,n._width),n._viewHeight=n5(n,n._height),n._origin=[0,0],n._resize=0,n._autosize=1,YK(n),fK(n),dK(n),n.description(e.description),t.hover&&n.hover(),t.container&&n.initialize(t.container,t.bind),t.watchPixelRatio&&n._watchPixelRatio()}function Uf(e,t){return X(e._signals,t)?e._signals[t]:R("Unrecognized signal name: "+j(t))}function s5(e,t){const n=(e._targets||[]).filter(i=>i._update&&i._update.handler===t);return n.length?n[0]:null}function CE(e,t,n,i){let r=s5(n,i);return r||(r=yv(e,()=>i(t,n.value)),r.handler=i,e.on(n,null,r)),e}function ME(e,t,n){const i=s5(t,n);return i&&t._targets.remove(i),e}q(o5,Fl,{async evaluate(e,t,n){if(await Fl.prototype.evaluate.call(this,e,t),this._redraw||this._resize)try{this._renderer&&(this._resize&&(this._resize=0,mK(this)),await this._renderer.renderAsync(this._scenegraph.root)),this._redraw=!1}catch(i){this.error(i)}return n&&Xf(this,n),this},dirty(e){this._redraw=!0,this._renderer&&this._renderer.dirty(e)},description(e){if(arguments.length){const t=e!=null?e+"":null;return t!==this._desc&&YD(this._el,this._desc=t),this}return this._desc},container(){return this._el},scenegraph(){return this._scenegraph},origin(){return this._origin.slice()},signal(e,t,n){const i=Uf(this,e);return arguments.length===1?i.value:this.update(i,t,n)},width(e){return arguments.length?this.signal("width",e):this.signal("width")},height(e){return arguments.length?this.signal("height",e):this.signal("height")},padding(e){return arguments.length?this.signal("padding",$E(e)):$E(this.signal("padding"))},autosize(e){return arguments.length?this.signal("autosize",e):this.signal("autosize")},background(e){return arguments.length?this.signal("background",e):this.signal("background")},renderer(e){return arguments.length?(db(e)||R("Unrecognized renderer type: "+e),e!==this._renderType&&(this._renderType=e,this._resetRenderer()),this):this._renderType},tooltip(e){return arguments.length?(e!==this._tooltip&&(this._tooltip=e,this._resetRenderer()),this):this._tooltip},loader(e){return arguments.length?(e!==this._loader&&(Fl.prototype.loader.call(this,e),this._resetRenderer()),this):this._loader},resize(){return this._autosize=1,this.touch(Uf(this,"autosize"))},_resetRenderer(){this._renderer&&(this._renderer=null,this.initialize(this._el,this._elBind))},_resizeView:XK,addEventListener(e,t,n){let i=t;return n&&n.trap===!1||(i=yv(this,t),i.raw=t),this._handler.on(e,i),this},removeEventListener(e,t){for(var n=this._handler.handlers(e),i=n.length,r,o;--i>=0;)if(o=n[i].type,r=n[i].handler,e===o&&(t===r||t===r.raw)){this._handler.off(o,r);break}return this},addResizeListener(e){const t=this._resizeListeners;return t.includes(e)||t.push(e),this},removeResizeListener(e){var t=this._resizeListeners,n=t.indexOf(e);return n>=0&&t.splice(n,1),this},addSignalListener(e,t){return CE(this,e,Uf(this,e),t)},removeSignalListener(e,t){return ME(this,Uf(this,e),t)},addDataListener(e,t){return CE(this,e,Fh(this,e).values,t)},removeDataListener(e,t){return ME(this,Fh(this,e).values,t)},globalCursor(e){if(arguments.length){if(this._globalCursor!==!!e){const t=U1(this,null);this._globalCursor=!!e,t&&U1(this,t)}return this}else return this._globalCursor},preventDefault(e){return arguments.length?(this._preventDefault=e,this):this._preventDefault},timer:eZ,events:EK,finalize:$K,hover:kK,data:hK,change:Gg,insert:gK,remove:pK,scale:VK,initialize:BK,toImageURL:jK,toCanvas:WK,toSVG:HK,getState:KK,setState:JK,_watchPixelRatio:rZ});const oZ="view",Th="[",Nh="]",a5="{",u5="}",sZ=":",l5=",",aZ="@",uZ=">",lZ=/[[\]{}]/,cZ={"*":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 c5,f5;function ra(e,t,n){return c5=t||oZ,f5=cZ,d5(e.trim()).map(j1)}function fZ(e){return f5[e]}function Ul(e,t,n,i,r){const o=e.length;let s=0,a;for(;t<o;++t){if(a=e[t],!s&&a===n)return t;r&&r.includes(a)?--s:i&&i.includes(a)&&++s}return t}function d5(e){const t=[],n=e.length;let i=0,r=0;for(;r<n;)r=Ul(e,r,l5,Th+a5,Nh+u5),t.push(e.substring(i,r).trim()),i=++r;if(t.length===0)throw"Empty event selector: "+e;return t}function j1(e){return e[0]==="["?dZ(e):hZ(e)}function dZ(e){const t=e.length;let n=1,i;if(n=Ul(e,n,Nh,Th,Nh),n===t)throw"Empty between selector: "+e;
13if(i=d5(e.substring(1,n)),i.length!==2)throw"Between selector must have two elements: "+e;if(e=e.slice(n+1).trim(),e[0]!==uZ)throw"Expected '>' after between selector: "+e;i=i.map(j1);const r=j1(e.slice(1).trim());return r.between?{between:i,stream:r}:(r.between=i,r)}function hZ(e){const t={source:c5},n=[];let i=[0,0],r=0,o=0,s=e.length,a=0,u,l;if(e[s-1]===u5){if(a=e.lastIndexOf(a5),a>=0){try{i=gZ(e.substring(a+1,s-1))}catch{throw"Invalid throttle specification: "+e}e=e.slice(0,a).trim(),s=e.length}else throw"Unmatched right brace: "+e;a=0}if(!s)throw e;if(e[0]===aZ&&(r=++a),u=Ul(e,a,sZ),u<s&&(n.push(e.substring(o,u).trim()),o=a=++u),a=Ul(e,a,Th),a===s)n.push(e.substring(o,s).trim());else if(n.push(e.substring(o,a).trim()),l=[],o=++a,o===s)throw"Unmatched left bracket: "+e;for(;a<s;){if(a=Ul(e,a,Nh),a===s)throw"Unmatched left bracket: "+e;if(l.push(e.substring(o,a).trim()),a<s-1&&e[++a]!==Th)throw"Expected left bracket: "+e;o=++a}if(!(s=n.length)||lZ.test(n[s-1]))throw"Invalid event selector: "+e;return s>1?(t.type=n[1],r?t.markname=n[0].slice(1):fZ(n[0])?t.marktype=n[0]:t.source=n[0]):t.type=n[0],t.type.slice(-1)==="!"&&(t.consume=!0,t.type=t.type.slice(0,-1)),l!=null&&(t.filter=l),i[0]&&(t.throttle=i[0]),i[1]&&(t.debounce=i[1]),t}function gZ(e){const t=e.split(l5);if(!e.length||t.length>2)throw e;return t.map(n=>{const i=+n;if(i!==i)throw e;return i})}function pZ(e){return V(e)?e:{type:e||"pad"}}const il=e=>+e||0,mZ=e=>({top:e,bottom:e,left:e,right:e});function yZ(e){return V(e)?e.signal?e:{top:il(e.top),bottom:il(e.bottom),left:il(e.left),right:il(e.right)}:mZ(il(e))}const gt=e=>V(e)&&!z(e)?le({},e):{value:e};function FE(e,t,n,i){return n!=null?(V(n)&&!z(n)||z(n)&&n.length&&V(n[0])?e.update[t]=n:e[i||"enter"][t]={value:n},1):0}function Ct(e,t,n){for(const i in t)FE(e,i,t[i]);for(const i in n)FE(e,i,n[i],"update")}function Du(e,t,n){for(const i in t)n&&X(n,i)||(e[i]=le(e[i]||{},t[i]));return e}function Ma(e,t){return t&&(t.enter&&t.enter[e]||t.update&&t.update[e])}const vv="mark",wv="frame",_v="scope",xZ="axis",bZ="axis-domain",vZ="axis-grid",wZ="axis-label",_Z="axis-tick",SZ="axis-title",EZ="legend",kZ="legend-band",$Z="legend-entry",AZ="legend-gradient",h5="legend-label",CZ="legend-symbol",MZ="legend-title",FZ="title",DZ="title-text",TZ="title-subtitle";function NZ(e,t,n,i,r){const o={},s={};let a,u,l,c;u="lineBreak",t==="text"&&r[u]!=null&&!Ma(u,e)&&Km(o,u,r[u]),(n=="legend"||String(n).startsWith("axis"))&&(n=null),c=n===wv?r.group:n===vv?le({},r.mark,r[t]):null;for(u in c)l=Ma(u,e)||(u==="fill"||u==="stroke")&&(Ma("fill",e)||Ma("stroke",e)),l||Km(o,u,c[u]);
13H(i).forEach(f=>{const d=r.style&&r.style[f];for(const h in d)Ma(h,e)||Km(o,h,d[h])}),e=le({},e);for(u in o)c=o[u],c.signal?(a=a||{})[u]=c:s[u]=c;return e.enter=le(s,e.enter),a&&(e.update=le(a,e.update)),e}function Km(e,t,n){e[t]=n&&n.signal?{signal:n.signal}:{value:n}}const g5=e=>Y(e)?j(e):e.signal?`(${e.signal})`:p5(e);function Yg(e){if(e.gradient!=null)return OZ(e);let t=e.signal?`(${e.signal})`:e.color?RZ(e.color):e.field!=null?p5(e.field):e.value!==void 0?j(e.value):void 0;return e.scale!=null&&(t=zZ(e,t)),t===void 0&&(t=null),e.exponent!=null&&(t=`pow(${t},${hd(e.exponent)})`),e.mult!=null&&(t+=`*${hd(e.mult)}`),e.offset!=null&&(t+=`+${hd(e.offset)}`),e.round&&(t=`round(${t})`),t}const jf=(e,t,n,i)=>`(${e}(${[t,n,i].map(Yg).join(",")})+'')`;function RZ(e){return e.c?jf("hcl",e.h,e.c,e.l):e.h||e.s?jf("hsl",e.h,e.s,e.l):e.l||e.a?jf("lab",e.l,e.a,e.b):e.r||e.g||e.b?jf("rgb",e.r,e.g,e.b):null}function OZ(e){const t=[e.start,e.stop,e.count].map(n=>n==null?null:j(n));for(;t.length&&xe(t)==null;)t.pop();return t.unshift(g5(e.gradient)),`gradient(${t.join(",")})`}function hd(e){return V(e)?"("+Yg(e)+")":e}function p5(e){return m5(V(e)?e:{datum:e})}function m5(e){let t,n,i;if(e.signal)t="datum",i=e.signal;else if(e.group||e.parent){for(n=Math.max(1,e.level||1),t="item";n-- >0;)t+=".mark.group";e.parent?(i=e.parent,t+=".datum"):i=e.group}else e.datum?(t="datum",i=e.datum):R("Invalid field reference: "+j(e));return e.signal||(i=Y(i)?Yr(i).map(j).join("]["):m5(i)),t+"["+i+"]"}function zZ(e,t){const n=g5(e.scale);return e.range!=null?t=`lerp(_range(${n}), ${+e.range})`:(t!==void 0&&(t=`_scale(${n}, ${t})`),e.band&&(t=(t?t+"+":"")+`_bandwidth(${n})`+(+e.band==1?"":"*"+hd(e.band)),e.extra&&(t=`(datum.extra ? _scale(${n}, datum.extra.value) : ${t})`)),t==null&&(t="0")),t}function PZ(e){let t="";return e.forEach(n=>{const i=Yg(n);t+=n.test?`(${n.test})?${i}:`:i}),xe(t)===":"&&(t+="null"),t}function y5(e,t,n,i,r,o){const s={};o=o||{},o.encoders={$encode:s},e=NZ(e,t,n,i,r.config);for(const a in e)s[a]=LZ(e[a],t,o,r);return o}function LZ(e,t,n,i){const r={},o={};for(const s in e)e[s]!=null&&(r[s]=BZ(IZ(e[s]),i,n,o));return{$expr:{marktype:t,channels:r},$fields:Object.keys(o),$output:Object.keys(e)}}function IZ(e){return z(e)?PZ(e):Yg(e)}function BZ(e,t,n,i){const r=Qi(e,t);return r.$fields.forEach(o=>i[o]=1),le(n,r.$params),r.$expr}const UZ="outer",jZ=["value","update","init","react","bind"];function DE(e,t){R(e+' for "outer" push: '+j(t))}function x5(e,t){const n=e.name;if(e.push===UZ)t.signals[n]||DE("No prior signal definition",n),jZ.forEac
13h(i=>{e[i]!==void 0&&DE("Invalid property ",i)});else{const i=t.addSignal(n,e.value);e.react===!1&&(i.react=!1),e.bind&&t.addBinding(n,e.bind)}}function q1(e,t,n,i){this.id=-1,this.type=e,this.value=t,this.params=n,i&&(this.parent=i)}function Xg(e,t,n,i){return new q1(e,t,n,i)}function Rh(e,t){return Xg("operator",e,t)}function te(e){const t={$ref:e.id};return e.id<0&&(e.refs=e.refs||[]).push(t),t}function lc(e,t){return t?{$field:e,$name:t}:{$field:e}}const W1=lc("key");function TE(e,t){return{$compare:e,$order:t}}function qZ(e,t){const n={$key:e};return t&&(n.$flat=!0),n}const WZ="ascending",HZ="descending";function GZ(e){return V(e)?(e.order===HZ?"-":"+")+Kg(e.op,e.field):""}function Kg(e,t){return(e&&e.signal?"$"+e.signal:e||"")+(e&&t?"_":"")+(t&&t.signal?"$"+t.signal:t||"")}const Sv="scope",H1="view";function tt(e){return e&&e.signal}function VZ(e){return e&&e.expr}function gd(e){if(tt(e))return!0;if(V(e)){for(const t in e)if(gd(e[t]))return!0}return!1}function ti(e,t){return e??t}function Es(e){return e&&e.signal||e}const NE="timer";function cc(e,t){return(e.merge?XZ:e.stream?KZ:e.type?ZZ:R("Invalid stream specification: "+j(e)))(e,t)}function YZ(e){return e===Sv?H1:e||H1}function XZ(e,t){const n=e.merge.map(r=>cc(r,t)),i=Ev({merge:n},e,t);return t.addStream(i).id}function KZ(e,t){const n=cc(e.stream,t),i=Ev({stream:n},e,t);return t.addStream(i).id}function ZZ(e,t){let n;e.type===NE?(n=t.event(NE,e.throttle),e={between:e.between,filter:e.filter}):n=t.event(YZ(e.source),e.type);const i=Ev({stream:n},e,t);return Object.keys(i).length===1?n:t.addStream(i).id}function Ev(e,t,n){let i=t.between;return i&&(i.length!==2&&R('Stream "between" parameter must have 2 entries: '+j(t)),e.between=[cc(i[0],n),cc(i[1],n)]),i=t.filter?[].concat(t.filter):[],(t.marktype||t.markname||t.markrole)&&i.push(QZ(t.marktype,t.markname,t.markrole)),t.source===Sv&&i.push("inScope(event.item)"),i.length&&(e.filter=Qi("("+i.join(")&&(")+")",n).$expr),(i=t.throttle)!=null&&(e.throttle=+i),(i=t.debounce)!=null&&(e.debounce=+i),t.consume&&(e.consume=!0),e}function QZ(e,t,n){const i="event.item";return i+(e&&e!=="*"?"&&"+i+".mark.marktype==='"+e+"'":"")+(n?"&&"+i+".mark.role==='"+n+"'":"")+(t?"&&"+i+".mark.name==='"+t+"'":"")}const JZ={code:"_.$value",ast:{type:"Identifier",value:"value"}};function eQ(e,t,n){const i=e.encode,r={target:n};let o=e.events,s=e.update,a=[];o||R("Signal update missing events specification."),Y(o)&&(o=ra(o,t.isSubscope()?Sv:H1)),o=H(o).filter(u=>u.signal||u.scale?(a.push(u),0):1),a.length>1&&(a=[nQ(a)]),o.length&&a.push(o.length>1?{merge:o}:o[0]),i!=null&&(s&&R("Signal encode and update are mutually exclusive."),s="encode(item(),"+j(i)+")"),r.update=Y(s)?Qi(s,t):s.expr!=null?Qi(s.expr,t):s.value!=null?s.value:s.signal!=null?{$expr:JZ,$params:{$value:t.signalRef(s.signal)}}:R("Invalid signal update specification."),e.force&&(r.options={force:!0}),a.forEach(u=>t.addUpdate(le(tQ(u,t),r)))}function tQ(e,t){return{source:e.signal?t.signalRef(e.signal):e.scale?t.scaleRef(e.scale):cc(e,t)}}function nQ(e){return{signal:"["+e.map(t=>t.scale?'scale("'+t.scale+'")':t.signal)+"]"}}function iQ(e,t){const n=t.getSignal(e.name);let i=e.update;e.init&&(i?R("Signals can not include both init and update expressions."):(i=e.init,n.initonly=!0)),i&&(i=Qi(i,t),n.update=i.$expr,n.params=i.$params),e.on&&e.on.forEach(r=>eQ(r,t,n.id))}const Te=e=>(t,n,i)=>Xg(e,n,t||void 0,i),b5=Te("aggregate"),rQ=Te("axisticks"),v5=Te("bound"),_i=Te("collect"),RE=Te("compare"),oQ=Te("datajoin"),w5=Te("encode"),sQ=Te("expression"),aQ=Te("facet"),uQ=Te("field"),lQ=Te("key"),cQ=Te("legendentries"),fQ=Te("load"),dQ=Te("mark"),hQ=Te("multiextent"),gQ=Te("multivalues"),pQ=Te("overlap"),mQ=Te("params"),_5=Te("prefacet"),yQ=Te("projection"),xQ=Te("proxy"),bQ=Te("relay"),S5=Te("render"),vQ=Te("scale"),oa=Te("sieve"),wQ=Te("sortitems"),E5=Te("viewlayout"),_Q=Te("values");let SQ=0;const k5={min:"min",max:"max",count:"sum"};function EQ(e,t){const n=e.type||"linear";EM(n)||R("Unrecognized scale type: "+j(n)),t.addScale(e.name,{type:n,domain:void 0})}function kQ(e,t){const n=t.getScale(e.name).params;let i;n.domain=$5(e.domain,e,t),e.range!=null&&(n.range=C5(e,t,n)),e.interpolate!=null&&OQ(e.interpolate,n),e.nice!=null&&(n.nice=RQ(e.nice,t)),e.bins!=null&&(n.bins=NQ(e.bins,t));for(i in e)X(n,i)||i==="name"||(n[i]=Ln(e[i],t))}function Ln(e,t){return V(e)?e.signal?t.signalRef(e.signal):R("Unsupported object: "+j(e)):e}function pd(e,t){return e.signal?t.signalRef(e.signal):e.map(n=>Ln(n,t))}function Zg(e){R("Can not find data set: "+j(e))}function $5(e,t,n){if(!e){(t.domainMin!=null||t.domainMax!=null)&&R("No scale domain defined for domainMin/d
13omainMax to override.");return}return e.signal?n.signalRef(e.signal):(z(e)?$Q:e.fields?CQ:AQ)(e,t,n)}function $Q(e,t,n){return e.map(i=>Ln(i,n))}function AQ(e,t,n){const i=n.getData(e.data);return i||Zg(e.data),Ja(t.type)?i.valuesRef(n,e.field,A5(e.sort,!1)):AM(t.type)?i.domainRef(n,e.field):i.extentRef(n,e.field)}function CQ(e,t,n){const i=e.data,r=e.fields.reduce((o,s)=>(s=Y(s)?{data:i,field:s}:z(s)||s.signal?MQ(s,n):s,o.push(s),o),[]);return(Ja(t.type)?FQ:AM(t.type)?DQ:TQ)(e,n,r)}function MQ(e,t){const n="_:vega:_"+SQ++,i=_i({});if(z(e))i.value={$ingest:e};else if(e.signal){const r="setdata("+j(n)+","+e.signal+")";i.params.input=t.signalRef(r)}return t.addDataPipeline(n,[i,oa({})]),{data:n,field:"data"}}function FQ(e,t,n){const i=A5(e.sort,!0);let r,o;const s=n.map(l=>{const c=t.getData(l.data);return c||Zg(l.data),c.countsRef(t,l.field,i)}),a={groupby:W1,pulse:s};i&&(r=i.op||"count",o=i.field?Kg(r,i.field):"count",a.ops=[k5[r]],a.fields=[t.fieldRef(o)],a.as=[o]),r=t.add(b5(a));const u=t.add(_i({pulse:te(r)}));return o=t.add(_Q({field:W1,sort:t.sortRef(i),pulse:te(u)})),te(o)}function A5(e,t){return e&&(!e.field&&!e.op?V(e)?e.field="key":e={field:"key"}:!e.field&&e.op!=="count"?R("No field provided for sort aggregate op: "+e.op):t&&e.field&&e.op&&!k5[e.op]&&R("Multiple domain scales can not be sorted using "+e.op)),e}function DQ(e,t,n){const i=n.map(r=>{const o=t.getData(r.data);return o||Zg(r.data),o.domainRef(t,r.field)});return te(t.add(gQ({values:i})))}function TQ(e,t,n){const i=n.map(r=>{const o=t.getData(r.data);return o||Zg(r.data),o.extentRef(t,r.field)});return te(t.add(hQ({extents:i})))}function NQ(e,t){return e.signal||z(e)?pd(e,t):t.objectProperty(e)}function RQ(e,t){return e.signal?t.signalRef(e.signal):V(e)?{interval:Ln(e.interval),step:Ln(e.step)}:Ln(e)}function OQ(e,t){t.interpolate=Ln(e.type||e),e.gamma!=null&&(t.interpolateGamma=Ln(e.gamma))}function C5(e,t,n){const i=t.config.range;let r=e.range;if(r.signal)return t.signalRef(r.signal);if(Y(r)){if(i&&X(i,r))return e=le({},e,{range:i[r]}),C5(e,t,n);r==="width"?r=[0,{signal:"width"}]:r==="height"?r=Ja(e.type)?[0,{signal:"height"}]:[{signal:"height"},0]:R("Unrecognized scale range value: "+j(r))}else if(r.scheme){n.scheme=z(r.scheme)?pd(r.scheme,t):Ln(r.scheme,t),r.extent&&(n.schemeExtent=pd(r.extent,t)),r.count&&(n.schemeCount=Ln(r.count,t));return}else if(r.step){n.rangeStep=Ln(r.step,t);return}else{if(Ja(e.type)&&!z(r))return $5(r,e,t);z(r)||R("Unsupported range type: "+j(r))}return r.map(o=>(z(o)?pd:Ln)(o,t))}function zQ(e,t){const n=t.config.projection||{},i={};for(const r in e)r!=="name"&&(i[r]=G1(e[r],r,t));for(const r in n)i[r]==null&&(i[r]=G1(n[r],r,t));t.addProjection(e.name,i)}function G1(e,t,n){return z(e)?e.map(i=>
13G1(i,t,n)):V(e)?e.signal?n.signalRef(e.signal):t==="fit"?e:R("Unsupported parameter object: "+j(e)):e}const Si="top",Tu="left",Nu="right",To="bottom",M5="center",PQ="vertical",LQ="start",IQ="middle",BQ="end",V1="index",kv="label",UQ="offset",au="perc",jQ="perc2",jn="value",Gc="guide-label",$v="guide-title",qQ="group-title",WQ="group-subtitle",OE="symbol",md="gradient",Y1="discrete",X1="size",HQ="shape",GQ="fill",VQ="stroke",YQ="strokeWidth",XQ="strokeDash",KQ="opacity",Av=[X1,HQ,GQ,VQ,YQ,XQ,KQ],Vc={name:1,style:1,interactive:1},ye={value:0},qn={value:1},Qg="group",F5="rect",Cv="rule",ZQ="symbol",sa="text";function fc(e){return e.type=Qg,e.interactive=e.interactive||!1,e}function vn(e,t){const n=(i,r)=>ti(e[i],ti(t[i],r));return n.isVertical=i=>PQ===ti(e.direction,t.direction||(i?t.symbolDirection:t.gradientDirection)),n.gradientLength=()=>ti(e.gradientLength,t.gradientLength||t.gradientWidth),n.gradientThickness=()=>ti(e.gradientThickness,t.gradientThickness||t.gradientHeight),n.entryColumns=()=>ti(e.columns,ti(t.columns,+n.isVertical(!0))),n}function D5(e,t){const n=t&&(t.update&&t.update[e]||t.enter&&t.enter[e]);return n&&n.signal?n:n?n.value:null}function QQ(e,t,n){const i=t.config.style[n];return i&&i[e]}function Jg(e,t,n){return`item.anchor === '${LQ}' ? ${e} : item.anchor === '${BQ}' ? ${t} : ${n}`}const Mv=Jg(j(Tu),j(Nu),j(M5));function JQ(e){const t=e("tickBand");let n=e("tickOffset"),i,r;return t?t.signal?(i={signal:`(${t.signal}) === 'extent' ? 1 : 0.5`},r={signal:`(${t.signal}) === 'extent'`},V(n)||(n={signal:`(${t.signal}) === 'extent' ? 0 : ${n}`})):t==="extent"?(i=1,r=!0,n=0):(i=.5,r=!1):(i=e("bandPosition"),r=e("tickExtra")),{extra:r,band:i,offset:n}}function T5(e,t){return t?e?V(e)?Object.assign({},e,{offset:T5(e.offset,t)}):{value:e,offset:t}:t:e}function Tn(e,t){return t?(e.name=t.name,e.style=t.style||e.style,e.interactive=!!t.interactive,e.encode=Du(e.encode,t,Vc)):e.interactive=!1,e}function eJ(e,t,n,i){const r=vn(e,n),o=r.isVertical(),s=r.gradientThickness(),a=r.gradientLength();let u,l,c,f,d;o?(l=[0,1],c=[0,0],f=s,d=a):(l=[0,0],c=[1,0],f=a,d=s);const h={enter:u={opacity:ye,x:ye,y:ye,width:gt(f),height:gt(d)},update:le({},u,{opacity:qn,fill:{gradient:t,start:l,stop:c}}),exit:{opacity:ye}};return Ct(h,{stroke:r("gradientStrokeColor"),strokeWidth:r("gradientStrokeWidth")},{opacity:r("gradientOpacity")}),Tn({type:F5,role:AZ,encode:h},i)}function tJ(e,t,n,i,r){const o=vn(e,n),s=o.isVertical(),a=o.gradientThickness(),u=o.gradientLength();let l,c,f,d,h="";s?(l="y",f="y2",c="x",d="width",h="1-"):(l="x",f="x2",c="y",d="height");const g={opacity:ye,fill:{scale:t,field:jn}};g[l]={signal:h+"datum."+au,mult:u},g[c]=ye,g[f]={signal:h+"datum."+jQ,mult:u},g[d]=gt(a);const p={enter:g,update:le({},g,{opacity:qn}),exit:{opacity:ye}};return Ct(p,{stroke:o("gradientStrokeColor"),strokeWidth:o("gradientStrokeWidth")},{opacity:o("gradientOpacity")}),Tn({type:F5,role:kZ,key:jn,from:r,encode:p},i)}const nJ=`datum.${au}<=0?"${Tu}":datum.${au}>=1?"${Nu}":"${M5}"`,iJ=`datum.${au}<=0?"${To}":datum.${au}>=1?"${Si}":"${IQ}"`;function zE(e,t,n,i){const r=vn(e,t),o=r.isVertical(),s=gt(r.gradientThickness()),a=r.gradientLength();let u=r("labelOverlap"),l,c,f,d,h="";const g={enter:l={opacity:ye},update:c={opacity:qn,text:{field:kv}},exit:{opacity:ye}};return Ct(g,{fill:r("labelColor"),fillOpacity:r("labelOpacity"),font:r("labelFont"),fontSize:r("labelFontSize"),fontStyle:r("labelFontStyle"),fontWeight:r("labelFontWeight"),limit:ti(e.labelLimit,t.gradientLabelLimit)}),o?(l.align={value:"left"},l.baseline=c.baseline={signal:iJ},f="y",d="x",h="1-"):(l.align=c.align={signal:nJ},l.baseline={value:"top"},f="x",d="y"),l[f]=c[f]={signal:h+"datum."+au,mult:a},l[d]=c[d]=s,s.offset=ti(e.labelOffset,t.gradientLabelOffset)||0,u=u?{separation:r("labelSeparation"),method:u,order:"datum."+V1}:void 0,Tn({type:sa,role:h5,style:Gc,key:jn,from:i,encode:g,overlap:u},n)}function rJ(e,t,n,i,r){const o=vn(e,t),s=n.entries,a=!!(s&&s.interactive),u=s?s.name:void 0,l=o("clipHeight"),c=o("symbolOffset"),f={data:"value"},d=`(${r}) ? datum.${UQ} : datum.${X1}`,h=l?gt(l):{field:X1},g=`datum.${V1}`,p=`max(1, ${r})`;let m,y,x,b,v;h.mult=.5,m={enter:y={opacity:ye,x:{signal:d,mult:.5,offset:c},y:h},update:x={opacity:qn,x:y.x,y:y.y},exit:{opacity:ye}};let w=null,S=null;e.fill||(w=t.symbolBaseFillColor,S=t.symbolBaseStrokeColor),Ct(m,{fill:o("symbolFillColor",w),shape:o("symbolType"),size:o("symbolSize"),stroke:o("symbolStrokeColor",S),strokeDash:o("symbolDash"),strokeDashOffset:o("symbolDashOffset"),strokeWidth:o("symbolStrokeWidth")},{opacity:o("symbolOpacity")}),Av.forEach(A=>{e[A]&&(x[A]=y[A]={scale:e[A],field:jn})});const _=Tn({type:ZQ,role:CZ,key:jn,from:f,clip:l?!0:void 0,encode:m},n.symbols),E=gt(c);E.offset=o("labelOffset"),m={enter:y={opacity:ye,x:{signal:d,offset:E},y:h},update:x={opacity:qn,text:{field:kv},x:y.x,y:y.y},exit:{opacity:ye}},Ct(m,{align:o("labelAlign"),baseline:o("labelBaseline"),fill:o("labelColor"),fillOpacity:o("labelOpacity"),font:o("labelFont"),fontSize:o("labelFontSize"),fontStyle:o("labelFontStyle"),fontWeight:o("labelFontWeight"),limit:o("labelLimit")});const k=Tn({type:sa,role:h5,style:Gc,key:jn,from:f,encode:m},n.labels);return m={enter:{noBound:{value:!l},width:ye,height:l?gt(l):ye,opacity:ye},exit:{opacity:ye},update:x={opacity:qn,row:{signal:null},column:{signal:null}}},o.isVertical(!0)?(b=`ceil(item.mark.items.length / ${p})`,x.row.signal=`${g}%${b}`,x.column.signal=`floor(${g} / ${b})`,v={field:["row",g]}):(x.row.signal=`floor(${g} / ${p})`,x.column.signal=`${g} % ${p}`,v={field:g}),x.column.signal=`(${r})?${x.column.signal}:${g}`,i={facet:{data:i,name:"value",groupby:V1}},fc({role:_v,from:i,encode:Du(m,s,Vc),marks:[_,k],name:u,interactive:a,sort:v})}function oJ(e,t){const n=vn(e,t);return{align:n("gridAlign"),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n("rowPadding"),column:n("columnPadding")}}}const Fv='item.orient === "left"',Dv='item.orient === "right"',ep=`(${Fv} || ${Dv})`,sJ=`datum.vgrad && ${ep}`,aJ=Jg('"top"','"bottom"','"middle"'),uJ=Jg('"right"','"left"','"center"'),lJ=`datum.vgrad && ${Dv} ? (${uJ}) : (${ep} && !(datum.vgrad && ${Fv})) ? "left" : ${Mv}
13`,cJ=`item._anchor || (${ep} ? "middle" : "start")`,fJ=`${sJ} ? (${Fv} ? -90 : 90) : 0`,dJ=`${ep} ? (datum.vgrad ? (${Dv} ? "bottom" : "top") : ${aJ}) : "top"`;function hJ(e,t,n,i){const r=vn(e,t),o={enter:{opacity:ye},update:{opacity:qn,x:{field:{group:"padding"}},y:{field:{group:"padding"}}},exit:{opacity:ye}};return Ct(o,{orient:r("titleOrient"),_anchor:r("titleAnchor"),anchor:{signal:cJ},angle:{signal:fJ},align:{signal:lJ},baseline:{signal:dJ},text:e.title,fill:r("titleColor"),fillOpacity:r("titleOpacity"),font:r("titleFont"),fontSize:r("titleFontSize"),fontStyle:r("titleFontStyle"),fontWeight:r("titleFontWeight"),limit:r("titleLimit"),lineHeight:r("titleLineHeight")},{align:r("titleAlign"),baseline:r("titleBaseline")}),Tn({type:sa,role:MZ,style:$v,from:i,encode:o},n)}function gJ(e,t){let n;return V(e)&&(e.signal?n=e.signal:e.path?n="pathShape("+PE(e.path)+")":e.sphere&&(n="geoShape("+PE(e.sphere)+', {type: "Sphere"})')),n?t.signalRef(n):!!e}function PE(e){return V(e)&&e.signal?e.signal:j(e)}function N5(e){const t=e.role||"";return t.startsWith("axis")||t.startsWith("legend")||t.startsWith("title")?t:e.type===Qg?_v:t||vv}function pJ(e){return{marktype:e.type,name:e.name||void 0,role:e.role||N5(e),zindex:+e.zindex||void 0,aria:e.aria,description:e.description}}function mJ(e,t){return e&&e.signal?t.signalRef(e.signal):e!==!1}function Tv(e,t){const n=Az(e.type);n||R("Unrecognized transform type: "+j(e.type));const i=Xg(n.type.toLowerCase(),null,R5(n,e,t));return e.signal&&t.addSignal(e.signal,t.proxy(i)),i.metadata=n.metadata||{},i}function R5(e,t,n){const i={},r=e.params.length;for(let o=0;o<r;++o){const s=e.params[o];i[s.name]=yJ(s,t,n)}return i}function yJ(e,t,n){const i=e.type,r=t[e.name];if(i==="index")return xJ(e,t,n);if(r===void 0){e.required&&R("Missing required "+j(t.type)+" parameter: "+j(e.name));return}else{if(i==="param")return bJ(e,t,n);if(i==="projection")return n.projectionRef(t[e.name])}return e.array&&!tt(r)?r.map(o=>LE(e,o,n)):LE(e,r,n)}function LE(e,t,n){const i=e.type;if(tt(t))return BE(i)?R("Expression references can not be signals."):Zm(i)?n.fieldRef(t):UE(i)?n.compareRef(t):n.signalRef(t.signal);{const r=e.expr||Zm(i);return r&&vJ(t)?n.exprRef(t.expr,t.as):r&&wJ(t)?lc(t.field,t.as):BE(i)?Qi(t,n):_J(i)?te(n.getData(t).values):Zm(i)?lc(t):UE(i)?n.compareRef(t):t}}function xJ(e,t,n){return Y(t.from)||R('Lookup "from" parameter must be a string literal.'),n.getData(t.from).lookupRef(n,t.key)}function bJ(e,t,n){const i=t[e.name];return e.array?(z(i)||R("Expected an array of sub-parameters. Instead: "+j(i)),i.map(r=>IE(e,r,n))):IE(e,i,n)}function IE(e,t,n){const i=e.params.length;let r;for(let s=0;s<i;++s){r=e.params[s];for(const a in r.key)if(r.key[a]!==t[a]){r=null;break}if(r)break}r||R("Unsupported parameter: "+j(t));const o=le(R5(r,t,n),r.key);return te(n.add(mQ(o)))}const vJ=e=>e&&e.expr,wJ=e=>e&&e.field,_J=e=>e==="data",BE=e=>e==="expr",Zm=e=>e==="field",UE=e=>e==="compare";function SJ(e,t,n){let i,r,o,s,a;return e?(i=e.facet)&&(t||R("Only group marks can be faceted."),i.field!=null?s=a=yd(i,n):(e.data?a=te(n.getData(e.data).aggregate):(o=Tv(le({type:"aggregate",groupby:H(i.groupby)},i.aggregate),n),o.params.key=n.keyRef(i.groupby),o.params.pulse=yd(i,n),s=a=te(n.add(o))),r=n.keyRef(i.groupby,!0))):s=te(n.add(_i(null,[{}
13]))),s||(s=yd(e,n)),{key:r,pulse:s,parent:a}}function yd(e,t){return e.$ref?e:e.data&&e.data.$ref?e.data:te(t.getData(e.data).output)}function Us(e,t,n,i,r){this.scope=e,this.input=t,this.output=n,this.values=i,this.aggregate=r,this.index={}}Us.fromEntries=function(e,t){const n=t.length,i=t[n-1],r=t[n-2];let o=t[0],s=null,a=1;for(o&&o.type==="load"&&(o=t[1]),e.add(t[0]);a<n;++a)t[a].params.pulse=te(t[a-1]),e.add(t[a]),t[a].type==="aggregate"&&(s=t[a]);return new Us(e,o,r,i,s)};function O5(e){return Y(e)?e:null}function jE(e,t,n){const i=Kg(n.op,n.field);let r;if(t.ops){for(let o=0,s=t.as.length;o<s;++o)if(t.as[o]===i)return}else t.ops=["count"],t.fields=[null],t.as=["count"];n.op&&(t.ops.push((r=n.op.signal)?e.signalRef(r):n.op),t.fields.push(e.fieldRef(n.field)),t.as.push(i))}function rl(e,t,n,i,r,o,s){const a=t[n]||(t[n]={}),u=GZ(o);let l=O5(r),c,f;if(l!=null&&(e=t.scope,l=l+(u?"|"+u:""),c=a[l]),!c){const d=o?{field:W1,pulse:t.countsRef(e,r,o)}:{field:e.fieldRef(r),pulse:te(t.output)};u&&(d.sort=e.sortRef(o)),f=e.add(Xg(i,void 0,d)),s&&(t.index[r]=f),c=te(f),l!=null&&(a[l]=c)}return c}Us.prototype={countsRef(e,t,n){const i=this,r=i.counts||(i.counts={}),o=O5(t);let s,a,u;return o!=null&&(e=i.scope,s=r[o]),s?n&&n.field&&jE(e,s.agg.params,n):(u={groupby:e.fieldRef(t,"key"),pulse:te(i.output)},n&&n.field&&jE(e,u,n),a=e.add(b5(u)),s=e.add(_i({pulse:te(a)})),s={agg:a,ref:te(s)},o!=null&&(r[o]=s)),s.ref},tuplesRef(){return te(this.values)},extentRef(e,t){return rl(e,this,"extent","extent",t,!1)},domainRef(e,t){return rl(e,this,"domain","values",t,!1)},valuesRef(e,t,n){return rl(e,this,"vals","values",t,n||!0)},lookupRef(e,t){return rl(e,this,"lookup","tupleindex",t,!1)},indataRef(e,t){return rl(e,this,"indata","tupleindex",t,!0,!0)}};function EJ(e,t,n){const i=e.from.facet,r=i.name,o=yd(i,t);let s;i.name||R("Facet must have a name: "+j(i)),i.data||R("Facet must reference a data set: "+j(i)),i.field?s=t.add(_5({field:t.fieldRef(i.field),pulse:o})):i.groupby?s=t.add(aQ({key:t.keyRef(i.groupby),group:te(t.proxy(n.parent)),pulse:o})):R("Facet must specify groupby or field: "+j(i));const a=t.fork(),u=a.add(_i()),l=a.add(oa({pulse:te(u)}));a.addData(r,new Us(a,u,u,l)),a.addSignal("parent",null),s.params.subflow={$subflow:a.parse(e).toRuntime()}}function kJ(e,t,n){const i=t.add(_5({pulse:n.pulse})),r=t.fork();r.add(oa()),r.addSignal("parent",null),i.params.subflow={$subflow:r.parse(e).toRuntime()}}function z5(e,t,n){const i=e.remove,r=e.insert,o=e.toggle,s=e.modify,a=e.values,u=t.add(Rh()),l="if("+e.trigger+',modify("'+n+'",'+[r,i,o,s,a].map(f=>f??"null").join(",")+"),0)",c=Qi(l,t);u.update=c.$expr,u.params=c.$params}function tp(e,t){const n=N5(e),i=e.type===Qg,r=e.from&&e.from.facet,o=e.overlap;let s=e.layout||n===_v||n===wv,a,u,l,c,f,d,h;const g=n===vv||s||r,p=SJ(e.from,i,t);u=t.add(oQ({key:p.key||(e.key?lc(e.key):void 0),pulse:p.pulse,clean:!i}));const m=te(u);u=l=t.add(_i({pulse:m})),u=t.add(dQ({markdef:pJ(e),interactive:mJ(e.interactive,t),clip:gJ(e.clip,t),context:{$context:!0},groups:t.lookup(),parent:t.signals.parent?t.signalRef("parent"):null,index:t.markpath(),pulse:te(u)}));const y=te(u);u=c=t.add(w5(y5(e.encode,e.type,n,e.style,t,{mod:!1,pulse:y}))),u.params.parent=t.encode(),e.transform&&e.transform.forEach(S=>{const _=Tv(S,t),E=_.metadata;(E.generates||E.changes)&&R("Mark transforms should not generate new data."),E.nomod||(c.params.mod=!0),_.params.pulse=te(u),t.add(u=_)}),e.sort&&(u=t.add(wQ({sort:t.compareRef(e.sort),pulse:te(u)})));const x=te(u);(r||s)&&(s=t.add(E5({layout:t.objectProperty(e.layout),legends:t.legends,mark:y,pulse:x})),d=te(s));const b=t.add(v5({mark:y,pulse:d||x}));h=te(b),i&&(g&&(a=t.operators,a.pop(),s&&a.pop()),t.pushState(x,d||h,m),r?EJ(e,t,p):g?kJ(e,t,p):t.parse(e),t.popState(),g&&(s&&a.push(s),a.push(b))),o&&(h=$J(o,h,t));const v=t.add(S5({pulse:h})),w=t.add(oa({pulse:te(v)},void 0,t.parent()));e.name!=null&&(f=e.name,t.addData(f,new Us(t,l,v,w)),e.on&&e.on.forEach(S=>{(S.insert||S.remove||S.toggle)&&R("Marks only support modify triggers."),z5(S,t,f)}))}function $J(e,t,n){const i=e.method,r=e.bound,o=e.separation,s={separation:tt(o)?n.signalRef(o.signal):o,method:tt(i)?n.signalRef(i.signal):i,pulse:t};if(e.order&&(s.sort=n.compareRef({field:e.order})),r){const a=r.tolerance;s.boundTolerance=tt(a)?n.signalRef(a.signal):+a,s.boundScale=n.scaleRef(r.scale),s.boundOrient=r.orient}return te(n.add(pQ(s)))}function AJ(e,t){const n=t.config.legend,i=e.encode||{},r=vn(e,n),o=i.legend||{},s=o.name||void 0,a=o.interactive,u=o.style,l={};let c=0,f,d,h;Av.forEach(b=>e[b]?(l[b]=e[b],c=c||e[b]):0),c||R("Missing valid scale for legend.");
13const g=CJ(e,t.scaleType(c)),p={title:e.title!=null,scales:l,type:g,vgrad:g!=="symbol"&&r.isVertical()},m=te(t.add(_i(null,[p]))),y={enter:{x:{value:0},y:{value:0}}},x=te(t.add(cQ(d={type:g,scale:t.scaleRef(c),count:t.objectProperty(r("tickCount")),limit:t.property(r("symbolLimit")),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)})));return g===md?(h=[eJ(e,c,n,i.gradient),zE(e,n,i.labels,x)],d.count=d.count||t.signalRef(`max(2,2*floor((${Es(r.gradientLength())})/100))`)):g===Y1?h=[tJ(e,c,n,i.gradient,x),zE(e,n,i.labels,x)]:(f=oJ(e,n),h=[rJ(e,n,i,x,Es(f.columns))],d.size=DJ(e,t,h[0].marks)),h=[fc({role:$Z,from:m,encode:y,marks:h,layout:f,interactive:a})],p.title&&h.push(hJ(e,n,i.title,m)),tp(fc({role:EZ,from:m,encode:Du(FJ(r,e,n),o,Vc),marks:h,aria:r("aria"),description:r("description"),zindex:r("zindex"),name:s,interactive:a,style:u}),t)}function CJ(e,t){let n=e.type||OE;return!e.type&&MJ(e)===1&&(e.fill||e.stroke)&&(n=Ix(t)?md:B0(t)?Y1:OE),n!==md?n:B0(t)?Y1:md}function MJ(e){return Av.reduce((t,n)=>t+(e[n]?1:0),0)}function FJ(e,t,n){const i={enter:{},update:{}};return Ct(i,{orient:e("orient"),offset:e("offset"),padding:e("padding"),titlePadding:e("titlePadding"),cornerRadius:e("cornerRadius"),fill:e("fillColor"),stroke:e("strokeColor"),strokeWidth:n.strokeWidth,strokeDash:n.strokeDash,x:e("legendX"),y:e("legendY"),format:t.format,formatType:t.formatType}),i}function DJ(e,t,n){const i=Es(qE("size",e,n)),r=Es(qE("strokeWidth",e,n)),o=Es(TJ(n[1].encode,t,Gc));return Qi(`max(ceil(sqrt(${i})+${r}),${o})`,t)}function qE(e,t,n){return t[e]?`scale("${t[e]}",datum)`:D5(e,n[0].encode)}function TJ(e,t,n){return D5("fontSize",e)||QQ("fontSize",t,n)}const NJ=`item.orient==="${Tu}"?-90:item.orient==="${Nu}"?90:0`;function RJ(e,t){e=Y(e)?{text:e}:e;const n=vn(e,t.config.title),i=e.encode||{},r=i.group||{}
13,o=r.name||void 0,s=r.interactive,a=r.style,u=[],l={},c=te(t.add(_i(null,[l])));return u.push(PJ(e,n,OJ(e),c)),e.subtitle&&u.push(LJ(e,n,i.subtitle,c)),tp(fc({role:FZ,from:c,encode:zJ(n,r),marks:u,aria:n("aria"),description:n("description"),zindex:n("zindex"),name:o,interactive:s,style:a}),t)}function OJ(e){const t=e.encode;return t&&t.title||le({name:e.name,interactive:e.interactive,style:e.style},t)}function zJ(e,t){const n={enter:{},update:{}};return Ct(n,{orient:e("orient"),anchor:e("anchor"),align:{signal:Mv},angle:{signal:NJ},limit:e("limit"),frame:e("frame"),offset:e("offset")||0,padding:e("subtitlePadding")}),Du(n,t,Vc)}function PJ(e,t,n,i){const r={value:0},o=e.text,s={enter:{opacity:r},update:{opacity:{value:1}},exit:{opacity:r}};return Ct(s,{text:o,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("color"),font:t("font"),fontSize:t("fontSize"),fontStyle:t("fontStyle"),fontWeight:t("fontWeight"),lineHeight:t("lineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Tn({type:sa,role:DZ,style:qQ,from:i,encode:s},n)}function LJ(e,t,n,i){const r={value:0},o=e.subtitle,s={enter:{opacity:r},update:{opacity:{value:1}},exit:{opacity:r}};return Ct(s,{text:o,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("subtitleColor"),font:t("subtitleFont"),fontSize:t("subtitleFontSize"),fontStyle:t("subtitleFontStyle"),fontWeight:t("subtitleFontWeight"),lineHeight:t("subtitleLineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Tn({type:sa,role:TZ,style:WQ,from:i,encode:s},n)}function IJ(e,t){const n=[];e.transform&&e.transform.forEach(i=>{n.push(Tv(i,t))}),e.on&&e.on.forEach(i=>{z5(i,t,e.name)}),t.addDataPipeline(e.name,BJ(e,t,n))}function BJ(e,t,n){const i=[];let r=null,o=!1,s=!1,a,u,l,c,f;for(e.values?tt(e.values)||gd(e.format)?(i.push(WE(t,e)),i.push(r=ns())):i.push(r=ns({$ingest:e.values,$format:e.format})):e.url?gd(e.url)||gd(e.format)?(i.push(WE(t,e)),i.push(r=ns())):i.push(r=ns({$request:e.url,$format:e.format})):e.source&&(r=a=H(e.source).map(d=>te(t.getData(d).output)),i.push(null)),u=0,l=n.length;u<l;++u)c=n[u],f=c.metadata,!r&&!f.source&&i.push(r=ns()),i.push(c),f.generates&&(s=!0),f.modifies&&!s&&(o=!0),f.source?r=c:f.changes&&(r=null);return a&&(l=a.length-1,i[0]=bQ({derive:o,pulse:l?a:a[0]}),(o||l)&&i.splice(1,0,ns())),r||i.push(ns()),i.push(oa({})),i}function ns(e){const t=_i({},e);return t.metadata={source:!0},t}function WE(e,t){return fQ({url:t.url?e.property(t.url):void 0,async:t.async?e.property(t.async):void 0,values:t.values?e.property(t.values):void 0,format:e.objectProperty(t.format)})}const P5=e=>e===To||e===Si,np=(e,t,n)=>tt(e)?WJ(e.signal,t,n):e===Tu||e===Si?t:n,pt=(e,t,n)=>tt(e)?jJ(e.signal,t,n):P5(e)?t:n,fi=(e,t,n)=>tt(e)?qJ(e.signal,t,n):P5(e)?n:t,L5=(e,t,n)=>tt(e)?HJ(e.signal,t,n):e===Si?{value:t}:{value:n},UJ=(e,t,n)=>tt(e)?GJ(e.signal,t,n):e===Nu?{value:t}:{value:n},jJ=(e,t,n)=>I5(`${e} === '${Si}' || ${e} === '${To}'`,t,n),qJ=(e,t,n)=>I5(`${e} !== '${Si}' && ${e} !== '${To}'`,t,n),WJ=(e,t,n)=>Nv(`${e} === '${Tu}' || ${e} === '${Si}'`,t,n),HJ=(e,t,n)=>Nv(`${e} === '${Si}'`,t,n),GJ=(e,t,n)=>Nv(`${e} === '${Nu}'`,t,n),I5=(e,t,n)=>(t=t!=null?gt(t):t,n=n!=null?gt(n):n,HE(t)&&HE(n)?(t=t?t.signal||j(t.value):null,n=n?n.signal||j(n.value):null,{signal:`${e} ? (${t}) : (${n})`}):[le({test:e},t)].concat(n||[])),HE=e=>e==null||Object.keys(e).length===1,Nv=(e,t,n)=>({signal:`${e} ? (${Ra(t)}) : (${Ra(n)})`}),VJ=(e,t,n,i,r)=>({signal:(i!=null?`${e} === '${Tu}' ? (${Ra(i)}) : `:"")+(n!=null?`${e} === '${To}' ? (${Ra(n)}) : `:"")+(r!=null?`${e} === '${Nu}' ? (${Ra(r)}) : `:"")+(t!=null?`${e} === '${Si}' ? (${Ra(t)}) : `:"")+"(null)"}),Ra=e=>tt(e)?e.signal:e==null?null:j(e),YJ=(e,t)=>
13t===0?0:tt(e)?{signal:`(${e.signal}) * ${t}`}:{value:e*t},La=(e,t)=>{const n=e.signal;return n&&n.endsWith("(null)")?{signal:n.slice(0,-6)+t.signal}:e};function ka(e,t,n,i){let r;if(t&&X(t,e))return t[e];if(X(n,e))return n[e];if(e.startsWith("title")){switch(e){case"titleColor":r="fill";break;case"titleFont":case"titleFontSize":case"titleFontWeight":r=e[5].toLowerCase()+e.slice(6)}return i[$v][r]}else if(e.startsWith("label")){switch(e){case"labelColor":r="fill";break;case"labelFont":case"labelFontSize":r=e[5].toLowerCase()+e.slice(6)}return i[Gc][r]}return null}function GE(e){const t={};for(const n of e)if(n)for(const i in n)t[i]=1;return Object.keys(t)}function XJ(e,t){var n=t.config,i=n.style,r=n.axis,o=t.scaleType(e.scale)==="band"&&n.axisBand,s=e.orient,a,u,l;if(tt(s)){const f=GE([n.axisX,n.axisY]),d=GE([n.axisTop,n.axisBottom,n.axisLeft,n.axisRight]);a={};for(l of f)a[l]=pt(s,ka(l,n.axisX,r,i),ka(l,n.axisY,r,i));u={};for(l of d)u[l]=VJ(s.signal,ka(l,n.axisTop,r,i),ka(l,n.axisBottom,r,i),ka(l,n.axisLeft,r,i),ka(l,n.axisRight,r,i))}else a=s===Si||s===To?n.axisX:n.axisY,u=n["axis"+s[0].toUpperCase()+s.slice(1)];return a||u||o?le({},r,a,u,o):r}function KJ(e,t,n,i){const r=vn(e,t),o=e.orient;let s,a;const u={enter:s={opacity:ye},update:a={opacity:qn},exit:{opacity:ye}};Ct(u,{stroke:r("domainColor"),strokeCap:r("domainCap"),strokeDash:r("domainDash"),strokeDashOffset:r("domainDashOffset"),strokeWidth:r("domainWidth"),strokeOpacity:r("domainOpacity")});const l=VE(e,0),c=VE(e,1);return s.x=a.x=pt(o,l,ye),s.x2=a.x2=pt(o,c),s.y=a.y=fi(o,l,ye),s.y2=a.y2=fi(o,c),Tn({type:Cv,role:bZ,from:i,encode:u},n)}function VE(e,t){return{scale:e.scale,range:t}}function ZJ(e,t,n,i,r){const o=vn(e,t),s=e.orient,a=e.gridScale,u=np(s,1,-1),l=QJ(e.offset,u);let c,f,d;const h={enter:c={opacity:ye},update:d={opacity:qn},exit:f={opacity:ye}};Ct(h,{stroke:o("gridColor"),strokeCap:o("gridCap"),strokeDash:o("gridDash"),strokeDashOffset:o("gridDashOffset"),strokeOpacity:o("gridOpacity"),strokeWidth:o("gridWidth")});const g={scale:e.scale,field:jn,band:r.band,extra:r.extra,offset:r.offset,round:o("tickRound")},p=pt(s,{signal:"height"},{signal:"width"}),m=a?{scale:a,range:0,mult:u,offset:l}:{value:0,offset:l},y=a?{scale:a,range:1,mult:u,offset:l}:le(p,{mult:u,offset:l});return c.x=d.x=pt(s,g,m),c.y=d.y=fi(s,g,m),c.x2=d.x2=fi(s,y),c.y2=d.y2=pt(s,y),f.x=pt(s,g),f.y=fi(s,g),Tn({type:Cv,role:vZ,key:jn,from:i,encode:h},n)}function QJ(e,t){if(t!==1)if(!V(e))e=tt(t)?{signal:`(${t.signal}) * (${e||0})`}:t*(e||0);else{let n=e=le({},e);for(;n.mult!=null;)if(V(n.mult))n=n.mult=le({},n.mult);else return n.mult=tt(t)?{signal:`(${n.mult}) * (${t.signal})`}:n.mult*t,e;n.mult=t}return e}function JJ(e,t,n,i,r,o){const s=vn(e,t),a=e.orient,u=np(a,-1,1);let l,c,f;const d={enter:l={opacity:ye},update:f={opacity:qn},exit:c={opacity:ye}};Ct(d,{stroke:s("tickColor"),strokeCap:s("tickCap"),strokeDash:s("tickDash"),strokeDashOffset:s("tickDashOffset"),strokeOpacity:s("tickOpacity"),strokeWidth:s("tickWidth")});const h=gt(r);h.mult=u;const g={scale:e.scale,field:jn,band:o.band,extra:o.extra,offset:o.offset,round:s("tickRound")};return f.y=l.y=pt(a,ye,g),f.y2=l.y2=pt(a,h),c.x=pt(a,g),f.x=l.x=fi(a,ye,g),f.x2=l.x2=fi(a,h),c.y=fi(a,g),Tn({type:Cv,role:_Z,key:jn,from:i,encode:d},n)}function Qm(e,t,n,i,r){return{signal:'flush(range("'+e+'"), scale("'+e+'", datum.value), '+t+","+n+","+i+","+r+")"}}function eee(e,t,n,i,r,o){const s=vn(e,t),a=e.orient,u=e.scale,l=np(a,-1,1),c=Es(s("labelFlush")),f=Es(s("labelFlushOffset")),d=s("labelAlign"),h=s("labelBaseline");let g=c===0||!!c,p;const m=gt(r);m.mult=l,m.offset=gt(s("labelPadding")||0),m.offset.mult=l;const y={scale:u,field:jn,band:.5,offset:T5(o.offset,s("labelOffset"))},x=pt(a,g?Qm(u,c,'"left"','"right"','"center"'):{value:"center"},UJ(a,"left","right")),b=pt(a,L5(a,"bottom","top"),g?Qm(u,c,'"top"','"bottom"','"middle"'):{value:"middle"}),v=Qm(u,c,`-(${f})`,f,0);g=g&&f;const w={opacity:ye,x:pt(a,y,m),y:fi(a,y,m)},S={enter:w,update:p={opacity:qn,text:{field:kv},x:w.x,y:w.y,align:x,baseline:b},exit:{opacity:ye,x:w.x,y:w.y}};Ct(S,{dx:!d&&g?pt(a,v):null,dy:!h&&g?fi(a,v):null}),Ct(S,{angle:s("labelAngle"),fill:s("labelColor"),fillOpacity:s("labelOpacity"),font:s("labelFont"),fontSize:s("labelFontSize"),fontWeight:s("labelFontWeight"),fontStyle:s("labelFontStyle"),limit:s("labelLimit"),lineHeight:s("labelLineHeight")},{align:d,baseline:h});const _=s("labelBound");let E=s("labelOverlap");return E=E||_?{separation:s("labelSeparation"),method:E,order:"datum.index",boun
13d:_?{scale:u,orient:a,tolerance:_}:null}:void 0,p.align!==x&&(p.align=La(p.align,x)),p.baseline!==b&&(p.baseline=La(p.baseline,b)),Tn({type:sa,role:wZ,style:Gc,key:jn,from:i,encode:S,overlap:E},n)}function tee(e,t,n,i){const r=vn(e,t),o=e.orient,s=np(o,-1,1);let a,u;const l={enter:a={opacity:ye,anchor:gt(r("titleAnchor",null)),align:{signal:Mv}},update:u=le({},a,{opacity:qn,text:gt(e.title)}),exit:{opacity:ye}},c={signal:`lerp(range("${e.scale}"), ${Jg(0,1,.5)})`};return u.x=pt(o,c),u.y=fi(o,c),a.angle=pt(o,ye,YJ(s,90)),a.baseline=pt(o,L5(o,To,Si),{value:To}),u.angle=a.angle,u.baseline=a.baseline,Ct(l,{fill:r("titleColor"),fillOpacity:r("titleOpacity"),font:r("titleFont"),fontSize:r("titleFontSize"),fontStyle:r("titleFontStyle"),fontWeight:r("titleFontWeight"),limit:r("titleLimit"),lineHeight:r("titleLineHeight")},{align:r("titleAlign"),angle:r("titleAngle"),baseline:r("titleBaseline")}),nee(r,o,l,n),l.update.align=La(l.update.align,a.align),l.update.angle=La(l.update.angle,a.angle),l.update.baseline=La(l.update.baseline,a.baseline),Tn({type:sa,role:SZ,style:$v,from:i,encode:l},n)}function nee(e,t,n,i){const r=(a,u)=>a!=null?(n.update[u]=La(gt(a),n.update[u]),!1):!Ma(u,i),o=r(e("titleX"),"x"),s=r(e("titleY"),"y");n.enter.auto=s===o?gt(s):pt(t,gt(s),gt(o))}function iee(e,t){const n=XJ(e,t),i=e.encode||{},r=i.axis||{}
vendor: 5,803 bytes, line 13
13,o=r.name||void 0,s=r.interactive,a=r.style,u=vn(e,n),l=JQ(u),c={scale:e.scale,ticks:!!u("ticks"),labels:!!u("labels"),grid:!!u("grid"),domain:!!u("domain"),title:e.title!=null},f=te(t.add(_i({},[c]))),d=te(t.add(rQ({scale:t.scaleRef(e.scale),extra:t.property(l.extra),count:t.objectProperty(e.tickCount),values:t.objectProperty(e.values),minstep:t.property(e.tickMinStep),formatType:t.property(e.formatType),formatSpecifier:t.property(e.format)}))),h=[];let g;return c.grid&&h.push(ZJ(e,n,i.grid,d,l)),c.ticks&&(g=u("tickSize"),h.push(JJ(e,n,i.ticks,d,g,l))),c.labels&&(g=c.ticks?g:0,h.push(eee(e,n,i.labels,d,g,l))),c.domain&&h.push(KJ(e,n,i.domain,f)),c.title&&h.push(tee(e,n,i.title,f)),tp(fc({role:xZ,from:f,encode:Du(ree(u,e),r,Vc),marks:h,aria:u("aria"),description:u("description"),zindex:u("zindex"),name:o,interactive:s,style:a}),t)}function ree(e,t){const n={enter:{},update:{}};return Ct(n,{orient:e("orient"),offset:e("offset")||0,position:ti(t.position,0),titlePadding:e("titlePadding"),minExtent:e("minExtent"),maxExtent:e("maxExtent"),range:{signal:`abs(span(range("${t.scale}")))`},translate:e("translate"),format:t.format,formatType:t.formatType}),n}function B5(e,t,n){const i=H(e.signals),r=H(e.scales);return n||i.forEach(o=>x5(o,t)),H(e.projections).forEach(o=>zQ(o,t)),r.forEach(o=>EQ(o,t)),H(e.data).forEach(o=>IJ(o,t)),r.forEach(o=>kQ(o,t)),(n||i).forEach(o=>iQ(o,t)),H(e.axes).forEach(o=>iee(o,t)),H(e.marks).forEach(o=>tp(o,t)),H(e.legends).forEach(o=>AJ(o,t)),e.title&&RJ(e.title,t),t.parseLambdas(),t}const oee=e=>Du({enter:{x:{value:0},y:{value:0}},update:{width:{signal:"width"},height:{signal:"height"}}},e);function see(e,t){const n=t.config,i=te(t.root=t.add(Rh())),r=aee(e,n);r.forEach(l=>x5(l,t)),t.description=e.description||n.description,t.eventConfig=n.events,t.legends=t.objectProperty(n.legend&&n.legend.layout),t.locale=n.locale;const o=t.add(_i()),s=t.add(w5(y5(oee(e.encode),Qg,wv,e.style,t,{pulse:te(o)}))),a=t.add(E5({layout:t.objectProperty(e.layout),legends:t.legends,autosize:t.signalRef("autosize"),mark:i,pulse:te(s)}));t.operators.pop(),t.pushState(te(s),te(a),null),B5(e,t,r),t.operators.push(a);let u=t.add(v5({mark:i,pulse:te(a)}));return u=t.add(S5({pulse:te(u)})),u=t.add(oa({pulse:te(u)})),t.addData("root",new Us(t,o,o,u)),t}function ol(e,t){return t&&t.signal?{name:e,update:t.signal}:{name:e,value:t}}function aee(e,t){const n=s=>ti(e[s],t[s]),i=[ol("background",n("background")),ol("autosize",pZ(n("autosize"))),ol("padding",yZ(n("padding"))),ol("width",n("width")||0),ol("height",n("height")||0)],r=i.reduce((s,a)=>(s[a.name]=a,s),{}),o={};return H(e.signals).forEach(s=>{X(r,s.name)?s=le(r[s.name],s):i.push(s),o[s.name]=s}),H(t.signals).forEach(s=>{!X(o,s.name)&&!X(r,s.name)&&i.push(s)}),i}function U5(e,t){this.config=e||{},this.options=t||{},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 YE(e){this.config=e.config,this.options=e.options,this.legends=e.legends,this.field=Object.create(e.field),this.signals=Object.create(e.signals),this.lambdas=Object.create(e.lambdas),this.scales=Object.create(e.scales),this.events=Object.create(e.events),this.data=Object.create(e.data),this.streams=[],this.updates=[],this.operators=[],this._id=0,this._subid=++e._nextsub[0],this._nextsub=e._nextsub,this._parent=e._parent.slice(),this._encode=e._encode.slice(),this._lookup=e._lookup.slice(),this._markpath=e._markpath}U5.prototype=YE.prototype={parse(e){return B5(e,this)},fork(){return new YE(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(e){return this.operators.push(e),e.id=this.id(),e.refs&&(e.refs.forEach(t=>{t.$ref=e.id}),e.refs=null),e},proxy(e){const t=e instanceof q1?te(e):e;return this.add(xQ({value:t}))},addStream(e){return this.streams.push(e),e.id=this.id(),e},addUpdate(e){return this.updates.push(e),e},finish(){let e,t;this.root&&(this.root.root=!0);for(e in this.signals)this.signals[e].signal=e;for(e in this.scales)this.scales[e].scale=e;function n(i,r,o){let s,a;i&&(s=i.data||(i.data={}),a=s[r]||(s[r]=[]),a.push(o))}for(e in this.data){t=this.data[e],n(t.input,e,"input"),n(t.output,e,"output"),n(t.values,e,"values");for(const i in t.index)n(t.index[i],e,"index:"+i)}return this},pushState(e,t,n){this._encode.push(te(this.add(oa({pulse:e})))),this._parent.push(t),this._lookup.push(n?te(this.proxy(n)):null),this._markpath.push(-1)},popState(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},parent(){return xe(this._parent)},encode(){return xe(this._encode)},lookup(){return xe(this._lookup)},markpath(){const e=this._markpath;return++e[e.length-1]},fieldRef(e,t){if(Y(e))return lc(e,t);e.signal||R("Unsupported field reference: "+j(e));const n=e.signal;let i=this.field[n];if(!i){const r={name:this.signalRef(n)};t&&(r.as=t),this.field[n]=i=te(this.add(uQ(r)))}return i},compareRef(e){let t=!1;const n=o=>tt(o)?(t=!0,this.signalRef(o.signal)):VZ(o)?(t=!0,this.exprRef(o.expr)):o,i=H(e.field).map(n),r=H(e.order).map(n);return t?te(this.add(RE({fields:i,orders:r}))):TE(i,r)},keyRef(e,t){let n=!1;const i=o=>tt(o)?(n=!0,te(r[o.signal])):o,r=this.signals;return e=H(e).map(i),n?te(this.add(lQ({fields:e,flat:t}))):qZ(e,t)},sortRef(e){if(!e)return e;const t=Kg(e.op,e.field),n=e.order||WZ;return n.signal?te(this.add(RE({fields:t,orders:this.signalRef(n.signal)}
13))):TE(t,n)},event(e,t){const n=e+":"+t;if(!this.events[n]){const i=this.id();this.streams.push({id:i,source:e,type:t}),this.events[n]=i}return this.events[n]},hasOwnSignal(e){return X(this.signals,e)},addSignal(e,t){this.hasOwnSignal(e)&&R("Duplicate signal name: "+j(e));const n=t instanceof q1?t:this.add(Rh(t));return this.signals[e]=n},getSignal(e){return this.signals[e]||R("Unrecognized signal name: "+j(e)),this.signals[e]},signalRef(e){return this.signals[e]?te(this.signals[e]):(X(this.lambdas,e)||(this.lambdas[e]=this.add(Rh(null))),te(this.lambdas[e]))},parseLambdas(){const e=Object.keys(this.lambdas);for(let t=0,n=e.length;t<n;++t){const i=e[t],r=Qi(i,this),o=this.lambdas[i];o.params=r.$params,o.update=r.$expr}},property(e){return e&&e.signal?this.signalRef(e.signal):e},objectProperty(e){return!e||!V(e)?e:this.signalRef(e.signal||Rv(e))},exprRef(e,t){const n={expr:Qi(e,this)};return t&&(n.expr.$name=t),te(this.add(sQ(n)))},addBinding(e,t){this.bindings||R("Nested signals do not support binding: "+j(e)),this.bindings.push(le({signal:e},t))},addScaleProj(e,t){X(this.scales,e)&&R("Duplicate scale or projection name: "+j(e)),this.scales[e]=this.add(t)},addScale(e,t){this.addScaleProj(e,vQ(t))},addProjection(e,t){this.addScaleProj(e,yQ(t))},getScale(e){return this.scales[e]||R("Unrecognized scale name: "+j(e)),this.scales[e]},scaleRef(e){return te(this.getScale(e))},scaleType(e){return this.getScale(e).params.type},projectionRef(e){return this.scaleRef(e)},projectionType(e){return this.scaleType(e)},addData(e,t){return X(this.data,e)&&R("Duplicate data set name: "+j(e)),this.data[e]=t},getData(e){return this.data[e]||R("Undefined data set name: "+j(e)),this.data[e]},addDataPipeline(e,t){return X(this.data,e)&&R("Duplicate data set name: "+j(e)),this.addData(e,Us.fromEntries(this,t))}};function Rv(e){return(z(e)?uee:lee)(e)}function uee(e){const t=e.length;let n="[";for(let i=0;i<t;++i){const r=e[i];n+=(i>0?",":"")+(V(r)?r.signal||Rv(r):j(r))}return n+"]"}function lee(e){let t="{",n=0,i,r;for(i in e)r=e[i],t+=(++n>1?",":"")+j(i)+":"+(V(r)?r.signal||Rv(r):j(r));return t+"}"}function cee(){const e="sans-serif",i="#4c78a8",r="#000",o="#888",s="#ddd";return{description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:i},area:{fill:i},image:null,line:{stroke:i,strokeWidth:2},path:{stroke:i},rect:{fill:i},rule:{stroke:r},shape:{stroke:i},symbol:{fill:i,size:64},text:{fill:r,font:e,fontSize:11},trail:{fill:i,size:2},style:{"guide-label":{fill:r,font:e,fontSize:10},"guide-title":{fill:r,font:e,fontSize:11,fontWeight:"bold"},"group-title":{fill:r,font:e,fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:r,font:e,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:s},view:{fill:"transparent"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:o,grid:!1,gridWidth:1,gridColor:s,labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:o,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:s,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:o,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 fee(e,t,n){return V(e)||R("Input Vega specification must be an object."),t=Sy(cee(),t,e.config),see(e,new U5(t,n)).toRuntime()}le(Gl,zP,MU,aj,Gq,BW,hG,GH,pG,IG,XG,nV);function Ov(e){return L(e,"or")}function zv(e){return L(e,"and")}function Pv(e){return L(e,"not")}function xd(e,t){if(Pv(e))xd(e.not,t);else if(zv(e))for(const n of e.and)xd(n,t);else if(Ov(e))for(const n of e.or)xd(n,t);else t(e)}function Ia(e,t){return Pv(e)?{not:Ia(e.not,t)}:zv(e)?{and:e.and.map(n=>Ia(n,t))}:Ov(e)?{or:e.or.map(n=>Ia(n,t))}:t(e)}const se=structuredClone;function dee(e){throw new Error(e)}function dc(e,t){const n={};for(const i of t)X(e,i)&&(n[i]=e[i]);return n}function Wn(e,t){const n={...e};for(const i of t)delete n[i];return n}Set.prototype.toJSON=function(){return`Set(${[...this].map(e=>Ae(e)).join(",")})`};function me(e){if(Ce(e))return e;const t=Y(e)?e:Ae(e);
13if(t.length<250)return t;let n=0;for(let i=0;i<t.length;i++){const r=t.charCodeAt(i);n=(n<<5)-n+r,n=n&n}return n}function XE(e){return e===!1||e===null}function ge(e,t){return e.includes(t)}function hc(e,t){let n=0;for(const[i,r]of e.entries())if(t(r,i,n++))return!0;return!1}function j5(e,t){let n=0;for(const[i,r]of e.entries())if(!t(r,i,n++))return!1;return!0}function hee(e,...t){for(const n of t)gee(e,n??{});return e}function gee(e,t){for(const n of P(t))Zh(e,n,t[n],!0)}function Mr(e,t){const n=[],i={};let r;for(const o of e)r=t(o),!(r in i)&&(i[r]=1,n.push(o));return n}function pee(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function q5(e,t){for(const n of e)if(t.has(n))return!0;return!1}function KE(e){const t=new Set;for(const n of e){const r=Yr(n).map((s,a)=>a===0?s:`[${s}]`),o=r.map((s,a)=>r.slice(0,a+1).join(""));for(const s of o)t.add(s)}return t}function W5(e,t){return e===void 0||t===void 0?!0:q5(KE(e),KE(t))}function Re(e){return P(e).length===0}const P=Object.keys,nt=Object.values,js=Object.entries;function Oh(e){return e===!0||e===!1}function je(e){const t=e.replace(/\W/g,"_");return(e.match(/^\d+/)?"_":"")+t}function bd(e,t){return Pv(e)?`!(${bd(e.not,t)})`:zv(e)?`(${e.and.map(n=>bd(n,t)).join(") && (")})`:Ov(e)?`(${e.or.map(n=>bd(n,t)).join(") || (")})`:t(e)}function K1(e,t){if(t.length===0)return!0;const n=t.shift();return n in e&&K1(e[n],t)&&delete e[n],Re(e)}function ip(e){return e.charAt(0).toUpperCase()+e.substr(1)}function H5(e,t="datum"){const n=Yr(e),i=[];for(let r=1;r<=n.length;r++){const o=`[${n.slice(0,r).map(j).join("][")}]`;i.push(`${t}${o}`)}return i.join(" && ")}function mee(e,t="datum"){return`${t}[${j(Yr(e).join("."))}]`}function Fe(e){return`datum['${e.replaceAll("'","\\'")}']`}function yee(e){return e.replace(/(\[|\]|\.|'|")/g,"\\$1")}function mi(e){return`${Yr(e).map(yee).join("\\.")}`}function uu(e,t,n){return e.replace(new RegExp(t.replace(/[-/\\^$*+?.()|[\]{}]/g,"\\$&"),"g"),n)}function Yc(e){return`${Yr(e).join(".")}`}function gc(e){return e?Yr(e).length:0}function Ze(...e){return e.find(t=>t!==void 0)}let xee=42;function bee(e){const t=++xee;return e?String(e)+t:t}function vee(e){return wee(e)?e:`__${e}`}function wee(e){return e.startsWith("__")}function zh(e){if(e!==void 0)return(e%360+360)%360}function Lv(e){return Ce(e)?!0:!isNaN(e)&&!isNaN(parseFloat(e))}const ZE=Object.getPrototypeOf(structuredClone({}));function In(e,t){if(e===t)return!0;if(e&&t&&typeof e=="object"&&typeof t=="object"){if(e.constructor.name!==t.constructor.name)return!1;let n,i;if(Array.isArray(e)){if(n=e.length,n!=t.length)return!1;for(i=n;i--!==0;)if(!In(e[i],t[i]))return!1;return!0}if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const o of e.entries())if(!t.has(o[0]))return!1;for(const o of e.entries())if(!In(o[1],t.get(o[0])))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const o of e.entries())if(!t.has(o[0]))return!1;return!0}if(ArrayBuffer.isView(e)&&ArrayBuffer.isView(t)){if(n=e.length,n!=t.length)return!1;for(i=n;i--!==0;)if(e[i]!==t[i])return!1;return!0}if(e.constructor===RegExp)return e.source===t.source&&e.flags===t.flags;if(e.valueOf!==Object.prototype.valueOf&&e.valueOf!==ZE.valueOf)return e.valueOf()===t.valueOf();if(e.toString!==Object.prototype.toString&&e.toString!==ZE.toString)return e.toString()===t.toString();const r=Object.keys(e);if(n=r.length,n!==Object.keys(t).length)return!1;for(i=n;i--!==0;)if(!Object.prototype.hasOwnProperty.call(t,r[i]))return!1;for(i=n;i--!==0;){const o=r[i];if(!In(e[o],t[o]))return!1}return!0}return e!==e&&t!==t}function Ae(e){const t=[];return(function n(i){if(i?.toJSON&&typeof i.toJSON=="function"&&(i=i.toJSON()),i===void 0)return;if(typeof i=="number")return isFinite(i)?`${i}`:"null";if(typeof i!="object")return JSON.stringify(i);let r,o;if(Array.isArray(i)){for(o="[",r=0;r<i.length;r++)r&&(o+=","),o+=n(i[r])||"null";return`${o}]`}if(i===null)return"null";if(t.includes(i))throw new TypeError("Converting circular structure to JSON");const s=t.push(i)-1,a=Object.keys(i).sort();for(o="",r=0;r<a.length;r++){const u=a[r],l=n(i[u]);l&&(o&&(o+=","),o+=`${JSON.stringify(u)}:${l}`)}return t.splice(s,1),`{${o}}`})(e)}function L(e,t){return V(e)&&X(e,t)&&e[t]!==void 0}const Rr="row",Or="column",rp="facet",Ie="x",bt="y",Ei="x2",ar="y2",qo="xOffset",Ru="yOffset",ki="radius",Zr="radius2",Zn="theta",Qr="theta2",$i="latitude",Ai="longitude",Ci="latitude2",Xn="longitude2",Wo="time",yn="color",ur="fill",lr="stroke",xn="shape",Jr="size",aa="angle",eo="opacity",Ho="fillOpacity",Go="strokeOpacity",Vo="strokeWidth",Yo="strokeDash",Xc="text",lu="order",Kc="detail",op="key",qs="tooltip",sp="href",ap="url",up="description",_ee={x:1,y:1,x2:1,y2:1},G5={theta:1,theta2:1,radius:1,radius2:1};function V5(e){return X(G5,e)}const Iv={longitude:1,longitude2:1,latitude:1,latitude2:1};function Y5(e){switch(e){case $i:return"y";case Ci:return"y2";case Ai:return"x";case Xn:return"x2"}}function X5(e){return X(Iv,e)}const See=P(Iv),Bv={..._ee,...G5,...Iv,xOffset:1,yOffset:1,color:1,fill:1,stroke:1,time:1,op
13acity:1,fillOpacity:1,strokeOpacity:1,strokeWidth:1,strokeDash:1,size:1,angle:1,shape:1,order:1,text:1,detail:1,key:1,tooltip:1,href:1,url:1,description:1};function Ba(e){return e===yn||e===ur||e===lr}const K5={row:1,column:1,facet:1},Bn=P(K5),Uv={...Bv,...K5},Eee=P(Uv),{order:ble,detail:vle,tooltip:wle,...kee}=Uv,{row:_le,column:Sle,facet:Ele,...$ee}=kee;function Aee(e){return X($ee,e)}function Z5(e){return X(Uv,e)}const Cee=[Ei,ar,Ci,Xn,Qr,Zr];function Q5(e){return ua(e)!==e}function ua(e){switch(e){case Ei:return Ie;case ar:return bt;case Ci:return $i;case Xn:return Ai;case Qr:return Zn;case Zr:return ki}return e}function No(e){if(V5(e))switch(e){case Zn:return"startAngle";case Qr:return"endAngle";case ki:return"outerRadius";case Zr:return"innerRadius"}return e}function cr(e){switch(e){case Ie:return Ei;case bt:return ar;case $i:return Ci;case Ai:return Xn;case Zn:return Qr;case ki:return Zr}}function bn(e){switch(e){case Ie:case Ei:return"width";case bt:case ar:return"height"}}function J5(e){switch(e){case Ie:return"xOffset";case bt:return"yOffset";case Ei:return"x2Offset";case ar:return"y2Offset";case Zn:return"thetaOffset";case ki:return"radiusOffset";case Qr:return"theta2Offset";case Zr:return"radius2Offset"}}function jv(e){switch(e){case Ie:return"xOffset";case bt:return"yOffset"}}function Mee(e){switch(e){case"xOffset":return"x";case"yOffset":return"y"}}const Fee=P(Bv),{x:kle,y:$le,x2:Ale,y2:Cle,xOffset:Mle,yOffset:Fle,latitude:Dle,longitude:Tle,latitude2:Nle,longitude2:Rle,theta:Ole,theta2:zle,radius:Ple,radius2:Lle,...qv}=Bv,Dee=P(qv),Wv={x:1,y:1},to=P(Wv);function Ke(e){return X(Wv,e)}const Hv={theta:1,radius:1},Tee=P(Hv);function lp(e){return e==="width"?Ie:bt}const eT={xOffset:1,yOffset:1};function Zc(e){return X(eT,e)}const Nee={time:1};function Jm(e){return e in Nee}const{text:Ile,tooltip:Ble,href:Ule,url:jle,description:qle,detail:Wle,key:Hle,order:Gle,...tT}=qv,Ree=P(tT);function Oee(e){return X(qv,e)}function zee(e){switch(e){case yn:case ur:case lr:case Jr:case xn:case eo:case Vo:case Yo:return!0;case Ho:case Go:case aa:case Wo:return!1}}const nT={...Wv,...Hv,...eT,...tT},Gv=P(nT);function fr(e){return X(nT,e)}function Pee(e,t){return Iee(e)[t]}const iT={arc:"always",area:"always",bar:"always",circle:"always",geoshape:"always",image:"always",line:"always",rule:"always",point:"always",rect:"always",square:"always",trail:"always",text:"always",tick:"always"},{geoshape:Vle,...Lee}=iT;function Iee(e){switch(e){case yn:case ur:case lr:case up:case Kc:case op:case qs:case sp:case lu:case eo:case Ho:case Go:case Vo:case rp:case Rr:case Or:return iT;case Ie:case bt:case qo:case Ru:case $i:case Ai:case Wo:return Lee;case Ei:case ar:case Ci:case Xn:return{area:"always",bar:"always",image:"always",rect:"always",rule:"always",circle:"binned",point:"binned",square:"binned",tick:"binned",line:"binned",trail:"binned"};case Jr:return{point:"always",tick:"always",rule:"always",circle:"always",square:"always",bar:"always",text:"always",line:"always",trail:"always"};case Yo:return{line:"always",point:"always",tick:"always",rule:"always",circle:"always",square:"always",bar:"always",geoshape:"always"};case xn:return{point:"always",geoshape:"always"};case Xc:return{text:"always"};case aa:return{point:"always",square:"always",text:"always"};case ap:return{image:"always"};case Zn:return{text:"always",arc:"always"};case ki:return{text:"always",arc:"always"};case Qr:case Zr:return{arc:"always"}}}function e0(e){switch(e){case Ie:case bt:case Zn:case ki:case qo:case Ru:case Jr:case aa:case Vo:case eo:case Ho:case Go:case Wo:case Ei:case ar:case Qr:case Zr:return;case rp:case Rr:case Or:case xn:case Yo:case Xc:case qs:case sp:case ap:case up:return"discrete";case yn:case ur:case lr:return"flexible";case $i:case Ai:case Ci:case Xn:case Kc:case op:case lu:return}}const Bee={argmax:1,argmin:1,average:1,count:1,distinct:1,exponential:1,exponentialb:1,product:1,max:1,mean:1,median:1,min:1,missing:1,q1:1,q3:1,ci0:1,ci1:1,stderr:1,stdev:1,stdevp:1,sum:1,valid:1,values:1,variance:1,variancep:1},Uee={count:1,min:1,max:1};function Hr(e){return L(e,"argmin")}function Xo(e){return L(e,"argmax")}function Vv(e){return Y(e)&&X(Bee,e)}const jee=new Set(["count","valid","missing","distinct"]);function cp(e){return Y(e)&&jee.has(e)}function qee(e){return Y(e)&&ge(["min","max"],e)}const Wee=new Set(["count","sum","distinct","valid","missing"]),Hee=new Set(["mean","average","median","q1","q3","min","max"]);function rT(e){return wu(e)&&(e=_p(e,void 0)),`bin${P(e).map(t=>fp(e[t])?je(`_${t}_${js(e[t])}`):je(`_${t}_${e[t]}`)).join("")}`}function Oe(e){return e===!0||la(e)&&!e.binned}function _t(e){return e==="binned"||la(e)&&e.binned===!0}function la(e){return V(e)}function fp(e){return L(e,"param")}function QE(e){switch(e){case Rr:case Or:case Jr:case yn:case ur:case lr:case Vo:case eo:case Ho:case Go:case xn:return 6;case Yo:return 4;default:return 10}}function Qc(e){return L(e,"expr")}function St(e,{level:t}={level:0}){const n=P(e||{}),i={};for(const r of n)i[r]=t===0?$n(e[r]):St(e[r],{level:t-1});return i}function oT(e){const{anchor:t,frame:n,offset:i,orient:r,angle:o,limit:s,color:a,subtitleColor:u,subtitleFont:l,subt
13itleFontSize:c,subtitleFontStyle:f,subtitleFontWeight:d,subtitleLineHeight:h,subtitlePadding:g,...p}=e,m={...p,...a?{fill:a}:{}},y={...t?{anchor:t}:{},...n?{frame:n}:{},...i?{offset:i}:{},...r?{orient:r}:{},...o!==void 0?{angle:o}:{},...s!==void 0?{limit:s}:{}},x={...u?{subtitleColor:u}:{},...l?{subtitleFont:l}:{},...c?{subtitleFontSize:c}:{},...f?{subtitleFontStyle:f}:{},...d?{subtitleFontWeight:d}:{},...h?{subtitleLineHeight:h}:{},...g?{subtitlePadding:g}:{}},b=dc(e,["align","baseline","dx","dy","limit"]);return{titleMarkConfig:m,subtitleMarkConfig:b,nonMarkTitleProperties:y,subtitle:x}}function fo(e){return Y(e)||z(e)&&Y(e[0])}function ee(e){return L(e,"signal")}function ca(e){return L(e,"step")}function Gee(e){return z(e)?!1:L(e,"fields")&&!L(e,"data")}function Vee(e){return z(e)?!1:L(e,"fields")&&L(e,"data")}function Fr(e){return z(e)?!1:L(e,"field")&&L(e,"data")}const Yee={aria:1,description:1,ariaRole:1,ariaRoleDescription:1,blend:1,opacity:1,fill:1,fillOpacity:1,stroke:1,strokeCap:1,strokeWidth:1,strokeOpacity:1,strokeDash:1,strokeDashOffset:1,strokeJoin:1,strokeOffset:1,strokeMiterLimit:1,startAngle:1,endAngle:1,padAngle:1,innerRadius:1,outerRadius:1,size:1,shape:1,interpolate:1,tension:1,orient:1,align:1,baseline:1,text:1,dir:1,dx:1,dy:1,ellipsis:1,limit:1,radius:1,theta:1,angle:1,font:1,fontSize:1,fontWeight:1,fontStyle:1,lineBreak:1,lineHeight:1,cursor:1,href:1,tooltip:1,cornerRadius:1,cornerRadiusTopLeft:1,cornerRadiusTopRight:1,cornerRadiusBottomLeft:1,cornerRadiusBottomRight:1,aspect:1,width:1,height:1,url:1,smooth:1},Xee=P(Yee),Kee={arc:1,area:1,group:1,image:1,line:1,path:1,rect:1,rule:1,shape:1,symbol:1,text:1,trail:1},Z1=["cornerRadius","cornerRadiusTopLeft","cornerRadiusTopRight","cornerRadiusBottomLeft","cornerRadiusBottomRight"],Zee=" – ";function sT(e){const t=z(e.condition)?e.condition.map(JE):JE(e.condition);return{...$n(e),condition:t}}function $n(e){if(Qc(e)){const{expr:t,...n}=e;return{signal:t,...n}}return e}function JE(e){if(Qc(e)){const{expr:t,...n}=e;return{signal:t,...n}}return e}function Pe(e){if(Qc(e)){const{expr:t,...n}=e;return{signal:t,...n}}return ee(e)?e:e!==void 0?{value:e}:void 0}function Qee(e){return ee(e)?e.signal:j(e)}function ek(e){return ee(e)?e.signal:j(e.value)}function li(e){return ee(e)?e.signal:e==null?null:j(e)}function Jee(e,t,n){for(const i of n){const r=Ji(i,t.markDef,t.config);r!==void 0&&(e[i]=Pe(r))}return e}function aT(e){return[].concat(e.type,e.style??[])}function De(e,t,n,i={}){const{vgChannel:r,ignoreVgConfig:o}=i;return r&&L(t,r)?t[r]:t[e]!==void 0?t[e]:o&&(!r||r===e)?void 0:Ji(e,t,n,i)}function Ji(e,t,n,{vgChannel:i}={}){const r=Q1(e,t,n.style);return Ze(i?r:void 0,r,i?n[t.type][i]:void 0,n[t.type][e],i?n.mark[i]:n.mark[e])}function Q1(e,t,n){return uT(e,aT(t),n)}function uT(e,t,n){t=H(t);let i;for(const r of t){const o=n[r];L(o,e)&&(i=o[e])}return i}function lT(e,t){return H(e).reduce((n,i)=>(n.field.push(W(i,t)),n.order.push(i.sort??"ascending"),n),{field:[],order:[]})}function cT(e,t){const n=[...e];return t.forEach(i=>{for(const r of n)if(In(r,i))return;n.push(i)}),n}function fT(e,t){return In(e,t)||!t?e:e?[...H(e),...H(t)].join(", "):t}function dT(e,t){const n=e.value,i=t.value;if(n==null||i===null)return{explicit:e.explicit,value:null};if((fo(n)||ee(n))&&(fo(i)||ee(i)))return{explicit:e.explicit,value:fT(n,i)};if(fo(n)||ee(n))return{explicit:e.explicit,value:n};if(fo(i)||ee(i))return{explicit:e.explicit,value:i};if(!fo(n)&&!ee(n)&&!fo(i)&&!ee(i))return{explicit:e.explicit,value:cT(n,i)};throw new Error("It should never reach here")}function Yv(e){return`Invalid specification ${Ae(e)}. Make sure the specification includes at least one of the following properties: "mark", "layer", "facet", "hconcat", "vconcat", "concat", or "repeat".`}const ete='Autosize "fit" only works for single views and layered views.';function tk(e){return`${e=="width"?"Width":"Height"} "container" only works for single views and layered views.`}function nk(e){const t=e=="width"?"Width":"Height",n=e=="width"?"x":"y";return`${t} "container" only works well with autosize "fit" or "fit-${n}".`}function ik(e){return e?`Dropping "fit-${e}" because spec has discrete ${bn(e)}.`:'Dropping "fit" because spec has discrete size.'}function Xv(e){return`Unknown field for ${e}. Cannot calculate view size.`}function rk(e){return`Cannot project a selection on encoding channel "${e}", which has no field.`}function tte(e,t){return`Cannot project a selection on encoding channel "${e}" as it uses an aggregate function ("${t}").`}function nte(e){return`The "nearest" transform is not supported for ${e} marks.`}function hT(e){return`Selection not supported for ${e} yet.`}function ite(e){return`Cannot find a selection named "${e}".`}const rte="Scale bindings are currently only supported for scales with unbinned, continuous domains.",ote="Sequntial scales are deprecated. The available quantitative scale type values are linear, log, pow, sqrt, symlog, time and utc",ste="Legend bindings are only supported for selections over an individual field or encoding channel.";function ate(e){return`Lookups can only be performed on selection parameters. "${e}" is a variable parameter.`}function ute(e){return`Cannot define and lookup the "${e}" selection in the same view. Try moving the lookup into a second, layered view?`}const lte="The same selection must be used to override scale domains in a layered view.",cte='Interval selections should be initialized using "x", "y", "longitude", or "latitude" keys.';function fte(e){return`Unknown repeated value "${e}".`}function ok(e){return`The "columns" property cannot be used when "${e}" has nested row/column.`}const dte="Multiple timer selections in one unit spec are not supported. Ignoring all but the first.",Kv="Animation involving facet, layer, or concat is currently unsupported.";function hte(e){return`A "field" or "encoding" must be specified when using a selection as a scale domain. Using "field": ${j(e)}.`}function gte(e,t,n,i){return`${e.length?"Multiple ":"No "}matching ${j(t)} encoding found for selection ${j(n.param)}. Using "field": ${j(i)}.`}const pte="Axes cannot be shared in concatenated or repeated views yet (https://github.com/vega/vega-lite/issues/2415).";function mte(e){return`Unrecognized parse "${e}".`}function sk(e,t,n){return`An ancestor parsed field "${e}" as ${n} but a child wants to parse the field as ${t}.`}const yte="Attempt to add the same child twice.";
13function xte(e){return`Ignoring an invalid transform: ${Ae(e)}.`}const bte='If "from.fields" is not specified, "as" has to be a string that specifies the key to be used for the data from the secondary source.';function ak(e){return`Config.customFormatTypes is not true, thus custom format type and format for channel ${e} are dropped.`}function vte(e){const{parentProjection:t,projection:n}=e;return`Layer's shared projection ${Ae(t)} is overridden by a child projection ${Ae(n)}.`}const wte="Arc marks uses theta channel rather than angle, replacing angle with theta.";function _te(e){return`${e}Offset dropped because ${e} is continuous`}function Ste(e,t,n){return`Channel ${e} is a ${t}. Converted to {value: ${Ae(n)}}.`}function gT(e){return`Invalid field type "${e}".`}function Ete(e,t){return`Invalid field type "${e}" for aggregate: "${t}", using "quantitative" instead.`}function kte(e){return`Invalid aggregation operator "${e}".`}function pT(e,t){const{fill:n,stroke:i}=t;return`Dropping color ${e} as the plot also has ${n&&i?"fill and stroke":n?"fill":"stroke"}.`}function $te(e){return`Position range does not support relative band size for ${e}.`}function J1(e,t){return`Dropping ${Ae(e)} from channel "${t}" since it does not contain any data field, datum, value, or signal.`}const Ate="Line marks cannot encode size with a non-groupby field. You may want to use trail marks instead.";function dp(e,t,n){return`${e} dropped as it is incompatible with "${t}".`}function Cte(e){return`${e}-encoding is dropped as ${e} is not a valid encoding channel.`}function Mte(e){return`${e} encoding should be discrete (ordinal / nominal / binned).`}function Fte(e){return`${e} encoding should be discrete (ordinal / nominal / binned) or use a discretizing scale (e.g. threshold).`}function Dte(e){return`Facet encoding dropped as ${e.join(" and ")} ${e.length>1?"are":"is"} also specified.`}function t0(e,t){return`Using discrete channel "${e}" to encode "${t}" field can be misleading as it does not encode ${t==="ordinal"?"order":"magnitude"}.`}function Tte(e){return`The ${e} for range marks cannot be an expression`}function Nte(e,t){return`Line mark is for continuous lines and thus cannot be used with ${e&&t?"x2 and y2":e?"x2":"y2"}. We will use the rule mark (line segments) instead.`}function Rte(e,t){return`Specified orient "${e}" overridden with "${t}".`}function Ote(e){return`Cannot use the scale property "${e}" with non-color channel.`}function zte(e){return`Cannot use the relative band size with ${e} scale.`}function Pte(e){return`Using unaggregated domain with raw field has no effect (${Ae(e)}).`}function Lte(e){return`Unaggregated domain not applicable for "${e}" since it produces values outside the origin domain of the source data.`}function Ite(e){return`Unaggregated domain is currently unsupported for log scale (${Ae(e)}).`}function Bte(e){return`Cannot apply size to non-oriented mark "${e}".`}function Ute(e,t,n){return`Channel "${e}" does not work with "${t}" scale. We are using "${n}" scale instead.`}function jte(e,t){return`FieldDef does not work with "${e}" scale. We are using "${t}" scale instead.`}function mT(e,t,n){return`${n}-scale's "${t}" is dropped as it does not work with ${e} scale.`}function yT(e){return`The step for "${e}" is dropped because the ${e==="width"?"x":"y"} is continuous.`}function qte(e,t,n,i){return`Conflicting ${t.toString()} property "${e.toString()}" (${Ae(n)} and ${Ae(i)}). Using ${Ae(n)}.`}function Wte(e,t,n,i){return`Conflicting ${t.toString()} property "${e.toString()}" (${Ae(n)} and ${Ae(i)}). Using the union of the two domains.`}function Hte(e){return`Setting the scale to be independent for "${e}" means we also have to set the guide (axis or legend) to be independent.`}function Gte(e){return`Dropping sort property ${Ae(e)} as unioned domains only support boolean or op "count", "min", and "max".`}const uk="Domains that should be unioned has conflicting sort properties. Sort will be set to true.",Vte="Detected faceted independent scales that union domain of multiple fields from different data sources. We will use the first field. The result view size may be incorrect.",Yte="Detected faceted independent scales that union domain of the same fields from different source. We will assume that this is the same field from a different fork of the same data source. However, if this is not the case, the result view size may be incorrect.",Xte="Detected faceted independent scales that union domain of multiple fields from the same data source. We will use the first field. The result view size may be incorrect.";function Kte(e){return`Cannot stack "${e}" if there is already "${e}2".`}function Zte(e){return`Stack is applied to a non-linear scale (${e}).`}function Qte(e){return`Stacking is applied even though the aggregate function is non-summative ("${e}").`}function Ph(e,t){return`Invalid ${e}: ${Ae(t)}
13.`}function Jte(e){return`Dropping day from datetime ${Ae(e)} as day cannot be combined with other units.`}function ene(e,t){return`${t?"extent ":""}${t&&e?"and ":""}${e?"center ":""}${t&&e?"are ":"is "}not needed when data are aggregated.`}function tne(e,t,n){return`${e} is not usually used with ${t} for ${n}.`}function nne(e,t){return`Continuous axis should not have customized aggregation function ${e}; ${t} already agregates the axis.`}function lk(e){return`1D error band does not support ${e}.`}function xT(e){return`Channel ${e} is required for "binned" bin.`}function ine(e){return`Channel ${e} should not be used with "binned" bin.`}function rne(e){return`Domain for ${e} is required for threshold scale.`}const bT=f$(c$);let Ws=bT;function one(e){return Ws=e,Ws}function sne(){return Ws=bT,Ws}function Zv(...e){Ws.error(...e)}function I(...e){Ws.warn(...e)}function ane(...e){Ws.debug(...e)}function fa(e){if(e&&V(e)){for(const t of Jv)if(L(e,t))return!0}return!1}const vT=["january","february","march","april","may","june","july","august","september","october","november","december"],une=vT.map(e=>e.substr(0,3)),wT=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"],lne=wT.map(e=>e.substr(0,3));function cne(e){if(Lv(e)&&(e=+e),Ce(e))return e>4&&I(Ph("quarter",e)),e-1;throw new Error(Ph("quarter",e))}function fne(e){if(Lv(e)&&(e=+e),Ce(e))return e-1;{const t=e.toLowerCase(),n=vT.indexOf(t);if(n!==-1)return n;const i=t.substr(0,3),r=une.indexOf(i);if(r!==-1)return r;throw new Error(Ph("month",e))}}function dne(e){if(Lv(e)&&(e=+e),Ce(e))return e%7;{const t=e.toLowerCase(),n=wT.indexOf(t);if(n!==-1)return n;const i=t.substr(0,3),r=lne.indexOf(i);if(r!==-1)return r;throw new Error(Ph("day",e))}}function Qv(e,t){const n=[];if(t&&e.day!==void 0&&P(e).length>1&&(I(Jte(e)),e=se(e),delete e.day),e.year!==void 0?n.push(e.year):n.push(2012),e.month!==void 0){const i=t?fne(e.month):e.month;n.push(i)}else if(e.quarter!==void 0){const i=t?cne(e.quarter):e.quarter;n.push(Ce(i)?i*3:`${i}*3`)}else n.push(0);if(e.date!==void 0)n.push(e.date);else if(e.day!==void 0){const i=t?dne(e.day):e.day;n.push(Ce(i)?i+1:`${i}+1`)}else n.push(1);for(const i of["hours","minutes","seconds","milliseconds"]){const r=e[i];n.push(typeof r>"u"?0:r)}return n}function Hs(e){const n=Qv(e,!0).join(", ");return e.utc?`utc(${n})`:`datetime(${n})`}function hne(e){const n=Qv(e,!1).join(", ");return e.utc?`utc(${n})`:`datetime(${n})`}function gne(e){const t=Qv(e,!0);return e.utc?+new Date(Date.UTC(...t)):+new Date(...t)}const _T={year:1,quarter:1,month:1,week:1,day:1,dayofyear:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1},Jv=P(_T);function pne(e){return X(_T,e)}function da(e){return V(e)?e.binned:ST(e)}function ST(e){return e?.startsWith("binned")}function e2(e){return e.startsWith("utc")}function mne(e){return e.substring(3)}const yne={"year-month":"%b %Y ","year-month-date":"%b %d, %Y "};function hp(e){return Jv.filter(t=>kT(e,t))}function ET(e){const t=hp(e);return t[t.length-1]}function kT(e,t){const n=e.indexOf(t);return!(n<0||n>0&&t==="seconds"&&e.charAt(n-1)==="i"||e.length>n+3&&t==="day"&&e.charAt(n+3)==="o"||n>0&&t==="year"&&e.charAt(n-1)==="f")}function xne(e,t,{end:n}={end:!1}){const i=H5(t),r=e2(e)?"utc":"";function o(u){return u==="quarter"?`(${r}quarter(${i})-1)`:`${r}${u}(${i})`}let s;const a={};for(const u of Jv)kT(e,u)&&(a[u]=o(u),s=u);return n&&(a[s]+="+1"),hne(a)}function $T(e){if(!e)return;const t=hp(e);return`timeUnitSpecifier(${Ae(t)}, ${Ae(yne)})`}function bne(e,t,n){if(!e)return;const i=$T(e);return`${n||e2(e)?"utc":"time"}Format(${t}, ${i})`}function mt(e){if(!e)return;let t;return Y(e)?ST(e)?t={unit:e.substring(6),binned:!0}:t={unit:e}:V(e)&&(t={...e,...e.unit?{unit:e.unit}:{}}),e2(t.unit)&&(t.utc=!0,t.unit=mne(t.unit)),t}function vne(e){const{utc:t,...n}=mt(e);return n.unit?(t?"utc":"")+P(n).map(i=>je(`${i==="unit"?"":`_${i}_`}${n[i]}`)).join(""):`${t?"utc":""}timeunit${P(n).map(i=>je(`_${i}_${n[i]}`)).join("")}`}function AT(e,t=n=>n){const n=mt(e),i=ET(n.unit);if(i&&i!=="day"){const r={year:2001,month:1,date:1,hours:0,minutes:0,seconds:0,milliseconds:0},{step:o,part:s}=CT(i,n.step),a={...r,[s]:+r[s]+o};return`${t(Hs(a))} - ${t(Hs(r))}`}}const wne={year:1,month:1,date:1,hours:1,minutes:1,seconds:1,milliseconds:1};function _ne(e){return X(wne,e)}function CT(e,t=1){if(_ne(e))return{part:e,step:t};switch(e){case"day":case"dayofyear":return{part:"date",step:t};case"quarter":return{part:"month",step:t*3};case"week":return{part:"date",step:t*7}}}function Sne(e){return L(e,"param")}function t2(e){return!!e?.field&&e.equal!==void 0}function n2(e){return!!e?.field&&e.lt!==void 0}function i2(e){return!!e?.field&&e.lte!==void 0}function r2(e){return!!e?.field&&e.gt!==void 0}function o2(e){return!!e?.field&&e.gte!==void 0}function s2(e){if(e?.field){if(z(e.range)&&e.range.length===2)return!0;
13if(ee(e.range))return!0}return!1}function a2(e){return!!e?.field&&(z(e.oneOf)||z(e.in))}function Ene(e){return!!e?.field&&e.valid!==void 0}function MT(e){return a2(e)||t2(e)||s2(e)||n2(e)||r2(e)||i2(e)||o2(e)}function Ti(e,t){return Sp(e,{timeUnit:t,wrapTime:!0})}function kne(e,t){return e.map(n=>Ti(n,t))}function FT(e,t=!0){const{field:n}=e,i=mt(e.timeUnit),{unit:r,binned:o}=i||{},s=W(e,{expr:"datum"}),a=r?`time(${o?s:xne(r,n)})`:s;if(t2(e))return`${a}===${Ti(e.equal,r)}`;if(n2(e)){const u=e.lt;return`${a}<${Ti(u,r)}`}else if(r2(e)){const u=e.gt;return`${a}>${Ti(u,r)}`}else if(i2(e)){const u=e.lte;return`${a}<=${Ti(u,r)}`}else if(o2(e)){const u=e.gte;return`${a}>=${Ti(u,r)}`}else{if(a2(e))return`indexof([${kne(e.oneOf,r).join(",")}], ${a}) !== -1`;if(Ene(e))return gp(a,e.valid);if(s2(e)){const{range:u}=St(e),l=ee(u)?{signal:`${u.signal}[0]`}:u[0],c=ee(u)?{signal:`${u.signal}[1]`}:u[1];if(l!==null&&c!==null&&t)return`inrange(${a}, [${Ti(l,r)}, ${Ti(c,r)}])`;const f=[];return l!==null&&f.push(`${a} >= ${Ti(l,r)}`),c!==null&&f.push(`${a} <= ${Ti(c,r)}`),f.length>0?f.join(" && "):"true"}}throw new Error(`Invalid field predicate: ${Ae(e)}`)}function gp(e,t=!0){return t?`isValid(${e}) && isFinite(+${e})`:`!isValid(${e}) || !isFinite(+${e})`}function $ne(e){return MT(e)&&e.timeUnit?{...e,timeUnit:mt(e.timeUnit)}:e}const Jc={quantitative:"quantitative",ordinal:"ordinal",temporal:"temporal",nominal:"nominal",geojson:"geojson"};function Ane(e){return e==="quantitative"||e==="temporal"}function DT(e){return e==="ordinal"||e==="nominal"}const Gs=Jc.quantitative,u2=Jc.ordinal,cu=Jc.temporal,l2=Jc.nominal,Ou=Jc.geojson;function Cne(e){if(e)switch(e=e.toLowerCase(),e){case"q":case Gs:return"quantitative";case"t":case cu:return"temporal";case"o":case u2:return"ordinal";case"n":case l2:return"nominal";case Ou:return"geojson"}}const Et={LINEAR:"linear",LOG:"log",POW:"pow",SQRT:"sqrt",TIME:"time",UTC:"utc",POINT:"point",BAND:"band"},ey={linear:"numeric",log:"numeric",pow:"numeric",sqrt:"numeric",symlog:"numeric",identity:"numeric",sequential:"numeric",time:"time",utc:"time",ordinal:"ordinal","bin-ordinal":"bin-ordinal",point:"ordinal-position",band:"ordinal-position",quantile:"discretizing",quantize:"discretizing",threshold:"discretizing"};function Mne(e,t){const n=ey[e],i=ey[t];return n===i||n==="ordinal-position"&&i==="time"||i==="ordinal-position"&&n==="time"}const Fne={linear:0,log:1,pow:1,sqrt:1,symlog:1,identity:1,sequential:1,time:0,utc:0,point:10,band:11,ordinal:0,"bin-ordinal":0,quantile:0,quantize:0,threshold:0};function ck(e){return Fne[e]}const TT=new Set(["linear","log","pow","sqrt","symlog"]),NT=new Set([...TT,"time","utc"]);function RT(e){return TT.has(e)}const OT=new Set(["quantile","quantize","threshold"]),Dne=new Set([...NT,...OT,"sequential","identity"]),Tne=new Set(["ordinal","bin-ordinal","point","band"]);function yt(e){return Tne.has(e)}function yi(e){return Dne.has(e)}function Ii(e){return NT.has(e)}function fu(e){return OT.has(e)}const Nne={pointPadding:.5,barBandPaddingInner:.1,rectBandPaddingInner:0,tickBandPaddingInner:.25,bandWithNestedOffsetPaddingInner:.2,bandWithNestedOffsetPaddingOuter:.2,minBandSize:2,minFontSize:8,maxFontSize:40,minOpacity:.3,maxOpacity:.8,minSize:4,minStrokeWidth:1,maxStrokeWidth:4,quantileCount:4,quantizeCount:4,zero:!0,framesPerSecond:2,animationDuration:5};function Rne(e){return!Y(e)&&L(e,"name")}function zT(e){return L(e,"param")}function One(e){return L(e,"unionWith")}function zne(e){return V(e)&&"field"in e}const Pne={type:1,domain:1,domainMax:1,domainMin:1,domainMid:1,domainRaw:1,align:1,range:1,rangeMax:1,rangeMin:1,scheme:1,bins:1,reverse:1,round:1,clamp:1,nice:1,base:1,exponent:1,constant:1,interpolate:1,zero:1,padding:1,paddingInner:1,paddingOuter:1},{type:Yle,domain:Xle,range:Kle,rangeMax:Zle,rangeMin:Qle,scheme:Jle,...Lne}=Pne,Ine=P(Lne);function ty(e,t){switch(t){case"type":case"domain":case"reverse":case"range":return!0;case"scheme":case"interpolate":return!["point","band","identity"].includes(e);case"bins":return!["point","band","identity","ordinal"].includes(e);case"round":return Ii(e)||e==="band"||e==="point";case"padding":case"rangeMin":case"rangeMax":return Ii(e)||["point","band"].includes(e);case"paddingOuter":case"align":return["point","band"].includes(e);case"paddingInner":return e==="band";case"domainMax":case"domainMid":case"domainMin":case"domainRaw":case"clamp":return Ii(e);case"nice":return Ii(e)||e==="quantize"||e==="threshold";case"exponent":return e==="pow";case"base":return e==="log";case"constant":return e==="symlog";case"zero":return yi(e)&&!ge(["log","time","utc","threshold","quantile"],e)}}function PT(e,t){switch(t){case"interpolate":case"scheme":case"domainMid":return Ba(e)?void 0:Ote(t);case"align":case"type":case"bins":case"domain":case"domainMax":case"domainMin":case"domainRaw":case"range":case"base":case"exponent":case"constant":case"nice":case"padding":case"paddingInner":case"paddingOuter":case"rangeMax":case"rangeMin":case"reverse":case"round":case"clamp":case"zero":return}}function Bne(e,t){return ge([u2,l2],t)?e===void 0||yt(e):t===cu?ge([Et.TIME,Et.UTC,void 0],e):t===Gs?RT(e)||fu(e)||e===void 0:!0}function Une(e,t,n=!1){if(!fr(e))return!1;switch(e){case Ie:case bt:case qo:case Ru:case Zn:case ki:return Ii(t)||t==="band"?!0:t==="point"?!n:!1;case Wo:return ge(["linear","band"],t);case Jr:case Vo:case eo:case Ho:case Go:case aa:return Ii(t)||fu(t)||ge(["band","point","ordinal"],t);case yn:case ur:case lr:return t!=="band";case Yo:case xn:return t==="ordinal"||fu(t)}}function jne(e){return V(e)&&"value"in e}const ln={arc:"arc",area:"area",bar:"bar",image:"image",line:"line",point:"point",rect:"rect",rule:"rule",text:"text",tick:"tick",trail:"trail",circle:"circle",square:"square",geoshape:"geoshape"},LT=ln.arc,pp=ln.area,mp=ln.bar,qne=ln.image,yp=ln.line,xp=ln.point,Wne=ln.rect,Lh=ln.rule,IT=ln.text,c2=ln.tick,Hne=ln.trail,f2=ln.circle,d2=ln.square,BT=ln.geoshape;function Ko(e){return["line","area","trail"].includes(e)}function pc(e){return["rect","bar","image","arc","tick"].includes(e)}const Gne=new Set(P(ln));function er(e){return L(e,"type")}const Vne=["stroke","strokeWidth","strokeDash","strokeDashOffset","strokeOpacity","strokeJoin","strokeMiterLimit"],Yne=["fill","fillOpacity"],Xne=[...Vne,...Yne],Kne={color:1,filled:1,invalid:1,order:1,radius2:1,theta2:1,timeUnitBandSize:1,timeUnitBandPosition:1},fk=P(Kne),n0=["binSpacing","continuousBandSize","discreteBandSize","minBandSize"],Zne={area:["line","point"],bar:n0,rect:n0,line:["point"],tick:["bandSize","thickness",...n0]}
13,Qne={color:"#4c78a8",invalid:"break-paths-show-path-domains",timeUnitBandSize:1},Jne={mark:1,arc:1,area:1,bar:1,circle:1,image:1,line:1,point:1,rect:1,rule:1,square:1,text:1,tick:1,trail:1,geoshape:1},UT=P(Jne);function Vs(e){return L(e,"band")}const eie={horizontal:["cornerRadiusTopRight","cornerRadiusBottomRight"],vertical:["cornerRadiusTopLeft","cornerRadiusTopRight"]},tie=5,h2={binSpacing:0,continuousBandSize:tie,minBandSize:.25,timeUnitBandPosition:.5},nie={...h2,binSpacing:1},iie={...h2,thickness:1};function rie(e){return er(e)?e.type:e}function jT(e,{isPath:t}){return e===void 0||e==="break-paths-show-path-domains"?t?"break-paths-show-domains":"filter":e===null?"show":e}function g2({markDef:e,config:t,scaleChannel:n,scaleType:i,isCountAggregate:r}){if(!i||!yi(i)||r)return"always-valid";const o=jT(De("invalid",e,t),{isPath:Ko(e.type)});return t.scale?.invalid?.[n]!==void 0?"show":o}function oie(e){return e==="break-paths-filter-domains"||e==="break-paths-show-domains"}function qT({scaleName:e,scale:t,mode:n}){const i=`domain('${e}')`;if(!t||!e)return;const r=`${i}[0]`,o=`peek(${i})`,s=t.domainHasZero();return s==="definitely"?{scale:e,value:0}:s==="maybe"?{signal:`scale('${e}', inrange(0, ${i}) ? 0 : ${n==="zeroOrMin"?r:o})`}:{signal:`scale('${e}', ${n==="zeroOrMin"?r:o})`}}function WT({scaleChannel:e,channelDef:t,scale:n,scaleName:i,markDef:r,config:o}){const s=n?.get("type"),a=bi(t),u=cp(a?.aggregate),l=g2({scaleChannel:e,markDef:r,config:o,scaleType:s,isCountAggregate:u});if(a&&l==="show"){const c=o.scale.invalid?.[e]??"zero-or-min";return{test:gp(W(a,{expr:"datum"}),!1),...sie(c,n,i)}}}function sie(e,t,n){if(jne(e)){const{value:i}=e;return ee(i)?{signal:i.signal}:{value:i}}return qT({scale:t,scaleName:n,mode:"zeroOrMin"})}function p2(e){const{channel:t,channelDef:n,markDef:i,scale:r,scaleName:o,config:s}=e,a=ua(t),u=m2(e),l=WT({scaleChannel:a,channelDef:n,scale:r,scaleName:o,markDef:i,config:s});return l!==void 0?[l,u]:u}function aie(e){const{datum:t}=e;return fa(t)?Hs(t):`${Ae(t)}
13`}function ks(e,t,n,i){const r={};if(t&&(r.scale=t),dr(e)){const{datum:o}=e;fa(o)?r.signal=Hs(o):ee(o)?r.signal=o.signal:Qc(o)?r.signal=o.expr:r.value=o}else r.field=W(e,n);if(i){const{offset:o,band:s}=i;o&&(r.offset=o),s&&(r.band=s)}return r}function Ih({scaleName:e,fieldOrDatumDef:t,fieldOrDatumDef2:n,offset:i,startSuffix:r,endSuffix:o="end",bandPosition:s=.5}){const a=!ee(s)&&0<s&&s<1?"datum":void 0,u=W(t,{expr:a,suffix:r}),l=n!==void 0?W(n,{expr:a}):W(t,{suffix:o,expr:a}),c={};if(s===0||s===1){c.scale=e;const f=s===0?u:l;c.field=f}else{const f=ee(s)?`(1-${s.signal}) * ${u} + ${s.signal} * ${l}`:`${1-s} * ${u} + ${s} * ${l}`;c.signal=`scale("${e}", ${f})`}return i&&(c.offset=i),c}function uie({scaleName:e,fieldDef:t}){const n=W(t,{expr:"datum"}),i=W(t,{expr:"datum",suffix:"end"});return`abs(scale("${e}", ${i}) - scale("${e}", ${n}))`}function m2({channel:e,channelDef:t,channel2Def:n,markDef:i,config:r,scaleName:o,scale:s,stack:a,offset:u,defaultRef:l,bandPosition:c}){if(t){if(ae(t)){const f=s?.get("type");if(an(t)){c??=Ro({fieldDef:t,fieldDef2:n,markDef:i,config:r});const{bin:d,timeUnit:h,type:g}=t;if(Oe(d)||c&&h&&g===cu)return a?.impute?ks(t,o,{binSuffix:"mid"},{offset:u}):c&&!yt(f)?Ih({scaleName:o,fieldOrDatumDef:t,bandPosition:c,offset:u}):ks(t,o,of(t,e)?{binSuffix:"range"}:{},{offset:u});if(_t(d)){if(U(n))return Ih({scaleName:o,fieldOrDatumDef:t,fieldOrDatumDef2:n,bandPosition:c,offset:u});I(xT(e===Ie?Ei:ar))}}return ks(t,o,yt(f)?{binSuffix:"range"}:{},{offset:u,band:f==="band"?c??t.bandPosition??.5:void 0})}else if(xi(t)){const f=t.value,d=u?{offset:u}:{};return{...jl(e,f),...d}}}return ce(l)&&(l=l()),l&&{...l,...u?{offset:u}:{}}}function jl(e,t){return ge(["x","x2"],e)&&t==="width"?{field:{group:"width"}}:ge(["y","y2"],e)&&t==="height"?{field:{group:"height"}}:Pe(t)}function Ys(e){return e&&e!=="number"&&e!=="time"}function HT(e,t,n){return`${e}(${t}${n?`, ${Ae(n)}`:""})`}function y2({fieldOrDatumDef:e,format:t,formatType:n,expr:i,normalizeStack:r,config:o}){if(Ys(n))return ci({fieldOrDatumDef:e,format:t,formatType:n,expr:i,config:o});const s=GT(e,i,r),a=du(e);if(t===void 0&&n===void 0&&o.customFormatTypes){if(a==="quantitative"){if(r&&o.normalizedNumberFormatType)return ci({fieldOrDatumDef:e,format:o.normalizedNumberFormat,formatType:o.normalizedNumberFormatType,expr:i,config:o});if(o.numberFormatType)return ci({fieldOrDatumDef:e,format:o.numberFormat,formatType:o.numberFormatType,expr:i,config:o})}if(a==="temporal"&&o.timeFormatType&&U(e)&&e.timeUnit===void 0)return ci({fieldOrDatumDef:e,format:o.timeFormat,formatType:o.timeFormatType,expr:i,config:o})}function u(l){return U(l)?mt(l.timeUnit)||{}:{unit:void 0,utc:void 0}}if(gu(e)){const{unit:l,utc:c}=u(e),f=cie({field:s,timeUnit:l,format:t,formatType:o.timeFormatType,rawTimeFormat:o.timeFormat,isUTCScale:c||ha(e)&&e.scale?.type===Et.UTC});return f?{signal:f}:void 0}if(t=ny({type:a,specifiedFormat:t,config:o,normalizeStack:r}),U(e)&&Oe(e.bin)){const l=W(e,{expr:i,binSuffix:"end"});return{signal:ef(s,l,t,n,o)}}else return t||du(e)==="quantitative"?{signal:`${XT(s,t)}`}:{signal:`isValid(${s}) ? ${s} : ""+${s}`}}function GT(e,t,n){return U(e)?n?`${W(e,{expr:t,suffix:"end"})}-${W(e,{expr:t,suffix:"start"})}`:W(e,{expr:t}):aie(e)}function ci({fieldOrDatumDef:e,format:t,formatType:n,expr:i,normalizeStack:r,config:o,field:s}){if(s??=GT(e,i,r),s!=="datum.value"&&U(e)&&Oe(e.bin)){const a=W(e,{expr:i,binSuffix:"end"});return{signal:ef(s,a,t,n,o)}}return{signal:HT(n,s,t)}}function VT(e,t,n,i,r,o){if(!(Y(i)&&Ys(i))&&!(n===void 0&&i===void 0&&r.customFormatTypes&&du(e)==="quantitative"&&(r.normalizedNumberFormatType&&hu(e)&&e.stack==="normalize"||r.numberFormatType))){if(hu(e)&&e.stack==="normalize"&&r.normalizedNumberFormat)return ny({type:"quantitative",config:r,normalizeStack:!0});if(gu(e)){const s=U(e)?mt(e.timeUnit)?.unit:void 0;return s===void 0&&r.customFormatTypes&&r.timeFormatType?void 0:lie({specifiedFormat:n,timeUnit:s,config:r,omitTimeFormatConfig:o})}return ny({type:t,specifiedFormat:n,config:r})}}function YT(e,t,n){if(e&&(ee(e)||e==="number"||e==="time"))return e;if(gu(t)&&n!=="time"&&n!=="utc")return U(t)&&mt(t?.timeUnit)?.utc?"utc":"time"}function ny({type:e,specifiedFormat:t,config:n,normalizeStack:i}){if(Y(t))return t;if(e===Gs)return i?n.normalizedNumberFormat:n.numberFormat}function lie({specifiedFormat:e,timeUnit:t,config:n,omitTimeFormatConfig:i}){return e||(t?{signal:$T(t)}:i?void 0:n.timeFormat)}function XT(e,t){return`format(${e}, "${t||""}")`}function dk(e,t,n,i){return Ys(n)?HT(n,e,t):XT(e,(Y(t)?t:void 0)??i.numberFormat)}function ef(e,t,n,i,r){if(n===void 0&&i===void 0&&r.customFormatTypes&&r.numberFormatType)return ef(e,t,r.numberFormat,r.numberFormatType,r);const o=dk(e,n,i,r),s=dk(t,n,i,r);return`${gp(e,!1)} ? "null" : ${o} + "${Zee}" + ${s}`}function cie({field:e,timeUnit:t,format:n,formatType:i,rawTimeFormat:r,isUTCScale:o}){return!t||n?!t&&i?`${i}(${e}, ${Ae(n)})`:(n=Y(n)?n:r,`${o?"utc":"time"}Format(${e}, ${Ae(n)})`):bne(t,e,o)}const bp="min",fie={x:1,y:1,color:1,fill:1,stroke:1,strokeWidth:1,size:1,shape:1,fillOpacity:1,strokeOpacity:1,opacity:1,text:1};function hk(e){return X(fie,e)}function die(e){return L(e,"encoding")}function zr(e){return e&&(e.op==="count"||L(e,"field"))}function KT(e){return e&&z(e)}function tf(e){return L(e,"row")||L(e,"column")}function x2(e){return L(e,"header")}function vp(e){return L(e,"facet")}function hie(e){return L(e,"param")}function gie(e){return!Y(e)&&L(e,"repeat")}function gk(e){const{field:t,timeUnit:n,bin:i,aggregate:r}=e;return{...n?{timeUnit:n}:{},...i?{bin:i}:{},...r?{aggregate:r}:{},field:t}}function b2(e){return L(e,"sort")}function Ro({fieldDef:e,fieldDef2:t,markDef:n,config:i}){if(ae(e)&&e.bandPosition!==void 0)return e.bandPosition;if(U(e)){const{timeUnit:r,bin:o}=e;if(r&&!t)return Ji("timeUnitBandPosition",n,i);if(Oe(o))return .5}}function ZT({channel:e,fieldDef:t,fieldDef2:n,markDef:i,config:r,scaleType:o,useVlSizeChannel:s}){const a=bn(e),u=De(s?"size":a,i,r,{vgChannel:a});if(u!==void 0)return u;if(U(t)){const{timeUnit:l,bin:c}=t;if(l&&!n)return{band:Ji("timeUnitBandSize",i,r)};if(Oe(c)&&!yt(o))return{band:1}}if(pc(i.type))return o?yt(o)?r[i.type]?.discreteBandSize||{band:1}:r[i.type]?.continuousBandSize:r[i.type]?.discreteBandSize}function QT(e,t,n,i){return Oe(e.bin)||e.timeUnit&&an(e)&&e.type==="temporal"?Ro({fieldDef:e,fieldDef2:t,markDef:n,config:i})!==void 0:!1}function JT(e){return L(e,"sort")&&!L(e,"field")}function nf(e){return L(e,"condition")}function wp(e){const t=e?.condition;return!!t&&!z(t)&&U(t)}function rf(e){const t=e?.condition;return!!t&&!z(t)&&ae(t)}function pie(e){const t=e?.condition;return!!t&&(z(t)||xi(t))}function U(e){return L(e,"field")||e?.aggregate==="count"}function du(e){return e?.type}function dr(e){return L(e,"datum")}function bo(e){return an(e)&&!Uh(e)||Bh(e)}function pk(e){return an(e)&&e.type==="quantitative"&&!e.bin||Bh(e)}function Bh(e){return dr(e)&&Ce(e.datum)}function ae(e){return U(e)||dr(e)}function an(e){return e&&(L(e,"field")||e.aggregate==="count")&&L(e,"type")}function xi(e){return L(e,"value")}function ha(e){return L(e,"scale")||L(e,"sort")}function hu(e){return L(e,"axis")||L(e,"stack")||L(e,"impute")}function eN(e){return L(e,"legend")}function tN(e){return L(e,"format")||L(e,"formatType")}function mie(e){return Wn(e,["legend","axis","header","scale"])}function yie(e){return L(e,"op")}function W(e,t={}){let n=e.field;const i=t.prefix;let r=t.suffix,o="";if(bie(e))n=vee("count");else{let s;if(!t.nofn)if(yie(e))s=e.op;else{const{bin:a,aggregate:u,timeUnit:l}=e;Oe(a)?(s=rT(a),r=(t.binSuffix??"")+(t.suffix??"")):u?Xo(u)?(o=`["${n}"]`,n=`argmax_${u.argmax}`):Hr(u)?(o=`["${n}"]`,n=`argmin_${u.argmin}`):s=String(u):l&&!da(l)&&(s=vne(l),r=(!["range","mid"].includes(t.binSuffix)&&t.binSuffix||"")+(t.suffix??""))}s&&(n=n?`${s}_${n}`:s)}return r&&(n=`${n}_${r}`),i&&(n=`${i}_${n}`),t.forAs?Yc(n):t.expr?mee(n,t.expr)+o:mi(n)+o}function Uh(e){switch(e.type){case"nominal":case"ordinal":case"geojson":return!0;case"quantitative":return U(e)&&!!e.bin;case"temporal":return!1}throw new Error(gT(e.type))}function xie(e){return ha(e)&&fu(e.scale?.type)}function bie(e){return e.aggregate==="count"}function vie(e,t){const{field:n,bin:i,timeUnit:r,aggregate:o}=e;if(o==="count")return t.countTitle;if(Oe(i))return`${n} (binned)`;if(r&&!da(r)){const s=mt(r)?.unit;if(s)return`${n} (${hp(s).join("-")})`}else if(o)return Xo(o)?`${n} for max ${o.argmax}`:Hr(o)?`${n} for min ${o.argmin}`:`${ip(o)} of ${n}`;return n}function wie(e){const{aggregate:t,bin:n,timeUnit:i,field:r}=e;if(Xo(t))return`${r} for argmax(${t.argmax})`;if(Hr(t))return`${r} for argmin(${t.argmin})`;const o=i&&!da(i)?mt(i):void 0,s=t||o?.unit||o?.maxbins&&"timeunit"||Oe(n)&&"bin";return s?`${s.toUpperCase()}(${r})`:r}const nN=(e,t)=>{switch(t.fieldTitle){case"plain":return e.field;case"functional":return wie(e);default:return vie(e,t)}};let iN=nN;function rN(e){iN=e}function _ie(){rN(nN)}function Ua(e,t,{allowDisabling:n,includeDefault:i=!0}){const r=v2(e)?.title;if(!U(e))return r??e.title;const o=e,s=i?w2(o,t):void 0;return n?Ze(r,o.title,s):r??o.title??s}function v2(e){if(hu(e)&&e.axis)return e.axis;
13if(eN(e)&&e.legend)return e.legend;if(x2(e)&&e.header)return e.header}function w2(e,t){return iN(e,t)}function jh(e){if(tN(e)){const{format:t,formatType:n}=e;return{format:t,formatType:n}}else{const t=v2(e)??{},{format:n,formatType:i}=t;return{format:n,formatType:i}}}function Sie(e,t){switch(t){case"latitude":case"longitude":return"quantitative";case"row":case"column":case"facet":case"shape":case"strokeDash":return"nominal";case"order":return"ordinal"}if(b2(e)&&z(e.sort))return"ordinal";const{aggregate:n,bin:i,timeUnit:r}=e;if(r)return"temporal";if(i||n&&!Xo(n)&&!Hr(n))return"quantitative";if(ha(e)&&e.scale?.type)switch(ey[e.scale.type]){case"numeric":case"discretizing":return"quantitative";case"time":return"temporal"}return"nominal"}function bi(e){if(U(e))return e;if(wp(e))return e.condition}function et(e){if(ae(e))return e;if(rf(e))return e.condition}function oN(e,t,n,i={}){if(Y(e)||Ce(e)||wu(e)){const r=Y(e)?"string":Ce(e)?"number":"boolean";return I(Ste(t,r,e)),{value:e}}return ae(e)?qh(e,t,n,i):rf(e)?{...e,condition:qh(e.condition,t,n,i)}:e}function qh(e,t,n,i){if(tN(e)){const{format:r,formatType:o,...s}=e;if(Ys(o)&&!n.customFormatTypes)return I(ak(t)),qh(s,t,n,i)}else{const r=hu(e)?"axis":eN(e)?"legend":x2(e)?"header":null;if(r&&e[r]){const{format:o,formatType:s,...a}=e[r];if(Ys(s)&&!n.customFormatTypes)return I(ak(t)),qh({...e,[r]:a},t,n,i)}}return U(e)?_2(e,t,i):Eie(e)}function Eie(e){let t=e.type;if(t)return e;const{datum:n}=e;return t=Ce(n)?"quantitative":Y(n)?"nominal":fa(n)?"temporal":void 0,{...e,type:t}}function _2(e,t,{compositeMark:n=!1}={}){const{aggregate:i,timeUnit:r,bin:o,field:s}=e,a={...e};if(!n&&i&&!Vv(i)&&!Xo(i)&&!Hr(i)&&(I(kte(i)),delete a.aggregate),r&&(a.timeUnit=mt(r)),s&&(a.field=`${s}`),Oe(o)&&(a.bin=_p(o,t)),_t(o)&&!Ke(t)&&I(ine(t)),an(a)){const{type:u}=a,l=Cne(u);u!==l&&(a.type=l),u!=="quantitative"&&cp(i)&&(I(Ete(u,i)),a.type="quantitative")}else if(!Q5(t)){const u=Sie(a,t);a.type=u}if(an(a)){const{compatible:u,warning:l}=kie(a,t)||{};u===!1&&I(l)}if(b2(a)&&Y(a.sort)){const{sort:u}=a;if(hk(u))return{...a,sort:{encoding:u}};const l=u.substring(1);if(u.charAt(0)==="-"&&hk(l))return{...a,sort:{encoding:l,order:"descending"}}}if(x2(a)){const{header:u}=a;if(u){const{orient:l,...c}=u;if(l)return{...a,header:{...c,labelOrient:u.labelOrient||l,titleOrient:u.titleOrient||l}}}}return a}function _p(e,t){return wu(e)?{maxbins:QE(t)}:e==="binned"?{binned:!0}:!e.maxbins&&!e.step?{...e,maxbins:QE(t)}:e}const $a={compatible:!0};function kie(e,t){const n=e.type;if(n==="geojson"&&t!=="shape")return{compatible:!1,warning:`Channel ${t} should not be used with a geojson data.`};switch(t){case Rr:case Or:case rp:return Uh(e)?$a:{compatible:!1,warning:Mte(t)};case Ie:case bt:case qo:case Ru:case yn:case ur:case lr:case Xc:case Kc:case op:case qs:case sp:case ap:case aa:case Zn:case ki:case up:return $a;case Ai:case Xn:case $i:case Ci:return n!==Gs?{compatible:!1,warning:`Channel ${t} should be used with a quantitative field only, not ${e.type} field.`}:$a;case eo:case Ho:case Go:case Vo:case Jr:case Qr:case Zr:case Ei:case ar:case Wo:return n==="nominal"&&!e.sort?{compatible:!1,warning:`Channel ${t} should not be used with an unsorted discrete field.`}:$a;case xn:case Yo:return!Uh(e)&&!xie(e)?{compatible:!1,warning:Fte(t)}:$a;case lu:return e.type==="nominal"&&!("sort"in e)?{compatible:!1,warning:"Channel order is inappropriate for nominal field, which has no inherent order."}:$a}}function gu(e){const{formatType:t}=jh(e);return t==="time"||!t&&$ie(e)}function $ie(e){return e&&(e.type==="temporal"||U(e)&&!!e.timeUnit)}function Sp(e,{timeUnit:t,type:n,wrapTime:i,undefinedIfExprNotRequired:r}){const o=t&&mt(t)?.unit;let s=o||n==="temporal",a;return Qc(e)?a=e.expr:ee(e)?a=e.signal:fa(e)?(s=!0,a=Hs(e)):(Y(e)||Ce(e))&&s&&(a=`datetime(${Ae(e)})`,pne(o)&&(Ce(e)&&e<1e4||Y(e)&&isNaN(Date.parse(e)))&&(a=Hs({[o]:e}))),a?i&&s?`time(${a})`:a:r?void 0:Ae(e)}function sN(e,t){const{type:n}=e;return t.map(i=>{const r=U(e)&&!da(e.timeUnit)?e.timeUnit:void 0,o=Sp(i,{timeUnit:r,type:n,undefinedIfExprNotRequired:!0});return o!==void 0?{signal:o}:i})}function of(e,t){return Oe(e.bin)?fr(t)&&["ordinal","nominal"].includes(e.type):(console.warn("Only call this method for binned field defs."),!1)}const mk={labelAlign:{part:"labels",vgProp:"align"},labelBaseline:{part:"labels",vgProp:"baseline"},labelColor:{part:"labels",vgProp:"fill"},labelFont:{part:"labels",vgProp:"font"},labelFontSize:{part:"labels",vgProp:"fontSize"},labelFontStyle:{part:"labels",vgProp:"fontStyle"},labelFontWeight:{part:"labels",vgProp:"fontWeight"},labelOpacity:{part:"labels",vgProp:"opacity"},labelOffset:null,labelPadding:null,gridColor:{part:"grid",vgProp:"stroke"},gridDash:{part:"grid",vgProp:"strokeDash"},gridDashOffset:{part:"grid",vgProp:"strokeDashOffset"},gridOpacity:{part:"grid",vgProp:"opacity"},gridWidth:{part:"grid",vgProp:"strokeWidth"},tickColor:{part:"ticks",vgProp:"stroke"},tickDash:{part:"ticks",vgProp:"strokeDash"},tickDashOffset:{part:"ticks",vgProp:"strokeDashOffset"},tickOpacity:{part:"ticks",vgProp:"opacity"},tickSize:null,tickWidth:{part:"ticks",vgProp:"strokeWidth"}};function sf(e){return e?.condition}const aN=["domain","grid","labels","ticks","title"],Aie={grid:"grid",gridCap:"grid",gridColor:"grid",gridDash:"grid",gridDashOffset:"grid",gridOpacity:"grid",gridScale:"grid",gridWidth:"grid",orient:"main",bandPosition:"both",aria:"main",description:"main",domain:"main",domainCap:"main",domainColor:"main",domainDash:"main",domainDashOffset:"main",domainOpacity:"main",domainWidth:"main",format:"main",formatType:"main",labelAlign:"main",labelAngle:"main",labelBaseline:"main",labelBound:"main",labelColor:"main",labelFlush:"main",labelFlushOffset:"main",labelFont:"main",labelFontSize:"main",labelFontStyle:"main",labelFontWeight:"main",labelLimit:"main",labelLineHeight:"main",labelOffset:"main",labelOpacity:"main",labelOverlap:"main",labelPadding:"main",labels:"main",labelSeparation:"main",maxExtent:"main",minExtent:"main",offset:"both",position:"main",tickCap:"main",tickColor:"main",tickDash:"main",tickDashOffset:"main",tickMinStep:"both",tickOffset:"both",tickOpacity:"main",tickRound:"both",ticks:"main",tickSize:"main",tickWidth:"both",title:"main",titleAlign:"main",titleAnchor:"main",titleAngle:"main",titleBaseline:"main",titleColor:"main",titleFont:"main",titleFontSize:"main",titleFontStyle:"main",titleFontWeight:"main",titleLimit:"main",titleLineHeight:"main",titleOpacity:"main",titlePadding:"main",titleX:"main",titleY:"main",encode:"both",scale:"both",tickBand:"both",tickCount:"both",tickExtra:"both",translate:"both",values:"both",zindex:"both"},uN={orient:1,aria:1,bandPosition:1,description:1,domain:1,domainCap:1,domainColor:1,domainDash:1,domainDashOffset:1,domainOpacity:1,domainWidth:1,format:1,formatType:1,grid:1,gridCap:1,gridColor:1,gridDash:1,gridDashOffset:1,gridOpacity:1,gridWidth:1,labelAlign:1,labelAngle:1,labelBaseline:1,labelBound:1,labelColor:1,labelFlush:1,labelFlushOffset:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelLineHeight:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labels:1,labelSeparation:1,maxExtent:1,minExtent:1,offset:1,position:1,tickBand:1,tickCap:1,tickColor:1,tickCount:1,tickDash:1,tickDashOffset:1,tickExtra:1,tickMinStep:1,tickOffset:1,tickOpacity:1,tickRound:1,ticks:1,tickSize:1,tickWidth:1,title:1,titleAlign:1,titleAnchor:1,titleAngle:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleLineHeight:1,titleOpacity:1,titlePadding:1,titleX:1,titleY:1,translate:1,values:1,zindex:1},Cie={...uN,style:1,labelExpr:1,encoding:1};function yk(e){return X(Cie,e)}const Mie={axis:1,axisBand:1,axisBottom:1,axisDiscrete:1,axisLeft:1,axisPoint:1,axisQuantitative:1,axisRight:1,axisTemporal:1,axisTop:1,axisX:1,axisXBand:1,axisXDiscrete:1,axisXPoint:1,axisXQuantitative:1,axisXTemporal:1,axisY:1,axisYBand:1,axisYDiscrete:1,axisYPoint:1,axisYQuantitative:1,axisYTemporal:1},lN=P(Mie);function no(e){return L(e,"mark")}class Ep{name;run;constructor(t,n){this.name=t,this.run=n}hasMatchingType(t){return no(t)?rie(t.mark)===this.name:!1}}function $s(e,t){const n=e?.[t];return n?z(n)?hc(n,i=>!!i.field):U(n)||wp(n):!1}function cN(e,t){const n=e?.[t];return n?z(n)?hc(n,i=>!!i.field):U(n)||dr(n)||rf(n):!1}function fN(e,t){if(Ke(t)){const n=e[t];if((U(n)||dr(n))&&(DT(n.type)||U(n)&&n.timeUnit)){const i=jv(t);return cN(e,i)}}return!1}function dN(e){return hc(Eee,t=>{if($s(e,t)){const n=e[t];if(z(n))return hc(n,i=>!!i.aggregate);{const i=bi(n);return i&&!!i.aggregate}}return!1})}function hN(e,t){const n=[],i=[],r=[],o=[],s={};return S2(e,(a,u)=>{if(U(a)){const{field:l,aggregate:c,bin:f,timeUnit:d,...h}=a;if(c||d||f){const p=v2(a)?.title;let m=W(a,{forAs:!0});const y={...p?[]:{title:Ua(a,t,{allowDisabling:!0})},...h,field:m};if(c){let x;if(Xo(c)?(x="argmax",m=W({op:"argmax",field:c.argmax},{forAs:!0}),y.field=`${m}.${l}`):Hr(c)?(x="argmin",m=W({op:"argmin",field:c.argmin},{forAs:!0}),y.field=`${m}.${l}`):c!=="boxplot"&&c!=="errorbar"&&c!=="errorband"&&(x=c),x){const b={op:x,as:m};l&&(b.field=l),o.push(b)}}else if(n.push(m),an(a)&&Oe(f)){if(i.push({bin:f,field:l,as:m}),n.push(W(a,{binSuffix:"end"})),of(a,u)&&n.push(W(a,{binSuffix:"range"}
13)),Ke(u)){const x={field:`${m}_end`};s[`${u}2`]=x}y.bin="binned",Q5(u)||(y.type=Gs)}else if(d&&!da(d)){r.push({timeUnit:d,field:l,as:m});const x=an(a)&&a.type!==cu&&"time";x&&(u===Xc||u===qs?y.formatType=x:Oee(u)?y.legend={formatType:x,...y.legend}:Ke(u)&&(y.axis={formatType:x,...y.axis}))}s[u]=y}else n.push(l),s[u]=e[u]}else s[u]=e[u]}),{bins:i,timeUnits:r,aggregate:o,groupby:n,encoding:s}}function Fie(e,t,n){const i=Pee(t,n);if(i){if(i==="binned"){const r=e[t===Ei?Ie:bt];return!!(U(r)&&U(e[t])&&_t(r.bin))}}else return!1;return!0}function Die(e,t,n,i){const r={};for(const o of P(e))Z5(o)||I(Cte(o));for(let o of Fee){if(!e[o])continue;const s=e[o];if(Zc(o)){const a=Mee(o),u=r[a];if(U(u)&&Ane(u.type)&&U(s)&&!u.timeUnit){I(_te(a));continue}}if(o==="angle"&&t==="arc"&&!e.theta&&(I(wte),o=Zn),!Fie(e,o,t)){I(dp(o,t));continue}if(o===Jr&&t==="line"&&bi(e[o])?.aggregate){I(Ate);continue}if(o===yn&&(n?"fill"in e:"stroke"in e)){I(pT("encoding",{fill:"fill"in e,stroke:"stroke"in e}));continue}if(o===Kc||o===lu&&!z(s)&&!xi(s)||o===qs&&z(s)){if(s){if(o===lu){const a=e[o];if(JT(a)){r[o]=a;continue}}r[o]=H(s).reduce((a,u)=>(U(u)?a.push(_2(u,o)):I(J1(u,o)),a),[])}}else{if(o===qs&&s===null)r[o]=null;else if(!U(s)&&!dr(s)&&!xi(s)&&!nf(s)&&!ee(s)){I(J1(s,o));continue}r[o]=oN(s,o,i)}}return r}function kp(e,t){const n={};for(const i of P(e)){const r=oN(e[i],i,t,{compositeMark:!0});n[i]=r}return n}function Tie(e){const t=[];for(const n of P(e))if($s(e,n)){const i=e[n],r=H(i);for(const o of r)U(o)?t.push(o):wp(o)&&t.push(o.condition)}return t}function S2(e,t,n){if(e)for(const i of P(e)){const r=e[i];if(z(r))for(const o of r)t.call(n,o,i);else t.call(n,r,i)}}function Nie(e,t,n,i){return e?P(e).reduce((r,o)=>{const s=e[o];return z(s)?s.reduce((a,u)=>t.call(i,a,u,o),r):t.call(i,r,s,o)},n):n}function gN(e,t){return P(t).reduce((n,i)=>{switch(i){case Ie:case bt:case sp:case up:case ap:case Ei:case ar:case qo:case Ru:case Zn:case Qr:case ki:case Zr:case Wo:case $i:case Ai:case Ci:case Xn:case Xc:case xn:case aa:case qs:return n;case lu:if(e==="line"||e==="trail")return n;case Kc:case op:{const r=t[i];if(z(r)||U(r))for(const o of H(r))o.aggregate||n.push(W(o,{}));return n}case Jr:if(e==="trail")return n;case yn:case ur:case lr:case eo:case Ho:case Go:case Yo:case Vo:{const r=bi(t[i]);return r&&!r.aggregate&&n.push(W(r,{})),n}}},[])}function Rie(e){const{tooltip:t,...n}=e;if(!t)return{filteredEncoding:n};let i,r;if(z(t)){for(const o of t)o.aggregate?(i||(i=[]),i.push(o)):(r||(r=[]),r.push(o));i&&(n.tooltip=i)}else t.aggregate?n.tooltip=t:r=t;return z(r)&&r.length===1&&(r=r[0]),{customTooltipWithoutAggregatedField:r,filteredEncoding:n}}function iy(e,t,n,i=!0){if("tooltip"in n)return{tooltip:n.tooltip};const r=e.map(({fieldPrefix:s,titlePrefix:a})=>{const u=i?` of ${E2(t)}`:"";return{field:s+t.field,type:t.type,title:ee(a)?{signal:`${a}"${escape(u)}"`}:a+u}}),o=Tie(n).map(mie);return{tooltip:[...r,...Mr(o,me)]}}function E2(e){const{title:t,field:n}=e;return Ze(t,n)}function k2(e,t,n,i,r){const{scale:o,axis:s}=n;return({partName:a,mark:u,positionPrefix:l,endPositionPrefix:c=void 0,extraEncoding:f={}})=>{const d=E2(n);return pN(e,a,r,{mark:u,encoding:{[t]:{field:`${l}_${n.field}`,type:n.type,...d!==void 0?{title:d}:{},...o!==void 0?{scale:o}:{},...s!==void 0?{axis:s}:{}},...Y(c)?{[`${t}2`]:{field:`${c}_${n.field}`}}:{},...i,...f}})}}function pN(e,t,n,i){const{clip:r,color:o,opacity:s}=e,a=e.type;return e[t]||e[t]===void 0&&n[t]?[{...i,mark:{...n[t],...r?{clip:r}:{},...o?{color:o}:{},...s?{opacity:s}:{},...er(i.mark)?i.mark:{type:i.mark},style:`${a}-${String(t)}`,...wu(e[t])?{}:e[t]}}]:[]}function mN(e,t,n){const{encoding:i}=e,r=t==="vertical"?"y":"x",o=i[r],s=i[`${r}2`],a=i[`${r}Error`],u=i[`${r}Error2`];return{continuousAxisChannelDef:qf(o,n),continuousAxisChannelDef2:qf(s,n),continuousAxisChannelDefError:qf(a,n),continuousAxisChannelDefError2:qf(u,n),continuousAxis:r}}function qf(e,t){if(e?.aggregate){const{aggregate:n,...i}=e;return n!==t&&I(nne(n,t)),i}else return e}function yN(e,t){const{mark:n,encoding:i}=e,{x:r,y:o}=i;if(er(n)&&n.orient)return n.orient;if(bo(r)){if(bo(o)){const s=U(r)&&r.aggregate,a=U(o)&&o.aggregate;if(!s&&a===t)return"vertical";if(!a&&s===t)return"horizontal";if(s===t&&a===t)throw new Error("Both x and y cannot have aggregate");return gu(o)&&!gu(r)?"horizontal":"vertical"}return"horizontal"}else{if(bo(o))return"vertical";throw new Error(`Need a valid continuous axis for ${t}s`)}}const Wh="boxplot",Oie=["box","median","outliers","rule","ticks"],zie=new Ep(Wh,bN);function xN(e){return Ce(e)?"tukey":e}function bN(e,{config:t}){e={...e,encoding:kp(e.encoding,t)};const{mark:n,encoding:i,params:r,projection:o,...s}=e,a=er(n)?n:{type:n};r&&I(hT("boxplot"));const u=a.extent??t.boxplot.extent,l=De("size",a,t),c=a.invalid,f=xN(u),{bins:d,timeUnits:h,transform:g,continuousAxisChannelDef:p,continuousAxis:m,groupby:y,aggregate:x,encodingWithoutContinuousAxis:b,ticksOrient:v,boxOrient:w,customTooltipWithoutAggregatedField:S}=Pie(e,u,t),_=Yc(p.field),{color:E,size:k,...A}=b,$=hr=>k2(a,m,p,hr,t.boxplot),D=$(A),M=$(b),O=(V(t.boxplot.box)?t.boxplot.box.color:t.mark.color)||"#4c78a8",C=$({...A,...k?{size:k}:{},color:{condition:{test:`${Fe(`lower_box_${p.field}`)} >= ${Fe(`upper_box_${p.field}`)}`,...E||{value:O}}}}),N=iy([{fieldPrefix:f==="min-max"?"upper_whisker_":"max_",titlePrefix:"Max"},{fieldPrefix:"upper_box_",titlePrefix:"Q3"},{fieldPrefix:"mid_box_",titlePrefix:"Median"},{fieldPrefix:"lower_box_",titlePrefix:"Q1"},{fieldPrefix:f==="min-max"?"lower_whisker_":"min_",titlePrefix:"Min"}],p,b),G={type:"tick",color:"black",opacity:1,orient:v,invalid:c,aria:!1},Q=f==="min-max"?N:iy([{fieldPrefix:"upper_whisker_",titlePrefix:"Upper Whisker"},{fieldPrefix:"lower_whisker_",titlePrefix:"Lower Whisker"}],p,b),Z=[...D({partName:"rule",mark:{type:"rule",invalid:c,aria:!1},positionPrefix:"lower_whisker",endPositionPrefix:"lower_box",extraEncoding:Q}),...D({partName:"rule",mark:{type:"rule",invalid:c,aria:!1},positionPrefix:"upper_box",endPositionPrefix:"upper_whisker",extraEncoding:Q}),...D({partName:"ticks",mark:G,positionPrefix:"lower_whisker",extraEncoding:Q}),...D({partName:"ticks",mark:G,positionPrefix:"upper_whisker",extraEncoding:Q})],_e=[...f!=="tukey"?Z:[],...M({partName:"box",mark:{type:"bar",...l?{size:l}:{},orient:w,invalid:c,ariaRoleDescription:"box"},positionPrefix:"lower_box",endPositionPrefix:"upper_box",extraEncoding:N}
13),...C({partName:"median",mark:{type:"tick",invalid:c,...V(t.boxplot.median)&&t.boxplot.median.color?{color:t.boxplot.median.color}:{},...l?{size:l}:{},orient:v,aria:!1},positionPrefix:"mid_box",extraEncoding:N})];if(f==="min-max")return{...s,transform:(s.transform??[]).concat(g),layer:_e};const Ge=Fe(`lower_box_${p.field}`),vt=Fe(`upper_box_${p.field}`),st=`(${vt} - ${Ge})`,wn=`${Ge} - ${u} * ${st}`,Ve=`${vt} + ${u} * ${st}`,Mi=Fe(p.field),Zo={joinaggregate:vN(p.field),groupby:y},ro={transform:[{filter:`(${wn} <= ${Mi}) && (${Mi} <= ${Ve})`},{aggregate:[{op:"min",field:p.field,as:`lower_whisker_${_}`},{op:"max",field:p.field,as:`upper_whisker_${_}`},{op:"min",field:`lower_box_${p.field}`,as:`lower_box_${_}`},{op:"max",field:`upper_box_${p.field}`,as:`upper_box_${_}`},...x],groupby:y}],layer:Z},{tooltip:K,...ue}=A,{scale:de,axis:B}=p,wt=E2(p),ke=pN(a,"outliers",t.boxplot,{transform:[{filter:`(${Mi} < ${wn}) || (${Mi} > ${Ve})`}],mark:"point",encoding:{[m]:{field:p.field,type:p.type,...wt!==void 0?{title:wt}:{},...de!==void 0?{scale:de}:{},...B!==void 0?{axis:B}:{}},...ue,...E?{color:E}:{},...S?{tooltip:S}:{}}})[0];let at;const Ft=[...d,...h,Zo];return ke?at={transform:Ft,layer:[ke,ro]}:(at=ro,at.transform.unshift(...Ft)),{...s,layer:[at,{transform:g,layer:_e}]}}function vN(e){const t=Yc(e);return[{op:"q1",field:e,as:`lower_box_${t}`},{op:"q3",field:e,as:`upper_box_${t}`}]}function Pie(e,t,n){const i=yN(e,Wh),{continuousAxisChannelDef:r,continuousAxis:o}=mN(e,i,Wh),s=r.field,a=Yc(s),u=xN(t),l=[...vN(s),{op:"median",field:s,as:`mid_box_${a}`},{op:"min",field:s,as:(u==="min-max"?"lower_whisker_":"min_")+a},{op:"max",field:s,as:(u==="min-max"?"upper_whisker_":"max_")+a}],c=u==="min-max"||u==="tukey"?[]:[{calculate:`${Fe(`upper_box_${a}`)} - ${Fe(`lower_box_${a}`)}`,as:`iqr_${a}`},{calculate:`min(${Fe(`upper_box_${a}`)} + ${Fe(`iqr_${a}`)} * ${t}, ${Fe(`max_${a}`)})`,as:`upper_whisker_${a}`},{calculate:`max(${Fe(`lower_box_${a}`)} - ${Fe(`iqr_${a}`)} * ${t}, ${Fe(`min_${a}`)})`,as:`lower_whisker_${a}`}],{[o]:f,...d}=e.encoding,{customTooltipWithoutAggregatedField:h,filteredEncoding:g}=Rie(d),{bins:p,timeUnits:m,aggregate:y,groupby:x,encoding:b}=hN(g,n),v=i==="vertical"?"horizontal":"vertical",w=i,S=[...p,...m,{aggregate:[...y,...l],groupby:x},...c];return{bins:p,timeUnits:m,transform:S,groupby:x,aggregate:y,continuousAxisChannelDef:r,continuousAxis:o,encodingWithoutContinuousAxis:b,ticksOrient:v,boxOrient:w,customTooltipWithoutAggregatedField:h}}const $2="errorbar",Lie=["ticks","rule"],Iie=new Ep($2,wN);function wN(e,{config:t}){e={...e,encoding:kp(e.encoding,t)};const{transform:n,continuousAxisChannelDef:i,continuousAxis:r,encodingWithoutContinuousAxis:o,ticksOrient:s,markDef:a,outerSpec:u,tooltipEncoding:l}=_N(e,$2,t);delete o.size;const c=k2(a,r,i,o,t.errorbar),f=a.thickness,d=a.size,h={type:"tick",orient:s,aria:!1,...f!==void 0?{thickness:f}:{},...d!==void 0?{size:d}:{}},g=[...c({partName:"ticks",mark:h,positionPrefix:"lower",extraEncoding:l}),...c({partName:"ticks",mark:h,positionPrefix:"upper",extraEncoding:l}),...c({partName:"rule",mark:{type:"rule",ariaRoleDescription:"errorbar",...f!==void 0?{size:f}:{}},positionPrefix:"lower",endPositionPrefix:"upper",extraEncoding:l})];return{...u,transform:n,...g.length>1?{layer:g}:{...g[0]}}}function Bie(e,t){const{encoding:n}=e;if(Uie(n))return{orient:yN(e,t),inputType:"raw"};const i=jie(n),r=qie(n),o=n.x,s=n.y;if(i){if(r)throw new Error(`${t} cannot be both type aggregated-upper-lower and aggregated-error`);const a=n.x2,u=n.y2;if(ae(a)&&ae(u))throw new Error(`${t} cannot have both x2 and y2`);if(ae(a)){if(bo(o))return{orient:"horizontal",inputType:"aggregated-upper-lower"};throw new Error(`Both x and x2 have to be quantitative in ${t}`)}else if(ae(u)){if(bo(s))return{orient:"vertical",inputType:"aggregated-upper-lower"};throw new Error(`Both y and y2 have to be quantitative in ${t}`)}throw new Error("No ranged axis")}else{const a=n.xError,u=n.xError2,l=n.yError,c=n.yError2;if(ae(u)&&!ae(a))throw new Error(`${t} cannot have xError2 without xError`);if(ae(c)&&!ae(l))throw new Error(`${t} cannot have yError2 without yError`);if(ae(a)&&ae(l))throw new Error(`${t} cannot have both xError and yError with both are quantiative`);if(ae(a)){if(bo(o))return{orient:"horizontal",inputType:"aggregated-error"};throw new Error("All x, xError, and xError2 (if exist) have to be quantitative")}else if(ae(l)){if(bo(s))return{orient:"vertical",inputType:"aggregated-error"};throw new Error("All y, yError, and yError2 (if exist) have to be quantitative")}throw new Error("No ranged axis")}}function Uie(e){return(ae(e.x)||ae(e.y))&&!ae(e.x2)&&!ae(e.y2)&&!ae(e.xError)&&!ae(e.xError2)&&!ae(e.yError)&&!ae(e.yError2)}function jie(e){return ae(e.x2)||ae(e.y2)}
13function qie(e){return ae(e.xError)||ae(e.xError2)||ae(e.yError)||ae(e.yError2)}function _N(e,t,n){const{mark:i,encoding:r,params:o,projection:s,...a}=e,u=er(i)?i:{type:i};o&&I(hT(t));const{orient:l,inputType:c}=Bie(e,t),{continuousAxisChannelDef:f,continuousAxisChannelDef2:d,continuousAxisChannelDefError:h,continuousAxisChannelDefError2:g,continuousAxis:p}=mN(e,l,t),{errorBarSpecificAggregate:m,postAggregateCalculates:y,tooltipSummary:x,tooltipTitleWithFieldName:b}=Wie(u,f,d,h,g,c,t,n),{[p]:v,[p==="x"?"x2":"y2"]:w,[p==="x"?"xError":"yError"]:S,[p==="x"?"xError2":"yError2"]:_,...E}=r,{bins:k,timeUnits:A,aggregate:$,groupby:D,encoding:M}=hN(E,n),O=[...$,...m],C=c!=="raw"?[]:D,N=iy(x,f,M,b);return{transform:[...a.transform??[],...k,...A,...O.length===0?[]:[{aggregate:O,groupby:C}],...y],groupby:C,continuousAxisChannelDef:f,continuousAxis:p,encodingWithoutContinuousAxis:M,ticksOrient:l==="vertical"?"horizontal":"vertical",markDef:u,outerSpec:a,tooltipEncoding:N}}function Wie(e,t,n,i,r,o,s,a){let u=[],l=[];const c=t.field;let f,d=!1;if(o==="raw"){const h=e.center?e.center:e.extent?e.extent==="iqr"?"median":"mean":a.errorbar.center,g=e.extent?e.extent:h==="mean"?"stderr":"iqr";if(h==="median"!=(g==="iqr")&&I(tne(h,g,s)),g==="stderr"||g==="stdev")u=[{op:g,field:c,as:`extent_${c}`},{op:h,field:c,as:`center_${c}`}],l=[{calculate:`${Fe(`center_${c}`)} + ${Fe(`extent_${c}`)}`,as:`upper_${c}`},{calculate:`${Fe(`center_${c}`)} - ${Fe(`extent_${c}`)}`,as:`lower_${c}`}],f=[{fieldPrefix:"center_",titlePrefix:ip(h)},{fieldPrefix:"upper_",titlePrefix:xk(h,g,"+")},{fieldPrefix:"lower_",titlePrefix:xk(h,g,"-")}],d=!0;else{let p,m,y;g==="ci"?(p="mean",m="ci0",y="ci1"):(p="median",m="q1",y="q3"),u=[{op:m,field:c,as:`lower_${c}`},{op:y,field:c,as:`upper_${c}`},{op:p,field:c,as:`center_${c}`}],f=[{fieldPrefix:"upper_",titlePrefix:Ua({field:c,aggregate:y,type:"quantitative"},a,{allowDisabling:!1})},{fieldPrefix:"lower_",titlePrefix:Ua({field:c,aggregate:m,type:"quantitative"},a,{allowDisabling:!1})},{fieldPrefix:"center_",titlePrefix:Ua({field:c,aggregate:p,type:"quantitative"},a,{allowDisabling:!1})}]}}else{(e.center||e.extent)&&I(ene(e.center,e.extent)),o==="aggregated-upper-lower"?(f=[],l=[{calculate:Fe(n.field),as:`upper_${c}`},{calculate:Fe(c),as:`lower_${c}`}]):o==="aggregated-error"&&(f=[{fieldPrefix:"",titlePrefix:c}],l=[{calculate:`${Fe(c)} + ${Fe(i.field)}`,as:`upper_${c}`}],r?l.push({calculate:`${Fe(c)} + ${Fe(r.field)}`,as:`lower_${c}`}):l.push({calculate:`${Fe(c)} - ${Fe(i.field)}`,as:`lower_${c}`}));for(const h of l)f.push({fieldPrefix:h.as.substring(0,6),titlePrefix:uu(uu(h.calculate,"datum['",""),"']","")})}return{postAggregateCalculates:l,errorBarSpecificAggregate:u,tooltipSummary:f,tooltipTitleWithFieldName:d}}function xk(e,t,n){return`${ip(e)} ${n} ${t}`}const A2="errorband",Hie=["band","borders"],Gie=new Ep(A2,SN);function SN(e,{config:t}){e={...e,encoding:kp(e.encoding,t)};const{transform:n,continuousAxisChannelDef:i,continuousAxis:r,encodingWithoutContinuousAxis:o,markDef:s,outerSpec:a,tooltipEncoding:u}=_N(e,A2,t),l=s,c=k2(l,r,i,o,t.errorband),f=e.encoding.x!==void 0&&e.encoding.y!==void 0;let d={type:f?"area":"rect"},h={type:f?"line":"rule"};const g={...l.interpolate?{interpolate:l.interpolate}:{},...l.tension&&l.interpolate?{tension:l.tension}:{}};return f?(d={...d,...g,ariaRoleDescription:"errorband"},h={...h,...g,aria:!1}):l.interpolate?I(lk("interpolate")):l.tension&&I(lk("tension")),{...a,transform:n,layer:[...c({partName:"band",mark:d,positionPrefix:"lower",endPositionPrefix:"upper",extraEncoding:u}),...c({partName:"borders",mark:h,positionPrefix:"lower",extraEncoding:u}),...c({partName:"borders",mark:h,positionPrefix:"upper",extraEncoding:u})]}}const EN={};function C2(e,t,n){const i=new Ep(e,t);EN[e]={normalizer:i,parts:n}}function Vie(){return P(EN)}C2(Wh,bN,Oie);C2($2,wN,Lie);C2(A2,SN,Hie);const Yie=["gradientHorizontalMaxLength","gradientHorizontalMinLength","gradientVerticalMaxLength","gradientVerticalMinLength","unselectedOpacity"],kN={titleAlign:"align",titleAnchor:"anchor",titleAngle:"angle",titleBaseline:"baseline",titleColor:"color",titleFont:"font",titleFontSize:"fontSize",titleFontStyle:"fontStyle",titleFontWeight:"fontWeight",titleLimit:"limit",titleLineHeight:"lineHeight",titleOrient:"orient",titlePadding:"offset"},$N={labelAlign:"align",labelAnchor:"anchor",labelAngle:"angle",labelBaseline:"baseline",labelColor:"color",labelFont:"font",labelFontSize:"fontSize",labelFontStyle:"fontStyle",labelFontWeight:"fontWeight",labelLimit:"limit",labelLineHeight:"lineHeight",labelOrient:"orient",labelPadding:"offset"},Xie=P(kN),Kie=P($N),Zie={header:1,headerRow:1,headerColumn:1,headerFacet:1},AN=P(Zie),CN=["size","shape","fill","stroke","strokeDash","strokeWidth","opacity"],Qie={gradientHorizontalMaxLength:200,gradientHorizontalMinLength:100,gradientVerticalMaxLength:200,gradientVerticalMinLength:64,unselectedOpacity:.35},Jie={aria:1,clipHeight:1,columnPadding:1,columns:1,cornerRadius:1,description:1,direction:1,fillColor:1,format:1,formatType:1,gradientLength:1,gradientOpacity:1,gradientStrokeColor:1,gradientStrokeWidth:1,gradientThickness:1,gridAlign:1,labelAlign:1,labelBaseline:1,labelColor:1,labelFont:1,labelFontSize:1,labelFontStyle:1,labelFontWeight:1,labelLimit:1,labelOffset:1,labelOpacity:1,labelOverlap:1,labelPadding:1,labelSeparation:1,legendX:1,legendY:1,offset:1,orient:1,padding:1,rowPadding:1,strokeColor:1,symbolDash:1,symbolDashOffset:1,symbolFillColor:1,symbolLimit:1,symbolOffset:1,symbolOpacity:1,symbolSize:1,symbolStrokeColor:1,symbolStrokeWidth:1,symbolType:1,tickCount:1,tickMinStep:1,title:1,titleAlign:1,titleAnchor:1,titleBaseline:1,titleColor:1,titleFont:1,titleFontSize:1,titleFontStyle:1,titleFontWeight:1,titleLimit:1,titleLineHeight:1,titleOpacity:1,titleOrient:1,titlePadding:1,type:1,values:1,zindex:1},vi="_vgsid_",ere={point:{on:"click",fields:[vi],toggle:"event.shiftKey",resolve:"global",clear:"dblclick"},interval:{on:"[pointerdown, window:pointerup] > window:pointermove!",encodings:["x","y"],translate:"[pointerdown, window:pointerup] > window:pointermove!",zoom:"wheel!",mark:{fill:"#333",fillOpacity:.125,stroke:"white"},resolve:"global",clear:"dblclick"}};function M2(e){return e==="legend"||!!e?.legend}function i0(e){return M2(e)&&V(e)}
13function F2(e){return!!e?.select}function MN(e){const t=[];for(const n of e||[]){if(F2(n))continue;const{expr:i,bind:r,...o}=n;if(r&&i){const s={...o,bind:r,init:i};t.push(s)}else{const s={...o,...i?{update:i}:{},...r?{bind:r}:{}};t.push(s)}}return t}function tre(e){return $p(e)||T2(e)||D2(e)}function D2(e){return L(e,"concat")}function $p(e){return L(e,"vconcat")}function T2(e){return L(e,"hconcat")}function FN({step:e,offsetIsDiscrete:t}){return t?e.for??"offset":"position"}function tr(e){return L(e,"step")}function bk(e){return L(e,"view")||L(e,"width")||L(e,"height")}const vk=20,nre={align:1,bounds:1,center:1,columns:1,spacing:1},ire=P(nre);function rre(e,t,n){const i=n[t],r={},{spacing:o,columns:s}=i;o!==void 0&&(r.spacing=o),s!==void 0&&(vp(e)&&!tf(e.facet)||D2(e))&&(r.columns=s),$p(e)&&(r.columns=1);for(const a of ire)if(e[a]!==void 0)if(a==="spacing"){const u=e[a];r[a]=Ce(u)?u:{row:u.row??o,column:u.column??o}}else r[a]=e[a];return r}function ry(e,t){return e[t]??e[t==="width"?"continuousWidth":"continuousHeight"]}function oy(e,t){const n=Hh(e,t);return tr(n)?n.step:DN}function Hh(e,t){const n=e[t]??e[t==="width"?"discreteWidth":"discreteHeight"];return Ze(n,{step:e.step})}const DN=20,ore={continuousWidth:300,continuousHeight:300,step:DN},sre={background:"white",padding:5,timeFormat:"%b %d, %Y",countTitle:"Count of Records",view:ore,mark:Qne,arc:{},area:{},bar:nie,circle:{},geoshape:{},image:{},line:{},point:{},rect:h2,rule:{color:"black"},square:{},text:{color:"black"},tick:iie,trail:{},boxplot:{size:14,extent:1.5,box:{},median:{color:"white"},outliers:{},rule:{},ticks:null},errorbar:{center:"mean",rule:!0,ticks:!1},errorband:{band:{opacity:.3},borders:!1},scale:Nne,projection:{},legend:Qie,header:{titlePadding:10,labelPadding:10},headerColumn:{},headerRow:{},headerFacet:{},selection:ere,style:{},title:{},facet:{spacing:vk},concat:{spacing:vk},normalizedNumberFormat:".0%"},xr=["#4c78a8","#f58518","#e45756","#72b7b2","#54a24b","#eeca3b","#b279a2","#ff9da6","#9d755d","#bab0ac"],wk={text:11,guideLabel:10,guideTitle:11,groupTitle:13,groupSubtitle:12},_k={blue:xr[0],orange:xr[1],red:xr[2],teal:xr[3],green:xr[4],yellow:xr[5],purple:xr[6],pink:xr[7],brown:xr[8],gray0:"#000",gray1:"#111",gray2:"#222",gray3:"#333",gray4:"#444",gray5:"#555",gray6:"#666",gray7:"#777",gray8:"#888",gray9:"#999",gray10:"#aaa",gray11:"#bbb",gray12:"#ccc",gray13:"#ddd",gray14:"#eee",gray15:"#fff"};function are(e={}){return{signals:[{name:"color",value:V(e)?{..._k,...e}:_k}],mark:{color:{signal:"color.blue"}},rule:{color:{signal:"color.gray0"}},text:{color:{signal:"color.gray0"}},style:{"guide-label":{fill:{signal:"color.gray0"}},"guide-title":{fill:{signal:"color.gray0"}},"group-title":{fill:{signal:"color.gray0"}},"group-subtitle":{fill:{signal:"color.gray0"}},cell:{stroke:{signal:"color.gray8"}}},axis:{domainColor:{signal:"color.gray13"},gridColor:{signal:"color.gray8"},tickColor:{signal:"color.gray13"}},range:{category:[{signal:"color.blue"},{signal:"color.orange"},{signal:"color.red"},{signal:"color.teal"},{signal:"color.green"},{signal:"color.yellow"},{signal:"color.purple"},{signal:"color.pink"},{signal:"color.brown"},{signal:"color.grey8"}]}}}function ure(e){return{signals:[{name:"fontSize",value:V(e)?{...wk,...e}:wk}],text:{fontSize:{signal:"fontSize.text"}},style:{"guide-label":{fontSize:{signal:"fontSize.guideLabel"}},"guide-title":{fontSize:{signal:"fontSize.guideTitle"}},"group-title":{fontSize:{signal:"fontSize.groupTitle"}},"group-subtitle":{fontSize:{signal:"fontSize.groupSubtitle"}}}}}function lre(e){return{text:{font:e},style:{"guide-label":{font:e},"guide-title":{font:e},"group-title":{font:e},"group-subtitle":{font:e}}}}function TN(e){const t=P(e||{}),n={};for(const i of t){const r=e[i];n[i]=sf(r)?sT(r):$n(r)}return n}function cre(e){const t=P(e),n={};for(const i of t)n[i]=TN(e[i]);return n}const fre=[...UT,...lN,...AN,"background","padding","legend","lineBreak","scale","style","title","view"];function NN(e={}){const{color:t,font:n,fontSize:i,selection:r,...o}=e,s=Sy({},se(sre),n?lre(n):{},t?are(t):{},i?ure(i):{},o||{});r&&Zh(s,"selection",r,!0);const a=Wn(s,fre);for(const u of["background","lineBreak","padding"])s[u]&&(a[u]=$n(s[u]));for(const u of UT)s[u]&&(a[u]=St(s[u]));for(const u of lN)s[u]&&(a[u]=TN(s[u]));for(const u of AN)s[u]&&(a[u]=St(s[u]));if(s.legend&&(a.legend=St(s.legend)),s.scale){const{invalid:u,...l}=s.scale,c=St(u,{level:1});a.scale={...St(l),...P(c).length>0?{invalid:c}:{}}}return s.style&&(a.style=cre(s.style)),s.title&&(a.title=St(s.title)),s.view&&(a.view=St(s.view)),a}const dre=new Set(["view",...Gne]),hre=["color","fontSize","background","padding","facet","concat","numberFormat","numberFormatType","normalizedNumberFormat","normalizedNumberFormatType","timeFormat","countTitle","header","axisQuantitative","axisTemporal","axisDiscrete","axisPoint","axisXBand","axisXPoint","axisXDiscrete","axisXQuantitative","axisXTemporal","axisYBand","axisYPoint","axisYDiscrete","axisYQuantitative","axisYTemporal","scale","selection","overlay"],gre={view:["continuousWidth","continuousHeight","discreteWidth","discreteHeight","step"],...Zne};function pre(e){e=se(e);for(const t of hre)delete e[t];if(e.axis)for(const t in e.axis)sf(e.axis[t])&&delete e.axis[t];if(e.legend)for(const t of Yie)delete e.legend[t];
13if(e.mark){for(const t of fk)delete e.mark[t];e.mark.tooltip&&V(e.mark.tooltip)&&delete e.mark.tooltip}e.params&&(e.signals=(e.signals||[]).concat(MN(e.params)),delete e.params);for(const t of dre){for(const i of fk)delete e[t][i];const n=gre[t];if(n)for(const i of n)delete e[t][i];yre(e,t)}for(const t of Vie())delete e[t];mre(e);for(const t in e)V(e[t])&&Re(e[t])&&delete e[t];return Re(e)?void 0:e}function mre(e){const{titleMarkConfig:t,subtitleMarkConfig:n,subtitle:i}=oT(e.title);Re(t)||(e.style["group-title"]={...e.style["group-title"],...t}),Re(n)||(e.style["group-subtitle"]={...e.style["group-subtitle"],...n}),Re(i)?delete e.title:e.title=i}function yre(e,t,n,i){const r=e[t];t==="view"&&(n="cell");const o={...r,...e.style[n??t]};Re(o)||(e.style[n??t]=o),delete e[t]}function Ap(e){return L(e,"layer")}function xre(e){return L(e,"repeat")}function bre(e){return!z(e.repeat)&&L(e.repeat,"layer")}class N2{map(t,n){return vp(t)?this.mapFacet(t,n):xre(t)?this.mapRepeat(t,n):T2(t)?this.mapHConcat(t,n):$p(t)?this.mapVConcat(t,n):D2(t)?this.mapConcat(t,n):this.mapLayerOrUnit(t,n)}mapLayerOrUnit(t,n){if(Ap(t))return this.mapLayer(t,n);if(no(t))return this.mapUnit(t,n);throw new Error(Yv(t))}mapLayer(t,n){return{...t,layer:t.layer.map(i=>this.mapLayerOrUnit(i,n))}}mapHConcat(t,n){return{...t,hconcat:t.hconcat.map(i=>this.map(i,n))}}mapVConcat(t,n){return{...t,vconcat:t.vconcat.map(i=>this.map(i,n))}}mapConcat(t,n){const{concat:i,...r}=t;return{...r,concat:i.map(o=>this.map(o,n))}}mapFacet(t,n){return{...t,spec:this.map(t.spec,n)}}mapRepeat(t,n){return{...t,spec:this.map(t.spec,n)}}}const vre={zero:1,center:1,normalize:1};function wre(e){return X(vre,e)}const _re=new Set([LT,mp,pp,Lh,xp,f2,d2,yp,IT,c2]),Sre=new Set([mp,pp,LT]);function Aa(e){return U(e)&&du(e)==="quantitative"&&!e.bin}function Sk(e,t,{orient:n,type:i}){const r=t==="x"?"y":"radius",o=t==="x"&&["bar","area"].includes(i),s=e[t],a=e[r];if(U(s)&&U(a))if(Aa(s)&&Aa(a)){if(s.stack)return t;if(a.stack)return r;const u=U(s)&&!!s.aggregate,l=U(a)&&!!a.aggregate;if(u!==l)return u?t:r;if(o){if(n==="vertical")return r;if(n==="horizontal")return t}}else{if(Aa(s))return t;if(Aa(a))return r}else{if(Aa(s))return o&&n==="vertical"?void 0:t;if(Aa(a))return o&&n==="horizontal"?void 0:r}}function Ere(e){switch(e){case"x":return"y";case"y":return"x";case"theta":return"radius";case"radius":return"theta"}}function RN(e,t){const n=er(e)?e:{type:e},i=n.type;if(!_re.has(i))return null;const r=Sk(t,"x",n)||Sk(t,"theta",n);if(!r)return null;const o=t[r],s=U(o)?W(o,{}):void 0,a=Ere(r),u=[],l=new Set;if(t[a]){const p=t[a],m=U(p)?W(p,{}):void 0;m&&m!==s&&(u.push(a),l.add(m))}const c=a==="x"?"xOffset":"yOffset",f=t[c],d=U(f)?W(f,{}):void 0;d&&d!==s&&(u.push(c),l.add(d));const h=Dee.reduce((p,m)=>{if(m!=="tooltip"&&$s(t,m)){const y=t[m];for(const x of H(y)){const b=bi(x);if(b.aggregate)continue;const v=W(b,{});(!v||!l.has(v))&&p.push({channel:m,fieldDef:b})}}return p},[]);let g;return o.stack!==void 0?wu(o.stack)?g=o.stack?"zero":null:g=o.stack:Sre.has(i)&&(g="zero"),!g||!wre(g)||dN(t)&&h.length===0?null:(o?.scale?.type&&o?.scale?.type!==Et.LINEAR&&o?.stack&&I(Zte(o.scale.type)),ae(t[cr(r)])?(o.stack!==void 0&&I(Kte(r)),null):(U(o)&&o.aggregate&&!Wee.has(o.aggregate)&&I(Qte(o.aggregate)),{groupbyChannels:u,groupbyFields:l,fieldChannel:r,impute:o.impute===null?!1:Ko(i),stackBy:h,offset:g}))}function ON(e,t,n){const i=St(e),r=De("orient",i,n);if(i.orient=Cre(i.type,t,r),r!==void 0&&r!==i.orient&&I(Rte(i.orient,r)),i.type==="bar"&&i.orient){const u=De("cornerRadiusEnd",i,n);if(u!==void 0){const l=i.orient==="horizontal"&&t.x2||i.orient==="vertical"&&t.y2?["cornerRadius"]:eie[i.orient];for(const c of l)i[c]=u;i.cornerRadiusEnd!==void 0&&delete i.cornerRadiusEnd}}const o=De("opacity",i,n),s=De("fillOpacity",i,n);return o===void 0&&s===void 0&&(i.opacity=$re(i.type,t)),De("cursor",i,n)===void 0&&(i.cursor=kre(i,t,n)),i}function kre(e,t,n){return t.href||e.href||De("href",e,n)?"pointer":e.cursor}function $re(e,t){if(ge([xp,c2,f2,d2],e)&&!dN(t))return .7}function Are(e,t,{graticule:n}){if(n)return!1;const i=Ji("filled",e,t),r=e.type;return Ze(i,r!==xp&&r!==yp&&r!==Lh)}
13function Cre(e,t,n){switch(e){case xp:case f2:case d2:case IT:case Wne:case qne:return}const{x:i,y:r,x2:o,y2:s}=t;switch(e){case mp:if(U(i)&&(_t(i.bin)||U(r)&&r.aggregate&&!i.aggregate))return"vertical";if(U(r)&&(_t(r.bin)||U(i)&&i.aggregate&&!r.aggregate))return"horizontal";if(s||o){if(n)return n;if(!o)return(U(i)&&i.type===Gs&&!Oe(i.bin)||Bh(i))&&U(r)&&_t(r.bin)?"horizontal":"vertical";if(!s)return(U(r)&&r.type===Gs&&!Oe(r.bin)||Bh(r))&&U(i)&&_t(i.bin)?"vertical":"horizontal"}case Lh:if(o&&!(U(i)&&_t(i.bin))&&s&&!(U(r)&&_t(r.bin)))return;case pp:if(s)return U(r)&&_t(r.bin)?"horizontal":"vertical";if(o)return U(i)&&_t(i.bin)?"vertical":"horizontal";if(e===Lh){if(i&&!r)return"vertical";if(r&&!i)return"horizontal"}case yp:case c2:{const a=pk(i),u=pk(r);if(n)return n;if(a&&!u)return e!=="tick"?"horizontal":"vertical";if(!a&&u)return e!=="tick"?"vertical":"horizontal";if(a&&u)return"vertical";{const l=an(i)&&i.type===cu,c=an(r)&&r.type===cu;if(l&&!c)return"vertical";if(!l&&c)return"horizontal"}return}}return"vertical"}function Mre(e){const{point:t,line:n,...i}=e;return P(i).length>1?i:i.type}function Fre(e){for(const t of["line","area","rule","trail"])e[t]&&(e={...e,[t]:Wn(e[t],["point","line"])});return e}function r0(e,t={},n){return e.point==="transparent"?{opacity:0}:e.point?V(e.point)?e.point:{}:e.point!==void 0?null:t.point||n.shape?V(t.point)?t.point:{}:void 0}function Ek(e,t={}){return e.line?e.line===!0?{}:e.line:e.line!==void 0?null:t.line?t.line===!0?{}:t.line:void 0}class Dre{name="path-overlay";hasMatchingType(t,n){if(no(t)){const{mark:i,encoding:r}=t,o=er(i)?i:{type:i};switch(o.type){case"line":case"rule":case"trail":return!!r0(o,n[o.type],r);case"area":return!!r0(o,n[o.type],r)||!!Ek(o,n[o.type])}}return!1}run(t,n,i){const{config:r}=n,{params:o,projection:s,mark:a,name:u,encoding:l,...c}=t,f=kp(l,r),d=er(a)?a:{type:a},h=r0(d,r[d.type],f),g=d.type==="area"&&Ek(d,r[d.type]),p=[{name:u,...o?{params:o}:{},mark:Mre({...d.type==="area"&&d.opacity===void 0&&d.fillOpacity===void 0?{opacity:.7}:{},...d}),encoding:Wn(f,["shape"])}],m=RN(ON(d,f,r),f);let y=f;if(m){const{fieldChannel:x,offset:b}=m;y={...f,[x]:{...f[x],...b?{stack:b}:{}}}}return y=Wn(y,["y2","x2"]),g&&p.push({...s?{projection:s}:{},mark:{type:"line",...dc(d,["clip","interpolate","tension","tooltip"]),...g},encoding:y}),h&&p.push({...s?{projection:s}:{},mark:{type:"point",opacity:1,filled:!0,...dc(d,["clip","tooltip"]),...h},encoding:y}),i({...c,layer:p},{...n,config:Fre(r)})}}function Tre(e,t){return t?tf(e)?PN(e,t):zN(e,t):e}function o0(e,t){return t?PN(e,t):e}function sy(e,t,n){const i=t[e];if(gie(i)){if(i.repeat in n)return{...t,[e]:n[i.repeat]};I(fte(i.repeat));return}return t}function zN(e,t){if(e=sy("field",e,t),e!==void 0){if(e===null)return null;if(b2(e)&&zr(e.sort)){const n=sy("field",e.sort,t);e={...e,...n?{sort:n}:{}}}return e}}function kk(e,t){if(U(e))return zN(e,t);{const n=sy("datum",e,t);return n!==e&&!n.type&&(n.type="nominal"),n}}function $k(e,t){if(ae(e)){const n=kk(e,t);if(n)return n;if(nf(e))return{condition:e.condition}}else{if(rf(e)){const n=kk(e.condition,t);if(n)return{...e,condition:n};{const{condition:i,...r}=e;return r}}return e}}function PN(e,t){const n={};for(const i in e)if(L(e,i)){const r=e[i];if(z(r))n[i]=r.map(o=>$k(o,t)).filter(o=>o);else{const o=$k(r,t);o!==void 0&&(n[i]=o)}}return n}class Nre{name="RuleForRangedLine";hasMatchingType(t){if(no(t)){const{encoding:n,mark:i}=t;if(i==="line"||er(i)&&i.type==="line")for(const r of Cee){const o=ua(r),s=n[o];if(n[r]&&(U(s)&&!_t(s.bin)||dr(s)))return!0}}return!1}run(t,n,i){const{encoding:r,mark:o}=t;return I(Nte(!!r.x2,!!r.y2)),i({...t,mark:V(o)?{...o,type:"rule"}:"rule"},n)}}class Rre extends N2{nonFacetUnitNormalizers=[zie,Iie,Gie,new Dre,new Nre];map(t,n){if(no(t)){const i=$s(t.encoding,Rr),r=$s(t.encoding,Or),o=$s(t.encoding,rp);if(i||r||o)return this.mapFacetedUnit(t,n)}return super.map(t,n)}mapUnit(t,n){const{parentEncoding:i,parentProjection:r}=n,o=o0(t.encoding,n.repeater),s={...t,...t.name?{name:[n.repeaterPrefix,t.name].filter(u=>u).join("_")}:{},...o?{encoding:o}:{}};if(i||r)return this.mapUnitWithParentEncodingOrProjection(s,n);const a=this.mapLayerOrUnit.bind(this);for(const u of this.nonFacetUnitNormalizers)if(u.hasMatchingType(s,n.c
13onfig))return u.run(s,n,a);return s}mapRepeat(t,n){return bre(t)?this.mapLayerRepeat(t,n):this.mapNonLayerRepeat(t,n)}mapLayerRepeat(t,n){const{repeat:i,spec:r,...o}=t,{row:s,column:a,layer:u}=i,{repeater:l={},repeaterPrefix:c=""}=n;return s||a?this.mapRepeat({...t,repeat:{...s?{row:s}:{},...a?{column:a}:{}},spec:{repeat:{layer:u},spec:r}},n):{...o,layer:u.map(f=>{const d={...l,layer:f},h=`${(r.name?`${r.name}_`:"")+c}child__layer_${je(f)}`,g=this.mapLayerOrUnit(r,{...n,repeater:d,repeaterPrefix:h});return g.name=h,g})}}mapNonLayerRepeat(t,n){const{repeat:i,spec:r,data:o,...s}=t;!z(i)&&t.columns&&(t=Wn(t,["columns"]),I(ok("repeat")));const a=[],{repeater:u={},repeaterPrefix:l=""}=n,c=!z(i)&&i.row||[u?u.row:null],f=!z(i)&&i.column||[u?u.column:null],d=z(i)&&i||[u?u.repeat:null];for(const g of d)for(const p of c)for(const m of f){const y={repeat:g,row:p,column:m,layer:u.layer},x=`${(r.name?`${r.name}_`:"")+l}child__${z(i)?`${je(g)}`:(i.row?`row_${je(p)}`:"")+(i.column?`column_${je(m)}`:"")}`,b=this.map(r,{...n,repeater:y,repeaterPrefix:x});b.name=x,a.push(Wn(b,["data"]))}const h=z(i)?t.columns:i.column?i.column.length:1;return{data:r.data??o,align:"all",...s,columns:h,concat:a}}mapFacet(t,n){const{facet:i}=t;return tf(i)&&t.columns&&(t=Wn(t,["columns"]),I(ok("facet"))),super.mapFacet(t,n)}mapUnitWithParentEncodingOrProjection(t,n){const{encoding:i,projection:r}=t,{parentEncoding:o,parentProjection:s,config:a}=n,u=Ck({parentProjection:s,projection:r}),l=Ak({parentEncoding:o,encoding:o0(i,n.repeater)});return this.mapUnit({...t,...u?{projection:u}:{},...l?{encoding:l}:{}},{config:a})}mapFacetedUnit(t,n){const{row:i,column:r,facet:o,...s}=t.encoding,{mark:a,width:u,projection:l,height:c,view:f,params:d,encoding:h,...g}=t,{facetMapping:p,layout:m}=this.getFacetMappingAndLayout({row:i,column:r,facet:o},n),y=o0(s,n.repeater);return this.mapFacet({...g,...m,facet:p,spec:{...u?{width:u}:{},...c?{height:c}:{},...f?{view:f}:{},...l?{projection:l}:{},mark:a,encoding:y,...d?{params:d}:{}}},n)}getFacetMappingAndLayout(t,n){const{row:i,column:r,facet:o}=t;if(i||r){o&&I(Dte([...i?[Rr]:[],...r?[Or]:[]]));const s={},a={};for(const u of[Rr,Or]){const l=t[u];if(l){const{align:c,center:f,spacing:d,columns:h,...g}=l;s[u]=g;
13for(const p of["align","center","spacing"])l[p]!==void 0&&(a[p]??={},a[p][u]=l[p])}}return{facetMapping:s,layout:a}}else{const{align:s,center:a,spacing:u,columns:l,...c}=o;return{facetMapping:Tre(c,n.repeater),layout:{...s?{align:s}:{},...a?{center:a}:{},...u?{spacing:u}:{},...l?{columns:l}:{}}}}}mapLayer(t,{parentEncoding:n,parentProjection:i,...r}){const{encoding:o,projection:s,...a}=t,u={...r,parentEncoding:Ak({parentEncoding:n,encoding:o,layer:!0}),parentProjection:Ck({parentProjection:i,projection:s})};return super.mapLayer({...a,...t.name?{name:[u.repeaterPrefix,t.name].filter(l=>l).join("_")}:{}},u)}}function Ak({parentEncoding:e,encoding:t={},layer:n}){let i={};if(e){const r=new Set([...P(e),...P(t)]);for(const o of r){const s=t[o],a=e[o];if(ae(s)){const u={...a,...s};i[o]=u}else rf(s)?i[o]={...s,condition:{...a,...s.condition}}:s||s===null?i[o]=s:(n||xi(a)||ee(a)||ae(a)||z(a))&&(i[o]=a)}}else i=t;return!i||Re(i)?void 0:i}function Ck(e){const{parentProjection:t,projection:n}=e;return t&&n&&I(vte({parentProjection:t,projection:n})),n??t}function R2(e){return L(e,"filter")}function Ore(e){return L(e,"stop")}function LN(e){return L(e,"lookup")}function zre(e){return L(e,"data")}function Pre(e){return L(e,"param")}function Lre(e){return L(e,"pivot")}function Ire(e){return L(e,"density")}function Bre(e){return L(e,"quantile")}function Ure(e){return L(e,"regression")}function jre(e){return L(e,"loess")}function qre(e){return L(e,"sample")}function Wre(e){return L(e,"window")}function Hre(e){return L(e,"joinaggregate")}function Gre(e){return L(e,"flatten")}function Vre(e){return L(e,"calculate")}function IN(e){return L(e,"bin")}function Yre(e){return L(e,"impute")}function Xre(e){return L(e,"timeUnit")}function Kre(e){return L(e,"aggregate")}function Zre(e){return L(e,"stack")}function Qre(e){return L(e,"fold")}function Jre(e){return L(e,"extent")&&!L(e,"density")&&!L(e,"regression")}function eoe(e){return e.map(t=>R2(t)?{filter:Ia(t.filter,$ne)}:t)}class toe extends N2{map(t,n){return n.emptySelections??={},n.selectionPredicates??={},t=Mk(t,n),super.map(t,n)}mapLayerOrUnit(t,n){if(t=Mk(t,n),t.encoding){const i={};for(const[r,o]of js(t.encoding))i[r]=BN(o,n);t={...t,encoding:i}}return super.mapLayerOrUnit(t,n)}mapUnit(t,n){const{selection:i,...r}=t;return i?{...r,params:js(i).map(([o,s])=>{const{init:a,bind:u,empty:l,...c}=s;c.type==="single"?(c.type="point",c.toggle=!1):c.type==="multi"&&(c.type="point"),n.emptySelections[o]=l!=="none";for(const f of nt(n.selectionPredicates[o]??{}))f.empty=l!=="none";return{name:o,value:a,select:c,bind:u}})}:t}}function Mk(e,t){const{transform:n,...i}=e;if(n){const r=n.map(o=>{if(R2(o))return{filter:ay(o,t)};if(IN(o)&&la(o.bin))return{...o,bin:UN(o.bin)};if(LN(o)){const{selection:s,...a}=o.from;return s?{...o,from:{param:s,...a}}:o}return o});return{...i,transform:r}}return e}function BN(e,t){const n=se(e);if(U(n)&&la(n.bin)&&(n.bin=UN(n.bin)),ha(n)&&n.scale?.domain?.selection){const{selection:i,...r}=n.scale.domain;n.scale.domain={...r,...i?{param:i}:{}}}if(nf(n))if(z(n.condition))n.condition=n.condition.map(i=>{const{selection:r,param:o,test:s,...a}=i;return o?i:{...a,test:ay(i,t)}});else{const{selection:i,param:r,test:o,...s}=BN(n.condition,t);n.condition=r?n.condition:{...s,test:ay(n.condition,t)}}return n}function UN(e){const t=e.extent;if(t?.selection){const{selection:n,...i}=t;return{...e,extent:{...i,param:n}}}return e}function ay(e,t){const n=i=>Ia(i,r=>{const o=t.emptySelections[r]??!0,s={param:r,empty:o};return t.selectionPredicates[r]??=[],t.selectionPredicates[r].push(s),s});return e.selection?n(e.selection):Ia(e.test||e.filter,i=>i.selection?n(i.selection):i)}class uy extends N2{map(t,n){const i=n.selections??[];if(t.params&&!no(t)){const r=[];for(const o of t.params)F2(o)?i.push(o):r.push(o);t.params=r}return n.selections=i,super.map(t,n)}mapUnit(t,n){const i=n.selections;if(!i||!i.length)return t;const r=(n.path??[]).concat(t.name),o=[];for(const s of i)if(!s.views||!s.views.length)o.push(s);else for(const a of s.views)(Y(a)&&(a===t.name||r.includes(a))||z(a)&&a.map(u=>r.indexOf(u)).every((u,l,c)=>u!==-1&&(l===0||u>c[l-1])))&&o.push(s);return o.length&&(t.params=o),t}}for(const e of["mapFacet","mapRepeat","mapHConcat","mapVConcat","mapLayer"]){const t=uy.prototype[e];uy.prototype[e]=function(n,i){return t.call(this,n,noe(n,i))}}function noe(e,t){return e.name?{...t,path:(t.path??[]).concat(e.name)}
13:t}function ioe(e,t){t===void 0&&(t=NN(e.config));const n=aoe(e,t),{width:i,height:r}=e,o=uoe(n,{width:i,height:r,autosize:e.autosize},t);return{...n,...o?{autosize:o}:{}}}const roe=new Rre,ooe=new toe,soe=new uy;function aoe(e,t={}){const n={config:t};return soe.map(roe.map(ooe.map(e,n),n),n)}function Fk(e){return Y(e)?{type:e}:e??{}}function uoe(e,t,n){let{width:i,height:r}=t;const o=no(e)||Ap(e),s={};o?i=="container"&&r=="container"?(s.type="fit",s.contains="padding"):i=="container"?(s.type="fit-x",s.contains="padding"):r=="container"&&(s.type="fit-y",s.contains="padding"):(i=="container"&&(I(tk("width")),i=void 0),r=="container"&&(I(tk("height")),r=void 0));const a={type:"pad",...s,...n?Fk(n.autosize):{},...Fk(e.autosize)};if(a.type==="fit"&&!o&&(I(ete),a.type="pad"),i=="container"&&!(a.type=="fit"||a.type=="fit-x")&&I(nk("width")),r=="container"&&!(a.type=="fit"||a.type=="fit-y")&&I(nk("height")),!In(a,{type:"pad"}))return a}function loe(e){return["fit","fit-x","fit-y"].includes(e)}function coe(e){return e?`fit-${lp(e)}`:"fit"}const foe=["background","padding"];function Dk(e,t){const n={};for(const i of foe)e&&e[i]!==void 0&&(n[i]=$n(e[i]));return t&&(n.params=e.params),n}class io{explicit;implicit;constructor(t={},n={}){this.explicit=t,this.implicit=n}clone(){return new io(se(this.explicit),se(this.implicit))}combine(){return{...this.explicit,...this.implicit}}get(t){return Ze(this.explicit[t],this.implicit[t])}getWithExplicit(t){return this.explicit[t]!==void 0?{explicit:!0,value:this.explicit[t]}:this.implicit[t]!==void 0?{explicit:!1,value:this.implicit[t]}:{explicit:!1,value:void 0}}setWithExplicit(t,{value:n,explicit:i}){n!==void 0&&this.set(t,n,i)}set(t,n,i){return delete this[i?"implicit":"explicit"][t],this[i?"explicit":"implicit"][t]=n,this}copyKeyFromSplit(t,{explicit:n,implicit:i}){n[t]!==void 0?this.set(t,n[t],!0):i[t]!==void 0&&this.set(t,i[t],!1)}copyKeyFromObject(t,n){n[t]!==void 0&&this.set(t,n[t],!0)}copyAll(t){for(const n of P(t.combine())){const i=t.getWithExplicit(n);this.setWithExplicit(n,i)}}}function Ri(e){return{explicit:!0,value:e}}function Sn(e){return{explicit:!1,value:e}}function jN(e){return(t,n,i,r)=>{const o=e(t.value,n.value);return o>0?t:o<0?n:Cp(t,n,i,r)}}function Cp(e,t,n,i){return e.explicit&&t.explicit&&I(qte(n,i,e.value,t.value)),e}function Oo(e,t,n,i,r=Cp){return e===void 0||e.value===void 0?t:e.explicit&&!t.explicit?e:t.explicit&&!e.explicit?t:In(e.value,t.value)?e:r(e,t,n,i)}class doe extends io{explicit;implicit;parseNothing;constructor(t={},n={},i=!1){super(t,n),this.explicit=t,this.implicit=n,this.parseNothing=i}clone(){const t=super.clone();return t.parseNothing=this.parseNothing,t}}function pu(e){return L(e,"url")}function mc(e){return L(e,"values")}function qN(e){return L(e,"name")&&!pu(e)&&!mc(e)&&!So(e)}function So(e){return e&&(WN(e)||HN(e)||O2(e))}function WN(e){return L(e,"sequence")}function HN(e){return L(e,"sphere")}function O2(e){return L(e,"graticule")}var qe;(function(e){e[e.Raw=0]="Raw",e[e.Main=1]="Main",e[e.Row=2]="Row",e[e.Column=3]="Column",e[e.Lookup=4]="Lookup",e[e.PreFilterInvalid=5]="PreFilterInvalid",e[e.PostFilterInvalid=6]="PostFilterInvalid"})(qe||(qe={}));function GN({invalid:e,isPath:t}){switch(jT(e,{isPath:t})){case"filter":return{marks:"exclude-invalid-values",scales:"exclude-invalid-values"};case"break-paths-show-domains":return{marks:t?"include-invalid-values":"exclude-invalid-values",scales:"include-invalid-values"};case"break-paths-filter-domains":return{marks:t?"include-invalid-values":"exclude-invalid-values",scales:"exclude-invalid-values"};case"show":return{marks:"include-invalid-values",scales:"include-invalid-values"}}}function hoe(e){const{marks:t,scales:n}=GN(e);return t===n?qe.Main:n==="include-invalid-values"?qe.PreFilterInvalid:qe.PostFilterInvalid}class Me{debugName;_children=[];_parent=null;_hash;constructor(t,n){this.debugName=n,t&&(this.parent=t)}clone(){throw new Error("Cannot clone node")}get parent(){return this._parent}set parent(t){this._parent=t,t&&t.addChild(this)}get children(){return this._children}numChildren(){return this._children.length}addChild(t,n){if(this._children.includes(t)){I(yte);return}n!==void 0?this._children.splice(n,0,t):this._children.push(t)}removeChild(t){const n=this._children.indexOf(t);return this._children.splice(n,1),n}remove(){let t=this._parent.removeChild(this);for(const n of this._children)n._parent=this._parent,this._parent.addChild(n,t++)}insertAsParentOf(t){const n=t.parent;n.removeChild(this),this.parent=n,t.parent=this}swapWithParent(){const t=this._parent,n=t.parent;for(const r of this._children)r.parent=t;this._children=[],t.removeChild(this);const i=t.parent.removeChild(t);this._parent=n,n.addChild(this,i),t.parent=this}}class pn extends Me{type;refCounts;_source;_name;clone(){const t=new this.constructor;return t.debugName=`clone_${this.debugName}`,t._source=this._source,t._name=`clone_${this._name}
13`,t.type=this.type,t.refCounts=this.refCounts,t.refCounts[t._name]=0,t}constructor(t,n,i,r){super(t,n),this.type=i,this.refCounts=r,this._source=this._name=n,this.refCounts&&!(this._name in this.refCounts)&&(this.refCounts[this._name]=0)}dependentFields(){return new Set}producedFields(){return new Set}hash(){return this._hash===void 0&&(this._hash=`Output ${bee()}`),this._hash}getSource(){return this.refCounts[this._name]++,this._source}isRequired(){return!!this.refCounts[this._name]}setSource(t){this._source=t}}function s0(e){return e.as!==void 0}function Tk(e){return`${e}_end`}class qi extends Me{timeUnits;clone(){return new qi(null,se(this.timeUnits))}constructor(t,n){super(t),this.timeUnits=n}static makeFromEncoding(t,n){const i=n.reduceFieldDef((r,o,s)=>{const{field:a,timeUnit:u}=o;if(u){let l;if(da(u)){if(Ue(n)){const{mark:c,markDef:f,config:d}=n,h=Ro({fieldDef:o,markDef:f,config:d});(pc(c)||h)&&(l={timeUnit:mt(u),field:a})}}else l={as:W(o,{forAs:!0}),field:a,timeUnit:u};if(Ue(n)){const{mark:c,markDef:f,config:d}=n,h=Ro({fieldDef:o,markDef:f,config:d});pc(c)&&Ke(s)&&h!==.5&&(l.rectBandPosition=h)}l&&(r[me(l)]=l)}return r},{});return Re(i)?null:new qi(t,i)}static makeFromTransform(t,n){const{timeUnit:i,...r}={...n},o=mt(i),s={...r,timeUnit:o};return new qi(t,{[me(s)]:s})}merge(t){this.timeUnits={...this.timeUnits};for(const n in t.timeUnits)this.timeUnits[n]||(this.timeUnits[n]=t.timeUnits[n]);for(const n of t.children)t.removeChild(n),n.parent=this;t.remove()}removeFormulas(t){const n={};for(const[i,r]of js(this.timeUnits)){const o=s0(r)?r.as:`${r.field}_end`;t.has(o)||(n[i]=r)}this.timeUnits=n}producedFields(){return new Set(nt(this.timeUnits).map(t=>s0(t)?t.as:Tk(t.field)))}dependentFields(){return new Set(nt(this.timeUnits).map(t=>t.field))}hash(){return`TimeUnit ${me(this.timeUnits)}`}assemble(){const t=[];for(const n of nt(this.timeUnits)){const{rectBandPosition:i}=n,r=mt(n.timeUnit);if(s0(n)){const{field:o,as:s}=n,{unit:a,utc:u,...l}=r,c=[s,`${s}_end`];t.push({field:mi(o),type:"timeunit",...a?{units:hp(a)}:{},...u?{timezone:"utc"}:{},...l,as:c}),t.push(...Nk(c,i,r))}else if(n){const{field:o}=n,s=o.replaceAll("\\.","."),a=VN({timeUnit:r,field:s}),u=Tk(s);t.push({type:"formula",expr:a,as:u}),t.push(...Nk([s,u],i,r))}}return t}}const Mp="offsetted_rect_start",Fp="offsetted_rect_end";function VN({timeUnit:e,field:t,reverse:n}){const{unit:i,utc:r}=e,o=ET(i),{part:s,step:a}=CT(o,e.step);return`${r?"utcOffset":"timeOffset"}('${s}', ${Fe(t)}, ${n?-a:a})`}function Nk([e,t],n,i){if(n!==void 0&&n!==.5){const r=Fe(e),o=Fe(t);return[{type:"formula",expr:Rk([VN({timeUnit:i,field:e,reverse:!0}),r],n+.5),as:`${e}_${Mp}`},{type:"formula",expr:Rk([r,o],n+.5),as:`${e}_${Fp}`}]}return[]}function Rk([e,t],n){return`${1-n} * ${e} + ${n} * ${t}`}const af="_tuple_fields";class goe{hasChannel;hasField;hasSelectionId;timeUnit;items;constructor(...t){this.items=t,this.hasChannel={},this.hasField={},this.hasSelectionId=!1}}const poe={defined:()=>!0,parse:(e,t,n)=>{const i=t.name,r=t.project??=new goe,o={},s={},a=new Set,u=(g,p)=>{const m=p==="visual"?g.channel:g.field;let y=je(`${i}_${m}`);for(let x=1;a.has(y);x++)y=je(`${i}_${m}_${x}`);return a.add(y),{[p]:y}},l=t.type,c=e.config.selection[l],f=n.value!==void 0?H(n.value):null;let{fields:d,encodings:h}=V(n.select)?n.select:{};if(!d&&!h&&f){for(const g of f)if(V(g))for(const p of P(g))Aee(p)?(h||(h=[])).push(p):l==="interval"?(I(cte),h=c.encodings):(d??=[]).push(p)}!d&&!h&&(h=c.encodings,"fields"in c&&(d=c.fields));for(const g of h??[]){const p=e.fieldDef(g);if(p){let m=p.field;if(p.aggregate){I(tte(g,p.aggregate));continue}else if(!m){I(rk(g));continue}if(p.timeUnit&&!da(p.timeUnit)){m=e.vgField(g);const y={timeUnit:p.timeUnit,as:m,field:p.field};s[me(y)]=y}if(!o[m]){const y=l==="interval"&&fr(g)&&yi(e.getScaleComponent(g).get("type"))?"R":p.bin?"R-RE":"E",x={field:m,channel:g,type:y,index:r.items.length};x.signals={...u(x,"data"),...u(x,"visual")},r.items.push(o[m]=x),r.hasField[m]=o[m],r.hasSelectionId=r.hasSelectionId||m===vi,X5(g)?(x.geoChannel=g,x.channel=Y5(g),r.hasChannel[x.channel]=o[m]):r.hasChannel[g]=o[m]}}else I(rk(g))}for(const g of d??[]){if(r.hasField[g])continue;const p={type:"E",field:g,index:r.items.length};p.signals={...u(p,"data")},r.items.push(p),r.hasField[g]=p,r.hasSelectionId=r.hasSelectionId||g===vi}f&&(t.init=f.map(g=>r.items.map(p=>V(g)?g[p.geoChannel||p.channel]!==void 0?g[p.geoChannel||p.channel]:g[p.field]:g))),Re(s)||(r.timeUnit=new qi(null,s))},signals:(e,t,n)=>{const i=t.name+af;return n.filter(o=>o.name===i).length>0||t.project.hasSelectionId?n:n.concat({name:i,value:t.project.items.map(ZN)})}},YN="_curr",vd="anim_value",Fa="anim_clock",ly="eased_anim_clock",XN="min_extent",KN="max_range_extent",a0="last_tick_at",u0="is_playing",moe=1/60*1e3,yoe=(e,t)=>[{name:ly,update:Fa},{name:`${e}_domain`,init:`domain('${t}')`},{name:XN,init:`extent(${e}_domain)[0]`},{name:KN,init:`extent(range('${t}'))[1]`},{name:vd,update:`invert('${t}', ${ly})`}],xoe={defined:e=>e.type==="point",topLevelSignals:(e,t,n)=>(Wi(t)&&(n=n.concat([{name:Fa,init:"0",on:[{events:{type:"timer",throttle:moe},update:`${u0} ? (${Fa} + (now() - ${a0}) > ${KN} ? 0 : ${Fa} + (now() - ${a0})) : ${Fa}`}]},{name:a0,init:"now()",on:[{events:[{signal:Fa},{signal:u0}],update:"now()"}]},{name:u0,init:"true"}])),n),signals:(e,t,n)=>{const i=t.name,r=i+af,o=t.project,s="(item().isVoronoi ? datum.datum : datum)",a=nt(e.component.selection??{}).reduce((c,f)=>f.type==="interval"?c.concat(f.name+ja):c,[]).map(c=>`indexof(item().mark.name, '${c}') < 0`).join(" && "),u=`datum && item().mark.marktype !== 'group' && indexof(item().mark.role, 'legend') < 0${a?` && ${a}`:""}`;let l=`unit: ${As(e)}, `;if(t.project.hasSelectionId)l+=`${vi}: ${s}[${j(vi)}]`;else if(Wi(t))l+=`fields: ${r}, values: [${vd} ? ${vd} : ${XN}]`;else{const c=o.items.map(f=>e.fieldDef(f.channel)?.bin?`[${s}[${j(e.vgField(f.channel,{}))}], ${s}[${j(e.vgField(f.channel,{binSuffix:"end"}))}]]`:`${s}[${j(f.field)}]`).join(", ");l+=`fields: ${r}, values: [${c}]`}if(Wi(t))return n.concat(yoe(t.name,e.scaleName(Wo)),[{name:i+Vr,on:[{events:[{signal:ly},{signal:vd}],update:`{${l}}`,force:!0}]}]);
13{const c=t.events;return n.concat([{name:i+Vr,on:c?[{events:c,update:`${u} ? {${l}} : null`,force:!0}]:[]}])}}};function ZN(e){const{signals:t,hasLegend:n,index:i,...r}=e;return r.field=mi(r.field),r}function Xs(e,t=!0,n=nn){if(z(e)){const i=e.map(r=>Xs(r,t,n));return t?`[${i.join(", ")}]`:i}else if(fa(e))return n(t?Hs(e):gne(e));return t?n(Ae(e)):e}function boe(e,t){for(const n of nt(e.component.selection??{})){const i=n.name;let r=`${i}${Vr}, ${n.resolve==="global"?"true":`{unit: ${As(e)}}`}`;for(const o of Tp)o.defined(n)&&(o.signals&&(t=o.signals(e,n,t)),o.modifyExpr&&(r=o.modifyExpr(e,n,r)));t.push({name:i+Goe,on:[{events:{signal:n.name+Vr},update:`modify(${j(n.name+Ks)}, ${r})`}]})}return z2(t)}function voe(e,t){if(e.component.selection&&P(e.component.selection).length){const n=j(e.getName("cell"));t.unshift({name:"facet",value:{},on:[{events:ra("pointermove","scope"),update:`isTuple(facet) ? facet : group(${n}).datum`}]})}return z2(t)}function woe(e,t){let n=!1;for(const i of nt(e.component.selection??{})){const r=i.name,o=j(r+Ks);if(t.filter(a=>a.name===r).length===0){const a=i.resolve==="global"?"union":i.resolve,u=i.type==="point"?", true, true)":")";t.push({name:i.name,update:`${gR}(${o}, ${j(a)}${u}`})}n=!0;for(const a of Tp)a.defined(i)&&a.topLevelSignals&&(t=a.topLevelSignals(e,i,t))}return n&&t.filter(r=>r.name==="unit").length===0&&t.unshift({name:"unit",value:{},on:[{events:"pointermove",update:"isTuple(group()) ? group() : unit"}]}),z2(t)}function _oe(e,t){const n=[],i=[],r=As(e,{escape:!1});for(const o of nt(e.component.selection??{})){const s={name:o.name+Ks};if(o.project.hasSelectionId&&(s.transform=[{type:"collect",sort:{field:vi}}]),o.init){const u=o.project.items.map(ZN);s.values=o.project.hasSelectionId?o.init.map(l=>({unit:r,[vi]:Xs(l,!1)[0]})):o.init.map(l=>({unit:r,fields:u,values:Xs(l,!1)}))}if([...n,...t].filter(u=>u.name===o.name+Ks).length||n.push(s),Wi(o)&&t.length){const u=e.lookupDataSource(e.getDataName(qe.Main)),l=t.find(f=>f.name===u),c=l.transform.find(f=>f.type==="filter"&&f.expr.includes("vlSelectionTest"));if(c){l.transform=l.transform.filter(d=>d!==c);const f={name:l.name+YN,source:l.name,transform:[c]};i.push(f)}}}return n.concat(t,i)}function QN(e,t){for(const n of nt(e.component.selection??{}))for(const i of Tp)i.defined(n)&&i.marks&&(t=i.marks(e,n,t));return t}function Soe(e,t){for(const n of e.children)Ue(n)&&(t=QN(n,t));return t}function Eoe(e,t,n,i){const r=bR(e,t.param,t);return{signal:yi(n.get("type"))&&z(i)&&i[0]>i[1]?`isValid(${r}) && reverse(${r})`:r}}function z2(e){return e.map(t=>(t.on&&!t.on.length&&delete t.on,t))}const Pr={defined:e=>e.type==="interval"&&e.resolve==="global"&&e.bind&&e.bind==="scales",parse:(e,t)=>{const n=t.scales=[];for(const i of t.project.items){const r=i.channel;if(!fr(r))continue;const o=e.getScaleComponent(r),s=o?o.get("type"):void 0;if(s=="sequential"&&I(ote),!o||!yi(s)){I(rte);continue}o.set("selectionExtent",{param:t.name,field:i.field},!0),n.push(i)}},topLevelSignals:(e,t,n)=>{const i=t.scales.filter(s=>n.filter(a=>a.name===s.signals.data).length===0);if(!e.parent||fy(e)||i.length===0)return n;const r=n.find(s=>s.name===t.name);let o=r.update;if(o.includes(gR))r.update=`{${i.map(s=>`${j(mi(s.field))}: ${s.signals.data}`).join(", ")}}`;else{for(const s of i){const a=`${j(mi(s.field))}: ${s.signals.data}`;o.includes(a)||(o=`${o.substring(0,o.length-1)}, ${a}}`)}r.update=o}return n.concat(i.map(s=>({name:s.signals.data})))},signals:(e,t,n)=>{if(e.parent&&!fy(e))for(const i of t.scales){const r=n.find(o=>o.name===i.signals.data);r.push="outer",delete r.value,delete r.update}return n}};function cy(e,t){return`domain(${j(e.scaleName(t))})`}function fy(e){return e.parent&&Bu(e.parent)&&(!e.parent.parent||fy(e.parent.parent))}const ja="_brush",JN="_scale_trigger",sl="geo_interval_init_tick",eR="_init",koe="_center",$oe={defined:e=>e.type==="interval",parse:(e,t,n)=>{if(e.hasProjection){const i={...V(n.select)?n.select:{}};i.fields=[vi],i.encodings||(i.encodings=n.value?P(n.value):[Ai,$i]),n.select={type:"interval",...i}}if(t.translate&&!Pr.defined(t)){const i=`!event.item || event.item.mark.name !== ${j(t.name+ja)}`;for(const r of t.events){if(!r.between){I(`${r} is not an ordered event stream for interval selections.`);continue}const o=H(r.between[0].filter??=[]);o.includes(i)||o.push(i)}}},signals:(e,t,n)=>{const i=t.name,r=i+Vr,o=nt(t.project.hasChannel).filter(a=>a.channel===Ie||a.channel===bt),s=t.init?t.init[0]:null;if(n.push(...o.reduce((a,u)=>a.concat(Aoe(e,t,u,s?.[u.index])),[])),e.hasProjection){const a=j(e.projectionName()),u=e.projectionName()+koe,{x:l,y:c}=t.project.hasChannel,f=l?.signals.visual,d=c?.signals.visual,h=l?s?.[l.index]:`${u}[0]`,g=c?s?.[c.index]:`${u}[1]`,p=w=>e.getSizeSignalRef(w).signal,m=`[[${f?`${f}[0]`:"0"}, ${d?`${d}[0]`:"0"}],[${f?`${f}[1]`:p("width")}, ${d?`${d}[1]`:p("height")}]]`;s&&(n.unshift({name:i+eR,init:`[scale(${a}, [${l?h[0]:h}, ${c?g[0]:g}]), scale(${a}, [${l?h[1]:h}, ${c?g[1]:g}])]`}),(!l||!c)&&(n.find(S=>S.name===u)||n.unshift({name:u,update:`invert(${a}, [${p("width")}/2, ${p("height")}/2])`})));const y=`intersect(${m}, {markname: ${j(e.getName("marks"))}}, unit.mark)`,x=`{unit: ${As(e)}}`,b=`vlSelectionTuples(${y}, ${x})`,v=o.map(w=>w.signals.visual);return n.concat({name:r,on:[{events:[...v.length?[{signal:v.join(" || ")}]:[],...s?[{signal:sl}]:[]],update:b}]})}else{if(!Pr.defined(t)){const l=i+JN,c=o.map(f=>{const d=f.channel,{data:h,visual:g}=f.signals,p=j(e.scaleName(d)),m=e.getScaleComponent(d).get("type"),y=yi(m)?"+":"";return`(!isArray(${h}) || (${y}invert(${p}, ${g})[0] === ${y}${h}[0] && ${y}invert(${p}, ${g})[1] === ${y}${h}[1]))`});c.length&&n.push({name:l,value:{},on:[{events:o.map(f=>({scale:e.scaleName(f.channel)})),update:`${c.join(" && ")} ? ${l} : {}`}]})}
13const a=o.map(l=>l.signals.data),u=`unit: ${As(e)}, fields: ${i+af}, values`;return n.concat({name:r,...s?{init:`{${u}: ${Xs(s)}}`}:{},...a.length?{on:[{events:[{signal:a.join(" || ")}],update:`${a.join(" && ")} ? {${u}: [${a}]} : null`}]}:{}})}},topLevelSignals:(e,t,n)=>(Ue(e)&&e.hasProjection&&t.init&&(n.filter(r=>r.name===sl).length||n.unshift({name:sl,value:null,on:[{events:"timer{1}",update:`${sl} === null ? {} : ${sl}`}]})),n),marks:(e,t,n)=>{const i=t.name,{x:r,y:o}=t.project.hasChannel,s=r?.signals.visual,a=o?.signals.visual,u=`data(${j(t.name+Ks)})`;if(Pr.defined(t)||!r&&!o)return n;const l={x:r!==void 0?{signal:`${s}[0]`}:{value:0},y:o!==void 0?{signal:`${a}[0]`}:{value:0},x2:r!==void 0?{signal:`${s}[1]`}:{field:{group:"width"}},y2:o!==void 0?{signal:`${a}[1]`}:{field:{group:"height"}}};if(t.resolve==="global")for(const m of P(l))l[m]=[{test:`${u}.length && ${u}[0].unit === ${As(e)}`,...l[m]},{value:0}];const{fill:c,fillOpacity:f,cursor:d,...h}=t.mark,g=P(h).reduce((m,y)=>(m[y]=[{test:[r!==void 0&&`${s}[0] !== ${s}[1]`,o!==void 0&&`${a}[0] !== ${a}[1]`].filter(x=>x).join(" && "),value:h[y]},{value:null}],m),{}),p=d??(t.translate?"move":null);return[{name:`${i+ja}_bg`,type:"rect",clip:!0,encode:{enter:{fill:{value:c},fillOpacity:{value:f}},update:l}},...n,{name:i+ja,type:"rect",clip:!0,encode:{enter:{...p?{cursor:{value:p}}:{},fill:{value:"transparent"}},update:{...l,...g}}}]}};function Aoe(e,t,n,i){const r=!e.hasProjection,o=n.channel,s=n.signals.visual,a=j(r?e.scaleName(o):e.projectionName()),u=d=>`scale(${a}, ${d})`,l=e.getSizeSignalRef(o===Ie?"width":"height").signal,c=`${o}(unit)`,f=t.events.reduce((d,h)=>[...d,{events:h.between[0],update:`[${c}, ${c}]`},{events:h,update:`[${s}[0], clamp(${c}, 0, ${l})]`}],[]);if(r){const d=n.signals.data,h=Pr.defined(t),g=e.getScaleComponent(o),p=g?g.get("type"):void 0,m=i?{init:Xs(i,!0,u)}:{value:[]};return f.push({events:{signal:t.name+JN},update:yi(p)?`[${u(`${d}[0]`)}, ${u(`${d}[1]`)}]`:"[0, 0]"}),h?[{name:d,on:[]}]:[{name:s,...m,on:f},{name:d,...i?{init:Xs(i)}:{},on:[{events:{signal:s},update:`${s}[0] === ${s}[1] ? null : invert(${a}, ${s})`}]}]}else{const d=o===Ie?0:1,h=t.name+eR,g=i?{init:`[${h}[0][${d}], ${h}[1][${d}]]`}:{value:[]};return[{name:s,...g,on:f}]}}function zu({model:e,channelDef:t,vgChannel:n,invalidValueRef:i,mainRefFn:r}){const o=nf(t)&&t.condition;let s=[];o&&(s=H(o).map(l=>{const c=r(l);if(hie(l)){const{param:f,empty:d}=l;return{test:xR(e,{param:f,empty:d}),...c}}else return{test:Yh(e,l.test),...c}})),i!==void 0&&s.push(i);const a=r(t);return a!==void 0&&s.push(a),s.length>1||s.length===1&&s[0].test?{[n]:s}:s.length===1?{[n]:s[0]}:{}}function P2(e,t="text"){const n=e.encoding[t];return zu({model:e,channelDef:n,vgChannel:t,mainRefFn:i=>Dp(i,e.config),invalidValueRef:void 0})}function Dp(e,t,n="datum"){if(e){if(xi(e))return Pe(e.value);if(ae(e)){const{format:i,formatType:r}=jh(e);return y2({fieldOrDatumDef:e,format:i,formatType:r,expr:n,config:t})}}}function tR(e,t={}){const{encoding:n,markDef:i,config:r,stack:o}=e,s=n.tooltip;if(z(s))return{tooltip:Ok({tooltip:s},o,r,t)};{const a=t.reactiveGeom?"datum.datum":"datum";return zu({model:e,channelDef:s,vgChannel:"tooltip",mainRefFn:l=>{const c=Dp(l,r,a);if(c)return c;if(l===null)return;let f=De("tooltip",i,r);if(f===!0&&(f={content:"encoding"}),Y(f))return{value:f};if(V(f))return ee(f)?f:f.content==="encoding"?Ok(n,o,r,t):{signal:a}},invalidValueRef:void 0})}}function nR(e,t,n,{reactiveGeom:i}={}){const r={...n,...n.tooltipFormat},o=new Set,s=i?"datum.datum":"datum",a=[];function u(c,f){const d=ua(f),h=an(c)?c:{...c,type:e[d].type},g=h.title||w2(h,r),p=H(g).join(", ").replaceAll(/"/g,'\\"');let m;if(Ke(f)){const y=f==="x"?"x2":"y2",x=bi(e[y]);if(_t(h.bin)&&x){const b=W(h,{expr:s}),v=W(x,{expr:s}),{format:w,formatType:S}=jh(h);m=ef(b,v,w,S,r),o.add(y)}}if((Ke(f)||f===Zn||f===ki)&&t&&t.fieldChannel===f&&t.offset==="normalize"){const{format:y,formatType:x}=jh(h);m=y2({fieldOrDatumDef:h,format:y,formatType:x,expr:s,config:r,normalizeStack:!0}).signal}m??=Dp(h,r,s).signal,a.push({channel:f,key:p,value:m})}S2(e,(c,f)=>{U(c)?u(c,f):wp(c)&&u(c.condition,f)});const l={};for(const{channel:c,key:f,value:d}of a)!o.has(c)&&!l[f]&&(l[f]=d);return l}function Ok(e,t,n,{reactiveGeom:i}={}){const r=nR(e,t,n,{reactiveGeom:i}),o=js(r).map(([s,a])=>`"${s}": ${a}`);return o.length>0?{signal:`{${o.join(", ")}}`}:void 0}function Coe(e){const{markDef:t,config:n}=e,i=De("aria",t,n);return i===!1?{}:{...i?{aria:i}:{},...Moe(e),...Foe(e)}}function Moe(e){const{mark:t,markDef:n,config:i}=e;if(i.aria===!1)return{};const r=De("ariaRoleDescription",n,i);return r!=null?{ariaRoleDescription:{value:r}}:X(Kee,t)?{}:{ariaRoleDescription:{value:t}}}function Foe(e){const{encoding:t,markDef:n,config:i,stack:r}=e,o=t.description;if(o)return zu({model:e,channelDef:o,vgChannel:"description",mainRefFn:u=>Dp(u,e.config),invalidValueRef:void 0});const s=De("description",n,i);if(s!=null)return{description:Pe(s)};if(i.aria===!1)return{};const a=nR(t,r,i);if(!Re(a))return{description:{signal:js(a).map(([u,l],c)=>`"${c>0?"; ":""}${u}: " + (${l})`).join(" + ")}}}function kt(e,t,n={}){const{markDef:i,encoding:r,config:o}=t,{vgChannel:s}=n;let{defaultRef:a,defaultValue:u}=n;const l=r[e];a===void 0&&(u??=De(e,i,o,{vgChannel:s,ignoreVgConfig:!nf(l)}),u!==void 0&&(a=Pe(u)));const c={markDef:i,config:o,scaleName:t.scaleName(e),scale:t.getScaleComponent(e)},f=WT({...c,scaleChannel:e,channelDef:l});
13return zu({model:t,channelDef:l,vgChannel:s??e,invalidValueRef:f,mainRefFn:h=>m2({...c,channel:e,channelDef:h,stack:null,defaultRef:a})})}function iR(e,t={filled:void 0}){const{markDef:n,encoding:i,config:r}=e,{type:o}=n,s=t.filled??De("filled",n,r),a=ge(["bar","point","circle","square","geoshape"],o)?"transparent":void 0,u=De(s===!0?"color":void 0,n,r,{vgChannel:"fill"})??r.mark[s===!0&&"color"]??a,l=De(s===!1?"color":void 0,n,r,{vgChannel:"stroke"})??r.mark[s===!1&&"color"],c=s?"fill":"stroke",f={...u?{fill:Pe(u)}:{},...l?{stroke:Pe(l)}:{}};return n.color&&(s?n.fill:n.stroke)&&I(pT("property",{fill:"fill"in n,stroke:"stroke"in n})),{...f,...kt("color",e,{vgChannel:c,defaultValue:s?u:l}),...kt("fill",e,{defaultValue:i.fill?u:void 0}),...kt("stroke",e,{defaultValue:i.stroke?l:void 0})}}function Doe(e){const{encoding:t,mark:n}=e,i=t.order;return!Ko(n)&&xi(i)?zu({model:e,channelDef:i,vgChannel:"zindex",mainRefFn:r=>Pe(r.value),invalidValueRef:void 0}):{}}function mu({channel:e,markDef:t,encoding:n={},model:i,bandPosition:r}){const o=`${e}Offset`,s=t[o],a=n[o];if((o==="xOffset"||o==="yOffset")&&a)return{offsetType:"encoding",offset:m2({channel:o,channelDef:a,markDef:t,config:i?.config,scaleName:i.scaleName(o),scale:i.getScaleComponent(o),stack:null,defaultRef:Pe(s),bandPosition:r})};const u=t[o];return u?{offsetType:"visual",offset:u}:{}}function Zt(e,t,{defaultPos:n,vgChannel:i}){const{encoding:r,markDef:o,config:s,stack:a}=t,u=r[e],l=r[cr(e)],c=t.scaleName(e),f=t.getScaleComponent(e),{offset:d,offsetType:h}=mu({channel:e,markDef:o,encoding:r,model:t,bandPosition:.5}),g=L2({model:t,defaultPos:n,channel:e,scaleName:c,scale:f}),p=!u&&Ke(e)&&(r.latitude||r.longitude)?{field:t.getName(e)}:Toe({channel:e,channelDef:u,channel2Def:l,markDef:o,config:s,scaleName:c,scale:f,stack:a,offset:d,defaultRef:g,bandPosition:h==="encoding"?0:void 0});return p?{[i||e]:p}:void 0}function Toe(e){const{channel:t,channelDef:n,scaleName:i,stack:r,offset:o,markDef:s}=e;if(ae(n)&&r&&t===r.fieldChannel){if(U(n)){let a=n.bandPosition;if(a===void 0&&s.type==="text"&&(t==="radius"||t==="theta")&&(a=.5),a!==void 0)return Ih({scaleName:i,fieldOrDatumDef:n,startSuffix:"start",bandPosition:a,offset:o})}return ks(n,i,{suffix:"end"},{offset:o})}return p2(e)}function L2({model:e,defaultPos:t,channel:n,scaleName:i,scale:r}){const{markDef:o,config:s}=e;return()=>{const a=ua(n),u=No(n),l=De(n,o,s,{vgChannel:u});if(l!==void 0)return jl(n,l);switch(t){case"zeroOrMin":return zk({scaleName:i,scale:r,mode:"zeroOrMin",mainChannel:a,config:s});case"zeroOrMax":return zk({scaleName:i,scale:r,mode:{zeroOrMax:{widthSignal:e.width.signal,heightSignal:e.height.signal}},mainChannel:a,config:s});case"mid":return{...e[bn(n)],mult:.5}}}}function zk({mainChannel:e,config:t,...n}){const i=qT(n),{mode:r}=n;if(i)return i;switch(e){case"radius":{if(r==="zeroOrMin")return{value:0};const{widthSignal:o,heightSignal:s}=r.zeroOrMax;return{signal:`min(${o},${s})/2`}}case"theta":return r==="zeroOrMin"?{value:0}:{signal:"2*PI"};case"x":return r==="zeroOrMin"?{value:0}:{field:{group:"width"}};case"y":return r==="zeroOrMin"?{field:{group:"height"}}:{value:0}}}const Noe={left:"x",center:"xc",right:"x2"},Roe={top:"y",middle:"yc",bottom:"y2"};function rR(e,t,n,i="middle"){if(e==="radius"||e==="theta")return No(e);const r=e==="x"?"align":"baseline",o=De(r,t,n);let s;return ee(o)?(I(Tte(r)),s=void 0):s=o,e==="x"?Noe[s||(i==="top"?"left":"center")]:Roe[s||i]}function Gh(e,t,{defaultPos:n,defaultPos2:i,range:r}){return r?oR(e,t,{defaultPos:n,defaultPos2:i}):Zt(e,t,{defaultPos:n})}function oR(e,t,{defaultPos:n,defaultPos2:i}){const{markDef:r,config:o}=t,s=cr(e),a=bn(e),u=Ooe(t,i,s),l=u[a]?rR(e,r,o):No(e);return{...Zt(e,t,{defaultPos:n,vgChannel:l}),...u}}function Ooe(e,t,n){const{encoding:i,mark:r,markDef:o,stack:s,config:a}=e,u=ua(n),l=bn(n),c=No(n),f=i[u],d=e.scaleName(u),h=e.getScaleComponent(u),{offset:g}=n in i||n in o?mu({channel:n,markDef:o,encoding:i,model:e}):mu({channel:u,markDef:o,encoding:i,model:e});if(!f&&(n==="x2"||n==="y2")&&(i.latitude||i.longitude)){const m=bn(n),y=e.markDef[m];return y!=null?{[m]:{value:y}}:{[c]:{field:e.getName(n)}}}const p=zoe({channel:n,channelDef:f,channel2Def:i[n],markDef:o,config:a,scaleName:d,scale:h,stack:s,offset:g,defaultRef:void 0});return p!==void 0?{[c]:p}:Wf(n,o)||Wf(n,{[n]:Q1(n,o,a.style),[l]:Q1(l,o,a.style)})||Wf(n,a[r])||Wf(n,a.mark)||{[c]:L2({model:e,defaultPos:t,channel:n,scaleName:d,scale:h})()}}function zoe({channel:e,channelDef:t,channel2Def:n,markDef:i,config:r,scaleName:o,scale:s,stack:a,offset:u,defaultRef:l}){return ae(t)&&a&&e.charAt(0)===a.fieldChannel.charAt(0)?ks(t,o,{suffix:"start"},{offset:u}):p2({channel:e,channelDef:n,scaleName:o,scale:s,stack:a,markDef:i,config:r,offset:u,defaultRef:l})}function Wf(e,t){const n=bn(e),i=No(e);if(t[i]!==void 0)return{[i]:jl(e,t[i])};if(t[e]!==void 0)return{[i]:jl(e,t[e])};if(t[n]){const r=t[n];if(Vs(r))I($te(n));else return{[n]:jl(e,r)}}}function Gr(e,t){const{config:n,encoding:i,markDef:r}=e,o=r.type,s=cr(t),a=bn(t),u=i[t],l=i[s],c=e.getScaleComponent(t),f=c?c.get("type"):void 0,d=r.orient,h=i[a]??i.size??De("size",r,n,{vgChannel:a}),g=J5(t),p=o==="bar"&&(t==="x"?d==="vertical":d==="horizontal")||o==="tick"&&(t==="y"?d==="vertical":d==="horizontal");return U(u)&&(Oe(u.bin)||_t(u.bin)||u.timeUnit&&!l)&&!(h&&!Vs(h))&&!i[g]&&!yt(f)?Ioe({fieldDef:u,fieldDef2:l,channel:t,model:e}):(ae(u)&&yt(f)||p)&&!l?Loe(u,t,e):oR(t,e,{defaultPos:"zeroOrMax",defaultPos2:"zeroOrMin"})}function Poe(e,t,n,i,r,o,s){if(Vs(r))if(n){const u=n.get("type");if(u==="band"){let l=`bandwidth('${t}')`;r.band!==1&&(l=`${r.band} * ${l}`);const c=Ji("minBandSize",{type:s},i);return{signal:c?`max(${li(c)}, ${l})`:l}}else r.band!==1&&(I(zte(u)),r=void 0)}else return{mult:r.band,field:{group:e}};else{if(ee(r))return r;if(r)return{value:r}}if(n){const u=n.get("range");if(ca(u)&&Ce(u.step))return{value:u.step-2}}if(!o){const{bandPaddingInner:u,barBandPaddingInner:l,rectBandPaddingInner:c,tickBandPaddingInner:f}
13=i.scale,d=Ze(u,s==="tick"?f:s==="bar"?l:c);if(ee(d))return{signal:`(1 - (${d.signal})) * ${e}`};if(Ce(d))return{signal:`${1-d} * ${e}`}}return{value:oy(i.view,e)-2}}function Loe(e,t,n){const{markDef:i,encoding:r,config:o,stack:s}=n,a=i.orient,u=n.scaleName(t),l=n.getScaleComponent(t),c=bn(t),f=cr(t),d=J5(t),h=n.scaleName(d),g=n.getScaleComponent(jv(t)),p=i.type==="tick"||a==="horizontal"&&t==="y"||a==="vertical"&&t==="x";let m;(r.size||i.size)&&(p?m=kt("size",n,{vgChannel:c,defaultRef:Pe(i.size)}):I(Bte(i.type)));const y=!!m,x=ZT({channel:t,fieldDef:e,markDef:i,config:o,scaleType:(l||g)?.get("type"),useVlSizeChannel:p});m=m||{[c]:Poe(c,h||u,g||l,o,x,!!e,i.type)};const b=(l||g)?.get("type")==="band"&&Vs(x)&&!y?"top":"middle",v=rR(t,i,o,b),w=v==="xc"||v==="yc",{offset:S,offsetType:_}=mu({channel:t,markDef:i,encoding:r,model:n,bandPosition:w?.5:0}),E=p2({channel:t,channelDef:e,markDef:i,config:o,scaleName:u,scale:l,stack:s,offset:S,defaultRef:L2({model:n,defaultPos:"mid",channel:t,scaleName:u,scale:l}),bandPosition:w?_==="encoding"?0:.5:ee(x)?{signal:`(1-${x})/2`}:Vs(x)?(1-x.band)/2:0});if(c)return{[v]:E,...m};{const k=No(f),A=m[c],$=S?{...A,offset:S}:A;return{[v]:E,[k]:z(E)?[E[0],{...E[1],offset:$}]:{...E,offset:$}}}}function Pk(e,t,n,i,r,o,s){if(V5(e))return 0;const a=e==="x"||e==="y2",u=a?-t/2:t/2;if(ee(n)||ee(r)||ee(i)||o){const l=li(n),c=li(r),f=li(i),d=li(o),g=o?`(${s} < ${d} ? ${a?"":"-"}0.5 * (${d} - (${s})) : ${u})`:u,p=f?`${f} + `:"",m=l?`(${l} ? -1 : 1) * `:"",y=c?`(${c} + ${g})`:g;return{signal:p+m+y}}else return r=r||0,i+(n?-r-u:+r+u)}function Ioe({fieldDef:e,fieldDef2:t,channel:n,model:i}){const{config:r,markDef:o,encoding:s}=i,a=i.getScaleComponent(n),u=i.scaleName(n),l=a?a.get("type"):void 0,c=a.get("reverse"),f=ZT({channel:n,fieldDef:e,markDef:o,config:r,scaleType:l}),h=i.component.axes[n]?.[0]?.get("translate")??.5,g=Ke(n)?De("binSpacing",o,r)??0:0,p=cr(n),m=No(n),y=No(p),x=Ji("minBandSize",o,r),{offset:b}=mu({channel:n,markDef:o,encoding:s,model:i,bandPosition:0}),{offset:v}=mu({channel:p,markDef:o,encoding:s,model:i,bandPosition:0}),w=uie({fieldDef:e,scaleName:u}),S=Pk(n,g,c,h,b,x,w),_=Pk(p,g,c,h,v??b,x,w),E=ee(f)?{signal:`(1-${f.signal})/2`}:Vs(f)?(1-f.band)/2:.5,k=Ro({fieldDef:e,fieldDef2:t,markDef:o,config:r});if(Oe(e.bin)||e.timeUnit){const A=e.timeUnit&&k!==.5;return{[y]:Lk({fieldDef:e,scaleName:u,bandPosition:E,offset:_,useRectOffsetField:A}),[m]:Lk({fieldDef:e,scaleName:u,bandPosition:ee(E)?{signal:`1-${E.signal}`}:1-E,offset:S,useRectOffsetField:A})}}else if(_t(e.bin)){const A=ks(e,u,{},{offset:_});if(U(t))return{[y]:A,[m]:ks(t,u,{},{offset:S})};if(la(e.bin)&&e.bin.step)return{[y]:A,[m]:{signal:`scale("${u}", ${W(e,{expr:"datum"})} + ${e.bin.step})`,offset:S}}}I(xT(p))}function Lk({fieldDef:e,scaleName:t,bandPosition:n,offset:i,useRectOffsetField:r}){return Ih({scaleName:t,fieldOrDatumDef:e,bandPosition:n,offset:i,...r?{startSuffix:Mp,endSuffix:Fp}:{}})}const Boe=new Set(["aria","width","height"]);function Qn(e,t){const{fill:n=void 0,stroke:i=void 0}=t.color==="include"?iR(e):{};return{...Uoe(e.markDef,t),...Ik("fill",n),...Ik("stroke",i),...kt("opacity",e),...kt("fillOpacity",e),...kt("strokeOpacity",e),...kt("strokeWidth",e),...kt("strokeDash",e),...Doe(e),...tR(e),...P2(e,"href"),...Coe(e)}}function Ik(e,t){return t?{[e]:t}:{}}function Uoe(e,t){return Xee.reduce((n,i)=>(!Boe.has(i)&&L(e,i)&&t[i]!=="ignore"&&(n[i]=Pe(e[i])),n),{})}function I2(e){const{config:t,markDef:n}=e,i=new Set;if(e.forEachFieldDef((r,o)=>{let s;if(!fr(o)||!(s=e.getScaleType(o)))return;const a=cp(r.aggregate),u=g2({scaleChannel:o,markDef:n,config:t,scaleType:s,isCountAggregate:a});if(oie(u)){const l=e.vgField(o,{expr:"datum",binSuffix:e.stack?.impute?"mid":void 0});l&&i.add(l)}}),i.size>0)return{defined:{signal:[...i].map(o=>gp(o,!0)).join(" && ")}}}function Bk(e,t){if(t!==void 0)return{[e]:Pe(t)}}const l0="voronoi",sR={defined:e=>e.type==="point"&&e.nearest,parse:(e,t)=>{if(t.events)for(const n of t.events)n.markname=e.getName(l0)},marks:(e,t,n)=>{const{x:i,y:r}=t.project.hasChannel,o=e.mark;if(Ko(o))return I(nte(o)),n;const s={name:e.getName(l0),type:"path",interactive:!0,aria:!1,from:{data:e.getName("marks")},encode:{update:{fill:{value:"transparent"},strokeWidth:{value:.35},stroke:{value:"transparent"},isVoronoi:{value:!0},...tR(e,{reactiveGeom:!0})}},transform:[{type:"voronoi",x:{expr:i||!r?"datum.datum.x || 0":"0"},y:{expr:r||!i?"datum.datum.y || 0":"0"},size:[e.getSizeSignalRef("width"),e.getSizeSignalRef("height")]}]};let a=0,u=!1;
13return n.forEach((l,c)=>{const f=l.name??"";f===e.component.mark[0].name?a=c:f.includes(l0)&&(u=!0)}),u||n.splice(a+1,0,s),n}},aR={defined:e=>e.type==="point"&&e.resolve==="global"&&e.bind&&e.bind!=="scales"&&!M2(e.bind),parse:(e,t,n)=>pR(t,n),topLevelSignals:(e,t,n)=>{const i=t.name,r=t.project,o=t.bind,s=t.init?.[0],a=sR.defined(t)?"(item().isVoronoi ? datum.datum : datum)":"datum";return r.items.forEach((u,l)=>{const c=je(`${i}_${u.field}`);n.filter(d=>d.name===c).length||n.unshift({name:c,...s?{init:Xs(s[l])}:{value:null},on:t.events?[{events:t.events,update:`datum && item().mark.marktype !== 'group' ? ${a}[${j(u.field)}] : null`}]:[],bind:o[u.field]??o[u.channel]??o})}),n},signals:(e,t,n)=>{const i=t.name,r=t.project,o=n.find(l=>l.name===i+Vr),s=i+af,a=r.items.map(l=>je(`${i}_${l.field}`)),u=a.map(l=>`${l} !== null`).join(" && ");return a.length&&(o.update=`${u} ? {fields: ${s}, values: [${a.join(", ")}]} : null`),delete o.value,delete o.on,n}},Vh="_toggle",uR={defined:e=>e.type==="point"&&!Wi(e)&&!!e.toggle,signals:(e,t,n)=>n.concat({name:t.name+Vh,value:!1,on:[{events:t.events,update:t.toggle}]}),modifyExpr:(e,t)=>{const n=t.name+Vr,i=t.name+Vh;return`${i} ? null : ${n}, ${t.resolve==="global"?`${i} ? null : true, `:`${i} ? null : {unit: ${As(e)}}, `}${i} ? ${n} : null`}},joe={defined:e=>e.clear!==void 0&&e.clear!==!1&&!Wi(e),parse:(e,t)=>{t.clear&&(t.clear=Y(t.clear)?ra(t.clear,"view"):t.clear)},topLevelSignals:(e,t,n)=>{if(aR.defined(t))for(const i of t.project.items){const r=n.findIndex(o=>o.name===je(`${t.name}_${i.field}`));r!==-1&&n[r].on.push({events:t.clear,update:"null"})}return n},signals:(e,t,n)=>{function i(r,o){r!==-1&&n[r].on&&n[r].on.push({events:t.clear,update:o})}if(t.type==="interval")for(const r of t.project.items){const o=n.findIndex(s=>s.name===r.signals.visual);if(i(o,"[0, 0]"),o===-1){const s=n.findIndex(a=>a.name===r.signals.data);i(s,"null")}}else{let r=n.findIndex(o=>o.name===t.name+Vr);i(r,"null"),uR.defined(t)&&(r=n.findIndex(o=>o.name===t.name+Vh),i(r,"false"))}return n}},lR={defined:e=>{const t=e.resolve==="global"&&e.bind&&M2(e.bind),n=e.project.items.length===1&&e.project.items[0].field!==vi;return t&&!n&&I(ste),t&&n},parse:(e,t,n)=>{const i=se(n);if(i.select=Y(i.select)?{type:i.select,toggle:t.toggle}:{...i.select,toggle:t.toggle},pR(t,i),V(n.select)&&(n.select.on||n.select.clear)){const s='event.item && indexof(event.item.mark.role, "legend") < 0';for(const a of t.events)a.filter=H(a.filter??[]),a.filter.includes(s)||a.filter.push(s)}const r=i0(t.bind)?t.bind.legend:"click",o=Y(r)?ra(r,"view"):H(r);t.bind={legend:{merge:o}}},topLevelSignals:(e,t,n)=>{const i=t.name,r=i0(t.bind)&&t.bind.legend,o=s=>a=>{const u=se(a);return u.markname=s,u};for(const s of t.project.items){if(!s.hasLegend)continue;const a=`${je(s.field)}_legend`,u=`${i}_${a}`;if(n.filter(c=>c.name===u).length===0){const c=r.merge.map(o(`${a}_symbols`)).concat(r.merge.map(o(`${a}_labels`))).concat(r.merge.map(o(`${a}_entries`)));n.unshift({name:u,...t.init?{}:{value:null},on:[{events:c,update:"isDefined(datum.value) ? datum.value : item().items[0].items[0].datum.value",force:!0},{events:r.merge,update:`!event.item || !datum ? null : ${u}`,force:!0}]})}}return n},signals:(e,t,n)=>{const i=t.name,r=t.project,o=n.find(d=>d.name===i+Vr),s=i+af,a=r.items.filter(d=>d.hasLegend).map(d=>je(`${i}_${je(d.field)}_legend`)),l=`${a.map(d=>`${d} !== null`).join(" && ")} ? {fields: ${s}, values: [${a.join(", ")}]} : null`;t.events&&a.length>0?o.on.push({events:a.map(d=>({signal:d})),update:l}):a.length>0&&(o.update=l,delete o.value,delete o.on);const c=n.find(d=>d.name===i+Vh),f=i0(t.bind)&&t.bind.legend;return c&&(t.events?c.on.push({...c.on[0],events:f}):c.on[0].events=f),n}};function qoe(e,t,n){const i=e.fieldDef(t)?.field;for(const r of nt(e.component.selection??{})){const o=r.project.hasField[i]??r.project.hasChannel[t];if(o&&lR.defined(r)){const s=n.get("selections")??[];s.push(r.name),n.set("selections",s,!1),o.hasLegend=!0}}}const cR="_translate_anchor",fR="_translate_delta",Woe={defined:e=>e.type==="interval"&&e.translate,signals:(e,t,n)=>{const i=t.name,r=Pr.defined(t),o=i+cR,{x:s,y:a}=t.project.hasChannel;let u=ra(t.translate,"scope");return r||(u=u.map(l=>(l.between[0].markname=i+ja,l))),n.push({name:o,value:{},on:[{events:u.map(l=>l.between[0]),update:`{x: x(unit), y: y(unit)${s!==void 0?`, extent_x: ${r?cy(e,Ie):`slice(${s.signals.visual})`}`:""}${a!==void 0?`, extent_y: ${r?cy(e,bt):`slice(${a.signals.visual})`}`:""}}`}]},{name:i+fR,value:{},on:[{events:u,update:`{x: ${o}
13.x - x(unit), y: ${o}.y - y(unit)}`}]}),s!==void 0&&Uk(e,t,s,"width",n),a!==void 0&&Uk(e,t,a,"height",n),n}};function Uk(e,t,n,i,r){const o=t.name,s=o+cR,a=o+fR,u=n.channel,l=Pr.defined(t),c=r.find(w=>w.name===n.signals[l?"data":"visual"]),f=e.getSizeSignalRef(i).signal,d=e.getScaleComponent(u),h=d?.get("type"),g=d?.get("reverse"),p=l?u===Ie?g?"":"-":g?"-":"":"",m=`${s}.extent_${u}`,y=`${p}${a}.${u} / ${l?`${f}`:`span(${m})`}`,x=!l||!d?"panLinear":h==="log"?"panLog":h==="symlog"?"panSymlog":h==="pow"?"panPow":"panLinear",b=l?h==="pow"?`, ${d.get("exponent")??1}`:h==="symlog"?`, ${d.get("constant")??1}`:"":"",v=`${x}(${m}, ${y}${b})`;c.on.push({events:{signal:a},update:l?v:`clampRange(${v}, 0, ${f})`})}const dR="_zoom_anchor",hR="_zoom_delta",Hoe={defined:e=>e.type==="interval"&&e.zoom,signals:(e,t,n)=>{const i=t.name,r=Pr.defined(t),o=i+hR,{x:s,y:a}=t.project.hasChannel,u=j(e.scaleName(Ie)),l=j(e.scaleName(bt));let c=ra(t.zoom,"scope");return r||(c=c.map(f=>(f.markname=i+ja,f))),n.push({name:i+dR,on:[{events:c,update:r?`{${[u?`x: invert(${u}, x(unit))`:"",l?`y: invert(${l}, y(unit))`:""].filter(f=>f).join(", ")}}`:"{x: x(unit), y: y(unit)}"}]},{name:o,on:[{events:c,force:!0,update:"pow(1.001, event.deltaY * pow(16, event.deltaMode))"}]}),s!==void 0&&jk(e,t,s,"width",n),a!==void 0&&jk(e,t,a,"height",n),n}};function jk(e,t,n,i,r){const o=t.name,s=n.channel,a=Pr.defined(t),u=r.find(x=>x.name===n.signals[a?"data":"visual"]),l=e.getSizeSignalRef(i).signal,c=e.getScaleComponent(s),f=c?.get("type"),d=a?cy(e,s):u.name,h=o+hR,g=`${o}${dR}.${s}`,p=!a||!c?"zoomLinear":f==="log"?"zoomLog":f==="symlog"?"zoomSymlog":f==="pow"?"zoomPow":"zoomLinear",m=a?f==="pow"?`, ${c.get("exponent")??1}`:f==="symlog"?`, ${c.get("constant")??1}`:"":"",y=`${p}(${d}, ${g}, ${h}${m})`;u.on.push({events:{signal:h},update:a?y:`clampRange(${y}, 0, ${l})`})}const Ks="_store",Vr="_tuple",Goe="_modify",gR="vlSelectionResolve",Tp=[xoe,$oe,poe,uR,aR,Pr,lR,joe,Woe,Hoe,sR];function Voe(e){let t=e.parent;for(;t&&!Mn(t);)t=t.parent;return t}function As(e,{escape:t}={escape:!0}){let n=t?j(e.name):e.name;const i=Voe(e);if(i){const{facet:r}=i;for(const o of Bn)r[o]&&(n+=` + '__facet_${o}_' + (facet[${j(i.vgField(o))}])`)}return n}function B2(e){return nt(e.component.selection??{}).reduce((t,n)=>t||n.project.hasSelectionId,!1)}function pR(e,t){(Y(t.select)||!t.select.on)&&delete e.events,(Y(t.select)||!t.select.clear)&&delete e.clear,(Y(t.select)||!t.select.toggle)&&delete e.toggle}function Wi(e){return e.events?.find(t=>"type"in t&&t.type==="timer")}function dy(e){const t=[];return e.type==="Identifier"?[e.name]:e.type==="Literal"?[e.value]:(e.type==="MemberExpression"&&(t.push(...dy(e.object)),t.push(...dy(e.property))),t)}function mR(e){return e.object.type==="MemberExpression"?mR(e.object):e.object.name==="datum"}function yR(e){const t=DD(e),n=new Set;return t.visit(i=>{i.type==="MemberExpression"&&mR(i)&&n.add(dy(i).slice(1).join("."))}),n}class Pu extends Me{model;filter;expr;_dependentFields;clone(){return new Pu(null,this.model,se(this.filter))}constructor(t,n,i){super(t),this.model=n,this.filter=i,this.expr=Yh(this.model,this.filter,this),this._dependentFields=yR(this.expr)}dependentFields(){return this._dependentFields}producedFields(){return new Set}assemble(){return{type:"filter",expr:this.expr}}hash(){return`Filter ${this.expr}`}}function Yoe(e,t){const n={},i=e.config.selection;if(!t||!t.length)return n;let r=0;for(const o of t){const s=je(o.name),a=o.select,u=Y(a)?a:a.type,l=V(a)?se(a):{type:u},c=i[u];for(const h in c)h==="fields"||h==="encodings"||(h==="mark"&&(l.mark={...c.mark,...l.mark}),(l[h]===void 0||l[h]===!0)&&(l[h]=se(c[h]??l[h])));const f=n[s]={...l,name:s,type:u,init:o.value,bind:o.bind,events:Y(l.on)?ra(l.on,"scope"):H(se(l.on))};if(Wi(f)&&(r++,r>1)){delete n[s];continue}const d=se(o);for(const h of Tp)h.defined(f)&&h.parse&&h.parse(e,f,d)}return r>1&&I(dte),n}function xR(e,t,n,i="datum"){const r=Y(t)?t:t.param,o=je(r),s=j(o+Ks);let a;try{a=e.getSelectionComponent(o,r)}catch{return`!!${o}`}if(a.project.timeUnit){const d=n??e.component.data.raw,h=a.project.timeUnit.clone();d.parent?h.insertAsParentOf(d):d.parent=h}const u=a.project.hasSelectionId?"vlSelectionIdTest(":"vlSelectionTest(",l=a.resolve==="global"?")":`, ${j(a.resolve)})`,c=`${u}${s}, ${i}${l}`,f=`length(data(${s}))`;return t.empty===!1?`${f} && ${c}`:`!${f} || ${c}`}function bR(e,t,n){const i=je(t),r=n.encoding;let o=n.field,s;try{s=e.getSelectionComponent(i,t)}catch{return i}if(!r&&!o)o=s.project.items[0].field,s.project.items.length>1&&I(hte(o));else if(r&&!o){const a=s.project.items.filter(u=>u.channel===r);!a.length||a.length>1?(o=s.project.items[0].field,I(gte(a,r,n,o))):o=a[0].field}return`${s.name}[${j(mi(o))}]`}function Xoe(e,t){for(const[n,i]of js(e.component.selection??{})){const r=e.getName(`lookup_${n}`);e.component.data.outputNodes[r]=i.materialized=new pn(new Pu(t,e,{param:n}),r,qe.Lookup,e.component.data.outputNodeRefCounts)}}function Yh(e,t,n){return bd(t,i=>Y(i)?i:Sne(i)?xR(e,i,n):FT(i))}function Koe(e,t){if(e)return z(e)&&!fo(e)?e.map(n=>w2(n,t)).join(", "):e}function c0(e,t,n,i){e.encode??={},e.encode[t]??={},e.encode[t].update??={},e.encode[t].update[n]=i}function Ml(e,t,n,i={header:!1}){const{disable:r,orient:o,scale:s,labelExpr:a,title:u,zindex:l,...c}
13=e.combine();if(!r){for(const f in c){const d=f,h=Aie[d],g=c[d];if(h&&h!==t&&h!=="both")delete c[d];else if(sf(g)){const{condition:p,...m}=g,y=H(p),x=mk[d];if(x){const{vgProp:b,part:v}=x,w=[...y.map(S=>{const{test:_,...E}=S;return{test:Yh(null,_),...E}}),m];c0(c,v,b,w),delete c[d]}else if(x===null){const b={signal:y.map(v=>{const{test:w,...S}=v;return`${Yh(null,w)} ? ${ek(S)} : `}).join("")+ek(m)};c[d]=b}}else if(ee(g)){const p=mk[d];if(p){const{vgProp:m,part:y}=p;c0(c,y,m,g),delete c[d]}}ge(["labelAlign","labelBaseline"],d)&&c[d]===null&&delete c[d]}if(t==="grid"){if(!c.grid)return;if(c.encode){const{grid:f}=c.encode;c.encode={...f?{grid:f}:{}},Re(c.encode)&&delete c.encode}return{scale:s,orient:o,...c,domain:!1,labels:!1,aria:!1,maxExtent:0,minExtent:0,ticks:!1,zindex:Ze(l,0)}}else{if(!i.header&&e.mainExtracted)return;if(a!==void 0){let d=a;c.encode?.labels?.update&&ee(c.encode.labels.update.text)&&(d=uu(a,"datum.label",c.encode.labels.update.text.signal)),c0(c,"labels","text",{signal:d})}if(c.labelAlign===null&&delete c.labelAlign,c.encode){for(const d of aN)e.hasAxisPart(d)||delete c.encode[d];Re(c.encode)&&delete c.encode}const f=Koe(u,n);return{scale:s,orient:o,grid:!1,...f?{title:f}:{},...c,...n.aria===!1?{aria:!1}:{},zindex:Ze(l,0)}}}}function vR(e){const{axes:t}=e.component,n=[];for(const i of to)if(t[i]){for(const r of t[i])if(!r.get("disable")&&!r.get("gridScale")){const o=i==="x"?"height":"width",s=e.getSizeSignalRef(o).signal;o!==s&&n.push({name:o,update:s})}}return n}function Zoe(e,t){const{x:n=[],y:i=[]}=e;return[...n.map(r=>Ml(r,"grid",t)),...i.map(r=>Ml(r,"grid",t)),...n.map(r=>Ml(r,"main",t)),...i.map(r=>Ml(r,"main",t))].filter(r=>r)}function qk(e,t,n,i){return Object.assign.apply(null,[{},...e.map(r=>{if(r==="axisOrient"){const o=n==="x"?"bottom":"left",s=t[n==="x"?"axisBottom":"axisLeft"]||{},a=t[n==="x"?"axisTop":"axisRight"]||{},u=new Set([...P(s),...P(a)]),l={};for(const c of u.values())l[c]={signal:`${i.signal} === "${o}" ? ${li(s[c])} : ${li(a[c])}`};return l}return t[r]})])}function Qoe(e,t,n,i){const r=t==="band"?["axisDiscrete","axisBand"]:t==="point"?["axisDiscrete","axisPoint"]:RT(t)?["axisQuantitative"]:t==="time"||t==="utc"?["axisTemporal"]:[],o=e==="x"?"axisX":"axisY",s=ee(n)?"axisOrient":`axis${ip(n)}`,a=[...r,...r.map(l=>o+l.substr(4))],u=["axis",s,o];return{vlOnlyAxisConfig:qk(a,i,e,n),vgAxisConfig:qk(u,i,e,n),axisConfigStyle:Joe([...u,...a],i)}}function Joe(e,t){const n=[{}];for(const i of e){let r=t[i]?.style;if(r){r=H(r);for(const o of r)n.push(t.style[o])}}return Object.assign.apply(null,n)}function hy(e,t,n,i={}){const r=uT(e,n,t);if(r!==void 0)return{configFrom:"style",configValue:r};for(const o of["vlOnlyAxisConfig","vgAxisConfig","axisConfigStyle"])if(i[o]?.[e]!==void 0)return{configFrom:o,configValue:i[o][e]};return{}}const Wk={scale:({model:e,channel:t})=>e.scaleName(t),format:({format:e})=>e,formatType:({formatType:e})=>e,grid:({fieldOrDatumDef:e,axis:t,scaleType:n})=>t.grid??ese(n,e),gridScale:({model:e,channel:t})=>tse(e,t),labelAlign:({axis:e,labelAngle:t,orient:n,channel:i})=>e.labelAlign||_R(t,n,i),labelAngle:({labelAngle:e})=>e,labelBaseline:({axis:e,labelAngle:t,orient:n,channel:i})=>e.labelBaseline||wR(t,n,i),labelFlush:({axis:e,fieldOrDatumDef:t,channel:n})=>e.labelFlush??ise(t.type,n),labelOverlap:({axis:e,fieldOrDatumDef:t,scaleType:n})=>e.labelOverlap??rse(t.type,n,U(t)&&!!t.timeUnit,U(t)?t.sort:void 0),orient:({orient:e})=>e,tickCount:({channel:e,model:t,axis:n,fieldOrDatumDef:i,scaleType:r})=>{const o=e==="x"?"width":e==="y"?"height":void 0,s=o?t.getSizeSignalRef(o):void 0;return n.tickCount??sse({fieldOrDatumDef:i,scaleType:r,size:s,values:n.values})},tickMinStep:({axis:e,format:t,fieldOrDatumDef:n})=>e.tickMinStep??ase({format:t,fieldOrDatumDef:n}),title:({axis:e,model:t,channel:n})=>{if(e.title!==void 0)return e.title;const i=SR(t,n);if(i!==void 0)return i;const r=t.typedFieldDef(n),o=n==="x"?"x2":"y2",s=t.fieldDef(o);return cT(r?[gk(r)]:[],U(s)?[gk(s)]:[])},values:({axis:e,fieldOrDatumDef:t})=>use(e,t),zindex:({axis:e,fieldOrDatumDef:t,mark:n})=>e.zindex??lse(n,t)};
13function ese(e,t){return!yt(e)&&U(t)&&!Oe(t?.bin)&&!_t(t?.bin)}function tse(e,t){const n=t==="x"?"y":"x";if(e.getScaleComponent(n))return e.scaleName(n)}function nse(e,t,n,i,r){const o=t?.labelAngle;if(o!==void 0)return ee(o)?o:zh(o);{const{configValue:s}=hy("labelAngle",i,t?.style,r);return s!==void 0?zh(s):n===Ie&&ge([l2,u2],e.type)&&!(U(e)&&e.timeUnit)?270:void 0}}function gy(e){return`(((${e.signal} % 360) + 360) % 360)`}function wR(e,t,n,i){if(e!==void 0)if(n==="x"){if(ee(e)){const r=gy(e),o=ee(t)?`(${t.signal} === "top")`:t==="top";return{signal:`(45 < ${r} && ${r} < 135) || (225 < ${r} && ${r} < 315) ? "middle" :(${r} <= 45 || 315 <= ${r}) === ${o} ? "bottom" : "top"`}}if(45<e&&e<135||225<e&&e<315)return"middle";if(ee(t)){const r=e<=45||315<=e?"===":"!==";return{signal:`${t.signal} ${r} "top" ? "bottom" : "top"`}}return(e<=45||315<=e)==(t==="top")?"bottom":"top"}else{if(ee(e)){const r=gy(e),o=ee(t)?`(${t.signal} === "left")`:t==="left";return{signal:`${r} <= 45 || 315 <= ${r} || (135 <= ${r} && ${r} <= 225) ? ${i?'"middle"':"null"} : (45 <= ${r} && ${r} <= 135) === ${o} ? "top" : "bottom"`}}if(e<=45||315<=e||135<=e&&e<=225)return i?"middle":null;if(ee(t)){const r=45<=e&&e<=135?"===":"!==";return{signal:`${t.signal} ${r} "left" ? "top" : "bottom"`}}return(45<=e&&e<=135)==(t==="left")?"top":"bottom"}}function _R(e,t,n){if(e===void 0)return;const i=n==="x",r=i?0:90,o=i?"bottom":"left";if(ee(e)){const s=gy(e),a=ee(t)?`(${t.signal} === "${o}")`:t===o;return{signal:`(${r?`(${s} + 90)`:s} % 180 === 0) ? ${i?null:'"center"'} :(${r} < ${s} && ${s} < ${180+r}) === ${a} ? "left" : "right"`}}if((e+r)%180===0)return i?null:"center";if(ee(t)){const s=r<e&&e<180+r?"===":"!==";return{signal:`${`${t.signal} ${s} "${o}"`} ? "left" : "right"`}}return(r<e&&e<180+r)==(t===o)?"left":"right"}function ise(e,t){if(t==="x"&&ge(["quantitative","temporal"],e))return!0}function rse(e,t,n,i){if(n&&!V(i)||e!=="nominal"&&e!=="ordinal")return t==="log"||t==="symlog"?"greedy":!0}function ose(e){return e==="x"?"bottom":"left"}function sse({fieldOrDatumDef:e,scaleType:t,size:n,values:i}){if(!i&&!yt(t)&&t!=="log"){if(U(e)){if(Oe(e.bin))return{signal:`ceil(${n.signal}/10)`};if(e.timeUnit&&ge(["month","hours","day","quarter"],mt(e.timeUnit)?.unit))return}return{signal:`ceil(${n.signal}/40)`}}}function ase({format:e,fieldOrDatumDef:t}){if(e==="d")return 1;if(U(t)){const{timeUnit:n}=t;if(n){const i=AT(n);if(i)return{signal:i}}}}function SR(e,t){const n=t==="x"?"x2":"y2",i=e.fieldDef(t),r=e.fieldDef(n),o=i?i.title:void 0,s=r?r.title:void 0;if(o&&s)return fT(o,s);if(o)return o;if(s)return s;if(o!==void 0)return o;if(s!==void 0)return s}function use(e,t){const n=e.values;if(z(n))return sN(t,n);if(ee(n))return n}function lse(e,t){return e==="rect"&&Uh(t)?1:0}class yu extends Me{transform;_dependentFields;clone(){return new yu(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this._dependentFields=yR(this.transform.calculate)}static parseAllForSortIndex(t,n){return n.forEachFieldDef((i,r)=>{if(ha(i)&&KT(i.sort)){const{field:o,timeUnit:s}=i,a=i.sort,u=a.map((l,c)=>`${FT({field:o,timeUnit:s,equal:l})} ? ${c} : `).join("")+a.length;t=new yu(t,{calculate:u,as:xu(i,r,{forAs:!0})})}}),t}producedFields(){return new Set([this.transform.as])}dependentFields(){return this._dependentFields}assemble(){return{type:"formula",expr:this.transform.calculate,as:this.transform.as}}hash(){return`Calculate ${me(this.transform)}`}}function xu(e,t,n){return W(e,{prefix:t,suffix:"sort_index",...n})}function Np(e,t){return ge(["top","bottom"],t)?"column":ge(["left","right"],t)||e==="row"?"row":"column"}function bu(e,t,n,i){const r=i==="row"?n.headerRow:i==="column"?n.headerColumn:n.headerFacet;return Ze((t||{})[e],r[e],n.header[e])}function Rp(e,t,n,i){const r={};for(const o of e){const s=bu(o,t||{},n,i);s!==void 0&&(r[o]=s)}return r}const U2=["row","column"],j2=["header","footer"];function cse(e,t){const n=e.component.layoutHeaders[t].title,i=e.config?e.config:void 0,r=e.component.layoutHeaders[t].facetFieldDef?e.component.layoutHeaders[t].facetFieldDef:void 0,{titleAnchor:o,titleAngle:s,titleOrient:a}=Rp(["titleAnchor","titleAngle","titleOrient"],r.header,i,t),u=Np(t,a),l=zh(s);return{name:`${t}-title`,type:"group",role:`${u}-title`,title:{text:n,...t==="row"?{orient:"left"}:{},style:"guide-title",...kR(l,u),...ER(u,l,o),...$R(i,r,t,Xie,kN)}}}function ER(e,t,n="middle"){switch(n){case"start":return{align:"left"};case"end":return{align:"right"}}const i=_R(t,e==="row"?"left":"top",e==="row"?"y":"x");return i?{align:i}:{}}function kR(e,t){const n=wR(e,t==="row"?"left":"top",t==="row"?"y":"x",!0);return n?{baseline:n}
13:{}}function fse(e,t){const n=e.component.layoutHeaders[t],i=[];for(const r of j2)if(n[r])for(const o of n[r]){const s=hse(e,t,r,n,o);s!=null&&i.push(s)}return i}function dse(e,t){const{sort:n}=e;return zr(n)?{field:W(n,{expr:"datum"}),order:n.order??"ascending"}:z(n)?{field:xu(e,t,{expr:"datum"}),order:"ascending"}:{field:W(e,{expr:"datum"}),order:n??"ascending"}}function py(e,t,n){const{format:i,formatType:r,labelAngle:o,labelAnchor:s,labelOrient:a,labelExpr:u}=Rp(["format","formatType","labelAngle","labelAnchor","labelOrient","labelExpr"],e.header,n,t),l=y2({fieldOrDatumDef:e,format:i,formatType:r,expr:"parent",config:n}).signal,c=Np(t,a);return{text:{signal:u?uu(uu(u,"datum.label",l),"datum.value",W(e,{expr:"parent"})):l},...t==="row"?{orient:"left"}:{},style:"guide-label",frame:"group",...kR(o,c),...ER(c,o,s),...$R(n,e,t,Kie,$N)}}function hse(e,t,n,i,r){if(r){let o=null;const{facetFieldDef:s}=i,a=e.config?e.config:void 0;if(s&&r.labels){const{labelOrient:f}=Rp(["labelOrient"],s.header,a,t);(t==="row"&&!ge(["top","bottom"],f)||t==="column"&&!ge(["left","right"],f))&&(o=py(s,t,a))}const u=Mn(e)&&!tf(e.facet),l=r.axes,c=l?.length>0;if(o||c){const f=t==="row"?"height":"width";return{name:e.getName(`${t}_${n}`),type:"group",role:`${t}-${n}`,...i.facetFieldDef?{from:{data:e.getName(`${t}_domain`)},sort:dse(s,t)}:{},...c&&u?{from:{data:e.getName(`facet_domain_${t}`)}}:{},...o?{title:o}:{},...r.sizeSignal?{encode:{update:{[f]:r.sizeSignal}}}:{},...c?{axes:l}:{}}}}return null}const gse={column:{start:0,end:1},row:{start:1,end:0}};function pse(e,t){return gse[t][e]}function mse(e,t){const n={};for(const i of Bn){const r=e[i];if(r?.facetFieldDef){const{titleAnchor:o,titleOrient:s}=Rp(["titleAnchor","titleOrient"],r.facetFieldDef.header,t,i),a=Np(i,s),u=pse(o,a);u!==void 0&&(n[a]=u)}}return Re(n)?void 0:n}function $R(e,t,n,i,r){const o={};for(const s of i){if(!r[s])continue;const a=bu(s,t?.header,e,n);a!==void 0&&(o[r[s]]=a)}return o}function q2(e){return[...Hf(e,"width"),...Hf(e,"height"),...Hf(e,"childWidth"),...Hf(e,"childHeight")]}function Hf(e,t){const n=t==="width"?"x":"y",i=e.component.layoutSize.get(t);if(!i||i==="merged")return[];const r=e.getSizeSignalRef(t).signal;if(i==="step"){const o=e.getScaleComponent(n);if(o){const s=o.get("type"),a=o.get("range");if(yt(s)&&ca(a)){const u=e.scaleName(n);return Mn(e.parent)&&e.parent.component.resolve.scale[n]==="independent"?[Hk(u,a)]:[Hk(u,a),{name:r,update:AR(u,o,`domain('${u}').length`)}]}}throw new Error("layout size is step although width/height is not step.")}else if(i=="container"){const o=r.endsWith("width"),s=o?"containerSize()[0]":"containerSize()[1]",a=ry(e.config.view,o?"width":"height"),u=`isFinite(${s}) ? ${s} : ${a}`;return[{name:r,init:u,on:[{update:u,events:"window:resize"}]}]}else return[{name:r,value:i}]}function Hk(e,t){const n=`${e}_step`;return ee(t.step)?{name:n,update:t.step.signal}:{name:n,value:t.step}}function AR(e,t,n){const i=t.get("type"),r=t.get("padding"),o=Ze(t.get("paddingOuter"),r);let s=t.get("paddingInner");return s=i==="band"?s!==void 0?s:r:1,`bandspace(${n}, ${li(s)}, ${li(o)}) * ${e}_step`}function CR(e){return e==="childWidth"?"width":e==="childHeight"?"height":e}function MR(e,t){return P(e).reduce((n,i)=>({...n,...zu({model:t,channelDef:e[i],vgChannel:i,mainRefFn:r=>Pe(r.value),invalidValueRef:void 0})}),{})}function FR(e,t){if(Mn(t))return e==="theta"?"independent":"shared";if(Bu(t))return"shared";if(K2(t))return Ke(e)||e==="theta"||e==="radius"?"independent":"shared";throw new Error("invalid model type for resolve")}function W2(e,t){const n=e.scale[t],i=Ke(t)?"axis":"legend";return n==="independent"?(e[i][t]==="shared"&&I(Hte(t)),"independent"):e[i][t]||"shared"}const yse={...Jie,disable:1,labelExpr:1,selections:1,opacity:1,shape:1,stroke:1,fill:1,size:1,strokeWidth:1,strokeDash:1,encode:1},DR=P(yse);class xse extends io{}const Gk={symbols:bse,gradient:vse,labels:wse,entries:_se};function bse(e,{fieldOrDatumDef:t,model:n,channel:i,legendCmpt:r,legendType:o}){if(o!=="symbol")return;const{markDef:s,encoding:a,config:u,mark:l}=n,c=s.filled&&l!=="trail";let f={...Jee({},n,Xne),...iR(n,{filled:c})};const d=r.get("symbolOpacity")??u.legend.symbolOpacity,h=r.get("symbolFillColor")??u.legend.symbolFillColor,g=r.get("symbolStrokeColor")??u.legend.symbolStrokeColor,p=d===void 0?TR(a.opacity)??s.opacity:void 0;if(f.fill){if(i==="fill"||c&&i===yn)delete f.fill;else if(L(f.fill,"field"))h?delete f.fill:(f.fill=Pe(u.legend.symbolBaseFillColor??"black"),f.fillOpacity=Pe(p??1));else if(z(f.fill)){const m=my(a.fill??a.color)??s.fill??(c&&s.color);m&&(f.fill=Pe(m))}}if(f.stroke){if(i==="stroke"||!c&&i===yn)delete f.stroke;else if(L(f.stroke,"field")||g)delete f.stroke;else if(z(f.stroke)){const m=Ze(my(a.stroke||a.color),s.stroke,c?s.color:void 0);m&&(f.stroke={value:m})}}if(i!==eo){const m=U(t)&&RR(n,r,t);m?f.opacity=[{test:m,...Pe(p??1)},Pe(u.legend.unselectedOpacity)]:p&&(f.opacity=Pe(p))}return f={...f,...e},Re(f)?void 0:f}function vse(e,{model:t,legendType:n,legendCmpt:i}){if(n!=="gradient")return;const{config:r,markDef:o,encoding:s}=t;let a={};const l=(i.get("gradientOpacity")??r.legend.gradientOpacity)===void 0?TR(s.opacity)||o.opacity:void 0;return l&&(a.opacity=Pe(l)),a={...a,...e},Re(a)?void 0:a}function wse(e,{fieldOrDatumDef:t,model:n,channel:i,legendCmpt:r}){const o=n.legend(i)||{},s=n.config,a=U(t)?RR(n,r,t):void 0,u=a?[{test:a,value:1},{value:s.legend.unselectedOpacity}]:void 0,{format:l,formatType:c}=o;let f;Ys(c)?f=ci({fieldOrDatumDef:t,field:"datum.value",format:l,formatType:c,config:s}):l===void 0&&c===void 0&&s.customFormatTypes&&(t.type==="quantitative"&&s.numberFormatType?f=ci({fieldOrDatumDef:t,field:"datum.value",format:s.numberFormat,formatType:s.numberFormatType,config:s}):t.type==="temporal"&&s.timeFormatType&&U(t)&&t.timeUnit===void 0&&(f=ci({fieldOrDatumDef:t,field:"datum.value",format:s.timeFormat,formatType:s.timeFormatType,config:s})));const d={...u?{opacity:u}:{},...f?{text:f}:{},...e};return Re(d)?void 0:d}function _se(e,{legendCmpt:t}){return t.get("selections")?.length?{...e,fill:{value:"transparent"}}:e}function TR(e){return NR(e,(t,n)=>Math.max(t,n.value))}function my(e){return NR(e,(t,n)=>Ze(t,n.value))}function NR(e,t){if(pie(e))return H(e.condition).reduce(t,e.value);if(xi(e))return e.value}
13function RR(e,t,n){const i=t.get("selections");if(!i?.length)return;const r=j(n.field);return i.map(o=>`(!length(data(${j(je(o)+Ks)})) || (${o}[${r}] && indexof(${o}[${r}], datum.value) >= 0))`).join(" || ")}const Vk={direction:({direction:e})=>e,format:({fieldOrDatumDef:e,legend:t,config:n})=>{const{format:i,formatType:r}=t;return VT(e,e.type,i,r,n,!1)},formatType:({legend:e,fieldOrDatumDef:t,scaleType:n})=>{const{formatType:i}=e;return YT(i,t,n)},gradientLength:e=>{const{legend:t,legendConfig:n}=e;return t.gradientLength??n.gradientLength??Mse(e)},labelOverlap:({legend:e,legendConfig:t,scaleType:n})=>e.labelOverlap??t.labelOverlap??Fse(n),symbolType:({legend:e,markDef:t,channel:n,encoding:i})=>e.symbolType??Ese(t.type,n,i.shape,t.shape),title:({fieldOrDatumDef:e,config:t})=>Ua(e,t,{allowDisabling:!0}),type:({legendType:e,scaleType:t,channel:n})=>{if(Ba(n)&&Ii(t)){if(e==="gradient")return}else if(e==="symbol")return;return e},values:({fieldOrDatumDef:e,legend:t})=>Sse(t,e)};function Sse(e,t){const n=e.values;if(z(n))return sN(t,n);if(ee(n))return n}function Ese(e,t,n,i){if(t!=="shape"){const r=my(n)??i;if(r)return r}switch(e){case"bar":case"rect":case"image":case"square":return"square";case"line":case"trail":case"rule":return"stroke";case"arc":case"point":case"circle":case"tick":case"geoshape":case"area":case"text":return"circle"}}function kse(e){const{legend:t}=e;return Ze(t.type,$se(e))}function $se({channel:e,timeUnit:t,scaleType:n}){if(Ba(e)){if(ge(["quarter","month","day"],t))return"symbol";if(Ii(n))return"gradient"}return"symbol"}function Ase({legendConfig:e,legendType:t,orient:n,legend:i}){return i.direction??e[t?"gradientDirection":"symbolDirection"]??Cse(n,t)}function Cse(e,t){switch(e){case"top":case"bottom":return"horizontal";case"left":case"right":case"none":case void 0:return;default:return t==="gradient"?"horizontal":void 0}}function Mse({legendConfig:e,model:t,direction:n,orient:i,scaleType:r}){const{gradientHorizontalMaxLength:o,gradientHorizontalMinLength:s,gradientVerticalMaxLength:a,gradientVerticalMinLength:u}=e;if(Ii(r))return n==="horizontal"?i==="top"||i==="bottom"?Yk(t,"width",s,o):s:Yk(t,"height",u,a)}function Yk(e,t,n,i){return{signal:`clamp(${e.getSizeSignalRef(t).signal}, ${n}, ${i})`}}function Fse(e){if(ge(["quantile","threshold","log","symlog"],e))return"greedy"}function OR(e){const t=Ue(e)?Dse(e):Ose(e);return e.component.legends=t,t}function Dse(e){const{encoding:t}=e,n={};for(const i of[yn,...CN]){const r=et(t[i]);!r||!e.getScaleComponent(i)||i===xn&&U(r)&&r.type===Ou||(n[i]=Rse(e,i))}return n}function Tse(e,t){const n=e.scaleName(t);if(e.mark==="trail"){if(t==="color")return{stroke:n};if(t==="size")return{strokeWidth:n}}return t==="color"?e.markDef.filled?{fill:n}:{stroke:n}:{[t]:n}}function Nse(e,t,n,i){switch(t){case"disable":return n!==void 0;case"values":return!!n?.values;case"title":if(t==="title"&&e===i?.title)return!0}return e===(n||{})[t]}function Rse(e,t){let n=e.legend(t);const{markDef:i,encoding:r,config:o}=e,s=o.legend,a=new xse({},Tse(e,t));qoe(e,t,a);const u=n!==void 0?!n:s.disable;if(a.set("disable",u,n!==void 0),u)return a;n=n||{};const l=e.getScaleComponent(t).get("type"),c=et(r[t]),f=U(c)?mt(c.timeUnit)?.unit:void 0,d=n.orient||o.legend.orient||"right",h=kse({legend:n,channel:t,timeUnit:f,scaleType:l}),g=Ase({legend:n,legendType:h,orient:d,legendConfig:s}),p={legend:n,channel:t,model:e,markDef:i,encoding:r,fieldOrDatumDef:c,legendConfig:s,config:o,scaleType:l,orient:d,legendType:h,direction:g};for(const v of DR){if(h==="gradient"&&v.startsWith("symbol")||h==="symbol"&&v.startsWith("gradient"))continue;const w=v in Vk?Vk[v](p):n[v];if(w!==void 0){const S=Nse(w,v,n,e.fieldDef(t));(S||o.legend[v]===void 0)&&a.set(v,w,S)}}const m=n?.encoding??{},y=a.get("selections"),x={},b={fieldOrDatumDef:c,model:e,channel:t,legendCmpt:a,legendType:h};for(const v of["labels","legend","title","symbols","gradient","entries"]){const w=MR(m[v]??{},e),S=v in Gk?Gk[v](w,b):w;S!==void 0&&!Re(S)&&(x[v]={...y?.length&&U(c)?{name:`${je(c.field)}_legend_${v}`}:{},...y?.length?{interactive:!!y}:{},update:S})}return Re(x)||a.set("encode",x,!!n?.encoding),a}function Ose(e){const{legends:t,resolve:n}=e.component;for(const i of e.children){OR(i);for(const r of P(i.component.legends))n.legend[r]=W2(e.component.resolve,r),n.legend[r]==="shared"&&(t[r]=zR(t[r],i.component.legends[r]),t[r]||(n.legend[r]="independent",delete t[r]))}for(const i of P(t))for(const r of e.children)r.component.legends[i]&&n.legend[i]==="shared"&&delete r.component.legends[i];return t}function zR(e,t){if(!e)return t.clone();const n=e.getWithExplicit("orient"),i=t.getWithExplicit("orient");if(n.explicit&&i.explicit&&n.value!==i.value)return;let r=!1;for(const o of DR){const s=Oo(e.getWithExplicit(o),t.getWithExplicit(o),o,"legend",(a,u)=>{switch(o){case"symbolType":return zse(a,u);case"title":return dT(a,u);case"type":return r=!0,Sn("symbol")}return Cp(a,u,o,"legend")});e.setWithExplicit(o,s)}return r&&(e.implicit?.encode?.gradient&&K1(e.implicit,["encode","gradient"]),e.explicit?.encode?.gradient&&K1(e.explicit,["encode","gradient"])),e}function zse(e,t){return t.value==="circle"?t:e}function Pse(e,t,n,i){e.encode??={},e.encode[t]??={},e.encode[t].update??={},e.encode[t].update[n]=i}function PR(e){const t=e.component.legends,n={};for(const r of P(t)){const o=e.getScaleComponent(r),s=Ae(o.get("domains"));if(n[s])for(const a of n[s])zR(a,t[r])||n[s].push(t[r]);else n[s]=[t[r].clone()]}return nt(n).flat().map(r=>Lse(r,e.config)).filter(r=>r!==void 0)}function Lse(e,t){const{disable:n,labelExpr:i,selections:r,...o}
13=e.combine();if(!n){if(t.aria===!1&&o.aria==null&&(o.aria=!1),o.encode?.symbols){const s=o.encode.symbols.update;s.fill&&s.fill.value!=="transparent"&&!s.stroke&&!o.stroke&&(s.stroke={value:"transparent"});for(const a of CN)o[a]&&delete s[a]}if(o.title||delete o.title,i!==void 0){let s=i;o.encode?.labels?.update&&ee(o.encode.labels.update.text)&&(s=uu(i,"datum.label",o.encode.labels.update.text.signal)),Pse(o,"labels","text",{signal:s})}return o}}function Ise(e){return Bu(e)||K2(e)?Bse(e):LR(e)}function Bse(e){return e.children.reduce((t,n)=>t.concat(n.assembleProjections()),LR(e))}function LR(e){const t=e.component.projection;if(!t||t.merged)return[];const n=t.combine(),{name:i}=n;if(t.data){const r={signal:`[${t.size.map(s=>s.signal).join(", ")}]`},o=t.data.reduce((s,a)=>{const u=ee(a)?a.signal:`data('${e.lookupDataSource(a)}')`;return ge(s,u)||s.push(u),s},[]);if(o.length<=0)throw new Error("Projection's fit didn't find any data sources");return[{name:i,size:r,fit:{signal:o.length>1?`[${o.join(", ")}]`:o[0]},...n}]}else return[{name:i,translate:{signal:"[width / 2, height / 2]"},...n}]}const Use=["type","clipAngle","clipExtent","center","rotate","precision","reflectX","reflectY","coefficient","distance","fraction","lobes","parallel","radius","ratio","spacing","tilt"];class IR extends io{specifiedProjection;size;data;merged=!1;constructor(t,n,i,r){super({...n},{name:t}),this.specifiedProjection=n,this.size=i,this.data=r}get isFit(){return!!this.data}}function BR(e){e.component.projection=Ue(e)?jse(e):Hse(e)}function jse(e){if(e.hasProjection){const t=St(e.specifiedProjection),n=!(t&&(t.scale!=null||t.translate!=null)),i=n?[e.getSizeSignalRef("width"),e.getSizeSignalRef("height")]:void 0,r=n?qse(e):void 0,o=new IR(e.projectionName(!0),{...St(e.config.projection),...t},i,r);return o.get("type")||o.set("type","equalEarth",!1),o}}function qse(e){const t=[],{encoding:n}=e;for(const i of[[Ai,$i],[Xn,Ci]])(et(n[i[0]])||et(n[i[1]]))&&t.push({signal:e.getName(`geojson_${t.length}`)});return e.channelHasField(xn)&&e.typedFieldDef(xn).type===Ou&&t.push({signal:e.getName(`geojson_${t.length}`)}),t.length===0&&t.push(e.requestDataName(qe.Main)),t}function Wse(e,t){const n=j5(Use,r=>!!(!X(e.explicit,r)&&!X(t.explicit,r)||X(e.explicit,r)&&X(t.explicit,r)&&In(e.get(r),t.get(r))));if(In(e.size,t.size)){if(n)return e;if(In(e.explicit,{}))return t;if(In(t.explicit,{}))return e}return null}function Hse(e){if(e.children.length===0)return;let t;for(const i of e.children)BR(i);const n=j5(e.children,i=>{const r=i.component.projection;if(r)if(t){const o=Wse(t,r);return o&&(t=o),!!o}else return t=r,!0;else return!0});if(t&&n){const i=e.projectionName(!0),r=new IR(i,t.specifiedProjection,t.size,se(t.data));for(const o of e.children){const s=o.component.projection;s&&(s.isFit&&r.data.push(...o.component.projection.data),o.renameProjection(s.get("name"),i),s.merged=!0)}return r}}function Gse(e,t,n,i){if(of(t,n)){const r=Ue(e)?e.axis(n)??e.legend(n)??{}:{},o=W(t,{expr:"datum"}),s=W(t,{expr:"datum",binSuffix:"end"});return{formulaAs:W(t,{binSuffix:"range",forAs:!0}),formula:ef(o,s,r.format,r.formatType,i)}}return{}}function UR(e,t){return`${rT(e)}_${t}`}function Vse(e,t){return{signal:e.getName(`${t}_bins`),extentSignal:e.getName(`${t}_extent`)}}function H2(e,t,n){const i=_p(n,void 0)??{},r=UR(i,t);return e.getName(`${r}_bins`)}function Yse(e){return"as"in e}function Xk(e,t,n){let i,r;Yse(e)?i=Y(e.as)?[e.as,`${e.as}_end`]:[e.as[0],e.as[1]]:i=[W(e,{forAs:!0}),W(e,{binSuffix:"end",forAs:!0})];const o={..._p(t,void 0)},s=UR(o,e.field),{signal:a,extentSignal:u}=Vse(n,s);if(fp(o.extent)){const c=o.extent;r=bR(n,c.param,c),delete o.extent}const l={bin:o,field:e.field,as:[i],...a?{signal:a}:{},...u?{extentSignal:u}:{},...r?{span:r}:{}};return{key:s,binComponent:l}}class Hi extends Me{bins;clone(){return new Hi(null,se(this.bins))}constructor(t,n){super(t),this.bins=n}static makeFromEncoding(t,n){const i=n.reduceFieldDef((r,o,s)=>{if(an(o)&&Oe(o.bin)){const{key:a,binComponent:u}=Xk(o,o.bin,n);r[a]={...u,...r[a],...Gse(n,o,s,n.config)}}return r},{});return Re(i)?null:new Hi(t,i)}static makeFromTransform(t,n,i){const{key:r,binComponent:o}=Xk(n,n.bin,i);return new Hi(t,{[r]:o})}merge(t,n){for(const i of P(t.bins))i in this.bins?(n(t.bins[i].signal,this.bins[i].signal),this.bins[i].as=Mr([...this.bins[i].as,...t.bins[i].as],me)):this.bins[i]=t.bins[i];for(const i of t.children)t.removeChild(i),i.parent=this;t.remove()}producedFields(){return new Set(nt(this.bins).map(t=>t.as).flat(2))}dependentFields(){return new Set(nt(this.bins).map(t=>t.field))}hash(){return`Bin ${me(this.bins)}`}assemble(){return nt(this.bins).flatMap(t=>{const n=[],[i,...r]=t.as,{extent:o,...s}=t.bin,a={type:"bin",field:mi(t.field),as:i,signal:t.signal,...fp(o)?{extent:null}:{extent:o},...t.span?{span:{signal:`span(${t.span})`}}:{},...s};!o&&t.extentSignal&&(n.push({type:"extent",field:mi(t.field),signal:t.extentSignal}),a.extent={signal:t.extentSignal}),n.push(a);for(const u of r)for(let l=0;l<2;l++)n.push({type:"formula",expr:W({field:i[l]},{expr:"datum"}),as:u[l]});return t.formula&&n.push({type:"formula",expr:t.formula,as:t.formulaAs}),n})}}function Xse(e,t,n,i){const r=Ue(i)?i.encoding[cr(t)]:void 0;if(an(n)&&Ue(i)&&QT(n,r,i.markDef,i.config)){e.add(W(n,{})),e.add(W(n,{suffix:"end"}));const{mark:o,markDef:s,config:a}=i,u=Ro({fieldDef:n,markDef:s,config:a});pc(o)&&u!==.5&&Ke(t)&&(e.add(W(n,{suffix:Mp})),e.add(W(n,{suffix:Fp}))),n.bin&&of(n,t)&&e.add(W(n,{binSuffix:"range"}))}else if(X5(t)){const o=Y5(t);e.add(i.getName(o))}else e.add(W(n));return ha(n)&&zne(n.scale?.range)&&e.add(n.scale.range.field),e}function Kse(e,t){for(const n of P(t)){const i=t[n];for(const r of P(i))n in e?e[n][r]=new Set([...e[n][r]??[],...i[r]]):e[n]={[r]:i[r]}}}class di extends Me{dimensions;measures;clone(){return new di(null,new Set(this.dimensions),se(this.measures))}constructor(t,n,i){super(t),this.dimensions=n,this.measures=i}get groupBy(){return this.dimensions}static makeFromEncoding(t,n){let i=!1;
13n.forEachFieldDef(s=>{s.aggregate&&(i=!0)});const r={},o=new Set;return!i||(n.forEachFieldDef((s,a)=>{const{aggregate:u,field:l}=s;if(u)if(u==="count")r["*"]??={},r["*"].count=new Set([W(s,{forAs:!0})]);else{if(Hr(u)||Xo(u)){const c=Hr(u)?"argmin":"argmax",f=u[c];r[f]??={},r[f][c]=new Set([W({op:c,field:f},{forAs:!0})])}else r[l]??={},r[l][u]=new Set([W(s,{forAs:!0})]);fr(a)&&n.scaleDomain(a)==="unaggregated"&&(r[l]??={},r[l].min=new Set([W({field:l,aggregate:"min"},{forAs:!0})]),r[l].max=new Set([W({field:l,aggregate:"max"},{forAs:!0})]))}else Xse(o,a,s,n)}),o.size+P(r).length===0)?null:new di(t,o,r)}static makeFromTransform(t,n){const i=new Set,r={};for(const o of n.aggregate){const{op:s,field:a,as:u}=o;s&&(s==="count"?(r["*"]??={},r["*"].count=new Set([u||W(o,{forAs:!0})])):(r[a]??={},r[a][s]??=new Set,r[a][s].add(u||W(o,{forAs:!0}))))}for(const o of n.groupby??[])i.add(o);return i.size+P(r).length===0?null:new di(t,i,r)}merge(t){return pee(this.dimensions,t.dimensions)?(Kse(this.measures,t.measures),!0):(ane("different dimensions, cannot merge"),!1)}addDimensions(t){t.forEach(this.dimensions.add,this.dimensions)}dependentFields(){return new Set([...this.dimensions,...P(this.measures)])}producedFields(){const t=new Set;for(const n of P(this.measures))for(const i of P(this.measures[n])){const r=this.measures[n][i];r.size===0?t.add(`${i}_${n}`):r.forEach(t.add,t)}return t}hash(){return`Aggregate ${me({dimensions:this.dimensions,measures:this.measures})}`}assemble(){const t=[],n=[],i=[];for(const o of P(this.measures))for(const s of P(this.measures[o]))for(const a of this.measures[o][s])i.push(a),t.push(s),n.push(o==="*"?null:mi(o));return{type:"aggregate",groupby:[...this.dimensions].map(mi),ops:t,fields:n,as:i}}}class Lu extends Me{model;name;data;column;row;facet;childModel;constructor(t,n,i,r){super(t),this.model=n,this.name=i,this.data=r;for(const o of Bn){const s=n.facet[o];if(s){const{bin:a,sort:u}=s;this[o]={name:n.getName(`${o}_domain`),fields:[W(s),...Oe(a)?[W(s,{binSuffix:"end"})]:[]],...zr(u)?{sortField:u}:z(u)?{sortIndexField:xu(s,o)}:{}}}}this.childModel=n.child}hash(){let t="Facet";for(const n of Bn)this[n]&&(t+=` ${n.charAt(0)}:${me(this[n])}`);return t}get fields(){const t=[];for(const n of Bn)this[n]?.fields&&t.push(...this[n].fields);return t}dependentFields(){const t=new Set(this.fields);for(const n of Bn)this[n]&&(this[n].sortField&&t.add(this[n].sortField.field),this[n].sortIndexField&&t.add(this[n].sortIndexField));return t}producedFields(){return new Set}getSource(){return this.name}getChildIndependentFieldsWithStep(){const t={};for(const n of to){const i=this.childModel.component.scales[n];if(i&&!i.merged){const r=i.get("type"),o=i.get("range");if(yt(r)&&ca(o)){const s=Op(this.childModel,n),a=X2(s);a?t[n]=a:I(Xv(n))}}}return t}assembleRowColumnHeaderData(t,n,i){const r={row:"y",column:"x",facet:void 0}[t],o=[],s=[],a=[];r&&i&&i[r]&&(n?(o.push(`distinct_${i[r]}`),s.push("max")):(o.push(i[r]),s.push("distinct")),a.push(`distinct_${i[r]}`));const{sortField:u,sortIndexField:l}=this[t];if(u){const{op:c=bp,field:f}=u;o.push(f),s.push(c),a.push(W(u,{forAs:!0}))}else l&&(o.push(l),s.push("max"),a.push(l));return{name:this[t].name,source:n??this.data,transform:[{type:"aggregate",groupby:this[t].fields,...o.length?{fields:o,ops:s,as:a}:{}}]}}assembleFacetHeaderData(t){const{columns:n}=this.model.layout,{layoutHeaders:i}=this.model.component,r=[],o={};for(const u of U2){for(const l of j2){const c=i[u]?.[l]??[];for(const f of c)if(f.axes?.length>0){o[u]=!0;break}}if(o[u]){const l=`length(data("${this.facet.name}"))`,c=u==="row"?n?{signal:`ceil(${l} / ${n})`}:1:n?{signal:`min(${l}, ${n})`}:{signal:l};r.push({name:`${this.facet.name}_${u}`,transform:[{type:"sequence",start:0,stop:c}]})}}const{row:s,column:a}=o;return(s||a)&&r.unshift(this.assembleRowColumnHeaderData("facet",null,t)),r}assemble(){const t=[];let n=null;const i=this.getChildIndependentFieldsWithStep(),{column:r,row:o,facet:s}=this;if(r&&o&&(i.x||i.y)){n=`cross_${this.column.name}_${this.row.name}`;const a=[].concat(i.x??[],i.y??[]),u=a.map(()=>"distinct");t.push({name:n,source:this.data,transform:[{type:"aggregate",groupby:this.fields,fields:a,ops:u}]})}
13for(const a of[Or,Rr])this[a]&&t.push(this.assembleRowColumnHeaderData(a,n,i));if(s){const a=this.assembleFacetHeaderData(i);a&&t.push(...a)}return t}}function Kk(e){return e.startsWith("'")&&e.endsWith("'")||e.startsWith('"')&&e.endsWith('"')?e.slice(1,-1):e}function Zse(e,t){const n=H5(e);if(t==="number")return`toNumber(${n})`;if(t==="boolean")return`toBoolean(${n})`;if(t==="string")return`toString(${n})`;if(t==="date")return`toDate(${n})`;if(t==="flatten")return n;if(t.startsWith("date:")){const i=Kk(t.slice(5,t.length));return`timeParse(${n},'${i}')`}else if(t.startsWith("utc:")){const i=Kk(t.slice(4,t.length));return`utcParse(${n},'${i}')`}else return I(mte(t)),null}function Qse(e){const t={};return xd(e.filter,n=>{if(MT(n)){let i=null;t2(n)?i=$n(n.equal):i2(n)?i=$n(n.lte):n2(n)?i=$n(n.lt):r2(n)?i=$n(n.gt):o2(n)?i=$n(n.gte):s2(n)?i=n.range[0]:a2(n)&&(i=(n.oneOf??n.in)[0]),i&&(fa(i)?t[n.field]="date":Ce(i)?t[n.field]="number":Y(i)&&(t[n.field]="string")),n.timeUnit&&(t[n.field]="date")}}),t}function Jse(e){const t={};function n(i){gu(i)?t[i.field]="date":i.type==="quantitative"&&qee(i.aggregate)?t[i.field]="number":gc(i.field)>1?i.field in t||(t[i.field]="flatten"):ha(i)&&zr(i.sort)&&gc(i.sort.field)>1&&(i.sort.field in t||(t[i.sort.field]="flatten"))}if((Ue(e)||Mn(e))&&e.forEachFieldDef((i,r)=>{if(an(i))n(i);else{const o=ua(r),s=e.fieldDef(o);n({...i,type:s.type})}}),Ue(e)){const{mark:i,markDef:r,encoding:o}=e;if(Ko(i)&&!e.encoding.order){const s=r.orient==="horizontal"?"y":"x",a=o[s];U(a)&&a.type==="quantitative"&&!(a.field in t)&&(t[a.field]="number")}}return t}function eae(e){const t={};if(Ue(e)&&e.component.selection)for(const n of P(e.component.selection)){const i=e.component.selection[n];for(const r of i.project.items)!r.channel&&gc(r.field)>1&&(t[r.field]="flatten")}return t}class zt extends Me{_parse;clone(){return new zt(null,se(this._parse))}constructor(t,n){super(t),this._parse=n}hash(){return`Parse ${me(this._parse)}`}static makeExplicit(t,n,i){let r={};const o=n.data;return!So(o)&&o?.format?.parse&&(r=o.format.parse),this.makeWithAncestors(t,r,{},i)}static makeWithAncestors(t,n,i,r){for(const a of P(i)){const u=r.getWithExplicit(a);u.value!==void 0&&(u.explicit||u.value===i[a]||u.value==="derived"||i[a]==="flatten"?delete i[a]:I(sk(a,i[a],u.value)))}for(const a of P(n)){const u=r.get(a);u!==void 0&&(u===n[a]?delete n[a]:I(sk(a,n[a],u)))}const o=new io(n,i);r.copyAll(o);const s={};for(const a of P(o.combine())){const u=o.get(a);u!==null&&(s[a]=u)}return P(s).length===0||r.parseNothing?null:new zt(t,s)}get parse(){return this._parse}merge(t){this._parse={...this._parse,...t.parse},t.remove()}assembleFormatParse(){const t={};for(const n of P(this._parse)){const i=this._parse[n];gc(n)===1&&(t[n]=i)}return t}producedFields(){return new Set(P(this._parse))}dependentFields(){return new Set(P(this._parse))}assembleTransforms(t=!1){return P(this._parse).filter(n=>t?gc(n)>1:!0).map(n=>{const i=Zse(n,this._parse[n]);return i?{type:"formula",expr:i,as:Yc(n)}:null}).filter(n=>n!==null)}}class zo extends Me{clone(){return new zo(null)}constructor(t){super(t)}dependentFields(){return new Set}producedFields(){return new Set([vi])}hash(){return"Identifier"}assemble(){return{type:"identifier",as:vi}}}class uf extends Me{params;clone(){return new uf(null,this.params)}constructor(t,n){super(t),this.params=n}dependentFields(){return new Set}producedFields(){}hash(){return`Graticule ${me(this.params)}`}assemble(){return{type:"graticule",...this.params===!0?{}:this.params}}}class lf extends Me{params;clone(){return new lf(null,this.params)}constructor(t,n){super(t),this.params=n}dependentFields(){return new Set}producedFields(){return new Set([this.params.as??"data"])}hash(){return`Hash ${me(this.params)}`}assemble(){return{type:"sequence",...this.params}}}class Zs extends Me{_data;_name;_generator;constructor(t){super(null),t??={name:"source"};let n;if(So(t)||(n=t.format?{...Wn(t.format,["parse"])}:{}),mc(t))this._data={values:t.values};else if(pu(t)){if(this._data={url:t.url},!n.type){let i=/(?:\.([^.]+))?$/.exec(t.url)[1];
vendor: 4,823 bytes, line 13
13ge(["json","csv","tsv","dsv","topojson"],i)||(i="json"),n.type=i}}else HN(t)?this._data={values:[{type:"Sphere"}]}:(qN(t)||So(t))&&(this._data={});this._generator=So(t),t.name&&(this._name=t.name),n&&!Re(n)&&(this._data.format=n)}dependentFields(){return new Set}producedFields(){}get data(){return this._data}hasName(){return!!this._name}get isGenerator(){return this._generator}get dataName(){return this._name}set dataName(t){this._name=t}set parent(t){throw new Error("Source nodes have to be roots.")}remove(){throw new Error("Source nodes are roots and cannot be removed.")}hash(){throw new Error("Cannot hash sources")}assemble(){return{name:this._name,...this._data,transform:[]}}}function G2(e){return e instanceof Zs||e instanceof uf||e instanceof lf}class V2{#e;constructor(){this.#e=!1}setModified(){this.#e=!0}get modifiedFlag(){return this.#e}}class ga extends V2{getNodeDepths(t,n,i){i.set(t,n);for(const r of t.children)this.getNodeDepths(r,n+1,i);return i}optimize(t){const i=[...this.getNodeDepths(t,0,new Map).entries()].sort((r,o)=>o[1]-r[1]);for(const r of i)this.run(r[0]);return this.modifiedFlag}}class Y2 extends V2{optimize(t){this.run(t);for(const n of t.children)this.optimize(n);return this.modifiedFlag}}class tae extends Y2{mergeNodes(t,n){const i=n.shift();for(const r of n)t.removeChild(r),r.parent=i,r.remove()}run(t){const n=t.children.map(r=>r.hash()),i={};for(let r=0;r<n.length;r++)i[n[r]]===void 0?i[n[r]]=[t.children[r]]:i[n[r]].push(t.children[r]);for(const r of P(i))i[r].length>1&&(this.setModified(),this.mergeNodes(t,i[r]))}}class nae extends Y2{requiresSelectionId;constructor(t){super(),this.requiresSelectionId=t&&B2(t)}run(t){t instanceof zo&&(this.requiresSelectionId&&(G2(t.parent)||t.parent instanceof di||t.parent instanceof zt)||(this.setModified(),t.remove()))}}class iae extends V2{optimize(t){return this.run(t,new Set),this.modifiedFlag}run(t,n){let i=new Set;t instanceof qi&&(i=t.producedFields(),q5(i,n)&&(this.setModified(),t.removeFormulas(n),t.producedFields.length===0&&t.remove()));for(const r of t.children)this.run(r,new Set([...n,...i]))}}class rae extends Y2{constructor(){super()}run(t){t instanceof pn&&!t.isRequired()&&(this.setModified(),t.remove())}}class oae extends ga{run(t){if(!G2(t)&&!(t.numChildren()>1)){for(const n of t.children)if(n instanceof zt)if(t instanceof zt)this.setModified(),t.merge(n);else{if(W5(t.producedFields(),n.dependentFields()))continue;this.setModified(),n.swapWithParent()}}}}class sae extends ga{run(t){const n=[...t.children],i=t.children.filter(r=>r instanceof zt);if(t.numChildren()>1&&i.length>=1){const r={},o=new Set;for(const s of i){const a=s.parse;for(const u of P(a))u in r?r[u]!==a[u]&&o.add(u):r[u]=a[u]}for(const s of o)delete r[s];if(!Re(r)){this.setModified();const s=new zt(t,r);for(const a of n){if(a instanceof zt)for(const u of P(r))delete a.parse[u];t.removeChild(a),a.parent=s,a instanceof zt&&P(a.parse).length===0&&a.remove()}}}}}class aae extends ga{run(t){t instanceof pn||t.numChildren()>0||t instanceof Lu||t instanceof Zs||(this.setModified(),t.remove())}}class uae extends ga{run(t){const n=t.children.filter(r=>r instanceof qi),i=n.pop();for(const r of n)this.setModified(),i.merge(r)}}class lae extends ga{run(t){const n=t.children.filter(r=>r instanceof di),i={};for(const r of n){const o=me(r.groupBy);o in i||(i[o]=[]),i[o].push(r)}for(const r of P(i)){const o=i[r];if(o.length>1){const s=o.pop();for(const a of o)s.merge(a)&&(t.removeChild(a),a.parent=s,a.remove(),this.setModified())}}}}class cae extends ga{model;constructor(t){super(),this.model=t}run(t){const n=!(G2(t)||t instanceof Pu||t instanceof zt||t instanceof zo),i=[],r=[];for(const o of t.children)o instanceof Hi&&(n&&!W5(t.producedFields(),o.dependentFields())?i.push(o):r.push(o));if(i.length>0){const o=i.pop();for(const s of i)o.merge(s,this.model.renameSignal.bind(this.model));this.setModified(),t instanceof Hi?t.merge(o,this.model.renameSignal.bind(this.model)):o.swapWithParent()}if(r.length>1){const o=r.pop();for(const s of r)o.merge(s,this.model.renameSignal.bind(this.model));this.setModified()}}}class fae extends ga{run(t){const n=[...t.children];if(!hc(n,s=>s instanceof pn)||t.numChildren()<=1)return;const r=[];let o;for(const s of n)if(s instanceof pn){let a=s;for(;a.numChildren()===1;){const[u]=a.children;if(u instanceof pn)a=u;else break}r.push(...a.children),o?(t.removeChild(s),s.parent=o.parent,o.parent.removeChild(o),o.parent=a,this.setModified()):o=a}else r.push(s);if(r.length){this.setModified();for(const s of r)s.parent.removeChild(s),s.parent=o}}}class pa extends Me{transform;clone(){return new pa(null,se(this.transform))}constructor(t,n){super(t),this.transform=n}addDimensions(t){this.transform.groupby=Mr(this.transform.groupby.concat(t),n=>n)}dependentFields(){const t=new Set;
13return this.transform.groupby&&this.transform.groupby.forEach(t.add,t),this.transform.joinaggregate.map(n=>n.field).filter(n=>n!==void 0).forEach(t.add,t),t}producedFields(){return new Set(this.transform.joinaggregate.map(this.getDefaultName))}getDefaultName(t){return t.as??W(t)}hash(){return`JoinAggregateTransform ${me(this.transform)}`}assemble(){const t=[],n=[],i=[];for(const o of this.transform.joinaggregate)n.push(o.op),i.push(this.getDefaultName(o)),t.push(o.field===void 0?null:o.field);const r=this.transform.groupby;return{type:"joinaggregate",as:i,ops:n,fields:t,...r!==void 0?{groupby:r}:{}}}}class vu extends Me{filter;clone(){return new vu(null,{...this.filter})}constructor(t,n){super(t),this.filter=n}static make(t,n,i){const{config:r,markDef:o}=n,{marks:s,scales:a}=i;if(s==="include-invalid-values"&&a==="include-invalid-values")return null;const u=n.reduceFieldDef((l,c,f)=>{const d=fr(f)&&n.getScaleComponent(f);if(d){const h=d.get("type"),{aggregate:g}=c,p=g2({scaleChannel:f,markDef:o,config:r,scaleType:h,isCountAggregate:cp(g)});p!=="show"&&p!=="always-valid"&&(l[c.field]=c)}return l},{});return P(u).length?new vu(t,u):null}dependentFields(){return new Set(P(this.filter))}producedFields(){return new Set}hash(){return`FilterInvalid ${me(this.filter)}`}assemble(){const t=P(this.filter).reduce((n,i)=>{const r=this.filter[i],o=W(r,{expr:"datum"});return r!==null&&(r.type==="temporal"?n.push(`(isDate(${o}) || (${yy(o)}))`):r.type==="quantitative"&&n.push(yy(o))),n},[]);return t.length>0?{type:"filter",expr:t.join(" && ")}:null}}function yy(e){return`isValid(${e}) && isFinite(+${e})`}function dae(e){return e.stack.stackBy.reduce((t,n)=>{const i=n.fieldDef,r=W(i);return r&&t.push(r),t},[])}function hae(e){return z(e)&&e.every(t=>Y(t))&&e.length>1}class Lr extends Me{_stack;clone(){return new Lr(null,se(this._stack))}constructor(t,n){super(t),this._stack=n}static makeFromTransform(t,n){const{stack:i,groupby:r,as:o,offset:s="zero"}=n,a=[],u=[];if(n.sort!==void 0)for(const f of n.sort)a.push(f.field),u.push(Ze(f.order,"ascending"));const l={field:a,order:u};let c;return hae(o)?c=o:Y(o)?c=[o,`${o}_end`]:c=[`${n.stack}_start`,`${n.stack}_end`],new Lr(t,{dimensionFieldDefs:[],stackField:i,groupby:r,offset:s,sort:l,facetby:[],as:c})}static makeFromEncoding(t,n){const i=n.stack,{encoding:r}=n;if(!i)return null;const{groupbyChannels:o,fieldChannel:s,offset:a,impute:u}=i,l=o.map(h=>{const g=r[h];return bi(g)}).filter(h=>!!h),c=dae(n),f=n.encoding.order;let d;if(z(f)||U(f))d=lT(f);
13else{const h=JT(f)?f.sort:s==="y"?"descending":"ascending";d=c.reduce((g,p)=>(g.field.includes(p)||(g.field.push(p),g.order.push(h)),g),{field:[],order:[]})}return new Lr(t,{dimensionFieldDefs:l,stackField:n.vgField(s),facetby:[],stackby:c,sort:d,offset:a,impute:u,as:[n.vgField(s,{suffix:"start",forAs:!0}),n.vgField(s,{suffix:"end",forAs:!0})]})}get stack(){return this._stack}addDimensions(t){this._stack.facetby.push(...t)}dependentFields(){const t=new Set;return t.add(this._stack.stackField),this.getGroupbyFields().forEach(t.add,t),this._stack.facetby.forEach(t.add,t),this._stack.sort.field.forEach(t.add,t),t}producedFields(){return new Set(this._stack.as)}hash(){return`Stack ${me(this._stack)}`}getGroupbyFields(){const{dimensionFieldDefs:t,impute:n,groupby:i}=this._stack;return t.length>0?t.map(r=>r.bin?n?[W(r,{binSuffix:"mid"})]:[W(r,{}),W(r,{binSuffix:"end"})]:[W(r)]).flat():i??[]}assemble(){const t=[],{facetby:n,dimensionFieldDefs:i,stackField:r,stackby:o,sort:s,offset:a,impute:u,as:l}=this._stack;if(u)for(const c of i){const{bandPosition:f=.5,bin:d}=c;if(d){const h=W(c,{expr:"datum"}),g=W(c,{expr:"datum",binSuffix:"end"});t.push({type:"formula",expr:`${yy(h)} ? ${f}*${h}+${1-f}*${g} : ${h}`,as:W(c,{binSuffix:"mid",forAs:!0})})}t.push({type:"impute",field:r,groupby:[...o,...n],key:W(c,{binSuffix:"mid"}),method:"value",value:0})}return t.push({type:"stack",groupby:[...this.getGroupbyFields(),...n],field:r,sort:s,as:l,offset:a}),t}}class Iu extends Me{transform;clone(){return new Iu(null,se(this.transform))}constructor(t,n){super(t),this.transform=n}addDimensions(t){this.transform.groupby=Mr(this.transform.groupby.concat(t),n=>n)}dependentFields(){const t=new Set;return(this.transform.groupby??[]).forEach(t.add,t),(this.transform.sort??[]).forEach(n=>t.add(n.field)),this.transform.window.map(n=>n.field).filter(n=>n!==void 0).forEach(t.add,t),t}producedFields(){return new Set(this.transform.window.map(this.getDefaultName))}getDefaultName(t){return t.as??W(t)}hash(){return`WindowTransform ${me(this.transform)}`}assemble(){const t=[],n=[],i=[],r=[];for(const f of this.transform.window)n.push(f.op),i.push(this.getDefaultName(f)),r.push(f.param===void 0?null:f.param),t.push(f.field===void 0?null:f.field);const o=this.transform.frame,s=this.transform.groupby;if(o&&o[0]===null&&o[1]===null&&n.every(f=>Vv(f)))return{type:"joinaggregate",as:i,ops:n,fields:t,...s!==void 0?{groupby:s}:{}};const a=[],u=[];if(this.transform.sort!==void 0)for(const f of this.transform.sort)a.push(f.field),u.push(f.order??"ascending");const l={field:a,order:u},c=this.transform.ignorePeers;return{type:"window",params:r,as:i,ops:n,fields:t,sort:l,...c!==void 0?{ignorePeers:c}:{},...s!==void 0?{groupby:s}:{},...o!==void 0?{frame:o}:{}}}}function gae(e){function t(n){if(!(n instanceof Lu)){const i=n.clone();
13if(i instanceof pn){const r=by+i.getSource();i.setSource(r),e.model.component.data.outputNodes[r]=i}else(i instanceof di||i instanceof Lr||i instanceof Iu||i instanceof pa)&&i.addDimensions(e.fields);for(const r of n.children.flatMap(t))r.parent=i;return[i]}return n.children.flatMap(t)}return t}function xy(e){if(e instanceof Lu)if(e.numChildren()===1&&!(e.children[0]instanceof pn)){const t=e.children[0];(t instanceof di||t instanceof Lr||t instanceof Iu||t instanceof pa)&&t.addDimensions(e.fields),t.swapWithParent(),xy(e)}else{const t=e.model.component.data.main;jR(t);const n=gae(e),i=e.children.map(n).flat();for(const r of i)r.parent=t}else e.children.map(xy)}function jR(e){if(e instanceof pn&&e.type===qe.Main&&e.numChildren()===1){const t=e.children[0];t instanceof Lu||(t.swapWithParent(),jR(e))}}const by="scale_",Gf=5;function vy(e){for(const t of e){for(const n of t.children)if(n.parent!==t)return!1;if(!vy(t.children))return!1}return!0}function Jn(e,t){let n=!1;for(const i of t)n=e.optimize(i)||n;return n}function Zk(e,t,n){let i=e.sources,r=!1;return r=Jn(new rae,i)||r,r=Jn(new nae(t),i)||r,i=i.filter(o=>o.numChildren()>0),r=Jn(new aae,i)||r,i=i.filter(o=>o.numChildren()>0),n||(r=Jn(new oae,i)||r,r=Jn(new cae(t),i)||r,r=Jn(new iae,i)||r,r=Jn(new sae,i)||r,r=Jn(new lae,i)||r,r=Jn(new uae,i)||r,r=Jn(new tae,i)||r,r=Jn(new fae,i)||r),e.sources=i,r}function pae(e,t){vy(e.sources);let n=0,i=0;for(let r=0;r<Gf&&Zk(e,t,!0);r++)n++;e.sources.map(xy);for(let r=0;r<Gf&&Zk(e,t,!1);r++)i++;vy(e.sources),Math.max(n,i)===Gf&&I(`Maximum optimization runs(${Gf}) reached.`)}class ut{constructor(t){Object.defineProperty(this,"signal",{enumerable:!0,get:t})}signal;static fromName(t,n){return new ut(()=>t(n))}}function qR(e){Ue(e)?mae(e):yae(e)}function mae(e){const t=e.component.scales;for(const n of P(t)){const i=bae(e,n);if(t[n].setWithExplicit("domains",i),wae(e,n),e.component.data.isFaceted){let o=e;for(;!Mn(o)&&o.parent;)o=o.parent;if(o.component.resolve.scale[n]==="shared")for(const a of i.value)Fr(a)&&(a.data=by+a.data.replace(by,""))}}}function yae(e){for(const n of e.children)qR(n);const t=e.component.scales;for(const n of P(t)){let i,r=null;for(const o of e.children){const s=o.component.scales[n];if(s){i===void 0?i=s.getWithExplicit("domains"):i=Oo(i,s.getWithExplicit("domains"),"domains","scale",wy);const a=s.get("selectionExtent");r&&a&&r.param!==a.param&&I(lte),r=a}}t[n].setWithExplicit("domains",i),r&&t[n].set("selectionExtent",r,!0)}}function xae(e,t,n,i){if(e==="unaggregated"){const{valid:r,reason:o}=Qk(t,n);if(!r){I(o);return}}else if(e===void 0&&i.useUnaggregatedDomain){const{valid:r}=Qk(t,n);if(r)return"unaggregated"}return e}function bae(e,t){const n=e.getScaleComponent(t).get("type"),{encoding:i}=e,r=xae(e.scaleDomain(t),e.typedFieldDef(t),n,e.config.scale);return r!==e.scaleDomain(t)&&(e.specifiedScales[t]={...e.specifiedScales[t],domain:r}),t==="x"&&et(i.x2)?et(i.x)?Oo(ao(n,r,e,"x"),ao(n,r,e,"x2"),"domain","scale",wy):ao(n,r,e,"x2"):t==="y"&&et(i.y2)?et(i.y)?Oo(ao(n,r,e,"y"),ao(n,r,e,"y2"),"domain","scale",wy):ao(n,r,e,"y2"):ao(n,r,e,t)}function vae(e,t,n){return e.map(i=>({signal:`{data: ${Sp(i,{timeUnit:n,type:t})}}`}))}function f0(e,t,n){const i=mt(n)?.unit;return t==="temporal"||i?vae(e,t,i):[e]}function ao(e,t,n,i){const{encoding:r,markDef:o,mark:s,config:a,stack:u}=n,l=et(r[i]),{type:c}=l,f=l.timeUnit,d=hoe({invalid:Ji("invalid",o,a),isPath:Ko(s)});if(One(t)){const p=ao(e,void 0,n,i),m=f0(t.unionWith,c,f);return Ri([...m,...p.value])}else{if(ee(t))return Ri([t]);if(t&&t!=="unaggregated"&&!zT(t))return Ri(f0(t,c,f))}if(u&&i===u.fieldChannel){if(u.offset==="normalize")return Sn([[0,1]]);const p=n.requestDataName(d);return Sn([{data:p,field:n.vgField(i,{suffix:"start"})},{data:p,field:n.vgField(i,{suffix:"end"})}])}const h=fr(i)&&U(l)?_ae(n,i,e):void 0;if(dr(l)){const p=f0([l.datum],c,f);return Sn(p)}const g=l;if(t==="unaggregated"){const{field:p}=l;return Sn([{data:n.requestDataName(d),field:W({field:p,aggregate:"min"})},{data:n.requestDataName(d),field:W({field:p,aggregate:"max"})}])}else if(Oe(g.bin)){if(yt(e))return Sn(e==="bin-ordinal"?[]:[{data:Oh(h)?n.requestDataName(d):n.requestDataName(qe.Raw),field:n.vgField(i,of(g,i)?{binSuffix:"range"}:{}),sort:h===!0||!V(h)?{field:n.vgField(i,{}),op:"min"}:h}]);{const{bin:p}=g;if(Oe(p)){const m=H2(n,g.field,p);return Sn([new ut(()=>{const y=n.getSignalName(m);return`[${y}.start, ${y}.stop]`})])}else return Sn([{data:n.requestDataName(d),field:n.vgField(i,{})}])}}else if(g.timeUnit&&ge(["time","utc"],e)){const p=r[cr(i)];if(QT(g,p,o,a)){const m=n.requestDataName(d),y=Ro({fieldDef:g,fieldDef2:p,markDef:o,config:a}),x=pc(s)&&y!==.5&&Ke(i);return Sn([{data:m,field:n.vgField(i,x?{suffix:Mp}:{})},{data:m,field:n.vgField(i,{suffix:x?Fp:"end"})}])}}return Sn(h?[{data:Oh(h)?n.requestDataName(d):n.requestDataName(qe.Raw),field:n.vgField(i),sort:h}]:[{data:n.requestDataName(d),field:n.vgField(i)}])}function d0(e,t){const{op:n,field:i,order:r}=e;return{op:n??(t?"sum":bp),...i?{field:mi(i)}:{},...r?{order:r}:{}}}function wae(e,t){const n=e.component.scales[t],i=e.specifiedScales[t].domain,r=e.fieldDef(t)?.bin,o=zT(i)?i:void 0,s=la(r)&&fp(r.extent)?r.extent:void 0;(o||s)&&n.set("selectionExtent",o??s,!0)}function _ae(e,t,n){if(!yt(n))return;const i=e.fieldDef(t),r=i.sort;if(KT(r))return{op:"min",field:xu(i,t),order:"ascending"};const{stack:o}=e,s=o?new Set([...o.groupbyFields,...o.stackBy.map(a=>a.fieldDef.field)]):void 0;if(zr(r)){const a=o&&!s.has(r.field);return d0(r,a)}else if(die(r)){const{encoding:a,order:u}=r,l=e.fieldDef(a),{aggregate:c,field:f}=l,d=o&&!s.has(f);if(Hr(c)||Xo(c))return d0({field:W(l),order:u},d);if(Vv(c)||!c)return d0({op:c,field:f,order:u},d)}else{if(r==="descending")return{op:"min",field:e.vgField(t),order:"descending"};if(ge(["ascending",void 0],r))return!0}}function Qk(e,t){const{aggregate:n,type:i}=e;return n?Y(n)&&!Hee.has(n)?{valid:!1,reason:Lte(n)}:i==="quantitative"&&t==="log"?{valid:!1,reason:Ite(e)}:{valid:!0}:{valid:!1,reason:Pte(e)}}function wy(e,t,n,i){return e.explicit&&t.explicit&&I(Wte(n,i,e.value,t.value)),{explicit:e.explicit,value:[...e.value,...t.value]}}function Sae(e){const t=Mr(e.map(s=>
13{if(Fr(s)){const{sort:a,...u}=s;return u}return s}),me),n=Mr(e.map(s=>{if(Fr(s)){const a=s.sort;return a!==void 0&&!Oh(a)&&("op"in a&&a.op==="count"&&delete a.field,a.order==="ascending"&&delete a.order),a}}).filter(s=>s!==void 0),me);if(t.length===0)return;if(t.length===1){const s=e[0];if(Fr(s)&&n.length>0){let a=n[0];if(n.length>1){I(uk);const u=n.filter(l=>V(l)&&"op"in l&&l.op!=="min");n.every(l=>V(l)&&"op"in l)&&u.length===1?a=u[0]:a=!0}else if(V(a)&&"field"in a){const u=a.field;s.field===u&&(a=a.order?{order:a.order}:!0)}return{...s,sort:a}}return s}const i=Mr(n.map(s=>Oh(s)||!("op"in s)||Y(s.op)&&X(Uee,s.op)?s:(I(Gte(s)),!0)),me);let r;i.length===1?r=i[0]:i.length>1&&(I(uk),r=!0);const o=Mr(e.map(s=>Fr(s)?s.data:null),s=>s);return o.length===1&&o[0]!==null?{data:o[0],fields:t.map(a=>a.field),...r?{sort:r}:{}}:{fields:t,...r?{sort:r}:{}}}function X2(e){if(Fr(e)&&Y(e.field))return e.field;if(Gee(e)){let t;for(const n of e.fields)if(Fr(n)&&Y(n.field)){if(!t)t=n.field;else if(t!==n.field)return I(Vte),t}return I(Yte),t}else if(Vee(e)){I(Xte);const t=e.fields[0];return Y(t)?t:void 0}}function Op(e,t){const i=e.component.scales[t].get("domains").map(r=>(Fr(r)&&(r.data=e.lookupDataSource(r.data)),r));return Sae(i)}function WR(e){return Bu(e)||K2(e)?e.children.reduce((t,n)=>t.concat(WR(n)),Jk(e)):Jk(e)}function Jk(e){return P(e.component.scales).reduce((t,n)=>{const i=e.component.scales[n];if(i.merged)return t;const r=i.combine(),{name:o,type:s,selectionExtent:a,domains:u,range:l,reverse:c,...f}=r,d=Eae(r.range,o,n,e),h=Op(e,n),g=a?Eoe(e,a,i,h):null;return t.push({name:o,type:s,...h?{domain:h}:{},...g?{domainRaw:g}:{},range:d,...c!==void 0?{reverse:c}:{},...f}),t},[])}function Eae(e,t,n,i){if(Ke(n)){if(ca(e))return{step:{signal:`${t}_step`}}}else if(V(e)&&Fr(e))return{...e,data:i.lookupDataSource(e.data)};return e}class HR extends io{merged=!1;constructor(t,n){super({},{name:t}),this.setWithExplicit("type",n)}domainHasZero(){const t=this.get("type");if(ge([Et.LOG,Et.TIME,Et.UTC],t))return"definitely-not";const n=this.get("zero");if(n===!0||n===void 0&&ge([Et.LINEAR,Et.SQRT,Et.POW],t))return"definitely";const i=this.get("domains");if(i.length>0){let r=!1,o=!1,s=!1;for(const a of i){if(z(a)){const u=a[0],l=a[a.length-1];if(Ce(u)&&Ce(l))if(u<=0&&l>=0){r=!0;continue}else{o=!0;continue}}s=!0}if(r)return"definitely";if(o&&!s)return"definitely-not"}return"maybe"}}const kae=["range","scheme"];function $ae(e){const t=e.component.scales;for(const n of Gv){const i=t[n];if(!i)continue;const r=Aae(n,e);i.setWithExplicit("range",r)}}function e$(e,t){const n=e.fieldDef(t);if(n?.bin){const{bin:i,field:r}=n,o=bn(t),s=e.getName(o);if(V(i)&&i.binned&&i.step!==void 0)return new ut(()=>{const a=e.scaleName(t),u=`(domain("${a}")[1] - domain("${a}")[0]) / ${i.step}`;return`${e.getSignalName(s)} / (${u})`});if(Oe(i)){const a=H2(e,r,i);return new ut(()=>{const u=e.getSignalName(a),l=`(${u}.stop - ${u}.start) / ${u}.step`;return`${e.getSignalName(s)} / (${l})`})}}}function Aae(e,t){const n=t.specifiedScales[e],{size:i}=t,o=t.getScaleComponent(e).get("type");for(const f of kae)if(n[f]!==void 0){const d=ty(o,f),h=PT(e,f);if(!d)I(mT(o,f,e));else if(h)I(h);else switch(f){case"range":{const g=n.range;if(z(g)){if(Ke(e))return Ri(g.map(p=>{if(p==="width"||p==="height"){const m=t.getName(p),y=t.getSignalName.bind(t);return ut.fromName(y,m)}return p}))}else if(V(g))return Ri({data:t.requestDataName(qe.Main),field:g.field,sort:{op:"min",field:t.vgField(e)}});return Ri(g)}case"scheme":return Ri(Cae(n[f]))}}const s=e===Ie||e==="xOffset"?"width":"height",a=i[s];if(tr(a)){if(Ke(e))if(yt(o)){const f=VR(a,t,e);if(f)return Ri({step:f})}else I(yT(s));else if(Zc(e)){const f=e===qo?"x":"y";if(t.getScaleComponent(f).get("type")==="band"){const g=YR(a,o);if(g)return Ri(g)}}}const{rangeMin:u,rangeMax:l}=n,c=Mae(e,t);return(u!==void 0||l!==void 0)&&ty(o,"rangeMin")&&z(c)&&c.length===2?Ri([u??c[0],l??c[1]]):Sn(c)}function Cae(e){return Rne(e)?{scheme:e.name,...Wn(e,["name"])}:{scheme:e}}function GR(e,t,n,{center:i}={}){const r=bn(e),o=t.getName(r),s=t.getSignalName.bind(t);return e===bt&&yi(n)?i?[ut.fromName(a=>`${s(a)}/2`,o),ut.fromName(a=>`-${s(a)}/2`,o)]:[ut.fromName(s,o),0]:i?[ut.fromName(a=>`-${s(a)}/2`,o),ut.fromName(a=>`${s(a)}/2`,o)]:[0,ut.fromName(s,o)]}function Mae(e,t){const{size:n,config:i,mark:r,encoding:o}=t,{type:s}=et(o[e]),u=t.getScaleComponent(e).get("type"),{domain:l,domainMid:c}=t.specifiedScales[e];switch(e){case Ie:case bt:{if(ge(["point","band"],u)){const f=XR(e,n,i.view);if(tr(f))return{step:VR(f,t,e)}}return GR(e,t,u)}case qo:case Ru:return Fae(e,t,u);case Jr:{const f=Nae(r,i),d=Rae(r,n,t,i);return fu(u)?Tae(f,d,Dae(u,i,l,e)):[f,d]}case Zn:return[0,Math.PI*2];case aa:return[0,360];case ki:return[0,new ut(()=>{const f=t.getSignalName(Mn(t.parent)?"child_width":"width"),d=t.getSignalName(Mn(t.parent)?"child_height":"height");return`min(${f},${d})/2`})];case Wo:return{step:1e3/i.scale.framesPerSecond};case Vo:return[i.scale.minStrokeWidth,i.scale.maxStrokeWidth];case Yo:return[[1,0],[4,2],[2,1],[1,1],[1,2,4,2]];case xn:return"symbol";case yn:case ur:case lr:return u==="ordinal"?s==="nominal"?"category":"ordinal":c!==void 0?"diverging":r==="rect"||r==="geoshape"?"heatmap":"ramp";case eo:case Ho:case Go:return[i.scale.minOpacity,i.scale.maxOpacity]}}function VR(e,t,n){const{encoding:i}=t,r=t.getScaleComponent(n),o=jv(n),s=i[o];if(FN({step:e,offsetIsDiscrete:ae(s)&&DT(s.type)})==="offset"&&cN(i,o)){const u=t.getScaleComponent(o);let c=`domain('${t.scaleName(o)}').length`;if(u.get("type")==="band"){const d=u.get("paddingInner")??u.get("padding")??0,h=u.get("paddingOuter")??u.get("padding")??0;c=`bandspace(${c}, ${d}, ${h})`}const f=r.get("paddingInner")??r.get("padding");return{signal:`${e.step} * ${c} / (1-${Qee(f)})`}}else return e.step}function YR(e,t){if(FN({step:e,offsetIsDiscrete:yt(t)})==="offset")return{step:e.step}}function Fae(e,t,n){const i=e===qo?"x":"y",r=t.getScaleComponent(i);if(!r)return GR(i,t,n,{center:!0});const o=r.get("type"),s=t.scaleName(i),{markDef:a,config:u}=t;if(o==="band"){const l=XR(i,t.size,t.config.view);if(tr(l)){const c=YR(l,n);if(c)return c}return[0,{signal:`bandwidth('${s}')`}]}else{const l=t.encoding[i];if(U(l)&&l.timeUnit){const c=AT(l.timeUnit,g=>`scale('${s}', ${g})`),f=t.config.scale.bandWithNestedOffsetPaddingInner,d=Ro({fieldDef:l,markDef:a,config:u})-.5,h=d!==0?` + ${d}`:"";if(f){const g=ee(f)?`${f.signal}/2${h}
13`:`${f/2+d}`,p=ee(f)?`(1 - ${f.signal}/2)${h}`:`${1-f/2+d}`;return[{signal:`${g} * (${c})`},{signal:`${p} * (${c})`}]}return[0,{signal:c}]}return dee(`Cannot use ${e} scale if ${i} scale is not discrete.`)}}function XR(e,t,n){const i=e===Ie?"width":"height",r=t[i];return r||Hh(n,i)}function Dae(e,t,n,i){switch(e){case"quantile":return t.scale.quantileCount;case"quantize":return t.scale.quantizeCount;case"threshold":return n!==void 0&&z(n)?n.length+1:(I(rne(i)),3)}}function Tae(e,t,n){const i=()=>{const r=li(t),o=li(e),s=`(${r} - ${o}) / (${n} - 1)`;return`sequence(${o}, ${r} + ${s}, ${s})`};return ee(t)?new ut(i):{signal:i()}}function Nae(e,t){switch(e){case"bar":case"tick":return t.scale.minBandSize;case"line":case"trail":case"rule":return t.scale.minStrokeWidth;case"text":return t.scale.minFontSize;case"point":case"square":case"circle":return t.scale.minSize}throw new Error(dp("size",e))}const t$=.95;function Rae(e,t,n,i){const r={x:e$(n,"x"),y:e$(n,"y")};switch(e){case"bar":case"tick":{if(i.scale.maxBandSize!==void 0)return i.scale.maxBandSize;const o=n$(t,r,i.view);return Ce(o)?o-1:new ut(()=>`${o.signal} - 1`)}case"line":case"trail":case"rule":return i.scale.maxStrokeWidth;case"text":return i.scale.maxFontSize;case"point":case"square":case"circle":{if(i.scale.maxSize)return i.scale.maxSize;const o=n$(t,r,i.view);return Ce(o)?Math.pow(t$*o,2):new ut(()=>`pow(${t$} * ${o.signal}, 2)`)}}throw new Error(dp("size",e))}function n$(e,t,n){const i=tr(e.width)?e.width.step:oy(n,"width"),r=tr(e.height)?e.height.step:oy(n,"height");return t.x||t.y?new ut(()=>`min(${[t.x?t.x.signal:i,t.y?t.y.signal:r].join(", ")})`):Math.min(i,r)}function KR(e,t){Ue(e)?Oae(e,t):QR(e,t)}function Oae(e,t){const n=e.component.scales,{config:i,encoding:r,markDef:o,specifiedScales:s}=e;for(const a of P(n)){const u=s[a],l=n[a],c=e.getScaleComponent(a),f=et(r[a]),d=u[t],h=c.get("type"),g=c.get("padding"),p=c.get("paddingInner"),m=ty(h,t),y=PT(a,t);if(d!==void 0&&(m?y&&I(y):I(mT(h,t,a))),m&&y===void 0)if(d!==void 0){const x=f.timeUnit,b=f.type;switch(t){case"domainMax":case"domainMin":fa(u[t])||b==="temporal"||x?l.set(t,{signal:Sp(u[t],{type:b,timeUnit:x})},!0):l.set(t,u[t],!0);break;default:l.copyKeyFromObject(t,u)}}else{const x=L(i$,t)?i$[t]({model:e,channel:a,fieldOrDatumDef:f,scaleType:h,scalePadding:g,scalePaddingInner:p,domain:u.domain,domainMin:u.domainMin,domainMax:u.domainMax,markDef:o,config:i,hasNestedOffsetScale:fN(r,a),hasSecondaryRangeChannel:!!r[cr(a)]}):i.scale[t];x!==void 0&&l.set(t,x,!1)}}}const i$={bins:({model:e,fieldOrDatumDef:t})=>U(t)?zae(e,t):void 0,interpolate:({channel:e,fieldOrDatumDef:t})=>Pae(e,t.type),nice:({scaleType:e,channel:t,domain:n,domainMin:i,domainMax:r,fieldOrDatumDef:o})=>Lae(e,t,n,i,r,o),padding:({channel:e,scaleType:t,fieldOrDatumDef:n,markDef:i,config:r})=>Iae(e,t,r.scale,n,i,r.bar),paddingInner:({scalePadding:e,channel:t,markDef:n,scaleType:i,config:r,hasNestedOffsetScale:o})=>Bae(e,t,n.type,i,r.scale,o),paddingOuter:({scalePadding:e,channel:t,scaleType:n,scalePaddingInner:i,config:r,hasNestedOffsetScale:o})=>Uae(e,t,n,i,r.scale,o),reverse:({fieldOrDatumDef:e,scaleType:t,channel:n,config:i})=>{const r=U(e)?e.sort:void 0;return jae(t,r,n,i.scale)},zero:({channel:e,fieldOrDatumDef:t,domain:n,markDef:i,scaleType:r,config:o,hasSecondaryRangeChannel:s})=>qae(e,t,n,i,r,o.scale,s)};function ZR(e){Ue(e)?$ae(e):QR(e,"range")}function QR(e,t){const n=e.component.scales;for(const i of e.children)t==="range"?ZR(i):KR(i,t);for(const i of P(n)){let r;for(const o of e.children){const s=o.component.scales[i];if(s){const a=s.getWithExplicit(t);r=Oo(r,a,t,"scale",jN((u,l)=>{switch(t){case"range":return u.step&&l.step?u.step-l.step:0}return 0}))}}n[i].setWithExplicit(t,r)}}function zae(e,t){const n=t.bin;if(Oe(n)){const i=H2(e,t.field,n);return new ut(()=>e.getSignalName(i))}else if(_t(n)&&la(n)&&n.step!==void 0)return{step:n.step}}function Pae(e,t){if(ge([yn,ur,lr],e)&&t!=="nominal")return"hcl"}function Lae(e,t,n,i,r,o){if(!(bi(o)?.bin||z(n)||r!=null||i!=null||ge([Et.TIME,Et.UTC],e)))return Ke(t)?!0:void 0}function Iae(e,t,n,i,r,o){if(Ke(e)){if(Ii(t)){if(n.continuousPadding!==void 0)return n.continuousPadding;const{type:s,orient:a}=r;if(s==="bar"&&!(U(i)&&(i.bin||i.timeUnit))&&(a==="vertical"&&e==="x"||a==="horizontal"&&e==="y"))return o.continuousBandSize}if(t===Et.POINT)return n.pointPadding}}function Bae(e,t,n,i,r,o=!1){if(e===void 0){if(Ke(t)){const{bandPaddingInner:s,barBandPaddingInner:a,rectBandPaddingInner:u,tickBandPaddingInner:l,bandWithNestedOffsetPaddingInner:c}=r;return o?c:Ze(s,n==="bar"?a:n==="tick"?l:u)}else if(Zc(t)&&i===Et.BAND)return r.offsetBandPaddingInner}}
13function Uae(e,t,n,i,r,o=!1){if(e===void 0){if(Ke(t)){const{bandPaddingOuter:s,bandWithNestedOffsetPaddingOuter:a}=r;if(o)return a;if(n===Et.BAND)return Ze(s,ee(i)?{signal:`${i.signal}/2`}:i/2)}else if(Zc(t)){if(n===Et.POINT)return .5;if(n===Et.BAND)return r.offsetBandPaddingOuter}}}function jae(e,t,n,i){if(n==="x"&&i.xReverse!==void 0)return yi(e)&&t==="descending"?ee(i.xReverse)?{signal:`!${i.xReverse.signal}`}:!i.xReverse:i.xReverse;if(yi(e)&&t==="descending")return!0}function qae(e,t,n,i,r,o,s){if(!!n&&n!=="unaggregated"&&yi(r)){if(z(n)){const u=n[0],l=n[n.length-1];if(Ce(u)&&u<=0&&Ce(l)&&l>=0)return!0}return!1}if(e==="size"&&t.type==="quantitative"&&!fu(r))return!0;if(!(U(t)&&t.bin)&&ge([...to,...Tee],e)){const{orient:u,type:l}=i;return ge(["bar","area","line","trail"],l)&&(u==="horizontal"&&e==="y"||u==="vertical"&&e==="x")?!1:ge(["bar","area"],l)&&!s?!0:o?.zero}return!1}function Wae(e,t,n,i,r=!1){const o=Hae(t,n,i,r),{type:s}=e;return fr(t)?s!==void 0?Une(t,s)?U(n)&&!Bne(s,n.type)?(I(jte(s,o)),o):s:(I(Ute(t,s,o)),o):o:null}function Hae(e,t,n,i){switch(t.type){case"nominal":case"ordinal":{if(Ba(e)||e0(e)==="discrete")return e==="shape"&&t.type==="ordinal"&&I(t0(e,"ordinal")),"ordinal";if(Jm(e))return"band";if(Ke(e)||Zc(e)){if(ge(["rect","bar","image","rule","tick"],n.type)||i)return"band"}else if(n.type==="arc"&&e in Hv)return"band";const r=n[bn(e)];return Vs(r)||hu(t)&&t.axis?.tickBand?"band":"point"}case"temporal":return Ba(e)?"time":e0(e)==="discrete"?(I(t0(e,"temporal")),"ordinal"):U(t)&&t.timeUnit&&mt(t.timeUnit).utc?"utc":Jm(e)?"band":"time";case"quantitative":return Ba(e)?U(t)&&Oe(t.bin)?"bin-ordinal":"linear":e0(e)==="discrete"?(I(t0(e,"quantitative")),"ordinal"):Jm(e)?"band":"linear";case"geojson":return}throw new Error(gT(t.type))}function Gae(e,{ignoreRange:t}={}){JR(e),qR(e);for(const n of Ine)KR(e,n);t||ZR(e)}function JR(e){Ue(e)?e.component.scales=Vae(e):e.component.scales=Xae(e)}function Vae(e){const{encoding:t,mark:n,markDef:i}=e,r={};for(const o of Gv){const s=et(t[o]);if(s&&n===BT&&o===xn&&s.type===Ou)continue;let a=s&&s.scale;if(s&&a!==null&&a!==!1){a??={};const u=fN(t,o),l=Wae(a,o,s,i,u);r[o]=new HR(e.scaleName(`${o}`,!0),{value:l,explicit:a.type===l})}}return r}const Yae=jN((e,t)=>ck(e)-ck(t));function Xae(e){const t=e.component.scales={},n={},i=e.component.resolve;for(const r of e.children){JR(r);for(const o of P(r.component.scales))if(i.scale[o]??=FR(o,e),i.scale[o]==="shared"){const s=n[o],a=r.component.scales[o].getWithExplicit("type");s?Mne(s.value,a.value)?n[o]=Oo(s,a,"type","scale",Yae):(i.scale[o]="independent",delete n[o]):n[o]=a}}for(const r of P(n)){const o=e.scaleName(r,!0),s=n[r];t[r]=new HR(o,s);for(const a of e.children){const u=a.component.scales[r];u&&(a.renameScale(u.get("name"),o),u.merged=!0)}}return t}class h0{nameMap;constructor(){this.nameMap={}}rename(t,n){this.nameMap[t]=n}has(t){return this.nameMap[t]!==void 0}get(t){for(;this.nameMap[t]&&t!==this.nameMap[t];)t=this.nameMap[t];return t}}function Ue(e){return e?.type==="unit"}function Mn(e){return e?.type==="facet"}function K2(e){return e?.type==="concat"}function Bu(e){return e?.type==="layer"}class Z2{type;parent;config;name;size;title;description;data;transforms;layout;scaleNameMap;projectionNameMap;signalNameMap;component;view;constructor(t,n,i,r,o,s,a){this.type=n,this.parent=i,this.config=o,this.parent=i,this.config=o,this.view=St(a),this.name=t.name??r,this.title=fo(t.title)?{text:t.title}:t.title?St(t.title):void 0,this.scaleNameMap=i?i.scaleNameMap:new h0,this.projectionNameMap=i?i.projectionNameMap:new h0,this.signalNameMap=i?i.signalNameMap:new h0,this.data=t.data,this.description=t.description,this.transforms=eoe(t.transform??[]),this.layout=n==="layer"||n==="unit"?{}:rre(t,n,o),this.component={data:{sources:i?i.component.data.sources:[],outputNodes:i?i.component.data.outputNodes:{},outputNodeRefCounts:i?i.component.data.outputNodeRefCounts:{},isFaceted:vp(t)||i?.component.data.isFaceted&&t.data===void 0},layoutSize:new io,layoutHeaders:{row:{},column:{},facet:{}},mark:null,resolve:{scale:{},axis:{},legend:{},...s?se(s):{}},selection:null,scales:null,projection:null,axes:{},legends:{}}}
13get width(){return this.getSizeSignalRef("width")}get height(){return this.getSizeSignalRef("height")}parse(){this.parseScale(),this.parseLayoutSize(),this.renameTopLevelLayoutSizeSignal(),this.parseSelections(),this.parseProjection(),this.parseData(),this.parseAxesAndHeaders(),this.parseLegends(),this.parseMarkGroup()}parseScale(){Gae(this)}parseProjection(){BR(this)}renameTopLevelLayoutSizeSignal(){this.getName("width")!=="width"&&this.renameSignal(this.getName("width"),"width"),this.getName("height")!=="height"&&this.renameSignal(this.getName("height"),"height")}parseLegends(){OR(this)}assembleEncodeFromView(t){const{style:n,...i}=t,r={};for(const o of P(i)){const s=i[o];s!==void 0&&(r[o]=Pe(s))}return r}assembleGroupEncodeEntry(t){let n={};return this.view&&(n=this.assembleEncodeFromView(this.view)),!t&&(this.description&&(n.description=Pe(this.description)),this.type==="unit"||this.type==="layer")?{width:this.getSizeSignalRef("width"),height:this.getSizeSignalRef("height"),...n}:Re(n)?void 0:n}assembleLayout(){if(!this.layout)return;const{spacing:t,...n}=this.layout,{component:i,config:r}=this,o=mse(i.layoutHeaders,r);return{padding:t,...this.assembleDefaultLayout(),...n,...o?{titleBand:o}:{}}}assembleDefaultLayout(){return{}}assembleHeaderMarks(){const{layoutHeaders:t}=this.component;let n=[];for(const i of Bn)t[i].title&&n.push(cse(this,i));for(const i of U2)n=n.concat(fse(this,i));return n}assembleAxes(){return Zoe(this.component.axes,this.config)}assembleLegends(){return PR(this)}assembleProjections(){return Ise(this)}assembleTitle(){const{encoding:t,...n}=this.title??{},i={...oT(this.config.title).nonMarkTitleProperties,...n,...t?{encode:{update:t}}:{}};if(i.text)return ge(["unit","layer"],this.type)?ge(["middle",void 0],i.anchor)&&(i.frame??="group"):i.anchor??="start",Re(i)?void 0:i}assembleGroup(t=[]){const n={};t=t.concat(this.assembleSignals()),t.length>0&&(n.signals=t);const i=this.assembleLayout();i&&(n.layout=i),n.marks=[].concat(this.assembleHeaderMarks(),this.assembleMarks());const r=!this.parent||Mn(this.parent)?WR(this):[];r.length>0&&(n.scales=r);const o=this.assembleAxes();o.length>0&&(n.axes=o);const s=this.assembleLegends();return s.length>0&&(n.legends=s),n}getName(t){return je((this.name?`${this.name}_`:"")+t)}getDataName(t){return this.getName(qe[t].toLowerCase())}requestDataName(t){const n=this.getDataName(t),i=this.component.data.outputNodeRefCounts;return i[n]=(i[n]||0)+1,n}getSizeSignalRef(t){if(Mn(this.parent)){const n=CR(t),i=lp(n),r=this.component.scales[i];if(r&&!r.merged){const o=r.get("type"),s=r.get("range");if(yt(o)&&ca(s)){const a=r.get("name"),u=Op(this,i),l=X2(u);if(l){const c=W({aggregate:"distinct",field:l},{expr:"datum"});return{signal:AR(a,r,c)}}else return I(Xv(i)),null}}}return{signal:this.signalNameMap.get(this.getName(t))}}lookupDataSource(t){const n=this.component.data.outputNodes[t];return n?n.getSource():t}getSignalName(t){return this.signalNameMap.get(t)}renameSignal(t,n){this.signalNameMap.rename(t,n)}renameScale(t,n){this.scaleNameMap.rename(t,n)}renameProjection(t,n){this.projectionNameMap.rename(t,n)}scaleName(t,n){if(n)return this.getName(t);if(Z5(t)&&fr(t)&&this.component.scales[t]||this.scaleNameMap.has(this.getName(t)))return this.scaleNameMap.get(this.getName(t))}projectionName(t){if(t)return this.getName("projection");if(this.component.projection&&!this.component.projection.merged||this.projectionNameMap.has(this.getName("projection")))return this.projectionNameMap.get(this.getName("projection"))}getScaleComponent(t){if(!this.component.scales)throw new Error("getScaleComponent cannot be called before parseScale(). Make sure you have called parseScale or use parseUnitModelWithScale().");const n=this.component.scales[t];return n&&!n.merged?n:this.parent?this.parent.getScaleComponent(t):void 0}getScaleType(t){const n=this.getScaleComponent(t);return n?n.get("type"):void 0}getSelectionComponent(t,n){let i=this.component.selection[t];if(!i&&this.parent&&(i=this.parent.getSelectionComponent(t,n)),!i)throw new Error(ite(n));return i}hasAxisOrientSignalRef(){return this.component.axes.x?.some(t=>t.hasOrientSignalRef())||this.component.axes.y?.some(t=>t.hasOrientSignalRef())}}class eO extends Z2{vgField(t,n={}){const i=this.fieldDef(t);if(i)return W(i,n)}reduceFieldDef(t,n){return Nie(this.getMapping(),(i,r,o)=>{const s=bi(r);return s?t(i,s,o):i},n)}forEachFieldDef(t,n){S2(this.getMapping(),(i,r)=>{const o=bi(i);o&&t(o,r)},n)}}class zp extends Me{transform;
vendor: 4,583 bytes, line 13
13clone(){return new zp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const i=this.transform.as??[void 0,void 0];this.transform.as=[i[0]??"value",i[1]??"density"];const r=this.transform.resolve??"shared";this.transform.resolve=r}dependentFields(){return new Set([this.transform.density,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`DensityTransform ${me(this.transform)}`}assemble(){const{density:t,...n}=this.transform,i={type:"kde",field:t,...n};return i.resolve=this.transform.resolve,i}}class Pp extends Me{transform;clone(){return new Pp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n)}dependentFields(){return new Set([this.transform.extent])}producedFields(){return new Set([])}hash(){return`ExtentTransform ${me(this.transform)}`}assemble(){const{extent:t,param:n}=this.transform;return{type:"extent",field:t,signal:n}}}class Lp extends Me{transform;clone(){return new Lp(this.parent,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const{flatten:i,as:r=[]}=this.transform;this.transform.as=i.map((o,s)=>r[s]??o)}dependentFields(){return new Set(this.transform.flatten)}producedFields(){return new Set(this.transform.as)}hash(){return`FlattenTransform ${me(this.transform)}`}assemble(){const{flatten:t,as:n}=this.transform;return{type:"flatten",fields:t,as:n}}}class Ip extends Me{transform;clone(){return new Ip(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const i=this.transform.as??[void 0,void 0];this.transform.as=[i[0]??"key",i[1]??"value"]}dependentFields(){return new Set(this.transform.fold)}producedFields(){return new Set(this.transform.as)}hash(){return`FoldTransform ${me(this.transform)}`}assemble(){const{fold:t,as:n}=this.transform;return{type:"fold",fields:t,as:n}}}class qa extends Me{fields;geojson;signal;clone(){return new qa(null,se(this.fields),this.geojson,this.signal)}static parseAll(t,n){if(n.component.projection&&!n.component.projection.isFit)return t;let i=0;for(const r of[[Ai,$i],[Xn,Ci]]){const o=r.map(s=>{const a=et(n.encoding[s]);return U(a)?a.field:dr(a)?{expr:`${a.datum}`}:xi(a)?{expr:`${a.value}`}:void 0});(o[0]||o[1])&&(t=new qa(t,o,null,n.getName(`geojson_${i++}`)))}if(n.channelHasField(xn)){const r=n.typedFieldDef(xn);r.type===Ou&&(t=new qa(t,null,r.field,n.getName(`geojson_${i++}`)))}return t}constructor(t,n,i,r){super(t),this.fields=n,this.geojson=i,this.signal=r}dependentFields(){const t=(this.fields??[]).filter(Y);return new Set([...this.geojson?[this.geojson]:[],...t])}producedFields(){return new Set}hash(){return`GeoJSON ${this.geojson} ${this.signal} ${me(this.fields)}`}assemble(){return[...this.geojson?[{type:"filter",expr:`isValid(datum["${this.geojson}"])`}]:[],{type:"geojson",...this.fields?{fields:this.fields}:{},...this.geojson?{geojson:this.geojson}:{},signal:this.signal}]}}class yc extends Me{projection;fields;as;clone(){return new yc(null,this.projection,se(this.fields),se(this.as))}constructor(t,n,i,r){super(t),this.projection=n,this.fields=i,this.as=r}static parseAll(t,n){if(!n.projectionName())return t;for(const i of[[Ai,$i],[Xn,Ci]]){const r=i.map(s=>{const a=et(n.encoding[s]);return U(a)?a.field:dr(a)?{expr:`${a.datum}`}:xi(a)?{expr:`${a.value}`}:void 0}),o=i[0]===Xn?"2":"";(r[0]||r[1])&&(t=new yc(t,n.projectionName(),r,[n.getName(`x${o}`),n.getName(`y${o}`)]))}return t}dependentFields(){return new Set(this.fields.filter(Y))}producedFields(){return new Set(this.as)}hash(){return`Geopoint ${this.projection} ${me(this.fields)} ${me(this.as)}`}assemble(){return{type:"geopoint",projection:this.projection,fields:this.fields,as:this.as}}}class Cs extends Me{transform;clone(){return new Cs(null,se(this.transform))}constructor(t,n){super(t),this.transform=n}dependentFields(){return new Set([this.transform.impute,this.transform.key,...this.transform.groupby??[]])}producedFields(){return new Set([this.transform.impute])}processSequence(t){const{start:n=0,stop:i,step:r}=t;return{signal:`sequence(${[n,i,...r?[r]:[]].join(",")})`}}static makeFromTransform(t,n){return new Cs(t,n)}static makeFromEncoding(t,n){const i=n.encoding,r=i.x,o=i.y;if(U(r)&&U(o)){const s=r.impute?r:o.impute?o:void 0;if(s===void 0)return;const a=r.impute?o:o.impute?r:void 0,{method:u,value:l,frame:c,keyvals:f}=s.impute,d=gN(n.mark,i);return new Cs(t,{impute:s.field,key:a.field,...u?{method:u}:{},...l!==void 0?{value:l}:{},...c?{frame:c}:{},...f!==void 0?{keyvals:f}:{},...d.length?{groupby:d}:{}}
13)}return null}hash(){return`Impute ${me(this.transform)}`}assemble(){const{impute:t,key:n,keyvals:i,method:r,groupby:o,value:s,frame:a=[null,null]}=this.transform,u={type:"impute",field:t,key:n,...i?{keyvals:Ore(i)?this.processSequence(i):i}:{},method:"value",...o?{groupby:o}:{},value:!r||r==="value"?s:null};if(r&&r!=="value"){const l={type:"window",as:[`imputed_${t}_value`],ops:[r],fields:[t],frame:a,ignorePeers:!1,...o?{groupby:o}:{}},c={type:"formula",expr:`datum.${t} === null ? datum.imputed_${t}_value : datum.${t}`,as:t};return[u,l,c]}else return[u]}}class Bp extends Me{transform;clone(){return new Bp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const i=this.transform.as??[void 0,void 0];this.transform.as=[i[0]??n.on,i[1]??n.loess]}dependentFields(){return new Set([this.transform.loess,this.transform.on,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`LoessTransform ${me(this.transform)}`}assemble(){const{loess:t,on:n,...i}=this.transform;return{type:"loess",x:n,y:t,...i}}}class xc extends Me{transform;secondary;clone(){return new xc(null,se(this.transform),this.secondary)}constructor(t,n,i){super(t),this.transform=n,this.secondary=i}static make(t,n,i,r){const o=n.component.data.sources,{from:s}=i;let a=null;if(zre(s)){let u=iO(s.data,o);u||(u=new Zs(s.data),o.push(u));const l=n.getName(`lookup_${r}`);a=new pn(u,l,qe.Lookup,n.component.data.outputNodeRefCounts),n.component.data.outputNodes[l]=a}else if(Pre(s)){const u=s.param;i={as:u,...i};let l;try{l=n.getSelectionComponent(je(u),u)}catch{throw new Error(ate(u))}if(a=l.materialized,!a)throw new Error(ute(u))}return new xc(t,i,a.getSource())}dependentFields(){return new Set([this.transform.lookup])}producedFields(){return new Set(this.transform.as?H(this.transform.as):this.transform.from.fields)}hash(){return`Lookup ${me({transform:this.transform,secondary:this.secondary})}`}assemble(){let t;if(this.transform.from.fields)t={values:this.transform.from.fields,...this.transform.as?{as:H(this.transform.as)}:{}};else{let n=this.transform.as;Y(n)||(I(bte),n="_lookup"),t={as:[n]}}return{type:"lookup",from:this.secondary,key:this.transform.from.key,fields:[this.transform.lookup],...t,...this.transform.default?{default:this.transform.default}:{}}}}class Up extends Me{transform;clone(){return new Up(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const i=this.transform.as??[void 0,void 0];this.transform.as=[i[0]??"prob",i[1]??"value"]}dependentFields(){return new Set([this.transform.quantile,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`QuantileTransform ${me(this.transform)}`}assemble(){const{quantile:t,...n}=this.transform;return{type:"quantile",field:t,...n}}}class jp extends Me{transform;clone(){return new jp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n,this.transform=se(n);const i=this.transform.as??[void 0,void 0];this.transform.as=[i[0]??n.on,i[1]??n.regression]}dependentFields(){return new Set([this.transform.regression,this.transform.on,...this.transform.groupby??[]])}producedFields(){return new Set(this.transform.as)}hash(){return`RegressionTransform ${me(this.transform)}`}assemble(){const{regression:t,on:n,...i}=this.transform;return{type:"regression",x:n,y:t,...i}}}class qp extends Me{transform;clone(){return new qp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n}addDimensions(t){this.transform.groupby=Mr((this.transform.groupby??[]).concat(t),n=>n)}producedFields(){}dependentFields(){return new Set([this.transform.pivot,this.transform.value,...this.transform.groupby??[]])}hash(){return`PivotTransform ${me(this.transform)}`}assemble(){const{pivot:t,value:n,groupby:i,limit:r,op:o}=this.transform;return{type:"pivot",field:t,value:n,...r!==void 0?{limit:r}:{},...o!==void 0?{op:o}:{},...i!==void 0?{groupby:i}:{}}}}class Wp extends Me{transform;clone(){return new Wp(null,se(this.transform))}constructor(t,n){super(t),this.transform=n}dependentFields(){return new Set}producedFields(){return new Set}hash(){return`SampleTransform ${me(this.transform)}`}assemble(){return{type:"sample",size:this.transform.sample}}}function tO(e){let t=0;function n(i,r){if(i instanceof Zs&&!i.isGenerator&&!pu(i.data)&&(e.push(r),r={name:null,source:r.name,transform:[]}),i instanceof zt&&(i.parent instanceof Zs&&!r.source?(r.format={...r.format,parse:i.assembleFormatParse()},r.transform.push(...i.assembleTransforms(!0))):r.transform.push(...i.assembleTransforms())),i instanceof Lu){r.name||(r.name=`data_${t++}`),!r.source||r.transform.length>0?(e.push(r),i.data=r.name):i.data=r.source,e.push(...i.assemble());return}switch((i instanceof uf||i instanceof lf||i instanceof vu||i instanceof Pu||i instanceof yu||i instanceof yc||i instanceof di||i instanceof xc||i instanceof Iu||i instanceof pa||i instanceof Ip||i instanceof Lp||i instanceof zp||i instanceof Bp||i instanceof Up||i instanceof jp||i instanceof zo||i instanceof Wp||i instanceof qp||i instanceof Pp)&&r.transform.push(i.assemble()),(i instanceof Hi||i instanceof qi||i instanceof Cs||i instanceof Lr||i instanceof qa)&&r.transform.push(...i.assemble()),i instanceof pn&&(r.source&&r.transform.length===0?i.setSource(r.source):i.parent instanceof pn?i.setSource(r.name):(r.name||(r.name=`data_${t++}`),i.setSource(r.name),i.numChildren()===1&&(e.push(r),r={name:null,source:r.name,transform:[]}))),i.numChildren()){case 0:i instanceof pn&&(!r.source||r.transform.length>0)&&e.push(r);break;case 1:n(i.children[0],r);break;default:{r.name||(r.name=`data_${t++}`);let o=r.name;!r.source||r.transform.length>0?e.push(r):o=r.source;for(const s of i.children)n(s,{name:null,source:o,transform:[]});break}}}return n}function Kae(e){const t=[],n=tO(t);for(const i of e.children)n(i,{source:e.name,name:null,transform:[]});return t}function Zae(e,t){const n=[],i=tO(n);let r=0;
13for(const s of e.sources){s.hasName()||(s.dataName=`source_${r++}`);const a=s.assemble();i(s,a)}for(const s of n)s.transform.length===0&&delete s.transform;let o=0;for(const[s,a]of n.entries())(a.transform??[]).length===0&&!a.source&&n.splice(o++,0,n.splice(s,1)[0]);for(const s of n)for(const a of s.transform??[])a.type==="lookup"&&(a.from=e.outputNodes[a.from].getSource());for(const s of n)s.name in t&&(s.values=t[s.name]);return n}function Qae(e){return e==="top"||e==="left"||ee(e)?"header":"footer"}function Jae(e){for(const t of Bn)eue(e,t);r$(e,"x"),r$(e,"y")}function eue(e,t){const{facet:n,config:i,child:r,component:o}=e;if(e.channelHasField(t)){const s=n[t],a=bu("title",null,i,t);let u=Ua(s,i,{allowDisabling:!0,includeDefault:a===void 0||!!a});r.component.layoutHeaders[t].title&&(u=z(u)?u.join(", "):u,u+=` / ${r.component.layoutHeaders[t].title}`,r.component.layoutHeaders[t].title=null);const l=bu("labelOrient",s.header,i,t),c=s.header!==null?Ze(s.header?.labels,i.header.labels,!0):!1,f=ge(["bottom","right"],l)?"footer":"header";o.layoutHeaders[t]={title:s.header!==null?u:null,facetFieldDef:s,[f]:t==="facet"?[]:[nO(e,t,c)]}}}function nO(e,t,n){const i=t==="row"?"height":"width";return{labels:n,sizeSignal:e.child.component.layoutSize.get(i)?e.child.getSizeSignalRef(i):void 0,axes:[]}}function r$(e,t){const{child:n}=e;if(n.component.axes[t]){const{layoutHeaders:i,resolve:r}=e.component;if(r.axis[t]=W2(r,t),r.axis[t]==="shared"){const o=t==="x"?"column":"row",s=i[o];for(const a of n.component.axes[t]){const u=Qae(a.get("orient"));s[u]??=[nO(e,o,!1)];const l=Ml(a,"main",e.config,{header:!0});l&&s[u][0].axes.push(l),a.mainExtracted=!0}}}}function tue(e){Q2(e),Xh(e,"width"),Xh(e,"height")}function nue(e){Q2(e);const t=e.layout.columns===1?"width":"childWidth",n=e.layout.columns===void 0?"height":"childHeight";Xh(e,t),Xh(e,n)}function Q2(e){for(const t of e.children)t.parseLayoutSize()}function Xh(e,t){const n=CR(t),i=lp(n),r=e.component.resolve,o=e.component.layoutSize;let s;for(const a of e.children){const u=a.component.layoutSize.getWithExplicit(n),l=r.scale[i]??FR(i,e);if(l==="independent"&&u.value==="step"){s=void 0;break}if(s){if(l==="independent"&&s.value!==u.value){s=void 0;break}s=Oo(s,u,n,"")}else s=u}if(s){for(const a of e.children)e.renameSignal(a.getName(n),e.getName(t)),a.component.layoutSize.set(n,"merged",!1);o.setWithExplicit(t,s)}else o.setWithExplicit(t,{explicit:!1,value:void 0})}function iue(e){const{size:t,component:n}=e;for(const i of to){const r=bn(i);if(t[r]){const o=t[r];n.layoutSize.set(r,tr(o)?"step":o,!0)}else{const o=rue(e,r);n.layoutSize.set(r,o,!1)}}}function rue(e,t){const n=t==="width"?"x":"y",i=e.config,r=e.getScaleComponent(n);if(r){const o=r.get("type"),s=r.get("range");if(yt(o)){const a=Hh(i.view,t);return ca(s)||tr(a)?"step":a}else return ry(i.view,t)}else{if(e.hasProjection||e.mark==="arc")return ry(i.view,t);{const o=Hh(i.view,t);return tr(o)?o.step:o}}}function _y(e,t,n){return W(t,{suffix:`by_${W(e)}`,...n})}class ql extends eO{facet;child;children;constructor(t,n,i,r){super(t,"facet",n,i,r,t.resolve),this.child=iw(t.spec,this,this.getName("child"),void 0,r),this.children=[this.child],this.facet=this.initFacet(t.facet)}initFacet(t){if(!tf(t))return{facet:this.initFacetFieldDef(t,"facet")};const n=P(t),i={};for(const r of n){if(![Rr,Or].includes(r)){I(dp(r,"facet"));break}const o=t[r];if(o.field===void 0){I(J1(o,r));break}i[r]=this.initFacetFieldDef(o,r)}return i}initFacetFieldDef(t,n){const i=_2(t,n);return i.header?i.header=St(i.header):i.header===null&&(i.header=null),i}channelHasField(t){return L(this.facet,t)}fieldDef(t){return this.facet[t]}parseData(){this.component.data=Hp(this),this.child.parseData()}parseLayoutSize(){Q2(this)}parseSelections(){this.child.parseSelections(),this.component.selection=this.child.component.selection,nt(this.component.selection).some(t=>Wi(t))&&Zv(Kv)}parseMarkGroup(){this.child.parseMarkGroup()}parseAxesAndHeaders(){this.child.parseAxesAndHeaders(),Jae(this)}assembleSelectionTopLevelSignals(t){return this.child.assembleSelectionTopLevelSignals(t)}assembleSignals(){return this.child.assembleSignals(),[]}assembleSelectionData(t){return this.child.assembleSelectionData(t)}getHeaderLayoutMixins(){const t={};for(const n of Bn)for(const i of j2){const r=this.component.layoutHeaders[n],o=r[i],{facetFieldDef:s}=r;if(s){const a=bu("titleOrient",s.header,this.config,n);if(["right","bottom"].includes(a)){const u=Np(n,a);t.titleAnchor??={},t.titleAnchor[u]="end"}}if(o?.[0]){const a=n==="row"?"height":"width",u=i==="header"?"headerBand":"footerBand";n!=="facet"&&!this.child.component.layoutSize.get(a)&&(t[u]??={},t[u][n]=.5),r.title&&(t.offset??={},t.offset[n==="row"?"rowTitle":"columnTitle"]=10)}}return t}assembleDefaultLayout(){const{column:t,row:n}=this.facet,i=t?this.columnDistinctSignal():n?1:void 0;let r="all";return(!n&&this.component.resolve.scale.x==="independent"||!t&&this.component.resolve.scale.y==="independent")&&(r="none"),{...this.getHeaderLayoutMixins(),...i?{columns:i}:{},bounds:"full",align:r}}assembleLayoutSignals(){return this.child.assembleLayoutSignals()}columnDistinctSignal(){if(!(this.parent&&this.parent instanceof ql))return{signal:`length(data('${this.getName("column_domain")}'))`}}assembleGroupStyle(){}assembleGroup(t){return this.parent&&this.parent instanceof ql?{...this.channelHasField("column")?{encode:{update:{columns:{field:W(this.facet.column,{prefix:"distinct"})}}}}:{},...super.assembleGroup(t)}:super.assembleGroup(t)}getCardinalityAggregateForChild(){const t=[],n=[],i=[];if(this.child instanceof ql){if(this.child.channelHasField("column")){const r=W(this.child.facet.column);t.push(r),n.push("distinct"),i.push(`distinct_${r}`)}}else for(const r of to){const o=this.child.component.scales[r];if(o&&!o.merged){const s=o.get("type"),a=o.get("range");if(yt(s)&&ca(a)){const u=Op(this.child,r),l=X2(u);l?(t.push(l),n.push("distinct"),i.push(`distinct_${l}`)):I(Xv(r))}}}return{fields:t,ops:n,as:i}}assembleFacet(){const{name:t,data:n}=this.component.data.facetRoot,{row:i,column:r}=this.facet,{fields:o,ops:s,as:a}=this.getCardinalityAggregateForChild(),u=[];for(const c of Bn){const f=this.facet[c];if(f){u.push(W(f));const{bin:d,sort:h}=f;if(Oe(d)&&u.push(W(f,{binSuffix:"end"})),zr(h)){const{field:g,op:p=bp}=h,m=_y(f,h);i&&r?(o.push(m),s.push("max"),a.push(m)):(o.push(g),s.push(p),a.push(m))}else if(z(h)){const g=xu(f,c);o.push(g),s.push("max"),a.push(g)}}}const l=!!i&&!!r;return{name:t,data:n,groupby:u,...l||o.length>0?{aggregate:{...l?{cross:l}:{},...o.length?{fields:o,ops:s,as:a}:{}}}:{}}}facetSortFields(t){const{facet:n}=this,i=n[t];return i?zr(i.sort)?[_y(i,i.sort,{expr:"datum"})]:z(i.sort)?[xu(i,t,{expr:"datum"})]:[W(i,{expr:"datum"})]:[]}facetSortOrder(t){const{facet:n}=this,i=n[t];if(i){const{sort:r}=i;return[(zr(r)?r.order:!z(r)&&r)||"ascending"]}return[]}assembleLabelTitle(){const{facet:t,config:n}=this;if(t.facet)return py(t.facet,"facet",n);const i={row:["top","bottom"],column:["left","right"]};for(const r of U2)if(t[r]){const o=bu("labelOrient",t[r]?.header,n,r);if(i[r].includes(o))return py(t[r],r,n)}}assembleMarks(){const{child:t}=this,n=this.component.data.facetRoot,i=Kae(n),r=t.assembleGroupEncodeEntry(!1),o=this.assembleLabelTitle()||t.assembleTitle(),s=t.assembleGroupStyle();return[{name:this.getName("cell"),type:"group",...o?{title:o}:{},...s?{style:s}:{},from:{facet:this.assembleFacet()},sort:{field:Bn.map(u=>
13this.facetSortFields(u)).flat(),order:Bn.map(u=>this.facetSortOrder(u)).flat()},...i.length>0?{data:i}:{},...r?{encode:{update:r}}:{},...t.assembleGroup(voe(this,[]))}]}getMapping(){return this.facet}}function oue(e,t){const{row:n,column:i}=t;if(n&&i){let r=null;for(const o of[n,i])if(zr(o.sort)){const{field:s,op:a=bp}=o.sort;e=r=new pa(e,{joinaggregate:[{op:a,field:s,as:_y(o,o.sort,{forAs:!0})}],groupby:[W(o)]})}return r}return null}function iO(e,t){for(const n of t){const i=n.data;if(e.name&&n.hasName()&&e.name!==n.dataName)continue;const r=e.format?.mesh,o=i.format?.feature;if(r&&o)continue;const s=e.format?.feature;if((s||o)&&s!==o)continue;const a=i.format?.mesh;if(!((r||a)&&r!==a)){if(mc(e)&&mc(i)){if(In(e.values,i.values))return n}else if(pu(e)&&pu(i)){if(e.url===i.url)return n}else if(qN(e)&&e.name===n.dataName)return n}}return null}function sue(e,t){if(e.data||!e.parent){if(e.data===null){const i=new Zs({values:[]});return t.push(i),i}const n=iO(e.data,t);if(n)return So(e.data)||(n.data.format=hee({},e.data.format,n.data.format)),!n.hasName()&&e.data.name&&(n.dataName=e.data.name),n;{const i=new Zs(e.data);return t.push(i),i}}else return e.parent.component.data.facetRoot?e.parent.component.data.facetRoot:e.parent.component.data.main}function aue(e,t,n){let i=0;for(const r of t.transforms){let o,s;if(Vre(r))s=e=new yu(e,r),o="derived";else if(R2(r)){const a=Qse(r);s=e=zt.makeWithAncestors(e,{},a,n)??e,e=new Pu(e,t,r.filter)}else if(IN(r))s=e=Hi.makeFromTransform(e,r,t),o="number";else if(Xre(r))o="date",n.getWithExplicit(r.field).value===void 0&&(e=new zt(e,{[r.field]:o}),n.set(r.field,o,!1)),s=e=qi.makeFromTransform(e,r);else if(Kre(r))s=e=di.makeFromTransform(e,r),o="number",B2(t)&&(e=new zo(e));else if(LN(r))s=e=xc.make(e,t,r,i++),o="derived";else if(Wre(r))s=e=new Iu(e,r),o="number";else if(Hre(r))s=e=new pa(e,r),o="number";else if(Zre(r))s=e=Lr.makeFromTransform(e,r),o="derived";else if(Qre(r))s=e=new Ip(e,r),o="derived";else if(Jre(r))s=e=new Pp(e,r),o="derived";else if(Gre(r))s=e=new Lp(e,r),o="derived";else if(Lre(r))s=e=new qp(e,r),o="derived";else if(qre(r))e=new Wp(e,r);else if(Yre(r))s=e=Cs.makeFromTransform(e,r),o="derived";else if(Ire(r))s=e=new zp(e,r),o="derived";
13else if(Bre(r))s=e=new Up(e,r),o="derived";else if(Ure(r))s=e=new jp(e,r),o="derived";else if(jre(r))s=e=new Bp(e,r),o="derived";else{I(xte(r));continue}if(s&&o!==void 0)for(const a of s.producedFields()??[])n.set(a,o,!1)}return e}function Hp(e){let t=sue(e,e.component.data.sources);const{outputNodes:n,outputNodeRefCounts:i}=e.component.data,r=e.data,s=!(r&&(So(r)||pu(r)||mc(r)))&&e.parent?e.parent.component.data.ancestorParse.clone():new doe;So(r)?(WN(r)?t=new lf(t,r.sequence):O2(r)&&(t=new uf(t,r.graticule)),s.parseNothing=!0):r?.format?.parse===null&&(s.parseNothing=!0),t=zt.makeExplicit(t,e,s)??t,t=new zo(t);const a=e.parent&&Bu(e.parent);(Ue(e)||Mn(e))&&a&&(t=Hi.makeFromEncoding(t,e)??t),e.transforms.length>0&&(t=aue(t,e,s));const u=eae(e),l=Jse(e);t=zt.makeWithAncestors(t,{},{...u,...l},s)??t,Ue(e)&&(t=qa.parseAll(t,e),t=yc.parseAll(t,e)),(Ue(e)||Mn(e))&&(a||(t=Hi.makeFromEncoding(t,e)??t),t=qi.makeFromEncoding(t,e)??t,t=yu.parseAllForSortIndex(t,e));const c=t=Vf(qe.Raw,e,t);if(Ue(e)){const m=di.makeFromEncoding(t,e);m&&(t=m,B2(e)&&(t=new zo(t))),t=Cs.makeFromEncoding(t,e)??t,t=Lr.makeFromEncoding(t,e)??t}let f,d;if(Ue(e)){const{markDef:m,mark:y,config:x}=e,b=De("invalid",m,x),{marks:v,scales:w}=d=GN({invalid:b,isPath:Ko(y)});v!==w&&w==="include-invalid-values"&&(f=t=Vf(qe.PreFilterInvalid,e,t)),v==="exclude-invalid-values"&&(t=vu.make(t,e,d)??t)}const h=t=Vf(qe.Main,e,t);let g;if(Ue(e)&&d){const{marks:m,scales:y}=d;m==="include-invalid-values"&&y==="exclude-invalid-values"&&(t=vu.make(t,e,d)??t,g=t=Vf(qe.PostFilterInvalid,e,t))}Ue(e)&&Xoe(e,h);let p=null;if(Mn(e)){const m=e.getName("facet");t=oue(t,e.facet)??t,p=new Lu(t,e,m,h.getSource()),n[m]=p}return{...e.component.data,outputNodes:n,outputNodeRefCounts:i,raw:c,main:h,facetRoot:p,ancestorParse:s,preFilterInvalid:f,postFilterInvalid:g}}function Vf(e,t,n){const{outputNodes:i,outputNodeRefCounts:r}=t.component.data,o=t.getDataName(e),s=new pn(n,o,e,r);return i[o]=s,s}class uue extends Z2{children;constructor(t,n,i,r){super(t,"concat",n,i,r,t.resolve),(t.resolve?.axis?.x==="shared"||t.resolve?.axis?.y==="shared")&&I(pte),this.children=this.getChildren(t).map((o,s)=>iw(o,this,this.getName(`concat_${s}`),void 0,r))}parseData(){this.component.data=Hp(this);for(const t of this.children)t.parseData()}parseSelections(){this.component.selection={};for(const t of this.children){t.parseSelections();for(const n of P(t.component.selection))this.component.selection[n]=t.component.selection[n]}nt(this.component.selection).some(t=>Wi(t))&&Zv(Kv)}parseMarkGroup(){for(const t of this.children)t.parseMarkGroup()}parseAxesAndHeaders(){for(const t of this.children)t.parseAxesAndHeaders()}getChildren(t){return $p(t)?t.vconcat:T2(t)?t.hconcat:t.concat}parseLayoutSize(){nue(this)}parseAxisGroup(){return null}assembleSelectionTopLevelSignals(t){return this.children.reduce((n,i)=>i.assembleSelectionTopLevelSignals(n),t)}assembleSignals(){return this.children.forEach(t=>t.assembleSignals()),[]}assembleLayoutSignals(){const t=q2(this);for(const n of this.children)t.push(...n.assembleLayoutSignals());return t}assembleSelectionData(t){return this.children.reduce((n,i)=>i.assembleSelectionData(n),t)}assembleMarks(){return this.children.map(t=>{const n=t.assembleTitle(),i=t.assembleGroupStyle(),r=t.assembleGroupEncodeEntry(!1);return{type:"group",name:t.getName("group"),...n?{title:n}:{},...i?{style:i}:{},...r?{encode:{update:r}}:{},...t.assembleGroup()}})}assembleGroupStyle(){}assembleDefaultLayout(){const t=this.layout.columns;return{...t!=null?{columns:t}:{},bounds:"full",align:"each"}}}function lue(e){return e===!1||e===null}const cue={disable:1,gridScale:1,scale:1,...uN,labelExpr:1,encode:1},rO=P(cue);class J2 extends io{explicit;implicit;mainExtracted;constructor(t={},n={},i=!1){super(),this.explicit=t,this.implicit=n,this.mainExtracted=i}clone(){return new J2(se(this.explicit),se(this.implicit),this.mainExtracted)}hasAxisPart(t){return t==="axis"?!0:t==="grid"||t==="title"?!!this.get(t):!lue(this.get(t))}hasOrientSignalRef(){return ee(this.explicit.orient)}}function fue(e,t,n){const{encoding:i,config:r}=e,o=et(i[t])??et(i[cr(t)]),s=e.axis(t)||{},{format:a,formatType:u}=s;if(Ys(u))return{text:ci({fieldOrDatumDef:o,field:"datum.value",format:a,formatType:u,config:r}),...n};if(a===void 0&&u===void 0&&r.customFormatTypes){if(du(o)==="quantitative"){if(hu(o)&&o.stack==="normalize"&&r.normalizedNumberFormatType)return{text:ci({fieldOrDatumDef:o,field:"datum.value",format:r.normalizedNumberFormat,formatType:r.normalizedNumberFormatType,config:r}),...n};if(r.numberFormatType)return{text:ci({fieldOrDatumDef:o,field:"datum.value",format:r.numberFormat,formatType:r.numberFormatType,config:r}),...n}}if(du(o)==="temporal"&&r.timeFormatType&&U(o)&&!o.timeUnit)return{text:ci({fieldOrDatumDef:o,field:"datum.value",format:r.timeFormat,formatType:r.timeFormatType,config:r}),...n}}return n}function due(e){return to.reduce((t,n)=>(e.component.scales[n]&&(t[n]=[bue(n,e)]),t),{})}
13const hue={bottom:"top",top:"bottom",left:"right",right:"left"};function gue(e){const{axes:t,resolve:n}=e.component,i={top:0,bottom:0,right:0,left:0};for(const r of e.children){r.parseAxesAndHeaders();for(const o of P(r.component.axes))n.axis[o]=W2(e.component.resolve,o),n.axis[o]==="shared"&&(t[o]=pue(t[o],r.component.axes[o]),t[o]||(n.axis[o]="independent",delete t[o]))}for(const r of to){for(const o of e.children)if(o.component.axes[r]){if(n.axis[r]==="independent"){t[r]=(t[r]??[]).concat(o.component.axes[r]);for(const s of o.component.axes[r]){const{value:a,explicit:u}=s.getWithExplicit("orient");if(!ee(a)){if(i[a]>0&&!u){const l=hue[a];i[a]>i[l]&&s.set("orient",l,!1)}i[a]++}}}delete o.component.axes[r]}if(n.axis[r]==="independent"&&t[r]&&t[r].length>1)for(const[o,s]of(t[r]||[]).entries())o>0&&s.get("grid")&&!s.explicit.grid&&(s.implicit.grid=!1)}}function pue(e,t){if(e){if(e.length!==t.length)return;const n=e.length;for(let i=0;i<n;i++){const r=e[i],o=t[i];if(!!r!=!!o)return;if(r&&o){const s=r.getWithExplicit("orient"),a=o.getWithExplicit("orient");if(s.explicit&&a.explicit&&s.value!==a.value)return;e[i]=mue(r,o)}}}else return t.map(n=>n.clone());return e}function mue(e,t){for(const n of rO){const i=Oo(e.getWithExplicit(n),t.getWithExplicit(n),n,"axis",(r,o)=>{switch(n){case"title":return dT(r,o);case"gridScale":return{explicit:r.explicit,value:Ze(r.value,o.value)}}return Cp(r,o,n,"axis")});e.setWithExplicit(n,i)}return e}function yue(e,t,n,i,r){if(t==="disable")return n!==void 0;switch(n=n||{},t){case"titleAngle":case"labelAngle":return e===(ee(n.labelAngle)?n.labelAngle:zh(n.labelAngle));case"values":return!!n.values;case"encode":return!!n.encoding||!!n.labelAngle;case"title":if(e===SR(i,r))return!0}return e===n[t]}const xue=new Set(["grid","translate","format","formatType","orient","labelExpr","tickCount","position","tickMinStep"]);function bue(e,t){let n=t.axis(e);const i=new J2,r=et(t.encoding[e]),{mark:o,config:s}=t,a=n?.orient||s[e==="x"?"axisX":"axisY"]?.orient||s.axis?.orient||ose(e),u=t.getScaleComponent(e).get("type"),l=Qoe(e,u,a,t.config),c=n!==void 0?!n:hy("disable",s.style,n?.style,l).configValue;if(i.set("disable",c,n!==void 0),c)return i;n=n||{};const f=nse(r,n,e,s.style,l),d=YT(n.formatType,r,u),h=VT(r,r.type,n.format,n.formatType,s,!0),g={fieldOrDatumDef:r,axis:n,channel:e,model:t,scaleType:u,orient:a,labelAngle:f,format:h,formatType:d,mark:o,config:s};for(const y of rO){const x=y in Wk?Wk[y](g):yk(y)?n[y]:void 0,b=x!==void 0,v=yue(x,y,n,t,e);if(b&&v)i.set(y,x,v);else{const{configValue:w=void 0,configFrom:S=void 0}=yk(y)&&y!=="values"?hy(y,s.style,n.style,l):{},_=w!==void 0;b&&!_?i.set(y,x,v):(S!=="vgAxisConfig"||xue.has(y)&&_||sf(w)||ee(w))&&i.set(y,w,!1)}}const p=n.encoding??{},m=aN.reduce((y,x)=>{if(!i.hasAxisPart(x))return y;const b=MR(p[x]??{},t),v=x==="labels"?fue(t,e,b):b;return v!==void 0&&!Re(v)&&(y[x]={update:v}),y},{});return Re(m)||i.set("encode",m,!!n.encoding||n.labelAngle!==void 0),i}function vue({encoding:e,size:t}){for(const n of to){const i=bn(n);tr(t[i])&&bo(e[n])&&(delete t[i],I(yT(i)))}return t}const wue={vgMark:"arc",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",size:"ignore",orient:"ignore",theta:"ignore"}),...Zt("x",e,{defaultPos:"mid"}),...Zt("y",e,{defaultPos:"mid"}),...Gr(e,"radius"),...Gr(e,"theta")})},_ue={vgMark:"area",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",orient:"include",size:"ignore",theta:"ignore"}),...Gh("x",e,{defaultPos:"zeroOrMin",defaultPos2:"zeroOrMin",range:e.markDef.orient==="horizontal"}),...Gh("y",e,{defaultPos:"zeroOrMin",defaultPos2:"zeroOrMin",range:e.markDef.orient==="vertical"}),...I2(e)})},Sue={vgMark:"rect",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",orient:"ignore",size:"ignore",theta:"ignore"}),...Gr(e,"x"),...Gr(e,"y")})},Eue={vgMark:"shape",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",size:"ignore",orient:"ignore",theta:"ignore"})}),postEncodingTransform:e=>{const{encoding:t}=e,n=t.shape;return[{type:"geoshape",projection:e.projectionName(),...n&&U(n)&&n.type===Ou?{field:W(n,{expr:"datum"})}:{}}
13]}},kue={vgMark:"image",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"ignore",orient:"ignore",size:"ignore",theta:"ignore"}),...Gr(e,"x"),...Gr(e,"y"),...P2(e,"url")})},$ue={vgMark:"line",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",size:"ignore",orient:"ignore",theta:"ignore"}),...Zt("x",e,{defaultPos:"mid"}),...Zt("y",e,{defaultPos:"mid"}),...kt("size",e,{vgChannel:"strokeWidth"}),...I2(e)})},Aue={vgMark:"trail",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",size:"include",orient:"ignore",theta:"ignore"}),...Zt("x",e,{defaultPos:"mid"}),...Zt("y",e,{defaultPos:"mid"}),...kt("size",e),...I2(e)})};function ew(e,t){const{config:n}=e;return{...Qn(e,{align:"ignore",baseline:"ignore",color:"include",size:"include",orient:"ignore",theta:"ignore"}),...Zt("x",e,{defaultPos:"mid"}),...Zt("y",e,{defaultPos:"mid"}),...kt("size",e),...kt("angle",e),...Cue(e,n,t)}}function Cue(e,t,n){return n?{shape:{value:n}}:kt("shape",e)}const Mue={vgMark:"symbol",encodeEntry:e=>ew(e)},Fue={vgMark:"symbol",encodeEntry:e=>ew(e,"circle")},Due={vgMark:"symbol",encodeEntry:e=>ew(e,"square")},Tue={vgMark:"rect",encodeEntry:e=>({...Qn(e,{align:"ignore",baseline:"ignore",color:"include",orient:"ignore",size:"ignore",theta:"ignore"}),...Gr(e,"x"),...Gr(e,"y")})},Nue={vgMark:"rule",encodeEntry:e=>{const{markDef:t}=e,n=t.orient;return!e.encoding.x&&!e.encoding.y&&!e.encoding.latitude&&!e.encoding.longitude?{}:{...Qn(e,{align:"ignore",baseline:"ignore",color:"include",orient:"ignore",size:"ignore",theta:"ignore"}),...Gh("x",e,{defaultPos:n==="horizontal"?"zeroOrMax":"mid",defaultPos2:"zeroOrMin",range:n!=="vertical"}),...Gh("y",e,{defaultPos:n==="vertical"?"zeroOrMax":"mid",defaultPos2:"zeroOrMin",range:n!=="horizontal"}),...kt("size",e,{vgChannel:"strokeWidth"})}}},Rue={vgMark:"text",encodeEntry:e=>{const{config:t,encoding:n}=e;return{...Qn(e,{align:"include",baseline:"include",color:"include",size:"ignore",orient:"ignore",theta:"include"}),...Zt("x",e,{defaultPos:"mid"}),...Zt("y",e,{defaultPos:"mid"}),...P2(e),...kt("size",e,{vgChannel:"fontSize"}),...kt("angle",e),...Bk("align",Oue(e.markDef,n,t)),...Bk("baseline",zue(e.markDef,n,t)),...Zt("radius",e,{defaultPos:null}),...Zt("theta",e,{defaultPos:null})}}};function Oue(e,t,n){if(De("align",e,n)===void 0)return"center"}function zue(e,t,n){if(De("baseline",e,n)===void 0)return"middle"}const Pue={vgMark:"rect",encodeEntry:e=>{const{config:t,markDef:n}=e,i=n.orient,r=i==="horizontal"?"x":"y",o=i==="horizontal"?"y":"x",s=i==="horizontal"?"height":"width";return{...Qn(e,{align:"ignore",baseline:"ignore",color:"include",orient:"ignore",size:"ignore",theta:"ignore"}),...Gr(e,r),...Zt(o,e,{defaultPos:"mid",vgChannel:o==="y"?"yc":"xc"}),[s]:Pe(De("thickness",n,t))}}},Yf={arc:wue,area:_ue,bar:Sue,circle:Fue,geoshape:Eue,image:kue,line:$ue,point:Mue,rect:Tue,rule:Nue,square:Due,text:Rue,tick:Pue,trail:Aue};function Lue(e){if(ge([yp,pp,Hne],e.mark)){const t=gN(e.mark,e.encoding);if(t.length>0)return Iue(e,t)}else if(e.mark===mp){const t=Z1.some(n=>De(n,e.markDef,e.config));if(e.stack&&!e.fieldDef("size")&&t)return Bue(e)}return tw(e)}const o$="faceted_path_";function Iue(e,t){return[{name:e.getName("pathgroup"),type:"group",from:{facet:{name:o$+e.requestDataName(qe.Main),data:e.requestDataName(qe.Main),groupby:t}},encode:{update:{width:{field:{group:"width"}},height:{field:{group:"height"}}}},marks:tw(e,{fromPrefix:o$})}]}const s$="stack_group_";function Bue(e){const[t]=tw(e,{fromPrefix:s$}),n=e.scaleName(e.stack.fieldChannel),i=(l={})=>e.vgField(e.stack.fieldChannel,l),r=(l,c)=>{const f=[i({prefix:"min",suffix:"start",expr:c}),i({prefix:"max",suffix:"start",expr:c}),i({prefix:"min",suffix:"end",expr:c}),i({prefix:"max",suffix:"end",expr:c})];return`${l}(${f.map(d=>`scale('${n}',${d})`).join(",")})`};let o,s;e.stack.fieldChannel==="x"?(o={...dc(t.encode.update,["y","yc","y2","height",...Z1]),x:{signal:r("min","datum")},x2:{signal:r("max","datum")},clip:{value:!0}},s={x:{field:{group:"x"},mult:-1},height:{field:{group:"height"}}},t.encode.update={...Wn(t.encode.update,["y","yc","y2"]),height:{field:{group:"height"}}}
13):(o={...dc(t.encode.update,["x","xc","x2","width"]),y:{signal:r("min","datum")},y2:{signal:r("max","datum")},clip:{value:!0}},s={y:{field:{group:"y"},mult:-1},width:{field:{group:"width"}}},t.encode.update={...Wn(t.encode.update,["x","xc","x2"]),width:{field:{group:"width"}}});for(const l of Z1){const c=Ji(l,e.markDef,e.config);t.encode.update[l]?(o[l]=t.encode.update[l],delete t.encode.update[l]):c&&(o[l]=Pe(c)),c&&(t.encode.update[l]={value:0})}const a=[];if(e.stack.groupbyChannels?.length>0)for(const l of e.stack.groupbyChannels){const c=e.fieldDef(l),f=W(c);f&&a.push(f),(c?.bin||c?.timeUnit)&&a.push(W(c,{binSuffix:"end"}))}return o=["stroke","strokeWidth","strokeJoin","strokeCap","strokeDash","strokeDashOffset","strokeMiterLimit","strokeOpacity"].reduce((l,c)=>{if(t.encode.update[c])return{...l,[c]:t.encode.update[c]};{const f=Ji(c,e.markDef,e.config);return f!==void 0?{...l,[c]:Pe(f)}:l}},o),o.stroke&&(o.strokeForeground={value:!0},o.strokeOffset={value:0}),[{type:"group",from:{facet:{data:e.requestDataName(qe.Main),name:s$+e.requestDataName(qe.Main),groupby:a,aggregate:{fields:[i({suffix:"start"}),i({suffix:"start"}),i({suffix:"end"}),i({suffix:"end"})],ops:["min","max","min","max"]}}},encode:{update:o},marks:[{type:"group",encode:{update:s},marks:[t]}]}]}function Uue(e){const{encoding:t,stack:n,mark:i,markDef:r,config:o}=e,s=t.order;if(!(!z(s)&&xi(s)&&XE(s.value)||!s&&XE(De("order",r,o)))){if((z(s)||U(s))&&!n)return lT(s,{expr:"datum"});if(Ko(i)){const a=r.orient==="horizontal"?"y":"x",u=t[a];if(U(u))return{field:a}}}}function tw(e,t={fromPrefix:""}){const{mark:n,markDef:i,encoding:r,config:o}=e,s=Ze(i.clip,jue(e),que(e)),a=aT(i),u=r.key,l=Uue(e),c=Wue(e),f=De("aria",i,o),d=Yf[n].postEncodingTransform?Yf[n].postEncodingTransform(e):null;return[{name:e.getName("marks"),type:Yf[n].vgMark,...s?{clip:s}:{},...a?{style:a}:{},...u?{key:u.field}:{},...l?{sort:l}:{},...c||{},...f===!1?{aria:f}:{},from:{data:t.fromPrefix+e.requestDataName(qe.Main)},encode:{update:Yf[n].encodeEntry(e)},...d?{transform:d}:{}}]}function jue(e){const t=e.getScaleComponent("x"),n=e.getScaleComponent("y");return t?.get("selectionExtent")||n?.get("selectionExtent")?!0:void 0}function que(e){const t=e.component.projection;return t&&!t.isFit?!0:void 0}function Wue(e){if(!e.component.selection)return null;const t=P(e.component.selection).length;let n=t,i=e.parent;for(;i&&n===0;)n=P(i.component.selection).length,i=i.parent;return n?{interactive:t>0||e.mark==="geoshape"||!!e.encoding.tooltip||!!e.markDef.tooltip}:null}class oO extends eO{markDef;encoding;specifiedScales={};stack;specifiedAxes={};specifiedLegends={};specifiedProjection={};selection=[];children=[];constructor(t,n,i,r={},o){super(t,"unit",n,i,o,void 0,bk(t)?t.view:void 0);const s=er(t.mark)?{...t.mark}:{type:t.mark},a=s.type;s.filled===void 0&&(s.filled=Are(s,o,{graticule:t.data&&O2(t.data)}));const u=this.encoding=Die(t.encoding||{},a,s.filled,o);this.markDef=ON(s,u,o),this.size=vue({encoding:u,size:bk(t)?{...r,...t.width?{width:t.width}:{},...t.height?{height:t.height}:{}}:r}),this.stack=RN(this.markDef,u),this.specifiedScales=this.initScales(a,u),this.specifiedAxes=this.initAxes(u),this.specifiedLegends=this.initLegends(u),this.specifiedProjection=t.projection,this.selection=(t.params??[]).filter(l=>F2(l))}get hasProjection(){const{encoding:t}=this,n=this.mark===BT,i=t&&See.some(r=>ae(t[r]));return n||i}scaleDomain(t){const n=this.specifiedScales[t];return n?n.domain:void 0}axis(t){return this.specifiedAxes[t]}legend(t){return this.specifiedLegends[t]}initScales(t,n){return Gv.reduce((i,r)=>{const o=et(n[r]);return o&&(i[r]=this.initScale(o.scale??{})),i},{})}initScale(t){const{domain:n,range:i}=t,r=St(t);return z(n)&&(r.domain=n.map($n)),z(i)&&(r.range=i.map($n)),r}initAxes(t){return to.reduce((n,i)=>{const r=t[i];if(ae(r)||i===Ie&&ae(t.x2)||i===bt&&ae(t.y2)){const o=ae(r)?r.axis:void 0;n[i]=o&&this.initAxis({...o})}return n},{})}initAxis(t){const n=P(t),i={};for(const r of n){const o=t[r];i[r]=sf(o)?sT(o):$n(o)}return i}initLegends(t){return Ree.reduce((n,i)=>{const r=et(t[i]);if(r&&zee(i)){const o=r.legend;n[i]=o&&St(o)}return n},{})}parseData(){this.component.data=Hp(this)}parseLayoutSize(){iue(this)}parseSelections(){this.component.selection=Yoe(this,this.selection)}parseMarkGroup(){this.component.mark=Lue(this)}parseAxesAndHeaders(){this.component.axes=due(this)}assembleSelectionTopLevelSignals(t){return woe(this,t)}assembleSignals(){return[...vR(this),...boe(this,[])]}assembleSelectionData(t){return _oe(this,t)}assembleLayout(){return null}assembleLayoutSignals(){return q2(this)}correctDataNames=t=>(t.from?.data&&(t.from.data=this.lookupDataSource(t.from.data),"time"in this.encoding&&(t.from.data=t.from.data+YN)),t.from?.facet?.data&&(t.from.facet.data=this.lookupDataSource(t.from.facet.data)),t);assembleMarks(){let t=this.component.mark??[];return(!this.parent||!Bu(this.parent))&&(t=QN(this,t)),t.map(this.correctDataNames)}assembleGroupStyle(){const{style:t}=this.view||{};return t!==void 0?t:this.encoding.x||this.encoding.y?"cell":"view"}getMapping(){return this.encoding}get mark(){return this.markDef.type}channelHasField(t){return $s(this.encoding,t)}fieldDef(t){const n=this.encoding[t];return bi(n)}typedFieldDef(t){const n=this.fieldDef(t);return an(n)?n:null}}class nw extends Z2{children;
13constructor(t,n,i,r,o){super(t,"layer",n,i,o,t.resolve,t.view);const s={...r,...t.width?{width:t.width}:{},...t.height?{height:t.height}:{}};this.children=t.layer.map((a,u)=>{if(Ap(a))return new nw(a,this,this.getName(`layer_${u}`),s,o);if(no(a))return new oO(a,this,this.getName(`layer_${u}`),s,o);throw new Error(Yv(a))})}parseData(){this.component.data=Hp(this);for(const t of this.children)t.parseData()}parseLayoutSize(){tue(this)}parseSelections(){this.component.selection={};for(const t of this.children){t.parseSelections();for(const n of P(t.component.selection))this.component.selection[n]=t.component.selection[n]}nt(this.component.selection).some(t=>Wi(t))&&Zv(Kv)}parseMarkGroup(){for(const t of this.children)t.parseMarkGroup()}parseAxesAndHeaders(){gue(this)}assembleSelectionTopLevelSignals(t){return this.children.reduce((n,i)=>i.assembleSelectionTopLevelSignals(n),t)}assembleSignals(){return this.children.reduce((t,n)=>t.concat(n.assembleSignals()),vR(this))}assembleLayoutSignals(){return this.children.reduce((t,n)=>t.concat(n.assembleLayoutSignals()),q2(this))}assembleSelectionData(t){return this.children.reduce((n,i)=>i.assembleSelectionData(n),t)}assembleGroupStyle(){const t=new Set;for(const i of this.children)for(const r of H(i.assembleGroupStyle()))t.add(r);const n=Array.from(t);return n.length>1?n:n.length===1?n[0]:void 0}assembleTitle(){let t=super.assembleTitle();if(t)return t;for(const n of this.children)if(t=n.assembleTitle(),t)return t}assembleLayout(){return null}assembleMarks(){return Soe(this,this.children.flatMap(t=>t.assembleMarks()))}assembleLegends(){return this.children.reduce((t,n)=>t.concat(n.assembleLegends()),PR(this))}}function iw(e,t,n,i,r){if(vp(e))return new ql(e,t,n,r);if(Ap(e))return new nw(e,t,n,i,r);if(no(e))return new oO(e,t,n,i,r);if(tre(e))return new uue(e,t,n,r);throw new Error(Yv(e))}function Hue(e,t={}){t.logger&&one(t.logger),t.fieldTitle&&rN(t.fieldTitle);try{const n=NN(Sy(t.config,e.config)),i=ioe(e,n),r=iw(i,null,"",void 0,n);return r.parse(),pae(r.component.data,r),{spec:Vue(r,Gue(e,i.autosize,n,r),e.datasets,e.usermeta),normalized:i}}finally{t.logger&&sne(),t.fieldTitle&&_ie()}}function Gue(e,t,n,i){const r=i.component.layoutSize.get("width"),o=i.component.layoutSize.get("height");if(t===void 0?(t={type:"pad"},i.hasAxisOrientSignalRef()&&(t.resize=!0)):Y(t)&&(t={type:t}),r&&o&&loe(t.type)){if(r==="step"&&o==="step")I(ik()),t.type="pad";else if(r==="step"||o==="step"){const s=r==="step"?"width":"height";I(ik(lp(s)));const a=s==="width"?"height":"width";t.type=coe(a)}}return{...P(t).length===1&&t.type?t.type==="pad"?{}:{autosize:t.type}:{autosize:t},...Dk(n,!1),...Dk(e,!0)}}function Vue(e,t,n={},i){const r=e.config?pre(e.config):void 0,o=Zae(e.component.data,n),s=e.assembleSelectionData(o),a=e.assembleProjections(),u=e.assembleTitle(),l=e.assembleGroupStyle(),c=e.assembleGroupEncodeEntry(!0);let f=e.assembleLayoutSignals();f=f.filter(g=>(g.name==="width"||g.name==="height")&&g.value!==void 0?(t[g.name]=+g.value,!1):!0);const{params:d,...h}=t;return{$schema:"https://vega.github.io/schema/vega/v6.json",...e.description?{description:e.description}:{},...h,...u?{title:u}:{},...l?{style:l}:{},...c?{encode:{update:c}}:{},data:s,...a.length>0?{projections:a}:{},...e.assembleGroup([...f,...e.assembleSelectionTopLevelSignals([]),...MN(d)]),...r?{config:r}:{},...i?{usermeta:i}:{}}}function Yue(e,t,n,i){if(z(e))return`[${e.map(r=>t(Y(r)?r:a$(r,n))).join(", ")}]`;if(V(e)){let r="";const{title:o,image:s,...a}=e;o&&(r+=`<h2>${t(o)}</h2>`),s&&(r+=`<img src="${new URL(t(s),i||location.href).href}">`);const u=Object.keys(a);if(u.length>0){r+="<table>";for(const l of u){let c=a[l];c!==void 0&&(V(c)&&(c=a$(c,n)),r+=`<tr><td class="key">${t(l)}</td><td class="value">${t(c)}</td></tr>`)}r+="</table>"}return r||"{}"}return t(e)}function Xue(e){const t=[];return function(n,i){if(typeof i!="object"||i===null)return i;const r=t.indexOf(this)+1;return t.length=r,t.length>e?"[Object]":t.indexOf(i)>=0?"[Circular]":(t.push(i),i)}}function a$(e,t){return JSON.stringify(e,Xue(t))}var Kue=`#vg-tooltip-element {
14  visibility: hidden;
15  padding: 8px;
16  position: fixed;
17  z-index: 1000;
18  font-family: sans-serif;
19  font-size: 11px;
20  border-radius: 3px;
21  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
22  /* The default theme is the light theme. */
23  background-color: rgba(255, 255, 255, 0.95);
24  border: 1px solid #d9d9d9;
25  color: black;
26}
27#vg-tooltip-element.visible {
28  visibility: visible;
29}
30#vg-tooltip-element h2 {
31  margin-top: 0;
32  margin-bottom: 10px;
33  font-size: 13px;
34}
35#vg-tooltip-element table {
36  border-spacing: 0;
37}
38#vg-tooltip-element table tr {
39  border: none;
40}
41#vg-tooltip-element table tr td {
42  overflow: hidden;
43  text-overflow: ellipsis;
44  padding-top: 2px;
45  padding-bottom: 2px;
46}
47#vg-tooltip-element table tr td.key {
48  color: #808080;
49  max-width: 150px;
50  text-align: right;
51  padding-right: 4px;
52}
53#vg-tooltip-element table tr td.value {
54  display: block;
55  max-width: 300px;
56  max-height: 7em;
57  text-align: left;
58}
59#vg-tooltip-element.dark-theme {
60  background-color: rgba(32, 32, 32, 0.9);
61  border: 1px solid #f5f5f5;
62  color: white;
63}
64#vg-tooltip-element.dark-theme td.key {
65  color: #bfbfbf;
66}
67`;const sO="vg-tooltip-element",Zue={offsetX:10,offsetY:10,id:sO,styleId:"vega-tooltip-style",theme:"light",disableDefaultStyle:!1,sanitize:Que,maxDepth:2,formatTooltip:Yue,baseURL:"",anchor:"cursor",position:["top","bottom","left","right","top-left","top-right","bottom-left","bottom-right"]};function Que(e){return String(e).replace(/&/g,"&amp;").replace(/</g,"&lt;")}function Jue(e){if(!/^[A-Za-z]+[-:.\w]*$/.test(e))throw new Error("Invalid HTML ID");return Kue.toString().replaceAll(sO,e)}function aO(e,t,{offsetX:n,offsetY:i}){const r=uO({x1:e.clientX,x2:e.clientX,y1:e.clientY,y2:e.clientY},t,n,i),o=["bottom-right","bottom-left","top-right","top-left"];for(const s of o)if(lO(r[s],t))return r[s];return r["top-left"]}function ele(e,t,n,i,r){const{position:o,offsetX:s,offsetY:a}=r,u=e._el.getBoundingClientRect(),l=e._origin,c=tle(u,l,n),f=uO(c,i,s,a),d=Array.isArray(o)?o:[o];for(const h of d)if(lO(f[h],i)&&!nle(t,f[h],i))return f[h];return aO(t,i,r)}function tle(e,t,n){const i=n.isVoronoi?n.datum.bounds:n.bounds;let r=e.left+t[0]+i.x1,o=e.top+t[1]+i.y1,s=n;for(;s.mark.group;)s=s.mark.group,r+=s.x??0,o+=s.y??0;const a=i.x2-i.x1,u=i.y2-i.y1;return{x1:r,x2:r+a,y1:o,y2:o+u}}function uO(e,t,n,i){const r=(e.x1+e.x2)/2,o=(e.y1+e.y2)/2,s=e.x1-t.width-n,a=r-t.width/2,u=e.x2+n,l=e.y1-t.height-i,c=o-t.height/2,f=e.y2+i;return{top:{x:a,y:l},bottom:{x:a,y:f},left:{x:s,y:c},right:{x:u,y:c},"top-left":{x:s,y:l},"top-right":{x:u,y:l},"bottom-left":{x:s,y:f},"bottom-right":{x:u,y:f}}}function lO(e,t){return e.x>=0&&e.y>=0&&e.x+t.width<=window.innerWidth&&e.y+t.height<=window.innerHeight}function nle(e,t,n){return e.clientX>=t.x&&e.clientX<=t.x+n.width&&e.clientY>=t.y&&e.clientY<=t.y+n.height}class ile{call;options;el;constructor(t){this.options={...Zue,...t};const n=this.options.id;if(this.el=null,this.call=this.tooltipHandler.bind(this),!this.options.disableDefaultStyle&&!document.getElementById(this.options.styleId)){const i=document.createElement("style");i.setAttribute("id",this.options.styleId),i.innerHTML=Jue(n);const r=document.head;r.childNodes.length>0?r.insertBefore(i,r.childNodes[0]):r.appendChild(i)}}tooltipHandler(t,n,i,r){if(this.el=document.getElementById(this.options.id),this.el||(this.el=document.createElement("div"),this.el.setAttribute("id",this.options.id),this.el.classList.add("vg-tooltip"),(document.fullscreenElement??document.body).appendChild(this.el)),r==null||r===""){this.el.classList.remove("visible",`${this.options.theme}-theme`);return}this.el.innerHTML=this.options.formatTooltip(r,this.options.sanitize,this.options.maxDepth,this.options.baseURL),this.el.classList.add("visible",`${this.options.theme}-theme`);const{x:o,y:s}=this.options.anchor==="mark"?ele(t,n,i,this.el.getBoundingClientRect(),this.options):aO(n,this.el.getBoundingClientRect(),this.options);this.el.style.top=`${s}px`,this.el.style.left=`${o}px`}}function rle(e,t){const n=new ile(t);return e.tooltip(n.call).run(),n}const ole={key:0,class:"flex justify-center p-4"},sle={key:1,class:"prose max-w-none text-sm italic p-4"},ale={key:1,class:"prose max-w-none text-sm italic pt-4"}
67,ule={key:2,class:"pt-10 whitespace-pre-line"},lle={key:0},cle=dO({__name:"VegaGraphs",props:{pageDetails:{},data:{}},setup(e){const t=e,n=cf([]),i=cf([]),r=cf([]);cf([]);const{getUmamiEvent:o}=SO(),{eventName:s,eventData:a}=o(t?.pageDetails,"VegaGraphs",t?.data?.button?.label);function u(){_O(s,a)}let l=!1;const c=p=>{if(l)return;const m=p.target;if(!m||!m.name||!m.closest(".vega-bindings, .vega-bind"))return;const y=m.name,x=m instanceof HTMLInputElement&&m.type==="checkbox",b=m instanceof HTMLInputElement&&m.type==="radio",v=document.querySelectorAll(`.vega-bindings input[name="${y}"], .vega-bindings select[name="${y}"]`);l=!0;try{v.forEach(w=>{w!==m&&(x&&w instanceof HTMLInputElement&&w.type==="checkbox"?w.checked!==m.checked&&(w.checked=m.checked,w.dispatchEvent(new Event("change",{bubbles:!0})),w.dispatchEvent(new Event("input",{bubbles:!0}))):b&&w instanceof HTMLInputElement&&w.type==="radio"?w.value===m.value&&!w.checked&&(w.checked=!0,w.dispatchEvent(new Event("change",{bubbles:!0})),w.dispatchEvent(new Event("input",{bubbles:!0}))):w.value!==m.value&&(w.value=m.value,w.dispatchEvent(new Event("change",{bubbles:!0})),w.dispatchEvent(new Event("input",{bubbles:!0}))))})}finally{l=!1}},f=p=>p?p["binding-newlines"]===!0||p.binding_newlines===!0:!1,d=hO(()=>t.data.fullwidth?"col-span-10":t.data.graphs?.some(m=>m.center===!0)?"col-span-8 col-start-2":"col-span-8"),h=p=>{const m=Array.from(p.querySelectorAll(".vega-bind"));if(!m.length||(m.forEach(x=>{const b=x.querySelector(".vega-bind-name");if(b&&!b.querySelector(".vega-bind-title")){const v=b.textContent||"",w=v.indexOf(":");if(w!==-1){const S=v.slice(0,w+1),_=v.slice(w+1);_.trim()?b.innerHTML=`<strong class="vega-bind-title">${S}</strong><span class="vega-bind-option-label">${_}</span>`:b.innerHTML=`<strong class="vega-bind-title">${S}</strong>`}}}),p.querySelector(".vega-bind-group")))return;let y=null;m.forEach(x=>{((x.querySelector(".vega-bind-name")?.textContent||"").includes(":")||!y)&&(y=document.createElement("div"),y.className="vega-bind-group",x.parentNode?.insertBefore(y,x)),y.appendChild(x)})},g=(p,m)=>{if(!m||typeof m!="string"||!m.trim())return;const y=m.split(",").map(b=>b.trim().toLowerCase()).filter(Boolean);if(!y.length)return;const x=p.querySelectorAll('input[type="checkbox"]');x.length&&x.forEach(b=>{const v=(b.value||"").trim().toLowerCase(),w=(b.name||"").trim().toLowerCase(),S=(b.parentElement?.textContent||b.nextSibling?.textContent||"").trim().toLowerCase(),_=y.includes(v)||y.includes(w)||y.some(E=>S.includes(E));b.checked!==_&&(b.checked=_,b.dispatchEvent(new Event("change",{bubbles:!0})),b.dispatchEvent(new Event("input",{bubbles:!0})))})};return gO(()=>{t.data.graphs.forEach(async(p,m)=>{if(i.value[m]&&p.url)try{let x=await(await fetch(p.url)).json();if(typeof x=="string"&&(x=JSON.parse(x)),x.$schema&&x.$schema.includes("vega-lite")&&(x=Hue(x).spec),typeof x!="object"||x===null)throw console.error("Fetched spec is not an object:",x),new Error("Input Vega specification must be an object.");const b={renderer:"svg",container:i.value[m],hover:!0};p.bindings!==!1&&r.value[m]&&(b.bind=r.value[m]);const v=new o5(fee(x),b);rle(v),await v.runAsync(),n.value[m]=1,p.bindings!==!1&&r.value[m]?(h(r.value[m]),g(r.value[m],p.checkbox_filter)):p.bindings===!1&&i.value[m]&&i.value[m].querySelectorAll(".vega-bindings").forEach(S=>{S.style.display="none"})}catch(y){console.error("Error fetching JSON for graph:",p.url,y)}}),document.addEventListener("change",c),document.addEventListener("input",c)}),pO(()=>{document.removeEventListener("change",c),document.removeEventListener("input",c)}),(p,m)=>{const y=cO,x=fO,b=wO;return _n(),gr("div",{class:ff(d.value)},[(_n(!0),gr(mO,null,yO(p.data.graphs,(v,w)=>(_n(),gr("div",{key:w,class:"mb-8 w-full"},[v.bindings!==!1?(_n(),gr("div",{key:0,ref_for:!0,ref:S=>r.value[w]=S,class:ff(["vega-bindings w-full",{"has-newlines":f(v)}]),style:ow(v.color?{backgroundColor:v.color}:{})},null,6)):ma("",!0),Qo("div",{class:ff(["w-full",[v.border?"chart-box":""]]),style:ow(v.color?{backgroundColor:v.color}:{})},[n.value[w]?ma("",!0):(_n(),gr("div",ole,[...m[0]||(m[0]=[Qo("div",{role:"status"},[Qo("svg",{"aria-hidden":"true",class:"w-8 h-8 text-gray-200 animate-spin dark:text-gray-600 fill-primary",viewBox:"0 0 100 101",fill:"none",xmlns:"http://www.w3.org/2000/svg"},[Qo("path",{d:"M100 50.5908C100 78.2051 77.6142 100.591 50 100.591C22.3858 100.591 0 78.2051 0 50.5908C0 22.9766 22.3858 0.59082 50 0.59082C77.6142 0.59082 100 22.9766 100 50.5908ZM9.08144 50.5908C9.08144 73.1895 27.4013 91.5094 50 91.5094C72.5987 91.5094 90.9186 73.1895 90.9186 50.5908C90.9186 27.9921 72.5987 9.67226 50 9.67226C27.4013 9.67226 9.08144 27.9921 9.08144 50.5908Z",fill:"currentColor"}),Qo("path",{d:"M93.9676 39.0409C96.393 38.4038 97.8624 35.9116 97.0079 33.5539C95.2932 28.8227 92.871 24.3692 89.8167 20.348C85.8452 15.1192 80.8826 10.7238 75.2124 7.41289C69.5422 4.10194 63.2754 1.94025 56.7698 1.05124C51.7666 0.367541 46.6976 0.446843 41.7345 1.27873C39.2613 1.69328 37.813 4.19778 38.4501 6.62326C39.0873 9.04874 41.5694 10.4717 44.0505 10.
671071C47.8511 9.54855 51.7191 9.52689 55.5402 10.0491C60.8642 10.7766 65.9928 12.5457 70.6331 15.2552C75.2735 17.9648 79.3347 21.5619 82.5849 25.841C84.9175 28.9121 86.7997 32.2913 88.1811 35.8758C89.083 38.2158 91.5421 39.6781 93.9676 39.0409Z",fill:"currentFill"})]),Qo("span",{class:"sr-only"},"Loading...")],-1)])])),Qo("div",{ref_for:!0,ref:S=>i.value[w]=S,class:ff(["vega-container w-full",{"is-centered":v.center===!0,"hide-bindings":v.bindings===!1}])},null,2),v.caption&&v.caption_embed?(_n(),gr("div",sle,[v.tooltip?.length?(_n(),df(y,{key:0,nodes:v.caption,tooltips:v.tooltip},null,8,["nodes","tooltips"])):(_n(),df(x,{key:1,nodes:v.caption},null,8,["nodes"]))])):ma("",!0)],6),v.caption&&!v.caption_embed?(_n(),gr("div",ale,[v.tooltip?.length?(_n(),df(y,{key:0,nodes:v.caption,tooltips:v.tooltip},null,8,["nodes","tooltips"])):(_n(),df(x,{key:1,nodes:v.caption},null,8,["nodes"]))])):ma("",!0),v.content?(_n(),gr("div",ule,sw(v.content),1)):ma("",!0)]))),128)),p.data.button?(_n(),gr("div",lle,[xO(b,{block:"",to:p.data.button?.url,color:p.data.button?.color.toLowerCase(),onClick:u,disabled:!p.data?.button?.url},{default:bO(()=>[vO(sw(p.data.button?.label),1)]),_:1},8,["to","color","disabled"])])):ma("",!0)],2)}}}),ece=Object.assign(EO(cle,[["__scopeId","data-v-63eeb538"]]),{__name:"SectionVegaGraphs"});export{ece as default};

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.