@peripheries/charts 0.5.0 → 0.5.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/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  The shared charts lineage, built on @stack/core. The host serves it at run time as `@stack/charts`, from its import map. Install it to build against it, under that specifier and pinned exactly:
4
4
 
5
5
  ```json
6
- "@stack/charts": "npm:@peripheries/charts@0.5.0"
6
+ "@stack/charts": "npm:@peripheries/charts@0.5.2"
7
7
  ```
8
8
 
9
9
  Then `import { … } from '@stack/charts'`, and `@stack/charts/index.css` for its stylesheet. Keep it external in your build.
package/index.css CHANGED
@@ -1 +1 @@
1
- @layer charts{.charts-frame{--charts-text-size:calc(var(--text-body-sm-size) * .85);--charts-ink:var(--chart-fg);--charts-ink-muted:var(--chart-muted);--charts-rule:var(--chart-muted);--charts-grid-line:var(--chart-grid);min-width:0;max-width:100%;color:var(--charts-ink);font-family:var(--font-body);margin:0}.charts-frame__plot{width:100%;min-width:0;position:relative}.charts-frame__placeholder{height:var(--charts-plot-height,240px)}.charts-frame__placeholder[data-loading=true]{border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.charts-frame__notice{min-height:calc(var(--charts-plot-height,240px) / 2);padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);color:var(--color-text-muted);text-align:center;justify-content:center;align-items:center;margin:0;display:flex}.charts-frame__caption,.charts-frame__data{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.charts-frame__caption[data-visible=true]{width:auto;height:auto;margin:0 0 var(--space-3);clip-path:none;white-space:normal;color:var(--color-text);font-family:var(--font-heading);font-size:var(--text-heading-sm-size);letter-spacing:var(--text-heading-sm-tracking);line-height:var(--text-heading-sm-leading);font-weight:var(--text-heading-sm-weight);overflow-wrap:anywhere;position:static;overflow:visible}.charts-frame__caption[data-visible=true] .charts-frame__description{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.charts-frame[data-width=narrow] .charts-legend{flex-direction:column;align-items:flex-start}@media print{.charts-frame{--charts-ink-muted:var(--chart-fg);--charts-rule:var(--chart-fg);break-inside:avoid}.charts-frame [data-interactive=true],.charts-tooltip{display:none}.charts-frame__data{width:auto;height:auto;margin:var(--space-2) 0 0;clip-path:none;white-space:normal;position:static;overflow:visible}.charts-frame__table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);font-variant-numeric:tabular-nums;color:var(--chart-fg)}.charts-frame__table th,.charts-frame__table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--chart-grid);text-align:right}.charts-frame__table th:first-child{text-align:left}}.charts-axis__line,.charts-axis__tick{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;stroke-opacity:.5;shape-rendering:crispedges}.charts-axis__grid{stroke:var(--charts-grid-line,var(--chart-grid));stroke-width:1px;shape-rendering:crispedges}.charts-axis__label,.charts-axis__title{font-family:var(--font-body);font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));font-variant-numeric:tabular-nums;fill:var(--charts-ink-muted,var(--chart-muted))}.charts-tooltip{left:var(--charts-tooltip-x,0);top:var(--charts-tooltip-y,0);z-index:1;gap:var(--space-1);max-width:min(18rem,100%);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--chart-fg);color:var(--chart-bg);font-family:var(--font-body);font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);font-variant-numeric:tabular-nums;pointer-events:none;transform:translate(-50%,calc(-100% - var(--space-2)));flex-direction:column;line-height:1.4;display:flex;position:absolute}.charts-tooltip[data-align=start]{transform:translate(0,calc(-100% - var(--space-2)))}.charts-tooltip[data-align=end]{transform:translate(-100%,calc(-100% - var(--space-2)))}.charts-tooltip__heading{opacity:.8;white-space:nowrap}.charts-tooltip__row{align-items:center;gap:var(--space-1);min-width:0;display:flex}.charts-tooltip__swatch{background:var(--charts-swatch);flex-shrink:0;width:.6em;height:.6em}.charts-tooltip__label{opacity:.85;overflow-wrap:anywhere;min-width:0}.charts-tooltip__label:after{content:":"}.charts-tooltip__value{padding-left:var(--space-2);white-space:nowrap;margin-left:auto;font-weight:600}.charts-legend{align-items:center;gap:var(--space-1) var(--space-3);min-width:0;margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.charts-legend__item{align-items:center;gap:var(--space-1);min-width:0;max-width:100%;display:flex}.charts-legend__swatch{background:var(--charts-swatch);flex-shrink:0;width:.75em;height:.75em}.charts-legend__sample{flex-shrink:0;display:block}.charts-legend__label{overflow-wrap:anywhere;min-width:0;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);font-variant-numeric:tabular-nums;color:var(--charts-ink-muted,var(--chart-muted))}.charts-plot{max-width:100%;display:block;overflow:hidden}.charts-reference-line__rule{stroke:var(--charts-reference-stroke,var(--chart-fg));stroke-width:1px}.charts-reference-line__label{font-family:var(--font-body);font-size:var(--charts-reference-size,var(--charts-text-size,calc(var(--text-body-sm-size) * .85)));font-variant-numeric:tabular-nums;fill:var(--charts-reference-label,var(--charts-ink-muted,var(--chart-muted)))}.charts-line-chart__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.charts-line-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-line-chart__selection{fill:var(--chart-fg);fill-opacity:.08}.charts-line-chart__brush .selection{fill:var(--chart-fg);fill-opacity:.12;stroke:var(--chart-fg);stroke-opacity:.4}.charts-line-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-line-chart__target:focus-visible,.charts-line-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-chart__series[data-mode=stacked] .charts-bar-chart__bar{stroke:var(--chart-bg);stroke-width:1px}.charts-bar-chart__bar{outline:none}.charts-bar-chart__bar:focus-visible,.charts-bar-chart__bar[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-area-chart__band{fill-opacity:.5}.charts-area-chart__edge{fill:none;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.charts-area-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-area-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-area-chart__target:focus-visible,.charts-area-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-line-chart__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.charts-bar-line-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-bar-line-chart__bar{outline:none}.charts-bar-line-chart__bar:focus-visible,.charts-bar-line-chart__bar[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-line-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-bar-line-chart__target:focus-visible,.charts-bar-line-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-scatter-chart__point{fill-opacity:.85;stroke-opacity:.9;stroke-width:1px;outline:none}.charts-scatter-chart__series[data-bubbles=true] .charts-scatter-chart__point{fill-opacity:.6}.charts-scatter-chart__point:focus-visible,.charts-scatter-chart__point[data-focused=true]{stroke:var(--chart-focus);stroke-opacity:1;stroke-width:2px}.charts-sparkline .charts-frame__plot{min-height:var(--charts-plot-height)}.charts-sparkline__line{fill:none;stroke-linejoin:round;stroke-linecap:round}.charts-sparkline__area{fill-opacity:.18}.charts-sparkline__dot{stroke:var(--chart-bg);stroke-width:1px}.charts-sparkline__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-sparkline__target:focus-visible,.charts-sparkline__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-pie-chart__slice{stroke:var(--charts-slice-stroke,var(--chart-bg));stroke-width:var(--charts-slice-stroke-width,1px);stroke-linejoin:round;outline:none}.charts-pie-chart__slice:focus-visible,.charts-pie-chart__slice[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-pie-chart__center-label,.charts-pie-chart__center-sublabel{font-family:var(--font-body);font-variant-numeric:tabular-nums}.charts-pie-chart__center-label{font-size:var(--charts-pie-center-size,var(--text-heading-md-size));fill:var(--charts-ink,var(--chart-fg));font-weight:600}.charts-pie-chart__center-sublabel{font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));fill:var(--charts-ink-muted,var(--chart-muted))}.charts-donut-chart .charts-pie-chart__center-label{letter-spacing:-.02em}.charts-metric-chart{gap:var(--space-1);min-width:0;max-width:100%;font-family:var(--font-body);color:var(--color-text);flex-direction:column;display:flex}.charts-metric-chart__label{min-width:0;font-size:var(--text-eyebrow-size);line-height:var(--text-eyebrow-leading);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);text-transform:uppercase;color:var(--color-text-subtle);overflow-wrap:anywhere}.charts-metric-chart__value{min-width:0;font-family:var(--font-heading);font-size:var(--text-display-md-size);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-text);overflow-wrap:anywhere;font-weight:600;line-height:1.1}.charts-metric-chart[data-width=narrow] .charts-metric-chart__value{font-size:var(--text-heading-lg-size);letter-spacing:var(--text-heading-lg-tracking)}.charts-metric-chart__meta{align-items:baseline;gap:0 var(--space-2);min-width:0;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.charts-metric-chart__delta{color:var(--charts-metric-delta,var(--chart-muted));white-space:nowrap;font-weight:600}.charts-metric-chart__caption{min-width:0;color:var(--color-text-muted);overflow-wrap:anywhere}.charts-metric-chart .charts-metric-chart__trend{margin-top:var(--space-1)}.charts-waterfall-chart__connector{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;stroke-dasharray:2 2;shape-rendering:crispedges}.charts-waterfall-chart__zero{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;shape-rendering:crispedges}.charts-waterfall-chart__value{font-family:var(--font-body);font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));font-variant-numeric:tabular-nums;fill:var(--charts-ink,var(--chart-fg));font-weight:600}}
1
+ @layer charts{.charts-frame{--charts-text-size:calc(var(--text-body-sm-size) * .85);--charts-ink:var(--chart-fg);--charts-ink-muted:var(--color-text-muted);--charts-rule:var(--chart-muted);--charts-grid-line:var(--chart-grid);min-width:0;max-width:100%;color:var(--charts-ink);font-family:var(--font-body);margin:0}.charts-frame__plot{width:100%;min-width:0;position:relative}.charts-frame__placeholder{height:var(--charts-plot-height,240px)}.charts-frame__placeholder[data-loading=true]{border-radius:var(--radius-sm);background:var(--color-surface-sunken)}.charts-frame__notice{min-height:calc(var(--charts-plot-height,240px) / 2);padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-sm);font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);color:var(--color-text-muted);text-align:center;justify-content:center;align-items:center;margin:0;display:flex}.charts-frame__caption,.charts-frame__data{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.charts-frame__caption[data-visible=true]{width:auto;height:auto;margin:0 0 var(--space-3);clip-path:none;white-space:normal;color:var(--color-text);font-family:var(--font-heading);font-size:var(--text-heading-sm-size);letter-spacing:var(--text-heading-sm-tracking);line-height:var(--text-heading-sm-leading);font-weight:var(--text-heading-sm-weight);overflow-wrap:anywhere;position:static;overflow:visible}.charts-frame__caption[data-visible=true] .charts-frame__description{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.charts-frame[data-width=narrow] .charts-legend{flex-direction:column;align-items:flex-start}@media print{.charts-frame{--charts-ink-muted:var(--chart-fg);--charts-rule:var(--chart-fg);break-inside:avoid}.charts-frame [data-interactive=true],.charts-tooltip{display:none}.charts-frame__data{width:auto;height:auto;margin:var(--space-2) 0 0;clip-path:none;white-space:normal;position:static;overflow:visible}.charts-frame__table{border-collapse:collapse;width:100%;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);font-variant-numeric:tabular-nums;color:var(--chart-fg)}.charts-frame__table th,.charts-frame__table td{padding:var(--space-1) var(--space-2);border-bottom:1px solid var(--chart-grid);text-align:right}.charts-frame__table th:first-child{text-align:left}}.charts-axis__line,.charts-axis__tick{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;stroke-opacity:.5;shape-rendering:crispedges}.charts-axis__grid{stroke:var(--charts-grid-line,var(--chart-grid));stroke-width:1px;shape-rendering:crispedges}.charts-axis__label,.charts-axis__title{font-family:var(--font-body);font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));font-variant-numeric:tabular-nums;fill:var(--charts-ink-muted,var(--chart-muted))}.charts-tooltip{left:var(--charts-tooltip-x,0);top:var(--charts-tooltip-y,0);z-index:1;gap:var(--space-1);max-width:min(18rem,100%);padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--chart-fg);color:var(--chart-bg);font-family:var(--font-body);font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);font-variant-numeric:tabular-nums;pointer-events:none;transform:translate(-50%,calc(-100% - var(--space-2)));flex-direction:column;line-height:1.4;display:flex;position:absolute}.charts-tooltip[data-align=start]{transform:translate(0,calc(-100% - var(--space-2)))}.charts-tooltip[data-align=end]{transform:translate(-100%,calc(-100% - var(--space-2)))}.charts-tooltip__heading{opacity:.8;white-space:nowrap}.charts-tooltip__row{align-items:center;gap:var(--space-1);min-width:0;display:flex}.charts-tooltip__swatch{background:var(--charts-swatch);flex-shrink:0;width:.6em;height:.6em}.charts-tooltip__label{opacity:.85;overflow-wrap:anywhere;min-width:0}.charts-tooltip__label:after{content:":"}.charts-tooltip__value{padding-left:var(--space-2);white-space:nowrap;margin-left:auto;font-weight:600}.charts-legend{align-items:center;gap:var(--space-1) var(--space-3);min-width:0;margin:var(--space-2) 0 0;flex-wrap:wrap;padding:0;list-style:none;display:flex}.charts-legend__item{align-items:center;gap:var(--space-1);min-width:0;max-width:100%;display:flex}.charts-legend__swatch{background:var(--charts-swatch);flex-shrink:0;width:.75em;height:.75em}.charts-legend__sample{flex-shrink:0;display:block}.charts-legend__label{overflow-wrap:anywhere;min-width:0;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);font-variant-numeric:tabular-nums;color:var(--charts-ink-muted,var(--chart-muted))}.charts-plot{max-width:100%;display:block;overflow:hidden}.charts-reference-line__rule{stroke:var(--charts-reference-stroke,var(--chart-fg));stroke-width:1px}.charts-reference-line__label{font-family:var(--font-body);font-size:var(--charts-reference-size,var(--charts-text-size,calc(var(--text-body-sm-size) * .85)));font-variant-numeric:tabular-nums;fill:var(--charts-reference-label,var(--charts-ink-muted,var(--chart-muted)))}.charts-line-chart__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.charts-line-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-line-chart__selection{fill:var(--chart-fg);fill-opacity:.08}.charts-line-chart__brush .selection{fill:var(--chart-fg);fill-opacity:.12;stroke:var(--chart-fg);stroke-opacity:.4}.charts-line-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-line-chart__target:focus-visible,.charts-line-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-chart__series[data-mode=stacked] .charts-bar-chart__bar{stroke:var(--chart-bg);stroke-width:1px}.charts-bar-chart__bar{outline:none}.charts-bar-chart__bar:focus-visible,.charts-bar-chart__bar[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-area-chart__band{fill-opacity:.5}.charts-area-chart__edge{fill:none;stroke-width:1.5px;stroke-linejoin:round;stroke-linecap:round}.charts-area-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-area-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-area-chart__target:focus-visible,.charts-area-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-line-chart__line{fill:none;stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.charts-bar-line-chart__markers path{stroke:var(--chart-bg);stroke-width:1px}.charts-bar-line-chart__bar{outline:none}.charts-bar-line-chart__bar:focus-visible,.charts-bar-line-chart__bar[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-bar-line-chart__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-bar-line-chart__target:focus-visible,.charts-bar-line-chart__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-scatter-chart__point{fill-opacity:.85;stroke-opacity:.9;stroke-width:1px;outline:none}.charts-scatter-chart__series[data-bubbles=true] .charts-scatter-chart__point{fill-opacity:.6}.charts-scatter-chart__point:focus-visible,.charts-scatter-chart__point[data-focused=true]{stroke:var(--chart-focus);stroke-opacity:1;stroke-width:2px}.charts-sparkline .charts-frame__plot{min-height:var(--charts-plot-height)}.charts-sparkline__line{fill:none;stroke-linejoin:round;stroke-linecap:round}.charts-sparkline__area{fill-opacity:.18}.charts-sparkline__dot{stroke:var(--chart-bg);stroke-width:1px}.charts-sparkline__target{fill:#0000;stroke:none;pointer-events:none;outline:none}.charts-sparkline__target:focus-visible,.charts-sparkline__target[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-pie-chart__slice{stroke:var(--charts-slice-stroke,var(--chart-bg));stroke-width:var(--charts-slice-stroke-width,1px);stroke-linejoin:round;outline:none}.charts-pie-chart__slice:focus-visible,.charts-pie-chart__slice[data-focused=true]{stroke:var(--chart-focus);stroke-width:2px}.charts-pie-chart__center-label,.charts-pie-chart__center-sublabel{font-family:var(--font-body);font-variant-numeric:tabular-nums}.charts-pie-chart__center-label{font-size:var(--charts-pie-center-size,var(--text-heading-md-size));fill:var(--charts-ink,var(--chart-fg));font-weight:600}.charts-pie-chart__center-sublabel{font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));fill:var(--charts-ink-muted,var(--chart-muted))}.charts-donut-chart .charts-pie-chart__center-label{letter-spacing:-.02em}.charts-metric-chart{gap:var(--space-1);min-width:0;max-width:100%;font-family:var(--font-body);color:var(--color-text);flex-direction:column;display:flex}.charts-metric-chart__label{min-width:0;font-size:var(--text-eyebrow-size);line-height:var(--text-eyebrow-leading);font-weight:var(--text-eyebrow-weight);letter-spacing:var(--text-eyebrow-tracking);text-transform:uppercase;color:var(--color-text-subtle);overflow-wrap:anywhere}.charts-metric-chart__value{min-width:0;font-family:var(--font-heading);font-size:var(--text-display-md-size);letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--color-text);overflow-wrap:anywhere;font-weight:600;line-height:1.1}.charts-metric-chart[data-width=narrow] .charts-metric-chart__value{font-size:var(--text-heading-lg-size);letter-spacing:var(--text-heading-lg-tracking)}.charts-metric-chart__meta{align-items:baseline;gap:0 var(--space-2);min-width:0;font-size:var(--text-body-sm-size);letter-spacing:var(--text-body-sm-tracking);line-height:var(--text-body-sm-leading);font-variant-numeric:tabular-nums;flex-wrap:wrap;display:flex}.charts-metric-chart__delta{color:var(--charts-metric-delta,var(--chart-muted));white-space:nowrap;font-weight:600}.charts-metric-chart__caption{min-width:0;color:var(--color-text-muted);overflow-wrap:anywhere}.charts-metric-chart .charts-metric-chart__trend{margin-top:var(--space-1)}.charts-waterfall-chart__connector{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;stroke-dasharray:2 2;shape-rendering:crispedges}.charts-waterfall-chart__zero{stroke:var(--charts-rule,var(--chart-muted));stroke-width:1px;shape-rendering:crispedges}.charts-waterfall-chart__value{font-family:var(--font-body);font-size:var(--charts-text-size,calc(var(--text-body-sm-size) * .85));font-variant-numeric:tabular-nums;fill:var(--charts-ink,var(--chart-fg));font-weight:600}}
package/index.js CHANGED
@@ -1 +1 @@
1
- import{useCallback as e,useEffect as t,useId as n,useMemo as r,useRef as i,useState as a}from"react";import{DEFAULT_DISPLAY_LOCALE as o,cx as s,displayLocale as c,toneOf as l,vars as u}from"@stack/core";import{Fragment as d,jsx as f,jsxs as p}from"react/jsx-runtime";var m={value:()=>{}};function h(){for(var e3=0,t2=arguments.length,n2={},r2;e3<t2;++e3){if(!(r2=arguments[e3]+"")||r2 in n2||/[\s.]/.test(r2))throw Error("illegal type: "+r2);n2[r2]=[]}return new g(n2)}function g(e3){this._=e3}function _(e3,t2){return e3.trim().split(/^|\s+/).map(function(e4){var n2="",r2=e4.indexOf(".");if(r2>=0&&(n2=e4.slice(r2+1),e4=e4.slice(0,r2)),e4&&!t2.hasOwnProperty(e4))throw Error("unknown type: "+e4);return{type:e4,name:n2}})}g.prototype=h.prototype={constructor:g,on:function(e3,t2){var n2=this._,r2=_(e3+"",n2),i2,a2=-1,o2=r2.length;if(arguments.length<2){for(;++a2<o2;)if((i2=(e3=r2[a2]).type)&&(i2=v(n2[i2],e3.name)))return i2;return}if(t2!=null&&typeof t2!="function")throw Error("invalid callback: "+t2);for(;++a2<o2;)if(i2=(e3=r2[a2]).type)n2[i2]=y(n2[i2],e3.name,t2);else if(t2==null)for(i2 in n2)n2[i2]=y(n2[i2],e3.name,null);return this},copy:function(){var e3={},t2=this._;for(var n2 in t2)e3[n2]=t2[n2].slice();return new g(e3)},call:function(e3,t2){if((i2=arguments.length-2)>0)for(var n2=Array(i2),r2=0,i2,a2;r2<i2;++r2)n2[r2]=arguments[r2+2];if(!this._.hasOwnProperty(e3))throw Error("unknown type: "+e3);for(a2=this._[e3],r2=0,i2=a2.length;r2<i2;++r2)a2[r2].value.apply(t2,n2)},apply:function(e3,t2,n2){if(!this._.hasOwnProperty(e3))throw Error("unknown type: "+e3);for(var r2=this._[e3],i2=0,a2=r2.length;i2<a2;++i2)r2[i2].value.apply(t2,n2)}};function v(e3,t2){for(var n2=0,r2=e3.length,i2;n2<r2;++n2)if((i2=e3[n2]).name===t2)return i2.value}function y(e3,t2,n2){for(var r2=0,i2=e3.length;r2<i2;++r2)if(e3[r2].name===t2){e3[r2]=m,e3=e3.slice(0,r2).concat(e3.slice(r2+1));break}return n2!=null&&e3.push({name:t2,value:n2}),e3}var b={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 x(e3){var t2=e3+="",n2=t2.indexOf(":");return n2>=0&&(t2=e3.slice(0,n2))!=="xmlns"&&(e3=e3.slice(n2+1)),b.hasOwnProperty(t2)?{space:b[t2],local:e3}:e3}function S(e3){return function(){var t2=this.ownerDocument,n2=this.namespaceURI;return n2==="http://www.w3.org/1999/xhtml"&&t2.documentElement.namespaceURI==="http://www.w3.org/1999/xhtml"?t2.createElement(e3):t2.createElementNS(n2,e3)}}function C(e3){return function(){return this.ownerDocument.createElementNS(e3.space,e3.local)}}function w(e3){var t2=x(e3);return(t2.local?C:S)(t2)}function T(){}function E(e3){return e3==null?T:function(){return this.querySelector(e3)}}function D(e3){typeof e3!="function"&&(e3=E(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=Array(o2),c2,l2,u2=0;u2<o2;++u2)(c2=a2[u2])&&(l2=e3.call(c2,c2.__data__,u2,a2))&&("__data__"in c2&&(l2.__data__=c2.__data__),s2[u2]=l2);return new vt(r2,this._parents)}function O(e3){return e3==null?[]:Array.isArray(e3)?e3:Array.from(e3)}function k(){return[]}function A(e3){return e3==null?k:function(){return this.querySelectorAll(e3)}}function j(e3){return function(){return O(e3.apply(this,arguments))}}function M(e3){e3=typeof e3=="function"?j(e3):A(e3);for(var t2=this._groups,n2=t2.length,r2=[],i2=[],a2=0;a2<n2;++a2)for(var o2=t2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)(c2=o2[l2])&&(r2.push(e3.call(c2,c2.__data__,l2,o2)),i2.push(c2));return new vt(r2,i2)}function N(e3){return function(){return this.matches(e3)}}function P(e3){return function(t2){return t2.matches(e3)}}var F=Array.prototype.find;function I(e3){return function(){return F.call(this.children,e3)}}function L(){return this.firstElementChild}function ee(e3){return this.select(e3==null?L:I(typeof e3=="function"?e3:P(e3)))}var R=Array.prototype.filter;function z(){return Array.from(this.children)}function B(e3){return function(){return R.call(this.children,e3)}}function V(e3){return this.selectAll(e3==null?z:B(typeof e3=="function"?e3:P(e3)))}function H(e3){typeof e3!="function"&&(e3=N(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=[],c2,l2=0;l2<o2;++l2)(c2=a2[l2])&&e3.call(c2,c2.__data__,l2,a2)&&s2.push(c2);return new vt(r2,this._parents)}function U(e3){return Array(e3.length)}function W(){return new vt(this._enter||this._groups.map(U),this._parents)}function G(e3,t2){this.ownerDocument=e3.ownerDocument,this.namespaceURI=e3.namespaceURI,this._next=null,this._parent=e3,this.__data__=t2}G.prototype={constructor:G,appendChild:function(e3){return this._parent.insertBefore(e3,this._next)},insertBefore:function(e3,t2){return this._parent.insertBefore(e3,t2)},querySelector:function(e3){return this._parent.querySelector(e3)},querySelectorAll:function(e3){return this._parent.querySelectorAll(e3)}};function K(e3){return function(){return e3}}function q(e3,t2,n2,r2,i2,a2){for(var o2=0,s2,c2=t2.length,l2=a2.length;o2<l2;++o2)(s2=t2[o2])?(s2.__data__=a2[o2],r2[o2]=s2):n2[o2]=new G(e3,a2[o2]);for(;o2<c2;++o2)(s2=t2[o2])&&(i2[o2]=s2)}function J(e3,t2,n2,r2,i2,a2,o2){var s2,c2,l2=new Map,u2=t2.length,d2=a2.length,f2=Array(u2),p2;for(s2=0;s2<u2;++s2)(c2=t2[s2])&&(f2[s2]=p2=o2.call(c2,c2.__data__,s2,t2)+"",l2.has(p2)?i2[s2]=c2:l2.set(p2,c2));for(s2=0;s2<d2;++s2)p2=o2.call(e3,a2[s2],s2,a2)+"",(c2=l2.get(p2))?(r2[s2]=c2,c2.__data__=a2[s2],l2.delete(p2)):n2[s2]=new G(e3,a2[s2]);for(s2=0;s2<u2;++s2)(c2=t2[s2])&&l2.get(f2[s2])===c2&&(i2[s2]=c2)}function Y(e3){return e3.__data__}function X(e3,t2){if(!arguments.length)return Array.from(this,Y);var n2=t2?J:q,r2=this._parents,i2=this._groups;typeof e3!="function"&&(e3=K(e3));for(var a2=i2.length,o2=Array(a2),s2=Array(a2),c2=Array(a2),l2=0;l2<a2;++l2){var u2=r2[l2],d2=i2[l2],f2=d2.length,p2=te(e3.call(u2,u2&&u2.__data__,l2,r2)),m2=p2.length,h2=s2[l2]=Array(m2),g2=o2[l2]=Array(m2);n2(u2,d2,h2,g2,c2[l2]=Array(f2),p2,t2);for(var _2=0,v2=0,y2,b2;_2<m2;++_2)if(y2=h2[_2]){for(_2>=v2&&(v2=_2+1);!(b2=g2[v2])&&++v2<m2;);y2._next=b2||null}}return o2=new vt(o2,r2),o2._enter=s2,o2._exit=c2,o2}function te(e3){return typeof e3=="object"&&"length"in e3?e3:Array.from(e3)}function ne(){return new vt(this._exit||this._groups.map(U),this._parents)}function re(e3,t2,n2){var r2=this.enter(),i2=this,a2=this.exit();return typeof e3=="function"?(r2=e3(r2),r2&&=r2.selection()):r2=r2.append(e3+""),t2!=null&&(i2=t2(i2),i2&&=i2.selection()),n2==null?a2.remove():n2(a2),r2&&i2?r2.merge(i2).order():i2}function ie(e3){for(var t2=e3.selection?e3.selection():e3,n2=this._groups,r2=t2._groups,i2=n2.length,a2=r2.length,o2=Math.min(i2,a2),s2=Array(i2),c2=0;c2<o2;++c2)for(var l2=n2[c2],u2=r2[c2],d2=l2.length,f2=s2[c2]=Array(d2),p2,m2=0;m2<d2;++m2)(p2=l2[m2]||u2[m2])&&(f2[m2]=p2);for(;c2<i2;++c2)s2[c2]=n2[c2];return new vt(s2,this._parents)}function ae(){for(var e3=this._groups,t2=-1,n2=e3.length;++t2<n2;)for(var r2=e3[t2],i2=r2.length-1,a2=r2[i2],o2;--i2>=0;)(o2=r2[i2])&&(a2&&o2.compareDocumentPosition(a2)^4&&a2.parentNode.insertBefore(o2,a2),a2=o2);return this}function oe(e3){e3||=se;function t2(t3,n3){return t3&&n3?e3(t3.__data__,n3.__data__):!t3-!n3}for(var n2=this._groups,r2=n2.length,i2=Array(r2),a2=0;a2<r2;++a2){for(var o2=n2[a2],s2=o2.length,c2=i2[a2]=Array(s2),l2,u2=0;u2<s2;++u2)(l2=o2[u2])&&(c2[u2]=l2);c2.sort(t2)}return new vt(i2,this._parents).order()}function se(e3,t2){return e3<t2?-1:e3>t2?1:e3>=t2?0:NaN}function ce(){var e3=arguments[0];return arguments[0]=this,e3.apply(null,arguments),this}function le(){return Array.from(this)}function ue(){for(var e3=this._groups,t2=0,n2=e3.length;t2<n2;++t2)for(var r2=e3[t2],i2=0,a2=r2.length;i2<a2;++i2){var o2=r2[i2];if(o2)return o2}return null}function de(){let e3=0;for(let t2 of this)++e3;return e3}function fe(){return!this.node()}function pe(e3){for(var t2=this._groups,n2=0,r2=t2.length;n2<r2;++n2)for(var i2=t2[n2],a2=0,o2=i2.length,s2;a2<o2;++a2)(s2=i2[a2])&&e3.call(s2,s2.__data__,a2,i2);return this}function me(e3){return function(){this.removeAttribute(e3)}}function he(e3){return function(){this.removeAttributeNS(e3.space,e3.local)}}function ge(e3,t2){return function(){this.setAttribute(e3,t2)}}function _e(e3,t2){return function(){this.setAttributeNS(e3.space,e3.local,t2)}}function ve(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?this.removeAttribute(e3):this.setAttribute(e3,n2)}}function ye(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?this.removeAttributeNS(e3.space,e3.local):this.setAttributeNS(e3.space,e3.local,n2)}}function be(e3,t2){var n2=x(e3);if(arguments.length<2){var r2=this.node();return n2.local?r2.getAttributeNS(n2.space,n2.local):r2.getAttribute(n2)}return this.each((t2==null?n2.local?he:me:typeof t2=="function"?n2.local?ye:ve:n2.local?_e:ge)(n2,t2))}function xe(e3){return e3.ownerDocument&&e3.ownerDocument.defaultView||e3.document&&e3||e3.defaultView}function Se(e3){return function(){this.style.removeProperty(e3)}}function Ce(e3,t2,n2){return function(){this.style.setProperty(e3,t2,n2)}}function we(e3,t2,n2){return function(){var r2=t2.apply(this,arguments);r2==null?this.style.removeProperty(e3):this.style.setProperty(e3,r2,n2)}}function Te(e3,t2,n2){return arguments.length>1?this.each((t2==null?Se:typeof t2=="function"?we:Ce)(e3,t2,n2??"")):Ee(this.node(),e3)}function Ee(e3,t2){return e3.style.getPropertyValue(t2)||xe(e3).getComputedStyle(e3,null).getPropertyValue(t2)}function De(e3){return function(){delete this[e3]}}function Oe(e3,t2){return function(){this[e3]=t2}}function ke(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?delete this[e3]:this[e3]=n2}}function Ae(e3,t2){return arguments.length>1?this.each((t2==null?De:typeof t2=="function"?ke:Oe)(e3,t2)):this.node()[e3]}function je(e3){return e3.trim().split(/^|\s+/)}function Me(e3){return e3.classList||new Ne(e3)}function Ne(e3){this._node=e3,this._names=je(e3.getAttribute("class")||"")}Ne.prototype={add:function(e3){this._names.indexOf(e3)<0&&(this._names.push(e3),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e3){var t2=this._names.indexOf(e3);t2>=0&&(this._names.splice(t2,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e3){return this._names.indexOf(e3)>=0}};function Pe(e3,t2){for(var n2=Me(e3),r2=-1,i2=t2.length;++r2<i2;)n2.add(t2[r2])}function Fe(e3,t2){for(var n2=Me(e3),r2=-1,i2=t2.length;++r2<i2;)n2.remove(t2[r2])}function Ie(e3){return function(){Pe(this,e3)}}function Le(e3){return function(){Fe(this,e3)}}function Re(e3,t2){return function(){(t2.apply(this,arguments)?Pe:Fe)(this,e3)}}function ze(e3,t2){var n2=je(e3+"");if(arguments.length<2){for(var r2=Me(this.node()),i2=-1,a2=n2.length;++i2<a2;)if(!r2.contains(n2[i2]))return false;return true}return this.each((typeof t2=="function"?Re:t2?Ie:Le)(n2,t2))}function Be(){this.textContent=""}function Ve(e3){return function(){this.textContent=e3}}function He(e3){return function(){var t2=e3.apply(this,arguments);this.textContent=t2??""}}function Ue(e3){return arguments.length?this.each(e3==null?Be:(typeof e3=="function"?He:Ve)(e3)):this.node().textContent}function We(){this.innerHTML=""}function Ge(e3){return function(){this.innerHTML=e3}}function Ke(e3){return function(){var t2=e3.apply(this,arguments);this.innerHTML=t2??""}}function qe(e3){return arguments.length?this.each(e3==null?We:(typeof e3=="function"?Ke:Ge)(e3)):this.node().innerHTML}function Je(){this.nextSibling&&this.parentNode.appendChild(this)}function Ye(){return this.each(Je)}function Xe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Ze(){return this.each(Xe)}function Qe(e3){var t2=typeof e3=="function"?e3:w(e3);return this.select(function(){return this.appendChild(t2.apply(this,arguments))})}function $e(){return null}function et(e3,t2){var n2=typeof e3=="function"?e3:w(e3),r2=t2==null?$e:typeof t2=="function"?t2:E(t2);return this.select(function(){return this.insertBefore(n2.apply(this,arguments),r2.apply(this,arguments)||null)})}function tt(){var e3=this.parentNode;e3&&e3.removeChild(this)}function nt(){return this.each(tt)}function rt(){var e3=this.cloneNode(false),t2=this.parentNode;return t2?t2.insertBefore(e3,this.nextSibling):e3}function it(){var e3=this.cloneNode(true),t2=this.parentNode;return t2?t2.insertBefore(e3,this.nextSibling):e3}function at(e3){return this.select(e3?it:rt)}function ot(e3){return arguments.length?this.property("__data__",e3):this.node().__data__}function st(e3){return function(t2){e3.call(this,t2,this.__data__)}}function ct(e3){return e3.trim().split(/^|\s+/).map(function(e4){var t2="",n2=e4.indexOf(".");return n2>=0&&(t2=e4.slice(n2+1),e4=e4.slice(0,n2)),{type:e4,name:t2}})}function lt(e3){return function(){var t2=this.__on;if(t2){for(var n2=0,r2=-1,i2=t2.length,a2;n2<i2;++n2)a2=t2[n2],(!e3.type||a2.type===e3.type)&&a2.name===e3.name?this.removeEventListener(a2.type,a2.listener,a2.options):t2[++r2]=a2;++r2?t2.length=r2:delete this.__on}}}function ut(e3,t2,n2){return function(){var r2=this.__on,i2,a2=st(t2);if(r2){for(var o2=0,s2=r2.length;o2<s2;++o2)if((i2=r2[o2]).type===e3.type&&i2.name===e3.name){this.removeEventListener(i2.type,i2.listener,i2.options),this.addEventListener(i2.type,i2.listener=a2,i2.options=n2),i2.value=t2;return}}this.addEventListener(e3.type,a2,n2),i2={type:e3.type,name:e3.name,value:t2,listener:a2,options:n2},r2?r2.push(i2):this.__on=[i2]}}function dt(e3,t2,n2){var r2=ct(e3+""),i2,a2=r2.length,o2;if(arguments.length<2){var s2=this.node().__on;if(s2){for(var c2=0,l2=s2.length,u2;c2<l2;++c2)for(i2=0,u2=s2[c2];i2<a2;++i2)if((o2=r2[i2]).type===u2.type&&o2.name===u2.name)return u2.value}return}for(s2=t2?ut:lt,i2=0;i2<a2;++i2)this.each(s2(r2[i2],t2,n2));return this}function ft(e3,t2,n2){var r2=xe(e3),i2=r2.CustomEvent;typeof i2=="function"?i2=new i2(t2,n2):(i2=r2.document.createEvent("Event"),n2?(i2.initEvent(t2,n2.bubbles,n2.cancelable),i2.detail=n2.detail):i2.initEvent(t2,false,false)),e3.dispatchEvent(i2)}function pt(e3,t2){return function(){return ft(this,e3,t2)}}function mt(e3,t2){return function(){return ft(this,e3,t2.apply(this,arguments))}}function ht(e3,t2){return this.each((typeof t2=="function"?mt:pt)(e3,t2))}function*gt(){for(var e3=this._groups,t2=0,n2=e3.length;t2<n2;++t2)for(var r2=e3[t2],i2=0,a2=r2.length,o2;i2<a2;++i2)(o2=r2[i2])&&(yield o2)}var _t=[null];function vt(e3,t2){this._groups=e3,this._parents=t2}function yt(){return new vt([[document.documentElement]],_t)}function bt(){return this}vt.prototype=yt.prototype={constructor:vt,select:D,selectAll:M,selectChild:ee,selectChildren:V,filter:H,data:X,enter:W,exit:ne,join:re,merge:ie,selection:bt,order:ae,sort:oe,call:ce,nodes:le,node:ue,size:de,empty:fe,each:pe,attr:be,style:Te,property:Ae,classed:ze,text:Ue,html:qe,raise:Ye,lower:Ze,append:Qe,insert:et,remove:nt,clone:at,datum:ot,on:dt,dispatch:ht,[Symbol.iterator]:gt};function xt(e3){return typeof e3=="string"?new vt([[document.querySelector(e3)]],[document.documentElement]):new vt([[e3]],_t)}function St(e3){let t2;for(;t2=e3.sourceEvent;)e3=t2;return e3}function Ct(e3,t2){if(e3=St(e3),t2===void 0&&(t2=e3.currentTarget),t2){var n2=t2.ownerSVGElement||t2;if(n2.createSVGPoint){var r2=n2.createSVGPoint();return r2.x=e3.clientX,r2.y=e3.clientY,r2=r2.matrixTransform(t2.getScreenCTM().inverse()),[r2.x,r2.y]}if(t2.getBoundingClientRect){var i2=t2.getBoundingClientRect();return[e3.clientX-i2.left-t2.clientLeft,e3.clientY-i2.top-t2.clientTop]}}return[e3.pageX,e3.pageY]}var wt={capture:true,passive:false};function Tt(e3){e3.preventDefault(),e3.stopImmediatePropagation()}function Et(e3){var t2=e3.document.documentElement,n2=xt(e3).on("dragstart.drag",Tt,wt);"onselectstart"in t2?n2.on("selectstart.drag",Tt,wt):(t2.__noselect=t2.style.MozUserSelect,t2.style.MozUserSelect="none")}function Dt(e3,t2){var n2=e3.document.documentElement,r2=xt(e3).on("dragstart.drag",null);t2&&(r2.on("click.drag",Tt,wt),setTimeout(function(){r2.on("click.drag",null)},0)),"onselectstart"in n2?r2.on("selectstart.drag",null):(n2.style.MozUserSelect=n2.__noselect,delete n2.__noselect)}function Ot(e3,t2,n2){e3.prototype=t2.prototype=n2,n2.constructor=e3}function kt(e3,t2){var n2=Object.create(e3.prototype);for(var r2 in t2)n2[r2]=t2[r2];return n2}function At(){}var jt=.7,Mt=1/jt,Nt="\\s*([+-]?\\d+)\\s*",Pt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ft="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",It=/^#([0-9a-f]{3,8})$/,Lt=RegExp(`^rgb\\(${Nt},${Nt},${Nt}\\)$`),Rt=RegExp(`^rgb\\(${Ft},${Ft},${Ft}\\)$`),zt=RegExp(`^rgba\\(${Nt},${Nt},${Nt},${Pt}\\)$`),Bt=RegExp(`^rgba\\(${Ft},${Ft},${Ft},${Pt}\\)$`),Vt=RegExp(`^hsl\\(${Pt},${Ft},${Ft}\\)$`),Ht=RegExp(`^hsla\\(${Pt},${Ft},${Ft},${Pt}\\)$`),Ut={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};Ot(At,Jt,{copy(e3){return Object.assign(new this.constructor,this,e3)},displayable(){return this.rgb().displayable()},hex:Wt,formatHex:Wt,formatHex8:Gt,formatHsl:Kt,formatRgb:qt,toString:qt});function Wt(){return this.rgb().formatHex()}function Gt(){return this.rgb().formatHex8()}function Kt(){return cn(this).formatHsl()}function qt(){return this.rgb().formatRgb()}function Jt(e3){var t2,n2;return e3=(e3+"").trim().toLowerCase(),(t2=It.exec(e3))?(n2=t2[1].length,t2=parseInt(t2[1],16),n2===6?Yt(t2):n2===3?new $t(t2>>8&15|t2>>4&240,t2>>4&15|t2&240,(t2&15)<<4|t2&15,1):n2===8?Xt(t2>>24&255,t2>>16&255,t2>>8&255,(t2&255)/255):n2===4?Xt(t2>>12&15|t2>>8&240,t2>>8&15|t2>>4&240,t2>>4&15|t2&240,((t2&15)<<4|t2&15)/255):null):(t2=Lt.exec(e3))?new $t(t2[1],t2[2],t2[3],1):(t2=Rt.exec(e3))?new $t(t2[1]*255/100,t2[2]*255/100,t2[3]*255/100,1):(t2=zt.exec(e3))?Xt(t2[1],t2[2],t2[3],t2[4]):(t2=Bt.exec(e3))?Xt(t2[1]*255/100,t2[2]*255/100,t2[3]*255/100,t2[4]):(t2=Vt.exec(e3))?sn(t2[1],t2[2]/100,t2[3]/100,1):(t2=Ht.exec(e3))?sn(t2[1],t2[2]/100,t2[3]/100,t2[4]):Ut.hasOwnProperty(e3)?Yt(Ut[e3]):e3==="transparent"?new $t(NaN,NaN,NaN,0):null}function Yt(e3){return new $t(e3>>16&255,e3>>8&255,e3&255,1)}function Xt(e3,t2,n2,r2){return r2<=0&&(e3=t2=n2=NaN),new $t(e3,t2,n2,r2)}function Zt(e3){return e3 instanceof At||(e3=Jt(e3)),e3?(e3=e3.rgb(),new $t(e3.r,e3.g,e3.b,e3.opacity)):new $t}function Qt(e3,t2,n2,r2){return arguments.length===1?Zt(e3):new $t(e3,t2,n2,r2??1)}function $t(e3,t2,n2,r2){this.r=+e3,this.g=+t2,this.b=+n2,this.opacity=+r2}Ot($t,Qt,kt(At,{brighter(e3){return e3=e3==null?Mt:Mt**+e3,new $t(this.r*e3,this.g*e3,this.b*e3,this.opacity)},darker(e3){return e3=e3==null?jt:jt**+e3,new $t(this.r*e3,this.g*e3,this.b*e3,this.opacity)},rgb(){return this},clamp(){return new $t(an(this.r),an(this.g),an(this.b),rn(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:en,formatHex:en,formatHex8:tn,formatRgb:nn,toString:nn}));function en(){return`#${on(this.r)}${on(this.g)}${on(this.b)}`}function tn(){return`#${on(this.r)}${on(this.g)}${on(this.b)}${on((isNaN(this.opacity)?1:this.opacity)*255)}`}function nn(){let e3=rn(this.opacity);return`${e3===1?"rgb(":"rgba("}${an(this.r)}, ${an(this.g)}, ${an(this.b)}${e3===1?")":`, ${e3})`}`}function rn(e3){return isNaN(e3)?1:Math.max(0,Math.min(1,e3))}function an(e3){return Math.max(0,Math.min(255,Math.round(e3)||0))}function on(e3){return e3=an(e3),(e3<16?"0":"")+e3.toString(16)}function sn(e3,t2,n2,r2){return r2<=0?e3=t2=n2=NaN:n2<=0||n2>=1?e3=t2=NaN:t2<=0&&(e3=NaN),new un(e3,t2,n2,r2)}function cn(e3){if(e3 instanceof un)return new un(e3.h,e3.s,e3.l,e3.opacity);if(e3 instanceof At||(e3=Jt(e3)),!e3)return new un;if(e3 instanceof un)return e3;e3=e3.rgb();var t2=e3.r/255,n2=e3.g/255,r2=e3.b/255,i2=Math.min(t2,n2,r2),a2=Math.max(t2,n2,r2),o2=NaN,s2=a2-i2,c2=(a2+i2)/2;return s2?(o2=t2===a2?(n2-r2)/s2+(n2<r2)*6:n2===a2?(r2-t2)/s2+2:(t2-n2)/s2+4,s2/=c2<.5?a2+i2:2-a2-i2,o2*=60):s2=c2>0&&c2<1?0:o2,new un(o2,s2,c2,e3.opacity)}function ln(e3,t2,n2,r2){return arguments.length===1?cn(e3):new un(e3,t2,n2,r2??1)}function un(e3,t2,n2,r2){this.h=+e3,this.s=+t2,this.l=+n2,this.opacity=+r2}Ot(un,ln,kt(At,{brighter(e3){return e3=e3==null?Mt:Mt**+e3,new un(this.h,this.s,this.l*e3,this.opacity)},darker(e3){return e3=e3==null?jt:jt**+e3,new un(this.h,this.s,this.l*e3,this.opacity)},rgb(){var e3=this.h%360+(this.h<0)*360,t2=isNaN(e3)||isNaN(this.s)?0:this.s,n2=this.l,r2=n2+(n2<.5?n2:1-n2)*t2,i2=2*n2-r2;return new $t(pn(e3>=240?e3-240:e3+120,i2,r2),pn(e3,i2,r2),pn(e3<120?e3+240:e3-120,i2,r2),this.opacity)},clamp(){return new un(dn(this.h),fn(this.s),fn(this.l),rn(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 e3=rn(this.opacity);return`${e3===1?"hsl(":"hsla("}${dn(this.h)}, ${fn(this.s)*100}%, ${fn(this.l)*100}%${e3===1?")":`, ${e3})`}`}}));function dn(e3){return e3=(e3||0)%360,e3<0?e3+360:e3}function fn(e3){return Math.max(0,Math.min(1,e3||0))}function pn(e3,t2,n2){return(e3<60?t2+(n2-t2)*e3/60:e3<180?n2:e3<240?t2+(n2-t2)*(240-e3)/60:t2)*255}var mn=e3=>()=>e3;function hn(e3,t2){return function(n2){return e3+n2*t2}}function gn(e3,t2,n2){return e3**=+n2,t2=t2**+n2-e3,n2=1/n2,function(r2){return(e3+r2*t2)**+n2}}function _n(e3){return(e3=+e3)==1?vn:function(t2,n2){return n2-t2?gn(t2,n2,e3):mn(isNaN(t2)?n2:t2)}}function vn(e3,t2){var n2=t2-e3;return n2?hn(e3,n2):mn(isNaN(e3)?t2:e3)}var yn=(function e2(t2){var n2=_n(t2);function r2(e3,t3){var r3=n2((e3=Qt(e3)).r,(t3=Qt(t3)).r),i2=n2(e3.g,t3.g),a2=n2(e3.b,t3.b),o2=vn(e3.opacity,t3.opacity);return function(t4){return e3.r=r3(t4),e3.g=i2(t4),e3.b=a2(t4),e3.opacity=o2(t4),e3+""}}return r2.gamma=e2,r2})(1);function bn(e3,t2){t2||=[];var n2=e3?Math.min(t2.length,e3.length):0,r2=t2.slice(),i2;return function(a2){for(i2=0;i2<n2;++i2)r2[i2]=e3[i2]*(1-a2)+t2[i2]*a2;return r2}}function xn(e3){return ArrayBuffer.isView(e3)&&!(e3 instanceof DataView)}function Sn(e3,t2){for(var n2=t2?t2.length:0,r2=e3?Math.min(n2,e3.length):0,i2=Array(r2),a2=Array(n2),o2=0;o2<r2;++o2)i2[o2]=jn(e3[o2],t2[o2]);for(;o2<n2;++o2)a2[o2]=t2[o2];return function(e4){for(o2=0;o2<r2;++o2)a2[o2]=i2[o2](e4);return a2}}function Cn(e3,t2){var n2=new Date;return e3=+e3,t2=+t2,function(r2){return n2.setTime(e3*(1-r2)+t2*r2),n2}}function wn(e3,t2){return e3=+e3,t2=+t2,function(n2){return e3*(1-n2)+t2*n2}}function Tn(e3,t2){var n2={},r2={},i2;for(i2 in(typeof e3!="object"||!e3)&&(e3={}),(typeof t2!="object"||!t2)&&(t2={}),t2)i2 in e3?n2[i2]=jn(e3[i2],t2[i2]):r2[i2]=t2[i2];return function(e4){for(i2 in n2)r2[i2]=n2[i2](e4);return r2}}var En=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Dn=new RegExp(En.source,"g");function On(e3){return function(){return e3}}function kn(e3){return function(t2){return e3(t2)+""}}function An(e3,t2){var n2=En.lastIndex=Dn.lastIndex=0,r2,i2,a2,o2=-1,s2=[],c2=[];for(e3+="",t2+="";(r2=En.exec(e3))&&(i2=Dn.exec(t2));)(a2=i2.index)>n2&&(a2=t2.slice(n2,a2),s2[o2]?s2[o2]+=a2:s2[++o2]=a2),(r2=r2[0])===(i2=i2[0])?s2[o2]?s2[o2]+=i2:s2[++o2]=i2:(s2[++o2]=null,c2.push({i:o2,x:wn(r2,i2)})),n2=Dn.lastIndex;return n2<t2.length&&(a2=t2.slice(n2),s2[o2]?s2[o2]+=a2:s2[++o2]=a2),s2.length<2?c2[0]?kn(c2[0].x):On(t2):(t2=c2.length,function(e4){for(var n3=0,r3;n3<t2;++n3)s2[(r3=c2[n3]).i]=r3.x(e4);return s2.join("")})}function jn(e3,t2){var n2=typeof t2,r2;return t2==null||n2==="boolean"?mn(t2):(n2==="number"?wn:n2==="string"?(r2=Jt(t2))?(t2=r2,yn):An:t2 instanceof Jt?yn:t2 instanceof Date?Cn:xn(t2)?bn:Array.isArray(t2)?Sn:typeof t2.valueOf!="function"&&typeof t2.toString!="function"||isNaN(t2)?Tn:wn)(e3,t2)}function Mn(e3,t2){return e3=+e3,t2=+t2,function(n2){return Math.round(e3*(1-n2)+t2*n2)}}var Nn=180/Math.PI,Pn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Fn(e3,t2,n2,r2,i2,a2){var o2,s2,c2;return(o2=Math.sqrt(e3*e3+t2*t2))&&(e3/=o2,t2/=o2),(c2=e3*n2+t2*r2)&&(n2-=e3*c2,r2-=t2*c2),(s2=Math.sqrt(n2*n2+r2*r2))&&(n2/=s2,r2/=s2,c2/=s2),e3*r2<t2*n2&&(e3=-e3,t2=-t2,c2=-c2,o2=-o2),{translateX:i2,translateY:a2,rotate:Math.atan2(t2,e3)*Nn,skewX:Math.atan(c2)*Nn,scaleX:o2,scaleY:s2}}var In;function Ln(e3){let t2=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e3+"");return t2.isIdentity?Pn:Fn(t2.a,t2.b,t2.c,t2.d,t2.e,t2.f)}function Rn(e3){return e3==null||(In||=document.createElementNS("http://www.w3.org/2000/svg","g"),In.setAttribute("transform",e3),!(e3=In.transform.baseVal.consolidate()))?Pn:(e3=e3.matrix,Fn(e3.a,e3.b,e3.c,e3.d,e3.e,e3.f))}function zn(e3,t2,n2,r2){function i2(e4){return e4.length?e4.pop()+" ":""}function a2(e4,r3,i3,a3,o3,s3){if(e4!==i3||r3!==a3){var c3=o3.push("translate(",null,t2,null,n2);s3.push({i:c3-4,x:wn(e4,i3)},{i:c3-2,x:wn(r3,a3)})}else(i3||a3)&&o3.push("translate("+i3+t2+a3+n2)}function o2(e4,t3,n3,a3){e4===t3?t3&&n3.push(i2(n3)+"rotate("+t3+r2):(e4-t3>180?t3+=360:t3-e4>180&&(e4+=360),a3.push({i:n3.push(i2(n3)+"rotate(",null,r2)-2,x:wn(e4,t3)}))}function s2(e4,t3,n3,a3){e4===t3?t3&&n3.push(i2(n3)+"skewX("+t3+r2):a3.push({i:n3.push(i2(n3)+"skewX(",null,r2)-2,x:wn(e4,t3)})}function c2(e4,t3,n3,r3,a3,o3){if(e4!==n3||t3!==r3){var s3=a3.push(i2(a3)+"scale(",null,",",null,")");o3.push({i:s3-4,x:wn(e4,n3)},{i:s3-2,x:wn(t3,r3)})}else(n3!==1||r3!==1)&&a3.push(i2(a3)+"scale("+n3+","+r3+")")}return function(t3,n3){var r3=[],i3=[];return t3=e3(t3),n3=e3(n3),a2(t3.translateX,t3.translateY,n3.translateX,n3.translateY,r3,i3),o2(t3.rotate,n3.rotate,r3,i3),s2(t3.skewX,n3.skewX,r3,i3),c2(t3.scaleX,t3.scaleY,n3.scaleX,n3.scaleY,r3,i3),t3=n3=null,function(e4){for(var t4=-1,n4=i3.length,a3;++t4<n4;)r3[(a3=i3[t4]).i]=a3.x(e4);return r3.join("")}}}var Bn=zn(Ln,"px, ","px)","deg)"),Vn=zn(Rn,", ",")",")"),Hn=0,Un=0,Wn=0,Gn=1e3,Kn,qn,Jn=0,Yn=0,Xn=0,Zn=typeof performance=="object"&&performance.now?performance:Date,Qn=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e3){setTimeout(e3,17)};function $n(){return Yn||=(Qn(er),Zn.now()+Xn)}function er(){Yn=0}function tr(){this._call=this._time=this._next=null}tr.prototype=nr.prototype={constructor:tr,restart:function(e3,t2,n2){if(typeof e3!="function")throw TypeError("callback is not a function");n2=(n2==null?$n():+n2)+(t2==null?0:+t2),!this._next&&qn!==this&&(qn?qn._next=this:Kn=this,qn=this),this._call=e3,this._time=n2,sr()},stop:function(){this._call&&(this._call=null,this._time=Infinity,sr())}};function nr(e3,t2,n2){var r2=new tr;return r2.restart(e3,t2,n2),r2}function rr(){$n(),++Hn;for(var e3=Kn,t2;e3;)(t2=Yn-e3._time)>=0&&e3._call.call(void 0,t2),e3=e3._next;--Hn}function ir(){Yn=(Jn=Zn.now())+Xn,Hn=Un=0;try{rr()}finally{Hn=0,or(),Yn=0}}function ar(){var e3=Zn.now(),t2=e3-Jn;t2>Gn&&(Xn-=t2,Jn=e3)}function or(){for(var e3,t2=Kn,n2,r2=Infinity;t2;)t2._call?(r2>t2._time&&(r2=t2._time),e3=t2,t2=t2._next):(n2=t2._next,t2._next=null,t2=e3?e3._next=n2:Kn=n2);qn=e3,sr(r2)}function sr(e3){Hn||(Un&&=clearTimeout(Un),e3-Yn>24?(e3<Infinity&&(Un=setTimeout(ir,e3-Zn.now()-Xn)),Wn&&=clearInterval(Wn)):(Wn||=(Jn=Zn.now(),setInterval(ar,Gn)),Hn=1,Qn(ir)))}function cr(e3,t2,n2){var r2=new tr;return t2=t2==null?0:+t2,r2.restart(n3=>{r2.stop(),e3(n3+t2)},t2,n2),r2}var lr=h("start","end","cancel","interrupt"),ur=[];function dr(e3,t2,n2,r2,i2,a2){var o2=e3.__transition;if(!o2)e3.__transition={};else if(n2 in o2)return;hr(e3,n2,{name:t2,index:r2,group:i2,on:lr,tween:ur,time:a2.time,delay:a2.delay,duration:a2.duration,ease:a2.ease,timer:null,state:0})}function fr(e3,t2){var n2=mr(e3,t2);if(n2.state>0)throw Error("too late; already scheduled");return n2}function pr(e3,t2){var n2=mr(e3,t2);if(n2.state>3)throw Error("too late; already running");return n2}function mr(e3,t2){var n2=e3.__transition;if(!n2||!(n2=n2[t2]))throw Error("transition not found");return n2}function hr(e3,t2,n2){var r2=e3.__transition,i2;r2[t2]=n2,n2.timer=nr(a2,0,n2.time);function a2(e4){n2.state=1,n2.timer.restart(o2,n2.delay,n2.time),n2.delay<=e4&&o2(e4-n2.delay)}function o2(a3){var l2,u2,d2,f2;if(n2.state!==1)return c2();for(l2 in r2)if(f2=r2[l2],f2.name===n2.name){if(f2.state===3)return cr(o2);f2.state===4?(f2.state=6,f2.timer.stop(),f2.on.call("interrupt",e3,e3.__data__,f2.index,f2.group),delete r2[l2]):+l2<t2&&(f2.state=6,f2.timer.stop(),f2.on.call("cancel",e3,e3.__data__,f2.index,f2.group),delete r2[l2])}if(cr(function(){n2.state===3&&(n2.state=4,n2.timer.restart(s2,n2.delay,n2.time),s2(a3))}),n2.state=2,n2.on.call("start",e3,e3.__data__,n2.index,n2.group),n2.state===2){for(n2.state=3,i2=Array(d2=n2.tween.length),l2=0,u2=-1;l2<d2;++l2)(f2=n2.tween[l2].value.call(e3,e3.__data__,n2.index,n2.group))&&(i2[++u2]=f2);i2.length=u2+1}}function s2(t3){for(var r3=t3<n2.duration?n2.ease.call(null,t3/n2.duration):(n2.timer.restart(c2),n2.state=5,1),a3=-1,o3=i2.length;++a3<o3;)i2[a3].call(e3,r3);n2.state===5&&(n2.on.call("end",e3,e3.__data__,n2.index,n2.group),c2())}function c2(){for(var i3 in n2.state=6,n2.timer.stop(),delete r2[t2],r2)return;delete e3.__transition}}function gr(e3,t2){var n2=e3.__transition,r2,i2,a2=true,o2;if(n2){for(o2 in t2=t2==null?null:t2+"",n2){if((r2=n2[o2]).name!==t2){a2=false;continue}i2=r2.state>2&&r2.state<5,r2.state=6,r2.timer.stop(),r2.on.call(i2?"interrupt":"cancel",e3,e3.__data__,r2.index,r2.group),delete n2[o2]}a2&&delete e3.__transition}}function _r(e3){return this.each(function(){gr(this,e3)})}function vr(e3,t2){var n2,r2;return function(){var i2=pr(this,e3),a2=i2.tween;if(a2!==n2){r2=n2=a2;for(var o2=0,s2=r2.length;o2<s2;++o2)if(r2[o2].name===t2){r2=r2.slice(),r2.splice(o2,1);break}}i2.tween=r2}}function yr(e3,t2,n2){var r2,i2;if(typeof n2!="function")throw Error();return function(){var a2=pr(this,e3),o2=a2.tween;if(o2!==r2){i2=(r2=o2).slice();for(var s2={name:t2,value:n2},c2=0,l2=i2.length;c2<l2;++c2)if(i2[c2].name===t2){i2[c2]=s2;break}c2===l2&&i2.push(s2)}a2.tween=i2}}function br(e3,t2){var n2=this._id;if(e3+="",arguments.length<2){for(var r2=mr(this.node(),n2).tween,i2=0,a2=r2.length,o2;i2<a2;++i2)if((o2=r2[i2]).name===e3)return o2.value;return null}return this.each((t2==null?vr:yr)(n2,e3,t2))}function xr(e3,t2,n2){var r2=e3._id;return e3.each(function(){var e4=pr(this,r2);(e4.value||={})[t2]=n2.apply(this,arguments)}),function(e4){return mr(e4,r2).value[t2]}}function Sr(e3,t2){var n2;return(typeof t2=="number"?wn:t2 instanceof Jt?yn:(n2=Jt(t2))?(t2=n2,yn):An)(e3,t2)}function Cr(e3){return function(){this.removeAttribute(e3)}}function wr(e3){return function(){this.removeAttributeNS(e3.space,e3.local)}}function Tr(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=this.getAttribute(e3);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function Er(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=this.getAttributeNS(e3.space,e3.local);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function Dr(e3,t2,n2){var r2,i2,a2;return function(){var o2,s2=n2(this),c2;return s2==null?void this.removeAttribute(e3):(o2=this.getAttribute(e3),c2=s2+"",o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2)))}}function Or(e3,t2,n2){var r2,i2,a2;return function(){var o2,s2=n2(this),c2;return s2==null?void this.removeAttributeNS(e3.space,e3.local):(o2=this.getAttributeNS(e3.space,e3.local),c2=s2+"",o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2)))}}function kr(e3,t2){var n2=x(e3),r2=n2==="transform"?Vn:Sr;return this.attrTween(e3,typeof t2=="function"?(n2.local?Or:Dr)(n2,r2,xr(this,"attr."+e3,t2)):t2==null?(n2.local?wr:Cr)(n2):(n2.local?Er:Tr)(n2,r2,t2))}function Ar(e3,t2){return function(n2){this.setAttribute(e3,t2.call(this,n2))}}function jr(e3,t2){return function(n2){this.setAttributeNS(e3.space,e3.local,t2.call(this,n2))}}function Mr(e3,t2){var n2,r2;function i2(){var i3=t2.apply(this,arguments);return i3!==r2&&(n2=(r2=i3)&&jr(e3,i3)),n2}return i2._value=t2,i2}function Nr(e3,t2){var n2,r2;function i2(){var i3=t2.apply(this,arguments);return i3!==r2&&(n2=(r2=i3)&&Ar(e3,i3)),n2}return i2._value=t2,i2}function Pr(e3,t2){var n2="attr."+e3;if(arguments.length<2)return(n2=this.tween(n2))&&n2._value;if(t2==null)return this.tween(n2,null);if(typeof t2!="function")throw Error();var r2=x(e3);return this.tween(n2,(r2.local?Mr:Nr)(r2,t2))}function Fr(e3,t2){return function(){fr(this,e3).delay=+t2.apply(this,arguments)}}function Ir(e3,t2){return t2=+t2,function(){fr(this,e3).delay=t2}}function Lr(e3){var t2=this._id;return arguments.length?this.each((typeof e3=="function"?Fr:Ir)(t2,e3)):mr(this.node(),t2).delay}function Rr(e3,t2){return function(){pr(this,e3).duration=+t2.apply(this,arguments)}}function zr(e3,t2){return t2=+t2,function(){pr(this,e3).duration=t2}}function Br(e3){var t2=this._id;return arguments.length?this.each((typeof e3=="function"?Rr:zr)(t2,e3)):mr(this.node(),t2).duration}function Vr(e3,t2){if(typeof t2!="function")throw Error();return function(){pr(this,e3).ease=t2}}function Hr(e3){var t2=this._id;return arguments.length?this.each(Vr(t2,e3)):mr(this.node(),t2).ease}function Ur(e3,t2){return function(){var n2=t2.apply(this,arguments);if(typeof n2!="function")throw Error();pr(this,e3).ease=n2}}function Wr(e3){if(typeof e3!="function")throw Error();return this.each(Ur(this._id,e3))}function Gr(e3){typeof e3!="function"&&(e3=N(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=[],c2,l2=0;l2<o2;++l2)(c2=a2[l2])&&e3.call(c2,c2.__data__,l2,a2)&&s2.push(c2);return new bi(r2,this._parents,this._name,this._id)}function Kr(e3){if(e3._id!==this._id)throw Error();for(var t2=this._groups,n2=e3._groups,r2=t2.length,i2=n2.length,a2=Math.min(r2,i2),o2=Array(r2),s2=0;s2<a2;++s2)for(var c2=t2[s2],l2=n2[s2],u2=c2.length,d2=o2[s2]=Array(u2),f2,p2=0;p2<u2;++p2)(f2=c2[p2]||l2[p2])&&(d2[p2]=f2);for(;s2<r2;++s2)o2[s2]=t2[s2];return new bi(o2,this._parents,this._name,this._id)}function qr(e3){return(e3+"").trim().split(/^|\s+/).every(function(e4){var t2=e4.indexOf(".");return t2>=0&&(e4=e4.slice(0,t2)),!e4||e4==="start"})}function Jr(e3,t2,n2){var r2,i2,a2=qr(t2)?fr:pr;return function(){var o2=a2(this,e3),s2=o2.on;s2!==r2&&(i2=(r2=s2).copy()).on(t2,n2),o2.on=i2}}function Yr(e3,t2){var n2=this._id;return arguments.length<2?mr(this.node(),n2).on.on(e3):this.each(Jr(n2,e3,t2))}function Xr(e3){return function(){var t2=this.parentNode;for(var n2 in this.__transition)if(+n2!==e3)return;t2&&t2.removeChild(this)}}function Zr(){return this.on("end.remove",Xr(this._id))}function Qr(e3){var t2=this._name,n2=this._id;typeof e3!="function"&&(e3=E(e3));for(var r2=this._groups,i2=r2.length,a2=Array(i2),o2=0;o2<i2;++o2)for(var s2=r2[o2],c2=s2.length,l2=a2[o2]=Array(c2),u2,d2,f2=0;f2<c2;++f2)(u2=s2[f2])&&(d2=e3.call(u2,u2.__data__,f2,s2))&&("__data__"in u2&&(d2.__data__=u2.__data__),l2[f2]=d2,dr(l2[f2],t2,n2,f2,l2,mr(u2,n2)));return new bi(a2,this._parents,t2,n2)}function $r(e3){var t2=this._name,n2=this._id;typeof e3!="function"&&(e3=A(e3));for(var r2=this._groups,i2=r2.length,a2=[],o2=[],s2=0;s2<i2;++s2)for(var c2=r2[s2],l2=c2.length,u2,d2=0;d2<l2;++d2)if(u2=c2[d2]){for(var f2=e3.call(u2,u2.__data__,d2,c2),p2,m2=mr(u2,n2),h2=0,g2=f2.length;h2<g2;++h2)(p2=f2[h2])&&dr(p2,t2,n2,h2,f2,m2);a2.push(f2),o2.push(u2)}return new bi(a2,o2,t2,n2)}var ei=yt.prototype.constructor;function ti(){return new ei(this._groups,this._parents)}function ni(e3,t2){var n2,r2,i2;return function(){var a2=Ee(this,e3),o2=(this.style.removeProperty(e3),Ee(this,e3));return a2===o2?null:a2===n2&&o2===r2?i2:i2=t2(n2=a2,r2=o2)}}function ri(e3){return function(){this.style.removeProperty(e3)}}function ii(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=Ee(this,e3);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function ai(e3,t2,n2){var r2,i2,a2;return function(){var o2=Ee(this,e3),s2=n2(this),c2=s2+"";return s2??(c2=s2=(this.style.removeProperty(e3),Ee(this,e3))),o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2))}}function oi(e3,t2){var n2,r2,i2,a2="style."+t2,o2="end."+a2,s2;return function(){var c2=pr(this,e3),l2=c2.on,u2=c2.value[a2]==null?s2||=ri(t2):void 0;(l2!==n2||i2!==u2)&&(r2=(n2=l2).copy()).on(o2,i2=u2),c2.on=r2}}function si(e3,t2,n2){var r2=(e3+="")=="transform"?Bn:Sr;return t2==null?this.styleTween(e3,ni(e3,r2)).on("end.style."+e3,ri(e3)):typeof t2=="function"?this.styleTween(e3,ai(e3,r2,xr(this,"style."+e3,t2))).each(oi(this._id,e3)):this.styleTween(e3,ii(e3,r2,t2),n2).on("end.style."+e3,null)}function ci(e3,t2,n2){return function(r2){this.style.setProperty(e3,t2.call(this,r2),n2)}}function li(e3,t2,n2){var r2,i2;function a2(){var a3=t2.apply(this,arguments);return a3!==i2&&(r2=(i2=a3)&&ci(e3,a3,n2)),r2}return a2._value=t2,a2}function ui(e3,t2,n2){var r2="style."+(e3+="");if(arguments.length<2)return(r2=this.tween(r2))&&r2._value;if(t2==null)return this.tween(r2,null);if(typeof t2!="function")throw Error();return this.tween(r2,li(e3,t2,n2??""))}function di(e3){return function(){this.textContent=e3}}function fi(e3){return function(){var t2=e3(this);this.textContent=t2??""}}function pi(e3){return this.tween("text",typeof e3=="function"?fi(xr(this,"text",e3)):di(e3==null?"":e3+""))}function mi(e3){return function(t2){this.textContent=e3.call(this,t2)}}function hi(e3){var t2,n2;function r2(){var r3=e3.apply(this,arguments);return r3!==n2&&(t2=(n2=r3)&&mi(r3)),t2}return r2._value=e3,r2}function gi(e3){var t2="text";if(arguments.length<1)return(t2=this.tween(t2))&&t2._value;if(e3==null)return this.tween(t2,null);if(typeof e3!="function")throw Error();return this.tween(t2,hi(e3))}function _i(){for(var e3=this._name,t2=this._id,n2=xi(),r2=this._groups,i2=r2.length,a2=0;a2<i2;++a2)for(var o2=r2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)if(c2=o2[l2]){var u2=mr(c2,t2);dr(c2,e3,n2,l2,o2,{time:u2.time+u2.delay+u2.duration,delay:0,duration:u2.duration,ease:u2.ease})}return new bi(r2,this._parents,e3,n2)}function vi(){var e3,t2,n2=this,r2=n2._id,i2=n2.size();return new Promise(function(a2,o2){var s2={value:o2},c2={value:function(){--i2===0&&a2()}};n2.each(function(){var n3=pr(this,r2),i3=n3.on;i3!==e3&&(t2=(e3=i3).copy(),t2._.cancel.push(s2),t2._.interrupt.push(s2),t2._.end.push(c2)),n3.on=t2}),i2===0&&a2()})}var yi=0;function bi(e3,t2,n2,r2){this._groups=e3,this._parents=t2,this._name=n2,this._id=r2}function xi(){return++yi}var Si=yt.prototype;bi.prototype={constructor:bi,select:Qr,selectAll:$r,selectChild:Si.selectChild,selectChildren:Si.selectChildren,filter:Gr,merge:Kr,selection:ti,transition:_i,call:Si.call,nodes:Si.nodes,node:Si.node,size:Si.size,empty:Si.empty,each:Si.each,on:Yr,attr:kr,attrTween:Pr,style:si,styleTween:ui,text:pi,textTween:gi,remove:Zr,tween:br,delay:Lr,duration:Br,ease:Hr,easeVarying:Wr,end:vi,[Symbol.iterator]:Si[Symbol.iterator]};function Ci(e3){return((e3*=2)<=1?e3*e3*e3:(e3-=2)*e3*e3+2)/2}var wi={time:null,delay:0,duration:250,ease:Ci};function Ti(e3,t2){for(var n2;!(n2=e3.__transition)||!(n2=n2[t2]);)if(!(e3=e3.parentNode))throw Error(`transition ${t2} not found`);return n2}function Ei(e3){var t2,n2;e3 instanceof bi?(t2=e3._id,e3=e3._name):(t2=xi(),(n2=wi).time=$n(),e3=e3==null?null:e3+"");for(var r2=this._groups,i2=r2.length,a2=0;a2<i2;++a2)for(var o2=r2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)(c2=o2[l2])&&dr(c2,e3,t2,l2,o2,n2||Ti(c2,t2));return new bi(r2,this._parents,e3,t2)}yt.prototype.interrupt=_r,yt.prototype.transition=Ei;var Di=e3=>()=>e3;function Oi(e3,{sourceEvent:t2,target:n2,selection:r2,mode:i2,dispatch:a2}){Object.defineProperties(this,{type:{value:e3,enumerable:true,configurable:true},sourceEvent:{value:t2,enumerable:true,configurable:true},target:{value:n2,enumerable:true,configurable:true},selection:{value:r2,enumerable:true,configurable:true},mode:{value:i2,enumerable:true,configurable:true},_:{value:a2}})}function ki(e3){e3.stopImmediatePropagation()}function Ai(e3){e3.preventDefault(),e3.stopImmediatePropagation()}var ji={name:"drag"},Mi={name:"space"},Ni={name:"handle"},Pi={name:"center"},{abs:Fi,max:Ii,min:Li}=Math;function Ri(e3){return[+e3[0],+e3[1]]}function zi(e3){return[Ri(e3[0]),Ri(e3[1])]}var Bi={name:"x",handles:["w","e"].map(qi),input:function(e3,t2){return e3==null?null:[[+e3[0],t2[0][1]],[+e3[1],t2[1][1]]]},output:function(e3){return e3&&[e3[0][0],e3[1][0]]}},Vi={name:"y",handles:["n","s"].map(qi),input:function(e3,t2){return e3==null?null:[[t2[0][0],+e3[0]],[t2[1][0],+e3[1]]]},output:function(e3){return e3&&[e3[0][1],e3[1][1]]}};["n","w","e","s","nw","ne","sw","se"].map(qi);var Hi={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Ui={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Wi={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Gi={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Ki={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function qi(e3){return{type:e3}}function Ji(e3){return!e3.ctrlKey&&!e3.button}function Yi(){var e3=this.ownerSVGElement||this;return e3.hasAttribute("viewBox")?(e3=e3.viewBox.baseVal,[[e3.x,e3.y],[e3.x+e3.width,e3.y+e3.height]]):[[0,0],[e3.width.baseVal.value,e3.height.baseVal.value]]}function Xi(){return navigator.maxTouchPoints||"ontouchstart"in this}function Zi(e3){for(;!e3.__brush;)if(!(e3=e3.parentNode))return;return e3.__brush}function Qi(e3){return e3[0][0]===e3[1][0]||e3[0][1]===e3[1][1]}function $i(){return ea(Bi)}function ea(e3){var t2=Yi,n2=Ji,r2=Xi,i2=true,a2=h("start","brush","end"),o2=6,s2;function c2(t3){var n3=t3.property("__brush",g2).selectAll(".overlay").data([qi("overlay")]);n3.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Hi.overlay).merge(n3).each(function(){var e4=Zi(this).extent;xt(this).attr("x",e4[0][0]).attr("y",e4[0][1]).attr("width",e4[1][0]-e4[0][0]).attr("height",e4[1][1]-e4[0][1])}),t3.selectAll(".selection").data([qi("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Hi.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i3=t3.selectAll(".handle").data(e3.handles,function(e4){return e4.type});i3.exit().remove(),i3.enter().append("rect").attr("class",function(e4){return"handle handle--"+e4.type}).attr("cursor",function(e4){return Hi[e4.type]}),t3.each(l2).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",f2).filter(r2).on("touchstart.brush",f2).on("touchmove.brush",p2).on("touchend.brush touchcancel.brush",m2).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}c2.move=function(t3,n3,r3){t3.tween?t3.on("start.brush",function(e4){u2(this,arguments).beforestart().start(e4)}).on("interrupt.brush end.brush",function(e4){u2(this,arguments).end(e4)}).tween("brush",function(){var t4=this,r4=t4.__brush,i3=u2(t4,arguments),a3=r4.selection,o3=e3.input(typeof n3=="function"?n3.apply(this,arguments):n3,r4.extent),s3=jn(a3,o3);function c3(e4){r4.selection=e4===1&&o3===null?null:s3(e4),l2.call(t4),i3.brush()}return a3!==null&&o3!==null?c3:c3(1)}):t3.each(function(){var t4=this,i3=arguments,a3=t4.__brush,o3=e3.input(typeof n3=="function"?n3.apply(t4,i3):n3,a3.extent),s3=u2(t4,i3).beforestart();gr(t4),a3.selection=o3===null?null:o3,l2.call(t4),s3.start(r3).brush(r3).end(r3)})},c2.clear=function(e4,t3){c2.move(e4,null,t3)};function l2(){var e4=xt(this),t3=Zi(this).selection;t3?(e4.selectAll(".selection").style("display",null).attr("x",t3[0][0]).attr("y",t3[0][1]).attr("width",t3[1][0]-t3[0][0]).attr("height",t3[1][1]-t3[0][1]),e4.selectAll(".handle").style("display",null).attr("x",function(e5){return e5.type[e5.type.length-1]==="e"?t3[1][0]-o2/2:t3[0][0]-o2/2}).attr("y",function(e5){return e5.type[0]==="s"?t3[1][1]-o2/2:t3[0][1]-o2/2}).attr("width",function(e5){return e5.type==="n"||e5.type==="s"?t3[1][0]-t3[0][0]+o2:o2}).attr("height",function(e5){return e5.type==="e"||e5.type==="w"?t3[1][1]-t3[0][1]+o2:o2})):e4.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u2(e4,t3,n3){var r3=e4.__brush.emitter;return r3&&(!n3||!r3.clean)?r3:new d2(e4,t3,n3)}function d2(e4,t3,n3){this.that=e4,this.args=t3,this.state=e4.__brush,this.active=0,this.clean=n3}d2.prototype={beforestart:function(){return++this.active===1&&(this.state.emitter=this,this.starting=true),this},start:function(e4,t3){return this.starting?(this.starting=false,this.emit("start",e4,t3)):this.emit("brush",e4),this},brush:function(e4,t3){return this.emit("brush",e4,t3),this},end:function(e4,t3){return--this.active===0&&(delete this.state.emitter,this.emit("end",e4,t3)),this},emit:function(t3,n3,r3){var i3=xt(this.that).datum();a2.call(t3,this.that,new Oi(t3,{sourceEvent:n3,target:c2,selection:e3.output(this.state.selection),mode:r3,dispatch:a2}),i3)}};function f2(t3){if(s2&&!t3.touches||!n2.apply(this,arguments))return;var r3=this,a3=t3.target.__data__.type,o3=(i2&&t3.metaKey?a3="overlay":a3)==="selection"?ji:i2&&t3.altKey?Pi:Ni,c3=e3===Vi?null:Gi[a3],d3=e3===Bi?null:Ki[a3],f3=Zi(r3),p3=f3.extent,m3=f3.selection,h2=p3[0][0],g3,_2,v2=p3[0][1],y2,b2,x2=p3[1][0],S2,C2,w2=p3[1][1],T2,E2,D2=0,O2=0,k2,A2=c3&&d3&&i2&&t3.shiftKey,j2,M2,N2=Array.from(t3.touches||[t3],e4=>{let t4=e4.identifier;return e4=Ct(e4,r3),e4.point0=e4.slice(),e4.identifier=t4,e4});gr(r3);var P2=u2(r3,arguments,true).beforestart();if(a3==="overlay"){m3&&(k2=true);let n3=[N2[0],N2[1]||N2[0]];f3.selection=m3=[[g3=e3===Vi?h2:Li(n3[0][0],n3[1][0]),y2=e3===Bi?v2:Li(n3[0][1],n3[1][1])],[S2=e3===Vi?x2:Ii(n3[0][0],n3[1][0]),T2=e3===Bi?w2:Ii(n3[0][1],n3[1][1])]],N2.length>1&&R2(t3)}else g3=m3[0][0],y2=m3[0][1],S2=m3[1][0],T2=m3[1][1];_2=g3,b2=y2,C2=S2,E2=T2;var F2=xt(r3).attr("pointer-events","none"),I2=F2.selectAll(".overlay").attr("cursor",Hi[a3]);if(t3.touches)P2.moved=ee2,P2.ended=z2;else{var L2=xt(t3.view).on("mousemove.brush",ee2,true).on("mouseup.brush",z2,true);i2&&L2.on("keydown.brush",B2,true).on("keyup.brush",V2,true),Et(t3.view)}l2.call(r3),P2.start(t3,o3.name);function ee2(e4){for(let t4 of e4.changedTouches||[e4])for(let e5 of N2)e5.identifier===t4.identifier&&(e5.cur=Ct(t4,r3));if(A2&&!j2&&!M2&&N2.length===1){let e5=N2[0];Fi(e5.cur[0]-e5[0])>Fi(e5.cur[1]-e5[1])?M2=true:j2=true}for(let e5 of N2)e5.cur&&(e5[0]=e5.cur[0],e5[1]=e5.cur[1]);k2=true,Ai(e4),R2(e4)}function R2(e4){let t4=N2[0],n3=t4.point0;var i3;switch(D2=t4[0]-n3[0],O2=t4[1]-n3[1],o3){case Mi:case ji:c3&&(D2=Ii(h2-g3,Li(x2-S2,D2)),_2=g3+D2,C2=S2+D2),d3&&(O2=Ii(v2-y2,Li(w2-T2,O2)),b2=y2+O2,E2=T2+O2);break;case Ni:N2[1]?(c3&&=(_2=Ii(h2,Li(x2,N2[0][0])),C2=Ii(h2,Li(x2,N2[1][0])),1),d3&&=(b2=Ii(v2,Li(w2,N2[0][1])),E2=Ii(v2,Li(w2,N2[1][1])),1)):(c3<0?(D2=Ii(h2-g3,Li(x2-g3,D2)),_2=g3+D2,C2=S2):c3>0&&(D2=Ii(h2-S2,Li(x2-S2,D2)),_2=g3,C2=S2+D2),d3<0?(O2=Ii(v2-y2,Li(w2-y2,O2)),b2=y2+O2,E2=T2):d3>0&&(O2=Ii(v2-T2,Li(w2-T2,O2)),b2=y2,E2=T2+O2));break;case Pi:c3&&(_2=Ii(h2,Li(x2,g3-D2*c3)),C2=Ii(h2,Li(x2,S2+D2*c3))),d3&&(b2=Ii(v2,Li(w2,y2-O2*d3)),E2=Ii(v2,Li(w2,T2+O2*d3)))}C2<_2&&(c3*=-1,i3=g3,g3=S2,S2=i3,i3=_2,_2=C2,C2=i3,a3 in Ui&&I2.attr("cursor",Hi[a3=Ui[a3]])),E2<b2&&(d3*=-1,i3=y2,y2=T2,T2=i3,i3=b2,b2=E2,E2=i3,a3 in Wi&&I2.attr("cursor",Hi[a3=Wi[a3]])),f3.selection&&(m3=f3.selection),j2&&(_2=m3[0][0],C2=m3[1][0]),M2&&(b2=m3[0][1],E2=m3[1][1]),(m3[0][0]!==_2||m3[0][1]!==b2||m3[1][0]!==C2||m3[1][1]!==E2)&&(f3.selection=[[_2,b2],[C2,E2]],l2.call(r3),P2.brush(e4,o3.name))}function z2(e4){if(ki(e4),e4.touches){if(e4.touches.length)return;s2&&clearTimeout(s2),s2=setTimeout(function(){s2=null},500)}else Dt(e4.view,k2),L2.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);F2.attr("pointer-events","all"),I2.attr("cursor",Hi.overlay),f3.selection&&(m3=f3.selection),Qi(m3)&&(f3.selection=null,l2.call(r3)),P2.end(e4,o3.name)}function B2(e4){switch(e4.keyCode){case 16:A2=c3&&d3;break;case 18:o3===Ni&&(c3&&(S2=C2-D2*c3,g3=_2+D2*c3),d3&&(T2=E2-O2*d3,y2=b2+O2*d3),o3=Pi,R2(e4));break;case 32:(o3===Ni||o3===Pi)&&(c3<0?S2=C2-D2:c3>0&&(g3=_2-D2),d3<0?T2=E2-O2:d3>0&&(y2=b2-O2),o3=Mi,I2.attr("cursor",Hi.selection),R2(e4));break;default:return}Ai(e4)}function V2(e4){switch(e4.keyCode){case 16:A2&&(j2=M2=A2=false,R2(e4));break;case 18:o3===Pi&&(c3<0?S2=C2:c3>0&&(g3=_2),d3<0?T2=E2:d3>0&&(y2=b2),o3=Ni,R2(e4));break;case 32:o3===Mi&&(e4.altKey?(c3&&(S2=C2-D2*c3,g3=_2+D2*c3),d3&&(T2=E2-O2*d3,y2=b2+O2*d3),o3=Pi):(c3<0?S2=C2:c3>0&&(g3=_2),d3<0?T2=E2:d3>0&&(y2=b2),o3=Ni),I2.attr("cursor",Hi[a3]),R2(e4));break;default:return}Ai(e4)}}function p2(e4){u2(this,arguments).moved(e4)}function m2(e4){u2(this,arguments).ended(e4)}function g2(){var n3=this.__brush||{selection:null};return n3.extent=zi(t2.apply(this,arguments)),n3.dim=e3,n3}return c2.extent=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Di(zi(e4)),c2):t2},c2.filter=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Di(!!e4),c2):n2},c2.touchable=function(e4){return arguments.length?(r2=typeof e4=="function"?e4:Di(!!e4),c2):r2},c2.handleSize=function(e4){return arguments.length?(o2=+e4,c2):o2},c2.keyModifiers=function(e4){return arguments.length?(i2=!!e4,c2):i2},c2.on=function(){var e4=a2.on.apply(a2,arguments);return e4===a2?c2:e4},c2}function Z(e3){return function(){return e3}}var ta=Math.abs,na=Math.atan2,ra=Math.cos,ia=Math.max,aa=Math.min,oa=Math.sin,sa=Math.sqrt,ca=Math.PI,la=ca/2,ua=2*ca;function da(e3){return e3>1?0:e3<-1?ca:Math.acos(e3)}function fa(e3){return e3>=1?la:e3<=-1?-la:Math.asin(e3)}var pa=Math.PI,ma=2*pa,ha=1e-6,ga=ma-ha;function _a(e3){this._+=e3[0];for(let t2=1,n2=e3.length;t2<n2;++t2)this._+=arguments[t2]+e3[t2]}function va(e3){let t2=Math.floor(e3);if(!(t2>=0))throw Error(`invalid digits: ${e3}`);if(t2>15)return _a;let n2=10**t2;return function(e4){this._+=e4[0];for(let t3=1,r2=e4.length;t3<r2;++t3)this._+=Math.round(arguments[t3]*n2)/n2+e4[t3]}}var ya=class{constructor(e3){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e3==null?_a:va(e3)}moveTo(e3,t2){this._append`M${this._x0=this._x1=+e3},${this._y0=this._y1=+t2}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e3,t2){this._append`L${this._x1=+e3},${this._y1=+t2}`}quadraticCurveTo(e3,t2,n2,r2){this._append`Q${+e3},${+t2},${this._x1=+n2},${this._y1=+r2}`}bezierCurveTo(e3,t2,n2,r2,i2,a2){this._append`C${+e3},${+t2},${+n2},${+r2},${this._x1=+i2},${this._y1=+a2}`}arcTo(e3,t2,n2,r2,i2){if(e3=+e3,t2=+t2,n2=+n2,r2=+r2,i2=+i2,i2<0)throw Error(`negative radius: ${i2}`);let a2=this._x1,o2=this._y1,s2=n2-e3,c2=r2-t2,l2=a2-e3,u2=o2-t2,d2=l2*l2+u2*u2;if(this._x1===null)this._append`M${this._x1=e3},${this._y1=t2}`;else if(d2>ha){if(!(Math.abs(u2*s2-c2*l2)>ha)||!i2)this._append`L${this._x1=e3},${this._y1=t2}`;else{let f2=n2-a2,p2=r2-o2,m2=s2*s2+c2*c2,h2=f2*f2+p2*p2,g2=Math.sqrt(m2),_2=Math.sqrt(d2),v2=i2*Math.tan((pa-Math.acos((m2+d2-h2)/(2*g2*_2)))/2),y2=v2/_2,b2=v2/g2;Math.abs(y2-1)>ha&&this._append`L${e3+y2*l2},${t2+y2*u2}`,this._append`A${i2},${i2},0,0,${+(u2*f2>l2*p2)},${this._x1=e3+b2*s2},${this._y1=t2+b2*c2}`}}}arc(e3,t2,n2,r2,i2,a2){if(e3=+e3,t2=+t2,n2=+n2,a2=!!a2,n2<0)throw Error(`negative radius: ${n2}`);let o2=n2*Math.cos(r2),s2=n2*Math.sin(r2),c2=e3+o2,l2=t2+s2,u2=1^a2,d2=a2?r2-i2:i2-r2;this._x1===null?this._append`M${c2},${l2}`:(Math.abs(this._x1-c2)>ha||Math.abs(this._y1-l2)>ha)&&this._append`L${c2},${l2}`,n2&&(d2<0&&(d2=d2%ma+ma),d2>ga?this._append`A${n2},${n2},0,1,${u2},${e3-o2},${t2-s2}A${n2},${n2},0,1,${u2},${this._x1=c2},${this._y1=l2}`:d2>ha&&this._append`A${n2},${n2},0,${+(d2>=pa)},${u2},${this._x1=e3+n2*Math.cos(i2)},${this._y1=t2+n2*Math.sin(i2)}`)}rect(e3,t2,n2,r2){this._append`M${this._x0=this._x1=+e3},${this._y0=this._y1=+t2}h${n2=+n2}v${+r2}h${-n2}Z`}toString(){return this._}};ya.prototype;function ba(e3){let t2=3;return e3.digits=function(n2){if(!arguments.length)return t2;if(n2==null)t2=null;else{let e4=Math.floor(n2);if(!(e4>=0))throw RangeError(`invalid digits: ${n2}`);t2=e4}return e3},()=>new ya(t2)}function xa(e3){return e3.innerRadius}function Sa(e3){return e3.outerRadius}function Ca(e3){return e3.startAngle}function wa(e3){return e3.endAngle}function Ta(e3){return e3&&e3.padAngle}function Ea(e3,t2,n2,r2,i2,a2,o2,s2){var c2=n2-e3,l2=r2-t2,u2=o2-i2,d2=s2-a2,f2=d2*c2-u2*l2;if(!(f2*f2<1e-12))return f2=(u2*(t2-a2)-d2*(e3-i2))/f2,[e3+f2*c2,t2+f2*l2]}function Da(e3,t2,n2,r2,i2,a2,o2){var s2=e3-n2,c2=t2-r2,l2=(o2?a2:-a2)/sa(s2*s2+c2*c2),u2=l2*c2,d2=-l2*s2,f2=e3+u2,p2=t2+d2,m2=n2+u2,h2=r2+d2,g2=(f2+m2)/2,_2=(p2+h2)/2,v2=m2-f2,y2=h2-p2,b2=v2*v2+y2*y2,x2=i2-a2,S2=f2*h2-m2*p2,C2=(y2<0?-1:1)*sa(ia(0,x2*x2*b2-S2*S2)),w2=(S2*y2-v2*C2)/b2,T2=(-S2*v2-y2*C2)/b2,E2=(S2*y2+v2*C2)/b2,D2=(-S2*v2+y2*C2)/b2,O2=w2-g2,k2=T2-_2,A2=E2-g2,j2=D2-_2;return O2*O2+k2*k2>A2*A2+j2*j2&&(w2=E2,T2=D2),{cx:w2,cy:T2,x01:-u2,y01:-d2,x11:w2*(i2/x2-1),y11:T2*(i2/x2-1)}}function Oa(){var e3=xa,t2=Sa,n2=Z(0),r2=null,i2=Ca,a2=wa,o2=Ta,s2=null,c2=ba(l2);function l2(){var l3,u2,d2=+e3.apply(this,arguments),f2=+t2.apply(this,arguments),p2=i2.apply(this,arguments)-la,m2=a2.apply(this,arguments)-la,h2=ta(m2-p2),g2=m2>p2;if(s2||=l3=c2(),f2<d2&&(u2=f2,f2=d2,d2=u2),!(f2>1e-12))s2.moveTo(0,0);else if(h2>ua-1e-12)s2.moveTo(f2*ra(p2),f2*oa(p2)),s2.arc(0,0,f2,p2,m2,!g2),d2>1e-12&&(s2.moveTo(d2*ra(m2),d2*oa(m2)),s2.arc(0,0,d2,m2,p2,g2));else{var _2=p2,v2=m2,y2=p2,b2=m2,x2=h2,S2=h2,C2=o2.apply(this,arguments)/2,w2=C2>1e-12&&(r2?+r2.apply(this,arguments):sa(d2*d2+f2*f2)),T2=aa(ta(f2-d2)/2,+n2.apply(this,arguments)),E2=T2,D2=T2,O2,k2;if(w2>1e-12){var A2=fa(w2/d2*oa(C2)),j2=fa(w2/f2*oa(C2));(x2-=A2*2)>1e-12?(A2*=g2?1:-1,y2+=A2,b2-=A2):(x2=0,y2=b2=(p2+m2)/2),(S2-=j2*2)>1e-12?(j2*=g2?1:-1,_2+=j2,v2-=j2):(S2=0,_2=v2=(p2+m2)/2)}var M2=f2*ra(_2),N2=f2*oa(_2),P2=d2*ra(b2),F2=d2*oa(b2);if(T2>1e-12){var I2=f2*ra(v2),L2=f2*oa(v2),ee2=d2*ra(y2),R2=d2*oa(y2),z2;if(h2<ca){if(z2=Ea(M2,N2,ee2,R2,I2,L2,P2,F2)){var B2=M2-z2[0],V2=N2-z2[1],H2=I2-z2[0],U2=L2-z2[1],W2=1/oa(da((B2*H2+V2*U2)/(sa(B2*B2+V2*V2)*sa(H2*H2+U2*U2)))/2),G2=sa(z2[0]*z2[0]+z2[1]*z2[1]);E2=aa(T2,(d2-G2)/(W2-1)),D2=aa(T2,(f2-G2)/(W2+1))}else E2=D2=0}}S2>1e-12?D2>1e-12?(O2=Da(ee2,R2,M2,N2,f2,D2,g2),k2=Da(I2,L2,P2,F2,f2,D2,g2),s2.moveTo(O2.cx+O2.x01,O2.cy+O2.y01),D2<T2?s2.arc(O2.cx,O2.cy,D2,na(O2.y01,O2.x01),na(k2.y01,k2.x01),!g2):(s2.arc(O2.cx,O2.cy,D2,na(O2.y01,O2.x01),na(O2.y11,O2.x11),!g2),s2.arc(0,0,f2,na(O2.cy+O2.y11,O2.cx+O2.x11),na(k2.cy+k2.y11,k2.cx+k2.x11),!g2),s2.arc(k2.cx,k2.cy,D2,na(k2.y11,k2.x11),na(k2.y01,k2.x01),!g2))):(s2.moveTo(M2,N2),s2.arc(0,0,f2,_2,v2,!g2)):s2.moveTo(M2,N2),!(d2>1e-12)||!(x2>1e-12)?s2.lineTo(P2,F2):E2>1e-12?(O2=Da(P2,F2,I2,L2,d2,-E2,g2),k2=Da(M2,N2,ee2,R2,d2,-E2,g2),s2.lineTo(O2.cx+O2.x01,O2.cy+O2.y01),E2<T2?s2.arc(O2.cx,O2.cy,E2,na(O2.y01,O2.x01),na(k2.y01,k2.x01),!g2):(s2.arc(O2.cx,O2.cy,E2,na(O2.y01,O2.x01),na(O2.y11,O2.x11),!g2),s2.arc(0,0,d2,na(O2.cy+O2.y11,O2.cx+O2.x11),na(k2.cy+k2.y11,k2.cx+k2.x11),g2),s2.arc(k2.cx,k2.cy,E2,na(k2.y11,k2.x11),na(k2.y01,k2.x01),!g2))):s2.arc(0,0,d2,b2,y2,g2)}if(s2.closePath(),l3)return s2=null,l3+""||null}return l2.centroid=function(){var n3=(+e3.apply(this,arguments)+ +t2.apply(this,arguments))/2,r3=(+i2.apply(this,arguments)+ +a2.apply(this,arguments))/2-ca/2;return[ra(r3)*n3,oa(r3)*n3]},l2.innerRadius=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),l2):e3},l2.outerRadius=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),l2):t2},l2.cornerRadius=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Z(+e4),l2):n2},l2.padRadius=function(e4){return arguments.length?(r2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):r2},l2.startAngle=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(+e4),l2):i2},l2.endAngle=function(e4){return arguments.length?(a2=typeof e4=="function"?e4:Z(+e4),l2):a2},l2.padAngle=function(e4){return arguments.length?(o2=typeof e4=="function"?e4:Z(+e4),l2):o2},l2.context=function(e4){return arguments.length?(s2=e4??null,l2):s2},l2}Array.prototype.slice;function ka(e3){return typeof e3=="object"&&"length"in e3?e3:Array.from(e3)}function Aa(e3){this._context=e3}Aa.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(e3,t2){switch(e3=+e3,t2=+t2,this._point){case 0:this._point=1,this._line?this._context.lineTo(e3,t2):this._context.moveTo(e3,t2);break;case 1:this._point=2;default:this._context.lineTo(e3,t2)}}};function ja(e3){return new Aa(e3)}function Ma(e3){return e3[0]}function Na(e3){return e3[1]}function Pa(e3,t2){var n2=Z(true),r2=null,i2=ja,a2=null,o2=ba(s2);e3=typeof e3=="function"?e3:e3===void 0?Ma:Z(e3),t2=typeof t2=="function"?t2:t2===void 0?Na:Z(t2);function s2(s3){var c2,l2=(s3=ka(s3)).length,u2,d2=false,f2;for(r2??(a2=i2(f2=o2())),c2=0;c2<=l2;++c2)!(c2<l2&&n2(u2=s3[c2],c2,s3))===d2&&((d2=!d2)?a2.lineStart():a2.lineEnd()),d2&&a2.point(+e3(u2,c2,s3),+t2(u2,c2,s3));if(f2)return a2=null,f2+""||null}return s2.x=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),s2):e3},s2.y=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),s2):t2},s2.defined=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Z(!!e4),s2):n2},s2.curve=function(e4){return arguments.length?(i2=e4,r2!=null&&(a2=i2(r2)),s2):i2},s2.context=function(e4){return arguments.length?(e4==null?r2=a2=null:a2=i2(r2=e4),s2):r2},s2}function Fa(e3,t2,n2){var r2=null,i2=Z(true),a2=null,o2=ja,s2=null,c2=ba(l2);e3=typeof e3=="function"?e3:e3===void 0?Ma:Z(+e3),t2=typeof t2=="function"?t2:Z(t2===void 0?0:+t2),n2=typeof n2=="function"?n2:n2===void 0?Na:Z(+n2);function l2(l3){var u3,d2,f2,p2=(l3=ka(l3)).length,m2,h2=false,g2,_2=Array(p2),v2=Array(p2);for(a2??(s2=o2(g2=c2())),u3=0;u3<=p2;++u3){if(!(u3<p2&&i2(m2=l3[u3],u3,l3))===h2){if(h2=!h2)d2=u3,s2.areaStart(),s2.lineStart();else{for(s2.lineEnd(),s2.lineStart(),f2=u3-1;f2>=d2;--f2)s2.point(_2[f2],v2[f2]);s2.lineEnd(),s2.areaEnd()}}h2&&(_2[u3]=+e3(m2,u3,l3),v2[u3]=+t2(m2,u3,l3),s2.point(r2?+r2(m2,u3,l3):_2[u3],n2?+n2(m2,u3,l3):v2[u3]))}if(g2)return s2=null,g2+""||null}function u2(){return Pa().defined(i2).curve(o2).context(a2)}return l2.x=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),r2=null,l2):e3},l2.x0=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),l2):e3},l2.x1=function(e4){return arguments.length?(r2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):r2},l2.y=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),n2=null,l2):t2},l2.y0=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),l2):t2},l2.y1=function(e4){return arguments.length?(n2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):n2},l2.lineX0=l2.lineY0=function(){return u2().x(e3).y(t2)},l2.lineY1=function(){return u2().x(e3).y(n2)},l2.lineX1=function(){return u2().x(r2).y(t2)},l2.defined=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(!!e4),l2):i2},l2.curve=function(e4){return arguments.length?(o2=e4,a2!=null&&(s2=o2(a2)),l2):o2},l2.context=function(e4){return arguments.length?(e4==null?a2=s2=null:s2=o2(a2=e4),l2):a2},l2}function Ia(e3,t2){return t2<e3?-1:t2>e3?1:t2>=e3?0:NaN}function La(e3){return e3}function Ra(){var e3=La,t2=Ia,n2=null,r2=Z(0),i2=Z(ua),a2=Z(0);function o2(o3){var s2,c2=(o3=ka(o3)).length,l2,u2,d2=0,f2=Array(c2),p2=Array(c2),m2=+r2.apply(this,arguments),h2=Math.min(ua,Math.max(-ua,i2.apply(this,arguments)-m2)),g2,_2=Math.min(Math.abs(h2)/c2,a2.apply(this,arguments)),v2=_2*(h2<0?-1:1),y2;for(s2=0;s2<c2;++s2)(y2=p2[f2[s2]=s2]=+e3(o3[s2],s2,o3))>0&&(d2+=y2);for(t2==null?n2!=null&&f2.sort(function(e4,t3){return n2(o3[e4],o3[t3])}):f2.sort(function(e4,n3){return t2(p2[e4],p2[n3])}),s2=0,u2=d2?(h2-c2*v2)/d2:0;s2<c2;++s2,m2=g2)l2=f2[s2],y2=p2[l2],g2=m2+(y2>0?y2*u2:0)+v2,p2[l2]={data:o3[l2],index:s2,value:y2,startAngle:m2,endAngle:g2,padAngle:_2};return p2}return o2.value=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),o2):e3},o2.sortValues=function(e4){return arguments.length?(t2=e4,n2=null,o2):t2},o2.sort=function(e4){return arguments.length?(n2=e4,t2=null,o2):n2},o2.startAngle=function(e4){return arguments.length?(r2=typeof e4=="function"?e4:Z(+e4),o2):r2},o2.endAngle=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(+e4),o2):i2},o2.padAngle=function(e4){return arguments.length?(a2=typeof e4=="function"?e4:Z(+e4),o2):a2},o2}var za={draw(e3,t2){let n2=sa(t2/ca);e3.moveTo(n2,0),e3.arc(0,0,n2,0,ua)}},Ba={draw(e3,t2){let n2=sa(t2/5)/2;e3.moveTo(-3*n2,-n2),e3.lineTo(-n2,-n2),e3.lineTo(-n2,-3*n2),e3.lineTo(n2,-3*n2),e3.lineTo(n2,-n2),e3.lineTo(3*n2,-n2),e3.lineTo(3*n2,n2),e3.lineTo(n2,n2),e3.lineTo(n2,3*n2),e3.lineTo(-n2,3*n2),e3.lineTo(-n2,n2),e3.lineTo(-3*n2,n2),e3.closePath()}},Va=sa(1/3),Ha=Va*2,Ua={draw(e3,t2){let n2=sa(t2/Ha),r2=n2*Va;e3.moveTo(0,-n2),e3.lineTo(r2,0),e3.lineTo(0,n2),e3.lineTo(-r2,0),e3.closePath()}},Wa={draw(e3,t2){let n2=sa(t2),r2=-n2/2;e3.rect(r2,r2,n2,n2)}},Ga=.8908130915292852,Ka=oa(ca/10)/oa(7*ca/10),qa=oa(ua/10)*Ka,Ja=-ra(ua/10)*Ka,Ya={draw(e3,t2){let n2=sa(t2*Ga),r2=qa*n2,i2=Ja*n2;e3.moveTo(0,-n2),e3.lineTo(r2,i2);for(let t3=1;t3<5;++t3){let a2=ua*t3/5,o2=ra(a2),s2=oa(a2);e3.lineTo(s2*n2,-o2*n2),e3.lineTo(o2*r2-s2*i2,s2*r2+o2*i2)}e3.closePath()}},Xa=sa(3),Za={draw(e3,t2){let n2=-sa(t2/(Xa*3));e3.moveTo(0,n2*2),e3.lineTo(-Xa*n2,-n2),e3.lineTo(Xa*n2,-n2),e3.closePath()}},Qa=-.5,$a=sa(3)/2,eo=1/sa(12),to=(eo/2+1)*3,no=[za,Ba,Ua,Wa,Ya,Za,{draw(e3,t2){let n2=sa(t2/to),r2=n2/2,i2=n2*eo,a2=r2,o2=n2*eo+n2,s2=-a2,c2=o2;e3.moveTo(r2,i2),e3.lineTo(a2,o2),e3.lineTo(s2,c2),e3.lineTo(Qa*r2-$a*i2,$a*r2+Qa*i2),e3.lineTo(Qa*a2-$a*o2,$a*a2+Qa*o2),e3.lineTo(Qa*s2-$a*c2,$a*s2+Qa*c2),e3.lineTo(Qa*r2+$a*i2,Qa*i2-$a*r2),e3.lineTo(Qa*a2+$a*o2,Qa*o2-$a*a2),e3.lineTo(Qa*s2+$a*c2,Qa*c2-$a*s2),e3.closePath()}}];function ro(e3,t2){let n2=null,r2=ba(i2);e3=typeof e3=="function"?e3:Z(e3||za),t2=typeof t2=="function"?t2:Z(t2===void 0?64:+t2);function i2(){let i3;if(n2||=i3=r2(),e3.apply(this,arguments).draw(n2,+t2.apply(this,arguments)),i3)return n2=null,i3+""||null}return i2.type=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(t3),i2):e3},i2.size=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),i2):t2},i2.context=function(e4){return arguments.length?(n2=e4??null,i2):n2},i2}function io(e3){return e3<0?-1:1}function ao(e3,t2,n2){var r2=e3._x1-e3._x0,i2=t2-e3._x1,a2=(e3._y1-e3._y0)/(r2||i2<0&&-0),o2=(n2-e3._y1)/(i2||r2<0&&-0),s2=(a2*i2+o2*r2)/(r2+i2);return(io(a2)+io(o2))*Math.min(Math.abs(a2),Math.abs(o2),.5*Math.abs(s2))||0}function oo(e3,t2){var n2=e3._x1-e3._x0;return n2?(3*(e3._y1-e3._y0)/n2-t2)/2:t2}function so(e3,t2,n2){var r2=e3._x0,i2=e3._y0,a2=e3._x1,o2=e3._y1,s2=(a2-r2)/3;e3._context.bezierCurveTo(r2+s2,i2+s2*t2,a2-s2,o2-s2*n2,a2,o2)}function co(e3){this._context=e3}co.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:so(this,this._t0,oo(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e3,t2){var n2=NaN;if(e3=+e3,t2=+t2,e3!==this._x1||t2!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e3,t2):this._context.moveTo(e3,t2);break;case 1:this._point=2;break;case 2:this._point=3,so(this,oo(this,n2=ao(this,e3,t2)),n2);break;default:so(this,this._t0,n2=ao(this,e3,t2))}this._x0=this._x1,this._x1=e3,this._y0=this._y1,this._y1=t2,this._t0=n2}}},Object.create(co.prototype).point=function(e3,t2){co.prototype.point.call(this,t2,e3)};function lo(e3){return new co(e3)}var uo={top:16,right:16,bottom:36,left:48},fo=o;function po(e3){return c(e3)}var mo=new Map;function ho(e3,t2){let n2=`n|${e3??""}|${t2.locale}|${t2.currency}`,r2=mo.get(n2);if(!r2){let i2=e3==="currency"?{style:"currency",currency:t2.currency,maximumFractionDigits:0}:e3==="percent"||e3==="fraction-percent"?{style:"percent",maximumFractionDigits:1}:e3==="year"?{useGrouping:false,maximumFractionDigits:0}:e3==="compact"?{notation:"compact",maximumFractionDigits:1}:{};r2=new Intl.NumberFormat(t2.locale,i2),mo.set(n2,r2)}return r2}function go(e3,t2){let n2=`d|${e3?"l":"s"}|${t2.locale}`,r2=mo.get(n2);return r2||(r2=new Intl.DateTimeFormat(t2.locale,e3?{month:"short",day:"numeric",year:"numeric",timeZone:"UTC"}:{month:"short",day:"2-digit",timeZone:"UTC"}),mo.set(n2,r2)),r2}function _o(e3){let t2=e3 instanceof Date?e3:new Date(e3);return Number.isNaN(t2.getTime())?null:t2}function vo(e3,t2,n2=fo){if(t2==="date"||t2==="date-short"||e3 instanceof Date){let r2=typeof e3=="string"&&!/^\d{4}-\d{2}/.test(e3)?null:_o(e3);return r2?go(t2==="date",n2).format(r2):String(e3)}return typeof e3=="number"?Number.isFinite(e3)?ho(t2,n2).format(e3):"":String(e3)}function yo(e3,t2=fo){let n2=e3.filter(e4=>e4 instanceof Date&&!Number.isNaN(e4.getTime())),r2=new Set(n2.map(e4=>e4.getUTCFullYear())),i2=n2.length>0&&n2.every(e4=>e4.getUTCMonth()===0&&e4.getUTCDate()===1),a2=n2.length>0&&n2.every(e4=>e4.getUTCDate()===1),o2=i2?{year:"numeric",timeZone:"UTC"}:a2?{month:"short",...r2.size>1?{year:"numeric"}:{},timeZone:"UTC"}:{month:"short",day:"2-digit",...r2.size>1?{year:"numeric"}:{},timeZone:"UTC"},s2=new Intl.DateTimeFormat(t2.locale,o2);return e4=>{let t3=_o(e4);return t3?s2.format(t3):String(e4)}}function bo(e3,t2=fo,n2){if(e3?.formatter)return e3.formatter;let r2=e3?.format??n2;return e4=>vo(e4,r2,t2)}function xo(e3,t2=80){return e3<=0?2:Math.max(2,Math.min(12,Math.round(e3/t2)))}function So(e3){let t2=0;for(let n2 of e3)/[0-9]/.test(n2)?t2+=6.5:n2===","||n2==="."||n2===" "||n2===" "||n2===" "?t2+=3:/[$€£¥%]/.test(n2)?t2+=7:/[A-Z]/.test(n2)?t2+=8:t2+=6.5;return t2}function Co(e3,t2,n2,r2=48,i2=fo){let a2=n2??(e4=>vo(e4,t2,i2)),o2=0;for(let t3 of e3){let e4=So(a2(t3));e4>o2&&(o2=e4)}return Math.max(r2,Math.ceil(o2+20))}var wo={top:16,right:8,bottom:36,left:36};function To({narrow:e3,yTicks:t2,yAxis:n2,loc:r2=fo,override:i2}){let a2=e3?wo:uo,o2=i2?.left??Co(t2,n2?.format,n2?.formatter,a2.left,r2);return{...a2,...i2,left:o2}}function Eo(e3,t2){return e3==null||t2==null?NaN:e3<t2?-1:e3>t2?1:e3>=t2?0:NaN}function Do(e3,t2){return e3==null||t2==null?NaN:t2<e3?-1:t2>e3?1:t2>=e3?0:NaN}function Oo(e3){let t2,n2,r2;e3.length===2?(t2=e3===Eo||e3===Do?e3:ko,n2=e3,r2=e3):(t2=Eo,n2=(t3,n3)=>Eo(e3(t3),n3),r2=(t3,n3)=>e3(t3)-n3);function i2(e4,r3,i3=0,a3=e4.length){if(i3<a3){if(t2(r3,r3)!==0)return a3;do{let t3=i3+a3>>>1;n2(e4[t3],r3)<0?i3=t3+1:a3=t3}while(i3<a3)}return i3}function a2(e4,r3,i3=0,a3=e4.length){if(i3<a3){if(t2(r3,r3)!==0)return a3;do{let t3=i3+a3>>>1;n2(e4[t3],r3)<=0?i3=t3+1:a3=t3}while(i3<a3)}return i3}function o2(e4,t3,n3=0,a3=e4.length){let o3=i2(e4,t3,n3,a3-1);return o3>n3&&r2(e4[o3-1],t3)>-r2(e4[o3],t3)?o3-1:o3}return{left:i2,center:o2,right:a2}}function ko(){return 0}function Ao(e3){return e3===null?NaN:+e3}var jo=Oo(Eo),Mo=jo.right;jo.left,Oo(Ao).center;function No(e3,t2){let n2,r2;if(t2===void 0)for(let t3 of e3)t3!=null&&(n2===void 0?t3>=t3&&(n2=r2=t3):(n2>t3&&(n2=t3),r2<t3&&(r2=t3)));else{let i2=-1;for(let a2 of e3)(a2=t2(a2,++i2,e3))!=null&&(n2===void 0?a2>=a2&&(n2=r2=a2):(n2>a2&&(n2=a2),r2<a2&&(r2=a2)))}return[n2,r2]}var Po=class extends Map{constructor(e3,t2=Ro){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t2}}),e3!=null)for(let[t3,n2]of e3)this.set(t3,n2)}get(e3){return super.get(Fo(this,e3))}has(e3){return super.has(Fo(this,e3))}set(e3,t2){return super.set(Io(this,e3),t2)}delete(e3){return super.delete(Lo(this,e3))}};function Fo({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)?e3.get(r2):n2}function Io({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)?e3.get(r2):(e3.set(r2,n2),n2)}function Lo({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)&&(n2=e3.get(r2),e3.delete(r2)),n2}function Ro(e3){return typeof e3=="object"&&e3?e3.valueOf():e3}var zo=Math.sqrt(50),Bo=Math.sqrt(10),Vo=Math.sqrt(2);function Ho(e3,t2,n2){let r2=(t2-e3)/Math.max(0,n2),i2=Math.floor(Math.log10(r2)),a2=r2/10**i2,o2=a2>=zo?10:a2>=Bo?5:a2>=Vo?2:1,s2,c2,l2;return i2<0?(l2=10**-i2/o2,s2=Math.round(e3*l2),c2=Math.round(t2*l2),s2/l2<e3&&++s2,c2/l2>t2&&--c2,l2=-l2):(l2=10**i2*o2,s2=Math.round(e3/l2),c2=Math.round(t2/l2),s2*l2<e3&&++s2,c2*l2>t2&&--c2),c2<s2&&.5<=n2&&n2<2?Ho(e3,t2,n2*2):[s2,c2,l2]}function Uo(e3,t2,n2){if(t2=+t2,e3=+e3,n2=+n2,!(n2>0))return[];if(e3===t2)return[e3];let r2=t2<e3,[i2,a2,o2]=r2?Ho(t2,e3,n2):Ho(e3,t2,n2);if(!(a2>=i2))return[];let s2=a2-i2+1,c2=Array(s2);if(r2){if(o2<0)for(let e4=0;e4<s2;++e4)c2[e4]=(a2-e4)/-o2;else for(let e4=0;e4<s2;++e4)c2[e4]=(a2-e4)*o2}else if(o2<0)for(let e4=0;e4<s2;++e4)c2[e4]=(i2+e4)/-o2;else for(let e4=0;e4<s2;++e4)c2[e4]=(i2+e4)*o2;return c2}function Wo(e3,t2,n2){return t2=+t2,e3=+e3,n2=+n2,Ho(e3,t2,n2)[2]}function Go(e3,t2,n2){t2=+t2,e3=+e3,n2=+n2;let r2=t2<e3,i2=r2?Wo(t2,e3,n2):Wo(e3,t2,n2);return(r2?-1:1)*(i2<0?1/-i2:i2)}function Ko(e3,t2,n2){e3=+e3,t2=+t2,n2=(i2=arguments.length)<2?(t2=e3,e3=0,1):i2<3?1:+n2;for(var r2=-1,i2=Math.max(0,Math.ceil((t2-e3)/n2))|0,a2=Array(i2);++r2<i2;)a2[r2]=e3+r2*n2;return a2}function qo(e3,t2){switch(arguments.length){case 0:break;case 1:this.range(e3);break;default:this.range(t2).domain(e3)}return this}var Jo=Symbol("implicit");function Yo(){var e3=new Po,t2=[],n2=[],r2=Jo;function i2(i3){let a2=e3.get(i3);if(a2===void 0){if(r2!==Jo)return r2;e3.set(i3,a2=t2.push(i3)-1)}return n2[a2%n2.length]}return i2.domain=function(n3){if(!arguments.length)return t2.slice();t2=[],e3=new Po;for(let r3 of n3)e3.has(r3)||e3.set(r3,t2.push(r3)-1);return i2},i2.range=function(e4){return arguments.length?(n2=Array.from(e4),i2):n2.slice()},i2.unknown=function(e4){return arguments.length?(r2=e4,i2):r2},i2.copy=function(){return Yo(t2,n2).unknown(r2)},qo.apply(i2,arguments),i2}function Xo(){var e3=Yo().unknown(void 0),t2=e3.domain,n2=e3.range,r2=0,i2=1,a2,o2,s2=false,c2=0,l2=0,u2=.5;delete e3.unknown;function d2(){var e4=t2().length,d3=i2<r2,f2=d3?i2:r2,p2=d3?r2:i2;a2=(p2-f2)/Math.max(1,e4-c2+l2*2),s2&&(a2=Math.floor(a2)),f2+=(p2-f2-a2*(e4-c2))*u2,o2=a2*(1-c2),s2&&(f2=Math.round(f2),o2=Math.round(o2));var m2=Ko(e4).map(function(e5){return f2+a2*e5});return n2(d3?m2.reverse():m2)}return e3.domain=function(e4){return arguments.length?(t2(e4),d2()):t2()},e3.range=function(e4){return arguments.length?([r2,i2]=e4,r2=+r2,i2=+i2,d2()):[r2,i2]},e3.rangeRound=function(e4){return[r2,i2]=e4,r2=+r2,i2=+i2,s2=true,d2()},e3.bandwidth=function(){return o2},e3.step=function(){return a2},e3.round=function(e4){return arguments.length?(s2=!!e4,d2()):s2},e3.padding=function(e4){return arguments.length?(c2=Math.min(1,l2=+e4),d2()):c2},e3.paddingInner=function(e4){return arguments.length?(c2=Math.min(1,e4),d2()):c2},e3.paddingOuter=function(e4){return arguments.length?(l2=+e4,d2()):l2},e3.align=function(e4){return arguments.length?(u2=Math.max(0,Math.min(1,e4)),d2()):u2},e3.copy=function(){return Xo(t2(),[r2,i2]).round(s2).paddingInner(c2).paddingOuter(l2).align(u2)},qo.apply(d2(),arguments)}function Zo(e3){var t2=e3.copy;return e3.padding=e3.paddingOuter,delete e3.paddingInner,delete e3.paddingOuter,e3.copy=function(){return Zo(t2())},e3}function Qo(){return Zo(Xo.apply(null,arguments).paddingInner(1))}function $o(e3){return function(){return e3}}function es(e3){return+e3}var ts=[0,1];function ns(e3){return e3}function rs(e3,t2){return(t2-=e3=+e3)?function(n2){return(n2-e3)/t2}:$o(isNaN(t2)?NaN:.5)}function is(e3,t2){var n2;return e3>t2&&(n2=e3,e3=t2,t2=n2),function(n3){return Math.max(e3,Math.min(t2,n3))}}function as(e3,t2,n2){var r2=e3[0],i2=e3[1],a2=t2[0],o2=t2[1];return i2<r2?(r2=rs(i2,r2),a2=n2(o2,a2)):(r2=rs(r2,i2),a2=n2(a2,o2)),function(e4){return a2(r2(e4))}}function os(e3,t2,n2){var r2=Math.min(e3.length,t2.length)-1,i2=Array(r2),a2=Array(r2),o2=-1;for(e3[r2]<e3[0]&&(e3=e3.slice().reverse(),t2=t2.slice().reverse());++o2<r2;)i2[o2]=rs(e3[o2],e3[o2+1]),a2[o2]=n2(t2[o2],t2[o2+1]);return function(t3){var n3=Mo(e3,t3,1,r2)-1;return a2[n3](i2[n3](t3))}}function ss(e3,t2){return t2.domain(e3.domain()).range(e3.range()).interpolate(e3.interpolate()).clamp(e3.clamp()).unknown(e3.unknown())}function cs(){var e3=ts,t2=ts,n2=jn,r2,i2,a2,o2=ns,s2,c2,l2;function u2(){var n3=Math.min(e3.length,t2.length);return o2!==ns&&(o2=is(e3[0],e3[n3-1])),s2=n3>2?os:as,c2=l2=null,d2}function d2(i3){return i3==null||isNaN(i3=+i3)?a2:(c2||=s2(e3.map(r2),t2,n2))(r2(o2(i3)))}return d2.invert=function(n3){return o2(i2((l2||=s2(t2,e3.map(r2),wn))(n3)))},d2.domain=function(t3){return arguments.length?(e3=Array.from(t3,es),u2()):e3.slice()},d2.range=function(e4){return arguments.length?(t2=Array.from(e4),u2()):t2.slice()},d2.rangeRound=function(e4){return t2=Array.from(e4),n2=Mn,u2()},d2.clamp=function(e4){return arguments.length?(o2=e4?true:ns,u2()):o2!==ns},d2.interpolate=function(e4){return arguments.length?(n2=e4,u2()):n2},d2.unknown=function(e4){return arguments.length?(a2=e4,d2):a2},function(e4,t3){return r2=e4,i2=t3,u2()}}function ls(){return cs()(ns,ns)}function us(e3){return Math.abs(e3=Math.round(e3))>=1e21?e3.toLocaleString("en").replace(/,/g,""):e3.toString(10)}function ds(e3,t2){if(!isFinite(e3)||e3===0)return null;var n2=(e3=t2?e3.toExponential(t2-1):e3.toExponential()).indexOf("e"),r2=e3.slice(0,n2);return[r2.length>1?r2[0]+r2.slice(2):r2,+e3.slice(n2+1)]}function fs(e3){return e3=ds(Math.abs(e3)),e3?e3[1]:NaN}function ps(e3,t2){return function(n2,r2){for(var i2=n2.length,a2=[],o2=0,s2=e3[0],c2=0;i2>0&&s2>0&&(c2+s2+1>r2&&(s2=Math.max(1,r2-c2)),a2.push(n2.substring(i2-=s2,i2+s2)),!((c2+=s2+1)>r2));)s2=e3[o2=(o2+1)%e3.length];return a2.reverse().join(t2)}}function ms(e3){return function(t2){return t2.replace(/[0-9]/g,function(t3){return e3[+t3]})}}var hs=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function gs(e3){if(!(t2=hs.exec(e3)))throw Error("invalid format: "+e3);var t2;return new _s({fill:t2[1],align:t2[2],sign:t2[3],symbol:t2[4],zero:t2[5],width:t2[6],comma:t2[7],precision:t2[8]&&t2[8].slice(1),trim:t2[9],type:t2[10]})}gs.prototype=_s.prototype;function _s(e3){this.fill=e3.fill===void 0?" ":e3.fill+"",this.align=e3.align===void 0?">":e3.align+"",this.sign=e3.sign===void 0?"-":e3.sign+"",this.symbol=e3.symbol===void 0?"":e3.symbol+"",this.zero=!!e3.zero,this.width=e3.width===void 0?void 0:+e3.width,this.comma=!!e3.comma,this.precision=e3.precision===void 0?void 0:+e3.precision,this.trim=!!e3.trim,this.type=e3.type===void 0?"":e3.type+""}_s.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 vs(e3){out:for(var t2=e3.length,n2=1,r2=-1,i2;n2<t2;++n2)switch(e3[n2]){case".":r2=i2=n2;break;case"0":r2===0&&(r2=n2),i2=n2;break;default:if(!+e3[n2])break out;r2>0&&(r2=0)}return r2>0?e3.slice(0,r2)+e3.slice(i2+1):e3}var ys;function bs(e3,t2){var n2=ds(e3,t2);if(!n2)return ys=void 0,e3.toPrecision(t2);var r2=n2[0],i2=n2[1],a2=i2-(ys=Math.max(-8,Math.min(8,Math.floor(i2/3)))*3)+1,o2=r2.length;return a2===o2?r2:a2>o2?r2+Array(a2-o2+1).join("0"):a2>0?r2.slice(0,a2)+"."+r2.slice(a2):"0."+Array(1-a2).join("0")+ds(e3,Math.max(0,t2+a2-1))[0]}function xs(e3,t2){var n2=ds(e3,t2);if(!n2)return e3+"";var r2=n2[0],i2=n2[1];return i2<0?"0."+Array(-i2).join("0")+r2:r2.length>i2+1?r2.slice(0,i2+1)+"."+r2.slice(i2+1):r2+Array(i2-r2.length+2).join("0")}var Ss={"%":(e3,t2)=>(e3*100).toFixed(t2),b:e3=>Math.round(e3).toString(2),c:e3=>e3+"",d:us,e:(e3,t2)=>e3.toExponential(t2),f:(e3,t2)=>e3.toFixed(t2),g:(e3,t2)=>e3.toPrecision(t2),o:e3=>Math.round(e3).toString(8),p:(e3,t2)=>xs(e3*100,t2),r:xs,s:bs,X:e3=>Math.round(e3).toString(16).toUpperCase(),x:e3=>Math.round(e3).toString(16)};function Cs(e3){return e3}var ws=Array.prototype.map,Ts=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Es(e3){var t2=e3.grouping===void 0||e3.thousands===void 0?Cs:ps(ws.call(e3.grouping,Number),e3.thousands+""),n2=e3.currency===void 0?"":e3.currency[0]+"",r2=e3.currency===void 0?"":e3.currency[1]+"",i2=e3.decimal===void 0?".":e3.decimal+"",a2=e3.numerals===void 0?Cs:ms(ws.call(e3.numerals,String)),o2=e3.percent===void 0?"%":e3.percent+"",s2=e3.minus===void 0?"−":e3.minus+"",c2=e3.nan===void 0?"NaN":e3.nan+"";function l2(e4,l3){e4=gs(e4);var u3=e4.fill,d2=e4.align,f2=e4.sign,p2=e4.symbol,m2=e4.zero,h2=e4.width,g2=e4.comma,_2=e4.precision,v2=e4.trim,y2=e4.type;y2==="n"?(g2=true,y2="g"):Ss[y2]||(_2===void 0&&(_2=12),v2=true,y2="g"),(m2||u3==="0"&&d2==="=")&&(m2=true,u3="0",d2="=");var b2=(l3&&l3.prefix!==void 0?l3.prefix:"")+(p2==="$"?n2:p2==="#"&&/[boxX]/.test(y2)?"0"+y2.toLowerCase():""),x2=(p2==="$"?r2:/[%p]/.test(y2)?o2:"")+(l3&&l3.suffix!==void 0?l3.suffix:""),S2=Ss[y2],C2=/[defgprs%]/.test(y2);_2=_2===void 0?6:/[gprs]/.test(y2)?Math.max(1,Math.min(21,_2)):Math.max(0,Math.min(20,_2));function w2(e5){var n3=b2,r3=x2,o3,l4,p3;if(y2==="c")r3=S2(e5)+r3,e5="";else{e5=+e5;var w3=e5<0||1/e5<0;if(e5=isNaN(e5)?c2:S2(Math.abs(e5),_2),v2&&(e5=vs(e5)),w3&&+e5==0&&f2!=="+"&&(w3=false),n3=(w3?f2==="("?f2:s2:f2==="-"||f2==="("?"":f2)+n3,r3=(y2==="s"&&!isNaN(e5)&&ys!==void 0?Ts[8+ys/3]:"")+r3+(w3&&f2==="("?")":""),C2){for(o3=-1,l4=e5.length;++o3<l4;)if(p3=e5.charCodeAt(o3),48>p3||p3>57){r3=(p3===46?i2+e5.slice(o3+1):e5.slice(o3))+r3,e5=e5.slice(0,o3);break}}}g2&&!m2&&(e5=t2(e5,Infinity));var T2=n3.length+e5.length+r3.length,E2=T2<h2?Array(h2-T2+1).join(u3):"";switch(g2&&m2&&(e5=t2(E2+e5,E2.length?h2-r3.length:Infinity),E2=""),d2){case"<":e5=n3+e5+r3+E2;break;case"=":e5=n3+E2+e5+r3;break;case"^":e5=E2.slice(0,T2=E2.length>>1)+n3+e5+r3+E2.slice(T2);break;default:e5=E2+n3+e5+r3}return a2(e5)}return w2.toString=function(){return e4+""},w2}function u2(e4,t3){var n3=Math.max(-8,Math.min(8,Math.floor(fs(t3)/3)))*3,r3=10**-n3,i3=l2((e4=gs(e4),e4.type="f",e4),{suffix:Ts[8+n3/3]});return function(e5){return i3(r3*e5)}}return{format:l2,formatPrefix:u2}}var Ds,Os,ks;As({thousands:",",grouping:[3],currency:["$",""]});function As(e3){return Ds=Es(e3),Os=Ds.format,ks=Ds.formatPrefix,Ds}function js(e3){return Math.max(0,-fs(Math.abs(e3)))}function Ms(e3,t2){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(fs(t2)/3)))*3-fs(Math.abs(e3)))}function Ns(e3,t2){return e3=Math.abs(e3),t2=Math.abs(t2)-e3,Math.max(0,fs(t2)-fs(e3))+1}function Ps(e3,t2,n2,r2){var i2=Go(e3,t2,n2),a2;switch(r2=gs(r2??",f"),r2.type){case"s":var o2=Math.max(Math.abs(e3),Math.abs(t2));return r2.precision==null&&!isNaN(a2=Ms(i2,o2))&&(r2.precision=a2),ks(r2,o2);case"":case"e":case"g":case"p":case"r":r2.precision==null&&!isNaN(a2=Ns(i2,Math.max(Math.abs(e3),Math.abs(t2))))&&(r2.precision=a2-(r2.type==="e"));break;case"f":case"%":r2.precision==null&&!isNaN(a2=js(i2))&&(r2.precision=a2-(r2.type==="%")*2)}return Os(r2)}function Fs(e3){var t2=e3.domain;return e3.ticks=function(e4){var n2=t2();return Uo(n2[0],n2[n2.length-1],e4??10)},e3.tickFormat=function(e4,n2){var r2=t2();return Ps(r2[0],r2[r2.length-1],e4??10,n2)},e3.nice=function(n2){n2??=10;var r2=t2(),i2=0,a2=r2.length-1,o2=r2[i2],s2=r2[a2],c2,l2,u2=10;for(s2<o2&&(l2=o2,o2=s2,s2=l2,l2=i2,i2=a2,a2=l2);u2-- >0;){if(l2=Wo(o2,s2,n2),l2===c2)return r2[i2]=o2,r2[a2]=s2,t2(r2);if(l2>0)o2=Math.floor(o2/l2)*l2,s2=Math.ceil(s2/l2)*l2;else if(l2<0)o2=Math.ceil(o2*l2)/l2,s2=Math.floor(s2*l2)/l2;else break;c2=l2}return e3},e3}function Is(){var e3=ls();return e3.copy=function(){return ss(e3,Is())},qo.apply(e3,arguments),Fs(e3)}function Ls(e3,t2){e3=e3.slice();var n2=0,r2=e3.length-1,i2=e3[n2],a2=e3[r2],o2;return a2<i2&&(o2=n2,n2=r2,r2=o2,o2=i2,i2=a2,a2=o2),e3[n2]=t2.floor(i2),e3[r2]=t2.ceil(a2),e3}var Rs=new Date,zs=new Date;function Bs(e3,t2,n2,r2){function i2(t3){return e3(t3=arguments.length===0?new Date:new Date(+t3)),t3}return i2.floor=t3=>(e3(t3=new Date(+t3)),t3),i2.ceil=n3=>(e3(n3=new Date(n3-1)),t2(n3,1),e3(n3),n3),i2.round=e4=>{let t3=i2(e4),n3=i2.ceil(e4);return e4-t3<n3-e4?t3:n3},i2.offset=(e4,n3)=>(t2(e4=new Date(+e4),n3==null?1:Math.floor(n3)),e4),i2.range=(n3,r3,a2)=>{let o2=[];if(n3=i2.ceil(n3),a2=a2==null?1:Math.floor(a2),!(n3<r3)||!(a2>0))return o2;let s2;do o2.push(s2=new Date(+n3)),t2(n3,a2),e3(n3);while(s2<n3&&n3<r3);return o2},i2.filter=n3=>Bs(t3=>{if(t3>=t3)for(;e3(t3),!n3(t3);)t3.setTime(t3-1)},(e4,r3)=>{if(e4>=e4){if(r3<0)for(;++r3<=0;)for(;t2(e4,-1),!n3(e4););else for(;--r3>=0;)for(;t2(e4,1),!n3(e4););}}),n2&&(i2.count=(t3,r3)=>(Rs.setTime(+t3),zs.setTime(+r3),e3(Rs),e3(zs),Math.floor(n2(Rs,zs))),i2.every=e4=>(e4=Math.floor(e4),!isFinite(e4)||!(e4>0)?null:e4>1?i2.filter(r2?t3=>r2(t3)%e4===0:t3=>i2.count(0,t3)%e4===0):i2)),i2}var Vs=Bs(()=>{},(e3,t2)=>{e3.setTime(+e3+t2)},(e3,t2)=>t2-e3);Vs.every=e3=>(e3=Math.floor(e3),!isFinite(e3)||!(e3>0)?null:e3>1?Bs(t2=>{t2.setTime(Math.floor(t2/e3)*e3)},(t2,n2)=>{t2.setTime(+t2+n2*e3)},(t2,n2)=>(n2-t2)/e3):Vs),Vs.range;var Hs=1e3,Us=Hs*60,Ws=Us*60,Gs=Ws*24,Ks=Gs*7,qs=Gs*30,Js=Gs*365,Ys=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds())},(e3,t2)=>{e3.setTime(+e3+t2*Hs)},(e3,t2)=>(t2-e3)/Hs,e3=>e3.getUTCSeconds());Ys.range;var Xs=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds()-e3.getSeconds()*Hs)},(e3,t2)=>{e3.setTime(+e3+t2*Us)},(e3,t2)=>(t2-e3)/Us,e3=>e3.getMinutes());Xs.range;var Zs=Bs(e3=>{e3.setUTCSeconds(0,0)},(e3,t2)=>{e3.setTime(+e3+t2*Us)},(e3,t2)=>(t2-e3)/Us,e3=>e3.getUTCMinutes());Zs.range;var Qs=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds()-e3.getSeconds()*Hs-e3.getMinutes()*Us)},(e3,t2)=>{e3.setTime(+e3+t2*Ws)},(e3,t2)=>(t2-e3)/Ws,e3=>e3.getHours());Qs.range;var $s=Bs(e3=>{e3.setUTCMinutes(0,0,0)},(e3,t2)=>{e3.setTime(+e3+t2*Ws)},(e3,t2)=>(t2-e3)/Ws,e3=>e3.getUTCHours());$s.range;var ec=Bs(e3=>e3.setHours(0,0,0,0),(e3,t2)=>e3.setDate(e3.getDate()+t2),(e3,t2)=>(t2-e3-(t2.getTimezoneOffset()-e3.getTimezoneOffset())*Us)/Gs,e3=>e3.getDate()-1);ec.range;var tc=Bs(e3=>{e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCDate(e3.getUTCDate()+t2)},(e3,t2)=>(t2-e3)/Gs,e3=>e3.getUTCDate()-1);tc.range;var nc=Bs(e3=>{e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCDate(e3.getUTCDate()+t2)},(e3,t2)=>(t2-e3)/Gs,e3=>Math.floor(e3/Gs));nc.range;function rc(e3){return Bs(t2=>{t2.setDate(t2.getDate()-(t2.getDay()+7-e3)%7),t2.setHours(0,0,0,0)},(e4,t2)=>{e4.setDate(e4.getDate()+t2*7)},(e4,t2)=>(t2-e4-(t2.getTimezoneOffset()-e4.getTimezoneOffset())*Us)/Ks)}var ic=rc(0),ac=rc(1),oc=rc(2),sc=rc(3),cc=rc(4),lc=rc(5),uc=rc(6);ic.range,ac.range,oc.range,sc.range,cc.range,lc.range,uc.range;function dc(e3){return Bs(t2=>{t2.setUTCDate(t2.getUTCDate()-(t2.getUTCDay()+7-e3)%7),t2.setUTCHours(0,0,0,0)},(e4,t2)=>{e4.setUTCDate(e4.getUTCDate()+t2*7)},(e4,t2)=>(t2-e4)/Ks)}var fc=dc(0),pc=dc(1),mc=dc(2),hc=dc(3),gc=dc(4),_c=dc(5),vc=dc(6);fc.range,pc.range,mc.range,hc.range,gc.range,_c.range,vc.range;var yc=Bs(e3=>{e3.setDate(1),e3.setHours(0,0,0,0)},(e3,t2)=>{e3.setMonth(e3.getMonth()+t2)},(e3,t2)=>t2.getMonth()-e3.getMonth()+(t2.getFullYear()-e3.getFullYear())*12,e3=>e3.getMonth());yc.range;var bc=Bs(e3=>{e3.setUTCDate(1),e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCMonth(e3.getUTCMonth()+t2)},(e3,t2)=>t2.getUTCMonth()-e3.getUTCMonth()+(t2.getUTCFullYear()-e3.getUTCFullYear())*12,e3=>e3.getUTCMonth());bc.range;var xc=Bs(e3=>{e3.setMonth(0,1),e3.setHours(0,0,0,0)},(e3,t2)=>{e3.setFullYear(e3.getFullYear()+t2)},(e3,t2)=>t2.getFullYear()-e3.getFullYear(),e3=>e3.getFullYear());xc.every=e3=>!isFinite(e3=Math.floor(e3))||!(e3>0)?null:Bs(t2=>{t2.setFullYear(Math.floor(t2.getFullYear()/e3)*e3),t2.setMonth(0,1),t2.setHours(0,0,0,0)},(t2,n2)=>{t2.setFullYear(t2.getFullYear()+n2*e3)}),xc.range;var Sc=Bs(e3=>{e3.setUTCMonth(0,1),e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCFullYear(e3.getUTCFullYear()+t2)},(e3,t2)=>t2.getUTCFullYear()-e3.getUTCFullYear(),e3=>e3.getUTCFullYear());Sc.every=e3=>!isFinite(e3=Math.floor(e3))||!(e3>0)?null:Bs(t2=>{t2.setUTCFullYear(Math.floor(t2.getUTCFullYear()/e3)*e3),t2.setUTCMonth(0,1),t2.setUTCHours(0,0,0,0)},(t2,n2)=>{t2.setUTCFullYear(t2.getUTCFullYear()+n2*e3)}),Sc.range;function Cc(e3,t2,n2,r2,i2,a2){let o2=[[Ys,1,Hs],[Ys,5,5*Hs],[Ys,15,15*Hs],[Ys,30,30*Hs],[a2,1,Us],[a2,5,5*Us],[a2,15,15*Us],[a2,30,30*Us],[i2,1,Ws],[i2,3,3*Ws],[i2,6,6*Ws],[i2,12,12*Ws],[r2,1,Gs],[r2,2,2*Gs],[n2,1,Ks],[t2,1,qs],[t2,3,3*qs],[e3,1,Js]];function s2(e4,t3,n3){let r3=t3<e4;r3&&([e4,t3]=[t3,e4]);let i3=n3&&typeof n3.range=="function"?n3:c2(e4,t3,n3),a3=i3?i3.range(e4,+t3+1):[];return r3?a3.reverse():a3}function c2(t3,n3,r3){let i3=Math.abs(n3-t3)/r3,a3=Oo(([,,e4])=>e4).right(o2,i3);if(a3===o2.length)return e3.every(Go(t3/Js,n3/Js,r3));if(a3===0)return Vs.every(Math.max(Go(t3,n3,r3),1));let[s3,c3]=o2[i3/o2[a3-1][2]<o2[a3][2]/i3?a3-1:a3];return s3.every(c3)}return[s2,c2]}var[wc,Tc]=Cc(Sc,bc,fc,nc,$s,Zs),[Ec,Dc]=Cc(xc,yc,ic,ec,Qs,Xs);function Oc(e3){if(0<=e3.y&&e3.y<100){var t2=new Date(-1,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L);return t2.setFullYear(e3.y),t2}return new Date(e3.y,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L)}function kc(e3){if(0<=e3.y&&e3.y<100){var t2=new Date(Date.UTC(-1,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L));return t2.setUTCFullYear(e3.y),t2}return new Date(Date.UTC(e3.y,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L))}function Ac(e3,t2,n2){return{y:e3,m:t2,d:n2,H:0,M:0,S:0,L:0}}function jc(e3){var t2=e3.dateTime,n2=e3.date,r2=e3.time,i2=e3.periods,a2=e3.days,o2=e3.shortDays,s2=e3.months,c2=e3.shortMonths,l2=Lc(i2),u2=Rc(i2),d2=Lc(a2),f2=Rc(a2),p2=Lc(o2),m2=Rc(o2),h2=Lc(s2),g2=Rc(s2),_2=Lc(c2),v2=Rc(c2),y2={a:N2,A:P2,b:F2,B:I2,c:null,d:al,e:al,f:ul,g:xl,G:Cl,H:ol,I:sl,j:cl,L:ll,m:dl,M:fl,p:L2,q:ee2,Q:Kl,s:ql,S:pl,u:ml,U:hl,V:_l,w:vl,W:yl,x:null,X:null,y:bl,Y:Sl,Z:wl,"%":Gl},b2={a:R2,A:z2,b:B2,B:V2,c:null,d:Tl,e:Tl,f:Al,g:Vl,G:Ul,H:El,I:Dl,j:Ol,L:kl,m:jl,M:Ml,p:H2,q:U2,Q:Kl,s:ql,S:Nl,u:Pl,U:Fl,V:Ll,w:Rl,W:zl,x:null,X:null,y:Bl,Y:Hl,Z:Wl,"%":Gl},x2={a:E2,A:D2,b:O2,B:k2,c:A2,d:Yc,e:Yc,f:tl,g:Gc,G:Wc,H:Zc,I:Zc,j:Xc,L:el,m:Jc,M:Qc,p:T2,q:qc,Q:rl,s:il,S:$c,u:Bc,U:Vc,V:Hc,w:zc,W:Uc,x:j2,X:M2,y:Gc,Y:Wc,Z:Kc,"%":nl};y2.x=S2(n2,y2),y2.X=S2(r2,y2),y2.c=S2(t2,y2),b2.x=S2(n2,b2),b2.X=S2(r2,b2),b2.c=S2(t2,b2);function S2(e4,t3){return function(n3){var r3=[],i3=-1,a3=0,o3=e4.length,s3,c3,l3;for(n3 instanceof Date||(n3=new Date(+n3));++i3<o3;)e4.charCodeAt(i3)===37&&(r3.push(e4.slice(a3,i3)),(c3=Mc[s3=e4.charAt(++i3)])==null?c3=s3==="e"?" ":"0":s3=e4.charAt(++i3),(l3=t3[s3])&&(s3=l3(n3,c3)),r3.push(s3),a3=i3+1);return r3.push(e4.slice(a3,i3)),r3.join("")}}function C2(e4,t3){return function(n3){var r3=Ac(1900,void 0,1),i3=w2(r3,e4,n3+="",0),a3,o3;if(i3!=n3.length)return null;if("Q"in r3)return new Date(r3.Q);if("s"in r3)return new Date(r3.s*1e3+("L"in r3?r3.L:0));if(t3&&!("Z"in r3)&&(r3.Z=0),"p"in r3&&(r3.H=r3.H%12+r3.p*12),r3.m===void 0&&(r3.m="q"in r3?r3.q:0),"V"in r3){if(r3.V<1||r3.V>53)return null;"w"in r3||(r3.w=1),"Z"in r3?(a3=kc(Ac(r3.y,0,1)),o3=a3.getUTCDay(),a3=o3>4||o3===0?pc.ceil(a3):pc(a3),a3=tc.offset(a3,(r3.V-1)*7),r3.y=a3.getUTCFullYear(),r3.m=a3.getUTCMonth(),r3.d=a3.getUTCDate()+(r3.w+6)%7):(a3=Oc(Ac(r3.y,0,1)),o3=a3.getDay(),a3=o3>4||o3===0?ac.ceil(a3):ac(a3),a3=ec.offset(a3,(r3.V-1)*7),r3.y=a3.getFullYear(),r3.m=a3.getMonth(),r3.d=a3.getDate()+(r3.w+6)%7)}else("W"in r3||"U"in r3)&&("w"in r3||(r3.w="u"in r3?r3.u%7:+("W"in r3)),o3="Z"in r3?kc(Ac(r3.y,0,1)).getUTCDay():Oc(Ac(r3.y,0,1)).getDay(),r3.m=0,r3.d="W"in r3?(r3.w+6)%7+r3.W*7-(o3+5)%7:r3.w+r3.U*7-(o3+6)%7);return"Z"in r3?(r3.H+=r3.Z/100|0,r3.M+=r3.Z%100,kc(r3)):Oc(r3)}}function w2(e4,t3,n3,r3){for(var i3=0,a3=t3.length,o3=n3.length,s3,c3;i3<a3;){if(r3>=o3)return-1;if(s3=t3.charCodeAt(i3++),s3===37){if(s3=t3.charAt(i3++),c3=x2[s3 in Mc?t3.charAt(i3++):s3],!c3||(r3=c3(e4,n3,r3))<0)return-1}else if(s3!=n3.charCodeAt(r3++))return-1}return r3}function T2(e4,t3,n3){var r3=l2.exec(t3.slice(n3));return r3?(e4.p=u2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function E2(e4,t3,n3){var r3=p2.exec(t3.slice(n3));return r3?(e4.w=m2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function D2(e4,t3,n3){var r3=d2.exec(t3.slice(n3));return r3?(e4.w=f2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function O2(e4,t3,n3){var r3=_2.exec(t3.slice(n3));return r3?(e4.m=v2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function k2(e4,t3,n3){var r3=h2.exec(t3.slice(n3));return r3?(e4.m=g2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function A2(e4,n3,r3){return w2(e4,t2,n3,r3)}function j2(e4,t3,r3){return w2(e4,n2,t3,r3)}function M2(e4,t3,n3){return w2(e4,r2,t3,n3)}function N2(e4){return o2[e4.getDay()]}function P2(e4){return a2[e4.getDay()]}function F2(e4){return c2[e4.getMonth()]}function I2(e4){return s2[e4.getMonth()]}function L2(e4){return i2[+(e4.getHours()>=12)]}function ee2(e4){return 1+~~(e4.getMonth()/3)}function R2(e4){return o2[e4.getUTCDay()]}function z2(e4){return a2[e4.getUTCDay()]}function B2(e4){return c2[e4.getUTCMonth()]}function V2(e4){return s2[e4.getUTCMonth()]}function H2(e4){return i2[+(e4.getUTCHours()>=12)]}function U2(e4){return 1+~~(e4.getUTCMonth()/3)}return{format:function(e4){var t3=S2(e4+="",y2);return t3.toString=function(){return e4},t3},parse:function(e4){var t3=C2(e4+="",false);return t3.toString=function(){return e4},t3},utcFormat:function(e4){var t3=S2(e4+="",b2);return t3.toString=function(){return e4},t3},utcParse:function(e4){var t3=C2(e4+="",true);return t3.toString=function(){return e4},t3}}}var Mc={"-":"",_:" ",0:"0"},Nc=/^\s*\d+/,Pc=/^%/,Fc=/[\\^$*+?|[\]().{}]/g;function Q(e3,t2,n2){var r2=e3<0?"-":"",i2=(r2?-e3:e3)+"",a2=i2.length;return r2+(a2<n2?Array(n2-a2+1).join(t2)+i2:i2)}function Ic(e3){return e3.replace(Fc,"\\$&")}function Lc(e3){return RegExp("^(?:"+e3.map(Ic).join("|")+")","i")}function Rc(e3){return new Map(e3.map((e4,t2)=>[e4.toLowerCase(),t2]))}function zc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.w=+r2[0],n2+r2[0].length):-1}function Bc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.u=+r2[0],n2+r2[0].length):-1}function Vc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.U=+r2[0],n2+r2[0].length):-1}function Hc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.V=+r2[0],n2+r2[0].length):-1}function Uc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.W=+r2[0],n2+r2[0].length):-1}function Wc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+4));return r2?(e3.y=+r2[0],n2+r2[0].length):-1}function Gc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.y=+r2[0]+(+r2[0]>68?1900:2e3),n2+r2[0].length):-1}function Kc(e3,t2,n2){var r2=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t2.slice(n2,n2+6));return r2?(e3.Z=r2[1]?0:-(r2[2]+(r2[3]||"00")),n2+r2[0].length):-1}function qc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.q=r2[0]*3-3,n2+r2[0].length):-1}function Jc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.m=r2[0]-1,n2+r2[0].length):-1}function Yc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.d=+r2[0],n2+r2[0].length):-1}function Xc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+3));return r2?(e3.m=0,e3.d=+r2[0],n2+r2[0].length):-1}function Zc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.H=+r2[0],n2+r2[0].length):-1}function Qc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.M=+r2[0],n2+r2[0].length):-1}function $c(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.S=+r2[0],n2+r2[0].length):-1}function el(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+3));return r2?(e3.L=+r2[0],n2+r2[0].length):-1}function tl(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+6));return r2?(e3.L=Math.floor(r2[0]/1e3),n2+r2[0].length):-1}function nl(e3,t2,n2){var r2=Pc.exec(t2.slice(n2,n2+1));return r2?n2+r2[0].length:-1}function rl(e3,t2,n2){var r2=Nc.exec(t2.slice(n2));return r2?(e3.Q=+r2[0],n2+r2[0].length):-1}function il(e3,t2,n2){var r2=Nc.exec(t2.slice(n2));return r2?(e3.s=+r2[0],n2+r2[0].length):-1}function al(e3,t2){return Q(e3.getDate(),t2,2)}function ol(e3,t2){return Q(e3.getHours(),t2,2)}function sl(e3,t2){return Q(e3.getHours()%12||12,t2,2)}function cl(e3,t2){return Q(1+ec.count(xc(e3),e3),t2,3)}function ll(e3,t2){return Q(e3.getMilliseconds(),t2,3)}function ul(e3,t2){return ll(e3,t2)+"000"}function dl(e3,t2){return Q(e3.getMonth()+1,t2,2)}function fl(e3,t2){return Q(e3.getMinutes(),t2,2)}function pl(e3,t2){return Q(e3.getSeconds(),t2,2)}function ml(e3){var t2=e3.getDay();return t2===0?7:t2}function hl(e3,t2){return Q(ic.count(xc(e3)-1,e3),t2,2)}function gl(e3){var t2=e3.getDay();return t2>=4||t2===0?cc(e3):cc.ceil(e3)}function _l(e3,t2){return e3=gl(e3),Q(cc.count(xc(e3),e3)+(xc(e3).getDay()===4),t2,2)}function vl(e3){return e3.getDay()}function yl(e3,t2){return Q(ac.count(xc(e3)-1,e3),t2,2)}function bl(e3,t2){return Q(e3.getFullYear()%100,t2,2)}function xl(e3,t2){return e3=gl(e3),Q(e3.getFullYear()%100,t2,2)}function Sl(e3,t2){return Q(e3.getFullYear()%1e4,t2,4)}function Cl(e3,t2){var n2=e3.getDay();return e3=n2>=4||n2===0?cc(e3):cc.ceil(e3),Q(e3.getFullYear()%1e4,t2,4)}function wl(e3){var t2=e3.getTimezoneOffset();return(t2>0?"-":(t2*=-1,"+"))+Q(t2/60|0,"0",2)+Q(t2%60,"0",2)}function Tl(e3,t2){return Q(e3.getUTCDate(),t2,2)}function El(e3,t2){return Q(e3.getUTCHours(),t2,2)}function Dl(e3,t2){return Q(e3.getUTCHours()%12||12,t2,2)}function Ol(e3,t2){return Q(1+tc.count(Sc(e3),e3),t2,3)}function kl(e3,t2){return Q(e3.getUTCMilliseconds(),t2,3)}function Al(e3,t2){return kl(e3,t2)+"000"}function jl(e3,t2){return Q(e3.getUTCMonth()+1,t2,2)}function Ml(e3,t2){return Q(e3.getUTCMinutes(),t2,2)}function Nl(e3,t2){return Q(e3.getUTCSeconds(),t2,2)}function Pl(e3){var t2=e3.getUTCDay();return t2===0?7:t2}function Fl(e3,t2){return Q(fc.count(Sc(e3)-1,e3),t2,2)}function Il(e3){var t2=e3.getUTCDay();return t2>=4||t2===0?gc(e3):gc.ceil(e3)}function Ll(e3,t2){return e3=Il(e3),Q(gc.count(Sc(e3),e3)+(Sc(e3).getUTCDay()===4),t2,2)}function Rl(e3){return e3.getUTCDay()}function zl(e3,t2){return Q(pc.count(Sc(e3)-1,e3),t2,2)}function Bl(e3,t2){return Q(e3.getUTCFullYear()%100,t2,2)}function Vl(e3,t2){return e3=Il(e3),Q(e3.getUTCFullYear()%100,t2,2)}function Hl(e3,t2){return Q(e3.getUTCFullYear()%1e4,t2,4)}function Ul(e3,t2){var n2=e3.getUTCDay();return e3=n2>=4||n2===0?gc(e3):gc.ceil(e3),Q(e3.getUTCFullYear()%1e4,t2,4)}function Wl(){return"+0000"}function Gl(){return"%"}function Kl(e3){return+e3}function ql(e3){return Math.floor(e3/1e3)}var Jl,Yl;Xl({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 Xl(e3){return Jl=jc(e3),Jl.format,Jl.parse,Yl=Jl.utcFormat,Jl.utcParse,Jl}function Zl(e3){return new Date(e3)}function Ql(e3){return e3 instanceof Date?+e3:+new Date(+e3)}function $l(e3,t2,n2,r2,i2,a2,o2,s2,c2,l2){var u2=ls(),d2=u2.invert,f2=u2.domain,p2=l2(".%L"),m2=l2(":%S"),h2=l2("%I:%M"),g2=l2("%I %p"),_2=l2("%a %d"),v2=l2("%b %d"),y2=l2("%B"),b2=l2("%Y");function x2(e4){return(c2(e4)<e4?p2:s2(e4)<e4?m2:o2(e4)<e4?h2:a2(e4)<e4?g2:r2(e4)<e4?i2(e4)<e4?_2:v2:n2(e4)<e4?y2:b2)(e4)}return u2.invert=function(e4){return new Date(d2(e4))},u2.domain=function(e4){return arguments.length?f2(Array.from(e4,Ql)):f2().map(Zl)},u2.ticks=function(t3){var n3=f2();return e3(n3[0],n3[n3.length-1],t3??10)},u2.tickFormat=function(e4,t3){return t3==null?x2:l2(t3)},u2.nice=function(e4){var n3=f2();return(!e4||typeof e4.range!="function")&&(e4=t2(n3[0],n3[n3.length-1],e4??10)),e4?f2(Ls(n3,e4)):u2},u2.copy=function(){return ss(u2,$l(e3,t2,n2,r2,i2,a2,o2,s2,c2,l2))},u2}function eu(){return qo.apply($l(wc,Tc,Sc,bc,fc,tc,$s,Zs,Ys,Yl).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function tu(e3,t2,n2){let r2=n2?.includeZero??true,i2=n2?.stacked??false,a2=Infinity,o2=-Infinity;if(i2){let t3=new Map,n3=new Map;for(let r3 of e3)for(let e4 of r3.data){let r4=$(e4),i3=e4.y>=0?t3:n3;i3.set(r4,(i3.get(r4)??0)+e4.y)}for(let e4 of[...t3.values(),...n3.values()])e4<a2&&(a2=e4),e4>o2&&(o2=e4)}else for(let t3 of e3)for(let e4 of t3.data)e4.y<a2&&(a2=e4.y),e4.y>o2&&(o2=e4.y);(!Number.isFinite(a2)||!Number.isFinite(o2))&&(a2=0,o2=1),r2&&(a2>0&&(a2=0),o2<0&&(o2=0));let s2=(o2-a2)*.05||1;return Is().domain([a2,o2+s2]).range(t2).nice()}function nu(e3,t2){let n2=[];for(let t3 of e3)for(let e4 of t3.data)typeof e4.x=="number"&&n2.push(e4.x);let[r2,i2]=No(n2);return Is().domain([r2??0,i2??1]).range(t2)}function ru(e3,t2){let n2=[];for(let t3 of e3)for(let e4 of t3.data){let t4=e4.x instanceof Date?e4.x.getTime():typeof e4.x=="number"?e4.x:new Date(e4.x).getTime();Number.isFinite(t4)&&n2.push(new Date(t4))}let[r2,i2]=No(n2);return eu().domain([r2??new Date(0),i2??new Date(0)]).range(t2)}function iu(e3,t2,n2=.2){return Xo().domain(ou(e3)).range(t2).padding(n2)}function au(e3,t2){return Qo().domain(ou(e3)).range(t2)}function ou(e3){let t2=new Set,n2=[];for(let r2 of e3)for(let e4 of r2.data){let r3=$(e4);t2.has(r3)||(t2.add(r3),n2.push(r3))}return n2}function $(e3){return e3.x instanceof Date?String(e3.x.getTime()):String(e3.x)}function su(e3,t2){if(t2==="time"){if(e3 instanceof Date)return e3.getTime();if(typeof e3=="string"){let t3=new Date(e3);return Number.isNaN(t3.getTime())?0:t3.getTime()}return typeof e3=="number"?e3:0}return t2==="linear"?typeof e3=="number"?e3:Number(e3)||0:$({x:e3})}function cu(e3,t2,n2){return e3(t2==="band"?$(n2):su(n2.x,t2))??NaN}function lu(e3){if(!Array.isArray(e3)||e3.length!==2)return null;let[t2,n2]=e3,r2=e4=>typeof e4=="string"||typeof e4=="number"||e4 instanceof Date;return r2(t2)&&r2(n2)?[t2,n2]:null}function uu(e3,t2){let[n2,r2]=t2[0]<=t2[1]?t2:[t2[1],t2[0]],i2=e3.domain().filter(t3=>{let i3=e3(t3);return i3!==void 0&&i3>=n2&&i3<=r2}),a2=i2[0],o2=i2[i2.length-1];return a2===void 0||o2===void 0?null:[a2,o2]}function du(e3,t2,n2){let r2=e3(t2),i2=e3(n2);if(r2===void 0||i2===void 0)return null;let a2=(e3.step?.()??0)/2,o2=Math.min(r2,i2)-a2,s2=Math.max(r2,i2)+a2;return{x:o2,width:Math.max(0,s2-o2)}}function fu(e3,t2,n2){if(!e3)return null;if(n2==="band")return du(t2,String(su(e3[0],"band")),String(su(e3[1],"band")));let r2=t2,i2=r2(su(e3[0],n2)),a2=r2(su(e3[1],n2));return!Number.isFinite(i2)||!Number.isFinite(a2)?null:{x:Math.min(i2,a2),width:Math.abs(a2-i2)}}function pu(e3,t2,n2){if(n2==="band")return uu(t2,e3);let r2=t2.invert;if(!r2)return null;let i2=r2(e3[0]),a2=r2(e3[1]);return n2==="time"?[new Date(i2),new Date(a2)]:[Number(i2),Number(a2)]}function mu(e3){if(typeof e3=="number")return Number.isFinite(e3)?e3:null;if(typeof e3=="string"&&e3.trim()!==""){let t2=Number(e3.trim());return Number.isFinite(t2)?t2:null}return null}function hu(e3){return e3 instanceof Date?Number.isNaN(e3.getTime())?null:e3:typeof e3=="number"?Number.isFinite(e3)?e3:null:typeof e3=="string"?e3===""?null:e3:typeof e3=="boolean"?String(e3):null}var gu=e3=>Array.isArray(e3)?e3.filter(e4=>typeof e4=="object"&&!!e4&&!Array.isArray(e4)):[],_u=(e3,t2)=>(e3===void 0?[t2]:typeof e3=="string"?[e3]:[...e3]).filter(e4=>typeof e4=="string"&&e4!=="");function vu(e3){let t2=[];return e3.forEach((e4,n2)=>{if(typeof e4!="object"||!e4)return;let r2=e4;if(!Array.isArray(r2.data))return;let i2=[];for(let e5 of r2.data){if(typeof e5!="object"||!e5)continue;let t3=e5,n3=hu(t3.x),r3=mu(t3.y);n3!==null&&r3!==null&&i2.push({...t3,x:n3,y:r3})}let a2=typeof r2.id=="string"&&r2.id!==""?r2.id:typeof r2.id=="number"?String(r2.id):`series-${n2+1}`;t2.push({...r2,id:a2,data:i2})}),t2}function yu(e3){if(Array.isArray(e3.series))return vu(e3.series);let t2=gu(e3.data);if(t2.length===0)return[];let n2=e3.x||"x",r2=_u(e3.y,"y"),i2=typeof e3.series=="string"&&e3.series!==""?e3.series:void 0,a2=new Map,o2=(e4,t3)=>{let n3=a2.get(e4);return n3||(n3={id:e4,label:t3,data:[]},a2.set(e4,n3)),n3};if(!i2)for(let e4 of r2)o2(e4,e4);for(let e4 of t2){let t3=hu(e4[n2]);if(t3===null)continue;let a3=i2===void 0?void 0:hu(e4[i2]);if(i2===void 0||a3!==null)for(let n3 of r2){let i3=mu(e4[n3]);if(i3===null)continue;let s2=a3===void 0?n3:r2.length>1?`${String(a3)} · ${n3}`:String(a3);o2(s2,s2).data.push({x:t3,y:i3,datum:e4})}}return[...a2.values()].filter(e4=>e4.data.length>0)}function bu(e3,t2={}){let n2=t2.x||"x",r2=t2.y||"y",i2=[];for(let t3 of gu(e3)){let e4=hu(t3[n2]),a2=mu(t3[r2]);e4!==null&&a2!==null&&i2.push(n2==="x"&&r2==="y"?{...t3,x:e4,y:a2}:{x:e4,y:a2,datum:t3})}return i2}function xu(e3,t2={}){let n2=t2.label||"label",r2=t2.value||"value",i2=new Map;for(let a2 of gu(e3)){let e4=hu(a2[n2]),o2=mu(a2[r2]);if(e4===null||o2===null)continue;let s2=e4 instanceof Date?e4.toISOString():String(e4),c2=i2.get(s2);if(c2){c2.value+=o2;continue}let l2=t2.color?a2[t2.color]:void 0;i2.set(s2,{id:s2,label:s2,value:o2,...typeof l2=="string"&&l2?{color:l2}:{}})}return[...i2.values()]}var Su=e3=>e3 instanceof Date?e3.toISOString():String(e3);function Cu(e3){let t2=[];return e3.forEach((e4,n2)=>{if(typeof e4!="object"||!e4||Array.isArray(e4))return;let r2=e4,i2=mu(r2.value);if(i2===null)return;let a2=hu(r2.label),o2=hu(r2.id);t2.push({id:o2===null?a2===null?`slice-${n2+1}`:Su(a2):Su(o2),...a2===null?{}:{label:Su(a2)},value:i2,...typeof r2.color=="string"&&r2.color?{color:r2.color}:{}})}),t2}function wu(e3){let t2=[];for(let n2 of e3){if(typeof n2!="object"||!n2||Array.isArray(n2))continue;let e4=n2,r2=hu(e4.label),i2=mu(e4.base),a2=mu(e4.value);r2!==null&&i2!==null&&a2!==null&&t2.push({label:Su(r2),base:i2,value:a2,display:mu(e4.display)??a2,...typeof e4.color=="string"&&e4.color?{color:e4.color}:{},...e4.total===true?{total:true}:{}})}return t2}var Tu=new Set([true,1,"true","1","total"]);function Eu(e3,t2={}){let n2=t2.label||"label",r2=t2.value||"value",i2=t2.total||void 0,a2=0,o2=[];for(let t3 of gu(e3)){let e4=hu(t3[n2]);if(e4===null)continue;let s2=mu(t3[r2]);if(i2!==void 0&&Tu.has(t3[i2])){s2!==null&&(a2=s2),o2.push({label:Su(e4),base:0,value:a2,display:a2,total:true});continue}s2!==null&&(o2.push({label:Su(e4),base:a2,value:s2,display:s2}),a2+=s2)}return o2}var Du=/^\d{4}-\d{2}-\d{2}(?:[T ][\d:.]+(?:Z|[+-]\d{2}:?\d{2})?)?$/;function Ou(e3){let t2=0,n2=0,r2=0;for(let i2 of e3)for(let e4 of i2.data)t2++,e4.x instanceof Date||typeof e4.x=="string"&&Du.test(e4.x)?n2++:typeof e4.x=="number"&&r2++;return t2===0?"band":n2===t2?"time":r2===t2?"linear":"band"}var ku=e3=>e3.some(e4=>e4.data.length>0);function Au(e3){let t2=new Map;for(let n2 of e3)for(let e4 of n2.data)t2.has($(e4))||t2.set($(e4),e4.x);return[...t2].map(([e4,t3])=>({key:e4,x:t3}))}var ju=480,Mu=e3=>e3>0&&e3<480,Nu=e3=>typeof e3?.width=="number"&&Number.isFinite(e3.width)&&e3.width>0?Math.floor(e3.width):0;function Pu(e3,n2){let r2=i(null),o2=Nu(n2),[s2,c2]=a(0);return t(()=>{if(o2>0)return;let e4=r2.current;if(!e4)return;let t2=e4.getBoundingClientRect().width;if(t2>0&&c2(Math.floor(t2)),typeof ResizeObserver>"u")return;let n3=new ResizeObserver(e5=>{for(let t3 of e5){let e6=t3.contentRect.width;e6>0&&c2(Math.floor(e6))}});return n3.observe(e4),()=>n3.disconnect()},[o2]),{ref:r2,dims:{width:o2||s2,height:e3}}}function Fu({hasData:e3,isLoading:t2,error:n2}){return e3?"ready":n2?"error":t2?"loading":"empty"}function Iu({chartClass:e3,className:t2,style:n2,title:r2,showTitle:i2=false,description:a2,width:o2,height:c2,measureRef:l2,state:d2,table:m2,legend:h2,tooltip:g2,children:_2}){let v2=d2==="ready"&&o2>0;return p("figure",{className:s("charts-frame",e3,t2),"data-state":d2,"data-width":o2>0?Mu(o2)?"narrow":"regular":void 0,"aria-busy":d2==="loading"||void 0,style:u({"--charts-plot-height":`${c2}px`},n2),children:[r2||a2?p("figcaption",{className:"charts-frame__caption","data-visible":i2&&r2?"true":void 0,children:[r2?f("span",{className:"charts-frame__title",children:r2}):null,r2&&a2?" ":null,a2?f("span",{className:"charts-frame__description",children:a2}):null]}):null,p("div",{className:"charts-frame__plot",ref:l2,children:[v2?_2:null,d2==="ready"&&!v2?f("div",{className:"charts-frame__placeholder","aria-hidden":true}):null,d2==="loading"?f("div",{className:"charts-frame__placeholder","data-loading":"true","aria-hidden":true}):null,d2==="error"?f("p",{className:"charts-frame__notice",role:"status",children:"The data for this chart could not be loaded."}):null,v2?g2:null]}),d2==="ready"?h2:null,d2==="ready"&&m2&&m2.rows.length>0?f(Lu,{table:m2}):null]})}function Lu({table:e3}){return f("div",{className:"charts-frame__data",children:p("table",{className:"charts-frame__table",children:[f("thead",{children:f("tr",{children:e3.columns.map((e4,t2)=>f("th",{scope:"col",children:e4},t2))})}),f("tbody",{children:e3.rows.map((e4,t2)=>f("tr",{children:e4.map((e5,t3)=>t3===0?f("th",{scope:"row",children:e5},t3):f("td",{children:e5},t3))},t2))})]})})}function Ru(e3,t2){let n2=t2.xFormatter??(e4=>vo(e4,t2.xFormat??(t2.xType==="time"?"date":void 0),t2.loc)),r2=t2.yFormatter??(e4=>vo(e4,t2.yFormat,t2.loc)),i2=e3.map(e4=>{let t3=new Map;for(let n3 of e4.data)t3.has($(n3))||t3.set($(n3),n3.y);return t3});return{columns:[t2.xLabel,...e3.map(e4=>e4.label??e4.id)],rows:Au(e3).map(({key:e4,x:t3})=>[n2(t3),...i2.map(t4=>{let n3=t4.get(e4);return n3===void 0?"":r2(n3)})])}}function zu(e3){return`var(--chart-${(Math.trunc(e3)%8+8)%8+1})`}var Bu={muted:"neutral",good:"success",warn:"warning",critical:"danger"};function Vu(e3){return e3==="neutral"?"var(--chart-muted)":e3==="strong"?"var(--chart-fg)":`var(--color-${e3})`}function Hu(e3){if(typeof e3!="string"||e3==="")return;let t2=/^series-([1-9]\d*)$/.exec(e3);if(t2)return zu(Number(t2[1])-1);let n2=Bu[e3];if(n2)return Vu(n2);let r2=l(e3,"neutral");return r2===l(e3,"strong")?Vu(r2):e3}function Uu(e3,t2){return Hu(e3)??zu(t2)}function Wu(e3,t2){let n2=[];for(let r2=0;r2<e3;r2++){let e4=t2&&t2.length>0?t2[r2%t2.length]:void 0;n2.push(Uu(e4,r2))}return n2}function Gu(e3,t2){let n2=Wu(e3.length,t2);return e3.map((e4,t3)=>Hu(e4.color)??n2[t3]??zu(t3))}function Ku(e3,t2=36){return ro(no[(Math.trunc(e3)%no.length+no.length)%no.length],t2)()??""}function qu(e3,{xType:t2,xScale:n2,yScale:r2}){if(!Array.isArray(e3)||e3.length===0)return[];let i2=[];return e3.forEach((e4,a2)=>{if(typeof e4!="object"||!e4)return;let o2={key:`ref-${a2}`,stroke:Hu(e4.color),strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:Hu(e4.labelColor),labelFontSize:e4.labelFontSize};if(e4.y!==void 0&&e4.x===void 0){let t3=r2(e4.y);Number.isFinite(t3)&&i2.push({...o2,y:t3});return}if(e4.x!==void 0&&e4.y===void 0){let r3=Ju(e4.x,t2,n2);r3!==null&&i2.push({...o2,x:r3})}}),i2}function Ju(e3,t2,n2){let r2=n2;if(t2==="band"){let t3=r2(String(e3 instanceof Date?e3.getTime():e3));return t3===void 0||!Number.isFinite(t3)?null:t3+(r2.bandwidth?.()??0)/2}let i2=r2(su(e3,t2));return i2!==void 0&&Number.isFinite(i2)?i2:null}var Yu=(e3,t2)=>`${e3}:${t2}`;function Xu(e3,t2,n2){for(let r2=t2;r2>=0&&r2<e3.length;r2+=n2)if((e3[r2]??0)>0)return r2;return null}function Zu(e3,t2,n2){let r2=e3[t2.row]??0;switch(n2){case"ArrowRight":return t2.col+1<r2?{row:t2.row,col:t2.col+1}:null;case"ArrowLeft":return t2.col>0?{row:t2.row,col:t2.col-1}:null;case"Home":return t2.col>0?{row:t2.row,col:0}:null;case"End":return t2.col<r2-1?{row:t2.row,col:r2-1}:null;case"ArrowDown":case"ArrowUp":{let r3=Xu(e3,t2.row+(n2==="ArrowDown"?1:-1),n2==="ArrowDown"?1:-1);return r3===null?null:{row:r3,col:Math.min(t2.col,(e3[r3]??1)-1)}}default:return null}}function Qu({lengths:t2,onFocusTarget:n2,onBlurTarget:r2}){let[o2,s2]=a(null),[c2,l2]=a({row:0,col:0}),u2=i(new Map),d2=(t2[c2.row]??0)>0?c2.row:Xu(t2,0,1)??0,f2=Math.max(0,Math.min(c2.row===d2?c2.col:0,(t2[d2]??1)-1));return{focused:o2,targetProps:e((e3,i2)=>({tabIndex:e3===d2&&i2===f2?0:-1,ref:t3=>{t3?u2.current.set(Yu(e3,i2),t3):u2.current.delete(Yu(e3,i2))},onFocus:t3=>{s2({row:e3,col:i2}),l2({row:e3,col:i2}),n2(e3,i2,t3.currentTarget)},onBlur:()=>{s2(null),r2()},onKeyDown:n3=>{if(n3.key==="Escape"){r2();return}let a2=Zu(t2,{row:e3,col:i2},n3.key);a2&&(n3.preventDefault(),u2.current.get(Yu(a2.row,a2.col))?.focus())},...o2?.row===e3&&o2.col===i2?{"data-focused":"true"}:{}}),[d2,f2,t2,n2,r2,o2])}}function $u(e3){return e3?e3 instanceof SVGSVGElement?e3:e3.ownerSVGElement??null:null}function ed({viewBoxWidth:t2,viewBoxHeight:n2,findNearest:r2}){let[i2,o2]=a(null),s2=e((e3,r3,i3)=>{let a2=e3?.getBoundingClientRect();return!a2||a2.width===0||a2.height===0||t2===0||n2===0?{x:r3,y:i3}:{x:r3/t2*a2.width,y:i3/n2*a2.height}},[t2,n2]),c2=e3=>{let i3=$u(e3.currentTarget),a2=i3?.getBoundingClientRect();if(!a2||a2.width===0||a2.height===0)return;let c3=r2((e3.clientX-a2.left)/a2.width*t2,(e3.clientY-a2.top)/a2.height*n2);if(!c3){o2(null);return}o2({...s2(i3,c3.anchorX,c3.anchorY),payload:c3.payload})},l2=e((e3,t3,n3,r3)=>o2({...s2($u(r3),t3,n3),payload:e3}),[s2]),u2=e(()=>o2(null),[]);return{hover:i2,onPointerMove:c2,onPointerLeave:u2,showAt:l2,hide:u2}}var td={wide:80,narrow:110},nd=6;function rd({orientation:e3,scale:t2,margins:n2,width:r2,height:i2,config:a2,gridlines:o2,locale:s2=fo,narrow:c2}){let l2=r2-n2.left-n2.right,u2=i2-n2.top-n2.bottom,d2=bo(a2,s2),m2=e3==="bottom",h2=id(t2,m2?l2:u2,{format:d2,horizontal:m2,pxPerTick:m2&&c2?td.narrow:td.wide,hint:a2?.ticks,whole:a2?.format==="year"&&!a2?.formatter}),g2=!a2?.formatter&&(!a2?.format||a2.format==="date-short")&&h2[0]instanceof Date?yo(h2,s2):d2,_2=a2?.axisLine!==false,v2=a2?.tickLine!==false;if(m2){let e4=n2.top+u2,r3=a2?.label&&So(a2.label)<=l2?a2.label:null;return p("g",{className:"charts-axis","data-axis":"x",children:[_2?f("line",{className:"charts-axis__line",x1:n2.left,x2:n2.left+l2,y1:e4,y2:e4}):null,h2.map((n3,r4)=>{let i3=ad(t2,n3);return i3===null?null:p("g",{transform:`translate(${i3}, ${e4})`,children:[o2?f("line",{className:"charts-axis__grid",y1:-u2,y2:0}):null,v2?f("line",{className:"charts-axis__tick",y1:0,y2:6}):null,f("text",{className:"charts-axis__label",y:20,textAnchor:"middle",children:g2(n3)})]},r4)}),r3?f("text",{className:"charts-axis__title",x:n2.left+l2/2,y:i2-4,textAnchor:"middle",children:r3}):null]})}let y2=e3==="right",b2=y2?n2.left+l2:n2.left,x2=y2?1:-1,S2=-x2;return p("g",{className:"charts-axis","data-axis":y2?"y-right":"y",children:[_2?f("line",{className:"charts-axis__line",x1:b2,x2:b2,y1:n2.top,y2:n2.top+u2}):null,h2.map((e4,n3)=>{let r3=ad(t2,e4);return r3===null?null:p("g",{transform:`translate(${b2}, ${r3})`,children:[o2?f("line",{className:"charts-axis__grid",x1:0,x2:S2*l2}):null,v2?f("line",{className:"charts-axis__tick",x1:x2*6,x2:0}):null,f("text",{className:"charts-axis__label",x:x2*10,y:4,textAnchor:y2?"start":"end",children:g2(e4)})]},n3)})]})}function id(e3,t2,n2){if(e3.bandwidth){let r2=e3.domain();if(r2.length<2||t2<=0)return r2;let i2=n2.horizontal?Math.max(...r2.map(e4=>So(String(n2.format(e4)))))+nd:20,a2=t2/r2.length,o2=Math.max(1,Math.ceil(i2/a2));if(o2===1)return r2;let s2=r2.filter((e4,t3)=>t3%o2===0),c2=r2.length-1;return c2%o2!==0&&(c2-(s2.length-1)*o2)*a2>=i2&&s2.push(r2[c2]),s2}if(e3.ticks){let r2=xo(t2,n2.pxPerTick),i2=e3.ticks(n2.hint?Math.min(n2.hint,r2):r2);return n2.whole?i2.filter(e4=>typeof e4=="number"&&Number.isInteger(e4)):i2}return e3.domain()}function ad(e3,t2){try{let n2=e3(t2);return n2===void 0||!Number.isFinite(n2)?null:e3.bandwidth?n2+e3.bandwidth()/2:n2}catch{return null}}function od({x:e3,y:t2,visible:n2,containerWidth:r2,heading:i2,rows:a2,children:o2}){if(!n2)return null;let s2=r2&&r2>0?e3<r2*.25?"start":e3>r2*.75?"end":"center":"center";return p("div",{className:"charts-tooltip",role:"tooltip","data-align":s2,style:u({"--charts-tooltip-x":`${e3}px`,"--charts-tooltip-y":`${t2}px`}),children:[i2==null?null:f("div",{className:"charts-tooltip__heading",children:i2}),a2?.map(e4=>p("div",{className:"charts-tooltip__row",children:[e4.color?f("span",{className:"charts-tooltip__swatch","aria-hidden":true,style:u({"--charts-swatch":e4.color})}):null,f("span",{className:"charts-tooltip__label",children:e4.label}),f("strong",{className:"charts-tooltip__value",children:e4.value})]},e4.id)),o2]})}function sd({items:e3}){return e3.length===0?null:f("ul",{className:"charts-legend",children:e3.map(e4=>p("li",{className:"charts-legend__item",children:[e4.kind==="line"?p("svg",{className:"charts-legend__sample",width:24,height:12,viewBox:"0 0 24 12","aria-hidden":true,focusable:"false",children:[f("line",{x1:1,x2:23,y1:6,y2:6,stroke:e4.color,strokeWidth:2,strokeDasharray:e4.dash}),e4.marker?f("path",{d:e4.marker,transform:"translate(12, 6)",fill:e4.color}):null]}):e4.kind==="marker"&&e4.marker?f("svg",{className:"charts-legend__sample",width:12,height:12,viewBox:"0 0 12 12","aria-hidden":true,focusable:"false",children:f("path",{d:e4.marker,transform:"translate(6, 6)",fill:e4.color})}):f("span",{className:"charts-legend__swatch","aria-hidden":true,style:u({"--charts-swatch":e4.color})}),f("span",{className:"charts-legend__label",children:e4.label})]},e4.id))})}function cd({width:e3,height:t2,margins:r2,background:i2,children:a2,overlay:o2,title:s2,description:c2,interactive:l2}){let u2=n(),d2=Math.max(0,e3-r2.left-r2.right),m2=Math.max(0,t2-r2.top-r2.bottom);return p("svg",{className:"charts-plot",role:l2?"group":"img","aria-label":s2,width:e3,height:t2,viewBox:`0 0 ${e3} ${t2}`,preserveAspectRatio:"none",focusable:"false",children:[s2?f("title",{children:s2}):null,c2?f("desc",{children:c2}):null,f("defs",{children:f("clipPath",{id:u2,children:f("rect",{x:r2.left,y:r2.top,width:d2,height:m2})})}),i2,f("g",{clipPath:`url(#${u2})`,children:a2}),o2]})}var ld=6,ud=11;function dd({x:e3,y:t2,margins:n2,width:r2,height:i2,stroke:a2,strokeDasharray:o2="4 4",label:s2,labelPosition:c2="top",labelColor:l2,labelFontSize:d2}){let m2=Math.max(0,r2-n2.left-n2.right),h2=Math.max(0,i2-n2.top-n2.bottom),g2=typeof e3=="number",_2=typeof t2=="number";if(g2===_2)return null;let v2=g2?e3:t2;if(typeof v2!="number"||!Number.isFinite(v2))return null;let y2=n2.left,b2=n2.left+m2,x2=n2.top,S2=n2.top+h2;if(g2&&(v2<y2||v2>b2)||_2&&(v2<x2||v2>S2))return null;let C2=g2?{x1:v2,x2:v2,y1:x2,y2:S2}:{x1:y2,x2:b2,y1:v2,y2:v2};return p("g",{className:"charts-reference-line","data-reference-line":g2?"x":"y",pointerEvents:"none",style:u({"--charts-reference-stroke":a2,"--charts-reference-label":l2,"--charts-reference-size":d2?`${d2}px`:void 0}),children:[f("line",{...C2,className:"charts-reference-line__rule",strokeDasharray:o2}),s2?f("text",{className:"charts-reference-line__label",...fd({vertical:g2,at:v2,left:y2,right:b2,top:x2,bottom:S2,labelPosition:c2,labelFontSize:d2??ud}),children:s2}):null]})}function fd({vertical:e3,at:t2,left:n2,right:r2,top:i2,bottom:a2,labelPosition:o2,labelFontSize:s2}){let c2=i2+s2+ld,l2=a2-ld;if(o2==="top")return e3?{x:t2,y:i2-ld,textAnchor:"middle"}:{x:(n2+r2)/2,y:t2-ld,textAnchor:"middle"};let u2=o2==="insideTopRight"||o2==="insideBottomRight",d2=o2==="insideTopLeft"||o2==="insideTopRight"?c2:l2;return e3?u2?{x:t2-ld,y:d2,textAnchor:"end"}:{x:t2+ld,y:d2,textAnchor:"start"}:u2?{x:r2-ld,y:d2,textAnchor:"end"}:{x:n2+ld,y:d2,textAnchor:"start"}}function pd({series:e3,data:n2,x:a2,y:o2,xAxis:s2,yAxis:c2,height:l2=240,colors:u2,markers:m2,fill:h2,fillOpacity:g2=.18,curve:_2="linear",legend:v2=true,tooltip:y2=true,margins:b2,title:x2,showTitle:S2,description:C2,referenceLines:w2,selectedRange:T2,onSelectRange:E2,size:D2,baseProps:O2,isLoading:k2,error:A2,className:j2,style:M2}){let N2=r(()=>po(O2),[O2]),P2=r(()=>yu({series:e3,data:n2,x:a2,y:o2}),[e3,n2,a2,o2]),F2=!Array.isArray(e3),I2=s2?.type??(F2?Ou(P2):"time"),{ref:L2,dims:ee2}=Pu(l2,D2),R2=ee2.width,z2=Mu(R2),B2=r(()=>Gu(P2,u2),[P2,u2]),V2=Fu({hasData:ku(P2),isLoading:k2,error:A2}),H2=y2&&!E2,U2=m2||P2.length>1,W2=bo(s2,N2,I2==="time"?"date-short":void 0),G2=bo(c2,N2),K2=To({narrow:z2,yTicks:r(()=>tu(P2,[l2-uo.bottom,uo.top]),[P2,l2]).ticks(6),yAxis:c2,loc:N2,override:b2}),q2=Math.max(0,R2-K2.left-K2.right),J2=Math.max(0,l2-K2.top-K2.bottom),Y2=r(()=>{let e4=[K2.left,K2.left+q2];return I2==="time"?ru(P2,e4):I2==="linear"?nu(P2,e4):au(P2,e4)},[P2,I2,K2.left,q2]),X2=r(()=>tu(P2,[K2.top+J2,K2.top]),[P2,K2.top,J2]),te2=e4=>cu(Y2,I2,e4),ne2=V2==="ready"&&R2>0,[re2,ie2]=lu(T2)??[void 0,void 0],ae2=r(()=>fu(re2!==void 0&&ie2!==void 0?[re2,ie2]:null,Y2,I2),[re2,ie2,Y2,I2]),oe2=i(null),se2=i(E2);se2.current=E2,t(()=>{if(!E2||!oe2.current||!ne2)return;let e4=xt(oe2.current),t2=$i().extent([[K2.left,K2.top],[K2.left+q2,K2.top+J2]]).on("end",e5=>{if(!e5.sourceEvent)return;let t3=e5.selection;se2.current?.(t3?pu(t3,Y2,I2):null)});return e4.call(t2),t2.move(e4,ae2?[ae2.x,ae2.x+ae2.width]:null),()=>{e4.on(".brush",null),e4.selectAll("*").remove()}},[E2,ne2,I2,Y2,K2.left,K2.top,q2,J2,ae2]);let{hover:ce2,onPointerMove:le2,onPointerLeave:ue2,showAt:de2,hide:fe2}=ed({viewBoxWidth:R2,viewBoxHeight:l2,findNearest:e4=>{let t2=null;P2.forEach((n4,r2)=>{for(let i2 of n4.data){let a3=te2(i2),o3=Math.abs(a3-e4);(!t2||o3<t2.dist)&&(t2={dist:o3,payload:{series:n4,point:i2,color:B2[r2]??""},x:a3,y:X2(i2.y)})}});let n3=t2;return n3?{payload:n3.payload,anchorX:n3.x,anchorY:n3.y}:null}}),{targetProps:pe2}=Qu({lengths:P2.map(e4=>e4.data.length),onFocusTarget:(e4,t2,n3)=>{let r2=P2[e4],i2=r2?.data[t2];r2&&i2&&de2({series:r2,point:i2,color:B2[e4]??""},te2(i2),X2(i2.y),n3)},onBlurTarget:fe2}),me2=r(()=>qu(w2,{xType:I2,xScale:Y2,yScale:X2}),[w2,I2,Y2,X2]),he2=P2.map((e4,t2)=>({id:e4.id,label:e4.label??e4.id,color:B2[t2]??"",kind:"line",dash:e4.strokeDasharray,marker:U2?Ku(t2):void 0})),ge2=r(()=>Ru(P2,{xLabel:s2?.label??(F2&&a2||"x"),xType:I2,xFormat:s2?.format,xFormatter:s2?.formatter,yFormat:c2?.format,yFormatter:c2?.formatter,loc:N2}),[P2,s2,c2,a2,F2,I2,N2]),_e2=(e4,t2)=>`${W2(t2.x)}, ${e4.label??e4.id}: ${G2(t2.y)}`;return f(Iu,{chartClass:"charts-line-chart",className:j2,style:M2,title:x2,showTitle:S2,description:C2,width:R2,height:l2,measureRef:L2,state:V2,table:ge2,legend:v2?f(sd,{items:he2}):null,tooltip:H2&&ce2?f(od,{x:ce2.x,y:ce2.y,visible:true,containerWidth:R2,heading:W2(ce2.payload.point.x),rows:[{id:ce2.payload.series.id,label:ce2.payload.series.label??ce2.payload.series.id,value:G2(ce2.payload.point.y),color:ce2.payload.color}]}):null,children:f(cd,{width:R2,height:l2,margins:K2,title:x2,description:C2,interactive:H2,background:p(d,{children:[ae2&&ae2.width>0?f("rect",{className:"charts-line-chart__selection",x:ae2.x,y:K2.top,width:ae2.width,height:J2,pointerEvents:"none","data-selection":"range"}):null,f(rd,{orientation:"left",scale:X2,margins:K2,width:R2,height:l2,config:c2,gridlines:true,locale:N2,narrow:z2}),f(rd,{orientation:"bottom",scale:Y2,margins:K2,width:R2,height:l2,config:s2,locale:N2,narrow:z2})]}),overlay:p(d,{children:[me2.map(e4=>f(dd,{x:e4.x,y:e4.y,margins:K2,width:R2,height:l2,stroke:e4.stroke,strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:e4.labelColor,labelFontSize:e4.labelFontSize},e4.key)),U2?f("g",{className:"charts-line-chart__markers",pointerEvents:"none","aria-hidden":true,children:P2.map((e4,t2)=>{let n3=Ku(t2);return(m2?e4.data:e4.data.slice(-1)).map((r2,i2)=>{let a3=te2(r2),o3=X2(r2.y);return!Number.isFinite(a3)||!Number.isFinite(o3)?null:f("path",{d:n3,transform:`translate(${a3}, ${o3})`,fill:B2[t2],"data-series":e4.id},`${e4.id}-${i2}`)})})}):null,E2?f("g",{ref:oe2,className:"charts-line-chart__brush","data-interactive":"true"}):null,H2?p(d,{children:[f("rect",{className:"charts-line-chart__hover",x:K2.left,y:K2.top,width:q2,height:J2,fill:"transparent",onPointerMove:le2,onPointerLeave:ue2,"data-interactive":"true"}),f("g",{className:"charts-line-chart__targets","data-interactive":"true",children:P2.map((e4,t2)=>e4.data.map((n3,r2)=>{let i2=te2(n3),a3=X2(n3.y);return!Number.isFinite(i2)||!Number.isFinite(a3)?null:f("circle",{className:"charts-line-chart__target",cx:i2,cy:a3,r:6,role:"img","aria-label":_e2(e4,n3),...pe2(t2,r2)},`${e4.id}-${r2}`)}))})]}):null]}),children:ne2?P2.map((e4,t2)=>f(md,{series:e4,color:B2[t2]??"",xOf:te2,yScale:X2,baseline:K2.top+J2,fill:h2,fillOpacity:g2,curve:_2},e4.id)):null})})}function md({series:e3,color:t2,xOf:n2,yScale:r2,baseline:i2,fill:a2,fillOpacity:o2,curve:s2}){let c2=s2==="monotone"?lo:ja,l2=e4=>Number.isFinite(n2(e4))&&Number.isFinite(r2(e4.y)),u2=Pa().defined(l2).x(n2).y(e4=>r2(e4.y)).curve(c2)(e3.data)??"",d2=a2?Fa().defined(l2).x(n2).y0(i2).y1(e4=>r2(e4.y)).curve(c2)(e3.data)??"":"";return p("g",{className:"charts-line-chart__series","data-series":e3.id,children:[a2?f("path",{className:"charts-line-chart__area",d:d2,fill:t2,fillOpacity:o2}):null,f("path",{className:"charts-line-chart__line",d:u2,stroke:t2,strokeDasharray:e3.strokeDasharray})]})}function hd({series:e3,data:t2,x:n2,y:i2,label:a2,value:o2,xAxis:s2,yAxis:c2,height:l2=240,colors:u2,mode:m2="grouped",legend:h2=true,tooltip:g2=true,margins:_2,title:v2,showTitle:y2,description:b2,size:x2,baseProps:S2,isLoading:C2,error:w2,className:T2,style:E2}){let D2=r(()=>po(S2),[S2]),O2=n2??a2,k2=i2??o2,A2=r(()=>yu({series:e3,data:t2,x:O2,y:k2}),[e3,t2,O2,k2]),j2=!Array.isArray(e3),M2=m2==="stacked",{ref:N2,dims:P2}=Pu(l2,x2),F2=P2.width,I2=Mu(F2),L2=r(()=>Gu(A2,u2),[A2,u2]),ee2=Fu({hasData:ku(A2),isLoading:C2,error:w2}),R2=bo(c2,D2),z2=To({narrow:I2,yTicks:r(()=>tu(A2,[l2-uo.bottom,uo.top],{stacked:M2}),[A2,l2,M2]).ticks(6),yAxis:c2,loc:D2,override:_2}),B2=Math.max(0,F2-z2.left-z2.right),V2=Math.max(0,l2-z2.top-z2.bottom),H2=r(()=>iu(A2,[z2.left,z2.left+B2],.2),[A2,z2.left,B2]),U2=r(()=>tu(A2,[z2.top+V2,z2.top],{stacked:M2}),[A2,z2.top,V2,M2]),W2=U2(0),G2=r(()=>{let e4=A2.map(()=>[]);if(M2){let t3=new Map,n3=new Map;A2.forEach((r2,i3)=>{for(let a3 of r2.data){let r3=$(a3),o3=H2(r3);if(o3===void 0)continue;let s3=a3.y>=0?t3:n3,c3=s3.get(r3)??0,l3=c3+a3.y;s3.set(r3,l3);let u3=U2(Math.max(c3,l3));e4[i3]?.push({series:i3,point:a3,category:r3,x:o3,y:u3,width:H2.bandwidth(),height:Math.max(0,U2(Math.min(c3,l3))-u3)})}})}else{let t3=Xo().domain(A2.map(e5=>e5.id)).range([0,H2.bandwidth()]).padding(.08);A2.forEach((n3,r2)=>{let i3=t3(n3.id);if(i3!==void 0)for(let a3 of n3.data){let n4=$(a3),o3=H2(n4);if(o3===void 0)continue;let s3=U2(Math.max(a3.y,0));e4[r2]?.push({series:r2,point:a3,category:n4,x:o3+i3,y:s3,width:t3.bandwidth(),height:Math.abs(U2(a3.y)-W2)})}})}return e4},[A2,M2,H2,U2,W2]),K2=e4=>A2.map((t3,n3)=>({series:t3,value:t3.data.find(t4=>$(t4)===e4)?.y,color:L2[n3]??""})),q2=e4=>{let t3=G2.flatMap(t4=>t4.filter(t5=>t5.category===e4).map(e5=>e5.y));return{anchorX:(H2(e4)??0)+H2.bandwidth()/2,anchorY:t3.length?Math.min(...t3):W2}},{hover:J2,onPointerMove:Y2,onPointerLeave:X2,showAt:te2,hide:ne2}=ed({viewBoxWidth:F2,viewBoxHeight:l2,findNearest:e4=>{let t3=null,n3=Infinity;for(let r2 of H2.domain()){let i3=Math.abs((H2(r2)??0)+H2.bandwidth()/2-e4);i3<n3&&(n3=i3,t3=r2)}return t3===null?null:{payload:{category:t3,entries:K2(t3)},...q2(t3)}}}),{targetProps:re2}=Qu({lengths:G2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=G2[e4]?.[t3];if(!r2)return;let i3=q2(r2.category);te2({category:r2.category,entries:K2(r2.category)},i3.anchorX,i3.anchorY,n3)},onBlurTarget:ne2}),ie2=A2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:L2[t3]??""})),ae2=r(()=>Ru(A2,{xLabel:s2?.label??(j2&&O2||"x"),xType:"band",yFormat:c2?.format,yFormatter:c2?.formatter,loc:D2}),[A2,s2?.label,c2,O2,j2,D2]),oe2=ee2==="ready"&&F2>0;return f(Iu,{chartClass:"charts-bar-chart",className:T2,style:E2,title:v2,showTitle:y2,description:b2,width:F2,height:l2,measureRef:N2,state:ee2,table:ae2,legend:h2?f(sd,{items:ie2}):null,tooltip:g2&&J2?f(od,{x:J2.x,y:J2.y,visible:true,containerWidth:F2,heading:J2.payload.category,rows:J2.payload.entries.map(e4=>({id:e4.series.id,label:e4.series.label??e4.series.id,value:e4.value===void 0?"—":R2(e4.value),color:e4.color}))}):null,children:f(cd,{width:F2,height:l2,margins:z2,title:v2,description:b2,interactive:g2,background:p(d,{children:[f(rd,{orientation:"left",scale:U2,margins:z2,width:F2,height:l2,config:c2,gridlines:true,locale:D2,narrow:I2}),f(rd,{orientation:"bottom",scale:H2,margins:z2,width:F2,height:l2,config:s2,locale:D2,narrow:I2})]}),overlay:g2?f("rect",{className:"charts-bar-chart__hover",x:z2.left,y:z2.top,width:B2,height:V2,fill:"transparent",onPointerMove:Y2,onPointerLeave:X2,"data-interactive":"true"}):null,children:oe2?A2.map((e4,t3)=>f("g",{className:"charts-bar-chart__series","data-series":e4.id,"data-mode":m2,children:G2[t3]?.map((n3,r2)=>f("rect",{className:"charts-bar-chart__bar",x:n3.x,y:n3.y,width:n3.width,height:n3.height,fill:L2[t3],...g2?{role:"img","aria-label":`${n3.category}, ${e4.label??e4.id}: ${R2(n3.point.y)}`,...re2(t3,r2)}:{}},r2))},e4.id)):null})})}function gd({stacked:e3,className:t2,...n2}){return e3?f(_d,{...n2,className:t2}):f(pd,{...n2,fill:true,className:s("charts-area-chart",t2)})}function _d({series:e3,data:t2,x:n2,y:i2,xAxis:a2,yAxis:o2,height:s2=240,colors:c2,curve:l2="linear",legend:u2=true,tooltip:m2=true,margins:h2,title:g2,showTitle:_2,description:v2,referenceLines:y2,size:b2,baseProps:x2,isLoading:S2,error:C2,className:w2,style:T2}){let E2=r(()=>po(x2),[x2]),D2=r(()=>yu({series:e3,data:t2,x:n2,y:i2}),[e3,t2,n2,i2]),O2=!Array.isArray(e3),k2=a2?.type??(O2?Ou(D2):"time"),{ref:A2,dims:j2}=Pu(s2,b2),M2=j2.width,N2=Mu(M2),P2=r(()=>Gu(D2,c2),[D2,c2]),F2=Fu({hasData:ku(D2),isLoading:S2,error:C2}),I2=D2.length>1,L2=bo(a2,E2,k2==="time"?"date-short":void 0),ee2=bo(o2,E2),R2=To({narrow:N2,yTicks:r(()=>tu(D2,[s2-uo.bottom,uo.top],{stacked:true}),[D2,s2]).ticks(6),yAxis:o2,loc:E2,override:h2}),z2=Math.max(0,M2-R2.left-R2.right),B2=Math.max(0,s2-R2.top-R2.bottom),V2=r(()=>{let e4=Au(D2);return k2==="band"?e4:[...e4].sort((e5,t3)=>su(e5.x,k2)-su(t3.x,k2))},[D2,k2]),H2=r(()=>{let e4=V2.map(()=>0);return D2.map(t3=>{let n3=new Map;for(let e5 of t3.data)n3.has($(e5))||n3.set($(e5),e5.y);return V2.map(({key:t4,x:r2},i3)=>{let a3=n3.get(t4),o3=e4[i3]??0,s3=o3+(a3??0);return e4[i3]=s3,{x:r2,value:a3,y0:o3,y1:s3}})})},[D2,V2]),U2=r(()=>{let e4=[R2.left,R2.left+z2];return k2==="time"?ru(D2,e4):k2==="linear"?nu(D2,e4):au(D2,e4)},[D2,k2,R2.left,z2]),W2=r(()=>tu(D2,[R2.top+B2,R2.top],{stacked:true}),[D2,R2.top,B2]),G2=e4=>cu(U2,k2,{x:e4}),K2=r(()=>H2.map(e4=>e4.flatMap((e5,t3)=>e5.value===void 0?[]:[{layer:e5,xi:t3}])),[H2]),q2=e4=>Math.min(...H2.map(t3=>W2(Math.max(t3[e4]?.y0??0,t3[e4]?.y1??0)))),{hover:J2,onPointerMove:Y2,onPointerLeave:X2,showAt:te2,hide:ne2}=ed({viewBoxWidth:M2,viewBoxHeight:s2,findNearest:e4=>{let t3=-1,n3=Infinity;V2.forEach(({x:r3},i3)=>{let a3=Math.abs(G2(r3)-e4);a3<n3&&(n3=a3,t3=i3)});let r2=V2[t3];return r2?{payload:{xi:t3},anchorX:G2(r2.x),anchorY:q2(t3)}:null}}),{targetProps:re2}=Qu({lengths:K2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=K2[e4]?.[t3];r2&&te2({xi:r2.xi},G2(r2.layer.x),q2(r2.xi),n3)},onBlurTarget:ne2}),ie2=r(()=>qu(y2,{xType:k2,xScale:U2,yScale:W2}),[y2,k2,U2,W2]),ae2=D2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:P2[t3]??"",kind:"line",dash:e4.strokeDasharray,marker:I2?Ku(t3):void 0})),oe2=r(()=>Ru(D2,{xLabel:a2?.label??(O2&&n2||"x"),xType:k2,xFormat:a2?.format,xFormatter:a2?.formatter,yFormat:o2?.format,yFormatter:o2?.formatter,loc:E2}),[D2,a2,o2,n2,O2,k2,E2]),se2=F2==="ready"&&M2>0,ce2=l2==="monotone"?lo:ja,le2=Fa().x(e4=>G2(e4.x)).y0(e4=>W2(e4.y0)).y1(e4=>W2(e4.y1)).curve(ce2),ue2=Pa().x(e4=>G2(e4.x)).y(e4=>W2(e4.y1)).curve(ce2),de2=J2?V2[J2.payload.xi]:void 0;return f(Iu,{chartClass:"charts-area-chart",className:w2,style:T2,title:g2,showTitle:_2,description:v2,width:M2,height:s2,measureRef:A2,state:F2,table:oe2,legend:u2?f(sd,{items:ae2}):null,tooltip:m2&&J2&&de2?f(od,{x:J2.x,y:J2.y,visible:true,containerWidth:M2,heading:L2(de2.x),rows:D2.map((e4,t3)=>{let n3=H2[t3]?.[J2.payload.xi]?.value;return{id:e4.id,label:e4.label??e4.id,value:n3===void 0?"—":ee2(n3),color:P2[t3]}})}):null,children:f(cd,{width:M2,height:s2,margins:R2,title:g2,description:v2,interactive:m2,background:p(d,{children:[f(rd,{orientation:"left",scale:W2,margins:R2,width:M2,height:s2,config:o2,gridlines:true,locale:E2,narrow:N2}),f(rd,{orientation:"bottom",scale:U2,margins:R2,width:M2,height:s2,config:a2,locale:E2,narrow:N2})]}),overlay:p(d,{children:[ie2.map(e4=>f(dd,{x:e4.x,y:e4.y,margins:R2,width:M2,height:s2,stroke:e4.stroke,strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:e4.labelColor,labelFontSize:e4.labelFontSize},e4.key)),I2&&se2?f("g",{className:"charts-area-chart__markers",pointerEvents:"none","aria-hidden":true,children:H2.map((e4,t3)=>{let n3=e4[e4.length-1];if(!n3)return null;let r2=G2(n3.x),i3=W2(n3.y1);return!Number.isFinite(r2)||!Number.isFinite(i3)?null:f("path",{d:Ku(t3),transform:`translate(${r2}, ${i3})`,fill:P2[t3],"data-series":D2[t3]?.id},D2[t3]?.id??t3)})}):null,m2?p(d,{children:[f("rect",{className:"charts-area-chart__hover",x:R2.left,y:R2.top,width:z2,height:B2,fill:"transparent",onPointerMove:Y2,onPointerLeave:X2,"data-interactive":"true"}),f("g",{className:"charts-area-chart__targets","data-interactive":"true",children:K2.map((e4,t3)=>{let n3=D2[t3];return n3?e4.map(({layer:e5},r2)=>{let i3=G2(e5.x),a3=W2(e5.y1);return!Number.isFinite(i3)||!Number.isFinite(a3)?null:f("circle",{className:"charts-area-chart__target",cx:i3,cy:a3,r:6,role:"img","aria-label":`${L2(e5.x)}, ${n3.label??n3.id}: ${ee2(e5.value??0)}`,...re2(t3,r2)},`${n3.id}-${r2}`)}):null})})]}):null]}),children:se2?H2.map((e4,t3)=>{let n3=D2[t3];return n3?p("g",{className:"charts-area-chart__series","data-series":n3.id,children:[f("path",{className:"charts-area-chart__band",d:le2(e4)??"",fill:P2[t3]}),f("path",{className:"charts-area-chart__edge",d:ue2(e4)??"",stroke:P2[t3],strokeDasharray:n3.strokeDasharray})]},n3.id):null}):null})})}function vd({barSeries:e3,lineSeries:t2,data:n2,x:i2,bar:a2,line:o2,xAxis:s2,yLeft:c2,yRight:l2,height:u2=280,colors:m2,curve:h2="linear",legend:g2=true,tooltip:_2=true,margins:v2,title:y2,showTitle:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=r(()=>Array.isArray(e3)?vu(e3):a2===void 0?[]:yu({data:n2,x:i2,y:a2}),[e3,n2,i2,a2]),A2=r(()=>Array.isArray(t2)?vu(t2):o2===void 0?[]:yu({data:n2,x:i2,y:o2}),[t2,n2,i2,o2]),j2=r(()=>[...k2,...A2],[k2,A2]),M2=ku(k2),N2=ku(A2),{ref:P2,dims:F2}=Pu(u2,S2),I2=F2.width,L2=Mu(I2),ee2=r(()=>Gu(j2,m2),[j2,m2]),R2=e4=>ee2[e4]??"",z2=e4=>ee2[k2.length+e4]??"",B2=Fu({hasData:M2||N2,isLoading:w2,error:T2}),V2=bo(c2,O2),H2=bo(l2,O2),U2=r(()=>tu(k2,[u2-uo.bottom,uo.top]),[k2,u2]),W2=r(()=>tu(A2,[u2-uo.bottom,uo.top]),[A2,u2]),G2=To({narrow:L2,yTicks:M2?U2.ticks(6):[],yAxis:c2,loc:O2,override:v2}),K2={...G2,left:v2?.left??(M2?G2.left:(L2?wo:uo).right),right:v2?.right??(N2?Co(W2.ticks(6),l2?.format,l2?.formatter,L2?wo.left:uo.left,O2):G2.right)},q2=Math.max(0,I2-K2.left-K2.right),J2=Math.max(0,u2-K2.top-K2.bottom),Y2=r(()=>iu(j2,[K2.left,K2.left+q2]),[j2,K2.left,q2]),X2=r(()=>tu(k2,[K2.top+J2,K2.top]),[k2,K2.top,J2]),te2=r(()=>tu(A2,[K2.top+J2,K2.top]),[A2,K2.top,J2]),ne2=X2(0),re2=e4=>(Y2(e4)??0)+Y2.bandwidth()/2,ie2=r(()=>{let e4=Xo().domain(k2.map(e5=>e5.id)).range([0,Y2.bandwidth()]).padding(.08),t3=k2.map(t4=>t4.data.flatMap(n4=>{let r2=$(n4),i3=Y2(r2),a3=e4(t4.id);if(i3===void 0||a3===void 0)return[];let o3=X2(Math.max(n4.y,0));return[{category:r2,point:n4,x:i3+a3,y:o3,width:e4.bandwidth(),height:Math.abs(X2(n4.y)-ne2)}]})),n3=A2.map(e5=>e5.data.flatMap(e6=>{let t4=$(e6);return Y2(t4)===void 0?[]:[{category:t4,point:e6,x:re2(t4),y:te2(e6.y),width:0,height:0}]}));return[...t3,...n3]},[k2,A2,Y2,X2,te2,ne2]),ae2=e4=>{let t3=ie2.flatMap(t4=>t4.filter(t5=>t5.category===e4).map(e5=>e5.y));return{anchorX:re2(e4),anchorY:t3.length?Math.min(...t3):K2.top+J2/2}},{hover:oe2,onPointerMove:se2,onPointerLeave:ce2,showAt:le2,hide:ue2}=ed({viewBoxWidth:I2,viewBoxHeight:u2,findNearest:e4=>{let t3=null,n3=Infinity;for(let r2 of Y2.domain()){let i3=Math.abs(re2(r2)-e4);i3<n3&&(n3=i3,t3=r2)}return t3===null?null:{payload:{category:t3},...ae2(t3)}}}),{targetProps:de2}=Qu({lengths:ie2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=ie2[e4]?.[t3];if(!r2)return;let i3=ae2(r2.category);le2({category:r2.category},i3.anchorX,i3.anchorY,n3)},onBlurTarget:ue2}),fe2=e4=>[...k2.map((t3,n3)=>({s:t3,color:R2(n3),fmt:V2,v:t3.data.find(t4=>$(t4)===e4)?.y})),...A2.map((t3,n3)=>({s:t3,color:z2(n3),fmt:H2,v:t3.data.find(t4=>$(t4)===e4)?.y}))],pe2=[...k2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:R2(t3)})),...A2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:z2(t3),kind:"line",dash:e4.strokeDasharray,marker:Ku(t3)}))],me2=r(()=>{let n3=e4=>{let t3=new Map;for(let n4 of e4.data)t3.has($(n4))||t3.set($(n4),n4.y);return t3},r2=[...k2.map(e4=>({s:e4,m:n3(e4),fmt:V2})),...A2.map(e4=>({s:e4,m:n3(e4),fmt:H2}))];return{columns:[s2?.label??(Array.isArray(e3)||Array.isArray(t2)?"x":i2||"x"),...r2.map(e4=>e4.s.label??e4.s.id)],rows:Y2.domain().map(e4=>[e4,...r2.map(t3=>{let n4=t3.m.get(e4);return n4===void 0?"":t3.fmt(n4)})])}},[k2,A2,Y2,c2,l2,O2,s2?.label,e3,t2,i2]),he2=B2==="ready"&&I2>0,ge2=h2==="monotone"?lo:ja,_e2=e4=>Pa().defined(e5=>Y2($(e5))!==void 0).x(e5=>re2($(e5))).y(e5=>te2(e5.y)).curve(ge2)(e4.data)??"";return f(Iu,{chartClass:"charts-bar-line-chart",className:E2,style:D2,title:y2,showTitle:b2,description:x2,width:I2,height:u2,measureRef:P2,state:B2,table:me2,legend:g2?f(sd,{items:pe2}):null,tooltip:_2&&oe2?f(od,{x:oe2.x,y:oe2.y,visible:true,containerWidth:I2,heading:oe2.payload.category,rows:fe2(oe2.payload.category).map(e4=>({id:e4.s.id,label:e4.s.label??e4.s.id,value:e4.v===void 0?"—":e4.fmt(e4.v),color:e4.color}))}):null,children:f(cd,{width:I2,height:u2,margins:K2,title:y2,description:x2,interactive:_2,background:p(d,{children:[M2?f(rd,{orientation:"left",scale:X2,margins:K2,width:I2,height:u2,config:c2,gridlines:true,locale:O2,narrow:L2}):null,N2?f(rd,{orientation:"right",scale:te2,margins:K2,width:I2,height:u2,config:l2,gridlines:!M2,locale:O2,narrow:L2}):null,f(rd,{orientation:"bottom",scale:Y2,margins:K2,width:I2,height:u2,config:s2,locale:O2,narrow:L2})]}),overlay:p(d,{children:[he2&&N2?f("g",{className:"charts-bar-line-chart__markers",pointerEvents:"none","aria-hidden":true,children:A2.map((e4,t3)=>ie2[k2.length+t3]?.map((n3,r2)=>f("path",{d:Ku(t3),transform:`translate(${n3.x}, ${n3.y})`,fill:z2(t3),"data-series":e4.id},`${e4.id}-${r2}`)))}):null,_2?p(d,{children:[f("rect",{className:"charts-bar-line-chart__hover",x:K2.left,y:K2.top,width:q2,height:J2,fill:"transparent",onPointerMove:se2,onPointerLeave:ce2,"data-interactive":"true"}),f("g",{className:"charts-bar-line-chart__targets","data-interactive":"true",children:A2.map((e4,t3)=>{let n3=k2.length+t3;return ie2[n3]?.map((t4,r2)=>f("circle",{className:"charts-bar-line-chart__target",cx:t4.x,cy:t4.y,r:6,role:"img","aria-label":`${t4.category}, ${e4.label??e4.id}: ${H2(t4.point.y)}`,...de2(n3,r2)},`${e4.id}-${r2}`))})})]}):null]}),children:he2?p(d,{children:[k2.map((e4,t3)=>f("g",{className:"charts-bar-line-chart__bars","data-series":e4.id,children:ie2[t3]?.map((n3,r2)=>f("rect",{className:"charts-bar-line-chart__bar",x:n3.x,y:n3.y,width:n3.width,height:n3.height,fill:R2(t3),..._2?{role:"img","aria-label":`${n3.category}, ${e4.label??e4.id}: ${V2(n3.point.y)}`,...de2(t3,r2)}:{}},r2))},e4.id)),A2.map((e4,t3)=>f("path",{className:"charts-bar-line-chart__line","data-series":e4.id,d:_e2(e4),stroke:z2(t3),strokeDasharray:e4.strokeDasharray},e4.id))]}):null})})}function yd(e3,t2){if(e3[t2]!==void 0)return e3[t2];let n2=e3.datum;return typeof n2=="object"&&n2?n2[t2]:void 0}function bd({series:e3,data:t2,x:n2,y:i2,label:a2,xAxis:o2,yAxis:s2,height:c2=240,colors:l2,pointRadius:u2=4,sizeKey:m2,sizeRange:h2,legend:g2=true,tooltip:_2=true,margins:v2,title:y2,showTitle:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=r(()=>yu({series:e3,data:t2,x:n2,y:i2}),[e3,t2,n2,i2]),A2=!Array.isArray(e3),j2=o2?.type==="time"||o2?.type===void 0&&A2&&Ou(k2)==="time"?"time":"linear",{ref:M2,dims:N2}=Pu(c2,S2),P2=N2.width,F2=Mu(P2),I2=r(()=>Gu(k2,l2),[k2,l2]),L2=Fu({hasData:ku(k2),isLoading:w2,error:T2}),ee2=bo(o2,O2,j2==="time"?"date-short":void 0),R2=bo(s2,O2),z2=o2?.label??(A2&&n2||"x"),B2=s2?.label??(A2&&typeof i2=="string"&&i2?i2:"y"),V2=To({narrow:F2,yTicks:r(()=>tu(k2,[c2-uo.bottom,uo.top]),[k2,c2]).ticks(6),yAxis:s2,loc:O2,override:v2}),H2=Math.max(0,P2-V2.left-V2.right),U2=Math.max(0,c2-V2.top-V2.bottom),W2=r(()=>tu(k2,[V2.top+U2,V2.top]),[k2,V2.top,U2]),[G2,K2]=Array.isArray(h2)&&h2.length===2?h2:[void 0,void 0],q2=G2!==void 0&&K2!==void 0,J2=r(()=>{let e4=m2?[m2,"r","size"]:["r","size"];return t3=>{for(let n3 of e4){let e5=mu(yd(t3,n3));if(e5!==null)return e5}return null}},[m2]),Y2=r(()=>{if(!q2)return e5=>e5===null?u2:Math.max(0,e5);let e4=Infinity,t3=-Infinity;for(let n3 of k2)for(let r2 of n3.data){let n4=J2(r2);n4!==null&&(e4=Math.min(e4,n4),t3=Math.max(t3,n4))}return!Number.isFinite(e4)||!Number.isFinite(t3)||e4===t3?e5=>e5===null?u2:(G2+K2)/2:n3=>n3===null?u2:G2+(n3-e4)/(t3-e4)*(K2-G2)},[q2,G2,K2,k2,J2,u2]),X2=r(()=>{let e4=0;for(let t3 of k2)for(let n3 of t3.data)e4=Math.max(e4,Y2(J2(n3)));return Math.min(H2/4,e4+4)},[k2,Y2,J2,H2]),te2=r(()=>{let e4=[V2.left+X2,V2.left+H2-X2];return j2==="time"?ru(k2,e4):nu(k2,e4).nice()},[k2,j2,V2.left,H2,X2]),ne2=r(()=>k2.map((e4,t3)=>e4.data.map(e5=>{let n3=J2(e5),r2=a2?yd(e5,a2):void 0;return{series:t3,point:e5,cx:cu(te2,j2,e5),cy:W2(e5.y),radius:Y2(n3),size:n3,name:r2==null||r2===""?null:String(r2)}})),[k2,J2,a2,te2,j2,W2,Y2]),re2=ne2.some(e4=>e4.some(e5=>e5.size!==null)),ie2=k2.length>1,ae2=e4=>k2[e4]?.label??k2[e4]?.id??"",oe2=e4=>e4.name?ie2?`${e4.name} · ${ae2(e4.series)}`:e4.name:ae2(e4.series),se2=e4=>`${oe2(e4)}: ${z2} ${ee2(e4.point.x)}, ${B2} ${R2(e4.point.y)}`,{hover:ce2,onPointerMove:le2,onPointerLeave:ue2,showAt:de2,hide:fe2}=ed({viewBoxWidth:P2,viewBoxHeight:c2,findNearest:(e4,t3)=>{let n3=null,r2=Infinity;for(let i3 of ne2)for(let a3 of i3){let i4=Math.hypot(a3.cx-e4,a3.cy-t3);i4<r2&&(r2=i4,n3=a3)}return n3?{payload:n3,anchorX:n3.cx,anchorY:n3.cy-n3.radius}:null}}),{targetProps:pe2}=Qu({lengths:ne2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=ne2[e4]?.[t3];r2&&de2(r2,r2.cx,r2.cy-r2.radius,n3)},onBlurTarget:fe2}),me2=k2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:I2[t3]??"",kind:"marker",marker:Ku(t3,48)})),he2=r(()=>{let e4=o2?.formatter??bo(o2,O2,j2==="time"?"date":void 0),t3=!!a2&&ie2,n3=m2??"size";return{columns:[a2||"series",...t3?["series"]:[],z2,B2,...re2?[n3]:[]],rows:ne2.flatMap(n4=>n4.map(n5=>[a2?n5.name??"":ae2(n5.series),...t3?[ae2(n5.series)]:[],e4(n5.point.x),R2(n5.point.y),...re2?[n5.size===null?"":bo(void 0,O2)(n5.size)]:[]]))}},[ne2,o2,s2,O2,j2,a2,ie2,m2,re2,z2,B2]),ge2=L2==="ready"&&P2>0;return f(Iu,{chartClass:"charts-scatter-chart",className:E2,style:D2,title:y2,showTitle:b2,description:x2,width:P2,height:c2,measureRef:M2,state:L2,table:he2,legend:g2?f(sd,{items:me2}):null,tooltip:_2&&ce2?f(od,{x:ce2.x,y:ce2.y,visible:true,containerWidth:P2,heading:oe2(ce2.payload),rows:(e4=>[{id:"x",label:z2,value:ee2(e4.point.x)},{id:"y",label:B2,value:R2(e4.point.y)},...e4.size===null?[]:[{id:"size",label:m2??"size",value:bo(void 0,O2)(e4.size)}]])(ce2.payload)}):null,children:f(cd,{width:P2,height:c2,margins:V2,title:y2,description:x2,interactive:_2,background:p(d,{children:[f(rd,{orientation:"left",scale:W2,margins:V2,width:P2,height:c2,config:s2,gridlines:true,locale:O2,narrow:F2}),f(rd,{orientation:"bottom",scale:te2,margins:V2,width:P2,height:c2,config:o2,locale:O2,narrow:F2})]}),overlay:_2?f("rect",{className:"charts-scatter-chart__hover",x:V2.left,y:V2.top,width:H2,height:U2,fill:"transparent",onPointerMove:le2,onPointerLeave:ue2,"data-interactive":"true"}):null,children:ge2?k2.map((e4,t3)=>f("g",{className:"charts-scatter-chart__series","data-series":e4.id,"data-bubbles":q2?"true":void 0,children:ne2[t3]?.map((e5,n3)=>!Number.isFinite(e5.cx)||!Number.isFinite(e5.cy)?null:f("path",{className:"charts-scatter-chart__point",d:Ku(t3,Math.PI*e5.radius*e5.radius),transform:`translate(${e5.cx}, ${e5.cy})`,fill:I2[t3],stroke:I2[t3],..._2?{role:"img","aria-label":se2(e5),...pe2(t3,n3)}:{}},n3))},e4.id)):null})})}var xd={top:0,right:0,bottom:0,left:0},Sd=3,Cd=/^\d{4}-\d{2}-\d{2}/,wd=e3=>e3 instanceof Date||typeof e3=="string"&&Cd.test(e3);function Td({data:e3,x:t2,y:n2,height:i2=32,color:a2,fill:o2=true,strokeWidth:s2=1.5,tooltip:c2=false,format:l2,xFormat:u2,title:m2,description:h2,size:g2,baseProps:_2,isLoading:v2,error:y2,className:b2,style:x2}){let S2=r(()=>po(_2),[_2]),C2=r(()=>bu(e3,{x:t2,y:n2}),[e3,t2,n2]),{ref:w2,dims:T2}=Pu(i2,g2),E2=T2.width,D2=Hu(a2)??"var(--color-accent)",O2=Fu({hasData:C2.length>0,isLoading:v2,error:y2}),k2=e4=>vo(e4,u2??(wd(e4)?"date-short":void 0),S2),A2=e4=>vo(e4,l2,S2),{d:j2,dArea:M2,placed:N2}=r(()=>{if(C2.length===0||E2===0)return{d:"",dArea:"",placed:[]};let e4=Infinity,t3=-Infinity;for(let n4 of C2)n4.y<e4&&(e4=n4.y),n4.y>t3&&(t3=n4.y);e4===t3&&(--e4,t3+=1);let n3=C2.length,r2=Math.max(0,E2-6),a3=e5=>n3===1?E2/2:Sd+e5/(n3-1)*r2,o3=n4=>i2-Sd-(n4-e4)/(t3-e4)*Math.max(0,i2-6),s3=C2.map((e5,t4)=>({point:e5,cx:a3(t4),cy:o3(e5.y)}));return{d:Pa().x(e5=>e5.cx).y(e5=>e5.cy)(s3)??"",dArea:Fa().x(e5=>e5.cx).y0(i2).y1(e5=>e5.cy)(s3)??"",placed:s3}},[C2,E2,i2]),{hover:P2,onPointerMove:F2,onPointerLeave:I2,showAt:L2,hide:ee2}=ed({viewBoxWidth:E2,viewBoxHeight:i2,findNearest:e4=>{let t3=null;for(let n3 of N2)(!t3||Math.abs(n3.cx-e4)<Math.abs(t3.cx-e4))&&(t3=n3);return t3?{payload:t3,anchorX:t3.cx,anchorY:t3.cy}:null}}),{targetProps:R2}=Qu({lengths:[N2.length],onFocusTarget:(e4,t3,n3)=>{let r2=N2[t3];r2&&L2(r2,r2.cx,r2.cy,n3)},onBlurTarget:ee2}),z2=r(()=>({columns:[t2||"x",n2||"y"],rows:C2.map(e4=>[k2(e4.x),A2(e4.y)])}),[C2,t2,n2,l2,u2,S2]);return f(Iu,{chartClass:"charts-sparkline",className:b2,style:x2,title:m2,description:h2,width:E2,height:i2,measureRef:w2,state:O2,table:z2,tooltip:c2&&P2?f(od,{x:P2.x,y:P2.y,visible:true,containerWidth:E2,heading:k2(P2.payload.point.x),rows:[{id:"value",label:n2||"y",value:A2(P2.payload.point.y),color:D2}]}):null,children:p(cd,{width:E2,height:i2,margins:xd,title:m2,description:h2,interactive:c2,overlay:c2?p(d,{children:[P2?f("circle",{className:"charts-sparkline__dot",cx:P2.payload.cx,cy:P2.payload.cy,r:2.5,fill:D2,pointerEvents:"none"}):null,f("rect",{className:"charts-sparkline__hover",x:0,y:0,width:E2,height:i2,fill:"transparent",onPointerMove:F2,onPointerLeave:I2,"data-interactive":"true"}),f("g",{className:"charts-sparkline__targets","data-interactive":"true",children:N2.map((e4,t3)=>f("circle",{className:"charts-sparkline__target",cx:e4.cx,cy:e4.cy,r:4,role:"img","aria-label":`${k2(e4.point.x)}: ${A2(e4.point.y)}`,...R2(0,t3)},t3))})]}):null,children:[o2?f("path",{className:"charts-sparkline__area",d:M2,fill:D2}):null,f("path",{className:"charts-sparkline__line",d:j2,stroke:D2,strokeWidth:s2})]})})}var Ed={top:0,right:0,bottom:0,left:0},Dd=Math.PI*2;function Od({slices:e3,data:t2,label:n2,value:i2,height:a2=240,colors:o2,innerRadius:s2=0,outerRadius:c2,padAngle:l2=.005,sliceStroke:d2,sliceStrokeWidth:m2=1,legend:h2=true,tooltip:g2=true,format:_2,valueFormatter:v2,centerLabel:y2,centerSublabel:b2,title:x2,showTitle:S2,description:C2,size:w2,baseProps:T2,isLoading:E2,error:D2,className:O2,style:k2}){let A2=r(()=>po(T2),[T2]),j2=!Array.isArray(e3),M2=r(()=>(j2?xu(t2,{label:n2,value:i2}):Cu(e3)).filter(e4=>e4.value>=0),[j2,e3,t2,n2,i2]),{ref:N2,dims:P2}=Pu(a2,w2),F2=P2.width,I2=r(()=>Gu(M2,o2),[M2,o2]),L2=r(()=>M2.reduce((e4,t3)=>e4+t3.value,0),[M2]),ee2=Fu({hasData:L2>0,isLoading:E2,error:D2}),R2=r(()=>v2??(e4=>vo(e4,_2,A2)),[v2,_2,A2]),z2=e4=>vo(L2>0?e4/L2:0,"percent",A2),B2=e4=>e4.label??e4.id,V2=e4=>`${R2(e4.value)} (${z2(e4.value)})`,H2=Math.max(0,Math.min(F2||a2,a2)/2-4),U2=c2!==void 0&&c2>=0?Math.min(c2,H2):H2,W2=Math.max(0,U2*Math.min(1,Math.max(0,s2))),G2=F2/2,K2=a2/2,q2=r(()=>Ra().value(e4=>e4.value).padAngle(l2).sort(null)(M2),[M2,l2]),J2=r(()=>Oa().innerRadius(W2).outerRadius(U2),[W2,U2]),Y2=e4=>{let t3=q2[e4],[n3,r2]=t3?J2.centroid(t3):[0,0];return{anchorX:G2+n3,anchorY:K2+r2}},{hover:X2,onPointerMove:te2,onPointerLeave:ne2,showAt:re2,hide:ie2}=ed({viewBoxWidth:F2,viewBoxHeight:a2,findNearest:(e4,t3)=>{let n3=e4-G2,r2=t3-K2,i3=Math.hypot(n3,r2);if(i3>U2||i3<W2)return null;let a3=(Math.atan2(n3,-r2)+Dd)%Dd,o3=q2.findIndex(e5=>a3>=e5.startAngle&&a3<e5.endAngle);return o3<0?null:{payload:{index:o3},...Y2(o3)}}}),{targetProps:ae2}=Qu({lengths:[q2.length],onFocusTarget:(e4,t3,n3)=>{let r2=Y2(t3);re2({index:t3},r2.anchorX,r2.anchorY,n3)},onBlurTarget:ie2}),oe2=M2.map((e4,t3)=>({id:`${t3}-${e4.id}`,label:`${B2(e4)}: ${V2(e4)}`,color:I2[t3]??""})),se2=r(()=>({columns:[j2?n2||"label":"Part",j2?i2||"value":"Value","Share"],rows:M2.map(e4=>[e4.label??e4.id,R2(e4.value),vo(L2>0?e4.value/L2:0,"percent",A2)])}),[M2,j2,n2,i2,R2,L2,A2]),ce2=d2==="none"?"none":Hu(d2),le2=X2?M2[X2.payload.index]:void 0;return f(Iu,{chartClass:"charts-pie-chart",className:O2,style:u({"--charts-slice-stroke":ce2,"--charts-slice-stroke-width":`${Math.max(0,m2)}px`},k2),title:x2,showTitle:S2,description:C2,width:F2,height:a2,measureRef:N2,state:ee2,table:se2,legend:h2?f(sd,{items:oe2}):null,tooltip:g2&&X2&&le2?f(od,{x:X2.x,y:X2.y,visible:true,containerWidth:F2,rows:[{id:le2.id,label:B2(le2),value:V2(le2),color:I2[X2.payload.index]}]}):null,children:p(cd,{width:F2,height:a2,margins:Ed,title:x2,description:C2,interactive:g2,children:[f("g",{className:"charts-pie-chart__slices",transform:`translate(${G2}, ${K2})`,...g2?{onPointerMove:te2,onPointerLeave:ne2,"data-interactive":"true"}:{},children:q2.map((e4,t3)=>f("path",{className:"charts-pie-chart__slice",d:J2(e4)??"",fill:I2[t3],"data-slice":e4.data.id,...g2?{role:"img","aria-label":`${B2(e4.data)}: ${V2(e4.data)}`,...ae2(0,t3)}:{}},`${t3}-${e4.data.id}`))}),y2&&W2>0?p("g",{className:"charts-pie-chart__center",transform:`translate(${G2}, ${K2})`,pointerEvents:"none",children:[f("text",{className:"charts-pie-chart__center-label",textAnchor:"middle",dy:b2?"-0.1em":"0.35em",style:u({"--charts-pie-center-size":`${Math.max(14,U2*.28)}px`}),children:y2}),b2?f("text",{className:"charts-pie-chart__center-sublabel",textAnchor:"middle",dy:"1.4em",children:b2}):null]}):null]})})}function kd({innerRadius:e3=.6,className:t2,...n2}){return f(Od,{innerRadius:e3,className:s("charts-donut-chart",t2),...n2})}function Ad({label:e3,value:t2,format:n2,delta:i2,deltaFormat:a2,deltaTone:o2,caption:c2,trend:d2,data:m2,x:h2,y:g2,trendColor:_2,trendHeight:v2=36,trendTooltip:y2=true,title:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=Array.isArray(d2),A2=r(()=>k2?bu(d2):bu(m2,{x:h2,y:g2}),[k2,d2,m2,h2,g2]),j2=t2??A2.at(-1)?.y,M2=typeof j2=="number"?vo(j2,n2??"compact",O2):typeof j2=="string"&&j2!==""?j2:"—",N2=jd(i2,a2,O2),P2=l(o2??Md(i2),"neutral"),F2=A2.length>0||!k2&&(!!w2||!!T2);return p("div",{className:s("charts-metric-chart",E2),style:D2,"data-width":S2?.width?Mu(S2.width)?"narrow":"regular":void 0,children:[f("span",{className:"charts-metric-chart__label",children:e3}),f("span",{className:"charts-metric-chart__value",children:M2}),N2!==null||c2?p("div",{className:"charts-metric-chart__meta",children:[N2===null?null:f("span",{className:"charts-metric-chart__delta","data-tone":P2,style:u({"--charts-metric-delta":Vu(P2)}),children:N2}),c2?f("span",{className:"charts-metric-chart__caption",children:c2}):null]}):null,F2?f(Td,{className:"charts-metric-chart__trend",data:k2?d2:m2,x:k2?void 0:h2,y:k2?void 0:g2,height:v2,color:_2,tooltip:y2,format:n2,title:b2??e3,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2}):null]})}function jd(e3,t2,n2){if(e3==null)return null;if(typeof e3=="string")return e3;if(typeof e3!="number"||!Number.isFinite(e3))return null;let r2=vo(Math.abs(e3),t2??(Math.abs(e3)<=1?"percent":"number"),n2);return`${e3>0?"+":e3<0?"−":""}${r2}`}function Md(e3){return typeof e3=="number"?e3>0?"success":e3<0?"danger":"neutral":"neutral"}function Nd(e3){let t2=Math.abs(e3.display);return e3.value<0?-t2:t2}var Pd=6,Fd=8,Id=20,Ld=.08;function Rd(e3,t2=0){let n2=e3.flatMap(e4=>[e4.base,e4.base+e4.value]),r2=Math.max(0,...n2),i2=Math.min(0,...n2),a2=r2-i2;if(a2<=0)return[0,0];let o2=t2>0?a2/t2*Id:a2*Ld;return[i2<0?Math.floor(i2-o2):0,r2>0?Math.ceil(r2+o2):0]}var zd=e3=>e3.total?"strong":e3.value<0?"series-2":"series-1";function Bd({bars:e3,data:t2,label:n2,value:i2,total:a2,xAxis:o2,yAxis:s2,height:c2=320,valueFormatter:l2,valueLabels:u2=true,margins:m2,title:h2,showTitle:g2,description:_2,size:v2,baseProps:y2,isLoading:b2,error:x2,className:S2,style:C2}){let w2=r(()=>po(y2),[y2]),T2=!Array.isArray(e3),E2=r(()=>T2?Eu(t2,{label:n2,value:i2,total:a2}):wu(e3),[T2,e3,t2,n2,i2,a2]),{ref:D2,dims:O2}=Pu(c2,v2),k2=O2.width,A2=Mu(k2),j2=s2?.formatter,M2=s2?.format,N2=r(()=>l2??(j2?e4=>j2(e4):e4=>vo(e4,M2,w2)),[l2,j2,M2,w2]),P2=r(()=>({...s2,formatter:e4=>N2(Number(e4))}),[s2,N2]),F2=A2?wo:uo,I2=Math.max(0,c2-(m2?.top??F2.top)-(m2?.bottom??F2.bottom)),L2=r(()=>Rd(E2,I2),[E2,I2]),ee2=Fu({hasData:L2[0]!==L2[1],isLoading:b2,error:x2}),R2=To({narrow:A2,yTicks:r(()=>Is().domain(L2).range([c2-F2.bottom,F2.top]),[L2,c2,F2]).ticks(6),yAxis:P2,loc:w2,override:m2}),z2=Math.max(0,k2-R2.left-R2.right),B2=r(()=>Xo().domain(E2.map(e4=>e4.label)).range([R2.left,R2.left+z2]).padding(.25),[E2,R2.left,z2]),V2=r(()=>Is().domain(L2).range([R2.top+I2,R2.top]),[L2,R2.top,I2]),H2=r(()=>E2.map((e4,t3)=>{let n3=B2(e4.label)??0,r2=V2(e4.base),i3=V2(e4.base+e4.value),a3=Math.min(r2,i3),o3=Math.abs(e4.base+e4.value)>=Math.abs(e4.base)?e4.base+e4.value:e4.base;return{b:e4,i:t3,x:n3,top:a3,height:Math.abs(i3-r2),end:i3,down:o3<0}}),[E2,B2,V2]),U2=r(()=>({columns:[o2?.label??(T2?n2||"label":"Step"),T2?i2||"value":"Value","Start","End"],rows:E2.map(e4=>[e4.label,N2(Nd(e4)),N2(e4.base),N2(e4.base+e4.value)])}),[E2,o2?.label,T2,n2,i2,N2]),W2=B2.bandwidth();return f(Iu,{chartClass:"charts-waterfall-chart",className:S2,style:C2,title:h2,showTitle:g2,description:_2,width:k2,height:c2,measureRef:D2,state:ee2,table:U2,children:f(cd,{width:k2,height:c2,margins:R2,title:h2,description:_2,background:p(d,{children:[f(rd,{orientation:"left",scale:V2,margins:R2,width:k2,height:c2,config:P2,gridlines:true,locale:w2,narrow:A2}),f(rd,{orientation:"bottom",scale:B2,margins:R2,width:k2,height:c2,config:o2,locale:w2,narrow:A2}),L2[0]<0?f("line",{className:"charts-waterfall-chart__zero",x1:R2.left,x2:R2.left+z2,y1:V2(0),y2:V2(0)}):null]}),overlay:u2?f("g",{className:"charts-waterfall-chart__values",children:H2.map(({b:e4,i:t3,x:n3,top:r2,height:i3,down:a3})=>f("text",{className:"charts-waterfall-chart__value",x:n3+W2/2,y:a3?r2+i3+Pd+Fd:r2-Pd,textAnchor:"middle",children:N2(Nd(e4))},`${t3}-${e4.label}`))}):null,children:H2.map(({b:e4,i:t3,x:n3,top:r2,height:i3,end:a3})=>{let o3=H2[t3+1],s3=e4.base+e4.value,c3=o3!==void 0&&(Math.abs(o3.b.base-s3)<1e-9||o3.b.total===true&&Math.abs(o3.b.base+o3.b.value-s3)<1e-9);return p("g",{className:"charts-waterfall-chart__step","data-step":e4.label,"data-direction":e4.total?"total":e4.value<0?"down":"up",children:[f("rect",{className:"charts-waterfall-chart__bar",x:n3,y:r2,width:W2,height:i3,fill:Uu(e4.color??zd(e4),t3)}),c3?f("line",{className:"charts-waterfall-chart__connector",x1:n3+W2,x2:o3.x,y1:a3,y2:a3}):null]},`${t3}-${e4.label}`)})})})}export{gd as AreaChart,rd as Axis,hd as BarChart,vd as BarLineChart,Lu as ChartDataTable,Iu as ChartFrame,od as ChartTooltip,fo as DEFAULT_LOCALE,kd as DonutChart,sd as Legend,pd as LineChart,Ad as MetricChart,ju as NARROW_WIDTH,Od as PieChart,cd as PlotArea,dd as ReferenceLine,bd as ScatterChart,Td as Sparkline,Bd as WaterfallChart,lu as asChartRange,bo as axisFormatter,po as chartLocale,To as chartMargins,Fu as chartState,Ou as inferXType,Mu as isNarrow,fd as labelAnchor,Ku as markerPath,qu as projectReferenceLines,Hu as resolveColor,Uu as resolveSeriesColor,Gu as seriesColors,Ru as seriesTable,zu as seriesToken,bu as toPoints,yu as toSeries,xu as toSlices,Eu as toSteps,Qu as useChartFocus,ed as useChartHover,Pu as useDimensions};
1
+ import{useCallback as e,useEffect as t,useId as n,useMemo as r,useRef as i,useState as a}from"react";import{DEFAULT_DISPLAY_LOCALE as o,cx as s,displayLocale as c,toneOf as l,vars as u}from"@stack/core";import{Fragment as d,jsx as f,jsxs as p}from"react/jsx-runtime";var m={value:()=>{}};function h(){for(var e3=0,t2=arguments.length,n2={},r2;e3<t2;++e3){if(!(r2=arguments[e3]+"")||r2 in n2||/[\s.]/.test(r2))throw Error("illegal type: "+r2);n2[r2]=[]}return new g(n2)}function g(e3){this._=e3}function _(e3,t2){return e3.trim().split(/^|\s+/).map(function(e4){var n2="",r2=e4.indexOf(".");if(r2>=0&&(n2=e4.slice(r2+1),e4=e4.slice(0,r2)),e4&&!t2.hasOwnProperty(e4))throw Error("unknown type: "+e4);return{type:e4,name:n2}})}g.prototype=h.prototype={constructor:g,on:function(e3,t2){var n2=this._,r2=_(e3+"",n2),i2,a2=-1,o2=r2.length;if(arguments.length<2){for(;++a2<o2;)if((i2=(e3=r2[a2]).type)&&(i2=v(n2[i2],e3.name)))return i2;return}if(t2!=null&&typeof t2!="function")throw Error("invalid callback: "+t2);for(;++a2<o2;)if(i2=(e3=r2[a2]).type)n2[i2]=y(n2[i2],e3.name,t2);else if(t2==null)for(i2 in n2)n2[i2]=y(n2[i2],e3.name,null);return this},copy:function(){var e3={},t2=this._;for(var n2 in t2)e3[n2]=t2[n2].slice();return new g(e3)},call:function(e3,t2){if((i2=arguments.length-2)>0)for(var n2=Array(i2),r2=0,i2,a2;r2<i2;++r2)n2[r2]=arguments[r2+2];if(!this._.hasOwnProperty(e3))throw Error("unknown type: "+e3);for(a2=this._[e3],r2=0,i2=a2.length;r2<i2;++r2)a2[r2].value.apply(t2,n2)},apply:function(e3,t2,n2){if(!this._.hasOwnProperty(e3))throw Error("unknown type: "+e3);for(var r2=this._[e3],i2=0,a2=r2.length;i2<a2;++i2)r2[i2].value.apply(t2,n2)}};function v(e3,t2){for(var n2=0,r2=e3.length,i2;n2<r2;++n2)if((i2=e3[n2]).name===t2)return i2.value}function y(e3,t2,n2){for(var r2=0,i2=e3.length;r2<i2;++r2)if(e3[r2].name===t2){e3[r2]=m,e3=e3.slice(0,r2).concat(e3.slice(r2+1));break}return n2!=null&&e3.push({name:t2,value:n2}),e3}var b={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 x(e3){var t2=e3+="",n2=t2.indexOf(":");return n2>=0&&(t2=e3.slice(0,n2))!=="xmlns"&&(e3=e3.slice(n2+1)),b.hasOwnProperty(t2)?{space:b[t2],local:e3}:e3}function S(e3){return function(){var t2=this.ownerDocument,n2=this.namespaceURI;return n2==="http://www.w3.org/1999/xhtml"&&t2.documentElement.namespaceURI==="http://www.w3.org/1999/xhtml"?t2.createElement(e3):t2.createElementNS(n2,e3)}}function C(e3){return function(){return this.ownerDocument.createElementNS(e3.space,e3.local)}}function w(e3){var t2=x(e3);return(t2.local?C:S)(t2)}function T(){}function E(e3){return e3==null?T:function(){return this.querySelector(e3)}}function D(e3){typeof e3!="function"&&(e3=E(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=Array(o2),c2,l2,u2=0;u2<o2;++u2)(c2=a2[u2])&&(l2=e3.call(c2,c2.__data__,u2,a2))&&("__data__"in c2&&(l2.__data__=c2.__data__),s2[u2]=l2);return new vt(r2,this._parents)}function O(e3){return e3==null?[]:Array.isArray(e3)?e3:Array.from(e3)}function k(){return[]}function A(e3){return e3==null?k:function(){return this.querySelectorAll(e3)}}function j(e3){return function(){return O(e3.apply(this,arguments))}}function M(e3){e3=typeof e3=="function"?j(e3):A(e3);for(var t2=this._groups,n2=t2.length,r2=[],i2=[],a2=0;a2<n2;++a2)for(var o2=t2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)(c2=o2[l2])&&(r2.push(e3.call(c2,c2.__data__,l2,o2)),i2.push(c2));return new vt(r2,i2)}function N(e3){return function(){return this.matches(e3)}}function P(e3){return function(t2){return t2.matches(e3)}}var F=Array.prototype.find;function I(e3){return function(){return F.call(this.children,e3)}}function L(){return this.firstElementChild}function ee(e3){return this.select(e3==null?L:I(typeof e3=="function"?e3:P(e3)))}var R=Array.prototype.filter;function z(){return Array.from(this.children)}function B(e3){return function(){return R.call(this.children,e3)}}function V(e3){return this.selectAll(e3==null?z:B(typeof e3=="function"?e3:P(e3)))}function H(e3){typeof e3!="function"&&(e3=N(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=[],c2,l2=0;l2<o2;++l2)(c2=a2[l2])&&e3.call(c2,c2.__data__,l2,a2)&&s2.push(c2);return new vt(r2,this._parents)}function U(e3){return Array(e3.length)}function W(){return new vt(this._enter||this._groups.map(U),this._parents)}function G(e3,t2){this.ownerDocument=e3.ownerDocument,this.namespaceURI=e3.namespaceURI,this._next=null,this._parent=e3,this.__data__=t2}G.prototype={constructor:G,appendChild:function(e3){return this._parent.insertBefore(e3,this._next)},insertBefore:function(e3,t2){return this._parent.insertBefore(e3,t2)},querySelector:function(e3){return this._parent.querySelector(e3)},querySelectorAll:function(e3){return this._parent.querySelectorAll(e3)}};function K(e3){return function(){return e3}}function q(e3,t2,n2,r2,i2,a2){for(var o2=0,s2,c2=t2.length,l2=a2.length;o2<l2;++o2)(s2=t2[o2])?(s2.__data__=a2[o2],r2[o2]=s2):n2[o2]=new G(e3,a2[o2]);for(;o2<c2;++o2)(s2=t2[o2])&&(i2[o2]=s2)}function J(e3,t2,n2,r2,i2,a2,o2){var s2,c2,l2=new Map,u2=t2.length,d2=a2.length,f2=Array(u2),p2;for(s2=0;s2<u2;++s2)(c2=t2[s2])&&(f2[s2]=p2=o2.call(c2,c2.__data__,s2,t2)+"",l2.has(p2)?i2[s2]=c2:l2.set(p2,c2));for(s2=0;s2<d2;++s2)p2=o2.call(e3,a2[s2],s2,a2)+"",(c2=l2.get(p2))?(r2[s2]=c2,c2.__data__=a2[s2],l2.delete(p2)):n2[s2]=new G(e3,a2[s2]);for(s2=0;s2<u2;++s2)(c2=t2[s2])&&l2.get(f2[s2])===c2&&(i2[s2]=c2)}function Y(e3){return e3.__data__}function X(e3,t2){if(!arguments.length)return Array.from(this,Y);var n2=t2?J:q,r2=this._parents,i2=this._groups;typeof e3!="function"&&(e3=K(e3));for(var a2=i2.length,o2=Array(a2),s2=Array(a2),c2=Array(a2),l2=0;l2<a2;++l2){var u2=r2[l2],d2=i2[l2],f2=d2.length,p2=te(e3.call(u2,u2&&u2.__data__,l2,r2)),m2=p2.length,h2=s2[l2]=Array(m2),g2=o2[l2]=Array(m2);n2(u2,d2,h2,g2,c2[l2]=Array(f2),p2,t2);for(var _2=0,v2=0,y2,b2;_2<m2;++_2)if(y2=h2[_2]){for(_2>=v2&&(v2=_2+1);!(b2=g2[v2])&&++v2<m2;);y2._next=b2||null}}return o2=new vt(o2,r2),o2._enter=s2,o2._exit=c2,o2}function te(e3){return typeof e3=="object"&&"length"in e3?e3:Array.from(e3)}function ne(){return new vt(this._exit||this._groups.map(U),this._parents)}function re(e3,t2,n2){var r2=this.enter(),i2=this,a2=this.exit();return typeof e3=="function"?(r2=e3(r2),r2&&=r2.selection()):r2=r2.append(e3+""),t2!=null&&(i2=t2(i2),i2&&=i2.selection()),n2==null?a2.remove():n2(a2),r2&&i2?r2.merge(i2).order():i2}function ie(e3){for(var t2=e3.selection?e3.selection():e3,n2=this._groups,r2=t2._groups,i2=n2.length,a2=r2.length,o2=Math.min(i2,a2),s2=Array(i2),c2=0;c2<o2;++c2)for(var l2=n2[c2],u2=r2[c2],d2=l2.length,f2=s2[c2]=Array(d2),p2,m2=0;m2<d2;++m2)(p2=l2[m2]||u2[m2])&&(f2[m2]=p2);for(;c2<i2;++c2)s2[c2]=n2[c2];return new vt(s2,this._parents)}function ae(){for(var e3=this._groups,t2=-1,n2=e3.length;++t2<n2;)for(var r2=e3[t2],i2=r2.length-1,a2=r2[i2],o2;--i2>=0;)(o2=r2[i2])&&(a2&&o2.compareDocumentPosition(a2)^4&&a2.parentNode.insertBefore(o2,a2),a2=o2);return this}function oe(e3){e3||=se;function t2(t3,n3){return t3&&n3?e3(t3.__data__,n3.__data__):!t3-!n3}for(var n2=this._groups,r2=n2.length,i2=Array(r2),a2=0;a2<r2;++a2){for(var o2=n2[a2],s2=o2.length,c2=i2[a2]=Array(s2),l2,u2=0;u2<s2;++u2)(l2=o2[u2])&&(c2[u2]=l2);c2.sort(t2)}return new vt(i2,this._parents).order()}function se(e3,t2){return e3<t2?-1:e3>t2?1:e3>=t2?0:NaN}function ce(){var e3=arguments[0];return arguments[0]=this,e3.apply(null,arguments),this}function le(){return Array.from(this)}function ue(){for(var e3=this._groups,t2=0,n2=e3.length;t2<n2;++t2)for(var r2=e3[t2],i2=0,a2=r2.length;i2<a2;++i2){var o2=r2[i2];if(o2)return o2}return null}function de(){let e3=0;for(let t2 of this)++e3;return e3}function fe(){return!this.node()}function pe(e3){for(var t2=this._groups,n2=0,r2=t2.length;n2<r2;++n2)for(var i2=t2[n2],a2=0,o2=i2.length,s2;a2<o2;++a2)(s2=i2[a2])&&e3.call(s2,s2.__data__,a2,i2);return this}function me(e3){return function(){this.removeAttribute(e3)}}function he(e3){return function(){this.removeAttributeNS(e3.space,e3.local)}}function ge(e3,t2){return function(){this.setAttribute(e3,t2)}}function _e(e3,t2){return function(){this.setAttributeNS(e3.space,e3.local,t2)}}function ve(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?this.removeAttribute(e3):this.setAttribute(e3,n2)}}function ye(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?this.removeAttributeNS(e3.space,e3.local):this.setAttributeNS(e3.space,e3.local,n2)}}function be(e3,t2){var n2=x(e3);if(arguments.length<2){var r2=this.node();return n2.local?r2.getAttributeNS(n2.space,n2.local):r2.getAttribute(n2)}return this.each((t2==null?n2.local?he:me:typeof t2=="function"?n2.local?ye:ve:n2.local?_e:ge)(n2,t2))}function xe(e3){return e3.ownerDocument&&e3.ownerDocument.defaultView||e3.document&&e3||e3.defaultView}function Se(e3){return function(){this.style.removeProperty(e3)}}function Ce(e3,t2,n2){return function(){this.style.setProperty(e3,t2,n2)}}function we(e3,t2,n2){return function(){var r2=t2.apply(this,arguments);r2==null?this.style.removeProperty(e3):this.style.setProperty(e3,r2,n2)}}function Te(e3,t2,n2){return arguments.length>1?this.each((t2==null?Se:typeof t2=="function"?we:Ce)(e3,t2,n2??"")):Ee(this.node(),e3)}function Ee(e3,t2){return e3.style.getPropertyValue(t2)||xe(e3).getComputedStyle(e3,null).getPropertyValue(t2)}function De(e3){return function(){delete this[e3]}}function Oe(e3,t2){return function(){this[e3]=t2}}function ke(e3,t2){return function(){var n2=t2.apply(this,arguments);n2==null?delete this[e3]:this[e3]=n2}}function Ae(e3,t2){return arguments.length>1?this.each((t2==null?De:typeof t2=="function"?ke:Oe)(e3,t2)):this.node()[e3]}function je(e3){return e3.trim().split(/^|\s+/)}function Me(e3){return e3.classList||new Ne(e3)}function Ne(e3){this._node=e3,this._names=je(e3.getAttribute("class")||"")}Ne.prototype={add:function(e3){this._names.indexOf(e3)<0&&(this._names.push(e3),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e3){var t2=this._names.indexOf(e3);t2>=0&&(this._names.splice(t2,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e3){return this._names.indexOf(e3)>=0}};function Pe(e3,t2){for(var n2=Me(e3),r2=-1,i2=t2.length;++r2<i2;)n2.add(t2[r2])}function Fe(e3,t2){for(var n2=Me(e3),r2=-1,i2=t2.length;++r2<i2;)n2.remove(t2[r2])}function Ie(e3){return function(){Pe(this,e3)}}function Le(e3){return function(){Fe(this,e3)}}function Re(e3,t2){return function(){(t2.apply(this,arguments)?Pe:Fe)(this,e3)}}function ze(e3,t2){var n2=je(e3+"");if(arguments.length<2){for(var r2=Me(this.node()),i2=-1,a2=n2.length;++i2<a2;)if(!r2.contains(n2[i2]))return false;return true}return this.each((typeof t2=="function"?Re:t2?Ie:Le)(n2,t2))}function Be(){this.textContent=""}function Ve(e3){return function(){this.textContent=e3}}function He(e3){return function(){var t2=e3.apply(this,arguments);this.textContent=t2??""}}function Ue(e3){return arguments.length?this.each(e3==null?Be:(typeof e3=="function"?He:Ve)(e3)):this.node().textContent}function We(){this.innerHTML=""}function Ge(e3){return function(){this.innerHTML=e3}}function Ke(e3){return function(){var t2=e3.apply(this,arguments);this.innerHTML=t2??""}}function qe(e3){return arguments.length?this.each(e3==null?We:(typeof e3=="function"?Ke:Ge)(e3)):this.node().innerHTML}function Je(){this.nextSibling&&this.parentNode.appendChild(this)}function Ye(){return this.each(Je)}function Xe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Ze(){return this.each(Xe)}function Qe(e3){var t2=typeof e3=="function"?e3:w(e3);return this.select(function(){return this.appendChild(t2.apply(this,arguments))})}function $e(){return null}function et(e3,t2){var n2=typeof e3=="function"?e3:w(e3),r2=t2==null?$e:typeof t2=="function"?t2:E(t2);return this.select(function(){return this.insertBefore(n2.apply(this,arguments),r2.apply(this,arguments)||null)})}function tt(){var e3=this.parentNode;e3&&e3.removeChild(this)}function nt(){return this.each(tt)}function rt(){var e3=this.cloneNode(false),t2=this.parentNode;return t2?t2.insertBefore(e3,this.nextSibling):e3}function it(){var e3=this.cloneNode(true),t2=this.parentNode;return t2?t2.insertBefore(e3,this.nextSibling):e3}function at(e3){return this.select(e3?it:rt)}function ot(e3){return arguments.length?this.property("__data__",e3):this.node().__data__}function st(e3){return function(t2){e3.call(this,t2,this.__data__)}}function ct(e3){return e3.trim().split(/^|\s+/).map(function(e4){var t2="",n2=e4.indexOf(".");return n2>=0&&(t2=e4.slice(n2+1),e4=e4.slice(0,n2)),{type:e4,name:t2}})}function lt(e3){return function(){var t2=this.__on;if(t2){for(var n2=0,r2=-1,i2=t2.length,a2;n2<i2;++n2)a2=t2[n2],(!e3.type||a2.type===e3.type)&&a2.name===e3.name?this.removeEventListener(a2.type,a2.listener,a2.options):t2[++r2]=a2;++r2?t2.length=r2:delete this.__on}}}function ut(e3,t2,n2){return function(){var r2=this.__on,i2,a2=st(t2);if(r2){for(var o2=0,s2=r2.length;o2<s2;++o2)if((i2=r2[o2]).type===e3.type&&i2.name===e3.name){this.removeEventListener(i2.type,i2.listener,i2.options),this.addEventListener(i2.type,i2.listener=a2,i2.options=n2),i2.value=t2;return}}this.addEventListener(e3.type,a2,n2),i2={type:e3.type,name:e3.name,value:t2,listener:a2,options:n2},r2?r2.push(i2):this.__on=[i2]}}function dt(e3,t2,n2){var r2=ct(e3+""),i2,a2=r2.length,o2;if(arguments.length<2){var s2=this.node().__on;if(s2){for(var c2=0,l2=s2.length,u2;c2<l2;++c2)for(i2=0,u2=s2[c2];i2<a2;++i2)if((o2=r2[i2]).type===u2.type&&o2.name===u2.name)return u2.value}return}for(s2=t2?ut:lt,i2=0;i2<a2;++i2)this.each(s2(r2[i2],t2,n2));return this}function ft(e3,t2,n2){var r2=xe(e3),i2=r2.CustomEvent;typeof i2=="function"?i2=new i2(t2,n2):(i2=r2.document.createEvent("Event"),n2?(i2.initEvent(t2,n2.bubbles,n2.cancelable),i2.detail=n2.detail):i2.initEvent(t2,false,false)),e3.dispatchEvent(i2)}function pt(e3,t2){return function(){return ft(this,e3,t2)}}function mt(e3,t2){return function(){return ft(this,e3,t2.apply(this,arguments))}}function ht(e3,t2){return this.each((typeof t2=="function"?mt:pt)(e3,t2))}function*gt(){for(var e3=this._groups,t2=0,n2=e3.length;t2<n2;++t2)for(var r2=e3[t2],i2=0,a2=r2.length,o2;i2<a2;++i2)(o2=r2[i2])&&(yield o2)}var _t=[null];function vt(e3,t2){this._groups=e3,this._parents=t2}function yt(){return new vt([[document.documentElement]],_t)}function bt(){return this}vt.prototype=yt.prototype={constructor:vt,select:D,selectAll:M,selectChild:ee,selectChildren:V,filter:H,data:X,enter:W,exit:ne,join:re,merge:ie,selection:bt,order:ae,sort:oe,call:ce,nodes:le,node:ue,size:de,empty:fe,each:pe,attr:be,style:Te,property:Ae,classed:ze,text:Ue,html:qe,raise:Ye,lower:Ze,append:Qe,insert:et,remove:nt,clone:at,datum:ot,on:dt,dispatch:ht,[Symbol.iterator]:gt};function xt(e3){return typeof e3=="string"?new vt([[document.querySelector(e3)]],[document.documentElement]):new vt([[e3]],_t)}function St(e3){let t2;for(;t2=e3.sourceEvent;)e3=t2;return e3}function Ct(e3,t2){if(e3=St(e3),t2===void 0&&(t2=e3.currentTarget),t2){var n2=t2.ownerSVGElement||t2;if(n2.createSVGPoint){var r2=n2.createSVGPoint();return r2.x=e3.clientX,r2.y=e3.clientY,r2=r2.matrixTransform(t2.getScreenCTM().inverse()),[r2.x,r2.y]}if(t2.getBoundingClientRect){var i2=t2.getBoundingClientRect();return[e3.clientX-i2.left-t2.clientLeft,e3.clientY-i2.top-t2.clientTop]}}return[e3.pageX,e3.pageY]}var wt={capture:true,passive:false};function Tt(e3){e3.preventDefault(),e3.stopImmediatePropagation()}function Et(e3){var t2=e3.document.documentElement,n2=xt(e3).on("dragstart.drag",Tt,wt);"onselectstart"in t2?n2.on("selectstart.drag",Tt,wt):(t2.__noselect=t2.style.MozUserSelect,t2.style.MozUserSelect="none")}function Dt(e3,t2){var n2=e3.document.documentElement,r2=xt(e3).on("dragstart.drag",null);t2&&(r2.on("click.drag",Tt,wt),setTimeout(function(){r2.on("click.drag",null)},0)),"onselectstart"in n2?r2.on("selectstart.drag",null):(n2.style.MozUserSelect=n2.__noselect,delete n2.__noselect)}function Ot(e3,t2,n2){e3.prototype=t2.prototype=n2,n2.constructor=e3}function kt(e3,t2){var n2=Object.create(e3.prototype);for(var r2 in t2)n2[r2]=t2[r2];return n2}function At(){}var jt=.7,Mt=1/jt,Nt="\\s*([+-]?\\d+)\\s*",Pt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Ft="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",It=/^#([0-9a-f]{3,8})$/,Lt=RegExp(`^rgb\\(${Nt},${Nt},${Nt}\\)$`),Rt=RegExp(`^rgb\\(${Ft},${Ft},${Ft}\\)$`),zt=RegExp(`^rgba\\(${Nt},${Nt},${Nt},${Pt}\\)$`),Bt=RegExp(`^rgba\\(${Ft},${Ft},${Ft},${Pt}\\)$`),Vt=RegExp(`^hsl\\(${Pt},${Ft},${Ft}\\)$`),Ht=RegExp(`^hsla\\(${Pt},${Ft},${Ft},${Pt}\\)$`),Ut={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};Ot(At,Jt,{copy(e3){return Object.assign(new this.constructor,this,e3)},displayable(){return this.rgb().displayable()},hex:Wt,formatHex:Wt,formatHex8:Gt,formatHsl:Kt,formatRgb:qt,toString:qt});function Wt(){return this.rgb().formatHex()}function Gt(){return this.rgb().formatHex8()}function Kt(){return cn(this).formatHsl()}function qt(){return this.rgb().formatRgb()}function Jt(e3){var t2,n2;return e3=(e3+"").trim().toLowerCase(),(t2=It.exec(e3))?(n2=t2[1].length,t2=parseInt(t2[1],16),n2===6?Yt(t2):n2===3?new $t(t2>>8&15|t2>>4&240,t2>>4&15|t2&240,(t2&15)<<4|t2&15,1):n2===8?Xt(t2>>24&255,t2>>16&255,t2>>8&255,(t2&255)/255):n2===4?Xt(t2>>12&15|t2>>8&240,t2>>8&15|t2>>4&240,t2>>4&15|t2&240,((t2&15)<<4|t2&15)/255):null):(t2=Lt.exec(e3))?new $t(t2[1],t2[2],t2[3],1):(t2=Rt.exec(e3))?new $t(t2[1]*255/100,t2[2]*255/100,t2[3]*255/100,1):(t2=zt.exec(e3))?Xt(t2[1],t2[2],t2[3],t2[4]):(t2=Bt.exec(e3))?Xt(t2[1]*255/100,t2[2]*255/100,t2[3]*255/100,t2[4]):(t2=Vt.exec(e3))?sn(t2[1],t2[2]/100,t2[3]/100,1):(t2=Ht.exec(e3))?sn(t2[1],t2[2]/100,t2[3]/100,t2[4]):Ut.hasOwnProperty(e3)?Yt(Ut[e3]):e3==="transparent"?new $t(NaN,NaN,NaN,0):null}function Yt(e3){return new $t(e3>>16&255,e3>>8&255,e3&255,1)}function Xt(e3,t2,n2,r2){return r2<=0&&(e3=t2=n2=NaN),new $t(e3,t2,n2,r2)}function Zt(e3){return e3 instanceof At||(e3=Jt(e3)),e3?(e3=e3.rgb(),new $t(e3.r,e3.g,e3.b,e3.opacity)):new $t}function Qt(e3,t2,n2,r2){return arguments.length===1?Zt(e3):new $t(e3,t2,n2,r2??1)}function $t(e3,t2,n2,r2){this.r=+e3,this.g=+t2,this.b=+n2,this.opacity=+r2}Ot($t,Qt,kt(At,{brighter(e3){return e3=e3==null?Mt:Mt**+e3,new $t(this.r*e3,this.g*e3,this.b*e3,this.opacity)},darker(e3){return e3=e3==null?jt:jt**+e3,new $t(this.r*e3,this.g*e3,this.b*e3,this.opacity)},rgb(){return this},clamp(){return new $t(an(this.r),an(this.g),an(this.b),rn(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:en,formatHex:en,formatHex8:tn,formatRgb:nn,toString:nn}));function en(){return`#${on(this.r)}${on(this.g)}${on(this.b)}`}function tn(){return`#${on(this.r)}${on(this.g)}${on(this.b)}${on((isNaN(this.opacity)?1:this.opacity)*255)}`}function nn(){let e3=rn(this.opacity);return`${e3===1?"rgb(":"rgba("}${an(this.r)}, ${an(this.g)}, ${an(this.b)}${e3===1?")":`, ${e3})`}`}function rn(e3){return isNaN(e3)?1:Math.max(0,Math.min(1,e3))}function an(e3){return Math.max(0,Math.min(255,Math.round(e3)||0))}function on(e3){return e3=an(e3),(e3<16?"0":"")+e3.toString(16)}function sn(e3,t2,n2,r2){return r2<=0?e3=t2=n2=NaN:n2<=0||n2>=1?e3=t2=NaN:t2<=0&&(e3=NaN),new un(e3,t2,n2,r2)}function cn(e3){if(e3 instanceof un)return new un(e3.h,e3.s,e3.l,e3.opacity);if(e3 instanceof At||(e3=Jt(e3)),!e3)return new un;if(e3 instanceof un)return e3;e3=e3.rgb();var t2=e3.r/255,n2=e3.g/255,r2=e3.b/255,i2=Math.min(t2,n2,r2),a2=Math.max(t2,n2,r2),o2=NaN,s2=a2-i2,c2=(a2+i2)/2;return s2?(o2=t2===a2?(n2-r2)/s2+(n2<r2)*6:n2===a2?(r2-t2)/s2+2:(t2-n2)/s2+4,s2/=c2<.5?a2+i2:2-a2-i2,o2*=60):s2=c2>0&&c2<1?0:o2,new un(o2,s2,c2,e3.opacity)}function ln(e3,t2,n2,r2){return arguments.length===1?cn(e3):new un(e3,t2,n2,r2??1)}function un(e3,t2,n2,r2){this.h=+e3,this.s=+t2,this.l=+n2,this.opacity=+r2}Ot(un,ln,kt(At,{brighter(e3){return e3=e3==null?Mt:Mt**+e3,new un(this.h,this.s,this.l*e3,this.opacity)},darker(e3){return e3=e3==null?jt:jt**+e3,new un(this.h,this.s,this.l*e3,this.opacity)},rgb(){var e3=this.h%360+(this.h<0)*360,t2=isNaN(e3)||isNaN(this.s)?0:this.s,n2=this.l,r2=n2+(n2<.5?n2:1-n2)*t2,i2=2*n2-r2;return new $t(pn(e3>=240?e3-240:e3+120,i2,r2),pn(e3,i2,r2),pn(e3<120?e3+240:e3-120,i2,r2),this.opacity)},clamp(){return new un(dn(this.h),fn(this.s),fn(this.l),rn(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 e3=rn(this.opacity);return`${e3===1?"hsl(":"hsla("}${dn(this.h)}, ${fn(this.s)*100}%, ${fn(this.l)*100}%${e3===1?")":`, ${e3})`}`}}));function dn(e3){return e3=(e3||0)%360,e3<0?e3+360:e3}function fn(e3){return Math.max(0,Math.min(1,e3||0))}function pn(e3,t2,n2){return(e3<60?t2+(n2-t2)*e3/60:e3<180?n2:e3<240?t2+(n2-t2)*(240-e3)/60:t2)*255}var mn=e3=>()=>e3;function hn(e3,t2){return function(n2){return e3+n2*t2}}function gn(e3,t2,n2){return e3**=+n2,t2=t2**+n2-e3,n2=1/n2,function(r2){return(e3+r2*t2)**+n2}}function _n(e3){return(e3=+e3)==1?vn:function(t2,n2){return n2-t2?gn(t2,n2,e3):mn(isNaN(t2)?n2:t2)}}function vn(e3,t2){var n2=t2-e3;return n2?hn(e3,n2):mn(isNaN(e3)?t2:e3)}var yn=(function e2(t2){var n2=_n(t2);function r2(e3,t3){var r3=n2((e3=Qt(e3)).r,(t3=Qt(t3)).r),i2=n2(e3.g,t3.g),a2=n2(e3.b,t3.b),o2=vn(e3.opacity,t3.opacity);return function(t4){return e3.r=r3(t4),e3.g=i2(t4),e3.b=a2(t4),e3.opacity=o2(t4),e3+""}}return r2.gamma=e2,r2})(1);function bn(e3,t2){t2||=[];var n2=e3?Math.min(t2.length,e3.length):0,r2=t2.slice(),i2;return function(a2){for(i2=0;i2<n2;++i2)r2[i2]=e3[i2]*(1-a2)+t2[i2]*a2;return r2}}function xn(e3){return ArrayBuffer.isView(e3)&&!(e3 instanceof DataView)}function Sn(e3,t2){for(var n2=t2?t2.length:0,r2=e3?Math.min(n2,e3.length):0,i2=Array(r2),a2=Array(n2),o2=0;o2<r2;++o2)i2[o2]=jn(e3[o2],t2[o2]);for(;o2<n2;++o2)a2[o2]=t2[o2];return function(e4){for(o2=0;o2<r2;++o2)a2[o2]=i2[o2](e4);return a2}}function Cn(e3,t2){var n2=new Date;return e3=+e3,t2=+t2,function(r2){return n2.setTime(e3*(1-r2)+t2*r2),n2}}function wn(e3,t2){return e3=+e3,t2=+t2,function(n2){return e3*(1-n2)+t2*n2}}function Tn(e3,t2){var n2={},r2={},i2;for(i2 in(typeof e3!="object"||!e3)&&(e3={}),(typeof t2!="object"||!t2)&&(t2={}),t2)i2 in e3?n2[i2]=jn(e3[i2],t2[i2]):r2[i2]=t2[i2];return function(e4){for(i2 in n2)r2[i2]=n2[i2](e4);return r2}}var En=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,Dn=new RegExp(En.source,"g");function On(e3){return function(){return e3}}function kn(e3){return function(t2){return e3(t2)+""}}function An(e3,t2){var n2=En.lastIndex=Dn.lastIndex=0,r2,i2,a2,o2=-1,s2=[],c2=[];for(e3+="",t2+="";(r2=En.exec(e3))&&(i2=Dn.exec(t2));)(a2=i2.index)>n2&&(a2=t2.slice(n2,a2),s2[o2]?s2[o2]+=a2:s2[++o2]=a2),(r2=r2[0])===(i2=i2[0])?s2[o2]?s2[o2]+=i2:s2[++o2]=i2:(s2[++o2]=null,c2.push({i:o2,x:wn(r2,i2)})),n2=Dn.lastIndex;return n2<t2.length&&(a2=t2.slice(n2),s2[o2]?s2[o2]+=a2:s2[++o2]=a2),s2.length<2?c2[0]?kn(c2[0].x):On(t2):(t2=c2.length,function(e4){for(var n3=0,r3;n3<t2;++n3)s2[(r3=c2[n3]).i]=r3.x(e4);return s2.join("")})}function jn(e3,t2){var n2=typeof t2,r2;return t2==null||n2==="boolean"?mn(t2):(n2==="number"?wn:n2==="string"?(r2=Jt(t2))?(t2=r2,yn):An:t2 instanceof Jt?yn:t2 instanceof Date?Cn:xn(t2)?bn:Array.isArray(t2)?Sn:typeof t2.valueOf!="function"&&typeof t2.toString!="function"||isNaN(t2)?Tn:wn)(e3,t2)}function Mn(e3,t2){return e3=+e3,t2=+t2,function(n2){return Math.round(e3*(1-n2)+t2*n2)}}var Nn=180/Math.PI,Pn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Fn(e3,t2,n2,r2,i2,a2){var o2,s2,c2;return(o2=Math.sqrt(e3*e3+t2*t2))&&(e3/=o2,t2/=o2),(c2=e3*n2+t2*r2)&&(n2-=e3*c2,r2-=t2*c2),(s2=Math.sqrt(n2*n2+r2*r2))&&(n2/=s2,r2/=s2,c2/=s2),e3*r2<t2*n2&&(e3=-e3,t2=-t2,c2=-c2,o2=-o2),{translateX:i2,translateY:a2,rotate:Math.atan2(t2,e3)*Nn,skewX:Math.atan(c2)*Nn,scaleX:o2,scaleY:s2}}var In;function Ln(e3){let t2=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e3+"");return t2.isIdentity?Pn:Fn(t2.a,t2.b,t2.c,t2.d,t2.e,t2.f)}function Rn(e3){return e3==null||(In||=document.createElementNS("http://www.w3.org/2000/svg","g"),In.setAttribute("transform",e3),!(e3=In.transform.baseVal.consolidate()))?Pn:(e3=e3.matrix,Fn(e3.a,e3.b,e3.c,e3.d,e3.e,e3.f))}function zn(e3,t2,n2,r2){function i2(e4){return e4.length?e4.pop()+" ":""}function a2(e4,r3,i3,a3,o3,s3){if(e4!==i3||r3!==a3){var c3=o3.push("translate(",null,t2,null,n2);s3.push({i:c3-4,x:wn(e4,i3)},{i:c3-2,x:wn(r3,a3)})}else(i3||a3)&&o3.push("translate("+i3+t2+a3+n2)}function o2(e4,t3,n3,a3){e4===t3?t3&&n3.push(i2(n3)+"rotate("+t3+r2):(e4-t3>180?t3+=360:t3-e4>180&&(e4+=360),a3.push({i:n3.push(i2(n3)+"rotate(",null,r2)-2,x:wn(e4,t3)}))}function s2(e4,t3,n3,a3){e4===t3?t3&&n3.push(i2(n3)+"skewX("+t3+r2):a3.push({i:n3.push(i2(n3)+"skewX(",null,r2)-2,x:wn(e4,t3)})}function c2(e4,t3,n3,r3,a3,o3){if(e4!==n3||t3!==r3){var s3=a3.push(i2(a3)+"scale(",null,",",null,")");o3.push({i:s3-4,x:wn(e4,n3)},{i:s3-2,x:wn(t3,r3)})}else(n3!==1||r3!==1)&&a3.push(i2(a3)+"scale("+n3+","+r3+")")}return function(t3,n3){var r3=[],i3=[];return t3=e3(t3),n3=e3(n3),a2(t3.translateX,t3.translateY,n3.translateX,n3.translateY,r3,i3),o2(t3.rotate,n3.rotate,r3,i3),s2(t3.skewX,n3.skewX,r3,i3),c2(t3.scaleX,t3.scaleY,n3.scaleX,n3.scaleY,r3,i3),t3=n3=null,function(e4){for(var t4=-1,n4=i3.length,a3;++t4<n4;)r3[(a3=i3[t4]).i]=a3.x(e4);return r3.join("")}}}var Bn=zn(Ln,"px, ","px)","deg)"),Vn=zn(Rn,", ",")",")"),Hn=0,Un=0,Wn=0,Gn=1e3,Kn,qn,Jn=0,Yn=0,Xn=0,Zn=typeof performance=="object"&&performance.now?performance:Date,Qn=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e3){setTimeout(e3,17)};function $n(){return Yn||=(Qn(er),Zn.now()+Xn)}function er(){Yn=0}function tr(){this._call=this._time=this._next=null}tr.prototype=nr.prototype={constructor:tr,restart:function(e3,t2,n2){if(typeof e3!="function")throw TypeError("callback is not a function");n2=(n2==null?$n():+n2)+(t2==null?0:+t2),!this._next&&qn!==this&&(qn?qn._next=this:Kn=this,qn=this),this._call=e3,this._time=n2,sr()},stop:function(){this._call&&(this._call=null,this._time=Infinity,sr())}};function nr(e3,t2,n2){var r2=new tr;return r2.restart(e3,t2,n2),r2}function rr(){$n(),++Hn;for(var e3=Kn,t2;e3;)(t2=Yn-e3._time)>=0&&e3._call.call(void 0,t2),e3=e3._next;--Hn}function ir(){Yn=(Jn=Zn.now())+Xn,Hn=Un=0;try{rr()}finally{Hn=0,or(),Yn=0}}function ar(){var e3=Zn.now(),t2=e3-Jn;t2>Gn&&(Xn-=t2,Jn=e3)}function or(){for(var e3,t2=Kn,n2,r2=Infinity;t2;)t2._call?(r2>t2._time&&(r2=t2._time),e3=t2,t2=t2._next):(n2=t2._next,t2._next=null,t2=e3?e3._next=n2:Kn=n2);qn=e3,sr(r2)}function sr(e3){Hn||(Un&&=clearTimeout(Un),e3-Yn>24?(e3<Infinity&&(Un=setTimeout(ir,e3-Zn.now()-Xn)),Wn&&=clearInterval(Wn)):(Wn||=(Jn=Zn.now(),setInterval(ar,Gn)),Hn=1,Qn(ir)))}function cr(e3,t2,n2){var r2=new tr;return t2=t2==null?0:+t2,r2.restart(n3=>{r2.stop(),e3(n3+t2)},t2,n2),r2}var lr=h("start","end","cancel","interrupt"),ur=[];function dr(e3,t2,n2,r2,i2,a2){var o2=e3.__transition;if(!o2)e3.__transition={};else if(n2 in o2)return;hr(e3,n2,{name:t2,index:r2,group:i2,on:lr,tween:ur,time:a2.time,delay:a2.delay,duration:a2.duration,ease:a2.ease,timer:null,state:0})}function fr(e3,t2){var n2=mr(e3,t2);if(n2.state>0)throw Error("too late; already scheduled");return n2}function pr(e3,t2){var n2=mr(e3,t2);if(n2.state>3)throw Error("too late; already running");return n2}function mr(e3,t2){var n2=e3.__transition;if(!n2||!(n2=n2[t2]))throw Error("transition not found");return n2}function hr(e3,t2,n2){var r2=e3.__transition,i2;r2[t2]=n2,n2.timer=nr(a2,0,n2.time);function a2(e4){n2.state=1,n2.timer.restart(o2,n2.delay,n2.time),n2.delay<=e4&&o2(e4-n2.delay)}function o2(a3){var l2,u2,d2,f2;if(n2.state!==1)return c2();for(l2 in r2)if(f2=r2[l2],f2.name===n2.name){if(f2.state===3)return cr(o2);f2.state===4?(f2.state=6,f2.timer.stop(),f2.on.call("interrupt",e3,e3.__data__,f2.index,f2.group),delete r2[l2]):+l2<t2&&(f2.state=6,f2.timer.stop(),f2.on.call("cancel",e3,e3.__data__,f2.index,f2.group),delete r2[l2])}if(cr(function(){n2.state===3&&(n2.state=4,n2.timer.restart(s2,n2.delay,n2.time),s2(a3))}),n2.state=2,n2.on.call("start",e3,e3.__data__,n2.index,n2.group),n2.state===2){for(n2.state=3,i2=Array(d2=n2.tween.length),l2=0,u2=-1;l2<d2;++l2)(f2=n2.tween[l2].value.call(e3,e3.__data__,n2.index,n2.group))&&(i2[++u2]=f2);i2.length=u2+1}}function s2(t3){for(var r3=t3<n2.duration?n2.ease.call(null,t3/n2.duration):(n2.timer.restart(c2),n2.state=5,1),a3=-1,o3=i2.length;++a3<o3;)i2[a3].call(e3,r3);n2.state===5&&(n2.on.call("end",e3,e3.__data__,n2.index,n2.group),c2())}function c2(){for(var i3 in n2.state=6,n2.timer.stop(),delete r2[t2],r2)return;delete e3.__transition}}function gr(e3,t2){var n2=e3.__transition,r2,i2,a2=true,o2;if(n2){for(o2 in t2=t2==null?null:t2+"",n2){if((r2=n2[o2]).name!==t2){a2=false;continue}i2=r2.state>2&&r2.state<5,r2.state=6,r2.timer.stop(),r2.on.call(i2?"interrupt":"cancel",e3,e3.__data__,r2.index,r2.group),delete n2[o2]}a2&&delete e3.__transition}}function _r(e3){return this.each(function(){gr(this,e3)})}function vr(e3,t2){var n2,r2;return function(){var i2=pr(this,e3),a2=i2.tween;if(a2!==n2){r2=n2=a2;for(var o2=0,s2=r2.length;o2<s2;++o2)if(r2[o2].name===t2){r2=r2.slice(),r2.splice(o2,1);break}}i2.tween=r2}}function yr(e3,t2,n2){var r2,i2;if(typeof n2!="function")throw Error();return function(){var a2=pr(this,e3),o2=a2.tween;if(o2!==r2){i2=(r2=o2).slice();for(var s2={name:t2,value:n2},c2=0,l2=i2.length;c2<l2;++c2)if(i2[c2].name===t2){i2[c2]=s2;break}c2===l2&&i2.push(s2)}a2.tween=i2}}function br(e3,t2){var n2=this._id;if(e3+="",arguments.length<2){for(var r2=mr(this.node(),n2).tween,i2=0,a2=r2.length,o2;i2<a2;++i2)if((o2=r2[i2]).name===e3)return o2.value;return null}return this.each((t2==null?vr:yr)(n2,e3,t2))}function xr(e3,t2,n2){var r2=e3._id;return e3.each(function(){var e4=pr(this,r2);(e4.value||={})[t2]=n2.apply(this,arguments)}),function(e4){return mr(e4,r2).value[t2]}}function Sr(e3,t2){var n2;return(typeof t2=="number"?wn:t2 instanceof Jt?yn:(n2=Jt(t2))?(t2=n2,yn):An)(e3,t2)}function Cr(e3){return function(){this.removeAttribute(e3)}}function wr(e3){return function(){this.removeAttributeNS(e3.space,e3.local)}}function Tr(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=this.getAttribute(e3);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function Er(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=this.getAttributeNS(e3.space,e3.local);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function Dr(e3,t2,n2){var r2,i2,a2;return function(){var o2,s2=n2(this),c2;return s2==null?void this.removeAttribute(e3):(o2=this.getAttribute(e3),c2=s2+"",o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2)))}}function Or(e3,t2,n2){var r2,i2,a2;return function(){var o2,s2=n2(this),c2;return s2==null?void this.removeAttributeNS(e3.space,e3.local):(o2=this.getAttributeNS(e3.space,e3.local),c2=s2+"",o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2)))}}function kr(e3,t2){var n2=x(e3),r2=n2==="transform"?Vn:Sr;return this.attrTween(e3,typeof t2=="function"?(n2.local?Or:Dr)(n2,r2,xr(this,"attr."+e3,t2)):t2==null?(n2.local?wr:Cr)(n2):(n2.local?Er:Tr)(n2,r2,t2))}function Ar(e3,t2){return function(n2){this.setAttribute(e3,t2.call(this,n2))}}function jr(e3,t2){return function(n2){this.setAttributeNS(e3.space,e3.local,t2.call(this,n2))}}function Mr(e3,t2){var n2,r2;function i2(){var i3=t2.apply(this,arguments);return i3!==r2&&(n2=(r2=i3)&&jr(e3,i3)),n2}return i2._value=t2,i2}function Nr(e3,t2){var n2,r2;function i2(){var i3=t2.apply(this,arguments);return i3!==r2&&(n2=(r2=i3)&&Ar(e3,i3)),n2}return i2._value=t2,i2}function Pr(e3,t2){var n2="attr."+e3;if(arguments.length<2)return(n2=this.tween(n2))&&n2._value;if(t2==null)return this.tween(n2,null);if(typeof t2!="function")throw Error();var r2=x(e3);return this.tween(n2,(r2.local?Mr:Nr)(r2,t2))}function Fr(e3,t2){return function(){fr(this,e3).delay=+t2.apply(this,arguments)}}function Ir(e3,t2){return t2=+t2,function(){fr(this,e3).delay=t2}}function Lr(e3){var t2=this._id;return arguments.length?this.each((typeof e3=="function"?Fr:Ir)(t2,e3)):mr(this.node(),t2).delay}function Rr(e3,t2){return function(){pr(this,e3).duration=+t2.apply(this,arguments)}}function zr(e3,t2){return t2=+t2,function(){pr(this,e3).duration=t2}}function Br(e3){var t2=this._id;return arguments.length?this.each((typeof e3=="function"?Rr:zr)(t2,e3)):mr(this.node(),t2).duration}function Vr(e3,t2){if(typeof t2!="function")throw Error();return function(){pr(this,e3).ease=t2}}function Hr(e3){var t2=this._id;return arguments.length?this.each(Vr(t2,e3)):mr(this.node(),t2).ease}function Ur(e3,t2){return function(){var n2=t2.apply(this,arguments);if(typeof n2!="function")throw Error();pr(this,e3).ease=n2}}function Wr(e3){if(typeof e3!="function")throw Error();return this.each(Ur(this._id,e3))}function Gr(e3){typeof e3!="function"&&(e3=N(e3));for(var t2=this._groups,n2=t2.length,r2=Array(n2),i2=0;i2<n2;++i2)for(var a2=t2[i2],o2=a2.length,s2=r2[i2]=[],c2,l2=0;l2<o2;++l2)(c2=a2[l2])&&e3.call(c2,c2.__data__,l2,a2)&&s2.push(c2);return new bi(r2,this._parents,this._name,this._id)}function Kr(e3){if(e3._id!==this._id)throw Error();for(var t2=this._groups,n2=e3._groups,r2=t2.length,i2=n2.length,a2=Math.min(r2,i2),o2=Array(r2),s2=0;s2<a2;++s2)for(var c2=t2[s2],l2=n2[s2],u2=c2.length,d2=o2[s2]=Array(u2),f2,p2=0;p2<u2;++p2)(f2=c2[p2]||l2[p2])&&(d2[p2]=f2);for(;s2<r2;++s2)o2[s2]=t2[s2];return new bi(o2,this._parents,this._name,this._id)}function qr(e3){return(e3+"").trim().split(/^|\s+/).every(function(e4){var t2=e4.indexOf(".");return t2>=0&&(e4=e4.slice(0,t2)),!e4||e4==="start"})}function Jr(e3,t2,n2){var r2,i2,a2=qr(t2)?fr:pr;return function(){var o2=a2(this,e3),s2=o2.on;s2!==r2&&(i2=(r2=s2).copy()).on(t2,n2),o2.on=i2}}function Yr(e3,t2){var n2=this._id;return arguments.length<2?mr(this.node(),n2).on.on(e3):this.each(Jr(n2,e3,t2))}function Xr(e3){return function(){var t2=this.parentNode;for(var n2 in this.__transition)if(+n2!==e3)return;t2&&t2.removeChild(this)}}function Zr(){return this.on("end.remove",Xr(this._id))}function Qr(e3){var t2=this._name,n2=this._id;typeof e3!="function"&&(e3=E(e3));for(var r2=this._groups,i2=r2.length,a2=Array(i2),o2=0;o2<i2;++o2)for(var s2=r2[o2],c2=s2.length,l2=a2[o2]=Array(c2),u2,d2,f2=0;f2<c2;++f2)(u2=s2[f2])&&(d2=e3.call(u2,u2.__data__,f2,s2))&&("__data__"in u2&&(d2.__data__=u2.__data__),l2[f2]=d2,dr(l2[f2],t2,n2,f2,l2,mr(u2,n2)));return new bi(a2,this._parents,t2,n2)}function $r(e3){var t2=this._name,n2=this._id;typeof e3!="function"&&(e3=A(e3));for(var r2=this._groups,i2=r2.length,a2=[],o2=[],s2=0;s2<i2;++s2)for(var c2=r2[s2],l2=c2.length,u2,d2=0;d2<l2;++d2)if(u2=c2[d2]){for(var f2=e3.call(u2,u2.__data__,d2,c2),p2,m2=mr(u2,n2),h2=0,g2=f2.length;h2<g2;++h2)(p2=f2[h2])&&dr(p2,t2,n2,h2,f2,m2);a2.push(f2),o2.push(u2)}return new bi(a2,o2,t2,n2)}var ei=yt.prototype.constructor;function ti(){return new ei(this._groups,this._parents)}function ni(e3,t2){var n2,r2,i2;return function(){var a2=Ee(this,e3),o2=(this.style.removeProperty(e3),Ee(this,e3));return a2===o2?null:a2===n2&&o2===r2?i2:i2=t2(n2=a2,r2=o2)}}function ri(e3){return function(){this.style.removeProperty(e3)}}function ii(e3,t2,n2){var r2,i2=n2+"",a2;return function(){var o2=Ee(this,e3);return o2===i2?null:o2===r2?a2:a2=t2(r2=o2,n2)}}function ai(e3,t2,n2){var r2,i2,a2;return function(){var o2=Ee(this,e3),s2=n2(this),c2=s2+"";return s2??(c2=s2=(this.style.removeProperty(e3),Ee(this,e3))),o2===c2?null:o2===r2&&c2===i2?a2:(i2=c2,a2=t2(r2=o2,s2))}}function oi(e3,t2){var n2,r2,i2,a2="style."+t2,o2="end."+a2,s2;return function(){var c2=pr(this,e3),l2=c2.on,u2=c2.value[a2]==null?s2||=ri(t2):void 0;(l2!==n2||i2!==u2)&&(r2=(n2=l2).copy()).on(o2,i2=u2),c2.on=r2}}function si(e3,t2,n2){var r2=(e3+="")=="transform"?Bn:Sr;return t2==null?this.styleTween(e3,ni(e3,r2)).on("end.style."+e3,ri(e3)):typeof t2=="function"?this.styleTween(e3,ai(e3,r2,xr(this,"style."+e3,t2))).each(oi(this._id,e3)):this.styleTween(e3,ii(e3,r2,t2),n2).on("end.style."+e3,null)}function ci(e3,t2,n2){return function(r2){this.style.setProperty(e3,t2.call(this,r2),n2)}}function li(e3,t2,n2){var r2,i2;function a2(){var a3=t2.apply(this,arguments);return a3!==i2&&(r2=(i2=a3)&&ci(e3,a3,n2)),r2}return a2._value=t2,a2}function ui(e3,t2,n2){var r2="style."+(e3+="");if(arguments.length<2)return(r2=this.tween(r2))&&r2._value;if(t2==null)return this.tween(r2,null);if(typeof t2!="function")throw Error();return this.tween(r2,li(e3,t2,n2??""))}function di(e3){return function(){this.textContent=e3}}function fi(e3){return function(){var t2=e3(this);this.textContent=t2??""}}function pi(e3){return this.tween("text",typeof e3=="function"?fi(xr(this,"text",e3)):di(e3==null?"":e3+""))}function mi(e3){return function(t2){this.textContent=e3.call(this,t2)}}function hi(e3){var t2,n2;function r2(){var r3=e3.apply(this,arguments);return r3!==n2&&(t2=(n2=r3)&&mi(r3)),t2}return r2._value=e3,r2}function gi(e3){var t2="text";if(arguments.length<1)return(t2=this.tween(t2))&&t2._value;if(e3==null)return this.tween(t2,null);if(typeof e3!="function")throw Error();return this.tween(t2,hi(e3))}function _i(){for(var e3=this._name,t2=this._id,n2=xi(),r2=this._groups,i2=r2.length,a2=0;a2<i2;++a2)for(var o2=r2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)if(c2=o2[l2]){var u2=mr(c2,t2);dr(c2,e3,n2,l2,o2,{time:u2.time+u2.delay+u2.duration,delay:0,duration:u2.duration,ease:u2.ease})}return new bi(r2,this._parents,e3,n2)}function vi(){var e3,t2,n2=this,r2=n2._id,i2=n2.size();return new Promise(function(a2,o2){var s2={value:o2},c2={value:function(){--i2===0&&a2()}};n2.each(function(){var n3=pr(this,r2),i3=n3.on;i3!==e3&&(t2=(e3=i3).copy(),t2._.cancel.push(s2),t2._.interrupt.push(s2),t2._.end.push(c2)),n3.on=t2}),i2===0&&a2()})}var yi=0;function bi(e3,t2,n2,r2){this._groups=e3,this._parents=t2,this._name=n2,this._id=r2}function xi(){return++yi}var Si=yt.prototype;bi.prototype={constructor:bi,select:Qr,selectAll:$r,selectChild:Si.selectChild,selectChildren:Si.selectChildren,filter:Gr,merge:Kr,selection:ti,transition:_i,call:Si.call,nodes:Si.nodes,node:Si.node,size:Si.size,empty:Si.empty,each:Si.each,on:Yr,attr:kr,attrTween:Pr,style:si,styleTween:ui,text:pi,textTween:gi,remove:Zr,tween:br,delay:Lr,duration:Br,ease:Hr,easeVarying:Wr,end:vi,[Symbol.iterator]:Si[Symbol.iterator]};function Ci(e3){return((e3*=2)<=1?e3*e3*e3:(e3-=2)*e3*e3+2)/2}var wi={time:null,delay:0,duration:250,ease:Ci};function Ti(e3,t2){for(var n2;!(n2=e3.__transition)||!(n2=n2[t2]);)if(!(e3=e3.parentNode))throw Error(`transition ${t2} not found`);return n2}function Ei(e3){var t2,n2;e3 instanceof bi?(t2=e3._id,e3=e3._name):(t2=xi(),(n2=wi).time=$n(),e3=e3==null?null:e3+"");for(var r2=this._groups,i2=r2.length,a2=0;a2<i2;++a2)for(var o2=r2[a2],s2=o2.length,c2,l2=0;l2<s2;++l2)(c2=o2[l2])&&dr(c2,e3,t2,l2,o2,n2||Ti(c2,t2));return new bi(r2,this._parents,e3,t2)}yt.prototype.interrupt=_r,yt.prototype.transition=Ei;var Di=e3=>()=>e3;function Oi(e3,{sourceEvent:t2,target:n2,selection:r2,mode:i2,dispatch:a2}){Object.defineProperties(this,{type:{value:e3,enumerable:true,configurable:true},sourceEvent:{value:t2,enumerable:true,configurable:true},target:{value:n2,enumerable:true,configurable:true},selection:{value:r2,enumerable:true,configurable:true},mode:{value:i2,enumerable:true,configurable:true},_:{value:a2}})}function ki(e3){e3.stopImmediatePropagation()}function Ai(e3){e3.preventDefault(),e3.stopImmediatePropagation()}var ji={name:"drag"},Mi={name:"space"},Ni={name:"handle"},Pi={name:"center"},{abs:Fi,max:Ii,min:Li}=Math;function Ri(e3){return[+e3[0],+e3[1]]}function zi(e3){return[Ri(e3[0]),Ri(e3[1])]}var Bi={name:"x",handles:["w","e"].map(qi),input:function(e3,t2){return e3==null?null:[[+e3[0],t2[0][1]],[+e3[1],t2[1][1]]]},output:function(e3){return e3&&[e3[0][0],e3[1][0]]}},Vi={name:"y",handles:["n","s"].map(qi),input:function(e3,t2){return e3==null?null:[[t2[0][0],+e3[0]],[t2[1][0],+e3[1]]]},output:function(e3){return e3&&[e3[0][1],e3[1][1]]}};["n","w","e","s","nw","ne","sw","se"].map(qi);var Hi={overlay:"crosshair",selection:"move",n:"ns-resize",e:"ew-resize",s:"ns-resize",w:"ew-resize",nw:"nwse-resize",ne:"nesw-resize",se:"nwse-resize",sw:"nesw-resize"},Ui={e:"w",w:"e",nw:"ne",ne:"nw",se:"sw",sw:"se"},Wi={n:"s",s:"n",nw:"sw",ne:"se",se:"ne",sw:"nw"},Gi={overlay:1,selection:1,n:null,e:1,s:null,w:-1,nw:-1,ne:1,se:1,sw:-1},Ki={overlay:1,selection:1,n:-1,e:null,s:1,w:null,nw:-1,ne:-1,se:1,sw:1};function qi(e3){return{type:e3}}function Ji(e3){return!e3.ctrlKey&&!e3.button}function Yi(){var e3=this.ownerSVGElement||this;return e3.hasAttribute("viewBox")?(e3=e3.viewBox.baseVal,[[e3.x,e3.y],[e3.x+e3.width,e3.y+e3.height]]):[[0,0],[e3.width.baseVal.value,e3.height.baseVal.value]]}function Xi(){return navigator.maxTouchPoints||"ontouchstart"in this}function Zi(e3){for(;!e3.__brush;)if(!(e3=e3.parentNode))return;return e3.__brush}function Qi(e3){return e3[0][0]===e3[1][0]||e3[0][1]===e3[1][1]}function $i(){return ea(Bi)}function ea(e3){var t2=Yi,n2=Ji,r2=Xi,i2=true,a2=h("start","brush","end"),o2=6,s2;function c2(t3){var n3=t3.property("__brush",g2).selectAll(".overlay").data([qi("overlay")]);n3.enter().append("rect").attr("class","overlay").attr("pointer-events","all").attr("cursor",Hi.overlay).merge(n3).each(function(){var e4=Zi(this).extent;xt(this).attr("x",e4[0][0]).attr("y",e4[0][1]).attr("width",e4[1][0]-e4[0][0]).attr("height",e4[1][1]-e4[0][1])}),t3.selectAll(".selection").data([qi("selection")]).enter().append("rect").attr("class","selection").attr("cursor",Hi.selection).attr("fill","#777").attr("fill-opacity",.3).attr("stroke","#fff").attr("shape-rendering","crispEdges");var i3=t3.selectAll(".handle").data(e3.handles,function(e4){return e4.type});i3.exit().remove(),i3.enter().append("rect").attr("class",function(e4){return"handle handle--"+e4.type}).attr("cursor",function(e4){return Hi[e4.type]}),t3.each(l2).attr("fill","none").attr("pointer-events","all").on("mousedown.brush",f2).filter(r2).on("touchstart.brush",f2).on("touchmove.brush",p2).on("touchend.brush touchcancel.brush",m2).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}c2.move=function(t3,n3,r3){t3.tween?t3.on("start.brush",function(e4){u2(this,arguments).beforestart().start(e4)}).on("interrupt.brush end.brush",function(e4){u2(this,arguments).end(e4)}).tween("brush",function(){var t4=this,r4=t4.__brush,i3=u2(t4,arguments),a3=r4.selection,o3=e3.input(typeof n3=="function"?n3.apply(this,arguments):n3,r4.extent),s3=jn(a3,o3);function c3(e4){r4.selection=e4===1&&o3===null?null:s3(e4),l2.call(t4),i3.brush()}return a3!==null&&o3!==null?c3:c3(1)}):t3.each(function(){var t4=this,i3=arguments,a3=t4.__brush,o3=e3.input(typeof n3=="function"?n3.apply(t4,i3):n3,a3.extent),s3=u2(t4,i3).beforestart();gr(t4),a3.selection=o3===null?null:o3,l2.call(t4),s3.start(r3).brush(r3).end(r3)})},c2.clear=function(e4,t3){c2.move(e4,null,t3)};function l2(){var e4=xt(this),t3=Zi(this).selection;t3?(e4.selectAll(".selection").style("display",null).attr("x",t3[0][0]).attr("y",t3[0][1]).attr("width",t3[1][0]-t3[0][0]).attr("height",t3[1][1]-t3[0][1]),e4.selectAll(".handle").style("display",null).attr("x",function(e5){return e5.type[e5.type.length-1]==="e"?t3[1][0]-o2/2:t3[0][0]-o2/2}).attr("y",function(e5){return e5.type[0]==="s"?t3[1][1]-o2/2:t3[0][1]-o2/2}).attr("width",function(e5){return e5.type==="n"||e5.type==="s"?t3[1][0]-t3[0][0]+o2:o2}).attr("height",function(e5){return e5.type==="e"||e5.type==="w"?t3[1][1]-t3[0][1]+o2:o2})):e4.selectAll(".selection,.handle").style("display","none").attr("x",null).attr("y",null).attr("width",null).attr("height",null)}function u2(e4,t3,n3){var r3=e4.__brush.emitter;return r3&&(!n3||!r3.clean)?r3:new d2(e4,t3,n3)}function d2(e4,t3,n3){this.that=e4,this.args=t3,this.state=e4.__brush,this.active=0,this.clean=n3}d2.prototype={beforestart:function(){return++this.active===1&&(this.state.emitter=this,this.starting=true),this},start:function(e4,t3){return this.starting?(this.starting=false,this.emit("start",e4,t3)):this.emit("brush",e4),this},brush:function(e4,t3){return this.emit("brush",e4,t3),this},end:function(e4,t3){return--this.active===0&&(delete this.state.emitter,this.emit("end",e4,t3)),this},emit:function(t3,n3,r3){var i3=xt(this.that).datum();a2.call(t3,this.that,new Oi(t3,{sourceEvent:n3,target:c2,selection:e3.output(this.state.selection),mode:r3,dispatch:a2}),i3)}};function f2(t3){if(s2&&!t3.touches||!n2.apply(this,arguments))return;var r3=this,a3=t3.target.__data__.type,o3=(i2&&t3.metaKey?a3="overlay":a3)==="selection"?ji:i2&&t3.altKey?Pi:Ni,c3=e3===Vi?null:Gi[a3],d3=e3===Bi?null:Ki[a3],f3=Zi(r3),p3=f3.extent,m3=f3.selection,h2=p3[0][0],g3,_2,v2=p3[0][1],y2,b2,x2=p3[1][0],S2,C2,w2=p3[1][1],T2,E2,D2=0,O2=0,k2,A2=c3&&d3&&i2&&t3.shiftKey,j2,M2,N2=Array.from(t3.touches||[t3],e4=>{let t4=e4.identifier;return e4=Ct(e4,r3),e4.point0=e4.slice(),e4.identifier=t4,e4});gr(r3);var P2=u2(r3,arguments,true).beforestart();if(a3==="overlay"){m3&&(k2=true);let n3=[N2[0],N2[1]||N2[0]];f3.selection=m3=[[g3=e3===Vi?h2:Li(n3[0][0],n3[1][0]),y2=e3===Bi?v2:Li(n3[0][1],n3[1][1])],[S2=e3===Vi?x2:Ii(n3[0][0],n3[1][0]),T2=e3===Bi?w2:Ii(n3[0][1],n3[1][1])]],N2.length>1&&R2(t3)}else g3=m3[0][0],y2=m3[0][1],S2=m3[1][0],T2=m3[1][1];_2=g3,b2=y2,C2=S2,E2=T2;var F2=xt(r3).attr("pointer-events","none"),I2=F2.selectAll(".overlay").attr("cursor",Hi[a3]);if(t3.touches)P2.moved=ee2,P2.ended=z2;else{var L2=xt(t3.view).on("mousemove.brush",ee2,true).on("mouseup.brush",z2,true);i2&&L2.on("keydown.brush",B2,true).on("keyup.brush",V2,true),Et(t3.view)}l2.call(r3),P2.start(t3,o3.name);function ee2(e4){for(let t4 of e4.changedTouches||[e4])for(let e5 of N2)e5.identifier===t4.identifier&&(e5.cur=Ct(t4,r3));if(A2&&!j2&&!M2&&N2.length===1){let e5=N2[0];Fi(e5.cur[0]-e5[0])>Fi(e5.cur[1]-e5[1])?M2=true:j2=true}for(let e5 of N2)e5.cur&&(e5[0]=e5.cur[0],e5[1]=e5.cur[1]);k2=true,Ai(e4),R2(e4)}function R2(e4){let t4=N2[0],n3=t4.point0;var i3;switch(D2=t4[0]-n3[0],O2=t4[1]-n3[1],o3){case Mi:case ji:c3&&(D2=Ii(h2-g3,Li(x2-S2,D2)),_2=g3+D2,C2=S2+D2),d3&&(O2=Ii(v2-y2,Li(w2-T2,O2)),b2=y2+O2,E2=T2+O2);break;case Ni:N2[1]?(c3&&=(_2=Ii(h2,Li(x2,N2[0][0])),C2=Ii(h2,Li(x2,N2[1][0])),1),d3&&=(b2=Ii(v2,Li(w2,N2[0][1])),E2=Ii(v2,Li(w2,N2[1][1])),1)):(c3<0?(D2=Ii(h2-g3,Li(x2-g3,D2)),_2=g3+D2,C2=S2):c3>0&&(D2=Ii(h2-S2,Li(x2-S2,D2)),_2=g3,C2=S2+D2),d3<0?(O2=Ii(v2-y2,Li(w2-y2,O2)),b2=y2+O2,E2=T2):d3>0&&(O2=Ii(v2-T2,Li(w2-T2,O2)),b2=y2,E2=T2+O2));break;case Pi:c3&&(_2=Ii(h2,Li(x2,g3-D2*c3)),C2=Ii(h2,Li(x2,S2+D2*c3))),d3&&(b2=Ii(v2,Li(w2,y2-O2*d3)),E2=Ii(v2,Li(w2,T2+O2*d3)))}C2<_2&&(c3*=-1,i3=g3,g3=S2,S2=i3,i3=_2,_2=C2,C2=i3,a3 in Ui&&I2.attr("cursor",Hi[a3=Ui[a3]])),E2<b2&&(d3*=-1,i3=y2,y2=T2,T2=i3,i3=b2,b2=E2,E2=i3,a3 in Wi&&I2.attr("cursor",Hi[a3=Wi[a3]])),f3.selection&&(m3=f3.selection),j2&&(_2=m3[0][0],C2=m3[1][0]),M2&&(b2=m3[0][1],E2=m3[1][1]),(m3[0][0]!==_2||m3[0][1]!==b2||m3[1][0]!==C2||m3[1][1]!==E2)&&(f3.selection=[[_2,b2],[C2,E2]],l2.call(r3),P2.brush(e4,o3.name))}function z2(e4){if(ki(e4),e4.touches){if(e4.touches.length)return;s2&&clearTimeout(s2),s2=setTimeout(function(){s2=null},500)}else Dt(e4.view,k2),L2.on("keydown.brush keyup.brush mousemove.brush mouseup.brush",null);F2.attr("pointer-events","all"),I2.attr("cursor",Hi.overlay),f3.selection&&(m3=f3.selection),Qi(m3)&&(f3.selection=null,l2.call(r3)),P2.end(e4,o3.name)}function B2(e4){switch(e4.keyCode){case 16:A2=c3&&d3;break;case 18:o3===Ni&&(c3&&(S2=C2-D2*c3,g3=_2+D2*c3),d3&&(T2=E2-O2*d3,y2=b2+O2*d3),o3=Pi,R2(e4));break;case 32:(o3===Ni||o3===Pi)&&(c3<0?S2=C2-D2:c3>0&&(g3=_2-D2),d3<0?T2=E2-O2:d3>0&&(y2=b2-O2),o3=Mi,I2.attr("cursor",Hi.selection),R2(e4));break;default:return}Ai(e4)}function V2(e4){switch(e4.keyCode){case 16:A2&&(j2=M2=A2=false,R2(e4));break;case 18:o3===Pi&&(c3<0?S2=C2:c3>0&&(g3=_2),d3<0?T2=E2:d3>0&&(y2=b2),o3=Ni,R2(e4));break;case 32:o3===Mi&&(e4.altKey?(c3&&(S2=C2-D2*c3,g3=_2+D2*c3),d3&&(T2=E2-O2*d3,y2=b2+O2*d3),o3=Pi):(c3<0?S2=C2:c3>0&&(g3=_2),d3<0?T2=E2:d3>0&&(y2=b2),o3=Ni),I2.attr("cursor",Hi[a3]),R2(e4));break;default:return}Ai(e4)}}function p2(e4){u2(this,arguments).moved(e4)}function m2(e4){u2(this,arguments).ended(e4)}function g2(){var n3=this.__brush||{selection:null};return n3.extent=zi(t2.apply(this,arguments)),n3.dim=e3,n3}return c2.extent=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Di(zi(e4)),c2):t2},c2.filter=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Di(!!e4),c2):n2},c2.touchable=function(e4){return arguments.length?(r2=typeof e4=="function"?e4:Di(!!e4),c2):r2},c2.handleSize=function(e4){return arguments.length?(o2=+e4,c2):o2},c2.keyModifiers=function(e4){return arguments.length?(i2=!!e4,c2):i2},c2.on=function(){var e4=a2.on.apply(a2,arguments);return e4===a2?c2:e4},c2}function Z(e3){return function(){return e3}}var ta=Math.abs,na=Math.atan2,ra=Math.cos,ia=Math.max,aa=Math.min,oa=Math.sin,sa=Math.sqrt,ca=Math.PI,la=ca/2,ua=2*ca;function da(e3){return e3>1?0:e3<-1?ca:Math.acos(e3)}function fa(e3){return e3>=1?la:e3<=-1?-la:Math.asin(e3)}var pa=Math.PI,ma=2*pa,ha=1e-6,ga=ma-ha;function _a(e3){this._+=e3[0];for(let t2=1,n2=e3.length;t2<n2;++t2)this._+=arguments[t2]+e3[t2]}function va(e3){let t2=Math.floor(e3);if(!(t2>=0))throw Error(`invalid digits: ${e3}`);if(t2>15)return _a;let n2=10**t2;return function(e4){this._+=e4[0];for(let t3=1,r2=e4.length;t3<r2;++t3)this._+=Math.round(arguments[t3]*n2)/n2+e4[t3]}}var ya=class{constructor(e3){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=e3==null?_a:va(e3)}moveTo(e3,t2){this._append`M${this._x0=this._x1=+e3},${this._y0=this._y1=+t2}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e3,t2){this._append`L${this._x1=+e3},${this._y1=+t2}`}quadraticCurveTo(e3,t2,n2,r2){this._append`Q${+e3},${+t2},${this._x1=+n2},${this._y1=+r2}`}bezierCurveTo(e3,t2,n2,r2,i2,a2){this._append`C${+e3},${+t2},${+n2},${+r2},${this._x1=+i2},${this._y1=+a2}`}arcTo(e3,t2,n2,r2,i2){if(e3=+e3,t2=+t2,n2=+n2,r2=+r2,i2=+i2,i2<0)throw Error(`negative radius: ${i2}`);let a2=this._x1,o2=this._y1,s2=n2-e3,c2=r2-t2,l2=a2-e3,u2=o2-t2,d2=l2*l2+u2*u2;if(this._x1===null)this._append`M${this._x1=e3},${this._y1=t2}`;else if(d2>ha){if(!(Math.abs(u2*s2-c2*l2)>ha)||!i2)this._append`L${this._x1=e3},${this._y1=t2}`;else{let f2=n2-a2,p2=r2-o2,m2=s2*s2+c2*c2,h2=f2*f2+p2*p2,g2=Math.sqrt(m2),_2=Math.sqrt(d2),v2=i2*Math.tan((pa-Math.acos((m2+d2-h2)/(2*g2*_2)))/2),y2=v2/_2,b2=v2/g2;Math.abs(y2-1)>ha&&this._append`L${e3+y2*l2},${t2+y2*u2}`,this._append`A${i2},${i2},0,0,${+(u2*f2>l2*p2)},${this._x1=e3+b2*s2},${this._y1=t2+b2*c2}`}}}arc(e3,t2,n2,r2,i2,a2){if(e3=+e3,t2=+t2,n2=+n2,a2=!!a2,n2<0)throw Error(`negative radius: ${n2}`);let o2=n2*Math.cos(r2),s2=n2*Math.sin(r2),c2=e3+o2,l2=t2+s2,u2=1^a2,d2=a2?r2-i2:i2-r2;this._x1===null?this._append`M${c2},${l2}`:(Math.abs(this._x1-c2)>ha||Math.abs(this._y1-l2)>ha)&&this._append`L${c2},${l2}`,n2&&(d2<0&&(d2=d2%ma+ma),d2>ga?this._append`A${n2},${n2},0,1,${u2},${e3-o2},${t2-s2}A${n2},${n2},0,1,${u2},${this._x1=c2},${this._y1=l2}`:d2>ha&&this._append`A${n2},${n2},0,${+(d2>=pa)},${u2},${this._x1=e3+n2*Math.cos(i2)},${this._y1=t2+n2*Math.sin(i2)}`)}rect(e3,t2,n2,r2){this._append`M${this._x0=this._x1=+e3},${this._y0=this._y1=+t2}h${n2=+n2}v${+r2}h${-n2}Z`}toString(){return this._}};ya.prototype;function ba(e3){let t2=3;return e3.digits=function(n2){if(!arguments.length)return t2;if(n2==null)t2=null;else{let e4=Math.floor(n2);if(!(e4>=0))throw RangeError(`invalid digits: ${n2}`);t2=e4}return e3},()=>new ya(t2)}function xa(e3){return e3.innerRadius}function Sa(e3){return e3.outerRadius}function Ca(e3){return e3.startAngle}function wa(e3){return e3.endAngle}function Ta(e3){return e3&&e3.padAngle}function Ea(e3,t2,n2,r2,i2,a2,o2,s2){var c2=n2-e3,l2=r2-t2,u2=o2-i2,d2=s2-a2,f2=d2*c2-u2*l2;if(!(f2*f2<1e-12))return f2=(u2*(t2-a2)-d2*(e3-i2))/f2,[e3+f2*c2,t2+f2*l2]}function Da(e3,t2,n2,r2,i2,a2,o2){var s2=e3-n2,c2=t2-r2,l2=(o2?a2:-a2)/sa(s2*s2+c2*c2),u2=l2*c2,d2=-l2*s2,f2=e3+u2,p2=t2+d2,m2=n2+u2,h2=r2+d2,g2=(f2+m2)/2,_2=(p2+h2)/2,v2=m2-f2,y2=h2-p2,b2=v2*v2+y2*y2,x2=i2-a2,S2=f2*h2-m2*p2,C2=(y2<0?-1:1)*sa(ia(0,x2*x2*b2-S2*S2)),w2=(S2*y2-v2*C2)/b2,T2=(-S2*v2-y2*C2)/b2,E2=(S2*y2+v2*C2)/b2,D2=(-S2*v2+y2*C2)/b2,O2=w2-g2,k2=T2-_2,A2=E2-g2,j2=D2-_2;return O2*O2+k2*k2>A2*A2+j2*j2&&(w2=E2,T2=D2),{cx:w2,cy:T2,x01:-u2,y01:-d2,x11:w2*(i2/x2-1),y11:T2*(i2/x2-1)}}function Oa(){var e3=xa,t2=Sa,n2=Z(0),r2=null,i2=Ca,a2=wa,o2=Ta,s2=null,c2=ba(l2);function l2(){var l3,u2,d2=+e3.apply(this,arguments),f2=+t2.apply(this,arguments),p2=i2.apply(this,arguments)-la,m2=a2.apply(this,arguments)-la,h2=ta(m2-p2),g2=m2>p2;if(s2||=l3=c2(),f2<d2&&(u2=f2,f2=d2,d2=u2),!(f2>1e-12))s2.moveTo(0,0);else if(h2>ua-1e-12)s2.moveTo(f2*ra(p2),f2*oa(p2)),s2.arc(0,0,f2,p2,m2,!g2),d2>1e-12&&(s2.moveTo(d2*ra(m2),d2*oa(m2)),s2.arc(0,0,d2,m2,p2,g2));else{var _2=p2,v2=m2,y2=p2,b2=m2,x2=h2,S2=h2,C2=o2.apply(this,arguments)/2,w2=C2>1e-12&&(r2?+r2.apply(this,arguments):sa(d2*d2+f2*f2)),T2=aa(ta(f2-d2)/2,+n2.apply(this,arguments)),E2=T2,D2=T2,O2,k2;if(w2>1e-12){var A2=fa(w2/d2*oa(C2)),j2=fa(w2/f2*oa(C2));(x2-=A2*2)>1e-12?(A2*=g2?1:-1,y2+=A2,b2-=A2):(x2=0,y2=b2=(p2+m2)/2),(S2-=j2*2)>1e-12?(j2*=g2?1:-1,_2+=j2,v2-=j2):(S2=0,_2=v2=(p2+m2)/2)}var M2=f2*ra(_2),N2=f2*oa(_2),P2=d2*ra(b2),F2=d2*oa(b2);if(T2>1e-12){var I2=f2*ra(v2),L2=f2*oa(v2),ee2=d2*ra(y2),R2=d2*oa(y2),z2;if(h2<ca){if(z2=Ea(M2,N2,ee2,R2,I2,L2,P2,F2)){var B2=M2-z2[0],V2=N2-z2[1],H2=I2-z2[0],U2=L2-z2[1],W2=1/oa(da((B2*H2+V2*U2)/(sa(B2*B2+V2*V2)*sa(H2*H2+U2*U2)))/2),G2=sa(z2[0]*z2[0]+z2[1]*z2[1]);E2=aa(T2,(d2-G2)/(W2-1)),D2=aa(T2,(f2-G2)/(W2+1))}else E2=D2=0}}S2>1e-12?D2>1e-12?(O2=Da(ee2,R2,M2,N2,f2,D2,g2),k2=Da(I2,L2,P2,F2,f2,D2,g2),s2.moveTo(O2.cx+O2.x01,O2.cy+O2.y01),D2<T2?s2.arc(O2.cx,O2.cy,D2,na(O2.y01,O2.x01),na(k2.y01,k2.x01),!g2):(s2.arc(O2.cx,O2.cy,D2,na(O2.y01,O2.x01),na(O2.y11,O2.x11),!g2),s2.arc(0,0,f2,na(O2.cy+O2.y11,O2.cx+O2.x11),na(k2.cy+k2.y11,k2.cx+k2.x11),!g2),s2.arc(k2.cx,k2.cy,D2,na(k2.y11,k2.x11),na(k2.y01,k2.x01),!g2))):(s2.moveTo(M2,N2),s2.arc(0,0,f2,_2,v2,!g2)):s2.moveTo(M2,N2),!(d2>1e-12)||!(x2>1e-12)?s2.lineTo(P2,F2):E2>1e-12?(O2=Da(P2,F2,I2,L2,d2,-E2,g2),k2=Da(M2,N2,ee2,R2,d2,-E2,g2),s2.lineTo(O2.cx+O2.x01,O2.cy+O2.y01),E2<T2?s2.arc(O2.cx,O2.cy,E2,na(O2.y01,O2.x01),na(k2.y01,k2.x01),!g2):(s2.arc(O2.cx,O2.cy,E2,na(O2.y01,O2.x01),na(O2.y11,O2.x11),!g2),s2.arc(0,0,d2,na(O2.cy+O2.y11,O2.cx+O2.x11),na(k2.cy+k2.y11,k2.cx+k2.x11),g2),s2.arc(k2.cx,k2.cy,E2,na(k2.y11,k2.x11),na(k2.y01,k2.x01),!g2))):s2.arc(0,0,d2,b2,y2,g2)}if(s2.closePath(),l3)return s2=null,l3+""||null}return l2.centroid=function(){var n3=(+e3.apply(this,arguments)+ +t2.apply(this,arguments))/2,r3=(+i2.apply(this,arguments)+ +a2.apply(this,arguments))/2-ca/2;return[ra(r3)*n3,oa(r3)*n3]},l2.innerRadius=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),l2):e3},l2.outerRadius=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),l2):t2},l2.cornerRadius=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Z(+e4),l2):n2},l2.padRadius=function(e4){return arguments.length?(r2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):r2},l2.startAngle=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(+e4),l2):i2},l2.endAngle=function(e4){return arguments.length?(a2=typeof e4=="function"?e4:Z(+e4),l2):a2},l2.padAngle=function(e4){return arguments.length?(o2=typeof e4=="function"?e4:Z(+e4),l2):o2},l2.context=function(e4){return arguments.length?(s2=e4??null,l2):s2},l2}Array.prototype.slice;function ka(e3){return typeof e3=="object"&&"length"in e3?e3:Array.from(e3)}function Aa(e3){this._context=e3}Aa.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(e3,t2){switch(e3=+e3,t2=+t2,this._point){case 0:this._point=1,this._line?this._context.lineTo(e3,t2):this._context.moveTo(e3,t2);break;case 1:this._point=2;default:this._context.lineTo(e3,t2)}}};function ja(e3){return new Aa(e3)}function Ma(e3){return e3[0]}function Na(e3){return e3[1]}function Pa(e3,t2){var n2=Z(true),r2=null,i2=ja,a2=null,o2=ba(s2);e3=typeof e3=="function"?e3:e3===void 0?Ma:Z(e3),t2=typeof t2=="function"?t2:t2===void 0?Na:Z(t2);function s2(s3){var c2,l2=(s3=ka(s3)).length,u2,d2=false,f2;for(r2??(a2=i2(f2=o2())),c2=0;c2<=l2;++c2)!(c2<l2&&n2(u2=s3[c2],c2,s3))===d2&&((d2=!d2)?a2.lineStart():a2.lineEnd()),d2&&a2.point(+e3(u2,c2,s3),+t2(u2,c2,s3));if(f2)return a2=null,f2+""||null}return s2.x=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),s2):e3},s2.y=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),s2):t2},s2.defined=function(e4){return arguments.length?(n2=typeof e4=="function"?e4:Z(!!e4),s2):n2},s2.curve=function(e4){return arguments.length?(i2=e4,r2!=null&&(a2=i2(r2)),s2):i2},s2.context=function(e4){return arguments.length?(e4==null?r2=a2=null:a2=i2(r2=e4),s2):r2},s2}function Fa(e3,t2,n2){var r2=null,i2=Z(true),a2=null,o2=ja,s2=null,c2=ba(l2);e3=typeof e3=="function"?e3:e3===void 0?Ma:Z(+e3),t2=typeof t2=="function"?t2:Z(t2===void 0?0:+t2),n2=typeof n2=="function"?n2:n2===void 0?Na:Z(+n2);function l2(l3){var u3,d2,f2,p2=(l3=ka(l3)).length,m2,h2=false,g2,_2=Array(p2),v2=Array(p2);for(a2??(s2=o2(g2=c2())),u3=0;u3<=p2;++u3){if(!(u3<p2&&i2(m2=l3[u3],u3,l3))===h2){if(h2=!h2)d2=u3,s2.areaStart(),s2.lineStart();else{for(s2.lineEnd(),s2.lineStart(),f2=u3-1;f2>=d2;--f2)s2.point(_2[f2],v2[f2]);s2.lineEnd(),s2.areaEnd()}}h2&&(_2[u3]=+e3(m2,u3,l3),v2[u3]=+t2(m2,u3,l3),s2.point(r2?+r2(m2,u3,l3):_2[u3],n2?+n2(m2,u3,l3):v2[u3]))}if(g2)return s2=null,g2+""||null}function u2(){return Pa().defined(i2).curve(o2).context(a2)}return l2.x=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),r2=null,l2):e3},l2.x0=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),l2):e3},l2.x1=function(e4){return arguments.length?(r2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):r2},l2.y=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),n2=null,l2):t2},l2.y0=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),l2):t2},l2.y1=function(e4){return arguments.length?(n2=e4==null?null:typeof e4=="function"?e4:Z(+e4),l2):n2},l2.lineX0=l2.lineY0=function(){return u2().x(e3).y(t2)},l2.lineY1=function(){return u2().x(e3).y(n2)},l2.lineX1=function(){return u2().x(r2).y(t2)},l2.defined=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(!!e4),l2):i2},l2.curve=function(e4){return arguments.length?(o2=e4,a2!=null&&(s2=o2(a2)),l2):o2},l2.context=function(e4){return arguments.length?(e4==null?a2=s2=null:s2=o2(a2=e4),l2):a2},l2}function Ia(e3,t2){return t2<e3?-1:t2>e3?1:t2>=e3?0:NaN}function La(e3){return e3}function Ra(){var e3=La,t2=Ia,n2=null,r2=Z(0),i2=Z(ua),a2=Z(0);function o2(o3){var s2,c2=(o3=ka(o3)).length,l2,u2,d2=0,f2=Array(c2),p2=Array(c2),m2=+r2.apply(this,arguments),h2=Math.min(ua,Math.max(-ua,i2.apply(this,arguments)-m2)),g2,_2=Math.min(Math.abs(h2)/c2,a2.apply(this,arguments)),v2=_2*(h2<0?-1:1),y2;for(s2=0;s2<c2;++s2)(y2=p2[f2[s2]=s2]=+e3(o3[s2],s2,o3))>0&&(d2+=y2);for(t2==null?n2!=null&&f2.sort(function(e4,t3){return n2(o3[e4],o3[t3])}):f2.sort(function(e4,n3){return t2(p2[e4],p2[n3])}),s2=0,u2=d2?(h2-c2*v2)/d2:0;s2<c2;++s2,m2=g2)l2=f2[s2],y2=p2[l2],g2=m2+(y2>0?y2*u2:0)+v2,p2[l2]={data:o3[l2],index:s2,value:y2,startAngle:m2,endAngle:g2,padAngle:_2};return p2}return o2.value=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(+t3),o2):e3},o2.sortValues=function(e4){return arguments.length?(t2=e4,n2=null,o2):t2},o2.sort=function(e4){return arguments.length?(n2=e4,t2=null,o2):n2},o2.startAngle=function(e4){return arguments.length?(r2=typeof e4=="function"?e4:Z(+e4),o2):r2},o2.endAngle=function(e4){return arguments.length?(i2=typeof e4=="function"?e4:Z(+e4),o2):i2},o2.padAngle=function(e4){return arguments.length?(a2=typeof e4=="function"?e4:Z(+e4),o2):a2},o2}var za={draw(e3,t2){let n2=sa(t2/ca);e3.moveTo(n2,0),e3.arc(0,0,n2,0,ua)}},Ba={draw(e3,t2){let n2=sa(t2/5)/2;e3.moveTo(-3*n2,-n2),e3.lineTo(-n2,-n2),e3.lineTo(-n2,-3*n2),e3.lineTo(n2,-3*n2),e3.lineTo(n2,-n2),e3.lineTo(3*n2,-n2),e3.lineTo(3*n2,n2),e3.lineTo(n2,n2),e3.lineTo(n2,3*n2),e3.lineTo(-n2,3*n2),e3.lineTo(-n2,n2),e3.lineTo(-3*n2,n2),e3.closePath()}},Va=sa(1/3),Ha=Va*2,Ua={draw(e3,t2){let n2=sa(t2/Ha),r2=n2*Va;e3.moveTo(0,-n2),e3.lineTo(r2,0),e3.lineTo(0,n2),e3.lineTo(-r2,0),e3.closePath()}},Wa={draw(e3,t2){let n2=sa(t2),r2=-n2/2;e3.rect(r2,r2,n2,n2)}},Ga=.8908130915292852,Ka=oa(ca/10)/oa(7*ca/10),qa=oa(ua/10)*Ka,Ja=-ra(ua/10)*Ka,Ya={draw(e3,t2){let n2=sa(t2*Ga),r2=qa*n2,i2=Ja*n2;e3.moveTo(0,-n2),e3.lineTo(r2,i2);for(let t3=1;t3<5;++t3){let a2=ua*t3/5,o2=ra(a2),s2=oa(a2);e3.lineTo(s2*n2,-o2*n2),e3.lineTo(o2*r2-s2*i2,s2*r2+o2*i2)}e3.closePath()}},Xa=sa(3),Za={draw(e3,t2){let n2=-sa(t2/(Xa*3));e3.moveTo(0,n2*2),e3.lineTo(-Xa*n2,-n2),e3.lineTo(Xa*n2,-n2),e3.closePath()}},Qa=-.5,$a=sa(3)/2,eo=1/sa(12),to=(eo/2+1)*3,no=[za,Ba,Ua,Wa,Ya,Za,{draw(e3,t2){let n2=sa(t2/to),r2=n2/2,i2=n2*eo,a2=r2,o2=n2*eo+n2,s2=-a2,c2=o2;e3.moveTo(r2,i2),e3.lineTo(a2,o2),e3.lineTo(s2,c2),e3.lineTo(Qa*r2-$a*i2,$a*r2+Qa*i2),e3.lineTo(Qa*a2-$a*o2,$a*a2+Qa*o2),e3.lineTo(Qa*s2-$a*c2,$a*s2+Qa*c2),e3.lineTo(Qa*r2+$a*i2,Qa*i2-$a*r2),e3.lineTo(Qa*a2+$a*o2,Qa*o2-$a*a2),e3.lineTo(Qa*s2+$a*c2,Qa*c2-$a*s2),e3.closePath()}}];function ro(e3,t2){let n2=null,r2=ba(i2);e3=typeof e3=="function"?e3:Z(e3||za),t2=typeof t2=="function"?t2:Z(t2===void 0?64:+t2);function i2(){let i3;if(n2||=i3=r2(),e3.apply(this,arguments).draw(n2,+t2.apply(this,arguments)),i3)return n2=null,i3+""||null}return i2.type=function(t3){return arguments.length?(e3=typeof t3=="function"?t3:Z(t3),i2):e3},i2.size=function(e4){return arguments.length?(t2=typeof e4=="function"?e4:Z(+e4),i2):t2},i2.context=function(e4){return arguments.length?(n2=e4??null,i2):n2},i2}function io(e3){return e3<0?-1:1}function ao(e3,t2,n2){var r2=e3._x1-e3._x0,i2=t2-e3._x1,a2=(e3._y1-e3._y0)/(r2||i2<0&&-0),o2=(n2-e3._y1)/(i2||r2<0&&-0),s2=(a2*i2+o2*r2)/(r2+i2);return(io(a2)+io(o2))*Math.min(Math.abs(a2),Math.abs(o2),.5*Math.abs(s2))||0}function oo(e3,t2){var n2=e3._x1-e3._x0;return n2?(3*(e3._y1-e3._y0)/n2-t2)/2:t2}function so(e3,t2,n2){var r2=e3._x0,i2=e3._y0,a2=e3._x1,o2=e3._y1,s2=(a2-r2)/3;e3._context.bezierCurveTo(r2+s2,i2+s2*t2,a2-s2,o2-s2*n2,a2,o2)}function co(e3){this._context=e3}co.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:so(this,this._t0,oo(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e3,t2){var n2=NaN;if(e3=+e3,t2=+t2,e3!==this._x1||t2!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e3,t2):this._context.moveTo(e3,t2);break;case 1:this._point=2;break;case 2:this._point=3,so(this,oo(this,n2=ao(this,e3,t2)),n2);break;default:so(this,this._t0,n2=ao(this,e3,t2))}this._x0=this._x1,this._x1=e3,this._y0=this._y1,this._y1=t2,this._t0=n2}}},Object.create(co.prototype).point=function(e3,t2){co.prototype.point.call(this,t2,e3)};function lo(e3){return new co(e3)}var uo={top:16,right:16,bottom:36,left:48},fo=o;function po(e3){return c(e3)}var mo=new Map;function ho(e3,t2){let n2=`n|${e3??""}|${t2.locale}|${t2.currency}`,r2=mo.get(n2);if(!r2){let i2=e3==="currency"?{style:"currency",currency:t2.currency,maximumFractionDigits:0}:e3==="percent"||e3==="fraction-percent"?{style:"percent",maximumFractionDigits:1}:e3==="year"?{useGrouping:false,maximumFractionDigits:0}:e3==="compact"?{notation:"compact",maximumFractionDigits:1}:{};r2=new Intl.NumberFormat(t2.locale,i2),mo.set(n2,r2)}return r2}function go(e3,t2){let n2=`d|${e3?"l":"s"}|${t2.locale}`,r2=mo.get(n2);return r2||(r2=new Intl.DateTimeFormat(t2.locale,e3?{month:"short",day:"numeric",year:"numeric",timeZone:"UTC"}:{month:"short",day:"2-digit",timeZone:"UTC"}),mo.set(n2,r2)),r2}function _o(e3){let t2=e3 instanceof Date?e3:new Date(e3);return Number.isNaN(t2.getTime())?null:t2}function vo(e3,t2,n2=fo){if(t2==="date"||t2==="date-short"||e3 instanceof Date){let r2=typeof e3=="string"&&!/^\d{4}-\d{2}/.test(e3)?null:_o(e3);return r2?go(t2==="date",n2).format(r2):String(e3)}return typeof e3=="number"?Number.isFinite(e3)?ho(t2,n2).format(e3):"":String(e3)}function yo(e3,t2=fo){let n2=e3.filter(e4=>e4 instanceof Date&&!Number.isNaN(e4.getTime())),r2=new Set(n2.map(e4=>e4.getUTCFullYear())),i2=n2.length>0&&n2.every(e4=>e4.getUTCMonth()===0&&e4.getUTCDate()===1),a2=n2.length>0&&n2.every(e4=>e4.getUTCDate()===1),o2=i2?{year:"numeric",timeZone:"UTC"}:a2?{month:"short",...r2.size>1?{year:"numeric"}:{},timeZone:"UTC"}:{month:"short",day:"2-digit",...r2.size>1?{year:"numeric"}:{},timeZone:"UTC"},s2=new Intl.DateTimeFormat(t2.locale,o2);return e4=>{let t3=_o(e4);return t3?s2.format(t3):String(e4)}}function bo(e3,t2=fo,n2){if(e3?.formatter)return e3.formatter;let r2=e3?.format??n2;return e4=>vo(e4,r2,t2)}function xo(e3,t2=80){return e3<=0?2:Math.max(2,Math.min(12,Math.round(e3/t2)))}function So(e3){let t2=0;for(let n2 of e3)/[0-9]/.test(n2)?t2+=6.5:n2===","||n2==="."||n2===" "||n2===" "||n2===" "?t2+=3:/[$€£¥%]/.test(n2)?t2+=7:/[A-Z]/.test(n2)?t2+=8:t2+=6.5;return t2}function Co(e3,t2,n2,r2=48,i2=fo){let a2=n2??(e4=>vo(e4,t2,i2)),o2=0;for(let t3 of e3){let e4=So(a2(t3));e4>o2&&(o2=e4)}return Math.max(r2,Math.ceil(o2+20))}var wo={top:16,right:8,bottom:36,left:36};function To({narrow:e3,yTicks:t2,yAxis:n2,loc:r2=fo,override:i2}){let a2=e3?wo:uo,o2=i2?.left??Co(t2,n2?.format,n2?.formatter,a2.left,r2);return{...a2,...i2,left:o2}}function Eo(e3,t2){return e3==null||t2==null?NaN:e3<t2?-1:e3>t2?1:e3>=t2?0:NaN}function Do(e3,t2){return e3==null||t2==null?NaN:t2<e3?-1:t2>e3?1:t2>=e3?0:NaN}function Oo(e3){let t2,n2,r2;e3.length===2?(t2=e3===Eo||e3===Do?e3:ko,n2=e3,r2=e3):(t2=Eo,n2=(t3,n3)=>Eo(e3(t3),n3),r2=(t3,n3)=>e3(t3)-n3);function i2(e4,r3,i3=0,a3=e4.length){if(i3<a3){if(t2(r3,r3)!==0)return a3;do{let t3=i3+a3>>>1;n2(e4[t3],r3)<0?i3=t3+1:a3=t3}while(i3<a3)}return i3}function a2(e4,r3,i3=0,a3=e4.length){if(i3<a3){if(t2(r3,r3)!==0)return a3;do{let t3=i3+a3>>>1;n2(e4[t3],r3)<=0?i3=t3+1:a3=t3}while(i3<a3)}return i3}function o2(e4,t3,n3=0,a3=e4.length){let o3=i2(e4,t3,n3,a3-1);return o3>n3&&r2(e4[o3-1],t3)>-r2(e4[o3],t3)?o3-1:o3}return{left:i2,center:o2,right:a2}}function ko(){return 0}function Ao(e3){return e3===null?NaN:+e3}var jo=Oo(Eo),Mo=jo.right;jo.left,Oo(Ao).center;function No(e3,t2){let n2,r2;if(t2===void 0)for(let t3 of e3)t3!=null&&(n2===void 0?t3>=t3&&(n2=r2=t3):(n2>t3&&(n2=t3),r2<t3&&(r2=t3)));else{let i2=-1;for(let a2 of e3)(a2=t2(a2,++i2,e3))!=null&&(n2===void 0?a2>=a2&&(n2=r2=a2):(n2>a2&&(n2=a2),r2<a2&&(r2=a2)))}return[n2,r2]}var Po=class extends Map{constructor(e3,t2=Ro){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t2}}),e3!=null)for(let[t3,n2]of e3)this.set(t3,n2)}get(e3){return super.get(Fo(this,e3))}has(e3){return super.has(Fo(this,e3))}set(e3,t2){return super.set(Io(this,e3),t2)}delete(e3){return super.delete(Lo(this,e3))}};function Fo({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)?e3.get(r2):n2}function Io({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)?e3.get(r2):(e3.set(r2,n2),n2)}function Lo({_intern:e3,_key:t2},n2){let r2=t2(n2);return e3.has(r2)&&(n2=e3.get(r2),e3.delete(r2)),n2}function Ro(e3){return typeof e3=="object"&&e3?e3.valueOf():e3}var zo=Math.sqrt(50),Bo=Math.sqrt(10),Vo=Math.sqrt(2);function Ho(e3,t2,n2){let r2=(t2-e3)/Math.max(0,n2),i2=Math.floor(Math.log10(r2)),a2=r2/10**i2,o2=a2>=zo?10:a2>=Bo?5:a2>=Vo?2:1,s2,c2,l2;return i2<0?(l2=10**-i2/o2,s2=Math.round(e3*l2),c2=Math.round(t2*l2),s2/l2<e3&&++s2,c2/l2>t2&&--c2,l2=-l2):(l2=10**i2*o2,s2=Math.round(e3/l2),c2=Math.round(t2/l2),s2*l2<e3&&++s2,c2*l2>t2&&--c2),c2<s2&&.5<=n2&&n2<2?Ho(e3,t2,n2*2):[s2,c2,l2]}function Uo(e3,t2,n2){if(t2=+t2,e3=+e3,n2=+n2,!(n2>0))return[];if(e3===t2)return[e3];let r2=t2<e3,[i2,a2,o2]=r2?Ho(t2,e3,n2):Ho(e3,t2,n2);if(!(a2>=i2))return[];let s2=a2-i2+1,c2=Array(s2);if(r2){if(o2<0)for(let e4=0;e4<s2;++e4)c2[e4]=(a2-e4)/-o2;else for(let e4=0;e4<s2;++e4)c2[e4]=(a2-e4)*o2}else if(o2<0)for(let e4=0;e4<s2;++e4)c2[e4]=(i2+e4)/-o2;else for(let e4=0;e4<s2;++e4)c2[e4]=(i2+e4)*o2;return c2}function Wo(e3,t2,n2){return t2=+t2,e3=+e3,n2=+n2,Ho(e3,t2,n2)[2]}function Go(e3,t2,n2){t2=+t2,e3=+e3,n2=+n2;let r2=t2<e3,i2=r2?Wo(t2,e3,n2):Wo(e3,t2,n2);return(r2?-1:1)*(i2<0?1/-i2:i2)}function Ko(e3,t2,n2){e3=+e3,t2=+t2,n2=(i2=arguments.length)<2?(t2=e3,e3=0,1):i2<3?1:+n2;for(var r2=-1,i2=Math.max(0,Math.ceil((t2-e3)/n2))|0,a2=Array(i2);++r2<i2;)a2[r2]=e3+r2*n2;return a2}function qo(e3,t2){switch(arguments.length){case 0:break;case 1:this.range(e3);break;default:this.range(t2).domain(e3)}return this}var Jo=Symbol("implicit");function Yo(){var e3=new Po,t2=[],n2=[],r2=Jo;function i2(i3){let a2=e3.get(i3);if(a2===void 0){if(r2!==Jo)return r2;e3.set(i3,a2=t2.push(i3)-1)}return n2[a2%n2.length]}return i2.domain=function(n3){if(!arguments.length)return t2.slice();t2=[],e3=new Po;for(let r3 of n3)e3.has(r3)||e3.set(r3,t2.push(r3)-1);return i2},i2.range=function(e4){return arguments.length?(n2=Array.from(e4),i2):n2.slice()},i2.unknown=function(e4){return arguments.length?(r2=e4,i2):r2},i2.copy=function(){return Yo(t2,n2).unknown(r2)},qo.apply(i2,arguments),i2}function Xo(){var e3=Yo().unknown(void 0),t2=e3.domain,n2=e3.range,r2=0,i2=1,a2,o2,s2=false,c2=0,l2=0,u2=.5;delete e3.unknown;function d2(){var e4=t2().length,d3=i2<r2,f2=d3?i2:r2,p2=d3?r2:i2;a2=(p2-f2)/Math.max(1,e4-c2+l2*2),s2&&(a2=Math.floor(a2)),f2+=(p2-f2-a2*(e4-c2))*u2,o2=a2*(1-c2),s2&&(f2=Math.round(f2),o2=Math.round(o2));var m2=Ko(e4).map(function(e5){return f2+a2*e5});return n2(d3?m2.reverse():m2)}return e3.domain=function(e4){return arguments.length?(t2(e4),d2()):t2()},e3.range=function(e4){return arguments.length?([r2,i2]=e4,r2=+r2,i2=+i2,d2()):[r2,i2]},e3.rangeRound=function(e4){return[r2,i2]=e4,r2=+r2,i2=+i2,s2=true,d2()},e3.bandwidth=function(){return o2},e3.step=function(){return a2},e3.round=function(e4){return arguments.length?(s2=!!e4,d2()):s2},e3.padding=function(e4){return arguments.length?(c2=Math.min(1,l2=+e4),d2()):c2},e3.paddingInner=function(e4){return arguments.length?(c2=Math.min(1,e4),d2()):c2},e3.paddingOuter=function(e4){return arguments.length?(l2=+e4,d2()):l2},e3.align=function(e4){return arguments.length?(u2=Math.max(0,Math.min(1,e4)),d2()):u2},e3.copy=function(){return Xo(t2(),[r2,i2]).round(s2).paddingInner(c2).paddingOuter(l2).align(u2)},qo.apply(d2(),arguments)}function Zo(e3){var t2=e3.copy;return e3.padding=e3.paddingOuter,delete e3.paddingInner,delete e3.paddingOuter,e3.copy=function(){return Zo(t2())},e3}function Qo(){return Zo(Xo.apply(null,arguments).paddingInner(1))}function $o(e3){return function(){return e3}}function es(e3){return+e3}var ts=[0,1];function ns(e3){return e3}function rs(e3,t2){return(t2-=e3=+e3)?function(n2){return(n2-e3)/t2}:$o(isNaN(t2)?NaN:.5)}function is(e3,t2){var n2;return e3>t2&&(n2=e3,e3=t2,t2=n2),function(n3){return Math.max(e3,Math.min(t2,n3))}}function as(e3,t2,n2){var r2=e3[0],i2=e3[1],a2=t2[0],o2=t2[1];return i2<r2?(r2=rs(i2,r2),a2=n2(o2,a2)):(r2=rs(r2,i2),a2=n2(a2,o2)),function(e4){return a2(r2(e4))}}function os(e3,t2,n2){var r2=Math.min(e3.length,t2.length)-1,i2=Array(r2),a2=Array(r2),o2=-1;for(e3[r2]<e3[0]&&(e3=e3.slice().reverse(),t2=t2.slice().reverse());++o2<r2;)i2[o2]=rs(e3[o2],e3[o2+1]),a2[o2]=n2(t2[o2],t2[o2+1]);return function(t3){var n3=Mo(e3,t3,1,r2)-1;return a2[n3](i2[n3](t3))}}function ss(e3,t2){return t2.domain(e3.domain()).range(e3.range()).interpolate(e3.interpolate()).clamp(e3.clamp()).unknown(e3.unknown())}function cs(){var e3=ts,t2=ts,n2=jn,r2,i2,a2,o2=ns,s2,c2,l2;function u2(){var n3=Math.min(e3.length,t2.length);return o2!==ns&&(o2=is(e3[0],e3[n3-1])),s2=n3>2?os:as,c2=l2=null,d2}function d2(i3){return i3==null||isNaN(i3=+i3)?a2:(c2||=s2(e3.map(r2),t2,n2))(r2(o2(i3)))}return d2.invert=function(n3){return o2(i2((l2||=s2(t2,e3.map(r2),wn))(n3)))},d2.domain=function(t3){return arguments.length?(e3=Array.from(t3,es),u2()):e3.slice()},d2.range=function(e4){return arguments.length?(t2=Array.from(e4),u2()):t2.slice()},d2.rangeRound=function(e4){return t2=Array.from(e4),n2=Mn,u2()},d2.clamp=function(e4){return arguments.length?(o2=e4?true:ns,u2()):o2!==ns},d2.interpolate=function(e4){return arguments.length?(n2=e4,u2()):n2},d2.unknown=function(e4){return arguments.length?(a2=e4,d2):a2},function(e4,t3){return r2=e4,i2=t3,u2()}}function ls(){return cs()(ns,ns)}function us(e3){return Math.abs(e3=Math.round(e3))>=1e21?e3.toLocaleString("en").replace(/,/g,""):e3.toString(10)}function ds(e3,t2){if(!isFinite(e3)||e3===0)return null;var n2=(e3=t2?e3.toExponential(t2-1):e3.toExponential()).indexOf("e"),r2=e3.slice(0,n2);return[r2.length>1?r2[0]+r2.slice(2):r2,+e3.slice(n2+1)]}function fs(e3){return e3=ds(Math.abs(e3)),e3?e3[1]:NaN}function ps(e3,t2){return function(n2,r2){for(var i2=n2.length,a2=[],o2=0,s2=e3[0],c2=0;i2>0&&s2>0&&(c2+s2+1>r2&&(s2=Math.max(1,r2-c2)),a2.push(n2.substring(i2-=s2,i2+s2)),!((c2+=s2+1)>r2));)s2=e3[o2=(o2+1)%e3.length];return a2.reverse().join(t2)}}function ms(e3){return function(t2){return t2.replace(/[0-9]/g,function(t3){return e3[+t3]})}}var hs=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function gs(e3){if(!(t2=hs.exec(e3)))throw Error("invalid format: "+e3);var t2;return new _s({fill:t2[1],align:t2[2],sign:t2[3],symbol:t2[4],zero:t2[5],width:t2[6],comma:t2[7],precision:t2[8]&&t2[8].slice(1),trim:t2[9],type:t2[10]})}gs.prototype=_s.prototype;function _s(e3){this.fill=e3.fill===void 0?" ":e3.fill+"",this.align=e3.align===void 0?">":e3.align+"",this.sign=e3.sign===void 0?"-":e3.sign+"",this.symbol=e3.symbol===void 0?"":e3.symbol+"",this.zero=!!e3.zero,this.width=e3.width===void 0?void 0:+e3.width,this.comma=!!e3.comma,this.precision=e3.precision===void 0?void 0:+e3.precision,this.trim=!!e3.trim,this.type=e3.type===void 0?"":e3.type+""}_s.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 vs(e3){out:for(var t2=e3.length,n2=1,r2=-1,i2;n2<t2;++n2)switch(e3[n2]){case".":r2=i2=n2;break;case"0":r2===0&&(r2=n2),i2=n2;break;default:if(!+e3[n2])break out;r2>0&&(r2=0)}return r2>0?e3.slice(0,r2)+e3.slice(i2+1):e3}var ys;function bs(e3,t2){var n2=ds(e3,t2);if(!n2)return ys=void 0,e3.toPrecision(t2);var r2=n2[0],i2=n2[1],a2=i2-(ys=Math.max(-8,Math.min(8,Math.floor(i2/3)))*3)+1,o2=r2.length;return a2===o2?r2:a2>o2?r2+Array(a2-o2+1).join("0"):a2>0?r2.slice(0,a2)+"."+r2.slice(a2):"0."+Array(1-a2).join("0")+ds(e3,Math.max(0,t2+a2-1))[0]}function xs(e3,t2){var n2=ds(e3,t2);if(!n2)return e3+"";var r2=n2[0],i2=n2[1];return i2<0?"0."+Array(-i2).join("0")+r2:r2.length>i2+1?r2.slice(0,i2+1)+"."+r2.slice(i2+1):r2+Array(i2-r2.length+2).join("0")}var Ss={"%":(e3,t2)=>(e3*100).toFixed(t2),b:e3=>Math.round(e3).toString(2),c:e3=>e3+"",d:us,e:(e3,t2)=>e3.toExponential(t2),f:(e3,t2)=>e3.toFixed(t2),g:(e3,t2)=>e3.toPrecision(t2),o:e3=>Math.round(e3).toString(8),p:(e3,t2)=>xs(e3*100,t2),r:xs,s:bs,X:e3=>Math.round(e3).toString(16).toUpperCase(),x:e3=>Math.round(e3).toString(16)};function Cs(e3){return e3}var ws=Array.prototype.map,Ts=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function Es(e3){var t2=e3.grouping===void 0||e3.thousands===void 0?Cs:ps(ws.call(e3.grouping,Number),e3.thousands+""),n2=e3.currency===void 0?"":e3.currency[0]+"",r2=e3.currency===void 0?"":e3.currency[1]+"",i2=e3.decimal===void 0?".":e3.decimal+"",a2=e3.numerals===void 0?Cs:ms(ws.call(e3.numerals,String)),o2=e3.percent===void 0?"%":e3.percent+"",s2=e3.minus===void 0?"−":e3.minus+"",c2=e3.nan===void 0?"NaN":e3.nan+"";function l2(e4,l3){e4=gs(e4);var u3=e4.fill,d2=e4.align,f2=e4.sign,p2=e4.symbol,m2=e4.zero,h2=e4.width,g2=e4.comma,_2=e4.precision,v2=e4.trim,y2=e4.type;y2==="n"?(g2=true,y2="g"):Ss[y2]||(_2===void 0&&(_2=12),v2=true,y2="g"),(m2||u3==="0"&&d2==="=")&&(m2=true,u3="0",d2="=");var b2=(l3&&l3.prefix!==void 0?l3.prefix:"")+(p2==="$"?n2:p2==="#"&&/[boxX]/.test(y2)?"0"+y2.toLowerCase():""),x2=(p2==="$"?r2:/[%p]/.test(y2)?o2:"")+(l3&&l3.suffix!==void 0?l3.suffix:""),S2=Ss[y2],C2=/[defgprs%]/.test(y2);_2=_2===void 0?6:/[gprs]/.test(y2)?Math.max(1,Math.min(21,_2)):Math.max(0,Math.min(20,_2));function w2(e5){var n3=b2,r3=x2,o3,l4,p3;if(y2==="c")r3=S2(e5)+r3,e5="";else{e5=+e5;var w3=e5<0||1/e5<0;if(e5=isNaN(e5)?c2:S2(Math.abs(e5),_2),v2&&(e5=vs(e5)),w3&&+e5==0&&f2!=="+"&&(w3=false),n3=(w3?f2==="("?f2:s2:f2==="-"||f2==="("?"":f2)+n3,r3=(y2==="s"&&!isNaN(e5)&&ys!==void 0?Ts[8+ys/3]:"")+r3+(w3&&f2==="("?")":""),C2){for(o3=-1,l4=e5.length;++o3<l4;)if(p3=e5.charCodeAt(o3),48>p3||p3>57){r3=(p3===46?i2+e5.slice(o3+1):e5.slice(o3))+r3,e5=e5.slice(0,o3);break}}}g2&&!m2&&(e5=t2(e5,Infinity));var T2=n3.length+e5.length+r3.length,E2=T2<h2?Array(h2-T2+1).join(u3):"";switch(g2&&m2&&(e5=t2(E2+e5,E2.length?h2-r3.length:Infinity),E2=""),d2){case"<":e5=n3+e5+r3+E2;break;case"=":e5=n3+E2+e5+r3;break;case"^":e5=E2.slice(0,T2=E2.length>>1)+n3+e5+r3+E2.slice(T2);break;default:e5=E2+n3+e5+r3}return a2(e5)}return w2.toString=function(){return e4+""},w2}function u2(e4,t3){var n3=Math.max(-8,Math.min(8,Math.floor(fs(t3)/3)))*3,r3=10**-n3,i3=l2((e4=gs(e4),e4.type="f",e4),{suffix:Ts[8+n3/3]});return function(e5){return i3(r3*e5)}}return{format:l2,formatPrefix:u2}}var Ds,Os,ks;As({thousands:",",grouping:[3],currency:["$",""]});function As(e3){return Ds=Es(e3),Os=Ds.format,ks=Ds.formatPrefix,Ds}function js(e3){return Math.max(0,-fs(Math.abs(e3)))}function Ms(e3,t2){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(fs(t2)/3)))*3-fs(Math.abs(e3)))}function Ns(e3,t2){return e3=Math.abs(e3),t2=Math.abs(t2)-e3,Math.max(0,fs(t2)-fs(e3))+1}function Ps(e3,t2,n2,r2){var i2=Go(e3,t2,n2),a2;switch(r2=gs(r2??",f"),r2.type){case"s":var o2=Math.max(Math.abs(e3),Math.abs(t2));return r2.precision==null&&!isNaN(a2=Ms(i2,o2))&&(r2.precision=a2),ks(r2,o2);case"":case"e":case"g":case"p":case"r":r2.precision==null&&!isNaN(a2=Ns(i2,Math.max(Math.abs(e3),Math.abs(t2))))&&(r2.precision=a2-(r2.type==="e"));break;case"f":case"%":r2.precision==null&&!isNaN(a2=js(i2))&&(r2.precision=a2-(r2.type==="%")*2)}return Os(r2)}function Fs(e3){var t2=e3.domain;return e3.ticks=function(e4){var n2=t2();return Uo(n2[0],n2[n2.length-1],e4??10)},e3.tickFormat=function(e4,n2){var r2=t2();return Ps(r2[0],r2[r2.length-1],e4??10,n2)},e3.nice=function(n2){n2??=10;var r2=t2(),i2=0,a2=r2.length-1,o2=r2[i2],s2=r2[a2],c2,l2,u2=10;for(s2<o2&&(l2=o2,o2=s2,s2=l2,l2=i2,i2=a2,a2=l2);u2-- >0;){if(l2=Wo(o2,s2,n2),l2===c2)return r2[i2]=o2,r2[a2]=s2,t2(r2);if(l2>0)o2=Math.floor(o2/l2)*l2,s2=Math.ceil(s2/l2)*l2;else if(l2<0)o2=Math.ceil(o2*l2)/l2,s2=Math.floor(s2*l2)/l2;else break;c2=l2}return e3},e3}function Is(){var e3=ls();return e3.copy=function(){return ss(e3,Is())},qo.apply(e3,arguments),Fs(e3)}function Ls(e3,t2){e3=e3.slice();var n2=0,r2=e3.length-1,i2=e3[n2],a2=e3[r2],o2;return a2<i2&&(o2=n2,n2=r2,r2=o2,o2=i2,i2=a2,a2=o2),e3[n2]=t2.floor(i2),e3[r2]=t2.ceil(a2),e3}var Rs=new Date,zs=new Date;function Bs(e3,t2,n2,r2){function i2(t3){return e3(t3=arguments.length===0?new Date:new Date(+t3)),t3}return i2.floor=t3=>(e3(t3=new Date(+t3)),t3),i2.ceil=n3=>(e3(n3=new Date(n3-1)),t2(n3,1),e3(n3),n3),i2.round=e4=>{let t3=i2(e4),n3=i2.ceil(e4);return e4-t3<n3-e4?t3:n3},i2.offset=(e4,n3)=>(t2(e4=new Date(+e4),n3==null?1:Math.floor(n3)),e4),i2.range=(n3,r3,a2)=>{let o2=[];if(n3=i2.ceil(n3),a2=a2==null?1:Math.floor(a2),!(n3<r3)||!(a2>0))return o2;let s2;do o2.push(s2=new Date(+n3)),t2(n3,a2),e3(n3);while(s2<n3&&n3<r3);return o2},i2.filter=n3=>Bs(t3=>{if(t3>=t3)for(;e3(t3),!n3(t3);)t3.setTime(t3-1)},(e4,r3)=>{if(e4>=e4){if(r3<0)for(;++r3<=0;)for(;t2(e4,-1),!n3(e4););else for(;--r3>=0;)for(;t2(e4,1),!n3(e4););}}),n2&&(i2.count=(t3,r3)=>(Rs.setTime(+t3),zs.setTime(+r3),e3(Rs),e3(zs),Math.floor(n2(Rs,zs))),i2.every=e4=>(e4=Math.floor(e4),!isFinite(e4)||!(e4>0)?null:e4>1?i2.filter(r2?t3=>r2(t3)%e4===0:t3=>i2.count(0,t3)%e4===0):i2)),i2}var Vs=Bs(()=>{},(e3,t2)=>{e3.setTime(+e3+t2)},(e3,t2)=>t2-e3);Vs.every=e3=>(e3=Math.floor(e3),!isFinite(e3)||!(e3>0)?null:e3>1?Bs(t2=>{t2.setTime(Math.floor(t2/e3)*e3)},(t2,n2)=>{t2.setTime(+t2+n2*e3)},(t2,n2)=>(n2-t2)/e3):Vs),Vs.range;var Hs=1e3,Us=Hs*60,Ws=Us*60,Gs=Ws*24,Ks=Gs*7,qs=Gs*30,Js=Gs*365,Ys=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds())},(e3,t2)=>{e3.setTime(+e3+t2*Hs)},(e3,t2)=>(t2-e3)/Hs,e3=>e3.getUTCSeconds());Ys.range;var Xs=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds()-e3.getSeconds()*Hs)},(e3,t2)=>{e3.setTime(+e3+t2*Us)},(e3,t2)=>(t2-e3)/Us,e3=>e3.getMinutes());Xs.range;var Zs=Bs(e3=>{e3.setUTCSeconds(0,0)},(e3,t2)=>{e3.setTime(+e3+t2*Us)},(e3,t2)=>(t2-e3)/Us,e3=>e3.getUTCMinutes());Zs.range;var Qs=Bs(e3=>{e3.setTime(e3-e3.getMilliseconds()-e3.getSeconds()*Hs-e3.getMinutes()*Us)},(e3,t2)=>{e3.setTime(+e3+t2*Ws)},(e3,t2)=>(t2-e3)/Ws,e3=>e3.getHours());Qs.range;var $s=Bs(e3=>{e3.setUTCMinutes(0,0,0)},(e3,t2)=>{e3.setTime(+e3+t2*Ws)},(e3,t2)=>(t2-e3)/Ws,e3=>e3.getUTCHours());$s.range;var ec=Bs(e3=>e3.setHours(0,0,0,0),(e3,t2)=>e3.setDate(e3.getDate()+t2),(e3,t2)=>(t2-e3-(t2.getTimezoneOffset()-e3.getTimezoneOffset())*Us)/Gs,e3=>e3.getDate()-1);ec.range;var tc=Bs(e3=>{e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCDate(e3.getUTCDate()+t2)},(e3,t2)=>(t2-e3)/Gs,e3=>e3.getUTCDate()-1);tc.range;var nc=Bs(e3=>{e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCDate(e3.getUTCDate()+t2)},(e3,t2)=>(t2-e3)/Gs,e3=>Math.floor(e3/Gs));nc.range;function rc(e3){return Bs(t2=>{t2.setDate(t2.getDate()-(t2.getDay()+7-e3)%7),t2.setHours(0,0,0,0)},(e4,t2)=>{e4.setDate(e4.getDate()+t2*7)},(e4,t2)=>(t2-e4-(t2.getTimezoneOffset()-e4.getTimezoneOffset())*Us)/Ks)}var ic=rc(0),ac=rc(1),oc=rc(2),sc=rc(3),cc=rc(4),lc=rc(5),uc=rc(6);ic.range,ac.range,oc.range,sc.range,cc.range,lc.range,uc.range;function dc(e3){return Bs(t2=>{t2.setUTCDate(t2.getUTCDate()-(t2.getUTCDay()+7-e3)%7),t2.setUTCHours(0,0,0,0)},(e4,t2)=>{e4.setUTCDate(e4.getUTCDate()+t2*7)},(e4,t2)=>(t2-e4)/Ks)}var fc=dc(0),pc=dc(1),mc=dc(2),hc=dc(3),gc=dc(4),_c=dc(5),vc=dc(6);fc.range,pc.range,mc.range,hc.range,gc.range,_c.range,vc.range;var yc=Bs(e3=>{e3.setDate(1),e3.setHours(0,0,0,0)},(e3,t2)=>{e3.setMonth(e3.getMonth()+t2)},(e3,t2)=>t2.getMonth()-e3.getMonth()+(t2.getFullYear()-e3.getFullYear())*12,e3=>e3.getMonth());yc.range;var bc=Bs(e3=>{e3.setUTCDate(1),e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCMonth(e3.getUTCMonth()+t2)},(e3,t2)=>t2.getUTCMonth()-e3.getUTCMonth()+(t2.getUTCFullYear()-e3.getUTCFullYear())*12,e3=>e3.getUTCMonth());bc.range;var xc=Bs(e3=>{e3.setMonth(0,1),e3.setHours(0,0,0,0)},(e3,t2)=>{e3.setFullYear(e3.getFullYear()+t2)},(e3,t2)=>t2.getFullYear()-e3.getFullYear(),e3=>e3.getFullYear());xc.every=e3=>!isFinite(e3=Math.floor(e3))||!(e3>0)?null:Bs(t2=>{t2.setFullYear(Math.floor(t2.getFullYear()/e3)*e3),t2.setMonth(0,1),t2.setHours(0,0,0,0)},(t2,n2)=>{t2.setFullYear(t2.getFullYear()+n2*e3)}),xc.range;var Sc=Bs(e3=>{e3.setUTCMonth(0,1),e3.setUTCHours(0,0,0,0)},(e3,t2)=>{e3.setUTCFullYear(e3.getUTCFullYear()+t2)},(e3,t2)=>t2.getUTCFullYear()-e3.getUTCFullYear(),e3=>e3.getUTCFullYear());Sc.every=e3=>!isFinite(e3=Math.floor(e3))||!(e3>0)?null:Bs(t2=>{t2.setUTCFullYear(Math.floor(t2.getUTCFullYear()/e3)*e3),t2.setUTCMonth(0,1),t2.setUTCHours(0,0,0,0)},(t2,n2)=>{t2.setUTCFullYear(t2.getUTCFullYear()+n2*e3)}),Sc.range;function Cc(e3,t2,n2,r2,i2,a2){let o2=[[Ys,1,Hs],[Ys,5,5*Hs],[Ys,15,15*Hs],[Ys,30,30*Hs],[a2,1,Us],[a2,5,5*Us],[a2,15,15*Us],[a2,30,30*Us],[i2,1,Ws],[i2,3,3*Ws],[i2,6,6*Ws],[i2,12,12*Ws],[r2,1,Gs],[r2,2,2*Gs],[n2,1,Ks],[t2,1,qs],[t2,3,3*qs],[e3,1,Js]];function s2(e4,t3,n3){let r3=t3<e4;r3&&([e4,t3]=[t3,e4]);let i3=n3&&typeof n3.range=="function"?n3:c2(e4,t3,n3),a3=i3?i3.range(e4,+t3+1):[];return r3?a3.reverse():a3}function c2(t3,n3,r3){let i3=Math.abs(n3-t3)/r3,a3=Oo(([,,e4])=>e4).right(o2,i3);if(a3===o2.length)return e3.every(Go(t3/Js,n3/Js,r3));if(a3===0)return Vs.every(Math.max(Go(t3,n3,r3),1));let[s3,c3]=o2[i3/o2[a3-1][2]<o2[a3][2]/i3?a3-1:a3];return s3.every(c3)}return[s2,c2]}var[wc,Tc]=Cc(Sc,bc,fc,nc,$s,Zs),[Ec,Dc]=Cc(xc,yc,ic,ec,Qs,Xs);function Oc(e3){if(0<=e3.y&&e3.y<100){var t2=new Date(-1,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L);return t2.setFullYear(e3.y),t2}return new Date(e3.y,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L)}function kc(e3){if(0<=e3.y&&e3.y<100){var t2=new Date(Date.UTC(-1,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L));return t2.setUTCFullYear(e3.y),t2}return new Date(Date.UTC(e3.y,e3.m,e3.d,e3.H,e3.M,e3.S,e3.L))}function Ac(e3,t2,n2){return{y:e3,m:t2,d:n2,H:0,M:0,S:0,L:0}}function jc(e3){var t2=e3.dateTime,n2=e3.date,r2=e3.time,i2=e3.periods,a2=e3.days,o2=e3.shortDays,s2=e3.months,c2=e3.shortMonths,l2=Lc(i2),u2=Rc(i2),d2=Lc(a2),f2=Rc(a2),p2=Lc(o2),m2=Rc(o2),h2=Lc(s2),g2=Rc(s2),_2=Lc(c2),v2=Rc(c2),y2={a:N2,A:P2,b:F2,B:I2,c:null,d:al,e:al,f:ul,g:xl,G:Cl,H:ol,I:sl,j:cl,L:ll,m:dl,M:fl,p:L2,q:ee2,Q:Kl,s:ql,S:pl,u:ml,U:hl,V:_l,w:vl,W:yl,x:null,X:null,y:bl,Y:Sl,Z:wl,"%":Gl},b2={a:R2,A:z2,b:B2,B:V2,c:null,d:Tl,e:Tl,f:Al,g:Vl,G:Ul,H:El,I:Dl,j:Ol,L:kl,m:jl,M:Ml,p:H2,q:U2,Q:Kl,s:ql,S:Nl,u:Pl,U:Fl,V:Ll,w:Rl,W:zl,x:null,X:null,y:Bl,Y:Hl,Z:Wl,"%":Gl},x2={a:E2,A:D2,b:O2,B:k2,c:A2,d:Yc,e:Yc,f:tl,g:Gc,G:Wc,H:Zc,I:Zc,j:Xc,L:el,m:Jc,M:Qc,p:T2,q:qc,Q:rl,s:il,S:$c,u:Bc,U:Vc,V:Hc,w:zc,W:Uc,x:j2,X:M2,y:Gc,Y:Wc,Z:Kc,"%":nl};y2.x=S2(n2,y2),y2.X=S2(r2,y2),y2.c=S2(t2,y2),b2.x=S2(n2,b2),b2.X=S2(r2,b2),b2.c=S2(t2,b2);function S2(e4,t3){return function(n3){var r3=[],i3=-1,a3=0,o3=e4.length,s3,c3,l3;for(n3 instanceof Date||(n3=new Date(+n3));++i3<o3;)e4.charCodeAt(i3)===37&&(r3.push(e4.slice(a3,i3)),(c3=Mc[s3=e4.charAt(++i3)])==null?c3=s3==="e"?" ":"0":s3=e4.charAt(++i3),(l3=t3[s3])&&(s3=l3(n3,c3)),r3.push(s3),a3=i3+1);return r3.push(e4.slice(a3,i3)),r3.join("")}}function C2(e4,t3){return function(n3){var r3=Ac(1900,void 0,1),i3=w2(r3,e4,n3+="",0),a3,o3;if(i3!=n3.length)return null;if("Q"in r3)return new Date(r3.Q);if("s"in r3)return new Date(r3.s*1e3+("L"in r3?r3.L:0));if(t3&&!("Z"in r3)&&(r3.Z=0),"p"in r3&&(r3.H=r3.H%12+r3.p*12),r3.m===void 0&&(r3.m="q"in r3?r3.q:0),"V"in r3){if(r3.V<1||r3.V>53)return null;"w"in r3||(r3.w=1),"Z"in r3?(a3=kc(Ac(r3.y,0,1)),o3=a3.getUTCDay(),a3=o3>4||o3===0?pc.ceil(a3):pc(a3),a3=tc.offset(a3,(r3.V-1)*7),r3.y=a3.getUTCFullYear(),r3.m=a3.getUTCMonth(),r3.d=a3.getUTCDate()+(r3.w+6)%7):(a3=Oc(Ac(r3.y,0,1)),o3=a3.getDay(),a3=o3>4||o3===0?ac.ceil(a3):ac(a3),a3=ec.offset(a3,(r3.V-1)*7),r3.y=a3.getFullYear(),r3.m=a3.getMonth(),r3.d=a3.getDate()+(r3.w+6)%7)}else("W"in r3||"U"in r3)&&("w"in r3||(r3.w="u"in r3?r3.u%7:+("W"in r3)),o3="Z"in r3?kc(Ac(r3.y,0,1)).getUTCDay():Oc(Ac(r3.y,0,1)).getDay(),r3.m=0,r3.d="W"in r3?(r3.w+6)%7+r3.W*7-(o3+5)%7:r3.w+r3.U*7-(o3+6)%7);return"Z"in r3?(r3.H+=r3.Z/100|0,r3.M+=r3.Z%100,kc(r3)):Oc(r3)}}function w2(e4,t3,n3,r3){for(var i3=0,a3=t3.length,o3=n3.length,s3,c3;i3<a3;){if(r3>=o3)return-1;if(s3=t3.charCodeAt(i3++),s3===37){if(s3=t3.charAt(i3++),c3=x2[s3 in Mc?t3.charAt(i3++):s3],!c3||(r3=c3(e4,n3,r3))<0)return-1}else if(s3!=n3.charCodeAt(r3++))return-1}return r3}function T2(e4,t3,n3){var r3=l2.exec(t3.slice(n3));return r3?(e4.p=u2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function E2(e4,t3,n3){var r3=p2.exec(t3.slice(n3));return r3?(e4.w=m2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function D2(e4,t3,n3){var r3=d2.exec(t3.slice(n3));return r3?(e4.w=f2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function O2(e4,t3,n3){var r3=_2.exec(t3.slice(n3));return r3?(e4.m=v2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function k2(e4,t3,n3){var r3=h2.exec(t3.slice(n3));return r3?(e4.m=g2.get(r3[0].toLowerCase()),n3+r3[0].length):-1}function A2(e4,n3,r3){return w2(e4,t2,n3,r3)}function j2(e4,t3,r3){return w2(e4,n2,t3,r3)}function M2(e4,t3,n3){return w2(e4,r2,t3,n3)}function N2(e4){return o2[e4.getDay()]}function P2(e4){return a2[e4.getDay()]}function F2(e4){return c2[e4.getMonth()]}function I2(e4){return s2[e4.getMonth()]}function L2(e4){return i2[+(e4.getHours()>=12)]}function ee2(e4){return 1+~~(e4.getMonth()/3)}function R2(e4){return o2[e4.getUTCDay()]}function z2(e4){return a2[e4.getUTCDay()]}function B2(e4){return c2[e4.getUTCMonth()]}function V2(e4){return s2[e4.getUTCMonth()]}function H2(e4){return i2[+(e4.getUTCHours()>=12)]}function U2(e4){return 1+~~(e4.getUTCMonth()/3)}return{format:function(e4){var t3=S2(e4+="",y2);return t3.toString=function(){return e4},t3},parse:function(e4){var t3=C2(e4+="",false);return t3.toString=function(){return e4},t3},utcFormat:function(e4){var t3=S2(e4+="",b2);return t3.toString=function(){return e4},t3},utcParse:function(e4){var t3=C2(e4+="",true);return t3.toString=function(){return e4},t3}}}var Mc={"-":"",_:" ",0:"0"},Nc=/^\s*\d+/,Pc=/^%/,Fc=/[\\^$*+?|[\]().{}]/g;function Q(e3,t2,n2){var r2=e3<0?"-":"",i2=(r2?-e3:e3)+"",a2=i2.length;return r2+(a2<n2?Array(n2-a2+1).join(t2)+i2:i2)}function Ic(e3){return e3.replace(Fc,"\\$&")}function Lc(e3){return RegExp("^(?:"+e3.map(Ic).join("|")+")","i")}function Rc(e3){return new Map(e3.map((e4,t2)=>[e4.toLowerCase(),t2]))}function zc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.w=+r2[0],n2+r2[0].length):-1}function Bc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.u=+r2[0],n2+r2[0].length):-1}function Vc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.U=+r2[0],n2+r2[0].length):-1}function Hc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.V=+r2[0],n2+r2[0].length):-1}function Uc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.W=+r2[0],n2+r2[0].length):-1}function Wc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+4));return r2?(e3.y=+r2[0],n2+r2[0].length):-1}function Gc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.y=+r2[0]+(+r2[0]>68?1900:2e3),n2+r2[0].length):-1}function Kc(e3,t2,n2){var r2=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t2.slice(n2,n2+6));return r2?(e3.Z=r2[1]?0:-(r2[2]+(r2[3]||"00")),n2+r2[0].length):-1}function qc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+1));return r2?(e3.q=r2[0]*3-3,n2+r2[0].length):-1}function Jc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.m=r2[0]-1,n2+r2[0].length):-1}function Yc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.d=+r2[0],n2+r2[0].length):-1}function Xc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+3));return r2?(e3.m=0,e3.d=+r2[0],n2+r2[0].length):-1}function Zc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.H=+r2[0],n2+r2[0].length):-1}function Qc(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.M=+r2[0],n2+r2[0].length):-1}function $c(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+2));return r2?(e3.S=+r2[0],n2+r2[0].length):-1}function el(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+3));return r2?(e3.L=+r2[0],n2+r2[0].length):-1}function tl(e3,t2,n2){var r2=Nc.exec(t2.slice(n2,n2+6));return r2?(e3.L=Math.floor(r2[0]/1e3),n2+r2[0].length):-1}function nl(e3,t2,n2){var r2=Pc.exec(t2.slice(n2,n2+1));return r2?n2+r2[0].length:-1}function rl(e3,t2,n2){var r2=Nc.exec(t2.slice(n2));return r2?(e3.Q=+r2[0],n2+r2[0].length):-1}function il(e3,t2,n2){var r2=Nc.exec(t2.slice(n2));return r2?(e3.s=+r2[0],n2+r2[0].length):-1}function al(e3,t2){return Q(e3.getDate(),t2,2)}function ol(e3,t2){return Q(e3.getHours(),t2,2)}function sl(e3,t2){return Q(e3.getHours()%12||12,t2,2)}function cl(e3,t2){return Q(1+ec.count(xc(e3),e3),t2,3)}function ll(e3,t2){return Q(e3.getMilliseconds(),t2,3)}function ul(e3,t2){return ll(e3,t2)+"000"}function dl(e3,t2){return Q(e3.getMonth()+1,t2,2)}function fl(e3,t2){return Q(e3.getMinutes(),t2,2)}function pl(e3,t2){return Q(e3.getSeconds(),t2,2)}function ml(e3){var t2=e3.getDay();return t2===0?7:t2}function hl(e3,t2){return Q(ic.count(xc(e3)-1,e3),t2,2)}function gl(e3){var t2=e3.getDay();return t2>=4||t2===0?cc(e3):cc.ceil(e3)}function _l(e3,t2){return e3=gl(e3),Q(cc.count(xc(e3),e3)+(xc(e3).getDay()===4),t2,2)}function vl(e3){return e3.getDay()}function yl(e3,t2){return Q(ac.count(xc(e3)-1,e3),t2,2)}function bl(e3,t2){return Q(e3.getFullYear()%100,t2,2)}function xl(e3,t2){return e3=gl(e3),Q(e3.getFullYear()%100,t2,2)}function Sl(e3,t2){return Q(e3.getFullYear()%1e4,t2,4)}function Cl(e3,t2){var n2=e3.getDay();return e3=n2>=4||n2===0?cc(e3):cc.ceil(e3),Q(e3.getFullYear()%1e4,t2,4)}function wl(e3){var t2=e3.getTimezoneOffset();return(t2>0?"-":(t2*=-1,"+"))+Q(t2/60|0,"0",2)+Q(t2%60,"0",2)}function Tl(e3,t2){return Q(e3.getUTCDate(),t2,2)}function El(e3,t2){return Q(e3.getUTCHours(),t2,2)}function Dl(e3,t2){return Q(e3.getUTCHours()%12||12,t2,2)}function Ol(e3,t2){return Q(1+tc.count(Sc(e3),e3),t2,3)}function kl(e3,t2){return Q(e3.getUTCMilliseconds(),t2,3)}function Al(e3,t2){return kl(e3,t2)+"000"}function jl(e3,t2){return Q(e3.getUTCMonth()+1,t2,2)}function Ml(e3,t2){return Q(e3.getUTCMinutes(),t2,2)}function Nl(e3,t2){return Q(e3.getUTCSeconds(),t2,2)}function Pl(e3){var t2=e3.getUTCDay();return t2===0?7:t2}function Fl(e3,t2){return Q(fc.count(Sc(e3)-1,e3),t2,2)}function Il(e3){var t2=e3.getUTCDay();return t2>=4||t2===0?gc(e3):gc.ceil(e3)}function Ll(e3,t2){return e3=Il(e3),Q(gc.count(Sc(e3),e3)+(Sc(e3).getUTCDay()===4),t2,2)}function Rl(e3){return e3.getUTCDay()}function zl(e3,t2){return Q(pc.count(Sc(e3)-1,e3),t2,2)}function Bl(e3,t2){return Q(e3.getUTCFullYear()%100,t2,2)}function Vl(e3,t2){return e3=Il(e3),Q(e3.getUTCFullYear()%100,t2,2)}function Hl(e3,t2){return Q(e3.getUTCFullYear()%1e4,t2,4)}function Ul(e3,t2){var n2=e3.getUTCDay();return e3=n2>=4||n2===0?gc(e3):gc.ceil(e3),Q(e3.getUTCFullYear()%1e4,t2,4)}function Wl(){return"+0000"}function Gl(){return"%"}function Kl(e3){return+e3}function ql(e3){return Math.floor(e3/1e3)}var Jl,Yl;Xl({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 Xl(e3){return Jl=jc(e3),Jl.format,Jl.parse,Yl=Jl.utcFormat,Jl.utcParse,Jl}function Zl(e3){return new Date(e3)}function Ql(e3){return e3 instanceof Date?+e3:+new Date(+e3)}function $l(e3,t2,n2,r2,i2,a2,o2,s2,c2,l2){var u2=ls(),d2=u2.invert,f2=u2.domain,p2=l2(".%L"),m2=l2(":%S"),h2=l2("%I:%M"),g2=l2("%I %p"),_2=l2("%a %d"),v2=l2("%b %d"),y2=l2("%B"),b2=l2("%Y");function x2(e4){return(c2(e4)<e4?p2:s2(e4)<e4?m2:o2(e4)<e4?h2:a2(e4)<e4?g2:r2(e4)<e4?i2(e4)<e4?_2:v2:n2(e4)<e4?y2:b2)(e4)}return u2.invert=function(e4){return new Date(d2(e4))},u2.domain=function(e4){return arguments.length?f2(Array.from(e4,Ql)):f2().map(Zl)},u2.ticks=function(t3){var n3=f2();return e3(n3[0],n3[n3.length-1],t3??10)},u2.tickFormat=function(e4,t3){return t3==null?x2:l2(t3)},u2.nice=function(e4){var n3=f2();return(!e4||typeof e4.range!="function")&&(e4=t2(n3[0],n3[n3.length-1],e4??10)),e4?f2(Ls(n3,e4)):u2},u2.copy=function(){return ss(u2,$l(e3,t2,n2,r2,i2,a2,o2,s2,c2,l2))},u2}function eu(){return qo.apply($l(wc,Tc,Sc,bc,fc,tc,$s,Zs,Ys,Yl).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function tu(e3,t2,n2){let r2=n2?.includeZero??true,i2=n2?.stacked??false,a2=Infinity,o2=-Infinity;if(i2){let t3=new Map,n3=new Map;for(let r3 of e3)for(let e4 of r3.data){let r4=$(e4),i3=e4.y>=0?t3:n3;i3.set(r4,(i3.get(r4)??0)+e4.y)}for(let e4 of[...t3.values(),...n3.values()])e4<a2&&(a2=e4),e4>o2&&(o2=e4)}else for(let t3 of e3)for(let e4 of t3.data)e4.y<a2&&(a2=e4.y),e4.y>o2&&(o2=e4.y);(!Number.isFinite(a2)||!Number.isFinite(o2))&&(a2=0,o2=1),r2&&(a2>0&&(a2=0),o2<0&&(o2=0));let s2=(o2-a2)*.05||1;return Is().domain([a2,o2+s2]).range(t2).nice()}function nu(e3,t2){let n2=[];for(let t3 of e3)for(let e4 of t3.data)typeof e4.x=="number"&&n2.push(e4.x);let[r2,i2]=No(n2);return Is().domain([r2??0,i2??1]).range(t2)}function ru(e3,t2){let n2=[];for(let t3 of e3)for(let e4 of t3.data){let t4=e4.x instanceof Date?e4.x.getTime():typeof e4.x=="number"?e4.x:new Date(e4.x).getTime();Number.isFinite(t4)&&n2.push(new Date(t4))}let[r2,i2]=No(n2);return eu().domain([r2??new Date(0),i2??new Date(0)]).range(t2)}function iu(e3,t2,n2=.2){return Xo().domain(ou(e3)).range(t2).padding(n2)}function au(e3,t2){return Qo().domain(ou(e3)).range(t2)}function ou(e3){let t2=new Set,n2=[];for(let r2 of e3)for(let e4 of r2.data){let r3=$(e4);t2.has(r3)||(t2.add(r3),n2.push(r3))}return n2}function $(e3){return e3.x instanceof Date?String(e3.x.getTime()):String(e3.x)}function su(e3,t2){if(t2==="time"){if(e3 instanceof Date)return e3.getTime();if(typeof e3=="string"){let t3=new Date(e3);return Number.isNaN(t3.getTime())?0:t3.getTime()}return typeof e3=="number"?e3:0}return t2==="linear"?typeof e3=="number"?e3:Number(e3)||0:$({x:e3})}function cu(e3,t2,n2){return e3(t2==="band"?$(n2):su(n2.x,t2))??NaN}function lu(e3){if(!Array.isArray(e3)||e3.length!==2)return null;let[t2,n2]=e3,r2=e4=>typeof e4=="string"||typeof e4=="number"||e4 instanceof Date;return r2(t2)&&r2(n2)?[t2,n2]:null}function uu(e3,t2){let[n2,r2]=t2[0]<=t2[1]?t2:[t2[1],t2[0]],i2=e3.domain().filter(t3=>{let i3=e3(t3);return i3!==void 0&&i3>=n2&&i3<=r2}),a2=i2[0],o2=i2[i2.length-1];return a2===void 0||o2===void 0?null:[a2,o2]}function du(e3,t2,n2){let r2=e3(t2),i2=e3(n2);if(r2===void 0||i2===void 0)return null;let a2=(e3.step?.()??0)/2,o2=Math.min(r2,i2)-a2,s2=Math.max(r2,i2)+a2;return{x:o2,width:Math.max(0,s2-o2)}}function fu(e3,t2,n2){if(!e3)return null;if(n2==="band")return du(t2,String(su(e3[0],"band")),String(su(e3[1],"band")));let r2=t2,i2=r2(su(e3[0],n2)),a2=r2(su(e3[1],n2));return!Number.isFinite(i2)||!Number.isFinite(a2)?null:{x:Math.min(i2,a2),width:Math.abs(a2-i2)}}function pu(e3,t2,n2){if(n2==="band")return uu(t2,e3);let r2=t2.invert;if(!r2)return null;let i2=r2(e3[0]),a2=r2(e3[1]);return n2==="time"?[new Date(i2),new Date(a2)]:[Number(i2),Number(a2)]}function mu(e3){if(typeof e3=="number")return Number.isFinite(e3)?e3:null;if(typeof e3=="string"&&e3.trim()!==""){let t2=Number(e3.trim());return Number.isFinite(t2)?t2:null}return null}function hu(e3){return e3 instanceof Date?Number.isNaN(e3.getTime())?null:e3:typeof e3=="number"?Number.isFinite(e3)?e3:null:typeof e3=="string"?e3===""?null:e3:typeof e3=="boolean"?String(e3):null}var gu=e3=>Array.isArray(e3)?e3.filter(e4=>typeof e4=="object"&&!!e4&&!Array.isArray(e4)):[],_u=(e3,t2)=>(e3===void 0?[t2]:typeof e3=="string"?[e3]:[...e3]).filter(e4=>typeof e4=="string"&&e4!=="");function vu(e3){let t2=[];return e3.forEach((e4,n2)=>{if(typeof e4!="object"||!e4)return;let r2=e4;if(!Array.isArray(r2.data))return;let i2=[];for(let e5 of r2.data){if(typeof e5!="object"||!e5)continue;let t3=e5,n3=hu(t3.x),r3=mu(t3.y);n3!==null&&r3!==null&&i2.push({...t3,x:n3,y:r3})}let a2=typeof r2.id=="string"&&r2.id!==""?r2.id:typeof r2.id=="number"?String(r2.id):`series-${n2+1}`;t2.push({...r2,id:a2,data:i2})}),t2}function yu(e3){if(Array.isArray(e3.series))return vu(e3.series);let t2=gu(e3.data);if(t2.length===0)return[];let n2=e3.x||"x",r2=_u(e3.y,"y"),i2=typeof e3.series=="string"&&e3.series!==""?e3.series:void 0,a2=new Map,o2=(e4,t3)=>{let n3=a2.get(e4);return n3||(n3={id:e4,label:t3,data:[]},a2.set(e4,n3)),n3};if(!i2)for(let e4 of r2)o2(e4,e4);for(let e4 of t2){let t3=hu(e4[n2]);if(t3===null)continue;let a3=i2===void 0?void 0:hu(e4[i2]);if(i2===void 0||a3!==null)for(let n3 of r2){let i3=mu(e4[n3]);if(i3===null)continue;let s2=a3===void 0?n3:r2.length>1?`${String(a3)} · ${n3}`:String(a3);o2(s2,s2).data.push({x:t3,y:i3,datum:e4})}}return[...a2.values()].filter(e4=>e4.data.length>0)}function bu(e3,t2={}){let n2=t2.x||"x",r2=t2.y||"y",i2=[];for(let t3 of gu(e3)){let e4=hu(t3[n2]),a2=mu(t3[r2]);e4!==null&&a2!==null&&i2.push(n2==="x"&&r2==="y"?{...t3,x:e4,y:a2}:{x:e4,y:a2,datum:t3})}return i2}function xu(e3,t2={}){let n2=t2.label||"label",r2=t2.value||"value",i2=new Map;for(let a2 of gu(e3)){let e4=hu(a2[n2]),o2=mu(a2[r2]);if(e4===null||o2===null)continue;let s2=e4 instanceof Date?e4.toISOString():String(e4),c2=i2.get(s2);if(c2){c2.value+=o2;continue}let l2=t2.color?a2[t2.color]:void 0;i2.set(s2,{id:s2,label:s2,value:o2,...typeof l2=="string"&&l2?{color:l2}:{}})}return[...i2.values()]}var Su=e3=>e3 instanceof Date?e3.toISOString():String(e3);function Cu(e3){let t2=[];return e3.forEach((e4,n2)=>{if(typeof e4!="object"||!e4||Array.isArray(e4))return;let r2=e4,i2=mu(r2.value);if(i2===null)return;let a2=hu(r2.label),o2=hu(r2.id);t2.push({id:o2===null?a2===null?`slice-${n2+1}`:Su(a2):Su(o2),...a2===null?{}:{label:Su(a2)},value:i2,...typeof r2.color=="string"&&r2.color?{color:r2.color}:{}})}),t2}function wu(e3){let t2=[];for(let n2 of e3){if(typeof n2!="object"||!n2||Array.isArray(n2))continue;let e4=n2,r2=hu(e4.label),i2=mu(e4.base),a2=mu(e4.value);r2!==null&&i2!==null&&a2!==null&&t2.push({label:Su(r2),base:i2,value:a2,display:mu(e4.display)??a2,...typeof e4.color=="string"&&e4.color?{color:e4.color}:{},...e4.total===true?{total:true}:{}})}return t2}var Tu=new Set([true,1,"true","1","total"]);function Eu(e3,t2={}){let n2=t2.label||"label",r2=t2.value||"value",i2=t2.total||void 0,a2=0,o2=[];for(let t3 of gu(e3)){let e4=hu(t3[n2]);if(e4===null)continue;let s2=mu(t3[r2]);if(i2!==void 0&&Tu.has(t3[i2])){s2!==null&&(a2=s2),o2.push({label:Su(e4),base:0,value:a2,display:a2,total:true});continue}s2!==null&&(o2.push({label:Su(e4),base:a2,value:s2,display:s2}),a2+=s2)}return o2}var Du=/^\d{4}-\d{2}-\d{2}(?:[T ][\d:.]+(?:Z|[+-]\d{2}:?\d{2})?)?$/;function Ou(e3){let t2=0,n2=0,r2=0;for(let i2 of e3)for(let e4 of i2.data)t2++,e4.x instanceof Date||typeof e4.x=="string"&&Du.test(e4.x)?n2++:typeof e4.x=="number"&&r2++;return t2===0?"band":n2===t2?"time":r2===t2?"linear":"band"}var ku=e3=>e3.some(e4=>e4.data.length>0);function Au(e3){let t2=new Map;for(let n2 of e3)for(let e4 of n2.data)t2.has($(e4))||t2.set($(e4),e4.x);return[...t2].map(([e4,t3])=>({key:e4,x:t3}))}var ju=480,Mu=e3=>e3>0&&e3<480,Nu=e3=>typeof e3?.width=="number"&&Number.isFinite(e3.width)&&e3.width>0?Math.floor(e3.width):0;function Pu(e3,n2){let r2=i(null),o2=Nu(n2),[s2,c2]=a(0);return t(()=>{if(o2>0)return;let e4=r2.current;if(!e4)return;let t2=e4.getBoundingClientRect().width;if(t2>0&&c2(Math.floor(t2)),typeof ResizeObserver>"u")return;let n3=new ResizeObserver(e5=>{for(let t3 of e5){let e6=t3.contentRect.width;e6>0&&c2(Math.floor(e6))}});return n3.observe(e4),()=>n3.disconnect()},[o2]),{ref:r2,dims:{width:o2||s2,height:e3}}}function Fu({hasData:e3,isLoading:t2,error:n2}){return e3?"ready":n2?"error":t2?"loading":"empty"}function Iu({chartClass:e3,className:t2,style:n2,title:r2,showTitle:i2=false,description:a2,width:o2,height:c2,measureRef:l2,state:d2,table:m2,legend:h2,tooltip:g2,children:_2}){let v2=d2==="ready"&&o2>0;return p("figure",{className:s("charts-frame",e3,t2),"data-state":d2,"data-width":o2>0?Mu(o2)?"narrow":"regular":void 0,"aria-busy":d2==="loading"||void 0,style:u({"--charts-plot-height":`${c2}px`},n2),children:[r2||a2?p("figcaption",{className:"charts-frame__caption","data-visible":i2&&r2?"true":void 0,children:[r2?f("span",{className:"charts-frame__title",children:r2}):null,r2&&a2?" ":null,a2?f("span",{className:"charts-frame__description",children:a2}):null]}):null,p("div",{className:"charts-frame__plot",ref:l2,children:[v2?_2:null,d2==="ready"&&!v2?f("div",{className:"charts-frame__placeholder","aria-hidden":true}):null,d2==="loading"?f("div",{className:"charts-frame__placeholder","data-loading":"true","aria-hidden":true}):null,d2==="error"?f("p",{className:"charts-frame__notice",role:"status",children:"The data for this chart could not be loaded."}):null,v2?g2:null]}),d2==="ready"?h2:null,d2==="ready"&&m2&&m2.rows.length>0?f(Lu,{table:m2}):null]})}function Lu({table:e3}){return f("div",{className:"charts-frame__data",children:p("table",{className:"charts-frame__table",children:[f("thead",{children:f("tr",{children:e3.columns.map((e4,t2)=>f("th",{scope:"col",children:e4},t2))})}),f("tbody",{children:e3.rows.map((e4,t2)=>f("tr",{children:e4.map((e5,t3)=>t3===0?f("th",{scope:"row",children:e5},t3):f("td",{children:e5},t3))},t2))})]})})}function Ru(e3,t2){let n2=t2.xFormatter??(e4=>vo(e4,t2.xFormat??(t2.xType==="time"?"date":void 0),t2.loc)),r2=t2.yFormatter??(e4=>vo(e4,t2.yFormat,t2.loc)),i2=e3.map(e4=>{let t3=new Map;for(let n3 of e4.data)t3.has($(n3))||t3.set($(n3),n3.y);return t3});return{columns:[t2.xLabel,...e3.map(e4=>e4.label??e4.id)],rows:Au(e3).map(({key:e4,x:t3})=>[n2(t3),...i2.map(t4=>{let n3=t4.get(e4);return n3===void 0?"":r2(n3)})])}}function zu(e3){return`var(--chart-${(Math.trunc(e3)%8+8)%8+1})`}var Bu={muted:"neutral",good:"success",warn:"warning",critical:"danger"};function Vu(e3){return e3==="neutral"?"var(--chart-muted)":e3==="strong"?"var(--chart-fg)":`var(--color-${e3})`}function Hu(e3){if(typeof e3!="string"||e3==="")return;let t2=/^series-([1-9]\d*)$/.exec(e3);if(t2)return zu(Number(t2[1])-1);let n2=Bu[e3];if(n2)return Vu(n2);let r2=l(e3,"neutral");return r2===l(e3,"strong")?Vu(r2):e3}function Uu(e3,t2){return Hu(e3)??zu(t2)}function Wu(e3,t2){let n2=[];for(let r2=0;r2<e3;r2++){let e4=t2&&t2.length>0?t2[r2%t2.length]:void 0;n2.push(Uu(e4,r2))}return n2}function Gu(e3,t2){let n2=Wu(e3.length,t2);return e3.map((e4,t3)=>Hu(e4.color)??n2[t3]??zu(t3))}function Ku(e3,t2=36){return ro(no[(Math.trunc(e3)%no.length+no.length)%no.length],t2)()??""}function qu(e3,{xType:t2,xScale:n2,yScale:r2}){if(!Array.isArray(e3)||e3.length===0)return[];let i2=[];return e3.forEach((e4,a2)=>{if(typeof e4!="object"||!e4)return;let o2={key:`ref-${a2}`,stroke:Hu(e4.color),strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:Hu(e4.labelColor),labelFontSize:e4.labelFontSize};if(e4.y!==void 0&&e4.x===void 0){let t3=r2(e4.y);Number.isFinite(t3)&&i2.push({...o2,y:t3});return}if(e4.x!==void 0&&e4.y===void 0){let r3=Ju(e4.x,t2,n2);r3!==null&&i2.push({...o2,x:r3})}}),i2}function Ju(e3,t2,n2){let r2=n2;if(t2==="band"){let t3=r2(String(e3 instanceof Date?e3.getTime():e3));return t3===void 0||!Number.isFinite(t3)?null:t3+(r2.bandwidth?.()??0)/2}let i2=r2(su(e3,t2));return i2!==void 0&&Number.isFinite(i2)?i2:null}var Yu=(e3,t2)=>`${e3}:${t2}`;function Xu(e3,t2,n2){for(let r2=t2;r2>=0&&r2<e3.length;r2+=n2)if((e3[r2]??0)>0)return r2;return null}function Zu(e3,t2,n2){let r2=e3[t2.row]??0;switch(n2){case"ArrowRight":return t2.col+1<r2?{row:t2.row,col:t2.col+1}:null;case"ArrowLeft":return t2.col>0?{row:t2.row,col:t2.col-1}:null;case"Home":return t2.col>0?{row:t2.row,col:0}:null;case"End":return t2.col<r2-1?{row:t2.row,col:r2-1}:null;case"ArrowDown":case"ArrowUp":{let r3=Xu(e3,t2.row+(n2==="ArrowDown"?1:-1),n2==="ArrowDown"?1:-1);return r3===null?null:{row:r3,col:Math.min(t2.col,(e3[r3]??1)-1)}}default:return null}}function Qu({lengths:t2,onFocusTarget:n2,onBlurTarget:r2}){let[o2,s2]=a(null),[c2,l2]=a({row:0,col:0}),u2=i(new Map),d2=(t2[c2.row]??0)>0?c2.row:Xu(t2,0,1)??0,f2=Math.max(0,Math.min(c2.row===d2?c2.col:0,(t2[d2]??1)-1));return{focused:o2,targetProps:e((e3,i2)=>({tabIndex:e3===d2&&i2===f2?0:-1,ref:t3=>{t3?u2.current.set(Yu(e3,i2),t3):u2.current.delete(Yu(e3,i2))},onFocus:t3=>{s2({row:e3,col:i2}),l2({row:e3,col:i2}),n2(e3,i2,t3.currentTarget)},onBlur:()=>{s2(null),r2()},onKeyDown:n3=>{if(n3.key==="Escape"){r2();return}let a2=Zu(t2,{row:e3,col:i2},n3.key);a2&&(n3.preventDefault(),u2.current.get(Yu(a2.row,a2.col))?.focus())},...o2?.row===e3&&o2.col===i2?{"data-focused":"true"}:{}}),[d2,f2,t2,n2,r2,o2])}}function $u(e3){return e3?e3 instanceof SVGSVGElement?e3:e3.ownerSVGElement??null:null}function ed({viewBoxWidth:t2,viewBoxHeight:n2,findNearest:r2}){let[i2,o2]=a(null),s2=e((e3,r3,i3)=>{let a2=e3?.getBoundingClientRect();return!a2||a2.width===0||a2.height===0||t2===0||n2===0?{x:r3,y:i3}:{x:r3/t2*a2.width,y:i3/n2*a2.height}},[t2,n2]),c2=e3=>{let i3=$u(e3.currentTarget),a2=i3?.getBoundingClientRect();if(!a2||a2.width===0||a2.height===0)return;let c3=r2((e3.clientX-a2.left)/a2.width*t2,(e3.clientY-a2.top)/a2.height*n2);if(!c3){o2(null);return}o2({...s2(i3,c3.anchorX,c3.anchorY),payload:c3.payload})},l2=e((e3,t3,n3,r3)=>o2({...s2($u(r3),t3,n3),payload:e3}),[s2]),u2=e(()=>o2(null),[]);return{hover:i2,onPointerMove:c2,onPointerLeave:u2,showAt:l2,hide:u2}}var td={wide:80,narrow:110},nd=6;function rd({orientation:e3,scale:t2,margins:n2,width:r2,height:i2,config:a2,gridlines:o2,locale:s2=fo,narrow:c2}){let l2=r2-n2.left-n2.right,u2=i2-n2.top-n2.bottom,d2=bo(a2,s2),m2=e3==="bottom",h2=id(t2,m2?l2:u2,{format:d2,horizontal:m2,pxPerTick:m2&&c2?td.narrow:td.wide,hint:a2?.ticks,whole:a2?.format==="year"&&!a2?.formatter}),g2=!a2?.formatter&&(!a2?.format||a2.format==="date-short")&&h2[0]instanceof Date?yo(h2,s2):d2,_2=a2?.axisLine!==false,v2=a2?.tickLine!==false;if(m2){let e4=n2.top+u2,r3=a2?.label&&So(a2.label)<=l2?a2.label:null;return p("g",{className:"charts-axis","data-axis":"x",children:[_2?f("line",{className:"charts-axis__line",x1:n2.left,x2:n2.left+l2,y1:e4,y2:e4}):null,h2.map((n3,r4)=>{let i3=ad(t2,n3);return i3===null?null:p("g",{transform:`translate(${i3}, ${e4})`,children:[o2?f("line",{className:"charts-axis__grid",y1:-u2,y2:0}):null,v2?f("line",{className:"charts-axis__tick",y1:0,y2:6}):null,f("text",{className:"charts-axis__label",y:20,textAnchor:"middle",children:g2(n3)})]},r4)}),r3?f("text",{className:"charts-axis__title",x:n2.left+l2/2,y:i2-4,textAnchor:"middle",children:r3}):null]})}let y2=e3==="right",b2=y2?n2.left+l2:n2.left,x2=y2?1:-1,S2=-x2;return p("g",{className:"charts-axis","data-axis":y2?"y-right":"y",children:[_2?f("line",{className:"charts-axis__line",x1:b2,x2:b2,y1:n2.top,y2:n2.top+u2}):null,h2.map((e4,n3)=>{let r3=ad(t2,e4);return r3===null?null:p("g",{transform:`translate(${b2}, ${r3})`,children:[o2?f("line",{className:"charts-axis__grid",x1:0,x2:S2*l2}):null,v2?f("line",{className:"charts-axis__tick",x1:x2*6,x2:0}):null,f("text",{className:"charts-axis__label",x:x2*10,y:4,textAnchor:y2?"start":"end",children:g2(e4)})]},n3)})]})}function id(e3,t2,n2){if(e3.bandwidth){let r2=e3.domain();if(r2.length<2||t2<=0)return r2;let i2=n2.horizontal?Math.max(...r2.map(e4=>So(String(n2.format(e4)))))+nd:20,a2=t2/r2.length,o2=Math.max(1,Math.ceil(i2/a2));if(o2===1)return r2;let s2=r2.filter((e4,t3)=>t3%o2===0),c2=r2.length-1;return c2%o2!==0&&(c2-(s2.length-1)*o2)*a2>=i2&&s2.push(r2[c2]),s2}if(e3.ticks){let r2=xo(t2,n2.pxPerTick),i2=e3.ticks(n2.hint?Math.min(n2.hint,r2):r2);return n2.whole?i2.filter(e4=>typeof e4=="number"&&Number.isInteger(e4)):i2}return e3.domain()}function ad(e3,t2){try{let n2=e3(t2);return n2===void 0||!Number.isFinite(n2)?null:e3.bandwidth?n2+e3.bandwidth()/2:n2}catch{return null}}function od({x:e3,y:t2,visible:n2,containerWidth:r2,heading:i2,rows:a2,children:o2}){if(!n2)return null;let s2=r2&&r2>0?e3<r2*.25?"start":e3>r2*.75?"end":"center":"center";return p("div",{className:"charts-tooltip",role:"tooltip","data-align":s2,style:u({"--charts-tooltip-x":`${e3}px`,"--charts-tooltip-y":`${t2}px`}),children:[i2==null?null:f("div",{className:"charts-tooltip__heading",children:i2}),a2?.map(e4=>p("div",{className:"charts-tooltip__row",children:[e4.color?f("span",{className:"charts-tooltip__swatch","aria-hidden":true,style:u({"--charts-swatch":e4.color})}):null,f("span",{className:"charts-tooltip__label",children:e4.label}),f("strong",{className:"charts-tooltip__value",children:e4.value})]},e4.id)),o2]})}function sd({items:e3}){return e3.length===0?null:f("ul",{className:"charts-legend",children:e3.map(e4=>p("li",{className:"charts-legend__item",children:[e4.kind==="line"?p("svg",{className:"charts-legend__sample",width:24,height:12,viewBox:"0 0 24 12","aria-hidden":true,focusable:"false",children:[f("line",{x1:1,x2:23,y1:6,y2:6,stroke:e4.color,strokeWidth:2,strokeDasharray:e4.dash}),e4.marker?f("path",{d:e4.marker,transform:"translate(12, 6)",fill:e4.color}):null]}):e4.kind==="marker"&&e4.marker?f("svg",{className:"charts-legend__sample",width:12,height:12,viewBox:"0 0 12 12","aria-hidden":true,focusable:"false",children:f("path",{d:e4.marker,transform:"translate(6, 6)",fill:e4.color})}):f("span",{className:"charts-legend__swatch","aria-hidden":true,style:u({"--charts-swatch":e4.color})}),f("span",{className:"charts-legend__label",children:e4.label})]},e4.id))})}function cd({width:e3,height:t2,margins:r2,background:i2,children:a2,overlay:o2,title:s2,description:c2,interactive:l2}){let u2=n(),d2=Math.max(0,e3-r2.left-r2.right),m2=Math.max(0,t2-r2.top-r2.bottom);return p("svg",{className:"charts-plot",role:l2?"group":"img","aria-label":s2??"Chart",width:e3,height:t2,viewBox:`0 0 ${e3} ${t2}`,preserveAspectRatio:"none",focusable:"false",children:[s2?f("title",{children:s2}):null,c2?f("desc",{children:c2}):null,f("defs",{children:f("clipPath",{id:u2,children:f("rect",{x:r2.left,y:r2.top,width:d2,height:m2})})}),i2,f("g",{clipPath:`url(#${u2})`,children:a2}),o2]})}var ld=6,ud=11;function dd({x:e3,y:t2,margins:n2,width:r2,height:i2,stroke:a2,strokeDasharray:o2="4 4",label:s2,labelPosition:c2="top",labelColor:l2,labelFontSize:d2}){let m2=Math.max(0,r2-n2.left-n2.right),h2=Math.max(0,i2-n2.top-n2.bottom),g2=typeof e3=="number",_2=typeof t2=="number";if(g2===_2)return null;let v2=g2?e3:t2;if(typeof v2!="number"||!Number.isFinite(v2))return null;let y2=n2.left,b2=n2.left+m2,x2=n2.top,S2=n2.top+h2;if(g2&&(v2<y2||v2>b2)||_2&&(v2<x2||v2>S2))return null;let C2=g2?{x1:v2,x2:v2,y1:x2,y2:S2}:{x1:y2,x2:b2,y1:v2,y2:v2};return p("g",{className:"charts-reference-line","data-reference-line":g2?"x":"y",pointerEvents:"none",style:u({"--charts-reference-stroke":a2,"--charts-reference-label":l2,"--charts-reference-size":d2?`${d2}px`:void 0}),children:[f("line",{...C2,className:"charts-reference-line__rule",strokeDasharray:o2}),s2?f("text",{className:"charts-reference-line__label",...fd({vertical:g2,at:v2,left:y2,right:b2,top:x2,bottom:S2,labelPosition:c2,labelFontSize:d2??ud}),children:s2}):null]})}function fd({vertical:e3,at:t2,left:n2,right:r2,top:i2,bottom:a2,labelPosition:o2,labelFontSize:s2}){let c2=i2+s2+ld,l2=a2-ld;if(o2==="top")return e3?{x:t2,y:i2-ld,textAnchor:"middle"}:{x:(n2+r2)/2,y:t2-ld,textAnchor:"middle"};let u2=o2==="insideTopRight"||o2==="insideBottomRight",d2=o2==="insideTopLeft"||o2==="insideTopRight"?c2:l2;return e3?u2?{x:t2-ld,y:d2,textAnchor:"end"}:{x:t2+ld,y:d2,textAnchor:"start"}:u2?{x:r2-ld,y:d2,textAnchor:"end"}:{x:n2+ld,y:d2,textAnchor:"start"}}function pd({series:e3,data:n2,x:a2,y:o2,xAxis:s2,yAxis:c2,height:l2=240,colors:u2,markers:m2,fill:h2,fillOpacity:g2=.18,curve:_2="linear",legend:v2=true,tooltip:y2=true,margins:b2,title:x2,showTitle:S2,description:C2,referenceLines:w2,selectedRange:T2,onSelectRange:E2,size:D2,baseProps:O2,isLoading:k2,error:A2,className:j2,style:M2}){let N2=r(()=>po(O2),[O2]),P2=r(()=>yu({series:e3,data:n2,x:a2,y:o2}),[e3,n2,a2,o2]),F2=!Array.isArray(e3),I2=s2?.type??(F2?Ou(P2):"time"),{ref:L2,dims:ee2}=Pu(l2,D2),R2=ee2.width,z2=Mu(R2),B2=r(()=>Gu(P2,u2),[P2,u2]),V2=Fu({hasData:ku(P2),isLoading:k2,error:A2}),H2=y2&&!E2,U2=m2||P2.length>1,W2=bo(s2,N2,I2==="time"?"date-short":void 0),G2=bo(c2,N2),K2=To({narrow:z2,yTicks:r(()=>tu(P2,[l2-uo.bottom,uo.top]),[P2,l2]).ticks(6),yAxis:c2,loc:N2,override:b2}),q2=Math.max(0,R2-K2.left-K2.right),J2=Math.max(0,l2-K2.top-K2.bottom),Y2=r(()=>{let e4=[K2.left,K2.left+q2];return I2==="time"?ru(P2,e4):I2==="linear"?nu(P2,e4):au(P2,e4)},[P2,I2,K2.left,q2]),X2=r(()=>tu(P2,[K2.top+J2,K2.top]),[P2,K2.top,J2]),te2=e4=>cu(Y2,I2,e4),ne2=V2==="ready"&&R2>0,[re2,ie2]=lu(T2)??[void 0,void 0],ae2=r(()=>fu(re2!==void 0&&ie2!==void 0?[re2,ie2]:null,Y2,I2),[re2,ie2,Y2,I2]),oe2=i(null),se2=i(E2);se2.current=E2,t(()=>{if(!E2||!oe2.current||!ne2)return;let e4=xt(oe2.current),t2=$i().extent([[K2.left,K2.top],[K2.left+q2,K2.top+J2]]).on("end",e5=>{if(!e5.sourceEvent)return;let t3=e5.selection;se2.current?.(t3?pu(t3,Y2,I2):null)});return e4.call(t2),t2.move(e4,ae2?[ae2.x,ae2.x+ae2.width]:null),()=>{e4.on(".brush",null),e4.selectAll("*").remove()}},[E2,ne2,I2,Y2,K2.left,K2.top,q2,J2,ae2]);let{hover:ce2,onPointerMove:le2,onPointerLeave:ue2,showAt:de2,hide:fe2}=ed({viewBoxWidth:R2,viewBoxHeight:l2,findNearest:e4=>{let t2=null;P2.forEach((n4,r2)=>{for(let i2 of n4.data){let a3=te2(i2),o3=Math.abs(a3-e4);(!t2||o3<t2.dist)&&(t2={dist:o3,payload:{series:n4,point:i2,color:B2[r2]??""},x:a3,y:X2(i2.y)})}});let n3=t2;return n3?{payload:n3.payload,anchorX:n3.x,anchorY:n3.y}:null}}),{targetProps:pe2}=Qu({lengths:P2.map(e4=>e4.data.length),onFocusTarget:(e4,t2,n3)=>{let r2=P2[e4],i2=r2?.data[t2];r2&&i2&&de2({series:r2,point:i2,color:B2[e4]??""},te2(i2),X2(i2.y),n3)},onBlurTarget:fe2}),me2=r(()=>qu(w2,{xType:I2,xScale:Y2,yScale:X2}),[w2,I2,Y2,X2]),he2=P2.map((e4,t2)=>({id:e4.id,label:e4.label??e4.id,color:B2[t2]??"",kind:"line",dash:e4.strokeDasharray,marker:U2?Ku(t2):void 0})),ge2=r(()=>Ru(P2,{xLabel:s2?.label??(F2&&a2||"x"),xType:I2,xFormat:s2?.format,xFormatter:s2?.formatter,yFormat:c2?.format,yFormatter:c2?.formatter,loc:N2}),[P2,s2,c2,a2,F2,I2,N2]),_e2=(e4,t2)=>`${W2(t2.x)}, ${e4.label??e4.id}: ${G2(t2.y)}`;return f(Iu,{chartClass:"charts-line-chart",className:j2,style:M2,title:x2,showTitle:S2,description:C2,width:R2,height:l2,measureRef:L2,state:V2,table:ge2,legend:v2?f(sd,{items:he2}):null,tooltip:H2&&ce2?f(od,{x:ce2.x,y:ce2.y,visible:true,containerWidth:R2,heading:W2(ce2.payload.point.x),rows:[{id:ce2.payload.series.id,label:ce2.payload.series.label??ce2.payload.series.id,value:G2(ce2.payload.point.y),color:ce2.payload.color}]}):null,children:f(cd,{width:R2,height:l2,margins:K2,title:x2,description:C2,interactive:H2,background:p(d,{children:[ae2&&ae2.width>0?f("rect",{className:"charts-line-chart__selection",x:ae2.x,y:K2.top,width:ae2.width,height:J2,pointerEvents:"none","data-selection":"range"}):null,f(rd,{orientation:"left",scale:X2,margins:K2,width:R2,height:l2,config:c2,gridlines:true,locale:N2,narrow:z2}),f(rd,{orientation:"bottom",scale:Y2,margins:K2,width:R2,height:l2,config:s2,locale:N2,narrow:z2})]}),overlay:p(d,{children:[me2.map(e4=>f(dd,{x:e4.x,y:e4.y,margins:K2,width:R2,height:l2,stroke:e4.stroke,strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:e4.labelColor,labelFontSize:e4.labelFontSize},e4.key)),U2?f("g",{className:"charts-line-chart__markers",pointerEvents:"none","aria-hidden":true,children:P2.map((e4,t2)=>{let n3=Ku(t2);return(m2?e4.data:e4.data.slice(-1)).map((r2,i2)=>{let a3=te2(r2),o3=X2(r2.y);return!Number.isFinite(a3)||!Number.isFinite(o3)?null:f("path",{d:n3,transform:`translate(${a3}, ${o3})`,fill:B2[t2],"data-series":e4.id},`${e4.id}-${i2}`)})})}):null,E2?f("g",{ref:oe2,className:"charts-line-chart__brush","data-interactive":"true"}):null,H2?p(d,{children:[f("rect",{className:"charts-line-chart__hover",x:K2.left,y:K2.top,width:q2,height:J2,fill:"transparent",onPointerMove:le2,onPointerLeave:ue2,"data-interactive":"true"}),f("g",{className:"charts-line-chart__targets","data-interactive":"true",children:P2.map((e4,t2)=>e4.data.map((n3,r2)=>{let i2=te2(n3),a3=X2(n3.y);return!Number.isFinite(i2)||!Number.isFinite(a3)?null:f("circle",{className:"charts-line-chart__target",cx:i2,cy:a3,r:6,role:"img","aria-label":_e2(e4,n3),...pe2(t2,r2)},`${e4.id}-${r2}`)}))})]}):null]}),children:ne2?P2.map((e4,t2)=>f(md,{series:e4,color:B2[t2]??"",xOf:te2,yScale:X2,baseline:K2.top+J2,fill:h2,fillOpacity:g2,curve:_2},e4.id)):null})})}function md({series:e3,color:t2,xOf:n2,yScale:r2,baseline:i2,fill:a2,fillOpacity:o2,curve:s2}){let c2=s2==="monotone"?lo:ja,l2=e4=>Number.isFinite(n2(e4))&&Number.isFinite(r2(e4.y)),u2=Pa().defined(l2).x(n2).y(e4=>r2(e4.y)).curve(c2)(e3.data)??"",d2=a2?Fa().defined(l2).x(n2).y0(i2).y1(e4=>r2(e4.y)).curve(c2)(e3.data)??"":"";return p("g",{className:"charts-line-chart__series","data-series":e3.id,children:[a2?f("path",{className:"charts-line-chart__area",d:d2,fill:t2,fillOpacity:o2}):null,f("path",{className:"charts-line-chart__line",d:u2,stroke:t2,strokeDasharray:e3.strokeDasharray})]})}function hd({series:e3,data:t2,x:n2,y:i2,label:a2,value:o2,xAxis:s2,yAxis:c2,height:l2=240,colors:u2,mode:m2="grouped",legend:h2=true,tooltip:g2=true,margins:_2,title:v2,showTitle:y2,description:b2,size:x2,baseProps:S2,isLoading:C2,error:w2,className:T2,style:E2}){let D2=r(()=>po(S2),[S2]),O2=n2??a2,k2=i2??o2,A2=r(()=>yu({series:e3,data:t2,x:O2,y:k2}),[e3,t2,O2,k2]),j2=!Array.isArray(e3),M2=m2==="stacked",{ref:N2,dims:P2}=Pu(l2,x2),F2=P2.width,I2=Mu(F2),L2=r(()=>Gu(A2,u2),[A2,u2]),ee2=Fu({hasData:ku(A2),isLoading:C2,error:w2}),R2=bo(c2,D2),z2=To({narrow:I2,yTicks:r(()=>tu(A2,[l2-uo.bottom,uo.top],{stacked:M2}),[A2,l2,M2]).ticks(6),yAxis:c2,loc:D2,override:_2}),B2=Math.max(0,F2-z2.left-z2.right),V2=Math.max(0,l2-z2.top-z2.bottom),H2=r(()=>iu(A2,[z2.left,z2.left+B2],.2),[A2,z2.left,B2]),U2=r(()=>tu(A2,[z2.top+V2,z2.top],{stacked:M2}),[A2,z2.top,V2,M2]),W2=U2(0),G2=r(()=>{let e4=A2.map(()=>[]);if(M2){let t3=new Map,n3=new Map;A2.forEach((r2,i3)=>{for(let a3 of r2.data){let r3=$(a3),o3=H2(r3);if(o3===void 0)continue;let s3=a3.y>=0?t3:n3,c3=s3.get(r3)??0,l3=c3+a3.y;s3.set(r3,l3);let u3=U2(Math.max(c3,l3));e4[i3]?.push({series:i3,point:a3,category:r3,x:o3,y:u3,width:H2.bandwidth(),height:Math.max(0,U2(Math.min(c3,l3))-u3)})}})}else{let t3=Xo().domain(A2.map(e5=>e5.id)).range([0,H2.bandwidth()]).padding(.08);A2.forEach((n3,r2)=>{let i3=t3(n3.id);if(i3!==void 0)for(let a3 of n3.data){let n4=$(a3),o3=H2(n4);if(o3===void 0)continue;let s3=U2(Math.max(a3.y,0));e4[r2]?.push({series:r2,point:a3,category:n4,x:o3+i3,y:s3,width:t3.bandwidth(),height:Math.abs(U2(a3.y)-W2)})}})}return e4},[A2,M2,H2,U2,W2]),K2=e4=>A2.map((t3,n3)=>({series:t3,value:t3.data.find(t4=>$(t4)===e4)?.y,color:L2[n3]??""})),q2=e4=>{let t3=G2.flatMap(t4=>t4.filter(t5=>t5.category===e4).map(e5=>e5.y));return{anchorX:(H2(e4)??0)+H2.bandwidth()/2,anchorY:t3.length?Math.min(...t3):W2}},{hover:J2,onPointerMove:Y2,onPointerLeave:X2,showAt:te2,hide:ne2}=ed({viewBoxWidth:F2,viewBoxHeight:l2,findNearest:e4=>{let t3=null,n3=Infinity;for(let r2 of H2.domain()){let i3=Math.abs((H2(r2)??0)+H2.bandwidth()/2-e4);i3<n3&&(n3=i3,t3=r2)}return t3===null?null:{payload:{category:t3,entries:K2(t3)},...q2(t3)}}}),{targetProps:re2}=Qu({lengths:G2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=G2[e4]?.[t3];if(!r2)return;let i3=q2(r2.category);te2({category:r2.category,entries:K2(r2.category)},i3.anchorX,i3.anchorY,n3)},onBlurTarget:ne2}),ie2=A2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:L2[t3]??""})),ae2=r(()=>Ru(A2,{xLabel:s2?.label??(j2&&O2||"x"),xType:"band",yFormat:c2?.format,yFormatter:c2?.formatter,loc:D2}),[A2,s2?.label,c2,O2,j2,D2]),oe2=ee2==="ready"&&F2>0;return f(Iu,{chartClass:"charts-bar-chart",className:T2,style:E2,title:v2,showTitle:y2,description:b2,width:F2,height:l2,measureRef:N2,state:ee2,table:ae2,legend:h2?f(sd,{items:ie2}):null,tooltip:g2&&J2?f(od,{x:J2.x,y:J2.y,visible:true,containerWidth:F2,heading:J2.payload.category,rows:J2.payload.entries.map(e4=>({id:e4.series.id,label:e4.series.label??e4.series.id,value:e4.value===void 0?"—":R2(e4.value),color:e4.color}))}):null,children:f(cd,{width:F2,height:l2,margins:z2,title:v2,description:b2,interactive:g2,background:p(d,{children:[f(rd,{orientation:"left",scale:U2,margins:z2,width:F2,height:l2,config:c2,gridlines:true,locale:D2,narrow:I2}),f(rd,{orientation:"bottom",scale:H2,margins:z2,width:F2,height:l2,config:s2,locale:D2,narrow:I2})]}),overlay:g2?f("rect",{className:"charts-bar-chart__hover",x:z2.left,y:z2.top,width:B2,height:V2,fill:"transparent",onPointerMove:Y2,onPointerLeave:X2,"data-interactive":"true"}):null,children:oe2?A2.map((e4,t3)=>f("g",{className:"charts-bar-chart__series","data-series":e4.id,"data-mode":m2,children:G2[t3]?.map((n3,r2)=>f("rect",{className:"charts-bar-chart__bar",x:n3.x,y:n3.y,width:n3.width,height:n3.height,fill:L2[t3],...g2?{role:"img","aria-label":`${n3.category}, ${e4.label??e4.id}: ${R2(n3.point.y)}`,...re2(t3,r2)}:{}},r2))},e4.id)):null})})}function gd({stacked:e3,className:t2,...n2}){return e3?f(_d,{...n2,className:t2}):f(pd,{...n2,fill:true,className:s("charts-area-chart",t2)})}function _d({series:e3,data:t2,x:n2,y:i2,xAxis:a2,yAxis:o2,height:s2=240,colors:c2,curve:l2="linear",legend:u2=true,tooltip:m2=true,margins:h2,title:g2,showTitle:_2,description:v2,referenceLines:y2,size:b2,baseProps:x2,isLoading:S2,error:C2,className:w2,style:T2}){let E2=r(()=>po(x2),[x2]),D2=r(()=>yu({series:e3,data:t2,x:n2,y:i2}),[e3,t2,n2,i2]),O2=!Array.isArray(e3),k2=a2?.type??(O2?Ou(D2):"time"),{ref:A2,dims:j2}=Pu(s2,b2),M2=j2.width,N2=Mu(M2),P2=r(()=>Gu(D2,c2),[D2,c2]),F2=Fu({hasData:ku(D2),isLoading:S2,error:C2}),I2=D2.length>1,L2=bo(a2,E2,k2==="time"?"date-short":void 0),ee2=bo(o2,E2),R2=To({narrow:N2,yTicks:r(()=>tu(D2,[s2-uo.bottom,uo.top],{stacked:true}),[D2,s2]).ticks(6),yAxis:o2,loc:E2,override:h2}),z2=Math.max(0,M2-R2.left-R2.right),B2=Math.max(0,s2-R2.top-R2.bottom),V2=r(()=>{let e4=Au(D2);return k2==="band"?e4:[...e4].sort((e5,t3)=>su(e5.x,k2)-su(t3.x,k2))},[D2,k2]),H2=r(()=>{let e4=V2.map(()=>0);return D2.map(t3=>{let n3=new Map;for(let e5 of t3.data)n3.has($(e5))||n3.set($(e5),e5.y);return V2.map(({key:t4,x:r2},i3)=>{let a3=n3.get(t4),o3=e4[i3]??0,s3=o3+(a3??0);return e4[i3]=s3,{x:r2,value:a3,y0:o3,y1:s3}})})},[D2,V2]),U2=r(()=>{let e4=[R2.left,R2.left+z2];return k2==="time"?ru(D2,e4):k2==="linear"?nu(D2,e4):au(D2,e4)},[D2,k2,R2.left,z2]),W2=r(()=>tu(D2,[R2.top+B2,R2.top],{stacked:true}),[D2,R2.top,B2]),G2=e4=>cu(U2,k2,{x:e4}),K2=r(()=>H2.map(e4=>e4.flatMap((e5,t3)=>e5.value===void 0?[]:[{layer:e5,xi:t3}])),[H2]),q2=e4=>Math.min(...H2.map(t3=>W2(Math.max(t3[e4]?.y0??0,t3[e4]?.y1??0)))),{hover:J2,onPointerMove:Y2,onPointerLeave:X2,showAt:te2,hide:ne2}=ed({viewBoxWidth:M2,viewBoxHeight:s2,findNearest:e4=>{let t3=-1,n3=Infinity;V2.forEach(({x:r3},i3)=>{let a3=Math.abs(G2(r3)-e4);a3<n3&&(n3=a3,t3=i3)});let r2=V2[t3];return r2?{payload:{xi:t3},anchorX:G2(r2.x),anchorY:q2(t3)}:null}}),{targetProps:re2}=Qu({lengths:K2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=K2[e4]?.[t3];r2&&te2({xi:r2.xi},G2(r2.layer.x),q2(r2.xi),n3)},onBlurTarget:ne2}),ie2=r(()=>qu(y2,{xType:k2,xScale:U2,yScale:W2}),[y2,k2,U2,W2]),ae2=D2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:P2[t3]??"",kind:"line",dash:e4.strokeDasharray,marker:I2?Ku(t3):void 0})),oe2=r(()=>Ru(D2,{xLabel:a2?.label??(O2&&n2||"x"),xType:k2,xFormat:a2?.format,xFormatter:a2?.formatter,yFormat:o2?.format,yFormatter:o2?.formatter,loc:E2}),[D2,a2,o2,n2,O2,k2,E2]),se2=F2==="ready"&&M2>0,ce2=l2==="monotone"?lo:ja,le2=Fa().x(e4=>G2(e4.x)).y0(e4=>W2(e4.y0)).y1(e4=>W2(e4.y1)).curve(ce2),ue2=Pa().x(e4=>G2(e4.x)).y(e4=>W2(e4.y1)).curve(ce2),de2=J2?V2[J2.payload.xi]:void 0;return f(Iu,{chartClass:"charts-area-chart",className:w2,style:T2,title:g2,showTitle:_2,description:v2,width:M2,height:s2,measureRef:A2,state:F2,table:oe2,legend:u2?f(sd,{items:ae2}):null,tooltip:m2&&J2&&de2?f(od,{x:J2.x,y:J2.y,visible:true,containerWidth:M2,heading:L2(de2.x),rows:D2.map((e4,t3)=>{let n3=H2[t3]?.[J2.payload.xi]?.value;return{id:e4.id,label:e4.label??e4.id,value:n3===void 0?"—":ee2(n3),color:P2[t3]}})}):null,children:f(cd,{width:M2,height:s2,margins:R2,title:g2,description:v2,interactive:m2,background:p(d,{children:[f(rd,{orientation:"left",scale:W2,margins:R2,width:M2,height:s2,config:o2,gridlines:true,locale:E2,narrow:N2}),f(rd,{orientation:"bottom",scale:U2,margins:R2,width:M2,height:s2,config:a2,locale:E2,narrow:N2})]}),overlay:p(d,{children:[ie2.map(e4=>f(dd,{x:e4.x,y:e4.y,margins:R2,width:M2,height:s2,stroke:e4.stroke,strokeDasharray:e4.strokeDasharray,label:e4.label,labelPosition:e4.labelPosition,labelColor:e4.labelColor,labelFontSize:e4.labelFontSize},e4.key)),I2&&se2?f("g",{className:"charts-area-chart__markers",pointerEvents:"none","aria-hidden":true,children:H2.map((e4,t3)=>{let n3=e4[e4.length-1];if(!n3)return null;let r2=G2(n3.x),i3=W2(n3.y1);return!Number.isFinite(r2)||!Number.isFinite(i3)?null:f("path",{d:Ku(t3),transform:`translate(${r2}, ${i3})`,fill:P2[t3],"data-series":D2[t3]?.id},D2[t3]?.id??t3)})}):null,m2?p(d,{children:[f("rect",{className:"charts-area-chart__hover",x:R2.left,y:R2.top,width:z2,height:B2,fill:"transparent",onPointerMove:Y2,onPointerLeave:X2,"data-interactive":"true"}),f("g",{className:"charts-area-chart__targets","data-interactive":"true",children:K2.map((e4,t3)=>{let n3=D2[t3];return n3?e4.map(({layer:e5},r2)=>{let i3=G2(e5.x),a3=W2(e5.y1);return!Number.isFinite(i3)||!Number.isFinite(a3)?null:f("circle",{className:"charts-area-chart__target",cx:i3,cy:a3,r:6,role:"img","aria-label":`${L2(e5.x)}, ${n3.label??n3.id}: ${ee2(e5.value??0)}`,...re2(t3,r2)},`${n3.id}-${r2}`)}):null})})]}):null]}),children:se2?H2.map((e4,t3)=>{let n3=D2[t3];return n3?p("g",{className:"charts-area-chart__series","data-series":n3.id,children:[f("path",{className:"charts-area-chart__band",d:le2(e4)??"",fill:P2[t3]}),f("path",{className:"charts-area-chart__edge",d:ue2(e4)??"",stroke:P2[t3],strokeDasharray:n3.strokeDasharray})]},n3.id):null}):null})})}function vd({barSeries:e3,lineSeries:t2,data:n2,x:i2,bar:a2,line:o2,xAxis:s2,yLeft:c2,yRight:l2,height:u2=280,colors:m2,curve:h2="linear",legend:g2=true,tooltip:_2=true,margins:v2,title:y2,showTitle:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=r(()=>Array.isArray(e3)?vu(e3):a2===void 0?[]:yu({data:n2,x:i2,y:a2}),[e3,n2,i2,a2]),A2=r(()=>Array.isArray(t2)?vu(t2):o2===void 0?[]:yu({data:n2,x:i2,y:o2}),[t2,n2,i2,o2]),j2=r(()=>[...k2,...A2],[k2,A2]),M2=ku(k2),N2=ku(A2),{ref:P2,dims:F2}=Pu(u2,S2),I2=F2.width,L2=Mu(I2),ee2=r(()=>Gu(j2,m2),[j2,m2]),R2=e4=>ee2[e4]??"",z2=e4=>ee2[k2.length+e4]??"",B2=Fu({hasData:M2||N2,isLoading:w2,error:T2}),V2=bo(c2,O2),H2=bo(l2,O2),U2=r(()=>tu(k2,[u2-uo.bottom,uo.top]),[k2,u2]),W2=r(()=>tu(A2,[u2-uo.bottom,uo.top]),[A2,u2]),G2=To({narrow:L2,yTicks:M2?U2.ticks(6):[],yAxis:c2,loc:O2,override:v2}),K2={...G2,left:v2?.left??(M2?G2.left:(L2?wo:uo).right),right:v2?.right??(N2?Co(W2.ticks(6),l2?.format,l2?.formatter,L2?wo.left:uo.left,O2):G2.right)},q2=Math.max(0,I2-K2.left-K2.right),J2=Math.max(0,u2-K2.top-K2.bottom),Y2=r(()=>iu(j2,[K2.left,K2.left+q2]),[j2,K2.left,q2]),X2=r(()=>tu(k2,[K2.top+J2,K2.top]),[k2,K2.top,J2]),te2=r(()=>tu(A2,[K2.top+J2,K2.top]),[A2,K2.top,J2]),ne2=X2(0),re2=e4=>(Y2(e4)??0)+Y2.bandwidth()/2,ie2=r(()=>{let e4=Xo().domain(k2.map(e5=>e5.id)).range([0,Y2.bandwidth()]).padding(.08),t3=k2.map(t4=>t4.data.flatMap(n4=>{let r2=$(n4),i3=Y2(r2),a3=e4(t4.id);if(i3===void 0||a3===void 0)return[];let o3=X2(Math.max(n4.y,0));return[{category:r2,point:n4,x:i3+a3,y:o3,width:e4.bandwidth(),height:Math.abs(X2(n4.y)-ne2)}]})),n3=A2.map(e5=>e5.data.flatMap(e6=>{let t4=$(e6);return Y2(t4)===void 0?[]:[{category:t4,point:e6,x:re2(t4),y:te2(e6.y),width:0,height:0}]}));return[...t3,...n3]},[k2,A2,Y2,X2,te2,ne2]),ae2=e4=>{let t3=ie2.flatMap(t4=>t4.filter(t5=>t5.category===e4).map(e5=>e5.y));return{anchorX:re2(e4),anchorY:t3.length?Math.min(...t3):K2.top+J2/2}},{hover:oe2,onPointerMove:se2,onPointerLeave:ce2,showAt:le2,hide:ue2}=ed({viewBoxWidth:I2,viewBoxHeight:u2,findNearest:e4=>{let t3=null,n3=Infinity;for(let r2 of Y2.domain()){let i3=Math.abs(re2(r2)-e4);i3<n3&&(n3=i3,t3=r2)}return t3===null?null:{payload:{category:t3},...ae2(t3)}}}),{targetProps:de2}=Qu({lengths:ie2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=ie2[e4]?.[t3];if(!r2)return;let i3=ae2(r2.category);le2({category:r2.category},i3.anchorX,i3.anchorY,n3)},onBlurTarget:ue2}),fe2=e4=>[...k2.map((t3,n3)=>({s:t3,color:R2(n3),fmt:V2,v:t3.data.find(t4=>$(t4)===e4)?.y})),...A2.map((t3,n3)=>({s:t3,color:z2(n3),fmt:H2,v:t3.data.find(t4=>$(t4)===e4)?.y}))],pe2=[...k2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:R2(t3)})),...A2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:z2(t3),kind:"line",dash:e4.strokeDasharray,marker:Ku(t3)}))],me2=r(()=>{let n3=e4=>{let t3=new Map;for(let n4 of e4.data)t3.has($(n4))||t3.set($(n4),n4.y);return t3},r2=[...k2.map(e4=>({s:e4,m:n3(e4),fmt:V2})),...A2.map(e4=>({s:e4,m:n3(e4),fmt:H2}))];return{columns:[s2?.label??(Array.isArray(e3)||Array.isArray(t2)?"x":i2||"x"),...r2.map(e4=>e4.s.label??e4.s.id)],rows:Y2.domain().map(e4=>[e4,...r2.map(t3=>{let n4=t3.m.get(e4);return n4===void 0?"":t3.fmt(n4)})])}},[k2,A2,Y2,c2,l2,O2,s2?.label,e3,t2,i2]),he2=B2==="ready"&&I2>0,ge2=h2==="monotone"?lo:ja,_e2=e4=>Pa().defined(e5=>Y2($(e5))!==void 0).x(e5=>re2($(e5))).y(e5=>te2(e5.y)).curve(ge2)(e4.data)??"";return f(Iu,{chartClass:"charts-bar-line-chart",className:E2,style:D2,title:y2,showTitle:b2,description:x2,width:I2,height:u2,measureRef:P2,state:B2,table:me2,legend:g2?f(sd,{items:pe2}):null,tooltip:_2&&oe2?f(od,{x:oe2.x,y:oe2.y,visible:true,containerWidth:I2,heading:oe2.payload.category,rows:fe2(oe2.payload.category).map(e4=>({id:e4.s.id,label:e4.s.label??e4.s.id,value:e4.v===void 0?"—":e4.fmt(e4.v),color:e4.color}))}):null,children:f(cd,{width:I2,height:u2,margins:K2,title:y2,description:x2,interactive:_2,background:p(d,{children:[M2?f(rd,{orientation:"left",scale:X2,margins:K2,width:I2,height:u2,config:c2,gridlines:true,locale:O2,narrow:L2}):null,N2?f(rd,{orientation:"right",scale:te2,margins:K2,width:I2,height:u2,config:l2,gridlines:!M2,locale:O2,narrow:L2}):null,f(rd,{orientation:"bottom",scale:Y2,margins:K2,width:I2,height:u2,config:s2,locale:O2,narrow:L2})]}),overlay:p(d,{children:[he2&&N2?f("g",{className:"charts-bar-line-chart__markers",pointerEvents:"none","aria-hidden":true,children:A2.map((e4,t3)=>ie2[k2.length+t3]?.map((n3,r2)=>f("path",{d:Ku(t3),transform:`translate(${n3.x}, ${n3.y})`,fill:z2(t3),"data-series":e4.id},`${e4.id}-${r2}`)))}):null,_2?p(d,{children:[f("rect",{className:"charts-bar-line-chart__hover",x:K2.left,y:K2.top,width:q2,height:J2,fill:"transparent",onPointerMove:se2,onPointerLeave:ce2,"data-interactive":"true"}),f("g",{className:"charts-bar-line-chart__targets","data-interactive":"true",children:A2.map((e4,t3)=>{let n3=k2.length+t3;return ie2[n3]?.map((t4,r2)=>f("circle",{className:"charts-bar-line-chart__target",cx:t4.x,cy:t4.y,r:6,role:"img","aria-label":`${t4.category}, ${e4.label??e4.id}: ${H2(t4.point.y)}`,...de2(n3,r2)},`${e4.id}-${r2}`))})})]}):null]}),children:he2?p(d,{children:[k2.map((e4,t3)=>f("g",{className:"charts-bar-line-chart__bars","data-series":e4.id,children:ie2[t3]?.map((n3,r2)=>f("rect",{className:"charts-bar-line-chart__bar",x:n3.x,y:n3.y,width:n3.width,height:n3.height,fill:R2(t3),..._2?{role:"img","aria-label":`${n3.category}, ${e4.label??e4.id}: ${V2(n3.point.y)}`,...de2(t3,r2)}:{}},r2))},e4.id)),A2.map((e4,t3)=>f("path",{className:"charts-bar-line-chart__line","data-series":e4.id,d:_e2(e4),stroke:z2(t3),strokeDasharray:e4.strokeDasharray},e4.id))]}):null})})}function yd(e3,t2){if(e3[t2]!==void 0)return e3[t2];let n2=e3.datum;return typeof n2=="object"&&n2?n2[t2]:void 0}function bd({series:e3,data:t2,x:n2,y:i2,label:a2,xAxis:o2,yAxis:s2,height:c2=240,colors:l2,pointRadius:u2=4,sizeKey:m2,sizeRange:h2,legend:g2=true,tooltip:_2=true,margins:v2,title:y2,showTitle:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=r(()=>yu({series:e3,data:t2,x:n2,y:i2}),[e3,t2,n2,i2]),A2=!Array.isArray(e3),j2=o2?.type==="time"||o2?.type===void 0&&A2&&Ou(k2)==="time"?"time":"linear",{ref:M2,dims:N2}=Pu(c2,S2),P2=N2.width,F2=Mu(P2),I2=r(()=>Gu(k2,l2),[k2,l2]),L2=Fu({hasData:ku(k2),isLoading:w2,error:T2}),ee2=bo(o2,O2,j2==="time"?"date-short":void 0),R2=bo(s2,O2),z2=o2?.label??(A2&&n2||"x"),B2=s2?.label??(A2&&typeof i2=="string"&&i2?i2:"y"),V2=To({narrow:F2,yTicks:r(()=>tu(k2,[c2-uo.bottom,uo.top]),[k2,c2]).ticks(6),yAxis:s2,loc:O2,override:v2}),H2=Math.max(0,P2-V2.left-V2.right),U2=Math.max(0,c2-V2.top-V2.bottom),W2=r(()=>tu(k2,[V2.top+U2,V2.top]),[k2,V2.top,U2]),[G2,K2]=Array.isArray(h2)&&h2.length===2?h2:[void 0,void 0],q2=G2!==void 0&&K2!==void 0,J2=r(()=>{let e4=m2?[m2,"r","size"]:["r","size"];return t3=>{for(let n3 of e4){let e5=mu(yd(t3,n3));if(e5!==null)return e5}return null}},[m2]),Y2=r(()=>{if(!q2)return e5=>e5===null?u2:Math.max(0,e5);let e4=Infinity,t3=-Infinity;for(let n3 of k2)for(let r2 of n3.data){let n4=J2(r2);n4!==null&&(e4=Math.min(e4,n4),t3=Math.max(t3,n4))}return!Number.isFinite(e4)||!Number.isFinite(t3)||e4===t3?e5=>e5===null?u2:(G2+K2)/2:n3=>n3===null?u2:G2+(n3-e4)/(t3-e4)*(K2-G2)},[q2,G2,K2,k2,J2,u2]),X2=r(()=>{let e4=0;for(let t3 of k2)for(let n3 of t3.data)e4=Math.max(e4,Y2(J2(n3)));return Math.min(H2/4,e4+4)},[k2,Y2,J2,H2]),te2=r(()=>{let e4=[V2.left+X2,V2.left+H2-X2];return j2==="time"?ru(k2,e4):nu(k2,e4).nice()},[k2,j2,V2.left,H2,X2]),ne2=r(()=>k2.map((e4,t3)=>e4.data.map(e5=>{let n3=J2(e5),r2=a2?yd(e5,a2):void 0;return{series:t3,point:e5,cx:cu(te2,j2,e5),cy:W2(e5.y),radius:Y2(n3),size:n3,name:r2==null||r2===""?null:String(r2)}})),[k2,J2,a2,te2,j2,W2,Y2]),re2=ne2.some(e4=>e4.some(e5=>e5.size!==null)),ie2=k2.length>1,ae2=e4=>k2[e4]?.label??k2[e4]?.id??"",oe2=e4=>e4.name?ie2?`${e4.name} · ${ae2(e4.series)}`:e4.name:ae2(e4.series),se2=e4=>`${oe2(e4)}: ${z2} ${ee2(e4.point.x)}, ${B2} ${R2(e4.point.y)}`,{hover:ce2,onPointerMove:le2,onPointerLeave:ue2,showAt:de2,hide:fe2}=ed({viewBoxWidth:P2,viewBoxHeight:c2,findNearest:(e4,t3)=>{let n3=null,r2=Infinity;for(let i3 of ne2)for(let a3 of i3){let i4=Math.hypot(a3.cx-e4,a3.cy-t3);i4<r2&&(r2=i4,n3=a3)}return n3?{payload:n3,anchorX:n3.cx,anchorY:n3.cy-n3.radius}:null}}),{targetProps:pe2}=Qu({lengths:ne2.map(e4=>e4.length),onFocusTarget:(e4,t3,n3)=>{let r2=ne2[e4]?.[t3];r2&&de2(r2,r2.cx,r2.cy-r2.radius,n3)},onBlurTarget:fe2}),me2=k2.map((e4,t3)=>({id:e4.id,label:e4.label??e4.id,color:I2[t3]??"",kind:"marker",marker:Ku(t3,48)})),he2=r(()=>{let e4=o2?.formatter??bo(o2,O2,j2==="time"?"date":void 0),t3=!!a2&&ie2,n3=m2??"size";return{columns:[a2||"series",...t3?["series"]:[],z2,B2,...re2?[n3]:[]],rows:ne2.flatMap(n4=>n4.map(n5=>[a2?n5.name??"":ae2(n5.series),...t3?[ae2(n5.series)]:[],e4(n5.point.x),R2(n5.point.y),...re2?[n5.size===null?"":bo(void 0,O2)(n5.size)]:[]]))}},[ne2,o2,s2,O2,j2,a2,ie2,m2,re2,z2,B2]),ge2=L2==="ready"&&P2>0;return f(Iu,{chartClass:"charts-scatter-chart",className:E2,style:D2,title:y2,showTitle:b2,description:x2,width:P2,height:c2,measureRef:M2,state:L2,table:he2,legend:g2?f(sd,{items:me2}):null,tooltip:_2&&ce2?f(od,{x:ce2.x,y:ce2.y,visible:true,containerWidth:P2,heading:oe2(ce2.payload),rows:(e4=>[{id:"x",label:z2,value:ee2(e4.point.x)},{id:"y",label:B2,value:R2(e4.point.y)},...e4.size===null?[]:[{id:"size",label:m2??"size",value:bo(void 0,O2)(e4.size)}]])(ce2.payload)}):null,children:f(cd,{width:P2,height:c2,margins:V2,title:y2,description:x2,interactive:_2,background:p(d,{children:[f(rd,{orientation:"left",scale:W2,margins:V2,width:P2,height:c2,config:s2,gridlines:true,locale:O2,narrow:F2}),f(rd,{orientation:"bottom",scale:te2,margins:V2,width:P2,height:c2,config:o2,locale:O2,narrow:F2})]}),overlay:_2?f("rect",{className:"charts-scatter-chart__hover",x:V2.left,y:V2.top,width:H2,height:U2,fill:"transparent",onPointerMove:le2,onPointerLeave:ue2,"data-interactive":"true"}):null,children:ge2?k2.map((e4,t3)=>f("g",{className:"charts-scatter-chart__series","data-series":e4.id,"data-bubbles":q2?"true":void 0,children:ne2[t3]?.map((e5,n3)=>!Number.isFinite(e5.cx)||!Number.isFinite(e5.cy)?null:f("path",{className:"charts-scatter-chart__point",d:Ku(t3,Math.PI*e5.radius*e5.radius),transform:`translate(${e5.cx}, ${e5.cy})`,fill:I2[t3],stroke:I2[t3],..._2?{role:"img","aria-label":se2(e5),...pe2(t3,n3)}:{}},n3))},e4.id)):null})})}var xd={top:0,right:0,bottom:0,left:0},Sd=3,Cd=/^\d{4}-\d{2}-\d{2}/,wd=e3=>e3 instanceof Date||typeof e3=="string"&&Cd.test(e3);function Td({data:e3,x:t2,y:n2,height:i2=32,color:a2,fill:o2=true,strokeWidth:s2=1.5,tooltip:c2=false,format:l2,xFormat:u2,title:m2,description:h2,size:g2,baseProps:_2,isLoading:v2,error:y2,className:b2,style:x2}){let S2=r(()=>po(_2),[_2]),C2=r(()=>bu(e3,{x:t2,y:n2}),[e3,t2,n2]),{ref:w2,dims:T2}=Pu(i2,g2),E2=T2.width,D2=Hu(a2)??"var(--color-accent)",O2=Fu({hasData:C2.length>0,isLoading:v2,error:y2}),k2=e4=>vo(e4,u2??(wd(e4)?"date-short":void 0),S2),A2=e4=>vo(e4,l2,S2),{d:j2,dArea:M2,placed:N2}=r(()=>{if(C2.length===0||E2===0)return{d:"",dArea:"",placed:[]};let e4=Infinity,t3=-Infinity;for(let n4 of C2)n4.y<e4&&(e4=n4.y),n4.y>t3&&(t3=n4.y);e4===t3&&(--e4,t3+=1);let n3=C2.length,r2=Math.max(0,E2-6),a3=e5=>n3===1?E2/2:Sd+e5/(n3-1)*r2,o3=n4=>i2-Sd-(n4-e4)/(t3-e4)*Math.max(0,i2-6),s3=C2.map((e5,t4)=>({point:e5,cx:a3(t4),cy:o3(e5.y)}));return{d:Pa().x(e5=>e5.cx).y(e5=>e5.cy)(s3)??"",dArea:Fa().x(e5=>e5.cx).y0(i2).y1(e5=>e5.cy)(s3)??"",placed:s3}},[C2,E2,i2]),{hover:P2,onPointerMove:F2,onPointerLeave:I2,showAt:L2,hide:ee2}=ed({viewBoxWidth:E2,viewBoxHeight:i2,findNearest:e4=>{let t3=null;for(let n3 of N2)(!t3||Math.abs(n3.cx-e4)<Math.abs(t3.cx-e4))&&(t3=n3);return t3?{payload:t3,anchorX:t3.cx,anchorY:t3.cy}:null}}),{targetProps:R2}=Qu({lengths:[N2.length],onFocusTarget:(e4,t3,n3)=>{let r2=N2[t3];r2&&L2(r2,r2.cx,r2.cy,n3)},onBlurTarget:ee2}),z2=r(()=>({columns:[t2||"x",n2||"y"],rows:C2.map(e4=>[k2(e4.x),A2(e4.y)])}),[C2,t2,n2,l2,u2,S2]);return f(Iu,{chartClass:"charts-sparkline",className:b2,style:x2,title:m2,description:h2,width:E2,height:i2,measureRef:w2,state:O2,table:z2,tooltip:c2&&P2?f(od,{x:P2.x,y:P2.y,visible:true,containerWidth:E2,heading:k2(P2.payload.point.x),rows:[{id:"value",label:n2||"y",value:A2(P2.payload.point.y),color:D2}]}):null,children:p(cd,{width:E2,height:i2,margins:xd,title:m2,description:h2,interactive:c2,overlay:c2?p(d,{children:[P2?f("circle",{className:"charts-sparkline__dot",cx:P2.payload.cx,cy:P2.payload.cy,r:2.5,fill:D2,pointerEvents:"none"}):null,f("rect",{className:"charts-sparkline__hover",x:0,y:0,width:E2,height:i2,fill:"transparent",onPointerMove:F2,onPointerLeave:I2,"data-interactive":"true"}),f("g",{className:"charts-sparkline__targets","data-interactive":"true",children:N2.map((e4,t3)=>f("circle",{className:"charts-sparkline__target",cx:e4.cx,cy:e4.cy,r:4,role:"img","aria-label":`${k2(e4.point.x)}: ${A2(e4.point.y)}`,...R2(0,t3)},t3))})]}):null,children:[o2?f("path",{className:"charts-sparkline__area",d:M2,fill:D2}):null,f("path",{className:"charts-sparkline__line",d:j2,stroke:D2,strokeWidth:s2})]})})}var Ed={top:0,right:0,bottom:0,left:0},Dd=Math.PI*2;function Od({slices:e3,data:t2,label:n2,value:i2,height:a2=240,colors:o2,innerRadius:s2=0,outerRadius:c2,padAngle:l2=.005,sliceStroke:d2,sliceStrokeWidth:m2=1,legend:h2=true,tooltip:g2=true,format:_2,valueFormatter:v2,centerLabel:y2,centerSublabel:b2,title:x2,showTitle:S2,description:C2,size:w2,baseProps:T2,isLoading:E2,error:D2,className:O2,style:k2}){let A2=r(()=>po(T2),[T2]),j2=!Array.isArray(e3),M2=r(()=>(j2?xu(t2,{label:n2,value:i2}):Cu(e3)).filter(e4=>e4.value>=0),[j2,e3,t2,n2,i2]),{ref:N2,dims:P2}=Pu(a2,w2),F2=P2.width,I2=r(()=>Gu(M2,o2),[M2,o2]),L2=r(()=>M2.reduce((e4,t3)=>e4+t3.value,0),[M2]),ee2=Fu({hasData:L2>0,isLoading:E2,error:D2}),R2=r(()=>v2??(e4=>vo(e4,_2,A2)),[v2,_2,A2]),z2=e4=>vo(L2>0?e4/L2:0,"percent",A2),B2=e4=>e4.label??e4.id,V2=e4=>`${R2(e4.value)} (${z2(e4.value)})`,H2=Math.max(0,Math.min(F2||a2,a2)/2-4),U2=c2!==void 0&&c2>=0?Math.min(c2,H2):H2,W2=Math.max(0,U2*Math.min(1,Math.max(0,s2))),G2=F2/2,K2=a2/2,q2=r(()=>Ra().value(e4=>e4.value).padAngle(l2).sort(null)(M2),[M2,l2]),J2=r(()=>Oa().innerRadius(W2).outerRadius(U2),[W2,U2]),Y2=e4=>{let t3=q2[e4],[n3,r2]=t3?J2.centroid(t3):[0,0];return{anchorX:G2+n3,anchorY:K2+r2}},{hover:X2,onPointerMove:te2,onPointerLeave:ne2,showAt:re2,hide:ie2}=ed({viewBoxWidth:F2,viewBoxHeight:a2,findNearest:(e4,t3)=>{let n3=e4-G2,r2=t3-K2,i3=Math.hypot(n3,r2);if(i3>U2||i3<W2)return null;let a3=(Math.atan2(n3,-r2)+Dd)%Dd,o3=q2.findIndex(e5=>a3>=e5.startAngle&&a3<e5.endAngle);return o3<0?null:{payload:{index:o3},...Y2(o3)}}}),{targetProps:ae2}=Qu({lengths:[q2.length],onFocusTarget:(e4,t3,n3)=>{let r2=Y2(t3);re2({index:t3},r2.anchorX,r2.anchorY,n3)},onBlurTarget:ie2}),oe2=M2.map((e4,t3)=>({id:`${t3}-${e4.id}`,label:`${B2(e4)}: ${V2(e4)}`,color:I2[t3]??""})),se2=r(()=>({columns:[j2?n2||"label":"Part",j2?i2||"value":"Value","Share"],rows:M2.map(e4=>[e4.label??e4.id,R2(e4.value),vo(L2>0?e4.value/L2:0,"percent",A2)])}),[M2,j2,n2,i2,R2,L2,A2]),ce2=d2==="none"?"none":Hu(d2),le2=X2?M2[X2.payload.index]:void 0;return f(Iu,{chartClass:"charts-pie-chart",className:O2,style:u({"--charts-slice-stroke":ce2,"--charts-slice-stroke-width":`${Math.max(0,m2)}px`},k2),title:x2,showTitle:S2,description:C2,width:F2,height:a2,measureRef:N2,state:ee2,table:se2,legend:h2?f(sd,{items:oe2}):null,tooltip:g2&&X2&&le2?f(od,{x:X2.x,y:X2.y,visible:true,containerWidth:F2,rows:[{id:le2.id,label:B2(le2),value:V2(le2),color:I2[X2.payload.index]}]}):null,children:p(cd,{width:F2,height:a2,margins:Ed,title:x2,description:C2,interactive:g2,children:[f("g",{className:"charts-pie-chart__slices",transform:`translate(${G2}, ${K2})`,...g2?{onPointerMove:te2,onPointerLeave:ne2,"data-interactive":"true"}:{},children:q2.map((e4,t3)=>f("path",{className:"charts-pie-chart__slice",d:J2(e4)??"",fill:I2[t3],"data-slice":e4.data.id,...g2?{role:"img","aria-label":`${B2(e4.data)}: ${V2(e4.data)}`,...ae2(0,t3)}:{}},`${t3}-${e4.data.id}`))}),y2&&W2>0?p("g",{className:"charts-pie-chart__center",transform:`translate(${G2}, ${K2})`,pointerEvents:"none",children:[f("text",{className:"charts-pie-chart__center-label",textAnchor:"middle",dy:b2?"-0.1em":"0.35em",style:u({"--charts-pie-center-size":`${Math.max(14,U2*.28)}px`}),children:y2}),b2?f("text",{className:"charts-pie-chart__center-sublabel",textAnchor:"middle",dy:"1.4em",children:b2}):null]}):null]})})}function kd({innerRadius:e3=.6,className:t2,...n2}){return f(Od,{innerRadius:e3,className:s("charts-donut-chart",t2),...n2})}function Ad({label:e3,value:t2,format:n2,delta:i2,deltaFormat:a2,deltaTone:o2,caption:c2,trend:d2,data:m2,x:h2,y:g2,trendColor:_2,trendHeight:v2=36,trendTooltip:y2=true,title:b2,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2,className:E2,style:D2}){let O2=r(()=>po(C2),[C2]),k2=Array.isArray(d2),A2=r(()=>k2?bu(d2):bu(m2,{x:h2,y:g2}),[k2,d2,m2,h2,g2]),j2=t2??A2.at(-1)?.y,M2=typeof j2=="number"?vo(j2,n2??"compact",O2):typeof j2=="string"&&j2!==""?j2:"—",N2=jd(i2,a2,O2),P2=l(o2??Md(i2),"neutral"),F2=A2.length>0||!k2&&(!!w2||!!T2);return p("div",{className:s("charts-metric-chart",E2),style:D2,"data-width":S2?.width?Mu(S2.width)?"narrow":"regular":void 0,children:[f("span",{className:"charts-metric-chart__label",children:e3}),f("span",{className:"charts-metric-chart__value",children:M2}),N2!==null||c2?p("div",{className:"charts-metric-chart__meta",children:[N2===null?null:f("span",{className:"charts-metric-chart__delta","data-tone":P2,style:u({"--charts-metric-delta":Vu(P2)}),children:N2}),c2?f("span",{className:"charts-metric-chart__caption",children:c2}):null]}):null,F2?f(Td,{className:"charts-metric-chart__trend",data:k2?d2:m2,x:k2?void 0:h2,y:k2?void 0:g2,height:v2,color:_2,tooltip:y2,format:n2,title:b2??e3,description:x2,size:S2,baseProps:C2,isLoading:w2,error:T2}):null]})}function jd(e3,t2,n2){if(e3==null)return null;if(typeof e3=="string")return e3;if(typeof e3!="number"||!Number.isFinite(e3))return null;let r2=vo(Math.abs(e3),t2??(Math.abs(e3)<=1?"percent":"number"),n2);return`${e3>0?"+":e3<0?"−":""}${r2}`}function Md(e3){return typeof e3=="number"?e3>0?"success":e3<0?"danger":"neutral":"neutral"}function Nd(e3){let t2=Math.abs(e3.display);return e3.value<0?-t2:t2}var Pd=6,Fd=8,Id=20,Ld=.08;function Rd(e3,t2=0){let n2=e3.flatMap(e4=>[e4.base,e4.base+e4.value]),r2=Math.max(0,...n2),i2=Math.min(0,...n2),a2=r2-i2;if(a2<=0)return[0,0];let o2=t2>0?a2/t2*Id:a2*Ld;return[i2<0?Math.floor(i2-o2):0,r2>0?Math.ceil(r2+o2):0]}var zd=e3=>e3.total?"strong":e3.value<0?"series-2":"series-1";function Bd({bars:e3,data:t2,label:n2,value:i2,total:a2,xAxis:o2,yAxis:s2,height:c2=320,valueFormatter:l2,valueLabels:u2=true,margins:m2,title:h2,showTitle:g2,description:_2,size:v2,baseProps:y2,isLoading:b2,error:x2,className:S2,style:C2}){let w2=r(()=>po(y2),[y2]),T2=!Array.isArray(e3),E2=r(()=>T2?Eu(t2,{label:n2,value:i2,total:a2}):wu(e3),[T2,e3,t2,n2,i2,a2]),{ref:D2,dims:O2}=Pu(c2,v2),k2=O2.width,A2=Mu(k2),j2=s2?.formatter,M2=s2?.format,N2=r(()=>l2??(j2?e4=>j2(e4):e4=>vo(e4,M2,w2)),[l2,j2,M2,w2]),P2=r(()=>({...s2,formatter:e4=>N2(Number(e4))}),[s2,N2]),F2=A2?wo:uo,I2=Math.max(0,c2-(m2?.top??F2.top)-(m2?.bottom??F2.bottom)),L2=r(()=>Rd(E2,I2),[E2,I2]),ee2=Fu({hasData:L2[0]!==L2[1],isLoading:b2,error:x2}),R2=To({narrow:A2,yTicks:r(()=>Is().domain(L2).range([c2-F2.bottom,F2.top]),[L2,c2,F2]).ticks(6),yAxis:P2,loc:w2,override:m2}),z2=Math.max(0,k2-R2.left-R2.right),B2=r(()=>Xo().domain(E2.map(e4=>e4.label)).range([R2.left,R2.left+z2]).padding(.25),[E2,R2.left,z2]),V2=r(()=>Is().domain(L2).range([R2.top+I2,R2.top]),[L2,R2.top,I2]),H2=r(()=>E2.map((e4,t3)=>{let n3=B2(e4.label)??0,r2=V2(e4.base),i3=V2(e4.base+e4.value),a3=Math.min(r2,i3),o3=Math.abs(e4.base+e4.value)>=Math.abs(e4.base)?e4.base+e4.value:e4.base;return{b:e4,i:t3,x:n3,top:a3,height:Math.abs(i3-r2),end:i3,down:o3<0}}),[E2,B2,V2]),U2=r(()=>({columns:[o2?.label??(T2?n2||"label":"Step"),T2?i2||"value":"Value","Start","End"],rows:E2.map(e4=>[e4.label,N2(Nd(e4)),N2(e4.base),N2(e4.base+e4.value)])}),[E2,o2?.label,T2,n2,i2,N2]),W2=B2.bandwidth();return f(Iu,{chartClass:"charts-waterfall-chart",className:S2,style:C2,title:h2,showTitle:g2,description:_2,width:k2,height:c2,measureRef:D2,state:ee2,table:U2,children:f(cd,{width:k2,height:c2,margins:R2,title:h2,description:_2,background:p(d,{children:[f(rd,{orientation:"left",scale:V2,margins:R2,width:k2,height:c2,config:P2,gridlines:true,locale:w2,narrow:A2}),f(rd,{orientation:"bottom",scale:B2,margins:R2,width:k2,height:c2,config:o2,locale:w2,narrow:A2}),L2[0]<0?f("line",{className:"charts-waterfall-chart__zero",x1:R2.left,x2:R2.left+z2,y1:V2(0),y2:V2(0)}):null]}),overlay:u2?f("g",{className:"charts-waterfall-chart__values",children:H2.map(({b:e4,i:t3,x:n3,top:r2,height:i3,down:a3})=>f("text",{className:"charts-waterfall-chart__value",x:n3+W2/2,y:a3?r2+i3+Pd+Fd:r2-Pd,textAnchor:"middle",children:N2(Nd(e4))},`${t3}-${e4.label}`))}):null,children:H2.map(({b:e4,i:t3,x:n3,top:r2,height:i3,end:a3})=>{let o3=H2[t3+1],s3=e4.base+e4.value,c3=o3!==void 0&&(Math.abs(o3.b.base-s3)<1e-9||o3.b.total===true&&Math.abs(o3.b.base+o3.b.value-s3)<1e-9);return p("g",{className:"charts-waterfall-chart__step","data-step":e4.label,"data-direction":e4.total?"total":e4.value<0?"down":"up",children:[f("rect",{className:"charts-waterfall-chart__bar",x:n3,y:r2,width:W2,height:i3,fill:Uu(e4.color??zd(e4),t3)}),c3?f("line",{className:"charts-waterfall-chart__connector",x1:n3+W2,x2:o3.x,y1:a3,y2:a3}):null]},`${t3}-${e4.label}`)})})})}export{gd as AreaChart,rd as Axis,hd as BarChart,vd as BarLineChart,Lu as ChartDataTable,Iu as ChartFrame,od as ChartTooltip,fo as DEFAULT_LOCALE,kd as DonutChart,sd as Legend,pd as LineChart,Ad as MetricChart,ju as NARROW_WIDTH,Od as PieChart,cd as PlotArea,dd as ReferenceLine,bd as ScatterChart,Td as Sparkline,Bd as WaterfallChart,lu as asChartRange,bo as axisFormatter,po as chartLocale,To as chartMargins,Fu as chartState,Ou as inferXType,Mu as isNarrow,fd as labelAnchor,Ku as markerPath,qu as projectReferenceLines,Hu as resolveColor,Uu as resolveSeriesColor,Gu as seriesColors,Ru as seriesTable,zu as seriesToken,bu as toPoints,yu as toSeries,xu as toSlices,Eu as toSteps,Qu as useChartFocus,ed as useChartHover,Pu as useDimensions};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@peripheries/charts",
3
- "version": "0.5.0",
3
+ "version": "0.5.2",
4
4
  "description": "The shared charts lineage, built on @stack/core",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",