groove-dev 0.24.15 → 0.25.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/node_modules/@groove-dev/daemon/src/api.js +44 -14
- package/node_modules/@groove-dev/daemon/src/introducer.js +10 -0
- package/node_modules/@groove-dev/daemon/src/process.js +34 -7
- package/node_modules/@groove-dev/daemon/src/tokentracker.js +2 -1
- package/node_modules/@groove-dev/gui/dist/assets/{index-v1z73h9P.js → index-B8wkZgk8.js} +2 -2
- package/node_modules/@groove-dev/gui/dist/index.html +1 -1
- package/node_modules/@groove-dev/gui/src/stores/groove.js +5 -1
- package/node_modules/@groove-dev/gui/src/views/agents.jsx +8 -0
- package/package.json +1 -1
- package/packages/daemon/src/api.js +44 -14
- package/packages/daemon/src/introducer.js +10 -0
- package/packages/daemon/src/process.js +34 -7
- package/packages/daemon/src/tokentracker.js +2 -1
- package/packages/gui/dist/assets/{index-v1z73h9P.js → index-B8wkZgk8.js} +2 -2
- package/packages/gui/dist/index.html +1 -1
- package/packages/gui/src/stores/groove.js +5 -1
- package/packages/gui/src/views/agents.jsx +8 -0
|
@@ -26,7 +26,7 @@ Error generating stack: `+c.message+`
|
|
|
26
26
|
`),g=p.data.filter(b=>b.type==="tool_use").map(b=>{var S,Q,k;return`${b.name}: ${typeof b.input=="string"?b.input.slice(0,80):((S=b.input)==null?void 0:S.command)||((Q=b.input)==null?void 0:Q.path)||((k=b.input)==null?void 0:k.pattern)||JSON.stringify(b.input||"").slice(0,80)}`}).join(`
|
|
27
27
|
`)),p.contextUsage!==void 0||p.tokensUsed!==void 0){const b=n().agents.map(S=>{if(S.id!==m)return S;const Q={};return p.contextUsage!==void 0&&(Q.contextUsage=p.contextUsage),p.tokensUsed!==void 0&&(Q.tokensUsed=p.tokensUsed),{...S,...Q}});t({agents:b})}if((p.subtype==="assistant"||p.type==="result")&&x&&x.trim()){const b={...n().chatHistory};b[m]||(b[m]=[]);const S=[...b[m]],Q=S[S.length-1];Q&&Q.from==="agent"&&Date.now()-Q.timestamp<8e3&&p.subtype==="assistant"?S[S.length-1]={...Q,text:Q.text+`
|
|
28
28
|
|
|
29
|
-
`+x.trim(),timestamp:Date.now()}:S.push({from:"agent",text:x.trim(),timestamp:Date.now()}),b[m]=S.slice(-100),t({chatHistory:b}),vl("groove:chatHistory",b)}if(g&&g.trim()){const b={...n().activityLog};b[m]||(b[m]=[]),b[m]=[...b[m].slice(-200),{timestamp:Date.now(),text:g.trim(),type:p.type,subtype:"tool"}],t({activityLog:b}),vl("groove:activityLog",b)}break}case"agent:exit":{const m=n().agents.find(S=>S.id===o.agentId),p=(m==null?void 0:m.name)||o.agentId,x=o.status==="killed"||o.code===143||o.code===137,g=o.status==="completed"?`${p} completed`:x?`${p} stopped`:`${p} crashed (exit ${o.code})`,b=o.status==="completed"?"success":x?"info":"warning";n().addToast(b,g),(m==null?void 0:m.role)==="planner"&&o.status==="completed"&&setTimeout(()=>n().checkRecommendedTeam(),1e3);break}case"phase2:spawned":n().addToast("info",`QC agent ${o.name} auto-spawned`,"Auditing phase 1 work");break;case"phase2:failed":n().addToast("error","QC agent failed to spawn",o.error||"Unknown error");break;case"rotation:start":n().addToast("info",`Rotating ${o.agentName}...`);break;case"rotation:complete":{n().addToast("success",`Rotated ${o.agentName}`,`Saved ${o.tokensSaved} tokens`);const m=n().detailPanel;(m==null?void 0:m.type)==="agent"&&m.agentId===o.oldAgentId&&o.newAgentId&&t(p=>{var b,S;const x={...p.chatHistory},g={...p.tokenTimeline};return(b=x[o.oldAgentId])!=null&&b.length&&(x[o.newAgentId]=[...x[o.oldAgentId]]),(S=g[o.oldAgentId])!=null&&S.length&&(g[o.newAgentId]=[...g[o.oldAgentId]]),{chatHistory:x,tokenTimeline:g,detailPanel:{type:"agent",agentId:o.newAgentId}}});break}case"rotation:failed":n().addToast("error","Rotation failed",o.error);break;case"file:changed":{const m=n().editorRecentSaves[o.path];if(m&&Date.now()-m<2e3)break;t(p=>({editorChangedFiles:{...p.editorChangedFiles,[o.path]:o.timestamp}}));break}case"team:created":case"team:deleted":case"team:updated":n().fetchTeams();break;case"approval:request":t(m=>({pendingApprovals:[...m.pendingApprovals,o.data]})),n().addToast("warning",`Approval needed: ${((u=o.data)==null?void 0:u.agentName)||"agent"}`,(O=(d=o.data)==null?void 0:d.action)==null?void 0:O.description);break;case"approval:resolved":{const m=o.data;t(p=>({pendingApprovals:p.pendingApprovals.filter(x=>x.id!==m.id),resolvedApprovals:[m,...p.resolvedApprovals].slice(0,200)}));break}case"conflict:detected":n().addToast("error",`Scope conflict: ${o.agentName||"agent"}`,o.filePath?`File: ${o.filePath}`:void 0);break;case"qc:activated":n().addToast("info","QC agent activated",`${o.agentCount||"4+"} agents running`);break;case"journalist:cycle":t({journalistStatus:o.data||null});break;case"schedule:execute":n().addToast("info",`Scheduled agent spawned: ${o.name||o.role||"agent"}`);break;case"gateway:status":t({gateways:o.data||[]});break}},s.onclose=()=>{t({connected:!1,hydrated:!1,ws:null,daemonHost:null,tunneled:!1}),setTimeout(()=>n().connect(),2e3)},s.onerror=()=>s.close()},setActiveView(s){t({activeView:s})},async fetchTeams(){try{const s=await ee.get("/teams"),l=s.teams||[],o=s.defaultTeamId,{activeTeamId:u}=n(),O=l.map(m=>m.id).includes(u)?u:o;t({teams:l,activeTeamId:O}),O&&localStorage.setItem("groove:activeTeamId",O)}catch{}},switchTeam(s){t({activeTeamId:s,detailPanel:null}),localStorage.setItem("groove:activeTeamId",s)},async createTeam(s,l){try{const o={name:s};l&&(o.workingDir=l);const u=await ee.post("/teams",o);return t({activeTeamId:u.id}),localStorage.setItem("groove:activeTeamId",u.id),n().addToast("success",`Team "${s}" created`),u}catch(o){throw n().addToast("error","Failed to create team",o.message),o}},async deleteTeam(s){const l=n().teams.find(o=>o.id===s);if(l!=null&&l.isDefault){n().addToast("warning","Cannot delete the default team");return}try{await ee.delete(`/teams/${s}`),n().addToast("info",`Team "${l==null?void 0:l.name}" deleted`)}catch(o){n().addToast("error","Failed to delete team",o.message)}},async renameTeam(s,l){try{const o=await ee.patch(`/teams/${s}`,{name:l});return t(u=>({teams:u.teams.map(d=>d.id===s?o:d)})),o}catch(o){throw n().addToast("error","Failed to rename team",o.message),o}},openDetail(s){t({detailPanel:s})},closeDetail(){t({detailPanel:null})},selectAgent(s){t({detailPanel:{type:"agent",agentId:s}})},clearSelection(){t({detailPanel:null})},toggleCommandPalette(){t(s=>({commandPaletteOpen:!s.commandPaletteOpen}))},setDetailPanelWidth(s){t({detailPanelWidth:s}),localStorage.setItem("groove:detailWidth",String(s))},setTerminalVisible(s){t({terminalVisible:s}),localStorage.setItem("groove:terminalVisible",String(s))},setTerminalHeight(s){t({terminalHeight:s}),localStorage.setItem("groove:terminalHeight",String(s))},setTerminalFullHeight(s){t({terminalFullHeight:s})},addToast(s,l,o){const u=++aw;t(d=>({toasts:[...d.toasts,{id:u,type:s,message:l,detail:o}]}))},removeToast(s){t(l=>({toasts:l.toasts.filter(o=>o.id!==s)}))},async checkMarketplaceAuth(){try{const s=await ee.get("/auth/status");t({marketplaceAuthenticated:s.authenticated||!1,marketplaceUser:s.user||null})}catch{t({marketplaceAuthenticated:!1,marketplaceUser:null})}},async marketplaceLogin(){try{const s=await ee.get("/auth/login-url");s.url&&window.open(s.url,"_blank");const l=setInterval(async()=>{var o,u;try{const d=await ee.get("/auth/status");d.authenticated&&(clearInterval(l),t({marketplaceAuthenticated:!0,marketplaceUser:d.user}),n().addToast("success",`Signed in as ${((o=d.user)==null?void 0:o.displayName)||((u=d.user)==null?void 0:u.id)||"user"}`))}catch{}},2e3);setTimeout(()=>clearInterval(l),3e5)}catch(s){n().addToast("error","Login failed",s.message)}},async marketplaceLogout(){try{await ee.post("/auth/logout"),t({marketplaceAuthenticated:!1,marketplaceUser:null}),n().addToast("info","Signed out of marketplace")}catch(s){n().addToast("error","Logout failed",s.message)}},async marketplaceCheckout(s){try{const l=await ee.post("/auth/checkout",{skillId:s});return l.url&&window.open(l.url,"_blank"),l}catch(l){throw n().addToast("error","Checkout failed",l.message),l}},async fetchApprovals(){try{const s=await ee.get("/approvals");t({pendingApprovals:s.pending||[],resolvedApprovals:s.resolved||[]})}catch{}},async approveRequest(s){try{await ee.post(`/approvals/${s}/approve`),t(l=>({pendingApprovals:l.pendingApprovals.filter(o=>o.id!==s)})),n().addToast("success","Approved")}catch(l){n().addToast("error","Approve failed",l.message)}},async rejectRequest(s,l=""){try{await ee.post(`/approvals/${s}/reject`,{reason:l}),t(o=>({pendingApprovals:o.pendingApprovals.filter(u=>u.id!==s)})),n().addToast("info","Rejected")}catch(o){n().addToast("error","Reject failed",o.message)}},async checkRecommendedTeam(){var s;try{const l=await ee.get("/recommended-team");l&&((s=l.agents)!=null&&s.length)?t({recommendedTeam:l}):t({recommendedTeam:null})}catch{t({recommendedTeam:null})}},async launchRecommendedTeam(){try{t({recommendedTeam:null}),n().addToast("info","Launching team...");const s=await ee.post("/recommended-team/launch");return n().addToast("success",`Launched ${s.launched} agents`,s.phase2Pending?`${s.phase2Pending} QC agents queued`:void 0),ee.post("/cleanup").catch(()=>{}),s}catch(s){throw n().addToast("error","Launch failed",s.message),s}},async fetchJournalist(){try{const s=await ee.get("/journalist");return t({journalistStatus:s}),s}catch{return null}},async triggerJournalistCycle(){try{const s=await ee.post("/journalist/cycle");return n().addToast("success","Synthesis cycle triggered"),t({journalistStatus:s}),s}catch(s){throw n().addToast("error","Synthesis failed",s.message),s}},async spawnAgent(s){try{const l=n().activeTeamId,o=await ee.post("/agents",{...s,teamId:l});return n().addToast("success",`Spawned ${o.name}`),o}catch(l){throw n().addToast("error","Spawn failed",l.message),l}},async killAgent(s,l=!1){try{await ee.delete(`/agents/${s}?purge=${l}`)}catch(o){n().addToast("error","Kill failed",o.message)}},async rotateAgent(s){try{return await ee.post(`/agents/${s}/rotate`)}catch(l){throw n().addToast("error","Rotation failed",l.message),l}},async fetchProviders(){return ee.get("/providers")},addChatMessage(s,l,o,u=!1){t(d=>{const O={...d.chatHistory};return O[s]||(O[s]=[]),O[s]=[...O[s].slice(-100),{from:l,text:o,timestamp:Date.now(),isQuery:u}],vl("groove:chatHistory",O),{chatHistory:O}})},async instructAgent(s,l){var d,O;const o=n().agents.find(m=>m.id===s);if(o&&(o.status==="running"||o.status==="starting")){n().addChatMessage(s,"user",l,!1);try{const m=await ee.post(`/agents/${s}/query`,{message:l});return n().addChatMessage(s,"agent",m.response),m}catch(m){throw n().addChatMessage(s,"system",`failed: ${m.message}`),m}}n().addChatMessage(s,"user",l,!1);try{const m=await ee.post(`/agents/${s}/instruct`,{message:l});for(const p of["chatHistory","activityLog","tokenTimeline"]){const x=n()[p][s];x!=null&&x.length&&t(g=>({[p]:{...g[p],[m.id]:[...x]}}))}return(d=n().chatHistory[s])!=null&&d.length&&vl("groove:chatHistory",n().chatHistory),(O=n().activityLog[s])!=null&&O.length&&vl("groove:activityLog",n().activityLog),n().selectAgent(m.id),m}catch(m){throw n().addChatMessage(s,"system",`failed: ${m.message}`),m}},async queryAgent(s,l){n().addChatMessage(s,"user",l,!0);try{const o=await ee.post(`/agents/${s}/query`,{message:l});return n().addChatMessage(s,"agent",o.response),o}catch(o){throw n().addChatMessage(s,"system",`query failed: ${o.message}`),o}},async openFile(s){var u;if(n().editorFiles[s]||n().editorOpenTabs.includes(s)){t(d=>({editorActiveFile:s,editorOpenTabs:d.editorOpenTabs.includes(s)?d.editorOpenTabs:[...d.editorOpenTabs,s]}));return}const l=(u=s.split(".").pop())==null?void 0:u.toLowerCase();if(["png","jpg","jpeg","gif","svg","webp","ico","bmp","avif","mp4","webm","mov","avi","mkv","ogv"].includes(l)){t(d=>({editorActiveFile:s,editorOpenTabs:[...d.editorOpenTabs,s]}));return}try{const d=await ee.get(`/files/read?path=${encodeURIComponent(s)}`);if(d.binary){n().addToast("warning","Binary file — cannot open");return}t(m=>({editorFiles:{...m.editorFiles,[s]:{content:d.content,originalContent:d.content,language:d.language,loadedAt:Date.now()}},editorActiveFile:s,editorOpenTabs:m.editorOpenTabs.includes(s)?m.editorOpenTabs:[...m.editorOpenTabs,s]}));const O=n().ws;(O==null?void 0:O.readyState)===1&&O.send(JSON.stringify({type:"editor:watch",path:s}))}catch(d){n().addToast("error","Failed to open file",d.message)}},closeFile(s){t(o=>{const u=o.editorOpenTabs.filter(p=>p!==s),d={...o.editorFiles};delete d[s];const O={...o.editorChangedFiles};delete O[s];let m=o.editorActiveFile;if(m===s){const p=o.editorOpenTabs.indexOf(s);m=u[Math.min(p,u.length-1)]||null}return{editorOpenTabs:u,editorFiles:d,editorChangedFiles:O,editorActiveFile:m}});const l=n().ws;(l==null?void 0:l.readyState)===1&&l.send(JSON.stringify({type:"editor:unwatch",path:s}))},setActiveFile(s){t({editorActiveFile:s})},updateFileContent(s,l){t(o=>({editorFiles:{...o.editorFiles,[s]:{...o.editorFiles[s],content:l}}}))},async saveFile(s){const l=n().editorFiles[s];if(l)try{await ee.post("/files/write",{path:s,content:l.content}),t(o=>({editorFiles:{...o.editorFiles,[s]:{...o.editorFiles[s],originalContent:l.content}},editorChangedFiles:(()=>{const u={...o.editorChangedFiles};return delete u[s],u})(),editorRecentSaves:{...o.editorRecentSaves,[s]:Date.now()}})),n().addToast("success","File saved")}catch(o){n().addToast("error","Save failed",o.message)}},async reloadFile(s){try{const l=await ee.get(`/files/read?path=${encodeURIComponent(s)}`);if(l.binary)return;t(o=>({editorFiles:{...o.editorFiles,[s]:{content:l.content,originalContent:l.content,language:l.language,loadedAt:Date.now()}},editorChangedFiles:(()=>{const u={...o.editorChangedFiles};return delete u[s],u})()}))}catch{}},dismissFileChange(s){t(l=>{const o={...l.editorChangedFiles};return delete o[s],{editorChangedFiles:o}})},async fetchTreeDir(s){try{const l=await ee.get(`/files/tree?path=${encodeURIComponent(s)}`);t(o=>({editorTreeCache:{...o.editorTreeCache,[s]:l.entries}}))}catch{}},async createFile(s){try{await ee.post("/files/create",{path:s});const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),n().addToast("success","File created"),!0}catch(l){return n().addToast("error","Create failed",l.message),!1}},async createDir(s){try{await ee.post("/files/mkdir",{path:s});const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),n().addToast("success","Folder created"),!0}catch(l){return n().addToast("error","Create failed",l.message),!1}},async deleteFile(s){try{await ee.delete(`/files/delete?path=${encodeURIComponent(s)}`),n().editorOpenTabs.includes(s)&&n().closeFile(s);const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),t(o=>{const u={...o.editorTreeCache};return delete u[s],{editorTreeCache:u}}),n().addToast("success","Deleted"),!0}catch(l){return n().addToast("error","Delete failed",l.message),!1}},async renameFile(s,l){try{await ee.post("/files/rename",{oldPath:s,newPath:l}),t(d=>{const O=d.editorOpenTabs.map(x=>x===s?l:x),m={...d.editorFiles};m[s]&&(m[l]=m[s],delete m[s]);const p=d.editorActiveFile===s?l:d.editorActiveFile;return{editorOpenTabs:O,editorFiles:m,editorActiveFile:p}});const o=s.includes("/")?s.split("/").slice(0,-1).join("/"):"",u=l.includes("/")?l.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(o),u!==o&&await n().fetchTreeDir(u),n().addToast("success","Renamed"),!0}catch(o){return n().addToast("error","Rename failed",o.message),!1}}}));function nw(t){v.useEffect(()=>{function n(s){for(const l of t){const o=l.meta?s.metaKey||s.ctrlKey:!0,u=l.shift?s.shiftKey:!s.shiftKey;if(s.key.toLowerCase()===l.key.toLowerCase()&&o&&u){s.preventDefault(),l.handler();return}}}return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[t])}function Ee(t,n,{checkForDefaultPrevented:s=!0}={}){return function(o){if(t==null||t(o),s===!1||!o.defaultPrevented)return n==null?void 0:n(o)}}function $g(t,n){if(typeof t=="function")return t(n);t!=null&&(t.current=n)}function T0(...t){return n=>{let s=!1;const l=t.map(o=>{const u=$g(o,n);return!s&&typeof u=="function"&&(s=!0),u});if(s)return()=>{for(let o=0;o<l.length;o++){const u=l[o];typeof u=="function"?u():$g(t[o],null)}}}}function it(...t){return v.useCallback(T0(...t),t)}function sw(t,n){const s=v.createContext(n),l=u=>{const{children:d,...O}=u,m=v.useMemo(()=>O,Object.values(O));return i.jsx(s.Provider,{value:m,children:d})};l.displayName=t+"Provider";function o(u){const d=v.useContext(s);if(d)return d;if(n!==void 0)return n;throw new Error(`\`${u}\` must be used within \`${t}\``)}return[l,o]}function Ns(t,n=[]){let s=[];function l(u,d){const O=v.createContext(d),m=s.length;s=[...s,d];const p=g=>{var j;const{scope:b,children:S,...Q}=g,k=((j=b==null?void 0:b[t])==null?void 0:j[m])||O,T=v.useMemo(()=>Q,Object.values(Q));return i.jsx(k.Provider,{value:T,children:S})};p.displayName=u+"Provider";function x(g,b){var k;const S=((k=b==null?void 0:b[t])==null?void 0:k[m])||O,Q=v.useContext(S);if(Q)return Q;if(d!==void 0)return d;throw new Error(`\`${g}\` must be used within \`${u}\``)}return[p,x]}const o=()=>{const u=s.map(d=>v.createContext(d));return function(O){const m=(O==null?void 0:O[t])||u;return v.useMemo(()=>({[`__scope${t}`]:{...O,[t]:m}}),[O,m])}};return o.scopeName=t,[l,lw(o,...n)]}function lw(...t){const n=t[0];if(t.length===1)return n;const s=()=>{const l=t.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(u){const d=l.reduce((O,{useScope:m,scopeName:p})=>{const g=m(u)[`__scope${p}`];return{...O,...g}},{});return v.useMemo(()=>({[`__scope${n.scopeName}`]:d}),[d])}};return s.scopeName=n.scopeName,s}function ec(t){const n=rw(t),s=v.forwardRef((l,o)=>{const{children:u,...d}=l,O=v.Children.toArray(u),m=O.find(ow);if(m){const p=m.props.children,x=O.map(g=>g===m?v.Children.count(p)>1?v.Children.only(null):v.isValidElement(p)?p.props.children:null:g);return i.jsx(n,{...d,ref:o,children:v.isValidElement(p)?v.cloneElement(p,void 0,x):null})}return i.jsx(n,{...d,ref:o,children:u})});return s.displayName=`${t}.Slot`,s}function rw(t){const n=v.forwardRef((s,l)=>{const{children:o,...u}=s;if(v.isValidElement(o)){const d=uw(o),O=cw(u,o.props);return o.type!==v.Fragment&&(O.ref=l?T0(l,d):d),v.cloneElement(o,O)}return v.Children.count(o)>1?v.Children.only(null):null});return n.displayName=`${t}.SlotClone`,n}var P0=Symbol("radix.slottable");function iw(t){const n=({children:s})=>i.jsx(i.Fragment,{children:s});return n.displayName=`${t}.Slottable`,n.__radixId=P0,n}function ow(t){return v.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===P0}function cw(t,n){const s={...n};for(const l in n){const o=t[l],u=n[l];/^on[A-Z]/.test(l)?o&&u?s[l]=(...O)=>{const m=u(...O);return o(...O),m}:o&&(s[l]=o):l==="style"?s[l]={...o,...u}:l==="className"&&(s[l]=[o,u].filter(Boolean).join(" "))}return{...t,...s}}function uw(t){var l,o;let n=(l=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:l.get,s=n&&"isReactWarning"in n&&n.isReactWarning;return s?t.ref:(n=(o=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:o.get,s=n&&"isReactWarning"in n&&n.isReactWarning,s?t.props.ref:t.props.ref||t.ref)}var dw=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Be=dw.reduce((t,n)=>{const s=ec(`Primitive.${n}`),l=v.forwardRef((o,u)=>{const{asChild:d,...O}=o,m=d?s:n;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(m,{...O,ref:u})});return l.displayName=`Primitive.${n}`,{...t,[n]:l}},{});function Ow(t,n){t&&v0.flushSync(()=>t.dispatchEvent(n))}function zt(t){const n=v.useRef(t);return v.useEffect(()=>{n.current=t}),v.useMemo(()=>(...s)=>{var l;return(l=n.current)==null?void 0:l.call(n,...s)},[])}function fw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t);v.useEffect(()=>{const l=o=>{o.key==="Escape"&&s(o)};return n.addEventListener("keydown",l,{capture:!0}),()=>n.removeEventListener("keydown",l,{capture:!0})},[s,n])}var hw="DismissableLayer",ef="dismissableLayer.update",mw="dismissableLayer.pointerDownOutside",pw="dismissableLayer.focusOutside",Tg,N0=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),$f=v.forwardRef((t,n)=>{const{disableOutsidePointerEvents:s=!1,onEscapeKeyDown:l,onPointerDownOutside:o,onFocusOutside:u,onInteractOutside:d,onDismiss:O,...m}=t,p=v.useContext(N0),[x,g]=v.useState(null),b=(x==null?void 0:x.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,S]=v.useState({}),Q=it(n,X=>g(X)),k=Array.from(p.layers),[T]=[...p.layersWithOutsidePointerEventsDisabled].slice(-1),j=k.indexOf(T),P=x?k.indexOf(x):-1,N=p.layersWithOutsidePointerEventsDisabled.size>0,A=P>=j,U=bw(X=>{const $=X.target,W=[...p.branches].some(E=>E.contains($));!A||W||(o==null||o(X),d==null||d(X),X.defaultPrevented||O==null||O())},b),C=vw(X=>{const $=X.target;[...p.branches].some(E=>E.contains($))||(u==null||u(X),d==null||d(X),X.defaultPrevented||O==null||O())},b);return fw(X=>{P===p.layers.size-1&&(l==null||l(X),!X.defaultPrevented&&O&&(X.preventDefault(),O()))},b),v.useEffect(()=>{if(x)return s&&(p.layersWithOutsidePointerEventsDisabled.size===0&&(Tg=b.body.style.pointerEvents,b.body.style.pointerEvents="none"),p.layersWithOutsidePointerEventsDisabled.add(x)),p.layers.add(x),Pg(),()=>{s&&p.layersWithOutsidePointerEventsDisabled.size===1&&(b.body.style.pointerEvents=Tg)}},[x,b,s,p]),v.useEffect(()=>()=>{x&&(p.layers.delete(x),p.layersWithOutsidePointerEventsDisabled.delete(x),Pg())},[x,p]),v.useEffect(()=>{const X=()=>S({});return document.addEventListener(ef,X),()=>document.removeEventListener(ef,X)},[]),i.jsx(Be.div,{...m,ref:Q,style:{pointerEvents:N?A?"auto":"none":void 0,...t.style},onFocusCapture:Ee(t.onFocusCapture,C.onFocusCapture),onBlurCapture:Ee(t.onBlurCapture,C.onBlurCapture),onPointerDownCapture:Ee(t.onPointerDownCapture,U.onPointerDownCapture)})});$f.displayName=hw;var xw="DismissableLayerBranch",gw=v.forwardRef((t,n)=>{const s=v.useContext(N0),l=v.useRef(null),o=it(n,l);return v.useEffect(()=>{const u=l.current;if(u)return s.branches.add(u),()=>{s.branches.delete(u)}},[s.branches]),i.jsx(Be.div,{...t,ref:o})});gw.displayName=xw;function bw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t),l=v.useRef(!1),o=v.useRef(()=>{});return v.useEffect(()=>{const u=O=>{if(O.target&&!l.current){let m=function(){z0(mw,s,p,{discrete:!0})};const p={originalEvent:O};O.pointerType==="touch"?(n.removeEventListener("click",o.current),o.current=m,n.addEventListener("click",o.current,{once:!0})):m()}else n.removeEventListener("click",o.current);l.current=!1},d=window.setTimeout(()=>{n.addEventListener("pointerdown",u)},0);return()=>{window.clearTimeout(d),n.removeEventListener("pointerdown",u),n.removeEventListener("click",o.current)}},[n,s]),{onPointerDownCapture:()=>l.current=!0}}function vw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t),l=v.useRef(!1);return v.useEffect(()=>{const o=u=>{u.target&&!l.current&&z0(pw,s,{originalEvent:u},{discrete:!1})};return n.addEventListener("focusin",o),()=>n.removeEventListener("focusin",o)},[n,s]),{onFocusCapture:()=>l.current=!0,onBlurCapture:()=>l.current=!1}}function Pg(){const t=new CustomEvent(ef);document.dispatchEvent(t)}function z0(t,n,s,{discrete:l}){const o=s.originalEvent.target,u=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:s});n&&o.addEventListener(t,n,{once:!0}),l?Ow(o,u):o.dispatchEvent(u)}var ln=globalThis!=null&&globalThis.document?v.useLayoutEffect:()=>{},yw=x0[" useId ".trim().toString()]||(()=>{}),Sw=0;function Ql(t){const[n,s]=v.useState(yw());return ln(()=>{s(l=>l??String(Sw++))},[t]),t||(n?`radix-${n}`:"")}const Qw=["top","right","bottom","left"],Bn=Math.min,Wt=Math.max,tc=Math.round,zo=Math.floor,$a=t=>({x:t,y:t}),jw={left:"right",right:"left",bottom:"top",top:"bottom"};function tf(t,n,s){return Wt(t,Bn(n,s))}function rn(t,n){return typeof t=="function"?t(n):t}function on(t){return t.split("-")[0]}function Zl(t){return t.split("-")[1]}function Tf(t){return t==="x"?"y":"x"}function Pf(t){return t==="y"?"height":"width"}function ka(t){const n=t[0];return n==="t"||n==="b"?"y":"x"}function Nf(t){return Tf(ka(t))}function ww(t,n,s){s===void 0&&(s=!1);const l=Zl(t),o=Nf(t),u=Pf(o);let d=o==="x"?l===(s?"end":"start")?"right":"left":l==="start"?"bottom":"top";return n.reference[u]>n.floating[u]&&(d=ac(d)),[d,ac(d)]}function kw(t){const n=ac(t);return[af(t),n,af(n)]}function af(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}const Ng=["left","right"],zg=["right","left"],$w=["top","bottom"],Tw=["bottom","top"];function Pw(t,n,s){switch(t){case"top":case"bottom":return s?n?zg:Ng:n?Ng:zg;case"left":case"right":return n?$w:Tw;default:return[]}}function Nw(t,n,s,l){const o=Zl(t);let u=Pw(on(t),s==="start",l);return o&&(u=u.map(d=>d+"-"+o),n&&(u=u.concat(u.map(af)))),u}function ac(t){const n=on(t);return jw[n]+t.slice(n.length)}function zw(t){return{top:0,right:0,bottom:0,left:0,...t}}function R0(t){return typeof t!="number"?zw(t):{top:t,right:t,bottom:t,left:t}}function nc(t){const{x:n,y:s,width:l,height:o}=t;return{width:l,height:o,top:s,left:n,right:n+l,bottom:s+o,x:n,y:s}}function Rg(t,n,s){let{reference:l,floating:o}=t;const u=ka(n),d=Nf(n),O=Pf(d),m=on(n),p=u==="y",x=l.x+l.width/2-o.width/2,g=l.y+l.height/2-o.height/2,b=l[O]/2-o[O]/2;let S;switch(m){case"top":S={x,y:l.y-o.height};break;case"bottom":S={x,y:l.y+l.height};break;case"right":S={x:l.x+l.width,y:g};break;case"left":S={x:l.x-o.width,y:g};break;default:S={x:l.x,y:l.y}}switch(Zl(n)){case"start":S[d]-=b*(s&&p?-1:1);break;case"end":S[d]+=b*(s&&p?-1:1);break}return S}async function Rw(t,n){var s;n===void 0&&(n={});const{x:l,y:o,platform:u,rects:d,elements:O,strategy:m}=t,{boundary:p="clippingAncestors",rootBoundary:x="viewport",elementContext:g="floating",altBoundary:b=!1,padding:S=0}=rn(n,t),Q=R0(S),T=O[b?g==="floating"?"reference":"floating":g],j=nc(await u.getClippingRect({element:(s=await(u.isElement==null?void 0:u.isElement(T)))==null||s?T:T.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(O.floating)),boundary:p,rootBoundary:x,strategy:m})),P=g==="floating"?{x:l,y:o,width:d.floating.width,height:d.floating.height}:d.reference,N=await(u.getOffsetParent==null?void 0:u.getOffsetParent(O.floating)),A=await(u.isElement==null?void 0:u.isElement(N))?await(u.getScale==null?void 0:u.getScale(N))||{x:1,y:1}:{x:1,y:1},U=nc(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:O,rect:P,offsetParent:N,strategy:m}):P);return{top:(j.top-U.top+Q.top)/A.y,bottom:(U.bottom-j.bottom+Q.bottom)/A.y,left:(j.left-U.left+Q.left)/A.x,right:(U.right-j.right+Q.right)/A.x}}const Cw=50,Xw=async(t,n,s)=>{const{placement:l="bottom",strategy:o="absolute",middleware:u=[],platform:d}=s,O=d.detectOverflow?d:{...d,detectOverflow:Rw},m=await(d.isRTL==null?void 0:d.isRTL(n));let p=await d.getElementRects({reference:t,floating:n,strategy:o}),{x,y:g}=Rg(p,l,m),b=l,S=0;const Q={};for(let k=0;k<u.length;k++){const T=u[k];if(!T)continue;const{name:j,fn:P}=T,{x:N,y:A,data:U,reset:C}=await P({x,y:g,initialPlacement:l,placement:b,strategy:o,middlewareData:Q,rects:p,platform:O,elements:{reference:t,floating:n}});x=N??x,g=A??g,Q[j]={...Q[j],...U},C&&S<Cw&&(S++,typeof C=="object"&&(C.placement&&(b=C.placement),C.rects&&(p=C.rects===!0?await d.getElementRects({reference:t,floating:n,strategy:o}):C.rects),{x,y:g}=Rg(p,b,m)),k=-1)}return{x,y:g,placement:b,strategy:o,middlewareData:Q}},_w=t=>({name:"arrow",options:t,async fn(n){const{x:s,y:l,placement:o,rects:u,platform:d,elements:O,middlewareData:m}=n,{element:p,padding:x=0}=rn(t,n)||{};if(p==null)return{};const g=R0(x),b={x:s,y:l},S=Nf(o),Q=Pf(S),k=await d.getDimensions(p),T=S==="y",j=T?"top":"left",P=T?"bottom":"right",N=T?"clientHeight":"clientWidth",A=u.reference[Q]+u.reference[S]-b[S]-u.floating[Q],U=b[S]-u.reference[S],C=await(d.getOffsetParent==null?void 0:d.getOffsetParent(p));let X=C?C[N]:0;(!X||!await(d.isElement==null?void 0:d.isElement(C)))&&(X=O.floating[N]||u.floating[Q]);const $=A/2-U/2,W=X/2-k[Q]/2-1,E=Bn(g[j],W),ne=Bn(g[P],W),re=E,xe=X-k[Q]-ne,ie=X/2-k[Q]/2+$,J=tf(re,ie,xe),z=!m.arrow&&Zl(o)!=null&&ie!==J&&u.reference[Q]/2-(ie<re?E:ne)-k[Q]/2<0,B=z?ie<re?ie-re:ie-xe:0;return{[S]:b[S]+B,data:{[S]:J,centerOffset:ie-J-B,...z&&{alignmentOffset:B}},reset:z}}}),Zw=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(n){var s,l;const{placement:o,middlewareData:u,rects:d,initialPlacement:O,platform:m,elements:p}=n,{mainAxis:x=!0,crossAxis:g=!0,fallbackPlacements:b,fallbackStrategy:S="bestFit",fallbackAxisSideDirection:Q="none",flipAlignment:k=!0,...T}=rn(t,n);if((s=u.arrow)!=null&&s.alignmentOffset)return{};const j=on(o),P=ka(O),N=on(O)===O,A=await(m.isRTL==null?void 0:m.isRTL(p.floating)),U=b||(N||!k?[ac(O)]:kw(O)),C=Q!=="none";!b&&C&&U.push(...Nw(O,k,Q,A));const X=[O,...U],$=await m.detectOverflow(n,T),W=[];let E=((l=u.flip)==null?void 0:l.overflows)||[];if(x&&W.push($[j]),g){const ie=ww(o,d,A);W.push($[ie[0]],$[ie[1]])}if(E=[...E,{placement:o,overflows:W}],!W.every(ie=>ie<=0)){var ne,re;const ie=(((ne=u.flip)==null?void 0:ne.index)||0)+1,J=X[ie];if(J&&(!(g==="alignment"?P!==ka(J):!1)||E.every(I=>ka(I.placement)===P?I.overflows[0]>0:!0)))return{data:{index:ie,overflows:E},reset:{placement:J}};let z=(re=E.filter(B=>B.overflows[0]<=0).sort((B,I)=>B.overflows[1]-I.overflows[1])[0])==null?void 0:re.placement;if(!z)switch(S){case"bestFit":{var xe;const B=(xe=E.filter(I=>{if(C){const fe=ka(I.placement);return fe===P||fe==="y"}return!0}).map(I=>[I.placement,I.overflows.filter(fe=>fe>0).reduce((fe,te)=>fe+te,0)]).sort((I,fe)=>I[1]-fe[1])[0])==null?void 0:xe[0];B&&(z=B);break}case"initialPlacement":z=O;break}if(o!==z)return{reset:{placement:z}}}return{}}}};function Cg(t,n){return{top:t.top-n.height,right:t.right-n.width,bottom:t.bottom-n.height,left:t.left-n.width}}function Xg(t){return Qw.some(n=>t[n]>=0)}const Aw=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(n){const{rects:s,platform:l}=n,{strategy:o="referenceHidden",...u}=rn(t,n);switch(o){case"referenceHidden":{const d=await l.detectOverflow(n,{...u,elementContext:"reference"}),O=Cg(d,s.reference);return{data:{referenceHiddenOffsets:O,referenceHidden:Xg(O)}}}case"escaped":{const d=await l.detectOverflow(n,{...u,altBoundary:!0}),O=Cg(d,s.floating);return{data:{escapedOffsets:O,escaped:Xg(O)}}}default:return{}}}}},C0=new Set(["left","top"]);async function Ew(t,n){const{placement:s,platform:l,elements:o}=t,u=await(l.isRTL==null?void 0:l.isRTL(o.floating)),d=on(s),O=Zl(s),m=ka(s)==="y",p=C0.has(d)?-1:1,x=u&&m?-1:1,g=rn(n,t);let{mainAxis:b,crossAxis:S,alignmentAxis:Q}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return O&&typeof Q=="number"&&(S=O==="end"?Q*-1:Q),m?{x:S*x,y:b*p}:{x:b*p,y:S*x}}const qw=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(n){var s,l;const{x:o,y:u,placement:d,middlewareData:O}=n,m=await Ew(n,t);return d===((s=O.offset)==null?void 0:s.placement)&&(l=O.arrow)!=null&&l.alignmentOffset?{}:{x:o+m.x,y:u+m.y,data:{...m,placement:d}}}}},Mw=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(n){const{x:s,y:l,placement:o,platform:u}=n,{mainAxis:d=!0,crossAxis:O=!1,limiter:m={fn:j=>{let{x:P,y:N}=j;return{x:P,y:N}}},...p}=rn(t,n),x={x:s,y:l},g=await u.detectOverflow(n,p),b=ka(on(o)),S=Tf(b);let Q=x[S],k=x[b];if(d){const j=S==="y"?"top":"left",P=S==="y"?"bottom":"right",N=Q+g[j],A=Q-g[P];Q=tf(N,Q,A)}if(O){const j=b==="y"?"top":"left",P=b==="y"?"bottom":"right",N=k+g[j],A=k-g[P];k=tf(N,k,A)}const T=m.fn({...n,[S]:Q,[b]:k});return{...T,data:{x:T.x-s,y:T.y-l,enabled:{[S]:d,[b]:O}}}}}},Yw=function(t){return t===void 0&&(t={}),{options:t,fn(n){const{x:s,y:l,placement:o,rects:u,middlewareData:d}=n,{offset:O=0,mainAxis:m=!0,crossAxis:p=!0}=rn(t,n),x={x:s,y:l},g=ka(o),b=Tf(g);let S=x[b],Q=x[g];const k=rn(O,n),T=typeof k=="number"?{mainAxis:k,crossAxis:0}:{mainAxis:0,crossAxis:0,...k};if(m){const N=b==="y"?"height":"width",A=u.reference[b]-u.floating[N]+T.mainAxis,U=u.reference[b]+u.reference[N]-T.mainAxis;S<A?S=A:S>U&&(S=U)}if(p){var j,P;const N=b==="y"?"width":"height",A=C0.has(on(o)),U=u.reference[g]-u.floating[N]+(A&&((j=d.offset)==null?void 0:j[g])||0)+(A?0:T.crossAxis),C=u.reference[g]+u.reference[N]+(A?0:((P=d.offset)==null?void 0:P[g])||0)-(A?T.crossAxis:0);Q<U?Q=U:Q>C&&(Q=C)}return{[b]:S,[g]:Q}}}},Vw=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(n){var s,l;const{placement:o,rects:u,platform:d,elements:O}=n,{apply:m=()=>{},...p}=rn(t,n),x=await d.detectOverflow(n,p),g=on(o),b=Zl(o),S=ka(o)==="y",{width:Q,height:k}=u.floating;let T,j;g==="top"||g==="bottom"?(T=g,j=b===(await(d.isRTL==null?void 0:d.isRTL(O.floating))?"start":"end")?"left":"right"):(j=g,T=b==="end"?"top":"bottom");const P=k-x.top-x.bottom,N=Q-x.left-x.right,A=Bn(k-x[T],P),U=Bn(Q-x[j],N),C=!n.middlewareData.shift;let X=A,$=U;if((s=n.middlewareData.shift)!=null&&s.enabled.x&&($=N),(l=n.middlewareData.shift)!=null&&l.enabled.y&&(X=P),C&&!b){const E=Wt(x.left,0),ne=Wt(x.right,0),re=Wt(x.top,0),xe=Wt(x.bottom,0);S?$=Q-2*(E!==0||ne!==0?E+ne:Wt(x.left,x.right)):X=k-2*(re!==0||xe!==0?re+xe:Wt(x.top,x.bottom))}await m({...n,availableWidth:$,availableHeight:X});const W=await d.getDimensions(O.floating);return Q!==W.width||k!==W.height?{reset:{rects:!0}}:{}}}};function wc(){return typeof window<"u"}function Al(t){return X0(t)?(t.nodeName||"").toLowerCase():"#document"}function Bt(t){var n;return(t==null||(n=t.ownerDocument)==null?void 0:n.defaultView)||window}function Pa(t){var n;return(n=(X0(t)?t.ownerDocument:t.document)||window.document)==null?void 0:n.documentElement}function X0(t){return wc()?t instanceof Node||t instanceof Bt(t).Node:!1}function pa(t){return wc()?t instanceof Element||t instanceof Bt(t).Element:!1}function un(t){return wc()?t instanceof HTMLElement||t instanceof Bt(t).HTMLElement:!1}function _g(t){return!wc()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof Bt(t).ShadowRoot}function li(t){const{overflow:n,overflowX:s,overflowY:l,display:o}=xa(t);return/auto|scroll|overlay|hidden|clip/.test(n+l+s)&&o!=="inline"&&o!=="contents"}function Uw(t){return/^(table|td|th)$/.test(Al(t))}function kc(t){try{if(t.matches(":popover-open"))return!0}catch{}try{return t.matches(":modal")}catch{return!1}}const Gw=/transform|translate|scale|rotate|perspective|filter/,Lw=/paint|layout|strict|content/,bs=t=>!!t&&t!=="none";let uO;function zf(t){const n=pa(t)?xa(t):t;return bs(n.transform)||bs(n.translate)||bs(n.scale)||bs(n.rotate)||bs(n.perspective)||!Rf()&&(bs(n.backdropFilter)||bs(n.filter))||Gw.test(n.willChange||"")||Lw.test(n.contain||"")}function Dw(t){let n=Hn(t);for(;un(n)&&!Tl(n);){if(zf(n))return n;if(kc(n))return null;n=Hn(n)}return null}function Rf(){return uO==null&&(uO=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),uO}function Tl(t){return/^(html|body|#document)$/.test(Al(t))}function xa(t){return Bt(t).getComputedStyle(t)}function $c(t){return pa(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Hn(t){if(Al(t)==="html")return t;const n=t.assignedSlot||t.parentNode||_g(t)&&t.host||Pa(t);return _g(n)?n.host:n}function _0(t){const n=Hn(t);return Tl(n)?t.ownerDocument?t.ownerDocument.body:t.body:un(n)&&li(n)?n:_0(n)}function Dr(t,n,s){var l;n===void 0&&(n=[]),s===void 0&&(s=!0);const o=_0(t),u=o===((l=t.ownerDocument)==null?void 0:l.body),d=Bt(o);if(u){const O=nf(d);return n.concat(d,d.visualViewport||[],li(o)?o:[],O&&s?Dr(O):[])}else return n.concat(o,Dr(o,[],s))}function nf(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Z0(t){const n=xa(t);let s=parseFloat(n.width)||0,l=parseFloat(n.height)||0;const o=un(t),u=o?t.offsetWidth:s,d=o?t.offsetHeight:l,O=tc(s)!==u||tc(l)!==d;return O&&(s=u,l=d),{width:s,height:l,$:O}}function Cf(t){return pa(t)?t:t.contextElement}function jl(t){const n=Cf(t);if(!un(n))return $a(1);const s=n.getBoundingClientRect(),{width:l,height:o,$:u}=Z0(n);let d=(u?tc(s.width):s.width)/l,O=(u?tc(s.height):s.height)/o;return(!d||!Number.isFinite(d))&&(d=1),(!O||!Number.isFinite(O))&&(O=1),{x:d,y:O}}const Ww=$a(0);function A0(t){const n=Bt(t);return!Rf()||!n.visualViewport?Ww:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function Bw(t,n,s){return n===void 0&&(n=!1),!s||n&&s!==Bt(t)?!1:n}function js(t,n,s,l){n===void 0&&(n=!1),s===void 0&&(s=!1);const o=t.getBoundingClientRect(),u=Cf(t);let d=$a(1);n&&(l?pa(l)&&(d=jl(l)):d=jl(t));const O=Bw(u,s,l)?A0(u):$a(0);let m=(o.left+O.x)/d.x,p=(o.top+O.y)/d.y,x=o.width/d.x,g=o.height/d.y;if(u){const b=Bt(u),S=l&&pa(l)?Bt(l):l;let Q=b,k=nf(Q);for(;k&&l&&S!==Q;){const T=jl(k),j=k.getBoundingClientRect(),P=xa(k),N=j.left+(k.clientLeft+parseFloat(P.paddingLeft))*T.x,A=j.top+(k.clientTop+parseFloat(P.paddingTop))*T.y;m*=T.x,p*=T.y,x*=T.x,g*=T.y,m+=N,p+=A,Q=Bt(k),k=nf(Q)}}return nc({width:x,height:g,x:m,y:p})}function Tc(t,n){const s=$c(t).scrollLeft;return n?n.left+s:js(Pa(t)).left+s}function E0(t,n){const s=t.getBoundingClientRect(),l=s.left+n.scrollLeft-Tc(t,s),o=s.top+n.scrollTop;return{x:l,y:o}}function Hw(t){let{elements:n,rect:s,offsetParent:l,strategy:o}=t;const u=o==="fixed",d=Pa(l),O=n?kc(n.floating):!1;if(l===d||O&&u)return s;let m={scrollLeft:0,scrollTop:0},p=$a(1);const x=$a(0),g=un(l);if((g||!g&&!u)&&((Al(l)!=="body"||li(d))&&(m=$c(l)),g)){const S=js(l);p=jl(l),x.x=S.x+l.clientLeft,x.y=S.y+l.clientTop}const b=d&&!g&&!u?E0(d,m):$a(0);return{width:s.width*p.x,height:s.height*p.y,x:s.x*p.x-m.scrollLeft*p.x+x.x+b.x,y:s.y*p.y-m.scrollTop*p.y+x.y+b.y}}function Iw(t){return Array.from(t.getClientRects())}function Fw(t){const n=Pa(t),s=$c(t),l=t.ownerDocument.body,o=Wt(n.scrollWidth,n.clientWidth,l.scrollWidth,l.clientWidth),u=Wt(n.scrollHeight,n.clientHeight,l.scrollHeight,l.clientHeight);let d=-s.scrollLeft+Tc(t);const O=-s.scrollTop;return xa(l).direction==="rtl"&&(d+=Wt(n.clientWidth,l.clientWidth)-o),{width:o,height:u,x:d,y:O}}const Zg=25;function Kw(t,n){const s=Bt(t),l=Pa(t),o=s.visualViewport;let u=l.clientWidth,d=l.clientHeight,O=0,m=0;if(o){u=o.width,d=o.height;const x=Rf();(!x||x&&n==="fixed")&&(O=o.offsetLeft,m=o.offsetTop)}const p=Tc(l);if(p<=0){const x=l.ownerDocument,g=x.body,b=getComputedStyle(g),S=x.compatMode==="CSS1Compat"&&parseFloat(b.marginLeft)+parseFloat(b.marginRight)||0,Q=Math.abs(l.clientWidth-g.clientWidth-S);Q<=Zg&&(u-=Q)}else p<=Zg&&(u+=p);return{width:u,height:d,x:O,y:m}}function Jw(t,n){const s=js(t,!0,n==="fixed"),l=s.top+t.clientTop,o=s.left+t.clientLeft,u=un(t)?jl(t):$a(1),d=t.clientWidth*u.x,O=t.clientHeight*u.y,m=o*u.x,p=l*u.y;return{width:d,height:O,x:m,y:p}}function Ag(t,n,s){let l;if(n==="viewport")l=Kw(t,s);else if(n==="document")l=Fw(Pa(t));else if(pa(n))l=Jw(n,s);else{const o=A0(t);l={x:n.x-o.x,y:n.y-o.y,width:n.width,height:n.height}}return nc(l)}function q0(t,n){const s=Hn(t);return s===n||!pa(s)||Tl(s)?!1:xa(s).position==="fixed"||q0(s,n)}function ek(t,n){const s=n.get(t);if(s)return s;let l=Dr(t,[],!1).filter(O=>pa(O)&&Al(O)!=="body"),o=null;const u=xa(t).position==="fixed";let d=u?Hn(t):t;for(;pa(d)&&!Tl(d);){const O=xa(d),m=zf(d);!m&&O.position==="fixed"&&(o=null),(u?!m&&!o:!m&&O.position==="static"&&!!o&&(o.position==="absolute"||o.position==="fixed")||li(d)&&!m&&q0(t,d))?l=l.filter(x=>x!==d):o=O,d=Hn(d)}return n.set(t,l),l}function tk(t){let{element:n,boundary:s,rootBoundary:l,strategy:o}=t;const d=[...s==="clippingAncestors"?kc(n)?[]:ek(n,this._c):[].concat(s),l],O=Ag(n,d[0],o);let m=O.top,p=O.right,x=O.bottom,g=O.left;for(let b=1;b<d.length;b++){const S=Ag(n,d[b],o);m=Wt(S.top,m),p=Bn(S.right,p),x=Bn(S.bottom,x),g=Wt(S.left,g)}return{width:p-g,height:x-m,x:g,y:m}}function ak(t){const{width:n,height:s}=Z0(t);return{width:n,height:s}}function nk(t,n,s){const l=un(n),o=Pa(n),u=s==="fixed",d=js(t,!0,u,n);let O={scrollLeft:0,scrollTop:0};const m=$a(0);function p(){m.x=Tc(o)}if(l||!l&&!u)if((Al(n)!=="body"||li(o))&&(O=$c(n)),l){const S=js(n,!0,u,n);m.x=S.x+n.clientLeft,m.y=S.y+n.clientTop}else o&&p();u&&!l&&o&&p();const x=o&&!l&&!u?E0(o,O):$a(0),g=d.left+O.scrollLeft-m.x-x.x,b=d.top+O.scrollTop-m.y-x.y;return{x:g,y:b,width:d.width,height:d.height}}function dO(t){return xa(t).position==="static"}function Eg(t,n){if(!un(t)||xa(t).position==="fixed")return null;if(n)return n(t);let s=t.offsetParent;return Pa(t)===s&&(s=s.ownerDocument.body),s}function M0(t,n){const s=Bt(t);if(kc(t))return s;if(!un(t)){let o=Hn(t);for(;o&&!Tl(o);){if(pa(o)&&!dO(o))return o;o=Hn(o)}return s}let l=Eg(t,n);for(;l&&Uw(l)&&dO(l);)l=Eg(l,n);return l&&Tl(l)&&dO(l)&&!zf(l)?s:l||Dw(t)||s}const sk=async function(t){const n=this.getOffsetParent||M0,s=this.getDimensions,l=await s(t.floating);return{reference:nk(t.reference,await n(t.floating),t.strategy),floating:{x:0,y:0,width:l.width,height:l.height}}};function lk(t){return xa(t).direction==="rtl"}const rk={convertOffsetParentRelativeRectToViewportRelativeRect:Hw,getDocumentElement:Pa,getClippingRect:tk,getOffsetParent:M0,getElementRects:sk,getClientRects:Iw,getDimensions:ak,getScale:jl,isElement:pa,isRTL:lk};function Y0(t,n){return t.x===n.x&&t.y===n.y&&t.width===n.width&&t.height===n.height}function ik(t,n){let s=null,l;const o=Pa(t);function u(){var O;clearTimeout(l),(O=s)==null||O.disconnect(),s=null}function d(O,m){O===void 0&&(O=!1),m===void 0&&(m=1),u();const p=t.getBoundingClientRect(),{left:x,top:g,width:b,height:S}=p;if(O||n(),!b||!S)return;const Q=zo(g),k=zo(o.clientWidth-(x+b)),T=zo(o.clientHeight-(g+S)),j=zo(x),N={rootMargin:-Q+"px "+-k+"px "+-T+"px "+-j+"px",threshold:Wt(0,Bn(1,m))||1};let A=!0;function U(C){const X=C[0].intersectionRatio;if(X!==m){if(!A)return d();X?d(!1,X):l=setTimeout(()=>{d(!1,1e-7)},1e3)}X===1&&!Y0(p,t.getBoundingClientRect())&&d(),A=!1}try{s=new IntersectionObserver(U,{...N,root:o.ownerDocument})}catch{s=new IntersectionObserver(U,N)}s.observe(t)}return d(!0),u}function ok(t,n,s,l){l===void 0&&(l={});const{ancestorScroll:o=!0,ancestorResize:u=!0,elementResize:d=typeof ResizeObserver=="function",layoutShift:O=typeof IntersectionObserver=="function",animationFrame:m=!1}=l,p=Cf(t),x=o||u?[...p?Dr(p):[],...n?Dr(n):[]]:[];x.forEach(j=>{o&&j.addEventListener("scroll",s,{passive:!0}),u&&j.addEventListener("resize",s)});const g=p&&O?ik(p,s):null;let b=-1,S=null;d&&(S=new ResizeObserver(j=>{let[P]=j;P&&P.target===p&&S&&n&&(S.unobserve(n),cancelAnimationFrame(b),b=requestAnimationFrame(()=>{var N;(N=S)==null||N.observe(n)})),s()}),p&&!m&&S.observe(p),n&&S.observe(n));let Q,k=m?js(t):null;m&&T();function T(){const j=js(t);k&&!Y0(k,j)&&s(),k=j,Q=requestAnimationFrame(T)}return s(),()=>{var j;x.forEach(P=>{o&&P.removeEventListener("scroll",s),u&&P.removeEventListener("resize",s)}),g==null||g(),(j=S)==null||j.disconnect(),S=null,m&&cancelAnimationFrame(Q)}}const ck=qw,uk=Mw,dk=Zw,Ok=Vw,fk=Aw,qg=_w,hk=Yw,mk=(t,n,s)=>{const l=new Map,o={platform:rk,...s},u={...o.platform,_c:l};return Xw(t,n,{...o,platform:u})};var pk=typeof document<"u",xk=function(){},Do=pk?v.useLayoutEffect:xk;function sc(t,n){if(t===n)return!0;if(typeof t!=typeof n)return!1;if(typeof t=="function"&&t.toString()===n.toString())return!0;let s,l,o;if(t&&n&&typeof t=="object"){if(Array.isArray(t)){if(s=t.length,s!==n.length)return!1;for(l=s;l--!==0;)if(!sc(t[l],n[l]))return!1;return!0}if(o=Object.keys(t),s=o.length,s!==Object.keys(n).length)return!1;for(l=s;l--!==0;)if(!{}.hasOwnProperty.call(n,o[l]))return!1;for(l=s;l--!==0;){const u=o[l];if(!(u==="_owner"&&t.$$typeof)&&!sc(t[u],n[u]))return!1}return!0}return t!==t&&n!==n}function V0(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function Mg(t,n){const s=V0(t);return Math.round(n*s)/s}function OO(t){const n=v.useRef(t);return Do(()=>{n.current=t}),n}function gk(t){t===void 0&&(t={});const{placement:n="bottom",strategy:s="absolute",middleware:l=[],platform:o,elements:{reference:u,floating:d}={},transform:O=!0,whileElementsMounted:m,open:p}=t,[x,g]=v.useState({x:0,y:0,strategy:s,placement:n,middlewareData:{},isPositioned:!1}),[b,S]=v.useState(l);sc(b,l)||S(l);const[Q,k]=v.useState(null),[T,j]=v.useState(null),P=v.useCallback(I=>{I!==C.current&&(C.current=I,k(I))},[]),N=v.useCallback(I=>{I!==X.current&&(X.current=I,j(I))},[]),A=u||Q,U=d||T,C=v.useRef(null),X=v.useRef(null),$=v.useRef(x),W=m!=null,E=OO(m),ne=OO(o),re=OO(p),xe=v.useCallback(()=>{if(!C.current||!X.current)return;const I={placement:n,strategy:s,middleware:b};ne.current&&(I.platform=ne.current),mk(C.current,X.current,I).then(fe=>{const te={...fe,isPositioned:re.current!==!1};ie.current&&!sc($.current,te)&&($.current=te,v0.flushSync(()=>{g(te)}))})},[b,n,s,ne,re]);Do(()=>{p===!1&&$.current.isPositioned&&($.current.isPositioned=!1,g(I=>({...I,isPositioned:!1})))},[p]);const ie=v.useRef(!1);Do(()=>(ie.current=!0,()=>{ie.current=!1}),[]),Do(()=>{if(A&&(C.current=A),U&&(X.current=U),A&&U){if(E.current)return E.current(A,U,xe);xe()}},[A,U,xe,E,W]);const J=v.useMemo(()=>({reference:C,floating:X,setReference:P,setFloating:N}),[P,N]),z=v.useMemo(()=>({reference:A,floating:U}),[A,U]),B=v.useMemo(()=>{const I={position:s,left:0,top:0};if(!z.floating)return I;const fe=Mg(z.floating,x.x),te=Mg(z.floating,x.y);return O?{...I,transform:"translate("+fe+"px, "+te+"px)",...V0(z.floating)>=1.5&&{willChange:"transform"}}:{position:s,left:fe,top:te}},[s,O,z.floating,x.x,x.y]);return v.useMemo(()=>({...x,update:xe,refs:J,elements:z,floatingStyles:B}),[x,xe,J,z,B])}const bk=t=>{function n(s){return{}.hasOwnProperty.call(s,"current")}return{name:"arrow",options:t,fn(s){const{element:l,padding:o}=typeof t=="function"?t(s):t;return l&&n(l)?l.current!=null?qg({element:l.current,padding:o}).fn(s):{}:l?qg({element:l,padding:o}).fn(s):{}}}},vk=(t,n)=>{const s=ck(t);return{name:s.name,fn:s.fn,options:[t,n]}},yk=(t,n)=>{const s=uk(t);return{name:s.name,fn:s.fn,options:[t,n]}},Sk=(t,n)=>({fn:hk(t).fn,options:[t,n]}),Qk=(t,n)=>{const s=dk(t);return{name:s.name,fn:s.fn,options:[t,n]}},jk=(t,n)=>{const s=Ok(t);return{name:s.name,fn:s.fn,options:[t,n]}},wk=(t,n)=>{const s=fk(t);return{name:s.name,fn:s.fn,options:[t,n]}},kk=(t,n)=>{const s=bk(t);return{name:s.name,fn:s.fn,options:[t,n]}};var $k="Arrow",U0=v.forwardRef((t,n)=>{const{children:s,width:l=10,height:o=5,...u}=t;return i.jsx(Be.svg,{...u,ref:n,width:l,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?s:i.jsx("polygon",{points:"0,0 30,0 15,10"})})});U0.displayName=$k;var Tk=U0;function Pk(t){const[n,s]=v.useState(void 0);return ln(()=>{if(t){s({width:t.offsetWidth,height:t.offsetHeight});const l=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const u=o[0];let d,O;if("borderBoxSize"in u){const m=u.borderBoxSize,p=Array.isArray(m)?m[0]:m;d=p.inlineSize,O=p.blockSize}else d=t.offsetWidth,O=t.offsetHeight;s({width:d,height:O})});return l.observe(t,{box:"border-box"}),()=>l.unobserve(t)}else s(void 0)},[t]),n}var Xf="Popper",[G0,L0]=Ns(Xf),[Nk,D0]=G0(Xf),W0=t=>{const{__scopePopper:n,children:s}=t,[l,o]=v.useState(null);return i.jsx(Nk,{scope:n,anchor:l,onAnchorChange:o,children:s})};W0.displayName=Xf;var B0="PopperAnchor",H0=v.forwardRef((t,n)=>{const{__scopePopper:s,virtualRef:l,...o}=t,u=D0(B0,s),d=v.useRef(null),O=it(n,d),m=v.useRef(null);return v.useEffect(()=>{const p=m.current;m.current=(l==null?void 0:l.current)||d.current,p!==m.current&&u.onAnchorChange(m.current)}),l?null:i.jsx(Be.div,{...o,ref:O})});H0.displayName=B0;var _f="PopperContent",[zk,Rk]=G0(_f),I0=v.forwardRef((t,n)=>{var ze,Ot,_e,tt,bt,vt;const{__scopePopper:s,side:l="bottom",sideOffset:o=0,align:u="center",alignOffset:d=0,arrowPadding:O=0,avoidCollisions:m=!0,collisionBoundary:p=[],collisionPadding:x=0,sticky:g="partial",hideWhenDetached:b=!1,updatePositionStrategy:S="optimized",onPlaced:Q,...k}=t,T=D0(_f,s),[j,P]=v.useState(null),N=it(n,It=>P(It)),[A,U]=v.useState(null),C=Pk(A),X=(C==null?void 0:C.width)??0,$=(C==null?void 0:C.height)??0,W=l+(u!=="center"?"-"+u:""),E=typeof x=="number"?x:{top:0,right:0,bottom:0,left:0,...x},ne=Array.isArray(p)?p:[p],re=ne.length>0,xe={padding:E,boundary:ne.filter(Xk),altBoundary:re},{refs:ie,floatingStyles:J,placement:z,isPositioned:B,middlewareData:I}=gk({strategy:"fixed",placement:W,whileElementsMounted:(...It)=>ok(...It,{animationFrame:S==="always"}),elements:{reference:T.anchor},middleware:[vk({mainAxis:o+$,alignmentAxis:d}),m&&yk({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?Sk():void 0,...xe}),m&&Qk({...xe}),jk({...xe,apply:({elements:It,rects:yt,availableWidth:Ml,availableHeight:Yl})=>{const{width:Dc,height:Oi}=yt.reference,On=It.floating.style;On.setProperty("--radix-popper-available-width",`${Ml}px`),On.setProperty("--radix-popper-available-height",`${Yl}px`),On.setProperty("--radix-popper-anchor-width",`${Dc}px`),On.setProperty("--radix-popper-anchor-height",`${Oi}px`)}}),A&&kk({element:A,padding:O}),_k({arrowWidth:X,arrowHeight:$}),b&&wk({strategy:"referenceHidden",...xe})]}),[fe,te]=J0(z),Ae=zt(Q);ln(()=>{B&&(Ae==null||Ae())},[B,Ae]);const Se=(ze=I.arrow)==null?void 0:ze.x,ve=(Ot=I.arrow)==null?void 0:Ot.y,Xe=((_e=I.arrow)==null?void 0:_e.centerOffset)!==0,[L,oe]=v.useState();return ln(()=>{j&&oe(window.getComputedStyle(j).zIndex)},[j]),i.jsx("div",{ref:ie.setFloating,"data-radix-popper-content-wrapper":"",style:{...J,transform:B?J.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:L,"--radix-popper-transform-origin":[(tt=I.transformOrigin)==null?void 0:tt.x,(bt=I.transformOrigin)==null?void 0:bt.y].join(" "),...((vt=I.hide)==null?void 0:vt.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:i.jsx(zk,{scope:s,placedSide:fe,onArrowChange:U,arrowX:Se,arrowY:ve,shouldHideArrow:Xe,children:i.jsx(Be.div,{"data-side":fe,"data-align":te,...k,ref:N,style:{...k.style,animation:B?void 0:"none"}})})})});I0.displayName=_f;var F0="PopperArrow",Ck={top:"bottom",right:"left",bottom:"top",left:"right"},K0=v.forwardRef(function(n,s){const{__scopePopper:l,...o}=n,u=Rk(F0,l),d=Ck[u.placedSide];return i.jsx("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[d]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:i.jsx(Tk,{...o,ref:s,style:{...o.style,display:"block"}})})});K0.displayName=F0;function Xk(t){return t!==null}var _k=t=>({name:"transformOrigin",options:t,fn(n){var T,j,P;const{placement:s,rects:l,middlewareData:o}=n,d=((T=o.arrow)==null?void 0:T.centerOffset)!==0,O=d?0:t.arrowWidth,m=d?0:t.arrowHeight,[p,x]=J0(s),g={start:"0%",center:"50%",end:"100%"}[x],b=(((j=o.arrow)==null?void 0:j.x)??0)+O/2,S=(((P=o.arrow)==null?void 0:P.y)??0)+m/2;let Q="",k="";return p==="bottom"?(Q=d?g:`${b}px`,k=`${-m}px`):p==="top"?(Q=d?g:`${b}px`,k=`${l.floating.height+m}px`):p==="right"?(Q=`${-m}px`,k=d?g:`${S}px`):p==="left"&&(Q=`${l.floating.width+m}px`,k=d?g:`${S}px`),{data:{x:Q,y:k}}}});function J0(t){const[n,s="center"]=t.split("-");return[n,s]}var Zk=W0,Ak=H0,Ek=I0,qk=K0,Mk="Portal",Zf=v.forwardRef((t,n)=>{var O;const{container:s,...l}=t,[o,u]=v.useState(!1);ln(()=>u(!0),[]);const d=s||o&&((O=globalThis==null?void 0:globalThis.document)==null?void 0:O.body);return d?mj.createPortal(i.jsx(Be.div,{...l,ref:n}),d):null});Zf.displayName=Mk;function Yk(t,n){return v.useReducer((s,l)=>n[s][l]??s,t)}var ba=t=>{const{present:n,children:s}=t,l=Vk(n),o=typeof s=="function"?s({present:l.isPresent}):v.Children.only(s),u=it(l.ref,Uk(o));return typeof s=="function"||l.isPresent?v.cloneElement(o,{ref:u}):null};ba.displayName="Presence";function Vk(t){const[n,s]=v.useState(),l=v.useRef(null),o=v.useRef(t),u=v.useRef("none"),d=t?"mounted":"unmounted",[O,m]=Yk(d,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return v.useEffect(()=>{const p=Ro(l.current);u.current=O==="mounted"?p:"none"},[O]),ln(()=>{const p=l.current,x=o.current;if(x!==t){const b=u.current,S=Ro(p);t?m("MOUNT"):S==="none"||(p==null?void 0:p.display)==="none"?m("UNMOUNT"):m(x&&b!==S?"ANIMATION_OUT":"UNMOUNT"),o.current=t}},[t,m]),ln(()=>{if(n){let p;const x=n.ownerDocument.defaultView??window,g=S=>{const k=Ro(l.current).includes(CSS.escape(S.animationName));if(S.target===n&&k&&(m("ANIMATION_END"),!o.current)){const T=n.style.animationFillMode;n.style.animationFillMode="forwards",p=x.setTimeout(()=>{n.style.animationFillMode==="forwards"&&(n.style.animationFillMode=T)})}},b=S=>{S.target===n&&(u.current=Ro(l.current))};return n.addEventListener("animationstart",b),n.addEventListener("animationcancel",g),n.addEventListener("animationend",g),()=>{x.clearTimeout(p),n.removeEventListener("animationstart",b),n.removeEventListener("animationcancel",g),n.removeEventListener("animationend",g)}}else m("ANIMATION_END")},[n,m]),{isPresent:["mounted","unmountSuspended"].includes(O),ref:v.useCallback(p=>{l.current=p?getComputedStyle(p):null,s(p)},[])}}function Ro(t){return(t==null?void 0:t.animationName)||"none"}function Uk(t){var l,o;let n=(l=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:l.get,s=n&&"isReactWarning"in n&&n.isReactWarning;return s?t.ref:(n=(o=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:o.get,s=n&&"isReactWarning"in n&&n.isReactWarning,s?t.props.ref:t.props.ref||t.ref)}var Gk=x0[" useInsertionEffect ".trim().toString()]||ln;function Pc({prop:t,defaultProp:n,onChange:s=()=>{},caller:l}){const[o,u,d]=Lk({defaultProp:n,onChange:s}),O=t!==void 0,m=O?t:o;{const x=v.useRef(t!==void 0);v.useEffect(()=>{const g=x.current;g!==O&&console.warn(`${l} is changing from ${g?"controlled":"uncontrolled"} to ${O?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),x.current=O},[O,l])}const p=v.useCallback(x=>{var g;if(O){const b=Dk(x)?x(t):x;b!==t&&((g=d.current)==null||g.call(d,b))}else u(x)},[O,t,u,d]);return[m,p]}function Lk({defaultProp:t,onChange:n}){const[s,l]=v.useState(t),o=v.useRef(s),u=v.useRef(n);return Gk(()=>{u.current=n},[n]),v.useEffect(()=>{var d;o.current!==s&&((d=u.current)==null||d.call(u,s),o.current=s)},[s,o]),[s,l,u]}function Dk(t){return typeof t=="function"}var Wk=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),Bk="VisuallyHidden",eb=v.forwardRef((t,n)=>i.jsx(Be.span,{...t,ref:n,style:{...Wk,...t.style}}));eb.displayName=Bk;var Hk=eb,[Nc]=Ns("Tooltip",[L0]),zc=L0(),tb="TooltipProvider",Ik=700,sf="tooltip.open",[Fk,Af]=Nc(tb),ab=t=>{const{__scopeTooltip:n,delayDuration:s=Ik,skipDelayDuration:l=300,disableHoverableContent:o=!1,children:u}=t,d=v.useRef(!0),O=v.useRef(!1),m=v.useRef(0);return v.useEffect(()=>{const p=m.current;return()=>window.clearTimeout(p)},[]),i.jsx(Fk,{scope:n,isOpenDelayedRef:d,delayDuration:s,onOpen:v.useCallback(()=>{window.clearTimeout(m.current),d.current=!1},[]),onClose:v.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>d.current=!0,l)},[l]),isPointerInTransitRef:O,onPointerInTransitChange:v.useCallback(p=>{O.current=p},[]),disableHoverableContent:o,children:u})};ab.displayName=tb;var Wr="Tooltip",[Kk,ri]=Nc(Wr),nb=t=>{const{__scopeTooltip:n,children:s,open:l,defaultOpen:o,onOpenChange:u,disableHoverableContent:d,delayDuration:O}=t,m=Af(Wr,t.__scopeTooltip),p=zc(n),[x,g]=v.useState(null),b=Ql(),S=v.useRef(0),Q=d??m.disableHoverableContent,k=O??m.delayDuration,T=v.useRef(!1),[j,P]=Pc({prop:l,defaultProp:o??!1,onChange:X=>{X?(m.onOpen(),document.dispatchEvent(new CustomEvent(sf))):m.onClose(),u==null||u(X)},caller:Wr}),N=v.useMemo(()=>j?T.current?"delayed-open":"instant-open":"closed",[j]),A=v.useCallback(()=>{window.clearTimeout(S.current),S.current=0,T.current=!1,P(!0)},[P]),U=v.useCallback(()=>{window.clearTimeout(S.current),S.current=0,P(!1)},[P]),C=v.useCallback(()=>{window.clearTimeout(S.current),S.current=window.setTimeout(()=>{T.current=!0,P(!0),S.current=0},k)},[k,P]);return v.useEffect(()=>()=>{S.current&&(window.clearTimeout(S.current),S.current=0)},[]),i.jsx(Zk,{...p,children:i.jsx(Kk,{scope:n,contentId:b,open:j,stateAttribute:N,trigger:x,onTriggerChange:g,onTriggerEnter:v.useCallback(()=>{m.isOpenDelayedRef.current?C():A()},[m.isOpenDelayedRef,C,A]),onTriggerLeave:v.useCallback(()=>{Q?U():(window.clearTimeout(S.current),S.current=0)},[U,Q]),onOpen:A,onClose:U,disableHoverableContent:Q,children:s})})};nb.displayName=Wr;var lf="TooltipTrigger",sb=v.forwardRef((t,n)=>{const{__scopeTooltip:s,...l}=t,o=ri(lf,s),u=Af(lf,s),d=zc(s),O=v.useRef(null),m=it(n,O,o.onTriggerChange),p=v.useRef(!1),x=v.useRef(!1),g=v.useCallback(()=>p.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",g),[g]),i.jsx(Ak,{asChild:!0,...d,children:i.jsx(Be.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...l,ref:m,onPointerMove:Ee(t.onPointerMove,b=>{b.pointerType!=="touch"&&!x.current&&!u.isPointerInTransitRef.current&&(o.onTriggerEnter(),x.current=!0)}),onPointerLeave:Ee(t.onPointerLeave,()=>{o.onTriggerLeave(),x.current=!1}),onPointerDown:Ee(t.onPointerDown,()=>{o.open&&o.onClose(),p.current=!0,document.addEventListener("pointerup",g,{once:!0})}),onFocus:Ee(t.onFocus,()=>{p.current||o.onOpen()}),onBlur:Ee(t.onBlur,o.onClose),onClick:Ee(t.onClick,o.onClose)})})});sb.displayName=lf;var Ef="TooltipPortal",[Jk,e$]=Nc(Ef,{forceMount:void 0}),lb=t=>{const{__scopeTooltip:n,forceMount:s,children:l,container:o}=t,u=ri(Ef,n);return i.jsx(Jk,{scope:n,forceMount:s,children:i.jsx(ba,{present:s||u.open,children:i.jsx(Zf,{asChild:!0,container:o,children:l})})})};lb.displayName=Ef;var Pl="TooltipContent",rb=v.forwardRef((t,n)=>{const s=e$(Pl,t.__scopeTooltip),{forceMount:l=s.forceMount,side:o="top",...u}=t,d=ri(Pl,t.__scopeTooltip);return i.jsx(ba,{present:l||d.open,children:d.disableHoverableContent?i.jsx(ib,{side:o,...u,ref:n}):i.jsx(t$,{side:o,...u,ref:n})})}),t$=v.forwardRef((t,n)=>{const s=ri(Pl,t.__scopeTooltip),l=Af(Pl,t.__scopeTooltip),o=v.useRef(null),u=it(n,o),[d,O]=v.useState(null),{trigger:m,onClose:p}=s,x=o.current,{onPointerInTransitChange:g}=l,b=v.useCallback(()=>{O(null),g(!1)},[g]),S=v.useCallback((Q,k)=>{const T=Q.currentTarget,j={x:Q.clientX,y:Q.clientY},P=l$(j,T.getBoundingClientRect()),N=r$(j,P),A=i$(k.getBoundingClientRect()),U=c$([...N,...A]);O(U),g(!0)},[g]);return v.useEffect(()=>()=>b(),[b]),v.useEffect(()=>{if(m&&x){const Q=T=>S(T,x),k=T=>S(T,m);return m.addEventListener("pointerleave",Q),x.addEventListener("pointerleave",k),()=>{m.removeEventListener("pointerleave",Q),x.removeEventListener("pointerleave",k)}}},[m,x,S,b]),v.useEffect(()=>{if(d){const Q=k=>{const T=k.target,j={x:k.clientX,y:k.clientY},P=(m==null?void 0:m.contains(T))||(x==null?void 0:x.contains(T)),N=!o$(j,d);P?b():N&&(b(),p())};return document.addEventListener("pointermove",Q),()=>document.removeEventListener("pointermove",Q)}},[m,x,d,p,b]),i.jsx(ib,{...t,ref:u})}),[a$,n$]=Nc(Wr,{isInside:!1}),s$=iw("TooltipContent"),ib=v.forwardRef((t,n)=>{const{__scopeTooltip:s,children:l,"aria-label":o,onEscapeKeyDown:u,onPointerDownOutside:d,...O}=t,m=ri(Pl,s),p=zc(s),{onClose:x}=m;return v.useEffect(()=>(document.addEventListener(sf,x),()=>document.removeEventListener(sf,x)),[x]),v.useEffect(()=>{if(m.trigger){const g=b=>{const S=b.target;S!=null&&S.contains(m.trigger)&&x()};return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[m.trigger,x]),i.jsx($f,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:g=>g.preventDefault(),onDismiss:x,children:i.jsxs(Ek,{"data-state":m.stateAttribute,...p,...O,ref:n,style:{...O.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[i.jsx(s$,{children:l}),i.jsx(a$,{scope:s,isInside:!0,children:i.jsx(Hk,{id:m.contentId,role:"tooltip",children:o||l})})]})})});rb.displayName=Pl;var ob="TooltipArrow",cb=v.forwardRef((t,n)=>{const{__scopeTooltip:s,...l}=t,o=zc(s);return n$(ob,s).isInside?null:i.jsx(qk,{...o,...l,ref:n})});cb.displayName=ob;function l$(t,n){const s=Math.abs(n.top-t.y),l=Math.abs(n.bottom-t.y),o=Math.abs(n.right-t.x),u=Math.abs(n.left-t.x);switch(Math.min(s,l,o,u)){case u:return"left";case o:return"right";case s:return"top";case l:return"bottom";default:throw new Error("unreachable")}}function r$(t,n,s=5){const l=[];switch(n){case"top":l.push({x:t.x-s,y:t.y+s},{x:t.x+s,y:t.y+s});break;case"bottom":l.push({x:t.x-s,y:t.y-s},{x:t.x+s,y:t.y-s});break;case"left":l.push({x:t.x+s,y:t.y-s},{x:t.x+s,y:t.y+s});break;case"right":l.push({x:t.x-s,y:t.y-s},{x:t.x-s,y:t.y+s});break}return l}function i$(t){const{top:n,right:s,bottom:l,left:o}=t;return[{x:o,y:n},{x:s,y:n},{x:s,y:l},{x:o,y:l}]}function o$(t,n){const{x:s,y:l}=t;let o=!1;for(let u=0,d=n.length-1;u<n.length;d=u++){const O=n[u],m=n[d],p=O.x,x=O.y,g=m.x,b=m.y;x>l!=b>l&&s<(g-p)*(l-x)/(b-x)+p&&(o=!o)}return o}function c$(t){const n=t.slice();return n.sort((s,l)=>s.x<l.x?-1:s.x>l.x?1:s.y<l.y?-1:s.y>l.y?1:0),u$(n)}function u$(t){if(t.length<=1)return t.slice();const n=[];for(let l=0;l<t.length;l++){const o=t[l];for(;n.length>=2;){const u=n[n.length-1],d=n[n.length-2];if((u.x-d.x)*(o.y-d.y)>=(u.y-d.y)*(o.x-d.x))n.pop();else break}n.push(o)}n.pop();const s=[];for(let l=t.length-1;l>=0;l--){const o=t[l];for(;s.length>=2;){const u=s[s.length-1],d=s[s.length-2];if((u.x-d.x)*(o.y-d.y)>=(u.y-d.y)*(o.x-d.x))s.pop();else break}s.push(o)}return s.pop(),n.length===1&&s.length===1&&n[0].x===s[0].x&&n[0].y===s[0].y?n:n.concat(s)}var d$=ab,O$=nb,f$=sb,h$=lb,m$=rb,p$=cb;function ub(t){var n,s,l="";if(typeof t=="string"||typeof t=="number")l+=t;else if(typeof t=="object")if(Array.isArray(t)){var o=t.length;for(n=0;n<o;n++)t[n]&&(s=ub(t[n]))&&(l&&(l+=" "),l+=s)}else for(s in t)t[s]&&(l&&(l+=" "),l+=s);return l}function x$(){for(var t,n,s=0,l="",o=arguments.length;s<o;s++)(t=arguments[s])&&(n=ub(t))&&(l&&(l+=" "),l+=n);return l}const g$=(t,n)=>{const s=new Array(t.length+n.length);for(let l=0;l<t.length;l++)s[l]=t[l];for(let l=0;l<n.length;l++)s[t.length+l]=n[l];return s},b$=(t,n)=>({classGroupId:t,validator:n}),db=(t=new Map,n=null,s)=>({nextPart:t,validators:n,classGroupId:s}),lc="-",Yg=[],v$="arbitrary..",y$=t=>{const n=Q$(t),{conflictingClassGroups:s,conflictingClassGroupModifiers:l}=t;return{getClassGroupId:d=>{if(d.startsWith("[")&&d.endsWith("]"))return S$(d);const O=d.split(lc),m=O[0]===""&&O.length>1?1:0;return Ob(O,m,n)},getConflictingClassGroupIds:(d,O)=>{if(O){const m=l[d],p=s[d];return m?p?g$(p,m):m:p||Yg}return s[d]||Yg}}},Ob=(t,n,s)=>{if(t.length-n===0)return s.classGroupId;const o=t[n],u=s.nextPart.get(o);if(u){const p=Ob(t,n+1,u);if(p)return p}const d=s.validators;if(d===null)return;const O=n===0?t.join(lc):t.slice(n).join(lc),m=d.length;for(let p=0;p<m;p++){const x=d[p];if(x.validator(O))return x.classGroupId}},S$=t=>t.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const n=t.slice(1,-1),s=n.indexOf(":"),l=n.slice(0,s);return l?v$+l:void 0})(),Q$=t=>{const{theme:n,classGroups:s}=t;return j$(s,n)},j$=(t,n)=>{const s=db();for(const l in t){const o=t[l];qf(o,s,l,n)}return s},qf=(t,n,s,l)=>{const o=t.length;for(let u=0;u<o;u++){const d=t[u];w$(d,n,s,l)}},w$=(t,n,s,l)=>{if(typeof t=="string"){k$(t,n,s);return}if(typeof t=="function"){$$(t,n,s,l);return}T$(t,n,s,l)},k$=(t,n,s)=>{const l=t===""?n:fb(n,t);l.classGroupId=s},$$=(t,n,s,l)=>{if(P$(t)){qf(t(l),n,s,l);return}n.validators===null&&(n.validators=[]),n.validators.push(b$(s,t))},T$=(t,n,s,l)=>{const o=Object.entries(t),u=o.length;for(let d=0;d<u;d++){const[O,m]=o[d];qf(m,fb(n,O),s,l)}},fb=(t,n)=>{let s=t;const l=n.split(lc),o=l.length;for(let u=0;u<o;u++){const d=l[u];let O=s.nextPart.get(d);O||(O=db(),s.nextPart.set(d,O)),s=O}return s},P$=t=>"isThemeGetter"in t&&t.isThemeGetter===!0,N$=t=>{if(t<1)return{get:()=>{},set:()=>{}};let n=0,s=Object.create(null),l=Object.create(null);const o=(u,d)=>{s[u]=d,n++,n>t&&(n=0,l=s,s=Object.create(null))};return{get(u){let d=s[u];if(d!==void 0)return d;if((d=l[u])!==void 0)return o(u,d),d},set(u,d){u in s?s[u]=d:o(u,d)}}},rf="!",Vg=":",z$=[],Ug=(t,n,s,l,o)=>({modifiers:t,hasImportantModifier:n,baseClassName:s,maybePostfixModifierPosition:l,isExternal:o}),R$=t=>{const{prefix:n,experimentalParseClassName:s}=t;let l=o=>{const u=[];let d=0,O=0,m=0,p;const x=o.length;for(let k=0;k<x;k++){const T=o[k];if(d===0&&O===0){if(T===Vg){u.push(o.slice(m,k)),m=k+1;continue}if(T==="/"){p=k;continue}}T==="["?d++:T==="]"?d--:T==="("?O++:T===")"&&O--}const g=u.length===0?o:o.slice(m);let b=g,S=!1;g.endsWith(rf)?(b=g.slice(0,-1),S=!0):g.startsWith(rf)&&(b=g.slice(1),S=!0);const Q=p&&p>m?p-m:void 0;return Ug(u,S,b,Q)};if(n){const o=n+Vg,u=l;l=d=>d.startsWith(o)?u(d.slice(o.length)):Ug(z$,!1,d,void 0,!0)}if(s){const o=l;l=u=>s({className:u,parseClassName:o})}return l},C$=t=>{const n=new Map;return t.orderSensitiveModifiers.forEach((s,l)=>{n.set(s,1e6+l)}),s=>{const l=[];let o=[];for(let u=0;u<s.length;u++){const d=s[u],O=d[0]==="[",m=n.has(d);O||m?(o.length>0&&(o.sort(),l.push(...o),o=[]),l.push(d)):o.push(d)}return o.length>0&&(o.sort(),l.push(...o)),l}},X$=t=>({cache:N$(t.cacheSize),parseClassName:R$(t),sortModifiers:C$(t),...y$(t)}),_$=/\s+/,Z$=(t,n)=>{const{parseClassName:s,getClassGroupId:l,getConflictingClassGroupIds:o,sortModifiers:u}=n,d=[],O=t.trim().split(_$);let m="";for(let p=O.length-1;p>=0;p-=1){const x=O[p],{isExternal:g,modifiers:b,hasImportantModifier:S,baseClassName:Q,maybePostfixModifierPosition:k}=s(x);if(g){m=x+(m.length>0?" "+m:m);continue}let T=!!k,j=l(T?Q.substring(0,k):Q);if(!j){if(!T){m=x+(m.length>0?" "+m:m);continue}if(j=l(Q),!j){m=x+(m.length>0?" "+m:m);continue}T=!1}const P=b.length===0?"":b.length===1?b[0]:u(b).join(":"),N=S?P+rf:P,A=N+j;if(d.indexOf(A)>-1)continue;d.push(A);const U=o(j,T);for(let C=0;C<U.length;++C){const X=U[C];d.push(N+X)}m=x+(m.length>0?" "+m:m)}return m},A$=(...t)=>{let n=0,s,l,o="";for(;n<t.length;)(s=t[n++])&&(l=hb(s))&&(o&&(o+=" "),o+=l);return o},hb=t=>{if(typeof t=="string")return t;let n,s="";for(let l=0;l<t.length;l++)t[l]&&(n=hb(t[l]))&&(s&&(s+=" "),s+=n);return s},E$=(t,...n)=>{let s,l,o,u;const d=m=>{const p=n.reduce((x,g)=>g(x),t());return s=X$(p),l=s.cache.get,o=s.cache.set,u=O,O(m)},O=m=>{const p=l(m);if(p)return p;const x=Z$(m,s);return o(m,x),x};return u=d,(...m)=>u(A$(...m))},q$=[],ct=t=>{const n=s=>s[t]||q$;return n.isThemeGetter=!0,n},mb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,pb=/^\((?:(\w[\w-]*):)?(.+)\)$/i,M$=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Y$=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,V$=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,U$=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,G$=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,L$=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,En=t=>M$.test(t),Qe=t=>!!t&&!Number.isNaN(Number(t)),qn=t=>!!t&&Number.isInteger(Number(t)),fO=t=>t.endsWith("%")&&Qe(t.slice(0,-1)),Ia=t=>Y$.test(t),xb=()=>!0,D$=t=>V$.test(t)&&!U$.test(t),Mf=()=>!1,W$=t=>G$.test(t),B$=t=>L$.test(t),H$=t=>!ue(t)&&!de(t),I$=t=>Jn(t,vb,Mf),ue=t=>mb.test(t),vs=t=>Jn(t,yb,D$),Gg=t=>Jn(t,s5,Qe),F$=t=>Jn(t,Qb,xb),K$=t=>Jn(t,Sb,Mf),Lg=t=>Jn(t,gb,Mf),J$=t=>Jn(t,bb,B$),Co=t=>Jn(t,jb,W$),de=t=>pb.test(t),Zr=t=>zs(t,yb),e5=t=>zs(t,Sb),Dg=t=>zs(t,gb),t5=t=>zs(t,vb),a5=t=>zs(t,bb),Xo=t=>zs(t,jb,!0),n5=t=>zs(t,Qb,!0),Jn=(t,n,s)=>{const l=mb.exec(t);return l?l[1]?n(l[1]):s(l[2]):!1},zs=(t,n,s=!1)=>{const l=pb.exec(t);return l?l[1]?n(l[1]):s:!1},gb=t=>t==="position"||t==="percentage",bb=t=>t==="image"||t==="url",vb=t=>t==="length"||t==="size"||t==="bg-size",yb=t=>t==="length",s5=t=>t==="number",Sb=t=>t==="family-name",Qb=t=>t==="number"||t==="weight",jb=t=>t==="shadow",l5=()=>{const t=ct("color"),n=ct("font"),s=ct("text"),l=ct("font-weight"),o=ct("tracking"),u=ct("leading"),d=ct("breakpoint"),O=ct("container"),m=ct("spacing"),p=ct("radius"),x=ct("shadow"),g=ct("inset-shadow"),b=ct("text-shadow"),S=ct("drop-shadow"),Q=ct("blur"),k=ct("perspective"),T=ct("aspect"),j=ct("ease"),P=ct("animate"),N=()=>["auto","avoid","all","avoid-page","page","left","right","column"],A=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],U=()=>[...A(),de,ue],C=()=>["auto","hidden","clip","visible","scroll"],X=()=>["auto","contain","none"],$=()=>[de,ue,m],W=()=>[En,"full","auto",...$()],E=()=>[qn,"none","subgrid",de,ue],ne=()=>["auto",{span:["full",qn,de,ue]},qn,de,ue],re=()=>[qn,"auto",de,ue],xe=()=>["auto","min","max","fr",de,ue],ie=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],J=()=>["start","end","center","stretch","center-safe","end-safe"],z=()=>["auto",...$()],B=()=>[En,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...$()],I=()=>[En,"screen","full","dvw","lvw","svw","min","max","fit",...$()],fe=()=>[En,"screen","full","lh","dvh","lvh","svh","min","max","fit",...$()],te=()=>[t,de,ue],Ae=()=>[...A(),Dg,Lg,{position:[de,ue]}],Se=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ve=()=>["auto","cover","contain",t5,I$,{size:[de,ue]}],Xe=()=>[fO,Zr,vs],L=()=>["","none","full",p,de,ue],oe=()=>["",Qe,Zr,vs],ze=()=>["solid","dashed","dotted","double"],Ot=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],_e=()=>[Qe,fO,Dg,Lg],tt=()=>["","none",Q,de,ue],bt=()=>["none",Qe,de,ue],vt=()=>["none",Qe,de,ue],It=()=>[Qe,de,ue],yt=()=>[En,"full",...$()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Ia],breakpoint:[Ia],color:[xb],container:[Ia],"drop-shadow":[Ia],ease:["in","out","in-out"],font:[H$],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Ia],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Ia],shadow:[Ia],spacing:["px",Qe],text:[Ia],"text-shadow":[Ia],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",En,ue,de,T]}],container:["container"],columns:[{columns:[Qe,ue,de,O]}],"break-after":[{"break-after":N()}],"break-before":[{"break-before":N()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:U()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:X()}],"overscroll-x":[{"overscroll-x":X()}],"overscroll-y":[{"overscroll-y":X()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:W()}],"inset-x":[{"inset-x":W()}],"inset-y":[{"inset-y":W()}],start:[{"inset-s":W(),start:W()}],end:[{"inset-e":W(),end:W()}],"inset-bs":[{"inset-bs":W()}],"inset-be":[{"inset-be":W()}],top:[{top:W()}],right:[{right:W()}],bottom:[{bottom:W()}],left:[{left:W()}],visibility:["visible","invisible","collapse"],z:[{z:[qn,"auto",de,ue]}],basis:[{basis:[En,"full","auto",O,...$()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Qe,En,"auto","initial","none",ue]}],grow:[{grow:["",Qe,de,ue]}],shrink:[{shrink:["",Qe,de,ue]}],order:[{order:[qn,"first","last","none",de,ue]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:ne()}],"col-start":[{"col-start":re()}],"col-end":[{"col-end":re()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:ne()}],"row-start":[{"row-start":re()}],"row-end":[{"row-end":re()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":xe()}],"auto-rows":[{"auto-rows":xe()}],gap:[{gap:$()}],"gap-x":[{"gap-x":$()}],"gap-y":[{"gap-y":$()}],"justify-content":[{justify:[...ie(),"normal"]}],"justify-items":[{"justify-items":[...J(),"normal"]}],"justify-self":[{"justify-self":["auto",...J()]}],"align-content":[{content:["normal",...ie()]}],"align-items":[{items:[...J(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...J(),{baseline:["","last"]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...J(),"baseline"]}],"place-self":[{"place-self":["auto",...J()]}],p:[{p:$()}],px:[{px:$()}],py:[{py:$()}],ps:[{ps:$()}],pe:[{pe:$()}],pbs:[{pbs:$()}],pbe:[{pbe:$()}],pt:[{pt:$()}],pr:[{pr:$()}],pb:[{pb:$()}],pl:[{pl:$()}],m:[{m:z()}],mx:[{mx:z()}],my:[{my:z()}],ms:[{ms:z()}],me:[{me:z()}],mbs:[{mbs:z()}],mbe:[{mbe:z()}],mt:[{mt:z()}],mr:[{mr:z()}],mb:[{mb:z()}],ml:[{ml:z()}],"space-x":[{"space-x":$()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":$()}],"space-y-reverse":["space-y-reverse"],size:[{size:B()}],"inline-size":[{inline:["auto",...I()]}],"min-inline-size":[{"min-inline":["auto",...I()]}],"max-inline-size":[{"max-inline":["none",...I()]}],"block-size":[{block:["auto",...fe()]}],"min-block-size":[{"min-block":["auto",...fe()]}],"max-block-size":[{"max-block":["none",...fe()]}],w:[{w:[O,"screen",...B()]}],"min-w":[{"min-w":[O,"screen","none",...B()]}],"max-w":[{"max-w":[O,"screen","none","prose",{screen:[d]},...B()]}],h:[{h:["screen","lh",...B()]}],"min-h":[{"min-h":["screen","lh","none",...B()]}],"max-h":[{"max-h":["screen","lh",...B()]}],"font-size":[{text:["base",s,Zr,vs]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[l,n5,F$]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",fO,ue]}],"font-family":[{font:[e5,K$,n]}],"font-features":[{"font-features":[ue]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,de,ue]}],"line-clamp":[{"line-clamp":[Qe,"none",de,Gg]}],leading:[{leading:[u,...$()]}],"list-image":[{"list-image":["none",de,ue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",de,ue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:te()}],"text-color":[{text:te()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ze(),"wavy"]}],"text-decoration-thickness":[{decoration:[Qe,"from-font","auto",de,vs]}],"text-decoration-color":[{decoration:te()}],"underline-offset":[{"underline-offset":[Qe,"auto",de,ue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:$()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",de,ue]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",de,ue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ae()}],"bg-repeat":[{bg:Se()}],"bg-size":[{bg:ve()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},qn,de,ue],radial:["",de,ue],conic:[qn,de,ue]},a5,J$]}],"bg-color":[{bg:te()}],"gradient-from-pos":[{from:Xe()}],"gradient-via-pos":[{via:Xe()}],"gradient-to-pos":[{to:Xe()}],"gradient-from":[{from:te()}],"gradient-via":[{via:te()}],"gradient-to":[{to:te()}],rounded:[{rounded:L()}],"rounded-s":[{"rounded-s":L()}],"rounded-e":[{"rounded-e":L()}],"rounded-t":[{"rounded-t":L()}],"rounded-r":[{"rounded-r":L()}],"rounded-b":[{"rounded-b":L()}],"rounded-l":[{"rounded-l":L()}],"rounded-ss":[{"rounded-ss":L()}],"rounded-se":[{"rounded-se":L()}],"rounded-ee":[{"rounded-ee":L()}],"rounded-es":[{"rounded-es":L()}],"rounded-tl":[{"rounded-tl":L()}],"rounded-tr":[{"rounded-tr":L()}],"rounded-br":[{"rounded-br":L()}],"rounded-bl":[{"rounded-bl":L()}],"border-w":[{border:oe()}],"border-w-x":[{"border-x":oe()}],"border-w-y":[{"border-y":oe()}],"border-w-s":[{"border-s":oe()}],"border-w-e":[{"border-e":oe()}],"border-w-bs":[{"border-bs":oe()}],"border-w-be":[{"border-be":oe()}],"border-w-t":[{"border-t":oe()}],"border-w-r":[{"border-r":oe()}],"border-w-b":[{"border-b":oe()}],"border-w-l":[{"border-l":oe()}],"divide-x":[{"divide-x":oe()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":oe()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ze(),"hidden","none"]}],"divide-style":[{divide:[...ze(),"hidden","none"]}],"border-color":[{border:te()}],"border-color-x":[{"border-x":te()}],"border-color-y":[{"border-y":te()}],"border-color-s":[{"border-s":te()}],"border-color-e":[{"border-e":te()}],"border-color-bs":[{"border-bs":te()}],"border-color-be":[{"border-be":te()}],"border-color-t":[{"border-t":te()}],"border-color-r":[{"border-r":te()}],"border-color-b":[{"border-b":te()}],"border-color-l":[{"border-l":te()}],"divide-color":[{divide:te()}],"outline-style":[{outline:[...ze(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Qe,de,ue]}],"outline-w":[{outline:["",Qe,Zr,vs]}],"outline-color":[{outline:te()}],shadow:[{shadow:["","none",x,Xo,Co]}],"shadow-color":[{shadow:te()}],"inset-shadow":[{"inset-shadow":["none",g,Xo,Co]}],"inset-shadow-color":[{"inset-shadow":te()}],"ring-w":[{ring:oe()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:te()}],"ring-offset-w":[{"ring-offset":[Qe,vs]}],"ring-offset-color":[{"ring-offset":te()}],"inset-ring-w":[{"inset-ring":oe()}],"inset-ring-color":[{"inset-ring":te()}],"text-shadow":[{"text-shadow":["none",b,Xo,Co]}],"text-shadow-color":[{"text-shadow":te()}],opacity:[{opacity:[Qe,de,ue]}],"mix-blend":[{"mix-blend":[...Ot(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Ot()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Qe]}],"mask-image-linear-from-pos":[{"mask-linear-from":_e()}],"mask-image-linear-to-pos":[{"mask-linear-to":_e()}],"mask-image-linear-from-color":[{"mask-linear-from":te()}],"mask-image-linear-to-color":[{"mask-linear-to":te()}],"mask-image-t-from-pos":[{"mask-t-from":_e()}],"mask-image-t-to-pos":[{"mask-t-to":_e()}],"mask-image-t-from-color":[{"mask-t-from":te()}],"mask-image-t-to-color":[{"mask-t-to":te()}],"mask-image-r-from-pos":[{"mask-r-from":_e()}],"mask-image-r-to-pos":[{"mask-r-to":_e()}],"mask-image-r-from-color":[{"mask-r-from":te()}],"mask-image-r-to-color":[{"mask-r-to":te()}],"mask-image-b-from-pos":[{"mask-b-from":_e()}],"mask-image-b-to-pos":[{"mask-b-to":_e()}],"mask-image-b-from-color":[{"mask-b-from":te()}],"mask-image-b-to-color":[{"mask-b-to":te()}],"mask-image-l-from-pos":[{"mask-l-from":_e()}],"mask-image-l-to-pos":[{"mask-l-to":_e()}],"mask-image-l-from-color":[{"mask-l-from":te()}],"mask-image-l-to-color":[{"mask-l-to":te()}],"mask-image-x-from-pos":[{"mask-x-from":_e()}],"mask-image-x-to-pos":[{"mask-x-to":_e()}],"mask-image-x-from-color":[{"mask-x-from":te()}],"mask-image-x-to-color":[{"mask-x-to":te()}],"mask-image-y-from-pos":[{"mask-y-from":_e()}],"mask-image-y-to-pos":[{"mask-y-to":_e()}],"mask-image-y-from-color":[{"mask-y-from":te()}],"mask-image-y-to-color":[{"mask-y-to":te()}],"mask-image-radial":[{"mask-radial":[de,ue]}],"mask-image-radial-from-pos":[{"mask-radial-from":_e()}],"mask-image-radial-to-pos":[{"mask-radial-to":_e()}],"mask-image-radial-from-color":[{"mask-radial-from":te()}],"mask-image-radial-to-color":[{"mask-radial-to":te()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":A()}],"mask-image-conic-pos":[{"mask-conic":[Qe]}],"mask-image-conic-from-pos":[{"mask-conic-from":_e()}],"mask-image-conic-to-pos":[{"mask-conic-to":_e()}],"mask-image-conic-from-color":[{"mask-conic-from":te()}],"mask-image-conic-to-color":[{"mask-conic-to":te()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ae()}],"mask-repeat":[{mask:Se()}],"mask-size":[{mask:ve()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",de,ue]}],filter:[{filter:["","none",de,ue]}],blur:[{blur:tt()}],brightness:[{brightness:[Qe,de,ue]}],contrast:[{contrast:[Qe,de,ue]}],"drop-shadow":[{"drop-shadow":["","none",S,Xo,Co]}],"drop-shadow-color":[{"drop-shadow":te()}],grayscale:[{grayscale:["",Qe,de,ue]}],"hue-rotate":[{"hue-rotate":[Qe,de,ue]}],invert:[{invert:["",Qe,de,ue]}],saturate:[{saturate:[Qe,de,ue]}],sepia:[{sepia:["",Qe,de,ue]}],"backdrop-filter":[{"backdrop-filter":["","none",de,ue]}],"backdrop-blur":[{"backdrop-blur":tt()}],"backdrop-brightness":[{"backdrop-brightness":[Qe,de,ue]}],"backdrop-contrast":[{"backdrop-contrast":[Qe,de,ue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Qe,de,ue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Qe,de,ue]}],"backdrop-invert":[{"backdrop-invert":["",Qe,de,ue]}],"backdrop-opacity":[{"backdrop-opacity":[Qe,de,ue]}],"backdrop-saturate":[{"backdrop-saturate":[Qe,de,ue]}],"backdrop-sepia":[{"backdrop-sepia":["",Qe,de,ue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":$()}],"border-spacing-x":[{"border-spacing-x":$()}],"border-spacing-y":[{"border-spacing-y":$()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",de,ue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Qe,"initial",de,ue]}],ease:[{ease:["linear","initial",j,de,ue]}],delay:[{delay:[Qe,de,ue]}],animate:[{animate:["none",P,de,ue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[k,de,ue]}],"perspective-origin":[{"perspective-origin":U()}],rotate:[{rotate:bt()}],"rotate-x":[{"rotate-x":bt()}],"rotate-y":[{"rotate-y":bt()}],"rotate-z":[{"rotate-z":bt()}],scale:[{scale:vt()}],"scale-x":[{"scale-x":vt()}],"scale-y":[{"scale-y":vt()}],"scale-z":[{"scale-z":vt()}],"scale-3d":["scale-3d"],skew:[{skew:It()}],"skew-x":[{"skew-x":It()}],"skew-y":[{"skew-y":It()}],transform:[{transform:[de,ue,"","none","gpu","cpu"]}],"transform-origin":[{origin:U()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:yt()}],"translate-x":[{"translate-x":yt()}],"translate-y":[{"translate-y":yt()}],"translate-z":[{"translate-z":yt()}],"translate-none":["translate-none"],accent:[{accent:te()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:te()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",de,ue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":$()}],"scroll-mx":[{"scroll-mx":$()}],"scroll-my":[{"scroll-my":$()}],"scroll-ms":[{"scroll-ms":$()}],"scroll-me":[{"scroll-me":$()}],"scroll-mbs":[{"scroll-mbs":$()}],"scroll-mbe":[{"scroll-mbe":$()}],"scroll-mt":[{"scroll-mt":$()}],"scroll-mr":[{"scroll-mr":$()}],"scroll-mb":[{"scroll-mb":$()}],"scroll-ml":[{"scroll-ml":$()}],"scroll-p":[{"scroll-p":$()}],"scroll-px":[{"scroll-px":$()}],"scroll-py":[{"scroll-py":$()}],"scroll-ps":[{"scroll-ps":$()}],"scroll-pe":[{"scroll-pe":$()}],"scroll-pbs":[{"scroll-pbs":$()}],"scroll-pbe":[{"scroll-pbe":$()}],"scroll-pt":[{"scroll-pt":$()}],"scroll-pr":[{"scroll-pr":$()}],"scroll-pb":[{"scroll-pb":$()}],"scroll-pl":[{"scroll-pl":$()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",de,ue]}],fill:[{fill:["none",...te()]}],"stroke-w":[{stroke:[Qe,Zr,vs,Gg]}],stroke:[{stroke:["none",...te()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},r5=E$(l5);function le(...t){return r5(x$(t))}function i5({children:t}){return i.jsx(d$,{delayDuration:300,children:t})}function Wg({children:t,content:n,side:s="top",className:l}){return n?i.jsxs(O$,{children:[i.jsx(f$,{asChild:!0,children:t}),i.jsx(h$,{children:i.jsxs(m$,{side:s,sideOffset:6,className:le("z-50 px-2.5 py-1.5 text-xs font-sans","bg-surface-4 text-text-0 border border-border rounded-md shadow-lg","animate-in fade-in-0 zoom-in-95",l),children:[n,i.jsx(p$,{className:"fill-surface-4"})]})})]}):t}/**
|
|
29
|
+
`+x.trim(),timestamp:Date.now()}:S.push({from:"agent",text:x.trim(),timestamp:Date.now()}),b[m]=S.slice(-100),t({chatHistory:b}),vl("groove:chatHistory",b)}if(g&&g.trim()){const b={...n().activityLog};b[m]||(b[m]=[]),b[m]=[...b[m].slice(-200),{timestamp:Date.now(),text:g.trim(),type:p.type,subtype:"tool"}],t({activityLog:b}),vl("groove:activityLog",b)}break}case"agent:exit":{const m=n().agents.find(S=>S.id===o.agentId),p=(m==null?void 0:m.name)||o.agentId,x=o.status==="killed"||o.code===143||o.code===137,g=o.status==="completed"?`${p} completed`:x?`${p} stopped`:`${p} crashed (exit ${o.code})`,b=o.status==="completed"?"success":x?"info":"warning";n().addToast(b,g),(m==null?void 0:m.role)==="planner"&&o.status==="completed"&&setTimeout(()=>n().checkRecommendedTeam(),1e3);break}case"phase2:spawned":n().addToast("info",`QC agent ${o.name} auto-spawned`,"Auditing phase 1 work");break;case"phase2:failed":n().addToast("error","QC agent failed to spawn",o.error||"Unknown error");break;case"rotation:start":n().addToast("info",`Rotating ${o.agentName}...`);break;case"rotation:complete":{n().addToast("success",`Rotated ${o.agentName}`,`Saved ${o.tokensSaved} tokens`);const m=n().detailPanel;(m==null?void 0:m.type)==="agent"&&m.agentId===o.oldAgentId&&o.newAgentId&&t(p=>{var b,S;const x={...p.chatHistory},g={...p.tokenTimeline};return(b=x[o.oldAgentId])!=null&&b.length&&(x[o.newAgentId]=[...x[o.oldAgentId]]),(S=g[o.oldAgentId])!=null&&S.length&&(g[o.newAgentId]=[...g[o.oldAgentId]]),{chatHistory:x,tokenTimeline:g,detailPanel:{type:"agent",agentId:o.newAgentId}}});break}case"rotation:failed":n().addToast("error","Rotation failed",o.error);break;case"file:changed":{const m=n().editorRecentSaves[o.path];if(m&&Date.now()-m<2e3)break;t(p=>({editorChangedFiles:{...p.editorChangedFiles,[o.path]:o.timestamp}}));break}case"team:created":case"team:deleted":case"team:updated":n().fetchTeams();break;case"approval:request":t(m=>({pendingApprovals:[...m.pendingApprovals,o.data]})),n().addToast("warning",`Approval needed: ${((u=o.data)==null?void 0:u.agentName)||"agent"}`,(O=(d=o.data)==null?void 0:d.action)==null?void 0:O.description);break;case"approval:resolved":{const m=o.data;t(p=>({pendingApprovals:p.pendingApprovals.filter(x=>x.id!==m.id),resolvedApprovals:[m,...p.resolvedApprovals].slice(0,200)}));break}case"conflict:detected":n().addToast("error",`Scope conflict: ${o.agentName||"agent"}`,o.filePath?`File: ${o.filePath}`:void 0);break;case"qc:activated":n().addToast("info","QC agent activated",`${o.agentCount||"4+"} agents running`);break;case"journalist:cycle":t({journalistStatus:o.data||null});break;case"schedule:execute":n().addToast("info",`Scheduled agent spawned: ${o.name||o.role||"agent"}`);break;case"gateway:status":t({gateways:o.data||[]});break}},s.onclose=()=>{t({connected:!1,hydrated:!1,ws:null,daemonHost:null,tunneled:!1}),setTimeout(()=>n().connect(),2e3)},s.onerror=()=>s.close()},setActiveView(s){t({activeView:s})},async fetchTeams(){try{const s=await ee.get("/teams"),l=s.teams||[],o=s.defaultTeamId,{activeTeamId:u}=n(),O=l.map(m=>m.id).includes(u)?u:o;t({teams:l,activeTeamId:O}),O&&localStorage.setItem("groove:activeTeamId",O)}catch{}},switchTeam(s){t({activeTeamId:s,detailPanel:null}),localStorage.setItem("groove:activeTeamId",s)},async createTeam(s,l){try{const o={name:s};l&&(o.workingDir=l);const u=await ee.post("/teams",o);return t({activeTeamId:u.id}),localStorage.setItem("groove:activeTeamId",u.id),n().addToast("success",`Team "${s}" created`),u}catch(o){throw n().addToast("error","Failed to create team",o.message),o}},async deleteTeam(s){const l=n().teams.find(o=>o.id===s);if(l!=null&&l.isDefault){n().addToast("warning","Cannot delete the default team");return}try{await ee.delete(`/teams/${s}`),n().addToast("info",`Team "${l==null?void 0:l.name}" deleted`)}catch(o){n().addToast("error","Failed to delete team",o.message)}},async renameTeam(s,l){try{const o=await ee.patch(`/teams/${s}`,{name:l});return t(u=>({teams:u.teams.map(d=>d.id===s?o:d)})),o}catch(o){throw n().addToast("error","Failed to rename team",o.message),o}},openDetail(s){t({detailPanel:s})},closeDetail(){t({detailPanel:null})},selectAgent(s){t({detailPanel:{type:"agent",agentId:s}})},clearSelection(){t({detailPanel:null})},toggleCommandPalette(){t(s=>({commandPaletteOpen:!s.commandPaletteOpen}))},setDetailPanelWidth(s){t({detailPanelWidth:s}),localStorage.setItem("groove:detailWidth",String(s))},setTerminalVisible(s){t({terminalVisible:s}),localStorage.setItem("groove:terminalVisible",String(s))},setTerminalHeight(s){t({terminalHeight:s}),localStorage.setItem("groove:terminalHeight",String(s))},setTerminalFullHeight(s){t({terminalFullHeight:s})},addToast(s,l,o){const u=++aw;t(d=>({toasts:[...d.toasts,{id:u,type:s,message:l,detail:o}]}))},removeToast(s){t(l=>({toasts:l.toasts.filter(o=>o.id!==s)}))},async checkMarketplaceAuth(){try{const s=await ee.get("/auth/status");t({marketplaceAuthenticated:s.authenticated||!1,marketplaceUser:s.user||null})}catch{t({marketplaceAuthenticated:!1,marketplaceUser:null})}},async marketplaceLogin(){try{const s=await ee.get("/auth/login-url");s.url&&window.open(s.url,"_blank");const l=setInterval(async()=>{var o,u;try{const d=await ee.get("/auth/status");d.authenticated&&(clearInterval(l),t({marketplaceAuthenticated:!0,marketplaceUser:d.user}),n().addToast("success",`Signed in as ${((o=d.user)==null?void 0:o.displayName)||((u=d.user)==null?void 0:u.id)||"user"}`))}catch{}},2e3);setTimeout(()=>clearInterval(l),3e5)}catch(s){n().addToast("error","Login failed",s.message)}},async marketplaceLogout(){try{await ee.post("/auth/logout"),t({marketplaceAuthenticated:!1,marketplaceUser:null}),n().addToast("info","Signed out of marketplace")}catch(s){n().addToast("error","Logout failed",s.message)}},async marketplaceCheckout(s){try{const l=await ee.post("/auth/checkout",{skillId:s});return l.url&&window.open(l.url,"_blank"),l}catch(l){throw n().addToast("error","Checkout failed",l.message),l}},async fetchApprovals(){try{const s=await ee.get("/approvals");t({pendingApprovals:s.pending||[],resolvedApprovals:s.resolved||[]})}catch{}},async approveRequest(s){try{await ee.post(`/approvals/${s}/approve`),t(l=>({pendingApprovals:l.pendingApprovals.filter(o=>o.id!==s)})),n().addToast("success","Approved")}catch(l){n().addToast("error","Approve failed",l.message)}},async rejectRequest(s,l=""){try{await ee.post(`/approvals/${s}/reject`,{reason:l}),t(o=>({pendingApprovals:o.pendingApprovals.filter(u=>u.id!==s)})),n().addToast("info","Rejected")}catch(o){n().addToast("error","Reject failed",o.message)}},async checkRecommendedTeam(){var s;try{const l=await ee.get("/recommended-team");l&&((s=l.agents)!=null&&s.length)?t({recommendedTeam:l}):t({recommendedTeam:null})}catch{t({recommendedTeam:null})}},async launchRecommendedTeam(){try{t({recommendedTeam:null}),n().addToast("info","Launching team...");const s=await ee.post("/recommended-team/launch"),l=[s.phase2Pending?`${s.phase2Pending} QC queued`:"",s.projectDir?`→ ${s.projectDir}/`:""].filter(Boolean).join(" · ");return n().addToast("success",`Launched ${s.launched} agents`,l||void 0),ee.post("/cleanup").catch(()=>{}),s}catch(s){throw n().addToast("error","Launch failed",s.message),s}},async fetchJournalist(){try{const s=await ee.get("/journalist");return t({journalistStatus:s}),s}catch{return null}},async triggerJournalistCycle(){try{const s=await ee.post("/journalist/cycle");return n().addToast("success","Synthesis cycle triggered"),t({journalistStatus:s}),s}catch(s){throw n().addToast("error","Synthesis failed",s.message),s}},async spawnAgent(s){try{const l=n().activeTeamId,o=await ee.post("/agents",{...s,teamId:l});return n().addToast("success",`Spawned ${o.name}`),o}catch(l){throw n().addToast("error","Spawn failed",l.message),l}},async killAgent(s,l=!1){try{await ee.delete(`/agents/${s}?purge=${l}`)}catch(o){n().addToast("error","Kill failed",o.message)}},async rotateAgent(s){try{return await ee.post(`/agents/${s}/rotate`)}catch(l){throw n().addToast("error","Rotation failed",l.message),l}},async fetchProviders(){return ee.get("/providers")},addChatMessage(s,l,o,u=!1){t(d=>{const O={...d.chatHistory};return O[s]||(O[s]=[]),O[s]=[...O[s].slice(-100),{from:l,text:o,timestamp:Date.now(),isQuery:u}],vl("groove:chatHistory",O),{chatHistory:O}})},async instructAgent(s,l){var d,O;const o=n().agents.find(m=>m.id===s);if(o&&(o.status==="running"||o.status==="starting")){n().addChatMessage(s,"user",l,!1);try{const m=await ee.post(`/agents/${s}/query`,{message:l});return n().addChatMessage(s,"agent",m.response),m}catch(m){throw n().addChatMessage(s,"system",`failed: ${m.message}`),m}}n().addChatMessage(s,"user",l,!1);try{const m=await ee.post(`/agents/${s}/instruct`,{message:l});for(const p of["chatHistory","activityLog","tokenTimeline"]){const x=n()[p][s];x!=null&&x.length&&t(g=>({[p]:{...g[p],[m.id]:[...x]}}))}return(d=n().chatHistory[s])!=null&&d.length&&vl("groove:chatHistory",n().chatHistory),(O=n().activityLog[s])!=null&&O.length&&vl("groove:activityLog",n().activityLog),n().selectAgent(m.id),m}catch(m){throw n().addChatMessage(s,"system",`failed: ${m.message}`),m}},async queryAgent(s,l){n().addChatMessage(s,"user",l,!0);try{const o=await ee.post(`/agents/${s}/query`,{message:l});return n().addChatMessage(s,"agent",o.response),o}catch(o){throw n().addChatMessage(s,"system",`query failed: ${o.message}`),o}},async openFile(s){var u;if(n().editorFiles[s]||n().editorOpenTabs.includes(s)){t(d=>({editorActiveFile:s,editorOpenTabs:d.editorOpenTabs.includes(s)?d.editorOpenTabs:[...d.editorOpenTabs,s]}));return}const l=(u=s.split(".").pop())==null?void 0:u.toLowerCase();if(["png","jpg","jpeg","gif","svg","webp","ico","bmp","avif","mp4","webm","mov","avi","mkv","ogv"].includes(l)){t(d=>({editorActiveFile:s,editorOpenTabs:[...d.editorOpenTabs,s]}));return}try{const d=await ee.get(`/files/read?path=${encodeURIComponent(s)}`);if(d.binary){n().addToast("warning","Binary file — cannot open");return}t(m=>({editorFiles:{...m.editorFiles,[s]:{content:d.content,originalContent:d.content,language:d.language,loadedAt:Date.now()}},editorActiveFile:s,editorOpenTabs:m.editorOpenTabs.includes(s)?m.editorOpenTabs:[...m.editorOpenTabs,s]}));const O=n().ws;(O==null?void 0:O.readyState)===1&&O.send(JSON.stringify({type:"editor:watch",path:s}))}catch(d){n().addToast("error","Failed to open file",d.message)}},closeFile(s){t(o=>{const u=o.editorOpenTabs.filter(p=>p!==s),d={...o.editorFiles};delete d[s];const O={...o.editorChangedFiles};delete O[s];let m=o.editorActiveFile;if(m===s){const p=o.editorOpenTabs.indexOf(s);m=u[Math.min(p,u.length-1)]||null}return{editorOpenTabs:u,editorFiles:d,editorChangedFiles:O,editorActiveFile:m}});const l=n().ws;(l==null?void 0:l.readyState)===1&&l.send(JSON.stringify({type:"editor:unwatch",path:s}))},setActiveFile(s){t({editorActiveFile:s})},updateFileContent(s,l){t(o=>({editorFiles:{...o.editorFiles,[s]:{...o.editorFiles[s],content:l}}}))},async saveFile(s){const l=n().editorFiles[s];if(l)try{await ee.post("/files/write",{path:s,content:l.content}),t(o=>({editorFiles:{...o.editorFiles,[s]:{...o.editorFiles[s],originalContent:l.content}},editorChangedFiles:(()=>{const u={...o.editorChangedFiles};return delete u[s],u})(),editorRecentSaves:{...o.editorRecentSaves,[s]:Date.now()}})),n().addToast("success","File saved")}catch(o){n().addToast("error","Save failed",o.message)}},async reloadFile(s){try{const l=await ee.get(`/files/read?path=${encodeURIComponent(s)}`);if(l.binary)return;t(o=>({editorFiles:{...o.editorFiles,[s]:{content:l.content,originalContent:l.content,language:l.language,loadedAt:Date.now()}},editorChangedFiles:(()=>{const u={...o.editorChangedFiles};return delete u[s],u})()}))}catch{}},dismissFileChange(s){t(l=>{const o={...l.editorChangedFiles};return delete o[s],{editorChangedFiles:o}})},async fetchTreeDir(s){try{const l=await ee.get(`/files/tree?path=${encodeURIComponent(s)}`);t(o=>({editorTreeCache:{...o.editorTreeCache,[s]:l.entries}}))}catch{}},async createFile(s){try{await ee.post("/files/create",{path:s});const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),n().addToast("success","File created"),!0}catch(l){return n().addToast("error","Create failed",l.message),!1}},async createDir(s){try{await ee.post("/files/mkdir",{path:s});const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),n().addToast("success","Folder created"),!0}catch(l){return n().addToast("error","Create failed",l.message),!1}},async deleteFile(s){try{await ee.delete(`/files/delete?path=${encodeURIComponent(s)}`),n().editorOpenTabs.includes(s)&&n().closeFile(s);const l=s.includes("/")?s.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(l),t(o=>{const u={...o.editorTreeCache};return delete u[s],{editorTreeCache:u}}),n().addToast("success","Deleted"),!0}catch(l){return n().addToast("error","Delete failed",l.message),!1}},async renameFile(s,l){try{await ee.post("/files/rename",{oldPath:s,newPath:l}),t(d=>{const O=d.editorOpenTabs.map(x=>x===s?l:x),m={...d.editorFiles};m[s]&&(m[l]=m[s],delete m[s]);const p=d.editorActiveFile===s?l:d.editorActiveFile;return{editorOpenTabs:O,editorFiles:m,editorActiveFile:p}});const o=s.includes("/")?s.split("/").slice(0,-1).join("/"):"",u=l.includes("/")?l.split("/").slice(0,-1).join("/"):"";return await n().fetchTreeDir(o),u!==o&&await n().fetchTreeDir(u),n().addToast("success","Renamed"),!0}catch(o){return n().addToast("error","Rename failed",o.message),!1}}}));function nw(t){v.useEffect(()=>{function n(s){for(const l of t){const o=l.meta?s.metaKey||s.ctrlKey:!0,u=l.shift?s.shiftKey:!s.shiftKey;if(s.key.toLowerCase()===l.key.toLowerCase()&&o&&u){s.preventDefault(),l.handler();return}}}return document.addEventListener("keydown",n),()=>document.removeEventListener("keydown",n)},[t])}function Ee(t,n,{checkForDefaultPrevented:s=!0}={}){return function(o){if(t==null||t(o),s===!1||!o.defaultPrevented)return n==null?void 0:n(o)}}function $g(t,n){if(typeof t=="function")return t(n);t!=null&&(t.current=n)}function T0(...t){return n=>{let s=!1;const l=t.map(o=>{const u=$g(o,n);return!s&&typeof u=="function"&&(s=!0),u});if(s)return()=>{for(let o=0;o<l.length;o++){const u=l[o];typeof u=="function"?u():$g(t[o],null)}}}}function it(...t){return v.useCallback(T0(...t),t)}function sw(t,n){const s=v.createContext(n),l=u=>{const{children:d,...O}=u,m=v.useMemo(()=>O,Object.values(O));return i.jsx(s.Provider,{value:m,children:d})};l.displayName=t+"Provider";function o(u){const d=v.useContext(s);if(d)return d;if(n!==void 0)return n;throw new Error(`\`${u}\` must be used within \`${t}\``)}return[l,o]}function Ns(t,n=[]){let s=[];function l(u,d){const O=v.createContext(d),m=s.length;s=[...s,d];const p=g=>{var j;const{scope:b,children:S,...Q}=g,k=((j=b==null?void 0:b[t])==null?void 0:j[m])||O,T=v.useMemo(()=>Q,Object.values(Q));return i.jsx(k.Provider,{value:T,children:S})};p.displayName=u+"Provider";function x(g,b){var k;const S=((k=b==null?void 0:b[t])==null?void 0:k[m])||O,Q=v.useContext(S);if(Q)return Q;if(d!==void 0)return d;throw new Error(`\`${g}\` must be used within \`${u}\``)}return[p,x]}const o=()=>{const u=s.map(d=>v.createContext(d));return function(O){const m=(O==null?void 0:O[t])||u;return v.useMemo(()=>({[`__scope${t}`]:{...O,[t]:m}}),[O,m])}};return o.scopeName=t,[l,lw(o,...n)]}function lw(...t){const n=t[0];if(t.length===1)return n;const s=()=>{const l=t.map(o=>({useScope:o(),scopeName:o.scopeName}));return function(u){const d=l.reduce((O,{useScope:m,scopeName:p})=>{const g=m(u)[`__scope${p}`];return{...O,...g}},{});return v.useMemo(()=>({[`__scope${n.scopeName}`]:d}),[d])}};return s.scopeName=n.scopeName,s}function ec(t){const n=rw(t),s=v.forwardRef((l,o)=>{const{children:u,...d}=l,O=v.Children.toArray(u),m=O.find(ow);if(m){const p=m.props.children,x=O.map(g=>g===m?v.Children.count(p)>1?v.Children.only(null):v.isValidElement(p)?p.props.children:null:g);return i.jsx(n,{...d,ref:o,children:v.isValidElement(p)?v.cloneElement(p,void 0,x):null})}return i.jsx(n,{...d,ref:o,children:u})});return s.displayName=`${t}.Slot`,s}function rw(t){const n=v.forwardRef((s,l)=>{const{children:o,...u}=s;if(v.isValidElement(o)){const d=uw(o),O=cw(u,o.props);return o.type!==v.Fragment&&(O.ref=l?T0(l,d):d),v.cloneElement(o,O)}return v.Children.count(o)>1?v.Children.only(null):null});return n.displayName=`${t}.SlotClone`,n}var P0=Symbol("radix.slottable");function iw(t){const n=({children:s})=>i.jsx(i.Fragment,{children:s});return n.displayName=`${t}.Slottable`,n.__radixId=P0,n}function ow(t){return v.isValidElement(t)&&typeof t.type=="function"&&"__radixId"in t.type&&t.type.__radixId===P0}function cw(t,n){const s={...n};for(const l in n){const o=t[l],u=n[l];/^on[A-Z]/.test(l)?o&&u?s[l]=(...O)=>{const m=u(...O);return o(...O),m}:o&&(s[l]=o):l==="style"?s[l]={...o,...u}:l==="className"&&(s[l]=[o,u].filter(Boolean).join(" "))}return{...t,...s}}function uw(t){var l,o;let n=(l=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:l.get,s=n&&"isReactWarning"in n&&n.isReactWarning;return s?t.ref:(n=(o=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:o.get,s=n&&"isReactWarning"in n&&n.isReactWarning,s?t.props.ref:t.props.ref||t.ref)}var dw=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],Be=dw.reduce((t,n)=>{const s=ec(`Primitive.${n}`),l=v.forwardRef((o,u)=>{const{asChild:d,...O}=o,m=d?s:n;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),i.jsx(m,{...O,ref:u})});return l.displayName=`Primitive.${n}`,{...t,[n]:l}},{});function Ow(t,n){t&&v0.flushSync(()=>t.dispatchEvent(n))}function zt(t){const n=v.useRef(t);return v.useEffect(()=>{n.current=t}),v.useMemo(()=>(...s)=>{var l;return(l=n.current)==null?void 0:l.call(n,...s)},[])}function fw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t);v.useEffect(()=>{const l=o=>{o.key==="Escape"&&s(o)};return n.addEventListener("keydown",l,{capture:!0}),()=>n.removeEventListener("keydown",l,{capture:!0})},[s,n])}var hw="DismissableLayer",ef="dismissableLayer.update",mw="dismissableLayer.pointerDownOutside",pw="dismissableLayer.focusOutside",Tg,N0=v.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set}),$f=v.forwardRef((t,n)=>{const{disableOutsidePointerEvents:s=!1,onEscapeKeyDown:l,onPointerDownOutside:o,onFocusOutside:u,onInteractOutside:d,onDismiss:O,...m}=t,p=v.useContext(N0),[x,g]=v.useState(null),b=(x==null?void 0:x.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,S]=v.useState({}),Q=it(n,X=>g(X)),k=Array.from(p.layers),[T]=[...p.layersWithOutsidePointerEventsDisabled].slice(-1),j=k.indexOf(T),P=x?k.indexOf(x):-1,N=p.layersWithOutsidePointerEventsDisabled.size>0,A=P>=j,U=bw(X=>{const $=X.target,W=[...p.branches].some(E=>E.contains($));!A||W||(o==null||o(X),d==null||d(X),X.defaultPrevented||O==null||O())},b),C=vw(X=>{const $=X.target;[...p.branches].some(E=>E.contains($))||(u==null||u(X),d==null||d(X),X.defaultPrevented||O==null||O())},b);return fw(X=>{P===p.layers.size-1&&(l==null||l(X),!X.defaultPrevented&&O&&(X.preventDefault(),O()))},b),v.useEffect(()=>{if(x)return s&&(p.layersWithOutsidePointerEventsDisabled.size===0&&(Tg=b.body.style.pointerEvents,b.body.style.pointerEvents="none"),p.layersWithOutsidePointerEventsDisabled.add(x)),p.layers.add(x),Pg(),()=>{s&&p.layersWithOutsidePointerEventsDisabled.size===1&&(b.body.style.pointerEvents=Tg)}},[x,b,s,p]),v.useEffect(()=>()=>{x&&(p.layers.delete(x),p.layersWithOutsidePointerEventsDisabled.delete(x),Pg())},[x,p]),v.useEffect(()=>{const X=()=>S({});return document.addEventListener(ef,X),()=>document.removeEventListener(ef,X)},[]),i.jsx(Be.div,{...m,ref:Q,style:{pointerEvents:N?A?"auto":"none":void 0,...t.style},onFocusCapture:Ee(t.onFocusCapture,C.onFocusCapture),onBlurCapture:Ee(t.onBlurCapture,C.onBlurCapture),onPointerDownCapture:Ee(t.onPointerDownCapture,U.onPointerDownCapture)})});$f.displayName=hw;var xw="DismissableLayerBranch",gw=v.forwardRef((t,n)=>{const s=v.useContext(N0),l=v.useRef(null),o=it(n,l);return v.useEffect(()=>{const u=l.current;if(u)return s.branches.add(u),()=>{s.branches.delete(u)}},[s.branches]),i.jsx(Be.div,{...t,ref:o})});gw.displayName=xw;function bw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t),l=v.useRef(!1),o=v.useRef(()=>{});return v.useEffect(()=>{const u=O=>{if(O.target&&!l.current){let m=function(){z0(mw,s,p,{discrete:!0})};const p={originalEvent:O};O.pointerType==="touch"?(n.removeEventListener("click",o.current),o.current=m,n.addEventListener("click",o.current,{once:!0})):m()}else n.removeEventListener("click",o.current);l.current=!1},d=window.setTimeout(()=>{n.addEventListener("pointerdown",u)},0);return()=>{window.clearTimeout(d),n.removeEventListener("pointerdown",u),n.removeEventListener("click",o.current)}},[n,s]),{onPointerDownCapture:()=>l.current=!0}}function vw(t,n=globalThis==null?void 0:globalThis.document){const s=zt(t),l=v.useRef(!1);return v.useEffect(()=>{const o=u=>{u.target&&!l.current&&z0(pw,s,{originalEvent:u},{discrete:!1})};return n.addEventListener("focusin",o),()=>n.removeEventListener("focusin",o)},[n,s]),{onFocusCapture:()=>l.current=!0,onBlurCapture:()=>l.current=!1}}function Pg(){const t=new CustomEvent(ef);document.dispatchEvent(t)}function z0(t,n,s,{discrete:l}){const o=s.originalEvent.target,u=new CustomEvent(t,{bubbles:!1,cancelable:!0,detail:s});n&&o.addEventListener(t,n,{once:!0}),l?Ow(o,u):o.dispatchEvent(u)}var ln=globalThis!=null&&globalThis.document?v.useLayoutEffect:()=>{},yw=x0[" useId ".trim().toString()]||(()=>{}),Sw=0;function Ql(t){const[n,s]=v.useState(yw());return ln(()=>{s(l=>l??String(Sw++))},[t]),t||(n?`radix-${n}`:"")}const Qw=["top","right","bottom","left"],Bn=Math.min,Wt=Math.max,tc=Math.round,zo=Math.floor,$a=t=>({x:t,y:t}),jw={left:"right",right:"left",bottom:"top",top:"bottom"};function tf(t,n,s){return Wt(t,Bn(n,s))}function rn(t,n){return typeof t=="function"?t(n):t}function on(t){return t.split("-")[0]}function Zl(t){return t.split("-")[1]}function Tf(t){return t==="x"?"y":"x"}function Pf(t){return t==="y"?"height":"width"}function ka(t){const n=t[0];return n==="t"||n==="b"?"y":"x"}function Nf(t){return Tf(ka(t))}function ww(t,n,s){s===void 0&&(s=!1);const l=Zl(t),o=Nf(t),u=Pf(o);let d=o==="x"?l===(s?"end":"start")?"right":"left":l==="start"?"bottom":"top";return n.reference[u]>n.floating[u]&&(d=ac(d)),[d,ac(d)]}function kw(t){const n=ac(t);return[af(t),n,af(n)]}function af(t){return t.includes("start")?t.replace("start","end"):t.replace("end","start")}const Ng=["left","right"],zg=["right","left"],$w=["top","bottom"],Tw=["bottom","top"];function Pw(t,n,s){switch(t){case"top":case"bottom":return s?n?zg:Ng:n?Ng:zg;case"left":case"right":return n?$w:Tw;default:return[]}}function Nw(t,n,s,l){const o=Zl(t);let u=Pw(on(t),s==="start",l);return o&&(u=u.map(d=>d+"-"+o),n&&(u=u.concat(u.map(af)))),u}function ac(t){const n=on(t);return jw[n]+t.slice(n.length)}function zw(t){return{top:0,right:0,bottom:0,left:0,...t}}function R0(t){return typeof t!="number"?zw(t):{top:t,right:t,bottom:t,left:t}}function nc(t){const{x:n,y:s,width:l,height:o}=t;return{width:l,height:o,top:s,left:n,right:n+l,bottom:s+o,x:n,y:s}}function Rg(t,n,s){let{reference:l,floating:o}=t;const u=ka(n),d=Nf(n),O=Pf(d),m=on(n),p=u==="y",x=l.x+l.width/2-o.width/2,g=l.y+l.height/2-o.height/2,b=l[O]/2-o[O]/2;let S;switch(m){case"top":S={x,y:l.y-o.height};break;case"bottom":S={x,y:l.y+l.height};break;case"right":S={x:l.x+l.width,y:g};break;case"left":S={x:l.x-o.width,y:g};break;default:S={x:l.x,y:l.y}}switch(Zl(n)){case"start":S[d]-=b*(s&&p?-1:1);break;case"end":S[d]+=b*(s&&p?-1:1);break}return S}async function Rw(t,n){var s;n===void 0&&(n={});const{x:l,y:o,platform:u,rects:d,elements:O,strategy:m}=t,{boundary:p="clippingAncestors",rootBoundary:x="viewport",elementContext:g="floating",altBoundary:b=!1,padding:S=0}=rn(n,t),Q=R0(S),T=O[b?g==="floating"?"reference":"floating":g],j=nc(await u.getClippingRect({element:(s=await(u.isElement==null?void 0:u.isElement(T)))==null||s?T:T.contextElement||await(u.getDocumentElement==null?void 0:u.getDocumentElement(O.floating)),boundary:p,rootBoundary:x,strategy:m})),P=g==="floating"?{x:l,y:o,width:d.floating.width,height:d.floating.height}:d.reference,N=await(u.getOffsetParent==null?void 0:u.getOffsetParent(O.floating)),A=await(u.isElement==null?void 0:u.isElement(N))?await(u.getScale==null?void 0:u.getScale(N))||{x:1,y:1}:{x:1,y:1},U=nc(u.convertOffsetParentRelativeRectToViewportRelativeRect?await u.convertOffsetParentRelativeRectToViewportRelativeRect({elements:O,rect:P,offsetParent:N,strategy:m}):P);return{top:(j.top-U.top+Q.top)/A.y,bottom:(U.bottom-j.bottom+Q.bottom)/A.y,left:(j.left-U.left+Q.left)/A.x,right:(U.right-j.right+Q.right)/A.x}}const Cw=50,Xw=async(t,n,s)=>{const{placement:l="bottom",strategy:o="absolute",middleware:u=[],platform:d}=s,O=d.detectOverflow?d:{...d,detectOverflow:Rw},m=await(d.isRTL==null?void 0:d.isRTL(n));let p=await d.getElementRects({reference:t,floating:n,strategy:o}),{x,y:g}=Rg(p,l,m),b=l,S=0;const Q={};for(let k=0;k<u.length;k++){const T=u[k];if(!T)continue;const{name:j,fn:P}=T,{x:N,y:A,data:U,reset:C}=await P({x,y:g,initialPlacement:l,placement:b,strategy:o,middlewareData:Q,rects:p,platform:O,elements:{reference:t,floating:n}});x=N??x,g=A??g,Q[j]={...Q[j],...U},C&&S<Cw&&(S++,typeof C=="object"&&(C.placement&&(b=C.placement),C.rects&&(p=C.rects===!0?await d.getElementRects({reference:t,floating:n,strategy:o}):C.rects),{x,y:g}=Rg(p,b,m)),k=-1)}return{x,y:g,placement:b,strategy:o,middlewareData:Q}},_w=t=>({name:"arrow",options:t,async fn(n){const{x:s,y:l,placement:o,rects:u,platform:d,elements:O,middlewareData:m}=n,{element:p,padding:x=0}=rn(t,n)||{};if(p==null)return{};const g=R0(x),b={x:s,y:l},S=Nf(o),Q=Pf(S),k=await d.getDimensions(p),T=S==="y",j=T?"top":"left",P=T?"bottom":"right",N=T?"clientHeight":"clientWidth",A=u.reference[Q]+u.reference[S]-b[S]-u.floating[Q],U=b[S]-u.reference[S],C=await(d.getOffsetParent==null?void 0:d.getOffsetParent(p));let X=C?C[N]:0;(!X||!await(d.isElement==null?void 0:d.isElement(C)))&&(X=O.floating[N]||u.floating[Q]);const $=A/2-U/2,W=X/2-k[Q]/2-1,E=Bn(g[j],W),ne=Bn(g[P],W),re=E,xe=X-k[Q]-ne,ie=X/2-k[Q]/2+$,J=tf(re,ie,xe),z=!m.arrow&&Zl(o)!=null&&ie!==J&&u.reference[Q]/2-(ie<re?E:ne)-k[Q]/2<0,B=z?ie<re?ie-re:ie-xe:0;return{[S]:b[S]+B,data:{[S]:J,centerOffset:ie-J-B,...z&&{alignmentOffset:B}},reset:z}}}),Zw=function(t){return t===void 0&&(t={}),{name:"flip",options:t,async fn(n){var s,l;const{placement:o,middlewareData:u,rects:d,initialPlacement:O,platform:m,elements:p}=n,{mainAxis:x=!0,crossAxis:g=!0,fallbackPlacements:b,fallbackStrategy:S="bestFit",fallbackAxisSideDirection:Q="none",flipAlignment:k=!0,...T}=rn(t,n);if((s=u.arrow)!=null&&s.alignmentOffset)return{};const j=on(o),P=ka(O),N=on(O)===O,A=await(m.isRTL==null?void 0:m.isRTL(p.floating)),U=b||(N||!k?[ac(O)]:kw(O)),C=Q!=="none";!b&&C&&U.push(...Nw(O,k,Q,A));const X=[O,...U],$=await m.detectOverflow(n,T),W=[];let E=((l=u.flip)==null?void 0:l.overflows)||[];if(x&&W.push($[j]),g){const ie=ww(o,d,A);W.push($[ie[0]],$[ie[1]])}if(E=[...E,{placement:o,overflows:W}],!W.every(ie=>ie<=0)){var ne,re;const ie=(((ne=u.flip)==null?void 0:ne.index)||0)+1,J=X[ie];if(J&&(!(g==="alignment"?P!==ka(J):!1)||E.every(I=>ka(I.placement)===P?I.overflows[0]>0:!0)))return{data:{index:ie,overflows:E},reset:{placement:J}};let z=(re=E.filter(B=>B.overflows[0]<=0).sort((B,I)=>B.overflows[1]-I.overflows[1])[0])==null?void 0:re.placement;if(!z)switch(S){case"bestFit":{var xe;const B=(xe=E.filter(I=>{if(C){const fe=ka(I.placement);return fe===P||fe==="y"}return!0}).map(I=>[I.placement,I.overflows.filter(fe=>fe>0).reduce((fe,te)=>fe+te,0)]).sort((I,fe)=>I[1]-fe[1])[0])==null?void 0:xe[0];B&&(z=B);break}case"initialPlacement":z=O;break}if(o!==z)return{reset:{placement:z}}}return{}}}};function Cg(t,n){return{top:t.top-n.height,right:t.right-n.width,bottom:t.bottom-n.height,left:t.left-n.width}}function Xg(t){return Qw.some(n=>t[n]>=0)}const Aw=function(t){return t===void 0&&(t={}),{name:"hide",options:t,async fn(n){const{rects:s,platform:l}=n,{strategy:o="referenceHidden",...u}=rn(t,n);switch(o){case"referenceHidden":{const d=await l.detectOverflow(n,{...u,elementContext:"reference"}),O=Cg(d,s.reference);return{data:{referenceHiddenOffsets:O,referenceHidden:Xg(O)}}}case"escaped":{const d=await l.detectOverflow(n,{...u,altBoundary:!0}),O=Cg(d,s.floating);return{data:{escapedOffsets:O,escaped:Xg(O)}}}default:return{}}}}},C0=new Set(["left","top"]);async function Ew(t,n){const{placement:s,platform:l,elements:o}=t,u=await(l.isRTL==null?void 0:l.isRTL(o.floating)),d=on(s),O=Zl(s),m=ka(s)==="y",p=C0.has(d)?-1:1,x=u&&m?-1:1,g=rn(n,t);let{mainAxis:b,crossAxis:S,alignmentAxis:Q}=typeof g=="number"?{mainAxis:g,crossAxis:0,alignmentAxis:null}:{mainAxis:g.mainAxis||0,crossAxis:g.crossAxis||0,alignmentAxis:g.alignmentAxis};return O&&typeof Q=="number"&&(S=O==="end"?Q*-1:Q),m?{x:S*x,y:b*p}:{x:b*p,y:S*x}}const qw=function(t){return t===void 0&&(t=0),{name:"offset",options:t,async fn(n){var s,l;const{x:o,y:u,placement:d,middlewareData:O}=n,m=await Ew(n,t);return d===((s=O.offset)==null?void 0:s.placement)&&(l=O.arrow)!=null&&l.alignmentOffset?{}:{x:o+m.x,y:u+m.y,data:{...m,placement:d}}}}},Mw=function(t){return t===void 0&&(t={}),{name:"shift",options:t,async fn(n){const{x:s,y:l,placement:o,platform:u}=n,{mainAxis:d=!0,crossAxis:O=!1,limiter:m={fn:j=>{let{x:P,y:N}=j;return{x:P,y:N}}},...p}=rn(t,n),x={x:s,y:l},g=await u.detectOverflow(n,p),b=ka(on(o)),S=Tf(b);let Q=x[S],k=x[b];if(d){const j=S==="y"?"top":"left",P=S==="y"?"bottom":"right",N=Q+g[j],A=Q-g[P];Q=tf(N,Q,A)}if(O){const j=b==="y"?"top":"left",P=b==="y"?"bottom":"right",N=k+g[j],A=k-g[P];k=tf(N,k,A)}const T=m.fn({...n,[S]:Q,[b]:k});return{...T,data:{x:T.x-s,y:T.y-l,enabled:{[S]:d,[b]:O}}}}}},Yw=function(t){return t===void 0&&(t={}),{options:t,fn(n){const{x:s,y:l,placement:o,rects:u,middlewareData:d}=n,{offset:O=0,mainAxis:m=!0,crossAxis:p=!0}=rn(t,n),x={x:s,y:l},g=ka(o),b=Tf(g);let S=x[b],Q=x[g];const k=rn(O,n),T=typeof k=="number"?{mainAxis:k,crossAxis:0}:{mainAxis:0,crossAxis:0,...k};if(m){const N=b==="y"?"height":"width",A=u.reference[b]-u.floating[N]+T.mainAxis,U=u.reference[b]+u.reference[N]-T.mainAxis;S<A?S=A:S>U&&(S=U)}if(p){var j,P;const N=b==="y"?"width":"height",A=C0.has(on(o)),U=u.reference[g]-u.floating[N]+(A&&((j=d.offset)==null?void 0:j[g])||0)+(A?0:T.crossAxis),C=u.reference[g]+u.reference[N]+(A?0:((P=d.offset)==null?void 0:P[g])||0)-(A?T.crossAxis:0);Q<U?Q=U:Q>C&&(Q=C)}return{[b]:S,[g]:Q}}}},Vw=function(t){return t===void 0&&(t={}),{name:"size",options:t,async fn(n){var s,l;const{placement:o,rects:u,platform:d,elements:O}=n,{apply:m=()=>{},...p}=rn(t,n),x=await d.detectOverflow(n,p),g=on(o),b=Zl(o),S=ka(o)==="y",{width:Q,height:k}=u.floating;let T,j;g==="top"||g==="bottom"?(T=g,j=b===(await(d.isRTL==null?void 0:d.isRTL(O.floating))?"start":"end")?"left":"right"):(j=g,T=b==="end"?"top":"bottom");const P=k-x.top-x.bottom,N=Q-x.left-x.right,A=Bn(k-x[T],P),U=Bn(Q-x[j],N),C=!n.middlewareData.shift;let X=A,$=U;if((s=n.middlewareData.shift)!=null&&s.enabled.x&&($=N),(l=n.middlewareData.shift)!=null&&l.enabled.y&&(X=P),C&&!b){const E=Wt(x.left,0),ne=Wt(x.right,0),re=Wt(x.top,0),xe=Wt(x.bottom,0);S?$=Q-2*(E!==0||ne!==0?E+ne:Wt(x.left,x.right)):X=k-2*(re!==0||xe!==0?re+xe:Wt(x.top,x.bottom))}await m({...n,availableWidth:$,availableHeight:X});const W=await d.getDimensions(O.floating);return Q!==W.width||k!==W.height?{reset:{rects:!0}}:{}}}};function wc(){return typeof window<"u"}function Al(t){return X0(t)?(t.nodeName||"").toLowerCase():"#document"}function Bt(t){var n;return(t==null||(n=t.ownerDocument)==null?void 0:n.defaultView)||window}function Pa(t){var n;return(n=(X0(t)?t.ownerDocument:t.document)||window.document)==null?void 0:n.documentElement}function X0(t){return wc()?t instanceof Node||t instanceof Bt(t).Node:!1}function pa(t){return wc()?t instanceof Element||t instanceof Bt(t).Element:!1}function un(t){return wc()?t instanceof HTMLElement||t instanceof Bt(t).HTMLElement:!1}function _g(t){return!wc()||typeof ShadowRoot>"u"?!1:t instanceof ShadowRoot||t instanceof Bt(t).ShadowRoot}function li(t){const{overflow:n,overflowX:s,overflowY:l,display:o}=xa(t);return/auto|scroll|overlay|hidden|clip/.test(n+l+s)&&o!=="inline"&&o!=="contents"}function Uw(t){return/^(table|td|th)$/.test(Al(t))}function kc(t){try{if(t.matches(":popover-open"))return!0}catch{}try{return t.matches(":modal")}catch{return!1}}const Gw=/transform|translate|scale|rotate|perspective|filter/,Lw=/paint|layout|strict|content/,bs=t=>!!t&&t!=="none";let uO;function zf(t){const n=pa(t)?xa(t):t;return bs(n.transform)||bs(n.translate)||bs(n.scale)||bs(n.rotate)||bs(n.perspective)||!Rf()&&(bs(n.backdropFilter)||bs(n.filter))||Gw.test(n.willChange||"")||Lw.test(n.contain||"")}function Dw(t){let n=Hn(t);for(;un(n)&&!Tl(n);){if(zf(n))return n;if(kc(n))return null;n=Hn(n)}return null}function Rf(){return uO==null&&(uO=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),uO}function Tl(t){return/^(html|body|#document)$/.test(Al(t))}function xa(t){return Bt(t).getComputedStyle(t)}function $c(t){return pa(t)?{scrollLeft:t.scrollLeft,scrollTop:t.scrollTop}:{scrollLeft:t.scrollX,scrollTop:t.scrollY}}function Hn(t){if(Al(t)==="html")return t;const n=t.assignedSlot||t.parentNode||_g(t)&&t.host||Pa(t);return _g(n)?n.host:n}function _0(t){const n=Hn(t);return Tl(n)?t.ownerDocument?t.ownerDocument.body:t.body:un(n)&&li(n)?n:_0(n)}function Dr(t,n,s){var l;n===void 0&&(n=[]),s===void 0&&(s=!0);const o=_0(t),u=o===((l=t.ownerDocument)==null?void 0:l.body),d=Bt(o);if(u){const O=nf(d);return n.concat(d,d.visualViewport||[],li(o)?o:[],O&&s?Dr(O):[])}else return n.concat(o,Dr(o,[],s))}function nf(t){return t.parent&&Object.getPrototypeOf(t.parent)?t.frameElement:null}function Z0(t){const n=xa(t);let s=parseFloat(n.width)||0,l=parseFloat(n.height)||0;const o=un(t),u=o?t.offsetWidth:s,d=o?t.offsetHeight:l,O=tc(s)!==u||tc(l)!==d;return O&&(s=u,l=d),{width:s,height:l,$:O}}function Cf(t){return pa(t)?t:t.contextElement}function jl(t){const n=Cf(t);if(!un(n))return $a(1);const s=n.getBoundingClientRect(),{width:l,height:o,$:u}=Z0(n);let d=(u?tc(s.width):s.width)/l,O=(u?tc(s.height):s.height)/o;return(!d||!Number.isFinite(d))&&(d=1),(!O||!Number.isFinite(O))&&(O=1),{x:d,y:O}}const Ww=$a(0);function A0(t){const n=Bt(t);return!Rf()||!n.visualViewport?Ww:{x:n.visualViewport.offsetLeft,y:n.visualViewport.offsetTop}}function Bw(t,n,s){return n===void 0&&(n=!1),!s||n&&s!==Bt(t)?!1:n}function js(t,n,s,l){n===void 0&&(n=!1),s===void 0&&(s=!1);const o=t.getBoundingClientRect(),u=Cf(t);let d=$a(1);n&&(l?pa(l)&&(d=jl(l)):d=jl(t));const O=Bw(u,s,l)?A0(u):$a(0);let m=(o.left+O.x)/d.x,p=(o.top+O.y)/d.y,x=o.width/d.x,g=o.height/d.y;if(u){const b=Bt(u),S=l&&pa(l)?Bt(l):l;let Q=b,k=nf(Q);for(;k&&l&&S!==Q;){const T=jl(k),j=k.getBoundingClientRect(),P=xa(k),N=j.left+(k.clientLeft+parseFloat(P.paddingLeft))*T.x,A=j.top+(k.clientTop+parseFloat(P.paddingTop))*T.y;m*=T.x,p*=T.y,x*=T.x,g*=T.y,m+=N,p+=A,Q=Bt(k),k=nf(Q)}}return nc({width:x,height:g,x:m,y:p})}function Tc(t,n){const s=$c(t).scrollLeft;return n?n.left+s:js(Pa(t)).left+s}function E0(t,n){const s=t.getBoundingClientRect(),l=s.left+n.scrollLeft-Tc(t,s),o=s.top+n.scrollTop;return{x:l,y:o}}function Hw(t){let{elements:n,rect:s,offsetParent:l,strategy:o}=t;const u=o==="fixed",d=Pa(l),O=n?kc(n.floating):!1;if(l===d||O&&u)return s;let m={scrollLeft:0,scrollTop:0},p=$a(1);const x=$a(0),g=un(l);if((g||!g&&!u)&&((Al(l)!=="body"||li(d))&&(m=$c(l)),g)){const S=js(l);p=jl(l),x.x=S.x+l.clientLeft,x.y=S.y+l.clientTop}const b=d&&!g&&!u?E0(d,m):$a(0);return{width:s.width*p.x,height:s.height*p.y,x:s.x*p.x-m.scrollLeft*p.x+x.x+b.x,y:s.y*p.y-m.scrollTop*p.y+x.y+b.y}}function Iw(t){return Array.from(t.getClientRects())}function Fw(t){const n=Pa(t),s=$c(t),l=t.ownerDocument.body,o=Wt(n.scrollWidth,n.clientWidth,l.scrollWidth,l.clientWidth),u=Wt(n.scrollHeight,n.clientHeight,l.scrollHeight,l.clientHeight);let d=-s.scrollLeft+Tc(t);const O=-s.scrollTop;return xa(l).direction==="rtl"&&(d+=Wt(n.clientWidth,l.clientWidth)-o),{width:o,height:u,x:d,y:O}}const Zg=25;function Kw(t,n){const s=Bt(t),l=Pa(t),o=s.visualViewport;let u=l.clientWidth,d=l.clientHeight,O=0,m=0;if(o){u=o.width,d=o.height;const x=Rf();(!x||x&&n==="fixed")&&(O=o.offsetLeft,m=o.offsetTop)}const p=Tc(l);if(p<=0){const x=l.ownerDocument,g=x.body,b=getComputedStyle(g),S=x.compatMode==="CSS1Compat"&&parseFloat(b.marginLeft)+parseFloat(b.marginRight)||0,Q=Math.abs(l.clientWidth-g.clientWidth-S);Q<=Zg&&(u-=Q)}else p<=Zg&&(u+=p);return{width:u,height:d,x:O,y:m}}function Jw(t,n){const s=js(t,!0,n==="fixed"),l=s.top+t.clientTop,o=s.left+t.clientLeft,u=un(t)?jl(t):$a(1),d=t.clientWidth*u.x,O=t.clientHeight*u.y,m=o*u.x,p=l*u.y;return{width:d,height:O,x:m,y:p}}function Ag(t,n,s){let l;if(n==="viewport")l=Kw(t,s);else if(n==="document")l=Fw(Pa(t));else if(pa(n))l=Jw(n,s);else{const o=A0(t);l={x:n.x-o.x,y:n.y-o.y,width:n.width,height:n.height}}return nc(l)}function q0(t,n){const s=Hn(t);return s===n||!pa(s)||Tl(s)?!1:xa(s).position==="fixed"||q0(s,n)}function ek(t,n){const s=n.get(t);if(s)return s;let l=Dr(t,[],!1).filter(O=>pa(O)&&Al(O)!=="body"),o=null;const u=xa(t).position==="fixed";let d=u?Hn(t):t;for(;pa(d)&&!Tl(d);){const O=xa(d),m=zf(d);!m&&O.position==="fixed"&&(o=null),(u?!m&&!o:!m&&O.position==="static"&&!!o&&(o.position==="absolute"||o.position==="fixed")||li(d)&&!m&&q0(t,d))?l=l.filter(x=>x!==d):o=O,d=Hn(d)}return n.set(t,l),l}function tk(t){let{element:n,boundary:s,rootBoundary:l,strategy:o}=t;const d=[...s==="clippingAncestors"?kc(n)?[]:ek(n,this._c):[].concat(s),l],O=Ag(n,d[0],o);let m=O.top,p=O.right,x=O.bottom,g=O.left;for(let b=1;b<d.length;b++){const S=Ag(n,d[b],o);m=Wt(S.top,m),p=Bn(S.right,p),x=Bn(S.bottom,x),g=Wt(S.left,g)}return{width:p-g,height:x-m,x:g,y:m}}function ak(t){const{width:n,height:s}=Z0(t);return{width:n,height:s}}function nk(t,n,s){const l=un(n),o=Pa(n),u=s==="fixed",d=js(t,!0,u,n);let O={scrollLeft:0,scrollTop:0};const m=$a(0);function p(){m.x=Tc(o)}if(l||!l&&!u)if((Al(n)!=="body"||li(o))&&(O=$c(n)),l){const S=js(n,!0,u,n);m.x=S.x+n.clientLeft,m.y=S.y+n.clientTop}else o&&p();u&&!l&&o&&p();const x=o&&!l&&!u?E0(o,O):$a(0),g=d.left+O.scrollLeft-m.x-x.x,b=d.top+O.scrollTop-m.y-x.y;return{x:g,y:b,width:d.width,height:d.height}}function dO(t){return xa(t).position==="static"}function Eg(t,n){if(!un(t)||xa(t).position==="fixed")return null;if(n)return n(t);let s=t.offsetParent;return Pa(t)===s&&(s=s.ownerDocument.body),s}function M0(t,n){const s=Bt(t);if(kc(t))return s;if(!un(t)){let o=Hn(t);for(;o&&!Tl(o);){if(pa(o)&&!dO(o))return o;o=Hn(o)}return s}let l=Eg(t,n);for(;l&&Uw(l)&&dO(l);)l=Eg(l,n);return l&&Tl(l)&&dO(l)&&!zf(l)?s:l||Dw(t)||s}const sk=async function(t){const n=this.getOffsetParent||M0,s=this.getDimensions,l=await s(t.floating);return{reference:nk(t.reference,await n(t.floating),t.strategy),floating:{x:0,y:0,width:l.width,height:l.height}}};function lk(t){return xa(t).direction==="rtl"}const rk={convertOffsetParentRelativeRectToViewportRelativeRect:Hw,getDocumentElement:Pa,getClippingRect:tk,getOffsetParent:M0,getElementRects:sk,getClientRects:Iw,getDimensions:ak,getScale:jl,isElement:pa,isRTL:lk};function Y0(t,n){return t.x===n.x&&t.y===n.y&&t.width===n.width&&t.height===n.height}function ik(t,n){let s=null,l;const o=Pa(t);function u(){var O;clearTimeout(l),(O=s)==null||O.disconnect(),s=null}function d(O,m){O===void 0&&(O=!1),m===void 0&&(m=1),u();const p=t.getBoundingClientRect(),{left:x,top:g,width:b,height:S}=p;if(O||n(),!b||!S)return;const Q=zo(g),k=zo(o.clientWidth-(x+b)),T=zo(o.clientHeight-(g+S)),j=zo(x),N={rootMargin:-Q+"px "+-k+"px "+-T+"px "+-j+"px",threshold:Wt(0,Bn(1,m))||1};let A=!0;function U(C){const X=C[0].intersectionRatio;if(X!==m){if(!A)return d();X?d(!1,X):l=setTimeout(()=>{d(!1,1e-7)},1e3)}X===1&&!Y0(p,t.getBoundingClientRect())&&d(),A=!1}try{s=new IntersectionObserver(U,{...N,root:o.ownerDocument})}catch{s=new IntersectionObserver(U,N)}s.observe(t)}return d(!0),u}function ok(t,n,s,l){l===void 0&&(l={});const{ancestorScroll:o=!0,ancestorResize:u=!0,elementResize:d=typeof ResizeObserver=="function",layoutShift:O=typeof IntersectionObserver=="function",animationFrame:m=!1}=l,p=Cf(t),x=o||u?[...p?Dr(p):[],...n?Dr(n):[]]:[];x.forEach(j=>{o&&j.addEventListener("scroll",s,{passive:!0}),u&&j.addEventListener("resize",s)});const g=p&&O?ik(p,s):null;let b=-1,S=null;d&&(S=new ResizeObserver(j=>{let[P]=j;P&&P.target===p&&S&&n&&(S.unobserve(n),cancelAnimationFrame(b),b=requestAnimationFrame(()=>{var N;(N=S)==null||N.observe(n)})),s()}),p&&!m&&S.observe(p),n&&S.observe(n));let Q,k=m?js(t):null;m&&T();function T(){const j=js(t);k&&!Y0(k,j)&&s(),k=j,Q=requestAnimationFrame(T)}return s(),()=>{var j;x.forEach(P=>{o&&P.removeEventListener("scroll",s),u&&P.removeEventListener("resize",s)}),g==null||g(),(j=S)==null||j.disconnect(),S=null,m&&cancelAnimationFrame(Q)}}const ck=qw,uk=Mw,dk=Zw,Ok=Vw,fk=Aw,qg=_w,hk=Yw,mk=(t,n,s)=>{const l=new Map,o={platform:rk,...s},u={...o.platform,_c:l};return Xw(t,n,{...o,platform:u})};var pk=typeof document<"u",xk=function(){},Do=pk?v.useLayoutEffect:xk;function sc(t,n){if(t===n)return!0;if(typeof t!=typeof n)return!1;if(typeof t=="function"&&t.toString()===n.toString())return!0;let s,l,o;if(t&&n&&typeof t=="object"){if(Array.isArray(t)){if(s=t.length,s!==n.length)return!1;for(l=s;l--!==0;)if(!sc(t[l],n[l]))return!1;return!0}if(o=Object.keys(t),s=o.length,s!==Object.keys(n).length)return!1;for(l=s;l--!==0;)if(!{}.hasOwnProperty.call(n,o[l]))return!1;for(l=s;l--!==0;){const u=o[l];if(!(u==="_owner"&&t.$$typeof)&&!sc(t[u],n[u]))return!1}return!0}return t!==t&&n!==n}function V0(t){return typeof window>"u"?1:(t.ownerDocument.defaultView||window).devicePixelRatio||1}function Mg(t,n){const s=V0(t);return Math.round(n*s)/s}function OO(t){const n=v.useRef(t);return Do(()=>{n.current=t}),n}function gk(t){t===void 0&&(t={});const{placement:n="bottom",strategy:s="absolute",middleware:l=[],platform:o,elements:{reference:u,floating:d}={},transform:O=!0,whileElementsMounted:m,open:p}=t,[x,g]=v.useState({x:0,y:0,strategy:s,placement:n,middlewareData:{},isPositioned:!1}),[b,S]=v.useState(l);sc(b,l)||S(l);const[Q,k]=v.useState(null),[T,j]=v.useState(null),P=v.useCallback(I=>{I!==C.current&&(C.current=I,k(I))},[]),N=v.useCallback(I=>{I!==X.current&&(X.current=I,j(I))},[]),A=u||Q,U=d||T,C=v.useRef(null),X=v.useRef(null),$=v.useRef(x),W=m!=null,E=OO(m),ne=OO(o),re=OO(p),xe=v.useCallback(()=>{if(!C.current||!X.current)return;const I={placement:n,strategy:s,middleware:b};ne.current&&(I.platform=ne.current),mk(C.current,X.current,I).then(fe=>{const te={...fe,isPositioned:re.current!==!1};ie.current&&!sc($.current,te)&&($.current=te,v0.flushSync(()=>{g(te)}))})},[b,n,s,ne,re]);Do(()=>{p===!1&&$.current.isPositioned&&($.current.isPositioned=!1,g(I=>({...I,isPositioned:!1})))},[p]);const ie=v.useRef(!1);Do(()=>(ie.current=!0,()=>{ie.current=!1}),[]),Do(()=>{if(A&&(C.current=A),U&&(X.current=U),A&&U){if(E.current)return E.current(A,U,xe);xe()}},[A,U,xe,E,W]);const J=v.useMemo(()=>({reference:C,floating:X,setReference:P,setFloating:N}),[P,N]),z=v.useMemo(()=>({reference:A,floating:U}),[A,U]),B=v.useMemo(()=>{const I={position:s,left:0,top:0};if(!z.floating)return I;const fe=Mg(z.floating,x.x),te=Mg(z.floating,x.y);return O?{...I,transform:"translate("+fe+"px, "+te+"px)",...V0(z.floating)>=1.5&&{willChange:"transform"}}:{position:s,left:fe,top:te}},[s,O,z.floating,x.x,x.y]);return v.useMemo(()=>({...x,update:xe,refs:J,elements:z,floatingStyles:B}),[x,xe,J,z,B])}const bk=t=>{function n(s){return{}.hasOwnProperty.call(s,"current")}return{name:"arrow",options:t,fn(s){const{element:l,padding:o}=typeof t=="function"?t(s):t;return l&&n(l)?l.current!=null?qg({element:l.current,padding:o}).fn(s):{}:l?qg({element:l,padding:o}).fn(s):{}}}},vk=(t,n)=>{const s=ck(t);return{name:s.name,fn:s.fn,options:[t,n]}},yk=(t,n)=>{const s=uk(t);return{name:s.name,fn:s.fn,options:[t,n]}},Sk=(t,n)=>({fn:hk(t).fn,options:[t,n]}),Qk=(t,n)=>{const s=dk(t);return{name:s.name,fn:s.fn,options:[t,n]}},jk=(t,n)=>{const s=Ok(t);return{name:s.name,fn:s.fn,options:[t,n]}},wk=(t,n)=>{const s=fk(t);return{name:s.name,fn:s.fn,options:[t,n]}},kk=(t,n)=>{const s=bk(t);return{name:s.name,fn:s.fn,options:[t,n]}};var $k="Arrow",U0=v.forwardRef((t,n)=>{const{children:s,width:l=10,height:o=5,...u}=t;return i.jsx(Be.svg,{...u,ref:n,width:l,height:o,viewBox:"0 0 30 10",preserveAspectRatio:"none",children:t.asChild?s:i.jsx("polygon",{points:"0,0 30,0 15,10"})})});U0.displayName=$k;var Tk=U0;function Pk(t){const[n,s]=v.useState(void 0);return ln(()=>{if(t){s({width:t.offsetWidth,height:t.offsetHeight});const l=new ResizeObserver(o=>{if(!Array.isArray(o)||!o.length)return;const u=o[0];let d,O;if("borderBoxSize"in u){const m=u.borderBoxSize,p=Array.isArray(m)?m[0]:m;d=p.inlineSize,O=p.blockSize}else d=t.offsetWidth,O=t.offsetHeight;s({width:d,height:O})});return l.observe(t,{box:"border-box"}),()=>l.unobserve(t)}else s(void 0)},[t]),n}var Xf="Popper",[G0,L0]=Ns(Xf),[Nk,D0]=G0(Xf),W0=t=>{const{__scopePopper:n,children:s}=t,[l,o]=v.useState(null);return i.jsx(Nk,{scope:n,anchor:l,onAnchorChange:o,children:s})};W0.displayName=Xf;var B0="PopperAnchor",H0=v.forwardRef((t,n)=>{const{__scopePopper:s,virtualRef:l,...o}=t,u=D0(B0,s),d=v.useRef(null),O=it(n,d),m=v.useRef(null);return v.useEffect(()=>{const p=m.current;m.current=(l==null?void 0:l.current)||d.current,p!==m.current&&u.onAnchorChange(m.current)}),l?null:i.jsx(Be.div,{...o,ref:O})});H0.displayName=B0;var _f="PopperContent",[zk,Rk]=G0(_f),I0=v.forwardRef((t,n)=>{var ze,Ot,_e,tt,bt,vt;const{__scopePopper:s,side:l="bottom",sideOffset:o=0,align:u="center",alignOffset:d=0,arrowPadding:O=0,avoidCollisions:m=!0,collisionBoundary:p=[],collisionPadding:x=0,sticky:g="partial",hideWhenDetached:b=!1,updatePositionStrategy:S="optimized",onPlaced:Q,...k}=t,T=D0(_f,s),[j,P]=v.useState(null),N=it(n,It=>P(It)),[A,U]=v.useState(null),C=Pk(A),X=(C==null?void 0:C.width)??0,$=(C==null?void 0:C.height)??0,W=l+(u!=="center"?"-"+u:""),E=typeof x=="number"?x:{top:0,right:0,bottom:0,left:0,...x},ne=Array.isArray(p)?p:[p],re=ne.length>0,xe={padding:E,boundary:ne.filter(Xk),altBoundary:re},{refs:ie,floatingStyles:J,placement:z,isPositioned:B,middlewareData:I}=gk({strategy:"fixed",placement:W,whileElementsMounted:(...It)=>ok(...It,{animationFrame:S==="always"}),elements:{reference:T.anchor},middleware:[vk({mainAxis:o+$,alignmentAxis:d}),m&&yk({mainAxis:!0,crossAxis:!1,limiter:g==="partial"?Sk():void 0,...xe}),m&&Qk({...xe}),jk({...xe,apply:({elements:It,rects:yt,availableWidth:Ml,availableHeight:Yl})=>{const{width:Dc,height:Oi}=yt.reference,On=It.floating.style;On.setProperty("--radix-popper-available-width",`${Ml}px`),On.setProperty("--radix-popper-available-height",`${Yl}px`),On.setProperty("--radix-popper-anchor-width",`${Dc}px`),On.setProperty("--radix-popper-anchor-height",`${Oi}px`)}}),A&&kk({element:A,padding:O}),_k({arrowWidth:X,arrowHeight:$}),b&&wk({strategy:"referenceHidden",...xe})]}),[fe,te]=J0(z),Ae=zt(Q);ln(()=>{B&&(Ae==null||Ae())},[B,Ae]);const Se=(ze=I.arrow)==null?void 0:ze.x,ve=(Ot=I.arrow)==null?void 0:Ot.y,Xe=((_e=I.arrow)==null?void 0:_e.centerOffset)!==0,[L,oe]=v.useState();return ln(()=>{j&&oe(window.getComputedStyle(j).zIndex)},[j]),i.jsx("div",{ref:ie.setFloating,"data-radix-popper-content-wrapper":"",style:{...J,transform:B?J.transform:"translate(0, -200%)",minWidth:"max-content",zIndex:L,"--radix-popper-transform-origin":[(tt=I.transformOrigin)==null?void 0:tt.x,(bt=I.transformOrigin)==null?void 0:bt.y].join(" "),...((vt=I.hide)==null?void 0:vt.referenceHidden)&&{visibility:"hidden",pointerEvents:"none"}},dir:t.dir,children:i.jsx(zk,{scope:s,placedSide:fe,onArrowChange:U,arrowX:Se,arrowY:ve,shouldHideArrow:Xe,children:i.jsx(Be.div,{"data-side":fe,"data-align":te,...k,ref:N,style:{...k.style,animation:B?void 0:"none"}})})})});I0.displayName=_f;var F0="PopperArrow",Ck={top:"bottom",right:"left",bottom:"top",left:"right"},K0=v.forwardRef(function(n,s){const{__scopePopper:l,...o}=n,u=Rk(F0,l),d=Ck[u.placedSide];return i.jsx("span",{ref:u.onArrowChange,style:{position:"absolute",left:u.arrowX,top:u.arrowY,[d]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[u.placedSide],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[u.placedSide],visibility:u.shouldHideArrow?"hidden":void 0},children:i.jsx(Tk,{...o,ref:s,style:{...o.style,display:"block"}})})});K0.displayName=F0;function Xk(t){return t!==null}var _k=t=>({name:"transformOrigin",options:t,fn(n){var T,j,P;const{placement:s,rects:l,middlewareData:o}=n,d=((T=o.arrow)==null?void 0:T.centerOffset)!==0,O=d?0:t.arrowWidth,m=d?0:t.arrowHeight,[p,x]=J0(s),g={start:"0%",center:"50%",end:"100%"}[x],b=(((j=o.arrow)==null?void 0:j.x)??0)+O/2,S=(((P=o.arrow)==null?void 0:P.y)??0)+m/2;let Q="",k="";return p==="bottom"?(Q=d?g:`${b}px`,k=`${-m}px`):p==="top"?(Q=d?g:`${b}px`,k=`${l.floating.height+m}px`):p==="right"?(Q=`${-m}px`,k=d?g:`${S}px`):p==="left"&&(Q=`${l.floating.width+m}px`,k=d?g:`${S}px`),{data:{x:Q,y:k}}}});function J0(t){const[n,s="center"]=t.split("-");return[n,s]}var Zk=W0,Ak=H0,Ek=I0,qk=K0,Mk="Portal",Zf=v.forwardRef((t,n)=>{var O;const{container:s,...l}=t,[o,u]=v.useState(!1);ln(()=>u(!0),[]);const d=s||o&&((O=globalThis==null?void 0:globalThis.document)==null?void 0:O.body);return d?mj.createPortal(i.jsx(Be.div,{...l,ref:n}),d):null});Zf.displayName=Mk;function Yk(t,n){return v.useReducer((s,l)=>n[s][l]??s,t)}var ba=t=>{const{present:n,children:s}=t,l=Vk(n),o=typeof s=="function"?s({present:l.isPresent}):v.Children.only(s),u=it(l.ref,Uk(o));return typeof s=="function"||l.isPresent?v.cloneElement(o,{ref:u}):null};ba.displayName="Presence";function Vk(t){const[n,s]=v.useState(),l=v.useRef(null),o=v.useRef(t),u=v.useRef("none"),d=t?"mounted":"unmounted",[O,m]=Yk(d,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return v.useEffect(()=>{const p=Ro(l.current);u.current=O==="mounted"?p:"none"},[O]),ln(()=>{const p=l.current,x=o.current;if(x!==t){const b=u.current,S=Ro(p);t?m("MOUNT"):S==="none"||(p==null?void 0:p.display)==="none"?m("UNMOUNT"):m(x&&b!==S?"ANIMATION_OUT":"UNMOUNT"),o.current=t}},[t,m]),ln(()=>{if(n){let p;const x=n.ownerDocument.defaultView??window,g=S=>{const k=Ro(l.current).includes(CSS.escape(S.animationName));if(S.target===n&&k&&(m("ANIMATION_END"),!o.current)){const T=n.style.animationFillMode;n.style.animationFillMode="forwards",p=x.setTimeout(()=>{n.style.animationFillMode==="forwards"&&(n.style.animationFillMode=T)})}},b=S=>{S.target===n&&(u.current=Ro(l.current))};return n.addEventListener("animationstart",b),n.addEventListener("animationcancel",g),n.addEventListener("animationend",g),()=>{x.clearTimeout(p),n.removeEventListener("animationstart",b),n.removeEventListener("animationcancel",g),n.removeEventListener("animationend",g)}}else m("ANIMATION_END")},[n,m]),{isPresent:["mounted","unmountSuspended"].includes(O),ref:v.useCallback(p=>{l.current=p?getComputedStyle(p):null,s(p)},[])}}function Ro(t){return(t==null?void 0:t.animationName)||"none"}function Uk(t){var l,o;let n=(l=Object.getOwnPropertyDescriptor(t.props,"ref"))==null?void 0:l.get,s=n&&"isReactWarning"in n&&n.isReactWarning;return s?t.ref:(n=(o=Object.getOwnPropertyDescriptor(t,"ref"))==null?void 0:o.get,s=n&&"isReactWarning"in n&&n.isReactWarning,s?t.props.ref:t.props.ref||t.ref)}var Gk=x0[" useInsertionEffect ".trim().toString()]||ln;function Pc({prop:t,defaultProp:n,onChange:s=()=>{},caller:l}){const[o,u,d]=Lk({defaultProp:n,onChange:s}),O=t!==void 0,m=O?t:o;{const x=v.useRef(t!==void 0);v.useEffect(()=>{const g=x.current;g!==O&&console.warn(`${l} is changing from ${g?"controlled":"uncontrolled"} to ${O?"controlled":"uncontrolled"}. Components should not switch from controlled to uncontrolled (or vice versa). Decide between using a controlled or uncontrolled value for the lifetime of the component.`),x.current=O},[O,l])}const p=v.useCallback(x=>{var g;if(O){const b=Dk(x)?x(t):x;b!==t&&((g=d.current)==null||g.call(d,b))}else u(x)},[O,t,u,d]);return[m,p]}function Lk({defaultProp:t,onChange:n}){const[s,l]=v.useState(t),o=v.useRef(s),u=v.useRef(n);return Gk(()=>{u.current=n},[n]),v.useEffect(()=>{var d;o.current!==s&&((d=u.current)==null||d.call(u,s),o.current=s)},[s,o]),[s,l,u]}function Dk(t){return typeof t=="function"}var Wk=Object.freeze({position:"absolute",border:0,width:1,height:1,padding:0,margin:-1,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",wordWrap:"normal"}),Bk="VisuallyHidden",eb=v.forwardRef((t,n)=>i.jsx(Be.span,{...t,ref:n,style:{...Wk,...t.style}}));eb.displayName=Bk;var Hk=eb,[Nc]=Ns("Tooltip",[L0]),zc=L0(),tb="TooltipProvider",Ik=700,sf="tooltip.open",[Fk,Af]=Nc(tb),ab=t=>{const{__scopeTooltip:n,delayDuration:s=Ik,skipDelayDuration:l=300,disableHoverableContent:o=!1,children:u}=t,d=v.useRef(!0),O=v.useRef(!1),m=v.useRef(0);return v.useEffect(()=>{const p=m.current;return()=>window.clearTimeout(p)},[]),i.jsx(Fk,{scope:n,isOpenDelayedRef:d,delayDuration:s,onOpen:v.useCallback(()=>{window.clearTimeout(m.current),d.current=!1},[]),onClose:v.useCallback(()=>{window.clearTimeout(m.current),m.current=window.setTimeout(()=>d.current=!0,l)},[l]),isPointerInTransitRef:O,onPointerInTransitChange:v.useCallback(p=>{O.current=p},[]),disableHoverableContent:o,children:u})};ab.displayName=tb;var Wr="Tooltip",[Kk,ri]=Nc(Wr),nb=t=>{const{__scopeTooltip:n,children:s,open:l,defaultOpen:o,onOpenChange:u,disableHoverableContent:d,delayDuration:O}=t,m=Af(Wr,t.__scopeTooltip),p=zc(n),[x,g]=v.useState(null),b=Ql(),S=v.useRef(0),Q=d??m.disableHoverableContent,k=O??m.delayDuration,T=v.useRef(!1),[j,P]=Pc({prop:l,defaultProp:o??!1,onChange:X=>{X?(m.onOpen(),document.dispatchEvent(new CustomEvent(sf))):m.onClose(),u==null||u(X)},caller:Wr}),N=v.useMemo(()=>j?T.current?"delayed-open":"instant-open":"closed",[j]),A=v.useCallback(()=>{window.clearTimeout(S.current),S.current=0,T.current=!1,P(!0)},[P]),U=v.useCallback(()=>{window.clearTimeout(S.current),S.current=0,P(!1)},[P]),C=v.useCallback(()=>{window.clearTimeout(S.current),S.current=window.setTimeout(()=>{T.current=!0,P(!0),S.current=0},k)},[k,P]);return v.useEffect(()=>()=>{S.current&&(window.clearTimeout(S.current),S.current=0)},[]),i.jsx(Zk,{...p,children:i.jsx(Kk,{scope:n,contentId:b,open:j,stateAttribute:N,trigger:x,onTriggerChange:g,onTriggerEnter:v.useCallback(()=>{m.isOpenDelayedRef.current?C():A()},[m.isOpenDelayedRef,C,A]),onTriggerLeave:v.useCallback(()=>{Q?U():(window.clearTimeout(S.current),S.current=0)},[U,Q]),onOpen:A,onClose:U,disableHoverableContent:Q,children:s})})};nb.displayName=Wr;var lf="TooltipTrigger",sb=v.forwardRef((t,n)=>{const{__scopeTooltip:s,...l}=t,o=ri(lf,s),u=Af(lf,s),d=zc(s),O=v.useRef(null),m=it(n,O,o.onTriggerChange),p=v.useRef(!1),x=v.useRef(!1),g=v.useCallback(()=>p.current=!1,[]);return v.useEffect(()=>()=>document.removeEventListener("pointerup",g),[g]),i.jsx(Ak,{asChild:!0,...d,children:i.jsx(Be.button,{"aria-describedby":o.open?o.contentId:void 0,"data-state":o.stateAttribute,...l,ref:m,onPointerMove:Ee(t.onPointerMove,b=>{b.pointerType!=="touch"&&!x.current&&!u.isPointerInTransitRef.current&&(o.onTriggerEnter(),x.current=!0)}),onPointerLeave:Ee(t.onPointerLeave,()=>{o.onTriggerLeave(),x.current=!1}),onPointerDown:Ee(t.onPointerDown,()=>{o.open&&o.onClose(),p.current=!0,document.addEventListener("pointerup",g,{once:!0})}),onFocus:Ee(t.onFocus,()=>{p.current||o.onOpen()}),onBlur:Ee(t.onBlur,o.onClose),onClick:Ee(t.onClick,o.onClose)})})});sb.displayName=lf;var Ef="TooltipPortal",[Jk,e$]=Nc(Ef,{forceMount:void 0}),lb=t=>{const{__scopeTooltip:n,forceMount:s,children:l,container:o}=t,u=ri(Ef,n);return i.jsx(Jk,{scope:n,forceMount:s,children:i.jsx(ba,{present:s||u.open,children:i.jsx(Zf,{asChild:!0,container:o,children:l})})})};lb.displayName=Ef;var Pl="TooltipContent",rb=v.forwardRef((t,n)=>{const s=e$(Pl,t.__scopeTooltip),{forceMount:l=s.forceMount,side:o="top",...u}=t,d=ri(Pl,t.__scopeTooltip);return i.jsx(ba,{present:l||d.open,children:d.disableHoverableContent?i.jsx(ib,{side:o,...u,ref:n}):i.jsx(t$,{side:o,...u,ref:n})})}),t$=v.forwardRef((t,n)=>{const s=ri(Pl,t.__scopeTooltip),l=Af(Pl,t.__scopeTooltip),o=v.useRef(null),u=it(n,o),[d,O]=v.useState(null),{trigger:m,onClose:p}=s,x=o.current,{onPointerInTransitChange:g}=l,b=v.useCallback(()=>{O(null),g(!1)},[g]),S=v.useCallback((Q,k)=>{const T=Q.currentTarget,j={x:Q.clientX,y:Q.clientY},P=l$(j,T.getBoundingClientRect()),N=r$(j,P),A=i$(k.getBoundingClientRect()),U=c$([...N,...A]);O(U),g(!0)},[g]);return v.useEffect(()=>()=>b(),[b]),v.useEffect(()=>{if(m&&x){const Q=T=>S(T,x),k=T=>S(T,m);return m.addEventListener("pointerleave",Q),x.addEventListener("pointerleave",k),()=>{m.removeEventListener("pointerleave",Q),x.removeEventListener("pointerleave",k)}}},[m,x,S,b]),v.useEffect(()=>{if(d){const Q=k=>{const T=k.target,j={x:k.clientX,y:k.clientY},P=(m==null?void 0:m.contains(T))||(x==null?void 0:x.contains(T)),N=!o$(j,d);P?b():N&&(b(),p())};return document.addEventListener("pointermove",Q),()=>document.removeEventListener("pointermove",Q)}},[m,x,d,p,b]),i.jsx(ib,{...t,ref:u})}),[a$,n$]=Nc(Wr,{isInside:!1}),s$=iw("TooltipContent"),ib=v.forwardRef((t,n)=>{const{__scopeTooltip:s,children:l,"aria-label":o,onEscapeKeyDown:u,onPointerDownOutside:d,...O}=t,m=ri(Pl,s),p=zc(s),{onClose:x}=m;return v.useEffect(()=>(document.addEventListener(sf,x),()=>document.removeEventListener(sf,x)),[x]),v.useEffect(()=>{if(m.trigger){const g=b=>{const S=b.target;S!=null&&S.contains(m.trigger)&&x()};return window.addEventListener("scroll",g,{capture:!0}),()=>window.removeEventListener("scroll",g,{capture:!0})}},[m.trigger,x]),i.jsx($f,{asChild:!0,disableOutsidePointerEvents:!1,onEscapeKeyDown:u,onPointerDownOutside:d,onFocusOutside:g=>g.preventDefault(),onDismiss:x,children:i.jsxs(Ek,{"data-state":m.stateAttribute,...p,...O,ref:n,style:{...O.style,"--radix-tooltip-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-tooltip-content-available-width":"var(--radix-popper-available-width)","--radix-tooltip-content-available-height":"var(--radix-popper-available-height)","--radix-tooltip-trigger-width":"var(--radix-popper-anchor-width)","--radix-tooltip-trigger-height":"var(--radix-popper-anchor-height)"},children:[i.jsx(s$,{children:l}),i.jsx(a$,{scope:s,isInside:!0,children:i.jsx(Hk,{id:m.contentId,role:"tooltip",children:o||l})})]})})});rb.displayName=Pl;var ob="TooltipArrow",cb=v.forwardRef((t,n)=>{const{__scopeTooltip:s,...l}=t,o=zc(s);return n$(ob,s).isInside?null:i.jsx(qk,{...o,...l,ref:n})});cb.displayName=ob;function l$(t,n){const s=Math.abs(n.top-t.y),l=Math.abs(n.bottom-t.y),o=Math.abs(n.right-t.x),u=Math.abs(n.left-t.x);switch(Math.min(s,l,o,u)){case u:return"left";case o:return"right";case s:return"top";case l:return"bottom";default:throw new Error("unreachable")}}function r$(t,n,s=5){const l=[];switch(n){case"top":l.push({x:t.x-s,y:t.y+s},{x:t.x+s,y:t.y+s});break;case"bottom":l.push({x:t.x-s,y:t.y-s},{x:t.x+s,y:t.y-s});break;case"left":l.push({x:t.x+s,y:t.y-s},{x:t.x+s,y:t.y+s});break;case"right":l.push({x:t.x-s,y:t.y-s},{x:t.x-s,y:t.y+s});break}return l}function i$(t){const{top:n,right:s,bottom:l,left:o}=t;return[{x:o,y:n},{x:s,y:n},{x:s,y:l},{x:o,y:l}]}function o$(t,n){const{x:s,y:l}=t;let o=!1;for(let u=0,d=n.length-1;u<n.length;d=u++){const O=n[u],m=n[d],p=O.x,x=O.y,g=m.x,b=m.y;x>l!=b>l&&s<(g-p)*(l-x)/(b-x)+p&&(o=!o)}return o}function c$(t){const n=t.slice();return n.sort((s,l)=>s.x<l.x?-1:s.x>l.x?1:s.y<l.y?-1:s.y>l.y?1:0),u$(n)}function u$(t){if(t.length<=1)return t.slice();const n=[];for(let l=0;l<t.length;l++){const o=t[l];for(;n.length>=2;){const u=n[n.length-1],d=n[n.length-2];if((u.x-d.x)*(o.y-d.y)>=(u.y-d.y)*(o.x-d.x))n.pop();else break}n.push(o)}n.pop();const s=[];for(let l=t.length-1;l>=0;l--){const o=t[l];for(;s.length>=2;){const u=s[s.length-1],d=s[s.length-2];if((u.x-d.x)*(o.y-d.y)>=(u.y-d.y)*(o.x-d.x))s.pop();else break}s.push(o)}return s.pop(),n.length===1&&s.length===1&&n[0].x===s[0].x&&n[0].y===s[0].y?n:n.concat(s)}var d$=ab,O$=nb,f$=sb,h$=lb,m$=rb,p$=cb;function ub(t){var n,s,l="";if(typeof t=="string"||typeof t=="number")l+=t;else if(typeof t=="object")if(Array.isArray(t)){var o=t.length;for(n=0;n<o;n++)t[n]&&(s=ub(t[n]))&&(l&&(l+=" "),l+=s)}else for(s in t)t[s]&&(l&&(l+=" "),l+=s);return l}function x$(){for(var t,n,s=0,l="",o=arguments.length;s<o;s++)(t=arguments[s])&&(n=ub(t))&&(l&&(l+=" "),l+=n);return l}const g$=(t,n)=>{const s=new Array(t.length+n.length);for(let l=0;l<t.length;l++)s[l]=t[l];for(let l=0;l<n.length;l++)s[t.length+l]=n[l];return s},b$=(t,n)=>({classGroupId:t,validator:n}),db=(t=new Map,n=null,s)=>({nextPart:t,validators:n,classGroupId:s}),lc="-",Yg=[],v$="arbitrary..",y$=t=>{const n=Q$(t),{conflictingClassGroups:s,conflictingClassGroupModifiers:l}=t;return{getClassGroupId:d=>{if(d.startsWith("[")&&d.endsWith("]"))return S$(d);const O=d.split(lc),m=O[0]===""&&O.length>1?1:0;return Ob(O,m,n)},getConflictingClassGroupIds:(d,O)=>{if(O){const m=l[d],p=s[d];return m?p?g$(p,m):m:p||Yg}return s[d]||Yg}}},Ob=(t,n,s)=>{if(t.length-n===0)return s.classGroupId;const o=t[n],u=s.nextPart.get(o);if(u){const p=Ob(t,n+1,u);if(p)return p}const d=s.validators;if(d===null)return;const O=n===0?t.join(lc):t.slice(n).join(lc),m=d.length;for(let p=0;p<m;p++){const x=d[p];if(x.validator(O))return x.classGroupId}},S$=t=>t.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const n=t.slice(1,-1),s=n.indexOf(":"),l=n.slice(0,s);return l?v$+l:void 0})(),Q$=t=>{const{theme:n,classGroups:s}=t;return j$(s,n)},j$=(t,n)=>{const s=db();for(const l in t){const o=t[l];qf(o,s,l,n)}return s},qf=(t,n,s,l)=>{const o=t.length;for(let u=0;u<o;u++){const d=t[u];w$(d,n,s,l)}},w$=(t,n,s,l)=>{if(typeof t=="string"){k$(t,n,s);return}if(typeof t=="function"){$$(t,n,s,l);return}T$(t,n,s,l)},k$=(t,n,s)=>{const l=t===""?n:fb(n,t);l.classGroupId=s},$$=(t,n,s,l)=>{if(P$(t)){qf(t(l),n,s,l);return}n.validators===null&&(n.validators=[]),n.validators.push(b$(s,t))},T$=(t,n,s,l)=>{const o=Object.entries(t),u=o.length;for(let d=0;d<u;d++){const[O,m]=o[d];qf(m,fb(n,O),s,l)}},fb=(t,n)=>{let s=t;const l=n.split(lc),o=l.length;for(let u=0;u<o;u++){const d=l[u];let O=s.nextPart.get(d);O||(O=db(),s.nextPart.set(d,O)),s=O}return s},P$=t=>"isThemeGetter"in t&&t.isThemeGetter===!0,N$=t=>{if(t<1)return{get:()=>{},set:()=>{}};let n=0,s=Object.create(null),l=Object.create(null);const o=(u,d)=>{s[u]=d,n++,n>t&&(n=0,l=s,s=Object.create(null))};return{get(u){let d=s[u];if(d!==void 0)return d;if((d=l[u])!==void 0)return o(u,d),d},set(u,d){u in s?s[u]=d:o(u,d)}}},rf="!",Vg=":",z$=[],Ug=(t,n,s,l,o)=>({modifiers:t,hasImportantModifier:n,baseClassName:s,maybePostfixModifierPosition:l,isExternal:o}),R$=t=>{const{prefix:n,experimentalParseClassName:s}=t;let l=o=>{const u=[];let d=0,O=0,m=0,p;const x=o.length;for(let k=0;k<x;k++){const T=o[k];if(d===0&&O===0){if(T===Vg){u.push(o.slice(m,k)),m=k+1;continue}if(T==="/"){p=k;continue}}T==="["?d++:T==="]"?d--:T==="("?O++:T===")"&&O--}const g=u.length===0?o:o.slice(m);let b=g,S=!1;g.endsWith(rf)?(b=g.slice(0,-1),S=!0):g.startsWith(rf)&&(b=g.slice(1),S=!0);const Q=p&&p>m?p-m:void 0;return Ug(u,S,b,Q)};if(n){const o=n+Vg,u=l;l=d=>d.startsWith(o)?u(d.slice(o.length)):Ug(z$,!1,d,void 0,!0)}if(s){const o=l;l=u=>s({className:u,parseClassName:o})}return l},C$=t=>{const n=new Map;return t.orderSensitiveModifiers.forEach((s,l)=>{n.set(s,1e6+l)}),s=>{const l=[];let o=[];for(let u=0;u<s.length;u++){const d=s[u],O=d[0]==="[",m=n.has(d);O||m?(o.length>0&&(o.sort(),l.push(...o),o=[]),l.push(d)):o.push(d)}return o.length>0&&(o.sort(),l.push(...o)),l}},X$=t=>({cache:N$(t.cacheSize),parseClassName:R$(t),sortModifiers:C$(t),...y$(t)}),_$=/\s+/,Z$=(t,n)=>{const{parseClassName:s,getClassGroupId:l,getConflictingClassGroupIds:o,sortModifiers:u}=n,d=[],O=t.trim().split(_$);let m="";for(let p=O.length-1;p>=0;p-=1){const x=O[p],{isExternal:g,modifiers:b,hasImportantModifier:S,baseClassName:Q,maybePostfixModifierPosition:k}=s(x);if(g){m=x+(m.length>0?" "+m:m);continue}let T=!!k,j=l(T?Q.substring(0,k):Q);if(!j){if(!T){m=x+(m.length>0?" "+m:m);continue}if(j=l(Q),!j){m=x+(m.length>0?" "+m:m);continue}T=!1}const P=b.length===0?"":b.length===1?b[0]:u(b).join(":"),N=S?P+rf:P,A=N+j;if(d.indexOf(A)>-1)continue;d.push(A);const U=o(j,T);for(let C=0;C<U.length;++C){const X=U[C];d.push(N+X)}m=x+(m.length>0?" "+m:m)}return m},A$=(...t)=>{let n=0,s,l,o="";for(;n<t.length;)(s=t[n++])&&(l=hb(s))&&(o&&(o+=" "),o+=l);return o},hb=t=>{if(typeof t=="string")return t;let n,s="";for(let l=0;l<t.length;l++)t[l]&&(n=hb(t[l]))&&(s&&(s+=" "),s+=n);return s},E$=(t,...n)=>{let s,l,o,u;const d=m=>{const p=n.reduce((x,g)=>g(x),t());return s=X$(p),l=s.cache.get,o=s.cache.set,u=O,O(m)},O=m=>{const p=l(m);if(p)return p;const x=Z$(m,s);return o(m,x),x};return u=d,(...m)=>u(A$(...m))},q$=[],ct=t=>{const n=s=>s[t]||q$;return n.isThemeGetter=!0,n},mb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,pb=/^\((?:(\w[\w-]*):)?(.+)\)$/i,M$=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,Y$=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,V$=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,U$=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,G$=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,L$=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,En=t=>M$.test(t),Qe=t=>!!t&&!Number.isNaN(Number(t)),qn=t=>!!t&&Number.isInteger(Number(t)),fO=t=>t.endsWith("%")&&Qe(t.slice(0,-1)),Ia=t=>Y$.test(t),xb=()=>!0,D$=t=>V$.test(t)&&!U$.test(t),Mf=()=>!1,W$=t=>G$.test(t),B$=t=>L$.test(t),H$=t=>!ue(t)&&!de(t),I$=t=>Jn(t,vb,Mf),ue=t=>mb.test(t),vs=t=>Jn(t,yb,D$),Gg=t=>Jn(t,s5,Qe),F$=t=>Jn(t,Qb,xb),K$=t=>Jn(t,Sb,Mf),Lg=t=>Jn(t,gb,Mf),J$=t=>Jn(t,bb,B$),Co=t=>Jn(t,jb,W$),de=t=>pb.test(t),Zr=t=>zs(t,yb),e5=t=>zs(t,Sb),Dg=t=>zs(t,gb),t5=t=>zs(t,vb),a5=t=>zs(t,bb),Xo=t=>zs(t,jb,!0),n5=t=>zs(t,Qb,!0),Jn=(t,n,s)=>{const l=mb.exec(t);return l?l[1]?n(l[1]):s(l[2]):!1},zs=(t,n,s=!1)=>{const l=pb.exec(t);return l?l[1]?n(l[1]):s:!1},gb=t=>t==="position"||t==="percentage",bb=t=>t==="image"||t==="url",vb=t=>t==="length"||t==="size"||t==="bg-size",yb=t=>t==="length",s5=t=>t==="number",Sb=t=>t==="family-name",Qb=t=>t==="number"||t==="weight",jb=t=>t==="shadow",l5=()=>{const t=ct("color"),n=ct("font"),s=ct("text"),l=ct("font-weight"),o=ct("tracking"),u=ct("leading"),d=ct("breakpoint"),O=ct("container"),m=ct("spacing"),p=ct("radius"),x=ct("shadow"),g=ct("inset-shadow"),b=ct("text-shadow"),S=ct("drop-shadow"),Q=ct("blur"),k=ct("perspective"),T=ct("aspect"),j=ct("ease"),P=ct("animate"),N=()=>["auto","avoid","all","avoid-page","page","left","right","column"],A=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],U=()=>[...A(),de,ue],C=()=>["auto","hidden","clip","visible","scroll"],X=()=>["auto","contain","none"],$=()=>[de,ue,m],W=()=>[En,"full","auto",...$()],E=()=>[qn,"none","subgrid",de,ue],ne=()=>["auto",{span:["full",qn,de,ue]},qn,de,ue],re=()=>[qn,"auto",de,ue],xe=()=>["auto","min","max","fr",de,ue],ie=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],J=()=>["start","end","center","stretch","center-safe","end-safe"],z=()=>["auto",...$()],B=()=>[En,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...$()],I=()=>[En,"screen","full","dvw","lvw","svw","min","max","fit",...$()],fe=()=>[En,"screen","full","lh","dvh","lvh","svh","min","max","fit",...$()],te=()=>[t,de,ue],Ae=()=>[...A(),Dg,Lg,{position:[de,ue]}],Se=()=>["no-repeat",{repeat:["","x","y","space","round"]}],ve=()=>["auto","cover","contain",t5,I$,{size:[de,ue]}],Xe=()=>[fO,Zr,vs],L=()=>["","none","full",p,de,ue],oe=()=>["",Qe,Zr,vs],ze=()=>["solid","dashed","dotted","double"],Ot=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],_e=()=>[Qe,fO,Dg,Lg],tt=()=>["","none",Q,de,ue],bt=()=>["none",Qe,de,ue],vt=()=>["none",Qe,de,ue],It=()=>[Qe,de,ue],yt=()=>[En,"full",...$()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[Ia],breakpoint:[Ia],color:[xb],container:[Ia],"drop-shadow":[Ia],ease:["in","out","in-out"],font:[H$],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[Ia],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[Ia],shadow:[Ia],spacing:["px",Qe],text:[Ia],"text-shadow":[Ia],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",En,ue,de,T]}],container:["container"],columns:[{columns:[Qe,ue,de,O]}],"break-after":[{"break-after":N()}],"break-before":[{"break-before":N()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:U()}],overflow:[{overflow:C()}],"overflow-x":[{"overflow-x":C()}],"overflow-y":[{"overflow-y":C()}],overscroll:[{overscroll:X()}],"overscroll-x":[{"overscroll-x":X()}],"overscroll-y":[{"overscroll-y":X()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:W()}],"inset-x":[{"inset-x":W()}],"inset-y":[{"inset-y":W()}],start:[{"inset-s":W(),start:W()}],end:[{"inset-e":W(),end:W()}],"inset-bs":[{"inset-bs":W()}],"inset-be":[{"inset-be":W()}],top:[{top:W()}],right:[{right:W()}],bottom:[{bottom:W()}],left:[{left:W()}],visibility:["visible","invisible","collapse"],z:[{z:[qn,"auto",de,ue]}],basis:[{basis:[En,"full","auto",O,...$()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Qe,En,"auto","initial","none",ue]}],grow:[{grow:["",Qe,de,ue]}],shrink:[{shrink:["",Qe,de,ue]}],order:[{order:[qn,"first","last","none",de,ue]}],"grid-cols":[{"grid-cols":E()}],"col-start-end":[{col:ne()}],"col-start":[{"col-start":re()}],"col-end":[{"col-end":re()}],"grid-rows":[{"grid-rows":E()}],"row-start-end":[{row:ne()}],"row-start":[{"row-start":re()}],"row-end":[{"row-end":re()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":xe()}],"auto-rows":[{"auto-rows":xe()}],gap:[{gap:$()}],"gap-x":[{"gap-x":$()}],"gap-y":[{"gap-y":$()}],"justify-content":[{justify:[...ie(),"normal"]}],"justify-items":[{"justify-items":[...J(),"normal"]}],"justify-self":[{"justify-self":["auto",...J()]}],"align-content":[{content:["normal",...ie()]}],"align-items":[{items:[...J(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...J(),{baseline:["","last"]}]}],"place-content":[{"place-content":ie()}],"place-items":[{"place-items":[...J(),"baseline"]}],"place-self":[{"place-self":["auto",...J()]}],p:[{p:$()}],px:[{px:$()}],py:[{py:$()}],ps:[{ps:$()}],pe:[{pe:$()}],pbs:[{pbs:$()}],pbe:[{pbe:$()}],pt:[{pt:$()}],pr:[{pr:$()}],pb:[{pb:$()}],pl:[{pl:$()}],m:[{m:z()}],mx:[{mx:z()}],my:[{my:z()}],ms:[{ms:z()}],me:[{me:z()}],mbs:[{mbs:z()}],mbe:[{mbe:z()}],mt:[{mt:z()}],mr:[{mr:z()}],mb:[{mb:z()}],ml:[{ml:z()}],"space-x":[{"space-x":$()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":$()}],"space-y-reverse":["space-y-reverse"],size:[{size:B()}],"inline-size":[{inline:["auto",...I()]}],"min-inline-size":[{"min-inline":["auto",...I()]}],"max-inline-size":[{"max-inline":["none",...I()]}],"block-size":[{block:["auto",...fe()]}],"min-block-size":[{"min-block":["auto",...fe()]}],"max-block-size":[{"max-block":["none",...fe()]}],w:[{w:[O,"screen",...B()]}],"min-w":[{"min-w":[O,"screen","none",...B()]}],"max-w":[{"max-w":[O,"screen","none","prose",{screen:[d]},...B()]}],h:[{h:["screen","lh",...B()]}],"min-h":[{"min-h":["screen","lh","none",...B()]}],"max-h":[{"max-h":["screen","lh",...B()]}],"font-size":[{text:["base",s,Zr,vs]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[l,n5,F$]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",fO,ue]}],"font-family":[{font:[e5,K$,n]}],"font-features":[{"font-features":[ue]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[o,de,ue]}],"line-clamp":[{"line-clamp":[Qe,"none",de,Gg]}],leading:[{leading:[u,...$()]}],"list-image":[{"list-image":["none",de,ue]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",de,ue]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:te()}],"text-color":[{text:te()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...ze(),"wavy"]}],"text-decoration-thickness":[{decoration:[Qe,"from-font","auto",de,vs]}],"text-decoration-color":[{decoration:te()}],"underline-offset":[{"underline-offset":[Qe,"auto",de,ue]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:$()}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",de,ue]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",de,ue]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:Ae()}],"bg-repeat":[{bg:Se()}],"bg-size":[{bg:ve()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},qn,de,ue],radial:["",de,ue],conic:[qn,de,ue]},a5,J$]}],"bg-color":[{bg:te()}],"gradient-from-pos":[{from:Xe()}],"gradient-via-pos":[{via:Xe()}],"gradient-to-pos":[{to:Xe()}],"gradient-from":[{from:te()}],"gradient-via":[{via:te()}],"gradient-to":[{to:te()}],rounded:[{rounded:L()}],"rounded-s":[{"rounded-s":L()}],"rounded-e":[{"rounded-e":L()}],"rounded-t":[{"rounded-t":L()}],"rounded-r":[{"rounded-r":L()}],"rounded-b":[{"rounded-b":L()}],"rounded-l":[{"rounded-l":L()}],"rounded-ss":[{"rounded-ss":L()}],"rounded-se":[{"rounded-se":L()}],"rounded-ee":[{"rounded-ee":L()}],"rounded-es":[{"rounded-es":L()}],"rounded-tl":[{"rounded-tl":L()}],"rounded-tr":[{"rounded-tr":L()}],"rounded-br":[{"rounded-br":L()}],"rounded-bl":[{"rounded-bl":L()}],"border-w":[{border:oe()}],"border-w-x":[{"border-x":oe()}],"border-w-y":[{"border-y":oe()}],"border-w-s":[{"border-s":oe()}],"border-w-e":[{"border-e":oe()}],"border-w-bs":[{"border-bs":oe()}],"border-w-be":[{"border-be":oe()}],"border-w-t":[{"border-t":oe()}],"border-w-r":[{"border-r":oe()}],"border-w-b":[{"border-b":oe()}],"border-w-l":[{"border-l":oe()}],"divide-x":[{"divide-x":oe()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":oe()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...ze(),"hidden","none"]}],"divide-style":[{divide:[...ze(),"hidden","none"]}],"border-color":[{border:te()}],"border-color-x":[{"border-x":te()}],"border-color-y":[{"border-y":te()}],"border-color-s":[{"border-s":te()}],"border-color-e":[{"border-e":te()}],"border-color-bs":[{"border-bs":te()}],"border-color-be":[{"border-be":te()}],"border-color-t":[{"border-t":te()}],"border-color-r":[{"border-r":te()}],"border-color-b":[{"border-b":te()}],"border-color-l":[{"border-l":te()}],"divide-color":[{divide:te()}],"outline-style":[{outline:[...ze(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Qe,de,ue]}],"outline-w":[{outline:["",Qe,Zr,vs]}],"outline-color":[{outline:te()}],shadow:[{shadow:["","none",x,Xo,Co]}],"shadow-color":[{shadow:te()}],"inset-shadow":[{"inset-shadow":["none",g,Xo,Co]}],"inset-shadow-color":[{"inset-shadow":te()}],"ring-w":[{ring:oe()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:te()}],"ring-offset-w":[{"ring-offset":[Qe,vs]}],"ring-offset-color":[{"ring-offset":te()}],"inset-ring-w":[{"inset-ring":oe()}],"inset-ring-color":[{"inset-ring":te()}],"text-shadow":[{"text-shadow":["none",b,Xo,Co]}],"text-shadow-color":[{"text-shadow":te()}],opacity:[{opacity:[Qe,de,ue]}],"mix-blend":[{"mix-blend":[...Ot(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":Ot()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Qe]}],"mask-image-linear-from-pos":[{"mask-linear-from":_e()}],"mask-image-linear-to-pos":[{"mask-linear-to":_e()}],"mask-image-linear-from-color":[{"mask-linear-from":te()}],"mask-image-linear-to-color":[{"mask-linear-to":te()}],"mask-image-t-from-pos":[{"mask-t-from":_e()}],"mask-image-t-to-pos":[{"mask-t-to":_e()}],"mask-image-t-from-color":[{"mask-t-from":te()}],"mask-image-t-to-color":[{"mask-t-to":te()}],"mask-image-r-from-pos":[{"mask-r-from":_e()}],"mask-image-r-to-pos":[{"mask-r-to":_e()}],"mask-image-r-from-color":[{"mask-r-from":te()}],"mask-image-r-to-color":[{"mask-r-to":te()}],"mask-image-b-from-pos":[{"mask-b-from":_e()}],"mask-image-b-to-pos":[{"mask-b-to":_e()}],"mask-image-b-from-color":[{"mask-b-from":te()}],"mask-image-b-to-color":[{"mask-b-to":te()}],"mask-image-l-from-pos":[{"mask-l-from":_e()}],"mask-image-l-to-pos":[{"mask-l-to":_e()}],"mask-image-l-from-color":[{"mask-l-from":te()}],"mask-image-l-to-color":[{"mask-l-to":te()}],"mask-image-x-from-pos":[{"mask-x-from":_e()}],"mask-image-x-to-pos":[{"mask-x-to":_e()}],"mask-image-x-from-color":[{"mask-x-from":te()}],"mask-image-x-to-color":[{"mask-x-to":te()}],"mask-image-y-from-pos":[{"mask-y-from":_e()}],"mask-image-y-to-pos":[{"mask-y-to":_e()}],"mask-image-y-from-color":[{"mask-y-from":te()}],"mask-image-y-to-color":[{"mask-y-to":te()}],"mask-image-radial":[{"mask-radial":[de,ue]}],"mask-image-radial-from-pos":[{"mask-radial-from":_e()}],"mask-image-radial-to-pos":[{"mask-radial-to":_e()}],"mask-image-radial-from-color":[{"mask-radial-from":te()}],"mask-image-radial-to-color":[{"mask-radial-to":te()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":A()}],"mask-image-conic-pos":[{"mask-conic":[Qe]}],"mask-image-conic-from-pos":[{"mask-conic-from":_e()}],"mask-image-conic-to-pos":[{"mask-conic-to":_e()}],"mask-image-conic-from-color":[{"mask-conic-from":te()}],"mask-image-conic-to-color":[{"mask-conic-to":te()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:Ae()}],"mask-repeat":[{mask:Se()}],"mask-size":[{mask:ve()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",de,ue]}],filter:[{filter:["","none",de,ue]}],blur:[{blur:tt()}],brightness:[{brightness:[Qe,de,ue]}],contrast:[{contrast:[Qe,de,ue]}],"drop-shadow":[{"drop-shadow":["","none",S,Xo,Co]}],"drop-shadow-color":[{"drop-shadow":te()}],grayscale:[{grayscale:["",Qe,de,ue]}],"hue-rotate":[{"hue-rotate":[Qe,de,ue]}],invert:[{invert:["",Qe,de,ue]}],saturate:[{saturate:[Qe,de,ue]}],sepia:[{sepia:["",Qe,de,ue]}],"backdrop-filter":[{"backdrop-filter":["","none",de,ue]}],"backdrop-blur":[{"backdrop-blur":tt()}],"backdrop-brightness":[{"backdrop-brightness":[Qe,de,ue]}],"backdrop-contrast":[{"backdrop-contrast":[Qe,de,ue]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Qe,de,ue]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Qe,de,ue]}],"backdrop-invert":[{"backdrop-invert":["",Qe,de,ue]}],"backdrop-opacity":[{"backdrop-opacity":[Qe,de,ue]}],"backdrop-saturate":[{"backdrop-saturate":[Qe,de,ue]}],"backdrop-sepia":[{"backdrop-sepia":["",Qe,de,ue]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":$()}],"border-spacing-x":[{"border-spacing-x":$()}],"border-spacing-y":[{"border-spacing-y":$()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",de,ue]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Qe,"initial",de,ue]}],ease:[{ease:["linear","initial",j,de,ue]}],delay:[{delay:[Qe,de,ue]}],animate:[{animate:["none",P,de,ue]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[k,de,ue]}],"perspective-origin":[{"perspective-origin":U()}],rotate:[{rotate:bt()}],"rotate-x":[{"rotate-x":bt()}],"rotate-y":[{"rotate-y":bt()}],"rotate-z":[{"rotate-z":bt()}],scale:[{scale:vt()}],"scale-x":[{"scale-x":vt()}],"scale-y":[{"scale-y":vt()}],"scale-z":[{"scale-z":vt()}],"scale-3d":["scale-3d"],skew:[{skew:It()}],"skew-x":[{"skew-x":It()}],"skew-y":[{"skew-y":It()}],transform:[{transform:[de,ue,"","none","gpu","cpu"]}],"transform-origin":[{origin:U()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:yt()}],"translate-x":[{"translate-x":yt()}],"translate-y":[{"translate-y":yt()}],"translate-z":[{"translate-z":yt()}],"translate-none":["translate-none"],accent:[{accent:te()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:te()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",de,ue]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scroll-m":[{"scroll-m":$()}],"scroll-mx":[{"scroll-mx":$()}],"scroll-my":[{"scroll-my":$()}],"scroll-ms":[{"scroll-ms":$()}],"scroll-me":[{"scroll-me":$()}],"scroll-mbs":[{"scroll-mbs":$()}],"scroll-mbe":[{"scroll-mbe":$()}],"scroll-mt":[{"scroll-mt":$()}],"scroll-mr":[{"scroll-mr":$()}],"scroll-mb":[{"scroll-mb":$()}],"scroll-ml":[{"scroll-ml":$()}],"scroll-p":[{"scroll-p":$()}],"scroll-px":[{"scroll-px":$()}],"scroll-py":[{"scroll-py":$()}],"scroll-ps":[{"scroll-ps":$()}],"scroll-pe":[{"scroll-pe":$()}],"scroll-pbs":[{"scroll-pbs":$()}],"scroll-pbe":[{"scroll-pbe":$()}],"scroll-pt":[{"scroll-pt":$()}],"scroll-pr":[{"scroll-pr":$()}],"scroll-pb":[{"scroll-pb":$()}],"scroll-pl":[{"scroll-pl":$()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",de,ue]}],fill:[{fill:["none",...te()]}],"stroke-w":[{stroke:[Qe,Zr,vs,Gg]}],stroke:[{stroke:["none",...te()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},r5=E$(l5);function le(...t){return r5(x$(t))}function i5({children:t}){return i.jsx(d$,{delayDuration:300,children:t})}function Wg({children:t,content:n,side:s="top",className:l}){return n?i.jsxs(O$,{children:[i.jsx(f$,{asChild:!0,children:t}),i.jsx(h$,{children:i.jsxs(m$,{side:s,sideOffset:6,className:le("z-50 px-2.5 py-1.5 text-xs font-sans","bg-surface-4 text-text-0 border border-border rounded-md shadow-lg","animate-in fade-in-0 zoom-in-95",l),children:[n,i.jsx(p$,{className:"fill-surface-4"})]})})]}):t}/**
|
|
30
30
|
* @license lucide-react v1.7.0 - ISC
|
|
31
31
|
*
|
|
32
32
|
* This source code is licensed under the ISC license.
|
|
@@ -516,7 +516,7 @@ Error generating stack: `+c.message+`
|
|
|
516
516
|
*
|
|
517
517
|
* This source code is licensed under the ISC license.
|
|
518
518
|
* See the LICENSE file in the root directory of this source tree.
|
|
519
|
-
*/const vP=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Na=ae("zap",vP),yP={success:Br,error:cn,info:Rb,warning:_c},SP={success:"border-l-success",error:"border-l-danger",info:"border-l-accent",warning:"border-l-warning"},QP={success:"text-success",error:"text-danger",info:"text-accent",warning:"text-warning"},jP={success:3e3,error:0,info:5e3,warning:5e3};function wP({toast:t}){const n=D(o=>o.removeToast),s=yP[t.type]||Rb,l=jP[t.type];return v.useEffect(()=>{if(!l)return;const o=setTimeout(()=>n(t.id),l);return()=>clearTimeout(o)},[t.id,l,n]),i.jsxs(b0.div,{layout:!0,initial:{opacity:0,x:80,scale:.95},animate:{opacity:1,x:0,scale:1},exit:{opacity:0,x:80,scale:.95},transition:{duration:.2},className:le("w-80 rounded-md border border-border bg-surface-1 shadow-xl","border-l-4 flex items-center gap-3 px-4 py-3",SP[t.type]),children:[i.jsx(s,{size:16,className:le("flex-shrink-0",QP[t.type])}),i.jsxs("div",{className:"flex-1 min-w-0",children:[i.jsx("p",{className:"text-sm text-text-0 font-sans",children:t.message}),t.detail&&i.jsx("p",{className:"text-xs text-text-3 font-sans mt-0.5",children:t.detail})]}),i.jsx("button",{onClick:o=>{o.stopPropagation(),n(t.id)},className:"p-1.5 text-text-4 hover:text-text-1 hover:bg-surface-5 rounded transition-colors cursor-pointer flex-shrink-0 z-10",children:i.jsx(Rt,{size:14})})]})}function kP(){const t=D(n=>n.toasts);return i.jsx("div",{className:"fixed bottom-4 right-4 z-[100] flex flex-col-reverse gap-2",children:i.jsx(g0,{mode:"popLayout",children:t.slice(-3).map(n=>i.jsx(wP,{toast:n},n.id))})})}const $P=[{id:"agents",icon:_b,label:"Agents"},{id:"editor",icon:dn,label:"Editor"},{id:"dashboard",icon:Rc,label:"Dashboard"},{id:"marketplace",icon:Eb,label:"Marketplace"},{id:"teams",icon:Zc,label:"Teams"}],TP=[{id:"journalist",icon:Ir,label:"Journalist",panel:!0},{id:"settings",icon:Yb,label:"Settings",nav:!0}];function PP({activeView:t,detailPanel:n,onNavigate:s,onTogglePanel:l}){return i.jsxs("nav",{className:"w-12 flex-shrink-0 flex flex-col bg-surface-3 border-r border-border",children:[i.jsx("div",{className:"flex flex-col items-center gap-0.5 pt-2",children:$P.map(o=>i.jsx(Wg,{content:o.label,side:"right",children:i.jsx("button",{onClick:()=>s(o.id),className:le("w-10 h-10 flex items-center justify-center rounded-md transition-colors cursor-pointer",t===o.id?"text-text-0 bg-surface-5":"text-text-3 hover:text-text-1 hover:bg-surface-4"),children:i.jsx(o.icon,{size:20,strokeWidth:t===o.id?2:1.5})})},o.id))}),i.jsx("div",{className:"flex-1"}),i.jsx("div",{className:"flex flex-col items-center gap-0.5 pb-2",children:TP.map(o=>{const u=o.panel?(n==null?void 0:n.type)===o.id:t===o.id;return i.jsx(Wg,{content:o.label,side:"right",children:i.jsx("button",{onClick:()=>o.panel?l(o.id):s((o.nav,o.id)),className:le("w-10 h-10 flex items-center justify-center rounded-md transition-colors cursor-pointer",u?"text-text-0 bg-surface-5":"text-text-3 hover:text-text-1 hover:bg-surface-4"),children:i.jsx(o.icon,{size:20,strokeWidth:u?2:1.5})})},o.id)})})]})}const NP={agents:"Agents",editor:"Editor",dashboard:"Dashboard",marketplace:"Marketplace",teams:"Teams"};function zP({activeView:t,connected:n,daemonHost:s,editorActiveFile:l,onOpenCommandPalette:o,onSpawn:u}){const d=["Groove",NP[t]||t];return t==="editor"&&l&&d.push(l.split("/").pop()),i.jsxs("header",{className:"h-11 flex-shrink-0 flex items-center gap-3 px-4 bg-surface-3 border-b border-border",children:[i.jsx("img",{src:"/favicon.png",alt:"Groove",className:"h-7 w-7 rounded-full flex-shrink-0"}),s&&i.jsx("span",{className:"text-2xs font-mono font-semibold text-text-3 bg-surface-5 px-1.5 py-0.5 rounded flex-shrink-0",children:s}),i.jsx("div",{className:"flex-1 min-w-4"}),i.jsxs("button",{onClick:o,className:le("flex items-center gap-2.5 h-8 px-4 rounded-full w-full max-w-md","bg-surface-1 border border-border-subtle","text-sm text-text-4 font-sans","hover:border-border hover:text-text-3 transition-colors cursor-pointer"),children:[i.jsx(ql,{size:14,className:"flex-shrink-0"}),i.jsx("span",{className:"flex-1 text-left",children:"Search commands..."}),i.jsx("kbd",{className:"text-2xs font-mono bg-surface-4 px-1.5 py-0.5 rounded-full text-text-4",children:"Cmd+K"})]}),i.jsx("div",{className:"flex-1 min-w-4"}),i.jsx("div",{className:"flex items-center gap-1 text-xs font-sans text-text-3 flex-shrink-0",children:d.map((O,m)=>i.jsxs("span",{className:"flex items-center gap-1",children:[m>0&&i.jsx(ii,{size:11,className:"text-text-4"}),i.jsx("span",{className:le(m===d.length-1?"text-text-2":"text-text-4"),children:O})]},m))}),n&&i.jsxs("button",{onClick:u,className:"ml-1 flex items-center gap-1 h-7 px-3.5 rounded-full bg-accent/15 text-accent text-xs font-semibold font-sans hover:bg-accent/25 transition-colors cursor-pointer select-none flex-shrink-0",children:[i.jsx(Fn,{size:14}),"Spawn"]})]})}const RP={running:"var(--color-success)",starting:"var(--color-warning)",stopped:"var(--color-text-3)",crashed:"var(--color-danger)",completed:"var(--color-accent)",killed:"var(--color-text-3)",rotating:"var(--color-purple)"};function Ff(t){return RP[t]||"var(--color-text-3)"}const CP={planner:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},backend:{bg:"rgba(51, 175, 188, 0.12)",text:"#33afbc",border:"#33afbc"},frontend:{bg:"rgba(229, 192, 123, 0.12)",text:"#e5c07b",border:"#e5c07b"},fullstack:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},testing:{bg:"rgba(97, 175, 239, 0.12)",text:"#61afef",border:"#61afef"},devops:{bg:"rgba(209, 154, 102, 0.12)",text:"#d19a66",border:"#d19a66"},docs:{bg:"rgba(139, 146, 158, 0.12)",text:"#8b929e",border:"#8b929e"},security:{bg:"rgba(224, 108, 117, 0.12)",text:"#e06c75",border:"#e06c75"},database:{bg:"rgba(198, 120, 221, 0.12)",text:"#c678dd",border:"#c678dd"},cmo:{bg:"rgba(229, 192, 123, 0.12)",text:"#e5c07b",border:"#e5c07b"},cfo:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},ea:{bg:"rgba(97, 175, 239, 0.12)",text:"#61afef",border:"#61afef"},support:{bg:"rgba(51, 175, 188, 0.12)",text:"#33afbc",border:"#33afbc"},analyst:{bg:"rgba(198, 120, 221, 0.12)",text:"#c678dd",border:"#c678dd"}};function Db(t){const n=(t||"").toLowerCase();return CP[n]||{bg:"rgba(139, 146, 158, 0.12)",text:"#8b929e",border:"#8b929e"}}function Nl({status:t,size:n="md",className:s}){const l=t==="running"||t==="starting",o=n==="sm"?"w-1.5 h-1.5":n==="lg"?"w-3 h-3":"w-2 h-2";return i.jsx("span",{className:le("rounded-full inline-block flex-shrink-0",l&&"animate-pulse",o,s),style:{background:Ff(t)}})}function rt(t){return t==null||isNaN(t)?"0":t>=1e6?(t/1e6).toFixed(1).replace(/\.0$/,"")+"M":t>=1e3?(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":Math.round(t).toLocaleString()}function Kf(t){return t==null||isNaN(t)?"$0":t>=1e3?"$"+(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":t>=1||t>=.01?"$"+t.toFixed(2):"$"+t.toFixed(3)}function ws(t){return t==null||isNaN(t)?"0%":Math.round(t)+"%"}function Ac(t){if(!t||t<0)return"0s";const n=Math.floor(t/86400),s=Math.floor(t%86400/3600),l=Math.floor(t%3600/60),o=Math.floor(t%60);return n>0?`${n}d ${s}h`:s>0?`${s}h ${l}m`:l>0?`${l}m ${o}s`:`${o}s`}function Ct(t){if(!t)return"";const n=(Date.now()-new Date(t).getTime())/1e3;return n<5?"just now":n<60?`${Math.floor(n)}s ago`:n<3600?`${Math.floor(n/60)}m ago`:n<86400?`${Math.floor(n/3600)}h ago`:`${Math.floor(n/86400)}d ago`}function XP({connected:t,agentCount:n,runningCount:s,uptime:l,terminalVisible:o,onToggleTerminal:u}){return i.jsxs("footer",{className:"h-6 flex-shrink-0 flex items-center px-3 bg-surface-3 border-t border-border text-2xs font-sans select-none",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsxs("div",{className:"flex items-center gap-1.5",children:[i.jsx(Nl,{status:t?"running":"crashed",size:"sm"}),i.jsx("span",{className:t?"text-text-2":"text-danger",children:t?"Connected":"Offline"})]}),t&&l>0&&i.jsxs("span",{className:"text-text-4",children:["Up ",Ac(l)]}),t&&n>0&&i.jsxs("span",{className:"text-text-4",children:[s,"/",n," agents"]})]}),i.jsx("div",{className:"flex-1"}),i.jsxs("a",{href:"https://docs.groovedev.ai",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 px-2 h-full text-text-3 hover:text-text-1 hover:bg-surface-5 transition-colors no-underline",children:[i.jsx(g5,{size:12}),i.jsx("span",{children:"Docs"})]}),i.jsxs("button",{onClick:u,className:le("flex items-center gap-1.5 px-2 h-full transition-colors cursor-pointer",o?"text-accent bg-accent/8 hover:bg-accent/12":"text-text-3 hover:text-text-1 hover:bg-surface-5"),children:[i.jsx(ui,{size:12}),i.jsx("span",{children:"Terminal"}),i.jsx("kbd",{className:"font-mono text-text-4 ml-0.5",children:"Cmd+J"})]})]})}function _P({children:t,width:n,onWidthChange:s,onClose:l,className:o}){const u=v.useRef(!1),d=v.useRef(0),O=v.useRef(0),m=v.useCallback(p=>{p.preventDefault(),u.current=!0,d.current=p.clientX,O.current=n;function x(b){if(!u.current)return;const S=d.current-b.clientX,Q=Math.min(Math.max(O.current+S,380),window.innerWidth*.65);s(Q)}function g(){u.current=!1,document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",g)}document.addEventListener("mousemove",x),document.addEventListener("mouseup",g)},[n,s]);return i.jsxs("aside",{className:le("flex-shrink-0 flex bg-surface-1 border-l border-border relative",o),style:{width:n},children:[i.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-1 cursor-col-resize hover:bg-accent/30 transition-colors z-10",onMouseDown:m}),i.jsx("button",{onClick:l,className:"absolute top-3 right-3 z-10 p-1 rounded-md text-text-3 hover:text-text-0 hover:bg-surface-5 transition-colors cursor-pointer",children:i.jsx(Rt,{size:14})}),i.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden",children:t})]})}const ZP=[{id:"nav:agents",label:"Go to Agents",icon:_b,category:"Navigation",action:t=>{t.setActiveView("agents")}},{id:"nav:editor",label:"Go to Editor",icon:dn,category:"Navigation",action:t=>{t.setActiveView("editor")}},{id:"nav:dashboard",label:"Go to Dashboard",icon:Rc,category:"Navigation",action:t=>{t.setActiveView("dashboard")}},{id:"nav:marketplace",label:"Go to Marketplace",icon:Eb,category:"Navigation",action:t=>{t.setActiveView("marketplace")}},{id:"nav:teams",label:"Go to Teams",icon:Zc,category:"Navigation",action:t=>{t.setActiveView("teams")}},{id:"action:spawn",label:"Spawn Agent",icon:Fn,category:"Actions",action:t=>{t.openDetail({type:"spawn"})}},{id:"action:terminal",label:"Toggle Terminal",icon:ui,category:"Actions",action:t=>{t.setTerminalVisible(!t.terminalVisible)},shortcut:"Cmd+J"},{id:"action:journalist",label:"Toggle Journalist",icon:Ir,category:"Actions",action:t=>{var n;((n=t.detailPanel)==null?void 0:n.type)==="journalist"?t.closeDetail():t.openDetail({type:"journalist"})}}];function AP(){const t=D(S=>S.commandPaletteOpen),n=D(S=>S.toggleCommandPalette),s=D(S=>S.agents),l=D,[o,u]=v.useState(""),[d,O]=v.useState(0),m=v.useRef(null),p=v.useMemo(()=>{const S=s.flatMap(Q=>[{id:`chat:${Q.id}`,label:`Chat with ${Q.name}`,icon:ci,category:"Agents",action:k=>{k.selectAgent(Q.id)}},...Q.status==="running"?[{id:`rotate:${Q.id}`,label:`Rotate ${Q.name}`,icon:El,category:"Agents",action:k=>{k.rotateAgent(Q.id)}},{id:`kill:${Q.id}`,label:`Kill ${Q.name}`,icon:Hf,category:"Agents",action:k=>{k.killAgent(Q.id)}}]:[]]);return[...ZP,...S]},[s]),x=v.useMemo(()=>{if(!o.trim())return p.slice(0,12);const S=o.toLowerCase();return p.filter(Q=>Q.label.toLowerCase().includes(S)||Q.category.toLowerCase().includes(S)).slice(0,12)},[p,o]);v.useEffect(()=>{t&&(u(""),O(0),setTimeout(()=>{var S;return(S=m.current)==null?void 0:S.focus()},50))},[t]),v.useEffect(()=>{d>=x.length&&O(Math.max(0,x.length-1))},[x.length,d]);function g(S){S.action(l.getState()),n()}function b(S){S.key==="ArrowDown"?(S.preventDefault(),O(Q=>Math.min(Q+1,x.length-1))):S.key==="ArrowUp"?(S.preventDefault(),O(Q=>Math.max(Q-1,0))):S.key==="Enter"&&x[d]?(S.preventDefault(),g(x[d])):S.key==="Escape"&&n()}return t?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fixed inset-0 z-50 bg-black/40 backdrop-blur-sm",onClick:n}),i.jsx(g0,{children:i.jsxs(b0.div,{initial:{opacity:0,y:-20,scale:.96},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:-10,scale:.98},transition:{duration:.15},className:"fixed top-[15%] left-1/2 -translate-x-1/2 z-50 w-[480px] max-h-[400px] bg-surface-1 border border-border rounded-lg shadow-2xl overflow-hidden",onKeyDown:b,children:[i.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border-subtle",children:[i.jsx(ql,{size:16,className:"text-text-3 flex-shrink-0"}),i.jsx("input",{ref:m,value:o,onChange:S=>{u(S.target.value),O(0)},placeholder:"Type a command...",className:"flex-1 bg-transparent text-sm text-text-0 font-sans placeholder:text-text-4 focus:outline-none"})]}),i.jsxs("div",{className:"overflow-y-auto max-h-[320px] py-1",children:[x.length===0&&i.jsx("div",{className:"px-4 py-6 text-sm text-text-3 text-center font-sans",children:"No results"}),x.map((S,Q)=>i.jsxs("button",{onClick:()=>g(S),onMouseEnter:()=>O(Q),className:le("w-full flex items-center gap-3 px-4 py-2 text-sm font-sans cursor-pointer",Q===d?"bg-surface-5 text-text-0":"text-text-1 hover:bg-surface-4"),children:[i.jsx(S.icon,{size:16,className:"text-text-3 flex-shrink-0"}),i.jsx("span",{className:"flex-1 text-left",children:S.label}),i.jsx("span",{className:"text-2xs text-text-4",children:S.category}),S.shortcut&&i.jsx("kbd",{className:"text-2xs font-mono bg-surface-4 px-1 py-0.5 rounded text-text-3 ml-1",children:S.shortcut})]},S.id))]})]})})]}):null}function EP({children:t,detailContent:n,terminalContent:s}){const l=D(C=>C.activeView),o=D(C=>C.detailPanel),u=D(C=>C.connected),d=D(C=>C.tunneled),O=D(C=>C.daemonHost),m=D(C=>C.agents),p=D(C=>C.editorActiveFile),x=D(C=>C.detailPanelWidth),g=D(C=>C.terminalVisible),b=D(C=>C.terminalFullHeight),S=D(C=>C.setActiveView),Q=D(C=>C.openDetail),k=D(C=>C.closeDetail),T=D(C=>C.setDetailPanelWidth),j=D(C=>C.setTerminalVisible),P=D(C=>C.toggleCommandPalette),N=v.useMemo(()=>m.filter(C=>C.status==="running").length,[m]),A=v.useMemo(()=>[{key:"k",meta:!0,handler:()=>D.getState().toggleCommandPalette()},{key:"p",meta:!0,shift:!0,handler:()=>D.getState().toggleCommandPalette()},{key:"j",meta:!0,handler:()=>{const C=D.getState();C.setTerminalVisible(!C.terminalVisible)}},{key:"n",meta:!0,handler:()=>D.getState().openDetail({type:"spawn"})},{key:"1",meta:!0,handler:()=>D.getState().setActiveView("agents")},{key:"2",meta:!0,handler:()=>D.getState().setActiveView("editor")},{key:"3",meta:!0,handler:()=>D.getState().setActiveView("dashboard")},{key:"4",meta:!0,handler:()=>D.getState().setActiveView("marketplace")},{key:"5",meta:!0,handler:()=>D.getState().setActiveView("teams")},{key:"Escape",handler:()=>{const C=D.getState();C.commandPaletteOpen?C.toggleCommandPalette():C.detailPanel&&C.closeDetail()}}],[]);nw(A);const U=o&&o.type!=="spawn";return i.jsx(i5,{children:i.jsxs("div",{className:"w-full h-full flex flex-col bg-surface-2 text-text-1 font-sans",children:[i.jsx(zP,{activeView:l,connected:u,tunneled:d,daemonHost:O,editorActiveFile:p,onOpenCommandPalette:P,onSpawn:()=>Q({type:"spawn"})}),i.jsxs("div",{className:"flex-1 flex min-h-0",children:[i.jsx(PP,{activeView:l,detailPanel:o,onNavigate:S,onTogglePanel:C=>{(o==null?void 0:o.type)===C?k():Q({type:C})}}),i.jsxs("div",{className:"flex-1 flex flex-col min-w-0 min-h-0",children:[!(g&&b)&&i.jsx("main",{className:"flex-1 min-h-0 overflow-hidden relative",children:t}),s]}),U&&i.jsx(_P,{width:x,onWidthChange:T,onClose:k,children:n})]}),i.jsx(XP,{connected:u,agentCount:m.length,runningCount:N,terminalVisible:g,onToggleTerminal:()=>j(!g)}),i.jsx(AP,{}),i.jsx(kP,{})]})})}const qP=[];function MP(t){if(!t||t==="auto")return"auto";const n=t.match(/^claude-(opus|sonnet|haiku)-(\d+)-(\d+)(?:-\d+)?$/);return n?`${n[1][0].toUpperCase()+n[1].slice(1)} ${n[2]}.${n[3]}`:t.startsWith("gemini-")?t.replace("gemini-","Gemini ").replace("-preview","").replace("-flash-lite"," Flash Lite").replace("-flash"," Flash").replace("-pro"," Pro"):t.startsWith("gpt-")?t.toUpperCase().replace("GPT-","GPT-"):t}function YP(t){if(!t)return null;const n=t.toLowerCase();return n.includes("read")?"READ":n.includes("edit")||n.includes("writ")?"WRITE":n.includes("search")||n.includes("grep")||n.includes("glob")?"SEARCH":n.includes("bash")||n.includes("exec")||n.includes("running")?"EXEC":n.includes("test")?"TEST":n.includes("error")||n.includes("fail")?"ERR":n.includes("complet")||n.includes("done")?"DONE":"WORK"}function VP(t){if(!t)return"";const n=Math.floor((Date.now()-t)/1e3);return n<60?`${n}s`:n<3600?`${Math.floor(n/60)}m`:`${Math.floor(n/3600)}h`}function UP({agent:t}){const s=(D(l=>l.activityLog[t.id])||qP).slice(-8);return i.jsx("div",{className:"absolute left-full top-0 ml-2 z-50 pointer-events-none",style:{width:220,animation:"tooltip-slide-in 0.15s ease-out"},children:i.jsxs("div",{className:"overflow-hidden",style:{background:"#181b21",border:"1px solid #262a32",borderRadius:4},children:[t.prompt&&i.jsx("div",{className:"px-2.5 py-2 border-b border-[#262a32]",children:i.jsx("p",{className:"text-[9px] font-sans text-[#8b929e] line-clamp-3 leading-snug",children:t.prompt})}),s.length>0?i.jsxs("div",{children:[i.jsx("div",{className:"px-2.5 pt-1.5 pb-1",children:i.jsx("span",{className:"text-[8px] font-mono text-[#3a3f4b] uppercase tracking-widest",children:"Activity"})}),s.map((l,o)=>{var O;const u=YP(l.text),d=((O=l.text)==null?void 0:O.length)>45?l.text.slice(0,45)+"...":l.text;return i.jsxs("div",{className:"px-2.5 py-[3px] flex items-start gap-1.5",children:[i.jsx("span",{className:"text-[8px] font-mono text-[#333842] w-5 flex-shrink-0 text-right",children:VP(l.timestamp)}),u&&i.jsx("span",{className:le("text-[7px] font-mono w-7 flex-shrink-0 text-center rounded-sm px-0.5 py-px",u==="ERR"?"text-[#e06c75] bg-[#e06c75]/10":"text-[#505862] bg-[#505862]/10"),children:u}),i.jsx("span",{className:"text-[9px] font-sans text-[#6e7681] truncate flex-1",children:d})]},o)}),i.jsx("div",{className:"h-1.5"})]}):i.jsx("div",{className:"px-2.5 py-3",children:i.jsx("span",{className:"text-[9px] font-mono text-[#333842]",children:"Awaiting activity..."})})]})})}const GP={running:"LIVE",starting:"INIT",stopped:"IDLE",crashed:"ERR",completed:"DONE",killed:"KILL",rotating:"ROT"},Wb=v.memo(({data:t,selected:n})=>{const{agent:s}=t,l=s.status==="running"||s.status==="starting",o=Math.round((s.contextUsage||0)*100),u=Ff(s.status),d=s.tokensUsed||0,[O,m]=v.useState(!1);return i.jsxs("div",{className:"relative",onMouseEnter:()=>m(!0),onMouseLeave:()=>m(!1),children:[i.jsxs("div",{className:"w-[220px] overflow-hidden transition-all duration-150",style:{background:"#1c1f26",border:`1px solid ${n?"#2e323a":"#262a32"}`,borderRadius:4},children:[i.jsx(Gn,{id:"top",type:"target",position:Ln.Top,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"bottom",type:"target",position:Ln.Bottom,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"left",type:"target",position:Ln.Left,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"right",type:"target",position:Ln.Right,className:"!w-1 !h-1 !bg-transparent !border-0"}),l&&i.jsx("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",style:{borderRadius:3},children:i.jsx("div",{className:"absolute left-0 right-0 h-px",style:{background:"linear-gradient(90deg, transparent 0%, rgba(97,175,239,0.25) 50%, transparent 100%)",animation:"node-scan 3s ease-in-out infinite"}})}),i.jsxs("div",{className:"px-3 pt-2.5 pb-1.5",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsxs("span",{className:"relative flex-shrink-0 w-[6px] h-[6px]",children:[i.jsx("span",{className:"absolute inset-0 rounded-sm",style:{background:u}}),l&&i.jsx("span",{className:"absolute inset-[-2px] rounded-sm",style:{background:u,opacity:.15,animation:"node-pulse-bar 2s ease-in-out infinite"}})]}),i.jsx("span",{className:"text-[12px] font-semibold text-[#e6e6e6] font-sans truncate flex-1 leading-none",children:s.name}),i.jsx("span",{className:"text-[7px] font-mono font-bold uppercase tracking-wider px-1 py-px rounded-sm",style:{color:u,background:u+"12"},children:GP[s.status]||s.status})]}),i.jsxs("div",{className:"flex items-center gap-1.5 mt-1.5",children:[i.jsx("span",{className:"text-[9px] font-mono text-[#505862] uppercase tracking-[0.05em]",children:s.role}),i.jsx("span",{className:"text-[9px] text-[#2a2e36]",children:"/"}),i.jsx("span",{className:"text-[9px] font-mono text-[#505862]",children:MP(s.model)})]})]}),i.jsxs("div",{className:"px-3 pt-1 pb-2",children:[i.jsxs("div",{className:"flex items-baseline gap-1.5",children:[i.jsx("span",{className:"text-[14px] font-mono font-medium text-[#bcc2cd] leading-none",children:rt(d)}),i.jsx("span",{className:"text-[8px] font-mono text-[#505862]",children:"tok"}),i.jsx("span",{className:"flex-1"}),i.jsxs("span",{className:"text-[9px] font-mono text-[#505862]",children:[o,"%"]})]}),i.jsx("div",{className:"mt-1.5 h-[2px] rounded-sm bg-[#262a32] overflow-hidden",children:i.jsx("div",{className:"h-full rounded-sm transition-all duration-700",style:{width:`${Math.max(o,1)}%`,background:o>80?"#e06c75":o>60?"#e5c07b":l?"#61afef":"#333842"}})})]})]}),O&&i.jsx(UP,{agent:s})]})});Wb.displayName="AgentNode";const Bb=v.memo(({data:t})=>{const{agentCount:n,runningCount:s}=t,l=s>0,o={background:"transparent",border:0,width:2,height:2};return i.jsxs("div",{className:"relative flex items-center justify-center",style:{width:84,height:84},children:[i.jsx("div",{className:le("absolute inset-0 rounded-full transition-all duration-500",l&&"animate-[spin-slow_30s_linear_infinite]"),style:{border:`1px dashed ${l?"rgba(97,175,239,0.5)":"rgba(97,175,239,0.25)"}`}}),i.jsx("div",{className:"absolute inset-[10px] rounded-full",style:{background:l?"radial-gradient(circle, rgba(97,175,239,0.15) 0%, transparent 70%)":"radial-gradient(circle, rgba(97,175,239,0.05) 0%, transparent 70%)",animation:l?"node-pulse-bar 2.5s ease-in-out infinite":"none"}}),i.jsx("div",{className:le("w-14 h-14 rounded-full flex items-center justify-center relative z-10 transition-all duration-300",l?"bg-[#1c1f26] border-2 border-[#61afef]/35 shadow-[0_0_28px_rgba(97,175,239,0.15)]":"bg-[#1c1f26] border border-[#61afef]/20"),children:i.jsx("img",{src:"/favicon.png",alt:"G",className:le("h-7 w-7 rounded-full transition-opacity",l?"opacity-90":"opacity-60")})}),n>0&&i.jsx("div",{className:le("absolute z-20 min-w-[20px] h-[20px] rounded-sm flex items-center justify-center","text-[10px] font-mono font-bold px-1 transition-all duration-300",l?"bg-[#1c1f26] text-[#61afef] border border-[#61afef]/40":"bg-[#1c1f26] text-[#61afef]/60 border border-[#61afef]/20"),style:{bottom:2,right:2},children:n}),i.jsx(Gn,{id:"bottom",type:"source",position:Ln.Bottom,style:o}),i.jsx(Gn,{id:"right",type:"source",position:Ln.Right,style:o}),i.jsx(Gn,{id:"left",type:"source",position:Ln.Left,style:o}),i.jsx(Gn,{id:"top",type:"source",position:Ln.Top,style:o})]})});Bb.displayName="RootNode";const LP={primary:"bg-accent/20 text-accent border border-accent/25 hover:bg-accent/30 font-medium",secondary:"bg-surface-5/40 text-text-1 border border-border-subtle hover:bg-surface-5/70 hover:text-text-0",ghost:"bg-transparent text-text-2 border border-transparent hover:bg-surface-5/50 hover:text-text-0",danger:"bg-danger/12 text-danger border border-danger/15 hover:bg-danger/20",info:"bg-info/12 text-info border border-info/15 hover:bg-info/20",outline:"bg-transparent text-accent border border-accent/30 hover:bg-accent/10"},DP={sm:"h-7 px-2.5 text-xs gap-1.5 rounded",md:"h-8 px-3 text-sm gap-2 rounded",lg:"h-9 px-4 text-sm gap-2 rounded",icon:"h-8 w-8 rounded"},je=v.forwardRef(({className:t,variant:n="secondary",size:s="md",children:l,...o},u)=>i.jsx("button",{ref:u,className:le("inline-flex items-center justify-center font-sans transition-colors duration-100","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent","disabled:opacity-40 disabled:pointer-events-none","cursor-pointer select-none",LP[n],DP[s],t),...o,children:l}));je.displayName="Button";const WP={default:"bg-surface-4 text-text-2",accent:"bg-accent/12 text-accent",success:"bg-success/12 text-success",warning:"bg-warning/12 text-warning",danger:"bg-danger/12 text-danger",info:"bg-info/12 text-info",purple:"bg-purple/12 text-purple",orange:"bg-orange/12 text-orange"};function We({children:t,variant:n="default",className:s,dot:l,...o}){return i.jsxs("span",{className:le("inline-flex items-center gap-1 px-1.5 py-0.5","text-2xs font-semibold uppercase tracking-wider rounded","font-sans select-none whitespace-nowrap",WP[n],s),...o,children:[l&&i.jsx("span",{className:le("w-1.5 h-1.5 rounded-full",l==="pulse"&&"animate-pulse"),style:{background:"currentColor"}}),t]})}const BP={agentNode:Wb,rootNode:Bb},Kg=220,Jg=82,_o=260,gO=130,Mn=4,Fa="__groove_root__";function bO(){try{return JSON.parse(localStorage.getItem("groove:nodePositions")||"{}")}catch{return{}}}function HP(t){try{localStorage.setItem("groove:nodePositions",JSON.stringify(t))}catch{}}function IP(){const t=D(N=>N.teams),n=D(N=>N.activeTeamId),s=D(N=>N.agents),l=D(N=>N.switchTeam),o=D(N=>N.createTeam),u=D(N=>N.deleteTeam),d=D(N=>N.renameTeam),[O,m]=v.useState(!1),[p,x]=v.useState(""),[g,b]=v.useState(null),[S,Q]=v.useState(""),k=v.useRef(!1);function T(){const N=p.trim();!N||k.current||(k.current=!0,x(""),m(!1),o(N).finally(()=>{k.current=!1}))}function j(N){b(N.id),Q(N.name)}function P(){const N=S.trim();if(!N||!g){b(null);return}d(g,N),b(null)}return i.jsxs("div",{className:"flex items-end px-0 pt-0 pb-0 bg-surface-1 border-b border-border gap-0 flex-shrink-0",children:[t.map(N=>{const A=s.filter($=>$.teamId===N.id).length,U=N.id===n,C=g===N.id,X=s.filter($=>$.teamId===N.id&&($.status==="running"||$.status==="starting")).length;return i.jsxs("div",{onClick:()=>!C&&l(N.id),onDoubleClick:()=>j(N),className:le("group relative flex items-center gap-2 px-4 h-9 text-xs font-sans cursor-pointer select-none transition-colors",U?"bg-surface-0 text-text-0 font-semibold border-x border-x-border":"text-text-3 hover:text-text-1 hover:bg-surface-3/50"),children:[U&&i.jsx("div",{className:"absolute top-0 left-0 right-0 h-px bg-accent",style:{height:"0.5px"}}),i.jsx(Zc,{size:13,className:U?"text-accent":"text-text-4"}),C?i.jsx("input",{value:S,onChange:$=>Q($.target.value),onKeyDown:$=>{$.key==="Enter"&&P(),$.key==="Escape"&&b(null)},onBlur:P,className:"h-5 w-24 px-1.5 text-xs bg-surface-0 border border-accent rounded text-text-0 font-sans focus:outline-none",autoFocus:!0,onClick:$=>$.stopPropagation()}):i.jsx("span",{className:"truncate max-w-[120px]",children:N.name}),A>0&&!C&&i.jsx("span",{className:le("flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full text-2xs font-mono font-semibold",X>0?"bg-accent/15 text-accent":"bg-surface-4 text-text-3"),children:A}),!C&&i.jsxs("div",{className:"flex items-center gap-0.5 ml-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[i.jsx("button",{onClick:$=>{$.stopPropagation(),j(N)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-text-1 cursor-pointer",title:"Rename team",children:i.jsx(Cc,{size:10})}),!N.isDefault&&i.jsx("button",{onClick:$=>{$.stopPropagation(),u(N.id)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-danger cursor-pointer",title:"Delete team",children:i.jsx(Rt,{size:10})})]}),U&&i.jsx("div",{className:"absolute bottom-[-1px] left-0 right-0 h-px bg-surface-0"})]},N.id)}),O?i.jsxs("div",{className:"flex items-center gap-1.5 px-3 h-9 bg-surface-3/50",children:[i.jsx("input",{value:p,onChange:N=>x(N.target.value),onKeyDown:N=>{N.key==="Enter"&&T(),N.key==="Escape"&&(m(!1),x(""))},placeholder:"Team name...",className:"h-5 w-28 px-1.5 text-xs bg-surface-0 border border-border-subtle rounded text-text-0 font-sans placeholder:text-text-4 focus:outline-none focus:ring-1 focus:ring-accent",autoFocus:!0}),i.jsx("button",{onClick:T,disabled:!p.trim(),className:"p-1 rounded text-accent hover:bg-accent/10 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed",children:i.jsx(oa,{size:12})}),i.jsx("button",{onClick:()=>{m(!1),x("")},className:"p-1 rounded text-text-4 hover:text-text-1 cursor-pointer",children:i.jsx(Rt,{size:12})})]}):i.jsx("button",{onClick:()=>m(!0),className:"flex items-center justify-center w-9 h-9 text-text-4 hover:text-text-1 hover:bg-surface-3/50 cursor-pointer transition-colors",title:"New team",children:i.jsx(Fn,{size:14})})]})}function FP(){const t=D(C=>C.agents),n=D(C=>C.activeTeamId),s=D(C=>C.tokenTimeline),l=D(C=>C.selectAgent),o=D(C=>C.closeDetail),u=v.useMemo(()=>t.filter(C=>C.teamId===n),[t,n]),{fitView:d}=xj(),[O,m]=v.useState(0),p=v.useMemo(()=>{const C=bO(),X=u.filter(re=>re.status==="running").length,$=[{id:Fa,type:"rootNode",position:C[Fa]||{x:0,y:0},data:{agentCount:u.length,runningCount:X},draggable:!0,selectable:!1}],W=new Set,E=(re,xe)=>`${Math.round(re/100)},${Math.round(xe/100)}`,ne=[];u.forEach((re,xe)=>{const ie=re.name||re.id;if(C[ie]){const J=C[ie];W.add(E(J.x,J.y)),$.push({id:re.id,type:"agentNode",position:J,data:{agent:re,timeline:s[re.id]||[]},draggable:!0,selectable:!0})}else ne.push({agent:re,index:xe})});for(const{agent:re,index:xe}of ne){const ie=Math.floor(xe/Mn),J=xe%Mn;let I={x:-((Math.min(u.length-ie*Mn,Mn)-1)*_o)/2+J*_o,y:140+ie*gO};for(;W.has(E(I.x,I.y));)I={x:I.x,y:I.y+gO};W.add(E(I.x,I.y)),$.push({id:re.id,type:"agentNode",position:I,data:{agent:re,timeline:s[re.id]||[]},draggable:!0,selectable:!0})}return $},[u,s]),x=v.useMemo(()=>{const C=bO(),X=C[Fa]||{x:0,y:0};return u.map(($,W)=>{const E=$.name||$.id,ne=Math.floor(W/Mn),re=W%Mn,ie=-((Math.min(u.length-ne*Mn,Mn)-1)*_o)/2,J=C[E]||{x:ie+re*_o,y:140+ne*gO},z=J.x+Kg/2-X.x,B=J.y+Jg/2-X.y;let I,fe;return Math.abs(B)>Math.abs(z)?(I=B>0?"bottom":"top",fe=B>0?"top":"bottom"):(I=z>0?"right":"left",fe=z>0?"left":"right"),{id:`e-${Fa}-${$.id}`,source:Fa,target:$.id,sourceHandle:I,targetHandle:fe,type:"default",animated:$.status==="running"}})},[u]),[g,b,S]=gj(p),[Q,k,T]=bj(x),j=v.useRef(new Set);v.useEffect(()=>{b(C=>{const X=new Map(C.map($=>[$.id,$]));return new Set(p.map($=>$.id)),p.map($=>{const W=X.get($.id);return W?{...W,data:$.data}:$})})},[p,b]),v.useEffect(()=>{k(x)},[x,k]),v.useEffect(()=>{const C=new Set(u.map($=>$.id)),X=u.length>0&&[...C].some($=>!j.current.has($));j.current=C,O===0&&u.length>0?setTimeout(()=>d({padding:.3,maxZoom:1.2,duration:0}),50):X&&setTimeout(()=>d({padding:.3,maxZoom:1.2,duration:300}),100),m(u.length)},[u.length,u,O,d]);const P=v.useCallback((C,X)=>{X.id!==Fa&&l(X.id)},[l]),N=v.useCallback(()=>{o()},[o]),A=v.useCallback((C,X)=>{const $=g.find(E=>E.id===Fa);if(!$)return;const W=$.position;k(E=>E.map(ne=>{const re=ne.source===X.id,xe=ne.target===X.id;if(!re&&!xe)return ne;const ie=X.position,J=ie.x+Kg/2-W.x,z=ie.y+Jg/2-W.y;let B,I;return Math.abs(z)>Math.abs(J)?(B=z>0?"bottom":"top",I=z>0?"top":"bottom"):(B=J>0?"right":"left",I=J>0?"left":"right"),{...ne,sourceHandle:B,targetHandle:I}}))},[g,k]),U=v.useCallback((C,X)=>{const $=u.find(ne=>ne.id===X.id),W=X.id===Fa?Fa:($==null?void 0:$.name)||X.id,E=bO();E[W]=X.position,HP(E)},[u]);return i.jsx(vj,{nodes:g,edges:Q,nodeTypes:BP,onNodesChange:S,onEdgesChange:T,onNodeClick:P,onPaneClick:N,onNodeDrag:A,onNodeDragStop:U,defaultViewport:{x:0,y:0,zoom:1.2},proOptions:{hideAttribution:!0},minZoom:.2,maxZoom:1.5,className:"bg-surface-2",children:i.jsx(yj,{color:"rgba(97,175,239,0.03)",gap:24,size:1})})}function KP({onPlanner:t,onSpawn:n}){return i.jsx("div",{className:"w-full h-full flex items-center justify-center",children:i.jsxs("div",{className:"max-w-2xl w-full text-center space-y-10 px-8",children:[i.jsxs("div",{className:"relative mx-auto w-20 h-20",children:[i.jsx("div",{className:"absolute inset-0 rounded-full bg-accent/8 animate-pulse"}),i.jsx("div",{className:"absolute inset-1 rounded-full bg-surface-3 border border-border-subtle flex items-center justify-center shadow-lg shadow-accent/5",children:i.jsx("img",{src:"/favicon.png",alt:"Groove",className:"h-10 w-10 rounded-full"})})]}),i.jsxs("div",{className:"space-y-3",children:[i.jsx("h1",{className:"text-3xl font-bold text-text-0 font-sans tracking-tight",children:"Welcome to Groove"}),i.jsx("p",{className:"text-base text-text-2 font-sans max-w-md mx-auto leading-relaxed",children:"Your mission control for AI agents. Spawn, orchestrate, and ship faster than ever."})]}),i.jsxs("div",{className:"space-y-3 max-w-xl mx-auto",children:[i.jsxs("button",{onClick:t,className:"w-full flex items-center gap-4 p-5 rounded-lg border border-accent/25 bg-gradient-to-r from-accent/8 to-accent/3 hover:from-accent/14 hover:to-accent/6 hover:border-accent/40 transition-all cursor-pointer group text-left",children:[i.jsx("div",{className:"w-12 h-12 rounded-lg bg-accent/20 flex items-center justify-center group-hover:scale-110 transition-transform flex-shrink-0",children:i.jsx(Na,{size:24,className:"text-accent"})}),i.jsxs("div",{className:"flex-1 min-w-0",children:[i.jsx("div",{className:"text-base font-semibold text-text-0 font-sans",children:"Start with a Planner"}),i.jsx("div",{className:"text-sm text-text-2 font-sans mt-0.5",children:"Describe what you want to build and let AI plan the perfect team"})]}),i.jsx("div",{className:"text-accent text-xs font-semibold font-sans flex-shrink-0 opacity-60 group-hover:opacity-100 transition-opacity",children:"Recommended"})]}),i.jsxs("button",{onClick:n,className:"w-full flex items-center gap-3 p-4 rounded-lg border border-border bg-surface-1 hover:bg-surface-2 hover:border-border transition-all cursor-pointer group text-left",children:[i.jsx("div",{className:"w-10 h-10 rounded-lg bg-surface-4 flex items-center justify-center group-hover:scale-110 transition-transform flex-shrink-0",children:i.jsx(Fn,{size:20,className:"text-text-1"})}),i.jsxs("div",{className:"min-w-0",children:[i.jsx("div",{className:"text-sm font-semibold text-text-0 font-sans",children:"Spawn Agent"}),i.jsx("div",{className:"text-xs text-text-3 font-sans mt-0.5",children:"Choose a role and configure"})]})]})]}),i.jsxs("p",{className:"text-xs text-text-4 font-sans",children:[i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+K"}),i.jsx("span",{className:"mx-1.5",children:"command palette"}),i.jsx("span",{className:"text-text-4 mx-1",children:"·"}),i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+N"}),i.jsx("span",{className:"mx-1.5",children:"spawn"}),i.jsx("span",{className:"text-text-4 mx-1",children:"·"}),i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+J"}),i.jsx("span",{className:"mx-1.5",children:"terminal"})]})]})})}const JP={backend:Mb,frontend:Df,fullstack:dn,testing:If,security:Fr};function eN(){var p;const t=D(x=>x.recommendedTeam),n=D(x=>x.launchRecommendedTeam);D(x=>x.checkRecommendedTeam);const[s,l]=v.useState(!1);if(!((p=t==null?void 0:t.agents)!=null&&p.length))return null;const o=t.agents,u=o.filter(x=>!x.phase||x.phase===1),d=o.filter(x=>x.phase===2);async function O(){l(!0);try{await n()}catch{}l(!1)}function m(){D.setState({recommendedTeam:null})}return i.jsx("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-50 w-full max-w-lg",children:i.jsxs("div",{className:"mx-4 rounded-lg border border-accent/30 bg-surface-2/95 backdrop-blur-md shadow-xl shadow-accent/5 overflow-hidden",children:[i.jsxs("div",{className:"px-4 py-3 border-b border-border-subtle flex items-center gap-2",children:[i.jsx(qb,{size:16,className:"text-accent"}),i.jsx("span",{className:"text-sm font-semibold text-text-0 font-sans flex-1",children:"Planner Recommends a Team"}),i.jsx("button",{onClick:m,className:"text-text-4 hover:text-text-1 cursor-pointer",children:i.jsx(Rt,{size:14})})]}),i.jsxs("div",{className:"px-4 py-3 space-y-2",children:[i.jsx("div",{className:"flex flex-wrap gap-2",children:u.map((x,g)=>{var S;const b=JP[x.role]||dn;return i.jsxs("div",{className:"flex items-center gap-1.5 px-2.5 py-1.5 rounded-md bg-surface-4 border border-border-subtle",children:[i.jsx(b,{size:12,className:"text-text-2"}),i.jsx("span",{className:"text-xs font-semibold text-text-0 font-sans capitalize",children:x.name||x.role}),((S=x.scope)==null?void 0:S.length)>0&&i.jsxs("span",{className:"text-2xs text-text-4 font-mono",children:[x.scope[0],x.scope.length>1?` +${x.scope.length-1}`:""]})]},g)})}),d.length>0&&i.jsxs("div",{className:"flex items-center gap-1.5 text-2xs text-text-3 font-sans",children:[i.jsx(Fr,{size:10}),i.jsxs("span",{children:[d.length," QC agent",d.length>1?"s":""," will auto-spawn after builders complete"]})]})]}),i.jsx("div",{className:"px-4 py-3 border-t border-border-subtle",children:i.jsxs(je,{variant:"primary",size:"md",onClick:O,disabled:s,className:"w-full gap-2",children:[i.jsx(Na,{size:14}),s?"Launching...":`Launch ${u.length} Agent${u.length>1?"s":""}`]})})]})})}function e1(){const t=D(b=>b.agents),n=D(b=>b.activeTeamId),s=D(b=>b.openDetail),l=D(b=>b.spawnAgent),o=D(b=>b.selectAgent);D(b=>b.recommendedTeam);const u=D(b=>b.checkRecommendedTeam);v.useEffect(()=>{if(!t.some(Q=>Q.role==="planner"&&(Q.status==="running"||Q.status==="starting")))return;const S=setInterval(()=>u(),5e3);return()=>clearInterval(S)},[t,u]);async function d(){try{const b=await l({role:"planner"});b!=null&&b.id&&o(b.id)}catch{}}const O=t.filter(b=>b.teamId===n),m=D(b=>b.hydrated),[p,x]=v.useState(!0);v.useEffect(()=>{const b=setTimeout(()=>x(!1),1200);return()=>clearTimeout(b)},[]);const g=p||!m;return i.jsxs("div",{className:"flex flex-col h-full relative",children:[i.jsx(IP,{}),i.jsx("div",{className:"flex-1 min-h-0",children:g?i.jsxs("div",{className:le("flex flex-col items-center justify-center h-full transition-opacity duration-500",!p&&m?"opacity-0":"opacity-100"),children:[i.jsxs("div",{className:"relative w-12 h-12 mb-5",children:[i.jsx("span",{className:"absolute inset-0 rounded-full border-2 border-accent/20 animate-ping",style:{animationDuration:"2s"}}),i.jsx("span",{className:"absolute inset-0 rounded-full border-2 border-transparent border-t-accent animate-spin",style:{animationDuration:"1s"}}),i.jsx("span",{className:"absolute inset-[6px] rounded-full bg-accent/8 flex items-center justify-center",children:i.jsx(Na,{size:16,className:"text-accent animate-pulse"})})]}),i.jsx("p",{className:"text-sm font-medium text-text-1 font-sans animate-pulse",children:"Connecting to agents"}),i.jsx("p",{className:"text-xs text-text-3 font-sans mt-1",children:"Syncing with daemon..."})]}):O.length===0?i.jsx(KP,{onPlanner:d,onSpawn:()=>s({type:"spawn"})}):i.jsx(pj,{children:i.jsx(FP,{})})}),i.jsx(eN,{})]})}var tN=v.createContext(void 0);function Jf(t){const n=v.useContext(tN);return t||n||"ltr"}function aN(t,[n,s]){return Math.min(s,Math.max(n,t))}function nN(t,n){return v.useReducer((s,l)=>n[s][l]??s,t)}var eh="ScrollArea",[Hb]=Ns(eh),[sN,ca]=Hb(eh),Ib=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,type:l="hover",dir:o,scrollHideDelay:u=600,...d}=t,[O,m]=v.useState(null),[p,x]=v.useState(null),[g,b]=v.useState(null),[S,Q]=v.useState(null),[k,T]=v.useState(null),[j,P]=v.useState(0),[N,A]=v.useState(0),[U,C]=v.useState(!1),[X,$]=v.useState(!1),W=it(n,ne=>m(ne)),E=Jf(o);return i.jsx(sN,{scope:s,type:l,dir:E,scrollHideDelay:u,scrollArea:O,viewport:p,onViewportChange:x,content:g,onContentChange:b,scrollbarX:S,onScrollbarXChange:Q,scrollbarXEnabled:U,onScrollbarXEnabledChange:C,scrollbarY:k,onScrollbarYChange:T,scrollbarYEnabled:X,onScrollbarYEnabledChange:$,onCornerWidthChange:P,onCornerHeightChange:A,children:i.jsx(Be.div,{dir:E,...d,ref:W,style:{position:"relative","--radix-scroll-area-corner-width":j+"px","--radix-scroll-area-corner-height":N+"px",...t.style}})})});Ib.displayName=eh;var Fb="ScrollAreaViewport",Kb=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,children:l,nonce:o,...u}=t,d=ca(Fb,s),O=v.useRef(null),m=it(n,O,d.onViewportChange);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),i.jsx(Be.div,{"data-radix-scroll-area-viewport":"",...u,ref:m,style:{overflowX:d.scrollbarXEnabled?"scroll":"hidden",overflowY:d.scrollbarYEnabled?"scroll":"hidden",...t.style},children:i.jsx("div",{ref:d.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});Kb.displayName=Fb;var za="ScrollAreaScrollbar",Jb=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),{onScrollbarXEnabledChange:u,onScrollbarYEnabledChange:d}=o,O=t.orientation==="horizontal";return v.useEffect(()=>(O?u(!0):d(!0),()=>{O?u(!1):d(!1)}),[O,u,d]),o.type==="hover"?i.jsx(lN,{...l,ref:n,forceMount:s}):o.type==="scroll"?i.jsx(rN,{...l,ref:n,forceMount:s}):o.type==="auto"?i.jsx(ev,{...l,ref:n,forceMount:s}):o.type==="always"?i.jsx(th,{...l,ref:n}):null});Jb.displayName=za;var lN=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),[u,d]=v.useState(!1);return v.useEffect(()=>{const O=o.scrollArea;let m=0;if(O){const p=()=>{window.clearTimeout(m),d(!0)},x=()=>{m=window.setTimeout(()=>d(!1),o.scrollHideDelay)};return O.addEventListener("pointerenter",p),O.addEventListener("pointerleave",x),()=>{window.clearTimeout(m),O.removeEventListener("pointerenter",p),O.removeEventListener("pointerleave",x)}}},[o.scrollArea,o.scrollHideDelay]),i.jsx(ba,{present:s||u,children:i.jsx(ev,{"data-state":u?"visible":"hidden",...l,ref:n})})}),rN=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),u=t.orientation==="horizontal",d=qc(()=>m("SCROLL_END"),100),[O,m]=nN("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return v.useEffect(()=>{if(O==="idle"){const p=window.setTimeout(()=>m("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(p)}},[O,o.scrollHideDelay,m]),v.useEffect(()=>{const p=o.viewport,x=u?"scrollLeft":"scrollTop";if(p){let g=p[x];const b=()=>{const S=p[x];g!==S&&(m("SCROLL"),d()),g=S};return p.addEventListener("scroll",b),()=>p.removeEventListener("scroll",b)}},[o.viewport,u,m,d]),i.jsx(ba,{present:s||O!=="hidden",children:i.jsx(th,{"data-state":O==="hidden"?"hidden":"visible",...l,ref:n,onPointerEnter:Ee(t.onPointerEnter,()=>m("POINTER_ENTER")),onPointerLeave:Ee(t.onPointerLeave,()=>m("POINTER_LEAVE"))})})}),ev=v.forwardRef((t,n)=>{const s=ca(za,t.__scopeScrollArea),{forceMount:l,...o}=t,[u,d]=v.useState(!1),O=t.orientation==="horizontal",m=qc(()=>{if(s.viewport){const p=s.viewport.offsetWidth<s.viewport.scrollWidth,x=s.viewport.offsetHeight<s.viewport.scrollHeight;d(O?p:x)}},10);return zl(s.viewport,m),zl(s.content,m),i.jsx(ba,{present:l||u,children:i.jsx(th,{"data-state":u?"visible":"hidden",...o,ref:n})})}),th=v.forwardRef((t,n)=>{const{orientation:s="vertical",...l}=t,o=ca(za,t.__scopeScrollArea),u=v.useRef(null),d=v.useRef(0),[O,m]=v.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),p=lv(O.viewport,O.content),x={...l,sizes:O,onSizesChange:m,hasThumb:p>0&&p<1,onThumbChange:b=>u.current=b,onThumbPointerUp:()=>d.current=0,onThumbPointerDown:b=>d.current=b};function g(b,S){return ON(b,d.current,O,S)}return s==="horizontal"?i.jsx(iN,{...x,ref:n,onThumbPositionChange:()=>{if(o.viewport&&u.current){const b=o.viewport.scrollLeft,S=t1(b,O,o.dir);u.current.style.transform=`translate3d(${S}px, 0, 0)`}},onWheelScroll:b=>{o.viewport&&(o.viewport.scrollLeft=b)},onDragScroll:b=>{o.viewport&&(o.viewport.scrollLeft=g(b,o.dir))}}):s==="vertical"?i.jsx(oN,{...x,ref:n,onThumbPositionChange:()=>{if(o.viewport&&u.current){const b=o.viewport.scrollTop,S=t1(b,O);u.current.style.transform=`translate3d(0, ${S}px, 0)`}},onWheelScroll:b=>{o.viewport&&(o.viewport.scrollTop=b)},onDragScroll:b=>{o.viewport&&(o.viewport.scrollTop=g(b))}}):null}),iN=v.forwardRef((t,n)=>{const{sizes:s,onSizesChange:l,...o}=t,u=ca(za,t.__scopeScrollArea),[d,O]=v.useState(),m=v.useRef(null),p=it(n,m,u.onScrollbarXChange);return v.useEffect(()=>{m.current&&O(getComputedStyle(m.current))},[m]),i.jsx(av,{"data-orientation":"horizontal",...o,ref:p,sizes:s,style:{bottom:0,left:u.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:u.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Ec(s)+"px",...t.style},onThumbPointerDown:x=>t.onThumbPointerDown(x.x),onDragScroll:x=>t.onDragScroll(x.x),onWheelScroll:(x,g)=>{if(u.viewport){const b=u.viewport.scrollLeft+x.deltaX;t.onWheelScroll(b),iv(b,g)&&x.preventDefault()}},onResize:()=>{m.current&&u.viewport&&d&&l({content:u.viewport.scrollWidth,viewport:u.viewport.offsetWidth,scrollbar:{size:m.current.clientWidth,paddingStart:Oc(d.paddingLeft),paddingEnd:Oc(d.paddingRight)}})}})}),oN=v.forwardRef((t,n)=>{const{sizes:s,onSizesChange:l,...o}=t,u=ca(za,t.__scopeScrollArea),[d,O]=v.useState(),m=v.useRef(null),p=it(n,m,u.onScrollbarYChange);return v.useEffect(()=>{m.current&&O(getComputedStyle(m.current))},[m]),i.jsx(av,{"data-orientation":"vertical",...o,ref:p,sizes:s,style:{top:0,right:u.dir==="ltr"?0:void 0,left:u.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Ec(s)+"px",...t.style},onThumbPointerDown:x=>t.onThumbPointerDown(x.y),onDragScroll:x=>t.onDragScroll(x.y),onWheelScroll:(x,g)=>{if(u.viewport){const b=u.viewport.scrollTop+x.deltaY;t.onWheelScroll(b),iv(b,g)&&x.preventDefault()}},onResize:()=>{m.current&&u.viewport&&d&&l({content:u.viewport.scrollHeight,viewport:u.viewport.offsetHeight,scrollbar:{size:m.current.clientHeight,paddingStart:Oc(d.paddingTop),paddingEnd:Oc(d.paddingBottom)}})}})}),[cN,tv]=Hb(za),av=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,sizes:l,hasThumb:o,onThumbChange:u,onThumbPointerUp:d,onThumbPointerDown:O,onThumbPositionChange:m,onDragScroll:p,onWheelScroll:x,onResize:g,...b}=t,S=ca(za,s),[Q,k]=v.useState(null),T=it(n,W=>k(W)),j=v.useRef(null),P=v.useRef(""),N=S.viewport,A=l.content-l.viewport,U=zt(x),C=zt(m),X=qc(g,10);function $(W){if(j.current){const E=W.clientX-j.current.left,ne=W.clientY-j.current.top;p({x:E,y:ne})}}return v.useEffect(()=>{const W=E=>{const ne=E.target;(Q==null?void 0:Q.contains(ne))&&U(E,A)};return document.addEventListener("wheel",W,{passive:!1}),()=>document.removeEventListener("wheel",W,{passive:!1})},[N,Q,A,U]),v.useEffect(C,[l,C]),zl(Q,X),zl(S.content,X),i.jsx(cN,{scope:s,scrollbar:Q,hasThumb:o,onThumbChange:zt(u),onThumbPointerUp:zt(d),onThumbPositionChange:C,onThumbPointerDown:zt(O),children:i.jsx(Be.div,{...b,ref:T,style:{position:"absolute",...b.style},onPointerDown:Ee(t.onPointerDown,W=>{W.button===0&&(W.target.setPointerCapture(W.pointerId),j.current=Q.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),$(W))}),onPointerMove:Ee(t.onPointerMove,$),onPointerUp:Ee(t.onPointerUp,W=>{const E=W.target;E.hasPointerCapture(W.pointerId)&&E.releasePointerCapture(W.pointerId),document.body.style.webkitUserSelect=P.current,S.viewport&&(S.viewport.style.scrollBehavior=""),j.current=null})})})}),dc="ScrollAreaThumb",nv=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=tv(dc,t.__scopeScrollArea);return i.jsx(ba,{present:s||o.hasThumb,children:i.jsx(uN,{ref:n,...l})})}),uN=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,style:l,...o}=t,u=ca(dc,s),d=tv(dc,s),{onThumbPositionChange:O}=d,m=it(n,g=>d.onThumbChange(g)),p=v.useRef(void 0),x=qc(()=>{p.current&&(p.current(),p.current=void 0)},100);return v.useEffect(()=>{const g=u.viewport;if(g){const b=()=>{if(x(),!p.current){const S=fN(g,O);p.current=S,O()}};return O(),g.addEventListener("scroll",b),()=>g.removeEventListener("scroll",b)}},[u.viewport,x,O]),i.jsx(Be.div,{"data-state":d.hasThumb?"visible":"hidden",...o,ref:m,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:Ee(t.onPointerDownCapture,g=>{const S=g.target.getBoundingClientRect(),Q=g.clientX-S.left,k=g.clientY-S.top;d.onThumbPointerDown({x:Q,y:k})}),onPointerUp:Ee(t.onPointerUp,d.onThumbPointerUp)})});nv.displayName=dc;var ah="ScrollAreaCorner",sv=v.forwardRef((t,n)=>{const s=ca(ah,t.__scopeScrollArea),l=!!(s.scrollbarX&&s.scrollbarY);return s.type!=="scroll"&&l?i.jsx(dN,{...t,ref:n}):null});sv.displayName=ah;var dN=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,...l}=t,o=ca(ah,s),[u,d]=v.useState(0),[O,m]=v.useState(0),p=!!(u&&O);return zl(o.scrollbarX,()=>{var g;const x=((g=o.scrollbarX)==null?void 0:g.offsetHeight)||0;o.onCornerHeightChange(x),m(x)}),zl(o.scrollbarY,()=>{var g;const x=((g=o.scrollbarY)==null?void 0:g.offsetWidth)||0;o.onCornerWidthChange(x),d(x)}),p?i.jsx(Be.div,{...l,ref:n,style:{width:u,height:O,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...t.style}}):null});function Oc(t){return t?parseInt(t,10):0}function lv(t,n){const s=t/n;return isNaN(s)?0:s}function Ec(t){const n=lv(t.viewport,t.content),s=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=(t.scrollbar.size-s)*n;return Math.max(l,18)}function ON(t,n,s,l="ltr"){const o=Ec(s),u=o/2,d=n||u,O=o-d,m=s.scrollbar.paddingStart+d,p=s.scrollbar.size-s.scrollbar.paddingEnd-O,x=s.content-s.viewport,g=l==="ltr"?[0,x]:[x*-1,0];return rv([m,p],g)(t)}function t1(t,n,s="ltr"){const l=Ec(n),o=n.scrollbar.paddingStart+n.scrollbar.paddingEnd,u=n.scrollbar.size-o,d=n.content-n.viewport,O=u-l,m=s==="ltr"?[0,d]:[d*-1,0],p=aN(t,m);return rv([0,d],[0,O])(p)}function rv(t,n){return s=>{if(t[0]===t[1]||n[0]===n[1])return n[0];const l=(n[1]-n[0])/(t[1]-t[0]);return n[0]+l*(s-t[0])}}function iv(t,n){return t>0&&t<n}var fN=(t,n=()=>{})=>{let s={left:t.scrollLeft,top:t.scrollTop},l=0;return(function o(){const u={left:t.scrollLeft,top:t.scrollTop},d=s.left!==u.left,O=s.top!==u.top;(d||O)&&n(),s=u,l=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(l)};function qc(t,n){const s=zt(t),l=v.useRef(0);return v.useEffect(()=>()=>window.clearTimeout(l.current),[]),v.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(s,n)},[s,n])}function zl(t,n){const s=zt(n);ln(()=>{let l=0;if(t){const o=new ResizeObserver(()=>{cancelAnimationFrame(l),l=window.requestAnimationFrame(s)});return o.observe(t),()=>{window.cancelAnimationFrame(l),o.unobserve(t)}}},[t,s])}var hN=Ib,mN=Kb,a1=Jb,n1=nv,pN=sv;function Ht({children:t,className:n,...s}){return i.jsxs(hN,{className:le("overflow-hidden",n),...s,children:[i.jsx(mN,{className:"h-full w-full rounded-[inherit]",children:t}),i.jsx(a1,{orientation:"vertical",className:"flex touch-none select-none p-0.5 transition-colors w-2",children:i.jsx(n1,{className:"relative flex-1 rounded-full bg-surface-5 hover:bg-surface-6"})}),i.jsx(a1,{orientation:"horizontal",className:"flex touch-none select-none flex-col p-0.5 transition-colors h-2",children:i.jsx(n1,{className:"relative flex-1 rounded-full bg-surface-5 hover:bg-surface-6"})}),i.jsx(pN,{})]})}const xN={js:"text-warning",jsx:"text-warning",ts:"text-info",tsx:"text-info",css:"text-info",html:"text-orange",json:"text-warning",md:"text-text-2",py:"text-success",rs:"text-orange",go:"text-accent",sh:"text-success",yaml:"text-danger",yml:"text-danger",sql:"text-purple",xml:"text-orange",svg:"text-warning"};function gN(t){var s;const n=(s=t.split(".").pop())==null?void 0:s.toLowerCase();return xN[n]||"text-text-3"}function bN({x:t,y:n,items:s,onClose:l}){const o=v.useRef(null);return v.useEffect(()=>{function u(d){o.current&&!o.current.contains(d.target)&&l()}return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[l]),i.jsx("div",{ref:o,className:"fixed z-50 min-w-[160px] py-1 bg-surface-2 border border-border rounded-lg shadow-xl",style:{left:t,top:n},children:s.map((u,d)=>u.separator?i.jsx("div",{className:"h-px bg-border-subtle my-1"},d):i.jsxs("button",{onClick:()=>{u.action(),l()},className:le("w-full flex items-center gap-2.5 px-3 py-1.5 text-xs font-sans text-left cursor-pointer transition-colors",u.danger?"text-danger hover:bg-danger/10":"text-text-1 hover:bg-surface-5"),children:[u.icon&&i.jsx(u.icon,{size:12,className:u.danger?"text-danger":"text-text-3"}),u.label]},d))})}function fc({defaultValue:t="",placeholder:n,onSubmit:s,onCancel:l,depth:o=0}){const[u,d]=v.useState(t),O=v.useRef(null);v.useEffect(()=>{var p,x;(p=O.current)==null||p.focus(),t&&((x=O.current)==null||x.select())},[t]);function m(p){if(p.key==="Enter"){const x=u.trim();x&&s(x)}p.key==="Escape"&&l()}return i.jsx("div",{className:"flex items-center py-0.5",style:{paddingLeft:o*16+8},children:i.jsx("input",{ref:O,value:u,onChange:p=>d(p.target.value),onKeyDown:m,onBlur:l,placeholder:n,className:"w-full h-5 px-1.5 text-xs bg-surface-0 border border-accent rounded text-text-0 font-sans focus:outline-none"})})}function ov({entry:t,depth:n=0,activePath:s,onFileClick:l,onDirToggle:o,expanded:u,onContextMenu:d}){const O=t.type==="dir",m=s===t.path,p=u.has(t.path),x=n*16+8;function g(b){b.preventDefault(),b.stopPropagation(),d(b,t)}return i.jsxs("button",{onClick:()=>O?o(t.path):l(t.path),onContextMenu:g,className:le("w-full flex items-center gap-1.5 py-1 text-xs font-sans cursor-pointer","hover:bg-surface-5 transition-colors text-left select-none",m&&"bg-accent/10 text-text-0",!m&&"text-text-1"),style:{paddingLeft:x},children:[O?i.jsxs(i.Fragment,{children:[p?i.jsx(In,{size:12,className:"text-text-4 flex-shrink-0"}):i.jsx(ii,{size:12,className:"text-text-4 flex-shrink-0"}),p?i.jsx(Hr,{size:14,className:"text-accent flex-shrink-0"}):i.jsx(iT,{size:14,className:"text-text-3 flex-shrink-0"})]}):i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"w-3"}),i.jsx(K5,{size:14,className:le("flex-shrink-0",gN(t.name))})]}),i.jsx("span",{className:"truncate",children:t.name})]})}function cv({dirPath:t,depth:n,activePath:s,onFileClick:l,expanded:o,onDirToggle:u,treeCache:d,fetchTreeDir:O,onContextMenu:m,inlineInput:p}){const x=d[t]||[];return v.useEffect(()=>{o.has(t)&&!d[t]&&O(t)},[o,t,d,O]),o.has(t)?i.jsxs(i.Fragment,{children:[(p==null?void 0:p.parentPath)===t&&i.jsx(fc,{placeholder:p.type==="file"?"filename.ext":"folder-name",onSubmit:p.onSubmit,onCancel:p.onCancel,depth:n}),x.map(g=>i.jsxs("div",{children:[(p==null?void 0:p.renamePath)===g.path?i.jsx(fc,{defaultValue:g.name,onSubmit:p.onSubmit,onCancel:p.onCancel,depth:n}):i.jsx(ov,{entry:g,depth:n,activePath:s,onFileClick:l,onDirToggle:u,expanded:o,onContextMenu:m}),g.type==="dir"&&i.jsx(cv,{dirPath:g.path,depth:n+1,activePath:s,onFileClick:l,expanded:o,onDirToggle:u,treeCache:d,fetchTreeDir:O,onContextMenu:m,inlineInput:p})]},g.path))]}):null}function vN({rootDir:t}){const n=D($=>$.editorTreeCache),s=D($=>$.editorActiveFile),l=D($=>$.openFile),o=D($=>$.fetchTreeDir),u=D($=>$.addToast),[d,O]=v.useState(new Set([""])),[m,p]=v.useState(""),[x,g]=v.useState(null),[b,S]=v.useState(null);v.useEffect(()=>{o("")},[o,t]);function Q($){O(W=>{const E=new Set(W);return E.has($)?E.delete($):E.add($),E})}function k($,W){g({x:$.clientX,y:$.clientY,entry:W})}function T($){$.preventDefault(),g({x:$.clientX,y:$.clientY,entry:{type:"dir",path:"",name:"root"}})}function j($){const W=$.split("/");return W.pop(),W.join("/")}async function P($){O(W=>new Set([...W,$])),S({type:"file",parentPath:$,onSubmit:async W=>{const E=$?`${$}/${W}`:W;try{await ee.post("/files/create",{path:E,content:""}),o($),l(E),u("success",`Created ${W}`)}catch(ne){u("error","Create failed",ne.message)}S(null)},onCancel:()=>S(null)})}async function N($){O(W=>new Set([...W,$])),S({type:"folder",parentPath:$,onSubmit:async W=>{const E=$?`${$}/${W}`:W;try{await ee.post("/files/mkdir",{path:E}),o($),O(ne=>new Set([...ne,E])),u("success",`Created ${W}/`)}catch(ne){u("error","Create folder failed",ne.message)}S(null)},onCancel:()=>S(null)})}async function A($){S({type:"rename",renamePath:$.path,onSubmit:async W=>{const E=j($.path),ne=E?`${E}/${W}`:W;try{await ee.post("/files/rename",{oldPath:$.path,newPath:ne}),o(E),u("success",`Renamed to ${W}`)}catch(re){u("error","Rename failed",re.message)}S(null)},onCancel:()=>S(null)})}async function U($){const W=$.type==="dir"?`folder "${$.name}" and all contents`:`"${$.name}"`;if(window.confirm(`Delete ${W}?`))try{await ee.delete(`/files/delete?path=${encodeURIComponent($.path)}`),o(j($.path)),u("success",`Deleted ${$.name}`)}catch(E){u("error","Delete failed",E.message)}}function C($){const W=$.type==="dir",E=[];return W&&(E.push({icon:mO,label:"New File",action:()=>P($.path)}),E.push({icon:pO,label:"New Folder",action:()=>N($.path)})),$.name!=="root"?(E.length>0&&E.push({separator:!0}),E.push({icon:Cc,label:"Rename",action:()=>A($)}),E.push({icon:Xc,label:"Delete",danger:!0,action:()=>U($)})):(E.length=0,E.push({icon:mO,label:"New File",action:()=>P("")}),E.push({icon:pO,label:"New Folder",action:()=>N("")})),E}const X=n[""]||[];return i.jsxs("div",{className:"flex flex-col h-full bg-surface-1",onContextMenu:T,children:[i.jsxs("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b border-border-subtle",children:[i.jsxs("div",{className:"flex-1 relative",children:[i.jsx(ql,{size:12,className:"absolute left-2 top-1/2 -translate-y-1/2 text-text-4"}),i.jsx("input",{value:m,onChange:$=>p($.target.value),placeholder:"Filter...",className:"w-full h-6 pl-6 pr-2 text-xs bg-surface-0 border border-border-subtle rounded text-text-1 placeholder:text-text-4 focus:outline-none focus:border-accent font-sans"})]}),i.jsx("button",{onClick:()=>P(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"New file",children:i.jsx(mO,{size:12})}),i.jsx("button",{onClick:()=>N(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"New folder",children:i.jsx(pO,{size:12})}),i.jsx("button",{onClick:()=>o(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"Refresh",children:i.jsx(es,{size:12})})]}),i.jsx(Ht,{className:"flex-1",children:i.jsxs("div",{className:"py-1",children:[(b==null?void 0:b.parentPath)===""&&i.jsx(fc,{placeholder:b.type==="file"?"filename.ext":"folder-name",onSubmit:b.onSubmit,onCancel:b.onCancel,depth:0}),X.filter($=>!m||$.name.toLowerCase().includes(m.toLowerCase())).map($=>i.jsxs("div",{children:[(b==null?void 0:b.renamePath)===$.path?i.jsx(fc,{defaultValue:$.name,onSubmit:b.onSubmit,onCancel:b.onCancel,depth:0}):i.jsx(ov,{entry:$,depth:0,activePath:s,onFileClick:l,onDirToggle:Q,expanded:d,onContextMenu:k}),$.type==="dir"&&i.jsx(cv,{dirPath:$.path,depth:1,activePath:s,onFileClick:l,expanded:d,onDirToggle:Q,treeCache:n,fetchTreeDir:o,onContextMenu:k,inlineInput:b})]},$.path))]})}),x&&i.jsx(bN,{x:x.x,y:x.y,items:C(x.entry),onClose:()=>g(null)})]})}function yN(){const t=D(u=>u.editorOpenTabs),n=D(u=>u.editorActiveFile),s=D(u=>u.editorFiles),l=D(u=>u.setActiveFile),o=D(u=>u.closeFile);return t.length===0?null:i.jsx("div",{className:"flex items-center h-8 bg-surface-3 border-b border-border overflow-x-auto flex-shrink-0",children:t.map(u=>{const d=u===n,O=s[u],m=O&&O.content!==O.originalContent,p=u.split("/").pop();return i.jsxs("div",{className:le("flex items-center gap-1.5 h-full px-3 text-xs font-sans cursor-pointer select-none","border-r border-border-subtle","transition-colors duration-75",d?"bg-surface-2 text-text-0 border-b-2 border-b-accent":"bg-surface-3 text-text-3 hover:text-text-1 hover:bg-surface-4"),onClick:()=>l(u),children:[i.jsx("span",{className:"truncate max-w-[120px]",children:p}),m&&i.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-warning flex-shrink-0"}),i.jsx("button",{onClick:x=>{x.stopPropagation(),o(u)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-text-1 transition-colors cursor-pointer ml-0.5",children:i.jsx(Rt,{size:12})})]},u)})})}var s1={};class hc{constructor(n,s,l,o,u,d,O,m,p,x=0,g){this.p=n,this.stack=s,this.state=l,this.reducePos=o,this.pos=u,this.score=d,this.buffer=O,this.bufferBase=m,this.curContext=p,this.lookAhead=x,this.parent=g}toString(){return`[${this.stack.filter((n,s)=>s%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(n,s,l=0){let o=n.parser.context;return new hc(n,[],s,l,l,0,[],0,o?new l1(o,o.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(n,s){this.stack.push(this.state,s,this.bufferBase+this.buffer.length),this.state=n}reduce(n){var s;let l=n>>19,o=n&65535,{parser:u}=this.p,d=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),O=u.dynamicPrecedence(o);if(O&&(this.score+=O),l==0){this.pushState(u.getGoto(this.state,o,!0),this.reducePos),o<u.minRepeatTerm&&this.storeNode(o,this.reducePos,this.reducePos,d?8:4,!0),this.reduceContext(o,this.reducePos);return}let m=this.stack.length-(l-1)*3-(n&262144?6:0),p=m?this.stack[m-2]:this.p.ranges[0].from,x=this.reducePos-p;x>=2e3&&!(!((s=this.p.parser.nodeSet.types[o])===null||s===void 0)&&s.isAnonymous)&&(p==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=x):this.p.lastBigReductionSize<x&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=p,this.p.lastBigReductionSize=x));let g=m?this.stack[m-1]:0,b=this.bufferBase+this.buffer.length-g;if(o<u.minRepeatTerm||n&131072){let S=u.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(o,p,S,b+4,!0)}if(n&262144)this.state=this.stack[m];else{let S=this.stack[m-3];this.state=u.getGoto(S,o,!0)}for(;this.stack.length>m;)this.stack.pop();this.reduceContext(o,p)}storeNode(n,s,l,o=4,u=!1){if(n==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let d=this,O=this.buffer.length;if(O==0&&d.parent&&(O=d.bufferBase-d.parent.bufferBase,d=d.parent),O>0&&d.buffer[O-4]==0&&d.buffer[O-1]>-1){if(s==l)return;if(d.buffer[O-2]>=s){d.buffer[O-2]=l;return}}}if(!u||this.pos==l)this.buffer.push(n,s,l,o);else{let d=this.buffer.length;if(d>0&&(this.buffer[d-4]!=0||this.buffer[d-1]<0)){let O=!1;for(let m=d;m>0&&this.buffer[m-2]>l;m-=4)if(this.buffer[m-1]>=0){O=!0;break}if(O)for(;d>0&&this.buffer[d-2]>l;)this.buffer[d]=this.buffer[d-4],this.buffer[d+1]=this.buffer[d-3],this.buffer[d+2]=this.buffer[d-2],this.buffer[d+3]=this.buffer[d-1],d-=4,o>4&&(o-=4)}this.buffer[d]=n,this.buffer[d+1]=s,this.buffer[d+2]=l,this.buffer[d+3]=o}}shift(n,s,l,o){if(n&131072)this.pushState(n&65535,this.pos);else if((n&262144)==0){let u=n,{parser:d}=this.p;this.pos=o;let O=d.stateFlag(u,1);!O&&(o>l||s<=d.maxNode)&&(this.reducePos=o),this.pushState(u,O?l:Math.min(l,this.reducePos)),this.shiftContext(s,l),s<=d.maxNode&&this.buffer.push(s,l,o,4)}else this.pos=o,this.shiftContext(s,l),s<=this.p.parser.maxNode&&this.buffer.push(s,l,o,4)}apply(n,s,l,o){n&65536?this.reduce(n):this.shift(n,s,l,o)}useNode(n,s){let l=this.p.reused.length-1;(l<0||this.p.reused[l]!=n)&&(this.p.reused.push(n),l++);let o=this.pos;this.reducePos=this.pos=o+n.length,this.pushState(s,o),this.buffer.push(l,o,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,n,this,this.p.stream.reset(this.pos-n.length)))}split(){let n=this,s=n.buffer.length;for(;s>0&&n.buffer[s-2]>n.reducePos;)s-=4;let l=n.buffer.slice(s),o=n.bufferBase+s;for(;n&&o==n.bufferBase;)n=n.parent;return new hc(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,l,o,this.curContext,this.lookAhead,n)}recoverByDelete(n,s){let l=n<=this.p.parser.maxNode;l&&this.storeNode(n,this.pos,s,4),this.storeNode(0,this.pos,s,l?8:4),this.pos=this.reducePos=s,this.score-=190}canShift(n){for(let s=new SN(this);;){let l=this.p.parser.stateSlot(s.state,4)||this.p.parser.hasAction(s.state,n);if(l==0)return!1;if((l&65536)==0)return!0;s.reduce(l)}}recoverByInsert(n){if(this.stack.length>=300)return[];let s=this.p.parser.nextStates(this.state);if(s.length>8||this.stack.length>=120){let o=[];for(let u=0,d;u<s.length;u+=2)(d=s[u+1])!=this.state&&this.p.parser.hasAction(d,n)&&o.push(s[u],d);if(this.stack.length<120)for(let u=0;o.length<8&&u<s.length;u+=2){let d=s[u+1];o.some((O,m)=>m&1&&O==d)||o.push(s[u],d)}s=o}let l=[];for(let o=0;o<s.length&&l.length<4;o+=2){let u=s[o+1];if(u==this.state)continue;let d=this.split();d.pushState(u,this.pos),d.storeNode(0,d.pos,d.pos,4,!0),d.shiftContext(s[o],this.pos),d.reducePos=this.pos,d.score-=200,l.push(d)}return l}forceReduce(){let{parser:n}=this.p,s=n.stateSlot(this.state,5);if((s&65536)==0)return!1;if(!n.validAction(this.state,s)){let l=s>>19,o=s&65535,u=this.stack.length-l*3;if(u<0||n.getGoto(this.stack[u],o,!1)<0){let d=this.findForcedReduction();if(d==null)return!1;s=d}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(s),!0}findForcedReduction(){let{parser:n}=this.p,s=[],l=(o,u)=>{if(!s.includes(o))return s.push(o),n.allActions(o,d=>{if(!(d&393216))if(d&65536){let O=(d>>19)-u;if(O>1){let m=d&65535,p=this.stack.length-O*3;if(p>=0&&n.getGoto(this.stack[p],m,!1)>=0)return O<<19|65536|m}}else{let O=l(d,u+1);if(O!=null)return O}})};return l(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:n}=this.p;return n.data[n.stateSlot(this.state,1)]==65535&&!n.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(n){if(this.state!=n.state||this.stack.length!=n.stack.length)return!1;for(let s=0;s<this.stack.length;s+=3)if(this.stack[s]!=n.stack[s])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(n){return this.p.parser.dialect.flags[n]}shiftContext(n,s){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,n,this,this.p.stream.reset(s)))}reduceContext(n,s){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,n,this,this.p.stream.reset(s)))}emitContext(){let n=this.buffer.length-1;(n<0||this.buffer[n]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let n=this.buffer.length-1;(n<0||this.buffer[n]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(n){if(n!=this.curContext.context){let s=new l1(this.curContext.tracker,n);s.hash!=this.curContext.hash&&this.emitContext(),this.curContext=s}}setLookAhead(n){return n<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=n,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class l1{constructor(n,s){this.tracker=n,this.context=s,this.hash=n.strict?n.hash(s):0}}class SN{constructor(n){this.start=n,this.state=n.state,this.stack=n.stack,this.base=this.stack.length}reduce(n){let s=n&65535,l=n>>19;l==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(l-1)*3;let o=this.start.p.parser.getGoto(this.stack[this.base-3],s,!0);this.state=o}}class mc{constructor(n,s,l){this.stack=n,this.pos=s,this.index=l,this.buffer=n.buffer,this.index==0&&this.maybeNext()}static create(n,s=n.bufferBase+n.buffer.length){return new mc(n,s,s-n.bufferBase)}maybeNext(){let n=this.stack.parent;n!=null&&(this.index=this.stack.bufferBase-n.bufferBase,this.stack=n,this.buffer=n.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new mc(this.stack,this.pos,this.index)}}function Mr(t,n=Uint16Array){if(typeof t!="string")return t;let s=null;for(let l=0,o=0;l<t.length;){let u=0;for(;;){let d=t.charCodeAt(l++),O=!1;if(d==126){u=65535;break}d>=92&&d--,d>=34&&d--;let m=d-32;if(m>=46&&(m-=46,O=!0),u+=m,O)break;u*=46}s?s[o++]=u:s=new n(u)}return s}class Wo{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const r1=new Wo;class QN{constructor(n,s){this.input=n,this.ranges=s,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=r1,this.rangeIndex=0,this.pos=this.chunkPos=s[0].from,this.range=s[0],this.end=s[s.length-1].to,this.readNext()}resolveOffset(n,s){let l=this.range,o=this.rangeIndex,u=this.pos+n;for(;u<l.from;){if(!o)return null;let d=this.ranges[--o];u-=l.from-d.to,l=d}for(;s<0?u>l.to:u>=l.to;){if(o==this.ranges.length-1)return null;let d=this.ranges[++o];u+=d.from-l.to,l=d}return u}clipPos(n){if(n>=this.range.from&&n<this.range.to)return n;for(let s of this.ranges)if(s.to>n)return Math.max(n,s.from);return this.end}peek(n){let s=this.chunkOff+n,l,o;if(s>=0&&s<this.chunk.length)l=this.pos+n,o=this.chunk.charCodeAt(s);else{let u=this.resolveOffset(n,1);if(u==null)return-1;if(l=u,l>=this.chunk2Pos&&l<this.chunk2Pos+this.chunk2.length)o=this.chunk2.charCodeAt(l-this.chunk2Pos);else{let d=this.rangeIndex,O=this.range;for(;O.to<=l;)O=this.ranges[++d];this.chunk2=this.input.chunk(this.chunk2Pos=l),l+this.chunk2.length>O.to&&(this.chunk2=this.chunk2.slice(0,O.to-l)),o=this.chunk2.charCodeAt(0)}}return l>=this.token.lookAhead&&(this.token.lookAhead=l+1),o}acceptToken(n,s=0){let l=s?this.resolveOffset(s,-1):this.pos;if(l==null||l<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=n,this.token.end=l}acceptTokenTo(n,s){this.token.value=n,this.token.end=s}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:n,chunkPos:s}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=n,this.chunk2Pos=s,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let n=this.input.chunk(this.pos),s=this.pos+n.length;this.chunk=s>this.range.to?n.slice(0,this.range.to-this.pos):n,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(n=1){for(this.chunkOff+=n;this.pos+n>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();n-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=n,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(n,s){if(s?(this.token=s,s.start=n,s.lookAhead=n+1,s.value=s.extended=-1):this.token=r1,this.pos!=n){if(this.pos=n,n==this.end)return this.setDone(),this;for(;n<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;n>=this.range.to;)this.range=this.ranges[++this.rangeIndex];n>=this.chunkPos&&n<this.chunkPos+this.chunk.length?this.chunkOff=n-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(n,s){if(n>=this.chunkPos&&s<=this.chunkPos+this.chunk.length)return this.chunk.slice(n-this.chunkPos,s-this.chunkPos);if(n>=this.chunk2Pos&&s<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(n-this.chunk2Pos,s-this.chunk2Pos);if(n>=this.range.from&&s<=this.range.to)return this.input.read(n,s);let l="";for(let o of this.ranges){if(o.from>=s)break;o.to>n&&(l+=this.input.read(Math.max(o.from,n),Math.min(o.to,s)))}return l}}class wl{constructor(n,s){this.data=n,this.id=s}token(n,s){let{parser:l}=s.p;uv(this.data,n,s,this.id,l.data,l.tokenPrecTable)}}wl.prototype.contextual=wl.prototype.fallback=wl.prototype.extend=!1;class pc{constructor(n,s,l){this.precTable=s,this.elseToken=l,this.data=typeof n=="string"?Mr(n):n}token(n,s){let l=n.pos,o=0;for(;;){let u=n.next<0,d=n.resolveOffset(1,1);if(uv(this.data,n,s,0,this.data,this.precTable),n.token.value>-1)break;if(this.elseToken==null)return;if(u||o++,d==null)break;n.reset(d,n.token)}o&&(n.reset(l,n.token),n.acceptToken(this.elseToken,o))}}pc.prototype.contextual=wl.prototype.fallback=wl.prototype.extend=!1;class gt{constructor(n,s={}){this.token=n,this.contextual=!!s.contextual,this.fallback=!!s.fallback,this.extend=!!s.extend}}function uv(t,n,s,l,o,u){let d=0,O=1<<l,{dialect:m}=s.p.parser;e:for(;(O&t[d])!=0;){let p=t[d+1];for(let S=d+3;S<p;S+=2)if((t[S+1]&O)>0){let Q=t[S];if(m.allows(Q)&&(n.token.value==-1||n.token.value==Q||jN(Q,n.token.value,o,u))){n.acceptToken(Q);break}}let x=n.next,g=0,b=t[d+2];if(n.next<0&&b>g&&t[p+b*3-3]==65535){d=t[p+b*3-1];continue e}for(;g<b;){let S=g+b>>1,Q=p+S+(S<<1),k=t[Q],T=t[Q+1]||65536;if(x<k)b=S;else if(x>=T)g=S+1;else{d=t[Q+2],n.advance();continue e}}break}}function i1(t,n,s){for(let l=n,o;(o=t[l])!=65535;l++)if(o==s)return l-n;return-1}function jN(t,n,s,l){let o=i1(s,l,n);return o<0||i1(s,l,t)<o}const Gt=typeof process<"u"&&s1&&/\bparse\b/.test(s1.LOG);let vO=null;function o1(t,n,s){let l=t.cursor(Qc.IncludeAnonymous);for(l.moveTo(n);;)if(!(s<0?l.childBefore(n):l.childAfter(n)))for(;;){if((s<0?l.to<n:l.from>n)&&!l.type.isError)return s<0?Math.max(0,Math.min(l.to-1,n-25)):Math.min(t.length,Math.max(l.from+1,n+25));if(s<0?l.prevSibling():l.nextSibling())break;if(!l.parent())return s<0?0:t.length}}let wN=class{constructor(n,s){this.fragments=n,this.nodeSet=s,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let n=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(n){for(this.safeFrom=n.openStart?o1(n.tree,n.from+n.offset,1)-n.offset:n.from,this.safeTo=n.openEnd?o1(n.tree,n.to+n.offset,-1)-n.offset:n.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(n.tree),this.start.push(-n.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(n){if(n<this.nextStart)return null;for(;this.fragment&&this.safeTo<=n;)this.nextFragment();if(!this.fragment)return null;for(;;){let s=this.trees.length-1;if(s<0)return this.nextFragment(),null;let l=this.trees[s],o=this.index[s];if(o==l.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let u=l.children[o],d=this.start[s]+l.positions[o];if(d>n)return this.nextStart=d,null;if(u instanceof ma){if(d==n){if(d<this.safeFrom)return null;let O=d+u.length;if(O<=this.safeTo){let m=u.prop(sn.lookAhead);if(!m||O+m<this.fragment.to)return u}}this.index[s]++,d+u.length>=Math.max(this.safeFrom,n)&&(this.trees.push(u),this.start.push(d),this.index.push(0))}else this.index[s]++,this.nextStart=d+u.length}}};class kN{constructor(n,s){this.stream=s,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=n.tokenizers.map(l=>new Wo)}getActions(n){let s=0,l=null,{parser:o}=n.p,{tokenizers:u}=o,d=o.stateSlot(n.state,3),O=n.curContext?n.curContext.hash:0,m=0;for(let p=0;p<u.length;p++){if((1<<p&d)==0)continue;let x=u[p],g=this.tokens[p];if(!(l&&!x.fallback)&&((x.contextual||g.start!=n.pos||g.mask!=d||g.context!=O)&&(this.updateCachedToken(g,x,n),g.mask=d,g.context=O),g.lookAhead>g.end+25&&(m=Math.max(g.lookAhead,m)),g.value!=0)){let b=s;if(g.extended>-1&&(s=this.addActions(n,g.extended,g.end,s)),s=this.addActions(n,g.value,g.end,s),!x.extend&&(l=g,s>b))break}}for(;this.actions.length>s;)this.actions.pop();return m&&n.setLookAhead(m),!l&&n.pos==this.stream.end&&(l=new Wo,l.value=n.p.parser.eofTerm,l.start=l.end=n.pos,s=this.addActions(n,l.value,l.end,s)),this.mainToken=l,this.actions}getMainToken(n){if(this.mainToken)return this.mainToken;let s=new Wo,{pos:l,p:o}=n;return s.start=l,s.end=Math.min(l+1,o.stream.end),s.value=l==o.stream.end?o.parser.eofTerm:0,s}updateCachedToken(n,s,l){let o=this.stream.clipPos(l.pos);if(s.token(this.stream.reset(o,n),l),n.value>-1){let{parser:u}=l.p;for(let d=0;d<u.specialized.length;d++)if(u.specialized[d]==n.value){let O=u.specializers[d](this.stream.read(n.start,n.end),l);if(O>=0&&l.p.parser.dialect.allows(O>>1)){(O&1)==0?n.value=O>>1:n.extended=O>>1;break}}}else n.value=0,n.end=this.stream.clipPos(o+1)}putAction(n,s,l,o){for(let u=0;u<o;u+=3)if(this.actions[u]==n)return o;return this.actions[o++]=n,this.actions[o++]=s,this.actions[o++]=l,o}addActions(n,s,l,o){let{state:u}=n,{parser:d}=n.p,{data:O}=d;for(let m=0;m<2;m++)for(let p=d.stateSlot(u,m?2:1);;p+=3){if(O[p]==65535)if(O[p+1]==1)p=nn(O,p+2);else{o==0&&O[p+1]==2&&(o=this.putAction(nn(O,p+2),s,l,o));break}O[p]==s&&(o=this.putAction(nn(O,p+1),s,l,o))}return o}}class $N{constructor(n,s,l,o){this.parser=n,this.input=s,this.ranges=o,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new QN(s,o),this.tokens=new kN(n,this.stream),this.topTerm=n.top[1];let{from:u}=o[0];this.stacks=[hc.start(this,n.top[0],u)],this.fragments=l.length&&this.stream.end-u>n.bufferLength*4?new wN(l,n.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let n=this.stacks,s=this.minStackPos,l=this.stacks=[],o,u;if(this.bigReductionCount>300&&n.length==1){let[d]=n;for(;d.forceReduce()&&d.stack.length&&d.stack[d.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let d=0;d<n.length;d++){let O=n[d];for(;;){if(this.tokens.mainToken=null,O.pos>s)l.push(O);else{if(this.advanceStack(O,l,n))continue;{o||(o=[],u=[]),o.push(O);let m=this.tokens.getMainToken(O);u.push(m.value,m.end)}}break}}if(!l.length){let d=o&&PN(o);if(d)return Gt&&console.log("Finish with "+this.stackID(d)),this.stackToTree(d);if(this.parser.strict)throw Gt&&o&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+s);this.recovering||(this.recovering=5)}if(this.recovering&&o){let d=this.stoppedAt!=null&&o[0].pos>this.stoppedAt?o[0]:this.runRecovery(o,u,l);if(d)return Gt&&console.log("Force-finish "+this.stackID(d)),this.stackToTree(d.forceAll())}if(this.recovering){let d=this.recovering==1?1:this.recovering*3;if(l.length>d)for(l.sort((O,m)=>m.score-O.score);l.length>d;)l.pop();l.some(O=>O.reducePos>s)&&this.recovering--}else if(l.length>1){e:for(let d=0;d<l.length-1;d++){let O=l[d];for(let m=d+1;m<l.length;m++){let p=l[m];if(O.sameState(p)||O.buffer.length>500&&p.buffer.length>500)if((O.score-p.score||O.buffer.length-p.buffer.length)>0)l.splice(m--,1);else{l.splice(d--,1);continue e}}}l.length>12&&(l.sort((d,O)=>O.score-d.score),l.splice(12,l.length-12))}this.minStackPos=l[0].pos;for(let d=1;d<l.length;d++)l[d].pos<this.minStackPos&&(this.minStackPos=l[d].pos);return null}stopAt(n){if(this.stoppedAt!=null&&this.stoppedAt<n)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=n}advanceStack(n,s,l){let o=n.pos,{parser:u}=this,d=Gt?this.stackID(n)+" -> ":"";if(this.stoppedAt!=null&&o>this.stoppedAt)return n.forceReduce()?n:null;if(this.fragments){let p=n.curContext&&n.curContext.tracker.strict,x=p?n.curContext.hash:0;for(let g=this.fragments.nodeAt(o);g;){let b=this.parser.nodeSet.types[g.type.id]==g.type?u.getGoto(n.state,g.type.id):-1;if(b>-1&&g.length&&(!p||(g.prop(sn.contextHash)||0)==x))return n.useNode(g,b),Gt&&console.log(d+this.stackID(n)+` (via reuse of ${u.getName(g.type.id)})`),!0;if(!(g instanceof ma)||g.children.length==0||g.positions[0]>0)break;let S=g.children[0];if(S instanceof ma&&g.positions[0]==0)g=S;else break}}let O=u.stateSlot(n.state,4);if(O>0)return n.reduce(O),Gt&&console.log(d+this.stackID(n)+` (via always-reduce ${u.getName(O&65535)})`),!0;if(n.stack.length>=8400)for(;n.stack.length>6e3&&n.forceReduce(););let m=this.tokens.getActions(n);for(let p=0;p<m.length;){let x=m[p++],g=m[p++],b=m[p++],S=p==m.length||!l,Q=S?n:n.split(),k=this.tokens.mainToken;if(Q.apply(x,g,k?k.start:Q.pos,b),Gt&&console.log(d+this.stackID(Q)+` (via ${(x&65536)==0?"shift":`reduce of ${u.getName(x&65535)}`} for ${u.getName(g)} @ ${o}${Q==n?"":", split"})`),S)return!0;Q.pos>o?s.push(Q):l.push(Q)}return!1}advanceFully(n,s){let l=n.pos;for(;;){if(!this.advanceStack(n,null,null))return!1;if(n.pos>l)return c1(n,s),!0}}runRecovery(n,s,l){let o=null,u=!1;for(let d=0;d<n.length;d++){let O=n[d],m=s[d<<1],p=s[(d<<1)+1],x=Gt?this.stackID(O)+" -> ":"";if(O.deadEnd&&(u||(u=!0,O.restart(),Gt&&console.log(x+this.stackID(O)+" (restarted)"),this.advanceFully(O,l))))continue;let g=O.split(),b=x;for(let S=0;S<10&&g.forceReduce()&&(Gt&&console.log(b+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,l));S++)Gt&&(b=this.stackID(g)+" -> ");for(let S of O.recoverByInsert(m))Gt&&console.log(x+this.stackID(S)+" (via recover-insert)"),this.advanceFully(S,l);this.stream.end>O.pos?(p==O.pos&&(p++,m=0),O.recoverByDelete(m,p),Gt&&console.log(x+this.stackID(O)+` (via recover-delete ${this.parser.getName(m)})`),c1(O,l)):(!o||o.score<g.score)&&(o=g)}return o}stackToTree(n){return n.close(),ma.build({buffer:mc.create(n),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:n.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(n){let s=(vO||(vO=new WeakMap)).get(n);return s||vO.set(n,s=String.fromCodePoint(this.nextStackID++)),s+n}}function c1(t,n){for(let s=0;s<n.length;s++){let l=n[s];if(l.pos==t.pos&&l.sameState(t)){n[s].score<t.score&&(n[s]=t);return}}n.push(t)}class TN{constructor(n,s,l){this.source=n,this.flags=s,this.disabled=l}allows(n){return!this.disabled||this.disabled[n]==0}}const yO=t=>t;class nh{constructor(n){this.start=n.start,this.shift=n.shift||yO,this.reduce=n.reduce||yO,this.reuse=n.reuse||yO,this.hash=n.hash||(()=>0),this.strict=n.strict!==!1}}class Kn extends y0{constructor(n){if(super(),this.wrappers=[],n.version!=14)throw new RangeError(`Parser version (${n.version}) doesn't match runtime version (14)`);let s=n.nodeNames.split(" ");this.minRepeatTerm=s.length;for(let O=0;O<n.repeatNodeCount;O++)s.push("");let l=Object.keys(n.topRules).map(O=>n.topRules[O][1]),o=[];for(let O=0;O<s.length;O++)o.push([]);function u(O,m,p){o[O].push([m,m.deserialize(String(p))])}if(n.nodeProps)for(let O of n.nodeProps){let m=O[0];typeof m=="string"&&(m=sn[m]);for(let p=1;p<O.length;){let x=O[p++];if(x>=0)u(x,m,O[p++]);else{let g=O[p+-x];for(let b=-x;b>0;b--)u(O[p++],m,g);p++}}}this.nodeSet=new wf(s.map((O,m)=>ni.define({name:m>=this.minRepeatTerm?void 0:O,id:m,props:o[m],top:l.indexOf(m)>-1,error:m==0,skipped:n.skippedNodes&&n.skippedNodes.indexOf(m)>-1}))),n.propSources&&(this.nodeSet=this.nodeSet.extend(...n.propSources)),this.strict=!1,this.bufferLength=Sj;let d=Mr(n.tokenData);this.context=n.context,this.specializerSpecs=n.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let O=0;O<this.specializerSpecs.length;O++)this.specialized[O]=this.specializerSpecs[O].term;this.specializers=this.specializerSpecs.map(u1),this.states=Mr(n.states,Uint32Array),this.data=Mr(n.stateData),this.goto=Mr(n.goto),this.maxTerm=n.maxTerm,this.tokenizers=n.tokenizers.map(O=>typeof O=="number"?new wl(d,O):O),this.topRules=n.topRules,this.dialects=n.dialects||{},this.dynamicPrecedences=n.dynamicPrecedences||null,this.tokenPrecTable=n.tokenPrec,this.termNames=n.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(n,s,l){let o=new $N(this,n,s,l);for(let u of this.wrappers)o=u(o,n,s,l);return o}getGoto(n,s,l=!1){let o=this.goto;if(s>=o[0])return-1;for(let u=o[s+1];;){let d=o[u++],O=d&1,m=o[u++];if(O&&l)return m;for(let p=u+(d>>1);u<p;u++)if(o[u]==n)return m;if(O)return-1}}hasAction(n,s){let l=this.data;for(let o=0;o<2;o++)for(let u=this.stateSlot(n,o?2:1),d;;u+=3){if((d=l[u])==65535)if(l[u+1]==1)d=l[u=nn(l,u+2)];else{if(l[u+1]==2)return nn(l,u+2);break}if(d==s||d==0)return nn(l,u+1)}return 0}stateSlot(n,s){return this.states[n*6+s]}stateFlag(n,s){return(this.stateSlot(n,0)&s)>0}validAction(n,s){return!!this.allActions(n,l=>l==s?!0:null)}allActions(n,s){let l=this.stateSlot(n,4),o=l?s(l):void 0;for(let u=this.stateSlot(n,1);o==null;u+=3){if(this.data[u]==65535)if(this.data[u+1]==1)u=nn(this.data,u+2);else break;o=s(nn(this.data,u+1))}return o}nextStates(n){let s=[];for(let l=this.stateSlot(n,1);;l+=3){if(this.data[l]==65535)if(this.data[l+1]==1)l=nn(this.data,l+2);else break;if((this.data[l+2]&1)==0){let o=this.data[l+1];s.some((u,d)=>d&1&&u==o)||s.push(this.data[l],o)}}return s}configure(n){let s=Object.assign(Object.create(Kn.prototype),this);if(n.props&&(s.nodeSet=this.nodeSet.extend(...n.props)),n.top){let l=this.topRules[n.top];if(!l)throw new RangeError(`Invalid top rule name ${n.top}`);s.top=l}return n.tokenizers&&(s.tokenizers=this.tokenizers.map(l=>{let o=n.tokenizers.find(u=>u.from==l);return o?o.to:l})),n.specializers&&(s.specializers=this.specializers.slice(),s.specializerSpecs=this.specializerSpecs.map((l,o)=>{let u=n.specializers.find(O=>O.from==l.external);if(!u)return l;let d=Object.assign(Object.assign({},l),{external:u.to});return s.specializers[o]=u1(d),d})),n.contextTracker&&(s.context=n.contextTracker),n.dialect&&(s.dialect=this.parseDialect(n.dialect)),n.strict!=null&&(s.strict=n.strict),n.wrap&&(s.wrappers=s.wrappers.concat(n.wrap)),n.bufferLength!=null&&(s.bufferLength=n.bufferLength),s}hasWrappers(){return this.wrappers.length>0}getName(n){return this.termNames?this.termNames[n]:String(n<=this.maxNode&&this.nodeSet.types[n].name||n)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(n){let s=this.dynamicPrecedences;return s==null?0:s[n]||0}parseDialect(n){let s=Object.keys(this.dialects),l=s.map(()=>!1);if(n)for(let u of n.split(" ")){let d=s.indexOf(u);d>=0&&(l[d]=!0)}let o=null;for(let u=0;u<s.length;u++)if(!l[u])for(let d=this.dialects[s[u]],O;(O=this.data[d++])!=65535;)(o||(o=new Uint8Array(this.maxTerm+1)))[O]=1;return new TN(n,l,o)}static deserialize(n){return new Kn(n)}}function nn(t,n){return t[n]|t[n+1]<<16}function PN(t){let n=null;for(let s of t){let l=s.p.stoppedAt;(s.pos==s.p.stream.end||l!=null&&s.pos>l)&&s.p.parser.stateFlag(s.state,2)&&(!n||n.score<s.score)&&(n=s)}return n}function u1(t){if(t.external){let n=t.extend?1:0;return(s,l)=>t.external(s,l)<<1|n}return t.get}const NN=316,zN=317,d1=1,RN=2,CN=3,XN=4,_N=318,ZN=320,AN=321,EN=5,qN=6,MN=0,uf=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],dv=125,YN=59,df=47,VN=42,UN=43,GN=45,LN=60,DN=44,WN=63,BN=46,HN=91,IN=new nh({start:!1,shift(t,n){return n==EN||n==qN||n==ZN?t:n==AN},strict:!1}),FN=new gt((t,n)=>{let{next:s}=t;(s==dv||s==-1||n.context)&&t.acceptToken(_N)},{contextual:!0,fallback:!0}),KN=new gt((t,n)=>{let{next:s}=t,l;uf.indexOf(s)>-1||s==df&&((l=t.peek(1))==df||l==VN)||s!=dv&&s!=YN&&s!=-1&&!n.context&&t.acceptToken(NN)},{contextual:!0}),JN=new gt((t,n)=>{t.next==HN&&!n.context&&t.acceptToken(zN)},{contextual:!0}),e3=new gt((t,n)=>{let{next:s}=t;if(s==UN||s==GN){if(t.advance(),s==t.next){t.advance();let l=!n.context&&n.canShift(d1);t.acceptToken(l?d1:RN)}}else s==WN&&t.peek(1)==BN&&(t.advance(),t.advance(),(t.next<48||t.next>57)&&t.acceptToken(CN))},{contextual:!0});function SO(t,n){return t>=65&&t<=90||t>=97&&t<=122||t==95||t>=192||!n&&t>=48&&t<=57}const t3=new gt((t,n)=>{if(t.next!=LN||!n.dialectEnabled(MN)||(t.advance(),t.next==df))return;let s=0;for(;uf.indexOf(t.next)>-1;)t.advance(),s++;if(SO(t.next,!0)){for(t.advance(),s++;SO(t.next,!1);)t.advance(),s++;for(;uf.indexOf(t.next)>-1;)t.advance(),s++;if(t.next==DN)return;for(let l=0;;l++){if(l==7){if(!SO(t.next,!0))return;break}if(t.next!="extends".charCodeAt(l))break;t.advance(),s++}}t.acceptToken(XN,-s)}),a3=Ts({"get set async static":Z.modifier,"for while do if else switch try catch finally return throw break continue default case defer":Z.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":Z.operatorKeyword,"let var const using function class extends":Z.definitionKeyword,"import export from":Z.moduleKeyword,"with debugger new":Z.keyword,TemplateString:Z.special(Z.string),super:Z.atom,BooleanLiteral:Z.bool,this:Z.self,null:Z.null,Star:Z.modifier,VariableName:Z.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":Z.function(Z.variableName),VariableDefinition:Z.definition(Z.variableName),Label:Z.labelName,PropertyName:Z.propertyName,PrivatePropertyName:Z.special(Z.propertyName),"CallExpression/MemberExpression/PropertyName":Z.function(Z.propertyName),"FunctionDeclaration/VariableDefinition":Z.function(Z.definition(Z.variableName)),"ClassDeclaration/VariableDefinition":Z.definition(Z.className),"NewExpression/VariableName":Z.className,PropertyDefinition:Z.definition(Z.propertyName),PrivatePropertyDefinition:Z.definition(Z.special(Z.propertyName)),UpdateOp:Z.updateOperator,"LineComment Hashbang":Z.lineComment,BlockComment:Z.blockComment,Number:Z.number,String:Z.string,Escape:Z.escape,ArithOp:Z.arithmeticOperator,LogicOp:Z.logicOperator,BitOp:Z.bitwiseOperator,CompareOp:Z.compareOperator,RegExp:Z.regexp,Equals:Z.definitionOperator,Arrow:Z.function(Z.punctuation),": Spread":Z.punctuation,"( )":Z.paren,"[ ]":Z.squareBracket,"{ }":Z.brace,"InterpolationStart InterpolationEnd":Z.special(Z.brace),".":Z.derefOperator,", ;":Z.separator,"@":Z.meta,TypeName:Z.typeName,TypeDefinition:Z.definition(Z.typeName),"type enum interface implements namespace module declare":Z.definitionKeyword,"abstract global Privacy readonly override":Z.modifier,"is keyof unique infer asserts":Z.operatorKeyword,JSXAttributeValue:Z.attributeValue,JSXText:Z.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":Z.angleBracket,"JSXIdentifier JSXNameSpacedName":Z.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":Z.attributeName,"JSXBuiltin/JSXIdentifier":Z.standard(Z.tagName)}),n3={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},s3={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},l3={__proto__:null,"<":193},r3=Kn.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",stateData:"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hOTX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WOPP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",goto:"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",nodeNames:"⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:IN,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[a3],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[KN,JN,e3,t3,2,3,4,5,6,7,8,9,10,11,12,13,14,FN,new pc("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new pc("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:t=>n3[t]||-1},{term:343,get:t=>s3[t]||-1},{term:95,get:t=>l3[t]||-1}],tokenPrec:15201}),Ov=[Ie("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Ie("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Ie("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Ie("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Ie("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Ie(`try {
|
|
519
|
+
*/const vP=[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]],Na=ae("zap",vP),yP={success:Br,error:cn,info:Rb,warning:_c},SP={success:"border-l-success",error:"border-l-danger",info:"border-l-accent",warning:"border-l-warning"},QP={success:"text-success",error:"text-danger",info:"text-accent",warning:"text-warning"},jP={success:3e3,error:0,info:5e3,warning:5e3};function wP({toast:t}){const n=D(o=>o.removeToast),s=yP[t.type]||Rb,l=jP[t.type];return v.useEffect(()=>{if(!l)return;const o=setTimeout(()=>n(t.id),l);return()=>clearTimeout(o)},[t.id,l,n]),i.jsxs(b0.div,{layout:!0,initial:{opacity:0,x:80,scale:.95},animate:{opacity:1,x:0,scale:1},exit:{opacity:0,x:80,scale:.95},transition:{duration:.2},className:le("w-80 rounded-md border border-border bg-surface-1 shadow-xl","border-l-4 flex items-center gap-3 px-4 py-3",SP[t.type]),children:[i.jsx(s,{size:16,className:le("flex-shrink-0",QP[t.type])}),i.jsxs("div",{className:"flex-1 min-w-0",children:[i.jsx("p",{className:"text-sm text-text-0 font-sans",children:t.message}),t.detail&&i.jsx("p",{className:"text-xs text-text-3 font-sans mt-0.5",children:t.detail})]}),i.jsx("button",{onClick:o=>{o.stopPropagation(),n(t.id)},className:"p-1.5 text-text-4 hover:text-text-1 hover:bg-surface-5 rounded transition-colors cursor-pointer flex-shrink-0 z-10",children:i.jsx(Rt,{size:14})})]})}function kP(){const t=D(n=>n.toasts);return i.jsx("div",{className:"fixed bottom-4 right-4 z-[100] flex flex-col-reverse gap-2",children:i.jsx(g0,{mode:"popLayout",children:t.slice(-3).map(n=>i.jsx(wP,{toast:n},n.id))})})}const $P=[{id:"agents",icon:_b,label:"Agents"},{id:"editor",icon:dn,label:"Editor"},{id:"dashboard",icon:Rc,label:"Dashboard"},{id:"marketplace",icon:Eb,label:"Marketplace"},{id:"teams",icon:Zc,label:"Teams"}],TP=[{id:"journalist",icon:Ir,label:"Journalist",panel:!0},{id:"settings",icon:Yb,label:"Settings",nav:!0}];function PP({activeView:t,detailPanel:n,onNavigate:s,onTogglePanel:l}){return i.jsxs("nav",{className:"w-12 flex-shrink-0 flex flex-col bg-surface-3 border-r border-border",children:[i.jsx("div",{className:"flex flex-col items-center gap-0.5 pt-2",children:$P.map(o=>i.jsx(Wg,{content:o.label,side:"right",children:i.jsx("button",{onClick:()=>s(o.id),className:le("w-10 h-10 flex items-center justify-center rounded-md transition-colors cursor-pointer",t===o.id?"text-text-0 bg-surface-5":"text-text-3 hover:text-text-1 hover:bg-surface-4"),children:i.jsx(o.icon,{size:20,strokeWidth:t===o.id?2:1.5})})},o.id))}),i.jsx("div",{className:"flex-1"}),i.jsx("div",{className:"flex flex-col items-center gap-0.5 pb-2",children:TP.map(o=>{const u=o.panel?(n==null?void 0:n.type)===o.id:t===o.id;return i.jsx(Wg,{content:o.label,side:"right",children:i.jsx("button",{onClick:()=>o.panel?l(o.id):s((o.nav,o.id)),className:le("w-10 h-10 flex items-center justify-center rounded-md transition-colors cursor-pointer",u?"text-text-0 bg-surface-5":"text-text-3 hover:text-text-1 hover:bg-surface-4"),children:i.jsx(o.icon,{size:20,strokeWidth:u?2:1.5})})},o.id)})})]})}const NP={agents:"Agents",editor:"Editor",dashboard:"Dashboard",marketplace:"Marketplace",teams:"Teams"};function zP({activeView:t,connected:n,daemonHost:s,editorActiveFile:l,onOpenCommandPalette:o,onSpawn:u}){const d=["Groove",NP[t]||t];return t==="editor"&&l&&d.push(l.split("/").pop()),i.jsxs("header",{className:"h-11 flex-shrink-0 flex items-center gap-3 px-4 bg-surface-3 border-b border-border",children:[i.jsx("img",{src:"/favicon.png",alt:"Groove",className:"h-7 w-7 rounded-full flex-shrink-0"}),s&&i.jsx("span",{className:"text-2xs font-mono font-semibold text-text-3 bg-surface-5 px-1.5 py-0.5 rounded flex-shrink-0",children:s}),i.jsx("div",{className:"flex-1 min-w-4"}),i.jsxs("button",{onClick:o,className:le("flex items-center gap-2.5 h-8 px-4 rounded-full w-full max-w-md","bg-surface-1 border border-border-subtle","text-sm text-text-4 font-sans","hover:border-border hover:text-text-3 transition-colors cursor-pointer"),children:[i.jsx(ql,{size:14,className:"flex-shrink-0"}),i.jsx("span",{className:"flex-1 text-left",children:"Search commands..."}),i.jsx("kbd",{className:"text-2xs font-mono bg-surface-4 px-1.5 py-0.5 rounded-full text-text-4",children:"Cmd+K"})]}),i.jsx("div",{className:"flex-1 min-w-4"}),i.jsx("div",{className:"flex items-center gap-1 text-xs font-sans text-text-3 flex-shrink-0",children:d.map((O,m)=>i.jsxs("span",{className:"flex items-center gap-1",children:[m>0&&i.jsx(ii,{size:11,className:"text-text-4"}),i.jsx("span",{className:le(m===d.length-1?"text-text-2":"text-text-4"),children:O})]},m))}),n&&i.jsxs("button",{onClick:u,className:"ml-1 flex items-center gap-1 h-7 px-3.5 rounded-full bg-accent/15 text-accent text-xs font-semibold font-sans hover:bg-accent/25 transition-colors cursor-pointer select-none flex-shrink-0",children:[i.jsx(Fn,{size:14}),"Spawn"]})]})}const RP={running:"var(--color-success)",starting:"var(--color-warning)",stopped:"var(--color-text-3)",crashed:"var(--color-danger)",completed:"var(--color-accent)",killed:"var(--color-text-3)",rotating:"var(--color-purple)"};function Ff(t){return RP[t]||"var(--color-text-3)"}const CP={planner:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},backend:{bg:"rgba(51, 175, 188, 0.12)",text:"#33afbc",border:"#33afbc"},frontend:{bg:"rgba(229, 192, 123, 0.12)",text:"#e5c07b",border:"#e5c07b"},fullstack:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},testing:{bg:"rgba(97, 175, 239, 0.12)",text:"#61afef",border:"#61afef"},devops:{bg:"rgba(209, 154, 102, 0.12)",text:"#d19a66",border:"#d19a66"},docs:{bg:"rgba(139, 146, 158, 0.12)",text:"#8b929e",border:"#8b929e"},security:{bg:"rgba(224, 108, 117, 0.12)",text:"#e06c75",border:"#e06c75"},database:{bg:"rgba(198, 120, 221, 0.12)",text:"#c678dd",border:"#c678dd"},cmo:{bg:"rgba(229, 192, 123, 0.12)",text:"#e5c07b",border:"#e5c07b"},cfo:{bg:"rgba(74, 225, 104, 0.12)",text:"#4ae168",border:"#4ae168"},ea:{bg:"rgba(97, 175, 239, 0.12)",text:"#61afef",border:"#61afef"},support:{bg:"rgba(51, 175, 188, 0.12)",text:"#33afbc",border:"#33afbc"},analyst:{bg:"rgba(198, 120, 221, 0.12)",text:"#c678dd",border:"#c678dd"}};function Db(t){const n=(t||"").toLowerCase();return CP[n]||{bg:"rgba(139, 146, 158, 0.12)",text:"#8b929e",border:"#8b929e"}}function Nl({status:t,size:n="md",className:s}){const l=t==="running"||t==="starting",o=n==="sm"?"w-1.5 h-1.5":n==="lg"?"w-3 h-3":"w-2 h-2";return i.jsx("span",{className:le("rounded-full inline-block flex-shrink-0",l&&"animate-pulse",o,s),style:{background:Ff(t)}})}function rt(t){return t==null||isNaN(t)?"0":t>=1e6?(t/1e6).toFixed(1).replace(/\.0$/,"")+"M":t>=1e3?(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":Math.round(t).toLocaleString()}function Kf(t){return t==null||isNaN(t)?"$0":t>=1e3?"$"+(t/1e3).toFixed(1).replace(/\.0$/,"")+"k":t>=1||t>=.01?"$"+t.toFixed(2):"$"+t.toFixed(3)}function ws(t){return t==null||isNaN(t)?"0%":Math.round(t)+"%"}function Ac(t){if(!t||t<0)return"0s";const n=Math.floor(t/86400),s=Math.floor(t%86400/3600),l=Math.floor(t%3600/60),o=Math.floor(t%60);return n>0?`${n}d ${s}h`:s>0?`${s}h ${l}m`:l>0?`${l}m ${o}s`:`${o}s`}function Ct(t){if(!t)return"";const n=(Date.now()-new Date(t).getTime())/1e3;return n<5?"just now":n<60?`${Math.floor(n)}s ago`:n<3600?`${Math.floor(n/60)}m ago`:n<86400?`${Math.floor(n/3600)}h ago`:`${Math.floor(n/86400)}d ago`}function XP({connected:t,agentCount:n,runningCount:s,uptime:l,terminalVisible:o,onToggleTerminal:u}){return i.jsxs("footer",{className:"h-6 flex-shrink-0 flex items-center px-3 bg-surface-3 border-t border-border text-2xs font-sans select-none",children:[i.jsxs("div",{className:"flex items-center gap-3",children:[i.jsxs("div",{className:"flex items-center gap-1.5",children:[i.jsx(Nl,{status:t?"running":"crashed",size:"sm"}),i.jsx("span",{className:t?"text-text-2":"text-danger",children:t?"Connected":"Offline"})]}),t&&l>0&&i.jsxs("span",{className:"text-text-4",children:["Up ",Ac(l)]}),t&&n>0&&i.jsxs("span",{className:"text-text-4",children:[s,"/",n," agents"]})]}),i.jsx("div",{className:"flex-1"}),i.jsxs("a",{href:"https://docs.groovedev.ai",target:"_blank",rel:"noopener noreferrer",className:"flex items-center gap-1.5 px-2 h-full text-text-3 hover:text-text-1 hover:bg-surface-5 transition-colors no-underline",children:[i.jsx(g5,{size:12}),i.jsx("span",{children:"Docs"})]}),i.jsxs("button",{onClick:u,className:le("flex items-center gap-1.5 px-2 h-full transition-colors cursor-pointer",o?"text-accent bg-accent/8 hover:bg-accent/12":"text-text-3 hover:text-text-1 hover:bg-surface-5"),children:[i.jsx(ui,{size:12}),i.jsx("span",{children:"Terminal"}),i.jsx("kbd",{className:"font-mono text-text-4 ml-0.5",children:"Cmd+J"})]})]})}function _P({children:t,width:n,onWidthChange:s,onClose:l,className:o}){const u=v.useRef(!1),d=v.useRef(0),O=v.useRef(0),m=v.useCallback(p=>{p.preventDefault(),u.current=!0,d.current=p.clientX,O.current=n;function x(b){if(!u.current)return;const S=d.current-b.clientX,Q=Math.min(Math.max(O.current+S,380),window.innerWidth*.65);s(Q)}function g(){u.current=!1,document.removeEventListener("mousemove",x),document.removeEventListener("mouseup",g)}document.addEventListener("mousemove",x),document.addEventListener("mouseup",g)},[n,s]);return i.jsxs("aside",{className:le("flex-shrink-0 flex bg-surface-1 border-l border-border relative",o),style:{width:n},children:[i.jsx("div",{className:"absolute left-0 top-0 bottom-0 w-1 cursor-col-resize hover:bg-accent/30 transition-colors z-10",onMouseDown:m}),i.jsx("button",{onClick:l,className:"absolute top-3 right-3 z-10 p-1 rounded-md text-text-3 hover:text-text-0 hover:bg-surface-5 transition-colors cursor-pointer",children:i.jsx(Rt,{size:14})}),i.jsx("div",{className:"flex-1 overflow-y-auto overflow-x-hidden",children:t})]})}const ZP=[{id:"nav:agents",label:"Go to Agents",icon:_b,category:"Navigation",action:t=>{t.setActiveView("agents")}},{id:"nav:editor",label:"Go to Editor",icon:dn,category:"Navigation",action:t=>{t.setActiveView("editor")}},{id:"nav:dashboard",label:"Go to Dashboard",icon:Rc,category:"Navigation",action:t=>{t.setActiveView("dashboard")}},{id:"nav:marketplace",label:"Go to Marketplace",icon:Eb,category:"Navigation",action:t=>{t.setActiveView("marketplace")}},{id:"nav:teams",label:"Go to Teams",icon:Zc,category:"Navigation",action:t=>{t.setActiveView("teams")}},{id:"action:spawn",label:"Spawn Agent",icon:Fn,category:"Actions",action:t=>{t.openDetail({type:"spawn"})}},{id:"action:terminal",label:"Toggle Terminal",icon:ui,category:"Actions",action:t=>{t.setTerminalVisible(!t.terminalVisible)},shortcut:"Cmd+J"},{id:"action:journalist",label:"Toggle Journalist",icon:Ir,category:"Actions",action:t=>{var n;((n=t.detailPanel)==null?void 0:n.type)==="journalist"?t.closeDetail():t.openDetail({type:"journalist"})}}];function AP(){const t=D(S=>S.commandPaletteOpen),n=D(S=>S.toggleCommandPalette),s=D(S=>S.agents),l=D,[o,u]=v.useState(""),[d,O]=v.useState(0),m=v.useRef(null),p=v.useMemo(()=>{const S=s.flatMap(Q=>[{id:`chat:${Q.id}`,label:`Chat with ${Q.name}`,icon:ci,category:"Agents",action:k=>{k.selectAgent(Q.id)}},...Q.status==="running"?[{id:`rotate:${Q.id}`,label:`Rotate ${Q.name}`,icon:El,category:"Agents",action:k=>{k.rotateAgent(Q.id)}},{id:`kill:${Q.id}`,label:`Kill ${Q.name}`,icon:Hf,category:"Agents",action:k=>{k.killAgent(Q.id)}}]:[]]);return[...ZP,...S]},[s]),x=v.useMemo(()=>{if(!o.trim())return p.slice(0,12);const S=o.toLowerCase();return p.filter(Q=>Q.label.toLowerCase().includes(S)||Q.category.toLowerCase().includes(S)).slice(0,12)},[p,o]);v.useEffect(()=>{t&&(u(""),O(0),setTimeout(()=>{var S;return(S=m.current)==null?void 0:S.focus()},50))},[t]),v.useEffect(()=>{d>=x.length&&O(Math.max(0,x.length-1))},[x.length,d]);function g(S){S.action(l.getState()),n()}function b(S){S.key==="ArrowDown"?(S.preventDefault(),O(Q=>Math.min(Q+1,x.length-1))):S.key==="ArrowUp"?(S.preventDefault(),O(Q=>Math.max(Q-1,0))):S.key==="Enter"&&x[d]?(S.preventDefault(),g(x[d])):S.key==="Escape"&&n()}return t?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"fixed inset-0 z-50 bg-black/40 backdrop-blur-sm",onClick:n}),i.jsx(g0,{children:i.jsxs(b0.div,{initial:{opacity:0,y:-20,scale:.96},animate:{opacity:1,y:0,scale:1},exit:{opacity:0,y:-10,scale:.98},transition:{duration:.15},className:"fixed top-[15%] left-1/2 -translate-x-1/2 z-50 w-[480px] max-h-[400px] bg-surface-1 border border-border rounded-lg shadow-2xl overflow-hidden",onKeyDown:b,children:[i.jsxs("div",{className:"flex items-center gap-2 px-4 py-3 border-b border-border-subtle",children:[i.jsx(ql,{size:16,className:"text-text-3 flex-shrink-0"}),i.jsx("input",{ref:m,value:o,onChange:S=>{u(S.target.value),O(0)},placeholder:"Type a command...",className:"flex-1 bg-transparent text-sm text-text-0 font-sans placeholder:text-text-4 focus:outline-none"})]}),i.jsxs("div",{className:"overflow-y-auto max-h-[320px] py-1",children:[x.length===0&&i.jsx("div",{className:"px-4 py-6 text-sm text-text-3 text-center font-sans",children:"No results"}),x.map((S,Q)=>i.jsxs("button",{onClick:()=>g(S),onMouseEnter:()=>O(Q),className:le("w-full flex items-center gap-3 px-4 py-2 text-sm font-sans cursor-pointer",Q===d?"bg-surface-5 text-text-0":"text-text-1 hover:bg-surface-4"),children:[i.jsx(S.icon,{size:16,className:"text-text-3 flex-shrink-0"}),i.jsx("span",{className:"flex-1 text-left",children:S.label}),i.jsx("span",{className:"text-2xs text-text-4",children:S.category}),S.shortcut&&i.jsx("kbd",{className:"text-2xs font-mono bg-surface-4 px-1 py-0.5 rounded text-text-3 ml-1",children:S.shortcut})]},S.id))]})]})})]}):null}function EP({children:t,detailContent:n,terminalContent:s}){const l=D(C=>C.activeView),o=D(C=>C.detailPanel),u=D(C=>C.connected),d=D(C=>C.tunneled),O=D(C=>C.daemonHost),m=D(C=>C.agents),p=D(C=>C.editorActiveFile),x=D(C=>C.detailPanelWidth),g=D(C=>C.terminalVisible),b=D(C=>C.terminalFullHeight),S=D(C=>C.setActiveView),Q=D(C=>C.openDetail),k=D(C=>C.closeDetail),T=D(C=>C.setDetailPanelWidth),j=D(C=>C.setTerminalVisible),P=D(C=>C.toggleCommandPalette),N=v.useMemo(()=>m.filter(C=>C.status==="running").length,[m]),A=v.useMemo(()=>[{key:"k",meta:!0,handler:()=>D.getState().toggleCommandPalette()},{key:"p",meta:!0,shift:!0,handler:()=>D.getState().toggleCommandPalette()},{key:"j",meta:!0,handler:()=>{const C=D.getState();C.setTerminalVisible(!C.terminalVisible)}},{key:"n",meta:!0,handler:()=>D.getState().openDetail({type:"spawn"})},{key:"1",meta:!0,handler:()=>D.getState().setActiveView("agents")},{key:"2",meta:!0,handler:()=>D.getState().setActiveView("editor")},{key:"3",meta:!0,handler:()=>D.getState().setActiveView("dashboard")},{key:"4",meta:!0,handler:()=>D.getState().setActiveView("marketplace")},{key:"5",meta:!0,handler:()=>D.getState().setActiveView("teams")},{key:"Escape",handler:()=>{const C=D.getState();C.commandPaletteOpen?C.toggleCommandPalette():C.detailPanel&&C.closeDetail()}}],[]);nw(A);const U=o&&o.type!=="spawn";return i.jsx(i5,{children:i.jsxs("div",{className:"w-full h-full flex flex-col bg-surface-2 text-text-1 font-sans",children:[i.jsx(zP,{activeView:l,connected:u,tunneled:d,daemonHost:O,editorActiveFile:p,onOpenCommandPalette:P,onSpawn:()=>Q({type:"spawn"})}),i.jsxs("div",{className:"flex-1 flex min-h-0",children:[i.jsx(PP,{activeView:l,detailPanel:o,onNavigate:S,onTogglePanel:C=>{(o==null?void 0:o.type)===C?k():Q({type:C})}}),i.jsxs("div",{className:"flex-1 flex flex-col min-w-0 min-h-0",children:[!(g&&b)&&i.jsx("main",{className:"flex-1 min-h-0 overflow-hidden relative",children:t}),s]}),U&&i.jsx(_P,{width:x,onWidthChange:T,onClose:k,children:n})]}),i.jsx(XP,{connected:u,agentCount:m.length,runningCount:N,terminalVisible:g,onToggleTerminal:()=>j(!g)}),i.jsx(AP,{}),i.jsx(kP,{})]})})}const qP=[];function MP(t){if(!t||t==="auto")return"auto";const n=t.match(/^claude-(opus|sonnet|haiku)-(\d+)-(\d+)(?:-\d+)?$/);return n?`${n[1][0].toUpperCase()+n[1].slice(1)} ${n[2]}.${n[3]}`:t.startsWith("gemini-")?t.replace("gemini-","Gemini ").replace("-preview","").replace("-flash-lite"," Flash Lite").replace("-flash"," Flash").replace("-pro"," Pro"):t.startsWith("gpt-")?t.toUpperCase().replace("GPT-","GPT-"):t}function YP(t){if(!t)return null;const n=t.toLowerCase();return n.includes("read")?"READ":n.includes("edit")||n.includes("writ")?"WRITE":n.includes("search")||n.includes("grep")||n.includes("glob")?"SEARCH":n.includes("bash")||n.includes("exec")||n.includes("running")?"EXEC":n.includes("test")?"TEST":n.includes("error")||n.includes("fail")?"ERR":n.includes("complet")||n.includes("done")?"DONE":"WORK"}function VP(t){if(!t)return"";const n=Math.floor((Date.now()-t)/1e3);return n<60?`${n}s`:n<3600?`${Math.floor(n/60)}m`:`${Math.floor(n/3600)}h`}function UP({agent:t}){const s=(D(l=>l.activityLog[t.id])||qP).slice(-8);return i.jsx("div",{className:"absolute left-full top-0 ml-2 z-50 pointer-events-none",style:{width:220,animation:"tooltip-slide-in 0.15s ease-out"},children:i.jsxs("div",{className:"overflow-hidden",style:{background:"#181b21",border:"1px solid #262a32",borderRadius:4},children:[t.prompt&&i.jsx("div",{className:"px-2.5 py-2 border-b border-[#262a32]",children:i.jsx("p",{className:"text-[9px] font-sans text-[#8b929e] line-clamp-3 leading-snug",children:t.prompt})}),s.length>0?i.jsxs("div",{children:[i.jsx("div",{className:"px-2.5 pt-1.5 pb-1",children:i.jsx("span",{className:"text-[8px] font-mono text-[#3a3f4b] uppercase tracking-widest",children:"Activity"})}),s.map((l,o)=>{var O;const u=YP(l.text),d=((O=l.text)==null?void 0:O.length)>45?l.text.slice(0,45)+"...":l.text;return i.jsxs("div",{className:"px-2.5 py-[3px] flex items-start gap-1.5",children:[i.jsx("span",{className:"text-[8px] font-mono text-[#333842] w-5 flex-shrink-0 text-right",children:VP(l.timestamp)}),u&&i.jsx("span",{className:le("text-[7px] font-mono w-7 flex-shrink-0 text-center rounded-sm px-0.5 py-px",u==="ERR"?"text-[#e06c75] bg-[#e06c75]/10":"text-[#505862] bg-[#505862]/10"),children:u}),i.jsx("span",{className:"text-[9px] font-sans text-[#6e7681] truncate flex-1",children:d})]},o)}),i.jsx("div",{className:"h-1.5"})]}):i.jsx("div",{className:"px-2.5 py-3",children:i.jsx("span",{className:"text-[9px] font-mono text-[#333842]",children:"Awaiting activity..."})})]})})}const GP={running:"LIVE",starting:"INIT",stopped:"IDLE",crashed:"ERR",completed:"DONE",killed:"KILL",rotating:"ROT"},Wb=v.memo(({data:t,selected:n})=>{const{agent:s}=t,l=s.status==="running"||s.status==="starting",o=Math.round((s.contextUsage||0)*100),u=Ff(s.status),d=s.tokensUsed||0,[O,m]=v.useState(!1);return i.jsxs("div",{className:"relative",onMouseEnter:()=>m(!0),onMouseLeave:()=>m(!1),children:[i.jsxs("div",{className:"w-[220px] overflow-hidden transition-all duration-150",style:{background:"#1c1f26",border:`1px solid ${n?"#2e323a":"#262a32"}`,borderRadius:4},children:[i.jsx(Gn,{id:"top",type:"target",position:Ln.Top,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"bottom",type:"target",position:Ln.Bottom,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"left",type:"target",position:Ln.Left,className:"!w-1 !h-1 !bg-transparent !border-0"}),i.jsx(Gn,{id:"right",type:"target",position:Ln.Right,className:"!w-1 !h-1 !bg-transparent !border-0"}),l&&i.jsx("div",{className:"absolute inset-0 overflow-hidden pointer-events-none",style:{borderRadius:3},children:i.jsx("div",{className:"absolute left-0 right-0 h-px",style:{background:"linear-gradient(90deg, transparent 0%, rgba(97,175,239,0.25) 50%, transparent 100%)",animation:"node-scan 3s ease-in-out infinite"}})}),i.jsxs("div",{className:"px-3 pt-2.5 pb-1.5",children:[i.jsxs("div",{className:"flex items-center gap-2",children:[i.jsxs("span",{className:"relative flex-shrink-0 w-[6px] h-[6px]",children:[i.jsx("span",{className:"absolute inset-0 rounded-sm",style:{background:u}}),l&&i.jsx("span",{className:"absolute inset-[-2px] rounded-sm",style:{background:u,opacity:.15,animation:"node-pulse-bar 2s ease-in-out infinite"}})]}),i.jsx("span",{className:"text-[12px] font-semibold text-[#e6e6e6] font-sans truncate flex-1 leading-none",children:s.name}),i.jsx("span",{className:"text-[7px] font-mono font-bold uppercase tracking-wider px-1 py-px rounded-sm",style:{color:u,background:u+"12"},children:GP[s.status]||s.status})]}),i.jsxs("div",{className:"flex items-center gap-1.5 mt-1.5",children:[i.jsx("span",{className:"text-[9px] font-mono text-[#505862] uppercase tracking-[0.05em]",children:s.role}),i.jsx("span",{className:"text-[9px] text-[#2a2e36]",children:"/"}),i.jsx("span",{className:"text-[9px] font-mono text-[#505862]",children:MP(s.model)})]})]}),i.jsxs("div",{className:"px-3 pt-1 pb-2",children:[i.jsxs("div",{className:"flex items-baseline gap-1.5",children:[i.jsx("span",{className:"text-[14px] font-mono font-medium text-[#bcc2cd] leading-none",children:rt(d)}),i.jsx("span",{className:"text-[8px] font-mono text-[#505862]",children:"tok"}),i.jsx("span",{className:"flex-1"}),i.jsxs("span",{className:"text-[9px] font-mono text-[#505862]",children:[o,"%"]})]}),i.jsx("div",{className:"mt-1.5 h-[2px] rounded-sm bg-[#262a32] overflow-hidden",children:i.jsx("div",{className:"h-full rounded-sm transition-all duration-700",style:{width:`${Math.max(o,1)}%`,background:o>80?"#e06c75":o>60?"#e5c07b":l?"#61afef":"#333842"}})})]})]}),O&&i.jsx(UP,{agent:s})]})});Wb.displayName="AgentNode";const Bb=v.memo(({data:t})=>{const{agentCount:n,runningCount:s}=t,l=s>0,o={background:"transparent",border:0,width:2,height:2};return i.jsxs("div",{className:"relative flex items-center justify-center",style:{width:84,height:84},children:[i.jsx("div",{className:le("absolute inset-0 rounded-full transition-all duration-500",l&&"animate-[spin-slow_30s_linear_infinite]"),style:{border:`1px dashed ${l?"rgba(97,175,239,0.5)":"rgba(97,175,239,0.25)"}`}}),i.jsx("div",{className:"absolute inset-[10px] rounded-full",style:{background:l?"radial-gradient(circle, rgba(97,175,239,0.15) 0%, transparent 70%)":"radial-gradient(circle, rgba(97,175,239,0.05) 0%, transparent 70%)",animation:l?"node-pulse-bar 2.5s ease-in-out infinite":"none"}}),i.jsx("div",{className:le("w-14 h-14 rounded-full flex items-center justify-center relative z-10 transition-all duration-300",l?"bg-[#1c1f26] border-2 border-[#61afef]/35 shadow-[0_0_28px_rgba(97,175,239,0.15)]":"bg-[#1c1f26] border border-[#61afef]/20"),children:i.jsx("img",{src:"/favicon.png",alt:"G",className:le("h-7 w-7 rounded-full transition-opacity",l?"opacity-90":"opacity-60")})}),n>0&&i.jsx("div",{className:le("absolute z-20 min-w-[20px] h-[20px] rounded-sm flex items-center justify-center","text-[10px] font-mono font-bold px-1 transition-all duration-300",l?"bg-[#1c1f26] text-[#61afef] border border-[#61afef]/40":"bg-[#1c1f26] text-[#61afef]/60 border border-[#61afef]/20"),style:{bottom:2,right:2},children:n}),i.jsx(Gn,{id:"bottom",type:"source",position:Ln.Bottom,style:o}),i.jsx(Gn,{id:"right",type:"source",position:Ln.Right,style:o}),i.jsx(Gn,{id:"left",type:"source",position:Ln.Left,style:o}),i.jsx(Gn,{id:"top",type:"source",position:Ln.Top,style:o})]})});Bb.displayName="RootNode";const LP={primary:"bg-accent/20 text-accent border border-accent/25 hover:bg-accent/30 font-medium",secondary:"bg-surface-5/40 text-text-1 border border-border-subtle hover:bg-surface-5/70 hover:text-text-0",ghost:"bg-transparent text-text-2 border border-transparent hover:bg-surface-5/50 hover:text-text-0",danger:"bg-danger/12 text-danger border border-danger/15 hover:bg-danger/20",info:"bg-info/12 text-info border border-info/15 hover:bg-info/20",outline:"bg-transparent text-accent border border-accent/30 hover:bg-accent/10"},DP={sm:"h-7 px-2.5 text-xs gap-1.5 rounded",md:"h-8 px-3 text-sm gap-2 rounded",lg:"h-9 px-4 text-sm gap-2 rounded",icon:"h-8 w-8 rounded"},je=v.forwardRef(({className:t,variant:n="secondary",size:s="md",children:l,...o},u)=>i.jsx("button",{ref:u,className:le("inline-flex items-center justify-center font-sans transition-colors duration-100","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-accent","disabled:opacity-40 disabled:pointer-events-none","cursor-pointer select-none",LP[n],DP[s],t),...o,children:l}));je.displayName="Button";const WP={default:"bg-surface-4 text-text-2",accent:"bg-accent/12 text-accent",success:"bg-success/12 text-success",warning:"bg-warning/12 text-warning",danger:"bg-danger/12 text-danger",info:"bg-info/12 text-info",purple:"bg-purple/12 text-purple",orange:"bg-orange/12 text-orange"};function We({children:t,variant:n="default",className:s,dot:l,...o}){return i.jsxs("span",{className:le("inline-flex items-center gap-1 px-1.5 py-0.5","text-2xs font-semibold uppercase tracking-wider rounded","font-sans select-none whitespace-nowrap",WP[n],s),...o,children:[l&&i.jsx("span",{className:le("w-1.5 h-1.5 rounded-full",l==="pulse"&&"animate-pulse"),style:{background:"currentColor"}}),t]})}const BP={agentNode:Wb,rootNode:Bb},Kg=220,Jg=82,_o=260,gO=130,Mn=4,Fa="__groove_root__";function bO(){try{return JSON.parse(localStorage.getItem("groove:nodePositions")||"{}")}catch{return{}}}function HP(t){try{localStorage.setItem("groove:nodePositions",JSON.stringify(t))}catch{}}function IP(){const t=D(N=>N.teams),n=D(N=>N.activeTeamId),s=D(N=>N.agents),l=D(N=>N.switchTeam),o=D(N=>N.createTeam),u=D(N=>N.deleteTeam),d=D(N=>N.renameTeam),[O,m]=v.useState(!1),[p,x]=v.useState(""),[g,b]=v.useState(null),[S,Q]=v.useState(""),k=v.useRef(!1);function T(){const N=p.trim();!N||k.current||(k.current=!0,x(""),m(!1),o(N).finally(()=>{k.current=!1}))}function j(N){b(N.id),Q(N.name)}function P(){const N=S.trim();if(!N||!g){b(null);return}d(g,N),b(null)}return i.jsxs("div",{className:"flex items-end px-0 pt-0 pb-0 bg-surface-1 border-b border-border gap-0 flex-shrink-0",children:[t.map(N=>{const A=s.filter($=>$.teamId===N.id).length,U=N.id===n,C=g===N.id,X=s.filter($=>$.teamId===N.id&&($.status==="running"||$.status==="starting")).length;return i.jsxs("div",{onClick:()=>!C&&l(N.id),onDoubleClick:()=>j(N),className:le("group relative flex items-center gap-2 px-4 h-9 text-xs font-sans cursor-pointer select-none transition-colors",U?"bg-surface-0 text-text-0 font-semibold border-x border-x-border":"text-text-3 hover:text-text-1 hover:bg-surface-3/50"),children:[U&&i.jsx("div",{className:"absolute top-0 left-0 right-0 h-px bg-accent",style:{height:"0.5px"}}),i.jsx(Zc,{size:13,className:U?"text-accent":"text-text-4"}),C?i.jsx("input",{value:S,onChange:$=>Q($.target.value),onKeyDown:$=>{$.key==="Enter"&&P(),$.key==="Escape"&&b(null)},onBlur:P,className:"h-5 w-24 px-1.5 text-xs bg-surface-0 border border-accent rounded text-text-0 font-sans focus:outline-none",autoFocus:!0,onClick:$=>$.stopPropagation()}):i.jsx("span",{className:"truncate max-w-[120px]",children:N.name}),A>0&&!C&&i.jsx("span",{className:le("flex items-center justify-center min-w-[18px] h-[18px] px-1 rounded-full text-2xs font-mono font-semibold",X>0?"bg-accent/15 text-accent":"bg-surface-4 text-text-3"),children:A}),!C&&i.jsxs("div",{className:"flex items-center gap-0.5 ml-0.5 opacity-0 group-hover:opacity-100 transition-opacity",children:[i.jsx("button",{onClick:$=>{$.stopPropagation(),j(N)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-text-1 cursor-pointer",title:"Rename team",children:i.jsx(Cc,{size:10})}),!N.isDefault&&i.jsx("button",{onClick:$=>{$.stopPropagation(),u(N.id)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-danger cursor-pointer",title:"Delete team",children:i.jsx(Rt,{size:10})})]}),U&&i.jsx("div",{className:"absolute bottom-[-1px] left-0 right-0 h-px bg-surface-0"})]},N.id)}),O?i.jsxs("div",{className:"flex items-center gap-1.5 px-3 h-9 bg-surface-3/50",children:[i.jsx("input",{value:p,onChange:N=>x(N.target.value),onKeyDown:N=>{N.key==="Enter"&&T(),N.key==="Escape"&&(m(!1),x(""))},placeholder:"Team name...",className:"h-5 w-28 px-1.5 text-xs bg-surface-0 border border-border-subtle rounded text-text-0 font-sans placeholder:text-text-4 focus:outline-none focus:ring-1 focus:ring-accent",autoFocus:!0}),i.jsx("button",{onClick:T,disabled:!p.trim(),className:"p-1 rounded text-accent hover:bg-accent/10 cursor-pointer disabled:opacity-30 disabled:cursor-not-allowed",children:i.jsx(oa,{size:12})}),i.jsx("button",{onClick:()=>{m(!1),x("")},className:"p-1 rounded text-text-4 hover:text-text-1 cursor-pointer",children:i.jsx(Rt,{size:12})})]}):i.jsx("button",{onClick:()=>m(!0),className:"flex items-center justify-center w-9 h-9 text-text-4 hover:text-text-1 hover:bg-surface-3/50 cursor-pointer transition-colors",title:"New team",children:i.jsx(Fn,{size:14})})]})}function FP(){const t=D(C=>C.agents),n=D(C=>C.activeTeamId),s=D(C=>C.tokenTimeline),l=D(C=>C.selectAgent),o=D(C=>C.closeDetail),u=v.useMemo(()=>t.filter(C=>C.teamId===n),[t,n]),{fitView:d}=xj(),[O,m]=v.useState(0),p=v.useMemo(()=>{const C=bO(),X=u.filter(re=>re.status==="running").length,$=[{id:Fa,type:"rootNode",position:C[Fa]||{x:0,y:0},data:{agentCount:u.length,runningCount:X},draggable:!0,selectable:!1}],W=new Set,E=(re,xe)=>`${Math.round(re/100)},${Math.round(xe/100)}`,ne=[];u.forEach((re,xe)=>{const ie=re.name||re.id;if(C[ie]){const J=C[ie];W.add(E(J.x,J.y)),$.push({id:re.id,type:"agentNode",position:J,data:{agent:re,timeline:s[re.id]||[]},draggable:!0,selectable:!0})}else ne.push({agent:re,index:xe})});for(const{agent:re,index:xe}of ne){const ie=Math.floor(xe/Mn),J=xe%Mn;let I={x:-((Math.min(u.length-ie*Mn,Mn)-1)*_o)/2+J*_o,y:140+ie*gO};for(;W.has(E(I.x,I.y));)I={x:I.x,y:I.y+gO};W.add(E(I.x,I.y)),$.push({id:re.id,type:"agentNode",position:I,data:{agent:re,timeline:s[re.id]||[]},draggable:!0,selectable:!0})}return $},[u,s]),x=v.useMemo(()=>{const C=bO(),X=C[Fa]||{x:0,y:0};return u.map(($,W)=>{const E=$.name||$.id,ne=Math.floor(W/Mn),re=W%Mn,ie=-((Math.min(u.length-ne*Mn,Mn)-1)*_o)/2,J=C[E]||{x:ie+re*_o,y:140+ne*gO},z=J.x+Kg/2-X.x,B=J.y+Jg/2-X.y;let I,fe;return Math.abs(B)>Math.abs(z)?(I=B>0?"bottom":"top",fe=B>0?"top":"bottom"):(I=z>0?"right":"left",fe=z>0?"left":"right"),{id:`e-${Fa}-${$.id}`,source:Fa,target:$.id,sourceHandle:I,targetHandle:fe,type:"default",animated:$.status==="running"}})},[u]),[g,b,S]=gj(p),[Q,k,T]=bj(x),j=v.useRef(new Set);v.useEffect(()=>{b(C=>{const X=new Map(C.map($=>[$.id,$]));return new Set(p.map($=>$.id)),p.map($=>{const W=X.get($.id);return W?{...W,data:$.data}:$})})},[p,b]),v.useEffect(()=>{k(x)},[x,k]),v.useEffect(()=>{const C=new Set(u.map($=>$.id)),X=u.length>0&&[...C].some($=>!j.current.has($));j.current=C,O===0&&u.length>0?setTimeout(()=>d({padding:.3,maxZoom:1.2,duration:0}),50):X&&setTimeout(()=>d({padding:.3,maxZoom:1.2,duration:300}),100),m(u.length)},[u.length,u,O,d]);const P=v.useCallback((C,X)=>{X.id!==Fa&&l(X.id)},[l]),N=v.useCallback(()=>{o()},[o]),A=v.useCallback((C,X)=>{const $=g.find(E=>E.id===Fa);if(!$)return;const W=$.position;k(E=>E.map(ne=>{const re=ne.source===X.id,xe=ne.target===X.id;if(!re&&!xe)return ne;const ie=X.position,J=ie.x+Kg/2-W.x,z=ie.y+Jg/2-W.y;let B,I;return Math.abs(z)>Math.abs(J)?(B=z>0?"bottom":"top",I=z>0?"top":"bottom"):(B=J>0?"right":"left",I=J>0?"left":"right"),{...ne,sourceHandle:B,targetHandle:I}}))},[g,k]),U=v.useCallback((C,X)=>{const $=u.find(ne=>ne.id===X.id),W=X.id===Fa?Fa:($==null?void 0:$.name)||X.id,E=bO();E[W]=X.position,HP(E)},[u]);return i.jsx(vj,{nodes:g,edges:Q,nodeTypes:BP,onNodesChange:S,onEdgesChange:T,onNodeClick:P,onPaneClick:N,onNodeDrag:A,onNodeDragStop:U,defaultViewport:{x:0,y:0,zoom:1.2},proOptions:{hideAttribution:!0},minZoom:.2,maxZoom:1.5,className:"bg-surface-2",children:i.jsx(yj,{color:"rgba(97,175,239,0.03)",gap:24,size:1})})}function KP({onPlanner:t,onSpawn:n}){return i.jsx("div",{className:"w-full h-full flex items-center justify-center",children:i.jsxs("div",{className:"max-w-2xl w-full text-center space-y-10 px-8",children:[i.jsxs("div",{className:"relative mx-auto w-20 h-20",children:[i.jsx("div",{className:"absolute inset-0 rounded-full bg-accent/8 animate-pulse"}),i.jsx("div",{className:"absolute inset-1 rounded-full bg-surface-3 border border-border-subtle flex items-center justify-center shadow-lg shadow-accent/5",children:i.jsx("img",{src:"/favicon.png",alt:"Groove",className:"h-10 w-10 rounded-full"})})]}),i.jsxs("div",{className:"space-y-3",children:[i.jsx("h1",{className:"text-3xl font-bold text-text-0 font-sans tracking-tight",children:"Welcome to Groove"}),i.jsx("p",{className:"text-base text-text-2 font-sans max-w-md mx-auto leading-relaxed",children:"Your mission control for AI agents. Spawn, orchestrate, and ship faster than ever."})]}),i.jsxs("div",{className:"space-y-3 max-w-xl mx-auto",children:[i.jsxs("button",{onClick:t,className:"w-full flex items-center gap-4 p-5 rounded-lg border border-accent/25 bg-gradient-to-r from-accent/8 to-accent/3 hover:from-accent/14 hover:to-accent/6 hover:border-accent/40 transition-all cursor-pointer group text-left",children:[i.jsx("div",{className:"w-12 h-12 rounded-lg bg-accent/20 flex items-center justify-center group-hover:scale-110 transition-transform flex-shrink-0",children:i.jsx(Na,{size:24,className:"text-accent"})}),i.jsxs("div",{className:"flex-1 min-w-0",children:[i.jsx("div",{className:"text-base font-semibold text-text-0 font-sans",children:"Start with a Planner"}),i.jsx("div",{className:"text-sm text-text-2 font-sans mt-0.5",children:"Describe what you want to build and let AI plan the perfect team"})]}),i.jsx("div",{className:"text-accent text-xs font-semibold font-sans flex-shrink-0 opacity-60 group-hover:opacity-100 transition-opacity",children:"Recommended"})]}),i.jsxs("button",{onClick:n,className:"w-full flex items-center gap-3 p-4 rounded-lg border border-border bg-surface-1 hover:bg-surface-2 hover:border-border transition-all cursor-pointer group text-left",children:[i.jsx("div",{className:"w-10 h-10 rounded-lg bg-surface-4 flex items-center justify-center group-hover:scale-110 transition-transform flex-shrink-0",children:i.jsx(Fn,{size:20,className:"text-text-1"})}),i.jsxs("div",{className:"min-w-0",children:[i.jsx("div",{className:"text-sm font-semibold text-text-0 font-sans",children:"Spawn Agent"}),i.jsx("div",{className:"text-xs text-text-3 font-sans mt-0.5",children:"Choose a role and configure"})]})]})]}),i.jsxs("p",{className:"text-xs text-text-4 font-sans",children:[i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+K"}),i.jsx("span",{className:"mx-1.5",children:"command palette"}),i.jsx("span",{className:"text-text-4 mx-1",children:"·"}),i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+N"}),i.jsx("span",{className:"mx-1.5",children:"spawn"}),i.jsx("span",{className:"text-text-4 mx-1",children:"·"}),i.jsx("kbd",{className:"font-mono bg-surface-4 px-1.5 py-0.5 rounded text-text-3",children:"Cmd+J"}),i.jsx("span",{className:"mx-1.5",children:"terminal"})]})]})})}const JP={backend:Mb,frontend:Df,fullstack:dn,testing:If,security:Fr};function eN(){var p;const t=D(x=>x.recommendedTeam),n=D(x=>x.launchRecommendedTeam);D(x=>x.checkRecommendedTeam);const[s,l]=v.useState(!1);if(!((p=t==null?void 0:t.agents)!=null&&p.length))return null;const o=t.agents,u=o.filter(x=>!x.phase||x.phase===1),d=o.filter(x=>x.phase===2);async function O(){l(!0);try{await n()}catch{}l(!1)}function m(){D.setState({recommendedTeam:null})}return i.jsx("div",{className:"absolute bottom-4 left-1/2 -translate-x-1/2 z-50 w-full max-w-lg",children:i.jsxs("div",{className:"mx-4 rounded-lg border border-accent/30 bg-surface-2/95 backdrop-blur-md shadow-xl shadow-accent/5 overflow-hidden",children:[i.jsxs("div",{className:"px-4 py-3 border-b border-border-subtle flex items-center gap-2",children:[i.jsx(qb,{size:16,className:"text-accent"}),i.jsx("span",{className:"text-sm font-semibold text-text-0 font-sans flex-1",children:"Planner Recommends a Team"}),i.jsx("button",{onClick:m,className:"text-text-4 hover:text-text-1 cursor-pointer",children:i.jsx(Rt,{size:14})})]}),i.jsxs("div",{className:"px-4 py-3 space-y-2",children:[i.jsx("div",{className:"flex flex-wrap gap-2",children:u.map((x,g)=>{var S;const b=JP[x.role]||dn;return i.jsxs("div",{className:"flex items-center gap-1.5 px-2.5 py-1.5 rounded-md bg-surface-4 border border-border-subtle",children:[i.jsx(b,{size:12,className:"text-text-2"}),i.jsx("span",{className:"text-xs font-semibold text-text-0 font-sans capitalize",children:x.name||x.role}),((S=x.scope)==null?void 0:S.length)>0&&i.jsxs("span",{className:"text-2xs text-text-4 font-mono",children:[x.scope[0],x.scope.length>1?` +${x.scope.length-1}`:""]})]},g)})}),t.projectDir&&i.jsxs("div",{className:"flex items-center gap-1.5 text-2xs text-text-2 font-mono",children:[i.jsx("span",{className:"text-text-4",children:"Project:"}),i.jsxs("span",{className:"text-accent",children:[t.projectDir,"/"]})]}),d.length>0&&i.jsxs("div",{className:"flex items-center gap-1.5 text-2xs text-text-3 font-sans",children:[i.jsx(Fr,{size:10}),i.jsxs("span",{children:[d.length," QC agent",d.length>1?"s":""," will auto-spawn after builders complete"]})]})]}),i.jsx("div",{className:"px-4 py-3 border-t border-border-subtle",children:i.jsxs(je,{variant:"primary",size:"md",onClick:O,disabled:s,className:"w-full gap-2",children:[i.jsx(Na,{size:14}),s?"Launching...":`Launch ${u.length} Agent${u.length>1?"s":""}`]})})]})})}function e1(){const t=D(b=>b.agents),n=D(b=>b.activeTeamId),s=D(b=>b.openDetail),l=D(b=>b.spawnAgent),o=D(b=>b.selectAgent);D(b=>b.recommendedTeam);const u=D(b=>b.checkRecommendedTeam);v.useEffect(()=>{if(!t.some(Q=>Q.role==="planner"&&(Q.status==="running"||Q.status==="starting")))return;const S=setInterval(()=>u(),5e3);return()=>clearInterval(S)},[t,u]);async function d(){try{const b=await l({role:"planner"});b!=null&&b.id&&o(b.id)}catch{}}const O=t.filter(b=>b.teamId===n),m=D(b=>b.hydrated),[p,x]=v.useState(!0);v.useEffect(()=>{const b=setTimeout(()=>x(!1),1200);return()=>clearTimeout(b)},[]);const g=p||!m;return i.jsxs("div",{className:"flex flex-col h-full relative",children:[i.jsx(IP,{}),i.jsx("div",{className:"flex-1 min-h-0",children:g?i.jsxs("div",{className:le("flex flex-col items-center justify-center h-full transition-opacity duration-500",!p&&m?"opacity-0":"opacity-100"),children:[i.jsxs("div",{className:"relative w-12 h-12 mb-5",children:[i.jsx("span",{className:"absolute inset-0 rounded-full border-2 border-accent/20 animate-ping",style:{animationDuration:"2s"}}),i.jsx("span",{className:"absolute inset-0 rounded-full border-2 border-transparent border-t-accent animate-spin",style:{animationDuration:"1s"}}),i.jsx("span",{className:"absolute inset-[6px] rounded-full bg-accent/8 flex items-center justify-center",children:i.jsx(Na,{size:16,className:"text-accent animate-pulse"})})]}),i.jsx("p",{className:"text-sm font-medium text-text-1 font-sans animate-pulse",children:"Connecting to agents"}),i.jsx("p",{className:"text-xs text-text-3 font-sans mt-1",children:"Syncing with daemon..."})]}):O.length===0?i.jsx(KP,{onPlanner:d,onSpawn:()=>s({type:"spawn"})}):i.jsx(pj,{children:i.jsx(FP,{})})}),i.jsx(eN,{})]})}var tN=v.createContext(void 0);function Jf(t){const n=v.useContext(tN);return t||n||"ltr"}function aN(t,[n,s]){return Math.min(s,Math.max(n,t))}function nN(t,n){return v.useReducer((s,l)=>n[s][l]??s,t)}var eh="ScrollArea",[Hb]=Ns(eh),[sN,ca]=Hb(eh),Ib=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,type:l="hover",dir:o,scrollHideDelay:u=600,...d}=t,[O,m]=v.useState(null),[p,x]=v.useState(null),[g,b]=v.useState(null),[S,Q]=v.useState(null),[k,T]=v.useState(null),[j,P]=v.useState(0),[N,A]=v.useState(0),[U,C]=v.useState(!1),[X,$]=v.useState(!1),W=it(n,ne=>m(ne)),E=Jf(o);return i.jsx(sN,{scope:s,type:l,dir:E,scrollHideDelay:u,scrollArea:O,viewport:p,onViewportChange:x,content:g,onContentChange:b,scrollbarX:S,onScrollbarXChange:Q,scrollbarXEnabled:U,onScrollbarXEnabledChange:C,scrollbarY:k,onScrollbarYChange:T,scrollbarYEnabled:X,onScrollbarYEnabledChange:$,onCornerWidthChange:P,onCornerHeightChange:A,children:i.jsx(Be.div,{dir:E,...d,ref:W,style:{position:"relative","--radix-scroll-area-corner-width":j+"px","--radix-scroll-area-corner-height":N+"px",...t.style}})})});Ib.displayName=eh;var Fb="ScrollAreaViewport",Kb=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,children:l,nonce:o,...u}=t,d=ca(Fb,s),O=v.useRef(null),m=it(n,O,d.onViewportChange);return i.jsxs(i.Fragment,{children:[i.jsx("style",{dangerouslySetInnerHTML:{__html:"[data-radix-scroll-area-viewport]{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;}[data-radix-scroll-area-viewport]::-webkit-scrollbar{display:none}"},nonce:o}),i.jsx(Be.div,{"data-radix-scroll-area-viewport":"",...u,ref:m,style:{overflowX:d.scrollbarXEnabled?"scroll":"hidden",overflowY:d.scrollbarYEnabled?"scroll":"hidden",...t.style},children:i.jsx("div",{ref:d.onContentChange,style:{minWidth:"100%",display:"table"},children:l})})]})});Kb.displayName=Fb;var za="ScrollAreaScrollbar",Jb=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),{onScrollbarXEnabledChange:u,onScrollbarYEnabledChange:d}=o,O=t.orientation==="horizontal";return v.useEffect(()=>(O?u(!0):d(!0),()=>{O?u(!1):d(!1)}),[O,u,d]),o.type==="hover"?i.jsx(lN,{...l,ref:n,forceMount:s}):o.type==="scroll"?i.jsx(rN,{...l,ref:n,forceMount:s}):o.type==="auto"?i.jsx(ev,{...l,ref:n,forceMount:s}):o.type==="always"?i.jsx(th,{...l,ref:n}):null});Jb.displayName=za;var lN=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),[u,d]=v.useState(!1);return v.useEffect(()=>{const O=o.scrollArea;let m=0;if(O){const p=()=>{window.clearTimeout(m),d(!0)},x=()=>{m=window.setTimeout(()=>d(!1),o.scrollHideDelay)};return O.addEventListener("pointerenter",p),O.addEventListener("pointerleave",x),()=>{window.clearTimeout(m),O.removeEventListener("pointerenter",p),O.removeEventListener("pointerleave",x)}}},[o.scrollArea,o.scrollHideDelay]),i.jsx(ba,{present:s||u,children:i.jsx(ev,{"data-state":u?"visible":"hidden",...l,ref:n})})}),rN=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=ca(za,t.__scopeScrollArea),u=t.orientation==="horizontal",d=qc(()=>m("SCROLL_END"),100),[O,m]=nN("hidden",{hidden:{SCROLL:"scrolling"},scrolling:{SCROLL_END:"idle",POINTER_ENTER:"interacting"},interacting:{SCROLL:"interacting",POINTER_LEAVE:"idle"},idle:{HIDE:"hidden",SCROLL:"scrolling",POINTER_ENTER:"interacting"}});return v.useEffect(()=>{if(O==="idle"){const p=window.setTimeout(()=>m("HIDE"),o.scrollHideDelay);return()=>window.clearTimeout(p)}},[O,o.scrollHideDelay,m]),v.useEffect(()=>{const p=o.viewport,x=u?"scrollLeft":"scrollTop";if(p){let g=p[x];const b=()=>{const S=p[x];g!==S&&(m("SCROLL"),d()),g=S};return p.addEventListener("scroll",b),()=>p.removeEventListener("scroll",b)}},[o.viewport,u,m,d]),i.jsx(ba,{present:s||O!=="hidden",children:i.jsx(th,{"data-state":O==="hidden"?"hidden":"visible",...l,ref:n,onPointerEnter:Ee(t.onPointerEnter,()=>m("POINTER_ENTER")),onPointerLeave:Ee(t.onPointerLeave,()=>m("POINTER_LEAVE"))})})}),ev=v.forwardRef((t,n)=>{const s=ca(za,t.__scopeScrollArea),{forceMount:l,...o}=t,[u,d]=v.useState(!1),O=t.orientation==="horizontal",m=qc(()=>{if(s.viewport){const p=s.viewport.offsetWidth<s.viewport.scrollWidth,x=s.viewport.offsetHeight<s.viewport.scrollHeight;d(O?p:x)}},10);return zl(s.viewport,m),zl(s.content,m),i.jsx(ba,{present:l||u,children:i.jsx(th,{"data-state":u?"visible":"hidden",...o,ref:n})})}),th=v.forwardRef((t,n)=>{const{orientation:s="vertical",...l}=t,o=ca(za,t.__scopeScrollArea),u=v.useRef(null),d=v.useRef(0),[O,m]=v.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),p=lv(O.viewport,O.content),x={...l,sizes:O,onSizesChange:m,hasThumb:p>0&&p<1,onThumbChange:b=>u.current=b,onThumbPointerUp:()=>d.current=0,onThumbPointerDown:b=>d.current=b};function g(b,S){return ON(b,d.current,O,S)}return s==="horizontal"?i.jsx(iN,{...x,ref:n,onThumbPositionChange:()=>{if(o.viewport&&u.current){const b=o.viewport.scrollLeft,S=t1(b,O,o.dir);u.current.style.transform=`translate3d(${S}px, 0, 0)`}},onWheelScroll:b=>{o.viewport&&(o.viewport.scrollLeft=b)},onDragScroll:b=>{o.viewport&&(o.viewport.scrollLeft=g(b,o.dir))}}):s==="vertical"?i.jsx(oN,{...x,ref:n,onThumbPositionChange:()=>{if(o.viewport&&u.current){const b=o.viewport.scrollTop,S=t1(b,O);u.current.style.transform=`translate3d(0, ${S}px, 0)`}},onWheelScroll:b=>{o.viewport&&(o.viewport.scrollTop=b)},onDragScroll:b=>{o.viewport&&(o.viewport.scrollTop=g(b))}}):null}),iN=v.forwardRef((t,n)=>{const{sizes:s,onSizesChange:l,...o}=t,u=ca(za,t.__scopeScrollArea),[d,O]=v.useState(),m=v.useRef(null),p=it(n,m,u.onScrollbarXChange);return v.useEffect(()=>{m.current&&O(getComputedStyle(m.current))},[m]),i.jsx(av,{"data-orientation":"horizontal",...o,ref:p,sizes:s,style:{bottom:0,left:u.dir==="rtl"?"var(--radix-scroll-area-corner-width)":0,right:u.dir==="ltr"?"var(--radix-scroll-area-corner-width)":0,"--radix-scroll-area-thumb-width":Ec(s)+"px",...t.style},onThumbPointerDown:x=>t.onThumbPointerDown(x.x),onDragScroll:x=>t.onDragScroll(x.x),onWheelScroll:(x,g)=>{if(u.viewport){const b=u.viewport.scrollLeft+x.deltaX;t.onWheelScroll(b),iv(b,g)&&x.preventDefault()}},onResize:()=>{m.current&&u.viewport&&d&&l({content:u.viewport.scrollWidth,viewport:u.viewport.offsetWidth,scrollbar:{size:m.current.clientWidth,paddingStart:Oc(d.paddingLeft),paddingEnd:Oc(d.paddingRight)}})}})}),oN=v.forwardRef((t,n)=>{const{sizes:s,onSizesChange:l,...o}=t,u=ca(za,t.__scopeScrollArea),[d,O]=v.useState(),m=v.useRef(null),p=it(n,m,u.onScrollbarYChange);return v.useEffect(()=>{m.current&&O(getComputedStyle(m.current))},[m]),i.jsx(av,{"data-orientation":"vertical",...o,ref:p,sizes:s,style:{top:0,right:u.dir==="ltr"?0:void 0,left:u.dir==="rtl"?0:void 0,bottom:"var(--radix-scroll-area-corner-height)","--radix-scroll-area-thumb-height":Ec(s)+"px",...t.style},onThumbPointerDown:x=>t.onThumbPointerDown(x.y),onDragScroll:x=>t.onDragScroll(x.y),onWheelScroll:(x,g)=>{if(u.viewport){const b=u.viewport.scrollTop+x.deltaY;t.onWheelScroll(b),iv(b,g)&&x.preventDefault()}},onResize:()=>{m.current&&u.viewport&&d&&l({content:u.viewport.scrollHeight,viewport:u.viewport.offsetHeight,scrollbar:{size:m.current.clientHeight,paddingStart:Oc(d.paddingTop),paddingEnd:Oc(d.paddingBottom)}})}})}),[cN,tv]=Hb(za),av=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,sizes:l,hasThumb:o,onThumbChange:u,onThumbPointerUp:d,onThumbPointerDown:O,onThumbPositionChange:m,onDragScroll:p,onWheelScroll:x,onResize:g,...b}=t,S=ca(za,s),[Q,k]=v.useState(null),T=it(n,W=>k(W)),j=v.useRef(null),P=v.useRef(""),N=S.viewport,A=l.content-l.viewport,U=zt(x),C=zt(m),X=qc(g,10);function $(W){if(j.current){const E=W.clientX-j.current.left,ne=W.clientY-j.current.top;p({x:E,y:ne})}}return v.useEffect(()=>{const W=E=>{const ne=E.target;(Q==null?void 0:Q.contains(ne))&&U(E,A)};return document.addEventListener("wheel",W,{passive:!1}),()=>document.removeEventListener("wheel",W,{passive:!1})},[N,Q,A,U]),v.useEffect(C,[l,C]),zl(Q,X),zl(S.content,X),i.jsx(cN,{scope:s,scrollbar:Q,hasThumb:o,onThumbChange:zt(u),onThumbPointerUp:zt(d),onThumbPositionChange:C,onThumbPointerDown:zt(O),children:i.jsx(Be.div,{...b,ref:T,style:{position:"absolute",...b.style},onPointerDown:Ee(t.onPointerDown,W=>{W.button===0&&(W.target.setPointerCapture(W.pointerId),j.current=Q.getBoundingClientRect(),P.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",S.viewport&&(S.viewport.style.scrollBehavior="auto"),$(W))}),onPointerMove:Ee(t.onPointerMove,$),onPointerUp:Ee(t.onPointerUp,W=>{const E=W.target;E.hasPointerCapture(W.pointerId)&&E.releasePointerCapture(W.pointerId),document.body.style.webkitUserSelect=P.current,S.viewport&&(S.viewport.style.scrollBehavior=""),j.current=null})})})}),dc="ScrollAreaThumb",nv=v.forwardRef((t,n)=>{const{forceMount:s,...l}=t,o=tv(dc,t.__scopeScrollArea);return i.jsx(ba,{present:s||o.hasThumb,children:i.jsx(uN,{ref:n,...l})})}),uN=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,style:l,...o}=t,u=ca(dc,s),d=tv(dc,s),{onThumbPositionChange:O}=d,m=it(n,g=>d.onThumbChange(g)),p=v.useRef(void 0),x=qc(()=>{p.current&&(p.current(),p.current=void 0)},100);return v.useEffect(()=>{const g=u.viewport;if(g){const b=()=>{if(x(),!p.current){const S=fN(g,O);p.current=S,O()}};return O(),g.addEventListener("scroll",b),()=>g.removeEventListener("scroll",b)}},[u.viewport,x,O]),i.jsx(Be.div,{"data-state":d.hasThumb?"visible":"hidden",...o,ref:m,style:{width:"var(--radix-scroll-area-thumb-width)",height:"var(--radix-scroll-area-thumb-height)",...l},onPointerDownCapture:Ee(t.onPointerDownCapture,g=>{const S=g.target.getBoundingClientRect(),Q=g.clientX-S.left,k=g.clientY-S.top;d.onThumbPointerDown({x:Q,y:k})}),onPointerUp:Ee(t.onPointerUp,d.onThumbPointerUp)})});nv.displayName=dc;var ah="ScrollAreaCorner",sv=v.forwardRef((t,n)=>{const s=ca(ah,t.__scopeScrollArea),l=!!(s.scrollbarX&&s.scrollbarY);return s.type!=="scroll"&&l?i.jsx(dN,{...t,ref:n}):null});sv.displayName=ah;var dN=v.forwardRef((t,n)=>{const{__scopeScrollArea:s,...l}=t,o=ca(ah,s),[u,d]=v.useState(0),[O,m]=v.useState(0),p=!!(u&&O);return zl(o.scrollbarX,()=>{var g;const x=((g=o.scrollbarX)==null?void 0:g.offsetHeight)||0;o.onCornerHeightChange(x),m(x)}),zl(o.scrollbarY,()=>{var g;const x=((g=o.scrollbarY)==null?void 0:g.offsetWidth)||0;o.onCornerWidthChange(x),d(x)}),p?i.jsx(Be.div,{...l,ref:n,style:{width:u,height:O,position:"absolute",right:o.dir==="ltr"?0:void 0,left:o.dir==="rtl"?0:void 0,bottom:0,...t.style}}):null});function Oc(t){return t?parseInt(t,10):0}function lv(t,n){const s=t/n;return isNaN(s)?0:s}function Ec(t){const n=lv(t.viewport,t.content),s=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,l=(t.scrollbar.size-s)*n;return Math.max(l,18)}function ON(t,n,s,l="ltr"){const o=Ec(s),u=o/2,d=n||u,O=o-d,m=s.scrollbar.paddingStart+d,p=s.scrollbar.size-s.scrollbar.paddingEnd-O,x=s.content-s.viewport,g=l==="ltr"?[0,x]:[x*-1,0];return rv([m,p],g)(t)}function t1(t,n,s="ltr"){const l=Ec(n),o=n.scrollbar.paddingStart+n.scrollbar.paddingEnd,u=n.scrollbar.size-o,d=n.content-n.viewport,O=u-l,m=s==="ltr"?[0,d]:[d*-1,0],p=aN(t,m);return rv([0,d],[0,O])(p)}function rv(t,n){return s=>{if(t[0]===t[1]||n[0]===n[1])return n[0];const l=(n[1]-n[0])/(t[1]-t[0]);return n[0]+l*(s-t[0])}}function iv(t,n){return t>0&&t<n}var fN=(t,n=()=>{})=>{let s={left:t.scrollLeft,top:t.scrollTop},l=0;return(function o(){const u={left:t.scrollLeft,top:t.scrollTop},d=s.left!==u.left,O=s.top!==u.top;(d||O)&&n(),s=u,l=window.requestAnimationFrame(o)})(),()=>window.cancelAnimationFrame(l)};function qc(t,n){const s=zt(t),l=v.useRef(0);return v.useEffect(()=>()=>window.clearTimeout(l.current),[]),v.useCallback(()=>{window.clearTimeout(l.current),l.current=window.setTimeout(s,n)},[s,n])}function zl(t,n){const s=zt(n);ln(()=>{let l=0;if(t){const o=new ResizeObserver(()=>{cancelAnimationFrame(l),l=window.requestAnimationFrame(s)});return o.observe(t),()=>{window.cancelAnimationFrame(l),o.unobserve(t)}}},[t,s])}var hN=Ib,mN=Kb,a1=Jb,n1=nv,pN=sv;function Ht({children:t,className:n,...s}){return i.jsxs(hN,{className:le("overflow-hidden",n),...s,children:[i.jsx(mN,{className:"h-full w-full rounded-[inherit]",children:t}),i.jsx(a1,{orientation:"vertical",className:"flex touch-none select-none p-0.5 transition-colors w-2",children:i.jsx(n1,{className:"relative flex-1 rounded-full bg-surface-5 hover:bg-surface-6"})}),i.jsx(a1,{orientation:"horizontal",className:"flex touch-none select-none flex-col p-0.5 transition-colors h-2",children:i.jsx(n1,{className:"relative flex-1 rounded-full bg-surface-5 hover:bg-surface-6"})}),i.jsx(pN,{})]})}const xN={js:"text-warning",jsx:"text-warning",ts:"text-info",tsx:"text-info",css:"text-info",html:"text-orange",json:"text-warning",md:"text-text-2",py:"text-success",rs:"text-orange",go:"text-accent",sh:"text-success",yaml:"text-danger",yml:"text-danger",sql:"text-purple",xml:"text-orange",svg:"text-warning"};function gN(t){var s;const n=(s=t.split(".").pop())==null?void 0:s.toLowerCase();return xN[n]||"text-text-3"}function bN({x:t,y:n,items:s,onClose:l}){const o=v.useRef(null);return v.useEffect(()=>{function u(d){o.current&&!o.current.contains(d.target)&&l()}return document.addEventListener("mousedown",u),()=>document.removeEventListener("mousedown",u)},[l]),i.jsx("div",{ref:o,className:"fixed z-50 min-w-[160px] py-1 bg-surface-2 border border-border rounded-lg shadow-xl",style:{left:t,top:n},children:s.map((u,d)=>u.separator?i.jsx("div",{className:"h-px bg-border-subtle my-1"},d):i.jsxs("button",{onClick:()=>{u.action(),l()},className:le("w-full flex items-center gap-2.5 px-3 py-1.5 text-xs font-sans text-left cursor-pointer transition-colors",u.danger?"text-danger hover:bg-danger/10":"text-text-1 hover:bg-surface-5"),children:[u.icon&&i.jsx(u.icon,{size:12,className:u.danger?"text-danger":"text-text-3"}),u.label]},d))})}function fc({defaultValue:t="",placeholder:n,onSubmit:s,onCancel:l,depth:o=0}){const[u,d]=v.useState(t),O=v.useRef(null);v.useEffect(()=>{var p,x;(p=O.current)==null||p.focus(),t&&((x=O.current)==null||x.select())},[t]);function m(p){if(p.key==="Enter"){const x=u.trim();x&&s(x)}p.key==="Escape"&&l()}return i.jsx("div",{className:"flex items-center py-0.5",style:{paddingLeft:o*16+8},children:i.jsx("input",{ref:O,value:u,onChange:p=>d(p.target.value),onKeyDown:m,onBlur:l,placeholder:n,className:"w-full h-5 px-1.5 text-xs bg-surface-0 border border-accent rounded text-text-0 font-sans focus:outline-none"})})}function ov({entry:t,depth:n=0,activePath:s,onFileClick:l,onDirToggle:o,expanded:u,onContextMenu:d}){const O=t.type==="dir",m=s===t.path,p=u.has(t.path),x=n*16+8;function g(b){b.preventDefault(),b.stopPropagation(),d(b,t)}return i.jsxs("button",{onClick:()=>O?o(t.path):l(t.path),onContextMenu:g,className:le("w-full flex items-center gap-1.5 py-1 text-xs font-sans cursor-pointer","hover:bg-surface-5 transition-colors text-left select-none",m&&"bg-accent/10 text-text-0",!m&&"text-text-1"),style:{paddingLeft:x},children:[O?i.jsxs(i.Fragment,{children:[p?i.jsx(In,{size:12,className:"text-text-4 flex-shrink-0"}):i.jsx(ii,{size:12,className:"text-text-4 flex-shrink-0"}),p?i.jsx(Hr,{size:14,className:"text-accent flex-shrink-0"}):i.jsx(iT,{size:14,className:"text-text-3 flex-shrink-0"})]}):i.jsxs(i.Fragment,{children:[i.jsx("span",{className:"w-3"}),i.jsx(K5,{size:14,className:le("flex-shrink-0",gN(t.name))})]}),i.jsx("span",{className:"truncate",children:t.name})]})}function cv({dirPath:t,depth:n,activePath:s,onFileClick:l,expanded:o,onDirToggle:u,treeCache:d,fetchTreeDir:O,onContextMenu:m,inlineInput:p}){const x=d[t]||[];return v.useEffect(()=>{o.has(t)&&!d[t]&&O(t)},[o,t,d,O]),o.has(t)?i.jsxs(i.Fragment,{children:[(p==null?void 0:p.parentPath)===t&&i.jsx(fc,{placeholder:p.type==="file"?"filename.ext":"folder-name",onSubmit:p.onSubmit,onCancel:p.onCancel,depth:n}),x.map(g=>i.jsxs("div",{children:[(p==null?void 0:p.renamePath)===g.path?i.jsx(fc,{defaultValue:g.name,onSubmit:p.onSubmit,onCancel:p.onCancel,depth:n}):i.jsx(ov,{entry:g,depth:n,activePath:s,onFileClick:l,onDirToggle:u,expanded:o,onContextMenu:m}),g.type==="dir"&&i.jsx(cv,{dirPath:g.path,depth:n+1,activePath:s,onFileClick:l,expanded:o,onDirToggle:u,treeCache:d,fetchTreeDir:O,onContextMenu:m,inlineInput:p})]},g.path))]}):null}function vN({rootDir:t}){const n=D($=>$.editorTreeCache),s=D($=>$.editorActiveFile),l=D($=>$.openFile),o=D($=>$.fetchTreeDir),u=D($=>$.addToast),[d,O]=v.useState(new Set([""])),[m,p]=v.useState(""),[x,g]=v.useState(null),[b,S]=v.useState(null);v.useEffect(()=>{o("")},[o,t]);function Q($){O(W=>{const E=new Set(W);return E.has($)?E.delete($):E.add($),E})}function k($,W){g({x:$.clientX,y:$.clientY,entry:W})}function T($){$.preventDefault(),g({x:$.clientX,y:$.clientY,entry:{type:"dir",path:"",name:"root"}})}function j($){const W=$.split("/");return W.pop(),W.join("/")}async function P($){O(W=>new Set([...W,$])),S({type:"file",parentPath:$,onSubmit:async W=>{const E=$?`${$}/${W}`:W;try{await ee.post("/files/create",{path:E,content:""}),o($),l(E),u("success",`Created ${W}`)}catch(ne){u("error","Create failed",ne.message)}S(null)},onCancel:()=>S(null)})}async function N($){O(W=>new Set([...W,$])),S({type:"folder",parentPath:$,onSubmit:async W=>{const E=$?`${$}/${W}`:W;try{await ee.post("/files/mkdir",{path:E}),o($),O(ne=>new Set([...ne,E])),u("success",`Created ${W}/`)}catch(ne){u("error","Create folder failed",ne.message)}S(null)},onCancel:()=>S(null)})}async function A($){S({type:"rename",renamePath:$.path,onSubmit:async W=>{const E=j($.path),ne=E?`${E}/${W}`:W;try{await ee.post("/files/rename",{oldPath:$.path,newPath:ne}),o(E),u("success",`Renamed to ${W}`)}catch(re){u("error","Rename failed",re.message)}S(null)},onCancel:()=>S(null)})}async function U($){const W=$.type==="dir"?`folder "${$.name}" and all contents`:`"${$.name}"`;if(window.confirm(`Delete ${W}?`))try{await ee.delete(`/files/delete?path=${encodeURIComponent($.path)}`),o(j($.path)),u("success",`Deleted ${$.name}`)}catch(E){u("error","Delete failed",E.message)}}function C($){const W=$.type==="dir",E=[];return W&&(E.push({icon:mO,label:"New File",action:()=>P($.path)}),E.push({icon:pO,label:"New Folder",action:()=>N($.path)})),$.name!=="root"?(E.length>0&&E.push({separator:!0}),E.push({icon:Cc,label:"Rename",action:()=>A($)}),E.push({icon:Xc,label:"Delete",danger:!0,action:()=>U($)})):(E.length=0,E.push({icon:mO,label:"New File",action:()=>P("")}),E.push({icon:pO,label:"New Folder",action:()=>N("")})),E}const X=n[""]||[];return i.jsxs("div",{className:"flex flex-col h-full bg-surface-1",onContextMenu:T,children:[i.jsxs("div",{className:"flex items-center gap-1 px-2 py-1.5 border-b border-border-subtle",children:[i.jsxs("div",{className:"flex-1 relative",children:[i.jsx(ql,{size:12,className:"absolute left-2 top-1/2 -translate-y-1/2 text-text-4"}),i.jsx("input",{value:m,onChange:$=>p($.target.value),placeholder:"Filter...",className:"w-full h-6 pl-6 pr-2 text-xs bg-surface-0 border border-border-subtle rounded text-text-1 placeholder:text-text-4 focus:outline-none focus:border-accent font-sans"})]}),i.jsx("button",{onClick:()=>P(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"New file",children:i.jsx(mO,{size:12})}),i.jsx("button",{onClick:()=>N(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"New folder",children:i.jsx(pO,{size:12})}),i.jsx("button",{onClick:()=>o(""),className:"p-1 text-text-4 hover:text-text-1 transition-colors cursor-pointer",title:"Refresh",children:i.jsx(es,{size:12})})]}),i.jsx(Ht,{className:"flex-1",children:i.jsxs("div",{className:"py-1",children:[(b==null?void 0:b.parentPath)===""&&i.jsx(fc,{placeholder:b.type==="file"?"filename.ext":"folder-name",onSubmit:b.onSubmit,onCancel:b.onCancel,depth:0}),X.filter($=>!m||$.name.toLowerCase().includes(m.toLowerCase())).map($=>i.jsxs("div",{children:[(b==null?void 0:b.renamePath)===$.path?i.jsx(fc,{defaultValue:$.name,onSubmit:b.onSubmit,onCancel:b.onCancel,depth:0}):i.jsx(ov,{entry:$,depth:0,activePath:s,onFileClick:l,onDirToggle:Q,expanded:d,onContextMenu:k}),$.type==="dir"&&i.jsx(cv,{dirPath:$.path,depth:1,activePath:s,onFileClick:l,expanded:d,onDirToggle:Q,treeCache:n,fetchTreeDir:o,onContextMenu:k,inlineInput:b})]},$.path))]})}),x&&i.jsx(bN,{x:x.x,y:x.y,items:C(x.entry),onClose:()=>g(null)})]})}function yN(){const t=D(u=>u.editorOpenTabs),n=D(u=>u.editorActiveFile),s=D(u=>u.editorFiles),l=D(u=>u.setActiveFile),o=D(u=>u.closeFile);return t.length===0?null:i.jsx("div",{className:"flex items-center h-8 bg-surface-3 border-b border-border overflow-x-auto flex-shrink-0",children:t.map(u=>{const d=u===n,O=s[u],m=O&&O.content!==O.originalContent,p=u.split("/").pop();return i.jsxs("div",{className:le("flex items-center gap-1.5 h-full px-3 text-xs font-sans cursor-pointer select-none","border-r border-border-subtle","transition-colors duration-75",d?"bg-surface-2 text-text-0 border-b-2 border-b-accent":"bg-surface-3 text-text-3 hover:text-text-1 hover:bg-surface-4"),onClick:()=>l(u),children:[i.jsx("span",{className:"truncate max-w-[120px]",children:p}),m&&i.jsx("span",{className:"w-1.5 h-1.5 rounded-full bg-warning flex-shrink-0"}),i.jsx("button",{onClick:x=>{x.stopPropagation(),o(u)},className:"p-0.5 rounded hover:bg-surface-5 text-text-4 hover:text-text-1 transition-colors cursor-pointer ml-0.5",children:i.jsx(Rt,{size:12})})]},u)})})}var s1={};class hc{constructor(n,s,l,o,u,d,O,m,p,x=0,g){this.p=n,this.stack=s,this.state=l,this.reducePos=o,this.pos=u,this.score=d,this.buffer=O,this.bufferBase=m,this.curContext=p,this.lookAhead=x,this.parent=g}toString(){return`[${this.stack.filter((n,s)=>s%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(n,s,l=0){let o=n.parser.context;return new hc(n,[],s,l,l,0,[],0,o?new l1(o,o.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(n,s){this.stack.push(this.state,s,this.bufferBase+this.buffer.length),this.state=n}reduce(n){var s;let l=n>>19,o=n&65535,{parser:u}=this.p,d=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),O=u.dynamicPrecedence(o);if(O&&(this.score+=O),l==0){this.pushState(u.getGoto(this.state,o,!0),this.reducePos),o<u.minRepeatTerm&&this.storeNode(o,this.reducePos,this.reducePos,d?8:4,!0),this.reduceContext(o,this.reducePos);return}let m=this.stack.length-(l-1)*3-(n&262144?6:0),p=m?this.stack[m-2]:this.p.ranges[0].from,x=this.reducePos-p;x>=2e3&&!(!((s=this.p.parser.nodeSet.types[o])===null||s===void 0)&&s.isAnonymous)&&(p==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=x):this.p.lastBigReductionSize<x&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=p,this.p.lastBigReductionSize=x));let g=m?this.stack[m-1]:0,b=this.bufferBase+this.buffer.length-g;if(o<u.minRepeatTerm||n&131072){let S=u.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(o,p,S,b+4,!0)}if(n&262144)this.state=this.stack[m];else{let S=this.stack[m-3];this.state=u.getGoto(S,o,!0)}for(;this.stack.length>m;)this.stack.pop();this.reduceContext(o,p)}storeNode(n,s,l,o=4,u=!1){if(n==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let d=this,O=this.buffer.length;if(O==0&&d.parent&&(O=d.bufferBase-d.parent.bufferBase,d=d.parent),O>0&&d.buffer[O-4]==0&&d.buffer[O-1]>-1){if(s==l)return;if(d.buffer[O-2]>=s){d.buffer[O-2]=l;return}}}if(!u||this.pos==l)this.buffer.push(n,s,l,o);else{let d=this.buffer.length;if(d>0&&(this.buffer[d-4]!=0||this.buffer[d-1]<0)){let O=!1;for(let m=d;m>0&&this.buffer[m-2]>l;m-=4)if(this.buffer[m-1]>=0){O=!0;break}if(O)for(;d>0&&this.buffer[d-2]>l;)this.buffer[d]=this.buffer[d-4],this.buffer[d+1]=this.buffer[d-3],this.buffer[d+2]=this.buffer[d-2],this.buffer[d+3]=this.buffer[d-1],d-=4,o>4&&(o-=4)}this.buffer[d]=n,this.buffer[d+1]=s,this.buffer[d+2]=l,this.buffer[d+3]=o}}shift(n,s,l,o){if(n&131072)this.pushState(n&65535,this.pos);else if((n&262144)==0){let u=n,{parser:d}=this.p;this.pos=o;let O=d.stateFlag(u,1);!O&&(o>l||s<=d.maxNode)&&(this.reducePos=o),this.pushState(u,O?l:Math.min(l,this.reducePos)),this.shiftContext(s,l),s<=d.maxNode&&this.buffer.push(s,l,o,4)}else this.pos=o,this.shiftContext(s,l),s<=this.p.parser.maxNode&&this.buffer.push(s,l,o,4)}apply(n,s,l,o){n&65536?this.reduce(n):this.shift(n,s,l,o)}useNode(n,s){let l=this.p.reused.length-1;(l<0||this.p.reused[l]!=n)&&(this.p.reused.push(n),l++);let o=this.pos;this.reducePos=this.pos=o+n.length,this.pushState(s,o),this.buffer.push(l,o,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,n,this,this.p.stream.reset(this.pos-n.length)))}split(){let n=this,s=n.buffer.length;for(;s>0&&n.buffer[s-2]>n.reducePos;)s-=4;let l=n.buffer.slice(s),o=n.bufferBase+s;for(;n&&o==n.bufferBase;)n=n.parent;return new hc(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,l,o,this.curContext,this.lookAhead,n)}recoverByDelete(n,s){let l=n<=this.p.parser.maxNode;l&&this.storeNode(n,this.pos,s,4),this.storeNode(0,this.pos,s,l?8:4),this.pos=this.reducePos=s,this.score-=190}canShift(n){for(let s=new SN(this);;){let l=this.p.parser.stateSlot(s.state,4)||this.p.parser.hasAction(s.state,n);if(l==0)return!1;if((l&65536)==0)return!0;s.reduce(l)}}recoverByInsert(n){if(this.stack.length>=300)return[];let s=this.p.parser.nextStates(this.state);if(s.length>8||this.stack.length>=120){let o=[];for(let u=0,d;u<s.length;u+=2)(d=s[u+1])!=this.state&&this.p.parser.hasAction(d,n)&&o.push(s[u],d);if(this.stack.length<120)for(let u=0;o.length<8&&u<s.length;u+=2){let d=s[u+1];o.some((O,m)=>m&1&&O==d)||o.push(s[u],d)}s=o}let l=[];for(let o=0;o<s.length&&l.length<4;o+=2){let u=s[o+1];if(u==this.state)continue;let d=this.split();d.pushState(u,this.pos),d.storeNode(0,d.pos,d.pos,4,!0),d.shiftContext(s[o],this.pos),d.reducePos=this.pos,d.score-=200,l.push(d)}return l}forceReduce(){let{parser:n}=this.p,s=n.stateSlot(this.state,5);if((s&65536)==0)return!1;if(!n.validAction(this.state,s)){let l=s>>19,o=s&65535,u=this.stack.length-l*3;if(u<0||n.getGoto(this.stack[u],o,!1)<0){let d=this.findForcedReduction();if(d==null)return!1;s=d}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(s),!0}findForcedReduction(){let{parser:n}=this.p,s=[],l=(o,u)=>{if(!s.includes(o))return s.push(o),n.allActions(o,d=>{if(!(d&393216))if(d&65536){let O=(d>>19)-u;if(O>1){let m=d&65535,p=this.stack.length-O*3;if(p>=0&&n.getGoto(this.stack[p],m,!1)>=0)return O<<19|65536|m}}else{let O=l(d,u+1);if(O!=null)return O}})};return l(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:n}=this.p;return n.data[n.stateSlot(this.state,1)]==65535&&!n.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(n){if(this.state!=n.state||this.stack.length!=n.stack.length)return!1;for(let s=0;s<this.stack.length;s+=3)if(this.stack[s]!=n.stack[s])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(n){return this.p.parser.dialect.flags[n]}shiftContext(n,s){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,n,this,this.p.stream.reset(s)))}reduceContext(n,s){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,n,this,this.p.stream.reset(s)))}emitContext(){let n=this.buffer.length-1;(n<0||this.buffer[n]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let n=this.buffer.length-1;(n<0||this.buffer[n]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(n){if(n!=this.curContext.context){let s=new l1(this.curContext.tracker,n);s.hash!=this.curContext.hash&&this.emitContext(),this.curContext=s}}setLookAhead(n){return n<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=n,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class l1{constructor(n,s){this.tracker=n,this.context=s,this.hash=n.strict?n.hash(s):0}}class SN{constructor(n){this.start=n,this.state=n.state,this.stack=n.stack,this.base=this.stack.length}reduce(n){let s=n&65535,l=n>>19;l==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(l-1)*3;let o=this.start.p.parser.getGoto(this.stack[this.base-3],s,!0);this.state=o}}class mc{constructor(n,s,l){this.stack=n,this.pos=s,this.index=l,this.buffer=n.buffer,this.index==0&&this.maybeNext()}static create(n,s=n.bufferBase+n.buffer.length){return new mc(n,s,s-n.bufferBase)}maybeNext(){let n=this.stack.parent;n!=null&&(this.index=this.stack.bufferBase-n.bufferBase,this.stack=n,this.buffer=n.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new mc(this.stack,this.pos,this.index)}}function Mr(t,n=Uint16Array){if(typeof t!="string")return t;let s=null;for(let l=0,o=0;l<t.length;){let u=0;for(;;){let d=t.charCodeAt(l++),O=!1;if(d==126){u=65535;break}d>=92&&d--,d>=34&&d--;let m=d-32;if(m>=46&&(m-=46,O=!0),u+=m,O)break;u*=46}s?s[o++]=u:s=new n(u)}return s}class Wo{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const r1=new Wo;class QN{constructor(n,s){this.input=n,this.ranges=s,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=r1,this.rangeIndex=0,this.pos=this.chunkPos=s[0].from,this.range=s[0],this.end=s[s.length-1].to,this.readNext()}resolveOffset(n,s){let l=this.range,o=this.rangeIndex,u=this.pos+n;for(;u<l.from;){if(!o)return null;let d=this.ranges[--o];u-=l.from-d.to,l=d}for(;s<0?u>l.to:u>=l.to;){if(o==this.ranges.length-1)return null;let d=this.ranges[++o];u+=d.from-l.to,l=d}return u}clipPos(n){if(n>=this.range.from&&n<this.range.to)return n;for(let s of this.ranges)if(s.to>n)return Math.max(n,s.from);return this.end}peek(n){let s=this.chunkOff+n,l,o;if(s>=0&&s<this.chunk.length)l=this.pos+n,o=this.chunk.charCodeAt(s);else{let u=this.resolveOffset(n,1);if(u==null)return-1;if(l=u,l>=this.chunk2Pos&&l<this.chunk2Pos+this.chunk2.length)o=this.chunk2.charCodeAt(l-this.chunk2Pos);else{let d=this.rangeIndex,O=this.range;for(;O.to<=l;)O=this.ranges[++d];this.chunk2=this.input.chunk(this.chunk2Pos=l),l+this.chunk2.length>O.to&&(this.chunk2=this.chunk2.slice(0,O.to-l)),o=this.chunk2.charCodeAt(0)}}return l>=this.token.lookAhead&&(this.token.lookAhead=l+1),o}acceptToken(n,s=0){let l=s?this.resolveOffset(s,-1):this.pos;if(l==null||l<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=n,this.token.end=l}acceptTokenTo(n,s){this.token.value=n,this.token.end=s}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:n,chunkPos:s}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=n,this.chunk2Pos=s,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let n=this.input.chunk(this.pos),s=this.pos+n.length;this.chunk=s>this.range.to?n.slice(0,this.range.to-this.pos):n,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(n=1){for(this.chunkOff+=n;this.pos+n>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();n-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=n,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(n,s){if(s?(this.token=s,s.start=n,s.lookAhead=n+1,s.value=s.extended=-1):this.token=r1,this.pos!=n){if(this.pos=n,n==this.end)return this.setDone(),this;for(;n<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;n>=this.range.to;)this.range=this.ranges[++this.rangeIndex];n>=this.chunkPos&&n<this.chunkPos+this.chunk.length?this.chunkOff=n-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(n,s){if(n>=this.chunkPos&&s<=this.chunkPos+this.chunk.length)return this.chunk.slice(n-this.chunkPos,s-this.chunkPos);if(n>=this.chunk2Pos&&s<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(n-this.chunk2Pos,s-this.chunk2Pos);if(n>=this.range.from&&s<=this.range.to)return this.input.read(n,s);let l="";for(let o of this.ranges){if(o.from>=s)break;o.to>n&&(l+=this.input.read(Math.max(o.from,n),Math.min(o.to,s)))}return l}}class wl{constructor(n,s){this.data=n,this.id=s}token(n,s){let{parser:l}=s.p;uv(this.data,n,s,this.id,l.data,l.tokenPrecTable)}}wl.prototype.contextual=wl.prototype.fallback=wl.prototype.extend=!1;class pc{constructor(n,s,l){this.precTable=s,this.elseToken=l,this.data=typeof n=="string"?Mr(n):n}token(n,s){let l=n.pos,o=0;for(;;){let u=n.next<0,d=n.resolveOffset(1,1);if(uv(this.data,n,s,0,this.data,this.precTable),n.token.value>-1)break;if(this.elseToken==null)return;if(u||o++,d==null)break;n.reset(d,n.token)}o&&(n.reset(l,n.token),n.acceptToken(this.elseToken,o))}}pc.prototype.contextual=wl.prototype.fallback=wl.prototype.extend=!1;class gt{constructor(n,s={}){this.token=n,this.contextual=!!s.contextual,this.fallback=!!s.fallback,this.extend=!!s.extend}}function uv(t,n,s,l,o,u){let d=0,O=1<<l,{dialect:m}=s.p.parser;e:for(;(O&t[d])!=0;){let p=t[d+1];for(let S=d+3;S<p;S+=2)if((t[S+1]&O)>0){let Q=t[S];if(m.allows(Q)&&(n.token.value==-1||n.token.value==Q||jN(Q,n.token.value,o,u))){n.acceptToken(Q);break}}let x=n.next,g=0,b=t[d+2];if(n.next<0&&b>g&&t[p+b*3-3]==65535){d=t[p+b*3-1];continue e}for(;g<b;){let S=g+b>>1,Q=p+S+(S<<1),k=t[Q],T=t[Q+1]||65536;if(x<k)b=S;else if(x>=T)g=S+1;else{d=t[Q+2],n.advance();continue e}}break}}function i1(t,n,s){for(let l=n,o;(o=t[l])!=65535;l++)if(o==s)return l-n;return-1}function jN(t,n,s,l){let o=i1(s,l,n);return o<0||i1(s,l,t)<o}const Gt=typeof process<"u"&&s1&&/\bparse\b/.test(s1.LOG);let vO=null;function o1(t,n,s){let l=t.cursor(Qc.IncludeAnonymous);for(l.moveTo(n);;)if(!(s<0?l.childBefore(n):l.childAfter(n)))for(;;){if((s<0?l.to<n:l.from>n)&&!l.type.isError)return s<0?Math.max(0,Math.min(l.to-1,n-25)):Math.min(t.length,Math.max(l.from+1,n+25));if(s<0?l.prevSibling():l.nextSibling())break;if(!l.parent())return s<0?0:t.length}}let wN=class{constructor(n,s){this.fragments=n,this.nodeSet=s,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let n=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(n){for(this.safeFrom=n.openStart?o1(n.tree,n.from+n.offset,1)-n.offset:n.from,this.safeTo=n.openEnd?o1(n.tree,n.to+n.offset,-1)-n.offset:n.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(n.tree),this.start.push(-n.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(n){if(n<this.nextStart)return null;for(;this.fragment&&this.safeTo<=n;)this.nextFragment();if(!this.fragment)return null;for(;;){let s=this.trees.length-1;if(s<0)return this.nextFragment(),null;let l=this.trees[s],o=this.index[s];if(o==l.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let u=l.children[o],d=this.start[s]+l.positions[o];if(d>n)return this.nextStart=d,null;if(u instanceof ma){if(d==n){if(d<this.safeFrom)return null;let O=d+u.length;if(O<=this.safeTo){let m=u.prop(sn.lookAhead);if(!m||O+m<this.fragment.to)return u}}this.index[s]++,d+u.length>=Math.max(this.safeFrom,n)&&(this.trees.push(u),this.start.push(d),this.index.push(0))}else this.index[s]++,this.nextStart=d+u.length}}};class kN{constructor(n,s){this.stream=s,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=n.tokenizers.map(l=>new Wo)}getActions(n){let s=0,l=null,{parser:o}=n.p,{tokenizers:u}=o,d=o.stateSlot(n.state,3),O=n.curContext?n.curContext.hash:0,m=0;for(let p=0;p<u.length;p++){if((1<<p&d)==0)continue;let x=u[p],g=this.tokens[p];if(!(l&&!x.fallback)&&((x.contextual||g.start!=n.pos||g.mask!=d||g.context!=O)&&(this.updateCachedToken(g,x,n),g.mask=d,g.context=O),g.lookAhead>g.end+25&&(m=Math.max(g.lookAhead,m)),g.value!=0)){let b=s;if(g.extended>-1&&(s=this.addActions(n,g.extended,g.end,s)),s=this.addActions(n,g.value,g.end,s),!x.extend&&(l=g,s>b))break}}for(;this.actions.length>s;)this.actions.pop();return m&&n.setLookAhead(m),!l&&n.pos==this.stream.end&&(l=new Wo,l.value=n.p.parser.eofTerm,l.start=l.end=n.pos,s=this.addActions(n,l.value,l.end,s)),this.mainToken=l,this.actions}getMainToken(n){if(this.mainToken)return this.mainToken;let s=new Wo,{pos:l,p:o}=n;return s.start=l,s.end=Math.min(l+1,o.stream.end),s.value=l==o.stream.end?o.parser.eofTerm:0,s}updateCachedToken(n,s,l){let o=this.stream.clipPos(l.pos);if(s.token(this.stream.reset(o,n),l),n.value>-1){let{parser:u}=l.p;for(let d=0;d<u.specialized.length;d++)if(u.specialized[d]==n.value){let O=u.specializers[d](this.stream.read(n.start,n.end),l);if(O>=0&&l.p.parser.dialect.allows(O>>1)){(O&1)==0?n.value=O>>1:n.extended=O>>1;break}}}else n.value=0,n.end=this.stream.clipPos(o+1)}putAction(n,s,l,o){for(let u=0;u<o;u+=3)if(this.actions[u]==n)return o;return this.actions[o++]=n,this.actions[o++]=s,this.actions[o++]=l,o}addActions(n,s,l,o){let{state:u}=n,{parser:d}=n.p,{data:O}=d;for(let m=0;m<2;m++)for(let p=d.stateSlot(u,m?2:1);;p+=3){if(O[p]==65535)if(O[p+1]==1)p=nn(O,p+2);else{o==0&&O[p+1]==2&&(o=this.putAction(nn(O,p+2),s,l,o));break}O[p]==s&&(o=this.putAction(nn(O,p+1),s,l,o))}return o}}class $N{constructor(n,s,l,o){this.parser=n,this.input=s,this.ranges=o,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new QN(s,o),this.tokens=new kN(n,this.stream),this.topTerm=n.top[1];let{from:u}=o[0];this.stacks=[hc.start(this,n.top[0],u)],this.fragments=l.length&&this.stream.end-u>n.bufferLength*4?new wN(l,n.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let n=this.stacks,s=this.minStackPos,l=this.stacks=[],o,u;if(this.bigReductionCount>300&&n.length==1){let[d]=n;for(;d.forceReduce()&&d.stack.length&&d.stack[d.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let d=0;d<n.length;d++){let O=n[d];for(;;){if(this.tokens.mainToken=null,O.pos>s)l.push(O);else{if(this.advanceStack(O,l,n))continue;{o||(o=[],u=[]),o.push(O);let m=this.tokens.getMainToken(O);u.push(m.value,m.end)}}break}}if(!l.length){let d=o&&PN(o);if(d)return Gt&&console.log("Finish with "+this.stackID(d)),this.stackToTree(d);if(this.parser.strict)throw Gt&&o&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+s);this.recovering||(this.recovering=5)}if(this.recovering&&o){let d=this.stoppedAt!=null&&o[0].pos>this.stoppedAt?o[0]:this.runRecovery(o,u,l);if(d)return Gt&&console.log("Force-finish "+this.stackID(d)),this.stackToTree(d.forceAll())}if(this.recovering){let d=this.recovering==1?1:this.recovering*3;if(l.length>d)for(l.sort((O,m)=>m.score-O.score);l.length>d;)l.pop();l.some(O=>O.reducePos>s)&&this.recovering--}else if(l.length>1){e:for(let d=0;d<l.length-1;d++){let O=l[d];for(let m=d+1;m<l.length;m++){let p=l[m];if(O.sameState(p)||O.buffer.length>500&&p.buffer.length>500)if((O.score-p.score||O.buffer.length-p.buffer.length)>0)l.splice(m--,1);else{l.splice(d--,1);continue e}}}l.length>12&&(l.sort((d,O)=>O.score-d.score),l.splice(12,l.length-12))}this.minStackPos=l[0].pos;for(let d=1;d<l.length;d++)l[d].pos<this.minStackPos&&(this.minStackPos=l[d].pos);return null}stopAt(n){if(this.stoppedAt!=null&&this.stoppedAt<n)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=n}advanceStack(n,s,l){let o=n.pos,{parser:u}=this,d=Gt?this.stackID(n)+" -> ":"";if(this.stoppedAt!=null&&o>this.stoppedAt)return n.forceReduce()?n:null;if(this.fragments){let p=n.curContext&&n.curContext.tracker.strict,x=p?n.curContext.hash:0;for(let g=this.fragments.nodeAt(o);g;){let b=this.parser.nodeSet.types[g.type.id]==g.type?u.getGoto(n.state,g.type.id):-1;if(b>-1&&g.length&&(!p||(g.prop(sn.contextHash)||0)==x))return n.useNode(g,b),Gt&&console.log(d+this.stackID(n)+` (via reuse of ${u.getName(g.type.id)})`),!0;if(!(g instanceof ma)||g.children.length==0||g.positions[0]>0)break;let S=g.children[0];if(S instanceof ma&&g.positions[0]==0)g=S;else break}}let O=u.stateSlot(n.state,4);if(O>0)return n.reduce(O),Gt&&console.log(d+this.stackID(n)+` (via always-reduce ${u.getName(O&65535)})`),!0;if(n.stack.length>=8400)for(;n.stack.length>6e3&&n.forceReduce(););let m=this.tokens.getActions(n);for(let p=0;p<m.length;){let x=m[p++],g=m[p++],b=m[p++],S=p==m.length||!l,Q=S?n:n.split(),k=this.tokens.mainToken;if(Q.apply(x,g,k?k.start:Q.pos,b),Gt&&console.log(d+this.stackID(Q)+` (via ${(x&65536)==0?"shift":`reduce of ${u.getName(x&65535)}`} for ${u.getName(g)} @ ${o}${Q==n?"":", split"})`),S)return!0;Q.pos>o?s.push(Q):l.push(Q)}return!1}advanceFully(n,s){let l=n.pos;for(;;){if(!this.advanceStack(n,null,null))return!1;if(n.pos>l)return c1(n,s),!0}}runRecovery(n,s,l){let o=null,u=!1;for(let d=0;d<n.length;d++){let O=n[d],m=s[d<<1],p=s[(d<<1)+1],x=Gt?this.stackID(O)+" -> ":"";if(O.deadEnd&&(u||(u=!0,O.restart(),Gt&&console.log(x+this.stackID(O)+" (restarted)"),this.advanceFully(O,l))))continue;let g=O.split(),b=x;for(let S=0;S<10&&g.forceReduce()&&(Gt&&console.log(b+this.stackID(g)+" (via force-reduce)"),!this.advanceFully(g,l));S++)Gt&&(b=this.stackID(g)+" -> ");for(let S of O.recoverByInsert(m))Gt&&console.log(x+this.stackID(S)+" (via recover-insert)"),this.advanceFully(S,l);this.stream.end>O.pos?(p==O.pos&&(p++,m=0),O.recoverByDelete(m,p),Gt&&console.log(x+this.stackID(O)+` (via recover-delete ${this.parser.getName(m)})`),c1(O,l)):(!o||o.score<g.score)&&(o=g)}return o}stackToTree(n){return n.close(),ma.build({buffer:mc.create(n),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:n.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(n){let s=(vO||(vO=new WeakMap)).get(n);return s||vO.set(n,s=String.fromCodePoint(this.nextStackID++)),s+n}}function c1(t,n){for(let s=0;s<n.length;s++){let l=n[s];if(l.pos==t.pos&&l.sameState(t)){n[s].score<t.score&&(n[s]=t);return}}n.push(t)}class TN{constructor(n,s,l){this.source=n,this.flags=s,this.disabled=l}allows(n){return!this.disabled||this.disabled[n]==0}}const yO=t=>t;class nh{constructor(n){this.start=n.start,this.shift=n.shift||yO,this.reduce=n.reduce||yO,this.reuse=n.reuse||yO,this.hash=n.hash||(()=>0),this.strict=n.strict!==!1}}class Kn extends y0{constructor(n){if(super(),this.wrappers=[],n.version!=14)throw new RangeError(`Parser version (${n.version}) doesn't match runtime version (14)`);let s=n.nodeNames.split(" ");this.minRepeatTerm=s.length;for(let O=0;O<n.repeatNodeCount;O++)s.push("");let l=Object.keys(n.topRules).map(O=>n.topRules[O][1]),o=[];for(let O=0;O<s.length;O++)o.push([]);function u(O,m,p){o[O].push([m,m.deserialize(String(p))])}if(n.nodeProps)for(let O of n.nodeProps){let m=O[0];typeof m=="string"&&(m=sn[m]);for(let p=1;p<O.length;){let x=O[p++];if(x>=0)u(x,m,O[p++]);else{let g=O[p+-x];for(let b=-x;b>0;b--)u(O[p++],m,g);p++}}}this.nodeSet=new wf(s.map((O,m)=>ni.define({name:m>=this.minRepeatTerm?void 0:O,id:m,props:o[m],top:l.indexOf(m)>-1,error:m==0,skipped:n.skippedNodes&&n.skippedNodes.indexOf(m)>-1}))),n.propSources&&(this.nodeSet=this.nodeSet.extend(...n.propSources)),this.strict=!1,this.bufferLength=Sj;let d=Mr(n.tokenData);this.context=n.context,this.specializerSpecs=n.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let O=0;O<this.specializerSpecs.length;O++)this.specialized[O]=this.specializerSpecs[O].term;this.specializers=this.specializerSpecs.map(u1),this.states=Mr(n.states,Uint32Array),this.data=Mr(n.stateData),this.goto=Mr(n.goto),this.maxTerm=n.maxTerm,this.tokenizers=n.tokenizers.map(O=>typeof O=="number"?new wl(d,O):O),this.topRules=n.topRules,this.dialects=n.dialects||{},this.dynamicPrecedences=n.dynamicPrecedences||null,this.tokenPrecTable=n.tokenPrec,this.termNames=n.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(n,s,l){let o=new $N(this,n,s,l);for(let u of this.wrappers)o=u(o,n,s,l);return o}getGoto(n,s,l=!1){let o=this.goto;if(s>=o[0])return-1;for(let u=o[s+1];;){let d=o[u++],O=d&1,m=o[u++];if(O&&l)return m;for(let p=u+(d>>1);u<p;u++)if(o[u]==n)return m;if(O)return-1}}hasAction(n,s){let l=this.data;for(let o=0;o<2;o++)for(let u=this.stateSlot(n,o?2:1),d;;u+=3){if((d=l[u])==65535)if(l[u+1]==1)d=l[u=nn(l,u+2)];else{if(l[u+1]==2)return nn(l,u+2);break}if(d==s||d==0)return nn(l,u+1)}return 0}stateSlot(n,s){return this.states[n*6+s]}stateFlag(n,s){return(this.stateSlot(n,0)&s)>0}validAction(n,s){return!!this.allActions(n,l=>l==s?!0:null)}allActions(n,s){let l=this.stateSlot(n,4),o=l?s(l):void 0;for(let u=this.stateSlot(n,1);o==null;u+=3){if(this.data[u]==65535)if(this.data[u+1]==1)u=nn(this.data,u+2);else break;o=s(nn(this.data,u+1))}return o}nextStates(n){let s=[];for(let l=this.stateSlot(n,1);;l+=3){if(this.data[l]==65535)if(this.data[l+1]==1)l=nn(this.data,l+2);else break;if((this.data[l+2]&1)==0){let o=this.data[l+1];s.some((u,d)=>d&1&&u==o)||s.push(this.data[l],o)}}return s}configure(n){let s=Object.assign(Object.create(Kn.prototype),this);if(n.props&&(s.nodeSet=this.nodeSet.extend(...n.props)),n.top){let l=this.topRules[n.top];if(!l)throw new RangeError(`Invalid top rule name ${n.top}`);s.top=l}return n.tokenizers&&(s.tokenizers=this.tokenizers.map(l=>{let o=n.tokenizers.find(u=>u.from==l);return o?o.to:l})),n.specializers&&(s.specializers=this.specializers.slice(),s.specializerSpecs=this.specializerSpecs.map((l,o)=>{let u=n.specializers.find(O=>O.from==l.external);if(!u)return l;let d=Object.assign(Object.assign({},l),{external:u.to});return s.specializers[o]=u1(d),d})),n.contextTracker&&(s.context=n.contextTracker),n.dialect&&(s.dialect=this.parseDialect(n.dialect)),n.strict!=null&&(s.strict=n.strict),n.wrap&&(s.wrappers=s.wrappers.concat(n.wrap)),n.bufferLength!=null&&(s.bufferLength=n.bufferLength),s}hasWrappers(){return this.wrappers.length>0}getName(n){return this.termNames?this.termNames[n]:String(n<=this.maxNode&&this.nodeSet.types[n].name||n)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(n){let s=this.dynamicPrecedences;return s==null?0:s[n]||0}parseDialect(n){let s=Object.keys(this.dialects),l=s.map(()=>!1);if(n)for(let u of n.split(" ")){let d=s.indexOf(u);d>=0&&(l[d]=!0)}let o=null;for(let u=0;u<s.length;u++)if(!l[u])for(let d=this.dialects[s[u]],O;(O=this.data[d++])!=65535;)(o||(o=new Uint8Array(this.maxTerm+1)))[O]=1;return new TN(n,l,o)}static deserialize(n){return new Kn(n)}}function nn(t,n){return t[n]|t[n+1]<<16}function PN(t){let n=null;for(let s of t){let l=s.p.stoppedAt;(s.pos==s.p.stream.end||l!=null&&s.pos>l)&&s.p.parser.stateFlag(s.state,2)&&(!n||n.score<s.score)&&(n=s)}return n}function u1(t){if(t.external){let n=t.extend?1:0;return(s,l)=>t.external(s,l)<<1|n}return t.get}const NN=316,zN=317,d1=1,RN=2,CN=3,XN=4,_N=318,ZN=320,AN=321,EN=5,qN=6,MN=0,uf=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],dv=125,YN=59,df=47,VN=42,UN=43,GN=45,LN=60,DN=44,WN=63,BN=46,HN=91,IN=new nh({start:!1,shift(t,n){return n==EN||n==qN||n==ZN?t:n==AN},strict:!1}),FN=new gt((t,n)=>{let{next:s}=t;(s==dv||s==-1||n.context)&&t.acceptToken(_N)},{contextual:!0,fallback:!0}),KN=new gt((t,n)=>{let{next:s}=t,l;uf.indexOf(s)>-1||s==df&&((l=t.peek(1))==df||l==VN)||s!=dv&&s!=YN&&s!=-1&&!n.context&&t.acceptToken(NN)},{contextual:!0}),JN=new gt((t,n)=>{t.next==HN&&!n.context&&t.acceptToken(zN)},{contextual:!0}),e3=new gt((t,n)=>{let{next:s}=t;if(s==UN||s==GN){if(t.advance(),s==t.next){t.advance();let l=!n.context&&n.canShift(d1);t.acceptToken(l?d1:RN)}}else s==WN&&t.peek(1)==BN&&(t.advance(),t.advance(),(t.next<48||t.next>57)&&t.acceptToken(CN))},{contextual:!0});function SO(t,n){return t>=65&&t<=90||t>=97&&t<=122||t==95||t>=192||!n&&t>=48&&t<=57}const t3=new gt((t,n)=>{if(t.next!=LN||!n.dialectEnabled(MN)||(t.advance(),t.next==df))return;let s=0;for(;uf.indexOf(t.next)>-1;)t.advance(),s++;if(SO(t.next,!0)){for(t.advance(),s++;SO(t.next,!1);)t.advance(),s++;for(;uf.indexOf(t.next)>-1;)t.advance(),s++;if(t.next==DN)return;for(let l=0;;l++){if(l==7){if(!SO(t.next,!0))return;break}if(t.next!="extends".charCodeAt(l))break;t.advance(),s++}}t.acceptToken(XN,-s)}),a3=Ts({"get set async static":Z.modifier,"for while do if else switch try catch finally return throw break continue default case defer":Z.controlKeyword,"in of await yield void typeof delete instanceof as satisfies":Z.operatorKeyword,"let var const using function class extends":Z.definitionKeyword,"import export from":Z.moduleKeyword,"with debugger new":Z.keyword,TemplateString:Z.special(Z.string),super:Z.atom,BooleanLiteral:Z.bool,this:Z.self,null:Z.null,Star:Z.modifier,VariableName:Z.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":Z.function(Z.variableName),VariableDefinition:Z.definition(Z.variableName),Label:Z.labelName,PropertyName:Z.propertyName,PrivatePropertyName:Z.special(Z.propertyName),"CallExpression/MemberExpression/PropertyName":Z.function(Z.propertyName),"FunctionDeclaration/VariableDefinition":Z.function(Z.definition(Z.variableName)),"ClassDeclaration/VariableDefinition":Z.definition(Z.className),"NewExpression/VariableName":Z.className,PropertyDefinition:Z.definition(Z.propertyName),PrivatePropertyDefinition:Z.definition(Z.special(Z.propertyName)),UpdateOp:Z.updateOperator,"LineComment Hashbang":Z.lineComment,BlockComment:Z.blockComment,Number:Z.number,String:Z.string,Escape:Z.escape,ArithOp:Z.arithmeticOperator,LogicOp:Z.logicOperator,BitOp:Z.bitwiseOperator,CompareOp:Z.compareOperator,RegExp:Z.regexp,Equals:Z.definitionOperator,Arrow:Z.function(Z.punctuation),": Spread":Z.punctuation,"( )":Z.paren,"[ ]":Z.squareBracket,"{ }":Z.brace,"InterpolationStart InterpolationEnd":Z.special(Z.brace),".":Z.derefOperator,", ;":Z.separator,"@":Z.meta,TypeName:Z.typeName,TypeDefinition:Z.definition(Z.typeName),"type enum interface implements namespace module declare":Z.definitionKeyword,"abstract global Privacy readonly override":Z.modifier,"is keyof unique infer asserts":Z.operatorKeyword,JSXAttributeValue:Z.attributeValue,JSXText:Z.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":Z.angleBracket,"JSXIdentifier JSXNameSpacedName":Z.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":Z.attributeName,"JSXBuiltin/JSXIdentifier":Z.standard(Z.tagName)}),n3={__proto__:null,export:20,as:25,from:33,default:36,async:41,function:42,in:52,out:55,const:56,extends:60,this:64,true:72,false:72,null:84,void:88,typeof:92,super:108,new:142,delete:154,yield:163,await:167,class:172,public:235,private:235,protected:235,readonly:237,instanceof:256,satisfies:259,import:292,keyof:349,unique:353,infer:359,asserts:395,is:397,abstract:417,implements:419,type:421,let:424,var:426,using:429,interface:435,enum:439,namespace:445,module:447,declare:451,global:455,defer:471,for:476,of:485,while:488,with:492,do:496,if:500,else:502,switch:506,case:512,try:518,catch:522,finally:526,return:530,throw:534,break:538,continue:542,debugger:546},s3={__proto__:null,async:129,get:131,set:133,declare:195,public:197,private:197,protected:197,static:199,abstract:201,override:203,readonly:209,accessor:211,new:401},l3={__proto__:null,"<":193},r3=Kn.deserialize({version:14,states:"$F|Q%TQlOOO%[QlOOO'_QpOOP(lO`OOO*zQ!0MxO'#CiO+RO#tO'#CjO+aO&jO'#CjO+oO#@ItO'#DaO.QQlO'#DgO.bQlO'#DrO%[QlO'#DzO0fQlO'#ESOOQ!0Lf'#E['#E[O1PQ`O'#EXOOQO'#Ep'#EpOOQO'#Il'#IlO1XQ`O'#GsO1dQ`O'#EoO1iQ`O'#EoO3hQ!0MxO'#JrO6[Q!0MxO'#JsO6uQ`O'#F]O6zQ,UO'#FtOOQ!0Lf'#Ff'#FfO7VO7dO'#FfO9XQMhO'#F|O9`Q`O'#F{OOQ!0Lf'#Js'#JsOOQ!0Lb'#Jr'#JrO9eQ`O'#GwOOQ['#K_'#K_O9pQ`O'#IYO9uQ!0LrO'#IZOOQ['#J`'#J`OOQ['#I_'#I_Q`QlOOQ`QlOOO9}Q!L^O'#DvO:UQlO'#EOO:]QlO'#EQO9kQ`O'#GsO:dQMhO'#CoO:rQ`O'#EnO:}Q`O'#EyO;hQMhO'#FeO;xQ`O'#GsOOQO'#K`'#K`O;}Q`O'#K`O<]Q`O'#G{O<]Q`O'#G|O<]Q`O'#HOO9kQ`O'#HRO=SQ`O'#HUO>kQ`O'#CeO>{Q`O'#HcO?TQ`O'#HiO?TQ`O'#HkO`QlO'#HmO?TQ`O'#HoO?TQ`O'#HrO?YQ`O'#HxO?_Q!0LsO'#IOO%[QlO'#IQO?jQ!0LsO'#ISO?uQ!0LsO'#IUO9uQ!0LrO'#IWO@QQ!0MxO'#CiOASQpO'#DlQOQ`OOO%[QlO'#EQOAjQ`O'#ETO:dQMhO'#EnOAuQ`O'#EnOBQQ!bO'#FeOOQ['#Cg'#CgOOQ!0Lb'#Dq'#DqOOQ!0Lb'#Jv'#JvO%[QlO'#JvOOQO'#Jy'#JyOOQO'#Ih'#IhOCQQpO'#EgOOQ!0Lb'#Ef'#EfOOQ!0Lb'#J}'#J}OC|Q!0MSO'#EgODWQpO'#EWOOQO'#Jx'#JxODlQpO'#JyOEyQpO'#EWODWQpO'#EgPFWO&2DjO'#CbPOOO)CD})CD}OOOO'#I`'#I`OFcO#tO,59UOOQ!0Lh,59U,59UOOOO'#Ia'#IaOFqO&jO,59UOGPQ!L^O'#DcOOOO'#Ic'#IcOGWO#@ItO,59{OOQ!0Lf,59{,59{OGfQlO'#IdOGyQ`O'#JtOIxQ!fO'#JtO+}QlO'#JtOJPQ`O,5:ROJgQ`O'#EpOJtQ`O'#KTOKPQ`O'#KSOKPQ`O'#KSOKXQ`O,5;^OK^Q`O'#KROOQ!0Ln,5:^,5:^OKeQlO,5:^OMcQ!0MxO,5:fONSQ`O,5:nONmQ!0LrO'#KQONtQ`O'#KPO9eQ`O'#KPO! YQ`O'#KPO! bQ`O,5;]O! gQ`O'#KPO!#lQ!fO'#JsOOQ!0Lh'#Ci'#CiO%[QlO'#ESO!$[Q!fO,5:sOOQS'#Jz'#JzOOQO-E<j-E<jO9kQ`O,5=_O!$rQ`O,5=_O!$wQlO,5;ZO!&zQMhO'#EkO!(eQ`O,5;ZO!(jQlO'#DyO!(tQpO,5;dO!(|QpO,5;dO%[QlO,5;dOOQ['#FT'#FTOOQ['#FV'#FVO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eO%[QlO,5;eOOQ['#FZ'#FZO!)[QlO,5;tOOQ!0Lf,5;y,5;yOOQ!0Lf,5;z,5;zOOQ!0Lf,5;|,5;|O%[QlO'#IpO!+_Q!0LrO,5<iO%[QlO,5;eO!&zQMhO,5;eO!+|QMhO,5;eO!-nQMhO'#E^O%[QlO,5;wOOQ!0Lf,5;{,5;{O!-uQ,UO'#FjO!.rQ,UO'#KXO!.^Q,UO'#KXO!.yQ,UO'#KXOOQO'#KX'#KXO!/_Q,UO,5<SOOOW,5<`,5<`O!/pQlO'#FvOOOW'#Io'#IoO7VO7dO,5<QO!/wQ,UO'#FxOOQ!0Lf,5<Q,5<QO!0hQ$IUO'#CyOOQ!0Lh'#C}'#C}O!0{O#@ItO'#DRO!1iQMjO,5<eO!1pQ`O,5<hO!3YQ(CWO'#GXO!3jQ`O'#GYO!3oQ`O'#GYO!5_Q(CWO'#G^O!6dQpO'#GbOOQO'#Gn'#GnO!,TQMhO'#GmOOQO'#Gp'#GpO!,TQMhO'#GoO!7VQ$IUO'#JlOOQ!0Lh'#Jl'#JlO!7aQ`O'#JkO!7oQ`O'#JjO!7wQ`O'#CuOOQ!0Lh'#C{'#C{O!8YQ`O'#C}OOQ!0Lh'#DV'#DVOOQ!0Lh'#DX'#DXO!8_Q`O,5<eO1SQ`O'#DZO!,TQMhO'#GPO!,TQMhO'#GRO!8gQ`O'#GTO!8lQ`O'#GUO!3oQ`O'#G[O!,TQMhO'#GaO<]Q`O'#JkO!8qQ`O'#EqO!9`Q`O,5<gOOQ!0Lb'#Cr'#CrO!9hQ`O'#ErO!:bQpO'#EsOOQ!0Lb'#KR'#KRO!:iQ!0LrO'#KaO9uQ!0LrO,5=cO`QlO,5>tOOQ['#Jh'#JhOOQ[,5>u,5>uOOQ[-E<]-E<]O!<hQ!0MxO,5:bO!:]QpO,5:`O!?RQ!0MxO,5:jO%[QlO,5:jO!AiQ!0MxO,5:lOOQO,5@z,5@zO!BYQMhO,5=_O!BhQ!0LrO'#JiO9`Q`O'#JiO!ByQ!0LrO,59ZO!CUQpO,59ZO!C^QMhO,59ZO:dQMhO,59ZO!CiQ`O,5;ZO!CqQ`O'#HbO!DVQ`O'#KdO%[QlO,5;}O!:]QpO,5<PO!D_Q`O,5=zO!DdQ`O,5=zO!DiQ`O,5=zO!DwQ`O,5=zO9uQ!0LrO,5=zO<]Q`O,5=jOOQO'#Cy'#CyO!EOQpO,5=gO!EWQMhO,5=hO!EcQ`O,5=jO!EhQ!bO,5=mO!EpQ`O'#K`O?YQ`O'#HWO9kQ`O'#HYO!EuQ`O'#HYO:dQMhO'#H[O!EzQ`O'#H[OOQ[,5=p,5=pO!FPQ`O'#H]O!FbQ`O'#CoO!FgQ`O,59PO!FqQ`O,59PO!HvQlO,59POOQ[,59P,59PO!IWQ!0LrO,59PO%[QlO,59PO!KcQlO'#HeOOQ['#Hf'#HfOOQ['#Hg'#HgO`QlO,5=}O!KyQ`O,5=}O`QlO,5>TO`QlO,5>VO!LOQ`O,5>XO`QlO,5>ZO!LTQ`O,5>^O!LYQlO,5>dOOQ[,5>j,5>jO%[QlO,5>jO9uQ!0LrO,5>lOOQ[,5>n,5>nO#!dQ`O,5>nOOQ[,5>p,5>pO#!dQ`O,5>pOOQ[,5>r,5>rO##QQpO'#D_O%[QlO'#JvO##sQpO'#JvO##}QpO'#DmO#$`QpO'#DmO#&qQlO'#DmO#&xQ`O'#JuO#'QQ`O,5:WO#'VQ`O'#EtO#'eQ`O'#KUO#'mQ`O,5;_O#'rQpO'#DmO#(PQpO'#EVOOQ!0Lf,5:o,5:oO%[QlO,5:oO#(WQ`O,5:oO?YQ`O,5;YO!CUQpO,5;YO!C^QMhO,5;YO:dQMhO,5;YO#(`Q`O,5@bO#(eQ07dO,5:sOOQO-E<f-E<fO#)kQ!0MSO,5;RODWQpO,5:rO#)uQpO,5:rODWQpO,5;RO!ByQ!0LrO,5:rOOQ!0Lb'#Ej'#EjOOQO,5;R,5;RO%[QlO,5;RO#*SQ!0LrO,5;RO#*_Q!0LrO,5;RO!CUQpO,5:rOOQO,5;X,5;XO#*mQ!0LrO,5;RPOOO'#I^'#I^P#+RO&2DjO,58|POOO,58|,58|OOOO-E<^-E<^OOQ!0Lh1G.p1G.pOOOO-E<_-E<_OOOO,59},59}O#+^Q!bO,59}OOOO-E<a-E<aOOQ!0Lf1G/g1G/gO#+cQ!fO,5?OO+}QlO,5?OOOQO,5?U,5?UO#+mQlO'#IdOOQO-E<b-E<bO#+zQ`O,5@`O#,SQ!fO,5@`O#,ZQ`O,5@nOOQ!0Lf1G/m1G/mO%[QlO,5@oO#,cQ`O'#IjOOQO-E<h-E<hO#,ZQ`O,5@nOOQ!0Lb1G0x1G0xOOQ!0Ln1G/x1G/xOOQ!0Ln1G0Y1G0YO%[QlO,5@lO#,wQ!0LrO,5@lO#-YQ!0LrO,5@lO#-aQ`O,5@kO9eQ`O,5@kO#-iQ`O,5@kO#-wQ`O'#ImO#-aQ`O,5@kOOQ!0Lb1G0w1G0wO!(tQpO,5:uO!)PQpO,5:uOOQS,5:w,5:wO#.iQdO,5:wO#.qQMhO1G2yO9kQ`O1G2yOOQ!0Lf1G0u1G0uO#/PQ!0MxO1G0uO#0UQ!0MvO,5;VOOQ!0Lh'#GW'#GWO#0rQ!0MzO'#JlO!$wQlO1G0uO#2}Q!fO'#JwO%[QlO'#JwO#3XQ`O,5:eOOQ!0Lh'#D_'#D_OOQ!0Lf1G1O1G1OO%[QlO1G1OOOQ!0Lf1G1f1G1fO#3^Q`O1G1OO#5rQ!0MxO1G1PO#5yQ!0MxO1G1PO#8aQ!0MxO1G1PO#8hQ!0MxO1G1PO#;OQ!0MxO1G1PO#=fQ!0MxO1G1PO#=mQ!0MxO1G1PO#=tQ!0MxO1G1PO#@[Q!0MxO1G1PO#@cQ!0MxO1G1PO#BpQ?MtO'#CiO#DkQ?MtO1G1`O#DrQ?MtO'#JsO#EVQ!0MxO,5?[OOQ!0Lb-E<n-E<nO#GdQ!0MxO1G1PO#HaQ!0MzO1G1POOQ!0Lf1G1P1G1PO#IdQMjO'#J|O#InQ`O,5:xO#IsQ!0MxO1G1cO#JgQ,UO,5<WO#JoQ,UO,5<XO#JwQ,UO'#FoO#K`Q`O'#FnOOQO'#KY'#KYOOQO'#In'#InO#KeQ,UO1G1nOOQ!0Lf1G1n1G1nOOOW1G1y1G1yO#KvQ?MtO'#JrO#LQQ`O,5<bO!)[QlO,5<bOOOW-E<m-E<mOOQ!0Lf1G1l1G1lO#LVQpO'#KXOOQ!0Lf,5<d,5<dO#L_QpO,5<dO#LdQMhO'#DTOOOO'#Ib'#IbO#LkO#@ItO,59mOOQ!0Lh,59m,59mO%[QlO1G2PO!8lQ`O'#IrO#LvQ`O,5<zOOQ!0Lh,5<w,5<wO!,TQMhO'#IuO#MdQMjO,5=XO!,TQMhO'#IwO#NVQMjO,5=ZO!&zQMhO,5=]OOQO1G2S1G2SO#NaQ!dO'#CrO#NtQ(CWO'#ErO$ |QpO'#GbO$!dQ!dO,5<sO$!kQ`O'#K[O9eQ`O'#K[O$!yQ`O,5<uO$#aQ!dO'#C{O!,TQMhO,5<tO$#kQ`O'#GZO$$PQ`O,5<tO$$UQ!dO'#GWO$$cQ!dO'#K]O$$mQ`O'#K]O!&zQMhO'#K]O$$rQ`O,5<xO$$wQlO'#JvO$%RQpO'#GcO#$`QpO'#GcO$%dQ`O'#GgO!3oQ`O'#GkO$%iQ!0LrO'#ItO$%tQpO,5<|OOQ!0Lp,5<|,5<|O$%{QpO'#GcO$&YQpO'#GdO$&kQpO'#GdO$&pQMjO,5=XO$'QQMjO,5=ZOOQ!0Lh,5=^,5=^O!,TQMhO,5@VO!,TQMhO,5@VO$'bQ`O'#IyO$'vQ`O,5@UO$(OQ`O,59aOOQ!0Lh,59i,59iO$(TQ`O,5@VO$)TQ$IYO,59uOOQ!0Lh'#Jp'#JpO$)vQMjO,5<kO$*iQMjO,5<mO@zQ`O,5<oOOQ!0Lh,5<p,5<pO$*sQ`O,5<vO$*xQMjO,5<{O$+YQ`O'#KPO!$wQlO1G2RO$+_Q`O1G2RO9eQ`O'#KSO9eQ`O'#EtO%[QlO'#EtO9eQ`O'#I{O$+dQ!0LrO,5@{OOQ[1G2}1G2}OOQ[1G4`1G4`OOQ!0Lf1G/|1G/|OOQ!0Lf1G/z1G/zO$-fQ!0MxO1G0UOOQ[1G2y1G2yO!&zQMhO1G2yO%[QlO1G2yO#.tQ`O1G2yO$/jQMhO'#EkOOQ!0Lb,5@T,5@TO$/wQ!0LrO,5@TOOQ[1G.u1G.uO!ByQ!0LrO1G.uO!CUQpO1G.uO!C^QMhO1G.uO$0YQ`O1G0uO$0_Q`O'#CiO$0jQ`O'#KeO$0rQ`O,5=|O$0wQ`O'#KeO$0|Q`O'#KeO$1[Q`O'#JRO$1jQ`O,5AOO$1rQ!fO1G1iOOQ!0Lf1G1k1G1kO9kQ`O1G3fO@zQ`O1G3fO$1yQ`O1G3fO$2OQ`O1G3fO!DiQ`O1G3fO9uQ!0LrO1G3fOOQ[1G3f1G3fO!EcQ`O1G3UO!&zQMhO1G3RO$2TQ`O1G3ROOQ[1G3S1G3SO!&zQMhO1G3SO$2YQ`O1G3SO$2bQpO'#HQOOQ[1G3U1G3UO!6_QpO'#I}O!EhQ!bO1G3XOOQ[1G3X1G3XOOQ[,5=r,5=rO$2jQMhO,5=tO9kQ`O,5=tO$%dQ`O,5=vO9`Q`O,5=vO!CUQpO,5=vO!C^QMhO,5=vO:dQMhO,5=vO$2xQ`O'#KcO$3TQ`O,5=wOOQ[1G.k1G.kO$3YQ!0LrO1G.kO@zQ`O1G.kO$3eQ`O1G.kO9uQ!0LrO1G.kO$5mQ!fO,5AQO$5zQ`O,5AQO9eQ`O,5AQO$6VQlO,5>PO$6^Q`O,5>POOQ[1G3i1G3iO`QlO1G3iOOQ[1G3o1G3oOOQ[1G3q1G3qO?TQ`O1G3sO$6cQlO1G3uO$:gQlO'#HtOOQ[1G3x1G3xO$:tQ`O'#HzO?YQ`O'#H|OOQ[1G4O1G4OO$:|QlO1G4OO9uQ!0LrO1G4UOOQ[1G4W1G4WOOQ!0Lb'#G_'#G_O9uQ!0LrO1G4YO9uQ!0LrO1G4[O$?TQ`O,5@bO!)[QlO,5;`O9eQ`O,5;`O?YQ`O,5:XO!)[QlO,5:XO!CUQpO,5:XO$?YQ?MtO,5:XOOQO,5;`,5;`O$?dQpO'#IeO$?zQ`O,5@aOOQ!0Lf1G/r1G/rO$@SQpO'#IkO$@^Q`O,5@pOOQ!0Lb1G0y1G0yO#$`QpO,5:XOOQO'#Ig'#IgO$@fQpO,5:qOOQ!0Ln,5:q,5:qO#(ZQ`O1G0ZOOQ!0Lf1G0Z1G0ZO%[QlO1G0ZOOQ!0Lf1G0t1G0tO?YQ`O1G0tO!CUQpO1G0tO!C^QMhO1G0tOOQ!0Lb1G5|1G5|O!ByQ!0LrO1G0^OOQO1G0m1G0mO%[QlO1G0mO$@mQ!0LrO1G0mO$@xQ!0LrO1G0mO!CUQpO1G0^ODWQpO1G0^O$AWQ!0LrO1G0mOOQO1G0^1G0^O$AlQ!0MxO1G0mPOOO-E<[-E<[POOO1G.h1G.hOOOO1G/i1G/iO$AvQ!bO,5<iO$BOQ!fO1G4jOOQO1G4p1G4pO%[QlO,5?OO$BYQ`O1G5zO$BbQ`O1G6YO$BjQ!fO1G6ZO9eQ`O,5?UO$BtQ!0MxO1G6WO%[QlO1G6WO$CUQ!0LrO1G6WO$CgQ`O1G6VO$CgQ`O1G6VO9eQ`O1G6VO$CoQ`O,5?XO9eQ`O,5?XOOQO,5?X,5?XO$DTQ`O,5?XO$+YQ`O,5?XOOQO-E<k-E<kOOQS1G0a1G0aOOQS1G0c1G0cO#.lQ`O1G0cOOQ[7+(e7+(eO!&zQMhO7+(eO%[QlO7+(eO$DcQ`O7+(eO$DnQMhO7+(eO$D|Q!0MzO,5=XO$GXQ!0MzO,5=ZO$IdQ!0MzO,5=XO$KuQ!0MzO,5=ZO$NWQ!0MzO,59uO%!]Q!0MzO,5<kO%$hQ!0MzO,5<mO%&sQ!0MzO,5<{OOQ!0Lf7+&a7+&aO%)UQ!0MxO7+&aO%)xQlO'#IfO%*VQ`O,5@cO%*_Q!fO,5@cOOQ!0Lf1G0P1G0PO%*iQ`O7+&jOOQ!0Lf7+&j7+&jO%*nQ?MtO,5:fO%[QlO7+&zO%*xQ?MtO,5:bO%+VQ?MtO,5:jO%+aQ?MtO,5:lO%+kQMhO'#IiO%+uQ`O,5@hOOQ!0Lh1G0d1G0dOOQO1G1r1G1rOOQO1G1s1G1sO%+}Q!jO,5<ZO!)[QlO,5<YOOQO-E<l-E<lOOQ!0Lf7+'Y7+'YOOOW7+'e7+'eOOOW1G1|1G1|O%,YQ`O1G1|OOQ!0Lf1G2O1G2OOOOO,59o,59oO%,_Q!dO,59oOOOO-E<`-E<`OOQ!0Lh1G/X1G/XO%,fQ!0MxO7+'kOOQ!0Lh,5?^,5?^O%-YQMhO1G2fP%-aQ`O'#IrPOQ!0Lh-E<p-E<pO%-}QMjO,5?aOOQ!0Lh-E<s-E<sO%.pQMjO,5?cOOQ!0Lh-E<u-E<uO%.zQ!dO1G2wO%/RQ!dO'#CrO%/iQMhO'#KSO$$wQlO'#JvOOQ!0Lh1G2_1G2_O%/sQ`O'#IqO%0[Q`O,5@vO%0[Q`O,5@vO%0dQ`O,5@vO%0oQ`O,5@vOOQO1G2a1G2aO%0}QMjO1G2`O$+YQ`O'#K[O!,TQMhO1G2`O%1_Q(CWO'#IsO%1lQ`O,5@wO!&zQMhO,5@wO%1tQ!dO,5@wOOQ!0Lh1G2d1G2dO%4UQ!fO'#CiO%4`Q`O,5=POOQ!0Lb,5<},5<}O%4hQpO,5<}OOQ!0Lb,5=O,5=OOCwQ`O,5<}O%4sQpO,5<}OOQ!0Lb,5=R,5=RO$+YQ`O,5=VOOQO,5?`,5?`OOQO-E<r-E<rOOQ!0Lp1G2h1G2hO#$`QpO,5<}O$$wQlO,5=PO%5RQ`O,5=OO%5^QpO,5=OO!,TQMhO'#IuO%6WQMjO1G2sO!,TQMhO'#IwO%6yQMjO1G2uO%7TQMjO1G5qO%7_QMjO1G5qOOQO,5?e,5?eOOQO-E<w-E<wOOQO1G.{1G.{O!,TQMhO1G5qO!,TQMhO1G5qO!:]QpO,59wO%[QlO,59wOOQ!0Lh,5<j,5<jO%7lQ`O1G2ZO!,TQMhO1G2bO%7qQ!0MxO7+'mOOQ!0Lf7+'m7+'mO!$wQlO7+'mO%8eQ`O,5;`OOQ!0Lb,5?g,5?gOOQ!0Lb-E<y-E<yO%8jQ!dO'#K^O#(ZQ`O7+(eO4UQ!fO7+(eO$DfQ`O7+(eO%8tQ!0MvO'#CiO%9XQ!0MvO,5=SO%9lQ`O,5=SO%9tQ`O,5=SOOQ!0Lb1G5o1G5oOOQ[7+$a7+$aO!ByQ!0LrO7+$aO!CUQpO7+$aO!$wQlO7+&aO%9yQ`O'#JQO%:bQ`O,5APOOQO1G3h1G3hO9kQ`O,5APO%:bQ`O,5APO%:jQ`O,5APOOQO,5?m,5?mOOQO-E=P-E=POOQ!0Lf7+'T7+'TO%:oQ`O7+)QO9uQ!0LrO7+)QO9kQ`O7+)QO@zQ`O7+)QO%:tQ`O7+)QOOQ[7+)Q7+)QOOQ[7+(p7+(pO%:yQ!0MvO7+(mO!&zQMhO7+(mO!E^Q`O7+(nOOQ[7+(n7+(nO!&zQMhO7+(nO%;TQ`O'#KbO%;`Q`O,5=lOOQO,5?i,5?iOOQO-E<{-E<{OOQ[7+(s7+(sO%<rQpO'#HZOOQ[1G3`1G3`O!&zQMhO1G3`O%[QlO1G3`O%<yQ`O1G3`O%=UQMhO1G3`O9uQ!0LrO1G3bO$%dQ`O1G3bO9`Q`O1G3bO!CUQpO1G3bO!C^QMhO1G3bO%=dQ`O'#JPO%=xQ`O,5@}O%>QQpO,5@}OOQ!0Lb1G3c1G3cOOQ[7+$V7+$VO@zQ`O7+$VO9uQ!0LrO7+$VO%>]Q`O7+$VO%[QlO1G6lO%[QlO1G6mO%>bQ!0LrO1G6lO%>lQlO1G3kO%>sQ`O1G3kO%>xQlO1G3kOOQ[7+)T7+)TO9uQ!0LrO7+)_O`QlO7+)aOOQ['#Kh'#KhOOQ['#JS'#JSO%?PQlO,5>`OOQ[,5>`,5>`O%[QlO'#HuO%?^Q`O'#HwOOQ[,5>f,5>fO9eQ`O,5>fOOQ[,5>h,5>hOOQ[7+)j7+)jOOQ[7+)p7+)pOOQ[7+)t7+)tOOQ[7+)v7+)vO%?cQpO1G5|O%?}Q?MtO1G0zO%@XQ`O1G0zOOQO1G/s1G/sO%@dQ?MtO1G/sO?YQ`O1G/sO!)[QlO'#DmOOQO,5?P,5?POOQO-E<c-E<cOOQO,5?V,5?VOOQO-E<i-E<iO!CUQpO1G/sOOQO-E<e-E<eOOQ!0Ln1G0]1G0]OOQ!0Lf7+%u7+%uO#(ZQ`O7+%uOOQ!0Lf7+&`7+&`O?YQ`O7+&`O!CUQpO7+&`OOQO7+%x7+%xO$AlQ!0MxO7+&XOOQO7+&X7+&XO%[QlO7+&XO%@nQ!0LrO7+&XO!ByQ!0LrO7+%xO!CUQpO7+%xO%@yQ!0LrO7+&XO%AXQ!0MxO7++rO%[QlO7++rO%AiQ`O7++qO%AiQ`O7++qOOQO1G4s1G4sO9eQ`O1G4sO%AqQ`O1G4sOOQS7+%}7+%}O#(ZQ`O<<LPO4UQ!fO<<LPO%BPQ`O<<LPOOQ[<<LP<<LPO!&zQMhO<<LPO%[QlO<<LPO%BXQ`O<<LPO%BdQ!0MzO,5?aO%DoQ!0MzO,5?cO%FzQ!0MzO1G2`O%I]Q!0MzO1G2sO%KhQ!0MzO1G2uO%MsQ!fO,5?QO%[QlO,5?QOOQO-E<d-E<dO%M}Q`O1G5}OOQ!0Lf<<JU<<JUO%NVQ?MtO1G0uO&!^Q?MtO1G1PO&!eQ?MtO1G1PO&$fQ?MtO1G1PO&$mQ?MtO1G1PO&&nQ?MtO1G1PO&(oQ?MtO1G1PO&(vQ?MtO1G1PO&(}Q?MtO1G1PO&+OQ?MtO1G1PO&+VQ?MtO1G1PO&+^Q!0MxO<<JfO&-UQ?MtO1G1PO&.RQ?MvO1G1PO&/UQ?MvO'#JlO&1[Q?MtO1G1cO&1iQ?MtO1G0UO&1sQMjO,5?TOOQO-E<g-E<gO!)[QlO'#FqOOQO'#KZ'#KZOOQO1G1u1G1uO&1}Q`O1G1tO&2SQ?MtO,5?[OOOW7+'h7+'hOOOO1G/Z1G/ZO&2^Q!dO1G4xOOQ!0Lh7+(Q7+(QP!&zQMhO,5?^O!,TQMhO7+(cO&2eQ`O,5?]O9eQ`O,5?]O$+YQ`O,5?]OOQO-E<o-E<oO&2sQ`O1G6bO&2sQ`O1G6bO&2{Q`O1G6bO&3WQMjO7+'zO&3hQ!dO,5?_O&3rQ`O,5?_O!&zQMhO,5?_OOQO-E<q-E<qO&3wQ!dO1G6cO&4RQ`O1G6cO&4ZQ`O1G2kO!&zQMhO1G2kOOQ!0Lb1G2i1G2iOOQ!0Lb1G2j1G2jO%4hQpO1G2iO!CUQpO1G2iOCwQ`O1G2iOOQ!0Lb1G2q1G2qO&4`QpO1G2iO&4nQ`O1G2kO$+YQ`O1G2jOCwQ`O1G2jO$$wQlO1G2kO&4vQ`O1G2jO&5jQMjO,5?aOOQ!0Lh-E<t-E<tO&6]QMjO,5?cOOQ!0Lh-E<v-E<vO!,TQMhO7++]O&6gQMjO7++]O&6qQMjO7++]OOQ!0Lh1G/c1G/cO&7OQ`O1G/cOOQ!0Lh7+'u7+'uO&7TQMjO7+'|O&7eQ!0MxO<<KXOOQ!0Lf<<KX<<KXO&8XQ`O1G0zO!&zQMhO'#IzO&8^Q`O,5@xO&:`Q!fO<<LPO!&zQMhO1G2nO&:gQ!0LrO1G2nOOQ[<<G{<<G{O!ByQ!0LrO<<G{O&:xQ!0MxO<<I{OOQ!0Lf<<I{<<I{OOQO,5?l,5?lO&;lQ`O,5?lO&;qQ`O,5?lOOQO-E=O-E=OO&<PQ`O1G6kO&<PQ`O1G6kO9kQ`O1G6kO@zQ`O<<LlOOQ[<<Ll<<LlO&<XQ`O<<LlO9uQ!0LrO<<LlO9kQ`O<<LlOOQ[<<LX<<LXO%:yQ!0MvO<<LXOOQ[<<LY<<LYO!E^Q`O<<LYO&<^QpO'#I|O&<iQ`O,5@|O!)[QlO,5@|OOQ[1G3W1G3WOOQO'#JO'#JOO9uQ!0LrO'#JOO&<qQpO,5=uOOQ[,5=u,5=uO&<xQpO'#EgO&=PQpO'#GeO&=UQ`O7+(zO&=ZQ`O7+(zOOQ[7+(z7+(zO!&zQMhO7+(zO%[QlO7+(zO&=cQ`O7+(zOOQ[7+(|7+(|O9uQ!0LrO7+(|O$%dQ`O7+(|O9`Q`O7+(|O!CUQpO7+(|O&=nQ`O,5?kOOQO-E<}-E<}OOQO'#H^'#H^O&=yQ`O1G6iO9uQ!0LrO<<GqOOQ[<<Gq<<GqO@zQ`O<<GqO&>RQ`O7+,WO&>WQ`O7+,XO%[QlO7+,WO%[QlO7+,XOOQ[7+)V7+)VO&>]Q`O7+)VO&>bQlO7+)VO&>iQ`O7+)VOOQ[<<Ly<<LyOOQ[<<L{<<L{OOQ[-E=Q-E=QOOQ[1G3z1G3zO&>nQ`O,5>aOOQ[,5>c,5>cO&>sQ`O1G4QO9eQ`O7+&fO!)[QlO7+&fOOQO7+%_7+%_O&>xQ?MtO1G6ZO?YQ`O7+%_OOQ!0Lf<<Ia<<IaOOQ!0Lf<<Iz<<IzO?YQ`O<<IzOOQO<<Is<<IsO$AlQ!0MxO<<IsO%[QlO<<IsOOQO<<Id<<IdO!ByQ!0LrO<<IdO&?SQ!0LrO<<IsO&?_Q!0MxO<= ^O&?oQ`O<= ]OOQO7+*_7+*_O9eQ`O7+*_OOQ[ANAkANAkO&?wQ!fOANAkO!&zQMhOANAkO#(ZQ`OANAkO4UQ!fOANAkO&@OQ`OANAkO%[QlOANAkO&@WQ!0MzO7+'zO&BiQ!0MzO,5?aO&DtQ!0MzO,5?cO&GPQ!0MzO7+'|O&IbQ!fO1G4lO&IlQ?MtO7+&aO&KpQ?MvO,5=XO&MwQ?MvO,5=ZO&NXQ?MvO,5=XO&NiQ?MvO,5=ZO&NyQ?MvO,59uO'#PQ?MvO,5<kO'%SQ?MvO,5<mO''hQ?MvO,5<{O')^Q?MtO7+'kO')kQ?MtO7+'mO')xQ`O,5<]OOQO7+'`7+'`OOQ!0Lh7+*d7+*dO')}QMjO<<K}OOQO1G4w1G4wO'*UQ`O1G4wO'*aQ`O1G4wO'*oQ`O7++|O'*oQ`O7++|O!&zQMhO1G4yO'*wQ!dO1G4yO'+RQ`O7++}O'+ZQ`O7+(VO'+fQ!dO7+(VOOQ!0Lb7+(T7+(TOOQ!0Lb7+(U7+(UO!CUQpO7+(TOCwQ`O7+(TO'+pQ`O7+(VO!&zQMhO7+(VO$+YQ`O7+(UO'+uQ`O7+(VOCwQ`O7+(UO'+}QMjO<<NwO!,TQMhO<<NwOOQ!0Lh7+$}7+$}O',XQ!dO,5?fOOQO-E<x-E<xO',cQ!0MvO7+(YO!&zQMhO7+(YOOQ[AN=gAN=gO9kQ`O1G5WOOQO1G5W1G5WO',sQ`O1G5WO',xQ`O7+,VO',xQ`O7+,VO9uQ!0LrOANBWO@zQ`OANBWOOQ[ANBWANBWO'-QQ`OANBWOOQ[ANAsANAsOOQ[ANAtANAtO'-VQ`O,5?hOOQO-E<z-E<zO'-bQ?MtO1G6hOOQO,5?j,5?jOOQO-E<|-E<|OOQ[1G3a1G3aO'-lQ`O,5=POOQ[<<Lf<<LfO!&zQMhO<<LfO&=UQ`O<<LfO'-qQ`O<<LfO%[QlO<<LfOOQ[<<Lh<<LhO9uQ!0LrO<<LhO$%dQ`O<<LhO9`Q`O<<LhO'-yQpO1G5VO'.UQ`O7+,TOOQ[AN=]AN=]O9uQ!0LrOAN=]OOQ[<= r<= rOOQ[<= s<= sO'.^Q`O<= rO'.cQ`O<= sOOQ[<<Lq<<LqO'.hQ`O<<LqO'.mQlO<<LqOOQ[1G3{1G3{O?YQ`O7+)lO'.tQ`O<<JQO'/PQ?MtO<<JQOOQO<<Hy<<HyOOQ!0LfAN?fAN?fOOQOAN?_AN?_O$AlQ!0MxOAN?_OOQOAN?OAN?OO%[QlOAN?_OOQO<<My<<MyOOQ[G27VG27VO!&zQMhOG27VO#(ZQ`OG27VO'/ZQ!fOG27VO4UQ!fOG27VO'/bQ`OG27VO'/jQ?MtO<<JfO'/wQ?MvO1G2`O'1mQ?MvO,5?aO'3pQ?MvO,5?cO'5sQ?MvO1G2sO'7vQ?MvO1G2uO'9yQ?MtO<<KXO':WQ?MtO<<I{OOQO1G1w1G1wO!,TQMhOANAiOOQO7+*c7+*cO':eQ`O7+*cO':pQ`O<= hO':xQ!dO7+*eOOQ!0Lb<<Kq<<KqO$+YQ`O<<KqOCwQ`O<<KqO';SQ`O<<KqO!&zQMhO<<KqOOQ!0Lb<<Ko<<KoO!CUQpO<<KoO';_Q!dO<<KqOOQ!0Lb<<Kp<<KpO';iQ`O<<KqO!&zQMhO<<KqO$+YQ`O<<KpO';nQMjOANDcO';xQ!0MvO<<KtOOQO7+*r7+*rO9kQ`O7+*rO'<YQ`O<= qOOQ[G27rG27rO9uQ!0LrOG27rO@zQ`OG27rO!)[QlO1G5SO'<bQ`O7+,SO'<jQ`O1G2kO&=UQ`OANBQOOQ[ANBQANBQO!&zQMhOANBQO'<oQ`OANBQOOQ[ANBSANBSO9uQ!0LrOANBSO$%dQ`OANBSOOQO'#H_'#H_OOQO7+*q7+*qOOQ[G22wG22wOOQ[ANE^ANE^OOQ[ANE_ANE_OOQ[ANB]ANB]O'<wQ`OANB]OOQ[<<MW<<MWO!)[QlOAN?lOOQOG24yG24yO$AlQ!0MxOG24yO#(ZQ`OLD,qOOQ[LD,qLD,qO!&zQMhOLD,qO'<|Q!fOLD,qO'=TQ?MvO7+'zO'>yQ?MvO,5?aO'@|Q?MvO,5?cO'CPQ?MvO7+'|O'DuQMjOG27TOOQO<<M}<<M}OOQ!0LbANA]ANA]O$+YQ`OANA]OCwQ`OANA]O'EVQ!dOANA]OOQ!0LbANAZANAZO'E^Q`OANA]O!&zQMhOANA]O'EiQ!dOANA]OOQ!0LbANA[ANA[OOQO<<N^<<N^OOQ[LD-^LD-^O9uQ!0LrOLD-^O'EsQ?MtO7+*nOOQO'#Gf'#GfOOQ[G27lG27lO&=UQ`OG27lO!&zQMhOG27lOOQ[G27nG27nO9uQ!0LrOG27nOOQ[G27wG27wO'E}Q?MtOG25WOOQOLD*eLD*eOOQ[!$(!]!$(!]O#(ZQ`O!$(!]O!&zQMhO!$(!]O'FXQ!0MzOG27TOOQ!0LbG26wG26wO$+YQ`OG26wO'HjQ`OG26wOCwQ`OG26wO'HuQ!dOG26wO!&zQMhOG26wOOQ[!$(!x!$(!xOOQ[LD-WLD-WO&=UQ`OLD-WOOQ[LD-YLD-YOOQ[!)9Ew!)9EwO#(ZQ`O!)9EwOOQ!0LbLD,cLD,cO$+YQ`OLD,cOCwQ`OLD,cO'H|Q`OLD,cO'IXQ!dOLD,cOOQ[!$(!r!$(!rOOQ[!.K;c!.K;cO'I`Q?MvOG27TOOQ!0Lb!$( }!$( }O$+YQ`O!$( }OCwQ`O!$( }O'KUQ`O!$( }OOQ!0Lb!)9Ei!)9EiO$+YQ`O!)9EiOCwQ`O!)9EiOOQ!0Lb!.K;T!.K;TO$+YQ`O!.K;TOOQ!0Lb!4/0o!4/0oO!)[QlO'#DzO1PQ`O'#EXO'KaQ!fO'#JrO'KhQ!L^O'#DvO'KoQlO'#EOO'KvQ!fO'#CiO'N^Q!fO'#CiO!)[QlO'#EQO'NnQlO,5;ZO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO,5;eO!)[QlO'#IpO(!qQ`O,5<iO!)[QlO,5;eO(!yQMhO,5;eO($dQMhO,5;eO!)[QlO,5;wO!&zQMhO'#GmO(!yQMhO'#GmO!&zQMhO'#GoO(!yQMhO'#GoO1SQ`O'#DZO1SQ`O'#DZO!&zQMhO'#GPO(!yQMhO'#GPO!&zQMhO'#GRO(!yQMhO'#GRO!&zQMhO'#GaO(!yQMhO'#GaO!)[QlO,5:jO($kQpO'#D_O($uQpO'#JvO!)[QlO,5@oO'NnQlO1G0uO(%PQ?MtO'#CiO!)[QlO1G2PO!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO(%ZQ!dO'#CrO!&zQMhO,5<tO(!yQMhO,5<tO'NnQlO1G2RO!)[QlO7+&zO!&zQMhO1G2`O(!yQMhO1G2`O!&zQMhO'#IuO(!yQMhO'#IuO!&zQMhO'#IwO(!yQMhO'#IwO!&zQMhO1G2bO(!yQMhO1G2bO'NnQlO7+'mO'NnQlO7+&aO!&zQMhOANAiO(!yQMhOANAiO(%nQ`O'#EoO(%sQ`O'#EoO(%{Q`O'#F]O(&QQ`O'#EyO(&VQ`O'#KTO(&bQ`O'#KRO(&mQ`O,5;ZO(&rQMjO,5<eO(&yQ`O'#GYO('OQ`O'#GYO('TQ`O,5<eO(']Q`O,5<gO('eQ`O,5;ZO('mQ?MtO1G1`O('tQ`O,5<tO('yQ`O,5<tO((OQ`O,5<vO((TQ`O,5<vO((YQ`O1G2RO((_Q`O1G0uO((dQMjO<<K}O((kQMjO<<K}O((rQMhO'#F|O9`Q`O'#F{OAuQ`O'#EnO!)[QlO,5;tO!3oQ`O'#GYO!3oQ`O'#GYO!3oQ`O'#G[O!3oQ`O'#G[O!,TQMhO7+(cO!,TQMhO7+(cO%.zQ!dO1G2wO%.zQ!dO1G2wO!&zQMhO,5=]O!&zQMhO,5=]",stateData:"()x~O'|OS'}OSTOS(ORQ~OPYOQYOSfOY!VOaqOdzOeyOl!POpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!uwO!xxO!|]O$W|O$niO%h}O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO&W!WO&^!XO&`!YO&b!ZO&d![O&g!]O&m!^O&s!_O&u!`O&w!aO&y!bO&{!cO(TSO(VTO(YUO(aVO(o[O~OWtO~P`OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa!wOs!nO!S!oO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!xO#W!pO#X!pO#[!zO#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O(O!{O~OP]XR]X[]Xa]Xj]Xr]X!Q]X!S]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X'z]X(a]X(r]X(y]X(z]X~O!g%RX~P(qO_!}O(V#PO(W!}O(X#PO~O_#QO(X#PO(Y#PO(Z#QO~Ox#SO!U#TO(b#TO(c#VO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T<ZO(VTO(YUO(aVO(o[O~O![#ZO!]#WO!Y(hP!Y(vP~P+}O!^#cO~P`OPYOQYOSfOd!jOe!iOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(VTO(YUO(aVO(o[O~Op#mO![#iO!|]O#i#lO#j#iO(T<[O!k(sP~P.iO!l#oO(T#nO~O!x#sO!|]O%h#tO~O#k#uO~O!g#vO#k#uO~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!]$_O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa(fX'z(fX'w(fX!k(fX!Y(fX!_(fX%i(fX!g(fX~P1qO#S$dO#`$eO$Q$eOP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX!_(gX%i(gX~Oa(gX'z(gX'w(gX!Y(gX!k(gXv(gX!g(gX~P4UO#`$eO~O$]$hO$_$gO$f$mO~OSfO!_$nO$i$oO$k$qO~Oh%VOj%dOk%dOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T$sO(VTO(YUO(a$uO(y$}O(z%POg(^P~Ol%[O~P7eO!l%eO~O!S%hO!_%iO(T%gO~O!g%mO~Oa%nO'z%nO~O!Q%rO~P%[O(U!lO~P%[O%n%vO~P%[Oh%VO!l%eO(T%gO(U!lO~Oe%}O!l%eO(T%gO~Oj$RO~O!_&PO(T%gO(U!lO(VTO(YUO`)WP~O!Q&SO!l&RO%j&VO&T&WO~P;SO!x#sO~O%s&YO!S)SX!_)SX(T)SX~O(T&ZO~Ol!PO!u&`O%j!QO%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO~Od&eOe&dO!x&bO%h&cO%{&aO~P<bOd&hOeyOl!PO!_&gO!u&`O!xxO!|]O%h}O%l!OO%m!OO%n!OO%q!RO%s!SO%v!TO%w!TO%y!UO~Ob&kO#`&nO%j&iO(U!lO~P=gO!l&oO!u&sO~O!l#oO~O!_XO~Oa%nO'x&{O'z%nO~Oa%nO'x'OO'z%nO~Oa%nO'x'QO'z%nO~O'w]X!Y]Xv]X!k]X&[]X!_]X%i]X!g]X~P(qO!b'_O!c'WO!d'WO(U!lO(VTO(YUO~Os'UO!S'TO!['XO(e'SO!^(iP!^(xP~P@nOn'bO!_'`O(T%gO~Oe'gO!l%eO(T%gO~O!Q&SO!l&RO~Os!nO!S!oO!|<VO#T!pO#U!pO#W!pO#X!pO(U!lO(VTO(YUO(e!mO(o!sO~O!b'mO!c'lO!d'lO#V!pO#['nO#]'nO~PBYOa%nOh%VO!g#vO!l%eO'z%nO(r'pO~O!p'tO#`'rO~PChOs!nO!S!oO(VTO(YUO(e!mO(o!sO~O!_XOs(mX!S(mX!b(mX!c(mX!d(mX!|(mX#T(mX#U(mX#V(mX#W(mX#X(mX#[(mX#](mX(U(mX(V(mX(Y(mX(e(mX(o(mX~O!c'lO!d'lO(U!lO~PDWO(P'xO(Q'xO(R'zO~O_!}O(V'|O(W!}O(X'|O~O_#QO(X'|O(Y'|O(Z#QO~Ov(OO~P%[Ox#SO!U#TO(b#TO(c(RO~O![(TO!Y'WX!Y'^X!]'WX!]'^X~P+}O!](VO!Y(hX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!](VO!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~O!Y(hX~PHRO!Y([O~O!Y(uX!](uX!g(uX!k(uX(r(uX~O#`(uX#k#dX!^(uX~PJUO#`(]O!Y(wX!](wX~O!](^O!Y(vX~O!Y(aO~O#`$eO~PJUO!^(bO~P`OR#zO!Q#yO!S#{O!l#xO(aVOP!na[!naj!nar!na!]!na!p!na#R!na#n!na#o!na#p!na#q!na#r!na#s!na#t!na#u!na#v!na#x!na#z!na#{!na(r!na(y!na(z!na~Oa!na'z!na'w!na!Y!na!k!nav!na!_!na%i!na!g!na~PKlO!k(cO~O!g#vO#`(dO(r'pO!](tXa(tX'z(tX~O!k(tX~PNXO!S%hO!_%iO!|]O#i(iO#j(hO(T%gO~O!](jO!k(sX~O!k(lO~O!S%hO!_%iO#j(hO(T%gO~OP(gXR(gX[(gXj(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~O!g#vO!k(gX~P! uOR(nO!Q(mO!l#xO#S$dO!|!{a!S!{a~O!x!{a%h!{a!_!{a#i!{a#j!{a(T!{a~P!#vO!x(rO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_XO!iuO!lZO!oYO!pYO!qYO!svO!u!gO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~O#k(xO~O![(zO!k(kP~P%[O(e(|O(o[O~O!S)OO!l#xO(e(|O(o[O~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]$_Oa$qa'z$qa'w$qa!k$qa!Y$qa!_$qa%i$qa!g$qa~Ol)dO~P!&zOh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O%]O!S${O!_$|O!i%bO!l$xO#j%cO$W%`O$t%^O$v%_O$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Og(pP~P!,TO!Q)iO!g)hO!_$^X$Z$^X$]$^X$_$^X$f$^X~O!g)hO!_({X$Z({X$]({X$_({X$f({X~O!Q)iO~P!.^O!Q)iO!_({X$Z({X$]({X$_({X$f({X~O!_)kO$Z)oO$])jO$_)jO$f)pO~O![)sO~P!)[O$]$hO$_$gO$f)wO~On$zX!Q$zX#S$zX'y$zX(y$zX(z$zX~OgmXg$zXnmX!]mX#`mX~P!0SOx)yO(b)zO(c)|O~On*VO!Q*OO'y*PO(y$}O(z%PO~Og)}O~P!1WOg*WO~Oh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S*YO!_*ZO!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op*`O}O(T&ZO~O!l+SO~O(T(vO~Op+WO!S%hO![#iO!_%iO!|]O#i#lO#j#iO(T%gO!k(sP~O!g#vO#k+XO~O!S%hOTX'z)TX~OP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO#z$WO#{$XO(aVO(r$YO(y#|O(z#}O~Oa!ja!]!ja'z!ja'w!ja!Y!ja!k!jav!ja!_!ja%i!ja!g!ja~P!:tOR#zO!Q#yO!S#{O!l#xO(aVOP!ra[!raj!rar!ra!]!ra!p!ra#R!ra#n!ra#o!ra#p!ra#q!ra#r!ra#s!ra#t!ra#u!ra#v!ra#x!ra#z!ra#{!ra(r!ra(y!ra(z!ra~Oa!ra'z!ra'w!ra!Y!ra!k!rav!ra!_!ra%i!ra!g!ra~P!=[OR#zO!Q#yO!S#{O!l#xO(aVOP!ta[!taj!tar!ta!]!ta!p!ta#R!ta#n!ta#o!ta#p!ta#q!ta#r!ta#s!ta#t!ta#u!ta#v!ta#x!ta#z!ta#{!ta(r!ta(y!ta(z!ta~Oa!ta'z!ta'w!ta!Y!ta!k!tav!ta!_!ta%i!ta!g!ta~P!?rOh%VOn+gO!_'`O%i+fO~O!g+iOa(]X!_(]X'z(]X!](]X~Oa%nO!_XO'z%nO~Oh%VO!l%eO~Oh%VO!l%eO(T%gO~O!g#vO#k(xO~Ob+tO%j+uO(T+qO(VTO(YUO!^)XP~O!]+vO`)WX~O[+zO~O`+{O~O!_&PO(T%gO(U!lO`)WP~O%j,OO~P;SOh%VO#`,SO~Oh%VOn,VO!_$|O~O!_,XO~O!Q,ZO!_XO~O%n%vO~O!x,`O~Oe,eO~Ob,fO(T#nO(VTO(YUO!^)VP~Oe%}O~O%j!QO(T&ZO~P=gO[,kO`,jO~OPYOQYOSfOdzOeyOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!iuO!lZO!oYO!pYO!qYO!svO!xxO!|]O$niO%h}O(VTO(YUO(aVO(o[O~O!_!eO!u!gO$W!kO(T!dO~P!FyO`,jOa%nO'z%nO~OPYOQYOSfOd!jOe!iOpkOrYOskOtkOzkO|YO!OYO!SWO!WkO!XkO!_!eO!iuO!lZO!oYO!pYO!qYO!svO!x!hO$W!kO$niO(T!dO(VTO(YUO(aVO(o[O~Oa,pOl!OO!uwO%l!OO%m!OO%n!OO~P!IcO!l&oO~O&^,vO~O!_,xO~O&o,zO&q,{OP&laQ&laS&laY&laa&lad&lae&lal&lap&lar&las&lat&laz&la|&la!O&la!S&la!W&la!X&la!_&la!i&la!l&la!o&la!p&la!q&la!s&la!u&la!x&la!|&la$W&la$n&la%h&la%j&la%l&la%m&la%n&la%q&la%s&la%v&la%w&la%y&la&W&la&^&la&`&la&b&la&d&la&g&la&m&la&s&la&u&la&w&la&y&la&{&la'w&la(T&la(V&la(Y&la(a&la(o&la!^&la&e&lab&la&j&la~O(T-QO~Oh!eX!]!RX!^!RX!g!RX!g!eX!l!eX#`!RX~O!]!eX!^!eX~P#!iO!g-VO#`-UOh(jX!]#hX!^#hX!g(jX!l(jX~O!](jX!^(jX~P##[Oh%VO!g-XO!l%eO!]!aX!^!aX~Os!nO!S!oO(VTO(YUO(e!mO~OP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_!eO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(VTO(YUO(aVO(o[O~O(T=QO~P#$qO!]-]O!^(iX~O!^-_O~O!g-VO#`-UO!]#hX!^#hX~O!]-`O!^(xX~O!^-bO~O!c-cO!d-cO(U!lO~P#$`O!^-fO~P'_On-iO!_'`O~O!Y-nO~Os!{a!b!{a!c!{a!d!{a#T!{a#U!{a#V!{a#W!{a#X!{a#[!{a#]!{a(U!{a(V!{a(Y!{a(e!{a(o!{a~P!#vO!p-sO#`-qO~PChO!c-uO!d-uO(U!lO~PDWOa%nO#`-qO'z%nO~Oa%nO!g#vO#`-qO'z%nO~Oa%nO!g#vO!p-sO#`-qO'z%nO(r'pO~O(P'xO(Q'xO(R-zO~Ov-{O~O!Y'Wa!]'Wa~P!:tO![.PO!Y'WX!]'WX~P%[O!](VO!Y(ha~O!Y(ha~PHRO!](^O!Y(va~O!S%hO![.TO!_%iO(T%gO!Y'^X!]'^X~O#`.VO!](ta!k(taa(ta'z(ta~O!g#vO~P#,wO!](jO!k(sa~O!S%hO!_%iO#j.ZO(T%gO~Op.`O!S%hO![.]O!_%iO!|]O#i._O#j.]O(T%gO!]'aX!k'aX~OR.dO!l#xO~Oh%VOn.gO!_'`O%i.fO~Oa#ci!]#ci'z#ci'w#ci!Y#ci!k#civ#ci!_#ci%i#ci!g#ci~P!:tOn>]O!Q*OO'y*PO(y$}O(z%PO~O#k#_aa#_a#`#_a'z#_a!]#_a!k#_a!_#_a!Y#_a~P#/sO#k(`XP(`XR(`X[(`Xa(`Xj(`Xr(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X'z(`X(a(`X(r(`X!k(`X!Y(`X'w(`Xv(`X!_(`X%i(`X!g(`X~P!6kO!].tO!k(kX~P!:tO!k.wO~O!Y.yO~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mia#mij#mir#mi!]#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#n#mi~P#3cO#n$OO~P#3cOP$[OR#zOr$aO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO[#mia#mij#mi!]#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#r#mi~P#6QO#r$QO~P#6QOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO(aVOa#mi!]#mi#x#mi#z#mi#{#mi'z#mi(r#mi(y#mi(z#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#v#mi~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO(aVO(z#}Oa#mi!]#mi#z#mi#{#mi'z#mi(r#mi(y#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#x$UO~P#;VO#x#mi~P#;VO#v$SO~P#8oOP$[OR#zO[$cOj$ROr$aO!Q#yO!S#{O!l#xO!p$[O#R$RO#n$OO#o$PO#p$PO#q$PO#r$QO#s$RO#t$RO#u$bO#v$SO#x$UO(aVO(y#|O(z#}Oa#mi!]#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~O#z#mi~P#={O#z$WO~P#={OP]XR]X[]Xj]Xr]X!Q]X!S]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X!]]X!^]X~O$O]X~P#@jOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO#z<gO#{<hO(aVO(r$YO(y#|O(z#}O~O$O.{O~P#BwO#S$dO#`<nO$Q<nO$O(gX!^(gX~P! uOa'da!]'da'z'da'w'da!k'da!Y'dav'da!_'da%i'da!g'da~P!:tO[#mia#mij#mir#mi!]#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi'z#mi(r#mi'w#mi!Y#mi!k#miv#mi!_#mi%i#mi!g#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n$OO#o$PO#p$PO#q$PO(aVO(y#mi(z#mi~P#EyOn>]O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P#EyO!]/POg(pX~P!1WOg/RO~Oa$Pi!]$Pi'z$Pi'w$Pi!Y$Pi!k$Piv$Pi!_$Pi%i$Pi!g$Pi~P!:tO$]/SO$_/SO~O$]/TO$_/TO~O!g)hO#`/UO!_$cX$Z$cX$]$cX$_$cX$f$cX~O![/VO~O!_)kO$Z/XO$])jO$_)jO$f/YO~O!]<iO!^(fX~P#BwO!^/ZO~O!g)hO$f({X~O$f/]O~Ov/^O~P!&zOx)yO(b)zO(c/aO~O!S/dO~O(y$}On%aa!Q%aa'y%aa(z%aa!]%aa#`%aa~Og%aa$O%aa~P#L{O(z%POn%ca!Q%ca'y%ca(y%ca!]%ca#`%ca~Og%ca$O%ca~P#MnO!]fX!gfX!kfX!k$zX(rfX~P!0SOp%WOPP~P!1uOr*sO!b*qO!c*kO!d*kO!l*bO#[*rO%`*mO(U!lO(VTO(YUO~Os<}O!S/nO![+[O!^*pO(e<|O!^(xP~P$ [O!k/oO~P#/sO!]/pO!g#vO(r'pO!k)OX~O!k/uO~OnoX!QoX'yoX(yoX(zoX~O!g#vO!koX~P$#OOp/wO!S%hO![*^O!_%iO(T%gO!k)OP~O#k/xO~O!Y$zX!]$zX!g%RX~P!0SO!]/yO!Y)PX~P#/sO!g/{O~O!Y/}O~OpkO(T0OO~P.iOh%VOr0TO!g#vO!l%eO(r'pO~O!g+iO~Oa%nO!]0XO'z%nO~O!^0ZO~P!5iO!c0[O!d0[O(U!lO~P#$`Os!nO!S0]O(VTO(YUO(e!mO~O#[0_O~Og%aa!]%aa#`%aa$O%aa~P!1WOg%ca!]%ca#`%ca$O%ca~P!1WOj%dOk%dOl%dO(T&ZOg'mX!]'mX~O!]*yOg(^a~Og0hO~On0jO#`0iOg(_a!](_a~OR0kO!Q0kO!S0lO#S$dOn}a'y}a(y}a(z}a!]}a#`}a~Og}a$O}a~P$(cO!Q*OO'y*POn$sa(y$sa(z$sa!]$sa#`$sa~Og$sa$O$sa~P$)_O!Q*OO'y*POn$ua(y$ua(z$ua!]$ua#`$ua~Og$ua$O$ua~P$*QO#k0oO~Og%Ta!]%Ta#`%Ta$O%Ta~P!1WO!g#vO~O#k0rO~O!]+^Oa)Ta'z)Ta~OR#zO!Q#yO!S#{O!l#xO(aVOP!ri[!rij!rir!ri!]!ri!p!ri#R!ri#n!ri#o!ri#p!ri#q!ri#r!ri#s!ri#t!ri#u!ri#v!ri#x!ri#z!ri#{!ri(r!ri(y!ri(z!ri~Oa!ri'z!ri'w!ri!Y!ri!k!riv!ri!_!ri%i!ri!g!ri~P$+oOh%VOr%XOs$tOt$tOz%YO|%ZO!O<sO!S${O!_$|O!i>VO!l$xO#j<yO$W%`O$t<uO$v<wO$y%aO(VTO(YUO(a$uO(y$}O(z%PO~Op0{O%]0|O(T0zO~P$.VO!g+iOa(]a!_(]a'z(]a!](]a~O#k1SO~O[]X!]fX!^fX~O!]1TO!^)XX~O!^1VO~O[1WO~Ob1YO(T+qO(VTO(YUO~O!_&PO(T%gO`'uX!]'uX~O!]+vO`)Wa~O!k1]O~P!:tO[1`O~O`1aO~O#`1fO~On1iO!_$|O~O(e(|O!^)UP~Oh%VOn1rO!_1oO%i1qO~O[1|O!]1zO!^)VX~O!^1}O~O`2POa%nO'z%nO~O(T#nO(VTO(YUO~O#S$dO#`$eO$Q$eOP(gXR(gX[(gXr(gX!Q(gX!S(gX!](gX!l(gX!p(gX#R(gX#n(gX#o(gX#p(gX#q(gX#r(gX#s(gX#t(gX#u(gX#v(gX#x(gX#z(gX#{(gX(a(gX(r(gX(y(gX(z(gX~Oj2SO&[2TOa(gX~P$3pOj2SO#`$eO&[2TO~Oa2VO~P%[Oa2XO~O&e2[OP&ciQ&ciS&ciY&cia&cid&cie&cil&cip&cir&cis&cit&ciz&ci|&ci!O&ci!S&ci!W&ci!X&ci!_&ci!i&ci!l&ci!o&ci!p&ci!q&ci!s&ci!u&ci!x&ci!|&ci$W&ci$n&ci%h&ci%j&ci%l&ci%m&ci%n&ci%q&ci%s&ci%v&ci%w&ci%y&ci&W&ci&^&ci&`&ci&b&ci&d&ci&g&ci&m&ci&s&ci&u&ci&w&ci&y&ci&{&ci'w&ci(T&ci(V&ci(Y&ci(a&ci(o&ci!^&cib&ci&j&ci~Ob2bO!^2`O&j2aO~P`O!_XO!l2dO~O&q,{OP&liQ&liS&liY&lia&lid&lie&lil&lip&lir&lis&lit&liz&li|&li!O&li!S&li!W&li!X&li!_&li!i&li!l&li!o&li!p&li!q&li!s&li!u&li!x&li!|&li$W&li$n&li%h&li%j&li%l&li%m&li%n&li%q&li%s&li%v&li%w&li%y&li&W&li&^&li&`&li&b&li&d&li&g&li&m&li&s&li&u&li&w&li&y&li&{&li'w&li(T&li(V&li(Y&li(a&li(o&li!^&li&e&lib&li&j&li~O!Y2jO~O!]!aa!^!aa~P#BwOs!nO!S!oO![2pO(e!mO!]'XX!^'XX~P@nO!]-]O!^(ia~O!]'_X!^'_X~P!9|O!]-`O!^(xa~O!^2wO~P'_Oa%nO#`3QO'z%nO~Oa%nO!g#vO#`3QO'z%nO~Oa%nO!g#vO!p3UO#`3QO'z%nO(r'pO~Oa%nO'z%nO~P!:tO!]$_Ov$qa~O!Y'Wi!]'Wi~P!:tO!](VO!Y(hi~O!](^O!Y(vi~O!Y(wi!](wi~P!:tO!](ti!k(tia(ti'z(ti~P!:tO#`3WO!](ti!k(tia(ti'z(ti~O!](jO!k(si~O!S%hO!_%iO!|]O#i3]O#j3[O(T%gO~O!S%hO!_%iO#j3[O(T%gO~On3dO!_'`O%i3cO~Oh%VOn3dO!_'`O%i3cO~O#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aav%aa!_%aa%i%aa!g%aa~P#L{O#k%caP%caR%ca[%caa%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%cav%ca!_%ca%i%ca!g%ca~P#MnO#k%aaP%aaR%aa[%aaa%aaj%aar%aa!S%aa!]%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa'z%aa(a%aa(r%aa!k%aa!Y%aa'w%aa#`%aav%aa!_%aa%i%aa!g%aa~P#/sO#k%caP%caR%ca[%caa%caj%car%ca!S%ca!]%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca'z%ca(a%ca(r%ca!k%ca!Y%ca'w%ca#`%cav%ca!_%ca%i%ca!g%ca~P#/sO#k}aP}a[}aa}aj}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a'z}a(a}a(r}a!k}a!Y}a'w}av}a!_}a%i}a!g}a~P$(cO#k$saP$saR$sa[$saa$saj$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa'z$sa(a$sa(r$sa!k$sa!Y$sa'w$sav$sa!_$sa%i$sa!g$sa~P$)_O#k$uaP$uaR$ua[$uaa$uaj$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua'z$ua(a$ua(r$ua!k$ua!Y$ua'w$uav$ua!_$ua%i$ua!g$ua~P$*QO#k%TaP%TaR%Ta[%Taa%Taj%Tar%Ta!S%Ta!]%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta'z%Ta(a%Ta(r%Ta!k%Ta!Y%Ta'w%Ta#`%Tav%Ta!_%Ta%i%Ta!g%Ta~P#/sOa#cq!]#cq'z#cq'w#cq!Y#cq!k#cqv#cq!_#cq%i#cq!g#cq~P!:tO![3lO!]'YX!k'YX~P%[O!].tO!k(ka~O!].tO!k(ka~P!:tO!Y3oO~O$O!na!^!na~PKlO$O!ja!]!ja!^!ja~P#BwO$O!ra!^!ra~P!=[O$O!ta!^!ta~P!?rOg']X!]']X~P!,TO!]/POg(pa~OSfO!_4TO$d4UO~O!^4YO~Ov4ZO~P#/sOa$mq!]$mq'z$mq'w$mq!Y$mq!k$mqv$mq!_$mq%i$mq!g$mq~P!:tO!Y4]O~P!&zO!S4^O~O!Q*OO'y*PO(z%POn'ia(y'ia!]'ia#`'ia~Og'ia$O'ia~P%-fO!Q*OO'y*POn'ka(y'ka(z'ka!]'ka#`'ka~Og'ka$O'ka~P%.XO(r$YO~P#/sO!YfX!Y$zX!]fX!]$zX!g%RX#`fX~P!0SOp%WO(T=WO~P!1uOp4bO!S%hO![4aO!_%iO(T%gO!]'eX!k'eX~O!]/pO!k)Oa~O!]/pO!g#vO!k)Oa~O!]/pO!g#vO(r'pO!k)Oa~Og$|i!]$|i#`$|i$O$|i~P!1WO![4jO!Y'gX!]'gX~P!3tO!]/yO!Y)Pa~O!]/yO!Y)Pa~P#/sOP]XR]X[]Xj]Xr]X!Q]X!S]X!Y]X!]]X!l]X!p]X#R]X#S]X#`]X#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~Oj%YX!g%YX~P%2OOj4oO!g#vO~Oh%VO!g#vO!l%eO~Oh%VOr4tO!l%eO(r'pO~Or4yO!g#vO(r'pO~Os!nO!S4zO(VTO(YUO(e!mO~O(y$}On%ai!Q%ai'y%ai(z%ai!]%ai#`%ai~Og%ai$O%ai~P%5oO(z%POn%ci!Q%ci'y%ci(y%ci!]%ci#`%ci~Og%ci$O%ci~P%6bOg(_i!](_i~P!1WO#`5QOg(_i!](_i~P!1WO!k5VO~Oa$oq!]$oq'z$oq'w$oq!Y$oq!k$oqv$oq!_$oq%i$oq!g$oq~P!:tO!Y5ZO~O!]5[O!_)QX~P#/sOa$zX!_$zX%^]X'z$zX!]$zX~P!0SO%^5_OaoX!_oX'zoX!]oX~P$#OOp5`O(T#nO~O%^5_O~Ob5fO%j5gO(T+qO(VTO(YUO!]'tX!^'tX~O!]1TO!^)Xa~O[5kO~O`5lO~O[5pO~Oa%nO'z%nO~P#/sO!]5uO#`5wO!^)UX~O!^5xO~Or6OOs!nO!S*iO!b!yO!c!vO!d!vO!|<VO#T!pO#U!pO#V!pO#W!pO#X!pO#[5}O#]!zO(U!lO(VTO(YUO(e!mO(o!sO~O!^5|O~P%;eOn6TO!_1oO%i6SO~Oh%VOn6TO!_1oO%i6SO~Ob6[O(T#nO(VTO(YUO!]'sX!^'sX~O!]1zO!^)Va~O(VTO(YUO(e6^O~O`6bO~Oj6eO&[6fO~PNXO!k6gO~P%[Oa6iO~Oa6iO~P%[Ob2bO!^6nO&j2aO~P`O!g6pO~O!g6rOh(ji!](ji!^(ji!g(ji!l(jir(ji(r(ji~O!]#hi!^#hi~P#BwO#`6sO!]#hi!^#hi~O!]!ai!^!ai~P#BwOa%nO#`6|O'z%nO~Oa%nO!g#vO#`6|O'z%nO~O!](tq!k(tqa(tq'z(tq~P!:tO!](jO!k(sq~O!S%hO!_%iO#j7TO(T%gO~O!_'`O%i7WO~On7[O!_'`O%i7WO~O#k'iaP'iaR'ia['iaa'iaj'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia'z'ia(a'ia(r'ia!k'ia!Y'ia'w'iav'ia!_'ia%i'ia!g'ia~P%-fO#k'kaP'kaR'ka['kaa'kaj'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka'z'ka(a'ka(r'ka!k'ka!Y'ka'w'kav'ka!_'ka%i'ka!g'ka~P%.XO#k$|iP$|iR$|i[$|ia$|ij$|ir$|i!S$|i!]$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i'z$|i(a$|i(r$|i!k$|i!Y$|i'w$|i#`$|iv$|i!_$|i%i$|i!g$|i~P#/sO#k%aiP%aiR%ai[%aia%aij%air%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai'z%ai(a%ai(r%ai!k%ai!Y%ai'w%aiv%ai!_%ai%i%ai!g%ai~P%5oO#k%ciP%ciR%ci[%cia%cij%cir%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci'z%ci(a%ci(r%ci!k%ci!Y%ci'w%civ%ci!_%ci%i%ci!g%ci~P%6bO!]'Ya!k'Ya~P!:tO!].tO!k(ki~O$O#ci!]#ci!^#ci~P#BwOP$[OR#zO!Q#yO!S#{O!l#xO!p$[O(aVO[#mij#mir#mi#R#mi#o#mi#p#mi#q#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#n#mi~P%NdO#n<_O~P%NdOP$[OR#zOr<kO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO[#mij#mi#R#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#r#mi~P&!lO#r<aO~P&!lOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO(aVO#x#mi#z#mi#{#mi$O#mi(r#mi(y#mi(z#mi!]#mi!^#mi~O#v#mi~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO(aVO(z#}O#z#mi#{#mi$O#mi(r#mi(y#mi!]#mi!^#mi~O#x<eO~P&&uO#x#mi~P&&uO#v<cO~P&$tOP$[OR#zO[<mOj<bOr<kO!Q#yO!S#{O!l#xO!p$[O#R<bO#n<_O#o<`O#p<`O#q<`O#r<aO#s<bO#t<bO#u<lO#v<cO#x<eO(aVO(y#|O(z#}O#{#mi$O#mi(r#mi!]#mi!^#mi~O#z#mi~P&)UO#z<gO~P&)UOa#|y!]#|y'z#|y'w#|y!Y#|y!k#|yv#|y!_#|y%i#|y!g#|y~P!:tO[#mij#mir#mi#R#mi#r#mi#s#mi#t#mi#u#mi#v#mi#x#mi#z#mi#{#mi$O#mi(r#mi!]#mi!^#mi~OP$[OR#zO!Q#yO!S#{O!l#xO!p$[O#n<_O#o<`O#p<`O#q<`O(aVO(y#mi(z#mi~P&,QOn>^O!Q*OO'y*PO(y$}O(z%POP#miR#mi!S#mi!l#mi!p#mi#n#mi#o#mi#p#mi#q#mi(a#mi~P&,QO#S$dOP(`XR(`X[(`Xj(`Xn(`Xr(`X!Q(`X!S(`X!l(`X!p(`X#R(`X#n(`X#o(`X#p(`X#q(`X#r(`X#s(`X#t(`X#u(`X#v(`X#x(`X#z(`X#{(`X$O(`X'y(`X(a(`X(r(`X(y(`X(z(`X!](`X!^(`X~O$O$Pi!]$Pi!^$Pi~P#BwO$O!ri!^!ri~P$+oOg']a!]']a~P!1WO!^7nO~O!]'da!^'da~P#BwO!Y7oO~P#/sO!g#vO(r'pO!]'ea!k'ea~O!]/pO!k)Oi~O!]/pO!g#vO!k)Oi~Og$|q!]$|q#`$|q$O$|q~P!1WO!Y'ga!]'ga~P#/sO!g7vO~O!]/yO!Y)Pi~P#/sO!]/yO!Y)Pi~O!Y7yO~Oh%VOr8OO!l%eO(r'pO~Oj8QO!g#vO~Or8TO!g#vO(r'pO~O!Q*OO'y*PO(z%POn'ja(y'ja!]'ja#`'ja~Og'ja$O'ja~P&5RO!Q*OO'y*POn'la(y'la(z'la!]'la#`'la~Og'la$O'la~P&5tOg(_q!](_q~P!1WO#`8VOg(_q!](_q~P!1WO!Y8WO~Og%Oq!]%Oq#`%Oq$O%Oq~P!1WOa$oy!]$oy'z$oy'w$oy!Y$oy!k$oyv$oy!_$oy%i$oy!g$oy~P!:tO!g6rO~O!]5[O!_)Qa~O!_'`OP$TaR$Ta[$Taj$Tar$Ta!Q$Ta!S$Ta!]$Ta!l$Ta!p$Ta#R$Ta#n$Ta#o$Ta#p$Ta#q$Ta#r$Ta#s$Ta#t$Ta#u$Ta#v$Ta#x$Ta#z$Ta#{$Ta(a$Ta(r$Ta(y$Ta(z$Ta~O%i7WO~P&8fO%^8[Oa%[i!_%[i'z%[i!]%[i~Oa#cy!]#cy'z#cy'w#cy!Y#cy!k#cyv#cy!_#cy%i#cy!g#cy~P!:tO[8^O~Ob8`O(T+qO(VTO(YUO~O!]1TO!^)Xi~O`8dO~O(e(|O!]'pX!^'pX~O!]5uO!^)Ua~O!^8nO~P%;eO(o!sO~P$&YO#[8oO~O!_1oO~O!_1oO%i8qO~On8tO!_1oO%i8qO~O[8yO!]'sa!^'sa~O!]1zO!^)Vi~O!k8}O~O!k9OO~O!k9RO~O!k9RO~P%[Oa9TO~O!g9UO~O!k9VO~O!](wi!^(wi~P#BwOa%nO#`9_O'z%nO~O!](ty!k(tya(ty'z(ty~P!:tO!](jO!k(sy~O%i9bO~P&8fO!_'`O%i9bO~O#k$|qP$|qR$|q[$|qa$|qj$|qr$|q!S$|q!]$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q'z$|q(a$|q(r$|q!k$|q!Y$|q'w$|q#`$|qv$|q!_$|q%i$|q!g$|q~P#/sO#k'jaP'jaR'ja['jaa'jaj'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja'z'ja(a'ja(r'ja!k'ja!Y'ja'w'jav'ja!_'ja%i'ja!g'ja~P&5RO#k'laP'laR'la['laa'laj'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la'z'la(a'la(r'la!k'la!Y'la'w'lav'la!_'la%i'la!g'la~P&5tO#k%OqP%OqR%Oq[%Oqa%Oqj%Oqr%Oq!S%Oq!]%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq'z%Oq(a%Oq(r%Oq!k%Oq!Y%Oq'w%Oq#`%Oqv%Oq!_%Oq%i%Oq!g%Oq~P#/sO!]'Yi!k'Yi~P!:tO$O#cq!]#cq!^#cq~P#BwO(y$}OP%aaR%aa[%aaj%aar%aa!S%aa!l%aa!p%aa#R%aa#n%aa#o%aa#p%aa#q%aa#r%aa#s%aa#t%aa#u%aa#v%aa#x%aa#z%aa#{%aa$O%aa(a%aa(r%aa!]%aa!^%aa~On%aa!Q%aa'y%aa(z%aa~P&IyO(z%POP%caR%ca[%caj%car%ca!S%ca!l%ca!p%ca#R%ca#n%ca#o%ca#p%ca#q%ca#r%ca#s%ca#t%ca#u%ca#v%ca#x%ca#z%ca#{%ca$O%ca(a%ca(r%ca!]%ca!^%ca~On%ca!Q%ca'y%ca(y%ca~P&LQOn>^O!Q*OO'y*PO(z%PO~P&IyOn>^O!Q*OO'y*PO(y$}O~P&LQOR0kO!Q0kO!S0lO#S$dOP}a[}aj}an}ar}a!l}a!p}a#R}a#n}a#o}a#p}a#q}a#r}a#s}a#t}a#u}a#v}a#x}a#z}a#{}a$O}a'y}a(a}a(r}a(y}a(z}a!]}a!^}a~O!Q*OO'y*POP$saR$sa[$saj$san$sar$sa!S$sa!l$sa!p$sa#R$sa#n$sa#o$sa#p$sa#q$sa#r$sa#s$sa#t$sa#u$sa#v$sa#x$sa#z$sa#{$sa$O$sa(a$sa(r$sa(y$sa(z$sa!]$sa!^$sa~O!Q*OO'y*POP$uaR$ua[$uaj$uan$uar$ua!S$ua!l$ua!p$ua#R$ua#n$ua#o$ua#p$ua#q$ua#r$ua#s$ua#t$ua#u$ua#v$ua#x$ua#z$ua#{$ua$O$ua(a$ua(r$ua(y$ua(z$ua!]$ua!^$ua~On>^O!Q*OO'y*PO(y$}O(z%PO~OP%TaR%Ta[%Taj%Tar%Ta!S%Ta!l%Ta!p%Ta#R%Ta#n%Ta#o%Ta#p%Ta#q%Ta#r%Ta#s%Ta#t%Ta#u%Ta#v%Ta#x%Ta#z%Ta#{%Ta$O%Ta(a%Ta(r%Ta!]%Ta!^%Ta~P''VO$O$mq!]$mq!^$mq~P#BwO$O$oq!]$oq!^$oq~P#BwO!^9oO~O$O9pO~P!1WO!g#vO!]'ei!k'ei~O!g#vO(r'pO!]'ei!k'ei~O!]/pO!k)Oq~O!Y'gi!]'gi~P#/sO!]/yO!Y)Pq~Or9wO!g#vO(r'pO~O[9yO!Y9xO~P#/sO!Y9xO~Oj:PO!g#vO~Og(_y!](_y~P!1WO!]'na!_'na~P#/sOa%[q!_%[q'z%[q!]%[q~P#/sO[:UO~O!]1TO!^)Xq~O`:YO~O#`:ZO!]'pa!^'pa~O!]5uO!^)Ui~P#BwO!S:]O~O!_1oO%i:`O~O(VTO(YUO(e:eO~O!]1zO!^)Vq~O!k:hO~O!k:iO~O!k:jO~O!k:jO~P%[O#`:mO!]#hy!^#hy~O!]#hy!^#hy~P#BwO%i:rO~P&8fO!_'`O%i:rO~O$O#|y!]#|y!^#|y~P#BwOP$|iR$|i[$|ij$|ir$|i!S$|i!l$|i!p$|i#R$|i#n$|i#o$|i#p$|i#q$|i#r$|i#s$|i#t$|i#u$|i#v$|i#x$|i#z$|i#{$|i$O$|i(a$|i(r$|i!]$|i!^$|i~P''VO!Q*OO'y*PO(z%POP'iaR'ia['iaj'ian'iar'ia!S'ia!l'ia!p'ia#R'ia#n'ia#o'ia#p'ia#q'ia#r'ia#s'ia#t'ia#u'ia#v'ia#x'ia#z'ia#{'ia$O'ia(a'ia(r'ia(y'ia!]'ia!^'ia~O!Q*OO'y*POP'kaR'ka['kaj'kan'kar'ka!S'ka!l'ka!p'ka#R'ka#n'ka#o'ka#p'ka#q'ka#r'ka#s'ka#t'ka#u'ka#v'ka#x'ka#z'ka#{'ka$O'ka(a'ka(r'ka(y'ka(z'ka!]'ka!^'ka~O(y$}OP%aiR%ai[%aij%ain%air%ai!Q%ai!S%ai!l%ai!p%ai#R%ai#n%ai#o%ai#p%ai#q%ai#r%ai#s%ai#t%ai#u%ai#v%ai#x%ai#z%ai#{%ai$O%ai'y%ai(a%ai(r%ai(z%ai!]%ai!^%ai~O(z%POP%ciR%ci[%cij%cin%cir%ci!Q%ci!S%ci!l%ci!p%ci#R%ci#n%ci#o%ci#p%ci#q%ci#r%ci#s%ci#t%ci#u%ci#v%ci#x%ci#z%ci#{%ci$O%ci'y%ci(a%ci(r%ci(y%ci!]%ci!^%ci~O$O$oy!]$oy!^$oy~P#BwO$O#cy!]#cy!^#cy~P#BwO!g#vO!]'eq!k'eq~O!]/pO!k)Oy~O!Y'gq!]'gq~P#/sOr:|O!g#vO(r'pO~O[;QO!Y;PO~P#/sO!Y;PO~Og(_!R!](_!R~P!1WOa%[y!_%[y'z%[y!]%[y~P#/sO!]1TO!^)Xy~O!]5uO!^)Uq~O(T;XO~O!_1oO%i;[O~O!k;_O~O%i;dO~P&8fOP$|qR$|q[$|qj$|qr$|q!S$|q!l$|q!p$|q#R$|q#n$|q#o$|q#p$|q#q$|q#r$|q#s$|q#t$|q#u$|q#v$|q#x$|q#z$|q#{$|q$O$|q(a$|q(r$|q!]$|q!^$|q~P''VO!Q*OO'y*PO(z%POP'jaR'ja['jaj'jan'jar'ja!S'ja!l'ja!p'ja#R'ja#n'ja#o'ja#p'ja#q'ja#r'ja#s'ja#t'ja#u'ja#v'ja#x'ja#z'ja#{'ja$O'ja(a'ja(r'ja(y'ja!]'ja!^'ja~O!Q*OO'y*POP'laR'la['laj'lan'lar'la!S'la!l'la!p'la#R'la#n'la#o'la#p'la#q'la#r'la#s'la#t'la#u'la#v'la#x'la#z'la#{'la$O'la(a'la(r'la(y'la(z'la!]'la!^'la~OP%OqR%Oq[%Oqj%Oqr%Oq!S%Oq!l%Oq!p%Oq#R%Oq#n%Oq#o%Oq#p%Oq#q%Oq#r%Oq#s%Oq#t%Oq#u%Oq#v%Oq#x%Oq#z%Oq#{%Oq$O%Oq(a%Oq(r%Oq!]%Oq!^%Oq~P''VOg%e!Z!]%e!Z#`%e!Z$O%e!Z~P!1WO!Y;hO~P#/sOr;iO!g#vO(r'pO~O[;kO!Y;hO~P#/sO!]'pq!^'pq~P#BwO!]#h!Z!^#h!Z~P#BwO#k%e!ZP%e!ZR%e!Z[%e!Za%e!Zj%e!Zr%e!Z!S%e!Z!]%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z'z%e!Z(a%e!Z(r%e!Z!k%e!Z!Y%e!Z'w%e!Z#`%e!Zv%e!Z!_%e!Z%i%e!Z!g%e!Z~P#/sOr;tO!g#vO(r'pO~O!Y;uO~P#/sOr;|O!g#vO(r'pO~O!Y;}O~P#/sOP%e!ZR%e!Z[%e!Zj%e!Zr%e!Z!S%e!Z!l%e!Z!p%e!Z#R%e!Z#n%e!Z#o%e!Z#p%e!Z#q%e!Z#r%e!Z#s%e!Z#t%e!Z#u%e!Z#v%e!Z#x%e!Z#z%e!Z#{%e!Z$O%e!Z(a%e!Z(r%e!Z!]%e!Z!^%e!Z~P''VOr<QO!g#vO(r'pO~Ov(fX~P1qO!Q%rO~P!)[O(U!lO~P!)[O!YfX!]fX#`fX~P%2OOP]XR]X[]Xj]Xr]X!Q]X!S]X!]]X!]fX!l]X!p]X#R]X#S]X#`]X#`fX#kfX#n]X#o]X#p]X#q]X#r]X#s]X#t]X#u]X#v]X#x]X#z]X#{]X$Q]X(a]X(r]X(y]X(z]X~O!gfX!k]X!kfX(rfX~P'LTOP<UOQ<UOSfOd>ROe!iOpkOr<UOskOtkOzkO|<UO!O<UO!SWO!WkO!XkO!_XO!i<XO!lZO!o<UO!p<UO!q<UO!s<YO!u<]O!x!hO$W!kO$n>PO(T)]O(VTO(YUO(aVO(o[O~O!]<iO!^$qa~Oh%VOp%WOr%XOs$tOt$tOz%YO|%ZO!O<tO!S${O!_$|O!i>WO!l$xO#j<zO$W%`O$t<vO$v<xO$y%aO(T(vO(VTO(YUO(a$uO(y$}O(z%PO~Ol)dO~P(!yOr!eX(r!eX~P#!iOr(jX(r(jX~P##[O!^]X!^fX~P'LTO!YfX!Y$zX!]fX!]$zX#`fX~P!0SO#k<^O~O!g#vO#k<^O~O#`<nO~Oj<bO~O#`=OO!](wX!^(wX~O#`<nO!](uX!^(uX~O#k=PO~Og=RO~P!1WO#k=XO~O#k=YO~Og=RO(T&ZO~O!g#vO#k=ZO~O!g#vO#k=PO~O$O=[O~P#BwO#k=]O~O#k=^O~O#k=cO~O#k=dO~O#k=eO~O#k=fO~O$O=gO~P!1WO$O=hO~P!1WOl=sO~P7eOk#S#T#U#W#X#[#i#j#u$n$t$v$y%]%^%h%i%j%q%s%v%w%y%{~(OT#o!X'|(U#ps#n#qr!Q'}$]'}(T$_(e~",goto:"$9Y)]PPPPPP)^PP)aP)rP+W/]PPPP6mPP7TPP=QPPP@tPA^PA^PPPA^PCfPA^PA^PA^PCjPCoPD^PIWPPPI[PPPPI[L_PPPLeMVPI[PI[PP! eI[PPPI[PI[P!#lI[P!'S!(X!(bP!)U!)Y!)U!,gPPPPPPP!-W!(XPP!-h!/YP!2iI[I[!2n!5z!:h!:h!>gPPP!>oI[PPPPPPPPP!BOP!C]PPI[!DnPI[PI[I[I[I[I[PI[!FQP!I[P!LbP!Lf!Lp!Lt!LtP!IXP!Lx!LxP#!OP#!SI[PI[#!Y#%_CjA^PA^PA^A^P#&lA^A^#)OA^#+vA^#.SA^A^#.r#1W#1W#1]#1f#1W#1qPP#1WPA^#2ZA^#6YA^A^6mPPP#:_PPP#:x#:xP#:xP#;`#:xPP#;fP#;]P#;]#;y#;]#<e#<k#<n)aP#<q)aP#<z#<z#<zP)aP)aP)aP)aPP)aP#=Q#=TP#=T)aP#=XP#=[P)aP)aP)aP)aP)aP)a)aPP#=b#=h#=s#=y#>P#>V#>]#>k#>q#>{#?R#?]#?c#?s#?y#@k#@}#AT#AZ#Ai#BO#Cs#DR#DY#Et#FS#Gt#HS#HY#H`#Hf#Hp#Hv#H|#IW#Ij#IpPPPPPPPPPPP#IvPPPPPPP#Jk#Mx$ b$ i$ qPPP$']P$'f$*_$0x$0{$1O$1}$2Q$2X$2aP$2g$2jP$3W$3[$4S$5b$5g$5}PP$6S$6Y$6^$6a$6e$6i$7e$7|$8e$8i$8l$8o$8y$8|$9Q$9UR!|RoqOXst!Z#d%m&r&t&u&w,s,x2[2_Y!vQ'`-e1o5{Q%tvQ%|yQ&T|Q&j!VS'W!e-]Q'f!iS'l!r!yU*k$|*Z*oQ+o%}S+|&V&WQ,d&dQ-c'_Q-m'gQ-u'mQ0[*qQ1b,OQ1y,eR<{<Y%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_S#q]<V!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU+P%]<s<tQ+t&PQ,f&gQ,m&oQ0x+gQ0}+iQ1Y+uQ2R,kQ3`.gQ5`0|Q5f1TQ6[1zQ7Y3dQ8`5gR9e7['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S!S!nQ!r!v!y!z$|'W'_'`'l'm'n*k*o*q*r-]-c-e-u0[0_1o5{5}%[$ti#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q&X|Q'U!eS'[%i-`Q+t&PQ,P&WQ,f&gQ0n+SQ1Y+uQ1_+{Q2Q,jQ2R,kQ5f1TQ5o1aQ6[1zQ6_1|Q6`2PQ8`5gQ8c5lQ8|6bQ:X8dQ:f8yQ;V:YR<}*ZrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R,h&k&z^OPXYstuvwz!Z!`!g!j!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'b'r(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>R>S[#]WZ#W#Z'X(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ%wxQ%{yW&Q|&V&W,OQ&_!TQ'c!hQ'e!iQ(q#sS+n%|%}Q+r&PQ,_&bQ,c&dS-l'f'gQ.i(rQ1R+oQ1X+uQ1Z+vQ1^+zQ1t,`S1x,d,eQ2|-mQ5e1TQ5i1WQ5n1`Q6Z1yQ8_5gQ8b5kQ8f5pQ:T8^R;T:U!U$zi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y!^%yy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{Q+h%wQ,T&[Q,W&]Q,b&dQ.h(qQ1s,_U1w,c,d,eQ3e.iQ6U1tS6Y1x1yQ8x6Z#f>T#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o>U<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hW%Ti%V*y>PS&[!Q&iQ&]!RQ&^!SU*}%[%d=sR,R&Y%]%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^T)z$u){V+P%]<s<tW'[!e%i*Z-`S(}#y#zQ+c%rQ+y&SS.b(m(nQ1j,XQ5T0kR8i5u'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S$i$^c#Y#e%q%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.|.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vT#TV#U'RkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ'Y!eR2q-]!W!nQ!e!r!v!y!z$|'W'_'`'l'm'n*Z*k*o*q*r-]-c-e-u0[0_1o5{5}R1l,ZnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&y!^Q'v!xS(s#u<^Q+l%zQ,]&_Q,^&aQ-j'dQ-w'oS.r(x=PS0q+X=ZQ1P+mQ1n,[Q2c,zQ2e,{Q2m-WQ2z-kQ2}-oS5Y0r=eQ5a1QS5d1S=fQ6t2oQ6x2{Q6}3SQ8]5bQ9Y6vQ9Z6yQ9^7OR:l9V$d$]c#Y#e%s%u(S(Y(t(y)R)S)T)U)V)W)X)Y)Z)[)^)`)b)g)q+d+x-Z-x-}.S.U.s.v.z.}/O/b0p2k2n3O3V3k3p3q3r3s3t3u3v3w3x3y3z3{3|4P4Q4X5X5c6u6{7Q7a7b7k7l8k9X9]9g9m9n:o;W;`<W=vS(o#p'iQ)P#zS+b%q.|S.c(n(pR3^.d'QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS#q]<VQ&t!XQ&u!YQ&w![Q&x!]R2Z,vQ'a!hQ+e%wQ-h'cS.e(q+hQ2x-gW3b.h.i0w0yQ6w2yW7U3_3a3e5^U9a7V7X7ZU:q9c9d9fS;b:p:sQ;p;cR;x;qU!wQ'`-eT5y1o5{!Q_OXZ`st!V!Z#d#h%e%m&i&k&r&t&u&w(j,s,x.[2[2_]!pQ!r'`-e1o5{T#q]<V%^{OPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S(}#y#zS.b(m(n!s=l$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SU$fd)_,mS(p#p'iU*v%R(w4OU0m+O.n7gQ5^0xQ7V3`Q9d7YR:s9em!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}Q't!uS(f#g2US-s'k'wQ/s*]Q0R*jQ3U-vQ4f/tQ4r0TQ4s0UQ4x0^Q7r4`S7}4t4vS8R4y4{Q9r7sQ9v7yQ9{8OQ:Q8TS:{9w9xS;g:|;PS;s;h;iS;{;t;uS<P;|;}R<S<QQ#wbQ's!uS(e#g2US(g#m+WQ+Y%fQ+j%xQ+p&OU-r'k't'wQ.W(fU/r*]*`/wQ0S*jQ0V*lQ1O+kQ1u,aS3R-s-vQ3Z.`S4e/s/tQ4n0PS4q0R0^Q4u0WQ6W1vQ7P3US7q4`4bQ7u4fU7|4r4x4{Q8P4wQ8v6XS9q7r7sQ9u7yQ9}8RQ:O8SQ:c8wQ:y9rS:z9v9xQ;S:QQ;^:dS;f:{;PS;r;g;hS;z;s;uS<O;{;}Q<R<PQ<T<SQ=o=jQ={=tR=|=uV!wQ'`-e%^aOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_S#wz!j!r=i$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=o>R%^bOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Q%fj!^%xy!i!u%{%|%}'V'e'f'g'k'u*j+n+o-Y-l-m-t0R0U1R2u2|3T4r4s4v7}9{S&Oz!jQ+k%yQ,a&dW1v,b,c,d,eU6X1w1x1yS8w6Y6ZQ:d8x!r=j$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ=t>QR=u>R%QeOPXYstuvw!Z!`!g!o#S#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_Y#bWZ#W#Z(T!b%jm#h#i#l$x%e%h(^(h(i(j*Y*^*b+Z+[+^,o-V.T.Z.[.]._/m/p2d3[3]4a6r7TQ,n&o!p=k$Z$n)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SR=n'XU']!e%i*ZR2s-`%SdOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+],p,s,x-i-q.P.V.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3l4z6T6e6f6i6|8t9T9_!r)_$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SQ,m&oQ0x+gQ3`.gQ7Y3dR9e7[!b$Tc#Y%q(S(Y(t(y)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!P<d)^)q-Z.|2k2n3p3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!f$Vc#Y%q(S(Y(t(y)W)X)Z)[)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<W!T<f)^)q-Z.|2k2n3p3v3w3y3z4P4X6u7b7k7l8k9X9g9m9n;W;`=v!^$Zc#Y%q(S(Y(t(y)`)g+x-x-}.S.U.s.v/b0p3O3V3k3{5X5c6{7Q7a9]:o<WQ4_/kz>S)^)q-Z.|2k2n3p4P4X6u7b7k7l8k9X9g9m9n;W;`=vQ>X>ZR>Y>['QkOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>SS$oh$pR4U/U'XgOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$kf$qQ$ifS)j$l)nR)v$qT$jf$qT)l$l)n'XhOPWXYZhstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$Z$_$a$e$n$p%m%t&R&k&n&o&r&t&u&w&{'T'X'b'r(T(V(](d(x(z)O)s)}*i+X+]+g,p,s,x-U-X-i-q.P.V.g.t.{/U/V/n0]0l0r1S1r2S2T2V2X2[2_2a2p3Q3W3d3l4T4z5w6T6e6f6i6s6|7[8t9T9_:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>ST$oh$pQ$rhR)u$p%^jOPWXYZstuvw!Z!`!g!o#S#W#Z#d#o#u#x#{$O$P$Q$R$S$T$U$V$W$X$_$a$e%m%t&R&k&n&o&r&t&u&w&{'T'b'r(T(V(](d(x(z)O)}*i+X+]+g,p,s,x-i-q.P.V.g.t.{/n0]0l0r1S1r2S2T2V2X2[2_2a3Q3W3d3l4z6T6e6f6i6|7[8t9T9_!s>Q$Z$n'X)s-U-X/V2p4T5w6s:Z:m<U<X<Y<]<^<_<`<a<b<c<d<e<f<g<h<i<k<n<{=O=P=R=Z=[=e=f>S#glOPXZst!Z!`!o#S#d#o#{$n%m&k&n&o&r&t&u&w&{'T'b)O)s*i+]+g,p,s,x-i.g/V/n0]0l1r2S2T2V2X2[2_2a3d4T4z6T6e6f6i7[8t9T!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^Q+T%aQ/c*Oo4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!U$yi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>YQ*c$zU*l$|*Z*oQ+U%bQ0W*m#f=q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n=r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hQ=w>TQ=x>UQ=y>VR=z>W!U%Ri$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y#f(w#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^o4O<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=hnoOXst!Z#d%m&r&t&u&w,s,x2[2_S*f${*YQ-R'OQ-S'QR4i/y%[%Si#v$b$c$d$x${%O%Q%^%_%c)y*R*T*V*Y*a*g*w*x+f+i,S,V.f/P/d/m/x/y/{0`0b0i0j0o1f1i1q3c4^4_4j4o5Q5[5_6S7W7v8Q8V8[8q9b9p9y:P:`:r;Q;[;d;k<l<m<o<p<q<r<u<v<w<x<y<z=S=T=U=V=X=Y=]=^=_=`=a=b=c=d=g=h>P>X>Y>]>^Q,U&]Q1h,WQ5s1gR8h5tV*n$|*Z*oU*n$|*Z*oT5z1o5{S0P*i/nQ4w0]T8S4z:]Q+j%xQ0V*lQ1O+kQ1u,aQ6W1vQ8v6XQ:c8wR;^:d!U%Oi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Yx*R$v)e*S*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>OS0`*t0a#f<o#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<p<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!d=S(u)c*[*e.j.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[`=T3}7c7f7j9h:t:w;yS=_.l3iT=`7e9k!U%Qi$d%O%Q%^%_%c*R*T*a*w*x/P/x0`0b0i0j0o4_5Q8V9p>P>X>Y|*T$v)e*U*t+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>OS0b*u0c#f<q#v$b$c$x${)y*V*Y*g+f+i,S,V.f/d/m/y/{1f1i1q3c4^4j4o5[5_6S7W7v8Q8[8q9b9y:P:`:r;Q;[;d;k<o<q<u<w<y=S=U=X=]=_=a=c=g>]>^n<r<l<m<p<r<v<x<z=T=V=Y=^=`=b=d=h!h=U(u)c*[*e.k.l.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[d=V3}7d7e7j9h9i:t:u:w;yS=a.m3jT=b7f9lrnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q&f!UR,p&ornOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_R&f!UQ,Y&^R1d,RsnOXst!V!Z#d%m&i&r&t&u&w,s,x2[2_Q1p,_S6R1s1tU8p6P6Q6US:_8r8sS;Y:^:aQ;m;ZR;w;nQ&m!VR,i&iR6_1|R:f8yW&Q|&V&W,OR1Z+vQ&r!WR,s&sR,y&xT2],x2_R,}&yQ,|&yR2f,}Q'y!{R-y'ySsOtQ#dXT%ps#dQ#OTR'{#OQ#RUR'}#RQ){$uR/`){Q#UVR(Q#UQ#XWU(W#X(X.QQ(X#YR.Q(YQ-^'YR2r-^Q.u(yS3m.u3nR3n.vQ-e'`R2v-eY!rQ'`-e1o5{R'j!rQ/Q)eR4S/QU#_W%h*YU(_#_(`.RQ(`#`R.R(ZQ-a']R2t-at`OXst!V!Z#d%m&i&k&r&t&u&w,s,x2[2_S#hZ%eU#r`#h.[R.[(jQ(k#jQ.X(gW.a(k.X3X7RQ3X.YR7R3YQ)n$lR/W)nQ$phR)t$pQ$`cU)a$`-|<jQ-|<WR<j)qQ/q*]W4c/q4d7t9sU4d/r/s/tS7t4e4fR9s7u$e*Q$v(u)c)e*[*e*t*u+Q+R+V.l.m.o.p.q/_/g/i/k/v/|0d0e0v1e3f3g3h3}4R4[4g4h4l4|5O5R5S5W5r7]7^7_7`7e7f7h7i7j7p7w7z8U8X8Z9h9i9j9t9|:R:S:t:u:v:w:x:};R;e;j;v;y=p=}>O>Z>[Q/z*eU4k/z4m7xQ4m/|R7x4lS*o$|*ZR0Y*ox*S$v)e*t*u+V/v0d0e4R4g5R5S5W7p8U:R:x=p=}>O!d.j(u)c*[*e.l.m.q/_/k/|0v1e3h4[4h4l5r7]7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/h*S.j7ca7c3}7e7f7j9h:t:w;yQ0a*tQ3i.lU4}0a3i9kR9k7e|*U$v)e*t*u+V/g/v0d0e4R4g4|5R5S5W7p8U:R:x=p=}>O!h.k(u)c*[*e.l.m.q/_/k/|0v1e3f3h4[4h4l5r7]7^7`7w7z8X8Z9t9|:S:};R;e;j;v>Z>[U/j*U.k7de7d3}7e7f7j9h9i:t:u:w;yQ0c*uQ3j.mU5P0c3j9lR9l7fQ*z%UR0g*zQ5]0vR8Y5]Q+_%kR0u+_Q5v1jS8j5v:[R:[8kQ,[&_R1m,[Q5{1oR8m5{Q1{,fS6]1{8zR8z6_Q1U+rW5h1U5j8a:VQ5j1XQ8a5iR:V8bQ+w&QR1[+wQ2_,xR6m2_YrOXst#dQ&v!ZQ+a%mQ,r&rQ,t&tQ,u&uQ,w&wQ2Y,sS2],x2_R6l2[Q%opQ&z!_Q&}!aQ'P!bQ'R!cQ'q!uQ+`%lQ+l%zQ,Q&XQ,h&mQ-P&|W-p'k's't'wQ-w'oQ0X*nQ1P+mQ1c,PS2O,i,lQ2g-OQ2h-RQ2i-SQ2}-oW3P-r-s-v-xQ5a1QQ5m1_Q5q1eQ6V1uQ6a2QQ6k2ZU6z3O3R3UQ6}3SQ8]5bQ8e5oQ8g5rQ8l5zQ8u6WQ8{6`S9[6{7PQ9^7OQ:W8cQ:b8vQ:g8|Q:n9]Q;U:XQ;]:cQ;a:oQ;l;VR;o;^Q%zyQ'd!iQ'o!uU+m%{%|%}Q-W'VU-k'e'f'gS-o'k'uQ0Q*jS1Q+n+oQ2o-YS2{-l-mQ3S-tS4p0R0UQ5b1RQ6v2uQ6y2|Q7O3TU7{4r4s4vQ9z7}R;O9{S$wi>PR*{%VU%Ui%V>PR0f*yQ$viS(u#v+iS)c$b$cQ)e$dQ*[$xS*e${*YQ*t%OQ*u%QQ+Q%^Q+R%_Q+V%cQ.l<oQ.m<qQ.o<uQ.p<wQ.q<yQ/_)yQ/g*RQ/i*TQ/k*VQ/v*aS/|*g/mQ0d*wQ0e*xl0v+f,V.f1i1q3c6S7W8q9b:`:r;[;dQ1e,SQ3f=SQ3g=UQ3h=XS3}<l<mQ4R/PS4[/d4^Q4g/xQ4h/yQ4l/{Q4|0`Q5O0bQ5R0iQ5S0jQ5W0oQ5r1fQ7]=]Q7^=_Q7_=aQ7`=cQ7e<pQ7f<rQ7h<vQ7i<xQ7j<zQ7p4_Q7w4jQ7z4oQ8U5QQ8X5[Q8Z5_Q9h=YQ9i=TQ9j=VQ9t7vQ9|8QQ:R8VQ:S8[Q:t=^Q:u=`Q:v=bQ:w=dQ:x9pQ:}9yQ;R:PQ;e=gQ;j;QQ;v;kQ;y=hQ=p>PQ=}>XQ>O>YQ>Z>]R>[>^Q+O%]Q.n<sR7g<tnpOXst!Z#d%m&r&t&u&w,s,x2[2_Q!fPS#fZ#oQ&|!`W'h!o*i0]4zQ(P#SQ)Q#{Q)r$nS,l&k&nQ,q&oQ-O&{S-T'T/nQ-g'bQ.x)OQ/[)sQ0s+]Q0y+gQ2W,pQ2y-iQ3a.gQ4W/VQ5U0lQ6Q1rQ6c2SQ6d2TQ6h2VQ6j2XQ6o2aQ7Z3dQ7m4TQ8s6TQ9P6eQ9Q6fQ9S6iQ9f7[Q:a8tR:k9T#[cOPXZst!Z!`!o#d#o#{%m&k&n&o&r&t&u&w&{'T'b)O*i+]+g,p,s,x-i.g/n0]0l1r2S2T2V2X2[2_2a3d4z6T6e6f6i7[8t9TQ#YWQ#eYQ%quQ%svS%uw!gS(S#W(VQ(Y#ZQ(t#uQ(y#xQ)R$OQ)S$PQ)T$QQ)U$RQ)V$SQ)W$TQ)X$UQ)Y$VQ)Z$WQ)[$XQ)^$ZQ)`$_Q)b$aQ)g$eW)q$n)s/V4TQ+d%tQ+x&RS-Z'X2pQ-x'rS-}(T.PQ.S(]Q.U(dQ.s(xQ.v(zQ.z<UQ.|<XQ.}<YQ/O<]Q/b)}Q0p+XQ2k-UQ2n-XQ3O-qQ3V.VQ3k.tQ3p<^Q3q<_Q3r<`Q3s<aQ3t<bQ3u<cQ3v<dQ3w<eQ3x<fQ3y<gQ3z<hQ3{.{Q3|<kQ4P<nQ4Q<{Q4X<iQ5X0rQ5c1SQ6u=OQ6{3QQ7Q3WQ7a3lQ7b=PQ7k=RQ7l=ZQ8k5wQ9X6sQ9]6|Q9g=[Q9m=eQ9n=fQ:o9_Q;W:ZQ;`:mQ<W#SR=v>SR#[WR'Z!el!tQ!r!v!y!z'`'l'm'n-e-u1o5{5}S'V!e-]U*j$|*Z*oS-Y'W'_S0U*k*qQ0^*rQ2u-cQ4v0[R4{0_R({#xQ!fQT-d'`-e]!qQ!r'`-e1o5{Q#p]R'i<VR)f$dY!uQ'`-e1o5{Q'k!rS'u!v!yS'w!z5}S-t'l'mQ-v'nR3T-uT#kZ%eS#jZ%eS%km,oU(g#h#i#lS.Y(h(iQ.^(jQ0t+^Q3Y.ZU3Z.[.]._S7S3[3]R9`7Td#^W#W#Z%h(T(^*Y+Z.T/mr#gZm#h#i#l%e(h(i(j+^.Z.[.]._3[3]7TS*]$x*bQ/t*^Q2U,oQ2l-VQ4`/pQ6q2dQ7s4aQ9W6rT=m'X+[V#aW%h*YU#`W%h*YS(U#W(^U(Z#Z+Z/mS-['X+[T.O(T.TV'^!e%i*ZQ$lfR)x$qT)m$l)nR4V/UT*_$x*bT*h${*YQ0w+fQ1g,VQ3_.fQ5t1iQ6P1qQ7X3cQ8r6SQ9c7WQ:^8qQ:p9bQ;Z:`Q;c:rQ;n;[R;q;dnqOXst!Z#d%m&r&t&u&w,s,x2[2_Q&l!VR,h&itmOXst!U!V!Z#d%m&i&r&t&u&w,s,x2[2_R,o&oT%lm,oR1k,XR,g&gQ&U|S+}&V&WR1^,OR+s&PT&p!W&sT&q!W&sT2^,x2_",nodeNames:"⚠ ArithOp ArithOp ?. JSXStartTag LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > < TypeParamList in out const TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewTarget new NewExpression ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression TypeArgList CompareOp < declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression InstantiationExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast < ArrowFunction TypeParamList SequenceExpression InstantiationExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate asserts is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration defer ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:380,context:IN,nodeProps:[["isolate",-8,5,6,14,37,39,51,53,55,""],["group",-26,9,17,19,68,207,211,215,216,218,221,224,234,237,243,245,247,249,252,258,264,266,268,270,272,274,275,"Statement",-34,13,14,32,35,36,42,51,54,55,57,62,70,72,76,80,82,84,85,110,111,120,121,136,139,141,142,143,144,145,147,148,167,169,171,"Expression",-23,31,33,37,41,43,45,173,175,177,178,180,181,182,184,185,186,188,189,190,201,203,205,206,"Type",-3,88,103,109,"ClassItem"],["openedBy",23,"<",38,"InterpolationStart",56,"[",60,"{",73,"(",160,"JSXStartCloseTag"],["closedBy",-2,24,168,">",40,"InterpolationEnd",50,"]",61,"}",74,")",165,"JSXEndTag"]],propSources:[a3],skippedNodes:[0,5,6,278],repeatNodeCount:37,tokenData:"$Fq07[R!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#:O!R![#<_![!]#I_!]!^#Jk!^!_#Ku!_!`$![!`!a$$v!a!b$*T!b!c$,r!c!}Er!}#O$-|#O#P$/W#P#Q$4o#Q#R$5y#R#SEr#S#T$7W#T#o$8b#o#p$<r#p#q$=h#q#r$>x#r#s$@U#s$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$I|Er$I|$I}$Dk$I}$JO$Dk$JO$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr(n%d_$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z07[+rq$i&j(Wp(Z!b'|0/lOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z07[.ST(X#S$i&j'}0/lO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c07[.n_$i&j(Wp(Z!b'}0/lOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)3p/x`$i&j!p),Q(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW1V`#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW2d_#v(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At3l_(V':f$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$i&j(Z!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$i&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$d`$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$d``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$d`$i&j(Z!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(Z!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$d`(Z!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k%9[:hh$i&j(Wp(Z!bOY%ZYZ&cZq%Zqr<Srs&}st%ZtuCruw%Zwx(rx!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr(r<__WS$i&j(Wp(Z!bOY<SYZ&cZr<Srs=^sw<Swx@nx!^<S!^!_Bm!_#O<S#O#P>`#P#o<S#o#pBm#p;'S<S;'S;=`Cl<%lO<S(Q=g]WS$i&j(Z!bOY=^YZ&cZw=^wx>`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXWS$i&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSWSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWWS(Z!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]WS$i&j(WpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWWS(WpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYWS(Wp(Z!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%l<S%9[C}i$i&j(o%1l(Wp(Z!bOY%ZYZ&cZr%Zrs&}st%ZtuCruw%Zwx(rx!Q%Z!Q![Cr![!^%Z!^!_*g!_!c%Z!c!}Cr!}#O%Z#O#P&c#P#R%Z#R#SCr#S#T%Z#T#oCr#o#p*g#p$g%Z$g;'SCr;'S;=`El<%lOCr%9[EoP;=`<%lCr07[FRk$i&j(Wp(Z!b$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr+dHRk$i&j(Wp(Z!b$]#tOY%ZYZ&cZr%Zrs&}st%ZtuGvuw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Gv![!^%Z!^!_*g!_!c%Z!c!}Gv!}#O%Z#O#P&c#P#R%Z#R#SGv#S#T%Z#T#oGv#o#p*g#p$g%Z$g;'SGv;'S;=`Iv<%lOGv+dIyP;=`<%lGv07[JPP;=`<%lEr(KWJ_`$i&j(Wp(Z!b#p(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWKl_$i&j$Q(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,#xLva(z+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sv%ZvwM{wx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KWNW`$i&j#z(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'At! c_(Y';W$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b'l!!i_$i&j(WpOY!!bYZ!#hZr!!brs!#hsw!!bwx!$xx!^!!b!^!_!%z!_#O!!b#O#P!#h#P#o!!b#o#p!%z#p;'S!!b;'S;=`!'c<%lO!!b&z!#mX$i&jOw!#hwx6cx!^!#h!^!_!$Y!_#o!#h#o#p!$Y#p;'S!#h;'S;=`!$r<%lO!#h`!$]TOw!$Ywx7]x;'S!$Y;'S;=`!$l<%lO!$Y`!$oP;=`<%l!$Y&z!$uP;=`<%l!#h'l!%R]$d`$i&j(WpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r!Q!&PZ(WpOY!%zYZ!$YZr!%zrs!$Ysw!%zwx!&rx#O!%z#O#P!$Y#P;'S!%z;'S;=`!']<%lO!%z!Q!&yU$d`(WpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)r!Q!'`P;=`<%l!%z'l!'fP;=`<%l!!b/5|!'t_!l/.^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#&U!)O_!k!Lf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z-!n!*[b$i&j(Wp(Z!b(U%&f#q(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rxz%Zz{!+d{!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW!+o`$i&j(Wp(Z!b#n(ChOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;x!,|`$i&j(Wp(Z!br+4YOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z,$U!.Z_!]+Jf$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!/ec$i&j(Wp(Z!b!Q.2^OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!0p!P!Q%Z!Q![!3Y![!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!0ya$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!2O!P!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z#%|!2Z_![!L^$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!3eg$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!3Y![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S!3Y#S#X%Z#X#Y!4|#Y#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!5Vg$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx{%Z{|!6n|}%Z}!O!6n!O!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!6wc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad!8_c$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![!8S![!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S!8S#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[!9uf$i&j(Wp(Z!b#o(ChOY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcxz!;Zz{#-}{!P!;Z!P!Q#/d!Q!^!;Z!^!_#(i!_!`#7S!`!a#8i!a!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z?O!;fb$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z>^!<w`$i&j(Z!b!X7`OY!<nYZ&cZw!<nwx!=yx!P!<n!P!Q!Eq!Q!^!<n!^!_!Gr!_!}!<n!}#O!KS#O#P!Dy#P#o!<n#o#p!Gr#p;'S!<n;'S;=`!L]<%lO!<n<z!>Q^$i&j!X7`OY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@c!_!}!=y!}#O!CW#O#P!Dy#P#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!?Td$i&j!X7`O!^&c!_#W&c#W#X!>|#X#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#k!>|#k#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&c7`!@hX!X7`OY!@cZ!P!@c!P!Q!AT!Q!}!@c!}#O!Ar#O#P!Bq#P;'S!@c;'S;=`!CQ<%lO!@c7`!AYW!X7`#W#X!AT#Z#[!AT#]#^!AT#a#b!AT#g#h!AT#i#j!AT#j#k!AT#m#n!AT7`!AuVOY!ArZ#O!Ar#O#P!B[#P#Q!@c#Q;'S!Ar;'S;=`!Bk<%lO!Ar7`!B_SOY!ArZ;'S!Ar;'S;=`!Bk<%lO!Ar7`!BnP;=`<%l!Ar7`!BtSOY!@cZ;'S!@c;'S;=`!CQ<%lO!@c7`!CTP;=`<%l!@c<z!C][$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#O!CW#O#P!DR#P#Q!=y#Q#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DWX$i&jOY!CWYZ&cZ!^!CW!^!_!Ar!_#o!CW#o#p!Ar#p;'S!CW;'S;=`!Ds<%lO!CW<z!DvP;=`<%l!CW<z!EOX$i&jOY!=yYZ&cZ!^!=y!^!_!@c!_#o!=y#o#p!@c#p;'S!=y;'S;=`!Ek<%lO!=y<z!EnP;=`<%l!=y>^!Ezl$i&j(Z!b!X7`OY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#W&}#W#X!Eq#X#Z&}#Z#[!Eq#[#]&}#]#^!Eq#^#a&}#a#b!Eq#b#g&}#g#h!Eq#h#i&}#i#j!Eq#j#k!Eq#k#m&}#m#n!Eq#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}8r!GyZ(Z!b!X7`OY!GrZw!Grwx!@cx!P!Gr!P!Q!Hl!Q!}!Gr!}#O!JU#O#P!Bq#P;'S!Gr;'S;=`!J|<%lO!Gr8r!Hse(Z!b!X7`OY'}Zw'}x#O'}#P#W'}#W#X!Hl#X#Z'}#Z#[!Hl#[#]'}#]#^!Hl#^#a'}#a#b!Hl#b#g'}#g#h!Hl#h#i'}#i#j!Hl#j#k!Hl#k#m'}#m#n!Hl#n;'S'};'S;=`(f<%lO'}8r!JZX(Z!bOY!JUZw!JUwx!Arx#O!JU#O#P!B[#P#Q!Gr#Q;'S!JU;'S;=`!Jv<%lO!JU8r!JyP;=`<%l!JU8r!KPP;=`<%l!Gr>^!KZ^$i&j(Z!bOY!KSYZ&cZw!KSwx!CWx!^!KS!^!_!JU!_#O!KS#O#P!DR#P#Q!<n#Q#o!KS#o#p!JU#p;'S!KS;'S;=`!LV<%lO!KS>^!LYP;=`<%l!KS>^!L`P;=`<%l!<n=l!Ll`$i&j(Wp!X7`OY!LcYZ&cZr!Lcrs!=ys!P!Lc!P!Q!Mn!Q!^!Lc!^!_# o!_!}!Lc!}#O#%P#O#P!Dy#P#o!Lc#o#p# o#p;'S!Lc;'S;=`#&Y<%lO!Lc=l!Mwl$i&j(Wp!X7`OY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#W(r#W#X!Mn#X#Z(r#Z#[!Mn#[#](r#]#^!Mn#^#a(r#a#b!Mn#b#g(r#g#h!Mn#h#i(r#i#j!Mn#j#k!Mn#k#m(r#m#n!Mn#n#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(r8Q# vZ(Wp!X7`OY# oZr# ors!@cs!P# o!P!Q#!i!Q!}# o!}#O#$R#O#P!Bq#P;'S# o;'S;=`#$y<%lO# o8Q#!pe(Wp!X7`OY)rZr)rs#O)r#P#W)r#W#X#!i#X#Z)r#Z#[#!i#[#])r#]#^#!i#^#a)r#a#b#!i#b#g)r#g#h#!i#h#i)r#i#j#!i#j#k#!i#k#m)r#m#n#!i#n;'S)r;'S;=`*Z<%lO)r8Q#$WX(WpOY#$RZr#$Rrs!Ars#O#$R#O#P!B[#P#Q# o#Q;'S#$R;'S;=`#$s<%lO#$R8Q#$vP;=`<%l#$R8Q#$|P;=`<%l# o=l#%W^$i&j(WpOY#%PYZ&cZr#%Prs!CWs!^#%P!^!_#$R!_#O#%P#O#P!DR#P#Q!Lc#Q#o#%P#o#p#$R#p;'S#%P;'S;=`#&S<%lO#%P=l#&VP;=`<%l#%P=l#&]P;=`<%l!Lc?O#&kn$i&j(Wp(Z!b!X7`OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#W%Z#W#X#&`#X#Z%Z#Z#[#&`#[#]%Z#]#^#&`#^#a%Z#a#b#&`#b#g%Z#g#h#&`#h#i%Z#i#j#&`#j#k#&`#k#m%Z#m#n#&`#n#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z9d#(r](Wp(Z!b!X7`OY#(iZr#(irs!Grsw#(iwx# ox!P#(i!P!Q#)k!Q!}#(i!}#O#+`#O#P!Bq#P;'S#(i;'S;=`#,`<%lO#(i9d#)th(Wp(Z!b!X7`OY*gZr*grs'}sw*gwx)rx#O*g#P#W*g#W#X#)k#X#Z*g#Z#[#)k#[#]*g#]#^#)k#^#a*g#a#b#)k#b#g*g#g#h#)k#h#i*g#i#j#)k#j#k#)k#k#m*g#m#n#)k#n;'S*g;'S;=`+Z<%lO*g9d#+gZ(Wp(Z!bOY#+`Zr#+`rs!JUsw#+`wx#$Rx#O#+`#O#P!B[#P#Q#(i#Q;'S#+`;'S;=`#,Y<%lO#+`9d#,]P;=`<%l#+`9d#,cP;=`<%l#(i?O#,o`$i&j(Wp(Z!bOY#,fYZ&cZr#,frs!KSsw#,fwx#%Px!^#,f!^!_#+`!_#O#,f#O#P!DR#P#Q!;Z#Q#o#,f#o#p#+`#p;'S#,f;'S;=`#-q<%lO#,f?O#-tP;=`<%l#,f?O#-zP;=`<%l!;Z07[#.[b$i&j(Wp(Z!b(O0/l!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z07[#/o_$i&j(Wp(Z!bT0/lOY#/dYZ&cZr#/drs#0nsw#/dwx#4Ox!^#/d!^!_#5}!_#O#/d#O#P#1p#P#o#/d#o#p#5}#p;'S#/d;'S;=`#6|<%lO#/d06j#0w]$i&j(Z!bT0/lOY#0nYZ&cZw#0nwx#1px!^#0n!^!_#3R!_#O#0n#O#P#1p#P#o#0n#o#p#3R#p;'S#0n;'S;=`#3x<%lO#0n05W#1wX$i&jT0/lOY#1pYZ&cZ!^#1p!^!_#2d!_#o#1p#o#p#2d#p;'S#1p;'S;=`#2{<%lO#1p0/l#2iST0/lOY#2dZ;'S#2d;'S;=`#2u<%lO#2d0/l#2xP;=`<%l#2d05W#3OP;=`<%l#1p01O#3YW(Z!bT0/lOY#3RZw#3Rwx#2dx#O#3R#O#P#2d#P;'S#3R;'S;=`#3r<%lO#3R01O#3uP;=`<%l#3R06j#3{P;=`<%l#0n05x#4X]$i&j(WpT0/lOY#4OYZ&cZr#4Ors#1ps!^#4O!^!_#5Q!_#O#4O#O#P#1p#P#o#4O#o#p#5Q#p;'S#4O;'S;=`#5w<%lO#4O00^#5XW(WpT0/lOY#5QZr#5Qrs#2ds#O#5Q#O#P#2d#P;'S#5Q;'S;=`#5q<%lO#5Q00^#5tP;=`<%l#5Q05x#5zP;=`<%l#4O01p#6WY(Wp(Z!bT0/lOY#5}Zr#5}rs#3Rsw#5}wx#5Qx#O#5}#O#P#2d#P;'S#5};'S;=`#6v<%lO#5}01p#6yP;=`<%l#5}07[#7PP;=`<%l#/d)3h#7ab$i&j$Q(Ch(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;ZAt#8vb$Z#t$i&j(Wp(Z!b!X7`OY!;ZYZ&cZr!;Zrs!<nsw!;Zwx!Lcx!P!;Z!P!Q#&`!Q!^!;Z!^!_#(i!_!}!;Z!}#O#,f#O#P!Dy#P#o!;Z#o#p#(i#p;'S!;Z;'S;=`#-w<%lO!;Z'Ad#:Zp$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#U%Z#U#V#?i#V#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#d#Bq#d#l%Z#l#m#Es#m#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#<jk$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!O%Z!O!P!3Y!P!Q%Z!Q![#<_![!^%Z!^!_*g!_!g%Z!g!h!4|!h#O%Z#O#P&c#P#R%Z#R#S#<_#S#X%Z#X#Y!4|#Y#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#>j_$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#?rd$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#A]f$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#AQ!R!S#AQ!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#AQ#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Bzc$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Dbe$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!Y#DV!Y!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#DV#S#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#E|g$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z'Ad#Gpi$i&j(Wp(Z!bs'9tOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q![#Ge![!^%Z!^!_*g!_!c%Z!c!i#Ge!i#O%Z#O#P&c#P#R%Z#R#S#Ge#S#T%Z#T#Z#Ge#Z#b%Z#b#c#>_#c#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x#Il_!g$b$i&j$O)Lv(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z)[#Jv_al$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f#LS^h#)`#R-<U(Wp(Z!b$n7`OY*gZr*grs'}sw*gwx)rx!P*g!P!Q#MO!Q!^*g!^!_#Mt!_!`$ f!`#O*g#P;'S*g;'S;=`+Z<%lO*g(n#MXX$k&j(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El#M}Z#r(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx!_*g!_!`#Np!`#O*g#P;'S*g;'S;=`+Z<%lO*g(El#NyX$Q(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g(El$ oX#s(Ch(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g*)x$!ga#`*!Y$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`!a$#l!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(K[$#w_#k(Cl$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z*)x$%Vag!*r#s(Ch$f#|$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`$&[!`!a$'f!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$&g_#s(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$'qa#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`!a$(v!a#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$)R`#r(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(Kd$*`a(r(Ct$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!a%Z!a!b$+e!b#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$+p`$i&j#{(Ch(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`$,}_!|$Ip$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z04f$.X_!S0,v$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(n$/]Z$i&jO!^$0O!^!_$0f!_#i$0O#i#j$0k#j#l$0O#l#m$2^#m#o$0O#o#p$0f#p;'S$0O;'S;=`$4i<%lO$0O(n$0VT_#S$i&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#S$0kO_#S(n$0p[$i&jO!Q&c!Q![$1f![!^&c!_!c&c!c!i$1f!i#T&c#T#Z$1f#Z#o&c#o#p$3|#p;'S&c;'S;=`&w<%lO&c(n$1kZ$i&jO!Q&c!Q![$2^![!^&c!_!c&c!c!i$2^!i#T&c#T#Z$2^#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$2cZ$i&jO!Q&c!Q![$3U![!^&c!_!c&c!c!i$3U!i#T&c#T#Z$3U#Z#o&c#p;'S&c;'S;=`&w<%lO&c(n$3ZZ$i&jO!Q&c!Q![$0O![!^&c!_!c&c!c!i$0O!i#T&c#T#Z$0O#Z#o&c#p;'S&c;'S;=`&w<%lO&c#S$4PR!Q![$4Y!c!i$4Y#T#Z$4Y#S$4]S!Q![$4Y!c!i$4Y#T#Z$4Y#q#r$0f(n$4lP;=`<%l$0O#1[$4z_!Y#)l$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z(KW$6U`#x(Ch$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z+;p$7c_$i&j(Wp(Z!b(a+4QOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$8qk$i&j(Wp(Z!b(T,2j$_#t(e$I[OY%ZYZ&cZr%Zrs&}st%Ztu$8buw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$8b![!^%Z!^!_*g!_!c%Z!c!}$8b!}#O%Z#O#P&c#P#R%Z#R#S$8b#S#T%Z#T#o$8b#o#p*g#p$g%Z$g;'S$8b;'S;=`$<l<%lO$8b+d$:qk$i&j(Wp(Z!b$_#tOY%ZYZ&cZr%Zrs&}st%Ztu$:fuw%Zwx(rx}%Z}!O$:f!O!Q%Z!Q![$:f![!^%Z!^!_*g!_!c%Z!c!}$:f!}#O%Z#O#P&c#P#R%Z#R#S$:f#S#T%Z#T#o$:f#o#p*g#p$g%Z$g;'S$:f;'S;=`$<f<%lO$:f+d$<iP;=`<%l$:f07[$<oP;=`<%l$8b#Jf$<{X!_#Hb(Wp(Z!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g,#x$=sa(y+JY$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`Ka!`#O%Z#O#P&c#P#o%Z#o#p*g#p#q$+e#q;'S%Z;'S;=`+a<%lO%Z)>v$?V_!^(CdvBr$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z?O$@a_!q7`$i&j(Wp(Z!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z07[$Aq|$i&j(Wp(Z!b'|0/l$]#t(T,2j(e$I[OX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$f%Z$f$g+g$g#BYEr#BY#BZ$A`#BZ$ISEr$IS$I_$A`$I_$JTEr$JT$JU$A`$JU$KVEr$KV$KW$A`$KW&FUEr&FU&FV$A`&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$A`?HUOEr07[$D|k$i&j(Wp(Z!b'}0/l$]#t(T,2j(e$I[OY%ZYZ&cZr%Zrs&}st%ZtuEruw%Zwx(rx}%Z}!OGv!O!Q%Z!Q![Er![!^%Z!^!_*g!_!c%Z!c!}Er!}#O%Z#O#P&c#P#R%Z#R#SEr#S#T%Z#T#oEr#o#p*g#p$g%Z$g;'SEr;'S;=`I|<%lOEr",tokenizers:[KN,JN,e3,t3,2,3,4,5,6,7,8,9,10,11,12,13,14,FN,new pc("$S~RRtu[#O#Pg#S#T#|~_P#o#pb~gOx~~jVO#i!P#i#j!U#j#l!P#l#m!q#m;'S!P;'S;=`#v<%lO!P~!UO!U~~!XS!Q![!e!c!i!e#T#Z!e#o#p#Z~!hR!Q![!q!c!i!q#T#Z!q~!tR!Q![!}!c!i!}#T#Z!}~#QR!Q![!P!c!i!P#T#Z!P~#^R!Q![#g!c!i#g#T#Z#g~#jS!Q![#g!c!i#g#T#Z#g#q#r!P~#yP;=`<%l!P~$RO(c~~",141,340),new pc("j~RQYZXz{^~^O(Q~~aP!P!Qd~iO(R~~",25,323)],topRules:{Script:[0,7],SingleExpression:[1,276],SingleClassItem:[2,277]},dialects:{jsx:0,ts:15175},dynamicPrecedences:{80:1,82:1,94:1,169:1,199:1},specialized:[{term:327,get:t=>n3[t]||-1},{term:343,get:t=>s3[t]||-1},{term:95,get:t=>l3[t]||-1}],tokenPrec:15201}),Ov=[Ie("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Ie("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Ie("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Ie("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Ie("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Ie(`try {
|
|
520
520
|
\${}
|
|
521
521
|
} catch (\${error}) {
|
|
522
522
|
\${}
|