zframes 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. package/dist/index.js +533 -84
  2. package/package.json +5 -5
  3. package/runtime/assets/bitcoin-dominance-DVZsIJ3y.js +1 -0
  4. package/runtime/assets/breakeven-lskbHkqb.js +1 -0
  5. package/runtime/assets/breathing-BeUkCUAJ.js +1 -0
  6. package/runtime/assets/btc-blocks-fXBgGo4z.js +1 -0
  7. package/runtime/assets/btc-difficulty-BwyxgI0e.js +1 -0
  8. package/runtime/assets/btc-fees-Bg1rcXtN.js +1 -0
  9. package/runtime/assets/btc-hashrate-Xg8QNlTO.js +1 -0
  10. package/runtime/assets/btc-mempool-8Mfa77fO.js +1 -0
  11. package/runtime/assets/btc-shared-DeqDaCze.js +1 -0
  12. package/runtime/assets/calculator-CiXyJA9p.js +1 -0
  13. package/runtime/assets/chart-utils-BYIZMM9J.js +1 -0
  14. package/runtime/assets/checklist-D0dKSdmf.js +1 -0
  15. package/runtime/assets/clock-CNQTNh4L.js +1 -0
  16. package/runtime/assets/coin-movers-DulAF_oo.js +1 -0
  17. package/runtime/assets/content-shared-BZ1XzrJx.js +1 -0
  18. package/runtime/assets/countdown-BzZ2L6bw.js +1 -0
  19. package/runtime/assets/{d3-B3esOK0k.js → d3-xK4fOkBU.js} +1 -1
  20. package/runtime/assets/daily-analysis-RyI5KL4T.js +1 -0
  21. package/runtime/assets/day-meter-2bAj77Kz.js +1 -0
  22. package/runtime/assets/dex-volume-chart-DDPf1YAN.js +1 -0
  23. package/runtime/assets/dex-volume-treemap-jZCgRREu.js +1 -0
  24. package/runtime/assets/dice-wg979Skm.js +1 -0
  25. package/runtime/assets/dino-game-DlACWmE_.js +1 -0
  26. package/runtime/assets/divider-Chz1UsWJ.js +1 -0
  27. package/runtime/assets/drawdy-Ce7P47cx.js +1 -0
  28. package/runtime/assets/editor-BlGZ_tel.js +68 -0
  29. package/runtime/assets/editor-CHAAJRb1.css +1 -0
  30. package/runtime/assets/fear-greed-CENzXdIk.js +1 -0
  31. package/runtime/assets/feed-row-mVg1d5Zj.js +1 -0
  32. package/runtime/assets/filings-feed-2aIKzUUY.js +1 -0
  33. package/runtime/assets/financial-stress--ezsCpfR.js +1 -0
  34. package/runtime/assets/flappy-bird-DDe-IXt9.js +1 -0
  35. package/runtime/assets/format-CfAcS4D8.js +1 -0
  36. package/runtime/assets/fundamentals-v8f81ZNS.js +1 -0
  37. package/runtime/assets/funding-heatmap-DUoeFNGr.js +1 -0
  38. package/runtime/assets/funding-rate-chart-CjDA4nj7.js +1 -0
  39. package/runtime/assets/fx-board-CmXYQZi4.js +1 -0
  40. package/runtime/assets/game-ui-Dy_QYsPr.js +1 -0
  41. package/runtime/assets/heading-DMxdj9LK.js +1 -0
  42. package/runtime/assets/holiday-calendar-DxB-fxG5.js +1 -0
  43. package/runtime/assets/image-DLg33JpH.js +1 -0
  44. package/runtime/assets/index-C_O7gp2F.js +822 -0
  45. package/runtime/assets/index-DRTPEQtR.css +1 -0
  46. package/runtime/assets/index-XGtH5pVY.css +1 -0
  47. package/runtime/assets/index-jnySFpSv.js +1 -0
  48. package/runtime/assets/inflation-pulse-gcw-84PM.js +1 -0
  49. package/runtime/assets/journal-log-BX5Z_yte.js +1 -0
  50. package/runtime/assets/journal-open-XFQGIRkw.js +1 -0
  51. package/runtime/assets/journal-results-J1WCmyH2.js +1 -0
  52. package/runtime/assets/journal-score-CKhBSfYY.js +1 -0
  53. package/runtime/assets/journal-store-KCRoPnI_.js +1 -0
  54. package/runtime/assets/journal-ui-Cogk2Wkt.js +1 -0
  55. package/runtime/assets/labor-market-BV20Rl-4.js +1 -0
  56. package/runtime/assets/lightning-stats-h4fquhAg.js +1 -0
  57. package/runtime/assets/link-grid-a6NWj1Hu.js +1 -0
  58. package/runtime/assets/market-cap-treemap-CAi49oc_.js +1 -0
  59. package/runtime/assets/market-data-CvmpLFSo.js +1 -0
  60. package/runtime/assets/market-hours-6srwf0-r.js +1 -0
  61. package/runtime/assets/marquee-DDurk6bj.js +28 -0
  62. package/runtime/assets/metric-row-BVVhjsjK.js +1 -0
  63. package/runtime/assets/mini-line-chart-D-i1QqSe.js +1 -0
  64. package/runtime/assets/mining-pools-BPjCy4ZW.js +1 -0
  65. package/runtime/assets/mover-row-kQ9xt3Sp.js +1 -0
  66. package/runtime/assets/national-debt-DkOnmfd1.js +1 -0
  67. package/runtime/assets/news-feed-CFWKKqrH.js +1 -0
  68. package/runtime/assets/note-_cGEXAru.js +1 -0
  69. package/runtime/assets/open-interest-fxHh_T-V.js +1 -0
  70. package/runtime/assets/options-iv-CDArg1Op.js +1 -0
  71. package/runtime/assets/options-oi-strike-D_XIgUkk.js +1 -0
  72. package/runtime/assets/options-put-call-DG4RXjzD.js +1 -0
  73. package/runtime/assets/pomodoro-B-Jk-51G.js +1 -0
  74. package/runtime/assets/portfolio-allocation-BJepNj1X.js +1 -0
  75. package/runtime/assets/portfolio-common-D5L06PNC.js +1 -0
  76. package/runtime/assets/portfolio-holdings-DSkAZALG.js +1 -0
  77. package/runtime/assets/portfolio-value-BJw2csWV.js +1 -0
  78. package/runtime/assets/price-chart-khxI-9vJ.js +1 -0
  79. package/runtime/assets/price-compare-C-uEckke.js +1 -0
  80. package/runtime/assets/price-liveline-BDesEIbL.js +1 -0
  81. package/runtime/assets/price-ticker-BXSeNYf9.js +1 -0
  82. package/runtime/assets/protocol-fees-treemap-YtWbL1Kn.js +1 -0
  83. package/runtime/assets/protocol-tvl-chart-CEjUOIY5.js +1 -0
  84. package/runtime/assets/protocol-tvl-treemap-b31QlpnS.js +1 -0
  85. package/runtime/assets/quote-cehyepdm.js +1 -0
  86. package/runtime/assets/rates-board-Du4k0z1i.js +1 -0
  87. package/runtime/assets/returns-projector-DXnRFAES.js +1 -0
  88. package/runtime/assets/risk-reward-DZWyCrbv.js +1 -0
  89. package/runtime/assets/rules-card-BXJjNTqj.js +1 -0
  90. package/runtime/assets/session-progress-bA45Q3wk.js +1 -0
  91. package/runtime/assets/short-volume-C6cWknyR.js +1 -0
  92. package/runtime/assets/snake-DYTa97hl.js +1 -0
  93. package/runtime/assets/spotify-embed-BaH6UHeG.js +1 -0
  94. package/runtime/assets/stopwatch-CS6n0bY9.js +1 -0
  95. package/runtime/assets/top-movers-CQNx9EH5.js +1 -0
  96. package/runtime/assets/treasury-auctions-CGM8hAuU.js +1 -0
  97. package/runtime/assets/treemap-leaf-DLQawrx4.js +1 -0
  98. package/runtime/assets/tvl-treemap-C3SUFzdj.js +1 -0
  99. package/runtime/assets/ui-Bq3RQsdJ.js +1 -0
  100. package/runtime/assets/unicorn-scene-DcohHRPZ.js +1 -0
  101. package/runtime/assets/use-countdown-BmcF-qdL.js +1 -0
  102. package/runtime/assets/utils-DaT-yT0k.js +1 -0
  103. package/runtime/assets/video-WCnvLwQ_.js +1 -0
  104. package/runtime/assets/yield-curve-CpitTQ9L.js +1 -0
  105. package/runtime/index.html +2 -4
  106. package/runtime/assets/editor-DVTcqJo4.js +0 -68
  107. package/runtime/assets/editor-DnV0I9s-.css +0 -1
  108. package/runtime/assets/index-DEGnog6Q.css +0 -1
  109. package/runtime/assets/index-DPlG_EDx.js +0 -35727
  110. package/runtime/assets/index-KRy1feFG.js +0 -761
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zframes",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "zframes CLI — serve a dashboard.json as a live, editable market terminal (serve), print the frame catalogue for generating agents (catalogue), and validate a dashboard.json (lint).",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Zentry",
@@ -40,12 +40,12 @@
40
40
  "@types/node": "^20.14.0",
41
41
  "tsup": "^8.3.0",
42
42
  "typescript": "^5.8.0",
43
- "@zframes/provider-coingecko": "0.0.0",
43
+ "@zframes/core": "0.0.0",
44
44
  "@zframes/frames": "0.0.0",
45
45
  "@zframes/provider-alternativeme": "0.0.0",
46
- "@zframes/core": "0.0.0",
47
- "@zframes/provider-hyperliquid": "0.0.0",
48
- "@zframes/provider-defillama": "0.0.0"
46
+ "@zframes/provider-coingecko": "0.0.0",
47
+ "@zframes/provider-defillama": "0.0.0",
48
+ "@zframes/provider-hyperliquid": "0.0.0"
49
49
  },
