courthive-components 7.1.1 → 7.1.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -160,7 +160,7 @@ In order to be iterable, non-array objects must have a [Symbol.iterator]() metho
160
160
  Instead, pass the .innerHTML of the element, or use a function that returns a cloned version of the element instead.
161
161
 
162
162
  1) content: element.innerHTML
163
- 2) content: () => element.cloneNode(true)`)}var s=i.reduce(function(e,t){var n=t&&Cv(t,r);return n&&e.push(n),e},[]);return N_(e)?s[0]:s}wv.defaultProps=sv,wv.setDefaultProps=lv,wv.currentInput=W_,Object.assign({},Rh,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:`0`,top:`0`,margin:`0`},arrow:{position:`absolute`},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),wv.setDefaultProps({render:yv});var Tv=`#000000.#434343.#666666.#999999.#b7b7b7.#cccccc.#d9d9d9.#ffffff.#980000.#ff0000.#ff9900.#ffff00.#00ff00.#00ffff.#4a86e8.#0000ff.#9900ff.#ff00ff.#e6b8af.#f4cccc.#fce5cd.#fff2cc.#d9ead3.#d0e0e3.#c9daf8.#cfe2f3.#d9d2e9.#ead1dc`.split(`.`),Ev=`notes-toolbar-recent-colors`,Dv=8;function Ov(){try{return JSON.parse(localStorage.getItem(Ev)||`[]`)}catch{return[]}}function kv(e){let t=Ov().filter(t=>t!==e);t.unshift(e),t.length>Dv&&(t=t.slice(0,Dv)),localStorage.setItem(Ev,JSON.stringify(t))}function Av(e={}){let t=document.createElement(`div`);return t.className=`notes-toolbar`,t.appendChild(Fv(e)),t.appendChild(Iv(e)),t.appendChild(Lv(e)),t.appendChild(Vv(e)),t.appendChild(Wv(e)),t.appendChild(Gv(e)),t.appendChild(qv(e)),t}function jv(e,t){for(let[n,r]of Object.entries(t)){let t=e.querySelector(`[data-action="${n}"]`);t&&t.classList.toggle(`is-active`,r)}}function Mv(e,t){let n=e.querySelector(`[data-action="heading"]`);n&&(n.value=t===!1?`0`:String(t))}function Nv(){let e=document.createElement(`div`);return e.className=`notes-toolbar-group`,e}function Pv(e,t,n,r){let i=document.createElement(`button`);return i.className=`notes-toolbar-btn`,i.dataset.action=e,i.title=n,i.type=`button`,i.innerHTML=t,r&&i.addEventListener(`click`,r),i}function Fv(e){let t=Nv(),n=document.createElement(`select`);n.dataset.action=`heading`,n.title=`Text style`;for(let e of[{value:`0`,label:`Paragraph`},{value:`1`,label:`Heading 1`},{value:`2`,label:`Heading 2`},{value:`3`,label:`Heading 3`},{value:`4`,label:`Heading 4`},{value:`5`,label:`Heading 5`},{value:`6`,label:`Heading 6`}]){let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,n.appendChild(t)}return n.addEventListener(`change`,()=>{let t=parseInt(n.value,10);e.onHeading?.(t!==0&&t)}),t.appendChild(n),t}function Iv(e){let t=Nv();return t.appendChild(Pv(`bold`,`<b>B</b>`,`Bold`,e.onBold)),t.appendChild(Pv(`italic`,`<i>I</i>`,`Italic`,e.onItalic)),t.appendChild(Pv(`underline`,`<u>U</u>`,`Underline`,e.onUnderline)),t.appendChild(Pv(`strike`,`<s>S</s>`,`Strikethrough`,e.onStrike)),t}function Lv(e){let t=Nv();return t.appendChild(Rv(`color`,`A`,`Text color`,`#000000`,t=>{kv(t),e.onColor?.(t)})),t.appendChild(Rv(`background`,`A`,`Background color`,`#ffff00`,t=>{kv(t),e.onBackground?.(t)})),t}function Rv(e,t,n,r,i){let a=document.createElement(`button`);a.className=`notes-toolbar-btn notes-toolbar-color-btn`,a.dataset.action=e,a.title=n,a.type=`button`;let o=document.createElement(`span`);o.className=`notes-toolbar-color-letter`,o.textContent=t,a.appendChild(o);let s=document.createElement(`span`);s.className=`notes-toolbar-color-bar`,s.style.backgroundColor=r,a.appendChild(s);let c;return a.addEventListener(`click`,()=>{if(c){c.destroy(),c=void 0;return}let e=zv(r,e=>{s.style.backgroundColor=e,i(e),c?.destroy(),c=void 0});c=wv(a,{content:e,theme:`light-border`,trigger:`manual`,interactive:!0,placement:`bottom-start`,onHidden:()=>{c?.destroy(),c=void 0}}),c.show()}),a}function zv(e,t){let n=document.createElement(`div`);n.className=`notes-color-panel`;let r=document.createElement(`div`);r.className=`notes-color-swatches`;for(let n of Tv)r.appendChild(Bv(n,n===e,t));n.appendChild(r);let i=Ov();if(i.length){let r=document.createElement(`div`);r.className=`notes-color-section-label`,r.textContent=`Recent`,n.appendChild(r);let a=document.createElement(`div`);a.className=`notes-color-swatches`;for(let n of i)a.appendChild(Bv(n,n===e,t));n.appendChild(a)}let a=document.createElement(`div`);a.className=`notes-color-custom-row`;let o=document.createElement(`input`);o.type=`color`,o.value=e,o.className=`notes-color-custom-input`;let s=document.createElement(`label`);return s.className=`notes-color-custom-label`,s.textContent=`Custom...`,s.addEventListener(`click`,()=>o.click()),o.addEventListener(`input`,()=>t(o.value)),a.appendChild(o),a.appendChild(s),n.appendChild(a),n}function Bv(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=`notes-color-swatch`,t&&r.classList.add(`is-selected`),r.style.backgroundColor=e,(e===`#ffffff`||e===`#fff`)&&(r.style.border=`1px solid var(--chc-border-secondary)`),r.title=e,r.addEventListener(`click`,()=>n(e)),r}function Vv(e){let t=Nv();return t.appendChild(Pv(`orderedList`,Hv(16,16,`<path d="M3 2h12v2H3zm0 5h12v2H3zm0 5h12v2H3z" fill="currentColor"/><text x="0" y="4" font-size="3.5" fill="currentColor">1</text><text x="0" y="9" font-size="3.5" fill="currentColor">2</text><text x="0" y="14" font-size="3.5" fill="currentColor">3</text>`),`Ordered list`,e.onOrderedList)),t.appendChild(Pv(`bulletList`,Hv(16,16,`<circle cx="1.5" cy="3" r="1.5" fill="currentColor"/><circle cx="1.5" cy="8" r="1.5" fill="currentColor"/><circle cx="1.5" cy="13" r="1.5" fill="currentColor"/><path d="M5 2h10v2H5zm0 5h10v2H5zm0 5h10v2H5z" fill="currentColor"/>`),`Bullet list`,e.onBulletList)),t}function Hv(e,t,n){return`<svg width="${e}" height="${t}" viewBox="0 0 ${e} ${t}" xmlns="http://www.w3.org/2000/svg">${n}</svg>`}var Uv={alignLeft:Hv(16,16,`<path d="M1 2h14v2H1zm0 4h9v2H1zm0 4h14v2H1zm0 4h9v2H1z" fill="currentColor"/>`),alignCenter:Hv(16,16,`<path d="M1 2h14v2H1zm3.5 4h7v2h-7zM1 10h14v2H1zm3.5 4h7v2h-7z" fill="currentColor"/>`),alignRight:Hv(16,16,`<path d="M1 2h14v2H1zm6 4h8v2H7zM1 10h14v2H1zm6 4h8v2H7z" fill="currentColor"/>`),alignJustify:Hv(16,16,`<path d="M1 2h14v2H1zm0 4h14v2H1zm0 4h14v2H1zm0 4h14v2H1z" fill="currentColor"/>`)};function Wv(e){let t=Nv();return t.appendChild(Pv(`alignLeft`,Uv.alignLeft,`Align left`,()=>e.onAlign?.(`left`))),t.appendChild(Pv(`alignCenter`,Uv.alignCenter,`Align center`,()=>e.onAlign?.(`center`))),t.appendChild(Pv(`alignRight`,Uv.alignRight,`Align right`,()=>e.onAlign?.(`right`))),t.appendChild(Pv(`alignJustify`,Uv.alignJustify,`Justify`,()=>e.onAlign?.(`justify`))),t}function Gv(e){let t=Nv();t.appendChild(Pv(`blockquote`,`“`,`Blockquote`,e.onBlockquote)),t.appendChild(Pv(`codeBlock`,`</>`,`Code block`,e.onCodeBlock));let n=Pv(`link`,`⇗`,`Insert link`);Kv(n,`Enter URL`,`https://`,t=>e.onLink?.(t)),t.appendChild(n);let r=Pv(`video`,`▷`,`Insert video`);return Kv(r,`YouTube URL`,`https://youtube.com/...`,t=>e.onVideo?.(t)),t.appendChild(r),t}function Kv(e,t,n,r){let i;e.addEventListener(`click`,()=>{if(i){i.destroy(),i=void 0;return}let a=document.createElement(`div`);a.className=`notes-url-panel`;let o=document.createElement(`div`);o.className=`notes-url-label`,o.textContent=t,a.appendChild(o);let s=document.createElement(`input`);s.type=`url`,s.className=`notes-url-input`,s.placeholder=n,a.appendChild(s);let c=document.createElement(`div`);c.className=`notes-url-actions`;let l=document.createElement(`button`);l.type=`button`,l.className=`button notes-url-cancel`,l.textContent=`Cancel`,l.addEventListener(`click`,()=>{i?.destroy(),i=void 0});let u=document.createElement(`button`);u.type=`button`,u.className=`button is-info notes-url-confirm`,u.textContent=`Insert`,u.addEventListener(`click`,()=>{let e=s.value.trim();e&&r(e),i?.destroy(),i=void 0}),c.appendChild(l),c.appendChild(u),a.appendChild(c),s.addEventListener(`keydown`,e=>{e.key===`Enter`?(e.preventDefault(),u.click()):e.key===`Escape`&&l.click()}),i=wv(e,{content:a,theme:`light-border`,trigger:`manual`,interactive:!0,placement:`bottom-start`,onShown:()=>setTimeout(()=>s.focus(),0),onHidden:()=>{i?.destroy(),i=void 0}}),i.show()})}function qv(e){let t=Nv();return t.appendChild(Pv(`clearFormatting`,`⊘`,`Clear formatting`,e.onClearFormatting)),t}function Jv(e={}){let t=!1,l,u=document.createElement(`div`);u.className=`notes-editor-content`;let d={toolbar:void 0,editorElement:u,editor:void 0,getHtml:()=>d.editor&&!d.editor.isEmpty?d.editor.getHTML():``,isEmpty:()=>!d.editor||d.editor.isEmpty,destroy:()=>{t||(t=!0,l!==void 0&&cancelAnimationFrame(l),d.editor?.destroy(),d.editor=void 0)}};d.toolbar=Av({onHeading:e=>{d.editor&&(e===!1?d.editor.chain().focus().setParagraph().run():d.editor.chain().focus().toggleHeading({level:e}).run())},onBold:()=>d.editor?.chain().focus().toggleBold().run(),onItalic:()=>d.editor?.chain().focus().toggleItalic().run(),onUnderline:()=>d.editor?.chain().focus().toggleUnderline().run(),onStrike:()=>d.editor?.chain().focus().toggleStrike().run(),onColor:e=>d.editor?.chain().focus().setColor(e).run(),onBackground:e=>d.editor?.chain().focus().setHighlight({color:e}).run(),onBulletList:()=>d.editor?.chain().focus().toggleBulletList().run(),onOrderedList:()=>d.editor?.chain().focus().toggleOrderedList().run(),onAlign:e=>d.editor?.chain().focus().setTextAlign(e).run(),onBlockquote:()=>d.editor?.chain().focus().toggleBlockquote().run(),onCodeBlock:()=>d.editor?.chain().focus().toggleCodeBlock().run(),onLink:e=>d.editor?.chain().focus().setLink({href:e}).run(),onVideo:e=>d.editor?.commands.setYoutubeVideo({src:e}),onClearFormatting:()=>d.editor?.chain().focus().clearNodes().unsetAllMarks().run()});let f=()=>{if(d.editor){jv(d.toolbar,{bold:d.editor.isActive(`bold`),italic:d.editor.isActive(`italic`),underline:d.editor.isActive(`underline`),strike:d.editor.isActive(`strike`),orderedList:d.editor.isActive(`orderedList`),bulletList:d.editor.isActive(`bulletList`),blockquote:d.editor.isActive(`blockquote`),codeBlock:d.editor.isActive(`codeBlock`),alignLeft:d.editor.isActive({textAlign:`left`}),alignCenter:d.editor.isActive({textAlign:`center`}),alignRight:d.editor.isActive({textAlign:`right`}),alignJustify:d.editor.isActive({textAlign:`justify`})});for(let e=1;e<=6;e++)if(d.editor.isActive(`heading`,{level:e})){Mv(d.toolbar,e);return}Mv(d.toolbar,!1)}};return l=requestAnimationFrame(()=>{l=void 0,!t&&(d.editor=new c.Editor({element:u,extensions:[s.default,n.TextStyle,a.Color,i.default.configure({multicolor:!0}),r.default.configure({types:[`heading`,`paragraph`]}),o.default.configure({inline:!1})],content:e.initialHtml||``,onSelectionUpdate:f,onTransaction:f}))}),d}function Yv(e,t,n){if(!e)return{};let r=document.createElement(`aside`);r.classList.add(`menu`);let i={},a=e=>n&&e.close!==!1?t=>{t.stopPropagation(),n(),e.onClick()}:t=>{t.stopPropagation(),e.onClick()},o=0,s=()=>(o+=1,o),c=e=>e?.heading||e?.text||e?.label||`Item ${s()}`,l=e=>{let t=document.createElement(`li`);if(t.className=`font-medium`,e.style&&(t.style.cssText=e.style),e.onClick){let n=e.fontSize||`1em`;if(e.divider){let e=document.createElement(`hr`);e.classList.add(`dropdown-divider`),t.appendChild(e)}else{let r=document.createElement(`a`),i=e.disabled?`0.4`:`1`;r.style.cssText=`text-decoration: none; opacity: ${i}; font-size: ${n}`,e.class&&r.classList.add(e.class),e.color&&(r.style.color=e.color),e.heading&&(r.style.fontWeight=`bold`),e.disabled||(r.onclick=a(e)),r.innerHTML=c(e),t.appendChild(r)}}else t.innerHTML=c(e),e.disabled||(t.onclick=e.onClick);return t},u;for(let e of t||[])if(!e.hide){if(e.items){if(e.text){let t=document.createElement(`p`);t.className=`menu-label font-medium`,t.innerHTML=e.text,r.appendChild(t)}let t=document.createElement(`ul`);t.className=`menu-list`;for(let n of e.items)n.hide||t.appendChild(l(n));r.appendChild(t)}else if(e.type===`input`){let{field:t,inputElement:n}=Sn(e);e.focus&&(u=n),i[e.field]=n,r.appendChild(t)}else if(e.type===`divider`){let e=document.createElement(`hr`);e.classList.add(`dropdown-divider`),r.appendChild(e)}}return e.appendChild(r),{focusElement:u}}function Xv(e){return typeof e==`function`}var Zv;function Qv(e){Zv&&=(Zv?.destroy(!0),void 0),e?.remove&&e.remove()}function $v(e){let{title:t,options:n,menuItems:r=[],coords:i,callback:a,config:o}=e,{target:s,items:c}=e;if(!n?.length&&!c?.length&&!r)return;Qv();let l=document.createElement(`div`),u;return s||=i?.evt?.target,s&&(Zv=wv(s,{content:()=>{c=c?.filter(e=>!e.hide&&!e.disabled).map(e=>({...e,onClick:()=>{Qv(l),Xv(e.onClick)&&e.onClick()}}))||n?.filter(e=>!e.hide&&!e.disabled).map(e=>({text:typeof e==`object`?e.option:e,style:e.style,onClick:()=>{e.subMenu?Zv.setContent(`IMPLEMENT SUB MENU`):Xv(e.onClick)?(Qv(l),e.onClick()):Xv(a)&&a&&(Qv(l),a(typeof e==`object`?{...e,coords:i}:e))}}));let e=[{text:t,items:c},...r];return u=Yv(l,e).focusElement,l},theme:`light-border`,trigger:`click`,onShown:()=>{u&&setTimeout(()=>u?.focus(),0)},...o}),Zv.show(),Zv.setProps({interactive:!0})),Zv}var K=`court-line`;function q(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ey(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);return n.setAttribute(`viewBox`,e),n.setAttribute(`class`,t),n.setAttribute(`fill`,`none`),n.style.width=`100%`,n.style.height=`auto`,n.style.display=`block`,n}function ty(e){let t=ey(`0 0 360 780`,e);for(let e of[`M 0 0 L 360 0 L 360 780 L 0 780 Z`,`M 45 0 L 45 780`,`M 315 0 L 315 780`,`M 0 390 L 360 390`,`M 45 210 L 315 210`,`M 45 570 L 315 570`,`M 180 210 L 180 570`,`M 180 0 L 180 20`,`M 180 760 L 180 780`])t.appendChild(q(`path`,{d:e,class:K}));return t}function ny(e){let t=ey(`0 0 500 470`,e),n=[q(`rect`,{x:`0`,y:`0`,width:`500`,height:`470`,class:K}),q(`circle`,{cx:`250`,cy:`470`,r:`60`,class:K}),q(`line`,{x1:`0`,y1:`470`,x2:`500`,y2:`470`,class:K}),q(`rect`,{x:`170`,y:`0`,width:`160`,height:`190`,class:K}),q(`circle`,{cx:`250`,cy:`190`,r:`60`,class:K}),q(`line`,{x1:`220`,y1:`40`,x2:`280`,y2:`40`,class:K}),q(`circle`,{cx:`250`,cy:`52`,r:`12`,class:K}),q(`path`,{d:`M 30 0 L 30 90 A 220 220 0 0 0 470 90 L 470 0`,class:K})];for(let e of n)t.appendChild(e);return t}function ry(e){let t=ey(`0 0 500 440`,e),n=[q(`path`,{d:`M 20 170 A 350 400 0 0 1 480 170`,class:K}),q(`line`,{x1:`250`,y1:`400`,x2:`20`,y2:`170`,class:K}),q(`line`,{x1:`250`,y1:`400`,x2:`480`,y2:`170`,class:K}),q(`path`,{d:`M 250 400 L 314 336 L 250 273 L 186 336 Z`,class:K}),q(`path`,{d:`M 340 355 A 100 100 0 0 1 160 355`,class:K}),q(`line`,{x1:`340`,y1:`355`,x2:`265`,y2:`405`,class:K}),q(`line`,{x1:`160`,y1:`355`,x2:`235`,y2:`405`,class:K}),q(`path`,{d:`M 235 405 A 18 18 0 0 1 265 405`,class:K}),q(`circle`,{cx:`250`,cy:`340`,r:`9`,class:K}),q(`line`,{x1:`247`,y1:`339`,x2:`253`,y2:`339`,class:K}),q(`path`,{d:`M 244 398 L 244 404 L 250 408 L 256 404 L 256 398 Z`,class:K}),q(`rect`,{x:`310`,y:`332`,width:`8`,height:`8`,transform:`rotate(45 314 336)`,class:K}),q(`rect`,{x:`246`,y:`269`,width:`8`,height:`8`,transform:`rotate(45 250 273)`,class:K}),q(`rect`,{x:`182`,y:`332`,width:`8`,height:`8`,transform:`rotate(45 186 336)`,class:K}),q(`rect`,{x:`230`,y:`393`,width:`8`,height:`18`,class:K}),q(`rect`,{x:`262`,y:`393`,width:`8`,height:`18`,class:K})];for(let e of n)t.appendChild(e);return t}function iy(e){let t=ey(`0 0 850 2000`,e),n=[q(`rect`,{x:`0`,y:`0`,width:`850`,height:`2000`,rx:`280`,ry:`280`,class:K}),q(`line`,{x1:`0`,y1:`1000`,x2:`850`,y2:`1000`,class:K}),q(`circle`,{cx:`425`,cy:`1000`,r:`60`,class:K}),q(`line`,{x1:`0`,y1:`650`,x2:`850`,y2:`650`,class:K}),q(`line`,{x1:`0`,y1:`1350`,x2:`850`,y2:`1350`,class:K}),q(`line`,{x1:`140`,y1:`300`,x2:`710`,y2:`300`,class:K}),q(`line`,{x1:`140`,y1:`1700`,x2:`710`,y2:`1700`,class:K}),q(`path`,{d:`M 395 300 A 40 40 0 0 1 455 300`,class:K}),q(`path`,{d:`M 395 1700 A 40 40 0 0 0 455 1700`,class:K}),q(`circle`,{cx:`270`,cy:`650`,r:`50`,class:K}),q(`circle`,{cx:`580`,cy:`650`,r:`50`,class:K}),q(`circle`,{cx:`270`,cy:`1350`,r:`50`,class:K}),q(`circle`,{cx:`580`,cy:`1350`,r:`50`,class:K})];for(let e of n)t.appendChild(e);return t}function ay(e){let t=ey(`0 0 200 440`,e);for(let e of[`M 0 0 L 200 0 L 200 440 L 0 440 Z`,`M 0 220 L 200 220`,`M 0 150 L 200 150`,`M 0 290 L 200 290`,`M 100 0 L 100 150`,`M 100 290 L 100 440`])t.appendChild(q(`path`,{d:e,class:K}));return t}function oy(e){let t=ey(`0 0 200 440`,e);for(let e of[`M 0 0 L 200 0 L 200 440 L 0 440 Z`,`M 18 0 L 18 440`,`M 182 0 L 182 440`,`M 0 220 L 200 220`,`M 0 146 L 200 146`,`M 0 294 L 200 294`,`M 0 30 L 200 30`,`M 0 410 L 200 410`,`M 100 146 L 100 220`,`M 100 220 L 100 294`])t.appendChild(q(`path`,{d:e,class:K}));return t}function sy(e){let t=ey(`0 0 100 200`,e);for(let e of[`M 0 0 L 100 0 L 100 200 L 0 200 Z`,`M 0 100 L 100 100`,`M 0 69.5 L 100 69.5`,`M 0 130.5 L 100 130.5`,`M 50 69.5 L 50 67.5`,`M 50 130.5 L 50 132.5`])t.appendChild(q(`path`,{d:e,class:K}));return t}var cy=`COURT_SVG`,ly={tennis:ty,basketball:ny,baseball:ry,hockey:iy,pickleball:ay,badminton:oy,padel:sy},uy={TENNIS:`tennis`,PADEL:`padel`,PICKLEBALL:`pickleball`,BADMINTON:`badminton`},dy={HAL:`basketball`,INN:`baseball`,PER:`hockey`};function fy(e){if(e){for(let[t,n]of Object.entries(dy))if(e.startsWith(t))return n;if(e.startsWith(`SET`)||e.startsWith(`T`))return e.includes(`@RALLY`)?`pickleball`:`tennis`}}function py(e){let t=e?.competitionFormat?.sport;return t&&uy[t]?uy[t]:fy(e?.matchUpFormat)}function my(e){let t=e.getAttribute(`viewBox`);if(!t)return e;let n=t.split(/\s+/).map(Number);if(n.length!==4)return e;let[r,i,a,o]=n;if(o<=a)return e;e.setAttribute(`viewBox`,`${r} ${i} ${o} ${a}`);let s=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);for(s.setAttribute(`transform`,`translate(${o}, 0) rotate(90)`);e.firstChild;)s.appendChild(e.firstChild);return e.appendChild(s),e}function hy(e,t=``){let n=e?ly[e]:void 0;if(n)return my(n(t?`court--${e} ${t}`:`court--${e}`))}function gy(e){let t=[];return e.city&&t.push(e.city),(e.state||e.region)&&t.push(e.state||e.region),e.countryCode?t.push(e.countryCode):e.country&&t.push(e.country),t.join(`, `)}function _y(e){if(!e)return;let t=gy(e);return t.length?t:void 0}function vy(e){let t=e?.find(Boolean);if(!t)return;let n=t.addresses?.find(Boolean);return n?_y(n)??t.venueName:t.venueName}var yy=/^(\d{4})-(\d{2})-(\d{2})/,by=864e5;function xy(e){if(!e)return null;let t=yy.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),i=Number(t[3]);return!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?null:{year:n,month:r,day:i}}function Sy(e,t){if(!t)return new Date(e.year,e.month-1,e.day);let n=Date.UTC(e.year,e.month-1,e.day,0,0,0,0),r=new Intl.DateTimeFormat(`en-US`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hourCycle:`h23`}),i=new Date(n);for(let e=0;e<2;e++){let e=r.formatToParts(i),t=t=>Number(e.find(e=>e.type===t)?.value??0),a=Date.UTC(t(`year`),t(`month`)-1,t(`day`),t(`hour`),t(`minute`),t(`second`))-i.getTime();i=new Date(n-a)}return i}function Cy(e,t){if(!t)return new Date(e.year,e.month-1,e.day+1);let n=Sy(e,t),r=new Date(n.getTime()+by),i=new Intl.DateTimeFormat(`en-US`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`}).formatToParts(r),a=e=>Number(i.find(t=>t.type===e)?.value??0);return Sy({year:a(`year`),month:a(`month`),day:a(`day`)},t)}function wy(e){if(!e)return null;let t=xy(e);if(t)return new Date(t.year,t.month-1,t.day);let n=new Date(e);return Number.isNaN(n.getTime())?null:n}function Ty(e){return e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}function Ey(e){return e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`})}function Dy(e,t){if(!e&&!t)return;let n=wy(e),r=wy(t),i=!!n&&!Number.isNaN(n.getTime()),a=!!r&&!Number.isNaN(r.getTime());if(i||a)return i&&a&&n.getTime()===r.getTime()?Ey(n):i&&a?n.getFullYear()===r.getFullYear()?`${Ty(n)} – ${Ty(r)}, ${r.getFullYear()}`:`${Ey(n)} – ${Ey(r)}`:Ey(i?n:r)}function Oy(e){return e.slice().sort((e,t)=>{let n=e.courtOrder,r=t.courtOrder;return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:Number.isFinite(n)&&!Number.isFinite(r)?-1:!Number.isFinite(n)&&Number.isFinite(r)?1:e.courtName.localeCompare(t.courtName,void 0,{numeric:!0})})}var ky=`URL`;function Ay(e,t){if(!Array.isArray(e))return;let n=e.find(e=>e?.name===t&&e?.resourceType===ky);return n?.url??n?.identifier}function jy(e,t){if(Array.isArray(e))return e.find(e=>e?.resourceSubType===`COURT_SVG`&&(!t||e?.name===t))?.identifier}function My(e){if(typeof e==`number`)return Number.isFinite(e)?e:void 0;if(typeof e==`string`){let t=e.trim();if(!t)return;let n=Number(t);return Number.isFinite(n)?n:void 0}}function Ny(...e){for(let t of e){let e=My(t);if(e!==void 0)return e}}function Py(e){let t=document.createElement(`div`);if(t.className=e.cardClass,t.setAttribute(`aria-busy`,`true`),e.showImage){let n=document.createElement(`div`);n.className=e.imageClass;let r=document.createElement(`div`);r.className=e.blockClass,n.appendChild(r),t.appendChild(n)}if(e.bodyLines>0){let n=document.createElement(`div`);n.className=e.bodyClass;for(let t=0;t<e.bodyLines;t++){let r=document.createElement(`div`);r.className=e.lineClass,r.style.width=t===0?`90%`:`${60+t*10}%`,n.appendChild(r)}t.appendChild(n)}if(e.showFooter){let n=document.createElement(`div`);n.className=e.footerClass;let r=document.createElement(`div`);r.className=e.lineClass,r.style.width=`40%`,n.appendChild(r),t.appendChild(n)}return t}var Fy={showImage:!0,cornerBadges:[`status`],body:[`title`,`tier`,`location`,`dateRange`],footer:[`feeBadge`,`playerCount`]};function Iy(e){return e?{showImage:e.showImage??Fy.showImage,cornerBadges:e.cornerBadges??Fy.cornerBadges,body:e.body??Fy.body,footer:e.footer??Fy.footer}:Fy}var Ly=()=>`chc-tc-card`,Ry=()=>`chc-tc-card--clickable`,zy=()=>`chc-tc-card--offline`,By=()=>`chc-tc-image`,Vy=()=>`chc-tc-image-img`,Hy=()=>`chc-tc-image-svg`,Uy=()=>`chc-tc-image-placeholder`,Wy=()=>`chc-tc-corner-badges`,Gy=()=>`chc-tc-status-pill`,Ky=()=>`chc-tc-offline-badge`,qy=()=>`chc-tc-body`,Jy=()=>`chc-tc-title`,Yy=()=>`chc-tc-location`,Xy=()=>`chc-tc-date-range`,Zy=()=>`chc-tc-organizer`,Qy=()=>`chc-tc-updated-at`,$y=()=>`chc-tc-footer`,eb=()=>`chc-tc-fee-badge`,tb=()=>`chc-tc-player-count`,nb=()=>`chc-tc-event-count`,rb=()=>`chc-tc-tier-badge`,ib=()=>`chc-tc-card chc-tc-skeleton`,ab=()=>`chc-tc-skeleton-line`,ob=()=>`chc-tc-skeleton-block`;function sb(e,t,n){let r=Iy(t),i=document.createElement(`div`);return i.className=Ly(),i.dataset.tournamentId=e.tournamentId,e.offline&&i.classList.add(zy()),n?.onClick&&(i.classList.add(Ry()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(cb(e,r)),r.body.length&&i.appendChild(pb(e,r)),r.footer.length&&i.appendChild(xb(e,r)),i}function cb(e,t){let n=document.createElement(`div`);if(n.className=By(),e.tournamentImageURL){let t=document.createElement(`img`);t.className=Vy(),t.src=e.tournamentImageURL,t.alt=e.tournamentName||``,t.loading=`lazy`,t.addEventListener(`error`,()=>ub(n,e)),n.appendChild(t)}else lb(n,e);if(t.cornerBadges.length){let r=db(e,t.cornerBadges);r&&n.appendChild(r)}return n}function lb(e,t){let n=hy(t.courtSvgSport,Hy());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=Uy(),e.appendChild(r)}function ub(e,t){e.querySelector(`.${Vy()}`)?.remove(),lb(e,t)}function db(e,t){let n=[];for(let r of t){let t=fb(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=Wy();for(let e of n)r.appendChild(e);return r}function fb(e,t){if(e===`status`){if(!t.status)return null;let e=document.createElement(`div`);return e.className=Gy(),e.dataset.kind=t.status.kind,e.textContent=t.status.label,e}if(e===`offline`){if(!t.offline)return null;let e=document.createElement(`div`);return e.className=Ky(),e.textContent=`Offline`,e}return null}function pb(e,t){let n=document.createElement(`div`);n.className=qy();for(let r of t.body){let t=mb(r,e);t&&n.appendChild(t)}return n}function mb(e,t){switch(e){case`title`:return hb(t);case`tier`:return gb(t);case`location`:return _b(t);case`dateRange`:return vb(t);case`organizerName`:return yb(t);case`updatedAt`:return bb(t);default:return null}}function hb(e){if(!e.tournamentName)return null;let t=document.createElement(`div`);return t.className=Jy(),t.textContent=e.tournamentName,t.title=e.tournamentName,t}function gb(e){let t=e.tournamentTier?.value;if(!t)return null;let n=document.createElement(`div`);return n.className=rb(),n.textContent=t,n.title=e.tournamentTier?.system?`${e.tournamentTier.system}: ${t}`:t,n}function _b(e){if(!e.location)return null;let t=document.createElement(`div`);return t.className=Yy(),t.textContent=e.location,t.title=e.location,t}function vb(e){if(!e.dateRangeFormatted)return null;let t=document.createElement(`div`);return t.className=Xy(),t.textContent=e.dateRangeFormatted,t}function yb(e){if(!e.organizerName)return null;let t=document.createElement(`div`);return t.className=Zy(),t.textContent=e.organizerName,t}function bb(e){if(!e.updatedAt)return null;let t=document.createElement(`div`);t.className=Qy();let n=new Date(e.updatedAt);return t.textContent=Number.isNaN(n.getTime())?e.updatedAt:n.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),t}function xb(e,t){let n=document.createElement(`div`);n.className=$y();for(let r of t.footer){let t=Sb(r,e);t&&n.appendChild(t)}return n}function Sb(e,t){switch(e){case`feeBadge`:return Cb(t);case`playerCount`:return wb(t);case`eventCount`:return Tb(t);default:return null}}function Cb(e){if(!e.feeFormatted)return null;let t=document.createElement(`div`);return t.className=eb(),t.textContent=e.feeFormatted,t}function wb(e){if(typeof e.participantCount!=`number`)return null;let t=document.createElement(`div`);return t.className=tb(),t.textContent=`${e.participantCount} ${e.participantCount===1?`player`:`players`}`,t}function Tb(e){if(typeof e.eventCount!=`number`)return null;let t=document.createElement(`div`);return t.className=nb(),t.textContent=`${e.eventCount} ${e.eventCount===1?`event`:`events`}`,t}function Eb(e){let t=Iy(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:ib(),imageClass:By(),bodyClass:qy(),footerClass:$y(),blockClass:ob(),lineClass:ab()})}var Db=6048e5;function Ob(e){if(!e)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}function kb(e,t,n){return!t||!n?!1:t.getTime()<=e.getTime()&&e.getTime()<n.getTime()}function Ab(e){return`Opens ${e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}`}function jb(e,t=new Date){let n=e.tournamentStatus?.toUpperCase();if(n===`CANCELLED`||n===`ABANDONDED`||n===`ABANDONED`)return{kind:`cancelled`,label:`Cancelled`};let r=e.timeZone,i=xy(e.endDate),a=i?Cy(i,r):null;if(n===`COMPLETED`||a&&t.getTime()>=a.getTime())return{kind:`completed`,label:`Completed`};let o=xy(e.startDate);if(kb(t,o?Sy(o,r):null,a))return{kind:`live`,label:`Live`};let s=Ob(e.entriesClose);if(s){let e=s.getTime()-t.getTime();if(e>0&&e<=Db)return{kind:`closing-soon`,label:`Closing Soon`}}let c=Ob(e.entriesOpen);return c&&c.getTime()>t.getTime()?{kind:`registration-opens`,label:Ab(c)}:null}var Mb=`–`,Nb={JPY:0,KRW:0,VND:0,CLP:0,ISK:0,KWD:3,BHD:3,OMR:3,JOD:3,TND:3};function Pb({amount:e,currencyCode:t,unit:n}){return n===`MAJOR`?e:e/10**(Nb[t]??2)}function Fb(e,t){try{return new Intl.NumberFormat(`en-US`,{style:`currency`,currency:t}).format(e)}catch{return`${e.toFixed(2)} ${t}`}}function Ib(e){let t=[];for(let n of e)typeof n?.amount!=`number`||Number.isNaN(n.amount)||n.currencyCode&&n.unit&&t.push({amount:n.amount,currencyCode:n.currencyCode,unit:n.unit});return t}function Lb(e){if(!e?.length)return null;let t=Ib(e);if(!t.length)return null;let n=new Map;for(let e of t){let t=`${e.currencyCode}/${e.unit}`,r=n.get(t);r?r.push(e):n.set(t,[e])}let r=[...n.values()].sort((e,t)=>t.length-e.length),i=r[0],a=i[0].currencyCode,o=i.map(Pb).sort((e,t)=>e-t),s=o[0],c=o.at(-1)??s;return r.length>1?`From ${a} ${Fb(s,a)}`:s===c?`${a} ${Fb(s,a)}`:`${a} ${Fb(s,a)} ${Mb} ${Fb(c,a)}`}var Rb=`tournamentImage`;function zb(e){let t=e?.registrationProfile?.entryFees;return Array.isArray(t)?t.filter(e=>e&&typeof e.amount==`number`):[]}function Bb(e,t){let n=e?.individualParticipantCount;return typeof n==`number`?n||void 0:t.filter(e=>(!e?.participantType||e.participantType===`INDIVIDUAL`)&&(!e?.participantRole||e.participantRole===`COMPETITOR`)).length||void 0}function Vb(e){let t=e?.timeItems;if(Array.isArray(t))return t.find(e=>e?.itemType===`TMX`)?.itemValue?.offline}function Hb(e){let{timeZone:n,error:r}=t.tournamentGovernor.getTournamentTimeZone({tournamentRecord:{localTimeZone:e?.localTimeZone||e?.timeZone,venues:Array.isArray(e?.venues)?e.venues:void 0}});return{tournamentStatus:e?.tournamentStatus,startDate:r?void 0:e?.startDate,endDate:r?void 0:e?.endDate,entriesOpen:e?.registrationProfile?.entriesOpen,entriesClose:e?.registrationProfile?.entriesClose,timeZone:n}}function Ub(e,t){let n=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,r=Array.isArray(e?.venues)?e.venues:[],i=Array.isArray(e?.participants)?e.participants:[],a=Array.isArray(e?.events)?e.events:[],o=t?.statusOverride===void 0?jb(Hb(e),t?.now):t.statusOverride,s=e?.tournamentImageURL??Ay(n,Rb),c=e?.courtSvgSport??jy(n);return{tournamentId:e?.tournamentId??``,tournamentName:e?.tournamentName??``,startDate:e?.startDate,endDate:e?.endDate,dateRangeFormatted:Dy(e?.startDate,e?.endDate),location:vy(r),tournamentImageURL:s,courtSvgSport:c,participantCount:Bb(e,i),eventCount:a.length||void 0,organizerName:e?.tournamentOrganizers?.find?.(Boolean)?.organizerName,status:o,feeFormatted:Lb(zb(e)),updatedAt:e?.updatedAt,offline:Vb(e),tournamentTier:Wb(e)}}function Wb(e){let t=e?.tournamentTier;if(!t||typeof t!=`object`||typeof t.system!=`string`||typeof t.value!=`string`)return;let n={system:t.system,value:t.value};return typeof t.numericRank==`number`&&Number.isFinite(t.numericRank)&&(n.numericRank=t.numericRank),n}var Gb={showImage:!0,showMap:!0,cornerBadges:[`primaryBadge`],body:[`title`,`address`,`courtBreakdown`],footer:[`amenityRow`]};function Kb(e){return e?{showImage:e.showImage??Gb.showImage,showMap:e.showMap??Gb.showMap,cornerBadges:e.cornerBadges??Gb.cornerBadges,body:e.body??Gb.body,footer:e.footer??Gb.footer}:Gb}var qb=()=>`chc-vc-card`,Jb=()=>`chc-vc-card--clickable`,Yb=()=>`chc-vc-image`,Xb=()=>`chc-vc-image-img`,Zb=()=>`chc-vc-image-svg`,Qb=()=>`chc-vc-image-map`,$b=()=>`chc-vc-image-placeholder`,ex=()=>`chc-vc-corner-badges`,tx=()=>`chc-vc-primary-badge`,nx=()=>`chc-vc-body`,rx=()=>`chc-vc-title`,ix=()=>`chc-vc-address`,ax=()=>`chc-vc-court-breakdown`,ox=()=>`chc-vc-footer`,sx=()=>`chc-vc-amenity-row`,cx=()=>`chc-vc-amenity`,lx=()=>`chc-vc-card chc-vc-skeleton`,ux=()=>`chc-vc-skeleton-line`,dx=()=>`chc-vc-skeleton-block`;function fx(e,t,n){let r=Kb(t),i=document.createElement(`div`);i.className=qb(),i.dataset.venueId=e.venueId;let a=null;r.showImage!==!1&&(a=gx(e,r,()=>f()),i.appendChild(a));let o=r.body.length?wx(e,r):null;o&&i.appendChild(o);let s=r.footer.length?Ox(e,r):null;s&&i.appendChild(s);function c(){return!!a?.querySelector(`iframe`)}let l=new Map;function u(e,t){if(l.has(e))return;let n=e=>{e.stopPropagation(),t()},r=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),t())};e.classList.add(Jb()),e.tabIndex=0,e.addEventListener(`click`,n),e.addEventListener(`keydown`,r),l.set(e,{click:n,keydown:r})}function d(e){let t=l.get(e);t&&(e.removeEventListener(`click`,t.click),e.removeEventListener(`keydown`,t.keydown),e.classList.remove(Jb()),e.removeAttribute(`tabindex`),l.delete(e))}function f(){if(!n?.onClick)return;let t=()=>n.onClick(e);c()?(d(i),o&&u(o,t),s&&u(s,t)):(o&&d(o),s&&d(s),u(i,t))}return f(),i}function px(e){return typeof e.latitude==`number`&&typeof e.longitude==`number`}function mx(e){let t=e.latitude,n=e.longitude,r=.01,i=`https://www.openstreetmap.org/export/embed.html?bbox=${`${n-r},${t-r},${n+r},${t+r}`}&marker=${t},${n}&layer=mapnik`,a=document.createElement(`iframe`);return a.className=Qb(),a.src=i,a.loading=`lazy`,a.title=`Map of ${e.venueName}`,a}function hx(e,t){let n=hy(t.courtSvgSport,Zb());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=$b(),e.appendChild(r)}function gx(e,t,n){let r=document.createElement(`div`);if(r.className=Yb(),e.venueImageURL){let i=document.createElement(`img`);i.className=Xb(),i.src=e.venueImageURL,i.alt=e.venueName||``,i.loading=`lazy`,i.addEventListener(`error`,()=>{i.remove(),t.showMap!==!1&&px(e)?r.appendChild(mx(e)):hx(r,e),n?.()}),r.appendChild(i)}else t.showMap!==!1&&px(e)?r.appendChild(mx(e)):hx(r,e);if(t.cornerBadges.length){let n=vx(e,t.cornerBadges);n&&r.appendChild(n)}return r}function _x(e,t){if(e===`primaryBadge`){if(!t.isPrimary)return null;let e=document.createElement(`div`);return e.className=tx(),e.textContent=`Primary`,e}return null}function vx(e,t){let n=[];for(let r of t){let t=_x(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=ex();for(let e of n)r.appendChild(e);return r}function yx(e){if(!e.venueName)return null;let t=document.createElement(`div`);return t.className=rx(),t.textContent=e.venueName,t.title=e.notes?`${e.venueName}\n${e.notes}`:e.venueName,t}function bx(e){if(!e.addressFormatted)return null;let t=document.createElement(`div`);return t.className=ix(),t.textContent=e.addressFormatted,t.title=e.addressFormatted,t}function xx(e){if(!e.courtBreakdown)return null;let t=document.createElement(`div`);return t.className=ax(),t.textContent=e.courtBreakdown,t}function Sx(e){if(!e.venueAbbreviation)return null;let t=document.createElement(`div`);return t.className=ax(),t.textContent=e.venueAbbreviation,t}function Cx(e,t){return e===`title`?yx(t):e===`address`?bx(t):e===`courtBreakdown`?xx(t):e===`venueAbbreviation`?Sx(t):null}function wx(e,t){let n=document.createElement(`div`);n.className=nx();for(let r of t.body){let t=Cx(r,e);t&&n.appendChild(t)}return n}function Tx(e){let t=document.createElement(`span`);return t.className=cx(),t.textContent=e,t}function Ex(e){let t=[];if(typeof e.courtCount==`number`&&t.push(Tx(`${e.courtCount} ${e.courtCount===1?`court`:`courts`}`)),e.indoorCount&&t.push(Tx(`${e.indoorCount} indoor`)),e.outdoorCount&&t.push(Tx(`${e.outdoorCount} outdoor`)),e.floodlitCount&&t.push(Tx(`${e.floodlitCount} lit`)),!t.length)return null;let n=document.createElement(`div`);n.className=sx();for(let e of t)n.appendChild(e);return n}function Dx(e,t){return e===`amenityRow`?Ex(t):e===`address`?bx(t):e===`courtBreakdown`?xx(t):null}function Ox(e,t){let n=document.createElement(`div`);n.className=ox();for(let r of t.footer){let t=Dx(r,e);t&&n.appendChild(t)}return n}function kx(e){let t=Kb(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:lx(),imageClass:Yb(),bodyClass:nx(),footerClass:ox(),blockClass:dx(),lineClass:ux()})}var Ax=`venueImage`;function jx(e){let t=[];return e.indoorOutdoor&&t.push(e.indoorOutdoor.toLowerCase()),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),t.length?t.join(` `):`court`}function Mx(e){if(!e.length)return;let t=new Map;for(let n of e){let e=jx(n);t.set(e,(t.get(e)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]).map(([e,t])=>`${t} ${e}`).join(`, `)}function Nx(e,t){let n=0;for(let r of e)t(r)&&(n+=1);return n}function Px(e,t){let n=Array.isArray(e?.courts)?e.courts:[],r=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,i=e?.addresses?.find(e=>e);return{venueId:e?.venueId??``,venueName:e?.venueName??``,venueAbbreviation:e?.venueAbbreviation,addressFormatted:_y(i),latitude:My(i?.latitude),longitude:My(i?.longitude),courtCount:n.length||void 0,courtBreakdown:Mx(n),indoorCount:Nx(n,e=>e.indoorOutdoor===`INDOOR`)||void 0,outdoorCount:Nx(n,e=>e.indoorOutdoor===`OUTDOOR`)||void 0,floodlitCount:Nx(n,e=>!!e.floodlit)||void 0,isPrimary:!!e?.isPrimary,venueImageURL:e?.venueImageURL??Ay(r,Ax),courtSvgSport:e?.courtSvgSport??jy(r)??t?.sport,notes:e?.notes}}var Fx={showImage:!0,cornerBadges:[`indoorOutdoor`,`floodlit`],body:[`title`,`surface`],footer:[`amenityRow`]};function Ix(e){return e?{showImage:e.showImage??Fx.showImage,cornerBadges:e.cornerBadges??Fx.cornerBadges,body:e.body??Fx.body,footer:e.footer??Fx.footer}:Fx}var Lx=()=>`chc-cc-card`,Rx=()=>`chc-cc-card--clickable`,zx=()=>`chc-cc-image`,Bx=()=>`chc-cc-image-svg`,Vx=()=>`chc-cc-image-placeholder`,Hx=()=>`chc-cc-corner-badges`,Ux=()=>`chc-cc-indoor-badge`,Wx=()=>`chc-cc-floodlit-badge`,Gx=()=>`chc-cc-body`,Kx=()=>`chc-cc-title`,qx=()=>`chc-cc-surface`,Jx=()=>`chc-cc-availability`,Yx=()=>`chc-cc-abbr`,Xx=()=>`chc-cc-footer`,Zx=()=>`chc-cc-amenity-row`,Qx=()=>`chc-cc-card chc-cc-skeleton`,$x=()=>`chc-cc-skeleton-line`,eS=()=>`chc-cc-skeleton-block`;function tS(e,t,n){let r=Ix(t),i=document.createElement(`div`);return i.className=Lx(),i.dataset.courtId=e.courtId,n?.onClick&&(i.classList.add(Rx()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(rS(e,r)),r.body.length&&i.appendChild(pS(e,r)),r.footer.length&&i.appendChild(gS(e,r)),i}function nS(e,t){let n=hy(t.courtSvgSport,Bx());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=Vx(),e.appendChild(r)}function rS(e,t){let n=document.createElement(`div`);if(n.className=zx(),e.surfaceCategory&&(n.dataset.surface=e.surfaceCategory),nS(n,e),t.cornerBadges.length){let r=sS(e,t.cornerBadges);r&&n.appendChild(r)}return n}function iS(e){if(!e.indoorOutdoor)return null;let t=document.createElement(`div`);return t.className=Ux(),t.dataset.kind=e.indoorOutdoor,t.textContent=e.indoorOutdoor===`INDOOR`?`Indoor`:`Outdoor`,t}function aS(e){if(!e.floodlit)return null;let t=document.createElement(`div`);return t.className=Wx(),t.textContent=`Lit`,t}function oS(e,t){return e===`indoorOutdoor`?iS(t):e===`floodlit`?aS(t):null}function sS(e,t){let n=[];for(let r of t){let t=oS(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=Hx();for(let e of n)r.appendChild(e);return r}function cS(e){if(!e.courtName)return null;let t=document.createElement(`div`);return t.className=Kx(),t.textContent=e.courtName,t.title=e.notes?`${e.courtName}\n${e.notes}`:e.courtName,t}function lS(e){if(!e.surfaceLabel)return null;let t=document.createElement(`div`);return t.className=qx(),t.textContent=e.surfaceLabel,t}function uS(e){if(!e.availabilitySummary)return null;let t=document.createElement(`div`);return t.className=Jx(),t.textContent=e.availabilitySummary,t}function dS(e){if(!e.courtAbbreviation)return null;let t=document.createElement(`div`);return t.className=Yx(),t.textContent=e.courtAbbreviation,t}function fS(e,t){return e===`title`?cS(t):e===`surface`?lS(t):e===`availability`?uS(t):e===`abbreviation`?dS(t):null}function pS(e,t){let n=document.createElement(`div`);n.className=Gx();for(let r of t.body){let t=fS(r,e);t&&n.appendChild(t)}return n}function mS(e){let t=[];if(e.indoorOutdoor&&t.push(e.indoorOutdoor===`INDOOR`?`indoor`:`outdoor`),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),e.floodlit&&t.push(`floodlit`),!t.length)return null;let n=document.createElement(`div`);return n.className=Zx(),n.textContent=t.join(` · `),n}function hS(e,t){return e===`amenityRow`?mS(t):e===`availability`?uS(t):e===`surface`?lS(t):null}function gS(e,t){let n=document.createElement(`div`);n.className=Xx();for(let r of t.footer){let t=hS(r,e);t&&n.appendChild(t)}return n}function _S(e){let t=Ix(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:Qx(),imageClass:zx(),bodyClass:Gx(),footerClass:Xx(),blockClass:eS(),lineClass:$x()})}var vS=`INDOOR`,yS=`OUTDOOR`,bS=new Set([`HARD`,`CLAY`,`GRASS`,`ARTIFICIAL`,`CARPET`]);function xS(e){if(!e)return;let t=String(e).toUpperCase();if(t===vS)return vS;if(t===yS)return yS}function SS(e){let t=e?.surfaceCategory?String(e.surfaceCategory).toUpperCase():void 0;if(t&&bS.has(t))return t;let n=e?.surfaceType?String(e.surfaceType).toUpperCase():void 0;return n&&bS.has(n)?n:t}function CS(e,t){let n=[];return e&&n.push(e.charAt(0)+e.slice(1).toLowerCase()),t&&n.push(t.charAt(0)+t.slice(1).toLowerCase()),n.length?n.join(` · `):void 0}function wS(e,t){let n=xS(e?.indoorOutdoor),r=SS(e);return{courtId:e?.courtId??``,courtName:e?.courtName??``,courtAbbreviation:e?.courtAbbreviation,surfaceLabel:CS(n,r),indoorOutdoor:n,surfaceCategory:r,floodlit:!!e?.floodlit,courtSvgSport:t?.sport,notes:e?.notes}}var TS={grouping:`setting`,sport:`tennis`,showGroupHeadings:!0,showSummary:!0,minCardWidth:`11rem`,emptyMessage:`No courts recorded for this venue`};function ES(e){return e?{grouping:e.grouping??TS.grouping,sport:e.sport??TS.sport,showGroupHeadings:e.showGroupHeadings??TS.showGroupHeadings,showSummary:e.showSummary??TS.showSummary,minCardWidth:e.minCardWidth??TS.minCardWidth,emptyMessage:e.emptyMessage??TS.emptyMessage}:TS}var DS=()=>`chc-cl`,OS=()=>`chc-cl-summary`,kS=()=>`chc-cl-summary-count`,AS=()=>`chc-cl-group`,jS=()=>`chc-cl-group-heading`,MS=()=>`chc-cl-group-count`,NS=()=>`chc-cl-grid`,PS=()=>`chc-cl-empty`,FS=`Unspecified`,IS=`Unspecified surface`;function LS(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function RS(e){let t=typeof e.indoorOutdoor==`string`?e.indoorOutdoor.trim():``;return t?LS(t):FS}function zS(e){let t=typeof e.surfaceCategory==`string`?e.surfaceCategory.trim():``;return t?LS(t):IS}function BS(e,t){let n=Oy(e);if(t===`none`)return[{key:`all`,label:`All courts`,courts:n}];let r=e=>t===`setting`?RS(e):t===`surface`?zS(e):`${RS(e)} · ${zS(e)}`,i=new Map;for(let e of n){let t=r(e),n=i.get(t);n?n.courts.push(e):i.set(t,{key:t,label:t,courts:[e]})}return[...i.values()]}function VS(e){let t=new Map;for(let n of e){let e=RS(n),r=zS(n),i=`${e===FS?``:e.toLowerCase()} ${r===IS?``:r.toLowerCase()}`.trim()||`court`;t.set(i,(t.get(i)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).map(([e,t])=>`${t} ${e}`).join(`, `)}function HS(e,t,n){let r=ES(t),i=e.courts??[],a=document.createElement(`div`);if(a.className=DS(),e.venueId&&(a.dataset.venueId=e.venueId),!i.length){let e=document.createElement(`div`);return e.className=PS(),e.textContent=r.emptyMessage,a.appendChild(e),a}r.showSummary&&a.appendChild(US(i));for(let e of BS(i,r.grouping))a.appendChild(WS(e,r,n));return a}function US(e){let t=document.createElement(`div`);t.className=OS();let n=document.createElement(`span`);n.className=kS(),n.textContent=`${e.length} ${e.length===1?`court`:`courts`}`;let r=document.createElement(`span`);return r.textContent=VS(e),t.append(n,r),t}function WS(e,t,n){let r=document.createElement(`div`);if(r.className=AS(),r.dataset.group=e.key,t.showGroupHeadings&&t.grouping!==`none`){let t=document.createElement(`div`);t.className=jS();let n=document.createElement(`span`);n.textContent=e.label;let i=document.createElement(`span`);i.className=MS(),i.textContent=String(e.courts.length),t.append(n,i),r.appendChild(t)}let i=document.createElement(`div`);i.className=NS(),i.style.setProperty(`--chc-cl-min-card`,t.minCardWidth);for(let r of e.courts)i.appendChild(KS(r,t,n));return r.appendChild(i),r}function GS(e){if(e===`setting`||e===`both`)return{cornerBadges:[`floodlit`]}}function KS(e,t,n){let r=wS(e,{sport:t.sport}),i=n?.onCourtClick?{onClick:()=>n.onCourtClick?.(e)}:void 0;return tS(r,GS(t.grouping),i)}var qS={tiles:{map:{tileLayer:`https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`,attribution:`&copy; <a href="https://openstreetmap.org">OpenStreetMap</a> Contributors`,maxZoom:18},satellite:{tileLayer:`https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}`,attribution:`Tiles &copy; Esri`}},darkTileLayer:{tileLayer:`https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png`,attribution:`&copy; <a href="https://openstreetmap.org">OpenStreetMap</a> Contributors &copy; <a href="https://carto.com/attributions">CARTO</a>`,maxZoom:20},view:`map`,showViewToggle:!0,zoom:16,height:`320px`,courtsLayout:`side`,showHeader:!0,showPopup:!0,scrollWheelZoom:!1,darkTiles:`auto`};function JS(e){return e?{tiles:e.tiles??qS.tiles,darkTileLayer:e.darkTileLayer===void 0?qS.darkTileLayer:e.darkTileLayer,view:e.view??qS.view,showViewToggle:e.showViewToggle??qS.showViewToggle,zoom:e.zoom??qS.zoom,height:e.height??qS.height,courtsLayout:e.courtsLayout??qS.courtsLayout,showHeader:e.showHeader??qS.showHeader,showPopup:e.showPopup??qS.showPopup,scrollWheelZoom:e.scrollWheelZoom??qS.scrollWheelZoom,darkTiles:e.darkTiles??qS.darkTiles}:qS}var YS=()=>`chc-vl`,XS=()=>`chc-vl-header`,ZS=()=>`chc-vl-title`,QS=()=>`chc-vl-address`,$S=()=>`chc-vl-notes`,eC=()=>`chc-vl-body`,tC=()=>`chc-vl-body--below`,nC=()=>`chc-vl-mapwrap`,rC=()=>`chc-vl-map`,iC=()=>`chc-vl-map--invertible`,aC=()=>`chc-vl-toggle`,oC=()=>`chc-vl-toggle-btn`,sC=()=>`chc-vl-fallback`,cC=()=>`chc-vl-fallback-icon`,lC=()=>`chc-vl-courts`,uC=()=>`chc-vl-courts-title`,dC=()=>`chc-vl-court-list`,fC=()=>`chc-vl-court`,pC=()=>`chc-vl-court--clickable`,mC=()=>`chc-vl-court-name`,hC=()=>`chc-vl-court-meta`,gC=()=>`chc-vl-pip`,_C=()=>`chc-vl-marker`,vC=()=>`chc-vl-popup-title`,yC=()=>`chc-vl-popup-address`,bC=`No coordinates for this venue`,xC=`Map unavailable`,SC=new WeakMap;function CC(e){return Number.isFinite(e.latitude)&&Number.isFinite(e.longitude)}function wC(e){return Oy(e)}function TC(e){let t=[];return e.indoorOutdoor&&t.push(e.indoorOutdoor.toLowerCase()),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),t.join(` · `)}function EC(e,t,n){let r=JS(t),i=document.createElement(`div`);i.className=YS(),i.dataset.venueId=e.venueId;let a={disposed:!1,cleanup:()=>{}};SC.set(i,()=>{a.disposed=!0,a.cleanup()}),r.showHeader&&i.appendChild(OC(e));let o=document.createElement(`div`);o.className=r.courtsLayout===`side`?eC():`${eC()} ${tC()}`;let{wrap:s,mapEl:c}=AC(e,r,n);o.appendChild(s);let l=e.courts??[];return r.courtsLayout!==`none`&&l.length&&o.appendChild(NC(l,e,n)),i.appendChild(o),c&&CC(e)&&FC({root:i,mapEl:c,data:e,cfg:r,callbacks:n,lifetime:a}).catch(()=>void 0),i}function DC(e){let t=SC.get(e);t&&(t(),SC.delete(e))}function OC(e){let t=document.createElement(`div`);t.className=XS();let n=document.createElement(`div`);if(n.className=ZS(),n.textContent=e.venueName,t.appendChild(n),e.addressFormatted){let n=document.createElement(`div`);n.className=QS(),n.textContent=e.addressFormatted,t.appendChild(n)}if(e.notes){let n=document.createElement(`div`);n.className=$S(),n.textContent=e.notes,t.appendChild(n)}return t}function kC(e){let t=document.createElement(`div`);t.className=sC();let n=document.createElement(`div`);n.className=cC(),n.textContent=`📍`,n.setAttribute(`aria-hidden`,`true`);let r=document.createElement(`div`);return r.textContent=e,t.append(n,r),t}function AC(e,t,n){let r=document.createElement(`div`);if(r.className=nC(),r.style.height=t.height,!CC(e))return r.appendChild(kC(bC)),{wrap:r,mapEl:null};let i=document.createElement(`div`);i.className=rC(),i.appendChild(kC(``)),r.appendChild(i);let a=Object.keys(t.tiles);return t.showViewToggle&&a.length>1&&r.appendChild(jC(a,t,n)),{wrap:r,mapEl:i}}function jC(e,t,n){let r=document.createElement(`div`);r.className=aC(),r.dataset.viewToggle=`true`;let i=[];for(let a of e){let e=document.createElement(`button`);e.type=`button`,e.className=oC(),e.dataset.view=a,e.textContent=a===`satellite`?`Satellite`:`Map`,e.setAttribute(`aria-pressed`,String(a===t.view)),e.addEventListener(`click`,()=>{for(let t of i)t.setAttribute(`aria-pressed`,String(t===e));n?.onViewChange?.(a)}),i.push(e),r.appendChild(e)}return r}function MC(e,t,n){let r=!!n?.onCourtClick,i=document.createElement(r?`button`:`div`);i.className=r?`${fC()} ${pC()}`:fC(),i.dataset.courtId=e.courtId,r&&(i.type=`button`,i.addEventListener(`click`,()=>n?.onCourtClick?.(e,t)));let a=document.createElement(`span`);a.className=mC(),a.textContent=e.courtName;let o=document.createElement(`span`);o.className=hC();let s=TC(e);if(s&&o.append(document.createTextNode(s)),e.floodlit){let e=document.createElement(`span`);e.className=gC(),e.title=`floodlit`,o.appendChild(e)}return i.append(a,o),i}function NC(e,t,n){let r=document.createElement(`div`);r.className=lC();let i=document.createElement(`div`);i.className=uC(),i.textContent=`Courts (${e.length})`,r.appendChild(i);let a=document.createElement(`div`);a.className=dC();for(let r of wC(e))a.appendChild(MC(r,t,n));return r.appendChild(a),r}function PC(e){let t=e=>e.replace(/[&<>"]/g,e=>({"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`})[e]),n=e.addressFormatted?`<div class="${yC()}">${t(e.addressFormatted)}</div>`:``;return`<div class="${vC()}">${t(e.venueName)}</div>${n}`}async function FC({root:e,mapEl:t,data:n,cfg:r,callbacks:i,lifetime:a}){let o;try{o=await import(`leaflet`)}catch(e){if(a.disposed)return;t.replaceChildren(kC(xC)),i?.onMapUnavailable?.(Error(`leaflet is an optional peerDependency of courthive-components and is not installed`,{cause:e}));return}if(a.disposed)return;let s=o.default??o;try{t.replaceChildren();let o=s.map(t,{scrollWheelZoom:r.scrollWheelZoom,attributionControl:!0}),c,l,u=!1;a.cleanup=()=>{u||(u=!0,c?.disconnect(),l?.disconnect(),o.remove())},o.setView([n.latitude,n.longitude],r.zoom);let d=r.view,f=VC(s,o,r,d);HC(t,r,d);let p=e=>{d=e,o.removeLayer(f),f=VC(s,o,r,e),HC(t,r,e)},m=s.divIcon({className:``,html:`<div class="${_C()}"></div>`,iconSize:[14,14]}),h=s.marker([n.latitude,n.longitude],{icon:m}).addTo(o);r.showPopup&&h.bindPopup(PC(n)),h.on(`click`,()=>i?.onVenueClick?.(n)),e.querySelector(`[data-view-toggle]`)?.addEventListener(`click`,e=>{let t=e.target?.closest(`button[data-view]`);t&&p(t.dataset.view)}),RC(t),c=new ResizeObserver(()=>o.invalidateSize()),c.observe(t);let g=globalThis.document?.documentElement;if(g&&r.darkTiles!==`never`&&r.darkTileLayer){let e=zC();l=new MutationObserver(()=>{let t=zC();t!==e&&(e=t,d!==`satellite`&&p(d))}),l.observe(g,{attributes:!0,attributeFilter:[`data-theme`]})}}catch(e){if(a.cleanup(),a.disposed)return;t.replaceChildren(kC(xC)),i?.onMapUnavailable?.(Error(`Leaflet map failed to initialize`,{cause:e}))}}var IC=!1;function LC(e){return e?e!==`relative`&&e!==`absolute`:!1}function RC(e){IC||LC(globalThis.getComputedStyle?.(e)?.position)&&(IC=!0,console.warn("[courthive-components] venue-locator: leaflet's stylesheet is missing — the map will render incorrectly. Add `import 'leaflet/dist/leaflet.css';` to the host application."))}function zC(){return globalThis.document?.documentElement?.dataset.theme===`dark`}function BC(e,t,n){let r=e.tiles[t]??e.tiles.map;return t===`satellite`||e.darkTiles===`never`||!n?r:e.darkTileLayer??r}function VC(e,t,n,r){let i=BC(n,r,zC());return e.tileLayer(i.tileLayer,{attribution:i.attribution,maxZoom:i.maxZoom??19}).addTo(t)}function HC(e,t,n){let r=t.darkTiles===`auto`&&n!==`satellite`&&!t.darkTileLayer;e.classList.toggle(iC(),r)}function UC(...e){for(let t of e)if(typeof t==`number`&&Number.isFinite(t))return t}function WC(e,t){let n=typeof e?.indoorOutdoor==`string`?e.indoorOutdoor.toUpperCase():void 0;return{courtId:e?.courtId??`court-${t+1}`,courtName:e?.courtName??`Court ${t+1}`,indoorOutdoor:n===`INDOOR`||n===`OUTDOOR`?n:void 0,surfaceCategory:e?.surfaceCategory,floodlit:e?.floodlit,courtOrder:UC(e?.courtOrder),latitude:Ny(e?.latitude),longitude:Ny(e?.longitude)}}function GC(e){let t=Array.isArray(e?.courts)?e.courts:[],n=e?.addresses?.find(e=>e);return{venueId:e?.venueId??``,venueName:e?.venueName??e?.venueAbbreviation??``,venueAbbreviation:e?.venueAbbreviation,addressFormatted:_y(n),latitude:Ny(e?.latitude,n?.latitude),longitude:Ny(e?.longitude,n?.longitude),courts:t.map(WC),notes:e?.notes}}var KC=()=>`chc-team-card`,qC=()=>`chc-team-card--clickable`,JC=()=>`chc-team-card__title-row`,YC=()=>`chc-team-card__name`,XC=()=>`chc-team-card__nickname`,ZC=()=>`chc-team-card__counts`,QC=` · `;function $C(e,t){let n=document.createElement(`div`);n.className=KC(),e.teamId&&(n.dataset.teamId=e.teamId),t?.onClick&&(n.classList.add(qC()),n.tabIndex=0,n.setAttribute(`role`,`button`),n.addEventListener(`click`,n=>{n.stopPropagation(),t.onClick(e)}),n.addEventListener(`keydown`,n=>{(n.key===`Enter`||n.key===` `)&&(n.preventDefault(),n.stopPropagation(),t.onClick(e))})),n.appendChild(ew(e));let r=(e.countSegments??[]).map(e=>(e??``).trim()).filter(Boolean);return r.length&&n.appendChild(tw(r)),n}function ew(e){let t=document.createElement(`div`);t.className=JC();let n=document.createElement(`span`);if(n.className=YC(),n.textContent=e.teamName,t.appendChild(n),e.nickname){let n=document.createElement(`span`);n.className=XC(),n.textContent=`"${e.nickname}"`,t.appendChild(n)}return t}function tw(e){let t=document.createElement(`div`);return t.className=ZC(),t.textContent=e.join(QC),t}var nw=[`COMPETITIVE`,`ROUTINE`,`DECISIVE`,`WALKOVER`],rw=new Set([`WALKOVER`,`DOUBLE_WALKOVER`,`DEFAULTED`,`DOUBLE_DEFAULT`]);function iw(){return{COMPETITIVE:0,ROUTINE:0,DECISIVE:0,WALKOVER:0}}function aw(e){let t=iw();if(!Array.isArray(e))return t;for(let n of e){let e=typeof n?.getData==`function`?n.getData():n;if(!e)continue;if(e.matchUpStatus&&rw.has(e.matchUpStatus)){t.WALKOVER+=1;continue}let r=e.competitiveProfile?.competitiveness;r&&r!==`WALKOVER`&&nw.includes(r)&&(t[r]+=1)}return t}function ow(e){return nw.reduce((t,n)=>t+e[n],0)}var sw={COMPETITIVE:`Competitive`,ROUTINE:`Routine`,DECISIVE:`Decisive`,WALKOVER:`Walkover / Defaulted`};function cw(e={}){let{onSegmentClick:t}=e,n=document.createElement(`div`);n.className=`chc-cb`;let r={};for(let e of nw){let i=document.createElement(`div`);i.className=`chc-cb__seg`,i.dataset.bucket=e,t&&(i.classList.add(`is-clickable`),i.setAttribute(`role`,`button`),i.addEventListener(`click`,()=>t(e))),r[e]=i,n.appendChild(i)}return{element:n,update:e=>{let t=ow(e);if(n.style.display=t>0?`flex`:`none`,t)for(let t of nw){let n=r[t],i=e[t];i===0?(n.style.flex=`0 0 0`,n.style.padding=`0`,n.textContent=``,n.removeAttribute(`title`)):(n.style.flex=`${i} 1 0`,n.style.padding=`0 4px`,n.textContent=String(i),n.title=`${sw[t]}: ${i}`)}},setActive:e=>{n.classList.toggle(`has-active`,!!e);for(let t of nw)r[t].classList.toggle(`is-active`,t===e)}}}var lw={COMPETITIVE:`Competitive`,ROUTINE:`Routine`,DECISIVE:`Decisive`,WALKOVER:`Walkover / Defaulted`},uw=`http://www.w3.org/2000/svg`,dw=96,fw=dw/2,pw=47,mw=31;function hw(e,t){return{x:fw+t*Math.cos(e),y:fw+t*Math.sin(e)}}function gw(e,t){let n=hw(e,pw),r=hw(t,pw),i=hw(t,mw),a=hw(e,mw),o=+(t-e>Math.PI);return[`M ${n.x} ${n.y}`,`A ${pw} ${pw} 0 ${o} 1 ${r.x} ${r.y}`,`L ${i.x} ${i.y}`,`A ${mw} ${mw} 0 ${o} 0 ${a.x} ${a.y}`,`Z`].join(` `)}function _w(){let e=hw(-Math.PI/2,pw),t=hw(Math.PI/2,pw),n=hw(-Math.PI/2,mw),r=hw(Math.PI/2,mw);return[`M ${e.x} ${e.y}`,`A ${pw} ${pw} 0 1 1 ${t.x} ${t.y}`,`A ${pw} ${pw} 0 1 1 ${e.x} ${e.y}`,`L ${n.x} ${n.y}`,`A ${mw} ${mw} 0 1 0 ${r.x} ${r.y}`,`A ${mw} ${mw} 0 1 0 ${n.x} ${n.y}`,`Z`].join(` `)}function vw(){let e=document.createElement(`div`);e.className=`chc-cd`;let t=document.createElementNS(uw,`svg`);t.setAttribute(`viewBox`,`0 0 ${dw} ${dw}`),t.setAttribute(`class`,`chc-cd__svg`),t.setAttribute(`role`,`img`);let n={};for(let e of nw){let r=document.createElementNS(uw,`path`);r.setAttribute(`class`,`chc-cd__arc`),r.setAttribute(`data-bucket`,e),t.appendChild(r);let i=document.createElementNS(uw,`title`);r.appendChild(i),n[e]=r}let r=document.createElement(`div`);return r.className=`chc-cd__total`,e.appendChild(t),e.appendChild(r),{element:e,update:i=>{let a=ow(i);if(e.style.display=a>0?`inline-flex`:`none`,!a)return;let o=nw.filter(e=>i[e]>0),s=-Math.PI/2;for(let e of nw){let t=i[e],r=n[e],c=r.querySelector(`title`);if(t===0)r.removeAttribute(`d`),c&&(c.textContent=``);else{if(o.length===1)r.setAttribute(`d`,_w());else{let e=t/a,n=s+e*Math.PI*2;r.setAttribute(`d`,gw(s,n)),s=n}c&&(c.textContent=`${lw[e]}: ${t}`)}}r.textContent=String(a),t.setAttribute(`aria-label`,`Competitiveness across ${a} matches`)}}}function yw(e){let{segments:t,onSegmentClick:n}=e,r=document.createElement(`div`);r.className=`chc-sb`;let i={},a={};for(let{key:e,label:o,color:s}of t){i[e]=o;let t=document.createElement(`div`);t.className=`chc-sb__seg`,t.dataset.key=e,t.style.setProperty(`--seg-bg`,s),n&&(t.classList.add(`is-clickable`),t.setAttribute(`role`,`button`),t.addEventListener(`click`,()=>n(e))),a[e]=t,r.appendChild(t)}return{element:r,update:e=>{let n=t.reduce((t,n)=>t+(e[n.key]||0),0);if(r.style.display=n>0?`flex`:`none`,n)for(let{key:n}of t){let t=a[n],r=e[n]||0;r===0?(t.style.flex=`0 0 0`,t.style.padding=`0`,t.textContent=``,t.removeAttribute(`title`)):(t.style.flex=`${r} 1 0`,t.style.padding=`0 4px`,t.textContent=String(r),t.title=`${i[n]}: ${r}`)}},setActive:e=>{r.classList.toggle(`has-active`,!!e);for(let{key:n}of t)a[n].classList.toggle(`is-active`,n===e)}}}var bw={cornerBadges:[`status`,`publishedBadge`,`embargoBadge`],body:[`title`,`drawTypeLabel`,`matchUpProgress`],footer:[`drawSize`,`entries`,`matchUpFormat`,`flightNumber`,`ratings`],showVisualization:!1};function xw(e){return e?{cornerBadges:e.cornerBadges??bw.cornerBadges,body:e.body??bw.body,footer:e.footer??bw.footer,showVisualization:e.showVisualization??bw.showVisualization}:bw}var Sw=()=>`chc-dc-card`,Cw=()=>`chc-dc-card--clickable`,ww=()=>`chc-dc-corner-badges`,Tw=()=>`chc-dc-status-pill`,Ew=()=>`chc-dc-secondary-badge`,Dw=()=>`chc-dc-body`,Ow=()=>`chc-dc-viz`,kw=()=>`chc-dc-title-row`,Aw=()=>`chc-dc-title`,jw=()=>`chc-dc-draw-type`,Mw=()=>`chc-dc-meta`,Nw=()=>`chc-dc-footer`,Pw=()=>`chc-dc-chip`,Fw=()=>`chc-dc-progress`,Iw=()=>`chc-dc-progress-bar`,Lw=()=>`chc-dc-progress-fill`,Rw=()=>`chc-dc-card chc-dc-skeleton`,zw=()=>`chc-dc-skeleton-line`;function Bw(e,t,n){let r=xw(t),i=document.createElement(`div`);if(i.className=Sw(),i.dataset.drawId=e.drawId,e.eventId&&(i.dataset.eventId=e.eventId),n?.onClick&&(i.classList.add(Cw()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showVisualization&&e.visualization){let t=document.createElement(`div`);t.className=Ow(),t.appendChild(e.visualization),i.appendChild(t)}return(r.body.length||r.cornerBadges.length)&&i.appendChild(rT(e,r)),r.footer.length&&i.appendChild(iT(e,r)),i}function Vw(e){if(!e.status)return null;let t=document.createElement(`div`);return t.className=Tw(),t.dataset.kind=e.status.kind,t.textContent=e.status.label,t}function Hw(e){if(!e.published)return null;let t=document.createElement(`div`);return t.className=Ew(),t.dataset.kind=`published`,t.textContent=`Published`,t}function Uw(e){if(!e.embargoActive)return null;let t=document.createElement(`div`);return t.className=Ew(),t.dataset.kind=`embargo`,t.textContent=`Embargo`,t}function Ww(e,t){return e===`status`?Vw(t):e===`publishedBadge`?Hw(t):e===`embargoBadge`?Uw(t):null}function Gw(e,t){let n=[];for(let r of t){let t=Ww(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=ww();for(let e of n)r.appendChild(e);return r}function Kw(e){if(!e.drawName)return null;let t=document.createElement(`div`);return t.className=Aw(),t.textContent=e.drawName,t.title=e.drawName,t}function qw(e){if(!e.drawTypeLabel)return null;let t=document.createElement(`div`);return t.className=jw(),t.textContent=e.drawTypeLabel,t}function Jw(e){let t=document.createElement(`span`);return t.className=Pw(),t.textContent=e,t}function Yw(e){return typeof e.drawSize==`number`?Jw(`Size ${e.drawSize}`):null}function Xw(e){return typeof e.entryCount==`number`?Jw(`${e.entryCount} ${e.entryCount===1?`entry`:`entries`}`):null}function Zw(e){return e.matchUpFormat?Jw(e.matchUpFormat):null}function Qw(e){return typeof e.flightNumber==`number`?Jw(`Flight ${e.flightNumber}`):null}function $w(e){let t=[];if(typeof e.utrAvg==`number`&&t.push(`UTR ${e.utrAvg.toFixed(2)}`),typeof e.wtnAvg==`number`&&t.push(`WTN ${e.wtnAvg.toFixed(2)}`),!t.length)return null;let n=document.createElement(`div`);return n.className=Mw(),n.textContent=t.join(` · `),n}function eT(e){if(!e.matchUpCounts||e.matchUpCounts.total===0)return null;let{total:t,completed:n}=e.matchUpCounts,r=Math.round(n/t*100),i=document.createElement(`div`);i.className=Fw();let a=document.createElement(`div`);a.className=Mw(),a.textContent=`${n}/${t} matches · ${r}%`,i.appendChild(a);let o=document.createElement(`div`);o.className=Iw();let s=document.createElement(`div`);return s.className=Lw(),s.style.right=`${100-r}%`,o.appendChild(s),i.appendChild(o),i}function tT(e,t){return e===`title`?Kw(t):e===`drawTypeLabel`?qw(t):e===`drawSize`?Yw(t):e===`entries`?Xw(t):e===`matchUpFormat`?Zw(t):e===`flightNumber`?Qw(t):e===`ratings`?$w(t):e===`matchUpProgress`?eT(t):null}function nT(e,t){let n=document.createElement(`div`);n.className=kw();let r=Kw(e);r&&n.appendChild(r);let i=Gw(e,t);return i&&n.appendChild(i),n}function rT(e,t){let n=document.createElement(`div`);n.className=Dw();let r=t.body.includes(`title`),i=t.cornerBadges.length>0;if(i&&!r){let r=Gw(e,t.cornerBadges);r&&n.appendChild(r)}for(let r of t.body){if(r===`title`&&i){n.appendChild(nT(e,t.cornerBadges));continue}let a=tT(r,e);a&&n.appendChild(a)}return n}function iT(e,t){let n=document.createElement(`div`);n.className=Nw();for(let r of t.footer){let t=tT(r,e);t&&n.appendChild(t)}return n}function aT(){let e=document.createElement(`div`);e.className=Rw();let t=document.createElement(`div`);t.className=Dw();for(let e of[`70%`,`40%`,`85%`]){let n=document.createElement(`div`);n.className=zw(),n.style.width=e,t.appendChild(n)}return e.appendChild(t),e}var oT={SINGLE_ELIMINATION:`Single Elimination`,DOUBLE_ELIMINATION:`Double Elimination`,ELIMINATION:`Elimination`,ROUND_ROBIN:`Round Robin`,ROUND_ROBIN_WITH_PLAYOFF:`Round Robin + Playoff`,COMPASS:`Compass`,FEED_IN_CHAMPIONSHIP:`Feed-In Championship`,FIRST_MATCH_LOSER_CONSOLATION:`First Match Loser Consolation`,FIRST_ROUND_LOSER_CONSOLATION:`First Round Loser Consolation`,PLAY_OFF:`Play-Off`,CURTIS_CONSOLATION:`Curtis Consolation`,AD_HOC:`Ad-Hoc`,OLYMPIC:`Olympic`,LUCKY_DRAW:`Lucky Draw`,STAGGERED_ENTRY:`Staggered Entry`};function sT(e){if(e)return oT[e]?oT[e]:e.toLowerCase().split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function cT(e){let{matchUps:n=[]}=t.tournamentEngine.getAllDrawMatchUps({drawDefinition:e}),r=0,i=0,a=0,o=0;for(let e of n)e?.matchUpStatus!==`BYE`&&e?.matchUpStatus!==`DOUBLE_BYE`&&(r+=1,e?.winningSide?i+=1:e?.schedule?.scheduledTime&&(a+=1),e?.matchUpStatus===`IN_PROGRESS`&&(o+=1));return{total:r,completed:i,scheduled:a,inProgress:o}}function lT(e){let t=e?.drawSize;if(typeof t==`number`)return t;let n=(e?.structures?.find(e=>e?.stage===`MAIN`))?.positionAssignments?.length;return typeof n==`number`?n:void 0}function uT(e){if(e.cancelled)return{kind:`cancelled`,label:`Cancelled`};if(!e.generated)return{kind:`ungenerated`,label:`Not generated`};let t=e.matchUpCounts;return!t||t.total===0?{kind:`ready`,label:`Ready`}:t.completed===t.total?{kind:`completed`,label:`Completed`}:t.inProgress>0||t.completed>0?{kind:`in-progress`,label:`In progress`}:{kind:`ready`,label:`Ready`}}function dT(e,t){let n=Array.isArray(e?.structures)&&e.structures.length>0,r=t?.matchUpStats??(t?.lightMode||!n?void 0:cT(e)),i=e?.drawStatus===`CANCELLED`,a=t?.statusOverride===void 0?uT({generated:n,cancelled:i,matchUpCounts:r}):t.statusOverride;return{drawId:e?.drawId??``,drawName:e?.drawName??``,drawType:e?.drawType,drawTypeLabel:sT(e?.drawType),drawSize:lT(e),entryCount:t?.entryCount,matchUpFormat:e?.matchUpFormat,flightNumber:e?.flightNumber,matchUpCounts:r,generated:n,published:t?.published,embargoActive:t?.embargoActive,utrAvg:t?.utrAvg,wtnAvg:t?.wtnAvg,status:a,eventId:t?.eventId}}var fT={showImage:!0,cornerBadges:[`status`,`eventTypeBadge`,`genderBadge`],body:[`title`,`categoryLabel`,`drawSummary`],footer:[`playerCount`,`matchUpProgress`]},pT=15;function mT(e){return e?{showImage:e.showImage??fT.showImage,cornerBadges:e.cornerBadges??fT.cornerBadges,body:e.body??fT.body,footer:e.footer??fT.footer}:fT}var hT=()=>`chc-ec-card`,gT=()=>`chc-ec-card--clickable`,_T=()=>`chc-ec-image`,vT=()=>`chc-ec-image-img`,yT=()=>`chc-ec-image-svg`,bT=()=>`chc-ec-image-placeholder`,xT=()=>`chc-ec-corner-badges`,ST=()=>`chc-ec-status-pill`,CT=()=>`chc-ec-eventtype-badge`,wT=()=>`chc-ec-gender-badge`,TT=()=>`chc-ec-body`,ET=()=>`chc-ec-title`,DT=()=>`chc-ec-category`,OT=()=>`chc-ec-draw-summary`,kT=()=>`chc-ec-date-range`,AT=()=>`chc-ec-footer`,jT=()=>`chc-ec-player-count`,MT=()=>`chc-ec-progress`,NT=()=>`chc-ec-progress-meta`,PT=()=>`chc-ec-progress-bar`,FT=()=>`chc-ec-progress-fill`,IT=()=>`chc-ec-updated-at`,LT=()=>`chc-ec-card chc-ec-skeleton`,RT=()=>`chc-ec-skeleton-line`,zT=()=>`chc-ec-skeleton-block`;function BT(e,t,n){let r=mT(t),i=document.createElement(`div`);return i.className=hT(),i.dataset.eventId=e.eventId,n?.onClick&&(i.classList.add(gT()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(HT(e,r)),r.body.length&&i.appendChild(nE(e,r)),r.footer.length&&i.appendChild(rE(e,r)),i}function VT(e,t){let n=hy(t.courtSvgSport,yT());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=bT(),e.appendChild(r)}function HT(e,t){let n=document.createElement(`div`);if(n.className=_T(),e.eventImageURL){let t=document.createElement(`img`);t.className=vT(),t.src=e.eventImageURL,t.alt=e.eventName||``,t.loading=`lazy`,t.addEventListener(`error`,()=>{t.remove(),VT(n,e)}),n.appendChild(t)}else VT(n,e);if(t.cornerBadges.length){let r=qT(e,t.cornerBadges);r&&n.appendChild(r)}return n}function UT(e){if(!e.status)return null;let t=document.createElement(`div`);return t.className=ST(),t.dataset.kind=e.status.kind,t.textContent=e.status.label,t}function WT(e){if(!e.eventType)return null;let t=document.createElement(`div`);return t.className=CT(),t.dataset.kind=e.eventType,t.textContent=e.eventType,t}function GT(e){if(!e.gender)return null;let t=document.createElement(`div`);return t.className=wT(),t.dataset.kind=e.gender,t.textContent=e.gender===`MALE`?`M`:e.gender===`FEMALE`?`W`:`X`,t}function KT(e,t){return e===`status`?UT(t):e===`eventTypeBadge`?WT(t):e===`genderBadge`?GT(t):null}function qT(e,t){let n=[];for(let r of t){let t=KT(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=xT();for(let e of n)r.appendChild(e);return r}function JT(e){if(!e.eventName)return null;let t=document.createElement(`div`);return t.className=ET(),t.textContent=e.eventName,t.title=e.eventName,t}function YT(e){if(!e.categoryLabel)return null;let t=document.createElement(`div`);return t.className=DT(),t.textContent=e.categoryLabel,t}function XT(e){if(!e.drawSummary)return null;let t=document.createElement(`div`);return t.className=OT(),t.textContent=e.drawSummary,t}function ZT(e){if(!e.dateRangeFormatted)return null;let t=document.createElement(`div`);return t.className=kT(),t.textContent=e.dateRangeFormatted,t}function QT(e){if(!e.updatedAt)return null;let t=document.createElement(`div`);t.className=IT();let n=new Date(e.updatedAt);return t.textContent=Number.isNaN(n.getTime())?e.updatedAt:n.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),t}function $T(e){if(typeof e.entryCount!=`number`)return null;let t=document.createElement(`div`);return t.className=jT(),t.textContent=`${e.entryCount} ${e.entryCount===1?`player`:`players`}`,t}function eE(e){if(!e.matchUpCounts||e.matchUpCounts.total===0)return null;let{total:t,completed:n}=e.matchUpCounts,r=Math.round(n/t*100),i=document.createElement(`div`);i.className=MT();let a=document.createElement(`div`);a.className=NT(),a.textContent=`${n}/${t} matches · ${r}%`,i.appendChild(a);let o=document.createElement(`div`);o.className=PT();let s=document.createElement(`div`);return s.className=FT(),s.style.right=`${100-r}%`,o.appendChild(s),i.appendChild(o),i}function tE(e,t){return e===`title`?JT(t):e===`categoryLabel`?YT(t):e===`drawSummary`?XT(t):e===`dateRange`?ZT(t):e===`updatedAt`?QT(t):e===`playerCount`?$T(t):e===`matchUpProgress`?eE(t):null}function nE(e,t){let n=document.createElement(`div`);n.className=TT();for(let r of t.body){let t=tE(r,e);t&&n.appendChild(t)}return n}function rE(e,t){let n=document.createElement(`div`);n.className=AT();for(let r of t.footer){let t=tE(r,e);t&&n.appendChild(t)}return n}function iE(e){let t=mT(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:LT(),imageClass:_T(),bodyClass:TT(),footerClass:AT(),blockClass:zT(),lineClass:RT()})}function aE(e){if(!e)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}function oE(e,t,n){return!t||!n?!1:t.getTime()<=e.getTime()&&e.getTime()<=n.getTime()}function sE(e,t=new Date){if(e.allDrawsCancelled)return{kind:`cancelled`,label:`Cancelled`};let n=e.matchUpCounts;if(n&&n.total>0&&n.completed===n.total)return{kind:`completed`,label:`Completed`};let r=aE(e.startDate),i=aE(e.endDate);if(n&&(n.inProgress>0||oE(t,r,i)&&n.total>0))return{kind:`live`,label:`Live`};let a=e.drawCount??0;return a>0&&(e.hasDraftState||e.hasSeedsOnlyDraw)?{kind:`drawing`,label:`Drawing`}:a===0&&(e.entryCount??0)>0?{kind:`entries-open`,label:`Entries Open`}:r&&t.getTime()<r.getTime()?{kind:`upcoming`,label:`Upcoming`}:null}var cE=`eventImage`,lE=`DRAFT_STATE`;function uE(e){if(!e)return;let t=String(e).toUpperCase();if(t===`SINGLES`||t===`DOUBLES`||t===`TEAM`||t===`HYBRID`)return t}function dE(e){if(!e)return;let t=String(e).toUpperCase();if(t===`M`||t===`MALE`)return`MALE`;if(t===`F`||t===`FEMALE`)return`FEMALE`;if(t===`MIXED`||t===`X`)return`MIXED`}function fE(e){if(!e)return;let t=pE(e.categoryName);if(t)return t;if(typeof e.ageMin==`number`&&typeof e.ageMax==`number`)return e.ageMin===e.ageMax?`Age ${e.ageMin}`:`Age ${e.ageMin}–${e.ageMax}`;let n=pE(e.ageCategoryCode);if(n)return n;if(e.ratingMin&&e.ratingMax)return`Rating ${e.ratingMin}–${e.ratingMax}`}function pE(e){if(typeof e!=`string`)return;let t=e.trim();if(t&&!/^[-—–_]+$/.test(t))return t}function mE(e){if(!e.length)return;let t=e.find(Boolean);if(!t)return;let n=[];return typeof t.drawSize==`number`&&n.push(String(t.drawSize)),t.drawType&&n.push(String(t.drawType)),e.length>1&&n.push(`+${e.length-1}`),n.length?n.join(` `):void 0}function hE(e){let{matchUps:n=[]}=t.tournamentEngine.allEventMatchUps({event:e,inContext:!1})??{},r=0,i=0,a=0,o=0;for(let e of n)e?.matchUpStatus!==`BYE`&&e?.matchUpStatus!==`DOUBLE_BYE`&&(r+=1,e?.winningSide?i+=1:e?.schedule?.scheduledTime&&(a+=1),e?.matchUpStatus===`IN_PROGRESS`&&(o+=1));return{total:r,completed:i,scheduled:a,inProgress:o}}function gE(e){if(e?.draftState!=null)return!0;let t=e?.extensions;return Array.isArray(t)?t.some(e=>e?.name===lE):!1}function _E(e){return e.some(e=>e?.automated?.seedsOnly===!0||gE(e))}function vE(e){return e.length!==0&&e.every(e=>e?.drawStatus===`CANCELLED`)}var yE=new Set([`DIRECT_ACCEPTANCE`,`DA`,`DIRECT_CONFIRMED`,`DC`,`ACCEPTED`,`A`,`ENTERED`,`PE`,`QUALIFIER`,`Q`,`WILDCARD`,`WC`]);function bE(e){if(!e.length)return 0;let t=0;for(let n of e)yE.has(String(n?.entryStatus))&&(t+=1);return t}function xE(e,t){let n=Array.isArray(e?.drawDefinitions)?e.drawDefinitions:[],r=Array.isArray(e?.entries)?e.entries:[],i=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,a=t?.matchUpStats??(t?.lightMode?void 0:hE(e)),o=t?.statusOverride===void 0?sE({allDrawsCancelled:vE(n),drawCount:n.length,entryCount:bE(r),startDate:e?.startDate,endDate:e?.endDate,matchUpCounts:a,hasDraftState:n.some(gE),hasSeedsOnlyDraw:_E(n)},t?.now):t.statusOverride;return{eventId:e?.eventId??``,eventName:e?.eventName??``,eventAbbreviation:e?.eventAbbreviation,categoryLabel:fE(e?.category),eventType:uE(e?.eventType),gender:dE(e?.gender),drawCount:n.length||void 0,drawSummary:mE(n),entryCount:bE(r)||void 0,matchUpCounts:a,startDate:e?.startDate,endDate:e?.endDate,dateRangeFormatted:Dy(e?.startDate,e?.endDate),status:o,eventImageURL:e?.eventImageURL??Ay(i,cE),courtSvgSport:e?.courtSvgSport??jy(i)??t?.sport,updatedAt:e?.updatedAt}}var SE=()=>`chc-hil-container`,CE=()=>`chc-hil-form`,wE=()=>`chc-hil-header`,TE=()=>`chc-hil-title`,EE=()=>`chc-hil-tabs`,DE=()=>`chc-hil-tab`,OE=()=>`chc-hil-tab--active`,kE=()=>`chc-hil-field`,AE=()=>`chc-hil-label`,jE=()=>`chc-hil-input`,ME=()=>`chc-hil-row`,NE=()=>`chc-hil-submit`,PE=()=>`chc-hil-message`,FE=()=>`chc-hil-message--error`,IE=()=>`chc-hil-message--success`,LE=()=>`chc-hil-switch-mode`;function RE(e){return e.replace(/\/+$/,``)}async function zE(e,t,n,r=fetch){let i=RE(e)+t,a;try{a=await r(i,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n)})}catch(e){throw{kind:`network`,cause:e}}let o=null;try{o=await a.json()}catch(e){if(a.ok)throw{kind:`parse`,cause:e}}if(!a.ok)throw{kind:`http`,status:a.status,body:o};return o}function BE(e,t,n){return zE(e,`/auth/hiveid/signup`,t,n)}function VE(e,t,n){return zE(e,`/auth/hiveid/verify-existing`,t,n)}function HE(e,t,n){return zE(e,`/auth/hiveid/magic-link`,t,n)}function UE(e,t,n){return zE(e,`/auth/hiveid/magic-link/consume`,t,n)}function WE(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.kind!==`http`||t.status!==409?!1:t.body?.code===`EXISTING_USER`}var GE=[{value:`M`,label:`Male`},{value:`F`,label:`Female`}],KE=`signup`,qE=`login`,JE=`magic-link`,YE=[KE,qE,JE],XE=`hiveid:authenticated`,ZE={[KE]:`Sign up`,[qE]:`Log in`,[JE]:`Email link`},QE={[KE]:`Create your CourtHive identity`,[qE]:`Log in to CourtHive`,[JE]:`Email me a sign-in link`};function $E(e){if(!e?.cfsBaseUrl)throw Error(`buildHiveIDLogin: cfsBaseUrl is required`);let t=e.mode??`signup`,n=!1,r=document.createElement(`div`);r.className=SE(),r.dataset.hiveidLogin=`true`;let i=document.createElement(`div`);i.className=wE();let a=document.createElement(`h2`);a.className=TE(),i.appendChild(a);let o=document.createElement(`div`);o.className=EE(),i.appendChild(o);let s={};YE.forEach(e=>{let t=document.createElement(`button`);t.type=`button`,t.className=DE(),t.textContent=ZE[e],t.dataset.mode=e,t.onclick=()=>w(e),o.appendChild(t),s[e]=t}),r.appendChild(i);let c=document.createElement(`form`);c.className=CE(),c.noValidate=!0,r.appendChild(c);let l=document.createElement(`div`);l.className=PE(),l.hidden=!0,r.appendChild(l);function u(e,t=`info`){l.textContent=e,l.className=PE(),t===`error`&&l.classList.add(FE()),t===`success`&&l.classList.add(IE()),l.hidden=!e}function d(){u(``)}function f(e,t,n=`text`,r=``){let i=document.createElement(`div`);i.className=kE();let a=document.createElement(`label`);a.className=AE(),a.textContent=t,a.htmlFor=`chc-hil-${e}`;let o=document.createElement(`input`);return o.id=`chc-hil-${e}`,o.name=e,o.type=n,o.value=r,o.className=jE(),o.required=!0,i.appendChild(a),i.appendChild(o),c.appendChild(i),o}function p(){let e=document.createElement(`div`);return e.className=ME(),c.appendChild(e),e}function m(e){let t=document.createElement(`button`);return t.type=`submit`,t.className=NE(),t.textContent=e,c.appendChild(t),t}function h(e,t,n){let r=document.createElement(`div`);r.className=LE();let i=document.createElement(`button`);i.type=`button`,i.textContent=n,i.onclick=()=>w(t),r.append(e+` `,i),c.appendChild(r)}function g(e){if(e.note){let t=document.createElement(`p`);t.className=AE(),t.textContent=e.note,c.appendChild(t)}let t=null;if(e.providers.length>1){let n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=`Provider`,r.htmlFor=`chc-hil-fedProvider`;let i=document.createElement(`select`);i.id=`chc-hil-fedProvider`,i.className=jE(),e.providers.forEach(e=>{let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,i.appendChild(t)}),n.append(r,i),c.appendChild(n),t=i}let n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=e.idLabel??`Player ID`,r.htmlFor=`chc-hil-federationId`;let i=document.createElement(`input`);i.id=`chc-hil-federationId`,i.type=`text`,i.className=jE(),n.append(r,i),c.appendChild(n);let a=e.providers[0]?.value??``;return()=>{let e=i.value.trim();if(!e)return null;let n=t?t.value:a;return n?{provider:n,externalId:e}:null}}function _(e){if(e.note){let t=document.createElement(`p`);t.className=AE(),t.textContent=e.note,c.appendChild(t)}let t=e.required!==!1,n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=e.dobLabel??`Date of birth`,r.htmlFor=`chc-hil-birthDate`;let i=document.createElement(`input`);i.id=`chc-hil-birthDate`,i.type=`date`,i.required=t,i.className=jE(),n.append(r,i),c.appendChild(n);let a=document.createElement(`div`);a.className=kE();let o=document.createElement(`label`);o.className=AE(),o.textContent=e.sexLabel??`Sex`,o.htmlFor=`chc-hil-sex`;let s=document.createElement(`select`);s.id=`chc-hil-sex`,s.required=t,s.className=jE();let l=document.createElement(`option`);return l.value=``,l.textContent=`Select…`,s.appendChild(l),(e.sexOptions??GE).forEach(e=>{let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,s.appendChild(t)}),a.append(o,s),c.appendChild(a),()=>nD({birthDate:i.value,sex:s.value})}function v(e){r.dispatchEvent(new CustomEvent(XE,{detail:e,bubbles:!0}))}function y(e,t){return async r=>{if(r.preventDefault(),!n){n=!0,e.disabled=!0,d();try{await t()}finally{n=!1,e.disabled=!1}}}}async function b(t,n,r,i={}){let a=t.value.trim(),o=n.value.trim(),s=r.value.trim();if(!a||!o||!s){u(`Email, first name, and last name are required.`,`error`);return}let{federationIds:c,birthDate:l,sex:d,provider:f,requirePii:p}=i;if(p&&(!l||!d))u(`Date of birth and sex are required.`,`error`);else try{let t=await BE(e.cfsBaseUrl,{email:a,firstName:o,lastName:s,federationIds:c,birthDate:l,sex:d,provider:f},e.fetchImpl);if(t.status===`candidate`){u(`We found possible matches — please log in with your existing account.`,`info`),w(`login`);return}v({token:t.token,refreshToken:t.refreshToken,personId:t.personId,cached:t.cached}),u(`Welcome to CourtHive.`,`success`)}catch(e){if(WE(e)){u(`That email already has a CourtHive account — please verify your password.`,`info`),w(`login`);return}u(iD(e)??`Sign-up failed. Please try again.`,`error`)}}async function x(t,n){let r=t.value.trim(),i=n.value;if(!r||!i)u(`Email and password are required.`,`error`);else try{let t=await VE(e.cfsBaseUrl,{email:r,password:i},e.fetchImpl);v({token:t.token,refreshToken:t.refreshToken,personId:t.personId,cached:t.cached??rD()}),u(`Signed in.`,`success`)}catch(e){u(iD(e)??`Sign-in failed. Please check your password.`,`error`)}}async function S(t){let n=t.value.trim();if(!n)u(`Email is required.`,`error`);else try{await HE(e.cfsBaseUrl,{email:n},e.fetchImpl),u(`If ${n} is registered, a sign-in link is on its way.`,`success`)}catch(e){u(iD(e)??`Could not send link. Please try again.`,`error`)}}function C(){if(c.replaceChildren(),a.textContent=QE[t],YE.forEach(e=>{s[e].classList.toggle(OE(),e===t)}),t===`signup`){let t=p(),n=document.createElement(`input`);n.id=`chc-hil-firstName`,n.type=`text`,n.placeholder=`First name`,n.required=!0,n.className=jE();let r=document.createElement(`input`);r.id=`chc-hil-lastName`,r.type=`text`,r.placeholder=`Last name`,r.required=!0,r.className=jE();let i=document.createElement(`div`);i.className=kE();let a=document.createElement(`label`);a.textContent=`First name`,a.className=AE(),a.htmlFor=n.id,i.append(a,n);let o=document.createElement(`div`);o.className=kE();let s=document.createElement(`label`);s.textContent=`Last name`,s.className=AE(),s.htmlFor=r.id,o.append(s,r),t.append(i,o);let l=f(`email`,`Email`,`email`,e.defaultEmail??``),u=e.federationIdCapture?g(e.federationIdCapture):()=>null,d=e.dobSexCapture?_(e.dobSexCapture):()=>({}),v=!!e.dobSexCapture&&e.dobSexCapture.required!==!1,x=m(`Create account`);c.onsubmit=y(x,()=>b(l,n,r,{federationIds:tD(u(),e.federationIds),...d(),provider:e.provider,requirePii:v})),h(`Already have an account?`,`login`,`Log in`)}else if(t===`login`){let t=f(`email`,`Email`,`email`,e.defaultEmail??``),n=f(`password`,`Password`,`password`),r=m(`Log in`);c.onsubmit=y(r,()=>x(t,n)),h(`Forgot your password?`,`magic-link`,`Email me a link`)}else{let t=f(`email`,`Email`,`email`,e.defaultEmail??``),n=m(`Send link`);c.onsubmit=y(n,()=>S(t)),h(`Have a password?`,`login`,`Log in instead`)}}function w(e){e!==t&&(t=e,d(),C())}function T(){return t}function E(e){let t=t=>e(t.detail);return r.addEventListener(XE,t),()=>r.removeEventListener(XE,t)}return C(),{root:r,setMode:w,getMode:T,onAuthenticated:E}}async function eD(e,t,n){let r=await UE(e,{code:t},n);return{token:r.token,refreshToken:r.refreshToken,personId:r.personId,cached:r.cached??rD()}}function tD(e,t){let n=[],r=new Set,i=e=>{if(!e?.provider||!e?.externalId)return;let t=`${e.provider}::${e.externalId}`;r.has(t)||(r.add(t),n.push({provider:e.provider,externalId:e.externalId}))};return(t??[]).forEach(i),i(e),n.length?n:void 0}function nD(e){let t={},n=e.birthDate?.trim(),r=e.sex?.trim();return n&&(t.birthDate=n),r&&(t.sex=r),t}function rD(){return{standardFamilyName:null,standardGivenName:null,birthDate:null,sex:null,nationalityCode:null}}function iD(e){if(!e||typeof e!=`object`)return null;if(e.kind===`http`){let t=e.body;if(t?.message&&typeof t.message==`string`)return t.message;if(typeof t?.status==`string`&&t.status===`incomplete`)return`We need a bit more information to identify you.`}return e.kind===`network`?`Could not reach CourtHive. Check your connection.`:null}var aD={name:`courthive-components`,packageManager:`pnpm@12.15.0`,version:`7.1.1`,engines:{node:`>=24`},description:`Components for competitions projects`,files:[`dist`],main:`./dist/courthive-components.umd.js`,module:`./dist/courthive-components.es.js`,types:`./dist/index.d.ts`,exports:{".":{types:`./dist/index.d.ts`,import:`./dist/courthive-components.es.js`,require:`./dist/courthive-components.umd.js`},"./dist/*":`./dist/*`,"./courts":{types:`./dist/features-types/courts/index.d.ts`,import:`./dist/courts.mjs`},"./segmented-bar":{types:`./dist/features-types/segmentedBar/index.d.ts`,import:`./dist/segmented-bar.mjs`},"./features.css":`./dist/features.css`},repository:{type:`git`,url:`git+https://github.com/CourtHive/courthive-components.git`},keywords:[`tournament`,`match`,`score`,`vanillajs`,`bracket`],author:`Charles Allen`,license:`MIT`,bugs:{url:`https://github.com/CourtHive/courthive-components/issues`},homepage:`https://courthive.github.io/courthive-component`,scripts:{commits:`git log $(git describe --tags --abbrev=0)..HEAD --oneline --no-merges --pretty=format:'%s: %h' | sed '/courthive-components/d'`,release:`npm run release:patch`,test:`vitest run --project unit`,"test:stories":`vitest run --project storybook`,"test:watch":`vitest --project unit`,"test:ui":`vitest --ui --project unit`,dev:`vite`,build:`tsc && vite build && vite build --config vite.features.config.mts && node scripts/buildFeatureTypes.mjs`,"check-types":`tsc --noEmit`,prepublishOnly:`pnpm build`,preview:`vite preview`,storybook:`storybook dev -p 6006`,"build-storybook":`storybook build`,"deploy-storybook":`gh-pages -d storybook-static`,"pre-commit":`lint-staged`,predeploy:`pnpm build-storybook`,lint:`eslint src scripts/buildFeatureTypes.mjs scripts/verify/consumerBundle.mjs --cache --max-warnings 0`,"lint:fix":`eslint src --fix --cache`,"lint:report":`eslint src & eslint --cache src -f json > eslint-report.json`,format:`prettier --write src`,"format:check":`prettier --check src`,"release:major":`npm run commits && npm version $(semver $npm_package_version -i major) && git push && git push --tags`,"release:minor":`npm run commits && npm version $(semver $npm_package_version -i minor) && git push && git push --tags`,"release:patch":`npm run commits && npm version $(semver $npm_package_version -i patch) && git push && git push --tags`,"release:beta":`npm run commits && npm version $(semver $npm_package_version -i prerelease --preid beta) && git push && git push --tags`,"patch:beta":`npm run commits && npm version $(semver $npm_package_version -i prerelease --preid beta) && npm publish --tag beta`,"verify:consumer-bundle":`node scripts/verify/consumerBundle.mjs --self-test && node scripts/verify/consumerBundle.mjs`},"lint-staged":{"*.{js,ts}":`eslint --cache --fix`,"*":`prettier --ignore-unknown --write`},devDependencies:{"@chromatic-com/storybook":`^5.0.0`,"@commitlint/cli":`21.2.4`,"@commitlint/config-conventional":`21.2.4`,"@eslint/js":`^10.0.1`,"@fortawesome/fontawesome-free":`^7.2.0`,"@storybook/addon-docs":`^10.2.17`,"@storybook/addon-vitest":`^10.6.1`,"@storybook/html-vite":`^10.2.17`,"@types/d3":`^7.4.3`,"@types/leaflet":`^1.9.12`,"@types/vanillajs-datepicker":`^1.3.5`,"@typescript-eslint/eslint-plugin":`8.72.0`,"@typescript-eslint/parser":`8.72.0`,"@vitest/browser":`^5.0.3`,"@vitest/browser-playwright":`^5.0.3`,"@vitest/coverage-v8":`^5.0.0`,"@vitest/ui":`^5.0.0`,eslint:`10.13.0`,"eslint-plugin-sonarjs":`4.2.2`,"eslint-plugin-storybook":`^10.2.17`,"gh-pages":`6.3.0`,globals:`^17.3.0`,"happy-dom":`^21.0.0`,husky:`9.1.7`,leaflet:`1.9.4`,"lint-staged":`17.6.0`,playwright:`^1.57.0`,prettier:`^3.8.1`,semver:`7.8.5`,storybook:`^10.2.17`,"tabulator-tables":`6.7.1`,"tods-competition-factory":`7.23.0`,typescript:`^6.0.2`,vite:`8.3.5`,"vite-plugin-dts":`^5.0.0`,vitest:`^5.0.0`},dependencies:{"@tiptap/core":`^3.22.2`,"@tiptap/extension-color":`^3.22.2`,"@tiptap/extension-highlight":`^3.22.2`,"@tiptap/extension-text-align":`^3.22.2`,"@tiptap/extension-text-style":`^3.22.2`,"@tiptap/extension-youtube":`^3.22.2`,"@tiptap/starter-kit":`^3.22.2`,awesomplete:`1.1.7`,"class-variance-authority":`0.7.1`,classnames:`2.5.1`,d3:`^7.9.0`,dayjs:`1.11.23`,"focus-trap":`^8.0.0`,"timepicker-ui":`^4.1.2`,"tippy.js":`6.3.7`,"vanillajs-datepicker":`1.3.4`},peerDependencies:{"tods-competition-factory":`^7.6.0`,leaflet:`^1.9.4`},peerDependenciesMeta:{leaflet:{optional:!0}}};function oD(){return aD.version}var sD={SET3_S6_TB7:`SET3-S:6/TB7`,SET3_S6_TB7_F_TB10:`SET3-S:6/TB7-F:TB10`,SET3_S6_TB10:`SET3-S:6/TB10`,SET3_S6_F_TB10:`SET3-S:6-F:TB10`,SET3_S6_TB7_NOAD:`SET3-S:6/TB7NOAD`,SET3_S8_TB7:`SET3-S:8/TB7`,SET3_S8_TB7_AT7:`SET3-S:8/TB7@7`,SET3_S4_TB7:`SET3-S:4/TB7`,SET3_S4_TB7_F_TB10:`SET3-S:4/TB7-F:TB10`,SET3_S4_TB5_AT3_F_TB10:`SET3-S:4/TB5@3-F:TB10`,SET5_S6_TB7:`SET5-S:6/TB7`,SET5_S6_TB7_F_TB10:`SET5-S:6/TB7-F:TB10`,SET1_S6_TB7:`SET1-S:6/TB7`,SET1_S6_TB10:`SET1-S:6/TB10`,SET1_S6_TB7_AT5:`SET1-S:6/TB7@5`,SET1_S8_TB7:`SET1-S:8/TB7`,SET1_S4_TB7:`SET1-S:4/TB7`,SET1_S5_TB9_AT4:`SET1-S:5/TB9@4`,SET1_S_TB7:`SET1-S:T7`,SET1_S_TB10:`SET1-S:TB10`,SET1_S_TB21:`SET1-S:T21`,SET1_S8:`SET1-S:8`,SET1_S10:`SET1-S:10`,FAST4:`SET5-S:4/NOAD`,SET3X_T10A_TB1:`SET3XA-S:T10-F:TB1`,SET3X_T10A_TB1_NOAD:`SET3XA-S:T10-F:TB1NOAD`,SET4X_T10A_TB1:`SET4XA-S:T10-F:TB1`};function cD(e,t,n){if(!e)return{elements:{}};let r={};for(let i of t||[]){if(!i?.label||i.hide)continue;let t=document.createElement(`button`);i.id&&(r[i.id]=t,t.id=i.id),t.style.marginRight=`.5em`,t.className=`button font-medium`,i.intent&&t.classList.add(i.intent),t.innerHTML=i.label,i.disabled&&(t.disabled=!0),t.onclick=e=>{e.stopPropagation(),!e.target.disabled&&U(i.onClick)&&i.onClick(),n&&U(n)&&n()},e.appendChild(t)}return{elements:r}}var lD=(e,t)=>n=>n?.trim().length>=e&&(!t||n?.trim().length<=t);function uD(e){return t.tools.isConvertableInteger(e)&&parseInt(e.toString())>=0}var dD=(e,t)=>n=>uD(n)&&Number(n)>=e&&Number(n)<=t,fD=e=>/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?\d)(?=.*?[#?!@$%^&*-]).{8,12}$/.test(e);function pD(e){return t.tools.dateTime.dateValidation.test(e)}var mD=(e,t)=>n=>{let r=(n||``).trim().split(` `).length;return r>=e&&(!t||r<=t)},hD=/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i,gD=e=>hD.exec(e),_D=_({dateValidator:()=>pD,emailValidator:()=>gD,nameValidator:()=>lD,numericRange:()=>dD,numericValidator:()=>uD,passwordValidator:()=>fD,wordValidator:()=>mD});function vD(e){let n=t.tools.makeDeepCopy(e);return{getTournamentRecord:()=>n,mutate:(e,r,i)=>{let a=n.events?.find(e=>e.drawDefinitions?.some(e=>e.drawId===r.drawId)),o=a?.drawDefinitions?.find(e=>e.drawId===r.drawId),s={...r,tournamentRecord:n,drawDefinition:o,event:a},c=t.globalState.getProvider(),l=()=>{throw Error(`Standalone assignment cannot replace tournament state`)},u=()=>{},d={[n.tournamentId]:n};t.globalState.setStateProvider({...c,addNotice:u,callListener:u,deleteNotice:u,deleteNotices:u,disableNotifications:u,enableNotifications:u,setSubscriptions:l,cycleMutationStatus:()=>!1,getTopics:()=>({topics:[]}),getNotices:()=>[],getPayloads:()=>[],getNoticeBuffer:()=>[],setNoticeBuffer:u,getTournamentId:()=>n.tournamentId,getTournamentRecord:e=>d[e],getTournamentRecords:()=>d,setTournamentId:l,setTournamentRecord:l,setTournamentRecords:l,removeTournamentRecord:l});let f;try{f=e===`removeDrawPositionAssignment`?t.drawsGovernor.removeDrawPositionAssignment(s):t.drawsGovernor.assignDrawPosition({...s,bye:e===`assignDrawPositionBye`})}finally{t.globalState.setStateProvider(c)}i(f)}}}var yD=class{constructor({tournamentRecord:e,adapter:t,drawId:n,structureId:r,eventId:i}){if(!t&&!e)throw Error(`DrawStateManager requires a record or adapter`);this.adapter=t??vD(e),this.drawId=n,this.structureId=r,this.eventId=i}setRenderCallback(e){this.renderCallback=e}context(){let e=this.adapter.getTournamentRecord(),t=e?.events?.find(e=>this.eventId?e.eventId===this.eventId:e.drawDefinitions?.some(e=>e.drawId===this.drawId));return{tournamentRecord:e,drawDefinition:t?.drawDefinitions?.find(e=>e.drawId===this.drawId),event:t}}getAllParticipants(){let{tournamentRecord:e,drawDefinition:n,event:r}=this.context();if(!e||!r||!n)return[];let{flightProfile:i}=t.queryGovernor.getFlightProfile({event:r}),a=(i?.flights?.find(e=>e.drawId===this.drawId)?.drawEntries??n.entries??[]).map(e=>e.participantId).filter(e=>!!e);if(!a.length)return[];let{participants:o=[]}=t.queryGovernor.getParticipants({tournamentRecord:e,participantFilters:{participantIds:a}});return o}getAvailableParticipants(){let{drawDefinition:e}=this.context();if(!e)return[];let{assignedParticipantIds:n=[]}=t.queryGovernor.getAssignedParticipantIds({drawDefinition:e}),r=new Set(n);return this.getAllParticipants().filter(e=>!r.has(e.participantId))}request(e,t,n=!0){let r,i=!1;return this.adapter.mutate(e,{...t,drawId:this.drawId,structureId:this.structureId},a=>{i||(i=!0,r=a,a.success&&!a.error&&(e!==`removeDrawPositionAssignment`&&(this.focusDrawPosition=t.drawPosition+1),n&&this.renderCallback?.()))}),r??{pending:!0}}assignParticipant(e){return this.request(`assignDrawPosition`,e)}assignBye(e){return this.request(`assignDrawPositionBye`,e)}assignQualifier(e){return this.request(`assignDrawPosition`,{...e,qualifier:!0})}removeAssignment(e){let t=this.getMatchUps().some(t=>t.sides?.some(t=>t.drawPosition===e.drawPosition&&t.bye));return this.request(`removeDrawPositionAssignment`,e,t)}getAndClearFocusDrawPosition(){let e=this.focusDrawPosition;return this.focusDrawPosition=void 0,e}getMatchUps(){let{tournamentRecord:e,event:n}=this.context();if(!e||!n)return[];let{eventData:r}=t.queryGovernor.getEventData({tournamentRecord:e,event:n}),i=(r?.drawsData?.find(e=>e.drawId===this.drawId))?.structures?.find(e=>e.structureId===this.structureId);return i?.roundMatchUps?Object.values(i.roundMatchUps).flat():[]}getState(){let e=this.adapter.getTournamentRecord();return e&&t.tools.makeDeepCopy(e)}getContext(){return{drawId:this.drawId,structureId:this.structureId}}},bD=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="14" height="14" fill="currentColor"><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z"/></svg>`,xD=new WeakMap;function SD(e,t){let n=document.createElement(`div`);n.style.cssText=`position: relative; flex: 1; display: flex; min-width: 0;`,e.style.paddingRight=`28px`,n.appendChild(e);let r=document.createElement(`button`);r.type=`button`,r.setAttribute(`aria-label`,`Clear search`),r.style.cssText=`position: absolute; right: 8px; top: 50%; transform: translateY(-50%); background: transparent; border: 0; padding: 2px; cursor: pointer; display: none; align-items: center; justify-content: center; line-height: 0; opacity: 0.55; color: currentColor`,r.innerHTML=bD,r.addEventListener(`mouseenter`,()=>r.style.opacity=`0.9`),r.addEventListener(`mouseleave`,()=>r.style.opacity=`0.55`),r.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),t(),i()});let i=()=>{r.style.display=e.value?`inline-flex`:`none`};return e.addEventListener(`keyup`,n=>{n.key===`Escape`&&e.value&&(t(),i())}),e.addEventListener(`input`,i),xD.set(n,i),n.appendChild(r),n}function CD(e){xD.get(e)?.()}function wD(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function TD(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function ED(e){let t,n,r;e.length===2?(t=e===wD||e===TD?e:DD,n=e,r=e):(t=wD,n=(t,n)=>wD(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<0?i=t+1:a=t}while(i<a)}return i}function a(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<=0?i=t+1:a=t}while(i<a)}return i}function o(e,t,n=0,a=e.length){let o=i(e,t,n,a-1);return o>n&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function DD(){return 0}function OD(e){return e===null?NaN:+e}var kD=ED(wD),AD=kD.right;kD.left,ED(OD).center;function jD(e,t){let n,r;if(t===void 0)for(let t of e)t!=null&&(n===void 0?t>=t&&(n=r=t):(n>t&&(n=t),r<t&&(r=t)));else{let i=-1;for(let a of e)(a=t(a,++i,e))!=null&&(n===void 0?a>=a&&(n=r=a):(n>a&&(n=a),r<a&&(r=a)))}return[n,r]}var MD=class extends Map{constructor(e,t=ID){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(ND(this,e))}has(e){return super.has(ND(this,e))}set(e,t){return super.set(PD(this,e),t)}delete(e){return super.delete(FD(this,e))}};function ND({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function PD({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function FD({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function ID(e){return typeof e==`object`&&e?e.valueOf():e}var LD=Math.sqrt(50),RD=Math.sqrt(10),zD=Math.sqrt(2);function BD(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=LD?10:a>=RD?5:a>=zD?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/l<e&&++s,c/l>t&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*l<e&&++s,c*l>t&&--c),c<s&&.5<=n&&n<2?BD(e,t,n*2):[s,c,l]}function VD(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];let r=t<e,[i,a,o]=r?BD(t,e,n):BD(e,t,n);if(!(a>=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e<s;++e)c[e]=(a-e)/-o;else for(let e=0;e<s;++e)c[e]=(a-e)*o}else if(o<0)for(let e=0;e<s;++e)c[e]=(i+e)/-o;else for(let e=0;e<s;++e)c[e]=(i+e)*o;return c}function HD(e,t,n){return t=+t,e=+e,n=+n,BD(e,t,n)[2]}function UD(e,t,n){t=+t,e=+e,n=+n;let r=t<e,i=r?HD(t,e,n):HD(e,t,n);return(r?-1:1)*(i<0?1/-i:i)}function WD(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n<t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function GD(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function KD(e){return e}var qD=1,JD=2,YD=3,XD=4,ZD=1e-6;function QD(e){return`translate(`+e+`,0)`}function $D(e){return`translate(0,`+e+`)`}function eO(e){return t=>+e(t)}function tO(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),n=>+e(n)+t}function nO(){return!this.__axis}function rO(e,t){var n=[],r=null,i=null,a=6,o=6,s=3,c=typeof window<`u`&&window.devicePixelRatio>1?0:.5,l=e===qD||e===XD?-1:1,u=e===XD||e===JD?`x`:`y`,d=e===qD||e===YD?QD:$D;function f(f){var p=r??(t.ticks?t.ticks.apply(t,n):t.domain()),m=i??(t.tickFormat?t.tickFormat.apply(t,n):KD),h=Math.max(a,0)+s,g=t.range(),_=+g[0]+c,v=+g[g.length-1]+c,y=(t.bandwidth?tO:eO)(t.copy(),c),b=f.selection?f.selection():f,x=b.selectAll(`.domain`).data([null]),S=b.selectAll(`.tick`).data(p,t).order(),C=S.exit(),w=S.enter().append(`g`).attr(`class`,`tick`),T=S.select(`line`),E=S.select(`text`);x=x.merge(x.enter().insert(`path`,`.tick`).attr(`class`,`domain`).attr(`stroke`,`currentColor`)),S=S.merge(w),T=T.merge(w.append(`line`).attr(`stroke`,`currentColor`).attr(u+`2`,l*a)),E=E.merge(w.append(`text`).attr(`fill`,`currentColor`).attr(u,l*h).attr(`dy`,e===qD?`0em`:e===YD?`0.71em`:`0.32em`)),f!==b&&(x=x.transition(f),S=S.transition(f),T=T.transition(f),E=E.transition(f),C=C.transition(f).attr(`opacity`,ZD).attr(`transform`,function(e){return isFinite(e=y(e))?d(e+c):this.getAttribute(`transform`)}),w.attr(`opacity`,ZD).attr(`transform`,function(e){var t=this.parentNode.__axis;return d((t&&isFinite(t=t(e))?t:y(e))+c)})),C.remove(),x.attr(`d`,e===XD||e===JD?o?`M`+l*o+`,`+_+`H`+c+`V`+v+`H`+l*o:`M`+c+`,`+_+`V`+v:o?`M`+_+`,`+l*o+`V`+c+`H`+v+`V`+l*o:`M`+_+`,`+c+`H`+v),S.attr(`opacity`,1).attr(`transform`,function(e){return d(y(e)+c)}),T.attr(u+`2`,l*a),E.attr(u,l*h).text(m),b.filter(nO).attr(`fill`,`none`).attr(`font-size`,10).attr(`font-family`,`sans-serif`).attr(`text-anchor`,e===JD?`start`:e===XD?`end`:`middle`),b.each(function(){this.__axis=y})}return f.scale=function(e){return arguments.length?(t=e,f):t},f.ticks=function(){return n=Array.from(arguments),f},f.tickArguments=function(e){return arguments.length?(n=e==null?[]:Array.from(e),f):n.slice()},f.tickValues=function(e){return arguments.length?(r=e==null?null:Array.from(e),f):r&&r.slice()},f.tickFormat=function(e){return arguments.length?(i=e,f):i},f.tickSize=function(e){return arguments.length?(a=o=+e,f):a},f.tickSizeInner=function(e){return arguments.length?(a=+e,f):a},f.tickSizeOuter=function(e){return arguments.length?(o=+e,f):o},f.tickPadding=function(e){return arguments.length?(s=+e,f):s},f.offset=function(e){return arguments.length?(c=+e,f):c},f}function iO(e){return rO(YD,e)}function aO(e){return rO(XD,e)}var oO={value:()=>{}};function sO(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new cO(n)}function cO(e){this._=e}function lO(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}cO.prototype=sO.prototype={constructor:cO,on:function(e,t){var n=this._,r=lO(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=uO(n[i],e.name)))return i}else{if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=dO(n[i],e.name,t);else if(t==null)for(i in n)n[i]=dO(n[i],e.name,null);return this}},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new cO(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function uO(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function dO(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=oO,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var fO={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function pO(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),fO.hasOwnProperty(t)?{space:fO[t],local:e}:e}function mO(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function hO(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function gO(e){var t=pO(e);return(t.local?hO:mO)(t)}function _O(){}function vO(e){return e==null?_O:function(){return this.querySelector(e)}}function yO(e){typeof e!=`function`&&(e=vO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new sA(r,this._parents)}function bO(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function xO(){return[]}function SO(e){return e==null?xO:function(){return this.querySelectorAll(e)}}function CO(e){return function(){return bO(e.apply(this,arguments))}}function wO(e){e=typeof e==`function`?CO(e):SO(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new sA(r,i)}function TO(e){return function(){return this.matches(e)}}function EO(e){return function(t){return t.matches(e)}}var DO=Array.prototype.find;function OO(e){return function(){return DO.call(this.children,e)}}function kO(){return this.firstElementChild}function AO(e){return this.select(e==null?kO:OO(typeof e==`function`?e:EO(e)))}var jO=Array.prototype.filter;function MO(){return Array.from(this.children)}function NO(e){return function(){return jO.call(this.children,e)}}function PO(e){return this.selectAll(e==null?MO:NO(typeof e==`function`?e:EO(e)))}function FO(e){typeof e!=`function`&&(e=TO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new sA(r,this._parents)}function IO(e){return Array(e.length)}function LO(){return new sA(this._enter||this._groups.map(IO),this._parents)}function RO(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}RO.prototype={constructor:RO,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function zO(e){return function(){return e}}function BO(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new RO(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function VO(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new RO(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function HO(e){return e.__data__}function UO(e,t){if(!arguments.length)return Array.from(this,HO);var n=t?VO:BO,r=this._parents,i=this._groups;typeof e!=`function`&&(e=zO(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=WO(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new sA(o,r),o._enter=s,o._exit=c,o}function WO(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function GO(){return new sA(this._exit||this._groups.map(IO),this._parents)}function KO(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function qO(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new sA(s,this._parents)}function JO(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function YO(e){e||=XO;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new sA(i,this._parents).order()}function XO(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function ZO(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function QO(){return Array.from(this)}function $O(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function ek(){let e=0;for(let t of this)++e;return e}function tk(){return!this.node()}function nk(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function rk(e){return function(){this.removeAttribute(e)}}function ik(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ak(e,t){return function(){this.setAttribute(e,t)}}function ok(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function sk(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function ck(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function lk(e,t){var n=pO(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?ik:rk:typeof t==`function`?n.local?ck:sk:n.local?ok:ak)(n,t))}function uk(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function dk(e){return function(){this.style.removeProperty(e)}}function fk(e,t,n){return function(){this.style.setProperty(e,t,n)}}function pk(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function mk(e,t,n){return arguments.length>1?this.each((t==null?dk:typeof t==`function`?pk:fk)(e,t,n??``)):hk(this.node(),e)}function hk(e,t){return e.style.getPropertyValue(t)||uk(e).getComputedStyle(e,null).getPropertyValue(t)}function gk(e){return function(){delete this[e]}}function _k(e,t){return function(){this[e]=t}}function vk(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function yk(e,t){return arguments.length>1?this.each((t==null?gk:typeof t==`function`?vk:_k)(e,t)):this.node()[e]}function bk(e){return e.trim().split(/^|\s+/)}function xk(e){return e.classList||new Sk(e)}function Sk(e){this._node=e,this._names=bk(e.getAttribute(`class`)||``)}Sk.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function Ck(e,t){for(var n=xk(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function wk(e,t){for(var n=xk(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Tk(e){return function(){Ck(this,e)}}function Ek(e){return function(){wk(this,e)}}function Dk(e,t){return function(){(t.apply(this,arguments)?Ck:wk)(this,e)}}function Ok(e,t){var n=bk(e+``);if(arguments.length<2){for(var r=xk(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?Dk:t?Tk:Ek)(n,t))}function kk(){this.textContent=``}function Ak(e){return function(){this.textContent=e}}function jk(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function Mk(e){return arguments.length?this.each(e==null?kk:(typeof e==`function`?jk:Ak)(e)):this.node().textContent}function Nk(){this.innerHTML=``}function Pk(e){return function(){this.innerHTML=e}}function Fk(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function Ik(e){return arguments.length?this.each(e==null?Nk:(typeof e==`function`?Fk:Pk)(e)):this.node().innerHTML}function Lk(){this.nextSibling&&this.parentNode.appendChild(this)}function Rk(){return this.each(Lk)}function zk(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Bk(){return this.each(zk)}function Vk(e){var t=typeof e==`function`?e:gO(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Hk(){return null}function Uk(e,t){var n=typeof e==`function`?e:gO(e),r=t==null?Hk:typeof t==`function`?t:vO(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function Wk(){var e=this.parentNode;e&&e.removeChild(this)}function Gk(){return this.each(Wk)}function Kk(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function qk(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Jk(e){return this.select(e?qk:Kk)}function Yk(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function Xk(e){return function(t){e.call(this,t,this.__data__)}}function Zk(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Qk(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function $k(e,t,n){return function(){var r=this.__on,i,a=Xk(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function eA(e,t,n){var r=Zk(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}}else{for(s=t?$k:Qk,i=0;i<a;++i)this.each(s(r[i],t,n));return this}}function tA(e,t,n){var r=uk(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function nA(e,t){return function(){return tA(this,e,t)}}function rA(e,t){return function(){return tA(this,e,t.apply(this,arguments))}}function iA(e,t){return this.each((typeof t==`function`?rA:nA)(e,t))}function*aA(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var oA=[null];function sA(e,t){this._groups=e,this._parents=t}function cA(){return new sA([[document.documentElement]],oA)}function lA(){return this}sA.prototype=cA.prototype={constructor:sA,select:yO,selectAll:wO,selectChild:AO,selectChildren:PO,filter:FO,data:UO,enter:LO,exit:GO,join:KO,merge:qO,selection:lA,order:JO,sort:YO,call:ZO,nodes:QO,node:$O,size:ek,empty:tk,each:nk,attr:lk,style:mk,property:yk,classed:Ok,text:Mk,html:Ik,raise:Rk,lower:Bk,append:Vk,insert:Uk,remove:Gk,clone:Jk,datum:Yk,on:eA,dispatch:iA,[Symbol.iterator]:aA};function uA(e){return typeof e==`string`?new sA([[document.querySelector(e)]],[document.documentElement]):new sA([[e]],oA)}function dA(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function fA(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function pA(){}var mA=.7,hA=1/mA,gA=`\\s*([+-]?\\d+)\\s*`,_A=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,vA=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,yA=/^#([0-9a-f]{3,8})$/,bA=RegExp(`^rgb\\(${gA},${gA},${gA}\\)$`),xA=RegExp(`^rgb\\(${vA},${vA},${vA}\\)$`),SA=RegExp(`^rgba\\(${gA},${gA},${gA},${_A}\\)$`),CA=RegExp(`^rgba\\(${vA},${vA},${vA},${_A}\\)$`),wA=RegExp(`^hsl\\(${_A},${vA},${vA}\\)$`),TA=RegExp(`^hsla\\(${_A},${vA},${vA},${_A}\\)$`),EA={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};dA(pA,kA,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:DA,formatHex:DA,formatHex8:Cee,formatHsl:wee,formatRgb:OA,toString:OA});function DA(){return this.rgb().formatHex()}function Cee(){return this.rgb().formatHex8()}function wee(){return BA(this).formatHsl()}function OA(){return this.rgb().formatRgb()}function kA(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=yA.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?AA(t):n===3?new NA(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?jA(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?jA(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=bA.exec(e))?new NA(t[1],t[2],t[3],1):(t=xA.exec(e))?new NA(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=SA.exec(e))?jA(t[1],t[2],t[3],t[4]):(t=CA.exec(e))?jA(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=wA.exec(e))?zA(t[1],t[2]/100,t[3]/100,1):(t=TA.exec(e))?zA(t[1],t[2]/100,t[3]/100,t[4]):EA.hasOwnProperty(e)?AA(EA[e]):e===`transparent`?new NA(NaN,NaN,NaN,0):null}function AA(e){return new NA(e>>16&255,e>>8&255,e&255,1)}function jA(e,t,n,r){return r<=0&&(e=t=n=NaN),new NA(e,t,n,r)}function Tee(e){return e instanceof pA||(e=kA(e)),e?(e=e.rgb(),new NA(e.r,e.g,e.b,e.opacity)):new NA}function MA(e,t,n,r){return arguments.length===1?Tee(e):new NA(e,t,n,r??1)}function NA(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}dA(NA,MA,fA(pA,{brighter(e){return e=e==null?hA:hA**+e,new NA(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mA:mA**+e,new NA(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new NA(LA(this.r),LA(this.g),LA(this.b),IA(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:PA,formatHex:PA,formatHex8:Eee,formatRgb:FA,toString:FA}));function PA(){return`#${RA(this.r)}${RA(this.g)}${RA(this.b)}`}function Eee(){return`#${RA(this.r)}${RA(this.g)}${RA(this.b)}${RA((isNaN(this.opacity)?1:this.opacity)*255)}`}function FA(){let e=IA(this.opacity);return`${e===1?`rgb(`:`rgba(`}${LA(this.r)}, ${LA(this.g)}, ${LA(this.b)}${e===1?`)`:`, ${e})`}`}function IA(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function LA(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function RA(e){return e=LA(e),(e<16?`0`:``)+e.toString(16)}function zA(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new VA(e,t,n,r)}function BA(e){if(e instanceof VA)return new VA(e.h,e.s,e.l,e.opacity);if(e instanceof pA||(e=kA(e)),!e)return new VA;if(e instanceof VA)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new VA(o,s,c,e.opacity)}function Dee(e,t,n,r){return arguments.length===1?BA(e):new VA(e,t,n,r??1)}function VA(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}dA(VA,Dee,fA(pA,{brighter(e){return e=e==null?hA:hA**+e,new VA(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mA:mA**+e,new VA(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new NA(WA(e>=240?e-240:e+120,i,r),WA(e,i,r),WA(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new VA(HA(this.h),UA(this.s),UA(this.l),IA(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=IA(this.opacity);return`${e===1?`hsl(`:`hsla(`}${HA(this.h)}, ${UA(this.s)*100}%, ${UA(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function HA(e){return e=(e||0)%360,e<0?e+360:e}function UA(e){return Math.max(0,Math.min(1,e||0))}function WA(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var GA=e=>()=>e;function Oee(e,t){return function(n){return e+n*t}}function kee(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Aee(e){return(e=+e)==1?KA:function(t,n){return n-t?kee(t,n,e):GA(isNaN(t)?n:t)}}function KA(e,t){var n=t-e;return n?Oee(e,n):GA(isNaN(e)?t:e)}var qA=(function e(t){var n=Aee(t);function r(e,t){var r=n((e=MA(e)).r,(t=MA(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=KA(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function jee(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function Mee(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Nee(e,t){for(var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o=0;o<r;++o)i[o]=ej(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function Pee(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function JA(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function Fee(e,t){var n={},r={},i;for(i in typeof e==`object`&&e||(e={}),typeof t==`object`&&t||(t={}),t)i in e?n[i]=ej(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var YA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,XA=new RegExp(YA.source,`g`);function ZA(e){return function(){return e}}function QA(e){return function(t){return e(t)+``}}function $A(e,t){var n=YA.lastIndex=XA.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=YA.exec(e))&&(i=XA.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:JA(r,i)})),n=XA.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?QA(c[0].x):ZA(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function ej(e,t){var n=typeof t,r;return t==null||n===`boolean`?GA(t):(n===`number`?JA:n===`string`?(r=kA(t))?(t=r,qA):$A:t instanceof kA?qA:t instanceof Date?Pee:Mee(t)?jee:Array.isArray(t)?Nee:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?Fee:JA)(e,t)}function tj(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var nj=180/Math.PI,rj={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ij(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*nj,skewX:Math.atan(c)*nj,scaleX:o,scaleY:s}}var aj;function oj(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?rj:ij(t.a,t.b,t.c,t.d,t.e,t.f)}function sj(e){return e==null||(aj||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),aj.setAttribute(`transform`,e),!(e=aj.transform.baseVal.consolidate()))?rj:(e=e.matrix,ij(e.a,e.b,e.c,e.d,e.e,e.f))}function cj(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:JA(e,i)},{i:c-2,x:JA(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:JA(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:JA(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:JA(e,n)},{i:s-2,x:JA(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var lj=cj(oj,`px, `,`px)`,`deg)`),uj=cj(sj,`, `,`)`,`)`),dj=0,fj=0,pj=0,mj=1e3,hj,gj,_j=0,vj=0,yj=0,bj=typeof performance==`object`&&performance.now?performance:Date,xj=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Sj(){return vj||=(xj(Cj),bj.now()+yj)}function Cj(){vj=0}function wj(){this._call=this._time=this._next=null}wj.prototype=Tj.prototype={constructor:wj,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Sj():+n)+(t==null?0:+t),!this._next&&gj!==this&&(gj?gj._next=this:hj=this,gj=this),this._call=e,this._time=n,Aj()},stop:function(){this._call&&(this._call=null,this._time=1/0,Aj())}};function Tj(e,t,n){var r=new wj;return r.restart(e,t,n),r}function Ej(){Sj(),++dj;for(var e=hj,t;e;)(t=vj-e._time)>=0&&e._call.call(void 0,t),e=e._next;--dj}function Dj(){vj=(_j=bj.now())+yj,dj=fj=0;try{Ej()}finally{dj=0,kj(),vj=0}}function Oj(){var e=bj.now(),t=e-_j;t>mj&&(yj-=t,_j=e)}function kj(){for(var e,t=hj,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:hj=n);gj=e,Aj(r)}function Aj(e){dj||(fj&&=clearTimeout(fj),e-vj>24?(e<1/0&&(fj=setTimeout(Dj,e-bj.now()-yj)),pj&&=clearInterval(pj)):(pj||=(_j=bj.now(),setInterval(Oj,mj)),dj=1,xj(Dj)))}function jj(e,t,n){var r=new wj;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Mj=sO(`start`,`end`,`cancel`,`interrupt`),Nj=[];function Pj(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Rj(e,n,{name:t,index:r,group:i,on:Mj,tween:Nj,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function Fj(e,t){var n=Lj(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function Ij(e,t){var n=Lj(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function Lj(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Rj(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Tj(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return jj(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(jj(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function zj(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n)(r=n[o]).name===t?(i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]):a=!1;a&&delete e.__transition}}function Bj(e){return this.each(function(){zj(this,e)})}function Vj(e,t){var n,r;return function(){var i=Ij(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function Hj(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=Ij(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function Uj(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Lj(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Vj:Hj)(n,e,t))}function Wj(e,t,n){var r=e._id;return e.each(function(){var e=Ij(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Lj(e,r).value[t]}}function Gj(e,t){var n;return(typeof t==`number`?JA:t instanceof kA?qA:(n=kA(t))?(t=n,qA):$A)(e,t)}function Kj(e){return function(){this.removeAttribute(e)}}function qj(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Jj(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function Yj(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function Xj(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Zj(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Qj(e,t){var n=pO(e),r=n===`transform`?uj:Gj;return this.attrTween(e,typeof t==`function`?(n.local?Zj:Xj)(n,r,Wj(this,`attr.`+e,t)):t==null?(n.local?qj:Kj)(n):(n.local?Yj:Jj)(n,r,t))}function $j(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function eM(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function tM(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&eM(e,i)),n}return i._value=t,i}function nM(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&$j(e,i)),n}return i._value=t,i}function rM(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=pO(e);return this.tween(n,(r.local?tM:nM)(r,t))}function iM(e,t){return function(){Fj(this,e).delay=+t.apply(this,arguments)}}function aM(e,t){return t=+t,function(){Fj(this,e).delay=t}}function oM(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?iM:aM)(t,e)):Lj(this.node(),t).delay}function sM(e,t){return function(){Ij(this,e).duration=+t.apply(this,arguments)}}function cM(e,t){return t=+t,function(){Ij(this,e).duration=t}}function lM(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?sM:cM)(t,e)):Lj(this.node(),t).duration}function uM(e,t){if(typeof t!=`function`)throw Error();return function(){Ij(this,e).ease=t}}function dM(e){var t=this._id;return arguments.length?this.each(uM(t,e)):Lj(this.node(),t).ease}function fM(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();Ij(this,e).ease=n}}function pM(e){if(typeof e!=`function`)throw Error();return this.each(fM(this._id,e))}function mM(e){typeof e!=`function`&&(e=TO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new UM(r,this._parents,this._name,this._id)}function hM(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new UM(o,this._parents,this._name,this._id)}function gM(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function _M(e,t,n){var r,i,a=gM(t)?Fj:Ij;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function vM(e,t){var n=this._id;return arguments.length<2?Lj(this.node(),n).on.on(e):this.each(_M(n,e,t))}function yM(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function bM(){return this.on(`end.remove`,yM(this._id))}function xM(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=vO(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,Pj(l[f],t,n,f,l,Lj(u,n)));return new UM(a,this._parents,t,n)}function SM(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=SO(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Lj(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&Pj(p,t,n,h,f,m);a.push(f),o.push(u)}return new UM(a,o,t,n)}var CM=cA.prototype.constructor;function wM(){return new CM(this._groups,this._parents)}function TM(e,t){var n,r,i;return function(){var a=hk(this,e),o=(this.style.removeProperty(e),hk(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function EM(e){return function(){this.style.removeProperty(e)}}function DM(e,t,n){var r,i=n+``,a;return function(){var o=hk(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function OM(e,t,n){var r,i,a;return function(){var o=hk(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),hk(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function kM(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=Ij(this,e),l=c.on,u=c.value[a]==null?s||=EM(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function AM(e,t,n){var r=(e+=``)==`transform`?lj:Gj;return t==null?this.styleTween(e,TM(e,r)).on(`end.style.`+e,EM(e)):typeof t==`function`?this.styleTween(e,OM(e,r,Wj(this,`style.`+e,t))).each(kM(this._id,e)):this.styleTween(e,DM(e,r,t),n).on(`end.style.`+e,null)}function jM(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function MM(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&jM(e,a,n)),r}return a._value=t,a}function NM(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,MM(e,t,n??``))}function PM(e){return function(){this.textContent=e}}function FM(e){return function(){var t=e(this);this.textContent=t??``}}function IM(e){return this.tween(`text`,typeof e==`function`?FM(Wj(this,`text`,e)):PM(e==null?``:e+``))}function LM(e){return function(t){this.textContent=e.call(this,t)}}function RM(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&LM(r)),t}return r._value=e,r}function zM(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,RM(e))}function BM(){for(var e=this._name,t=this._id,n=WM(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Lj(c,t);Pj(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new UM(r,this._parents,e,n)}function VM(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=Ij(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var HM=0;function UM(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function WM(){return++HM}var GM=cA.prototype;UM.prototype={constructor:UM,select:xM,selectAll:SM,selectChild:GM.selectChild,selectChildren:GM.selectChildren,filter:mM,merge:hM,selection:wM,transition:BM,call:GM.call,nodes:GM.nodes,node:GM.node,size:GM.size,empty:GM.empty,each:GM.each,on:vM,attr:Qj,attrTween:rM,style:AM,styleTween:NM,text:IM,textTween:zM,remove:bM,tween:Uj,delay:oM,duration:lM,ease:dM,easeVarying:pM,end:VM,[Symbol.iterator]:GM[Symbol.iterator]};function KM(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var qM={time:null,delay:0,duration:250,ease:KM};function JM(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function YM(e){var t,n;e instanceof UM?(t=e._id,e=e._name):(t=WM(),(n=qM).time=Sj(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&Pj(c,e,t,l,o,n||JM(c,t));return new UM(r,this._parents,e,t)}cA.prototype.interrupt=Bj,cA.prototype.transition=YM;var{abs:Iee,max:Lee,min:Ree}=Math;[`w`,`e`].map(XM),[`n`,`s`].map(XM),[`n`,`w`,`e`,`s`,`nw`,`ne`,`sw`,`se`].map(XM);function XM(e){return{type:e}}var ZM=Math.PI,QM=2*ZM,$M=1e-6,eN=QM-$M;function tN(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function nN(e){let t=Math.floor(e);if(!(t>=0))throw Error(`invalid digits: ${e}`);if(t>15)return tN;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=Math.round(arguments[t]*n)/n+e[t]}}var rN=class{constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._=``,this._append=e==null?tN:nN(e)}moveTo(e,t){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,t){this._append`L${this._x1=+e},${this._y1=+t}`}quadraticCurveTo(e,t,n,r){this._append`Q${+e},${+t},${this._x1=+n},${this._y1=+r}`}bezierCurveTo(e,t,n,r,i,a){this._append`C${+e},${+t},${+n},${+r},${this._x1=+i},${this._y1=+a}`}arcTo(e,t,n,r,i){if(e=+e,t=+t,n=+n,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let a=this._x1,o=this._y1,s=n-e,c=r-t,l=a-e,u=o-t,d=l*l+u*u;if(this._x1===null)this._append`M${this._x1=e},${this._y1=t}`;else if(d>$M){if(!(Math.abs(u*s-c*l)>$M)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((ZM-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>$M&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>$M||Math.abs(this._y1-l)>$M)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%QM+QM),d>eN?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>$M&&this._append`A${n},${n},0,${+(d>=ZM)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};rN.prototype;function iN(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function aN(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function oN(e){return e=aN(Math.abs(e)),e?e[1]:NaN}function sN(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function cN(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var lN=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function uN(e){if(!(t=lN.exec(e)))throw Error(`invalid format: `+e);var t;return new dN({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}uN.prototype=dN.prototype;function dN(e){this.fill=e.fill===void 0?` `:e.fill+``,this.align=e.align===void 0?`>`:e.align+``,this.sign=e.sign===void 0?`-`:e.sign+``,this.symbol=e.symbol===void 0?``:e.symbol+``,this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?``:e.type+``}dN.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 fN(e){out:for(var t=e.length,n=1,r=-1,i;n<t;++n)switch(e[n]){case`.`:r=i=n;break;case`0`:r===0&&(r=n),i=n;break;default:if(!+e[n])break out;r>0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var pN;function mN(e,t){var n=aN(e,t);if(!n)return pN=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(pN=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+aN(e,Math.max(0,t+a-1))[0]}function hN(e,t){var n=aN(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var gN={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:iN,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>hN(e*100,t),r:hN,s:mN,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function _N(e){return e}var vN=Array.prototype.map,yN=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function bN(e){var t=e.grouping===void 0||e.thousands===void 0?_N:sN(vN.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?_N:cN(vN.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=uN(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):gN[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=gN[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=fN(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&pN!==void 0?yN[8+pN/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++o<l;)if(p=e.charCodeAt(o),48>p||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T<h?Array(h-T+1).join(u):``;switch(g&&m&&(e=t(E+e,E.length?h-r.length:1/0),E=``),d){case`<`:e=n+e+r+E;break;case`=`:e=n+E+e+r;break;case`^`:e=E.slice(0,T=E.length>>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(oN(t)/3)))*3,r=10**-n,i=l((e=uN(e),e.type=`f`,e),{suffix:yN[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var xN,SN,CN;wN({thousands:`,`,grouping:[3],currency:[`$`,``]});function wN(e){return xN=bN(e),SN=xN.format,CN=xN.formatPrefix,xN}function TN(e){return Math.max(0,-oN(Math.abs(e)))}function EN(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(oN(t)/3)))*3-oN(Math.abs(e)))}function DN(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,oN(t)-oN(e))+1}function ON(e){var t=0,n=e.children,r=n&&n.length;if(!r)t=1;else for(;--r>=0;)t+=n[r].value;e.value=t}function kN(){return this.eachAfter(ON)}function AN(e,t){let n=-1;for(let r of this)e.call(t,r,++n,this);return this}function jN(e,t){for(var n=this,r=[n],i,a,o=-1;n=r.pop();)if(e.call(t,n,++o,this),i=n.children)for(a=i.length-1;a>=0;--a)r.push(i[a]);return this}function MN(e,t){for(var n=this,r=[n],i=[],a,o,s,c=-1;n=r.pop();)if(i.push(n),a=n.children)for(o=0,s=a.length;o<s;++o)r.push(a[o]);for(;n=i.pop();)e.call(t,n,++c,this);return this}function NN(e,t){let n=-1;for(let r of this)if(e.call(t,r,++n,this))return r}function PN(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,r=t.children,i=r&&r.length;--i>=0;)n+=r[i].value;t.value=n})}function FN(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function IN(e){for(var t=this,n=LN(t,e),r=[t];t!==n;)t=t.parent,r.push(t);for(var i=r.length;e!==n;)r.splice(i,0,e),e=e.parent;return r}function LN(e,t){if(e===t)return e;var n=e.ancestors(),r=t.ancestors(),i=null;for(e=n.pop(),t=r.pop();e===t;)i=e,e=n.pop(),t=r.pop();return i}function RN(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function zN(){return Array.from(this)}function BN(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function VN(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*HN(){var e=this,t,n=[e],r,i,a;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,r=e.children)for(i=0,a=r.length;i<a;++i)n.push(r[i]);while(n.length)}function UN(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=KN)):t===void 0&&(t=GN);for(var n=new YN(e),r,i=[n],a,o,s,c;r=i.pop();)if((o=t(r.data))&&(c=(o=Array.from(o)).length))for(r.children=o,s=c-1;s>=0;--s)i.push(a=o[s]=new YN(o[s])),a.parent=r,a.depth=r.depth+1;return n.eachBefore(JN)}function WN(){return UN(this).eachBefore(qN)}function GN(e){return e.children}function KN(e){return Array.isArray(e)?e[1]:null}function qN(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function JN(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function YN(e){this.data=e,this.depth=this.height=0,this.parent=null}YN.prototype=UN.prototype={constructor:YN,count:kN,each:AN,eachAfter:MN,eachBefore:jN,find:NN,sum:PN,sort:FN,path:IN,ancestors:RN,descendants:zN,leaves:BN,links:VN,copy:WN,[Symbol.iterator]:HN};function XN(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function ZN(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(r-t)/e.value;++s<c;)o=a[s],o.y0=n,o.y1=i,o.x0=t,o.x1=t+=o.value*l}function QN(){var e=1,t=1,n=0,r=!1;function i(i){var o=i.height+1;return i.x0=i.y0=n,i.x1=e,i.y1=t/o,i.eachBefore(a(t,o)),r&&i.eachBefore(XN),i}function a(e,t){return function(r){r.children&&ZN(r,r.x0,e*(r.depth+1)/t,r.x1,e*(r.depth+2)/t);var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;o<i&&(i=o=(i+o)/2),s<a&&(a=s=(a+s)/2),r.x0=i,r.y0=a,r.x1=o,r.y1=s}}return i.round=function(e){return arguments.length?(r=!!e,i):r},i.size=function(n){return arguments.length?(e=+n[0],t=+n[1],i):[e,t]},i.padding=function(e){return arguments.length?(n=+e,i):n},i}function $N(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}var eP=Symbol(`implicit`);function tP(){var e=new MD,t=[],n=[],r=eP;function i(i){let a=e.get(i);if(a===void 0){if(r!==eP)return r;e.set(i,a=t.push(i)-1)}return n[a%n.length]}return i.domain=function(n){if(!arguments.length)return t.slice();t=[],e=new MD;for(let r of n)e.has(r)||e.set(r,t.push(r)-1);return i},i.range=function(e){return arguments.length?(n=Array.from(e),i):n.slice()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return tP(t,n).unknown(r)},$N.apply(i,arguments),i}function nP(){var e=tP().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=GD(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return nP(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},$N.apply(d(),arguments)}function rP(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return rP(t())},e}function iP(){return rP(nP.apply(null,arguments).paddingInner(1))}function aP(e){return function(){return e}}function oP(e){return+e}var sP=[0,1];function cP(e){return e}function lP(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:aP(isNaN(t)?NaN:.5)}function uP(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function dP(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i<r?(r=lP(i,r),a=n(o,a)):(r=lP(r,i),a=n(a,o)),function(e){return a(r(e))}}function fP(e,t,n){var r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)i[o]=lP(e[o],e[o+1]),a[o]=n(t[o],t[o+1]);return function(t){var n=AD(e,t,1,r)-1;return a[n](i[n](t))}}function pP(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function mP(){var e=sP,t=sP,n=ej,r,i,a,o=cP,s,c,l;function u(){var n=Math.min(e.length,t.length);return o!==cP&&(o=uP(e[0],e[n-1])),s=n>2?fP:dP,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),JA))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,oP),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=tj,u()},d.clamp=function(e){return arguments.length?(o=e?!0:cP,u()):o!==cP},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function hP(){return mP()(cP,cP)}function gP(e,t,n,r){var i=UD(e,t,n),a;switch(r=uN(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=EN(i,o))&&(r.precision=a),CN(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=DN(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=TN(i))&&(r.precision=a-(r.type===`%`)*2)}return SN(r)}function _P(e){var t=e.domain;return e.ticks=function(e){var n=t();return VD(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return gP(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s<o&&(l=o,o=s,s=l,l=i,i=a,a=l);u-->0;){if(l=HD(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function vP(){var e=hP();return e.copy=function(){return pP(e,vP())},$N.apply(e,arguments),_P(e)}function yP(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],o;return a<i&&(o=n,n=r,r=o,o=i,i=a,a=o),e[n]=t.floor(i),e[r]=t.ceil(a),e}var bP=new Date,xP=new Date;function SP(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t<n-e?t:n},i.offset=(e,n)=>(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n<r)||!(a>0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(s<n&&n<r);return o},i.filter=n=>SP(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(bP.setTime(+t),xP.setTime(+r),e(bP),e(xP),Math.floor(n(bP,xP))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var CP=SP(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);CP.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?SP(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):CP),CP.range;var wP=1e3,TP=wP*60,EP=TP*60,DP=EP*24,OP=DP*7,kP=DP*30,AP=DP*365,jP=SP(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*wP)},(e,t)=>(t-e)/wP,e=>e.getUTCSeconds());jP.range;var MP=SP(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*wP)},(e,t)=>{e.setTime(+e+t*TP)},(e,t)=>(t-e)/TP,e=>e.getMinutes());MP.range;var NP=SP(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*TP)},(e,t)=>(t-e)/TP,e=>e.getUTCMinutes());NP.range;var PP=SP(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*wP-e.getMinutes()*TP)},(e,t)=>{e.setTime(+e+t*EP)},(e,t)=>(t-e)/EP,e=>e.getHours());PP.range;var FP=SP(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*EP)},(e,t)=>(t-e)/EP,e=>e.getUTCHours());FP.range;var IP=SP(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*TP)/DP,e=>e.getDate()-1);IP.range;var LP=SP(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/DP,e=>e.getUTCDate()-1);LP.range;var RP=SP(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/DP,e=>Math.floor(e/DP));RP.range;function zP(e){return SP(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*TP)/OP)}var BP=zP(0),VP=zP(1),HP=zP(2),UP=zP(3),WP=zP(4),GP=zP(5),KP=zP(6);BP.range,VP.range,HP.range,UP.range,WP.range,GP.range,KP.range;function qP(e){return SP(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/OP)}var JP=qP(0),YP=qP(1),XP=qP(2),ZP=qP(3),QP=qP(4),$P=qP(5),eF=qP(6);JP.range,YP.range,XP.range,ZP.range,QP.range,$P.range,eF.range;var tF=SP(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());tF.range;var nF=SP(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());nF.range;var rF=SP(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());rF.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:SP(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)}),rF.range;var iF=SP(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());iF.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:SP(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)}),iF.range;function aF(e,t,n,r,i,a){let o=[[jP,1,wP],[jP,5,5*wP],[jP,15,15*wP],[jP,30,30*wP],[a,1,TP],[a,5,5*TP],[a,15,15*TP],[a,30,30*TP],[i,1,EP],[i,3,3*EP],[i,6,6*EP],[i,12,12*EP],[r,1,DP],[r,2,2*DP],[n,1,OP],[t,1,kP],[t,3,3*kP],[e,1,AP]];function s(e,t,n){let r=t<e;r&&([e,t]=[t,e]);let i=n&&typeof n.range==`function`?n:c(e,t,n),a=i?i.range(e,+t+1):[];return r?a.reverse():a}function c(t,n,r){let i=Math.abs(n-t)/r,a=ED(([,,e])=>e).right(o,i);if(a===o.length)return e.every(UD(t/AP,n/AP,r));if(a===0)return CP.every(Math.max(UD(t,n,r),1));let[s,c]=o[i/o[a-1][2]<o[a][2]/i?a-1:a];return s.every(c)}return[s,c]}var[zee,Bee]=aF(iF,nF,JP,RP,FP,NP),[oF,sF]=aF(rF,tF,BP,IP,PP,MP);function cF(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function lF(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function uF(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function dF(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,o=e.shortDays,s=e.months,c=e.shortMonths,l=_F(i),u=vF(i),d=_F(a),f=vF(a),p=_F(o),m=vF(o),h=_F(s),g=vF(s),_=_F(c),v=vF(c),y={a:N,A:P,b:F,B:I,c:null,d:zF,e:zF,f:WF,g:tI,G:rI,H:BF,I:VF,j:HF,L:UF,m:GF,M:KF,p:L,q:R,Q:EI,s:DI,S:qF,u:JF,U:YF,V:ZF,w:QF,W:$F,x:null,X:null,y:eI,Y:nI,Z:iI,"%":TI},b={a:z,A:B,b:ee,B:te,c:null,d:aI,e:aI,f:uI,g:xI,G:CI,H:oI,I:sI,j:cI,L:lI,m:dI,M:fI,p:ne,q:re,Q:EI,s:DI,S:pI,u:mI,U:hI,V:_I,w:vI,W:yI,x:null,X:null,y:bI,Y:SI,Z:wI,"%":TI},x={a:E,A:D,b:O,B:k,c:A,d:kF,e:kF,f:FF,g:TF,G:wF,H:jF,I:jF,j:AF,L:PF,m:OF,M:MF,p:T,q:DF,Q:LF,s:RF,S:NF,u:bF,U:xF,V:SF,w:yF,W:CF,x:j,X:M,y:TF,Y:wF,Z:EF,"%":IF};y.x=S(n,y),y.X=S(r,y),y.c=S(t,y),b.x=S(n,b),b.X=S(r,b),b.c=S(t,b);function S(e,t){return function(n){var r=[],i=-1,a=0,o=e.length,s,c,l;for(n instanceof Date||(n=new Date(+n));++i<o;)e.charCodeAt(i)===37&&(r.push(e.slice(a,i)),(c=fF[s=e.charAt(++i)])==null?c=s===`e`?` `:`0`:s=e.charAt(++i),(l=t[s])&&(s=l(n,c)),r.push(s),a=i+1);return r.push(e.slice(a,i)),r.join(``)}}function C(e,t){return function(n){var r=uF(1900,void 0,1),i=w(r,e,n+=``,0),a,o;if(i!=n.length)return null;if(`Q`in r)return new Date(r.Q);if(`s`in r)return new Date(r.s*1e3+(`L`in r?r.L:0));if(t&&!(`Z`in r)&&(r.Z=0),`p`in r&&(r.H=r.H%12+r.p*12),r.m===void 0&&(r.m=`q`in r?r.q:0),`V`in r){if(r.V<1||r.V>53)return null;`w`in r||(r.w=1),`Z`in r?(a=lF(uF(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?YP.ceil(a):YP(a),a=LP.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=cF(uF(r.y,0,1)),o=a.getDay(),a=o>4||o===0?VP.ceil(a):VP(a),a=IP.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?lF(uF(r.y,0,1)).getUTCDay():cF(uF(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,lF(r)):cF(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i<a;){if(r>=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in fF?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function A(e,n,r){return w(e,t,n,r)}function j(e,t,r){return w(e,n,t,r)}function M(e,t,n){return w(e,r,t,n)}function N(e){return o[e.getDay()]}function P(e){return a[e.getDay()]}function F(e){return c[e.getMonth()]}function I(e){return s[e.getMonth()]}function L(e){return i[+(e.getHours()>=12)]}function R(e){return 1+~~(e.getMonth()/3)}function z(e){return o[e.getUTCDay()]}function B(e){return a[e.getUTCDay()]}function ee(e){return c[e.getUTCMonth()]}function te(e){return s[e.getUTCMonth()]}function ne(e){return i[+(e.getUTCHours()>=12)]}function re(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var fF={"-":``,_:` `,0:`0`},pF=/^\s*\d+/,mF=/^%/,hF=/[\\^$*+?|[\]().{}]/g;function J(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a<n?Array(n-a+1).join(t)+i:i)}function gF(e){return e.replace(hF,`\\$&`)}function _F(e){return RegExp(`^(?:`+e.map(gF).join(`|`)+`)`,`i`)}function vF(e){return new Map(e.map((e,t)=>[e.toLowerCase(),t]))}function yF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function bF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function xF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function SF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function CF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wF(e,t,n){var r=pF.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function TF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function EF(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function DF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function OF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function kF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function AF(e,t,n){var r=pF.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function jF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function MF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function NF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function PF(e,t,n){var r=pF.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function FF(e,t,n){var r=pF.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function IF(e,t,n){var r=mF.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function LF(e,t,n){var r=pF.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function RF(e,t,n){var r=pF.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function zF(e,t){return J(e.getDate(),t,2)}function BF(e,t){return J(e.getHours(),t,2)}function VF(e,t){return J(e.getHours()%12||12,t,2)}function HF(e,t){return J(1+IP.count(rF(e),e),t,3)}function UF(e,t){return J(e.getMilliseconds(),t,3)}function WF(e,t){return UF(e,t)+`000`}function GF(e,t){return J(e.getMonth()+1,t,2)}function KF(e,t){return J(e.getMinutes(),t,2)}function qF(e,t){return J(e.getSeconds(),t,2)}function JF(e){var t=e.getDay();return t===0?7:t}function YF(e,t){return J(BP.count(rF(e)-1,e),t,2)}function XF(e){var t=e.getDay();return t>=4||t===0?WP(e):WP.ceil(e)}function ZF(e,t){return e=XF(e),J(WP.count(rF(e),e)+(rF(e).getDay()===4),t,2)}function QF(e){return e.getDay()}function $F(e,t){return J(VP.count(rF(e)-1,e),t,2)}function eI(e,t){return J(e.getFullYear()%100,t,2)}function tI(e,t){return e=XF(e),J(e.getFullYear()%100,t,2)}function nI(e,t){return J(e.getFullYear()%1e4,t,4)}function rI(e,t){var n=e.getDay();return e=n>=4||n===0?WP(e):WP.ceil(e),J(e.getFullYear()%1e4,t,4)}function iI(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+J(t/60|0,`0`,2)+J(t%60,`0`,2)}function aI(e,t){return J(e.getUTCDate(),t,2)}function oI(e,t){return J(e.getUTCHours(),t,2)}function sI(e,t){return J(e.getUTCHours()%12||12,t,2)}function cI(e,t){return J(1+LP.count(iF(e),e),t,3)}function lI(e,t){return J(e.getUTCMilliseconds(),t,3)}function uI(e,t){return lI(e,t)+`000`}function dI(e,t){return J(e.getUTCMonth()+1,t,2)}function fI(e,t){return J(e.getUTCMinutes(),t,2)}function pI(e,t){return J(e.getUTCSeconds(),t,2)}function mI(e){var t=e.getUTCDay();return t===0?7:t}function hI(e,t){return J(JP.count(iF(e)-1,e),t,2)}function gI(e){var t=e.getUTCDay();return t>=4||t===0?QP(e):QP.ceil(e)}function _I(e,t){return e=gI(e),J(QP.count(iF(e),e)+(iF(e).getUTCDay()===4),t,2)}function vI(e){return e.getUTCDay()}function yI(e,t){return J(YP.count(iF(e)-1,e),t,2)}function bI(e,t){return J(e.getUTCFullYear()%100,t,2)}function xI(e,t){return e=gI(e),J(e.getUTCFullYear()%100,t,2)}function SI(e,t){return J(e.getUTCFullYear()%1e4,t,4)}function CI(e,t){var n=e.getUTCDay();return e=n>=4||n===0?QP(e):QP.ceil(e),J(e.getUTCFullYear()%1e4,t,4)}function wI(){return`+0000`}function TI(){return`%`}function EI(e){return+e}function DI(e){return Math.floor(e/1e3)}var OI,kI;AI({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 AI(e){return OI=dF(e),kI=OI.format,OI.parse,OI.utcFormat,OI.utcParse,OI}function jI(e){return new Date(e)}function MI(e){return e instanceof Date?+e:+new Date(+e)}function NI(e,t,n,r,i,a,o,s,c,l){var u=hP(),d=u.invert,f=u.domain,p=l(`.%L`),m=l(`:%S`),h=l(`%I:%M`),g=l(`%I %p`),_=l(`%a %d`),v=l(`%b %d`),y=l(`%B`),b=l(`%Y`);function x(e){return(c(e)<e?p:s(e)<e?m:o(e)<e?h:a(e)<e?g:r(e)<e?i(e)<e?_:v:n(e)<e?y:b)(e)}return u.invert=function(e){return new Date(d(e))},u.domain=function(e){return arguments.length?f(Array.from(e,MI)):f().map(jI)},u.ticks=function(t){var n=f();return e(n[0],n[n.length-1],t??10)},u.tickFormat=function(e,t){return t==null?x:l(t)},u.nice=function(e){var n=f();return e&&typeof e.range==`function`||(e=t(n[0],n[n.length-1],e??10)),e?f(yP(n,e)):u},u.copy=function(){return pP(u,NI(e,t,n,r,i,a,o,s,c,l))},u}function PI(){return $N.apply(NI(oF,sF,rF,tF,BP,IP,PP,MP,jP,kI).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function Y(e){return function(){return e}}var FI=Math.abs,II=Math.atan2,LI=Math.cos,RI=Math.max,zI=Math.min,BI=Math.sin,VI=Math.sqrt,HI=Math.PI,UI=HI/2,WI=2*HI;function GI(e){return e>1?0:e<-1?HI:Math.acos(e)}function KI(e){return e>=1?UI:e<=-1?-UI:Math.asin(e)}function qI(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new rN(t)}function JI(e){return e.innerRadius}function YI(e){return e.outerRadius}function XI(e){return e.startAngle}function ZI(e){return e.endAngle}function QI(e){return e&&e.padAngle}function $I(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function eL(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/VI(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*VI(RI(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,A=E-g,j=D-_;return O*O+k*k>A*A+j*j&&(w=E,T=D),{cx:w,cy:T,x01:-u,y01:-d,x11:w*(i/x-1),y11:T*(i/x-1)}}function tL(){var e=JI,t=YI,n=Y(0),r=null,i=XI,a=ZI,o=QI,s=null,c=qI(l);function l(){var l,u,d=+e.apply(this,arguments),f=+t.apply(this,arguments),p=i.apply(this,arguments)-UI,m=a.apply(this,arguments)-UI,h=FI(m-p),g=m>p;if(s||=l=c(),f<d&&(u=f,f=d,d=u),!(f>1e-12))s.moveTo(0,0);else if(h>WI-1e-12)s.moveTo(f*LI(p),f*BI(p)),s.arc(0,0,f,p,m,!g),d>1e-12&&(s.moveTo(d*LI(m),d*BI(m)),s.arc(0,0,d,m,p,g));else{var _=p,v=m,y=p,b=m,x=h,S=h,C=o.apply(this,arguments)/2,w=C>1e-12&&(r?+r.apply(this,arguments):VI(d*d+f*f)),T=zI(FI(f-d)/2,+n.apply(this,arguments)),E=T,D=T,O,k;if(w>1e-12){var A=KI(w/d*BI(C)),j=KI(w/f*BI(C));(x-=A*2)>1e-12?(A*=g?1:-1,y+=A,b-=A):(x=0,y=b=(p+m)/2),(S-=j*2)>1e-12?(j*=g?1:-1,_+=j,v-=j):(S=0,_=v=(p+m)/2)}var M=f*LI(_),N=f*BI(_),P=d*LI(b),F=d*BI(b);if(T>1e-12){var I=f*LI(v),L=f*BI(v),R=d*LI(y),z=d*BI(y),B;if(h<HI){if(B=$I(M,N,R,z,I,L,P,F)){var ee=M-B[0],te=N-B[1],ne=I-B[0],re=L-B[1],ie=1/BI(GI((ee*ne+te*re)/(VI(ee*ee+te*te)*VI(ne*ne+re*re)))/2),ae=VI(B[0]*B[0]+B[1]*B[1]);E=zI(T,(d-ae)/(ie-1)),D=zI(T,(f-ae)/(ie+1))}else E=D=0}}S>1e-12?D>1e-12?(O=eL(R,z,M,N,f,D,g),k=eL(I,L,P,F,f,D,g),s.moveTo(O.cx+O.x01,O.cy+O.y01),D<T?s.arc(O.cx,O.cy,D,II(O.y01,O.x01),II(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,D,II(O.y01,O.x01),II(O.y11,O.x11),!g),s.arc(0,0,f,II(O.cy+O.y11,O.cx+O.x11),II(k.cy+k.y11,k.cx+k.x11),!g),s.arc(k.cx,k.cy,D,II(k.y11,k.x11),II(k.y01,k.x01),!g))):(s.moveTo(M,N),s.arc(0,0,f,_,v,!g)):s.moveTo(M,N),!(d>1e-12)||!(x>1e-12)?s.lineTo(P,F):E>1e-12?(O=eL(P,F,I,L,d,-E,g),k=eL(M,N,R,z,d,-E,g),s.lineTo(O.cx+O.x01,O.cy+O.y01),E<T?s.arc(O.cx,O.cy,E,II(O.y01,O.x01),II(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,E,II(O.y01,O.x01),II(O.y11,O.x11),!g),s.arc(0,0,d,II(O.cy+O.y11,O.cx+O.x11),II(k.cy+k.y11,k.cx+k.x11),g),s.arc(k.cx,k.cy,E,II(k.y11,k.x11),II(k.y01,k.x01),!g))):s.arc(0,0,d,b,y,g)}if(s.closePath(),l)return s=null,l+``||null}return l.centroid=function(){var n=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-HI/2;return[LI(r)*n,BI(r)*n]},l.innerRadius=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),l):e},l.outerRadius=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),l):t},l.cornerRadius=function(e){return arguments.length?(n=typeof e==`function`?e:Y(+e),l):n},l.padRadius=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:Y(+e),l):r},l.startAngle=function(e){return arguments.length?(i=typeof e==`function`?e:Y(+e),l):i},l.endAngle=function(e){return arguments.length?(a=typeof e==`function`?e:Y(+e),l):a},l.padAngle=function(e){return arguments.length?(o=typeof e==`function`?e:Y(+e),l):o},l.context=function(e){return arguments.length?(s=e??null,l):s},l}Array.prototype.slice;function nL(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function rL(e){this._context=e}rL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};function iL(e){return new rL(e)}function aL(e){return e[0]}function oL(e){return e[1]}function sL(e,t){var n=Y(!0),r=null,i=iL,a=null,o=qI(s);e=typeof e==`function`?e:e===void 0?aL:Y(e),t=typeof t==`function`?t:t===void 0?oL:Y(t);function s(s){var c,l=(s=nL(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c<l&&n(u=s[c],c,s))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(u,c,s),+t(u,c,s));if(f)return a=null,f+``||null}return s.x=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),s):e},s.y=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),s):t},s.defined=function(e){return arguments.length?(n=typeof e==`function`?e:Y(!!e),s):n},s.curve=function(e){return arguments.length?(i=e,r!=null&&(a=i(r)),s):i},s.context=function(e){return arguments.length?(e==null?r=a=null:a=i(r=e),s):r},s}function cL(e,t,n){var r=null,i=Y(!0),a=null,o=iL,s=null,c=qI(l);e=typeof e==`function`?e:e===void 0?aL:Y(+e),t=typeof t==`function`?t:Y(t===void 0?0:+t),n=typeof n==`function`?n:n===void 0?oL:Y(+n);function l(l){var u,d,f,p=(l=nL(l)).length,m,h=!1,g,_=Array(p),v=Array(p);for(a??(s=o(g=c())),u=0;u<=p;++u){if(!(u<p&&i(m=l[u],u,l))===h){if(h=!h)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return sL().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:Y(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:Y(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:Y(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}function lL(e){return e<0?-1:1}function uL(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(lL(a)+lL(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function dL(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function fL(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function pL(e){this._context=e}pL.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:fL(this,this._t0,dL(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,e!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,fL(this,dL(this,n=uL(this,e,t)),n);break;default:fL(this,this._t0,n=uL(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}},Object.create(pL.prototype).point=function(e,t){pL.prototype.point.call(this,t,e)};function mL(e){return new pL(e)}function hL(e,t){this._context=e,this._t=t}hL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}};function gL(e){return new hL(e,1)}function _L(e,t,n){this.k=e,this.x=t,this.y=n}_L.prototype={constructor:_L,scale:function(e){return e===1?this:new _L(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new _L(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var vL=new _L(1,0,0);yL.prototype=_L.prototype;function yL(e){for(;!e.__zoom;)if(!(e=e.parentNode))return vL;return e.__zoom}function bL(e,t=15){let n=e.split(` `),r=[],i=[],a=0;return n.forEach(e=>{a+e.length>t?(i.length&&r.push(i.join(` `)),i=[e],a=e.length):(i.push(e),a+=e.length+ +(i.length>0))}),i.length&&r.push(i.join(` `)),r}var xL={DECISIVE:20,ROUTINE:50},SL=new Set([`WALKOVER`,`DOUBLE_WALKOVER`,`DEFAULTED`,`DOUBLE_DEFAULT`]),CL={COMPETITIVE:`#16a34a`,ROUTINE:`#3b82f6`,DECISIVE:`#8e44ad`,WALKOVER:`#6b7280`},wL=`#cfd8dc`,TL=`COMPETITIVE`,EL=`ROUTINE`,DL=`DECISIVE`,OL=`WALKOVER`;function kL(e,t=xL){if(!e?.length)return;let n=[0,0],r=[0,0];for(let t of e)n[0]+=t.side1Score||0,n[1]+=t.side2Score||0,r[0]+=t.side1TiebreakScore||0,r[1]+=t.side2TiebreakScore||0;r[0]+r[1]&&(n[r[0]>r[1]?0:1]+=1);let i=Math.max(n[0],n[1]);if(i===0)return;let a=Math.round(Math.min(n[0],n[1])/i*100);return Number.isNaN(a)?OL:a<=t.DECISIVE?DL:a<=t.ROUTINE?EL:TL}function AL(e,n=xL){if(e)return kL(t.scoreGovernor.parseScoreString({scoreString:e}),n)}function jL({winningSide:e,matchUpStatus:t,sets:n,scoreString:r,bands:i}){if(t&&SL.has(t))return OL;if(e)return n?.length?kL(n,i):AL(r,i)}function ML(e,t){return e?t?.[e]??CL[e]:wL}var{WILDCARD:NL,QUALIFIER:PL,LUCKY_LOSER:FL}=t.entryStatusConstants,IL=`text-anchor`,LL=`dominant-baseline`,RL=`fill-opacity`,zL=Object.assign({},...t.fixtures.countries.filter(e=>e.ioc).map(e=>({[e.ioc]:e.iso2})),...t.fixtures.countries.filter(e=>e.iso).map(e=>({[e.iso]:e.iso2})));function BL(e){let t=Math.floor(e.length/2),n=e.slice(0,t),r=e.slice(t).reverse();return[...n,...r]}function VL(e){if(e)switch(e){case NL:return`WC`;case PL:return`Q`;case FL:return`LL`;default:return e}}function HL(e,t){let n=[];for(let r of e)for(let e of r.sides){let i=r.matchUpStatus===`BYE`&&!e.participantName;n.push({name:e.participantName||(i?`BYE`:``),participantName:e.participantName||(i?`BYE`:void 0),drawPosition:e.drawPosition,seedNumber:e.seedNumber,entryStatus:VL(e.entryStatus),nationalityCode:e.nationalityCode,matchUp:r,depth:t,value:1})}return n}function UL(e,t){let n=e.winningSide!==void 0&&e.winningSide!==null?e.sides.find(t=>t.sideNumber===e.winningSide):void 0;!n&&e.matchUpStatus===`BYE`&&(n=e.sides.find(e=>e.participantName));let r=n?.participantName,i=r?t.get(r):void 0;return{winnerName:r,winnerSide:n,winnerLookup:i}}function WL(e,t,n,r){return e.map((e,i)=>{let a=i*2,o=[t[a],t[a+1]].filter(Boolean),{winnerName:s,winnerSide:c,winnerLookup:l}=UL(e,r);return{name:s||``,participantName:s,drawPosition:l?.drawPosition??c?.drawPosition,seedNumber:c?.seedNumber??l?.seedNumber,entryStatus:VL(c?.entryStatus)??l?.entryStatus,nationalityCode:c?.nationalityCode??l?.nationalityCode,scoreString:e.scoreString,matchUpStatus:e.matchUpStatus,competitiveness:e.competitiveness,matchUp:e,depth:n,children:o.length>0?o:void 0}})}function GL(e){let{roundMatchUps:t}=e,n=Object.keys(t).map(Number).sort((e,t)=>e-t);if(n.length===0)throw Error(`No round data found in draw`);let r=t[n[0]],i=BL(HL(r,n.length)),a=new Map;for(let e of i)e.participantName&&e.participantName!==`BYE`&&a.set(e.participantName,e);let o=WL(BL(r),i,n.length-1,a);for(let e=1;e<n.length;e++)o=WL(BL(t[n[e]]),o,n.length-1-e,a);return o.length===1?o[0]:{name:`Tournament`,depth:0,children:o}}function KL(e,t){if(!e)return;let{seedNumber:n,entryStatus:r,drawPosition:i,participantName:a}=e,o;if(a?.trim().toUpperCase()===`BYE`)o=`#B0BEC5`;else if(n){let e=Number(n),t=vP().domain([1,32]).range([`0`,`1`]);o=vP().domain(GD(0,1,1/7)).range([`#81D4FA`,`#42A5F5`,`#1E88E5`,`#1565C0`,`#5C6BC0`,`#673AB7`,`#9C27B0`])(Number(t(e)))}else if(r?.toUpperCase()===`WC`)o=`red`;else if(r&&(r===`Q`||r===`LL`))o=vP().domain(GD(0,1,1/3)).range([`#FFF176`,`#FBC02D`,`#FF9800`])(t(i));else{let e=[`#C8E6C9`,`#81C784`,`#66BB6A`,`#4CAF50`,`#43A047`,`#388E3C`,`#2E7D32`,`#1B5E20`,`#A5D6A7`,`#90CAF9`,`#64B5F6`,`#42A5F5`,`#2196F3`,`#1E88E5`,`#1976D2`,`#1565C0`];o=vP().domain(GD(0,1,1/e.length)).range(e)(t(i))}e.color=o,e.children&&e.children.forEach(n=>{n.participantName===e.participantName&&(n.color=o),KL(n,t)})}function qL(e,t){e&&(e.competitivenessColor=e.children?.length&&e.competitiveness?ML(e.competitiveness,t):wL,e.children?.forEach(e=>qL(e,t)))}function JL(e,t){let n=[];return e.seedNumber?n.push(`Seed ${e.seedNumber}`):e.entryStatus&&n.push(e.entryStatus),t===7&&e.drawPosition&&n.push(`Draw ${e.drawPosition}`),n.length>0?n.join(` • `):void 0}function YL(e,t){let n=e.find(e=>e.data.participantName&&e.data.participantName!==t);return n?.data.participantName?n.data:void 0}function XL(e,t){let n=[e.participantName],r;if(t.children&&t.children.length>0)e.scoreString&&n.push(e.scoreString),r=YL(t.children,e.participantName),r&&n.push(r.participantName);else{let r=JL(e,t.depth);r&&n.push(r)}return{messageLines:n,opponentData:r}}function ZL(e,t){return-(e*t/2)+t/2}function QL(e,t,n){let r=uA(e).append(`svg`).attr(`width`,t).attr(`height`,n).style(`display`,`block`),i=r.append(`g`).attr(`transform`,`translate(${t/2}, ${n/2})`);return{svg:r,g:i,flagsGroup:i.append(`g`).attr(`class`,`flags-group`),winningFlagsGroup:i.append(`g`).attr(`class`,`winning-flags-group`),losingFlagsGroup:i.append(`g`).attr(`class`,`losing-flags-group`)}}function $L(e,t,n,r,i){let a=e.append(`text`).attr(`x`,t/2).attr(`y`,n/2).attr(IL,`middle`).attr(LL,`middle`).attr(`font-size`,`${r}px`).attr(`font-weight`,`bold`).style(`fill`,`var(--chc-text-primary)`).attr(`pointer-events`,`none`),o=r+i*.5;return{centerText:a,centerText2:e.append(`text`).attr(`x`,t/2).attr(`y`,n/2+o).attr(IL,`middle`).attr(LL,`middle`).attr(`font-size`,`${i}px`).style(`fill`,`var(--chc-text-secondary)`).attr(`pointer-events`,`none`)}}function eR(e,t,n,r,i,a,o){n&&(i?(t.flagsGroup.selectAll(`text`).remove(),t.winningFlagsGroup.selectAll(`text`).remove(),t.losingFlagsGroup.selectAll(`text`).remove()):e.selectAll(`text`).remove(),e.append(`text`).attr(`font-size`,`${o}px`).attr(IL,`middle`).attr(LL,`middle`).attr(`transform`,`translate(0, ${r*a})`).text(iR(n)))}function tR(e,n,r,i={}){let a=i.width||800,o=i.height||800,s=Math.min(a,o)/800*(i.textScaleFactor??1),c=28*s,l=24*s,u=30*s,d=r||i.title||`Tournament`,f=Object.assign({},...t.fixtures.countries.filter(e=>e.label).map(e=>({[e.ioc]:e.label})));if(!Object.keys(n?.roundMatchUps??{}).length)return{highlightPlayer:()=>0,hide:()=>void 0,setColorMode:()=>void 0};let p=GL(n),m=UN(p,e=>e.children).sum(e=>e.value||0),h=Math.min(a,o)/2,g=h/2,_=e=>e*h/200;QN().size([2*Math.PI,h-g])(m),KL(p,vP().domain([0,n.drawSize||128]).range([0,1])),qL(p,i.competitivenessColors);let v=i.colorMode??`default`,y=e=>v===`competitiveness`?e.competitivenessColor||`#cfd8dc`:e.color||`#ccc`,b=m.descendants(),x=tL().startAngle(e=>e.x0).endAngle(e=>e.x1).innerRadius(e=>e.y0+g).outerRadius(e=>e.y1+g),{svg:S,g:C,flagsGroup:w,winningFlagsGroup:T,losingFlagsGroup:E}=QL(e,a,o),D=new Set,O=e=>{e.nationalityCode&&D.add(e.nationalityCode),e.children&&e.children.forEach(O)};O(p);let k=Array.from(D),{centerText:A,centerText2:j}=$L(S,a,o,c,l);function M(){let e=bL(d,15);A.text(``),A.selectAll(`tspan`).remove(),j.text(``),j.selectAll(`tspan`).remove(),A.selectAll(`tspan`).data(e).join(`tspan`).attr(`x`,a/2).attr(`dy`,(e,t)=>t===0?0:u).text(e=>e);let t=-(e.length*u/2)+u/2;A.attr(`y`,o/2+t),A.style(`display`,`block`),j.style(`display`,`none`)}function N(){if(w.selectAll(`text`).remove(),T.selectAll(`text`).remove(),E.selectAll(`text`).remove(),k.length===0)return;let e=vP().domain([0,k.length]).range([0,Math.PI*2]),t=_(20),n=g-t+10;w.selectAll(`text`).data(k).join(`text`).attr(`font-size`,`${t}px`).attr(IL,`middle`).attr(LL,`middle`).attr(`transform`,(t,r)=>{let i=e(r);return`translate(${Math.cos(i)*n}, ${Math.sin(i)*n})`}).text(e=>iR(e)).style(`cursor`,`pointer`).on(`mouseover`,function(e,t){let n=f[t]||t;A.selectAll(`tspan`).remove(),A.attr(`y`,o/2),A.text(n).style(`display`,`block`),j.selectAll(`tspan`).remove(),j.text(``).style(`display`,`none`),F||C.selectAll(`path`).attr(RL,e=>e.data.nationalityCode===t?.9:.3)}).on(`mouseout`,function(){F||C.selectAll(`path`).attr(RL,.8),M()})}N(),M();let P=i.eventHandlers?.clickCenter;P&&C.insert(`circle`,`:first-child`).attr(`r`,g).attr(`fill`,`transparent`).style(`cursor`,`pointer`).on(`click`,P);let F=!1,I;function L(e,t){let n=t.data;if(n.participantName){let{messageLines:e,opponentData:r}=XL(n,t);r&&(n.opponent=r),A.selectAll(`tspan`).remove(),A.text(``),A.selectAll(`tspan`).data(e).join(`tspan`).attr(`x`,a/2).attr(`dy`,(e,t)=>t===0?0:u).text(e=>e);let i=ZL(e.length,u);A.attr(`y`,o/2+i),A.style(`display`,`block`),j.style(`display`,`none`)}F?n.participantName?.toLowerCase()!==I?.toLowerCase()&&uA(e.currentTarget).attr(RL,.9):C.selectAll(`path`).attr(RL,e=>e.data.participantName===t.data.participantName?.9:.3);let r=_(30),i=g-r-10,s={flagsGroup:w,winningFlagsGroup:T,losingFlagsGroup:E};eR(T,s,n.nationalityCode,-1,!0,i,r),n.opponent&&eR(E,s,n.opponent.nationalityCode,1,!1,i,r)}function R(e,t){if(F){let n=t.data.participantName?.toLowerCase()===I?.toLowerCase();uA(e.currentTarget).attr(RL,n?1:.2)}else C.selectAll(`path`).attr(RL,.8);N(),M()}let z=i.eventHandlers?.clickSegment;function B(e,t){if(!z)return;let n=t.data;z({participantName:n.participantName,drawPosition:n.drawPosition,seedNumber:n.seedNumber,entryStatus:n.entryStatus,nationalityCode:n.nationalityCode,scoreString:n.scoreString,matchUpStatus:n.matchUpStatus,competitiveness:n.competitiveness,roundName:n.roundName,depth:n.depth,matchUp:n.matchUp})}let ee=C.selectAll(`path`).data(b).join(`path`).attr(`d`,e=>x(e)).attr(`fill`,e=>y(e.data)).attr(RL,.8).attr(`stroke`,`var(--chc-bg-primary)`).attr(`stroke-width`,1).on(`mouseover`,L).on(`mouseout`,R);z&&ee.style(`cursor`,`pointer`).on(`click`,B),ee.append(`title`).text(e=>{let t=e.data;if(t.participantName){let e=[t.participantName,`Draw: ${t.drawPosition||`N/A`}`];return t.competitiveness&&e.push(`Competitiveness: ${t.competitiveness}`),e.join(`
163
+ 2) content: () => element.cloneNode(true)`)}var s=i.reduce(function(e,t){var n=t&&Cv(t,r);return n&&e.push(n),e},[]);return N_(e)?s[0]:s}wv.defaultProps=sv,wv.setDefaultProps=lv,wv.currentInput=W_,Object.assign({},Rh,{effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:`0`,top:`0`,margin:`0`},arrow:{position:`absolute`},reference:{}};Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow)}}),wv.setDefaultProps({render:yv});var Tv=`#000000.#434343.#666666.#999999.#b7b7b7.#cccccc.#d9d9d9.#ffffff.#980000.#ff0000.#ff9900.#ffff00.#00ff00.#00ffff.#4a86e8.#0000ff.#9900ff.#ff00ff.#e6b8af.#f4cccc.#fce5cd.#fff2cc.#d9ead3.#d0e0e3.#c9daf8.#cfe2f3.#d9d2e9.#ead1dc`.split(`.`),Ev=`notes-toolbar-recent-colors`,Dv=8;function Ov(){try{return JSON.parse(localStorage.getItem(Ev)||`[]`)}catch{return[]}}function kv(e){let t=Ov().filter(t=>t!==e);t.unshift(e),t.length>Dv&&(t=t.slice(0,Dv)),localStorage.setItem(Ev,JSON.stringify(t))}function Av(e={}){let t=document.createElement(`div`);return t.className=`notes-toolbar`,t.appendChild(Fv(e)),t.appendChild(Iv(e)),t.appendChild(Lv(e)),t.appendChild(Vv(e)),t.appendChild(Wv(e)),t.appendChild(Gv(e)),t.appendChild(qv(e)),t}function jv(e,t){for(let[n,r]of Object.entries(t)){let t=e.querySelector(`[data-action="${n}"]`);t&&t.classList.toggle(`is-active`,r)}}function Mv(e,t){let n=e.querySelector(`[data-action="heading"]`);n&&(n.value=t===!1?`0`:String(t))}function Nv(){let e=document.createElement(`div`);return e.className=`notes-toolbar-group`,e}function Pv(e,t,n,r){let i=document.createElement(`button`);return i.className=`notes-toolbar-btn`,i.dataset.action=e,i.title=n,i.type=`button`,i.innerHTML=t,r&&i.addEventListener(`click`,r),i}function Fv(e){let t=Nv(),n=document.createElement(`select`);n.dataset.action=`heading`,n.title=`Text style`;for(let e of[{value:`0`,label:`Paragraph`},{value:`1`,label:`Heading 1`},{value:`2`,label:`Heading 2`},{value:`3`,label:`Heading 3`},{value:`4`,label:`Heading 4`},{value:`5`,label:`Heading 5`},{value:`6`,label:`Heading 6`}]){let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,n.appendChild(t)}return n.addEventListener(`change`,()=>{let t=parseInt(n.value,10);e.onHeading?.(t!==0&&t)}),t.appendChild(n),t}function Iv(e){let t=Nv();return t.appendChild(Pv(`bold`,`<b>B</b>`,`Bold`,e.onBold)),t.appendChild(Pv(`italic`,`<i>I</i>`,`Italic`,e.onItalic)),t.appendChild(Pv(`underline`,`<u>U</u>`,`Underline`,e.onUnderline)),t.appendChild(Pv(`strike`,`<s>S</s>`,`Strikethrough`,e.onStrike)),t}function Lv(e){let t=Nv();return t.appendChild(Rv(`color`,`A`,`Text color`,`#000000`,t=>{kv(t),e.onColor?.(t)})),t.appendChild(Rv(`background`,`A`,`Background color`,`#ffff00`,t=>{kv(t),e.onBackground?.(t)})),t}function Rv(e,t,n,r,i){let a=document.createElement(`button`);a.className=`notes-toolbar-btn notes-toolbar-color-btn`,a.dataset.action=e,a.title=n,a.type=`button`;let o=document.createElement(`span`);o.className=`notes-toolbar-color-letter`,o.textContent=t,a.appendChild(o);let s=document.createElement(`span`);s.className=`notes-toolbar-color-bar`,s.style.backgroundColor=r,a.appendChild(s);let c;return a.addEventListener(`click`,()=>{if(c){c.destroy(),c=void 0;return}let e=zv(r,e=>{s.style.backgroundColor=e,i(e),c?.destroy(),c=void 0});c=wv(a,{content:e,theme:`light-border`,trigger:`manual`,interactive:!0,placement:`bottom-start`,onHidden:()=>{c?.destroy(),c=void 0}}),c.show()}),a}function zv(e,t){let n=document.createElement(`div`);n.className=`notes-color-panel`;let r=document.createElement(`div`);r.className=`notes-color-swatches`;for(let n of Tv)r.appendChild(Bv(n,n===e,t));n.appendChild(r);let i=Ov();if(i.length){let r=document.createElement(`div`);r.className=`notes-color-section-label`,r.textContent=`Recent`,n.appendChild(r);let a=document.createElement(`div`);a.className=`notes-color-swatches`;for(let n of i)a.appendChild(Bv(n,n===e,t));n.appendChild(a)}let a=document.createElement(`div`);a.className=`notes-color-custom-row`;let o=document.createElement(`input`);o.type=`color`,o.value=e,o.className=`notes-color-custom-input`;let s=document.createElement(`label`);return s.className=`notes-color-custom-label`,s.textContent=`Custom...`,s.addEventListener(`click`,()=>o.click()),o.addEventListener(`input`,()=>t(o.value)),a.appendChild(o),a.appendChild(s),n.appendChild(a),n}function Bv(e,t,n){let r=document.createElement(`button`);return r.type=`button`,r.className=`notes-color-swatch`,t&&r.classList.add(`is-selected`),r.style.backgroundColor=e,(e===`#ffffff`||e===`#fff`)&&(r.style.border=`1px solid var(--chc-border-secondary)`),r.title=e,r.addEventListener(`click`,()=>n(e)),r}function Vv(e){let t=Nv();return t.appendChild(Pv(`orderedList`,Hv(16,16,`<path d="M3 2h12v2H3zm0 5h12v2H3zm0 5h12v2H3z" fill="currentColor"/><text x="0" y="4" font-size="3.5" fill="currentColor">1</text><text x="0" y="9" font-size="3.5" fill="currentColor">2</text><text x="0" y="14" font-size="3.5" fill="currentColor">3</text>`),`Ordered list`,e.onOrderedList)),t.appendChild(Pv(`bulletList`,Hv(16,16,`<circle cx="1.5" cy="3" r="1.5" fill="currentColor"/><circle cx="1.5" cy="8" r="1.5" fill="currentColor"/><circle cx="1.5" cy="13" r="1.5" fill="currentColor"/><path d="M5 2h10v2H5zm0 5h10v2H5zm0 5h10v2H5z" fill="currentColor"/>`),`Bullet list`,e.onBulletList)),t}function Hv(e,t,n){return`<svg width="${e}" height="${t}" viewBox="0 0 ${e} ${t}" xmlns="http://www.w3.org/2000/svg">${n}</svg>`}var Uv={alignLeft:Hv(16,16,`<path d="M1 2h14v2H1zm0 4h9v2H1zm0 4h14v2H1zm0 4h9v2H1z" fill="currentColor"/>`),alignCenter:Hv(16,16,`<path d="M1 2h14v2H1zm3.5 4h7v2h-7zM1 10h14v2H1zm3.5 4h7v2h-7z" fill="currentColor"/>`),alignRight:Hv(16,16,`<path d="M1 2h14v2H1zm6 4h8v2H7zM1 10h14v2H1zm6 4h8v2H7z" fill="currentColor"/>`),alignJustify:Hv(16,16,`<path d="M1 2h14v2H1zm0 4h14v2H1zm0 4h14v2H1zm0 4h14v2H1z" fill="currentColor"/>`)};function Wv(e){let t=Nv();return t.appendChild(Pv(`alignLeft`,Uv.alignLeft,`Align left`,()=>e.onAlign?.(`left`))),t.appendChild(Pv(`alignCenter`,Uv.alignCenter,`Align center`,()=>e.onAlign?.(`center`))),t.appendChild(Pv(`alignRight`,Uv.alignRight,`Align right`,()=>e.onAlign?.(`right`))),t.appendChild(Pv(`alignJustify`,Uv.alignJustify,`Justify`,()=>e.onAlign?.(`justify`))),t}function Gv(e){let t=Nv();t.appendChild(Pv(`blockquote`,`“`,`Blockquote`,e.onBlockquote)),t.appendChild(Pv(`codeBlock`,`</>`,`Code block`,e.onCodeBlock));let n=Pv(`link`,`⇗`,`Insert link`);Kv(n,`Enter URL`,`https://`,t=>e.onLink?.(t)),t.appendChild(n);let r=Pv(`video`,`▷`,`Insert video`);return Kv(r,`YouTube URL`,`https://youtube.com/...`,t=>e.onVideo?.(t)),t.appendChild(r),t}function Kv(e,t,n,r){let i;e.addEventListener(`click`,()=>{if(i){i.destroy(),i=void 0;return}let a=document.createElement(`div`);a.className=`notes-url-panel`;let o=document.createElement(`div`);o.className=`notes-url-label`,o.textContent=t,a.appendChild(o);let s=document.createElement(`input`);s.type=`url`,s.className=`notes-url-input`,s.placeholder=n,a.appendChild(s);let c=document.createElement(`div`);c.className=`notes-url-actions`;let l=document.createElement(`button`);l.type=`button`,l.className=`button notes-url-cancel`,l.textContent=`Cancel`,l.addEventListener(`click`,()=>{i?.destroy(),i=void 0});let u=document.createElement(`button`);u.type=`button`,u.className=`button is-info notes-url-confirm`,u.textContent=`Insert`,u.addEventListener(`click`,()=>{let e=s.value.trim();e&&r(e),i?.destroy(),i=void 0}),c.appendChild(l),c.appendChild(u),a.appendChild(c),s.addEventListener(`keydown`,e=>{e.key===`Enter`?(e.preventDefault(),u.click()):e.key===`Escape`&&l.click()}),i=wv(e,{content:a,theme:`light-border`,trigger:`manual`,interactive:!0,placement:`bottom-start`,onShown:()=>setTimeout(()=>s.focus(),0),onHidden:()=>{i?.destroy(),i=void 0}}),i.show()})}function qv(e){let t=Nv();return t.appendChild(Pv(`clearFormatting`,`⊘`,`Clear formatting`,e.onClearFormatting)),t}function Jv(e={}){let t=!1,l,u=document.createElement(`div`);u.className=`notes-editor-content`;let d={toolbar:void 0,editorElement:u,editor:void 0,getHtml:()=>d.editor&&!d.editor.isEmpty?d.editor.getHTML():``,isEmpty:()=>!d.editor||d.editor.isEmpty,destroy:()=>{t||(t=!0,l!==void 0&&cancelAnimationFrame(l),d.editor?.destroy(),d.editor=void 0)}};d.toolbar=Av({onHeading:e=>{d.editor&&(e===!1?d.editor.chain().focus().setParagraph().run():d.editor.chain().focus().toggleHeading({level:e}).run())},onBold:()=>d.editor?.chain().focus().toggleBold().run(),onItalic:()=>d.editor?.chain().focus().toggleItalic().run(),onUnderline:()=>d.editor?.chain().focus().toggleUnderline().run(),onStrike:()=>d.editor?.chain().focus().toggleStrike().run(),onColor:e=>d.editor?.chain().focus().setColor(e).run(),onBackground:e=>d.editor?.chain().focus().setHighlight({color:e}).run(),onBulletList:()=>d.editor?.chain().focus().toggleBulletList().run(),onOrderedList:()=>d.editor?.chain().focus().toggleOrderedList().run(),onAlign:e=>d.editor?.chain().focus().setTextAlign(e).run(),onBlockquote:()=>d.editor?.chain().focus().toggleBlockquote().run(),onCodeBlock:()=>d.editor?.chain().focus().toggleCodeBlock().run(),onLink:e=>d.editor?.chain().focus().setLink({href:e}).run(),onVideo:e=>d.editor?.commands.setYoutubeVideo({src:e}),onClearFormatting:()=>d.editor?.chain().focus().clearNodes().unsetAllMarks().run()});let f=()=>{if(d.editor){jv(d.toolbar,{bold:d.editor.isActive(`bold`),italic:d.editor.isActive(`italic`),underline:d.editor.isActive(`underline`),strike:d.editor.isActive(`strike`),orderedList:d.editor.isActive(`orderedList`),bulletList:d.editor.isActive(`bulletList`),blockquote:d.editor.isActive(`blockquote`),codeBlock:d.editor.isActive(`codeBlock`),alignLeft:d.editor.isActive({textAlign:`left`}),alignCenter:d.editor.isActive({textAlign:`center`}),alignRight:d.editor.isActive({textAlign:`right`}),alignJustify:d.editor.isActive({textAlign:`justify`})});for(let e=1;e<=6;e++)if(d.editor.isActive(`heading`,{level:e})){Mv(d.toolbar,e);return}Mv(d.toolbar,!1)}};return l=requestAnimationFrame(()=>{l=void 0,!t&&(d.editor=new c.Editor({element:u,extensions:[s.default,n.TextStyle,a.Color,i.default.configure({multicolor:!0}),r.default.configure({types:[`heading`,`paragraph`]}),o.default.configure({inline:!1})],content:e.initialHtml||``,onSelectionUpdate:f,onTransaction:f}))}),d}function Yv(e,t,n){if(!e)return{};let r=document.createElement(`aside`);r.classList.add(`menu`);let i={},a=e=>n&&e.close!==!1?t=>{t.stopPropagation(),n(),e.onClick()}:t=>{t.stopPropagation(),e.onClick()},o=0,s=()=>(o+=1,o),c=e=>e?.heading||e?.text||e?.label||`Item ${s()}`,l=e=>{let t=document.createElement(`li`);if(t.className=`font-medium`,e.style&&(t.style.cssText=e.style),e.onClick){let n=e.fontSize||`1em`;if(e.divider){let e=document.createElement(`hr`);e.classList.add(`dropdown-divider`),t.appendChild(e)}else{let r=document.createElement(`a`),i=e.disabled?`0.4`:`1`;r.style.cssText=`text-decoration: none; opacity: ${i}; font-size: ${n}`,e.class&&r.classList.add(e.class),e.color&&(r.style.color=e.color),e.heading&&(r.style.fontWeight=`bold`),e.disabled||(r.onclick=a(e)),r.innerHTML=c(e),t.appendChild(r)}}else t.innerHTML=c(e),e.disabled||(t.onclick=e.onClick);return t},u;for(let e of t||[])if(!e.hide){if(e.items){if(e.text){let t=document.createElement(`p`);t.className=`menu-label font-medium`,t.innerHTML=e.text,r.appendChild(t)}let t=document.createElement(`ul`);t.className=`menu-list`;for(let n of e.items)n.hide||t.appendChild(l(n));r.appendChild(t)}else if(e.type===`input`){let{field:t,inputElement:n}=Sn(e);e.focus&&(u=n),i[e.field]=n,r.appendChild(t)}else if(e.type===`divider`){let e=document.createElement(`hr`);e.classList.add(`dropdown-divider`),r.appendChild(e)}}return e.appendChild(r),{focusElement:u}}function Xv(e){return typeof e==`function`}var Zv;function Qv(e){Zv&&=(Zv?.destroy(!0),void 0),e?.remove&&e.remove()}function $v(e){let{title:t,options:n,menuItems:r=[],coords:i,callback:a,config:o}=e,{target:s,items:c}=e;if(!n?.length&&!c?.length&&!r)return;Qv();let l=document.createElement(`div`),u;return s||=i?.evt?.target,s&&(Zv=wv(s,{content:()=>{c=c?.filter(e=>!e.hide&&!e.disabled).map(e=>({...e,onClick:()=>{Qv(l),Xv(e.onClick)&&e.onClick()}}))||n?.filter(e=>!e.hide&&!e.disabled).map(e=>({text:typeof e==`object`?e.option:e,style:e.style,onClick:()=>{e.subMenu?Zv.setContent(`IMPLEMENT SUB MENU`):Xv(e.onClick)?(Qv(l),e.onClick()):Xv(a)&&a&&(Qv(l),a(typeof e==`object`?{...e,coords:i}:e))}}));let e=[{text:t,items:c},...r];return u=Yv(l,e).focusElement,l},theme:`light-border`,trigger:`click`,onShown:()=>{u&&setTimeout(()=>u?.focus(),0)},...o}),Zv.show(),Zv.setProps({interactive:!0})),Zv}var K=`court-line`;function q(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,e);for(let[e,r]of Object.entries(t))n.setAttribute(e,r);return n}function ey(e,t){let n=document.createElementNS(`http://www.w3.org/2000/svg`,`svg`);return n.setAttribute(`viewBox`,e),n.setAttribute(`class`,t),n.setAttribute(`fill`,`none`),n.style.width=`100%`,n.style.height=`auto`,n.style.display=`block`,n}function ty(e){let t=ey(`0 0 360 780`,e);for(let e of[`M 0 0 L 360 0 L 360 780 L 0 780 Z`,`M 45 0 L 45 780`,`M 315 0 L 315 780`,`M 0 390 L 360 390`,`M 45 210 L 315 210`,`M 45 570 L 315 570`,`M 180 210 L 180 570`,`M 180 0 L 180 20`,`M 180 760 L 180 780`])t.appendChild(q(`path`,{d:e,class:K}));return t}function ny(e){let t=ey(`0 0 500 470`,e),n=[q(`rect`,{x:`0`,y:`0`,width:`500`,height:`470`,class:K}),q(`circle`,{cx:`250`,cy:`470`,r:`60`,class:K}),q(`line`,{x1:`0`,y1:`470`,x2:`500`,y2:`470`,class:K}),q(`rect`,{x:`170`,y:`0`,width:`160`,height:`190`,class:K}),q(`circle`,{cx:`250`,cy:`190`,r:`60`,class:K}),q(`line`,{x1:`220`,y1:`40`,x2:`280`,y2:`40`,class:K}),q(`circle`,{cx:`250`,cy:`52`,r:`12`,class:K}),q(`path`,{d:`M 30 0 L 30 90 A 220 220 0 0 0 470 90 L 470 0`,class:K})];for(let e of n)t.appendChild(e);return t}function ry(e){let t=ey(`0 0 500 440`,e),n=[q(`path`,{d:`M 20 170 A 350 400 0 0 1 480 170`,class:K}),q(`line`,{x1:`250`,y1:`400`,x2:`20`,y2:`170`,class:K}),q(`line`,{x1:`250`,y1:`400`,x2:`480`,y2:`170`,class:K}),q(`path`,{d:`M 250 400 L 314 336 L 250 273 L 186 336 Z`,class:K}),q(`path`,{d:`M 340 355 A 100 100 0 0 1 160 355`,class:K}),q(`line`,{x1:`340`,y1:`355`,x2:`265`,y2:`405`,class:K}),q(`line`,{x1:`160`,y1:`355`,x2:`235`,y2:`405`,class:K}),q(`path`,{d:`M 235 405 A 18 18 0 0 1 265 405`,class:K}),q(`circle`,{cx:`250`,cy:`340`,r:`9`,class:K}),q(`line`,{x1:`247`,y1:`339`,x2:`253`,y2:`339`,class:K}),q(`path`,{d:`M 244 398 L 244 404 L 250 408 L 256 404 L 256 398 Z`,class:K}),q(`rect`,{x:`310`,y:`332`,width:`8`,height:`8`,transform:`rotate(45 314 336)`,class:K}),q(`rect`,{x:`246`,y:`269`,width:`8`,height:`8`,transform:`rotate(45 250 273)`,class:K}),q(`rect`,{x:`182`,y:`332`,width:`8`,height:`8`,transform:`rotate(45 186 336)`,class:K}),q(`rect`,{x:`230`,y:`393`,width:`8`,height:`18`,class:K}),q(`rect`,{x:`262`,y:`393`,width:`8`,height:`18`,class:K})];for(let e of n)t.appendChild(e);return t}function iy(e){let t=ey(`0 0 850 2000`,e),n=[q(`rect`,{x:`0`,y:`0`,width:`850`,height:`2000`,rx:`280`,ry:`280`,class:K}),q(`line`,{x1:`0`,y1:`1000`,x2:`850`,y2:`1000`,class:K}),q(`circle`,{cx:`425`,cy:`1000`,r:`60`,class:K}),q(`line`,{x1:`0`,y1:`650`,x2:`850`,y2:`650`,class:K}),q(`line`,{x1:`0`,y1:`1350`,x2:`850`,y2:`1350`,class:K}),q(`line`,{x1:`140`,y1:`300`,x2:`710`,y2:`300`,class:K}),q(`line`,{x1:`140`,y1:`1700`,x2:`710`,y2:`1700`,class:K}),q(`path`,{d:`M 395 300 A 40 40 0 0 1 455 300`,class:K}),q(`path`,{d:`M 395 1700 A 40 40 0 0 0 455 1700`,class:K}),q(`circle`,{cx:`270`,cy:`650`,r:`50`,class:K}),q(`circle`,{cx:`580`,cy:`650`,r:`50`,class:K}),q(`circle`,{cx:`270`,cy:`1350`,r:`50`,class:K}),q(`circle`,{cx:`580`,cy:`1350`,r:`50`,class:K})];for(let e of n)t.appendChild(e);return t}function ay(e){let t=ey(`0 0 200 440`,e);for(let e of[`M 0 0 L 200 0 L 200 440 L 0 440 Z`,`M 0 220 L 200 220`,`M 0 150 L 200 150`,`M 0 290 L 200 290`,`M 100 0 L 100 150`,`M 100 290 L 100 440`])t.appendChild(q(`path`,{d:e,class:K}));return t}function oy(e){let t=ey(`0 0 200 440`,e);for(let e of[`M 0 0 L 200 0 L 200 440 L 0 440 Z`,`M 18 0 L 18 440`,`M 182 0 L 182 440`,`M 0 220 L 200 220`,`M 0 146 L 200 146`,`M 0 294 L 200 294`,`M 0 30 L 200 30`,`M 0 410 L 200 410`,`M 100 146 L 100 220`,`M 100 220 L 100 294`])t.appendChild(q(`path`,{d:e,class:K}));return t}function sy(e){let t=ey(`0 0 100 200`,e);for(let e of[`M 0 0 L 100 0 L 100 200 L 0 200 Z`,`M 0 100 L 100 100`,`M 0 69.5 L 100 69.5`,`M 0 130.5 L 100 130.5`,`M 50 69.5 L 50 67.5`,`M 50 130.5 L 50 132.5`])t.appendChild(q(`path`,{d:e,class:K}));return t}var cy=`COURT_SVG`,ly={tennis:ty,basketball:ny,baseball:ry,hockey:iy,pickleball:ay,badminton:oy,padel:sy},uy={TENNIS:`tennis`,PADEL:`padel`,PICKLEBALL:`pickleball`,BADMINTON:`badminton`},dy={HAL:`basketball`,INN:`baseball`,PER:`hockey`};function fy(e){if(e){for(let[t,n]of Object.entries(dy))if(e.startsWith(t))return n;if(e.startsWith(`SET`)||e.startsWith(`T`))return e.includes(`@RALLY`)?`pickleball`:`tennis`}}function py(e){let t=e?.competitionFormat?.sport;return t&&uy[t]?uy[t]:fy(e?.matchUpFormat)}function my(e){let t=e.getAttribute(`viewBox`);if(!t)return e;let n=t.split(/\s+/).map(Number);if(n.length!==4)return e;let[r,i,a,o]=n;if(o<=a)return e;e.setAttribute(`viewBox`,`${r} ${i} ${o} ${a}`);let s=document.createElementNS(`http://www.w3.org/2000/svg`,`g`);for(s.setAttribute(`transform`,`translate(${o}, 0) rotate(90)`);e.firstChild;)s.appendChild(e.firstChild);return e.appendChild(s),e}function hy(e,t=``){let n=e?ly[e]:void 0;if(n)return my(n(t?`court--${e} ${t}`:`court--${e}`))}function gy(e){let t=[];return e.city&&t.push(e.city),(e.state||e.region)&&t.push(e.state||e.region),e.countryCode?t.push(e.countryCode):e.country&&t.push(e.country),t.join(`, `)}function _y(e){if(!e)return;let t=gy(e);return t.length?t:void 0}function vy(e){let t=e?.find(Boolean);if(!t)return;let n=t.addresses?.find(Boolean);return n?_y(n)??t.venueName:t.venueName}var yy=/^(\d{4})-(\d{2})-(\d{2})/,by=864e5;function xy(e){if(!e)return null;let t=yy.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),i=Number(t[3]);return!Number.isFinite(n)||!Number.isFinite(r)||!Number.isFinite(i)?null:{year:n,month:r,day:i}}function Sy(e,t){if(!t)return new Date(e.year,e.month-1,e.day);let n=Date.UTC(e.year,e.month-1,e.day,0,0,0,0),r=new Intl.DateTimeFormat(`en-US`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,second:`2-digit`,hourCycle:`h23`}),i=new Date(n);for(let e=0;e<2;e++){let e=r.formatToParts(i),t=t=>Number(e.find(e=>e.type===t)?.value??0),a=Date.UTC(t(`year`),t(`month`)-1,t(`day`),t(`hour`),t(`minute`),t(`second`))-i.getTime();i=new Date(n-a)}return i}function Cy(e,t){if(!t)return new Date(e.year,e.month-1,e.day+1);let n=Sy(e,t),r=new Date(n.getTime()+by),i=new Intl.DateTimeFormat(`en-US`,{timeZone:t,year:`numeric`,month:`2-digit`,day:`2-digit`}).formatToParts(r),a=e=>Number(i.find(t=>t.type===e)?.value??0);return Sy({year:a(`year`),month:a(`month`),day:a(`day`)},t)}function wy(e){if(!e)return null;let t=xy(e);if(t)return new Date(t.year,t.month-1,t.day);let n=new Date(e);return Number.isNaN(n.getTime())?null:n}function Ty(e){return e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}function Ey(e){return e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`})}function Dy(e,t){if(!e&&!t)return;let n=wy(e),r=wy(t),i=!!n&&!Number.isNaN(n.getTime()),a=!!r&&!Number.isNaN(r.getTime());if(i||a)return i&&a&&n.getTime()===r.getTime()?Ey(n):i&&a?n.getFullYear()===r.getFullYear()?`${Ty(n)} – ${Ty(r)}, ${r.getFullYear()}`:`${Ey(n)} – ${Ey(r)}`:Ey(i?n:r)}function Oy(e){return e.slice().sort((e,t)=>{let n=e.courtOrder,r=t.courtOrder;return Number.isFinite(n)&&Number.isFinite(r)&&n!==r?n-r:Number.isFinite(n)&&!Number.isFinite(r)?-1:!Number.isFinite(n)&&Number.isFinite(r)?1:e.courtName.localeCompare(t.courtName,void 0,{numeric:!0})})}var ky=`URL`;function Ay(e,t){if(!Array.isArray(e))return;let n=e.find(e=>e?.name===t&&e?.resourceType===ky);return n?.url??n?.identifier}function jy(e,t){if(Array.isArray(e))return e.find(e=>e?.resourceSubType===`COURT_SVG`&&(!t||e?.name===t))?.identifier}function My(e){if(typeof e==`number`)return Number.isFinite(e)?e:void 0;if(typeof e==`string`){let t=e.trim();if(!t)return;let n=Number(t);return Number.isFinite(n)?n:void 0}}function Ny(...e){for(let t of e){let e=My(t);if(e!==void 0)return e}}function Py(e){let t=document.createElement(`div`);if(t.className=e.cardClass,t.setAttribute(`aria-busy`,`true`),e.showImage){let n=document.createElement(`div`);n.className=e.imageClass;let r=document.createElement(`div`);r.className=e.blockClass,n.appendChild(r),t.appendChild(n)}if(e.bodyLines>0){let n=document.createElement(`div`);n.className=e.bodyClass;for(let t=0;t<e.bodyLines;t++){let r=document.createElement(`div`);r.className=e.lineClass,r.style.width=t===0?`90%`:`${60+t*10}%`,n.appendChild(r)}t.appendChild(n)}if(e.showFooter){let n=document.createElement(`div`);n.className=e.footerClass;let r=document.createElement(`div`);r.className=e.lineClass,r.style.width=`40%`,n.appendChild(r),t.appendChild(n)}return t}var Fy={showImage:!0,cornerBadges:[`status`],body:[`title`,`tier`,`location`,`dateRange`],footer:[`feeBadge`,`playerCount`]};function Iy(e){return e?{showImage:e.showImage??Fy.showImage,cornerBadges:e.cornerBadges??Fy.cornerBadges,body:e.body??Fy.body,footer:e.footer??Fy.footer}:Fy}var Ly=()=>`chc-tc-card`,Ry=()=>`chc-tc-card--clickable`,zy=()=>`chc-tc-card--offline`,By=()=>`chc-tc-image`,Vy=()=>`chc-tc-image-img`,Hy=()=>`chc-tc-image-svg`,Uy=()=>`chc-tc-image-placeholder`,Wy=()=>`chc-tc-corner-badges`,Gy=()=>`chc-tc-status-pill`,Ky=()=>`chc-tc-offline-badge`,qy=()=>`chc-tc-body`,Jy=()=>`chc-tc-title`,Yy=()=>`chc-tc-location`,Xy=()=>`chc-tc-date-range`,Zy=()=>`chc-tc-organizer`,Qy=()=>`chc-tc-updated-at`,$y=()=>`chc-tc-footer`,eb=()=>`chc-tc-fee-badge`,tb=()=>`chc-tc-player-count`,nb=()=>`chc-tc-event-count`,rb=()=>`chc-tc-tier-badge`,ib=()=>`chc-tc-card chc-tc-skeleton`,ab=()=>`chc-tc-skeleton-line`,ob=()=>`chc-tc-skeleton-block`;function sb(e,t,n){let r=Iy(t),i=document.createElement(`div`);return i.className=Ly(),i.dataset.tournamentId=e.tournamentId,e.offline&&i.classList.add(zy()),n?.onClick&&(i.classList.add(Ry()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(cb(e,r)),r.body.length&&i.appendChild(pb(e,r)),r.footer.length&&i.appendChild(xb(e,r)),i}function cb(e,t){let n=document.createElement(`div`);if(n.className=By(),e.tournamentImageURL){let t=document.createElement(`img`);t.className=Vy(),t.src=e.tournamentImageURL,t.alt=e.tournamentName||``,t.loading=`lazy`,t.addEventListener(`error`,()=>ub(n,e)),n.appendChild(t)}else lb(n,e);if(t.cornerBadges.length){let r=db(e,t.cornerBadges);r&&n.appendChild(r)}return n}function lb(e,t){let n=hy(t.courtSvgSport,Hy());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=Uy(),e.appendChild(r)}function ub(e,t){e.querySelector(`.${Vy()}`)?.remove(),lb(e,t)}function db(e,t){let n=[];for(let r of t){let t=fb(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=Wy();for(let e of n)r.appendChild(e);return r}function fb(e,t){if(e===`status`){if(!t.status)return null;let e=document.createElement(`div`);return e.className=Gy(),e.dataset.kind=t.status.kind,e.textContent=t.status.label,e}if(e===`offline`){if(!t.offline)return null;let e=document.createElement(`div`);return e.className=Ky(),e.textContent=`Offline`,e}return null}function pb(e,t){let n=document.createElement(`div`);n.className=qy();for(let r of t.body){let t=mb(r,e);t&&n.appendChild(t)}return n}function mb(e,t){switch(e){case`title`:return hb(t);case`tier`:return gb(t);case`location`:return _b(t);case`dateRange`:return vb(t);case`organizerName`:return yb(t);case`updatedAt`:return bb(t);default:return null}}function hb(e){if(!e.tournamentName)return null;let t=document.createElement(`div`);return t.className=Jy(),t.textContent=e.tournamentName,t.title=e.tournamentName,t}function gb(e){let t=e.tournamentTier?.value;if(!t)return null;let n=document.createElement(`div`);return n.className=rb(),n.textContent=t,n.title=e.tournamentTier?.system?`${e.tournamentTier.system}: ${t}`:t,n}function _b(e){if(!e.location)return null;let t=document.createElement(`div`);return t.className=Yy(),t.textContent=e.location,t.title=e.location,t}function vb(e){if(!e.dateRangeFormatted)return null;let t=document.createElement(`div`);return t.className=Xy(),t.textContent=e.dateRangeFormatted,t}function yb(e){if(!e.organizerName)return null;let t=document.createElement(`div`);return t.className=Zy(),t.textContent=e.organizerName,t}function bb(e){if(!e.updatedAt)return null;let t=document.createElement(`div`);t.className=Qy();let n=new Date(e.updatedAt);return t.textContent=Number.isNaN(n.getTime())?e.updatedAt:n.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),t}function xb(e,t){let n=document.createElement(`div`);n.className=$y();for(let r of t.footer){let t=Sb(r,e);t&&n.appendChild(t)}return n}function Sb(e,t){switch(e){case`feeBadge`:return Cb(t);case`playerCount`:return wb(t);case`eventCount`:return Tb(t);default:return null}}function Cb(e){if(!e.feeFormatted)return null;let t=document.createElement(`div`);return t.className=eb(),t.textContent=e.feeFormatted,t}function wb(e){if(typeof e.participantCount!=`number`)return null;let t=document.createElement(`div`);return t.className=tb(),t.textContent=`${e.participantCount} ${e.participantCount===1?`player`:`players`}`,t}function Tb(e){if(typeof e.eventCount!=`number`)return null;let t=document.createElement(`div`);return t.className=nb(),t.textContent=`${e.eventCount} ${e.eventCount===1?`event`:`events`}`,t}function Eb(e){let t=Iy(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:ib(),imageClass:By(),bodyClass:qy(),footerClass:$y(),blockClass:ob(),lineClass:ab()})}var Db=6048e5;function Ob(e){if(!e)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}function kb(e,t,n){return!t||!n?!1:t.getTime()<=e.getTime()&&e.getTime()<n.getTime()}function Ab(e){return`Opens ${e.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`})}`}function jb(e,t=new Date){let n=e.tournamentStatus?.toUpperCase();if(n===`CANCELLED`||n===`ABANDONDED`||n===`ABANDONED`)return{kind:`cancelled`,label:`Cancelled`};let r=e.timeZone,i=xy(e.endDate),a=i?Cy(i,r):null;if(n===`COMPLETED`||a&&t.getTime()>=a.getTime())return{kind:`completed`,label:`Completed`};let o=xy(e.startDate);if(kb(t,o?Sy(o,r):null,a))return{kind:`live`,label:`Live`};let s=Ob(e.entriesClose);if(s){let e=s.getTime()-t.getTime();if(e>0&&e<=Db)return{kind:`closing-soon`,label:`Closing Soon`}}let c=Ob(e.entriesOpen);return c&&c.getTime()>t.getTime()?{kind:`registration-opens`,label:Ab(c)}:null}var Mb=`–`,Nb={JPY:0,KRW:0,VND:0,CLP:0,ISK:0,KWD:3,BHD:3,OMR:3,JOD:3,TND:3};function Pb({amount:e,currencyCode:t,unit:n}){return n===`MAJOR`?e:e/10**(Nb[t]??2)}function Fb(e,t){try{return new Intl.NumberFormat(`en-US`,{style:`currency`,currency:t}).format(e)}catch{return`${e.toFixed(2)} ${t}`}}function Ib(e){let t=[];for(let n of e)typeof n?.amount!=`number`||Number.isNaN(n.amount)||n.currencyCode&&n.unit&&t.push({amount:n.amount,currencyCode:n.currencyCode,unit:n.unit});return t}function Lb(e){if(!e?.length)return null;let t=Ib(e);if(!t.length)return null;let n=new Map;for(let e of t){let t=`${e.currencyCode}/${e.unit}`,r=n.get(t);r?r.push(e):n.set(t,[e])}let r=[...n.values()].sort((e,t)=>t.length-e.length),i=r[0],a=i[0].currencyCode,o=i.map(Pb).sort((e,t)=>e-t),s=o[0],c=o.at(-1)??s;return r.length>1?`From ${a} ${Fb(s,a)}`:s===c?`${a} ${Fb(s,a)}`:`${a} ${Fb(s,a)} ${Mb} ${Fb(c,a)}`}var Rb=`tournamentImage`;function zb(e){let t=e?.registrationProfile?.entryFees;return Array.isArray(t)?t.filter(e=>e&&typeof e.amount==`number`):[]}function Bb(e,t){let n=e?.individualParticipantCount;return typeof n==`number`?n||void 0:t.filter(e=>(!e?.participantType||e.participantType===`INDIVIDUAL`)&&(!e?.participantRole||e.participantRole===`COMPETITOR`)).length||void 0}function Vb(e){let t=e?.timeItems;if(Array.isArray(t))return t.find(e=>e?.itemType===`TMX`)?.itemValue?.offline}function Hb(e){let{timeZone:n,error:r}=t.tournamentGovernor.getTournamentTimeZone({tournamentRecord:{localTimeZone:e?.localTimeZone||e?.timeZone,venues:Array.isArray(e?.venues)?e.venues:void 0}});return{tournamentStatus:e?.tournamentStatus,startDate:r?void 0:e?.startDate,endDate:r?void 0:e?.endDate,entriesOpen:e?.registrationProfile?.entriesOpen,entriesClose:e?.registrationProfile?.entriesClose,timeZone:n}}function Ub(e,t){let n=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,r=Array.isArray(e?.venues)?e.venues:[],i=Array.isArray(e?.participants)?e.participants:[],a=Array.isArray(e?.events)?e.events:[],o=t?.statusOverride===void 0?jb(Hb(e),t?.now):t.statusOverride,s=e?.tournamentImageURL??Ay(n,Rb),c=e?.courtSvgSport??jy(n);return{tournamentId:e?.tournamentId??``,tournamentName:e?.tournamentName??``,startDate:e?.startDate,endDate:e?.endDate,dateRangeFormatted:Dy(e?.startDate,e?.endDate),location:vy(r),tournamentImageURL:s,courtSvgSport:c,participantCount:Bb(e,i),eventCount:a.length||void 0,organizerName:e?.tournamentOrganizers?.find?.(Boolean)?.organizerName,status:o,feeFormatted:Lb(zb(e)),updatedAt:e?.updatedAt,offline:Vb(e),tournamentTier:Wb(e)}}function Wb(e){let t=e?.tournamentTier;if(!t||typeof t!=`object`||typeof t.system!=`string`||typeof t.value!=`string`)return;let n={system:t.system,value:t.value};return typeof t.numericRank==`number`&&Number.isFinite(t.numericRank)&&(n.numericRank=t.numericRank),n}var Gb={showImage:!0,showMap:!0,cornerBadges:[`primaryBadge`],body:[`title`,`address`,`courtBreakdown`],footer:[`amenityRow`]};function Kb(e){return e?{showImage:e.showImage??Gb.showImage,showMap:e.showMap??Gb.showMap,cornerBadges:e.cornerBadges??Gb.cornerBadges,body:e.body??Gb.body,footer:e.footer??Gb.footer}:Gb}var qb=()=>`chc-vc-card`,Jb=()=>`chc-vc-card--clickable`,Yb=()=>`chc-vc-image`,Xb=()=>`chc-vc-image-img`,Zb=()=>`chc-vc-image-svg`,Qb=()=>`chc-vc-image-map`,$b=()=>`chc-vc-image-placeholder`,ex=()=>`chc-vc-corner-badges`,tx=()=>`chc-vc-primary-badge`,nx=()=>`chc-vc-body`,rx=()=>`chc-vc-title`,ix=()=>`chc-vc-address`,ax=()=>`chc-vc-court-breakdown`,ox=()=>`chc-vc-footer`,sx=()=>`chc-vc-amenity-row`,cx=()=>`chc-vc-amenity`,lx=()=>`chc-vc-card chc-vc-skeleton`,ux=()=>`chc-vc-skeleton-line`,dx=()=>`chc-vc-skeleton-block`;function fx(e,t,n){let r=Kb(t),i=document.createElement(`div`);i.className=qb(),i.dataset.venueId=e.venueId;let a=null;r.showImage!==!1&&(a=gx(e,r,()=>f()),i.appendChild(a));let o=r.body.length?wx(e,r):null;o&&i.appendChild(o);let s=r.footer.length?Ox(e,r):null;s&&i.appendChild(s);function c(){return!!a?.querySelector(`iframe`)}let l=new Map;function u(e,t){if(l.has(e))return;let n=e=>{e.stopPropagation(),t()},r=e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),e.stopPropagation(),t())};e.classList.add(Jb()),e.tabIndex=0,e.addEventListener(`click`,n),e.addEventListener(`keydown`,r),l.set(e,{click:n,keydown:r})}function d(e){let t=l.get(e);t&&(e.removeEventListener(`click`,t.click),e.removeEventListener(`keydown`,t.keydown),e.classList.remove(Jb()),e.removeAttribute(`tabindex`),l.delete(e))}function f(){if(!n?.onClick)return;let t=()=>n.onClick(e);c()?(d(i),o&&u(o,t),s&&u(s,t)):(o&&d(o),s&&d(s),u(i,t))}return f(),i}function px(e){return typeof e.latitude==`number`&&typeof e.longitude==`number`}function mx(e){let t=e.latitude,n=e.longitude,r=.01,i=`https://www.openstreetmap.org/export/embed.html?bbox=${`${n-r},${t-r},${n+r},${t+r}`}&marker=${t},${n}&layer=mapnik`,a=document.createElement(`iframe`);return a.className=Qb(),a.src=i,a.loading=`lazy`,a.title=`Map of ${e.venueName}`,a}function hx(e,t){let n=hy(t.courtSvgSport,Zb());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=$b(),e.appendChild(r)}function gx(e,t,n){let r=document.createElement(`div`);if(r.className=Yb(),e.venueImageURL){let i=document.createElement(`img`);i.className=Xb(),i.src=e.venueImageURL,i.alt=e.venueName||``,i.loading=`lazy`,i.addEventListener(`error`,()=>{i.remove(),t.showMap!==!1&&px(e)?r.appendChild(mx(e)):hx(r,e),n?.()}),r.appendChild(i)}else t.showMap!==!1&&px(e)?r.appendChild(mx(e)):hx(r,e);if(t.cornerBadges.length){let n=vx(e,t.cornerBadges);n&&r.appendChild(n)}return r}function _x(e,t){if(e===`primaryBadge`){if(!t.isPrimary)return null;let e=document.createElement(`div`);return e.className=tx(),e.textContent=`Primary`,e}return null}function vx(e,t){let n=[];for(let r of t){let t=_x(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=ex();for(let e of n)r.appendChild(e);return r}function yx(e){if(!e.venueName)return null;let t=document.createElement(`div`);return t.className=rx(),t.textContent=e.venueName,t.title=e.notes?`${e.venueName}\n${e.notes}`:e.venueName,t}function bx(e){if(!e.addressFormatted)return null;let t=document.createElement(`div`);return t.className=ix(),t.textContent=e.addressFormatted,t.title=e.addressFormatted,t}function xx(e){if(!e.courtBreakdown)return null;let t=document.createElement(`div`);return t.className=ax(),t.textContent=e.courtBreakdown,t}function Sx(e){if(!e.venueAbbreviation)return null;let t=document.createElement(`div`);return t.className=ax(),t.textContent=e.venueAbbreviation,t}function Cx(e,t){return e===`title`?yx(t):e===`address`?bx(t):e===`courtBreakdown`?xx(t):e===`venueAbbreviation`?Sx(t):null}function wx(e,t){let n=document.createElement(`div`);n.className=nx();for(let r of t.body){let t=Cx(r,e);t&&n.appendChild(t)}return n}function Tx(e){let t=document.createElement(`span`);return t.className=cx(),t.textContent=e,t}function Ex(e){let t=[];if(typeof e.courtCount==`number`&&t.push(Tx(`${e.courtCount} ${e.courtCount===1?`court`:`courts`}`)),e.indoorCount&&t.push(Tx(`${e.indoorCount} indoor`)),e.outdoorCount&&t.push(Tx(`${e.outdoorCount} outdoor`)),e.floodlitCount&&t.push(Tx(`${e.floodlitCount} lit`)),!t.length)return null;let n=document.createElement(`div`);n.className=sx();for(let e of t)n.appendChild(e);return n}function Dx(e,t){return e===`amenityRow`?Ex(t):e===`address`?bx(t):e===`courtBreakdown`?xx(t):null}function Ox(e,t){let n=document.createElement(`div`);n.className=ox();for(let r of t.footer){let t=Dx(r,e);t&&n.appendChild(t)}return n}function kx(e){let t=Kb(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:lx(),imageClass:Yb(),bodyClass:nx(),footerClass:ox(),blockClass:dx(),lineClass:ux()})}var Ax=`venueImage`;function jx(e){let t=[];return e.indoorOutdoor&&t.push(e.indoorOutdoor.toLowerCase()),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),t.length?t.join(` `):`court`}function Mx(e){if(!e.length)return;let t=new Map;for(let n of e){let e=jx(n);t.set(e,(t.get(e)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]).map(([e,t])=>`${t} ${e}`).join(`, `)}function Nx(e,t){let n=0;for(let r of e)t(r)&&(n+=1);return n}function Px(e,t){let n=Array.isArray(e?.courts)?e.courts:[],r=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,i=e?.addresses?.find(e=>e);return{venueId:e?.venueId??``,venueName:e?.venueName??``,venueAbbreviation:e?.venueAbbreviation,addressFormatted:_y(i),latitude:My(i?.latitude),longitude:My(i?.longitude),courtCount:n.length||void 0,courtBreakdown:Mx(n),indoorCount:Nx(n,e=>e.indoorOutdoor===`INDOOR`)||void 0,outdoorCount:Nx(n,e=>e.indoorOutdoor===`OUTDOOR`)||void 0,floodlitCount:Nx(n,e=>!!e.floodlit)||void 0,isPrimary:!!e?.isPrimary,venueImageURL:e?.venueImageURL??Ay(r,Ax),courtSvgSport:e?.courtSvgSport??jy(r)??t?.sport,notes:e?.notes}}var Fx={showImage:!0,cornerBadges:[`indoorOutdoor`,`floodlit`],body:[`title`,`surface`],footer:[`amenityRow`]};function Ix(e){return e?{showImage:e.showImage??Fx.showImage,cornerBadges:e.cornerBadges??Fx.cornerBadges,body:e.body??Fx.body,footer:e.footer??Fx.footer}:Fx}var Lx=()=>`chc-cc-card`,Rx=()=>`chc-cc-card--clickable`,zx=()=>`chc-cc-image`,Bx=()=>`chc-cc-image-svg`,Vx=()=>`chc-cc-image-placeholder`,Hx=()=>`chc-cc-corner-badges`,Ux=()=>`chc-cc-indoor-badge`,Wx=()=>`chc-cc-floodlit-badge`,Gx=()=>`chc-cc-body`,Kx=()=>`chc-cc-title`,qx=()=>`chc-cc-surface`,Jx=()=>`chc-cc-availability`,Yx=()=>`chc-cc-abbr`,Xx=()=>`chc-cc-footer`,Zx=()=>`chc-cc-amenity-row`,Qx=()=>`chc-cc-card chc-cc-skeleton`,$x=()=>`chc-cc-skeleton-line`,eS=()=>`chc-cc-skeleton-block`;function tS(e,t,n){let r=Ix(t),i=document.createElement(`div`);return i.className=Lx(),i.dataset.courtId=e.courtId,n?.onClick&&(i.classList.add(Rx()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(rS(e,r)),r.body.length&&i.appendChild(pS(e,r)),r.footer.length&&i.appendChild(gS(e,r)),i}function nS(e,t){let n=hy(t.courtSvgSport,Bx());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=Vx(),e.appendChild(r)}function rS(e,t){let n=document.createElement(`div`);if(n.className=zx(),e.surfaceCategory&&(n.dataset.surface=e.surfaceCategory),nS(n,e),t.cornerBadges.length){let r=sS(e,t.cornerBadges);r&&n.appendChild(r)}return n}function iS(e){if(!e.indoorOutdoor)return null;let t=document.createElement(`div`);return t.className=Ux(),t.dataset.kind=e.indoorOutdoor,t.textContent=e.indoorOutdoor===`INDOOR`?`Indoor`:`Outdoor`,t}function aS(e){if(!e.floodlit)return null;let t=document.createElement(`div`);return t.className=Wx(),t.textContent=`Lit`,t}function oS(e,t){return e===`indoorOutdoor`?iS(t):e===`floodlit`?aS(t):null}function sS(e,t){let n=[];for(let r of t){let t=oS(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=Hx();for(let e of n)r.appendChild(e);return r}function cS(e){if(!e.courtName)return null;let t=document.createElement(`div`);return t.className=Kx(),t.textContent=e.courtName,t.title=e.notes?`${e.courtName}\n${e.notes}`:e.courtName,t}function lS(e){if(!e.surfaceLabel)return null;let t=document.createElement(`div`);return t.className=qx(),t.textContent=e.surfaceLabel,t}function uS(e){if(!e.availabilitySummary)return null;let t=document.createElement(`div`);return t.className=Jx(),t.textContent=e.availabilitySummary,t}function dS(e){if(!e.courtAbbreviation)return null;let t=document.createElement(`div`);return t.className=Yx(),t.textContent=e.courtAbbreviation,t}function fS(e,t){return e===`title`?cS(t):e===`surface`?lS(t):e===`availability`?uS(t):e===`abbreviation`?dS(t):null}function pS(e,t){let n=document.createElement(`div`);n.className=Gx();for(let r of t.body){let t=fS(r,e);t&&n.appendChild(t)}return n}function mS(e){let t=[];if(e.indoorOutdoor&&t.push(e.indoorOutdoor===`INDOOR`?`indoor`:`outdoor`),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),e.floodlit&&t.push(`floodlit`),!t.length)return null;let n=document.createElement(`div`);return n.className=Zx(),n.textContent=t.join(` · `),n}function hS(e,t){return e===`amenityRow`?mS(t):e===`availability`?uS(t):e===`surface`?lS(t):null}function gS(e,t){let n=document.createElement(`div`);n.className=Xx();for(let r of t.footer){let t=hS(r,e);t&&n.appendChild(t)}return n}function _S(e){let t=Ix(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:Qx(),imageClass:zx(),bodyClass:Gx(),footerClass:Xx(),blockClass:eS(),lineClass:$x()})}var vS=`INDOOR`,yS=`OUTDOOR`,bS=new Set([`HARD`,`CLAY`,`GRASS`,`ARTIFICIAL`,`CARPET`]);function xS(e){if(!e)return;let t=String(e).toUpperCase();if(t===vS)return vS;if(t===yS)return yS}function SS(e){let t=e?.surfaceCategory?String(e.surfaceCategory).toUpperCase():void 0;if(t&&bS.has(t))return t;let n=e?.surfaceType?String(e.surfaceType).toUpperCase():void 0;return n&&bS.has(n)?n:t}function CS(e,t){let n=[];return e&&n.push(e.charAt(0)+e.slice(1).toLowerCase()),t&&n.push(t.charAt(0)+t.slice(1).toLowerCase()),n.length?n.join(` · `):void 0}function wS(e,t){let n=xS(e?.indoorOutdoor),r=SS(e);return{courtId:e?.courtId??``,courtName:e?.courtName??``,courtAbbreviation:e?.courtAbbreviation,surfaceLabel:CS(n,r),indoorOutdoor:n,surfaceCategory:r,floodlit:!!e?.floodlit,courtSvgSport:t?.sport,notes:e?.notes}}var TS={grouping:`setting`,sport:`tennis`,showGroupHeadings:!0,showSummary:!0,minCardWidth:`11rem`,emptyMessage:`No courts recorded for this venue`};function ES(e){return e?{grouping:e.grouping??TS.grouping,sport:e.sport??TS.sport,showGroupHeadings:e.showGroupHeadings??TS.showGroupHeadings,showSummary:e.showSummary??TS.showSummary,minCardWidth:e.minCardWidth??TS.minCardWidth,emptyMessage:e.emptyMessage??TS.emptyMessage}:TS}var DS=()=>`chc-cl`,OS=()=>`chc-cl-summary`,kS=()=>`chc-cl-summary-count`,AS=()=>`chc-cl-group`,jS=()=>`chc-cl-group-heading`,MS=()=>`chc-cl-group-count`,NS=()=>`chc-cl-grid`,PS=()=>`chc-cl-empty`,FS=`Unspecified`,IS=`Unspecified surface`;function LS(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function RS(e){let t=typeof e.indoorOutdoor==`string`?e.indoorOutdoor.trim():``;return t?LS(t):FS}function zS(e){let t=typeof e.surfaceCategory==`string`?e.surfaceCategory.trim():``;return t?LS(t):IS}function BS(e,t){let n=Oy(e);if(t===`none`)return[{key:`all`,label:`All courts`,courts:n}];let r=e=>t===`setting`?RS(e):t===`surface`?zS(e):`${RS(e)} · ${zS(e)}`,i=new Map;for(let e of n){let t=r(e),n=i.get(t);n?n.courts.push(e):i.set(t,{key:t,label:t,courts:[e]})}return[...i.values()]}function VS(e){let t=new Map;for(let n of e){let e=RS(n),r=zS(n),i=`${e===FS?``:e.toLowerCase()} ${r===IS?``:r.toLowerCase()}`.trim()||`court`;t.set(i,(t.get(i)??0)+1)}return[...t.entries()].sort((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0])).map(([e,t])=>`${t} ${e}`).join(`, `)}function HS(e,t,n){let r=ES(t),i=e.courts??[],a=document.createElement(`div`);if(a.className=DS(),e.venueId&&(a.dataset.venueId=e.venueId),!i.length){let e=document.createElement(`div`);return e.className=PS(),e.textContent=r.emptyMessage,a.appendChild(e),a}r.showSummary&&a.appendChild(US(i));for(let e of BS(i,r.grouping))a.appendChild(WS(e,r,n));return a}function US(e){let t=document.createElement(`div`);t.className=OS();let n=document.createElement(`span`);n.className=kS(),n.textContent=`${e.length} ${e.length===1?`court`:`courts`}`;let r=document.createElement(`span`);return r.textContent=VS(e),t.append(n,r),t}function WS(e,t,n){let r=document.createElement(`div`);if(r.className=AS(),r.dataset.group=e.key,t.showGroupHeadings&&t.grouping!==`none`){let t=document.createElement(`div`);t.className=jS();let n=document.createElement(`span`);n.textContent=e.label;let i=document.createElement(`span`);i.className=MS(),i.textContent=String(e.courts.length),t.append(n,i),r.appendChild(t)}let i=document.createElement(`div`);i.className=NS(),i.style.setProperty(`--chc-cl-min-card`,t.minCardWidth);for(let r of e.courts)i.appendChild(KS(r,t,n));return r.appendChild(i),r}function GS(e){if(e===`setting`||e===`both`)return{cornerBadges:[`floodlit`]}}function KS(e,t,n){let r=wS(e,{sport:t.sport}),i=n?.onCourtClick?{onClick:()=>n.onCourtClick?.(e)}:void 0;return tS(r,GS(t.grouping),i)}var qS={tiles:{map:{tileLayer:`https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png`,attribution:`&copy; <a href="https://openstreetmap.org">OpenStreetMap</a> Contributors`,maxZoom:18},satellite:{tileLayer:`https://server.arcgisonline.com/ArcGIS/rest/services/World_Imagery/MapServer/tile/{z}/{y}/{x}`,attribution:`Tiles &copy; Esri`}},darkTileLayer:{tileLayer:`https://{s}.basemaps.cartocdn.com/dark_all/{z}/{x}/{y}{r}.png`,attribution:`&copy; <a href="https://openstreetmap.org">OpenStreetMap</a> Contributors &copy; <a href="https://carto.com/attributions">CARTO</a>`,maxZoom:20},view:`map`,showViewToggle:!0,zoom:16,height:`320px`,courtsLayout:`side`,showHeader:!0,showPopup:!0,scrollWheelZoom:!1,darkTiles:`auto`};function JS(e){return e?{tiles:e.tiles??qS.tiles,darkTileLayer:e.darkTileLayer===void 0?qS.darkTileLayer:e.darkTileLayer,view:e.view??qS.view,showViewToggle:e.showViewToggle??qS.showViewToggle,zoom:e.zoom??qS.zoom,height:e.height??qS.height,courtsLayout:e.courtsLayout??qS.courtsLayout,showHeader:e.showHeader??qS.showHeader,showPopup:e.showPopup??qS.showPopup,scrollWheelZoom:e.scrollWheelZoom??qS.scrollWheelZoom,darkTiles:e.darkTiles??qS.darkTiles}:qS}var YS=()=>`chc-vl`,XS=()=>`chc-vl-header`,ZS=()=>`chc-vl-title`,QS=()=>`chc-vl-address`,$S=()=>`chc-vl-notes`,eC=()=>`chc-vl-body`,tC=()=>`chc-vl-body--below`,nC=()=>`chc-vl-mapwrap`,rC=()=>`chc-vl-map`,iC=()=>`chc-vl-map--invertible`,aC=()=>`chc-vl-toggle`,oC=()=>`chc-vl-toggle-btn`,sC=()=>`chc-vl-fallback`,cC=()=>`chc-vl-fallback-icon`,lC=()=>`chc-vl-courts`,uC=()=>`chc-vl-courts-title`,dC=()=>`chc-vl-court-list`,fC=()=>`chc-vl-court`,pC=()=>`chc-vl-court--clickable`,mC=()=>`chc-vl-court-name`,hC=()=>`chc-vl-court-meta`,gC=()=>`chc-vl-pip`,_C=()=>`chc-vl-marker`,vC=()=>`chc-vl-popup-title`,yC=()=>`chc-vl-popup-address`,bC=`No coordinates for this venue`,xC=`Map unavailable`,SC=new WeakMap;function CC(e){return Number.isFinite(e.latitude)&&Number.isFinite(e.longitude)}function wC(e){return Oy(e)}function TC(e){let t=[];return e.indoorOutdoor&&t.push(e.indoorOutdoor.toLowerCase()),e.surfaceCategory&&t.push(e.surfaceCategory.toLowerCase()),t.join(` · `)}function EC(e,t,n){let r=JS(t),i=document.createElement(`div`);i.className=YS(),i.dataset.venueId=e.venueId;let a={disposed:!1,cleanup:()=>{}};SC.set(i,()=>{a.disposed=!0,a.cleanup()}),r.showHeader&&i.appendChild(OC(e));let o=document.createElement(`div`);o.className=r.courtsLayout===`side`?eC():`${eC()} ${tC()}`;let{wrap:s,mapEl:c}=AC(e,r,n);o.appendChild(s);let l=e.courts??[];return r.courtsLayout!==`none`&&l.length&&o.appendChild(NC(l,e,n)),i.appendChild(o),c&&CC(e)&&FC({root:i,mapEl:c,data:e,cfg:r,callbacks:n,lifetime:a}).catch(()=>void 0),i}function DC(e){let t=SC.get(e);t&&(t(),SC.delete(e))}function OC(e){let t=document.createElement(`div`);t.className=XS();let n=document.createElement(`div`);if(n.className=ZS(),n.textContent=e.venueName,t.appendChild(n),e.addressFormatted){let n=document.createElement(`div`);n.className=QS(),n.textContent=e.addressFormatted,t.appendChild(n)}if(e.notes){let n=document.createElement(`div`);n.className=$S(),n.textContent=e.notes,t.appendChild(n)}return t}function kC(e){let t=document.createElement(`div`);t.className=sC();let n=document.createElement(`div`);n.className=cC(),n.textContent=`📍`,n.setAttribute(`aria-hidden`,`true`);let r=document.createElement(`div`);return r.textContent=e,t.append(n,r),t}function AC(e,t,n){let r=document.createElement(`div`);if(r.className=nC(),r.style.height=t.height,!CC(e))return r.appendChild(kC(bC)),{wrap:r,mapEl:null};let i=document.createElement(`div`);i.className=rC(),i.appendChild(kC(``)),r.appendChild(i);let a=Object.keys(t.tiles);return t.showViewToggle&&a.length>1&&r.appendChild(jC(a,t,n)),{wrap:r,mapEl:i}}function jC(e,t,n){let r=document.createElement(`div`);r.className=aC(),r.dataset.viewToggle=`true`;let i=[];for(let a of e){let e=document.createElement(`button`);e.type=`button`,e.className=oC(),e.dataset.view=a,e.textContent=a===`satellite`?`Satellite`:`Map`,e.setAttribute(`aria-pressed`,String(a===t.view)),e.addEventListener(`click`,()=>{for(let t of i)t.setAttribute(`aria-pressed`,String(t===e));n?.onViewChange?.(a)}),i.push(e),r.appendChild(e)}return r}function MC(e,t,n){let r=!!n?.onCourtClick,i=document.createElement(r?`button`:`div`);i.className=r?`${fC()} ${pC()}`:fC(),i.dataset.courtId=e.courtId,r&&(i.type=`button`,i.addEventListener(`click`,()=>n?.onCourtClick?.(e,t)));let a=document.createElement(`span`);a.className=mC(),a.textContent=e.courtName;let o=document.createElement(`span`);o.className=hC();let s=TC(e);if(s&&o.append(document.createTextNode(s)),e.floodlit){let e=document.createElement(`span`);e.className=gC(),e.title=`floodlit`,o.appendChild(e)}return i.append(a,o),i}function NC(e,t,n){let r=document.createElement(`div`);r.className=lC();let i=document.createElement(`div`);i.className=uC(),i.textContent=`Courts (${e.length})`,r.appendChild(i);let a=document.createElement(`div`);a.className=dC();for(let r of wC(e))a.appendChild(MC(r,t,n));return r.appendChild(a),r}function PC(e){let t=e=>e.replace(/[&<>"]/g,e=>({"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`})[e]),n=e.addressFormatted?`<div class="${yC()}">${t(e.addressFormatted)}</div>`:``;return`<div class="${vC()}">${t(e.venueName)}</div>${n}`}async function FC({root:e,mapEl:t,data:n,cfg:r,callbacks:i,lifetime:a}){let o;try{o=await import(`leaflet`)}catch(e){if(a.disposed)return;t.replaceChildren(kC(xC)),i?.onMapUnavailable?.(Error(`leaflet is an optional peerDependency of courthive-components and is not installed`,{cause:e}));return}if(a.disposed)return;let s=o.default??o;try{t.replaceChildren();let o=s.map(t,{scrollWheelZoom:r.scrollWheelZoom,attributionControl:!0}),c,l,u=!1;a.cleanup=()=>{u||(u=!0,c?.disconnect(),l?.disconnect(),o.remove())},o.setView([n.latitude,n.longitude],r.zoom);let d=r.view,f=VC(s,o,r,d);HC(t,r,d);let p=e=>{d=e,o.removeLayer(f),f=VC(s,o,r,e),HC(t,r,e)},m=s.divIcon({className:``,html:`<div class="${_C()}"></div>`,iconSize:[14,14]}),h=s.marker([n.latitude,n.longitude],{icon:m}).addTo(o);r.showPopup&&h.bindPopup(PC(n)),h.on(`click`,()=>i?.onVenueClick?.(n)),e.querySelector(`[data-view-toggle]`)?.addEventListener(`click`,e=>{let t=e.target?.closest(`button[data-view]`);t&&p(t.dataset.view)}),RC(t),c=new ResizeObserver(()=>o.invalidateSize()),c.observe(t);let g=globalThis.document?.documentElement;if(g&&r.darkTiles!==`never`&&r.darkTileLayer){let e=zC();l=new MutationObserver(()=>{let t=zC();t!==e&&(e=t,d!==`satellite`&&p(d))}),l.observe(g,{attributes:!0,attributeFilter:[`data-theme`]})}}catch(e){if(a.cleanup(),a.disposed)return;t.replaceChildren(kC(xC)),i?.onMapUnavailable?.(Error(`Leaflet map failed to initialize`,{cause:e}))}}var IC=!1;function LC(e){return e?e!==`relative`&&e!==`absolute`:!1}function RC(e){IC||LC(globalThis.getComputedStyle?.(e)?.position)&&(IC=!0,console.warn("[courthive-components] venue-locator: leaflet's stylesheet is missing — the map will render incorrectly. Add `import 'leaflet/dist/leaflet.css';` to the host application."))}function zC(){return globalThis.document?.documentElement?.dataset.theme===`dark`}function BC(e,t,n){let r=e.tiles[t]??e.tiles.map;return t===`satellite`||e.darkTiles===`never`||!n?r:e.darkTileLayer??r}function VC(e,t,n,r){let i=BC(n,r,zC());return e.tileLayer(i.tileLayer,{attribution:i.attribution,maxZoom:i.maxZoom??19}).addTo(t)}function HC(e,t,n){let r=t.darkTiles===`auto`&&n!==`satellite`&&!t.darkTileLayer;e.classList.toggle(iC(),r)}function UC(...e){for(let t of e)if(typeof t==`number`&&Number.isFinite(t))return t}function WC(e,t){let n=typeof e?.indoorOutdoor==`string`?e.indoorOutdoor.toUpperCase():void 0;return{courtId:e?.courtId??`court-${t+1}`,courtName:e?.courtName??`Court ${t+1}`,indoorOutdoor:n===`INDOOR`||n===`OUTDOOR`?n:void 0,surfaceCategory:e?.surfaceCategory,floodlit:e?.floodlit,courtOrder:UC(e?.courtOrder),latitude:Ny(e?.latitude),longitude:Ny(e?.longitude)}}function GC(e){let t=Array.isArray(e?.courts)?e.courts:[],n=e?.addresses?.find(e=>e);return{venueId:e?.venueId??``,venueName:e?.venueName??e?.venueAbbreviation??``,venueAbbreviation:e?.venueAbbreviation,addressFormatted:_y(n),latitude:Ny(e?.latitude,n?.latitude),longitude:Ny(e?.longitude,n?.longitude),courts:t.map(WC),notes:e?.notes}}var KC=()=>`chc-team-card`,qC=()=>`chc-team-card--clickable`,JC=()=>`chc-team-card__title-row`,YC=()=>`chc-team-card__name`,XC=()=>`chc-team-card__nickname`,ZC=()=>`chc-team-card__counts`,QC=` · `;function $C(e,t){let n=document.createElement(`div`);n.className=KC(),e.teamId&&(n.dataset.teamId=e.teamId),t?.onClick&&(n.classList.add(qC()),n.tabIndex=0,n.setAttribute(`role`,`button`),n.addEventListener(`click`,n=>{n.stopPropagation(),t.onClick(e)}),n.addEventListener(`keydown`,n=>{(n.key===`Enter`||n.key===` `)&&(n.preventDefault(),n.stopPropagation(),t.onClick(e))})),n.appendChild(ew(e));let r=(e.countSegments??[]).map(e=>(e??``).trim()).filter(Boolean);return r.length&&n.appendChild(tw(r)),n}function ew(e){let t=document.createElement(`div`);t.className=JC();let n=document.createElement(`span`);if(n.className=YC(),n.textContent=e.teamName,t.appendChild(n),e.nickname){let n=document.createElement(`span`);n.className=XC(),n.textContent=`"${e.nickname}"`,t.appendChild(n)}return t}function tw(e){let t=document.createElement(`div`);return t.className=ZC(),t.textContent=e.join(QC),t}var nw=[`COMPETITIVE`,`ROUTINE`,`DECISIVE`,`WALKOVER`],rw=new Set([`WALKOVER`,`DOUBLE_WALKOVER`,`DEFAULTED`,`DOUBLE_DEFAULT`]);function iw(){return{COMPETITIVE:0,ROUTINE:0,DECISIVE:0,WALKOVER:0}}function aw(e){let t=iw();if(!Array.isArray(e))return t;for(let n of e){let e=typeof n?.getData==`function`?n.getData():n;if(!e)continue;if(e.matchUpStatus&&rw.has(e.matchUpStatus)){t.WALKOVER+=1;continue}let r=e.competitiveProfile?.competitiveness;r&&r!==`WALKOVER`&&nw.includes(r)&&(t[r]+=1)}return t}function ow(e){return nw.reduce((t,n)=>t+e[n],0)}var sw={COMPETITIVE:`Competitive`,ROUTINE:`Routine`,DECISIVE:`Decisive`,WALKOVER:`Walkover / Defaulted`};function cw(e={}){let{onSegmentClick:t}=e,n=document.createElement(`div`);n.className=`chc-cb`;let r={};for(let e of nw){let i=document.createElement(`div`);i.className=`chc-cb__seg`,i.dataset.bucket=e,t&&(i.classList.add(`is-clickable`),i.setAttribute(`role`,`button`),i.addEventListener(`click`,()=>t(e))),r[e]=i,n.appendChild(i)}return{element:n,update:e=>{let t=ow(e);if(n.style.display=t>0?`flex`:`none`,t)for(let t of nw){let n=r[t],i=e[t];i===0?(n.style.flex=`0 0 0`,n.style.padding=`0`,n.textContent=``,n.removeAttribute(`title`)):(n.style.flex=`${i} 1 0`,n.style.padding=`0 4px`,n.textContent=String(i),n.title=`${sw[t]}: ${i}`)}},setActive:e=>{n.classList.toggle(`has-active`,!!e);for(let t of nw)r[t].classList.toggle(`is-active`,t===e)}}}var lw={COMPETITIVE:`Competitive`,ROUTINE:`Routine`,DECISIVE:`Decisive`,WALKOVER:`Walkover / Defaulted`},uw=`http://www.w3.org/2000/svg`,dw=96,fw=dw/2,pw=47,mw=31;function hw(e,t){return{x:fw+t*Math.cos(e),y:fw+t*Math.sin(e)}}function gw(e,t){let n=hw(e,pw),r=hw(t,pw),i=hw(t,mw),a=hw(e,mw),o=+(t-e>Math.PI);return[`M ${n.x} ${n.y}`,`A ${pw} ${pw} 0 ${o} 1 ${r.x} ${r.y}`,`L ${i.x} ${i.y}`,`A ${mw} ${mw} 0 ${o} 0 ${a.x} ${a.y}`,`Z`].join(` `)}function _w(){let e=hw(-Math.PI/2,pw),t=hw(Math.PI/2,pw),n=hw(-Math.PI/2,mw),r=hw(Math.PI/2,mw);return[`M ${e.x} ${e.y}`,`A ${pw} ${pw} 0 1 1 ${t.x} ${t.y}`,`A ${pw} ${pw} 0 1 1 ${e.x} ${e.y}`,`L ${n.x} ${n.y}`,`A ${mw} ${mw} 0 1 0 ${r.x} ${r.y}`,`A ${mw} ${mw} 0 1 0 ${n.x} ${n.y}`,`Z`].join(` `)}function vw(){let e=document.createElement(`div`);e.className=`chc-cd`;let t=document.createElementNS(uw,`svg`);t.setAttribute(`viewBox`,`0 0 ${dw} ${dw}`),t.setAttribute(`class`,`chc-cd__svg`),t.setAttribute(`role`,`img`);let n={};for(let e of nw){let r=document.createElementNS(uw,`path`);r.setAttribute(`class`,`chc-cd__arc`),r.setAttribute(`data-bucket`,e),t.appendChild(r);let i=document.createElementNS(uw,`title`);r.appendChild(i),n[e]=r}let r=document.createElement(`div`);return r.className=`chc-cd__total`,e.appendChild(t),e.appendChild(r),{element:e,update:i=>{let a=ow(i);if(e.style.display=a>0?`inline-flex`:`none`,!a)return;let o=nw.filter(e=>i[e]>0),s=-Math.PI/2;for(let e of nw){let t=i[e],r=n[e],c=r.querySelector(`title`);if(t===0)r.removeAttribute(`d`),c&&(c.textContent=``);else{if(o.length===1)r.setAttribute(`d`,_w());else{let e=t/a,n=s+e*Math.PI*2;r.setAttribute(`d`,gw(s,n)),s=n}c&&(c.textContent=`${lw[e]}: ${t}`)}}r.textContent=String(a),t.setAttribute(`aria-label`,`Competitiveness across ${a} matches`)}}}function yw(e){let{segments:t,onSegmentClick:n}=e,r=document.createElement(`div`);r.className=`chc-sb`;let i={},a={};for(let{key:e,label:o,color:s}of t){i[e]=o;let t=document.createElement(`div`);t.className=`chc-sb__seg`,t.dataset.key=e,t.style.setProperty(`--seg-bg`,s),n&&(t.classList.add(`is-clickable`),t.setAttribute(`role`,`button`),t.addEventListener(`click`,()=>n(e))),a[e]=t,r.appendChild(t)}return{element:r,update:e=>{let n=t.reduce((t,n)=>t+(e[n.key]||0),0);if(r.style.display=n>0?`flex`:`none`,n)for(let{key:n}of t){let t=a[n],r=e[n]||0;r===0?(t.style.flex=`0 0 0`,t.style.padding=`0`,t.textContent=``,t.removeAttribute(`title`)):(t.style.flex=`${r} 1 0`,t.style.padding=`0 4px`,t.textContent=String(r),t.title=`${i[n]}: ${r}`)}},setActive:e=>{r.classList.toggle(`has-active`,!!e);for(let{key:n}of t)a[n].classList.toggle(`is-active`,n===e)}}}var bw={cornerBadges:[`status`,`publishedBadge`,`embargoBadge`],body:[`title`,`drawTypeLabel`,`matchUpProgress`],footer:[`drawSize`,`entries`,`matchUpFormat`,`flightNumber`,`ratings`],showVisualization:!1};function xw(e){return e?{cornerBadges:e.cornerBadges??bw.cornerBadges,body:e.body??bw.body,footer:e.footer??bw.footer,showVisualization:e.showVisualization??bw.showVisualization}:bw}var Sw=()=>`chc-dc-card`,Cw=()=>`chc-dc-card--clickable`,ww=()=>`chc-dc-corner-badges`,Tw=()=>`chc-dc-status-pill`,Ew=()=>`chc-dc-secondary-badge`,Dw=()=>`chc-dc-body`,Ow=()=>`chc-dc-viz`,kw=()=>`chc-dc-title-row`,Aw=()=>`chc-dc-title`,jw=()=>`chc-dc-draw-type`,Mw=()=>`chc-dc-meta`,Nw=()=>`chc-dc-footer`,Pw=()=>`chc-dc-chip`,Fw=()=>`chc-dc-progress`,Iw=()=>`chc-dc-progress-bar`,Lw=()=>`chc-dc-progress-fill`,Rw=()=>`chc-dc-card chc-dc-skeleton`,zw=()=>`chc-dc-skeleton-line`;function Bw(e,t,n){let r=xw(t),i=document.createElement(`div`);if(i.className=Sw(),i.dataset.drawId=e.drawId,e.eventId&&(i.dataset.eventId=e.eventId),n?.onClick&&(i.classList.add(Cw()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showVisualization&&e.visualization){let t=document.createElement(`div`);t.className=Ow(),t.appendChild(e.visualization),i.appendChild(t)}return(r.body.length||r.cornerBadges.length)&&i.appendChild(rT(e,r)),r.footer.length&&i.appendChild(iT(e,r)),i}function Vw(e){if(!e.status)return null;let t=document.createElement(`div`);return t.className=Tw(),t.dataset.kind=e.status.kind,t.textContent=e.status.label,t}function Hw(e){if(!e.published)return null;let t=document.createElement(`div`);return t.className=Ew(),t.dataset.kind=`published`,t.textContent=`Published`,t}function Uw(e){if(!e.embargoActive)return null;let t=document.createElement(`div`);return t.className=Ew(),t.dataset.kind=`embargo`,t.textContent=`Embargo`,t}function Ww(e,t){return e===`status`?Vw(t):e===`publishedBadge`?Hw(t):e===`embargoBadge`?Uw(t):null}function Gw(e,t){let n=[];for(let r of t){let t=Ww(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=ww();for(let e of n)r.appendChild(e);return r}function Kw(e){if(!e.drawName)return null;let t=document.createElement(`div`);return t.className=Aw(),t.textContent=e.drawName,t.title=e.drawName,t}function qw(e){if(!e.drawTypeLabel)return null;let t=document.createElement(`div`);return t.className=jw(),t.textContent=e.drawTypeLabel,t}function Jw(e){let t=document.createElement(`span`);return t.className=Pw(),t.textContent=e,t}function Yw(e){return typeof e.drawSize==`number`?Jw(`Size ${e.drawSize}`):null}function Xw(e){return typeof e.entryCount==`number`?Jw(`${e.entryCount} ${e.entryCount===1?`entry`:`entries`}`):null}function Zw(e){return e.matchUpFormat?Jw(e.matchUpFormat):null}function Qw(e){return typeof e.flightNumber==`number`?Jw(`Flight ${e.flightNumber}`):null}function $w(e){let t=[];if(typeof e.utrAvg==`number`&&t.push(`UTR ${e.utrAvg.toFixed(2)}`),typeof e.wtnAvg==`number`&&t.push(`WTN ${e.wtnAvg.toFixed(2)}`),!t.length)return null;let n=document.createElement(`div`);return n.className=Mw(),n.textContent=t.join(` · `),n}function eT(e){if(!e.matchUpCounts||e.matchUpCounts.total===0)return null;let{total:t,completed:n}=e.matchUpCounts,r=Math.round(n/t*100),i=document.createElement(`div`);i.className=Fw();let a=document.createElement(`div`);a.className=Mw(),a.textContent=`${n}/${t} matches · ${r}%`,i.appendChild(a);let o=document.createElement(`div`);o.className=Iw();let s=document.createElement(`div`);return s.className=Lw(),s.style.right=`${100-r}%`,o.appendChild(s),i.appendChild(o),i}function tT(e,t){return e===`title`?Kw(t):e===`drawTypeLabel`?qw(t):e===`drawSize`?Yw(t):e===`entries`?Xw(t):e===`matchUpFormat`?Zw(t):e===`flightNumber`?Qw(t):e===`ratings`?$w(t):e===`matchUpProgress`?eT(t):null}function nT(e,t){let n=document.createElement(`div`);n.className=kw();let r=Kw(e);r&&n.appendChild(r);let i=Gw(e,t);return i&&n.appendChild(i),n}function rT(e,t){let n=document.createElement(`div`);n.className=Dw();let r=t.body.includes(`title`),i=t.cornerBadges.length>0;if(i&&!r){let r=Gw(e,t.cornerBadges);r&&n.appendChild(r)}for(let r of t.body){if(r===`title`&&i){n.appendChild(nT(e,t.cornerBadges));continue}let a=tT(r,e);a&&n.appendChild(a)}return n}function iT(e,t){let n=document.createElement(`div`);n.className=Nw();for(let r of t.footer){let t=tT(r,e);t&&n.appendChild(t)}return n}function aT(){let e=document.createElement(`div`);e.className=Rw();let t=document.createElement(`div`);t.className=Dw();for(let e of[`70%`,`40%`,`85%`]){let n=document.createElement(`div`);n.className=zw(),n.style.width=e,t.appendChild(n)}return e.appendChild(t),e}var oT={SINGLE_ELIMINATION:`Single Elimination`,DOUBLE_ELIMINATION:`Double Elimination`,ELIMINATION:`Elimination`,ROUND_ROBIN:`Round Robin`,ROUND_ROBIN_WITH_PLAYOFF:`Round Robin + Playoff`,COMPASS:`Compass`,FEED_IN_CHAMPIONSHIP:`Feed-In Championship`,FIRST_MATCH_LOSER_CONSOLATION:`First Match Loser Consolation`,FIRST_ROUND_LOSER_CONSOLATION:`First Round Loser Consolation`,PLAY_OFF:`Play-Off`,CURTIS_CONSOLATION:`Curtis Consolation`,AD_HOC:`Ad-Hoc`,OLYMPIC:`Olympic`,LUCKY_DRAW:`Lucky Draw`,STAGGERED_ENTRY:`Staggered Entry`};function sT(e){if(e)return oT[e]?oT[e]:e.toLowerCase().split(`_`).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}function cT(e){let{matchUps:n=[]}=t.tournamentEngine.getAllDrawMatchUps({drawDefinition:e}),r=0,i=0,a=0,o=0;for(let e of n)e?.matchUpStatus!==`BYE`&&e?.matchUpStatus!==`DOUBLE_BYE`&&(r+=1,e?.winningSide?i+=1:e?.schedule?.scheduledTime&&(a+=1),e?.matchUpStatus===`IN_PROGRESS`&&(o+=1));return{total:r,completed:i,scheduled:a,inProgress:o}}function lT(e){let t=e?.drawSize;if(typeof t==`number`)return t;let n=(e?.structures?.find(e=>e?.stage===`MAIN`))?.positionAssignments?.length;return typeof n==`number`?n:void 0}function uT(e){if(e.cancelled)return{kind:`cancelled`,label:`Cancelled`};if(!e.generated)return{kind:`ungenerated`,label:`Not generated`};let t=e.matchUpCounts;return!t||t.total===0?{kind:`ready`,label:`Ready`}:t.completed===t.total?{kind:`completed`,label:`Completed`}:t.inProgress>0||t.completed>0?{kind:`in-progress`,label:`In progress`}:{kind:`ready`,label:`Ready`}}function dT(e,t){let n=Array.isArray(e?.structures)&&e.structures.length>0,r=t?.matchUpStats??(t?.lightMode||!n?void 0:cT(e)),i=e?.drawStatus===`CANCELLED`,a=t?.statusOverride===void 0?uT({generated:n,cancelled:i,matchUpCounts:r}):t.statusOverride;return{drawId:e?.drawId??``,drawName:e?.drawName??``,drawType:e?.drawType,drawTypeLabel:sT(e?.drawType),drawSize:lT(e),entryCount:t?.entryCount,matchUpFormat:e?.matchUpFormat,flightNumber:e?.flightNumber,matchUpCounts:r,generated:n,published:t?.published,embargoActive:t?.embargoActive,utrAvg:t?.utrAvg,wtnAvg:t?.wtnAvg,status:a,eventId:t?.eventId}}var fT={showImage:!0,cornerBadges:[`status`,`eventTypeBadge`,`genderBadge`],body:[`title`,`categoryLabel`,`drawSummary`],footer:[`playerCount`,`matchUpProgress`]},pT=15;function mT(e){return e?{showImage:e.showImage??fT.showImage,cornerBadges:e.cornerBadges??fT.cornerBadges,body:e.body??fT.body,footer:e.footer??fT.footer}:fT}var hT=()=>`chc-ec-card`,gT=()=>`chc-ec-card--clickable`,_T=()=>`chc-ec-image`,vT=()=>`chc-ec-image-img`,yT=()=>`chc-ec-image-svg`,bT=()=>`chc-ec-image-placeholder`,xT=()=>`chc-ec-corner-badges`,ST=()=>`chc-ec-status-pill`,CT=()=>`chc-ec-eventtype-badge`,wT=()=>`chc-ec-gender-badge`,TT=()=>`chc-ec-body`,ET=()=>`chc-ec-title`,DT=()=>`chc-ec-category`,OT=()=>`chc-ec-draw-summary`,kT=()=>`chc-ec-date-range`,AT=()=>`chc-ec-footer`,jT=()=>`chc-ec-player-count`,MT=()=>`chc-ec-progress`,NT=()=>`chc-ec-progress-meta`,PT=()=>`chc-ec-progress-bar`,FT=()=>`chc-ec-progress-fill`,IT=()=>`chc-ec-updated-at`,LT=()=>`chc-ec-card chc-ec-skeleton`,RT=()=>`chc-ec-skeleton-line`,zT=()=>`chc-ec-skeleton-block`;function BT(e,t,n){let r=mT(t),i=document.createElement(`div`);return i.className=hT(),i.dataset.eventId=e.eventId,n?.onClick&&(i.classList.add(gT()),i.tabIndex=0,i.addEventListener(`click`,t=>{t.stopPropagation(),n.onClick(e)}),i.addEventListener(`keydown`,t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),t.stopPropagation(),n.onClick(e))})),r.showImage!==!1&&i.appendChild(HT(e,r)),r.body.length&&i.appendChild(nE(e,r)),r.footer.length&&i.appendChild(rE(e,r)),i}function VT(e,t){let n=hy(t.courtSvgSport,yT());if(n){e.appendChild(n);return}let r=document.createElement(`div`);r.className=bT(),e.appendChild(r)}function HT(e,t){let n=document.createElement(`div`);if(n.className=_T(),e.eventImageURL){let t=document.createElement(`img`);t.className=vT(),t.src=e.eventImageURL,t.alt=e.eventName||``,t.loading=`lazy`,t.addEventListener(`error`,()=>{t.remove(),VT(n,e)}),n.appendChild(t)}else VT(n,e);if(t.cornerBadges.length){let r=qT(e,t.cornerBadges);r&&n.appendChild(r)}return n}function UT(e){if(!e.status)return null;let t=document.createElement(`div`);return t.className=ST(),t.dataset.kind=e.status.kind,t.textContent=e.status.label,t}function WT(e){if(!e.eventType)return null;let t=document.createElement(`div`);return t.className=CT(),t.dataset.kind=e.eventType,t.textContent=e.eventType,t}function GT(e){if(!e.gender)return null;let t=document.createElement(`div`);return t.className=wT(),t.dataset.kind=e.gender,t.textContent=e.gender===`MALE`?`M`:e.gender===`FEMALE`?`W`:`X`,t}function KT(e,t){return e===`status`?UT(t):e===`eventTypeBadge`?WT(t):e===`genderBadge`?GT(t):null}function qT(e,t){let n=[];for(let r of t){let t=KT(r,e);t&&n.push(t)}if(!n.length)return null;let r=document.createElement(`div`);r.className=xT();for(let e of n)r.appendChild(e);return r}function JT(e){if(!e.eventName)return null;let t=document.createElement(`div`);return t.className=ET(),t.textContent=e.eventName,t.title=e.eventName,t}function YT(e){if(!e.categoryLabel)return null;let t=document.createElement(`div`);return t.className=DT(),t.textContent=e.categoryLabel,t}function XT(e){if(!e.drawSummary)return null;let t=document.createElement(`div`);return t.className=OT(),t.textContent=e.drawSummary,t}function ZT(e){if(!e.dateRangeFormatted)return null;let t=document.createElement(`div`);return t.className=kT(),t.textContent=e.dateRangeFormatted,t}function QT(e){if(!e.updatedAt)return null;let t=document.createElement(`div`);t.className=IT();let n=new Date(e.updatedAt);return t.textContent=Number.isNaN(n.getTime())?e.updatedAt:n.toLocaleDateString(`en-US`,{month:`short`,day:`numeric`,year:`numeric`}),t}function $T(e){if(typeof e.entryCount!=`number`)return null;let t=document.createElement(`div`);return t.className=jT(),t.textContent=`${e.entryCount} ${e.entryCount===1?`player`:`players`}`,t}function eE(e){if(!e.matchUpCounts||e.matchUpCounts.total===0)return null;let{total:t,completed:n}=e.matchUpCounts,r=Math.round(n/t*100),i=document.createElement(`div`);i.className=MT();let a=document.createElement(`div`);a.className=NT(),a.textContent=`${n}/${t} matches · ${r}%`,i.appendChild(a);let o=document.createElement(`div`);o.className=PT();let s=document.createElement(`div`);return s.className=FT(),s.style.right=`${100-r}%`,o.appendChild(s),i.appendChild(o),i}function tE(e,t){return e===`title`?JT(t):e===`categoryLabel`?YT(t):e===`drawSummary`?XT(t):e===`dateRange`?ZT(t):e===`updatedAt`?QT(t):e===`playerCount`?$T(t):e===`matchUpProgress`?eE(t):null}function nE(e,t){let n=document.createElement(`div`);n.className=TT();for(let r of t.body){let t=tE(r,e);t&&n.appendChild(t)}return n}function rE(e,t){let n=document.createElement(`div`);n.className=AT();for(let r of t.footer){let t=tE(r,e);t&&n.appendChild(t)}return n}function iE(e){let t=mT(e);return Py({showImage:t.showImage!==!1,bodyLines:t.body.length,showFooter:t.footer.length>0,cardClass:LT(),imageClass:_T(),bodyClass:TT(),footerClass:AT(),blockClass:zT(),lineClass:RT()})}function aE(e){if(!e)return null;let t=new Date(e);return Number.isNaN(t.getTime())?null:t}function oE(e,t,n){return!t||!n?!1:t.getTime()<=e.getTime()&&e.getTime()<=n.getTime()}function sE(e,t=new Date){if(e.allDrawsCancelled)return{kind:`cancelled`,label:`Cancelled`};let n=e.matchUpCounts;if(n&&n.total>0&&n.completed===n.total)return{kind:`completed`,label:`Completed`};let r=aE(e.startDate),i=aE(e.endDate);if(n&&(n.inProgress>0||oE(t,r,i)&&n.total>0))return{kind:`live`,label:`Live`};let a=e.drawCount??0;return a>0&&(e.hasDraftState||e.hasSeedsOnlyDraw)?{kind:`drawing`,label:`Drawing`}:a===0&&(e.entryCount??0)>0?{kind:`entries-open`,label:`Entries Open`}:r&&t.getTime()<r.getTime()?{kind:`upcoming`,label:`Upcoming`}:null}var cE=`eventImage`,lE=`DRAFT_STATE`;function uE(e){if(!e)return;let t=String(e).toUpperCase();if(t===`SINGLES`||t===`DOUBLES`||t===`TEAM`||t===`HYBRID`)return t}function dE(e){if(!e)return;let t=String(e).toUpperCase();if(t===`M`||t===`MALE`)return`MALE`;if(t===`F`||t===`FEMALE`)return`FEMALE`;if(t===`MIXED`||t===`X`)return`MIXED`}function fE(e){if(!e)return;let t=pE(e.categoryName);if(t)return t;if(typeof e.ageMin==`number`&&typeof e.ageMax==`number`)return e.ageMin===e.ageMax?`Age ${e.ageMin}`:`Age ${e.ageMin}–${e.ageMax}`;let n=pE(e.ageCategoryCode);if(n)return n;if(e.ratingMin&&e.ratingMax)return`Rating ${e.ratingMin}–${e.ratingMax}`}function pE(e){if(typeof e!=`string`)return;let t=e.trim();if(t&&!/^[-—–_]+$/.test(t))return t}function mE(e){if(!e.length)return;let t=e.find(Boolean);if(!t)return;let n=[];return typeof t.drawSize==`number`&&n.push(String(t.drawSize)),t.drawType&&n.push(String(t.drawType)),e.length>1&&n.push(`+${e.length-1}`),n.length?n.join(` `):void 0}function hE(e){let{matchUps:n=[]}=t.tournamentEngine.allEventMatchUps({event:e,inContext:!1})??{},r=0,i=0,a=0,o=0;for(let e of n)e?.matchUpStatus!==`BYE`&&e?.matchUpStatus!==`DOUBLE_BYE`&&(r+=1,e?.winningSide?i+=1:e?.schedule?.scheduledTime&&(a+=1),e?.matchUpStatus===`IN_PROGRESS`&&(o+=1));return{total:r,completed:i,scheduled:a,inProgress:o}}function gE(e){if(e?.draftState!=null)return!0;let t=e?.extensions;return Array.isArray(t)?t.some(e=>e?.name===lE):!1}function _E(e){return e.some(e=>e?.automated?.seedsOnly===!0||gE(e))}function vE(e){return e.length!==0&&e.every(e=>e?.drawStatus===`CANCELLED`)}var yE=new Set([`DIRECT_ACCEPTANCE`,`DA`,`DIRECT_CONFIRMED`,`DC`,`ACCEPTED`,`A`,`ENTERED`,`PE`,`QUALIFIER`,`Q`,`WILDCARD`,`WC`]);function bE(e){if(!e.length)return 0;let t=0;for(let n of e)yE.has(String(n?.entryStatus))&&(t+=1);return t}function xE(e,t){let n=Array.isArray(e?.drawDefinitions)?e.drawDefinitions:[],r=Array.isArray(e?.entries)?e.entries:[],i=Array.isArray(e?.onlineResources)?e.onlineResources:void 0,a=t?.matchUpStats??(t?.lightMode?void 0:hE(e)),o=t?.statusOverride===void 0?sE({allDrawsCancelled:vE(n),drawCount:n.length,entryCount:bE(r),startDate:e?.startDate,endDate:e?.endDate,matchUpCounts:a,hasDraftState:n.some(gE),hasSeedsOnlyDraw:_E(n)},t?.now):t.statusOverride;return{eventId:e?.eventId??``,eventName:e?.eventName??``,eventAbbreviation:e?.eventAbbreviation,categoryLabel:fE(e?.category),eventType:uE(e?.eventType),gender:dE(e?.gender),drawCount:n.length||void 0,drawSummary:mE(n),entryCount:bE(r)||void 0,matchUpCounts:a,startDate:e?.startDate,endDate:e?.endDate,dateRangeFormatted:Dy(e?.startDate,e?.endDate),status:o,eventImageURL:e?.eventImageURL??Ay(i,cE),courtSvgSport:e?.courtSvgSport??jy(i)??t?.sport,updatedAt:e?.updatedAt}}var SE=()=>`chc-hil-container`,CE=()=>`chc-hil-form`,wE=()=>`chc-hil-header`,TE=()=>`chc-hil-title`,EE=()=>`chc-hil-tabs`,DE=()=>`chc-hil-tab`,OE=()=>`chc-hil-tab--active`,kE=()=>`chc-hil-field`,AE=()=>`chc-hil-label`,jE=()=>`chc-hil-input`,ME=()=>`chc-hil-row`,NE=()=>`chc-hil-submit`,PE=()=>`chc-hil-message`,FE=()=>`chc-hil-message--error`,IE=()=>`chc-hil-message--success`,LE=()=>`chc-hil-switch-mode`;function RE(e){return e.replace(/\/+$/,``)}async function zE(e,t,n,r=fetch){let i=RE(e)+t,a;try{a=await r(i,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(n)})}catch(e){throw{kind:`network`,cause:e}}let o=null;try{o=await a.json()}catch(e){if(a.ok)throw{kind:`parse`,cause:e}}if(!a.ok)throw{kind:`http`,status:a.status,body:o};return o}function BE(e,t,n){return zE(e,`/auth/hiveid/signup`,t,n)}function VE(e,t,n){return zE(e,`/auth/hiveid/verify-existing`,t,n)}function HE(e,t,n){return zE(e,`/auth/hiveid/magic-link`,t,n)}function UE(e,t,n){return zE(e,`/auth/hiveid/magic-link/consume`,t,n)}function WE(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.kind!==`http`||t.status!==409?!1:t.body?.code===`EXISTING_USER`}var GE=[{value:`M`,label:`Male`},{value:`F`,label:`Female`}],KE=`signup`,qE=`login`,JE=`magic-link`,YE=[KE,qE,JE],XE=`hiveid:authenticated`,ZE={[KE]:`Sign up`,[qE]:`Log in`,[JE]:`Email link`},QE={[KE]:`Create your CourtHive identity`,[qE]:`Log in to CourtHive`,[JE]:`Email me a sign-in link`};function $E(e){if(!e?.cfsBaseUrl)throw Error(`buildHiveIDLogin: cfsBaseUrl is required`);let t=e.mode??`signup`,n=!1,r=document.createElement(`div`);r.className=SE(),r.dataset.hiveidLogin=`true`;let i=document.createElement(`div`);i.className=wE();let a=document.createElement(`h2`);a.className=TE(),i.appendChild(a);let o=document.createElement(`div`);o.className=EE(),i.appendChild(o);let s={};YE.forEach(e=>{let t=document.createElement(`button`);t.type=`button`,t.className=DE(),t.textContent=ZE[e],t.dataset.mode=e,t.onclick=()=>w(e),o.appendChild(t),s[e]=t}),r.appendChild(i);let c=document.createElement(`form`);c.className=CE(),c.noValidate=!0,r.appendChild(c);let l=document.createElement(`div`);l.className=PE(),l.hidden=!0,r.appendChild(l);function u(e,t=`info`){l.textContent=e,l.className=PE(),t===`error`&&l.classList.add(FE()),t===`success`&&l.classList.add(IE()),l.hidden=!e}function d(){u(``)}function f(e,t,n=`text`,r=``){let i=document.createElement(`div`);i.className=kE();let a=document.createElement(`label`);a.className=AE(),a.textContent=t,a.htmlFor=`chc-hil-${e}`;let o=document.createElement(`input`);return o.id=`chc-hil-${e}`,o.name=e,o.type=n,o.value=r,o.className=jE(),o.required=!0,i.appendChild(a),i.appendChild(o),c.appendChild(i),o}function p(){let e=document.createElement(`div`);return e.className=ME(),c.appendChild(e),e}function m(e){let t=document.createElement(`button`);return t.type=`submit`,t.className=NE(),t.textContent=e,c.appendChild(t),t}function h(e,t,n){let r=document.createElement(`div`);r.className=LE();let i=document.createElement(`button`);i.type=`button`,i.textContent=n,i.onclick=()=>w(t),r.append(e+` `,i),c.appendChild(r)}function g(e){if(e.note){let t=document.createElement(`p`);t.className=AE(),t.textContent=e.note,c.appendChild(t)}let t=null;if(e.providers.length>1){let n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=`Provider`,r.htmlFor=`chc-hil-fedProvider`;let i=document.createElement(`select`);i.id=`chc-hil-fedProvider`,i.className=jE(),e.providers.forEach(e=>{let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,i.appendChild(t)}),n.append(r,i),c.appendChild(n),t=i}let n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=e.idLabel??`Player ID`,r.htmlFor=`chc-hil-federationId`;let i=document.createElement(`input`);i.id=`chc-hil-federationId`,i.type=`text`,i.className=jE(),n.append(r,i),c.appendChild(n);let a=e.providers[0]?.value??``;return()=>{let e=i.value.trim();if(!e)return null;let n=t?t.value:a;return n?{provider:n,externalId:e}:null}}function _(e){if(e.note){let t=document.createElement(`p`);t.className=AE(),t.textContent=e.note,c.appendChild(t)}let t=e.required!==!1,n=document.createElement(`div`);n.className=kE();let r=document.createElement(`label`);r.className=AE(),r.textContent=e.dobLabel??`Date of birth`,r.htmlFor=`chc-hil-birthDate`;let i=document.createElement(`input`);i.id=`chc-hil-birthDate`,i.type=`date`,i.required=t,i.className=jE(),n.append(r,i),c.appendChild(n);let a=document.createElement(`div`);a.className=kE();let o=document.createElement(`label`);o.className=AE(),o.textContent=e.sexLabel??`Sex`,o.htmlFor=`chc-hil-sex`;let s=document.createElement(`select`);s.id=`chc-hil-sex`,s.required=t,s.className=jE();let l=document.createElement(`option`);return l.value=``,l.textContent=`Select…`,s.appendChild(l),(e.sexOptions??GE).forEach(e=>{let t=document.createElement(`option`);t.value=e.value,t.textContent=e.label,s.appendChild(t)}),a.append(o,s),c.appendChild(a),()=>nD({birthDate:i.value,sex:s.value})}function v(e){r.dispatchEvent(new CustomEvent(XE,{detail:e,bubbles:!0}))}function y(e,t){return async r=>{if(r.preventDefault(),!n){n=!0,e.disabled=!0,d();try{await t()}finally{n=!1,e.disabled=!1}}}}async function b(t,n,r,i={}){let a=t.value.trim(),o=n.value.trim(),s=r.value.trim();if(!a||!o||!s){u(`Email, first name, and last name are required.`,`error`);return}let{federationIds:c,birthDate:l,sex:d,provider:f,requirePii:p}=i;if(p&&(!l||!d))u(`Date of birth and sex are required.`,`error`);else try{let t=await BE(e.cfsBaseUrl,{email:a,firstName:o,lastName:s,federationIds:c,birthDate:l,sex:d,provider:f},e.fetchImpl);if(t.status===`candidate`){u(`We found possible matches — please log in with your existing account.`,`info`),w(`login`);return}v({token:t.token,refreshToken:t.refreshToken,personId:t.personId,cached:t.cached}),u(`Welcome to CourtHive.`,`success`)}catch(e){if(WE(e)){u(`That email already has a CourtHive account — please verify your password.`,`info`),w(`login`);return}u(iD(e)??`Sign-up failed. Please try again.`,`error`)}}async function x(t,n){let r=t.value.trim(),i=n.value;if(!r||!i)u(`Email and password are required.`,`error`);else try{let t=await VE(e.cfsBaseUrl,{email:r,password:i},e.fetchImpl);v({token:t.token,refreshToken:t.refreshToken,personId:t.personId,cached:t.cached??rD()}),u(`Signed in.`,`success`)}catch(e){u(iD(e)??`Sign-in failed. Please check your password.`,`error`)}}async function S(t){let n=t.value.trim();if(!n)u(`Email is required.`,`error`);else try{await HE(e.cfsBaseUrl,{email:n},e.fetchImpl),u(`If ${n} is registered, a sign-in link is on its way.`,`success`)}catch(e){u(iD(e)??`Could not send link. Please try again.`,`error`)}}function C(){if(c.replaceChildren(),a.textContent=QE[t],YE.forEach(e=>{s[e].classList.toggle(OE(),e===t)}),t===`signup`){let t=p(),n=document.createElement(`input`);n.id=`chc-hil-firstName`,n.type=`text`,n.placeholder=`First name`,n.required=!0,n.className=jE();let r=document.createElement(`input`);r.id=`chc-hil-lastName`,r.type=`text`,r.placeholder=`Last name`,r.required=!0,r.className=jE();let i=document.createElement(`div`);i.className=kE();let a=document.createElement(`label`);a.textContent=`First name`,a.className=AE(),a.htmlFor=n.id,i.append(a,n);let o=document.createElement(`div`);o.className=kE();let s=document.createElement(`label`);s.textContent=`Last name`,s.className=AE(),s.htmlFor=r.id,o.append(s,r),t.append(i,o);let l=f(`email`,`Email`,`email`,e.defaultEmail??``),u=e.federationIdCapture?g(e.federationIdCapture):()=>null,d=e.dobSexCapture?_(e.dobSexCapture):()=>({}),v=!!e.dobSexCapture&&e.dobSexCapture.required!==!1,x=m(`Create account`);c.onsubmit=y(x,()=>b(l,n,r,{federationIds:tD(u(),e.federationIds),...d(),provider:e.provider,requirePii:v})),h(`Already have an account?`,`login`,`Log in`)}else if(t===`login`){let t=f(`email`,`Email`,`email`,e.defaultEmail??``),n=f(`password`,`Password`,`password`),r=m(`Log in`);c.onsubmit=y(r,()=>x(t,n)),h(`Forgot your password?`,`magic-link`,`Email me a link`)}else{let t=f(`email`,`Email`,`email`,e.defaultEmail??``),n=m(`Send link`);c.onsubmit=y(n,()=>S(t)),h(`Have a password?`,`login`,`Log in instead`)}}function w(e){e!==t&&(t=e,d(),C())}function T(){return t}function E(e){let t=t=>e(t.detail);return r.addEventListener(XE,t),()=>r.removeEventListener(XE,t)}return C(),{root:r,setMode:w,getMode:T,onAuthenticated:E}}async function eD(e,t,n){let r=await UE(e,{code:t},n);return{token:r.token,refreshToken:r.refreshToken,personId:r.personId,cached:r.cached??rD()}}function tD(e,t){let n=[],r=new Set,i=e=>{if(!e?.provider||!e?.externalId)return;let t=`${e.provider}::${e.externalId}`;r.has(t)||(r.add(t),n.push({provider:e.provider,externalId:e.externalId}))};return(t??[]).forEach(i),i(e),n.length?n:void 0}function nD(e){let t={},n=e.birthDate?.trim(),r=e.sex?.trim();return n&&(t.birthDate=n),r&&(t.sex=r),t}function rD(){return{standardFamilyName:null,standardGivenName:null,birthDate:null,sex:null,nationalityCode:null}}function iD(e){if(!e||typeof e!=`object`)return null;if(e.kind===`http`){let t=e.body;if(t?.message&&typeof t.message==`string`)return t.message;if(typeof t?.status==`string`&&t.status===`incomplete`)return`We need a bit more information to identify you.`}return e.kind===`network`?`Could not reach CourtHive. Check your connection.`:null}var aD={name:`courthive-components`,packageManager:`pnpm@12.15.0`,version:`7.1.2`,engines:{node:`>=24`},description:`Components for competitions projects`,files:[`dist`],main:`./dist/courthive-components.umd.js`,module:`./dist/courthive-components.es.js`,types:`./dist/index.d.ts`,exports:{".":{types:`./dist/index.d.ts`,import:`./dist/courthive-components.es.js`,require:`./dist/courthive-components.umd.js`},"./dist/*":`./dist/*`,"./courts":{types:`./dist/features-types/courts/index.d.ts`,import:`./dist/courts.mjs`},"./segmented-bar":{types:`./dist/features-types/segmentedBar/index.d.ts`,import:`./dist/segmented-bar.mjs`},"./features.css":`./dist/features.css`},repository:{type:`git`,url:`git+https://github.com/CourtHive/courthive-components.git`},keywords:[`tournament`,`match`,`score`,`vanillajs`,`bracket`],author:`Charles Allen`,license:`MIT`,bugs:{url:`https://github.com/CourtHive/courthive-components/issues`},homepage:`https://courthive.github.io/courthive-component`,scripts:{commits:`git log $(git describe --tags --abbrev=0)..HEAD --oneline --no-merges --pretty=format:'%s: %h' | sed '/courthive-components/d'`,release:`npm run release:patch`,test:`vitest run --project unit`,"test:stories":`vitest run --project storybook`,"test:watch":`vitest --project unit`,"test:ui":`vitest --ui --project unit`,dev:`vite`,build:`tsc && vite build && vite build --config vite.features.config.mts && node scripts/buildFeatureTypes.mjs`,"check-types":`tsc --noEmit`,prepublishOnly:`pnpm build`,preview:`vite preview`,storybook:`storybook dev -p 6006`,"build-storybook":`storybook build`,"deploy-storybook":`gh-pages -d storybook-static`,"pre-commit":`lint-staged`,predeploy:`pnpm build-storybook`,lint:`eslint src scripts/buildFeatureTypes.mjs scripts/verify/consumerBundle.mjs --cache --max-warnings 0`,"lint:fix":`eslint src --fix --cache`,"lint:report":`eslint src & eslint --cache src -f json > eslint-report.json`,format:`prettier --write src`,"format:check":`prettier --check src`,"release:major":`npm run commits && npm version $(semver $npm_package_version -i major) && git push && git push --tags`,"release:minor":`npm run commits && npm version $(semver $npm_package_version -i minor) && git push && git push --tags`,"release:patch":`npm run commits && npm version $(semver $npm_package_version -i patch) && git push && git push --tags`,"release:beta":`npm run commits && npm version $(semver $npm_package_version -i prerelease --preid beta) && git push && git push --tags`,"patch:beta":`npm run commits && npm version $(semver $npm_package_version -i prerelease --preid beta) && npm publish --tag beta`,"verify:consumer-bundle":`node scripts/verify/consumerBundle.mjs --self-test && node scripts/verify/consumerBundle.mjs`},"lint-staged":{"*.{js,ts}":`eslint --cache --fix`,"*":`prettier --ignore-unknown --write`},devDependencies:{"@chromatic-com/storybook":`^5.0.0`,"@commitlint/cli":`21.2.4`,"@commitlint/config-conventional":`21.2.4`,"@eslint/js":`^10.0.1`,"@fortawesome/fontawesome-free":`^7.2.0`,"@storybook/addon-docs":`^10.2.17`,"@storybook/addon-vitest":`^10.6.1`,"@storybook/html-vite":`^10.2.17`,"@types/d3":`^7.4.3`,"@types/leaflet":`^1.9.12`,"@types/vanillajs-datepicker":`^1.3.5`,"@typescript-eslint/eslint-plugin":`8.72.0`,"@typescript-eslint/parser":`8.72.0`,"@vitest/browser":`^5.0.3`,"@vitest/browser-playwright":`^5.0.3`,"@vitest/coverage-v8":`^5.0.0`,"@vitest/ui":`^5.0.0`,eslint:`10.13.0`,"eslint-plugin-sonarjs":`4.2.2`,"eslint-plugin-storybook":`^10.2.17`,"gh-pages":`6.3.0`,globals:`^17.3.0`,"happy-dom":`^21.0.0`,husky:`9.1.7`,leaflet:`1.9.4`,"lint-staged":`17.6.0`,playwright:`^1.57.0`,prettier:`^3.8.1`,semver:`7.8.5`,storybook:`^10.2.17`,"tabulator-tables":`6.7.1`,"tods-competition-factory":`7.23.0`,typescript:`^6.0.2`,vite:`8.3.5`,"vite-plugin-dts":`^5.0.0`,vitest:`^5.0.0`},dependencies:{"@tiptap/core":`^3.22.2`,"@tiptap/extension-color":`^3.22.2`,"@tiptap/extension-highlight":`^3.22.2`,"@tiptap/extension-text-align":`^3.22.2`,"@tiptap/extension-text-style":`^3.22.2`,"@tiptap/extension-youtube":`^3.22.2`,"@tiptap/starter-kit":`^3.22.2`,awesomplete:`1.1.7`,"class-variance-authority":`0.7.1`,classnames:`2.5.1`,d3:`^7.9.0`,dayjs:`1.11.23`,"focus-trap":`^8.0.0`,"timepicker-ui":`^4.1.2`,"tippy.js":`6.3.7`,"vanillajs-datepicker":`1.3.4`},peerDependencies:{"tods-competition-factory":`^7.6.0`,leaflet:`^1.9.4`},peerDependenciesMeta:{leaflet:{optional:!0}}};function oD(){return aD.version}var sD={SET3_S6_TB7:`SET3-S:6/TB7`,SET3_S6_TB7_F_TB10:`SET3-S:6/TB7-F:TB10`,SET3_S6_TB10:`SET3-S:6/TB10`,SET3_S6_F_TB10:`SET3-S:6-F:TB10`,SET3_S6_TB7_NOAD:`SET3-S:6/TB7NOAD`,SET3_S8_TB7:`SET3-S:8/TB7`,SET3_S8_TB7_AT7:`SET3-S:8/TB7@7`,SET3_S4_TB7:`SET3-S:4/TB7`,SET3_S4_TB7_F_TB10:`SET3-S:4/TB7-F:TB10`,SET3_S4_TB5_AT3_F_TB10:`SET3-S:4/TB5@3-F:TB10`,SET5_S6_TB7:`SET5-S:6/TB7`,SET5_S6_TB7_F_TB10:`SET5-S:6/TB7-F:TB10`,SET1_S6_TB7:`SET1-S:6/TB7`,SET1_S6_TB10:`SET1-S:6/TB10`,SET1_S6_TB7_AT5:`SET1-S:6/TB7@5`,SET1_S8_TB7:`SET1-S:8/TB7`,SET1_S4_TB7:`SET1-S:4/TB7`,SET1_S5_TB9_AT4:`SET1-S:5/TB9@4`,SET1_S_TB7:`SET1-S:T7`,SET1_S_TB10:`SET1-S:TB10`,SET1_S_TB21:`SET1-S:T21`,SET1_S8:`SET1-S:8`,SET1_S10:`SET1-S:10`,FAST4:`SET5-S:4/NOAD`,SET3X_T10A_TB1:`SET3XA-S:T10-F:TB1`,SET3X_T10A_TB1_NOAD:`SET3XA-S:T10-F:TB1NOAD`,SET4X_T10A_TB1:`SET4XA-S:T10-F:TB1`};function cD(e,t,n){if(!e)return{elements:{}};let r={};for(let i of t||[]){if(!i?.label||i.hide)continue;let t=document.createElement(`button`);i.id&&(r[i.id]=t,t.id=i.id),t.style.marginRight=`.5em`,t.className=`button font-medium`,i.intent&&t.classList.add(i.intent),t.innerHTML=i.label,i.disabled&&(t.disabled=!0),t.onclick=e=>{e.stopPropagation(),!e.target.disabled&&U(i.onClick)&&i.onClick(),n&&U(n)&&n()},e.appendChild(t)}return{elements:r}}var lD=(e,t)=>n=>n?.trim().length>=e&&(!t||n?.trim().length<=t);function uD(e){return t.tools.isConvertableInteger(e)&&parseInt(e.toString())>=0}var dD=(e,t)=>n=>uD(n)&&Number(n)>=e&&Number(n)<=t,fD=e=>/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?\d)(?=.*?[#?!@$%^&*-]).{8,12}$/.test(e);function pD(e){return t.tools.dateTime.dateValidation.test(e)}var mD=(e,t)=>n=>{let r=(n||``).trim().split(` `).length;return r>=e&&(!t||r<=t)},hD=/^[A-Z0-9._%+-]+@[A-Z0-9.-]+\.[A-Z]{2,}$/i,gD=e=>hD.exec(e),_D=_({dateValidator:()=>pD,emailValidator:()=>gD,nameValidator:()=>lD,numericRange:()=>dD,numericValidator:()=>uD,passwordValidator:()=>fD,wordValidator:()=>mD});function vD(e){let n=t.tools.makeDeepCopy(e);return{getTournamentRecord:()=>n,mutate:(e,r,i)=>{let a=n.events?.find(e=>e.drawDefinitions?.some(e=>e.drawId===r.drawId)),o=a?.drawDefinitions?.find(e=>e.drawId===r.drawId),s={...r,tournamentRecord:n,drawDefinition:o,event:a},c=t.globalState.getProvider(),l=()=>{throw Error(`Standalone assignment cannot replace tournament state`)},u=()=>{},d={[n.tournamentId]:n};t.globalState.setStateProvider({...c,addNotice:u,callListener:u,deleteNotice:u,deleteNotices:u,disableNotifications:u,enableNotifications:u,setSubscriptions:l,cycleMutationStatus:()=>!1,getTopics:()=>({topics:[]}),getNotices:()=>[],getPayloads:()=>[],getNoticeBuffer:()=>[],setNoticeBuffer:u,getTournamentId:()=>n.tournamentId,getTournamentRecord:e=>d[e],getTournamentRecords:()=>d,setTournamentId:l,setTournamentRecord:l,setTournamentRecords:l,removeTournamentRecord:l});let f;try{f=e===`removeDrawPositionAssignment`?t.drawsGovernor.removeDrawPositionAssignment(s):t.drawsGovernor.assignDrawPosition({...s,bye:e===`assignDrawPositionBye`})}finally{t.globalState.setStateProvider(c)}i(f)}}}var yD=class{constructor({tournamentRecord:e,adapter:t,drawId:n,structureId:r,eventId:i}){if(!t&&!e)throw Error(`DrawStateManager requires a record or adapter`);this.adapter=t??vD(e),this.drawId=n,this.structureId=r,this.eventId=i}setRenderCallback(e){this.renderCallback=e}context(){let e=this.adapter.getTournamentRecord(),t=e?.events?.find(e=>this.eventId?e.eventId===this.eventId:e.drawDefinitions?.some(e=>e.drawId===this.drawId));return{tournamentRecord:e,drawDefinition:t?.drawDefinitions?.find(e=>e.drawId===this.drawId),event:t}}getAllParticipants(){let{tournamentRecord:e,drawDefinition:n,event:r}=this.context();if(!e||!r||!n)return[];let{flightProfile:i}=t.queryGovernor.getFlightProfile({event:r}),a=(i?.flights?.find(e=>e.drawId===this.drawId)?.drawEntries??n.entries??[]).map(e=>e.participantId).filter(e=>!!e);if(!a.length)return[];let{participants:o=[]}=t.queryGovernor.getParticipants({tournamentRecord:e,participantFilters:{participantIds:a}});return o}getAvailableParticipants(){let{drawDefinition:e}=this.context();if(!e)return[];let{assignedParticipantIds:n=[]}=t.queryGovernor.getAssignedParticipantIds({drawDefinition:e}),r=new Set(n);return this.getAllParticipants().filter(e=>!r.has(e.participantId))}request(e,t,n=!0){let r,i=!1;return this.adapter.mutate(e,{...t,drawId:this.drawId,structureId:this.structureId},a=>{i||(i=!0,r=a,a.success&&!a.error&&(e!==`removeDrawPositionAssignment`&&(this.focusDrawPosition=t.drawPosition+1),n&&this.renderCallback?.()))}),r??{pending:!0}}assignParticipant(e){return this.request(`assignDrawPosition`,e)}assignBye(e){return this.request(`assignDrawPositionBye`,e)}assignQualifier(e){return this.request(`assignDrawPosition`,{...e,qualifier:!0})}removeAssignment(e){let t=this.getMatchUps().some(t=>t.sides?.some(t=>t.drawPosition===e.drawPosition&&t.bye));return this.request(`removeDrawPositionAssignment`,e,t)}getAndClearFocusDrawPosition(){let e=this.focusDrawPosition;return this.focusDrawPosition=void 0,e}getMatchUps(){let{tournamentRecord:e,event:n}=this.context();if(!e||!n)return[];let{eventData:r}=t.queryGovernor.getEventData({tournamentRecord:e,event:n}),i=(r?.drawsData?.find(e=>e.drawId===this.drawId))?.structures?.find(e=>e.structureId===this.structureId);return i?.roundMatchUps?Object.values(i.roundMatchUps).flat():[]}getState(){let e=this.adapter.getTournamentRecord();return e&&t.tools.makeDeepCopy(e)}getContext(){return{drawId:this.drawId,structureId:this.structureId}}},bD=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" width="14" height="14" fill="currentColor"><path d="M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM175 175c9.4-9.4 24.6-9.4 33.9 0l47 47 47-47c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9l-47 47 47 47c9.4 9.4 9.4 24.6 0 33.9s-24.6 9.4-33.9 0l-47-47-47 47c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l47-47-47-47c-9.4-9.4-9.4-24.6 0-33.9z"/></svg>`,xD=new WeakMap;function SD(e,t){let n=document.createElement(`div`);n.style.cssText=`position: relative; flex: 1; display: flex; min-width: 0;`,e.style.paddingRight=`28px`,n.appendChild(e);let r=document.createElement(`button`);r.type=`button`,r.setAttribute(`aria-label`,`Clear search`),r.style.cssText=`position: absolute; right: 8px; top: 50%; transform: translateY(-50%); background: transparent; border: 0; padding: 2px; cursor: pointer; display: none; align-items: center; justify-content: center; line-height: 0; opacity: 0.55; color: currentColor`,r.innerHTML=bD,r.addEventListener(`mouseenter`,()=>r.style.opacity=`0.9`),r.addEventListener(`mouseleave`,()=>r.style.opacity=`0.55`),r.addEventListener(`click`,e=>{e.preventDefault(),e.stopPropagation(),t(),i()});let i=()=>{r.style.display=e.value?`inline-flex`:`none`};return e.addEventListener(`keyup`,n=>{n.key===`Escape`&&e.value&&(t(),i())}),e.addEventListener(`input`,i),xD.set(n,i),n.appendChild(r),n}function CD(e){xD.get(e)?.()}function wD(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function TD(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function ED(e){let t,n,r;e.length===2?(t=e===wD||e===TD?e:DD,n=e,r=e):(t=wD,n=(t,n)=>wD(e(t),n),r=(t,n)=>e(t)-n);function i(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<0?i=t+1:a=t}while(i<a)}return i}function a(e,r,i=0,a=e.length){if(i<a){if(t(r,r)!==0)return a;do{let t=i+a>>>1;n(e[t],r)<=0?i=t+1:a=t}while(i<a)}return i}function o(e,t,n=0,a=e.length){let o=i(e,t,n,a-1);return o>n&&r(e[o-1],t)>-r(e[o],t)?o-1:o}return{left:i,center:o,right:a}}function DD(){return 0}function OD(e){return e===null?NaN:+e}var kD=ED(wD),AD=kD.right;kD.left,ED(OD).center;function jD(e,t){let n,r;if(t===void 0)for(let t of e)t!=null&&(n===void 0?t>=t&&(n=r=t):(n>t&&(n=t),r<t&&(r=t)));else{let i=-1;for(let a of e)(a=t(a,++i,e))!=null&&(n===void 0?a>=a&&(n=r=a):(n>a&&(n=a),r<a&&(r=a)))}return[n,r]}var MD=class extends Map{constructor(e,t=ID){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:t}}),e!=null)for(let[t,n]of e)this.set(t,n)}get(e){return super.get(ND(this,e))}has(e){return super.has(ND(this,e))}set(e,t){return super.set(PD(this,e),t)}delete(e){return super.delete(FD(this,e))}};function ND({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):n}function PD({_intern:e,_key:t},n){let r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function FD({_intern:e,_key:t},n){let r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function ID(e){return typeof e==`object`&&e?e.valueOf():e}var LD=Math.sqrt(50),RD=Math.sqrt(10),zD=Math.sqrt(2);function BD(e,t,n){let r=(t-e)/Math.max(0,n),i=Math.floor(Math.log10(r)),a=r/10**i,o=a>=LD?10:a>=RD?5:a>=zD?2:1,s,c,l;return i<0?(l=10**-i/o,s=Math.round(e*l),c=Math.round(t*l),s/l<e&&++s,c/l>t&&--c,l=-l):(l=10**i*o,s=Math.round(e/l),c=Math.round(t/l),s*l<e&&++s,c*l>t&&--c),c<s&&.5<=n&&n<2?BD(e,t,n*2):[s,c,l]}function VD(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];let r=t<e,[i,a,o]=r?BD(t,e,n):BD(e,t,n);if(!(a>=i))return[];let s=a-i+1,c=Array(s);if(r){if(o<0)for(let e=0;e<s;++e)c[e]=(a-e)/-o;else for(let e=0;e<s;++e)c[e]=(a-e)*o}else if(o<0)for(let e=0;e<s;++e)c[e]=(i+e)/-o;else for(let e=0;e<s;++e)c[e]=(i+e)*o;return c}function HD(e,t,n){return t=+t,e=+e,n=+n,BD(e,t,n)[2]}function UD(e,t,n){t=+t,e=+e,n=+n;let r=t<e,i=r?HD(t,e,n):HD(e,t,n);return(r?-1:1)*(i<0?1/-i:i)}function WD(e,t){let n;if(t===void 0)for(let t of e)t!=null&&(n<t||n===void 0&&t>=t)&&(n=t);else{let r=-1;for(let i of e)(i=t(i,++r,e))!=null&&(n<i||n===void 0&&i>=i)&&(n=i)}return n}function GD(e,t,n){e=+e,t=+t,n=(i=arguments.length)<2?(t=e,e=0,1):i<3?1:+n;for(var r=-1,i=Math.max(0,Math.ceil((t-e)/n))|0,a=Array(i);++r<i;)a[r]=e+r*n;return a}function KD(e){return e}var qD=1,JD=2,YD=3,XD=4,ZD=1e-6;function QD(e){return`translate(`+e+`,0)`}function $D(e){return`translate(0,`+e+`)`}function eO(e){return t=>+e(t)}function tO(e,t){return t=Math.max(0,e.bandwidth()-t*2)/2,e.round()&&(t=Math.round(t)),n=>+e(n)+t}function nO(){return!this.__axis}function rO(e,t){var n=[],r=null,i=null,a=6,o=6,s=3,c=typeof window<`u`&&window.devicePixelRatio>1?0:.5,l=e===qD||e===XD?-1:1,u=e===XD||e===JD?`x`:`y`,d=e===qD||e===YD?QD:$D;function f(f){var p=r??(t.ticks?t.ticks.apply(t,n):t.domain()),m=i??(t.tickFormat?t.tickFormat.apply(t,n):KD),h=Math.max(a,0)+s,g=t.range(),_=+g[0]+c,v=+g[g.length-1]+c,y=(t.bandwidth?tO:eO)(t.copy(),c),b=f.selection?f.selection():f,x=b.selectAll(`.domain`).data([null]),S=b.selectAll(`.tick`).data(p,t).order(),C=S.exit(),w=S.enter().append(`g`).attr(`class`,`tick`),T=S.select(`line`),E=S.select(`text`);x=x.merge(x.enter().insert(`path`,`.tick`).attr(`class`,`domain`).attr(`stroke`,`currentColor`)),S=S.merge(w),T=T.merge(w.append(`line`).attr(`stroke`,`currentColor`).attr(u+`2`,l*a)),E=E.merge(w.append(`text`).attr(`fill`,`currentColor`).attr(u,l*h).attr(`dy`,e===qD?`0em`:e===YD?`0.71em`:`0.32em`)),f!==b&&(x=x.transition(f),S=S.transition(f),T=T.transition(f),E=E.transition(f),C=C.transition(f).attr(`opacity`,ZD).attr(`transform`,function(e){return isFinite(e=y(e))?d(e+c):this.getAttribute(`transform`)}),w.attr(`opacity`,ZD).attr(`transform`,function(e){var t=this.parentNode.__axis;return d((t&&isFinite(t=t(e))?t:y(e))+c)})),C.remove(),x.attr(`d`,e===XD||e===JD?o?`M`+l*o+`,`+_+`H`+c+`V`+v+`H`+l*o:`M`+c+`,`+_+`V`+v:o?`M`+_+`,`+l*o+`V`+c+`H`+v+`V`+l*o:`M`+_+`,`+c+`H`+v),S.attr(`opacity`,1).attr(`transform`,function(e){return d(y(e)+c)}),T.attr(u+`2`,l*a),E.attr(u,l*h).text(m),b.filter(nO).attr(`fill`,`none`).attr(`font-size`,10).attr(`font-family`,`sans-serif`).attr(`text-anchor`,e===JD?`start`:e===XD?`end`:`middle`),b.each(function(){this.__axis=y})}return f.scale=function(e){return arguments.length?(t=e,f):t},f.ticks=function(){return n=Array.from(arguments),f},f.tickArguments=function(e){return arguments.length?(n=e==null?[]:Array.from(e),f):n.slice()},f.tickValues=function(e){return arguments.length?(r=e==null?null:Array.from(e),f):r&&r.slice()},f.tickFormat=function(e){return arguments.length?(i=e,f):i},f.tickSize=function(e){return arguments.length?(a=o=+e,f):a},f.tickSizeInner=function(e){return arguments.length?(a=+e,f):a},f.tickSizeOuter=function(e){return arguments.length?(o=+e,f):o},f.tickPadding=function(e){return arguments.length?(s=+e,f):s},f.offset=function(e){return arguments.length?(c=+e,f):c},f}function iO(e){return rO(YD,e)}function aO(e){return rO(XD,e)}var oO={value:()=>{}};function sO(){for(var e=0,t=arguments.length,n={},r;e<t;++e){if(!(r=arguments[e]+``)||r in n||/[\s.]/.test(r))throw Error(`illegal type: `+r);n[r]=[]}return new cO(n)}function cO(e){this._=e}function lO(e,t){return e.trim().split(/^|\s+/).map(function(e){var n=``,r=e.indexOf(`.`);if(r>=0&&(n=e.slice(r+1),e=e.slice(0,r)),e&&!t.hasOwnProperty(e))throw Error(`unknown type: `+e);return{type:e,name:n}})}cO.prototype=sO.prototype={constructor:cO,on:function(e,t){var n=this._,r=lO(e+``,n),i,a=-1,o=r.length;if(arguments.length<2){for(;++a<o;)if((i=(e=r[a]).type)&&(i=uO(n[i],e.name)))return i}else{if(t!=null&&typeof t!=`function`)throw Error(`invalid callback: `+t);for(;++a<o;)if(i=(e=r[a]).type)n[i]=dO(n[i],e.name,t);else if(t==null)for(i in n)n[i]=dO(n[i],e.name,null);return this}},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new cO(e)},call:function(e,t){if((i=arguments.length-2)>0)for(var n=Array(i),r=0,i,a;r<i;++r)n[r]=arguments[r+2];if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(a=this._[e],r=0,i=a.length;r<i;++r)a[r].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw Error(`unknown type: `+e);for(var r=this._[e],i=0,a=r.length;i<a;++i)r[i].value.apply(t,n)}};function uO(e,t){for(var n=0,r=e.length,i;n<r;++n)if((i=e[n]).name===t)return i.value}function dO(e,t,n){for(var r=0,i=e.length;r<i;++r)if(e[r].name===t){e[r]=oO,e=e.slice(0,r).concat(e.slice(r+1));break}return n!=null&&e.push({name:t,value:n}),e}var fO={svg:`http://www.w3.org/2000/svg`,xhtml:`http://www.w3.org/1999/xhtml`,xlink:`http://www.w3.org/1999/xlink`,xml:`http://www.w3.org/XML/1998/namespace`,xmlns:`http://www.w3.org/2000/xmlns/`};function pO(e){var t=e+=``,n=t.indexOf(`:`);return n>=0&&(t=e.slice(0,n))!==`xmlns`&&(e=e.slice(n+1)),fO.hasOwnProperty(t)?{space:fO[t],local:e}:e}function mO(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===`http://www.w3.org/1999/xhtml`&&t.documentElement.namespaceURI===`http://www.w3.org/1999/xhtml`?t.createElement(e):t.createElementNS(n,e)}}function hO(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function gO(e){var t=pO(e);return(t.local?hO:mO)(t)}function _O(){}function vO(e){return e==null?_O:function(){return this.querySelector(e)}}function yO(e){typeof e!=`function`&&(e=vO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=Array(o),c,l,u=0;u<o;++u)(c=a[u])&&(l=e.call(c,c.__data__,u,a))&&(`__data__`in c&&(l.__data__=c.__data__),s[u]=l);return new sA(r,this._parents)}function bO(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function xO(){return[]}function SO(e){return e==null?xO:function(){return this.querySelectorAll(e)}}function CO(e){return function(){return bO(e.apply(this,arguments))}}function wO(e){e=typeof e==`function`?CO(e):SO(e);for(var t=this._groups,n=t.length,r=[],i=[],a=0;a<n;++a)for(var o=t[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&(r.push(e.call(c,c.__data__,l,o)),i.push(c));return new sA(r,i)}function TO(e){return function(){return this.matches(e)}}function EO(e){return function(t){return t.matches(e)}}var DO=Array.prototype.find;function OO(e){return function(){return DO.call(this.children,e)}}function kO(){return this.firstElementChild}function AO(e){return this.select(e==null?kO:OO(typeof e==`function`?e:EO(e)))}var jO=Array.prototype.filter;function MO(){return Array.from(this.children)}function NO(e){return function(){return jO.call(this.children,e)}}function PO(e){return this.selectAll(e==null?MO:NO(typeof e==`function`?e:EO(e)))}function FO(e){typeof e!=`function`&&(e=TO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new sA(r,this._parents)}function IO(e){return Array(e.length)}function LO(){return new sA(this._enter||this._groups.map(IO),this._parents)}function RO(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}RO.prototype={constructor:RO,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function zO(e){return function(){return e}}function BO(e,t,n,r,i,a){for(var o=0,s,c=t.length,l=a.length;o<l;++o)(s=t[o])?(s.__data__=a[o],r[o]=s):n[o]=new RO(e,a[o]);for(;o<c;++o)(s=t[o])&&(i[o]=s)}function VO(e,t,n,r,i,a,o){var s,c,l=new Map,u=t.length,d=a.length,f=Array(u),p;for(s=0;s<u;++s)(c=t[s])&&(f[s]=p=o.call(c,c.__data__,s,t)+``,l.has(p)?i[s]=c:l.set(p,c));for(s=0;s<d;++s)p=o.call(e,a[s],s,a)+``,(c=l.get(p))?(r[s]=c,c.__data__=a[s],l.delete(p)):n[s]=new RO(e,a[s]);for(s=0;s<u;++s)(c=t[s])&&l.get(f[s])===c&&(i[s]=c)}function HO(e){return e.__data__}function UO(e,t){if(!arguments.length)return Array.from(this,HO);var n=t?VO:BO,r=this._parents,i=this._groups;typeof e!=`function`&&(e=zO(e));for(var a=i.length,o=Array(a),s=Array(a),c=Array(a),l=0;l<a;++l){var u=r[l],d=i[l],f=d.length,p=WO(e.call(u,u&&u.__data__,l,r)),m=p.length,h=s[l]=Array(m),g=o[l]=Array(m);n(u,d,h,g,c[l]=Array(f),p,t);for(var _=0,v=0,y,b;_<m;++_)if(y=h[_]){for(_>=v&&(v=_+1);!(b=g[v])&&++v<m;);y._next=b||null}}return o=new sA(o,r),o._enter=s,o._exit=c,o}function WO(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function GO(){return new sA(this._exit||this._groups.map(IO),this._parents)}function KO(e,t,n){var r=this.enter(),i=this,a=this.exit();return typeof e==`function`?(r=e(r),r&&=r.selection()):r=r.append(e+``),t!=null&&(i=t(i),i&&=i.selection()),n==null?a.remove():n(a),r&&i?r.merge(i).order():i}function qO(e){for(var t=e.selection?e.selection():e,n=this._groups,r=t._groups,i=n.length,a=r.length,o=Math.min(i,a),s=Array(i),c=0;c<o;++c)for(var l=n[c],u=r[c],d=l.length,f=s[c]=Array(d),p,m=0;m<d;++m)(p=l[m]||u[m])&&(f[m]=p);for(;c<i;++c)s[c]=n[c];return new sA(s,this._parents)}function JO(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var r=e[t],i=r.length-1,a=r[i],o;--i>=0;)(o=r[i])&&(a&&o.compareDocumentPosition(a)^4&&a.parentNode.insertBefore(o,a),a=o);return this}function YO(e){e||=XO;function t(t,n){return t&&n?e(t.__data__,n.__data__):!t-!n}for(var n=this._groups,r=n.length,i=Array(r),a=0;a<r;++a){for(var o=n[a],s=o.length,c=i[a]=Array(s),l,u=0;u<s;++u)(l=o[u])&&(c[u]=l);c.sort(t)}return new sA(i,this._parents).order()}function XO(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function ZO(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function QO(){return Array.from(this)}function $O(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length;i<a;++i){var o=r[i];if(o)return o}return null}function ek(){let e=0;for(let t of this)++e;return e}function tk(){return!this.node()}function nk(e){for(var t=this._groups,n=0,r=t.length;n<r;++n)for(var i=t[n],a=0,o=i.length,s;a<o;++a)(s=i[a])&&e.call(s,s.__data__,a,i);return this}function rk(e){return function(){this.removeAttribute(e)}}function ik(e){return function(){this.removeAttributeNS(e.space,e.local)}}function ak(e,t){return function(){this.setAttribute(e,t)}}function ok(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function sk(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function ck(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function lk(e,t){var n=pO(e);if(arguments.length<2){var r=this.node();return n.local?r.getAttributeNS(n.space,n.local):r.getAttribute(n)}return this.each((t==null?n.local?ik:rk:typeof t==`function`?n.local?ck:sk:n.local?ok:ak)(n,t))}function uk(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function dk(e){return function(){this.style.removeProperty(e)}}function fk(e,t,n){return function(){this.style.setProperty(e,t,n)}}function pk(e,t,n){return function(){var r=t.apply(this,arguments);r==null?this.style.removeProperty(e):this.style.setProperty(e,r,n)}}function mk(e,t,n){return arguments.length>1?this.each((t==null?dk:typeof t==`function`?pk:fk)(e,t,n??``)):hk(this.node(),e)}function hk(e,t){return e.style.getPropertyValue(t)||uk(e).getComputedStyle(e,null).getPropertyValue(t)}function gk(e){return function(){delete this[e]}}function _k(e,t){return function(){this[e]=t}}function vk(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function yk(e,t){return arguments.length>1?this.each((t==null?gk:typeof t==`function`?vk:_k)(e,t)):this.node()[e]}function bk(e){return e.trim().split(/^|\s+/)}function xk(e){return e.classList||new Sk(e)}function Sk(e){this._node=e,this._names=bk(e.getAttribute(`class`)||``)}Sk.prototype={add:function(e){this._names.indexOf(e)<0&&(this._names.push(e),this._node.setAttribute(`class`,this._names.join(` `)))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute(`class`,this._names.join(` `)))},contains:function(e){return this._names.indexOf(e)>=0}};function Ck(e,t){for(var n=xk(e),r=-1,i=t.length;++r<i;)n.add(t[r])}function wk(e,t){for(var n=xk(e),r=-1,i=t.length;++r<i;)n.remove(t[r])}function Tk(e){return function(){Ck(this,e)}}function Ek(e){return function(){wk(this,e)}}function Dk(e,t){return function(){(t.apply(this,arguments)?Ck:wk)(this,e)}}function Ok(e,t){var n=bk(e+``);if(arguments.length<2){for(var r=xk(this.node()),i=-1,a=n.length;++i<a;)if(!r.contains(n[i]))return!1;return!0}return this.each((typeof t==`function`?Dk:t?Tk:Ek)(n,t))}function kk(){this.textContent=``}function Ak(e){return function(){this.textContent=e}}function jk(e){return function(){var t=e.apply(this,arguments);this.textContent=t??``}}function Mk(e){return arguments.length?this.each(e==null?kk:(typeof e==`function`?jk:Ak)(e)):this.node().textContent}function Nk(){this.innerHTML=``}function Pk(e){return function(){this.innerHTML=e}}function Fk(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??``}}function Ik(e){return arguments.length?this.each(e==null?Nk:(typeof e==`function`?Fk:Pk)(e)):this.node().innerHTML}function Lk(){this.nextSibling&&this.parentNode.appendChild(this)}function Rk(){return this.each(Lk)}function zk(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function Bk(){return this.each(zk)}function Vk(e){var t=typeof e==`function`?e:gO(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function Hk(){return null}function Uk(e,t){var n=typeof e==`function`?e:gO(e),r=t==null?Hk:typeof t==`function`?t:vO(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),r.apply(this,arguments)||null)})}function Wk(){var e=this.parentNode;e&&e.removeChild(this)}function Gk(){return this.each(Wk)}function Kk(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function qk(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function Jk(e){return this.select(e?qk:Kk)}function Yk(e){return arguments.length?this.property(`__data__`,e):this.node().__data__}function Xk(e){return function(t){e.call(this,t,this.__data__)}}function Zk(e){return e.trim().split(/^|\s+/).map(function(e){var t=``,n=e.indexOf(`.`);return n>=0&&(t=e.slice(n+1),e=e.slice(0,n)),{type:e,name:t}})}function Qk(e){return function(){var t=this.__on;if(t){for(var n=0,r=-1,i=t.length,a;n<i;++n)a=t[n],(!e.type||a.type===e.type)&&a.name===e.name?this.removeEventListener(a.type,a.listener,a.options):t[++r]=a;++r?t.length=r:delete this.__on}}}function $k(e,t,n){return function(){var r=this.__on,i,a=Xk(t);if(r){for(var o=0,s=r.length;o<s;++o)if((i=r[o]).type===e.type&&i.name===e.name){this.removeEventListener(i.type,i.listener,i.options),this.addEventListener(i.type,i.listener=a,i.options=n),i.value=t;return}}this.addEventListener(e.type,a,n),i={type:e.type,name:e.name,value:t,listener:a,options:n},r?r.push(i):this.__on=[i]}}function eA(e,t,n){var r=Zk(e+``),i,a=r.length,o;if(arguments.length<2){var s=this.node().__on;if(s){for(var c=0,l=s.length,u;c<l;++c)for(i=0,u=s[c];i<a;++i)if((o=r[i]).type===u.type&&o.name===u.name)return u.value}}else{for(s=t?$k:Qk,i=0;i<a;++i)this.each(s(r[i],t,n));return this}}function tA(e,t,n){var r=uk(e),i=r.CustomEvent;typeof i==`function`?i=new i(t,n):(i=r.document.createEvent(`Event`),n?(i.initEvent(t,n.bubbles,n.cancelable),i.detail=n.detail):i.initEvent(t,!1,!1)),e.dispatchEvent(i)}function nA(e,t){return function(){return tA(this,e,t)}}function rA(e,t){return function(){return tA(this,e,t.apply(this,arguments))}}function iA(e,t){return this.each((typeof t==`function`?rA:nA)(e,t))}function*aA(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var r=e[t],i=0,a=r.length,o;i<a;++i)(o=r[i])&&(yield o)}var oA=[null];function sA(e,t){this._groups=e,this._parents=t}function cA(){return new sA([[document.documentElement]],oA)}function lA(){return this}sA.prototype=cA.prototype={constructor:sA,select:yO,selectAll:wO,selectChild:AO,selectChildren:PO,filter:FO,data:UO,enter:LO,exit:GO,join:KO,merge:qO,selection:lA,order:JO,sort:YO,call:ZO,nodes:QO,node:$O,size:ek,empty:tk,each:nk,attr:lk,style:mk,property:yk,classed:Ok,text:Mk,html:Ik,raise:Rk,lower:Bk,append:Vk,insert:Uk,remove:Gk,clone:Jk,datum:Yk,on:eA,dispatch:iA,[Symbol.iterator]:aA};function uA(e){return typeof e==`string`?new sA([[document.querySelector(e)]],[document.documentElement]):new sA([[e]],oA)}function dA(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function fA(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function pA(){}var mA=.7,hA=1/mA,gA=`\\s*([+-]?\\d+)\\s*`,_A=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*`,vA=`\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*`,yA=/^#([0-9a-f]{3,8})$/,bA=RegExp(`^rgb\\(${gA},${gA},${gA}\\)$`),xA=RegExp(`^rgb\\(${vA},${vA},${vA}\\)$`),SA=RegExp(`^rgba\\(${gA},${gA},${gA},${_A}\\)$`),CA=RegExp(`^rgba\\(${vA},${vA},${vA},${_A}\\)$`),wA=RegExp(`^hsl\\(${_A},${vA},${vA}\\)$`),TA=RegExp(`^hsla\\(${_A},${vA},${vA},${_A}\\)$`),EA={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};dA(pA,kA,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:DA,formatHex:DA,formatHex8:Cee,formatHsl:wee,formatRgb:OA,toString:OA});function DA(){return this.rgb().formatHex()}function Cee(){return this.rgb().formatHex8()}function wee(){return BA(this).formatHsl()}function OA(){return this.rgb().formatRgb()}function kA(e){var t,n;return e=(e+``).trim().toLowerCase(),(t=yA.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?AA(t):n===3?new NA(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?jA(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?jA(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=bA.exec(e))?new NA(t[1],t[2],t[3],1):(t=xA.exec(e))?new NA(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=SA.exec(e))?jA(t[1],t[2],t[3],t[4]):(t=CA.exec(e))?jA(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=wA.exec(e))?zA(t[1],t[2]/100,t[3]/100,1):(t=TA.exec(e))?zA(t[1],t[2]/100,t[3]/100,t[4]):EA.hasOwnProperty(e)?AA(EA[e]):e===`transparent`?new NA(NaN,NaN,NaN,0):null}function AA(e){return new NA(e>>16&255,e>>8&255,e&255,1)}function jA(e,t,n,r){return r<=0&&(e=t=n=NaN),new NA(e,t,n,r)}function Tee(e){return e instanceof pA||(e=kA(e)),e?(e=e.rgb(),new NA(e.r,e.g,e.b,e.opacity)):new NA}function MA(e,t,n,r){return arguments.length===1?Tee(e):new NA(e,t,n,r??1)}function NA(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}dA(NA,MA,fA(pA,{brighter(e){return e=e==null?hA:hA**+e,new NA(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?mA:mA**+e,new NA(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new NA(LA(this.r),LA(this.g),LA(this.b),IA(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:PA,formatHex:PA,formatHex8:Eee,formatRgb:FA,toString:FA}));function PA(){return`#${RA(this.r)}${RA(this.g)}${RA(this.b)}`}function Eee(){return`#${RA(this.r)}${RA(this.g)}${RA(this.b)}${RA((isNaN(this.opacity)?1:this.opacity)*255)}`}function FA(){let e=IA(this.opacity);return`${e===1?`rgb(`:`rgba(`}${LA(this.r)}, ${LA(this.g)}, ${LA(this.b)}${e===1?`)`:`, ${e})`}`}function IA(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function LA(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function RA(e){return e=LA(e),(e<16?`0`:``)+e.toString(16)}function zA(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new VA(e,t,n,r)}function BA(e){if(e instanceof VA)return new VA(e.h,e.s,e.l,e.opacity);if(e instanceof pA||(e=kA(e)),!e)return new VA;if(e instanceof VA)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,i=Math.min(t,n,r),a=Math.max(t,n,r),o=NaN,s=a-i,c=(a+i)/2;return s?(o=t===a?(n-r)/s+(n<r)*6:n===a?(r-t)/s+2:(t-n)/s+4,s/=c<.5?a+i:2-a-i,o*=60):s=c>0&&c<1?0:o,new VA(o,s,c,e.opacity)}function Dee(e,t,n,r){return arguments.length===1?BA(e):new VA(e,t,n,r??1)}function VA(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}dA(VA,Dee,fA(pA,{brighter(e){return e=e==null?hA:hA**+e,new VA(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?mA:mA**+e,new VA(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,i=2*n-r;return new NA(WA(e>=240?e-240:e+120,i,r),WA(e,i,r),WA(e<120?e+240:e-120,i,r),this.opacity)},clamp(){return new VA(HA(this.h),UA(this.s),UA(this.l),IA(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){let e=IA(this.opacity);return`${e===1?`hsl(`:`hsla(`}${HA(this.h)}, ${UA(this.s)*100}%, ${UA(this.l)*100}%${e===1?`)`:`, ${e})`}`}}));function HA(e){return e=(e||0)%360,e<0?e+360:e}function UA(e){return Math.max(0,Math.min(1,e||0))}function WA(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}var GA=e=>()=>e;function Oee(e,t){return function(n){return e+n*t}}function kee(e,t,n){return e**=+n,t=t**+n-e,n=1/n,function(r){return(e+r*t)**+n}}function Aee(e){return(e=+e)==1?KA:function(t,n){return n-t?kee(t,n,e):GA(isNaN(t)?n:t)}}function KA(e,t){var n=t-e;return n?Oee(e,n):GA(isNaN(e)?t:e)}var qA=(function e(t){var n=Aee(t);function r(e,t){var r=n((e=MA(e)).r,(t=MA(t)).r),i=n(e.g,t.g),a=n(e.b,t.b),o=KA(e.opacity,t.opacity);return function(t){return e.r=r(t),e.g=i(t),e.b=a(t),e.opacity=o(t),e+``}}return r.gamma=e,r})(1);function jee(e,t){t||=[];var n=e?Math.min(t.length,e.length):0,r=t.slice(),i;return function(a){for(i=0;i<n;++i)r[i]=e[i]*(1-a)+t[i]*a;return r}}function Mee(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function Nee(e,t){for(var n=t?t.length:0,r=e?Math.min(n,e.length):0,i=Array(r),a=Array(n),o=0;o<r;++o)i[o]=ej(e[o],t[o]);for(;o<n;++o)a[o]=t[o];return function(e){for(o=0;o<r;++o)a[o]=i[o](e);return a}}function Pee(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function JA(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function Fee(e,t){var n={},r={},i;for(i in typeof e==`object`&&e||(e={}),typeof t==`object`&&t||(t={}),t)i in e?n[i]=ej(e[i],t[i]):r[i]=t[i];return function(e){for(i in n)r[i]=n[i](e);return r}}var YA=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,XA=new RegExp(YA.source,`g`);function ZA(e){return function(){return e}}function QA(e){return function(t){return e(t)+``}}function $A(e,t){var n=YA.lastIndex=XA.lastIndex=0,r,i,a,o=-1,s=[],c=[];for(e+=``,t+=``;(r=YA.exec(e))&&(i=XA.exec(t));)(a=i.index)>n&&(a=t.slice(n,a),s[o]?s[o]+=a:s[++o]=a),(r=r[0])===(i=i[0])?s[o]?s[o]+=i:s[++o]=i:(s[++o]=null,c.push({i:o,x:JA(r,i)})),n=XA.lastIndex;return n<t.length&&(a=t.slice(n),s[o]?s[o]+=a:s[++o]=a),s.length<2?c[0]?QA(c[0].x):ZA(t):(t=c.length,function(e){for(var n=0,r;n<t;++n)s[(r=c[n]).i]=r.x(e);return s.join(``)})}function ej(e,t){var n=typeof t,r;return t==null||n===`boolean`?GA(t):(n===`number`?JA:n===`string`?(r=kA(t))?(t=r,qA):$A:t instanceof kA?qA:t instanceof Date?Pee:Mee(t)?jee:Array.isArray(t)?Nee:typeof t.valueOf!=`function`&&typeof t.toString!=`function`||isNaN(t)?Fee:JA)(e,t)}function tj(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}var nj=180/Math.PI,rj={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function ij(e,t,n,r,i,a){var o,s,c;return(o=Math.sqrt(e*e+t*t))&&(e/=o,t/=o),(c=e*n+t*r)&&(n-=e*c,r-=t*c),(s=Math.sqrt(n*n+r*r))&&(n/=s,r/=s,c/=s),e*r<t*n&&(e=-e,t=-t,c=-c,o=-o),{translateX:i,translateY:a,rotate:Math.atan2(t,e)*nj,skewX:Math.atan(c)*nj,scaleX:o,scaleY:s}}var aj;function oj(e){let t=new(typeof DOMMatrix==`function`?DOMMatrix:WebKitCSSMatrix)(e+``);return t.isIdentity?rj:ij(t.a,t.b,t.c,t.d,t.e,t.f)}function sj(e){return e==null||(aj||=document.createElementNS(`http://www.w3.org/2000/svg`,`g`),aj.setAttribute(`transform`,e),!(e=aj.transform.baseVal.consolidate()))?rj:(e=e.matrix,ij(e.a,e.b,e.c,e.d,e.e,e.f))}function cj(e,t,n,r){function i(e){return e.length?e.pop()+` `:``}function a(e,r,i,a,o,s){if(e!==i||r!==a){var c=o.push(`translate(`,null,t,null,n);s.push({i:c-4,x:JA(e,i)},{i:c-2,x:JA(r,a)})}else(i||a)&&o.push(`translate(`+i+t+a+n)}function o(e,t,n,a){e===t?t&&n.push(i(n)+`rotate(`+t+r):(e-t>180?t+=360:t-e>180&&(e+=360),a.push({i:n.push(i(n)+`rotate(`,null,r)-2,x:JA(e,t)}))}function s(e,t,n,a){e===t?t&&n.push(i(n)+`skewX(`+t+r):a.push({i:n.push(i(n)+`skewX(`,null,r)-2,x:JA(e,t)})}function c(e,t,n,r,a,o){if(e!==n||t!==r){var s=a.push(i(a)+`scale(`,null,`,`,null,`)`);o.push({i:s-4,x:JA(e,n)},{i:s-2,x:JA(t,r)})}else(n!==1||r!==1)&&a.push(i(a)+`scale(`+n+`,`+r+`)`)}return function(t,n){var r=[],i=[];return t=e(t),n=e(n),a(t.translateX,t.translateY,n.translateX,n.translateY,r,i),o(t.rotate,n.rotate,r,i),s(t.skewX,n.skewX,r,i),c(t.scaleX,t.scaleY,n.scaleX,n.scaleY,r,i),t=n=null,function(e){for(var t=-1,n=i.length,a;++t<n;)r[(a=i[t]).i]=a.x(e);return r.join(``)}}}var lj=cj(oj,`px, `,`px)`,`deg)`),uj=cj(sj,`, `,`)`,`)`),dj=0,fj=0,pj=0,mj=1e3,hj,gj,_j=0,vj=0,yj=0,bj=typeof performance==`object`&&performance.now?performance:Date,xj=typeof window==`object`&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Sj(){return vj||=(xj(Cj),bj.now()+yj)}function Cj(){vj=0}function wj(){this._call=this._time=this._next=null}wj.prototype=Tj.prototype={constructor:wj,restart:function(e,t,n){if(typeof e!=`function`)throw TypeError(`callback is not a function`);n=(n==null?Sj():+n)+(t==null?0:+t),!this._next&&gj!==this&&(gj?gj._next=this:hj=this,gj=this),this._call=e,this._time=n,Aj()},stop:function(){this._call&&(this._call=null,this._time=1/0,Aj())}};function Tj(e,t,n){var r=new wj;return r.restart(e,t,n),r}function Ej(){Sj(),++dj;for(var e=hj,t;e;)(t=vj-e._time)>=0&&e._call.call(void 0,t),e=e._next;--dj}function Dj(){vj=(_j=bj.now())+yj,dj=fj=0;try{Ej()}finally{dj=0,kj(),vj=0}}function Oj(){var e=bj.now(),t=e-_j;t>mj&&(yj-=t,_j=e)}function kj(){for(var e,t=hj,n,r=1/0;t;)t._call?(r>t._time&&(r=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:hj=n);gj=e,Aj(r)}function Aj(e){dj||(fj&&=clearTimeout(fj),e-vj>24?(e<1/0&&(fj=setTimeout(Dj,e-bj.now()-yj)),pj&&=clearInterval(pj)):(pj||=(_j=bj.now(),setInterval(Oj,mj)),dj=1,xj(Dj)))}function jj(e,t,n){var r=new wj;return t=t==null?0:+t,r.restart(n=>{r.stop(),e(n+t)},t,n),r}var Mj=sO(`start`,`end`,`cancel`,`interrupt`),Nj=[];function Pj(e,t,n,r,i,a){var o=e.__transition;if(!o)e.__transition={};else if(n in o)return;Rj(e,n,{name:t,index:r,group:i,on:Mj,tween:Nj,time:a.time,delay:a.delay,duration:a.duration,ease:a.ease,timer:null,state:0})}function Fj(e,t){var n=Lj(e,t);if(n.state>0)throw Error(`too late; already scheduled`);return n}function Ij(e,t){var n=Lj(e,t);if(n.state>3)throw Error(`too late; already running`);return n}function Lj(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw Error(`transition not found`);return n}function Rj(e,t,n){var r=e.__transition,i;r[t]=n,n.timer=Tj(a,0,n.time);function a(e){n.state=1,n.timer.restart(o,n.delay,n.time),n.delay<=e&&o(e-n.delay)}function o(a){var l,u,d,f;if(n.state!==1)return c();for(l in r)if(f=r[l],f.name===n.name){if(f.state===3)return jj(o);f.state===4?(f.state=6,f.timer.stop(),f.on.call(`interrupt`,e,e.__data__,f.index,f.group),delete r[l]):+l<t&&(f.state=6,f.timer.stop(),f.on.call(`cancel`,e,e.__data__,f.index,f.group),delete r[l])}if(jj(function(){n.state===3&&(n.state=4,n.timer.restart(s,n.delay,n.time),s(a))}),n.state=2,n.on.call(`start`,e,e.__data__,n.index,n.group),n.state===2){for(n.state=3,i=Array(d=n.tween.length),l=0,u=-1;l<d;++l)(f=n.tween[l].value.call(e,e.__data__,n.index,n.group))&&(i[++u]=f);i.length=u+1}}function s(t){for(var r=t<n.duration?n.ease.call(null,t/n.duration):(n.timer.restart(c),n.state=5,1),a=-1,o=i.length;++a<o;)i[a].call(e,r);n.state===5&&(n.on.call(`end`,e,e.__data__,n.index,n.group),c())}function c(){for(var i in n.state=6,n.timer.stop(),delete r[t],r)return;delete e.__transition}}function zj(e,t){var n=e.__transition,r,i,a=!0,o;if(n){for(o in t=t==null?null:t+``,n)(r=n[o]).name===t?(i=r.state>2&&r.state<5,r.state=6,r.timer.stop(),r.on.call(i?`interrupt`:`cancel`,e,e.__data__,r.index,r.group),delete n[o]):a=!1;a&&delete e.__transition}}function Bj(e){return this.each(function(){zj(this,e)})}function Vj(e,t){var n,r;return function(){var i=Ij(this,e),a=i.tween;if(a!==n){r=n=a;for(var o=0,s=r.length;o<s;++o)if(r[o].name===t){r=r.slice(),r.splice(o,1);break}}i.tween=r}}function Hj(e,t,n){var r,i;if(typeof n!=`function`)throw Error();return function(){var a=Ij(this,e),o=a.tween;if(o!==r){i=(r=o).slice();for(var s={name:t,value:n},c=0,l=i.length;c<l;++c)if(i[c].name===t){i[c]=s;break}c===l&&i.push(s)}a.tween=i}}function Uj(e,t){var n=this._id;if(e+=``,arguments.length<2){for(var r=Lj(this.node(),n).tween,i=0,a=r.length,o;i<a;++i)if((o=r[i]).name===e)return o.value;return null}return this.each((t==null?Vj:Hj)(n,e,t))}function Wj(e,t,n){var r=e._id;return e.each(function(){var e=Ij(this,r);(e.value||={})[t]=n.apply(this,arguments)}),function(e){return Lj(e,r).value[t]}}function Gj(e,t){var n;return(typeof t==`number`?JA:t instanceof kA?qA:(n=kA(t))?(t=n,qA):$A)(e,t)}function Kj(e){return function(){this.removeAttribute(e)}}function qj(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Jj(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttribute(e);return o===i?null:o===r?a:a=t(r=o,n)}}function Yj(e,t,n){var r,i=n+``,a;return function(){var o=this.getAttributeNS(e.space,e.local);return o===i?null:o===r?a:a=t(r=o,n)}}function Xj(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttribute(e):(o=this.getAttribute(e),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Zj(e,t,n){var r,i,a;return function(){var o,s=n(this),c;return s==null?void this.removeAttributeNS(e.space,e.local):(o=this.getAttributeNS(e.space,e.local),c=s+``,o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s)))}}function Qj(e,t){var n=pO(e),r=n===`transform`?uj:Gj;return this.attrTween(e,typeof t==`function`?(n.local?Zj:Xj)(n,r,Wj(this,`attr.`+e,t)):t==null?(n.local?qj:Kj)(n):(n.local?Yj:Jj)(n,r,t))}function $j(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function eM(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function tM(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&eM(e,i)),n}return i._value=t,i}function nM(e,t){var n,r;function i(){var i=t.apply(this,arguments);return i!==r&&(n=(r=i)&&$j(e,i)),n}return i._value=t,i}function rM(e,t){var n=`attr.`+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!=`function`)throw Error();var r=pO(e);return this.tween(n,(r.local?tM:nM)(r,t))}function iM(e,t){return function(){Fj(this,e).delay=+t.apply(this,arguments)}}function aM(e,t){return t=+t,function(){Fj(this,e).delay=t}}function oM(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?iM:aM)(t,e)):Lj(this.node(),t).delay}function sM(e,t){return function(){Ij(this,e).duration=+t.apply(this,arguments)}}function cM(e,t){return t=+t,function(){Ij(this,e).duration=t}}function lM(e){var t=this._id;return arguments.length?this.each((typeof e==`function`?sM:cM)(t,e)):Lj(this.node(),t).duration}function uM(e,t){if(typeof t!=`function`)throw Error();return function(){Ij(this,e).ease=t}}function dM(e){var t=this._id;return arguments.length?this.each(uM(t,e)):Lj(this.node(),t).ease}function fM(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!=`function`)throw Error();Ij(this,e).ease=n}}function pM(e){if(typeof e!=`function`)throw Error();return this.each(fM(this._id,e))}function mM(e){typeof e!=`function`&&(e=TO(e));for(var t=this._groups,n=t.length,r=Array(n),i=0;i<n;++i)for(var a=t[i],o=a.length,s=r[i]=[],c,l=0;l<o;++l)(c=a[l])&&e.call(c,c.__data__,l,a)&&s.push(c);return new UM(r,this._parents,this._name,this._id)}function hM(e){if(e._id!==this._id)throw Error();for(var t=this._groups,n=e._groups,r=t.length,i=n.length,a=Math.min(r,i),o=Array(r),s=0;s<a;++s)for(var c=t[s],l=n[s],u=c.length,d=o[s]=Array(u),f,p=0;p<u;++p)(f=c[p]||l[p])&&(d[p]=f);for(;s<r;++s)o[s]=t[s];return new UM(o,this._parents,this._name,this._id)}function gM(e){return(e+``).trim().split(/^|\s+/).every(function(e){var t=e.indexOf(`.`);return t>=0&&(e=e.slice(0,t)),!e||e===`start`})}function _M(e,t,n){var r,i,a=gM(t)?Fj:Ij;return function(){var o=a(this,e),s=o.on;s!==r&&(i=(r=s).copy()).on(t,n),o.on=i}}function vM(e,t){var n=this._id;return arguments.length<2?Lj(this.node(),n).on.on(e):this.each(_M(n,e,t))}function yM(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function bM(){return this.on(`end.remove`,yM(this._id))}function xM(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=vO(e));for(var r=this._groups,i=r.length,a=Array(i),o=0;o<i;++o)for(var s=r[o],c=s.length,l=a[o]=Array(c),u,d,f=0;f<c;++f)(u=s[f])&&(d=e.call(u,u.__data__,f,s))&&(`__data__`in u&&(d.__data__=u.__data__),l[f]=d,Pj(l[f],t,n,f,l,Lj(u,n)));return new UM(a,this._parents,t,n)}function SM(e){var t=this._name,n=this._id;typeof e!=`function`&&(e=SO(e));for(var r=this._groups,i=r.length,a=[],o=[],s=0;s<i;++s)for(var c=r[s],l=c.length,u,d=0;d<l;++d)if(u=c[d]){for(var f=e.call(u,u.__data__,d,c),p,m=Lj(u,n),h=0,g=f.length;h<g;++h)(p=f[h])&&Pj(p,t,n,h,f,m);a.push(f),o.push(u)}return new UM(a,o,t,n)}var CM=cA.prototype.constructor;function wM(){return new CM(this._groups,this._parents)}function TM(e,t){var n,r,i;return function(){var a=hk(this,e),o=(this.style.removeProperty(e),hk(this,e));return a===o?null:a===n&&o===r?i:i=t(n=a,r=o)}}function EM(e){return function(){this.style.removeProperty(e)}}function DM(e,t,n){var r,i=n+``,a;return function(){var o=hk(this,e);return o===i?null:o===r?a:a=t(r=o,n)}}function OM(e,t,n){var r,i,a;return function(){var o=hk(this,e),s=n(this),c=s+``;return s??(c=s=(this.style.removeProperty(e),hk(this,e))),o===c?null:o===r&&c===i?a:(i=c,a=t(r=o,s))}}function kM(e,t){var n,r,i,a=`style.`+t,o=`end.`+a,s;return function(){var c=Ij(this,e),l=c.on,u=c.value[a]==null?s||=EM(t):void 0;(l!==n||i!==u)&&(r=(n=l).copy()).on(o,i=u),c.on=r}}function AM(e,t,n){var r=(e+=``)==`transform`?lj:Gj;return t==null?this.styleTween(e,TM(e,r)).on(`end.style.`+e,EM(e)):typeof t==`function`?this.styleTween(e,OM(e,r,Wj(this,`style.`+e,t))).each(kM(this._id,e)):this.styleTween(e,DM(e,r,t),n).on(`end.style.`+e,null)}function jM(e,t,n){return function(r){this.style.setProperty(e,t.call(this,r),n)}}function MM(e,t,n){var r,i;function a(){var a=t.apply(this,arguments);return a!==i&&(r=(i=a)&&jM(e,a,n)),r}return a._value=t,a}function NM(e,t,n){var r=`style.`+(e+=``);if(arguments.length<2)return(r=this.tween(r))&&r._value;if(t==null)return this.tween(r,null);if(typeof t!=`function`)throw Error();return this.tween(r,MM(e,t,n??``))}function PM(e){return function(){this.textContent=e}}function FM(e){return function(){var t=e(this);this.textContent=t??``}}function IM(e){return this.tween(`text`,typeof e==`function`?FM(Wj(this,`text`,e)):PM(e==null?``:e+``))}function LM(e){return function(t){this.textContent=e.call(this,t)}}function RM(e){var t,n;function r(){var r=e.apply(this,arguments);return r!==n&&(t=(n=r)&&LM(r)),t}return r._value=e,r}function zM(e){var t=`text`;if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!=`function`)throw Error();return this.tween(t,RM(e))}function BM(){for(var e=this._name,t=this._id,n=WM(),r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)if(c=o[l]){var u=Lj(c,t);Pj(c,e,n,l,o,{time:u.time+u.delay+u.duration,delay:0,duration:u.duration,ease:u.ease})}return new UM(r,this._parents,e,n)}function VM(){var e,t,n=this,r=n._id,i=n.size();return new Promise(function(a,o){var s={value:o},c={value:function(){--i===0&&a()}};n.each(function(){var n=Ij(this,r),i=n.on;i!==e&&(t=(e=i).copy(),t._.cancel.push(s),t._.interrupt.push(s),t._.end.push(c)),n.on=t}),i===0&&a()})}var HM=0;function UM(e,t,n,r){this._groups=e,this._parents=t,this._name=n,this._id=r}function WM(){return++HM}var GM=cA.prototype;UM.prototype={constructor:UM,select:xM,selectAll:SM,selectChild:GM.selectChild,selectChildren:GM.selectChildren,filter:mM,merge:hM,selection:wM,transition:BM,call:GM.call,nodes:GM.nodes,node:GM.node,size:GM.size,empty:GM.empty,each:GM.each,on:vM,attr:Qj,attrTween:rM,style:AM,styleTween:NM,text:IM,textTween:zM,remove:bM,tween:Uj,delay:oM,duration:lM,ease:dM,easeVarying:pM,end:VM,[Symbol.iterator]:GM[Symbol.iterator]};function KM(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var qM={time:null,delay:0,duration:250,ease:KM};function JM(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw Error(`transition ${t} not found`);return n}function YM(e){var t,n;e instanceof UM?(t=e._id,e=e._name):(t=WM(),(n=qM).time=Sj(),e=e==null?null:e+``);for(var r=this._groups,i=r.length,a=0;a<i;++a)for(var o=r[a],s=o.length,c,l=0;l<s;++l)(c=o[l])&&Pj(c,e,t,l,o,n||JM(c,t));return new UM(r,this._parents,e,t)}cA.prototype.interrupt=Bj,cA.prototype.transition=YM;var{abs:Iee,max:Lee,min:Ree}=Math;[`w`,`e`].map(XM),[`n`,`s`].map(XM),[`n`,`w`,`e`,`s`,`nw`,`ne`,`sw`,`se`].map(XM);function XM(e){return{type:e}}var ZM=Math.PI,QM=2*ZM,$M=1e-6,eN=QM-$M;function tN(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function nN(e){let t=Math.floor(e);if(!(t>=0))throw Error(`invalid digits: ${e}`);if(t>15)return tN;let n=10**t;return function(e){this._+=e[0];for(let t=1,r=e.length;t<r;++t)this._+=Math.round(arguments[t]*n)/n+e[t]}}var rN=class{constructor(e){this._x0=this._y0=this._x1=this._y1=null,this._=``,this._append=e==null?tN:nN(e)}moveTo(e,t){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(e,t){this._append`L${this._x1=+e},${this._y1=+t}`}quadraticCurveTo(e,t,n,r){this._append`Q${+e},${+t},${this._x1=+n},${this._y1=+r}`}bezierCurveTo(e,t,n,r,i,a){this._append`C${+e},${+t},${+n},${+r},${this._x1=+i},${this._y1=+a}`}arcTo(e,t,n,r,i){if(e=+e,t=+t,n=+n,r=+r,i=+i,i<0)throw Error(`negative radius: ${i}`);let a=this._x1,o=this._y1,s=n-e,c=r-t,l=a-e,u=o-t,d=l*l+u*u;if(this._x1===null)this._append`M${this._x1=e},${this._y1=t}`;else if(d>$M){if(!(Math.abs(u*s-c*l)>$M)||!i)this._append`L${this._x1=e},${this._y1=t}`;else{let f=n-a,p=r-o,m=s*s+c*c,h=f*f+p*p,g=Math.sqrt(m),_=Math.sqrt(d),v=i*Math.tan((ZM-Math.acos((m+d-h)/(2*g*_)))/2),y=v/_,b=v/g;Math.abs(y-1)>$M&&this._append`L${e+y*l},${t+y*u}`,this._append`A${i},${i},0,0,${+(u*f>l*p)},${this._x1=e+b*s},${this._y1=t+b*c}`}}}arc(e,t,n,r,i,a){if(e=+e,t=+t,n=+n,a=!!a,n<0)throw Error(`negative radius: ${n}`);let o=n*Math.cos(r),s=n*Math.sin(r),c=e+o,l=t+s,u=1^a,d=a?r-i:i-r;this._x1===null?this._append`M${c},${l}`:(Math.abs(this._x1-c)>$M||Math.abs(this._y1-l)>$M)&&this._append`L${c},${l}`,n&&(d<0&&(d=d%QM+QM),d>eN?this._append`A${n},${n},0,1,${u},${e-o},${t-s}A${n},${n},0,1,${u},${this._x1=c},${this._y1=l}`:d>$M&&this._append`A${n},${n},0,${+(d>=ZM)},${u},${this._x1=e+n*Math.cos(i)},${this._y1=t+n*Math.sin(i)}`)}rect(e,t,n,r){this._append`M${this._x0=this._x1=+e},${this._y0=this._y1=+t}h${n=+n}v${+r}h${-n}Z`}toString(){return this._}};rN.prototype;function iN(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString(`en`).replace(/,/g,``):e.toString(10)}function aN(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf(`e`),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function oN(e){return e=aN(Math.abs(e)),e?e[1]:NaN}function sN(e,t){return function(n,r){for(var i=n.length,a=[],o=0,s=e[0],c=0;i>0&&s>0&&(c+s+1>r&&(s=Math.max(1,r-c)),a.push(n.substring(i-=s,i+s)),!((c+=s+1)>r));)s=e[o=(o+1)%e.length];return a.reverse().join(t)}}function cN(e){return function(t){return t.replace(/[0-9]/g,function(t){return e[+t]})}}var lN=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function uN(e){if(!(t=lN.exec(e)))throw Error(`invalid format: `+e);var t;return new dN({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}uN.prototype=dN.prototype;function dN(e){this.fill=e.fill===void 0?` `:e.fill+``,this.align=e.align===void 0?`>`:e.align+``,this.sign=e.sign===void 0?`-`:e.sign+``,this.symbol=e.symbol===void 0?``:e.symbol+``,this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?``:e.type+``}dN.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 fN(e){out:for(var t=e.length,n=1,r=-1,i;n<t;++n)switch(e[n]){case`.`:r=i=n;break;case`0`:r===0&&(r=n),i=n;break;default:if(!+e[n])break out;r>0&&(r=0)}return r>0?e.slice(0,r)+e.slice(i+1):e}var pN;function mN(e,t){var n=aN(e,t);if(!n)return pN=void 0,e.toPrecision(t);var r=n[0],i=n[1],a=i-(pN=Math.max(-8,Math.min(8,Math.floor(i/3)))*3)+1,o=r.length;return a===o?r:a>o?r+Array(a-o+1).join(`0`):a>0?r.slice(0,a)+`.`+r.slice(a):`0.`+Array(1-a).join(`0`)+aN(e,Math.max(0,t+a-1))[0]}function hN(e,t){var n=aN(e,t);if(!n)return e+``;var r=n[0],i=n[1];return i<0?`0.`+Array(-i).join(`0`)+r:r.length>i+1?r.slice(0,i+1)+`.`+r.slice(i+1):r+Array(i-r.length+2).join(`0`)}var gN={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+``,d:iN,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>hN(e*100,t),r:hN,s:mN,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function _N(e){return e}var vN=Array.prototype.map,yN=[`y`,`z`,`a`,`f`,`p`,`n`,`µ`,`m`,``,`k`,`M`,`G`,`T`,`P`,`E`,`Z`,`Y`];function bN(e){var t=e.grouping===void 0||e.thousands===void 0?_N:sN(vN.call(e.grouping,Number),e.thousands+``),n=e.currency===void 0?``:e.currency[0]+``,r=e.currency===void 0?``:e.currency[1]+``,i=e.decimal===void 0?`.`:e.decimal+``,a=e.numerals===void 0?_N:cN(vN.call(e.numerals,String)),o=e.percent===void 0?`%`:e.percent+``,s=e.minus===void 0?`−`:e.minus+``,c=e.nan===void 0?`NaN`:e.nan+``;function l(e,l){e=uN(e);var u=e.fill,d=e.align,f=e.sign,p=e.symbol,m=e.zero,h=e.width,g=e.comma,_=e.precision,v=e.trim,y=e.type;y===`n`?(g=!0,y=`g`):gN[y]||(_===void 0&&(_=12),v=!0,y=`g`),(m||u===`0`&&d===`=`)&&(m=!0,u=`0`,d=`=`);var b=(l&&l.prefix!==void 0?l.prefix:``)+(p===`$`?n:p===`#`&&/[boxX]/.test(y)?`0`+y.toLowerCase():``),x=(p===`$`?r:/[%p]/.test(y)?o:``)+(l&&l.suffix!==void 0?l.suffix:``),S=gN[y],C=/[defgprs%]/.test(y);_=_===void 0?6:/[gprs]/.test(y)?Math.max(1,Math.min(21,_)):Math.max(0,Math.min(20,_));function w(e){var n=b,r=x,o,l,p;if(y===`c`)r=S(e)+r,e=``;else{e=+e;var w=e<0||1/e<0;if(e=isNaN(e)?c:S(Math.abs(e),_),v&&(e=fN(e)),w&&+e==0&&f!==`+`&&(w=!1),n=(w?f===`(`?f:s:f===`-`||f===`(`?``:f)+n,r=(y===`s`&&!isNaN(e)&&pN!==void 0?yN[8+pN/3]:``)+r+(w&&f===`(`?`)`:``),C){for(o=-1,l=e.length;++o<l;)if(p=e.charCodeAt(o),48>p||p>57){r=(p===46?i+e.slice(o+1):e.slice(o))+r,e=e.slice(0,o);break}}}g&&!m&&(e=t(e,1/0));var T=n.length+e.length+r.length,E=T<h?Array(h-T+1).join(u):``;switch(g&&m&&(e=t(E+e,E.length?h-r.length:1/0),E=``),d){case`<`:e=n+e+r+E;break;case`=`:e=n+E+e+r;break;case`^`:e=E.slice(0,T=E.length>>1)+n+e+r+E.slice(T);break;default:e=E+n+e+r}return a(e)}return w.toString=function(){return e+``},w}function u(e,t){var n=Math.max(-8,Math.min(8,Math.floor(oN(t)/3)))*3,r=10**-n,i=l((e=uN(e),e.type=`f`,e),{suffix:yN[8+n/3]});return function(e){return i(r*e)}}return{format:l,formatPrefix:u}}var xN,SN,CN;wN({thousands:`,`,grouping:[3],currency:[`$`,``]});function wN(e){return xN=bN(e),SN=xN.format,CN=xN.formatPrefix,xN}function TN(e){return Math.max(0,-oN(Math.abs(e)))}function EN(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(oN(t)/3)))*3-oN(Math.abs(e)))}function DN(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,oN(t)-oN(e))+1}function ON(e){var t=0,n=e.children,r=n&&n.length;if(!r)t=1;else for(;--r>=0;)t+=n[r].value;e.value=t}function kN(){return this.eachAfter(ON)}function AN(e,t){let n=-1;for(let r of this)e.call(t,r,++n,this);return this}function jN(e,t){for(var n=this,r=[n],i,a,o=-1;n=r.pop();)if(e.call(t,n,++o,this),i=n.children)for(a=i.length-1;a>=0;--a)r.push(i[a]);return this}function MN(e,t){for(var n=this,r=[n],i=[],a,o,s,c=-1;n=r.pop();)if(i.push(n),a=n.children)for(o=0,s=a.length;o<s;++o)r.push(a[o]);for(;n=i.pop();)e.call(t,n,++c,this);return this}function NN(e,t){let n=-1;for(let r of this)if(e.call(t,r,++n,this))return r}function PN(e){return this.eachAfter(function(t){for(var n=+e(t.data)||0,r=t.children,i=r&&r.length;--i>=0;)n+=r[i].value;t.value=n})}function FN(e){return this.eachBefore(function(t){t.children&&t.children.sort(e)})}function IN(e){for(var t=this,n=LN(t,e),r=[t];t!==n;)t=t.parent,r.push(t);for(var i=r.length;e!==n;)r.splice(i,0,e),e=e.parent;return r}function LN(e,t){if(e===t)return e;var n=e.ancestors(),r=t.ancestors(),i=null;for(e=n.pop(),t=r.pop();e===t;)i=e,e=n.pop(),t=r.pop();return i}function RN(){for(var e=this,t=[e];e=e.parent;)t.push(e);return t}function zN(){return Array.from(this)}function BN(){var e=[];return this.eachBefore(function(t){t.children||e.push(t)}),e}function VN(){var e=this,t=[];return e.each(function(n){n!==e&&t.push({source:n.parent,target:n})}),t}function*HN(){var e=this,t,n=[e],r,i,a;do for(t=n.reverse(),n=[];e=t.pop();)if(yield e,r=e.children)for(i=0,a=r.length;i<a;++i)n.push(r[i]);while(n.length)}function UN(e,t){e instanceof Map?(e=[void 0,e],t===void 0&&(t=KN)):t===void 0&&(t=GN);for(var n=new YN(e),r,i=[n],a,o,s,c;r=i.pop();)if((o=t(r.data))&&(c=(o=Array.from(o)).length))for(r.children=o,s=c-1;s>=0;--s)i.push(a=o[s]=new YN(o[s])),a.parent=r,a.depth=r.depth+1;return n.eachBefore(JN)}function WN(){return UN(this).eachBefore(qN)}function GN(e){return e.children}function KN(e){return Array.isArray(e)?e[1]:null}function qN(e){e.data.value!==void 0&&(e.value=e.data.value),e.data=e.data.data}function JN(e){var t=0;do e.height=t;while((e=e.parent)&&e.height<++t)}function YN(e){this.data=e,this.depth=this.height=0,this.parent=null}YN.prototype=UN.prototype={constructor:YN,count:kN,each:AN,eachAfter:MN,eachBefore:jN,find:NN,sum:PN,sort:FN,path:IN,ancestors:RN,descendants:zN,leaves:BN,links:VN,copy:WN,[Symbol.iterator]:HN};function XN(e){e.x0=Math.round(e.x0),e.y0=Math.round(e.y0),e.x1=Math.round(e.x1),e.y1=Math.round(e.y1)}function ZN(e,t,n,r,i){for(var a=e.children,o,s=-1,c=a.length,l=e.value&&(r-t)/e.value;++s<c;)o=a[s],o.y0=n,o.y1=i,o.x0=t,o.x1=t+=o.value*l}function QN(){var e=1,t=1,n=0,r=!1;function i(i){var o=i.height+1;return i.x0=i.y0=n,i.x1=e,i.y1=t/o,i.eachBefore(a(t,o)),r&&i.eachBefore(XN),i}function a(e,t){return function(r){r.children&&ZN(r,r.x0,e*(r.depth+1)/t,r.x1,e*(r.depth+2)/t);var i=r.x0,a=r.y0,o=r.x1-n,s=r.y1-n;o<i&&(i=o=(i+o)/2),s<a&&(a=s=(a+s)/2),r.x0=i,r.y0=a,r.x1=o,r.y1=s}}return i.round=function(e){return arguments.length?(r=!!e,i):r},i.size=function(n){return arguments.length?(e=+n[0],t=+n[1],i):[e,t]},i.padding=function(e){return arguments.length?(n=+e,i):n},i}function $N(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e)}return this}var eP=Symbol(`implicit`);function tP(){var e=new MD,t=[],n=[],r=eP;function i(i){let a=e.get(i);if(a===void 0){if(r!==eP)return r;e.set(i,a=t.push(i)-1)}return n[a%n.length]}return i.domain=function(n){if(!arguments.length)return t.slice();t=[],e=new MD;for(let r of n)e.has(r)||e.set(r,t.push(r)-1);return i},i.range=function(e){return arguments.length?(n=Array.from(e),i):n.slice()},i.unknown=function(e){return arguments.length?(r=e,i):r},i.copy=function(){return tP(t,n).unknown(r)},$N.apply(i,arguments),i}function nP(){var e=tP().unknown(void 0),t=e.domain,n=e.range,r=0,i=1,a,o,s=!1,c=0,l=0,u=.5;delete e.unknown;function d(){var e=t().length,d=i<r,f=d?i:r,p=d?r:i;a=(p-f)/Math.max(1,e-c+l*2),s&&(a=Math.floor(a)),f+=(p-f-a*(e-c))*u,o=a*(1-c),s&&(f=Math.round(f),o=Math.round(o));var m=GD(e).map(function(e){return f+a*e});return n(d?m.reverse():m)}return e.domain=function(e){return arguments.length?(t(e),d()):t()},e.range=function(e){return arguments.length?([r,i]=e,r=+r,i=+i,d()):[r,i]},e.rangeRound=function(e){return[r,i]=e,r=+r,i=+i,s=!0,d()},e.bandwidth=function(){return o},e.step=function(){return a},e.round=function(e){return arguments.length?(s=!!e,d()):s},e.padding=function(e){return arguments.length?(c=Math.min(1,l=+e),d()):c},e.paddingInner=function(e){return arguments.length?(c=Math.min(1,e),d()):c},e.paddingOuter=function(e){return arguments.length?(l=+e,d()):l},e.align=function(e){return arguments.length?(u=Math.max(0,Math.min(1,e)),d()):u},e.copy=function(){return nP(t(),[r,i]).round(s).paddingInner(c).paddingOuter(l).align(u)},$N.apply(d(),arguments)}function rP(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return rP(t())},e}function iP(){return rP(nP.apply(null,arguments).paddingInner(1))}function aP(e){return function(){return e}}function oP(e){return+e}var sP=[0,1];function cP(e){return e}function lP(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:aP(isNaN(t)?NaN:.5)}function uP(e,t){var n;return e>t&&(n=e,e=t,t=n),function(n){return Math.max(e,Math.min(t,n))}}function dP(e,t,n){var r=e[0],i=e[1],a=t[0],o=t[1];return i<r?(r=lP(i,r),a=n(o,a)):(r=lP(r,i),a=n(a,o)),function(e){return a(r(e))}}function fP(e,t,n){var r=Math.min(e.length,t.length)-1,i=Array(r),a=Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)i[o]=lP(e[o],e[o+1]),a[o]=n(t[o],t[o+1]);return function(t){var n=AD(e,t,1,r)-1;return a[n](i[n](t))}}function pP(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function mP(){var e=sP,t=sP,n=ej,r,i,a,o=cP,s,c,l;function u(){var n=Math.min(e.length,t.length);return o!==cP&&(o=uP(e[0],e[n-1])),s=n>2?fP:dP,c=l=null,d}function d(i){return i==null||isNaN(i=+i)?a:(c||=s(e.map(r),t,n))(r(o(i)))}return d.invert=function(n){return o(i((l||=s(t,e.map(r),JA))(n)))},d.domain=function(t){return arguments.length?(e=Array.from(t,oP),u()):e.slice()},d.range=function(e){return arguments.length?(t=Array.from(e),u()):t.slice()},d.rangeRound=function(e){return t=Array.from(e),n=tj,u()},d.clamp=function(e){return arguments.length?(o=e?!0:cP,u()):o!==cP},d.interpolate=function(e){return arguments.length?(n=e,u()):n},d.unknown=function(e){return arguments.length?(a=e,d):a},function(e,t){return r=e,i=t,u()}}function hP(){return mP()(cP,cP)}function gP(e,t,n,r){var i=UD(e,t,n),a;switch(r=uN(r??`,f`),r.type){case`s`:var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(a=EN(i,o))&&(r.precision=a),CN(r,o);case``:case`e`:case`g`:case`p`:case`r`:r.precision==null&&!isNaN(a=DN(i,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=a-(r.type===`e`));break;case`f`:case`%`:r.precision==null&&!isNaN(a=TN(i))&&(r.precision=a-(r.type===`%`)*2)}return SN(r)}function _P(e){var t=e.domain;return e.ticks=function(e){var n=t();return VD(n[0],n[n.length-1],e??10)},e.tickFormat=function(e,n){var r=t();return gP(r[0],r[r.length-1],e??10,n)},e.nice=function(n){n??=10;var r=t(),i=0,a=r.length-1,o=r[i],s=r[a],c,l,u=10;for(s<o&&(l=o,o=s,s=l,l=i,i=a,a=l);u-->0;){if(l=HD(o,s,n),l===c)return r[i]=o,r[a]=s,t(r);if(l>0)o=Math.floor(o/l)*l,s=Math.ceil(s/l)*l;else if(l<0)o=Math.ceil(o*l)/l,s=Math.floor(s*l)/l;else break;c=l}return e},e}function vP(){var e=hP();return e.copy=function(){return pP(e,vP())},$N.apply(e,arguments),_P(e)}function yP(e,t){e=e.slice();var n=0,r=e.length-1,i=e[n],a=e[r],o;return a<i&&(o=n,n=r,r=o,o=i,i=a,a=o),e[n]=t.floor(i),e[r]=t.ceil(a),e}var bP=new Date,xP=new Date;function SP(e,t,n,r){function i(t){return e(t=arguments.length===0?new Date:new Date(+t)),t}return i.floor=t=>(e(t=new Date(+t)),t),i.ceil=n=>(e(n=new Date(n-1)),t(n,1),e(n),n),i.round=e=>{let t=i(e),n=i.ceil(e);return e-t<n-e?t:n},i.offset=(e,n)=>(t(e=new Date(+e),n==null?1:Math.floor(n)),e),i.range=(n,r,a)=>{let o=[];if(n=i.ceil(n),a=a==null?1:Math.floor(a),!(n<r)||!(a>0))return o;let s;do o.push(s=new Date(+n)),t(n,a),e(n);while(s<n&&n<r);return o},i.filter=n=>SP(t=>{if(t>=t)for(;e(t),!n(t);)t.setTime(t-1)},(e,r)=>{if(e>=e){if(r<0)for(;++r<=0;)for(;t(e,-1),!n(e););else for(;--r>=0;)for(;t(e,1),!n(e););}}),n&&(i.count=(t,r)=>(bP.setTime(+t),xP.setTime(+r),e(bP),e(xP),Math.floor(n(bP,xP))),i.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?i.filter(r?t=>r(t)%e===0:t=>i.count(0,t)%e===0):i)),i}var CP=SP(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);CP.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?SP(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):CP),CP.range;var wP=1e3,TP=wP*60,EP=TP*60,DP=EP*24,OP=DP*7,kP=DP*30,AP=DP*365,jP=SP(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*wP)},(e,t)=>(t-e)/wP,e=>e.getUTCSeconds());jP.range;var MP=SP(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*wP)},(e,t)=>{e.setTime(+e+t*TP)},(e,t)=>(t-e)/TP,e=>e.getMinutes());MP.range;var NP=SP(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*TP)},(e,t)=>(t-e)/TP,e=>e.getUTCMinutes());NP.range;var PP=SP(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*wP-e.getMinutes()*TP)},(e,t)=>{e.setTime(+e+t*EP)},(e,t)=>(t-e)/EP,e=>e.getHours());PP.range;var FP=SP(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*EP)},(e,t)=>(t-e)/EP,e=>e.getUTCHours());FP.range;var IP=SP(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*TP)/DP,e=>e.getDate()-1);IP.range;var LP=SP(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/DP,e=>e.getUTCDate()-1);LP.range;var RP=SP(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/DP,e=>Math.floor(e/DP));RP.range;function zP(e){return SP(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(e,t)=>{e.setDate(e.getDate()+t*7)},(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*TP)/OP)}var BP=zP(0),VP=zP(1),HP=zP(2),UP=zP(3),WP=zP(4),GP=zP(5),KP=zP(6);BP.range,VP.range,HP.range,UP.range,WP.range,GP.range,KP.range;function qP(e){return SP(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t*7)},(e,t)=>(t-e)/OP)}var JP=qP(0),YP=qP(1),XP=qP(2),ZP=qP(3),QP=qP(4),$P=qP(5),eF=qP(6);JP.range,YP.range,XP.range,ZP.range,QP.range,$P.range,eF.range;var tF=SP(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());tF.range;var nF=SP(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());nF.range;var rF=SP(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());rF.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:SP(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)}),rF.range;var iF=SP(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());iF.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:SP(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)}),iF.range;function aF(e,t,n,r,i,a){let o=[[jP,1,wP],[jP,5,5*wP],[jP,15,15*wP],[jP,30,30*wP],[a,1,TP],[a,5,5*TP],[a,15,15*TP],[a,30,30*TP],[i,1,EP],[i,3,3*EP],[i,6,6*EP],[i,12,12*EP],[r,1,DP],[r,2,2*DP],[n,1,OP],[t,1,kP],[t,3,3*kP],[e,1,AP]];function s(e,t,n){let r=t<e;r&&([e,t]=[t,e]);let i=n&&typeof n.range==`function`?n:c(e,t,n),a=i?i.range(e,+t+1):[];return r?a.reverse():a}function c(t,n,r){let i=Math.abs(n-t)/r,a=ED(([,,e])=>e).right(o,i);if(a===o.length)return e.every(UD(t/AP,n/AP,r));if(a===0)return CP.every(Math.max(UD(t,n,r),1));let[s,c]=o[i/o[a-1][2]<o[a][2]/i?a-1:a];return s.every(c)}return[s,c]}var[zee,Bee]=aF(iF,nF,JP,RP,FP,NP),[oF,sF]=aF(rF,tF,BP,IP,PP,MP);function cF(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function lF(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function uF(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function dF(e){var t=e.dateTime,n=e.date,r=e.time,i=e.periods,a=e.days,o=e.shortDays,s=e.months,c=e.shortMonths,l=_F(i),u=vF(i),d=_F(a),f=vF(a),p=_F(o),m=vF(o),h=_F(s),g=vF(s),_=_F(c),v=vF(c),y={a:N,A:P,b:F,B:I,c:null,d:zF,e:zF,f:WF,g:tI,G:rI,H:BF,I:VF,j:HF,L:UF,m:GF,M:KF,p:L,q:R,Q:EI,s:DI,S:qF,u:JF,U:YF,V:ZF,w:QF,W:$F,x:null,X:null,y:eI,Y:nI,Z:iI,"%":TI},b={a:z,A:B,b:ee,B:te,c:null,d:aI,e:aI,f:uI,g:xI,G:CI,H:oI,I:sI,j:cI,L:lI,m:dI,M:fI,p:ne,q:re,Q:EI,s:DI,S:pI,u:mI,U:hI,V:_I,w:vI,W:yI,x:null,X:null,y:bI,Y:SI,Z:wI,"%":TI},x={a:E,A:D,b:O,B:k,c:A,d:kF,e:kF,f:FF,g:TF,G:wF,H:jF,I:jF,j:AF,L:PF,m:OF,M:MF,p:T,q:DF,Q:LF,s:RF,S:NF,u:bF,U:xF,V:SF,w:yF,W:CF,x:j,X:M,y:TF,Y:wF,Z:EF,"%":IF};y.x=S(n,y),y.X=S(r,y),y.c=S(t,y),b.x=S(n,b),b.X=S(r,b),b.c=S(t,b);function S(e,t){return function(n){var r=[],i=-1,a=0,o=e.length,s,c,l;for(n instanceof Date||(n=new Date(+n));++i<o;)e.charCodeAt(i)===37&&(r.push(e.slice(a,i)),(c=fF[s=e.charAt(++i)])==null?c=s===`e`?` `:`0`:s=e.charAt(++i),(l=t[s])&&(s=l(n,c)),r.push(s),a=i+1);return r.push(e.slice(a,i)),r.join(``)}}function C(e,t){return function(n){var r=uF(1900,void 0,1),i=w(r,e,n+=``,0),a,o;if(i!=n.length)return null;if(`Q`in r)return new Date(r.Q);if(`s`in r)return new Date(r.s*1e3+(`L`in r?r.L:0));if(t&&!(`Z`in r)&&(r.Z=0),`p`in r&&(r.H=r.H%12+r.p*12),r.m===void 0&&(r.m=`q`in r?r.q:0),`V`in r){if(r.V<1||r.V>53)return null;`w`in r||(r.w=1),`Z`in r?(a=lF(uF(r.y,0,1)),o=a.getUTCDay(),a=o>4||o===0?YP.ceil(a):YP(a),a=LP.offset(a,(r.V-1)*7),r.y=a.getUTCFullYear(),r.m=a.getUTCMonth(),r.d=a.getUTCDate()+(r.w+6)%7):(a=cF(uF(r.y,0,1)),o=a.getDay(),a=o>4||o===0?VP.ceil(a):VP(a),a=IP.offset(a,(r.V-1)*7),r.y=a.getFullYear(),r.m=a.getMonth(),r.d=a.getDate()+(r.w+6)%7)}else(`W`in r||`U`in r)&&(`w`in r||(r.w=`u`in r?r.u%7:+(`W`in r)),o=`Z`in r?lF(uF(r.y,0,1)).getUTCDay():cF(uF(r.y,0,1)).getDay(),r.m=0,r.d=`W`in r?(r.w+6)%7+r.W*7-(o+5)%7:r.w+r.U*7-(o+6)%7);return`Z`in r?(r.H+=r.Z/100|0,r.M+=r.Z%100,lF(r)):cF(r)}}function w(e,t,n,r){for(var i=0,a=t.length,o=n.length,s,c;i<a;){if(r>=o)return-1;if(s=t.charCodeAt(i++),s===37){if(s=t.charAt(i++),c=x[s in fF?t.charAt(i++):s],!c||(r=c(e,n,r))<0)return-1}else if(s!=n.charCodeAt(r++))return-1}return r}function T(e,t,n){var r=l.exec(t.slice(n));return r?(e.p=u.get(r[0].toLowerCase()),n+r[0].length):-1}function E(e,t,n){var r=p.exec(t.slice(n));return r?(e.w=m.get(r[0].toLowerCase()),n+r[0].length):-1}function D(e,t,n){var r=d.exec(t.slice(n));return r?(e.w=f.get(r[0].toLowerCase()),n+r[0].length):-1}function O(e,t,n){var r=_.exec(t.slice(n));return r?(e.m=v.get(r[0].toLowerCase()),n+r[0].length):-1}function k(e,t,n){var r=h.exec(t.slice(n));return r?(e.m=g.get(r[0].toLowerCase()),n+r[0].length):-1}function A(e,n,r){return w(e,t,n,r)}function j(e,t,r){return w(e,n,t,r)}function M(e,t,n){return w(e,r,t,n)}function N(e){return o[e.getDay()]}function P(e){return a[e.getDay()]}function F(e){return c[e.getMonth()]}function I(e){return s[e.getMonth()]}function L(e){return i[+(e.getHours()>=12)]}function R(e){return 1+~~(e.getMonth()/3)}function z(e){return o[e.getUTCDay()]}function B(e){return a[e.getUTCDay()]}function ee(e){return c[e.getUTCMonth()]}function te(e){return s[e.getUTCMonth()]}function ne(e){return i[+(e.getUTCHours()>=12)]}function re(e){return 1+~~(e.getUTCMonth()/3)}return{format:function(e){var t=S(e+=``,y);return t.toString=function(){return e},t},parse:function(e){var t=C(e+=``,!1);return t.toString=function(){return e},t},utcFormat:function(e){var t=S(e+=``,b);return t.toString=function(){return e},t},utcParse:function(e){var t=C(e+=``,!0);return t.toString=function(){return e},t}}}var fF={"-":``,_:` `,0:`0`},pF=/^\s*\d+/,mF=/^%/,hF=/[\\^$*+?|[\]().{}]/g;function J(e,t,n){var r=e<0?`-`:``,i=(r?-e:e)+``,a=i.length;return r+(a<n?Array(n-a+1).join(t)+i:i)}function gF(e){return e.replace(hF,`\\$&`)}function _F(e){return RegExp(`^(?:`+e.map(gF).join(`|`)+`)`,`i`)}function vF(e){return new Map(e.map((e,t)=>[e.toLowerCase(),t]))}function yF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function bF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function xF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function SF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function CF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function wF(e,t,n){var r=pF.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function TF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function EF(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||`00`)),n+r[0].length):-1}function DF(e,t,n){var r=pF.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function OF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function kF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function AF(e,t,n){var r=pF.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function jF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function MF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function NF(e,t,n){var r=pF.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function PF(e,t,n){var r=pF.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function FF(e,t,n){var r=pF.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function IF(e,t,n){var r=mF.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function LF(e,t,n){var r=pF.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function RF(e,t,n){var r=pF.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function zF(e,t){return J(e.getDate(),t,2)}function BF(e,t){return J(e.getHours(),t,2)}function VF(e,t){return J(e.getHours()%12||12,t,2)}function HF(e,t){return J(1+IP.count(rF(e),e),t,3)}function UF(e,t){return J(e.getMilliseconds(),t,3)}function WF(e,t){return UF(e,t)+`000`}function GF(e,t){return J(e.getMonth()+1,t,2)}function KF(e,t){return J(e.getMinutes(),t,2)}function qF(e,t){return J(e.getSeconds(),t,2)}function JF(e){var t=e.getDay();return t===0?7:t}function YF(e,t){return J(BP.count(rF(e)-1,e),t,2)}function XF(e){var t=e.getDay();return t>=4||t===0?WP(e):WP.ceil(e)}function ZF(e,t){return e=XF(e),J(WP.count(rF(e),e)+(rF(e).getDay()===4),t,2)}function QF(e){return e.getDay()}function $F(e,t){return J(VP.count(rF(e)-1,e),t,2)}function eI(e,t){return J(e.getFullYear()%100,t,2)}function tI(e,t){return e=XF(e),J(e.getFullYear()%100,t,2)}function nI(e,t){return J(e.getFullYear()%1e4,t,4)}function rI(e,t){var n=e.getDay();return e=n>=4||n===0?WP(e):WP.ceil(e),J(e.getFullYear()%1e4,t,4)}function iI(e){var t=e.getTimezoneOffset();return(t>0?`-`:(t*=-1,`+`))+J(t/60|0,`0`,2)+J(t%60,`0`,2)}function aI(e,t){return J(e.getUTCDate(),t,2)}function oI(e,t){return J(e.getUTCHours(),t,2)}function sI(e,t){return J(e.getUTCHours()%12||12,t,2)}function cI(e,t){return J(1+LP.count(iF(e),e),t,3)}function lI(e,t){return J(e.getUTCMilliseconds(),t,3)}function uI(e,t){return lI(e,t)+`000`}function dI(e,t){return J(e.getUTCMonth()+1,t,2)}function fI(e,t){return J(e.getUTCMinutes(),t,2)}function pI(e,t){return J(e.getUTCSeconds(),t,2)}function mI(e){var t=e.getUTCDay();return t===0?7:t}function hI(e,t){return J(JP.count(iF(e)-1,e),t,2)}function gI(e){var t=e.getUTCDay();return t>=4||t===0?QP(e):QP.ceil(e)}function _I(e,t){return e=gI(e),J(QP.count(iF(e),e)+(iF(e).getUTCDay()===4),t,2)}function vI(e){return e.getUTCDay()}function yI(e,t){return J(YP.count(iF(e)-1,e),t,2)}function bI(e,t){return J(e.getUTCFullYear()%100,t,2)}function xI(e,t){return e=gI(e),J(e.getUTCFullYear()%100,t,2)}function SI(e,t){return J(e.getUTCFullYear()%1e4,t,4)}function CI(e,t){var n=e.getUTCDay();return e=n>=4||n===0?QP(e):QP.ceil(e),J(e.getUTCFullYear()%1e4,t,4)}function wI(){return`+0000`}function TI(){return`%`}function EI(e){return+e}function DI(e){return Math.floor(e/1e3)}var OI,kI;AI({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 AI(e){return OI=dF(e),kI=OI.format,OI.parse,OI.utcFormat,OI.utcParse,OI}function jI(e){return new Date(e)}function MI(e){return e instanceof Date?+e:+new Date(+e)}function NI(e,t,n,r,i,a,o,s,c,l){var u=hP(),d=u.invert,f=u.domain,p=l(`.%L`),m=l(`:%S`),h=l(`%I:%M`),g=l(`%I %p`),_=l(`%a %d`),v=l(`%b %d`),y=l(`%B`),b=l(`%Y`);function x(e){return(c(e)<e?p:s(e)<e?m:o(e)<e?h:a(e)<e?g:r(e)<e?i(e)<e?_:v:n(e)<e?y:b)(e)}return u.invert=function(e){return new Date(d(e))},u.domain=function(e){return arguments.length?f(Array.from(e,MI)):f().map(jI)},u.ticks=function(t){var n=f();return e(n[0],n[n.length-1],t??10)},u.tickFormat=function(e,t){return t==null?x:l(t)},u.nice=function(e){var n=f();return e&&typeof e.range==`function`||(e=t(n[0],n[n.length-1],e??10)),e?f(yP(n,e)):u},u.copy=function(){return pP(u,NI(e,t,n,r,i,a,o,s,c,l))},u}function PI(){return $N.apply(NI(oF,sF,rF,tF,BP,IP,PP,MP,jP,kI).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function Y(e){return function(){return e}}var FI=Math.abs,II=Math.atan2,LI=Math.cos,RI=Math.max,zI=Math.min,BI=Math.sin,VI=Math.sqrt,HI=Math.PI,UI=HI/2,WI=2*HI;function GI(e){return e>1?0:e<-1?HI:Math.acos(e)}function KI(e){return e>=1?UI:e<=-1?-UI:Math.asin(e)}function qI(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{let e=Math.floor(n);if(!(e>=0))throw RangeError(`invalid digits: ${n}`);t=e}return e},()=>new rN(t)}function JI(e){return e.innerRadius}function YI(e){return e.outerRadius}function XI(e){return e.startAngle}function ZI(e){return e.endAngle}function QI(e){return e&&e.padAngle}function $I(e,t,n,r,i,a,o,s){var c=n-e,l=r-t,u=o-i,d=s-a,f=d*c-u*l;if(!(f*f<1e-12))return f=(u*(t-a)-d*(e-i))/f,[e+f*c,t+f*l]}function eL(e,t,n,r,i,a,o){var s=e-n,c=t-r,l=(o?a:-a)/VI(s*s+c*c),u=l*c,d=-l*s,f=e+u,p=t+d,m=n+u,h=r+d,g=(f+m)/2,_=(p+h)/2,v=m-f,y=h-p,b=v*v+y*y,x=i-a,S=f*h-m*p,C=(y<0?-1:1)*VI(RI(0,x*x*b-S*S)),w=(S*y-v*C)/b,T=(-S*v-y*C)/b,E=(S*y+v*C)/b,D=(-S*v+y*C)/b,O=w-g,k=T-_,A=E-g,j=D-_;return O*O+k*k>A*A+j*j&&(w=E,T=D),{cx:w,cy:T,x01:-u,y01:-d,x11:w*(i/x-1),y11:T*(i/x-1)}}function tL(){var e=JI,t=YI,n=Y(0),r=null,i=XI,a=ZI,o=QI,s=null,c=qI(l);function l(){var l,u,d=+e.apply(this,arguments),f=+t.apply(this,arguments),p=i.apply(this,arguments)-UI,m=a.apply(this,arguments)-UI,h=FI(m-p),g=m>p;if(s||=l=c(),f<d&&(u=f,f=d,d=u),!(f>1e-12))s.moveTo(0,0);else if(h>WI-1e-12)s.moveTo(f*LI(p),f*BI(p)),s.arc(0,0,f,p,m,!g),d>1e-12&&(s.moveTo(d*LI(m),d*BI(m)),s.arc(0,0,d,m,p,g));else{var _=p,v=m,y=p,b=m,x=h,S=h,C=o.apply(this,arguments)/2,w=C>1e-12&&(r?+r.apply(this,arguments):VI(d*d+f*f)),T=zI(FI(f-d)/2,+n.apply(this,arguments)),E=T,D=T,O,k;if(w>1e-12){var A=KI(w/d*BI(C)),j=KI(w/f*BI(C));(x-=A*2)>1e-12?(A*=g?1:-1,y+=A,b-=A):(x=0,y=b=(p+m)/2),(S-=j*2)>1e-12?(j*=g?1:-1,_+=j,v-=j):(S=0,_=v=(p+m)/2)}var M=f*LI(_),N=f*BI(_),P=d*LI(b),F=d*BI(b);if(T>1e-12){var I=f*LI(v),L=f*BI(v),R=d*LI(y),z=d*BI(y),B;if(h<HI){if(B=$I(M,N,R,z,I,L,P,F)){var ee=M-B[0],te=N-B[1],ne=I-B[0],re=L-B[1],ie=1/BI(GI((ee*ne+te*re)/(VI(ee*ee+te*te)*VI(ne*ne+re*re)))/2),ae=VI(B[0]*B[0]+B[1]*B[1]);E=zI(T,(d-ae)/(ie-1)),D=zI(T,(f-ae)/(ie+1))}else E=D=0}}S>1e-12?D>1e-12?(O=eL(R,z,M,N,f,D,g),k=eL(I,L,P,F,f,D,g),s.moveTo(O.cx+O.x01,O.cy+O.y01),D<T?s.arc(O.cx,O.cy,D,II(O.y01,O.x01),II(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,D,II(O.y01,O.x01),II(O.y11,O.x11),!g),s.arc(0,0,f,II(O.cy+O.y11,O.cx+O.x11),II(k.cy+k.y11,k.cx+k.x11),!g),s.arc(k.cx,k.cy,D,II(k.y11,k.x11),II(k.y01,k.x01),!g))):(s.moveTo(M,N),s.arc(0,0,f,_,v,!g)):s.moveTo(M,N),!(d>1e-12)||!(x>1e-12)?s.lineTo(P,F):E>1e-12?(O=eL(P,F,I,L,d,-E,g),k=eL(M,N,R,z,d,-E,g),s.lineTo(O.cx+O.x01,O.cy+O.y01),E<T?s.arc(O.cx,O.cy,E,II(O.y01,O.x01),II(k.y01,k.x01),!g):(s.arc(O.cx,O.cy,E,II(O.y01,O.x01),II(O.y11,O.x11),!g),s.arc(0,0,d,II(O.cy+O.y11,O.cx+O.x11),II(k.cy+k.y11,k.cx+k.x11),g),s.arc(k.cx,k.cy,E,II(k.y11,k.x11),II(k.y01,k.x01),!g))):s.arc(0,0,d,b,y,g)}if(s.closePath(),l)return s=null,l+``||null}return l.centroid=function(){var n=(+e.apply(this,arguments)+ +t.apply(this,arguments))/2,r=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2-HI/2;return[LI(r)*n,BI(r)*n]},l.innerRadius=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),l):e},l.outerRadius=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),l):t},l.cornerRadius=function(e){return arguments.length?(n=typeof e==`function`?e:Y(+e),l):n},l.padRadius=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:Y(+e),l):r},l.startAngle=function(e){return arguments.length?(i=typeof e==`function`?e:Y(+e),l):i},l.endAngle=function(e){return arguments.length?(a=typeof e==`function`?e:Y(+e),l):a},l.padAngle=function(e){return arguments.length?(o=typeof e==`function`?e:Y(+e),l):o},l.context=function(e){return arguments.length?(s=e??null,l):s},l}Array.prototype.slice;function nL(e){return typeof e==`object`&&`length`in e?e:Array.from(e)}function rL(e){this._context=e}rL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t)}}};function iL(e){return new rL(e)}function aL(e){return e[0]}function oL(e){return e[1]}function sL(e,t){var n=Y(!0),r=null,i=iL,a=null,o=qI(s);e=typeof e==`function`?e:e===void 0?aL:Y(e),t=typeof t==`function`?t:t===void 0?oL:Y(t);function s(s){var c,l=(s=nL(s)).length,u,d=!1,f;for(r??(a=i(f=o())),c=0;c<=l;++c)!(c<l&&n(u=s[c],c,s))===d&&((d=!d)?a.lineStart():a.lineEnd()),d&&a.point(+e(u,c,s),+t(u,c,s));if(f)return a=null,f+``||null}return s.x=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),s):e},s.y=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),s):t},s.defined=function(e){return arguments.length?(n=typeof e==`function`?e:Y(!!e),s):n},s.curve=function(e){return arguments.length?(i=e,r!=null&&(a=i(r)),s):i},s.context=function(e){return arguments.length?(e==null?r=a=null:a=i(r=e),s):r},s}function cL(e,t,n){var r=null,i=Y(!0),a=null,o=iL,s=null,c=qI(l);e=typeof e==`function`?e:e===void 0?aL:Y(+e),t=typeof t==`function`?t:Y(t===void 0?0:+t),n=typeof n==`function`?n:n===void 0?oL:Y(+n);function l(l){var u,d,f,p=(l=nL(l)).length,m,h=!1,g,_=Array(p),v=Array(p);for(a??(s=o(g=c())),u=0;u<=p;++u){if(!(u<p&&i(m=l[u],u,l))===h){if(h=!h)d=u,s.areaStart(),s.lineStart();else{for(s.lineEnd(),s.lineStart(),f=u-1;f>=d;--f)s.point(_[f],v[f]);s.lineEnd(),s.areaEnd()}}h&&(_[u]=+e(m,u,l),v[u]=+t(m,u,l),s.point(r?+r(m,u,l):_[u],n?+n(m,u,l):v[u]))}if(g)return s=null,g+``||null}function u(){return sL().defined(i).curve(o).context(a)}return l.x=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),r=null,l):e},l.x0=function(t){return arguments.length?(e=typeof t==`function`?t:Y(+t),l):e},l.x1=function(e){return arguments.length?(r=e==null?null:typeof e==`function`?e:Y(+e),l):r},l.y=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),n=null,l):t},l.y0=function(e){return arguments.length?(t=typeof e==`function`?e:Y(+e),l):t},l.y1=function(e){return arguments.length?(n=e==null?null:typeof e==`function`?e:Y(+e),l):n},l.lineX0=l.lineY0=function(){return u().x(e).y(t)},l.lineY1=function(){return u().x(e).y(n)},l.lineX1=function(){return u().x(r).y(t)},l.defined=function(e){return arguments.length?(i=typeof e==`function`?e:Y(!!e),l):i},l.curve=function(e){return arguments.length?(o=e,a!=null&&(s=o(a)),l):o},l.context=function(e){return arguments.length?(e==null?a=s=null:s=o(a=e),l):a},l}function lL(e){return e<0?-1:1}function uL(e,t,n){var r=e._x1-e._x0,i=t-e._x1,a=(e._y1-e._y0)/(r||i<0&&-0),o=(n-e._y1)/(i||r<0&&-0),s=(a*i+o*r)/(r+i);return(lL(a)+lL(o))*Math.min(Math.abs(a),Math.abs(o),.5*Math.abs(s))||0}function dL(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function fL(e,t,n){var r=e._x0,i=e._y0,a=e._x1,o=e._y1,s=(a-r)/3;e._context.bezierCurveTo(r+s,i+s*t,a-s,o-s*n,a,o)}function pL(e){this._context=e}pL.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:fL(this,this._t0,dL(this,this._t0))}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,e!==this._x1||t!==this._y1){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,fL(this,dL(this,n=uL(this,e,t)),n);break;default:fL(this,this._t0,n=uL(this,e,t))}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}},Object.create(pL.prototype).point=function(e,t){pL.prototype.point.call(this,t,e)};function mL(e){return new pL(e)}function hL(e,t){this._context=e,this._t=t}hL.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}}this._x=e,this._y=t}};function gL(e){return new hL(e,1)}function _L(e,t,n){this.k=e,this.x=t,this.y=n}_L.prototype={constructor:_L,scale:function(e){return e===1?this:new _L(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new _L(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return`translate(`+this.x+`,`+this.y+`) scale(`+this.k+`)`}};var vL=new _L(1,0,0);yL.prototype=_L.prototype;function yL(e){for(;!e.__zoom;)if(!(e=e.parentNode))return vL;return e.__zoom}function bL(e,t=15){let n=e.split(` `),r=[],i=[],a=0;return n.forEach(e=>{a+e.length>t?(i.length&&r.push(i.join(` `)),i=[e],a=e.length):(i.push(e),a+=e.length+ +(i.length>0))}),i.length&&r.push(i.join(` `)),r}var xL={DECISIVE:20,ROUTINE:50},SL=new Set([`WALKOVER`,`DOUBLE_WALKOVER`,`DEFAULTED`,`DOUBLE_DEFAULT`]),CL={COMPETITIVE:`#16a34a`,ROUTINE:`#3b82f6`,DECISIVE:`#8e44ad`,WALKOVER:`#6b7280`},wL=`#cfd8dc`,TL=`COMPETITIVE`,EL=`ROUTINE`,DL=`DECISIVE`,OL=`WALKOVER`;function kL(e,t=xL){if(!e?.length)return;let n=[0,0],r=[0,0];for(let t of e)n[0]+=t.side1Score||0,n[1]+=t.side2Score||0,r[0]+=t.side1TiebreakScore||0,r[1]+=t.side2TiebreakScore||0;r[0]+r[1]&&(n[r[0]>r[1]?0:1]+=1);let i=Math.max(n[0],n[1]);if(i===0)return;let a=Math.round(Math.min(n[0],n[1])/i*100);return Number.isNaN(a)?OL:a<=t.DECISIVE?DL:a<=t.ROUTINE?EL:TL}function AL(e,n=xL){if(e)return kL(t.scoreGovernor.parseScoreString({scoreString:e}),n)}function jL({winningSide:e,matchUpStatus:t,sets:n,scoreString:r,bands:i}){if(t&&SL.has(t))return OL;if(e)return n?.length?kL(n,i):AL(r,i)}function ML(e,t){return e?t?.[e]??CL[e]:wL}var{WILDCARD:NL,QUALIFIER:PL,LUCKY_LOSER:FL}=t.entryStatusConstants,IL=`text-anchor`,LL=`dominant-baseline`,RL=`fill-opacity`,zL=Object.assign({},...t.fixtures.countries.filter(e=>e.ioc).map(e=>({[e.ioc]:e.iso2})),...t.fixtures.countries.filter(e=>e.iso).map(e=>({[e.iso]:e.iso2})));function BL(e){let t=Math.floor(e.length/2),n=e.slice(0,t),r=e.slice(t).reverse();return[...n,...r]}function VL(e){if(e)switch(e){case NL:return`WC`;case PL:return`Q`;case FL:return`LL`;default:return e}}function HL(e,t){let n=[];for(let r of e)for(let e of r.sides){let i=r.matchUpStatus===`BYE`&&!e.participantName;n.push({name:e.participantName||(i?`BYE`:``),participantName:e.participantName||(i?`BYE`:void 0),drawPosition:e.drawPosition,seedNumber:e.seedNumber,entryStatus:VL(e.entryStatus),nationalityCode:e.nationalityCode,matchUp:r,depth:t,value:1})}return n}function UL(e,t){let n=e.winningSide!==void 0&&e.winningSide!==null?e.sides.find(t=>t.sideNumber===e.winningSide):void 0;!n&&e.matchUpStatus===`BYE`&&(n=e.sides.find(e=>e.participantName));let r=n?.participantName,i=r?t.get(r):void 0;return{winnerName:r,winnerSide:n,winnerLookup:i}}function WL(e,t,n,r){return e.map((e,i)=>{let a=i*2,o=[t[a],t[a+1]].filter(Boolean),{winnerName:s,winnerSide:c,winnerLookup:l}=UL(e,r);return{name:s||``,participantName:s,drawPosition:l?.drawPosition??c?.drawPosition,seedNumber:c?.seedNumber??l?.seedNumber,entryStatus:VL(c?.entryStatus)??l?.entryStatus,nationalityCode:c?.nationalityCode??l?.nationalityCode,scoreString:e.scoreString,matchUpStatus:e.matchUpStatus,competitiveness:e.competitiveness,matchUp:e,depth:n,children:o.length>0?o:void 0}})}function GL(e){let{roundMatchUps:t}=e,n=Object.keys(t).map(Number).sort((e,t)=>e-t);if(n.length===0)throw Error(`No round data found in draw`);let r=t[n[0]],i=BL(HL(r,n.length)),a=new Map;for(let e of i)e.participantName&&e.participantName!==`BYE`&&a.set(e.participantName,e);let o=WL(BL(r),i,n.length-1,a);for(let e=1;e<n.length;e++)o=WL(BL(t[n[e]]),o,n.length-1-e,a);return o.length===1?o[0]:{name:`Tournament`,depth:0,children:o}}function KL(e,t){if(!e)return;let{seedNumber:n,entryStatus:r,drawPosition:i,participantName:a}=e,o;if(a?.trim().toUpperCase()===`BYE`)o=`#B0BEC5`;else if(n){let e=Number(n),t=vP().domain([1,32]).range([`0`,`1`]);o=vP().domain(GD(0,1,1/7)).range([`#81D4FA`,`#42A5F5`,`#1E88E5`,`#1565C0`,`#5C6BC0`,`#673AB7`,`#9C27B0`])(Number(t(e)))}else if(r?.toUpperCase()===`WC`)o=`red`;else if(r&&(r===`Q`||r===`LL`))o=vP().domain(GD(0,1,1/3)).range([`#FFF176`,`#FBC02D`,`#FF9800`])(t(i));else{let e=[`#C8E6C9`,`#81C784`,`#66BB6A`,`#4CAF50`,`#43A047`,`#388E3C`,`#2E7D32`,`#1B5E20`,`#A5D6A7`,`#90CAF9`,`#64B5F6`,`#42A5F5`,`#2196F3`,`#1E88E5`,`#1976D2`,`#1565C0`];o=vP().domain(GD(0,1,1/e.length)).range(e)(t(i))}e.color=o,e.children&&e.children.forEach(n=>{n.participantName===e.participantName&&(n.color=o),KL(n,t)})}function qL(e,t){e&&(e.competitivenessColor=e.children?.length&&e.competitiveness?ML(e.competitiveness,t):wL,e.children?.forEach(e=>qL(e,t)))}function JL(e,t){let n=[];return e.seedNumber?n.push(`Seed ${e.seedNumber}`):e.entryStatus&&n.push(e.entryStatus),t===7&&e.drawPosition&&n.push(`Draw ${e.drawPosition}`),n.length>0?n.join(` • `):void 0}function YL(e,t){let n=e.find(e=>e.data.participantName&&e.data.participantName!==t);return n?.data.participantName?n.data:void 0}function XL(e,t){let n=[e.participantName],r;if(t.children&&t.children.length>0)e.scoreString&&n.push(e.scoreString),r=YL(t.children,e.participantName),r&&n.push(r.participantName);else{let r=JL(e,t.depth);r&&n.push(r)}return{messageLines:n,opponentData:r}}function ZL(e,t){return-(e*t/2)+t/2}function QL(e,t,n){let r=uA(e).append(`svg`).attr(`width`,t).attr(`height`,n).style(`display`,`block`),i=r.append(`g`).attr(`transform`,`translate(${t/2}, ${n/2})`);return{svg:r,g:i,flagsGroup:i.append(`g`).attr(`class`,`flags-group`),winningFlagsGroup:i.append(`g`).attr(`class`,`winning-flags-group`),losingFlagsGroup:i.append(`g`).attr(`class`,`losing-flags-group`)}}function $L(e,t,n,r,i){let a=e.append(`text`).attr(`x`,t/2).attr(`y`,n/2).attr(IL,`middle`).attr(LL,`middle`).attr(`font-size`,`${r}px`).attr(`font-weight`,`bold`).style(`fill`,`var(--chc-text-primary)`).attr(`pointer-events`,`none`),o=r+i*.5;return{centerText:a,centerText2:e.append(`text`).attr(`x`,t/2).attr(`y`,n/2+o).attr(IL,`middle`).attr(LL,`middle`).attr(`font-size`,`${i}px`).style(`fill`,`var(--chc-text-secondary)`).attr(`pointer-events`,`none`)}}function eR(e,t,n,r,i,a,o){n&&(i?(t.flagsGroup.selectAll(`text`).remove(),t.winningFlagsGroup.selectAll(`text`).remove(),t.losingFlagsGroup.selectAll(`text`).remove()):e.selectAll(`text`).remove(),e.append(`text`).attr(`font-size`,`${o}px`).attr(IL,`middle`).attr(LL,`middle`).attr(`transform`,`translate(0, ${r*a})`).text(iR(n)))}function tR(e,n,r,i={}){let a=i.width||800,o=i.height||800,s=Math.min(a,o)/800*(i.textScaleFactor??1),c=28*s,l=24*s,u=30*s,d=r||i.title||`Tournament`,f=Object.assign({},...t.fixtures.countries.filter(e=>e.label).map(e=>({[e.ioc]:e.label})));if(!Object.keys(n?.roundMatchUps??{}).length)return{highlightPlayer:()=>0,hide:()=>void 0,setColorMode:()=>void 0};let p=GL(n),m=UN(p,e=>e.children).sum(e=>e.value||0),h=Math.min(a,o)/2,g=h/2,_=e=>e*h/200;QN().size([2*Math.PI,h-g])(m),KL(p,vP().domain([0,n.drawSize||128]).range([0,1])),qL(p,i.competitivenessColors);let v=i.colorMode??`default`,y=e=>v===`competitiveness`?e.competitivenessColor||`#cfd8dc`:e.color||`#ccc`,b=m.descendants(),x=tL().startAngle(e=>e.x0).endAngle(e=>e.x1).innerRadius(e=>e.y0+g).outerRadius(e=>e.y1+g),{svg:S,g:C,flagsGroup:w,winningFlagsGroup:T,losingFlagsGroup:E}=QL(e,a,o),D=new Set,O=e=>{e.nationalityCode&&D.add(e.nationalityCode),e.children&&e.children.forEach(O)};O(p);let k=Array.from(D),{centerText:A,centerText2:j}=$L(S,a,o,c,l);function M(){let e=bL(d,15);A.text(``),A.selectAll(`tspan`).remove(),j.text(``),j.selectAll(`tspan`).remove(),A.selectAll(`tspan`).data(e).join(`tspan`).attr(`x`,a/2).attr(`dy`,(e,t)=>t===0?0:u).text(e=>e);let t=-(e.length*u/2)+u/2;A.attr(`y`,o/2+t),A.style(`display`,`block`),j.style(`display`,`none`)}function N(){if(w.selectAll(`text`).remove(),T.selectAll(`text`).remove(),E.selectAll(`text`).remove(),k.length===0)return;let e=vP().domain([0,k.length]).range([0,Math.PI*2]),t=_(20),n=g-t+10;w.selectAll(`text`).data(k).join(`text`).attr(`font-size`,`${t}px`).attr(IL,`middle`).attr(LL,`middle`).attr(`transform`,(t,r)=>{let i=e(r);return`translate(${Math.cos(i)*n}, ${Math.sin(i)*n})`}).text(e=>iR(e)).style(`cursor`,`pointer`).on(`mouseover`,function(e,t){let n=f[t]||t;A.selectAll(`tspan`).remove(),A.attr(`y`,o/2),A.text(n).style(`display`,`block`),j.selectAll(`tspan`).remove(),j.text(``).style(`display`,`none`),F||C.selectAll(`path`).attr(RL,e=>e.data.nationalityCode===t?.9:.3)}).on(`mouseout`,function(){F||C.selectAll(`path`).attr(RL,.8),M()})}N(),M();let P=i.eventHandlers?.clickCenter;P&&C.insert(`circle`,`:first-child`).attr(`r`,g).attr(`fill`,`transparent`).style(`cursor`,`pointer`).on(`click`,P);let F=!1,I;function L(e,t){let n=t.data;if(n.participantName){let{messageLines:e,opponentData:r}=XL(n,t);r&&(n.opponent=r),A.selectAll(`tspan`).remove(),A.text(``),A.selectAll(`tspan`).data(e).join(`tspan`).attr(`x`,a/2).attr(`dy`,(e,t)=>t===0?0:u).text(e=>e);let i=ZL(e.length,u);A.attr(`y`,o/2+i),A.style(`display`,`block`),j.style(`display`,`none`)}F?n.participantName?.toLowerCase()!==I?.toLowerCase()&&uA(e.currentTarget).attr(RL,.9):C.selectAll(`path`).attr(RL,e=>e.data.participantName===t.data.participantName?.9:.3);let r=_(30),i=g-r-10,s={flagsGroup:w,winningFlagsGroup:T,losingFlagsGroup:E};eR(T,s,n.nationalityCode,-1,!0,i,r),n.opponent&&eR(E,s,n.opponent.nationalityCode,1,!1,i,r)}function R(e,t){if(F){let n=t.data.participantName?.toLowerCase()===I?.toLowerCase();uA(e.currentTarget).attr(RL,n?1:.2)}else C.selectAll(`path`).attr(RL,.8);N(),M()}let z=i.eventHandlers?.clickSegment;function B(e,t){if(!z)return;let n=t.data;z({participantName:n.participantName,drawPosition:n.drawPosition,seedNumber:n.seedNumber,entryStatus:n.entryStatus,nationalityCode:n.nationalityCode,scoreString:n.scoreString,matchUpStatus:n.matchUpStatus,competitiveness:n.competitiveness,roundName:n.roundName,depth:n.depth,matchUp:n.matchUp})}let ee=C.selectAll(`path`).data(b).join(`path`).attr(`d`,e=>x(e)).attr(`fill`,e=>y(e.data)).attr(RL,.8).attr(`stroke`,`var(--chc-bg-primary)`).attr(`stroke-width`,1).on(`mouseover`,L).on(`mouseout`,R);z&&ee.style(`cursor`,`pointer`).on(`click`,B),ee.append(`title`).text(e=>{let t=e.data;if(t.participantName){let e=[t.participantName,`Draw: ${t.drawPosition||`N/A`}`];return t.competitiveness&&e.push(`Competitiveness: ${t.competitiveness}`),e.join(`
164
164
  `)}return`${t.name}\nDepth: ${e.depth}`});function te(e){let t=0;return F=!!e,I=e,C.selectAll(`path`).attr(RL,n=>e?n.data.participantName?.toLowerCase()===e.toLowerCase()?(t+=1,1):.2:.8),t}function ne(e){S.style(`display`,e?`none`:`block`)}function re(e){v=e,C.selectAll(`path`).attr(`fill`,e=>y(e.data))}return{highlightPlayer:te,hide:ne,setColorMode:re}}function nR(e={}){return{render:(t,n,r)=>tR(t,n,r,e)}}function rR(e){return e?.length===2?e&&String.fromCodePoint!==void 0?e.toUpperCase().replaceAll(/./g,e=>String.fromCodePoint((e.codePointAt(0)??0)+127397)):e:``}function iR(e){return rR(zL[e]||e)}var{LUCKY_LOSER:aR,WILDCARD:oR,QUALIFIER:sR}=t.entryStatusConstants,{WIN_RATIO:cR,ROUND_OUTCOME:lR,MAIN:uR,CONTAINER:dR}=t.drawDefinitionConstants;function fR(e){return e?.finishingPosition===lR&&e?.structureType!==dR}function pR(e){return e?.finishingPosition===cR||e?.structureType===dR}function mR(e){if(!e?.length)return;let t=e.filter(fR);if(t.length)return t.find(e=>e.stage===uR)??t[0]}function hR(e){if(pR(e))return{drawSize:0,roundMatchUps:{}};let t={};for(let[n,r]of Object.entries(e.roundMatchUps))t[Number(n)]=r.map(e=>({...e,winningSide:e.winningSide,drawPositions:e.drawPositions||[],competitiveness:jL({winningSide:e.winningSide,matchUpStatus:e.matchUpStatus,sets:e.score?.sets}),scoreString:e.winningSide===1?e.score?.scoreStringSide1:e.winningSide===2?e.score?.scoreStringSide2:void 0,sides:(e.sides||[]).map(e=>({sideNumber:e.sideNumber,drawPosition:e.drawPosition,participantName:e.participant?.participantName,nationalityCode:e.participant?.person?.nationalityCode,seedNumber:e.seedNumber,entryStatus:e.participant?.entryStatus}))}));return{drawSize:(t[1]?.length||0)*2,roundMatchUps:t,seedAssignments:e.seedAssignments}}var gR={LL:aR,WC:oR,Q:sR},_R=[`R128`,`R64`,`R32`,`R16`,`QF`,`SF`,`F`];function vR(e){let t=yR(e);if(t.length===0)return{drawSize:0,roundMatchUps:{}};let n=t[0].data,r=n.length,i=bR(n),a=xR(t,e),o={};o[1]=CR(n,a,t);for(let e=1;e<t.length;e++)o[e+1]=wR(e,t,a,i);return{drawSize:r,roundMatchUps:o}}function yR(e){let t=[],n=!1;for(let r of _R){let i=e[r];i&&i.length>0&&(n=!0),n&&i&&i.length>0&&t.push({key:r,data:i})}return t}function bR(e){let t=new Map;return e.forEach((e,n)=>{let r=TR(e.player);r&&r!==`BYE`&&t.set(r,{drawPosition:e.Draw??n+1,country:e.country,seed:e.seed,entry:e.entry})}),t}function xR(e,t){let n=new Map;for(let r=0;r<e.length;r++){let i=r+1<e.length?e[r+1].data:t.W||[],a=new Set;for(let e of i){let t=TR(e.player);t&&a.add(t)}n.set(e[r].key,a)}return n}function SR(e,t,n){if(e===`BYE`||t===`BYE`)return e===`BYE`?2:1;if(n.has(e))return 1;if(n.has(t))return 2}function CR(e,t,n){let r=[],i=t.get(n[0].key)||new Set;for(let t=0;t<e.length;t+=2){let a=e[t],o=e[t+1],s=TR(a?.player),c=TR(o?.player),l=s===`BYE`||c===`BYE`,u=SR(s,c,i),d;if(!l&&n.length>1){let e=n[1].data,t=u===1?s:c;d=e.find(e=>TR(e.player)===t)?.score}let f=l?`BYE`:u?`COMPLETED`:`TO_BE_PLAYED`;r.push({roundNumber:1,matchUpStatus:f,winningSide:u,drawPositions:[a?.Draw??t+1,o?.Draw??t+2],competitiveness:jL({winningSide:u,matchUpStatus:f,scoreString:d}),scoreString:d,sides:[DR(1,a,t+1),DR(2,o,t+2)]})}return r}function wR(e,t,n,r){let i=e+1,a=t[e].data,o=n.get(t[e].key)||new Set,s=[];for(let e=0;e<a.length;e+=2){let t=a[e],n=a[e+1],c=TR(t?.player),l=TR(n?.player),u=o.has(c)?1:o.has(l)?2:void 0,d=(u===1?t:u===2?n:void 0)?.score,f=u?`COMPLETED`:`TO_BE_PLAYED`;s.push({roundNumber:i,matchUpStatus:f,winningSide:u,drawPositions:[r.get(c)?.drawPosition??0,r.get(l)?.drawPosition??0],competitiveness:jL({winningSide:u,matchUpStatus:f,scoreString:d}),scoreString:d,sides:[OR(1,t,r),OR(2,n,r)]})}return s}function TR(e){if(!e)return``;let t=e.trim();return t.toUpperCase()===`BYE`?`BYE`:t}function ER(e){if(e)return gR[e.toUpperCase()]||e}function DR(e,t,n){if(!t)return{sideNumber:e,drawPosition:n};let r=TR(t.player);return{sideNumber:e,drawPosition:t.Draw??n,participantName:r||void 0,nationalityCode:t.country||void 0,seedNumber:t.seed?Number(t.seed):void 0,entryStatus:ER(t.entry)}}function OR(e,t,n){if(!t)return{sideNumber:e,drawPosition:0};let r=TR(t.player),i=n.get(r);return{sideNumber:e,drawPosition:i?.drawPosition??0,participantName:r||void 0,nationalityCode:t.country||i?.country||void 0,seedNumber:t.seed?Number(t.seed):i?.seed?Number(i.seed):void 0,entryStatus:ER(t.entry||i?.entry)}}var kR=480,AR=200,jR=280,MR={top:12,right:12,bottom:28,left:32},NR={top:12,right:12,bottom:12,left:12},PR=.6,FR=.9,IR=`http://www.w3.org/2000/svg`,LR=`middle`,RR=`text-anchor`,zR=`dominant-baseline`,BR=[`var(--chc-rating-low, var(--chc-accent-blue))`,`var(--chc-rating-high, var(--chc-accent-teal))`];function VR(e,t,n){let r=document.createElementNS(IR,`svg`);return r.setAttribute(`width`,String(e)),r.setAttribute(`height`,String(t)),r.setAttribute(`viewBox`,`0 0 ${e} ${t}`),r.setAttribute(`class`,`chc-rating-distribution-chart`),n&&r.setAttribute(`aria-label`,n),r}function HR(e,t,n){return n<=1||t/(n-1)<.5?BR[0]:BR[1]}function UR(e,t,n,r){return r?r(e,t):HR(e,t,n)}function WR(e){return`${e.binStart.toFixed(1)}–${e.binEnd.toFixed(1)}`}function GR(e){let{stats:t,width:n,height:r,margin:i,showAxis:a,showCounts:o,showMean:s,binColor:c,ariaLabel:l}=e,u=VR(n,r,l),d=uA(u).append(`g`).attr(`class`,`chc-rdc-histogram`).attr(`transform`,`translate(${i.left}, ${i.top})`),f=Math.max(0,n-i.left-i.right),p=Math.max(0,r-i.top-i.bottom);if(t.histogram.length===0||f===0||p===0)return u;let m=nP().domain(t.histogram.map(WR)).range([0,f]).padding(.12),h=vP().domain([0,WD(t.histogram,e=>e.count)??0]).nice().range([p,0]),g=t.histogram.length;if(d.selectAll(`rect.chc-rdc-bar`).data(t.histogram).enter().append(`rect`).attr(`class`,`chc-rdc-bar`).attr(`x`,e=>m(WR(e))??0).attr(`y`,e=>h(e.count)).attr(`width`,m.bandwidth()).attr(`height`,e=>p-h(e.count)).attr(`fill`,(e,t)=>UR(e,t,g,c)).append(`title`).text(e=>`${WR(e)}: ${e.count}`),o&&d.selectAll(`text.chc-rdc-count`).data(t.histogram).enter().append(`text`).attr(`class`,`chc-rdc-count`).attr(`x`,e=>(m(WR(e))??0)+m.bandwidth()/2).attr(`y`,e=>h(e.count)-4).attr(RR,LR).attr(`font-size`,`11`).attr(`fill`,`var(--chc-rdc-count-color, var(--chc-text-primary))`).text(e=>e.count>0?String(e.count):``),a){let e=t.histogram.map(WR),n=f/g>=55?e:[e[0],e.at(-1)].filter((e,t,n)=>n.indexOf(e)===t);d.append(`g`).attr(`class`,`chc-rdc-axis`).attr(`transform`,`translate(0, ${p})`).call(iO(m).tickValues(n).tickSize(0)).call(e=>e.select(`.domain`).remove()).call(e=>e.selectAll(`text`).attr(`font-size`,`10`).attr(`dy`,`0.9em`))}if(s&&Number.isFinite(t.mean)&&t.histogram.length>0){let e=t.histogram[0],n=t.histogram.at(-1),r=(t.mean-e.binStart)/(n.binEnd-e.binStart);if(r>=0&&r<=1){let e=r*f;d.append(`line`).attr(`class`,`chc-rdc-mean`).attr(`x1`,e).attr(`x2`,e).attr(`y1`,0).attr(`y2`,p).attr(`stroke`,`var(--chc-rating-mean, var(--chc-accent-red))`).attr(`stroke-dasharray`,`4 3`).attr(`stroke-width`,1.5)}}return u}function KR(e,t,n,r){return[e+n*Math.sin(r),t-n*Math.cos(r)]}function qR(e,t,n,r,i,a){let[o,s]=KR(e,t,n,i),[c,l]=KR(e,t,n,a),[u,d]=KR(e,t,r,a),[f,p]=KR(e,t,r,i),m=+(a-i>Math.PI);return[`M ${o} ${s}`,`A ${n} ${n} 0 ${m} 1 ${c} ${l}`,`L ${u} ${d}`,`A ${r} ${r} 0 ${m} 0 ${f} ${p}`,`Z`].join(` `)}function JR(e){let{stats:t,size:n,margin:r,showCounts:i,binColor:a,ariaLabel:o}=e,s=VR(n,n,o);if(t.histogram.length===0||t.count===0)return s;let c=(n-Math.max(r.left+r.right,r.top+r.bottom))/2,l=n/2,u=n/2,d=c*FR,f=c*PR,p=0,m=t.histogram.length;for(let e=0;e<m;e++){let n=t.histogram[e];if(n.count===0)continue;let r=n.count/t.count*2*Math.PI,o=p,c=p+r,h=document.createElementNS(IR,`path`);if(h.setAttribute(`class`,`chc-rdc-slice`),h.setAttribute(`d`,qR(l,u,d,f,o,c)),h.setAttribute(`fill`,UR(n,e,m,a)),s.appendChild(h),i){let e=o+r/2,[t,i]=KR(l,u,(d+f)/2,e),a=document.createElementNS(IR,`text`);a.setAttribute(`class`,`chc-rdc-slice-label`),a.setAttribute(`x`,String(t)),a.setAttribute(`y`,String(i)),a.setAttribute(RR,LR),a.setAttribute(zR,LR),a.setAttribute(`font-size`,`11`),a.setAttribute(`fill`,`var(--chc-rating-label, var(--chc-text-primary))`),a.textContent=String(n.count),s.appendChild(a)}p=c}let h=document.createElementNS(IR,`text`);return h.setAttribute(`class`,`chc-rdc-center-count`),h.setAttribute(`x`,String(l)),h.setAttribute(`y`,String(u)),h.setAttribute(RR,LR),h.setAttribute(zR,LR),h.setAttribute(`font-size`,`20`),h.setAttribute(`font-weight`,`600`),h.textContent=String(t.count),s.appendChild(h),s}function YR(e,t={}){let n=t.mode??`HISTOGRAM`,r=t.ariaLabel??`Participant rating distribution`;return n===`DONUT`?JR({stats:e,size:t.width??t.height??jR,margin:t.margin??NR,showCounts:t.showCounts??!0,binColor:t.binColor,ariaLabel:r}):GR({stats:e,width:t.width??kR,height:t.height??AR,margin:t.margin??MR,showAxis:t.showAxis??!0,showCounts:t.showCounts??!0,showMean:t.showMean??!0,binColor:t.binColor,ariaLabel:r})}var XR=`http://www.w3.org/2000/svg`,ZR={top:36,right:16,bottom:28,left:56},QR=600,$R=260,ez=6,tz=8;function nz(e,t){let n=document.createElementNS(XR,`svg`);n.classList.add(`lc-svg`),e.appendChild(n);let r={container:e,svg:n,config:{...t},destroyed:!1};return rz(r),{element:n,update(e){r.destroyed||(r.config={...r.config,...e},rz(r))},destroy(){r.destroyed||(r.destroyed=!0,n.parentNode===e&&e.removeChild(n))}}}function rz(e){let{svg:t,container:n,config:r}=e,i={...ZR,...r.margins||{}},a=n.clientWidth||QR,o=r.width??a,s=r.height??$R;for(;t.firstChild;)t.removeChild(t.firstChild);t.setAttribute(`width`,String(o)),t.setAttribute(`height`,String(s)),t.setAttribute(`viewBox`,`0 0 ${o} ${s}`);let c=Math.max(0,o-i.left-i.right),l=Math.max(0,s-i.top-i.bottom),u=(r.data||[]).map(e=>({...e,_dateValue:e.date instanceof Date?e.date:new Date(e.date),_rung:Math.max(0,Math.min(r.rungs.length-1,e.rung))})).filter(e=>!Number.isNaN(e._dateValue.getTime())).sort((e,t)=>e._dateValue.getTime()-t._dateValue.getTime());if(r.title){let e=document.createElementNS(XR,`text`);e.setAttribute(`class`,`lc-title`),e.setAttribute(`x`,String(i.left)),e.setAttribute(`y`,String(Math.max(16,i.top-12))),e.textContent=r.title,t.appendChild(e)}if(!u.length){let e=document.createElementNS(XR,`text`);e.setAttribute(`class`,`lc-empty`),e.setAttribute(`x`,String(o/2)),e.setAttribute(`y`,String(s/2)),e.setAttribute(`text-anchor`,`middle`),e.textContent=`No data`,t.appendChild(e);return}let d=jD(u,e=>e._dateValue),f=Math.max(3,(d[1].getTime()-d[0].getTime())/864e5*.04),p=new Date(d[0].getTime()-f*864e5),m=new Date(d[1].getTime()+f*864e5),h=PI().domain([p,m]).range([0,c]),g=iP().domain([...r.rungs].reverse()).range([0,l]).padding(.5),_=document.createElementNS(XR,`g`);_.setAttribute(`transform`,`translate(${i.left},${i.top})`),t.appendChild(_);let v=document.createElementNS(XR,`g`);v.setAttribute(`class`,`lc-axis lc-axis-y`),_.appendChild(v),uA(v).call(aO(g).tickSize(-c).tickPadding(8));let y=document.createElementNS(XR,`g`);y.setAttribute(`class`,`lc-axis lc-axis-x`),y.setAttribute(`transform`,`translate(0,${l})`),_.appendChild(y);let b=d[1].getFullYear()-d[0].getFullYear()>=1?`%Y`:`%b`,x=r.xTickFormat??b;if(uA(y).call(iO(h).ticks(r.xMaxTicks??tz).tickFormat(kI(x))),r.showConnector!==!1&&u.length>1){let e=sL().x(e=>h(e._dateValue)).y(e=>g(r.rungs[e._rung])??0).curve(gL),t=document.createElementNS(XR,`path`);t.setAttribute(`class`,`lc-connector`),t.setAttribute(`d`,e(u)||``),r.connectorColor&&(t.style.stroke=r.connectorColor),_.appendChild(t)}let S=document.createElementNS(XR,`g`);S.setAttribute(`class`,`lc-marks`),_.appendChild(S);for(let e of u){let t=h(e._dateValue),n=g(r.rungs[e._rung])??0,i=e.radius??r.markRadius??ez,a=document.createElementNS(XR,`circle`);if(a.setAttribute(`class`,`lc-mark`),a.setAttribute(`cx`,String(t)),a.setAttribute(`cy`,String(n)),a.setAttribute(`r`,String(i)),(e.color||r.markColor)&&(a.style.fill=e.color??r.markColor),e.label){let t=[e.label,e.detail].filter(Boolean).join(` — `);a.setAttribute(`aria-label`,t);let n=document.createElementNS(XR,`title`);n.textContent=t,a.appendChild(n)}r.onMarkClick&&(a.style.cursor=`pointer`,a.addEventListener(`click`,t=>r.onMarkClick(e,t))),r.onMarkHover&&(a.addEventListener(`mouseenter`,t=>r.onMarkHover(e,t)),a.addEventListener(`mouseleave`,e=>r.onMarkHover(null,e))),S.appendChild(a)}if(r.source){let e=document.createElementNS(XR,`text`);e.setAttribute(`class`,`lc-source`),e.setAttribute(`x`,String(o-i.right)),e.setAttribute(`y`,String(s-6)),e.setAttribute(`text-anchor`,`end`),e.textContent=`Source: ${r.source}`,t.appendChild(e)}}var iz=`http://www.w3.org/2000/svg`,az=`text-anchor`,oz=`dominant-baseline`,sz=`class`,cz=`middle`,lz=520,uz=240,dz={top:16,right:64,bottom:28,left:44},fz=5,pz=3;function mz(e,t,n){let r=n-t;if(n>=3){if(r===1)return`F`;if(r===2)return`SF`;if(r===3)return`QF`}return`R${t+1}`}function hz(e,t){let n=document.createElementNS(iz,e);return t&&n.setAttribute(sz,t),n}function gz(e){let t=Math.round(e);return t>0?`+${t}`:String(t)}function _z(e,t){if(t)return t;let n=[];for(let t of e)for(let e of[t.projected.expected,t.projected.low,t.projected.high,t.actual])e!=null&&n.push(e);if(!n.length)return[-100,100];let r=Math.max(Math.abs(Math.min(...n)),Math.abs(Math.max(...n)),50)*1.15;return[-r,r]}function vz(e,t){let n=t.width??lz,r=t.height??uz,i=t.margin??(t.spark?{top:6,right:6,bottom:6,left:6}:dz),a=Math.max(1,n-i.left-i.right),o=Math.max(1,r-i.top-i.bottom),s=vP().domain([0,Math.max(1,e.length-1)]).range([0,a]),c=_z(e,t.yDomain),l=vP().domain(c).range([o,0]);return{x:e=>s(e),y:e=>l(e),yDomain:c,innerWidth:a,innerHeight:o,margin:i}}function yz(e,t,n){let r=t.map((e,t)=>({point:e,index:t})).filter(({point:e})=>e.projected.low!==null&&e.projected.high!==null);if(r.length<2)return;let i=cL().x(({index:e})=>n.x(e)).y0(({point:e})=>n.y(e.projected.low)).y1(({point:e})=>n.y(e.projected.high)),a=hz(`path`,`chc-pc__band`);a.setAttribute(`d`,i(r)??``),e.appendChild(a)}function bz({group:e,points:t,geometry:n,className:r,accessor:i}){let a=t.map((e,t)=>({point:e,index:t})).filter(({point:e})=>i(e)!==null);if(a.length<2)return;let o=sL().x(({index:e})=>n.x(e)).y(({point:e})=>n.y(i(e))),s=hz(`path`,r);s.setAttribute(`d`,o(a)??``),e.appendChild(s)}function xz(e){return ML(e)}function Sz({group:e,points:t,geometry:n,radius:r,onHover:i}){t.forEach((t,a)=>{if(t.actual===null)return;let o=hz(`circle`,t.won===!1?`chc-pc__marker chc-pc__marker--lost`:`chc-pc__marker`);o.setAttribute(`cx`,String(n.x(a))),o.setAttribute(`cy`,String(n.y(t.actual))),o.setAttribute(`r`,String(r)),o.setAttribute(`fill`,xz(t.competitiveness));let s=document.createElementNS(iz,`title`);s.textContent=`Round ${t.roundNumber}: ${gz(t.actual)} · ${t.competitiveness??`unclassified`}`,o.appendChild(s),i&&(o.addEventListener(`mouseenter`,e=>i(t,a,e)),o.addEventListener(`mousemove`,e=>i(t,a,e))),e.appendChild(o)})}function Cz({group:e,geometry:t}){let[n,r]=t.yDomain,i=wz(Math.max(Math.abs(n),Math.abs(r)));for(let a of[-i,i]){if(a<n||a>r)continue;let i=hz(`line`,`chc-pc__tick`);i.setAttribute(`x1`,`0`),i.setAttribute(`x2`,String(t.innerWidth)),i.setAttribute(`y1`,String(t.y(a))),i.setAttribute(`y2`,String(t.y(a))),e.appendChild(i);let o=hz(`text`,`chc-pc__tick-label`);o.setAttribute(`x`,`-6`),o.setAttribute(`y`,String(t.y(a))),o.setAttribute(az,`end`),o.setAttribute(oz,cz),o.textContent=gz(a),e.appendChild(o)}}function wz(e){if(!Number.isFinite(e)||e<=0)return 1;let t=e/2,n=10**Math.floor(Math.log10(t)),r=t/n;return(r>=5&&5||r>=2&&2||1)*n}function Tz({group:e,points:t,geometry:n,options:r}){let i=hz(`line`,`chc-pc__zero`);if(i.setAttribute(`x1`,`0`),i.setAttribute(`x2`,String(n.innerWidth)),i.setAttribute(`y1`,String(n.y(0))),i.setAttribute(`y2`,String(n.y(0))),e.appendChild(i),r.spark)return;Cz({group:e,geometry:n});let a=hz(`text`,`chc-pc__axis-label`);a.setAttribute(`x`,String(n.innerWidth+6)),a.setAttribute(`y`,String(n.y(0))),a.setAttribute(oz,cz),a.textContent=`even`,e.appendChild(a);let o=r.roundLabels??mz;t.forEach((r,i)=>{let a=hz(`text`,`chc-pc__round-label`);if(a.setAttribute(`x`,String(n.x(i))),a.setAttribute(`y`,String(n.innerHeight+16)),a.setAttribute(az,cz),a.textContent=o(r.roundNumber,i,t.length),e.appendChild(a),r.bye){let t=hz(`text`,`chc-pc__bye`);t.setAttribute(`x`,String(n.x(i))),t.setAttribute(`y`,String(n.y(0)-8)),t.setAttribute(az,cz),t.textContent=`bye`,e.appendChild(t)}});let s=hz(`text`,`chc-pc__axis-label`);s.setAttribute(`x`,`0`),s.setAttribute(`y`,`-4`),s.textContent=r.scaleName?`opponent strength vs own (${r.scaleName}, ELO-equivalent)`:`opponent strength vs own`,e.appendChild(s)}function Ez({group:e,points:t,geometry:n}){let r=[...t].reverse().find(e=>e.projected.expected!==null),i=[...t].reverse().find(e=>e.actual!==null);if(r){let i=t.indexOf(r),a=hz(`text`,`chc-pc__series-label`);a.setAttribute(`x`,String(n.x(i)+8)),a.setAttribute(`y`,String(n.y(r.projected.expected))),a.setAttribute(oz,cz),a.setAttribute(`fill`,`var(--chc-pc-projected)`),a.textContent=`projected`,e.appendChild(a)}if(i){let r=t.indexOf(i),a=r<t.length-1,o=hz(`text`,`chc-pc__series-label`);o.setAttribute(`x`,String(n.x(r)+8)),o.setAttribute(`y`,String(n.y(i.actual)+(a?-12:0))),o.setAttribute(oz,cz),o.textContent=`actual`,e.appendChild(o)}}function Dz(){let e=document.createElement(`div`);e.className=`chc-pc__legend`;for(let[t,n]of[[`chc-pc__legend-swatch chc-pc__legend-swatch--band`,`possible opponents`],[`chc-pc__legend-swatch chc-pc__legend-swatch--projected`,`projected`],[`chc-pc__legend-swatch chc-pc__legend-swatch--line`,`actual`]]){let r=document.createElement(`span`);r.className=`chc-pc__legend-item`;let i=document.createElement(`span`);i.className=t,r.append(i,document.createTextNode(n)),e.appendChild(r)}for(let t of[`COMPETITIVE`,`ROUTINE`,`DECISIVE`]){let n=document.createElement(`span`);n.className=`chc-pc__legend-item`;let r=document.createElement(`span`);r.className=`chc-pc__legend-swatch`,r.style.background=ML(t),n.append(r,document.createTextNode(t.toLowerCase())),e.appendChild(n)}return e}function Oz(){let e=document.createElement(`div`);return e.className=`chc-pc__tooltip`,e.dataset.visible=`false`,e}function kz(e,t){let n=document.createElement(`div`);n.className=`chc-pc__tooltip-row`;let r=document.createElement(`span`);r.textContent=e;let i=document.createElement(`span`);return i.textContent=t,n.append(r,i),n}function Az(e,t){e.replaceChildren();let n=document.createElement(`div`);n.className=`chc-pc__tooltip-title`,n.textContent=`Round ${t.roundNumber}`,e.appendChild(n),t.actual!==null&&e.appendChild(kz(`faced`,gz(t.actual))),t.competitiveness&&e.appendChild(kz(`scoreline`,t.competitiveness.toLowerCase())),t.won!==void 0&&e.appendChild(kz(`result`,t.won?`won`:`lost`)),t.projected.expected!==null&&e.appendChild(kz(`projected`,gz(t.projected.expected))),t.projected.low!==null&&t.projected.high!==null&&e.appendChild(kz(`range`,`${gz(t.projected.low)} … ${gz(t.projected.high)}`)),e.appendChild(kz(`reach`,`${Math.round(t.reachProbability*100)}%`))}function jz(e){let t=document.createElement(`div`);return t.className=`chc-pc__empty`,t.textContent=e,t}function Mz(e,t,n={}){let r=document.createElement(`div`);r.className=`chc-pc`,e.appendChild(r);let i=Oz();function a(e,t){r.replaceChildren();let n=e?.points??[];if(!e||!n.length||!e.rating){r.appendChild(jz(t.emptyMessage??`No rating data for this draw, so no pressure to plot.`));return}let a=t.width??lz,o=t.height??uz,s=vz(n,t),c=hz(`svg`,`chc-pc__svg`);c.setAttribute(`width`,String(a)),c.setAttribute(`height`,String(o)),c.setAttribute(`viewBox`,`0 0 ${a} ${o}`),c.setAttribute(`role`,`img`),c.setAttribute(`aria-label`,t.ariaLabel??`Projected and actual opponent difficulty by round for ${e.participantName??e.participantId}`);let l=hz(`g`);l.setAttribute(`transform`,`translate(${s.margin.left}, ${s.margin.top})`),c.appendChild(l),yz(l,n,s),Tz({group:l,points:n,geometry:s,options:t}),bz({group:l,points:n,geometry:s,className:`chc-pc__projected-line`,accessor:e=>e.projected.expected}),bz({group:l,points:n,geometry:s,className:`chc-pc__actual-line`,accessor:e=>e.actual}),Sz({group:l,points:n,geometry:s,radius:t.spark?pz:fz,onHover:t.spark?void 0:(e,t,n)=>{Az(i,e),i.dataset.visible=`true`,i.style.left=`${n.offsetX+12}px`,i.style.top=`${n.offsetY+12}px`}}),t.spark||Ez({group:l,points:n,geometry:s}),r.appendChild(c),t.spark||(r.appendChild(i),t.showLegend!==!1&&r.appendChild(Dz()),r.addEventListener(`mouseleave`,()=>{i.dataset.visible=`false`}))}return a(t,n),{element:r,update:(e,t)=>a(e,{...n,...t}),destroy:()=>{uA(r).remove()}}}var Nz={NO_MATCHUPS:`NO_MATCHUPS`,NOT_ELIMINATION:`NOT_ELIMINATION`,NO_RATINGS:`NO_RATINGS`};function Pz(e){return{participantId:e?.participant?.participantId??e?.participantId,participant:e?.participant,drawPosition:e?.drawPosition,bye:!!e?.bye}}function Fz(e){let t=e?.roundNumber,n=e?.roundPosition;if(typeof t!=`number`||typeof n!=`number`)return null;let r=Array.isArray(e.sides)?e.sides:[],i=r.find(e=>e?.sideNumber===1)??r[0],a=r.find(e=>e?.sideNumber===2)??r[1];return{matchUpId:e.matchUpId,roundNumber:t,roundPosition:n,sides:[Pz(i),Pz(a)],winningSide:e.winningSide,matchUpStatus:e.matchUpStatus,raw:e}}function Iz(e){if(!Array.isArray(e)||!e.length)return{unsupported:Nz.NO_MATCHUPS};let t=new Map;for(let n of e){let e=Fz(n);if(!e)continue;let r=t.get(e.roundNumber)??new Map;r.set(e.roundPosition,e),t.set(e.roundNumber,r)}let n=[...t.keys()].toSorted((e,t)=>e-t);if(!n.length)return{unsupported:Nz.NOT_ELIMINATION};let r=n[0];for(let e=1;e<n.length;e+=1){let r=t.get(n[e-1])?.size??0,i=t.get(n[e])?.size??0;if(n[e]!==n[e-1]+1||i*2!==r)return{unsupported:Nz.NOT_ELIMINATION}}return n.length===1&&(t.get(r)?.size??0)>1?{unsupported:Nz.NOT_ELIMINATION}:{graph:{roundNumbers:n,byRound:t,firstRound:r}}}function Lz(e){return[e*2-1,e*2]}function Rz(e){return e.matchUpStatus===`BYE`||e.sides.some(e=>e.bye)}var{ELO:zz}=t.ratingConstants,Bz=`SINGLES`,Vz=`DOUBLES`;function Hz(){return t.fixtures?.ratingsParameters??{}}function Uz({value:e,sourceRange:t,targetRange:n}){if(!Array.isArray(t)||t.length!==2||!Array.isArray(n)||n.length!==2)return 0;let r=Math.min(...t),i=Math.max(...t),a=Math.min(...n),o=Math.max(...n);return i===r?a:(e-r)*(o-a)/(i-r)+a}function Wz({scaleName:e,value:t}){if(typeof t!=`number`||Number.isNaN(t))return;if(e===zz)return t;let n=e?Hz()[e]?.range:void 0;if(!n)return;let r=Hz()[zz]?.range;if(r)return Uz({value:n[0]>n[1]?n[0]-t:t,sourceRange:n,targetRange:r})}function Gz(e){if(typeof e==`number`)return Number.isNaN(e)?void 0:e;if(typeof e!=`string`||!e.trim())return;let t=Number.parseFloat(e);return Number.isNaN(t)?void 0:t}function Kz(e,t){let n=Gz(t);if(n!==void 0)return n;if(!t||typeof t!=`object`)return;let r=Hz()[e],i=[r?.accessor,...r?.accessors??[]].filter(Boolean);for(let e of i){let n=Gz(t[e]);if(n!==void 0)return n}}function qz({participant:e,matchUpType:t,preferredScaleName:n}){let r=t===Vz?Vz:Bz,i=e?.ratings?.[r];if(!Array.isArray(i)||!i.length)return null;let a=(n&&i.find(e=>e?.scaleName===n))??i.find(e=>typeof e?.scaleName==`string`);if(!a?.scaleName)return null;let o=Kz(a.scaleName,a.scaleValue);if(o===void 0)return null;let s=Wz({scaleName:a.scaleName,value:o});return s===void 0?null:{elo:s,scaleName:a.scaleName,sourceValue:o}}function Jz(e){let t=new Map;for(let n of e)n&&t.set(n.scaleName,(t.get(n.scaleName)??0)+1);if(t.size)return[...t.entries()].toSorted((e,t)=>t[1]-e[1]||e[0].localeCompare(t[0],`en`))[0][0]}function Yz(e,t,n){let r=n?.divisor??400;return r?1/(1+10**((t-e)/r)):.5}function Xz(e,t,n){return e===null||t===null?.5:Yz(e,t,n)}function Zz(e){return e.sides.map(e=>e.bye?void 0:e.participantId)}function Qz(e,t){let n=new Map,[r,i]=Zz(e);if(t.respectResults&&e.winningSide){let t=Zz(e)[e.winningSide-1];return t&&n.set(t,1),n}if(r&&!i)n.set(r,1);else if(i&&!r)n.set(i,1);else if(r&&i){let e=Xz(t.eloOf.get(r)??null,t.eloOf.get(i)??null,t.model);n.set(r,e),n.set(i,1-e)}return n}function $z(e,t,n){if(!t.size)return 1;let r=0;for(let[i,a]of t)r+=a*Xz(n.eloOf.get(e)??null,n.eloOf.get(i)??null,n.model);return r}function eB(e,t,n){let r=new Map;if(!e.size)return new Map(t);if(!t.size)return new Map(e);for(let[i,a]of e)r.set(i,a*$z(i,t,n));for(let[i,a]of t)r.set(i,a*$z(i,e,n));return r}function tB(e,t,n){if(n.respectResults&&e.winningSide){let t=Zz(e)[e.winningSide-1];if(t)return new Map([[t,1]])}return eB(t[0],t[1],n)}function nB(e,t){let n=new Map;for(let r of e.roundNumbers){let i=e.byRound.get(r),a=new Map;if(i){for(let[o,s]of i){if(r===e.firstRound){a.set(o,Qz(s,t));continue}let i=n.get(r-1),[c,l]=Lz(o),u=[i?.get(c)??new Map,i?.get(l)??new Map];a.set(o,tB(s,u,t))}n.set(r,a)}}return n}function rB({opponents:e,context:t,names:n,rangeThreshold:r}){let i=0,a=0,o=[],s=[];for(let[c,l]of e){let e=t.eloOf.get(c)??null;s.push({participantId:c,participantName:n.get(c),probability:l,elo:e}),e!==null&&(i+=l,a+=l*e,l>=r&&o.push(e))}return{expectedOpponentElo:i?a/i:null,opponentEloRange:o.length?[Math.min(...o),Math.max(...o)]:null,possibleOpponentCount:e.size,possibleOpponents:s.toSorted((e,t)=>t.probability-e.probability||e.participantId.localeCompare(t.participantId,`en`))}}function iB({graph:e,winners:t,roundNumber:n,feederPosition:r}){if(n===e.firstRound)return new Map;let i=r%2==1?r+1:r-1;return t.get(n-1)?.get(i)??new Map}function aB(e,t){let n=new Map;for(let r of e.sides)!r.bye&&r.participantId&&r.participantId!==t&&n.set(r.participantId,1);return n}function oB({participantId:e,entryMatchUp:t,graph:n,winners:r,context:i,ratings:a,names:o,rangeThreshold:s}){let c=a.get(e)??null,l=[],u=t.roundPosition,d=u,f=1;for(let t of n.roundNumbers){let a=n.byRound.get(t)?.get(u),p=t===n.firstRound&&!!a&&Rz(a),m=rB({opponents:t===n.firstRound&&a?aB(a,e):iB({graph:n,winners:r,roundNumber:t,feederPosition:d}),context:i,names:o,rangeThreshold:s}),h=m.expectedOpponentElo!==null&&c?m.expectedOpponentElo-c.elo:null;l.push({roundNumber:t,reachProbability:f,expectedSignedDelta:h,resolved:m.possibleOpponentCount===1,bye:p,...m}),f=r.get(t)?.get(u)?.get(e)??0,d=u,u=Math.ceil(u/2)}return{participantId:e,participantName:t.sides.find(t=>t.participantId===e)?.participant?.participantName,drawPosition:t.sides.find(t=>t.participantId===e)?.drawPosition,rating:c,rounds:l,pathDifficulty:sB(l),slotDifficulty:cB(l),expectedMatchesPlayed:l.reduce((e,t)=>e+(t.bye?0:t.reachProbability),0)}}function sB(e){let t=0,n=0;for(let r of e)r.bye||r.expectedSignedDelta===null||(t+=r.reachProbability,n+=r.reachProbability*r.expectedSignedDelta);return t?n/t:null}function cB(e){let t=e.filter(e=>!e.bye&&e.expectedSignedDelta!==null).map(e=>e.expectedSignedDelta);return t.length?t.reduce((e,t)=>e+t,0)/t.length:null}function lB(e){let t=new Map,n=e.byRound.get(e.firstRound);if(!n)return t;for(let e of n.values())for(let n of e.sides)!n.bye&&n.participantId&&t.set(n.participantId,e);return t}function uB(e){let{graph:t,unsupported:n}=Iz(e.matchUps);if(!t)return{projections:[],unsupported:n,unratedCount:0};let r=lB(t);if(!r.size)return{projections:[],unsupported:Nz.NO_MATCHUPS,unratedCount:0};let i=new Map,a=new Map,o=new Map;for(let[t,n]of r){let r=n.sides.find(e=>e.participantId===t),s=qz({participant:r?.participant,matchUpType:e.matchUpType,preferredScaleName:e.scaleName});i.set(t,s),a.set(t,s?.elo??null),o.set(t,r?.participant?.participantName)}let s=[...i.values()].filter(e=>!e).length;if(s===i.size)return{projections:[],unsupported:Nz.NO_RATINGS,unratedCount:s};let c={eloOf:a,model:e.model,respectResults:!!e.respectResults},l=nB(t,c),u=e.rangeThreshold??.01;return{projections:[...r.entries()].map(([e,n])=>oB({participantId:e,entryMatchUp:n,graph:t,winners:l,context:c,ratings:i,names:o,rangeThreshold:u})).toSorted((e,t)=>(e.drawPosition??0)-(t.drawPosition??0)),scaleName:Jz([...i.values()]),unratedCount:s}}function dB(e){return e.raw?.competitiveProfile?.competitiveness||jL({winningSide:e.winningSide,matchUpStatus:e.matchUpStatus,sets:e.raw?.score?.sets,scoreString:e.raw?.score?.scoreStringSide1})}function fB(e,t){return qz({participant:e?.participant,matchUpType:t.matchUpType,preferredScaleName:t.scaleName})}function pB({matchUp:e,participantId:t,ownElo:n,params:r}){let i=e.sides.findIndex(e=>e.participantId===t),a=e.sides[1-i],o=Rz(e),s=!!e.winningSide,c=(o||!s?null:fB(a,r))?.elo??null;return{roundNumber:e.roundNumber,matchUpId:e.matchUpId,opponentParticipantId:o?void 0:a?.participantId,opponentParticipantName:o?void 0:a?.participant?.participantName,opponentElo:c,signedDelta:c!==null&&n!==null?c-n:null,competitiveness:o||!s?void 0:dB(e),won:s?e.winningSide===i+1:void 0,bye:o}}function mB(e){let{graph:t}=Iz(e.matchUps);if(!t)return[];let n=new Map,r=new Map;for(let i of t.byRound.values())for(let t of i.values())for(let i of t.sides){if(i.bye||!i.participantId)continue;let a=n.get(i.participantId)??[];a.push(t),n.set(i.participantId,a),r.has(i.participantId)||r.set(i.participantId,fB(i,e))}return[...n.entries()].map(([t,n])=>{let i=r.get(t)??null,a=n.toSorted((e,t)=>e.roundNumber-t.roundNumber).map(n=>pB({matchUp:n,participantId:t,ownElo:i?.elo??null,params:e})),o=a.filter(e=>!e.bye&&e.signedDelta!==null);return{participantId:t,rating:i,rounds:a,facedDifficulty:o.length?o.reduce((e,t)=>e+t.signedDelta,0)/o.length:null,matchesPlayed:a.filter(e=>!e.bye&&e.won!==void 0).length}})}function hB(e){let t=uB(e);if(!t.projections.length)return{series:[],projection:t,scaleName:t.scaleName,unratedCount:t.unratedCount};let n=new Map(mB({matchUps:e.matchUps,matchUpType:e.matchUpType,scaleName:e.scaleName}).map(e=>[e.participantId,e]));return{series:t.projections.map(e=>{let t=n.get(e.participantId),r=new Map((t?.rounds??[]).map(e=>[e.roundNumber,e])),i=e.rating?.elo??null,a=e.rounds.map(e=>{let t=r.get(e.roundNumber),n=e.opponentEloRange;return{roundNumber:e.roundNumber,projected:{expected:e.expectedSignedDelta,low:n&&i!==null?n[0]-i:null,high:n&&i!==null?n[1]-i:null},reachProbability:e.reachProbability,actual:t?.signedDelta??null,competitiveness:t?.competitiveness,won:t?.won,bye:e.bye||!!t?.bye,resolved:e.resolved}});return{participantId:e.participantId,participantName:e.participantName,drawPosition:e.drawPosition,rating:e.rating,pathDifficulty:e.pathDifficulty,slotDifficulty:e.slotDifficulty,facedDifficulty:t?.facedDifficulty??null,points:a}}),projection:t,scaleName:t.scaleName,unratedCount:t.unratedCount}}function gB(e){return e.toSorted((e,t)=>e.slotDifficulty===null&&t.slotDifficulty===null?(e.participantName??``).localeCompare(t.participantName??``,`en`,{numeric:!0}):e.slotDifficulty===null?1:t.slotDifficulty===null?-1:t.slotDifficulty-e.slotDifficulty)}var _B=150,vB=64;function yB(e){return _z(e.flatMap(e=>e.points))}function bB({series:e,options:t,chartOptions:n}){let r=document.createElement(`div`);r.className=`chc-psm__cell`,r.dataset.participantId=e.participantId;let i=document.createElement(`div`);return i.className=`chc-psm__label`,i.textContent=e.participantName??e.participantId,i.title=i.textContent,r.appendChild(i),Mz(r,e,n),t.onSelect&&(r.classList.add(`is-clickable`),r.setAttribute(`role`,`button`),r.tabIndex=0,r.addEventListener(`click`,()=>t.onSelect?.(e)),r.addEventListener(`keydown`,n=>{(n.key===`Enter`||n.key===` `)&&(n.preventDefault(),t.onSelect?.(e))})),r}function xB(e,t=[],n={}){let r=document.createElement(`div`);r.className=`chc-psm`,e.appendChild(r);function i(e,t){r.replaceChildren();let n=gB(e).filter(e=>e.rating);if(!n.length){let e=document.createElement(`div`);e.className=`chc-pc__empty`,e.textContent=t.emptyMessage??`No rating data for this draw, so no pressure to plot.`,r.appendChild(e);return}let i=yB(n),a=document.createElement(`div`);a.className=`chc-psm__grid`;let o=t.limit?n.slice(0,t.limit):n;for(let e of o)a.appendChild(bB({series:e,options:t,chartOptions:{spark:!0,yDomain:i,width:t.cellWidth??_B,height:t.cellHeight??vB,scaleName:t.scaleName}}));r.appendChild(a);let s=document.createElement(`div`);s.className=`chc-psm__caption`;let c=e.length-n.length,l=[`hardest slot first · shared scale`];o.length<n.length&&l.push(`${n.length-o.length} of ${n.length} not shown`),c>0&&l.push(`${c} unrated omitted`),s.textContent=l.join(` · `),r.appendChild(s)}return i(t,n),{element:r,update:(e,t)=>i(e,{...n,...t})}}var SB=22,CB=460,wB=132,TB=3;function EB(e){if(e===null)return`—`;let t=Math.round(e);return t>0?`+${t}`:String(t)}function DB({series:e,options:t,scale:n,midpoint:r,barWidth:i}){let a=document.createElement(`div`);a.className=`chc-pdb__row`,a.dataset.participantId=e.participantId,a.style.height=`${t.rowHeight??SB}px`;let o=document.createElement(`span`);o.className=`chc-pdb__label`,o.style.width=`${t.labelWidth??wB}px`,o.textContent=e.participantName??e.participantId,o.title=o.textContent;let s=document.createElement(`span`);s.className=`chc-pdb__track`,s.style.width=`${i}px`;let c=document.createElement(`span`);if(c.className=`chc-pdb__zero`,c.style.left=`${r}px`,s.appendChild(c),e.slotDifficulty!==null){let t=n(e.slotDifficulty),i=document.createElement(`span`);i.className=e.slotDifficulty>=0?`chc-pdb__bar chc-pdb__bar--up`:`chc-pdb__bar chc-pdb__bar--down`,i.style.left=`${Math.min(r,t)}px`,i.style.width=`${Math.abs(t-r)}px`,i.style.borderRadius=e.slotDifficulty>=0?`0 ${TB}px ${TB}px 0`:`${TB}px 0 0 ${TB}px`,s.appendChild(i)}if(t.showActual&&e.facedDifficulty!==null){let t=document.createElement(`span`);t.className=`chc-pdb__actual`,t.style.left=`${n(e.facedDifficulty)}px`,t.title=`faced so far ${EB(e.facedDifficulty)}`,s.appendChild(t)}let l=document.createElement(`span`);return l.className=`chc-pdb__value`,l.textContent=EB(e.slotDifficulty),a.append(o,s,l),t.onSelect&&(a.classList.add(`is-clickable`),a.setAttribute(`role`,`button`),a.tabIndex=0,a.addEventListener(`click`,()=>t.onSelect?.(e)),a.addEventListener(`keydown`,n=>{(n.key===`Enter`||n.key===` `)&&(n.preventDefault(),t.onSelect?.(e))})),a}function OB(e,t=[],n={}){let r=document.createElement(`div`);r.className=`chc-pdb`,e.appendChild(r);function i(e,t){r.replaceChildren();let n=gB(e);if(!n.length){let e=document.createElement(`div`);e.className=`chc-pc__empty`,e.textContent=t.emptyMessage??`No rating data for this draw, so no path difficulty to rank.`,r.appendChild(e);return}let i=t.width??CB,a=t.labelWidth??wB,o=Math.max(40,i-a-52),s=o/2,c=n.flatMap(e=>[e.slotDifficulty,t.showActual?e.facedDifficulty:null]).filter(e=>e!==null),l=Math.max(...c.map(e=>Math.abs(e)),1),u=e=>s+e/l*(s-4),d=t.limit?n.slice(0,t.limit):n;for(let e of d)r.appendChild(DB({series:e,options:t,scale:u,midpoint:s,barWidth:o}));let f=document.createElement(`div`);f.className=`chc-pdb__caption`;let p=n.filter(e=>e.slotDifficulty===null).length,m=[`hardest slot first`];d.length<n.length&&m.push(`${n.length-d.length} of ${n.length} not shown`),p&&m.push(`${p} unrated`),f.textContent=m.join(` · `),r.appendChild(f)}return i(t,n),{element:r,update:(e,t)=>i(e,{...n,...t})}}var kB=[`Round`,`Projected`,`Range`,`Reach`,`Faced`,`Scoreline`,`Result`];function AB(e){if(e==null)return`—`;let t=Math.round(e);return t>0?`+${t}`:String(t)}function jB(e){return e.points.map(e=>{let t=e.projected.low!==null&&e.projected.high!==null?`${AB(e.projected.low)} … ${AB(e.projected.high)}`:`—`,n=`—`;return e.bye?n=`bye`:e.won!==void 0&&(n=e.won?`won`:`lost`),[`R${e.roundNumber}`,AB(e.projected.expected),t,`${Math.round(e.reachProbability*100)}%`,AB(e.actual),e.competitiveness?e.competitiveness.toLowerCase():`—`,n]})}function MB(e,t){let n=document.createElement(`table`);n.className=`chc-pc__table`;let r=document.createElement(`caption`);r.textContent=`Projected and actual opponent difficulty by round — ${t.participantName??t.participantId}`,n.appendChild(r);let i=document.createElement(`thead`),a=document.createElement(`tr`);for(let e of kB){let t=document.createElement(`th`);t.scope=`col`,t.textContent=e,a.appendChild(t)}i.appendChild(a),n.appendChild(i);let o=document.createElement(`tbody`);for(let e of jB(t)){let t=document.createElement(`tr`);e.forEach((e,n)=>{let r=document.createElement(n===0?`th`:`td`);n===0&&(r.scope=`row`),r.textContent=e,t.appendChild(r)}),o.appendChild(t)}return n.appendChild(o),e.appendChild(n),n}function NB(e){let t=e>>>0;return function(){t=t+1831565813>>>0;let e=t;return e=Math.imul(e^e>>>15,e|1),e^=e+Math.imul(e^e>>>7,e|61),((e^e>>>14)>>>0)/4294967296}}function PB(e,t){let n=NB(t),r=[...e];for(let e=r.length-1;e>0;e--){let t=Math.floor(n()*(e+1));[r[e],r[t]]=[r[t],r[e]]}return r}function FB(e,t){return t.filter((t,n)=>t===e[n]).length}function IB(e,t,n=32){if(e.length<2)return{items:[...e],seed:t,deranged:!1};let r;for(let i=0;i<n;i++){let n=t+i,a=PB(e,n),o=FB(e,a);if(o===0)return{items:a,seed:n,deranged:!0};(!r||o<r.fixed)&&(r={items:a,seed:n,fixed:o})}return r?{items:r.items,seed:r.seed,deranged:!1}:{items:PB(e,t),seed:t,deranged:!1}}function LB(e){let t=[];for(let n=2;n<e&&e%n===0;n*=2)t.push(n);return t}function RB(e){return e.toSorted((e,t)=>e.localeCompare(t,`en`)).join(`|`)}function zB(e,t){let n=[];for(let r=0;r<e.length;r+=t)n.push(RB(e.slice(r,r+t)));return n}function BB(e,t,n){let r=new Set(zB(t,n));return zB(e,n).filter(e=>r.has(e)).length}function VB(e){return Math.floor(e*e/2)}function HB({guess:e,actual:t}){if(e.length!==t.length||new Set(e).size!==e.length)throw Error(`scoreDrawOrder: guess must be a permutation of actual`);let n=new Map(t.map((e,t)=>[e,t]));if(e.some(e=>!n.has(e)))throw Error(`scoreDrawOrder: guess contains a participantId absent from actual`);let r=t.length,i=e.map((e,t)=>{let r=n.get(e)??-1;return{slotIndex:t,participantId:e,actualIndex:r,correct:r===t}}),a=i.filter(e=>e.correct).length,o=i.reduce((e,t)=>e+Math.abs(t.slotIndex-t.actualIndex),0),s=VB(r),c=s>0?1-o/s:1,l=LB(r).map(n=>({blockSize:n,matched:BB(e,t,n),total:r/n})),u=l.reduce((e,t)=>e+t.matched,0),d=l.reduce((e,t)=>e+t.total,0);return{slots:r,exact:a,displacement:o,maxDisplacement:s,proximity:c,levels:l,blocksMatched:u,blocksTotal:d,structureScore:Math.round(d>0?100*u/d:100*c),structurePerfect:d>0&&u===d,perfect:a===r,slotResults:i}}function UB({actualOrder:e,seed:t}){let n=IB(e,t);return{actualOrder:[...e],order:n.items,seed:n.seed,deranged:n.deranged,revealed:!1,score:null,moves:0}}function WB(e,t){return Number.isInteger(t)&&t>=0&&t<e.order.length}function GB(e,t,n){if(e.revealed||t===n||!WB(e,t)||!WB(e,n))return e;let r=[...e.order],[i]=r.splice(t,1);return r.splice(n,0,i),{...e,order:r,moves:e.moves+1}}function KB(e,t,n){if(e.revealed||t===n||!WB(e,t)||!WB(e,n))return e;let r=[...e.order];return[r[t],r[n]]=[r[n],r[t]],{...e,order:r,moves:e.moves+1}}function qB(e){return e.revealed?e:{...e,revealed:!0,score:HB({guess:e.order,actual:e.actualOrder})}}function JB(e,t){return UB({actualOrder:e.actualOrder,seed:t})}var YB=[.25,.75];function XB(e,t){if(!e.length)return null;let n=e.reduce((e,t)=>e+t.weight,0);if(!(n>0))return e[0].value;let r=t*n,i=0;for(let t of e)if(i+=t.weight,i>=r)return t.value;return e[e.length-1].value}function ZB(e,t=YB){let n=e.filter(e=>typeof e.elo==`number`).map(e=>({value:e.elo,weight:Math.max(0,e.probability)})).toSorted((e,t)=>e.value-t.value);if(!n.length)return null;let r=XB(n,t[0]),i=XB(n,t[1]);return r===null||i===null?null:{outerLow:n[0].value,outerHigh:n[n.length-1].value,innerLow:Math.min(r,i),innerHigh:Math.max(r,i)}}var QB={PROJECTED:`projected`,ACTUAL:`actual`},$B={HARD:`hard`,EASY:`easy`},eV=60;function tV(e,t){return t===QB.ACTUAL&&e.actual!==null&&e.actual!==void 0?{value:e.actual,fromActual:!0}:{value:e.projected.expected,fromActual:!1}}function nV({magnitude:e,bands:t=4,domainMax:n}){if(!(n>0)||!(e>0)||t<1)return{layers:[],clipped:!1};let r=n/t,i=[];for(let n=0;n<t;n++){let t=e-n*r;if(t<=0)break;i.push({bandIndex:n,fraction:Math.min(1,t/r)})}return{layers:i,clipped:e>n}}function rV(e,t){let n=e.flatMap(e=>e.points.map(e=>tV(e,t).value).filter(e=>e!==null).map(Math.abs));return n.length?Math.max(60,...n):60}function iV({point:e,ownElo:t,round:n}){if(t!==null&&n?.possibleOpponents?.length){let e=ZB(n.possibleOpponents);if(e)return{outerLow:e.outerLow-t,outerHigh:e.outerHigh-t,innerLow:e.innerLow-t,innerHigh:e.innerHigh-t,weighted:!0}}let{low:r,high:i}=e.projected;return r===null||i===null?null:{outerLow:r,outerHigh:i,innerLow:r,innerHigh:i,weighted:!1}}function aV(e,t){return{roundNumber:e,value:null,direction:null,layers:[],clipped:!1,fromActual:!1,reachProbability:t?.reachProbability??0,bye:!!t?.bye,resolved:!!t?.resolved,spread:null}}function oV(e){return e>=0?$B.HARD:$B.EASY}function sV({roundNumber:e,point:t,source:n,bands:r,domainMax:i,ownElo:a,round:o}){if(!t||t.bye)return aV(e,t);let{value:s,fromActual:c}=tV(t,n);if(s===null)return aV(e,t);let{layers:l,clipped:u}=nV({magnitude:Math.abs(s),bands:r,domainMax:i});return{roundNumber:e,value:s,direction:oV(s),layers:l,clipped:u,fromActual:c,reachProbability:t.reachProbability,bye:!1,resolved:t.resolved,spread:iV({point:t,ownElo:a,round:o})}}function cV(e){let t=new Map;for(let n of e?.projections??[])t.set(n.participantId,new Map(n.rounds.map(e=>[e.roundNumber,e])));return t}function lV({series:e,source:t=QB.PROJECTED,bands:n=4,domainMax:r,projection:i}){let a=[...new Set(e.flatMap(e=>e.points.map(e=>e.roundNumber)))].toSorted((e,t)=>e-t),o=r??rV(e,t),s=cV(i),c=e.map(e=>{let r=new Map(e.points.map(e=>[e.roundNumber,e])),i=s.get(e.participantId);return{participantId:e.participantId,participantName:e.participantName,drawPosition:e.drawPosition,cells:a.map(a=>sV({roundNumber:a,point:r.get(a),source:t,bands:n,domainMax:o,ownElo:e.rating?.elo??null,round:i?.get(a)}))}});return{rows:c,roundNumbers:a,domainMax:o,bands:n,clippedCells:c.flatMap(e=>e.cells).filter(e=>e.clipped).length}}var uV=`http://www.w3.org/2000/svg`,dV=`class`,fV=`path`,pV=0,mV=1.5;function hV(e,t){let n=document.createElementNS(uV,e);return t&&n.setAttribute(dV,t),n}function gV(e){let t=Math.round(e);return t>0?`+${t}`:String(t)}function _V(e){let t=e.layers.at(-1);return!t||!e.direction?`chc-ph__stop--none`:`chc-ph__stop--${e.direction}-${t.bandIndex}`}function vV(e,t,n,r){let i=hV(`linearGradient`);if(i.setAttribute(`id`,r),i.setAttribute(`gradientUnits`,`userSpaceOnUse`),i.setAttribute(`x1`,`0`),i.setAttribute(`y1`,`0`),i.setAttribute(`x2`,String(n)),i.setAttribute(`y2`,`0`),e.forEach((e,r)=>{let a=hV(`stop`,_V(e));a.setAttribute(`offset`,String(n>0?t(r)/n:0)),i.appendChild(a)}),e.length===1){let t=hV(`stop`,_V(e[0]));t.setAttribute(`offset`,`1`),i.appendChild(t)}return i}function yV(e,t,n){if(e.bye)return`${t}: bye`;if(e.value===null)return`${t}: no rated opponent`;let r=n?` ${n}-equivalent`:``,i=e.fromActual?`faced`:`projected`,a=e.spread?` · likely ${gV(e.spread.innerLow)} to ${gV(e.spread.innerHigh)}${e.spread.weighted?``:` (unweighted range)`}`:``,o=e.clipped?` · capped at the top band`:``;return`${t}: ${i} ${gV(e.value)}${r}${a}${o}`}function bV(e,t){let{width:n,height:r,domainMax:i,bands:a=4,positionBands:o=2,describe:s=!1,roundLabels:c,scaleName:l,showZeroLine:u=!0}=t,d=Math.max(1,e.cells.length),f=n/d,p=e=>(e+.5)*f,m=r/2,h=Math.max(1,r/2-mV),g=Math.max(1e-9,i/Math.max(1,a)*o),_=e=>m-Math.max(-1,Math.min(1,e/g))*h,v=hV(`svg`,`chc-ph__svg`);v.setAttribute(`width`,String(n)),v.setAttribute(`height`,String(r)),v.setAttribute(`viewBox`,`0 0 ${n} ${r}`),v.setAttribute(`role`,`img`),v.setAttribute(`aria-label`,t.ariaLabel??`Projected round-by-round path for ${e.participantName??e.participantId}`),pV+=1;let y=`chc-ph-grad-${pV}`,b=hV(`defs`);if(b.appendChild(vV(e.cells,p,n,y)),v.appendChild(b),u){let e=hV(`line`,`chc-ph__zero`);e.setAttribute(`x1`,`0`),e.setAttribute(`x2`,String(n)),e.setAttribute(`y1`,String(m)),e.setAttribute(`y2`,String(m)),v.appendChild(e)}let x=e.cells.map((e,t)=>({cell:e,index:t})),S=`url(#${y})`;for(let[e,t]of[[`outer`,`chc-ph__fan chc-ph__fan--outer`],[`inner`,`chc-ph__fan chc-ph__fan--inner`]]){let n=cL().curve(mL).defined(e=>e.cell.spread!==null).x(e=>p(e.index)).y0(t=>_(e===`outer`?t.cell.spread?.outerLow??0:t.cell.spread?.innerLow??0)).y1(t=>_(e===`outer`?t.cell.spread?.outerHigh??0:t.cell.spread?.innerHigh??0))(x);if(!n)continue;let r=hV(fV,t);r.setAttribute(`d`,n),r.setAttribute(`fill`,S),v.appendChild(r)}let C=sL().curve(mL).defined(e=>e.cell.value!==null).x(e=>p(e.index)).y(e=>_(e.cell.value??0))(x);if(C){let e=hV(fV,`chc-ph__trace`);e.setAttribute(`d`,C),e.setAttribute(`stroke`,S),v.appendChild(e)}return s&&e.cells.forEach((e,t)=>{let n=hV(`rect`,`chc-ph__hit`);n.setAttribute(`x`,String(t*f)),n.setAttribute(`y`,`0`),n.setAttribute(`width`,String(f)),n.setAttribute(`height`,String(r));let i=c?.(e.roundNumber,t,d)??`R${t+1}`,a=hV(`title`);a.textContent=yV(e,i,l),n.appendChild(a),v.appendChild(n)}),v}var xV=`http://www.w3.org/2000/svg`,SV=`class`,CV=`rect`,wV=`chc-ph__wall`,TV=2,EV=5,DV=2,OV=2;function kV(e,t){let n=document.createElementNS(xV,e);return t&&n.setAttribute(SV,t),n}function AV(e){let t=Math.round(e);return t>0?`+${t}`:String(t)}function jV(e,t,n){if(e.bye)return`${t}: bye`;if(e.value===null)return`${t}: no rated opponent`;let r=e.fromActual?`faced`:`projected`,i=n?` ${n}-equivalent`:``,a=e.clipped?` (capped at the top band)`:``;return`${t}: ${r} ${AV(e.value)}${i}${a}`}function MV({group:e,cell:t,columnWidth:n,height:r}){if(!t.layers.length){let t=kV(CV,`${wV} ${wV}--none`);t.setAttribute(`x`,`0`),t.setAttribute(`y`,String((r-OV)/2)),t.setAttribute(`width`,String(n)),t.setAttribute(`height`,String(OV)),e.appendChild(t);return}let i=t.direction===$B.HARD;for(let a of t.layers){let o=Math.max(1,a.fraction*r),s=kV(CV,`${wV} ${wV}--${t.direction}-${a.bandIndex}`);s.setAttribute(`x`,`0`),s.setAttribute(`y`,String(i?r-o:0)),s.setAttribute(`width`,String(n)),s.setAttribute(`height`,String(o)),o>=EV&&s.setAttribute(`rx`,String(DV)),e.appendChild(s)}}function NV(e,t){let{width:n,height:r,gap:i=TV,describe:a=!1,roundLabels:o,scaleName:s}=t,c=Math.max(1,e.cells.length),l=Math.max(1,(n-i*(c-1))/c),u=kV(`svg`,`chc-ph__svg`);return u.setAttribute(`width`,String(n)),u.setAttribute(`height`,String(r)),u.setAttribute(`viewBox`,`0 0 ${n} ${r}`),u.setAttribute(`role`,`img`),u.setAttribute(`aria-label`,t.ariaLabel??`Projected round-by-round path for ${e.participantName??e.participantId}`),e.cells.forEach((e,t)=>{let n=kV(`g`,`chc-ph__column`);if(n.setAttribute(`transform`,`translate(${t*(l+i)},0)`),MV({group:n,cell:e,columnWidth:l,height:r}),a){let r=o?.(e.roundNumber,t,c)??`R${t+1}`,i=kV(`title`);i.textContent=jV(e,r,s),n.appendChild(i)}u.appendChild(n)}),u}var PV=`http://www.w3.org/2000/svg`,FV=12,IV=2,LV={walls:[`playing up — wall rises from the baseline`,`playing down — wall hangs from the top`],ribbon:[`playing up — trace above the centre line`,`playing down — trace below the centre line`]},RV=[$B.HARD,$B.EASY];function zV(e,t){let n=document.createElement(e);return t&&(n.className=t),n}function BV(e,t,n=!1){let r=FV*t+(t-1)*IV,i=document.createElementNS(PV,`svg`);i.setAttribute(`class`,`chc-ph__swatch`),i.setAttribute(`width`,String(r)),i.setAttribute(`height`,String(FV)),i.setAttribute(`viewBox`,`0 0 ${r} ${FV}`),i.setAttribute(`aria-hidden`,`true`);for(let r=0;r<t;r++){let a=FV*((r+1)/t),o=n?a/2:a,s=document.createElementNS(PV,`rect`);s.setAttribute(`class`,`chc-ph__wall chc-ph__wall--${e}-${r}`),s.setAttribute(`x`,String(r*14));let c=e===$B.HARD,l=FV/2;s.setAttribute(`y`,String(n?c?l-o:l:c?FV-o:0)),s.setAttribute(`width`,String(FV)),s.setAttribute(`height`,String(o)),i.appendChild(s)}return i}function VV(e,t){return e===`ribbon`?`The line is the expected opponent; the shading is who could actually arrive — solid for the likely middle, faint for the full range. Deeper colour means a larger ${t} gap.`:`Deeper, darker bands mean a larger ${t} gap. Rows share one domain.`}function HV({bands:e,scaleName:t,note:n,variant:r}){let i=zV(`div`,`chc-ph__legend`),a=r===`ribbon`,o=LV[a?`ribbon`:`walls`];for(let[t,n]of RV.entries()){let r=zV(`div`,`chc-ph__legend-item`);r.appendChild(BV(n,e,a));let s=zV(`span`,`chc-ph__legend-label`);s.textContent=o[t],r.appendChild(s),i.appendChild(r)}let s=t?`${t}-equivalent rating`:`rating`,c=zV(`div`,`chc-ph__legend-note`);return c.textContent=n??VV(r,s),i.appendChild(c),i}var UV=`chc-ph`,WV=`chc-ph__row`,GV=520,KV=132,qV={walls:16,ribbon:28},JV=2,YV={DRAW:`draw`,DIFFICULTY:`difficulty`},XV={WALLS:`walls`,RIBBON:`ribbon`};function ZV(e,t){let n=document.createElement(e);return t&&(n.className=t),n}function QV(e,t){return t===YV.DIFFICULTY?gB(e):e.toSorted((e,t)=>(e.drawPosition??0)-(t.drawPosition??0))}function $V({roundNumbers:e,width:t,columnGap:n,labelWidth:r,roundLabels:i}){let a=ZV(`div`,`chc-ph__head`),o=ZV(`div`,`chc-ph__label`);o.style.width=`${r}px`,a.appendChild(o);let s=ZV(`div`,`chc-ph__rounds`);s.style.width=`${t}px`,s.style.gap=`${n}px`;for(let[t,n]of e.entries()){let r=ZV(`span`,`chc-ph__round-label`);r.textContent=i(n,t,e.length),s.appendChild(r)}return a.appendChild(s),a}function eH(e,t,n){e.classList.add(`is-clickable`),e.setAttribute(`role`,`button`),e.tabIndex=0,e.addEventListener(`click`,()=>n(t)),e.addEventListener(`keydown`,e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n(t))})}function tH(e,{variant:t,width:n,rowHeight:r,columnGap:i,roundLabels:a,scaleName:o,domainMax:s,bands:c}){return t===XV.RIBBON?bV(e,{width:n,height:r,domainMax:s,bands:c,positionBands:JV,describe:!0,roundLabels:a,scaleName:o}):NV(e,{width:n,height:r,gap:i,describe:!0,roundLabels:a,scaleName:o})}function nH({shown:e,ordered:t,dropped:n,domainMax:r,bands:i,clippedCells:a,order:o,variant:s,unweightedFan:c}){let l=ZV(`div`,`chc-ph__caption`),u=[`${e} paths · ${o===YV.DRAW?`draw order`:`hardest slot first`}`,`shared domain ±${Math.round(r)} · ${i} bands`];return s===XV.RIBBON&&u.push(`trace saturates past ${JV} of ${i} bands — colour carries the rest`),s===XV.RIBBON&&c&&u.push("fan is the unweighted 1%-threshold range — pass `projection` to weight it"),e<t&&u.push(`${t-e} of ${t} not shown`),n>0&&u.push(`${n} unrated omitted`),a>0&&u.push(`${a} walls capped at the top band`),l.textContent=u.join(` · `),l}function rH(e,t=[],n={}){let r=ZV(`div`,UV);e.appendChild(r);function i(e,t){r.replaceChildren();let{width:n=GV,variant:i=XV.WALLS,rowHeight:a=qV[i],rowGap:o=2,columnGap:s=2,bands:c,source:l=QB.PROJECTED,domainMax:u,showLabels:d=!0,showLegend:f=!0,showRoundHeader:p=!0,order:m=YV.DRAW,limit:h,scaleName:g,onSelect:_,projection:v,roundLabels:y=mz}=t,b=e.filter(e=>e.rating);if(!b.length){let e=ZV(`div`,`chc-ph__empty`);e.textContent=t.emptyMessage??`No rating data for this draw, so there is no pressure to plot.`,r.appendChild(e);return}let x=QV(b,m),S=h?x.slice(0,h):x,C=lV({series:S,source:l,bands:c,domainMax:u,projection:v}),w=d?t.labelWidth??KV:0;p&&r.appendChild($V({roundNumbers:C.roundNumbers,width:n,columnGap:s,labelWidth:w,roundLabels:y}));let T=ZV(`div`,`chc-ph__rows`);T.style.gap=`${o}px`;for(let[e,t]of C.rows.entries()){let r=S[e],o=ZV(`div`,WV);if(o.dataset.participantId=t.participantId,d){let e=ZV(`div`,`chc-ph__label`);e.style.width=`${w}px`,e.textContent=`${t.drawPosition?`${t.drawPosition}. `:``}${t.participantName??t.participantId}`,e.title=e.textContent,o.appendChild(e)}o.appendChild(tH(t,{variant:i,width:n,rowHeight:a,columnGap:s,roundLabels:y,scaleName:g,domainMax:C.domainMax,bands:C.bands})),_&&eH(o,r,_),T.appendChild(o)}r.appendChild(T),f&&r.appendChild(HV({bands:C.bands,scaleName:g,variant:i})),r.appendChild(nH({shown:S.length,ordered:x.length,dropped:e.length-b.length,domainMax:C.domainMax,bands:C.bands,clippedCells:C.clippedCells,order:m,variant:i,unweightedFan:C.rows.some(e=>e.cells.some(e=>e.spread&&!e.spread.weighted))}))}return i(t,n),{element:r,update:(e,t)=>i(e,{...n,...t}),destroy:()=>r.remove()}}var iH=`chc-dog`,aH=`chc-dog__row`,oH=`application/x-chc-draw-slot`,sH=`button`,cH=`is-drop-target`,lH=`New board dealt`,uH=460,dH={walls:20,ribbon:30},fH=20260831;function X(e,t){let n=document.createElement(e);return t&&(n.className=t),n}function pH(e,t){let n=document.createElement(sH);return n.type=sH,n.className=`chc-dog__button`,n.textContent=e,n.addEventListener(`click`,t),n}function mH(e,t){return e===2?`first-round pairs`:e===t/2?`halves`:e===t/4?`quarters`:`groups of ${e}`}function hH(e){let t=X(`div`,`chc-dog__score`),n=X(`div`,`chc-dog__score-headline`);n.textContent=`${e.structureScore}%`,t.appendChild(n);let r=X(`div`,`chc-dog__score-summary`);r.textContent=e.structurePerfect?`Every grouping in the real draw — you rebuilt the bracket.`:`${e.blocksMatched} of ${e.blocksTotal} real groupings recovered.`,t.appendChild(r);let i=X(`ul`,`chc-dog__score-levels`);for(let t of e.levels){let n=X(`li`);n.textContent=`${mH(t.blockSize,e.slots)}: ${t.matched}/${t.total}`,i.appendChild(n)}t.appendChild(i);let a=X(`div`,`chc-dog__score-exact`);a.textContent=`${e.exact}/${e.slots} rows in the exact slot.`,t.appendChild(a);let o=X(`div`,`chc-dog__score-note`);return o.textContent=`A draw sheet is mirror-symmetric — swapping two halves, two quarters or the two players in a pair gives the same bracket with different slot numbers. The headline counts groupings, which survive that; exact slots do not, so a low exact count beside a high headline means you had the draw right and the sheet flipped.`,t.appendChild(o),t}function gH(e,t=[],n={}){let r=X(`div`,iH);e.appendChild(r);let{width:i=uH,rowHeight:a=dH[n.variant??XV.WALLS],rowGap:o=2,columnGap:s=2,bands:c,variant:l=XV.WALLS,projection:u,scaleName:d,limit:f,roundLabels:p=mz,onComplete:m}=n,h=t.filter(e=>e.rating&&e.drawPosition!==void 0),g=t.length-h.length,_=h.toSorted((e,t)=>(e.drawPosition??0)-(t.drawPosition??0)),v=f?_.slice(0,f):_,y=lV({series:v,source:QB.PROJECTED,bands:c,projection:u}),b=new Map(y.rows.map(e=>[e.participantId,e])),x=new Map(v.map(e=>[e.participantId,e])),S=UB({actualOrder:v.map(e=>e.participantId),seed:n.seed??fH}),C=null,w=null,T=X(`div`,`chc-dog__live`);T.setAttribute(`aria-live`,`polite`);function E(e){T.textContent=e}function D(e,t){let n=e!==S;S=e,F(),t&&n&&E(t),S.revealed&&S.score&&m?.(S.score,S)}function O(e,t){let n=b.get(e),r=X(`div`,aH);r.dataset.slot=String(t),r.tabIndex=0,r.setAttribute(`role`,`listitem`),r.setAttribute(`aria-label`,`Slot ${t+1} of ${S.order.length}`);let o=X(`div`,`chc-dog__slot`);if(o.textContent=String(t+1),r.appendChild(o),n){let e=l===XV.RIBBON?bV(n,{width:i,height:a,domainMax:y.domainMax,bands:y.bands,describe:!1,ariaLabel:`Path in slot ${t+1}`}):NV(n,{width:i,height:a,gap:s,describe:!1,ariaLabel:`Path in slot ${t+1}`});r.appendChild(e)}if(S.revealed){let n=x.get(e),i=S.score?.slotResults[t],a=X(`div`,`chc-dog__reveal${i?.correct?` is-correct`:``}`),o=(i?.actualIndex??0)+1;a.textContent=`${n?.participantName??e} · really ${o}`,r.appendChild(a)}else r.draggable=!0,k(r,t),A(r,t);return r}function k(e,t){e.addEventListener(`dragstart`,n=>{C=t,e.classList.add(`is-dragging`),n.dataTransfer?.setData(oH,String(t)),n.dataTransfer&&(n.dataTransfer.effectAllowed=`move`)}),e.addEventListener(`dragend`,()=>{C=null,e.classList.remove(`is-dragging`)}),e.addEventListener(`dragover`,t=>{t.preventDefault(),t.dataTransfer&&(t.dataTransfer.dropEffect=`move`),e.classList.add(cH)}),e.addEventListener(`dragleave`,()=>e.classList.remove(cH)),e.addEventListener(`drop`,n=>{n.preventDefault(),e.classList.remove(cH);let r=n.dataTransfer?.getData(oH),i=r?Number.parseInt(r,10):C;i===null||Number.isNaN(i)||(w=t,D(GB(S,i,t),`Moved slot ${i+1} to slot ${t+1}`))})}function A(e,t){e.addEventListener(`keydown`,e=>{if(e.key!==`ArrowUp`&&e.key!==`ArrowDown`)return;let n=t+(e.key===`ArrowUp`?-1:1);n<0||n>=S.order.length||(e.preventDefault(),w=n,e.altKey||e.metaKey?D(KB(S,t,n),`Slot ${t+1} swapped with slot ${n+1}`):j(n))})}function j(e){r.querySelector(`.${aH}[data-slot="${e}"]`)?.focus()}function M(){let e=X(`div`,`chc-dog__toolbar`);S.revealed?e.appendChild(pH(`Play again`,()=>D(JB(S,S.seed+1),lH))):(e.appendChild(pH(`Check my order`,()=>D(qB(S)))),e.appendChild(pH(`Shuffle`,()=>D(JB(S,S.seed+1),lH))));let t=X(`span`,`chc-dog__meta`);return t.textContent=`puzzle #${S.seed} · ${S.order.length} paths · ${S.moves} moves`,e.appendChild(t),e}function N(){let e=X(`p`,`chc-dog__instructions`);return e.textContent=`These are the projected paths of every player in one draw, shuffled and unnamed. Drag them into the real draw order — or focus a row and hold Alt with the arrow keys. Players who meet in a round are each other’s opponent in that column, so `+(l===XV.RIBBON?`two traces that mirror each other about the centre line in the same column are probably a pair.`:`a deep-hard row and a pale-easy row of the same size in the same column are probably a pair.`),e}function P(){let e=X(`div`,`chc-dog__head`);e.appendChild(X(`div`,`chc-dog__slot-spacer`));let t=X(`div`,`chc-ph__rounds`);t.style.width=`${i}px`,t.style.gap=`${s}px`;for(let[e,n]of y.roundNumbers.entries()){let r=X(`span`,`chc-ph__round-label`);r.textContent=p(n,e,y.roundNumbers.length),t.appendChild(r)}return e.appendChild(t),e}function F(){if(r.replaceChildren(),!v.length){let e=X(`div`,`chc-ph__empty`);e.textContent=n.emptyMessage??`No rated draw to play — the game needs ratings and draw positions.`,r.appendChild(e);return}r.appendChild(N()),r.appendChild(M()),r.appendChild(P());let e=X(`div`,`chc-dog__rows`);e.setAttribute(`role`,`list`),e.style.gap=`${o}px`;for(let[t,n]of S.order.entries())e.appendChild(O(n,t));r.appendChild(e),r.appendChild(HV({bands:y.bands,scaleName:d,variant:l,note:`Deeper, darker bands mean a larger rating gap. Every path is on the same domain — that is what makes two rows comparable.`})),S.revealed&&S.score&&r.appendChild(hH(S.score));let t=X(`div`,`chc-ph__caption`),i=d?` ${d}-equivalent`:``,a=[`shared domain ±${Math.round(y.domainMax)}${i} · ${y.bands} bands`];S.deranged||a.push(`this deal left a row in its true slot`),g>0&&a.push(`${g} unrated omitted`),y.clippedCells>0&&a.push(`${y.clippedCells} walls capped at the top band`),t.textContent=a.join(` · `),r.appendChild(t),r.appendChild(T),w!==null&&(j(w),w=null)}return F(),{element:r,getState:()=>S,reshuffle:e=>D(JB(S,e??S.seed+1),lH),reveal:()=>D(qB(S)),destroy:()=>r.remove()}}var _H=`right`,vH=`font-medium`;function yH({target:e,button:t,stateChange:n}){let r=0,i=()=>(r+=1,`Item${r}`),a=document.createElement(`div`);t.class&&a.classList.add(t.class),a.classList.add(`dropdown`),t.id&&(a.id=t.id),t.align===_H&&a.classList.add(`is-right`);let o=e=>e.classList.contains(`is-active`),s=()=>{o(a)&&a.classList.remove(`is-active`)},c=e=>o(e)?(e.classList.remove(`is-active`),!1):(e.classList.add(`is-active`),!0);a.onmouseleave=s,a.onclick=()=>c(a);let l=document.createElement(`div`);l.classList.add(`dropdown-trigger`);let u=document.createElement(`button`);u.className=`button font-medium`,t.intent&&u.classList.add(t.intent),u.setAttribute(`aria-haspopup`,`true`);let d=document.createElement(`span`);U(t.onClick)&&(d.onclick=t.onClick),d.style.cssText=`margin-right: 1em`,d.innerHTML=t.label,u.appendChild(d);let f=document.createElement(`span`);U(t.onClick)&&(f.onclick=t.onClick),f.innerHTML=`
165
165
  <span class="icon is-small font-medium">
166
166
  <i class="fas fa-angle-down font-medium" aria-hidden="true"></i>