@blueprint-chart/lib 2.2.0 → 2.2.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/dist/lib/lib.iife.js +14 -14
- package/dist/node-backend/index.js +1853 -1835
- package/dist/{render-bpc-C4y50x4-.js → render-bpc-BnD9HqZ-.js} +2035 -2017
- package/dist/runtime.js +1 -1
- package/package.json +1 -1
package/dist/lib/lib.iife.js
CHANGED
|
@@ -304,13 +304,13 @@ body {
|
|
|
304
304
|
`+a.line+` | `+s+`
|
|
305
305
|
`+r+` | `+``.padEnd(i.column-1,` `)+``.padEnd(c,`^`)}else t+=`
|
|
306
306
|
at `+o}return t}static buildMessage(e,t){function n(e){return e.codePointAt(0).toString(16).toUpperCase()}let r=Object.prototype.hasOwnProperty.call(RegExp.prototype,`unicode`)?RegExp(`[\\p{C}\\p{Mn}\\p{Mc}]`,`gu`):null;function i(e){return r?e.replace(r,e=>`\\u{`+n(e)+`}`):e}function a(e){return i(e.replace(/\\/g,`\\\\`).replace(/"/g,`\\"`).replace(/\0/g,`\\0`).replace(/\t/g,`\\t`).replace(/\n/g,`\\n`).replace(/\r/g,`\\r`).replace(/[\x00-\x0F]/g,e=>`\\x0`+n(e)).replace(/[\x10-\x1F\x7F-\x9F]/g,e=>`\\x`+n(e)))}function o(e){return i(e.replace(/\\/g,`\\\\`).replace(/\]/g,`\\]`).replace(/\^/g,`\\^`).replace(/-/g,`\\-`).replace(/\0/g,`\\0`).replace(/\t/g,`\\t`).replace(/\n/g,`\\n`).replace(/\r/g,`\\r`).replace(/[\x00-\x0F]/g,e=>`\\x0`+n(e)).replace(/[\x10-\x1F\x7F-\x9F]/g,e=>`\\x`+n(e)))}let s={literal(e){return`"`+a(e.text)+`"`},class(e){let t=e.parts.map(e=>Array.isArray(e)?o(e[0])+`-`+o(e[1]):o(e));return`[`+(e.inverted?`^`:``)+t.join(``)+`]`+(e.unicode?`u`:``)},any(){return`any character`},end(){return`end of input`},other(e){return e.description}};function c(e){return s[e.type](e)}function l(e){let t=e.map(c);if(t.sort(),t.length>0){let e=1;for(let n=1;n<t.length;n++)t[n-1]!==t[n]&&(t[e]=t[n],e++);t.length=e}switch(t.length){case 1:return t[0];case 2:return t[0]+` or `+t[1];default:return t.slice(0,-1).join(`, `)+`, or `+t[t.length-1]}}function u(e){return e?`"`+a(e)+`"`:`end of input`}return`Expected `+l(e)+` but `+u(t)+` found.`}};function k(e,t){t=t===void 0?{}:t;let n={},r=t.grammarSource,i={Chart:Lt},a=Lt,o=`chart`,s=`data`,c=`colorize`,l=`highlight`,u=`area-fill`,d=`annotation`,f=`range`,p=`note`,m=`series`,h=`scene`,g=`transform`,_=/^[ \t]/,v=/^[^\t\n\r{}=]/,y=/^[a-zA-Z_#]/,b=/^[a-zA-Z0-9_#\-]/,x=/^[0-9]/,S=/^[eE]/,C=/^[+\-]/,w=/^[^"\\]/,k=/^[0-9a-fA-F]/,ee=/^[^\n]/,A=/^[ \t\n\r]/,j=Ot(`chart`,!1),M=Ot(`{`,!1),N=Ot(`}`,!1),P=kt([` `,` `],!1,!1,!1),F=Ot(`data`,!1),I=Ot(`=`,!1),L=Ot(`,`,!1),R=Ot(` `,!1),z=kt([` `,`
|
|
307
|
-
`,`\r`,`{`,`}`,`=`],!0,!1,!1),B=Ot(`colorize`,!1),V=Ot(`highlight`,!1),
|
|
307
|
+
`,`\r`,`{`,`}`,`=`],!0,!1,!1),B=Ot(`colorize`,!1),V=Ot(`highlight`,!1),te=Ot(`area-fill`,!1),ne=Ot(`annotation`,!1),re=Ot(`range`,!1),ie=Ot(`note`,!1),ae=Ot(`series`,!1),oe=Ot(`scene`,!1),H=Ot(`transform`,!1),se=Ot(`%`,!1),ce=Mt(`identifier`),le=kt([[`a`,`z`],[`A`,`Z`],`_`,`#`],!1,!1,!1),ue=kt([[`a`,`z`],[`A`,`Z`],[`0`,`9`],`_`,`#`,`-`],!1,!1,!1),de=Ot(`-`,!1),U=Ot(`.`,!1),W=kt([[`0`,`9`]],!1,!1,!1),fe=kt([`e`,`E`],!1,!1,!1),pe=kt([`+`,`-`],!1,!1,!1),me=Mt(`string`),he=Ot(`"`,!1),ge=Ot(`\\`,!1),_e=kt([`"`,`\\`],!0,!1,!1),ve=Ot(`n`,!1),ye=Ot(`r`,!1),be=Ot(`t`,!1),xe=Ot(`u`,!1),Se=kt([[`0`,`9`],[`a`,`f`],[`A`,`F`]],!1,!1,!1),G=At(),K=Ot(`//`,!1),Ce=kt([`
|
|
308
308
|
`],!0,!1,!1),we=Ot(`/*`,!1),Te=Ot(`*/`,!1),Ee=kt([` `,` `,`
|
|
309
309
|
`,`\r`],!1,!1,!1),De=Mt(`whitespace`);function Oe(e,t,n){T(t)>1&&Et(`duplicate data block — a chart or scene may define at most one data { } block`);let r=E(t);return{type:`chart`,chartType:e,...n.length?{trailingComments:n}:{},properties:r.properties,data:r.data,colorizes:r.colorizes,highlights:r.highlights,areaFills:r.areaFills,annotations:r.annotations,series:r.series,scenes:r.scenes,transforms:r.transforms}}function ke(e,t,n){return e.length&&(t.leadingComments=e),n!=null&&(t.trailingComment=n),t}function Ae(e,t){return{type:`data`,entries:e,...t.length?{trailingComments:t}:{}}}function je(e,t,n){return e.length&&(t.leadingComments=e),n!=null&&(t.trailingComment=n),t}function Me(e,t,n){return n}function Ne(e,t,n){let r=[t,...n];return{type:`property`,key:e.name,...e.quoted&&e.name===`series`?{quotedKey:!0}:{},value:r[0].value,isPercentage:!1,values:r.map(e=>e.value)}}function Pe(e,t){return{type:`property`,key:e.name,...e.quoted&&e.name===`series`?{quotedKey:!0}:{},value:t.value,isPercentage:t.isPercentage}}function Fe(e){return{name:e,quoted:!0}}function Ie(e){return{name:e,quoted:!1}}function Le(e,t){return{type:`property`,key:e,...e===`series`?{quotedKey:!0}:{},value:t.value,isPercentage:t.isPercentage}}function Re(e){return e.trim()}function ze(e,t,n){return{type:`colorize`,target:e,properties:t,...n.length?{trailingComments:n}:{}}}function Be(){Et(`colorize needs a quoted target, e.g. colorize "2021" { ... }`)}function Ve(e,t,n){return{type:`colorize`,target:e,properties:t,fromHighlight:!0,...n.length?{trailingComments:n}:{}}}function He(e){return{type:`highlight`,target:e,properties:[]}}function Ue(){Et(`highlight needs a quoted target, e.g. highlight "2021" { ... } or highlight "2021"`)}function We(e,t,n,r){return{type:`area-fill`,from:e,to:t,properties:n,...r.length?{trailingComments:r}:{}}}function Ge(){Et(`area-fill needs two quoted targets, e.g. area-fill "Revenue" "Cost" { ... }`)}function Ke(){Et(`area-fill needs two quoted targets, e.g. area-fill "Revenue" "Cost" { ... }`)}function qe(e,t,n){return{type:`annotation`,kind:`point`,target:e,properties:t,...n.length?{trailingComments:n}:{}}}function Je(){Et(`annotation needs a quoted target, e.g. annotation "2021" { ... }`)}function Ye(e,t){return{type:`annotation`,kind:`range`,properties:e,...t.length?{trailingComments:t}:{}}}function Xe(e,t){return{type:`annotation`,kind:`free`,properties:e,...t.length?{trailingComments:t}:{}}}function Ze(e,t,n){return{type:`series`,name:e,properties:t,...n.length?{trailingComments:n}:{}}}function Qe(){Et(`series needs a quoted name, e.g. series "Revenue" { ... }`)}function $e(e,t,n){T(t)>1&&Et(`duplicate data block — a chart or scene may define at most one data { } block`);let r=D(t);return{type:`scene`,name:e??null,...n.length?{trailingComments:n}:{},properties:r.properties,data:r.data,colorizes:r.colorizes,highlights:r.highlights,areaFills:r.areaFills,annotations:r.annotations,series:r.series,transforms:r.transforms}}function et(e,t,n){return{type:`transform`,transformType:e,properties:t,...n.length?{trailingComments:n}:{}}}function tt(e,t,n){return e.length&&(t.leadingComments=e),n!=null&&(t.trailingComment=n),t}function nt(e,t){return t!=null&&(e.trailingComment=t),e}function rt(e,t){return{type:`property`,key:e,value:t.value,isPercentage:t.isPercentage}}function it(e){return{value:e,isPercentage:!0}}function at(e){return{value:e,isPercentage:!1}}function ot(e){return{value:e,isPercentage:!1}}function st(e){return{value:e,isPercentage:!1}}function ct(e){return parseFloat(e)}function lt(e){return e.join(``)}function ut(e){return e}function dt(){return`"`}function ft(){return`\\`}function pt(){return`
|
|
310
|
-
`}function mt(){return`\r`}function ht(){return` `}function gt(e){return String.fromCharCode(parseInt(e,16))}function _t(e){Et(`Unknown escape sequence \\`+e)}function vt(e){return e}function yt(e){return e}function bt(e){return e.trim()}function xt(e){return e.trim()}let q=t.peg$currPos|0,J=q,St=[{line:1,column:1}],Ct=q,wt=t.peg$maxFailExpected||[],Y=t.peg$silentFails|0,Tt;if(t.startRule){if(!(t.startRule in i))throw Error(`Can't start parsing from rule "`+t.startRule+`".`);a=i[t.startRule]}function Et(e,t){throw t=t===void 0?Pt(J,q):t,Ft(e,t)}function Dt(t=q){let n=e.codePointAt(t);return n===void 0?``:String.fromCodePoint(n)}function Ot(e,t){return{type:`literal`,text:e,ignoreCase:t}}function kt(e,t,n,r){return{type:`class`,parts:e,inverted:t,ignoreCase:n,unicode:r}}function At(){return{type:`any`}}function jt(){return{type:`end`}}function Mt(e){return{type:`other`,description:e}}function Nt(t){let n=St[t],r;if(n)return n;if(t>=St.length)r=St.length-1;else for(r=t;!St[--r];);for(n=St[r],n={line:n.line,column:n.column};r<t;)e.charCodeAt(r)===10?(n.line++,n.column=1):n.column++,r++;return St[t]=n,n}function Pt(e,t,n){let i=Nt(e),a=Nt(t),o={source:r,start:{offset:e,line:i.line,column:i.column},end:{offset:t,line:a.line,column:a.column}};return n&&r&&typeof r.offset==`function`&&(o.start=r.offset(o.start),o.end=r.offset(o.end)),o}function X(e){q<Ct||(q>Ct&&(Ct=q,wt=[]),wt.push(e))}function Ft(e,t){return new O(e,null,null,t)}function It(e,t,n){return new O(O.buildMessage(e,t),e,t,n)}function Lt(){let t,r,i,a,s,c,l,u;if(t=q,Z(),e.substr(q,5)===o?(r=o,q+=5):(r=n,Y===0&&X(j)),r!==n){if(i=_n(),i!==n){if(a=on(),a!==n){if(Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s!==n){for(c=[],l=Rt();l!==n;)c.push(l),l=Rt();l=hn(),e.charCodeAt(q)===125?(u=`}`,q++):(u=n,Y===0&&X(N)),u===n?(q=t,t=n):(Z(),J=t,t=Oe(a,c,l))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function Rt(){let t,r,i,a,o;if(t=q,r=hn(),i=zt(),i===n&&(i=Gt(),i===n&&(i=Kt(),i===n&&(i=qt(),i===n&&(i=Yt(),i===n&&(i=Xt(),i===n&&(i=Jt(),i===n&&(i=Zt(),i===n&&(i=Qt(),i===n&&(i=$t(),i===n&&(i=nn())))))))))),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=ke(r,i,o)}else q=t,t=n;return t}function zt(){let t,r,i,a,o,c;if(t=q,e.substr(q,4)===s?(r=s,q+=4):(r=n,Y===0&&X(F)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=Bt();o!==n;)a.push(o),o=Bt();o=hn(),e.charCodeAt(q)===125?(c=`}`,q++):(c=n,Y===0&&X(N)),c===n?(q=t,t=n):(J=t,t=Ae(a,o))}else q=t,t=n}else q=t,t=n;return t}function Bt(){let t,r,i,a,o;if(t=q,r=hn(),i=Ut(),i===n&&(i=Vt()),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=je(r,i,o)}else q=t,t=n;return t}function Vt(){let t,r,i,a,o,s,c,l;if(t=q,r=Ht(),r!==n){if(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i!==n){if(Z(),a=an(),a!==n){if(o=[],s=q,e.charCodeAt(q)===44?(c=`,`,q++):(c=n,Y===0&&X(L)),c===n?(q=s,s=n):(Z(),l=an(),l===n?(q=s,s=n):(J=s,s=Me(r,a,l))),s!==n)for(;s!==n;)o.push(s),s=q,e.charCodeAt(q)===44?(c=`,`,q++):(c=n,Y===0&&X(L)),c===n?(q=s,s=n):(Z(),l=an(),l===n?(q=s,s=n):(J=s,s=Me(r,a,l)));else o=n;o===n?(q=t,t=n):(J=t,t=Ne(r,a,o))}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,r=Ht(),r===n?(q=t,t=n):(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=Pe(r,a))))),t}function Ht(){let e,t;return e=q,t=cn(),t!==n&&(J=e,t=Fe(t)),e=t,e===n&&(e=q,t=on(),t!==n&&(J=e,t=Ie(t)),e=t),e}function Ut(){let t,r,i,a;return t=q,r=Wt(),r===n?(q=t,t=n):(e.charCodeAt(q)===9?(i=` `,q++):(i=n,Y===0&&X(R)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=Le(r,a)))),t}function Wt(){let t,r,i,a;if(t=q,r=q,i=[],a=e.charAt(q),v.test(a)?q++:(a=n,Y===0&&X(z)),a!==n)for(;a!==n;)i.push(a),a=e.charAt(q),v.test(a)?q++:(a=n,Y===0&&X(z));else i=n;return r=i===n?i:e.substring(r,q),r!==n&&(J=t,r=Re(r)),t=r,t}function Gt(){let t,r,i,a,o,s,l,u;if(t=q,e.substr(q,8)===c?(r=c,q+=8):(r=n,Y===0&&X(B)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],l=tn();l!==n;)s.push(l),l=tn();l=hn(),e.charCodeAt(q)===125?(u=`}`,q++):(u=n,Y===0&&X(N)),u===n?(q=t,t=n):(J=t,t=ze(a,s,l))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,8)===c?(r=c,q+=8):(r=n,Y===0&&X(B)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Be()))),t}function Kt(){let t,r,i,a,o,s,c,u,d;if(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(o=Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s!==n){for(c=[],u=tn();u!==n;)c.push(u),u=tn();u=hn(),e.charCodeAt(q)===125?(d=`}`,q++):(d=n,Y===0&&X(N)),d===n?(q=t,t=n):(J=t,t=Ve(a,c,u))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r===n?(q=t,t=n):(i=_n(),i===n?(q=t,t=n):(a=cn(),a===n?(q=t,t=n):(o=q,Y++,s=q,c=Z(),e.charCodeAt(q)===123?(u=`{`,q++):(u=n,Y===0&&X(M)),u===n?(q=s,s=n):(c=[c,u],s=c),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=t,t=n):(J=t,t=He(a))))),t===n&&(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Ue())))),t}function qt(){let t,r,i,a,o,s,c,l,d,f;if(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(H)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(o=_n(),o!==n){if(s=cn(),s!==n){if(Z(),e.charCodeAt(q)===123?(c=`{`,q++):(c=n,Y===0&&X(M)),c!==n){for(l=[],d=tn();d!==n;)l.push(d),d=tn();d=hn(),e.charCodeAt(q)===125?(f=`}`,q++):(f=n,Y===0&&X(N)),f===n?(q=t,t=n):(J=t,t=We(a,s,l,d))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(H)),r===n?(q=t,t=n):(i=_n(),i===n?(q=t,t=n):(a=cn(),a===n?(q=t,t=n):(o=Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s===n?(q=t,t=n):(J=t,t=Ge())))),t===n&&(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(H)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Ke())))),t}function Jt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,10)===d?(r=d,q+=10):(r=n,Y===0&&X(te)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=qe(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,10)===d?(r=d,q+=10):(r=n,Y===0&&X(te)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Je()))),t}function Yt(){let t,r,i,a,o,s;if(t=q,e.substr(q,5)===f?(r=f,q+=5):(r=n,Y===0&&X(ne)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=tn();o!==n;)a.push(o),o=tn();o=hn(),e.charCodeAt(q)===125?(s=`}`,q++):(s=n,Y===0&&X(N)),s===n?(q=t,t=n):(J=t,t=Ye(a,o))}else q=t,t=n}else q=t,t=n;return t}function Xt(){let t,r,i,a,o,s;if(t=q,e.substr(q,4)===p?(r=p,q+=4):(r=n,Y===0&&X(re)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=tn();o!==n;)a.push(o),o=tn();o=hn(),e.charCodeAt(q)===125?(s=`}`,q++):(s=n,Y===0&&X(N)),s===n?(q=t,t=n):(J=t,t=Xe(a,o))}else q=t,t=n}else q=t,t=n;return t}function Zt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,6)===m?(r=m,q+=6):(r=n,Y===0&&X(ie)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=Ze(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,6)===m?(r=m,q+=6):(r=n,Y===0&&X(ie)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Qe()))),t}function Qt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,5)===h?(r=h,q+=5):(r=n,Y===0&&X(ae)),r!==n){if(i=_n(),i!==n){if(a=cn(),a===n&&(a=null),Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=en();c!==n;)s.push(c),c=en();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=$e(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function $t(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,9)===g?(r=g,q+=9):(r=n,Y===0&&X(oe)),r!==n){if(i=_n(),i!==n){if(a=on(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=et(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function en(){let t,r,i,a,o;if(t=q,r=hn(),i=zt(),i===n&&(i=Gt(),i===n&&(i=Kt(),i===n&&(i=qt(),i===n&&(i=Yt(),i===n&&(i=Xt(),i===n&&(i=Jt(),i===n&&(i=Zt(),i===n&&(i=$t(),i===n&&(i=nn()))))))))),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=tt(r,i,o)}else q=t,t=n;return t}function tn(){let t,r,i,a;if(t=q,Z(),r=nn(),r!==n){for(i=[],a=e.charAt(q),_.test(a)?q++:(a=n,Y===0&&X(P));a!==n;)i.push(a),a=e.charAt(q),_.test(a)?q++:(a=n,Y===0&&X(P));a=gn(),a===n&&(a=null),mn(),J=t,t=nt(r,a)}else q=t,t=n;return t}function nn(){let t,r,i,a;return t=q,r=rn(),r===n?(q=t,t=n):(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=rt(r,a)))),t}function rn(){let e;return e=cn(),e===n&&(e=on()),e}function an(){let t,r,i;return t=q,r=sn(),r===n?(q=t,t=n):(e.charCodeAt(q)===37?(i=`%`,q++):(i=n,Y===0&&X(se)),i===n?(q=t,t=n):(J=t,t=it(r))),t===n&&(t=q,r=sn(),r!==n&&(J=t,r=at(r)),t=r,t===n&&(t=q,r=cn(),r!==n&&(J=t,r=ot(r)),t=r,t===n&&(t=q,r=on(),r!==n&&(J=t,r=st(r)),t=r))),t}function on(){let t,r,i,a,o;if(Y++,t=q,r=q,i=e.charAt(q),y.test(i)?q++:(i=n,Y===0&&X(le)),i!==n){for(a=[],o=e.charAt(q),b.test(o)?q++:(o=n,Y===0&&X(ue));o!==n;)a.push(o),o=e.charAt(q),b.test(o)?q++:(o=n,Y===0&&X(ue));i=[i,a],r=i}else q=r,r=n;return t=r===n?r:e.substring(t,q),Y--,t===n&&(r=n,Y===0&&X(ce)),t}function sn(){let t,r,i,a,o,s,c,l,u,d;if(t=q,r=q,i=q,e.charCodeAt(q)===45?(a=`-`,q++):(a=n,Y===0&&X(de)),a===n&&(a=null),o=q,e.charCodeAt(q)===46?(s=`.`,q++):(s=n,Y===0&&X(U)),s!==n){if(c=[],l=e.charAt(q),x.test(l)?q++:(l=n,Y===0&&X(W)),l!==n)for(;l!==n;)c.push(l),l=e.charAt(q),x.test(l)?q++:(l=n,Y===0&&X(W));else c=n;c===n?(q=o,o=n):(s=[s,c],o=s)}else q=o,o=n;if(o===n){if(o=q,s=[],c=e.charAt(q),x.test(c)?q++:(c=n,Y===0&&X(W)),c!==n)for(;c!==n;)s.push(c),c=e.charAt(q),x.test(c)?q++:(c=n,Y===0&&X(W));else s=n;if(s!==n){if(c=q,e.charCodeAt(q)===46?(l=`.`,q++):(l=n,Y===0&&X(U)),l!==n){for(u=[],d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));d!==n;)u.push(d),d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));l=[l,u],c=l}else q=c,c=n;c===n&&(c=null),s=[s,c],o=s}else q=o,o=n}if(o!==n){if(s=q,c=e.charAt(q),S.test(c)?q++:(c=n,Y===0&&X(fe)),c!==n){if(l=e.charAt(q),C.test(l)?q++:(l=n,Y===0&&X(pe)),l===n&&(l=null),u=[],d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W)),d!==n)for(;d!==n;)u.push(d),d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));else u=n;u===n?(q=s,s=n):(c=[c,l,u],s=c)}else q=s,s=n;s===n&&(s=null),a=[a,o,s],i=a}else q=i,i=n;return r=i===n?i:e.substring(r,q),r!==n&&(J=t,r=ct(r)),t=r,t}function cn(){let t,r,i,a;if(Y++,t=q,e.charCodeAt(q)===34?(r=`"`,q++):(r=n,Y===0&&X(he)),r!==n){for(i=[],a=ln();a!==n;)i.push(a),a=ln();e.charCodeAt(q)===34?(a=`"`,q++):(a=n,Y===0&&X(he)),a===n?(q=t,t=n):(J=t,t=lt(i))}else q=t,t=n;return Y--,t===n&&(r=n,Y===0&&X(me)),t}function ln(){let t,r,i;return t=q,e.charCodeAt(q)===92?(r=`\\`,q++):(r=n,Y===0&&X(ge)),r===n?(q=t,t=n):(i=un(),i===n?(q=t,t=n):(J=t,t=ut(i))),t===n&&(t=e.charAt(q),w.test(t)?q++:(t=n,Y===0&&X(_e))),t}function un(){let t,r,i,a,o,s,c,l;return t=q,e.charCodeAt(q)===34?(r=`"`,q++):(r=n,Y===0&&X(he)),r!==n&&(J=t,r=dt()),t=r,t===n&&(t=q,e.charCodeAt(q)===92?(r=`\\`,q++):(r=n,Y===0&&X(ge)),r!==n&&(J=t,r=ft()),t=r,t===n&&(t=q,e.charCodeAt(q)===110?(r=`n`,q++):(r=n,Y===0&&X(ve)),r!==n&&(J=t,r=pt()),t=r,t===n&&(t=q,e.charCodeAt(q)===114?(r=`r`,q++):(r=n,Y===0&&X(ye)),r!==n&&(J=t,r=mt()),t=r,t===n&&(t=q,e.charCodeAt(q)===116?(r=`t`,q++):(r=n,Y===0&&X(be)),r!==n&&(J=t,r=ht()),t=r,t===n&&(t=q,e.charCodeAt(q)===117?(r=`u`,q++):(r=n,Y===0&&X(xe)),r===n?(q=t,t=n):(i=q,a=q,o=e.charAt(q),k.test(o)?q++:(o=n,Y===0&&X(Se)),o===n?(q=a,a=n):(s=e.charAt(q),k.test(s)?q++:(s=n,Y===0&&X(Se)),s===n?(q=a,a=n):(c=e.charAt(q),k.test(c)?q++:(c=n,Y===0&&X(Se)),c===n?(q=a,a=n):(l=e.charAt(q),k.test(l)?q++:(l=n,Y===0&&X(Se)),l===n?(q=a,a=n):(o=[o,s,c,l],a=o)))),i=a===n?a:e.substring(i,q),i===n?(q=t,t=n):(J=t,t=gt(i))),t===n&&(t=q,e.length>q?(r=e.charAt(q),q++):(r=n,Y===0&&X(G)),r!==n&&(J=t,r=_t(r)),t=r)))))),t}function dn(){let e;return e=fn(),e===n&&(e=pn()),e}function fn(){let t,r,i,a;if(t=q,e.substr(q,2)===`//`?(r=`//`,q+=2):(r=n,Y===0&&X(K)),r!==n){for(i=[],a=e.charAt(q),ee.test(a)?q++:(a=n,Y===0&&X(Ce));a!==n;)i.push(a),a=e.charAt(q),ee.test(a)?q++:(a=n,Y===0&&X(Ce));r=[r,i],t=r}else q=t,t=n;return t}function pn(){let t,r,i,a,o,s;if(t=q,e.substr(q,2)===`/*`?(r=`/*`,q+=2):(r=n,Y===0&&X(we)),r!==n){for(i=[],a=q,o=q,Y++,e.substr(q,2)===`*/`?(s=`*/`,q+=2):(s=n,Y===0&&X(Te)),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=a,a=n):(e.length>q?(s=e.charAt(q),q++):(s=n,Y===0&&X(G)),s===n?(q=a,a=n):(o=[o,s],a=o));a!==n;)i.push(a),a=q,o=q,Y++,e.substr(q,2)===`*/`?(s=`*/`,q+=2):(s=n,Y===0&&X(Te)),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=a,a=n):(e.length>q?(s=e.charAt(q),q++):(s=n,Y===0&&X(G)),s===n?(q=a,a=n):(o=[o,s],a=o));e.substr(q,2)===`*/`?(a=`*/`,q+=2):(a=n,Y===0&&X(Te)),a===n?(q=t,t=n):(r=[r,i,a],t=r)}else q=t,t=n;return t}function mn(){let t,r;for(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee));r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee));return Y--,t}function hn(){let e,t,r,i;for(e=q,t=[],r=q,mn(),i=gn(),i===n?(q=r,r=n):(J=r,r=vt(i));r!==n;)t.push(r),r=q,mn(),i=gn(),i===n?(q=r,r=n):(J=r,r=vt(i));return r=mn(),J=e,e=yt(t),e}function gn(){let t,r,i,a,o,s,c;if(t=q,e.substr(q,2)===`//`?(r=`//`,q+=2):(r=n,Y===0&&X(K)),r!==n){for(i=q,a=[],o=e.charAt(q),ee.test(o)?q++:(o=n,Y===0&&X(Ce));o!==n;)a.push(o),o=e.charAt(q),ee.test(o)?q++:(o=n,Y===0&&X(Ce));i=e.substring(i,q),J=t,t=bt(i)}else q=t,t=n;if(t===n){if(t=q,e.substr(q,2)===`/*`?(r=`/*`,q+=2):(r=n,Y===0&&X(we)),r!==n){for(i=q,a=[],o=q,s=q,Y++,e.substr(q,2)===`*/`?(c=`*/`,q+=2):(c=n,Y===0&&X(Te)),Y--,c===n?s=void 0:(q=s,s=n),s===n?(q=o,o=n):(e.length>q?(c=e.charAt(q),q++):(c=n,Y===0&&X(G)),c===n?(q=o,o=n):(s=[s,c],o=s));o!==n;)a.push(o),o=q,s=q,Y++,e.substr(q,2)===`*/`?(c=`*/`,q+=2):(c=n,Y===0&&X(Te)),Y--,c===n?s=void 0:(q=s,s=n),s===n?(q=o,o=n):(e.length>q?(c=e.charAt(q),q++):(c=n,Y===0&&X(G)),c===n?(q=o,o=n):(s=[s,c],o=s));i=e.substring(i,q),e.substr(q,2)===`*/`?(a=`*/`,q+=2):(a=n,Y===0&&X(Te)),a===n?(q=t,t=n):(J=t,t=xt(i))}else q=t,t=n}return t}function _n(){let t,r;if(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn()),r!==n)for(;r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());else t=n;return Y--,t===n&&(r=n,Y===0&&X(De)),t}function Z(){let t,r;for(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());return Y--,t}Tt=a();let vn=Tt!==n&&q===e.length;function yn(){throw Tt!==n&&q<e.length&&X(jt()),It(wt,Ct<e.length?Dt(Ct):null,Ct<e.length?Pt(Ct,Ct+1):Pt(Ct,Ct))}if(t.peg$library)return{peg$result:Tt,peg$currPos:q,peg$FAILED:n,peg$maxFailExpected:wt,peg$maxFailPos:Ct,peg$success:vn,peg$throw:vn?void 0:yn};if(vn)return Tt;yn()}function ee(e){try{return k(e)}catch(e){if(e instanceof Error&&`location`in e){let t=e.location,n=SyntaxError(`${e.message} at ${t.start.line}:${t.start.column}`);throw n.location=t,n}throw e}}function A(e){return e.replace(/(\d)\s+(?=\d)/g,`$1`)}function j(e){return A(e.replace(/^"(.*)"$/,`$1`)).replace(/%$/,``).trim()}function M(e){let t=j(e?.trim()??``);if(!t)return;let n=Number(t);return Number.isFinite(n)?n:void 0}var N={"\\":`\\\\`,'"':`\\"`,"\n":`\\n`,"\r":`\\r`," ":`\\t`},P={"\\":`\\`,'"':`"`,n:`
|
|
311
|
-
`,r:`\r`,t:` `};function F(e){return`"${e.replace(/[\\"\n\r\t]/g,e=>N[e])}"`}function I(e){return e.replace(/\\(u[0-9a-fA-F]{4}|[\\"nrt])/g,(e,t)=>t[0]===`u`?String.fromCharCode(parseInt(t.slice(1),16)):P[t])}function L(e){let t=e.trim();return t.length>=2&&t.startsWith(`"`)&&t.endsWith(`"`)?I(t.slice(1,-1)):t}function R(e){let t=[],n=``,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(i&&o===`\\`&&a+1<e.length){n+=o+e[++a];continue}if(o===`"`)i=!i;else if(!i&&o===`(`)r++;else if(!i&&o===`)`)r=Math.max(0,r-1);else if(o===`,`&&!i&&r===0){t.push(n),n=``;continue}n+=o}return t.push(n),t}var z=`"((?:[^"\\\\]|\\\\.)*)"`,B=RegExp(`^${z}\\s*=\\s*(.+)$`),V=RegExp(`^${z}\\s*=\\s*"([^"]*)"$`),
|
|
312
|
-
`).map(e=>e.trim()).filter(Boolean),n=[],r=[],i=t[0]?.match(/^series\s*=\s*(.+)$/);if(i){let e=R(i[1].trim()),r=[];for(let e=1;e<t.length;e++){let n=t[e].match(V),i=n??t[e].match(B);i&&r.push({cells:R(i[2]),label:I(i[1]),legacy:n!==null})}let a=e.length>1||!r.some(e=>e.legacy)?e.map(L):L(e[0]).split(`,`).map(e=>e.trim()),o=a.map(()=>[]);for(let e of r){n.push(e.label);for(let t=0;t<a.length;t++)o[t].push(M(e.cells[t]))}let s=a.map((e,t)=>({name:e,values:o[t]}));return{labels:te(n),values:o[0]??[],series:s}}for(let e of t){let t=e.match(H);t&&(n.push(I(t[1])),r.push(M(t[2])))}return{labels:te(n),values:r}}var re=[{name:`Blueprint`,label:`Blueprint`,colors:[`#2563A0`,`#D4A63A`,`#C94044`,`#2D8659`,`#4B90CF`,`#163A65`]},{name:`BlueprintBold`,label:`Blueprint Bold`,colors:[`#2563A0`,`#DDF247`,`#C94044`,`#2D8659`,`#D4A63A`,`#163A65`]},{name:`JosefAlbers`,label:`Albers`,colors:[`#c00559`,`#de1f6c`,`#f3a20d`,`#f07a13`,`#de6716`]},{name:`Durorthod`,label:`Amber`,colors:[`#4b2b1f`,`#803c15`,`#c6782c`,`#ffa91d`,`#ebdf9a`]},{name:`X41`,label:`Berry`,colors:[`#411f6b`,`#783999`,`#be3979`,`#cc857d`,`#e2c6a6`]},{name:`Bright`,label:`Bright`,colors:[`#462255`,`#ff8811`,`#9dd9d2`,`#046e8f`,`#d44d5c`]},{name:`Cancri`,label:`Cancri`,colors:[`#343854`,`#8c384d`,`#c9002e`,`#d95e31`,`#f0c742`,`#e5dcd1`]},{name:`Ceres`,label:`Ceres`,colors:[`#2f3437`,`#4a5f71`,`#6f8ba0`,`#dbdddd`]},{name:`MarcChagall`,label:`Chagall`,colors:[`#3f6f76`,`#69b7ce`,`#c65840`,`#f4ce4b`,`#563d63`]},{name:`Pelewensis`,label:`Coral`,colors:[`#e2b000`,`#dde576`,`#2449a2`,`#809098`,`#303538`]},{name:`Deathmasks`,label:`Deathmasks`,colors:[`#926159`,`#94947b`,`#c7d2d8`,`#62b7c8`,`#43535c`,`#203648`]},{name:`Leucosternon`,label:`Deep Sea`,colors:[`#302e5b`,`#0e34b2`,`#207cf5`,`#9ec8ff`,`#e3e43a`]},{name:`Deelite`,label:`Deelite`,colors:[`#48448e`,`#8ccc58`,`#fc4d97`,`#bd2066`]},{name:`X10`,label:`Dusk`,colors:[`#383138`,`#5b4361`,`#846d86`,`#d8e0c0`,`#e3c58a`,`#a89e5e`]},{name:`Vitrixerand`,label:`Earth`,colors:[`#3d303e`,`#723f27`,`#9b6044`,`#b5804c`,`#facd9a`]},{name:`Egypt`,label:`Egypt`,colors:[`#dd5129`,`#0f7ba2`,`#43b284`,`#fab255`]},{name:`ElectronicNight`,label:`Electric Night`,colors:[`#cb54d6`,`#3e45c4`,`#3b3233`,`#362f78`,`#57b4ae`]},{name:`LutjanusSebae`,label:`Emperor`,colors:[`#dadedf`,`#a2bac5`,`#ce3d21`,`#992216`,`#59241e`]},{name:`Enara`,label:`Enara`,colors:[`#353535`,`#3d5983`,`#5a8a54`,`#cfb023`]},{name:`Camo871`,label:`Fiesta`,colors:[`#ffff14`,`#fea31d`,`#ce2d41`,`#3a3fa3`]},{name:`Folklore`,label:`Folklore`,colors:[`#343434`,`#5c5c5c`,`#bababa`,`#f8f8f8`]},{name:`Fritsch`,label:`Fritsch`,colors:[`#0f8d7b`,`#8942bd`,`#373333`,`#eadd17`]},{name:`AgSunset`,label:`Glow`,colors:[`#4b2991`,`#872ca2`,`#c0369d`,`#ea4f88`,`#fa7876`,`#f6a97a`,`#edd9a3`]},{name:`Harvey`,label:`Harvey`,colors:[`#c6d4d6`,`#274c4f`,`#a4432d`,`#b17c51`]},{name:`Heep`,label:`Heep`,colors:[`#466e9a`,`#e84d45`,`#35332f`,`#a1baac`]},{name:`Imperator`,label:`Imperator`,colors:[`#302e62`,`#0527b4`,`#555dfe`,`#e4e500`,`#b8980f`]},{name:`Klimt`,label:`Klimt`,colors:[`#df9ed4`,`#d52c50`,`#eacc62`,`#469d76`,`#39546e`,`#9936a3`]},{name:`KnickCity`,label:`Knick City`,colors:[`#213453`,`#ff6720`,`#707372`,`#c8c9c7`]},{name:`London`,label:`London`,colors:[`#bd241e`,`#e56b1e`,`#ffcd22`,`#223259`]},{name:`Lover`,label:`Lover`,colors:[`#b8396b`,`#ffd1d7`,`#e4dfb7`,`#76bae0`,`#b28f81`,`#54483e`]},{name:`Maya`,label:`Maya`,colors:[`#3d5a80`,`#98c1d9`,`#c7e1e2`,`#ee6c4d`,`#293241`]},{name:`X24`,label:`Mocha`,colors:[`#44302e`,`#7e5945`,`#bc927b`,`#e6dbd6`]},{name:`Camo873`,label:`Neon`,colors:[`#132f8a`,`#5a56c8`,`#fc7ead`,`#ffca3e`]},{name:`NetsCity`,label:`Nets City`,colors:[`#353535`,`#ffb81c`,`#da291c`,`#004c97`,`#418fde`]},{name:`Nodoubt`,label:`No Doubt`,colors:[`#385581`,`#6dbac6`,`#dac190`,`#c9052c`]},{name:`ClaesOldenburg`,label:`Oldenburg`,colors:[`#95b1c9`,`#263656`,`#698946`,`#f8d440`,`#c30014`]},{name:`Peacesells`,label:`Peace Sells`,colors:[`#9a5155`,`#483943`,`#ecc463`,`#a497b2`]},{name:`PabloPicasso`,label:`Picasso`,colors:[`#4e7989`,`#a9011b`,`#e4a826`,`#80944e`,`#dcd6b2`]},{name:`Bifasciatum`,label:`Reef`,colors:[`#36313d`,`#16407b`,`#2b7ff9`,`#9feaee`,`#6cbe50`]},{name:`SiameseDream`,label:`Siamese Dream`,colors:[`#e3dbd2`,`#413026`,`#a34d2c`,`#cd8e40`]},{name:`X115`,label:`Sienna`,colors:[`#203748`,`#633633`,`#8e442e`,`#e9b35e`,`#e4dda7`]},{name:`Sixers`,label:`Sixers`,colors:[`#888b8d`,`#e4d5d3`,`#003da5`,`#d50032`]},{name:`SolLeWitt`,label:`Sol LeWitt`,colors:[`#0a71b6`,`#f9c40a`,`#403131`,`#eb5432`,`#d6dedc`]},{name:`Sunset`,label:`Sunset`,colors:[`#41476b`,`#675478`,`#9e6374`,`#c67b6f`,`#de9b71`,`#efbc82`,`#eedba6`]},{name:`Sunset2`,label:`Sunset II`,colors:[`#254075`,`#61599d`,`#b46c79`,`#eb7f54`,`#ffb33d`]},{name:`Sunset3`,label:`Sunset III`,colors:[`#4f2355`,`#701c34`,`#a63228`,`#c7662a`,`#eba42b`]},{name:`Pal9`,label:`Tropical`,colors:[`#273b5b`,`#c1c243`,`#e73e26`,`#2e6657`,`#d7e4a3`,`#24a99c`]},{name:`Salvelinus`,label:`Trout`,colors:[`#e6452e`,`#e49a36`,`#f9dd4c`,`#5b4a4c`,`#303542`]},{name:`TheovanDoesburg`,label:`Van Doesburg`,colors:[`#bd748f`,`#3d578e`,`#bfab68`,`#dad7d0`,`#313433`]},{name:`Wizards`,label:`Wizards`,colors:[`#c8102e`,`#213453`,`#8d9093`,`#c8c9c7`]},{name:`FrancescoXanto`,label:`Xanto`,colors:[`#2c6aa5`,`#dcad00`,`#d8c67e`,`#c97f17`,`#578b55`]},{name:`Zeppelin`,label:`Zeppelin`,colors:[`#efdb15`,`#739c9c`,`#0d484c`,`#c71a08`]}],ie=Object.fromEntries(re.map(e=>[e.name,e.colors]));function ae(e){if(!e)return;let t=ie[e];return t?[...t]:void 0}function oe(){return re}var{min:se,max:ce}=Math,le=(e,t=0,n=1)=>se(ce(t,e),n),ue=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let t=0;t<=3;t++)t<3?((e[t]<0||e[t]>255)&&(e._clipped=!0),e[t]=le(e[t],0,255)):t===3&&(e[t]=le(e[t],0,1));return e},de={};for(let e of[`Boolean`,`Number`,`String`,`Function`,`Array`,`Date`,`RegExp`,`Undefined`,`Null`])de[`[object ${e}]`]=e.toLowerCase();function U(e){return de[Object.prototype.toString.call(e)]||`object`}var W=(e,t=null)=>e.length>=3?Array.prototype.slice.call(e):U(e[0])==`object`&&t?t.split(``).filter(t=>e[0][t]!==void 0).map(t=>e[0][t]):e[0].slice(0),fe=e=>{if(e.length<2)return null;let t=e.length-1;return U(e[t])==`string`?e[t].toLowerCase():null},{PI:pe,min:me,max:he}=Math,ge=e=>Math.round(e*100)/100,_e=e=>Math.round(e*100)/100,ve=pe*2,ye=pe/3,be=pe/180,xe=180/pe;function Se(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}var G={format:{},autodetect:[]},K=class{constructor(...e){let t=this;if(U(e[0])===`object`&&e[0].constructor&&e[0].constructor===this.constructor)return e[0];let n=fe(e),r=!1;if(!n){r=!0,G.sorted||=(G.autodetect=G.autodetect.sort((e,t)=>t.p-e.p),!0);for(let t of G.autodetect)if(n=t.test(...e),n)break}if(G.format[n])t._rgb=ue(G.format[n].apply(null,r?e:e.slice(0,-1)));else throw Error(`unknown format: `+e);t._rgb.length===3&&t._rgb.push(1)}toString(){return U(this.hex)==`function`?this.hex():`[${this._rgb.join(`,`)}]`}},Ce=`3.2.0`,we=(...e)=>new K(...e);we.version=Ce;var Te={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`#00ffff`,aquamarine:`#7fffd4`,azure:`#f0ffff`,beige:`#f5f5dc`,bisque:`#ffe4c4`,black:`#000000`,blanchedalmond:`#ffebcd`,blue:`#0000ff`,blueviolet:`#8a2be2`,brown:`#a52a2a`,burlywood:`#deb887`,cadetblue:`#5f9ea0`,chartreuse:`#7fff00`,chocolate:`#d2691e`,coral:`#ff7f50`,cornflowerblue:`#6495ed`,cornsilk:`#fff8dc`,crimson:`#dc143c`,cyan:`#00ffff`,darkblue:`#00008b`,darkcyan:`#008b8b`,darkgoldenrod:`#b8860b`,darkgray:`#a9a9a9`,darkgreen:`#006400`,darkgrey:`#a9a9a9`,darkkhaki:`#bdb76b`,darkmagenta:`#8b008b`,darkolivegreen:`#556b2f`,darkorange:`#ff8c00`,darkorchid:`#9932cc`,darkred:`#8b0000`,darksalmon:`#e9967a`,darkseagreen:`#8fbc8f`,darkslateblue:`#483d8b`,darkslategray:`#2f4f4f`,darkslategrey:`#2f4f4f`,darkturquoise:`#00ced1`,darkviolet:`#9400d3`,deeppink:`#ff1493`,deepskyblue:`#00bfff`,dimgray:`#696969`,dimgrey:`#696969`,dodgerblue:`#1e90ff`,firebrick:`#b22222`,floralwhite:`#fffaf0`,forestgreen:`#228b22`,fuchsia:`#ff00ff`,gainsboro:`#dcdcdc`,ghostwhite:`#f8f8ff`,gold:`#ffd700`,goldenrod:`#daa520`,gray:`#808080`,green:`#008000`,greenyellow:`#adff2f`,grey:`#808080`,honeydew:`#f0fff0`,hotpink:`#ff69b4`,indianred:`#cd5c5c`,indigo:`#4b0082`,ivory:`#fffff0`,khaki:`#f0e68c`,laserlemon:`#ffff54`,lavender:`#e6e6fa`,lavenderblush:`#fff0f5`,lawngreen:`#7cfc00`,lemonchiffon:`#fffacd`,lightblue:`#add8e6`,lightcoral:`#f08080`,lightcyan:`#e0ffff`,lightgoldenrod:`#fafad2`,lightgoldenrodyellow:`#fafad2`,lightgray:`#d3d3d3`,lightgreen:`#90ee90`,lightgrey:`#d3d3d3`,lightpink:`#ffb6c1`,lightsalmon:`#ffa07a`,lightseagreen:`#20b2aa`,lightskyblue:`#87cefa`,lightslategray:`#778899`,lightslategrey:`#778899`,lightsteelblue:`#b0c4de`,lightyellow:`#ffffe0`,lime:`#00ff00`,limegreen:`#32cd32`,linen:`#faf0e6`,magenta:`#ff00ff`,maroon:`#800000`,maroon2:`#7f0000`,maroon3:`#b03060`,mediumaquamarine:`#66cdaa`,mediumblue:`#0000cd`,mediumorchid:`#ba55d3`,mediumpurple:`#9370db`,mediumseagreen:`#3cb371`,mediumslateblue:`#7b68ee`,mediumspringgreen:`#00fa9a`,mediumturquoise:`#48d1cc`,mediumvioletred:`#c71585`,midnightblue:`#191970`,mintcream:`#f5fffa`,mistyrose:`#ffe4e1`,moccasin:`#ffe4b5`,navajowhite:`#ffdead`,navy:`#000080`,oldlace:`#fdf5e6`,olive:`#808000`,olivedrab:`#6b8e23`,orange:`#ffa500`,orangered:`#ff4500`,orchid:`#da70d6`,palegoldenrod:`#eee8aa`,palegreen:`#98fb98`,paleturquoise:`#afeeee`,palevioletred:`#db7093`,papayawhip:`#ffefd5`,peachpuff:`#ffdab9`,peru:`#cd853f`,pink:`#ffc0cb`,plum:`#dda0dd`,powderblue:`#b0e0e6`,purple:`#800080`,purple2:`#7f007f`,purple3:`#a020f0`,rebeccapurple:`#663399`,red:`#ff0000`,rosybrown:`#bc8f8f`,royalblue:`#4169e1`,saddlebrown:`#8b4513`,salmon:`#fa8072`,sandybrown:`#f4a460`,seagreen:`#2e8b57`,seashell:`#fff5ee`,sienna:`#a0522d`,silver:`#c0c0c0`,skyblue:`#87ceeb`,slateblue:`#6a5acd`,slategray:`#708090`,slategrey:`#708090`,snow:`#fffafa`,springgreen:`#00ff7f`,steelblue:`#4682b4`,tan:`#d2b48c`,teal:`#008080`,thistle:`#d8bfd8`,tomato:`#ff6347`,turquoise:`#40e0d0`,violet:`#ee82ee`,wheat:`#f5deb3`,white:`#ffffff`,whitesmoke:`#f5f5f5`,yellow:`#ffff00`,yellowgreen:`#9acd32`},Ee=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,De=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,Oe=e=>{if(e.match(Ee)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(``),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);let t=parseInt(e,16);return[t>>16,t>>8&255,t&255,1]}if(e.match(De)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(``),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return[t>>24&255,t>>16&255,t>>8&255,Math.round((t&255)/255*100)/100]}throw Error(`unknown hex color: ${e}`)},{round:ke}=Math,Ae=(...e)=>{let[t,n,r,i]=W(e,`rgba`),a=fe(e)||`auto`;i===void 0&&(i=1),a===`auto`&&(a=i<1?`rgba`:`rgb`),t=ke(t),n=ke(n),r=ke(r);let o=`000000`+(t<<16|n<<8|r).toString(16);o=o.substr(o.length-6);let s=`0`+ke(i*255).toString(16);switch(s=s.substr(s.length-2),a.toLowerCase()){case`rgba`:return`#${o}${s}`;case`argb`:return`#${s}${o}`;default:return`#${o}`}};K.prototype.name=function(){let e=Ae(this._rgb,`rgb`);for(let t of Object.keys(Te))if(Te[t]===e)return t.toLowerCase();return e},G.format.named=e=>{if(e=e.toLowerCase(),Te[e])return Oe(Te[e]);throw Error(`unknown color name: `+e)},G.autodetect.push({p:5,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&Te[e.toLowerCase()])return`named`}}),K.prototype.alpha=function(e,t=!1){return e!==void 0&&U(e)===`number`?t?(this._rgb[3]=e,this):new K([this._rgb[0],this._rgb[1],this._rgb[2],e],`rgb`):this._rgb[3]},K.prototype.clipped=function(){return this._rgb._clipped||!1};var je={Kn:18,labWhitePoint:`d65`,Xn:.95047,Yn:1,Zn:1.08883,t0:.137931034,t1:.206896552,t2:.12841855,t3:.008856452,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},Me=new Map([[`a`,[1.0985,.35585]],[`b`,[1.0985,.35585]],[`c`,[.98074,1.18232]],[`d50`,[.96422,.82521]],[`d55`,[.95682,.92149]],[`d65`,[.95047,1.08883]],[`e`,[1,1,1]],[`f2`,[.99186,.67393]],[`f7`,[.95041,1.08747]],[`f11`,[1.00962,.6435]],[`icc`,[.96422,.82521]]]);function Ne(e){let t=Me.get(String(e).toLowerCase());if(!t)throw Error(`unknown Lab illuminant `+e);je.labWhitePoint=e,je.Xn=t[0],je.Zn=t[1]}function Pe(){return je.labWhitePoint}var Fe=(...e)=>{e=W(e,`lab`);let[t,n,r]=e,[i,a,o]=Ie(t,n,r),[s,c,l]=Re(i,a,o);return[s,c,l,e.length>3?e[3]:1]},Ie=(e,t,n)=>{let{kE:r,kK:i,kKE:a,Xn:o,Yn:s,Zn:c}=je,l=(e+16)/116,u=.002*t+l,d=l-.005*n,f=u*u*u,p=d*d*d,m=f>r?f:(116*u-16)/i,h=e>a?((e+16)/116)**3:e/i,g=p>r?p:(116*d-16)/i;return[m*o,h*s,g*c]},Le=e=>{let t=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055)*t},Re=(e,t,n)=>{let{MtxAdaptMa:r,MtxAdaptMaI:i,MtxXYZ2RGB:a,RefWhiteRGB:o,Xn:s,Yn:c,Zn:l}=je,u=s*r.m00+c*r.m10+l*r.m20,d=s*r.m01+c*r.m11+l*r.m21,f=s*r.m02+c*r.m12+l*r.m22,p=o.X*r.m00+o.Y*r.m10+o.Z*r.m20,m=o.X*r.m01+o.Y*r.m11+o.Z*r.m21,h=o.X*r.m02+o.Y*r.m12+o.Z*r.m22,g=(e*r.m00+t*r.m10+n*r.m20)*(p/u),_=(e*r.m01+t*r.m11+n*r.m21)*(m/d),v=(e*r.m02+t*r.m12+n*r.m22)*(h/f),y=g*i.m00+_*i.m10+v*i.m20,b=g*i.m01+_*i.m11+v*i.m21,x=g*i.m02+_*i.m12+v*i.m22,S=Le(y*a.m00+b*a.m10+x*a.m20),C=Le(y*a.m01+b*a.m11+x*a.m21),w=Le(y*a.m02+b*a.m12+x*a.m22);return[S*255,C*255,w*255]},ze=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=He(t,n,r),[c,l,u]=Be(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function Be(e,t,n){let{Xn:r,Yn:i,Zn:a,kE:o,kK:s}=je,c=e/r,l=t/i,u=n/a,d=c>o?c**(1/3):(s*c+16)/116,f=l>o?l**(1/3):(s*l+16)/116,p=u>o?u**(1/3):(s*u+16)/116;return[116*f-16,500*(d-f),200*(f-p)]}function Ve(e){let t=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:((e+.055)/1.055)**2.4)*t}var He=(e,t,n)=>{e=Ve(e/255),t=Ve(t/255),n=Ve(n/255);let{MtxRGB2XYZ:r,MtxAdaptMa:i,MtxAdaptMaI:a,Xn:o,Yn:s,Zn:c,As:l,Bs:u,Cs:d}=je,f=e*r.m00+t*r.m10+n*r.m20,p=e*r.m01+t*r.m11+n*r.m21,m=e*r.m02+t*r.m12+n*r.m22,h=o*i.m00+s*i.m10+c*i.m20,g=o*i.m01+s*i.m11+c*i.m21,_=o*i.m02+s*i.m12+c*i.m22,v=f*i.m00+p*i.m10+m*i.m20,y=f*i.m01+p*i.m11+m*i.m21,b=f*i.m02+p*i.m12+m*i.m22;return v*=h/l,y*=g/u,b*=_/d,f=v*a.m00+y*a.m10+b*a.m20,p=v*a.m01+y*a.m11+b*a.m21,m=v*a.m02+y*a.m12+b*a.m22,[f,p,m]};K.prototype.lab=function(){return ze(this._rgb)},Object.assign(we,{lab:(...e)=>new K(...e,`lab`),getLabWhitePoint:Pe,setLabWhitePoint:Ne}),G.format.lab=Fe,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`lab`),U(e)===`array`&&e.length===3)return`lab`}}),K.prototype.darken=function(e=1){let t=this,n=t.lab();return n[0]-=je.Kn*e,new K(n,`lab`).alpha(t.alpha(),!0)},K.prototype.brighten=function(e=1){return this.darken(-e)},K.prototype.darker=K.prototype.darken,K.prototype.brighter=K.prototype.brighten,K.prototype.get=function(e){let[t,n]=e.split(`.`),r=this[t]();if(n){let e=t.indexOf(n)-(t.substr(0,2)===`ok`?2:0);if(e>-1)return r[e];throw Error(`unknown channel ${n} in mode ${t}`)}return r};var{pow:Ue}=Math,We=1e-7,Ge=20;K.prototype.luminance=function(e,t=`rgb`){if(e!==void 0&&U(e)===`number`){if(e===0)return new K([0,0,0,this._rgb[3]],`rgb`);if(e===1)return new K([255,255,255,this._rgb[3]],`rgb`);let n=this.luminance(),r=Ge,i=(n,a)=>{let o=n.interpolate(a,.5,t),s=o.luminance();return Math.abs(e-s)<We||!r--?o:s>e?i(n,o):i(o,a)};return new K([...(n>e?i(new K([0,0,0]),this):i(this,new K([255,255,255]))).rgb(),this._rgb[3]])}return Ke(...this._rgb.slice(0,3))};var Ke=(e,t,n)=>(e=qe(e),t=qe(t),n=qe(n),.2126*e+.7152*t+.0722*n),qe=e=>(e/=255,e<=.03928?e/12.92:Ue((e+.055)/1.055,2.4)),Je={},Ye=(e,t,n=.5,...r)=>{let i=r[0]||`lrgb`;if(!Je[i]&&!r.length&&(i=Object.keys(Je)[0]),!Je[i])throw Error(`interpolation mode ${i} is not defined`);return U(e)!==`object`&&(e=new K(e)),U(t)!==`object`&&(t=new K(t)),Je[i](e,t,n).alpha(e.alpha()+n*(t.alpha()-e.alpha()))};K.prototype.mix=K.prototype.interpolate=function(e,t=.5,...n){return Ye(this,e,t,...n)},K.prototype.premultiply=function(e=!1){let t=this._rgb,n=t[3];return e?(this._rgb=[t[0]*n,t[1]*n,t[2]*n,n],this):new K([t[0]*n,t[1]*n,t[2]*n,n],`rgb`)};var{sin:Xe,cos:Ze}=Math,Qe=(...e)=>{let[t,n,r]=W(e,`lch`);return isNaN(r)&&(r=0),r*=be,[t,Ze(r)*n,Xe(r)*n]},$e=(...e)=>{e=W(e,`lch`);let[t,n,r]=e,[i,a,o]=Qe(t,n,r),[s,c,l]=Fe(i,a,o);return[s,c,l,e.length>3?e[3]:1]},et=(...e)=>$e(...Se(W(e,`hcl`))),{sqrt:tt,atan2:nt,round:rt}=Math,it=(...e)=>{let[t,n,r]=W(e,`lab`),i=tt(n*n+r*r),a=(nt(r,n)*xe+360)%360;return rt(i*1e4)===0&&(a=NaN),[t,i,a]},at=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=ze(t,n,r),[c,l,u]=it(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};K.prototype.lch=function(){return at(this._rgb)},K.prototype.hcl=function(){return Se(at(this._rgb))},Object.assign(we,{lch:(...e)=>new K(...e,`lch`),hcl:(...e)=>new K(...e,`hcl`)}),G.format.lch=$e,G.format.hcl=et,[`lch`,`hcl`].forEach(e=>G.autodetect.push({p:2,test:(...t)=>{if(t=W(t,e),U(t)===`array`&&t.length===3)return e}})),K.prototype.saturate=function(e=1){let t=this,n=t.lch();return n[1]+=je.Kn*e,n[1]<0&&(n[1]=0),new K(n,`lch`).alpha(t.alpha(),!0)},K.prototype.desaturate=function(e=1){return this.saturate(-e)},K.prototype.set=function(e,t,n=!1){let[r,i]=e.split(`.`),a=this[r]();if(i){let e=r.indexOf(i)-(r.substr(0,2)===`ok`?2:0);if(e>-1){if(U(t)==`string`)switch(t.charAt(0)){case`+`:a[e]+=+t;break;case`-`:a[e]+=+t;break;case`*`:a[e]*=+t.substr(1);break;case`/`:a[e]/=+t.substr(1);break;default:a[e]=+t}else if(U(t)===`number`)a[e]=t;else throw Error(`unsupported value for Color.set`);let i=new K(a,r);return n?(this._rgb=i._rgb,this):i}throw Error(`unknown channel ${i} in mode ${r}`)}return a},K.prototype.tint=function(e=.5,...t){return Ye(this,`white`,e,...t)},K.prototype.shade=function(e=.5,...t){return Ye(this,`black`,e,...t)},Je.rgb=(e,t,n)=>{let r=e._rgb,i=t._rgb;return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`rgb`)};var{sqrt:ot,pow:st}=Math;Je.lrgb=(e,t,n)=>{let[r,i,a]=e._rgb,[o,s,c]=t._rgb;return new K(ot(st(r,2)*(1-n)+st(o,2)*n),ot(st(i,2)*(1-n)+st(s,2)*n),ot(st(a,2)*(1-n)+st(c,2)*n),`rgb`)},Je.lab=(e,t,n)=>{let r=e.lab(),i=t.lab();return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`lab`)};var ct=(e,t,n,r)=>{let i,a;r===`hsl`?(i=e.hsl(),a=t.hsl()):r===`hsv`?(i=e.hsv(),a=t.hsv()):r===`hcg`?(i=e.hcg(),a=t.hcg()):r===`hsi`?(i=e.hsi(),a=t.hsi()):r===`lch`||r===`hcl`?(r=`hcl`,i=e.hcl(),a=t.hcl()):r===`oklch`&&(i=e.oklch().reverse(),a=t.oklch().reverse());let o,s,c,l,u,d;(r.substr(0,1)===`h`||r===`oklch`)&&([o,c,u]=i,[s,l,d]=a);let f,p,m,h;return!isNaN(o)&&!isNaN(s)?(h=s>o&&s-o>180?s-(o+360):s<o&&o-s>180?s+360-o:s-o,p=o+n*h):isNaN(o)?isNaN(s)?p=NaN:(p=s,(u==1||u==0)&&r!=`hsv`&&(f=l)):(p=o,(d==1||d==0)&&r!=`hsv`&&(f=c)),f===void 0&&(f=c+n*(l-c)),m=u+n*(d-u),r===`oklch`?new K([m,f,p],r):new K([p,f,m],r)},lt=(e,t,n)=>ct(e,t,n,`lch`);Je.lch=lt,Je.hcl=lt;var ut=e=>{if(U(e)==`number`&&e>=0&&e<=16777215)return[e>>16,e>>8&255,e&255,1];throw Error(`unknown num color: `+e)},dt=(...e)=>{let[t,n,r]=W(e,`rgb`);return(t<<16)+(n<<8)+r};K.prototype.num=function(){return dt(this._rgb)},Object.assign(we,{num:(...e)=>new K(...e,`num`)}),G.format.num=ut,G.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&U(e[0])===`number`&&e[0]>=0&&e[0]<=16777215)return`num`}}),Je.num=(e,t,n)=>{let r=e.num();return new K(r+n*(t.num()-r),`num`)};var{floor:ft}=Math,pt=(...e)=>{e=W(e,`hcg`);let[t,n,r]=e,i,a,o;r*=255;let s=n*255;if(n===0)i=a=o=r;else{t===360&&(t=0),t>360&&(t-=360),t<0&&(t+=360),t/=60;let e=ft(t),c=t-e,l=r*(1-n),u=l+s*(1-c),d=l+s*c,f=l+s;switch(e){case 0:[i,a,o]=[f,d,l];break;case 1:[i,a,o]=[u,f,l];break;case 2:[i,a,o]=[l,f,d];break;case 3:[i,a,o]=[l,u,f];break;case 4:[i,a,o]=[d,l,f];break;case 5:[i,a,o]=[f,l,u]}}return[i,a,o,e.length>3?e[3]:1]},mt=(...e)=>{let[t,n,r]=W(e,`rgb`),i=me(t,n,r),a=he(t,n,r),o=a-i,s=o*100/255,c=i/(255-o)*100,l;return o===0?l=NaN:(t===a&&(l=(n-r)/o),n===a&&(l=2+(r-t)/o),r===a&&(l=4+(t-n)/o),l*=60,l<0&&(l+=360)),[l,s,c]};K.prototype.hcg=function(){return mt(this._rgb)},we.hcg=(...e)=>new K(...e,`hcg`),G.format.hcg=pt,G.autodetect.push({p:1,test:(...e)=>{if(e=W(e,`hcg`),U(e)===`array`&&e.length===3)return`hcg`}}),Je.hcg=(e,t,n)=>ct(e,t,n,`hcg`);var{cos:ht}=Math,gt=(...e)=>{e=W(e,`hsi`);let[t,n,r]=e,i,a,o;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),t>360&&(t-=360),t<0&&(t+=360),t/=360,t<1/3?(o=(1-n)/3,i=(1+n*ht(ve*t)/ht(ye-ve*t))/3,a=1-(o+i)):t<2/3?(t-=1/3,i=(1-n)/3,a=(1+n*ht(ve*t)/ht(ye-ve*t))/3,o=1-(i+a)):(t-=2/3,a=(1-n)/3,o=(1+n*ht(ve*t)/ht(ye-ve*t))/3,i=1-(a+o)),i=le(r*i*3),a=le(r*a*3),o=le(r*o*3),[i*255,a*255,o*255,e.length>3?e[3]:1]},{min:_t,sqrt:vt,acos:yt}=Math,bt=(...e)=>{let[t,n,r]=W(e,`rgb`);t/=255,n/=255,r/=255;let i,a=_t(t,n,r),o=(t+n+r)/3,s=o>0?1-a/o:0;return s===0?i=NaN:(i=(t-n+(t-r))/2,i/=vt((t-n)*(t-n)+(t-r)*(n-r)),i=yt(i),r>n&&(i=ve-i),i/=ve),[i*360,s,o]};K.prototype.hsi=function(){return bt(this._rgb)},we.hsi=(...e)=>new K(...e,`hsi`),G.format.hsi=gt,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsi`),U(e)===`array`&&e.length===3)return`hsi`}}),Je.hsi=(e,t,n)=>ct(e,t,n,`hsi`);var xt=(...e)=>{e=W(e,`hsl`);let[t,n,r]=e,i,a,o;if(n===0)i=a=o=r*255;else{let e=[0,0,0],s=[0,0,0],c=r<.5?r*(1+n):r+n-r*n,l=2*r-c,u=t/360;e[0]=u+1/3,e[1]=u,e[2]=u-1/3;for(let t=0;t<3;t++)e[t]<0&&(e[t]+=1),e[t]>1&&--e[t],6*e[t]<1?s[t]=l+(c-l)*6*e[t]:2*e[t]<1?s[t]=c:3*e[t]<2?s[t]=l+(c-l)*(2/3-e[t])*6:s[t]=l;[i,a,o]=[s[0]*255,s[1]*255,s[2]*255]}return e.length>3?[i,a,o,e[3]]:[i,a,o,1]},q=(...e)=>{e=W(e,`rgba`);let[t,n,r]=e;t/=255,n/=255,r/=255;let i=me(t,n,r),a=he(t,n,r),o=(a+i)/2,s,c;return a===i?(s=0,c=NaN):s=o<.5?(a-i)/(a+i):(a-i)/(2-a-i),t==a?c=(n-r)/(a-i):n==a?c=2+(r-t)/(a-i):r==a&&(c=4+(t-n)/(a-i)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,o,e[3]]:[c,s,o]};K.prototype.hsl=function(){return q(this._rgb)},we.hsl=(...e)=>new K(...e,`hsl`),G.format.hsl=xt,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsl`),U(e)===`array`&&e.length===3)return`hsl`}}),Je.hsl=(e,t,n)=>ct(e,t,n,`hsl`);var{floor:J}=Math,St=(...e)=>{e=W(e,`hsv`);let[t,n,r]=e,i,a,o;if(r*=255,n===0)i=a=o=r;else{t===360&&(t=0),t>360&&(t-=360),t<0&&(t+=360),t/=60;let e=J(t),s=t-e,c=r*(1-n),l=r*(1-n*s),u=r*(1-n*(1-s));switch(e){case 0:[i,a,o]=[r,u,c];break;case 1:[i,a,o]=[l,r,c];break;case 2:[i,a,o]=[c,r,u];break;case 3:[i,a,o]=[c,l,r];break;case 4:[i,a,o]=[u,c,r];break;case 5:[i,a,o]=[r,c,l]}}return[i,a,o,e.length>3?e[3]:1]},{min:Ct,max:wt}=Math,Y=(...e)=>{e=W(e,`rgb`);let[t,n,r]=e,i=Ct(t,n,r),a=wt(t,n,r),o=a-i,s,c,l;return l=a/255,a===0?(s=NaN,c=0):(c=o/a,t===a&&(s=(n-r)/o),n===a&&(s=2+(r-t)/o),r===a&&(s=4+(t-n)/o),s*=60,s<0&&(s+=360)),[s,c,l]};K.prototype.hsv=function(){return Y(this._rgb)},we.hsv=(...e)=>new K(...e,`hsv`),G.format.hsv=St,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsv`),U(e)===`array`&&e.length===3)return`hsv`}}),Je.hsv=(e,t,n)=>ct(e,t,n,`hsv`);function Tt(e,t){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(t[0])||(t=t.map(e=>[e]));let r=t[0].length,i=t[0].map((e,n)=>t.map(e=>e[n])),a=e.map(e=>i.map(t=>Array.isArray(e)?e.reduce((e,n,r)=>e+n*(t[r]||0),0):t.reduce((t,n)=>t+n*e,0)));return n===1&&(a=a[0]),r===1?a.map(e=>e[0]):a}var Et=(...e)=>{e=W(e,`lab`);let[t,n,r,...i]=e,[a,o,s]=Dt([t,n,r]),[c,l,u]=Re(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function Dt(e){return Tt([[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],Tt([[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],e).map(e=>e**3))}var Ot=(...e)=>{let[t,n,r,...i]=W(e,`rgb`);return[...kt(He(t,n,r)),...i.length>0&&i[0]<1?[i[0]]:[]]};function kt(e){return Tt([[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],Tt([[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],e).map(e=>Math.cbrt(e)))}K.prototype.oklab=function(){return Ot(this._rgb)},Object.assign(we,{oklab:(...e)=>new K(...e,`oklab`)}),G.format.oklab=Et,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`oklab`),U(e)===`array`&&e.length===3)return`oklab`}}),Je.oklab=(e,t,n)=>{let r=e.oklab(),i=t.oklab();return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`oklab`)},Je.oklch=(e,t,n)=>ct(e,t,n,`oklch`);var{pow:At,sqrt:jt,PI:Mt,cos:Nt,sin:Pt,atan2:X}=Math,Ft=(e,t=`lrgb`,n=null)=>{let r=e.length;n||=Array.from(Array(r)).map(()=>1);let i=r/n.reduce(function(e,t){return e+t});if(n.forEach((e,t)=>{n[t]*=i}),e=e.map(e=>new K(e)),t===`lrgb`)return It(e,n);let a=e.shift(),o=a.get(t),s=[],c=0,l=0;for(let e=0;e<o.length;e++)if(o[e]=(o[e]||0)*n[0],s.push(isNaN(o[e])?0:n[0]),t.charAt(e)===`h`&&!isNaN(o[e])){let t=o[e]/180*Mt;c+=Nt(t)*n[0],l+=Pt(t)*n[0]}let u=a.alpha()*n[0];e.forEach((e,r)=>{let i=e.get(t);u+=e.alpha()*n[r+1];for(let e=0;e<o.length;e++)if(!isNaN(i[e])){if(s[e]+=n[r+1],t.charAt(e)===`h`){let t=i[e]/180*Mt;c+=Nt(t)*n[r+1],l+=Pt(t)*n[r+1]}else o[e]+=i[e]*n[r+1]}});for(let e=0;e<o.length;e++)if(t.charAt(e)===`h`){let t=X(l/s[e],c/s[e])/Mt*180;for(;t<0;)t+=360;for(;t>=360;)t-=360;o[e]=t}else o[e]=o[e]/s[e];return u/=r,new K(o,t).alpha(u>.99999?1:u,!0)},It=(e,t)=>{let n=e.length,r=[0,0,0,0];for(let i=0;i<e.length;i++){let a=e[i],o=t[i]/n,s=a._rgb;r[0]+=At(s[0],2)*o,r[1]+=At(s[1],2)*o,r[2]+=At(s[2],2)*o,r[3]+=s[3]*o}return r[0]=jt(r[0]),r[1]=jt(r[1]),r[2]=jt(r[2]),r[3]>.9999999&&(r[3]=1),new K(ue(r))},{pow:Lt}=Math;function Rt(e){let t=`rgb`,n=we(`#ccc`),r=0,i=[0,1],a=[0,1],o=[],s=[0,0],c=!1,l=[],u=!1,d=0,f=1,p=!1,m={},h=!0,g=1,_=function(e){if(e||=[`#fff`,`#000`],e&&U(e)===`string`&&we.brewer&&we.brewer[e.toLowerCase()]&&(e=we.brewer[e.toLowerCase()]),U(e)===`array`){e.length===1&&(e=[e[0],e[0]]),e=e.slice(0);for(let t=0;t<e.length;t++)e[t]=we(e[t]);o.length=0;for(let t=0;t<e.length;t++)o.push(t/(e.length-1))}return S(),l=e},v=function(e){if(c!=null){let t=c.length-1,n=0;for(;n<t&&e>=c[n];)n++;return n-1}return 0},y=e=>e,b=e=>e,x=function(e,r){let i,a;if(r??=!1,isNaN(e)||e===null)return n;a=r?e:c&&c.length>2?v(e)/(c.length-2):f===d?1:(e-d)/(f-d),a=b(a),r||(a=y(a)),g!==1&&(a=Lt(a,g)),a=s[0]+a*(1-s[0]-s[1]),a=le(a,0,1);let u=Math.floor(a*1e4);if(h&&m[u])i=m[u];else{if(U(l)===`array`)for(let e=0;e<o.length;e++){let n=o[e];if(a<=n){i=l[e];break}if(a>=n&&e===o.length-1){i=l[e];break}if(a>n&&a<o[e+1]){a=(a-n)/(o[e+1]-n),i=we.interpolate(l[e],l[e+1],a,t);break}}else U(l)===`function`&&(i=l(a));h&&(m[u]=i)}return i};var S=()=>m={};_(e);let C=function(e){let t=we(x(e));return u&&t[u]?t[u]():t};return C.classes=function(e){if(e!=null){if(U(e)===`array`)c=e,i=[e[0],e[e.length-1]];else{let t=we.analyze(i);c=e===0?[t.min,t.max]:we.limits(t,`e`,e)}return C}return c},C.domain=function(e){if(!arguments.length)return a;a=e.slice(0),d=e[0],f=e[e.length-1],o=[];let t=l.length;if(e.length===t&&d!==f)for(let t of Array.from(e))o.push((t-d)/(f-d));else{for(let e=0;e<t;e++)o.push(e/(t-1));if(e.length>2){let t=e.map((t,n)=>n/(e.length-1)),n=e.map(e=>(e-d)/(f-d));n.every((e,n)=>t[n]===e)||(b=e=>{if(e<=0||e>=1)return e;let r=0;for(;e>=n[r+1];)r++;let i=(e-n[r])/(n[r+1]-n[r]);return t[r]+i*(t[r+1]-t[r])})}}return i=[d,f],C},C.mode=function(e){return arguments.length?(t=e,S(),C):t},C.range=function(e,t){return _(e,t),C},C.out=function(e){return u=e,C},C.spread=function(e){return arguments.length?(r=e,C):r},C.correctLightness=function(e){return e??=!0,p=e,S(),y=p?function(e){let t=x(0,!0).lab()[0],n=x(1,!0).lab()[0],r=t>n,i=x(e,!0).lab()[0],a=t+(n-t)*e,o=i-a,s=0,c=1,l=20;for(;Math.abs(o)>.01&&l-->0;)(function(){return r&&(o*=-1),o<0?(s=e,e+=(c-e)*.5):(c=e,e+=(s-e)*.5),i=x(e,!0).lab()[0],o=i-a})();return e}:e=>e,C},C.padding=function(e){return e==null?s:(U(e)===`number`&&(e=[e,e]),s=e,C)},C.colors=function(t,n){arguments.length<2&&(n=`hex`);let r=[];if(arguments.length===0)r=l.slice(0);else if(t===1)r=[C(.5)];else if(t>1){let e=i[0],n=i[1]-e;r=zt(0,t,!1).map(r=>C(e+r/(t-1)*n))}else{e=[];let t=[];if(c&&c.length>2)for(let e=1,n=c.length,r=1<=n;r?e<n:e>n;r?e++:e--)t.push((c[e-1]+c[e])*.5);else t=i;r=t.map(e=>C(e))}return we[n]&&(r=r.map(e=>e[n]())),r},C.cache=function(e){return e==null?h:(h=e,C)},C.gamma=function(e){return e==null?g:(g=e,C)},C.nodata=function(e){return e==null?n:(n=we(e),C)},C}function zt(e,t,n){let r=[],i=e<t,a=n?i?t+1:t-1:t;for(let t=e;i?t<a:t>a;i?t++:t--)r.push(t);return r}var Bt=function(e){let t=[1,1];for(let n=1;n<e;n++){let e=[1];for(let n=1;n<=t.length;n++)e[n]=(t[n]||0)+t[n-1];t=e}return t},Vt=function(e){let t,n,r,i;if(e=e.map(e=>new K(e)),e.length===2)[n,r]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>n[t]+e*(r[t]-n[t])),`lab`)};else if(e.length===3)[n,r,i]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>(1-e)*(1-e)*n[t]+2*(1-e)*e*r[t]+e*e*i[t]),`lab`)};else if(e.length===4){let a;[n,r,i,a]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>(1-e)*(1-e)*(1-e)*n[t]+3*(1-e)*(1-e)*e*r[t]+3*(1-e)*e*e*i[t]+e*e*e*a[t]),`lab`)}}else if(e.length>=5){let n,r,i;n=e.map(e=>e.lab()),i=e.length-1,r=Bt(i),t=function(e){let t=1-e;return new K([0,1,2].map(a=>n.reduce((n,o,s)=>n+r[s]*t**(i-s)*e**s*o[a],0)),`lab`)}}else throw RangeError(`No point in running bezier with only one color.`);return t},Ht=e=>{let t=Vt(e);return t.scale=()=>Rt(t),t},{round:Ut}=Math;K.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(Ut)},K.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((t,n)=>n<3?e===!1?t:Ut(t):t)},Object.assign(we,{rgb:(...e)=>new K(...e,`rgb`)}),G.format.rgb=(...e)=>{let t=W(e,`rgba`);return t[3]===void 0&&(t[3]=1),t},G.autodetect.push({p:3,test:(...e)=>{if(e=W(e,`rgba`),U(e)===`array`&&(e.length===3||e.length===4&&U(e[3])==`number`&&e[3]>=0&&e[3]<=1))return`rgb`}});var Wt=(e,t,n)=>{if(!Wt[n])throw Error(`unknown blend mode `+n);return Wt[n](e,t)},Gt=e=>(t,n)=>{let r=we(n).rgb(),i=we(t).rgb();return we.rgb(e(r,i))},Kt=e=>(t,n)=>{let r=[];return r[0]=e(t[0],n[0]),r[1]=e(t[1],n[1]),r[2]=e(t[2],n[2]),r};Wt.normal=Gt(Kt(e=>e)),Wt.multiply=Gt(Kt((e,t)=>e*t/255)),Wt.screen=Gt(Kt((e,t)=>255*(1-(1-e/255)*(1-t/255)))),Wt.overlay=Gt(Kt((e,t)=>t<128?2*e*t/255:255*(1-2*(1-e/255)*(1-t/255)))),Wt.darken=Gt(Kt((e,t)=>e>t?t:e)),Wt.lighten=Gt(Kt((e,t)=>e>t?e:t)),Wt.dodge=Gt(Kt((e,t)=>e===255?255:(e=t/255*255/(1-e/255),e>255?255:e))),Wt.burn=Gt(Kt((e,t)=>255*(1-(1-t/255)/(e/255))));var{pow:qt,sin:Jt,cos:Yt}=Math;function Xt(e=300,t=-1.5,n=1,r=1,i=[0,1]){let a=0,o;U(i)===`array`?o=i[1]-i[0]:(o=0,i=[i,i]);let s=function(s){let c=ve*((e+120)/360+t*s),l=qt(i[0]+o*s,r),u=(a===0?n:n[0]+s*a)*l*(1-l)/2,d=Yt(c),f=Jt(c),p=l+u*(-.14861*d+1.78277*f),m=l+u*(-.29227*d-.90649*f),h=l+1.97294*d*u;return we(ue([p*255,m*255,h*255,1]))};return s.start=function(t){return t==null?e:(e=t,s)},s.rotations=function(e){return e==null?t:(t=e,s)},s.gamma=function(e){return e==null?r:(r=e,s)},s.hue=function(e){return e==null?n:(n=e,U(n)===`array`?(a=n[1]-n[0],a===0&&(n=n[1])):a=0,s)},s.lightness=function(e){return e==null?i:(U(e)===`array`?(i=e,o=e[1]-e[0]):(i=[e,e],o=0),s)},s.scale=()=>we.scale(s),s.hue(n),s}var Zt=`0123456789abcdef`,{floor:Qt,random:$t}=Math,en=(e=$t)=>{let t=`#`;for(let n=0;n<6;n++)t+=Zt.charAt(Qt(e()*16));return new K(t,`hex`)},{log:tn,pow:nn,floor:rn,abs:an}=Math;function on(e,t=null){let n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return U(e)===`object`&&(e=Object.values(e)),e.forEach(e=>{t&&U(e)===`object`&&(e=e[t]),e!=null&&!isNaN(e)&&(n.values.push(e),n.sum+=e,e<n.min&&(n.min=e),e>n.max&&(n.max=e),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(e,t)=>sn(n,e,t),n}function sn(e,t=`equal`,n=7){U(e)==`array`&&(e=on(e));let{min:r,max:i}=e,a=e.values.sort((e,t)=>e-t);if(n===1)return[r,i];let o=[];if(t.substr(0,1)===`c`&&(o.push(r),o.push(i)),t.substr(0,1)===`e`){o.push(r);for(let e=1;e<n;e++)o.push(r+e/n*(i-r));o.push(i)}else if(t.substr(0,1)===`l`){if(r<=0)throw Error(`Logarithmic scales are only possible for values > 0`);let e=Math.LOG10E*tn(r),t=Math.LOG10E*tn(i);o.push(r);for(let r=1;r<n;r++)o.push(nn(10,e+r/n*(t-e)));o.push(i)}else if(t.substr(0,1)===`q`){o.push(r);for(let e=1;e<n;e++){let t=(a.length-1)*e/n,r=rn(t);if(r===t)o.push(a[r]);else{let e=t-r;o.push(a[r]*(1-e)+a[r+1]*e)}}o.push(i)}else if(t.substr(0,1)===`k`){let e,t=a.length,s=Array(t),c=Array(n),l=!0,u=0,d=null;d=[],d.push(r);for(let e=1;e<n;e++)d.push(r+e/n*(i-r));for(d.push(i);l;){for(let e=0;e<n;e++)c[e]=0;for(let e=0;e<t;e++){let t=a[e],r=Number.MAX_VALUE,i;for(let a=0;a<n;a++){let n=an(d[a]-t);n<r&&(r=n,i=a),c[i]++,s[e]=i}}let r=Array(n);for(let e=0;e<n;e++)r[e]=null;for(let n=0;n<t;n++)e=s[n],r[e]===null?r[e]=a[n]:r[e]+=a[n];for(let e=0;e<n;e++)r[e]*=1/c[e];l=!1;for(let e=0;e<n;e++)if(r[e]!==d[e]){l=!0;break}d=r,u++,u>200&&(l=!1)}let f={};for(let e=0;e<n;e++)f[e]=[];for(let n=0;n<t;n++)e=s[n],f[e].push(a[n]);let p=[];for(let e=0;e<n;e++)p.push(f[e][0]),p.push(f[e][f[e].length-1]);p=p.sort((e,t)=>e-t),o.push(p[0]);for(let e=1;e<p.length;e+=2){let t=p[e];!isNaN(t)&&o.indexOf(t)===-1&&o.push(t)}}return o}var cn=(e,t)=>{e=new K(e),t=new K(t);let n=e.luminance(),r=t.luminance();return n>r?(n+.05)/(r+.05):(r+.05)/(n+.05)},ln=.027,un=5e-4,dn=.1,fn=1.14,pn=.022,mn=1.414,hn=(e,t)=>{e=new K(e),t=new K(t),e.alpha()<1&&(e=Ye(t,e,e.alpha(),`rgb`));let n=gn(...e.rgb()),r=gn(...t.rgb()),i=n>=pn?n:n+(pn-n)**+mn,a=r>=pn?r:r+(pn-r)**+mn,o=a**.56-i**.57,s=a**.65-i**.62,c=Math.abs(a-i)<un?0:i<a?o*fn:s*fn;return(Math.abs(c)<dn?0:c>0?c-ln:c+ln)*100};function gn(e,t,n){return .2126729*(e/255)**2.4+.7151522*(t/255)**2.4+.072175*(n/255)**2.4}var{sqrt:_n,pow:Z,min:vn,max:yn,atan2:bn,abs:xn,cos:Sn,sin:Cn,exp:wn,PI:Tn}=Math;function En(e,t,n=1,r=1,i=1){var a=function(e){return 360*e/(2*Tn)},o=function(e){return 2*Tn*e/360};e=new K(e),t=new K(t);let[s,c,l]=Array.from(e.lab()),[u,d,f]=Array.from(t.lab()),p=(s+u)/2,m=(_n(Z(c,2)+Z(l,2))+_n(Z(d,2)+Z(f,2)))/2,h=.5*(1-_n(Z(m,7)/(Z(m,7)+Z(25,7)))),g=c*(1+h),_=d*(1+h),v=_n(Z(g,2)+Z(l,2)),y=_n(Z(_,2)+Z(f,2)),b=(v+y)/2,x=a(bn(l,g)),S=a(bn(f,_)),C=x>=0?x:x+360,w=S>=0?S:S+360,T=xn(C-w)>180?(C+w+360)/2:(C+w)/2,E=1-.17*Sn(o(T-30))+.24*Sn(o(2*T))+.32*Sn(o(3*T+6))-.2*Sn(o(4*T-63)),D=w-C;D=xn(D)<=180?D:w<=C?D+360:D-360,D=2*_n(v*y)*Cn(o(D)/2);let O=u-s,k=y-v,ee=1+.015*Z(p-50,2)/_n(20+Z(p-50,2)),A=1+.045*b,j=1+.015*b*E,M=30*wn(-Z((T-275)/25,2)),N=-(2*_n(Z(b,7)/(Z(b,7)+Z(25,7))))*Cn(2*o(M));return yn(0,vn(100,_n(Z(O/(n*ee),2)+Z(k/(r*A),2)+Z(D/(i*j),2)+N*(k/(r*A))*(D/(i*j)))))}function Dn(e,t,n=`lab`){e=new K(e),t=new K(t);let r=e.get(n),i=t.get(n),a=0;for(let e in r){let t=(r[e]||0)-(i[e]||0);a+=t*t}return Math.sqrt(a)}var On=(...e)=>{try{return new K(...e),!0}catch{return!1}},kn={cool(){return Rt([we.hsl(180,1,.9),we.hsl(250,.7,.4)])},hot(){return Rt([`#000`,`#f00`,`#ff0`,`#fff`],[0,.25,.75,1]).mode(`rgb`)}},An={OrRd:[`#fff7ec`,`#fee8c8`,`#fdd49e`,`#fdbb84`,`#fc8d59`,`#ef6548`,`#d7301f`,`#b30000`,`#7f0000`],PuBu:[`#fff7fb`,`#ece7f2`,`#d0d1e6`,`#a6bddb`,`#74a9cf`,`#3690c0`,`#0570b0`,`#045a8d`,`#023858`],BuPu:[`#f7fcfd`,`#e0ecf4`,`#bfd3e6`,`#9ebcda`,`#8c96c6`,`#8c6bb1`,`#88419d`,`#810f7c`,`#4d004b`],Oranges:[`#fff5eb`,`#fee6ce`,`#fdd0a2`,`#fdae6b`,`#fd8d3c`,`#f16913`,`#d94801`,`#a63603`,`#7f2704`],BuGn:[`#f7fcfd`,`#e5f5f9`,`#ccece6`,`#99d8c9`,`#66c2a4`,`#41ae76`,`#238b45`,`#006d2c`,`#00441b`],YlOrBr:[`#ffffe5`,`#fff7bc`,`#fee391`,`#fec44f`,`#fe9929`,`#ec7014`,`#cc4c02`,`#993404`,`#662506`],YlGn:[`#ffffe5`,`#f7fcb9`,`#d9f0a3`,`#addd8e`,`#78c679`,`#41ab5d`,`#238443`,`#006837`,`#004529`],Reds:[`#fff5f0`,`#fee0d2`,`#fcbba1`,`#fc9272`,`#fb6a4a`,`#ef3b2c`,`#cb181d`,`#a50f15`,`#67000d`],RdPu:[`#fff7f3`,`#fde0dd`,`#fcc5c0`,`#fa9fb5`,`#f768a1`,`#dd3497`,`#ae017e`,`#7a0177`,`#49006a`],Greens:[`#f7fcf5`,`#e5f5e0`,`#c7e9c0`,`#a1d99b`,`#74c476`,`#41ab5d`,`#238b45`,`#006d2c`,`#00441b`],YlGnBu:[`#ffffd9`,`#edf8b1`,`#c7e9b4`,`#7fcdbb`,`#41b6c4`,`#1d91c0`,`#225ea8`,`#253494`,`#081d58`],Purples:[`#fcfbfd`,`#efedf5`,`#dadaeb`,`#bcbddc`,`#9e9ac8`,`#807dba`,`#6a51a3`,`#54278f`,`#3f007d`],GnBu:[`#f7fcf0`,`#e0f3db`,`#ccebc5`,`#a8ddb5`,`#7bccc4`,`#4eb3d3`,`#2b8cbe`,`#0868ac`,`#084081`],Greys:[`#ffffff`,`#f0f0f0`,`#d9d9d9`,`#bdbdbd`,`#969696`,`#737373`,`#525252`,`#252525`,`#000000`],YlOrRd:[`#ffffcc`,`#ffeda0`,`#fed976`,`#feb24c`,`#fd8d3c`,`#fc4e2a`,`#e31a1c`,`#bd0026`,`#800026`],PuRd:[`#f7f4f9`,`#e7e1ef`,`#d4b9da`,`#c994c7`,`#df65b0`,`#e7298a`,`#ce1256`,`#980043`,`#67001f`],Blues:[`#f7fbff`,`#deebf7`,`#c6dbef`,`#9ecae1`,`#6baed6`,`#4292c6`,`#2171b5`,`#08519c`,`#08306b`],PuBuGn:[`#fff7fb`,`#ece2f0`,`#d0d1e6`,`#a6bddb`,`#67a9cf`,`#3690c0`,`#02818a`,`#016c59`,`#014636`],Viridis:[`#440154`,`#482777`,`#3f4a8a`,`#31678e`,`#26838f`,`#1f9d8a`,`#6cce5a`,`#b6de2b`,`#fee825`],Spectral:[`#9e0142`,`#d53e4f`,`#f46d43`,`#fdae61`,`#fee08b`,`#ffffbf`,`#e6f598`,`#abdda4`,`#66c2a5`,`#3288bd`,`#5e4fa2`],RdYlGn:[`#a50026`,`#d73027`,`#f46d43`,`#fdae61`,`#fee08b`,`#ffffbf`,`#d9ef8b`,`#a6d96a`,`#66bd63`,`#1a9850`,`#006837`],RdBu:[`#67001f`,`#b2182b`,`#d6604d`,`#f4a582`,`#fddbc7`,`#f7f7f7`,`#d1e5f0`,`#92c5de`,`#4393c3`,`#2166ac`,`#053061`],PiYG:[`#8e0152`,`#c51b7d`,`#de77ae`,`#f1b6da`,`#fde0ef`,`#f7f7f7`,`#e6f5d0`,`#b8e186`,`#7fbc41`,`#4d9221`,`#276419`],PRGn:[`#40004b`,`#762a83`,`#9970ab`,`#c2a5cf`,`#e7d4e8`,`#f7f7f7`,`#d9f0d3`,`#a6dba0`,`#5aae61`,`#1b7837`,`#00441b`],RdYlBu:[`#a50026`,`#d73027`,`#f46d43`,`#fdae61`,`#fee090`,`#ffffbf`,`#e0f3f8`,`#abd9e9`,`#74add1`,`#4575b4`,`#313695`],BrBG:[`#543005`,`#8c510a`,`#bf812d`,`#dfc27d`,`#f6e8c3`,`#f5f5f5`,`#c7eae5`,`#80cdc1`,`#35978f`,`#01665e`,`#003c30`],RdGy:[`#67001f`,`#b2182b`,`#d6604d`,`#f4a582`,`#fddbc7`,`#ffffff`,`#e0e0e0`,`#bababa`,`#878787`,`#4d4d4d`,`#1a1a1a`],PuOr:[`#7f3b08`,`#b35806`,`#e08214`,`#fdb863`,`#fee0b6`,`#f7f7f7`,`#d8daeb`,`#b2abd2`,`#8073ac`,`#542788`,`#2d004b`],Set2:[`#66c2a5`,`#fc8d62`,`#8da0cb`,`#e78ac3`,`#a6d854`,`#ffd92f`,`#e5c494`,`#b3b3b3`],Accent:[`#7fc97f`,`#beaed4`,`#fdc086`,`#ffff99`,`#386cb0`,`#f0027f`,`#bf5b17`,`#666666`],Set1:[`#e41a1c`,`#377eb8`,`#4daf4a`,`#984ea3`,`#ff7f00`,`#ffff33`,`#a65628`,`#f781bf`,`#999999`],Set3:[`#8dd3c7`,`#ffffb3`,`#bebada`,`#fb8072`,`#80b1d3`,`#fdb462`,`#b3de69`,`#fccde5`,`#d9d9d9`,`#bc80bd`,`#ccebc5`,`#ffed6f`],Dark2:[`#1b9e77`,`#d95f02`,`#7570b3`,`#e7298a`,`#66a61e`,`#e6ab02`,`#a6761d`,`#666666`],Paired:[`#a6cee3`,`#1f78b4`,`#b2df8a`,`#33a02c`,`#fb9a99`,`#e31a1c`,`#fdbf6f`,`#ff7f00`,`#cab2d6`,`#6a3d9a`,`#ffff99`,`#b15928`],Pastel2:[`#b3e2cd`,`#fdcdac`,`#cbd5e8`,`#f4cae4`,`#e6f5c9`,`#fff2ae`,`#f1e2cc`,`#cccccc`],Pastel1:[`#fbb4ae`,`#b3cde3`,`#ccebc5`,`#decbe4`,`#fed9a6`,`#ffffcc`,`#e5d8bd`,`#fddaec`,`#f2f2f2`]},jn=Object.keys(An),Mn=new Map(jn.map(e=>[e.toLowerCase(),e])),Nn=typeof Proxy==`function`?new Proxy(An,{get(e,t){let n=t.toLowerCase();if(Mn.has(n))return e[Mn.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(jn)}}):An,Pn=(...e)=>{e=W(e,`cmyk`);let[t,n,r,i]=e,a=e.length>4?e[4]:1;return i===1?[0,0,0,a]:[t>=1?0:255*(1-t)*(1-i),n>=1?0:255*(1-n)*(1-i),r>=1?0:255*(1-r)*(1-i),a]},{max:Fn}=Math,In=(...e)=>{let[t,n,r]=W(e,`rgb`);t/=255,n/=255,r/=255;let i=1-Fn(t,Fn(n,r)),a=i<1?1/(1-i):0;return[(1-t-i)*a,(1-n-i)*a,(1-r-i)*a,i]};K.prototype.cmyk=function(){return In(this._rgb)},Object.assign(we,{cmyk:(...e)=>new K(...e,`cmyk`)}),G.format.cmyk=Pn,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`cmyk`),U(e)===`array`&&e.length===4)return`cmyk`}});var Ln=(...e)=>{let t=W(e,`hsla`),n=fe(e)||`lsa`;return t[0]=ge(t[0]||0)+`deg`,t[1]=ge(t[1]*100)+`%`,t[2]=ge(t[2]*100)+`%`,n===`hsla`||t.length>3&&t[3]<1?(t[3]=`/ `+(t.length>3?t[3]:1),n=`hsla`):t.length=3,`${n.substr(0,3)}(${t.join(` `)})`},Rn=(...e)=>{let t=W(e,`lab`),n=fe(e)||`lab`;return t[0]=ge(t[0])+`%`,t[1]=ge(t[1]),t[2]=ge(t[2]),n===`laba`||t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`lab(${t.join(` `)})`},zn=(...e)=>{let t=W(e,`lch`),n=fe(e)||`lab`;return t[0]=ge(t[0])+`%`,t[1]=ge(t[1]),t[2]=isNaN(t[2])?`none`:ge(t[2])+`deg`,n===`lcha`||t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`lch(${t.join(` `)})`},Bn=(...e)=>{let t=W(e,`lab`);return t[0]=ge(t[0]*100)+`%`,t[1]=_e(t[1]),t[2]=_e(t[2]),t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`oklab(${t.join(` `)})`},Vn=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=Ot(t,n,r),[c,l,u]=it(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Hn=(...e)=>{let t=W(e,`lch`);return t[0]=ge(t[0]*100)+`%`,t[1]=_e(t[1]),t[2]=isNaN(t[2])?`none`:ge(t[2])+`deg`,t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`oklch(${t.join(` `)})`},{round:Un}=Math,Wn=(...e)=>{let t=W(e,`rgba`),n=fe(e)||`rgb`;if(n.substr(0,3)===`hsl`)return Ln(q(t),n);if(n.substr(0,3)===`lab`){let e=Pe();Ne(`d50`);let r=Rn(ze(t),n);return Ne(e),r}if(n.substr(0,3)===`lch`){let e=Pe();Ne(`d50`);let r=zn(at(t),n);return Ne(e),r}return n.substr(0,5)===`oklab`?Bn(Ot(t)):n.substr(0,5)===`oklch`?Hn(Vn(t)):(t[0]=Un(t[0]),t[1]=Un(t[1]),t[2]=Un(t[2]),(n===`rgba`||t.length>3&&t[3]<1)&&(t[3]=`/ `+(t.length>3?t[3]:1),n=`rgba`),`${n.substr(0,3)}(${t.slice(0,n===`rgb`?3:4).join(` `)})`)},Gn=(...e)=>{e=W(e,`lch`);let[t,n,r,...i]=e,[a,o,s]=Qe(t,n,r),[c,l,u]=Et(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Kn=`((?:-?\\d+)|(?:-?\\d+(?:\\.\\d+)?)%|none)`,qn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%?)|none)`,Jn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%)|none)`,Yn=`\\s*`,Xn=`\\s+`,Zn=`\\s*,\\s*`,Qn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:deg)?)|none)`,$n=`\\s*(?:\\/\\s*((?:[01]|[01]?\\.\\d+)|\\d+(?:\\.\\d+)?%))?`,er=RegExp(`^rgba?\\(`+Yn+[Kn,Kn,Kn].join(Xn)+$n+`\\)$`),tr=RegExp(`^rgb\\(`+Yn+[Kn,Kn,Kn].join(Zn)+Yn+`\\)$`),nr=RegExp(`^rgba\\(`+Yn+[Kn,Kn,Kn,qn].join(Zn)+Yn+`\\)$`),rr=RegExp(`^hsla?\\(`+Yn+[Qn,Jn,Jn].join(Xn)+$n+`\\)$`),ir=RegExp(`^hsl?\\(`+Yn+[Qn,Jn,Jn].join(Zn)+Yn+`\\)$`),ar=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,or=RegExp(`^lab\\(`+Yn+[qn,qn,qn].join(Xn)+$n+`\\)$`),sr=RegExp(`^lch\\(`+Yn+[qn,qn,Qn].join(Xn)+$n+`\\)$`),cr=RegExp(`^oklab\\(`+Yn+[qn,qn,qn].join(Xn)+$n+`\\)$`),lr=RegExp(`^oklch\\(`+Yn+[qn,qn,Qn].join(Xn)+$n+`\\)$`),{round:ur}=Math,dr=e=>e.map((e,t)=>t<=2?le(ur(e),0,255):e),fr=(e,t=0,n=100,r=!1)=>(typeof e==`string`&&e.endsWith(`%`)&&(e=parseFloat(e.substring(0,e.length-1))/100,e=r?t+(e+1)*.5*(n-t):t+e*(n-t)),+e),pr=(e,t)=>e===`none`?t:e,mr=e=>{if(e=e.toLowerCase().trim(),e===`transparent`)return[0,0,0,0];let t;if(G.format.named)try{return G.format.named(e)}catch{}if((t=e.match(er))||(t=e.match(tr))){let e=t.slice(1,4);for(let t=0;t<3;t++)e[t]=+fr(pr(e[t],0),0,255);e=dr(e);let n=t[4]===void 0?1:+fr(t[4],0,1);return e[3]=n,e}if(t=e.match(nr)){let e=t.slice(1,5);for(let t=0;t<4;t++)e[t]=+fr(e[t],0,255);return e}if((t=e.match(rr))||(t=e.match(ir))){let e=t.slice(1,4);e[0]=+pr(e[0].replace(`deg`,``),0),e[1]=fr(pr(e[1],0),0,100)*.01,e[2]=fr(pr(e[2],0),0,100)*.01;let n=dr(xt(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}if(t=e.match(ar)){let e=t.slice(1,4);e[1]*=.01,e[2]*=.01;let n=xt(e);for(let e=0;e<3;e++)n[e]=ur(n[e]);return n[3]=+t[4],n}if(t=e.match(or)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,100),e[1]=fr(pr(e[1],0),-125,125,!0),e[2]=fr(pr(e[2],0),-125,125,!0);let n=Pe();Ne(`d50`);let r=dr(Fe(e));return Ne(n),r[3]=t[4]===void 0?1:+fr(t[4],0,1),r}if(t=e.match(sr)){let e=t.slice(1,4);e[0]=fr(e[0],0,100),e[1]=fr(pr(e[1],0),0,150,!1),e[2]=+pr(e[2].replace(`deg`,``),0);let n=Pe();Ne(`d50`);let r=dr($e(e));return Ne(n),r[3]=t[4]===void 0?1:+fr(t[4],0,1),r}if(t=e.match(cr)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,1),e[1]=fr(pr(e[1],0),-.4,.4,!0),e[2]=fr(pr(e[2],0),-.4,.4,!0);let n=dr(Et(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}if(t=e.match(lr)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,1),e[1]=fr(pr(e[1],0),0,.4,!1),e[2]=+pr(e[2].replace(`deg`,``),0);let n=dr(Gn(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}};mr.test=e=>er.test(e)||rr.test(e)||or.test(e)||sr.test(e)||cr.test(e)||lr.test(e)||tr.test(e)||nr.test(e)||ir.test(e)||ar.test(e)||e===`transparent`,K.prototype.css=function(e){return Wn(this._rgb,e)},we.css=(...e)=>new K(...e,`css`),G.format.css=mr,G.autodetect.push({p:5,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&mr.test(e))return`css`}}),G.format.gl=(...e)=>{let t=W(e,`rgba`);return t[0]*=255,t[1]*=255,t[2]*=255,t},we.gl=(...e)=>new K(...e,`gl`),K.prototype.gl=function(){let e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},K.prototype.hex=function(e){return Ae(this._rgb,e)},we.hex=(...e)=>new K(...e,`hex`),G.format.hex=Oe,G.autodetect.push({p:4,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return`hex`}});var{log:hr}=Math,gr=e=>{let t=e/100,n,r,i;return t<66?(n=255,r=t<6?0:-155.25485562709179-.44596950469579133*(r=t-2)+104.49216199393888*hr(r),i=t<20?0:-254.76935184120902+.8274096064007395*(i=t-10)+115.67994401066147*hr(i)):(n=351.97690566805693+.114206453784165*(n=t-55)-40.25366309332127*hr(n),r=325.4494125711974+.07943456536662342*(r=t-50)-28.0852963507957*hr(r),i=255),[n,r,i,1]},{round:_r}=Math,vr=(...e)=>{let t=W(e,`rgb`),n=t[0],r=t[2],i=1e3,a=4e4,o;for(;a-i>.4;){o=(a+i)*.5;let e=gr(o);e[2]/e[0]>=r/n?a=o:i=o}return _r(o)};K.prototype.temp=K.prototype.kelvin=K.prototype.temperature=function(){return vr(this._rgb)};var yr=(...e)=>new K(...e,`temp`);Object.assign(we,{temp:yr,kelvin:yr,temperature:yr}),G.format.temp=G.format.kelvin=G.format.temperature=gr,K.prototype.oklch=function(){return Vn(this._rgb)},Object.assign(we,{oklch:(...e)=>new K(...e,`oklch`)}),G.format.oklch=Gn,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`oklch`),U(e)===`array`&&e.length===3)return`oklch`}}),Object.assign(we,{analyze:on,average:Ft,bezier:Ht,blend:Wt,brewer:Nn,Color:K,colors:Te,contrast:cn,contrastAPCA:hn,cubehelix:Xt,deltaE:En,distance:Dn,input:G,interpolate:Ye,limits:sn,mix:Ye,random:en,scale:Rt,scales:kn,valid:On});var br=we;function xr(e,t){if(!br.valid(e))return t;try{return br(e)}catch{return t}}function Sr(e){return br.valid(e)&&br.contrast(e,`#fff`)>=br.contrast(e,`#333`)?`#fff`:`#333`}var Cr=4.5;function wr(e){let t=e;for(;t&&t instanceof Element;){let e=getComputedStyle(t).backgroundColor;if(e&&e!==`rgba(0, 0, 0, 0)`&&e!==`transparent`)return e;t=t.parentElement}return`#fff`}function Tr(e,t=`#fff`){if(!br.valid(e))return br.valid(t)?Sr(t):`#333`;let n=br(e),r=xr(t,br(`#fff`));if(br.contrast(n,r)>=Cr)return n.hex();let i=r.luminance()>.5;for(let e=0;e<20&&(n=i?n.darken(.3):n.brighten(.3),!(br.contrast(n,r)>=Cr));e++);return n.hex()}var Er=12,Dr=.25,Or=20,kr=15;function Ar(e,t){if(e.length===0)return[];let n=xr(t,br(`#fff`)),r=br.valid(t)?t:`#fff`,i=n.luminance()>.5,a=e.map(e=>br.valid(e)?jr(br(e),r,i):br(`#000`));for(let e=1;e<a.length;e++)a[e]=Pr(a[e],a.slice(0,e),r,i);return a.map(e=>e.hex())}function jr(e,t,n){for(let r=0;r<Or;r++){if(br.contrast(e,t)>=Cr)return e;e=n?e.darken(Dr):e.brighten(Dr)}return e}function Mr(e,t){return t.reduce((t,n)=>Math.min(t,br.deltaE(e,n)),1/0)}function*Nr(e,t){for(let n of[t,!t]){let t=e;for(let e=0;e<Or;e++)t=n?t.darken(Dr):t.brighten(Dr),yield t}for(let t=kr;t<=180;t+=kr)yield e.set(`hsl.h`,`+${t}`),yield e.set(`hsl.h`,`-${t}`)}function Pr(e,t,n,r){let i=e,a=Mr(e,t);if(a>=Er)return e;for(let o of Nr(e,r)){if(br.contrast(o,n)<Cr)continue;let e=Mr(o,t);if(e>a&&(i=o,a=e),a>=Er)break}return i}var Fr=function(e){return e.BarVertical=`bar-vertical`,e.BarHorizontal=`bar-horizontal`,e.BarMulti=`bar-multi`,e.ColumnStacked=`column-stacked`,e.BarStacked=`bar-stacked`,e.BarSplit=`bar-split`,e.BarGrouped=`bar-grouped`,e.Line=`line`,e.LineMulti=`line-multi`,e.Area=`area`,e.AreaStacked=`area-stacked`,e.Donut=`donut`,e.Pie=`pie`,e.VerticalBar=`vertical-bar`,e.HorizontalBar=`horizontal-bar`,e}({}),Ir=function(e){return e.Left=`left`,e.Right=`right`,e}({}),Lr=function(e){return e.Linear=`linear`,e.Log=`log`,e}({}),Rr=function(e){return e.Solid=`solid`,e.Dashed=`dashed`,e.Dotted=`dotted`,e.None=`none`,e}({}),zr=function(e){return e.Auto=`auto`,e.Inside=`inside`,e.Outside=`outside`,e.Off=`off`,e}({}),Br=function(e){return e.Auto=`auto`,e.Horizontal=`horizontal`,e.Vertical=`vertical`,e}({}),Vr=function(e){return e.NW=`NW`,e.N=`N`,e.NE=`NE`,e.E=`E`,e.SE=`SE`,e.S=`S`,e.SW=`SW`,e.W=`W`,e.Center=`center`,e}({}),Hr=function(e){return e.Direct=`direct`,e.CurveLeft=`curve-left`,e.CurveRight=`curve-right`,e.Elbow=`elbow`,e}({}),Ur=function(e){return e.Solid=`solid`,e.Dotted=`dotted`,e.Dashed=`dashed`,e}({}),Wr=function(e){return e.Point=`point`,e.Range=`range`,e.Free=`free`,e}({}),Gr=function(e){return e.Start=`start`,e.Center=`center`,e.End=`end`,e}({}),Kr=function(e){return e.Vertical=`vertical`,e.Horizontal=`horizontal`,e}({}),qr=function(e){return e.Circle=`circle`,e.Square=`square`,e.Diamond=`diamond`,e.Triangle=`triangle`,e.TriangleDown=`triangleDown`,e.Cross=`cross`,e.Star=`star`,e}({}),Jr=function(e){return e.All=`all`,e.First=`first`,e.Last=`last`,e.FirstLast=`firstLast`,e}({}),Yr=function(e){return e.Filled=`filled`,e.Hollow=`hollow`,e}({}),Xr=function(e){return e.Ascending=`ascending`,e.Descending=`descending`,e.None=`none`,e}({}),Zr=function(e){return e.Total=`total`,e.WithinGroups=`within-groups`,e.None=`none`,e}({}),Qr=function(e){return e.Top=`top`,e.Bottom=`bottom`,e.Left=`left`,e.Right=`right`,e}({}),$r=function(e){return e.Start=`start`,e.Middle=`middle`,e.End=`end`,e}({}),ei=function(e){return e.Inside=`inside`,e.Outside=`outside`,e.Auto=`auto`,e}({}),ti=function(e){return e.Both=`both`,e.Vertical=`vertical`,e.Horizontal=`horizontal`,e}({}),ni=function(e){return e.Solid=`solid`,e.Dashed=`dashed`,e.Dotted=`dotted`,e}({}),ri=function(e){return e.Normal=`normal`,e.Percent=`percent`,e}({}),Q=function(e){return e.Colors=`colors`,e.Boolean=`boolean`,e.Select=`select`,e.Text=`text`,e.NumberFormat=`numberFormat`,e.DateFormat=`dateFormat`,e}({}),ii=function(e){return e.Off=``,e.Auto=`auto`,e.Outside=`outside`,e.Inside=`inside`,e}({}),ai=function(e){return e.Linear=`linear`,e.MonotoneX=`monotoneX`,e.Step=`step`,e.StepBefore=`stepBefore`,e.StepAfter=`stepAfter`,e.Basis=`basis`,e.Cardinal=`cardinal`,e.CatmullRom=`catmullRom`,e}({}),oi=function(e){return e.Sort=`sort`,e.Filter=`filter`,e.HideColumns=`hide-columns`,e.Transpose=`transpose`,e.Parse=`parse`,e.Rename=`rename`,e.GroupBy=`group-by`,e.Computed=`computed`,e}({}),si=function(e){return e.Equals=`equals`,e.NotEquals=`not-equals`,e.Contains=`contains`,e.GreaterThan=`greater-than`,e.LessThan=`less-than`,e}({}),ci=function(e){return e.Type=`type`,e.String=`string`,e.Numeric=`numeric`,e.Date=`date`,e}({}),li=s(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self).dayjs=r()})(e,(function(){"use strict";var e=1e3,t=6e4,n=36e5,r=`millisecond`,i=`second`,a=`minute`,o=`hour`,s=`day`,c=`week`,l=`month`,u=`quarter`,d=`year`,f=`date`,p=`Invalid Date`,m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:`en`,weekdays:`Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday`.split(`_`),months:`January_February_March_April_May_June_July_August_September_October_November_December`.split(`_`),ordinal:function(e){var t=[`th`,`st`,`nd`,`rd`],n=e%100;return`[`+e+(t[(n-20)%10]||t[n]||t[0])+`]`}},_=function(e,t,n){var r=String(e);return!r||r.length>=t?e:``+Array(t+1-r.length).join(n)+e},v={s:_,z:function(e){var t=-e.utcOffset(),n=Math.abs(t),r=Math.floor(n/60),i=n%60;return(t<=0?`+`:`-`)+_(r,2,`0`)+`:`+_(i,2,`0`)},m:function e(t,n){if(t.date()<n.date())return-e(n,t);var r=12*(n.year()-t.year())+(n.month()-t.month()),i=t.clone().add(r,l),a=n-i<0,o=t.clone().add(r+(a?-1:1),l);return+(-(r+(n-i)/(a?i-o:o-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:l,y:d,w:c,d:s,D:f,h:o,m:a,s:i,ms:r,Q:u}[e]||String(e||``).toLowerCase().replace(/s$/,``)},u:function(e){return e===void 0}},y=`en`,b={};b[y]=g;var x=`$isDayjsObject`,S=function(e){return e instanceof E||!(!e||!e[x])},C=function e(t,n,r){var i;if(!t)return y;if(typeof t==`string`){var a=t.toLowerCase();b[a]&&(i=a),n&&(b[a]=n,i=a);var o=t.split(`-`);if(!i&&o.length>1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!r&&i&&(y=i),i||!r&&y},w=function(e,t){if(S(e))return e.clone();var n=typeof t==`object`?t:{};return n.date=e,n.args=arguments,new E(n)},T=v;T.l=C,T.i=S,T.w=function(e,t){return w(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var E=function(){function g(e){this.$L=C(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[x]=!0}var _=g.prototype;return _.parse=function(e){this.$d=function(e){var t=e.date,n=e.utc;if(t===null)return new Date(NaN);if(T.u(t))return new Date;if(t instanceof Date)return new Date(t);if(typeof t==`string`&&!/Z$/i.test(t)){var r=t.match(m);if(r){var i=r[2]-1||0,a=(r[7]||`0`).substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,a)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,a)}}return new Date(t)}(e),this.init()},_.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},_.$utils=function(){return T},_.isValid=function(){return this.$d.toString()!==p},_.isSame=function(e,t){var n=w(e);return this.startOf(t)<=n&&n<=this.endOf(t)},_.isAfter=function(e,t){return w(e)<this.startOf(t)},_.isBefore=function(e,t){return this.endOf(t)<w(e)},_.$g=function(e,t,n){return T.u(e)?this[t]:this.set(n,e)},_.unix=function(){return Math.floor(this.valueOf()/1e3)},_.valueOf=function(){return this.$d.getTime()},_.startOf=function(e,t){var n=this,r=!!T.u(t)||t,u=T.p(e),p=function(e,t){var i=T.w(n.$u?Date.UTC(n.$y,t,e):new Date(n.$y,t,e),n);return r?i:i.endOf(s)},m=function(e,t){return T.w(n.toDate()[e].apply(n.toDate(`s`),(r?[0,0,0,0]:[23,59,59,999]).slice(t)),n)},h=this.$W,g=this.$M,_=this.$D,v=`set`+(this.$u?`UTC`:``);switch(u){case d:return r?p(1,0):p(31,11);case l:return r?p(1,g):p(0,g+1);case c:var y=this.$locale().weekStart||0,b=(h<y?h+7:h)-y;return p(r?_-b:_+(6-b),g);case s:case f:return m(v+`Hours`,0);case o:return m(v+`Minutes`,1);case a:return m(v+`Seconds`,2);case i:return m(v+`Milliseconds`,3);default:return this.clone()}},_.endOf=function(e){return this.startOf(e,!1)},_.$set=function(e,t){var n,c=T.p(e),u=`set`+(this.$u?`UTC`:``),p=(n={},n[s]=u+`Date`,n[f]=u+`Date`,n[l]=u+`Month`,n[d]=u+`FullYear`,n[o]=u+`Hours`,n[a]=u+`Minutes`,n[i]=u+`Seconds`,n[r]=u+`Milliseconds`,n)[c],m=c===s?this.$D+(t-this.$W):t;if(c===l||c===d){var h=this.clone().set(f,1);h.$d[p](m),h.init(),this.$d=h.set(f,Math.min(this.$D,h.daysInMonth())).$d}else p&&this.$d[p](m);return this.init(),this},_.set=function(e,t){return this.clone().$set(e,t)},_.get=function(e){return this[T.p(e)]()},_.add=function(r,u){var f,p=this;r=Number(r);var m=T.p(u),h=function(e){var t=w(p);return T.w(t.date(t.date()+Math.round(e*r)),p)};if(m===l)return this.set(l,this.$M+r);if(m===d)return this.set(d,this.$y+r);if(m===s)return h(1);if(m===c)return h(7);var g=(f={},f[a]=t,f[o]=n,f[i]=e,f)[m]||1,_=this.$d.getTime()+r*g;return T.w(_,this)},_.subtract=function(e,t){return this.add(-1*e,t)},_.format=function(e){var t=this,n=this.$locale();if(!this.isValid())return n.invalidDate||p;var r=e||`YYYY-MM-DDTHH:mm:ssZ`,i=T.z(this),a=this.$H,o=this.$m,s=this.$M,c=n.weekdays,l=n.months,u=n.meridiem,d=function(e,n,i,a){return e&&(e[n]||e(t,r))||i[n].slice(0,a)},f=function(e){return T.s(a%12||12,e,`0`)},m=u||function(e,t,n){var r=e<12?`AM`:`PM`;return n?r.toLowerCase():r};return r.replace(h,(function(e,r){return r||function(e){switch(e){case`YY`:return String(t.$y).slice(-2);case`YYYY`:return T.s(t.$y,4,`0`);case`M`:return s+1;case`MM`:return T.s(s+1,2,`0`);case`MMM`:return d(n.monthsShort,s,l,3);case`MMMM`:return d(l,s);case`D`:return t.$D;case`DD`:return T.s(t.$D,2,`0`);case`d`:return String(t.$W);case`dd`:return d(n.weekdaysMin,t.$W,c,2);case`ddd`:return d(n.weekdaysShort,t.$W,c,3);case`dddd`:return c[t.$W];case`H`:return String(a);case`HH`:return T.s(a,2,`0`);case`h`:return f(1);case`hh`:return f(2);case`a`:return m(a,o,!0);case`A`:return m(a,o,!1);case`m`:return String(o);case`mm`:return T.s(o,2,`0`);case`s`:return String(t.$s);case`ss`:return T.s(t.$s,2,`0`);case`SSS`:return T.s(t.$ms,3,`0`);case`Z`:return i}return null}(e)||i.replace(`:`,``)}))},_.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},_.diff=function(r,f,p){var m,h=this,g=T.p(f),_=w(r),v=(_.utcOffset()-this.utcOffset())*t,y=this-_,b=function(){return T.m(h,_)};switch(g){case d:m=b()/12;break;case l:m=b();break;case u:m=b()/3;break;case c:m=(y-v)/6048e5;break;case s:m=(y-v)/864e5;break;case o:m=y/n;break;case a:m=y/t;break;case i:m=y/e;break;default:m=y}return p?m:T.a(m)},_.daysInMonth=function(){return this.endOf(l).$D},_.$locale=function(){return b[this.$L]},_.locale=function(e,t){if(!e)return this.$L;var n=this.clone(),r=C(e,t,!0);return r&&(n.$L=r),n},_.clone=function(){return T.w(this.$d,this)},_.toDate=function(){return new Date(this.valueOf())},_.toJSON=function(){return this.isValid()?this.toISOString():null},_.toISOString=function(){return this.$d.toISOString()},_.toString=function(){return this.$d.toUTCString()},g}(),D=E.prototype;return w.prototype=D,[[`$ms`,r],[`$s`,i],[`$m`,a],[`$H`,o],[`$W`,s],[`$M`,l],[`$y`,d],[`$D`,f]].forEach((function(e){D[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),w.extend=function(e,t){return e.$i||=(e(t,E,w),!0),w},w.locale=C,w.isDayjs=S,w.unix=function(e){return w(1e3*e)},w.en=b[y],w.Ls=b,w.p={},w}))})),ui=s(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self).dayjs_plugin_customParseFormat=r()})(e,(function(){"use strict";var e={LTS:`h:mm:ss A`,LT:`h:mm A`,L:`MM/DD/YYYY`,LL:`MMMM D, YYYY`,LLL:`MMMM D, YYYY h:mm A`,LLLL:`dddd, MMMM D, YYYY h:mm A`},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,r=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,o={},s=function(e){return(e=+e)+(e>68?1900:2e3)},c=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||={}).offset=function(e){if(!e||e===`Z`)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return n===0?0:t[0]===`+`?-n:n}(e)}],u=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},d=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?`pm`:`PM`);return n},f={A:[a,function(e){this.afternoon=d(e,!1)}],a:[a,function(e){this.afternoon=d(e,!0)}],Q:[n,function(e){this.month=3*(e-1)+1}],S:[n,function(e){this.milliseconds=100*e}],SS:[r,function(e){this.milliseconds=10*e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[i,c(`seconds`)],ss:[i,c(`seconds`)],m:[i,c(`minutes`)],mm:[i,c(`minutes`)],H:[i,c(`hours`)],h:[i,c(`hours`)],HH:[i,c(`hours`)],hh:[i,c(`hours`)],D:[i,c(`day`)],DD:[r,c(`day`)],Do:[a,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,``)===e&&(this.day=r)}],w:[i,c(`week`)],ww:[r,c(`week`)],M:[i,c(`month`)],MM:[r,c(`month`)],MMM:[a,function(e){var t=u(`months`),n=(u(`monthsShort`)||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw Error();this.month=n%12||n}],MMMM:[a,function(e){var t=u(`months`).indexOf(e)+1;if(t<1)throw Error();this.month=t%12||t}],Y:[/[+-]?\d+/,c(`year`)],YY:[r,function(e){this.year=s(e)}],YYYY:[/\d{4}/,c(`year`)],Z:l,ZZ:l};function p(n){for(var r=n,i=o&&o.formats,a=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var a=r&&r.toUpperCase();return n||i[r]||e[r]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),s=a.length,c=0;c<s;c+=1){var l=a[c],u=f[l],d=u&&u[0],p=u&&u[1];a[c]=p?{regex:d,parser:p}:l.replace(/^\[|\]$/g,``)}return function(e){for(var t={},n=0,r=0;n<s;n+=1){var i=a[n];if(typeof i==`string`)r+=i.length;else{var o=i.regex,c=i.parser,l=e.slice(r),u=o.exec(l)[0];c.call(t,u),e=e.replace(u,``)}}return function(e){var t=e.afternoon;if(t!==void 0){var n=e.hours;t?n<12&&(e.hours+=12):n===12&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(s=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,a=e.args;this.$u=r;var s=a[1];if(typeof s==`string`){var c=!0===a[2],l=!0===a[3],u=c||l,d=a[2];l&&(d=a[2]),o=this.$locale(),!c&&d&&(o=n.Ls[d]),this.$d=function(e,t,n,r){try{if([`x`,`X`].indexOf(t)>-1)return new Date((t===`X`?1e3:1)*e);var i=p(t)(e),a=i.year,o=i.month,s=i.day,c=i.hours,l=i.minutes,u=i.seconds,d=i.milliseconds,f=i.zone,m=i.week,h=new Date,g=s||(a||o?1:h.getDate()),_=a||h.getFullYear(),v=0;a&&!o||(v=o>0?o-1:h.getMonth());var y,b=c||0,x=l||0,S=u||0,C=d||0;return f?new Date(Date.UTC(_,v,g,b,x,S,C+60*f.offset*1e3)):n?new Date(Date.UTC(_,v,g,b,x,S,C)):(y=new Date(_,v,g,b,x,S,C),m&&(y=r(y).week(m).toDate()),y)}catch{return new Date(``)}}(t,s,r,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date(``)),o={}}else if(s instanceof Array)for(var f=s.length,m=1;m<=f;m+=1){a[1]=s[m-1];var h=n.apply(this,a);if(h.isValid()){this.$d=h.$d,this.$L=h.$L,this.init();break}m===f&&(this.$d=new Date(``))}else i.call(this,e)}}}))})),di=l(li(),1),fi=l(ui(),1);di.default.extend(fi.default);var pi=[`YYYY-MM-DDTHH:mm:ss`,`YYYY-MM-DD HH:mm`,`YYYY-MM-DD`,`YYYY/MM/DD`,`MM/DD/YYYY`,`M/D/YYYY`,`M/D/YY`,`DD/MM/YYYY`,`DD.MM.YYYY`,`MMM D, YYYY`,`MMMM D, YYYY`,`MMM YYYY`,`MMMM YYYY`,`YYYY-MM`,`YYYY/MM`,`YYYY`];function mi(e){return e.includes(`HH`)||e.includes(`mm`)||e.includes(`ss`)?`datetime`:e.includes(`DD`)||/(?<![MA-Z])D(?!D)/.test(e)?`day`:e===`YYYY`?`year`:e.includes(`MM`)||e.includes(`MMM`)||e.includes(`MMMM`)||e.includes(`M/`)?`month`:`day`}function hi(e){return new Date(Date.UTC(e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()))}function gi(e){let t=e.trim();if(!t)return null;if(/^\d{4}$/.test(t)){let e=(0,di.default)(t,`YYYY`,!0);return e.isValid()?hi(e):null}for(let e of pi){if(e===`YYYY`)continue;let n=(0,di.default)(t,e,!0);if(n.isValid())return hi(n)}return null}function _i(e){let t=e.trim();if(!t)return;let n=gi(t);if(n)return n.getTime();let r=parseFloat(t);if(!isNaN(r))return r}function vi(e){let t=e.trim();if(!t)return;let n=Number(t);return isNaN(n)?gi(t)?.getTime():n}function yi(e){if(e.length===0)return null;let t=[],n=null,r=e[0].trim();if(!r)return null;if(/^\d{4}$/.test(r)){for(let n of e){let e=n.trim();if(!/^\d{4}$/.test(e))return null;let r=(0,di.default)(e,`YYYY`,!0);if(!r.isValid())return null;t.push(hi(r))}return{dates:t,granularity:`year`}}let i=[];for(let e of pi)e!==`YYYY`&&(0,di.default)(r,e,!0).isValid()&&i.push(e);if(i.length===0)return null;for(let r of i){let i=[],a=!0;for(let t of e){let e=(0,di.default)(t.trim(),r,!0);if(!e.isValid()){a=!1;break}i.push(hi(e))}if(a){n=r,t.push(...i);break}}return n?{dates:t,granularity:mi(n)}:null}function bi(e){return typeof e==`string`?vi(e):e}function xi(e,t){if(typeof e!=`string`)return e;let n=gi(e);return n?n.getTime():t?void 0:_i(e)}function Si(e,t){if(!t||t.min===void 0&&t.max===void 0)return e.map((e,t)=>t);let n=yi(e)!==null,r=xi(t.min,n),i=xi(t.max,n);if(r===void 0&&i===void 0)return e.map((e,t)=>t);let a=[];for(let t=0;t<e.length;t++){let n=_i(e[t]);if(n===void 0){a.push(t);continue}r!==void 0&&n<r||i!==void 0&&n>i||a.push(t)}return a}function Ci(e){let t=Number.isFinite(e)?Math.max(0,Math.min(100,e)):60;return t/(t+100)}function wi(e,t,n,r=!0){let i=r?0:1/0,a=r?0:-1/0,o=1/0,s=!0,c=!1;for(let t of e)Number.isFinite(t)&&(c=!0,t<i&&(i=t),t>a&&(a=t),t<=0?s=!1:t<o&&(o=t));n===Lr.Log&&c&&s&&(i=o),!c&&!r&&(i=0,a=0);let l=bi(t?.min)??i,u=bi(t?.max)??a;if(l>u&&([l,u]=[u,l]),l===u){if(l===0)u=1;else{let e=Math.abs(l)*.1;l-=e,u+=e}}return[l,u]}function Ti(e,t){if(typeof e.constant!=`function`)return null;let n=e.domain().map(Number).filter(Number.isFinite),r=Math.min(...n),i=Math.max(...n);if(!(i>0))return null;let a=r>0?Math.ceil(Math.log10(r)):0,o=Math.floor(Math.log10(i)),s=[];for(let e=a;e<=o;e++)s.push(10**e);if(s.length===0)return null;let c=Math.ceil(s.length/Math.max(2,t));return c>1?s.filter((e,t)=>t%c===0):s}function Ei(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function Di(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Oi(e){let t,n,r;e.length===2?(t=e===Ei||e===Di?e:ki,n=e,r=e):(t=Ei,n=(t,n)=>Ei(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<0?i=t+1:a=t}while(i<a)}return i}function a(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<=0?i=t+1:a=t}while(i<a)}return i}function o(e,t,n=0,a=e.length){let o=i(e,t,n,a-1);return o>n&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function ki(){return 0}function Ai(e){return e===null?NaN:+e}var ji=Oi(Ei),Mi=ji.right;ji.left;var Ni=Oi(Ai).center,Pi=class extends Map{constructor(e,t=Ri){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(Fi(this,e))}has(e){return super.has(Fi(this,e))}set(e,t){return super.set(Ii(this,e),t)}delete(e){return super.delete(Li(this,e))}};function Fi({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function Ii({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function Li({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function Ri(e){return typeof e==`object`&&e?e.valueOf():e}function zi(e){return e}function Bi(e,t,...n){return Vi(e,zi,t,n)}function Vi(e,t,n,r){return(function e(i,a){if(a>=r.length)return n(i);let o=new Pi,s=r[a++],c=-1;for(let e of i){let t=s(e,++c,i),n=o.get(t);n?n.push(e):o.set(t,[e])}for(let[t,n]of o)o.set(t,e(n,a));return t(o)})(e,0)}var Hi=Math.sqrt(50),Ui=Math.sqrt(10),Wi=Math.sqrt(2);function Gi(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=Hi?10:a>=Ui?5:a>=Wi?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/l<e&&++s,c/l>t&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*l<e&&++s,c*l>t&&--c),c<s&&.5<=n&&n<2?Gi(e,t,n*2):[s,c,l]}function Ki(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];let r=t<e,[i,a,o]=r?Gi(t,e,n):Gi(e,t,n);if(!(a>=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e<s;++e)c[e]=(a-e)/-o;else for(let e=0;e<s;++e)c[e]=(a-e)*o}else if(o<0)for(let e=0;e<s;++e)c[e]=(i+e)/-o;else for(let e=0;e<s;++e)c[e]=(i+e)*o;return c}function qi(e,t,n){return t=+t,e=+e,n=+n,Gi(e,t,n)[2]}function Ji(e,t,n){t=+t,e=+e,n=+n;let r=t<e,i=r?qi(t,e,n):qi(e,t,n);return(r?-1:1)*(i<0?1/-i:i)}function Yi(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n<t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function Xi(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n>t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function Zi(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function Qi(e,t){let n=0;if(t===void 0)for(let t of e)(t=+t)&&(n+=t);else{let r=-1;for(let i of e)(i=+t(i,++r,e))&&(n+=i)}return n}function $i(e){return e}var ea=1,ta=2,na=3,ra=4,ia=1e-6;function aa(e){return`translate(`+e+`,0)`}function oa(e){return`translate(0,`+e+`)`}function sa(e){return t=>+e(t)}function ca(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),n=>+e(n)+t}function la(){return!this.__axis}function ua(e,t){var n=[],r=null,i=null,a=6,o=6,s=3,c=typeof window<`u`&&window.devicePixelRatio>1?0:.5,l=e===ea||e===ra?-1:1,u=e===ra||e===ta?`x`:`y`,d=e===ea||e===na?aa:oa;function f(f){var p=r??(t.ticks?t.ticks.apply(t,n):t.domain()),m=i??(t.tickFormat?t.tickFormat.apply(t,n):$i),h=Math.max(a,0)+s,g=t.range(),_=+g[0]+c,v=+g[g.length-1]+c,y=(t.bandwidth?ca:sa)(t.copy(),c),b=f.selection?f.selection():f,x=b.selectAll(`.domain`).data([null]),S=b.selectAll(`.tick`).data(p,t).order(),C=S.exit(),w=S.enter().append(`g`).attr(`class`,`tick`),T=S.select(`line`),E=S.select(`text`);x=x.merge(x.enter().insert(`path`,`.tick`).attr(`class`,`domain`).attr(`stroke`,`currentColor`)),S=S.merge(w),T=T.merge(w.append(`line`).attr(`stroke`,`currentColor`).attr(u+`2`,l*a)),E=E.merge(w.append(`text`).attr(`fill`,`currentColor`).attr(u,l*h).attr(`dy`,e===ea?`0em`:e===na?`0.71em`:`0.32em`)),f!==b&&(x=x.transition(f),S=S.transition(f),T=T.transition(f),E=E.transition(f),C=C.transition(f).attr(`opacity`,ia).attr(`transform`,function(e){return isFinite(e=y(e))?d(e+c):this.getAttribute(`transform`)}),w.attr(`opacity`,ia).attr(`transform`,function(e){var t=this.parentNode.__axis;return d((t&&isFinite(t=t(e))?t:y(e))+c)})),C.remove(),x.attr(`d`,e===ra||e===ta?o?`M`+l*o+`,`+_+`H`+c+`V`+v+`H`+l*o:`M`+c+`,`+_+`V`+v:o?`M`+_+`,`+l*o+`V`+c+`H`+v+`V`+l*o:`M`+_+`,`+c+`H`+v),S.attr(`opacity`,1).attr(`transform`,function(e){return d(y(e)+c)}),T.attr(u+`2`,l*a),E.attr(u,l*h).text(m),b.filter(la).attr(`fill`,`none`).attr(`font-size`,10).attr(`font-family`,`sans-serif`).attr(`text-anchor`,e===ta?`start`:e===ra?`end`:`middle`),b.each(function(){this.__axis=y})}return f.scale=function(e){return arguments.length?(t=e,f):t},f.ticks=function(){return n=Array.from(arguments),f},f.tickArguments=function(e){return arguments.length?(n=e==null?[]:Array.from(e),f):n.slice()},f.tickValues=function(e){return arguments.length?(r=e==null?null:Array.from(e),f):r&&r.slice()},f.tickFormat=function(e){return arguments.length?(i=e,f):i},f.tickSize=function(e){return arguments.length?(a=o=+e,f):a},f.tickSizeInner=function(e){return arguments.length?(a=+e,f):a},f.tickSizeOuter=function(e){return arguments.length?(o=+e,f):o},f.tickPadding=function(e){return arguments.length?(s=+e,f):s},f.offset=function(e){return arguments.length?(c=+e,f):c},f}function da(e){return ua(ea,e)}function fa(e){return ua(ta,e)}function pa(e){return ua(na,e)}function ma(e){return ua(ra,e)}var ha={value:()=>{}};function ga(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new _a(n)}function _a(e){this._=e}function va(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}_a.prototype=ga.prototype={constructor:_a,on:function(e,t){var n=this._,r=va(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=ya(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=ba(n[i],e.name,t);else if(t==null)for(i in n)n[i]=ba(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new _a(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function ya(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function ba(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=ha,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var xa={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function Sa(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),xa.hasOwnProperty(t)?{space:xa[t],local:e}:e}function Ca(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function wa(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ta(e){var t=Sa(e);return(t.local?wa:Ca)(t)}function Ea(){}function Da(e){return e==null?Ea:function(){return this.querySelector(e)}}function Oa(e){typeof e!=`function`&&(e=Da(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new _s(r,this._parents)}function ka(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Aa(){return[]}function ja(e){return e==null?Aa:function(){return this.querySelectorAll(e)}}function Ma(e){return function(){return ka(e.apply(this,arguments))}}function Na(e){e=typeof e==`function`?Ma(e):ja(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new _s(r,i)}function Pa(e){return function(){return this.matches(e)}}function Fa(e){return function(t){return t.matches(e)}}var Ia=Array.prototype.find;function La(e){return function(){return Ia.call(this.children,e)}}function Ra(){return this.firstElementChild}function za(e){return this.select(e==null?Ra:La(typeof e==`function`?e:Fa(e)))}var Ba=Array.prototype.filter;function Va(){return Array.from(this.children)}function Ha(e){return function(){return Ba.call(this.children,e)}}function Ua(e){return this.selectAll(e==null?Va:Ha(typeof e==`function`?e:Fa(e)))}function Wa(e){typeof e!=`function`&&(e=Pa(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new _s(r,this._parents)}function Ga(e){return Array(e.length)}function Ka(){return new _s(this._enter||this._groups.map(Ga),this._parents)}function qa(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}qa.prototype={constructor:qa,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Ja(e){return function(){return e}}function Ya(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new qa(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function Xa(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new qa(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function Za(e){return e.__data__}function Qa(e,t){if(!arguments.length)return Array.from(this,Za);var n=t?Xa:Ya,r=this._parents,i=this._groups;typeof e!=`function`&&(e=Ja(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=$a(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new _s(o,r),o._enter=s,o._exit=c,o}function $a(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function eo(){return new _s(this._exit||this._groups.map(Ga),this._parents)}function to(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function no(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new _s(s,this._parents)}function ro(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function io(e){e||=ao;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new _s(i,this._parents).order()}function ao(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function oo(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function so(){return Array.from(this)}function co(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function lo(){let e=0;for(let t of this)++e;return e}function uo(){return!this.node()}function fo(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function po(e){return function(){this.removeAttribute(e)}}function mo(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ho(e,t){return function(){this.setAttribute(e,t)}}function go(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function _o(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function vo(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function yo(e,t){var n=Sa(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?mo:po:typeof t==`function`?n.local?vo:_o:n.local?go:ho)(n,t))}function bo(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function xo(e){return function(){this.style.removeProperty(e)}}function So(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Co(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function wo(e,t,n){return arguments.length>1?this.each((t==null?xo:typeof t==`function`?Co:So)(e,t,n??``)):To(this.node(),e)}function To(e,t){return e.style.getPropertyValue(t)||bo(e).getComputedStyle(e,null).getPropertyValue(t)}function Eo(e){return function(){delete this[e]}}function Do(e,t){return function(){this[e]=t}}function Oo(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function ko(e,t){return arguments.length>1?this.each((t==null?Eo:typeof t==`function`?Oo:Do)(e,t)):this.node()[e]}function Ao(e){return e.trim().split(/^|\s+/)}function jo(e){return e.classList||new Mo(e)}function Mo(e){this._node=e,this._names=Ao(e.getAttribute(`class`)||``)}Mo.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function No(e,t){for(var n=jo(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function Po(e,t){for(var n=jo(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Fo(e){return function(){No(this,e)}}function Io(e){return function(){Po(this,e)}}function Lo(e,t){return function(){(t.apply(this,arguments)?No:Po)(this,e)}}function Ro(e,t){var n=Ao(e+``);if(arguments.length<2){for(var r=jo(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?Lo:t?Fo:Io)(n,t))}function zo(){this.textContent=``}function Bo(e){return function(){this.textContent=e}}function Vo(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function Ho(e){return arguments.length?this.each(e==null?zo:(typeof e==`function`?Vo:Bo)(e)):this.node().textContent}function Uo(){this.innerHTML=``}function Wo(e){return function(){this.innerHTML=e}}function Go(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function Ko(e){return arguments.length?this.each(e==null?Uo:(typeof e==`function`?Go:Wo)(e)):this.node().innerHTML}function qo(){this.nextSibling&&this.parentNode.appendChild(this)}function Jo(){return this.each(qo)}function Yo(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Xo(){return this.each(Yo)}function Zo(e){var t=typeof e==`function`?e:Ta(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Qo(){return null}function $o(e,t){var n=typeof e==`function`?e:Ta(e),r=t==null?Qo:typeof t==`function`?t:Da(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function es(){var e=this.parentNode;e&&e.removeChild(this)}function ts(){return this.each(es)}function ns(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function rs(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function is(e){return this.select(e?rs:ns)}function as(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function os(e){return function(t){e.call(this,t,this.__data__)}}function ss(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function cs(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function ls(e,t,n){return function(){var r=this.__on,i,a=os(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function us(e,t,n){var r=ss(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?ls:cs,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function ds(e,t,n){var r=bo(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function fs(e,t){return function(){return ds(this,e,t)}}function ps(e,t){return function(){return ds(this,e,t.apply(this,arguments))}}function ms(e,t){return this.each((typeof t==`function`?ps:fs)(e,t))}function*hs(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var gs=[null];function _s(e,t){this._groups=e,this._parents=t}function vs(){return new _s([[document.documentElement]],gs)}function ys(){return this}_s.prototype=vs.prototype={constructor:_s,select:Oa,selectAll:Na,selectChild:za,selectChildren:Ua,filter:Wa,data:Qa,enter:Ka,exit:eo,join:to,merge:no,selection:ys,order:ro,sort:io,call:oo,nodes:so,node:co,size:lo,empty:uo,each:fo,attr:yo,style:wo,property:ko,classed:Ro,text:Ho,html:Ko,raise:Jo,lower:Xo,append:Zo,insert:$o,remove:ts,clone:is,datum:as,on:us,dispatch:ms,[Symbol.iterator]:hs};function $(e){return typeof e==`string`?new _s([[document.querySelector(e)]],[document.documentElement]):new _s([[e]],gs)}function bs(e){let t;for(;t=e.sourceEvent;)e=t;return e}function xs(e,t){if(e=bs(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}function Ss(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Cs(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function ws(){}var Ts=.7,Es=1/Ts,Ds=`\\s*([+-]?\\d+)\\s*`,Os=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,ks=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,As=/^#([0-9a-f]{3,8})$/,js=RegExp(`^rgb\\(${Ds},${Ds},${Ds}\\)$`),Ms=RegExp(`^rgb\\(${ks},${ks},${ks}\\)$`),Ns=RegExp(`^rgba\\(${Ds},${Ds},${Ds},${Os}\\)$`),Ps=RegExp(`^rgba\\(${ks},${ks},${ks},${Os}\\)$`),Fs=RegExp(`^hsl\\(${Os},${ks},${ks}\\)$`),Is=RegExp(`^hsla\\(${Os},${ks},${ks},${Os}\\)$`),Ls={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};Ss(ws,Hs,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Rs,formatHex:Rs,formatHex8:zs,formatHsl:Bs,formatRgb:Vs,toString:Vs});function Rs(){return this.rgb().formatHex()}function zs(){return this.rgb().formatHex8()}function Bs(){return tc(this).formatHsl()}function Vs(){return this.rgb().formatRgb()}function Hs(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=As.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Us(t):n===3?new qs(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ws(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ws(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=js.exec(e))?new qs(t[1],t[2],t[3],1):(t=Ms.exec(e))?new qs(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Ns.exec(e))?Ws(t[1],t[2],t[3],t[4]):(t=Ps.exec(e))?Ws(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Fs.exec(e))?ec(t[1],t[2]/100,t[3]/100,1):(t=Is.exec(e))?ec(t[1],t[2]/100,t[3]/100,t[4]):Ls.hasOwnProperty(e)?Us(Ls[e]):e===`transparent`?new qs(NaN,NaN,NaN,0):null}function Us(e){return new qs(e>>16&255,e>>8&255,e&255,1)}function Ws(e,t,n,r){return r<=0&&(e=t=n=NaN),new qs(e,t,n,r)}function Gs(e){return e instanceof ws||(e=Hs(e)),e?(e=e.rgb(),new qs(e.r,e.g,e.b,e.opacity)):new qs}function Ks(e,t,n,r){return arguments.length===1?Gs(e):new qs(e,t,n,r??1)}function qs(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Ss(qs,Ks,Cs(ws,{brighter(e){return e=e==null?Es:Es**+e,new qs(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ts:Ts**+e,new qs(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new qs(Qs(this.r),Qs(this.g),Qs(this.b),Zs(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:Js,formatHex:Js,formatHex8:Ys,formatRgb:Xs,toString:Xs}));function Js(){return`#${$s(this.r)}${$s(this.g)}${$s(this.b)}`}function Ys(){return`#${$s(this.r)}${$s(this.g)}${$s(this.b)}${$s((isNaN(this.opacity)?1:this.opacity)*255)}`}function Xs(){let e=Zs(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Qs(this.r)}, ${Qs(this.g)}, ${Qs(this.b)}${e===1?`)`:`, ${e})`}`}function Zs(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Qs(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function $s(e){return e=Qs(e),(e<16?`0`:``)+e.toString(16)}function ec(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new rc(e,t,n,r)}function tc(e){if(e instanceof rc)return new rc(e.h,e.s,e.l,e.opacity);if(e instanceof ws||(e=Hs(e)),!e)return new rc;if(e instanceof rc)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new rc(o,s,c,e.opacity)}function nc(e,t,n,r){return arguments.length===1?tc(e):new rc(e,t,n,r??1)}function rc(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Ss(rc,nc,Cs(ws,{brighter(e){return e=e==null?Es:Es**+e,new rc(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ts:Ts**+e,new rc(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,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new qs(oc(e>=240?e-240:e+120,i,r),oc(e,i,r),oc(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new rc(ic(this.h),ac(this.s),ac(this.l),Zs(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Zs(this.opacity);return`${e===1?`hsl(`:`hsla(`}${ic(this.h)}, ${ac(this.s)*100}%, ${ac(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function ic(e){return e=(e||0)%360,e<0?e+360:e}function ac(e){return Math.max(0,Math.min(1,e||0))}function oc(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var sc=e=>()=>e;function cc(e,t){return function(n){return e+n*t}}function lc(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function uc(e){return(e=+e)==1?dc:function(t,n){return n-t?lc(t,n,e):sc(isNaN(t)?n:t)}}function dc(e,t){var n=t-e;return n?cc(e,n):sc(isNaN(e)?t:e)}var fc=(function e(t){var n=uc(t);function r(e,t){var r=n((e=Ks(e)).r,(t=Ks(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=dc(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function pc(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function mc(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function hc(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o;for(o=0;o<r;++o)i[o]=wc(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function gc(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function _c(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function vc(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=wc(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var yc=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,bc=new RegExp(yc.source,`g`);function xc(e){return function(){return e}}function Sc(e){return function(t){return e(t)+``}}function Cc(e,t){var n=yc.lastIndex=bc.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=yc.exec(e))&&(i=bc.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:_c(r,i)})),n=bc.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?Sc(c[0].x):xc(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function wc(e,t){var n=typeof t,r;return t==null||n===`boolean`?sc(t):(n===`number`?_c:n===`string`?(r=Hs(t))?(t=r,fc):Cc:t instanceof Hs?fc:t instanceof Date?gc:mc(t)?pc:Array.isArray(t)?hc:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?vc:_c)(e,t)}function Tc(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var Ec=180/Math.PI,Dc={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Oc(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Ec,skewX:Math.atan(c)*Ec,scaleX:o,scaleY:s}}var kc;function Ac(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?Dc:Oc(t.a,t.b,t.c,t.d,t.e,t.f)}function jc(e){return e==null||(kc||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),kc.setAttribute(`transform`,e),!(e=kc.transform.baseVal.consolidate()))?Dc:(e=e.matrix,Oc(e.a,e.b,e.c,e.d,e.e,e.f))}function Mc(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:_c(e,i)},{i:c-2,x:_c(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:_c(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:_c(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:_c(e,n)},{i:s-2,x:_c(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var Nc=Mc(Ac,`px, `,`px)`,`deg)`),Pc=Mc(jc,`, `,`)`,`)`),Fc=0,Ic=0,Lc=0,Rc=1e3,zc,Bc,Vc=0,Hc=0,Uc=0,Wc=typeof performance==`object`&&performance.now?performance:Date,Gc=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Kc(){return Hc||=(Gc(qc),Wc.now()+Uc)}function qc(){Hc=0}function Jc(){this._call=this._time=this._next=null}Jc.prototype=Yc.prototype={constructor:Jc,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Kc():+n)+(t==null?0:+t),!this._next&&Bc!==this&&(Bc?Bc._next=this:zc=this,Bc=this),this._call=e,this._time=n,el()},stop:function(){this._call&&(this._call=null,this._time=1/0,el())}};function Yc(e,t,n){var r=new Jc;return r.restart(e,t,n),r}function Xc(){Kc(),++Fc;for(var e=zc,t;e;)(t=Hc-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Fc}function Zc(){Hc=(Vc=Wc.now())+Uc,Fc=Ic=0;try{Xc()}finally{Fc=0,$c(),Hc=0}}function Qc(){var e=Wc.now(),t=e-Vc;t>Rc&&(Uc-=t,Vc=e)}function $c(){for(var e,t=zc,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:zc=n);Bc=e,el(r)}function el(e){Fc||(Ic&&=clearTimeout(Ic),e-Hc>24?(e<1/0&&(Ic=setTimeout(Zc,e-Wc.now()-Uc)),Lc&&=clearInterval(Lc)):(Lc||=(Vc=Wc.now(),setInterval(Qc,Rc)),Fc=1,Gc(Zc)))}function tl(e,t,n){var r=new Jc;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var nl=ga(`start`,`end`,`cancel`,`interrupt`),rl=[];function il(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;cl(e,n,{name:t,index:r,group:i,on:nl,tween:rl,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function al(e,t){var n=sl(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function ol(e,t){var n=sl(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function sl(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function cl(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Yc(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return tl(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(tl(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function ll(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function ul(e){return this.each(function(){ll(this,e)})}function dl(e,t){var n,r;return function(){var i=ol(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function fl(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=ol(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function pl(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=sl(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?dl:fl)(n,e,t))}function ml(e,t,n){var r=e._id;return e.each(function(){var e=ol(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return sl(e,r).value[t]}}function hl(e,t){var n;return(typeof t==`number`?_c:t instanceof Hs?fc:(n=Hs(t))?(t=n,fc):Cc)(e,t)}function gl(e){return function(){this.removeAttribute(e)}}function _l(e){return function(){this.removeAttributeNS(e.space,e.local)}}function vl(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function yl(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function bl(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function xl(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Sl(e,t){var n=Sa(e),r=n===`transform`?Pc:hl;return this.attrTween(e,typeof t==`function`?(n.local?xl:bl)(n,r,ml(this,`attr.`+e,t)):t==null?(n.local?_l:gl)(n):(n.local?yl:vl)(n,r,t))}function Cl(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function wl(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function Tl(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&wl(e,i)),n}return i._value=t,i}function El(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Cl(e,i)),n}return i._value=t,i}function Dl(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=Sa(e);return this.tween(n,(r.local?Tl:El)(r,t))}function Ol(e,t){return function(){al(this,e).delay=+t.apply(this,arguments)}}function kl(e,t){return t=+t,function(){al(this,e).delay=t}}function Al(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?Ol:kl)(t,e)):sl(this.node(),t).delay}function jl(e,t){return function(){ol(this,e).duration=+t.apply(this,arguments)}}function Ml(e,t){return t=+t,function(){ol(this,e).duration=t}}function Nl(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?jl:Ml)(t,e)):sl(this.node(),t).duration}function Pl(e,t){if(typeof t!=`function`)throw Error();return function(){ol(this,e).ease=t}}function Fl(e){var t=this._id;return arguments.length?this.each(Pl(t,e)):sl(this.node(),t).ease}function Il(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();ol(this,e).ease=n}}function Ll(e){if(typeof e!=`function`)throw Error();return this.each(Il(this._id,e))}function Rl(e){typeof e!=`function`&&(e=Pa(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new pu(r,this._parents,this._name,this._id)}function zl(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new pu(o,this._parents,this._name,this._id)}function Bl(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function Vl(e,t,n){var r,i,a=Bl(t)?al:ol;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function Hl(e,t){var n=this._id;return arguments.length<2?sl(this.node(),n).on.on(e):this.each(Vl(n,e,t))}function Ul(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Wl(){return this.on(`end.remove`,Ul(this._id))}function Gl(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=Da(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,il(l[f],t,n,f,l,sl(u,n)));return new pu(a,this._parents,t,n)}function Kl(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=ja(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=sl(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&il(p,t,n,h,f,m);a.push(f),o.push(u)}return new pu(a,o,t,n)}var ql=vs.prototype.constructor;function Jl(){return new ql(this._groups,this._parents)}function Yl(e,t){var n,r,i;return function(){var a=To(this,e),o=(this.style.removeProperty(e),To(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function Xl(e){return function(){this.style.removeProperty(e)}}function Zl(e,t,n){var r,i=n+``,a;return function(){var o=To(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function Ql(e,t,n){var r,i,a;return function(){var o=To(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),To(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function $l(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=ol(this,e),l=c.on,u=c.value[a]==null?s||=Xl(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function eu(e,t,n){var r=(e+=``)==`transform`?Nc:hl;return t==null?this.styleTween(e,Yl(e,r)).on(`end.style.`+e,Xl(e)):typeof t==`function`?this.styleTween(e,Ql(e,r,ml(this,`style.`+e,t))).each($l(this._id,e)):this.styleTween(e,Zl(e,r,t),n).on(`end.style.`+e,null)}function tu(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function nu(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&tu(e,a,n)),r}return a._value=t,a}function ru(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,nu(e,t,n??``))}function iu(e){return function(){this.textContent=e}}function au(e){return function(){var t=e(this);this.textContent=t??``}}function ou(e){return this.tween(`text`,typeof e==`function`?au(ml(this,`text`,e)):iu(e==null?``:e+``))}function su(e){return function(t){this.textContent=e.call(this,t)}}function cu(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&su(r)),t}return r._value=e,r}function lu(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,cu(e))}function uu(){for(var e=this._name,t=this._id,n=hu(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=sl(c,t);il(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new pu(r,this._parents,e,n)}function du(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=ol(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var fu=0;function pu(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function mu(e){return vs().transition(e)}function hu(){return++fu}var gu=vs.prototype;pu.prototype=mu.prototype={constructor:pu,select:Gl,selectAll:Kl,selectChild:gu.selectChild,selectChildren:gu.selectChildren,filter:Rl,merge:zl,selection:Jl,transition:uu,call:gu.call,nodes:gu.nodes,node:gu.node,size:gu.size,empty:gu.empty,each:gu.each,on:Hl,attr:Sl,attrTween:Dl,style:eu,styleTween:ru,text:ou,textTween:lu,remove:Wl,tween:pl,delay:Al,duration:Nl,ease:Fl,easeVarying:Ll,end:du,[Symbol.iterator]:gu[Symbol.iterator]};function _u(e){return--e*e*e+1}function vu(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var yu={time:null,delay:0,duration:250,ease:vu};function bu(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function xu(e){var t,n;e instanceof pu?(t=e._id,e=e._name):(t=hu(),(n=yu).time=Kc(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&il(c,e,t,l,o,n||bu(c,t));return new pu(r,this._parents,e,t)}vs.prototype.interrupt=ul,vs.prototype.transition=xu;var{abs:Su,max:Cu,min:wu}=Math;[`w`,`e`].map(Tu),[`n`,`s`].map(Tu),[`n`,`w`,`e`,`s`,`nw`,`ne`,`sw`,`se`].map(Tu);function Tu(e){return{type:e}}var Eu=Math.PI,Du=2*Eu,Ou=1e-6,ku=Du-Ou;function Au(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function ju(e){let t=Math.floor(e);if(!(t>=0))throw Error(`invalid digits: ${e}`);if(t>15)return Au;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=Math.round(arguments[t]*n)/n+e[t]}}var Mu=class{constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._=``,this._append=e==null?Au:ju(e)}moveTo(e,t){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,t){this._append`L${this._x1=+e},${this._y1=+t}`}quadraticCurveTo(e,t,n,r){this._append`Q${+e},${+t},${this._x1=+n},${this._y1=+r}`}bezierCurveTo(e,t,n,r,i,a){this._append`C${+e},${+t},${+n},${+r},${this._x1=+i},${this._y1=+a}`}arcTo(e,t,n,r,i){if(e=+e,t=+t,n=+n,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let a=this._x1,o=this._y1,s=n-e,c=r-t,l=a-e,u=o-t,d=l*l+u*u;if(this._x1===null)this._append`M${this._x1=e},${this._y1=t}`;else if(d>Ou){if(!(Math.abs(u*s-c*l)>Ou)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((Eu-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>Ou&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>Ou||Math.abs(this._y1-l)>Ou)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%Du+Du),d>ku?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>Ou&&this._append`A${n},${n},0,${+(d>=Eu)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};Mu.prototype;function Nu(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function Pu(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Fu(e){return e=Pu(Math.abs(e)),e?e[1]:NaN}function Iu(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function Lu(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var Ru=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function zu(e){if(!(t=Ru.exec(e)))throw Error(`invalid format: `+e);var t;return new Bu({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]})}zu.prototype=Bu.prototype;function Bu(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+``}Bu.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 Vu(e){out:for(var t=e.length,n=1,r=-1,i;n<t;++n)switch(e[n]){case`.`:r=i=n;break;case`0`:r===0&&(r=n),i=n;break;default:if(!+e[n])break out;r>0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var Hu;function Uu(e,t){var n=Pu(e,t);if(!n)return Hu=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(Hu=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+Pu(e,Math.max(0,t+a-1))[0]}function Wu(e,t){var n=Pu(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var Gu={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:Nu,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)=>Wu(e*100,t),r:Wu,s:Uu,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Ku(e){return e}var qu=Array.prototype.map,Ju=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function Yu(e){var t=e.grouping===void 0||e.thousands===void 0?Ku:Iu(qu.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?Ku:Lu(qu.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=zu(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):Gu[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=Gu[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=Vu(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&Hu!==void 0?Ju[8+Hu/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++o<l;)if(p=e.charCodeAt(o),48>p||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T<h?Array(h-T+1).join(u):``;switch(g&&m&&(e=t(E+e,E.length?h-r.length:1/0),E=``),d){case`<`:e=n+e+r+E;break;case`=`:e=n+E+e+r;break;case`^`:e=E.slice(0,T=E.length>>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(Fu(t)/3)))*3,r=10**-n,i=l((e=zu(e),e.type=`f`,e),{suffix:Ju[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var Xu,Zu,Qu;$u({thousands:`,`,grouping:[3],currency:[`$`,``]});function $u(e){return Xu=Yu(e),Zu=Xu.format,Qu=Xu.formatPrefix,Xu}function ed(e){return Math.max(0,-Fu(Math.abs(e)))}function td(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Fu(t)/3)))*3-Fu(Math.abs(e)))}function nd(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Fu(t)-Fu(e))+1}function rd(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}var id=Symbol(`implicit`);function ad(){var e=new Pi,t=[],n=[],r=id;function i(i){let a=e.get(i);if(a===void 0){if(r!==id)return r;e.set(i,a=t.push(i)-1)}return n[a%n.length]}return i.domain=function(n){if(!arguments.length)return t.slice();t=[],e=new Pi;for(let r of n)e.has(r)||e.set(r,t.push(r)-1);return i},i.range=function(e){return arguments.length?(n=Array.from(e),i):n.slice()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return ad(t,n).unknown(r)},rd.apply(i,arguments),i}function od(){var e=ad().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=Zi(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return od(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},rd.apply(d(),arguments)}function sd(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return sd(t())},e}function cd(){return sd(od.apply(null,arguments).paddingInner(1))}function ld(e){return function(){return e}}function ud(e){return+e}var dd=[0,1];function fd(e){return e}function pd(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:ld(isNaN(t)?NaN:.5)}function md(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function hd(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i<r?(r=pd(i,r),a=n(o,a)):(r=pd(r,i),a=n(a,o)),function(e){return a(r(e))}}function gd(e,t,n){var r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)i[o]=pd(e[o],e[o+1]),a[o]=n(t[o],t[o+1]);return function(t){var n=Mi(e,t,1,r)-1;return a[n](i[n](t))}}function _d(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function vd(){var e=dd,t=dd,n=wc,r,i,a,o=fd,s,c,l;function u(){var n=Math.min(e.length,t.length);return o!==fd&&(o=md(e[0],e[n-1])),s=n>2?gd:hd,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),_c))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,ud),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=Tc,u()},d.clamp=function(e){return arguments.length?(o=e?!0:fd,u()):o!==fd},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function yd(){return vd()(fd,fd)}function bd(e,t,n,r){var i=Ji(e,t,n),a;switch(r=zu(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=td(i,o))&&(r.precision=a),Qu(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=nd(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=ed(i))&&(r.precision=a-(r.type===`%`)*2)}return Zu(r)}function xd(e){var t=e.domain;return e.ticks=function(e){var n=t();return Ki(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return bd(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s<o&&(l=o,o=s,s=l,l=i,i=a,a=l);u-->0;){if(l=qi(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function Sd(){var e=yd();return e.copy=function(){return _d(e,Sd())},rd.apply(e,arguments),xd(e)}function Cd(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function wd(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Td(e){var t=1,n=e(Cd(t),wd(t));return n.constant=function(n){return arguments.length?e(Cd(t=+n),wd(t)):t},xd(n)}function Ed(){var e=Td(vd());return e.copy=function(){return _d(e,Ed()).constant(e.constant())},rd.apply(e,arguments)}var Dd=new Date,Od=new Date;function kd(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t<n-e?t:n},i.offset=(e,n)=>(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n<r)||!(a>0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(s<n&&n<r);return o},i.filter=n=>kd(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(Dd.setTime(+t),Od.setTime(+r),e(Dd),e(Od),Math.floor(n(Dd,Od))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var Ad=6e4,jd=Ad*60*24,Md=jd*7;jd*30,jd*365;var Nd=kd(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Ad)/jd,e=>e.getDate()-1);Nd.range;var Pd=kd(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/jd,e=>e.getUTCDate()-1);Pd.range,kd(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/jd,e=>Math.floor(e/jd)).range;function Fd(e){return kd(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Ad)/Md)}var Id=Fd(0),Ld=Fd(1),Rd=Fd(2),zd=Fd(3),Bd=Fd(4),Vd=Fd(5),Hd=Fd(6);Id.range,Ld.range,Rd.range,zd.range,Bd.range,Vd.range,Hd.range;function Ud(e){return kd(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/Md)}var Wd=Ud(0),Gd=Ud(1),Kd=Ud(2),qd=Ud(3),Jd=Ud(4),Yd=Ud(5),Xd=Ud(6);Wd.range,Gd.range,Kd.range,qd.range,Jd.range,Yd.range,Xd.range;var Zd=kd(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());Zd.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:kd(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)}),Zd.range;var Qd=kd(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());Qd.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:kd(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)}),Qd.range;function $d(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 ef(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 tf(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function nf(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,o=e.shortDays,s=e.months,c=e.shortMonths,l=uf(i),u=df(i),d=uf(a),f=df(a),p=uf(o),m=df(o),h=uf(s),g=df(s),_=uf(c),v=df(c),y={a:M,A:N,b:P,B:F,c:null,d:Mf,e:Mf,f:Lf,g:Jf,G:Xf,H:Nf,I:Pf,j:Ff,L:If,m:Rf,M:zf,p:I,q:L,Q:yp,s:bp,S:Bf,u:Vf,U:Hf,V:Wf,w:Gf,W:Kf,x:null,X:null,y:qf,Y:Yf,Z:Zf,"%":vp},b={a:R,A:z,b:B,B:V,c:null,d:Qf,e:Qf,f:rp,g:mp,G:gp,H:$f,I:ep,j:tp,L:np,m:ip,M:ap,p:H,q:te,Q:yp,s:bp,S:op,u:sp,U:cp,V:up,w:dp,W:fp,x:null,X:null,y:pp,Y:hp,Z:_p,"%":vp},x={a:E,A:D,b:O,B:k,c:ee,d:Sf,e:Sf,f:Of,g:vf,G:_f,H:wf,I:wf,j:Cf,L:Df,m:xf,M:Tf,p:T,q:bf,Q:Af,s:jf,S:Ef,u:pf,U:mf,V:hf,w:ff,W:gf,x:A,X:j,y:vf,Y:_f,Z:yf,"%":kf};y.x=S(n,y),y.X=S(r,y),y.c=S(t,y),b.x=S(n,b),b.X=S(r,b),b.c=S(t,b);function S(e,t){return function(n){var r=[],i=-1,a=0,o=e.length,s,c,l;for(n instanceof Date||(n=new Date(+n));++i<o;)e.charCodeAt(i)===37&&(r.push(e.slice(a,i)),(c=rf[s=e.charAt(++i)])==null?c=s===`e`?` `:`0`:s=e.charAt(++i),(l=t[s])&&(s=l(n,c)),r.push(s),a=i+1);return r.push(e.slice(a,i)),r.join(``)}}function C(e,t){return function(n){var r=tf(1900,void 0,1),i=w(r,e,n+=``,0),a,o;if(i!=n.length)return null;if(`Q`in r)return new Date(r.Q);if(`s`in r)return new Date(r.s*1e3+(`L`in r?r.L:0));if(t&&!(`Z`in r)&&(r.Z=0),`p`in r&&(r.H=r.H%12+r.p*12),r.m===void 0&&(r.m=`q`in r?r.q:0),`V`in r){if(r.V<1||r.V>53)return null;`w`in r||(r.w=1),`Z`in r?(a=ef(tf(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?Gd.ceil(a):Gd(a),a=Pd.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=$d(tf(r.y,0,1)),o=a.getDay(),a=o>4||o===0?Ld.ceil(a):Ld(a),a=Nd.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?ef(tf(r.y,0,1)).getUTCDay():$d(tf(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,ef(r)):$d(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i<a;){if(r>=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in rf?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function ee(e,n,r){return w(e,t,n,r)}function A(e,t,r){return w(e,n,t,r)}function j(e,t,n){return w(e,r,t,n)}function M(e){return o[e.getDay()]}function N(e){return a[e.getDay()]}function P(e){return c[e.getMonth()]}function F(e){return s[e.getMonth()]}function I(e){return i[+(e.getHours()>=12)]}function L(e){return 1+~~(e.getMonth()/3)}function R(e){return o[e.getUTCDay()]}function z(e){return a[e.getUTCDay()]}function B(e){return c[e.getUTCMonth()]}function V(e){return s[e.getUTCMonth()]}function H(e){return i[+(e.getUTCHours()>=12)]}function te(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var rf={"-":``,_:` `,0:`0`},af=/^\s*\d+/,of=/^%/,sf=/[\\^$*+?|[\]().{}]/g;function cf(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a<n?Array(n-a+1).join(t)+i:i)}function lf(e){return e.replace(sf,`\\$&`)}function uf(e){return RegExp(`^(?:`+e.map(lf).join(`|`)+`)`,`i`)}function df(e){return new Map(e.map((e,t)=>[e.toLowerCase(),t]))}function ff(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function pf(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function mf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function hf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function gf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function _f(e,t,n){var r=af.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function vf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function yf(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function bf(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function xf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Sf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function Cf(e,t,n){var r=af.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function wf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function Tf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function Ef(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function Df(e,t,n){var r=af.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function Of(e,t,n){var r=af.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function kf(e,t,n){var r=of.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function Af(e,t,n){var r=af.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function jf(e,t,n){var r=af.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Mf(e,t){return cf(e.getDate(),t,2)}function Nf(e,t){return cf(e.getHours(),t,2)}function Pf(e,t){return cf(e.getHours()%12||12,t,2)}function Ff(e,t){return cf(1+Nd.count(Zd(e),e),t,3)}function If(e,t){return cf(e.getMilliseconds(),t,3)}function Lf(e,t){return If(e,t)+`000`}function Rf(e,t){return cf(e.getMonth()+1,t,2)}function zf(e,t){return cf(e.getMinutes(),t,2)}function Bf(e,t){return cf(e.getSeconds(),t,2)}function Vf(e){var t=e.getDay();return t===0?7:t}function Hf(e,t){return cf(Id.count(Zd(e)-1,e),t,2)}function Uf(e){var t=e.getDay();return t>=4||t===0?Bd(e):Bd.ceil(e)}function Wf(e,t){return e=Uf(e),cf(Bd.count(Zd(e),e)+(Zd(e).getDay()===4),t,2)}function Gf(e){return e.getDay()}function Kf(e,t){return cf(Ld.count(Zd(e)-1,e),t,2)}function qf(e,t){return cf(e.getFullYear()%100,t,2)}function Jf(e,t){return e=Uf(e),cf(e.getFullYear()%100,t,2)}function Yf(e,t){return cf(e.getFullYear()%1e4,t,4)}function Xf(e,t){var n=e.getDay();return e=n>=4||n===0?Bd(e):Bd.ceil(e),cf(e.getFullYear()%1e4,t,4)}function Zf(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+cf(t/60|0,`0`,2)+cf(t%60,`0`,2)}function Qf(e,t){return cf(e.getUTCDate(),t,2)}function $f(e,t){return cf(e.getUTCHours(),t,2)}function ep(e,t){return cf(e.getUTCHours()%12||12,t,2)}function tp(e,t){return cf(1+Pd.count(Qd(e),e),t,3)}function np(e,t){return cf(e.getUTCMilliseconds(),t,3)}function rp(e,t){return np(e,t)+`000`}function ip(e,t){return cf(e.getUTCMonth()+1,t,2)}function ap(e,t){return cf(e.getUTCMinutes(),t,2)}function op(e,t){return cf(e.getUTCSeconds(),t,2)}function sp(e){var t=e.getUTCDay();return t===0?7:t}function cp(e,t){return cf(Wd.count(Qd(e)-1,e),t,2)}function lp(e){var t=e.getUTCDay();return t>=4||t===0?Jd(e):Jd.ceil(e)}function up(e,t){return e=lp(e),cf(Jd.count(Qd(e),e)+(Qd(e).getUTCDay()===4),t,2)}function dp(e){return e.getUTCDay()}function fp(e,t){return cf(Gd.count(Qd(e)-1,e),t,2)}function pp(e,t){return cf(e.getUTCFullYear()%100,t,2)}function mp(e,t){return e=lp(e),cf(e.getUTCFullYear()%100,t,2)}function hp(e,t){return cf(e.getUTCFullYear()%1e4,t,4)}function gp(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Jd(e):Jd.ceil(e),cf(e.getUTCFullYear()%1e4,t,4)}function _p(){return`+0000`}function vp(){return`%`}function yp(e){return+e}function bp(e){return Math.floor(e/1e3)}var xp,Sp;Cp({dateTime:`%x, %X`,date:`%-m/%-d/%Y`,time:`%-I:%M:%S %p`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`]});function Cp(e){return xp=nf(e),Sp=xp.format,xp.parse,xp.utcFormat,xp.utcParse,xp}function wp(e){return function(){return e}}var Tp=Math.abs,Ep=Math.atan2,Dp=Math.cos,Op=Math.max,kp=Math.min,Ap=Math.sin,jp=Math.sqrt,Mp=Math.PI,Np=Mp/2,Pp=2*Mp;function Fp(e){return e>1?0:e<-1?Mp:Math.acos(e)}function Ip(e){return e>=1?Np:e<=-1?-Np:Math.asin(e)}function Lp(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new Mu(t)}function Rp(e){return e.innerRadius}function zp(e){return e.outerRadius}function Bp(e){return e.startAngle}function Vp(e){return e.endAngle}function Hp(e){return e&&e.padAngle}function Up(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function Wp(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/jp(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*jp(Op(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,ee=E-g,A=D-_;return O*O+k*k>ee*ee+A*A&&(w=E,T=D),{cx:w,cy:T,x01:-u,y01:-d,x11:w*(i/x-1),y11:T*(i/x-1)}}function Gp(){var e=Rp,t=zp,n=wp(0),r=null,i=Bp,a=Vp,o=Hp,s=null,c=Lp(l);function l(){var l,u,d=+e.apply(this,arguments),f=+t.apply(this,arguments),p=i.apply(this,arguments)-Np,m=a.apply(this,arguments)-Np,h=Tp(m-p),g=m>p;if(s||=l=c(),f<d&&(u=f,f=d,d=u),!(f>1e-12))s.moveTo(0,0);else if(h>Pp-1e-12)s.moveTo(f*Dp(p),f*Ap(p)),s.arc(0,0,f,p,m,!g),d>1e-12&&(s.moveTo(d*Dp(m),d*Ap(m)),s.arc(0,0,d,m,p,g));else{var _=p,v=m,y=p,b=m,x=h,S=h,C=o.apply(this,arguments)/2,w=C>1e-12&&(r?+r.apply(this,arguments):jp(d*d+f*f)),T=kp(Tp(f-d)/2,+n.apply(this,arguments)),E=T,D=T,O,k;if(w>1e-12){var ee=Ip(w/d*Ap(C)),A=Ip(w/f*Ap(C));(x-=ee*2)>1e-12?(ee*=g?1:-1,y+=ee,b-=ee):(x=0,y=b=(p+m)/2),(S-=A*2)>1e-12?(A*=g?1:-1,_+=A,v-=A):(S=0,_=v=(p+m)/2)}var j=f*Dp(_),M=f*Ap(_),N=d*Dp(b),P=d*Ap(b);if(T>1e-12){var F=f*Dp(v),I=f*Ap(v),L=d*Dp(y),R=d*Ap(y),z;if(h<Mp){if(z=Up(j,M,L,R,F,I,N,P)){var B=j-z[0],V=M-z[1],H=F-z[0],te=I-z[1],ne=1/Ap(Fp((B*H+V*te)/(jp(B*B+V*V)*jp(H*H+te*te)))/2),re=jp(z[0]*z[0]+z[1]*z[1]);E=kp(T,(d-re)/(ne-1)),D=kp(T,(f-re)/(ne+1))}else E=D=0}}S>1e-12?D>1e-12?(O=Wp(L,R,j,M,f,D,g),k=Wp(F,I,N,P,f,D,g),s.moveTo(O.cx+O.x01,O.cy+O.y01),D<T?s.arc(O.cx,O.cy,D,Ep(O.y01,O.x01),Ep(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,D,Ep(O.y01,O.x01),Ep(O.y11,O.x11),!g),s.arc(0,0,f,Ep(O.cy+O.y11,O.cx+O.x11),Ep(k.cy+k.y11,k.cx+k.x11),!g),s.arc(k.cx,k.cy,D,Ep(k.y11,k.x11),Ep(k.y01,k.x01),!g))):(s.moveTo(j,M),s.arc(0,0,f,_,v,!g)):s.moveTo(j,M),!(d>1e-12)||!(x>1e-12)?s.lineTo(N,P):E>1e-12?(O=Wp(N,P,F,I,d,-E,g),k=Wp(j,M,L,R,d,-E,g),s.lineTo(O.cx+O.x01,O.cy+O.y01),E<T?s.arc(O.cx,O.cy,E,Ep(O.y01,O.x01),Ep(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,E,Ep(O.y01,O.x01),Ep(O.y11,O.x11),!g),s.arc(0,0,d,Ep(O.cy+O.y11,O.cx+O.x11),Ep(k.cy+k.y11,k.cx+k.x11),g),s.arc(k.cx,k.cy,E,Ep(k.y11,k.x11),Ep(k.y01,k.x01),!g))):s.arc(0,0,d,b,y,g)}if(s.closePath(),l)return s=null,l+``||null}return l.centroid=function(){var n=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-Mp/2;return[Dp(r)*n,Ap(r)*n]},l.innerRadius=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),l):e},l.outerRadius=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),l):t},l.cornerRadius=function(e){return arguments.length?(n=typeof e==`function`?e:wp(+e),l):n},l.padRadius=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:wp(+e),l):r},l.startAngle=function(e){return arguments.length?(i=typeof e==`function`?e:wp(+e),l):i},l.endAngle=function(e){return arguments.length?(a=typeof e==`function`?e:wp(+e),l):a},l.padAngle=function(e){return arguments.length?(o=typeof e==`function`?e:wp(+e),l):o},l.context=function(e){return arguments.length?(s=e??null,l):s},l}Array.prototype.slice;function Kp(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function qp(e){this._context=e}qp.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)}}};function Jp(e){return new qp(e)}function Yp(e){return e[0]}function Xp(e){return e[1]}function Zp(e,t){var n=wp(!0),r=null,i=Jp,a=null,o=Lp(s);e=typeof e==`function`?e:e===void 0?Yp:wp(e),t=typeof t==`function`?t:t===void 0?Xp:wp(t);function s(s){var c,l=(s=Kp(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c<l&&n(u=s[c],c,s))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(u,c,s),+t(u,c,s));if(f)return a=null,f+``||null}return s.x=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),s):e},s.y=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),s):t},s.defined=function(e){return arguments.length?(n=typeof e==`function`?e:wp(!!e),s):n},s.curve=function(e){return arguments.length?(i=e,r!=null&&(a=i(r)),s):i},s.context=function(e){return arguments.length?(e==null?r=a=null:a=i(r=e),s):r},s}function Qp(e,t,n){var r=null,i=wp(!0),a=null,o=Jp,s=null,c=Lp(l);e=typeof e==`function`?e:e===void 0?Yp:wp(+e),t=typeof t==`function`?t:wp(t===void 0?0:+t),n=typeof n==`function`?n:n===void 0?Xp:wp(+n);function l(l){var u,d,f,p=(l=Kp(l)).length,m,h=!1,g,_=Array(p),v=Array(p);for(a??(s=o(g=c())),u=0;u<=p;++u){if(!(u<p&&i(m=l[u],u,l))===h){if(h=!h)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return Zp().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:wp(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:wp(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:wp(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}function $p(e,t){return t<e?-1:t>e?1:t>=e?0:NaN}function em(e){return e}function tm(){var e=em,t=$p,n=null,r=wp(0),i=wp(Pp),a=wp(0);function o(o){var s,c=(o=Kp(o)).length,l,u,d=0,f=Array(c),p=Array(c),m=+r.apply(this,arguments),h=Math.min(Pp,Math.max(-Pp,i.apply(this,arguments)-m)),g,_=Math.min(Math.abs(h)/c,a.apply(this,arguments)),v=_*(h<0?-1:1),y;for(s=0;s<c;++s)(y=p[f[s]=s]=+e(o[s],s,o))>0&&(d+=y);for(t==null?n!=null&&f.sort(function(e,t){return n(o[e],o[t])}):f.sort(function(e,n){return t(p[e],p[n])}),s=0,u=d?(h-c*v)/d:0;s<c;++s,m=g)l=f[s],y=p[l],g=m+(y>0?y*u:0)+v,p[l]={data:o[l],index:s,value:y,startAngle:m,endAngle:g,padAngle:_};return p}return o.value=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,n=null,o):t},o.sort=function(e){return arguments.length?(n=e,t=null,o):n},o.startAngle=function(e){return arguments.length?(r=typeof e==`function`?e:wp(+e),o):r},o.endAngle=function(e){return arguments.length?(i=typeof e==`function`?e:wp(+e),o):i},o.padAngle=function(e){return arguments.length?(a=typeof e==`function`?e:wp(+e),o):a},o}var nm={draw(e,t){let n=jp(t/Mp);e.moveTo(n,0),e.arc(0,0,n,0,Pp)}},rm={draw(e,t){let n=jp(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},im=jp(1/3),am=im*2,om={draw(e,t){let n=jp(t/am),r=n*im;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},sm={draw(e,t){let n=jp(t),r=-n/2;e.rect(r,r,n,n)}},cm=.8908130915292852,lm=Ap(Mp/10)/Ap(7*Mp/10),um=Ap(Pp/10)*lm,dm=-Dp(Pp/10)*lm,fm={draw(e,t){let n=jp(t*cm),r=um*n,i=dm*n;e.moveTo(0,-n),e.lineTo(r,i);for(let t=1;t<5;++t){let a=Pp*t/5,o=Dp(a),s=Ap(a);e.lineTo(s*n,-o*n),e.lineTo(o*r-s*i,s*r+o*i)}e.closePath()}},pm=jp(3),mm={draw(e,t){let n=-jp(t/(pm*3));e.moveTo(0,n*2),e.lineTo(-pm*n,-n),e.lineTo(pm*n,-n),e.closePath()}},hm=jp(3),gm={draw(e,t){let n=jp(t)*.6824,r=n/2,i=n*hm/2;e.moveTo(0,-n),e.lineTo(i,r),e.lineTo(-i,r),e.closePath()}};function _m(e,t){let n=null,r=Lp(i);e=typeof e==`function`?e:wp(e||nm),t=typeof t==`function`?t:wp(t===void 0?64:+t);function i(){let i;if(n||=i=r(),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),i)return n=null,i+``||null}return i.type=function(t){return arguments.length?(e=typeof t==`function`?t:wp(t),i):e},i.size=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),i):t},i.context=function(e){return arguments.length?(n=e??null,i):n},i}function vm(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 ym(e){this._context=e}ym.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:vm(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(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:vm(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function bm(e){return new ym(e)}function xm(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 Sm(e,t){this._context=e,this._k=(1-t)/6}Sm.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:xm(this,this._x1,this._y1)}(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:xm(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Cm=(function e(t){function n(e){return new Sm(e,t)}return n.tension=function(t){return e(+t)},n})(0);function wm(e,t,n){var r=e._x1,i=e._y1,a=e._x2,o=e._y2;if(e._l01_a>1e-12){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);r=(r*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,i=(i*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>1e-12){var l=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*l+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*l+e._y1*e._l23_2a-n*e._l12_2a)/u}e._context.bezierCurveTo(r,i,a,o,e._x2,e._y2)}function Tm(e,t){this._context=e,this._alpha=t}Tm.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)}(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,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=(n*n+r*r)**+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:wm(this,e,t)}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}};var Em=(function e(t){function n(e){return t?new Tm(e,t):new Sm(e,0)}return n.alpha=function(t){return e(+t)},n})(.5);function Dm(e){return e<0?-1:1}function Om(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(Dm(a)+Dm(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function km(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Am(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function jm(e){this._context=e}jm.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:Am(this,this._t0,km(this,this._t0))}(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,Am(this,km(this,n=Om(this,e,t)),n);break;default:Am(this,this._t0,n=Om(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}},Object.create(jm.prototype).point=function(e,t){jm.prototype.point.call(this,t,e)};function Mm(e){return new jm(e)}function Nm(e,t){this._context=e,this._t=t}Nm.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;default: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)}}this._x=e,this._y=t}};function Pm(e){return new Nm(e,.5)}function Fm(e){return new Nm(e,0)}function Im(e){return new Nm(e,1)}function Lm(e,t){if((o=e.length)>1)for(var n=1,r,i,a=e[t[0]],o,s=a.length;n<o;++n)for(i=a,a=e[t[n]],r=0;r<s;++r)a[r][1]+=a[r][0]=isNaN(i[r][1])?i[r][0]:i[r][1]}function Rm(e){for(var t=e.length,n=Array(t);--t>=0;)n[t]=t;return n}function zm(e,t){return e[t]}function Bm(e){let t=[];return t.key=e,t}function Vm(){var e=wp([]),t=Rm,n=Lm,r=zm;function i(i){var a=Array.from(e.apply(this,arguments),Bm),o,s=a.length,c=-1,l;for(let e of i)for(o=0,++c;o<s;++o)(a[o][c]=[0,+r(e,a[o].key,c,i)]).data=e;for(o=0,l=Kp(t(a));o<s;++o)a[l[o]].index=o;return n(a,l),a}return i.keys=function(t){return arguments.length?(e=typeof t==`function`?t:wp(Array.from(t)),i):e},i.value=function(e){return arguments.length?(r=typeof e==`function`?e:wp(+e),i):r},i.order=function(e){return arguments.length?(t=e==null?Rm:typeof e==`function`?e:wp(Array.from(e)),i):t},i.offset=function(e){return arguments.length?(n=e??Lm,i):n},i}function Hm(e,t){if((c=e.length)>0)for(var n,r=0,i,a,o,s,c,l=e[t[0]].length;r<l;++r)for(o=s=0,n=0;n<c;++n)(a=(i=e[t[n]][r])[1]-i[0])>0?(i[0]=o,i[1]=o+=a):a<0?(i[1]=s,i[0]=s+=a):(i[0]=0,i[1]=a)}function Um(e,t,n){this.k=e,this.x=t,this.y=n}Um.prototype={constructor:Um,scale:function(e){return e===1?this:new Um(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Um(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var Wm=new Um(1,0,0);Gm.prototype=Um.prototype;function Gm(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Wm;return e.__zoom}function Km(e,t){if(!e)throw Error(`[d3-blueprint] ${t}`)}var qm=class{properties=new Map;define(e,t){Km(!this.properties.has(e),`config "${e}" is already defined`);let{defaultValue:n,getter:r,setter:i}=t,a=i?i(n):n;return this.properties.set(e,{value:a,getter:r,setter:i}),this}get(e){let{value:t,getter:n}=this.getProperty(e);return n?n(t):t}set(e,t){let n=this.getProperty(e);return n.value=n.setter?n.setter(t):t,this}setBatch(e){for(let[t,n]of Object.entries(e))this.set(t,n);return this}getAll(){let e={};for(let[t]of this.properties)e[t]=this.get(t);return e}has(e){return this.properties.has(e)}getProperty(e){let t=this.properties.get(e);return Km(t,`config "${e}" is not defined`),t}},Jm=[`update`,`enter`,`merge`,`exit`],Ym=new Set([...Jm,...Jm.map(e=>`${e}:transition`)]);function Xm(e){return Ym.has(e)}function Zm(e){Km(Xm(e),`"${e}" is not a valid lifecycle event. Expected one of: ${[...Ym].join(`, `)}`)}function Qm(e,t,n){let r=e.exit(),i={update:e,enter:t,merge:t.merge(e),exit:r};return Jm.map(e=>({name:e,selection:i[e],handlers:n.get(e)??[],transitionHandlers:n.get(`${e}:transition`)??[]}))}function $m(e,t){for(let n of t)n(e)}function eh(e,t){return t.map(t=>{let n=e.transition();return t(n),th(n)})}function th(e){return e.end().then(()=>void 0,()=>void 0)}var nh=class{base;dataBindFn;insertFn;handlers=new Map;constructor(e,t){if(this.base=e,this.dataBindFn=t.dataBind,this.insertFn=t.insert,t.events)for(let[e,n]of Object.entries(t.events))n&&this.on(e,n)}on(e,t){Zm(e);let n=this.handlers.get(e)??[];return n.push(t),this.handlers.set(e,n),this}off(e,t){if(Zm(e),!t)return this.handlers.delete(e),this;let n=this.handlers.get(e);if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}return this}draw(e){let t=this.dataBindFn(this.base,e),n=t.enter(),r=Qm(t,this.insertFn(n),this.handlers),i=[];for(let e of r){$m(e.selection,e.handlers);let t=eh(e.selection,e.transitionHandlers);i.push(...t)}return Promise.all(i).then(()=>void 0)}};function rh(e,t,n,r){if(n&&r){let i=new nh(n,r);return e.set(t,i),i}let i=e.get(t);if(!i)throw Error(`[d3-blueprint] layer "${t}" is not defined`);return i}function ih(e,t,n,r){return typeof n==`string`&&r===void 0?e.get(n):typeof n==`string`?(e.set(n,r),t):(e.setBatch(n),t)}function ah(e,t){let n=[];for(let r of e.values())n.push(r.draw(t));return n}function oh(e,t){let n=[];for(let r of e.values()){let e=r.draw(t);e&&n.push(e)}return n}var sh=[`preDraw`,`postDraw`,`postTransition`],ch=class{base;layers=new Map;attachments=new Map;configs=new qm;dispatcher;attached=new Proxy({},{get:(e,t)=>{let n=this.attachments.get(t);if(!n)throw Error(`[d3-blueprint] attachment "${t}" is not defined`);return n},has:(e,t)=>this.attachments.has(t)});constructor(e){this.base=e,this.dispatcher=ga(...sh),this.initialize()}initialize(){}transform(e){return e}preDraw(e){}postDraw(e){}postTransition(e){}layer(e,t,n){return rh(this.layers,e,t,n)}attach(e,t,n){if(n!==void 0){let r=t;this.attachments.set(e,new r(n))}else this.attachments.set(e,t);return this}config(e,t){return ih(this.configs,this,e,t)}configDefine(e,t){return this.configs.define(e,t),this}on(e,t){return this.dispatcher.on(e,t),this}off(e){return this.dispatcher.on(e,null),this}use(e,t){let n=t||e.name||`plugin`;if(e.install(this),e.preDraw&&this.on(`preDraw.${n}`,t=>e.preDraw(this,t)),e.postDraw&&this.on(`postDraw.${n}`,t=>e.postDraw(this,t)),e.postTransition&&this.on(`postTransition.${n}`,t=>e.postTransition(this,t)),e.destroy){let t=this.destroy.bind(this);this.destroy=()=>{e.destroy(this),t()}}return this}async draw(e){let t=this.transform(e);this.preDraw(t),this.dispatcher.call(`preDraw`,this,t);let n=ah(this.layers,t),r=oh(this.attachments,t);this.postDraw(t),this.dispatcher.call(`postDraw`,this,t),await Promise.all([...n,...r]),this.postTransition(t),this.dispatcher.call(`postTransition`,this,t)}destroy(){this.layers.clear(),this.attachments.clear()}},lh=class extends ch{initialize(){let e=this.base.append(`div`).attr(`class`,`bc-frame`),t=e.append(`div`).attr(`class`,`bc-frame-header`);e.append(`div`).attr(`class`,`bc-frame-body`),e.append(`p`).attr(`class`,`bc-frame-note`);let n=e.append(`div`).attr(`class`,`bc-frame-footer`).style(`display`,`flex`).style(`justify-content`,`space-between`).style(`align-items`,`center`).style(`flex-wrap`,`wrap`).style(`gap`,`0.25rem 1rem`),r=n.append(`div`).attr(`class`,`bc-frame-footer-left`).style(`display`,`flex`).style(`flex-wrap`,`wrap`).style(`gap`,`0.25rem 0.75rem`),i=n.append(`div`).attr(`class`,`bc-frame-footer-right`).style(`display`,`flex`).style(`align-items`,`center`);this.layer(`headerItems`,t,{dataBind:(e,t)=>e.selectAll(`.bc-frame-header-item`).data(t.headerItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).text(e=>e.text)},merge:e=>{e.attr(`class`,e=>e.className).text(e=>e.text)},exit:e=>{e.remove()}}}),this.layer(`footerLeftItems`,r,{dataBind:(e,t)=>e.selectAll(`.bc-frame-footer-item`).data(t.footerLeftItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.prefix){let t=document.createElement(`span`);t.className=`bc-frame-source-prefix`,t.textContent=e.prefix,this.appendChild(t)}if(e.href){let t=document.createElement(`a`);t.className=`bc-frame-source-link`,t.href=e.href,t.textContent=e.text,this.appendChild(t)}else this.appendChild(document.createTextNode(e.text))})},merge:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.prefix){let t=document.createElement(`span`);t.className=`bc-frame-source-prefix`,t.textContent=e.prefix,this.appendChild(t)}if(e.href){let t=document.createElement(`a`);t.className=`bc-frame-source-link`,t.href=e.href,t.textContent=e.text,this.appendChild(t)}else this.appendChild(document.createTextNode(e.text))})},exit:e=>{e.remove()}}}),this.layer(`footerRightItems`,i,{dataBind:(e,t)=>e.selectAll(`.bc-frame-footer-item`).data(t.footerRightItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).each(function(e){if(e.html){let t=document.createRange().createContextualFragment(e.html);this.appendChild(t)}else this.textContent=e.text}),e.filter(e=>!!e.href).attr(`href`,e=>e.href),e.filter(e=>!!e.target).attr(`target`,e=>e.target),e.filter(e=>!!e.rel).attr(`rel`,e=>e.rel)},merge:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.html){let t=document.createRange().createContextualFragment(e.html);this.appendChild(t)}else this.textContent=e.text}),e.filter(e=>!!e.href).attr(`href`,e=>e.href),e.filter(e=>!!e.target).attr(`target`,e=>e.target),e.filter(e=>!!e.rel).attr(`rel`,e=>e.rel)},exit:e=>{e.remove()}}})}};function uh(e){let t=[];return e.title&&t.push({tag:`h3`,className:`bc-frame-title`,text:e.title}),e.description&&t.push({tag:`p`,className:`bc-frame-description`,text:e.description}),t}function dh(e){let t=[];return e.byline&&t.push({tag:`span`,className:`bc-frame-byline`,text:e.byline}),e.source&&t.push({tag:`span`,className:`bc-frame-source`,text:e.source,prefix:`Source: `,href:e.sourceUrl||void 0}),t}function fh(){return[{tag:`a`,className:`bc-frame-credit`,text:`Blueprint Chart`,html:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48.042969 90.607422" width="10" height="18" style="vertical-align:-3px;margin-right:3px"><path fill="currentColor" opacity="0.55" d="M 20.042969 34.607422 A 28 28 0 0 1 23.072266 34.779297 A 28 28 0 0 0 20.042969 34.607422 z M 23.34375 34.810547 A 28 28 0 0 1 26.171875 35.292969 A 28 28 0 0 0 23.34375 34.810547 z M 16.570312 34.84375 A 28 28 0 0 0 15.474609 35.033203 A 28 28 0 0 1 16.570312 34.84375 z M 26.390625 35.341797 A 28 28 0 0 1 29.316406 36.189453 A 28 28 0 0 0 26.390625 35.341797 z M 13.128906 35.511719 A 28 28 0 0 0 11.904297 35.873047 A 28 28 0 0 1 13.128906 35.511719 z M 29.373047 36.210938 A 28 28 0 0 1 32.103516 37.347656 A 28 28 0 0 0 29.373047 36.210938 z M 9.7832031 36.609375 A 28 28 0 0 0 8.5820312 37.117188 A 28 28 0 0 1 9.7832031 36.609375 z M 32.392578 37.486328 A 28 28 0 0 1 34.939453 38.90625 A 28 28 0 0 0 32.392578 37.486328 z M 6.5742188 38.128906 A 28 28 0 0 0 5.4511719 38.765625 A 28 28 0 0 1 6.5742188 38.128906 z M 35.041016 38.966797 A 28 28 0 0 1 37.523438 40.738281 A 28 28 0 0 0 35.041016 38.966797 z M 3.5273438 40.080078 A 28 28 0 0 0 2.5761719 40.771484 A 28 28 0 0 1 3.5273438 40.080078 z M 37.658203 40.851562 A 28 28 0 0 1 39.804688 42.783203 A 28 28 0 0 0 37.658203 40.851562 z M 40.011719 42.990234 A 28 28 0 0 1 42.013672 45.251953 A 28 28 0 0 0 40.011719 42.990234 z M 42.013672 45.251953 A 28 28 0 0 1 20.042969 56 A 28 28 0 0 1 14.232422 55.3125 A 16 16 0 0 1 16 62.607422 A 16 16 0 0 1 0 78.607422 L 0 82.121094 A 28 28 0 0 0 20.042969 90.607422 A 28 28 0 0 0 48.042969 62.607422 A 28 28 0 0 0 42.013672 45.251953 z M 1.3007812 46.667969 A 16 16 0 0 1 1.6191406 46.697266 A 16 16 0 0 0 1.3007812 46.667969 z M 4.2558594 47.189453 A 16 16 0 0 1 4.4355469 47.242188 A 16 16 0 0 0 4.2558594 47.189453 z "/><path fill="currentColor" opacity="0.85" d="M 6.0637516 38.376047 A 28 28 0 0 1 20.042969 34.615234 A 28 28 0 0 1 42.013672 45.259765 A 28 28 0 0 0 48.042969 28.007812 A 28 28 0 0 0 20.042969 0.0078125 A 28 28 0 0 0 0 8.4941407 L 0 16.007812 A 12 12 0 0 1 12 28.007812 A 12 12 0 0 1 6.0613693 38.364443 "/><path fill="currentColor" d="M 20.042969 34.607422 A 28 28 0 0 0 5.0878906 38.970703 A 28 28 0 0 1 6.0644531 38.376953 L 6.0605469 38.365234 A 12 12 0 0 1 0 40.007812 L 0 43.09375 L 0 43.101562 L 0 46.607422 A 16 16 0 0 1 2.8847656 46.873047 A 16 16 0 0 1 2.9199219 46.878906 A 16 16 0 0 1 5.7011719 47.662109 A 16 16 0 0 1 5.7324219 47.673828 A 16 16 0 0 1 8.3300781 48.955078 A 16 16 0 0 1 8.3398438 48.958984 A 16 16 0 0 1 8.3457031 48.962891 A 16 16 0 0 1 10.662109 50.6875 A 16 16 0 0 1 10.697266 50.71875 A 16 16 0 0 1 12.660156 52.837891 A 16 16 0 0 1 12.667969 52.845703 A 16 16 0 0 1 12.673828 52.855469 A 16 16 0 0 1 14.228516 55.306641 A 16 16 0 0 1 14.232422 55.3125 A 28 28 0 0 0 20.042969 56 A 28 28 0 0 0 42.013672 45.251953 A 28 28 0 0 0 20.042969 34.607422 z M 4.7695312 39.177734 A 28 28 0 0 0 2.5390625 40.798828 A 28 28 0 0 1 4.7695312 39.177734 z M 2.1816406 41.091797 A 28 28 0 0 0 0.11914062 42.984375 A 28 28 0 0 1 2.1816406 41.091797 z "/></svg>Blueprint Chart`,href:`/`,target:`_blank`,rel:`noopener noreferrer`}]}function ph(e){let[t,n=t,r=t,i=n]=e.trim().split(/\s+/);return[t,n,r,i]}function mh(e,t){if(t===null)return{wrapper:e,header:e,body:e,footer:e};let n=t??{};new lh($(e)).draw({headerItems:uh(n),footerLeftItems:dh(n),footerRightItems:fh()});let r=e.querySelector(`.bc-frame`),i=r.querySelector(`.bc-frame-header`),a=r.querySelector(`.bc-frame-body`),o=r.querySelector(`.bc-frame-note`),s=r.querySelector(`.bc-frame-footer`);if(n.padding){r.style.setProperty(`--bc-frame-padding`,n.padding);let[e,t,i,a]=ph(n.padding);r.style.setProperty(`--bc-frame-padding-top`,e),r.style.setProperty(`--bc-frame-padding-right`,t),r.style.setProperty(`--bc-frame-padding-bottom`,i),r.style.setProperty(`--bc-frame-padding-left`,a)}if(n.transparentBackground&&r.style.setProperty(`--bc-frame-bg`,`transparent`),n.note?o.textContent=n.note:o.style.display=`none`,e.isConnected){let t=getComputedStyle(e),n=t.aspectRatio&&t.aspectRatio!==`auto`&&t.aspectRatio!==``,c=t.display===`flex`&&t.flexDirection===`column`;if(n||c){let t=i.offsetHeight,n=s.offsetHeight,c=o.style.display===`none`?0:o.offsetHeight;r.classList.add(`bc-frame--constrained`),a.dataset.headerH=String(t);let l=e;a.dataset.footerH=String(l.__bcFooterH??n+c),requestAnimationFrame(()=>{l.__bcFooterH=s.offsetHeight+(o.style.display===`none`?0:o.offsetHeight)})}}return{wrapper:r,header:i,body:a,footer:s}}function hh(e){return e&&(e.startsWith(`(`)&&e.endsWith(`)`)?e.slice(0,-1):e)}function gh(e){if(!e)return{prefix:``,d3Spec:``,suffix:``};if(e.includes(`|`)){let t=e.split(`|`);return{prefix:t[0]??``,d3Spec:hh(t[1]??``),suffix:t[2]??``}}return{prefix:``,d3Spec:hh(e),suffix:``}}function _h(e){if(!e)return null;let{prefix:t,d3Spec:n,suffix:r}=gh(e);if(!n)return null;let i=Zu(n);return!t&&!r?i:e=>`${t}${i(e)}${r}`}function vh(e,t){return!Number.isFinite(t)||t<=0?`0%`:`${Math.round(e/t*100)}%`}var yh=`http://www.w3.org/2000/svg`,bh=`system-ui, -apple-system, sans-serif`,xh=/[\u1100-\u115f\u2e80-\ua4cf\ua960-\ua97f\uac00-\ud7a3\uf900-\ufaff\ufe10-\ufe19\ufe30-\ufe6f\uff00-\uff60\uffe0-\uffe6]/,Sh=1,Ch=.5,wh=null,Th=null;function Eh(e,t){let n=0;for(let t of e)n+=xh.test(t)?Sh:Ch;return n*t}function Dh(){if(typeof document>`u`)return null;if(Th!==document){Th=document;try{wh=document.createElement(`canvas`).getContext(`2d`)}catch{wh=null}}return wh}function Oh(e,t){let n=Dh();if(!n)return null;n.font=`${t}px ${bh}`;let r=n.measureText(e).width;return r>0?r:null}function kh(e,t){if(typeof document>`u`||typeof document.createElementNS!=`function`)return null;let n=document.createElementNS(yh,`svg`),r=document.createElementNS(yh,`text`);if(r.setAttribute(`font-size`,String(t)),r.textContent=e,n.appendChild(r),typeof r.getComputedTextLength!=`function`)return null;let i=r.getComputedTextLength();return i>0?i:null}function Ah(e,t){if(e===``)return 0;let n=Oh(e,t)??kh(e,t)??0;return Math.max(n,Eh(e,t))}function jh(e,t){let n=0;for(let r of e){let e=Ah(r,t);e>n&&(n=e)}return n}function Mh(e,t,n,r=`…`){if(Ah(e,n)<=t)return e;let i=[...e],a=Ah(r,n),o=i.length;for(;o>1&&Ah(i.slice(0,o).join(``),n)+a>t;)o--;return i.slice(0,o).join(``)+r}function Nh(e,t){if(!e)return;let n=e.stableTop??e.top,r=t.stableTop??t.top;return{dx:e.left-t.left,dy:n-r}}var Ph={top:12,right:20,bottom:24,left:50},Fh=10,Ih=600,Lh=400,Rh=.25;function zh(e,t,n){let r=t+n,i=e*Rh;if(r<=0||e-r>=i)return[t,n];let a=Math.max(0,e-i)/r;return[t*a,n*a]}var Bh=class extends ch{initialize(){this.configDefine(`totalWidth`,{defaultValue:Ih}),this.configDefine(`totalHeight`,{defaultValue:Lh}),this.layer(`svg`,this.base,{dataBind:(e,t)=>e.selectAll(`svg`).data(t),insert:e=>e.append(`svg`),events:{enter:e=>{let t=this.config(`totalWidth`),n=this.config(`totalHeight`);e.attr(`width`,t).attr(`height`,n).append(`g`).attr(`transform`,e=>`translate(${e.left},${e.top})`)}}})}},Vh=400,Hh=2,Uh=2,Wh=9;function Gh(e,t,n,r){let[i,a]=wi(e,t,r),o=r===`log`?Ed().domain([i,a]).nice():Sd().domain([i,a]).nice(),s=o.ticks(),c=n?_h(n)??o.tickFormat():o.tickFormat(),l=s.map(e=>c(e));return l.length===0?0:Math.ceil(jh(l,Fh))+Uh+Wh}function Kh(e){return e.length===0?0:Math.ceil(jh(e,Fh))+Uh+Wh}function qh(e,t,n,r,i,a){let o={},s=i??50,c=r??`left`,l=t??`auto`,u=l===`auto`?e>0&&e<Vh?`inside`:`outside`:l,d=u===`inside`,f=u===`off`;return c===`right`?(o.left=0,o.right=d?Hh:f?0:s):(o.right=a===!1?0:15,o.left=d?Hh:f?0:s),d&&(o.top=35),(n===`inside`||n===`off`)&&(o.bottom=5),o}function Jh(e,t){return parseFloat(e.dataset[t]??``)||0}function Yh(e){let t=e.getBoundingClientRect(),n=getComputedStyle(e),r=t.width-(parseFloat(n.paddingLeft)||0)-(parseFloat(n.paddingRight)||0),i=t.height-(parseFloat(n.paddingTop)||0)-(parseFloat(n.paddingBottom)||0);return{width:r>0?r:Jh(e,`bcContentWidth`),height:i>0?i:Jh(e,`bcContentHeight`)}}function Xh(e,t){let n=t.closest(`.bc-frame`);if(!n||n.style.getPropertyValue(`--bc-frame-bg`).trim()===`transparent`)return;e.querySelector(`.bc-canvas-bg`)?.remove();let r=e.ownerDocument.createElementNS(`http://www.w3.org/2000/svg`,`rect`);r.setAttribute(`class`,`bc-canvas-bg`),r.setAttribute(`width`,`100%`),r.setAttribute(`height`,`100%`),r.setAttribute(`fill`,wr(n)),e.insertBefore(r,e.firstChild)}function Zh(e,t){let n={...Ph,...t},r=e.closest(`.bc-frame--constrained`)!=null;if(r){let t=parseFloat(e.dataset.headerH||`0`),r=parseFloat(e.dataset.footerH||`0`),i=n.top;n.top=t+i,n.bottom+=r,n.stableTop=i}let i=Yh(e),a=i.width>0?i.width:Ih,o=i.height>0?i.height:Lh;[n.left,n.right]=zh(a,n.left,n.right),[n.top,n.bottom]=zh(o,n.top,n.bottom);let s=a-n.left-n.right,c=o-n.top-n.bottom,l=new Bh($(e));l.config({totalWidth:a,totalHeight:o}),l.draw([n]);let u=e.querySelector(`svg`),d=u.querySelector(`g`);return Xh(u,e),r&&(u.setAttribute(`viewBox`,`0 0 ${a} ${o}`),u.setAttribute(`preserveAspectRatio`,`none`),u.removeAttribute(`width`),u.removeAttribute(`height`),u.style.width=`100%`,u.style.height=`100%`,u.style.display=`block`),{svg:u,chartArea:d,width:s,height:c,margin:n}}function Qh(e){return typeof window>`u`||typeof window.matchMedia!=`function`?e:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:e}var $h=0;function eg(e){$h=e?500:0}function tg(){return Qh($h)}function ng(e,t){let n=Qh(t??500);n<=0||typeof e.animate!=`function`||e.animate([{opacity:0},{opacity:1}],{duration:n,easing:`ease-in-out`})}function rg(e,t){let n=Qh(t??500);if(e.querySelectorAll(`[data-bc-fade-overlay]`).forEach(e=>{typeof e.getAnimations==`function`&&e.getAnimations().forEach(e=>e.cancel()),e.remove()}),n<=0||e.children.length===0)return null;let r=document.createElement(`div`);return r.style.position=`absolute`,r.style.inset=`0`,r.style.pointerEvents=`none`,r.style.display=`flex`,r.style.flexDirection=`column`,r.dataset.bcFadeOverlay=`true`,Array.from(e.childNodes).forEach(e=>{r.appendChild(e.cloneNode(!0))}),r.querySelectorAll(`.bc-axis-vertical, .bc-axis-horizontal`).forEach(e=>{e.remove()}),r.querySelectorAll(`.bc-frame-footer, .bc-frame-note`).forEach(e=>{e.remove()}),r.querySelectorAll(`[data-bc-fade-overlay], .bc-frame--fade-snapshot`).forEach(e=>{e.remove()}),r.querySelectorAll(`.bc-frame`).forEach(e=>{e.classList.remove(`bc-frame`),e.classList.add(`bc-frame--fade-snapshot`)}),r}function ig(e,t,n){let r=Qh(n??500);if(getComputedStyle(e).position===`static`&&(e.style.position=`relative`),e.appendChild(t),r>0&&typeof t.animate==`function`){let e=t.animate([{opacity:1},{opacity:0}],{duration:r,easing:`ease-in-out`});e.onfinish=()=>t.remove()}else t.remove()}var ag=60,og=10,sg=8,cg=16,lg=10,ug=1.3,dg=12,fg=3,pg=14,mg=10;function hg(e,t,n=fg){if(e===``)return[``];if(e.length*lg<=t)return[e];let r=e.split(/\s+/).filter(Boolean);if(r.length===0)return null;let i=[],a=``;for(let e of r){if(e.length*lg>t)return null;let r=a?`${a} ${e}`:e;if(r.length*lg<=t)a=r;else if(i.push(a),a=e,i.length>=n)return null}return a&&i.push(a),i.length>n?null:i}var gg={year:`%Y`,month:`%b %Y`,day:`%b %-d, %Y`,datetime:`%b %-d, %Y %H:%M`};function _g(e){return typeof e.step==`function`}function vg(e,t){let n=yi(t);if(e&&e.includes(`%`)){if(n){let r=Sp(e),i=new Map;return t.forEach((e,t)=>i.set(e,n.dates[t])),e=>{if(e instanceof Date)return r(e);let t=i.get(String(e));return t?r(t):String(e)}}return null}if(e)return t.length>0?null:_h(e)??Zu(e);if(n){let e=Sp(gg[n.granularity]??`%Y-%m-%d`),r=new Map;return t.forEach((e,t)=>r.set(e,n.dates[t])),t=>{if(t instanceof Date)return e(t);let n=r.get(String(t));return n?e(n):String(t)}}return null}function yg(e,t){let n=0;for(let r of e){let e=(t?t(r):r).length*lg;e>n&&(n=e)}return n}function bg(e,t){return e.map(e=>t?t(e):String(e))}function xg(e,t){let n=Math.max(cg,Math.ceil(e)+sg);return Math.max(2,Math.floor(t/n))}function Sg(e,t,n){if(e.length<=1)return e;let r=xg(jh(bg(e,n??null),og),t);if(e.length<=r)return e;let i=Math.ceil(e.length/r),a=[];for(let t=0;t<e.length;t+=i)a.push(t);let o=e.length-1;return a[a.length-1]!==o&&(o-a[a.length-1]<i&&a.pop(),a.push(o)),a.map(t=>e[t])}function Cg(e,t,n){let r=Math.max(2,Math.floor(t/ag));for(;r>2;){let i=bg(e.ticks(r),n??e.tickFormat(r)),a=xg(jh(i,og),t);if(i.length<=a)break;r=Math.min(r-1,a)}return r}function wg(e,t,n,r){return e.length<=1||t<=0||n===`horizontal`?!1:n===`vertical`||!yi(e)&&yg(e,r??null)>t/e.length*ug}function Tg(e,t){if(e.length===0)return 0;let n=yg(e,t??null);return Math.ceil(n)+dg}function Eg(e){let t=1;for(let n of e)n.length>t&&(t=n.length);return t<=1?0:t*pg+mg}function Dg(e,t,n={},r=24){if(e.length===0||t<=0||n.labelPosition===`off`||n.labelPosition===`inside`)return;let i=n.tickFormat?n.tickFormat:vg(n.numberFormat??null,e),a=n.labelRotation??`auto`;if((a===`vertical`||yi(e)===null)&&e.length>1){let n=t/e.length*ug,o=yg(e,i)>n;if(a!==`vertical`&&o){let t=Og(e,n,i);if(t){let e=Eg(Array.from(t.values()));return e>r?e:void 0}}}if(!wg(e,t,a,i))return;let o=Tg(e,i);return o>r?o:void 0}function Og(e,t,n){let r=new Map,i=!1;for(let a of e){let e=hg(n?n(a):a,t);if(e===null)return null;r.set(a,e),e.length>1&&(i=!0)}return i?r:null}function kg(e,t){e.selectAll(`.tick`).each(function(){let e=$(this),n=e.datum(),r=n instanceof Date?n.toISOString():String(n),i=t.get(r);if(!i||i.length<=1)return;let a=e.select(`text`);a.empty()||(a.attr(`dy`,null).text(null),i.forEach((e,t)=>{a.append(`tspan`).attr(`x`,0).attr(`dy`,t===0?`0.71em`:`1em`).text(e)}))})}var Ag=class extends ch{initialize(){this.configDefine(`scale`,{defaultValue:od()}),this.configDefine(`height`,{defaultValue:0}),this.configDefine(`tickPosition`,{defaultValue:`below`}),this.configDefine(`showAxis`,{defaultValue:!0}),this.configDefine(`showTicks`,{defaultValue:!1}),this.configDefine(`gridStyle`,{defaultValue:`dashed`}),this.configDefine(`ticks`,{defaultValue:null}),this.configDefine(`numberFormat`,{defaultValue:null}),this.configDefine(`width`,{defaultValue:0}),this.configDefine(`labels`,{defaultValue:[]}),this.configDefine(`labelPosition`,{defaultValue:`auto`}),this.configDefine(`labelRotation`,{defaultValue:`auto`}),this.configDefine(`zeroY`,{defaultValue:null}),this.configDefine(`tickFormat`,{defaultValue:null});let e=this.base.append(`g`);this.layer(`axis`,e,{dataBind:(e,t)=>e.selectAll(`.bc-axis-horizontal`).data(t),insert:e=>e.append(`g`).attr(`class`,`bc-axis bc-axis-horizontal`),events:{"merge:transition":e=>{this.applyAxis(e,`merge`)},exit:e=>{e.remove()},enter:e=>{this.applyAxis(e,`enter`)}}})}applyAxis(e,t){let n=this.config(`scale`),r=this.config(`scale`),i=this.config(`tickPosition`),a=this.config(`height`),o=this.config(`labelPosition`),s=this.config(`labelRotation`),c=this.config(`width`),l=this.config(`numberFormat`),u=this.config(`labels`),d=this.config(`tickFormat`),f=i===`above`?da(n):pa(n);this.config(`showTicks`)||f.tickSizeOuter(0);let p=d||vg(l,u);p&&f.tickFormat(p);let m=_g(r),h=m?r.domain():[],g=m&&s!==`vertical`&&yi(h)!==null,_=null,v=!1;if(m&&!g&&h.length>1&&c>0){let e=c/h.length*ug,t=yg(h,p)>e;s===`vertical`?v=!0:t&&(_=Og(h,e,p),!_&&s===`auto`&&(v=!0))}let y=o===`auto`?`outside`:o,b=this.config(`ticks`);if(!b&&c>0){if(m){if(g||!v&&!_&&y!==`off`){let e=Sg(h,c,p);e.length<h.length&&(b=e)}}else{let e=Ti(r,Math.max(2,Math.floor(c/ag)));e?b=e:f.ticks(Cg(r,c,p))}}b&&f.tickValues(b);let x=i===`above`?0:a,S=e.node(),C=t===`merge`?tg():0;if(t===`merge`){if(!S)return;C>0?(e.attr(`transform`,`translate(0,${x})`),e.duration(C).call(f)):$(S).attr(`transform`,`translate(0,${x})`).call(f)}else e.attr(`transform`,`translate(0,${x})`),e.call(f);let w=C>0?e:S?$(S):e;if(!this.config(`showAxis`))w.select(`.domain`).remove();else if(t===`enter`){let e=this.config(`zeroY`);if(e!=null){let t=e-(i===`above`?0:a);w.select(`.domain`).attr(`transform`,`translate(0,${t})`)}}this.config(`showTicks`)||w.selectAll(`.tick line`).remove(),y===`off`?w.selectAll(`.tick text`).remove():y===`inside`&&w.selectAll(`.tick text`).attr(`y`,0).attr(`dy`,`-0.6em`),v&&y!==`off`?w.selectAll(`.tick text`).attr(`transform`,`rotate(-90)`).attr(`text-anchor`,`end`).attr(`x`,i===`above`?9:-9).attr(`y`,0).attr(`dy`,`0.32em`):(w.selectAll(`.tick text`).attr(`transform`,null),y!==`off`&&jg(w,c)),_&&y!==`off`&&kg(w,_)}postDraw(){let e=this.config(`gridStyle`),t=this.config(`height`),n=this.base.select(`.bc-axis-horizontal`).node();n&&Mg(n,e,t)}};function jg(e,t){t>0&&e.selectAll(`.tick text`).each((e,n,r)=>{let i=r[n],a=i.parentElement,o=Number(/translate\(([-\d.]+)/.exec(a?.getAttribute(`transform`)??``)?.[1]??`NaN`);if(!Number.isFinite(o))return;let s=Ah(i.textContent??``,og)/2;o-s<0?$(i).attr(`text-anchor`,`start`):o+s>t&&$(i).attr(`text-anchor`,`end`)})}function Mg(e,t,n){let r=e.ownerSVGElement?.parentElement??document.documentElement,i=getComputedStyle(r).getPropertyValue(`--bc-grid-color`).trim()||`#ccc`,a=t===`none`||n<=0?[]:[null];$(e).selectAll(`.tick`).each(function(){$(this).selectAll(`.bc-grid-line`).data(a).join(`line`).attr(`class`,`bc-grid-line`).attr(`x1`,0).attr(`x2`,0).attr(`y1`,0).attr(`y2`,-n).attr(`stroke`,i).attr(`stroke-width`,1).attr(`stroke-dasharray`,Ng[t]??null)})}var Ng={dashed:`4,4`,dotted:`1,3`};function Pg(e,t,n,r={},i){let a=new Ag($(e));if(i){i.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove());let t=e.lastElementChild;t&&t.appendChild(i)}let o=_g(t)?t.domain():[];return a.config({scale:t,height:n,tickPosition:r.tickPosition??`below`,showAxis:r.showAxis??!0,showTicks:r.showTicks??!1,gridStyle:r.gridStyle??`dashed`,ticks:r.ticks??null,numberFormat:r.numberFormat??null,width:r.width??0,labels:o,labelPosition:r.labelPosition??`auto`,labelRotation:r.labelRotation??`auto`,zeroY:r.zeroY??null,tickFormat:r.tickFormat??null}),a.draw([{placeholder:!0}]),e.querySelector(`.bc-axis-horizontal`)}var Fg=30;function Ig(e){return typeof e.bandwidth==`function`}var Lg=class extends ch{initialize(){this.configDefine(`scale`,{defaultValue:Sd()}),this.configDefine(`direction`,{defaultValue:Ir.Left}),this.configDefine(`showAxis`,{defaultValue:!0}),this.configDefine(`showTicks`,{defaultValue:!1}),this.configDefine(`gridStyle`,{defaultValue:Rr.Dashed}),this.configDefine(`gridWidth`,{defaultValue:0}),this.configDefine(`height`,{defaultValue:0}),this.configDefine(`ticks`,{defaultValue:null}),this.configDefine(`numberFormat`,{defaultValue:null}),this.configDefine(`labelPosition`,{defaultValue:zr.Auto}),this.configDefine(`topPadding`,{defaultValue:0}),this.configDefine(`tickFormat`,{defaultValue:null});let e=this.base.append(`g`);this.layer(`axis`,e,{dataBind:(e,t)=>e.selectAll(`.bc-axis-vertical`).data(t),insert:e=>e.append(`g`).attr(`class`,`bc-axis bc-axis-vertical`),events:{"merge:transition":e=>{let t=this.config(`scale`),n=this.config(`direction`),r=this.config(`showAxis`),i=this.config(`showTicks`),a=this.config(`labelPosition`),o=this.config(`gridWidth`),s=this.config(`height`),c=n===Ir.Right?fa(t):ma(t);i||c.tickSizeOuter(0);let l=this.config(`ticks`);if(l)c.tickValues(l);else if(s>0){let e=Math.max(2,Math.floor(s/Fg)),n=Ti(t,e);n?c.tickValues(n):c.ticks(e)}let u=this.config(`tickFormat`);if(u)c.tickFormat(u);else{let e=this.config(`numberFormat`),n=e&&!Ig(t)?_h(e):null;n&&c.tickFormat(n)}let d=tg(),f=e.node();if(f){d>0?e.duration(d).call(c):$(f).call(c),r||$(f).select(`.domain`).remove(),i||$(f).selectAll(`.tick line`).attr(`opacity`,0);let t=a===zr.Auto?o>0&&o<400?zr.Inside:zr.Outside:a;if(t===zr.Inside){let t=r?4:0,i=d>0?e.selectAll(`.tick text`):$(f).selectAll(`.tick text`);$(f).selectAll(`.tick text`).classed(`bc-axis-label-inside`,!0),n===Ir.Right?i.attr(`x`,-t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`end`):i.attr(`x`,t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`start`)}else t===zr.Off&&$(f).selectAll(`.tick text`).attr(`opacity`,0)}},exit:e=>{e.remove()},enter:e=>{let t=this.config(`scale`),n=this.config(`direction`),r=this.config(`labelPosition`),i=this.config(`gridWidth`),a=this.config(`height`),o=this.config(`topPadding`),s=n===Ir.Right?fa(t):ma(t);this.config(`showTicks`)||s.tickSizeOuter(0);let c=this.config(`ticks`);if(c)s.tickValues(c);else if(a>0){let e=Math.max(2,Math.floor(a/Fg)),n=Ti(t,e);n?s.tickValues(n):s.ticks(e)}let l=this.config(`tickFormat`);if(l)s.tickFormat(l);else{let e=this.config(`numberFormat`),n=e&&!Ig(t)?_h(e):null;n&&s.tickFormat(n)}e.call(s);let u=this.config(`showAxis`),d=this.config(`showTicks`);u||e.select(`.domain`).remove();let f=r===zr.Auto?i>0&&i<400?zr.Inside:zr.Outside:r;if(f===zr.Inside){let t=u?4:0;if(e.selectAll(`.tick text`).classed(`bc-axis-label-inside`,!0),n===Ir.Right?e.selectAll(`.tick text`).attr(`x`,-t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`end`):e.selectAll(`.tick text`).attr(`x`,t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`start`),d?e.selectAll(`.tick line`).attr(`x2`,n===Ir.Right?-6:6):e.selectAll(`.tick line`).remove(),o>0&&u){let t=e.select(`.domain`);if(!t.empty()){let e=t.attr(`d`),n=e.replace(/V[\d.]+/,`V${-o}`);n!==e&&t.attr(`d`,n)}}}else d||e.selectAll(`.tick line`).remove(),f===zr.Off&&e.selectAll(`.tick text`).remove()}}})}postDraw(){let e=this.config(`gridStyle`),t=this.config(`gridWidth`),n=this.config(`direction`),r=this.base.select(`.bc-axis-vertical`).node();r&&zg(r,e,n===Ir.Right?-t:t)}},Rg={[Rr.Dashed]:`4,4`,[Rr.Dotted]:`1,3`};function zg(e,t,n){let r=e.ownerSVGElement?.parentElement??document.documentElement,i=getComputedStyle(r).getPropertyValue(`--bc-grid-color`).trim()||`#ccc`,a=t===Rr.None||n===0?[]:[null];$(e).selectAll(`.tick`).each(function(){$(this).selectAll(`.bc-grid-line`).data(a).join(`line`).attr(`class`,`bc-grid-line`).attr(`x1`,0).attr(`x2`,n).attr(`y1`,0).attr(`y2`,0).attr(`stroke`,i).attr(`stroke-width`,1).attr(`stroke-dasharray`,Rg[t]??null)})}function Bg(e){return typeof e.step==`function`}var Vg=new WeakMap,Hg=new WeakMap;function Ug(e,t){let n=Hg.get(e);Hg.set(e,t),n!==void 0&&n!==t&&Vg.get(e)?.destroy()}var Wg=class e{vGroup=null;hGroup=null;vChart=null;hChart=null;container;initialized=!1;constructor(e){this.container=e}static for(t){let n=Vg.get(t);return n||(n=new e(t),Vg.set(t,n)),n}static clear(e){Vg.delete(e)}detach(){this.vGroup?.parentNode&&($(this.vGroup).interrupt().selectAll(`*`).interrupt(),this.vGroup.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove()),this.vGroup.remove()),this.hGroup?.parentNode&&($(this.hGroup).interrupt().selectAll(`*`).interrupt(),this.hGroup.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove()),this.hGroup.remove())}attach(e,t){if(!this.initialized)this.vGroup=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),this.vGroup.setAttribute(`class`,`bc-axis-service-v`),this.hGroup=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),this.hGroup.setAttribute(`class`,`bc-axis-service-h`),e.appendChild(this.vGroup),e.appendChild(this.hGroup),this.vChart=new Lg($(this.vGroup)),this.hChart=new Ag($(this.hGroup)),this.initialized=!0;else{for(let e of[this.vGroup,this.hGroup])$(e).interrupt(),e.removeAttribute(`transform`),$(e).selectAll(`.tick`).interrupt();if(e.appendChild(this.vGroup),e.appendChild(this.hGroup),t&&(Math.abs(t.dx)>=1||Math.abs(t.dy)>=1)){let{dx:e,dy:n}=t;for(let t of[this.vGroup,this.hGroup]){t.setAttribute(`transform`,`translate(${e},${n})`);let r=tg();r>0?$(t).transition().duration(r).attrTween(`transform`,()=>{let t=_c(e,0),r=_c(n,0);return e=>`translate(${t(e)},${r(e)})`}):t.removeAttribute(`transform`)}}}}update(e){let t=e.order??`vertical-first`;t===`horizontal-first`?(this.updateHorizontal(e.horizontal),this.updateVertical(e.vertical)):(this.updateVertical(e.vertical),this.updateHorizontal(e.horizontal)),t===`horizontal-first`?this.hGroup&&this.vGroup&&this.hGroup.parentNode&&this.hGroup.parentNode.insertBefore(this.hGroup,this.vGroup):this.vGroup&&this.hGroup&&this.vGroup.parentNode&&this.vGroup.parentNode.insertBefore(this.vGroup,this.hGroup)}updateVertical(e){if(!this.vChart||!this.vGroup)return;if(!e){this.vGroup.style.display=`none`;return}this.vGroup.style.display=``;let t=e.options;this.vChart.config({scale:e.scale,direction:t.direction??`left`,showAxis:t.showAxis??!0,showTicks:t.showTicks??!1,gridStyle:t.gridStyle??`dashed`,gridWidth:t.gridWidth??0,height:e.height,ticks:t.ticks??null,numberFormat:t.numberFormat??null,labelPosition:t.labelPosition??`auto`,topPadding:t.topPadding??0,tickFormat:t.tickFormat??null}),this.vChart.draw([{placeholder:!0}]);let n=this.vGroup.querySelector(`.bc-axis-vertical`);n&&(t.direction??`left`)===`right`?n.setAttribute(`transform`,`translate(${t.gridWidth??0},0)`):n&&n.removeAttribute(`transform`)}updateHorizontal(e){if(!this.hChart||!this.hGroup)return;if(!e){this.hGroup.style.display=`none`;return}this.hGroup.style.display=``;let t=e.options,n=e.scale,r=Bg(n)?n.domain():[];this.hChart.config({scale:n,height:e.height,tickPosition:t.tickPosition??`below`,showAxis:t.showAxis??!0,showTicks:t.showTicks??!1,gridStyle:t.gridStyle??`dashed`,ticks:t.ticks??null,numberFormat:t.numberFormat??null,width:t.width??0,labels:r,labelPosition:t.labelPosition??`auto`,labelRotation:t.labelRotation??`auto`,zeroY:t.zeroY??null,tickFormat:t.tickFormat??null}),this.hChart.draw([{placeholder:!0}])}destroy(){this.detach(),this.vChart=null,this.hChart=null,this.vGroup=null,this.hGroup=null,this.initialized=!1,Vg.delete(this.container)}},Gg=Math.min,Kg=Math.max,qg=Math.round,Jg=e=>({x:e,y:e}),Yg={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function Xg(e,t,n){return Kg(e,Gg(t,n))}function Zg(e,t){return typeof e==`function`?e(t):e}function Qg(e){return e.split(`-`)[0]}function $g(e){return e.split(`-`)[1]}function e_(e){return e===`x`?`y`:`x`}function t_(e){return e===`y`?`height`:`width`}function n_(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function r_(e){return e_(n_(e))}function i_(e,t,n){n===void 0&&(n=!1);let r=$g(e),i=r_(e),a=t_(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=p_(o)),[o,p_(o)]}function a_(e){let t=p_(e);return[o_(e),t,o_(t)]}function o_(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var s_=[`left`,`right`],c_=[`right`,`left`],l_=[`top`,`bottom`],u_=[`bottom`,`top`];function d_(e,t,n){switch(e){case`top`:case`bottom`:return n?t?c_:s_:t?s_:c_;case`left`:case`right`:return t?l_:u_;default:return[]}}function f_(e,t,n,r){let i=$g(e),a=d_(Qg(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(o_)))),a}function p_(e){let t=Qg(e);return Yg[t]+e.slice(t.length)}function m_(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function h_(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:m_(e)}function g_(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function __(e,t,n){let{reference:r,floating:i}=e,a=n_(t),o=r_(t),s=t_(o),c=Qg(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=$g(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function v_(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=Zg(t,e),p=h_(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=g_(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=g_(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var y_=50,b_=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:v_},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=__(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<y_&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=__(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},x_=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=Zg(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=Qg(r),_=n_(o),v=Qg(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[p_(o)]:a_(o)),x=p!==`none`;!d&&x&&b.push(...f_(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=i_(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===n_(t)||T.every(e=>n_(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=n_(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}},S_=new Set([`left`,`top`]);async function C_(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=Qg(n),s=$g(n),c=n_(n)===`y`,l=S_.has(o)?-1:1,u=a&&c?-1:1,d=Zg(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var w_=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await C_(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},T_=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=Zg(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=n_(i),p=e_(f),m=u[p],h=u[f],g=(e,t)=>Xg(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}};function E_(){return typeof window<`u`}function D_(e){return A_(e)?(e.nodeName||``).toLowerCase():`#document`}function O_(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function k_(e){return((A_(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function A_(e){return E_()?e instanceof Node||e instanceof O_(e).Node:!1}function j_(e){return E_()?e instanceof Element||e instanceof O_(e).Element:!1}function M_(e){return E_()?e instanceof HTMLElement||e instanceof O_(e).HTMLElement:!1}function N_(e){return!E_()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof O_(e).ShadowRoot}function P_(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=G_(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function F_(e){return/^(table|td|th)$/.test(D_(e))}function I_(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var L_=/transform|translate|scale|rotate|perspective|filter/,R_=/paint|layout|strict|content/,z_=e=>!!e&&e!==`none`,B_;function V_(e){let t=j_(e)?G_(e):e;return z_(t.transform)||z_(t.translate)||z_(t.scale)||z_(t.rotate)||z_(t.perspective)||!U_()&&(z_(t.backdropFilter)||z_(t.filter))||L_.test(t.willChange||``)||R_.test(t.contain||``)}function H_(e){let t=q_(e);for(;M_(t)&&!W_(t);){if(V_(t))return t;if(I_(t))return null;t=q_(t)}return null}function U_(){return B_??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),B_}function W_(e){return/^(html|body|#document)$/.test(D_(e))}function G_(e){return O_(e).getComputedStyle(e)}function K_(e){return j_(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function q_(e){if(D_(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||N_(e)&&e.host||k_(e);return N_(t)?t.host:t}function J_(e){let t=q_(e);return W_(t)?(e.ownerDocument||e).body:M_(t)&&P_(t)?t:J_(t)}function Y_(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=J_(e),i=r===e.ownerDocument?.body,a=O_(r);if(i){let e=X_(a);return t.concat(a,a.visualViewport||[],P_(r)?r:[],e&&n?Y_(e):[])}return t.concat(r,Y_(r,[],n))}function X_(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function Z_(e){let t=G_(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=M_(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=qg(n)!==a||qg(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function Q_(e){return j_(e)?e:e.contextElement}function $_(e){let t=Q_(e);if(!M_(t))return Jg(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=Z_(t),o=(a?qg(n.width):n.width)/r,s=(a?qg(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var ev=Jg(0);function tv(e){let t=O_(e);return!U_()||!t.visualViewport?ev:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function nv(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===O_(e)}function rv(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=Q_(e),o=Jg(1);t&&(r?j_(r)&&(o=$_(r)):o=$_(e));let s=nv(a,n,r)?tv(a):Jg(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=O_(a),t=j_(r)?O_(r):r,n=e,i=X_(n);for(;i&&t!==n;){let e=$_(i),t=i.getBoundingClientRect(),r=G_(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=O_(i),i=X_(n)}}return g_({width:u,height:d,x:c,y:l})}function iv(e,t){let n=K_(e).scrollLeft;return t?t.left+n:rv(k_(e)).left+n}function av(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-iv(e,n),y:n.top+t.scrollTop}}function ov(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=k_(r),s=t?I_(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=Jg(1),u=Jg(0),d=M_(r);if((d||!a)&&((D_(r)!==`body`||P_(o))&&(c=K_(r)),d)){let e=rv(r);l=$_(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?av(o,c):Jg(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function sv(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function cv(e){let t=K_(e),n=e.ownerDocument.body,r=Kg(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=Kg(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+iv(e),o=-t.scrollTop;return G_(n).direction===`rtl`&&(a+=Kg(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var lv=25;function uv(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=O_(e),a=k_(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!U_()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(iv(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=lv&&(s-=o)}return{width:s,height:c,x:l,y:u}}function dv(e,t){let n=rv(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=$_(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function fv(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=uv(e,n,t);else if(t===`document`)r=cv(k_(e));else if(j_(t))r=dv(t,n);else{let n=tv(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return g_(r)}function pv(e,t){let n=t.get(e);if(n)return n;let r=Y_(e,[],!1).filter(e=>j_(e)&&D_(e)!==`body`),i=null,a=G_(e).position===`fixed`,o=a?q_(e):e;for(;j_(o)&&!W_(o);){let e=G_(o),t=V_(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=q_(o)}return t.set(e,r),r}function mv(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?I_(t)?[]:pv(t,this._c):[].concat(n),r],o=fv(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=fv(t,a[e],i);s=Kg(n.top,s),c=Gg(n.right,c),l=Gg(n.bottom,l),u=Kg(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function hv(e){let{width:t,height:n}=Z_(e);return{width:t,height:n}}function gv(e,t,n){let r=M_(t),i=k_(t),a=n===`fixed`,o=rv(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=Jg(0);if((r||!a)&&((D_(t)!==`body`||P_(i))&&(s=K_(t)),r)){let e=rv(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=iv(i));let l=i&&!r&&!a?av(i,s):Jg(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function _v(e){return G_(e).position===`static`}function vv(e,t){if(!M_(e)||G_(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return k_(e)===n&&(n=n.ownerDocument.body),n}function yv(e,t){let n=O_(e);if(I_(e))return n;if(!M_(e)){let t=q_(e);for(;t&&!W_(t);){if(j_(t)&&!_v(t))return t;t=q_(t)}return n}let r=vv(e,t);for(;r&&F_(r)&&_v(r);)r=vv(r,t);return r&&W_(r)&&_v(r)&&!V_(r)?n:r||H_(e)||n}var bv=async function(e){let t=this.getOffsetParent||yv,n=this.getDimensions,r=await n(e.floating);return{reference:gv(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function xv(e){return G_(e).direction===`rtl`}var Sv={convertOffsetParentRelativeRectToViewportRelativeRect:ov,getDocumentElement:k_,getClippingRect:mv,getOffsetParent:yv,getElementRects:bv,getClientRects:sv,getDimensions:hv,getScale:$_,isElement:j_,isRTL:xv},Cv=w_,wv=T_,Tv=x_,Ev=(e,t,n)=>{let r=new Map,i=n??{},a={...Sv,...i.platform,_c:r};return b_(e,t,{...i,platform:a})},Dv=`bc-tooltip`;function Ov(){if(document.getElementById(`bc-tooltip-styles`))return;let e=document.createElement(`style`);e.id=`bc-tooltip-styles`,e.textContent=`
|
|
313
|
-
.${
|
|
310
|
+
`}function mt(){return`\r`}function ht(){return` `}function gt(e){return String.fromCharCode(parseInt(e,16))}function _t(e){Et(`Unknown escape sequence \\`+e)}function vt(e){return e}function yt(e){return e}function bt(e){return e.trim()}function xt(e){return e.trim()}let q=t.peg$currPos|0,J=q,St=[{line:1,column:1}],Ct=q,wt=t.peg$maxFailExpected||[],Y=t.peg$silentFails|0,Tt;if(t.startRule){if(!(t.startRule in i))throw Error(`Can't start parsing from rule "`+t.startRule+`".`);a=i[t.startRule]}function Et(e,t){throw t=t===void 0?Pt(J,q):t,Ft(e,t)}function Dt(t=q){let n=e.codePointAt(t);return n===void 0?``:String.fromCodePoint(n)}function Ot(e,t){return{type:`literal`,text:e,ignoreCase:t}}function kt(e,t,n,r){return{type:`class`,parts:e,inverted:t,ignoreCase:n,unicode:r}}function At(){return{type:`any`}}function jt(){return{type:`end`}}function Mt(e){return{type:`other`,description:e}}function Nt(t){let n=St[t],r;if(n)return n;if(t>=St.length)r=St.length-1;else for(r=t;!St[--r];);for(n=St[r],n={line:n.line,column:n.column};r<t;)e.charCodeAt(r)===10?(n.line++,n.column=1):n.column++,r++;return St[t]=n,n}function Pt(e,t,n){let i=Nt(e),a=Nt(t),o={source:r,start:{offset:e,line:i.line,column:i.column},end:{offset:t,line:a.line,column:a.column}};return n&&r&&typeof r.offset==`function`&&(o.start=r.offset(o.start),o.end=r.offset(o.end)),o}function X(e){q<Ct||(q>Ct&&(Ct=q,wt=[]),wt.push(e))}function Ft(e,t){return new O(e,null,null,t)}function It(e,t,n){return new O(O.buildMessage(e,t),e,t,n)}function Lt(){let t,r,i,a,s,c,l,u;if(t=q,Z(),e.substr(q,5)===o?(r=o,q+=5):(r=n,Y===0&&X(j)),r!==n){if(i=_n(),i!==n){if(a=on(),a!==n){if(Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s!==n){for(c=[],l=Rt();l!==n;)c.push(l),l=Rt();l=hn(),e.charCodeAt(q)===125?(u=`}`,q++):(u=n,Y===0&&X(N)),u===n?(q=t,t=n):(Z(),J=t,t=Oe(a,c,l))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function Rt(){let t,r,i,a,o;if(t=q,r=hn(),i=zt(),i===n&&(i=Gt(),i===n&&(i=Kt(),i===n&&(i=qt(),i===n&&(i=Yt(),i===n&&(i=Xt(),i===n&&(i=Jt(),i===n&&(i=Zt(),i===n&&(i=Qt(),i===n&&(i=$t(),i===n&&(i=nn())))))))))),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=ke(r,i,o)}else q=t,t=n;return t}function zt(){let t,r,i,a,o,c;if(t=q,e.substr(q,4)===s?(r=s,q+=4):(r=n,Y===0&&X(F)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=Bt();o!==n;)a.push(o),o=Bt();o=hn(),e.charCodeAt(q)===125?(c=`}`,q++):(c=n,Y===0&&X(N)),c===n?(q=t,t=n):(J=t,t=Ae(a,o))}else q=t,t=n}else q=t,t=n;return t}function Bt(){let t,r,i,a,o;if(t=q,r=hn(),i=Ut(),i===n&&(i=Vt()),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=je(r,i,o)}else q=t,t=n;return t}function Vt(){let t,r,i,a,o,s,c,l;if(t=q,r=Ht(),r!==n){if(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i!==n){if(Z(),a=an(),a!==n){if(o=[],s=q,e.charCodeAt(q)===44?(c=`,`,q++):(c=n,Y===0&&X(L)),c===n?(q=s,s=n):(Z(),l=an(),l===n?(q=s,s=n):(J=s,s=Me(r,a,l))),s!==n)for(;s!==n;)o.push(s),s=q,e.charCodeAt(q)===44?(c=`,`,q++):(c=n,Y===0&&X(L)),c===n?(q=s,s=n):(Z(),l=an(),l===n?(q=s,s=n):(J=s,s=Me(r,a,l)));else o=n;o===n?(q=t,t=n):(J=t,t=Ne(r,a,o))}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,r=Ht(),r===n?(q=t,t=n):(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=Pe(r,a))))),t}function Ht(){let e,t;return e=q,t=cn(),t!==n&&(J=e,t=Fe(t)),e=t,e===n&&(e=q,t=on(),t!==n&&(J=e,t=Ie(t)),e=t),e}function Ut(){let t,r,i,a;return t=q,r=Wt(),r===n?(q=t,t=n):(e.charCodeAt(q)===9?(i=` `,q++):(i=n,Y===0&&X(R)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=Le(r,a)))),t}function Wt(){let t,r,i,a;if(t=q,r=q,i=[],a=e.charAt(q),v.test(a)?q++:(a=n,Y===0&&X(z)),a!==n)for(;a!==n;)i.push(a),a=e.charAt(q),v.test(a)?q++:(a=n,Y===0&&X(z));else i=n;return r=i===n?i:e.substring(r,q),r!==n&&(J=t,r=Re(r)),t=r,t}function Gt(){let t,r,i,a,o,s,l,u;if(t=q,e.substr(q,8)===c?(r=c,q+=8):(r=n,Y===0&&X(B)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],l=tn();l!==n;)s.push(l),l=tn();l=hn(),e.charCodeAt(q)===125?(u=`}`,q++):(u=n,Y===0&&X(N)),u===n?(q=t,t=n):(J=t,t=ze(a,s,l))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,8)===c?(r=c,q+=8):(r=n,Y===0&&X(B)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Be()))),t}function Kt(){let t,r,i,a,o,s,c,u,d;if(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(o=Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s!==n){for(c=[],u=tn();u!==n;)c.push(u),u=tn();u=hn(),e.charCodeAt(q)===125?(d=`}`,q++):(d=n,Y===0&&X(N)),d===n?(q=t,t=n):(J=t,t=Ve(a,c,u))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r===n?(q=t,t=n):(i=_n(),i===n?(q=t,t=n):(a=cn(),a===n?(q=t,t=n):(o=q,Y++,s=q,c=Z(),e.charCodeAt(q)===123?(u=`{`,q++):(u=n,Y===0&&X(M)),u===n?(q=s,s=n):(c=[c,u],s=c),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=t,t=n):(J=t,t=He(a))))),t===n&&(t=q,e.substr(q,9)===l?(r=l,q+=9):(r=n,Y===0&&X(V)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Ue())))),t}function qt(){let t,r,i,a,o,s,c,l,d,f;if(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(te)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(o=_n(),o!==n){if(s=cn(),s!==n){if(Z(),e.charCodeAt(q)===123?(c=`{`,q++):(c=n,Y===0&&X(M)),c!==n){for(l=[],d=tn();d!==n;)l.push(d),d=tn();d=hn(),e.charCodeAt(q)===125?(f=`}`,q++):(f=n,Y===0&&X(N)),f===n?(q=t,t=n):(J=t,t=We(a,s,l,d))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(te)),r===n?(q=t,t=n):(i=_n(),i===n?(q=t,t=n):(a=cn(),a===n?(q=t,t=n):(o=Z(),e.charCodeAt(q)===123?(s=`{`,q++):(s=n,Y===0&&X(M)),s===n?(q=t,t=n):(J=t,t=Ge())))),t===n&&(t=q,e.substr(q,9)===u?(r=u,q+=9):(r=n,Y===0&&X(te)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Ke())))),t}function Jt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,10)===d?(r=d,q+=10):(r=n,Y===0&&X(ne)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=qe(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,10)===d?(r=d,q+=10):(r=n,Y===0&&X(ne)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Je()))),t}function Yt(){let t,r,i,a,o,s;if(t=q,e.substr(q,5)===f?(r=f,q+=5):(r=n,Y===0&&X(re)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=tn();o!==n;)a.push(o),o=tn();o=hn(),e.charCodeAt(q)===125?(s=`}`,q++):(s=n,Y===0&&X(N)),s===n?(q=t,t=n):(J=t,t=Ye(a,o))}else q=t,t=n}else q=t,t=n;return t}function Xt(){let t,r,i,a,o,s;if(t=q,e.substr(q,4)===p?(r=p,q+=4):(r=n,Y===0&&X(ie)),r!==n){if(Z(),e.charCodeAt(q)===123?(i=`{`,q++):(i=n,Y===0&&X(M)),i!==n){for(a=[],o=tn();o!==n;)a.push(o),o=tn();o=hn(),e.charCodeAt(q)===125?(s=`}`,q++):(s=n,Y===0&&X(N)),s===n?(q=t,t=n):(J=t,t=Xe(a,o))}else q=t,t=n}else q=t,t=n;return t}function Zt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,6)===m?(r=m,q+=6):(r=n,Y===0&&X(ae)),r!==n){if(i=_n(),i!==n){if(a=cn(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=Ze(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t===n&&(t=q,e.substr(q,6)===m?(r=m,q+=6):(r=n,Y===0&&X(ae)),r===n?(q=t,t=n):(i=Z(),e.charCodeAt(q)===123?(a=`{`,q++):(a=n,Y===0&&X(M)),a===n?(q=t,t=n):(J=t,t=Qe()))),t}function Qt(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,5)===h?(r=h,q+=5):(r=n,Y===0&&X(oe)),r!==n){if(i=_n(),i!==n){if(a=cn(),a===n&&(a=null),Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=en();c!==n;)s.push(c),c=en();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=$e(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function $t(){let t,r,i,a,o,s,c,l;if(t=q,e.substr(q,9)===g?(r=g,q+=9):(r=n,Y===0&&X(H)),r!==n){if(i=_n(),i!==n){if(a=on(),a!==n){if(Z(),e.charCodeAt(q)===123?(o=`{`,q++):(o=n,Y===0&&X(M)),o!==n){for(s=[],c=tn();c!==n;)s.push(c),c=tn();c=hn(),e.charCodeAt(q)===125?(l=`}`,q++):(l=n,Y===0&&X(N)),l===n?(q=t,t=n):(J=t,t=et(a,s,c))}else q=t,t=n}else q=t,t=n}else q=t,t=n}else q=t,t=n;return t}function en(){let t,r,i,a,o;if(t=q,r=hn(),i=zt(),i===n&&(i=Gt(),i===n&&(i=Kt(),i===n&&(i=qt(),i===n&&(i=Yt(),i===n&&(i=Xt(),i===n&&(i=Jt(),i===n&&(i=Zt(),i===n&&(i=$t(),i===n&&(i=nn()))))))))),i!==n){for(a=[],o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o!==n;)a.push(o),o=e.charAt(q),_.test(o)?q++:(o=n,Y===0&&X(P));o=gn(),o===n&&(o=null),mn(),J=t,t=tt(r,i,o)}else q=t,t=n;return t}function tn(){let t,r,i,a;if(t=q,Z(),r=nn(),r!==n){for(i=[],a=e.charAt(q),_.test(a)?q++:(a=n,Y===0&&X(P));a!==n;)i.push(a),a=e.charAt(q),_.test(a)?q++:(a=n,Y===0&&X(P));a=gn(),a===n&&(a=null),mn(),J=t,t=nt(r,a)}else q=t,t=n;return t}function nn(){let t,r,i,a;return t=q,r=rn(),r===n?(q=t,t=n):(Z(),e.charCodeAt(q)===61?(i=`=`,q++):(i=n,Y===0&&X(I)),i===n?(q=t,t=n):(Z(),a=an(),a===n?(q=t,t=n):(J=t,t=rt(r,a)))),t}function rn(){let e;return e=cn(),e===n&&(e=on()),e}function an(){let t,r,i;return t=q,r=sn(),r===n?(q=t,t=n):(e.charCodeAt(q)===37?(i=`%`,q++):(i=n,Y===0&&X(se)),i===n?(q=t,t=n):(J=t,t=it(r))),t===n&&(t=q,r=sn(),r!==n&&(J=t,r=at(r)),t=r,t===n&&(t=q,r=cn(),r!==n&&(J=t,r=ot(r)),t=r,t===n&&(t=q,r=on(),r!==n&&(J=t,r=st(r)),t=r))),t}function on(){let t,r,i,a,o;if(Y++,t=q,r=q,i=e.charAt(q),y.test(i)?q++:(i=n,Y===0&&X(le)),i!==n){for(a=[],o=e.charAt(q),b.test(o)?q++:(o=n,Y===0&&X(ue));o!==n;)a.push(o),o=e.charAt(q),b.test(o)?q++:(o=n,Y===0&&X(ue));i=[i,a],r=i}else q=r,r=n;return t=r===n?r:e.substring(t,q),Y--,t===n&&(r=n,Y===0&&X(ce)),t}function sn(){let t,r,i,a,o,s,c,l,u,d;if(t=q,r=q,i=q,e.charCodeAt(q)===45?(a=`-`,q++):(a=n,Y===0&&X(de)),a===n&&(a=null),o=q,e.charCodeAt(q)===46?(s=`.`,q++):(s=n,Y===0&&X(U)),s!==n){if(c=[],l=e.charAt(q),x.test(l)?q++:(l=n,Y===0&&X(W)),l!==n)for(;l!==n;)c.push(l),l=e.charAt(q),x.test(l)?q++:(l=n,Y===0&&X(W));else c=n;c===n?(q=o,o=n):(s=[s,c],o=s)}else q=o,o=n;if(o===n){if(o=q,s=[],c=e.charAt(q),x.test(c)?q++:(c=n,Y===0&&X(W)),c!==n)for(;c!==n;)s.push(c),c=e.charAt(q),x.test(c)?q++:(c=n,Y===0&&X(W));else s=n;if(s!==n){if(c=q,e.charCodeAt(q)===46?(l=`.`,q++):(l=n,Y===0&&X(U)),l!==n){for(u=[],d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));d!==n;)u.push(d),d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));l=[l,u],c=l}else q=c,c=n;c===n&&(c=null),s=[s,c],o=s}else q=o,o=n}if(o!==n){if(s=q,c=e.charAt(q),S.test(c)?q++:(c=n,Y===0&&X(fe)),c!==n){if(l=e.charAt(q),C.test(l)?q++:(l=n,Y===0&&X(pe)),l===n&&(l=null),u=[],d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W)),d!==n)for(;d!==n;)u.push(d),d=e.charAt(q),x.test(d)?q++:(d=n,Y===0&&X(W));else u=n;u===n?(q=s,s=n):(c=[c,l,u],s=c)}else q=s,s=n;s===n&&(s=null),a=[a,o,s],i=a}else q=i,i=n;return r=i===n?i:e.substring(r,q),r!==n&&(J=t,r=ct(r)),t=r,t}function cn(){let t,r,i,a;if(Y++,t=q,e.charCodeAt(q)===34?(r=`"`,q++):(r=n,Y===0&&X(he)),r!==n){for(i=[],a=ln();a!==n;)i.push(a),a=ln();e.charCodeAt(q)===34?(a=`"`,q++):(a=n,Y===0&&X(he)),a===n?(q=t,t=n):(J=t,t=lt(i))}else q=t,t=n;return Y--,t===n&&(r=n,Y===0&&X(me)),t}function ln(){let t,r,i;return t=q,e.charCodeAt(q)===92?(r=`\\`,q++):(r=n,Y===0&&X(ge)),r===n?(q=t,t=n):(i=un(),i===n?(q=t,t=n):(J=t,t=ut(i))),t===n&&(t=e.charAt(q),w.test(t)?q++:(t=n,Y===0&&X(_e))),t}function un(){let t,r,i,a,o,s,c,l;return t=q,e.charCodeAt(q)===34?(r=`"`,q++):(r=n,Y===0&&X(he)),r!==n&&(J=t,r=dt()),t=r,t===n&&(t=q,e.charCodeAt(q)===92?(r=`\\`,q++):(r=n,Y===0&&X(ge)),r!==n&&(J=t,r=ft()),t=r,t===n&&(t=q,e.charCodeAt(q)===110?(r=`n`,q++):(r=n,Y===0&&X(ve)),r!==n&&(J=t,r=pt()),t=r,t===n&&(t=q,e.charCodeAt(q)===114?(r=`r`,q++):(r=n,Y===0&&X(ye)),r!==n&&(J=t,r=mt()),t=r,t===n&&(t=q,e.charCodeAt(q)===116?(r=`t`,q++):(r=n,Y===0&&X(be)),r!==n&&(J=t,r=ht()),t=r,t===n&&(t=q,e.charCodeAt(q)===117?(r=`u`,q++):(r=n,Y===0&&X(xe)),r===n?(q=t,t=n):(i=q,a=q,o=e.charAt(q),k.test(o)?q++:(o=n,Y===0&&X(Se)),o===n?(q=a,a=n):(s=e.charAt(q),k.test(s)?q++:(s=n,Y===0&&X(Se)),s===n?(q=a,a=n):(c=e.charAt(q),k.test(c)?q++:(c=n,Y===0&&X(Se)),c===n?(q=a,a=n):(l=e.charAt(q),k.test(l)?q++:(l=n,Y===0&&X(Se)),l===n?(q=a,a=n):(o=[o,s,c,l],a=o)))),i=a===n?a:e.substring(i,q),i===n?(q=t,t=n):(J=t,t=gt(i))),t===n&&(t=q,e.length>q?(r=e.charAt(q),q++):(r=n,Y===0&&X(G)),r!==n&&(J=t,r=_t(r)),t=r)))))),t}function dn(){let e;return e=fn(),e===n&&(e=pn()),e}function fn(){let t,r,i,a;if(t=q,e.substr(q,2)===`//`?(r=`//`,q+=2):(r=n,Y===0&&X(K)),r!==n){for(i=[],a=e.charAt(q),ee.test(a)?q++:(a=n,Y===0&&X(Ce));a!==n;)i.push(a),a=e.charAt(q),ee.test(a)?q++:(a=n,Y===0&&X(Ce));r=[r,i],t=r}else q=t,t=n;return t}function pn(){let t,r,i,a,o,s;if(t=q,e.substr(q,2)===`/*`?(r=`/*`,q+=2):(r=n,Y===0&&X(we)),r!==n){for(i=[],a=q,o=q,Y++,e.substr(q,2)===`*/`?(s=`*/`,q+=2):(s=n,Y===0&&X(Te)),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=a,a=n):(e.length>q?(s=e.charAt(q),q++):(s=n,Y===0&&X(G)),s===n?(q=a,a=n):(o=[o,s],a=o));a!==n;)i.push(a),a=q,o=q,Y++,e.substr(q,2)===`*/`?(s=`*/`,q+=2):(s=n,Y===0&&X(Te)),Y--,s===n?o=void 0:(q=o,o=n),o===n?(q=a,a=n):(e.length>q?(s=e.charAt(q),q++):(s=n,Y===0&&X(G)),s===n?(q=a,a=n):(o=[o,s],a=o));e.substr(q,2)===`*/`?(a=`*/`,q+=2):(a=n,Y===0&&X(Te)),a===n?(q=t,t=n):(r=[r,i,a],t=r)}else q=t,t=n;return t}function mn(){let t,r;for(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee));r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee));return Y--,t}function hn(){let e,t,r,i;for(e=q,t=[],r=q,mn(),i=gn(),i===n?(q=r,r=n):(J=r,r=vt(i));r!==n;)t.push(r),r=q,mn(),i=gn(),i===n?(q=r,r=n):(J=r,r=vt(i));return r=mn(),J=e,e=yt(t),e}function gn(){let t,r,i,a,o,s,c;if(t=q,e.substr(q,2)===`//`?(r=`//`,q+=2):(r=n,Y===0&&X(K)),r!==n){for(i=q,a=[],o=e.charAt(q),ee.test(o)?q++:(o=n,Y===0&&X(Ce));o!==n;)a.push(o),o=e.charAt(q),ee.test(o)?q++:(o=n,Y===0&&X(Ce));i=e.substring(i,q),J=t,t=bt(i)}else q=t,t=n;if(t===n){if(t=q,e.substr(q,2)===`/*`?(r=`/*`,q+=2):(r=n,Y===0&&X(we)),r!==n){for(i=q,a=[],o=q,s=q,Y++,e.substr(q,2)===`*/`?(c=`*/`,q+=2):(c=n,Y===0&&X(Te)),Y--,c===n?s=void 0:(q=s,s=n),s===n?(q=o,o=n):(e.length>q?(c=e.charAt(q),q++):(c=n,Y===0&&X(G)),c===n?(q=o,o=n):(s=[s,c],o=s));o!==n;)a.push(o),o=q,s=q,Y++,e.substr(q,2)===`*/`?(c=`*/`,q+=2):(c=n,Y===0&&X(Te)),Y--,c===n?s=void 0:(q=s,s=n),s===n?(q=o,o=n):(e.length>q?(c=e.charAt(q),q++):(c=n,Y===0&&X(G)),c===n?(q=o,o=n):(s=[s,c],o=s));i=e.substring(i,q),e.substr(q,2)===`*/`?(a=`*/`,q+=2):(a=n,Y===0&&X(Te)),a===n?(q=t,t=n):(J=t,t=xt(i))}else q=t,t=n}return t}function _n(){let t,r;if(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn()),r!==n)for(;r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());else t=n;return Y--,t===n&&(r=n,Y===0&&X(De)),t}function Z(){let t,r;for(Y++,t=[],r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());r!==n;)t.push(r),r=e.charAt(q),A.test(r)?q++:(r=n,Y===0&&X(Ee)),r===n&&(r=dn());return Y--,t}Tt=a();let vn=Tt!==n&&q===e.length;function yn(){throw Tt!==n&&q<e.length&&X(jt()),It(wt,Ct<e.length?Dt(Ct):null,Ct<e.length?Pt(Ct,Ct+1):Pt(Ct,Ct))}if(t.peg$library)return{peg$result:Tt,peg$currPos:q,peg$FAILED:n,peg$maxFailExpected:wt,peg$maxFailPos:Ct,peg$success:vn,peg$throw:vn?void 0:yn};if(vn)return Tt;yn()}function ee(e){try{return k(e)}catch(e){if(e instanceof Error&&`location`in e){let t=e.location,n=SyntaxError(`${e.message} at ${t.start.line}:${t.start.column}`);throw n.location=t,n}throw e}}function A(e){return e.replace(/(\d)\s+(?=\d)/g,`$1`)}function j(e){return A(e.replace(/^"(.*)"$/,`$1`)).replace(/%$/,``).trim()}function M(e){let t=j(e?.trim()??``);if(!t)return;let n=Number(t);return Number.isFinite(n)?n:void 0}var N={"\\":`\\\\`,'"':`\\"`,"\n":`\\n`,"\r":`\\r`," ":`\\t`},P={"\\":`\\`,'"':`"`,n:`
|
|
311
|
+
`,r:`\r`,t:` `};function F(e){return`"${e.replace(/[\\"\n\r\t]/g,e=>N[e])}"`}function I(e){return e.replace(/\\(u[0-9a-fA-F]{4}|[\\"nrt])/g,(e,t)=>t[0]===`u`?String.fromCharCode(parseInt(t.slice(1),16)):P[t])}function L(e){let t=e.trim();return t.length>=2&&t.startsWith(`"`)&&t.endsWith(`"`)?I(t.slice(1,-1)):t}function R(e){let t=[],n=``,r=0,i=!1;for(let a=0;a<e.length;a++){let o=e[a];if(i&&o===`\\`&&a+1<e.length){n+=o+e[++a];continue}if(o===`"`)i=!i;else if(!i&&o===`(`)r++;else if(!i&&o===`)`)r=Math.max(0,r-1);else if(o===`,`&&!i&&r===0){t.push(n),n=``;continue}n+=o}return t.push(n),t}var z=`"((?:[^"\\\\]|\\\\.)*)"`,B=RegExp(`^${z}\\s*=\\s*(.+)$`),V=RegExp(`^${z}\\s*=\\s*"([^"]*)"$`),te=RegExp(`^${z}\\s*=\\s*(.+)$`);function ne(e){let t=new Set;return e.map(e=>{let n=e;for(let r=2;t.has(n);r++)n=`${e} (${r})`;return t.add(n),n})}function re(e){let t=e.split(`
|
|
312
|
+
`).map(e=>e.trim()).filter(Boolean),n=[],r=[],i=t[0]?.match(/^series\s*=\s*(.+)$/);if(i){let e=R(i[1].trim()),r=[];for(let e=1;e<t.length;e++){let n=t[e].match(V),i=n??t[e].match(B);i&&r.push({cells:R(i[2]),label:I(i[1]),legacy:n!==null})}let a=e.length>1||!r.some(e=>e.legacy)?e.map(L):L(e[0]).split(`,`).map(e=>e.trim()),o=a.map(()=>[]);for(let e of r){n.push(e.label);for(let t=0;t<a.length;t++)o[t].push(M(e.cells[t]))}let s=a.map((e,t)=>({name:e,values:o[t]}));return{labels:ne(n),values:o[0]??[],series:s}}for(let e of t){let t=e.match(te);t&&(n.push(I(t[1])),r.push(M(t[2])))}return{labels:ne(n),values:r}}var ie=[{name:`Blueprint`,label:`Blueprint`,colors:[`#2563A0`,`#D4A63A`,`#C94044`,`#2D8659`,`#4B90CF`,`#163A65`]},{name:`BlueprintBold`,label:`Blueprint Bold`,colors:[`#2563A0`,`#DDF247`,`#C94044`,`#2D8659`,`#D4A63A`,`#163A65`]},{name:`JosefAlbers`,label:`Albers`,colors:[`#c00559`,`#de1f6c`,`#f3a20d`,`#f07a13`,`#de6716`]},{name:`Durorthod`,label:`Amber`,colors:[`#4b2b1f`,`#803c15`,`#c6782c`,`#ffa91d`,`#ebdf9a`]},{name:`X41`,label:`Berry`,colors:[`#411f6b`,`#783999`,`#be3979`,`#cc857d`,`#e2c6a6`]},{name:`Bright`,label:`Bright`,colors:[`#462255`,`#ff8811`,`#9dd9d2`,`#046e8f`,`#d44d5c`]},{name:`Cancri`,label:`Cancri`,colors:[`#343854`,`#8c384d`,`#c9002e`,`#d95e31`,`#f0c742`,`#e5dcd1`]},{name:`Ceres`,label:`Ceres`,colors:[`#2f3437`,`#4a5f71`,`#6f8ba0`,`#dbdddd`]},{name:`MarcChagall`,label:`Chagall`,colors:[`#3f6f76`,`#69b7ce`,`#c65840`,`#f4ce4b`,`#563d63`]},{name:`Pelewensis`,label:`Coral`,colors:[`#e2b000`,`#dde576`,`#2449a2`,`#809098`,`#303538`]},{name:`Deathmasks`,label:`Deathmasks`,colors:[`#926159`,`#94947b`,`#c7d2d8`,`#62b7c8`,`#43535c`,`#203648`]},{name:`Leucosternon`,label:`Deep Sea`,colors:[`#302e5b`,`#0e34b2`,`#207cf5`,`#9ec8ff`,`#e3e43a`]},{name:`Deelite`,label:`Deelite`,colors:[`#48448e`,`#8ccc58`,`#fc4d97`,`#bd2066`]},{name:`X10`,label:`Dusk`,colors:[`#383138`,`#5b4361`,`#846d86`,`#d8e0c0`,`#e3c58a`,`#a89e5e`]},{name:`Vitrixerand`,label:`Earth`,colors:[`#3d303e`,`#723f27`,`#9b6044`,`#b5804c`,`#facd9a`]},{name:`Egypt`,label:`Egypt`,colors:[`#dd5129`,`#0f7ba2`,`#43b284`,`#fab255`]},{name:`ElectronicNight`,label:`Electric Night`,colors:[`#cb54d6`,`#3e45c4`,`#3b3233`,`#362f78`,`#57b4ae`]},{name:`LutjanusSebae`,label:`Emperor`,colors:[`#dadedf`,`#a2bac5`,`#ce3d21`,`#992216`,`#59241e`]},{name:`Enara`,label:`Enara`,colors:[`#353535`,`#3d5983`,`#5a8a54`,`#cfb023`]},{name:`Camo871`,label:`Fiesta`,colors:[`#ffff14`,`#fea31d`,`#ce2d41`,`#3a3fa3`]},{name:`Folklore`,label:`Folklore`,colors:[`#343434`,`#5c5c5c`,`#bababa`,`#f8f8f8`]},{name:`Fritsch`,label:`Fritsch`,colors:[`#0f8d7b`,`#8942bd`,`#373333`,`#eadd17`]},{name:`AgSunset`,label:`Glow`,colors:[`#4b2991`,`#872ca2`,`#c0369d`,`#ea4f88`,`#fa7876`,`#f6a97a`,`#edd9a3`]},{name:`Harvey`,label:`Harvey`,colors:[`#c6d4d6`,`#274c4f`,`#a4432d`,`#b17c51`]},{name:`Heep`,label:`Heep`,colors:[`#466e9a`,`#e84d45`,`#35332f`,`#a1baac`]},{name:`Imperator`,label:`Imperator`,colors:[`#302e62`,`#0527b4`,`#555dfe`,`#e4e500`,`#b8980f`]},{name:`Klimt`,label:`Klimt`,colors:[`#df9ed4`,`#d52c50`,`#eacc62`,`#469d76`,`#39546e`,`#9936a3`]},{name:`KnickCity`,label:`Knick City`,colors:[`#213453`,`#ff6720`,`#707372`,`#c8c9c7`]},{name:`London`,label:`London`,colors:[`#bd241e`,`#e56b1e`,`#ffcd22`,`#223259`]},{name:`Lover`,label:`Lover`,colors:[`#b8396b`,`#ffd1d7`,`#e4dfb7`,`#76bae0`,`#b28f81`,`#54483e`]},{name:`Maya`,label:`Maya`,colors:[`#3d5a80`,`#98c1d9`,`#c7e1e2`,`#ee6c4d`,`#293241`]},{name:`X24`,label:`Mocha`,colors:[`#44302e`,`#7e5945`,`#bc927b`,`#e6dbd6`]},{name:`Camo873`,label:`Neon`,colors:[`#132f8a`,`#5a56c8`,`#fc7ead`,`#ffca3e`]},{name:`NetsCity`,label:`Nets City`,colors:[`#353535`,`#ffb81c`,`#da291c`,`#004c97`,`#418fde`]},{name:`Nodoubt`,label:`No Doubt`,colors:[`#385581`,`#6dbac6`,`#dac190`,`#c9052c`]},{name:`ClaesOldenburg`,label:`Oldenburg`,colors:[`#95b1c9`,`#263656`,`#698946`,`#f8d440`,`#c30014`]},{name:`Peacesells`,label:`Peace Sells`,colors:[`#9a5155`,`#483943`,`#ecc463`,`#a497b2`]},{name:`PabloPicasso`,label:`Picasso`,colors:[`#4e7989`,`#a9011b`,`#e4a826`,`#80944e`,`#dcd6b2`]},{name:`Bifasciatum`,label:`Reef`,colors:[`#36313d`,`#16407b`,`#2b7ff9`,`#9feaee`,`#6cbe50`]},{name:`SiameseDream`,label:`Siamese Dream`,colors:[`#e3dbd2`,`#413026`,`#a34d2c`,`#cd8e40`]},{name:`X115`,label:`Sienna`,colors:[`#203748`,`#633633`,`#8e442e`,`#e9b35e`,`#e4dda7`]},{name:`Sixers`,label:`Sixers`,colors:[`#888b8d`,`#e4d5d3`,`#003da5`,`#d50032`]},{name:`SolLeWitt`,label:`Sol LeWitt`,colors:[`#0a71b6`,`#f9c40a`,`#403131`,`#eb5432`,`#d6dedc`]},{name:`Sunset`,label:`Sunset`,colors:[`#41476b`,`#675478`,`#9e6374`,`#c67b6f`,`#de9b71`,`#efbc82`,`#eedba6`]},{name:`Sunset2`,label:`Sunset II`,colors:[`#254075`,`#61599d`,`#b46c79`,`#eb7f54`,`#ffb33d`]},{name:`Sunset3`,label:`Sunset III`,colors:[`#4f2355`,`#701c34`,`#a63228`,`#c7662a`,`#eba42b`]},{name:`Pal9`,label:`Tropical`,colors:[`#273b5b`,`#c1c243`,`#e73e26`,`#2e6657`,`#d7e4a3`,`#24a99c`]},{name:`Salvelinus`,label:`Trout`,colors:[`#e6452e`,`#e49a36`,`#f9dd4c`,`#5b4a4c`,`#303542`]},{name:`TheovanDoesburg`,label:`Van Doesburg`,colors:[`#bd748f`,`#3d578e`,`#bfab68`,`#dad7d0`,`#313433`]},{name:`Wizards`,label:`Wizards`,colors:[`#c8102e`,`#213453`,`#8d9093`,`#c8c9c7`]},{name:`FrancescoXanto`,label:`Xanto`,colors:[`#2c6aa5`,`#dcad00`,`#d8c67e`,`#c97f17`,`#578b55`]},{name:`Zeppelin`,label:`Zeppelin`,colors:[`#efdb15`,`#739c9c`,`#0d484c`,`#c71a08`]}],ae=Object.fromEntries(ie.map(e=>[e.name,e.colors]));function oe(e){if(!e)return;let t=ae[e];return t?[...t]:void 0}function H(){return ie}var{min:se,max:ce}=Math,le=(e,t=0,n=1)=>se(ce(t,e),n),ue=e=>{e._clipped=!1,e._unclipped=e.slice(0);for(let t=0;t<=3;t++)t<3?((e[t]<0||e[t]>255)&&(e._clipped=!0),e[t]=le(e[t],0,255)):t===3&&(e[t]=le(e[t],0,1));return e},de={};for(let e of[`Boolean`,`Number`,`String`,`Function`,`Array`,`Date`,`RegExp`,`Undefined`,`Null`])de[`[object ${e}]`]=e.toLowerCase();function U(e){return de[Object.prototype.toString.call(e)]||`object`}var W=(e,t=null)=>e.length>=3?Array.prototype.slice.call(e):U(e[0])==`object`&&t?t.split(``).filter(t=>e[0][t]!==void 0).map(t=>e[0][t]):e[0].slice(0),fe=e=>{if(e.length<2)return null;let t=e.length-1;return U(e[t])==`string`?e[t].toLowerCase():null},{PI:pe,min:me,max:he}=Math,ge=e=>Math.round(e*100)/100,_e=e=>Math.round(e*100)/100,ve=pe*2,ye=pe/3,be=pe/180,xe=180/pe;function Se(e){return[...e.slice(0,3).reverse(),...e.slice(3)]}var G={format:{},autodetect:[]},K=class{constructor(...e){let t=this;if(U(e[0])===`object`&&e[0].constructor&&e[0].constructor===this.constructor)return e[0];let n=fe(e),r=!1;if(!n){r=!0,G.sorted||=(G.autodetect=G.autodetect.sort((e,t)=>t.p-e.p),!0);for(let t of G.autodetect)if(n=t.test(...e),n)break}if(G.format[n])t._rgb=ue(G.format[n].apply(null,r?e:e.slice(0,-1)));else throw Error(`unknown format: `+e);t._rgb.length===3&&t._rgb.push(1)}toString(){return U(this.hex)==`function`?this.hex():`[${this._rgb.join(`,`)}]`}},Ce=`3.2.0`,we=(...e)=>new K(...e);we.version=Ce;var Te={aliceblue:`#f0f8ff`,antiquewhite:`#faebd7`,aqua:`#00ffff`,aquamarine:`#7fffd4`,azure:`#f0ffff`,beige:`#f5f5dc`,bisque:`#ffe4c4`,black:`#000000`,blanchedalmond:`#ffebcd`,blue:`#0000ff`,blueviolet:`#8a2be2`,brown:`#a52a2a`,burlywood:`#deb887`,cadetblue:`#5f9ea0`,chartreuse:`#7fff00`,chocolate:`#d2691e`,coral:`#ff7f50`,cornflowerblue:`#6495ed`,cornsilk:`#fff8dc`,crimson:`#dc143c`,cyan:`#00ffff`,darkblue:`#00008b`,darkcyan:`#008b8b`,darkgoldenrod:`#b8860b`,darkgray:`#a9a9a9`,darkgreen:`#006400`,darkgrey:`#a9a9a9`,darkkhaki:`#bdb76b`,darkmagenta:`#8b008b`,darkolivegreen:`#556b2f`,darkorange:`#ff8c00`,darkorchid:`#9932cc`,darkred:`#8b0000`,darksalmon:`#e9967a`,darkseagreen:`#8fbc8f`,darkslateblue:`#483d8b`,darkslategray:`#2f4f4f`,darkslategrey:`#2f4f4f`,darkturquoise:`#00ced1`,darkviolet:`#9400d3`,deeppink:`#ff1493`,deepskyblue:`#00bfff`,dimgray:`#696969`,dimgrey:`#696969`,dodgerblue:`#1e90ff`,firebrick:`#b22222`,floralwhite:`#fffaf0`,forestgreen:`#228b22`,fuchsia:`#ff00ff`,gainsboro:`#dcdcdc`,ghostwhite:`#f8f8ff`,gold:`#ffd700`,goldenrod:`#daa520`,gray:`#808080`,green:`#008000`,greenyellow:`#adff2f`,grey:`#808080`,honeydew:`#f0fff0`,hotpink:`#ff69b4`,indianred:`#cd5c5c`,indigo:`#4b0082`,ivory:`#fffff0`,khaki:`#f0e68c`,laserlemon:`#ffff54`,lavender:`#e6e6fa`,lavenderblush:`#fff0f5`,lawngreen:`#7cfc00`,lemonchiffon:`#fffacd`,lightblue:`#add8e6`,lightcoral:`#f08080`,lightcyan:`#e0ffff`,lightgoldenrod:`#fafad2`,lightgoldenrodyellow:`#fafad2`,lightgray:`#d3d3d3`,lightgreen:`#90ee90`,lightgrey:`#d3d3d3`,lightpink:`#ffb6c1`,lightsalmon:`#ffa07a`,lightseagreen:`#20b2aa`,lightskyblue:`#87cefa`,lightslategray:`#778899`,lightslategrey:`#778899`,lightsteelblue:`#b0c4de`,lightyellow:`#ffffe0`,lime:`#00ff00`,limegreen:`#32cd32`,linen:`#faf0e6`,magenta:`#ff00ff`,maroon:`#800000`,maroon2:`#7f0000`,maroon3:`#b03060`,mediumaquamarine:`#66cdaa`,mediumblue:`#0000cd`,mediumorchid:`#ba55d3`,mediumpurple:`#9370db`,mediumseagreen:`#3cb371`,mediumslateblue:`#7b68ee`,mediumspringgreen:`#00fa9a`,mediumturquoise:`#48d1cc`,mediumvioletred:`#c71585`,midnightblue:`#191970`,mintcream:`#f5fffa`,mistyrose:`#ffe4e1`,moccasin:`#ffe4b5`,navajowhite:`#ffdead`,navy:`#000080`,oldlace:`#fdf5e6`,olive:`#808000`,olivedrab:`#6b8e23`,orange:`#ffa500`,orangered:`#ff4500`,orchid:`#da70d6`,palegoldenrod:`#eee8aa`,palegreen:`#98fb98`,paleturquoise:`#afeeee`,palevioletred:`#db7093`,papayawhip:`#ffefd5`,peachpuff:`#ffdab9`,peru:`#cd853f`,pink:`#ffc0cb`,plum:`#dda0dd`,powderblue:`#b0e0e6`,purple:`#800080`,purple2:`#7f007f`,purple3:`#a020f0`,rebeccapurple:`#663399`,red:`#ff0000`,rosybrown:`#bc8f8f`,royalblue:`#4169e1`,saddlebrown:`#8b4513`,salmon:`#fa8072`,sandybrown:`#f4a460`,seagreen:`#2e8b57`,seashell:`#fff5ee`,sienna:`#a0522d`,silver:`#c0c0c0`,skyblue:`#87ceeb`,slateblue:`#6a5acd`,slategray:`#708090`,slategrey:`#708090`,snow:`#fffafa`,springgreen:`#00ff7f`,steelblue:`#4682b4`,tan:`#d2b48c`,teal:`#008080`,thistle:`#d8bfd8`,tomato:`#ff6347`,turquoise:`#40e0d0`,violet:`#ee82ee`,wheat:`#f5deb3`,white:`#ffffff`,whitesmoke:`#f5f5f5`,yellow:`#ffff00`,yellowgreen:`#9acd32`},Ee=/^#?([A-Fa-f0-9]{6}|[A-Fa-f0-9]{3})$/,De=/^#?([A-Fa-f0-9]{8}|[A-Fa-f0-9]{4})$/,Oe=e=>{if(e.match(Ee)){(e.length===4||e.length===7)&&(e=e.substr(1)),e.length===3&&(e=e.split(``),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]);let t=parseInt(e,16);return[t>>16,t>>8&255,t&255,1]}if(e.match(De)){(e.length===5||e.length===9)&&(e=e.substr(1)),e.length===4&&(e=e.split(``),e=e[0]+e[0]+e[1]+e[1]+e[2]+e[2]+e[3]+e[3]);let t=parseInt(e,16);return[t>>24&255,t>>16&255,t>>8&255,Math.round((t&255)/255*100)/100]}throw Error(`unknown hex color: ${e}`)},{round:ke}=Math,Ae=(...e)=>{let[t,n,r,i]=W(e,`rgba`),a=fe(e)||`auto`;i===void 0&&(i=1),a===`auto`&&(a=i<1?`rgba`:`rgb`),t=ke(t),n=ke(n),r=ke(r);let o=`000000`+(t<<16|n<<8|r).toString(16);o=o.substr(o.length-6);let s=`0`+ke(i*255).toString(16);switch(s=s.substr(s.length-2),a.toLowerCase()){case`rgba`:return`#${o}${s}`;case`argb`:return`#${s}${o}`;default:return`#${o}`}};K.prototype.name=function(){let e=Ae(this._rgb,`rgb`);for(let t of Object.keys(Te))if(Te[t]===e)return t.toLowerCase();return e},G.format.named=e=>{if(e=e.toLowerCase(),Te[e])return Oe(Te[e]);throw Error(`unknown color name: `+e)},G.autodetect.push({p:5,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&Te[e.toLowerCase()])return`named`}}),K.prototype.alpha=function(e,t=!1){return e!==void 0&&U(e)===`number`?t?(this._rgb[3]=e,this):new K([this._rgb[0],this._rgb[1],this._rgb[2],e],`rgb`):this._rgb[3]},K.prototype.clipped=function(){return this._rgb._clipped||!1};var je={Kn:18,labWhitePoint:`d65`,Xn:.95047,Yn:1,Zn:1.08883,t0:.137931034,t1:.206896552,t2:.12841855,t3:.008856452,kE:216/24389,kKE:8,kK:24389/27,RefWhiteRGB:{X:.95047,Y:1,Z:1.08883},MtxRGB2XYZ:{m00:.4124564390896922,m01:.21267285140562253,m02:.0193338955823293,m10:.357576077643909,m11:.715152155287818,m12:.11919202588130297,m20:.18043748326639894,m21:.07217499330655958,m22:.9503040785363679},MtxXYZ2RGB:{m00:3.2404541621141045,m01:-.9692660305051868,m02:.055643430959114726,m10:-1.5371385127977166,m11:1.8760108454466942,m12:-.2040259135167538,m20:-.498531409556016,m21:.041556017530349834,m22:1.0572251882231791},As:.9414285350000001,Bs:1.040417467,Cs:1.089532651,MtxAdaptMa:{m00:.8951,m01:-.7502,m02:.0389,m10:.2664,m11:1.7135,m12:-.0685,m20:-.1614,m21:.0367,m22:1.0296},MtxAdaptMaI:{m00:.9869929054667123,m01:.43230526972339456,m02:-.008528664575177328,m10:-.14705425642099013,m11:.5183602715367776,m12:.04004282165408487,m20:.15996265166373125,m21:.0492912282128556,m22:.9684866957875502}},Me=new Map([[`a`,[1.0985,.35585]],[`b`,[1.0985,.35585]],[`c`,[.98074,1.18232]],[`d50`,[.96422,.82521]],[`d55`,[.95682,.92149]],[`d65`,[.95047,1.08883]],[`e`,[1,1,1]],[`f2`,[.99186,.67393]],[`f7`,[.95041,1.08747]],[`f11`,[1.00962,.6435]],[`icc`,[.96422,.82521]]]);function Ne(e){let t=Me.get(String(e).toLowerCase());if(!t)throw Error(`unknown Lab illuminant `+e);je.labWhitePoint=e,je.Xn=t[0],je.Zn=t[1]}function Pe(){return je.labWhitePoint}var Fe=(...e)=>{e=W(e,`lab`);let[t,n,r]=e,[i,a,o]=Ie(t,n,r),[s,c,l]=Re(i,a,o);return[s,c,l,e.length>3?e[3]:1]},Ie=(e,t,n)=>{let{kE:r,kK:i,kKE:a,Xn:o,Yn:s,Zn:c}=je,l=(e+16)/116,u=.002*t+l,d=l-.005*n,f=u*u*u,p=d*d*d,m=f>r?f:(116*u-16)/i,h=e>a?((e+16)/116)**3:e/i,g=p>r?p:(116*d-16)/i;return[m*o,h*s,g*c]},Le=e=>{let t=Math.sign(e);return e=Math.abs(e),(e<=.0031308?e*12.92:1.055*e**(1/2.4)-.055)*t},Re=(e,t,n)=>{let{MtxAdaptMa:r,MtxAdaptMaI:i,MtxXYZ2RGB:a,RefWhiteRGB:o,Xn:s,Yn:c,Zn:l}=je,u=s*r.m00+c*r.m10+l*r.m20,d=s*r.m01+c*r.m11+l*r.m21,f=s*r.m02+c*r.m12+l*r.m22,p=o.X*r.m00+o.Y*r.m10+o.Z*r.m20,m=o.X*r.m01+o.Y*r.m11+o.Z*r.m21,h=o.X*r.m02+o.Y*r.m12+o.Z*r.m22,g=(e*r.m00+t*r.m10+n*r.m20)*(p/u),_=(e*r.m01+t*r.m11+n*r.m21)*(m/d),v=(e*r.m02+t*r.m12+n*r.m22)*(h/f),y=g*i.m00+_*i.m10+v*i.m20,b=g*i.m01+_*i.m11+v*i.m21,x=g*i.m02+_*i.m12+v*i.m22,S=Le(y*a.m00+b*a.m10+x*a.m20),C=Le(y*a.m01+b*a.m11+x*a.m21),w=Le(y*a.m02+b*a.m12+x*a.m22);return[S*255,C*255,w*255]},ze=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=He(t,n,r),[c,l,u]=Be(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function Be(e,t,n){let{Xn:r,Yn:i,Zn:a,kE:o,kK:s}=je,c=e/r,l=t/i,u=n/a,d=c>o?c**(1/3):(s*c+16)/116,f=l>o?l**(1/3):(s*l+16)/116,p=u>o?u**(1/3):(s*u+16)/116;return[116*f-16,500*(d-f),200*(f-p)]}function Ve(e){let t=Math.sign(e);return e=Math.abs(e),(e<=.04045?e/12.92:((e+.055)/1.055)**2.4)*t}var He=(e,t,n)=>{e=Ve(e/255),t=Ve(t/255),n=Ve(n/255);let{MtxRGB2XYZ:r,MtxAdaptMa:i,MtxAdaptMaI:a,Xn:o,Yn:s,Zn:c,As:l,Bs:u,Cs:d}=je,f=e*r.m00+t*r.m10+n*r.m20,p=e*r.m01+t*r.m11+n*r.m21,m=e*r.m02+t*r.m12+n*r.m22,h=o*i.m00+s*i.m10+c*i.m20,g=o*i.m01+s*i.m11+c*i.m21,_=o*i.m02+s*i.m12+c*i.m22,v=f*i.m00+p*i.m10+m*i.m20,y=f*i.m01+p*i.m11+m*i.m21,b=f*i.m02+p*i.m12+m*i.m22;return v*=h/l,y*=g/u,b*=_/d,f=v*a.m00+y*a.m10+b*a.m20,p=v*a.m01+y*a.m11+b*a.m21,m=v*a.m02+y*a.m12+b*a.m22,[f,p,m]};K.prototype.lab=function(){return ze(this._rgb)},Object.assign(we,{lab:(...e)=>new K(...e,`lab`),getLabWhitePoint:Pe,setLabWhitePoint:Ne}),G.format.lab=Fe,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`lab`),U(e)===`array`&&e.length===3)return`lab`}}),K.prototype.darken=function(e=1){let t=this,n=t.lab();return n[0]-=je.Kn*e,new K(n,`lab`).alpha(t.alpha(),!0)},K.prototype.brighten=function(e=1){return this.darken(-e)},K.prototype.darker=K.prototype.darken,K.prototype.brighter=K.prototype.brighten,K.prototype.get=function(e){let[t,n]=e.split(`.`),r=this[t]();if(n){let e=t.indexOf(n)-(t.substr(0,2)===`ok`?2:0);if(e>-1)return r[e];throw Error(`unknown channel ${n} in mode ${t}`)}return r};var{pow:Ue}=Math,We=1e-7,Ge=20;K.prototype.luminance=function(e,t=`rgb`){if(e!==void 0&&U(e)===`number`){if(e===0)return new K([0,0,0,this._rgb[3]],`rgb`);if(e===1)return new K([255,255,255,this._rgb[3]],`rgb`);let n=this.luminance(),r=Ge,i=(n,a)=>{let o=n.interpolate(a,.5,t),s=o.luminance();return Math.abs(e-s)<We||!r--?o:s>e?i(n,o):i(o,a)};return new K([...(n>e?i(new K([0,0,0]),this):i(this,new K([255,255,255]))).rgb(),this._rgb[3]])}return Ke(...this._rgb.slice(0,3))};var Ke=(e,t,n)=>(e=qe(e),t=qe(t),n=qe(n),.2126*e+.7152*t+.0722*n),qe=e=>(e/=255,e<=.03928?e/12.92:Ue((e+.055)/1.055,2.4)),Je={},Ye=(e,t,n=.5,...r)=>{let i=r[0]||`lrgb`;if(!Je[i]&&!r.length&&(i=Object.keys(Je)[0]),!Je[i])throw Error(`interpolation mode ${i} is not defined`);return U(e)!==`object`&&(e=new K(e)),U(t)!==`object`&&(t=new K(t)),Je[i](e,t,n).alpha(e.alpha()+n*(t.alpha()-e.alpha()))};K.prototype.mix=K.prototype.interpolate=function(e,t=.5,...n){return Ye(this,e,t,...n)},K.prototype.premultiply=function(e=!1){let t=this._rgb,n=t[3];return e?(this._rgb=[t[0]*n,t[1]*n,t[2]*n,n],this):new K([t[0]*n,t[1]*n,t[2]*n,n],`rgb`)};var{sin:Xe,cos:Ze}=Math,Qe=(...e)=>{let[t,n,r]=W(e,`lch`);return isNaN(r)&&(r=0),r*=be,[t,Ze(r)*n,Xe(r)*n]},$e=(...e)=>{e=W(e,`lch`);let[t,n,r]=e,[i,a,o]=Qe(t,n,r),[s,c,l]=Fe(i,a,o);return[s,c,l,e.length>3?e[3]:1]},et=(...e)=>$e(...Se(W(e,`hcl`))),{sqrt:tt,atan2:nt,round:rt}=Math,it=(...e)=>{let[t,n,r]=W(e,`lab`),i=tt(n*n+r*r),a=(nt(r,n)*xe+360)%360;return rt(i*1e4)===0&&(a=NaN),[t,i,a]},at=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=ze(t,n,r),[c,l,u]=it(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};K.prototype.lch=function(){return at(this._rgb)},K.prototype.hcl=function(){return Se(at(this._rgb))},Object.assign(we,{lch:(...e)=>new K(...e,`lch`),hcl:(...e)=>new K(...e,`hcl`)}),G.format.lch=$e,G.format.hcl=et,[`lch`,`hcl`].forEach(e=>G.autodetect.push({p:2,test:(...t)=>{if(t=W(t,e),U(t)===`array`&&t.length===3)return e}})),K.prototype.saturate=function(e=1){let t=this,n=t.lch();return n[1]+=je.Kn*e,n[1]<0&&(n[1]=0),new K(n,`lch`).alpha(t.alpha(),!0)},K.prototype.desaturate=function(e=1){return this.saturate(-e)},K.prototype.set=function(e,t,n=!1){let[r,i]=e.split(`.`),a=this[r]();if(i){let e=r.indexOf(i)-(r.substr(0,2)===`ok`?2:0);if(e>-1){if(U(t)==`string`)switch(t.charAt(0)){case`+`:a[e]+=+t;break;case`-`:a[e]+=+t;break;case`*`:a[e]*=+t.substr(1);break;case`/`:a[e]/=+t.substr(1);break;default:a[e]=+t}else if(U(t)===`number`)a[e]=t;else throw Error(`unsupported value for Color.set`);let i=new K(a,r);return n?(this._rgb=i._rgb,this):i}throw Error(`unknown channel ${i} in mode ${r}`)}return a},K.prototype.tint=function(e=.5,...t){return Ye(this,`white`,e,...t)},K.prototype.shade=function(e=.5,...t){return Ye(this,`black`,e,...t)},Je.rgb=(e,t,n)=>{let r=e._rgb,i=t._rgb;return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`rgb`)};var{sqrt:ot,pow:st}=Math;Je.lrgb=(e,t,n)=>{let[r,i,a]=e._rgb,[o,s,c]=t._rgb;return new K(ot(st(r,2)*(1-n)+st(o,2)*n),ot(st(i,2)*(1-n)+st(s,2)*n),ot(st(a,2)*(1-n)+st(c,2)*n),`rgb`)},Je.lab=(e,t,n)=>{let r=e.lab(),i=t.lab();return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`lab`)};var ct=(e,t,n,r)=>{let i,a;r===`hsl`?(i=e.hsl(),a=t.hsl()):r===`hsv`?(i=e.hsv(),a=t.hsv()):r===`hcg`?(i=e.hcg(),a=t.hcg()):r===`hsi`?(i=e.hsi(),a=t.hsi()):r===`lch`||r===`hcl`?(r=`hcl`,i=e.hcl(),a=t.hcl()):r===`oklch`&&(i=e.oklch().reverse(),a=t.oklch().reverse());let o,s,c,l,u,d;(r.substr(0,1)===`h`||r===`oklch`)&&([o,c,u]=i,[s,l,d]=a);let f,p,m,h;return!isNaN(o)&&!isNaN(s)?(h=s>o&&s-o>180?s-(o+360):s<o&&o-s>180?s+360-o:s-o,p=o+n*h):isNaN(o)?isNaN(s)?p=NaN:(p=s,(u==1||u==0)&&r!=`hsv`&&(f=l)):(p=o,(d==1||d==0)&&r!=`hsv`&&(f=c)),f===void 0&&(f=c+n*(l-c)),m=u+n*(d-u),r===`oklch`?new K([m,f,p],r):new K([p,f,m],r)},lt=(e,t,n)=>ct(e,t,n,`lch`);Je.lch=lt,Je.hcl=lt;var ut=e=>{if(U(e)==`number`&&e>=0&&e<=16777215)return[e>>16,e>>8&255,e&255,1];throw Error(`unknown num color: `+e)},dt=(...e)=>{let[t,n,r]=W(e,`rgb`);return(t<<16)+(n<<8)+r};K.prototype.num=function(){return dt(this._rgb)},Object.assign(we,{num:(...e)=>new K(...e,`num`)}),G.format.num=ut,G.autodetect.push({p:5,test:(...e)=>{if(e.length===1&&U(e[0])===`number`&&e[0]>=0&&e[0]<=16777215)return`num`}}),Je.num=(e,t,n)=>{let r=e.num();return new K(r+n*(t.num()-r),`num`)};var{floor:ft}=Math,pt=(...e)=>{e=W(e,`hcg`);let[t,n,r]=e,i,a,o;r*=255;let s=n*255;if(n===0)i=a=o=r;else{t===360&&(t=0),t>360&&(t-=360),t<0&&(t+=360),t/=60;let e=ft(t),c=t-e,l=r*(1-n),u=l+s*(1-c),d=l+s*c,f=l+s;switch(e){case 0:[i,a,o]=[f,d,l];break;case 1:[i,a,o]=[u,f,l];break;case 2:[i,a,o]=[l,f,d];break;case 3:[i,a,o]=[l,u,f];break;case 4:[i,a,o]=[d,l,f];break;case 5:[i,a,o]=[f,l,u]}}return[i,a,o,e.length>3?e[3]:1]},mt=(...e)=>{let[t,n,r]=W(e,`rgb`),i=me(t,n,r),a=he(t,n,r),o=a-i,s=o*100/255,c=i/(255-o)*100,l;return o===0?l=NaN:(t===a&&(l=(n-r)/o),n===a&&(l=2+(r-t)/o),r===a&&(l=4+(t-n)/o),l*=60,l<0&&(l+=360)),[l,s,c]};K.prototype.hcg=function(){return mt(this._rgb)},we.hcg=(...e)=>new K(...e,`hcg`),G.format.hcg=pt,G.autodetect.push({p:1,test:(...e)=>{if(e=W(e,`hcg`),U(e)===`array`&&e.length===3)return`hcg`}}),Je.hcg=(e,t,n)=>ct(e,t,n,`hcg`);var{cos:ht}=Math,gt=(...e)=>{e=W(e,`hsi`);let[t,n,r]=e,i,a,o;return isNaN(t)&&(t=0),isNaN(n)&&(n=0),t>360&&(t-=360),t<0&&(t+=360),t/=360,t<1/3?(o=(1-n)/3,i=(1+n*ht(ve*t)/ht(ye-ve*t))/3,a=1-(o+i)):t<2/3?(t-=1/3,i=(1-n)/3,a=(1+n*ht(ve*t)/ht(ye-ve*t))/3,o=1-(i+a)):(t-=2/3,a=(1-n)/3,o=(1+n*ht(ve*t)/ht(ye-ve*t))/3,i=1-(a+o)),i=le(r*i*3),a=le(r*a*3),o=le(r*o*3),[i*255,a*255,o*255,e.length>3?e[3]:1]},{min:_t,sqrt:vt,acos:yt}=Math,bt=(...e)=>{let[t,n,r]=W(e,`rgb`);t/=255,n/=255,r/=255;let i,a=_t(t,n,r),o=(t+n+r)/3,s=o>0?1-a/o:0;return s===0?i=NaN:(i=(t-n+(t-r))/2,i/=vt((t-n)*(t-n)+(t-r)*(n-r)),i=yt(i),r>n&&(i=ve-i),i/=ve),[i*360,s,o]};K.prototype.hsi=function(){return bt(this._rgb)},we.hsi=(...e)=>new K(...e,`hsi`),G.format.hsi=gt,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsi`),U(e)===`array`&&e.length===3)return`hsi`}}),Je.hsi=(e,t,n)=>ct(e,t,n,`hsi`);var xt=(...e)=>{e=W(e,`hsl`);let[t,n,r]=e,i,a,o;if(n===0)i=a=o=r*255;else{let e=[0,0,0],s=[0,0,0],c=r<.5?r*(1+n):r+n-r*n,l=2*r-c,u=t/360;e[0]=u+1/3,e[1]=u,e[2]=u-1/3;for(let t=0;t<3;t++)e[t]<0&&(e[t]+=1),e[t]>1&&--e[t],6*e[t]<1?s[t]=l+(c-l)*6*e[t]:2*e[t]<1?s[t]=c:3*e[t]<2?s[t]=l+(c-l)*(2/3-e[t])*6:s[t]=l;[i,a,o]=[s[0]*255,s[1]*255,s[2]*255]}return e.length>3?[i,a,o,e[3]]:[i,a,o,1]},q=(...e)=>{e=W(e,`rgba`);let[t,n,r]=e;t/=255,n/=255,r/=255;let i=me(t,n,r),a=he(t,n,r),o=(a+i)/2,s,c;return a===i?(s=0,c=NaN):s=o<.5?(a-i)/(a+i):(a-i)/(2-a-i),t==a?c=(n-r)/(a-i):n==a?c=2+(r-t)/(a-i):r==a&&(c=4+(t-n)/(a-i)),c*=60,c<0&&(c+=360),e.length>3&&e[3]!==void 0?[c,s,o,e[3]]:[c,s,o]};K.prototype.hsl=function(){return q(this._rgb)},we.hsl=(...e)=>new K(...e,`hsl`),G.format.hsl=xt,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsl`),U(e)===`array`&&e.length===3)return`hsl`}}),Je.hsl=(e,t,n)=>ct(e,t,n,`hsl`);var{floor:J}=Math,St=(...e)=>{e=W(e,`hsv`);let[t,n,r]=e,i,a,o;if(r*=255,n===0)i=a=o=r;else{t===360&&(t=0),t>360&&(t-=360),t<0&&(t+=360),t/=60;let e=J(t),s=t-e,c=r*(1-n),l=r*(1-n*s),u=r*(1-n*(1-s));switch(e){case 0:[i,a,o]=[r,u,c];break;case 1:[i,a,o]=[l,r,c];break;case 2:[i,a,o]=[c,r,u];break;case 3:[i,a,o]=[c,l,r];break;case 4:[i,a,o]=[u,c,r];break;case 5:[i,a,o]=[r,c,l]}}return[i,a,o,e.length>3?e[3]:1]},{min:Ct,max:wt}=Math,Y=(...e)=>{e=W(e,`rgb`);let[t,n,r]=e,i=Ct(t,n,r),a=wt(t,n,r),o=a-i,s,c,l;return l=a/255,a===0?(s=NaN,c=0):(c=o/a,t===a&&(s=(n-r)/o),n===a&&(s=2+(r-t)/o),r===a&&(s=4+(t-n)/o),s*=60,s<0&&(s+=360)),[s,c,l]};K.prototype.hsv=function(){return Y(this._rgb)},we.hsv=(...e)=>new K(...e,`hsv`),G.format.hsv=St,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`hsv`),U(e)===`array`&&e.length===3)return`hsv`}}),Je.hsv=(e,t,n)=>ct(e,t,n,`hsv`);function Tt(e,t){let n=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(t[0])||(t=t.map(e=>[e]));let r=t[0].length,i=t[0].map((e,n)=>t.map(e=>e[n])),a=e.map(e=>i.map(t=>Array.isArray(e)?e.reduce((e,n,r)=>e+n*(t[r]||0),0):t.reduce((t,n)=>t+n*e,0)));return n===1&&(a=a[0]),r===1?a.map(e=>e[0]):a}var Et=(...e)=>{e=W(e,`lab`);let[t,n,r,...i]=e,[a,o,s]=Dt([t,n,r]),[c,l,u]=Re(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]};function Dt(e){return Tt([[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],Tt([[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],e).map(e=>e**3))}var Ot=(...e)=>{let[t,n,r,...i]=W(e,`rgb`);return[...kt(He(t,n,r)),...i.length>0&&i[0]<1?[i[0]]:[]]};function kt(e){return Tt([[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],Tt([[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],e).map(e=>Math.cbrt(e)))}K.prototype.oklab=function(){return Ot(this._rgb)},Object.assign(we,{oklab:(...e)=>new K(...e,`oklab`)}),G.format.oklab=Et,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`oklab`),U(e)===`array`&&e.length===3)return`oklab`}}),Je.oklab=(e,t,n)=>{let r=e.oklab(),i=t.oklab();return new K(r[0]+n*(i[0]-r[0]),r[1]+n*(i[1]-r[1]),r[2]+n*(i[2]-r[2]),`oklab`)},Je.oklch=(e,t,n)=>ct(e,t,n,`oklch`);var{pow:At,sqrt:jt,PI:Mt,cos:Nt,sin:Pt,atan2:X}=Math,Ft=(e,t=`lrgb`,n=null)=>{let r=e.length;n||=Array.from(Array(r)).map(()=>1);let i=r/n.reduce(function(e,t){return e+t});if(n.forEach((e,t)=>{n[t]*=i}),e=e.map(e=>new K(e)),t===`lrgb`)return It(e,n);let a=e.shift(),o=a.get(t),s=[],c=0,l=0;for(let e=0;e<o.length;e++)if(o[e]=(o[e]||0)*n[0],s.push(isNaN(o[e])?0:n[0]),t.charAt(e)===`h`&&!isNaN(o[e])){let t=o[e]/180*Mt;c+=Nt(t)*n[0],l+=Pt(t)*n[0]}let u=a.alpha()*n[0];e.forEach((e,r)=>{let i=e.get(t);u+=e.alpha()*n[r+1];for(let e=0;e<o.length;e++)if(!isNaN(i[e])){if(s[e]+=n[r+1],t.charAt(e)===`h`){let t=i[e]/180*Mt;c+=Nt(t)*n[r+1],l+=Pt(t)*n[r+1]}else o[e]+=i[e]*n[r+1]}});for(let e=0;e<o.length;e++)if(t.charAt(e)===`h`){let t=X(l/s[e],c/s[e])/Mt*180;for(;t<0;)t+=360;for(;t>=360;)t-=360;o[e]=t}else o[e]=o[e]/s[e];return u/=r,new K(o,t).alpha(u>.99999?1:u,!0)},It=(e,t)=>{let n=e.length,r=[0,0,0,0];for(let i=0;i<e.length;i++){let a=e[i],o=t[i]/n,s=a._rgb;r[0]+=At(s[0],2)*o,r[1]+=At(s[1],2)*o,r[2]+=At(s[2],2)*o,r[3]+=s[3]*o}return r[0]=jt(r[0]),r[1]=jt(r[1]),r[2]=jt(r[2]),r[3]>.9999999&&(r[3]=1),new K(ue(r))},{pow:Lt}=Math;function Rt(e){let t=`rgb`,n=we(`#ccc`),r=0,i=[0,1],a=[0,1],o=[],s=[0,0],c=!1,l=[],u=!1,d=0,f=1,p=!1,m={},h=!0,g=1,_=function(e){if(e||=[`#fff`,`#000`],e&&U(e)===`string`&&we.brewer&&we.brewer[e.toLowerCase()]&&(e=we.brewer[e.toLowerCase()]),U(e)===`array`){e.length===1&&(e=[e[0],e[0]]),e=e.slice(0);for(let t=0;t<e.length;t++)e[t]=we(e[t]);o.length=0;for(let t=0;t<e.length;t++)o.push(t/(e.length-1))}return S(),l=e},v=function(e){if(c!=null){let t=c.length-1,n=0;for(;n<t&&e>=c[n];)n++;return n-1}return 0},y=e=>e,b=e=>e,x=function(e,r){let i,a;if(r??=!1,isNaN(e)||e===null)return n;a=r?e:c&&c.length>2?v(e)/(c.length-2):f===d?1:(e-d)/(f-d),a=b(a),r||(a=y(a)),g!==1&&(a=Lt(a,g)),a=s[0]+a*(1-s[0]-s[1]),a=le(a,0,1);let u=Math.floor(a*1e4);if(h&&m[u])i=m[u];else{if(U(l)===`array`)for(let e=0;e<o.length;e++){let n=o[e];if(a<=n){i=l[e];break}if(a>=n&&e===o.length-1){i=l[e];break}if(a>n&&a<o[e+1]){a=(a-n)/(o[e+1]-n),i=we.interpolate(l[e],l[e+1],a,t);break}}else U(l)===`function`&&(i=l(a));h&&(m[u]=i)}return i};var S=()=>m={};_(e);let C=function(e){let t=we(x(e));return u&&t[u]?t[u]():t};return C.classes=function(e){if(e!=null){if(U(e)===`array`)c=e,i=[e[0],e[e.length-1]];else{let t=we.analyze(i);c=e===0?[t.min,t.max]:we.limits(t,`e`,e)}return C}return c},C.domain=function(e){if(!arguments.length)return a;a=e.slice(0),d=e[0],f=e[e.length-1],o=[];let t=l.length;if(e.length===t&&d!==f)for(let t of Array.from(e))o.push((t-d)/(f-d));else{for(let e=0;e<t;e++)o.push(e/(t-1));if(e.length>2){let t=e.map((t,n)=>n/(e.length-1)),n=e.map(e=>(e-d)/(f-d));n.every((e,n)=>t[n]===e)||(b=e=>{if(e<=0||e>=1)return e;let r=0;for(;e>=n[r+1];)r++;let i=(e-n[r])/(n[r+1]-n[r]);return t[r]+i*(t[r+1]-t[r])})}}return i=[d,f],C},C.mode=function(e){return arguments.length?(t=e,S(),C):t},C.range=function(e,t){return _(e,t),C},C.out=function(e){return u=e,C},C.spread=function(e){return arguments.length?(r=e,C):r},C.correctLightness=function(e){return e??=!0,p=e,S(),y=p?function(e){let t=x(0,!0).lab()[0],n=x(1,!0).lab()[0],r=t>n,i=x(e,!0).lab()[0],a=t+(n-t)*e,o=i-a,s=0,c=1,l=20;for(;Math.abs(o)>.01&&l-->0;)(function(){return r&&(o*=-1),o<0?(s=e,e+=(c-e)*.5):(c=e,e+=(s-e)*.5),i=x(e,!0).lab()[0],o=i-a})();return e}:e=>e,C},C.padding=function(e){return e==null?s:(U(e)===`number`&&(e=[e,e]),s=e,C)},C.colors=function(t,n){arguments.length<2&&(n=`hex`);let r=[];if(arguments.length===0)r=l.slice(0);else if(t===1)r=[C(.5)];else if(t>1){let e=i[0],n=i[1]-e;r=zt(0,t,!1).map(r=>C(e+r/(t-1)*n))}else{e=[];let t=[];if(c&&c.length>2)for(let e=1,n=c.length,r=1<=n;r?e<n:e>n;r?e++:e--)t.push((c[e-1]+c[e])*.5);else t=i;r=t.map(e=>C(e))}return we[n]&&(r=r.map(e=>e[n]())),r},C.cache=function(e){return e==null?h:(h=e,C)},C.gamma=function(e){return e==null?g:(g=e,C)},C.nodata=function(e){return e==null?n:(n=we(e),C)},C}function zt(e,t,n){let r=[],i=e<t,a=n?i?t+1:t-1:t;for(let t=e;i?t<a:t>a;i?t++:t--)r.push(t);return r}var Bt=function(e){let t=[1,1];for(let n=1;n<e;n++){let e=[1];for(let n=1;n<=t.length;n++)e[n]=(t[n]||0)+t[n-1];t=e}return t},Vt=function(e){let t,n,r,i;if(e=e.map(e=>new K(e)),e.length===2)[n,r]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>n[t]+e*(r[t]-n[t])),`lab`)};else if(e.length===3)[n,r,i]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>(1-e)*(1-e)*n[t]+2*(1-e)*e*r[t]+e*e*i[t]),`lab`)};else if(e.length===4){let a;[n,r,i,a]=e.map(e=>e.lab()),t=function(e){return new K([0,1,2].map(t=>(1-e)*(1-e)*(1-e)*n[t]+3*(1-e)*(1-e)*e*r[t]+3*(1-e)*e*e*i[t]+e*e*e*a[t]),`lab`)}}else if(e.length>=5){let n,r,i;n=e.map(e=>e.lab()),i=e.length-1,r=Bt(i),t=function(e){let t=1-e;return new K([0,1,2].map(a=>n.reduce((n,o,s)=>n+r[s]*t**(i-s)*e**s*o[a],0)),`lab`)}}else throw RangeError(`No point in running bezier with only one color.`);return t},Ht=e=>{let t=Vt(e);return t.scale=()=>Rt(t),t},{round:Ut}=Math;K.prototype.rgb=function(e=!0){return e===!1?this._rgb.slice(0,3):this._rgb.slice(0,3).map(Ut)},K.prototype.rgba=function(e=!0){return this._rgb.slice(0,4).map((t,n)=>n<3?e===!1?t:Ut(t):t)},Object.assign(we,{rgb:(...e)=>new K(...e,`rgb`)}),G.format.rgb=(...e)=>{let t=W(e,`rgba`);return t[3]===void 0&&(t[3]=1),t},G.autodetect.push({p:3,test:(...e)=>{if(e=W(e,`rgba`),U(e)===`array`&&(e.length===3||e.length===4&&U(e[3])==`number`&&e[3]>=0&&e[3]<=1))return`rgb`}});var Wt=(e,t,n)=>{if(!Wt[n])throw Error(`unknown blend mode `+n);return Wt[n](e,t)},Gt=e=>(t,n)=>{let r=we(n).rgb(),i=we(t).rgb();return we.rgb(e(r,i))},Kt=e=>(t,n)=>{let r=[];return r[0]=e(t[0],n[0]),r[1]=e(t[1],n[1]),r[2]=e(t[2],n[2]),r};Wt.normal=Gt(Kt(e=>e)),Wt.multiply=Gt(Kt((e,t)=>e*t/255)),Wt.screen=Gt(Kt((e,t)=>255*(1-(1-e/255)*(1-t/255)))),Wt.overlay=Gt(Kt((e,t)=>t<128?2*e*t/255:255*(1-2*(1-e/255)*(1-t/255)))),Wt.darken=Gt(Kt((e,t)=>e>t?t:e)),Wt.lighten=Gt(Kt((e,t)=>e>t?e:t)),Wt.dodge=Gt(Kt((e,t)=>e===255?255:(e=t/255*255/(1-e/255),e>255?255:e))),Wt.burn=Gt(Kt((e,t)=>255*(1-(1-t/255)/(e/255))));var{pow:qt,sin:Jt,cos:Yt}=Math;function Xt(e=300,t=-1.5,n=1,r=1,i=[0,1]){let a=0,o;U(i)===`array`?o=i[1]-i[0]:(o=0,i=[i,i]);let s=function(s){let c=ve*((e+120)/360+t*s),l=qt(i[0]+o*s,r),u=(a===0?n:n[0]+s*a)*l*(1-l)/2,d=Yt(c),f=Jt(c),p=l+u*(-.14861*d+1.78277*f),m=l+u*(-.29227*d-.90649*f),h=l+1.97294*d*u;return we(ue([p*255,m*255,h*255,1]))};return s.start=function(t){return t==null?e:(e=t,s)},s.rotations=function(e){return e==null?t:(t=e,s)},s.gamma=function(e){return e==null?r:(r=e,s)},s.hue=function(e){return e==null?n:(n=e,U(n)===`array`?(a=n[1]-n[0],a===0&&(n=n[1])):a=0,s)},s.lightness=function(e){return e==null?i:(U(e)===`array`?(i=e,o=e[1]-e[0]):(i=[e,e],o=0),s)},s.scale=()=>we.scale(s),s.hue(n),s}var Zt=`0123456789abcdef`,{floor:Qt,random:$t}=Math,en=(e=$t)=>{let t=`#`;for(let n=0;n<6;n++)t+=Zt.charAt(Qt(e()*16));return new K(t,`hex`)},{log:tn,pow:nn,floor:rn,abs:an}=Math;function on(e,t=null){let n={min:Number.MAX_VALUE,max:Number.MAX_VALUE*-1,sum:0,values:[],count:0};return U(e)===`object`&&(e=Object.values(e)),e.forEach(e=>{t&&U(e)===`object`&&(e=e[t]),e!=null&&!isNaN(e)&&(n.values.push(e),n.sum+=e,e<n.min&&(n.min=e),e>n.max&&(n.max=e),n.count+=1)}),n.domain=[n.min,n.max],n.limits=(e,t)=>sn(n,e,t),n}function sn(e,t=`equal`,n=7){U(e)==`array`&&(e=on(e));let{min:r,max:i}=e,a=e.values.sort((e,t)=>e-t);if(n===1)return[r,i];let o=[];if(t.substr(0,1)===`c`&&(o.push(r),o.push(i)),t.substr(0,1)===`e`){o.push(r);for(let e=1;e<n;e++)o.push(r+e/n*(i-r));o.push(i)}else if(t.substr(0,1)===`l`){if(r<=0)throw Error(`Logarithmic scales are only possible for values > 0`);let e=Math.LOG10E*tn(r),t=Math.LOG10E*tn(i);o.push(r);for(let r=1;r<n;r++)o.push(nn(10,e+r/n*(t-e)));o.push(i)}else if(t.substr(0,1)===`q`){o.push(r);for(let e=1;e<n;e++){let t=(a.length-1)*e/n,r=rn(t);if(r===t)o.push(a[r]);else{let e=t-r;o.push(a[r]*(1-e)+a[r+1]*e)}}o.push(i)}else if(t.substr(0,1)===`k`){let e,t=a.length,s=Array(t),c=Array(n),l=!0,u=0,d=null;d=[],d.push(r);for(let e=1;e<n;e++)d.push(r+e/n*(i-r));for(d.push(i);l;){for(let e=0;e<n;e++)c[e]=0;for(let e=0;e<t;e++){let t=a[e],r=Number.MAX_VALUE,i;for(let a=0;a<n;a++){let n=an(d[a]-t);n<r&&(r=n,i=a),c[i]++,s[e]=i}}let r=Array(n);for(let e=0;e<n;e++)r[e]=null;for(let n=0;n<t;n++)e=s[n],r[e]===null?r[e]=a[n]:r[e]+=a[n];for(let e=0;e<n;e++)r[e]*=1/c[e];l=!1;for(let e=0;e<n;e++)if(r[e]!==d[e]){l=!0;break}d=r,u++,u>200&&(l=!1)}let f={};for(let e=0;e<n;e++)f[e]=[];for(let n=0;n<t;n++)e=s[n],f[e].push(a[n]);let p=[];for(let e=0;e<n;e++)p.push(f[e][0]),p.push(f[e][f[e].length-1]);p=p.sort((e,t)=>e-t),o.push(p[0]);for(let e=1;e<p.length;e+=2){let t=p[e];!isNaN(t)&&o.indexOf(t)===-1&&o.push(t)}}return o}var cn=(e,t)=>{e=new K(e),t=new K(t);let n=e.luminance(),r=t.luminance();return n>r?(n+.05)/(r+.05):(r+.05)/(n+.05)},ln=.027,un=5e-4,dn=.1,fn=1.14,pn=.022,mn=1.414,hn=(e,t)=>{e=new K(e),t=new K(t),e.alpha()<1&&(e=Ye(t,e,e.alpha(),`rgb`));let n=gn(...e.rgb()),r=gn(...t.rgb()),i=n>=pn?n:n+(pn-n)**+mn,a=r>=pn?r:r+(pn-r)**+mn,o=a**.56-i**.57,s=a**.65-i**.62,c=Math.abs(a-i)<un?0:i<a?o*fn:s*fn;return(Math.abs(c)<dn?0:c>0?c-ln:c+ln)*100};function gn(e,t,n){return .2126729*(e/255)**2.4+.7151522*(t/255)**2.4+.072175*(n/255)**2.4}var{sqrt:_n,pow:Z,min:vn,max:yn,atan2:bn,abs:xn,cos:Sn,sin:Cn,exp:wn,PI:Tn}=Math;function En(e,t,n=1,r=1,i=1){var a=function(e){return 360*e/(2*Tn)},o=function(e){return 2*Tn*e/360};e=new K(e),t=new K(t);let[s,c,l]=Array.from(e.lab()),[u,d,f]=Array.from(t.lab()),p=(s+u)/2,m=(_n(Z(c,2)+Z(l,2))+_n(Z(d,2)+Z(f,2)))/2,h=.5*(1-_n(Z(m,7)/(Z(m,7)+Z(25,7)))),g=c*(1+h),_=d*(1+h),v=_n(Z(g,2)+Z(l,2)),y=_n(Z(_,2)+Z(f,2)),b=(v+y)/2,x=a(bn(l,g)),S=a(bn(f,_)),C=x>=0?x:x+360,w=S>=0?S:S+360,T=xn(C-w)>180?(C+w+360)/2:(C+w)/2,E=1-.17*Sn(o(T-30))+.24*Sn(o(2*T))+.32*Sn(o(3*T+6))-.2*Sn(o(4*T-63)),D=w-C;D=xn(D)<=180?D:w<=C?D+360:D-360,D=2*_n(v*y)*Cn(o(D)/2);let O=u-s,k=y-v,ee=1+.015*Z(p-50,2)/_n(20+Z(p-50,2)),A=1+.045*b,j=1+.015*b*E,M=30*wn(-Z((T-275)/25,2)),N=-(2*_n(Z(b,7)/(Z(b,7)+Z(25,7))))*Cn(2*o(M));return yn(0,vn(100,_n(Z(O/(n*ee),2)+Z(k/(r*A),2)+Z(D/(i*j),2)+N*(k/(r*A))*(D/(i*j)))))}function Dn(e,t,n=`lab`){e=new K(e),t=new K(t);let r=e.get(n),i=t.get(n),a=0;for(let e in r){let t=(r[e]||0)-(i[e]||0);a+=t*t}return Math.sqrt(a)}var On=(...e)=>{try{return new K(...e),!0}catch{return!1}},kn={cool(){return Rt([we.hsl(180,1,.9),we.hsl(250,.7,.4)])},hot(){return Rt([`#000`,`#f00`,`#ff0`,`#fff`],[0,.25,.75,1]).mode(`rgb`)}},An={OrRd:[`#fff7ec`,`#fee8c8`,`#fdd49e`,`#fdbb84`,`#fc8d59`,`#ef6548`,`#d7301f`,`#b30000`,`#7f0000`],PuBu:[`#fff7fb`,`#ece7f2`,`#d0d1e6`,`#a6bddb`,`#74a9cf`,`#3690c0`,`#0570b0`,`#045a8d`,`#023858`],BuPu:[`#f7fcfd`,`#e0ecf4`,`#bfd3e6`,`#9ebcda`,`#8c96c6`,`#8c6bb1`,`#88419d`,`#810f7c`,`#4d004b`],Oranges:[`#fff5eb`,`#fee6ce`,`#fdd0a2`,`#fdae6b`,`#fd8d3c`,`#f16913`,`#d94801`,`#a63603`,`#7f2704`],BuGn:[`#f7fcfd`,`#e5f5f9`,`#ccece6`,`#99d8c9`,`#66c2a4`,`#41ae76`,`#238b45`,`#006d2c`,`#00441b`],YlOrBr:[`#ffffe5`,`#fff7bc`,`#fee391`,`#fec44f`,`#fe9929`,`#ec7014`,`#cc4c02`,`#993404`,`#662506`],YlGn:[`#ffffe5`,`#f7fcb9`,`#d9f0a3`,`#addd8e`,`#78c679`,`#41ab5d`,`#238443`,`#006837`,`#004529`],Reds:[`#fff5f0`,`#fee0d2`,`#fcbba1`,`#fc9272`,`#fb6a4a`,`#ef3b2c`,`#cb181d`,`#a50f15`,`#67000d`],RdPu:[`#fff7f3`,`#fde0dd`,`#fcc5c0`,`#fa9fb5`,`#f768a1`,`#dd3497`,`#ae017e`,`#7a0177`,`#49006a`],Greens:[`#f7fcf5`,`#e5f5e0`,`#c7e9c0`,`#a1d99b`,`#74c476`,`#41ab5d`,`#238b45`,`#006d2c`,`#00441b`],YlGnBu:[`#ffffd9`,`#edf8b1`,`#c7e9b4`,`#7fcdbb`,`#41b6c4`,`#1d91c0`,`#225ea8`,`#253494`,`#081d58`],Purples:[`#fcfbfd`,`#efedf5`,`#dadaeb`,`#bcbddc`,`#9e9ac8`,`#807dba`,`#6a51a3`,`#54278f`,`#3f007d`],GnBu:[`#f7fcf0`,`#e0f3db`,`#ccebc5`,`#a8ddb5`,`#7bccc4`,`#4eb3d3`,`#2b8cbe`,`#0868ac`,`#084081`],Greys:[`#ffffff`,`#f0f0f0`,`#d9d9d9`,`#bdbdbd`,`#969696`,`#737373`,`#525252`,`#252525`,`#000000`],YlOrRd:[`#ffffcc`,`#ffeda0`,`#fed976`,`#feb24c`,`#fd8d3c`,`#fc4e2a`,`#e31a1c`,`#bd0026`,`#800026`],PuRd:[`#f7f4f9`,`#e7e1ef`,`#d4b9da`,`#c994c7`,`#df65b0`,`#e7298a`,`#ce1256`,`#980043`,`#67001f`],Blues:[`#f7fbff`,`#deebf7`,`#c6dbef`,`#9ecae1`,`#6baed6`,`#4292c6`,`#2171b5`,`#08519c`,`#08306b`],PuBuGn:[`#fff7fb`,`#ece2f0`,`#d0d1e6`,`#a6bddb`,`#67a9cf`,`#3690c0`,`#02818a`,`#016c59`,`#014636`],Viridis:[`#440154`,`#482777`,`#3f4a8a`,`#31678e`,`#26838f`,`#1f9d8a`,`#6cce5a`,`#b6de2b`,`#fee825`],Spectral:[`#9e0142`,`#d53e4f`,`#f46d43`,`#fdae61`,`#fee08b`,`#ffffbf`,`#e6f598`,`#abdda4`,`#66c2a5`,`#3288bd`,`#5e4fa2`],RdYlGn:[`#a50026`,`#d73027`,`#f46d43`,`#fdae61`,`#fee08b`,`#ffffbf`,`#d9ef8b`,`#a6d96a`,`#66bd63`,`#1a9850`,`#006837`],RdBu:[`#67001f`,`#b2182b`,`#d6604d`,`#f4a582`,`#fddbc7`,`#f7f7f7`,`#d1e5f0`,`#92c5de`,`#4393c3`,`#2166ac`,`#053061`],PiYG:[`#8e0152`,`#c51b7d`,`#de77ae`,`#f1b6da`,`#fde0ef`,`#f7f7f7`,`#e6f5d0`,`#b8e186`,`#7fbc41`,`#4d9221`,`#276419`],PRGn:[`#40004b`,`#762a83`,`#9970ab`,`#c2a5cf`,`#e7d4e8`,`#f7f7f7`,`#d9f0d3`,`#a6dba0`,`#5aae61`,`#1b7837`,`#00441b`],RdYlBu:[`#a50026`,`#d73027`,`#f46d43`,`#fdae61`,`#fee090`,`#ffffbf`,`#e0f3f8`,`#abd9e9`,`#74add1`,`#4575b4`,`#313695`],BrBG:[`#543005`,`#8c510a`,`#bf812d`,`#dfc27d`,`#f6e8c3`,`#f5f5f5`,`#c7eae5`,`#80cdc1`,`#35978f`,`#01665e`,`#003c30`],RdGy:[`#67001f`,`#b2182b`,`#d6604d`,`#f4a582`,`#fddbc7`,`#ffffff`,`#e0e0e0`,`#bababa`,`#878787`,`#4d4d4d`,`#1a1a1a`],PuOr:[`#7f3b08`,`#b35806`,`#e08214`,`#fdb863`,`#fee0b6`,`#f7f7f7`,`#d8daeb`,`#b2abd2`,`#8073ac`,`#542788`,`#2d004b`],Set2:[`#66c2a5`,`#fc8d62`,`#8da0cb`,`#e78ac3`,`#a6d854`,`#ffd92f`,`#e5c494`,`#b3b3b3`],Accent:[`#7fc97f`,`#beaed4`,`#fdc086`,`#ffff99`,`#386cb0`,`#f0027f`,`#bf5b17`,`#666666`],Set1:[`#e41a1c`,`#377eb8`,`#4daf4a`,`#984ea3`,`#ff7f00`,`#ffff33`,`#a65628`,`#f781bf`,`#999999`],Set3:[`#8dd3c7`,`#ffffb3`,`#bebada`,`#fb8072`,`#80b1d3`,`#fdb462`,`#b3de69`,`#fccde5`,`#d9d9d9`,`#bc80bd`,`#ccebc5`,`#ffed6f`],Dark2:[`#1b9e77`,`#d95f02`,`#7570b3`,`#e7298a`,`#66a61e`,`#e6ab02`,`#a6761d`,`#666666`],Paired:[`#a6cee3`,`#1f78b4`,`#b2df8a`,`#33a02c`,`#fb9a99`,`#e31a1c`,`#fdbf6f`,`#ff7f00`,`#cab2d6`,`#6a3d9a`,`#ffff99`,`#b15928`],Pastel2:[`#b3e2cd`,`#fdcdac`,`#cbd5e8`,`#f4cae4`,`#e6f5c9`,`#fff2ae`,`#f1e2cc`,`#cccccc`],Pastel1:[`#fbb4ae`,`#b3cde3`,`#ccebc5`,`#decbe4`,`#fed9a6`,`#ffffcc`,`#e5d8bd`,`#fddaec`,`#f2f2f2`]},jn=Object.keys(An),Mn=new Map(jn.map(e=>[e.toLowerCase(),e])),Nn=typeof Proxy==`function`?new Proxy(An,{get(e,t){let n=t.toLowerCase();if(Mn.has(n))return e[Mn.get(n)]},getOwnPropertyNames(){return Object.getOwnPropertyNames(jn)}}):An,Pn=(...e)=>{e=W(e,`cmyk`);let[t,n,r,i]=e,a=e.length>4?e[4]:1;return i===1?[0,0,0,a]:[t>=1?0:255*(1-t)*(1-i),n>=1?0:255*(1-n)*(1-i),r>=1?0:255*(1-r)*(1-i),a]},{max:Fn}=Math,In=(...e)=>{let[t,n,r]=W(e,`rgb`);t/=255,n/=255,r/=255;let i=1-Fn(t,Fn(n,r)),a=i<1?1/(1-i):0;return[(1-t-i)*a,(1-n-i)*a,(1-r-i)*a,i]};K.prototype.cmyk=function(){return In(this._rgb)},Object.assign(we,{cmyk:(...e)=>new K(...e,`cmyk`)}),G.format.cmyk=Pn,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`cmyk`),U(e)===`array`&&e.length===4)return`cmyk`}});var Ln=(...e)=>{let t=W(e,`hsla`),n=fe(e)||`lsa`;return t[0]=ge(t[0]||0)+`deg`,t[1]=ge(t[1]*100)+`%`,t[2]=ge(t[2]*100)+`%`,n===`hsla`||t.length>3&&t[3]<1?(t[3]=`/ `+(t.length>3?t[3]:1),n=`hsla`):t.length=3,`${n.substr(0,3)}(${t.join(` `)})`},Rn=(...e)=>{let t=W(e,`lab`),n=fe(e)||`lab`;return t[0]=ge(t[0])+`%`,t[1]=ge(t[1]),t[2]=ge(t[2]),n===`laba`||t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`lab(${t.join(` `)})`},zn=(...e)=>{let t=W(e,`lch`),n=fe(e)||`lab`;return t[0]=ge(t[0])+`%`,t[1]=ge(t[1]),t[2]=isNaN(t[2])?`none`:ge(t[2])+`deg`,n===`lcha`||t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`lch(${t.join(` `)})`},Bn=(...e)=>{let t=W(e,`lab`);return t[0]=ge(t[0]*100)+`%`,t[1]=_e(t[1]),t[2]=_e(t[2]),t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`oklab(${t.join(` `)})`},Vn=(...e)=>{let[t,n,r,...i]=W(e,`rgb`),[a,o,s]=Ot(t,n,r),[c,l,u]=it(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Hn=(...e)=>{let t=W(e,`lch`);return t[0]=ge(t[0]*100)+`%`,t[1]=_e(t[1]),t[2]=isNaN(t[2])?`none`:ge(t[2])+`deg`,t.length>3&&t[3]<1?t[3]=`/ `+(t.length>3?t[3]:1):t.length=3,`oklch(${t.join(` `)})`},{round:Un}=Math,Wn=(...e)=>{let t=W(e,`rgba`),n=fe(e)||`rgb`;if(n.substr(0,3)===`hsl`)return Ln(q(t),n);if(n.substr(0,3)===`lab`){let e=Pe();Ne(`d50`);let r=Rn(ze(t),n);return Ne(e),r}if(n.substr(0,3)===`lch`){let e=Pe();Ne(`d50`);let r=zn(at(t),n);return Ne(e),r}return n.substr(0,5)===`oklab`?Bn(Ot(t)):n.substr(0,5)===`oklch`?Hn(Vn(t)):(t[0]=Un(t[0]),t[1]=Un(t[1]),t[2]=Un(t[2]),(n===`rgba`||t.length>3&&t[3]<1)&&(t[3]=`/ `+(t.length>3?t[3]:1),n=`rgba`),`${n.substr(0,3)}(${t.slice(0,n===`rgb`?3:4).join(` `)})`)},Gn=(...e)=>{e=W(e,`lch`);let[t,n,r,...i]=e,[a,o,s]=Qe(t,n,r),[c,l,u]=Et(a,o,s);return[c,l,u,...i.length>0&&i[0]<1?[i[0]]:[]]},Kn=`((?:-?\\d+)|(?:-?\\d+(?:\\.\\d+)?)%|none)`,qn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%?)|none)`,Jn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)%)|none)`,Yn=`\\s*`,Xn=`\\s+`,Zn=`\\s*,\\s*`,Qn=`((?:-?(?:\\d+(?:\\.\\d*)?|\\.\\d+)(?:deg)?)|none)`,$n=`\\s*(?:\\/\\s*((?:[01]|[01]?\\.\\d+)|\\d+(?:\\.\\d+)?%))?`,er=RegExp(`^rgba?\\(`+Yn+[Kn,Kn,Kn].join(Xn)+$n+`\\)$`),tr=RegExp(`^rgb\\(`+Yn+[Kn,Kn,Kn].join(Zn)+Yn+`\\)$`),nr=RegExp(`^rgba\\(`+Yn+[Kn,Kn,Kn,qn].join(Zn)+Yn+`\\)$`),rr=RegExp(`^hsla?\\(`+Yn+[Qn,Jn,Jn].join(Xn)+$n+`\\)$`),ir=RegExp(`^hsl?\\(`+Yn+[Qn,Jn,Jn].join(Zn)+Yn+`\\)$`),ar=/^hsla\(\s*(-?\d+(?:\.\d+)?),\s*(-?\d+(?:\.\d+)?)%\s*,\s*(-?\d+(?:\.\d+)?)%\s*,\s*([01]|[01]?\.\d+)\)$/,or=RegExp(`^lab\\(`+Yn+[qn,qn,qn].join(Xn)+$n+`\\)$`),sr=RegExp(`^lch\\(`+Yn+[qn,qn,Qn].join(Xn)+$n+`\\)$`),cr=RegExp(`^oklab\\(`+Yn+[qn,qn,qn].join(Xn)+$n+`\\)$`),lr=RegExp(`^oklch\\(`+Yn+[qn,qn,Qn].join(Xn)+$n+`\\)$`),{round:ur}=Math,dr=e=>e.map((e,t)=>t<=2?le(ur(e),0,255):e),fr=(e,t=0,n=100,r=!1)=>(typeof e==`string`&&e.endsWith(`%`)&&(e=parseFloat(e.substring(0,e.length-1))/100,e=r?t+(e+1)*.5*(n-t):t+e*(n-t)),+e),pr=(e,t)=>e===`none`?t:e,mr=e=>{if(e=e.toLowerCase().trim(),e===`transparent`)return[0,0,0,0];let t;if(G.format.named)try{return G.format.named(e)}catch{}if((t=e.match(er))||(t=e.match(tr))){let e=t.slice(1,4);for(let t=0;t<3;t++)e[t]=+fr(pr(e[t],0),0,255);e=dr(e);let n=t[4]===void 0?1:+fr(t[4],0,1);return e[3]=n,e}if(t=e.match(nr)){let e=t.slice(1,5);for(let t=0;t<4;t++)e[t]=+fr(e[t],0,255);return e}if((t=e.match(rr))||(t=e.match(ir))){let e=t.slice(1,4);e[0]=+pr(e[0].replace(`deg`,``),0),e[1]=fr(pr(e[1],0),0,100)*.01,e[2]=fr(pr(e[2],0),0,100)*.01;let n=dr(xt(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}if(t=e.match(ar)){let e=t.slice(1,4);e[1]*=.01,e[2]*=.01;let n=xt(e);for(let e=0;e<3;e++)n[e]=ur(n[e]);return n[3]=+t[4],n}if(t=e.match(or)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,100),e[1]=fr(pr(e[1],0),-125,125,!0),e[2]=fr(pr(e[2],0),-125,125,!0);let n=Pe();Ne(`d50`);let r=dr(Fe(e));return Ne(n),r[3]=t[4]===void 0?1:+fr(t[4],0,1),r}if(t=e.match(sr)){let e=t.slice(1,4);e[0]=fr(e[0],0,100),e[1]=fr(pr(e[1],0),0,150,!1),e[2]=+pr(e[2].replace(`deg`,``),0);let n=Pe();Ne(`d50`);let r=dr($e(e));return Ne(n),r[3]=t[4]===void 0?1:+fr(t[4],0,1),r}if(t=e.match(cr)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,1),e[1]=fr(pr(e[1],0),-.4,.4,!0),e[2]=fr(pr(e[2],0),-.4,.4,!0);let n=dr(Et(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}if(t=e.match(lr)){let e=t.slice(1,4);e[0]=fr(pr(e[0],0),0,1),e[1]=fr(pr(e[1],0),0,.4,!1),e[2]=+pr(e[2].replace(`deg`,``),0);let n=dr(Gn(e));return n[3]=t[4]===void 0?1:+fr(t[4],0,1),n}};mr.test=e=>er.test(e)||rr.test(e)||or.test(e)||sr.test(e)||cr.test(e)||lr.test(e)||tr.test(e)||nr.test(e)||ir.test(e)||ar.test(e)||e===`transparent`,K.prototype.css=function(e){return Wn(this._rgb,e)},we.css=(...e)=>new K(...e,`css`),G.format.css=mr,G.autodetect.push({p:5,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&mr.test(e))return`css`}}),G.format.gl=(...e)=>{let t=W(e,`rgba`);return t[0]*=255,t[1]*=255,t[2]*=255,t},we.gl=(...e)=>new K(...e,`gl`),K.prototype.gl=function(){let e=this._rgb;return[e[0]/255,e[1]/255,e[2]/255,e[3]]},K.prototype.hex=function(e){return Ae(this._rgb,e)},we.hex=(...e)=>new K(...e,`hex`),G.format.hex=Oe,G.autodetect.push({p:4,test:(e,...t)=>{if(!t.length&&U(e)===`string`&&[3,4,5,6,7,8,9].indexOf(e.length)>=0)return`hex`}});var{log:hr}=Math,gr=e=>{let t=e/100,n,r,i;return t<66?(n=255,r=t<6?0:-155.25485562709179-.44596950469579133*(r=t-2)+104.49216199393888*hr(r),i=t<20?0:-254.76935184120902+.8274096064007395*(i=t-10)+115.67994401066147*hr(i)):(n=351.97690566805693+.114206453784165*(n=t-55)-40.25366309332127*hr(n),r=325.4494125711974+.07943456536662342*(r=t-50)-28.0852963507957*hr(r),i=255),[n,r,i,1]},{round:_r}=Math,vr=(...e)=>{let t=W(e,`rgb`),n=t[0],r=t[2],i=1e3,a=4e4,o;for(;a-i>.4;){o=(a+i)*.5;let e=gr(o);e[2]/e[0]>=r/n?a=o:i=o}return _r(o)};K.prototype.temp=K.prototype.kelvin=K.prototype.temperature=function(){return vr(this._rgb)};var yr=(...e)=>new K(...e,`temp`);Object.assign(we,{temp:yr,kelvin:yr,temperature:yr}),G.format.temp=G.format.kelvin=G.format.temperature=gr,K.prototype.oklch=function(){return Vn(this._rgb)},Object.assign(we,{oklch:(...e)=>new K(...e,`oklch`)}),G.format.oklch=Gn,G.autodetect.push({p:2,test:(...e)=>{if(e=W(e,`oklch`),U(e)===`array`&&e.length===3)return`oklch`}}),Object.assign(we,{analyze:on,average:Ft,bezier:Ht,blend:Wt,brewer:Nn,Color:K,colors:Te,contrast:cn,contrastAPCA:hn,cubehelix:Xt,deltaE:En,distance:Dn,input:G,interpolate:Ye,limits:sn,mix:Ye,random:en,scale:Rt,scales:kn,valid:On});var br=we;function xr(e,t){if(!br.valid(e))return t;try{return br(e)}catch{return t}}function Sr(e){return br.valid(e)&&br.contrast(e,`#fff`)>=br.contrast(e,`#333`)?`#fff`:`#333`}var Cr=4.5;function wr(e){let t=e;for(;t&&t instanceof Element;){let e=getComputedStyle(t).backgroundColor;if(e&&e!==`rgba(0, 0, 0, 0)`&&e!==`transparent`)return e;t=t.parentElement}return`#fff`}function Tr(e,t=`#fff`){if(!br.valid(e))return br.valid(t)?Sr(t):`#333`;let n=br(e),r=xr(t,br(`#fff`));if(br.contrast(n,r)>=Cr)return n.hex();let i=r.luminance()>.5;for(let e=0;e<20&&(n=i?n.darken(.3):n.brighten(.3),!(br.contrast(n,r)>=Cr));e++);return n.hex()}var Er=12,Dr=.25,Or=20,kr=15;function Ar(e,t){if(e.length===0)return[];let n=xr(t,br(`#fff`)),r=br.valid(t)?t:`#fff`,i=n.luminance()>.5,a=e.map(e=>br.valid(e)?jr(br(e),r,i):br(`#000`));for(let e=1;e<a.length;e++)a[e]=Pr(a[e],a.slice(0,e),r,i);return a.map(e=>e.hex())}function jr(e,t,n){for(let r=0;r<Or;r++){if(br.contrast(e,t)>=Cr)return e;e=n?e.darken(Dr):e.brighten(Dr)}return e}function Mr(e,t){return t.reduce((t,n)=>Math.min(t,br.deltaE(e,n)),1/0)}function*Nr(e,t){for(let n of[t,!t]){let t=e;for(let e=0;e<Or;e++)t=n?t.darken(Dr):t.brighten(Dr),yield t}for(let t=kr;t<=180;t+=kr)yield e.set(`hsl.h`,`+${t}`),yield e.set(`hsl.h`,`-${t}`)}function Pr(e,t,n,r){let i=e,a=Mr(e,t);if(a>=Er)return e;for(let o of Nr(e,r)){if(br.contrast(o,n)<Cr)continue;let e=Mr(o,t);if(e>a&&(i=o,a=e),a>=Er)break}return i}var Fr=function(e){return e.BarVertical=`bar-vertical`,e.BarHorizontal=`bar-horizontal`,e.BarMulti=`bar-multi`,e.ColumnStacked=`column-stacked`,e.BarStacked=`bar-stacked`,e.BarSplit=`bar-split`,e.BarGrouped=`bar-grouped`,e.Line=`line`,e.LineMulti=`line-multi`,e.Area=`area`,e.AreaStacked=`area-stacked`,e.Donut=`donut`,e.Pie=`pie`,e.VerticalBar=`vertical-bar`,e.HorizontalBar=`horizontal-bar`,e}({}),Ir=function(e){return e.Left=`left`,e.Right=`right`,e}({}),Lr=function(e){return e.Linear=`linear`,e.Log=`log`,e}({}),Rr=function(e){return e.Solid=`solid`,e.Dashed=`dashed`,e.Dotted=`dotted`,e.None=`none`,e}({}),zr=function(e){return e.Auto=`auto`,e.Inside=`inside`,e.Outside=`outside`,e.Off=`off`,e}({}),Br=function(e){return e.Auto=`auto`,e.Horizontal=`horizontal`,e.Vertical=`vertical`,e}({}),Vr=function(e){return e.NW=`NW`,e.N=`N`,e.NE=`NE`,e.E=`E`,e.SE=`SE`,e.S=`S`,e.SW=`SW`,e.W=`W`,e.Center=`center`,e}({}),Hr=function(e){return e.Direct=`direct`,e.CurveLeft=`curve-left`,e.CurveRight=`curve-right`,e.Elbow=`elbow`,e}({}),Ur=function(e){return e.Solid=`solid`,e.Dotted=`dotted`,e.Dashed=`dashed`,e}({}),Wr=function(e){return e.Point=`point`,e.Range=`range`,e.Free=`free`,e}({}),Gr=function(e){return e.Start=`start`,e.Center=`center`,e.End=`end`,e}({}),Kr=function(e){return e.Vertical=`vertical`,e.Horizontal=`horizontal`,e}({}),qr=function(e){return e.Circle=`circle`,e.Square=`square`,e.Diamond=`diamond`,e.Triangle=`triangle`,e.TriangleDown=`triangleDown`,e.Cross=`cross`,e.Star=`star`,e}({}),Jr=function(e){return e.All=`all`,e.First=`first`,e.Last=`last`,e.FirstLast=`firstLast`,e}({}),Yr=function(e){return e.Filled=`filled`,e.Hollow=`hollow`,e}({}),Xr=function(e){return e.Ascending=`ascending`,e.Descending=`descending`,e.None=`none`,e}({}),Zr=function(e){return e.Total=`total`,e.WithinGroups=`within-groups`,e.None=`none`,e}({}),Qr=function(e){return e.Top=`top`,e.Bottom=`bottom`,e.Left=`left`,e.Right=`right`,e}({}),$r=function(e){return e.Start=`start`,e.Middle=`middle`,e.End=`end`,e}({}),ei=function(e){return e.Inside=`inside`,e.Outside=`outside`,e.Auto=`auto`,e}({}),ti=function(e){return e.Both=`both`,e.Vertical=`vertical`,e.Horizontal=`horizontal`,e}({}),ni=function(e){return e.Solid=`solid`,e.Dashed=`dashed`,e.Dotted=`dotted`,e}({}),ri=function(e){return e.Normal=`normal`,e.Percent=`percent`,e}({}),Q=function(e){return e.Colors=`colors`,e.Boolean=`boolean`,e.Select=`select`,e.Text=`text`,e.NumberFormat=`numberFormat`,e.DateFormat=`dateFormat`,e}({}),ii=function(e){return e.Off=``,e.Auto=`auto`,e.Outside=`outside`,e.Inside=`inside`,e}({}),ai=function(e){return e.Linear=`linear`,e.MonotoneX=`monotoneX`,e.Step=`step`,e.StepBefore=`stepBefore`,e.StepAfter=`stepAfter`,e.Basis=`basis`,e.Cardinal=`cardinal`,e.CatmullRom=`catmullRom`,e}({}),oi=function(e){return e.Sort=`sort`,e.Filter=`filter`,e.HideColumns=`hide-columns`,e.Transpose=`transpose`,e.Parse=`parse`,e.Rename=`rename`,e.GroupBy=`group-by`,e.Computed=`computed`,e}({}),si=function(e){return e.Equals=`equals`,e.NotEquals=`not-equals`,e.Contains=`contains`,e.GreaterThan=`greater-than`,e.LessThan=`less-than`,e}({}),ci=function(e){return e.Type=`type`,e.String=`string`,e.Numeric=`numeric`,e.Date=`date`,e}({}),li=s(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self).dayjs=r()})(e,(function(){"use strict";var e=1e3,t=6e4,n=36e5,r=`millisecond`,i=`second`,a=`minute`,o=`hour`,s=`day`,c=`week`,l=`month`,u=`quarter`,d=`year`,f=`date`,p=`Invalid Date`,m=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,h=/\[([^\]]+)]|YYYY|YY|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,g={name:`en`,weekdays:`Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday`.split(`_`),months:`January_February_March_April_May_June_July_August_September_October_November_December`.split(`_`),ordinal:function(e){var t=[`th`,`st`,`nd`,`rd`],n=e%100;return`[`+e+(t[(n-20)%10]||t[n]||t[0])+`]`}},_=function(e,t,n){var r=String(e);return!r||r.length>=t?e:``+Array(t+1-r.length).join(n)+e},v={s:_,z:function(e){var t=-e.utcOffset(),n=Math.abs(t),r=Math.floor(n/60),i=n%60;return(t<=0?`+`:`-`)+_(r,2,`0`)+`:`+_(i,2,`0`)},m:function e(t,n){if(t.date()<n.date())return-e(n,t);var r=12*(n.year()-t.year())+(n.month()-t.month()),i=t.clone().add(r,l),a=n-i<0,o=t.clone().add(r+(a?-1:1),l);return+(-(r+(n-i)/(a?i-o:o-i))||0)},a:function(e){return e<0?Math.ceil(e)||0:Math.floor(e)},p:function(e){return{M:l,y:d,w:c,d:s,D:f,h:o,m:a,s:i,ms:r,Q:u}[e]||String(e||``).toLowerCase().replace(/s$/,``)},u:function(e){return e===void 0}},y=`en`,b={};b[y]=g;var x=`$isDayjsObject`,S=function(e){return e instanceof E||!(!e||!e[x])},C=function e(t,n,r){var i;if(!t)return y;if(typeof t==`string`){var a=t.toLowerCase();b[a]&&(i=a),n&&(b[a]=n,i=a);var o=t.split(`-`);if(!i&&o.length>1)return e(o[0])}else{var s=t.name;b[s]=t,i=s}return!r&&i&&(y=i),i||!r&&y},w=function(e,t){if(S(e))return e.clone();var n=typeof t==`object`?t:{};return n.date=e,n.args=arguments,new E(n)},T=v;T.l=C,T.i=S,T.w=function(e,t){return w(e,{locale:t.$L,utc:t.$u,x:t.$x,$offset:t.$offset})};var E=function(){function g(e){this.$L=C(e.locale,null,!0),this.parse(e),this.$x=this.$x||e.x||{},this[x]=!0}var _=g.prototype;return _.parse=function(e){this.$d=function(e){var t=e.date,n=e.utc;if(t===null)return new Date(NaN);if(T.u(t))return new Date;if(t instanceof Date)return new Date(t);if(typeof t==`string`&&!/Z$/i.test(t)){var r=t.match(m);if(r){var i=r[2]-1||0,a=(r[7]||`0`).substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,a)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,a)}}return new Date(t)}(e),this.init()},_.init=function(){var e=this.$d;this.$y=e.getFullYear(),this.$M=e.getMonth(),this.$D=e.getDate(),this.$W=e.getDay(),this.$H=e.getHours(),this.$m=e.getMinutes(),this.$s=e.getSeconds(),this.$ms=e.getMilliseconds()},_.$utils=function(){return T},_.isValid=function(){return this.$d.toString()!==p},_.isSame=function(e,t){var n=w(e);return this.startOf(t)<=n&&n<=this.endOf(t)},_.isAfter=function(e,t){return w(e)<this.startOf(t)},_.isBefore=function(e,t){return this.endOf(t)<w(e)},_.$g=function(e,t,n){return T.u(e)?this[t]:this.set(n,e)},_.unix=function(){return Math.floor(this.valueOf()/1e3)},_.valueOf=function(){return this.$d.getTime()},_.startOf=function(e,t){var n=this,r=!!T.u(t)||t,u=T.p(e),p=function(e,t){var i=T.w(n.$u?Date.UTC(n.$y,t,e):new Date(n.$y,t,e),n);return r?i:i.endOf(s)},m=function(e,t){return T.w(n.toDate()[e].apply(n.toDate(`s`),(r?[0,0,0,0]:[23,59,59,999]).slice(t)),n)},h=this.$W,g=this.$M,_=this.$D,v=`set`+(this.$u?`UTC`:``);switch(u){case d:return r?p(1,0):p(31,11);case l:return r?p(1,g):p(0,g+1);case c:var y=this.$locale().weekStart||0,b=(h<y?h+7:h)-y;return p(r?_-b:_+(6-b),g);case s:case f:return m(v+`Hours`,0);case o:return m(v+`Minutes`,1);case a:return m(v+`Seconds`,2);case i:return m(v+`Milliseconds`,3);default:return this.clone()}},_.endOf=function(e){return this.startOf(e,!1)},_.$set=function(e,t){var n,c=T.p(e),u=`set`+(this.$u?`UTC`:``),p=(n={},n[s]=u+`Date`,n[f]=u+`Date`,n[l]=u+`Month`,n[d]=u+`FullYear`,n[o]=u+`Hours`,n[a]=u+`Minutes`,n[i]=u+`Seconds`,n[r]=u+`Milliseconds`,n)[c],m=c===s?this.$D+(t-this.$W):t;if(c===l||c===d){var h=this.clone().set(f,1);h.$d[p](m),h.init(),this.$d=h.set(f,Math.min(this.$D,h.daysInMonth())).$d}else p&&this.$d[p](m);return this.init(),this},_.set=function(e,t){return this.clone().$set(e,t)},_.get=function(e){return this[T.p(e)]()},_.add=function(r,u){var f,p=this;r=Number(r);var m=T.p(u),h=function(e){var t=w(p);return T.w(t.date(t.date()+Math.round(e*r)),p)};if(m===l)return this.set(l,this.$M+r);if(m===d)return this.set(d,this.$y+r);if(m===s)return h(1);if(m===c)return h(7);var g=(f={},f[a]=t,f[o]=n,f[i]=e,f)[m]||1,_=this.$d.getTime()+r*g;return T.w(_,this)},_.subtract=function(e,t){return this.add(-1*e,t)},_.format=function(e){var t=this,n=this.$locale();if(!this.isValid())return n.invalidDate||p;var r=e||`YYYY-MM-DDTHH:mm:ssZ`,i=T.z(this),a=this.$H,o=this.$m,s=this.$M,c=n.weekdays,l=n.months,u=n.meridiem,d=function(e,n,i,a){return e&&(e[n]||e(t,r))||i[n].slice(0,a)},f=function(e){return T.s(a%12||12,e,`0`)},m=u||function(e,t,n){var r=e<12?`AM`:`PM`;return n?r.toLowerCase():r};return r.replace(h,(function(e,r){return r||function(e){switch(e){case`YY`:return String(t.$y).slice(-2);case`YYYY`:return T.s(t.$y,4,`0`);case`M`:return s+1;case`MM`:return T.s(s+1,2,`0`);case`MMM`:return d(n.monthsShort,s,l,3);case`MMMM`:return d(l,s);case`D`:return t.$D;case`DD`:return T.s(t.$D,2,`0`);case`d`:return String(t.$W);case`dd`:return d(n.weekdaysMin,t.$W,c,2);case`ddd`:return d(n.weekdaysShort,t.$W,c,3);case`dddd`:return c[t.$W];case`H`:return String(a);case`HH`:return T.s(a,2,`0`);case`h`:return f(1);case`hh`:return f(2);case`a`:return m(a,o,!0);case`A`:return m(a,o,!1);case`m`:return String(o);case`mm`:return T.s(o,2,`0`);case`s`:return String(t.$s);case`ss`:return T.s(t.$s,2,`0`);case`SSS`:return T.s(t.$ms,3,`0`);case`Z`:return i}return null}(e)||i.replace(`:`,``)}))},_.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},_.diff=function(r,f,p){var m,h=this,g=T.p(f),_=w(r),v=(_.utcOffset()-this.utcOffset())*t,y=this-_,b=function(){return T.m(h,_)};switch(g){case d:m=b()/12;break;case l:m=b();break;case u:m=b()/3;break;case c:m=(y-v)/6048e5;break;case s:m=(y-v)/864e5;break;case o:m=y/n;break;case a:m=y/t;break;case i:m=y/e;break;default:m=y}return p?m:T.a(m)},_.daysInMonth=function(){return this.endOf(l).$D},_.$locale=function(){return b[this.$L]},_.locale=function(e,t){if(!e)return this.$L;var n=this.clone(),r=C(e,t,!0);return r&&(n.$L=r),n},_.clone=function(){return T.w(this.$d,this)},_.toDate=function(){return new Date(this.valueOf())},_.toJSON=function(){return this.isValid()?this.toISOString():null},_.toISOString=function(){return this.$d.toISOString()},_.toString=function(){return this.$d.toUTCString()},g}(),D=E.prototype;return w.prototype=D,[[`$ms`,r],[`$s`,i],[`$m`,a],[`$H`,o],[`$W`,s],[`$M`,l],[`$y`,d],[`$D`,f]].forEach((function(e){D[e[1]]=function(t){return this.$g(t,e[0],e[1])}})),w.extend=function(e,t){return e.$i||=(e(t,E,w),!0),w},w.locale=C,w.isDayjs=S,w.unix=function(e){return w(1e3*e)},w.en=b[y],w.Ls=b,w.p={},w}))})),ui=s(((e,t)=>{(function(n,r){typeof e==`object`&&t!==void 0?t.exports=r():typeof define==`function`&&define.amd?define(r):(n=typeof globalThis<`u`?globalThis:n||self).dayjs_plugin_customParseFormat=r()})(e,(function(){"use strict";var e={LTS:`h:mm:ss A`,LT:`h:mm A`,L:`MM/DD/YYYY`,LL:`MMMM D, YYYY`,LLL:`MMMM D, YYYY h:mm A`,LLLL:`dddd, MMMM D, YYYY h:mm A`},t=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,n=/\d/,r=/\d\d/,i=/\d\d?/,a=/\d*[^-_:/,()\s\d]+/,o={},s=function(e){return(e=+e)+(e>68?1900:2e3)},c=function(e){return function(t){this[e]=+t}},l=[/[+-]\d\d:?(\d\d)?|Z/,function(e){(this.zone||={}).offset=function(e){if(!e||e===`Z`)return 0;var t=e.match(/([+-]|\d\d)/g),n=60*t[1]+(+t[2]||0);return n===0?0:t[0]===`+`?-n:n}(e)}],u=function(e){var t=o[e];return t&&(t.indexOf?t:t.s.concat(t.f))},d=function(e,t){var n,r=o.meridiem;if(r){for(var i=1;i<=24;i+=1)if(e.indexOf(r(i,0,t))>-1){n=i>12;break}}else n=e===(t?`pm`:`PM`);return n},f={A:[a,function(e){this.afternoon=d(e,!1)}],a:[a,function(e){this.afternoon=d(e,!0)}],Q:[n,function(e){this.month=3*(e-1)+1}],S:[n,function(e){this.milliseconds=100*e}],SS:[r,function(e){this.milliseconds=10*e}],SSS:[/\d{3}/,function(e){this.milliseconds=+e}],s:[i,c(`seconds`)],ss:[i,c(`seconds`)],m:[i,c(`minutes`)],mm:[i,c(`minutes`)],H:[i,c(`hours`)],h:[i,c(`hours`)],HH:[i,c(`hours`)],hh:[i,c(`hours`)],D:[i,c(`day`)],DD:[r,c(`day`)],Do:[a,function(e){var t=o.ordinal,n=e.match(/\d+/);if(this.day=n[0],t)for(var r=1;r<=31;r+=1)t(r).replace(/\[|\]/g,``)===e&&(this.day=r)}],w:[i,c(`week`)],ww:[r,c(`week`)],M:[i,c(`month`)],MM:[r,c(`month`)],MMM:[a,function(e){var t=u(`months`),n=(u(`monthsShort`)||t.map((function(e){return e.slice(0,3)}))).indexOf(e)+1;if(n<1)throw Error();this.month=n%12||n}],MMMM:[a,function(e){var t=u(`months`).indexOf(e)+1;if(t<1)throw Error();this.month=t%12||t}],Y:[/[+-]?\d+/,c(`year`)],YY:[r,function(e){this.year=s(e)}],YYYY:[/\d{4}/,c(`year`)],Z:l,ZZ:l};function p(n){for(var r=n,i=o&&o.formats,a=(n=r.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,(function(t,n,r){var a=r&&r.toUpperCase();return n||i[r]||e[r]||i[a].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(e,t,n){return t||n.slice(1)}))}))).match(t),s=a.length,c=0;c<s;c+=1){var l=a[c],u=f[l],d=u&&u[0],p=u&&u[1];a[c]=p?{regex:d,parser:p}:l.replace(/^\[|\]$/g,``)}return function(e){for(var t={},n=0,r=0;n<s;n+=1){var i=a[n];if(typeof i==`string`)r+=i.length;else{var o=i.regex,c=i.parser,l=e.slice(r),u=o.exec(l)[0];c.call(t,u),e=e.replace(u,``)}}return function(e){var t=e.afternoon;if(t!==void 0){var n=e.hours;t?n<12&&(e.hours+=12):n===12&&(e.hours=0),delete e.afternoon}}(t),t}}return function(e,t,n){n.p.customParseFormat=!0,e&&e.parseTwoDigitYear&&(s=e.parseTwoDigitYear);var r=t.prototype,i=r.parse;r.parse=function(e){var t=e.date,r=e.utc,a=e.args;this.$u=r;var s=a[1];if(typeof s==`string`){var c=!0===a[2],l=!0===a[3],u=c||l,d=a[2];l&&(d=a[2]),o=this.$locale(),!c&&d&&(o=n.Ls[d]),this.$d=function(e,t,n,r){try{if([`x`,`X`].indexOf(t)>-1)return new Date((t===`X`?1e3:1)*e);var i=p(t)(e),a=i.year,o=i.month,s=i.day,c=i.hours,l=i.minutes,u=i.seconds,d=i.milliseconds,f=i.zone,m=i.week,h=new Date,g=s||(a||o?1:h.getDate()),_=a||h.getFullYear(),v=0;a&&!o||(v=o>0?o-1:h.getMonth());var y,b=c||0,x=l||0,S=u||0,C=d||0;return f?new Date(Date.UTC(_,v,g,b,x,S,C+60*f.offset*1e3)):n?new Date(Date.UTC(_,v,g,b,x,S,C)):(y=new Date(_,v,g,b,x,S,C),m&&(y=r(y).week(m).toDate()),y)}catch{return new Date(``)}}(t,s,r,n),this.init(),d&&!0!==d&&(this.$L=this.locale(d).$L),u&&t!=this.format(s)&&(this.$d=new Date(``)),o={}}else if(s instanceof Array)for(var f=s.length,m=1;m<=f;m+=1){a[1]=s[m-1];var h=n.apply(this,a);if(h.isValid()){this.$d=h.$d,this.$L=h.$L,this.init();break}m===f&&(this.$d=new Date(``))}else i.call(this,e)}}}))})),di=l(li(),1),fi=l(ui(),1);di.default.extend(fi.default);var pi=[`YYYY-MM-DDTHH:mm:ss`,`YYYY-MM-DD HH:mm`,`YYYY-MM-DD`,`YYYY/MM/DD`,`MM/DD/YYYY`,`M/D/YYYY`,`M/D/YY`,`DD/MM/YYYY`,`DD.MM.YYYY`,`MMM D, YYYY`,`MMMM D, YYYY`,`MMM YYYY`,`MMMM YYYY`,`YYYY-MM`,`YYYY/MM`,`YYYY`];function mi(e){return e.includes(`HH`)||e.includes(`mm`)||e.includes(`ss`)?`datetime`:e.includes(`DD`)||/(?<![MA-Z])D(?!D)/.test(e)?`day`:e===`YYYY`?`year`:e.includes(`MM`)||e.includes(`MMM`)||e.includes(`MMMM`)||e.includes(`M/`)?`month`:`day`}function hi(e){return new Date(Date.UTC(e.year(),e.month(),e.date(),e.hour(),e.minute(),e.second(),e.millisecond()))}function gi(e){let t=e.trim();if(!t)return null;if(/^\d{4}$/.test(t)){let e=(0,di.default)(t,`YYYY`,!0);return e.isValid()?hi(e):null}for(let e of pi){if(e===`YYYY`)continue;let n=(0,di.default)(t,e,!0);if(n.isValid())return hi(n)}return null}function _i(e){let t=e.trim();if(!t)return;let n=gi(t);if(n)return n.getTime();let r=parseFloat(t);if(!isNaN(r))return r}function vi(e){let t=e.trim();if(!t)return;let n=Number(t);return isNaN(n)?gi(t)?.getTime():n}function yi(e){if(e.length===0)return null;let t=[],n=null,r=e[0].trim();if(!r)return null;if(/^\d{4}$/.test(r)){for(let n of e){let e=n.trim();if(!/^\d{4}$/.test(e))return null;let r=(0,di.default)(e,`YYYY`,!0);if(!r.isValid())return null;t.push(hi(r))}return{dates:t,granularity:`year`}}let i=[];for(let e of pi)e!==`YYYY`&&(0,di.default)(r,e,!0).isValid()&&i.push(e);if(i.length===0)return null;for(let r of i){let i=[],a=!0;for(let t of e){let e=(0,di.default)(t.trim(),r,!0);if(!e.isValid()){a=!1;break}i.push(hi(e))}if(a){n=r,t.push(...i);break}}return n?{dates:t,granularity:mi(n)}:null}function bi(e){return typeof e==`string`?vi(e):e}function xi(e,t){if(typeof e!=`string`)return e;let n=gi(e);return n?n.getTime():t?void 0:_i(e)}function Si(e,t){if(!t||t.min===void 0&&t.max===void 0)return e.map((e,t)=>t);let n=yi(e)!==null,r=xi(t.min,n),i=xi(t.max,n);if(r===void 0&&i===void 0)return e.map((e,t)=>t);let a=[];for(let t=0;t<e.length;t++){let n=_i(e[t]);if(n===void 0){a.push(t);continue}r!==void 0&&n<r||i!==void 0&&n>i||a.push(t)}return a}function Ci(e){let t=Number.isFinite(e)?Math.max(0,Math.min(100,e)):60;return t/(t+100)}function wi(e,t,n,r=!0){let i=r?0:1/0,a=r?0:-1/0,o=1/0,s=!0,c=!1;for(let t of e)Number.isFinite(t)&&(c=!0,t<i&&(i=t),t>a&&(a=t),t<=0?s=!1:t<o&&(o=t));n===Lr.Log&&c&&s&&(i=o),!c&&!r&&(i=0,a=0);let l=bi(t?.min)??i,u=bi(t?.max)??a;if(l>u&&([l,u]=[u,l]),l===u){if(l===0)u=1;else{let e=Math.abs(l)*.1;l-=e,u+=e}}return[l,u]}function Ti(e,t){if(typeof e.constant!=`function`)return null;let n=e.domain().map(Number).filter(Number.isFinite),r=Math.min(...n),i=Math.max(...n);if(!(i>0))return null;let a=r>0?Math.ceil(Math.log10(r)):0,o=Math.floor(Math.log10(i)),s=[];for(let e=a;e<=o;e++)s.push(10**e);if(s.length===0)return null;let c=Math.ceil(s.length/Math.max(2,t));return c>1?s.filter((e,t)=>t%c===0):s}function Ei(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function Di(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Oi(e){let t,n,r;e.length===2?(t=e===Ei||e===Di?e:ki,n=e,r=e):(t=Ei,n=(t,n)=>Ei(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<0?i=t+1:a=t}while(i<a)}return i}function a(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<=0?i=t+1:a=t}while(i<a)}return i}function o(e,t,n=0,a=e.length){let o=i(e,t,n,a-1);return o>n&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function ki(){return 0}function Ai(e){return e===null?NaN:+e}var ji=Oi(Ei),Mi=ji.right;ji.left;var Ni=Oi(Ai).center,Pi=class extends Map{constructor(e,t=Ri){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(Fi(this,e))}has(e){return super.has(Fi(this,e))}set(e,t){return super.set(Ii(this,e),t)}delete(e){return super.delete(Li(this,e))}};function Fi({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function Ii({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function Li({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function Ri(e){return typeof e==`object`&&e?e.valueOf():e}function zi(e){return e}function Bi(e,t,...n){return Vi(e,zi,t,n)}function Vi(e,t,n,r){return(function e(i,a){if(a>=r.length)return n(i);let o=new Pi,s=r[a++],c=-1;for(let e of i){let t=s(e,++c,i),n=o.get(t);n?n.push(e):o.set(t,[e])}for(let[t,n]of o)o.set(t,e(n,a));return t(o)})(e,0)}var Hi=Math.sqrt(50),Ui=Math.sqrt(10),Wi=Math.sqrt(2);function Gi(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=Hi?10:a>=Ui?5:a>=Wi?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/l<e&&++s,c/l>t&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*l<e&&++s,c*l>t&&--c),c<s&&.5<=n&&n<2?Gi(e,t,n*2):[s,c,l]}function Ki(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];let r=t<e,[i,a,o]=r?Gi(t,e,n):Gi(e,t,n);if(!(a>=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e<s;++e)c[e]=(a-e)/-o;else for(let e=0;e<s;++e)c[e]=(a-e)*o}else if(o<0)for(let e=0;e<s;++e)c[e]=(i+e)/-o;else for(let e=0;e<s;++e)c[e]=(i+e)*o;return c}function qi(e,t,n){return t=+t,e=+e,n=+n,Gi(e,t,n)[2]}function Ji(e,t,n){t=+t,e=+e,n=+n;let r=t<e,i=r?qi(t,e,n):qi(e,t,n);return(r?-1:1)*(i<0?1/-i:i)}function Yi(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n<t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function Xi(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n>t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n>i||n===void 0&&i>=i)&&(n=i)}return n}function Zi(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function Qi(e,t){let n=0;if(t===void 0)for(let t of e)(t=+t)&&(n+=t);else{let r=-1;for(let i of e)(i=+t(i,++r,e))&&(n+=i)}return n}function $i(e){return e}var ea=1,ta=2,na=3,ra=4,ia=1e-6;function aa(e){return`translate(`+e+`,0)`}function oa(e){return`translate(0,`+e+`)`}function sa(e){return t=>+e(t)}function ca(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),n=>+e(n)+t}function la(){return!this.__axis}function ua(e,t){var n=[],r=null,i=null,a=6,o=6,s=3,c=typeof window<`u`&&window.devicePixelRatio>1?0:.5,l=e===ea||e===ra?-1:1,u=e===ra||e===ta?`x`:`y`,d=e===ea||e===na?aa:oa;function f(f){var p=r??(t.ticks?t.ticks.apply(t,n):t.domain()),m=i??(t.tickFormat?t.tickFormat.apply(t,n):$i),h=Math.max(a,0)+s,g=t.range(),_=+g[0]+c,v=+g[g.length-1]+c,y=(t.bandwidth?ca:sa)(t.copy(),c),b=f.selection?f.selection():f,x=b.selectAll(`.domain`).data([null]),S=b.selectAll(`.tick`).data(p,t).order(),C=S.exit(),w=S.enter().append(`g`).attr(`class`,`tick`),T=S.select(`line`),E=S.select(`text`);x=x.merge(x.enter().insert(`path`,`.tick`).attr(`class`,`domain`).attr(`stroke`,`currentColor`)),S=S.merge(w),T=T.merge(w.append(`line`).attr(`stroke`,`currentColor`).attr(u+`2`,l*a)),E=E.merge(w.append(`text`).attr(`fill`,`currentColor`).attr(u,l*h).attr(`dy`,e===ea?`0em`:e===na?`0.71em`:`0.32em`)),f!==b&&(x=x.transition(f),S=S.transition(f),T=T.transition(f),E=E.transition(f),C=C.transition(f).attr(`opacity`,ia).attr(`transform`,function(e){return isFinite(e=y(e))?d(e+c):this.getAttribute(`transform`)}),w.attr(`opacity`,ia).attr(`transform`,function(e){var t=this.parentNode.__axis;return d((t&&isFinite(t=t(e))?t:y(e))+c)})),C.remove(),x.attr(`d`,e===ra||e===ta?o?`M`+l*o+`,`+_+`H`+c+`V`+v+`H`+l*o:`M`+c+`,`+_+`V`+v:o?`M`+_+`,`+l*o+`V`+c+`H`+v+`V`+l*o:`M`+_+`,`+c+`H`+v),S.attr(`opacity`,1).attr(`transform`,function(e){return d(y(e)+c)}),T.attr(u+`2`,l*a),E.attr(u,l*h).text(m),b.filter(la).attr(`fill`,`none`).attr(`font-size`,10).attr(`font-family`,`sans-serif`).attr(`text-anchor`,e===ta?`start`:e===ra?`end`:`middle`),b.each(function(){this.__axis=y})}return f.scale=function(e){return arguments.length?(t=e,f):t},f.ticks=function(){return n=Array.from(arguments),f},f.tickArguments=function(e){return arguments.length?(n=e==null?[]:Array.from(e),f):n.slice()},f.tickValues=function(e){return arguments.length?(r=e==null?null:Array.from(e),f):r&&r.slice()},f.tickFormat=function(e){return arguments.length?(i=e,f):i},f.tickSize=function(e){return arguments.length?(a=o=+e,f):a},f.tickSizeInner=function(e){return arguments.length?(a=+e,f):a},f.tickSizeOuter=function(e){return arguments.length?(o=+e,f):o},f.tickPadding=function(e){return arguments.length?(s=+e,f):s},f.offset=function(e){return arguments.length?(c=+e,f):c},f}function da(e){return ua(ea,e)}function fa(e){return ua(ta,e)}function pa(e){return ua(na,e)}function ma(e){return ua(ra,e)}var ha={value:()=>{}};function ga(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new _a(n)}function _a(e){this._=e}function va(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}_a.prototype=ga.prototype={constructor:_a,on:function(e,t){var n=this._,r=va(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=ya(n[i],e.name)))return i;return}if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=ba(n[i],e.name,t);else if(t==null)for(i in n)n[i]=ba(n[i],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new _a(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function ya(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function ba(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=ha,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var xa={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function Sa(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),xa.hasOwnProperty(t)?{space:xa[t],local:e}:e}function Ca(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function wa(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function Ta(e){var t=Sa(e);return(t.local?wa:Ca)(t)}function Ea(){}function Da(e){return e==null?Ea:function(){return this.querySelector(e)}}function Oa(e){typeof e!=`function`&&(e=Da(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new _s(r,this._parents)}function ka(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function Aa(){return[]}function ja(e){return e==null?Aa:function(){return this.querySelectorAll(e)}}function Ma(e){return function(){return ka(e.apply(this,arguments))}}function Na(e){e=typeof e==`function`?Ma(e):ja(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new _s(r,i)}function Pa(e){return function(){return this.matches(e)}}function Fa(e){return function(t){return t.matches(e)}}var Ia=Array.prototype.find;function La(e){return function(){return Ia.call(this.children,e)}}function Ra(){return this.firstElementChild}function za(e){return this.select(e==null?Ra:La(typeof e==`function`?e:Fa(e)))}var Ba=Array.prototype.filter;function Va(){return Array.from(this.children)}function Ha(e){return function(){return Ba.call(this.children,e)}}function Ua(e){return this.selectAll(e==null?Va:Ha(typeof e==`function`?e:Fa(e)))}function Wa(e){typeof e!=`function`&&(e=Pa(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new _s(r,this._parents)}function Ga(e){return Array(e.length)}function Ka(){return new _s(this._enter||this._groups.map(Ga),this._parents)}function qa(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}qa.prototype={constructor:qa,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function Ja(e){return function(){return e}}function Ya(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new qa(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function Xa(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new qa(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function Za(e){return e.__data__}function Qa(e,t){if(!arguments.length)return Array.from(this,Za);var n=t?Xa:Ya,r=this._parents,i=this._groups;typeof e!=`function`&&(e=Ja(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=$a(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new _s(o,r),o._enter=s,o._exit=c,o}function $a(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function eo(){return new _s(this._exit||this._groups.map(Ga),this._parents)}function to(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function no(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new _s(s,this._parents)}function ro(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function io(e){e||=ao;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new _s(i,this._parents).order()}function ao(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function oo(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function so(){return Array.from(this)}function co(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function lo(){let e=0;for(let t of this)++e;return e}function uo(){return!this.node()}function fo(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function po(e){return function(){this.removeAttribute(e)}}function mo(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ho(e,t){return function(){this.setAttribute(e,t)}}function go(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function _o(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function vo(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function yo(e,t){var n=Sa(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?mo:po:typeof t==`function`?n.local?vo:_o:n.local?go:ho)(n,t))}function bo(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function xo(e){return function(){this.style.removeProperty(e)}}function So(e,t,n){return function(){this.style.setProperty(e,t,n)}}function Co(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function wo(e,t,n){return arguments.length>1?this.each((t==null?xo:typeof t==`function`?Co:So)(e,t,n??``)):To(this.node(),e)}function To(e,t){return e.style.getPropertyValue(t)||bo(e).getComputedStyle(e,null).getPropertyValue(t)}function Eo(e){return function(){delete this[e]}}function Do(e,t){return function(){this[e]=t}}function Oo(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function ko(e,t){return arguments.length>1?this.each((t==null?Eo:typeof t==`function`?Oo:Do)(e,t)):this.node()[e]}function Ao(e){return e.trim().split(/^|\s+/)}function jo(e){return e.classList||new Mo(e)}function Mo(e){this._node=e,this._names=Ao(e.getAttribute(`class`)||``)}Mo.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function No(e,t){for(var n=jo(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function Po(e,t){for(var n=jo(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Fo(e){return function(){No(this,e)}}function Io(e){return function(){Po(this,e)}}function Lo(e,t){return function(){(t.apply(this,arguments)?No:Po)(this,e)}}function Ro(e,t){var n=Ao(e+``);if(arguments.length<2){for(var r=jo(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?Lo:t?Fo:Io)(n,t))}function zo(){this.textContent=``}function Bo(e){return function(){this.textContent=e}}function Vo(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function Ho(e){return arguments.length?this.each(e==null?zo:(typeof e==`function`?Vo:Bo)(e)):this.node().textContent}function Uo(){this.innerHTML=``}function Wo(e){return function(){this.innerHTML=e}}function Go(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function Ko(e){return arguments.length?this.each(e==null?Uo:(typeof e==`function`?Go:Wo)(e)):this.node().innerHTML}function qo(){this.nextSibling&&this.parentNode.appendChild(this)}function Jo(){return this.each(qo)}function Yo(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Xo(){return this.each(Yo)}function Zo(e){var t=typeof e==`function`?e:Ta(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Qo(){return null}function $o(e,t){var n=typeof e==`function`?e:Ta(e),r=t==null?Qo:typeof t==`function`?t:Da(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function es(){var e=this.parentNode;e&&e.removeChild(this)}function ts(){return this.each(es)}function ns(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function rs(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function is(e){return this.select(e?rs:ns)}function as(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function os(e){return function(t){e.call(this,t,this.__data__)}}function ss(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function cs(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function ls(e,t,n){return function(){var r=this.__on,i,a=os(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function us(e,t,n){var r=ss(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}return}for(s=t?ls:cs,i=0;i<a;++i)this.each(s(r[i],t,n));return this}function ds(e,t,n){var r=bo(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function fs(e,t){return function(){return ds(this,e,t)}}function ps(e,t){return function(){return ds(this,e,t.apply(this,arguments))}}function ms(e,t){return this.each((typeof t==`function`?ps:fs)(e,t))}function*hs(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var gs=[null];function _s(e,t){this._groups=e,this._parents=t}function vs(){return new _s([[document.documentElement]],gs)}function ys(){return this}_s.prototype=vs.prototype={constructor:_s,select:Oa,selectAll:Na,selectChild:za,selectChildren:Ua,filter:Wa,data:Qa,enter:Ka,exit:eo,join:to,merge:no,selection:ys,order:ro,sort:io,call:oo,nodes:so,node:co,size:lo,empty:uo,each:fo,attr:yo,style:wo,property:ko,classed:Ro,text:Ho,html:Ko,raise:Jo,lower:Xo,append:Zo,insert:$o,remove:ts,clone:is,datum:as,on:us,dispatch:ms,[Symbol.iterator]:hs};function $(e){return typeof e==`string`?new _s([[document.querySelector(e)]],[document.documentElement]):new _s([[e]],gs)}function bs(e){let t;for(;t=e.sourceEvent;)e=t;return e}function xs(e,t){if(e=bs(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var r=n.createSVGPoint();return r.x=e.clientX,r.y=e.clientY,r=r.matrixTransform(t.getScreenCTM().inverse()),[r.x,r.y]}if(t.getBoundingClientRect){var i=t.getBoundingClientRect();return[e.clientX-i.left-t.clientLeft,e.clientY-i.top-t.clientTop]}}return[e.pageX,e.pageY]}function Ss(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function Cs(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function ws(){}var Ts=.7,Es=1/Ts,Ds=`\\s*([+-]?\\d+)\\s*`,Os=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,ks=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,As=/^#([0-9a-f]{3,8})$/,js=RegExp(`^rgb\\(${Ds},${Ds},${Ds}\\)$`),Ms=RegExp(`^rgb\\(${ks},${ks},${ks}\\)$`),Ns=RegExp(`^rgba\\(${Ds},${Ds},${Ds},${Os}\\)$`),Ps=RegExp(`^rgba\\(${ks},${ks},${ks},${Os}\\)$`),Fs=RegExp(`^hsl\\(${Os},${ks},${ks}\\)$`),Is=RegExp(`^hsla\\(${Os},${ks},${ks},${Os}\\)$`),Ls={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};Ss(ws,Hs,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:Rs,formatHex:Rs,formatHex8:zs,formatHsl:Bs,formatRgb:Vs,toString:Vs});function Rs(){return this.rgb().formatHex()}function zs(){return this.rgb().formatHex8()}function Bs(){return tc(this).formatHsl()}function Vs(){return this.rgb().formatRgb()}function Hs(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=As.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Us(t):n===3?new qs(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Ws(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Ws(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=js.exec(e))?new qs(t[1],t[2],t[3],1):(t=Ms.exec(e))?new qs(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=Ns.exec(e))?Ws(t[1],t[2],t[3],t[4]):(t=Ps.exec(e))?Ws(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=Fs.exec(e))?ec(t[1],t[2]/100,t[3]/100,1):(t=Is.exec(e))?ec(t[1],t[2]/100,t[3]/100,t[4]):Ls.hasOwnProperty(e)?Us(Ls[e]):e===`transparent`?new qs(NaN,NaN,NaN,0):null}function Us(e){return new qs(e>>16&255,e>>8&255,e&255,1)}function Ws(e,t,n,r){return r<=0&&(e=t=n=NaN),new qs(e,t,n,r)}function Gs(e){return e instanceof ws||(e=Hs(e)),e?(e=e.rgb(),new qs(e.r,e.g,e.b,e.opacity)):new qs}function Ks(e,t,n,r){return arguments.length===1?Gs(e):new qs(e,t,n,r??1)}function qs(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}Ss(qs,Ks,Cs(ws,{brighter(e){return e=e==null?Es:Es**+e,new qs(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Ts:Ts**+e,new qs(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new qs(Qs(this.r),Qs(this.g),Qs(this.b),Zs(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:Js,formatHex:Js,formatHex8:Ys,formatRgb:Xs,toString:Xs}));function Js(){return`#${$s(this.r)}${$s(this.g)}${$s(this.b)}`}function Ys(){return`#${$s(this.r)}${$s(this.g)}${$s(this.b)}${$s((isNaN(this.opacity)?1:this.opacity)*255)}`}function Xs(){let e=Zs(this.opacity);return`${e===1?`rgb(`:`rgba(`}${Qs(this.r)}, ${Qs(this.g)}, ${Qs(this.b)}${e===1?`)`:`, ${e})`}`}function Zs(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function Qs(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function $s(e){return e=Qs(e),(e<16?`0`:``)+e.toString(16)}function ec(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new rc(e,t,n,r)}function tc(e){if(e instanceof rc)return new rc(e.h,e.s,e.l,e.opacity);if(e instanceof ws||(e=Hs(e)),!e)return new rc;if(e instanceof rc)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new rc(o,s,c,e.opacity)}function nc(e,t,n,r){return arguments.length===1?tc(e):new rc(e,t,n,r??1)}function rc(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}Ss(rc,nc,Cs(ws,{brighter(e){return e=e==null?Es:Es**+e,new rc(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Ts:Ts**+e,new rc(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,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new qs(oc(e>=240?e-240:e+120,i,r),oc(e,i,r),oc(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new rc(ic(this.h),ac(this.s),ac(this.l),Zs(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=Zs(this.opacity);return`${e===1?`hsl(`:`hsla(`}${ic(this.h)}, ${ac(this.s)*100}%, ${ac(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function ic(e){return e=(e||0)%360,e<0?e+360:e}function ac(e){return Math.max(0,Math.min(1,e||0))}function oc(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var sc=e=>()=>e;function cc(e,t){return function(n){return e+n*t}}function lc(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function uc(e){return(e=+e)==1?dc:function(t,n){return n-t?lc(t,n,e):sc(isNaN(t)?n:t)}}function dc(e,t){var n=t-e;return n?cc(e,n):sc(isNaN(e)?t:e)}var fc=(function e(t){var n=uc(t);function r(e,t){var r=n((e=Ks(e)).r,(t=Ks(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=dc(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function pc(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function mc(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function hc(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o;for(o=0;o<r;++o)i[o]=wc(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function gc(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function _c(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function vc(e,t){var n={},r={},i;for(i in(typeof e!=`object`||!e)&&(e={}),(typeof t!=`object`||!t)&&(t={}),t)i in e?n[i]=wc(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var yc=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,bc=new RegExp(yc.source,`g`);function xc(e){return function(){return e}}function Sc(e){return function(t){return e(t)+``}}function Cc(e,t){var n=yc.lastIndex=bc.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=yc.exec(e))&&(i=bc.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:_c(r,i)})),n=bc.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?Sc(c[0].x):xc(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function wc(e,t){var n=typeof t,r;return t==null||n===`boolean`?sc(t):(n===`number`?_c:n===`string`?(r=Hs(t))?(t=r,fc):Cc:t instanceof Hs?fc:t instanceof Date?gc:mc(t)?pc:Array.isArray(t)?hc:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?vc:_c)(e,t)}function Tc(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var Ec=180/Math.PI,Dc={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Oc(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*Ec,skewX:Math.atan(c)*Ec,scaleX:o,scaleY:s}}var kc;function Ac(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?Dc:Oc(t.a,t.b,t.c,t.d,t.e,t.f)}function jc(e){return e==null||(kc||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),kc.setAttribute(`transform`,e),!(e=kc.transform.baseVal.consolidate()))?Dc:(e=e.matrix,Oc(e.a,e.b,e.c,e.d,e.e,e.f))}function Mc(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:_c(e,i)},{i:c-2,x:_c(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:_c(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:_c(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:_c(e,n)},{i:s-2,x:_c(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var Nc=Mc(Ac,`px, `,`px)`,`deg)`),Pc=Mc(jc,`, `,`)`,`)`),Fc=0,Ic=0,Lc=0,Rc=1e3,zc,Bc,Vc=0,Hc=0,Uc=0,Wc=typeof performance==`object`&&performance.now?performance:Date,Gc=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Kc(){return Hc||=(Gc(qc),Wc.now()+Uc)}function qc(){Hc=0}function Jc(){this._call=this._time=this._next=null}Jc.prototype=Yc.prototype={constructor:Jc,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Kc():+n)+(t==null?0:+t),!this._next&&Bc!==this&&(Bc?Bc._next=this:zc=this,Bc=this),this._call=e,this._time=n,el()},stop:function(){this._call&&(this._call=null,this._time=1/0,el())}};function Yc(e,t,n){var r=new Jc;return r.restart(e,t,n),r}function Xc(){Kc(),++Fc;for(var e=zc,t;e;)(t=Hc-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Fc}function Zc(){Hc=(Vc=Wc.now())+Uc,Fc=Ic=0;try{Xc()}finally{Fc=0,$c(),Hc=0}}function Qc(){var e=Wc.now(),t=e-Vc;t>Rc&&(Uc-=t,Vc=e)}function $c(){for(var e,t=zc,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:zc=n);Bc=e,el(r)}function el(e){Fc||(Ic&&=clearTimeout(Ic),e-Hc>24?(e<1/0&&(Ic=setTimeout(Zc,e-Wc.now()-Uc)),Lc&&=clearInterval(Lc)):(Lc||=(Vc=Wc.now(),setInterval(Qc,Rc)),Fc=1,Gc(Zc)))}function tl(e,t,n){var r=new Jc;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var nl=ga(`start`,`end`,`cancel`,`interrupt`),rl=[];function il(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;cl(e,n,{name:t,index:r,group:i,on:nl,tween:rl,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function al(e,t){var n=sl(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function ol(e,t){var n=sl(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function sl(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function cl(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Yc(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return tl(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(tl(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function ll(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n){if((r=n[o]).name!==t){a=!1;continue}i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]}a&&delete e.__transition}}function ul(e){return this.each(function(){ll(this,e)})}function dl(e,t){var n,r;return function(){var i=ol(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function fl(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=ol(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function pl(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=sl(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?dl:fl)(n,e,t))}function ml(e,t,n){var r=e._id;return e.each(function(){var e=ol(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return sl(e,r).value[t]}}function hl(e,t){var n;return(typeof t==`number`?_c:t instanceof Hs?fc:(n=Hs(t))?(t=n,fc):Cc)(e,t)}function gl(e){return function(){this.removeAttribute(e)}}function _l(e){return function(){this.removeAttributeNS(e.space,e.local)}}function vl(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function yl(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function bl(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function xl(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Sl(e,t){var n=Sa(e),r=n===`transform`?Pc:hl;return this.attrTween(e,typeof t==`function`?(n.local?xl:bl)(n,r,ml(this,`attr.`+e,t)):t==null?(n.local?_l:gl)(n):(n.local?yl:vl)(n,r,t))}function Cl(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function wl(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function Tl(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&wl(e,i)),n}return i._value=t,i}function El(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&Cl(e,i)),n}return i._value=t,i}function Dl(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=Sa(e);return this.tween(n,(r.local?Tl:El)(r,t))}function Ol(e,t){return function(){al(this,e).delay=+t.apply(this,arguments)}}function kl(e,t){return t=+t,function(){al(this,e).delay=t}}function Al(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?Ol:kl)(t,e)):sl(this.node(),t).delay}function jl(e,t){return function(){ol(this,e).duration=+t.apply(this,arguments)}}function Ml(e,t){return t=+t,function(){ol(this,e).duration=t}}function Nl(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?jl:Ml)(t,e)):sl(this.node(),t).duration}function Pl(e,t){if(typeof t!=`function`)throw Error();return function(){ol(this,e).ease=t}}function Fl(e){var t=this._id;return arguments.length?this.each(Pl(t,e)):sl(this.node(),t).ease}function Il(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();ol(this,e).ease=n}}function Ll(e){if(typeof e!=`function`)throw Error();return this.each(Il(this._id,e))}function Rl(e){typeof e!=`function`&&(e=Pa(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new pu(r,this._parents,this._name,this._id)}function zl(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new pu(o,this._parents,this._name,this._id)}function Bl(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function Vl(e,t,n){var r,i,a=Bl(t)?al:ol;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function Hl(e,t){var n=this._id;return arguments.length<2?sl(this.node(),n).on.on(e):this.each(Vl(n,e,t))}function Ul(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function Wl(){return this.on(`end.remove`,Ul(this._id))}function Gl(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=Da(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,il(l[f],t,n,f,l,sl(u,n)));return new pu(a,this._parents,t,n)}function Kl(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=ja(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=sl(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&il(p,t,n,h,f,m);a.push(f),o.push(u)}return new pu(a,o,t,n)}var ql=vs.prototype.constructor;function Jl(){return new ql(this._groups,this._parents)}function Yl(e,t){var n,r,i;return function(){var a=To(this,e),o=(this.style.removeProperty(e),To(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function Xl(e){return function(){this.style.removeProperty(e)}}function Zl(e,t,n){var r,i=n+``,a;return function(){var o=To(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function Ql(e,t,n){var r,i,a;return function(){var o=To(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),To(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function $l(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=ol(this,e),l=c.on,u=c.value[a]==null?s||=Xl(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function eu(e,t,n){var r=(e+=``)==`transform`?Nc:hl;return t==null?this.styleTween(e,Yl(e,r)).on(`end.style.`+e,Xl(e)):typeof t==`function`?this.styleTween(e,Ql(e,r,ml(this,`style.`+e,t))).each($l(this._id,e)):this.styleTween(e,Zl(e,r,t),n).on(`end.style.`+e,null)}function tu(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function nu(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&tu(e,a,n)),r}return a._value=t,a}function ru(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,nu(e,t,n??``))}function iu(e){return function(){this.textContent=e}}function au(e){return function(){var t=e(this);this.textContent=t??``}}function ou(e){return this.tween(`text`,typeof e==`function`?au(ml(this,`text`,e)):iu(e==null?``:e+``))}function su(e){return function(t){this.textContent=e.call(this,t)}}function cu(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&su(r)),t}return r._value=e,r}function lu(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,cu(e))}function uu(){for(var e=this._name,t=this._id,n=hu(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=sl(c,t);il(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new pu(r,this._parents,e,n)}function du(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=ol(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var fu=0;function pu(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function mu(e){return vs().transition(e)}function hu(){return++fu}var gu=vs.prototype;pu.prototype=mu.prototype={constructor:pu,select:Gl,selectAll:Kl,selectChild:gu.selectChild,selectChildren:gu.selectChildren,filter:Rl,merge:zl,selection:Jl,transition:uu,call:gu.call,nodes:gu.nodes,node:gu.node,size:gu.size,empty:gu.empty,each:gu.each,on:Hl,attr:Sl,attrTween:Dl,style:eu,styleTween:ru,text:ou,textTween:lu,remove:Wl,tween:pl,delay:Al,duration:Nl,ease:Fl,easeVarying:Ll,end:du,[Symbol.iterator]:gu[Symbol.iterator]};function _u(e){return--e*e*e+1}function vu(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var yu={time:null,delay:0,duration:250,ease:vu};function bu(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function xu(e){var t,n;e instanceof pu?(t=e._id,e=e._name):(t=hu(),(n=yu).time=Kc(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&il(c,e,t,l,o,n||bu(c,t));return new pu(r,this._parents,e,t)}vs.prototype.interrupt=ul,vs.prototype.transition=xu;var{abs:Su,max:Cu,min:wu}=Math;[`w`,`e`].map(Tu),[`n`,`s`].map(Tu),[`n`,`w`,`e`,`s`,`nw`,`ne`,`sw`,`se`].map(Tu);function Tu(e){return{type:e}}var Eu=Math.PI,Du=2*Eu,Ou=1e-6,ku=Du-Ou;function Au(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function ju(e){let t=Math.floor(e);if(!(t>=0))throw Error(`invalid digits: ${e}`);if(t>15)return Au;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=Math.round(arguments[t]*n)/n+e[t]}}var Mu=class{constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._=``,this._append=e==null?Au:ju(e)}moveTo(e,t){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,t){this._append`L${this._x1=+e},${this._y1=+t}`}quadraticCurveTo(e,t,n,r){this._append`Q${+e},${+t},${this._x1=+n},${this._y1=+r}`}bezierCurveTo(e,t,n,r,i,a){this._append`C${+e},${+t},${+n},${+r},${this._x1=+i},${this._y1=+a}`}arcTo(e,t,n,r,i){if(e=+e,t=+t,n=+n,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let a=this._x1,o=this._y1,s=n-e,c=r-t,l=a-e,u=o-t,d=l*l+u*u;if(this._x1===null)this._append`M${this._x1=e},${this._y1=t}`;else if(d>Ou){if(!(Math.abs(u*s-c*l)>Ou)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((Eu-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>Ou&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>Ou||Math.abs(this._y1-l)>Ou)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%Du+Du),d>ku?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>Ou&&this._append`A${n},${n},0,${+(d>=Eu)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};Mu.prototype;function Nu(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function Pu(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Fu(e){return e=Pu(Math.abs(e)),e?e[1]:NaN}function Iu(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function Lu(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var Ru=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function zu(e){if(!(t=Ru.exec(e)))throw Error(`invalid format: `+e);var t;return new Bu({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]})}zu.prototype=Bu.prototype;function Bu(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+``}Bu.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 Vu(e){out:for(var t=e.length,n=1,r=-1,i;n<t;++n)switch(e[n]){case`.`:r=i=n;break;case`0`:r===0&&(r=n),i=n;break;default:if(!+e[n])break out;r>0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var Hu;function Uu(e,t){var n=Pu(e,t);if(!n)return Hu=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(Hu=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+Pu(e,Math.max(0,t+a-1))[0]}function Wu(e,t){var n=Pu(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var Gu={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:Nu,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)=>Wu(e*100,t),r:Wu,s:Uu,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Ku(e){return e}var qu=Array.prototype.map,Ju=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function Yu(e){var t=e.grouping===void 0||e.thousands===void 0?Ku:Iu(qu.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?Ku:Lu(qu.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=zu(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):Gu[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=Gu[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=Vu(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&Hu!==void 0?Ju[8+Hu/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++o<l;)if(p=e.charCodeAt(o),48>p||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T<h?Array(h-T+1).join(u):``;switch(g&&m&&(e=t(E+e,E.length?h-r.length:1/0),E=``),d){case`<`:e=n+e+r+E;break;case`=`:e=n+E+e+r;break;case`^`:e=E.slice(0,T=E.length>>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(Fu(t)/3)))*3,r=10**-n,i=l((e=zu(e),e.type=`f`,e),{suffix:Ju[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var Xu,Zu,Qu;$u({thousands:`,`,grouping:[3],currency:[`$`,``]});function $u(e){return Xu=Yu(e),Zu=Xu.format,Qu=Xu.formatPrefix,Xu}function ed(e){return Math.max(0,-Fu(Math.abs(e)))}function td(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Fu(t)/3)))*3-Fu(Math.abs(e)))}function nd(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Fu(t)-Fu(e))+1}function rd(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}var id=Symbol(`implicit`);function ad(){var e=new Pi,t=[],n=[],r=id;function i(i){let a=e.get(i);if(a===void 0){if(r!==id)return r;e.set(i,a=t.push(i)-1)}return n[a%n.length]}return i.domain=function(n){if(!arguments.length)return t.slice();t=[],e=new Pi;for(let r of n)e.has(r)||e.set(r,t.push(r)-1);return i},i.range=function(e){return arguments.length?(n=Array.from(e),i):n.slice()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return ad(t,n).unknown(r)},rd.apply(i,arguments),i}function od(){var e=ad().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=Zi(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return od(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},rd.apply(d(),arguments)}function sd(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return sd(t())},e}function cd(){return sd(od.apply(null,arguments).paddingInner(1))}function ld(e){return function(){return e}}function ud(e){return+e}var dd=[0,1];function fd(e){return e}function pd(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:ld(isNaN(t)?NaN:.5)}function md(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function hd(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i<r?(r=pd(i,r),a=n(o,a)):(r=pd(r,i),a=n(a,o)),function(e){return a(r(e))}}function gd(e,t,n){var r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)i[o]=pd(e[o],e[o+1]),a[o]=n(t[o],t[o+1]);return function(t){var n=Mi(e,t,1,r)-1;return a[n](i[n](t))}}function _d(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function vd(){var e=dd,t=dd,n=wc,r,i,a,o=fd,s,c,l;function u(){var n=Math.min(e.length,t.length);return o!==fd&&(o=md(e[0],e[n-1])),s=n>2?gd:hd,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),_c))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,ud),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=Tc,u()},d.clamp=function(e){return arguments.length?(o=e?!0:fd,u()):o!==fd},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function yd(){return vd()(fd,fd)}function bd(e,t,n,r){var i=Ji(e,t,n),a;switch(r=zu(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=td(i,o))&&(r.precision=a),Qu(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=nd(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=ed(i))&&(r.precision=a-(r.type===`%`)*2)}return Zu(r)}function xd(e){var t=e.domain;return e.ticks=function(e){var n=t();return Ki(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return bd(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s<o&&(l=o,o=s,s=l,l=i,i=a,a=l);u-->0;){if(l=qi(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function Sd(){var e=yd();return e.copy=function(){return _d(e,Sd())},rd.apply(e,arguments),xd(e)}function Cd(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function wd(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Td(e){var t=1,n=e(Cd(t),wd(t));return n.constant=function(n){return arguments.length?e(Cd(t=+n),wd(t)):t},xd(n)}function Ed(){var e=Td(vd());return e.copy=function(){return _d(e,Ed()).constant(e.constant())},rd.apply(e,arguments)}var Dd=new Date,Od=new Date;function kd(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t<n-e?t:n},i.offset=(e,n)=>(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n<r)||!(a>0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(s<n&&n<r);return o},i.filter=n=>kd(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(Dd.setTime(+t),Od.setTime(+r),e(Dd),e(Od),Math.floor(n(Dd,Od))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var Ad=6e4,jd=Ad*60*24,Md=jd*7;jd*30,jd*365;var Nd=kd(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Ad)/jd,e=>e.getDate()-1);Nd.range;var Pd=kd(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/jd,e=>e.getUTCDate()-1);Pd.range,kd(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/jd,e=>Math.floor(e/jd)).range;function Fd(e){return kd(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*Ad)/Md)}var Id=Fd(0),Ld=Fd(1),Rd=Fd(2),zd=Fd(3),Bd=Fd(4),Vd=Fd(5),Hd=Fd(6);Id.range,Ld.range,Rd.range,zd.range,Bd.range,Vd.range,Hd.range;function Ud(e){return kd(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/Md)}var Wd=Ud(0),Gd=Ud(1),Kd=Ud(2),qd=Ud(3),Jd=Ud(4),Yd=Ud(5),Xd=Ud(6);Wd.range,Gd.range,Kd.range,qd.range,Jd.range,Yd.range,Xd.range;var Zd=kd(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());Zd.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:kd(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)}),Zd.range;var Qd=kd(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());Qd.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:kd(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)}),Qd.range;function $d(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 ef(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 tf(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function nf(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,o=e.shortDays,s=e.months,c=e.shortMonths,l=uf(i),u=df(i),d=uf(a),f=df(a),p=uf(o),m=df(o),h=uf(s),g=df(s),_=uf(c),v=df(c),y={a:M,A:N,b:P,B:F,c:null,d:Mf,e:Mf,f:Lf,g:Jf,G:Xf,H:Nf,I:Pf,j:Ff,L:If,m:Rf,M:zf,p:I,q:L,Q:yp,s:bp,S:Bf,u:Vf,U:Hf,V:Wf,w:Gf,W:Kf,x:null,X:null,y:qf,Y:Yf,Z:Zf,"%":vp},b={a:R,A:z,b:B,B:V,c:null,d:Qf,e:Qf,f:rp,g:mp,G:gp,H:$f,I:ep,j:tp,L:np,m:ip,M:ap,p:te,q:ne,Q:yp,s:bp,S:op,u:sp,U:cp,V:up,w:dp,W:fp,x:null,X:null,y:pp,Y:hp,Z:_p,"%":vp},x={a:E,A:D,b:O,B:k,c:ee,d:Sf,e:Sf,f:Of,g:vf,G:_f,H:wf,I:wf,j:Cf,L:Df,m:xf,M:Tf,p:T,q:bf,Q:Af,s:jf,S:Ef,u:pf,U:mf,V:hf,w:ff,W:gf,x:A,X:j,y:vf,Y:_f,Z:yf,"%":kf};y.x=S(n,y),y.X=S(r,y),y.c=S(t,y),b.x=S(n,b),b.X=S(r,b),b.c=S(t,b);function S(e,t){return function(n){var r=[],i=-1,a=0,o=e.length,s,c,l;for(n instanceof Date||(n=new Date(+n));++i<o;)e.charCodeAt(i)===37&&(r.push(e.slice(a,i)),(c=rf[s=e.charAt(++i)])==null?c=s===`e`?` `:`0`:s=e.charAt(++i),(l=t[s])&&(s=l(n,c)),r.push(s),a=i+1);return r.push(e.slice(a,i)),r.join(``)}}function C(e,t){return function(n){var r=tf(1900,void 0,1),i=w(r,e,n+=``,0),a,o;if(i!=n.length)return null;if(`Q`in r)return new Date(r.Q);if(`s`in r)return new Date(r.s*1e3+(`L`in r?r.L:0));if(t&&!(`Z`in r)&&(r.Z=0),`p`in r&&(r.H=r.H%12+r.p*12),r.m===void 0&&(r.m=`q`in r?r.q:0),`V`in r){if(r.V<1||r.V>53)return null;`w`in r||(r.w=1),`Z`in r?(a=ef(tf(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?Gd.ceil(a):Gd(a),a=Pd.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=$d(tf(r.y,0,1)),o=a.getDay(),a=o>4||o===0?Ld.ceil(a):Ld(a),a=Nd.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?ef(tf(r.y,0,1)).getUTCDay():$d(tf(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,ef(r)):$d(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i<a;){if(r>=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in rf?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function ee(e,n,r){return w(e,t,n,r)}function A(e,t,r){return w(e,n,t,r)}function j(e,t,n){return w(e,r,t,n)}function M(e){return o[e.getDay()]}function N(e){return a[e.getDay()]}function P(e){return c[e.getMonth()]}function F(e){return s[e.getMonth()]}function I(e){return i[+(e.getHours()>=12)]}function L(e){return 1+~~(e.getMonth()/3)}function R(e){return o[e.getUTCDay()]}function z(e){return a[e.getUTCDay()]}function B(e){return c[e.getUTCMonth()]}function V(e){return s[e.getUTCMonth()]}function te(e){return i[+(e.getUTCHours()>=12)]}function ne(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var rf={"-":``,_:` `,0:`0`},af=/^\s*\d+/,of=/^%/,sf=/[\\^$*+?|[\]().{}]/g;function cf(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a<n?Array(n-a+1).join(t)+i:i)}function lf(e){return e.replace(sf,`\\$&`)}function uf(e){return RegExp(`^(?:`+e.map(lf).join(`|`)+`)`,`i`)}function df(e){return new Map(e.map((e,t)=>[e.toLowerCase(),t]))}function ff(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function pf(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function mf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function hf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function gf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function _f(e,t,n){var r=af.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function vf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function yf(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function bf(e,t,n){var r=af.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function xf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function Sf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function Cf(e,t,n){var r=af.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function wf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function Tf(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function Ef(e,t,n){var r=af.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function Df(e,t,n){var r=af.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function Of(e,t,n){var r=af.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function kf(e,t,n){var r=of.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function Af(e,t,n){var r=af.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function jf(e,t,n){var r=af.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function Mf(e,t){return cf(e.getDate(),t,2)}function Nf(e,t){return cf(e.getHours(),t,2)}function Pf(e,t){return cf(e.getHours()%12||12,t,2)}function Ff(e,t){return cf(1+Nd.count(Zd(e),e),t,3)}function If(e,t){return cf(e.getMilliseconds(),t,3)}function Lf(e,t){return If(e,t)+`000`}function Rf(e,t){return cf(e.getMonth()+1,t,2)}function zf(e,t){return cf(e.getMinutes(),t,2)}function Bf(e,t){return cf(e.getSeconds(),t,2)}function Vf(e){var t=e.getDay();return t===0?7:t}function Hf(e,t){return cf(Id.count(Zd(e)-1,e),t,2)}function Uf(e){var t=e.getDay();return t>=4||t===0?Bd(e):Bd.ceil(e)}function Wf(e,t){return e=Uf(e),cf(Bd.count(Zd(e),e)+(Zd(e).getDay()===4),t,2)}function Gf(e){return e.getDay()}function Kf(e,t){return cf(Ld.count(Zd(e)-1,e),t,2)}function qf(e,t){return cf(e.getFullYear()%100,t,2)}function Jf(e,t){return e=Uf(e),cf(e.getFullYear()%100,t,2)}function Yf(e,t){return cf(e.getFullYear()%1e4,t,4)}function Xf(e,t){var n=e.getDay();return e=n>=4||n===0?Bd(e):Bd.ceil(e),cf(e.getFullYear()%1e4,t,4)}function Zf(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+cf(t/60|0,`0`,2)+cf(t%60,`0`,2)}function Qf(e,t){return cf(e.getUTCDate(),t,2)}function $f(e,t){return cf(e.getUTCHours(),t,2)}function ep(e,t){return cf(e.getUTCHours()%12||12,t,2)}function tp(e,t){return cf(1+Pd.count(Qd(e),e),t,3)}function np(e,t){return cf(e.getUTCMilliseconds(),t,3)}function rp(e,t){return np(e,t)+`000`}function ip(e,t){return cf(e.getUTCMonth()+1,t,2)}function ap(e,t){return cf(e.getUTCMinutes(),t,2)}function op(e,t){return cf(e.getUTCSeconds(),t,2)}function sp(e){var t=e.getUTCDay();return t===0?7:t}function cp(e,t){return cf(Wd.count(Qd(e)-1,e),t,2)}function lp(e){var t=e.getUTCDay();return t>=4||t===0?Jd(e):Jd.ceil(e)}function up(e,t){return e=lp(e),cf(Jd.count(Qd(e),e)+(Qd(e).getUTCDay()===4),t,2)}function dp(e){return e.getUTCDay()}function fp(e,t){return cf(Gd.count(Qd(e)-1,e),t,2)}function pp(e,t){return cf(e.getUTCFullYear()%100,t,2)}function mp(e,t){return e=lp(e),cf(e.getUTCFullYear()%100,t,2)}function hp(e,t){return cf(e.getUTCFullYear()%1e4,t,4)}function gp(e,t){var n=e.getUTCDay();return e=n>=4||n===0?Jd(e):Jd.ceil(e),cf(e.getUTCFullYear()%1e4,t,4)}function _p(){return`+0000`}function vp(){return`%`}function yp(e){return+e}function bp(e){return Math.floor(e/1e3)}var xp,Sp;Cp({dateTime:`%x, %X`,date:`%-m/%-d/%Y`,time:`%-I:%M:%S %p`,periods:[`AM`,`PM`],days:[`Sunday`,`Monday`,`Tuesday`,`Wednesday`,`Thursday`,`Friday`,`Saturday`],shortDays:[`Sun`,`Mon`,`Tue`,`Wed`,`Thu`,`Fri`,`Sat`],months:[`January`,`February`,`March`,`April`,`May`,`June`,`July`,`August`,`September`,`October`,`November`,`December`],shortMonths:[`Jan`,`Feb`,`Mar`,`Apr`,`May`,`Jun`,`Jul`,`Aug`,`Sep`,`Oct`,`Nov`,`Dec`]});function Cp(e){return xp=nf(e),Sp=xp.format,xp.parse,xp.utcFormat,xp.utcParse,xp}function wp(e){return function(){return e}}var Tp=Math.abs,Ep=Math.atan2,Dp=Math.cos,Op=Math.max,kp=Math.min,Ap=Math.sin,jp=Math.sqrt,Mp=Math.PI,Np=Mp/2,Pp=2*Mp;function Fp(e){return e>1?0:e<-1?Mp:Math.acos(e)}function Ip(e){return e>=1?Np:e<=-1?-Np:Math.asin(e)}function Lp(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new Mu(t)}function Rp(e){return e.innerRadius}function zp(e){return e.outerRadius}function Bp(e){return e.startAngle}function Vp(e){return e.endAngle}function Hp(e){return e&&e.padAngle}function Up(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function Wp(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/jp(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*jp(Op(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,ee=E-g,A=D-_;return O*O+k*k>ee*ee+A*A&&(w=E,T=D),{cx:w,cy:T,x01:-u,y01:-d,x11:w*(i/x-1),y11:T*(i/x-1)}}function Gp(){var e=Rp,t=zp,n=wp(0),r=null,i=Bp,a=Vp,o=Hp,s=null,c=Lp(l);function l(){var l,u,d=+e.apply(this,arguments),f=+t.apply(this,arguments),p=i.apply(this,arguments)-Np,m=a.apply(this,arguments)-Np,h=Tp(m-p),g=m>p;if(s||=l=c(),f<d&&(u=f,f=d,d=u),!(f>1e-12))s.moveTo(0,0);else if(h>Pp-1e-12)s.moveTo(f*Dp(p),f*Ap(p)),s.arc(0,0,f,p,m,!g),d>1e-12&&(s.moveTo(d*Dp(m),d*Ap(m)),s.arc(0,0,d,m,p,g));else{var _=p,v=m,y=p,b=m,x=h,S=h,C=o.apply(this,arguments)/2,w=C>1e-12&&(r?+r.apply(this,arguments):jp(d*d+f*f)),T=kp(Tp(f-d)/2,+n.apply(this,arguments)),E=T,D=T,O,k;if(w>1e-12){var ee=Ip(w/d*Ap(C)),A=Ip(w/f*Ap(C));(x-=ee*2)>1e-12?(ee*=g?1:-1,y+=ee,b-=ee):(x=0,y=b=(p+m)/2),(S-=A*2)>1e-12?(A*=g?1:-1,_+=A,v-=A):(S=0,_=v=(p+m)/2)}var j=f*Dp(_),M=f*Ap(_),N=d*Dp(b),P=d*Ap(b);if(T>1e-12){var F=f*Dp(v),I=f*Ap(v),L=d*Dp(y),R=d*Ap(y),z;if(h<Mp){if(z=Up(j,M,L,R,F,I,N,P)){var B=j-z[0],V=M-z[1],te=F-z[0],ne=I-z[1],re=1/Ap(Fp((B*te+V*ne)/(jp(B*B+V*V)*jp(te*te+ne*ne)))/2),ie=jp(z[0]*z[0]+z[1]*z[1]);E=kp(T,(d-ie)/(re-1)),D=kp(T,(f-ie)/(re+1))}else E=D=0}}S>1e-12?D>1e-12?(O=Wp(L,R,j,M,f,D,g),k=Wp(F,I,N,P,f,D,g),s.moveTo(O.cx+O.x01,O.cy+O.y01),D<T?s.arc(O.cx,O.cy,D,Ep(O.y01,O.x01),Ep(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,D,Ep(O.y01,O.x01),Ep(O.y11,O.x11),!g),s.arc(0,0,f,Ep(O.cy+O.y11,O.cx+O.x11),Ep(k.cy+k.y11,k.cx+k.x11),!g),s.arc(k.cx,k.cy,D,Ep(k.y11,k.x11),Ep(k.y01,k.x01),!g))):(s.moveTo(j,M),s.arc(0,0,f,_,v,!g)):s.moveTo(j,M),!(d>1e-12)||!(x>1e-12)?s.lineTo(N,P):E>1e-12?(O=Wp(N,P,F,I,d,-E,g),k=Wp(j,M,L,R,d,-E,g),s.lineTo(O.cx+O.x01,O.cy+O.y01),E<T?s.arc(O.cx,O.cy,E,Ep(O.y01,O.x01),Ep(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,E,Ep(O.y01,O.x01),Ep(O.y11,O.x11),!g),s.arc(0,0,d,Ep(O.cy+O.y11,O.cx+O.x11),Ep(k.cy+k.y11,k.cx+k.x11),g),s.arc(k.cx,k.cy,E,Ep(k.y11,k.x11),Ep(k.y01,k.x01),!g))):s.arc(0,0,d,b,y,g)}if(s.closePath(),l)return s=null,l+``||null}return l.centroid=function(){var n=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-Mp/2;return[Dp(r)*n,Ap(r)*n]},l.innerRadius=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),l):e},l.outerRadius=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),l):t},l.cornerRadius=function(e){return arguments.length?(n=typeof e==`function`?e:wp(+e),l):n},l.padRadius=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:wp(+e),l):r},l.startAngle=function(e){return arguments.length?(i=typeof e==`function`?e:wp(+e),l):i},l.endAngle=function(e){return arguments.length?(a=typeof e==`function`?e:wp(+e),l):a},l.padAngle=function(e){return arguments.length?(o=typeof e==`function`?e:wp(+e),l):o},l.context=function(e){return arguments.length?(s=e??null,l):s},l}Array.prototype.slice;function Kp(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function qp(e){this._context=e}qp.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)}}};function Jp(e){return new qp(e)}function Yp(e){return e[0]}function Xp(e){return e[1]}function Zp(e,t){var n=wp(!0),r=null,i=Jp,a=null,o=Lp(s);e=typeof e==`function`?e:e===void 0?Yp:wp(e),t=typeof t==`function`?t:t===void 0?Xp:wp(t);function s(s){var c,l=(s=Kp(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c<l&&n(u=s[c],c,s))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(u,c,s),+t(u,c,s));if(f)return a=null,f+``||null}return s.x=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),s):e},s.y=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),s):t},s.defined=function(e){return arguments.length?(n=typeof e==`function`?e:wp(!!e),s):n},s.curve=function(e){return arguments.length?(i=e,r!=null&&(a=i(r)),s):i},s.context=function(e){return arguments.length?(e==null?r=a=null:a=i(r=e),s):r},s}function Qp(e,t,n){var r=null,i=wp(!0),a=null,o=Jp,s=null,c=Lp(l);e=typeof e==`function`?e:e===void 0?Yp:wp(+e),t=typeof t==`function`?t:wp(t===void 0?0:+t),n=typeof n==`function`?n:n===void 0?Xp:wp(+n);function l(l){var u,d,f,p=(l=Kp(l)).length,m,h=!1,g,_=Array(p),v=Array(p);for(a??(s=o(g=c())),u=0;u<=p;++u){if(!(u<p&&i(m=l[u],u,l))===h){if(h=!h)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return Zp().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:wp(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:wp(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:wp(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}function $p(e,t){return t<e?-1:t>e?1:t>=e?0:NaN}function em(e){return e}function tm(){var e=em,t=$p,n=null,r=wp(0),i=wp(Pp),a=wp(0);function o(o){var s,c=(o=Kp(o)).length,l,u,d=0,f=Array(c),p=Array(c),m=+r.apply(this,arguments),h=Math.min(Pp,Math.max(-Pp,i.apply(this,arguments)-m)),g,_=Math.min(Math.abs(h)/c,a.apply(this,arguments)),v=_*(h<0?-1:1),y;for(s=0;s<c;++s)(y=p[f[s]=s]=+e(o[s],s,o))>0&&(d+=y);for(t==null?n!=null&&f.sort(function(e,t){return n(o[e],o[t])}):f.sort(function(e,n){return t(p[e],p[n])}),s=0,u=d?(h-c*v)/d:0;s<c;++s,m=g)l=f[s],y=p[l],g=m+(y>0?y*u:0)+v,p[l]={data:o[l],index:s,value:y,startAngle:m,endAngle:g,padAngle:_};return p}return o.value=function(t){return arguments.length?(e=typeof t==`function`?t:wp(+t),o):e},o.sortValues=function(e){return arguments.length?(t=e,n=null,o):t},o.sort=function(e){return arguments.length?(n=e,t=null,o):n},o.startAngle=function(e){return arguments.length?(r=typeof e==`function`?e:wp(+e),o):r},o.endAngle=function(e){return arguments.length?(i=typeof e==`function`?e:wp(+e),o):i},o.padAngle=function(e){return arguments.length?(a=typeof e==`function`?e:wp(+e),o):a},o}var nm={draw(e,t){let n=jp(t/Mp);e.moveTo(n,0),e.arc(0,0,n,0,Pp)}},rm={draw(e,t){let n=jp(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},im=jp(1/3),am=im*2,om={draw(e,t){let n=jp(t/am),r=n*im;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},sm={draw(e,t){let n=jp(t),r=-n/2;e.rect(r,r,n,n)}},cm=.8908130915292852,lm=Ap(Mp/10)/Ap(7*Mp/10),um=Ap(Pp/10)*lm,dm=-Dp(Pp/10)*lm,fm={draw(e,t){let n=jp(t*cm),r=um*n,i=dm*n;e.moveTo(0,-n),e.lineTo(r,i);for(let t=1;t<5;++t){let a=Pp*t/5,o=Dp(a),s=Ap(a);e.lineTo(s*n,-o*n),e.lineTo(o*r-s*i,s*r+o*i)}e.closePath()}},pm=jp(3),mm={draw(e,t){let n=-jp(t/(pm*3));e.moveTo(0,n*2),e.lineTo(-pm*n,-n),e.lineTo(pm*n,-n),e.closePath()}},hm=jp(3),gm={draw(e,t){let n=jp(t)*.6824,r=n/2,i=n*hm/2;e.moveTo(0,-n),e.lineTo(i,r),e.lineTo(-i,r),e.closePath()}};function _m(e,t){let n=null,r=Lp(i);e=typeof e==`function`?e:wp(e||nm),t=typeof t==`function`?t:wp(t===void 0?64:+t);function i(){let i;if(n||=i=r(),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),i)return n=null,i+``||null}return i.type=function(t){return arguments.length?(e=typeof t==`function`?t:wp(t),i):e},i.size=function(e){return arguments.length?(t=typeof e==`function`?e:wp(+e),i):t},i.context=function(e){return arguments.length?(n=e??null,i):n},i}function vm(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 ym(e){this._context=e}ym.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:vm(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1)}(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:vm(this,e,t)}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function bm(e){return new ym(e)}function xm(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 Sm(e,t){this._context=e,this._k=(1-t)/6}Sm.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:xm(this,this._x1,this._y1)}(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:xm(this,e,t)}this._x0=this._x1,this._x1=this._x2,this._x2=e,this._y0=this._y1,this._y1=this._y2,this._y2=t}};var Cm=(function e(t){function n(e){return new Sm(e,t)}return n.tension=function(t){return e(+t)},n})(0);function wm(e,t,n){var r=e._x1,i=e._y1,a=e._x2,o=e._y2;if(e._l01_a>1e-12){var s=2*e._l01_2a+3*e._l01_a*e._l12_a+e._l12_2a,c=3*e._l01_a*(e._l01_a+e._l12_a);r=(r*s-e._x0*e._l12_2a+e._x2*e._l01_2a)/c,i=(i*s-e._y0*e._l12_2a+e._y2*e._l01_2a)/c}if(e._l23_a>1e-12){var l=2*e._l23_2a+3*e._l23_a*e._l12_a+e._l12_2a,u=3*e._l23_a*(e._l23_a+e._l12_a);a=(a*l+e._x1*e._l23_2a-t*e._l12_2a)/u,o=(o*l+e._y1*e._l23_2a-n*e._l12_2a)/u}e._context.bezierCurveTo(r,i,a,o,e._x2,e._y2)}function Tm(e,t){this._context=e,this._alpha=t}Tm.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)}(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,r=this._y2-t;this._l23_a=Math.sqrt(this._l23_2a=(n*n+r*r)**+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:wm(this,e,t)}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}};var Em=(function e(t){function n(e){return t?new Tm(e,t):new Sm(e,0)}return n.alpha=function(t){return e(+t)},n})(.5);function Dm(e){return e<0?-1:1}function Om(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(Dm(a)+Dm(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function km(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function Am(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function jm(e){this._context=e}jm.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:Am(this,this._t0,km(this,this._t0))}(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,Am(this,km(this,n=Om(this,e,t)),n);break;default:Am(this,this._t0,n=Om(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}},Object.create(jm.prototype).point=function(e,t){jm.prototype.point.call(this,t,e)};function Mm(e){return new jm(e)}function Nm(e,t){this._context=e,this._t=t}Nm.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;default: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)}}this._x=e,this._y=t}};function Pm(e){return new Nm(e,.5)}function Fm(e){return new Nm(e,0)}function Im(e){return new Nm(e,1)}function Lm(e,t){if((o=e.length)>1)for(var n=1,r,i,a=e[t[0]],o,s=a.length;n<o;++n)for(i=a,a=e[t[n]],r=0;r<s;++r)a[r][1]+=a[r][0]=isNaN(i[r][1])?i[r][0]:i[r][1]}function Rm(e){for(var t=e.length,n=Array(t);--t>=0;)n[t]=t;return n}function zm(e,t){return e[t]}function Bm(e){let t=[];return t.key=e,t}function Vm(){var e=wp([]),t=Rm,n=Lm,r=zm;function i(i){var a=Array.from(e.apply(this,arguments),Bm),o,s=a.length,c=-1,l;for(let e of i)for(o=0,++c;o<s;++o)(a[o][c]=[0,+r(e,a[o].key,c,i)]).data=e;for(o=0,l=Kp(t(a));o<s;++o)a[l[o]].index=o;return n(a,l),a}return i.keys=function(t){return arguments.length?(e=typeof t==`function`?t:wp(Array.from(t)),i):e},i.value=function(e){return arguments.length?(r=typeof e==`function`?e:wp(+e),i):r},i.order=function(e){return arguments.length?(t=e==null?Rm:typeof e==`function`?e:wp(Array.from(e)),i):t},i.offset=function(e){return arguments.length?(n=e??Lm,i):n},i}function Hm(e,t){if((c=e.length)>0)for(var n,r=0,i,a,o,s,c,l=e[t[0]].length;r<l;++r)for(o=s=0,n=0;n<c;++n)(a=(i=e[t[n]][r])[1]-i[0])>0?(i[0]=o,i[1]=o+=a):a<0?(i[1]=s,i[0]=s+=a):(i[0]=0,i[1]=a)}function Um(e,t,n){this.k=e,this.x=t,this.y=n}Um.prototype={constructor:Um,scale:function(e){return e===1?this:new Um(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new Um(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var Wm=new Um(1,0,0);Gm.prototype=Um.prototype;function Gm(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Wm;return e.__zoom}function Km(e,t){if(!e)throw Error(`[d3-blueprint] ${t}`)}var qm=class{properties=new Map;define(e,t){Km(!this.properties.has(e),`config "${e}" is already defined`);let{defaultValue:n,getter:r,setter:i}=t,a=i?i(n):n;return this.properties.set(e,{value:a,getter:r,setter:i}),this}get(e){let{value:t,getter:n}=this.getProperty(e);return n?n(t):t}set(e,t){let n=this.getProperty(e);return n.value=n.setter?n.setter(t):t,this}setBatch(e){for(let[t,n]of Object.entries(e))this.set(t,n);return this}getAll(){let e={};for(let[t]of this.properties)e[t]=this.get(t);return e}has(e){return this.properties.has(e)}getProperty(e){let t=this.properties.get(e);return Km(t,`config "${e}" is not defined`),t}},Jm=[`update`,`enter`,`merge`,`exit`],Ym=new Set([...Jm,...Jm.map(e=>`${e}:transition`)]);function Xm(e){return Ym.has(e)}function Zm(e){Km(Xm(e),`"${e}" is not a valid lifecycle event. Expected one of: ${[...Ym].join(`, `)}`)}function Qm(e,t,n){let r=e.exit(),i={update:e,enter:t,merge:t.merge(e),exit:r};return Jm.map(e=>({name:e,selection:i[e],handlers:n.get(e)??[],transitionHandlers:n.get(`${e}:transition`)??[]}))}function $m(e,t){for(let n of t)n(e)}function eh(e,t){return t.map(t=>{let n=e.transition();return t(n),th(n)})}function th(e){return e.end().then(()=>void 0,()=>void 0)}var nh=class{base;dataBindFn;insertFn;handlers=new Map;constructor(e,t){if(this.base=e,this.dataBindFn=t.dataBind,this.insertFn=t.insert,t.events)for(let[e,n]of Object.entries(t.events))n&&this.on(e,n)}on(e,t){Zm(e);let n=this.handlers.get(e)??[];return n.push(t),this.handlers.set(e,n),this}off(e,t){if(Zm(e),!t)return this.handlers.delete(e),this;let n=this.handlers.get(e);if(n){let e=n.indexOf(t);e!==-1&&n.splice(e,1)}return this}draw(e){let t=this.dataBindFn(this.base,e),n=t.enter(),r=Qm(t,this.insertFn(n),this.handlers),i=[];for(let e of r){$m(e.selection,e.handlers);let t=eh(e.selection,e.transitionHandlers);i.push(...t)}return Promise.all(i).then(()=>void 0)}};function rh(e,t,n,r){if(n&&r){let i=new nh(n,r);return e.set(t,i),i}let i=e.get(t);if(!i)throw Error(`[d3-blueprint] layer "${t}" is not defined`);return i}function ih(e,t,n,r){return typeof n==`string`&&r===void 0?e.get(n):typeof n==`string`?(e.set(n,r),t):(e.setBatch(n),t)}function ah(e,t){let n=[];for(let r of e.values())n.push(r.draw(t));return n}function oh(e,t){let n=[];for(let r of e.values()){let e=r.draw(t);e&&n.push(e)}return n}var sh=[`preDraw`,`postDraw`,`postTransition`],ch=class{base;layers=new Map;attachments=new Map;configs=new qm;dispatcher;attached=new Proxy({},{get:(e,t)=>{let n=this.attachments.get(t);if(!n)throw Error(`[d3-blueprint] attachment "${t}" is not defined`);return n},has:(e,t)=>this.attachments.has(t)});constructor(e){this.base=e,this.dispatcher=ga(...sh),this.initialize()}initialize(){}transform(e){return e}preDraw(e){}postDraw(e){}postTransition(e){}layer(e,t,n){return rh(this.layers,e,t,n)}attach(e,t,n){if(n!==void 0){let r=t;this.attachments.set(e,new r(n))}else this.attachments.set(e,t);return this}config(e,t){return ih(this.configs,this,e,t)}configDefine(e,t){return this.configs.define(e,t),this}on(e,t){return this.dispatcher.on(e,t),this}off(e){return this.dispatcher.on(e,null),this}use(e,t){let n=t||e.name||`plugin`;if(e.install(this),e.preDraw&&this.on(`preDraw.${n}`,t=>e.preDraw(this,t)),e.postDraw&&this.on(`postDraw.${n}`,t=>e.postDraw(this,t)),e.postTransition&&this.on(`postTransition.${n}`,t=>e.postTransition(this,t)),e.destroy){let t=this.destroy.bind(this);this.destroy=()=>{e.destroy(this),t()}}return this}async draw(e){let t=this.transform(e);this.preDraw(t),this.dispatcher.call(`preDraw`,this,t);let n=ah(this.layers,t),r=oh(this.attachments,t);this.postDraw(t),this.dispatcher.call(`postDraw`,this,t),await Promise.all([...n,...r]),this.postTransition(t),this.dispatcher.call(`postTransition`,this,t)}destroy(){this.layers.clear(),this.attachments.clear()}},lh=class extends ch{initialize(){let e=this.base.append(`div`).attr(`class`,`bc-frame`),t=e.append(`div`).attr(`class`,`bc-frame-header`);e.append(`div`).attr(`class`,`bc-frame-body`),e.append(`p`).attr(`class`,`bc-frame-note`);let n=e.append(`div`).attr(`class`,`bc-frame-footer`).style(`display`,`flex`).style(`justify-content`,`space-between`).style(`align-items`,`center`).style(`flex-wrap`,`wrap`).style(`gap`,`0.25rem 1rem`),r=n.append(`div`).attr(`class`,`bc-frame-footer-left`).style(`display`,`flex`).style(`flex-wrap`,`wrap`).style(`gap`,`0.25rem 0.75rem`),i=n.append(`div`).attr(`class`,`bc-frame-footer-right`).style(`display`,`flex`).style(`align-items`,`center`);this.layer(`headerItems`,t,{dataBind:(e,t)=>e.selectAll(`.bc-frame-header-item`).data(t.headerItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).text(e=>e.text)},merge:e=>{e.attr(`class`,e=>e.className).text(e=>e.text)},exit:e=>{e.remove()}}}),this.layer(`footerLeftItems`,r,{dataBind:(e,t)=>e.selectAll(`.bc-frame-footer-item`).data(t.footerLeftItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.prefix){let t=document.createElement(`span`);t.className=`bc-frame-source-prefix`,t.textContent=e.prefix,this.appendChild(t)}if(e.href){let t=document.createElement(`a`);t.className=`bc-frame-source-link`,t.href=e.href,t.textContent=e.text,this.appendChild(t)}else this.appendChild(document.createTextNode(e.text))})},merge:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.prefix){let t=document.createElement(`span`);t.className=`bc-frame-source-prefix`,t.textContent=e.prefix,this.appendChild(t)}if(e.href){let t=document.createElement(`a`);t.className=`bc-frame-source-link`,t.href=e.href,t.textContent=e.text,this.appendChild(t)}else this.appendChild(document.createTextNode(e.text))})},exit:e=>{e.remove()}}}),this.layer(`footerRightItems`,i,{dataBind:(e,t)=>e.selectAll(`.bc-frame-footer-item`).data(t.footerRightItems,e=>e.className),insert:e=>e.append(e=>document.createElement(e.tag)),events:{enter:e=>{e.attr(`class`,e=>e.className).each(function(e){if(e.html){let t=document.createRange().createContextualFragment(e.html);this.appendChild(t)}else this.textContent=e.text}),e.filter(e=>!!e.href).attr(`href`,e=>e.href),e.filter(e=>!!e.target).attr(`target`,e=>e.target),e.filter(e=>!!e.rel).attr(`rel`,e=>e.rel)},merge:e=>{e.attr(`class`,e=>e.className).each(function(e){if(this.textContent=``,e.html){let t=document.createRange().createContextualFragment(e.html);this.appendChild(t)}else this.textContent=e.text}),e.filter(e=>!!e.href).attr(`href`,e=>e.href),e.filter(e=>!!e.target).attr(`target`,e=>e.target),e.filter(e=>!!e.rel).attr(`rel`,e=>e.rel)},exit:e=>{e.remove()}}})}};function uh(e){let t=[];return e.title&&t.push({tag:`h3`,className:`bc-frame-title`,text:e.title}),e.description&&t.push({tag:`p`,className:`bc-frame-description`,text:e.description}),t}function dh(e){let t=[];return e.byline&&t.push({tag:`span`,className:`bc-frame-byline`,text:e.byline}),e.source&&t.push({tag:`span`,className:`bc-frame-source`,text:e.source,prefix:`Source: `,href:e.sourceUrl||void 0}),t}function fh(){return[{tag:`a`,className:`bc-frame-credit`,text:`Blueprint Chart`,html:`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48.042969 90.607422" width="10" height="18" style="vertical-align:-3px;margin-right:3px"><path fill="currentColor" opacity="0.55" d="M 20.042969 34.607422 A 28 28 0 0 1 23.072266 34.779297 A 28 28 0 0 0 20.042969 34.607422 z M 23.34375 34.810547 A 28 28 0 0 1 26.171875 35.292969 A 28 28 0 0 0 23.34375 34.810547 z M 16.570312 34.84375 A 28 28 0 0 0 15.474609 35.033203 A 28 28 0 0 1 16.570312 34.84375 z M 26.390625 35.341797 A 28 28 0 0 1 29.316406 36.189453 A 28 28 0 0 0 26.390625 35.341797 z M 13.128906 35.511719 A 28 28 0 0 0 11.904297 35.873047 A 28 28 0 0 1 13.128906 35.511719 z M 29.373047 36.210938 A 28 28 0 0 1 32.103516 37.347656 A 28 28 0 0 0 29.373047 36.210938 z M 9.7832031 36.609375 A 28 28 0 0 0 8.5820312 37.117188 A 28 28 0 0 1 9.7832031 36.609375 z M 32.392578 37.486328 A 28 28 0 0 1 34.939453 38.90625 A 28 28 0 0 0 32.392578 37.486328 z M 6.5742188 38.128906 A 28 28 0 0 0 5.4511719 38.765625 A 28 28 0 0 1 6.5742188 38.128906 z M 35.041016 38.966797 A 28 28 0 0 1 37.523438 40.738281 A 28 28 0 0 0 35.041016 38.966797 z M 3.5273438 40.080078 A 28 28 0 0 0 2.5761719 40.771484 A 28 28 0 0 1 3.5273438 40.080078 z M 37.658203 40.851562 A 28 28 0 0 1 39.804688 42.783203 A 28 28 0 0 0 37.658203 40.851562 z M 40.011719 42.990234 A 28 28 0 0 1 42.013672 45.251953 A 28 28 0 0 0 40.011719 42.990234 z M 42.013672 45.251953 A 28 28 0 0 1 20.042969 56 A 28 28 0 0 1 14.232422 55.3125 A 16 16 0 0 1 16 62.607422 A 16 16 0 0 1 0 78.607422 L 0 82.121094 A 28 28 0 0 0 20.042969 90.607422 A 28 28 0 0 0 48.042969 62.607422 A 28 28 0 0 0 42.013672 45.251953 z M 1.3007812 46.667969 A 16 16 0 0 1 1.6191406 46.697266 A 16 16 0 0 0 1.3007812 46.667969 z M 4.2558594 47.189453 A 16 16 0 0 1 4.4355469 47.242188 A 16 16 0 0 0 4.2558594 47.189453 z "/><path fill="currentColor" opacity="0.85" d="M 6.0637516 38.376047 A 28 28 0 0 1 20.042969 34.615234 A 28 28 0 0 1 42.013672 45.259765 A 28 28 0 0 0 48.042969 28.007812 A 28 28 0 0 0 20.042969 0.0078125 A 28 28 0 0 0 0 8.4941407 L 0 16.007812 A 12 12 0 0 1 12 28.007812 A 12 12 0 0 1 6.0613693 38.364443 "/><path fill="currentColor" d="M 20.042969 34.607422 A 28 28 0 0 0 5.0878906 38.970703 A 28 28 0 0 1 6.0644531 38.376953 L 6.0605469 38.365234 A 12 12 0 0 1 0 40.007812 L 0 43.09375 L 0 43.101562 L 0 46.607422 A 16 16 0 0 1 2.8847656 46.873047 A 16 16 0 0 1 2.9199219 46.878906 A 16 16 0 0 1 5.7011719 47.662109 A 16 16 0 0 1 5.7324219 47.673828 A 16 16 0 0 1 8.3300781 48.955078 A 16 16 0 0 1 8.3398438 48.958984 A 16 16 0 0 1 8.3457031 48.962891 A 16 16 0 0 1 10.662109 50.6875 A 16 16 0 0 1 10.697266 50.71875 A 16 16 0 0 1 12.660156 52.837891 A 16 16 0 0 1 12.667969 52.845703 A 16 16 0 0 1 12.673828 52.855469 A 16 16 0 0 1 14.228516 55.306641 A 16 16 0 0 1 14.232422 55.3125 A 28 28 0 0 0 20.042969 56 A 28 28 0 0 0 42.013672 45.251953 A 28 28 0 0 0 20.042969 34.607422 z M 4.7695312 39.177734 A 28 28 0 0 0 2.5390625 40.798828 A 28 28 0 0 1 4.7695312 39.177734 z M 2.1816406 41.091797 A 28 28 0 0 0 0.11914062 42.984375 A 28 28 0 0 1 2.1816406 41.091797 z "/></svg>Blueprint Chart`,href:`/`,target:`_blank`,rel:`noopener noreferrer`}]}var ph=80,mh=`.bc-frame-title, .bc-frame-description`;function hh(e){let t=getComputedStyle(e),n=parseFloat(t.lineHeight);return Number.isFinite(n)?n:parseFloat(t.fontSize)*1.2}function gh(e){e.querySelectorAll(mh).forEach(e=>{e.style.removeProperty(`display`),e.style.removeProperty(`-webkit-box-orient`),e.style.removeProperty(`-webkit-line-clamp`),e.style.removeProperty(`overflow`)})}function _h(e,t){let n=[...e.querySelectorAll(mh)],r=t-(e.offsetHeight-n.reduce((e,t)=>e+t.offsetHeight,0));for(let e of n){let t=Math.floor(r/hh(e));if(t<1){e.style.display=`none`;continue}e.style.display=`-webkit-box`,e.style.setProperty(`-webkit-box-orient`,`vertical`),e.style.setProperty(`-webkit-line-clamp`,String(t)),e.style.overflow=`hidden`,r-=e.offsetHeight}}function vh(e){let[t,n=t,r=t,i=n]=e.trim().split(/\s+/);return[t,n,r,i]}function yh(e,t){if(t===null)return{wrapper:e,header:e,body:e,footer:e};let n=t??{};new lh($(e)).draw({headerItems:uh(n),footerLeftItems:dh(n),footerRightItems:fh()});let r=e.querySelector(`.bc-frame`),i=r.querySelector(`.bc-frame-header`),a=r.querySelector(`.bc-frame-body`),o=r.querySelector(`.bc-frame-note`),s=r.querySelector(`.bc-frame-footer`);if(n.padding){r.style.setProperty(`--bc-frame-padding`,n.padding);let[e,t,i,a]=vh(n.padding);r.style.setProperty(`--bc-frame-padding-top`,e),r.style.setProperty(`--bc-frame-padding-right`,t),r.style.setProperty(`--bc-frame-padding-bottom`,i),r.style.setProperty(`--bc-frame-padding-left`,a)}if(n.transparentBackground&&r.style.setProperty(`--bc-frame-bg`,`transparent`),n.note?o.textContent=n.note:o.style.display=`none`,e.isConnected){gh(i);let t=getComputedStyle(e),n=t.aspectRatio&&t.aspectRatio!==`auto`&&t.aspectRatio!==``,c=t.display===`flex`&&t.flexDirection===`column`;if(n||c){let t=i.offsetHeight,n=s.offsetHeight,c=o.style.display===`none`?0:o.offsetHeight,l=e.clientHeight-n-c-ph;t>l&&(_h(i,l),t=i.offsetHeight),r.classList.add(`bc-frame--constrained`),a.dataset.headerH=String(t);let u=e;a.dataset.footerH=String(u.__bcFooterH??n+c),requestAnimationFrame(()=>{u.__bcFooterH=s.offsetHeight+(o.style.display===`none`?0:o.offsetHeight)})}}return{wrapper:r,header:i,body:a,footer:s}}function bh(e){return e&&(e.startsWith(`(`)&&e.endsWith(`)`)?e.slice(0,-1):e)}function xh(e){if(!e)return{prefix:``,d3Spec:``,suffix:``};if(e.includes(`|`)){let t=e.split(`|`);return{prefix:t[0]??``,d3Spec:bh(t[1]??``),suffix:t[2]??``}}return{prefix:``,d3Spec:bh(e),suffix:``}}function Sh(e){if(!e)return null;let{prefix:t,d3Spec:n,suffix:r}=xh(e);if(!n)return null;let i=Zu(n);return!t&&!r?i:e=>`${t}${i(e)}${r}`}function Ch(e,t){return!Number.isFinite(t)||t<=0?`0%`:`${Math.round(e/t*100)}%`}var wh=`http://www.w3.org/2000/svg`,Th=`system-ui, -apple-system, sans-serif`,Eh=/[\u1100-\u115f\u2e80-\ua4cf\ua960-\ua97f\uac00-\ud7a3\uf900-\ufaff\ufe10-\ufe19\ufe30-\ufe6f\uff00-\uff60\uffe0-\uffe6]/,Dh=1,Oh=.5,kh=null,Ah=null;function jh(e,t){let n=0;for(let t of e)n+=Eh.test(t)?Dh:Oh;return n*t}function Mh(){if(typeof document>`u`)return null;if(Ah!==document){Ah=document;try{kh=document.createElement(`canvas`).getContext(`2d`)}catch{kh=null}}return kh}function Nh(e,t){let n=Mh();if(!n)return null;n.font=`${t}px ${Th}`;let r=n.measureText(e).width;return r>0?r:null}function Ph(e,t){if(typeof document>`u`||typeof document.createElementNS!=`function`)return null;let n=document.createElementNS(wh,`svg`),r=document.createElementNS(wh,`text`);if(r.setAttribute(`font-size`,String(t)),r.textContent=e,n.appendChild(r),typeof r.getComputedTextLength!=`function`)return null;let i=r.getComputedTextLength();return i>0?i:null}function Fh(e,t){if(e===``)return 0;let n=Nh(e,t)??Ph(e,t)??0;return Math.max(n,jh(e,t))}function Ih(e,t){let n=0;for(let r of e){let e=Fh(r,t);e>n&&(n=e)}return n}function Lh(e,t,n,r=`…`){if(Fh(e,n)<=t)return e;let i=[...e],a=Fh(r,n),o=i.length;for(;o>1&&Fh(i.slice(0,o).join(``),n)+a>t;)o--;return i.slice(0,o).join(``)+r}function Rh(e,t){if(!e)return;let n=e.stableTop??e.top,r=t.stableTop??t.top;return{dx:e.left-t.left,dy:n-r}}var zh={top:12,right:20,bottom:24,left:50},Bh=10,Vh=600,Hh=400,Uh=.25;function Wh(e,t,n){let r=t+n,i=e*Uh;if(r<=0||e-r>=i)return[t,n];let a=Math.max(0,e-i)/r;return[t*a,n*a]}var Gh=class extends ch{initialize(){this.configDefine(`totalWidth`,{defaultValue:Vh}),this.configDefine(`totalHeight`,{defaultValue:Hh}),this.layer(`svg`,this.base,{dataBind:(e,t)=>e.selectAll(`svg`).data(t),insert:e=>e.append(`svg`),events:{enter:e=>{let t=this.config(`totalWidth`),n=this.config(`totalHeight`);e.attr(`width`,t).attr(`height`,n).append(`g`).attr(`transform`,e=>`translate(${e.left},${e.top})`)}}})}},Kh=400,qh=2,Jh=2,Yh=9;function Xh(e,t,n,r){let[i,a]=wi(e,t,r),o=r===`log`?Ed().domain([i,a]).nice():Sd().domain([i,a]).nice(),s=o.ticks(),c=n?Sh(n)??o.tickFormat():o.tickFormat(),l=s.map(e=>c(e));return l.length===0?0:Math.ceil(Ih(l,Bh))+Jh+Yh}function Zh(e){return e.length===0?0:Math.ceil(Ih(e,Bh))+Jh+Yh}function Qh(e,t,n,r,i,a){let o={},s=i??50,c=r??`left`,l=t??`auto`,u=l===`auto`?e>0&&e<Kh?`inside`:`outside`:l,d=u===`inside`,f=u===`off`;return c===`right`?(o.left=0,o.right=d?qh:f?0:s):(o.right=a===!1?0:15,o.left=d?qh:f?0:s),d&&(o.top=35),(n===`inside`||n===`off`)&&(o.bottom=5),o}function $h(e,t){return parseFloat(e.dataset[t]??``)||0}function eg(e){let t=e.getBoundingClientRect(),n=getComputedStyle(e),r=t.width-(parseFloat(n.paddingLeft)||0)-(parseFloat(n.paddingRight)||0),i=t.height-(parseFloat(n.paddingTop)||0)-(parseFloat(n.paddingBottom)||0);return{width:r>0?r:$h(e,`bcContentWidth`),height:i>0?i:$h(e,`bcContentHeight`)}}function tg(e,t){let n=t.closest(`.bc-frame`);if(!n||n.style.getPropertyValue(`--bc-frame-bg`).trim()===`transparent`)return;e.querySelector(`.bc-canvas-bg`)?.remove();let r=e.ownerDocument.createElementNS(`http://www.w3.org/2000/svg`,`rect`);r.setAttribute(`class`,`bc-canvas-bg`),r.setAttribute(`width`,`100%`),r.setAttribute(`height`,`100%`),r.setAttribute(`fill`,wr(n)),e.insertBefore(r,e.firstChild)}function ng(e,t){let n={...zh,...t},r=e.closest(`.bc-frame--constrained`)!=null;if(r){let t=parseFloat(e.dataset.headerH||`0`),r=parseFloat(e.dataset.footerH||`0`),i=n.top;n.top=t+i,n.bottom+=r,n.stableTop=i}let i=eg(e),a=i.width>0?i.width:Vh,o=i.height>0?i.height:Hh;[n.left,n.right]=Wh(a,n.left,n.right),[n.top,n.bottom]=Wh(o,n.top,n.bottom);let s=a-n.left-n.right,c=o-n.top-n.bottom,l=new Gh($(e));l.config({totalWidth:a,totalHeight:o}),l.draw([n]);let u=e.querySelector(`svg`),d=u.querySelector(`g`);return tg(u,e),r&&(u.setAttribute(`viewBox`,`0 0 ${a} ${o}`),u.setAttribute(`preserveAspectRatio`,`none`),u.removeAttribute(`width`),u.removeAttribute(`height`),u.style.width=`100%`,u.style.height=`100%`,u.style.display=`block`),{svg:u,chartArea:d,width:s,height:c,margin:n}}function rg(e){return typeof window>`u`||typeof window.matchMedia!=`function`?e:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:e}var ig=0;function ag(e){ig=e?500:0}function og(){return rg(ig)}function sg(e,t){let n=rg(t??500);n<=0||typeof e.animate!=`function`||e.animate([{opacity:0},{opacity:1}],{duration:n,easing:`ease-in-out`})}function cg(e,t){let n=rg(t??500);if(e.querySelectorAll(`[data-bc-fade-overlay]`).forEach(e=>{typeof e.getAnimations==`function`&&e.getAnimations().forEach(e=>e.cancel()),e.remove()}),n<=0||e.children.length===0)return null;let r=document.createElement(`div`);return r.style.position=`absolute`,r.style.inset=`0`,r.style.pointerEvents=`none`,r.style.display=`flex`,r.style.flexDirection=`column`,r.dataset.bcFadeOverlay=`true`,Array.from(e.childNodes).forEach(e=>{r.appendChild(e.cloneNode(!0))}),r.querySelectorAll(`.bc-axis-vertical, .bc-axis-horizontal`).forEach(e=>{e.remove()}),r.querySelectorAll(`.bc-frame-footer, .bc-frame-note`).forEach(e=>{e.remove()}),r.querySelectorAll(`[data-bc-fade-overlay], .bc-frame--fade-snapshot`).forEach(e=>{e.remove()}),r.querySelectorAll(`.bc-frame`).forEach(e=>{e.classList.remove(`bc-frame`),e.classList.add(`bc-frame--fade-snapshot`)}),r}function lg(e,t,n){let r=rg(n??500);if(getComputedStyle(e).position===`static`&&(e.style.position=`relative`),e.appendChild(t),r>0&&typeof t.animate==`function`){let e=t.animate([{opacity:1},{opacity:0}],{duration:r,easing:`ease-in-out`});e.onfinish=()=>t.remove()}else t.remove()}var ug=60,dg=10,fg=8,pg=16,mg=10,hg=1.3,gg=12,_g=3,vg=14,yg=10;function bg(e,t,n=_g){if(e===``)return[``];if(e.length*mg<=t)return[e];let r=e.split(/\s+/).filter(Boolean);if(r.length===0)return null;let i=[],a=``;for(let e of r){if(e.length*mg>t)return null;let r=a?`${a} ${e}`:e;if(r.length*mg<=t)a=r;else if(i.push(a),a=e,i.length>=n)return null}return a&&i.push(a),i.length>n?null:i}var xg={year:`%Y`,month:`%b %Y`,day:`%b %-d, %Y`,datetime:`%b %-d, %Y %H:%M`};function Sg(e){return typeof e.step==`function`}function Cg(e,t){let n=yi(t);if(e&&e.includes(`%`)){if(n){let r=Sp(e),i=new Map;return t.forEach((e,t)=>i.set(e,n.dates[t])),e=>{if(e instanceof Date)return r(e);let t=i.get(String(e));return t?r(t):String(e)}}return null}if(e)return t.length>0?null:Sh(e)??Zu(e);if(n){let e=Sp(xg[n.granularity]??`%Y-%m-%d`),r=new Map;return t.forEach((e,t)=>r.set(e,n.dates[t])),t=>{if(t instanceof Date)return e(t);let n=r.get(String(t));return n?e(n):String(t)}}return null}function wg(e,t){let n=0;for(let r of e){let e=(t?t(r):r).length*mg;e>n&&(n=e)}return n}function Tg(e,t){return e.map(e=>t?t(e):String(e))}function Eg(e,t){let n=Math.max(pg,Math.ceil(e)+fg);return Math.max(2,Math.floor(t/n))}function Dg(e,t,n){if(e.length<=1)return e;let r=Eg(Ih(Tg(e,n??null),dg),t);if(e.length<=r)return e;let i=Math.ceil(e.length/r),a=[];for(let t=0;t<e.length;t+=i)a.push(t);let o=e.length-1;return a[a.length-1]!==o&&(o-a[a.length-1]<i&&a.pop(),a.push(o)),a.map(t=>e[t])}function Og(e,t,n){let r=Math.max(2,Math.floor(t/ug));for(;r>2;){let i=Tg(e.ticks(r),n??e.tickFormat(r)),a=Eg(Ih(i,dg),t);if(i.length<=a)break;r=Math.min(r-1,a)}return r}function kg(e,t,n,r){return e.length<=1||t<=0||n===`horizontal`?!1:n===`vertical`||!yi(e)&&wg(e,r??null)>t/e.length*hg}function Ag(e,t){if(e.length===0)return 0;let n=wg(e,t??null);return Math.ceil(n)+gg}function jg(e){let t=1;for(let n of e)n.length>t&&(t=n.length);return t<=1?0:t*vg+yg}function Mg(e,t,n={},r=24){if(e.length===0||t<=0||n.labelPosition===`off`||n.labelPosition===`inside`)return;let i=n.tickFormat?n.tickFormat:Cg(n.numberFormat??null,e),a=n.labelRotation??`auto`;if((a===`vertical`||yi(e)===null)&&e.length>1){let n=t/e.length*hg,o=wg(e,i)>n;if(a!==`vertical`&&o){let t=Ng(e,n,i);if(t){let e=jg(Array.from(t.values()));return e>r?e:void 0}}}if(!kg(e,t,a,i))return;let o=Ag(e,i);return o>r?o:void 0}function Ng(e,t,n){let r=new Map,i=!1;for(let a of e){let e=bg(n?n(a):a,t);if(e===null)return null;r.set(a,e),e.length>1&&(i=!0)}return i?r:null}function Pg(e,t){e.selectAll(`.tick`).each(function(){let e=$(this),n=e.datum(),r=n instanceof Date?n.toISOString():String(n),i=t.get(r);if(!i||i.length<=1)return;let a=e.select(`text`);a.empty()||(a.attr(`dy`,null).text(null),i.forEach((e,t)=>{a.append(`tspan`).attr(`x`,0).attr(`dy`,t===0?`0.71em`:`1em`).text(e)}))})}var Fg=class extends ch{initialize(){this.configDefine(`scale`,{defaultValue:od()}),this.configDefine(`height`,{defaultValue:0}),this.configDefine(`tickPosition`,{defaultValue:`below`}),this.configDefine(`showAxis`,{defaultValue:!0}),this.configDefine(`showTicks`,{defaultValue:!1}),this.configDefine(`gridStyle`,{defaultValue:`dashed`}),this.configDefine(`ticks`,{defaultValue:null}),this.configDefine(`numberFormat`,{defaultValue:null}),this.configDefine(`width`,{defaultValue:0}),this.configDefine(`labels`,{defaultValue:[]}),this.configDefine(`labelPosition`,{defaultValue:`auto`}),this.configDefine(`labelRotation`,{defaultValue:`auto`}),this.configDefine(`zeroY`,{defaultValue:null}),this.configDefine(`tickFormat`,{defaultValue:null});let e=this.base.append(`g`);this.layer(`axis`,e,{dataBind:(e,t)=>e.selectAll(`.bc-axis-horizontal`).data(t),insert:e=>e.append(`g`).attr(`class`,`bc-axis bc-axis-horizontal`),events:{"merge:transition":e=>{this.applyAxis(e,`merge`)},exit:e=>{e.remove()},enter:e=>{this.applyAxis(e,`enter`)}}})}applyAxis(e,t){let n=this.config(`scale`),r=this.config(`scale`),i=this.config(`tickPosition`),a=this.config(`height`),o=this.config(`labelPosition`),s=this.config(`labelRotation`),c=this.config(`width`),l=this.config(`numberFormat`),u=this.config(`labels`),d=this.config(`tickFormat`),f=i===`above`?da(n):pa(n);this.config(`showTicks`)||f.tickSizeOuter(0);let p=d||Cg(l,u);p&&f.tickFormat(p);let m=Sg(r),h=m?r.domain():[],g=m&&s!==`vertical`&&yi(h)!==null,_=null,v=!1;if(m&&!g&&h.length>1&&c>0){let e=c/h.length*hg,t=wg(h,p)>e;s===`vertical`?v=!0:t&&(_=Ng(h,e,p),!_&&s===`auto`&&(v=!0))}let y=o===`auto`?`outside`:o,b=this.config(`ticks`);if(!b&&c>0){if(m){if(g||!v&&!_&&y!==`off`){let e=Dg(h,c,p);e.length<h.length&&(b=e)}}else{let e=Ti(r,Math.max(2,Math.floor(c/ug)));e?b=e:f.ticks(Og(r,c,p))}}b&&f.tickValues(b);let x=i===`above`?0:a,S=e.node(),C=t===`merge`?og():0;if(t===`merge`){if(!S)return;C>0?(e.attr(`transform`,`translate(0,${x})`),e.duration(C).call(f)):$(S).attr(`transform`,`translate(0,${x})`).call(f)}else e.attr(`transform`,`translate(0,${x})`),e.call(f);let w=C>0?e:S?$(S):e;if(!this.config(`showAxis`))w.select(`.domain`).remove();else if(t===`enter`){let e=this.config(`zeroY`);if(e!=null){let t=e-(i===`above`?0:a);w.select(`.domain`).attr(`transform`,`translate(0,${t})`)}}this.config(`showTicks`)||w.selectAll(`.tick line`).remove(),y===`off`?w.selectAll(`.tick text`).remove():y===`inside`&&w.selectAll(`.tick text`).attr(`y`,0).attr(`dy`,`-0.6em`),v&&y!==`off`?w.selectAll(`.tick text`).attr(`transform`,`rotate(-90)`).attr(`text-anchor`,`end`).attr(`x`,i===`above`?9:-9).attr(`y`,0).attr(`dy`,`0.32em`):(w.selectAll(`.tick text`).attr(`transform`,null),y!==`off`&&Ig(w,c)),_&&y!==`off`&&Pg(w,_)}postDraw(){let e=this.config(`gridStyle`),t=this.config(`height`),n=this.base.select(`.bc-axis-horizontal`).node();n&&Lg(n,e,t)}};function Ig(e,t){t>0&&e.selectAll(`.tick text`).each((e,n,r)=>{let i=r[n],a=i.parentElement,o=Number(/translate\(([-\d.]+)/.exec(a?.getAttribute(`transform`)??``)?.[1]??`NaN`);if(!Number.isFinite(o))return;let s=Fh(i.textContent??``,dg)/2;o-s<0?$(i).attr(`text-anchor`,`start`):o+s>t&&$(i).attr(`text-anchor`,`end`)})}function Lg(e,t,n){let r=e.ownerSVGElement?.parentElement??document.documentElement,i=getComputedStyle(r).getPropertyValue(`--bc-grid-color`).trim()||`#ccc`,a=t===`none`||n<=0?[]:[null];$(e).selectAll(`.tick`).each(function(){$(this).selectAll(`.bc-grid-line`).data(a).join(`line`).attr(`class`,`bc-grid-line`).attr(`x1`,0).attr(`x2`,0).attr(`y1`,0).attr(`y2`,-n).attr(`stroke`,i).attr(`stroke-width`,1).attr(`stroke-dasharray`,Rg[t]??null)})}var Rg={dashed:`4,4`,dotted:`1,3`};function zg(e,t,n,r={},i){let a=new Fg($(e));if(i){i.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove());let t=e.lastElementChild;t&&t.appendChild(i)}let o=Sg(t)?t.domain():[];return a.config({scale:t,height:n,tickPosition:r.tickPosition??`below`,showAxis:r.showAxis??!0,showTicks:r.showTicks??!1,gridStyle:r.gridStyle??`dashed`,ticks:r.ticks??null,numberFormat:r.numberFormat??null,width:r.width??0,labels:o,labelPosition:r.labelPosition??`auto`,labelRotation:r.labelRotation??`auto`,zeroY:r.zeroY??null,tickFormat:r.tickFormat??null}),a.draw([{placeholder:!0}]),e.querySelector(`.bc-axis-horizontal`)}var Bg=30;function Vg(e){return typeof e.bandwidth==`function`}var Hg=class extends ch{initialize(){this.configDefine(`scale`,{defaultValue:Sd()}),this.configDefine(`direction`,{defaultValue:Ir.Left}),this.configDefine(`showAxis`,{defaultValue:!0}),this.configDefine(`showTicks`,{defaultValue:!1}),this.configDefine(`gridStyle`,{defaultValue:Rr.Dashed}),this.configDefine(`gridWidth`,{defaultValue:0}),this.configDefine(`height`,{defaultValue:0}),this.configDefine(`ticks`,{defaultValue:null}),this.configDefine(`numberFormat`,{defaultValue:null}),this.configDefine(`labelPosition`,{defaultValue:zr.Auto}),this.configDefine(`topPadding`,{defaultValue:0}),this.configDefine(`tickFormat`,{defaultValue:null});let e=this.base.append(`g`);this.layer(`axis`,e,{dataBind:(e,t)=>e.selectAll(`.bc-axis-vertical`).data(t),insert:e=>e.append(`g`).attr(`class`,`bc-axis bc-axis-vertical`),events:{"merge:transition":e=>{let t=this.config(`scale`),n=this.config(`direction`),r=this.config(`showAxis`),i=this.config(`showTicks`),a=this.config(`labelPosition`),o=this.config(`gridWidth`),s=this.config(`height`),c=n===Ir.Right?fa(t):ma(t);i||c.tickSizeOuter(0);let l=this.config(`ticks`);if(l)c.tickValues(l);else if(s>0){let e=Math.max(2,Math.floor(s/Bg)),n=Ti(t,e);n?c.tickValues(n):c.ticks(e)}let u=this.config(`tickFormat`);if(u)c.tickFormat(u);else{let e=this.config(`numberFormat`),n=e&&!Vg(t)?Sh(e):null;n&&c.tickFormat(n)}let d=og(),f=e.node();if(f){d>0?e.duration(d).call(c):$(f).call(c),r||$(f).select(`.domain`).remove(),i||$(f).selectAll(`.tick line`).attr(`opacity`,0);let t=a===zr.Auto?o>0&&o<400?zr.Inside:zr.Outside:a;if(t===zr.Inside){let t=r?4:0,i=d>0?e.selectAll(`.tick text`):$(f).selectAll(`.tick text`);$(f).selectAll(`.tick text`).classed(`bc-axis-label-inside`,!0),n===Ir.Right?i.attr(`x`,-t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`end`):i.attr(`x`,t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`start`)}else t===zr.Off&&$(f).selectAll(`.tick text`).attr(`opacity`,0)}},exit:e=>{e.remove()},enter:e=>{let t=this.config(`scale`),n=this.config(`direction`),r=this.config(`labelPosition`),i=this.config(`gridWidth`),a=this.config(`height`),o=this.config(`topPadding`),s=n===Ir.Right?fa(t):ma(t);this.config(`showTicks`)||s.tickSizeOuter(0);let c=this.config(`ticks`);if(c)s.tickValues(c);else if(a>0){let e=Math.max(2,Math.floor(a/Bg)),n=Ti(t,e);n?s.tickValues(n):s.ticks(e)}let l=this.config(`tickFormat`);if(l)s.tickFormat(l);else{let e=this.config(`numberFormat`),n=e&&!Vg(t)?Sh(e):null;n&&s.tickFormat(n)}e.call(s);let u=this.config(`showAxis`),d=this.config(`showTicks`);u||e.select(`.domain`).remove();let f=r===zr.Auto?i>0&&i<400?zr.Inside:zr.Outside:r;if(f===zr.Inside){let t=u?4:0;if(e.selectAll(`.tick text`).classed(`bc-axis-label-inside`,!0),n===Ir.Right?e.selectAll(`.tick text`).attr(`x`,-t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`end`):e.selectAll(`.tick text`).attr(`x`,t).attr(`dy`,`-0.4em`).attr(`text-anchor`,`start`),d?e.selectAll(`.tick line`).attr(`x2`,n===Ir.Right?-6:6):e.selectAll(`.tick line`).remove(),o>0&&u){let t=e.select(`.domain`);if(!t.empty()){let e=t.attr(`d`),n=e.replace(/V[\d.]+/,`V${-o}`);n!==e&&t.attr(`d`,n)}}}else d||e.selectAll(`.tick line`).remove(),f===zr.Off&&e.selectAll(`.tick text`).remove()}}})}postDraw(){let e=this.config(`gridStyle`),t=this.config(`gridWidth`),n=this.config(`direction`),r=this.base.select(`.bc-axis-vertical`).node();r&&Wg(r,e,n===Ir.Right?-t:t)}},Ug={[Rr.Dashed]:`4,4`,[Rr.Dotted]:`1,3`};function Wg(e,t,n){let r=e.ownerSVGElement?.parentElement??document.documentElement,i=getComputedStyle(r).getPropertyValue(`--bc-grid-color`).trim()||`#ccc`,a=t===Rr.None||n===0?[]:[null];$(e).selectAll(`.tick`).each(function(){$(this).selectAll(`.bc-grid-line`).data(a).join(`line`).attr(`class`,`bc-grid-line`).attr(`x1`,0).attr(`x2`,n).attr(`y1`,0).attr(`y2`,0).attr(`stroke`,i).attr(`stroke-width`,1).attr(`stroke-dasharray`,Ug[t]??null)})}function Gg(e){return typeof e.step==`function`}var Kg=new WeakMap,qg=new WeakMap;function Jg(e,t){let n=qg.get(e);qg.set(e,t),n!==void 0&&n!==t&&Kg.get(e)?.destroy()}var Yg=class e{vGroup=null;hGroup=null;vChart=null;hChart=null;container;initialized=!1;constructor(e){this.container=e}static for(t){let n=Kg.get(t);return n||(n=new e(t),Kg.set(t,n)),n}static clear(e){Kg.delete(e)}detach(){this.vGroup?.parentNode&&($(this.vGroup).interrupt().selectAll(`*`).interrupt(),this.vGroup.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove()),this.vGroup.remove()),this.hGroup?.parentNode&&($(this.hGroup).interrupt().selectAll(`*`).interrupt(),this.hGroup.querySelectorAll(`.bc-grid-line`).forEach(e=>e.remove()),this.hGroup.remove())}attach(e,t){if(!this.initialized)this.vGroup=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),this.vGroup.setAttribute(`class`,`bc-axis-service-v`),this.hGroup=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),this.hGroup.setAttribute(`class`,`bc-axis-service-h`),e.appendChild(this.vGroup),e.appendChild(this.hGroup),this.vChart=new Hg($(this.vGroup)),this.hChart=new Fg($(this.hGroup)),this.initialized=!0;else{for(let e of[this.vGroup,this.hGroup])$(e).interrupt(),e.removeAttribute(`transform`),$(e).selectAll(`.tick`).interrupt();if(e.appendChild(this.vGroup),e.appendChild(this.hGroup),t&&(Math.abs(t.dx)>=1||Math.abs(t.dy)>=1)){let{dx:e,dy:n}=t;for(let t of[this.vGroup,this.hGroup]){t.setAttribute(`transform`,`translate(${e},${n})`);let r=og();r>0?$(t).transition().duration(r).attrTween(`transform`,()=>{let t=_c(e,0),r=_c(n,0);return e=>`translate(${t(e)},${r(e)})`}):t.removeAttribute(`transform`)}}}}update(e){let t=e.order??`vertical-first`;t===`horizontal-first`?(this.updateHorizontal(e.horizontal),this.updateVertical(e.vertical)):(this.updateVertical(e.vertical),this.updateHorizontal(e.horizontal)),t===`horizontal-first`?this.hGroup&&this.vGroup&&this.hGroup.parentNode&&this.hGroup.parentNode.insertBefore(this.hGroup,this.vGroup):this.vGroup&&this.hGroup&&this.vGroup.parentNode&&this.vGroup.parentNode.insertBefore(this.vGroup,this.hGroup)}updateVertical(e){if(!this.vChart||!this.vGroup)return;if(!e){this.vGroup.style.display=`none`;return}this.vGroup.style.display=``;let t=e.options;this.vChart.config({scale:e.scale,direction:t.direction??`left`,showAxis:t.showAxis??!0,showTicks:t.showTicks??!1,gridStyle:t.gridStyle??`dashed`,gridWidth:t.gridWidth??0,height:e.height,ticks:t.ticks??null,numberFormat:t.numberFormat??null,labelPosition:t.labelPosition??`auto`,topPadding:t.topPadding??0,tickFormat:t.tickFormat??null}),this.vChart.draw([{placeholder:!0}]);let n=this.vGroup.querySelector(`.bc-axis-vertical`);n&&(t.direction??`left`)===`right`?n.setAttribute(`transform`,`translate(${t.gridWidth??0},0)`):n&&n.removeAttribute(`transform`)}updateHorizontal(e){if(!this.hChart||!this.hGroup)return;if(!e){this.hGroup.style.display=`none`;return}this.hGroup.style.display=``;let t=e.options,n=e.scale,r=Gg(n)?n.domain():[];this.hChart.config({scale:n,height:e.height,tickPosition:t.tickPosition??`below`,showAxis:t.showAxis??!0,showTicks:t.showTicks??!1,gridStyle:t.gridStyle??`dashed`,ticks:t.ticks??null,numberFormat:t.numberFormat??null,width:t.width??0,labels:r,labelPosition:t.labelPosition??`auto`,labelRotation:t.labelRotation??`auto`,zeroY:t.zeroY??null,tickFormat:t.tickFormat??null}),this.hChart.draw([{placeholder:!0}])}destroy(){this.detach(),this.vChart=null,this.hChart=null,this.vGroup=null,this.hGroup=null,this.initialized=!1,Kg.delete(this.container)}},Xg=Math.min,Zg=Math.max,Qg=Math.round,$g=e=>({x:e,y:e}),e_={left:`right`,right:`left`,bottom:`top`,top:`bottom`};function t_(e,t,n){return Zg(e,Xg(t,n))}function n_(e,t){return typeof e==`function`?e(t):e}function r_(e){return e.split(`-`)[0]}function i_(e){return e.split(`-`)[1]}function a_(e){return e===`x`?`y`:`x`}function o_(e){return e===`y`?`height`:`width`}function s_(e){let t=e[0];return t===`t`||t===`b`?`y`:`x`}function c_(e){return a_(s_(e))}function l_(e,t,n){n===void 0&&(n=!1);let r=i_(e),i=c_(e),a=o_(i),o=i===`x`?r===(n?`end`:`start`)?`right`:`left`:r===`start`?`bottom`:`top`;return t.reference[a]>t.floating[a]&&(o=v_(o)),[o,v_(o)]}function u_(e){let t=v_(e);return[d_(e),t,d_(t)]}function d_(e){return e.includes(`start`)?e.replace(`start`,`end`):e.replace(`end`,`start`)}var f_=[`left`,`right`],p_=[`right`,`left`],m_=[`top`,`bottom`],h_=[`bottom`,`top`];function g_(e,t,n){switch(e){case`top`:case`bottom`:return n?t?p_:f_:t?f_:p_;case`left`:case`right`:return t?m_:h_;default:return[]}}function __(e,t,n,r){let i=i_(e),a=g_(r_(e),n===`start`,r);return i&&(a=a.map(e=>e+`-`+i),t&&(a=a.concat(a.map(d_)))),a}function v_(e){let t=r_(e);return e_[t]+e.slice(t.length)}function y_(e){return{top:e.top??0,right:e.right??0,bottom:e.bottom??0,left:e.left??0}}function b_(e){return typeof e==`number`?{top:e,right:e,bottom:e,left:e}:y_(e)}function x_(e){let{x:t,y:n,width:r,height:i}=e;return{width:r,height:i,top:n,left:t,right:t+r,bottom:n+i,x:t,y:n}}function S_(e,t,n){let{reference:r,floating:i}=e,a=s_(t),o=c_(t),s=o_(o),c=r_(t),l=a===`y`,u=r.x+r.width/2-i.width/2,d=r.y+r.height/2-i.height/2,f=r[s]/2-i[s]/2,p;switch(c){case`top`:p={x:u,y:r.y-i.height};break;case`bottom`:p={x:u,y:r.y+r.height};break;case`right`:p={x:r.x+r.width,y:d};break;case`left`:p={x:r.x-i.width,y:d};break;default:p={x:r.x,y:r.y}}let m=i_(t);return m&&(p[o]+=f*(m===`end`?1:-1)*(n&&l?-1:1)),p}async function C_(e,t){t===void 0&&(t={});let{x:n,y:r,platform:i,rects:a,elements:o,strategy:s}=e,{boundary:c=`clippingAncestors`,rootBoundary:l=`viewport`,elementContext:u=`floating`,altBoundary:d=!1,padding:f=0}=n_(t,e),p=b_(f),m=o[d?u===`floating`?`reference`:`floating`:u],h=x_(await i.getClippingRect({element:await(i.isElement==null?void 0:i.isElement(m))??!0?m:m.contextElement||await(i.getDocumentElement==null?void 0:i.getDocumentElement(o.floating)),boundary:c,rootBoundary:l,strategy:s})),g=u===`floating`?{x:n,y:r,width:a.floating.width,height:a.floating.height}:a.reference,_=await(i.getOffsetParent==null?void 0:i.getOffsetParent(o.floating)),v=await(i.isElement==null?void 0:i.isElement(_))&&await(i.getScale==null?void 0:i.getScale(_))||{x:1,y:1},y=x_(i.convertOffsetParentRelativeRectToViewportRelativeRect?await i.convertOffsetParentRelativeRectToViewportRelativeRect({elements:o,rect:g,offsetParent:_,strategy:s}):g);return{top:(h.top-y.top+p.top)/v.y,bottom:(y.bottom-h.bottom+p.bottom)/v.y,left:(h.left-y.left+p.left)/v.x,right:(y.right-h.right+p.right)/v.x}}var w_=50,T_=async(e,t,n)=>{let{placement:r=`bottom`,strategy:i=`absolute`,middleware:a=[],platform:o}=n,s=o.detectOverflow?o:{...o,detectOverflow:C_},c=await(o.isRTL==null?void 0:o.isRTL(t)),l=await o.getElementRects({reference:e,floating:t,strategy:i}),{x:u,y:d}=S_(l,r,c),f=r,p=0,m={};for(let n=0;n<a.length;n++){let h=a[n];if(!h)continue;let{name:g,fn:_}=h,{x:v,y,data:b,reset:x}=await _({x:u,y:d,initialPlacement:r,placement:f,strategy:i,middlewareData:m,rects:l,platform:s,elements:{reference:e,floating:t}});u=v??u,d=y??d,m[g]={...m[g],...b},x&&p<w_&&(p++,typeof x==`object`&&(x.placement&&(f=x.placement),x.rects&&(l=x.rects===!0?await o.getElementRects({reference:e,floating:t,strategy:i}):x.rects),{x:u,y:d}=S_(l,f,c)),n=-1)}return{x:u,y:d,placement:f,strategy:i,middlewareData:m}},E_=function(e){return e===void 0&&(e={}),{name:`flip`,options:e,async fn(t){var n;let{placement:r,middlewareData:i,rects:a,initialPlacement:o,platform:s,elements:c}=t,{mainAxis:l=!0,crossAxis:u=!0,fallbackPlacements:d,fallbackStrategy:f=`bestFit`,fallbackAxisSideDirection:p=`none`,flipAlignment:m=!0,...h}=n_(e,t);if((n=i.arrow)!=null&&n.alignmentOffset)return{};let g=r_(r),_=s_(o),v=r_(o)===o,y=await(s.isRTL==null?void 0:s.isRTL(c.floating)),b=d||(v||!m?[v_(o)]:u_(o)),x=p!==`none`;!d&&x&&b.push(...__(o,m,p,y));let S=[o,...b],C=await s.detectOverflow(t,h),w=[],T=i.flip?.overflows||[];if(l&&w.push(C[g]),u){let e=l_(r,a,y);w.push(C[e[0]],C[e[1]])}if(T=[...T,{placement:r,overflows:w}],!w.every(e=>e<=0)){let e=(i.flip?.index||0)+1,t=S[e];if(t&&(u!==`alignment`||_===s_(t)||T.every(e=>s_(e.placement)!==_||e.overflows[0]>0)))return{data:{index:e,overflows:T},reset:{placement:t}};let n=T.filter(e=>e.overflows[0]<=0).sort((e,t)=>e.overflows[1]-t.overflows[1])[0]?.placement;if(!n)switch(f){case`bestFit`:{let e=T.filter(e=>{if(x){let t=s_(e.placement);return t===_||t===`y`}return!0}).map(e=>[e.placement,e.overflows.filter(e=>e>0).reduce((e,t)=>e+t,0)]).sort((e,t)=>e[1]-t[1])[0]?.[0];e&&(n=e);break}case`initialPlacement`:n=o}if(r!==n)return{reset:{placement:n}}}return{}}}},D_=new Set([`left`,`top`]);async function O_(e,t){let{placement:n,platform:r,elements:i}=e,a=await(r.isRTL==null?void 0:r.isRTL(i.floating)),o=r_(n),s=i_(n),c=s_(n)===`y`,l=D_.has(o)?-1:1,u=a&&c?-1:1,d=n_(t,e),{mainAxis:f,crossAxis:p,alignmentAxis:m}=typeof d==`number`?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return s&&typeof m==`number`&&(p=s===`end`?m*-1:m),c?{x:p*u,y:f*l}:{x:f*l,y:p*u}}var k_=function(e){return e===void 0&&(e=0),{name:`offset`,options:e,async fn(t){var n;let{x:r,y:i,placement:a,middlewareData:o}=t,s=await O_(t,e);return a===o.offset?.placement&&(n=o.arrow)!=null&&n.alignmentOffset?{}:{x:r+s.x,y:i+s.y,data:{...s,placement:a}}}}},A_=function(e){return e===void 0&&(e={}),{name:`shift`,options:e,async fn(t){let{x:n,y:r,placement:i,platform:a}=t,{mainAxis:o=!0,crossAxis:s=!1,limiter:c={fn:e=>{let{x:t,y:n}=e;return{x:t,y:n}}},...l}=n_(e,t),u={x:n,y:r},d=await a.detectOverflow(t,l),f=s_(i),p=a_(f),m=u[p],h=u[f],g=(e,t)=>t_(t+d[e===`y`?`top`:`left`],t,t-d[e===`y`?`bottom`:`right`]);o&&(m=g(p,m)),s&&(h=g(f,h));let _=c.fn({...t,[p]:m,[f]:h});return{..._,data:{x:_.x-n,y:_.y-r,enabled:{[p]:o,[f]:s}}}}}};function j_(){return typeof window<`u`}function M_(e){return F_(e)?(e.nodeName||``).toLowerCase():`#document`}function N_(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function P_(e){return((F_(e)?e.ownerDocument:e.document)||window.document)?.documentElement}function F_(e){return j_()?e instanceof Node||e instanceof N_(e).Node:!1}function I_(e){return j_()?e instanceof Element||e instanceof N_(e).Element:!1}function L_(e){return j_()?e instanceof HTMLElement||e instanceof N_(e).HTMLElement:!1}function R_(e){return!j_()||typeof ShadowRoot>`u`?!1:e instanceof ShadowRoot||e instanceof N_(e).ShadowRoot}function z_(e){let{overflow:t,overflowX:n,overflowY:r,display:i}=X_(e);return/auto|scroll|overlay|hidden|clip/.test(t+r+n)&&i!==`inline`&&i!==`contents`}function B_(e){return/^(table|td|th)$/.test(M_(e))}function V_(e){try{if(e.matches(`:popover-open`))return!0}catch{}try{return e.matches(`:modal`)}catch{return!1}}var H_=/transform|translate|scale|rotate|perspective|filter/,U_=/paint|layout|strict|content/,W_=e=>!!e&&e!==`none`,G_;function K_(e){let t=I_(e)?X_(e):e;return W_(t.transform)||W_(t.translate)||W_(t.scale)||W_(t.rotate)||W_(t.perspective)||!J_()&&(W_(t.backdropFilter)||W_(t.filter))||H_.test(t.willChange||``)||U_.test(t.contain||``)}function q_(e){let t=Q_(e);for(;L_(t)&&!Y_(t);){if(K_(t))return t;if(V_(t))return null;t=Q_(t)}return null}function J_(){return G_??=typeof CSS<`u`&&CSS.supports&&CSS.supports(`-webkit-backdrop-filter`,`none`),G_}function Y_(e){return/^(html|body|#document)$/.test(M_(e))}function X_(e){return N_(e).getComputedStyle(e)}function Z_(e){return I_(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function Q_(e){if(M_(e)===`html`)return e;let t=e.assignedSlot||e.parentNode||R_(e)&&e.host||P_(e);return R_(t)?t.host:t}function $_(e){let t=Q_(e);return Y_(t)?(e.ownerDocument||e).body:L_(t)&&z_(t)?t:$_(t)}function ev(e,t,n){t===void 0&&(t=[]),n===void 0&&(n=!0);let r=$_(e),i=r===e.ownerDocument?.body,a=N_(r);if(i){let e=tv(a);return t.concat(a,a.visualViewport||[],z_(r)?r:[],e&&n?ev(e):[])}return t.concat(r,ev(r,[],n))}function tv(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function nv(e){let t=X_(e),n=parseFloat(t.width)||0,r=parseFloat(t.height)||0,i=L_(e),a=i?e.offsetWidth:n,o=i?e.offsetHeight:r,s=Qg(n)!==a||Qg(r)!==o;return s&&(n=a,r=o),{width:n,height:r,$:s}}function rv(e){return I_(e)?e:e.contextElement}function iv(e){let t=rv(e);if(!L_(t))return $g(1);let n=t.getBoundingClientRect(),{width:r,height:i,$:a}=nv(t),o=(a?Qg(n.width):n.width)/r,s=(a?Qg(n.height):n.height)/i;return(!o||!Number.isFinite(o))&&(o=1),(!s||!Number.isFinite(s))&&(s=1),{x:o,y:s}}var av=$g(0);function ov(e){let t=N_(e);return!J_()||!t.visualViewport?av:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function sv(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===N_(e)}function cv(e,t,n,r){t===void 0&&(t=!1),n===void 0&&(n=!1);let i=e.getBoundingClientRect(),a=rv(e),o=$g(1);t&&(r?I_(r)&&(o=iv(r)):o=iv(e));let s=sv(a,n,r)?ov(a):$g(0),c=(i.left+s.x)/o.x,l=(i.top+s.y)/o.y,u=i.width/o.x,d=i.height/o.y;if(a&&r){let e=N_(a),t=I_(r)?N_(r):r,n=e,i=tv(n);for(;i&&t!==n;){let e=iv(i),t=i.getBoundingClientRect(),r=X_(i),a=t.left+(i.clientLeft+parseFloat(r.paddingLeft))*e.x,o=t.top+(i.clientTop+parseFloat(r.paddingTop))*e.y;c*=e.x,l*=e.y,u*=e.x,d*=e.y,c+=a,l+=o,n=N_(i),i=tv(n)}}return x_({width:u,height:d,x:c,y:l})}function lv(e,t){let n=Z_(e).scrollLeft;return t?t.left+n:cv(P_(e)).left+n}function uv(e,t){let n=e.getBoundingClientRect();return{x:n.left+t.scrollLeft-lv(e,n),y:n.top+t.scrollTop}}function dv(e){let{elements:t,rect:n,offsetParent:r,strategy:i}=e,a=i===`fixed`,o=P_(r),s=t?V_(t.floating):!1;if(r===o||s&&a)return n;let c={scrollLeft:0,scrollTop:0},l=$g(1),u=$g(0),d=L_(r);if((d||!a)&&((M_(r)!==`body`||z_(o))&&(c=Z_(r)),d)){let e=cv(r);l=iv(r),u.x=e.x+r.clientLeft,u.y=e.y+r.clientTop}let f=o&&!d&&!a?uv(o,c):$g(0);return{width:n.width*l.x,height:n.height*l.y,x:n.x*l.x-c.scrollLeft*l.x+u.x+f.x,y:n.y*l.y-c.scrollTop*l.y+u.y+f.y}}function fv(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function pv(e){let t=Z_(e),n=e.ownerDocument.body,r=Zg(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),i=Zg(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight),a=-t.scrollLeft+lv(e),o=-t.scrollTop;return X_(n).direction===`rtl`&&(a+=Zg(e.clientWidth,n.clientWidth)-r),{width:r,height:i,x:a,y:o}}var mv=25;function hv(e,t,n){n===void 0&&(n=`viewport`);let r=n===`layoutViewport`,i=N_(e),a=P_(e),o=i.visualViewport,s=a.clientWidth,c=a.clientHeight,l=0,u=0;if(o){let e=!J_()||t===`fixed`;r?e||(l=-o.offsetLeft,u=-o.offsetTop):(s=o.width,c=o.height,e&&(l=o.offsetLeft,u=o.offsetTop))}if(lv(a)<=0){let e=a.ownerDocument,t=e.body,n=getComputedStyle(t),r=e.compatMode===`CSS1Compat`&&parseFloat(n.marginLeft)+parseFloat(n.marginRight)||0,i=Math.abs(a.clientWidth-t.clientWidth-r),o=getComputedStyle(a).scrollbarGutter===`stable both-edges`?i/2:i;o<=mv&&(s-=o)}return{width:s,height:c,x:l,y:u}}function gv(e,t){let n=cv(e,!0,t===`fixed`),r=n.top+e.clientTop,i=n.left+e.clientLeft,a=iv(e);return{width:e.clientWidth*a.x,height:e.clientHeight*a.y,x:i*a.x,y:r*a.y}}function _v(e,t,n){let r;if(t===`viewport`||t===`layoutViewport`)r=hv(e,n,t);else if(t===`document`)r=pv(P_(e));else if(I_(t))r=gv(t,n);else{let n=ov(e);r={x:t.x-n.x,y:t.y-n.y,width:t.width,height:t.height}}return x_(r)}function vv(e,t){let n=t.get(e);if(n)return n;let r=ev(e,[],!1).filter(e=>I_(e)&&M_(e)!==`body`),i=null,a=X_(e).position===`fixed`,o=a?Q_(e):e;for(;I_(o)&&!Y_(o);){let e=X_(o),t=K_(o),n=i?i.position:a?`fixed`:``;!t&&(n===`fixed`||n===`absolute`&&e.position===`static`)?r=r.filter(e=>e!==o):i=e,o=Q_(o)}return t.set(e,r),r}function yv(e){let{element:t,boundary:n,rootBoundary:r,strategy:i}=e,a=[...n===`clippingAncestors`?V_(t)?[]:vv(t,this._c):[].concat(n),r],o=_v(t,a[0],i),s=o.top,c=o.right,l=o.bottom,u=o.left;for(let e=1;e<a.length;e++){let n=_v(t,a[e],i);s=Zg(n.top,s),c=Xg(n.right,c),l=Xg(n.bottom,l),u=Zg(n.left,u)}return{width:c-u,height:l-s,x:u,y:s}}function bv(e){let{width:t,height:n}=nv(e);return{width:t,height:n}}function xv(e,t,n){let r=L_(t),i=P_(t),a=n===`fixed`,o=cv(e,!0,a,t),s={scrollLeft:0,scrollTop:0},c=$g(0);if((r||!a)&&((M_(t)!==`body`||z_(i))&&(s=Z_(t)),r)){let e=cv(t,!0,a,t);c.x=e.x+t.clientLeft,c.y=e.y+t.clientTop}!r&&i&&(c.x=lv(i));let l=i&&!r&&!a?uv(i,s):$g(0);return{x:o.left+s.scrollLeft-c.x-l.x,y:o.top+s.scrollTop-c.y-l.y,width:o.width,height:o.height}}function Sv(e){return X_(e).position===`static`}function Cv(e,t){if(!L_(e)||X_(e).position===`fixed`)return null;if(t)return t(e);let n=e.offsetParent;return P_(e)===n&&(n=n.ownerDocument.body),n}function wv(e,t){let n=N_(e);if(V_(e))return n;if(!L_(e)){let t=Q_(e);for(;t&&!Y_(t);){if(I_(t)&&!Sv(t))return t;t=Q_(t)}return n}let r=Cv(e,t);for(;r&&B_(r)&&Sv(r);)r=Cv(r,t);return r&&Y_(r)&&Sv(r)&&!K_(r)?n:r||q_(e)||n}var Tv=async function(e){let t=this.getOffsetParent||wv,n=this.getDimensions,r=await n(e.floating);return{reference:xv(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:r.width,height:r.height}}};function Ev(e){return X_(e).direction===`rtl`}var Dv={convertOffsetParentRelativeRectToViewportRelativeRect:dv,getDocumentElement:P_,getClippingRect:yv,getOffsetParent:wv,getElementRects:Tv,getClientRects:fv,getDimensions:bv,getScale:iv,isElement:I_,isRTL:Ev},Ov=k_,kv=A_,Av=E_,jv=(e,t,n)=>{let r=new Map,i=n??{},a={...Dv,...i.platform,_c:r};return T_(e,t,{...i,platform:a})},Mv=`bc-tooltip`;function Nv(){if(document.getElementById(`bc-tooltip-styles`))return;let e=document.createElement(`style`);e.id=`bc-tooltip-styles`,e.textContent=`
|
|
313
|
+
.${Mv} {
|
|
314
314
|
position: absolute;
|
|
315
315
|
pointer-events: none;
|
|
316
316
|
background: var(--bs-body-bg, #fff);
|
|
@@ -323,10 +323,10 @@ body {
|
|
|
323
323
|
z-index: 9999;
|
|
324
324
|
display: none;
|
|
325
325
|
}
|
|
326
|
-
`,document.head.appendChild(e)}function
|
|
327
|
-
`);if(c.length>1||i.maxWidth&&i.maxWidth>0){if(i.maxWidth&&i.maxWidth>0)
|
|
328
|
-
`)){let t=``;for(let r of e.split(/\s+/).filter(Boolean)){let e=t?`${t} ${r}`:r;t&&Ah(e,qv)>n?(i(t),t=r):t=e;let a=Mh(t,n,qv,``);for(;a!==t;)i(a),t=t.slice(a.length),a=Mh(t,n,qv,``)}i(t)}}function ny(e,t){let n=Number(e);return Number.isFinite(n)?t.copy().clamp(!0)(n):null}function ry(e,t,n=Gr.Center){if(`bandwidth`in t){let r=t,i=r(String(e));if(i===void 0)return null;let a=r.bandwidth(),o=r.step()-a;return n===`start`?i-o/2:n===`end`?i+a+o/2:i+a/2}if(Rv(t)){let r=t(String(e));if(r===void 0)return null;let i=t.step()/2;return n===`start`?r-i:n===`end`?r+i:r}if(zv(t)){let n=new Date(String(e));return Number.isNaN(n.getTime())?null:t.copy().clamp(!0)(n)}return ny(e,t)}function iy(e,t){return ny(e,t)}function ay(e,t){if(typeof e==`number`)return e/100*t;let n=String(e);return n.endsWith(`%`)?parseFloat(n)/100*t:parseFloat(n)||0}function oy(e,t){if(e==null)return;if(typeof e==`number`)return e||void 0;let n=String(e);return n.endsWith(`%`)?parseFloat(n)/100*t:parseFloat(n)||void 0}function sy(e){return e<-4?`end`:e>4?`start`:`middle`}function cy(e,t,n){if(`bandwidth`in t){let r=t;return{x:(r(e.label)??0)+r.bandwidth()/2,y:n(e.value)}}return{x:Bv(t,e.label),y:n(e.value)}}function ly(e,t,n,r){let i=`target`in t?t.target:void 0;if(!i)return;let a=n.data.find(e=>e.label===i);if(!a)return;let o=e.append(`g`).attr(`data-annotation-index`,String(r)),s=t.key;s&&o.attr(`data-annotation-id`,s);let c=t,l=c.anchorDirection??Vr.N,u=Hv(a,n.scaleX,n.scaleY,l,n.orientation),d,f,p=t;if(p.dx!=null||p.dy!=null){let{x:e,y:t}=cy(a,n.scaleX,n.scaleY);d=e+(Number(p.dx)||40),f=t+(Number(p.dy)||-40)}else if(p.direction!=null&&p.textOffsetX==null){let{x:e,y:t}=cy(a,n.scaleX,n.scaleY),r=p.direction,i=Lv(r,p.anchorDistance??60);d=e+i.dx,f=t+i.dy}else d=u.x+(c.textOffsetX??-42),f=u.y+(c.textOffsetY??-42);let m=t.circleColor??`#666`,h=t;h.showCircle&&Yv(o,u.x,u.y,{size:h.circleSize,style:h.circleStyle,color:m});let g=Math.max(4,Math.min(d,n.width-4)),_=Math.max(4,Math.min(f,n.height-4));if(t.text){let e=sy(d-u.x);ey(o,t.text,g,_-4,{textColor:t.textColor,maxWidth:oy(t.maxWidth,n.width)??n.width*.4,textAnchor:e,backgroundColor:n.backgroundColor,textOutline:t.textOutline})}if(p.dx!=null||p.dy!=null?c.showLine!==!1:c.showLine===!0||c.showArrow===!0){let e={x:g,y:_},t=!1,n=o.select(`.bc-annotation-text`).node();if(n)try{let r=n.getBBox();if(r.width>0&&r.height>0){e=Uv(r,u.x,u.y);let n=r.x+r.width/2;t=Math.abs(e.x-n)<1}}catch{}let r=c.showCircle?Jv(c.circleSize)+(c.lineTargetDistance??5):c.lineTargetDistance??0,i=u.x,a=u.y;if(r>0){let t=u.x-e.x,n=u.y-e.y,o=Math.sqrt(t*t+n*n);if(o>0){let e=u.x-t/o*r,s=u.y-n/o*r,c=Fv[l]??Fv.N;i=Math.abs(c.dx)>.01?e:u.x,a=Math.abs(c.dy)>.01?s:u.y}}$v(o,e,{x:i,y:a},c.lineStyle??Hr.Direct,{showArrow:c.showArrow,lineWeight:c.lineWeight,color:m,departVertical:t})}}function uy(e,t,n,r,i){if(t.kind!==Wr.Range)return;let a=(t.orientation??Kr.Vertical)===Kr.Vertical,o=a?ry(t.start,n.scaleX,t.startAnchor):iy(t.start,n.scaleY),s=a?ry(t.end,n.scaleX,t.endAnchor):iy(t.end,n.scaleY);if(o===null||s===null)return;let c=e.append(`g`).attr(`data-annotation-index`,String(r)),l=t.key;l&&c.attr(`data-annotation-id`,l);let u=n.orientation===Kr.Horizontal===a,d,f,p,m;if(u?(f=Math.min(o,s),m=Math.abs(s-o),d=0,p=n.width):(d=Math.min(o,s),p=Math.abs(s-o),f=0,m=n.height),c.append(`rect`).attr(`class`,`bc-annotation-range`).attr(`x`,d).attr(`y`,f).attr(`width`,p).attr(`height`,m).attr(`fill`,t.bgColor??`#ccc`).attr(`opacity`,(t.bgOpacity??20)/100),t.text){let e=a?p:m,o=oy(t.maxWidth,n.width)??Math.max(e,50),s=Fv[t.direction??`center`]??Fv.center,l=.5+s.dx*.5,u=.5+s.dy*.5,h=Math.max(4,Math.min(d+p*l,n.width-4)),g=`middle`;l<.25?g=`start`:l>.75&&(g=`end`);let _=f+4+12,v=i?i.append(`g`).attr(`data-annotation-index`,String(r)):c;if(ey(v,t.text,h,_,{textColor:t.textColor,maxWidth:o,textAnchor:g,backgroundColor:n.backgroundColor,textOutline:t.textOutline}),u>.25){let e=v.select(`.bc-annotation-text`).node();if(e)try{let t=e.getBBox(),n=0;n=u>.75?f+m-4-(t.y+t.height):f+m/2-(t.y+t.height/2),Math.abs(n)>.5&&e.setAttribute(`transform`,`translate(0, ${n})`)}catch{}}}}function dy(e,t,n,r){if(t.kind!==`free`)return;let i=e.append(`g`).attr(`data-annotation-index`,String(r)),a=t.key;a&&i.attr(`data-annotation-id`,a);let o=ay(t.x,n.width),s=ay(t.y,n.height);if(t.text){ey(i,t.text,o,s,{textColor:t.textColor,maxWidth:oy(t.maxWidth,n.width)??n.width*.4,textAnchor:`middle`,backgroundColor:n.backgroundColor,textOutline:t.textOutline});let e=i.select(`.bc-annotation-text`).node();if(e)try{let t=e.getBBox(),n=s-(t.y+t.height/2);Math.abs(n)>.5&&e.setAttribute(`transform`,`translate(0, ${n})`)}catch{}}}function fy(e,t,n,r){return`M ${e} ${t} L ${n+.45*(e-n)} ${t} L ${n} ${r}`}function py(e,t){let n=e.hasAttribute(`marker-end`),r=Nv(e.parentElement);if(n&&r){let n=$(e),i=e.getAttribute(`d`),a=`M ${r.fromX} ${r.fromY} L ${r.fromX} ${r.fromY}`;if(n.attr(`d`,a),r.style===Hr.Elbow){let e={tipX:r.toX,tipY:r.toY,calloutX:r.fromX,calloutY:r.fromY},i={tipX:r.fromX,tipY:r.fromY,calloutX:r.fromX,calloutY:r.fromY};n.transition().duration(t).ease(_u).attrTween(`d`,()=>{let t=vc(i,e);return e=>{let n=t(e);return fy(n.calloutX,n.calloutY,n.tipX,n.tipY)}})}else if(r.style===Hr.CurveLeft||r.style===Hr.CurveRight){let e={x:r.fromX,y:r.fromY},a={x:r.toX,y:r.toY},o=a.x-e.x,s=a.y-e.y,c=Math.sqrt(o*o+s*s),l=c*.8,u=+(r.style===Hr.CurveRight),d=c/2,f=d<l?Math.sqrt(l*l-d*d):0,p=(e.x+a.x)/2,m=(e.y+a.y)/2,h=c>0?-s/c:0,g=c>0?o/c:0,_=u===1?1:-1,v=p+_*f*h,y=m+_*f*g,b=Math.atan2(e.y-y,e.x-v),x=Math.atan2(a.y-y,a.x-v)-b;u===1&&x<=0&&(x+=2*Math.PI),u===0&&x>=0&&(x-=2*Math.PI),n.transition().duration(t).ease(_u).attrTween(`d`,()=>t=>{if(t>=.98)return i;let n=b+t*x,r=v+l*Math.cos(n),a=y+l*Math.sin(n);return`M ${e.x} ${e.y} A ${l} ${l} 0 0 ${u} ${r} ${a}`})}else n.transition().duration(t).ease(_u).attrTween(`d`,()=>{let e=_c(r.fromX,r.toX),t=_c(r.fromY,r.toY);return n=>`M ${r.fromX} ${r.fromY} L ${e(n)} ${t(n)}`})}else e.setAttribute(`stroke-dasharray`,`1`),e.setAttribute(`stroke-dashoffset`,`1`),$(e).transition().duration(t).ease(_u).attr(`stroke-dashoffset`,`0`).on(`end`,()=>{e.removeAttribute(`stroke-dasharray`),e.removeAttribute(`stroke-dashoffset`)})}var my=1;function hy(e,t){return e.style!==t.style||e.departVertical!==t.departVertical?!1:Math.abs(e.fromX-t.fromX)<=my&&Math.abs(e.fromY-t.fromY)<=my&&Math.abs(e.toX-t.toX)<=my&&Math.abs(e.toY-t.toY)<=my}function gy(e,t,n){let r=Nv(e.parentElement);if(!r||hy(t,r))return;let i=$(e);if(t.style===Hr.Elbow&&r.style===Hr.Elbow){let e={tipX:t.toX,tipY:t.toY,calloutX:t.fromX,calloutY:t.fromY},a={tipX:r.toX,tipY:r.toY,calloutX:r.fromX,calloutY:r.fromY};i.attr(`d`,fy(e.calloutX,e.calloutY,e.tipX,e.tipY)),i.transition().duration(n).ease(vu).attrTween(`d`,()=>{let t=vc(e,a);return e=>{let n=t(e);return fy(n.calloutX,n.calloutY,n.tipX,n.tipY)}})}else{let a={x:t.fromX,y:t.fromY},o={x:t.toX,y:t.toY},s={x:r.fromX,y:r.fromY},c={x:r.toX,y:r.toY},l=e.getAttribute(`d`),u=`M ${a.x} ${a.y} L ${o.x} ${o.y}`;i.attr(`d`,u),i.transition().duration(n).ease(vu).attrTween(`d`,()=>{let e=vc(a,s),n=vc(o,c);return i=>{if(i>=.98)return l;let a=e(i),o=n(i);if(r.style===Hr.Direct||t.style===Hr.Direct)return`M ${a.x} ${a.y} L ${o.x} ${o.y}`;let s=o.x-a.x,c=o.y-a.y,u=Math.sqrt(s*s+c*c)*.8,d=+(r.style===Hr.CurveRight);return`M ${a.x} ${a.y} A ${u} ${u} 0 0 ${d} ${o.x} ${o.y}`}})}}function _y(e,t,n,r){if(r<=0)return;let i=[...e.querySelectorAll(`g[data-annotation-id]`),...t.querySelectorAll(`g[data-annotation-id]`)],a=new Set;for(let e of i){let t=e.getAttribute(`data-annotation-id`);a.add(t);let i=n.get(t);if(i){let t=e.querySelector(`.bc-annotation-line`);t&&i.line&&gy(t,i.line,r);try{let t=e.getBBox(),n=i.rect.x-t.x,a=i.rect.y-t.y;if(Math.abs(n)>.5||Math.abs(a)>.5){let t=e.querySelectorAll(`.bc-annotation-text, .bc-annotation-circle`);for(let e of t){let t=e;t.style.transition=`none`,t.setAttribute(`transform`,`translate(${n}, ${a})`),t.getBoundingClientRect(),t.style.transition=`transform ${r}ms ease`,t.setAttribute(`transform`,`translate(0, 0)`)}}}catch{}}else{let t=e.querySelector(`.bc-annotation-line`);t&&py(t,r);let n=e.querySelectorAll(`.bc-annotation-text, .bc-annotation-circle`);for(let e of n){let t=e;t.style.opacity=`0`,t.getBoundingClientRect(),t.style.transition=`opacity ${r}ms ease`,t.style.opacity=`1`}}}for(let[t,i]of n)if(!a.has(t)){let t=i.element.cloneNode(!0);e.appendChild(t),t.style.opacity=`1`,t.getBoundingClientRect(),t.style.transition=`opacity ${r}ms ease`,t.style.opacity=`0`,setTimeout(()=>t.remove(),r)}}function vy(e,t=0){if(!e)return;if(t>0){setTimeout(()=>vy(e),t);return}let n=parseFloat(e.getAttribute(`width`)||`0`),r=parseFloat(e.getAttribute(`height`)||`0`);if(!n||!r)return;let i=e.getBBox();if(i.width===0&&i.height===0)return;let a=n*.25/2,o=r*.25/2,s=i.x,c=i.y,l=i.x+i.width,u=i.y+i.height,d=s<0?Math.max(s-8,-a):0,f=c<0?Math.max(c-8,-o):0,p=l>n?Math.min(l+8,n+a):n,m=u>r?Math.min(u+8,r+o):r;d<0||f<0||p>n||m>r?$(e).attr(`viewBox`,`${d} ${f} ${p-d} ${m-f}`).attr(`preserveAspectRatio`,`xMidYMid meet`):$(e).attr(`viewBox`,null).attr(`preserveAspectRatio`,null)}function yy(e,t,n){let r=e.ownerSVGElement??e;$(r).style(`overflow`,`visible`),Wv(r);let i=$(e),a;if(n.transition){if(n.priorAnnotations&&n.priorAnnotations.size>0)a=n.priorAnnotations;else{let t=e.querySelector(`.bc-annotations`),n=e.querySelector(`.bc-annotations-range`);if(t||n){if(a=new Map,t)for(let[e,n]of Pv(t))a.set(e,n);if(n)for(let[e,t]of Pv(n))a.set(e,t)}}}e.querySelectorAll(`.bc-annotations, .bc-annotations-range`).forEach(e=>e.remove());let o=i.insert(`g`,`:first-child`).attr(`class`,`bc-annotations-range`),s=i.append(`g`).attr(`class`,`bc-annotations`).attr(`data-ctx-width`,String(n.width)).attr(`data-ctx-height`,String(n.height));for(let e=0;e<t.length;e++){let r=t[e];switch(r.kind??Wr.Point){case Wr.Point:ly(s,r,n,e);break;case Wr.Range:uy(o,r,n,e,s);break;case Wr.Free:dy(s,r,n,e)}}let c=0;n.transition&&(c=Qh(500),_y(s.node(),o.node(),a??new Map,c)),vy(r,c)}function by(e,t){return{name:`annotations`,install(){},postDraw(n){let r=n.base,i=r.node()?.ownerSVGElement??r.node();i&&$(i).style(`overflow`,`visible`),Wv(i);let a=r.node()?.parentNode,o=a&&a!==i?$(a):r,s=o.node(),c;if(t.transition){if(t.priorAnnotations&&t.priorAnnotations.size>0)c=t.priorAnnotations;else if(s){let e=s.querySelector(`.bc-annotations`),t=s.querySelector(`.bc-annotations-range`);if(e||t){if(c=new Map,e)for(let[t,n]of Pv(e))c.set(t,n);if(t)for(let[e,n]of Pv(t))c.set(e,n)}}}s&&s.querySelectorAll(`.bc-annotations, .bc-annotations-range`).forEach(e=>e.remove());let l=o.insert(`g`,`:first-child`).attr(`class`,`bc-annotations-range`),u=o.append(`g`).attr(`class`,`bc-annotations`).attr(`data-ctx-width`,String(t.width)).attr(`data-ctx-height`,String(t.height));for(let n=0;n<e.length;n++){let r=e[n];switch(r.kind??Wr.Point){case Wr.Point:ly(u,r,t,n);break;case Wr.Range:uy(l,r,t,n,u);break;case Wr.Free:dy(u,r,t,n)}}let d=0;t.transition&&(d=Qh(500),_y(u.node(),l.node(),c??new Map,d)),vy(i,d)}}}function xy(e){return new Map((e??[]).map(e=>[e.target,e.color]))}var Sy=new WeakMap;function Cy(e){return Sy.get(e)}function wy(e,t){Sy.set(e,t)}var Ty=0,Ey=new WeakMap;function Dy(e,t,n,r){let i=Ey.get(t);i||(i=new Map,Ey.set(t,i));let a=i.get(n);a||(a=`bc-clip-${++Ty}`,i.set(n,a));let o=$(e).select(`defs`).empty()?$(e).append(`defs`):$(e).select(`defs`),s=o.select(`#${a}`);return s.empty()?o.append(`clipPath`).attr(`id`,a).append(`rect`).attr(`x`,r.x).attr(`y`,r.y).attr(`width`,r.width).attr(`height`,r.height):s.select(`rect`).attr(`x`,r.x).attr(`y`,r.y).attr(`width`,r.width).attr(`height`,r.height),a}var Oy=class extends ch{initialize(){}};function ky(e){return new Oy(e)}var Ay=`bc-scene`,jy=500,My=new Set,Ny=new WeakMap;function Py(e){let t=Ny.get(e);return t||(t=new Iy(e),Ny.set(e,t)),t}function Fy(e){Ny.delete(e)}var Iy=class{container;_state=`idle`;_transition=null;_buffer=[];register(e){this._buffer.push(e)}constructor(e){this.container=e}get state(){return this._state}get activeTransition(){return this._transition}beginCommit(){(this._state===`committing`||this._state===`animating`)&&this.interrupt(),this._state=`committing`}commit(e={}){if(this._state!==`committing`){console.warn(`[blueprint-chart] commit() called from state '${this._state}' — call beginCommit() first; ignored.`);return}let t=e.mode??`transform`;if(t!==`transform`){My.has(t)||(My.add(t),console.warn(`[blueprint-chart] transition mode '${t}' is not yet implemented; falling back to snap.`));let e=this._buffer;this._buffer=[],this._state=`animating`;for(let t of e)try{t()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}this._state=`idle`;return}let n=e.duration??jy,r=this.effectiveDuration(n),i=this._buffer;if(this._buffer=[],r<=0){this._state=`animating`;for(let e of i)try{e()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}this._state=`idle`;return}this._state=`animating`;let a=mu(Ay).duration(r).ease(vu);this._transition=a;for(let e of i)try{e()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}a.on(`end`,()=>{this._transition===a&&(this._transition=null,this._state=`idle`)}),a.on(`interrupt`,()=>{this._transition===a&&(this._transition=null,this._state=`idle`)})}effectiveDuration(e){return e<=0?0:typeof window>`u`||typeof window.matchMedia!=`function`?e:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:e}interrupt(){this._buffer=[],this._transition=null,$(this.container).interrupt(Ay),$(this.container).selectAll(`*`).interrupt(Ay),this._state=`idle`}run(e,t={}){this.beginCommit();try{e()}catch(e){console.warn(`[blueprint-chart] scene-transition commit failed:`,e),this._state=`idle`;return}this.commit(t)}destroy(){this.interrupt(),Fy(this.container)}};function Ly(e,t){let n=new Map;return e.querySelectorAll(`[data-bc-role="${t}"]`).forEach(e=>{let t=e.getAttribute(`data-bc-key`);t!=null&&n.set(t,e)}),n}function Ry(e,t){return e.tagName===t.tagName}function zy(e,t){$(e).interrupt(Ay);let n={};for(let r of t){let t=e.getAttribute(r);t!==null&&(n[r]=t)}return n}function By(e,t){let n=Vy(e),r=Vy(t);if(n.skeleton!==r.skeleton||n.nums.length!==r.nums.length)return n=>n<.5?e:t;let{skeleton:i,nums:a}=n,{nums:o}=r;return n=>{if(n<=0)return e;if(n>=1)return t;let r=0;return i.replace(/#/g,()=>{let e=a[r]+(o[r]-a[r])*n;return r++,Hy(e)})}}function Vy(e){let t=[];return{skeleton:e.replace(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi,e=>(t.push(parseFloat(e)),`#`)),nums:t}}function Hy(e){let t=Math.round(e*1e3)/1e3;return Object.is(t,-0)?`0`:String(t)}var Uy={opacity:0},Wy=new Set([`d`,`transform`]),Gy=new Set([`stroke-dasharray`]);function Ky(e,t){if(e.state===`idle`||e.state===`animating`){qy(t);return}e.register(()=>Jy(e,t))}function qy(e){let t=$(e.parent).selectAll(e.selector).data(e.data,t=>e.key(t));t.exit().remove();let n=e.insert(t.enter());Yy(n,e),n.merge(t).each(function(t){Qy(this,e.attrs(t))})}function Jy(e,t){let n=e.activeTransition,r=$(t.parent).selectAll(t.selector).data(t.data,e=>t.key(e)),i=Zy(t),a=r.exit();n?a.each(function(){let e=this,r=$(e).datum();$y(e,t.exitTo?t.exitTo(r):Uy,n).on(`end.featureJoin-exit`,()=>e.parentNode?.removeChild(e))}):a.remove();let o=Ly(e.container,t.role),s=t.insert(r.enter());Yy(s,t),s.each(function(e){let r=this,a=t.attrs(e);if(n){let s=o.get(Xy(t.key(e)));if(s&&Ry(s,r)){Qy(r,zy(s,i)),$y(r,a,n);return}Qy(r,t.enterFrom?t.enterFrom(e):a),$y(r,a,n)}else Qy(r,a)}),r.each(function(e){let r=this,a=t.attrs(e);n?(zy(r,i),$y(r,a,n)):Qy(r,a)})}function Yy(e,t){e.attr(`data-bc-role`,t.role),e.attr(`data-bc-key`,e=>Xy(t.key(e)))}function Xy(e){return e.replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g,`␟`)}function Zy(e){return e.data.length===0?[]:Object.keys(e.attrs(e.data[0]))}function Qy(e,t){for(let[n,r]of Object.entries(t))e.setAttribute(n,String(r))}function $y(e,t,n){let r=$(e).transition(n);for(let[n,i]of Object.entries(t))if(Wy.has(n)){let e=String(i);r.attrTween(n,function(){return By(this.getAttribute(n)??e,e)})}else Gy.has(n)?e.setAttribute(n,String(i)):r.attr(n,String(i));return r}function eb(e,t){if(!t.active||!t.from)return;let n=t.svg.querySelector(`#${t.clipId} rect`);tb(e,{group:t.group,clipRect:n,from:t.from,to:t.to})}function tb(e,t){let{group:n,clipRect:r,from:i,to:a}=t,o=`translate(${a.left},${a.top})`,s=`translate(${i.left},${i.top})`;e.register(()=>{let t=e.activeTransition;if(!t){n.setAttribute(`transform`,o),r&&(r.setAttribute(`width`,String(a.width)),r.setAttribute(`height`,String(a.height)));return}n.setAttribute(`transform`,s),$(n).transition(t).attrTween(`transform`,function(){return By(this.getAttribute(`transform`)??s,o)}),r&&(r.setAttribute(`width`,String(i.width)),r.setAttribute(`height`,String(i.height)),$(r).transition(t).attr(`width`,a.width).attr(`height`,a.height))})}var nb=.35;function rb(e,t){let n=new Set(t);return new Set((e??[]).map(e=>e.target).filter(e=>n.has(e)))}function ib(e,t,n=1){return e.size===0||e.has(t)?n:nb}var ab=11,ob=6.2,sb=ab,cb=8,lb=4,ub=14;function db(e){return Math.max(Ah(e,ab),e.length*ob)}function fb(e){let t=db(e.text);return e.placement===`inside`?e.orientation===`horizontal`?t<=e.barWidth-cb&&sb<=e.barHeight:sb<=e.barHeight-lb&&t<=e.barWidth:(e.orientation===`vertical`?e.barWidth:e.barHeight)>=ub}var pb=8,mb=4,hb=7,gb=`11px sans-serif`;function _b(e,t=gb){let n=e.length*hb;try{let r=document.createElement(`canvas`).getContext(`2d`);if(r)return r.font=t,Math.max(Math.ceil(r.measureText(e).width),n)}catch{}return n}function vb(e,t,n,r){let i=e.length*hb/2,a=i+mb-r.margin.left,o=r.width+r.margin.right-i-mb,s=12-r.margin.top,c=r.height+r.margin.bottom-mb,l=Math.min(Math.max(n,0),r.height);return{x:Math.min(Math.max(t,a),Math.max(a,o)),y:Math.min(Math.max(l-pb,s),Math.max(s,c))}}var yb=4;function bb(e){return Math.max(0,Math.min(13,e-yb))}var xb=400;function Sb(e,t){return e>0&&e<xb&&t!==zr.Outside}var Cb=[`#4e79a7`],wb=4,Tb=8;function Eb(e,t,n={},r=!1){eg(r);let i=null,a,o,s,c=[],l=Wg.for(e);if(r){let t=Cy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-vertical`?c=Array.from(e.querySelectorAll(`.bc-frame .bc-bar`)):t&&(i=rg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))a.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Yh(u).width,f=n.categoryLabelLine===!0,p=Gh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),m=f?zr.Off:n.horizontalAxis?.labelPosition,h=qh(d,n.verticalAxis?.labelPosition,m,n.verticalAxis?.direction,p);if(!f){let e=Math.max(0,d-(h.left??50)-(h.right??20)),r=Dg(t.labels,e,n.horizontalAxis);r!==void 0&&(h.bottom=r)}let{chartArea:g,width:_,height:v,margin:y}=Zh(u,h),b=v-(f?bb(v):0),x=Nh(o,y),S={left:y.left,top:y.top,width:_,height:b},C=kb(t,n),w=C.map(e=>({label:e,value:t.values[t.labels.indexOf(e)]})).filter(e=>Number.isFinite(e.value)),T=n.swapLabelValue===!0,E=n.waterfall===!0,D=[];if(E){let e=0;for(let t of w){let n=e;e+=t.value,D.push({label:t.label,value:t.value,y0:n,y1:e,isTotal:!1})}n.waterfallTotal&&D.push({label:`Total`,value:e,y0:0,y1:e,isTotal:!0})}let O=E?D.map(e=>e.label):C,k=od().domain(O).range([0,_]).padding(Ci(n.barGap)),ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(E?D.flatMap(e=>[e.y0,e.y1]):w.map(e=>e.value),n.verticalAxis?.range,n.verticalAxis?.scaleType);if(n.valueLabels&&A<0&&n.verticalAxis?.range?.min==null){let e=j-A;A-=e*.1}let M=ee?Ed().domain([A,j]).nice().range([b,0]):Sd().domain([A,j]).nice().range([b,0]);l.attach(g,x);let N=T&&n.valueLabels&&!E?(()=>{let e=new Map(w.map(e=>[e.label,e.value]));return{...n.horizontalAxis,width:_,tickFormat:t=>String(e.get(t)??t)}})():{...n.horizontalAxis,width:_},P=f?{...N,labelPosition:zr.Off}:N;l.update({vertical:{scale:M,height:v,options:{...n.verticalAxis,gridWidth:_,topPadding:y.top}},horizontal:{scale:k,height:v,options:P}}),!ee&&A<0&&j>0&&$(g).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,0).attr(`x2`,_).attr(`y1`,M(0)).attr(`y2`,M(0)).attr(`stroke`,`#666`).attr(`stroke-width`,1);let F=xy(n.colorizes),I=rb(n.highlights,O),L=g.ownerSVGElement,R=Dy(L,e,`bars`,{x:0,y:0,width:_,height:b}),z=$(L).select(`defs`),B=R.replace(/^bc-clip-/,``),V=$(g).append(`g`).attr(`clip-path`,`url(#${R})`);if(n.barBackground){let e=(n.colors??Cb)[0],t=E?O:w.map(e=>e.label);V.selectAll(`.bc-bar-bg`).data(t,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,e=>k(e)??0).attr(`y`,0).attr(`width`,k.bandwidth()).attr(`height`,b).attr(`fill`,e).attr(`opacity`,.18)}let H=E?O:w.map(e=>e.label);if(n.barSeparators&&H.length>1){let e=k.step();for(let t=1;t<H.length;t++){let n=(k(H[t-1])??0)+k.bandwidth()+(e-k.bandwidth())/2;V.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,n).attr(`x2`,n).attr(`y1`,0).attr(`y2`,b).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}if(!E&&n.connectedColumns&&w.length>1){let e=n.colors??Cb,t=n.connectionsOpacity??.15;for(let n=0;n<w.length-1;n++){let r=w[n],i=w[n+1];if(r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(k(r.label)??0)+k.bandwidth(),o=k(i.label)??0,s=Math.min(M(0),M(r.value)),c=Math.min(M(0),M(i.value)),l=M(0),u=F.get(r.label)??e[0],d=F.get(i.label)??e[0],f;if(u===d)f=u;else{let e=`bc-conn-grad-${B}-${n}`,t=z.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`100%`).attr(`y1`,`0%`).attr(`y2`,`0%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,u),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,d),f=`url(#${e})`}V.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${a},${s} ${o},${c} ${o},${l} ${a},${l}`).attr(`fill`,f).attr(`opacity`,t).attr(`pointer-events`,`none`)}}let te=$(g).append(`g`);if(E){let e=n.colors??Cb,t=`#333`;if(n.connectedColumns&&D.length>1){let e=n.colors??Cb,t=n.connectionsOpacity??.15;for(let n=0;n<D.length-1;n++){let r=D[n],i=D[n+1];if(i.isTotal||r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(k(r.label)??0)+k.bandwidth(),o=k(i.label)??0,s=M(r.y1),c=M(i.y1),l=M(r.y0),u=M(i.y0),d=F.get(r.label)??e[0],f=F.get(i.label)??e[0],p;if(d===f)p=d;else{let e=`bc-conn-grad-${B}-${n}`,t=z.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`100%`).attr(`y1`,`0%`).attr(`y2`,`0%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,d),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,f),p=`url(#${e})`}V.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${a},${s} ${o},${c} ${o},${u} ${a},${l}`).attr(`fill`,p).attr(`opacity`,t).attr(`pointer-events`,`none`)}}for(let e=0;e<D.length-1;e++){let t=D[e],n=D[e+1];if(n.isTotal)break;V.append(`line`).attr(`class`,`bc-waterfall-connector`).attr(`x1`,(k(t.label)??0)+k.bandwidth()).attr(`x2`,k(n.label)??0).attr(`y1`,M(t.y1)).attr(`y2`,M(t.y1)).attr(`stroke`,`currentColor`).attr(`stroke-dasharray`,`2,2`).attr(`opacity`,.3)}if(V.selectAll(`.bc-bar`).data(D,e=>e.label).enter().append(`rect`).attr(`class`,`bc-bar`).attr(`x`,e=>k(e.label)??0).attr(`y`,e=>Math.min(M(e.y0),M(e.y1))).attr(`width`,k.bandwidth()).attr(`height`,e=>Math.abs(M(e.y0)-M(e.y1))).attr(`fill`,n=>n.isTotal?t:F.get(n.label)??e[0]).attr(`opacity`,e=>I.size>0?ib(I,e.label):null),n.valueLabels){let r=n.valueLabelPosition??ei.Auto,i=_h(n.verticalAxis?.numberFormat??``),a=e=>i?i(e):String(e);te.selectAll(`.bc-value-label`).data(D,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`x`,e=>(k(e.label)??0)+k.bandwidth()/2).attr(`y`,e=>{let t=Math.min(M(e.y0),M(e.y1)),n=Math.abs(M(e.y0)-M(e.y1));return r===ei.Inside?t+n/2:t-4}).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,r===ei.Inside?`central`:`auto`).attr(`fill`,n=>r===ei.Inside?Sr(n.isTotal?t:F.get(n.label)??e[0]):`currentColor`).text(e=>T?e.label:a(e.isTotal?e.y1:e.value))}}else{let t=Py(e),i=V.append(`g`).node();if(r)for(let e of c)i.appendChild(e);Ky(t,{role:`mark-per-category`,parent:i,selector:`.bc-bar`,data:w,key:e=>e.label,insert:e=>e.append(`rect`).attr(`class`,`bc-bar`),attrs:e=>({x:k(e.label)??0,y:Math.min(M(0),M(e.value)),width:k.bandwidth(),height:Math.abs(M(e.value)-M(0)),fill:F.get(e.label)??(n.colors??Cb)[0],opacity:ib(I,e.label)})}),eb(t,{svg:L,clipId:R,group:g,from:s,to:S,active:r&&c.length>0});let o=ky(V);n.tooltips&&o.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&o.use(Mv({width:_,height:b,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length&&o.use(by(n.annotations,{scaleX:k,scaleY:M,data:w,width:_,height:b,backgroundColor:wr(e),transition:r,priorAnnotations:a}));let l=()=>o.draw(w);if(t.state===`committing`?t.register(l):l(),n.valueLabels){let e=_h(n.verticalAxis?.numberFormat??``);Ob(te,w,k,M,{position:n.valueLabelPosition,colorOverrides:F,colors:n.colors??Cb,transition:r,swapLabelValue:T,percent:n.valueLabels===`percent`,total:Qi(w,e=>e.value),formatValue:t=>e?e(t):String(t),bounds:{plotHeight:b,marginTop:y.top,marginBottom:y.bottom}})}}if(f){let e=$(g).append(`g`).attr(`class`,`bc-category-labels`);for(let t of O)e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,(k(t)??0)+k.bandwidth()/2).attr(`y`,b+13/2).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}wy(e,{chartType:`bar-vertical`,margin:y,plotRect:S}),i&&(ng(V.node()),ig(e,i))}function Db(e,t,n,r,i){let a=(t(e.label)??0)+t.bandwidth()/2,o=`middle`,s=e=>Math.max(0,Math.min(i.plotHeight,e)),c=s(Math.min(n(0),n(e.value))),l=s(Math.max(n(0),n(e.value))),u=e.value<0,d=n(e.value),f=d<0||d>i.plotHeight,p=u?l+wb:c-wb,m=u?p+Tb<=i.plotHeight+i.marginBottom:p-Tb>=-i.marginTop,h=l-c,g=(r===ei.Inside||f||!m)&&h>=12;return g?{tx:a,ty:(c+l)/2,anchor:o,baseline:`central`,isInside:g}:{tx:a,ty:p,anchor:o,baseline:u?`hanging`:`auto`,isInside:g}}function Ob(e,t,n,r,i){let a=i.position??ei.Auto,o=e=>i.swapLabelValue?e.label:i.percent&&i.total!==void 0?vh(e.value,i.total):i.formatValue(e.value),s=e.select(`.bc-value-label-group`);s.empty()&&(s=e.append(`g`).attr(`class`,`bc-value-label-group`));let c=e.node().ownerSVGElement?.parentElement,l=Py(c),u=t.filter(e=>fb({text:o(e),placement:a===ei.Inside?`inside`:`outside`,orientation:`vertical`,barWidth:n.bandwidth(),barHeight:Math.abs(r(e.value)-r(0))}));Ky(l,{role:`value-label`,parent:s.node(),selector:`.bc-value-label`,data:u,key:e=>e.label,insert:e=>e.append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`),attrs:e=>{let t=Db(e,n,r,a,i.bounds);return{x:t.tx,y:t.ty,"text-anchor":t.anchor,"dominant-baseline":t.baseline,fill:t.isInside?Sr(i.colorOverrides.get(e.label)??i.colors[0]):`currentColor`}}}),s.selectAll(`.bc-value-label`).data(u,e=>e.label).text(o)}function kb(e,t){let n=e.labels.map((t,n)=>({label:t,value:e.values[n]}));return t.sort===Xr.Ascending?n.sort((e,t)=>e.value-t.value):t.sort===Xr.Descending&&n.sort((e,t)=>t.value-e.value),n.map(e=>e.label)}var Ab=[`#4e79a7`],jb=4;function Mb(e,t,n={},r=!1){eg(r);let i=null,a,o,s=[],c,l=Wg.for(e);if(r){let t=Cy(e);o=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-horizontal`?s=Array.from(e.querySelectorAll(`.bc-frame .bc-bar`)):t&&(i=rg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))a.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Yh(u).width,f=Sb(d,n.verticalAxis?.labelPosition),p=n.categoryLabelLine===!0||f,m=Kh(t.labels),h=qh(d,p?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m,n.horizontalAxis?.showAxis),g=n.valueLabelPosition??ei.Auto,_=n.swapLabelValue===!0,v=_h(n.horizontalAxis?.numberFormat??``),y=e=>v?v(e):String(e);if(n.valueLabels&&g!==ei.Inside){if(_){let e=_b(t.labels.reduce((e,t)=>e.length>t.length?e:t,``))+8;h.right=Math.max(h.right??15,e)}else{let e=t.values.filter(e=>Number.isFinite(e)),n=Math.max(...e),r=Math.min(...e),i=n>0?_b(y(n))+8:0,a=r<0?_b(y(r))+8:0;h.right=Math.max(h.right??15,i),a>0&&(h.left=(h.left??50)+a)}}let{chartArea:b,width:x,height:S,margin:C}=Zh(u,h),w={left:C.left,top:C.top,width:x,height:S},T=Nh(o,C),E=Fb(t,n),D=E.map(e=>({label:e,value:t.values[t.labels.indexOf(e)]})).filter(e=>Number.isFinite(e.value)),O=n.waterfall===!0,k=[];if(O){let e=0;for(let t of D){let n=e;e+=t.value,k.push({label:t.label,value:t.value,x0:n,x1:e,isTotal:!1})}n.waterfallTotal&&k.push({label:`Total`,value:e,x0:0,x1:e,isTotal:!0})}let ee=n.horizontalAxis?.scaleType===`log`,[A,j]=wi(O?k.flatMap(e=>[e.x0,e.x1]):D.map(e=>e.value),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),M=ee?Ed().domain([A,j]).nice().range([0,x]):Sd().domain([A,j]).nice().range([0,x]),N=O?k.map(e=>e.label):E,P=od().domain(N).range([0,S]).padding(Ci(n.barGap)),F=p?bb(P.bandwidth()):0,I=_&&n.valueLabels&&!O?(()=>{let e=new Map(D.map(e=>[e.label,e.value]));return{...n.verticalAxis,topPadding:C.top,tickFormat:t=>String(e.get(t)??t)}})():{...n.verticalAxis,topPadding:C.top},L=p?{...I,labelPosition:zr.Off,...f?{showAxis:!1}:{}}:I;l.attach(b,T),l.update({horizontal:{scale:M,height:S,options:{...n.horizontalAxis,width:x}},vertical:{scale:P,height:S,options:L},order:`horizontal-first`}),!ee&&A<0&&j>0&&$(b).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,M(0)).attr(`x2`,M(0)).attr(`y1`,0).attr(`y2`,S).attr(`stroke`,`#666`).attr(`stroke-width`,1);let R=xy(n.colorizes),z=rb(n.highlights,N),B=b.ownerSVGElement,V=Dy(B,e,`bars`,{x:0,y:0,width:x,height:S}),H=$(B).select(`defs`),te=V.replace(/^bc-clip-/,``),ne=$(b).append(`g`).attr(`clip-path`,`url(#${V})`);if(n.barBackground){let e=(n.colors??Ab)[0],t=O?N:D.map(e=>e.label);ne.selectAll(`.bc-bar-bg`).data(t,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,0).attr(`y`,e=>(P(e)??0)+F).attr(`width`,x).attr(`height`,P.bandwidth()-F).attr(`fill`,e).attr(`opacity`,.18)}let re=O?N:D.map(e=>e.label);if(n.barSeparators&&re.length>1){let e=P.step();for(let t=1;t<re.length;t++){let n=(P(re[t-1])??0)+P.bandwidth()+(e-P.bandwidth())/2;ne.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,0).attr(`x2`,x).attr(`y1`,n).attr(`y2`,n).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}if(!O&&n.connectedColumns&&D.length>1){let e=n.colors??Ab,t=n.connectionsOpacity??.15;for(let n=0;n<D.length-1;n++){let r=D[n],i=D[n+1];if(r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(P(r.label)??0)+P.bandwidth(),o=(P(i.label)??0)+F,s=Math.max(M(0),M(r.value)),c=Math.max(M(0),M(i.value)),l=M(0),u=R.get(r.label)??e[0],d=R.get(i.label)??e[0],f;if(u===d)f=u;else{let e=`bc-conn-grad-${te}-${n}`,t=H.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`0%`).attr(`y1`,`0%`).attr(`y2`,`100%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,u),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,d),f=`url(#${e})`}ne.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${s},${a} ${c},${o} ${l},${o} ${l},${a}`).attr(`fill`,f).attr(`opacity`,t).attr(`pointer-events`,`none`)}}if(O){let e=n.colors??Ab,t=`#333`;if(n.connectedColumns&&k.length>1){let e=n.colors??Ab,t=n.connectionsOpacity??.15;for(let n=0;n<k.length-1;n++){let r=k[n],i=k[n+1];if(i.isTotal||r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(P(r.label)??0)+P.bandwidth(),o=(P(i.label)??0)+F,s=M(r.x1),c=M(i.x1),l=M(r.x0),u=M(i.x0),d=R.get(r.label)??e[0],f=R.get(i.label)??e[0],p;if(d===f)p=d;else{let e=`bc-conn-grad-${te}-${n}`,t=H.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`0%`).attr(`y1`,`0%`).attr(`y2`,`100%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,d),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,f),p=`url(#${e})`}ne.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${s},${a} ${c},${o} ${u},${o} ${l},${a}`).attr(`fill`,p).attr(`opacity`,t).attr(`pointer-events`,`none`)}}for(let e=0;e<k.length-1;e++){let t=k[e],n=k[e+1];if(n.isTotal)break;ne.append(`line`).attr(`class`,`bc-waterfall-connector`).attr(`x1`,M(t.x1)).attr(`x2`,M(t.x1)).attr(`y1`,(P(t.label)??0)+P.bandwidth()).attr(`y2`,(P(n.label)??0)+F).attr(`stroke`,`currentColor`).attr(`stroke-dasharray`,`2,2`).attr(`opacity`,.3)}if(ne.selectAll(`.bc-bar`).data(k,e=>e.label).enter().append(`rect`).attr(`class`,`bc-bar`).attr(`x`,e=>Math.min(M(e.x0),M(e.x1))).attr(`y`,e=>(P(e.label)??0)+F).attr(`width`,e=>Math.abs(M(e.x1)-M(e.x0))).attr(`height`,P.bandwidth()-F).attr(`fill`,n=>n.isTotal?t:R.get(n.label)??e[0]).attr(`opacity`,e=>z.size>0?ib(z,e.label):null),n.valueLabels){let n=g;$(b).append(`g`).selectAll(`.bc-value-label`).data(k,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`dominant-baseline`,`central`).attr(`y`,e=>(P(e.label)??0)+F+(P.bandwidth()-F)/2).attr(`x`,e=>{let t=Math.max(M(e.x0),M(e.x1));return n===ei.Inside?t-4:t+4}).attr(`text-anchor`,n===ei.Inside?`end`:`start`).attr(`fill`,r=>n===ei.Inside?Sr(r.isTotal?t:R.get(r.label)??e[0]):`currentColor`).text(e=>_?e.label:y(e.isTotal?e.x1:e.value))}}else{let t=Py(e),i=ne.append(`g`).node();if(r)for(let e of s)i.appendChild(e);Ky(t,{role:`mark-per-category`,parent:i,selector:`.bc-bar`,data:D,key:e=>e.label,insert:e=>e.append(`rect`).attr(`class`,`bc-bar`),attrs:e=>({x:Math.min(M(0),M(e.value)),y:(P(e.label)??0)+F,width:Math.abs(M(e.value)-M(0)),height:P.bandwidth()-F,fill:R.get(e.label)??(n.colors??Ab)[0],opacity:ib(z,e.label)})}),eb(t,{svg:B,clipId:V,group:b,from:c,to:w,active:r&&s.length>0});let o=ky(ne);n.tooltips&&o.use(Av({numberFormat:n.horizontalAxis?.numberFormat})),n.crosshair&&o.use(Mv({width:x,height:S,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length&&o.use(by(n.annotations,{scaleX:P,scaleY:M,data:D,width:x,height:S,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:a}));let l=()=>o.draw(D);t.state===`committing`?t.register(l):l(),n.valueLabels&&Pb($(b).append(`g`),D,M,P,{position:g,colorOverrides:R,colors:n.colors??Ab,transition:r,swapLabelValue:_,categoryLabelOffset:F,percent:n.valueLabels===`percent`,total:Qi(D,e=>e.value),formatValue:y,bounds:{plotWidth:x,marginLeft:C.left,marginRight:C.right}})}if(p){let e=$(b).append(`g`).attr(`class`,`bc-category-labels`);for(let t of N){let n=P(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}wy(e,{chartType:`bar-horizontal`,margin:C,plotRect:w}),i&&(ng(ne.node()),ig(e,i))}function Nb(e,t,n,r,i,a,o){let s=(n(e.label)??0)+i+(n.bandwidth()-i)/2,c=e=>Math.max(0,Math.min(a.plotWidth,e)),l=t(e.value),u=l<0||l>a.plotWidth,d=e.value<0,f=d?Math.min(c(t(0)),c(l)):Math.max(c(t(0)),c(l)),p=d?f-jb-o>=jb-a.marginLeft:f+jb+o<=a.plotWidth+a.marginRight-jb,m=d?a.plotWidth-f:f,h=(r===ei.Inside||u||!p)&&m>=o+jb;return h?d?{tx:f+jb,ty:s,anchor:`start`,isInside:h}:{tx:f-jb,ty:s,anchor:`end`,isInside:h}:d?{tx:f-jb,ty:s,anchor:`end`,isInside:h}:{tx:f+jb,ty:s,anchor:`start`,isInside:h}}function Pb(e,t,n,r,i){let a=i.position??ei.Auto,o=i.categoryLabelOffset??0,s=e=>i.swapLabelValue?e.label:i.percent&&i.total!==void 0?vh(e.value,i.total):i.formatValue(e.value),c=e.select(`.bc-value-label-group`);c.empty()&&(c=e.append(`g`).attr(`class`,`bc-value-label-group`));let l=e.node().ownerSVGElement?.parentElement,u=Py(l),d=t.filter(e=>fb({text:s(e),placement:a===ei.Inside?`inside`:`outside`,orientation:`horizontal`,barWidth:Math.abs(n(e.value)-n(0)),barHeight:r.bandwidth()}));Ky(u,{role:`value-label`,parent:c.node(),selector:`.bc-value-label`,data:d,key:e=>e.label,insert:e=>e.append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`dominant-baseline`,`central`),attrs:e=>{let t=Nb(e,n,r,a,o,i.bounds,_b(s(e)));return{x:t.tx,y:t.ty,"text-anchor":t.anchor,fill:t.isInside?Sr(i.colorOverrides.get(e.label)??i.colors[0]):`currentColor`}}}),c.selectAll(`.bc-value-label`).data(d,e=>e.label).text(s)}function Fb(e,t){let n=e.labels.map((t,n)=>({label:t,value:e.values[n]}));return t.sort===Xr.Ascending?n.sort((e,t)=>e.value-t.value):t.sort===Xr.Descending&&n.sort((e,t)=>t.value-e.value),n.map(e=>e.label)}var Ib=12,Lb=16,Rb=12,zb=8;function Bb(e){return e>0?e-Lb-Rb:1/0}function Vb(e,t=``,n=0){let r=t?` ${t}`:``,i=Mh(e,Bb(n)-Ah(r,Ib),Ib);return{label:i,suffix:r,width:Lb+Ah(i+r,Ib)+Rb}}function Hb(e){return jh(e,Ib)+Lb+zb}function Ub(e,t,n){if(e.length===0)return{width:0,height:0};if(t===`left`||t===`right`)return{width:Hb(e),height:e.length*20};let r=e.map(e=>Vb(e,``,n).width);if(!n||n<=0)return{width:r.reduce((e,t)=>e+t,0),height:20};let i=1,a=0,o=0;for(let e of r)a>0&&a+e>n?(o=Math.max(o,a),i++,a=e):a+=e;return o=Math.max(o,a),{width:o,height:i*20}}function Wb(e){return e.length===0?0:jh(e,Ib)+10}var Gb=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],Kb=200,qb=.2,Jb=class extends ch{initialize(){this.configDefine(`colors`,{defaultValue:Gb}),this.configDefine(`yOffset`,{defaultValue:-10}),this.configDefine(`layout`,{defaultValue:`horizontal`}),this.configDefine(`valueSuffixes`,{defaultValue:[]}),this.configDefine(`maxWidth`,{defaultValue:0});let e=this.base.append(`g`).attr(`class`,`bc-legend`),t=e=>{let t=this.config(`colors`),n=this.config(`layout`),r=this.config(`valueSuffixes`),i=this.base.node()?.ownerSVGElement?.parentElement??document.documentElement,a=getComputedStyle(i).getPropertyValue(`--bc-text-color`).trim()||`#555`,o=this.config(`maxWidth`),s=0,c=0;e.each(function(e,i){let l=$(this),u=r[i],d=Vb(e,u,n===`horizontal`?o:0),f=d.width;n===`horizontal`&&o>0&&s>0&&s+f>o&&(s=0,c+=20),l.attr(`transform`,`translate(${s},${c})`).attr(`data-series`,e).style(`cursor`,`default`);let p=l.select(`rect`);p.empty()&&(p=l.append(`rect`).attr(`width`,12).attr(`height`,12)),p.attr(`fill`,t[i%t.length]);let m=l.select(`text`);m.empty()&&(m=l.append(`text`).attr(`x`,16).attr(`y`,10).attr(`font-size`,`12px`)),m.attr(`fill`,a),m.selectAll(`tspan`).remove(),u?(m.text(null),m.append(`tspan`).attr(`font-weight`,`bold`).text(d.label),m.append(`tspan`).text(d.suffix)):m.text(d.label),n===`vertical`?c+=20:s+=f})};this.layer(`items`,e,{dataBind:(e,t)=>e.selectAll(`.bc-legend-item`).data(t,e=>e),insert:e=>e.append(`g`).attr(`class`,`bc-legend-item`),events:{enter:t,update:t}})}preDraw(){let e=this.config(`yOffset`);this.base.select(`.bc-legend`).attr(`transform`,`translate(0,${e})`)}};function Yb(e){let t=$(e).selectAll(`.bc-legend-item`);if(t.empty())return;let n=null,r=null;function i(n){r=n,t.each(function(){let e=$(this),t=e.attr(`data-series`)===n;e.transition().duration(150).style(`opacity`,t?1:qb)}),$(e).selectAll(`[data-series]`).filter(function(){return!this.closest(`.bc-legend`)}).each(function(){let e=$(this),t=e.attr(`data-series`)===n,r=this.classList.contains(`bc-direct-label`)||this.classList.contains(`bc-value-label`);e.transition().duration(150).style(`opacity`,t?1:r?0:qb)})}function a(){r=null,t.transition().duration(150).style(`opacity`,1),$(e).selectAll(`[data-series]`).filter(function(){return!this.closest(`.bc-legend`)}).transition().duration(150).style(`opacity`,null)}t.on(`mouseenter.bcHighlight`,null).on(`mouseleave.bcHighlight`,null).on(`mouseenter.bcHighlight`,function(){let e=$(this).attr(`data-series`)??``;n&&clearTimeout(n),n=setTimeout(()=>i(e),Qh(Kb))}).on(`mouseleave.bcHighlight`,()=>{n&&=(clearTimeout(n),null),r!==null&&a()})}function Xb(e,t,n=Gb,r=-10,i=`top`,a=`start`,o=0,s=0,c=0,l=[],u={}){let d=i===`left`||i===`right`?`vertical`:`horizontal`,f=new Jb($(e));f.config({colors:n,yOffset:r,layout:d,valueSuffixes:l,maxWidth:o}),f.draw(t);let p=e.querySelector(`.bc-legend`);if(p){let e,n;if(d===`horizontal`){let r=t.map((e,t)=>Vb(e,l[t],o).width),i=1,a=0,s=0;for(let e of r)o>0&&a>0&&a+e>o?(s=Math.max(s,a),i++,a=e):a+=e;s=Math.max(s,a),e=s,n=i*20}else e=Hb(t.map((e,t)=>l[t]?`${e} ${l[t]}`:e)),n=t.length*20;let i=u.left??0,f=u.right??0,m=c,h=r;d===`horizontal`?m+=a===`middle`?-i+(o+i+f-e)/2:a===`end`?o+f-e:-i:a===`middle`?h+=(s-n)/2:a===`end`&&(h+=s-n),p.setAttribute(`transform`,`translate(${m},${h})`)}return Yb(e),p}function Zb(e){return e.series?e.series:e.values.length>0?[{name:``,values:e.values}]:[]}function Qb(e,t){if(t<=e.length)return e;let n=e.filter(e=>br.valid(e));return n.length<2?e:br.scale(n).mode(`lch`).colors(t)}function $b(e,t){return t?.find(t=>t.name===e)}function ex(e,t,n,r){return $b(e,r)?.color??n[t%n.length]}function tx(e,t){return $b(e,t)?.dash??`solid`}function nx(e,t){return $b(e,t)?.lineWidth??2}function rx(e,t,n){let r=$b(e,n);return!r?.interpolation||r.interpolation===`global`?t:r.interpolation}function ix(e,t){return $b(e,t)?.hidden??!1}function ax(e,t,n){let r=$b(e,n);return!r?.labelMode||r.labelMode===`global`?t:r.labelMode}function ox(e,t,n){let r=$b(e,n);return r?.valueLabels===void 0?t:r.valueLabels}function sx(e,t){return $b(e,t)?.opacity??1}function cx(e,t,n){let r=$b(e,n);if(r?.lineSymbols!==!1&&(r?.lineSymbols===!0||t))return{name:e,symbolShape:r?.symbolShape??t?.symbolShape,symbolShowOn:r?.symbolShowOn??t?.symbolShowOn,symbolStyle:r?.symbolStyle??t?.symbolStyle,symbolSize:r?.symbolSize??t?.symbolSize,symbolOpacity:r?.symbolOpacity??t?.symbolOpacity,lineSymbols:!0}}var lx=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],ux=4,dx=16,fx=8;function px(e,t,n={},r=!1){eg(r);let i=null,a,o,s=[],c,l=Wg.for(e);if(r){let t=Cy(e);o=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-multi`?s=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-multi`)):t&&(i=rg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))a.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=t.series??[],f=d.filter(e=>!ix(e.name,n.seriesOverrides)),p=f.map(e=>e.name),m=Qb(n.colors??lx,d.length),h=n.seriesOverrides,g=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,_=g?`direct`:n.legend===!1?`none`:`legend`,v=n.valueLabels??!1,y=n.valueLabelPosition??ei.Auto,b=typeof n.directLabelling==`string`?n.directLabelling:n.directLabelling?ii.Auto:ii.Off,x=n.legend!==!1&&!g,S=Yh(u).width,C=n.legendPosition??`top`,w=S>0&&S<350&&(C===`left`||C===`right`)?`top`:C,T=n.legendAnchor??`start`,E=f.flatMap(e=>e.values),D=Gh(E,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),O=qh(S,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,D),k=Math.max(0,S-(O.left??50)-(O.right??20)),ee=Dg(t.labels,k,n.horizontalAxis);ee!==void 0&&(O.bottom=ee);let A=O.top!=null,j=Math.max(0,S-(O.left??50)-(O.right??20)),M=x?Ub(p,w,j):{width:0,height:0},N=x?M.height+15:0,P={...O};x&&w===`top`&&(P.top=N+(A?15:0)),x&&w===`bottom`&&(P.bottom=(P.bottom??24)+N),x&&w===`left`&&(P.left=(P.left??50)+M.width+10),x&&w===`right`&&(P.right=(P.right??20)+M.width+10);let F=g||!!h?.some(e=>e.labelMode===`direct`),I=v!==!1||!!h?.some(e=>e.valueLabels),L=F&&b!==ii.Inside,R=I&&y!==ei.Inside,z=L&&R?dx:ux;(L||R)&&(P.top=(P.top??0)+z+fx);let{chartArea:B,width:V,height:H,margin:te}=Zh(u,P),ne=Nh(o,te),[re,ie]=wi(E,n.verticalAxis?.range,n.verticalAxis?.scaleType);if(n.valueLabels&&re<0&&n.verticalAxis?.range?.min==null){let e=ie-re;re-=e*.1}let ae=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),ae=e.map(e=>e.label)}let oe=od().domain(ae).range([0,V]).padding(Ci(n.barGap)),se=od().domain(p).range([0,oe.bandwidth()]).padding(.05),ce=n.verticalAxis?.scaleType===`log`,le=ce?Ed().domain([re,ie]).nice().range([H,0]):Sd().domain([re,ie]).nice().range([H,0]);l.attach(B,ne),l.update({vertical:{scale:le,height:H,options:{...n.verticalAxis,gridWidth:V,topPadding:te.top}},horizontal:{scale:oe,height:H,options:{...n.horizontalAxis,width:V}}}),!ce&&re<0&&ie>0&&$(B).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,0).attr(`x2`,V).attr(`y1`,le(0)).attr(`y2`,le(0)).attr(`stroke`,`#666`).attr(`stroke-width`,1);let ue=new Map;n.sortMode===`within-groups`&&t.labels.forEach((e,t)=>{let n=f.map(e=>({name:e.name,value:e.values[t]}));n.sort((e,t)=>t.value-e.value),n.forEach((t,n)=>{ue.set(`${e}\0${t.name}`,p[n])})});let de=[];t.labels.forEach((e,t)=>{f.forEach(r=>{let i=d.findIndex(e=>e.name===r.name),a=n.sortMode===`within-groups`?ue.get(`${e}\0${r.name}`)??r.name:r.name;de.push({label:e,series:a,seriesName:r.name,value:r.values[t],seriesIndex:i})})});let U=B.ownerSVGElement,W=Dy(U,e,`bars`,{x:0,y:0,width:V,height:H}),fe=$(B).append(`g`).attr(`clip-path`,`url(#${W})`),pe=Py(e),me=rb(n.highlights,de.map(e=>e.seriesName)),he=xy(n.colorizes),ge=fe.append(`g`).node();if(r)for(let e of s)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ge.appendChild(e);Ky(pe,{role:`mark-per-cell`,parent:ge,selector:`.bc-bar-multi`,data:de,key:e=>`${e.label}\0${e.seriesName}`,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-multi`),attrs:e=>{let t=ex(e.seriesName,e.seriesIndex,m,h),n=sx(e.seriesName,h),r={"data-series":e.seriesName,x:(oe(e.label)??0)+(se(e.series)??0),y:Math.min(le(0),le(e.value)),width:se.bandwidth(),height:Math.abs(le(e.value)-le(0)),fill:he.get(e.seriesName)??t};return n<1&&(r[`fill-opacity`]=n),me.size>0?{...r,opacity:ib(me,e.seriesName)}:r}});let _e={left:te.left,top:te.top,width:V,height:H};eb(pe,{svg:U,clipId:W,group:B,from:c,to:_e,active:r&&s.length>0});let ve=ky(fe);if(n.tooltips&&ve.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&ve.use(Mv({width:V,height:H,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:Math.max(...f.map(e=>e.values[t]??0))}));ve.use(by(n.annotations,{scaleX:oe,scaleY:le,data:i,width:V,height:H,backgroundColor:wr(e),transition:r,priorAnnotations:a}))}let ye=()=>ve.draw(de);pe.state===`committing`?pe.register(ye):ye(),wy(e,{chartType:`bar-multi`,margin:te,plotRect:_e}),i&&(ng(fe.node()),ig(e,i));let be=new Set;f.forEach(e=>{ax(e.name,_,h)===`direct`&&be.add(e.name)});let xe=be.size>0,Se=wr(e),G=n.directLabelAnchor??`middle`;function K(){return y===ei.Inside?ei.Inside:(ei.Outside,ei.Outside)}function Ce(e){return b===ii.Inside?ei.Inside:b===ii.Outside?ei.Outside:v?K():ei.Outside}function we(e,t,n){return n===`start`?e+12:n===`end`?e+t-4:e+t/2}let Te=$(B).append(`g`).attr(`class`,`bc-value-labels`);de.forEach(e=>{if(!ox(e.seriesName,v,h))return;let t=(oe(e.label)??0)+(se(e.series)??0)+se.bandwidth()/2,n=Math.min(le(0),le(e.value)),r=Math.abs(le(e.value)-le(0)),i=K(),a=xe&&be.has(e.seriesName),o=e.value<0,s=n+r,c,l,u;i===ei.Inside?(l=Sr(ex(e.seriesName,e.seriesIndex,m,h)),u=`central`,c=a&&Ce(r)===ei.Inside?we(n,r,G)+14:n+r/2):(l=`currentColor`,o?(c=a&&Ce(r)===ei.Outside?s+dx:s+ux,u=`hanging`):(c=a&&Ce(r)===ei.Outside?n-dx:n-ux,u=`auto`)),fb({text:String(e.value),placement:i===ei.Inside?`inside`:`outside`,orientation:`vertical`,barWidth:se.bandwidth(),barHeight:r})&&Te.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`y`,c).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,u).attr(`font-size`,`11px`).attr(`fill`,l).text(String(e.value))}),de.forEach(e=>{if(!be.has(e.seriesName))return;let t=(oe(e.label)??0)+(se(e.series)??0)+se.bandwidth()/2,n=Math.min(le(0),le(e.value)),r=Math.abs(le(e.value)-le(0)),i=h?.find(t=>t.name===e.seriesName)?.labelText||e.seriesName,a=Ce(r),o=ex(e.seriesName,e.seriesIndex,m,h),s=$(B).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`text-anchor`,`middle`).attr(`font-size`,`10px`).text(i);if(a===ei.Inside){let e=we(n,r,G);s.attr(`y`,e).attr(`fill`,Sr(o)),G===`middle`&&s.attr(`dominant-baseline`,`central`)}else s.attr(`y`,n-ux).attr(`fill`,Tr(o,Se))});let Ee=p.filter(e=>ax(e,_,h)===`legend`);if(x&&Ee.length>0){let e=Ee.map(e=>ex(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(w===`top`){let e=A?15:0;n=-(M.height+10+e)}else w===`bottom`?n=H+25:w===`left`?t=-(M.width+10):w===`right`&&(t=V+10);Xb(B,Ee,e,n,w,T,V,H,t,[],{left:te.left,right:te.right})}}var mx={linear:Jp,monotoneX:Mm,step:Pm,stepBefore:Fm,stepAfter:Im,basis:bm,cardinal:Cm,catmullRom:Em};function hx(e){return e&&mx[e]||Jp}var gx=`bc-tooltip`,_x=new WeakMap;function vx(e){let t=_x.get(e);t&&(_x.delete(e),t())}function yx(){if(document.getElementById(`bc-tooltip-styles`))return;let e=document.createElement(`style`);e.id=`bc-tooltip-styles`,e.textContent=`
|
|
329
|
-
.${
|
|
326
|
+
`,document.head.appendChild(e)}function Pv(e){let t=e?Sh(e):null,n=e=>typeof e==`number`&&t?t(e):String(e);return e=>{if(e&&typeof e==`object`){if(`data`in e&&typeof e.data==`number`)return n(e.data);let t=e,r=typeof t.series==`string`?t.series:typeof t.seriesName==`string`?t.seriesName:null;if(r!==null&&`label`in t&&`value`in t)return`${r} – ${t.label}: ${n(t.value)}`;if(`label`in t&&`value`in t)return`${t.label}: ${n(t.value)}`;if(`series`in t&&`value`in t)return`${t.series}: ${n(t.value)}`;if(`value`in t)return n(t.value)}return String(e)}}function Fv(e){let t=e?.format??Pv(e?.numberFormat),n=null,r=[];return{name:`tooltip`,install(){Nv(),n=document.createElement(`div`),n.className=Mv,document.body.appendChild(n)},postDraw(e){e.base.selectAll(`.bc-bar, .bc-dot, .bc-arc`).each(function(){let e=this,i=()=>{if(!n)return;let r=$(e).datum();n.textContent=t(r),n.style.display=`block`,jv(e,n,{placement:`top`,middleware:[Ov(8),Av(),kv()]}).then(({x:e,y:t})=>{n&&(n.style.left=`${e}px`,n.style.top=`${t}px`)})},a=()=>{n&&(n.style.display=`none`)};e.addEventListener(`mouseenter`,i),e.addEventListener(`mouseleave`,a),r.push(()=>{e.removeEventListener(`mouseenter`,i),e.removeEventListener(`mouseleave`,a)})})},destroy(){for(let e of r)e();r.length=0,n&&=(n.remove(),null)}}}function Iv(e){switch(e){case ni.Solid:return`none`;case ni.Dotted:return`2,2`;case ni.Dashed:default:return`4,3`}}function Lv(e){let t=e?.color??`#999`,n=e?.dashArray??Iv(e?.style),r=e?.direction??ti.Both,i=e?.orientation??Kr.Vertical,a=[];return{name:`crosshair`,install(){},postDraw(o){let s=o.base,c=e?.width??0,l=e?.height??0,u=r===ti.Both||r===ti.Vertical,d=r===ti.Both||r===ti.Horizontal,f=u?s.append(`line`).attr(`class`,`bc-crosshair bc-crosshair-v`).attr(`y1`,0).attr(`y2`,l).style(`stroke`,t).attr(`stroke-width`,1).style(`stroke-dasharray`,n).attr(`pointer-events`,`none`).style(`display`,`none`):null,p=d?s.append(`line`).attr(`class`,`bc-crosshair bc-crosshair-h`).attr(`x1`,0).attr(`x2`,c).style(`stroke`,t).attr(`stroke-width`,1).style(`stroke-dasharray`,n).attr(`pointer-events`,`none`).style(`display`,`none`):null;s.selectAll(`.bc-dot, .bc-bar`).each(function(){let e=this,t=()=>{let t=$(e),n,r;if(e.tagName===`circle`)n=parseFloat(t.attr(`cx`)),r=parseFloat(t.attr(`cy`));else{let e=parseFloat(t.attr(`x`)),a=parseFloat(t.attr(`width`)),o=parseFloat(t.attr(`y`)),s=parseFloat(t.attr(`height`));i===Kr.Horizontal?(n=e+a,r=o+s/2):(n=e+a/2,r=o)}f&&f.attr(`x1`,n).attr(`x2`,n).style(`display`,null),p&&p.attr(`y1`,r).attr(`y2`,r).style(`display`,null)},n=()=>{f&&f.style(`display`,`none`),p&&p.style(`display`,`none`)};e.addEventListener(`mouseenter`,t),e.addEventListener(`mouseleave`,n),a.push(()=>{e.removeEventListener(`mouseenter`,t),e.removeEventListener(`mouseleave`,n)})})},destroy(){for(let e of a)e();a.length=0}}}function Rv(e){let t=e.querySelector(`.bc-annotation-line`);if(!(!t||!t.hasAttribute(`data-line-style`)))return{style:t.getAttribute(`data-line-style`),fromX:parseFloat(t.getAttribute(`data-line-from-x`)||`0`),fromY:parseFloat(t.getAttribute(`data-line-from-y`)||`0`),toX:parseFloat(t.getAttribute(`data-line-to-x`)||`0`),toY:parseFloat(t.getAttribute(`data-line-to-y`)||`0`),departVertical:t.getAttribute(`data-line-depart-vertical`)===`true`}}function zv(e){let t=new Map,n=e.querySelectorAll(`g[data-annotation-id]`);for(let e of n){let n=e.getAttribute(`data-annotation-id`),r=Rv(e);try{let i=e.getBBox();t.set(n,{id:n,element:e,rect:{x:i.x,y:i.y,width:i.width,height:i.height},line:r})}catch{t.set(n,{id:n,element:e,rect:{x:0,y:0,width:0,height:0},line:r})}}return t}var Bv={N:{dx:0,dy:-1},NE:{dx:.707,dy:-.707},E:{dx:1,dy:0},SE:{dx:.707,dy:.707},S:{dx:0,dy:1},SW:{dx:-.707,dy:.707},W:{dx:-1,dy:0},NW:{dx:-.707,dy:-.707},center:{dx:0,dy:0}},Vv={N:{nx:0,ny:-1},NE:{nx:1,ny:-1},E:{nx:1,ny:0},SE:{nx:1,ny:1},S:{nx:0,ny:1},SW:{nx:-1,ny:1},W:{nx:-1,ny:0},NW:{nx:-1,ny:-1},center:{nx:0,ny:0}};Vr.N,Vr.W,Vr.NE,Vr.NW,Vr.E,Vr.N,Vr.SE,Vr.NE,Vr.S,Vr.E,Vr.SW,Vr.SE,Vr.W,Vr.S,Vr.NW,Vr.SW,Vr.Center,Vr.Center;function Hv(e,t){let n=Bv[e]??Bv.NW;return{dx:n.dx*t,dy:n.dy*t}}function Uv(e){return`step`in e&&!(`bandwidth`in e)}function Wv(e){if(`bandwidth`in e||Uv(e))return!1;let t=e.domain();return t.length>0&&t[0]instanceof Date}function Gv(e,t){if(`bandwidth`in e){let n=e;return(n(t)??0)+n.bandwidth()/2}return Uv(e)?e(t)??0:Wv(e)?e(new Date(t)):e(Number(t))}function Kv(e,t){let n=(t.left+t.right)/2,r=(t.top+t.bottom)/2,i=Vv[e]??Vv.N;return{x:n+i.nx*(t.right-t.left)/2,y:r+i.ny*(t.bottom-t.top)/2}}function qv(e,t,n,r,i){if(`bandwidth`in t){let a=t,o=a(e.label)??0,s=a.bandwidth(),c=n(e.value),l=n(0);return i===`horizontal`?Kv(r,{left:l,right:c,top:o,bottom:o+s}):Kv(r,{left:o,right:o+s,top:c,bottom:l})}let a=Gv(t,e.label),o=n(e.value),s=Bv[r]??Bv.N;return{x:a+s.dx*2,y:o+s.dy*2}}function Jv(e,t,n,r=4){let i=e.x+e.width/2,a=e.y+e.height/2;if(t===i&&n===a)return{x:i,y:a};let o=t>=e.x&&t<=e.x+e.width,s=n>=e.y&&n<=e.y+e.height,c=[];if(o&&(n<a?c.push({x:i,y:e.y-r,dist:Math.abs(a-n)}):c.push({x:i,y:e.y+e.height+r,dist:Math.abs(n-a)})),s&&(t>i?c.push({x:e.x+e.width+r,y:a,dist:Math.abs(t-i)}):c.push({x:e.x-r,y:a,dist:Math.abs(i-t)})),c.length>0){c.sort((e,t)=>e.dist-t.dist);let{x:e,y:t}=c[0];return{x:e,y:t}}let l=[{x:i,y:e.y-r},{x:i,y:e.y+e.height+r},{x:e.x+e.width+r,y:a},{x:e.x-r,y:a}],u=l[0],d=(u.x-t)**2+(u.y-n)**2;for(let e=1;e<l.length;e++){let r=(l[e].x-t)**2+(l[e].y-n)**2;r<d&&(u=l[e],d=r)}return u}function Yv(e,t){if(!e)return`bc-arrow`;let n=t??`#666`,r=`bc-arrow-${n.replace(/[^a-zA-Z0-9]/g,``)}`;return e.querySelector(`#${r}`)||($(e).select(`defs`).empty()?$(e).append(`defs`):$(e).select(`defs`)).append(`marker`).attr(`id`,r).attr(`viewBox`,`0 0 10 10`).attr(`refX`,9).attr(`refY`,5).attr(`markerWidth`,8).attr(`markerHeight`,8).attr(`markerUnits`,`userSpaceOnUse`).attr(`orient`,`auto`).append(`path`).attr(`d`,`M 1 1 L 9 5 L 1 9`).attr(`fill`,`none`).attr(`stroke`,n).attr(`stroke-width`,1.5).attr(`stroke-linecap`,`round`).attr(`stroke-linejoin`,`round`),r}function Xv(e){switch(e){case Ur.Dotted:return`2,3`;case Ur.Dashed:return`5,4`;default:return``}}var Zv=4,Qv=12;function $v(e){return e!==void 0&&e>0?e:Zv}function ey(e,t,n,r={}){let i=e.append(`circle`).attr(`class`,`bc-annotation-circle`).attr(`cx`,t).attr(`cy`,n).attr(`r`,$v(r.size)).attr(`fill`,`none`).attr(`stroke`,r.color??`#666`).attr(`stroke-width`,1.5),a=Xv(r.style??Ur.Solid);a&&i.attr(`stroke-dasharray`,a)}var ty=1/Math.tan(40*Math.PI/180);function ny(e,t,n){if(n){let n=t.y>=e.y?1:-1,r=Math.max(Math.abs(t.y-e.y)-Math.abs(t.x-e.x)*ty,12);return{x:e.x,y:e.y+n*r}}let r=t.x>=e.x?1:-1,i=Math.max(Math.abs(t.x-e.x)-Math.abs(t.y-e.y)*ty,12);return{x:e.x+r*i,y:e.y}}function ry(e,t,n){let r=ny(e,t,n);return`M ${e.x} ${e.y} L ${r.x} ${r.y} L ${t.x} ${t.y}`}function iy(e,t,n,r=Hr.Direct,i={}){let a;switch(r){case Hr.CurveLeft:case Hr.CurveRight:{let e=n.x-t.x,i=n.y-t.y,o=Math.sqrt(e*e+i*i)*.8,s=+(r===Hr.CurveRight);a=`M ${t.x} ${t.y} A ${o} ${o} 0 0 ${s} ${n.x} ${n.y}`;break}case Hr.Elbow:a=ry(t,n,i.departVertical??!1);break;default:a=`M ${t.x} ${t.y} L ${n.x} ${n.y}`}let o=i.color??`#666`,s=e.append(`path`).attr(`class`,`bc-annotation-line`).attr(`d`,a).attr(`fill`,`none`).attr(`stroke`,o).attr(`stroke-width`,i.lineWeight??1).attr(`pathLength`,`1`).attr(`data-line-style`,r).attr(`data-line-from-x`,String(t.x)).attr(`data-line-from-y`,String(t.y)).attr(`data-line-to-x`,String(n.x)).attr(`data-line-to-y`,String(n.y)).attr(`data-line-depart-vertical`,String(i.departVertical??!1));if(i.showArrow===!0){let t=Yv(e.node()?.ownerSVGElement??null,o);s.attr(`marker-end`,`url(#${t})`)}}function ay(e,t,n,r,i={}){let a=i.textAnchor??`middle`,o=i.textOutline!==!1,s=e.append(`text`).attr(`class`,`bc-annotation-text`).attr(`x`,n).attr(`y`,r).attr(`text-anchor`,a).attr(`font-size`,`${Qv}px`).attr(`fill`,i.textColor??`currentColor`);o&&s.attr(`stroke`,i.backgroundColor??`#fff`).attr(`stroke-width`,3).attr(`paint-order`,`stroke`);let c=t.split(`
|
|
327
|
+
`);if(c.length>1||i.maxWidth&&i.maxWidth>0){if(i.maxWidth&&i.maxWidth>0)oy(s,t,i.maxWidth);else for(let e=0;e<c.length;e++)s.append(`tspan`).attr(`x`,s.attr(`x`)).attr(`dy`,e===0?`0`:`1.2em`).text(c[e])}else s.text(t)}function oy(e,t,n){let r=0,i=t=>{e.append(`tspan`).attr(`x`,e.attr(`x`)).attr(`dy`,r===0?`0`:`1.2em`).text(t),r++};for(let e of t.split(`
|
|
328
|
+
`)){let t=``;for(let r of e.split(/\s+/).filter(Boolean)){let e=t?`${t} ${r}`:r;t&&Fh(e,Qv)>n?(i(t),t=r):t=e;let a=Lh(t,n,Qv,``);for(;a!==t;)i(a),t=t.slice(a.length),a=Lh(t,n,Qv,``)}i(t)}}function sy(e,t){let n=Number(e);return Number.isFinite(n)?t.copy().clamp(!0)(n):null}function cy(e,t,n=Gr.Center){if(`bandwidth`in t){let r=t,i=r(String(e));if(i===void 0)return null;let a=r.bandwidth(),o=r.step()-a;return n===`start`?i-o/2:n===`end`?i+a+o/2:i+a/2}if(Uv(t)){let r=t(String(e));if(r===void 0)return null;let i=t.step()/2;return n===`start`?r-i:n===`end`?r+i:r}if(Wv(t)){let n=new Date(String(e));return Number.isNaN(n.getTime())?null:t.copy().clamp(!0)(n)}return sy(e,t)}function ly(e,t){return sy(e,t)}function uy(e,t){if(typeof e==`number`)return e/100*t;let n=String(e);return n.endsWith(`%`)?parseFloat(n)/100*t:parseFloat(n)||0}function dy(e,t){if(e==null)return;if(typeof e==`number`)return e||void 0;let n=String(e);return n.endsWith(`%`)?parseFloat(n)/100*t:parseFloat(n)||void 0}function fy(e){return e<-4?`end`:e>4?`start`:`middle`}function py(e,t,n){if(`bandwidth`in t){let r=t;return{x:(r(e.label)??0)+r.bandwidth()/2,y:n(e.value)}}return{x:Gv(t,e.label),y:n(e.value)}}function my(e,t,n,r){let i=`target`in t?t.target:void 0;if(!i)return;let a=n.data.find(e=>e.label===i);if(!a)return;let o=e.append(`g`).attr(`data-annotation-index`,String(r)),s=t.key;s&&o.attr(`data-annotation-id`,s);let c=t,l=c.anchorDirection??Vr.N,u=qv(a,n.scaleX,n.scaleY,l,n.orientation),d,f,p=t;if(p.dx!=null||p.dy!=null){let{x:e,y:t}=py(a,n.scaleX,n.scaleY);d=e+(Number(p.dx)||40),f=t+(Number(p.dy)||-40)}else if(p.direction!=null&&p.textOffsetX==null){let{x:e,y:t}=py(a,n.scaleX,n.scaleY),r=p.direction,i=Hv(r,p.anchorDistance??60);d=e+i.dx,f=t+i.dy}else d=u.x+(c.textOffsetX??-42),f=u.y+(c.textOffsetY??-42);let m=t.circleColor??`#666`,h=t;h.showCircle&&ey(o,u.x,u.y,{size:h.circleSize,style:h.circleStyle,color:m});let g=Math.max(4,Math.min(d,n.width-4)),_=Math.max(4,Math.min(f,n.height-4));if(t.text){let e=fy(d-u.x);ay(o,t.text,g,_-4,{textColor:t.textColor,maxWidth:dy(t.maxWidth,n.width)??n.width*.4,textAnchor:e,backgroundColor:n.backgroundColor,textOutline:t.textOutline})}if(p.dx!=null||p.dy!=null?c.showLine!==!1:c.showLine===!0||c.showArrow===!0){let e={x:g,y:_},t=!1,n=o.select(`.bc-annotation-text`).node();if(n)try{let r=n.getBBox();if(r.width>0&&r.height>0){e=Jv(r,u.x,u.y);let n=r.x+r.width/2;t=Math.abs(e.x-n)<1}}catch{}let r=c.showCircle?$v(c.circleSize)+(c.lineTargetDistance??5):c.lineTargetDistance??0,i=u.x,a=u.y;if(r>0){let t=u.x-e.x,n=u.y-e.y,o=Math.sqrt(t*t+n*n);if(o>0){let e=u.x-t/o*r,s=u.y-n/o*r,c=Bv[l]??Bv.N;i=Math.abs(c.dx)>.01?e:u.x,a=Math.abs(c.dy)>.01?s:u.y}}iy(o,e,{x:i,y:a},c.lineStyle??Hr.Direct,{showArrow:c.showArrow,lineWeight:c.lineWeight,color:m,departVertical:t})}}function hy(e,t,n,r,i){if(t.kind!==Wr.Range)return;let a=(t.orientation??Kr.Vertical)===Kr.Vertical,o=a?cy(t.start,n.scaleX,t.startAnchor):ly(t.start,n.scaleY),s=a?cy(t.end,n.scaleX,t.endAnchor):ly(t.end,n.scaleY);if(o===null||s===null)return;let c=e.append(`g`).attr(`data-annotation-index`,String(r)),l=t.key;l&&c.attr(`data-annotation-id`,l);let u=n.orientation===Kr.Horizontal===a,d,f,p,m;if(u?(f=Math.min(o,s),m=Math.abs(s-o),d=0,p=n.width):(d=Math.min(o,s),p=Math.abs(s-o),f=0,m=n.height),c.append(`rect`).attr(`class`,`bc-annotation-range`).attr(`x`,d).attr(`y`,f).attr(`width`,p).attr(`height`,m).attr(`fill`,t.bgColor??`#ccc`).attr(`opacity`,(t.bgOpacity??20)/100),t.text){let e=a?p:m,o=dy(t.maxWidth,n.width)??Math.max(e,50),s=Bv[t.direction??`center`]??Bv.center,l=.5+s.dx*.5,u=.5+s.dy*.5,h=Math.max(4,Math.min(d+p*l,n.width-4)),g=`middle`;l<.25?g=`start`:l>.75&&(g=`end`);let _=f+4+12,v=i?i.append(`g`).attr(`data-annotation-index`,String(r)):c;if(ay(v,t.text,h,_,{textColor:t.textColor,maxWidth:o,textAnchor:g,backgroundColor:n.backgroundColor,textOutline:t.textOutline}),u>.25){let e=v.select(`.bc-annotation-text`).node();if(e)try{let t=e.getBBox(),n=0;n=u>.75?f+m-4-(t.y+t.height):f+m/2-(t.y+t.height/2),Math.abs(n)>.5&&e.setAttribute(`transform`,`translate(0, ${n})`)}catch{}}}}function gy(e,t,n,r){if(t.kind!==`free`)return;let i=e.append(`g`).attr(`data-annotation-index`,String(r)),a=t.key;a&&i.attr(`data-annotation-id`,a);let o=uy(t.x,n.width),s=uy(t.y,n.height);if(t.text){ay(i,t.text,o,s,{textColor:t.textColor,maxWidth:dy(t.maxWidth,n.width)??n.width*.4,textAnchor:`middle`,backgroundColor:n.backgroundColor,textOutline:t.textOutline});let e=i.select(`.bc-annotation-text`).node();if(e)try{let t=e.getBBox(),n=s-(t.y+t.height/2);Math.abs(n)>.5&&e.setAttribute(`transform`,`translate(0, ${n})`)}catch{}}}function _y(e,t,n,r){return`M ${e} ${t} L ${n+.45*(e-n)} ${t} L ${n} ${r}`}function vy(e,t){let n=e.hasAttribute(`marker-end`),r=Rv(e.parentElement);if(n&&r){let n=$(e),i=e.getAttribute(`d`),a=`M ${r.fromX} ${r.fromY} L ${r.fromX} ${r.fromY}`;if(n.attr(`d`,a),r.style===Hr.Elbow){let e={tipX:r.toX,tipY:r.toY,calloutX:r.fromX,calloutY:r.fromY},i={tipX:r.fromX,tipY:r.fromY,calloutX:r.fromX,calloutY:r.fromY};n.transition().duration(t).ease(_u).attrTween(`d`,()=>{let t=vc(i,e);return e=>{let n=t(e);return _y(n.calloutX,n.calloutY,n.tipX,n.tipY)}})}else if(r.style===Hr.CurveLeft||r.style===Hr.CurveRight){let e={x:r.fromX,y:r.fromY},a={x:r.toX,y:r.toY},o=a.x-e.x,s=a.y-e.y,c=Math.sqrt(o*o+s*s),l=c*.8,u=+(r.style===Hr.CurveRight),d=c/2,f=d<l?Math.sqrt(l*l-d*d):0,p=(e.x+a.x)/2,m=(e.y+a.y)/2,h=c>0?-s/c:0,g=c>0?o/c:0,_=u===1?1:-1,v=p+_*f*h,y=m+_*f*g,b=Math.atan2(e.y-y,e.x-v),x=Math.atan2(a.y-y,a.x-v)-b;u===1&&x<=0&&(x+=2*Math.PI),u===0&&x>=0&&(x-=2*Math.PI),n.transition().duration(t).ease(_u).attrTween(`d`,()=>t=>{if(t>=.98)return i;let n=b+t*x,r=v+l*Math.cos(n),a=y+l*Math.sin(n);return`M ${e.x} ${e.y} A ${l} ${l} 0 0 ${u} ${r} ${a}`})}else n.transition().duration(t).ease(_u).attrTween(`d`,()=>{let e=_c(r.fromX,r.toX),t=_c(r.fromY,r.toY);return n=>`M ${r.fromX} ${r.fromY} L ${e(n)} ${t(n)}`})}else e.setAttribute(`stroke-dasharray`,`1`),e.setAttribute(`stroke-dashoffset`,`1`),$(e).transition().duration(t).ease(_u).attr(`stroke-dashoffset`,`0`).on(`end`,()=>{e.removeAttribute(`stroke-dasharray`),e.removeAttribute(`stroke-dashoffset`)})}var yy=1;function by(e,t){return e.style!==t.style||e.departVertical!==t.departVertical?!1:Math.abs(e.fromX-t.fromX)<=yy&&Math.abs(e.fromY-t.fromY)<=yy&&Math.abs(e.toX-t.toX)<=yy&&Math.abs(e.toY-t.toY)<=yy}function xy(e,t,n){let r=Rv(e.parentElement);if(!r||by(t,r))return;let i=$(e);if(t.style===Hr.Elbow&&r.style===Hr.Elbow){let e={tipX:t.toX,tipY:t.toY,calloutX:t.fromX,calloutY:t.fromY},a={tipX:r.toX,tipY:r.toY,calloutX:r.fromX,calloutY:r.fromY};i.attr(`d`,_y(e.calloutX,e.calloutY,e.tipX,e.tipY)),i.transition().duration(n).ease(vu).attrTween(`d`,()=>{let t=vc(e,a);return e=>{let n=t(e);return _y(n.calloutX,n.calloutY,n.tipX,n.tipY)}})}else{let a={x:t.fromX,y:t.fromY},o={x:t.toX,y:t.toY},s={x:r.fromX,y:r.fromY},c={x:r.toX,y:r.toY},l=e.getAttribute(`d`),u=`M ${a.x} ${a.y} L ${o.x} ${o.y}`;i.attr(`d`,u),i.transition().duration(n).ease(vu).attrTween(`d`,()=>{let e=vc(a,s),n=vc(o,c);return i=>{if(i>=.98)return l;let a=e(i),o=n(i);if(r.style===Hr.Direct||t.style===Hr.Direct)return`M ${a.x} ${a.y} L ${o.x} ${o.y}`;let s=o.x-a.x,c=o.y-a.y,u=Math.sqrt(s*s+c*c)*.8,d=+(r.style===Hr.CurveRight);return`M ${a.x} ${a.y} A ${u} ${u} 0 0 ${d} ${o.x} ${o.y}`}})}}function Sy(e,t,n,r){if(r<=0)return;let i=[...e.querySelectorAll(`g[data-annotation-id]`),...t.querySelectorAll(`g[data-annotation-id]`)],a=new Set;for(let e of i){let t=e.getAttribute(`data-annotation-id`);a.add(t);let i=n.get(t);if(i){let t=e.querySelector(`.bc-annotation-line`);t&&i.line&&xy(t,i.line,r);try{let t=e.getBBox(),n=i.rect.x-t.x,a=i.rect.y-t.y;if(Math.abs(n)>.5||Math.abs(a)>.5){let t=e.querySelectorAll(`.bc-annotation-text, .bc-annotation-circle`);for(let e of t){let t=e;t.style.transition=`none`,t.setAttribute(`transform`,`translate(${n}, ${a})`),t.getBoundingClientRect(),t.style.transition=`transform ${r}ms ease`,t.setAttribute(`transform`,`translate(0, 0)`)}}}catch{}}else{let t=e.querySelector(`.bc-annotation-line`);t&&vy(t,r);let n=e.querySelectorAll(`.bc-annotation-text, .bc-annotation-circle`);for(let e of n){let t=e;t.style.opacity=`0`,t.getBoundingClientRect(),t.style.transition=`opacity ${r}ms ease`,t.style.opacity=`1`}}}for(let[t,i]of n)if(!a.has(t)){let t=i.element.cloneNode(!0);e.appendChild(t),t.style.opacity=`1`,t.getBoundingClientRect(),t.style.transition=`opacity ${r}ms ease`,t.style.opacity=`0`,setTimeout(()=>t.remove(),r)}}function Cy(e,t=0){if(!e)return;if(t>0){setTimeout(()=>Cy(e),t);return}let n=parseFloat(e.getAttribute(`width`)||`0`),r=parseFloat(e.getAttribute(`height`)||`0`);if(!n||!r)return;let i=e.getBBox();if(i.width===0&&i.height===0)return;let a=n*.25/2,o=r*.25/2,s=i.x,c=i.y,l=i.x+i.width,u=i.y+i.height,d=s<0?Math.max(s-8,-a):0,f=c<0?Math.max(c-8,-o):0,p=l>n?Math.min(l+8,n+a):n,m=u>r?Math.min(u+8,r+o):r;d<0||f<0||p>n||m>r?$(e).attr(`viewBox`,`${d} ${f} ${p-d} ${m-f}`).attr(`preserveAspectRatio`,`xMidYMid meet`):$(e).attr(`viewBox`,null).attr(`preserveAspectRatio`,null)}function wy(e,t,n){let r=e.ownerSVGElement??e;$(r).style(`overflow`,`visible`),Yv(r);let i=$(e),a;if(n.transition){if(n.priorAnnotations&&n.priorAnnotations.size>0)a=n.priorAnnotations;else{let t=e.querySelector(`.bc-annotations`),n=e.querySelector(`.bc-annotations-range`);if(t||n){if(a=new Map,t)for(let[e,n]of zv(t))a.set(e,n);if(n)for(let[e,t]of zv(n))a.set(e,t)}}}e.querySelectorAll(`.bc-annotations, .bc-annotations-range`).forEach(e=>e.remove());let o=i.insert(`g`,`:first-child`).attr(`class`,`bc-annotations-range`),s=i.append(`g`).attr(`class`,`bc-annotations`).attr(`data-ctx-width`,String(n.width)).attr(`data-ctx-height`,String(n.height));for(let e=0;e<t.length;e++){let r=t[e];switch(r.kind??Wr.Point){case Wr.Point:my(s,r,n,e);break;case Wr.Range:hy(o,r,n,e,s);break;case Wr.Free:gy(s,r,n,e)}}let c=0;n.transition&&(c=rg(500),Sy(s.node(),o.node(),a??new Map,c)),Cy(r,c)}function Ty(e,t){return{name:`annotations`,install(){},postDraw(n){let r=n.base,i=r.node()?.ownerSVGElement??r.node();i&&$(i).style(`overflow`,`visible`),Yv(i);let a=r.node()?.parentNode,o=a&&a!==i?$(a):r,s=o.node(),c;if(t.transition){if(t.priorAnnotations&&t.priorAnnotations.size>0)c=t.priorAnnotations;else if(s){let e=s.querySelector(`.bc-annotations`),t=s.querySelector(`.bc-annotations-range`);if(e||t){if(c=new Map,e)for(let[t,n]of zv(e))c.set(t,n);if(t)for(let[e,n]of zv(t))c.set(e,n)}}}s&&s.querySelectorAll(`.bc-annotations, .bc-annotations-range`).forEach(e=>e.remove());let l=o.insert(`g`,`:first-child`).attr(`class`,`bc-annotations-range`),u=o.append(`g`).attr(`class`,`bc-annotations`).attr(`data-ctx-width`,String(t.width)).attr(`data-ctx-height`,String(t.height));for(let n=0;n<e.length;n++){let r=e[n];switch(r.kind??Wr.Point){case Wr.Point:my(u,r,t,n);break;case Wr.Range:hy(l,r,t,n,u);break;case Wr.Free:gy(u,r,t,n)}}let d=0;t.transition&&(d=rg(500),Sy(u.node(),l.node(),c??new Map,d)),Cy(i,d)}}}function Ey(e){return new Map((e??[]).map(e=>[e.target,e.color]))}var Dy=new WeakMap;function Oy(e){return Dy.get(e)}function ky(e,t){Dy.set(e,t)}var Ay=0,jy=new WeakMap;function My(e,t,n,r){let i=jy.get(t);i||(i=new Map,jy.set(t,i));let a=i.get(n);a||(a=`bc-clip-${++Ay}`,i.set(n,a));let o=$(e).select(`defs`).empty()?$(e).append(`defs`):$(e).select(`defs`),s=o.select(`#${a}`);return s.empty()?o.append(`clipPath`).attr(`id`,a).append(`rect`).attr(`x`,r.x).attr(`y`,r.y).attr(`width`,r.width).attr(`height`,r.height):s.select(`rect`).attr(`x`,r.x).attr(`y`,r.y).attr(`width`,r.width).attr(`height`,r.height),a}var Ny=class extends ch{initialize(){}};function Py(e){return new Ny(e)}var Fy=`bc-scene`,Iy=500,Ly=new Set,Ry=new WeakMap;function zy(e){let t=Ry.get(e);return t||(t=new Vy(e),Ry.set(e,t)),t}function By(e){Ry.delete(e)}var Vy=class{container;_state=`idle`;_transition=null;_buffer=[];register(e){this._buffer.push(e)}constructor(e){this.container=e}get state(){return this._state}get activeTransition(){return this._transition}beginCommit(){(this._state===`committing`||this._state===`animating`)&&this.interrupt(),this._state=`committing`}commit(e={}){if(this._state!==`committing`){console.warn(`[blueprint-chart] commit() called from state '${this._state}' — call beginCommit() first; ignored.`);return}let t=e.mode??`transform`;if(t!==`transform`){Ly.has(t)||(Ly.add(t),console.warn(`[blueprint-chart] transition mode '${t}' is not yet implemented; falling back to snap.`));let e=this._buffer;this._buffer=[],this._state=`animating`;for(let t of e)try{t()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}this._state=`idle`;return}let n=e.duration??Iy,r=this.effectiveDuration(n),i=this._buffer;if(this._buffer=[],r<=0){this._state=`animating`;for(let e of i)try{e()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}this._state=`idle`;return}this._state=`animating`;let a=mu(Fy).duration(r).ease(vu);this._transition=a;for(let e of i)try{e()}catch(e){console.warn(`[blueprint-chart] feature flush failed:`,e)}a.on(`end`,()=>{this._transition===a&&(this._transition=null,this._state=`idle`)}),a.on(`interrupt`,()=>{this._transition===a&&(this._transition=null,this._state=`idle`)})}effectiveDuration(e){return e<=0?0:typeof window>`u`||typeof window.matchMedia!=`function`?e:window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:e}interrupt(){this._buffer=[],this._transition=null,$(this.container).interrupt(Fy),$(this.container).selectAll(`*`).interrupt(Fy),this._state=`idle`}run(e,t={}){this.beginCommit();try{e()}catch(e){console.warn(`[blueprint-chart] scene-transition commit failed:`,e),this._state=`idle`;return}this.commit(t)}destroy(){this.interrupt(),By(this.container)}};function Hy(e,t){let n=new Map;return e.querySelectorAll(`[data-bc-role="${t}"]`).forEach(e=>{let t=e.getAttribute(`data-bc-key`);t!=null&&n.set(t,e)}),n}function Uy(e,t){return e.tagName===t.tagName}function Wy(e,t){$(e).interrupt(Fy);let n={};for(let r of t){let t=e.getAttribute(r);t!==null&&(n[r]=t)}return n}function Gy(e,t){let n=Ky(e),r=Ky(t);if(n.skeleton!==r.skeleton||n.nums.length!==r.nums.length)return n=>n<.5?e:t;let{skeleton:i,nums:a}=n,{nums:o}=r;return n=>{if(n<=0)return e;if(n>=1)return t;let r=0;return i.replace(/#/g,()=>{let e=a[r]+(o[r]-a[r])*n;return r++,qy(e)})}}function Ky(e){let t=[];return{skeleton:e.replace(/-?\d*\.?\d+(?:e[-+]?\d+)?/gi,e=>(t.push(parseFloat(e)),`#`)),nums:t}}function qy(e){let t=Math.round(e*1e3)/1e3;return Object.is(t,-0)?`0`:String(t)}var Jy={opacity:0},Yy=new Set([`d`,`transform`]),Xy=new Set([`stroke-dasharray`]);function Zy(e,t){if(e.state===`idle`||e.state===`animating`){Qy(t);return}e.register(()=>$y(e,t))}function Qy(e){let t=$(e.parent).selectAll(e.selector).data(e.data,t=>e.key(t));t.exit().remove();let n=e.insert(t.enter());eb(n,e),n.merge(t).each(function(t){rb(this,e.attrs(t))})}function $y(e,t){let n=e.activeTransition,r=$(t.parent).selectAll(t.selector).data(t.data,e=>t.key(e)),i=nb(t),a=r.exit();n?a.each(function(){let e=this,r=$(e).datum();ib(e,t.exitTo?t.exitTo(r):Jy,n).on(`end.featureJoin-exit`,()=>e.parentNode?.removeChild(e))}):a.remove();let o=Hy(e.container,t.role),s=t.insert(r.enter());eb(s,t),s.each(function(e){let r=this,a=t.attrs(e);if(n){let s=o.get(tb(t.key(e)));if(s&&Uy(s,r)){rb(r,Wy(s,i)),ib(r,a,n);return}rb(r,t.enterFrom?t.enterFrom(e):a),ib(r,a,n)}else rb(r,a)}),r.each(function(e){let r=this,a=t.attrs(e);n?(Wy(r,i),ib(r,a,n)):rb(r,a)})}function eb(e,t){e.attr(`data-bc-role`,t.role),e.attr(`data-bc-key`,e=>tb(t.key(e)))}function tb(e){return e.replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F]/g,`␟`)}function nb(e){return e.data.length===0?[]:Object.keys(e.attrs(e.data[0]))}function rb(e,t){for(let[n,r]of Object.entries(t))e.setAttribute(n,String(r))}function ib(e,t,n){let r=$(e).transition(n);for(let[n,i]of Object.entries(t))if(Yy.has(n)){let e=String(i);r.attrTween(n,function(){return Gy(this.getAttribute(n)??e,e)})}else Xy.has(n)?e.setAttribute(n,String(i)):r.attr(n,String(i));return r}function ab(e,t){if(!t.active||!t.from)return;let n=t.svg.querySelector(`#${t.clipId} rect`);ob(e,{group:t.group,clipRect:n,from:t.from,to:t.to})}function ob(e,t){let{group:n,clipRect:r,from:i,to:a}=t,o=`translate(${a.left},${a.top})`,s=`translate(${i.left},${i.top})`;e.register(()=>{let t=e.activeTransition;if(!t){n.setAttribute(`transform`,o),r&&(r.setAttribute(`width`,String(a.width)),r.setAttribute(`height`,String(a.height)));return}n.setAttribute(`transform`,s),$(n).transition(t).attrTween(`transform`,function(){return Gy(this.getAttribute(`transform`)??s,o)}),r&&(r.setAttribute(`width`,String(i.width)),r.setAttribute(`height`,String(i.height)),$(r).transition(t).attr(`width`,a.width).attr(`height`,a.height))})}var sb=.35;function cb(e,t){let n=new Set(t);return new Set((e??[]).map(e=>e.target).filter(e=>n.has(e)))}function lb(e,t,n=1){return e.size===0||e.has(t)?n:sb}var ub=11,db=6.2,fb=ub,pb=8,mb=4,hb=14;function gb(e){return Math.max(Fh(e,ub),e.length*db)}function _b(e){let t=gb(e.text);return e.placement===`inside`?e.orientation===`horizontal`?t<=e.barWidth-pb&&fb<=e.barHeight:fb<=e.barHeight-mb&&t<=e.barWidth:(e.orientation===`vertical`?e.barWidth:e.barHeight)>=hb}var vb=8,yb=4,bb=7,xb=`11px sans-serif`;function Sb(e,t=xb){let n=e.length*bb;try{let r=document.createElement(`canvas`).getContext(`2d`);if(r)return r.font=t,Math.max(Math.ceil(r.measureText(e).width),n)}catch{}return n}function Cb(e,t,n,r){let i=e.length*bb/2,a=i+yb-r.margin.left,o=r.width+r.margin.right-i-yb,s=12-r.margin.top,c=r.height+r.margin.bottom-yb,l=Math.min(Math.max(n,0),r.height);return{x:Math.min(Math.max(t,a),Math.max(a,o)),y:Math.min(Math.max(l-vb,s),Math.max(s,c))}}var wb=4;function Tb(e){return Math.max(0,Math.min(13,e-wb))}var Eb=400;function Db(e,t){return e>0&&e<Eb&&t!==zr.Outside}var Ob=[`#4e79a7`],kb=4,Ab=8;function jb(e,t,n={},r=!1){ag(r);let i=null,a,o,s,c=[],l=Yg.for(e);if(r){let t=Oy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-vertical`?c=Array.from(e.querySelectorAll(`.bc-frame .bc-bar`)):t&&(i=cg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))a.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=eg(u).width,f=n.categoryLabelLine===!0,p=Xh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),m=f?zr.Off:n.horizontalAxis?.labelPosition,h=Qh(d,n.verticalAxis?.labelPosition,m,n.verticalAxis?.direction,p);if(!f){let e=Math.max(0,d-(h.left??50)-(h.right??20)),r=Mg(t.labels,e,n.horizontalAxis);r!==void 0&&(h.bottom=r)}let{chartArea:g,width:_,height:v,margin:y}=ng(u,h),b=v-(f?Tb(v):0),x=Rh(o,y),S={left:y.left,top:y.top,width:_,height:b},C=Pb(t,n),w=C.map(e=>({label:e,value:t.values[t.labels.indexOf(e)]})).filter(e=>Number.isFinite(e.value)),T=n.swapLabelValue===!0,E=n.waterfall===!0,D=[];if(E){let e=0;for(let t of w){let n=e;e+=t.value,D.push({label:t.label,value:t.value,y0:n,y1:e,isTotal:!1})}n.waterfallTotal&&D.push({label:`Total`,value:e,y0:0,y1:e,isTotal:!0})}let O=E?D.map(e=>e.label):C,k=od().domain(O).range([0,_]).padding(Ci(n.barGap)),ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(E?D.flatMap(e=>[e.y0,e.y1]):w.map(e=>e.value),n.verticalAxis?.range,n.verticalAxis?.scaleType);if(n.valueLabels&&A<0&&n.verticalAxis?.range?.min==null){let e=j-A;A-=e*.1}let M=ee?Ed().domain([A,j]).nice().range([b,0]):Sd().domain([A,j]).nice().range([b,0]);l.attach(g,x);let N=T&&n.valueLabels&&!E?(()=>{let e=new Map(w.map(e=>[e.label,e.value]));return{...n.horizontalAxis,width:_,tickFormat:t=>String(e.get(t)??t)}})():{...n.horizontalAxis,width:_},P=f?{...N,labelPosition:zr.Off}:N;l.update({vertical:{scale:M,height:v,options:{...n.verticalAxis,gridWidth:_,topPadding:y.top}},horizontal:{scale:k,height:v,options:P}}),!ee&&A<0&&j>0&&$(g).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,0).attr(`x2`,_).attr(`y1`,M(0)).attr(`y2`,M(0)).attr(`stroke`,`#666`).attr(`stroke-width`,1);let F=Ey(n.colorizes),I=cb(n.highlights,O),L=g.ownerSVGElement,R=My(L,e,`bars`,{x:0,y:0,width:_,height:b}),z=$(L).select(`defs`),B=R.replace(/^bc-clip-/,``),V=$(g).append(`g`).attr(`clip-path`,`url(#${R})`);if(n.barBackground){let e=(n.colors??Ob)[0],t=E?O:w.map(e=>e.label);V.selectAll(`.bc-bar-bg`).data(t,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,e=>k(e)??0).attr(`y`,0).attr(`width`,k.bandwidth()).attr(`height`,b).attr(`fill`,e).attr(`opacity`,.18)}let te=E?O:w.map(e=>e.label);if(n.barSeparators&&te.length>1){let e=k.step();for(let t=1;t<te.length;t++){let n=(k(te[t-1])??0)+k.bandwidth()+(e-k.bandwidth())/2;V.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,n).attr(`x2`,n).attr(`y1`,0).attr(`y2`,b).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}if(!E&&n.connectedColumns&&w.length>1){let e=n.colors??Ob,t=n.connectionsOpacity??.15;for(let n=0;n<w.length-1;n++){let r=w[n],i=w[n+1];if(r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(k(r.label)??0)+k.bandwidth(),o=k(i.label)??0,s=Math.min(M(0),M(r.value)),c=Math.min(M(0),M(i.value)),l=M(0),u=F.get(r.label)??e[0],d=F.get(i.label)??e[0],f;if(u===d)f=u;else{let e=`bc-conn-grad-${B}-${n}`,t=z.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`100%`).attr(`y1`,`0%`).attr(`y2`,`0%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,u),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,d),f=`url(#${e})`}V.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${a},${s} ${o},${c} ${o},${l} ${a},${l}`).attr(`fill`,f).attr(`opacity`,t).attr(`pointer-events`,`none`)}}let ne=$(g).append(`g`);if(E){let e=n.colors??Ob,t=`#333`;if(n.connectedColumns&&D.length>1){let e=n.colors??Ob,t=n.connectionsOpacity??.15;for(let n=0;n<D.length-1;n++){let r=D[n],i=D[n+1];if(i.isTotal||r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(k(r.label)??0)+k.bandwidth(),o=k(i.label)??0,s=M(r.y1),c=M(i.y1),l=M(r.y0),u=M(i.y0),d=F.get(r.label)??e[0],f=F.get(i.label)??e[0],p;if(d===f)p=d;else{let e=`bc-conn-grad-${B}-${n}`,t=z.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`100%`).attr(`y1`,`0%`).attr(`y2`,`0%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,d),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,f),p=`url(#${e})`}V.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${a},${s} ${o},${c} ${o},${u} ${a},${l}`).attr(`fill`,p).attr(`opacity`,t).attr(`pointer-events`,`none`)}}for(let e=0;e<D.length-1;e++){let t=D[e],n=D[e+1];if(n.isTotal)break;V.append(`line`).attr(`class`,`bc-waterfall-connector`).attr(`x1`,(k(t.label)??0)+k.bandwidth()).attr(`x2`,k(n.label)??0).attr(`y1`,M(t.y1)).attr(`y2`,M(t.y1)).attr(`stroke`,`currentColor`).attr(`stroke-dasharray`,`2,2`).attr(`opacity`,.3)}if(V.selectAll(`.bc-bar`).data(D,e=>e.label).enter().append(`rect`).attr(`class`,`bc-bar`).attr(`x`,e=>k(e.label)??0).attr(`y`,e=>Math.min(M(e.y0),M(e.y1))).attr(`width`,k.bandwidth()).attr(`height`,e=>Math.abs(M(e.y0)-M(e.y1))).attr(`fill`,n=>n.isTotal?t:F.get(n.label)??e[0]).attr(`opacity`,e=>I.size>0?lb(I,e.label):null),n.valueLabels){let r=n.valueLabelPosition??ei.Auto,i=Sh(n.verticalAxis?.numberFormat??``),a=e=>i?i(e):String(e);ne.selectAll(`.bc-value-label`).data(D,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`x`,e=>(k(e.label)??0)+k.bandwidth()/2).attr(`y`,e=>{let t=Math.min(M(e.y0),M(e.y1)),n=Math.abs(M(e.y0)-M(e.y1));return r===ei.Inside?t+n/2:t-4}).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,r===ei.Inside?`central`:`auto`).attr(`fill`,n=>r===ei.Inside?Sr(n.isTotal?t:F.get(n.label)??e[0]):`currentColor`).text(e=>T?e.label:a(e.isTotal?e.y1:e.value))}}else{let t=zy(e),i=V.append(`g`).node();if(r)for(let e of c)i.appendChild(e);Zy(t,{role:`mark-per-category`,parent:i,selector:`.bc-bar`,data:w,key:e=>e.label,insert:e=>e.append(`rect`).attr(`class`,`bc-bar`),attrs:e=>({x:k(e.label)??0,y:Math.min(M(0),M(e.value)),width:k.bandwidth(),height:Math.abs(M(e.value)-M(0)),fill:F.get(e.label)??(n.colors??Ob)[0],opacity:lb(I,e.label)})}),ab(t,{svg:L,clipId:R,group:g,from:s,to:S,active:r&&c.length>0});let o=Py(V);n.tooltips&&o.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&o.use(Lv({width:_,height:b,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length&&o.use(Ty(n.annotations,{scaleX:k,scaleY:M,data:w,width:_,height:b,backgroundColor:wr(e),transition:r,priorAnnotations:a}));let l=()=>o.draw(w);if(t.state===`committing`?t.register(l):l(),n.valueLabels){let e=Sh(n.verticalAxis?.numberFormat??``);Nb(ne,w,k,M,{position:n.valueLabelPosition,colorOverrides:F,colors:n.colors??Ob,transition:r,swapLabelValue:T,percent:n.valueLabels===`percent`,total:Qi(w,e=>e.value),formatValue:t=>e?e(t):String(t),bounds:{plotHeight:b,marginTop:y.top,marginBottom:y.bottom}})}}if(f){let e=$(g).append(`g`).attr(`class`,`bc-category-labels`);for(let t of O)e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,(k(t)??0)+k.bandwidth()/2).attr(`y`,b+13/2).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}ky(e,{chartType:`bar-vertical`,margin:y,plotRect:S}),i&&(sg(V.node()),lg(e,i))}function Mb(e,t,n,r,i){let a=(t(e.label)??0)+t.bandwidth()/2,o=`middle`,s=e=>Math.max(0,Math.min(i.plotHeight,e)),c=s(Math.min(n(0),n(e.value))),l=s(Math.max(n(0),n(e.value))),u=e.value<0,d=n(e.value),f=d<0||d>i.plotHeight,p=u?l+kb:c-kb,m=u?p+Ab<=i.plotHeight+i.marginBottom:p-Ab>=-i.marginTop,h=l-c,g=(r===ei.Inside||f||!m)&&h>=12;return g?{tx:a,ty:(c+l)/2,anchor:o,baseline:`central`,isInside:g}:{tx:a,ty:p,anchor:o,baseline:u?`hanging`:`auto`,isInside:g}}function Nb(e,t,n,r,i){let a=i.position??ei.Auto,o=e=>i.swapLabelValue?e.label:i.percent&&i.total!==void 0?Ch(e.value,i.total):i.formatValue(e.value),s=e.select(`.bc-value-label-group`);s.empty()&&(s=e.append(`g`).attr(`class`,`bc-value-label-group`));let c=e.node().ownerSVGElement?.parentElement,l=zy(c),u=t.filter(e=>_b({text:o(e),placement:a===ei.Inside?`inside`:`outside`,orientation:`vertical`,barWidth:n.bandwidth(),barHeight:Math.abs(r(e.value)-r(0))}));Zy(l,{role:`value-label`,parent:s.node(),selector:`.bc-value-label`,data:u,key:e=>e.label,insert:e=>e.append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`),attrs:e=>{let t=Mb(e,n,r,a,i.bounds);return{x:t.tx,y:t.ty,"text-anchor":t.anchor,"dominant-baseline":t.baseline,fill:t.isInside?Sr(i.colorOverrides.get(e.label)??i.colors[0]):`currentColor`}}}),s.selectAll(`.bc-value-label`).data(u,e=>e.label).text(o)}function Pb(e,t){let n=e.labels.map((t,n)=>({label:t,value:e.values[n]}));return t.sort===Xr.Ascending?n.sort((e,t)=>e.value-t.value):t.sort===Xr.Descending&&n.sort((e,t)=>t.value-e.value),n.map(e=>e.label)}var Fb=[`#4e79a7`],Ib=4;function Lb(e,t,n={},r=!1){ag(r);let i=null,a,o,s=[],c,l=Yg.for(e);if(r){let t=Oy(e);o=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-horizontal`?s=Array.from(e.querySelectorAll(`.bc-frame .bc-bar`)):t&&(i=cg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))a.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=eg(u).width,f=Db(d,n.verticalAxis?.labelPosition),p=n.categoryLabelLine===!0||f,m=Zh(t.labels),h=Qh(d,p?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m,n.horizontalAxis?.showAxis),g=n.valueLabelPosition??ei.Auto,_=n.swapLabelValue===!0,v=Sh(n.horizontalAxis?.numberFormat??``),y=e=>v?v(e):String(e);if(n.valueLabels&&g!==ei.Inside){if(_){let e=Sb(t.labels.reduce((e,t)=>e.length>t.length?e:t,``))+8;h.right=Math.max(h.right??15,e)}else{let e=t.values.filter(e=>Number.isFinite(e)),n=Math.max(...e),r=Math.min(...e),i=n>0?Sb(y(n))+8:0,a=r<0?Sb(y(r))+8:0;h.right=Math.max(h.right??15,i),a>0&&(h.left=(h.left??50)+a)}}let{chartArea:b,width:x,height:S,margin:C}=ng(u,h),w={left:C.left,top:C.top,width:x,height:S},T=Rh(o,C),E=Bb(t,n),D=E.map(e=>({label:e,value:t.values[t.labels.indexOf(e)]})).filter(e=>Number.isFinite(e.value)),O=n.waterfall===!0,k=[];if(O){let e=0;for(let t of D){let n=e;e+=t.value,k.push({label:t.label,value:t.value,x0:n,x1:e,isTotal:!1})}n.waterfallTotal&&k.push({label:`Total`,value:e,x0:0,x1:e,isTotal:!0})}let ee=n.horizontalAxis?.scaleType===`log`,[A,j]=wi(O?k.flatMap(e=>[e.x0,e.x1]):D.map(e=>e.value),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),M=ee?Ed().domain([A,j]).nice().range([0,x]):Sd().domain([A,j]).nice().range([0,x]),N=O?k.map(e=>e.label):E,P=od().domain(N).range([0,S]).padding(Ci(n.barGap)),F=p?Tb(P.bandwidth()):0,I=_&&n.valueLabels&&!O?(()=>{let e=new Map(D.map(e=>[e.label,e.value]));return{...n.verticalAxis,topPadding:C.top,tickFormat:t=>String(e.get(t)??t)}})():{...n.verticalAxis,topPadding:C.top},L=p?{...I,labelPosition:zr.Off,...f?{showAxis:!1}:{}}:I;l.attach(b,T),l.update({horizontal:{scale:M,height:S,options:{...n.horizontalAxis,width:x}},vertical:{scale:P,height:S,options:L},order:`horizontal-first`}),!ee&&A<0&&j>0&&$(b).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,M(0)).attr(`x2`,M(0)).attr(`y1`,0).attr(`y2`,S).attr(`stroke`,`#666`).attr(`stroke-width`,1);let R=Ey(n.colorizes),z=cb(n.highlights,N),B=b.ownerSVGElement,V=My(B,e,`bars`,{x:0,y:0,width:x,height:S}),te=$(B).select(`defs`),ne=V.replace(/^bc-clip-/,``),re=$(b).append(`g`).attr(`clip-path`,`url(#${V})`);if(n.barBackground){let e=(n.colors??Fb)[0],t=O?N:D.map(e=>e.label);re.selectAll(`.bc-bar-bg`).data(t,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,0).attr(`y`,e=>(P(e)??0)+F).attr(`width`,x).attr(`height`,P.bandwidth()-F).attr(`fill`,e).attr(`opacity`,.18)}let ie=O?N:D.map(e=>e.label);if(n.barSeparators&&ie.length>1){let e=P.step();for(let t=1;t<ie.length;t++){let n=(P(ie[t-1])??0)+P.bandwidth()+(e-P.bandwidth())/2;re.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,0).attr(`x2`,x).attr(`y1`,n).attr(`y2`,n).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}if(!O&&n.connectedColumns&&D.length>1){let e=n.colors??Fb,t=n.connectionsOpacity??.15;for(let n=0;n<D.length-1;n++){let r=D[n],i=D[n+1];if(r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(P(r.label)??0)+P.bandwidth(),o=(P(i.label)??0)+F,s=Math.max(M(0),M(r.value)),c=Math.max(M(0),M(i.value)),l=M(0),u=R.get(r.label)??e[0],d=R.get(i.label)??e[0],f;if(u===d)f=u;else{let e=`bc-conn-grad-${ne}-${n}`,t=te.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`0%`).attr(`y1`,`0%`).attr(`y2`,`100%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,u),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,d),f=`url(#${e})`}re.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${s},${a} ${c},${o} ${l},${o} ${l},${a}`).attr(`fill`,f).attr(`opacity`,t).attr(`pointer-events`,`none`)}}if(O){let e=n.colors??Fb,t=`#333`;if(n.connectedColumns&&k.length>1){let e=n.colors??Fb,t=n.connectionsOpacity??.15;for(let n=0;n<k.length-1;n++){let r=k[n],i=k[n+1];if(i.isTotal||r.value==null||i.value==null||Number.isNaN(r.value)||Number.isNaN(i.value)||r.value===0||i.value===0)continue;let a=(P(r.label)??0)+P.bandwidth(),o=(P(i.label)??0)+F,s=M(r.x1),c=M(i.x1),l=M(r.x0),u=M(i.x0),d=R.get(r.label)??e[0],f=R.get(i.label)??e[0],p;if(d===f)p=d;else{let e=`bc-conn-grad-${ne}-${n}`,t=te.append(`linearGradient`).attr(`id`,e).attr(`x1`,`0%`).attr(`x2`,`0%`).attr(`y1`,`0%`).attr(`y2`,`100%`);t.append(`stop`).attr(`offset`,`0%`).attr(`stop-color`,d),t.append(`stop`).attr(`offset`,`100%`).attr(`stop-color`,f),p=`url(#${e})`}re.append(`polygon`).attr(`class`,`bc-bar-connection`).attr(`points`,`${s},${a} ${c},${o} ${u},${o} ${l},${a}`).attr(`fill`,p).attr(`opacity`,t).attr(`pointer-events`,`none`)}}for(let e=0;e<k.length-1;e++){let t=k[e],n=k[e+1];if(n.isTotal)break;re.append(`line`).attr(`class`,`bc-waterfall-connector`).attr(`x1`,M(t.x1)).attr(`x2`,M(t.x1)).attr(`y1`,(P(t.label)??0)+P.bandwidth()).attr(`y2`,(P(n.label)??0)+F).attr(`stroke`,`currentColor`).attr(`stroke-dasharray`,`2,2`).attr(`opacity`,.3)}if(re.selectAll(`.bc-bar`).data(k,e=>e.label).enter().append(`rect`).attr(`class`,`bc-bar`).attr(`x`,e=>Math.min(M(e.x0),M(e.x1))).attr(`y`,e=>(P(e.label)??0)+F).attr(`width`,e=>Math.abs(M(e.x1)-M(e.x0))).attr(`height`,P.bandwidth()-F).attr(`fill`,n=>n.isTotal?t:R.get(n.label)??e[0]).attr(`opacity`,e=>z.size>0?lb(z,e.label):null),n.valueLabels){let n=g;$(b).append(`g`).selectAll(`.bc-value-label`).data(k,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`dominant-baseline`,`central`).attr(`y`,e=>(P(e.label)??0)+F+(P.bandwidth()-F)/2).attr(`x`,e=>{let t=Math.max(M(e.x0),M(e.x1));return n===ei.Inside?t-4:t+4}).attr(`text-anchor`,n===ei.Inside?`end`:`start`).attr(`fill`,r=>n===ei.Inside?Sr(r.isTotal?t:R.get(r.label)??e[0]):`currentColor`).text(e=>_?e.label:y(e.isTotal?e.x1:e.value))}}else{let t=zy(e),i=re.append(`g`).node();if(r)for(let e of s)i.appendChild(e);Zy(t,{role:`mark-per-category`,parent:i,selector:`.bc-bar`,data:D,key:e=>e.label,insert:e=>e.append(`rect`).attr(`class`,`bc-bar`),attrs:e=>({x:Math.min(M(0),M(e.value)),y:(P(e.label)??0)+F,width:Math.abs(M(e.value)-M(0)),height:P.bandwidth()-F,fill:R.get(e.label)??(n.colors??Fb)[0],opacity:lb(z,e.label)})}),ab(t,{svg:B,clipId:V,group:b,from:c,to:w,active:r&&s.length>0});let o=Py(re);n.tooltips&&o.use(Fv({numberFormat:n.horizontalAxis?.numberFormat})),n.crosshair&&o.use(Lv({width:x,height:S,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length&&o.use(Ty(n.annotations,{scaleX:P,scaleY:M,data:D,width:x,height:S,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:a}));let l=()=>o.draw(D);t.state===`committing`?t.register(l):l(),n.valueLabels&&zb($(b).append(`g`),D,M,P,{position:g,colorOverrides:R,colors:n.colors??Fb,transition:r,swapLabelValue:_,categoryLabelOffset:F,percent:n.valueLabels===`percent`,total:Qi(D,e=>e.value),formatValue:y,bounds:{plotWidth:x,marginLeft:C.left,marginRight:C.right}})}if(p){let e=$(b).append(`g`).attr(`class`,`bc-category-labels`);for(let t of N){let n=P(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}ky(e,{chartType:`bar-horizontal`,margin:C,plotRect:w}),i&&(sg(re.node()),lg(e,i))}function Rb(e,t,n,r,i,a,o){let s=(n(e.label)??0)+i+(n.bandwidth()-i)/2,c=e=>Math.max(0,Math.min(a.plotWidth,e)),l=t(e.value),u=l<0||l>a.plotWidth,d=e.value<0,f=d?Math.min(c(t(0)),c(l)):Math.max(c(t(0)),c(l)),p=d?f-Ib-o>=Ib-a.marginLeft:f+Ib+o<=a.plotWidth+a.marginRight-Ib,m=d?a.plotWidth-f:f,h=(r===ei.Inside||u||!p)&&m>=o+Ib;return h?d?{tx:f+Ib,ty:s,anchor:`start`,isInside:h}:{tx:f-Ib,ty:s,anchor:`end`,isInside:h}:d?{tx:f-Ib,ty:s,anchor:`end`,isInside:h}:{tx:f+Ib,ty:s,anchor:`start`,isInside:h}}function zb(e,t,n,r,i){let a=i.position??ei.Auto,o=i.categoryLabelOffset??0,s=e=>i.swapLabelValue?e.label:i.percent&&i.total!==void 0?Ch(e.value,i.total):i.formatValue(e.value),c=e.select(`.bc-value-label-group`);c.empty()&&(c=e.append(`g`).attr(`class`,`bc-value-label-group`));let l=e.node().ownerSVGElement?.parentElement,u=zy(l),d=t.filter(e=>_b({text:s(e),placement:a===ei.Inside?`inside`:`outside`,orientation:`horizontal`,barWidth:Math.abs(n(e.value)-n(0)),barHeight:r.bandwidth()}));Zy(u,{role:`value-label`,parent:c.node(),selector:`.bc-value-label`,data:d,key:e=>e.label,insert:e=>e.append(`text`).attr(`class`,`bc-value-label`).attr(`font-size`,`11px`).attr(`dominant-baseline`,`central`),attrs:e=>{let t=Rb(e,n,r,a,o,i.bounds,Sb(s(e)));return{x:t.tx,y:t.ty,"text-anchor":t.anchor,fill:t.isInside?Sr(i.colorOverrides.get(e.label)??i.colors[0]):`currentColor`}}}),c.selectAll(`.bc-value-label`).data(d,e=>e.label).text(s)}function Bb(e,t){let n=e.labels.map((t,n)=>({label:t,value:e.values[n]}));return t.sort===Xr.Ascending?n.sort((e,t)=>e.value-t.value):t.sort===Xr.Descending&&n.sort((e,t)=>t.value-e.value),n.map(e=>e.label)}var Vb=12,Hb=16,Ub=12,Wb=8;function Gb(e){return e>0?e-Hb-Ub:1/0}function Kb(e,t=``,n=0){let r=t?` ${t}`:``,i=Lh(e,Gb(n)-Fh(r,Vb),Vb);return{label:i,suffix:r,width:Hb+Fh(i+r,Vb)+Ub}}function qb(e){return Ih(e,Vb)+Hb+Wb}function Jb(e,t,n){if(e.length===0)return{width:0,height:0};if(t===`left`||t===`right`)return{width:qb(e),height:e.length*20};let r=e.map(e=>Kb(e,``,n).width);if(!n||n<=0)return{width:r.reduce((e,t)=>e+t,0),height:20};let i=1,a=0,o=0;for(let e of r)a>0&&a+e>n?(o=Math.max(o,a),i++,a=e):a+=e;return o=Math.max(o,a),{width:o,height:i*20}}function Yb(e){return e.length===0?0:Ih(e,Vb)+10}var Xb=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],Zb=200,Qb=.2,$b=class extends ch{initialize(){this.configDefine(`colors`,{defaultValue:Xb}),this.configDefine(`yOffset`,{defaultValue:-10}),this.configDefine(`layout`,{defaultValue:`horizontal`}),this.configDefine(`valueSuffixes`,{defaultValue:[]}),this.configDefine(`maxWidth`,{defaultValue:0});let e=this.base.append(`g`).attr(`class`,`bc-legend`),t=e=>{let t=this.config(`colors`),n=this.config(`layout`),r=this.config(`valueSuffixes`),i=this.base.node()?.ownerSVGElement?.parentElement??document.documentElement,a=getComputedStyle(i).getPropertyValue(`--bc-text-color`).trim()||`#555`,o=this.config(`maxWidth`),s=0,c=0;e.each(function(e,i){let l=$(this),u=r[i],d=Kb(e,u,n===`horizontal`?o:0),f=d.width;n===`horizontal`&&o>0&&s>0&&s+f>o&&(s=0,c+=20),l.attr(`transform`,`translate(${s},${c})`).attr(`data-series`,e).style(`cursor`,`default`);let p=l.select(`rect`);p.empty()&&(p=l.append(`rect`).attr(`width`,12).attr(`height`,12)),p.attr(`fill`,t[i%t.length]);let m=l.select(`text`);m.empty()&&(m=l.append(`text`).attr(`x`,16).attr(`y`,10).attr(`font-size`,`12px`)),m.attr(`fill`,a),m.selectAll(`tspan`).remove(),u?(m.text(null),m.append(`tspan`).attr(`font-weight`,`bold`).text(d.label),m.append(`tspan`).text(d.suffix)):m.text(d.label),n===`vertical`?c+=20:s+=f})};this.layer(`items`,e,{dataBind:(e,t)=>e.selectAll(`.bc-legend-item`).data(t,e=>e),insert:e=>e.append(`g`).attr(`class`,`bc-legend-item`),events:{enter:t,update:t}})}preDraw(){let e=this.config(`yOffset`);this.base.select(`.bc-legend`).attr(`transform`,`translate(0,${e})`)}};function ex(e){let t=$(e).selectAll(`.bc-legend-item`);if(t.empty())return;let n=null,r=null;function i(n){r=n,t.each(function(){let e=$(this),t=e.attr(`data-series`)===n;e.transition().duration(150).style(`opacity`,t?1:Qb)}),$(e).selectAll(`[data-series]`).filter(function(){return!this.closest(`.bc-legend`)}).each(function(){let e=$(this),t=e.attr(`data-series`)===n,r=this.classList.contains(`bc-direct-label`)||this.classList.contains(`bc-value-label`);e.transition().duration(150).style(`opacity`,t?1:r?0:Qb)})}function a(){r=null,t.transition().duration(150).style(`opacity`,1),$(e).selectAll(`[data-series]`).filter(function(){return!this.closest(`.bc-legend`)}).transition().duration(150).style(`opacity`,null)}t.on(`mouseenter.bcHighlight`,null).on(`mouseleave.bcHighlight`,null).on(`mouseenter.bcHighlight`,function(){let e=$(this).attr(`data-series`)??``;n&&clearTimeout(n),n=setTimeout(()=>i(e),rg(Zb))}).on(`mouseleave.bcHighlight`,()=>{n&&=(clearTimeout(n),null),r!==null&&a()})}function tx(e,t,n=Xb,r=-10,i=`top`,a=`start`,o=0,s=0,c=0,l=[],u={}){let d=i===`left`||i===`right`?`vertical`:`horizontal`,f=new $b($(e));f.config({colors:n,yOffset:r,layout:d,valueSuffixes:l,maxWidth:o}),f.draw(t);let p=e.querySelector(`.bc-legend`);if(p){let e,n;if(d===`horizontal`){let r=t.map((e,t)=>Kb(e,l[t],o).width),i=1,a=0,s=0;for(let e of r)o>0&&a>0&&a+e>o?(s=Math.max(s,a),i++,a=e):a+=e;s=Math.max(s,a),e=s,n=i*20}else e=qb(t.map((e,t)=>l[t]?`${e} ${l[t]}`:e)),n=t.length*20;let i=u.left??0,f=u.right??0,m=c,h=r;d===`horizontal`?m+=a===`middle`?-i+(o+i+f-e)/2:a===`end`?o+f-e:-i:a===`middle`?h+=(s-n)/2:a===`end`&&(h+=s-n),p.setAttribute(`transform`,`translate(${m},${h})`)}return ex(e),p}function nx(e){return e.series?e.series:e.values.length>0?[{name:``,values:e.values}]:[]}function rx(e,t){if(t<=e.length)return e;let n=e.filter(e=>br.valid(e));return n.length<2?e:br.scale(n).mode(`lch`).colors(t)}function ix(e,t){return t?.find(t=>t.name===e)}function ax(e,t,n,r){return ix(e,r)?.color??n[t%n.length]}function ox(e,t){return ix(e,t)?.dash??`solid`}function sx(e,t){return ix(e,t)?.lineWidth??2}function cx(e,t,n){let r=ix(e,n);return!r?.interpolation||r.interpolation===`global`?t:r.interpolation}function lx(e,t){return ix(e,t)?.hidden??!1}function ux(e,t,n){let r=ix(e,n);return!r?.labelMode||r.labelMode===`global`?t:r.labelMode}function dx(e,t,n){let r=ix(e,n);return r?.valueLabels===void 0?t:r.valueLabels}function fx(e,t){return ix(e,t)?.opacity??1}function px(e,t,n){let r=ix(e,n);if(r?.lineSymbols!==!1&&(r?.lineSymbols===!0||t))return{name:e,symbolShape:r?.symbolShape??t?.symbolShape,symbolShowOn:r?.symbolShowOn??t?.symbolShowOn,symbolStyle:r?.symbolStyle??t?.symbolStyle,symbolSize:r?.symbolSize??t?.symbolSize,symbolOpacity:r?.symbolOpacity??t?.symbolOpacity,lineSymbols:!0}}var mx=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],hx=4,gx=16,_x=8;function vx(e,t,n={},r=!1){ag(r);let i=null,a,o,s=[],c,l=Yg.for(e);if(r){let t=Oy(e);o=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-multi`?s=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-multi`)):t&&(i=cg(e)),a=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))a.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=t.series??[],f=d.filter(e=>!lx(e.name,n.seriesOverrides)),p=f.map(e=>e.name),m=rx(n.colors??mx,d.length),h=n.seriesOverrides,g=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,_=g?`direct`:n.legend===!1?`none`:`legend`,v=n.valueLabels??!1,y=n.valueLabelPosition??ei.Auto,b=typeof n.directLabelling==`string`?n.directLabelling:n.directLabelling?ii.Auto:ii.Off,x=n.legend!==!1&&!g,S=eg(u).width,C=n.legendPosition??`top`,w=S>0&&S<350&&(C===`left`||C===`right`)?`top`:C,T=n.legendAnchor??`start`,E=f.flatMap(e=>e.values),D=Xh(E,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),O=Qh(S,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,D),k=O.top!=null,ee=Math.max(0,S-(O.left??50)-(O.right??20)),A=x?Jb(p,w,ee):{width:0,height:0},j=x?A.height+15:0,M={...O};x&&w===`top`&&(M.top=j+(k?15:0)),x&&w===`left`&&(M.left=(M.left??50)+A.width+10),x&&w===`right`&&(M.right=(M.right??20)+A.width+10);let N=Math.max(0,S-(M.left??50)-(M.right??20));M.bottom=(Mg(t.labels,N,n.horizontalAxis)??Math.max(M.bottom??24,24))+(w===`bottom`?j:0);let P=g||!!h?.some(e=>e.labelMode===`direct`),F=v!==!1||!!h?.some(e=>e.valueLabels),I=P&&b!==ii.Inside,L=F&&y!==ei.Inside,R=I&&L?gx:hx;(I||L)&&(M.top=(M.top??0)+R+_x);let{chartArea:z,width:B,height:V,margin:te}=ng(u,M),ne=Rh(o,te),[re,ie]=wi(E,n.verticalAxis?.range,n.verticalAxis?.scaleType);if(n.valueLabels&&re<0&&n.verticalAxis?.range?.min==null){let e=ie-re;re-=e*.1}let ae=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),ae=e.map(e=>e.label)}let oe=od().domain(ae).range([0,B]).padding(Ci(n.barGap)),H=od().domain(p).range([0,oe.bandwidth()]).padding(.05),se=n.verticalAxis?.scaleType===`log`,ce=se?Ed().domain([re,ie]).nice().range([V,0]):Sd().domain([re,ie]).nice().range([V,0]);l.attach(z,ne),l.update({vertical:{scale:ce,height:V,options:{...n.verticalAxis,gridWidth:B,topPadding:te.top}},horizontal:{scale:oe,height:V,options:{...n.horizontalAxis,width:B}}}),!se&&re<0&&ie>0&&$(z).append(`line`).attr(`class`,`bc-zero-baseline`).attr(`x1`,0).attr(`x2`,B).attr(`y1`,ce(0)).attr(`y2`,ce(0)).attr(`stroke`,`#666`).attr(`stroke-width`,1);let le=new Map;n.sortMode===`within-groups`&&t.labels.forEach((e,t)=>{let n=f.map(e=>({name:e.name,value:e.values[t]}));n.sort((e,t)=>t.value-e.value),n.forEach((t,n)=>{le.set(`${e}\0${t.name}`,p[n])})});let ue=[];t.labels.forEach((e,t)=>{f.forEach(r=>{let i=d.findIndex(e=>e.name===r.name),a=n.sortMode===`within-groups`?le.get(`${e}\0${r.name}`)??r.name:r.name;ue.push({label:e,series:a,seriesName:r.name,value:r.values[t],seriesIndex:i})})});let de=z.ownerSVGElement,U=My(de,e,`bars`,{x:0,y:0,width:B,height:V}),W=$(z).append(`g`).attr(`clip-path`,`url(#${U})`),fe=zy(e),pe=cb(n.highlights,ue.map(e=>e.seriesName)),me=Ey(n.colorizes),he=W.append(`g`).node();if(r)for(let e of s)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),he.appendChild(e);Zy(fe,{role:`mark-per-cell`,parent:he,selector:`.bc-bar-multi`,data:ue,key:e=>`${e.label}\0${e.seriesName}`,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-multi`),attrs:e=>{let t=ax(e.seriesName,e.seriesIndex,m,h),n=fx(e.seriesName,h),r={"data-series":e.seriesName,x:(oe(e.label)??0)+(H(e.series)??0),y:Math.min(ce(0),ce(e.value)),width:H.bandwidth(),height:Math.abs(ce(e.value)-ce(0)),fill:me.get(e.seriesName)??t};return n<1&&(r[`fill-opacity`]=n),pe.size>0?{...r,opacity:lb(pe,e.seriesName)}:r}});let ge={left:te.left,top:te.top,width:B,height:V};ab(fe,{svg:de,clipId:U,group:z,from:c,to:ge,active:r&&s.length>0});let _e=Py(W);if(n.tooltips&&_e.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&_e.use(Lv({width:B,height:V,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:Math.max(...f.map(e=>e.values[t]??0))}));_e.use(Ty(n.annotations,{scaleX:oe,scaleY:ce,data:i,width:B,height:V,backgroundColor:wr(e),transition:r,priorAnnotations:a}))}let ve=()=>_e.draw(ue);fe.state===`committing`?fe.register(ve):ve(),ky(e,{chartType:`bar-multi`,margin:te,plotRect:ge}),i&&(sg(W.node()),lg(e,i));let ye=new Set;f.forEach(e=>{ux(e.name,_,h)===`direct`&&ye.add(e.name)});let be=ye.size>0,xe=wr(e),Se=n.directLabelAnchor??`middle`;function G(){return y===ei.Inside?ei.Inside:(ei.Outside,ei.Outside)}function K(e){return b===ii.Inside?ei.Inside:b===ii.Outside?ei.Outside:v?G():ei.Outside}function Ce(e,t,n){return n===`start`?e+12:n===`end`?e+t-4:e+t/2}let we=$(z).append(`g`).attr(`class`,`bc-value-labels`);ue.forEach(e=>{if(!dx(e.seriesName,v,h))return;let t=(oe(e.label)??0)+(H(e.series)??0)+H.bandwidth()/2,n=Math.min(ce(0),ce(e.value)),r=Math.abs(ce(e.value)-ce(0)),i=G(),a=be&&ye.has(e.seriesName),o=e.value<0,s=n+r,c,l,u;i===ei.Inside?(l=Sr(ax(e.seriesName,e.seriesIndex,m,h)),u=`central`,c=a&&K(r)===ei.Inside?Ce(n,r,Se)+14:n+r/2):(l=`currentColor`,o?(c=a&&K(r)===ei.Outside?s+gx:s+hx,u=`hanging`):(c=a&&K(r)===ei.Outside?n-gx:n-hx,u=`auto`)),_b({text:String(e.value),placement:i===ei.Inside?`inside`:`outside`,orientation:`vertical`,barWidth:H.bandwidth(),barHeight:r})&&we.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`y`,c).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,u).attr(`font-size`,`11px`).attr(`fill`,l).text(String(e.value))}),ue.forEach(e=>{if(!ye.has(e.seriesName))return;let t=(oe(e.label)??0)+(H(e.series)??0)+H.bandwidth()/2,n=Math.min(ce(0),ce(e.value)),r=Math.abs(ce(e.value)-ce(0)),i=h?.find(t=>t.name===e.seriesName)?.labelText||e.seriesName,a=K(r),o=ax(e.seriesName,e.seriesIndex,m,h),s=$(z).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`text-anchor`,`middle`).attr(`font-size`,`10px`).text(i);if(a===ei.Inside){let e=Ce(n,r,Se);s.attr(`y`,e).attr(`fill`,Sr(o)),Se===`middle`&&s.attr(`dominant-baseline`,`central`)}else s.attr(`y`,n-hx).attr(`fill`,Tr(o,xe))});let Te=p.filter(e=>ux(e,_,h)===`legend`);if(x&&Te.length>0){let e=Te.map(e=>ax(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(w===`top`){let e=k?15:0;n=-(A.height+10+e)}else w===`bottom`?n=V+Math.max(te.bottom-j,0):w===`left`?t=-(A.width+10):w===`right`&&(t=B+10);tx(z,Te,e,n,w,T,B,V,t,[],{left:te.left,right:te.right})}}var yx={linear:Jp,monotoneX:Mm,step:Pm,stepBefore:Fm,stepAfter:Im,basis:bm,cardinal:Cm,catmullRom:Em};function bx(e){return e&&yx[e]||Jp}var xx=`bc-tooltip`,Sx=new WeakMap;function Cx(e){let t=Sx.get(e);t&&(Sx.delete(e),t())}function wx(){if(document.getElementById(`bc-tooltip-styles`))return;let e=document.createElement(`style`);e.id=`bc-tooltip-styles`,e.textContent=`
|
|
329
|
+
.${xx} {
|
|
330
330
|
position: absolute;
|
|
331
331
|
pointer-events: none;
|
|
332
332
|
background: var(--bs-body-bg, #fff);
|
|
@@ -339,8 +339,8 @@ body {
|
|
|
339
339
|
z-index: 9999;
|
|
340
340
|
display: none;
|
|
341
341
|
}
|
|
342
|
-
`,document.head.appendChild(e)}function bx(e){let t=e?_h(e):null,n=e=>t?t(e):String(e);return e=>e.series?`${e.series} – ${e.label}: ${n(e.value)}`:`${e.label}: ${n(e.value)}`}function xx(e,t){let{width:n,height:r,points:i,tooltip:a=!0,crosshair:o=!1,crosshairDirection:s=ti.Both,crosshairStyle:c=ni.Dashed,crosshairColor:l=`#999`,format:u=bx(t.numberFormat),container:d}=t;if(i.length===0){let e=()=>{};return d&&_x.set(d,e),e}let f=c===ni.Solid?`none`:c===ni.Dotted?`2,2`:`4,3`,p=[...new Set(i.map(e=>e.cx))].sort((e,t)=>e-t),m=$(e),h=null;a&&(yx(),h=document.createElement(`div`),h.className=gx,document.body.appendChild(h));let g=`.bc-annotations`,_=!m.select(g).empty(),v=e=>_?m.insert(e,g):m.append(e),y=o&&(s===ti.Both||s===ti.Vertical),b=o&&(s===ti.Both||s===ti.Horizontal),x=null,S=null;y&&(x=v(`line`).attr(`class`,`bc-crosshair bc-crosshair-v`).attr(`y1`,0).attr(`y2`,r).style(`stroke`,l).attr(`stroke-width`,1).style(`stroke-dasharray`,f).attr(`pointer-events`,`none`).style(`display`,`none`)),b&&(S=v(`line`).attr(`class`,`bc-crosshair bc-crosshair-h`).attr(`x1`,0).attr(`x2`,n).style(`stroke`,l).attr(`stroke-width`,1).style(`stroke-dasharray`,f).attr(`pointer-events`,`none`).style(`display`,`none`));let C=v(`circle`).attr(`class`,`bc-proximity-dot`).attr(`r`,6).attr(`fill`,`none`).attr(`stroke`,`#333`).attr(`stroke-width`,1).attr(`opacity`,.45).attr(`pointer-events`,`none`).style(`display`,`none`),w=v(`rect`).attr(`class`,`bc-proximity-overlay`).attr(`width`,n).attr(`height`,r).attr(`fill`,`none`).attr(`pointer-events`,`all`);function T(e,t){if(p.length===0)return null;let n=Ni(p,e),r=p[n],a=i.filter(e=>e.cx===r);if(a.length===0)return null;let o=a[0],s=Math.abs(a[0].cy-t);for(let e=1;e<a.length;e++){let n=Math.abs(a[e].cy-t);n<s&&(o=a[e],s=n)}return o}let E=t=>{let[n,r]=xs(t,e),i=T(n,r);i&&(C.attr(`cx`,i.cx).attr(`cy`,i.cy).attr(`stroke`,i.color).style(`display`,null),h&&(h.textContent=u(i),h.style.display=`block`,Ev(C.node(),h,{placement:`top`,middleware:[Cv(8),Tv(),wv()]}).then(({x:e,y:t})=>{h&&(h.style.left=`${e}px`,h.style.top=`${t}px`)})),x&&x.attr(`x1`,i.cx).attr(`x2`,i.cx).style(`display`,null),S&&S.attr(`y1`,i.cy).attr(`y2`,i.cy).style(`display`,null))},D=()=>{C.style(`display`,`none`),h&&(h.style.display=`none`),x&&x.style(`display`,`none`),S&&S.style(`display`,`none`)},O=w.node();O.addEventListener(`mousemove`,E),O.addEventListener(`mouseleave`,D);let k=()=>{O.removeEventListener(`mousemove`,E),O.removeEventListener(`mouseleave`,D),w.remove(),C.remove(),h&&=(h.remove(),null),x&&x.remove(),S&&S.remove(),d&&_x.get(d)===k&&_x.delete(d)};return d&&_x.set(d,k),k}var Sx={circle:nm,square:sm,diamond:om,triangle:mm,triangleDown:gm??mm,cross:rm,star:fm};function Cx(e,t,n){switch(n){case Jr.First:return e===0;case Jr.Last:return e===t-1;case Jr.FirstLast:return e===0||e===t-1;case Jr.All:default:return!0}}function wx(e,t,n,r,i=!1){let a=r.symbol??qr.Circle,o=r.showOn??Jr.FirstLast,s=r.style??Yr.Filled,c=r.size&&r.size>0?r.size:3.5,l=r.opacity??1,u=`var(--bs-body-bg, #fff)`,d=t.filter(e=>Cx(e.index,n,o)),f=i?tg():0;if(a===qr.Circle){e.selectAll(`path.bc-symbol`).remove();let t=e.selectAll(`circle.bc-symbol`).data(d).join(e=>e.append(`circle`).attr(`class`,`bc-symbol`).attr(`cx`,e=>e.cx).attr(`cy`,e=>e.cy).attr(`r`,c).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l),e=>e,e=>e.remove());(i?t.transition().duration(f):t).attr(`cx`,e=>e.cx).attr(`cy`,e=>e.cy).attr(`r`,c).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l)}else{let t=Sx[a]??nm,n=Math.PI*c*c,r=_m().type(t).size(n);e.selectAll(`circle.bc-symbol`).remove();let o=e.selectAll(`path.bc-symbol`).data(d).join(e=>e.append(`path`).attr(`class`,`bc-symbol`).attr(`transform`,e=>`translate(${e.cx},${e.cy})`).attr(`d`,r).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l),e=>e,e=>e.remove());(i?o.transition().duration(f):o).attr(`transform`,e=>`translate(${e.cx},${e.cy})`).attr(`d`,r).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l)}}function Tx(e,t,n={},r=!1){eg(r),vx(e);let i=[],a=[],o=null,s=null,c,l,u,d=Wg.for(e);if(r){let t=Cy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`line`?(i=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),a=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),o=e.querySelector(`.bc-frame .bc-symbols`)):t&&(s=rg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))c.set(e,n);e.replaceChildren()}let{body:f}=mh(e,n.frame),p=Yh(f).width,m=Gh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),h=qh(p,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m),g=Dg(t.labels,Math.max(0,p-(h.left??50)-(h.right??20)),n.horizontalAxis);g!==void 0&&(h.bottom=g);let{chartArea:_,width:v,height:y,margin:b}=Zh(f,h),x=Nh(l,b),S=Si(t.labels,n.horizontalAxis?.range),C=S.map(e=>t.labels[e]),w=S.map(e=>t.values[e]),T=C.map((e,t)=>({label:e,value:w[t]})),E=T.filter(e=>Number.isFinite(e.value)),D=cd().domain(C).range([0,v]).padding(n.edgePadding?.6:0),O=D,k=e=>D(e.label)??0,ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(w,n.verticalAxis?.range,n.verticalAxis?.scaleType,!1),M=ee?Ed().domain([A,j]).nice().range([y,0]):Sd().domain([A,j]).nice().range([y,0]),N=M.domain(),P=N[0]<0&&N[1]>0?M(0):void 0;d.attach(_,x),d.update({vertical:{scale:M,height:y,options:{...n.verticalAxis,gridWidth:v,topPadding:b.top}},horizontal:{scale:O,height:y,options:{...n.horizontalAxis,width:v,zeroY:P}}});let F=_.ownerSVGElement,I=Dy(F,e,`plot`,{x:-1,y:-1,width:v+2,height:y+2}),L=$(_).append(`g`).attr(`clip-path`,`url(#${I})`),R=L.node(),z=n.colors?.[0]??`#4e79a7`,B=hx(n.interpolation),V=n.areaFill??!1,H=n.areaFillOpacity??.2,te=e=>Number.isFinite(e.value),ne=Qp().curve(B).defined(te).x(e=>k(e)).y0(y).y1(e=>M(e.value)),re=Zp().curve(B).defined(te).x(e=>k(e)).y(e=>M(e.value)),ie=$(R).append(`g`).node(),ae=$(R).append(`g`).node();if(r){for(let e of i)ie.appendChild(e);for(let e of a)ae.appendChild(e)}let oe=Py(e),se=[{name:`line`,points:T}];Ky(oe,{role:`series-area`,parent:ie,selector:`.bc-area`,data:V?se:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({d:ne(e.points)??``,fill:z,opacity:H})}),Ky(oe,{role:`series-line`,parent:ae,selector:`.bc-line`,data:se,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>({d:re(e.points)??``,fill:`none`,stroke:z})}),$(R).append(`g`).selectAll(`.bc-dot`).data(E,e=>e.label).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`cx`,e=>k(e)).attr(`cy`,e=>M(e.value)).attr(`r`,3).attr(`fill`,z).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let ce={left:b.left,top:b.top,width:v+2,height:y+2};if(eb(oe,{svg:F,clipId:I,group:_,from:u,to:ce,active:r&&(i.length>0||a.length>0)}),n.annotations?.length&&yy(_,n.annotations,{scaleX:O,scaleY:M,data:T,width:v,height:y,backgroundColor:wr(e),transition:r,priorAnnotations:c}),(n.tooltips||n.crosshair)&&xx(_,{width:v,height:y,points:E.map(e=>({cx:k(e),cy:M(e.value),label:e.label,value:e.value,color:z})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e}),n.valueLabels){let e=$(_).insert(`g`,()=>R.nextSibling),t=e=>vb(String(e.value),k(e),M(e.value),{width:v,height:y,margin:b});e.selectAll(`.bc-value-label`).data(E,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`x`,e=>t(e).x).attr(`y`,e=>t(e).y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(e=>String(e.value))}if(n.lineSymbols){let e=T.map((e,t)=>({cx:k(e),cy:M(e.value),color:z,index:t})).filter(e=>Number.isFinite(e.cy)),t;o?(_.appendChild(o),t=$(o)):t=$(_).append(`g`).attr(`class`,`bc-symbols`),wx(t,e,T.length,n.lineSymbols,r)}wy(e,{chartType:`line`,margin:b,plotRect:ce}),s&&(ng(L.node()),ig(e,s))}var Ex=28,Dx=18,Ox=20,kx=12,Ax=.3;function jx(e,t,n,r=Ex){if(e.length===0)return[];if(e.length===1)return[Math.max(t,Math.min(n,e[0]))];let i=e.length,a=n-t,o=(i-1)*r>a?Math.max(0,a/(i-1)):r,s=[...e];for(let e=0;e<10;e++){for(let e=1;e<s.length;e++)s[e]-s[e-1]<o&&(s[e]=s[e-1]+o);s[s.length-1]>n&&(s[s.length-1]=n);for(let e=s.length-2;e>=0;e--)s[e+1]-s[e]<o&&(s[e]=s[e+1]-o);s[0]<t&&(s[0]=t)}return s}function Mx(e,t,n){let{outerRadius:r,fontSize:i=12,bgColor:a=`#fff`}=n,o=r+2,s=o+Dx,c=Ex/s,l=[],u=[];for(let e of t){let t=(e.startAngle+e.endAngle)/2;t<Math.PI?u.push({...e,midAngle:t}):l.push({...e,midAngle:t})}function d(t,n){if(t.length===0)return;t.sort((e,t)=>e.midAngle-t.midAngle);let r=n?.05:Math.PI+.05,l=n?Math.PI-.05:2*Math.PI-.05,u=jx(t.map(e=>e.midAngle),r,l,c),d=n?1:-1,f=e.append(`g`).attr(`class`,`bc-arc-labels`);t.forEach((e,t)=>{let r=e.showLabel!==!1,c=e.showValue!==!1;if(!r&&!c)return;let l=u[t]-Math.PI/2,p=Math.cos(l)*o,m=Math.sin(l)*o,h=Math.cos(l)*s,g=Math.sin(l)*s,_=h+d*Ox;f.append(`polyline`).attr(`class`,`bc-arc-label-line`).attr(`points`,`${p},${m} ${h},${g} ${_},${g}`).attr(`fill`,`none`).attr(`stroke`,`var(--bc-text-color, #999)`).attr(`stroke-width`,1).attr(`opacity`,.5);let v=_+d*4,y=f.append(`text`).attr(`class`,`bc-arc-direct-label`).attr(`x`,v).attr(`y`,g).attr(`text-anchor`,n?`start`:`end`).attr(`font-size`,`${i}px`);if(r&&y.append(`tspan`).attr(`x`,v).attr(`dy`,c?`-0.1em`:`0.35em`).attr(`font-weight`,`bold`).attr(`fill`,Tr(e.color,a)).text(e.label),c){let t=e.displayAsPercentage&&e.percentage!=null?`${Math.round(e.percentage)}%`:String(e.value);y.append(`tspan`).attr(`x`,v).attr(`dy`,r?`1.2em`:`0.35em`).attr(`fill`,`var(--bc-text-color, #666)`).text(t)}})}d(u,!0),d(l,!1)}var Nx=.3;function Px(e,t,n){let{outerRadius:r,innerRadius:i=0,fontSize:a=12}=n,o=(i+r)/2,s=e.append(`g`).attr(`class`,`bc-arc-labels-inside`),c=[],l=r-i;for(let e of t){if(e.endAngle-e.startAngle<Nx||Ah(e.label,a)>l*2){c.push(e);continue}let t=e.showLabel!==!1,n=e.showValue!==!1;if(!t&&!n)continue;let r=(e.startAngle+e.endAngle)/2-Math.PI/2,i=Math.cos(r)*o,u=Math.sin(r)*o,d=s.append(`text`).attr(`class`,`bc-arc-inside-label`).attr(`x`,i).attr(`y`,u).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`${a}px`),f=Sr(e.color);if(t&&d.append(`tspan`).attr(`x`,i).attr(`dy`,n?`-0.5em`:`0em`).attr(`font-weight`,`bold`).attr(`fill`,f).text(e.label),n){let n=e.displayAsPercentage&&e.percentage!=null?`${Math.round(e.percentage)}%`:String(e.value);d.append(`tspan`).attr(`x`,i).attr(`dy`,t?`1.2em`:`0em`).attr(`fill`,f).attr(`opacity`,.85).text(n)}}c.length>0&&Mx(e,c,{outerRadius:r,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:n.bgColor})}function Fx(e,t,n){let{outerRadius:r,innerRadius:i=0,fontSize:a=12,bgColor:o}=n,s=(i+r)/2,c=[],l=[],u=r-i;for(let e of t){let t=e.endAngle-e.startAngle,n=t*s,r=Ah(e.label,a);n>r*1.2&&t>=Nx&&r<=u*2?c.push(e):l.push(e)}c.length>0&&Px(e,c,{outerRadius:r,innerRadius:i,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:o}),l.length>0&&Mx(e,l,{outerRadius:r,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:o})}function Ix(e,t,n={width:0,height:0}){if(e.length===0)return{left:0,right:0,top:0,bottom:0};let r=48+jh(e,kx)+6,i=e.length*Ex/2,a=Math.max(10,i-t+20),o=Lx(r,n.width),s=Lx(a,n.height);return{left:o,right:o,top:s,bottom:s}}function Lx(e,t){return t>0?Math.min(e,t*Ax):e}var Rx=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function zx(e,t,n={},r=!1){eg(r),vx(e);let i=t,a=[],o=[],s=[],c=null,l,u,d,f=Wg.for(e);if(r){let t=Cy(e);u=t?.margin,d=t?.plotRect,f.detach(),t?.chartType===`line-multi`?(a=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),o=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),s=Array.from(e.querySelectorAll(`.bc-frame .bc-symbols`))):t&&(c=rg(e)),l=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))l.set(e,n);e.replaceChildren()}let{body:p}=mh(e,n.frame),m=i.series??[],h=m.filter(e=>!ix(e.name,n.seriesOverrides));(n.sortMode===`total`||n.sortMode===`within-groups`)&&(h=[...h].sort((e,t)=>{let n=e.values.reduce((e,t)=>e+t,0);return t.values.reduce((e,t)=>e+t,0)-n}));let g=Qb(n.colors??Rx,m.length),_=h.map(e=>e.name),v=xy(n.colorizes),y=n.seriesOverrides,b=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,x=b?`direct`:n.legend===!1?`none`:`legend`,S=_.filter(e=>ax(e,x,y)===`direct`),C=n.legend!==!1&&!b,w=Yh(p).width,T=n.legendPosition??`top`,E=w>0&&w<350&&(T===`left`||T===`right`)?`top`:T,D=n.legendAnchor??`start`,O=Si(i.labels,n.horizontalAxis?.range),k=O.map(e=>i.labels[e]);h=h.map(e=>({...e,values:O.map(t=>e.values[t])})),i={...i,labels:k,series:h};let ee=h.flatMap(e=>e.values),A=Gh(ee,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),j=qh(w,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,A),M=S.length>0?Wb(S):0,N=j.top!=null,P=Math.max(0,w-(j.left??50)-(j.right??20)-M),F=C?Ub(_,E,P):{width:0,height:0},I=C?F.height+15:0,L={...j};C&&E===`top`&&(L.top=I+(N?15:0)),C&&E===`bottom`&&(L.bottom=(L.bottom??24)+I),C&&E===`left`&&(L.left=(L.left??50)+F.width+10),C&&E===`right`&&(L.right=(L.right??20)+F.width+10),M>0&&(L.right=(L.right??20)+M);let R=Dg(i.labels,Math.max(0,Yh(p).width-(L.left??50)-(L.right??20)),n.horizontalAxis);R!==void 0&&(L.bottom=R);let{chartArea:z,width:B,height:V,margin:H}=Zh(p,L),te=Nh(u,H),[ne,re]=wi(ee,n.verticalAxis?.range,n.verticalAxis?.scaleType,!1),ie=cd().domain(i.labels).range([0,B]).padding(n.edgePadding?.6:0),ae=ie,oe=e=>ie(i.labels[e])??0,se=n.verticalAxis?.scaleType===`log`?Ed().domain([ne,re]).nice().range([V,0]):Sd().domain([ne,re]).nice().range([V,0]),ce=se.domain(),le=ce[0]<0&&ce[1]>0?se(0):void 0;f.attach(z,te),f.update({vertical:{scale:se,height:V,options:{...n.verticalAxis,gridWidth:B,topPadding:H.top}},horizontal:{scale:ae,height:V,options:{...n.horizontalAxis,width:B,zeroY:le}}});let ue=z.ownerSVGElement,de=Dy(ue,e,`plot`,{x:0,y:0,width:B,height:V}),U=$(z).append(`g`).attr(`clip-path`,`url(#${de})`),W=U.node(),fe=h.map(e=>({name:e.name,values:e.values,colorIndex:m.findIndex(t=>t.name===e.name)})),pe=hx(n.interpolation);n.areaFills?.length&&Bx(W,n.areaFills,h,oe,i.labels.length,se,pe);let me=e=>Number.isFinite(e),he=[];h.forEach((e,t)=>{i.labels.forEach((n,r)=>{me(e.values[r])&&he.push({label:n,value:e.values[r],series:e.name,colorIndex:t})})});let ge=n.lineSymbols,_e={solid:``,dotted:`2,4`,dashed:`8,4`,"dash-dot":`8,4,2,4`},ve=n.valueLabels??!1,ye=rb(n.highlights,_),be=n.areaFill??!1,xe=n.areaFillOpacity??.2,Se=e=>v.get(e.name)??ex(e.name,e.colorIndex,g,y),G=Qp().curve(pe).defined(me).x((e,t)=>oe(t)).y0(V).y1(e=>se(e)),K=Py(e),Ce=$(W).append(`g`).node(),we=$(W).append(`g`).node(),Te=new Set(fe.map(e=>e.name));if(r){for(let e of a)Te.has(e.__data__?.name??``)&&Ce.appendChild(e);for(let e of o)Te.has(e.__data__?.name??``)&&we.appendChild(e)}Ky(K,{role:`series-area`,parent:Ce,selector:`.bc-area`,data:be?fe:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({"data-series":e.name,d:G(e.values)??``,fill:Se(e),opacity:ib(ye,e.name,xe)})}),Ky(K,{role:`series-line`,parent:we,selector:`.bc-line`,data:fe,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>{let t=rx(e.name,n.interpolation??`linear`,y),r=Zp().curve(hx(t)).defined(me).x((e,t)=>oe(t)).y(e=>se(e));return{"data-series":e.name,d:r(e.values)??``,fill:`none`,stroke:Se(e),style:`stroke-width:${nx(e.name,y)}`,"stroke-dasharray":_e[tx(e.name,y)]??``,opacity:ib(ye,e.name,1)}}}),$(W).append(`g`).selectAll(`.bc-dot`).data(he,e=>e.label+`\0`+e.series).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`data-series`,e=>e.series).attr(`cx`,e=>oe(i.labels.indexOf(e.label))).attr(`cy`,e=>se(e.value)).attr(`r`,3).attr(`fill`,e=>Se({name:e.series,values:[],colorIndex:e.colorIndex})).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let Ee={left:H.left,top:H.top,width:B,height:V};if(eb(K,{svg:ue,clipId:de,group:z,from:d,to:Ee,active:r&&(o.length>0||a.length>0)}),n.annotations?.length){let t=i.labels.map((e,t)=>({label:e,value:h[0]?.values[t]??0}));yy(z,n.annotations,{scaleX:ae,scaleY:se,data:t,width:B,height:V,backgroundColor:wr(e),transition:r,priorAnnotations:l})}let De=$(z).insert(`g`,()=>W.nextSibling).attr(`class`,`bc-value-labels`);he.forEach(e=>{if(!ox(e.series,ve,y))return;let t=oe(i.labels.indexOf(e.label)),n=se(e.value),r=vb(String(e.value),t,n,{width:B,height:V,margin:H});De.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.series).attr(`x`,r.x).attr(`y`,r.y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(String(e.value))}),(n.tooltips||n.crosshair)&&xx(z,{width:B,height:V,points:he.map(e=>({cx:oe(i.labels.indexOf(e.label)),cy:se(e.value),label:e.label,value:e.value,series:e.series,color:ex(e.series,e.colorIndex,g,y)})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e});let Oe=ge?{name:``,lineSymbols:!0,symbolShape:ge.symbol,symbolShowOn:ge.showOn,symbolStyle:ge.style,symbolSize:ge.size,symbolOpacity:ge.opacity}:void 0,ke=i.labels.length;h.forEach((e,t)=>{let n=cx(e.name,Oe,y);if(!n)return;let a={symbol:n.symbolShape??ge?.symbol??qr.Circle,showOn:n.symbolShowOn??ge?.showOn??Jr.FirstLast,style:n.symbolStyle??ge?.style??Yr.Filled,size:n.symbolSize??ge?.size??3.5,opacity:n.symbolOpacity??ge?.opacity??1},o=i.labels.map((n,r)=>({cx:oe(r),cy:se(e.values[r]),color:ex(e.name,t,g,y),index:r})).filter(e=>Number.isFinite(e.cy)),c=s.find(t=>t.getAttribute(`data-series-name`)===e.name),l,u=!1;c?(z.appendChild(c),l=$(c),u=!0):l=$(z).append(`g`).attr(`class`,`bc-symbols`).attr(`data-series`,e.name).attr(`data-series-name`,e.name),wx(l,o,ke,a,r&&u)});let Ae=i.labels.length-1,je=oe(Ae)+6,Me=[];if(h.forEach((e,t)=>{if(ax(e.name,x,y)!==`direct`)return;let n=e.values[Ae];if(!Number.isFinite(n))return;let r=y?.find(t=>t.name===e.name)?.labelText||e.name;Me.push({name:e.name,index:t,naturalY:se(n),text:r})}),Me.length>0){Me.sort((e,t)=>e.naturalY-t.naturalY);let e=jx(Me.map(e=>e.naturalY),0,V,14);Me.forEach((t,n)=>{$(z).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,t.name).attr(`x`,je).attr(`y`,e[n]).attr(`dy`,`0.35em`).attr(`font-size`,`11px`).attr(`fill`,ex(t.name,t.index,g,y)).text(t.text)})}let Ne=_.filter(e=>ax(e,x,y)===`legend`);if(C&&Ne.length>0){let e=Ne.map(e=>ex(e,m.findIndex(t=>t.name===e),g,y)),t=0,n=0;if(E===`top`){let e=N?15:0;n=-(F.height+10+e)}else E===`bottom`?n=V+25:E===`left`?t=-(F.width+10):E===`right`&&(t=B+10);Xb(z,Ne,e,n,E,D,B,V,t,[],{left:H.left,right:H.right})}wy(e,{chartType:`line-multi`,margin:H,plotRect:Ee}),c&&(ng(U.node()),ig(e,c))}function Bx(e,t,n,r,i,a,o){let s=$(e).append(`g`).attr(`class`,`bc-area-fills`);for(let e of t){let t=n.find(t=>t.name===e.from),i=n.find(t=>t.name===e.to);if(!t||!i)continue;let c=e.interpolation?hx(e.interpolation):o,l=(e.opacity??30)/100,u=e.color??`#ccc`,d=e.negativeColor;if(d)Hx(s,t.values,i.values,r,a,c,u,d,l);else{let e=Qp().curve(c).defined((e,t)=>Number.isFinite(e)&&Number.isFinite(i.values[t])).x((e,t)=>r(t)).y0((e,t)=>a(i.values[t])).y1(e=>a(e));s.append(`path`).attr(`class`,`bc-area-fill`).attr(`d`,e(t.values)??``).attr(`fill`,u).attr(`opacity`,l)}}}function Vx(e,t,n,r){let i=e-n,a=t-r;if(i===0&&a===0||i>0&&a>0||i<0&&a<0)return null;let o=a-i;if(o===0)return null;let s=-i/o;return s<0||s>1?null:s}function Hx(e,t,n,r,i,a,o,s,c){let l=t.length;if(l===0)return;let u=[],d=e=>Number.isFinite(t[e])&&Number.isFinite(n[e]);for(let e=0;e<l;e++){if(!d(e)){u.push(null);continue}let a=r(e),o=i(t[e]),s=i(n[e]);if(u.push({x:a,fromY:o,toY:s}),e<l-1&&d(e+1)){let c=i(t[e+1]),l=i(n[e+1]),d=Vx(o,c,s,l);if(d!==null&&d>0&&d<1){let t=a+d*(r(e+1)-a),n=o+d*(c-o),i=s+d*(l-s);u.push({x:t,fromY:n,toY:i})}}}let f=[],p=[],m=null;for(let e of u){if(!e){p.length>=2&&m!==null&&f.push({points:p,positive:m}),p=[],m=null;continue}let t=e.fromY-e.toY,n=t<0;m===null?(m=t===0?null:n,p.push(e)):t===0?(p.push(e),p.length>=2&&f.push({points:p,positive:m}),p=[e],m=null):m===n?p.push(e):(p.push(e),p.length>=2&&f.push({points:p,positive:m}),p=[e],m=n)}p.length>=2&&m!==null&&f.push({points:p,positive:m});for(let t of f){let n=t.points,r=`M${n[0].x},${n[0].fromY}`;for(let e=1;e<n.length;e++)r+=`L${n[e].x},${n[e].fromY}`;for(let e=n.length-1;e>=0;e--)r+=`L${n[e].x},${n[e].toY}`;r+=`Z`,e.append(`path`).attr(`class`,`bc-area-fill ${t.positive?`bc-area-fill-pos`:`bc-area-fill-neg`}`).attr(`d`,r).attr(`fill`,t.positive?o:s).attr(`opacity`,c)}}var Ux=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function Wx(e){return Zu(`,`)(Number(e.toPrecision(12)))}var Gx=class extends ch{initialize(){}};function Kx(e,t,n={},r=!1){qx(e,t,n,.6,r)}function qx(e,t,n,r,i=!1){eg(i);let a=null,o;if(i){let t=Cy(e),n=r>0?`donut`:`pie`;t&&t.chartType!==n&&(a=rg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))o.set(e,n);e.replaceChildren()}let{body:s}=mh(e,n.frame),c=[...t.labels],l=[...t.values];if(n.sort===Xr.Ascending||n.sort===Xr.Descending){let e=c.map((e,t)=>({label:e,value:l[t]}));e.sort((e,t)=>n.sort===Xr.Ascending?e.value-t.value:t.value-e.value),c=e.map(e=>e.label),l=e.map(e=>e.value)}if(n.sliceMax&&n.sliceMax>0&&c.length>n.sliceMax){let e=n.sliceMax-1,t=c.map((e,t)=>({label:e,value:l[t],i:t})).sort((e,t)=>t.value-e.value||e.i-t.i),r=t.slice(0,e).sort((e,t)=>e.i-t.i),i=t.slice(e).reduce((e,t)=>e+t.value,0);c=[...r.map(e=>e.label),n.sliceGroupLabel??`Others`],l=[...r.map(e=>e.value),i]}let u=l.reduce((e,t)=>e+t,0),d=l.map(e=>u>0?e/u*100:0),f=Qb(n.colors??Ux,c.length),p=typeof n.directLabelling==`string`?n.directLabelling:n.directLabelling?ii.Auto:ii.Off,m=!!p&&(p!==ii.Auto||n.legend!==!0),h=(n.showValues??!0)&&!m?l.map((e,t)=>`(${n.displayAsPercentage?`${Math.round(d[t])}%`:Wx(e)})`):[],g=n.legend!==!1&&!m,_=Yh(s).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x=h.length>0?c.map((e,t)=>`${e} ${h[t]}`):c,S=Math.max(0,_-50-20),C=g?Ub(x,y,S):{width:0,height:0},w=g?C.height+15:0,T={};if(g&&y===`top`&&(T.top=w),g&&y===`bottom`&&(T.bottom=24+w),g&&y===`left`&&(T.left=50+C.width+10),g&&y===`right`&&(T.right=20+C.width+10),m){let e=Yh(s),t=e.width-40,n=(e.height>0?e.height:400)-40,r=Math.min(t,n)/2,i=Ix(c,r,{width:t,height:n});T.left=(T.left??20)+i.left,T.right=(T.right??20)+i.right,T.top=(T.top??20)+i.top,T.bottom=(T.bottom??20)+i.bottom}let{chartArea:E,width:D,height:O,margin:k}=Zh(s,T),ee=Math.min(D,O)/2,A=ee*r,j=ad().domain(c).range(f);if(l.some(e=>e<0)){let e=c.filter((e,t)=>l[t]<0);console.warn(`[blueprint-chart] Ignoring ${e.length} negative slice(s) on an arc chart: ${e.join(`, `)}.`);let t=c.map((e,t)=>({label:e,value:l[t]})).filter(e=>e.value>=0);c=t.map(e=>e.label),l=t.map(e=>e.value)}let M=tm().sort(null),N=Gp().innerRadius(A).outerRadius(ee),P=$(E).append(`g`).attr(`transform`,`translate(${D/2},${O/2})`),F=xy(n.colorizes),I=M(l),L=I.map((e,t)=>({label:c[t],value:l[t],arc:e,color:F.get(c[t])??j(c[t])})),R=Py(e),z=rb(n.highlights,c);Ky(R,{role:`mark-per-category`,parent:P.append(`g`).node(),selector:`.bc-arc`,data:L,key:e=>e.label,insert:e=>e.append(`path`).attr(`class`,`bc-arc`),attrs:e=>{let t={"data-series":e.label,d:N(e.arc)??``,fill:e.color};return z.size>0?{...t,opacity:ib(z,e.label)}:t}});let B=new Gx(P);if(n.tooltips&&B.use(Av()),B.draw(L),n.annotations?.length){let t=n.annotations.filter(e=>e.kind===`range`);t.length&&console.warn(`[blueprint-chart] Range annotations have no meaning on an arc chart; ignoring ${t.length}.`);let r=new Map(L.map(e=>[e.label,N.centroid(e.arc)])),a=n.annotations.filter(e=>e.kind!==`range`);a.length&&by(a,{scaleX:ad().domain([...r.keys()]).range([...r.values()].map(e=>e[0]+D/2)),scaleY:Sd().domain([0,1]).range([0,1]),data:L.map(e=>({label:e.label,value:(r.get(e.label)?.[1]??0)+O/2})),width:D,height:O,backgroundColor:wr(e),transition:i,priorAnnotations:o}).postDraw({base:$(E)},void 0)}if(m){let t=I.map((e,t)=>({label:c[t],value:e.data,startAngle:e.startAngle,endAngle:e.endAngle,color:j(c[t]),percentage:d[t],displayAsPercentage:n.displayAsPercentage,showLabel:n.showLabels??!0,showValue:n.showValues??!0})),r=P,i={outerRadius:ee,innerRadius:A,chartWidth:D,chartHeight:O,bgColor:wr(e)};p===ii.Inside?Px(r,t,i):p===ii.Auto?Fx(r,t,i):Mx(r,t,i)}if(n.showTotal&&r>0&&!n.displayAsPercentage){let e=Wx(u);P.append(`text`).attr(`class`,`bc-arc-total-label`).attr(`text-anchor`,`middle`).attr(`dy`,`-0.3em`).attr(`font-size`,`11px`).attr(`fill`,`var(--bc-text-color, #555)`).attr(`opacity`,.7).text(`Total`),P.append(`text`).attr(`class`,`bc-arc-total-value`).attr(`text-anchor`,`middle`).attr(`dy`,`1em`).attr(`font-size`,`18px`).attr(`font-weight`,`bold`).attr(`fill`,`var(--bc-text-color, #555)`).text(e)}if(g){let e=0,t=0;y===`top`?t=-(C.height+10):y===`bottom`?t=O+25:y===`left`?e=-(C.width+10):y===`right`&&(e=D+10),Xb(E,c,f,t,y,b,D,O,e,h,{left:k.left,right:k.right})}wy(e,{chartType:r>0?`donut`:`pie`}),a&&(ng(P.node()),ig(e,a))}function Jx(e,t,n={},r=!1){qx(e,t,n,0,r)}function Yx(e,t,n={},r=!1){eg(r),vx(e);let i=[],a=[],o=null,s=null,c,l,u,d=Wg.for(e);if(r){let t=Cy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`area`?(i=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),a=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),o=e.querySelector(`.bc-frame .bc-symbols`)):t&&(s=rg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))c.set(e,n);e.replaceChildren()}let{body:f}=mh(e,n.frame),p=Yh(f).width,m=Gh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),h=qh(p,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m),g=Dg(t.labels,Math.max(0,p-(h.left??50)-(h.right??20)),n.horizontalAxis);g!==void 0&&(h.bottom=g);let{chartArea:_,width:v,height:y,margin:b}=Zh(f,h),x=Nh(l,b),S=Si(t.labels,n.horizontalAxis?.range),C=S.map(e=>t.labels[e]),w=S.map(e=>t.values[e]),T=C.map((e,t)=>({label:e,value:w[t]})),E=T.filter(e=>Number.isFinite(e.value)),D=cd().domain(C).range([0,v]).padding(n.edgePadding?.6:0),O=D,k=e=>D(e.label)??0,ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(w,n.verticalAxis?.range,n.verticalAxis?.scaleType),M=ee?Ed().domain([A,j]).nice().range([y,0]):Sd().domain([A,j]).nice().range([y,0]),N=M.domain(),P=N[0]<0&&N[1]>0?M(0):void 0;d.attach(_,x),d.update({vertical:{scale:M,height:y,options:{...n.verticalAxis,gridWidth:v,topPadding:b.top}},horizontal:{scale:O,height:y,options:{...n.horizontalAxis,width:v,zeroY:P}}});let F=_.ownerSVGElement,I=Dy(F,e,`plot`,{x:0,y:0,width:v,height:y}),L=$(_).append(`g`).attr(`clip-path`,`url(#${I})`),R=L.node(),z=n.colors?.[0]??`#4e79a7`,B=hx(n.interpolation??`monotoneX`),V=n.areaFillOpacity??.25,H=e=>Number.isFinite(e.value),te=Qp().curve(B).defined(H).x(e=>k(e)).y0(y).y1(e=>M(e.value)),ne=Zp().curve(B).defined(H).x(e=>k(e)).y(e=>M(e.value)),re=$(R).append(`g`).node(),ie=$(R).append(`g`).node();if(r){for(let e of i)re.appendChild(e);for(let e of a)ie.appendChild(e)}let ae=Py(e),oe=[{name:`area`,points:T}];Ky(ae,{role:`series-area`,parent:re,selector:`.bc-area`,data:oe,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({d:te(e.points)??``,fill:z,opacity:V})}),Ky(ae,{role:`series-line`,parent:ie,selector:`.bc-line`,data:oe,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>({d:ne(e.points)??``,fill:`none`,stroke:z,"stroke-width":2})}),$(R).append(`g`).selectAll(`.bc-dot`).data(E,e=>e.label).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`cx`,e=>k(e)).attr(`cy`,e=>M(e.value)).attr(`r`,3).attr(`fill`,z).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let se={left:b.left,top:b.top,width:v,height:y};if(eb(ae,{svg:F,clipId:I,group:_,from:u,to:se,active:r&&(i.length>0||a.length>0)}),n.annotations?.length&&yy(_,n.annotations,{scaleX:O,scaleY:M,data:T,width:v,height:y,backgroundColor:wr(e),transition:r,priorAnnotations:c}),(n.tooltips||n.crosshair)&&xx(_,{width:v,height:y,points:E.map(e=>({cx:k(e),cy:M(e.value),label:e.label,value:e.value,color:z})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e}),n.valueLabels){let e=$(_).insert(`g`,()=>R.nextSibling),t=e=>vb(String(e.value),k(e),M(e.value),{width:v,height:y,margin:b});e.selectAll(`.bc-value-label`).data(E,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`x`,e=>t(e).x).attr(`y`,e=>t(e).y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(e=>String(e.value))}if(n.lineSymbols){let e=T.map((e,t)=>({cx:k(e),cy:M(e.value),color:z,index:t})).filter(e=>Number.isFinite(e.cy)),t;o?(_.appendChild(o),t=$(o)):t=$(_).append(`g`).attr(`class`,`bc-symbols`),wx(t,e,T.length,n.lineSymbols,r)}wy(e,{chartType:`area`,margin:b,plotRect:se}),s&&(ng(L.node()),ig(e,s))}function Xx(e){let t=e.series??[];if(t.length===0)return[];let n=t.map(e=>e.name),r=!1,i=e.labels.map((e,n)=>{let i={_index:n};return t.forEach(e=>{let t=e.values[n]??0;t<0&&(r=!0),i[e.name]=t}),i});return Vm().keys(n).order(Rm).offset(r?Hm:Lm)(i)}function Zx(e){let t=e.series??[];if(t.length===0)return[];let n=t.map(e=>e.name),r=!1,i=e.labels.map((e,n)=>{let i={_index:n},a=t.reduce((e,t)=>e+Math.abs(t.values[n]??0),0);return t.forEach(e=>{let t=e.values[n]??0;t<0&&(r=!0),i[e.name]=a>0?t/a*100:0}),i});return Vm().keys(n).order(Rm).offset(r?Hm:Lm)(i)}var Qx=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function $x(e,t,n={},r=!1){eg(r),vx(e);let i=t,a=[],o=[],s=null,c,l,u,d=Wg.for(e);if(r){let t=Cy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`area-stacked`?(a=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),o=Array.from(e.querySelectorAll(`.bc-frame .bc-line`))):t&&(s=rg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))c.set(e,n);e.replaceChildren()}let{body:f}=mh(e,n.frame),p=Si(i.labels,n.horizontalAxis?.range);if(p.length<i.labels.length){let e=p.map(e=>i.labels[e]),t=(i.series??[]).map(e=>({...e,values:p.map(t=>e.values[t])}));i={labels:e,values:p.map(e=>i.values[e]),series:t}}let m=Zb(i),h=m.filter(e=>!ix(e.name,n.seriesOverrides)),g=Qb(n.colors??Qx,m.length),_=h.map(e=>e.name),v=_.filter(Boolean),y=n.seriesOverrides,b=xy(n.colorizes),x=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,S=x?`direct`:n.legend===!1?`none`:`legend`,C=_.filter(e=>ax(e,S,y)===`direct`),w=n.legend!==!1&&!x,T=Yh(f).width,E=n.legendPosition??`top`,D=T>0&&T<350&&(E===`left`||E===`right`)?`top`:E,O=n.legendAnchor??`start`,k=n.stacked!==!1,ee=n.stackPercent===!0||n.stackMode===ri.Percent,A=n.areaSortMode??Xr.None,j=n.areaLines!==!1,M=[...h];if(A!==Xr.None){let e=new Map(M.map(e=>[e.name,e.values.reduce((e,t)=>e+t,0)]));M.sort((t,n)=>{let r=(e.get(t.name)??0)-(e.get(n.name)??0);return A===Xr.Ascending?r:-r})}let N={labels:i.labels,values:i.values,series:M},P=ee?Zx(N):Xx(N),F=0;if(k)for(let e of P)for(let t of e)t[1]>F&&(F=t[1]);else for(let e of M)for(let t of e.values)t>F&&(F=t);ee&&(F=100);let I=[0,F],L=n.verticalAxis?.numberFormat??(ee?`|d|%`:void 0),R=Gh(I,n.verticalAxis?.range,L,n.verticalAxis?.scaleType),z=qh(T,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,R),B=C.length>0?Wb(C):0,V=z.top!=null,H=Math.max(0,T-(z.left??50)-(z.right??20)-B),te=w?Ub(v,D,H):{width:0,height:0},ne=w?te.height+15:0,re={...z};w&&D===`top`&&(re.top=ne+(V?15:0)),w&&D===`bottom`&&(re.bottom=(re.bottom??24)+ne),w&&D===`left`&&(re.left=(re.left??50)+te.width+10),w&&D===`right`&&(re.right=(re.right??20)+te.width+10),B>0&&(re.right=(re.right??20)+B);let ie=Dg(i.labels,Math.max(0,Yh(f).width-(re.left??50)-(re.right??20)),n.horizontalAxis);ie!==void 0&&(re.bottom=ie);let{chartArea:ae,width:oe,height:se,margin:ce}=Zh(f,re),le=Nh(l,ce),ue=cd().domain(i.labels).range([0,oe]).padding(n.edgePadding?.6:0),de=ue,U=e=>ue(i.labels[e])??0,[W,fe]=wi(I,n.verticalAxis?.range,n.verticalAxis?.scaleType),pe=(n.verticalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([W,fe]).nice().range([se,0]);d.attach(ae,le),d.update({vertical:{scale:pe,height:se,options:{...n.verticalAxis,numberFormat:L,gridWidth:oe,topPadding:ce.top}},horizontal:{scale:de,height:se,options:{...n.horizontalAxis,width:oe}}});let me=ae.ownerSVGElement,he=Dy(me,e,`plot`,{x:0,y:0,width:oe,height:se}),ge=$(ae).append(`g`).attr(`clip-path`,`url(#${he})`),_e=ge.node(),ve=hx(n.interpolation??`monotoneX`),ye=P.map(e=>{let t=m.findIndex(t=>t.name===e.key),n;return n=k?Array.from(e).map(e=>[pe(e[0]),pe(e[1])]):(M.find(t=>t.name===e.key)?.values??[]).map(e=>[pe(0),pe(e)]),{name:e.key,points:n,colorIndex:t>=0?t:0}}),be=rb(n.highlights,ye.map(e=>e.name)),xe=be.size>0,Se=n.areaFillOpacity==null?.85:n.areaFillOpacity,G=e=>b.get(e.name)??ex(e.name,e.colorIndex,g,y),K=Qp().curve(ve).x((e,t)=>U(t)).y0(e=>e[0]).y1(e=>e[1]),Ce=$(_e).append(`g`).node(),we=$(_e).append(`g`).node();if(r){for(let e of a)Ce.appendChild(e);for(let e of o)we.appendChild(e)}let Te=Py(e);Ky(Te,{role:`series-area`,parent:Ce,selector:`.bc-area`,data:ye,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({"data-series":e.name,d:K(e.points)??``,fill:G(e),opacity:xe?ib(be,e.name,Se):Se})}),Ky(Te,{role:`series-line`,parent:we,selector:`.bc-line`,data:j?ye:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>{let t=rx(e.name,n.interpolation??`monotoneX`,y),r=Zp().curve(hx(t)).x((e,t)=>U(t)).y(e=>e[1]);return{"data-series":e.name,d:r(e.points)??``,fill:`none`,stroke:G(e),"stroke-width":1,opacity:xe?ib(be,e.name,1):1}}});let Ee={left:ce.left,top:ce.top,width:oe,height:se};if(eb(Te,{svg:me,clipId:he,group:ae,from:u,to:Ee,active:r&&(a.length>0||o.length>0)}),n.annotations?.length){let t=i.labels.map((e,t)=>({label:e,value:h[0]?.values[t]??0}));yy(ae,n.annotations,{scaleX:de,scaleY:pe,data:t,width:oe,height:se,backgroundColor:wr(e),transition:r,priorAnnotations:c})}if(n.tooltips||n.crosshair){let t=[];P.forEach(e=>{let n=m.findIndex(t=>t.name===e.key);Array.from(e).forEach((r,a)=>{let o=r[1]-r[0];t.push({cx:U(a),cy:pe(r[1]),label:i.labels[a],value:Math.round(o*100)/100,series:e.key,color:ex(e.key,n,g,y)})})}),xx(ae,{width:oe,height:se,points:t,tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e})}let De=i.labels.length-1,Oe=U(De)+6,ke=[];if(h.forEach((e,t)=>{if(ax(e.name,S,y)!==`direct`)return;let n=P.find(t=>t.key===e.name);if(!n)return;let r=n[De];if(!r)return;let i=pe((r[0]+r[1])/2),a=y?.find(t=>t.name===e.name)?.labelText||e.name;ke.push({name:e.name,index:t,naturalY:i,text:a})}),ke.length>0){ke.sort((e,t)=>e.naturalY-t.naturalY);let e=jx(ke.map(e=>e.naturalY),0,se,14);ke.forEach((t,n)=>{$(ae).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,t.name).attr(`x`,Oe).attr(`y`,e[n]).attr(`dy`,`0.35em`).attr(`font-size`,`11px`).attr(`fill`,ex(t.name,t.index,g,y)).text(t.text)})}let Ae=v.filter(e=>ax(e,S,y)===`legend`);if(w&&Ae.length>0){let e=Ae.map(e=>ex(e,m.findIndex(t=>t.name===e),g,y)),t=0,n=0;if(D===`top`){let e=V?15:0;n=-(te.height+10+e)}else D===`bottom`?n=se+25:D===`left`?t=-(te.width+10):D===`right`&&(t=oe+10);Xb(ae,Ae,e,n,D,O,oe,se,t,[],{left:ce.left,right:ce.right})}wy(e,{chartType:`area-stacked`,margin:ce,plotRect:Ee}),s&&(ng(ge.node()),ig(e,s))}var eS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function tS(e,t,n){let r=[];for(let i of e){let e=i.key,a=n.findIndex(t=>t.name===e);for(let n=0;n<i.length;n++){let o=i[n];r.push({label:t[n],seriesName:e,seriesIndex:a,y0:o[0],y1:o[1],value:o[1]-o[0]})}}return r}function nS(e,t,n={},r=!1){eg(r);let i=[],a=null,o,s,c,l=Wg.for(e);if(r){let t=Cy(e);s=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`column-stacked`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-stacked`)):t&&(a=rg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))o.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Zb(t),f=d.filter(e=>!ix(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=Qb(n.colors??eS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=Yh(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x={labels:t.labels,values:t.values,series:f},S=n.stackMode===ri.Percent,C=tS(S?Zx(x):Xx(x),t.labels,d),w=S?100:Yi(C,e=>e.y1)??0,T=S?Math.min(0,Xi(C,e=>e.y0)??0):0,E=S?[T,w]:C.flatMap(e=>[e.y0,e.y1]),D=Gh(E,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),O=qh(_,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,D),k=Math.max(0,_-(O.left??50)-(O.right??20)),ee=Dg(t.labels,k,n.horizontalAxis);ee!==void 0&&(O.bottom=ee);let A=O.top!=null,j=Math.max(0,_-(O.left??50)-(O.right??20)),M=g?Ub(p,y,j):{width:0,height:0},N=g?M.height+15:0,P={...O};g&&y===`top`&&(P.top=N+(A?15:0)),g&&y===`bottom`&&(P.bottom=(P.bottom??24)+N),g&&y===`left`&&(P.left=(P.left??50)+M.width+10),g&&y===`right`&&(P.right=(P.right??20)+M.width+10);let{chartArea:F,width:I,height:L,margin:R}=Zh(u,P),z=Nh(s,R),B=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),B=e.map(e=>e.label)}let V=od().domain(B).range([0,I]).padding(Ci(n.barGap)),[H,te]=wi(E,n.verticalAxis?.range,n.verticalAxis?.scaleType),ne=(n.verticalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([H,te]).nice().range([L,0]);l.attach(F,z),l.update({vertical:{scale:ne,height:L,options:{...n.verticalAxis,gridWidth:I,topPadding:R.top}},horizontal:{scale:V,height:L,options:{...n.horizontalAxis,width:I}}});let re=F.ownerSVGElement,ie=Dy(re,e,`bars`,{x:0,y:0,width:I,height:L}),ae=$(F).append(`g`).attr(`clip-path`,`url(#${ie})`),oe=B===t.labels?C:B.flatMap(e=>C.filter(t=>t.label===e)),se=xy(n.colorizes),ce=rb(n.highlights,C.map(e=>e.seriesName)),le=Py(e),ue=ae.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ue.appendChild(e);Ky(le,{role:`mark-per-cell`,parent:ue,selector:`.bc-bar-stacked`,data:oe,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-stacked`),attrs:e=>{let t=se.get(e.seriesName)??ex(e.seriesName,e.seriesIndex,m,h),n=sx(e.seriesName,h),r={"data-series":e.seriesName,x:V(e.label)??0,y:ne(e.y1),width:V.bandwidth(),height:ne(e.y0)-ne(e.y1),fill:t};return n<1&&(r[`fill-opacity`]=n),ce.size>0&&(r.opacity=ib(ce,e.seriesName)),r}});let de={left:R.left,top:R.top,width:I,height:L};eb(le,{svg:re,clipId:ie,group:F,from:c,to:de,active:r&&i.length>0});let U=ky(ae);if(n.tooltips&&U.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&U.use(Mv({width:I,height:L,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:f.reduce((e,n)=>e+(n.values[t]??0),0)}));U.use(by(n.annotations,{scaleX:V,scaleY:ne,data:i,width:I,height:L,backgroundColor:wr(e),transition:r,priorAnnotations:o}))}let W=()=>U.draw(oe);le.state===`committing`?le.register(W):W(),wy(e,{chartType:`column-stacked`,margin:R,plotRect:de}),a&&(ng(ae.node()),ig(e,a));let fe=n.valueLabels??!1,pe=Bi(oe,e=>Yi(e,e=>e.y1)??0,e=>e.label),me=$(F).append(`g`).attr(`class`,`bc-value-labels`);if(oe.forEach(e=>{if(!ox(e.seriesName,fe,h))return;let t=(V(e.label)??0)+V.bandwidth()/2,r=Math.abs(ne(e.y0)-ne(e.y1)),i=ne(e.y0)-r/2,a=S?`${Math.round(e.y0<0?-e.value:e.value)}%`:n.valueLabels===`percent`?vh(e.value,pe.get(e.label)??0):String(Math.round(e.value*100)/100);if(!fb({text:a,placement:`inside`,orientation:`vertical`,barWidth:V.bandwidth(),barHeight:r}))return;let o=se.get(e.seriesName)??ex(e.seriesName,e.seriesIndex,m,h);me.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`y`,i).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(o)).text(a)}),g&&p.length>0){let e=p.map(e=>ex(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(y===`top`){let e=A?15:0;n=-(M.height+10+e)}else y===`bottom`?n=L+25:y===`left`?t=-(M.width+10):y===`right`&&(t=I+10);Xb(F,p,e,n,y,b,I,L,t,[],{left:R.left,right:R.right})}}var rS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function iS(e,t,n){let r=[];for(let i of e){let e=i.key,a=n.findIndex(t=>t.name===e);for(let n=0;n<i.length;n++){let o=i[n];r.push({label:t[n],seriesName:e,seriesIndex:a,y0:o[0],y1:o[1],value:o[1]-o[0]})}}return r}function aS(e,t,n={},r=!1){eg(r);let i=[],a=null,o,s,c,l=Wg.for(e);if(r){let t=Cy(e);s=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-stacked`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-stacked`)):t&&(a=rg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))o.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Zb(t),f=d.filter(e=>!ix(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=Qb(n.colors??rS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=Yh(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x={labels:t.labels,values:t.values,series:f},S=n.stackMode===ri.Percent,C=iS(S?Zx(x):Xx(x),t.labels,d),w=S?100:Yi(C,e=>e.y1)??0,T=S?Math.min(0,Xi(C,e=>e.y0)??0):0,E=Sb(_,n.verticalAxis?.labelPosition),D=n.categoryLabelLine===!0||E,O=Kh(t.labels),k=qh(_,D?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,O,n.horizontalAxis?.showAxis),ee=k.top!=null,A=Math.max(0,_-(k.left??50)-(k.right??20)),j=g?Ub(p,y,A):{width:0,height:0},M=g?j.height+15:0,N={...k};g&&y===`top`&&(N.top=M+(ee?15:0)),g&&y===`bottom`&&(N.bottom=(N.bottom??24)+M),g&&y===`left`&&(N.left=(N.left??50)+j.width+10),g&&y===`right`&&(N.right=(N.right??20)+j.width+10);let{chartArea:P,width:F,height:I,margin:L}=Zh(u,N),R=Nh(s,L),z=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),z=e.map(e=>e.label)}let[B,V]=wi(S?[T,w]:C.flatMap(e=>[e.y0,e.y1]),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),H=(n.horizontalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([B,V]).nice().range([0,F]),te=od().domain(z).range([0,I]).padding(Ci(n.barGap));l.attach(P,R),l.update({horizontal:{scale:H,height:I,options:{...n.horizontalAxis,width:F}},vertical:{scale:te,height:I,options:{...n.verticalAxis,labelPosition:D?zr.Off:n.verticalAxis?.labelPosition,topPadding:L.top,...E?{showAxis:!1}:{}}},order:`horizontal-first`});let ne=P.ownerSVGElement,re=Dy(ne,e,`bars`,{x:0,y:0,width:F,height:I}),ie=$(P).append(`g`).attr(`clip-path`,`url(#${re})`),ae=z===t.labels?C:z.flatMap(e=>C.filter(t=>t.label===e)),oe=D?bb(te.bandwidth()):0,se=xy(n.colorizes),ce=rb(n.highlights,C.map(e=>e.seriesName)),le=Py(e),ue=ie.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ue.appendChild(e);Ky(le,{role:`mark-per-cell`,parent:ue,selector:`.bc-bar-stacked`,data:ae,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-stacked`),attrs:e=>{let t=se.get(e.seriesName)??ex(e.seriesName,e.seriesIndex,m,h),n=sx(e.seriesName,h),r={"data-series":e.seriesName,x:H(e.y0),y:(te(e.label)??0)+oe,width:H(e.y1)-H(e.y0),height:Math.max(0,te.bandwidth()-oe),fill:t};return n<1&&(r[`fill-opacity`]=n),ce.size>0&&(r.opacity=ib(ce,e.seriesName)),r}});let de={left:L.left,top:L.top,width:F,height:I};eb(le,{svg:ne,clipId:re,group:P,from:c,to:de,active:r&&i.length>0});let U=ky(ie);if(n.tooltips&&U.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&U.use(Mv({width:F,height:I,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:f.reduce((e,n)=>e+(n.values[t]??0),0)}));U.use(by(n.annotations,{scaleX:te,scaleY:H,data:i,width:F,height:I,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:o}))}let W=()=>U.draw(ae);if(le.state===`committing`?le.register(W):W(),wy(e,{chartType:`bar-stacked`,margin:L,plotRect:de}),a&&(ng(ie.node()),ig(e,a)),D){let e=$(P).append(`g`).attr(`class`,`bc-category-labels`);for(let t of z){let n=te(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let fe=n.valueLabels??!1,pe=n.valueLabelPosition??ei.Auto,me=new Set,he=new Map;for(let e of z){let t=ae.filter(t=>t.label===e).sort((e,t)=>e.y1-t.y1);if(t.length>0){let e=t[t.length-1];me.add(e.label+`\0`+e.seriesName);for(let e=0;e<t.length-1;e++){let n=t[e].label+`\0`+t[e].seriesName;he.set(n,H(t[e+1].y1)-H(t[e].y1))}}}let ge=new Map,_e=Bi(ae,e=>Yi(e,e=>e.y1)??0,e=>e.label),ve=$(P).append(`g`).attr(`class`,`bc-value-labels`);if(ae.forEach(e=>{if(!ox(e.seriesName,fe,h))return;let t=S?`${Math.round(e.y0<0?-e.value:e.value)}%`:n.valueLabels===`percent`?vh(e.value,_e.get(e.label)??0):String(Math.round(e.value*100)/100),r=H(e.y1)-H(e.y0),i=t.length*6.5+8,a=r>=i,o=(te(e.label)??0)+oe+(te.bandwidth()-oe)/2,s=ex(e.seriesName,e.seriesIndex,m,h),c=me.has(e.label+`\0`+e.seriesName),l=pe===ei.Outside||pe===ei.Auto&&!a&&c,u=fb({text:t,placement:l?`outside`:`inside`,orientation:`horizontal`,barWidth:r,barHeight:te.bandwidth()}),d=()=>{let n=H(e.y0)+r/2;ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`opacity`,0).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(s)).text(t)};if(l){if(pe===ei.Inside)d();else{let n=H(e.y1)+4,r=ge.get(e.label)??0,a=he.get(e.label+`\0`+e.seriesName),s=n<r,c=a!==void 0&&i+4>a,l=F+L.right-2,f=n+i>l;s||c||f||!u?d():(ge.set(e.label,n+i),ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(t))}}else if(!a||!u)d();else{let n=H(e.y0)+r/2;ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(s)).text(t)}}),g&&p.length>0){let e=p.map(e=>ex(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(y===`top`){let e=ee?15:0;n=-(j.height+10+e)}else y===`bottom`?n=I+25:y===`left`?t=-(j.width+10):y===`right`&&(t=F+10);Xb(P,p,e,n,y,b,F,I,t,[],{left:L.left,right:L.right})}}var oS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],sS=16,cS=4,lS=20,uS=`600 11px sans-serif`,dS=`…`;function fS(e,t){if(_b(e,uS)<=t)return e;let n=e;for(;n.length>0&&_b(n+dS,uS)>t;)n=n.slice(0,-1);return n+dS}function pS(e,t,n,r,i){let a=e.length;if(a===0)return[];let o=Math.max(0,(n-(a-1)*sS)/a),s=r?e.flatMap(e=>e.values):[];return e.map((e,n)=>{let[a,c]=wi(r?s:e.values,i?.range,i?.scaleType),l=(i?.scaleType===Lr.Log?Ed():Sd()).domain([a,c]).nice().range([0,o]);return{seriesName:e.name,seriesIndex:t.findIndex(t=>t.name===e.name),xOffset:n*(o+sS),panelWidth:o,xScale:l}})}function mS(e,t,n,r){let i=[];for(let a of e){let e=r.find(e=>e.name===a.seriesName);if(e)for(let r of t){let t=n.indexOf(r),o=t>=0?e.values[t]??0:0,s=Math.max(0,a.xScale(o)-a.xScale(0));i.push({label:r,seriesName:a.seriesName,seriesIndex:a.seriesIndex,value:o,xPos:a.xOffset,barWidth:s})}}return i}function hS(e,t,n={},r=!1){eg(r);let i=[],a=null,o,s,c,l=Wg.for(e);if(r){let t=Cy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-split`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-split`)):t&&(a=rg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))c.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Zb(t),f=d.filter(e=>!ix(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=Qb(n.colors??oS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=Yh(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x=Sb(_,n.verticalAxis?.labelPosition),S=n.categoryLabelLine===!0||x,C=Kh(t.labels),w=qh(_,S?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,C,n.horizontalAxis?.showAxis);w.top=(w.top??12)+lS;let T=Math.max(0,_-(w.left??50)-(w.right??20)),E=g?Ub(p,y,T):{width:0,height:0},D=g?E.height+15:0,O={...w};g&&y===`top`&&(O.top=D+lS),g&&y===`bottom`&&(O.bottom=(O.bottom??24)+D),g&&y===`left`&&(O.left=(O.left??50)+E.width+10),g&&y===`right`&&(O.right=(O.right??20)+E.width+10);let{chartArea:k,width:ee,height:A,margin:j}=Zh(u,O),M=Nh(o,j),N=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),N=e.map(e=>e.label)}let P=od().domain(N).range([0,A]).padding(Ci(n.barGap)),F=S?bb(P.bandwidth()):0;l.attach(k,M),l.update({vertical:{scale:P,height:A,options:{...n.verticalAxis,labelPosition:S?zr.Off:n.verticalAxis?.labelPosition,topPadding:j.top,...x?{showAxis:!1}:{}}},order:`horizontal-first`});let I=pS(f,d,ee,n.sharedScale===!0,n.horizontalAxis),L=$(k).append(`g`).attr(`class`,`bc-split-axes`);for(let e of I)Pg(L.append(`g`).attr(`transform`,`translate(${e.xOffset},0)`).node(),e.xScale,A,{...n.horizontalAxis,width:e.panelWidth});let R=k.ownerSVGElement,z=Dy(R,e,`bars`,{x:0,y:0,width:ee,height:A}),B=$(k).append(`g`).attr(`clip-path`,`url(#${z})`),V=$(k).append(`g`).attr(`class`,`bc-split-headers`);for(let e of I)V.append(`text`).attr(`class`,`bc-split-header`).attr(`x`,e.xOffset+e.panelWidth/2).attr(`y`,-10).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(fS(e.seriesName,e.panelWidth));let H=mS(I,N,t.labels,d),te=rb(n.highlights,H.map(e=>e.seriesName)),ne=xy(n.colorizes),re=Py(e),ie=B.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ie.appendChild(e);Ky(re,{role:`mark-per-cell`,parent:ie,selector:`.bc-bar-split`,data:H,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-split`),attrs:e=>{let t=ne.get(e.seriesName)??ex(e.seriesName,e.seriesIndex,m,h),n=sx(e.seriesName,h),r={"data-series":e.seriesName,x:e.xPos,y:(P(e.label)??0)+F,width:e.barWidth,height:Math.max(0,P.bandwidth()-F),fill:t};return n<1&&(r[`fill-opacity`]=n),te.size>0&&(r.opacity=ib(te,e.seriesName)),r}});let ae={left:j.left,top:j.top,width:ee,height:A};eb(re,{svg:R,clipId:z,group:k,from:s,to:ae,active:r&&i.length>0});let oe=ky(B);if(n.tooltips&&oe.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&oe.use(Mv({width:ee,height:A,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length&&I.length>0){let i=I[0],a=f.find(e=>e.name===i.seriesName),o=t.labels.map((e,t)=>({label:e,value:a?.values[t]??0}));oe.use(by(n.annotations,{scaleX:P,scaleY:i.xScale,data:o,width:ee,height:A,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:c}))}let se=()=>oe.draw(H);if(re.state===`committing`?re.register(se):se(),wy(e,{chartType:`bar-split`,margin:j,plotRect:ae}),a&&(ng(B.node()),ig(e,a)),S){let e=$(k).append(`g`).attr(`class`,`bc-category-labels`);for(let t of N){let n=P(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let ce=n.valueLabels??!0,le=n.valueLabelPosition??ei.Auto,ue=$(k).append(`g`).attr(`class`,`bc-value-labels`);if(H.forEach(e=>{if(!ox(e.seriesName,ce,h))return;let t=I.find(t=>t.seriesName===e.seriesName);if(!t)return;let n=ex(e.seriesName,e.seriesIndex,m,h),r=e.xPos+e.barWidth,i=Math.max(0,P.bandwidth()-F),a=(P(e.label)??0)+F+i/2,o=r+cS+_b(String(e.value))<=t.xOffset+t.panelWidth,s=le===ei.Inside||!o||le===ei.Auto&&e.barWidth>30;if(!fb({text:String(e.value),placement:s?`inside`:`outside`,orientation:`horizontal`,barWidth:e.barWidth,barHeight:i}))return;let c,l,u;s?(c=r-cS,l=`end`,u=Sr(n)):(c=r+cS,l=`start`,u=`currentColor`),ue.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,c).attr(`y`,a).attr(`text-anchor`,l).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,u).text(String(e.value))}),g&&p.length>0){let e=p.map(e=>ex(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;y===`top`?n=-(E.height+10+lS):y===`bottom`?n=A+25:y===`left`?t=-(E.width+10):y===`right`&&(t=ee+10),Xb(k,p,e,n,y,b,ee,A,t,[],{left:j.left,right:j.right})}}var gS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function _S(e,t,n={},r=!1){eg(r);let i=[],a=null,o,s,c,l=Wg.for(e);if(r){let t=Cy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-grouped`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-grouped`)):t&&(a=rg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of Pv(t))c.set(e,n);e.replaceChildren()}let{body:u}=mh(e,n.frame),d=Zb(t),f=d.filter(e=>!ix(e.name,n.seriesOverrides)),p=f.map(e=>e.name),m=p.filter(Boolean),h=Qb(n.colors??gS,d.length),g=n.seriesOverrides,_=n.legend!==!1,v=Yh(u).width,y=n.legendPosition??`top`,b=v>0&&v<350&&(y===`left`||y===`right`)?`top`:y,x=n.legendAnchor??`start`,S=Sb(v,n.verticalAxis?.labelPosition),C=n.categoryLabelLine===!0||S,w=Kh(t.labels),T=qh(v,C?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,w,n.horizontalAxis?.showAxis),E=Math.max(0,v-(T.left??50)-(T.right??20)),D=_?Ub(m,b,E):{width:0,height:0},O=_?D.height+15:0,k={...T};_&&b===`top`&&(k.top=O),_&&b===`bottom`&&(k.bottom=(k.bottom??24)+O),_&&b===`left`&&(k.left=(k.left??50)+D.width+10),_&&b===`right`&&(k.right=(k.right??20)+D.width+10);let{chartArea:ee,width:A,height:j,margin:M}=Zh(u,k),N=Nh(o,M),P=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),P=e.map(e=>e.label)}let F=od().domain(P).range([0,j]).paddingInner(Ci(n.barGap)).paddingOuter(.05),I=C?bb(F.bandwidth()):0,L=Math.max(0,F.bandwidth()-I),R=od().domain(p).range([0,L]).padding(.05),[z,B]=wi(f.flatMap(e=>e.values),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),V=(n.horizontalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([z,B]).nice().range([0,A]);l.attach(ee,N),l.update({vertical:{scale:F,height:j,options:{...n.verticalAxis,labelPosition:C?zr.Off:n.verticalAxis?.labelPosition,topPadding:M.top,...S?{showAxis:!1}:{}}},horizontal:{scale:V,height:j,options:{...n.horizontalAxis,width:A}},order:`horizontal-first`});let H=ee.ownerSVGElement,te=Dy(H,e,`bars`,{x:0,y:0,width:A,height:j}),ne=$(ee).append(`g`).attr(`clip-path`,`url(#${te})`);if(n.barBackground){let e=(n.colors??gS)[0];ne.selectAll(`.bc-bar-bg`).data(P,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,0).attr(`y`,e=>(F(e)??0)+I).attr(`width`,A).attr(`height`,F.bandwidth()-I).attr(`fill`,e).attr(`opacity`,.18)}if(n.barSeparators&&P.length>1){let e=F.step();for(let t=1;t<P.length;t++){let n=(F(P[t-1])??0)+F.bandwidth()+(e-F.bandwidth())/2;ne.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,0).attr(`x2`,A).attr(`y1`,n).attr(`y2`,n).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}let re=[];for(let e of P){let n=t.labels.indexOf(e);for(let t of f){let r=d.findIndex(e=>e.name===t.name);re.push({label:e,seriesName:t.name,seriesIndex:r,value:n>=0?t.values[n]??0:0})}}let ie=rb(n.highlights,re.map(e=>e.seriesName)),ae=xy(n.colorizes),oe=Py(e),se=ne.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),se.appendChild(e);Ky(oe,{role:`mark-per-cell`,parent:se,selector:`.bc-bar-grouped`,data:re,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-grouped`),attrs:e=>{let t=ae.get(e.seriesName)??ex(e.seriesName,e.seriesIndex,h,g),n=sx(e.seriesName,g),r={"data-series":e.seriesName,x:V(0),y:(F(e.label)??0)+I+(R(e.seriesName)??0),width:Math.max(0,V(e.value)-V(0)),height:R.bandwidth(),fill:t};return n<1&&(r[`fill-opacity`]=n),ie.size>0&&(r.opacity=ib(ie,e.seriesName)),r}});let ce={left:M.left,top:M.top,width:A,height:j};eb(oe,{svg:H,clipId:te,group:ee,from:s,to:ce,active:r&&i.length>0});let le=ky(ne);if(n.tooltips&&le.use(Av({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&le.use(Mv({width:A,height:j,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:Math.max(0,...f.map(e=>e.values[t]??0))}));le.use(by(n.annotations,{scaleX:F,scaleY:V,data:i,width:A,height:j,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:c}))}let ue=()=>le.draw(re);if(oe.state===`committing`?oe.register(ue):ue(),wy(e,{chartType:`bar-grouped`,margin:M,plotRect:ce}),a&&(ng(ne.node()),ig(e,a)),C){let e=$(ee).append(`g`).attr(`class`,`bc-category-labels`);for(let t of P){let n=F(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let de=n.valueLabels??!0,U=n.valueLabelPosition??ei.Auto,W=$(ee).append(`g`).attr(`class`,`bc-value-labels`);if(re.forEach(e=>{if(!ox(e.seriesName,de,g))return;let t=ex(e.seriesName,e.seriesIndex,h,g),n=Math.max(0,V(e.value)-V(0)),r=V(0)+n,i=(F(e.label)??0)+I+(R(e.seriesName)??0)+R.bandwidth()/2,a=U===ei.Inside||U===ei.Auto&&n>30;if(!fb({text:String(e.value),placement:a?`inside`:`outside`,orientation:`horizontal`,barWidth:n,barHeight:R.bandwidth()}))return;let o,s,c;a?(o=r-4,s=`end`,c=Sr(t)):(o=r+4,s=`start`,c=`currentColor`),W.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,o).attr(`y`,i).attr(`text-anchor`,s).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,c).text(String(e.value))}),_&&m.length>0){let e=m.map(e=>ex(e,d.findIndex(t=>t.name===e),h,g)),t=0,n=0;b===`top`?n=-(D.height+10):b===`bottom`?n=j+25:b===`left`?t=-(D.width+10):b===`right`&&(t=A+10),Xb(ee,m,e,n,b,x,A,j,t,[],{left:M.left,right:M.right})}}var vS=new Map;function yS(e,t,n){vS.set(e,{renderer:t,options:n})}function bS(e){return vS.get(e)?.renderer}function xS(e){return vS.get(e)?.options??[]}var SS=[{value:Rr.Solid,text:`Solid`},{value:Rr.Dashed,text:`Dashed`},{value:Rr.Dotted,text:`Dotted`},{value:Rr.None,text:`None`}],CS={key:`colors`,type:Q.Colors,label:`Colors`},wS={key:`colorPalette`,type:Q.Select,label:`Color palette`,default:`Blueprint`,choices:[{value:``,text:`Custom`},...oe().map(e=>({value:e.name,text:e.label}))]},TS={key:`autoContrast`,type:Q.Boolean,label:`Auto-adjust contrast`,default:!1},ES={key:`allowDarkMode`,type:Q.Boolean,label:`Allow dark mode`,default:!0},DS={key:`legend`,type:Q.Boolean,label:`Show legend`,default:!0},OS={key:`legendPosition`,type:Q.Select,label:`Legend position`,default:Qr.Top,choices:[{value:Qr.Top,text:`Top`},{value:Qr.Bottom,text:`Bottom`},{value:Qr.Left,text:`Left`},{value:Qr.Right,text:`Right`}]},kS={key:`legendAnchor`,type:Q.Select,label:`Legend anchor`,default:$r.Start,choices:[{value:$r.Start,text:`Start`},{value:$r.Middle,text:`Middle`},{value:$r.End,text:`End`}]},AS={key:`directLabelling`,type:Q.Select,label:`Direct labelling`,default:ii.Off,choices:[{value:ii.Off,text:`Off`},{value:ii.Auto,text:`Auto`},{value:ii.Outside,text:`Outside`},{value:ii.Inside,text:`Inside`}]},jS={key:`directLabelAnchor`,type:Q.Select,label:`Label anchor`,default:$r.Middle,choices:[{value:$r.Start,text:`Start`},{value:$r.Middle,text:`Middle`},{value:$r.End,text:`End`}]},MS={key:`valueLabels`,type:Q.Boolean,label:`Value labels`,default:!1},NS={key:`valueLabelPosition`,type:Q.Select,label:`Label position`,default:ei.Auto,choices:[{value:ei.Auto,text:`Auto`},{value:ei.Outside,text:`Outside`},{value:ei.Inside,text:`Inside`}]},PS={key:`tooltips`,type:Q.Boolean,label:`Tooltips`,default:!1},FS={key:`crosshair`,type:Q.Boolean,label:`Crosshair`,default:!1},IS={key:`crosshairDirection`,type:Q.Select,label:`Crosshair direction`,default:ti.Both,choices:[{value:ti.Both,text:`Both`},{value:ti.Vertical,text:`Vertical`},{value:ti.Horizontal,text:`Horizontal`}]},LS={key:`crosshairStyle`,type:Q.Select,label:`Crosshair style`,default:ni.Dashed,choices:[{value:ni.Solid,text:`Solid`},{value:ni.Dashed,text:`Dashed`},{value:ni.Dotted,text:`Dotted`}]},RS={key:`crosshairColor`,type:Q.Text,label:`Crosshair color`,default:`#999`,placeholder:`#999`},zS={key:`lineSymbols`,type:Q.Boolean,label:`Show line symbols`,default:!1},BS={key:`lineSymbolShape`,type:Q.Select,label:`Symbol`,default:qr.Circle,choices:[{value:qr.Circle,text:`Circle`},{value:qr.Square,text:`Square`},{value:qr.Diamond,text:`Diamond`},{value:qr.Triangle,text:`Triangle Up`},{value:qr.TriangleDown,text:`Triangle Down`},{value:qr.Cross,text:`Cross`},{value:qr.Star,text:`Star`}]},VS={key:`lineSymbolShowOn`,type:Q.Select,label:`Show on`,default:Jr.FirstLast,choices:[{value:Jr.FirstLast,text:`First & Last`},{value:Jr.First,text:`First`},{value:Jr.Last,text:`Last`},{value:Jr.All,text:`All`}]},HS={key:`lineSymbolStyle`,type:Q.Select,label:`Style`,default:Yr.Filled,choices:[{value:Yr.Filled,text:`Filled`},{value:Yr.Hollow,text:`Hollow`}]},US={key:`lineSymbolSize`,type:Q.Text,label:`Size`,default:`3.5`,placeholder:`3.5`},WS={key:`lineSymbolOpacity`,type:Q.Text,label:`Opacity`,default:`1`,placeholder:`1`},GS={key:`sortMode`,type:Q.Select,label:`Sort mode`,default:Zr.None,choices:[{value:Zr.None,text:`None`},{value:Zr.Total,text:`By total`},{value:Zr.WithinGroups,text:`Within groups`}]},KS={key:`edgePadding`,type:Q.Boolean,label:`Edge padding`,default:!1},qS={key:`waterfall`,type:Q.Boolean,label:`Waterfall`,default:!1},JS={key:`waterfallTotal`,type:Q.Boolean,label:`Waterfall total`,default:!1},YS={key:`barBackground`,type:Q.Boolean,label:`Bar background`,default:!1},XS={key:`barGap`,type:Q.Text,label:`Bar gap`,default:`60`,placeholder:`60`},ZS={key:`barSeparators`,type:Q.Boolean,label:`Bar separators`,default:!1},QS={key:`connectedColumns`,type:Q.Boolean,label:`Connected columns`,default:!1},$S={key:`connectionsOpacity`,type:Q.Text,label:`Opacity`,default:`0.15`,placeholder:`0.15`},eC={key:`swapLabelValue`,type:Q.Boolean,label:`Swap labels and values`,default:!1},tC={key:`stackMode`,type:Q.Select,label:`Stack mode`,default:ri.Normal,choices:[{value:ri.Normal,text:`Normal`},{value:ri.Percent,text:`Percentage (100%)`}]},nC={key:`sharedScale`,type:Q.Boolean,label:`Shared scale`,default:!1},rC={key:`categoryLabelLine`,type:Q.Boolean,label:`Labels on separate line`,default:!1},iC={key:`displayAsPercentage`,type:Q.Boolean,label:`Display as percentage`,default:!1},aC={key:`showTotal`,type:Q.Boolean,label:`Show total`,default:!1},oC={key:`showLabels`,type:Q.Boolean,label:`Show labels`,default:!0},sC={key:`showValues`,type:Q.Boolean,label:`Show values`,default:!0},cC={key:`sliceMax`,type:Q.Text,label:`Max slices`,default:`6`},lC={key:`sliceGroupLabel`,type:Q.Text,label:`Group label`,default:`Others`,placeholder:`Others`},uC={key:`areaFillOpacity`,type:Q.Text,label:`Opacity`,default:`0.85`,placeholder:`0.85`},dC={key:`stacked`,type:Q.Boolean,label:`Stack areas`,default:!0},fC={key:`stackPercent`,type:Q.Boolean,label:`Stack to 100%`,default:!1},pC={key:`areaLines`,type:Q.Boolean,label:`Separate areas with lines`,default:!0},mC={key:`areaSortMode`,type:Q.Select,label:`Sort areas`,default:Xr.None,choices:[{value:Xr.None,text:`Keep order`},{value:Xr.Ascending,text:`Smallest first`},{value:Xr.Descending,text:`Largest first`}]},hC={key:`interpolation`,type:Q.Select,label:`Line interpolation`,default:ai.Linear,choices:[{value:ai.Linear,text:`Linear`},{value:ai.MonotoneX,text:`Monotone`},{value:ai.Step,text:`Step`},{value:ai.StepBefore,text:`Step (before)`},{value:ai.StepAfter,text:`Step (after)`},{value:ai.Basis,text:`Basis`},{value:ai.Cardinal,text:`Cardinal`},{value:ai.CatmullRom,text:`Catmull-Rom`}]},gC=[{value:Lr.Linear,text:`Linear`},{value:Lr.Log,text:`Logarithmic`}],_C=[{value:zr.Auto,text:`Auto`},{value:zr.Inside,text:`Inside`},{value:zr.Outside,text:`Outside`},{value:zr.Off,text:`Off`}],vC=[{value:Br.Auto,text:`Auto`},{value:Br.Horizontal,text:`Horizontal`},{value:Br.Vertical,text:`Vertical`}];function yC(e){return[{key:`showVerticalAxis`,type:Q.Boolean,label:`Show vertical axis`,default:e.showVerticalAxis??!0},{key:`verticalAxisDirection`,type:Q.Select,label:`Vertical axis side`,default:Ir.Left,choices:[{value:Ir.Left,text:`Left`},{value:Ir.Right,text:`Right`}]},{key:`showVerticalTicks`,type:Q.Boolean,label:`Show vertical ticks`,default:e.showVerticalTicks},{key:`verticalLabelPosition`,type:Q.Select,label:`Vertical labels`,default:e.valueAxisLabelsOff&&e.valueAxis===`vertical`?zr.Off:zr.Auto,choices:_C},{key:`verticalGridStyle`,type:Q.Select,label:`Vertical grid style`,default:e.verticalGrid,choices:SS},{key:`verticalNumberFormat`,type:Q.NumberFormat,label:`Vertical number format`},...e.valueAxis===`vertical`?[{key:`verticalScaleType`,type:Q.Select,label:`Vertical scale`,default:Lr.Linear,choices:gC},{key:`verticalRangeMin`,type:Q.Text,label:`Vertical min`,placeholder:`auto`},{key:`verticalRangeMax`,type:Q.Text,label:`Vertical max`,placeholder:`auto`}]:[],{key:`showHorizontalAxis`,type:Q.Boolean,label:`Show horizontal axis`,default:e.showHorizontalAxis??!0},{key:`showHorizontalTicks`,type:Q.Boolean,label:`Show horizontal ticks`,default:e.showHorizontalTicks},{key:`horizontalLabelPosition`,type:Q.Select,label:`Horizontal labels`,default:e.valueAxisLabelsOff&&e.valueAxis===`horizontal`?zr.Off:zr.Auto,choices:_C},{key:`horizontalLabelRotation`,type:Q.Select,label:`Horizontal label rotation`,default:Br.Horizontal,choices:vC},{key:`horizontalGridStyle`,type:Q.Select,label:`Horizontal grid style`,default:e.horizontalGrid,choices:SS},{key:`horizontalNumberFormat`,type:Q.NumberFormat,label:`Horizontal number format`},...e.valueAxis===`horizontal`?[{key:`horizontalScaleType`,type:Q.Select,label:`Horizontal scale`,default:Lr.Linear,choices:gC},{key:`horizontalRangeMin`,type:Q.Text,label:`Horizontal min`,placeholder:`auto`},{key:`horizontalRangeMax`,type:Q.Text,label:`Horizontal max`,placeholder:`auto`}]:[],...e.horizontalRange?[{key:`horizontalRangeMin`,type:Q.Text,label:`Horizontal min`,placeholder:`auto`},{key:`horizontalRangeMax`,type:Q.Text,label:`Horizontal max`,placeholder:`auto`}]:[]]}var bC=yC({verticalGrid:Rr.None,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,valueAxisLabelsOff:!0}),xC=yC({verticalGrid:Rr.None,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showHorizontalAxis:!1,valueAxis:`horizontal`,valueAxisLabelsOff:!0}),SC=yC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0}),CC=yC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0}),wC={...hC,default:ai.MonotoneX},TC={...IS,default:ti.Vertical},EC={...FS,default:!0},DC={...zS,default:!0},OC={...GS,default:Zr.Total},kC={...MS,default:!0},AC={...MS,default:!0},jC={...iC,default:!0},MC={...cC,default:`5`},NC={...aC,default:!0},PC={...AS,default:ii.Auto},FC={...DS,default:!1},IC=[FS,IS,LS,RS],LC=[EC,TC,LS,RS],RC=[AC,NS,PS,...IC],zC=[kC,NS,PS,...IC],BC=[zS,BS,VS,HS,US,WS],VC=[DC,BS,VS,HS,US,WS],HC=[MS,PS,...LC,...BC],UC=[MS,PS,...LC,...VC],WC=[jC,oC,sC,MC,lC],GC=[iC,NC,oC,sC,cC,lC];yS(Fr.BarVertical,Eb,[CS,wS,TS,ES,eC,YS,ZS,XS,QS,$S,qS,JS,rC,...bC,...RC]),yS(Fr.BarHorizontal,Mb,[CS,wS,TS,ES,eC,YS,ZS,XS,QS,$S,qS,JS,rC,...xC,...zC]),yS(Fr.BarMulti,px,[CS,wS,TS,ES,OC,FC,kS,OS,PC,jS,...bC,...RC]),yS(Fr.Line,Tx,[CS,wS,TS,ES,wC,KS,...SC,...HC]),yS(Fr.LineMulti,zx,[CS,wS,TS,ES,wC,KS,GS,FC,kS,OS,PC,...SC,...UC]),yS(Fr.Donut,Kx,[CS,wS,TS,ES,FC,kS,OS,PC,PS,...GC]),yS(Fr.Pie,Jx,[CS,wS,TS,ES,FC,kS,OS,PC,PS,...WC]),yS(Fr.Area,Yx,[CS,wS,TS,ES,wC,KS,...CC,...HC]);var KC=yC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0});yS(Fr.AreaStacked,$x,[CS,wS,TS,ES,uC,wC,KS,mC,dC,fC,pC,DS,kS,OS,AS,...KC,PS,...LC]),yS(Fr.ColumnStacked,nS,[CS,wS,TS,ES,tC,GS,DS,kS,OS,AS,jS,...bC,...RC]),yS(Fr.BarStacked,aS,[CS,wS,TS,ES,tC,GS,DS,kS,OS,AS,jS,rC,...xC,...zC]),yS(Fr.BarSplit,hS,[CS,wS,TS,ES,nC,GS,DS,kS,OS,rC,...xC,kC,NS,PS,...IC]),yS(Fr.BarGrouped,_S,[CS,wS,TS,ES,OC,DS,kS,OS,YS,ZS,rC,...xC,kC,NS,PS,...IC]),yS(Fr.VerticalBar,Eb,[CS,wS,TS,ES,eC,YS,ZS,XS,QS,$S,qS,JS,rC,...bC,...RC]),yS(Fr.HorizontalBar,Mb,[CS,wS,TS,ES,eC,YS,ZS,XS,QS,$S,qS,JS,rC,...xC,...zC]);function qC(e){let t=(e??``).trim();return t&&_i(t)!==void 0?t:void 0}function JC(e){if(!(e.showVerticalTicks!==void 0||e.verticalGridStyle!==void 0||e.verticalNumberFormat!==void 0||e.showVerticalAxis!==void 0||e.verticalAxisDirection!==void 0||e.verticalScaleType!==void 0||e.verticalLabelPosition!==void 0||e.verticalRangeMin||e.verticalRangeMax))return{};let t={};e.showVerticalTicks!==void 0&&(t.showTicks=e.showVerticalTicks),e.verticalAxisDirection!==void 0&&(t.direction=e.verticalAxisDirection),e.verticalGridStyle!==void 0&&(t.gridStyle=e.verticalGridStyle),e.verticalNumberFormat!==void 0&&(t.numberFormat=e.verticalNumberFormat),e.showVerticalAxis!==void 0&&(t.showAxis=e.showVerticalAxis),e.verticalScaleType!==void 0&&(t.scaleType=e.verticalScaleType),e.verticalLabelPosition!==void 0&&(t.labelPosition=e.verticalLabelPosition);let n=qC(e.verticalRangeMin),r=qC(e.verticalRangeMax);return(n!==void 0||r!==void 0)&&(t.range={},n!==void 0&&(t.range.min=n),r!==void 0&&(t.range.max=r)),{verticalAxis:t}}function YC(e){if(!(e.showHorizontalTicks!==void 0||e.horizontalGridStyle!==void 0||e.horizontalNumberFormat!==void 0||e.showHorizontalAxis!==void 0||e.horizontalScaleType!==void 0||e.horizontalLabelPosition!==void 0||e.horizontalLabelRotation!==void 0||e.horizontalRangeMin||e.horizontalRangeMax))return{};let t={};e.showHorizontalTicks!==void 0&&(t.showTicks=e.showHorizontalTicks),e.horizontalGridStyle!==void 0&&(t.gridStyle=e.horizontalGridStyle),e.horizontalNumberFormat!==void 0&&(t.numberFormat=e.horizontalNumberFormat),e.showHorizontalAxis!==void 0&&(t.showAxis=e.showHorizontalAxis),e.horizontalScaleType!==void 0&&(t.scaleType=e.horizontalScaleType),e.horizontalLabelPosition!==void 0&&(t.labelPosition=e.horizontalLabelPosition),e.horizontalLabelRotation!==void 0&&(t.labelRotation=e.horizontalLabelRotation);let n=qC(e.horizontalRangeMin),r=qC(e.horizontalRangeMax);return(n!==void 0||r!==void 0)&&(t.range={},n!==void 0&&(t.range.min=n),r!==void 0&&(t.range.max=r)),{horizontalAxis:t}}var XC=new Set(`colors.colorPalette.autoContrast.crosshairDirection.crosshairStyle.crosshairColor.lineSymbols.lineSymbolShape.lineSymbolShowOn.lineSymbolStyle.lineSymbolSize.lineSymbolOpacity.showVerticalTicks.showVerticalAxis.verticalAxisDirection.verticalGridStyle.verticalNumberFormat.verticalScaleType.verticalLabelPosition.verticalRangeMin.verticalRangeMax.showHorizontalTicks.showHorizontalAxis.horizontalGridStyle.horizontalNumberFormat.horizontalScaleType.horizontalLabelPosition.horizontalLabelRotation.horizontalRangeMin.horizontalRangeMax.sliceMax.barGap.connectionsOpacity.areaFillOpacity`.split(`.`));function ZC(e,t){if(!t)return{};let n={};for(let{key:r}of xS(t)){let t=e[r];t!==void 0&&!XC.has(r)&&(n[r]=t)}return n}function QC(e,t){let n={},r=ae(e.colorPalette);return r?n.colors=r:e.colors&&e.colors.length>0&&(n.colors=e.colors),e.autoContrast&&t&&n.colors&&(n.colors=Ar(n.colors,t)),e.allowDarkMode!==void 0&&(n.allowDarkMode=e.allowDarkMode),n}function $C(e){let t={};return e.legend!==void 0&&(t.legend=e.legend),e.legendPosition!==void 0&&(t.legendPosition=e.legendPosition),e.legendAnchor!==void 0&&(t.legendAnchor=e.legendAnchor),e.directLabelling!==void 0&&(t.directLabelling=e.directLabelling),e.directLabelAnchor!==void 0&&(t.directLabelAnchor=e.directLabelAnchor),t}function ew(e){return e.lineSymbols?{lineSymbols:{symbol:e.lineSymbolShape??qr.Circle,showOn:e.lineSymbolShowOn??Jr.FirstLast,style:e.lineSymbolStyle??Yr.Filled,size:parseFloat(e.lineSymbolSize??`3.5`)||3.5,opacity:parseFloat(e.lineSymbolOpacity??`1`)||1}}:{}}function tw(e,t,n){let r={...ZC(e,n),...QC(e,t),...$C(e),...JC(e),...YC(e),...ew(e)};e.interpolation!==void 0&&(r.interpolation=e.interpolation),e.valueLabels!==void 0&&(r.valueLabels=e.valueLabels),e.valueLabelPosition!==void 0&&(r.valueLabelPosition=e.valueLabelPosition),e.tooltips!==void 0&&(r.tooltips=e.tooltips),e.crosshair!==void 0&&(r.crosshair=e.crosshair),e.crosshairDirection&&(r.crosshairDirection=e.crosshairDirection),e.crosshairStyle&&(r.crosshairStyle=e.crosshairStyle),e.crosshairColor&&(r.crosshairColor=e.crosshairColor),e.displayAsPercentage!==void 0&&(r.displayAsPercentage=e.displayAsPercentage),e.showTotal!==void 0&&(r.showTotal=e.showTotal),e.showLabels!==void 0&&(r.showLabels=e.showLabels),e.showValues!==void 0&&(r.showValues=e.showValues),e.swapLabelValue!==void 0&&(r.swapLabelValue=e.swapLabelValue);let i=parseInt(e.sliceMax??``,10);!isNaN(i)&&i>0&&(r.sliceMax=i),e.sliceGroupLabel!==void 0&&(r.sliceGroupLabel=e.sliceGroupLabel),e.barBackground!==void 0&&(r.barBackground=e.barBackground),e.barSeparators!==void 0&&(r.barSeparators=e.barSeparators);let a=parseFloat(e.barGap??``);isNaN(a)||(r.barGap=Math.max(0,Math.min(100,a))),e.connectedColumns!==void 0&&(r.connectedColumns=e.connectedColumns);let o=parseFloat(e.connectionsOpacity??``);isNaN(o)||(r.connectionsOpacity=Math.max(0,Math.min(1,o))),e.stackMode!==void 0&&(r.stackMode=e.stackMode),e.stacked!==void 0&&(r.stacked=e.stacked),e.stackPercent!==void 0&&(r.stackPercent=e.stackPercent),e.areaSortMode!==void 0&&(r.areaSortMode=e.areaSortMode),e.areaLines!==void 0&&(r.areaLines=e.areaLines);let s=parseFloat(e.areaFillOpacity??``);return isNaN(s)||(r.areaFillOpacity=s),e.edgePadding!==void 0&&(r.edgePadding=e.edgePadding),e.waterfall!==void 0&&(r.waterfall=e.waterfall),e.waterfallTotal!==void 0&&(r.waterfallTotal=e.waterfallTotal),e.categoryLabelLine!==void 0&&(r.categoryLabelLine=e.categoryLabelLine),r}var nw=e=>e===!0||String(e).toLowerCase()===`true`;function rw(e){return new Map(e.map(e=>[e.key,e.value]))}function iw(e,t){let n=rw(t),r=xS(e),i=new Set(r.map(e=>e.key)),a={};for(let e of r){let t=n.get(e.key);t!==void 0&&i.has(e.key)&&(e.type===Q.Colors?a[e.key]=R(String(t)).map(e=>e.trim()).filter(Boolean):e.type===Q.Boolean?e.key===`valueLabels`&&String(t).toLowerCase()===`percent`?a[e.key]=`percent`:a[e.key]=nw(t):a[e.key]=String(t))}return a}function aw(e){return!(/^-?\d+(\.\d+)?$/.test(e)||/^-?\d+(\.\d+)?%$/.test(e)||/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e))}function ow(e){return e.entries.map(e=>{if(e.values&&e.values.length>1){if(e.key===`series`&&!e.quotedKey)return`series = ${e.values.map(e=>F(String(e))).join(`,`)}`;let t=e.values.map(e=>typeof e==`number`||!aw(String(e))?String(e):F(String(e)));return`${F(e.key)} = ${t.join(`,`)}`}let t=e.isPercentage?`${e.value}%`:String(e.value);return e.key===`series`&&!e.quotedKey?`series = ${F(t)}`:typeof e.value==`string`&&aw(t)?`${F(e.key)} = ${F(t)}`:`${F(e.key)} = ${t}`}).join(`
|
|
343
|
-
`)}function sw(e,t){let n=e.find(e=>e.key===t);return n?String(n.value):void 0}function cw(e,t){let n=e.find(e=>e.key===t);if(n)return n.isPercentage,n.value}function lw(e){let t=e.find(e=>e.key===`maxWidth`);if(t)return t.isPercentage?`${t.value}%`:t.value}function uw(e){return e.map(e=>({target:e.target,color:sw(e.properties,`color`)??`#e15759`,label:sw(e.properties,`label`)}))}function dw(e){return e.map(e=>({target:e.target}))}function fw(e){return e.map(e=>{let t=rw(e.properties);return{from:e.from,to:e.to,color:t.has(`color`)?String(t.get(`color`)):void 0,negativeColor:t.has(`negativeColor`)?String(t.get(`negativeColor`)):void 0,opacity:t.has(`opacity`)?Number(t.get(`opacity`)):void 0,interpolation:t.has(`interpolation`)?String(t.get(`interpolation`)):void 0}})}function pw(e){let t=e.get(`repeat`);if(nw(t))return`always`;if(t===void 0||t===!1||t===`false`)return;let n=Number(t);return Number.isInteger(n)&&n>=1?n:void 0}function mw(e){return e.map(e=>{let t=rw(e.properties),n=e.kind??Wr.Point;if(n===Wr.Range){let e={kind:Wr.Range,start:t.has(`start`)?isNaN(Number(t.get(`start`)))?String(t.get(`start`)):Number(t.get(`start`)):0,end:t.has(`end`)?isNaN(Number(t.get(`end`)))?String(t.get(`end`)):Number(t.get(`end`)):0};return e.repeat=pw(t),t.has(`orientation`)&&(e.orientation=String(t.get(`orientation`))),t.has(`startAnchor`)&&(e.startAnchor=String(t.get(`startAnchor`))),t.has(`endAnchor`)&&(e.endAnchor=String(t.get(`endAnchor`))),t.has(`bgColor`)&&(e.bgColor=String(t.get(`bgColor`))),t.has(`bgOpacity`)&&(e.bgOpacity=Number(t.get(`bgOpacity`))),t.has(`direction`)&&(e.direction=String(t.get(`direction`))),t.has(`text`)&&(e.text=String(t.get(`text`))),t.has(`textColor`)&&(e.textColor=String(t.get(`textColor`))),e}if(n===Wr.Free){let n={kind:Wr.Free,text:String(t.get(`text`)??``),x:cw(e.properties,`x`)??0,y:cw(e.properties,`y`)??0};n.repeat=pw(t),t.has(`textColor`)&&(n.textColor=String(t.get(`textColor`)));let r=lw(e.properties);return r!==void 0&&(n.maxWidth=r),t.has(`textOutline`)&&(n.textOutline=nw(t.get(`textOutline`))),n}let r=`target`in e?e.target:``,i={kind:Wr.Point,target:r,text:String(t.get(`text`)??``)};i.repeat=pw(t),t.has(`textColor`)&&(i.textColor=String(t.get(`textColor`)));let a=lw(e.properties);return a!==void 0&&(i.maxWidth=a),t.has(`textOutline`)&&(i.textOutline=nw(t.get(`textOutline`))),t.has(`showLine`)&&(i.showLine=nw(t.get(`showLine`))),t.has(`anchorDirection`)&&(i.anchorDirection=String(t.get(`anchorDirection`))),t.has(`textOffsetX`)&&(i.textOffsetX=Number(t.get(`textOffsetX`))),t.has(`textOffsetY`)&&(i.textOffsetY=Number(t.get(`textOffsetY`))),t.has(`lineStyle`)&&(i.lineStyle=String(t.get(`lineStyle`))),t.has(`lineWeight`)&&(i.lineWeight=Number(t.get(`lineWeight`))),t.has(`showArrow`)&&(i.showArrow=nw(t.get(`showArrow`))),t.has(`lineTargetDistance`)&&(i.lineTargetDistance=Number(t.get(`lineTargetDistance`))),t.has(`showCircle`)&&(i.showCircle=nw(t.get(`showCircle`))),t.has(`circleSize`)&&(i.circleSize=Number(t.get(`circleSize`))),t.has(`circleStyle`)&&(i.circleStyle=String(t.get(`circleStyle`))),t.has(`circleColor`)&&(i.circleColor=String(t.get(`circleColor`))),i})}function hw(e){return e.map(e=>{let t=rw(e.properties),n={name:e.name};if(t.has(`color`)&&(n.color=String(t.get(`color`))),t.has(`lineWidth`)&&(n.lineWidth=Number(t.get(`lineWidth`))),t.has(`dash`)&&(n.dash=String(t.get(`dash`))),t.has(`interpolation`)&&(n.interpolation=String(t.get(`interpolation`))),t.has(`labelMode`)&&(n.labelMode=String(t.get(`labelMode`))),t.has(`labelText`)&&(n.labelText=String(t.get(`labelText`))),t.has(`valueLabels`)){let e=t.get(`valueLabels`);n.valueLabels=String(e).toLowerCase()===`percent`?`percent`:nw(e)}return t.has(`lineSymbols`)&&(n.lineSymbols=nw(t.get(`lineSymbols`))),t.has(`hidden`)&&(n.hidden=nw(t.get(`hidden`))),t.has(`symbolShape`)&&(n.symbolShape=String(t.get(`symbolShape`))),t.has(`symbolShowOn`)&&(n.symbolShowOn=String(t.get(`symbolShowOn`))),t.has(`symbolStyle`)&&(n.symbolStyle=String(t.get(`symbolStyle`))),t.has(`symbolSize`)&&(n.symbolSize=Number(t.get(`symbolSize`))),t.has(`symbolOpacity`)&&(n.symbolOpacity=Number(t.get(`symbolOpacity`))),n})}function gw(e,t,n){if(!n&&t!==si.Equals&&t!==si.NotEquals)return!0;switch(t){case si.Equals:return e===n;case si.NotEquals:return e!==n;case si.Contains:return e.toLowerCase().includes(n.toLowerCase());case si.GreaterThan:{let t=Number(e.replace(/[,%$€£¥₹]/g,``).trim()),r=Number(n);return!Number.isNaN(t)&&!Number.isNaN(r)&&t>r}case si.LessThan:{let t=Number(e.replace(/[,%$€£¥₹]/g,``).trim()),r=Number(n);return!Number.isNaN(t)&&!Number.isNaN(r)&&t<r}default:return!0}}function _w(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column)return e;let r=e.rows.filter(e=>gw(e[n]??``,t.condition??si.Equals,t.value??``));return{...e,rows:r}}function vw(e){return Number(A(e).replace(/[,%$€£¥₹]/g,``).trim())||0}function yw(e,t,n){return n===`number`?vw(e)-vw(t):n===`date`?(Date.parse(e)||0)-(Date.parse(t)||0):e.localeCompare(t)}function bw(e){return e.columns?e.columns.split(`,`).map(e=>e.trim()).filter(Boolean):e.column?[e.column]:[]}var xw={sum:e=>e.reduce((e,t)=>e+t,0),avg:e=>e.reduce((e,t)=>e+t,0)/e.length,min:e=>Math.min(...e),max:e=>Math.max(...e)};function Sw(e,t){return e.split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>{let n=e.lastIndexOf(`:`);if(n<0)return null;let r=e.slice(0,n),i=e.slice(n+1);if(i!==`count`&&!xw[i])return null;let a=i===`count`?-1:t.indexOf(r);return i!==`count`&&a<0?null:{col:r,fn:i,colIndex:a}}).filter(e=>e!==null)}function Cw(e,t,n){if(e===`count`)return String(t.length);let r=t.map(e=>vw(e[n]??``));return String(xw[e](r))}function ww(e,t){let n=bw({columns:t.groupColumns}).map(t=>e.columns.indexOf(t)).filter(e=>e>=0);if(n.length===0||!t.aggregates)return e;let r=Sw(t.aggregates,e.columns);if(r.length===0)return e;let i=new Map;for(let t of e.rows){let e=n.map(e=>t[e]??``),r=e.join(`\0`),a=i.get(r);a?a.rows.push(t):i.set(r,{key:e,rows:[t]})}return{columns:[...n.map(t=>e.columns[t]),...r.map(e=>`${e.col}_${e.fn}`)],columnTypes:[...n.map(t=>e.columnTypes[t]),...r.map(()=>`number`)],rows:[...i.values()].map(({key:e,rows:t})=>[...e,...r.map(e=>Cw(e.fn,t,e.colIndex))])}}function Tw(e,t){let n=bw(t);if(n.length===0)return e;let r=e.columns.map((e,t)=>n.includes(e)?-1:t).filter(e=>e>=0);return r.length===e.columns.length?e:{columns:r.map(t=>e.columns[t]),rows:e.rows.map(e=>r.map(t=>e[t])),columnTypes:r.map(t=>e.columnTypes[t])}}var Ew=[`string`,`number`,`date`],Dw=[{id:`to-number`,label:`To Number`,description:`Strip non-numeric characters and convert to number`,category:ci.Type,accepts:Ew,outputType:`number`},{id:`to-string`,label:`To String`,description:`Keep value as plain text`,category:ci.Type,accepts:Ew,outputType:`string`},{id:`to-date`,label:`To Date`,description:`Parse text into an ISO date`,category:ci.Type,accepts:Ew,outputType:`date`},{id:`to-boolean`,label:`To Boolean`,description:`Map yes/no, true/false, 1/0 to boolean`,category:ci.Type,accepts:Ew,outputType:`string`},{id:`parse-json`,label:`Parse JSON`,description:`Parse JSON string and optionally extract a key`,category:ci.Type,accepts:[`string`],outputType:`string`,params:[`key`]},{id:`trim`,label:`Trim`,description:`Remove leading and trailing whitespace`,category:ci.String,accepts:Ew,outputType:`string`},{id:`lowercase`,label:`Lowercase`,description:`Convert all characters to lowercase`,category:ci.String,accepts:Ew,outputType:`string`},{id:`uppercase`,label:`Uppercase`,description:`Convert all characters to uppercase`,category:ci.String,accepts:Ew,outputType:`string`},{id:`title-case`,label:`Title Case`,description:`Capitalize the first letter of each word`,category:ci.String,accepts:Ew,outputType:`string`},{id:`slugify`,label:`Slugify`,description:`Lowercase and replace non-alphanumeric with hyphens`,category:ci.String,accepts:Ew,outputType:`string`},{id:`regex-replace`,label:`Regex Replace`,description:`Find and replace using a regular expression`,category:ci.String,accepts:Ew,outputType:`string`,params:[`pattern`,`replacement`]},{id:`extract`,label:`Extract Substring`,description:`Extract a portion of text by character position`,category:ci.String,accepts:Ew,outputType:`string`,params:[`start`,`end`]},{id:`pad-start`,label:`Pad Start`,description:`Pad the beginning to a fixed length`,category:ci.String,accepts:Ew,outputType:`string`,params:[`length`,`char`]},{id:`pad-end`,label:`Pad End`,description:`Pad the end to a fixed length`,category:ci.String,accepts:Ew,outputType:`string`,params:[`length`,`char`]},{id:`remove-diacritics`,label:`Remove Diacritics`,description:`Strip accents and diacritical marks`,category:ci.String,accepts:Ew,outputType:`string`},{id:`split`,label:`Split into Columns`,description:`Split values by a separator into new columns`,category:ci.String,accepts:Ew,outputType:`string`,params:[`separator`,`limit`]},{id:`round`,label:`Round`,description:`Round to a number of decimal places`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`decimals`]},{id:`floor`,label:`Floor`,description:`Round down to the nearest integer`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`ceil`,label:`Ceiling`,description:`Round up to the nearest integer`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`abs`,label:`Absolute Value`,description:`Remove the sign (make positive)`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`clamp`,label:`Clamp`,description:`Constrain values between a min and max`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`min`,`max`]},{id:`log`,label:`Logarithm`,description:`Natural log — compress wide-range values for charting`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`exp`,label:`Exponential`,description:`Raise e to the power of each value`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`normalize`,label:`Normalize (0–1)`,description:`Scale values to 0–1 range for cross-series comparison`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`standardize`,label:`Standardize (z-score)`,description:`Center around mean, scale by std deviation`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`bin`,label:`Bin/Bucket`,description:`Group values into fixed-size buckets`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`size`]},{id:`extract-year`,label:`Extract Year`,description:`Get the four-digit year as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-month`,label:`Extract Month`,description:`Get the month (1–12) as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-day`,label:`Extract Day`,description:`Get the day of the month as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-weekday`,label:`Extract Weekday`,description:`Get the day name (Monday, Tuesday, …)`,category:ci.Date,accepts:[`date`],outputType:`string`},{id:`extract-hour`,label:`Extract Hour`,description:`Get the hour (0–23) as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`shift-date`,label:`Shift Date`,description:`Add or subtract days, months, or years`,category:ci.Date,accepts:[`date`],outputType:`date`,params:[`amount`,`unit`]},{id:`truncate-date`,label:`Truncate to Period`,description:`Round down to start of week, month, quarter, or year`,category:ci.Date,accepts:[`date`],outputType:`date`,params:[`period`]},{id:`date-diff`,label:`Duration Since`,description:`Days between each date and a reference date`,category:ci.Date,accepts:[`date`],outputType:`number`,params:[`reference`]}],Ow=new Map(Dw.map(e=>[e.id,e]));function kw(e,t){let n=Ow.get(e);return n?n.accepts.includes(t):!1}function Aw(e){return Ow.get(e)?.outputType??`string`}function jw(e,t){let n=parseFloat(e);if(Number.isNaN(n))return e;let r=t(n);return Number.isNaN(r)?e:String(r)}function Mw(e,t){let n=new Date(e);return Number.isNaN(n.getTime())?e:t(n)}function Nw(e,t,n){switch(t){case`to-number`:{let t=Number(e.replace(/[^0-9.\-+eE]/g,``));return Number.isNaN(t)?``:String(t)}case`to-string`:return e;case`to-date`:return Mw(e,e=>e.toISOString());case`to-boolean`:{let t=e.toLowerCase().trim();return[`true`,`1`,`yes`,`on`,`y`].includes(t)?`true`:[`false`,`0`,`no`,`off`,`n`,``].includes(t)?`false`:e}case`parse-json`:try{let t=JSON.parse(e);return n.key?String(t[n.key]??``):JSON.stringify(t)}catch{return e}default:return e}}function Pw(e,t,n){switch(t){case`trim`:return e.trim();case`lowercase`:return e.toLowerCase();case`uppercase`:return e.toUpperCase();case`title-case`:return e.replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase());case`slugify`:return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``);case`regex-replace`:if(!n.pattern)return e;try{return e.replace(new RegExp(n.pattern,`g`),n.replacement??``)}catch{return e}case`extract`:return e.slice(Number(n.start)||0,n.end?Number(n.end):void 0);case`pad-start`:return e.padStart(Number(n.length)||0,n.char||` `);case`pad-end`:return e.padEnd(Number(n.length)||0,n.char||` `);case`remove-diacritics`:return e.normalize(`NFD`).replace(/[\u0300-\u036f]/g,``);default:return e}}function Fw(e,t,n){switch(t){case`round`:{let t=10**(Number(n.decimals)||0);return jw(e,e=>Math.round(e*t)/t)}case`floor`:return jw(e,Math.floor);case`ceil`:return jw(e,Math.ceil);case`abs`:return jw(e,Math.abs);case`clamp`:{let t=n.min?Number(n.min):-1/0,r=n.max?Number(n.max):1/0;return jw(e,e=>Math.min(Math.max(e,t),r))}case`log`:return jw(e,e=>e>0?Math.log(e):NaN);case`exp`:return jw(e,Math.exp);case`bin`:{let t=Number(n.size)||1;return jw(e,e=>Math.floor(e/t)*t)}default:return e}}function Iw(e,t,n){switch(t){case`extract-year`:return Mw(e,e=>String(e.getFullYear()));case`extract-month`:return Mw(e,e=>String(e.getMonth()+1));case`extract-day`:return Mw(e,e=>String(e.getDate()));case`extract-weekday`:return Mw(e,e=>e.toLocaleDateString(`en`,{weekday:`long`}));case`extract-hour`:return Mw(e,e=>String(e.getHours()));case`shift-date`:return Mw(e,e=>{let t=Number(n.amount)||0,r=n.unit||`days`;return r===`years`?e.setFullYear(e.getFullYear()+t):r===`months`?e.setMonth(e.getMonth()+t):e.setDate(e.getDate()+t),e.toISOString()});case`truncate-date`:return Mw(e,e=>{let t=n.period||`month`;return t===`year`?new Date(e.getFullYear(),0,1).toISOString():t===`quarter`?new Date(e.getFullYear(),Math.floor(e.getMonth()/3)*3,1).toISOString():t===`month`?new Date(e.getFullYear(),e.getMonth(),1).toISOString():t===`week`?(e.setDate(e.getDate()-e.getDay()),e.setHours(0,0,0,0),e.toISOString()):e.toISOString()});case`date-diff`:{let t=new Date(n.reference||new Date().toISOString());return Number.isNaN(t.getTime())?e:Mw(e,e=>String(Math.round((e.getTime()-t.getTime())/864e5)))}default:return e}}function Lw(e,t,n){return t.startsWith(`to-`)||t===`parse-json`?Nw(e,t,n):new Set([`round`,`floor`,`ceil`,`abs`,`clamp`,`log`,`exp`,`bin`]).has(t)?Fw(e,t,n):t.startsWith(`extract-`)||t.startsWith(`shift-`)||t.startsWith(`truncate-`)||t===`date-diff`?Iw(e,t,n):Pw(e,t,n)}function Rw(e,t){let n=e.rows.map(e=>{let n=[...e];return n[t]=``,n});return{columns:[...e.columns],rows:n,columnTypes:[...e.columnTypes]}}function zw(e,t,n){let r=n.separator||`,`,i=n.limit?Number(n.limit):void 0,a=0,o=e.rows.map(e=>{let n=e[t].split(r),o=i?n.slice(0,i):n;return a=Math.max(a,o.length),o}),s=[...e.columns],c=[...e.columnTypes],l=[];for(let e=0;e<a;e++)l.push(`${n.column}_${e+1}`);return s.splice(t,1,...l),c.splice(t,1,...Array(a).fill(`string`)),{columns:s,rows:e.rows.map((e,n)=>{let r=o[n],i=[...e],s=[...r,...Array(a-r.length).fill(``)];return i.splice(t,1,...s),i}),columnTypes:c}}function Bw(e,t,n){let r=e.rows.map(e=>parseFloat(e[t])).filter(e=>!Number.isNaN(e));if(r.length===0)return e;let i=e.rows.map(e=>[...e]),a=[...e.columnTypes];if(a[t]=`number`,n===`normalize`){let e=Math.min(...r),n=Math.max(...r)-e;for(let r of i){let i=parseFloat(r[t]);r[t]=Number.isNaN(i)?r[t]:String(n===0?0:(i-e)/n)}}else{let e=r.reduce((e,t)=>e+t,0)/r.length,n=r.reduce((t,n)=>t+(n-e)**2,0)/r.length,a=Math.sqrt(n);for(let n of i){let r=parseFloat(n[t]);n[t]=Number.isNaN(r)?n[t]:String(a===0?0:(r-e)/a)}}return{columns:[...e.columns],rows:i,columnTypes:a}}function Vw(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column||!t.operation)return e;let r=t.operation,i=e.columnTypes[n];if(!kw(r,i))return Rw(e,n);if(r===`split`)return zw(e,n,t);if(r===`normalize`||r===`standardize`)return Bw(e,n,r);let a=e.rows.map(e=>[...e]);for(let e of a)e[n]=Lw(e[n],r,t);let o=[...e.columnTypes];return o[n]=Aw(r),{columns:[...e.columns],rows:a,columnTypes:o}}function Hw(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column||!t.newName)return e;let r=[...e.columns];return r[n]=t.newName,{...e,columns:r}}function Uw(e,t){let n=bw(t);if(n.length===0)return e;let r=n.map(t=>e.columns.indexOf(t)).filter(e=>e>=0);if(r.length===0)return e;let i=t.direction===Xr.Descending?-1:1,a=t.operation;if(a&&r.length>1){let t=[...e.rows].sort((e,t)=>{let n=r.map(t=>vw(e[t]??``)),o=r.map(e=>vw(t[e]??``)),s,c;return a===`avg`?(s=n.reduce((e,t)=>e+t,0)/n.length,c=o.reduce((e,t)=>e+t,0)/o.length):(s=n.reduce((e,t)=>e+t,0),c=o.reduce((e,t)=>e+t,0)),i*(s-c)});return{...e,rows:t}}let o=[...e.rows].sort((t,n)=>{for(let a of r){let r=e.columnTypes[a]??`string`,o=yw(t[a]??``,n[a]??``,r);if(o!==0)return i*o}return 0});return{...e,rows:o}}function Ww(e){if(e.rows.length===0||e.columns.length===0)return e;let t=[`Field`,...e.rows.map(e=>e[0]??``)],n=[],r=[`string`];for(let t=1;t<e.columns.length;t++){let r=[e.columns[t]];for(let n=0;n<e.rows.length;n++)r.push(e.rows[n][t]??``);n.push(r)}for(let t=0;t<e.rows.length;t++){let e=n.map(e=>e[t+1]??``).filter(e=>e.length>0);e.length>0&&e.every(e=>!Number.isNaN(Number(e.replace(/[,%$€£¥₹]/g,``).trim()))&&e.trim().length>0)?r.push(`number`):r.push(`string`)}return{columns:t,rows:n,columnTypes:r}}var Gw=[/^\d{4}-\d{2}-\d{2}$/,/^\d{4}-\d{2}$/,/^\d{4}$/,/^\d{1,2}\/\d{1,2}\/\d{2,4}$/,/^\d{1,2}-\d{1,2}-\d{2,4}$/,/^(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},?\s+\d{4}$/i,/^\d{4}\/\d{2}\/\d{2}$/,/^\d{4}\/\d{2}$/,/^Q[1-4]\s+\d{4}$/],Kw=/^"((?:[^"\\]|\\.)*)"\s*=\s*(.+)$/,qw=/^"((?:[^"\\]|\\.)*)"\s*=\s*"([^"]*)"$/;function Jw(e){if(!e)return!1;for(let t of Gw)if(t.test(e))return/^\d{4}(-\d{2})?$/.test(e)||/^\d{4}\/\d{2}$/.test(e)||/^Q[1-4]\s+\d{4}$/.test(e)?!0:!Number.isNaN(Date.parse(e));return!1}function Yw(e){let t=e.match(/^[<>≤≥~]\s*(.+)$/);if(t){let e=A(t[1]).replace(/[,%$€£¥₹]/g,``).trim();if(e.length>0&&!Number.isNaN(Number(e)))return t[1].trim()}return e}function Xw(e){if(!e)return!1;let t=A(Yw(e)).replace(/[,%$€£¥₹]/g,``).trim();return t.length>0&&!Number.isNaN(Number(t))}function Zw(e,t){return e.map((e,n)=>{let r=t.map(e=>e[n]??``).filter(e=>e.length>0);return r.length===0?`string`:r.every(Jw)?`date`:r.every(Xw)?`number`:`string`})}function Qw(e){let t=e.split(`
|
|
344
|
-
`).map(e=>e.trim()).filter(Boolean);if(t.length===0)return{columns:[],rows:[],columnTypes:[]};let n=t[0]?.match(/^series\s*=\s*(.+)$/);if(n){let e=R(n[1].trim()),r=[];for(let e=1;e<t.length;e++){let n=t[e].match(
|
|
345
|
-
`):[`series = ${e.slice(1).map(F).join(`,`)}`,...t.map(e=>{let t=e[0]??``,n=e.slice(1).map(e=>
|
|
346
|
-
`)}function nT(e){let t=e=>e==null||!Number.isFinite(e)?``:String(e),n=[`label`,...e.series?e.series.map(e=>e.name):[`value`]],r=e.labels.map((n,r)=>[n,...e.series?e.series.map(e=>t(e.values[r])):[t(e.values[r])]]);return{columns:n,rows:r,columnTypes:Zw(n,r)}}var rT=new Set(Object.values(oi));function iT(e,t,n,r){let i={columns:[...t],rows:n.map(e=>[...e]),columnTypes:[...r]};for(let t of e)switch(t.type){case oi.Sort:i=Uw(i,t.config);break;case oi.Filter:i=_w(i,t.config);break;case oi.HideColumns:i=Tw(i,t.config);break;case oi.Transpose:i=Ww(i);break;case oi.Parse:i=Vw(i,t.config);break;case oi.Rename:i=Hw(i,t.config);break;case oi.GroupBy:i=ww(i,t.config)}return i}function aT(e){return e.filter(e=>rT.has(e.transformType)).map(e=>{let t={};for(let[n,r]of rw(e.properties))t[n]=String(r);return{type:e.transformType,config:t}})}function oT(e,t){let n=aT(t);if(n.length===0)return e;let r=Qw(e);if(r.columns.length===0)return e;let i=iT(n,r.columns,r.rows,r.columnTypes);return tT(i.columns,i.rows)}function sT(e,t){let n=aT(t);if(n.length===0||e.labels.length===0)return e;let r=nT(e),i=iT(n,r.columns,r.rows,r.columnTypes);return ne(tT(i.columns,i.rows))}var cT=new Set;function lT(e,t,n){let r=t;for(let t of e)t.transformType===`sort`?r=Zr.Total:!rT.has(t.transformType)&&!cT.has(t.transformType)&&(cT.add(t.transformType),console.warn(`[blueprint-chart] Unknown transform "${t.transformType}" in ${n}; ignored.`));return r}function uT(e){let t=t=>{let n=e.get(t);return n==null?void 0:String(n)||void 0},n=e.get(`transparentBackground`),r={title:t(`title`),description:t(`description`),source:t(`source`),sourceUrl:t(`sourceUrl`),byline:t(`byline`),note:t(`note`),padding:t(`padding`),transparentBackground:nw(n)||void 0};return Object.values(r).some(e=>e!==void 0)?r:void 0}function dT(e){let t=rw(e.properties),n=ne(oT(e.data?ow(e.data):``,e.transforms)),r=t.get(`sort`),i=r==null?void 0:String(r),a=i===Xr.Ascending||i===Xr.Descending?i:void 0,o=t.get(`theme`),s=t.get(`sortMode`),c;return(s===Zr.Total||s===Zr.WithinGroups||s===Zr.None)&&(c=s),c=lT(e.transforms,c,`chart`),{chartType:e.chartType,data:n,properties:e.properties,frame:uT(t),colorizes:uw(e.colorizes),highlights:dw(e.highlights),areaFills:fw(e.areaFills),annotations:mw(e.annotations),seriesOverrides:hw(e.series),scenes:e.scenes,sort:a,sortMode:c,theme:o==null?void 0:String(o)||void 0}}var fT=Object.create(null);function pT(e){if(!fT[e]){let t={};for(let n of xS(e))n.default!==void 0&&(t[n.key]=n.default);fT[e]=t}return{...fT[e]}}function mT(e,t){let n=pT(e);return t.colors?.length?{...n,colorPalette:void 0,...t}:{...n,...t}}var hT=[`verticalLabelPosition`,`horizontalLabelPosition`];function gT(e,t,n){let r=pT(t),i={...e};for(let e of hT)n[e]===void 0&&r[e]!==void 0&&r[e]!==zr.Off&&(i[e]=r[e]);return i}var _T=new Set;function vT(e,t,n){let r=t;for(let t of e)t.transformType===`sort`?r=Zr.Total:!rT.has(t.transformType)&&!_T.has(t.transformType)&&(_T.add(t.transformType),console.warn(`[blueprint-chart] Unknown transform "${t.transformType}" in ${n}; ignored.`));return r}function yT(){return{properties:new Map,chartTypeOptions:{},colorizes:[],highlights:[],areaFills:[],seriesOverrides:[],transforms:[]}}function bT(e,t,n){let r=yT();for(let i=0;i<=t;i++){let a=e[i],o=rw(a.properties),s=o.get(`type`);s&&(r.chartType=s);let c=r.chartType??n;a.data&&(r.data=a.data);let l=iw(c,a.properties);r.chartTypeOptions={...r.chartTypeOptions,...l},a.colorizes.length>0?r.colorizes=a.colorizes:a.data&&(r.colorizes=[]),i===t&&(r.highlights=a.highlights),a.areaFills.length>0&&(r.areaFills=a.areaFills),a.series.length>0&&(r.seriesOverrides=a.series),a.transforms.length>0&&(r.transforms=[...r.transforms,...a.transforms]);for(let[e,t]of o)r.properties.set(e,t)}return r}function xT(e,t,n){return n<e?!1:t===`always`||n<=e+(typeof t==`number`?t:0)}function ST(e,t){let n=e.options??(e.properties?mT(e.chartType,iw(e.chartType,e.properties)):{}),r={chartType:e.chartType,data:e.data,options:n,frame:e.frame,colorizes:e.colorizes??[],highlights:e.highlights??[],areaFills:e.areaFills??[],annotations:(e.annotations??[]).map((e,t)=>({...e,key:e.key??`base:${t}:${e.kind}`})),seriesOverrides:e.seriesOverrides??[],sort:e.sort,sortMode:e.sortMode,theme:e.theme};if(t==null||!e.scenes||t<0||t>=e.scenes.length)return r;let i=bT(e.scenes,t,e.chartType),a=i.chartType??e.chartType,o=i.data?ne(ow(i.data)):sT(r.data,i.transforms),s=Object.keys(i.chartTypeOptions).length>0?mT(a,{...n,...i.chartTypeOptions}):n,c=a!==e.chartType&&!e.options&&e.properties?gT(s,a,{...iw(a,e.properties),...i.chartTypeOptions}):s,l=i.colorizes.length>0?uw(i.colorizes):i.data?[]:r.colorizes,u=t==null?r.highlights:dw(i.highlights),d=i.areaFills.length>0?fw(i.areaFills):r.areaFills,f=(e.annotations??[]).map((e,t)=>({anchor:-1,key:e.key??`base:${t}:${e.kind}`,config:e}));for(let n=0;n<=t;n++)mw(e.scenes[n].annotations).forEach((e,t)=>{f.push({anchor:n,key:e.key??`s${n}:${t}:${e.kind}`,config:e})});let p=f.filter(({anchor:e,config:n})=>xT(e,n.repeat,t)).map(({key:e,config:t})=>({...t,key:e})),m=i.seriesOverrides.length>0?hw(i.seriesOverrides):r.seriesOverrides,h=i.properties.get(`sortMode`),g=h===Zr.Total||h===Zr.WithinGroups||h===Zr.None?h:void 0,_=vT(i.transforms,g??r.sortMode,`scene ${t}`),v=[`title`,`description`,`source`,`sourceUrl`,`byline`,`note`],y={};for(let e of v){let t=i.properties.get(e);typeof t==`string`&&(y[e]=t)}let b=Object.keys(y).length>0?{...r.frame,...y}:r.frame;return{...r,chartType:a,data:o,options:c,frame:b,colorizes:l,highlights:u,areaFills:d,annotations:p,seriesOverrides:m,sortMode:_}}var CT=new WeakMap;function wT(e){let t=CT.get(e);if(!(!t||t.size===0)){for(let n of t)e.style[n]=``;t.clear()}}function TT(e,t){let n=CT.get(e);n||(n=new Set,CT.set(e,n)),n.add(t)}function ET(e,t,n){if(wT(e),n.ignoreLayout||!t)return{constrained:!1};let r=rw(t),i=r.get(`heightMode`),a=r.get(`aspectRatio`),o=r.get(`fixedHeight`),s=!1;if(i===`aspect-ratio`&&a){let t=String(a).split(`:`).map(Number);t.length===2&&t[0]>0&&t[1]>0&&(e.style.aspectRatio=`${t[0]} / ${t[1]}`,e.style.height=`auto`,TT(e,`aspectRatio`),TT(e,`height`),s=!0)}else i===`fixed`&&o&&(e.style.height=`${o}px`,TT(e,`height`),s=!0);return s&&(e.style.display=`flex`,e.style.flexDirection=`column`,e.style.overflow=`hidden`,TT(e,`display`),TT(e,`flexDirection`),TT(e,`overflow`)),{constrained:s}}var DT=new WeakMap;function OT(e){e.querySelectorAll(`[data-bc-fade-overlay]`).forEach(e=>{typeof e.getAnimations==`function`&&e.getAnimations().forEach(e=>e.cancel()),e.remove()})}function kT(e,t,n){if(!n)return null;let r=DT.get(e);return!r||r===t?null:(OT(e),rg(e))}function AT(e,t,n){if(DT.set(e,t),n){let t=e.querySelector(`.bc-frame .bc-frame-body`);t&&ng(t),ig(e,n)}}function jT(e){DT.delete(e),OT(e)}var MT=`http://www.w3.org/2000/svg`;function NT(e){return e.replace(/\s+/g,` `).trim()}function PT(e,t){let n=t.series??[],r=(n.length>0?n.flatMap(e=>e.values):t.values).filter(e=>Number.isFinite(e));return`${e} of ${`${t.labels.length} categor${t.labels.length===1?`y`:`ies`}`}${n.length>0?` across ${n.length} series (${n.map(e=>e.name).join(`, `)})`:``}${r.length>0?`, values from ${Math.min(...r)} to ${Math.max(...r)}`:``}.`}function FT(e,t,n){let r=`${e.replace(/-/g,` `)} chart`,i=t?.title?NT(t.title):``,a=t?.description?NT(t.description):``;return{label:i||r,description:[a,PT(r,n)].filter(Boolean).join(` `)}}function IT(e,t,n){let r=Array.from(e.children).find(e=>e.tagName===t),i=r??e.ownerDocument.createElementNS(MT,t);i.textContent=n,r||e.insertBefore(i,e.firstChild)}function LT(e,t){e.setAttribute(`role`,`img`),e.setAttribute(`aria-label`,t.label),IT(e,`desc`,t.description),IT(e,`title`,t.label)}function RT(e){return(e.querySelector(`.bc-frame-body`)??e).querySelector(`svg`)}function zT(e,t,n){let r=RT(e);r&&t.accessibility&<(r,t.accessibility);let i=e.querySelector(`.bc-frame`);if(!i)return;let a=[];i.classList.forEach(e=>{e.startsWith(`bc-theme-`)&&a.push(e)});for(let e of a)i.classList.remove(e);t.theme&&i.classList.add(`bc-theme-${t.theme}`),n.constrained&&i.classList.add(`bc-frame--constrained`)}function BT(e,t,n={}){if(n.transition||(Py(e).interrupt(),e.replaceChildren(),jT(e)),t.data.labels.length===0){n.transition&&(Py(e).interrupt(),e.replaceChildren(),jT(e));return}let r=t;if(n.stripColors){let e={...t};if(t.properties&&(e.properties=t.properties.filter(e=>e.key!==`colors`&&e.key!==`colorPalette`)),t.options){let{colors:n,colorPalette:r,...i}=t.options;e.options=i}r=e}let i=ET(e,r.properties,n),a=ST(r,n.sceneIndex),o=bS(a.chartType);if(!o)return;Ug(e,a.chartType);let s=kT(e,a.chartType,!!n.transition);s&&e.replaceChildren();let c=wr(e),l=tw(a.options,c,a.chartType),u;if(n.thumbnail)u=null;else{let e=a.frame?.padding??n.padding??`16px`;u={...a.frame??{},padding:e}}let d=Py(e);n.transition&&d.beginCommit(),o(e,a.data,{frame:u,sort:a.sort,...l,sortMode:a.sortMode??l.sortMode,colorizes:a.colorizes.length>0?a.colorizes:void 0,highlights:a.highlights.length>0?a.highlights:void 0,areaFills:a.areaFills.length>0?a.areaFills:void 0,annotations:a.annotations.length>0?a.annotations:void 0,seriesOverrides:a.seriesOverrides.length>0?a.seriesOverrides:void 0},!!n.transition),n.transition&&d.commit({duration:tg(),mode:n.transitionMode}),zT(e,{theme:n.theme??a.theme,accessibility:FT(a.chartType,u,a.data)},i),AT(e,a.chartType,s)}function VT(e,t,n){let r=document.createElement(`div`);r.style.cssText=`color: #888; font-family: monospace; padding: 0.75rem; white-space: pre-wrap;`,r.textContent=`Blueprint Chart: ${t}\n${n}`,e.replaceChildren(r)}function HT(e,t,n){if(!t){n?.transition||e.replaceChildren();return}let r;try{r=ee(t)}catch(t){VT(e,`could not parse chart`,t instanceof Error?t.message:String(t));return}try{BT(e,dT(r),n)}catch(t){VT(e,`could not render chart`,t instanceof Error?t.message:String(t))}}function UT(e,t,n){let r=0,i=!1,a=document.createElement(`nav`);a.className=`blueprint-chart-scenes`;let o=document.createElement(`button`);o.className=`blueprint-chart-scenes-prev`,o.textContent=`Previous`;let s=document.createElement(`button`);s.className=`blueprint-chart-scenes-next`,s.textContent=`Next`;let c=document.createElement(`span`);c.className=`blueprint-chart-scenes-counter`,a.appendChild(o),a.appendChild(c),a.appendChild(s),t.length>0&&e.appendChild(a);function l(){if(t.length===0){c.textContent=``;return}c.textContent=`${r+1} / ${t.length}`}function u(e){if(i||t.length===0||!Number.isFinite(e))return;let a=(Math.floor(e)%t.length+t.length)%t.length;r=a,l(),n(t[a],a)}return o.addEventListener(`click`,()=>u(r-1)),s.addEventListener(`click`,()=>u(r+1)),l(),{get currentScene(){return r},get totalScenes(){return t.length},next(){u(r+1)},previous(){u(r-1)},goTo:u,destroy(){i||(i=!0,a.remove())}}}var WT=UT;return document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,b):b(),e.createSceneController=UT,e.createStepController=WT,e.initBlueprint=b,e.renderBpc=HT,e})({});
|
|
342
|
+
`,document.head.appendChild(e)}function Tx(e){let t=e?Sh(e):null,n=e=>t?t(e):String(e);return e=>e.series?`${e.series} – ${e.label}: ${n(e.value)}`:`${e.label}: ${n(e.value)}`}function Ex(e,t){let{width:n,height:r,points:i,tooltip:a=!0,crosshair:o=!1,crosshairDirection:s=ti.Both,crosshairStyle:c=ni.Dashed,crosshairColor:l=`#999`,format:u=Tx(t.numberFormat),container:d}=t;if(i.length===0){let e=()=>{};return d&&Sx.set(d,e),e}let f=c===ni.Solid?`none`:c===ni.Dotted?`2,2`:`4,3`,p=[...new Set(i.map(e=>e.cx))].sort((e,t)=>e-t),m=$(e),h=null;a&&(wx(),h=document.createElement(`div`),h.className=xx,document.body.appendChild(h));let g=`.bc-annotations`,_=!m.select(g).empty(),v=e=>_?m.insert(e,g):m.append(e),y=o&&(s===ti.Both||s===ti.Vertical),b=o&&(s===ti.Both||s===ti.Horizontal),x=null,S=null;y&&(x=v(`line`).attr(`class`,`bc-crosshair bc-crosshair-v`).attr(`y1`,0).attr(`y2`,r).style(`stroke`,l).attr(`stroke-width`,1).style(`stroke-dasharray`,f).attr(`pointer-events`,`none`).style(`display`,`none`)),b&&(S=v(`line`).attr(`class`,`bc-crosshair bc-crosshair-h`).attr(`x1`,0).attr(`x2`,n).style(`stroke`,l).attr(`stroke-width`,1).style(`stroke-dasharray`,f).attr(`pointer-events`,`none`).style(`display`,`none`));let C=v(`circle`).attr(`class`,`bc-proximity-dot`).attr(`r`,6).attr(`fill`,`none`).attr(`stroke`,`#333`).attr(`stroke-width`,1).attr(`opacity`,.45).attr(`pointer-events`,`none`).style(`display`,`none`),w=v(`rect`).attr(`class`,`bc-proximity-overlay`).attr(`width`,n).attr(`height`,r).attr(`fill`,`none`).attr(`pointer-events`,`all`);function T(e,t){if(p.length===0)return null;let n=Ni(p,e),r=p[n],a=i.filter(e=>e.cx===r);if(a.length===0)return null;let o=a[0],s=Math.abs(a[0].cy-t);for(let e=1;e<a.length;e++){let n=Math.abs(a[e].cy-t);n<s&&(o=a[e],s=n)}return o}let E=t=>{let[n,r]=xs(t,e),i=T(n,r);i&&(C.attr(`cx`,i.cx).attr(`cy`,i.cy).attr(`stroke`,i.color).style(`display`,null),h&&(h.textContent=u(i),h.style.display=`block`,jv(C.node(),h,{placement:`top`,middleware:[Ov(8),Av(),kv()]}).then(({x:e,y:t})=>{h&&(h.style.left=`${e}px`,h.style.top=`${t}px`)})),x&&x.attr(`x1`,i.cx).attr(`x2`,i.cx).style(`display`,null),S&&S.attr(`y1`,i.cy).attr(`y2`,i.cy).style(`display`,null))},D=()=>{C.style(`display`,`none`),h&&(h.style.display=`none`),x&&x.style(`display`,`none`),S&&S.style(`display`,`none`)},O=w.node();O.addEventListener(`mousemove`,E),O.addEventListener(`mouseleave`,D);let k=()=>{O.removeEventListener(`mousemove`,E),O.removeEventListener(`mouseleave`,D),w.remove(),C.remove(),h&&=(h.remove(),null),x&&x.remove(),S&&S.remove(),d&&Sx.get(d)===k&&Sx.delete(d)};return d&&Sx.set(d,k),k}var Dx={circle:nm,square:sm,diamond:om,triangle:mm,triangleDown:gm??mm,cross:rm,star:fm};function Ox(e,t,n){switch(n){case Jr.First:return e===0;case Jr.Last:return e===t-1;case Jr.FirstLast:return e===0||e===t-1;case Jr.All:default:return!0}}function kx(e,t,n,r,i=!1){let a=r.symbol??qr.Circle,o=r.showOn??Jr.FirstLast,s=r.style??Yr.Filled,c=r.size&&r.size>0?r.size:3.5,l=r.opacity??1,u=`var(--bs-body-bg, #fff)`,d=t.filter(e=>Ox(e.index,n,o)),f=i?og():0;if(a===qr.Circle){e.selectAll(`path.bc-symbol`).remove();let t=e.selectAll(`circle.bc-symbol`).data(d).join(e=>e.append(`circle`).attr(`class`,`bc-symbol`).attr(`cx`,e=>e.cx).attr(`cy`,e=>e.cy).attr(`r`,c).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l),e=>e,e=>e.remove());(i?t.transition().duration(f):t).attr(`cx`,e=>e.cx).attr(`cy`,e=>e.cy).attr(`r`,c).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l)}else{let t=Dx[a]??nm,n=Math.PI*c*c,r=_m().type(t).size(n);e.selectAll(`circle.bc-symbol`).remove();let o=e.selectAll(`path.bc-symbol`).data(d).join(e=>e.append(`path`).attr(`class`,`bc-symbol`).attr(`transform`,e=>`translate(${e.cx},${e.cy})`).attr(`d`,r).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l),e=>e,e=>e.remove());(i?o.transition().duration(f):o).attr(`transform`,e=>`translate(${e.cx},${e.cy})`).attr(`d`,r).attr(`fill`,e=>s===Yr.Filled?e.color:u).attr(`stroke`,e=>e.color).attr(`stroke-width`,s===Yr.Hollow?1.5:0).attr(`opacity`,l)}}function Ax(e,t,n={},r=!1){ag(r),Cx(e);let i=[],a=[],o=null,s=null,c,l,u,d=Yg.for(e);if(r){let t=Oy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`line`?(i=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),a=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),o=e.querySelector(`.bc-frame .bc-symbols`)):t&&(s=cg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))c.set(e,n);e.replaceChildren()}let{body:f}=yh(e,n.frame),p=eg(f).width,m=Xh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),h=Qh(p,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m),g=Mg(t.labels,Math.max(0,p-(h.left??50)-(h.right??20)),n.horizontalAxis);g!==void 0&&(h.bottom=g);let{chartArea:_,width:v,height:y,margin:b}=ng(f,h),x=Rh(l,b),S=Si(t.labels,n.horizontalAxis?.range),C=S.map(e=>t.labels[e]),w=S.map(e=>t.values[e]),T=C.map((e,t)=>({label:e,value:w[t]})),E=T.filter(e=>Number.isFinite(e.value)),D=cd().domain(C).range([0,v]).padding(n.edgePadding?.6:0),O=D,k=e=>D(e.label)??0,ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(w,n.verticalAxis?.range,n.verticalAxis?.scaleType,!1),M=ee?Ed().domain([A,j]).nice().range([y,0]):Sd().domain([A,j]).nice().range([y,0]),N=M.domain(),P=N[0]<0&&N[1]>0?M(0):void 0;d.attach(_,x),d.update({vertical:{scale:M,height:y,options:{...n.verticalAxis,gridWidth:v,topPadding:b.top}},horizontal:{scale:O,height:y,options:{...n.horizontalAxis,width:v,zeroY:P}}});let F=_.ownerSVGElement,I=My(F,e,`plot`,{x:-1,y:-1,width:v+2,height:y+2}),L=$(_).append(`g`).attr(`clip-path`,`url(#${I})`),R=L.node(),z=n.colors?.[0]??`#4e79a7`,B=bx(n.interpolation),V=n.areaFill??!1,te=n.areaFillOpacity??.2,ne=e=>Number.isFinite(e.value),re=Qp().curve(B).defined(ne).x(e=>k(e)).y0(y).y1(e=>M(e.value)),ie=Zp().curve(B).defined(ne).x(e=>k(e)).y(e=>M(e.value)),ae=$(R).append(`g`).node(),oe=$(R).append(`g`).node();if(r){for(let e of i)ae.appendChild(e);for(let e of a)oe.appendChild(e)}let H=zy(e),se=[{name:`line`,points:T}];Zy(H,{role:`series-area`,parent:ae,selector:`.bc-area`,data:V?se:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({d:re(e.points)??``,fill:z,opacity:te})}),Zy(H,{role:`series-line`,parent:oe,selector:`.bc-line`,data:se,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>({d:ie(e.points)??``,fill:`none`,stroke:z})}),$(R).append(`g`).selectAll(`.bc-dot`).data(E,e=>e.label).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`cx`,e=>k(e)).attr(`cy`,e=>M(e.value)).attr(`r`,3).attr(`fill`,z).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let ce={left:b.left,top:b.top,width:v+2,height:y+2};if(ab(H,{svg:F,clipId:I,group:_,from:u,to:ce,active:r&&(i.length>0||a.length>0)}),n.annotations?.length&&wy(_,n.annotations,{scaleX:O,scaleY:M,data:T,width:v,height:y,backgroundColor:wr(e),transition:r,priorAnnotations:c}),(n.tooltips||n.crosshair)&&Ex(_,{width:v,height:y,points:E.map(e=>({cx:k(e),cy:M(e.value),label:e.label,value:e.value,color:z})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e}),n.valueLabels){let e=$(_).insert(`g`,()=>R.nextSibling),t=e=>Cb(String(e.value),k(e),M(e.value),{width:v,height:y,margin:b});e.selectAll(`.bc-value-label`).data(E,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`x`,e=>t(e).x).attr(`y`,e=>t(e).y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(e=>String(e.value))}if(n.lineSymbols){let e=T.map((e,t)=>({cx:k(e),cy:M(e.value),color:z,index:t})).filter(e=>Number.isFinite(e.cy)),t;o?(_.appendChild(o),t=$(o)):t=$(_).append(`g`).attr(`class`,`bc-symbols`),kx(t,e,T.length,n.lineSymbols,r)}ky(e,{chartType:`line`,margin:b,plotRect:ce}),s&&(sg(L.node()),lg(e,s))}var jx=28,Mx=18,Nx=20,Px=12,Fx=.3;function Ix(e,t,n,r=jx){if(e.length===0)return[];if(e.length===1)return[Math.max(t,Math.min(n,e[0]))];let i=e.length,a=n-t,o=(i-1)*r>a?Math.max(0,a/(i-1)):r,s=[...e];for(let e=0;e<10;e++){for(let e=1;e<s.length;e++)s[e]-s[e-1]<o&&(s[e]=s[e-1]+o);s[s.length-1]>n&&(s[s.length-1]=n);for(let e=s.length-2;e>=0;e--)s[e+1]-s[e]<o&&(s[e]=s[e+1]-o);s[0]<t&&(s[0]=t)}return s}function Lx(e,t,n){let{outerRadius:r,fontSize:i=12,bgColor:a=`#fff`}=n,o=r+2,s=o+Mx,c=jx/s,l=[],u=[];for(let e of t){let t=(e.startAngle+e.endAngle)/2;t<Math.PI?u.push({...e,midAngle:t}):l.push({...e,midAngle:t})}function d(t,n){if(t.length===0)return;t.sort((e,t)=>e.midAngle-t.midAngle);let r=n?.05:Math.PI+.05,l=n?Math.PI-.05:2*Math.PI-.05,u=Ix(t.map(e=>e.midAngle),r,l,c),d=n?1:-1,f=e.append(`g`).attr(`class`,`bc-arc-labels`);t.forEach((e,t)=>{let r=e.showLabel!==!1,c=e.showValue!==!1;if(!r&&!c)return;let l=u[t]-Math.PI/2,p=Math.cos(l)*o,m=Math.sin(l)*o,h=Math.cos(l)*s,g=Math.sin(l)*s,_=h+d*Nx;f.append(`polyline`).attr(`class`,`bc-arc-label-line`).attr(`points`,`${p},${m} ${h},${g} ${_},${g}`).attr(`fill`,`none`).attr(`stroke`,`var(--bc-text-color, #999)`).attr(`stroke-width`,1).attr(`opacity`,.5);let v=_+d*4,y=f.append(`text`).attr(`class`,`bc-arc-direct-label`).attr(`x`,v).attr(`y`,g).attr(`text-anchor`,n?`start`:`end`).attr(`font-size`,`${i}px`);if(r&&y.append(`tspan`).attr(`x`,v).attr(`dy`,c?`-0.1em`:`0.35em`).attr(`font-weight`,`bold`).attr(`fill`,Tr(e.color,a)).text(e.label),c){let t=e.displayAsPercentage&&e.percentage!=null?`${Math.round(e.percentage)}%`:String(e.value);y.append(`tspan`).attr(`x`,v).attr(`dy`,r?`1.2em`:`0.35em`).attr(`fill`,`var(--bc-text-color, #666)`).text(t)}})}d(u,!0),d(l,!1)}var Rx=.3;function zx(e,t,n){let{outerRadius:r,innerRadius:i=0,fontSize:a=12}=n,o=(i+r)/2,s=e.append(`g`).attr(`class`,`bc-arc-labels-inside`),c=[],l=r-i;for(let e of t){if(e.endAngle-e.startAngle<Rx||Fh(e.label,a)>l*2){c.push(e);continue}let t=e.showLabel!==!1,n=e.showValue!==!1;if(!t&&!n)continue;let r=(e.startAngle+e.endAngle)/2-Math.PI/2,i=Math.cos(r)*o,u=Math.sin(r)*o,d=s.append(`text`).attr(`class`,`bc-arc-inside-label`).attr(`x`,i).attr(`y`,u).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`${a}px`),f=Sr(e.color);if(t&&d.append(`tspan`).attr(`x`,i).attr(`dy`,n?`-0.5em`:`0em`).attr(`font-weight`,`bold`).attr(`fill`,f).text(e.label),n){let n=e.displayAsPercentage&&e.percentage!=null?`${Math.round(e.percentage)}%`:String(e.value);d.append(`tspan`).attr(`x`,i).attr(`dy`,t?`1.2em`:`0em`).attr(`fill`,f).attr(`opacity`,.85).text(n)}}c.length>0&&Lx(e,c,{outerRadius:r,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:n.bgColor})}function Bx(e,t,n){let{outerRadius:r,innerRadius:i=0,fontSize:a=12,bgColor:o}=n,s=(i+r)/2,c=[],l=[],u=r-i;for(let e of t){let t=e.endAngle-e.startAngle,n=t*s,r=Fh(e.label,a);n>r*1.2&&t>=Rx&&r<=u*2?c.push(e):l.push(e)}c.length>0&&zx(e,c,{outerRadius:r,innerRadius:i,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:o}),l.length>0&&Lx(e,l,{outerRadius:r,chartWidth:n.chartWidth,chartHeight:n.chartHeight,fontSize:a,bgColor:o})}function Vx(e,t,n={width:0,height:0}){if(e.length===0)return{left:0,right:0,top:0,bottom:0};let r=48+Ih(e,Px)+6,i=e.length*jx/2,a=Math.max(10,i-t+20),o=Hx(r,n.width),s=Hx(a,n.height);return{left:o,right:o,top:s,bottom:s}}function Hx(e,t){return t>0?Math.min(e,t*Fx):e}var Ux=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function Wx(e,t,n={},r=!1){ag(r),Cx(e);let i=t,a=[],o=[],s=[],c=null,l,u,d,f=Yg.for(e);if(r){let t=Oy(e);u=t?.margin,d=t?.plotRect,f.detach(),t?.chartType===`line-multi`?(a=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),o=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),s=Array.from(e.querySelectorAll(`.bc-frame .bc-symbols`))):t&&(c=cg(e)),l=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))l.set(e,n);e.replaceChildren()}let{body:p}=yh(e,n.frame),m=i.series??[],h=m.filter(e=>!lx(e.name,n.seriesOverrides));(n.sortMode===`total`||n.sortMode===`within-groups`)&&(h=[...h].sort((e,t)=>{let n=e.values.reduce((e,t)=>e+t,0);return t.values.reduce((e,t)=>e+t,0)-n}));let g=rx(n.colors??Ux,m.length),_=h.map(e=>e.name),v=Ey(n.colorizes),y=n.seriesOverrides,b=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,x=b?`direct`:n.legend===!1?`none`:`legend`,S=_.filter(e=>ux(e,x,y)===`direct`),C=n.legend!==!1&&!b,w=eg(p).width,T=n.legendPosition??`top`,E=w>0&&w<350&&(T===`left`||T===`right`)?`top`:T,D=n.legendAnchor??`start`,O=Si(i.labels,n.horizontalAxis?.range),k=O.map(e=>i.labels[e]);h=h.map(e=>({...e,values:O.map(t=>e.values[t])})),i={...i,labels:k,series:h};let ee=h.flatMap(e=>e.values),A=Xh(ee,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),j=Qh(w,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,A),M=S.length>0?Yb(S):0,N=j.top!=null,P=Math.max(0,w-(j.left??50)-(j.right??20)-M),F=C?Jb(_,E,P):{width:0,height:0},I=C?F.height+15:0,L={...j};C&&E===`top`&&(L.top=I+(N?15:0)),C&&E===`left`&&(L.left=(L.left??50)+F.width+10),C&&E===`right`&&(L.right=(L.right??20)+F.width+10),M>0&&(L.right=(L.right??20)+M),L.bottom=(Mg(i.labels,Math.max(0,w-(L.left??50)-(L.right??20)),n.horizontalAxis)??Math.max(L.bottom??24,24))+(E===`bottom`?I:0);let{chartArea:R,width:z,height:B,margin:V}=ng(p,L),te=Rh(u,V),[ne,re]=wi(ee,n.verticalAxis?.range,n.verticalAxis?.scaleType,!1),ie=cd().domain(i.labels).range([0,z]).padding(n.edgePadding?.6:0),ae=ie,oe=e=>ie(i.labels[e])??0,H=n.verticalAxis?.scaleType===`log`?Ed().domain([ne,re]).nice().range([B,0]):Sd().domain([ne,re]).nice().range([B,0]),se=H.domain(),ce=se[0]<0&&se[1]>0?H(0):void 0;f.attach(R,te),f.update({vertical:{scale:H,height:B,options:{...n.verticalAxis,gridWidth:z,topPadding:V.top}},horizontal:{scale:ae,height:B,options:{...n.horizontalAxis,width:z,zeroY:ce}}});let le=R.ownerSVGElement,ue=My(le,e,`plot`,{x:0,y:0,width:z,height:B}),de=$(R).append(`g`).attr(`clip-path`,`url(#${ue})`),U=de.node(),W=h.map(e=>({name:e.name,values:e.values,colorIndex:m.findIndex(t=>t.name===e.name)})),fe=bx(n.interpolation);n.areaFills?.length&&Gx(U,n.areaFills,h,oe,i.labels.length,H,fe);let pe=e=>Number.isFinite(e),me=[];h.forEach((e,t)=>{i.labels.forEach((n,r)=>{pe(e.values[r])&&me.push({label:n,value:e.values[r],series:e.name,colorIndex:t})})});let he=n.lineSymbols,ge={solid:``,dotted:`2,4`,dashed:`8,4`,"dash-dot":`8,4,2,4`},_e=n.valueLabels??!1,ve=cb(n.highlights,_),ye=n.areaFill??!1,be=n.areaFillOpacity??.2,xe=e=>v.get(e.name)??ax(e.name,e.colorIndex,g,y),Se=Qp().curve(fe).defined(pe).x((e,t)=>oe(t)).y0(B).y1(e=>H(e)),G=zy(e),K=$(U).append(`g`).node(),Ce=$(U).append(`g`).node(),we=new Set(W.map(e=>e.name));if(r){for(let e of a)we.has(e.__data__?.name??``)&&K.appendChild(e);for(let e of o)we.has(e.__data__?.name??``)&&Ce.appendChild(e)}Zy(G,{role:`series-area`,parent:K,selector:`.bc-area`,data:ye?W:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({"data-series":e.name,d:Se(e.values)??``,fill:xe(e),opacity:lb(ve,e.name,be)})}),Zy(G,{role:`series-line`,parent:Ce,selector:`.bc-line`,data:W,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>{let t=cx(e.name,n.interpolation??`linear`,y),r=Zp().curve(bx(t)).defined(pe).x((e,t)=>oe(t)).y(e=>H(e));return{"data-series":e.name,d:r(e.values)??``,fill:`none`,stroke:xe(e),style:`stroke-width:${sx(e.name,y)}`,"stroke-dasharray":ge[ox(e.name,y)]??``,opacity:lb(ve,e.name,1)}}}),$(U).append(`g`).selectAll(`.bc-dot`).data(me,e=>e.label+`\0`+e.series).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`data-series`,e=>e.series).attr(`cx`,e=>oe(i.labels.indexOf(e.label))).attr(`cy`,e=>H(e.value)).attr(`r`,3).attr(`fill`,e=>xe({name:e.series,values:[],colorIndex:e.colorIndex})).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let Te={left:V.left,top:V.top,width:z,height:B};if(ab(G,{svg:le,clipId:ue,group:R,from:d,to:Te,active:r&&(o.length>0||a.length>0)}),n.annotations?.length){let t=i.labels.map((e,t)=>({label:e,value:h[0]?.values[t]??0}));wy(R,n.annotations,{scaleX:ae,scaleY:H,data:t,width:z,height:B,backgroundColor:wr(e),transition:r,priorAnnotations:l})}let Ee=$(R).insert(`g`,()=>U.nextSibling).attr(`class`,`bc-value-labels`);me.forEach(e=>{if(!dx(e.series,_e,y))return;let t=oe(i.labels.indexOf(e.label)),n=H(e.value),r=Cb(String(e.value),t,n,{width:z,height:B,margin:V});Ee.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.series).attr(`x`,r.x).attr(`y`,r.y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(String(e.value))}),(n.tooltips||n.crosshair)&&Ex(R,{width:z,height:B,points:me.map(e=>({cx:oe(i.labels.indexOf(e.label)),cy:H(e.value),label:e.label,value:e.value,series:e.series,color:ax(e.series,e.colorIndex,g,y)})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e});let De=he?{name:``,lineSymbols:!0,symbolShape:he.symbol,symbolShowOn:he.showOn,symbolStyle:he.style,symbolSize:he.size,symbolOpacity:he.opacity}:void 0,Oe=i.labels.length;h.forEach((e,t)=>{let n=px(e.name,De,y);if(!n)return;let a={symbol:n.symbolShape??he?.symbol??qr.Circle,showOn:n.symbolShowOn??he?.showOn??Jr.FirstLast,style:n.symbolStyle??he?.style??Yr.Filled,size:n.symbolSize??he?.size??3.5,opacity:n.symbolOpacity??he?.opacity??1},o=i.labels.map((n,r)=>({cx:oe(r),cy:H(e.values[r]),color:ax(e.name,t,g,y),index:r})).filter(e=>Number.isFinite(e.cy)),c=s.find(t=>t.getAttribute(`data-series-name`)===e.name),l,u=!1;c?(R.appendChild(c),l=$(c),u=!0):l=$(R).append(`g`).attr(`class`,`bc-symbols`).attr(`data-series`,e.name).attr(`data-series-name`,e.name),kx(l,o,Oe,a,r&&u)});let ke=i.labels.length-1,Ae=oe(ke)+6,je=[];if(h.forEach((e,t)=>{if(ux(e.name,x,y)!==`direct`)return;let n=e.values[ke];if(!Number.isFinite(n))return;let r=y?.find(t=>t.name===e.name)?.labelText||e.name;je.push({name:e.name,index:t,naturalY:H(n),text:r})}),je.length>0){je.sort((e,t)=>e.naturalY-t.naturalY);let e=Ix(je.map(e=>e.naturalY),0,B,14);je.forEach((t,n)=>{$(R).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,t.name).attr(`x`,Ae).attr(`y`,e[n]).attr(`dy`,`0.35em`).attr(`font-size`,`11px`).attr(`fill`,ax(t.name,t.index,g,y)).text(t.text)})}let Me=_.filter(e=>ux(e,x,y)===`legend`);if(C&&Me.length>0){let e=Me.map(e=>ax(e,m.findIndex(t=>t.name===e),g,y)),t=0,n=0;if(E===`top`){let e=N?15:0;n=-(F.height+10+e)}else E===`bottom`?n=B+Math.max(V.bottom-I,0):E===`left`?t=-(F.width+10):E===`right`&&(t=z+10);tx(R,Me,e,n,E,D,z,B,t,[],{left:V.left,right:V.right})}ky(e,{chartType:`line-multi`,margin:V,plotRect:Te}),c&&(sg(de.node()),lg(e,c))}function Gx(e,t,n,r,i,a,o){let s=$(e).append(`g`).attr(`class`,`bc-area-fills`);for(let e of t){let t=n.find(t=>t.name===e.from),i=n.find(t=>t.name===e.to);if(!t||!i)continue;let c=e.interpolation?bx(e.interpolation):o,l=(e.opacity??30)/100,u=e.color??`#ccc`,d=e.negativeColor;if(d)qx(s,t.values,i.values,r,a,c,u,d,l);else{let e=Qp().curve(c).defined((e,t)=>Number.isFinite(e)&&Number.isFinite(i.values[t])).x((e,t)=>r(t)).y0((e,t)=>a(i.values[t])).y1(e=>a(e));s.append(`path`).attr(`class`,`bc-area-fill`).attr(`d`,e(t.values)??``).attr(`fill`,u).attr(`opacity`,l)}}}function Kx(e,t,n,r){let i=e-n,a=t-r;if(i===0&&a===0||i>0&&a>0||i<0&&a<0)return null;let o=a-i;if(o===0)return null;let s=-i/o;return s<0||s>1?null:s}function qx(e,t,n,r,i,a,o,s,c){let l=t.length;if(l===0)return;let u=[],d=e=>Number.isFinite(t[e])&&Number.isFinite(n[e]);for(let e=0;e<l;e++){if(!d(e)){u.push(null);continue}let a=r(e),o=i(t[e]),s=i(n[e]);if(u.push({x:a,fromY:o,toY:s}),e<l-1&&d(e+1)){let c=i(t[e+1]),l=i(n[e+1]),d=Kx(o,c,s,l);if(d!==null&&d>0&&d<1){let t=a+d*(r(e+1)-a),n=o+d*(c-o),i=s+d*(l-s);u.push({x:t,fromY:n,toY:i})}}}let f=[],p=[],m=null;for(let e of u){if(!e){p.length>=2&&m!==null&&f.push({points:p,positive:m}),p=[],m=null;continue}let t=e.fromY-e.toY,n=t<0;m===null?(m=t===0?null:n,p.push(e)):t===0?(p.push(e),p.length>=2&&f.push({points:p,positive:m}),p=[e],m=null):m===n?p.push(e):(p.push(e),p.length>=2&&f.push({points:p,positive:m}),p=[e],m=n)}p.length>=2&&m!==null&&f.push({points:p,positive:m});for(let t of f){let n=t.points,r=`M${n[0].x},${n[0].fromY}`;for(let e=1;e<n.length;e++)r+=`L${n[e].x},${n[e].fromY}`;for(let e=n.length-1;e>=0;e--)r+=`L${n[e].x},${n[e].toY}`;r+=`Z`,e.append(`path`).attr(`class`,`bc-area-fill ${t.positive?`bc-area-fill-pos`:`bc-area-fill-neg`}`).attr(`d`,r).attr(`fill`,t.positive?o:s).attr(`opacity`,c)}}var Jx=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function Yx(e){return Zu(`,`)(Number(e.toPrecision(12)))}var Xx=class extends ch{initialize(){}};function Zx(e,t,n={},r=!1){Qx(e,t,n,.6,r)}function Qx(e,t,n,r,i=!1){ag(i);let a=null,o;if(i){let t=Oy(e),n=r>0?`donut`:`pie`;t&&t.chartType!==n&&(a=cg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))o.set(e,n);e.replaceChildren()}let{body:s}=yh(e,n.frame),c=[...t.labels],l=[...t.values];if(n.sort===Xr.Ascending||n.sort===Xr.Descending){let e=c.map((e,t)=>({label:e,value:l[t]}));e.sort((e,t)=>n.sort===Xr.Ascending?e.value-t.value:t.value-e.value),c=e.map(e=>e.label),l=e.map(e=>e.value)}if(n.sliceMax&&n.sliceMax>0&&c.length>n.sliceMax){let e=n.sliceMax-1,t=c.map((e,t)=>({label:e,value:l[t],i:t})).sort((e,t)=>t.value-e.value||e.i-t.i),r=t.slice(0,e).sort((e,t)=>e.i-t.i),i=t.slice(e).reduce((e,t)=>e+t.value,0);c=[...r.map(e=>e.label),n.sliceGroupLabel??`Others`],l=[...r.map(e=>e.value),i]}let u=l.reduce((e,t)=>e+t,0),d=l.map(e=>u>0?e/u*100:0),f=rx(n.colors??Jx,c.length),p=typeof n.directLabelling==`string`?n.directLabelling:n.directLabelling?ii.Auto:ii.Off,m=!!p&&(p!==ii.Auto||n.legend!==!0),h=(n.showValues??!0)&&!m?l.map((e,t)=>`(${n.displayAsPercentage?`${Math.round(d[t])}%`:Yx(e)})`):[],g=n.legend!==!1&&!m,_=eg(s).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x=h.length>0?c.map((e,t)=>`${e} ${h[t]}`):c,S=Math.max(0,_-50-20),C=g?Jb(x,y,S):{width:0,height:0},w=g?C.height+15:0,T={};if(g&&y===`top`&&(T.top=w),g&&y===`bottom`&&(T.bottom=24+w),g&&y===`left`&&(T.left=50+C.width+10),g&&y===`right`&&(T.right=20+C.width+10),m){let e=eg(s),t=e.width-40,n=(e.height>0?e.height:400)-40,r=Math.min(t,n)/2,i=Vx(c,r,{width:t,height:n});T.left=(T.left??20)+i.left,T.right=(T.right??20)+i.right,T.top=(T.top??20)+i.top,T.bottom=(T.bottom??20)+i.bottom}let{chartArea:E,width:D,height:O,margin:k}=ng(s,T),ee=Math.min(D,O)/2,A=ee*r,j=ad().domain(c).range(f);if(l.some(e=>e<0)){let e=c.filter((e,t)=>l[t]<0);console.warn(`[blueprint-chart] Ignoring ${e.length} negative slice(s) on an arc chart: ${e.join(`, `)}.`);let t=c.map((e,t)=>({label:e,value:l[t]})).filter(e=>e.value>=0);c=t.map(e=>e.label),l=t.map(e=>e.value)}let M=tm().sort(null),N=Gp().innerRadius(A).outerRadius(ee),P=$(E).append(`g`).attr(`transform`,`translate(${D/2},${O/2})`),F=Ey(n.colorizes),I=M(l),L=I.map((e,t)=>({label:c[t],value:l[t],arc:e,color:F.get(c[t])??j(c[t])})),R=zy(e),z=cb(n.highlights,c);Zy(R,{role:`mark-per-category`,parent:P.append(`g`).node(),selector:`.bc-arc`,data:L,key:e=>e.label,insert:e=>e.append(`path`).attr(`class`,`bc-arc`),attrs:e=>{let t={"data-series":e.label,d:N(e.arc)??``,fill:e.color};return z.size>0?{...t,opacity:lb(z,e.label)}:t}});let B=new Xx(P);if(n.tooltips&&B.use(Fv()),B.draw(L),n.annotations?.length){let t=n.annotations.filter(e=>e.kind===`range`);t.length&&console.warn(`[blueprint-chart] Range annotations have no meaning on an arc chart; ignoring ${t.length}.`);let r=new Map(L.map(e=>[e.label,N.centroid(e.arc)])),a=n.annotations.filter(e=>e.kind!==`range`);a.length&&Ty(a,{scaleX:ad().domain([...r.keys()]).range([...r.values()].map(e=>e[0]+D/2)),scaleY:Sd().domain([0,1]).range([0,1]),data:L.map(e=>({label:e.label,value:(r.get(e.label)?.[1]??0)+O/2})),width:D,height:O,backgroundColor:wr(e),transition:i,priorAnnotations:o}).postDraw({base:$(E)},void 0)}if(m){let t=I.map((e,t)=>({label:c[t],value:e.data,startAngle:e.startAngle,endAngle:e.endAngle,color:j(c[t]),percentage:d[t],displayAsPercentage:n.displayAsPercentage,showLabel:n.showLabels??!0,showValue:n.showValues??!0})),r=P,i={outerRadius:ee,innerRadius:A,chartWidth:D,chartHeight:O,bgColor:wr(e)};p===ii.Inside?zx(r,t,i):p===ii.Auto?Bx(r,t,i):Lx(r,t,i)}if(n.showTotal&&r>0&&!n.displayAsPercentage){let e=Yx(u);P.append(`text`).attr(`class`,`bc-arc-total-label`).attr(`text-anchor`,`middle`).attr(`dy`,`-0.3em`).attr(`font-size`,`11px`).attr(`fill`,`var(--bc-text-color, #555)`).attr(`opacity`,.7).text(`Total`),P.append(`text`).attr(`class`,`bc-arc-total-value`).attr(`text-anchor`,`middle`).attr(`dy`,`1em`).attr(`font-size`,`18px`).attr(`font-weight`,`bold`).attr(`fill`,`var(--bc-text-color, #555)`).text(e)}if(g){let e=0,t=0;y===`top`?t=-(C.height+10):y===`bottom`?t=O+25:y===`left`?e=-(C.width+10):y===`right`&&(e=D+10),tx(E,c,f,t,y,b,D,O,e,h,{left:k.left,right:k.right})}ky(e,{chartType:r>0?`donut`:`pie`}),a&&(sg(P.node()),lg(e,a))}function $x(e,t,n={},r=!1){Qx(e,t,n,0,r)}function eS(e,t,n={},r=!1){ag(r),Cx(e);let i=[],a=[],o=null,s=null,c,l,u,d=Yg.for(e);if(r){let t=Oy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`area`?(i=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),a=Array.from(e.querySelectorAll(`.bc-frame .bc-line`)),o=e.querySelector(`.bc-frame .bc-symbols`)):t&&(s=cg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))c.set(e,n);e.replaceChildren()}let{body:f}=yh(e,n.frame),p=eg(f).width,m=Xh(t.values,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),h=Qh(p,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,m),g=Mg(t.labels,Math.max(0,p-(h.left??50)-(h.right??20)),n.horizontalAxis);g!==void 0&&(h.bottom=g);let{chartArea:_,width:v,height:y,margin:b}=ng(f,h),x=Rh(l,b),S=Si(t.labels,n.horizontalAxis?.range),C=S.map(e=>t.labels[e]),w=S.map(e=>t.values[e]),T=C.map((e,t)=>({label:e,value:w[t]})),E=T.filter(e=>Number.isFinite(e.value)),D=cd().domain(C).range([0,v]).padding(n.edgePadding?.6:0),O=D,k=e=>D(e.label)??0,ee=n.verticalAxis?.scaleType===`log`,[A,j]=wi(w,n.verticalAxis?.range,n.verticalAxis?.scaleType),M=ee?Ed().domain([A,j]).nice().range([y,0]):Sd().domain([A,j]).nice().range([y,0]),N=M.domain(),P=N[0]<0&&N[1]>0?M(0):void 0;d.attach(_,x),d.update({vertical:{scale:M,height:y,options:{...n.verticalAxis,gridWidth:v,topPadding:b.top}},horizontal:{scale:O,height:y,options:{...n.horizontalAxis,width:v,zeroY:P}}});let F=_.ownerSVGElement,I=My(F,e,`plot`,{x:0,y:0,width:v,height:y}),L=$(_).append(`g`).attr(`clip-path`,`url(#${I})`),R=L.node(),z=n.colors?.[0]??`#4e79a7`,B=bx(n.interpolation??`monotoneX`),V=n.areaFillOpacity??.25,te=e=>Number.isFinite(e.value),ne=Qp().curve(B).defined(te).x(e=>k(e)).y0(y).y1(e=>M(e.value)),re=Zp().curve(B).defined(te).x(e=>k(e)).y(e=>M(e.value)),ie=$(R).append(`g`).node(),ae=$(R).append(`g`).node();if(r){for(let e of i)ie.appendChild(e);for(let e of a)ae.appendChild(e)}let oe=zy(e),H=[{name:`area`,points:T}];Zy(oe,{role:`series-area`,parent:ie,selector:`.bc-area`,data:H,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({d:ne(e.points)??``,fill:z,opacity:V})}),Zy(oe,{role:`series-line`,parent:ae,selector:`.bc-line`,data:H,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>({d:re(e.points)??``,fill:`none`,stroke:z,"stroke-width":2})}),$(R).append(`g`).selectAll(`.bc-dot`).data(E,e=>e.label).enter().append(`circle`).attr(`class`,`bc-dot`).attr(`cx`,e=>k(e)).attr(`cy`,e=>M(e.value)).attr(`r`,3).attr(`fill`,z).attr(`fill-opacity`,0).attr(`stroke-opacity`,0).attr(`pointer-events`,`none`);let se={left:b.left,top:b.top,width:v,height:y};if(ab(oe,{svg:F,clipId:I,group:_,from:u,to:se,active:r&&(i.length>0||a.length>0)}),n.annotations?.length&&wy(_,n.annotations,{scaleX:O,scaleY:M,data:T,width:v,height:y,backgroundColor:wr(e),transition:r,priorAnnotations:c}),(n.tooltips||n.crosshair)&&Ex(_,{width:v,height:y,points:E.map(e=>({cx:k(e),cy:M(e.value),label:e.label,value:e.value,color:z})),tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e}),n.valueLabels){let e=$(_).insert(`g`,()=>R.nextSibling),t=e=>Cb(String(e.value),k(e),M(e.value),{width:v,height:y,margin:b});e.selectAll(`.bc-value-label`).data(E,e=>e.label).enter().append(`text`).attr(`class`,`bc-value-label`).attr(`x`,e=>t(e).x).attr(`y`,e=>t(e).y).attr(`text-anchor`,`middle`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(e=>String(e.value))}if(n.lineSymbols){let e=T.map((e,t)=>({cx:k(e),cy:M(e.value),color:z,index:t})).filter(e=>Number.isFinite(e.cy)),t;o?(_.appendChild(o),t=$(o)):t=$(_).append(`g`).attr(`class`,`bc-symbols`),kx(t,e,T.length,n.lineSymbols,r)}ky(e,{chartType:`area`,margin:b,plotRect:se}),s&&(sg(L.node()),lg(e,s))}function tS(e){let t=e.series??[];if(t.length===0)return[];let n=t.map(e=>e.name),r=!1,i=e.labels.map((e,n)=>{let i={_index:n};return t.forEach(e=>{let t=e.values[n]??0;t<0&&(r=!0),i[e.name]=t}),i});return Vm().keys(n).order(Rm).offset(r?Hm:Lm)(i)}function nS(e){let t=e.series??[];if(t.length===0)return[];let n=t.map(e=>e.name),r=!1,i=e.labels.map((e,n)=>{let i={_index:n},a=t.reduce((e,t)=>e+Math.abs(t.values[n]??0),0);return t.forEach(e=>{let t=e.values[n]??0;t<0&&(r=!0),i[e.name]=a>0?t/a*100:0}),i});return Vm().keys(n).order(Rm).offset(r?Hm:Lm)(i)}var rS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function iS(e,t,n={},r=!1){ag(r),Cx(e);let i=t,a=[],o=[],s=null,c,l,u,d=Yg.for(e);if(r){let t=Oy(e);l=t?.margin,u=t?.plotRect,d.detach(),t?.chartType===`area-stacked`?(a=Array.from(e.querySelectorAll(`.bc-frame .bc-area`)),o=Array.from(e.querySelectorAll(`.bc-frame .bc-line`))):t&&(s=cg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))c.set(e,n);e.replaceChildren()}let{body:f}=yh(e,n.frame),p=Si(i.labels,n.horizontalAxis?.range);if(p.length<i.labels.length){let e=p.map(e=>i.labels[e]),t=(i.series??[]).map(e=>({...e,values:p.map(t=>e.values[t])}));i={labels:e,values:p.map(e=>i.values[e]),series:t}}let m=nx(i),h=m.filter(e=>!lx(e.name,n.seriesOverrides)),g=rx(n.colors??rS,m.length),_=h.map(e=>e.name),v=_.filter(Boolean),y=n.seriesOverrides,b=Ey(n.colorizes),x=n.directLabelling===!0||n.directLabelling===`auto`&&n.legend!==!0||!!n.directLabelling&&n.directLabelling!==`auto`,S=x?`direct`:n.legend===!1?`none`:`legend`,C=_.filter(e=>ux(e,S,y)===`direct`),w=n.legend!==!1&&!x,T=eg(f).width,E=n.legendPosition??`top`,D=T>0&&T<350&&(E===`left`||E===`right`)?`top`:E,O=n.legendAnchor??`start`,k=n.stacked!==!1,ee=n.stackPercent===!0||n.stackMode===ri.Percent,A=n.areaSortMode??Xr.None,j=n.areaLines!==!1,M=[...h];if(A!==Xr.None){let e=new Map(M.map(e=>[e.name,e.values.reduce((e,t)=>e+t,0)]));M.sort((t,n)=>{let r=(e.get(t.name)??0)-(e.get(n.name)??0);return A===Xr.Ascending?r:-r})}let N={labels:i.labels,values:i.values,series:M},P=ee?nS(N):tS(N),F=0;if(k)for(let e of P)for(let t of e)t[1]>F&&(F=t[1]);else for(let e of M)for(let t of e.values)t>F&&(F=t);ee&&(F=100);let I=[0,F],L=n.verticalAxis?.numberFormat??(ee?`|d|%`:void 0),R=Xh(I,n.verticalAxis?.range,L,n.verticalAxis?.scaleType),z=Qh(T,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,R),B=C.length>0?Yb(C):0,V=z.top!=null,te=Math.max(0,T-(z.left??50)-(z.right??20)-B),ne=w?Jb(v,D,te):{width:0,height:0},re=w?ne.height+15:0,ie={...z};w&&D===`top`&&(ie.top=re+(V?15:0)),w&&D===`left`&&(ie.left=(ie.left??50)+ne.width+10),w&&D===`right`&&(ie.right=(ie.right??20)+ne.width+10),B>0&&(ie.right=(ie.right??20)+B),ie.bottom=(Mg(i.labels,Math.max(0,T-(ie.left??50)-(ie.right??20)),n.horizontalAxis)??Math.max(ie.bottom??24,24))+(D===`bottom`?re:0);let{chartArea:ae,width:oe,height:H,margin:se}=ng(f,ie),ce=Rh(l,se),le=cd().domain(i.labels).range([0,oe]).padding(n.edgePadding?.6:0),ue=le,de=e=>le(i.labels[e])??0,[U,W]=wi(I,n.verticalAxis?.range,n.verticalAxis?.scaleType),fe=(n.verticalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([U,W]).nice().range([H,0]);d.attach(ae,ce),d.update({vertical:{scale:fe,height:H,options:{...n.verticalAxis,numberFormat:L,gridWidth:oe,topPadding:se.top}},horizontal:{scale:ue,height:H,options:{...n.horizontalAxis,width:oe}}});let pe=ae.ownerSVGElement,me=My(pe,e,`plot`,{x:0,y:0,width:oe,height:H}),he=$(ae).append(`g`).attr(`clip-path`,`url(#${me})`),ge=he.node(),_e=bx(n.interpolation??`monotoneX`),ve=P.map(e=>{let t=m.findIndex(t=>t.name===e.key),n;return n=k?Array.from(e).map(e=>[fe(e[0]),fe(e[1])]):(M.find(t=>t.name===e.key)?.values??[]).map(e=>[fe(0),fe(e)]),{name:e.key,points:n,colorIndex:t>=0?t:0}}),ye=cb(n.highlights,ve.map(e=>e.name)),be=ye.size>0,xe=n.areaFillOpacity==null?.85:n.areaFillOpacity,Se=e=>b.get(e.name)??ax(e.name,e.colorIndex,g,y),G=Qp().curve(_e).x((e,t)=>de(t)).y0(e=>e[0]).y1(e=>e[1]),K=$(ge).append(`g`).node(),Ce=$(ge).append(`g`).node();if(r){for(let e of a)K.appendChild(e);for(let e of o)Ce.appendChild(e)}let we=zy(e);Zy(we,{role:`series-area`,parent:K,selector:`.bc-area`,data:ve,key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-area`),attrs:e=>({"data-series":e.name,d:G(e.points)??``,fill:Se(e),opacity:be?lb(ye,e.name,xe):xe})}),Zy(we,{role:`series-line`,parent:Ce,selector:`.bc-line`,data:j?ve:[],key:e=>e.name,insert:e=>e.append(`path`).attr(`class`,`bc-line`),attrs:e=>{let t=cx(e.name,n.interpolation??`monotoneX`,y),r=Zp().curve(bx(t)).x((e,t)=>de(t)).y(e=>e[1]);return{"data-series":e.name,d:r(e.points)??``,fill:`none`,stroke:Se(e),"stroke-width":1,opacity:be?lb(ye,e.name,1):1}}});let Te={left:se.left,top:se.top,width:oe,height:H};if(ab(we,{svg:pe,clipId:me,group:ae,from:u,to:Te,active:r&&(a.length>0||o.length>0)}),n.annotations?.length){let t=i.labels.map((e,t)=>({label:e,value:h[0]?.values[t]??0}));wy(ae,n.annotations,{scaleX:ue,scaleY:fe,data:t,width:oe,height:H,backgroundColor:wr(e),transition:r,priorAnnotations:c})}if(n.tooltips||n.crosshair){let t=[];P.forEach(e=>{let n=m.findIndex(t=>t.name===e.key);Array.from(e).forEach((r,a)=>{let o=r[1]-r[0];t.push({cx:de(a),cy:fe(r[1]),label:i.labels[a],value:Math.round(o*100)/100,series:e.key,color:ax(e.key,n,g,y)})})}),Ex(ae,{width:oe,height:H,points:t,tooltip:n.tooltips,crosshair:n.crosshair,crosshairDirection:n.crosshairDirection,crosshairStyle:n.crosshairStyle,crosshairColor:n.crosshairColor,numberFormat:n.verticalAxis?.numberFormat,container:e})}let Ee=i.labels.length-1,De=de(Ee)+6,Oe=[];if(h.forEach((e,t)=>{if(ux(e.name,S,y)!==`direct`)return;let n=P.find(t=>t.key===e.name);if(!n)return;let r=n[Ee];if(!r)return;let i=fe((r[0]+r[1])/2),a=y?.find(t=>t.name===e.name)?.labelText||e.name;Oe.push({name:e.name,index:t,naturalY:i,text:a})}),Oe.length>0){Oe.sort((e,t)=>e.naturalY-t.naturalY);let e=Ix(Oe.map(e=>e.naturalY),0,H,14);Oe.forEach((t,n)=>{$(ae).append(`text`).attr(`class`,`bc-direct-label`).attr(`data-series`,t.name).attr(`x`,De).attr(`y`,e[n]).attr(`dy`,`0.35em`).attr(`font-size`,`11px`).attr(`fill`,ax(t.name,t.index,g,y)).text(t.text)})}let ke=v.filter(e=>ux(e,S,y)===`legend`);if(w&&ke.length>0){let e=ke.map(e=>ax(e,m.findIndex(t=>t.name===e),g,y)),t=0,n=0;if(D===`top`){let e=V?15:0;n=-(ne.height+10+e)}else D===`bottom`?n=H+Math.max(se.bottom-re,0):D===`left`?t=-(ne.width+10):D===`right`&&(t=oe+10);tx(ae,ke,e,n,D,O,oe,H,t,[],{left:se.left,right:se.right})}ky(e,{chartType:`area-stacked`,margin:se,plotRect:Te}),s&&(sg(he.node()),lg(e,s))}var aS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function oS(e,t,n){let r=[];for(let i of e){let e=i.key,a=n.findIndex(t=>t.name===e);for(let n=0;n<i.length;n++){let o=i[n];r.push({label:t[n],seriesName:e,seriesIndex:a,y0:o[0],y1:o[1],value:o[1]-o[0]})}}return r}function sS(e,t,n={},r=!1){ag(r);let i=[],a=null,o,s,c,l=Yg.for(e);if(r){let t=Oy(e);s=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`column-stacked`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-stacked`)):t&&(a=cg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))o.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=nx(t),f=d.filter(e=>!lx(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=rx(n.colors??aS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=eg(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x={labels:t.labels,values:t.values,series:f},S=n.stackMode===ri.Percent,C=oS(S?nS(x):tS(x),t.labels,d),w=S?100:Yi(C,e=>e.y1)??0,T=S?Math.min(0,Xi(C,e=>e.y0)??0):0,E=S?[T,w]:C.flatMap(e=>[e.y0,e.y1]),D=Xh(E,n.verticalAxis?.range,n.verticalAxis?.numberFormat,n.verticalAxis?.scaleType),O=Qh(_,n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,D),k=O.top!=null,ee=Math.max(0,_-(O.left??50)-(O.right??20)),A=g?Jb(p,y,ee):{width:0,height:0},j=g?A.height+15:0,M={...O};g&&y===`top`&&(M.top=j+(k?15:0)),g&&y===`left`&&(M.left=(M.left??50)+A.width+10),g&&y===`right`&&(M.right=(M.right??20)+A.width+10);let N=Math.max(0,_-(M.left??50)-(M.right??20));M.bottom=(Mg(t.labels,N,n.horizontalAxis)??Math.max(M.bottom??24,24))+(y===`bottom`?j:0);let{chartArea:P,width:F,height:I,margin:L}=ng(u,M),R=Rh(s,L),z=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),z=e.map(e=>e.label)}let B=od().domain(z).range([0,F]).padding(Ci(n.barGap)),[V,te]=wi(E,n.verticalAxis?.range,n.verticalAxis?.scaleType),ne=(n.verticalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([V,te]).nice().range([I,0]);l.attach(P,R),l.update({vertical:{scale:ne,height:I,options:{...n.verticalAxis,gridWidth:F,topPadding:L.top}},horizontal:{scale:B,height:I,options:{...n.horizontalAxis,width:F}}});let re=P.ownerSVGElement,ie=My(re,e,`bars`,{x:0,y:0,width:F,height:I}),ae=$(P).append(`g`).attr(`clip-path`,`url(#${ie})`),oe=z===t.labels?C:z.flatMap(e=>C.filter(t=>t.label===e)),H=Ey(n.colorizes),se=cb(n.highlights,C.map(e=>e.seriesName)),ce=zy(e),le=ae.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),le.appendChild(e);Zy(ce,{role:`mark-per-cell`,parent:le,selector:`.bc-bar-stacked`,data:oe,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-stacked`),attrs:e=>{let t=H.get(e.seriesName)??ax(e.seriesName,e.seriesIndex,m,h),n=fx(e.seriesName,h),r={"data-series":e.seriesName,x:B(e.label)??0,y:ne(e.y1),width:B.bandwidth(),height:ne(e.y0)-ne(e.y1),fill:t};return n<1&&(r[`fill-opacity`]=n),se.size>0&&(r.opacity=lb(se,e.seriesName)),r}});let ue={left:L.left,top:L.top,width:F,height:I};ab(ce,{svg:re,clipId:ie,group:P,from:c,to:ue,active:r&&i.length>0});let de=Py(ae);if(n.tooltips&&de.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&de.use(Lv({width:F,height:I,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:f.reduce((e,n)=>e+(n.values[t]??0),0)}));de.use(Ty(n.annotations,{scaleX:B,scaleY:ne,data:i,width:F,height:I,backgroundColor:wr(e),transition:r,priorAnnotations:o}))}let U=()=>de.draw(oe);ce.state===`committing`?ce.register(U):U(),ky(e,{chartType:`column-stacked`,margin:L,plotRect:ue}),a&&(sg(ae.node()),lg(e,a));let W=n.valueLabels??!1,fe=Bi(oe,e=>Yi(e,e=>e.y1)??0,e=>e.label),pe=$(P).append(`g`).attr(`class`,`bc-value-labels`);if(oe.forEach(e=>{if(!dx(e.seriesName,W,h))return;let t=(B(e.label)??0)+B.bandwidth()/2,r=Math.abs(ne(e.y0)-ne(e.y1)),i=ne(e.y0)-r/2,a=S?`${Math.round(e.y0<0?-e.value:e.value)}%`:n.valueLabels===`percent`?Ch(e.value,fe.get(e.label)??0):String(Math.round(e.value*100)/100);if(!_b({text:a,placement:`inside`,orientation:`vertical`,barWidth:B.bandwidth(),barHeight:r}))return;let o=H.get(e.seriesName)??ax(e.seriesName,e.seriesIndex,m,h);pe.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,t).attr(`y`,i).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(o)).text(a)}),g&&p.length>0){let e=p.map(e=>ax(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(y===`top`){let e=k?15:0;n=-(A.height+10+e)}else y===`bottom`?n=I+Math.max(L.bottom-j,0):y===`left`?t=-(A.width+10):y===`right`&&(t=F+10);tx(P,p,e,n,y,b,F,I,t,[],{left:L.left,right:L.right})}}var cS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function lS(e,t,n){let r=[];for(let i of e){let e=i.key,a=n.findIndex(t=>t.name===e);for(let n=0;n<i.length;n++){let o=i[n];r.push({label:t[n],seriesName:e,seriesIndex:a,y0:o[0],y1:o[1],value:o[1]-o[0]})}}return r}function uS(e,t,n={},r=!1){ag(r);let i=[],a=null,o,s,c,l=Yg.for(e);if(r){let t=Oy(e);s=t?.margin,c=t?.plotRect,l.detach(),t?.chartType===`bar-stacked`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-stacked`)):t&&(a=cg(e)),o=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))o.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=nx(t),f=d.filter(e=>!lx(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=rx(n.colors??cS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=eg(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x={labels:t.labels,values:t.values,series:f},S=n.stackMode===ri.Percent,C=lS(S?nS(x):tS(x),t.labels,d),w=S?100:Yi(C,e=>e.y1)??0,T=S?Math.min(0,Xi(C,e=>e.y0)??0):0,E=Db(_,n.verticalAxis?.labelPosition),D=n.categoryLabelLine===!0||E,O=Zh(t.labels),k=Qh(_,D?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,O,n.horizontalAxis?.showAxis),ee=k.top!=null,A=Math.max(0,_-(k.left??50)-(k.right??20)),j=g?Jb(p,y,A):{width:0,height:0},M=g?j.height+15:0,N={...k};g&&y===`top`&&(N.top=M+(ee?15:0)),g&&y===`bottom`&&(N.bottom=(N.bottom??24)+M),g&&y===`left`&&(N.left=(N.left??50)+j.width+10),g&&y===`right`&&(N.right=(N.right??20)+j.width+10);let{chartArea:P,width:F,height:I,margin:L}=ng(u,N),R=Rh(s,L),z=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,index:t,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),z=e.map(e=>e.label)}let[B,V]=wi(S?[T,w]:C.flatMap(e=>[e.y0,e.y1]),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),te=(n.horizontalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([B,V]).nice().range([0,F]),ne=od().domain(z).range([0,I]).padding(Ci(n.barGap));l.attach(P,R),l.update({horizontal:{scale:te,height:I,options:{...n.horizontalAxis,width:F}},vertical:{scale:ne,height:I,options:{...n.verticalAxis,labelPosition:D?zr.Off:n.verticalAxis?.labelPosition,topPadding:L.top,...E?{showAxis:!1}:{}}},order:`horizontal-first`});let re=P.ownerSVGElement,ie=My(re,e,`bars`,{x:0,y:0,width:F,height:I}),ae=$(P).append(`g`).attr(`clip-path`,`url(#${ie})`),oe=z===t.labels?C:z.flatMap(e=>C.filter(t=>t.label===e)),H=D?Tb(ne.bandwidth()):0,se=Ey(n.colorizes),ce=cb(n.highlights,C.map(e=>e.seriesName)),le=zy(e),ue=ae.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ue.appendChild(e);Zy(le,{role:`mark-per-cell`,parent:ue,selector:`.bc-bar-stacked`,data:oe,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-stacked`),attrs:e=>{let t=se.get(e.seriesName)??ax(e.seriesName,e.seriesIndex,m,h),n=fx(e.seriesName,h),r={"data-series":e.seriesName,x:te(e.y0),y:(ne(e.label)??0)+H,width:te(e.y1)-te(e.y0),height:Math.max(0,ne.bandwidth()-H),fill:t};return n<1&&(r[`fill-opacity`]=n),ce.size>0&&(r.opacity=lb(ce,e.seriesName)),r}});let de={left:L.left,top:L.top,width:F,height:I};ab(le,{svg:re,clipId:ie,group:P,from:c,to:de,active:r&&i.length>0});let U=Py(ae);if(n.tooltips&&U.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&U.use(Lv({width:F,height:I,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:f.reduce((e,n)=>e+(n.values[t]??0),0)}));U.use(Ty(n.annotations,{scaleX:ne,scaleY:te,data:i,width:F,height:I,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:o}))}let W=()=>U.draw(oe);if(le.state===`committing`?le.register(W):W(),ky(e,{chartType:`bar-stacked`,margin:L,plotRect:de}),a&&(sg(ae.node()),lg(e,a)),D){let e=$(P).append(`g`).attr(`class`,`bc-category-labels`);for(let t of z){let n=ne(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let fe=n.valueLabels??!1,pe=n.valueLabelPosition??ei.Auto,me=new Set,he=new Map;for(let e of z){let t=oe.filter(t=>t.label===e).sort((e,t)=>e.y1-t.y1);if(t.length>0){let e=t[t.length-1];me.add(e.label+`\0`+e.seriesName);for(let e=0;e<t.length-1;e++){let n=t[e].label+`\0`+t[e].seriesName;he.set(n,te(t[e+1].y1)-te(t[e].y1))}}}let ge=new Map,_e=Bi(oe,e=>Yi(e,e=>e.y1)??0,e=>e.label),ve=$(P).append(`g`).attr(`class`,`bc-value-labels`);if(oe.forEach(e=>{if(!dx(e.seriesName,fe,h))return;let t=S?`${Math.round(e.y0<0?-e.value:e.value)}%`:n.valueLabels===`percent`?Ch(e.value,_e.get(e.label)??0):String(Math.round(e.value*100)/100),r=te(e.y1)-te(e.y0),i=t.length*6.5+8,a=r>=i,o=(ne(e.label)??0)+H+(ne.bandwidth()-H)/2,s=ax(e.seriesName,e.seriesIndex,m,h),c=me.has(e.label+`\0`+e.seriesName),l=pe===ei.Outside||pe===ei.Auto&&!a&&c,u=_b({text:t,placement:l?`outside`:`inside`,orientation:`horizontal`,barWidth:r,barHeight:ne.bandwidth()}),d=()=>{let n=te(e.y0)+r/2;ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`opacity`,0).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(s)).text(t)};if(l){if(pe===ei.Inside)d();else{let n=te(e.y1)+4,r=ge.get(e.label)??0,a=he.get(e.label+`\0`+e.seriesName),s=n<r,c=a!==void 0&&i+4>a,l=F+L.right-2,f=n+i>l;s||c||f||!u?d():(ge.set(e.label,n+i),ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,`currentColor`).text(t))}}else if(!a||!u)d();else{let n=te(e.y0)+r/2;ve.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,n).attr(`y`,o).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,Sr(s)).text(t)}}),g&&p.length>0){let e=p.map(e=>ax(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;if(y===`top`){let e=ee?15:0;n=-(j.height+10+e)}else y===`bottom`?n=I+25:y===`left`?t=-(j.width+10):y===`right`&&(t=F+10);tx(P,p,e,n,y,b,F,I,t,[],{left:L.left,right:L.right})}}var dS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`],fS=16,pS=4,mS=20,hS=`600 11px sans-serif`,gS=`…`;function _S(e,t){if(Sb(e,hS)<=t)return e;let n=e;for(;n.length>0&&Sb(n+gS,hS)>t;)n=n.slice(0,-1);return n+gS}function vS(e,t,n,r,i){let a=e.length;if(a===0)return[];let o=Math.max(0,(n-(a-1)*fS)/a),s=r?e.flatMap(e=>e.values):[];return e.map((e,n)=>{let[a,c]=wi(r?s:e.values,i?.range,i?.scaleType),l=(i?.scaleType===Lr.Log?Ed():Sd()).domain([a,c]).nice().range([0,o]);return{seriesName:e.name,seriesIndex:t.findIndex(t=>t.name===e.name),xOffset:n*(o+fS),panelWidth:o,xScale:l}})}function yS(e,t,n,r){let i=[];for(let a of e){let e=r.find(e=>e.name===a.seriesName);if(e)for(let r of t){let t=n.indexOf(r),o=t>=0?e.values[t]??0:0,s=Math.max(0,a.xScale(o)-a.xScale(0));i.push({label:r,seriesName:a.seriesName,seriesIndex:a.seriesIndex,value:o,xPos:a.xOffset,barWidth:s})}}return i}function bS(e,t,n={},r=!1){ag(r);let i=[],a=null,o,s,c,l=Yg.for(e);if(r){let t=Oy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-split`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-split`)):t&&(a=cg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))c.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=nx(t),f=d.filter(e=>!lx(e.name,n.seriesOverrides)),p=f.map(e=>e.name).filter(Boolean),m=rx(n.colors??dS,d.length),h=n.seriesOverrides,g=n.legend!==!1,_=eg(u).width,v=n.legendPosition??`top`,y=_>0&&_<350&&(v===`left`||v===`right`)?`top`:v,b=n.legendAnchor??`start`,x=Db(_,n.verticalAxis?.labelPosition),S=n.categoryLabelLine===!0||x,C=Zh(t.labels),w=Qh(_,S?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,C,n.horizontalAxis?.showAxis);w.top=(w.top??12)+mS;let T=Math.max(0,_-(w.left??50)-(w.right??20)),E=g?Jb(p,y,T):{width:0,height:0},D=g?E.height+15:0,O={...w};g&&y===`top`&&(O.top=D+mS),g&&y===`bottom`&&(O.bottom=(O.bottom??24)+D),g&&y===`left`&&(O.left=(O.left??50)+E.width+10),g&&y===`right`&&(O.right=(O.right??20)+E.width+10);let{chartArea:k,width:ee,height:A,margin:j}=ng(u,O),M=Rh(o,j),N=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),N=e.map(e=>e.label)}let P=od().domain(N).range([0,A]).padding(Ci(n.barGap)),F=S?Tb(P.bandwidth()):0;l.attach(k,M),l.update({vertical:{scale:P,height:A,options:{...n.verticalAxis,labelPosition:S?zr.Off:n.verticalAxis?.labelPosition,topPadding:j.top,...x?{showAxis:!1}:{}}},order:`horizontal-first`});let I=vS(f,d,ee,n.sharedScale===!0,n.horizontalAxis),L=$(k).append(`g`).attr(`class`,`bc-split-axes`);for(let e of I)zg(L.append(`g`).attr(`transform`,`translate(${e.xOffset},0)`).node(),e.xScale,A,{...n.horizontalAxis,width:e.panelWidth});let R=k.ownerSVGElement,z=My(R,e,`bars`,{x:0,y:0,width:ee,height:A}),B=$(k).append(`g`).attr(`clip-path`,`url(#${z})`),V=$(k).append(`g`).attr(`class`,`bc-split-headers`);for(let e of I)V.append(`text`).attr(`class`,`bc-split-header`).attr(`x`,e.xOffset+e.panelWidth/2).attr(`y`,-10).attr(`text-anchor`,`middle`).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(_S(e.seriesName,e.panelWidth));let te=yS(I,N,t.labels,d),ne=cb(n.highlights,te.map(e=>e.seriesName)),re=Ey(n.colorizes),ie=zy(e),ae=B.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),ae.appendChild(e);Zy(ie,{role:`mark-per-cell`,parent:ae,selector:`.bc-bar-split`,data:te,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-split`),attrs:e=>{let t=re.get(e.seriesName)??ax(e.seriesName,e.seriesIndex,m,h),n=fx(e.seriesName,h),r={"data-series":e.seriesName,x:e.xPos,y:(P(e.label)??0)+F,width:e.barWidth,height:Math.max(0,P.bandwidth()-F),fill:t};return n<1&&(r[`fill-opacity`]=n),ne.size>0&&(r.opacity=lb(ne,e.seriesName)),r}});let oe={left:j.left,top:j.top,width:ee,height:A};ab(ie,{svg:R,clipId:z,group:k,from:s,to:oe,active:r&&i.length>0});let H=Py(B);if(n.tooltips&&H.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&H.use(Lv({width:ee,height:A,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length&&I.length>0){let i=I[0],a=f.find(e=>e.name===i.seriesName),o=t.labels.map((e,t)=>({label:e,value:a?.values[t]??0}));H.use(Ty(n.annotations,{scaleX:P,scaleY:i.xScale,data:o,width:ee,height:A,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:c}))}let se=()=>H.draw(te);if(ie.state===`committing`?ie.register(se):se(),ky(e,{chartType:`bar-split`,margin:j,plotRect:oe}),a&&(sg(B.node()),lg(e,a)),S){let e=$(k).append(`g`).attr(`class`,`bc-category-labels`);for(let t of N){let n=P(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let ce=n.valueLabels??!0,le=n.valueLabelPosition??ei.Auto,ue=$(k).append(`g`).attr(`class`,`bc-value-labels`);if(te.forEach(e=>{if(!dx(e.seriesName,ce,h))return;let t=I.find(t=>t.seriesName===e.seriesName);if(!t)return;let n=ax(e.seriesName,e.seriesIndex,m,h),r=e.xPos+e.barWidth,i=Math.max(0,P.bandwidth()-F),a=(P(e.label)??0)+F+i/2,o=r+pS+Sb(String(e.value))<=t.xOffset+t.panelWidth,s=le===ei.Inside||!o||le===ei.Auto&&e.barWidth>30;if(!_b({text:String(e.value),placement:s?`inside`:`outside`,orientation:`horizontal`,barWidth:e.barWidth,barHeight:i}))return;let c,l,u;s?(c=r-pS,l=`end`,u=Sr(n)):(c=r+pS,l=`start`,u=`currentColor`),ue.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,c).attr(`y`,a).attr(`text-anchor`,l).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,u).text(String(e.value))}),g&&p.length>0){let e=p.map(e=>ax(e,d.findIndex(t=>t.name===e),m,h)),t=0,n=0;y===`top`?n=-(E.height+10+mS):y===`bottom`?n=A+25:y===`left`?t=-(E.width+10):y===`right`&&(t=ee+10),tx(k,p,e,n,y,b,ee,A,t,[],{left:j.left,right:j.right})}}var xS=[`#4e79a7`,`#f28e2b`,`#e15759`,`#76b7b2`,`#59a14f`,`#edc948`,`#b07aa1`,`#ff9da7`];function SS(e,t,n={},r=!1){ag(r);let i=[],a=null,o,s,c,l=Yg.for(e);if(r){let t=Oy(e);o=t?.margin,s=t?.plotRect,l.detach(),t?.chartType===`bar-grouped`?i=Array.from(e.querySelectorAll(`.bc-frame .bc-bar-grouped`)):t&&(a=cg(e)),c=new Map;for(let t of e.querySelectorAll(`.bc-frame .bc-annotations, .bc-frame .bc-annotations-range`))for(let[e,n]of zv(t))c.set(e,n);e.replaceChildren()}let{body:u}=yh(e,n.frame),d=nx(t),f=d.filter(e=>!lx(e.name,n.seriesOverrides)),p=f.map(e=>e.name),m=p.filter(Boolean),h=rx(n.colors??xS,d.length),g=n.seriesOverrides,_=n.legend!==!1,v=eg(u).width,y=n.legendPosition??`top`,b=v>0&&v<350&&(y===`left`||y===`right`)?`top`:y,x=n.legendAnchor??`start`,S=Db(v,n.verticalAxis?.labelPosition),C=n.categoryLabelLine===!0||S,w=Zh(t.labels),T=Qh(v,C?zr.Off:n.verticalAxis?.labelPosition,n.horizontalAxis?.labelPosition,n.verticalAxis?.direction,w,n.horizontalAxis?.showAxis),E=Math.max(0,v-(T.left??50)-(T.right??20)),D=_?Jb(m,b,E):{width:0,height:0},O=_?D.height+15:0,k={...T};_&&b===`top`&&(k.top=O),_&&b===`bottom`&&(k.bottom=(k.bottom??24)+O),_&&b===`left`&&(k.left=(k.left??50)+D.width+10),_&&b===`right`&&(k.right=(k.right??20)+D.width+10);let{chartArea:ee,width:A,height:j,margin:M}=ng(u,k),N=Rh(o,M),P=t.labels;if(n.sortMode===`total`){let e=t.labels.map((e,t)=>({label:e,total:f.reduce((e,n)=>e+(n.values[t]??0),0)}));e.sort((e,t)=>t.total-e.total),P=e.map(e=>e.label)}let F=od().domain(P).range([0,j]).paddingInner(Ci(n.barGap)).paddingOuter(.05),I=C?Tb(F.bandwidth()):0,L=Math.max(0,F.bandwidth()-I),R=od().domain(p).range([0,L]).padding(.05),[z,B]=wi(f.flatMap(e=>e.values),n.horizontalAxis?.range,n.horizontalAxis?.scaleType),V=(n.horizontalAxis?.scaleType===Lr.Log?Ed():Sd()).domain([z,B]).nice().range([0,A]);l.attach(ee,N),l.update({vertical:{scale:F,height:j,options:{...n.verticalAxis,labelPosition:C?zr.Off:n.verticalAxis?.labelPosition,topPadding:M.top,...S?{showAxis:!1}:{}}},horizontal:{scale:V,height:j,options:{...n.horizontalAxis,width:A}},order:`horizontal-first`});let te=ee.ownerSVGElement,ne=My(te,e,`bars`,{x:0,y:0,width:A,height:j}),re=$(ee).append(`g`).attr(`clip-path`,`url(#${ne})`);if(n.barBackground){let e=(n.colors??xS)[0];re.selectAll(`.bc-bar-bg`).data(P,e=>e).enter().append(`rect`).attr(`class`,`bc-bar-bg`).attr(`x`,0).attr(`y`,e=>(F(e)??0)+I).attr(`width`,A).attr(`height`,F.bandwidth()-I).attr(`fill`,e).attr(`opacity`,.18)}if(n.barSeparators&&P.length>1){let e=F.step();for(let t=1;t<P.length;t++){let n=(F(P[t-1])??0)+F.bandwidth()+(e-F.bandwidth())/2;re.append(`line`).attr(`class`,`bc-bar-separator`).attr(`x1`,0).attr(`x2`,A).attr(`y1`,n).attr(`y2`,n).attr(`stroke`,`currentColor`).attr(`opacity`,.15)}}let ie=[];for(let e of P){let n=t.labels.indexOf(e);for(let t of f){let r=d.findIndex(e=>e.name===t.name);ie.push({label:e,seriesName:t.name,seriesIndex:r,value:n>=0?t.values[n]??0:0})}}let ae=cb(n.highlights,ie.map(e=>e.seriesName)),oe=Ey(n.colorizes),H=zy(e),se=re.append(`g`).node();if(r)for(let e of i)e.removeAttribute(`opacity`),e.removeAttribute(`fill-opacity`),se.appendChild(e);Zy(H,{role:`mark-per-cell`,parent:se,selector:`.bc-bar-grouped`,data:ie,key:e=>e.label+`\0`+e.seriesName,insert:e=>e.append(`rect`).attr(`class`,`bc-bar bc-bar-grouped`),attrs:e=>{let t=oe.get(e.seriesName)??ax(e.seriesName,e.seriesIndex,h,g),n=fx(e.seriesName,g),r={"data-series":e.seriesName,x:V(0),y:(F(e.label)??0)+I+(R(e.seriesName)??0),width:Math.max(0,V(e.value)-V(0)),height:R.bandwidth(),fill:t};return n<1&&(r[`fill-opacity`]=n),ae.size>0&&(r.opacity=lb(ae,e.seriesName)),r}});let ce={left:M.left,top:M.top,width:A,height:j};ab(H,{svg:te,clipId:ne,group:ee,from:s,to:ce,active:r&&i.length>0});let le=Py(re);if(n.tooltips&&le.use(Fv({numberFormat:n.verticalAxis?.numberFormat})),n.crosshair&&le.use(Lv({width:A,height:j,direction:n.crosshairDirection,style:n.crosshairStyle,color:n.crosshairColor,orientation:Kr.Horizontal})),n.annotations?.length){let i=t.labels.map((e,t)=>({label:e,value:Math.max(0,...f.map(e=>e.values[t]??0))}));le.use(Ty(n.annotations,{scaleX:F,scaleY:V,data:i,width:A,height:j,backgroundColor:wr(e),orientation:Kr.Horizontal,transition:r,priorAnnotations:c}))}let ue=()=>le.draw(ie);if(H.state===`committing`?H.register(ue):ue(),ky(e,{chartType:`bar-grouped`,margin:M,plotRect:ce}),a&&(sg(re.node()),lg(e,a)),C){let e=$(ee).append(`g`).attr(`class`,`bc-category-labels`);for(let t of P){let n=F(t)??0;e.append(`text`).attr(`class`,`bc-category-label`).attr(`x`,2).attr(`y`,n+13/2).attr(`text-anchor`,`start`).attr(`dominant-baseline`,`central`).attr(`font-size`,`10px`).attr(`font-weight`,`600`).attr(`fill`,`currentColor`).text(t)}}let de=n.valueLabels??!0,U=n.valueLabelPosition??ei.Auto,W=$(ee).append(`g`).attr(`class`,`bc-value-labels`);if(ie.forEach(e=>{if(!dx(e.seriesName,de,g))return;let t=ax(e.seriesName,e.seriesIndex,h,g),n=Math.max(0,V(e.value)-V(0)),r=V(0)+n,i=(F(e.label)??0)+I+(R(e.seriesName)??0)+R.bandwidth()/2,a=U===ei.Inside||U===ei.Auto&&n>30;if(!_b({text:String(e.value),placement:a?`inside`:`outside`,orientation:`horizontal`,barWidth:n,barHeight:R.bandwidth()}))return;let o,s,c;a?(o=r-4,s=`end`,c=Sr(t)):(o=r+4,s=`start`,c=`currentColor`),W.append(`text`).attr(`class`,`bc-value-label`).attr(`data-series`,e.seriesName).attr(`x`,o).attr(`y`,i).attr(`text-anchor`,s).attr(`dominant-baseline`,`central`).attr(`font-size`,`11px`).attr(`fill`,c).text(String(e.value))}),_&&m.length>0){let e=m.map(e=>ax(e,d.findIndex(t=>t.name===e),h,g)),t=0,n=0;b===`top`?n=-(D.height+10):b===`bottom`?n=j+25:b===`left`?t=-(D.width+10):b===`right`&&(t=A+10),tx(ee,m,e,n,b,x,A,j,t,[],{left:M.left,right:M.right})}}var CS=new Map;function wS(e,t,n){CS.set(e,{renderer:t,options:n})}function TS(e){return CS.get(e)?.renderer}function ES(e){return CS.get(e)?.options??[]}var DS=[{value:Rr.Solid,text:`Solid`},{value:Rr.Dashed,text:`Dashed`},{value:Rr.Dotted,text:`Dotted`},{value:Rr.None,text:`None`}],OS={key:`colors`,type:Q.Colors,label:`Colors`},kS={key:`colorPalette`,type:Q.Select,label:`Color palette`,default:`Blueprint`,choices:[{value:``,text:`Custom`},...H().map(e=>({value:e.name,text:e.label}))]},AS={key:`autoContrast`,type:Q.Boolean,label:`Auto-adjust contrast`,default:!1},jS={key:`allowDarkMode`,type:Q.Boolean,label:`Allow dark mode`,default:!0},MS={key:`legend`,type:Q.Boolean,label:`Show legend`,default:!0},NS={key:`legendPosition`,type:Q.Select,label:`Legend position`,default:Qr.Top,choices:[{value:Qr.Top,text:`Top`},{value:Qr.Bottom,text:`Bottom`},{value:Qr.Left,text:`Left`},{value:Qr.Right,text:`Right`}]},PS={key:`legendAnchor`,type:Q.Select,label:`Legend anchor`,default:$r.Start,choices:[{value:$r.Start,text:`Start`},{value:$r.Middle,text:`Middle`},{value:$r.End,text:`End`}]},FS={key:`directLabelling`,type:Q.Select,label:`Direct labelling`,default:ii.Off,choices:[{value:ii.Off,text:`Off`},{value:ii.Auto,text:`Auto`},{value:ii.Outside,text:`Outside`},{value:ii.Inside,text:`Inside`}]},IS={key:`directLabelAnchor`,type:Q.Select,label:`Label anchor`,default:$r.Middle,choices:[{value:$r.Start,text:`Start`},{value:$r.Middle,text:`Middle`},{value:$r.End,text:`End`}]},LS={key:`valueLabels`,type:Q.Boolean,label:`Value labels`,default:!1},RS={key:`valueLabelPosition`,type:Q.Select,label:`Label position`,default:ei.Auto,choices:[{value:ei.Auto,text:`Auto`},{value:ei.Outside,text:`Outside`},{value:ei.Inside,text:`Inside`}]},zS={key:`tooltips`,type:Q.Boolean,label:`Tooltips`,default:!1},BS={key:`crosshair`,type:Q.Boolean,label:`Crosshair`,default:!1},VS={key:`crosshairDirection`,type:Q.Select,label:`Crosshair direction`,default:ti.Both,choices:[{value:ti.Both,text:`Both`},{value:ti.Vertical,text:`Vertical`},{value:ti.Horizontal,text:`Horizontal`}]},HS={key:`crosshairStyle`,type:Q.Select,label:`Crosshair style`,default:ni.Dashed,choices:[{value:ni.Solid,text:`Solid`},{value:ni.Dashed,text:`Dashed`},{value:ni.Dotted,text:`Dotted`}]},US={key:`crosshairColor`,type:Q.Text,label:`Crosshair color`,default:`#999`,placeholder:`#999`},WS={key:`lineSymbols`,type:Q.Boolean,label:`Show line symbols`,default:!1},GS={key:`lineSymbolShape`,type:Q.Select,label:`Symbol`,default:qr.Circle,choices:[{value:qr.Circle,text:`Circle`},{value:qr.Square,text:`Square`},{value:qr.Diamond,text:`Diamond`},{value:qr.Triangle,text:`Triangle Up`},{value:qr.TriangleDown,text:`Triangle Down`},{value:qr.Cross,text:`Cross`},{value:qr.Star,text:`Star`}]},KS={key:`lineSymbolShowOn`,type:Q.Select,label:`Show on`,default:Jr.FirstLast,choices:[{value:Jr.FirstLast,text:`First & Last`},{value:Jr.First,text:`First`},{value:Jr.Last,text:`Last`},{value:Jr.All,text:`All`}]},qS={key:`lineSymbolStyle`,type:Q.Select,label:`Style`,default:Yr.Filled,choices:[{value:Yr.Filled,text:`Filled`},{value:Yr.Hollow,text:`Hollow`}]},JS={key:`lineSymbolSize`,type:Q.Text,label:`Size`,default:`3.5`,placeholder:`3.5`},YS={key:`lineSymbolOpacity`,type:Q.Text,label:`Opacity`,default:`1`,placeholder:`1`},XS={key:`sortMode`,type:Q.Select,label:`Sort mode`,default:Zr.None,choices:[{value:Zr.None,text:`None`},{value:Zr.Total,text:`By total`},{value:Zr.WithinGroups,text:`Within groups`}]},ZS={key:`edgePadding`,type:Q.Boolean,label:`Edge padding`,default:!1},QS={key:`waterfall`,type:Q.Boolean,label:`Waterfall`,default:!1},$S={key:`waterfallTotal`,type:Q.Boolean,label:`Waterfall total`,default:!1},eC={key:`barBackground`,type:Q.Boolean,label:`Bar background`,default:!1},tC={key:`barGap`,type:Q.Text,label:`Bar gap`,default:`60`,placeholder:`60`},nC={key:`barSeparators`,type:Q.Boolean,label:`Bar separators`,default:!1},rC={key:`connectedColumns`,type:Q.Boolean,label:`Connected columns`,default:!1},iC={key:`connectionsOpacity`,type:Q.Text,label:`Opacity`,default:`0.15`,placeholder:`0.15`},aC={key:`swapLabelValue`,type:Q.Boolean,label:`Swap labels and values`,default:!1},oC={key:`stackMode`,type:Q.Select,label:`Stack mode`,default:ri.Normal,choices:[{value:ri.Normal,text:`Normal`},{value:ri.Percent,text:`Percentage (100%)`}]},sC={key:`sharedScale`,type:Q.Boolean,label:`Shared scale`,default:!1},cC={key:`categoryLabelLine`,type:Q.Boolean,label:`Labels on separate line`,default:!1},lC={key:`displayAsPercentage`,type:Q.Boolean,label:`Display as percentage`,default:!1},uC={key:`showTotal`,type:Q.Boolean,label:`Show total`,default:!1},dC={key:`showLabels`,type:Q.Boolean,label:`Show labels`,default:!0},fC={key:`showValues`,type:Q.Boolean,label:`Show values`,default:!0},pC={key:`sliceMax`,type:Q.Text,label:`Max slices`,default:`6`},mC={key:`sliceGroupLabel`,type:Q.Text,label:`Group label`,default:`Others`,placeholder:`Others`},hC={key:`areaFillOpacity`,type:Q.Text,label:`Opacity`,default:`0.85`,placeholder:`0.85`},gC={key:`stacked`,type:Q.Boolean,label:`Stack areas`,default:!0},_C={key:`stackPercent`,type:Q.Boolean,label:`Stack to 100%`,default:!1},vC={key:`areaLines`,type:Q.Boolean,label:`Separate areas with lines`,default:!0},yC={key:`areaSortMode`,type:Q.Select,label:`Sort areas`,default:Xr.None,choices:[{value:Xr.None,text:`Keep order`},{value:Xr.Ascending,text:`Smallest first`},{value:Xr.Descending,text:`Largest first`}]},bC={key:`interpolation`,type:Q.Select,label:`Line interpolation`,default:ai.Linear,choices:[{value:ai.Linear,text:`Linear`},{value:ai.MonotoneX,text:`Monotone`},{value:ai.Step,text:`Step`},{value:ai.StepBefore,text:`Step (before)`},{value:ai.StepAfter,text:`Step (after)`},{value:ai.Basis,text:`Basis`},{value:ai.Cardinal,text:`Cardinal`},{value:ai.CatmullRom,text:`Catmull-Rom`}]},xC=[{value:Lr.Linear,text:`Linear`},{value:Lr.Log,text:`Logarithmic`}],SC=[{value:zr.Auto,text:`Auto`},{value:zr.Inside,text:`Inside`},{value:zr.Outside,text:`Outside`},{value:zr.Off,text:`Off`}],CC=[{value:Br.Auto,text:`Auto`},{value:Br.Horizontal,text:`Horizontal`},{value:Br.Vertical,text:`Vertical`}];function wC(e){return[{key:`showVerticalAxis`,type:Q.Boolean,label:`Show vertical axis`,default:e.showVerticalAxis??!0},{key:`verticalAxisDirection`,type:Q.Select,label:`Vertical axis side`,default:Ir.Left,choices:[{value:Ir.Left,text:`Left`},{value:Ir.Right,text:`Right`}]},{key:`showVerticalTicks`,type:Q.Boolean,label:`Show vertical ticks`,default:e.showVerticalTicks},{key:`verticalLabelPosition`,type:Q.Select,label:`Vertical labels`,default:e.valueAxisLabelsOff&&e.valueAxis===`vertical`?zr.Off:zr.Auto,choices:SC},{key:`verticalGridStyle`,type:Q.Select,label:`Vertical grid style`,default:e.verticalGrid,choices:DS},{key:`verticalNumberFormat`,type:Q.NumberFormat,label:`Vertical number format`},...e.valueAxis===`vertical`?[{key:`verticalScaleType`,type:Q.Select,label:`Vertical scale`,default:Lr.Linear,choices:xC},{key:`verticalRangeMin`,type:Q.Text,label:`Vertical min`,placeholder:`auto`},{key:`verticalRangeMax`,type:Q.Text,label:`Vertical max`,placeholder:`auto`}]:[],{key:`showHorizontalAxis`,type:Q.Boolean,label:`Show horizontal axis`,default:e.showHorizontalAxis??!0},{key:`showHorizontalTicks`,type:Q.Boolean,label:`Show horizontal ticks`,default:e.showHorizontalTicks},{key:`horizontalLabelPosition`,type:Q.Select,label:`Horizontal labels`,default:e.valueAxisLabelsOff&&e.valueAxis===`horizontal`?zr.Off:zr.Auto,choices:SC},{key:`horizontalLabelRotation`,type:Q.Select,label:`Horizontal label rotation`,default:Br.Horizontal,choices:CC},{key:`horizontalGridStyle`,type:Q.Select,label:`Horizontal grid style`,default:e.horizontalGrid,choices:DS},{key:`horizontalNumberFormat`,type:Q.NumberFormat,label:`Horizontal number format`},...e.valueAxis===`horizontal`?[{key:`horizontalScaleType`,type:Q.Select,label:`Horizontal scale`,default:Lr.Linear,choices:xC},{key:`horizontalRangeMin`,type:Q.Text,label:`Horizontal min`,placeholder:`auto`},{key:`horizontalRangeMax`,type:Q.Text,label:`Horizontal max`,placeholder:`auto`}]:[],...e.horizontalRange?[{key:`horizontalRangeMin`,type:Q.Text,label:`Horizontal min`,placeholder:`auto`},{key:`horizontalRangeMax`,type:Q.Text,label:`Horizontal max`,placeholder:`auto`}]:[]]}var TC=wC({verticalGrid:Rr.None,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,valueAxisLabelsOff:!0}),EC=wC({verticalGrid:Rr.None,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showHorizontalAxis:!1,valueAxis:`horizontal`,valueAxisLabelsOff:!0}),DC=wC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0}),OC=wC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0}),kC={...bC,default:ai.MonotoneX},AC={...VS,default:ti.Vertical},jC={...BS,default:!0},MC={...WS,default:!0},NC={...XS,default:Zr.Total},PC={...LS,default:!0},FC={...LS,default:!0},IC={...lC,default:!0},LC={...pC,default:`5`},RC={...uC,default:!0},zC={...FS,default:ii.Auto},BC={...MS,default:!1},VC=[BS,VS,HS,US],HC=[jC,AC,HS,US],UC=[FC,RS,zS,...VC],WC=[PC,RS,zS,...VC],GC=[WS,GS,KS,qS,JS,YS],KC=[MC,GS,KS,qS,JS,YS],qC=[LS,zS,...HC,...GC],JC=[LS,zS,...HC,...KC],YC=[IC,dC,fC,LC,mC],XC=[lC,RC,dC,fC,pC,mC];wS(Fr.BarVertical,jb,[OS,kS,AS,jS,aC,eC,nC,tC,rC,iC,QS,$S,cC,...TC,...UC]),wS(Fr.BarHorizontal,Lb,[OS,kS,AS,jS,aC,eC,nC,tC,rC,iC,QS,$S,cC,...EC,...WC]),wS(Fr.BarMulti,vx,[OS,kS,AS,jS,NC,BC,PS,NS,zC,IS,...TC,...UC]),wS(Fr.Line,Ax,[OS,kS,AS,jS,kC,ZS,...DC,...qC]),wS(Fr.LineMulti,Wx,[OS,kS,AS,jS,kC,ZS,XS,BC,PS,NS,zC,...DC,...JC]),wS(Fr.Donut,Zx,[OS,kS,AS,jS,BC,PS,NS,zC,zS,...XC]),wS(Fr.Pie,$x,[OS,kS,AS,jS,BC,PS,NS,zC,zS,...YC]),wS(Fr.Area,eS,[OS,kS,AS,jS,kC,ZS,...OC,...qC]);var ZC=wC({verticalGrid:Rr.Dashed,horizontalGrid:Rr.None,showVerticalTicks:!1,showHorizontalTicks:!1,showVerticalAxis:!1,valueAxis:`vertical`,horizontalRange:!0});wS(Fr.AreaStacked,iS,[OS,kS,AS,jS,hC,kC,ZS,yC,gC,_C,vC,MS,PS,NS,FS,...ZC,zS,...HC]),wS(Fr.ColumnStacked,sS,[OS,kS,AS,jS,oC,XS,MS,PS,NS,FS,IS,...TC,...UC]),wS(Fr.BarStacked,uS,[OS,kS,AS,jS,oC,XS,MS,PS,NS,FS,IS,cC,...EC,...WC]),wS(Fr.BarSplit,bS,[OS,kS,AS,jS,sC,XS,MS,PS,NS,cC,...EC,PC,RS,zS,...VC]),wS(Fr.BarGrouped,SS,[OS,kS,AS,jS,NC,MS,PS,NS,eC,nC,cC,...EC,PC,RS,zS,...VC]),wS(Fr.VerticalBar,jb,[OS,kS,AS,jS,aC,eC,nC,tC,rC,iC,QS,$S,cC,...TC,...UC]),wS(Fr.HorizontalBar,Lb,[OS,kS,AS,jS,aC,eC,nC,tC,rC,iC,QS,$S,cC,...EC,...WC]);function QC(e){let t=(e??``).trim();return t&&_i(t)!==void 0?t:void 0}function $C(e){if(!(e.showVerticalTicks!==void 0||e.verticalGridStyle!==void 0||e.verticalNumberFormat!==void 0||e.showVerticalAxis!==void 0||e.verticalAxisDirection!==void 0||e.verticalScaleType!==void 0||e.verticalLabelPosition!==void 0||e.verticalRangeMin||e.verticalRangeMax))return{};let t={};e.showVerticalTicks!==void 0&&(t.showTicks=e.showVerticalTicks),e.verticalAxisDirection!==void 0&&(t.direction=e.verticalAxisDirection),e.verticalGridStyle!==void 0&&(t.gridStyle=e.verticalGridStyle),e.verticalNumberFormat!==void 0&&(t.numberFormat=e.verticalNumberFormat),e.showVerticalAxis!==void 0&&(t.showAxis=e.showVerticalAxis),e.verticalScaleType!==void 0&&(t.scaleType=e.verticalScaleType),e.verticalLabelPosition!==void 0&&(t.labelPosition=e.verticalLabelPosition);let n=QC(e.verticalRangeMin),r=QC(e.verticalRangeMax);return(n!==void 0||r!==void 0)&&(t.range={},n!==void 0&&(t.range.min=n),r!==void 0&&(t.range.max=r)),{verticalAxis:t}}function ew(e){if(!(e.showHorizontalTicks!==void 0||e.horizontalGridStyle!==void 0||e.horizontalNumberFormat!==void 0||e.showHorizontalAxis!==void 0||e.horizontalScaleType!==void 0||e.horizontalLabelPosition!==void 0||e.horizontalLabelRotation!==void 0||e.horizontalRangeMin||e.horizontalRangeMax))return{};let t={};e.showHorizontalTicks!==void 0&&(t.showTicks=e.showHorizontalTicks),e.horizontalGridStyle!==void 0&&(t.gridStyle=e.horizontalGridStyle),e.horizontalNumberFormat!==void 0&&(t.numberFormat=e.horizontalNumberFormat),e.showHorizontalAxis!==void 0&&(t.showAxis=e.showHorizontalAxis),e.horizontalScaleType!==void 0&&(t.scaleType=e.horizontalScaleType),e.horizontalLabelPosition!==void 0&&(t.labelPosition=e.horizontalLabelPosition),e.horizontalLabelRotation!==void 0&&(t.labelRotation=e.horizontalLabelRotation);let n=QC(e.horizontalRangeMin),r=QC(e.horizontalRangeMax);return(n!==void 0||r!==void 0)&&(t.range={},n!==void 0&&(t.range.min=n),r!==void 0&&(t.range.max=r)),{horizontalAxis:t}}var tw=new Set(`colors.colorPalette.autoContrast.crosshairDirection.crosshairStyle.crosshairColor.lineSymbols.lineSymbolShape.lineSymbolShowOn.lineSymbolStyle.lineSymbolSize.lineSymbolOpacity.showVerticalTicks.showVerticalAxis.verticalAxisDirection.verticalGridStyle.verticalNumberFormat.verticalScaleType.verticalLabelPosition.verticalRangeMin.verticalRangeMax.showHorizontalTicks.showHorizontalAxis.horizontalGridStyle.horizontalNumberFormat.horizontalScaleType.horizontalLabelPosition.horizontalLabelRotation.horizontalRangeMin.horizontalRangeMax.sliceMax.barGap.connectionsOpacity.areaFillOpacity`.split(`.`));function nw(e,t){if(!t)return{};let n={};for(let{key:r}of ES(t)){let t=e[r];t!==void 0&&!tw.has(r)&&(n[r]=t)}return n}function rw(e,t){let n={},r=oe(e.colorPalette);return r?n.colors=r:e.colors&&e.colors.length>0&&(n.colors=e.colors),e.autoContrast&&t&&n.colors&&(n.colors=Ar(n.colors,t)),e.allowDarkMode!==void 0&&(n.allowDarkMode=e.allowDarkMode),n}function iw(e){let t={};return e.legend!==void 0&&(t.legend=e.legend),e.legendPosition!==void 0&&(t.legendPosition=e.legendPosition),e.legendAnchor!==void 0&&(t.legendAnchor=e.legendAnchor),e.directLabelling!==void 0&&(t.directLabelling=e.directLabelling),e.directLabelAnchor!==void 0&&(t.directLabelAnchor=e.directLabelAnchor),t}function aw(e){return e.lineSymbols?{lineSymbols:{symbol:e.lineSymbolShape??qr.Circle,showOn:e.lineSymbolShowOn??Jr.FirstLast,style:e.lineSymbolStyle??Yr.Filled,size:parseFloat(e.lineSymbolSize??`3.5`)||3.5,opacity:parseFloat(e.lineSymbolOpacity??`1`)||1}}:{}}function ow(e,t,n){let r={...nw(e,n),...rw(e,t),...iw(e),...$C(e),...ew(e),...aw(e)};e.interpolation!==void 0&&(r.interpolation=e.interpolation),e.valueLabels!==void 0&&(r.valueLabels=e.valueLabels),e.valueLabelPosition!==void 0&&(r.valueLabelPosition=e.valueLabelPosition),e.tooltips!==void 0&&(r.tooltips=e.tooltips),e.crosshair!==void 0&&(r.crosshair=e.crosshair),e.crosshairDirection&&(r.crosshairDirection=e.crosshairDirection),e.crosshairStyle&&(r.crosshairStyle=e.crosshairStyle),e.crosshairColor&&(r.crosshairColor=e.crosshairColor),e.displayAsPercentage!==void 0&&(r.displayAsPercentage=e.displayAsPercentage),e.showTotal!==void 0&&(r.showTotal=e.showTotal),e.showLabels!==void 0&&(r.showLabels=e.showLabels),e.showValues!==void 0&&(r.showValues=e.showValues),e.swapLabelValue!==void 0&&(r.swapLabelValue=e.swapLabelValue);let i=parseInt(e.sliceMax??``,10);!isNaN(i)&&i>0&&(r.sliceMax=i),e.sliceGroupLabel!==void 0&&(r.sliceGroupLabel=e.sliceGroupLabel),e.barBackground!==void 0&&(r.barBackground=e.barBackground),e.barSeparators!==void 0&&(r.barSeparators=e.barSeparators);let a=parseFloat(e.barGap??``);isNaN(a)||(r.barGap=Math.max(0,Math.min(100,a))),e.connectedColumns!==void 0&&(r.connectedColumns=e.connectedColumns);let o=parseFloat(e.connectionsOpacity??``);isNaN(o)||(r.connectionsOpacity=Math.max(0,Math.min(1,o))),e.stackMode!==void 0&&(r.stackMode=e.stackMode),e.stacked!==void 0&&(r.stacked=e.stacked),e.stackPercent!==void 0&&(r.stackPercent=e.stackPercent),e.areaSortMode!==void 0&&(r.areaSortMode=e.areaSortMode),e.areaLines!==void 0&&(r.areaLines=e.areaLines);let s=parseFloat(e.areaFillOpacity??``);return isNaN(s)||(r.areaFillOpacity=s),e.edgePadding!==void 0&&(r.edgePadding=e.edgePadding),e.waterfall!==void 0&&(r.waterfall=e.waterfall),e.waterfallTotal!==void 0&&(r.waterfallTotal=e.waterfallTotal),e.categoryLabelLine!==void 0&&(r.categoryLabelLine=e.categoryLabelLine),r}var sw=e=>e===!0||String(e).toLowerCase()===`true`;function cw(e){return new Map(e.map(e=>[e.key,e.value]))}function lw(e,t){let n=cw(t),r=ES(e),i=new Set(r.map(e=>e.key)),a={};for(let e of r){let t=n.get(e.key);t!==void 0&&i.has(e.key)&&(e.type===Q.Colors?a[e.key]=R(String(t)).map(e=>e.trim()).filter(Boolean):e.type===Q.Boolean?e.key===`valueLabels`&&String(t).toLowerCase()===`percent`?a[e.key]=`percent`:a[e.key]=sw(t):a[e.key]=String(t))}return a}function uw(e){return!(/^-?\d+(\.\d+)?$/.test(e)||/^-?\d+(\.\d+)?%$/.test(e)||/^[a-zA-Z_][a-zA-Z0-9_-]*$/.test(e))}function dw(e){return e.entries.map(e=>{if(e.values&&e.values.length>1){if(e.key===`series`&&!e.quotedKey)return`series = ${e.values.map(e=>F(String(e))).join(`,`)}`;let t=e.values.map(e=>typeof e==`number`||!uw(String(e))?String(e):F(String(e)));return`${F(e.key)} = ${t.join(`,`)}`}let t=e.isPercentage?`${e.value}%`:String(e.value);return e.key===`series`&&!e.quotedKey?`series = ${F(t)}`:typeof e.value==`string`&&uw(t)?`${F(e.key)} = ${F(t)}`:`${F(e.key)} = ${t}`}).join(`
|
|
343
|
+
`)}function fw(e,t){let n=e.find(e=>e.key===t);return n?String(n.value):void 0}function pw(e,t){let n=e.find(e=>e.key===t);if(n)return n.isPercentage,n.value}function mw(e){let t=e.find(e=>e.key===`maxWidth`);if(t)return t.isPercentage?`${t.value}%`:t.value}function hw(e){return e.map(e=>({target:e.target,color:fw(e.properties,`color`)??`#e15759`,label:fw(e.properties,`label`)}))}function gw(e){return e.map(e=>({target:e.target}))}function _w(e){return e.map(e=>{let t=cw(e.properties);return{from:e.from,to:e.to,color:t.has(`color`)?String(t.get(`color`)):void 0,negativeColor:t.has(`negativeColor`)?String(t.get(`negativeColor`)):void 0,opacity:t.has(`opacity`)?Number(t.get(`opacity`)):void 0,interpolation:t.has(`interpolation`)?String(t.get(`interpolation`)):void 0}})}function vw(e){let t=e.get(`repeat`);if(sw(t))return`always`;if(t===void 0||t===!1||t===`false`)return;let n=Number(t);return Number.isInteger(n)&&n>=1?n:void 0}function yw(e){return e.map(e=>{let t=cw(e.properties),n=e.kind??Wr.Point;if(n===Wr.Range){let e={kind:Wr.Range,start:t.has(`start`)?isNaN(Number(t.get(`start`)))?String(t.get(`start`)):Number(t.get(`start`)):0,end:t.has(`end`)?isNaN(Number(t.get(`end`)))?String(t.get(`end`)):Number(t.get(`end`)):0};return e.repeat=vw(t),t.has(`orientation`)&&(e.orientation=String(t.get(`orientation`))),t.has(`startAnchor`)&&(e.startAnchor=String(t.get(`startAnchor`))),t.has(`endAnchor`)&&(e.endAnchor=String(t.get(`endAnchor`))),t.has(`bgColor`)&&(e.bgColor=String(t.get(`bgColor`))),t.has(`bgOpacity`)&&(e.bgOpacity=Number(t.get(`bgOpacity`))),t.has(`direction`)&&(e.direction=String(t.get(`direction`))),t.has(`text`)&&(e.text=String(t.get(`text`))),t.has(`textColor`)&&(e.textColor=String(t.get(`textColor`))),e}if(n===Wr.Free){let n={kind:Wr.Free,text:String(t.get(`text`)??``),x:pw(e.properties,`x`)??0,y:pw(e.properties,`y`)??0};n.repeat=vw(t),t.has(`textColor`)&&(n.textColor=String(t.get(`textColor`)));let r=mw(e.properties);return r!==void 0&&(n.maxWidth=r),t.has(`textOutline`)&&(n.textOutline=sw(t.get(`textOutline`))),n}let r=`target`in e?e.target:``,i={kind:Wr.Point,target:r,text:String(t.get(`text`)??``)};i.repeat=vw(t),t.has(`textColor`)&&(i.textColor=String(t.get(`textColor`)));let a=mw(e.properties);return a!==void 0&&(i.maxWidth=a),t.has(`textOutline`)&&(i.textOutline=sw(t.get(`textOutline`))),t.has(`showLine`)&&(i.showLine=sw(t.get(`showLine`))),t.has(`anchorDirection`)&&(i.anchorDirection=String(t.get(`anchorDirection`))),t.has(`textOffsetX`)&&(i.textOffsetX=Number(t.get(`textOffsetX`))),t.has(`textOffsetY`)&&(i.textOffsetY=Number(t.get(`textOffsetY`))),t.has(`lineStyle`)&&(i.lineStyle=String(t.get(`lineStyle`))),t.has(`lineWeight`)&&(i.lineWeight=Number(t.get(`lineWeight`))),t.has(`showArrow`)&&(i.showArrow=sw(t.get(`showArrow`))),t.has(`lineTargetDistance`)&&(i.lineTargetDistance=Number(t.get(`lineTargetDistance`))),t.has(`showCircle`)&&(i.showCircle=sw(t.get(`showCircle`))),t.has(`circleSize`)&&(i.circleSize=Number(t.get(`circleSize`))),t.has(`circleStyle`)&&(i.circleStyle=String(t.get(`circleStyle`))),t.has(`circleColor`)&&(i.circleColor=String(t.get(`circleColor`))),i})}function bw(e){return e.map(e=>{let t=cw(e.properties),n={name:e.name};if(t.has(`color`)&&(n.color=String(t.get(`color`))),t.has(`lineWidth`)&&(n.lineWidth=Number(t.get(`lineWidth`))),t.has(`dash`)&&(n.dash=String(t.get(`dash`))),t.has(`interpolation`)&&(n.interpolation=String(t.get(`interpolation`))),t.has(`labelMode`)&&(n.labelMode=String(t.get(`labelMode`))),t.has(`labelText`)&&(n.labelText=String(t.get(`labelText`))),t.has(`valueLabels`)){let e=t.get(`valueLabels`);n.valueLabels=String(e).toLowerCase()===`percent`?`percent`:sw(e)}return t.has(`lineSymbols`)&&(n.lineSymbols=sw(t.get(`lineSymbols`))),t.has(`hidden`)&&(n.hidden=sw(t.get(`hidden`))),t.has(`symbolShape`)&&(n.symbolShape=String(t.get(`symbolShape`))),t.has(`symbolShowOn`)&&(n.symbolShowOn=String(t.get(`symbolShowOn`))),t.has(`symbolStyle`)&&(n.symbolStyle=String(t.get(`symbolStyle`))),t.has(`symbolSize`)&&(n.symbolSize=Number(t.get(`symbolSize`))),t.has(`symbolOpacity`)&&(n.symbolOpacity=Number(t.get(`symbolOpacity`))),n})}function xw(e,t,n){if(!n&&t!==si.Equals&&t!==si.NotEquals)return!0;switch(t){case si.Equals:return e===n;case si.NotEquals:return e!==n;case si.Contains:return e.toLowerCase().includes(n.toLowerCase());case si.GreaterThan:{let t=Number(e.replace(/[,%$€£¥₹]/g,``).trim()),r=Number(n);return!Number.isNaN(t)&&!Number.isNaN(r)&&t>r}case si.LessThan:{let t=Number(e.replace(/[,%$€£¥₹]/g,``).trim()),r=Number(n);return!Number.isNaN(t)&&!Number.isNaN(r)&&t<r}default:return!0}}function Sw(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column)return e;let r=e.rows.filter(e=>xw(e[n]??``,t.condition??si.Equals,t.value??``));return{...e,rows:r}}function Cw(e){return Number(A(e).replace(/[,%$€£¥₹]/g,``).trim())||0}function ww(e,t,n){return n===`number`?Cw(e)-Cw(t):n===`date`?(Date.parse(e)||0)-(Date.parse(t)||0):e.localeCompare(t)}function Tw(e){return e.columns?e.columns.split(`,`).map(e=>e.trim()).filter(Boolean):e.column?[e.column]:[]}var Ew={sum:e=>e.reduce((e,t)=>e+t,0),avg:e=>e.reduce((e,t)=>e+t,0)/e.length,min:e=>Math.min(...e),max:e=>Math.max(...e)};function Dw(e,t){return e.split(`,`).map(e=>e.trim()).filter(Boolean).map(e=>{let n=e.lastIndexOf(`:`);if(n<0)return null;let r=e.slice(0,n),i=e.slice(n+1);if(i!==`count`&&!Ew[i])return null;let a=i===`count`?-1:t.indexOf(r);return i!==`count`&&a<0?null:{col:r,fn:i,colIndex:a}}).filter(e=>e!==null)}function Ow(e,t,n){if(e===`count`)return String(t.length);let r=t.map(e=>Cw(e[n]??``));return String(Ew[e](r))}function kw(e,t){let n=Tw({columns:t.groupColumns}).map(t=>e.columns.indexOf(t)).filter(e=>e>=0);if(n.length===0||!t.aggregates)return e;let r=Dw(t.aggregates,e.columns);if(r.length===0)return e;let i=new Map;for(let t of e.rows){let e=n.map(e=>t[e]??``),r=e.join(`\0`),a=i.get(r);a?a.rows.push(t):i.set(r,{key:e,rows:[t]})}return{columns:[...n.map(t=>e.columns[t]),...r.map(e=>`${e.col}_${e.fn}`)],columnTypes:[...n.map(t=>e.columnTypes[t]),...r.map(()=>`number`)],rows:[...i.values()].map(({key:e,rows:t})=>[...e,...r.map(e=>Ow(e.fn,t,e.colIndex))])}}function Aw(e,t){let n=Tw(t);if(n.length===0)return e;let r=e.columns.map((e,t)=>n.includes(e)?-1:t).filter(e=>e>=0);return r.length===e.columns.length?e:{columns:r.map(t=>e.columns[t]),rows:e.rows.map(e=>r.map(t=>e[t])),columnTypes:r.map(t=>e.columnTypes[t])}}var jw=[`string`,`number`,`date`],Mw=[{id:`to-number`,label:`To Number`,description:`Strip non-numeric characters and convert to number`,category:ci.Type,accepts:jw,outputType:`number`},{id:`to-string`,label:`To String`,description:`Keep value as plain text`,category:ci.Type,accepts:jw,outputType:`string`},{id:`to-date`,label:`To Date`,description:`Parse text into an ISO date`,category:ci.Type,accepts:jw,outputType:`date`},{id:`to-boolean`,label:`To Boolean`,description:`Map yes/no, true/false, 1/0 to boolean`,category:ci.Type,accepts:jw,outputType:`string`},{id:`parse-json`,label:`Parse JSON`,description:`Parse JSON string and optionally extract a key`,category:ci.Type,accepts:[`string`],outputType:`string`,params:[`key`]},{id:`trim`,label:`Trim`,description:`Remove leading and trailing whitespace`,category:ci.String,accepts:jw,outputType:`string`},{id:`lowercase`,label:`Lowercase`,description:`Convert all characters to lowercase`,category:ci.String,accepts:jw,outputType:`string`},{id:`uppercase`,label:`Uppercase`,description:`Convert all characters to uppercase`,category:ci.String,accepts:jw,outputType:`string`},{id:`title-case`,label:`Title Case`,description:`Capitalize the first letter of each word`,category:ci.String,accepts:jw,outputType:`string`},{id:`slugify`,label:`Slugify`,description:`Lowercase and replace non-alphanumeric with hyphens`,category:ci.String,accepts:jw,outputType:`string`},{id:`regex-replace`,label:`Regex Replace`,description:`Find and replace using a regular expression`,category:ci.String,accepts:jw,outputType:`string`,params:[`pattern`,`replacement`]},{id:`extract`,label:`Extract Substring`,description:`Extract a portion of text by character position`,category:ci.String,accepts:jw,outputType:`string`,params:[`start`,`end`]},{id:`pad-start`,label:`Pad Start`,description:`Pad the beginning to a fixed length`,category:ci.String,accepts:jw,outputType:`string`,params:[`length`,`char`]},{id:`pad-end`,label:`Pad End`,description:`Pad the end to a fixed length`,category:ci.String,accepts:jw,outputType:`string`,params:[`length`,`char`]},{id:`remove-diacritics`,label:`Remove Diacritics`,description:`Strip accents and diacritical marks`,category:ci.String,accepts:jw,outputType:`string`},{id:`split`,label:`Split into Columns`,description:`Split values by a separator into new columns`,category:ci.String,accepts:jw,outputType:`string`,params:[`separator`,`limit`]},{id:`round`,label:`Round`,description:`Round to a number of decimal places`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`decimals`]},{id:`floor`,label:`Floor`,description:`Round down to the nearest integer`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`ceil`,label:`Ceiling`,description:`Round up to the nearest integer`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`abs`,label:`Absolute Value`,description:`Remove the sign (make positive)`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`clamp`,label:`Clamp`,description:`Constrain values between a min and max`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`min`,`max`]},{id:`log`,label:`Logarithm`,description:`Natural log — compress wide-range values for charting`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`exp`,label:`Exponential`,description:`Raise e to the power of each value`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`normalize`,label:`Normalize (0–1)`,description:`Scale values to 0–1 range for cross-series comparison`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`standardize`,label:`Standardize (z-score)`,description:`Center around mean, scale by std deviation`,category:ci.Numeric,accepts:[`number`],outputType:`number`},{id:`bin`,label:`Bin/Bucket`,description:`Group values into fixed-size buckets`,category:ci.Numeric,accepts:[`number`],outputType:`number`,params:[`size`]},{id:`extract-year`,label:`Extract Year`,description:`Get the four-digit year as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-month`,label:`Extract Month`,description:`Get the month (1–12) as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-day`,label:`Extract Day`,description:`Get the day of the month as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`extract-weekday`,label:`Extract Weekday`,description:`Get the day name (Monday, Tuesday, …)`,category:ci.Date,accepts:[`date`],outputType:`string`},{id:`extract-hour`,label:`Extract Hour`,description:`Get the hour (0–23) as a number`,category:ci.Date,accepts:[`date`],outputType:`number`},{id:`shift-date`,label:`Shift Date`,description:`Add or subtract days, months, or years`,category:ci.Date,accepts:[`date`],outputType:`date`,params:[`amount`,`unit`]},{id:`truncate-date`,label:`Truncate to Period`,description:`Round down to start of week, month, quarter, or year`,category:ci.Date,accepts:[`date`],outputType:`date`,params:[`period`]},{id:`date-diff`,label:`Duration Since`,description:`Days between each date and a reference date`,category:ci.Date,accepts:[`date`],outputType:`number`,params:[`reference`]}],Nw=new Map(Mw.map(e=>[e.id,e]));function Pw(e,t){let n=Nw.get(e);return n?n.accepts.includes(t):!1}function Fw(e){return Nw.get(e)?.outputType??`string`}function Iw(e,t){let n=parseFloat(e);if(Number.isNaN(n))return e;let r=t(n);return Number.isNaN(r)?e:String(r)}function Lw(e,t){let n=new Date(e);return Number.isNaN(n.getTime())?e:t(n)}function Rw(e,t,n){switch(t){case`to-number`:{let t=Number(e.replace(/[^0-9.\-+eE]/g,``));return Number.isNaN(t)?``:String(t)}case`to-string`:return e;case`to-date`:return Lw(e,e=>e.toISOString());case`to-boolean`:{let t=e.toLowerCase().trim();return[`true`,`1`,`yes`,`on`,`y`].includes(t)?`true`:[`false`,`0`,`no`,`off`,`n`,``].includes(t)?`false`:e}case`parse-json`:try{let t=JSON.parse(e);return n.key?String(t[n.key]??``):JSON.stringify(t)}catch{return e}default:return e}}function zw(e,t,n){switch(t){case`trim`:return e.trim();case`lowercase`:return e.toLowerCase();case`uppercase`:return e.toUpperCase();case`title-case`:return e.replace(/\w\S*/g,e=>e.charAt(0).toUpperCase()+e.slice(1).toLowerCase());case`slugify`:return e.toLowerCase().replace(/[^a-z0-9]+/g,`-`).replace(/^-|-$/g,``);case`regex-replace`:if(!n.pattern)return e;try{return e.replace(new RegExp(n.pattern,`g`),n.replacement??``)}catch{return e}case`extract`:return e.slice(Number(n.start)||0,n.end?Number(n.end):void 0);case`pad-start`:return e.padStart(Number(n.length)||0,n.char||` `);case`pad-end`:return e.padEnd(Number(n.length)||0,n.char||` `);case`remove-diacritics`:return e.normalize(`NFD`).replace(/[\u0300-\u036f]/g,``);default:return e}}function Bw(e,t,n){switch(t){case`round`:{let t=10**(Number(n.decimals)||0);return Iw(e,e=>Math.round(e*t)/t)}case`floor`:return Iw(e,Math.floor);case`ceil`:return Iw(e,Math.ceil);case`abs`:return Iw(e,Math.abs);case`clamp`:{let t=n.min?Number(n.min):-1/0,r=n.max?Number(n.max):1/0;return Iw(e,e=>Math.min(Math.max(e,t),r))}case`log`:return Iw(e,e=>e>0?Math.log(e):NaN);case`exp`:return Iw(e,Math.exp);case`bin`:{let t=Number(n.size)||1;return Iw(e,e=>Math.floor(e/t)*t)}default:return e}}function Vw(e,t,n){switch(t){case`extract-year`:return Lw(e,e=>String(e.getFullYear()));case`extract-month`:return Lw(e,e=>String(e.getMonth()+1));case`extract-day`:return Lw(e,e=>String(e.getDate()));case`extract-weekday`:return Lw(e,e=>e.toLocaleDateString(`en`,{weekday:`long`}));case`extract-hour`:return Lw(e,e=>String(e.getHours()));case`shift-date`:return Lw(e,e=>{let t=Number(n.amount)||0,r=n.unit||`days`;return r===`years`?e.setFullYear(e.getFullYear()+t):r===`months`?e.setMonth(e.getMonth()+t):e.setDate(e.getDate()+t),e.toISOString()});case`truncate-date`:return Lw(e,e=>{let t=n.period||`month`;return t===`year`?new Date(e.getFullYear(),0,1).toISOString():t===`quarter`?new Date(e.getFullYear(),Math.floor(e.getMonth()/3)*3,1).toISOString():t===`month`?new Date(e.getFullYear(),e.getMonth(),1).toISOString():t===`week`?(e.setDate(e.getDate()-e.getDay()),e.setHours(0,0,0,0),e.toISOString()):e.toISOString()});case`date-diff`:{let t=new Date(n.reference||new Date().toISOString());return Number.isNaN(t.getTime())?e:Lw(e,e=>String(Math.round((e.getTime()-t.getTime())/864e5)))}default:return e}}function Hw(e,t,n){return t.startsWith(`to-`)||t===`parse-json`?Rw(e,t,n):new Set([`round`,`floor`,`ceil`,`abs`,`clamp`,`log`,`exp`,`bin`]).has(t)?Bw(e,t,n):t.startsWith(`extract-`)||t.startsWith(`shift-`)||t.startsWith(`truncate-`)||t===`date-diff`?Vw(e,t,n):zw(e,t,n)}function Uw(e,t){let n=e.rows.map(e=>{let n=[...e];return n[t]=``,n});return{columns:[...e.columns],rows:n,columnTypes:[...e.columnTypes]}}function Ww(e,t,n){let r=n.separator||`,`,i=n.limit?Number(n.limit):void 0,a=0,o=e.rows.map(e=>{let n=e[t].split(r),o=i?n.slice(0,i):n;return a=Math.max(a,o.length),o}),s=[...e.columns],c=[...e.columnTypes],l=[];for(let e=0;e<a;e++)l.push(`${n.column}_${e+1}`);return s.splice(t,1,...l),c.splice(t,1,...Array(a).fill(`string`)),{columns:s,rows:e.rows.map((e,n)=>{let r=o[n],i=[...e],s=[...r,...Array(a-r.length).fill(``)];return i.splice(t,1,...s),i}),columnTypes:c}}function Gw(e,t,n){let r=e.rows.map(e=>parseFloat(e[t])).filter(e=>!Number.isNaN(e));if(r.length===0)return e;let i=e.rows.map(e=>[...e]),a=[...e.columnTypes];if(a[t]=`number`,n===`normalize`){let e=Math.min(...r),n=Math.max(...r)-e;for(let r of i){let i=parseFloat(r[t]);r[t]=Number.isNaN(i)?r[t]:String(n===0?0:(i-e)/n)}}else{let e=r.reduce((e,t)=>e+t,0)/r.length,n=r.reduce((t,n)=>t+(n-e)**2,0)/r.length,a=Math.sqrt(n);for(let n of i){let r=parseFloat(n[t]);n[t]=Number.isNaN(r)?n[t]:String(a===0?0:(r-e)/a)}}return{columns:[...e.columns],rows:i,columnTypes:a}}function Kw(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column||!t.operation)return e;let r=t.operation,i=e.columnTypes[n];if(!Pw(r,i))return Uw(e,n);if(r===`split`)return Ww(e,n,t);if(r===`normalize`||r===`standardize`)return Gw(e,n,r);let a=e.rows.map(e=>[...e]);for(let e of a)e[n]=Hw(e[n],r,t);let o=[...e.columnTypes];return o[n]=Fw(r),{columns:[...e.columns],rows:a,columnTypes:o}}function qw(e,t){let n=e.columns.indexOf(t.column);if(n<0||!t.column||!t.newName)return e;let r=[...e.columns];return r[n]=t.newName,{...e,columns:r}}function Jw(e,t){let n=Tw(t);if(n.length===0)return e;let r=n.map(t=>e.columns.indexOf(t)).filter(e=>e>=0);if(r.length===0)return e;let i=t.direction===Xr.Descending?-1:1,a=t.operation;if(a&&r.length>1){let t=[...e.rows].sort((e,t)=>{let n=r.map(t=>Cw(e[t]??``)),o=r.map(e=>Cw(t[e]??``)),s,c;return a===`avg`?(s=n.reduce((e,t)=>e+t,0)/n.length,c=o.reduce((e,t)=>e+t,0)/o.length):(s=n.reduce((e,t)=>e+t,0),c=o.reduce((e,t)=>e+t,0)),i*(s-c)});return{...e,rows:t}}let o=[...e.rows].sort((t,n)=>{for(let a of r){let r=e.columnTypes[a]??`string`,o=ww(t[a]??``,n[a]??``,r);if(o!==0)return i*o}return 0});return{...e,rows:o}}function Yw(e){if(e.rows.length===0||e.columns.length===0)return e;let t=[`Field`,...e.rows.map(e=>e[0]??``)],n=[],r=[`string`];for(let t=1;t<e.columns.length;t++){let r=[e.columns[t]];for(let n=0;n<e.rows.length;n++)r.push(e.rows[n][t]??``);n.push(r)}for(let t=0;t<e.rows.length;t++){let e=n.map(e=>e[t+1]??``).filter(e=>e.length>0);e.length>0&&e.every(e=>!Number.isNaN(Number(e.replace(/[,%$€£¥₹]/g,``).trim()))&&e.trim().length>0)?r.push(`number`):r.push(`string`)}return{columns:t,rows:n,columnTypes:r}}var Xw=[/^\d{4}-\d{2}-\d{2}$/,/^\d{4}-\d{2}$/,/^\d{4}$/,/^\d{1,2}\/\d{1,2}\/\d{2,4}$/,/^\d{1,2}-\d{1,2}-\d{2,4}$/,/^(?:Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s+\d{1,2},?\s+\d{4}$/i,/^\d{4}\/\d{2}\/\d{2}$/,/^\d{4}\/\d{2}$/,/^Q[1-4]\s+\d{4}$/],Zw=/^"((?:[^"\\]|\\.)*)"\s*=\s*(.+)$/,Qw=/^"((?:[^"\\]|\\.)*)"\s*=\s*"([^"]*)"$/;function $w(e){if(!e)return!1;for(let t of Xw)if(t.test(e))return/^\d{4}(-\d{2})?$/.test(e)||/^\d{4}\/\d{2}$/.test(e)||/^Q[1-4]\s+\d{4}$/.test(e)?!0:!Number.isNaN(Date.parse(e));return!1}function eT(e){let t=e.match(/^[<>≤≥~]\s*(.+)$/);if(t){let e=A(t[1]).replace(/[,%$€£¥₹]/g,``).trim();if(e.length>0&&!Number.isNaN(Number(e)))return t[1].trim()}return e}function tT(e){if(!e)return!1;let t=A(eT(e)).replace(/[,%$€£¥₹]/g,``).trim();return t.length>0&&!Number.isNaN(Number(t))}function nT(e,t){return e.map((e,n)=>{let r=t.map(e=>e[n]??``).filter(e=>e.length>0);return r.length===0?`string`:r.every($w)?`date`:r.every(tT)?`number`:`string`})}function rT(e){let t=e.split(`
|
|
344
|
+
`).map(e=>e.trim()).filter(Boolean);if(t.length===0)return{columns:[],rows:[],columnTypes:[]};let n=t[0]?.match(/^series\s*=\s*(.+)$/);if(n){let e=R(n[1].trim()),r=[];for(let e=1;e<t.length;e++){let n=t[e].match(Qw),i=n??t[e].match(Zw);i&&r.push({cells:R(i[2]).map(L),label:I(i[1]),legacy:n!==null})}let i=e.length>1||!r.some(e=>e.legacy)?e.map(L):L(e[0]).split(`,`).map(e=>e.trim());return iT([`label`,...i],r.map(e=>[e.label,...i.map((t,n)=>e.cells[n]??``)]))}let r=[`label`,`value`],i=[];for(let e of t){let t=e.match(Zw);t&&i.push([I(t[1]),L(t[2])])}return iT(r,i)}function iT(e,t){return{columns:e,rows:t,columnTypes:nT(e,t)}}function aT(e){return/^-?\d+(\.\d+)?%?$/.test(e)?e:F(e)}function oT(e,t){return e.length<=2?t.map(e=>{let t=e[0]??``,n=e[1]??``;return`${F(t)} = ${aT(n)}`}).join(`
|
|
345
|
+
`):[`series = ${e.slice(1).map(F).join(`,`)}`,...t.map(e=>{let t=e[0]??``,n=e.slice(1).map(e=>aT(e??``)).join(`,`);return`${F(t)} = ${n}`})].join(`
|
|
346
|
+
`)}function sT(e){let t=e=>e==null||!Number.isFinite(e)?``:String(e),n=[`label`,...e.series?e.series.map(e=>e.name):[`value`]],r=e.labels.map((n,r)=>[n,...e.series?e.series.map(e=>t(e.values[r])):[t(e.values[r])]]);return{columns:n,rows:r,columnTypes:nT(n,r)}}var cT=new Set(Object.values(oi));function lT(e,t,n,r){let i={columns:[...t],rows:n.map(e=>[...e]),columnTypes:[...r]};for(let t of e)switch(t.type){case oi.Sort:i=Jw(i,t.config);break;case oi.Filter:i=Sw(i,t.config);break;case oi.HideColumns:i=Aw(i,t.config);break;case oi.Transpose:i=Yw(i);break;case oi.Parse:i=Kw(i,t.config);break;case oi.Rename:i=qw(i,t.config);break;case oi.GroupBy:i=kw(i,t.config)}return i}function uT(e){return e.filter(e=>cT.has(e.transformType)).map(e=>{let t={};for(let[n,r]of cw(e.properties))t[n]=String(r);return{type:e.transformType,config:t}})}function dT(e,t){let n=uT(t);if(n.length===0)return e;let r=rT(e);if(r.columns.length===0)return e;let i=lT(n,r.columns,r.rows,r.columnTypes);return oT(i.columns,i.rows)}function fT(e,t){let n=uT(t);if(n.length===0||e.labels.length===0)return e;let r=sT(e),i=lT(n,r.columns,r.rows,r.columnTypes);return re(oT(i.columns,i.rows))}var pT=new Set;function mT(e,t,n){let r=t;for(let t of e)t.transformType===`sort`?r=Zr.Total:!cT.has(t.transformType)&&!pT.has(t.transformType)&&(pT.add(t.transformType),console.warn(`[blueprint-chart] Unknown transform "${t.transformType}" in ${n}; ignored.`));return r}function hT(e){let t=t=>{let n=e.get(t);return n==null?void 0:String(n)||void 0},n=e.get(`transparentBackground`),r={title:t(`title`),description:t(`description`),source:t(`source`),sourceUrl:t(`sourceUrl`),byline:t(`byline`),note:t(`note`),padding:t(`padding`),transparentBackground:sw(n)||void 0};return Object.values(r).some(e=>e!==void 0)?r:void 0}function gT(e){let t=cw(e.properties),n=re(dT(e.data?dw(e.data):``,e.transforms)),r=t.get(`sort`),i=r==null?void 0:String(r),a=i===Xr.Ascending||i===Xr.Descending?i:void 0,o=t.get(`theme`),s=t.get(`sortMode`),c;return(s===Zr.Total||s===Zr.WithinGroups||s===Zr.None)&&(c=s),c=mT(e.transforms,c,`chart`),{chartType:e.chartType,data:n,properties:e.properties,frame:hT(t),colorizes:hw(e.colorizes),highlights:gw(e.highlights),areaFills:_w(e.areaFills),annotations:yw(e.annotations),seriesOverrides:bw(e.series),scenes:e.scenes,sort:a,sortMode:c,theme:o==null?void 0:String(o)||void 0}}var _T=Object.create(null);function vT(e){if(!_T[e]){let t={};for(let n of ES(e))n.default!==void 0&&(t[n.key]=n.default);_T[e]=t}return{..._T[e]}}function yT(e,t){let n=vT(e);return t.colors?.length?{...n,colorPalette:void 0,...t}:{...n,...t}}var bT=[`verticalLabelPosition`,`horizontalLabelPosition`];function xT(e,t,n){let r=vT(t),i={...e};for(let e of bT)n[e]===void 0&&r[e]!==void 0&&r[e]!==zr.Off&&(i[e]=r[e]);return i}var ST=new Set;function CT(e,t,n){let r=t;for(let t of e)t.transformType===`sort`?r=Zr.Total:!cT.has(t.transformType)&&!ST.has(t.transformType)&&(ST.add(t.transformType),console.warn(`[blueprint-chart] Unknown transform "${t.transformType}" in ${n}; ignored.`));return r}function wT(){return{properties:new Map,chartTypeOptions:{},colorizes:[],highlights:[],areaFills:[],seriesOverrides:[],transforms:[]}}function TT(e,t,n){let r=wT();for(let i=0;i<=t;i++){let a=e[i],o=cw(a.properties),s=o.get(`type`);s&&(r.chartType=s);let c=r.chartType??n;a.data&&(r.data=a.data);let l=lw(c,a.properties);r.chartTypeOptions={...r.chartTypeOptions,...l},a.colorizes.length>0?r.colorizes=a.colorizes:a.data&&(r.colorizes=[]),i===t&&(r.highlights=a.highlights),a.areaFills.length>0&&(r.areaFills=a.areaFills),a.series.length>0&&(r.seriesOverrides=a.series),a.transforms.length>0&&(r.transforms=[...r.transforms,...a.transforms]);for(let[e,t]of o)r.properties.set(e,t)}return r}function ET(e,t,n){return n<e?!1:t===`always`||n<=e+(typeof t==`number`?t:0)}function DT(e,t){let n=e.options??(e.properties?yT(e.chartType,lw(e.chartType,e.properties)):{}),r={chartType:e.chartType,data:e.data,options:n,frame:e.frame,colorizes:e.colorizes??[],highlights:e.highlights??[],areaFills:e.areaFills??[],annotations:(e.annotations??[]).map((e,t)=>({...e,key:e.key??`base:${t}:${e.kind}`})),seriesOverrides:e.seriesOverrides??[],sort:e.sort,sortMode:e.sortMode,theme:e.theme};if(t==null||!e.scenes||t<0||t>=e.scenes.length)return r;let i=TT(e.scenes,t,e.chartType),a=i.chartType??e.chartType,o=i.data?re(dw(i.data)):fT(r.data,i.transforms),s=Object.keys(i.chartTypeOptions).length>0?yT(a,{...n,...i.chartTypeOptions}):n,c=a!==e.chartType&&!e.options&&e.properties?xT(s,a,{...lw(a,e.properties),...i.chartTypeOptions}):s,l=i.colorizes.length>0?hw(i.colorizes):i.data?[]:r.colorizes,u=t==null?r.highlights:gw(i.highlights),d=i.areaFills.length>0?_w(i.areaFills):r.areaFills,f=(e.annotations??[]).map((e,t)=>({anchor:-1,key:e.key??`base:${t}:${e.kind}`,config:e}));for(let n=0;n<=t;n++)yw(e.scenes[n].annotations).forEach((e,t)=>{f.push({anchor:n,key:e.key??`s${n}:${t}:${e.kind}`,config:e})});let p=f.filter(({anchor:e,config:n})=>ET(e,n.repeat,t)).map(({key:e,config:t})=>({...t,key:e})),m=i.seriesOverrides.length>0?bw(i.seriesOverrides):r.seriesOverrides,h=i.properties.get(`sortMode`),g=h===Zr.Total||h===Zr.WithinGroups||h===Zr.None?h:void 0,_=CT(i.transforms,g??r.sortMode,`scene ${t}`),v=[`title`,`description`,`source`,`sourceUrl`,`byline`,`note`],y={};for(let e of v){let t=i.properties.get(e);typeof t==`string`&&(y[e]=t)}let b=Object.keys(y).length>0?{...r.frame,...y}:r.frame;return{...r,chartType:a,data:o,options:c,frame:b,colorizes:l,highlights:u,areaFills:d,annotations:p,seriesOverrides:m,sortMode:_}}var OT=new WeakMap;function kT(e){let t=OT.get(e);if(!(!t||t.size===0)){for(let n of t)e.style[n]=``;t.clear()}}function AT(e,t){let n=OT.get(e);n||(n=new Set,OT.set(e,n)),n.add(t)}function jT(e,t,n){if(kT(e),n.ignoreLayout||!t)return{constrained:!1};let r=cw(t),i=r.get(`heightMode`),a=r.get(`aspectRatio`),o=r.get(`fixedHeight`),s=!1;if(i===`aspect-ratio`&&a){let t=String(a).split(`:`).map(Number);t.length===2&&t[0]>0&&t[1]>0&&(e.style.aspectRatio=`${t[0]} / ${t[1]}`,e.style.height=`auto`,AT(e,`aspectRatio`),AT(e,`height`),s=!0)}else i===`fixed`&&o&&(e.style.height=`${o}px`,AT(e,`height`),s=!0);return s&&(e.style.display=`flex`,e.style.flexDirection=`column`,e.style.overflow=`hidden`,AT(e,`display`),AT(e,`flexDirection`),AT(e,`overflow`)),{constrained:s}}var MT=new WeakMap;function NT(e){e.querySelectorAll(`[data-bc-fade-overlay]`).forEach(e=>{typeof e.getAnimations==`function`&&e.getAnimations().forEach(e=>e.cancel()),e.remove()})}function PT(e,t,n){if(!n)return null;let r=MT.get(e);return!r||r===t?null:(NT(e),cg(e))}function FT(e,t,n){if(MT.set(e,t),n){let t=e.querySelector(`.bc-frame .bc-frame-body`);t&&sg(t),lg(e,n)}}function IT(e){MT.delete(e),NT(e)}var LT=`http://www.w3.org/2000/svg`;function RT(e){return e.replace(/\s+/g,` `).trim()}function zT(e,t){let n=t.series??[],r=(n.length>0?n.flatMap(e=>e.values):t.values).filter(e=>Number.isFinite(e));return`${e} of ${`${t.labels.length} categor${t.labels.length===1?`y`:`ies`}`}${n.length>0?` across ${n.length} series (${n.map(e=>e.name).join(`, `)})`:``}${r.length>0?`, values from ${Math.min(...r)} to ${Math.max(...r)}`:``}.`}function BT(e,t,n){let r=`${e.replace(/-/g,` `)} chart`,i=t?.title?RT(t.title):``,a=t?.description?RT(t.description):``;return{label:i||r,description:[a,zT(r,n)].filter(Boolean).join(` `)}}function VT(e,t,n){let r=Array.from(e.children).find(e=>e.tagName===t),i=r??e.ownerDocument.createElementNS(LT,t);i.textContent=n,r||e.insertBefore(i,e.firstChild)}function HT(e,t){e.setAttribute(`role`,`img`),e.setAttribute(`aria-label`,t.label),VT(e,`desc`,t.description),VT(e,`title`,t.label)}function UT(e){return(e.querySelector(`.bc-frame-body`)??e).querySelector(`svg`)}function WT(e,t,n){let r=UT(e);r&&t.accessibility&&HT(r,t.accessibility);let i=e.querySelector(`.bc-frame`);if(!i)return;let a=[];i.classList.forEach(e=>{e.startsWith(`bc-theme-`)&&a.push(e)});for(let e of a)i.classList.remove(e);t.theme&&i.classList.add(`bc-theme-${t.theme}`),n.constrained&&i.classList.add(`bc-frame--constrained`)}function GT(e,t,n={}){if(n.transition||(zy(e).interrupt(),e.replaceChildren(),IT(e)),t.data.labels.length===0){n.transition&&(zy(e).interrupt(),e.replaceChildren(),IT(e));return}let r=t;if(n.stripColors){let e={...t};if(t.properties&&(e.properties=t.properties.filter(e=>e.key!==`colors`&&e.key!==`colorPalette`)),t.options){let{colors:n,colorPalette:r,...i}=t.options;e.options=i}r=e}let i=jT(e,r.properties,n),a=DT(r,n.sceneIndex),o=TS(a.chartType);if(!o)return;Jg(e,a.chartType);let s=PT(e,a.chartType,!!n.transition);s&&e.replaceChildren();let c=wr(e),l=ow(a.options,c,a.chartType),u;if(n.thumbnail)u=null;else{let e=a.frame?.padding??n.padding??`16px`;u={...a.frame??{},padding:e}}let d=zy(e);n.transition&&d.beginCommit(),o(e,a.data,{frame:u,sort:a.sort,...l,sortMode:a.sortMode??l.sortMode,colorizes:a.colorizes.length>0?a.colorizes:void 0,highlights:a.highlights.length>0?a.highlights:void 0,areaFills:a.areaFills.length>0?a.areaFills:void 0,annotations:a.annotations.length>0?a.annotations:void 0,seriesOverrides:a.seriesOverrides.length>0?a.seriesOverrides:void 0},!!n.transition),n.transition&&d.commit({duration:og(),mode:n.transitionMode}),WT(e,{theme:n.theme??a.theme,accessibility:BT(a.chartType,u,a.data)},i),FT(e,a.chartType,s)}function KT(e,t,n){let r=document.createElement(`div`);r.style.cssText=`color: #888; font-family: monospace; padding: 0.75rem; white-space: pre-wrap;`,r.textContent=`Blueprint Chart: ${t}\n${n}`,e.replaceChildren(r)}function qT(e,t,n){if(!t){n?.transition||e.replaceChildren();return}let r;try{r=ee(t)}catch(t){KT(e,`could not parse chart`,t instanceof Error?t.message:String(t));return}try{GT(e,gT(r),n)}catch(t){KT(e,`could not render chart`,t instanceof Error?t.message:String(t))}}function JT(e,t,n){let r=0,i=!1,a=document.createElement(`nav`);a.className=`blueprint-chart-scenes`;let o=document.createElement(`button`);o.className=`blueprint-chart-scenes-prev`,o.textContent=`Previous`;let s=document.createElement(`button`);s.className=`blueprint-chart-scenes-next`,s.textContent=`Next`;let c=document.createElement(`span`);c.className=`blueprint-chart-scenes-counter`,a.appendChild(o),a.appendChild(c),a.appendChild(s),t.length>0&&e.appendChild(a);function l(){if(t.length===0){c.textContent=``;return}c.textContent=`${r+1} / ${t.length}`}function u(e){if(i||t.length===0||!Number.isFinite(e))return;let a=(Math.floor(e)%t.length+t.length)%t.length;r=a,l(),n(t[a],a)}return o.addEventListener(`click`,()=>u(r-1)),s.addEventListener(`click`,()=>u(r+1)),l(),{get currentScene(){return r},get totalScenes(){return t.length},next(){u(r+1)},previous(){u(r-1)},goTo:u,destroy(){i||(i=!0,a.remove())}}}var YT=JT;return document.readyState===`loading`?document.addEventListener(`DOMContentLoaded`,b):b(),e.createSceneController=JT,e.createStepController=YT,e.initBlueprint=b,e.renderBpc=qT,e})({});
|