50
50
  "scripts": {
51
51
  "build": "node scripts/build-runtime.mjs && tsup && node scripts/assert-artifacts.mjs",
@@ -0,0 +1 @@
1
+ import{r as f,j as e}from"./react-qoZPGuNy.js";import{b as r,f as p,a as x,c as g}from"./format-CfAcS4D8.js";import{f as j,n as i,o as v}from"./index-C_O7gp2F.js";import{F as o}from"./ui-Bq3RQsdJ.js";i.schema;const c={BTC:"linear-gradient(90deg, #FF810F 0%, #FF9E37 100%)",ETH:"hsl(var(--zf-accent-hue, 242) 85% 72%)",Others:"hsl(var(--zf-accent-hue, 242) 38% 52%)"};function y({config:d}){const{market:s,isLoading:m}=v(),n=f.useMemo(()=>{if(!s)return[];const a=s.dominance.btc??0,t=s.dominance.eth??0;return[{type:"BTC",value:a},{type:"ETH",value:t},{type:"Others",value:Math.max(0,100-a-t)}].sort((h,u)=>u.value-h.value)},[s]);if(m)return e.jsx(o,{loading:!0,children:"loading dominance…"});if(!s)return e.jsx(o,{children:"no market data"});const l=n[0];return e.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-3",children:[e.jsxs("div",{className:"flex items-baseline gap-2",children:[e.jsx("span",{className:"metric-xl text-strong",children:r(l.value,1)}),e.jsx("span",{className:"body-md text-soft",children:l.type})]}),e.jsx("div",{className:"flex h-3 w-full max-w-sm gap-1 overflow-hidden rounded-full",children:n.map((a,t)=>e.jsx("div",{className:`h-full ${t===0?"rounded-l-full":""} ${t===n.length-1?"rounded-r-full":""}`,style:{width:`${a.value}%`,background:c[a.type]}},a.type))}),e.jsx("div",{className:"grid w-full max-w-sm grid-cols-3",children:n.map(a=>e.jsxs("div",{className:"flex items-center justify-center gap-1.5",children:[e.jsx("div",{className:"h-2 w-2 flex-shrink-0 rounded-full",style:{background:c[a.type]}}),e.jsx("span",{className:"body-sm text-soft",children:a.type}),e.jsx("span",{className:"body-sm text-normal font-bold tabular-nums",children:r(a.value,1)})]},a.type))}),d.showTotalMarketCap&&e.jsxs("div",{className:"caption text-soft",children:["total mcap ",p(s.totalMarketCapUsd)," ·"," ",e.jsxs("span",{style:{color:g(s.marketCapChangePct24h)},children:[x(s.marketCapChangePct24h)," 24h"]})]})]})}const F=j({...i,component:y});export{F as bitcoinDominanceFrame};
@@ -0,0 +1 @@
1
+ import{r as u,j as e}from"./react-qoZPGuNy.js";import{i as c}from"./content-shared-BZ1XzrJx.js";import{d as N,a as j,c as y}from"./format-CfAcS4D8.js";import{f as k,b8 as b}from"./index-C_O7gp2F.js";import{s as z}from"./ui-Bq3RQsdJ.js";b.schema;function C({config:l}){const[o,m]=u.useState(l.fills.length?l.fills:[{price:0,size:0}]),[n,g]=u.useState(l.currentPrice),{avg:r,totalSize:p}=u.useMemo(()=>{let s=0,a=0;for(const t of o)s+=t.price*t.size,a+=t.size;return{avg:a>0?s/a:0,totalSize:a}},[o]),x=r>0&&n>0?(n-r)/r*100:null,d=l.label.trim(),h=(s,a,t)=>m(f=>f.map((i,v)=>v===s?{...i,[a]:t}:i));return e.jsxs("div",{className:"flex h-full w-full flex-col gap-2",children:[d&&e.jsx("div",{className:"caption text-soft shrink-0 uppercase tracking-[0.12em]",children:d}),e.jsxs("div",{className:"shrink-0",children:[e.jsx("div",{className:"caption text-soft",children:"break-even (avg cost)"}),e.jsx("div",{className:"metric-lg text-strong",children:p>0?N(r):"—"}),e.jsxs("div",{className:"caption text-soft",children:[p>0?`${p} units`:"add fills below",x!==null&&e.jsxs(e.Fragment,{children:[" · ",e.jsxs("span",{style:{color:y(x)},children:[j(x)," unrealized"]})]})]})]}),e.jsxs("div",{className:`min-h-0 flex-1 ${z}`,children:[o.map((s,a)=>e.jsxs("div",{className:"mb-1 flex items-center gap-1",children:[e.jsxs("label",{className:`flex flex-1 items-center gap-1 px-2 py-1 ${c}`,children:[e.jsx("span",{className:"caption text-soft",children:"px"}),e.jsx("input",{type:"number",value:Number.isFinite(s.price)?s.price:0,onChange:t=>h(a,"price",Number(t.target.value)),className:"body-sm text-strong w-full bg-transparent outline-none"})]}),e.jsxs("label",{className:`flex flex-1 items-center gap-1 px-2 py-1 ${c}`,children:[e.jsx("span",{className:"caption text-soft",children:"sz"}),e.jsx("input",{type:"number",value:Number.isFinite(s.size)?s.size:0,onChange:t=>h(a,"size",Number(t.target.value)),className:"body-sm text-strong w-full bg-transparent outline-none"})]}),e.jsx("button",{type:"button",onClick:()=>m(t=>t.length>1?t.filter((f,i)=>i!==a):t),className:"caption text-soft hover:text-strong shrink-0 px-1","aria-label":"remove fill",children:"×"})]},a)),e.jsx("button",{type:"button",onClick:()=>m(s=>[...s,{price:0,size:0}]),className:`caption text-soft hover:text-strong w-full px-2 py-1 ${c}`,children:"+ add fill"})]}),e.jsxs("label",{className:`flex shrink-0 items-center gap-1 px-2 py-1 ${c}`,children:[e.jsx("span",{className:"caption text-soft shrink-0",children:"current price"}),e.jsx("input",{type:"number",value:Number.isFinite(n)?n:0,onChange:s=>g(Number(s.target.value)),className:"body-sm text-strong w-full bg-transparent text-right outline-none"})]})]})}const E=k({...b,component:C});export{E as breakevenFrame};
@@ -0,0 +1 @@
1
+ import{r as s,j as r}from"./react-qoZPGuNy.js";import{f as i,bc as n}from"./index-C_O7gp2F.js";n.schema;function m(e){return[{name:"Breathe in",dur:e.inhale,scale:1},{name:"Hold",dur:e.hold,scale:1},{name:"Breathe out",dur:e.exhale,scale:.45},{name:"Hold",dur:e.holdAfter,scale:.45}]}function x({config:e}){const t=m(e),[a,l]=s.useState(0);s.useEffect(()=>{l(0)},[e.inhale,e.hold,e.exhale,e.holdAfter]),s.useEffect(()=>{const d=Math.max(0,t[a].dur),u=setTimeout(()=>l(c=>(c+1)%t.length),Math.max(300,d*1e3));return()=>clearTimeout(u)},[a,e.inhale,e.hold,e.exhale,e.holdAfter]);const o=t[a].scale,h=Math.max(.3,t[a].dur);return r.jsxs("div",{className:"relative flex h-full w-full items-center justify-center overflow-hidden",children:[r.jsx("div",{className:"aspect-square w-[55%] rounded-full",style:{background:"var(--color-highlight)",opacity:.25,transform:`scale(${o})`,transition:`transform ${h}s ease-in-out`}}),r.jsx("div",{className:"caption text-soft absolute uppercase tracking-[0.2em]",children:t[a].name})]})}const b=i({...n,component:x});export{b as breathingFrame};
@@ -0,0 +1 @@
1
+ import{j as s}from"./react-qoZPGuNy.js";import{t as c,j as i}from"./format-CfAcS4D8.js";import{f as r,aQ as o,aR as m}from"./index-C_O7gp2F.js";import{F as a,s as d}from"./ui-Bq3RQsdJ.js";o.schema;function x({config:l}){const{blocks:e,isLoading:n}=m(l.count);return n?s.jsx(a,{loading:!0,children:"loading blocks…"}):e.length===0?s.jsx(a,{children:"no block data yet"}):s.jsx("div",{className:"flex h-full min-h-0 flex-col",children:s.jsx("div",{className:d,children:s.jsx("div",{className:"flex flex-col gap-1.5",children:e.map(t=>s.jsxs("div",{className:"grid grid-cols-[auto_minmax(0,1fr)_auto] items-center gap-2 rounded-md bg-white/[0.03] px-2 py-1.5",title:`Block ${t.height} · ${t.poolName} · ${t.txCount.toLocaleString("en-US")} txs`,children:[s.jsxs("div",{className:"flex flex-col",children:[s.jsx("span",{className:"body-sm text-strong font-bold tabular-nums",children:t.height.toLocaleString("en-US")}),s.jsx("span",{className:"caption text-soft",children:c(t.time)})]}),s.jsxs("div",{className:"min-w-0",children:[s.jsx("span",{className:"body-sm text-normal block truncate",children:t.poolName}),s.jsxs("span",{className:"caption text-soft",children:[t.txCount.toLocaleString("en-US")," txs"]})]}),s.jsxs("div",{className:"text-right",children:[s.jsx("span",{className:"body-sm text-normal block font-bold tabular-nums",children:i(t.totalFees)}),s.jsxs("span",{className:"caption text-soft",children:["~",Math.round(t.medianFee)," sat/vB"]})]})]},t.id))})})})}const j=r({...o,component:x});export{j as btcBlocksFrame};
@@ -0,0 +1 @@
1
+ import{j as t}from"./react-qoZPGuNy.js";import{a as r,b as m,c as o}from"./format-CfAcS4D8.js";import{f as u,aU as c,aV as h}from"./index-C_O7gp2F.js";import{F as l}from"./ui-Bq3RQsdJ.js";c.schema;function x(n){const e=Math.max(0,Math.round((n-Date.now())/1e3)),i=Math.floor(e/86400),s=Math.floor(e%86400/3600),a=Math.floor(e%3600/60);return i>0?`in ${i}d ${s}h`:s>0?`in ${s}h ${a}m`:`in ${a}m`}function j({config:n}){const{adjustment:e,isLoading:i}=h();if(i)return t.jsx(l,{loading:!0,children:"loading difficulty…"});if(!e)return t.jsx(l,{children:"no difficulty data yet"});const{progressPercent:s,difficultyChange:a,remainingBlocks:d}=e,f=o(a);return t.jsxs("div",{className:"flex h-full min-h-0 flex-col justify-center gap-3",children:[t.jsxs("div",{className:"flex items-end justify-between gap-3",children:[t.jsxs("div",{children:[t.jsx("div",{className:"caption text-soft uppercase",children:"next adjustment"}),t.jsx("div",{className:"metric-lg leading-none",style:{color:f},children:r(a)}),t.jsx("div",{className:"body-sm text-soft",children:a>=0?"harder":"easier"})]}),t.jsxs("div",{className:"text-right",children:[t.jsx("div",{className:"body-md text-normal font-bold tabular-nums",children:x(e.estimatedRetargetDate)}),t.jsxs("div",{className:"caption text-soft",children:[d.toLocaleString("en-US")," blocks left"]})]})]}),t.jsxs("div",{children:[t.jsx("div",{className:"relative h-2.5 w-full overflow-hidden rounded-full bg-white/[0.08]",children:t.jsx("div",{className:"absolute left-0 top-0 h-full rounded-full",style:{width:`${Math.min(100,Math.max(0,s))}%`,background:"hsl(var(--zf-accent-hue, 242) 85% 72%)"}})}),t.jsxs("div",{className:"caption text-soft mt-1 tabular-nums",children:[m(s,1)," through this epoch"]})]}),n.showPrevious&&t.jsxs("div",{className:"caption text-soft border-t border-white/[0.08] pt-2",children:["previous retarget"," ",t.jsx("span",{className:"font-bold tabular-nums",style:{color:o(e.previousRetarget)},children:r(e.previousRetarget)})]})]})}const N=u({...c,component:j});export{N as btcDifficultyFrame};
@@ -0,0 +1 @@
1
+ import{j as t}from"./react-qoZPGuNy.js";import{F as i,a as e}from"./btc-shared-DeqDaCze.js";import{f as c,aM as n,aN as f}from"./index-C_O7gp2F.js";import{F as a}from"./ui-Bq3RQsdJ.js";import"./format-CfAcS4D8.js";n.schema;const l={fastest:"Next block",halfHour:"~30 min",hour:"~1 hour",economy:"Economy",minimum:"Minimum"},u={fastest:e[0],halfHour:e[1],hour:e[2],economy:e[3],minimum:e[4]};function p({config:m}){const{fees:o,isLoading:r}=f();return r?t.jsx(a,{loading:!0,children:"loading fees…"}):o?t.jsx("div",{className:"flex h-full flex-wrap content-center items-stretch justify-center gap-2",children:m.tiers.map(s=>t.jsx(i,{className:"min-w-[64px] flex-1",color:u[s],value:o[s],caption:l[s]},s))}):t.jsx(a,{children:"no fee data yet"})}const E=c({...n,component:p});export{E as btcFeesFrame};
@@ -0,0 +1 @@
1
+ import{r as c,j as e}from"./react-qoZPGuNy.js";import{k as h,e as l}from"./format-CfAcS4D8.js";import{f as m,aS as i,aT as d}from"./index-C_O7gp2F.js";import{F as r}from"./ui-Bq3RQsdJ.js";import{M as f}from"./mini-line-chart-D-i1QqSe.js";import"./d3-xK4fOkBU.js";import"./utils-DaT-yT0k.js";i.schema;function x({config:a}){const{data:t,isLoading:n}=d(a.window),o=c.useMemo(()=>((t==null?void 0:t.hashrates)??[]).map(s=>({date:new Date(s.time).toISOString(),value:s.hashrate})),[t==null?void 0:t.hashrates]);return n?e.jsx(r,{loading:!0,children:"loading hashrate…"}):t?e.jsxs("div",{className:"flex h-full min-h-0 flex-col justify-center gap-3",children:[e.jsxs("div",{className:"flex items-end justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("div",{className:"caption text-soft uppercase",children:"network hashrate"}),e.jsx("div",{className:"metric-lg text-strong leading-none",children:h(t.currentHashrate)})]}),e.jsxs("div",{className:"text-right",children:[e.jsx("div",{className:"body-md text-normal font-bold tabular-nums",children:l(t.currentDifficulty)}),e.jsx("div",{className:"caption text-soft",children:"difficulty"})]})]}),e.jsx(f,{data:o,width:320,height:54,color:"hsl(var(--zf-accent-hue, 242) 85% 72%)"}),e.jsxs("div",{className:"caption text-soft",children:["past ",a.window]})]}):e.jsx(r,{children:"no hashrate data yet"})}const b=m({...i,component:x});export{b as btcHashrateFrame};
@@ -0,0 +1 @@
1
+ import{j as e}from"./react-qoZPGuNy.js";import{F as m,f as d}from"./btc-shared-DeqDaCze.js";import{e as x}from"./format-CfAcS4D8.js";import{f as p,aO as o,aP as f}from"./index-C_O7gp2F.js";import{F as a,a as j}from"./ui-Bq3RQsdJ.js";o.schema;function u({config:i}){const{state:s,isLoading:n}=f();if(n)return e.jsx(a,{loading:!0,children:"loading mempool…"});if(!s)return e.jsx(a,{children:"no mempool data yet"});const l=s.projected.slice(0,i.projectedBlocks),r=(s.vsize/1e6).toFixed(1);return e.jsxs("div",{className:"flex h-full min-h-0 flex-col justify-center gap-3",children:[e.jsxs("div",{className:"flex items-end justify-between gap-3",children:[e.jsxs("div",{children:[e.jsx("div",{className:"caption text-soft uppercase",children:"unconfirmed"}),e.jsx("div",{className:"metric-lg text-strong leading-none",children:s.count.toLocaleString("en-US")}),e.jsx("div",{className:"body-sm text-soft",children:"transactions"})]}),e.jsxs("div",{className:"text-right",children:[e.jsxs("div",{className:"body-md text-normal font-bold tabular-nums",children:[r," MvB"]}),e.jsx("div",{className:"caption text-soft",children:"pending vsize"})]})]}),e.jsx("div",{className:`flex gap-1.5 ${j}`,children:l.map((t,c)=>e.jsx(m,{className:"min-w-[76px]",color:d(t.medianFee),value:`~${Math.round(t.medianFee)}`,caption:`${x(t.nTx)} tx`},c))})]})}const M=p({...o,component:u});export{M as btcMempoolFrame};
@@ -0,0 +1 @@
1
+ import{j as s}from"./react-qoZPGuNy.js";import{D as i,U as f}from"./format-CfAcS4D8.js";const t=[i,"#ffa057","#ffd166","#9bd45f",f];function o(e){return e>=100?t[0]:e>=50?t[1]:e>=20?t[2]:e>=5?t[3]:t[4]}function d({color:e,value:n,caption:r,className:a=""}){return s.jsxs("div",{className:`flex flex-col items-center justify-center rounded-lg px-2 py-2 ${a}`,style:{background:`${e}14`,border:`1px solid ${e}33`},children:[s.jsx("span",{className:"metric-md leading-none",style:{color:e},children:n}),s.jsx("span",{className:"caption text-soft mt-0.5",children:"sat/vB"}),s.jsx("span",{className:"caption text-soft mt-1 text-center",children:r})]})}export{d as F,t as a,o as f};
@@ -0,0 +1 @@
1
+ import{r as n,j as e}from"./react-qoZPGuNy.js";import{i as C}from"./content-shared-BZ1XzrJx.js";import{f as F,aE as N}from"./index-C_O7gp2F.js";import{s as A}from"./ui-Bq3RQsdJ.js";N.schema;const R="var(--color-highlight)";function x(t){const s=Number(t);return Number.isFinite(s)?s:0}function d({label:t,value:s,onChange:i,prefix:r,suffix:l}){return e.jsxs("label",{className:"flex flex-col gap-1",children:[e.jsx("span",{className:"caption text-soft uppercase tracking-[0.12em]",children:t}),e.jsxs("span",{className:`flex items-center gap-1 px-2 py-1.5 ${C}`,children:[r&&e.jsx("span",{className:"body-sm text-soft",children:r}),e.jsx("input",{type:"number",inputMode:"decimal",value:s,onChange:c=>i(c.target.value),className:"body-sm text-normal min-w-0 flex-1 bg-transparent text-right tabular-nums outline-none [appearance:textfield] [&::-webkit-inner-spin-button]:appearance-none [&::-webkit-outer-spin-button]:appearance-none"}),l&&e.jsx("span",{className:"body-sm text-soft",children:l})]})]})}function M({config:t}){const[s,i]=n.useState(String(t.account)),[r,l]=n.useState(String(t.riskPct)),[c,g]=n.useState(String(t.entry)),[h,v]=n.useState(String(t.stop));n.useEffect(()=>i(String(t.account)),[t.account]),n.useEffect(()=>l(String(t.riskPct)),[t.riskPct]),n.useEffect(()=>g(String(t.entry)),[t.entry]),n.useEffect(()=>v(String(t.stop)),[t.stop]);const a=n.useMemo(()=>{const o=x(s),E=x(r),m=x(c),j=x(h),S=o*E/100,p=Math.abs(m-j),y=p>0?S/p:0,w=y*m,P=m===j?"—":j<m?"long":"short";return{riskAmount:S,perUnit:p,size:y,value:w,side:P,hasStop:p>0}},[s,r,c,h]),u=t.currency,f=o=>`${u}${o.toLocaleString(void 0,{maximumFractionDigits:2})}`,k=o=>o.toLocaleString(void 0,{maximumFractionDigits:o>=1?2:4});return e.jsxs("div",{className:`${A} flex flex-col gap-3`,children:[e.jsxs("div",{className:"grid grid-cols-2 gap-2",children:[e.jsx(d,{label:"Account",value:s,onChange:i,prefix:u}),e.jsx(d,{label:"Risk",value:r,onChange:l,suffix:"%"}),e.jsx(d,{label:"Entry",value:c,onChange:g,prefix:u}),e.jsx(d,{label:"Stop",value:h,onChange:v,prefix:u})]}),e.jsxs("div",{className:"flex flex-col gap-1.5 rounded-lg border border-white/[0.07] bg-white/[0.03] p-2.5",children:[e.jsxs("div",{className:"flex items-baseline justify-between",children:[e.jsx("span",{className:"caption text-soft uppercase tracking-[0.12em]",children:"Position size"}),e.jsx("span",{className:"body-lg font-extrabold tabular-nums",style:{color:a.hasStop?R:void 0},children:a.hasStop?k(a.size):"—"})]}),e.jsx(b,{label:"Risk amount",value:f(a.riskAmount)}),e.jsx(b,{label:"Per-unit risk",value:a.hasStop?f(a.perUnit):"set a stop"}),e.jsx(b,{label:"Position value",value:a.hasStop?f(a.value):"—"}),e.jsx(b,{label:"Direction",value:a.side})]})]})}function b({label:t,value:s}){return e.jsxs("div",{className:"flex items-baseline justify-between",children:[e.jsx("span",{className:"body-sm text-soft",children:t}),e.jsx("span",{className:"body-sm text-normal tabular-nums",children:s})]})}const U=F({...N,component:M});export{U as calculatorFrame};
@@ -0,0 +1 @@
1
+ import{m as M,b as r,t as u}from"./d3-xK4fOkBU.js";var l=(n=>(n["30m"]="30m",n["24h"]="24h",n["3D"]="3D",n["7D"]="7D",n["1M"]="1M",n["3M"]="3M",n.YTD="YTD",n))(l||{});const e=(n,o)=>{const t=new Date(n);return o===l["24h"]?u("%H:%M")(t):u("%b %d")(t)},x=(n,o=.1)=>{const t=n.map(F=>F.value),s=M(t)||0,c=r(t)||0,D=c-s,m=c+D*o;let a=s-D*o;return s>=0&&a<0&&(a=0),[a,m]},E=["#3B82F6","#10B981","#F59E0B","#EF4444","#8B5CF6","#06B6D4","#84CC16","#F97316"];export{E as C,l as a,x as c,e as f};
@@ -0,0 +1 @@
1
+ import{r as x,j as t}from"./react-qoZPGuNy.js";import{f as p,b9 as o,m as u}from"./index-C_O7gp2F.js";import{s as b}from"./ui-Bq3RQsdJ.js";o.schema;function f({config:s}){const r=u(),[i,m]=x.useState(s.checked),l=r?s.checked:i,h=a=>{const e=s.items.map((k,c)=>c===a?!l[c]:!!l[c]);r?r({checked:e}):m(e)},d=s.items.filter((a,e)=>l[e]).length,n=s.title.trim();return t.jsxs("div",{className:"flex h-full w-full flex-col",children:[t.jsxs("div",{className:"mb-1 flex shrink-0 items-baseline justify-between gap-2",children:[n&&t.jsx("div",{className:"body-sm text-strong truncate font-semibold",children:n}),t.jsxs("div",{className:"caption text-soft shrink-0 tabular-nums",children:[d,"/",s.items.length]})]}),t.jsx("div",{className:`min-h-0 flex-1 ${b}`,children:s.items.map((a,e)=>t.jsxs("button",{type:"button",onClick:()=>h(e),className:"flex w-full items-center gap-2 py-1 text-left",children:[t.jsx("span",{className:"caption flex h-4 w-4 shrink-0 items-center justify-center rounded border leading-none",style:{borderColor:l[e]?"var(--color-highlight)":"rgba(255,255,255,0.2)",background:l[e]?"var(--color-highlight)":"transparent",color:l[e]?"#0b0e14":"transparent"},children:"✓"}),t.jsx("span",{className:`body-sm ${l[e]?"text-disabled line-through":"text-normal"}`,children:a})]},e))})]})}const v=p({...o,component:f});export{v as checklistFrame};
@@ -0,0 +1 @@
1
+ import{r as s,j as o}from"./react-qoZPGuNy.js";import{f as R,q as y}from"./index-C_O7gp2F.js";import{F as b}from"./ui-Bq3RQsdJ.js";import{u as m}from"./use-countdown-BmcF-qdL.js";y.schema;function u(e){const r={hour:"",minute:"",second:"",fractional:"",period:""};for(const n of e.formatToParts(new Date))n.type==="hour"?r.hour=n.value:n.type==="minute"?r.minute=n.value:n.type==="second"?r.second=n.value:n.type==="fractionalSecond"?r.fractional=n.value:n.type==="dayPeriod"&&(r.period=n.value);return r}function j({config:e}){const r=s.useRef(null),n=s.useRef(null),f=s.useRef(null),p=s.useRef(null),h=s.useRef(null),a=e.timezone.trim()||void 0,c=e.showSeconds||e.showMillis,t=s.useMemo(()=>{var l;try{const z=new Intl.DateTimeFormat(void 0,{timeZone:a,hour:"2-digit",minute:"2-digit",second:c?"2-digit":void 0,fractionalSecondDigits:e.showMillis?3:void 0,hour12:e.hour12}),v=e.showDate?new Intl.DateTimeFormat(void 0,{timeZone:a,weekday:"short",month:"short",day:"numeric"}):null;let x="";return e.showTimezone&&(x=((l=new Intl.DateTimeFormat(void 0,{timeZone:a,hour:"2-digit",timeZoneName:"short"}).formatToParts(new Date).find(D=>D.type==="timeZoneName"))==null?void 0:l.value)??""),{time:z,date:v,zone:x,error:null}}catch{return{time:null,date:null,zone:"",error:a??"invalid timezone"}}},[a,c,e.showMillis,e.hour12,e.showDate,e.showTimezone]);if(m({ref:r,getRemainingMs:()=>Date.now(),format:()=>{if(!t.time)return"";const l=u(t.time);return`${l.hour}:${l.minute}`}}),m({ref:n,getRemainingMs:()=>Date.now(),format:()=>t.time?`:${u(t.time).second}`:""}),m({ref:f,getRemainingMs:()=>Date.now(),format:()=>t.time?`.${u(t.time).fractional}`:""}),m({ref:p,getRemainingMs:()=>Date.now(),format:()=>t.time?u(t.time).period:""}),m({ref:h,getRemainingMs:()=>Date.now(),format:()=>t.date?t.date.format(new Date):""}),t.error)return o.jsxs(b,{children:["unknown timezone: ",t.error]});const i=u(t.time),d="var(--color-highlight)",w="0 0 18px hsl(var(--zf-accent-hue, 242) 92% 70% / 0.45)";return o.jsxs("div",{className:"flex h-full flex-col items-center justify-center gap-2 text-center [container-type:size]",children:[o.jsxs("div",{className:"text-strong inline-flex max-w-full items-baseline justify-center whitespace-nowrap font-dmsans font-extrabold leading-none tracking-[-0.01em] tabular-nums",style:{fontSize:"clamp(1.6rem, 37cqmin, 5.5rem)"},children:[o.jsx("span",{ref:r,suppressHydrationWarning:!0,children:`${i.hour}:${i.minute}`}),c&&o.jsx("span",{ref:n,suppressHydrationWarning:!0,className:"font-bold",style:{fontSize:"0.46em",color:d,textShadow:w},children:`:${i.second}`}),e.showMillis&&o.jsx("span",{ref:f,suppressHydrationWarning:!0,className:"font-semibold",style:{fontSize:"0.3em",color:d,opacity:.65},children:`.${i.fractional}`}),e.hour12&&o.jsx("span",{ref:p,suppressHydrationWarning:!0,className:"text-soft ml-[0.3em] self-center font-semibold uppercase",style:{fontSize:"0.3em",letterSpacing:"0.08em"},children:i.period})]}),e.showDate&&t.date&&o.jsx("div",{ref:h,suppressHydrationWarning:!0,className:"caption text-soft tabular-nums",children:t.date.format(new Date)}),(e.label||t.zone)&&o.jsxs("div",{className:"caption text-soft inline-flex items-center gap-1.5 uppercase tracking-[0.18em]",children:[o.jsx("span",{"aria-hidden":!0,className:"inline-block h-1 w-1 rounded-full",style:{background:d,boxShadow:w}}),e.label&&t.zone?`${e.label} · ${t.zone}`:e.label||t.zone]})]})}const k=R({...y,component:j});export{k as clockFrame};
@@ -0,0 +1 @@
1
+ import{r as p,j as r}from"./react-qoZPGuNy.js";import{M as l}from"./mover-row-kQ9xt3Sp.js";import{f as h,b3 as t,b4 as x}from"./index-C_O7gp2F.js";import{F as n}from"./ui-Bq3RQsdJ.js";import"./format-CfAcS4D8.js";t.schema;function u({config:e}){const{entries:o,isLoading:c}=x(),{gainers:i,losers:m}=p.useMemo(()=>{const s=o.filter(a=>a.rank<=e.minRank&&a.volume24hUsd>0).map(a=>({symbol:a.symbol,price:a.priceUsd,chg:a.changePct[e.window]??0})).sort((a,d)=>d.chg-a.chg);return{gainers:s.slice(0,e.count),losers:s.slice(-e.count).reverse()}},[o,e.window,e.count,e.minRank]);return c?r.jsx(n,{loading:!0,children:"loading movers…"}):i.length===0?r.jsx(n,{children:"no mover data yet"}):r.jsxs("div",{className:"grid h-full grid-cols-2 gap-x-4 overflow-hidden",children:[r.jsxs("div",{className:"flex flex-col gap-1.5",children:[r.jsxs("div",{className:"caption text-soft uppercase tracking-wide",children:["gainers · ",e.window]}),i.map(s=>r.jsx(l,{symbol:s.symbol,label:s.symbol,price:s.price,changePct:s.chg},s.symbol))]}),r.jsxs("div",{className:"flex flex-col gap-1.5",children:[r.jsxs("div",{className:"caption text-soft uppercase tracking-wide",children:["losers · ",e.window]}),m.map(s=>r.jsx(l,{symbol:s.symbol,label:s.symbol,price:s.price,changePct:s.chg},s.symbol))]})]})}const f=h({...t,component:u});export{f as coinMoversFrame};
@@ -0,0 +1 @@
1
+ const r="rounded-md border border-white/[0.08] bg-white/[0.04] transition-colors hover:bg-white/[0.06] hover:border-[var(--color-accent-line)] focus-within:border-[var(--color-accent-line)]";export{r as i};
@@ -0,0 +1 @@
1
+ import{r,j as t}from"./react-qoZPGuNy.js";import{f as z,aC as F}from"./index-C_O7gp2F.js";import{F as S}from"./ui-Bq3RQsdJ.js";import{u as g}from"./use-countdown-BmcF-qdL.js";F.schema;const v=864e5,b=36e5,D=6e4;function f(n){let s=Math.max(0,n);const l=Math.floor(s/v);s-=l*v;const m=Math.floor(s/b);s-=m*b;const u=Math.floor(s/D);s-=u*D;const o=Math.floor(s/1e3);return{days:l,hours:m,minutes:u,seconds:o}}const y="var(--color-highlight)",N="0 0 18px hsl(var(--zf-accent-hue, 242) 92% 70% / 0.45)",c=n=>String(n).padStart(2,"0");function T({config:n}){const s=r.useRef(null),l=r.useRef(null),m=r.useRef(null),u=r.useRef(null),o=n.target.trim(),a=r.useMemo(()=>{if(!o)return null;const e=new Date(o).getTime();return Number.isFinite(e)?e:NaN},[o]),i=a!=null&&!Number.isNaN(a),[p,x]=r.useState(i&&a<=Date.now());r.useEffect(()=>{if(!i)return;const e=a-Date.now();if(e<=0){x(!0);return}x(!1);const w=window.setTimeout(()=>x(!0),e);return()=>window.clearTimeout(w)},[i,a]);const d=()=>i?a-Date.now():0;g({ref:s,getRemainingMs:d,format:e=>String(f(e).days)}),g({ref:l,getRemainingMs:d,format:e=>c(f(e).hours)}),g({ref:m,getRemainingMs:d,format:e=>c(f(e).minutes)}),g({ref:u,getRemainingMs:d,format:e=>c(f(e).seconds)});const R=r.useMemo(()=>i?new Intl.DateTimeFormat(void 0,{dateStyle:"medium",timeStyle:"short"}).format(new Date(a)):"",[i,a]);if(!o)return t.jsx(S,{children:"set a target date & time"});if(!i)return t.jsxs(S,{children:["invalid target date: ",o]});const h=f(d()),k=[[s,String(h.days),"days"],[l,c(h.hours),"hrs"],[m,c(h.minutes),"min"],[u,c(h.seconds),"sec"]];return t.jsxs("div",{className:"flex h-full w-full flex-col items-center justify-center gap-2 text-center [container-type:size]",children:[n.label&&t.jsxs("div",{className:"caption text-soft inline-flex items-center gap-1.5 uppercase tracking-[0.18em]",children:[t.jsx("span",{"aria-hidden":!0,className:"inline-block h-1 w-1 rounded-full",style:{background:y,boxShadow:N}}),n.label]}),t.jsx("div",{className:"flex items-start justify-center gap-[0.5em] leading-none tabular-nums",style:{fontSize:"clamp(0.9rem, 20cqmin, 2.8rem)"},children:k.map(([e,w,j],M)=>t.jsxs("div",{className:"flex flex-col items-center gap-[0.25em]",children:[t.jsx("span",{ref:e,suppressHydrationWarning:!0,className:"text-strong font-dmsans font-extrabold tracking-[-0.01em]",style:{fontSize:"1em",color:M===3&&!p?y:void 0,textShadow:M===3&&!p?N:void 0},children:w}),t.jsx("span",{className:"text-soft uppercase tracking-[0.12em]",style:{fontSize:"0.26em"},children:j})]},j))}),p?t.jsx("div",{className:"caption font-semibold uppercase tracking-[0.2em]",style:{color:y,textShadow:N},children:"reached"}):n.showTarget&&R&&t.jsx("div",{className:"caption text-soft tabular-nums",children:R})]})}const q=z({...F,component:T});export{q as countdownFrame};
@@ -1 +1 @@
1
- function ei(t){var n=0,e=t.children,r=e&&e.length;if(!r)n=1;else for(;--r>=0;)n+=e[r].value;t.value=n}function ri(){return this.eachAfter(ei)}function ii(t,n){let e=-1;for(const r of this)t.call(n,r,++e,this);return this}function ui(t,n){for(var e=this,r=[e],i,u,o=-1;e=r.pop();)if(t.call(n,e,++o,this),i=e.children)for(u=i.length-1;u>=0;--u)r.push(i[u]);return this}function oi(t,n){for(var e=this,r=[e],i=[],u,o,a,f=-1;e=r.pop();)if(i.push(e),u=e.children)for(o=0,a=u.length;o<a;++o)r.push(u[o]);for(;e=i.pop();)t.call(n,e,++f,this);return this}function ai(t,n){let e=-1;for(const r of this)if(t.call(n,r,++e,this))return r}function si(t){return this.eachAfter(function(n){for(var e=+t(n.data)||0,r=n.children,i=r&&r.length;--i>=0;)e+=r[i].value;n.value=e})}function fi(t){return this.eachBefore(function(n){n.children&&n.children.sort(t)})}function ci(t){for(var n=this,e=li(n,t),r=[n];n!==e;)n=n.parent,r.push(n);for(var i=r.length;t!==e;)r.splice(i,0,t),t=t.parent;return r}function li(t,n){if(t===n)return t;var e=t.ancestors(),r=n.ancestors(),i=null;for(t=e.pop(),n=r.pop();t===n;)i=t,t=e.pop(),n=r.pop();return i}function hi(){for(var t=this,n=[t];t=t.parent;)n.push(t);return n}function gi(){return Array.from(this)}function pi(){var t=[];return this.eachBefore(function(n){n.children||t.push(n)}),t}function di(){var t=this,n=[];return t.each(function(e){e!==t&&n.push({source:e.parent,target:e})}),n}function*mi(){var t=this,n,e=[t],r,i,u;do for(n=e.reverse(),e=[];t=n.pop();)if(yield t,r=t.children)for(i=0,u=r.length;i<u;++i)e.push(r[i]);while(e.length)}function hr(t,n){t instanceof Map?(t=[void 0,t],n===void 0&&(n=vi)):n===void 0&&(n=_i);for(var e=new pn(t),r,i=[e],u,o,a,f;r=i.pop();)if((o=n(r.data))&&(f=(o=Array.from(o)).length))for(r.children=o,a=f-1;a>=0;--a)i.push(u=o[a]=new pn(o[a])),u.parent=r,u.depth=r.depth+1;return e.eachBefore(xi)}function yi(){return hr(this).eachBefore(wi)}function _i(t){return t.children}function vi(t){return Array.isArray(t)?t[1]:null}function wi(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function xi(t){var n=0;do t.height=n;while((t=t.parent)&&t.height<++n)}function pn(t){this.data=t,this.depth=this.height=0,this.parent=null}pn.prototype=hr.prototype={constructor:pn,count:ri,each:ii,eachAfter:oi,eachBefore:ui,find:ai,sum:si,sort:fi,path:ci,ancestors:hi,descendants:gi,leaves:pi,links:di,copy:yi,[Symbol.iterator]:mi};function Mi(t){if(typeof t!="function")throw new Error;return t}function Pt(){return 0}function Ot(t){return function(){return t}}function Ti(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function bi(t,n,e,r,i){for(var u=t.children,o,a=-1,f=u.length,s=t.value&&(r-n)/t.value;++a<f;)o=u[a],o.y0=e,o.y1=i,o.x0=n,o.x1=n+=o.value*s}function ki(t,n,e,r,i){for(var u=t.children,o,a=-1,f=u.length,s=t.value&&(i-e)/t.value;++a<f;)o=u[a],o.x0=n,o.x1=r,o.y0=e,o.y1=e+=o.value*s}var Ci=(1+Math.sqrt(5))/2;function Ai(t,n,e,r,i,u){for(var o=[],a=n.children,f,s,l=0,h=0,c=a.length,g,d,y=n.value,_,w,k,b,M,S,m;l<c;){g=i-e,d=u-r;do _=a[h++].value;while(!_&&h<c);for(w=k=_,S=Math.max(d/g,g/d)/(y*t),m=_*_*S,M=Math.max(k/m,m/w);h<c;++h){if(_+=s=a[h].value,s<w&&(w=s),s>k&&(k=s),m=_*_*S,b=Math.max(k/m,m/w),b>M){_-=s;break}M=b}o.push(f={value:_,dice:g<d,children:a.slice(l,h)}),f.dice?bi(f,e,r,i,y?r+=d*_/y:u):ki(f,e,r,y?e+=g*_/y:i,u),y-=_,l=h}return o}const Si=(function t(n){function e(r,i,u,o,a){Ai(n,r,i,u,o,a)}return e.ratio=function(r){return t((r=+r)>1?r:1)},e})(Ci);function mc(){var t=Si,n=!1,e=1,r=1,i=[0],u=Pt,o=Pt,a=Pt,f=Pt,s=Pt;function l(c){return c.x0=c.y0=0,c.x1=e,c.y1=r,c.eachBefore(h),i=[0],n&&c.eachBefore(Ti),c}function h(c){var g=i[c.depth],d=c.x0+g,y=c.y0+g,_=c.x1-g,w=c.y1-g;_<d&&(d=_=(d+_)/2),w<y&&(y=w=(y+w)/2),c.x0=d,c.y0=y,c.x1=_,c.y1=w,c.children&&(g=i[c.depth+1]=u(c)/2,d+=s(c)-g,y+=o(c)-g,_-=a(c)-g,w-=f(c)-g,_<d&&(d=_=(d+_)/2),w<y&&(y=w=(y+w)/2),t(c,d,y,_,w))}return l.round=function(c){return arguments.length?(n=!!c,l):n},l.size=function(c){return arguments.length?(e=+c[0],r=+c[1],l):[e,r]},l.tile=function(c){return arguments.length?(t=Mi(c),l):t},l.padding=function(c){return arguments.length?l.paddingInner(c).paddingOuter(c):l.paddingInner()},l.paddingInner=function(c){return arguments.length?(u=typeof c=="function"?c:Ot(+c),l):u},l.paddingOuter=function(c){return arguments.length?l.paddingTop(c).paddingRight(c).paddingBottom(c).paddingLeft(c):l.paddingTop()},l.paddingTop=function(c){return arguments.length?(o=typeof c=="function"?c:Ot(+c),l):o},l.paddingRight=function(c){return arguments.length?(a=typeof c=="function"?c:Ot(+c),l):a},l.paddingBottom=function(c){return arguments.length?(f=typeof c=="function"?c:Ot(+c),l):f},l.paddingLeft=function(c){return arguments.length?(s=typeof c=="function"?c:Ot(+c),l):s},l}function fn(t,n){return t==null||n==null?NaN:t<n?-1:t>n?1:t>=n?0:NaN}function Ni(t,n){return t==null||n==null?NaN:n<t?-1:n>t?1:n>=t?0:NaN}function ue(t){let n,e,r;t.length!==2?(n=fn,e=(a,f)=>fn(t(a),f),r=(a,f)=>t(a)-f):(n=t===fn||t===Ni?t:$i,e=t,r=t);function i(a,f,s=0,l=a.length){if(s<l){if(n(f,f)!==0)return l;do{const h=s+l>>>1;e(a[h],f)<0?s=h+1:l=h}while(s<l)}return s}function u(a,f,s=0,l=a.length){if(s<l){if(n(f,f)!==0)return l;do{const h=s+l>>>1;e(a[h],f)<=0?s=h+1:l=h}while(s<l)}return s}function o(a,f,s=0,l=a.length){const h=i(a,f,s,l-1);return h>s&&r(a[h-1],f)>-r(a[h],f)?h-1:h}return{left:i,center:o,right:u}}function $i(){return 0}function Di(t){return t===null?NaN:+t}const Ui=ue(fn),Fi=Ui.right;ue(Di).center;function yc(t,n){let e,r;if(n===void 0)for(const i of t)i!=null&&(e===void 0?i>=i&&(e=r=i):(e>i&&(e=i),r<i&&(r=i)));else{let i=-1;for(let u of t)(u=n(u,++i,t))!=null&&(e===void 0?u>=u&&(e=r=u):(e>u&&(e=u),r<u&&(r=u)))}return[e,r]}class ke extends Map{constructor(n,e=Yi){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(const[r,i]of n)this.set(r,i)}get(n){return super.get(Ce(this,n))}has(n){return super.has(Ce(this,n))}set(n,e){return super.set(Ei(this,n),e)}delete(n){return super.delete(Ri(this,n))}}function Ce({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):e}function Ei({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):(t.set(r,e),e)}function Ri({_intern:t,_key:n},e){const r=n(e);return t.has(r)&&(e=t.get(r),t.delete(r)),e}function Yi(t){return t!==null&&typeof t=="object"?t.valueOf():t}const Hi=Math.sqrt(50),Ii=Math.sqrt(10),Li=Math.sqrt(2);function dn(t,n,e){const r=(n-t)/Math.max(0,e),i=Math.floor(Math.log10(r)),u=r/Math.pow(10,i),o=u>=Hi?10:u>=Ii?5:u>=Li?2:1;let a,f,s;return i<0?(s=Math.pow(10,-i)/o,a=Math.round(t*s),f=Math.round(n*s),a/s<t&&++a,f/s>n&&--f,s=-s):(s=Math.pow(10,i)*o,a=Math.round(t/s),f=Math.round(n/s),a*s<t&&++a,f*s>n&&--f),f<a&&.5<=e&&e<2?dn(t,n,e*2):[a,f,s]}function Pi(t,n,e){if(n=+n,t=+t,e=+e,!(e>0))return[];if(t===n)return[t];const r=n<t,[i,u,o]=r?dn(n,t,e):dn(t,n,e);if(!(u>=i))return[];const a=u-i+1,f=new Array(a);if(r)if(o<0)for(let s=0;s<a;++s)f[s]=(u-s)/-o;else for(let s=0;s<a;++s)f[s]=(u-s)*o;else if(o<0)for(let s=0;s<a;++s)f[s]=(i+s)/-o;else for(let s=0;s<a;++s)f[s]=(i+s)*o;return f}function zn(t,n,e){return n=+n,t=+t,e=+e,dn(t,n,e)[2]}function Bn(t,n,e){n=+n,t=+t,e=+e;const r=n<t,i=r?zn(n,t,e):zn(t,n,e);return(r?-1:1)*(i<0?1/-i:i)}function _c(t,n){let e;for(const r of t)r!=null&&(e<r||e===void 0&&r>=r)&&(e=r);return e}function vc(t,n){let e;for(const r of t)r!=null&&(e>r||e===void 0&&r>=r)&&(e=r);return e}function Oi(t){return t}var Rn=1,Yn=2,Zn=3,zt=4,Ae=1e-6;function qi(t){return"translate("+t+",0)"}function Wi(t){return"translate(0,"+t+")"}function Vi(t){return n=>+t(n)}function Xi(t,n){return n=Math.max(0,t.bandwidth()-n*2)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function zi(){return!this.__axis}function gr(t,n){var e=[],r=null,i=null,u=6,o=6,a=3,f=typeof window<"u"&&window.devicePixelRatio>1?0:.5,s=t===Rn||t===zt?-1:1,l=t===zt||t===Yn?"x":"y",h=t===Rn||t===Zn?qi:Wi;function c(g){var d=r??(n.ticks?n.ticks.apply(n,e):n.domain()),y=i??(n.tickFormat?n.tickFormat.apply(n,e):Oi),_=Math.max(u,0)+a,w=n.range(),k=+w[0]+f,b=+w[w.length-1]+f,M=(n.bandwidth?Xi:Vi)(n.copy(),f),S=g.selection?g.selection():g,m=S.selectAll(".domain").data([null]),N=S.selectAll(".tick").data(d,n).order(),Y=N.exit(),I=N.enter().append("g").attr("class","tick"),R=N.select("line"),E=N.select("text");m=m.merge(m.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),N=N.merge(I),R=R.merge(I.append("line").attr("stroke","currentColor").attr(l+"2",s*u)),E=E.merge(I.append("text").attr("fill","currentColor").attr(l,s*_).attr("dy",t===Rn?"0em":t===Zn?"0.71em":"0.32em")),g!==S&&(m=m.transition(g),N=N.transition(g),R=R.transition(g),E=E.transition(g),Y=Y.transition(g).attr("opacity",Ae).attr("transform",function(x){return isFinite(x=M(x))?h(x+f):this.getAttribute("transform")}),I.attr("opacity",Ae).attr("transform",function(x){var T=this.parentNode.__axis;return h((T&&isFinite(T=T(x))?T:M(x))+f)})),Y.remove(),m.attr("d",t===zt||t===Yn?o?"M"+s*o+","+k+"H"+f+"V"+b+"H"+s*o:"M"+f+","+k+"V"+b:o?"M"+k+","+s*o+"V"+f+"H"+b+"V"+s*o:"M"+k+","+f+"H"+b),N.attr("opacity",1).attr("transform",function(x){return h(M(x)+f)}),R.attr(l+"2",s*u),E.attr(l,s*_).text(y),S.filter(zi).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===Yn?"start":t===zt?"end":"middle"),S.each(function(){this.__axis=M})}return c.scale=function(g){return arguments.length?(n=g,c):n},c.ticks=function(){return e=Array.from(arguments),c},c.tickArguments=function(g){return arguments.length?(e=g==null?[]:Array.from(g),c):e.slice()},c.tickValues=function(g){return arguments.length?(r=g==null?null:Array.from(g),c):r&&r.slice()},c.tickFormat=function(g){return arguments.length?(i=g,c):i},c.tickSize=function(g){return arguments.length?(u=o=+g,c):u},c.tickSizeInner=function(g){return arguments.length?(u=+g,c):u},c.tickSizeOuter=function(g){return arguments.length?(o=+g,c):o},c.tickPadding=function(g){return arguments.length?(a=+g,c):a},c.offset=function(g){return arguments.length?(f=+g,c):f},c}function wc(t){return gr(Zn,t)}function xc(t){return gr(zt,t)}var Bi={value:()=>{}};function pr(){for(var t=0,n=arguments.length,e={},r;t<n;++t){if(!(r=arguments[t]+"")||r in e||/[\s.]/.test(r))throw new Error("illegal type: "+r);e[r]=[]}return new cn(e)}function cn(t){this._=t}function Zi(t,n){return t.trim().split(/^|\s+/).map(function(e){var r="",i=e.indexOf(".");if(i>=0&&(r=e.slice(i+1),e=e.slice(0,i)),e&&!n.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:r}})}cn.prototype=pr.prototype={constructor:cn,on:function(t,n){var e=this._,r=Zi(t+"",e),i,u=-1,o=r.length;if(arguments.length<2){for(;++u<o;)if((i=(t=r[u]).type)&&(i=Gi(e[i],t.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++u<o;)if(i=(t=r[u]).type)e[i]=Se(e[i],t.name,n);else if(n==null)for(i in e)e[i]=Se(e[i],t.name,null);return this},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new cn(t)},call:function(t,n){if((i=arguments.length-2)>0)for(var e=new Array(i),r=0,i,u;r<i;++r)e[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(u=this._[t],r=0,i=u.length;r<i;++r)u[r].value.apply(n,e)},apply:function(t,n,e){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,u=r.length;i<u;++i)r[i].value.apply(n,e)}};function Gi(t,n){for(var e=0,r=t.length,i;e<r;++e)if((i=t[e]).name===n)return i.value}function Se(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=Bi,t=t.slice(0,r).concat(t.slice(r+1));break}return e!=null&&t.push({name:n,value:e}),t}var Gn="http://www.w3.org/1999/xhtml";const Ne={svg:"http://www.w3.org/2000/svg",xhtml:Gn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Dn(t){var n=t+="",e=n.indexOf(":");return e>=0&&(n=t.slice(0,e))!=="xmlns"&&(t=t.slice(e+1)),Ne.hasOwnProperty(n)?{space:Ne[n],local:t}:t}function Qi(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===Gn&&n.documentElement.namespaceURI===Gn?n.createElement(t):n.createElementNS(e,t)}}function Ji(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function dr(t){var n=Dn(t);return(n.local?Ji:Qi)(n)}function Ki(){}function oe(t){return t==null?Ki:function(){return this.querySelector(t)}}function ji(t){typeof t!="function"&&(t=oe(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=new Array(o),f,s,l=0;l<o;++l)(f=u[l])&&(s=t.call(f,f.__data__,l,u))&&("__data__"in f&&(s.__data__=f.__data__),a[l]=s);return new Q(r,this._parents)}function tu(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function nu(){return[]}function mr(t){return t==null?nu:function(){return this.querySelectorAll(t)}}function eu(t){return function(){return tu(t.apply(this,arguments))}}function ru(t){typeof t=="function"?t=eu(t):t=mr(t);for(var n=this._groups,e=n.length,r=[],i=[],u=0;u<e;++u)for(var o=n[u],a=o.length,f,s=0;s<a;++s)(f=o[s])&&(r.push(t.call(f,f.__data__,s,o)),i.push(f));return new Q(r,i)}function yr(t){return function(){return this.matches(t)}}function _r(t){return function(n){return n.matches(t)}}var iu=Array.prototype.find;function uu(t){return function(){return iu.call(this.children,t)}}function ou(){return this.firstElementChild}function au(t){return this.select(t==null?ou:uu(typeof t=="function"?t:_r(t)))}var su=Array.prototype.filter;function fu(){return Array.from(this.children)}function cu(t){return function(){return su.call(this.children,t)}}function lu(t){return this.selectAll(t==null?fu:cu(typeof t=="function"?t:_r(t)))}function hu(t){typeof t!="function"&&(t=yr(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=[],f,s=0;s<o;++s)(f=u[s])&&t.call(f,f.__data__,s,u)&&a.push(f);return new Q(r,this._parents)}function vr(t){return new Array(t.length)}function gu(){return new Q(this._enter||this._groups.map(vr),this._parents)}function mn(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}mn.prototype={constructor:mn,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function pu(t){return function(){return t}}function du(t,n,e,r,i,u){for(var o=0,a,f=n.length,s=u.length;o<s;++o)(a=n[o])?(a.__data__=u[o],r[o]=a):e[o]=new mn(t,u[o]);for(;o<f;++o)(a=n[o])&&(i[o]=a)}function mu(t,n,e,r,i,u,o){var a,f,s=new Map,l=n.length,h=u.length,c=new Array(l),g;for(a=0;a<l;++a)(f=n[a])&&(c[a]=g=o.call(f,f.__data__,a,n)+"",s.has(g)?i[a]=f:s.set(g,f));for(a=0;a<h;++a)g=o.call(t,u[a],a,u)+"",(f=s.get(g))?(r[a]=f,f.__data__=u[a],s.delete(g)):e[a]=new mn(t,u[a]);for(a=0;a<l;++a)(f=n[a])&&s.get(c[a])===f&&(i[a]=f)}function yu(t){return t.__data__}function _u(t,n){if(!arguments.length)return Array.from(this,yu);var e=n?mu:du,r=this._parents,i=this._groups;typeof t!="function"&&(t=pu(t));for(var u=i.length,o=new Array(u),a=new Array(u),f=new Array(u),s=0;s<u;++s){var l=r[s],h=i[s],c=h.length,g=vu(t.call(l,l&&l.__data__,s,r)),d=g.length,y=a[s]=new Array(d),_=o[s]=new Array(d),w=f[s]=new Array(c);e(l,h,y,_,w,g,n);for(var k=0,b=0,M,S;k<d;++k)if(M=y[k]){for(k>=b&&(b=k+1);!(S=_[b])&&++b<d;);M._next=S||null}}return o=new Q(o,r),o._enter=a,o._exit=f,o}function vu(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function wu(){return new Q(this._exit||this._groups.map(vr),this._parents)}function xu(t,n,e){var r=this.enter(),i=this,u=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),n!=null&&(i=n(i),i&&(i=i.selection())),e==null?u.remove():e(u),r&&i?r.merge(i).order():i}function Mu(t){for(var n=t.selection?t.selection():t,e=this._groups,r=n._groups,i=e.length,u=r.length,o=Math.min(i,u),a=new Array(i),f=0;f<o;++f)for(var s=e[f],l=r[f],h=s.length,c=a[f]=new Array(h),g,d=0;d<h;++d)(g=s[d]||l[d])&&(c[d]=g);for(;f<i;++f)a[f]=e[f];return new Q(a,this._parents)}function Tu(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r=t[n],i=r.length-1,u=r[i],o;--i>=0;)(o=r[i])&&(u&&o.compareDocumentPosition(u)^4&&u.parentNode.insertBefore(o,u),u=o);return this}function bu(t){t||(t=ku);function n(h,c){return h&&c?t(h.__data__,c.__data__):!h-!c}for(var e=this._groups,r=e.length,i=new Array(r),u=0;u<r;++u){for(var o=e[u],a=o.length,f=i[u]=new Array(a),s,l=0;l<a;++l)(s=o[l])&&(f[l]=s);f.sort(n)}return new Q(i,this._parents).order()}function ku(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function Cu(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function Au(){return Array.from(this)}function Su(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,u=r.length;i<u;++i){var o=r[i];if(o)return o}return null}function Nu(){let t=0;for(const n of this)++t;return t}function $u(){return!this.node()}function Du(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i=n[e],u=0,o=i.length,a;u<o;++u)(a=i[u])&&t.call(a,a.__data__,u,i);return this}function Uu(t){return function(){this.removeAttribute(t)}}function Fu(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Eu(t,n){return function(){this.setAttribute(t,n)}}function Ru(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function Yu(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttribute(t):this.setAttribute(t,e)}}function Hu(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function Iu(t,n){var e=Dn(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((n==null?e.local?Fu:Uu:typeof n=="function"?e.local?Hu:Yu:e.local?Ru:Eu)(e,n))}function wr(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Lu(t){return function(){this.style.removeProperty(t)}}function Pu(t,n,e){return function(){this.style.setProperty(t,n,e)}}function Ou(t,n,e){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function qu(t,n,e){return arguments.length>1?this.each((n==null?Lu:typeof n=="function"?Ou:Pu)(t,n,e??"")):$t(this.node(),t)}function $t(t,n){return t.style.getPropertyValue(n)||wr(t).getComputedStyle(t,null).getPropertyValue(n)}function Wu(t){return function(){delete this[t]}}function Vu(t,n){return function(){this[t]=n}}function Xu(t,n){return function(){var e=n.apply(this,arguments);e==null?delete this[t]:this[t]=e}}function zu(t,n){return arguments.length>1?this.each((n==null?Wu:typeof n=="function"?Xu:Vu)(t,n)):this.node()[t]}function xr(t){return t.trim().split(/^|\s+/)}function ae(t){return t.classList||new Mr(t)}function Mr(t){this._node=t,this._names=xr(t.getAttribute("class")||"")}Mr.prototype={add:function(t){var n=this._names.indexOf(t);n<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function Tr(t,n){for(var e=ae(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function br(t,n){for(var e=ae(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function Bu(t){return function(){Tr(this,t)}}function Zu(t){return function(){br(this,t)}}function Gu(t,n){return function(){(n.apply(this,arguments)?Tr:br)(this,t)}}function Qu(t,n){var e=xr(t+"");if(arguments.length<2){for(var r=ae(this.node()),i=-1,u=e.length;++i<u;)if(!r.contains(e[i]))return!1;return!0}return this.each((typeof n=="function"?Gu:n?Bu:Zu)(e,n))}function Ju(){this.textContent=""}function Ku(t){return function(){this.textContent=t}}function ju(t){return function(){var n=t.apply(this,arguments);this.textContent=n??""}}function to(t){return arguments.length?this.each(t==null?Ju:(typeof t=="function"?ju:Ku)(t)):this.node().textContent}function no(){this.innerHTML=""}function eo(t){return function(){this.innerHTML=t}}function ro(t){return function(){var n=t.apply(this,arguments);this.innerHTML=n??""}}function io(t){return arguments.length?this.each(t==null?no:(typeof t=="function"?ro:eo)(t)):this.node().innerHTML}function uo(){this.nextSibling&&this.parentNode.appendChild(this)}function oo(){return this.each(uo)}function ao(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function so(){return this.each(ao)}function fo(t){var n=typeof t=="function"?t:dr(t);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function co(){return null}function lo(t,n){var e=typeof t=="function"?t:dr(t),r=n==null?co:typeof n=="function"?n:oe(n);return this.select(function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)})}function ho(){var t=this.parentNode;t&&t.removeChild(this)}function go(){return this.each(ho)}function po(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function mo(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function yo(t){return this.select(t?mo:po)}function _o(t){return arguments.length?this.property("__data__",t):this.node().__data__}function vo(t){return function(n){t.call(this,n,this.__data__)}}function wo(t){return t.trim().split(/^|\s+/).map(function(n){var e="",r=n.indexOf(".");return r>=0&&(e=n.slice(r+1),n=n.slice(0,r)),{type:n,name:e}})}function xo(t){return function(){var n=this.__on;if(n){for(var e=0,r=-1,i=n.length,u;e<i;++e)u=n[e],(!t.type||u.type===t.type)&&u.name===t.name?this.removeEventListener(u.type,u.listener,u.options):n[++r]=u;++r?n.length=r:delete this.__on}}}function Mo(t,n,e){return function(){var r=this.__on,i,u=vo(n);if(r){for(var o=0,a=r.length;o<a;++o)if((i=r[o]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=u,i.options=e),i.value=n;return}}this.addEventListener(t.type,u,e),i={type:t.type,name:t.name,value:n,listener:u,options:e},r?r.push(i):this.__on=[i]}}function To(t,n,e){var r=wo(t+""),i,u=r.length,o;if(arguments.length<2){var a=this.node().__on;if(a){for(var f=0,s=a.length,l;f<s;++f)for(i=0,l=a[f];i<u;++i)if((o=r[i]).type===l.type&&o.name===l.name)return l.value}return}for(a=n?Mo:xo,i=0;i<u;++i)this.each(a(r[i],n,e));return this}function kr(t,n,e){var r=wr(t),i=r.CustomEvent;typeof i=="function"?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function bo(t,n){return function(){return kr(this,t,n)}}function ko(t,n){return function(){return kr(this,t,n.apply(this,arguments))}}function Co(t,n){return this.each((typeof n=="function"?ko:bo)(t,n))}function*Ao(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,u=r.length,o;i<u;++i)(o=r[i])&&(yield o)}var Cr=[null];function Q(t,n){this._groups=t,this._parents=n}function tn(){return new Q([[document.documentElement]],Cr)}function So(){return this}Q.prototype=tn.prototype={constructor:Q,select:ji,selectAll:ru,selectChild:au,selectChildren:lu,filter:hu,data:_u,enter:gu,exit:wu,join:xu,merge:Mu,selection:So,order:Tu,sort:bu,call:Cu,nodes:Au,node:Su,size:Nu,empty:$u,each:Du,attr:Iu,style:qu,property:zu,classed:Qu,text:to,html:io,raise:oo,lower:so,append:fo,insert:lo,remove:go,clone:yo,datum:_o,on:To,dispatch:Co,[Symbol.iterator]:Ao};function Mc(t){return typeof t=="string"?new Q([[document.querySelector(t)]],[document.documentElement]):new Q([[t]],Cr)}function No(t){let n;for(;n=t.sourceEvent;)t=n;return t}function Tc(t,n){if(t=No(t),n===void 0&&(n=t.currentTarget),n){var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}}return[t.pageX,t.pageY]}function se(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Ar(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function nn(){}var Qt=.7,yn=1/Qt,Nt="\\s*([+-]?\\d+)\\s*",Jt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",it="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",$o=/^#([0-9a-f]{3,8})$/,Do=new RegExp(`^rgb\\(${Nt},${Nt},${Nt}\\)$`),Uo=new RegExp(`^rgb\\(${it},${it},${it}\\)$`),Fo=new RegExp(`^rgba\\(${Nt},${Nt},${Nt},${Jt}\\)$`),Eo=new RegExp(`^rgba\\(${it},${it},${it},${Jt}\\)$`),Ro=new RegExp(`^hsl\\(${Jt},${it},${it}\\)$`),Yo=new RegExp(`^hsla\\(${Jt},${it},${it},${Jt}\\)$`),$e={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};se(nn,_t,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:De,formatHex:De,formatHex8:Ho,formatHsl:Io,formatRgb:Ue,toString:Ue});function De(){return this.rgb().formatHex()}function Ho(){return this.rgb().formatHex8()}function Io(){return Sr(this).formatHsl()}function Ue(){return this.rgb().formatRgb()}function _t(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=$o.exec(t))?(e=n[1].length,n=parseInt(n[1],16),e===6?Fe(n):e===3?new X(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):e===8?rn(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):e===4?rn(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=Do.exec(t))?new X(n[1],n[2],n[3],1):(n=Uo.exec(t))?new X(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=Fo.exec(t))?rn(n[1],n[2],n[3],n[4]):(n=Eo.exec(t))?rn(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=Ro.exec(t))?Ye(n[1],n[2]/100,n[3]/100,1):(n=Yo.exec(t))?Ye(n[1],n[2]/100,n[3]/100,n[4]):$e.hasOwnProperty(t)?Fe($e[t]):t==="transparent"?new X(NaN,NaN,NaN,0):null}function Fe(t){return new X(t>>16&255,t>>8&255,t&255,1)}function rn(t,n,e,r){return r<=0&&(t=n=e=NaN),new X(t,n,e,r)}function Lo(t){return t instanceof nn||(t=_t(t)),t?(t=t.rgb(),new X(t.r,t.g,t.b,t.opacity)):new X}function Qn(t,n,e,r){return arguments.length===1?Lo(t):new X(t,n,e,r??1)}function X(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}se(X,Qn,Ar(nn,{brighter(t){return t=t==null?yn:Math.pow(yn,t),new X(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Qt:Math.pow(Qt,t),new X(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new X(yt(this.r),yt(this.g),yt(this.b),_n(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:Ee,formatHex:Ee,formatHex8:Po,formatRgb:Re,toString:Re}));function Ee(){return`#${mt(this.r)}${mt(this.g)}${mt(this.b)}`}function Po(){return`#${mt(this.r)}${mt(this.g)}${mt(this.b)}${mt((isNaN(this.opacity)?1:this.opacity)*255)}`}function Re(){const t=_n(this.opacity);return`${t===1?"rgb(":"rgba("}${yt(this.r)}, ${yt(this.g)}, ${yt(this.b)}${t===1?")":`, ${t})`}`}function _n(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function yt(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function mt(t){return t=yt(t),(t<16?"0":"")+t.toString(16)}function Ye(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new nt(t,n,e,r)}function Sr(t){if(t instanceof nt)return new nt(t.h,t.s,t.l,t.opacity);if(t instanceof nn||(t=_t(t)),!t)return new nt;if(t instanceof nt)return t;t=t.rgb();var n=t.r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),u=Math.max(n,e,r),o=NaN,a=u-i,f=(u+i)/2;return a?(n===u?o=(e-r)/a+(e<r)*6:e===u?o=(r-n)/a+2:o=(n-e)/a+4,a/=f<.5?u+i:2-u-i,o*=60):a=f>0&&f<1?0:o,new nt(o,a,f,t.opacity)}function Oo(t,n,e,r){return arguments.length===1?Sr(t):new nt(t,n,e,r??1)}function nt(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}se(nt,Oo,Ar(nn,{brighter(t){return t=t==null?yn:Math.pow(yn,t),new nt(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Qt:Math.pow(Qt,t),new nt(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new X(Hn(t>=240?t-240:t+120,i,r),Hn(t,i,r),Hn(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new nt(He(this.h),un(this.s),un(this.l),_n(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=_n(this.opacity);return`${t===1?"hsl(":"hsla("}${He(this.h)}, ${un(this.s)*100}%, ${un(this.l)*100}%${t===1?")":`, ${t})`}`}}));function He(t){return t=(t||0)%360,t<0?t+360:t}function un(t){return Math.max(0,Math.min(1,t||0))}function Hn(t,n,e){return(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)*255}const fe=t=>()=>t;function qo(t,n){return function(e){return t+e*n}}function Wo(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}function Vo(t){return(t=+t)==1?Nr:function(n,e){return e-n?Wo(n,e,t):fe(isNaN(n)?e:n)}}function Nr(t,n){var e=n-t;return e?qo(t,e):fe(isNaN(t)?n:t)}const vn=(function t(n){var e=Vo(n);function r(i,u){var o=e((i=Qn(i)).r,(u=Qn(u)).r),a=e(i.g,u.g),f=e(i.b,u.b),s=Nr(i.opacity,u.opacity);return function(l){return i.r=o(l),i.g=a(l),i.b=f(l),i.opacity=s(l),i+""}}return r.gamma=t,r})(1);function Xo(t,n){n||(n=[]);var e=t?Math.min(n.length,t.length):0,r=n.slice(),i;return function(u){for(i=0;i<e;++i)r[i]=t[i]*(1-u)+n[i]*u;return r}}function zo(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Bo(t,n){var e=n?n.length:0,r=t?Math.min(e,t.length):0,i=new Array(r),u=new Array(e),o;for(o=0;o<r;++o)i[o]=ce(t[o],n[o]);for(;o<e;++o)u[o]=n[o];return function(a){for(o=0;o<r;++o)u[o]=i[o](a);return u}}function Zo(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function tt(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function Go(t,n){var e={},r={},i;(t===null||typeof t!="object")&&(t={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in t?e[i]=ce(t[i],n[i]):r[i]=n[i];return function(u){for(i in e)r[i]=e[i](u);return r}}var Jn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,In=new RegExp(Jn.source,"g");function Qo(t){return function(){return t}}function Jo(t){return function(n){return t(n)+""}}function $r(t,n){var e=Jn.lastIndex=In.lastIndex=0,r,i,u,o=-1,a=[],f=[];for(t=t+"",n=n+"";(r=Jn.exec(t))&&(i=In.exec(n));)(u=i.index)>e&&(u=n.slice(e,u),a[o]?a[o]+=u:a[++o]=u),(r=r[0])===(i=i[0])?a[o]?a[o]+=i:a[++o]=i:(a[++o]=null,f.push({i:o,x:tt(r,i)})),e=In.lastIndex;return e<n.length&&(u=n.slice(e),a[o]?a[o]+=u:a[++o]=u),a.length<2?f[0]?Jo(f[0].x):Qo(n):(n=f.length,function(s){for(var l=0,h;l<n;++l)a[(h=f[l]).i]=h.x(s);return a.join("")})}function ce(t,n){var e=typeof n,r;return n==null||e==="boolean"?fe(n):(e==="number"?tt:e==="string"?(r=_t(n))?(n=r,vn):$r:n instanceof _t?vn:n instanceof Date?Zo:zo(n)?Xo:Array.isArray(n)?Bo:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Go:tt)(t,n)}function Ko(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}var Ie=180/Math.PI,Kn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Dr(t,n,e,r,i,u){var o,a,f;return(o=Math.sqrt(t*t+n*n))&&(t/=o,n/=o),(f=t*e+n*r)&&(e-=t*f,r-=n*f),(a=Math.sqrt(e*e+r*r))&&(e/=a,r/=a,f/=a),t*r<n*e&&(t=-t,n=-n,f=-f,o=-o),{translateX:i,translateY:u,rotate:Math.atan2(n,t)*Ie,skewX:Math.atan(f)*Ie,scaleX:o,scaleY:a}}var on;function jo(t){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?Kn:Dr(n.a,n.b,n.c,n.d,n.e,n.f)}function ta(t){return t==null||(on||(on=document.createElementNS("http://www.w3.org/2000/svg","g")),on.setAttribute("transform",t),!(t=on.transform.baseVal.consolidate()))?Kn:(t=t.matrix,Dr(t.a,t.b,t.c,t.d,t.e,t.f))}function Ur(t,n,e,r){function i(s){return s.length?s.pop()+" ":""}function u(s,l,h,c,g,d){if(s!==h||l!==c){var y=g.push("translate(",null,n,null,e);d.push({i:y-4,x:tt(s,h)},{i:y-2,x:tt(l,c)})}else(h||c)&&g.push("translate("+h+n+c+e)}function o(s,l,h,c){s!==l?(s-l>180?l+=360:l-s>180&&(s+=360),c.push({i:h.push(i(h)+"rotate(",null,r)-2,x:tt(s,l)})):l&&h.push(i(h)+"rotate("+l+r)}function a(s,l,h,c){s!==l?c.push({i:h.push(i(h)+"skewX(",null,r)-2,x:tt(s,l)}):l&&h.push(i(h)+"skewX("+l+r)}function f(s,l,h,c,g,d){if(s!==h||l!==c){var y=g.push(i(g)+"scale(",null,",",null,")");d.push({i:y-4,x:tt(s,h)},{i:y-2,x:tt(l,c)})}else(h!==1||c!==1)&&g.push(i(g)+"scale("+h+","+c+")")}return function(s,l){var h=[],c=[];return s=t(s),l=t(l),u(s.translateX,s.translateY,l.translateX,l.translateY,h,c),o(s.rotate,l.rotate,h,c),a(s.skewX,l.skewX,h,c),f(s.scaleX,s.scaleY,l.scaleX,l.scaleY,h,c),s=l=null,function(g){for(var d=-1,y=c.length,_;++d<y;)h[(_=c[d]).i]=_.x(g);return h.join("")}}}var na=Ur(jo,"px, ","px)","deg)"),ea=Ur(ta,", ",")",")"),Dt=0,Bt=0,qt=0,Fr=1e3,wn,Zt,xn=0,vt=0,Un=0,Kt=typeof performance=="object"&&performance.now?performance:Date,Er=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function le(){return vt||(Er(ra),vt=Kt.now()+Un)}function ra(){vt=0}function Mn(){this._call=this._time=this._next=null}Mn.prototype=Rr.prototype={constructor:Mn,restart:function(t,n,e){if(typeof t!="function")throw new TypeError("callback is not a function");e=(e==null?le():+e)+(n==null?0:+n),!this._next&&Zt!==this&&(Zt?Zt._next=this:wn=this,Zt=this),this._call=t,this._time=e,jn()},stop:function(){this._call&&(this._call=null,this._time=1/0,jn())}};function Rr(t,n,e){var r=new Mn;return r.restart(t,n,e),r}function ia(){le(),++Dt;for(var t=wn,n;t;)(n=vt-t._time)>=0&&t._call.call(void 0,n),t=t._next;--Dt}function Le(){vt=(xn=Kt.now())+Un,Dt=Bt=0;try{ia()}finally{Dt=0,oa(),vt=0}}function ua(){var t=Kt.now(),n=t-xn;n>Fr&&(Un-=n,xn=t)}function oa(){for(var t,n=wn,e,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:wn=e);Zt=t,jn(r)}function jn(t){if(!Dt){Bt&&(Bt=clearTimeout(Bt));var n=t-vt;n>24?(t<1/0&&(Bt=setTimeout(Le,t-Kt.now()-Un)),qt&&(qt=clearInterval(qt))):(qt||(xn=Kt.now(),qt=setInterval(ua,Fr)),Dt=1,Er(Le))}}function Pe(t,n,e){var r=new Mn;return n=n==null?0:+n,r.restart(i=>{r.stop(),t(i+n)},n,e),r}var aa=pr("start","end","cancel","interrupt"),sa=[],Yr=0,Oe=1,te=2,ln=3,qe=4,ne=5,hn=6;function Fn(t,n,e,r,i,u){var o=t.__transition;if(!o)t.__transition={};else if(e in o)return;fa(t,e,{name:n,index:r,group:i,on:aa,tween:sa,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:Yr})}function he(t,n){var e=et(t,n);if(e.state>Yr)throw new Error("too late; already scheduled");return e}function ut(t,n){var e=et(t,n);if(e.state>ln)throw new Error("too late; already running");return e}function et(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function fa(t,n,e){var r=t.__transition,i;r[n]=e,e.timer=Rr(u,0,e.time);function u(s){e.state=Oe,e.timer.restart(o,e.delay,e.time),e.delay<=s&&o(s-e.delay)}function o(s){var l,h,c,g;if(e.state!==Oe)return f();for(l in r)if(g=r[l],g.name===e.name){if(g.state===ln)return Pe(o);g.state===qe?(g.state=hn,g.timer.stop(),g.on.call("interrupt",t,t.__data__,g.index,g.group),delete r[l]):+l<n&&(g.state=hn,g.timer.stop(),g.on.call("cancel",t,t.__data__,g.index,g.group),delete r[l])}if(Pe(function(){e.state===ln&&(e.state=qe,e.timer.restart(a,e.delay,e.time),a(s))}),e.state=te,e.on.call("start",t,t.__data__,e.index,e.group),e.state===te){for(e.state=ln,i=new Array(c=e.tween.length),l=0,h=-1;l<c;++l)(g=e.tween[l].value.call(t,t.__data__,e.index,e.group))&&(i[++h]=g);i.length=h+1}}function a(s){for(var l=s<e.duration?e.ease.call(null,s/e.duration):(e.timer.restart(f),e.state=ne,1),h=-1,c=i.length;++h<c;)i[h].call(t,l);e.state===ne&&(e.on.call("end",t,t.__data__,e.index,e.group),f())}function f(){e.state=hn,e.timer.stop(),delete r[n];for(var s in r)return;delete t.__transition}}function ca(t,n){var e=t.__transition,r,i,u=!0,o;if(e){n=n==null?null:n+"";for(o in e){if((r=e[o]).name!==n){u=!1;continue}i=r.state>te&&r.state<ne,r.state=hn,r.timer.stop(),r.on.call(i?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete e[o]}u&&delete t.__transition}}function la(t){return this.each(function(){ca(this,t)})}function ha(t,n){var e,r;return function(){var i=ut(this,t),u=i.tween;if(u!==e){r=e=u;for(var o=0,a=r.length;o<a;++o)if(r[o].name===n){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function ga(t,n,e){var r,i;if(typeof e!="function")throw new Error;return function(){var u=ut(this,t),o=u.tween;if(o!==r){i=(r=o).slice();for(var a={name:n,value:e},f=0,s=i.length;f<s;++f)if(i[f].name===n){i[f]=a;break}f===s&&i.push(a)}u.tween=i}}function pa(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r=et(this.node(),e).tween,i=0,u=r.length,o;i<u;++i)if((o=r[i]).name===t)return o.value;return null}return this.each((n==null?ha:ga)(e,t,n))}function ge(t,n,e){var r=t._id;return t.each(function(){var i=ut(this,r);(i.value||(i.value={}))[n]=e.apply(this,arguments)}),function(i){return et(i,r).value[n]}}function Hr(t,n){var e;return(typeof n=="number"?tt:n instanceof _t?vn:(e=_t(n))?(n=e,vn):$r)(t,n)}function da(t){return function(){this.removeAttribute(t)}}function ma(t){return function(){this.removeAttributeNS(t.space,t.local)}}function ya(t,n,e){var r,i=e+"",u;return function(){var o=this.getAttribute(t);return o===i?null:o===r?u:u=n(r=o,e)}}function _a(t,n,e){var r,i=e+"",u;return function(){var o=this.getAttributeNS(t.space,t.local);return o===i?null:o===r?u:u=n(r=o,e)}}function va(t,n,e){var r,i,u;return function(){var o,a=e(this),f;return a==null?void this.removeAttribute(t):(o=this.getAttribute(t),f=a+"",o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a)))}}function wa(t,n,e){var r,i,u;return function(){var o,a=e(this),f;return a==null?void this.removeAttributeNS(t.space,t.local):(o=this.getAttributeNS(t.space,t.local),f=a+"",o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a)))}}function xa(t,n){var e=Dn(t),r=e==="transform"?ea:Hr;return this.attrTween(t,typeof n=="function"?(e.local?wa:va)(e,r,ge(this,"attr."+t,n)):n==null?(e.local?ma:da)(e):(e.local?_a:ya)(e,r,n))}function Ma(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function Ta(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function ba(t,n){var e,r;function i(){var u=n.apply(this,arguments);return u!==r&&(e=(r=u)&&Ta(t,u)),e}return i._value=n,i}function ka(t,n){var e,r;function i(){var u=n.apply(this,arguments);return u!==r&&(e=(r=u)&&Ma(t,u)),e}return i._value=n,i}function Ca(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(n==null)return this.tween(e,null);if(typeof n!="function")throw new Error;var r=Dn(t);return this.tween(e,(r.local?ba:ka)(r,n))}function Aa(t,n){return function(){he(this,t).delay=+n.apply(this,arguments)}}function Sa(t,n){return n=+n,function(){he(this,t).delay=n}}function Na(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?Aa:Sa)(n,t)):et(this.node(),n).delay}function $a(t,n){return function(){ut(this,t).duration=+n.apply(this,arguments)}}function Da(t,n){return n=+n,function(){ut(this,t).duration=n}}function Ua(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?$a:Da)(n,t)):et(this.node(),n).duration}function Fa(t,n){if(typeof n!="function")throw new Error;return function(){ut(this,t).ease=n}}function Ea(t){var n=this._id;return arguments.length?this.each(Fa(n,t)):et(this.node(),n).ease}function Ra(t,n){return function(){var e=n.apply(this,arguments);if(typeof e!="function")throw new Error;ut(this,t).ease=e}}function Ya(t){if(typeof t!="function")throw new Error;return this.each(Ra(this._id,t))}function Ha(t){typeof t!="function"&&(t=yr(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=[],f,s=0;s<o;++s)(f=u[s])&&t.call(f,f.__data__,s,u)&&a.push(f);return new ct(r,this._parents,this._name,this._id)}function Ia(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,r=n.length,i=e.length,u=Math.min(r,i),o=new Array(r),a=0;a<u;++a)for(var f=n[a],s=e[a],l=f.length,h=o[a]=new Array(l),c,g=0;g<l;++g)(c=f[g]||s[g])&&(h[g]=c);for(;a<r;++a)o[a]=n[a];return new ct(o,this._parents,this._name,this._id)}function La(t){return(t+"").trim().split(/^|\s+/).every(function(n){var e=n.indexOf(".");return e>=0&&(n=n.slice(0,e)),!n||n==="start"})}function Pa(t,n,e){var r,i,u=La(n)?he:ut;return function(){var o=u(this,t),a=o.on;a!==r&&(i=(r=a).copy()).on(n,e),o.on=i}}function Oa(t,n){var e=this._id;return arguments.length<2?et(this.node(),e).on.on(t):this.each(Pa(e,t,n))}function qa(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}function Wa(){return this.on("end.remove",qa(this._id))}function Va(t){var n=this._name,e=this._id;typeof t!="function"&&(t=oe(t));for(var r=this._groups,i=r.length,u=new Array(i),o=0;o<i;++o)for(var a=r[o],f=a.length,s=u[o]=new Array(f),l,h,c=0;c<f;++c)(l=a[c])&&(h=t.call(l,l.__data__,c,a))&&("__data__"in l&&(h.__data__=l.__data__),s[c]=h,Fn(s[c],n,e,c,s,et(l,e)));return new ct(u,this._parents,n,e)}function Xa(t){var n=this._name,e=this._id;typeof t!="function"&&(t=mr(t));for(var r=this._groups,i=r.length,u=[],o=[],a=0;a<i;++a)for(var f=r[a],s=f.length,l,h=0;h<s;++h)if(l=f[h]){for(var c=t.call(l,l.__data__,h,f),g,d=et(l,e),y=0,_=c.length;y<_;++y)(g=c[y])&&Fn(g,n,e,y,c,d);u.push(c),o.push(l)}return new ct(u,o,n,e)}var za=tn.prototype.constructor;function Ba(){return new za(this._groups,this._parents)}function Za(t,n){var e,r,i;return function(){var u=$t(this,t),o=(this.style.removeProperty(t),$t(this,t));return u===o?null:u===e&&o===r?i:i=n(e=u,r=o)}}function Ir(t){return function(){this.style.removeProperty(t)}}function Ga(t,n,e){var r,i=e+"",u;return function(){var o=$t(this,t);return o===i?null:o===r?u:u=n(r=o,e)}}function Qa(t,n,e){var r,i,u;return function(){var o=$t(this,t),a=e(this),f=a+"";return a==null&&(f=a=(this.style.removeProperty(t),$t(this,t))),o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a))}}function Ja(t,n){var e,r,i,u="style."+n,o="end."+u,a;return function(){var f=ut(this,t),s=f.on,l=f.value[u]==null?a||(a=Ir(n)):void 0;(s!==e||i!==l)&&(r=(e=s).copy()).on(o,i=l),f.on=r}}function Ka(t,n,e){var r=(t+="")=="transform"?na:Hr;return n==null?this.styleTween(t,Za(t,r)).on("end.style."+t,Ir(t)):typeof n=="function"?this.styleTween(t,Qa(t,r,ge(this,"style."+t,n))).each(Ja(this._id,t)):this.styleTween(t,Ga(t,r,n),e).on("end.style."+t,null)}function ja(t,n,e){return function(r){this.style.setProperty(t,n.call(this,r),e)}}function ts(t,n,e){var r,i;function u(){var o=n.apply(this,arguments);return o!==i&&(r=(i=o)&&ja(t,o,e)),r}return u._value=n,u}function ns(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,ts(t,n,e??""))}function es(t){return function(){this.textContent=t}}function rs(t){return function(){var n=t(this);this.textContent=n??""}}function is(t){return this.tween("text",typeof t=="function"?rs(ge(this,"text",t)):es(t==null?"":t+""))}function us(t){return function(n){this.textContent=t.call(this,n)}}function os(t){var n,e;function r(){var i=t.apply(this,arguments);return i!==e&&(n=(e=i)&&us(i)),n}return r._value=t,r}function as(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;return this.tween(n,os(t))}function ss(){for(var t=this._name,n=this._id,e=Lr(),r=this._groups,i=r.length,u=0;u<i;++u)for(var o=r[u],a=o.length,f,s=0;s<a;++s)if(f=o[s]){var l=et(f,n);Fn(f,t,e,s,o,{time:l.time+l.delay+l.duration,delay:0,duration:l.duration,ease:l.ease})}return new ct(r,this._parents,t,e)}function fs(){var t,n,e=this,r=e._id,i=e.size();return new Promise(function(u,o){var a={value:o},f={value:function(){--i===0&&u()}};e.each(function(){var s=ut(this,r),l=s.on;l!==t&&(n=(t=l).copy(),n._.cancel.push(a),n._.interrupt.push(a),n._.end.push(f)),s.on=n}),i===0&&u()})}var cs=0;function ct(t,n,e,r){this._groups=t,this._parents=n,this._name=e,this._id=r}function Lr(){return++cs}var at=tn.prototype;ct.prototype={constructor:ct,select:Va,selectAll:Xa,selectChild:at.selectChild,selectChildren:at.selectChildren,filter:Ha,merge:Ia,selection:Ba,transition:ss,call:at.call,nodes:at.nodes,node:at.node,size:at.size,empty:at.empty,each:at.each,on:Oa,attr:xa,attrTween:Ca,style:Ka,styleTween:ns,text:is,textTween:as,remove:Wa,tween:pa,delay:Na,duration:Ua,ease:Ea,easeVarying:Ya,end:fs,[Symbol.iterator]:at[Symbol.iterator]};const bc=t=>+t;function kc(t){return--t*t*t+1}function ls(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var pe=1.70158,Cc=(function t(n){n=+n;function e(r){return(r=+r)*r*(n*(r-1)+r)}return e.overshoot=t,e})(pe),Ac=(function t(n){n=+n;function e(r){return--r*r*((r+1)*n+r)+1}return e.overshoot=t,e})(pe);(function t(n){n=+n;function e(r){return((r*=2)<1?r*r*((n+1)*r-n):(r-=2)*r*((n+1)*r+n)+2)/2}return e.overshoot=t,e})(pe);var hs={time:null,delay:0,duration:250,ease:ls};function gs(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))throw new Error(`transition ${n} not found`);return e}function ps(t){var n,e;t instanceof ct?(n=t._id,t=t._name):(n=Lr(),(e=hs).time=le(),t=t==null?null:t+"");for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var o=r[u],a=o.length,f,s=0;s<a;++s)(f=o[s])&&Fn(f,t,n,s,o,e||gs(f,n));return new ct(r,this._parents,t,n)}tn.prototype.interrupt=la;tn.prototype.transition=ps;const ee=Math.PI,re=2*ee,dt=1e-6,ds=re-dt;function Pr(t){this._+=t[0];for(let n=1,e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function ms(t){let n=Math.floor(t);if(!(n>=0))throw new Error(`invalid digits: ${t}`);if(n>15)return Pr;const e=10**n;return function(r){this._+=r[0];for(let i=1,u=r.length;i<u;++i)this._+=Math.round(arguments[i]*e)/e+r[i]}}class ys{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?Pr:ms(n)}moveTo(n,e){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,e){this._append`L${this._x1=+n},${this._y1=+e}`}quadraticCurveTo(n,e,r,i){this._append`Q${+n},${+e},${this._x1=+r},${this._y1=+i}`}bezierCurveTo(n,e,r,i,u,o){this._append`C${+n},${+e},${+r},${+i},${this._x1=+u},${this._y1=+o}`}arcTo(n,e,r,i,u){if(n=+n,e=+e,r=+r,i=+i,u=+u,u<0)throw new Error(`negative radius: ${u}`);let o=this._x1,a=this._y1,f=r-n,s=i-e,l=o-n,h=a-e,c=l*l+h*h;if(this._x1===null)this._append`M${this._x1=n},${this._y1=e}`;else if(c>dt)if(!(Math.abs(h*f-s*l)>dt)||!u)this._append`L${this._x1=n},${this._y1=e}`;else{let g=r-o,d=i-a,y=f*f+s*s,_=g*g+d*d,w=Math.sqrt(y),k=Math.sqrt(c),b=u*Math.tan((ee-Math.acos((y+c-_)/(2*w*k)))/2),M=b/k,S=b/w;Math.abs(M-1)>dt&&this._append`L${n+M*l},${e+M*h}`,this._append`A${u},${u},0,0,${+(h*g>l*d)},${this._x1=n+S*f},${this._y1=e+S*s}`}}arc(n,e,r,i,u,o){if(n=+n,e=+e,r=+r,o=!!o,r<0)throw new Error(`negative radius: ${r}`);let a=r*Math.cos(i),f=r*Math.sin(i),s=n+a,l=e+f,h=1^o,c=o?i-u:u-i;this._x1===null?this._append`M${s},${l}`:(Math.abs(this._x1-s)>dt||Math.abs(this._y1-l)>dt)&&this._append`L${s},${l}`,r&&(c<0&&(c=c%re+re),c>ds?this._append`A${r},${r},0,1,${h},${n-a},${e-f}A${r},${r},0,1,${h},${this._x1=s},${this._y1=l}`:c>dt&&this._append`A${r},${r},0,${+(c>=ee)},${h},${this._x1=n+r*Math.cos(u)},${this._y1=e+r*Math.sin(u)}`)}rect(n,e,r,i){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function _s(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Tn(t,n){if(!isFinite(t)||t===0)return null;var e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"),r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function Ut(t){return t=Tn(Math.abs(t)),t?t[1]:NaN}function vs(t,n){return function(e,r){for(var i=e.length,u=[],o=0,a=t[0],f=0;i>0&&a>0&&(f+a+1>r&&(a=Math.max(1,r-f)),u.push(e.substring(i-=a,i+a)),!((f+=a+1)>r));)a=t[o=(o+1)%t.length];return u.reverse().join(n)}}function ws(t){return function(n){return n.replace(/[0-9]/g,function(e){return t[+e]})}}var xs=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function bn(t){if(!(n=xs.exec(t)))throw new Error("invalid format: "+t);var n;return new de({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}bn.prototype=de.prototype;function de(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}de.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 Ms(t){t:for(var n=t.length,e=1,r=-1,i;e<n;++e)switch(t[e]){case".":r=i=e;break;case"0":r===0&&(r=e),i=e;break;default:if(!+t[e])break t;r>0&&(r=0);break}return r>0?t.slice(0,r)+t.slice(i+1):t}var kn;function Ts(t,n){var e=Tn(t,n);if(!e)return kn=void 0,t.toPrecision(n);var r=e[0],i=e[1],u=i-(kn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return u===o?r:u>o?r+new Array(u-o+1).join("0"):u>0?r.slice(0,u)+"."+r.slice(u):"0."+new Array(1-u).join("0")+Tn(t,Math.max(0,n+u-1))[0]}function We(t,n){var e=Tn(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Ve={"%":(t,n)=>(t*100).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:_s,e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>We(t*100,n),r:We,s:Ts,X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Xe(t){return t}var ze=Array.prototype.map,Be=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function bs(t){var n=t.grouping===void 0||t.thousands===void 0?Xe:vs(ze.call(t.grouping,Number),t.thousands+""),e=t.currency===void 0?"":t.currency[0]+"",r=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",u=t.numerals===void 0?Xe:ws(ze.call(t.numerals,String)),o=t.percent===void 0?"%":t.percent+"",a=t.minus===void 0?"−":t.minus+"",f=t.nan===void 0?"NaN":t.nan+"";function s(h,c){h=bn(h);var g=h.fill,d=h.align,y=h.sign,_=h.symbol,w=h.zero,k=h.width,b=h.comma,M=h.precision,S=h.trim,m=h.type;m==="n"?(b=!0,m="g"):Ve[m]||(M===void 0&&(M=12),S=!0,m="g"),(w||g==="0"&&d==="=")&&(w=!0,g="0",d="=");var N=(c&&c.prefix!==void 0?c.prefix:"")+(_==="$"?e:_==="#"&&/[boxX]/.test(m)?"0"+m.toLowerCase():""),Y=(_==="$"?r:/[%p]/.test(m)?o:"")+(c&&c.suffix!==void 0?c.suffix:""),I=Ve[m],R=/[defgprs%]/.test(m);M=M===void 0?6:/[gprs]/.test(m)?Math.max(1,Math.min(21,M)):Math.max(0,Math.min(20,M));function E(x){var T=N,C=Y,P,ot,z;if(m==="c")C=I(x)+C,x="";else{x=+x;var B=x<0||1/x<0;if(x=isNaN(x)?f:I(Math.abs(x),M),S&&(x=Ms(x)),B&&+x==0&&y!=="+"&&(B=!1),T=(B?y==="("?y:a:y==="-"||y==="("?"":y)+T,C=(m==="s"&&!isNaN(x)&&kn!==void 0?Be[8+kn/3]:"")+C+(B&&y==="("?")":""),R){for(P=-1,ot=x.length;++P<ot;)if(z=x.charCodeAt(P),48>z||z>57){C=(z===46?i+x.slice(P+1):x.slice(P))+C,x=x.slice(0,P);break}}}b&&!w&&(x=n(x,1/0));var K=T.length+x.length+C.length,O=K<k?new Array(k-K+1).join(g):"";switch(b&&w&&(x=n(O+x,O.length?k-C.length:1/0),O=""),d){case"<":x=T+x+C+O;break;case"=":x=T+O+x+C;break;case"^":x=O.slice(0,K=O.length>>1)+T+x+C+O.slice(K);break;default:x=O+T+x+C;break}return u(x)}return E.toString=function(){return h+""},E}function l(h,c){var g=Math.max(-8,Math.min(8,Math.floor(Ut(c)/3)))*3,d=Math.pow(10,-g),y=s((h=bn(h),h.type="f",h),{suffix:Be[8+g/3]});return function(_){return y(d*_)}}return{format:s,formatPrefix:l}}var an,Or,qr;ks({thousands:",",grouping:[3],currency:["$",""]});function ks(t){return an=bs(t),Or=an.format,qr=an.formatPrefix,an}function Cs(t){return Math.max(0,-Ut(Math.abs(t)))}function As(t,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ut(n)/3)))*3-Ut(Math.abs(t)))}function Ss(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,Ut(n)-Ut(t))+1}function me(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t);break}return this}const Ze=Symbol("implicit");function Ns(){var t=new ke,n=[],e=[],r=Ze;function i(u){let o=t.get(u);if(o===void 0){if(r!==Ze)return r;t.set(u,o=n.push(u)-1)}return e[o%e.length]}return i.domain=function(u){if(!arguments.length)return n.slice();n=[],t=new ke;for(const o of u)t.has(o)||t.set(o,n.push(o)-1);return i},i.range=function(u){return arguments.length?(e=Array.from(u),i):e.slice()},i.unknown=function(u){return arguments.length?(r=u,i):r},i.copy=function(){return Ns(n,e).unknown(r)},me.apply(i,arguments),i}function $s(t){return function(){return t}}function Ds(t){return+t}var Ge=[0,1];function Ct(t){return t}function ie(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:$s(isNaN(n)?NaN:.5)}function Us(t,n){var e;return t>n&&(e=t,t=n,n=e),function(r){return Math.max(t,Math.min(n,r))}}function Fs(t,n,e){var r=t[0],i=t[1],u=n[0],o=n[1];return i<r?(r=ie(i,r),u=e(o,u)):(r=ie(r,i),u=e(u,o)),function(a){return u(r(a))}}function Es(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),u=new Array(r),o=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++o<r;)i[o]=ie(t[o],t[o+1]),u[o]=e(n[o],n[o+1]);return function(a){var f=Fi(t,a,1,r)-1;return u[f](i[f](a))}}function Wr(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function Rs(){var t=Ge,n=Ge,e=ce,r,i,u,o=Ct,a,f,s;function l(){var c=Math.min(t.length,n.length);return o!==Ct&&(o=Us(t[0],t[c-1])),a=c>2?Es:Fs,f=s=null,h}function h(c){return c==null||isNaN(c=+c)?u:(f||(f=a(t.map(r),n,e)))(r(o(c)))}return h.invert=function(c){return o(i((s||(s=a(n,t.map(r),tt)))(c)))},h.domain=function(c){return arguments.length?(t=Array.from(c,Ds),l()):t.slice()},h.range=function(c){return arguments.length?(n=Array.from(c),l()):n.slice()},h.rangeRound=function(c){return n=Array.from(c),e=Ko,l()},h.clamp=function(c){return arguments.length?(o=c?!0:Ct,l()):o!==Ct},h.interpolate=function(c){return arguments.length?(e=c,l()):e},h.unknown=function(c){return arguments.length?(u=c,h):u},function(c,g){return r=c,i=g,l()}}function Vr(){return Rs()(Ct,Ct)}function Ys(t,n,e,r){var i=Bn(t,n,e),u;switch(r=bn(r??",f"),r.type){case"s":{var o=Math.max(Math.abs(t),Math.abs(n));return r.precision==null&&!isNaN(u=As(i,o))&&(r.precision=u),qr(r,o)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(u=Ss(i,Math.max(Math.abs(t),Math.abs(n))))&&(r.precision=u-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(u=Cs(i))&&(r.precision=u-(r.type==="%")*2);break}}return Or(r)}function Hs(t){var n=t.domain;return t.ticks=function(e){var r=n();return Pi(r[0],r[r.length-1],e??10)},t.tickFormat=function(e,r){var i=n();return Ys(i[0],i[i.length-1],e??10,r)},t.nice=function(e){e==null&&(e=10);var r=n(),i=0,u=r.length-1,o=r[i],a=r[u],f,s,l=10;for(a<o&&(s=o,o=a,a=s,s=i,i=u,u=s);l-- >0;){if(s=zn(o,a,e),s===f)return r[i]=o,r[u]=a,n(r);if(s>0)o=Math.floor(o/s)*s,a=Math.ceil(a/s)*s;else if(s<0)o=Math.ceil(o*s)/s,a=Math.floor(a*s)/s;else break;f=s}return t},t}function Is(){var t=Vr();return t.copy=function(){return Wr(t,Is())},me.apply(t,arguments),Hs(t)}function Ls(t,n){t=t.slice();var e=0,r=t.length-1,i=t[e],u=t[r],o;return u<i&&(o=e,e=r,r=o,o=i,i=u,u=o),t[e]=n.floor(i),t[r]=n.ceil(u),t}const Ln=new Date,Pn=new Date;function H(t,n,e,r){function i(u){return t(u=arguments.length===0?new Date:new Date(+u)),u}return i.floor=u=>(t(u=new Date(+u)),u),i.ceil=u=>(t(u=new Date(u-1)),n(u,1),t(u),u),i.round=u=>{const o=i(u),a=i.ceil(u);return u-o<a-u?o:a},i.offset=(u,o)=>(n(u=new Date(+u),o==null?1:Math.floor(o)),u),i.range=(u,o,a)=>{const f=[];if(u=i.ceil(u),a=a==null?1:Math.floor(a),!(u<o)||!(a>0))return f;let s;do f.push(s=new Date(+u)),n(u,a),t(u);while(s<u&&u<o);return f},i.filter=u=>H(o=>{if(o>=o)for(;t(o),!u(o);)o.setTime(o-1)},(o,a)=>{if(o>=o)if(a<0)for(;++a<=0;)for(;n(o,-1),!u(o););else for(;--a>=0;)for(;n(o,1),!u(o););}),e&&(i.count=(u,o)=>(Ln.setTime(+u),Pn.setTime(+o),t(Ln),t(Pn),Math.floor(e(Ln,Pn))),i.every=u=>(u=Math.floor(u),!isFinite(u)||!(u>0)?null:u>1?i.filter(r?o=>r(o)%u===0:o=>i.count(0,o)%u===0):i)),i}const Cn=H(()=>{},(t,n)=>{t.setTime(+t+n)},(t,n)=>n-t);Cn.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?H(n=>{n.setTime(Math.floor(n/t)*t)},(n,e)=>{n.setTime(+n+e*t)},(n,e)=>(e-n)/t):Cn);Cn.range;const st=1e3,J=st*60,ft=J*60,lt=ft*24,ye=lt*7,Qe=lt*30,On=lt*365,At=H(t=>{t.setTime(t-t.getMilliseconds())},(t,n)=>{t.setTime(+t+n*st)},(t,n)=>(n-t)/st,t=>t.getUTCSeconds());At.range;const _e=H(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*st)},(t,n)=>{t.setTime(+t+n*J)},(t,n)=>(n-t)/J,t=>t.getMinutes());_e.range;const Ps=H(t=>{t.setUTCSeconds(0,0)},(t,n)=>{t.setTime(+t+n*J)},(t,n)=>(n-t)/J,t=>t.getUTCMinutes());Ps.range;const ve=H(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*st-t.getMinutes()*J)},(t,n)=>{t.setTime(+t+n*ft)},(t,n)=>(n-t)/ft,t=>t.getHours());ve.range;const Os=H(t=>{t.setUTCMinutes(0,0,0)},(t,n)=>{t.setTime(+t+n*ft)},(t,n)=>(n-t)/ft,t=>t.getUTCHours());Os.range;const en=H(t=>t.setHours(0,0,0,0),(t,n)=>t.setDate(t.getDate()+n),(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*J)/lt,t=>t.getDate()-1);en.range;const we=H(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/lt,t=>t.getUTCDate()-1);we.range;const qs=H(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/lt,t=>Math.floor(t/lt));qs.range;function xt(t){return H(n=>{n.setDate(n.getDate()-(n.getDay()+7-t)%7),n.setHours(0,0,0,0)},(n,e)=>{n.setDate(n.getDate()+e*7)},(n,e)=>(e-n-(e.getTimezoneOffset()-n.getTimezoneOffset())*J)/ye)}const En=xt(0),An=xt(1),Ws=xt(2),Vs=xt(3),Ft=xt(4),Xs=xt(5),zs=xt(6);En.range;An.range;Ws.range;Vs.range;Ft.range;Xs.range;zs.range;function Mt(t){return H(n=>{n.setUTCDate(n.getUTCDate()-(n.getUTCDay()+7-t)%7),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCDate(n.getUTCDate()+e*7)},(n,e)=>(e-n)/ye)}const Xr=Mt(0),Sn=Mt(1),Bs=Mt(2),Zs=Mt(3),Et=Mt(4),Gs=Mt(5),Qs=Mt(6);Xr.range;Sn.range;Bs.range;Zs.range;Et.range;Gs.range;Qs.range;const xe=H(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,n)=>{t.setMonth(t.getMonth()+n)},(t,n)=>n.getMonth()-t.getMonth()+(n.getFullYear()-t.getFullYear())*12,t=>t.getMonth());xe.range;const Js=H(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCMonth(t.getUTCMonth()+n)},(t,n)=>n.getUTCMonth()-t.getUTCMonth()+(n.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Js.range;const ht=H(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n)},(t,n)=>n.getFullYear()-t.getFullYear(),t=>t.getFullYear());ht.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:H(n=>{n.setFullYear(Math.floor(n.getFullYear()/t)*t),n.setMonth(0,1),n.setHours(0,0,0,0)},(n,e)=>{n.setFullYear(n.getFullYear()+e*t)});ht.range;const wt=H(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n)},(t,n)=>n.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());wt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:H(n=>{n.setUTCFullYear(Math.floor(n.getUTCFullYear()/t)*t),n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCFullYear(n.getUTCFullYear()+e*t)});wt.range;function Ks(t,n,e,r,i,u){const o=[[At,1,st],[At,5,5*st],[At,15,15*st],[At,30,30*st],[u,1,J],[u,5,5*J],[u,15,15*J],[u,30,30*J],[i,1,ft],[i,3,3*ft],[i,6,6*ft],[i,12,12*ft],[r,1,lt],[r,2,2*lt],[e,1,ye],[n,1,Qe],[n,3,3*Qe],[t,1,On]];function a(s,l,h){const c=l<s;c&&([s,l]=[l,s]);const g=h&&typeof h.range=="function"?h:f(s,l,h),d=g?g.range(s,+l+1):[];return c?d.reverse():d}function f(s,l,h){const c=Math.abs(l-s)/h,g=ue(([,,_])=>_).right(o,c);if(g===o.length)return t.every(Bn(s/On,l/On,h));if(g===0)return Cn.every(Math.max(Bn(s,l,h),1));const[d,y]=o[c/o[g-1][2]<o[g][2]/c?g-1:g];return d.every(y)}return[a,f]}const[js,tf]=Ks(ht,xe,En,en,ve,_e);function qn(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function Wn(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Wt(t,n,e){return{y:t,m:n,d:e,H:0,M:0,S:0,L:0}}function nf(t){var n=t.dateTime,e=t.date,r=t.time,i=t.periods,u=t.days,o=t.shortDays,a=t.months,f=t.shortMonths,s=Vt(i),l=Xt(i),h=Vt(u),c=Xt(u),g=Vt(o),d=Xt(o),y=Vt(a),_=Xt(a),w=Vt(f),k=Xt(f),b={a:z,A:B,b:K,B:O,c:null,d:er,e:er,f:kf,g:Rf,G:Hf,H:Mf,I:Tf,j:bf,L:zr,m:Cf,M:Af,p:Tt,q:bt,Q:ur,s:or,S:Sf,u:Nf,U:$f,V:Df,w:Uf,W:Ff,x:null,X:null,y:Ef,Y:Yf,Z:If,"%":ir},M={a:Rt,A:Yt,b:j,B:Ht,c:null,d:rr,e:rr,f:qf,g:Kf,G:tc,H:Lf,I:Pf,j:Of,L:Zr,m:Wf,M:Vf,p:It,q:Lt,Q:ur,s:or,S:Xf,u:zf,U:Bf,V:Zf,w:Gf,W:Qf,x:null,X:null,y:Jf,Y:jf,Z:nc,"%":ir},S={a:R,A:E,b:x,B:T,c:C,d:tr,e:tr,f:_f,g:je,G:Ke,H:nr,I:nr,j:pf,L:yf,m:gf,M:df,p:I,q:hf,Q:wf,s:xf,S:mf,u:af,U:sf,V:ff,w:of,W:cf,x:P,X:ot,y:je,Y:Ke,Z:lf,"%":vf};b.x=m(e,b),b.X=m(r,b),b.c=m(n,b),M.x=m(e,M),M.X=m(r,M),M.c=m(n,M);function m(v,A){return function($){var p=[],W=-1,F=0,Z=v.length,G,gt,be;for($ instanceof Date||($=new Date(+$));++W<Z;)v.charCodeAt(W)===37&&(p.push(v.slice(F,W)),(gt=Je[G=v.charAt(++W)])!=null?G=v.charAt(++W):gt=G==="e"?" ":"0",(be=A[G])&&(G=be($,gt)),p.push(G),F=W+1);return p.push(v.slice(F,W)),p.join("")}}function N(v,A){return function($){var p=Wt(1900,void 0,1),W=Y(p,v,$+="",0),F,Z;if(W!=$.length)return null;if("Q"in p)return new Date(p.Q);if("s"in p)return new Date(p.s*1e3+("L"in p?p.L:0));if(A&&!("Z"in p)&&(p.Z=0),"p"in p&&(p.H=p.H%12+p.p*12),p.m===void 0&&(p.m="q"in p?p.q:0),"V"in p){if(p.V<1||p.V>53)return null;"w"in p||(p.w=1),"Z"in p?(F=Wn(Wt(p.y,0,1)),Z=F.getUTCDay(),F=Z>4||Z===0?Sn.ceil(F):Sn(F),F=we.offset(F,(p.V-1)*7),p.y=F.getUTCFullYear(),p.m=F.getUTCMonth(),p.d=F.getUTCDate()+(p.w+6)%7):(F=qn(Wt(p.y,0,1)),Z=F.getDay(),F=Z>4||Z===0?An.ceil(F):An(F),F=en.offset(F,(p.V-1)*7),p.y=F.getFullYear(),p.m=F.getMonth(),p.d=F.getDate()+(p.w+6)%7)}else("W"in p||"U"in p)&&("w"in p||(p.w="u"in p?p.u%7:"W"in p?1:0),Z="Z"in p?Wn(Wt(p.y,0,1)).getUTCDay():qn(Wt(p.y,0,1)).getDay(),p.m=0,p.d="W"in p?(p.w+6)%7+p.W*7-(Z+5)%7:p.w+p.U*7-(Z+6)%7);return"Z"in p?(p.H+=p.Z/100|0,p.M+=p.Z%100,Wn(p)):qn(p)}}function Y(v,A,$,p){for(var W=0,F=A.length,Z=$.length,G,gt;W<F;){if(p>=Z)return-1;if(G=A.charCodeAt(W++),G===37){if(G=A.charAt(W++),gt=S[G in Je?A.charAt(W++):G],!gt||(p=gt(v,$,p))<0)return-1}else if(G!=$.charCodeAt(p++))return-1}return p}function I(v,A,$){var p=s.exec(A.slice($));return p?(v.p=l.get(p[0].toLowerCase()),$+p[0].length):-1}function R(v,A,$){var p=g.exec(A.slice($));return p?(v.w=d.get(p[0].toLowerCase()),$+p[0].length):-1}function E(v,A,$){var p=h.exec(A.slice($));return p?(v.w=c.get(p[0].toLowerCase()),$+p[0].length):-1}function x(v,A,$){var p=w.exec(A.slice($));return p?(v.m=k.get(p[0].toLowerCase()),$+p[0].length):-1}function T(v,A,$){var p=y.exec(A.slice($));return p?(v.m=_.get(p[0].toLowerCase()),$+p[0].length):-1}function C(v,A,$){return Y(v,n,A,$)}function P(v,A,$){return Y(v,e,A,$)}function ot(v,A,$){return Y(v,r,A,$)}function z(v){return o[v.getDay()]}function B(v){return u[v.getDay()]}function K(v){return f[v.getMonth()]}function O(v){return a[v.getMonth()]}function Tt(v){return i[+(v.getHours()>=12)]}function bt(v){return 1+~~(v.getMonth()/3)}function Rt(v){return o[v.getUTCDay()]}function Yt(v){return u[v.getUTCDay()]}function j(v){return f[v.getUTCMonth()]}function Ht(v){return a[v.getUTCMonth()]}function It(v){return i[+(v.getUTCHours()>=12)]}function Lt(v){return 1+~~(v.getUTCMonth()/3)}return{format:function(v){var A=m(v+="",b);return A.toString=function(){return v},A},parse:function(v){var A=N(v+="",!1);return A.toString=function(){return v},A},utcFormat:function(v){var A=m(v+="",M);return A.toString=function(){return v},A},utcParse:function(v){var A=N(v+="",!0);return A.toString=function(){return v},A}}}var Je={"-":"",_:" ",0:"0"},L=/^\s*\d+/,ef=/^%/,rf=/[\\^$*+?|[\]().{}]/g;function U(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",u=i.length;return r+(u<e?new Array(e-u+1).join(n)+i:i)}function uf(t){return t.replace(rf,"\\$&")}function Vt(t){return new RegExp("^(?:"+t.map(uf).join("|")+")","i")}function Xt(t){return new Map(t.map((n,e)=>[n.toLowerCase(),e]))}function of(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function af(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function sf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function ff(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function cf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function Ke(t,n,e){var r=L.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function je(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),e+r[0].length):-1}function lf(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function hf(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.q=r[0]*3-3,e+r[0].length):-1}function gf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function tr(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function pf(t,n,e){var r=L.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function nr(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function df(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function mf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function yf(t,n,e){var r=L.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function _f(t,n,e){var r=L.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function vf(t,n,e){var r=ef.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function wf(t,n,e){var r=L.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function xf(t,n,e){var r=L.exec(n.slice(e));return r?(t.s=+r[0],e+r[0].length):-1}function er(t,n){return U(t.getDate(),n,2)}function Mf(t,n){return U(t.getHours(),n,2)}function Tf(t,n){return U(t.getHours()%12||12,n,2)}function bf(t,n){return U(1+en.count(ht(t),t),n,3)}function zr(t,n){return U(t.getMilliseconds(),n,3)}function kf(t,n){return zr(t,n)+"000"}function Cf(t,n){return U(t.getMonth()+1,n,2)}function Af(t,n){return U(t.getMinutes(),n,2)}function Sf(t,n){return U(t.getSeconds(),n,2)}function Nf(t){var n=t.getDay();return n===0?7:n}function $f(t,n){return U(En.count(ht(t)-1,t),n,2)}function Br(t){var n=t.getDay();return n>=4||n===0?Ft(t):Ft.ceil(t)}function Df(t,n){return t=Br(t),U(Ft.count(ht(t),t)+(ht(t).getDay()===4),n,2)}function Uf(t){return t.getDay()}function Ff(t,n){return U(An.count(ht(t)-1,t),n,2)}function Ef(t,n){return U(t.getFullYear()%100,n,2)}function Rf(t,n){return t=Br(t),U(t.getFullYear()%100,n,2)}function Yf(t,n){return U(t.getFullYear()%1e4,n,4)}function Hf(t,n){var e=t.getDay();return t=e>=4||e===0?Ft(t):Ft.ceil(t),U(t.getFullYear()%1e4,n,4)}function If(t){var n=t.getTimezoneOffset();return(n>0?"-":(n*=-1,"+"))+U(n/60|0,"0",2)+U(n%60,"0",2)}function rr(t,n){return U(t.getUTCDate(),n,2)}function Lf(t,n){return U(t.getUTCHours(),n,2)}function Pf(t,n){return U(t.getUTCHours()%12||12,n,2)}function Of(t,n){return U(1+we.count(wt(t),t),n,3)}function Zr(t,n){return U(t.getUTCMilliseconds(),n,3)}function qf(t,n){return Zr(t,n)+"000"}function Wf(t,n){return U(t.getUTCMonth()+1,n,2)}function Vf(t,n){return U(t.getUTCMinutes(),n,2)}function Xf(t,n){return U(t.getUTCSeconds(),n,2)}function zf(t){var n=t.getUTCDay();return n===0?7:n}function Bf(t,n){return U(Xr.count(wt(t)-1,t),n,2)}function Gr(t){var n=t.getUTCDay();return n>=4||n===0?Et(t):Et.ceil(t)}function Zf(t,n){return t=Gr(t),U(Et.count(wt(t),t)+(wt(t).getUTCDay()===4),n,2)}function Gf(t){return t.getUTCDay()}function Qf(t,n){return U(Sn.count(wt(t)-1,t),n,2)}function Jf(t,n){return U(t.getUTCFullYear()%100,n,2)}function Kf(t,n){return t=Gr(t),U(t.getUTCFullYear()%100,n,2)}function jf(t,n){return U(t.getUTCFullYear()%1e4,n,4)}function tc(t,n){var e=t.getUTCDay();return t=e>=4||e===0?Et(t):Et.ceil(t),U(t.getUTCFullYear()%1e4,n,4)}function nc(){return"+0000"}function ir(){return"%"}function ur(t){return+t}function or(t){return Math.floor(+t/1e3)}var kt,Qr;ec({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 ec(t){return kt=nf(t),Qr=kt.format,kt.parse,kt.utcFormat,kt.utcParse,kt}function rc(t){return new Date(t)}function ic(t){return t instanceof Date?+t:+new Date(+t)}function Jr(t,n,e,r,i,u,o,a,f,s){var l=Vr(),h=l.invert,c=l.domain,g=s(".%L"),d=s(":%S"),y=s("%I:%M"),_=s("%I %p"),w=s("%a %d"),k=s("%b %d"),b=s("%B"),M=s("%Y");function S(m){return(f(m)<m?g:a(m)<m?d:o(m)<m?y:u(m)<m?_:r(m)<m?i(m)<m?w:k:e(m)<m?b:M)(m)}return l.invert=function(m){return new Date(h(m))},l.domain=function(m){return arguments.length?c(Array.from(m,ic)):c().map(rc)},l.ticks=function(m){var N=c();return t(N[0],N[N.length-1],m??10)},l.tickFormat=function(m,N){return N==null?S:s(N)},l.nice=function(m){var N=c();return(!m||typeof m.range!="function")&&(m=n(N[0],N[N.length-1],m??10)),m?c(Ls(N,m)):l},l.copy=function(){return Wr(l,Jr(t,n,e,r,i,u,o,a,f,s))},l}function Sc(){return me.apply(Jr(js,tf,ht,xe,En,en,ve,_e,At,Qr).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function D(t){return function(){return t}}const ar=Math.abs,q=Math.atan2,pt=Math.cos,uc=Math.max,Vn=Math.min,rt=Math.sin,St=Math.sqrt,V=1e-12,jt=Math.PI,Nn=jt/2,gn=2*jt;function oc(t){return t>1?0:t<-1?jt:Math.acos(t)}function sr(t){return t>=1?Nn:t<=-1?-Nn:Math.asin(t)}function Me(t){let n=3;return t.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{const r=Math.floor(e);if(!(r>=0))throw new RangeError(`invalid digits: ${e}`);n=r}return t},()=>new ys(n)}function ac(t){return t.innerRadius}function sc(t){return t.outerRadius}function fc(t){return t.startAngle}function cc(t){return t.endAngle}function lc(t){return t&&t.padAngle}function hc(t,n,e,r,i,u,o,a){var f=e-t,s=r-n,l=o-i,h=a-u,c=h*f-l*s;if(!(c*c<V))return c=(l*(n-u)-h*(t-i))/c,[t+c*f,n+c*s]}function sn(t,n,e,r,i,u,o){var a=t-e,f=n-r,s=(o?u:-u)/St(a*a+f*f),l=s*f,h=-s*a,c=t+l,g=n+h,d=e+l,y=r+h,_=(c+d)/2,w=(g+y)/2,k=d-c,b=y-g,M=k*k+b*b,S=i-u,m=c*y-d*g,N=(b<0?-1:1)*St(uc(0,S*S*M-m*m)),Y=(m*b-k*N)/M,I=(-m*k-b*N)/M,R=(m*b+k*N)/M,E=(-m*k+b*N)/M,x=Y-_,T=I-w,C=R-_,P=E-w;return x*x+T*T>C*C+P*P&&(Y=R,I=E),{cx:Y,cy:I,x01:-l,y01:-h,x11:Y*(i/S-1),y11:I*(i/S-1)}}function Nc(){var t=ac,n=sc,e=D(0),r=null,i=fc,u=cc,o=lc,a=null,f=Me(s);function s(){var l,h,c=+t.apply(this,arguments),g=+n.apply(this,arguments),d=i.apply(this,arguments)-Nn,y=u.apply(this,arguments)-Nn,_=ar(y-d),w=y>d;if(a||(a=l=f()),g<c&&(h=g,g=c,c=h),!(g>V))a.moveTo(0,0);else if(_>gn-V)a.moveTo(g*pt(d),g*rt(d)),a.arc(0,0,g,d,y,!w),c>V&&(a.moveTo(c*pt(y),c*rt(y)),a.arc(0,0,c,y,d,w));else{var k=d,b=y,M=d,S=y,m=_,N=_,Y=o.apply(this,arguments)/2,I=Y>V&&(r?+r.apply(this,arguments):St(c*c+g*g)),R=Vn(ar(g-c)/2,+e.apply(this,arguments)),E=R,x=R,T,C;if(I>V){var P=sr(I/c*rt(Y)),ot=sr(I/g*rt(Y));(m-=P*2)>V?(P*=w?1:-1,M+=P,S-=P):(m=0,M=S=(d+y)/2),(N-=ot*2)>V?(ot*=w?1:-1,k+=ot,b-=ot):(N=0,k=b=(d+y)/2)}var z=g*pt(k),B=g*rt(k),K=c*pt(S),O=c*rt(S);if(R>V){var Tt=g*pt(b),bt=g*rt(b),Rt=c*pt(M),Yt=c*rt(M),j;if(_<jt)if(j=hc(z,B,Rt,Yt,Tt,bt,K,O)){var Ht=z-j[0],It=B-j[1],Lt=Tt-j[0],v=bt-j[1],A=1/rt(oc((Ht*Lt+It*v)/(St(Ht*Ht+It*It)*St(Lt*Lt+v*v)))/2),$=St(j[0]*j[0]+j[1]*j[1]);E=Vn(R,(c-$)/(A-1)),x=Vn(R,(g-$)/(A+1))}else E=x=0}N>V?x>V?(T=sn(Rt,Yt,z,B,g,x,w),C=sn(Tt,bt,K,O,g,x,w),a.moveTo(T.cx+T.x01,T.cy+T.y01),x<R?a.arc(T.cx,T.cy,x,q(T.y01,T.x01),q(C.y01,C.x01),!w):(a.arc(T.cx,T.cy,x,q(T.y01,T.x01),q(T.y11,T.x11),!w),a.arc(0,0,g,q(T.cy+T.y11,T.cx+T.x11),q(C.cy+C.y11,C.cx+C.x11),!w),a.arc(C.cx,C.cy,x,q(C.y11,C.x11),q(C.y01,C.x01),!w))):(a.moveTo(z,B),a.arc(0,0,g,k,b,!w)):a.moveTo(z,B),!(c>V)||!(m>V)?a.lineTo(K,O):E>V?(T=sn(K,O,Tt,bt,c,-E,w),C=sn(z,B,Rt,Yt,c,-E,w),a.lineTo(T.cx+T.x01,T.cy+T.y01),E<R?a.arc(T.cx,T.cy,E,q(T.y01,T.x01),q(C.y01,C.x01),!w):(a.arc(T.cx,T.cy,E,q(T.y01,T.x01),q(T.y11,T.x11),!w),a.arc(0,0,c,q(T.cy+T.y11,T.cx+T.x11),q(C.cy+C.y11,C.cx+C.x11),w),a.arc(C.cx,C.cy,E,q(C.y11,C.x11),q(C.y01,C.x01),!w))):a.arc(0,0,c,S,M,w)}if(a.closePath(),l)return a=null,l+""||null}return s.centroid=function(){var l=(+t.apply(this,arguments)+ +n.apply(this,arguments))/2,h=(+i.apply(this,arguments)+ +u.apply(this,arguments))/2-jt/2;return[pt(h)*l,rt(h)*l]},s.innerRadius=function(l){return arguments.length?(t=typeof l=="function"?l:D(+l),s):t},s.outerRadius=function(l){return arguments.length?(n=typeof l=="function"?l:D(+l),s):n},s.cornerRadius=function(l){return arguments.length?(e=typeof l=="function"?l:D(+l),s):e},s.padRadius=function(l){return arguments.length?(r=l==null?null:typeof l=="function"?l:D(+l),s):r},s.startAngle=function(l){return arguments.length?(i=typeof l=="function"?l:D(+l),s):i},s.endAngle=function(l){return arguments.length?(u=typeof l=="function"?l:D(+l),s):u},s.padAngle=function(l){return arguments.length?(o=typeof l=="function"?l:D(+l),s):o},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function Te(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Kr(t){this._context=t}Kr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._context.lineTo(t,n);break}}};function jr(t){return new Kr(t)}function ti(t){return t[0]}function ni(t){return t[1]}function gc(t,n){var e=D(!0),r=null,i=jr,u=null,o=Me(a);t=typeof t=="function"?t:t===void 0?ti:D(t),n=typeof n=="function"?n:n===void 0?ni:D(n);function a(f){var s,l=(f=Te(f)).length,h,c=!1,g;for(r==null&&(u=i(g=o())),s=0;s<=l;++s)!(s<l&&e(h=f[s],s,f))===c&&((c=!c)?u.lineStart():u.lineEnd()),c&&u.point(+t(h,s,f),+n(h,s,f));if(g)return u=null,g+""||null}return a.x=function(f){return arguments.length?(t=typeof f=="function"?f:D(+f),a):t},a.y=function(f){return arguments.length?(n=typeof f=="function"?f:D(+f),a):n},a.defined=function(f){return arguments.length?(e=typeof f=="function"?f:D(!!f),a):e},a.curve=function(f){return arguments.length?(i=f,r!=null&&(u=i(r)),a):i},a.context=function(f){return arguments.length?(f==null?r=u=null:u=i(r=f),a):r},a}function $c(t,n,e){var r=null,i=D(!0),u=null,o=jr,a=null,f=Me(s);t=typeof t=="function"?t:t===void 0?ti:D(+t),n=typeof n=="function"?n:D(n===void 0?0:+n),e=typeof e=="function"?e:e===void 0?ni:D(+e);function s(h){var c,g,d,y=(h=Te(h)).length,_,w=!1,k,b=new Array(y),M=new Array(y);for(u==null&&(a=o(k=f())),c=0;c<=y;++c){if(!(c<y&&i(_=h[c],c,h))===w)if(w=!w)g=c,a.areaStart(),a.lineStart();else{for(a.lineEnd(),a.lineStart(),d=c-1;d>=g;--d)a.point(b[d],M[d]);a.lineEnd(),a.areaEnd()}w&&(b[c]=+t(_,c,h),M[c]=+n(_,c,h),a.point(r?+r(_,c,h):b[c],e?+e(_,c,h):M[c]))}if(k)return a=null,k+""||null}function l(){return gc().defined(i).curve(o).context(u)}return s.x=function(h){return arguments.length?(t=typeof h=="function"?h:D(+h),r=null,s):t},s.x0=function(h){return arguments.length?(t=typeof h=="function"?h:D(+h),s):t},s.x1=function(h){return arguments.length?(r=h==null?null:typeof h=="function"?h:D(+h),s):r},s.y=function(h){return arguments.length?(n=typeof h=="function"?h:D(+h),e=null,s):n},s.y0=function(h){return arguments.length?(n=typeof h=="function"?h:D(+h),s):n},s.y1=function(h){return arguments.length?(e=h==null?null:typeof h=="function"?h:D(+h),s):e},s.lineX0=s.lineY0=function(){return l().x(t).y(n)},s.lineY1=function(){return l().x(t).y(e)},s.lineX1=function(){return l().x(r).y(n)},s.defined=function(h){return arguments.length?(i=typeof h=="function"?h:D(!!h),s):i},s.curve=function(h){return arguments.length?(o=h,u!=null&&(a=o(u)),s):o},s.context=function(h){return arguments.length?(h==null?u=a=null:a=o(u=h),s):u},s}function pc(t,n){return n<t?-1:n>t?1:n>=t?0:NaN}function dc(t){return t}function Dc(){var t=dc,n=pc,e=null,r=D(0),i=D(gn),u=D(0);function o(a){var f,s=(a=Te(a)).length,l,h,c=0,g=new Array(s),d=new Array(s),y=+r.apply(this,arguments),_=Math.min(gn,Math.max(-gn,i.apply(this,arguments)-y)),w,k=Math.min(Math.abs(_)/s,u.apply(this,arguments)),b=k*(_<0?-1:1),M;for(f=0;f<s;++f)(M=d[g[f]=f]=+t(a[f],f,a))>0&&(c+=M);for(n!=null?g.sort(function(S,m){return n(d[S],d[m])}):e!=null&&g.sort(function(S,m){return e(a[S],a[m])}),f=0,h=c?(_-s*b)/c:0;f<s;++f,y=w)l=g[f],M=d[l],w=y+(M>0?M*h:0)+b,d[l]={data:a[l],index:f,value:M,startAngle:y,endAngle:w,padAngle:k};return d}return o.value=function(a){return arguments.length?(t=typeof a=="function"?a:D(+a),o):t},o.sortValues=function(a){return arguments.length?(n=a,e=null,o):n},o.sort=function(a){return arguments.length?(e=a,n=null,o):e},o.startAngle=function(a){return arguments.length?(r=typeof a=="function"?a:D(+a),o):r},o.endAngle=function(a){return arguments.length?(i=typeof a=="function"?a:D(+a),o):i},o.padAngle=function(a){return arguments.length?(u=typeof a=="function"?a:D(+a),o):u},o}function fr(t){return t<0?-1:1}function cr(t,n,e){var r=t._x1-t._x0,i=n-t._x1,u=(t._y1-t._y0)/(r||i<0&&-0),o=(e-t._y1)/(i||r<0&&-0),a=(u*i+o*r)/(r+i);return(fr(u)+fr(o))*Math.min(Math.abs(u),Math.abs(o),.5*Math.abs(a))||0}function lr(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function Xn(t,n,e){var r=t._x0,i=t._y0,u=t._x1,o=t._y1,a=(u-r)/3;t._context.bezierCurveTo(r+a,i+a*n,u-a,o-a*e,u,o)}function $n(t){this._context=t}$n.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:Xn(this,this._t0,lr(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(t=+t,n=+n,!(t===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,Xn(this,lr(this,e=cr(this,t,n)),e);break;default:Xn(this,this._t0,e=cr(this,t,n));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}};Object.create($n.prototype).point=function(t,n){$n.prototype.point.call(this,n,t)};function Uc(t){return new $n(t)}function Gt(t,n,e){this.k=t,this.x=n,this.y=e}Gt.prototype={constructor:Gt,scale:function(t){return t===1?this:new Gt(this.k*t,this.x,this.y)},translate:function(t,n){return t===0&n===0?this:new Gt(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};Gt.prototype;export{Mc as a,_c as b,ue as c,Sc as d,yc as e,xc as f,wc as g,hr as h,mc as i,gc as j,Uc as k,Is as l,vc as m,ls as n,kc as o,Cc as p,Tc as q,bc as r,Si as s,Qr as t,Ac as u,Dc as v,Nc as w,Ns as x,$c as y};
1
+ function ei(t){var n=0,e=t.children,r=e&&e.length;if(!r)n=1;else for(;--r>=0;)n+=e[r].value;t.value=n}function ri(){return this.eachAfter(ei)}function ii(t,n){let e=-1;for(const r of this)t.call(n,r,++e,this);return this}function ui(t,n){for(var e=this,r=[e],i,u,o=-1;e=r.pop();)if(t.call(n,e,++o,this),i=e.children)for(u=i.length-1;u>=0;--u)r.push(i[u]);return this}function oi(t,n){for(var e=this,r=[e],i=[],u,o,a,f=-1;e=r.pop();)if(i.push(e),u=e.children)for(o=0,a=u.length;o<a;++o)r.push(u[o]);for(;e=i.pop();)t.call(n,e,++f,this);return this}function ai(t,n){let e=-1;for(const r of this)if(t.call(n,r,++e,this))return r}function si(t){return this.eachAfter(function(n){for(var e=+t(n.data)||0,r=n.children,i=r&&r.length;--i>=0;)e+=r[i].value;n.value=e})}function fi(t){return this.eachBefore(function(n){n.children&&n.children.sort(t)})}function ci(t){for(var n=this,e=li(n,t),r=[n];n!==e;)n=n.parent,r.push(n);for(var i=r.length;t!==e;)r.splice(i,0,t),t=t.parent;return r}function li(t,n){if(t===n)return t;var e=t.ancestors(),r=n.ancestors(),i=null;for(t=e.pop(),n=r.pop();t===n;)i=t,t=e.pop(),n=r.pop();return i}function hi(){for(var t=this,n=[t];t=t.parent;)n.push(t);return n}function gi(){return Array.from(this)}function pi(){var t=[];return this.eachBefore(function(n){n.children||t.push(n)}),t}function di(){var t=this,n=[];return t.each(function(e){e!==t&&n.push({source:e.parent,target:e})}),n}function*mi(){var t=this,n,e=[t],r,i,u;do for(n=e.reverse(),e=[];t=n.pop();)if(yield t,r=t.children)for(i=0,u=r.length;i<u;++i)e.push(r[i]);while(e.length)}function hr(t,n){t instanceof Map?(t=[void 0,t],n===void 0&&(n=vi)):n===void 0&&(n=_i);for(var e=new pn(t),r,i=[e],u,o,a,f;r=i.pop();)if((o=n(r.data))&&(f=(o=Array.from(o)).length))for(r.children=o,a=f-1;a>=0;--a)i.push(u=o[a]=new pn(o[a])),u.parent=r,u.depth=r.depth+1;return e.eachBefore(xi)}function yi(){return hr(this).eachBefore(wi)}function _i(t){return t.children}function vi(t){return Array.isArray(t)?t[1]:null}function wi(t){t.data.value!==void 0&&(t.value=t.data.value),t.data=t.data.data}function xi(t){var n=0;do t.height=n;while((t=t.parent)&&t.height<++n)}function pn(t){this.data=t,this.depth=this.height=0,this.parent=null}pn.prototype=hr.prototype={constructor:pn,count:ri,each:ii,eachAfter:oi,eachBefore:ui,find:ai,sum:si,sort:fi,path:ci,ancestors:hi,descendants:gi,leaves:pi,links:di,copy:yi,[Symbol.iterator]:mi};function Mi(t){if(typeof t!="function")throw new Error;return t}function Pt(){return 0}function Ot(t){return function(){return t}}function Ti(t){t.x0=Math.round(t.x0),t.y0=Math.round(t.y0),t.x1=Math.round(t.x1),t.y1=Math.round(t.y1)}function bi(t,n,e,r,i){for(var u=t.children,o,a=-1,f=u.length,s=t.value&&(r-n)/t.value;++a<f;)o=u[a],o.y0=e,o.y1=i,o.x0=n,o.x1=n+=o.value*s}function ki(t,n,e,r,i){for(var u=t.children,o,a=-1,f=u.length,s=t.value&&(i-e)/t.value;++a<f;)o=u[a],o.x0=n,o.x1=r,o.y0=e,o.y1=e+=o.value*s}var Ci=(1+Math.sqrt(5))/2;function Ai(t,n,e,r,i,u){for(var o=[],a=n.children,f,s,l=0,h=0,c=a.length,g,d,y=n.value,_,w,k,b,M,S,m;l<c;){g=i-e,d=u-r;do _=a[h++].value;while(!_&&h<c);for(w=k=_,S=Math.max(d/g,g/d)/(y*t),m=_*_*S,M=Math.max(k/m,m/w);h<c;++h){if(_+=s=a[h].value,s<w&&(w=s),s>k&&(k=s),m=_*_*S,b=Math.max(k/m,m/w),b>M){_-=s;break}M=b}o.push(f={value:_,dice:g<d,children:a.slice(l,h)}),f.dice?bi(f,e,r,i,y?r+=d*_/y:u):ki(f,e,r,y?e+=g*_/y:i,u),y-=_,l=h}return o}const Si=(function t(n){function e(r,i,u,o,a){Ai(n,r,i,u,o,a)}return e.ratio=function(r){return t((r=+r)>1?r:1)},e})(Ci);function mc(){var t=Si,n=!1,e=1,r=1,i=[0],u=Pt,o=Pt,a=Pt,f=Pt,s=Pt;function l(c){return c.x0=c.y0=0,c.x1=e,c.y1=r,c.eachBefore(h),i=[0],n&&c.eachBefore(Ti),c}function h(c){var g=i[c.depth],d=c.x0+g,y=c.y0+g,_=c.x1-g,w=c.y1-g;_<d&&(d=_=(d+_)/2),w<y&&(y=w=(y+w)/2),c.x0=d,c.y0=y,c.x1=_,c.y1=w,c.children&&(g=i[c.depth+1]=u(c)/2,d+=s(c)-g,y+=o(c)-g,_-=a(c)-g,w-=f(c)-g,_<d&&(d=_=(d+_)/2),w<y&&(y=w=(y+w)/2),t(c,d,y,_,w))}return l.round=function(c){return arguments.length?(n=!!c,l):n},l.size=function(c){return arguments.length?(e=+c[0],r=+c[1],l):[e,r]},l.tile=function(c){return arguments.length?(t=Mi(c),l):t},l.padding=function(c){return arguments.length?l.paddingInner(c).paddingOuter(c):l.paddingInner()},l.paddingInner=function(c){return arguments.length?(u=typeof c=="function"?c:Ot(+c),l):u},l.paddingOuter=function(c){return arguments.length?l.paddingTop(c).paddingRight(c).paddingBottom(c).paddingLeft(c):l.paddingTop()},l.paddingTop=function(c){return arguments.length?(o=typeof c=="function"?c:Ot(+c),l):o},l.paddingRight=function(c){return arguments.length?(a=typeof c=="function"?c:Ot(+c),l):a},l.paddingBottom=function(c){return arguments.length?(f=typeof c=="function"?c:Ot(+c),l):f},l.paddingLeft=function(c){return arguments.length?(s=typeof c=="function"?c:Ot(+c),l):s},l}function fn(t,n){return t==null||n==null?NaN:t<n?-1:t>n?1:t>=n?0:NaN}function Ni(t,n){return t==null||n==null?NaN:n<t?-1:n>t?1:n>=t?0:NaN}function ue(t){let n,e,r;t.length!==2?(n=fn,e=(a,f)=>fn(t(a),f),r=(a,f)=>t(a)-f):(n=t===fn||t===Ni?t:$i,e=t,r=t);function i(a,f,s=0,l=a.length){if(s<l){if(n(f,f)!==0)return l;do{const h=s+l>>>1;e(a[h],f)<0?s=h+1:l=h}while(s<l)}return s}function u(a,f,s=0,l=a.length){if(s<l){if(n(f,f)!==0)return l;do{const h=s+l>>>1;e(a[h],f)<=0?s=h+1:l=h}while(s<l)}return s}function o(a,f,s=0,l=a.length){const h=i(a,f,s,l-1);return h>s&&r(a[h-1],f)>-r(a[h],f)?h-1:h}return{left:i,center:o,right:u}}function $i(){return 0}function Di(t){return t===null?NaN:+t}const Ui=ue(fn),Fi=Ui.right;ue(Di).center;function yc(t,n){let e,r;if(n===void 0)for(const i of t)i!=null&&(e===void 0?i>=i&&(e=r=i):(e>i&&(e=i),r<i&&(r=i)));else{let i=-1;for(let u of t)(u=n(u,++i,t))!=null&&(e===void 0?u>=u&&(e=r=u):(e>u&&(e=u),r<u&&(r=u)))}return[e,r]}class ke extends Map{constructor(n,e=Yi){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:e}}),n!=null)for(const[r,i]of n)this.set(r,i)}get(n){return super.get(Ce(this,n))}has(n){return super.has(Ce(this,n))}set(n,e){return super.set(Ei(this,n),e)}delete(n){return super.delete(Ri(this,n))}}function Ce({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):e}function Ei({_intern:t,_key:n},e){const r=n(e);return t.has(r)?t.get(r):(t.set(r,e),e)}function Ri({_intern:t,_key:n},e){const r=n(e);return t.has(r)&&(e=t.get(r),t.delete(r)),e}function Yi(t){return t!==null&&typeof t=="object"?t.valueOf():t}const Hi=Math.sqrt(50),Ii=Math.sqrt(10),Li=Math.sqrt(2);function dn(t,n,e){const r=(n-t)/Math.max(0,e),i=Math.floor(Math.log10(r)),u=r/Math.pow(10,i),o=u>=Hi?10:u>=Ii?5:u>=Li?2:1;let a,f,s;return i<0?(s=Math.pow(10,-i)/o,a=Math.round(t*s),f=Math.round(n*s),a/s<t&&++a,f/s>n&&--f,s=-s):(s=Math.pow(10,i)*o,a=Math.round(t/s),f=Math.round(n/s),a*s<t&&++a,f*s>n&&--f),f<a&&.5<=e&&e<2?dn(t,n,e*2):[a,f,s]}function Pi(t,n,e){if(n=+n,t=+t,e=+e,!(e>0))return[];if(t===n)return[t];const r=n<t,[i,u,o]=r?dn(n,t,e):dn(t,n,e);if(!(u>=i))return[];const a=u-i+1,f=new Array(a);if(r)if(o<0)for(let s=0;s<a;++s)f[s]=(u-s)/-o;else for(let s=0;s<a;++s)f[s]=(u-s)*o;else if(o<0)for(let s=0;s<a;++s)f[s]=(i+s)/-o;else for(let s=0;s<a;++s)f[s]=(i+s)*o;return f}function zn(t,n,e){return n=+n,t=+t,e=+e,dn(t,n,e)[2]}function Bn(t,n,e){n=+n,t=+t,e=+e;const r=n<t,i=r?zn(n,t,e):zn(t,n,e);return(r?-1:1)*(i<0?1/-i:i)}function _c(t,n){let e;for(const r of t)r!=null&&(e<r||e===void 0&&r>=r)&&(e=r);return e}function vc(t,n){let e;for(const r of t)r!=null&&(e>r||e===void 0&&r>=r)&&(e=r);return e}function Oi(t){return t}var Rn=1,Yn=2,Zn=3,zt=4,Ae=1e-6;function qi(t){return"translate("+t+",0)"}function Wi(t){return"translate(0,"+t+")"}function Vi(t){return n=>+t(n)}function Xi(t,n){return n=Math.max(0,t.bandwidth()-n*2)/2,t.round()&&(n=Math.round(n)),e=>+t(e)+n}function zi(){return!this.__axis}function gr(t,n){var e=[],r=null,i=null,u=6,o=6,a=3,f=typeof window<"u"&&window.devicePixelRatio>1?0:.5,s=t===Rn||t===zt?-1:1,l=t===zt||t===Yn?"x":"y",h=t===Rn||t===Zn?qi:Wi;function c(g){var d=r??(n.ticks?n.ticks.apply(n,e):n.domain()),y=i??(n.tickFormat?n.tickFormat.apply(n,e):Oi),_=Math.max(u,0)+a,w=n.range(),k=+w[0]+f,b=+w[w.length-1]+f,M=(n.bandwidth?Xi:Vi)(n.copy(),f),S=g.selection?g.selection():g,m=S.selectAll(".domain").data([null]),N=S.selectAll(".tick").data(d,n).order(),Y=N.exit(),I=N.enter().append("g").attr("class","tick"),R=N.select("line"),E=N.select("text");m=m.merge(m.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),N=N.merge(I),R=R.merge(I.append("line").attr("stroke","currentColor").attr(l+"2",s*u)),E=E.merge(I.append("text").attr("fill","currentColor").attr(l,s*_).attr("dy",t===Rn?"0em":t===Zn?"0.71em":"0.32em")),g!==S&&(m=m.transition(g),N=N.transition(g),R=R.transition(g),E=E.transition(g),Y=Y.transition(g).attr("opacity",Ae).attr("transform",function(x){return isFinite(x=M(x))?h(x+f):this.getAttribute("transform")}),I.attr("opacity",Ae).attr("transform",function(x){var T=this.parentNode.__axis;return h((T&&isFinite(T=T(x))?T:M(x))+f)})),Y.remove(),m.attr("d",t===zt||t===Yn?o?"M"+s*o+","+k+"H"+f+"V"+b+"H"+s*o:"M"+f+","+k+"V"+b:o?"M"+k+","+s*o+"V"+f+"H"+b+"V"+s*o:"M"+k+","+f+"H"+b),N.attr("opacity",1).attr("transform",function(x){return h(M(x)+f)}),R.attr(l+"2",s*u),E.attr(l,s*_).text(y),S.filter(zi).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",t===Yn?"start":t===zt?"end":"middle"),S.each(function(){this.__axis=M})}return c.scale=function(g){return arguments.length?(n=g,c):n},c.ticks=function(){return e=Array.from(arguments),c},c.tickArguments=function(g){return arguments.length?(e=g==null?[]:Array.from(g),c):e.slice()},c.tickValues=function(g){return arguments.length?(r=g==null?null:Array.from(g),c):r&&r.slice()},c.tickFormat=function(g){return arguments.length?(i=g,c):i},c.tickSize=function(g){return arguments.length?(u=o=+g,c):u},c.tickSizeInner=function(g){return arguments.length?(u=+g,c):u},c.tickSizeOuter=function(g){return arguments.length?(o=+g,c):o},c.tickPadding=function(g){return arguments.length?(a=+g,c):a},c.offset=function(g){return arguments.length?(f=+g,c):f},c}function wc(t){return gr(Zn,t)}function xc(t){return gr(zt,t)}var Bi={value:()=>{}};function pr(){for(var t=0,n=arguments.length,e={},r;t<n;++t){if(!(r=arguments[t]+"")||r in e||/[\s.]/.test(r))throw new Error("illegal type: "+r);e[r]=[]}return new cn(e)}function cn(t){this._=t}function Zi(t,n){return t.trim().split(/^|\s+/).map(function(e){var r="",i=e.indexOf(".");if(i>=0&&(r=e.slice(i+1),e=e.slice(0,i)),e&&!n.hasOwnProperty(e))throw new Error("unknown type: "+e);return{type:e,name:r}})}cn.prototype=pr.prototype={constructor:cn,on:function(t,n){var e=this._,r=Zi(t+"",e),i,u=-1,o=r.length;if(arguments.length<2){for(;++u<o;)if((i=(t=r[u]).type)&&(i=Gi(e[i],t.name)))return i;return}if(n!=null&&typeof n!="function")throw new Error("invalid callback: "+n);for(;++u<o;)if(i=(t=r[u]).type)e[i]=Se(e[i],t.name,n);else if(n==null)for(i in e)e[i]=Se(e[i],t.name,null);return this},copy:function(){var t={},n=this._;for(var e in n)t[e]=n[e].slice();return new cn(t)},call:function(t,n){if((i=arguments.length-2)>0)for(var e=new Array(i),r=0,i,u;r<i;++r)e[r]=arguments[r+2];if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(u=this._[t],r=0,i=u.length;r<i;++r)u[r].value.apply(n,e)},apply:function(t,n,e){if(!this._.hasOwnProperty(t))throw new Error("unknown type: "+t);for(var r=this._[t],i=0,u=r.length;i<u;++i)r[i].value.apply(n,e)}};function Gi(t,n){for(var e=0,r=t.length,i;e<r;++e)if((i=t[e]).name===n)return i.value}function Se(t,n,e){for(var r=0,i=t.length;r<i;++r)if(t[r].name===n){t[r]=Bi,t=t.slice(0,r).concat(t.slice(r+1));break}return e!=null&&t.push({name:n,value:e}),t}var Gn="http://www.w3.org/1999/xhtml";const Ne={svg:"http://www.w3.org/2000/svg",xhtml:Gn,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Dn(t){var n=t+="",e=n.indexOf(":");return e>=0&&(n=t.slice(0,e))!=="xmlns"&&(t=t.slice(e+1)),Ne.hasOwnProperty(n)?{space:Ne[n],local:t}:t}function Qi(t){return function(){var n=this.ownerDocument,e=this.namespaceURI;return e===Gn&&n.documentElement.namespaceURI===Gn?n.createElement(t):n.createElementNS(e,t)}}function Ji(t){return function(){return this.ownerDocument.createElementNS(t.space,t.local)}}function dr(t){var n=Dn(t);return(n.local?Ji:Qi)(n)}function Ki(){}function oe(t){return t==null?Ki:function(){return this.querySelector(t)}}function ji(t){typeof t!="function"&&(t=oe(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=new Array(o),f,s,l=0;l<o;++l)(f=u[l])&&(s=t.call(f,f.__data__,l,u))&&("__data__"in f&&(s.__data__=f.__data__),a[l]=s);return new Q(r,this._parents)}function tu(t){return t==null?[]:Array.isArray(t)?t:Array.from(t)}function nu(){return[]}function mr(t){return t==null?nu:function(){return this.querySelectorAll(t)}}function eu(t){return function(){return tu(t.apply(this,arguments))}}function ru(t){typeof t=="function"?t=eu(t):t=mr(t);for(var n=this._groups,e=n.length,r=[],i=[],u=0;u<e;++u)for(var o=n[u],a=o.length,f,s=0;s<a;++s)(f=o[s])&&(r.push(t.call(f,f.__data__,s,o)),i.push(f));return new Q(r,i)}function yr(t){return function(){return this.matches(t)}}function _r(t){return function(n){return n.matches(t)}}var iu=Array.prototype.find;function uu(t){return function(){return iu.call(this.children,t)}}function ou(){return this.firstElementChild}function au(t){return this.select(t==null?ou:uu(typeof t=="function"?t:_r(t)))}var su=Array.prototype.filter;function fu(){return Array.from(this.children)}function cu(t){return function(){return su.call(this.children,t)}}function lu(t){return this.selectAll(t==null?fu:cu(typeof t=="function"?t:_r(t)))}function hu(t){typeof t!="function"&&(t=yr(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=[],f,s=0;s<o;++s)(f=u[s])&&t.call(f,f.__data__,s,u)&&a.push(f);return new Q(r,this._parents)}function vr(t){return new Array(t.length)}function gu(){return new Q(this._enter||this._groups.map(vr),this._parents)}function mn(t,n){this.ownerDocument=t.ownerDocument,this.namespaceURI=t.namespaceURI,this._next=null,this._parent=t,this.__data__=n}mn.prototype={constructor:mn,appendChild:function(t){return this._parent.insertBefore(t,this._next)},insertBefore:function(t,n){return this._parent.insertBefore(t,n)},querySelector:function(t){return this._parent.querySelector(t)},querySelectorAll:function(t){return this._parent.querySelectorAll(t)}};function pu(t){return function(){return t}}function du(t,n,e,r,i,u){for(var o=0,a,f=n.length,s=u.length;o<s;++o)(a=n[o])?(a.__data__=u[o],r[o]=a):e[o]=new mn(t,u[o]);for(;o<f;++o)(a=n[o])&&(i[o]=a)}function mu(t,n,e,r,i,u,o){var a,f,s=new Map,l=n.length,h=u.length,c=new Array(l),g;for(a=0;a<l;++a)(f=n[a])&&(c[a]=g=o.call(f,f.__data__,a,n)+"",s.has(g)?i[a]=f:s.set(g,f));for(a=0;a<h;++a)g=o.call(t,u[a],a,u)+"",(f=s.get(g))?(r[a]=f,f.__data__=u[a],s.delete(g)):e[a]=new mn(t,u[a]);for(a=0;a<l;++a)(f=n[a])&&s.get(c[a])===f&&(i[a]=f)}function yu(t){return t.__data__}function _u(t,n){if(!arguments.length)return Array.from(this,yu);var e=n?mu:du,r=this._parents,i=this._groups;typeof t!="function"&&(t=pu(t));for(var u=i.length,o=new Array(u),a=new Array(u),f=new Array(u),s=0;s<u;++s){var l=r[s],h=i[s],c=h.length,g=vu(t.call(l,l&&l.__data__,s,r)),d=g.length,y=a[s]=new Array(d),_=o[s]=new Array(d),w=f[s]=new Array(c);e(l,h,y,_,w,g,n);for(var k=0,b=0,M,S;k<d;++k)if(M=y[k]){for(k>=b&&(b=k+1);!(S=_[b])&&++b<d;);M._next=S||null}}return o=new Q(o,r),o._enter=a,o._exit=f,o}function vu(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function wu(){return new Q(this._exit||this._groups.map(vr),this._parents)}function xu(t,n,e){var r=this.enter(),i=this,u=this.exit();return typeof t=="function"?(r=t(r),r&&(r=r.selection())):r=r.append(t+""),n!=null&&(i=n(i),i&&(i=i.selection())),e==null?u.remove():e(u),r&&i?r.merge(i).order():i}function Mu(t){for(var n=t.selection?t.selection():t,e=this._groups,r=n._groups,i=e.length,u=r.length,o=Math.min(i,u),a=new Array(i),f=0;f<o;++f)for(var s=e[f],l=r[f],h=s.length,c=a[f]=new Array(h),g,d=0;d<h;++d)(g=s[d]||l[d])&&(c[d]=g);for(;f<i;++f)a[f]=e[f];return new Q(a,this._parents)}function Tu(){for(var t=this._groups,n=-1,e=t.length;++n<e;)for(var r=t[n],i=r.length-1,u=r[i],o;--i>=0;)(o=r[i])&&(u&&o.compareDocumentPosition(u)^4&&u.parentNode.insertBefore(o,u),u=o);return this}function bu(t){t||(t=ku);function n(h,c){return h&&c?t(h.__data__,c.__data__):!h-!c}for(var e=this._groups,r=e.length,i=new Array(r),u=0;u<r;++u){for(var o=e[u],a=o.length,f=i[u]=new Array(a),s,l=0;l<a;++l)(s=o[l])&&(f[l]=s);f.sort(n)}return new Q(i,this._parents).order()}function ku(t,n){return t<n?-1:t>n?1:t>=n?0:NaN}function Cu(){var t=arguments[0];return arguments[0]=this,t.apply(null,arguments),this}function Au(){return Array.from(this)}function Su(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,u=r.length;i<u;++i){var o=r[i];if(o)return o}return null}function Nu(){let t=0;for(const n of this)++t;return t}function $u(){return!this.node()}function Du(t){for(var n=this._groups,e=0,r=n.length;e<r;++e)for(var i=n[e],u=0,o=i.length,a;u<o;++u)(a=i[u])&&t.call(a,a.__data__,u,i);return this}function Uu(t){return function(){this.removeAttribute(t)}}function Fu(t){return function(){this.removeAttributeNS(t.space,t.local)}}function Eu(t,n){return function(){this.setAttribute(t,n)}}function Ru(t,n){return function(){this.setAttributeNS(t.space,t.local,n)}}function Yu(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttribute(t):this.setAttribute(t,e)}}function Hu(t,n){return function(){var e=n.apply(this,arguments);e==null?this.removeAttributeNS(t.space,t.local):this.setAttributeNS(t.space,t.local,e)}}function Iu(t,n){var e=Dn(t);if(arguments.length<2){var r=this.node();return e.local?r.getAttributeNS(e.space,e.local):r.getAttribute(e)}return this.each((n==null?e.local?Fu:Uu:typeof n=="function"?e.local?Hu:Yu:e.local?Ru:Eu)(e,n))}function wr(t){return t.ownerDocument&&t.ownerDocument.defaultView||t.document&&t||t.defaultView}function Lu(t){return function(){this.style.removeProperty(t)}}function Pu(t,n,e){return function(){this.style.setProperty(t,n,e)}}function Ou(t,n,e){return function(){var r=n.apply(this,arguments);r==null?this.style.removeProperty(t):this.style.setProperty(t,r,e)}}function qu(t,n,e){return arguments.length>1?this.each((n==null?Lu:typeof n=="function"?Ou:Pu)(t,n,e??"")):$t(this.node(),t)}function $t(t,n){return t.style.getPropertyValue(n)||wr(t).getComputedStyle(t,null).getPropertyValue(n)}function Wu(t){return function(){delete this[t]}}function Vu(t,n){return function(){this[t]=n}}function Xu(t,n){return function(){var e=n.apply(this,arguments);e==null?delete this[t]:this[t]=e}}function zu(t,n){return arguments.length>1?this.each((n==null?Wu:typeof n=="function"?Xu:Vu)(t,n)):this.node()[t]}function xr(t){return t.trim().split(/^|\s+/)}function ae(t){return t.classList||new Mr(t)}function Mr(t){this._node=t,this._names=xr(t.getAttribute("class")||"")}Mr.prototype={add:function(t){var n=this._names.indexOf(t);n<0&&(this._names.push(t),this._node.setAttribute("class",this._names.join(" ")))},remove:function(t){var n=this._names.indexOf(t);n>=0&&(this._names.splice(n,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(t){return this._names.indexOf(t)>=0}};function Tr(t,n){for(var e=ae(t),r=-1,i=n.length;++r<i;)e.add(n[r])}function br(t,n){for(var e=ae(t),r=-1,i=n.length;++r<i;)e.remove(n[r])}function Bu(t){return function(){Tr(this,t)}}function Zu(t){return function(){br(this,t)}}function Gu(t,n){return function(){(n.apply(this,arguments)?Tr:br)(this,t)}}function Qu(t,n){var e=xr(t+"");if(arguments.length<2){for(var r=ae(this.node()),i=-1,u=e.length;++i<u;)if(!r.contains(e[i]))return!1;return!0}return this.each((typeof n=="function"?Gu:n?Bu:Zu)(e,n))}function Ju(){this.textContent=""}function Ku(t){return function(){this.textContent=t}}function ju(t){return function(){var n=t.apply(this,arguments);this.textContent=n??""}}function to(t){return arguments.length?this.each(t==null?Ju:(typeof t=="function"?ju:Ku)(t)):this.node().textContent}function no(){this.innerHTML=""}function eo(t){return function(){this.innerHTML=t}}function ro(t){return function(){var n=t.apply(this,arguments);this.innerHTML=n??""}}function io(t){return arguments.length?this.each(t==null?no:(typeof t=="function"?ro:eo)(t)):this.node().innerHTML}function uo(){this.nextSibling&&this.parentNode.appendChild(this)}function oo(){return this.each(uo)}function ao(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function so(){return this.each(ao)}function fo(t){var n=typeof t=="function"?t:dr(t);return this.select(function(){return this.appendChild(n.apply(this,arguments))})}function co(){return null}function lo(t,n){var e=typeof t=="function"?t:dr(t),r=n==null?co:typeof n=="function"?n:oe(n);return this.select(function(){return this.insertBefore(e.apply(this,arguments),r.apply(this,arguments)||null)})}function ho(){var t=this.parentNode;t&&t.removeChild(this)}function go(){return this.each(ho)}function po(){var t=this.cloneNode(!1),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function mo(){var t=this.cloneNode(!0),n=this.parentNode;return n?n.insertBefore(t,this.nextSibling):t}function yo(t){return this.select(t?mo:po)}function _o(t){return arguments.length?this.property("__data__",t):this.node().__data__}function vo(t){return function(n){t.call(this,n,this.__data__)}}function wo(t){return t.trim().split(/^|\s+/).map(function(n){var e="",r=n.indexOf(".");return r>=0&&(e=n.slice(r+1),n=n.slice(0,r)),{type:n,name:e}})}function xo(t){return function(){var n=this.__on;if(n){for(var e=0,r=-1,i=n.length,u;e<i;++e)u=n[e],(!t.type||u.type===t.type)&&u.name===t.name?this.removeEventListener(u.type,u.listener,u.options):n[++r]=u;++r?n.length=r:delete this.__on}}}function Mo(t,n,e){return function(){var r=this.__on,i,u=vo(n);if(r){for(var o=0,a=r.length;o<a;++o)if((i=r[o]).type===t.type&&i.name===t.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=u,i.options=e),i.value=n;return}}this.addEventListener(t.type,u,e),i={type:t.type,name:t.name,value:n,listener:u,options:e},r?r.push(i):this.__on=[i]}}function To(t,n,e){var r=wo(t+""),i,u=r.length,o;if(arguments.length<2){var a=this.node().__on;if(a){for(var f=0,s=a.length,l;f<s;++f)for(i=0,l=a[f];i<u;++i)if((o=r[i]).type===l.type&&o.name===l.name)return l.value}return}for(a=n?Mo:xo,i=0;i<u;++i)this.each(a(r[i],n,e));return this}function kr(t,n,e){var r=wr(t),i=r.CustomEvent;typeof i=="function"?i=new i(n,e):(i=r.document.createEvent("Event"),e?(i.initEvent(n,e.bubbles,e.cancelable),i.detail=e.detail):i.initEvent(n,!1,!1)),t.dispatchEvent(i)}function bo(t,n){return function(){return kr(this,t,n)}}function ko(t,n){return function(){return kr(this,t,n.apply(this,arguments))}}function Co(t,n){return this.each((typeof n=="function"?ko:bo)(t,n))}function*Ao(){for(var t=this._groups,n=0,e=t.length;n<e;++n)for(var r=t[n],i=0,u=r.length,o;i<u;++i)(o=r[i])&&(yield o)}var Cr=[null];function Q(t,n){this._groups=t,this._parents=n}function tn(){return new Q([[document.documentElement]],Cr)}function So(){return this}Q.prototype=tn.prototype={constructor:Q,select:ji,selectAll:ru,selectChild:au,selectChildren:lu,filter:hu,data:_u,enter:gu,exit:wu,join:xu,merge:Mu,selection:So,order:Tu,sort:bu,call:Cu,nodes:Au,node:Su,size:Nu,empty:$u,each:Du,attr:Iu,style:qu,property:zu,classed:Qu,text:to,html:io,raise:oo,lower:so,append:fo,insert:lo,remove:go,clone:yo,datum:_o,on:To,dispatch:Co,[Symbol.iterator]:Ao};function Mc(t){return typeof t=="string"?new Q([[document.querySelector(t)]],[document.documentElement]):new Q([[t]],Cr)}function No(t){let n;for(;n=t.sourceEvent;)t=n;return t}function Tc(t,n){if(t=No(t),n===void 0&&(n=t.currentTarget),n){var e=n.ownerSVGElement||n;if(e.createSVGPoint){var r=e.createSVGPoint();return r.x=t.clientX,r.y=t.clientY,r=r.matrixTransform(n.getScreenCTM().inverse()),[r.x,r.y]}if(n.getBoundingClientRect){var i=n.getBoundingClientRect();return[t.clientX-i.left-n.clientLeft,t.clientY-i.top-n.clientTop]}}return[t.pageX,t.pageY]}function se(t,n,e){t.prototype=n.prototype=e,e.constructor=t}function Ar(t,n){var e=Object.create(t.prototype);for(var r in n)e[r]=n[r];return e}function nn(){}var Qt=.7,yn=1/Qt,Nt="\\s*([+-]?\\d+)\\s*",Jt="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",it="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",$o=/^#([0-9a-f]{3,8})$/,Do=new RegExp(`^rgb\\(${Nt},${Nt},${Nt}\\)$`),Uo=new RegExp(`^rgb\\(${it},${it},${it}\\)$`),Fo=new RegExp(`^rgba\\(${Nt},${Nt},${Nt},${Jt}\\)$`),Eo=new RegExp(`^rgba\\(${it},${it},${it},${Jt}\\)$`),Ro=new RegExp(`^hsl\\(${Jt},${it},${it}\\)$`),Yo=new RegExp(`^hsla\\(${Jt},${it},${it},${Jt}\\)$`),$e={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};se(nn,_t,{copy(t){return Object.assign(new this.constructor,this,t)},displayable(){return this.rgb().displayable()},hex:De,formatHex:De,formatHex8:Ho,formatHsl:Io,formatRgb:Ue,toString:Ue});function De(){return this.rgb().formatHex()}function Ho(){return this.rgb().formatHex8()}function Io(){return Sr(this).formatHsl()}function Ue(){return this.rgb().formatRgb()}function _t(t){var n,e;return t=(t+"").trim().toLowerCase(),(n=$o.exec(t))?(e=n[1].length,n=parseInt(n[1],16),e===6?Fe(n):e===3?new X(n>>8&15|n>>4&240,n>>4&15|n&240,(n&15)<<4|n&15,1):e===8?rn(n>>24&255,n>>16&255,n>>8&255,(n&255)/255):e===4?rn(n>>12&15|n>>8&240,n>>8&15|n>>4&240,n>>4&15|n&240,((n&15)<<4|n&15)/255):null):(n=Do.exec(t))?new X(n[1],n[2],n[3],1):(n=Uo.exec(t))?new X(n[1]*255/100,n[2]*255/100,n[3]*255/100,1):(n=Fo.exec(t))?rn(n[1],n[2],n[3],n[4]):(n=Eo.exec(t))?rn(n[1]*255/100,n[2]*255/100,n[3]*255/100,n[4]):(n=Ro.exec(t))?Ye(n[1],n[2]/100,n[3]/100,1):(n=Yo.exec(t))?Ye(n[1],n[2]/100,n[3]/100,n[4]):$e.hasOwnProperty(t)?Fe($e[t]):t==="transparent"?new X(NaN,NaN,NaN,0):null}function Fe(t){return new X(t>>16&255,t>>8&255,t&255,1)}function rn(t,n,e,r){return r<=0&&(t=n=e=NaN),new X(t,n,e,r)}function Lo(t){return t instanceof nn||(t=_t(t)),t?(t=t.rgb(),new X(t.r,t.g,t.b,t.opacity)):new X}function Qn(t,n,e,r){return arguments.length===1?Lo(t):new X(t,n,e,r??1)}function X(t,n,e,r){this.r=+t,this.g=+n,this.b=+e,this.opacity=+r}se(X,Qn,Ar(nn,{brighter(t){return t=t==null?yn:Math.pow(yn,t),new X(this.r*t,this.g*t,this.b*t,this.opacity)},darker(t){return t=t==null?Qt:Math.pow(Qt,t),new X(this.r*t,this.g*t,this.b*t,this.opacity)},rgb(){return this},clamp(){return new X(yt(this.r),yt(this.g),yt(this.b),_n(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:Ee,formatHex:Ee,formatHex8:Po,formatRgb:Re,toString:Re}));function Ee(){return`#${mt(this.r)}${mt(this.g)}${mt(this.b)}`}function Po(){return`#${mt(this.r)}${mt(this.g)}${mt(this.b)}${mt((isNaN(this.opacity)?1:this.opacity)*255)}`}function Re(){const t=_n(this.opacity);return`${t===1?"rgb(":"rgba("}${yt(this.r)}, ${yt(this.g)}, ${yt(this.b)}${t===1?")":`, ${t})`}`}function _n(t){return isNaN(t)?1:Math.max(0,Math.min(1,t))}function yt(t){return Math.max(0,Math.min(255,Math.round(t)||0))}function mt(t){return t=yt(t),(t<16?"0":"")+t.toString(16)}function Ye(t,n,e,r){return r<=0?t=n=e=NaN:e<=0||e>=1?t=n=NaN:n<=0&&(t=NaN),new nt(t,n,e,r)}function Sr(t){if(t instanceof nt)return new nt(t.h,t.s,t.l,t.opacity);if(t instanceof nn||(t=_t(t)),!t)return new nt;if(t instanceof nt)return t;t=t.rgb();var n=t.r/255,e=t.g/255,r=t.b/255,i=Math.min(n,e,r),u=Math.max(n,e,r),o=NaN,a=u-i,f=(u+i)/2;return a?(n===u?o=(e-r)/a+(e<r)*6:e===u?o=(r-n)/a+2:o=(n-e)/a+4,a/=f<.5?u+i:2-u-i,o*=60):a=f>0&&f<1?0:o,new nt(o,a,f,t.opacity)}function Oo(t,n,e,r){return arguments.length===1?Sr(t):new nt(t,n,e,r??1)}function nt(t,n,e,r){this.h=+t,this.s=+n,this.l=+e,this.opacity=+r}se(nt,Oo,Ar(nn,{brighter(t){return t=t==null?yn:Math.pow(yn,t),new nt(this.h,this.s,this.l*t,this.opacity)},darker(t){return t=t==null?Qt:Math.pow(Qt,t),new nt(this.h,this.s,this.l*t,this.opacity)},rgb(){var t=this.h%360+(this.h<0)*360,n=isNaN(t)||isNaN(this.s)?0:this.s,e=this.l,r=e+(e<.5?e:1-e)*n,i=2*e-r;return new X(Hn(t>=240?t-240:t+120,i,r),Hn(t,i,r),Hn(t<120?t+240:t-120,i,r),this.opacity)},clamp(){return new nt(He(this.h),un(this.s),un(this.l),_n(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const t=_n(this.opacity);return`${t===1?"hsl(":"hsla("}${He(this.h)}, ${un(this.s)*100}%, ${un(this.l)*100}%${t===1?")":`, ${t})`}`}}));function He(t){return t=(t||0)%360,t<0?t+360:t}function un(t){return Math.max(0,Math.min(1,t||0))}function Hn(t,n,e){return(t<60?n+(e-n)*t/60:t<180?e:t<240?n+(e-n)*(240-t)/60:n)*255}const fe=t=>()=>t;function qo(t,n){return function(e){return t+e*n}}function Wo(t,n,e){return t=Math.pow(t,e),n=Math.pow(n,e)-t,e=1/e,function(r){return Math.pow(t+r*n,e)}}function Vo(t){return(t=+t)==1?Nr:function(n,e){return e-n?Wo(n,e,t):fe(isNaN(n)?e:n)}}function Nr(t,n){var e=n-t;return e?qo(t,e):fe(isNaN(t)?n:t)}const vn=(function t(n){var e=Vo(n);function r(i,u){var o=e((i=Qn(i)).r,(u=Qn(u)).r),a=e(i.g,u.g),f=e(i.b,u.b),s=Nr(i.opacity,u.opacity);return function(l){return i.r=o(l),i.g=a(l),i.b=f(l),i.opacity=s(l),i+""}}return r.gamma=t,r})(1);function Xo(t,n){n||(n=[]);var e=t?Math.min(n.length,t.length):0,r=n.slice(),i;return function(u){for(i=0;i<e;++i)r[i]=t[i]*(1-u)+n[i]*u;return r}}function zo(t){return ArrayBuffer.isView(t)&&!(t instanceof DataView)}function Bo(t,n){var e=n?n.length:0,r=t?Math.min(e,t.length):0,i=new Array(r),u=new Array(e),o;for(o=0;o<r;++o)i[o]=ce(t[o],n[o]);for(;o<e;++o)u[o]=n[o];return function(a){for(o=0;o<r;++o)u[o]=i[o](a);return u}}function Zo(t,n){var e=new Date;return t=+t,n=+n,function(r){return e.setTime(t*(1-r)+n*r),e}}function tt(t,n){return t=+t,n=+n,function(e){return t*(1-e)+n*e}}function Go(t,n){var e={},r={},i;(t===null||typeof t!="object")&&(t={}),(n===null||typeof n!="object")&&(n={});for(i in n)i in t?e[i]=ce(t[i],n[i]):r[i]=n[i];return function(u){for(i in e)r[i]=e[i](u);return r}}var Jn=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,In=new RegExp(Jn.source,"g");function Qo(t){return function(){return t}}function Jo(t){return function(n){return t(n)+""}}function $r(t,n){var e=Jn.lastIndex=In.lastIndex=0,r,i,u,o=-1,a=[],f=[];for(t=t+"",n=n+"";(r=Jn.exec(t))&&(i=In.exec(n));)(u=i.index)>e&&(u=n.slice(e,u),a[o]?a[o]+=u:a[++o]=u),(r=r[0])===(i=i[0])?a[o]?a[o]+=i:a[++o]=i:(a[++o]=null,f.push({i:o,x:tt(r,i)})),e=In.lastIndex;return e<n.length&&(u=n.slice(e),a[o]?a[o]+=u:a[++o]=u),a.length<2?f[0]?Jo(f[0].x):Qo(n):(n=f.length,function(s){for(var l=0,h;l<n;++l)a[(h=f[l]).i]=h.x(s);return a.join("")})}function ce(t,n){var e=typeof n,r;return n==null||e==="boolean"?fe(n):(e==="number"?tt:e==="string"?(r=_t(n))?(n=r,vn):$r:n instanceof _t?vn:n instanceof Date?Zo:zo(n)?Xo:Array.isArray(n)?Bo:typeof n.valueOf!="function"&&typeof n.toString!="function"||isNaN(n)?Go:tt)(t,n)}function Ko(t,n){return t=+t,n=+n,function(e){return Math.round(t*(1-e)+n*e)}}var Ie=180/Math.PI,Kn={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function Dr(t,n,e,r,i,u){var o,a,f;return(o=Math.sqrt(t*t+n*n))&&(t/=o,n/=o),(f=t*e+n*r)&&(e-=t*f,r-=n*f),(a=Math.sqrt(e*e+r*r))&&(e/=a,r/=a,f/=a),t*r<n*e&&(t=-t,n=-n,f=-f,o=-o),{translateX:i,translateY:u,rotate:Math.atan2(n,t)*Ie,skewX:Math.atan(f)*Ie,scaleX:o,scaleY:a}}var on;function jo(t){const n=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(t+"");return n.isIdentity?Kn:Dr(n.a,n.b,n.c,n.d,n.e,n.f)}function ta(t){return t==null||(on||(on=document.createElementNS("http://www.w3.org/2000/svg","g")),on.setAttribute("transform",t),!(t=on.transform.baseVal.consolidate()))?Kn:(t=t.matrix,Dr(t.a,t.b,t.c,t.d,t.e,t.f))}function Ur(t,n,e,r){function i(s){return s.length?s.pop()+" ":""}function u(s,l,h,c,g,d){if(s!==h||l!==c){var y=g.push("translate(",null,n,null,e);d.push({i:y-4,x:tt(s,h)},{i:y-2,x:tt(l,c)})}else(h||c)&&g.push("translate("+h+n+c+e)}function o(s,l,h,c){s!==l?(s-l>180?l+=360:l-s>180&&(s+=360),c.push({i:h.push(i(h)+"rotate(",null,r)-2,x:tt(s,l)})):l&&h.push(i(h)+"rotate("+l+r)}function a(s,l,h,c){s!==l?c.push({i:h.push(i(h)+"skewX(",null,r)-2,x:tt(s,l)}):l&&h.push(i(h)+"skewX("+l+r)}function f(s,l,h,c,g,d){if(s!==h||l!==c){var y=g.push(i(g)+"scale(",null,",",null,")");d.push({i:y-4,x:tt(s,h)},{i:y-2,x:tt(l,c)})}else(h!==1||c!==1)&&g.push(i(g)+"scale("+h+","+c+")")}return function(s,l){var h=[],c=[];return s=t(s),l=t(l),u(s.translateX,s.translateY,l.translateX,l.translateY,h,c),o(s.rotate,l.rotate,h,c),a(s.skewX,l.skewX,h,c),f(s.scaleX,s.scaleY,l.scaleX,l.scaleY,h,c),s=l=null,function(g){for(var d=-1,y=c.length,_;++d<y;)h[(_=c[d]).i]=_.x(g);return h.join("")}}}var na=Ur(jo,"px, ","px)","deg)"),ea=Ur(ta,", ",")",")"),Dt=0,Bt=0,qt=0,Fr=1e3,wn,Zt,xn=0,vt=0,Un=0,Kt=typeof performance=="object"&&performance.now?performance:Date,Er=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(t){setTimeout(t,17)};function le(){return vt||(Er(ra),vt=Kt.now()+Un)}function ra(){vt=0}function Mn(){this._call=this._time=this._next=null}Mn.prototype=Rr.prototype={constructor:Mn,restart:function(t,n,e){if(typeof t!="function")throw new TypeError("callback is not a function");e=(e==null?le():+e)+(n==null?0:+n),!this._next&&Zt!==this&&(Zt?Zt._next=this:wn=this,Zt=this),this._call=t,this._time=e,jn()},stop:function(){this._call&&(this._call=null,this._time=1/0,jn())}};function Rr(t,n,e){var r=new Mn;return r.restart(t,n,e),r}function ia(){le(),++Dt;for(var t=wn,n;t;)(n=vt-t._time)>=0&&t._call.call(void 0,n),t=t._next;--Dt}function Le(){vt=(xn=Kt.now())+Un,Dt=Bt=0;try{ia()}finally{Dt=0,oa(),vt=0}}function ua(){var t=Kt.now(),n=t-xn;n>Fr&&(Un-=n,xn=t)}function oa(){for(var t,n=wn,e,r=1/0;n;)n._call?(r>n._time&&(r=n._time),t=n,n=n._next):(e=n._next,n._next=null,n=t?t._next=e:wn=e);Zt=t,jn(r)}function jn(t){if(!Dt){Bt&&(Bt=clearTimeout(Bt));var n=t-vt;n>24?(t<1/0&&(Bt=setTimeout(Le,t-Kt.now()-Un)),qt&&(qt=clearInterval(qt))):(qt||(xn=Kt.now(),qt=setInterval(ua,Fr)),Dt=1,Er(Le))}}function Pe(t,n,e){var r=new Mn;return n=n==null?0:+n,r.restart(i=>{r.stop(),t(i+n)},n,e),r}var aa=pr("start","end","cancel","interrupt"),sa=[],Yr=0,Oe=1,te=2,ln=3,qe=4,ne=5,hn=6;function Fn(t,n,e,r,i,u){var o=t.__transition;if(!o)t.__transition={};else if(e in o)return;fa(t,e,{name:n,index:r,group:i,on:aa,tween:sa,time:u.time,delay:u.delay,duration:u.duration,ease:u.ease,timer:null,state:Yr})}function he(t,n){var e=et(t,n);if(e.state>Yr)throw new Error("too late; already scheduled");return e}function ut(t,n){var e=et(t,n);if(e.state>ln)throw new Error("too late; already running");return e}function et(t,n){var e=t.__transition;if(!e||!(e=e[n]))throw new Error("transition not found");return e}function fa(t,n,e){var r=t.__transition,i;r[n]=e,e.timer=Rr(u,0,e.time);function u(s){e.state=Oe,e.timer.restart(o,e.delay,e.time),e.delay<=s&&o(s-e.delay)}function o(s){var l,h,c,g;if(e.state!==Oe)return f();for(l in r)if(g=r[l],g.name===e.name){if(g.state===ln)return Pe(o);g.state===qe?(g.state=hn,g.timer.stop(),g.on.call("interrupt",t,t.__data__,g.index,g.group),delete r[l]):+l<n&&(g.state=hn,g.timer.stop(),g.on.call("cancel",t,t.__data__,g.index,g.group),delete r[l])}if(Pe(function(){e.state===ln&&(e.state=qe,e.timer.restart(a,e.delay,e.time),a(s))}),e.state=te,e.on.call("start",t,t.__data__,e.index,e.group),e.state===te){for(e.state=ln,i=new Array(c=e.tween.length),l=0,h=-1;l<c;++l)(g=e.tween[l].value.call(t,t.__data__,e.index,e.group))&&(i[++h]=g);i.length=h+1}}function a(s){for(var l=s<e.duration?e.ease.call(null,s/e.duration):(e.timer.restart(f),e.state=ne,1),h=-1,c=i.length;++h<c;)i[h].call(t,l);e.state===ne&&(e.on.call("end",t,t.__data__,e.index,e.group),f())}function f(){e.state=hn,e.timer.stop(),delete r[n];for(var s in r)return;delete t.__transition}}function ca(t,n){var e=t.__transition,r,i,u=!0,o;if(e){n=n==null?null:n+"";for(o in e){if((r=e[o]).name!==n){u=!1;continue}i=r.state>te&&r.state<ne,r.state=hn,r.timer.stop(),r.on.call(i?"interrupt":"cancel",t,t.__data__,r.index,r.group),delete e[o]}u&&delete t.__transition}}function la(t){return this.each(function(){ca(this,t)})}function ha(t,n){var e,r;return function(){var i=ut(this,t),u=i.tween;if(u!==e){r=e=u;for(var o=0,a=r.length;o<a;++o)if(r[o].name===n){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function ga(t,n,e){var r,i;if(typeof e!="function")throw new Error;return function(){var u=ut(this,t),o=u.tween;if(o!==r){i=(r=o).slice();for(var a={name:n,value:e},f=0,s=i.length;f<s;++f)if(i[f].name===n){i[f]=a;break}f===s&&i.push(a)}u.tween=i}}function pa(t,n){var e=this._id;if(t+="",arguments.length<2){for(var r=et(this.node(),e).tween,i=0,u=r.length,o;i<u;++i)if((o=r[i]).name===t)return o.value;return null}return this.each((n==null?ha:ga)(e,t,n))}function ge(t,n,e){var r=t._id;return t.each(function(){var i=ut(this,r);(i.value||(i.value={}))[n]=e.apply(this,arguments)}),function(i){return et(i,r).value[n]}}function Hr(t,n){var e;return(typeof n=="number"?tt:n instanceof _t?vn:(e=_t(n))?(n=e,vn):$r)(t,n)}function da(t){return function(){this.removeAttribute(t)}}function ma(t){return function(){this.removeAttributeNS(t.space,t.local)}}function ya(t,n,e){var r,i=e+"",u;return function(){var o=this.getAttribute(t);return o===i?null:o===r?u:u=n(r=o,e)}}function _a(t,n,e){var r,i=e+"",u;return function(){var o=this.getAttributeNS(t.space,t.local);return o===i?null:o===r?u:u=n(r=o,e)}}function va(t,n,e){var r,i,u;return function(){var o,a=e(this),f;return a==null?void this.removeAttribute(t):(o=this.getAttribute(t),f=a+"",o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a)))}}function wa(t,n,e){var r,i,u;return function(){var o,a=e(this),f;return a==null?void this.removeAttributeNS(t.space,t.local):(o=this.getAttributeNS(t.space,t.local),f=a+"",o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a)))}}function xa(t,n){var e=Dn(t),r=e==="transform"?ea:Hr;return this.attrTween(t,typeof n=="function"?(e.local?wa:va)(e,r,ge(this,"attr."+t,n)):n==null?(e.local?ma:da)(e):(e.local?_a:ya)(e,r,n))}function Ma(t,n){return function(e){this.setAttribute(t,n.call(this,e))}}function Ta(t,n){return function(e){this.setAttributeNS(t.space,t.local,n.call(this,e))}}function ba(t,n){var e,r;function i(){var u=n.apply(this,arguments);return u!==r&&(e=(r=u)&&Ta(t,u)),e}return i._value=n,i}function ka(t,n){var e,r;function i(){var u=n.apply(this,arguments);return u!==r&&(e=(r=u)&&Ma(t,u)),e}return i._value=n,i}function Ca(t,n){var e="attr."+t;if(arguments.length<2)return(e=this.tween(e))&&e._value;if(n==null)return this.tween(e,null);if(typeof n!="function")throw new Error;var r=Dn(t);return this.tween(e,(r.local?ba:ka)(r,n))}function Aa(t,n){return function(){he(this,t).delay=+n.apply(this,arguments)}}function Sa(t,n){return n=+n,function(){he(this,t).delay=n}}function Na(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?Aa:Sa)(n,t)):et(this.node(),n).delay}function $a(t,n){return function(){ut(this,t).duration=+n.apply(this,arguments)}}function Da(t,n){return n=+n,function(){ut(this,t).duration=n}}function Ua(t){var n=this._id;return arguments.length?this.each((typeof t=="function"?$a:Da)(n,t)):et(this.node(),n).duration}function Fa(t,n){if(typeof n!="function")throw new Error;return function(){ut(this,t).ease=n}}function Ea(t){var n=this._id;return arguments.length?this.each(Fa(n,t)):et(this.node(),n).ease}function Ra(t,n){return function(){var e=n.apply(this,arguments);if(typeof e!="function")throw new Error;ut(this,t).ease=e}}function Ya(t){if(typeof t!="function")throw new Error;return this.each(Ra(this._id,t))}function Ha(t){typeof t!="function"&&(t=yr(t));for(var n=this._groups,e=n.length,r=new Array(e),i=0;i<e;++i)for(var u=n[i],o=u.length,a=r[i]=[],f,s=0;s<o;++s)(f=u[s])&&t.call(f,f.__data__,s,u)&&a.push(f);return new ct(r,this._parents,this._name,this._id)}function Ia(t){if(t._id!==this._id)throw new Error;for(var n=this._groups,e=t._groups,r=n.length,i=e.length,u=Math.min(r,i),o=new Array(r),a=0;a<u;++a)for(var f=n[a],s=e[a],l=f.length,h=o[a]=new Array(l),c,g=0;g<l;++g)(c=f[g]||s[g])&&(h[g]=c);for(;a<r;++a)o[a]=n[a];return new ct(o,this._parents,this._name,this._id)}function La(t){return(t+"").trim().split(/^|\s+/).every(function(n){var e=n.indexOf(".");return e>=0&&(n=n.slice(0,e)),!n||n==="start"})}function Pa(t,n,e){var r,i,u=La(n)?he:ut;return function(){var o=u(this,t),a=o.on;a!==r&&(i=(r=a).copy()).on(n,e),o.on=i}}function Oa(t,n){var e=this._id;return arguments.length<2?et(this.node(),e).on.on(t):this.each(Pa(e,t,n))}function qa(t){return function(){var n=this.parentNode;for(var e in this.__transition)if(+e!==t)return;n&&n.removeChild(this)}}function Wa(){return this.on("end.remove",qa(this._id))}function Va(t){var n=this._name,e=this._id;typeof t!="function"&&(t=oe(t));for(var r=this._groups,i=r.length,u=new Array(i),o=0;o<i;++o)for(var a=r[o],f=a.length,s=u[o]=new Array(f),l,h,c=0;c<f;++c)(l=a[c])&&(h=t.call(l,l.__data__,c,a))&&("__data__"in l&&(h.__data__=l.__data__),s[c]=h,Fn(s[c],n,e,c,s,et(l,e)));return new ct(u,this._parents,n,e)}function Xa(t){var n=this._name,e=this._id;typeof t!="function"&&(t=mr(t));for(var r=this._groups,i=r.length,u=[],o=[],a=0;a<i;++a)for(var f=r[a],s=f.length,l,h=0;h<s;++h)if(l=f[h]){for(var c=t.call(l,l.__data__,h,f),g,d=et(l,e),y=0,_=c.length;y<_;++y)(g=c[y])&&Fn(g,n,e,y,c,d);u.push(c),o.push(l)}return new ct(u,o,n,e)}var za=tn.prototype.constructor;function Ba(){return new za(this._groups,this._parents)}function Za(t,n){var e,r,i;return function(){var u=$t(this,t),o=(this.style.removeProperty(t),$t(this,t));return u===o?null:u===e&&o===r?i:i=n(e=u,r=o)}}function Ir(t){return function(){this.style.removeProperty(t)}}function Ga(t,n,e){var r,i=e+"",u;return function(){var o=$t(this,t);return o===i?null:o===r?u:u=n(r=o,e)}}function Qa(t,n,e){var r,i,u;return function(){var o=$t(this,t),a=e(this),f=a+"";return a==null&&(f=a=(this.style.removeProperty(t),$t(this,t))),o===f?null:o===r&&f===i?u:(i=f,u=n(r=o,a))}}function Ja(t,n){var e,r,i,u="style."+n,o="end."+u,a;return function(){var f=ut(this,t),s=f.on,l=f.value[u]==null?a||(a=Ir(n)):void 0;(s!==e||i!==l)&&(r=(e=s).copy()).on(o,i=l),f.on=r}}function Ka(t,n,e){var r=(t+="")=="transform"?na:Hr;return n==null?this.styleTween(t,Za(t,r)).on("end.style."+t,Ir(t)):typeof n=="function"?this.styleTween(t,Qa(t,r,ge(this,"style."+t,n))).each(Ja(this._id,t)):this.styleTween(t,Ga(t,r,n),e).on("end.style."+t,null)}function ja(t,n,e){return function(r){this.style.setProperty(t,n.call(this,r),e)}}function ts(t,n,e){var r,i;function u(){var o=n.apply(this,arguments);return o!==i&&(r=(i=o)&&ja(t,o,e)),r}return u._value=n,u}function ns(t,n,e){var r="style."+(t+="");if(arguments.length<2)return(r=this.tween(r))&&r._value;if(n==null)return this.tween(r,null);if(typeof n!="function")throw new Error;return this.tween(r,ts(t,n,e??""))}function es(t){return function(){this.textContent=t}}function rs(t){return function(){var n=t(this);this.textContent=n??""}}function is(t){return this.tween("text",typeof t=="function"?rs(ge(this,"text",t)):es(t==null?"":t+""))}function us(t){return function(n){this.textContent=t.call(this,n)}}function os(t){var n,e;function r(){var i=t.apply(this,arguments);return i!==e&&(n=(e=i)&&us(i)),n}return r._value=t,r}function as(t){var n="text";if(arguments.length<1)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;return this.tween(n,os(t))}function ss(){for(var t=this._name,n=this._id,e=Lr(),r=this._groups,i=r.length,u=0;u<i;++u)for(var o=r[u],a=o.length,f,s=0;s<a;++s)if(f=o[s]){var l=et(f,n);Fn(f,t,e,s,o,{time:l.time+l.delay+l.duration,delay:0,duration:l.duration,ease:l.ease})}return new ct(r,this._parents,t,e)}function fs(){var t,n,e=this,r=e._id,i=e.size();return new Promise(function(u,o){var a={value:o},f={value:function(){--i===0&&u()}};e.each(function(){var s=ut(this,r),l=s.on;l!==t&&(n=(t=l).copy(),n._.cancel.push(a),n._.interrupt.push(a),n._.end.push(f)),s.on=n}),i===0&&u()})}var cs=0;function ct(t,n,e,r){this._groups=t,this._parents=n,this._name=e,this._id=r}function Lr(){return++cs}var at=tn.prototype;ct.prototype={constructor:ct,select:Va,selectAll:Xa,selectChild:at.selectChild,selectChildren:at.selectChildren,filter:Ha,merge:Ia,selection:Ba,transition:ss,call:at.call,nodes:at.nodes,node:at.node,size:at.size,empty:at.empty,each:at.each,on:Oa,attr:xa,attrTween:Ca,style:Ka,styleTween:ns,text:is,textTween:as,remove:Wa,tween:pa,delay:Na,duration:Ua,ease:Ea,easeVarying:Ya,end:fs,[Symbol.iterator]:at[Symbol.iterator]};const bc=t=>+t;function kc(t){return--t*t*t+1}function ls(t){return((t*=2)<=1?t*t*t:(t-=2)*t*t+2)/2}var pe=1.70158,Cc=(function t(n){n=+n;function e(r){return(r=+r)*r*(n*(r-1)+r)}return e.overshoot=t,e})(pe),Ac=(function t(n){n=+n;function e(r){return--r*r*((r+1)*n+r)+1}return e.overshoot=t,e})(pe);(function t(n){n=+n;function e(r){return((r*=2)<1?r*r*((n+1)*r-n):(r-=2)*r*((n+1)*r+n)+2)/2}return e.overshoot=t,e})(pe);var hs={time:null,delay:0,duration:250,ease:ls};function gs(t,n){for(var e;!(e=t.__transition)||!(e=e[n]);)if(!(t=t.parentNode))throw new Error(`transition ${n} not found`);return e}function ps(t){var n,e;t instanceof ct?(n=t._id,t=t._name):(n=Lr(),(e=hs).time=le(),t=t==null?null:t+"");for(var r=this._groups,i=r.length,u=0;u<i;++u)for(var o=r[u],a=o.length,f,s=0;s<a;++s)(f=o[s])&&Fn(f,t,n,s,o,e||gs(f,n));return new ct(r,this._parents,t,n)}tn.prototype.interrupt=la;tn.prototype.transition=ps;const ee=Math.PI,re=2*ee,dt=1e-6,ds=re-dt;function Pr(t){this._+=t[0];for(let n=1,e=t.length;n<e;++n)this._+=arguments[n]+t[n]}function ms(t){let n=Math.floor(t);if(!(n>=0))throw new Error(`invalid digits: ${t}`);if(n>15)return Pr;const e=10**n;return function(r){this._+=r[0];for(let i=1,u=r.length;i<u;++i)this._+=Math.round(arguments[i]*e)/e+r[i]}}class ys{constructor(n){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=n==null?Pr:ms(n)}moveTo(n,e){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(n,e){this._append`L${this._x1=+n},${this._y1=+e}`}quadraticCurveTo(n,e,r,i){this._append`Q${+n},${+e},${this._x1=+r},${this._y1=+i}`}bezierCurveTo(n,e,r,i,u,o){this._append`C${+n},${+e},${+r},${+i},${this._x1=+u},${this._y1=+o}`}arcTo(n,e,r,i,u){if(n=+n,e=+e,r=+r,i=+i,u=+u,u<0)throw new Error(`negative radius: ${u}`);let o=this._x1,a=this._y1,f=r-n,s=i-e,l=o-n,h=a-e,c=l*l+h*h;if(this._x1===null)this._append`M${this._x1=n},${this._y1=e}`;else if(c>dt)if(!(Math.abs(h*f-s*l)>dt)||!u)this._append`L${this._x1=n},${this._y1=e}`;else{let g=r-o,d=i-a,y=f*f+s*s,_=g*g+d*d,w=Math.sqrt(y),k=Math.sqrt(c),b=u*Math.tan((ee-Math.acos((y+c-_)/(2*w*k)))/2),M=b/k,S=b/w;Math.abs(M-1)>dt&&this._append`L${n+M*l},${e+M*h}`,this._append`A${u},${u},0,0,${+(h*g>l*d)},${this._x1=n+S*f},${this._y1=e+S*s}`}}arc(n,e,r,i,u,o){if(n=+n,e=+e,r=+r,o=!!o,r<0)throw new Error(`negative radius: ${r}`);let a=r*Math.cos(i),f=r*Math.sin(i),s=n+a,l=e+f,h=1^o,c=o?i-u:u-i;this._x1===null?this._append`M${s},${l}`:(Math.abs(this._x1-s)>dt||Math.abs(this._y1-l)>dt)&&this._append`L${s},${l}`,r&&(c<0&&(c=c%re+re),c>ds?this._append`A${r},${r},0,1,${h},${n-a},${e-f}A${r},${r},0,1,${h},${this._x1=s},${this._y1=l}`:c>dt&&this._append`A${r},${r},0,${+(c>=ee)},${h},${this._x1=n+r*Math.cos(u)},${this._y1=e+r*Math.sin(u)}`)}rect(n,e,r,i){this._append`M${this._x0=this._x1=+n},${this._y0=this._y1=+e}h${r=+r}v${+i}h${-r}Z`}toString(){return this._}}function _s(t){return Math.abs(t=Math.round(t))>=1e21?t.toLocaleString("en").replace(/,/g,""):t.toString(10)}function Tn(t,n){if(!isFinite(t)||t===0)return null;var e=(t=n?t.toExponential(n-1):t.toExponential()).indexOf("e"),r=t.slice(0,e);return[r.length>1?r[0]+r.slice(2):r,+t.slice(e+1)]}function Ut(t){return t=Tn(Math.abs(t)),t?t[1]:NaN}function vs(t,n){return function(e,r){for(var i=e.length,u=[],o=0,a=t[0],f=0;i>0&&a>0&&(f+a+1>r&&(a=Math.max(1,r-f)),u.push(e.substring(i-=a,i+a)),!((f+=a+1)>r));)a=t[o=(o+1)%t.length];return u.reverse().join(n)}}function ws(t){return function(n){return n.replace(/[0-9]/g,function(e){return t[+e]})}}var xs=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function bn(t){if(!(n=xs.exec(t)))throw new Error("invalid format: "+t);var n;return new de({fill:n[1],align:n[2],sign:n[3],symbol:n[4],zero:n[5],width:n[6],comma:n[7],precision:n[8]&&n[8].slice(1),trim:n[9],type:n[10]})}bn.prototype=de.prototype;function de(t){this.fill=t.fill===void 0?" ":t.fill+"",this.align=t.align===void 0?">":t.align+"",this.sign=t.sign===void 0?"-":t.sign+"",this.symbol=t.symbol===void 0?"":t.symbol+"",this.zero=!!t.zero,this.width=t.width===void 0?void 0:+t.width,this.comma=!!t.comma,this.precision=t.precision===void 0?void 0:+t.precision,this.trim=!!t.trim,this.type=t.type===void 0?"":t.type+""}de.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 Ms(t){t:for(var n=t.length,e=1,r=-1,i;e<n;++e)switch(t[e]){case".":r=i=e;break;case"0":r===0&&(r=e),i=e;break;default:if(!+t[e])break t;r>0&&(r=0);break}return r>0?t.slice(0,r)+t.slice(i+1):t}var kn;function Ts(t,n){var e=Tn(t,n);if(!e)return kn=void 0,t.toPrecision(n);var r=e[0],i=e[1],u=i-(kn=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return u===o?r:u>o?r+new Array(u-o+1).join("0"):u>0?r.slice(0,u)+"."+r.slice(u):"0."+new Array(1-u).join("0")+Tn(t,Math.max(0,n+u-1))[0]}function We(t,n){var e=Tn(t,n);if(!e)return t+"";var r=e[0],i=e[1];return i<0?"0."+new Array(-i).join("0")+r:r.length>i+1?r.slice(0,i+1)+"."+r.slice(i+1):r+new Array(i-r.length+2).join("0")}const Ve={"%":(t,n)=>(t*100).toFixed(n),b:t=>Math.round(t).toString(2),c:t=>t+"",d:_s,e:(t,n)=>t.toExponential(n),f:(t,n)=>t.toFixed(n),g:(t,n)=>t.toPrecision(n),o:t=>Math.round(t).toString(8),p:(t,n)=>We(t*100,n),r:We,s:Ts,X:t=>Math.round(t).toString(16).toUpperCase(),x:t=>Math.round(t).toString(16)};function Xe(t){return t}var ze=Array.prototype.map,Be=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function bs(t){var n=t.grouping===void 0||t.thousands===void 0?Xe:vs(ze.call(t.grouping,Number),t.thousands+""),e=t.currency===void 0?"":t.currency[0]+"",r=t.currency===void 0?"":t.currency[1]+"",i=t.decimal===void 0?".":t.decimal+"",u=t.numerals===void 0?Xe:ws(ze.call(t.numerals,String)),o=t.percent===void 0?"%":t.percent+"",a=t.minus===void 0?"−":t.minus+"",f=t.nan===void 0?"NaN":t.nan+"";function s(h,c){h=bn(h);var g=h.fill,d=h.align,y=h.sign,_=h.symbol,w=h.zero,k=h.width,b=h.comma,M=h.precision,S=h.trim,m=h.type;m==="n"?(b=!0,m="g"):Ve[m]||(M===void 0&&(M=12),S=!0,m="g"),(w||g==="0"&&d==="=")&&(w=!0,g="0",d="=");var N=(c&&c.prefix!==void 0?c.prefix:"")+(_==="$"?e:_==="#"&&/[boxX]/.test(m)?"0"+m.toLowerCase():""),Y=(_==="$"?r:/[%p]/.test(m)?o:"")+(c&&c.suffix!==void 0?c.suffix:""),I=Ve[m],R=/[defgprs%]/.test(m);M=M===void 0?6:/[gprs]/.test(m)?Math.max(1,Math.min(21,M)):Math.max(0,Math.min(20,M));function E(x){var T=N,C=Y,P,ot,z;if(m==="c")C=I(x)+C,x="";else{x=+x;var B=x<0||1/x<0;if(x=isNaN(x)?f:I(Math.abs(x),M),S&&(x=Ms(x)),B&&+x==0&&y!=="+"&&(B=!1),T=(B?y==="("?y:a:y==="-"||y==="("?"":y)+T,C=(m==="s"&&!isNaN(x)&&kn!==void 0?Be[8+kn/3]:"")+C+(B&&y==="("?")":""),R){for(P=-1,ot=x.length;++P<ot;)if(z=x.charCodeAt(P),48>z||z>57){C=(z===46?i+x.slice(P+1):x.slice(P))+C,x=x.slice(0,P);break}}}b&&!w&&(x=n(x,1/0));var K=T.length+x.length+C.length,O=K<k?new Array(k-K+1).join(g):"";switch(b&&w&&(x=n(O+x,O.length?k-C.length:1/0),O=""),d){case"<":x=T+x+C+O;break;case"=":x=T+O+x+C;break;case"^":x=O.slice(0,K=O.length>>1)+T+x+C+O.slice(K);break;default:x=O+T+x+C;break}return u(x)}return E.toString=function(){return h+""},E}function l(h,c){var g=Math.max(-8,Math.min(8,Math.floor(Ut(c)/3)))*3,d=Math.pow(10,-g),y=s((h=bn(h),h.type="f",h),{suffix:Be[8+g/3]});return function(_){return y(d*_)}}return{format:s,formatPrefix:l}}var an,Or,qr;ks({thousands:",",grouping:[3],currency:["$",""]});function ks(t){return an=bs(t),Or=an.format,qr=an.formatPrefix,an}function Cs(t){return Math.max(0,-Ut(Math.abs(t)))}function As(t,n){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Ut(n)/3)))*3-Ut(Math.abs(t)))}function Ss(t,n){return t=Math.abs(t),n=Math.abs(n)-t,Math.max(0,Ut(n)-Ut(t))+1}function me(t,n){switch(arguments.length){case 0:break;case 1:this.range(t);break;default:this.range(n).domain(t);break}return this}const Ze=Symbol("implicit");function Ns(){var t=new ke,n=[],e=[],r=Ze;function i(u){let o=t.get(u);if(o===void 0){if(r!==Ze)return r;t.set(u,o=n.push(u)-1)}return e[o%e.length]}return i.domain=function(u){if(!arguments.length)return n.slice();n=[],t=new ke;for(const o of u)t.has(o)||t.set(o,n.push(o)-1);return i},i.range=function(u){return arguments.length?(e=Array.from(u),i):e.slice()},i.unknown=function(u){return arguments.length?(r=u,i):r},i.copy=function(){return Ns(n,e).unknown(r)},me.apply(i,arguments),i}function $s(t){return function(){return t}}function Ds(t){return+t}var Ge=[0,1];function Ct(t){return t}function ie(t,n){return(n-=t=+t)?function(e){return(e-t)/n}:$s(isNaN(n)?NaN:.5)}function Us(t,n){var e;return t>n&&(e=t,t=n,n=e),function(r){return Math.max(t,Math.min(n,r))}}function Fs(t,n,e){var r=t[0],i=t[1],u=n[0],o=n[1];return i<r?(r=ie(i,r),u=e(o,u)):(r=ie(r,i),u=e(u,o)),function(a){return u(r(a))}}function Es(t,n,e){var r=Math.min(t.length,n.length)-1,i=new Array(r),u=new Array(r),o=-1;for(t[r]<t[0]&&(t=t.slice().reverse(),n=n.slice().reverse());++o<r;)i[o]=ie(t[o],t[o+1]),u[o]=e(n[o],n[o+1]);return function(a){var f=Fi(t,a,1,r)-1;return u[f](i[f](a))}}function Wr(t,n){return n.domain(t.domain()).range(t.range()).interpolate(t.interpolate()).clamp(t.clamp()).unknown(t.unknown())}function Rs(){var t=Ge,n=Ge,e=ce,r,i,u,o=Ct,a,f,s;function l(){var c=Math.min(t.length,n.length);return o!==Ct&&(o=Us(t[0],t[c-1])),a=c>2?Es:Fs,f=s=null,h}function h(c){return c==null||isNaN(c=+c)?u:(f||(f=a(t.map(r),n,e)))(r(o(c)))}return h.invert=function(c){return o(i((s||(s=a(n,t.map(r),tt)))(c)))},h.domain=function(c){return arguments.length?(t=Array.from(c,Ds),l()):t.slice()},h.range=function(c){return arguments.length?(n=Array.from(c),l()):n.slice()},h.rangeRound=function(c){return n=Array.from(c),e=Ko,l()},h.clamp=function(c){return arguments.length?(o=c?!0:Ct,l()):o!==Ct},h.interpolate=function(c){return arguments.length?(e=c,l()):e},h.unknown=function(c){return arguments.length?(u=c,h):u},function(c,g){return r=c,i=g,l()}}function Vr(){return Rs()(Ct,Ct)}function Ys(t,n,e,r){var i=Bn(t,n,e),u;switch(r=bn(r??",f"),r.type){case"s":{var o=Math.max(Math.abs(t),Math.abs(n));return r.precision==null&&!isNaN(u=As(i,o))&&(r.precision=u),qr(r,o)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(u=Ss(i,Math.max(Math.abs(t),Math.abs(n))))&&(r.precision=u-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(u=Cs(i))&&(r.precision=u-(r.type==="%")*2);break}}return Or(r)}function Hs(t){var n=t.domain;return t.ticks=function(e){var r=n();return Pi(r[0],r[r.length-1],e??10)},t.tickFormat=function(e,r){var i=n();return Ys(i[0],i[i.length-1],e??10,r)},t.nice=function(e){e==null&&(e=10);var r=n(),i=0,u=r.length-1,o=r[i],a=r[u],f,s,l=10;for(a<o&&(s=o,o=a,a=s,s=i,i=u,u=s);l-- >0;){if(s=zn(o,a,e),s===f)return r[i]=o,r[u]=a,n(r);if(s>0)o=Math.floor(o/s)*s,a=Math.ceil(a/s)*s;else if(s<0)o=Math.ceil(o*s)/s,a=Math.floor(a*s)/s;else break;f=s}return t},t}function Is(){var t=Vr();return t.copy=function(){return Wr(t,Is())},me.apply(t,arguments),Hs(t)}function Ls(t,n){t=t.slice();var e=0,r=t.length-1,i=t[e],u=t[r],o;return u<i&&(o=e,e=r,r=o,o=i,i=u,u=o),t[e]=n.floor(i),t[r]=n.ceil(u),t}const Ln=new Date,Pn=new Date;function H(t,n,e,r){function i(u){return t(u=arguments.length===0?new Date:new Date(+u)),u}return i.floor=u=>(t(u=new Date(+u)),u),i.ceil=u=>(t(u=new Date(u-1)),n(u,1),t(u),u),i.round=u=>{const o=i(u),a=i.ceil(u);return u-o<a-u?o:a},i.offset=(u,o)=>(n(u=new Date(+u),o==null?1:Math.floor(o)),u),i.range=(u,o,a)=>{const f=[];if(u=i.ceil(u),a=a==null?1:Math.floor(a),!(u<o)||!(a>0))return f;let s;do f.push(s=new Date(+u)),n(u,a),t(u);while(s<u&&u<o);return f},i.filter=u=>H(o=>{if(o>=o)for(;t(o),!u(o);)o.setTime(o-1)},(o,a)=>{if(o>=o)if(a<0)for(;++a<=0;)for(;n(o,-1),!u(o););else for(;--a>=0;)for(;n(o,1),!u(o););}),e&&(i.count=(u,o)=>(Ln.setTime(+u),Pn.setTime(+o),t(Ln),t(Pn),Math.floor(e(Ln,Pn))),i.every=u=>(u=Math.floor(u),!isFinite(u)||!(u>0)?null:u>1?i.filter(r?o=>r(o)%u===0:o=>i.count(0,o)%u===0):i)),i}const Cn=H(()=>{},(t,n)=>{t.setTime(+t+n)},(t,n)=>n-t);Cn.every=t=>(t=Math.floor(t),!isFinite(t)||!(t>0)?null:t>1?H(n=>{n.setTime(Math.floor(n/t)*t)},(n,e)=>{n.setTime(+n+e*t)},(n,e)=>(e-n)/t):Cn);Cn.range;const st=1e3,J=st*60,ft=J*60,lt=ft*24,ye=lt*7,Qe=lt*30,On=lt*365,At=H(t=>{t.setTime(t-t.getMilliseconds())},(t,n)=>{t.setTime(+t+n*st)},(t,n)=>(n-t)/st,t=>t.getUTCSeconds());At.range;const _e=H(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*st)},(t,n)=>{t.setTime(+t+n*J)},(t,n)=>(n-t)/J,t=>t.getMinutes());_e.range;const Ps=H(t=>{t.setUTCSeconds(0,0)},(t,n)=>{t.setTime(+t+n*J)},(t,n)=>(n-t)/J,t=>t.getUTCMinutes());Ps.range;const ve=H(t=>{t.setTime(t-t.getMilliseconds()-t.getSeconds()*st-t.getMinutes()*J)},(t,n)=>{t.setTime(+t+n*ft)},(t,n)=>(n-t)/ft,t=>t.getHours());ve.range;const Os=H(t=>{t.setUTCMinutes(0,0,0)},(t,n)=>{t.setTime(+t+n*ft)},(t,n)=>(n-t)/ft,t=>t.getUTCHours());Os.range;const en=H(t=>t.setHours(0,0,0,0),(t,n)=>t.setDate(t.getDate()+n),(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*J)/lt,t=>t.getDate()-1);en.range;const we=H(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/lt,t=>t.getUTCDate()-1);we.range;const qs=H(t=>{t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n)},(t,n)=>(n-t)/lt,t=>Math.floor(t/lt));qs.range;function xt(t){return H(n=>{n.setDate(n.getDate()-(n.getDay()+7-t)%7),n.setHours(0,0,0,0)},(n,e)=>{n.setDate(n.getDate()+e*7)},(n,e)=>(e-n-(e.getTimezoneOffset()-n.getTimezoneOffset())*J)/ye)}const En=xt(0),An=xt(1),Ws=xt(2),Vs=xt(3),Ft=xt(4),Xs=xt(5),zs=xt(6);En.range;An.range;Ws.range;Vs.range;Ft.range;Xs.range;zs.range;function Mt(t){return H(n=>{n.setUTCDate(n.getUTCDate()-(n.getUTCDay()+7-t)%7),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCDate(n.getUTCDate()+e*7)},(n,e)=>(e-n)/ye)}const Xr=Mt(0),Sn=Mt(1),Bs=Mt(2),Zs=Mt(3),Et=Mt(4),Gs=Mt(5),Qs=Mt(6);Xr.range;Sn.range;Bs.range;Zs.range;Et.range;Gs.range;Qs.range;const xe=H(t=>{t.setDate(1),t.setHours(0,0,0,0)},(t,n)=>{t.setMonth(t.getMonth()+n)},(t,n)=>n.getMonth()-t.getMonth()+(n.getFullYear()-t.getFullYear())*12,t=>t.getMonth());xe.range;const Js=H(t=>{t.setUTCDate(1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCMonth(t.getUTCMonth()+n)},(t,n)=>n.getUTCMonth()-t.getUTCMonth()+(n.getUTCFullYear()-t.getUTCFullYear())*12,t=>t.getUTCMonth());Js.range;const ht=H(t=>{t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n)},(t,n)=>n.getFullYear()-t.getFullYear(),t=>t.getFullYear());ht.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:H(n=>{n.setFullYear(Math.floor(n.getFullYear()/t)*t),n.setMonth(0,1),n.setHours(0,0,0,0)},(n,e)=>{n.setFullYear(n.getFullYear()+e*t)});ht.range;const wt=H(t=>{t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n)},(t,n)=>n.getUTCFullYear()-t.getUTCFullYear(),t=>t.getUTCFullYear());wt.every=t=>!isFinite(t=Math.floor(t))||!(t>0)?null:H(n=>{n.setUTCFullYear(Math.floor(n.getUTCFullYear()/t)*t),n.setUTCMonth(0,1),n.setUTCHours(0,0,0,0)},(n,e)=>{n.setUTCFullYear(n.getUTCFullYear()+e*t)});wt.range;function Ks(t,n,e,r,i,u){const o=[[At,1,st],[At,5,5*st],[At,15,15*st],[At,30,30*st],[u,1,J],[u,5,5*J],[u,15,15*J],[u,30,30*J],[i,1,ft],[i,3,3*ft],[i,6,6*ft],[i,12,12*ft],[r,1,lt],[r,2,2*lt],[e,1,ye],[n,1,Qe],[n,3,3*Qe],[t,1,On]];function a(s,l,h){const c=l<s;c&&([s,l]=[l,s]);const g=h&&typeof h.range=="function"?h:f(s,l,h),d=g?g.range(s,+l+1):[];return c?d.reverse():d}function f(s,l,h){const c=Math.abs(l-s)/h,g=ue(([,,_])=>_).right(o,c);if(g===o.length)return t.every(Bn(s/On,l/On,h));if(g===0)return Cn.every(Math.max(Bn(s,l,h),1));const[d,y]=o[c/o[g-1][2]<o[g][2]/c?g-1:g];return d.every(y)}return[a,f]}const[js,tf]=Ks(ht,xe,En,en,ve,_e);function qn(t){if(0<=t.y&&t.y<100){var n=new Date(-1,t.m,t.d,t.H,t.M,t.S,t.L);return n.setFullYear(t.y),n}return new Date(t.y,t.m,t.d,t.H,t.M,t.S,t.L)}function Wn(t){if(0<=t.y&&t.y<100){var n=new Date(Date.UTC(-1,t.m,t.d,t.H,t.M,t.S,t.L));return n.setUTCFullYear(t.y),n}return new Date(Date.UTC(t.y,t.m,t.d,t.H,t.M,t.S,t.L))}function Wt(t,n,e){return{y:t,m:n,d:e,H:0,M:0,S:0,L:0}}function nf(t){var n=t.dateTime,e=t.date,r=t.time,i=t.periods,u=t.days,o=t.shortDays,a=t.months,f=t.shortMonths,s=Vt(i),l=Xt(i),h=Vt(u),c=Xt(u),g=Vt(o),d=Xt(o),y=Vt(a),_=Xt(a),w=Vt(f),k=Xt(f),b={a:z,A:B,b:K,B:O,c:null,d:er,e:er,f:kf,g:Rf,G:Hf,H:Mf,I:Tf,j:bf,L:zr,m:Cf,M:Af,p:Tt,q:bt,Q:ur,s:or,S:Sf,u:Nf,U:$f,V:Df,w:Uf,W:Ff,x:null,X:null,y:Ef,Y:Yf,Z:If,"%":ir},M={a:Rt,A:Yt,b:j,B:Ht,c:null,d:rr,e:rr,f:qf,g:Kf,G:tc,H:Lf,I:Pf,j:Of,L:Zr,m:Wf,M:Vf,p:It,q:Lt,Q:ur,s:or,S:Xf,u:zf,U:Bf,V:Zf,w:Gf,W:Qf,x:null,X:null,y:Jf,Y:jf,Z:nc,"%":ir},S={a:R,A:E,b:x,B:T,c:C,d:tr,e:tr,f:_f,g:je,G:Ke,H:nr,I:nr,j:pf,L:yf,m:gf,M:df,p:I,q:hf,Q:wf,s:xf,S:mf,u:af,U:sf,V:ff,w:of,W:cf,x:P,X:ot,y:je,Y:Ke,Z:lf,"%":vf};b.x=m(e,b),b.X=m(r,b),b.c=m(n,b),M.x=m(e,M),M.X=m(r,M),M.c=m(n,M);function m(v,A){return function($){var p=[],W=-1,F=0,Z=v.length,G,gt,be;for($ instanceof Date||($=new Date(+$));++W<Z;)v.charCodeAt(W)===37&&(p.push(v.slice(F,W)),(gt=Je[G=v.charAt(++W)])!=null?G=v.charAt(++W):gt=G==="e"?" ":"0",(be=A[G])&&(G=be($,gt)),p.push(G),F=W+1);return p.push(v.slice(F,W)),p.join("")}}function N(v,A){return function($){var p=Wt(1900,void 0,1),W=Y(p,v,$+="",0),F,Z;if(W!=$.length)return null;if("Q"in p)return new Date(p.Q);if("s"in p)return new Date(p.s*1e3+("L"in p?p.L:0));if(A&&!("Z"in p)&&(p.Z=0),"p"in p&&(p.H=p.H%12+p.p*12),p.m===void 0&&(p.m="q"in p?p.q:0),"V"in p){if(p.V<1||p.V>53)return null;"w"in p||(p.w=1),"Z"in p?(F=Wn(Wt(p.y,0,1)),Z=F.getUTCDay(),F=Z>4||Z===0?Sn.ceil(F):Sn(F),F=we.offset(F,(p.V-1)*7),p.y=F.getUTCFullYear(),p.m=F.getUTCMonth(),p.d=F.getUTCDate()+(p.w+6)%7):(F=qn(Wt(p.y,0,1)),Z=F.getDay(),F=Z>4||Z===0?An.ceil(F):An(F),F=en.offset(F,(p.V-1)*7),p.y=F.getFullYear(),p.m=F.getMonth(),p.d=F.getDate()+(p.w+6)%7)}else("W"in p||"U"in p)&&("w"in p||(p.w="u"in p?p.u%7:"W"in p?1:0),Z="Z"in p?Wn(Wt(p.y,0,1)).getUTCDay():qn(Wt(p.y,0,1)).getDay(),p.m=0,p.d="W"in p?(p.w+6)%7+p.W*7-(Z+5)%7:p.w+p.U*7-(Z+6)%7);return"Z"in p?(p.H+=p.Z/100|0,p.M+=p.Z%100,Wn(p)):qn(p)}}function Y(v,A,$,p){for(var W=0,F=A.length,Z=$.length,G,gt;W<F;){if(p>=Z)return-1;if(G=A.charCodeAt(W++),G===37){if(G=A.charAt(W++),gt=S[G in Je?A.charAt(W++):G],!gt||(p=gt(v,$,p))<0)return-1}else if(G!=$.charCodeAt(p++))return-1}return p}function I(v,A,$){var p=s.exec(A.slice($));return p?(v.p=l.get(p[0].toLowerCase()),$+p[0].length):-1}function R(v,A,$){var p=g.exec(A.slice($));return p?(v.w=d.get(p[0].toLowerCase()),$+p[0].length):-1}function E(v,A,$){var p=h.exec(A.slice($));return p?(v.w=c.get(p[0].toLowerCase()),$+p[0].length):-1}function x(v,A,$){var p=w.exec(A.slice($));return p?(v.m=k.get(p[0].toLowerCase()),$+p[0].length):-1}function T(v,A,$){var p=y.exec(A.slice($));return p?(v.m=_.get(p[0].toLowerCase()),$+p[0].length):-1}function C(v,A,$){return Y(v,n,A,$)}function P(v,A,$){return Y(v,e,A,$)}function ot(v,A,$){return Y(v,r,A,$)}function z(v){return o[v.getDay()]}function B(v){return u[v.getDay()]}function K(v){return f[v.getMonth()]}function O(v){return a[v.getMonth()]}function Tt(v){return i[+(v.getHours()>=12)]}function bt(v){return 1+~~(v.getMonth()/3)}function Rt(v){return o[v.getUTCDay()]}function Yt(v){return u[v.getUTCDay()]}function j(v){return f[v.getUTCMonth()]}function Ht(v){return a[v.getUTCMonth()]}function It(v){return i[+(v.getUTCHours()>=12)]}function Lt(v){return 1+~~(v.getUTCMonth()/3)}return{format:function(v){var A=m(v+="",b);return A.toString=function(){return v},A},parse:function(v){var A=N(v+="",!1);return A.toString=function(){return v},A},utcFormat:function(v){var A=m(v+="",M);return A.toString=function(){return v},A},utcParse:function(v){var A=N(v+="",!0);return A.toString=function(){return v},A}}}var Je={"-":"",_:" ",0:"0"},L=/^\s*\d+/,ef=/^%/,rf=/[\\^$*+?|[\]().{}]/g;function U(t,n,e){var r=t<0?"-":"",i=(r?-t:t)+"",u=i.length;return r+(u<e?new Array(e-u+1).join(n)+i:i)}function uf(t){return t.replace(rf,"\\$&")}function Vt(t){return new RegExp("^(?:"+t.map(uf).join("|")+")","i")}function Xt(t){return new Map(t.map((n,e)=>[n.toLowerCase(),e]))}function of(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.w=+r[0],e+r[0].length):-1}function af(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.u=+r[0],e+r[0].length):-1}function sf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.U=+r[0],e+r[0].length):-1}function ff(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.V=+r[0],e+r[0].length):-1}function cf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.W=+r[0],e+r[0].length):-1}function Ke(t,n,e){var r=L.exec(n.slice(e,e+4));return r?(t.y=+r[0],e+r[0].length):-1}function je(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.y=+r[0]+(+r[0]>68?1900:2e3),e+r[0].length):-1}function lf(t,n,e){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(n.slice(e,e+6));return r?(t.Z=r[1]?0:-(r[2]+(r[3]||"00")),e+r[0].length):-1}function hf(t,n,e){var r=L.exec(n.slice(e,e+1));return r?(t.q=r[0]*3-3,e+r[0].length):-1}function gf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.m=r[0]-1,e+r[0].length):-1}function tr(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.d=+r[0],e+r[0].length):-1}function pf(t,n,e){var r=L.exec(n.slice(e,e+3));return r?(t.m=0,t.d=+r[0],e+r[0].length):-1}function nr(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.H=+r[0],e+r[0].length):-1}function df(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.M=+r[0],e+r[0].length):-1}function mf(t,n,e){var r=L.exec(n.slice(e,e+2));return r?(t.S=+r[0],e+r[0].length):-1}function yf(t,n,e){var r=L.exec(n.slice(e,e+3));return r?(t.L=+r[0],e+r[0].length):-1}function _f(t,n,e){var r=L.exec(n.slice(e,e+6));return r?(t.L=Math.floor(r[0]/1e3),e+r[0].length):-1}function vf(t,n,e){var r=ef.exec(n.slice(e,e+1));return r?e+r[0].length:-1}function wf(t,n,e){var r=L.exec(n.slice(e));return r?(t.Q=+r[0],e+r[0].length):-1}function xf(t,n,e){var r=L.exec(n.slice(e));return r?(t.s=+r[0],e+r[0].length):-1}function er(t,n){return U(t.getDate(),n,2)}function Mf(t,n){return U(t.getHours(),n,2)}function Tf(t,n){return U(t.getHours()%12||12,n,2)}function bf(t,n){return U(1+en.count(ht(t),t),n,3)}function zr(t,n){return U(t.getMilliseconds(),n,3)}function kf(t,n){return zr(t,n)+"000"}function Cf(t,n){return U(t.getMonth()+1,n,2)}function Af(t,n){return U(t.getMinutes(),n,2)}function Sf(t,n){return U(t.getSeconds(),n,2)}function Nf(t){var n=t.getDay();return n===0?7:n}function $f(t,n){return U(En.count(ht(t)-1,t),n,2)}function Br(t){var n=t.getDay();return n>=4||n===0?Ft(t):Ft.ceil(t)}function Df(t,n){return t=Br(t),U(Ft.count(ht(t),t)+(ht(t).getDay()===4),n,2)}function Uf(t){return t.getDay()}function Ff(t,n){return U(An.count(ht(t)-1,t),n,2)}function Ef(t,n){return U(t.getFullYear()%100,n,2)}function Rf(t,n){return t=Br(t),U(t.getFullYear()%100,n,2)}function Yf(t,n){return U(t.getFullYear()%1e4,n,4)}function Hf(t,n){var e=t.getDay();return t=e>=4||e===0?Ft(t):Ft.ceil(t),U(t.getFullYear()%1e4,n,4)}function If(t){var n=t.getTimezoneOffset();return(n>0?"-":(n*=-1,"+"))+U(n/60|0,"0",2)+U(n%60,"0",2)}function rr(t,n){return U(t.getUTCDate(),n,2)}function Lf(t,n){return U(t.getUTCHours(),n,2)}function Pf(t,n){return U(t.getUTCHours()%12||12,n,2)}function Of(t,n){return U(1+we.count(wt(t),t),n,3)}function Zr(t,n){return U(t.getUTCMilliseconds(),n,3)}function qf(t,n){return Zr(t,n)+"000"}function Wf(t,n){return U(t.getUTCMonth()+1,n,2)}function Vf(t,n){return U(t.getUTCMinutes(),n,2)}function Xf(t,n){return U(t.getUTCSeconds(),n,2)}function zf(t){var n=t.getUTCDay();return n===0?7:n}function Bf(t,n){return U(Xr.count(wt(t)-1,t),n,2)}function Gr(t){var n=t.getUTCDay();return n>=4||n===0?Et(t):Et.ceil(t)}function Zf(t,n){return t=Gr(t),U(Et.count(wt(t),t)+(wt(t).getUTCDay()===4),n,2)}function Gf(t){return t.getUTCDay()}function Qf(t,n){return U(Sn.count(wt(t)-1,t),n,2)}function Jf(t,n){return U(t.getUTCFullYear()%100,n,2)}function Kf(t,n){return t=Gr(t),U(t.getUTCFullYear()%100,n,2)}function jf(t,n){return U(t.getUTCFullYear()%1e4,n,4)}function tc(t,n){var e=t.getUTCDay();return t=e>=4||e===0?Et(t):Et.ceil(t),U(t.getUTCFullYear()%1e4,n,4)}function nc(){return"+0000"}function ir(){return"%"}function ur(t){return+t}function or(t){return Math.floor(+t/1e3)}var kt,Qr;ec({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 ec(t){return kt=nf(t),Qr=kt.format,kt.parse,kt.utcFormat,kt.utcParse,kt}function rc(t){return new Date(t)}function ic(t){return t instanceof Date?+t:+new Date(+t)}function Jr(t,n,e,r,i,u,o,a,f,s){var l=Vr(),h=l.invert,c=l.domain,g=s(".%L"),d=s(":%S"),y=s("%I:%M"),_=s("%I %p"),w=s("%a %d"),k=s("%b %d"),b=s("%B"),M=s("%Y");function S(m){return(f(m)<m?g:a(m)<m?d:o(m)<m?y:u(m)<m?_:r(m)<m?i(m)<m?w:k:e(m)<m?b:M)(m)}return l.invert=function(m){return new Date(h(m))},l.domain=function(m){return arguments.length?c(Array.from(m,ic)):c().map(rc)},l.ticks=function(m){var N=c();return t(N[0],N[N.length-1],m??10)},l.tickFormat=function(m,N){return N==null?S:s(N)},l.nice=function(m){var N=c();return(!m||typeof m.range!="function")&&(m=n(N[0],N[N.length-1],m??10)),m?c(Ls(N,m)):l},l.copy=function(){return Wr(l,Jr(t,n,e,r,i,u,o,a,f,s))},l}function Sc(){return me.apply(Jr(js,tf,ht,xe,En,en,ve,_e,At,Qr).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function D(t){return function(){return t}}const ar=Math.abs,q=Math.atan2,pt=Math.cos,uc=Math.max,Vn=Math.min,rt=Math.sin,St=Math.sqrt,V=1e-12,jt=Math.PI,Nn=jt/2,gn=2*jt;function oc(t){return t>1?0:t<-1?jt:Math.acos(t)}function sr(t){return t>=1?Nn:t<=-1?-Nn:Math.asin(t)}function Me(t){let n=3;return t.digits=function(e){if(!arguments.length)return n;if(e==null)n=null;else{const r=Math.floor(e);if(!(r>=0))throw new RangeError(`invalid digits: ${e}`);n=r}return t},()=>new ys(n)}function ac(t){return t.innerRadius}function sc(t){return t.outerRadius}function fc(t){return t.startAngle}function cc(t){return t.endAngle}function lc(t){return t&&t.padAngle}function hc(t,n,e,r,i,u,o,a){var f=e-t,s=r-n,l=o-i,h=a-u,c=h*f-l*s;if(!(c*c<V))return c=(l*(n-u)-h*(t-i))/c,[t+c*f,n+c*s]}function sn(t,n,e,r,i,u,o){var a=t-e,f=n-r,s=(o?u:-u)/St(a*a+f*f),l=s*f,h=-s*a,c=t+l,g=n+h,d=e+l,y=r+h,_=(c+d)/2,w=(g+y)/2,k=d-c,b=y-g,M=k*k+b*b,S=i-u,m=c*y-d*g,N=(b<0?-1:1)*St(uc(0,S*S*M-m*m)),Y=(m*b-k*N)/M,I=(-m*k-b*N)/M,R=(m*b+k*N)/M,E=(-m*k+b*N)/M,x=Y-_,T=I-w,C=R-_,P=E-w;return x*x+T*T>C*C+P*P&&(Y=R,I=E),{cx:Y,cy:I,x01:-l,y01:-h,x11:Y*(i/S-1),y11:I*(i/S-1)}}function Nc(){var t=ac,n=sc,e=D(0),r=null,i=fc,u=cc,o=lc,a=null,f=Me(s);function s(){var l,h,c=+t.apply(this,arguments),g=+n.apply(this,arguments),d=i.apply(this,arguments)-Nn,y=u.apply(this,arguments)-Nn,_=ar(y-d),w=y>d;if(a||(a=l=f()),g<c&&(h=g,g=c,c=h),!(g>V))a.moveTo(0,0);else if(_>gn-V)a.moveTo(g*pt(d),g*rt(d)),a.arc(0,0,g,d,y,!w),c>V&&(a.moveTo(c*pt(y),c*rt(y)),a.arc(0,0,c,y,d,w));else{var k=d,b=y,M=d,S=y,m=_,N=_,Y=o.apply(this,arguments)/2,I=Y>V&&(r?+r.apply(this,arguments):St(c*c+g*g)),R=Vn(ar(g-c)/2,+e.apply(this,arguments)),E=R,x=R,T,C;if(I>V){var P=sr(I/c*rt(Y)),ot=sr(I/g*rt(Y));(m-=P*2)>V?(P*=w?1:-1,M+=P,S-=P):(m=0,M=S=(d+y)/2),(N-=ot*2)>V?(ot*=w?1:-1,k+=ot,b-=ot):(N=0,k=b=(d+y)/2)}var z=g*pt(k),B=g*rt(k),K=c*pt(S),O=c*rt(S);if(R>V){var Tt=g*pt(b),bt=g*rt(b),Rt=c*pt(M),Yt=c*rt(M),j;if(_<jt)if(j=hc(z,B,Rt,Yt,Tt,bt,K,O)){var Ht=z-j[0],It=B-j[1],Lt=Tt-j[0],v=bt-j[1],A=1/rt(oc((Ht*Lt+It*v)/(St(Ht*Ht+It*It)*St(Lt*Lt+v*v)))/2),$=St(j[0]*j[0]+j[1]*j[1]);E=Vn(R,(c-$)/(A-1)),x=Vn(R,(g-$)/(A+1))}else E=x=0}N>V?x>V?(T=sn(Rt,Yt,z,B,g,x,w),C=sn(Tt,bt,K,O,g,x,w),a.moveTo(T.cx+T.x01,T.cy+T.y01),x<R?a.arc(T.cx,T.cy,x,q(T.y01,T.x01),q(C.y01,C.x01),!w):(a.arc(T.cx,T.cy,x,q(T.y01,T.x01),q(T.y11,T.x11),!w),a.arc(0,0,g,q(T.cy+T.y11,T.cx+T.x11),q(C.cy+C.y11,C.cx+C.x11),!w),a.arc(C.cx,C.cy,x,q(C.y11,C.x11),q(C.y01,C.x01),!w))):(a.moveTo(z,B),a.arc(0,0,g,k,b,!w)):a.moveTo(z,B),!(c>V)||!(m>V)?a.lineTo(K,O):E>V?(T=sn(K,O,Tt,bt,c,-E,w),C=sn(z,B,Rt,Yt,c,-E,w),a.lineTo(T.cx+T.x01,T.cy+T.y01),E<R?a.arc(T.cx,T.cy,E,q(T.y01,T.x01),q(C.y01,C.x01),!w):(a.arc(T.cx,T.cy,E,q(T.y01,T.x01),q(T.y11,T.x11),!w),a.arc(0,0,c,q(T.cy+T.y11,T.cx+T.x11),q(C.cy+C.y11,C.cx+C.x11),w),a.arc(C.cx,C.cy,E,q(C.y11,C.x11),q(C.y01,C.x01),!w))):a.arc(0,0,c,S,M,w)}if(a.closePath(),l)return a=null,l+""||null}return s.centroid=function(){var l=(+t.apply(this,arguments)+ +n.apply(this,arguments))/2,h=(+i.apply(this,arguments)+ +u.apply(this,arguments))/2-jt/2;return[pt(h)*l,rt(h)*l]},s.innerRadius=function(l){return arguments.length?(t=typeof l=="function"?l:D(+l),s):t},s.outerRadius=function(l){return arguments.length?(n=typeof l=="function"?l:D(+l),s):n},s.cornerRadius=function(l){return arguments.length?(e=typeof l=="function"?l:D(+l),s):e},s.padRadius=function(l){return arguments.length?(r=l==null?null:typeof l=="function"?l:D(+l),s):r},s.startAngle=function(l){return arguments.length?(i=typeof l=="function"?l:D(+l),s):i},s.endAngle=function(l){return arguments.length?(u=typeof l=="function"?l:D(+l),s):u},s.padAngle=function(l){return arguments.length?(o=typeof l=="function"?l:D(+l),s):o},s.context=function(l){return arguments.length?(a=l??null,s):a},s}function Te(t){return typeof t=="object"&&"length"in t?t:Array.from(t)}function Kr(t){this._context=t}Kr.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){switch(t=+t,n=+n,this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;default:this._context.lineTo(t,n);break}}};function jr(t){return new Kr(t)}function ti(t){return t[0]}function ni(t){return t[1]}function gc(t,n){var e=D(!0),r=null,i=jr,u=null,o=Me(a);t=typeof t=="function"?t:t===void 0?ti:D(t),n=typeof n=="function"?n:n===void 0?ni:D(n);function a(f){var s,l=(f=Te(f)).length,h,c=!1,g;for(r==null&&(u=i(g=o())),s=0;s<=l;++s)!(s<l&&e(h=f[s],s,f))===c&&((c=!c)?u.lineStart():u.lineEnd()),c&&u.point(+t(h,s,f),+n(h,s,f));if(g)return u=null,g+""||null}return a.x=function(f){return arguments.length?(t=typeof f=="function"?f:D(+f),a):t},a.y=function(f){return arguments.length?(n=typeof f=="function"?f:D(+f),a):n},a.defined=function(f){return arguments.length?(e=typeof f=="function"?f:D(!!f),a):e},a.curve=function(f){return arguments.length?(i=f,r!=null&&(u=i(r)),a):i},a.context=function(f){return arguments.length?(f==null?r=u=null:u=i(r=f),a):r},a}function $c(t,n,e){var r=null,i=D(!0),u=null,o=jr,a=null,f=Me(s);t=typeof t=="function"?t:t===void 0?ti:D(+t),n=typeof n=="function"?n:D(n===void 0?0:+n),e=typeof e=="function"?e:e===void 0?ni:D(+e);function s(h){var c,g,d,y=(h=Te(h)).length,_,w=!1,k,b=new Array(y),M=new Array(y);for(u==null&&(a=o(k=f())),c=0;c<=y;++c){if(!(c<y&&i(_=h[c],c,h))===w)if(w=!w)g=c,a.areaStart(),a.lineStart();else{for(a.lineEnd(),a.lineStart(),d=c-1;d>=g;--d)a.point(b[d],M[d]);a.lineEnd(),a.areaEnd()}w&&(b[c]=+t(_,c,h),M[c]=+n(_,c,h),a.point(r?+r(_,c,h):b[c],e?+e(_,c,h):M[c]))}if(k)return a=null,k+""||null}function l(){return gc().defined(i).curve(o).context(u)}return s.x=function(h){return arguments.length?(t=typeof h=="function"?h:D(+h),r=null,s):t},s.x0=function(h){return arguments.length?(t=typeof h=="function"?h:D(+h),s):t},s.x1=function(h){return arguments.length?(r=h==null?null:typeof h=="function"?h:D(+h),s):r},s.y=function(h){return arguments.length?(n=typeof h=="function"?h:D(+h),e=null,s):n},s.y0=function(h){return arguments.length?(n=typeof h=="function"?h:D(+h),s):n},s.y1=function(h){return arguments.length?(e=h==null?null:typeof h=="function"?h:D(+h),s):e},s.lineX0=s.lineY0=function(){return l().x(t).y(n)},s.lineY1=function(){return l().x(t).y(e)},s.lineX1=function(){return l().x(r).y(n)},s.defined=function(h){return arguments.length?(i=typeof h=="function"?h:D(!!h),s):i},s.curve=function(h){return arguments.length?(o=h,u!=null&&(a=o(u)),s):o},s.context=function(h){return arguments.length?(h==null?u=a=null:a=o(u=h),s):u},s}function pc(t,n){return n<t?-1:n>t?1:n>=t?0:NaN}function dc(t){return t}function Dc(){var t=dc,n=pc,e=null,r=D(0),i=D(gn),u=D(0);function o(a){var f,s=(a=Te(a)).length,l,h,c=0,g=new Array(s),d=new Array(s),y=+r.apply(this,arguments),_=Math.min(gn,Math.max(-gn,i.apply(this,arguments)-y)),w,k=Math.min(Math.abs(_)/s,u.apply(this,arguments)),b=k*(_<0?-1:1),M;for(f=0;f<s;++f)(M=d[g[f]=f]=+t(a[f],f,a))>0&&(c+=M);for(n!=null?g.sort(function(S,m){return n(d[S],d[m])}):e!=null&&g.sort(function(S,m){return e(a[S],a[m])}),f=0,h=c?(_-s*b)/c:0;f<s;++f,y=w)l=g[f],M=d[l],w=y+(M>0?M*h:0)+b,d[l]={data:a[l],index:f,value:M,startAngle:y,endAngle:w,padAngle:k};return d}return o.value=function(a){return arguments.length?(t=typeof a=="function"?a:D(+a),o):t},o.sortValues=function(a){return arguments.length?(n=a,e=null,o):n},o.sort=function(a){return arguments.length?(e=a,n=null,o):e},o.startAngle=function(a){return arguments.length?(r=typeof a=="function"?a:D(+a),o):r},o.endAngle=function(a){return arguments.length?(i=typeof a=="function"?a:D(+a),o):i},o.padAngle=function(a){return arguments.length?(u=typeof a=="function"?a:D(+a),o):u},o}function fr(t){return t<0?-1:1}function cr(t,n,e){var r=t._x1-t._x0,i=n-t._x1,u=(t._y1-t._y0)/(r||i<0&&-0),o=(e-t._y1)/(i||r<0&&-0),a=(u*i+o*r)/(r+i);return(fr(u)+fr(o))*Math.min(Math.abs(u),Math.abs(o),.5*Math.abs(a))||0}function lr(t,n){var e=t._x1-t._x0;return e?(3*(t._y1-t._y0)/e-n)/2:n}function Xn(t,n,e){var r=t._x0,i=t._y0,u=t._x1,o=t._y1,a=(u-r)/3;t._context.bezierCurveTo(r+a,i+a*n,u-a,o-a*e,u,o)}function $n(t){this._context=t}$n.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:Xn(this,this._t0,lr(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(t,n){var e=NaN;if(t=+t,n=+n,!(t===this._x1&&n===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break;case 1:this._point=2;break;case 2:this._point=3,Xn(this,lr(this,e=cr(this,t,n)),e);break;default:Xn(this,this._t0,e=cr(this,t,n));break}this._x0=this._x1,this._x1=t,this._y0=this._y1,this._y1=n,this._t0=e}}};Object.create($n.prototype).point=function(t,n){$n.prototype.point.call(this,n,t)};function Uc(t){return new $n(t)}function Gt(t,n,e){this.k=t,this.x=n,this.y=e}Gt.prototype={constructor:Gt,scale:function(t){return t===1?this:new Gt(this.k*t,this.x,this.y)},translate:function(t,n){return t===0&n===0?this:new Gt(this.k,this.x+this.k*t,this.y+this.k*n)},apply:function(t){return[t[0]*this.k+this.x,t[1]*this.k+this.y]},applyX:function(t){return t*this.k+this.x},applyY:function(t){return t*this.k+this.y},invert:function(t){return[(t[0]-this.x)/this.k,(t[1]-this.y)/this.k]},invertX:function(t){return(t-this.x)/this.k},invertY:function(t){return(t-this.y)/this.k},rescaleX:function(t){return t.copy().domain(t.range().map(this.invertX,this).map(t.invert,t))},rescaleY:function(t){return t.copy().domain(t.range().map(this.invertY,this).map(t.invert,t))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};Gt.prototype;export{Nc as a,_c as b,Sc as c,gc as d,yc as e,Uc as f,$c as g,ue as h,xc as i,wc as j,ls as k,Is as l,vc as m,kc as n,Ns as o,Dc as p,Cc as q,Tc as r,Mc as s,Qr as t,bc as u,Ac as v,Si as w,mc as x,hr as y};
@@ -0,0 +1 @@
1
+ import{r as x,j as s}from"./react-qoZPGuNy.js";import{f as L,r as b,h as R}from"./index-C_O7gp2F.js";import{D as g,U as O}from"./format-CfAcS4D8.js";import{F as N,s as C}from"./ui-Bq3RQsdJ.js";b.schema;const h={bullish:O,bearish:g,neutral:"var(--color-soft)"},I={hit:O,miss:g,partial:"#f4a259"};function y(r){let n=0,i=0;for(const m of r)for(const c of m.grades??[])i++,c.verdict==="hit"?n+=1:c.verdict==="partial"&&(n+=.5);return{rate:i?n/i:0,n:i}}function D({config:r}){const[n,i]=x.useState(null),[m,c]=x.useState(!1);if(x.useEffect(()=>{let e=!1;const l=()=>{fetch(r.src,{cache:"no-store"}).then(t=>{if(!t.ok)throw new Error(`HTTP ${t.status}`);return t.json()}).then(t=>{e||(i(t),c(!0))}).catch(()=>{e||c(!0)})};l();const o=()=>l();window.addEventListener("focus",o);const d=window.setInterval(l,r.refreshSec*1e3);return()=>{e=!0,window.removeEventListener("focus",o),window.clearInterval(d)}},[r.src,r.refreshSec]),!m)return s.jsx(N,{loading:!0,children:"loading brief…"});const f=(n==null?void 0:n.entries)??[];if(f.length===0)return s.jsx(N,{children:"no brief yet — run /zframes-brief"});const k=f.slice(-r.entries).reverse(),{rate:E,n:u}=y(f);return s.jsxs("div",{className:`body-sm flex flex-col gap-3 ${C}`,children:[u>0&&s.jsxs("div",{className:"caption text-soft flex items-center justify-between",children:[s.jsx("span",{className:"uppercase tracking-wide",children:"track record"}),s.jsxs("span",{className:"text-strong font-bold tabular-nums",children:[Math.round(E*100),"% · ",u," call",u===1?"":"s"]})]}),k.map((e,l)=>{var o,d,t,j,v,w;return s.jsxs("div",{className:"flex flex-col gap-1.5",children:[(e.date||((o=e.run)==null?void 0:o.model))&&s.jsxs("div",{className:"caption text-soft flex items-baseline justify-between gap-2",children:[s.jsx("span",{className:"uppercase tracking-wide",children:e.date}),((d=e.run)==null?void 0:d.model)&&s.jsxs("span",{className:"truncate opacity-70",title:e.run.timestamp??"",children:[e.run.model,e.run.effort?` · ${e.run.effort}`:""]})]}),e.summary&&s.jsx("div",{className:"text-normal whitespace-pre-wrap",children:e.summary}),(((t=e.calls)==null?void 0:t.length)??0)>0&&s.jsx("div",{className:"flex flex-col gap-1",children:(j=e.calls)==null?void 0:j.map((a,p)=>s.jsxs("div",{className:"grid grid-cols-[auto_minmax(0,1fr)] items-baseline gap-2",children:[s.jsx("span",{className:"caption font-bold uppercase tracking-wide",style:{color:h[a.direction??"neutral"]??h.neutral},children:a.symbol?R(a.symbol):a.direction??"•"}),s.jsx("span",{className:"text-normal",children:a.claim})]},a.id??p))}),(((v=e.grades)==null?void 0:v.length)??0)>0&&s.jsxs("div",{className:"flex flex-wrap items-center gap-1.5",children:[s.jsx("span",{className:"caption text-soft uppercase tracking-wide",children:"graded"}),(w=e.grades)==null?void 0:w.map((a,p)=>s.jsx("span",{className:"caption rounded px-1.5 py-0.5 font-bold uppercase",style:{color:I[a.verdict??""]??h.neutral,background:"var(--color-surface)"},title:a.note??"",children:a.verdict??"—"},a.callId??p))]})]},e.date??l)})]})}const T=L({...b,component:D});export{T as dailyAnalysisFrame};