tako-cli 0.3.11 → 0.3.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/index.js +403 -149
  2. package/package.json +5 -2
package/dist/index.js CHANGED
@@ -1,56 +1,311 @@
1
1
  #!/usr/bin/env bun
2
2
  // @bun
3
- var{defineProperty:oe,getOwnPropertyNames:Yt,getOwnPropertyDescriptor:Zt}=Object,Tt=Object.prototype.hasOwnProperty;function It(i){return this[i]}var Ot=(i)=>{var o=(B0??=new WeakMap).get(i),n;if(o)return o;if(o=oe({},"__esModule",{value:!0}),i&&typeof i==="object"||typeof i==="function"){for(var e of Yt(i))if(!Tt.call(o,e))oe(o,e,{get:It.bind(i,e),enumerable:!(n=Zt(i,e))||n.enumerable})}return B0.set(i,o),o},B0;var Xt=(i)=>i;function Ft(i,o){this[i]=Xt.bind(null,o)}var ai=(i,o)=>{for(var n in o)oe(i,n,{get:o[n],enumerable:!0,configurable:!0,set:Ft.bind(o,n)})};var G=(i,o)=>()=>(i&&(o=i(i=0)),o);var k=import.meta.require;var C0={};ai(C0,{updateConfig:()=>Vi,saveConfig:()=>Y,loadConfig:()=>N,hasApiKey:()=>Et,getApiKey:()=>_t,getApiId:()=>Ui,ensureTakoDir:()=>de,TOOLS_DIR:()=>un,TAKO_SERVER:()=>R0,TAKO_DIR:()=>B,TAKO_CLI_DIR:()=>ri,TAKO_BUN_DIR:()=>vi,TAKO_BUN_CACHE_DIR:()=>ee,TAKO_BUN_BIN:()=>C,PROXY_BASE_URL:()=>H,IS_DEV:()=>Mo,CONFIG_PATH:()=>ne});import{homedir as Vt}from"os";import{join as Fi,resolve as Ut}from"path";async function de(){let i=await import("fs/promises");try{await i.mkdir(B,{recursive:!0}),await i.mkdir(un,{recursive:!0})}catch{}}async function N(){await de();try{let i=Bun.file(ne);if(await i.exists()){let o=await i.json();return{...A0,...o}}}catch{}return{...A0}}async function Y(i){await de(),await Bun.write(ne,JSON.stringify(i,null,2))}async function Vi(i){let n={...await N(),...i};return await Y(n),n}async function Et(){return!!(await N()).apiKey}async function _t(){return(await N()).apiKey}async function Ui(){return(await N()).apiId}var B,ne,un,ri,vi,C,ee,R0,H,Mo,A0;var P=G(()=>{B=Ut(process.env.TAKO_HOME||Fi(Vt(),".tako")),ne=Fi(B,"config.json"),un=Fi(B,"tools"),ri=Fi(B,"cli"),vi=Fi(B,"bun"),C=Fi(vi,"bin",process.platform==="win32"?"bun.exe":"bun"),ee=Fi(vi,"install-cache"),R0=process.env.TAKO_SERVER||"https://tako.shiroha.tech",H=process.env.PROXY_BASE_URL||"https://tako.shiroha.tech",Mo=process.env.TAKO_DEV==="true"||process.env.TAKO_DEV==="1"||R0.includes("localhost"),A0={apiKey:"",apiId:"",installedClients:{}}});import{join as tn}from"path";function ue(i,o){if(!i.startsWith(B))throw Error(`\u5B89\u5168\u68C0\u67E5\u5931\u8D25: ${o} \u8DEF\u5F84 "${i}" \u4E0D\u5728 Tako \u76EE\u5F55\u4E0B`)}function gi(i){let o=tn(un,i);return ue(o,"\u5BA2\u6237\u7AEF\u5B89\u88C5\u76EE\u5F55"),o}async function to(i){let o=gi(i.id),n=tn(o,"node_modules",i.package,"package.json");try{let e=Bun.file(n);if(!await e.exists())return null;let u=(await e.json()).bin;if(!u)return null;let t=null;if(typeof u==="string")t=u;else if(typeof u==="object"&&u[i.command])t=u[i.command];if(!t)return null;let a=tn(o,"node_modules",i.package,t);return ue(a,"\u5BA2\u6237\u7AEF\u5165\u53E3\u6587\u4EF6"),a}catch{return null}}function ao(i){let o=gi(i.id),n=tn(o,"node_modules",".bin",i.command);return ue(n,"\u5BA2\u6237\u7AEF\u53EF\u6267\u884C\u6587\u4EF6"),n}function an(i,o){let n=i.launchOptions;return typeof n==="function"?n(o):n??[]}function ro(i){te.set(i.id,i)}function H0(){return Array.from(te.values())}function E(i){return te.get(i)}var te;var T=G(()=>{P();te=new Map});import{join as La}from"path";function _0(){return Na??La(B,"tako-models-cache.json")}function ve(i,o){return`${i.replace(/\/+$/,"")}#${o}`}function se(){if(E0)return;E0=!0;try{let i=k("fs"),o=JSON.parse(i.readFileSync(_0(),"utf-8"));if(o?.version!==1||typeof o.buckets!=="object")return;for(let[n,e]of Object.entries(o.buckets))if(typeof e?.fetchedAt==="number"&&Array.isArray(e.entries))Qo.set(n,e)}catch{}}async function ba(){try{let i=await import("fs/promises"),o=_0(),n=o.slice(0,o.lastIndexOf("/"));if(n)await i.mkdir(n,{recursive:!0}).catch(()=>{});let e={version:1,buckets:Object.fromEntries(Qo)};await i.writeFile(o,JSON.stringify(e),"utf-8")}catch{}}function fa(i){let o=i?.models;if(!Array.isArray(o))return[];let n=[];for(let e of o){let d=e?.slug;if(typeof d!=="string"||!d)continue;n.push({id:d,displayName:e.display_name||d,description:e.description||"",contextWindow:typeof e.context_window==="number"?e.context_window:0,sortOrder:typeof e.priority==="number"?e.priority:0})}return n.sort((e,d)=>e.sortOrder-d.sortOrder||e.id.localeCompare(d.id)),n}function Ki(i,o){return se(),Qo.get(ve(i,o))?.entries??null}async function wn(i,o,n){se();let e=ve(i,n),d=ye.get(e);if(d)return d;let u=(async()=>{try{let t=i.replace(/\/+$/,"")+`/v1/models?client_version=tako-cli&api_type=${n}`,a=await fetch(t,{headers:{Authorization:`Bearer ${o}`},signal:AbortSignal.timeout(Wa)});if(!a.ok)return;let r=await a.json(),p=fa(r);if(p.length===0)return;Qo.set(e,{fetchedAt:Date.now(),entries:p}),await ba()}catch{}finally{ye.delete(e)}})();return ye.set(e,u),u}function Le(i){se();let o=Date.now(),n=[];for(let e of i){if(e.type!=="tako"&&e.type!=="custom")continue;if(!e.apiKey||!e.baseUrl)continue;for(let d of["openai","claude"]){let u=Qo.get(ve(e.baseUrl,d));if(u&&o-u.fetchedAt<ha)continue;let t=wn(e.baseUrl,e.apiKey,d);if(!u)n.push(t)}}return Promise.all(n).then(()=>{return})}var ha=3600000,Wa=8000,Na=null,Qo,E0=!1,ye;var he=G(()=>{P();Qo=new Map,ye=new Map});function _(i){switch(i){case"claude-subscription":return["claude-code"];case"codex-subscription":return["codex"];case"anthropic":return["claude-code"];case"deepseek":return["claude-code","codex"];case"xiaomi":return["claude-code"];case"custom":return["claude-code","codex"];case"tako":default:return}}function Po(i){switch(i){case"deepseek":return"deepseek-v4-flash";case"xiaomi":return"mimo-v2.5-pro";case"tako":return;default:return}}function fe(i){switch(i){case"deepseek":return"https://api.deepseek.com";case"xiaomi":return ze;default:return}}function $e(i){return i?.startsWith("tp-")?nd:ze}function Jo(i){switch(i){case"deepseek":return["deepseek-v4-flash","deepseek-v4-pro"];case"xiaomi":return Ba;case"tako":case"anthropic":return Ka;default:return}}function Bi(i,o){let n=i.supportedClients;if(!n||n.length===0)return!0;return n.includes(o)}var Ei,ke="https://api.deepseek.com/anthropic",ze="https://api.xiaomimimo.com/anthropic",nd="https://token-plan-cn.xiaomimimo.com/anthropic",Ka,Ba;var Gi=G(()=>{Ei={"claude-subscription":{en:"Claude Subscription",zh:"Claude \u8BA2\u9605\u76F4\u8FDE"},"codex-subscription":{en:"Codex Subscription",zh:"Codex \u8BA2\u9605\u76F4\u8FDE"},tako:{en:"Tako Proxy",zh:"Tako \u4EE3\u7406"},anthropic:{en:"Anthropic Direct",zh:"Anthropic \u76F4\u8FDE"},deepseek:{en:"DeepSeek",zh:"DeepSeek"},xiaomi:{en:"Xiaomi MiMo",zh:"\u5C0F\u7C73 MiMo"},custom:{en:"Custom Proxy",zh:"\u81EA\u5B9A\u4E49\u4EE3\u7406"}};Ka=["claude-sonnet-4-6","claude-opus-4-6","claude-opus-4-7"],Ba=["mimo-v2.5-pro"]});var dd={};ai(dd,{spinner:()=>Ha,setLogHandler:()=>Ra,resetLogHandler:()=>Ca,log:()=>h,createSpinner:()=>_i});function Aa(i){let o=!!process.stderr.isTTY,n=(d)=>process.stderr.write(d),e=i;if(o)n(`\u23F3 ${i}`);else n(`\u23F3 ${i}
4
- `);return{update(d){if(d===e)return;if(e=d,o)n(`\r\x1B[2K\u23F3 ${d}`);else n(`\u23F3 ${d}
5
- `)},stop(d){if(o)n("\r\x1B[2K");if(d)n(`\u2713 ${d}
6
- `)}}}function Ra(i){Mi=i}function Ca(){Mi=ed}function Ha(){return{start(i){return Mi.spin(i)}}}function _i(){let i=null;return{start(o){i=Mi.spin(o)},stop(o){i?.stop(o),i=null},update(o){i?.update(o)}}}var ed,Mi,h;var Ai=G(()=>{ed={info:(i)=>console.log(`\u2139 ${i}`),warn:(i)=>console.log(`\u26A0 ${i}`),error:(i)=>console.error(`\u2717 ${i}`),success:(i)=>console.log(`\u2713 ${i}`),spin:Aa},Mi=ed;h={info:(i)=>Mi.info(i),warn:(i)=>Mi.warn(i),error:(i)=>Mi.error(i),success:(i)=>Mi.success(i),message:(i)=>Mi.info(i),debug:(i)=>{if(process.env.TAKO_DEV)process.stderr.write(`[debug] ${i}
7
- `)}}});var ud={};ai(ud,{t:()=>b,setLocale:()=>ge,getLocale:()=>Ri,detectLocale:()=>Di,clearLocaleOverride:()=>Ya});function Di(){if(xn)return xn;let i=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL||"";if(i.toLowerCase().includes("zh")||i.toLowerCase().includes("chinese"))return"zh";try{if(Intl.DateTimeFormat().resolvedOptions().locale.toLowerCase().startsWith("zh"))return"zh"}catch{}return"zh"}function ge(i){xn=i}function Ya(){xn=null}function b(i,o){let n=Di(),e=i.split("."),d=Za;for(let t of e)if(d=d?.[t],!d)return i;let u=d[n]||d.en||i;if(o)for(let[t,a]of Object.entries(o))u=u.replace(`{${t}}`,String(a));return u}function Ri(){return Di()}var xn=null,Za;var I=G(()=>{Za={launcher:{starting:{en:"Starting {client}...",zh:"\u6B63\u5728\u542F\u52A8 {client}..."},directoryNotFound:{en:"Directory not found: {path}",zh:"\u76EE\u5F55\u4E0D\u5B58\u5728\uFF1A{path}"},apiKeyNotConfigured:{en:"API Key not configured",zh:"API Key \u672A\u914D\u7F6E"},error:{en:"Error: {message}",zh:"\u9519\u8BEF\uFF1A{message}"}},menu:{selectAction:{en:"Select an action:",zh:"\u8BF7\u9009\u62E9\u64CD\u4F5C\uFF1A"},launchClient:{en:"Launch {client}",zh:"\u542F\u52A8 {client}"},advanced:{en:"Advanced",zh:"\u9AD8\u7EA7"},advancedHint:{en:"Usage stats, configuration, etc.",zh:"\u7528\u91CF\u7EDF\u8BA1\u3001\u914D\u7F6E\u7B49"},exit:{en:"Exit",zh:"\u9000\u51FA"},advancedOptions:{en:"Advanced Options:",zh:"\u9AD8\u7EA7\u9009\u9879\uFF1A"},viewStats:{en:"View Usage Statistics",zh:"\u67E5\u770B\u7528\u91CF\u7EDF\u8BA1"},configApiKey:{en:"Configure API Key",zh:"\u914D\u7F6E API Key"},back:{en:"Back",zh:"\u8FD4\u56DE"},changeLanguage:{en:"Change Language",zh:"\u5207\u6362\u8BED\u8A00"},currentLanguage:{en:"Current Language: {lang}",zh:"\u5F53\u524D\u8BED\u8A00\uFF1A{lang}"},languageChanged:{en:"Language changed to {lang}",zh:"\u8BED\u8A00\u5DF2\u5207\u6362\u4E3A {lang}"},selectOptions:{en:"Select launch options (Space to toggle, Enter to confirm):",zh:"\u9009\u62E9\u542F\u52A8\u9009\u9879\uFF08\u7A7A\u683C\u5207\u6362\uFF0C\u56DE\u8F66\u786E\u8BA4\uFF09\uFF1A"},resetOptions:{en:"Reset Launch Options",zh:"\u91CD\u7F6E\u542F\u52A8\u9009\u9879"},optionsReset:{en:"Launch options have been reset. You will be prompted again next time.",zh:"\u542F\u52A8\u9009\u9879\u5DF2\u91CD\u7F6E\uFF0C\u4E0B\u6B21\u542F\u52A8\u65F6\u5C06\u91CD\u65B0\u9009\u62E9\u3002"}},language:{en:{en:"English",zh:"\u82F1\u8BED"},zh:{en:"Chinese",zh:"\u4E2D\u6587"}},banner:{welcome:{en:"Welcome!",zh:"\u6B22\u8FCE\u4F7F\u7528\uFF01"}},stats:{title:{en:"\uD83D\uDCCA Usage Statistics",zh:"\uD83D\uDCCA \u7528\u91CF\u7EDF\u8BA1"},totalRequests:{en:"Total Requests: {count} times",zh:"\u603B\u8C03\u7528\u6B21\u6570\uFF1A{count} \u6B21"},totalCost:{en:"Total Cost: {cost}",zh:"\u603B\u6D88\u8D39\uFF1A{cost}"},todayCost:{en:"Today's Cost: {cost}",zh:"\u4ECA\u65E5\u6D88\u8D39\uFF1A{cost}"},modelDistribution:{en:"Model Usage Distribution (Today):",zh:"\u6A21\u578B\u4F7F\u7528\u5206\u5E03\uFF08\u4ECA\u65E5\uFF09\uFF1A"},times:{en:"times",zh:"\u6B21"},refreshHint:{en:"{countdown}s until refresh | Press any key to return",zh:"{countdown}s \u540E\u5237\u65B0 | \u6309\u4EFB\u610F\u952E\u8FD4\u56DE"},fetching:{en:"Fetching usage statistics...",zh:"\u83B7\u53D6\u7528\u91CF\u7EDF\u8BA1..."},fetchFailed:{en:"Failed to fetch: {error}",zh:"\u83B7\u53D6\u5931\u8D25\uFF1A{error}"}},prompts:{enterApiKey:{en:"Please enter your API Key:",zh:"\u8BF7\u8F93\u5165\u60A8\u7684 API Key\uFF1A"},apiKeyPlaceholder:{en:"cr_xxxxxxxx",zh:"cr_xxxxxxxx"},validating:{en:"Validating API Key...",zh:"\u6B63\u5728\u9A8C\u8BC1 API Key..."},keyInvalidFormat:{en:"Invalid format, must start with cr_",zh:"\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u4EE5 cr_ \u5F00\u5934"},keyValidationFailed:{en:"Validation failed: {error}",zh:"\u9A8C\u8BC1\u5931\u8D25\uFF1A{error}"},keyConfigured:{en:"API Key configured successfully!",zh:"API Key \u914D\u7F6E\u6210\u529F\uFF01"}},cli:{version:{en:"Tako CLI v{version}",zh:"Tako CLI v{version}"},usage:{en:"Usage: tako [options] [command]",zh:"\u7528\u6CD5\uFF1Atako [\u9009\u9879] [\u547D\u4EE4]"},options:{en:"Options:",zh:"\u9009\u9879\uFF1A"},optionVersion:{en:" -v, --version Display version number",zh:" -v, --version \u663E\u793A\u7248\u672C\u53F7"},optionHelp:{en:" -h, --help Display help information",zh:" -h, --help \u663E\u793A\u5E2E\u52A9\u4FE1\u606F"},shortcuts:{en:"Shortcuts:",zh:"\u5FEB\u6377\u547D\u4EE4\uFF1A"},shortcutClaude:{en:" --claude [args...] Launch Claude Code (passes extra args through, e.g. --model)",zh:" --claude [\u53C2\u6570...] \u542F\u52A8 Claude Code\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 claude\uFF0C\u5982 --model\uFF09"},shortcutCodex:{en:" --codex [args...] Launch Codex (passes extra args through)",zh:" --codex [\u53C2\u6570...] \u542F\u52A8 Codex\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 codex\uFF09"},shortcutGemini:{en:" --gemini [args...] Launch Gemini CLI (passes extra args through)",zh:" --gemini [\u53C2\u6570...] \u542F\u52A8 Gemini CLI\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 gemini\uFF09"},examples:{en:"Examples:",zh:"\u793A\u4F8B\uFF1A"},exampleInteractive:{en:" tako Interactive tool selection",zh:" tako \u4EA4\u4E92\u5F0F\u9009\u62E9\u5DE5\u5177"},exampleClaude:{en:" tako --claude Launch Claude Code directly",zh:" tako --claude \u76F4\u63A5\u542F\u52A8 Claude Code"},exampleClaudeModel:{en:" tako --claude --model claude-opus-4-7 Launch Claude Code with a specific model",zh:" tako --claude --model claude-opus-4-7 \u6307\u5B9A\u6A21\u578B\u542F\u52A8 Claude Code"},exampleCodex:{en:" tako --codex Launch Codex directly",zh:" tako --codex \u76F4\u63A5\u542F\u52A8 Codex"},exampleGemini:{en:" tako --gemini Launch Gemini CLI directly",zh:" tako --gemini \u76F4\u63A5\u542F\u52A8 Gemini CLI"},clientNotFound:{en:"{client} client not found",zh:"{client} \u5BA2\u6237\u7AEF\u672A\u627E\u5230"},cliError:{en:"Tako CLI encountered an error:",zh:"Tako CLI \u53D1\u751F\u9519\u8BEF\uFF1A"},launchFailed:{en:"Launch failed",zh:"\u542F\u52A8\u5931\u8D25"}},auth:{invalidFormat:{en:"Invalid format, must start with cr_",zh:"\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u4EE5 cr_ \u5F00\u5934"},validationFailed:{en:"Validation failed",zh:"\u9A8C\u8BC1\u5931\u8D25"},networkError:{en:"Network request failed",zh:"\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25"}},updater:{migrating:{en:"Detected old installation, migrating...",zh:"\u68C0\u6D4B\u5230\u65E7\u7248\u5B89\u88C5\u65B9\u5F0F\uFF0C\u6B63\u5728\u8FC1\u79FB..."},installingLocally:{en:"Installing to local directory...",zh:"\u6B63\u5728\u5B89\u88C5\u5230\u672C\u5730\u76EE\u5F55..."},migrationFailed:{en:"Local installation failed, skipping migration",zh:"\u672C\u5730\u5B89\u88C5\u5931\u8D25\uFF0C\u8DF3\u8FC7\u8FC1\u79FB"},installComplete:{en:"Local installation complete",zh:"\u672C\u5730\u5B89\u88C5\u5B8C\u6210"},migrationComplete:{en:"Detected old installation, migration complete. Please restart Tako CLI",zh:"\u68C0\u6D4B\u5230\u65E7\u7248\u5B89\u88C5\uFF0C\u5DF2\u5B8C\u6210\u8FC1\u79FB\uFF0C\u8BF7\u91CD\u65B0\u542F\u52A8 Tako CLI"},newVersionAvailable:{en:"New version v{version} available (current v{current})",zh:"\u53D1\u73B0\u65B0\u7248\u672C v{version}\uFF08\u5F53\u524D v{current}\uFF09"},pleaseRestart:{en:"Please restart Tako CLI to use the new version",zh:"\u8BF7\u91CD\u65B0\u542F\u52A8 Tako CLI \u4EE5\u4F7F\u7528\u65B0\u7248\u672C"}},region:{usingChinaMirror:{en:"Detected China mainland network, using domestic mirror",zh:"\u68C0\u6D4B\u5230\u4E2D\u56FD\u5927\u9646\u7F51\u7EDC\uFF0C\u4F7F\u7528\u56FD\u5185\u955C\u50CF\u6E90"},usingGlobalMirror:{en:"Using global mirror",zh:"\u4F7F\u7528\u56FD\u9645\u6E90"}},telemetry:{toggle:{en:"Toggle Telemetry",zh:"\u5207\u6362\u9065\u6D4B"},enabled:{en:"Telemetry is enabled",zh:"\u9065\u6D4B\u5DF2\u5F00\u542F"},disabled:{en:"Telemetry is disabled",zh:"\u9065\u6D4B\u5DF2\u5173\u95ED"},description:{en:"Anonymous usage data helps us improve Tako CLI",zh:"\u533F\u540D\u4F7F\u7528\u6570\u636E\u5E2E\u52A9\u6211\u4EEC\u6539\u8FDB Tako CLI"}},time:{justNow:{en:"just now",zh:"\u521A\u521A"},minutesAgo:{en:"{n}m ago",zh:"{n}\u5206\u949F\u524D"},hoursAgo:{en:"{n}h ago",zh:"{n}\u5C0F\u65F6\u524D"},yesterday:{en:"yesterday",zh:"\u6628\u5929"},daysAgo:{en:"{n}d ago",zh:"{n}\u5929\u524D"},weeksAgo:{en:"{n}w ago",zh:"{n}\u5468\u524D"},monthsAgo:{en:"{n}mo ago",zh:"{n}\u6708\u524D"}},claudeCode:{settingsDetected:{en:`Detected hardcoded config in Claude Code settings that conflicts with Tako:
3
+ var xk=Object.create;var{getPrototypeOf:pk,defineProperty:bF,getOwnPropertyNames:e7,getOwnPropertyDescriptor:ik}=Object,AL=Object.prototype.hasOwnProperty;function BL(B){return this[B]}var dk,ck,YA=(B,I,C)=>{var g=B!=null&&typeof B==="object";if(g){var F=I?dk??=new WeakMap:ck??=new WeakMap,N=F.get(B);if(N)return N}C=B!=null?xk(pk(B)):{};let H=I||!B||!B.__esModule?bF(C,"default",{value:B,enumerable:!0}):C;for(let M of e7(B))if(!AL.call(H,M))bF(H,M,{get:BL.bind(B,M),enumerable:!0});if(g)F.set(B,H);return H},lk=(B)=>{var I=(t7??=new WeakMap).get(B),C;if(I)return I;if(I=bF({},"__esModule",{value:!0}),B&&typeof B==="object"||typeof B==="function"){for(var g of e7(B))if(!AL.call(I,g))bF(I,g,{get:BL.bind(B,g),enumerable:!(C=ik(B,g))||C.enumerable})}return t7.set(B,I),I},t7,pI=(B,I)=>()=>(I||B((I={exports:{}}).exports,I),I.exports);var ak=(B)=>B;function ok(B,I){this[B]=ak.bind(null,I)}var F0=(B,I)=>{for(var C in I)bF(B,C,{get:I[C],enumerable:!0,configurable:!0,set:ok.bind(I,C)})};var c=(B,I)=>()=>(B&&(I=B(B=0)),I);var B2=(B)=>Promise.all(B),cA=import.meta.require;var EL={};F0(EL,{updateConfig:()=>fg,saveConfig:()=>KI,loadConfig:()=>AB,hasApiKey:()=>DN,getApiKey:()=>sk,getApiId:()=>jg,ensureTakoDir:()=>gN,TOOLS_DIR:()=>Ow,TAKO_SERVER:()=>IL,TAKO_DIR:()=>uQ,TAKO_CLI_DIR:()=>v0,TAKO_BUN_DIR:()=>GE,TAKO_BUN_CACHE_DIR:()=>CN,TAKO_BUN_BIN:()=>iQ,PROXY_BASE_URL:()=>rQ,IS_DEV:()=>fF,CONFIG_PATH:()=>EN});import{homedir as nk}from"os";import{join as bg,resolve as rk}from"path";async function gN(){let B=await import("fs/promises");try{await B.mkdir(uQ,{recursive:!0}),await B.mkdir(Ow,{recursive:!0})}catch{}}async function AB(){await gN();try{let B=Bun.file(EN);if(await B.exists()){let I=await B.json();return{...QL,...I}}}catch{}return{...QL}}async function KI(B){await gN(),await Bun.write(EN,JSON.stringify(B,null,2))}async function fg(B){let C={...await AB(),...B};return await KI(C),C}async function DN(){return!!(await AB()).apiKey}async function sk(){return(await AB()).apiKey}async function jg(){return(await AB()).apiId}var uQ,EN,Ow,v0,GE,iQ,CN,IL,rQ,fF,QL;var sB=c(()=>{uQ=rk(process.env.TAKO_HOME||bg(nk(),".tako")),EN=bg(uQ,"config.json"),Ow=bg(uQ,"tools"),v0=bg(uQ,"cli"),GE=bg(uQ,"bun"),iQ=bg(GE,"bin",process.platform==="win32"?"bun.exe":"bun"),CN=bg(GE,"install-cache"),IL=process.env.TAKO_SERVER||"https://tako.shiroha.tech",rQ=process.env.PROXY_BASE_URL||"https://tako.shiroha.tech",fF=process.env.TAKO_DEV==="true"||process.env.TAKO_DEV==="1"||IL.includes("localhost"),QL={apiKey:"",apiId:"",installedClients:{}}});import{join as Sw}from"path";function FN(B,I){if(!B.startsWith(uQ))throw Error(`\u5B89\u5168\u68C0\u67E5\u5931\u8D25: ${I} \u8DEF\u5F84 "${B}" \u4E0D\u5728 Tako \u76EE\u5F55\u4E0B`)}function sE(B){let I=Sw(Ow,B);return FN(I,"\u5BA2\u6237\u7AEF\u5B89\u88C5\u76EE\u5F55"),I}async function Q2(B){let I=sE(B.id),C=Sw(I,"node_modules",B.package,"package.json");try{let g=Bun.file(C);if(!await g.exists())return null;let N=(await g.json()).bin;if(!N)return null;let H=null;if(typeof N==="string")H=N;else if(typeof N==="object"&&N[B.command])H=N[B.command];if(!H)return null;let M=Sw(I,"node_modules",B.package,H);return FN(M,"\u5BA2\u6237\u7AEF\u5165\u53E3\u6587\u4EF6"),M}catch{return null}}function I2(B){let I=sE(B.id),C=Sw(I,"node_modules",".bin",B.command);return FN(C,"\u5BA2\u6237\u7AEF\u53EF\u6267\u884C\u6587\u4EF6"),C}function jF(B,I){let C=B.launchOptions;return typeof C==="function"?C(I):C??[]}function E2(B){wN.set(B.id,B)}function xg(){return Array.from(wN.values())}function iI(B){return wN.get(B)}var wN;var kI=c(()=>{sB();wN=new Map});import{join as Kz}from"path";function UL(){return Yz??Kz(uQ,"tako-models-cache.json")}function RN(B,I){return`${B.replace(/\/+$/,"")}#${I}`}function WN(){if(ML)return;ML=!0;try{let B=cA("fs"),I=JSON.parse(B.readFileSync(UL(),"utf-8"));if(I?.version!==1||typeof I.buckets!=="object")return;for(let[C,g]of Object.entries(I.buckets))if(typeof g?.fetchedAt==="number"&&Array.isArray(g.entries))iF.set(C,g)}catch{}}async function Zz(){try{let B=await import("fs/promises"),I=UL(),C=I.slice(0,I.lastIndexOf("/"));if(C)await B.mkdir(C,{recursive:!0}).catch(()=>{});let g={version:1,buckets:Object.fromEntries(iF)};await B.writeFile(I,JSON.stringify(g),"utf-8")}catch{}}function Xz(B){let I=B?.models;if(!Array.isArray(I))return[];let C=[];for(let g of I){let F=g?.slug;if(typeof F!=="string"||!F)continue;C.push({id:F,displayName:g.display_name||F,description:g.description||"",contextWindow:typeof g.context_window==="number"?g.context_window:0,sortOrder:typeof g.priority==="number"?g.priority:0})}return C.sort((g,F)=>g.sortOrder-F.sortOrder||g.id.localeCompare(F.id)),C}function dC(B,I){return WN(),iF.get(RN(B,I))?.entries??null}async function Vw(B,I,C){WN();let g=RN(B,C),F=KN.get(g);if(F)return F;let N=(async()=>{try{let H=B.replace(/\/+$/,"")+`/v1/models?client_version=tako-cli&api_type=${C}`,M=await fetch(H,{headers:{Authorization:`Bearer ${I}`},signal:AbortSignal.timeout(Wz)});if(!M.ok)return;let U=await M.json(),u=Xz(U);if(u.length===0)return;iF.set(g,{fetchedAt:Date.now(),entries:u}),await Zz()}catch{}finally{KN.delete(g)}})();return KN.set(g,N),N}function YN(B){WN();let I=Date.now(),C=[];for(let g of B){if(g.type!=="tako"&&g.type!=="custom")continue;if(!g.apiKey||!g.baseUrl)continue;for(let F of["openai","claude"]){let N=iF.get(RN(g.baseUrl,F));if(N&&I-N.fetchedAt<Rz)continue;let H=Vw(g.baseUrl,g.apiKey,F);if(!N)C.push(H)}}return Promise.all(C).then(()=>{return})}var Rz=3600000,Wz=8000,Yz=null,iF,ML=!1,KN;var ZN=c(()=>{sB();iF=new Map,KN=new Map});function dI(B){switch(B){case"claude-subscription":return["claude-code"];case"codex-subscription":return["codex"];case"anthropic":return["claude-code"];case"deepseek":return["claude-code","codex"];case"xiaomi":return["claude-code"];case"custom":return["claude-code","codex"];case"tako":default:return}}function g2(B){switch(B){case"deepseek":return"deepseek-v4-flash";case"xiaomi":return"mimo-v2.5-pro";case"tako":return;default:return}}function zN(B){switch(B){case"deepseek":return"https://api.deepseek.com";case"xiaomi":return SN;default:return}}function $N(B){return B?.startsWith("tp-")?WL:SN}function dF(B){switch(B){case"deepseek":return["deepseek-v4-flash","deepseek-v4-pro"];case"xiaomi":return mz;case"tako":case"anthropic":return Pz;default:return}}function D2(B,I){let C=B.supportedClients;if(!C||C.length===0)return!0;return C.includes(I)}var w0,ON="https://api.deepseek.com/anthropic",SN="https://api.xiaomimimo.com/anthropic",WL="https://token-plan-cn.xiaomimimo.com/anthropic",Pz,mz;var cC=c(()=>{w0={"claude-subscription":{en:"Claude Subscription",zh:"Claude \u8BA2\u9605\u76F4\u8FDE"},"codex-subscription":{en:"Codex Subscription",zh:"Codex \u8BA2\u9605\u76F4\u8FDE"},tako:{en:"Tako Proxy",zh:"Tako \u4EE3\u7406"},anthropic:{en:"Anthropic Direct",zh:"Anthropic \u76F4\u8FDE"},deepseek:{en:"DeepSeek",zh:"DeepSeek"},xiaomi:{en:"Xiaomi MiMo",zh:"\u5C0F\u7C73 MiMo"},custom:{en:"Custom Proxy",zh:"\u81EA\u5B9A\u4E49\u4EE3\u7406"}};Pz=["claude-sonnet-4-6","claude-opus-4-6","claude-opus-4-7"],mz=["mimo-v2.5-pro"]});var ZL={};F0(ZL,{spinner:()=>bz,setLogHandler:()=>yN,resetLogHandler:()=>cF,log:()=>nA,createSpinner:()=>pg});function hz(B){let I=!!process.stderr.isTTY,C=(F)=>process.stderr.write(F),g=B;if(I)C(`\u23F3 ${B}`);else C(`\u23F3 ${B}
4
+ `);return{update(F){if(F===g)return;if(g=F,I)C(`\r\x1B[2K\u23F3 ${F}`);else C(`\u23F3 ${F}
5
+ `)},stop(F){if(I)C("\r\x1B[2K");if(F)C(`\u2713 ${F}
6
+ `)}}}function yN(B){tE=B}function cF(){tE=YL}function bz(){return{start(B){return tE.spin(B)}}}function pg(){let B=null;return{start(I){B=tE.spin(I)},stop(I){B?.stop(I),B=null},update(I){B?.update(I)}}}var YL,tE,nA;var eE=c(()=>{YL={info:(B)=>console.log(`\u2139 ${B}`),warn:(B)=>console.log(`\u26A0 ${B}`),error:(B)=>console.error(`\u2717 ${B}`),success:(B)=>console.log(`\u2713 ${B}`),spin:hz},tE=YL;nA={info:(B)=>tE.info(B),warn:(B)=>tE.warn(B),error:(B)=>tE.error(B),success:(B)=>tE.success(B),message:(B)=>tE.info(B),debug:(B)=>{if(process.env.TAKO_DEV)process.stderr.write(`[debug] ${B}
7
+ `)}}});var XL={};F0(XL,{t:()=>jA,setLocale:()=>TN,getLocale:()=>sQ,detectLocale:()=>G0,clearLocaleOverride:()=>fz});function G0(){if(Pw)return Pw;let B=process.env.LANG||process.env.LANGUAGE||process.env.LC_ALL||"";if(B.toLowerCase().includes("zh")||B.toLowerCase().includes("chinese"))return"zh";try{if(Intl.DateTimeFormat().resolvedOptions().locale.toLowerCase().startsWith("zh"))return"zh"}catch{}return"zh"}function TN(B){Pw=B}function fz(){Pw=null}function jA(B,I){let C=G0(),g=B.split("."),F=jz;for(let H of g)if(F=F?.[H],!F)return B;let N=F[C]||F.en||B;if(I)for(let[H,M]of Object.entries(I))N=N.replace(`{${H}}`,String(M));return N}function sQ(){return G0()}var Pw=null,jz;var kQ=c(()=>{jz={launcher:{starting:{en:"Starting {client}...",zh:"\u6B63\u5728\u542F\u52A8 {client}..."},directoryNotFound:{en:"Directory not found: {path}",zh:"\u76EE\u5F55\u4E0D\u5B58\u5728\uFF1A{path}"},apiKeyNotConfigured:{en:"API Key not configured",zh:"API Key \u672A\u914D\u7F6E"},error:{en:"Error: {message}",zh:"\u9519\u8BEF\uFF1A{message}"}},menu:{selectAction:{en:"Select an action:",zh:"\u8BF7\u9009\u62E9\u64CD\u4F5C\uFF1A"},launchClient:{en:"Launch {client}",zh:"\u542F\u52A8 {client}"},advanced:{en:"Advanced",zh:"\u9AD8\u7EA7"},advancedHint:{en:"Usage stats, configuration, etc.",zh:"\u7528\u91CF\u7EDF\u8BA1\u3001\u914D\u7F6E\u7B49"},exit:{en:"Exit",zh:"\u9000\u51FA"},advancedOptions:{en:"Advanced Options:",zh:"\u9AD8\u7EA7\u9009\u9879\uFF1A"},viewStats:{en:"View Usage Statistics",zh:"\u67E5\u770B\u7528\u91CF\u7EDF\u8BA1"},configApiKey:{en:"Configure API Key",zh:"\u914D\u7F6E API Key"},back:{en:"Back",zh:"\u8FD4\u56DE"},changeLanguage:{en:"Change Language",zh:"\u5207\u6362\u8BED\u8A00"},currentLanguage:{en:"Current Language: {lang}",zh:"\u5F53\u524D\u8BED\u8A00\uFF1A{lang}"},languageChanged:{en:"Language changed to {lang}",zh:"\u8BED\u8A00\u5DF2\u5207\u6362\u4E3A {lang}"},selectOptions:{en:"Select launch options (Space to toggle, Enter to confirm):",zh:"\u9009\u62E9\u542F\u52A8\u9009\u9879\uFF08\u7A7A\u683C\u5207\u6362\uFF0C\u56DE\u8F66\u786E\u8BA4\uFF09\uFF1A"},resetOptions:{en:"Reset Launch Options",zh:"\u91CD\u7F6E\u542F\u52A8\u9009\u9879"},optionsReset:{en:"Launch options have been reset. You will be prompted again next time.",zh:"\u542F\u52A8\u9009\u9879\u5DF2\u91CD\u7F6E\uFF0C\u4E0B\u6B21\u542F\u52A8\u65F6\u5C06\u91CD\u65B0\u9009\u62E9\u3002"}},language:{en:{en:"English",zh:"\u82F1\u8BED"},zh:{en:"Chinese",zh:"\u4E2D\u6587"}},banner:{welcome:{en:"Welcome!",zh:"\u6B22\u8FCE\u4F7F\u7528\uFF01"}},stats:{title:{en:"\uD83D\uDCCA Usage Statistics",zh:"\uD83D\uDCCA \u7528\u91CF\u7EDF\u8BA1"},totalRequests:{en:"Total Requests: {count} times",zh:"\u603B\u8C03\u7528\u6B21\u6570\uFF1A{count} \u6B21"},totalCost:{en:"Total Cost: {cost}",zh:"\u603B\u6D88\u8D39\uFF1A{cost}"},todayCost:{en:"Today's Cost: {cost}",zh:"\u4ECA\u65E5\u6D88\u8D39\uFF1A{cost}"},modelDistribution:{en:"Model Usage Distribution (Today):",zh:"\u6A21\u578B\u4F7F\u7528\u5206\u5E03\uFF08\u4ECA\u65E5\uFF09\uFF1A"},times:{en:"times",zh:"\u6B21"},refreshHint:{en:"{countdown}s until refresh | Press any key to return",zh:"{countdown}s \u540E\u5237\u65B0 | \u6309\u4EFB\u610F\u952E\u8FD4\u56DE"},fetching:{en:"Fetching usage statistics...",zh:"\u83B7\u53D6\u7528\u91CF\u7EDF\u8BA1..."},fetchFailed:{en:"Failed to fetch: {error}",zh:"\u83B7\u53D6\u5931\u8D25\uFF1A{error}"}},prompts:{enterApiKey:{en:"Please enter your API Key:",zh:"\u8BF7\u8F93\u5165\u60A8\u7684 API Key\uFF1A"},apiKeyPlaceholder:{en:"cr_xxxxxxxx",zh:"cr_xxxxxxxx"},validating:{en:"Validating API Key...",zh:"\u6B63\u5728\u9A8C\u8BC1 API Key..."},keyInvalidFormat:{en:"Invalid format, must start with cr_",zh:"\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u4EE5 cr_ \u5F00\u5934"},keyValidationFailed:{en:"Validation failed: {error}",zh:"\u9A8C\u8BC1\u5931\u8D25\uFF1A{error}"},keyConfigured:{en:"API Key configured successfully!",zh:"API Key \u914D\u7F6E\u6210\u529F\uFF01"}},cli:{version:{en:"Tako CLI v{version}",zh:"Tako CLI v{version}"},usage:{en:"Usage: tako [options] [command]",zh:"\u7528\u6CD5\uFF1Atako [\u9009\u9879] [\u547D\u4EE4]"},options:{en:"Options:",zh:"\u9009\u9879\uFF1A"},optionVersion:{en:" -v, --version Display version number",zh:" -v, --version \u663E\u793A\u7248\u672C\u53F7"},optionHelp:{en:" -h, --help Display help information",zh:" -h, --help \u663E\u793A\u5E2E\u52A9\u4FE1\u606F"},shortcuts:{en:"Shortcuts:",zh:"\u5FEB\u6377\u547D\u4EE4\uFF1A"},shortcutClaude:{en:" --claude [args...] Launch Claude Code (passes extra args through, e.g. --model)",zh:" --claude [\u53C2\u6570...] \u542F\u52A8 Claude Code\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 claude\uFF0C\u5982 --model\uFF09"},shortcutCodex:{en:" --codex [args...] Launch Codex (passes extra args through)",zh:" --codex [\u53C2\u6570...] \u542F\u52A8 Codex\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 codex\uFF09"},shortcutGemini:{en:" --gemini [args...] Launch Gemini CLI (passes extra args through)",zh:" --gemini [\u53C2\u6570...] \u542F\u52A8 Gemini CLI\uFF08\u989D\u5916\u53C2\u6570\u900F\u4F20\u7ED9 gemini\uFF09"},examples:{en:"Examples:",zh:"\u793A\u4F8B\uFF1A"},exampleInteractive:{en:" tako Interactive tool selection",zh:" tako \u4EA4\u4E92\u5F0F\u9009\u62E9\u5DE5\u5177"},exampleClaude:{en:" tako --claude Launch Claude Code directly",zh:" tako --claude \u76F4\u63A5\u542F\u52A8 Claude Code"},exampleClaudeModel:{en:" tako --claude --model claude-opus-4-7 Launch Claude Code with a specific model",zh:" tako --claude --model claude-opus-4-7 \u6307\u5B9A\u6A21\u578B\u542F\u52A8 Claude Code"},exampleCodex:{en:" tako --codex Launch Codex directly",zh:" tako --codex \u76F4\u63A5\u542F\u52A8 Codex"},exampleGemini:{en:" tako --gemini Launch Gemini CLI directly",zh:" tako --gemini \u76F4\u63A5\u542F\u52A8 Gemini CLI"},clientNotFound:{en:"{client} client not found",zh:"{client} \u5BA2\u6237\u7AEF\u672A\u627E\u5230"},cliError:{en:"Tako CLI encountered an error:",zh:"Tako CLI \u53D1\u751F\u9519\u8BEF\uFF1A"},launchFailed:{en:"Launch failed",zh:"\u542F\u52A8\u5931\u8D25"}},auth:{invalidFormat:{en:"Invalid format, must start with cr_",zh:"\u683C\u5F0F\u4E0D\u6B63\u786E\uFF0C\u5FC5\u987B\u4EE5 cr_ \u5F00\u5934"},validationFailed:{en:"Validation failed",zh:"\u9A8C\u8BC1\u5931\u8D25"},networkError:{en:"Network request failed",zh:"\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25"}},updater:{migrating:{en:"Detected old installation, migrating...",zh:"\u68C0\u6D4B\u5230\u65E7\u7248\u5B89\u88C5\u65B9\u5F0F\uFF0C\u6B63\u5728\u8FC1\u79FB..."},installingLocally:{en:"Installing to local directory...",zh:"\u6B63\u5728\u5B89\u88C5\u5230\u672C\u5730\u76EE\u5F55..."},migrationFailed:{en:"Local installation failed, skipping migration",zh:"\u672C\u5730\u5B89\u88C5\u5931\u8D25\uFF0C\u8DF3\u8FC7\u8FC1\u79FB"},installComplete:{en:"Local installation complete",zh:"\u672C\u5730\u5B89\u88C5\u5B8C\u6210"},migrationComplete:{en:"Detected old installation, migration complete. Please restart Tako CLI",zh:"\u68C0\u6D4B\u5230\u65E7\u7248\u5B89\u88C5\uFF0C\u5DF2\u5B8C\u6210\u8FC1\u79FB\uFF0C\u8BF7\u91CD\u65B0\u542F\u52A8 Tako CLI"},newVersionAvailable:{en:"New version v{version} available (current v{current})",zh:"\u53D1\u73B0\u65B0\u7248\u672C v{version}\uFF08\u5F53\u524D v{current}\uFF09"},pleaseRestart:{en:"Please restart Tako CLI to use the new version",zh:"\u8BF7\u91CD\u65B0\u542F\u52A8 Tako CLI \u4EE5\u4F7F\u7528\u65B0\u7248\u672C"}},region:{usingChinaMirror:{en:"Detected China mainland network, using domestic mirror",zh:"\u68C0\u6D4B\u5230\u4E2D\u56FD\u5927\u9646\u7F51\u7EDC\uFF0C\u4F7F\u7528\u56FD\u5185\u955C\u50CF\u6E90"},usingGlobalMirror:{en:"Using global mirror",zh:"\u4F7F\u7528\u56FD\u9645\u6E90"}},telemetry:{toggle:{en:"Toggle Telemetry",zh:"\u5207\u6362\u9065\u6D4B"},enabled:{en:"Telemetry is enabled",zh:"\u9065\u6D4B\u5DF2\u5F00\u542F"},disabled:{en:"Telemetry is disabled",zh:"\u9065\u6D4B\u5DF2\u5173\u95ED"},description:{en:"Anonymous usage data helps us improve Tako CLI",zh:"\u533F\u540D\u4F7F\u7528\u6570\u636E\u5E2E\u52A9\u6211\u4EEC\u6539\u8FDB Tako CLI"}},time:{justNow:{en:"just now",zh:"\u521A\u521A"},minutesAgo:{en:"{n}m ago",zh:"{n}\u5206\u949F\u524D"},hoursAgo:{en:"{n}h ago",zh:"{n}\u5C0F\u65F6\u524D"},yesterday:{en:"yesterday",zh:"\u6628\u5929"},daysAgo:{en:"{n}d ago",zh:"{n}\u5929\u524D"},weeksAgo:{en:"{n}w ago",zh:"{n}\u5468\u524D"},monthsAgo:{en:"{n}mo ago",zh:"{n}\u6708\u524D"}},claudeCode:{settingsDetected:{en:`Detected hardcoded config in Claude Code settings that conflicts with Tako:
8
8
  {fields}`,zh:`\u68C0\u6D4B\u5230 Claude Code settings \u4E2D\u5B58\u5728\u4E0E Tako \u51B2\u7A81\u7684\u914D\u7F6E\uFF1A
9
- {fields}`},confirmClean:{en:"Clean these settings? Tako will manage them automatically at launch",zh:"\u662F\u5426\u6E05\u7406\u8FD9\u4E9B\u914D\u7F6E\uFF1FTako \u542F\u52A8\u65F6\u4F1A\u81EA\u52A8\u6CE8\u5165\u6B63\u786E\u7684\u503C"},settingsCleaned:{en:"Settings cleaned, Tako will manage these configs automatically",zh:"\u5DF2\u6E05\u7406\u5B8C\u6210\uFF0CTako \u4F1A\u81EA\u52A8\u7BA1\u7406\u8FD9\u4E9B\u914D\u7F6E"},cleanSkipped:{en:"Skipped. Note: hardcoded settings may cause issues with Tako",zh:"\u5DF2\u8DF3\u8FC7\u3002\u6CE8\u610F\uFF1A\u5199\u6B7B\u7684\u914D\u7F6E\u53EF\u80FD\u5BFC\u81F4 Tako \u542F\u52A8\u5F02\u5E38"},usingIsolatedSettings:{en:"Using Tako-managed Claude Code settings for this launch: {path}",zh:"\u672C\u6B21\u542F\u52A8\u5C06\u4F7F\u7528 Tako \u6258\u7BA1\u7684 Claude Code settings\uFF1A{path}"},subscriptionMissingAuth:{en:"Selected Claude account has no captured credentials. Run `claude /login` for that account, then re-detect in Tako.",zh:"\u76EE\u6807 Claude \u8D26\u53F7\u7F3A\u5C11\u51ED\u636E\u3002\u8BF7\u7528 `claude /login` \u767B\u5F55\u8BE5\u8D26\u53F7\u540E\uFF0C\u8BA9 Tako \u91CD\u65B0\u68C0\u6D4B\u4E00\u6B21\u3002"},subscriptionSwitched:{en:"Switched Claude Code login to {email}",zh:"\u5DF2\u5207\u6362 Claude Code \u767B\u5F55\u8D26\u53F7\u4E3A {email}"},unknownCurrentAccount:{en:"Current Claude login ({email}) is not tracked by Tako; its tokens will be overwritten.",zh:"\u5F53\u524D Claude \u767B\u5F55\u8D26\u53F7 ({email}) \u672A\u88AB Tako \u8BB0\u5F55\uFF0C\u5207\u6362\u540E\u8BE5\u8D26\u53F7 token \u5C06\u88AB\u8986\u76D6\u3002"}},recentProjects:{title:{en:"Recent Projects",zh:"\u6700\u8FD1\u9879\u76EE"},launchInCurrent:{en:"Launch in current directory",zh:"\u5728\u5F53\u524D\u76EE\u5F55\u542F\u52A8"}},providers:{management:{en:"Manage Providers",zh:"\u7BA1\u7406\u670D\u52A1\u5546"},selectProvider:{en:"Select provider:",zh:"\u9009\u62E9\u670D\u52A1\u5546\uFF1A"},selectType:{en:"Provider type:",zh:"\u670D\u52A1\u5546\u7C7B\u578B\uFF1A"},enterName:{en:"Provider name:",zh:"\u670D\u52A1\u5546\u540D\u79F0\uFF1A"},enterApiKey:{en:"API Key:",zh:"API Key\uFF1A"},enterBaseUrl:{en:"Base URL:",zh:"\u57FA\u7840 URL\uFF1A"},add:{en:"Add Provider",zh:"\u6DFB\u52A0\u670D\u52A1\u5546"},edit:{en:"Edit Provider",zh:"\u7F16\u8F91\u670D\u52A1\u5546"},delete:{en:"Delete Provider",zh:"\u5220\u9664\u670D\u52A1\u5546"},setDefault:{en:"Set as Default",zh:"\u8BBE\u4E3A\u9ED8\u8BA4"},rescan:{en:"Re-scan Subscriptions",zh:"\u91CD\u65B0\u626B\u63CF\u8BA2\u9605"},back:{en:"Back",zh:"\u8FD4\u56DE"},added:{en:"Provider added",zh:"\u670D\u52A1\u5546\u5DF2\u6DFB\u52A0"},deleted:{en:"Provider deleted",zh:"\u670D\u52A1\u5546\u5DF2\u5220\u9664"},updated:{en:"Provider updated",zh:"\u670D\u52A1\u5546\u5DF2\u66F4\u65B0"},defaultSet:{en:"Default provider set",zh:"\u9ED8\u8BA4\u670D\u52A1\u5546\u5DF2\u8BBE\u7F6E"},noProviders:{en:"No providers configured",zh:"\u672A\u914D\u7F6E\u670D\u52A1\u5546"},noCompatible:{en:"No provider supports {client}",zh:"\u6CA1\u6709\u652F\u6301 {client} \u7684\u670D\u52A1\u5546"},defaultLabel:{en:"(default)",zh:"\uFF08\u9ED8\u8BA4\uFF09"},detected:{en:"Detected: {name}",zh:"\u68C0\u6D4B\u5230\uFF1A{name}"},confirmDelete:{en:"Delete {name}?",zh:"\u786E\u8BA4\u5220\u9664 {name}\uFF1F"},scanComplete:{en:"Scan complete, found {count} new provider(s)",zh:"\u626B\u63CF\u5B8C\u6210\uFF0C\u53D1\u73B0 {count} \u4E2A\u65B0\u670D\u52A1\u5546"}}}});var yn={};ai(yn,{writeClaudeAuth:()=>_a,readClaudeAuth:()=>Ea});import{homedir as td,platform as Ta,userInfo as Ia}from"os";import{join as Me}from"path";function rd(){return[process.env.USER||(()=>{try{return Ia().username}catch{return""}})(),"root"].filter(Boolean)}async function Oa(i){let o=Bun.spawn(["security","find-generic-password","-s",ad,"-a",i,"-w"],{stdout:"pipe",stderr:"pipe"}),n=await new Response(o.stdout).text();if(await o.exited!==0)return null;try{return JSON.parse(n.trim())}catch{return null}}async function Xa(){for(let i of rd()){let o=await Oa(i);if(o)return o}return null}async function Fa(i){let o=JSON.stringify(i),n=rd()[0],e=Bun.spawn(["security","add-generic-password","-U","-s",ad,"-a",n,"-w",o],{stdout:"pipe",stderr:"pipe"}),d=await e.exited;if(d!==0){let u=await new Response(e.stderr).text();throw Error(`security add-generic-password failed (${d}): ${u.trim()}`)}}async function Va(){try{let i=await import("fs/promises");return JSON.parse(await i.readFile(cd,"utf-8"))}catch{return null}}async function Ua(i){let o=await import("fs/promises");await o.mkdir(pd,{recursive:!0}),await o.writeFile(cd,JSON.stringify(i,null,2)+`
10
- `,{mode:384})}async function Ea(){let i=ld?await Xa():await Va(),o;try{let n=await import("fs/promises"),e=JSON.parse(await n.readFile(Ge,"utf-8"));if(e.oauthAccount&&typeof e.oauthAccount==="object")o=e.oauthAccount}catch{}return{credentials:i??void 0,oauthAccount:o}}async function _a(i){if(i.credentials)if(ld)await Fa(i.credentials);else await Ua(i.credentials);if(i.oauthAccount){let o=await import("fs/promises"),n={};try{n=JSON.parse(await o.readFile(Ge,"utf-8"))}catch{}n.oauthAccount=i.oauthAccount,await o.writeFile(Ge,JSON.stringify(n,null,2)+`
11
- `)}}var ad="Claude Code-credentials",pd,cd,Ge,ld;var vn=G(()=>{pd=Me(td(),".claude"),cd=Me(pd,".credentials.json"),Ge=Me(td(),".claude.json"),ld=Ta()==="darwin"});var md={};ai(md,{updateProvider:()=>Ci,setDefaultProvider:()=>qe,setClientProvider:()=>Qe,resolveXiaomiBaseUrl:()=>$e,resolveProviderContext:()=>O,migrateIfNeeded:()=>Pe,mergeDetectedProviders:()=>Bo,isProviderCompatible:()=>Bi,getProvidersForClient:()=>Si,getProviders:()=>Z,getProvider:()=>Da,getModelChoices:()=>Jo,getDefaultSupportedClients:()=>_,getDefaultProvider:()=>D,getDefaultModel:()=>Po,getDefaultBaseUrl:()=>fe,getClientProvider:()=>qi,fixupProviders:()=>Je,detectProviders:()=>Ko,deleteProvider:()=>Se,addProvider:()=>ji,XIAOMI_TOKEN_PLAN_URL:()=>nd,XIAOMI_ANTHROPIC_URL:()=>ze,PROVIDER_TYPE_NAMES:()=>Ei,DEEPSEEK_ANTHROPIC_URL:()=>ke});async function Z(){return(await N()).providers??[]}async function Da(i){return(await Z()).find((n)=>n.id===i)}async function D(){let i=await N(),o=i.providers??[];if(o.length===0)return;if(i.defaultProviderId){let n=o.find((e)=>e.id===i.defaultProviderId);if(n)return n}return o[0]}async function Si(i){return(await Z()).filter((e)=>Bi(e,i)).sort((e,d)=>{let u=e.lastUsedAt?new Date(e.lastUsedAt).getTime():0,t=d.lastUsedAt?new Date(d.lastUsedAt).getTime():0;if(u!==t)return t-u;return new Date(d.createdAt).getTime()-new Date(e.createdAt).getTime()})}async function ji(i){let o=await N(),n={...i,id:crypto.randomUUID(),createdAt:new Date().toISOString()};if(o.providers=[...o.providers??[],n],!o.defaultProviderId)o.defaultProviderId=n.id;return await Y(o),n}async function Ci(i,o){let n=await N(),e=n.providers??[],d=e.findIndex((u)=>u.id===i);if(d===-1)return;e[d]={...e[d],...o},n.providers=e,await Y(n)}async function Se(i){let o=await N();if((o.providers??[]).find((e)=>e.id===i)?.builtin)return;if(o.providers=(o.providers??[]).filter((e)=>e.id!==i),o.defaultProviderId===i)o.defaultProviderId=o.providers[0]?.id;if(o.clientProviderMap){for(let[e,d]of Object.entries(o.clientProviderMap))if(d===i)delete o.clientProviderMap[e]}await Y(o)}async function qe(i){let o=await N();if(!(o.providers??[]).some((e)=>e.id===i))return;o.defaultProviderId=i,await Y(o)}async function qi(i){let o=await N(),n=o.clientProviderMap?.[i];if(n){let e=(o.providers??[]).find((d)=>d.id===n);if(e&&Bi(e,i))return e}return}async function Qe(i,o){let n=await N();n.clientProviderMap={...n.clientProviderMap,[i]:o};let e=n.providers??[],d=e.findIndex((u)=>u.id===o);if(d!==-1)e[d]={...e[d],lastUsedAt:new Date().toISOString()},n.providers=e;await Y(n)}function O(i){return{type:i.type,apiKey:i.apiKey,baseUrl:i.baseUrl,authData:i.authData,model:i.model,modelContextWindow:i.modelContextWindow}}async function ja(){try{let i=Bun.spawn(["claude","auth","status"],{stdout:"pipe",stderr:"pipe"}),o=await new Response(i.stdout).text();if(await i.exited!==0)return null;let e=JSON.parse(o.trim());if(!e.loggedIn||e.authMethod!=="claude.ai")return null;let d=e.subscriptionType||"pro",u=e.email||"",t=`Claude ${d.charAt(0).toUpperCase()+d.slice(1)}${u?` (${u})`:""}`,{readClaudeAuth:a}=await Promise.resolve().then(() => (vn(),yn)),r=await a(),p=r.credentials||r.oauthAccount?{credentials:r.credentials,oauthAccount:r.oauthAccount}:void 0;return{id:crypto.randomUUID(),name:t,type:"claude-subscription",supportedClients:_("claude-subscription"),createdAt:new Date().toISOString(),email:u,subscriptionType:d,authData:p}}catch{return null}}async function ir(){try{let{homedir:i}=await import("os"),{join:o}=await import("path"),n=await import("fs/promises"),e=o(i(),".codex","auth.json"),d=JSON.parse(await n.readFile(e,"utf-8"));if(d.auth_mode!=="chatgpt"||!d.tokens?.access_token)return null;let u="";try{u=JSON.parse(atob(d.tokens.id_token.split(".")[1])).email||""}catch{}return{auth:d,email:u}}catch{return null}}async function or(){let i=await ir();if(i){let{auth:o,email:n}=i;return{id:crypto.randomUUID(),name:n?`Codex Plus (${n})`:"Codex Subscription",type:"codex-subscription",email:n||void 0,supportedClients:_("codex-subscription"),authData:o,createdAt:new Date().toISOString()}}try{let o=Bun.spawn(["codex","login","status"],{stdout:"pipe",stderr:"pipe"}),n=await new Response(o.stdout).text();if(await o.exited!==0||!n.includes("Logged in")||n.includes("cr_"))return null;return{id:crypto.randomUUID(),name:"Codex Subscription",type:"codex-subscription",supportedClients:_("codex-subscription"),createdAt:new Date().toISOString()}}catch{return null}}async function Ko(){let i=[],[o,n]=await Promise.all([ja(),or()]);if(o)i.push(o);if(n)i.push(n);return i}async function Bo(i){let o=await N(),n=o.providers??[],e=new Set(n.map((u)=>`${u.type}:${u.email||""}`)),d=0;for(let u of i){let t=`${u.type}:${u.email||""}`;if(!e.has(t))n.push(u),e.add(t),d++;else if(u.authData){let a=n.find((r)=>r.type===u.type&&r.email===u.email);if(a)a.authData=u.authData}}if(d>0){if(o.providers=n,!o.defaultProviderId&&n.length>0)o.defaultProviderId=n[0].id;await Y(o)}return d}async function Pe(){let i=await N();if(!i.apiKey||i.providers&&i.providers.length>0)return!1;let o={id:crypto.randomUUID(),name:"Tako \u5B98\u65B9",type:"tako",apiKey:i.apiKey,baseUrl:H,apiId:i.apiId,supportedClients:_("tako"),createdAt:new Date().toISOString(),builtin:!0};return i.providers=[o],i.defaultProviderId=o.id,await Y(i),!0}async function Je(){let i=await N(),o=i.providers??[],n=!1;for(let e of o)if(e.type==="tako"&&!e.builtin)e.builtin=!0,n=!0;if(i.apiKey&&!o.some((e)=>e.type==="tako")){if(o.push({id:crypto.randomUUID(),name:"Tako \u5B98\u65B9",type:"tako",apiKey:i.apiKey,baseUrl:H,apiId:i.apiId,supportedClients:_("tako"),createdAt:new Date().toISOString(),builtin:!0}),!i.defaultProviderId)i.defaultProviderId=o[o.length-1].id;n=!0}if(n)i.providers=o,await Y(i)}var ui=G(()=>{P();Gi();Gi()});function kr(i){try{if(process.stdin.isTTY)process.stdin.setRawMode(i);process.stdin.pause()}catch{}}async function Ld(i,o){if(!process.stdin.isTTY||!process.stdout.isTTY)return o;return new Promise((n)=>{let e=Boolean(process.stdin.isRaw),d=()=>{process.stdin.off("data",u),kr(e)},u=(t)=>{let a=t.toString("utf8");if(a==="\x03"){d(),process.kill(process.pid,"SIGINT"),n(o);return}let r=i(a);if(r!==void 0)d(),n(r)};if(process.stdin.on("data",u),process.stdin.resume(),process.stdin.isTTY)process.stdin.setRawMode(!0)})}async function hd(i){let o=i.defaultValue??!0,n=o?"[Y/n]":"[y/N]";process.stdout.write(`
12
- ? ${i.message} ${n} `);let e=await Ld((d)=>{if(d==="\r"||d===`
13
- `)return o;if(d==="\x1B")return!1;if(d==="y"||d==="Y")return!0;if(d==="n"||d==="N")return!1;return},o);return process.stdout.write(e?`Yes
14
- `:`No
15
- `),e}async function Wd(i){let o=i.content.split(/\r?\n/).map((n)=>n.trimEnd());process.stdout.write(`
16
- === Announcement: ${i.title} ===
17
- `);for(let n of o)process.stdout.write(`${n}
18
- `);process.stdout.write(i.popup_once?`
19
- Press Enter, Esc, or q to close. This announcement is shown once.
9
+ {fields}`},confirmClean:{en:"Clean these settings? Tako will manage them automatically at launch",zh:"\u662F\u5426\u6E05\u7406\u8FD9\u4E9B\u914D\u7F6E\uFF1FTako \u542F\u52A8\u65F6\u4F1A\u81EA\u52A8\u6CE8\u5165\u6B63\u786E\u7684\u503C"},settingsCleaned:{en:"Settings cleaned, Tako will manage these configs automatically",zh:"\u5DF2\u6E05\u7406\u5B8C\u6210\uFF0CTako \u4F1A\u81EA\u52A8\u7BA1\u7406\u8FD9\u4E9B\u914D\u7F6E"},cleanSkipped:{en:"Skipped. Note: hardcoded settings may cause issues with Tako",zh:"\u5DF2\u8DF3\u8FC7\u3002\u6CE8\u610F\uFF1A\u5199\u6B7B\u7684\u914D\u7F6E\u53EF\u80FD\u5BFC\u81F4 Tako \u542F\u52A8\u5F02\u5E38"},usingIsolatedSettings:{en:"Using Tako-managed Claude Code settings for this launch: {path}",zh:"\u672C\u6B21\u542F\u52A8\u5C06\u4F7F\u7528 Tako \u6258\u7BA1\u7684 Claude Code settings\uFF1A{path}"},subscriptionMissingAuth:{en:"Selected Claude account has no captured credentials. Run `claude /login` for that account, then re-detect in Tako.",zh:"\u76EE\u6807 Claude \u8D26\u53F7\u7F3A\u5C11\u51ED\u636E\u3002\u8BF7\u7528 `claude /login` \u767B\u5F55\u8BE5\u8D26\u53F7\u540E\uFF0C\u8BA9 Tako \u91CD\u65B0\u68C0\u6D4B\u4E00\u6B21\u3002"},subscriptionSwitched:{en:"Switched Claude Code login to {email}",zh:"\u5DF2\u5207\u6362 Claude Code \u767B\u5F55\u8D26\u53F7\u4E3A {email}"},unknownCurrentAccount:{en:"Current Claude login ({email}) is not tracked by Tako; its tokens will be overwritten.",zh:"\u5F53\u524D Claude \u767B\u5F55\u8D26\u53F7 ({email}) \u672A\u88AB Tako \u8BB0\u5F55\uFF0C\u5207\u6362\u540E\u8BE5\u8D26\u53F7 token \u5C06\u88AB\u8986\u76D6\u3002"}},recentProjects:{title:{en:"Recent Projects",zh:"\u6700\u8FD1\u9879\u76EE"},launchInCurrent:{en:"Launch in current directory",zh:"\u5728\u5F53\u524D\u76EE\u5F55\u542F\u52A8"}},providers:{management:{en:"Manage Providers",zh:"\u7BA1\u7406\u670D\u52A1\u5546"},selectProvider:{en:"Select provider:",zh:"\u9009\u62E9\u670D\u52A1\u5546\uFF1A"},selectType:{en:"Provider type:",zh:"\u670D\u52A1\u5546\u7C7B\u578B\uFF1A"},enterName:{en:"Provider name:",zh:"\u670D\u52A1\u5546\u540D\u79F0\uFF1A"},enterApiKey:{en:"API Key:",zh:"API Key\uFF1A"},enterBaseUrl:{en:"Base URL:",zh:"\u57FA\u7840 URL\uFF1A"},add:{en:"Add Provider",zh:"\u6DFB\u52A0\u670D\u52A1\u5546"},edit:{en:"Edit Provider",zh:"\u7F16\u8F91\u670D\u52A1\u5546"},delete:{en:"Delete Provider",zh:"\u5220\u9664\u670D\u52A1\u5546"},setDefault:{en:"Set as Default",zh:"\u8BBE\u4E3A\u9ED8\u8BA4"},rescan:{en:"Re-scan Subscriptions",zh:"\u91CD\u65B0\u626B\u63CF\u8BA2\u9605"},back:{en:"Back",zh:"\u8FD4\u56DE"},added:{en:"Provider added",zh:"\u670D\u52A1\u5546\u5DF2\u6DFB\u52A0"},deleted:{en:"Provider deleted",zh:"\u670D\u52A1\u5546\u5DF2\u5220\u9664"},updated:{en:"Provider updated",zh:"\u670D\u52A1\u5546\u5DF2\u66F4\u65B0"},defaultSet:{en:"Default provider set",zh:"\u9ED8\u8BA4\u670D\u52A1\u5546\u5DF2\u8BBE\u7F6E"},noProviders:{en:"No providers configured",zh:"\u672A\u914D\u7F6E\u670D\u52A1\u5546"},noCompatible:{en:"No provider supports {client}",zh:"\u6CA1\u6709\u652F\u6301 {client} \u7684\u670D\u52A1\u5546"},defaultLabel:{en:"(default)",zh:"\uFF08\u9ED8\u8BA4\uFF09"},detected:{en:"Detected: {name}",zh:"\u68C0\u6D4B\u5230\uFF1A{name}"},confirmDelete:{en:"Delete {name}?",zh:"\u786E\u8BA4\u5220\u9664 {name}\uFF1F"},scanComplete:{en:"Scan complete, found {count} new provider(s)",zh:"\u626B\u63CF\u5B8C\u6210\uFF0C\u53D1\u73B0 {count} \u4E2A\u65B0\u670D\u52A1\u5546"}}}});var mw={};F0(mw,{writeClaudeAuth:()=>nz,readClaudeAuth:()=>oz});import{homedir as qL,platform as xz,userInfo as pz}from"os";import{join as _N}from"path";function zL(){return[process.env.USER||(()=>{try{return pz().username}catch{return""}})(),"root"].filter(Boolean)}async function iz(B){let I=Bun.spawn(["security","find-generic-password","-s",kL,"-a",B,"-w"],{stdout:"pipe",stderr:"pipe"}),C=await new Response(I.stdout).text();if(await I.exited!==0)return null;try{return JSON.parse(C.trim())}catch{return null}}async function dz(){for(let B of zL()){let I=await iz(B);if(I)return I}return null}async function cz(B){let I=JSON.stringify(B),C=zL()[0],g=Bun.spawn(["security","add-generic-password","-U","-s",kL,"-a",C,"-w",I],{stdout:"pipe",stderr:"pipe"}),F=await g.exited;if(F!==0){let N=await new Response(g.stderr).text();throw Error(`security add-generic-password failed (${F}): ${N.trim()}`)}}async function lz(){try{let B=await import("fs/promises");return JSON.parse(await B.readFile(SL,"utf-8"))}catch{return null}}async function az(B){let I=await import("fs/promises");await I.mkdir(OL,{recursive:!0}),await I.writeFile(SL,JSON.stringify(B,null,2)+`
10
+ `,{mode:384})}async function oz(){let B=$L?await dz():await lz(),I;try{let C=await import("fs/promises"),g=JSON.parse(await C.readFile(vN,"utf-8"));if(g.oauthAccount&&typeof g.oauthAccount==="object")I=g.oauthAccount}catch{}return{credentials:B??void 0,oauthAccount:I}}async function nz(B){if(B.credentials)if($L)await cz(B.credentials);else await az(B.credentials);if(B.oauthAccount){let I=await import("fs/promises"),C={};try{C=JSON.parse(await I.readFile(vN,"utf-8"))}catch{}C.oauthAccount=B.oauthAccount,await I.writeFile(vN,JSON.stringify(C,null,2)+`
11
+ `)}}var kL="Claude Code-credentials",OL,SL,vN,$L;var hw=c(()=>{OL=_N(qL(),".claude"),SL=_N(OL,".credentials.json"),vN=_N(qL(),".claude.json"),$L=xz()==="darwin"});var yL={};F0(yL,{updateProvider:()=>dg,setDefaultProvider:()=>PN,setClientProvider:()=>lF,resolveXiaomiBaseUrl:()=>$N,resolveProviderContext:()=>SI,migrateIfNeeded:()=>mN,mergeDetectedProviders:()=>oF,isProviderCompatible:()=>D2,getProvidersForClient:()=>AC,getProviders:()=>OI,getProvider:()=>rz,getModelChoices:()=>dF,getDefaultSupportedClients:()=>dI,getDefaultProvider:()=>cI,getDefaultModel:()=>g2,getDefaultBaseUrl:()=>zN,getClientProvider:()=>BC,fixupProviders:()=>hN,detectProviders:()=>aF,deleteProvider:()=>VN,addProvider:()=>ig,XIAOMI_TOKEN_PLAN_URL:()=>WL,XIAOMI_ANTHROPIC_URL:()=>SN,PROVIDER_TYPE_NAMES:()=>w0,DEEPSEEK_ANTHROPIC_URL:()=>ON});async function OI(){return(await AB()).providers??[]}async function rz(B){return(await OI()).find((C)=>C.id===B)}async function cI(){let B=await AB(),I=B.providers??[];if(I.length===0)return;if(B.defaultProviderId){let C=I.find((g)=>g.id===B.defaultProviderId);if(C)return C}return I[0]}async function AC(B){return(await OI()).filter((g)=>D2(g,B)).sort((g,F)=>{let N=g.lastUsedAt?new Date(g.lastUsedAt).getTime():0,H=F.lastUsedAt?new Date(F.lastUsedAt).getTime():0;if(N!==H)return H-N;return new Date(F.createdAt).getTime()-new Date(g.createdAt).getTime()})}async function ig(B){let I=await AB(),C={...B,id:crypto.randomUUID(),createdAt:new Date().toISOString()};if(I.providers=[...I.providers??[],C],!I.defaultProviderId)I.defaultProviderId=C.id;return await KI(I),C}async function dg(B,I){let C=await AB(),g=C.providers??[],F=g.findIndex((N)=>N.id===B);if(F===-1)return;g[F]={...g[F],...I},C.providers=g,await KI(C)}async function VN(B){let I=await AB();if((I.providers??[]).find((g)=>g.id===B)?.builtin)return;if(I.providers=(I.providers??[]).filter((g)=>g.id!==B),I.defaultProviderId===B)I.defaultProviderId=I.providers[0]?.id;if(I.clientProviderMap){for(let[g,F]of Object.entries(I.clientProviderMap))if(F===B)delete I.clientProviderMap[g]}await KI(I)}async function PN(B){let I=await AB();if(!(I.providers??[]).some((g)=>g.id===B))return;I.defaultProviderId=B,await KI(I)}async function BC(B){let I=await AB(),C=I.clientProviderMap?.[B];if(C){let g=(I.providers??[]).find((F)=>F.id===C);if(g&&D2(g,B))return g}return}async function lF(B,I){let C=await AB();C.clientProviderMap={...C.clientProviderMap,[B]:I};let g=C.providers??[],F=g.findIndex((N)=>N.id===I);if(F!==-1)g[F]={...g[F],lastUsedAt:new Date().toISOString()},C.providers=g;await KI(C)}function SI(B){return{type:B.type,apiKey:B.apiKey,baseUrl:B.baseUrl,authData:B.authData,model:B.model,modelContextWindow:B.modelContextWindow}}async function sz(){try{let B=Bun.spawn(["claude","auth","status"],{stdout:"pipe",stderr:"pipe"}),I=await new Response(B.stdout).text();if(await B.exited!==0)return null;let g=JSON.parse(I.trim());if(!g.loggedIn||g.authMethod!=="claude.ai")return null;let F=g.subscriptionType||"pro",N=g.email||"",H=`Claude ${F.charAt(0).toUpperCase()+F.slice(1)}${N?` (${N})`:""}`,{readClaudeAuth:M}=await Promise.resolve().then(() => (hw(),mw)),U=await M(),u=U.credentials||U.oauthAccount?{credentials:U.credentials,oauthAccount:U.oauthAccount}:void 0;return{id:crypto.randomUUID(),name:H,type:"claude-subscription",supportedClients:dI("claude-subscription"),createdAt:new Date().toISOString(),email:N,subscriptionType:F,authData:u}}catch{return null}}async function tz(){try{let{homedir:B}=await import("os"),{join:I}=await import("path"),C=await import("fs/promises"),g=I(B(),".codex","auth.json"),F=JSON.parse(await C.readFile(g,"utf-8"));if(F.auth_mode!=="chatgpt"||!F.tokens?.access_token)return null;let N="";try{N=JSON.parse(atob(F.tokens.id_token.split(".")[1])).email||""}catch{}return{auth:F,email:N}}catch{return null}}async function ez(){let B=await tz();if(B){let{auth:I,email:C}=B;return{id:crypto.randomUUID(),name:C?`Codex Plus (${C})`:"Codex Subscription",type:"codex-subscription",email:C||void 0,supportedClients:dI("codex-subscription"),authData:I,createdAt:new Date().toISOString()}}try{let I=Bun.spawn(["codex","login","status"],{stdout:"pipe",stderr:"pipe"}),C=await new Response(I.stdout).text();if(await I.exited!==0||!C.includes("Logged in")||C.includes("cr_"))return null;return{id:crypto.randomUUID(),name:"Codex Subscription",type:"codex-subscription",supportedClients:dI("codex-subscription"),createdAt:new Date().toISOString()}}catch{return null}}async function aF(){let B=[],[I,C]=await Promise.all([sz(),ez()]);if(I)B.push(I);if(C)B.push(C);return B}async function oF(B){let I=await AB(),C=I.providers??[],g=new Set(C.map((N)=>`${N.type}:${N.email||""}`)),F=0;for(let N of B){let H=`${N.type}:${N.email||""}`;if(!g.has(H))C.push(N),g.add(H),F++;else if(N.authData){let M=C.find((U)=>U.type===N.type&&U.email===N.email);if(M)M.authData=N.authData}}if(F>0){if(I.providers=C,!I.defaultProviderId&&C.length>0)I.defaultProviderId=C[0].id;await KI(I)}return F}async function mN(){let B=await AB();if(!B.apiKey||B.providers&&B.providers.length>0)return!1;let I={id:crypto.randomUUID(),name:"Tako \u5B98\u65B9",type:"tako",apiKey:B.apiKey,baseUrl:rQ,apiId:B.apiId,supportedClients:dI("tako"),createdAt:new Date().toISOString(),builtin:!0};return B.providers=[I],B.defaultProviderId=I.id,await KI(B),!0}async function hN(){let B=await AB(),I=B.providers??[],C=!1;for(let g of I)if(g.type==="tako"&&!g.builtin)g.builtin=!0,C=!0;if(B.apiKey&&!I.some((g)=>g.type==="tako")){if(I.push({id:crypto.randomUUID(),name:"Tako \u5B98\u65B9",type:"tako",apiKey:B.apiKey,baseUrl:rQ,apiId:B.apiId,supportedClients:dI("tako"),createdAt:new Date().toISOString(),builtin:!0}),!B.defaultProviderId)B.defaultProviderId=I[I.length-1].id;C=!0}if(C)B.providers=I,await KI(B)}var _0=c(()=>{sB();cC();cC()});var FB=pI((ZO,bw)=>{(function(){function B(K,P){Object.defineProperty(g.prototype,K,{get:function(){console.warn("%s(...) is deprecated in plain JavaScript React classes. %s",P[0],P[1])}})}function I(K){if(K===null||typeof K!=="object")return null;return K=CA&&K[CA]||K["@@iterator"],typeof K==="function"?K:null}function C(K,P){K=(K=K.constructor)&&(K.displayName||K.name)||"ReactClass";var AA=K+"."+P;e[AA]||(console.error("Can't call %s on a component that is not yet mounted. This is a no-op, but it might indicate a bug in your application. Instead, assign to `this.state` directly or define a `state = {};` class property with the desired state in the %s component.",P,K),e[AA]=!0)}function g(K,P,AA){this.props=K,this.context=P,this.refs=VA,this.updater=AA||UA}function F(){}function N(K,P,AA){this.props=K,this.context=P,this.refs=VA,this.updater=AA||UA}function H(){}function M(K){return""+K}function U(K){try{M(K);var P=!1}catch(yA){P=!0}if(P){P=console;var AA=P.error,LA=typeof Symbol==="function"&&Symbol.toStringTag&&K[Symbol.toStringTag]||K.constructor.name||"Object";return AA.call(P,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",LA),M(K)}}function u(K){if(K==null)return null;if(typeof K==="function")return K.$$typeof===VB?null:K.displayName||K.name||null;if(typeof K==="string")return K;switch(K){case kA:return"Fragment";case NA:return"Profiler";case f:return"StrictMode";case GB:return"Suspense";case bA:return"SuspenseList";case EA:return"Activity"}if(typeof K==="object")switch(typeof K.tag==="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),K.$$typeof){case rA:return"Portal";case WA:return K.displayName||"Context";case DA:return(K._context.displayName||"Context")+".Consumer";case hA:var P=K.render;return K=K.displayName,K||(K=P.displayName||P.name||"",K=K!==""?"ForwardRef("+K+")":"ForwardRef"),K;case hB:return P=K.displayName||null,P!==null?P:u(K.type)||"Memo";case TB:P=K._payload,K=K._init;try{return u(K(P))}catch(AA){}}return null}function X(K){if(K===kA)return"<>";if(typeof K==="object"&&K!==null&&K.$$typeof===TB)return"<...>";try{var P=u(K);return P?"<"+P+">":"<...>"}catch(AA){return"<...>"}}function k(){var K=PA.A;return K===null?null:K.getOwner()}function W(){return Error("react-stack-top-frame")}function z(K){if(bQ.call(K,"key")){var P=Object.getOwnPropertyDescriptor(K,"key").get;if(P&&P.isReactWarning)return!1}return K.key!==void 0}function $(K,P){function AA(){SQ||(SQ=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",P))}AA.isReactWarning=!0,Object.defineProperty(K,"key",{get:AA,configurable:!0})}function O(){var K=u(this.type);return vI[K]||(vI[K]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),K=this.props.ref,K!==void 0?K:null}function v(K,P,AA,LA,yA,QB){var iA=AA.ref;return K={$$typeof:OA,type:K,key:P,props:AA,_owner:LA},(iA!==void 0?iA:null)!==null?Object.defineProperty(K,"ref",{enumerable:!1,get:O}):Object.defineProperty(K,"ref",{enumerable:!1,value:null}),K._store={},Object.defineProperty(K._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(K,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(K,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:yA}),Object.defineProperty(K,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:QB}),Object.freeze&&(Object.freeze(K.props),Object.freeze(K)),K}function d(K,P){return P=v(K.type,P,K.props,K._owner,K._debugStack,K._debugTask),K._store&&(P._store.validated=K._store.validated),P}function l(K){r(K)?K._store&&(K._store.validated=1):typeof K==="object"&&K!==null&&K.$$typeof===TB&&(K._payload.status==="fulfilled"?r(K._payload.value)&&K._payload.value._store&&(K._payload.value._store.validated=1):K._store&&(K._store.validated=1))}function r(K){return typeof K==="object"&&K!==null&&K.$$typeof===OA}function FA(K){var P={"=":"=0",":":"=2"};return"$"+K.replace(/[=:]/g,function(AA){return P[AA]})}function MA(K,P){return typeof K==="object"&&K!==null&&K.key!=null?(U(K.key),FA(""+K.key)):P.toString(36)}function wA(K){switch(K.status){case"fulfilled":return K.value;case"rejected":throw K.reason;default:switch(typeof K.status==="string"?K.then(H,H):(K.status="pending",K.then(function(P){K.status==="pending"&&(K.status="fulfilled",K.value=P)},function(P){K.status==="pending"&&(K.status="rejected",K.reason=P)})),K.status){case"fulfilled":return K.value;case"rejected":throw K.reason}}throw K}function ZA(K,P,AA,LA,yA){var QB=typeof K;if(QB==="undefined"||QB==="boolean")K=null;var iA=!1;if(K===null)iA=!0;else switch(QB){case"bigint":case"string":case"number":iA=!0;break;case"object":switch(K.$$typeof){case OA:case rA:iA=!0;break;case TB:return iA=K._init,ZA(iA(K._payload),P,AA,LA,yA)}}if(iA){iA=K,yA=yA(iA);var ZB=LA===""?"."+MA(iA,0):LA;return bB(yA)?(AA="",ZB!=null&&(AA=ZB.replace(Bg,"$&/")+"/"),ZA(yA,P,AA,"",function($Q){return $Q})):yA!=null&&(r(yA)&&(yA.key!=null&&(iA&&iA.key===yA.key||U(yA.key)),AA=d(yA,AA+(yA.key==null||iA&&iA.key===yA.key?"":(""+yA.key).replace(Bg,"$&/")+"/")+ZB),LA!==""&&iA!=null&&r(iA)&&iA.key==null&&iA._store&&!iA._store.validated&&(AA._store.validated=2),yA=AA),P.push(yA)),1}if(iA=0,ZB=LA===""?".":LA+":",bB(K))for(var CB=0;CB<K.length;CB++)LA=K[CB],QB=ZB+MA(LA,CB),iA+=ZA(LA,P,AA,QB,yA);else if(CB=I(K),typeof CB==="function")for(CB===K.entries&&(kE||console.warn("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),kE=!0),K=CB.call(K),CB=0;!(LA=K.next()).done;)LA=LA.value,QB=ZB+MA(LA,CB++),iA+=ZA(LA,P,AA,QB,yA);else if(QB==="object"){if(typeof K.then==="function")return ZA(wA(K),P,AA,LA,yA);throw P=String(K),Error("Objects are not valid as a React child (found: "+(P==="[object Object]"?"object with keys {"+Object.keys(K).join(", ")+"}":P)+"). If you meant to render a collection of children, use an array instead.")}return iA}function GA(K,P,AA){if(K==null)return K;var LA=[],yA=0;return ZA(K,LA,"","",function(QB){return P.call(AA,QB,yA++)}),LA}function s(K){if(K._status===-1){var P=K._ioInfo;P!=null&&(P.start=P.end=performance.now()),P=K._result;var AA=P();if(AA.then(function(yA){if(K._status===0||K._status===-1){K._status=1,K._result=yA;var QB=K._ioInfo;QB!=null&&(QB.end=performance.now()),AA.status===void 0&&(AA.status="fulfilled",AA.value=yA)}},function(yA){if(K._status===0||K._status===-1){K._status=2,K._result=yA;var QB=K._ioInfo;QB!=null&&(QB.end=performance.now()),AA.status===void 0&&(AA.status="rejected",AA.reason=yA)}}),P=K._ioInfo,P!=null){P.value=AA;var LA=AA.displayName;typeof LA==="string"&&(P.name=LA)}K._status===-1&&(K._status=0,K._result=AA)}if(K._status===1)return P=K._result,P===void 0&&console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
12
+
13
+ Your code should look like:
14
+ const MyComponent = lazy(() => import('./MyComponent'))
15
+
16
+ Did you accidentally put curly braces around the import?`,P),"default"in P||console.error(`lazy: Expected the result of a dynamic import() call. Instead received: %s
17
+
18
+ Your code should look like:
19
+ const MyComponent = lazy(() => import('./MyComponent'))`,P),P.default;throw K._result}function XA(){var K=PA.H;return K===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
20
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
21
+ 2. You might be breaking the Rules of Hooks
22
+ 3. You might have more than one copy of React in the same app
23
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),K}function qA(){PA.asyncTransitions--}function JA(K){if(u0===null)try{var P=("require"+Math.random()).slice(0,7);u0=(bw&&bw[P]).call(bw,"timers").setImmediate}catch(AA){u0=function(LA){NC===!1&&(NC=!0,typeof MessageChannel>"u"&&console.error("This browser does not have a MessageChannel implementation, so enqueuing tasks via await act(async () => ...) will fail. Please file an issue at https://github.com/facebook/react/issues if you encounter this warning."));var yA=new MessageChannel;yA.port1.onmessage=LA,yA.port2.postMessage(void 0)}}return u0(K)}function KA(K){return 1<K.length&&typeof AggregateError==="function"?AggregateError(K):K[0]}function BB(K,P){P!==K0-1&&console.error("You seem to have overlapping act() calls, this is not supported. Be sure to await previous act() calls before making a new one. "),K0=P}function IA(K,P,AA){var LA=PA.actQueue;if(LA!==null)if(LA.length!==0)try{_A(LA),JA(function(){return IA(K,P,AA)});return}catch(yA){PA.thrownErrors.push(yA)}else PA.actQueue=null;0<PA.thrownErrors.length?(LA=KA(PA.thrownErrors),PA.thrownErrors.length=0,AA(LA)):P(K)}function _A(K){if(!wQ){wQ=!0;var P=0;try{for(;P<K.length;P++){var AA=K[P];do{PA.didUsePromise=!1;var LA=AA(!1);if(LA!==null){if(PA.didUsePromise){K[P]=AA,K.splice(0,P);return}AA=LA}else break}while(1)}K.length=0}catch(yA){K.splice(0,P+1),PA.thrownErrors.push(yA)}finally{wQ=!1}}}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var OA=Symbol.for("react.transitional.element"),rA=Symbol.for("react.portal"),kA=Symbol.for("react.fragment"),f=Symbol.for("react.strict_mode"),NA=Symbol.for("react.profiler"),DA=Symbol.for("react.consumer"),WA=Symbol.for("react.context"),hA=Symbol.for("react.forward_ref"),GB=Symbol.for("react.suspense"),bA=Symbol.for("react.suspense_list"),hB=Symbol.for("react.memo"),TB=Symbol.for("react.lazy"),EA=Symbol.for("react.activity"),CA=Symbol.iterator,e={},UA={isMounted:function(){return!1},enqueueForceUpdate:function(K){C(K,"forceUpdate")},enqueueReplaceState:function(K){C(K,"replaceState")},enqueueSetState:function(K){C(K,"setState")}},lA=Object.assign,VA={};Object.freeze(VA),g.prototype.isReactComponent={},g.prototype.setState=function(K,P){if(typeof K!=="object"&&typeof K!=="function"&&K!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,K,P,"setState")},g.prototype.forceUpdate=function(K){this.updater.enqueueForceUpdate(this,K,"forceUpdate")};var MB={isMounted:["isMounted","Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks."],replaceState:["replaceState","Refactor your code to use setState instead (see https://github.com/facebook/react/issues/3236)."]};for(_I in MB)MB.hasOwnProperty(_I)&&B(_I,MB[_I]);F.prototype=g.prototype,MB=N.prototype=new F,MB.constructor=N,lA(MB,g.prototype),MB.isPureReactComponent=!0;var bB=Array.isArray,VB=Symbol.for("react.client.reference"),PA={H:null,A:null,T:null,S:null,actQueue:null,asyncTransitions:0,isBatchingLegacy:!1,didScheduleLegacyUpdate:!1,didUsePromise:!1,thrownErrors:[],getCurrentStack:null,recentlyCreatedOwnerStacks:0},bQ=Object.prototype.hasOwnProperty,OQ=console.createTask?console.createTask:function(){return null};MB={react_stack_bottom_frame:function(K){return K()}};var SQ,L0,vI={},GC=MB.react_stack_bottom_frame.bind(MB,W)(),ND=OQ(X(W)),kE=!1,Bg=/\/+/g,Qg=typeof reportError==="function"?reportError:function(K){if(typeof window==="object"&&typeof window.ErrorEvent==="function"){var P=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof K==="object"&&K!==null&&typeof K.message==="string"?String(K.message):String(K),error:K});if(!window.dispatchEvent(P))return}else if(typeof process==="object"&&typeof process.emit==="function"){process.emit("uncaughtException",K);return}console.error(K)},NC=!1,u0=null,K0=0,FI=!1,wQ=!1,p0=typeof queueMicrotask==="function"?function(K){queueMicrotask(function(){return queueMicrotask(K)})}:JA;MB=Object.freeze({__proto__:null,c:function(K){return XA().useMemoCache(K)}});var _I={map:GA,forEach:function(K,P,AA){GA(K,function(){P.apply(this,arguments)},AA)},count:function(K){var P=0;return GA(K,function(){P++}),P},toArray:function(K){return GA(K,function(P){return P})||[]},only:function(K){if(!r(K))throw Error("React.Children.only expected to receive a single React element child.");return K}};ZO.Activity=EA,ZO.Children=_I,ZO.Component=g,ZO.Fragment=kA,ZO.Profiler=NA,ZO.PureComponent=N,ZO.StrictMode=f,ZO.Suspense=GB,ZO.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=PA,ZO.__COMPILER_RUNTIME=MB,ZO.act=function(K){var P=PA.actQueue,AA=K0;K0++;var LA=PA.actQueue=P!==null?P:[],yA=!1;try{var QB=K()}catch(CB){PA.thrownErrors.push(CB)}if(0<PA.thrownErrors.length)throw BB(P,AA),K=KA(PA.thrownErrors),PA.thrownErrors.length=0,K;if(QB!==null&&typeof QB==="object"&&typeof QB.then==="function"){var iA=QB;return p0(function(){yA||FI||(FI=!0,console.error("You called act(async () => ...) without await. This could lead to unexpected testing behaviour, interleaving multiple act calls and mixing their scopes. You should - await act(async () => ...);"))}),{then:function(CB,$Q){yA=!0,iA.then(function(yQ){if(BB(P,AA),AA===0){try{_A(LA),JA(function(){return IA(yQ,CB,$Q)})}catch(i0){PA.thrownErrors.push(i0)}if(0<PA.thrownErrors.length){var HC=KA(PA.thrownErrors);PA.thrownErrors.length=0,$Q(HC)}}else CB(yQ)},function(yQ){BB(P,AA),0<PA.thrownErrors.length?(yQ=KA(PA.thrownErrors),PA.thrownErrors.length=0,$Q(yQ)):$Q(yQ)})}}}var ZB=QB;if(BB(P,AA),AA===0&&(_A(LA),LA.length!==0&&p0(function(){yA||FI||(FI=!0,console.error("A component suspended inside an `act` scope, but the `act` call was not awaited. When testing React components that depend on asynchronous data, you must await the result:\n\nawait act(() => ...)"))}),PA.actQueue=null),0<PA.thrownErrors.length)throw K=KA(PA.thrownErrors),PA.thrownErrors.length=0,K;return{then:function(CB,$Q){yA=!0,AA===0?(PA.actQueue=LA,JA(function(){return IA(ZB,CB,$Q)})):CB(ZB)}}},ZO.cache=function(K){return function(){return K.apply(null,arguments)}},ZO.cacheSignal=function(){return null},ZO.captureOwnerStack=function(){var K=PA.getCurrentStack;return K===null?null:K()},ZO.cloneElement=function(K,P,AA){if(K===null||K===void 0)throw Error("The argument must be a React element, but you passed "+K+".");var LA=lA({},K.props),yA=K.key,QB=K._owner;if(P!=null){var iA;A:{if(bQ.call(P,"ref")&&(iA=Object.getOwnPropertyDescriptor(P,"ref").get)&&iA.isReactWarning){iA=!1;break A}iA=P.ref!==void 0}iA&&(QB=k()),z(P)&&(U(P.key),yA=""+P.key);for(ZB in P)!bQ.call(P,ZB)||ZB==="key"||ZB==="__self"||ZB==="__source"||ZB==="ref"&&P.ref===void 0||(LA[ZB]=P[ZB])}var ZB=arguments.length-2;if(ZB===1)LA.children=AA;else if(1<ZB){iA=Array(ZB);for(var CB=0;CB<ZB;CB++)iA[CB]=arguments[CB+2];LA.children=iA}LA=v(K.type,yA,LA,QB,K._debugStack,K._debugTask);for(yA=2;yA<arguments.length;yA++)l(arguments[yA]);return LA},ZO.createContext=function(K){return K={$$typeof:WA,_currentValue:K,_currentValue2:K,_threadCount:0,Provider:null,Consumer:null},K.Provider=K,K.Consumer={$$typeof:DA,_context:K},K._currentRenderer=null,K._currentRenderer2=null,K},ZO.createElement=function(K,P,AA){for(var LA=2;LA<arguments.length;LA++)l(arguments[LA]);LA={};var yA=null;if(P!=null)for(CB in L0||!("__self"in P)||"key"in P||(L0=!0,console.warn("Your app (or one of its dependencies) is using an outdated JSX transform. Update to the modern JSX transform for faster performance: https://react.dev/link/new-jsx-transform")),z(P)&&(U(P.key),yA=""+P.key),P)bQ.call(P,CB)&&CB!=="key"&&CB!=="__self"&&CB!=="__source"&&(LA[CB]=P[CB]);var QB=arguments.length-2;if(QB===1)LA.children=AA;else if(1<QB){for(var iA=Array(QB),ZB=0;ZB<QB;ZB++)iA[ZB]=arguments[ZB+2];Object.freeze&&Object.freeze(iA),LA.children=iA}if(K&&K.defaultProps)for(CB in QB=K.defaultProps,QB)LA[CB]===void 0&&(LA[CB]=QB[CB]);yA&&$(LA,typeof K==="function"?K.displayName||K.name||"Unknown":K);var CB=1e4>PA.recentlyCreatedOwnerStacks++;return v(K,yA,LA,k(),CB?Error("react-stack-top-frame"):GC,CB?OQ(X(K)):ND)},ZO.createRef=function(){var K={current:null};return Object.seal(K),K},ZO.forwardRef=function(K){K!=null&&K.$$typeof===hB?console.error("forwardRef requires a render function but received a `memo` component. Instead of forwardRef(memo(...)), use memo(forwardRef(...))."):typeof K!=="function"?console.error("forwardRef requires a render function but was given %s.",K===null?"null":typeof K):K.length!==0&&K.length!==2&&console.error("forwardRef render functions accept exactly two parameters: props and ref. %s",K.length===1?"Did you forget to use the ref parameter?":"Any additional parameter will be undefined."),K!=null&&K.defaultProps!=null&&console.error("forwardRef render functions do not support defaultProps. Did you accidentally pass a React component?");var P={$$typeof:hA,render:K},AA;return Object.defineProperty(P,"displayName",{enumerable:!1,configurable:!0,get:function(){return AA},set:function(LA){AA=LA,K.name||K.displayName||(Object.defineProperty(K,"name",{value:LA}),K.displayName=LA)}}),P},ZO.isValidElement=r,ZO.lazy=function(K){K={_status:-1,_result:K};var P={$$typeof:TB,_payload:K,_init:s},AA={name:"lazy",start:-1,end:-1,value:null,owner:null,debugStack:Error("react-stack-top-frame"),debugTask:console.createTask?console.createTask("lazy()"):null};return K._ioInfo=AA,P._debugInfo=[{awaited:AA}],P},ZO.memo=function(K,P){K==null&&console.error("memo: The first argument must be a component. Instead received: %s",K===null?"null":typeof K),P={$$typeof:hB,type:K,compare:P===void 0?null:P};var AA;return Object.defineProperty(P,"displayName",{enumerable:!1,configurable:!0,get:function(){return AA},set:function(LA){AA=LA,K.name||K.displayName||(Object.defineProperty(K,"name",{value:LA}),K.displayName=LA)}}),P},ZO.startTransition=function(K){var P=PA.T,AA={};AA._updatedFibers=new Set,PA.T=AA;try{var LA=K(),yA=PA.S;yA!==null&&yA(AA,LA),typeof LA==="object"&&LA!==null&&typeof LA.then==="function"&&(PA.asyncTransitions++,LA.then(qA,qA),LA.then(H,Qg))}catch(QB){Qg(QB)}finally{P===null&&AA._updatedFibers&&(K=AA._updatedFibers.size,AA._updatedFibers.clear(),10<K&&console.warn("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table.")),P!==null&&AA.types!==null&&(P.types!==null&&P.types!==AA.types&&console.error("We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."),P.types=AA.types),PA.T=P}},ZO.unstable_useCacheRefresh=function(){return XA().useCacheRefresh()},ZO.use=function(K){return XA().use(K)},ZO.useActionState=function(K,P,AA){return XA().useActionState(K,P,AA)},ZO.useCallback=function(K,P){return XA().useCallback(K,P)},ZO.useContext=function(K){var P=XA();return K.$$typeof===DA&&console.error("Calling useContext(Context.Consumer) is not supported and will cause bugs. Did you mean to call useContext(Context) instead?"),P.useContext(K)},ZO.useDebugValue=function(K,P){return XA().useDebugValue(K,P)},ZO.useDeferredValue=function(K,P){return XA().useDeferredValue(K,P)},ZO.useEffect=function(K,P){return K==null&&console.warn("React Hook useEffect requires an effect callback. Did you forget to pass a callback to the hook?"),XA().useEffect(K,P)},ZO.useEffectEvent=function(K){return XA().useEffectEvent(K)},ZO.useId=function(){return XA().useId()},ZO.useImperativeHandle=function(K,P,AA){return XA().useImperativeHandle(K,P,AA)},ZO.useInsertionEffect=function(K,P){return K==null&&console.warn("React Hook useInsertionEffect requires an effect callback. Did you forget to pass a callback to the hook?"),XA().useInsertionEffect(K,P)},ZO.useLayoutEffect=function(K,P){return K==null&&console.warn("React Hook useLayoutEffect requires an effect callback. Did you forget to pass a callback to the hook?"),XA().useLayoutEffect(K,P)},ZO.useMemo=function(K,P){return XA().useMemo(K,P)},ZO.useOptimistic=function(K,P){return XA().useOptimistic(K,P)},ZO.useReducer=function(K,P,AA){return XA().useReducer(K,P,AA)},ZO.useRef=function(K){return XA().useRef(K)},ZO.useState=function(K){return XA().useState(K)},ZO.useSyncExternalStore=function(K,P,AA){return XA().useSyncExternalStore(K,P,AA)},ZO.useTransition=function(){return XA().useTransition()},ZO.version="19.2.7",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});function mL(B,I,{signal:C,edges:g}={}){let F=void 0,N=null,H=g!=null&&g.includes("leading"),M=g==null||g.includes("trailing"),U=()=>{if(N!==null)B.apply(F,N),F=void 0,N=null},u=()=>{if(M)U();z()},X=null,k=()=>{if(X!=null)clearTimeout(X);X=setTimeout(()=>{X=null,u()},I)},W=()=>{if(X!==null)clearTimeout(X),X=null},z=()=>{W(),F=void 0,N=null},$=()=>{U()},O=function(...v){if(C?.aborted)return;F=this,N=v;let d=X==null;if(k(),H&&d)U()};return O.schedule=k,O.cancel=z,O.flush=$,C?.addEventListener("abort",z,{once:!0}),O}var hL=()=>{};function bL(B,I=0,C={}){if(typeof C!=="object")C={};let{leading:g=!1,trailing:F=!0,maxWait:N}=C,H=Array(2);if(g)H[0]="leading";if(F)H[1]="trailing";let M=void 0,U=null,u=mL(function(...W){M=B.apply(this,W),U=null},I,{edges:H}),X=function(...W){if(N!=null){if(U===null)U=Date.now();if(Date.now()-U>=N)return M=B.apply(this,W),U=Date.now(),u.cancel(),u.schedule(),M}return u.apply(this,W),M},k=()=>{return u.flush(),M};return X.cancel=u.cancel,X.flush=k,X}var fL=c(()=>{hL()});function fw(B,I=0,C={}){let{leading:g=!0,trailing:F=!0}=C;return bL(B,I,{leading:g,maxWait:I,trailing:F})}var jL=c(()=>{fL()});var xL=c(()=>{jL()});var w2,bo,fo,jo,xo,po,io,co,lo,ao,nF,oo,no,ro,so,to;var pL=c(()=>{w2=globalThis.window?.document!==void 0,bo=globalThis.process?.versions?.node!==void 0,fo=globalThis.process?.versions?.bun!==void 0,jo=globalThis.Deno?.version?.deno!==void 0,xo=globalThis.process?.versions?.electron!==void 0,po=globalThis.navigator?.userAgent?.includes("jsdom")===!0,io=typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope,co=typeof DedicatedWorkerGlobalScope<"u"&&globalThis instanceof DedicatedWorkerGlobalScope,lo=typeof SharedWorkerGlobalScope<"u"&&globalThis instanceof SharedWorkerGlobalScope,ao=typeof ServiceWorkerGlobalScope<"u"&&globalThis instanceof ServiceWorkerGlobalScope,nF=globalThis.navigator?.userAgentData?.platform,oo=nF==="macOS"||globalThis.navigator?.platform==="MacIntel"||globalThis.navigator?.userAgent?.includes(" Mac ")===!0||globalThis.process?.platform==="darwin",no=nF==="Windows"||globalThis.navigator?.platform==="Win32"||globalThis.process?.platform==="win32",ro=nF==="Linux"||globalThis.navigator?.platform?.startsWith("Linux")===!0||globalThis.navigator?.userAgent?.includes(" Linux ")===!0||globalThis.process?.platform==="linux",so=nF==="iOS"||globalThis.navigator?.platform==="MacIntel"&&globalThis.navigator?.maxTouchPoints>1||/iPad|iPhone|iPod/.test(globalThis.navigator?.platform),to=nF==="Android"||globalThis.navigator?.platform==="Android"||globalThis.navigator?.userAgent?.includes(" Android ")===!0||globalThis.process?.platform==="android"});var HQ={};F0(HQ,{synchronizedOutput:()=>sO,setCwd:()=>BS,scrollUp:()=>iO,scrollDown:()=>dO,link:()=>eO,image:()=>AS,iTerm:()=>nL,exitAlternativeScreen:()=>rO,eraseUp:()=>pO,eraseStartLine:()=>jO,eraseScreen:()=>jw,eraseLines:()=>bO,eraseLine:()=>lL,eraseEndLine:()=>fO,eraseDown:()=>xO,enterAlternativeScreen:()=>nO,endSynchronizedOutput:()=>oL,cursorUp:()=>dL,cursorTo:()=>zO,cursorShow:()=>hO,cursorSavePosition:()=>TO,cursorRestorePosition:()=>vO,cursorPrevLine:()=>PO,cursorNextLine:()=>VO,cursorMove:()=>OO,cursorLeft:()=>cL,cursorHide:()=>mO,cursorGetPosition:()=>_O,cursorForward:()=>$O,cursorDown:()=>SO,cursorBackward:()=>yO,clearViewport:()=>lO,clearTerminal:()=>oO,clearScreen:()=>cO,beginSynchronizedOutput:()=>aL,beep:()=>tO,ConEmu:()=>rL});import G2 from"process";import XO from"os";var XB="\x1B[",N2="\x1B]",cg="\x07",rF=";",iL,qO,kO,bN,H2=(B)=>{if(kO)return"\x1BPtmux;"+B.replaceAll("\x1B","\x1B\x1B")+"\x1B\\";return B},zO=(B,I)=>{if(typeof B!=="number")throw TypeError("The `x` argument is required");if(typeof I!=="number")return XB+(B+1)+"G";return XB+(I+1)+rF+(B+1)+"H"},OO=(B,I)=>{if(typeof B!=="number")throw TypeError("The `x` argument is required");let C="";if(B<0)C+=XB+-B+"D";else if(B>0)C+=XB+B+"C";if(I<0)C+=XB+-I+"A";else if(I>0)C+=XB+I+"B";return C},dL=(B=1)=>XB+B+"A",SO=(B=1)=>XB+B+"B",$O=(B=1)=>XB+B+"C",yO=(B=1)=>XB+B+"D",cL,TO,vO,_O,VO,PO,mO,hO,bO=(B)=>{let I="";for(let C=0;C<B;C++)I+=lL+(C<B-1?dL():"");if(B)I+=cL;return I},fO,jO,lL,xO,pO,jw,iO,dO,cO="\x1Bc",lO,aO=()=>{if(w2||!qO)return!1;let B=XO.release().split("."),I=Number(B[0]),C=Number(B[2]??0);if(I<10)return!0;if(I===10&&C<10586)return!0;return!1},oO,nO,rO,aL,oL,sO=(B)=>aL+B+oL,tO,eO=(B,I)=>{let C=H2(`${N2}8${rF}${rF}${I}${cg}`),g=H2(`${N2}8${rF}${rF}${cg}`);return C+B+g},AS=(B,I={})=>{let C=`${N2}1337;File=inline=1`;if(I.width)C+=`;width=${I.width}`;if(I.height)C+=`;height=${I.height}`;if(I.preserveAspectRatio===!1)C+=";preserveAspectRatio=0";let g=Buffer.from(B);return H2(C+`;size=${g.byteLength}:`+g.toString("base64")+cg)},nL,rL,BS=(B=bN())=>nL.setCwd(B)+rL.setCwd(B);var fN=c(()=>{pL();iL=!w2&&G2.env.TERM_PROGRAM==="Apple_Terminal",qO=!w2&&G2.platform==="win32",kO=!w2&&(G2.env.TERM?.startsWith("screen")||G2.env.TERM?.startsWith("tmux")||G2.env.TMUX!==void 0),bN=w2?()=>{throw Error("`process.cwd()` only works in Node.js, not the browser.")}:G2.cwd,cL=XB+"G",TO=iL?"\x1B7":XB+"s",vO=iL?"\x1B8":XB+"u",_O=XB+"6n",VO=XB+"E",PO=XB+"F",mO=XB+"?25l",hO=XB+"?25h",fO=XB+"K",jO=XB+"1K",lL=XB+"2K",xO=XB+"J",pO=XB+"1J",jw=XB+"2J",iO=XB+"S",dO=XB+"T",lO=`${jw}${XB}H`,oO=aO()?`${jw}${XB}0f`:`${jw}${XB}3J${XB}H`,nO=XB+"?1049h",rO=XB+"?1049l",aL=XB+"?2026h",oL=XB+"?2026l",tO=cg,nL={setCwd:(B=bN())=>H2(`${N2}50;CurrentDir=${B}${cg}`),annotation(B,I={}){let C=`${N2}1337;`,g=I.x!==void 0,F=I.y!==void 0;if((g||F)&&!(g&&F&&I.length!==void 0))throw Error("`x`, `y` and `length` must be defined when `x` or `y` is defined");if(B=B.replaceAll("|",""),C+=I.isHidden?"AddHiddenAnnotation=":"AddAnnotation=",I.length>0)C+=(g?[B,I.length,I.x,I.y]:[I.length,B]).join("|");else C+=B;return H2(C+cg)}},rL={setCwd:(B=bN())=>H2(`${N2}9;9;${B}${cg}`)}});var xw=c(()=>{fN();fN()});import{env as jN}from"process";var sL=(B)=>(B in jN)&&jN[B]!=="0"&&jN[B]!=="false",QS,JE;var xN=c(()=>{QS=sL("CI")||sL("CONTINUOUS_INTEGRATION"),JE=QS});function pN(B,{include:I,exclude:C}={}){let g=(F)=>{let N=(H)=>typeof H==="string"?F===H:H.test(F);if(I)return I.some(N);if(C)return!C.some(N);return!0};for(let[F,N]of IS(B.constructor.prototype)){if(N==="constructor"||!g(N))continue;let H=Reflect.getOwnPropertyDescriptor(F,N);if(H&&typeof H.value==="function")B[N]=B[N].bind(B)}return B}var IS=(B)=>{let I=new Set;do for(let C of Reflect.ownKeys(B))I.add([B,C]);while((B=Reflect.getPrototypeOf(B))&&B!==Object.prototype);return I};var tL=pI((Fn,pw)=>{pw.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];if(process.platform!=="win32")pw.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");if(process.platform==="linux")pw.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")});var aN=pI((wn,M2)=>{var tB=global.process,lg=function(B){return B&&typeof B==="object"&&typeof B.removeListener==="function"&&typeof B.emit==="function"&&typeof B.reallyExit==="function"&&typeof B.listeners==="function"&&typeof B.kill==="function"&&typeof B.pid==="number"&&typeof B.on==="function"};if(!lg(tB))M2.exports=function(){return function(){}};else{if(iN=cA("assert"),ag=tL(),dN=/^win/i.test(tB.platform),J2=cA("events"),typeof J2!=="function")J2=J2.EventEmitter;if(tB.__signal_exit_emitter__)VQ=tB.__signal_exit_emitter__;else VQ=tB.__signal_exit_emitter__=new J2,VQ.count=0,VQ.emitted={};if(!VQ.infinite)VQ.setMaxListeners(1/0),VQ.infinite=!0;M2.exports=function(B,I){if(!lg(global.process))return function(){};if(iN.equal(typeof B,"function","a callback must be provided for exit handler"),og===!1)iw();var C="exit";if(I&&I.alwaysLast)C="afterexit";var g=function(){if(VQ.removeListener(C,B),VQ.listeners("exit").length===0&&VQ.listeners("afterexit").length===0)sF()};return VQ.on(C,B),g},sF=function(){if(!og||!lg(global.process))return;og=!1,ag.forEach(function(I){try{tB.removeListener(I,tF[I])}catch(C){}}),tB.emit=eF,tB.reallyExit=dw,VQ.count-=1},M2.exports.unload=sF,lC=function(I,C,g){if(VQ.emitted[I])return;VQ.emitted[I]=!0,VQ.emit(I,C,g)},tF={},ag.forEach(function(B){tF[B]=function(){if(!lg(global.process))return;var C=tB.listeners(B);if(C.length===VQ.count){if(sF(),lC("exit",null,B),lC("afterexit",null,B),dN&&B==="SIGHUP")B="SIGINT";tB.kill(tB.pid,B)}}}),M2.exports.signals=function(){return ag},og=!1,iw=function(){if(og||!lg(global.process))return;og=!0,VQ.count+=1,ag=ag.filter(function(I){try{return tB.on(I,tF[I]),!0}catch(C){return!1}}),tB.emit=lN,tB.reallyExit=cN},M2.exports.load=iw,dw=tB.reallyExit,cN=function(I){if(!lg(global.process))return;tB.exitCode=I||0,lC("exit",tB.exitCode,null),lC("afterexit",tB.exitCode,null),dw.call(tB,tB.exitCode)},eF=tB.emit,lN=function(I,C){if(I==="exit"&&lg(global.process)){if(C!==void 0)tB.exitCode=C;var g=eF.apply(this,arguments);return lC("exit",tB.exitCode,null),lC("afterexit",tB.exitCode,null),g}else return eF.apply(this,arguments)}}var iN,ag,dN,J2,VQ,sF,lC,tF,og,iw,dw,cN,eF,lN});import{PassThrough as eL}from"stream";var Au,oN,ES=(B)=>{let I=new eL,C=new eL;I.write=(F)=>{B("stdout",F)},C.write=(F)=>{B("stderr",F)};let g=new console.Console(I,C);for(let F of Au)oN[F]=console[F],console[F]=g[F];return()=>{for(let F of Au)console[F]=oN[F];oN={}}},Bu;var Qu=c(()=>{Au=["assert","count","countReset","debug","dir","dirxml","error","group","groupCollapsed","groupEnd","info","log","table","time","timeEnd","timeLog","trace","warn"],oN={},Bu=ES});var cw=pI((CS)=>{CS.ConcurrentRoot=1,CS.ContinuousEventPriority=8,CS.DefaultEventPriority=32,CS.DiscreteEventPriority=2,CS.IdleEventPriority=268435456,CS.LegacyRoot=0,CS.NoEventPriority=0});var gS,Iu;var Eu=c(()=>{gS=(()=>{var B=import.meta.url;return function(I){I=I||{};var C;C||(C=typeof I<"u"?I:{});var g,F;C.ready=new Promise(function(Y,Z){g=Y,F=Z});var N=Object.assign({},C),H="";typeof document<"u"&&document.currentScript&&(H=document.currentScript.src),B&&(H=B),H.indexOf("blob:")!==0?H=H.substr(0,H.replace(/[?#].*/,"").lastIndexOf("/")+1):H="";var M=C.print||console.log.bind(console),U=C.printErr||console.warn.bind(console);Object.assign(C,N),N=null;var u;C.wasmBinary&&(u=C.wasmBinary);var X=C.noExitRuntime||!0;typeof WebAssembly!="object"&&_A("no native wasm support detected");var k,W=!1;function z(Y,Z,S){S=Z+S;for(var V="";!(Z>=S);){var b=Y[Z++];if(!b)break;if(b&128){var a=Y[Z++]&63;if((b&224)==192)V+=String.fromCharCode((b&31)<<6|a);else{var QA=Y[Z++]&63;b=(b&240)==224?(b&15)<<12|a<<6|QA:(b&7)<<18|a<<12|QA<<6|Y[Z++]&63,65536>b?V+=String.fromCharCode(b):(b-=65536,V+=String.fromCharCode(55296|b>>10,56320|b&1023))}}else V+=String.fromCharCode(b)}return V}var $,O,v,d,l,r,FA,MA,wA;function ZA(){var Y=k.buffer;$=Y,C.HEAP8=O=new Int8Array(Y),C.HEAP16=d=new Int16Array(Y),C.HEAP32=r=new Int32Array(Y),C.HEAPU8=v=new Uint8Array(Y),C.HEAPU16=l=new Uint16Array(Y),C.HEAPU32=FA=new Uint32Array(Y),C.HEAPF32=MA=new Float32Array(Y),C.HEAPF64=wA=new Float64Array(Y)}var GA,s=[],XA=[],qA=[];function JA(){var Y=C.preRun.shift();s.unshift(Y)}var KA=0,BB=null,IA=null;function _A(Y){if(C.onAbort)C.onAbort(Y);throw Y="Aborted("+Y+")",U(Y),W=!0,Y=new WebAssembly.RuntimeError(Y+". Build with -sASSERTIONS for more info."),F(Y),Y}function OA(Y){return Y.startsWith("data:application/octet-stream;base64,")}var rA="data:application/octet-stream;base64,AGFzbQEAAAABugM3YAF/AGACf38AYAF/AX9gA39/fwBgAn98AGACf38Bf2ADf39/AX9gBH9/f30BfWADf398AGAAAGAEf39/fwBgAX8BfGACf38BfGAFf39/f38Bf2AAAX9gA39/fwF9YAZ/f31/fX8AYAV/f39/fwBgAn9/AX1gBX9/f319AX1gAX8BfWADf35/AX5gB39/f39/f38AYAZ/f39/f38AYAR/f39/AX9gBn9/f319fQF9YAR/f31/AGADf399AX1gBn98f39/fwF/YAR/fHx/AGACf30AYAh/f39/f39/fwBgDX9/f39/f39/f39/f38AYAp/f39/f39/f39/AGAFf39/f38BfGAEfHx/fwF9YA1/fX1/f399fX9/f39/AX9gB39/f319f38AYAJ+fwF/YAN/fX0BfWABfAF8YAN/fHwAYAR/f319AGAHf39/fX19fQF9YA1/fX99f31/fX19fX1/AX9gC39/f39/f399fX19AX9gCH9/f39/f319AGAEf39+fgBgB39/f39/f38Bf2ACfH8BfGAFf398fH8AYAN/f38BfGAEf39/fABgA39/fQBgBn9/fX99fwF/ArUBHgFhAWEAHwFhAWIAAwFhAWMACQFhAWQAFgFhAWUAEQFhAWYAIAFhAWcAAAFhAWgAIQFhAWkAAwFhAWoAAAFhAWsAFwFhAWwACgFhAW0ABQFhAW4AAwFhAW8AAQFhAXAAFwFhAXEABgFhAXIAAAFhAXMAIgFhAXQACgFhAXUADQFhAXYAFgFhAXcAAgFhAXgAAwFhAXkAGAFhAXoAAgFhAUEAAQFhAUIAEQFhAUMAAQFhAUQAAAOiAqACAgMSBwcACRkDAAoRBgYKEwAPDxMBBiMTCgcHGgMUASQFJRQHAwMKCgMmAQYYDxobFAAKBw8KBwMDAgkCAAAFGwACBwIHBgIDAQMIDAABKAkHBQURACkZASoAAAIrLAIALQcHBy4HLwkFCgMCMA0xAgMJAgACAQYKAQIBBQEACQIFAQEABQAODQ0GFQIBHBUGAgkCEAAAAAUyDzMMBQYINAUCAwUODg41AgMCAgIDBgICNgIBDAwMAQsLCwsLCx0CAAIAAAABABABBQICAQMCEgMMCwEBAQEBAQsLAQICAwICAgICAgIDAgIICAEICAgEBAQEBAQEBAQABAQABAQEBAAE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GiABQQA2AvADIAFCADcC6AMgAigC7AMiAyACKALoAyIERwRAIAMgBGsiBEEASA0FIAEgBBAeIgM2AuwDIAEgAzYC6AMgASADIARqNgLwAyACKALoAyIEIAIoAuwDIghHBEADQCADIAQoAgA2AgAgA0EEaiEDIARBBGoiBCAIRw0ACwsgASADNgLsAwsgASACKQL0AzcC9AMgASACKAKEBDYChAQgASACKQL8AzcC/AMgAUEANgLkAwsgBSABNgIAIAEgADYC5AMLIAZBAWohBiAFQQRqIgUgB0cNAAsLDwsQAgALUAACQAJAAkACQAJAIAIOBAQAAQIDCyAAIAEgAUEwahBDDwsgACABIAFBMGogAxBEDwsgACABIAFBMGoQQg8LECQACyAAIAEgAUEwaiADEEULcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QdwlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt5AgF/AX0jAEEQayIDJAAgA0EIaiAAIAFBAnRB7CVqKAIAIAIQU0MAAMB/IQQCQAJAAkAgAy0ADEEBaw4CAAECCyADKgIIIQQMAQsgAyoCCEMAAAAAlEMK1yM8lCEECyADQRBqJAAgBEMAAAAAl0MAAAAAIAQgBFsbC1QAAkACQAJAAkACQCACDgQEAAECAwsgACABIAFBwgBqEEMPCyAAIAEgAUHCAGogAxBEDwsgACABIAFBwgBqEEIPCxAkAAsgACABIAFBwgBqIAMQRQsvACAAIAJFQQF0IgIgASADEGAgACACIAEQS5IgACACIAEgAxB/IAAgAiABEFKSkgvOAQIDfwJ9IwBBEGsiAyQAQQEhBCADQQhqIABB/ABqIgUgACABQQF0akH2AGoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALzgECA38CfSMAQRBrIgMkAEEBIQQgA0EIaiAAQfwAaiIFIAAgAUEBdGpB8gBqIgEvAQAQHwJAAkAgAyoCCCIHIAIqAgAiBlwEQCAHIAdbBEAgAi0ABCECDAILIAYgBlwhBAsgAi0ABCECIARFDQAgAy0ADCACQf8BcUYNAQsgBSABIAYgAhA5A0AgAC0AACIBQQRxDQEgACABQQRyOgAAIAAoAhAiAQRAIAAgAREAAAsgAEGAgID+BzYCnAEgACgC5AMiAA0ACwsgA0EQaiQACwoAIABBMGtBCkkLBQAQAgALBAAgAAsUACAABEAgACAAKAIAKAIEEQAACwsrAQF/IAAoAgwiAQRAIAEQIwsgACgCACIBBEAgACABNgIEIAEQIwsgABAjC4EEAQN/IwBBEGsiAyQAIABCADcCBCAAQcEgOwAVIABCADcCDCAAQoCAgICAgIACNwIYIAAgAC0AF0HgAXE6ABcgACAALQAAQeABcUEFcjoAACAAIAAtABRBgAFxOgAUIABBIGpBAEHOABAqGiAAQgA3AXIgAEGEgBA2AW4gAEEANgF6IABCADcCgAEgAEIANwKIASAAQgA3ApABIABCADcCoAEgAEKAgICAgICA4P8ANwKYASAAQQA6AKgBIABBrAFqQQBBxAEQKhogAEHwAmohBCAAQbABaiECA0AgAkKAgID8i4CAwL9/NwIQIAJCgYCAgBA3AgggAkKAgID8i4CAwL9/NwIAIAJBGGoiAiAERw0ACyAAQoCAgPyLgIDAv383AvACIABCgICA/IuAgMC/fzcCgAMgAEKBgICAEDcC+AIgAEKAgID+h4CA4P8ANwKUAyAAQoCAgP6HgIDg/wA3AowDIABBiANqIgIgAi0AAEH4AXE6AAAgAEGcA2pBAEHYABAqGiAAQQA6AIQEIABBgICA/gc2AoAEIABBADoA/AMgAEGAgID+BzYC+AMgACABNgL0AyABBEAgAS0ACEEBcQRAIAAgAC0AFEHzAXFBCHI6ABQgACAALwAVQfD/A3FBBHI7ABULIANBEGokACAADwsgA0GiGjYCACADEHIQJAALMwAgACABQQJ0QfwlaigCAEECdGoqApQDIABBFGoiACABQQEgAhAiIAAgAUEBIAIQIZKSC44DAQp/IwBB0AJrIgEkACAAKALoAyIDIAAoAuwDIgVHBEAgAUGMAmohBiABQeABaiEHIAFBIGohCCABQRxqIQkgAUEQaiEEA0AgAygCACICLQAXQRB0QYCAMHFBgIAgRgRAIAFBCGpBAEHEAhAqGiABQYCAgP4HNgIMIARBADoACCAEQgA3AgAgCUEAQcQBECoaIAghAANAIABCgICA/IuAgMC/fzcCECAAQoGAgIAQNwIIIABCgICA/IuAgMC/fzcCACAAQRhqIgAgB0cNAAsgAUKAgID8i4CAwL9/NwPwASABQoGAgIAQNwPoASABQoCAgPyLgIDAv383A+ABIAFCgICA/oeAgOD/ADcChAIgAUKAgID+h4CA4P8ANwL8ASABIAEtAPgBQfgBcToA+AEgBkEAQcAAECoaIAJBmAFqIAFBCGpBxAIQKxogAkIANwKMAyACIAItAAAiAEEBciIKQfsBcSAKIABBBHEbOgAAIAIQTyACEF4LIANBBGoiAyAFRw0ACwsgAUHQAmokAAtMAQF/QQEhAQJAIAAtAB5BB3ENACAALQAiQQdxDQAgAC0ALkEHcQ0AIAAtACpBB3ENACAALQAmQQdxDQAgAC0AKEEHcUEARyEBCyABC3YCAX8BfSMAQRBrIgQkACAEQQhqIAAgAUECdEHcJWooAgAgAhBQQwAAwH8hBQJAAkACQCAELQAMQQFrDgIAAQILIAQqAgghBQwBCyAEKgIIIAOUQwrXIzyUIQULIARBEGokACAFQwAAAACXQwAAAAAgBSAFWxsLogQCBn8CfgJ/QQghBAJAAkAgAEFHSw0AA0BBCCAEIARBCE0bIQRB6DopAwAiBwJ/QQggAEEDakF8cSAAQQhNGyIAQf8ATQRAIABBA3ZBAWsMAQsgAEEdIABnIgFrdkEEcyABQQJ0a0HuAGogAEH/H00NABpBPyAAQR4gAWt2QQJzIAFBAXRrQccAaiIBIAFBP08bCyIDrYgiCFBFBEADQCAIIAh6IgiIIQcCfiADIAinaiIDQQR0IgJB6DJqKAIAIgEgAkHgMmoiBkcEQCABIAQgABBjIgUNBSABKAIEIgUgASgCCDYCCCABKAIIIAU2AgQgASAGNgIIIAEgAkHkMmoiAigCADYCBCACIAE2AgAgASgCBCABNgIIIANBAWohAyAHQgGIDAELQeg6Qeg6KQMAQn4gA62JgzcDACAHQgGFCyIIQgBSDQALQeg6KQMAIQcLAkAgB1BFBEBBPyAHeadrIgZBBHQiAkHoMmooAgAhAQJAIAdCgICAgARUDQBB4wAhAyABIAJB4DJqIgJGDQADQCADRQ0BIAEgBCAAEGMiBQ0FIANBAWshAyABKAIIIgEgAkcNAAsgAiEBCyAAQTBqEGQNASABRQ0EIAEgBkEEdEHgMmoiAkYNBANAIAEgBCAAEGMiBQ0EIAEoAggiASACRw0ACwwECyAAQTBqEGRFDQMLQQAhBSAEIARBAWtxDQEgAEFHTQ0ACwsgBQwBC0EACwtwAgF/AX0jAEEQayIEJAAgBEEIaiAAIAFBAnRB7CVqKAIAIAIQKEMAAMB/IQUCQAJAAkAgBC0ADEEBaw4CAAECCyAEKgIIIQUMAQsgBCoCCCADlEMK1yM8lCEFCyAEQRBqJAAgBUMAAAAAIAUgBVsbC6ADAQN/IAEgAEEEaiIEakEBa0EAIAFrcSIFIAJqIAAgACgCACIBakEEa00EfyAAKAIEIgMgACgCCDYCCCAAKAIIIAM2AgQgBCAFRwRAIAAgAEEEaygCAEF+cWsiAyAFIARrIgQgAygCAGoiBTYCACAFQXxxIANqQQRrIAU2AgAgACAEaiIAIAEgBGsiATYCAAsCQCABIAJBGGpPBEAgACACakEIaiIDIAEgAmtBCGsiATYCACABQXxxIANqQQRrIAFBAXI2AgAgAwJ/IAMoAgBBCGsiAUH/AE0EQCABQQN2QQFrDAELIAFnIQQgAUEdIARrdkEEcyAEQQJ0a0HuAGogAUH/H00NABpBPyABQR4gBGt2QQJzIARBAXRrQccAaiIBIAFBP08bCyIBQQR0IgRB4DJqNgIEIAMgBEHoMmoiBCgCADYCCCAEIAM2AgAgAygCCCADNgIEQeg6Qeg6KQMAQgEgAa2GhDcDACAAIAJBCGoiATYCACABQXxxIABqQQRrIAE2AgAMAQsgACABakEEayABNgIACyAAQQRqBSADCwvmAwEFfwJ/QbAwKAIAIgEgAEEHakF4cSIDaiECAkAgA0EAIAEgAk8bDQAgAj8AQRB0SwRAIAIQFkUNAQtBsDAgAjYCACABDAELQfw7QTA2AgBBfwsiAkF/RwRAIAAgAmoiA0EQayIBQRA2AgwgAUEQNgIAAkACf0HgOigCACIABH8gACgCCAVBAAsgAkYEQCACIAJBBGsoAgBBfnFrIgRBBGsoAgAhBSAAIAM2AghBcCAEIAVBfnFrIgAgACgCAGpBBGstAABBAXFFDQEaIAAoAgQiAyAAKAIINgIIIAAoAgggAzYCBCAAIAEgAGsiATYCAAwCCyACQRA2AgwgAkEQNgIAIAIgAzYCCCACIAA2AgRB4DogAjYCAEEQCyACaiIAIAEgAGsiATYCAAsgAUF8cSAAakEEayABQQFyNgIAIAACfyAAKAIAQQhrIgFB/wBNBEAgAUEDdkEBawwBCyABQR0gAWciA2t2QQRzIANBAnRrQe4AaiABQf8fTQ0AGkE/IAFBHiADa3ZBAnMgA0EBdGtBxwBqIgEgAUE/TxsLIgFBBHQiA0HgMmo2AgQgACADQegyaiIDKAIANgIIIAMgADYCACAAKAIIIAA2AgRB6DpB6DopAwBCASABrYaENwMACyACQX9HC80BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQSBqIgEvAQAQHwJAAkAgAyoCCCIHIAIqAgAiBlwEQCAHIAdbBEAgAi0ABCECDAILIAYgBlwhBAsgAi0ABCECIARFDQAgAy0ADCACQf8BcUYNAQsgBSABIAYgAhA5A0AgAC0AACIBQQRxDQEgACABQQRyOgAAIAAoAhAiAQRAIAAgAREAAAsgAEGAgID+BzYCnAEgACgC5AMiAA0ACwsgA0EQaiQAC0ABAX8CQEGsOy0AAEEBcQRAQag7KAIAIQIMAQtBAUGAJxAMIQJBrDtBAToAAEGoOyACNgIACyACIAAgAUEAEBMLzQECA38CfSMAQRBrIgMkAEEBIQQgA0EIaiAAQfwAaiIFIAAgAUEBdGpBMmoiAS8BABAfAkACQCADKgIIIgcgAioCACIGXARAIAcgB1sEQCACLQAEIQIMAgsgBiAGXCEECyACLQAEIQIgBEUNACADLQAMIAJB/wFxRg0BCyAFIAEgBiACEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyADQRBqJAALDwAgASAAKAIAaiACOQMACw0AIAEgACgCAGorAwALCwAgAARAIAAQIwsLxwECBH8CfSMAQRBrIgIkACACQQhqIABB/ABqIgQgAEEeaiIFLwEAEB9BASEDAkACQCACKgIIIgcgASoCACIGXARAIAcgB1sEQCABLQAEIQEMAgsgBiAGXCEDCyABLQAEIQEgA0UNACACLQAMIAFB/wFxRg0BCyAEIAUgBiABEDkDQCAALQAAIgFBBHENASAAIAFBBHI6AAAgACgCECIBBEAgACABEQAACyAAQYCAgP4HNgKcASAAKALkAyIADQALCyACQRBqJAALlgMCA34CfyAAvSICQjSIp0H/D3EiBEH/D0YEQCAARAAAAAAAAPA/oiIAIACjDwsgAkIBhiIBQoCAgICAgIDw/wBYBEAgAEQAAAAAAAAAAKIgACABQoCAgICAgIDw/wBRGw8LAn4gBEUEQEEAIQQgAkIMhiIBQgBZBEADQCAEQQFrIQQgAUIBhiIBQgBZDQALCyACQQEgBGuthgwBCyACQv////////8Hg0KAgICAgICACIQLIQEgBEH/B0oEQANAAkAgAUKAgICAgICACH0iA0IAUw0AIAMiAUIAUg0AIABEAAAAAAAAAACiDwsgAUIBhiEBIARBAWsiBEH/B0oNAAtB/wchBAsCQCABQoCAgICAgIAIfSIDQgBTDQAgAyIBQgBSDQAgAEQAAAAAAAAAAKIPCyABQv////////8HWARAA0AgBEEBayEEIAFCgICAgICAgARUIQUgAUIBhiEBIAUNAAsLIAJCgICAgICAgICAf4MgAUKAgICAgICACH0gBK1CNIaEIAFBASAEa62IIARBAEobhL8LiwEBA38DQCAAQQR0IgFB5DJqIAFB4DJqIgI2AgAgAUHoMmogAjYCACAAQQFqIgBBwABHDQALQTAQZBpBmDtBBjYCAEGcO0EANgIAEJwBQZw7Qcg7KAIANgIAQcg7QZg7NgIAQcw7QcMBNgIAQdA7QQA2AgAQjwFB0DtByDsoAgA2AgBByDtBzDs2AgALjwEBAn8jAEEQayIEJAACfUMAAAAAIAAvABVBgOAAcUUNABogBEEIaiAAQRRqIgBBASACQQJGQQF0IAFB/gFxQQJHGyIFIAIQNgJAIAQtAAxFDQAgBEEIaiAAIAUgAhA2IAQtAAxBA0YNACAAIAEgAiADEIEBDAELIAAgASACIAMQgAGMCyEDIARBEGokACADC4QBAQJ/AkACQCAAKALoAyICIAAoAuwDIgNGDQADQCACKAIAIAFGDQEgAkEEaiICIANHDQALDAELIAIgA0YNACABLQAXQRB0QYCAMHFBgIAgRgRAIAAgACgC4ANBAWs2AuADCyACIAJBBGoiASADIAFrEDMaIAAgA0EEazYC7ANBAQ8LQQALCwBByDEgACABEEkLPAAgAEUEQCACQQVHQQAgAhtFBEBBuDAgAyAEEEkaDwsgAyAEEHAaDwsgACABIAIgAyAEIAAoAgQRDQAaCyYBAX8jAEEQayIBJAAgASAANgIMQbgwQdglIAAQSRogAUEQaiQAC4cDAwN/BXwCfSAAKgKgA7siBiACoCECIAAqApwDuyIHIAGgIQggACgC9AMqAhgiC0MAAAAAXARAIAAqApADuyEJIAAqAowDIQwgACAHIAu7IgFBACAALQAAQRBxIgNBBHYiBBA0OAKcAyAAIAYgAUEAIAQQNDgCoAMgASAMuyIHohBsIgYgBmIiBEUgBplELUMc6+I2Gj9jcUUEQCAEIAZEAAAAAAAA8L+gmUQtQxzr4jYaP2NFciEFCyACIAmgIQogCCAHoCEHAn8gASAJohBsIgYgBmIiBEUEQEEAIAaZRC1DHOviNho/Yw0BGgsgBCAGRAAAAAAAAPC/oJlELUMc6+I2Gj9jRXILIQQgACAHIAEgA0EARyIDIAVxIAMgBUEBc3EQNCAIIAFBACADEDSTOAKMAyAAIAogASADIARxIAMgBEEBc3EQNCACIAFBACADEDSTOAKQAwsgACgC6AMiAyAAKALsAyIARwRAA0AgAygCACAIIAIQcyADQQRqIgMgAEcNAAsLC1UBAX0gAEEUaiIAIAEgAkECSSICIAQgBRA1IQYgACABIAIgBCAFEC0iBUMAAAAAYCADIAVecQR9IAUFIAZDAAAAAGBFBEAgAw8LIAYgAyADIAZdGwsLeAEBfwJAIAAoAgAiAgRAA0AgAUUNAiACIAEoAgQ2AgQgAiABKAIINgIIIAEoAgAhASAAKAIAIQAgAigCACICDQALCyAAIAEQPA8LAkAgAEUNACAAKAIAIgFFDQAgAEEANgIAA0AgASgCACEAIAEQIyAAIgENAAsLC5kCAgZ/AX0gAEEUaiEHQQMhBCAALQAUQQJ2QQNxIQUCQAJ/AkAgAUEBIAAoAuQDGyIIQQJGBEACQCAFQQJrDgIEAAILQQIhBAwDC0ECIQRBACAFQQFLDQEaCyAECyEGIAUhBAsgACAEIAggAyACIARBAkkiBRsQbiEKIAAgBiAIIAIgAyAFGxBuIQMgAEGcA2oiAEEBIAFBAkZBAXQiCCAFG0ECdGogCiAHIAQgASACECKSOAIAIABBAyABQQJHQQF0IgkgBRtBAnRqIAogByAEIAEgAhAhkjgCACAAIAhBASAGQQF2IgQbQQJ0aiADIAcgBiABIAIQIpI4AgAgACAJQQMgBBtBAnRqIAMgByAGIAEgAhAhkjgCAAvUAgEDfyMAQdACayIBJAAgAUEIakEAQcQCECoaIAFBADoAGCABQgA3AxAgAUGAgID+BzYCDCABQRxqQQBBxAEQKhogAUHgAWohAyABQSBqIQIDQCACQoCAgPyLgIDAv383AhAgAkKBgICAEDcCCCACQoCAgPyLgIDAv383AgAgAkEYaiICIANHDQALIAFCgICA/IuAgMC/fzcD8AEgAUKBgICAEDcD6AEgAUKAgID8i4CAwL9/NwPgASABQoCAgP6HgIDg/wA3AoQCIAFCgICA/oeAgOD/ADcC/AEgASABLQD4AUH4AXE6APgBIAFBjAJqQQBBwAAQKhogAEGYAWogAUEIakHEAhArGiAAQgA3AowDIAAgAC0AAEEBcjoAACAAEE8gACgC6AMiAiAAKALsAyIARwRAA0AgAigCABB3IAJBBGoiAiAARw0ACwsgAUHQAmokAAuuAgIKfwJ9IwBBIGsiASQAIAFBgAI7AB4gAEHuAGohByAAQfgDaiEFIABB8gBqIQggAEH2AGohCSAAQfwAaiEDQQAhAANAIAFBEGogAyAJIAFBHmogBGotAAAiAkEBdCIEaiIGLwEAEB8CQAJAIAEtABRFDQAgAUEIaiADIAYvAQAQHyABIAMgBCAIai8BABAfIAEtAAwgAS0ABEcNAAJAIAEqAggiDCAMXCIKIAEqAgAiCyALXHJFBEAgDCALk4tDF7fROF0NAQwCCyAKRSALIAtbcg0BCyABQRBqIAMgBi8BABAfDAELIAFBEGogAyAEIAdqLwEAEB8LIAUgAkEDdGoiAiABLQAUOgAEIAIgASgCEDYCAEEBIQQgACECQQEhACACRQ0ACyABQSBqJAALMgACf0EAIAAvABVBgOAAcUGAwABGDQAaQQEgABA7QwAAAABcDQAaIAAQQEMAAAAAXAsLewEBfSADIASTIgMgA1sEfUMAAAAAIABBFGoiACABIAIgBSAGEDUiByAEkyAHIAdcGyIHQ///f38gACABIAIgBSAGEC0iBSAEkyAFIAVcGyIEIAMgAyAEXhsiAyADIAddGyAHIAMgAyADXBsgAyADWyAHIAdbcRsFIAMLC98FAwR/BX0BfCAJQwAAAABdIAhDAAAAAF1yBH8gDQUgBSESIAEhEyADIRQgByERIAwqAhgiFUMAAAAAXARAIAG7IBW7IhZBAEEAEDQhEyADuyAWQQBBABA0IRQgBbsgFkEAQQAQNCESIAe7IBZBAEEAEDQhEQsCf0EAIAAgBEcNABogEiATk4tDF7fROF0gEyATXCINIBIgElxyRQ0AGkEAIBIgElsNABogDQshDAJAIAIgBkcNACAUIBRcIg0gESARXHJFBEAgESAUk4tDF7fROF0hDwwBCyARIBFbDQAgDSEPC0EBIQ5BASENAkAgDA0AIAEgCpMhAQJAIABFBEAgASABXCIAIAggCFxyRQRAQQAhDCABIAiTi0MXt9E4XUUNAgwDC0EAIQwgCCAIWw0BIAANAgwBCyAAQQJGIQwgAEECRw0AIARBAUcNACABIAhgDQECQCAIIAhcIgAgASABXHJFBEAgASAIk4tDF7fROF1FDQEMAwtBACENIAEgAVsNAkEBIQ0gAA0CC0EAIQ0MAQtBACENIAggCFwiACABIAVdRXINACAMRSABIAFcIhAgBSAFXHIgBEECR3JyDQBBASENIAEgCGANAEEAIQ0gACAQcg0AIAEgCJOLQxe30ThdIQ0LAkAgDw0AIAMgC5MhAQJAAkAgAkUEQCABIAFcIgIgCSAJXHJFBEBBACEAIAEgCZOLQxe30ThdRQ0CDAQLQQAhACAJIAlbDQEgAg0DDAELIAJBAkYhACACQQJHIAZBAUdyDQAgASAJYARADAMLIAkgCVwiACABIAFcckUEQCABIAmTi0MXt9E4XUUNAgwDC0EAIQ4gASABWw0CQQEhDiAADQIMAQsgCSAJXCICIAEgB11Fcg0AIABFIAEgAVwiBCAHIAdcciAGQQJHcnINACABIAlgDQFBACEOIAIgBHINASABIAmTi0MXt9E4XSEODAELQQAhDgsgDSAOcQsL4wEBA38jAEEQayIBJAACQAJAIAAtABRBCHFFDQBBASEDIAAvABVB8AFxQdAARg0AIAEgABAyIAEoAgQhAAJAIAEoAgAiAkUEQEEAIQMgAEUNAQsDQCACKALsAyACKALoAyICa0ECdSAATQ0DIAIgAEECdGooAgAiAC8AFSAALQAXQRB0ciIAQYDgAHFBgMAARyAAQYAecUGACkZxIgMNASABEC4gASgCBCIAIAEoAgAiAnINAAsLIAEoAggiAEUNAANAIAAoAgAhAiAAECMgAiIADQALCyABQRBqJAAgAw8LEAIAC7IBAQR/AkACQCAAKAIEIgMgACgCACIEKALsAyAEKALoAyIBa0ECdUkEQCABIANBAnRqIQIDQCACKAIAIgEtABdBEHRBgIAwcUGAgCBHDQMgASgC7AMgASgC6ANGDQJBDBAeIgIgBDYCBCACIAM2AgggAiAAKAIINgIAQQAhAyAAQQA2AgQgACABNgIAIAAgAjYCCCABIQQgASgC6AMiAiABKALsA0cNAAsLEAIACyAAEC4LC4wQAgx/B30jAEEgayINJAAgDUEIaiABEDIgDSgCCCIOIA0oAgwiDHIEQCADQQEgAxshFSAAQRRqIRQgBUEBaiEWA0ACQAJAAn8CQAJAAkACQAJAIAwgDigC7AMgDigC6AMiDmtBAnVJBEAgDiAMQQJ0aigCACILLwAVIAstABdBEHRyIgxBgIAwcUGAgBBGDQgCQAJAIAxBDHZBA3EOAwEKAAoLIAkhFyAKIRogASgC9AMtABRBBHFFBEAgACoClAMgFEECQQEQMCAUQQJBARAvkpMhFyAAKgKYAyAUQQBBARAwIBRBAEEBEC+SkyEaCyALQRRqIQ8gAS0AFEECdkEDcSEQAkACfwJAIANBAkciE0UEQEEAIQ5BAyEMAkAgEEECaw4CBAACC0ECIQwMAwtBAiEMQQAgEEEBSw0BGgsgDAshDiAQIQwLIA9BAkEBIBcQIiAPQQJBASAXECGSIR0gD0EAQQEgFxAiIRwgD0EAQQEgFxAhIRsgCyoC+AMhGAJAAkACQAJAIAstAPwDQQFrDgIBAAILIBggF5RDCtcjPJQhGAsgGEMAAAAAYEUNACAdIAsgA0EAIBcgFxAxkiEYDAELIA1BGGogDyALQTJqIhAgAxBFQwAAwH8hGCANLQAcRQ0AIA1BGGogDyAQIAMQRCANLQAcRQ0AIA1BGGogDyAQIAMQRSANLQAcQQNGDQAgDUEYaiAPIBAgAxBEIA0tABxBA0YNACALQQIgAyAAKgKUAyAUQQIgAxBLIBRBAiADEFKSkyAPQQIgAyAXEFEgD0ECIAMgFxCDAZKTIBcgFxAlIRgLIBwgG5IhHCALKgKABCEZAkACQAJAIAstAIQEQQFrDgIBAAILIBkgGpRDCtcjPJQhGQsgGUMAAAAAYEUNACAcIAsgA0EBIBogFxAxkiEZDAMLIA1BGGogDyALQTJqIhAQQwJAIA0tABxFDQAgDUEYaiAPIBAQQiANLQAcRQ0AIA1BGGogDyAQEEMgDS0AHEEDRg0AIA1BGGogDyAQEEIgDS0AHEEDRg0AIAtBACADIAAqApgDIBRBACADEEsgFEEAIAMQUpKTIA9BACADIBoQUSAPQQAgAyAaEIMBkpMgGiAXECUhGQwDC0MAAMB/IRkgGCAYXA0GIAtB/ABqIhAgC0H6AGoiEi8BABAgIhsgG1sNAwwFCyALLQAAQQhxDQggCxBPIAAgCyACIAstABRBA3EiDCAVIAwbIAQgFiAGIAsqApwDIAeSIAsqAqADIAiSIAkgChB+IBFyIQxBACERIAxBAXFFDQhBASERIAsgCy0AAEEBcjoAAAwICxACAAsgGCAYXCAZIBlcRg0BIAtB/ABqIhAgC0H6AGoiEi8BABAgIhsgG1wNASAYIBhcBEAgGSAckyAQIAsvAXoQIJQgHZIhGAwCCyAZIBlbDQELIBwgGCAdkyAQIBIvAQAQIJWSIRkLIBggGFwNASAZIBlbDQMLQQAMAQtBAQshEiALIBcgGCACQQFHIAxBAklxIBdDAAAAAF5xIBJxIhAbIBkgA0ECIBIgEBsgGSAZXCAXIBpBAEEGIAQgBSAGED0aIAsqApQDIA9BAkEBIBcQIiAPQQJBASAXECGSkiEYIAsqApgDIA9BAEEBIBcQIiAPQQBBASAXECGSkiEZC0EBIRAgCyAYIBkgA0EAQQAgFyAaQQFBASAEIAUgBhA9GiAAIAEgCyADIAxBASAXIBoQggEgACABIAsgAyAOQQAgFyAaEIIBIBFBAXFFBEAgCy0AAEEBcSEQCyABLQAUIhJBAnZBA3EhDAJAAn8CQAJAAkACQAJAAkACQAJAAkACfwJAIBNFBEBBACERQQMhDiAMQQJrDgIDDQELQQIhDkEAIAxBAUsNARoLIA4LIREgEkEEcUUNBCASQQhxRQ0BIAwhDgsgASEMIA8QXw0BDAILAkAgCy0ANEEHcQ0AIAstADhBB3ENACALLQBCQQdxDQAgDCEOIAEhDCALQUBrLwEAQQdxRQ0CDAELIAwhDgsgACEMCwJ/AkACQAJAIA5BAWsOAwABAgULIAtBmANqIQ4gC0GoA2ohE0EBIRIgDEGYA2oMAgsgC0GUA2ohDiALQZwDaiETQQIhEiAMQZQDagwBCyALQZQDaiEOIAtBpANqIRNBACESIAxBlANqCyEMIAsgEkECdGogDCoCACAOKgIAkyATKgIAkzgCnAMLIBFBAXFFDQUCQAJAIBFBAnEEQCABIQwgDxBfDQEMAgsgCy0ANEEHcQ0AIAstADhBB3ENACALLQBCQQdxDQAgASEMIAtBQGsvAQBBB3FFDQELIAAhDAsgEUEBaw4DAQIDAAsQJAALIAtBmANqIREgC0GoA2ohDkEBIRMgDEGYA2oMAgsgC0GUA2ohESALQZwDaiEOQQIhEyAMQZQDagwBCyALQZQDaiERIAtBpANqIQ5BACETIAxBlANqCyEMIAsgE0ECdGogDCoCACARKgIAkyAOKgIAkzgCnAMLIAsqAqADIRsgCyoCnAMgB0MAAAAAIA8QXxuTIRcCfQJAIAstADRBB3ENACALLQA4QQdxDQAgCy0AQkEHcQ0AIAtBQGsvAQBBB3ENAEMAAAAADAELIAgLIRogCyAXOAKcAyALIBsgGpM4AqADIBAhEQsgDUEIahAuIA0oAgwiDCANKAIIIg5yDQALCyANKAIQIgwEQANAIAwoAgAhACAMECMgACIMDQALCyANQSBqJAAgEUEBcQt2AgF/AX0jAEEQayIEJAAgBEEIaiAAIAFBAnRB7CVqKAIAIAIQUEMAAMB/IQUCQAJAAkAgBC0ADEEBaw4CAAECCyAEKgIIIQUMAQsgBCoCCCADlEMK1yM8lCEFCyAEQRBqJAAgBUMAAAAAl0MAAAAAIAUgBVsbC3gCAX8BfSMAQRBrIgQkACAEQQhqIABBAyACQQJHQQF0IAFB/gFxQQJHGyACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwt4AgF/AX0jAEEQayIEJAAgBEEIaiAAQQEgAkECRkEBdCABQf4BcUECRxsgAhA2QwAAwH8hBQJAAkACQCAELQAMQQFrDgIAAQILIAQqAgghBQwBCyAEKgIIIAOUQwrXIzyUIQULIARBEGokACAFQwAAAAAgBSAFWxsLoA0BBH8jAEEQayIJJAAgCUEIaiACQRRqIgggA0ECRkEBdEEBIARB/gFxQQJGIgobIgsgAxA2IAYgByAKGyEHAkACQAJAAkACQAJAIAktAAxFDQAgCUEIaiAIIAsgAxA2IAktAAxBA0YNACAIIAQgAyAHEIEBIABBFGogBCADEDCSIAggBCADIAcQIpIhBkEBIQMCQAJ/AkACQAJAAkAgBA4EAgMBAAcLQQIhAwwBC0EAIQMLIAMgC0YNAgJAAkAgBA4EAgIAAQYLIABBlANqIQNBAAwCCyAAQZQDaiEDQQAMAQsgAEGYA2ohA0EBCyEAIAMqAgAgAiAAQQJ0aioClAOTIAaTIQYLIAIgBEECdEHcJWooAgBBAnRqIAY4ApwDDAULIAlBCGogCCADQQJHQQF0QQMgChsiCiADEDYCQCAJLQAMRQ0AIAlBCGogCCAKIAMQNiAJLQAMQQNGDQACfwJAAkACQCAEDgQCAgABBQsgAEGUA2ohBUEADAILIABBlANqIQVBAAwBCyAAQZgDaiEFQQELIQEgBSoCACACQZQDaiIFIAFBAnRqKgIAkyAAQRRqIAQgAxAvkyAIIAQgAyAHECGTIAggBCADIAcQgAGTIQZBASEDAkACfwJAAkACQAJAIAQOBAIDAQAHC0ECIQMMAQtBACEDCyADIAtGDQICQAJAIAQOBAICAAEGCyAAQZQDaiEDQQAMAgsgAEGUA2ohA0EADAELIABBmANqIQNBAQshACADKgIAIAUgAEECdGoqAgCTIAaTIQYLIAIgBEECdEHcJWooAgBBAnRqIAY4ApwDDAULAkACQAJAIAUEQCABLQAUQQR2QQdxIgBBBUsNCEEBIAB0IgBBMnENASAAQQlxBEAgBEECdEHcJWooAgAhACAIIAQgAyAGEEEgASAAQQJ0IgBqIgEqArwDkiEGIAAgAmogAigC9AMtABRBAnEEfSAGBSAGIAEqAswDkgs4ApwDDAkLIAEgBEECdEHsJWooAgBBAnRqIgAqArwDIAggBCADIAYQYpIhBiACKAL0Ay0AFEECcUUEQCAGIAAqAswDkiEGCwJAAkACQAJAIAQOBAEBAgAICyABKgKUAyACKgKUA5MhB0ECIQMMAgsgASoCmAMgAioCmAOTIQdBASEDAkAgBA4CAgAHC0EDIQMMAQsgASoClAMgAioClAOTIQdBACEDCyACIANBAnRqIAcgBpM4ApwDDAgLIAIvABZBD3EiBUUEQCABLQAVQQR2IQULIAVBBUYEQCABLQAUQQhxRQ0CCyABLwAVQYCAA3FBgIACRgRAIAVBAmsOAgEHAwsgBUEISw0HQQEgBXRB8wNxDQYgBUECRw0CC0EAIQACfQJ/AkACQAJAAkACfwJAAkACQCAEDgQCAgABBAsgASoClAMhB0ECIQAgAUG8A2oMAgsgASoClAMhByABQcQDagwBCyABKgKYAyEHAkACQCAEDgIAAQMLQQMhACABQcADagwBC0EBIQAgAUHIA2oLIQUgByAFKgIAkyABQbwDaiIIIABBAnRqKgIAkyIHIAIoAvQDLQAUQQJxDQUaAkAgBA4EAAIDBAELQQMhACABQdADagwECxAkAAtBASEAIAFB2ANqDAILQQIhACABQcwDagwBC0EAIQAgAUHUA2oLIQUgByAFKgIAkyABIABBAnRqKgLMA5MLIAIgBEECdCIFQfwlaigCAEECdGoqApQDIAJBFGoiACAEQQEgBhAiIAAgBEEBIAYQIZKSk0MAAAA/lCAIIAVB3CVqKAIAIgVBAnRqKgIAkiAAIAQgAyAGEEGSIQYgAiAFQQJ0aiACKAL0Ay0AFEECcQR9IAYFIAYgASAFQQJ0aioCzAOSCzgCnAMMBgsgAS8AFUGAgANxQYCAAkcNBAsgASAEQQJ0QewlaigCAEECdGoiACoCvAMgCCAEIAMgBhBikiEGIAIoAvQDLQAUQQJxRQRAIAYgACoCzAOSIQYLAkACQCAEDgQBAQMAAgsgASoClAMgAioClAOTIQdBAiEDDAMLIAEqApgDIAIqApgDkyEHQQEhAwJAIAQOAgMAAQtBAyEDDAILECQACyABKgKUAyACKgKUA5MhB0EAIQMLIAIgA0ECdGogByAGkzgCnAMMAQsgBEECdEHcJWooAgAhACAIIAQgAyAGEEEgASAAQQJ0IgBqIgEqArwDkiEGIAAgAmogAigC9AMtABRBAnEEfSAGBSAGIAEqAswDkgs4ApwDCyAJQRBqJAALcAIBfwF9IwBBEGsiBCQAIARBCGogACABQQJ0QewlaigCACACEDZDAADAfyEFAkACQAJAIAQtAAxBAWsOAgABAgsgBCoCCCEFDAELIAQqAgggA5RDCtcjPJQhBQsgBEEQaiQAIAVDAAAAACAFIAVbGwscACAAIAFBCCACpyACQiCIpyADpyADQiCIpxAVCwUAEFgACzkAIABFBEBBAA8LAn8gAUGAf3FBgL8DRiABQf8ATXJFBEBB/DtBGTYCAEF/DAELIAAgAToAAEEBCwvEAgACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABQQlrDhIACgsMCgsCAwQFDAsMDAoLBwgJCyACIAIoAgAiAUEEajYCACAAIAEoAgA2AgAPCwALIAIgAigCACIBQQRqNgIAIAAgATIBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATMBADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATAAADcDAA8LIAIgAigCACIBQQRqNgIAIAAgATEAADcDAA8LAAsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAQALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC84BAgN/An0jAEEQayIDJABBASEEIANBCGogAEH8AGoiBSAAIAFBAXRqQegAaiIBLwEAEB8CQAJAIAMqAggiByACKgIAIgZcBEAgByAHWwRAIAItAAQhAgwCCyAGIAZcIQQLIAItAAQhAiAERQ0AIAMtAAwgAkH/AXFGDQELIAUgASAGIAIQOQNAIAAtAAAiAUEEcQ0BIAAgAUEEcjoAACAAKAIQIgEEQCAAIAERAAALIABBgICA/gc2ApwBIAAoAuQDIgANAAsLIANBEGokAAtdAQR/IAAoAgAhAgNAIAIsAAAiAxBXBEBBfyEEIAAgAkEBaiICNgIAIAFBzJmz5gBNBH9BfyADQTBrIgMgAUEKbCIEaiADIARB/////wdzShsFIAQLIQEMAQsLIAELrhQCEn8BfiMAQdAAayIIJAAgCCABNgJMIAhBN2ohFyAIQThqIRQCQAJAAkACQANAIAEhDSAHIA5B/////wdzSg0BIAcgDmohDgJAAkACQCANIgctAAAiCQRAA0ACQAJAIAlB/wFxIgFFBEAgByEBDAELIAFBJUcNASAH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IQEgAEIANwIEIAAgATYCACABIAA2AgQgAkEQaiQAIAALGwEBfyAABEAgACgCACIBBEAgARAjCyAAECMLC0kBAn9BBBAeIQFBIBAeIgBBADYCHCAAQoCAgICAgIDAPzcCFCAAQgA3AgwgAEEAOgAIIABBAzYCBCAAQQA2AgAgASAANgIAIAELIAAgAkEFR0EAIAIbRQRAQbgwIAMgBBBJDwsgAyAEEHALIgEBfiABIAKtIAOtQiCGhCAEIAARFQAiBUIgiKckASAFpwuoAQEFfyAAKAJUIgMoAgAhBSADKAIEIgQgACgCFCAAKAIcIgdrIgYgBCAGSRsiBgRAIAUgByAGECsaIAMgAygCACAGaiIFNgIAIAMgAygCBCAGayIENgIECyAEIAIgAiAESxsiBARAIAUgASAEECsaIAMgAygCACAEaiIFNgIAIAMgAygCBCAEazYCBAsgBUEAOgAAIAAgACgCLCIBNgIcIAAgATYCFCACCwQAQgALBABBAAuKBQIGfgJ/IAEgASgCAEEHakF4cSIBQRBqNgIAIAAhCSABKQMAIQMgASkDCCEGIwBBIGsiCCQAAkAgBkL///////////8AgyIEQoCAgICAgMCAPH0gBEKAgICAgIDA/8MAfVQEQCAGQgSGIANCPIiEIQQgA0L//////////w+DIgNCgYCAgICAgIAIWgRAIARCgYCAgICAgIDAAHwhAgwCCyAEQoCAgICAgICAQH0hAiADQoCAgICAgICACFINASACIARCAYN8IQIMAQsgA1AgBEKAgICAgIDA//8AVCAEQoCAgICAgMD//wBRG0UEQCAGQgSGIANCPIiEQv////////8Dg0KAgICAgICA/P8AhCECDAELQoCAgICAgID4/wAhAiAEQv///////7//wwBWDQBCACECIARCMIinIgBBkfcASQ0AIAMhAiAGQv///////z+DQoCAgICAgMAAhCIFIQcCQCAAQYH3AGsiAUHAAHEEQCACIAFBQGqthiEHQgAhAgwBCyABRQ0AIAcgAa0iBIYgAkHAACABa62IhCEHIAIgBIYhAgsgCCACNwMQIAggBzcDGAJAQYH4ACAAayIAQcAAcQRAIAUgAEFAaq2IIQNCACEFDAELIABFDQAgBUHAACAAa62GIAMgAK0iAoiEIQMgBSACiCEFCyAIIAM3AwAgCCAF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ASAAKAIAIQAgASACQQFxBH8gASgCACAAaigCAAUgAAsRCwALYQECfyMAQRBrIgIkACABIAAoAgQiA0EBdWohASAAKAIAIQAgAiABIANBAXEEfyABKAIAIABqKAIABSAACxEBAEEQEB4iACACKQMINwMIIAAgAikDADcDACACQRBqJAAgAAtjAQJ/IwBBEGsiAyQAIAEgACgCBCIEQQF1aiEBIAAoAgAhACADIAEgAiAEQQFxBH8gASgCACAAaigCAAUgAAsRAwBBEBAeIgAgAykDCDcDCCAAIAMpAwA3AwAgA0EQaiQAIAALNwEBfyABIAAoAgQiA0EBdWohASAAKAIAIQAgASACIANBAXEEfyABKAIAIABqKAIABSAACxEEAAs5AQF/IAEgACgCBCIEQQF1aiEBIAAoAgAhACABIAIgAyAEQQFxBH8gASgCACAAaigCAAUgAAsRCAALCQAgASAAEQIACwUAQcM7Cw8AIAEgACgCAGogAjYCAAsNACABIAAoAgBqKAIACxgBAX9BEBAeIgBCADcDCCAAQQA2AgAgAAsYAQF/QRAQHiIAQgA3AwAgAEIANwMIIAALDABBMBAeQQBBMBAqCzcBAX8gASAAKAIEIgNBAXVqIQEgACgCACEAIAEgAiADQQFxBH8gASgCACAAaigCAAUgAAsRHgALBQBBvjsLIQAgACABKAIAIAEgASwAC0EASBtBuzsgAigCABAQNgIACyoBAX9BDBAeIgFBADoABCABIAAoAgA2AgggAEEANgIAIAFB2Cc2AgAgAQsFAEG7OwsFAEG4OwshACAAIAEoAgAgASABLAALQQBIG0GkOyACKAIAEBA2AgAL2AEBBH8jAEEgayIDJAAgASgCACIEQfD///8HSQRAAkACQCAEQQtPBEAgBEEPckEBaiIFEB4hBiADIAVBgICAgHhyNgIQIAMgBjYCCCADIAQ2AgwgBCAGaiEFDAELIAMgBDoAEyADQQhqIgYgBGohBSAERQ0BCyAGIAFBBGogBBArGgsgBUEAOgAAIAMgAjYCACADQRhqIANBCGogAyAAEQMAIAMoAhgQHSADKAIYIgAQBiADKAIAEAYgAywAE0EASARAIAMoAggQIwsgA0EgaiQAIAAPCxACAAsqAQF/QQwQHiIBQQA6AAQgASAAKAIANgIIIABBADYCACABQeAmNgIA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AkEIaiAIIAYQHyACIAcgAC8AABAfQQEhAyACKgIIIgogAioCACILXAR/IAogClsNAyALIAtcBSADC0UNAiACLQAMIAItAARHDQILIABBAmohAEEBIQMgBCEGQQEhBCAGRQ0ACyABLwB6IgBBB3FFBEAgBS0AekEHcUUNAgsgCCAAECAiCiAHIAUvAHoQICILWw0BIAogClsNACALIAtcDQELIAFBFGogBUEUakHoABArGiABQfwAaiAFQfwAahCgAQNAIAEtAAAiAEEEcQ0BIAEgAEEEcjoAACABKAIQIgAEQCABIAARAAALIAFBgICA/gc2ApwBIAEoAuQDIgENAAsLIAJBEGokAAvGAwEEfyMAQaAEayICJAAgACgCBCEBIABBADYCBCABBEAgASABKAIAKAIEEQAACyAAKAIIIQEgAEEANgIIIAEEQCABIAEoAgAoAgQRAAALAkAgACgCACIAKALoAyAAKALsA0YEQCAAKALkAw0BIAAgAkEYaiAAKAL0AxBcIgEpAgA3AgAgACABKAIQNgIQIAAgASkCCDcCCCAAQRRqIAFBFGpB6AAQKxogACABKQKMATcCjAEgACABKQKEATcChAEgACABKQJ8NwJ8IAEoApQBIQQgAUEANgKUASAAKAKUASEDIAAgBDYClAEgAwRAIAMQWwsgAEGYAWogAUGYAWpB0AIQKxogACgC6AMiAwRAIAAgAzYC7AMgAxAjCyAAIAEoAugDNgLoAyAAIAEoAuwDNgLsAyAAIAEoAvADNgLwAyABQQA2AvADIAFCADcC6AMgACABKQL8AzcC/AMgACABKQL0AzcC9AMgACABKAKEBDYChAQgASgClAEhACABQQA2ApQBIAAEQCAAEFsLIAJBoARqJAAPCyACQfAcNgIQIABBBUHYJSACQRBqECwQJAALIAJB5hE2AgAgAEEFQdglIAIQLBAkAAsLAEEMEB4gABCiAQsLAEEMEB5BABCiAQsNACAAKAIALQAIQQFxCwoAIAAoAgAoAhQLGQAgAUH/AXEEQBACAAsgACgCACgCEEEBcQsYACAAKAIAIgAgAC0ACEH+AXEgAXI6AAgLJgAgASAAKAIAIgAoAhRHBEAgACABNgIUIAAgACgCDEEBajYCDAsLkgEBAn8jAEEQayICJAAgACgCACEAIAFDAAAAAGAEQCABIAAqAhhcBEAgACABOAIYIAAgACgCDEEBajYCDAsgAkEQaiQADwsgAkGIFDYCACMAQRBrIgMkACADIAI2AgwCQCAARQRAQbgwQdglIAIQSRoMAQsgAEEAQQVB2CUgAiAAKAIEEQ0AGgsgA0EQaiQAECQACz8AIAFB/wFxRQRAIAIgACgCACIAKAIQIgFBAXFHBEAgACABQX5xIAJyNgIQIAAgACgCDEEBajYCDAsPCxACAAsL4CYjAEGACAuBHk9ubHkgbGVhZiBub2RlcyB3aXRoIGN1c3RvbSBtZWFzdXJlIGZ1bmN0aW9ucyBzaG91bGQgbWFudWFsbHkgbWFyayB0aGVtc2VsdmVzIGFzIGRpcnR5AGlzRGlydHkAbWFya0RpcnR5AGRlc3Ryb3kAc2V0RGlzcGxheQBnZXREaXNwbGF5AHNldEZsZXgALSsgICAwWDB4AC0wWCswWCAwWC0weCsweCAweABzZXRGbGV4R3JvdwBnZXRGbGV4R3JvdwBzZXRPdmVyZmxvdwBnZXRPdmVyZmxvdwBoYXNOZXdMYXlvdXQAY2FsY3VsYXRlTGF5b3V0AGdldENvbXB1dGVkTGF5b3V0AHVuc2lnbmVkIHNob3J0AGdldENoaWxkQ291bnQAdW5zaWduZWQgaW50AHNldEp1c3RpZnlDb250ZW50AGdldEp1c3RpZnlDb250ZW50AGF2YWlsYWJsZUhlaWdodCBpcyBpbmRlZmluaXRlIHNvIGhlaWdodFNpemluZ01vZGUgbXVzdCBiZSBTaXppbmdNb2RlOjpNYXhDb250ZW50AGF2YWlsYWJsZVdpZHRoIGlzIGluZGVmaW5pdGUgc28gd2lkdGhTaXppbmdNb2RlIG11c3QgYmUgU2l6aW5nTW9kZTo6TWF4Q29udGVudABzZXRBbGlnbkNvbnRlbnQAZ2V0QWxpZ25Db250ZW50AGdldFBhcmVudABpbXBsZW1lbnQAc2V0TWF4SGVpZ2h0UGVyY2VudABzZXRIZWlnaHRQZXJjZW50AHNldE1pbkhlaWdodFBlcmNlbnQAc2V0RmxleEJhc2lzUGVyY2VudABzZXRHYXBQZXJjZW50AHNldFBvc2l0aW9uUGVyY2VudABzZXRNYXJnaW5QZXJjZW50AHNldE1heFdpZHRoUGVyY2VudABzZXRXaWR0aFBlcmNlbnQAc2V0TWluV2lkdGhQZXJjZW50AHNldFBhZGRpbmdQZXJjZW50AGhhbmRsZS50eXBlKCkgPT0gU3R5bGVWYWx1ZUhhbmRsZTo6VHlwZTo6UG9pbnQgfHwgaGFuZGxlLnR5cGUoKSA9PSBTdHlsZVZhbHVlSGFuZGxlOjpUeXBlOjpQZXJjZW50AGNyZWF0ZURlZmF1bHQAdW5pdAByaWdodABoZWlnaHQAc2V0TWF4SGVpZ2h0AGdldE1heEhlaWdodABzZXRIZWlnaHQAZ2V0SGVpZ2h0AHNldE1pbkhlaWdodABnZXRNaW5IZWlnaHQAZ2V0Q29tcHV0ZWRIZWlnaHQAZ2V0Q29tcHV0ZWRSaWdodABsZWZ0AGdldENvbXB1dGVkTGVmdAByZXNldABfX2Rlc3RydWN0AGZsb2F0AHVpbnQ2NF90AHVzZVdlYkRlZmF1bHRzAHNldFVzZVdlYkRlZmF1bHRzAHNldEFsaWduSXRlbXMAZ2V0QWxpZ25JdGVtcwBzZXRGbGV4QmFzaXMAZ2V0RmxleEJhc2lzAENhbm5vdCBnZXQgbGF5b3V0IHByb3BlcnRpZXMgb2YgbXVsdGktZWRnZSBzaG9ydGhhbmRzAHNldFBvaW50U2NhbGVGYWN0b3IATWVhc3VyZUNhbGxiYWNrV3JhcHBlcgBEaXJ0aWVkQ2FsbGJhY2tXcmFwcGVyAENhbm5vdCByZXNldCBhIG5vZGUgc3RpbGwgYXR0YWNoZWQgdG8gYSBvd25lcgBzZXRCb3JkZXIAZ2V0Qm9yZGVyAGdldENvbXB1dGVkQm9yZGVyAGdldE51bWJlcgBoYW5kbGUudHlwZSgpID09IFN0eWxlVmFsdWVIYW5kbGU6OlR5cGU6Ok51bWJlcgB1bnNpZ25lZCBjaGFyAHRvcABnZXRDb21wdXRlZFRvcABzZXRGbGV4V3JhcABnZXRGbGV4V3JhcABzZXRHYXAAZ2V0R2FwACVwAHNldEhlaWdodEF1dG8Ac2V0RmxleEJhc2lzQXV0bwBzZXRQb3NpdGlvbkF1dG8Ac2V0TWFyZ2luQXV0bwBzZXRXaWR0aEF1dG8AU2NhbGUgZmFjdG9yIHNob3VsZCBub3QgYmUgbGVzcyB0aGFuIHplcm8Ac2V0QXNwZWN0UmF0aW8AZ2V0QXNwZWN0UmF0aW8Ac2V0UG9zaXRpb24AZ2V0UG9zaXRpb24Abm90aWZ5T25EZXN0cnVjdGlvbgBzZXRGbGV4RGlyZWN0aW9uAGdldEZsZXhEaXJlY3Rpb24Ac2V0RGlyZWN0aW9uAGdldERpcmVjdGlvbgBzZXRNYXJnaW4AZ2V0TWFyZ2luAGdldENvbXB1dGVkTWFyZ2luAG1hcmtMYXlvdXRTZWVuAG5hbgBib3R0b20AZ2V0Q29tcHV0ZWRCb3R0b20AYm9vbABlbXNjcmlwdGVuOjp2YWwAc2V0RmxleFNocmluawBnZXRGbGV4U2hyaW5rAHNldEFsd2F5c0Zvcm1zQ29udGFpbmluZ0Jsb2NrAE1lYXN1cmVDYWxsYmFjawBEaXJ0aWVkQ2FsbGJhY2sAZ2V0TGVuZ3RoAHdpZHRoAHNldE1heFdpZHRoAGdldE1heFdpZHRoAHNldFdpZHRoAGdldFdpZHRoAHNldE1pbldpZHRoAGdldE1pbldpZHRoAGdldENvbXB1dGVkV2lkdGgAcHVzaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1NtYWxsVmFsdWVCdWZmZXIuaAAvaG9tZS9ydW5uZXIvd29yay95b2dhL3lvZ2EvamF2YXNjcmlwdC8uLi95b2dhL3N0eWxlL1N0eWxlVmFsdWVQb29sLmgAdW5zaWduZWQgbG9uZwBzZXRCb3hTaXppbmcAZ2V0Qm94U2l6aW5nAHN0ZDo6d3N0cmluZwBzdGQ6OnN0cmluZwBzdGQ6OnUxNnN0cmluZwBzdGQ6OnUzMnN0cmluZwBzZXRQYWRkaW5nAGdldFBhZGRpbmcAZ2V0Q29tcHV0ZWRQYWRkaW5nAFRyaWVkIHRvIGNvbnN0cnVjdCBZR05vZGUgd2l0aCBudWxsIGNvbmZpZwBBdHRlbXB0aW5nIHRvIGNvbnN0cnVjdCBOb2RlIHdpdGggbnVsbCBjb25maWcAY3JlYXRlV2l0aENvbmZpZwBpbmYAc2V0QWxpZ25TZWxmAGdldEFsaWduU2VsZgBTaXplAHZhbHVlAFZhbHVlAGNyZWF0ZQBtZWFzdXJlAHNldFBvc2l0aW9uVHlwZQBnZXRQb3NpdGlvblR5cGUAaXNSZWZlcmVuY2VCYXNlbGluZQBzZXRJc1JlZmVyZW5jZUJhc2VsaW5lAGNvcHlTdHlsZQBkb3VibGUATm9kZQBleHRlbmQAaW5zZXJ0Q2hpbGQAZ2V0Q2hpbGQAcmVtb3ZlQ2hpbGQAdm9pZABzZXRFeHBlcmltZW50YWxGZWF0dXJlRW5hYmxlZABpc0V4cGVyaW1lbnRhbEZlYXR1cmVFbmFibGVkAGRpcnRpZWQAQ2Fubm90IHJlc2V0IGEgbm9kZSB3aGljaCBzdGlsbCBoYXMgY2hpbGRyZW4gYXR0YWNoZWQAdW5zZXRNZWFzdXJlRnVuYwB1bnNldERpcnRpZWRGdW5jAHNldEVycmF0YQBnZXRFcnJhdGEATWVhc3VyZSBmdW5jdGlvbiByZXR1cm5lZCBhbiBpbnZhbGlkIGRpbWVuc2lvbiB0byBZb2dhOiBbd2lkdGg9JWYsIGhlaWdodD0lZl0ARXhwZWN0IGN1c3RvbSBiYXNlbGluZSBmdW5jdGlvbiB0byBub3QgcmV0dXJuIE5hTgBOQU4ASU5GAGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHNob3J0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBzaG9ydD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1bnNpZ25lZCBpbnQ+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PGZsb2F0PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50OF90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQ4X3Q+AGVtc2NyaXB0ZW46Om1lbW9yeV92aWV3PHVpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzxpbnQxNl90PgBlbXNjcmlwdGVuOjptZW1vcnlfdmlldzx1aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8aW50MzJfdD4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8Y2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8dW5zaWduZWQgY2hhcj4Ac3RkOjpiYXNpY19zdHJpbmc8dW5zaWduZWQgY2hhcj4AZW1zY3JpcHRlbjo6bWVtb3J5X3ZpZXc8c2lnbmVk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";if(!OA(rA)){var kA=rA;rA=C.locateFile?C.locateFile(kA,H):H+kA}function f(){var Y=rA;try{if(Y==rA&&u)return new Uint8Array(u);if(OA(Y))try{var Z=LC(Y.slice(37)),S=new Uint8Array(Z.length);for(Y=0;Y<Z.length;++Y)S[Y]=Z.charCodeAt(Y);var V=S}catch(a){throw Error("Converting base64 string to bytes failed.")}else V=void 0;var b=V;if(b)return b;throw"both async and sync fetching of the wasm failed"}catch(a){_A(a)}}function NA(){return u||typeof fetch!="function"?Promise.resolve().then(function(){return f()}):fetch(rA,{credentials:"same-origin"}).then(function(Y){if(!Y.ok)throw"failed to load wasm binary file at '"+rA+"'";return Y.arrayBuffer()}).catch(function(){return f()})}function DA(Y){for(;0<Y.length;)Y.shift()(C)}function WA(Y){if(Y===void 0)return"_unknown";Y=Y.replace(/[^a-zA-Z0-9_]/g,"$");var Z=Y.charCodeAt(0);return 48<=Z&&57>=Z?"_"+Y:Y}function hA(Y,Z){return Y=WA(Y),function(){return Z.apply(this,arguments)}}var GB=[{},{value:void 0},{value:null},{value:!0},{value:!1}],bA=[];function hB(Y){var Z=Error,S=hA(Y,function(V){this.name=Y,this.message=V,V=Error(V).stack,V!==void 0&&(this.stack=this.toString()+`
24
+ `+V.replace(/^Error(:[^\n]*)?\n/,""))});return S.prototype=Object.create(Z.prototype),S.prototype.constructor=S,S.prototype.toString=function(){return this.message===void 0?this.name:this.name+": "+this.message},S}var TB=void 0;function EA(Y){throw new TB(Y)}var CA=(Y)=>{return Y||EA("Cannot use deleted val. handle = "+Y),GB[Y].value},e=(Y)=>{switch(Y){case void 0:return 1;case null:return 2;case!0:return 3;case!1:return 4;default:var Z=bA.length?bA.pop():GB.length;return GB[Z]={ga:1,value:Y},Z}},UA=void 0,lA=void 0;function VA(Y){for(var Z="";v[Y];)Z+=lA[v[Y++]];return Z}var MB=[];function bB(){for(;MB.length;){var Y=MB.pop();Y.M.$=!1,Y.delete()}}var VB=void 0,PA={};function bQ(Y,Z){for(Z===void 0&&EA("ptr should not be undefined");Y.R;)Z=Y.ba(Z),Y=Y.R;return Z}var OQ={};function SQ(Y){Y=d0(Y);var Z=VA(Y);return wI(Y),Z}function L0(Y,Z){var S=OQ[Y];return S===void 0&&EA(Z+" has unknown type "+SQ(Y)),S}function vI(){}var GC=!1;function ND(Y){--Y.count.value,Y.count.value===0&&(Y.T?Y.U.W(Y.T):Y.P.N.W(Y.O))}function kE(Y,Z,S){if(Z===S)return Y;if(S.R===void 0)return null;return Y=kE(Y,Z,S.R),Y===null?null:S.na(Y)}var Bg={};function Qg(Y,Z){return Z=bQ(Y,Z),PA[Z]}var NC=void 0;function u0(Y){throw new NC(Y)}function K0(Y,Z){return Z.P&&Z.O||u0("makeClassHandle requires ptr and ptrType"),!!Z.U!==!!Z.T&&u0("Both smartPtrType and smartPtr must be specified"),Z.count={value:1},FI(Object.create(Y,{M:{value:Z}}))}function FI(Y){if(typeof FinalizationRegistry>"u")return FI=(Z)=>Z,Y;return GC=new FinalizationRegistry((Z)=>{ND(Z.M)}),FI=(Z)=>{var S=Z.M;return S.T&&GC.register(Z,{M:S},Z),Z},vI=(Z)=>{GC.unregister(Z)},FI(Y)}var wQ={};function p0(Y){for(;Y.length;){var Z=Y.pop();Y.pop()(Z)}}function _I(Y){return this.fromWireType(r[Y>>2])}var K={},P={};function AA(Y,Z,S){function V(n){n=S(n),n.length!==Y.length&&u0("Mismatched type converter count");for(var RA=0;RA<Y.length;++RA)yA(Y[RA],n[RA])}Y.forEach(function(n){P[n]=Z});var b=Array(Z.length),a=[],QA=0;Z.forEach((n,RA)=>{OQ.hasOwnProperty(n)?b[RA]=OQ[n]:(a.push(n),K.hasOwnProperty(n)||(K[n]=[]),K[n].push(()=>{b[RA]=OQ[n],++QA,QA===a.length&&V(b)}))}),a.length===0&&V(b)}function LA(Y){switch(Y){case 1:return 0;case 2:return 1;case 4:return 2;case 8:return 3;default:throw TypeError("Unknown type size: "+Y)}}function yA(Y,Z,S={}){if(!("argPackAdvance"in Z))throw TypeError("registerType registeredInstance requires argPackAdvance");var V=Z.name;if(Y||EA('type "'+V+'" must have a positive integer typeid pointer'),OQ.hasOwnProperty(Y)){if(S.ua)return;EA("Cannot register type '"+V+"' twice")}OQ[Y]=Z,delete P[Y],K.hasOwnProperty(Y)&&(Z=K[Y],delete K[Y],Z.forEach((b)=>b()))}function QB(Y){EA(Y.M.P.N.name+" instance already deleted")}function iA(){}function ZB(Y,Z,S){if(Y[Z].S===void 0){var V=Y[Z];Y[Z]=function(){return Y[Z].S.hasOwnProperty(arguments.length)||EA("Function '"+S+"' called with an invalid number of arguments ("+arguments.length+") - expects one of ("+Y[Z].S+")!"),Y[Z].S[arguments.length].apply(this,arguments)},Y[Z].S=[],Y[Z].S[V.Z]=V}}function CB(Y,Z){C.hasOwnProperty(Y)?(EA("Cannot register public name '"+Y+"' twice"),ZB(C,Y,Y),C.hasOwnProperty(void 0)&&EA("Cannot register multiple overloads of a function with the same number of arguments (undefined)!"),C[Y].S[void 0]=Z):C[Y]=Z}function $Q(Y,Z,S,V,b,a,QA,n){this.name=Y,this.constructor=Z,this.X=S,this.W=V,this.R=b,this.pa=a,this.ba=QA,this.na=n,this.ja=[]}function yQ(Y,Z,S){for(;Z!==S;)Z.ba||EA("Expected null or instance of "+S.name+", got an instance of "+Z.name),Y=Z.ba(Y),Z=Z.R;return Y}function HC(Y,Z){if(Z===null)return this.ea&&EA("null is not a valid "+this.name),0;return Z.M||EA('Cannot pass "'+Ig(Z)+'" as a '+this.name),Z.M.O||EA("Cannot pass deleted object as a pointer of type "+this.name),yQ(Z.M.O,Z.M.P.N,this.N)}function i0(Y,Z){if(Z===null){if(this.ea&&EA("null is not a valid "+this.name),this.da){var S=this.fa();return Y!==null&&Y.push(this.W,S),S}return 0}if(Z.M||EA('Cannot pass "'+Ig(Z)+'" as a '+this.name),Z.M.O||EA("Cannot pass deleted object as a pointer of type "+this.name),!this.ca&&Z.M.P.ca&&EA("Cannot convert argument of type "+(Z.M.U?Z.M.U.name:Z.M.P.name)+" to parameter type "+this.name),S=yQ(Z.M.O,Z.M.P.N,this.N),this.da)switch(Z.M.T===void 0&&EA("Passing raw pointer to smart pointer is illegal"),this.Ba){case 0:Z.M.U===this?S=Z.M.T:EA("Cannot convert argument of type "+(Z.M.U?Z.M.U.name:Z.M.P.name)+" to parameter type "+this.name);break;case 1:S=Z.M.T;break;case 2:if(Z.M.U===this)S=Z.M.T;else{var V=Z.clone();S=this.xa(S,e(function(){V.delete()})),Y!==null&&Y.push(this.W,S)}break;default:EA("Unsupporting sharing policy")}return S}function rI(Y,Z){if(Z===null)return this.ea&&EA("null is not a valid "+this.name),0;return Z.M||EA('Cannot pass "'+Ig(Z)+'" as a '+this.name),Z.M.O||EA("Cannot pass deleted object as a pointer of type "+this.name),Z.M.P.ca&&EA("Cannot convert argument of type "+Z.M.P.name+" to parameter type "+this.name),yQ(Z.M.O,Z.M.P.N,this.N)}function VI(Y,Z,S,V){this.name=Y,this.N=Z,this.ea=S,this.ca=V,this.da=!1,this.W=this.xa=this.fa=this.ka=this.Ba=this.wa=void 0,Z.R!==void 0?this.toWireType=i0:(this.toWireType=V?HC:rI,this.V=null)}function HD(Y,Z){C.hasOwnProperty(Y)||u0("Replacing nonexistant public symbol"),C[Y]=Z,C[Y].Z=void 0}function l1(Y,Z){var S=[];return function(){if(S.length=0,Object.assign(S,arguments),Y.includes("j")){var V=C["dynCall_"+Y];V=S&&S.length?V.apply(null,[Z].concat(S)):V.call(null,Z)}else V=GA.get(Z).apply(null,S);return V}}function dB(Y,Z){Y=VA(Y);var S=Y.includes("j")?l1(Y,Z):GA.get(Z);return typeof S!="function"&&EA("unknown function pointer with signature "+Y+": "+Z),S}var zE=void 0;function sI(Y,Z){function S(a){b[a]||OQ[a]||(P[a]?P[a].forEach(S):(V.push(a),b[a]=!0))}var V=[],b={};throw Z.forEach(S),new zE(Y+": "+V.map(SQ).join([", "]))}function JD(Y,Z,S,V,b){var a=Z.length;2>a&&EA("argTypes array size mismatch! Must at least get return value and 'this' types!");var QA=Z[1]!==null&&S!==null,n=!1;for(S=1;S<Z.length;++S)if(Z[S]!==null&&Z[S].V===void 0){n=!0;break}var RA=Z[0].name!=="void",uA=a-2,zA=Array(uA),fA=[],UB=[];return function(){if(arguments.length!==uA&&EA("function "+Y+" called with "+arguments.length+" arguments, expected "+uA+" args!"),UB.length=0,fA.length=QA?2:1,fA[0]=b,QA){var OB=Z[1].toWireType(UB,this);fA[1]=OB}for(var SB=0;SB<uA;++SB)zA[SB]=Z[SB+2].toWireType(UB,arguments[SB]),fA.push(zA[SB]);if(SB=V.apply(null,fA),n)p0(UB);else for(var EQ=QA?1:2;EQ<Z.length;EQ++){var eQ=EQ===1?OB:zA[EQ-2];Z[EQ].V!==null&&Z[EQ].V(eQ)}return OB=RA?Z[0].fromWireType(SB):void 0,OB}}function OE(Y,Z){for(var S=[],V=0;V<Y;V++)S.push(FA[Z+4*V>>2]);return S}function JC(Y){4<Y&&--GB[Y].ga===0&&(GB[Y]=void 0,bA.push(Y))}function Ig(Y){if(Y===null)return"null";var Z=typeof Y;return Z==="object"||Z==="array"||Z==="function"?Y.toString():""+Y}function Eg(Y,Z){switch(Z){case 2:return function(S){return this.fromWireType(MA[S>>2])};case 3:return function(S){return this.fromWireType(wA[S>>3])};default:throw TypeError("Unknown float type: "+Y)}}function MC(Y,Z,S){switch(Z){case 0:return S?function(V){return O[V]}:function(V){return v[V]};case 1:return S?function(V){return d[V>>1]}:function(V){return l[V>>1]};case 2:return S?function(V){return r[V>>2]}:function(V){return FA[V>>2]};default:throw TypeError("Unknown integer type: "+Y)}}function f2(Y,Z){for(var S="",V=0;!(V>=Z/2);++V){var b=d[Y+2*V>>1];if(b==0)break;S+=String.fromCharCode(b)}return S}function z4(Y,Z,S){if(S===void 0&&(S=2147483647),2>S)return 0;S-=2;var V=Z;S=S<2*Y.length?S/2:Y.length;for(var b=0;b<S;++b)d[Z>>1]=Y.charCodeAt(b),Z+=2;return d[Z>>1]=0,Z-V}function O4(Y){return 2*Y.length}function a1(Y,Z){for(var S=0,V="";!(S>=Z/4);){var b=r[Y+4*S>>2];if(b==0)break;++S,65536<=b?(b-=65536,V+=String.fromCharCode(55296|b>>10,56320|b&1023)):V+=String.fromCharCode(b)}return V}function j2(Y,Z,S){if(S===void 0&&(S=2147483647),4>S)return 0;var V=Z;S=V+S-4;for(var b=0;b<Y.length;++b){var a=Y.charCodeAt(b);if(55296<=a&&57343>=a){var QA=Y.charCodeAt(++b);a=65536+((a&1023)<<10)|QA&1023}if(r[Z>>2]=a,Z+=4,Z+4>S)break}return r[Z>>2]=0,Z-V}function o1(Y){for(var Z=0,S=0;S<Y.length;++S){var V=Y.charCodeAt(S);55296<=V&&57343>=V&&++S,Z+=4}return Z}var S4={};function TA(Y){var Z=S4[Y];return Z===void 0?VA(Y):Z}var UC=[];function SE(Y){var Z=UC.length;return UC.push(Y),Z}function n1(Y,Z){for(var S=Array(Y),V=0;V<Y;++V)S[V]=L0(FA[Z+4*V>>2],"parameter "+V);return S}var Cg=[],R0=[null,[],[]];TB=C.BindingError=hB("BindingError"),C.count_emval_handles=function(){for(var Y=0,Z=5;Z<GB.length;++Z)GB[Z]!==void 0&&++Y;return Y},C.get_first_emval=function(){for(var Y=5;Y<GB.length;++Y)if(GB[Y]!==void 0)return GB[Y];return null},UA=C.PureVirtualError=hB("PureVirtualError");for(var x2=Array(256),gg=0;256>gg;++gg)x2[gg]=String.fromCharCode(gg);lA=x2,C.getInheritedInstanceCount=function(){return Object.keys(PA).length},C.getLiveInheritedInstances=function(){var Y=[],Z;for(Z in PA)PA.hasOwnProperty(Z)&&Y.push(PA[Z]);return Y},C.flushPendingDeletes=bB,C.setDelayFunction=function(Y){VB=Y,MB.length&&VB&&VB(bB)},NC=C.InternalError=hB("InternalError"),iA.prototype.isAliasOf=function(Y){if(!(this instanceof iA&&Y instanceof iA))return!1;var Z=this.M.P.N,S=this.M.O,V=Y.M.P.N;for(Y=Y.M.O;Z.R;)S=Z.ba(S),Z=Z.R;for(;V.R;)Y=V.ba(Y),V=V.R;return Z===V&&S===Y},iA.prototype.clone=function(){if(this.M.O||QB(this),this.M.aa)return this.M.count.value+=1,this;var Y=FI,Z=Object,S=Z.create,V=Object.getPrototypeOf(this),b=this.M;return Y=Y(S.call(Z,V,{M:{value:{count:b.count,$:b.$,aa:b.aa,O:b.O,P:b.P,T:b.T,U:b.U}}})),Y.M.count.value+=1,Y.M.$=!1,Y},iA.prototype.delete=function(){this.M.O||QB(this),this.M.$&&!this.M.aa&&EA("Object already scheduled for deletion"),vI(this),ND(this.M),this.M.aa||(this.M.T=void 0,this.M.O=void 0)},iA.prototype.isDeleted=function(){return!this.M.O},iA.prototype.deleteLater=function(){return this.M.O||QB(this),this.M.$&&!this.M.aa&&EA("Object already scheduled for deletion"),MB.push(this),MB.length===1&&VB&&VB(bB),this.M.$=!0,this},VI.prototype.qa=function(Y){return this.ka&&(Y=this.ka(Y)),Y},VI.prototype.ha=function(Y){this.W&&this.W(Y)},VI.prototype.argPackAdvance=8,VI.prototype.readValueFromPointer=_I,VI.prototype.deleteObject=function(Y){if(Y!==null)Y.delete()},VI.prototype.fromWireType=function(Y){function Z(){return this.da?K0(this.N.X,{P:this.wa,O:S,U:this,T:Y}):K0(this.N.X,{P:this,O:Y})}var S=this.qa(Y);if(!S)return this.ha(Y),null;var V=Qg(this.N,S);if(V!==void 0){if(V.M.count.value===0)return V.M.O=S,V.M.T=Y,V.clone();return V=V.clone(),this.ha(Y),V}if(V=this.N.pa(S),V=Bg[V],!V)return Z.call(this);V=this.ca?V.la:V.pointerType;var b=kE(S,this.N,V.N);return b===null?Z.call(this):this.da?K0(V.N.X,{P:V,O:b,U:this,T:Y}):K0(V.N.X,{P:V,O:b})},zE=C.UnboundTypeError=hB("UnboundTypeError");var LC=typeof atob=="function"?atob:function(Y){var Z="",S=0;Y=Y.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var V="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(Y.charAt(S++)),b="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(Y.charAt(S++)),a="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(Y.charAt(S++)),QA="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(Y.charAt(S++));V=V<<2|b>>4,b=(b&15)<<4|a>>2;var n=(a&3)<<6|QA;Z+=String.fromCharCode(V),a!==64&&(Z+=String.fromCharCode(b)),QA!==64&&(Z+=String.fromCharCode(n))}while(S<Y.length);return Z},r1={l:function(Y,Z,S,V){_A("Assertion failed: "+(Y?z(v,Y):"")+", at: "+[Z?Z?z(v,Z):"":"unknown filename",S,V?V?z(v,V):"":"unknown function"])},q:function(Y,Z,S){Y=VA(Y),Z=L0(Z,"wrapper"),S=CA(S);var V=[].slice,b=Z.N,a=b.X,QA=b.R.X,n=b.R.constructor;Y=hA(Y,function(){b.R.ja.forEach(function(uA){if(this[uA]===QA[uA])throw new UA("Pure virtual function "+uA+" must be implemented in JavaScript")}.bind(this)),Object.defineProperty(this,"__parent",{value:a}),this.__construct.apply(this,V.call(arguments))}),a.__construct=function(){this===a&&EA("Pass correct 'this' to __construct");var uA=n.implement.apply(void 0,[this].concat(V.call(arguments)));vI(uA);var zA=uA.M;uA.notifyOnDestruction(),zA.aa=!0,Object.defineProperties(this,{M:{value:zA}}),FI(this),uA=zA.O,uA=bQ(b,uA),PA.hasOwnProperty(uA)?EA("Tried to register registered instance: "+uA):PA[uA]=this},a.__destruct=function(){this===a&&EA("Pass correct 'this' to __destruct"),vI(this);var uA=this.M.O;uA=bQ(b,uA),PA.hasOwnProperty(uA)?delete PA[uA]:EA("Tried to unregister unregistered instance: "+uA)},Y.prototype=Object.create(a);for(var RA in S)Y.prototype[RA]=S[RA];return e(Y)},j:function(Y){var Z=wQ[Y];delete wQ[Y];var{fa:S,W:V,ia:b}=Z,a=b.map((QA)=>QA.ta).concat(b.map((QA)=>QA.za));AA([Y],a,(QA)=>{var n={};return b.forEach((RA,uA)=>{var zA=QA[uA],fA=RA.ra,UB=RA.sa,OB=QA[uA+b.length],SB=RA.ya,EQ=RA.Aa;n[RA.oa]={read:(eQ)=>zA.fromWireType(fA(UB,eQ)),write:(eQ,W0)=>{var WI=[];SB(EQ,eQ,OB.toWireType(WI,W0)),p0(WI)}}}),[{name:Z.name,fromWireType:function(RA){var uA={},zA;for(zA in n)uA[zA]=n[zA].read(RA);return V(RA),uA},toWireType:function(RA,uA){for(var zA in n)if(!(zA in uA))throw TypeError('Missing field: "'+zA+'"');var fA=S();for(zA in n)n[zA].write(fA,uA[zA]);return RA!==null&&RA.push(V,fA),fA},argPackAdvance:8,readValueFromPointer:_I,V}]})},v:function(){},B:function(Y,Z,S,V,b){var a=LA(S);Z=VA(Z),yA(Y,{name:Z,fromWireType:function(QA){return!!QA},toWireType:function(QA,n){return n?V:b},argPackAdvance:8,readValueFromPointer:function(QA){if(S===1)var n=O;else if(S===2)n=d;else if(S===4)n=r;else throw TypeError("Unknown boolean type size: "+Z);return this.fromWireType(n[QA>>a])},V:null})},f:function(Y,Z,S,V,b,a,QA,n,RA,uA,zA,fA,UB){zA=VA(zA),a=dB(b,a),n&&(n=dB(QA,n)),uA&&(uA=dB(RA,uA)),UB=dB(fA,UB);var OB=WA(zA);CB(OB,function(){sI("Cannot construct "+zA+" due to unbound types",[V])}),AA([Y,Z,S],V?[V]:[],function(SB){if(SB=SB[0],V)var EQ=SB.N,eQ=EQ.X;else eQ=iA.prototype;SB=hA(OB,function(){if(Object.getPrototypeOf(this)!==W0)throw new TB("Use 'new' to construct "+zA);if(WI.Y===void 0)throw new TB(zA+" has no accessible constructor");var BI=WI.Y[arguments.length];if(BI===void 0)throw new TB("Tried to invoke ctor of "+zA+" with invalid number of parameters ("+arguments.length+") - expected ("+Object.keys(WI.Y).toString()+") parameters instead!");return BI.apply(this,arguments)});var W0=Object.create(eQ,{constructor:{value:SB}});SB.prototype=W0;var WI=new $Q(zA,SB,W0,UB,EQ,a,n,uA);EQ=new VI(zA,WI,!0,!1),eQ=new VI(zA+"*",WI,!1,!1);var AI=new VI(zA+" const*",WI,!1,!0);return Bg[Y]={pointerType:eQ,la:AI},HD(OB,SB),[EQ,eQ,AI]})},d:function(Y,Z,S,V,b,a,QA){var n=OE(S,V);Z=VA(Z),a=dB(b,a),AA([],[Y],function(RA){function uA(){sI("Cannot call "+zA+" due to unbound types",n)}RA=RA[0];var zA=RA.name+"."+Z;Z.startsWith("@@")&&(Z=Symbol[Z.substring(2)]);var fA=RA.N.constructor;return fA[Z]===void 0?(uA.Z=S-1,fA[Z]=uA):(ZB(fA,Z,zA),fA[Z].S[S-1]=uA),AA([],n,function(UB){return UB=JD(zA,[UB[0],null].concat(UB.slice(1)),null,a,QA),fA[Z].S===void 0?(UB.Z=S-1,fA[Z]=UB):fA[Z].S[S-1]=UB,[]}),[]})},p:function(Y,Z,S,V,b,a){0<Z||_A();var QA=OE(Z,S);b=dB(V,b),AA([],[Y],function(n){n=n[0];var RA="constructor "+n.name;if(n.N.Y===void 0&&(n.N.Y=[]),n.N.Y[Z-1]!==void 0)throw new TB("Cannot register multiple constructors with identical number of parameters ("+(Z-1)+") for class '"+n.name+"'! Overload resolution is currently only performed using the parameter count, not actual type info!");return n.N.Y[Z-1]=()=>{sI("Cannot construct "+n.name+" due to unbound types",QA)},AA([],QA,function(uA){return uA.splice(1,0,null),n.N.Y[Z-1]=JD(RA,uA,null,b,a),[]}),[]})},a:function(Y,Z,S,V,b,a,QA,n){var RA=OE(S,V);Z=VA(Z),a=dB(b,a),AA([],[Y],function(uA){function zA(){sI("Cannot call "+fA+" due to unbound types",RA)}uA=uA[0];var fA=uA.name+"."+Z;Z.startsWith("@@")&&(Z=Symbol[Z.substring(2)]),n&&uA.N.ja.push(Z);var UB=uA.N.X,OB=UB[Z];return OB===void 0||OB.S===void 0&&OB.className!==uA.name&&OB.Z===S-2?(zA.Z=S-2,zA.className=uA.name,UB[Z]=zA):(ZB(UB,Z,fA),UB[Z].S[S-2]=zA),AA([],RA,function(SB){return SB=JD(fA,SB,uA,a,QA),UB[Z].S===void 0?(SB.Z=S-2,UB[Z]=SB):UB[Z].S[S-2]=SB,[]}),[]})},A:function(Y,Z){Z=VA(Z),yA(Y,{name:Z,fromWireType:function(S){var V=CA(S);return JC(S),V},toWireType:function(S,V){return e(V)},argPackAdvance:8,readValueFromPointer:_I,V:null})},n:function(Y,Z,S){S=LA(S),Z=VA(Z),yA(Y,{name:Z,fromWireType:function(V){return V},toWireType:function(V,b){return b},argPackAdvance:8,readValueFromPointer:Eg(Z,S),V:null})},e:function(Y,Z,S,V,b){Z=VA(Z),b===-1&&(b=4294967295),b=LA(S);var a=(n)=>n;if(V===0){var QA=32-8*S;a=(n)=>n<<QA>>>QA}S=Z.includes("unsigned")?function(n,RA){return RA>>>0}:function(n,RA){return RA},yA(Y,{name:Z,fromWireType:a,toWireType:S,argPackAdvance:8,readValueFromPointer:MC(Z,b,V!==0),V:null})},b:function(Y,Z,S){function V(a){a>>=2;var QA=FA;return new b($,QA[a+1],QA[a])}var b=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array][Z];S=VA(S),yA(Y,{name:S,fromWireType:V,argPackAdvance:8,readValueFromPointer:V},{ua:!0})},o:function(Y,Z){Z=VA(Z);var S=Z==="std::string";yA(Y,{name:Z,fromWireType:function(V){var b=FA[V>>2],a=V+4;if(S)for(var QA=a,n=0;n<=b;++n){var RA=a+n;if(n==b||v[RA]==0){if(QA=QA?z(v,QA,RA-QA):"",uA===void 0)var uA=QA;else uA+=String.fromCharCode(0),uA+=QA;QA=RA+1}}else{uA=Array(b);for(n=0;n<b;++n)uA[n]=String.fromCharCode(v[a+n]);uA=uA.join("")}return wI(V),uA},toWireType:function(V,b){b instanceof ArrayBuffer&&(b=new Uint8Array(b));var a,QA=typeof b=="string";if(QA||b instanceof Uint8Array||b instanceof Uint8ClampedArray||b instanceof Int8Array||EA("Cannot pass non-string to std::string"),S&&QA){var n=0;for(a=0;a<b.length;++a){var RA=b.charCodeAt(a);127>=RA?n++:2047>=RA?n+=2:55296<=RA&&57343>=RA?(n+=4,++a):n+=3}a=n}else a=b.length;if(n=Dg(4+a+1),RA=n+4,FA[n>>2]=a,S&&QA){if(QA=RA,RA=a+1,a=v,0<RA){RA=QA+RA-1;for(var uA=0;uA<b.length;++uA){var zA=b.charCodeAt(uA);if(55296<=zA&&57343>=zA){var fA=b.charCodeAt(++uA);zA=65536+((zA&1023)<<10)|fA&1023}if(127>=zA){if(QA>=RA)break;a[QA++]=zA}else{if(2047>=zA){if(QA+1>=RA)break;a[QA++]=192|zA>>6}else{if(65535>=zA){if(QA+2>=RA)break;a[QA++]=224|zA>>12}else{if(QA+3>=RA)break;a[QA++]=240|zA>>18,a[QA++]=128|zA>>12&63}a[QA++]=128|zA>>6&63}a[QA++]=128|zA&63}}a[QA]=0}}else if(QA)for(QA=0;QA<a;++QA)uA=b.charCodeAt(QA),255<uA&&(wI(RA),EA("String has UTF-16 code units that do not fit in 8 bits")),v[RA+QA]=uA;else for(QA=0;QA<a;++QA)v[RA+QA]=b[QA];return V!==null&&V.push(wI,n),n},argPackAdvance:8,readValueFromPointer:_I,V:function(V){wI(V)}})},i:function(Y,Z,S){if(S=VA(S),Z===2)var V=f2,b=z4,a=O4,QA=()=>l,n=1;else Z===4&&(V=a1,b=j2,a=o1,QA=()=>FA,n=2);yA(Y,{name:S,fromWireType:function(RA){for(var uA=FA[RA>>2],zA=QA(),fA,UB=RA+4,OB=0;OB<=uA;++OB){var SB=RA+4+OB*Z;if(OB==uA||zA[SB>>n]==0)UB=V(UB,SB-UB),fA===void 0?fA=UB:(fA+=String.fromCharCode(0),fA+=UB),UB=SB+Z}return wI(RA),fA},toWireType:function(RA,uA){typeof uA!="string"&&EA("Cannot pass non-string to C++ string type "+S);var zA=a(uA),fA=Dg(4+zA+Z);return FA[fA>>2]=zA>>n,b(uA,fA+4,zA+Z),RA!==null&&RA.push(wI,fA),fA},argPackAdvance:8,readValueFromPointer:_I,V:function(RA){wI(RA)}})},k:function(Y,Z,S,V,b,a){wQ[Y]={name:VA(Z),fa:dB(S,V),W:dB(b,a),ia:[]}},h:function(Y,Z,S,V,b,a,QA,n,RA,uA){wQ[Y].ia.push({oa:VA(Z),ta:S,ra:dB(V,b),sa:a,za:QA,ya:dB(n,RA),Aa:uA})},C:function(Y,Z){Z=VA(Z),yA(Y,{va:!0,name:Z,argPackAdvance:0,fromWireType:function(){},toWireType:function(){}})},s:function(Y,Z,S,V,b){Y=UC[Y],Z=CA(Z),S=TA(S);var a=[];return FA[V>>2]=e(a),Y(Z,S,a,b)},t:function(Y,Z,S,V){Y=UC[Y],Z=CA(Z),S=TA(S),Y(Z,S,null,V)},g:JC,m:function(Y,Z){var S=n1(Y,Z),V=S[0];Z=V.name+"_$"+S.slice(1).map(function(QA){return QA.name}).join("_")+"$";var b=Cg[Z];if(b!==void 0)return b;var a=Array(Y-1);return b=SE((QA,n,RA,uA)=>{for(var zA=0,fA=0;fA<Y-1;++fA)a[fA]=S[fA+1].readValueFromPointer(uA+zA),zA+=S[fA+1].argPackAdvance;QA=QA[n].apply(QA,a);for(fA=0;fA<Y-1;++fA)S[fA+1].ma&&S[fA+1].ma(a[fA]);if(!V.va)return V.toWireType(RA,QA)}),Cg[Z]=b},D:function(Y){4<Y&&(GB[Y].ga+=1)},r:function(Y){var Z=CA(Y);p0(Z),JC(Y)},c:function(){_A("")},x:function(Y,Z,S){v.copyWithin(Y,Z,Z+S)},w:function(Y){var Z=v.length;if(Y>>>=0,2147483648<Y)return!1;for(var S=1;4>=S;S*=2){var V=Z*(1+0.2/S);V=Math.min(V,Y+100663296);var b=Math;V=Math.max(Y,V),b=b.min.call(b,2147483648,V+(65536-V%65536)%65536);A:{try{k.grow(b-$.byteLength+65535>>>16),ZA();var a=1;break A}catch(QA){}a=void 0}if(a)return!0}return!1},z:function(){return 52},u:function(){return 70},y:function(Y,Z,S,V){for(var b=0,a=0;a<S;a++){var QA=FA[Z>>2],n=FA[Z+4>>2];Z+=8;for(var RA=0;RA<n;RA++){var uA=v[QA+RA],zA=R0[Y];uA===0||uA===10?((Y===1?M:U)(z(zA,0)),zA.length=0):zA.push(uA)}b+=n}return FA[V>>2]=b,0}};(function(){function Y(b){C.asm=b.exports,k=C.asm.E,ZA(),GA=C.asm.J,XA.unshift(C.asm.F),KA--,C.monitorRunDependencies&&C.monitorRunDependencies(KA),KA==0&&(BB!==null&&(clearInterval(BB),BB=null),IA&&(b=IA,IA=null,b()))}function Z(b){Y(b.instance)}function S(b){return NA().then(function(a){return WebAssembly.instantiate(a,V)}).then(function(a){return a}).then(b,function(a){U("failed to asynchronously prepare wasm: "+a),_A(a)})}var V={a:r1};if(KA++,C.monitorRunDependencies&&C.monitorRunDependencies(KA),C.instantiateWasm)try{return C.instantiateWasm(V,Y)}catch(b){U("Module.instantiateWasm callback failed with error: "+b),F(b)}return function(){return u||typeof WebAssembly.instantiateStreaming!="function"||OA(rA)||typeof fetch!="function"?S(Z):fetch(rA,{credentials:"same-origin"}).then(function(b){return WebAssembly.instantiateStreaming(b,V).then(Z,function(a){return U("wasm streaming compile failed: "+a),U("falling back to ArrayBuffer instantiation"),S(Z)})})}().catch(F),{}})(),C.___wasm_call_ctors=function(){return(C.___wasm_call_ctors=C.asm.F).apply(null,arguments)};var d0=C.___getTypeName=function(){return(d0=C.___getTypeName=C.asm.G).apply(null,arguments)};C.__embind_initialize_bindings=function(){return(C.__embind_initialize_bindings=C.asm.H).apply(null,arguments)};var Dg=C._malloc=function(){return(Dg=C._malloc=C.asm.I).apply(null,arguments)},wI=C._free=function(){return(wI=C._free=C.asm.K).apply(null,arguments)};C.dynCall_jiji=function(){return(C.dynCall_jiji=C.asm.L).apply(null,arguments)};var uC;IA=function Y(){uC||Fg(),uC||(IA=Y)};function Fg(){function Y(){if(!uC&&(uC=!0,C.calledRun=!0,!W)){if(DA(XA),g(C),C.onRuntimeInitialized)C.onRuntimeInitialized();if(C.postRun)for(typeof C.postRun=="function"&&(C.postRun=[C.postRun]);C.postRun.length;){var Z=C.postRun.shift();qA.unshift(Z)}DA(qA)}}if(!(0<KA)){if(C.preRun)for(typeof C.preRun=="function"&&(C.preRun=[C.preRun]);C.preRun.length;)JA();DA(s),0<KA||(C.setStatus?(C.setStatus("Running..."),setTimeout(function(){setTimeout(function(){C.setStatus("")},1),Y()},1)):Y())}}if(C.preInit)for(typeof C.preInit=="function"&&(C.preInit=[C.preInit]);0<C.preInit.length;)C.preInit.pop()();return Fg(),I.ready}})(),Iu=gS});var QC,Cu,gu,A1,nN,IC,U2,DS,lw,rN,L2,u2,sN,Du,tN,eN,V0,A5,FS,Fu;var aw=c(()=>{QC=function(B){return B[B.Auto=0]="Auto",B[B.FlexStart=1]="FlexStart",B[B.Center=2]="Center",B[B.FlexEnd=3]="FlexEnd",B[B.Stretch=4]="Stretch",B[B.Baseline=5]="Baseline",B[B.SpaceBetween=6]="SpaceBetween",B[B.SpaceAround=7]="SpaceAround",B[B.SpaceEvenly=8]="SpaceEvenly",B}({}),Cu=function(B){return B[B.BorderBox=0]="BorderBox",B[B.ContentBox=1]="ContentBox",B}({}),gu=function(B){return B[B.Width=0]="Width",B[B.Height=1]="Height",B}({}),A1=function(B){return B[B.Inherit=0]="Inherit",B[B.LTR=1]="LTR",B[B.RTL=2]="RTL",B}({}),nN=function(B){return B[B.Flex=0]="Flex",B[B.None=1]="None",B[B.Contents=2]="Contents",B}({}),IC=function(B){return B[B.Left=0]="Left",B[B.Top=1]="Top",B[B.Right=2]="Right",B[B.Bottom=3]="Bottom",B[B.Start=4]="Start",B[B.End=5]="End",B[B.Horizontal=6]="Horizontal",B[B.Vertical=7]="Vertical",B[B.All=8]="All",B}({}),U2=function(B){return B[B.None=0]="None",B[B.StretchFlexBasis=1]="StretchFlexBasis",B[B.AbsolutePositionWithoutInsetsExcludesPadding=2]="AbsolutePositionWithoutInsetsExcludesPadding",B[B.AbsolutePercentAgainstInnerSize=4]="AbsolutePercentAgainstInnerSize",B[B.All=2147483647]="All",B[B.Classic=2147483646]="Classic",B}({}),DS=function(B){return B[B.WebFlexBasis=0]="WebFlexBasis",B}({}),lw=function(B){return B[B.Column=0]="Column",B[B.ColumnReverse=1]="ColumnReverse",B[B.Row=2]="Row",B[B.RowReverse=3]="RowReverse",B}({}),rN=function(B){return B[B.Column=0]="Column",B[B.Row=1]="Row",B[B.All=2]="All",B}({}),L2=function(B){return B[B.FlexStart=0]="FlexStart",B[B.Center=1]="Center",B[B.FlexEnd=2]="FlexEnd",B[B.SpaceBetween=3]="SpaceBetween",B[B.SpaceAround=4]="SpaceAround",B[B.SpaceEvenly=5]="SpaceEvenly",B}({}),u2=function(B){return B[B.Error=0]="Error",B[B.Warn=1]="Warn",B[B.Info=2]="Info",B[B.Debug=3]="Debug",B[B.Verbose=4]="Verbose",B[B.Fatal=5]="Fatal",B}({}),sN=function(B){return B[B.Undefined=0]="Undefined",B[B.Exactly=1]="Exactly",B[B.AtMost=2]="AtMost",B}({}),Du=function(B){return B[B.Default=0]="Default",B[B.Text=1]="Text",B}({}),tN=function(B){return B[B.Visible=0]="Visible",B[B.Hidden=1]="Hidden",B[B.Scroll=2]="Scroll",B}({}),eN=function(B){return B[B.Static=0]="Static",B[B.Relative=1]="Relative",B[B.Absolute=2]="Absolute",B}({}),V0=function(B){return B[B.Undefined=0]="Undefined",B[B.Point=1]="Point",B[B.Percent=2]="Percent",B[B.Auto=3]="Auto",B}({}),A5=function(B){return B[B.NoWrap=0]="NoWrap",B[B.Wrap=1]="Wrap",B[B.WrapReverse=2]="WrapReverse",B}({}),FS={ALIGN_AUTO:QC.Auto,ALIGN_FLEX_START:QC.FlexStart,ALIGN_CENTER:QC.Center,ALIGN_FLEX_END:QC.FlexEnd,ALIGN_STRETCH:QC.Stretch,ALIGN_BASELINE:QC.Baseline,ALIGN_SPACE_BETWEEN:QC.SpaceBetween,ALIGN_SPACE_AROUND:QC.SpaceAround,ALIGN_SPACE_EVENLY:QC.SpaceEvenly,BOX_SIZING_BORDER_BOX:Cu.BorderBox,BOX_SIZING_CONTENT_BOX:Cu.ContentBox,DIMENSION_WIDTH:gu.Width,DIMENSION_HEIGHT:gu.Height,DIRECTION_INHERIT:A1.Inherit,DIRECTION_LTR:A1.LTR,DIRECTION_RTL:A1.RTL,DISPLAY_FLEX:nN.Flex,DISPLAY_NONE:nN.None,DISPLAY_CONTENTS:nN.Contents,EDGE_LEFT:IC.Left,EDGE_TOP:IC.Top,EDGE_RIGHT:IC.Right,EDGE_BOTTOM:IC.Bottom,EDGE_START:IC.Start,EDGE_END:IC.End,EDGE_HORIZONTAL:IC.Horizontal,EDGE_VERTICAL:IC.Vertical,EDGE_ALL:IC.All,ERRATA_NONE:U2.None,ERRATA_STRETCH_FLEX_BASIS:U2.StretchFlexBasis,ERRATA_ABSOLUTE_POSITION_WITHOUT_INSETS_EXCLUDES_PADDING:U2.AbsolutePositionWithoutInsetsExcludesPadding,ERRATA_ABSOLUTE_PERCENT_AGAINST_INNER_SIZE:U2.AbsolutePercentAgainstInnerSize,ERRATA_ALL:U2.All,ERRATA_CLASSIC:U2.Classic,EXPERIMENTAL_FEATURE_WEB_FLEX_BASIS:DS.WebFlexBasis,FLEX_DIRECTION_COLUMN:lw.Column,FLEX_DIRECTION_COLUMN_REVERSE:lw.ColumnReverse,FLEX_DIRECTION_ROW:lw.Row,FLEX_DIRECTION_ROW_REVERSE:lw.RowReverse,GUTTER_COLUMN:rN.Column,GUTTER_ROW:rN.Row,GUTTER_ALL:rN.All,JUSTIFY_FLEX_START:L2.FlexStart,JUSTIFY_CENTER:L2.Center,JUSTIFY_FLEX_END:L2.FlexEnd,JUSTIFY_SPACE_BETWEEN:L2.SpaceBetween,JUSTIFY_SPACE_AROUND:L2.SpaceAround,JUSTIFY_SPACE_EVENLY:L2.SpaceEvenly,LOG_LEVEL_ERROR:u2.Error,LOG_LEVEL_WARN:u2.Warn,LOG_LEVEL_INFO:u2.Info,LOG_LEVEL_DEBUG:u2.Debug,LOG_LEVEL_VERBOSE:u2.Verbose,LOG_LEVEL_FATAL:u2.Fatal,MEASURE_MODE_UNDEFINED:sN.Undefined,MEASURE_MODE_EXACTLY:sN.Exactly,MEASURE_MODE_AT_MOST:sN.AtMost,NODE_TYPE_DEFAULT:Du.Default,NODE_TYPE_TEXT:Du.Text,OVERFLOW_VISIBLE:tN.Visible,OVERFLOW_HIDDEN:tN.Hidden,OVERFLOW_SCROLL:tN.Scroll,POSITION_TYPE_STATIC:eN.Static,POSITION_TYPE_RELATIVE:eN.Relative,POSITION_TYPE_ABSOLUTE:eN.Absolute,UNIT_UNDEFINED:V0.Undefined,UNIT_POINT:V0.Point,UNIT_PERCENT:V0.Percent,UNIT_AUTO:V0.Auto,WRAP_NO_WRAP:A5.NoWrap,WRAP_WRAP:A5.Wrap,WRAP_WRAP_REVERSE:A5.WrapReverse},Fu=FS});function B5(B){function I(F,N,H){let M=F[N];F[N]=function(){for(var U=arguments.length,u=Array(U),X=0;X<U;X++)u[X]=arguments[X];return H.call(this,M,...u)}}for(let F of["setPosition","setMargin","setFlexBasis","setWidth","setHeight","setMinWidth","setMinHeight","setMaxWidth","setMaxHeight","setPadding","setGap"]){let N={[V0.Point]:B.Node.prototype[F],[V0.Percent]:B.Node.prototype[`${F}Percent`],[V0.Auto]:B.Node.prototype[`${F}Auto`]};I(B.Node.prototype,F,function(H){for(var M=arguments.length,U=Array(M>1?M-1:0),u=1;u<M;u++)U[u-1]=arguments[u];let X=U.pop(),k,W;if(X==="auto")k=V0.Auto,W=void 0;else if(typeof X==="object")k=X.unit,W=X.valueOf();else if(k=typeof X==="string"&&X.endsWith("%")?V0.Percent:V0.Point,W=parseFloat(X),X!==void 0&&!Number.isNaN(X)&&Number.isNaN(W))throw Error(`Invalid value ${X} for ${F}`);if(!N[k])throw Error(`Failed to execute "${F}": Unsupported unit '${X}'`);if(W!==void 0)return N[k].call(this,...U,W);else return N[k].call(this,...U)})}function C(F){return B.MeasureCallback.implement({measure:function(){let{width:N,height:H}=F(...arguments);return{width:N??NaN,height:H??NaN}}})}I(B.Node.prototype,"setMeasureFunc",function(F,N){if(N)return F.call(this,C(N));else return this.unsetMeasureFunc()});function g(F){return B.DirtiedCallback.implement({dirtied:F})}return I(B.Node.prototype,"setDirtiedFunc",function(F,N){F.call(this,g(N))}),I(B.Config.prototype,"free",function(){B.Config.destroy(this)}),I(B.Node,"create",(F,N)=>{return N?B.Node.createWithConfig(N):B.Node.createDefault()}),I(B.Node.prototype,"free",function(){B.Node.destroy(this)}),I(B.Node.prototype,"freeRecursive",function(){for(let F=0,N=this.getChildCount();F<N;++F)this.getChild(0).freeRecursive();this.free()}),I(B.Node.prototype,"calculateLayout",function(F){let N=arguments.length>1&&arguments[1]!==void 0?arguments[1]:NaN,H=arguments.length>2&&arguments[2]!==void 0?arguments[2]:NaN,M=arguments.length>3&&arguments[3]!==void 0?arguments[3]:A1.LTR;return F.call(this,N,H,M)}),{Config:B.Config,Node:B.Node,...Fu}}var wu=c(()=>{aw();aw()});var wS,vA;var aC=c(async()=>{Eu();wu();aw();wS=B5(await Iu()),vA=wS});function Q5({onlyFirst:B=!1}={}){return new RegExp("(?:\\u001B\\][\\s\\S]*?(?:\\u0007|\\u001B\\u005C|\\u009C))|[\\u001B\\u009B][[\\]()#;?]*(?:\\d{1,4}(?:[;:]\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]",B?void 0:"g")}function ng(B){if(typeof B!=="string")throw TypeError(`Expected a \`string\`, got \`${typeof B}\``);if(!B.includes("\x1B")&&!B.includes("\x9B"))return B;return B.replace(GS,"")}var GS;var ow=c(()=>{GS=Q5()});var Gu=161,Nu=1114109,Hu,Ju=12288,Mu=65510,Uu,Lu=4352,uu=262141,I5;var Ku=c(()=>{Hu=[161,161,164,164,167,168,170,170,173,174,176,180,182,186,188,191,198,198,208,208,215,216,222,225,230,230,232,234,236,237,240,240,242,243,247,250,252,252,254,254,257,257,273,273,275,275,283,283,294,295,299,299,305,307,312,312,319,322,324,324,328,331,333,333,338,339,358,359,363,363,462,462,464,464,466,466,468,468,470,470,472,472,474,474,476,476,593,593,609,609,708,708,711,711,713,715,717,717,720,720,728,731,733,733,735,735,768,879,913,929,931,937,945,961,963,969,1025,1025,1040,1103,1105,1105,8208,8208,8211,8214,8216,8217,8220,8221,8224,8226,8228,8231,8240,8240,8242,8243,8245,8245,8251,8251,8254,8254,8308,8308,8319,8319,8321,8324,8364,8364,8451,8451,8453,8453,8457,8457,8467,8467,8470,8470,8481,8482,8486,8486,8491,8491,8531,8532,8539,8542,8544,8555,8560,8569,8585,8585,8592,8601,8632,8633,8658,8658,8660,8660,8679,8679,8704,8704,8706,8707,8711,8712,8715,8715,8719,8719,8721,8721,8725,8725,8730,8730,8733,8736,8739,8739,8741,8741,8743,8748,8750,8750,8756,8759,8764,8765,8776,8776,8780,8780,8786,8786,8800,8801,8804,8807,8810,8811,8814,8815,8834,8835,8838,8839,8853,8853,8857,8857,8869,8869,8895,8895,8978,8978,9312,9449,9451,9547,9552,9587,9600,9615,9618,9621,9632,9633,9635,9641,9650,9651,9654,9655,9660,9661,9664,9665,9670,9672,9675,9675,9678,9681,9698,9701,9711,9711,9733,9734,9737,9737,9742,9743,9756,9756,9758,9758,9792,9792,9794,9794,9824,9825,9827,9829,9831,9834,9836,9837,9839,9839,9886,9887,9919,9919,9926,9933,9935,9939,9941,9953,9955,9955,9960,9961,9963,9969,9972,9972,9974,9977,9979,9980,9982,9983,10045,10045,10102,10111,11094,11097,12872,12879,57344,63743,65024,65039,65533,65533,127232,127242,127248,127277,127280,127337,127344,127373,127375,127376,127387,127404,917760,917999,983040,1048573,1048576,1114109],Uu=[12288,12288,65281,65376,65504,65510],I5=[4352,4447,8986,8987,9001,9002,9193,9196,9200,9200,9203,9203,9725,9726,9748,9749,9776,9783,9800,9811,9855,9855,9866,9871,9875,9875,9889,9889,9898,9899,9917,9918,9924,9925,9934,9934,9940,9940,9962,9962,9970,9971,9973,9973,9978,9978,9981,9981,9989,9989,9994,9995,10024,10024,10060,10060,10062,10062,10067,10069,10071,10071,10133,10135,10160,10160,10175,10175,11035,11036,11088,11088,11093,11093,11904,11929,11931,12019,12032,12245,12272,12287,12289,12350,12353,12438,12441,12543,12549,12591,12593,12686,12688,12773,12783,12830,12832,12871,12880,42124,42128,42182,43360,43388,44032,55203,63744,64255,65040,65049,65072,65106,65108,65126,65128,65131,94176,94180,94192,94198,94208,101589,101631,101662,101760,101874,110576,110579,110581,110587,110589,110590,110592,110882,110898,110898,110928,110930,110933,110933,110948,110951,110960,111355,119552,119638,119648,119670,126980,126980,127183,127183,127374,127374,127377,127386,127488,127490,127504,127547,127552,127560,127568,127569,127584,127589,127744,127776,127789,127797,127799,127868,127870,127891,127904,127946,127951,127955,127968,127984,127988,127988,127992,128062,128064,128064,128066,128252,128255,128317,128331,128334,128336,128359,128378,128378,128405,128406,128420,128420,128507,128591,128640,128709,128716,128716,128720,128722,128725,128728,128732,128735,128747,128748,128756,128764,128992,129003,129008,129008,129292,129338,129340,129349,129351,129535,129648,129660,129664,129674,129678,129734,129736,129736,129741,129756,129759,129770,129775,129784,131072,196605,196608,262141]});var nw=(B,I)=>{let C=0,g=Math.floor(B.length/2)-1;while(C<=g){let F=Math.floor((C+g)/2),N=F*2;if(I<B[N])g=F-1;else if(I>B[N+1])C=F+1;else return!0}return!1};function JS(B){let I=B[0],C=B[1];for(let g=0;g<B.length;g+=2){let F=B[g],N=B[g+1];if(Ru>=F&&Ru<=N)return[F,N];if(N-F>C-I)I=F,C=N}return[I,C]}var Ru=19968,NS,HS,Wu=(B)=>{if(B<Gu||B>Nu)return!1;return nw(Hu,B)},B1=(B)=>{if(B<Ju||B>Mu)return!1;return nw(Uu,B)},Q1=(B)=>{if(B>=NS&&B<=HS)return!0;if(B<Lu||B>uu)return!1;return nw(I5,B)};var E5=c(()=>{Ku();[NS,HS]=JS(I5)});function MS(B){if(!Number.isSafeInteger(B))throw TypeError(`Expected a code point, got \`${typeof B}\`.`)}function rg(B,{ambiguousAsWide:I=!1}={}){if(MS(B),B1(B)||Q1(B)||I&&Wu(B))return 2;return 1}var rw=c(()=>{E5();E5()});var Yu=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26D3\uFE0F?(?:\u200D\uD83D\uDCA5)?|\u26F9(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF43\uDF45-\uDF4A\uDF4C-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDF44(?:\u200D\uD83D\uDFEB)?|\uDF4B(?:\u200D\uD83D\uDFE9)?|\uDFC3(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E-\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4\uDEB5](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE41\uDE43\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED8\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC08(?:\u200D\u2B1B)?|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC26(?:\u200D(?:\u2B1B|\uD83D\uDD25))?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDD1D\uDEEF]\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE]|[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE]|\uDEEF\u200D\uD83D\uDC69\uD83C[\uDFFB-\uDFFE])))?))?|\uDD75(?:\uD83C[\uDFFB-\uDFFF]|\uFE0F)?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?|\uDE42(?:\u200D[\u2194\u2195]\uFE0F?)?|\uDEB6(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3C-\uDD3E\uDDB8\uDDB9\uDDCD\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE8A\uDE8E-\uDEC2\uDEC6\uDEC8\uDECD-\uDEDC\uDEDF-\uDEEA\uDEEF]|\uDDCE(?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D(?:[\u2640\u2642]\uFE0F?(?:\u200D\u27A1\uFE0F?)?|\u27A1\uFE0F?))?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1|\uDDD1\u200D\uD83E\uDDD2(?:\u200D\uD83E\uDDD2)?|\uDDD2(?:\u200D\uD83E\uDDD2)?))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC30\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])|\uD83E(?:[\uDDAF\uDDBC\uDDBD](?:\u200D\u27A1\uFE0F?)?|[\uDDB0-\uDDB3\uDE70]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF]|\uDEEF\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g};function sg(B,I={}){if(typeof B!=="string"||B.length===0)return 0;let{ambiguousIsNarrow:C=!0,countAnsiEscapeCodes:g=!1}=I;if(!g)B=ng(B);if(B.length===0)return 0;let F=0,N={ambiguousAsWide:!C};for(let{segment:H}of US.segment(B)){let M=H.codePointAt(0);if(M<=31||M>=127&&M<=159)continue;if(M>=8203&&M<=8207||M===65279)continue;if(M>=768&&M<=879||M>=6832&&M<=6911||M>=7616&&M<=7679||M>=8400&&M<=8447||M>=65056&&M<=65071)continue;if(M>=55296&&M<=57343)continue;if(M>=65024&&M<=65039)continue;if(LS.test(H))continue;if(Yu().test(H)){F+=2;continue}F+=rg(M,N)}return F}var US,LS;var Zu=c(()=>{ow();rw();US=new Intl.Segmenter,LS=/^\p{Default_Ignorable_Code_Point}$/u});function RS(){let B=new Map;for(let[I,C]of Object.entries(eB)){for(let[g,F]of Object.entries(C))eB[g]={open:`\x1B[${F[0]}m`,close:`\x1B[${F[1]}m`},C[g]=eB[g],B.set(F[0],F[1]);Object.defineProperty(eB,I,{value:C,enumerable:!1})}return Object.defineProperty(eB,"codes",{value:B,enumerable:!1}),eB.color.close="\x1B[39m",eB.bgColor.close="\x1B[49m",eB.color.ansi=Xu(),eB.color.ansi256=qu(),eB.color.ansi16m=ku(),eB.bgColor.ansi=Xu(10),eB.bgColor.ansi256=qu(10),eB.bgColor.ansi16m=ku(10),Object.defineProperties(eB,{rgbToAnsi256:{value(I,C,g){if(I===C&&C===g){if(I<8)return 16;if(I>248)return 231;return Math.round((I-8)/247*24)+232}return 16+36*Math.round(I/255*5)+6*Math.round(C/255*5)+Math.round(g/255*5)},enumerable:!1},hexToRgb:{value(I){let C=/[a-f\d]{6}|[a-f\d]{3}/i.exec(I.toString(16));if(!C)return[0,0,0];let[g]=C;if(g.length===3)g=[...g].map((N)=>N+N).join("");let F=Number.parseInt(g,16);return[F>>16&255,F>>8&255,F&255]},enumerable:!1},hexToAnsi256:{value:(I)=>eB.rgbToAnsi256(...eB.hexToRgb(I)),enumerable:!1},ansi256ToAnsi:{value(I){if(I<8)return 30+I;if(I<16)return 90+(I-8);let C,g,F;if(I>=232)C=((I-232)*10+8)/255,g=C,F=C;else{I-=16;let M=I%36;C=Math.floor(I/36)/5,g=Math.floor(M/6)/5,F=M%6/5}let N=Math.max(C,g,F)*2;if(N===0)return 30;let H=30+(Math.round(F)<<2|Math.round(g)<<1|Math.round(C));if(N===2)H+=60;return H},enumerable:!1},rgbToAnsi:{value:(I,C,g)=>eB.ansi256ToAnsi(eB.rgbToAnsi256(I,C,g)),enumerable:!1},hexToAnsi:{value:(I)=>eB.ansi256ToAnsi(eB.hexToAnsi256(I)),enumerable:!1}}),eB}var Xu=(B=0)=>(I)=>`\x1B[${I+B}m`,qu=(B=0)=>(I)=>`\x1B[${38+B};5;${I}m`,ku=(B=0)=>(I,C,g)=>`\x1B[${38+B};2;${I};${C};${g}m`,eB,en,uS,KS,Ar,WS,lB;var I1=c(()=>{eB={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},en=Object.keys(eB.modifier),uS=Object.keys(eB.color),KS=Object.keys(eB.bgColor),Ar=[...uS,...KS];WS=RS(),lB=WS});function E1(B,I,C){return String(B).normalize().replaceAll(`\r
25
+ `,`
26
+ `).split(`
27
+ `).map((g)=>kS(g,I,C)).join(`
28
+ `)}var tw,YS=39,g5="\x07",Su="[",ZS="]",$u="m",sw,zu=(B)=>`${tw.values().next().value}${Su}${B}${$u}`,Ou=(B)=>`${tw.values().next().value}${sw}${B}${g5}`,XS=(B)=>B.split(" ").map((I)=>sg(I)),C5=(B,I,C)=>{let g=[...I],F=!1,N=!1,H=sg(ng(B.at(-1)));for(let[M,U]of g.entries()){let u=sg(U);if(H+u<=C)B[B.length-1]+=U;else B.push(U),H=0;if(tw.has(U))F=!0,N=g.slice(M+1,M+1+sw.length).join("")===sw;if(F){if(N){if(U===g5)F=!1,N=!1}else if(U===$u)F=!1;continue}if(H+=u,H===C&&M<g.length-1)B.push(""),H=0}if(!H&&B.at(-1).length>0&&B.length>1)B[B.length-2]+=B.pop()},qS=(B)=>{let I=B.split(" "),C=I.length;while(C>0){if(sg(I[C-1])>0)break;C--}if(C===I.length)return B;return I.slice(0,C).join(" ")+I.slice(C).join("")},kS=(B,I,C={})=>{if(C.trim!==!1&&B.trim()==="")return"";let g="",F,N,H=XS(B),M=[""];for(let[k,W]of B.split(" ").entries()){if(C.trim!==!1)M[M.length-1]=M.at(-1).trimStart();let z=sg(M.at(-1));if(k!==0){if(z>=I&&(C.wordWrap===!1||C.trim===!1))M.push(""),z=0;if(z>0||C.trim===!1)M[M.length-1]+=" ",z++}if(C.hard&&H[k]>I){let $=I-z,O=1+Math.floor((H[k]-$-1)/I);if(Math.floor((H[k]-1)/I)<O)M.push("");C5(M,W,I);continue}if(z+H[k]>I&&z>0&&H[k]>0){if(C.wordWrap===!1&&z<I){C5(M,W,I);continue}M.push("")}if(z+H[k]>I&&C.wordWrap===!1){C5(M,W,I);continue}M[M.length-1]+=W}if(C.trim!==!1)M=M.map((k)=>qS(k));let U=M.join(`
29
+ `),u=[...U],X=0;for(let[k,W]of u.entries()){if(g+=W,tw.has(W)){let{groups:$}=new RegExp(`(?:\\${Su}(?<code>\\d+)m|\\${sw}(?<uri>.*)${g5})`).exec(U.slice(X))||{groups:{}};if($.code!==void 0){let O=Number.parseFloat($.code);F=O===YS?void 0:O}else if($.uri!==void 0)N=$.uri.length===0?void 0:$.uri}let z=lB.codes.get(Number(F));if(u[k+1]===`
30
+ `){if(N)g+=Ou("");if(F&&z)g+=zu(z)}else if(W===`
31
+ `){if(F&&z)g+=zu(F);if(N)g+=Ou(N)}X+=W.length}return g};var D5=c(()=>{Zu();ow();I1();tw=new Set(["\x1B","\x9B"]),sw=`${ZS}8;;`});import tg from"process";import{execFileSync as zS}from"child_process";import C1 from"fs";import OS from"tty";function G5(){let{env:B,stdout:I,stderr:C}=tg;if(I?.columns&&I?.rows)return ew(I.columns,I.rows);if(C?.columns&&C?.rows)return ew(C.columns,C.rows);if(B.COLUMNS&&B.LINES)return ew(B.COLUMNS,B.LINES);let g={columns:Tu,rows:vu};if(tg.platform==="win32")return F5()??g;if(tg.platform==="darwin")return yu()??F5()??g;return yu()??F5()??$S()??g}var Tu=80,vu=24,w5=(B,I,{shell:C,env:g}={})=>zS(B,I,{encoding:"utf8",stdio:["ignore","pipe","ignore"],timeout:500,shell:C,env:g}).trim(),ew=(B,I)=>({columns:Number.parseInt(B,10),rows:Number.parseInt(I,10)}),_u=(B,I)=>{let{columns:C,rows:g}=ew(B,I);if(Number.isNaN(C)||Number.isNaN(g))return;if(C===Tu&&g===vu)return;return{columns:C,rows:g}},SS=()=>{if(tg.platform!=="linux")return!0;try{let B=C1.readFileSync("/proc/self/stat","utf8"),I=B.lastIndexOf(") ");if(I===-1)return!1;let C=B.slice(I+2).trim().split(/\s+/),g=Number.parseInt(C[2],10),F=Number.parseInt(C[5],10);if(Number.isNaN(g)||Number.isNaN(F))return!1;if(F<=0)return!1;return g===F}catch{return!1}},yu=()=>{try{let B=tg.platform==="darwin"?C1.constants.O_EVTONLY|C1.constants.O_NONBLOCK:C1.constants.O_NONBLOCK,{columns:I,rows:C}=OS.WriteStream(C1.openSync("/dev/tty",B));return{columns:I,rows:C}}catch{}},F5=()=>{try{let B=w5("tput",["cols"],{env:{TERM:"dumb",...tg.env}}),I=w5("tput",["lines"],{env:{TERM:"dumb",...tg.env}});if(B&&I)return _u(B,I)}catch{}},$S=()=>{try{if(!SS())return;let B=w5("resize",["-u"]).match(/\d+/g);if(B.length===2)return _u(B[0],B[1])}catch{}};var Vu=()=>{};import yS from"process";var g1=()=>yS.env.DEV==="true";var N5=()=>{};var H5=pI((TS)=>{(function(){function B(){if(FA=!1,GA){var IA=TS.unstable_now();qA=IA;var _A=!0;try{A:{l=!1,r&&(r=!1,wA(s),s=-1),d=!0;var OA=v;try{B:{N(IA);for(O=C(W);O!==null&&!(O.expirationTime>IA&&M());){var rA=O.callback;if(typeof rA==="function"){O.callback=null,v=O.priorityLevel;var kA=rA(O.expirationTime<=IA);if(IA=TS.unstable_now(),typeof kA==="function"){O.callback=kA,N(IA),_A=!0;break B}O===C(W)&&g(W),N(IA)}else g(W);O=C(W)}if(O!==null)_A=!0;else{var f=C(z);f!==null&&U(H,f.startTime-IA),_A=!1}}break A}finally{O=null,v=OA,d=!1}_A=void 0}}finally{_A?JA():GA=!1}}}function I(IA,_A){var OA=IA.length;IA.push(_A);A:for(;0<OA;){var rA=OA-1>>>1,kA=IA[rA];if(0<F(kA,_A))IA[rA]=_A,IA[OA]=kA,OA=rA;else break A}}function C(IA){return IA.length===0?null:IA[0]}function g(IA){if(IA.length===0)return null;var _A=IA[0],OA=IA.pop();if(OA!==_A){IA[0]=OA;A:for(var rA=0,kA=IA.length,f=kA>>>1;rA<f;){var NA=2*(rA+1)-1,DA=IA[NA],WA=NA+1,hA=IA[WA];if(0>F(DA,OA))WA<kA&&0>F(hA,DA)?(IA[rA]=hA,IA[WA]=OA,rA=WA):(IA[rA]=DA,IA[NA]=OA,rA=NA);else if(WA<kA&&0>F(hA,OA))IA[rA]=hA,IA[WA]=OA,rA=WA;else break A}}return _A}function F(IA,_A){var OA=IA.sortIndex-_A.sortIndex;return OA!==0?OA:IA.id-_A.id}function N(IA){for(var _A=C(z);_A!==null;){if(_A.callback===null)g(z);else if(_A.startTime<=IA)g(z),_A.sortIndex=_A.expirationTime,I(W,_A);else break;_A=C(z)}}function H(IA){if(r=!1,N(IA),!l)if(C(W)!==null)l=!0,GA||(GA=!0,JA());else{var _A=C(z);_A!==null&&U(H,_A.startTime-IA)}}function M(){return FA?!0:TS.unstable_now()-qA<XA?!1:!0}function U(IA,_A){s=MA(function(){IA(TS.unstable_now())},_A)}if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart==="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error()),TS.unstable_now=void 0,typeof performance==="object"&&typeof performance.now==="function"){var u=performance;TS.unstable_now=function(){return u.now()}}else{var X=Date,k=X.now();TS.unstable_now=function(){return X.now()-k}}var W=[],z=[],$=1,O=null,v=3,d=!1,l=!1,r=!1,FA=!1,MA=typeof setTimeout==="function"?setTimeout:null,wA=typeof clearTimeout==="function"?clearTimeout:null,ZA=typeof setImmediate<"u"?setImmediate:null,GA=!1,s=-1,XA=5,qA=-1;if(typeof ZA==="function")var JA=function(){ZA(B)};else if(typeof MessageChannel<"u"){var KA=new MessageChannel,BB=KA.port2;KA.port1.onmessage=B,JA=function(){BB.postMessage(null)}}else JA=function(){MA(B,0)};TS.unstable_IdlePriority=5,TS.unstable_ImmediatePriority=1,TS.unstable_LowPriority=4,TS.unstable_NormalPriority=3,TS.unstable_Profiling=null,TS.unstable_UserBlockingPriority=2,TS.unstable_cancelCallback=function(IA){IA.callback=null},TS.unstable_forceFrameRate=function(IA){0>IA||125<IA?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):XA=0<IA?Math.floor(1000/IA):5},TS.unstable_getCurrentPriorityLevel=function(){return v},TS.unstable_next=function(IA){switch(v){case 1:case 2:case 3:var _A=3;break;default:_A=v}var OA=v;v=_A;try{return IA()}finally{v=OA}},TS.unstable_requestPaint=function(){FA=!0},TS.unstable_runWithPriority=function(IA,_A){switch(IA){case 1:case 2:case 3:case 4:case 5:break;default:IA=3}var OA=v;v=IA;try{return _A()}finally{v=OA}},TS.unstable_scheduleCallback=function(IA,_A,OA){var rA=TS.unstable_now();switch(typeof OA==="object"&&OA!==null?(OA=OA.delay,OA=typeof OA==="number"&&0<OA?rA+OA:rA):OA=rA,IA){case 1:var kA=-1;break;case 2:kA=250;break;case 5:kA=1073741823;break;case 4:kA=1e4;break;default:kA=5000}return kA=OA+kA,IA={id:$++,callback:_A,priorityLevel:IA,startTime:OA,expirationTime:kA,sortIndex:-1},OA>rA?(IA.sortIndex=OA,I(z,IA),C(W)===null&&IA===C(z)&&(r?(wA(s),s=-1):r=!0,U(H,OA-rA))):(IA.sortIndex=kA,I(W,IA),l||d||(l=!0,GA||(GA=!0,JA()))),IA},TS.unstable_shouldYield=M,TS.unstable_wrapCallback=function(IA){var _A=v;return function(){var OA=v;v=_A;try{return IA.apply(this,arguments)}finally{v=OA}}},typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop==="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})()});var Pu=pI(($r,D1)=>{var J5=YA(FB()),pB=YA(H5());D1.exports=function(B){function I(A,Q){for(A=A.memoizedState;A!==null&&0<Q;)A=A.next,Q--;return A}function C(A,Q,E,D){if(E>=Q.length)return D;var w=Q[E],G=oQ(A)?A.slice():aQ({},A);return G[w]=C(A[w],Q,E+1,D),G}function g(A,Q,E){if(Q.length!==E.length)console.warn("copyWithRename() expects paths of the same length");else{for(var D=0;D<E.length-1;D++)if(Q[D]!==E[D]){console.warn("copyWithRename() expects paths to be the same except for the deepest key");return}return F(A,Q,E,0)}}function F(A,Q,E,D){var w=Q[D],G=oQ(A)?A.slice():aQ({},A);return D+1===Q.length?(G[E[D]]=G[w],oQ(G)?G.splice(w,1):delete G[w]):G[w]=F(A[w],Q,E,D+1),G}function N(A,Q,E){var D=Q[E],w=oQ(A)?A.slice():aQ({},A);if(E+1===Q.length)return oQ(w)?w.splice(D,1):delete w[D],w;return w[D]=N(A[D],Q,E+1),w}function H(){return!1}function M(){return null}function U(A,Q,E,D){return new PX(A,Q,E,D)}function u(A,Q){A.context===kC&&(bM(Q,A,null,null),v8())}function X(A,Q){if(D0!==null){var E=Q.staleFamilies;Q=Q.updatedFamilies,XD(),vM(A.current,Q,E),v8()}}function k(A){D0=A}function W(){console.error("Do not call Hooks inside useEffect(...), useMemo(...), or other built-in Hooks. You can only call Hooks at the top level of your React function. For more information, see https://react.dev/link/rules-of-hooks")}function z(){console.error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().")}function $(){}function O(){}function v(A){var Q=[];return A.forEach(function(E){Q.push(E)}),Q.sort().join(", ")}function d(A){var Q=A,E=A;if(A.alternate)for(;Q.return;)Q=Q.return;else{A=Q;do Q=A,(Q.flags&4098)!==0&&(E=Q.return),A=Q.return;while(A)}return Q.tag===3?E:null}function l(A){if(d(A)!==A)throw Error("Unable to find node on an unmounted component.")}function r(A){var Q=A.alternate;if(!Q){if(Q=d(A),Q===null)throw Error("Unable to find node on an unmounted component.");return Q!==A?null:A}for(var E=A,D=Q;;){var w=E.return;if(w===null)break;var G=w.alternate;if(G===null){if(D=w.return,D!==null){E=D;continue}break}if(w.child===G.child){for(G=w.child;G;){if(G===E)return l(w),A;if(G===D)return l(w),Q;G=G.sibling}throw Error("Unable to find node on an unmounted component.")}if(E.return!==D.return)E=w,D=G;else{for(var J=!1,L=w.child;L;){if(L===E){J=!0,E=w,D=G;break}if(L===D){J=!0,D=w,E=G;break}L=L.sibling}if(!J){for(L=G.child;L;){if(L===E){J=!0,E=G,D=w;break}if(L===D){J=!0,D=G,E=w;break}L=L.sibling}if(!J)throw Error("Child was not found in either parent set. This indicates a bug in React related to the return pointer. Please file an issue.")}}if(E.alternate!==D)throw Error("Return fibers should always be each others' alternates. This error is likely caused by a bug in React. Please file an issue.")}if(E.tag!==3)throw Error("Unable to find node on an unmounted component.");return E.stateNode.current===E?A:Q}function FA(A){return A=r(A),A!==null?MA(A):null}function MA(A){var Q=A.tag;if(Q===5||Q===26||Q===27||Q===6)return A;for(A=A.child;A!==null;){if(Q=MA(A),Q!==null)return Q;A=A.sibling}return null}function wA(A){var Q=A.tag;if(Q===5||Q===26||Q===27||Q===6)return A;for(A=A.child;A!==null;){if(A.tag!==4&&(Q=wA(A),Q!==null))return Q;A=A.sibling}return null}function ZA(A){if(A===null||typeof A!=="object")return null;return A=xM&&A[xM]||A["@@iterator"],typeof A==="function"?A:null}function GA(A){if(A==null)return null;if(typeof A==="function")return A.$$typeof===jX?null:A.displayName||A.name||null;if(typeof A==="string")return A;switch(A){case qD:return"Fragment";case eG:return"Profiler";case h8:return"StrictMode";case B6:return"Suspense";case Q6:return"SuspenseList";case I6:return"Activity"}if(typeof A==="object")switch(typeof A.tag==="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),A.$$typeof){case Kg:return"Portal";case vE:return A.displayName||"Context";case A6:return(A._context.displayName||"Context")+".Consumer";case IF:var Q=A.render;return A=A.displayName,A||(A=Q.displayName||Q.name||"",A=A!==""?"ForwardRef("+A+")":"ForwardRef"),A;case b8:return Q=A.displayName||null,Q!==null?Q:GA(A.type)||"Memo";case hI:Q=A._payload,A=A._init;try{return GA(A(Q))}catch(E){}}return null}function s(A){var Q=A.type;switch(A.tag){case 31:return"Activity";case 24:return"Cache";case 9:return(Q._context.displayName||"Context")+".Consumer";case 10:return Q.displayName||"Context";case 18:return"DehydratedFragment";case 11:return A=Q.render,A=A.displayName||A.name||"",Q.displayName||(A!==""?"ForwardRef("+A+")":"ForwardRef");case 7:return"Fragment";case 26:case 27:case 5:return Q;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return GA(Q);case 8:return Q===h8?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 14:case 15:if(typeof Q==="function")return Q.displayName||Q.name||null;if(typeof Q==="string")return Q;break;case 29:if(Q=A._debugInfo,Q!=null){for(var E=Q.length-1;0<=E;E--)if(typeof Q[E].name==="string")return Q[E].name}if(A.return!==null)return s(A.return)}return null}function XA(A){return{current:A}}function qA(A,Q){0>PE?console.error("Unexpected pop."):(Q!==H6[PE]&&console.error("Unexpected Fiber popped."),A.current=N6[PE],N6[PE]=null,H6[PE]=null,PE--)}function JA(A,Q,E){PE++,N6[PE]=A.current,H6[PE]=E,A.current=Q}function KA(A){return A>>>=0,A===0?32:31-(Uk(A)/Lk|0)|0}function BB(A){var Q=A&42;if(Q!==0)return Q;switch(A&-A){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return A&261888;case 262144:case 524288:case 1048576:case 2097152:return A&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return A&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return console.error("Should have found matching lanes. This is a bug in React."),A}}function IA(A,Q,E){var D=A.pendingLanes;if(D===0)return 0;var w=0,G=A.suspendedLanes,J=A.pingedLanes;A=A.warmLanes;var L=D&134217727;return L!==0?(D=L&~G,D!==0?w=BB(D):(J&=L,J!==0?w=BB(J):E||(E=L&~A,E!==0&&(w=BB(E))))):(L=D&~G,L!==0?w=BB(L):J!==0?w=BB(J):E||(E=D&~A,E!==0&&(w=BB(E)))),w===0?0:Q!==0&&Q!==w&&(Q&G)===0&&(G=w&-w,E=Q&-Q,G>=E||G===32&&(E&4194048)!==0)?Q:w}function _A(A,Q){return(A.pendingLanes&~(A.suspendedLanes&~A.pingedLanes)&Q)===0}function OA(A,Q){switch(A){case 1:case 2:case 4:case 8:case 64:return Q+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return Q+5000;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return console.error("Should have found matching lanes. This is a bug in React."),-1}}function rA(){var A=p8;return p8<<=1,(p8&62914560)===0&&(p8=4194304),A}function kA(A){for(var Q=[],E=0;31>E;E++)Q.push(A);return Q}function f(A,Q){A.pendingLanes|=Q,Q!==268435456&&(A.suspendedLanes=0,A.pingedLanes=0,A.warmLanes=0)}function NA(A,Q,E,D,w,G){var J=A.pendingLanes;A.pendingLanes=E,A.suspendedLanes=0,A.pingedLanes=0,A.warmLanes=0,A.expiredLanes&=E,A.entangledLanes&=E,A.errorRecoveryDisabledLanes&=E,A.shellSuspendCounter=0;var{entanglements:L,expirationTimes:q,hiddenUpdates:_}=A;for(E=J&~E;0<E;){var x=31-HI(E),i=1<<x;L[x]=0,q[x]=-1;var t=_[x];if(t!==null)for(_[x]=null,x=0;x<t.length;x++){var mA=t[x];mA!==null&&(mA.lane&=-536870913)}E&=~i}D!==0&&DA(A,D,0),G!==0&&w===0&&A.tag!==0&&(A.suspendedLanes|=G&~(J&~Q))}function DA(A,Q,E){A.pendingLanes|=Q,A.suspendedLanes&=~Q;var D=31-HI(Q);A.entangledLanes|=Q,A.entanglements[D]=A.entanglements[D]|1073741824|E&261930}function WA(A,Q){var E=A.entangledLanes|=Q;for(A=A.entanglements;E;){var D=31-HI(E),w=1<<D;w&Q|A[D]&Q&&(A[D]|=Q),E&=~w}}function hA(A,Q){var E=Q&-Q;return E=(E&42)!==0?1:GB(E),(E&(A.suspendedLanes|Q))!==0?0:E}function GB(A){switch(A){case 2:A=1;break;case 8:A=4;break;case 32:A=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:A=128;break;case 268435456:A=134217728;break;default:A=0}return A}function bA(A,Q,E){if(EE)for(A=A.pendingUpdatersLaneMap;0<E;){var D=31-HI(E),w=1<<D;A[D].add(Q),E&=~w}}function hB(A,Q){if(EE)for(var{pendingUpdatersLaneMap:E,memoizedUpdaters:D}=A;0<Q;){var w=31-HI(Q);A=1<<w,w=E[w],0<w.size&&(w.forEach(function(G){var J=G.alternate;J!==null&&D.has(J)||D.add(G)}),w.clear()),Q&=~A}}function TB(A){return A&=-A,2<A?8<A?(A&134217727)!==0?32:268435456:8:2}function EA(A){if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u")return!1;var Q=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(Q.isDisabled)return!0;if(!Q.supportsFiber)return console.error("The installed version of React DevTools is too old and will not work with the current version of React. Please update React DevTools. https://react.dev/link/react-devtools"),!0;try{$D=Q.inject(A),gI=Q}catch(E){console.error("React instrumentation encountered an error: %o.",E)}return Q.checkDCE?!0:!1}function CA(A){if(typeof Wk==="function"&&Yk(A),gI&&typeof gI.setStrictMode==="function")try{gI.setStrictMode($D,A)}catch(Q){IE||(IE=!0,console.error("React instrumentation encountered an error: %o",Q))}}function e(A,Q){return A===Q&&(A!==0||1/A===1/Q)||A!==A&&Q!==Q}function UA(A){for(var Q=0,E=0;E<A.length;E++){var D=A[E];if(typeof D==="object"&&D!==null)if(oQ(D)&&D.length===2&&typeof D[0]==="string"){if(Q!==0&&Q!==3)return 1;Q=3}else return 1;else{if(typeof D==="function"||typeof D==="string"&&50<D.length||Q!==0&&Q!==2)return 1;Q=2}}return Q}function lA(A,Q,E,D){for(var w in A)M6.call(A,w)&&w[0]!=="_"&&VA(w,A[w],Q,E,D)}function VA(A,Q,E,D,w){switch(typeof Q){case"object":if(Q===null){Q="null";break}else{if(Q.$$typeof===TE){var G=GA(Q.type)||"\u2026",J=Q.key;Q=Q.props;var L=Object.keys(Q),q=L.length;if(J==null&&q===0){Q="<"+G+" />";break}if(3>D||q===1&&L[0]==="children"&&J==null){Q="<"+G+" \u2026 />";break}E.push([w+"\xA0\xA0".repeat(D)+A,"<"+G]),J!==null&&VA("key",J,E,D+1,w),A=!1;for(var _ in Q)_==="children"?Q.children!=null&&(!oQ(Q.children)||0<Q.children.length)&&(A=!0):M6.call(Q,_)&&_[0]!=="_"&&VA(_,Q[_],E,D+1,w);E.push(["",A?">\u2026</"+G+">":"/>"]);return}if(G=Object.prototype.toString.call(Q),G=G.slice(8,G.length-1),G==="Array"){if(_=UA(Q),_===2||_===0){Q=JSON.stringify(Q);break}else if(_===3){E.push([w+"\xA0\xA0".repeat(D)+A,""]);for(A=0;A<Q.length;A++)G=Q[A],VA(G[0],G[1],E,D+1,w);return}}if(G==="Promise"){if(Q.status==="fulfilled"){if(G=E.length,VA(A,Q.value,E,D,w),E.length>G){E=E[G],E[1]="Promise<"+(E[1]||"Object")+">";return}}else if(Q.status==="rejected"&&(G=E.length,VA(A,Q.reason,E,D,w),E.length>G)){E=E[G],E[1]="Rejected Promise<"+E[1]+">";return}E.push(["\xA0\xA0".repeat(D)+A,"Promise"]);return}G==="Object"&&(_=Object.getPrototypeOf(Q))&&typeof _.constructor==="function"&&(G=_.constructor.name),E.push([w+"\xA0\xA0".repeat(D)+A,G==="Object"?3>D?"":"\u2026":G]),3>D&&lA(Q,E,D+1,w);return}case"function":Q=Q.name===""?"() => {}":Q.name+"() {}";break;case"string":Q=Q==="This object has been omitted by React in the console log to avoid sending too much data from the server. Try logging smaller or more specific objects."?"\u2026":JSON.stringify(Q);break;case"undefined":Q="undefined";break;case"boolean":Q=Q?"true":"false";break;default:Q=String(Q)}E.push([w+"\xA0\xA0".repeat(D)+A,Q])}function MB(A,Q,E,D){var w=!0;for(J in A)J in Q||(E.push(["\u2013\xA0"+"\xA0\xA0".repeat(D)+J,"\u2026"]),w=!1);for(var G in Q)if(G in A){var J=A[G],L=Q[G];if(J!==L){if(D===0&&G==="children")w="\xA0\xA0".repeat(D)+G,E.push(["\u2013\xA0"+w,"\u2026"],["+\xA0"+w,"\u2026"]);else{if(!(3<=D)){if(typeof J==="object"&&typeof L==="object"&&J!==null&&L!==null&&J.$$typeof===L.$$typeof)if(L.$$typeof===TE){if(J.type===L.type&&J.key===L.key){J=GA(L.type)||"\u2026",w="\xA0\xA0".repeat(D)+G,J="<"+J+" \u2026 />",E.push(["\u2013\xA0"+w,J],["+\xA0"+w,J]),w=!1;continue}}else{var q=Object.prototype.toString.call(J),_=Object.prototype.toString.call(L);if(q===_&&(_==="[object Object]"||_==="[object Array]")){q=["\u2007\xA0"+"\xA0\xA0".repeat(D)+G,_==="[object Array]"?"Array":""],E.push(q),_=E.length,MB(J,L,E,D+1)?_===E.length&&(q[1]="Referentially unequal but deeply equal objects. Consider memoization."):w=!1;continue}}else if(typeof J==="function"&&typeof L==="function"&&J.name===L.name&&J.length===L.length&&(q=Function.prototype.toString.call(J),_=Function.prototype.toString.call(L),q===_)){J=L.name===""?"() => {}":L.name+"() {}",E.push(["\u2007\xA0"+"\xA0\xA0".repeat(D)+G,J+" Referentially unequal function closure. Consider memoization."]);continue}}VA(G,J,E,D,"\u2013\xA0"),VA(G,L,E,D,"+\xA0")}w=!1}}else E.push(["+\xA0"+"\xA0\xA0".repeat(D)+G,"\u2026"]),w=!1;return w}function bB(A){HB=A&63?"Blocking":A&64?"Gesture":A&4194176?"Transition":A&62914560?"Suspense":A&2080374784?"Idle":"Other"}function VB(A,Q,E,D){jB&&(OC.start=Q,OC.end=E,mE.color="warning",mE.tooltipText=D,mE.properties=null,(A=A._debugTask)?A.run(performance.measure.bind(performance,D,OC)):performance.measure(D,OC))}function PA(A,Q,E){VB(A,Q,E,"Reconnect")}function bQ(A,Q,E,D,w){var G=s(A);if(G!==null&&jB){var{alternate:J,actualDuration:L}=A;if(J===null||J.child!==A.child)for(var q=A.child;q!==null;q=q.sibling)L-=q.actualDuration;D=0.5>L?D?"tertiary-light":"primary-light":10>L?D?"tertiary":"primary":100>L?D?"tertiary-dark":"primary-dark":"error";var _=A.memoizedProps;L=A._debugTask,_!==null&&J!==null&&J.memoizedProps!==_?(q=[qk],_=MB(J.memoizedProps,_,q,0),1<q.length&&(_&&!zC&&(J.lanes&w)===0&&100<A.actualDuration?(zC=!0,q[0]=kk,mE.color="warning",mE.tooltipText="This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner."):(mE.color=D,mE.tooltipText=G),mE.properties=q,OC.start=Q,OC.end=E,L!=null?L.run(performance.measure.bind(performance,"\u200B"+G,OC)):performance.measure("\u200B"+G,OC))):L!=null?L.run(console.timeStamp.bind(console,G,Q,E,"Components \u269B",void 0,D)):console.timeStamp(G,Q,E,"Components \u269B",void 0,D)}}function OQ(A,Q,E,D){if(jB){var w=s(A);if(w!==null){for(var G=null,J=[],L=0;L<D.length;L++){var q=D[L];G==null&&q.source!==null&&(G=q.source._debugTask),q=q.value,J.push(["Error",typeof q==="object"&&q!==null&&typeof q.message==="string"?String(q.message):String(q)])}A.key!==null&&VA("key",A.key,J,0,""),A.memoizedProps!==null&&lA(A.memoizedProps,J,0,""),G==null&&(G=A._debugTask),A={start:Q,end:E,detail:{devtools:{color:"error",track:"Components \u269B",tooltipText:A.tag===13?"Hydration failed":"Error boundary caught an error",properties:J}}},G?G.run(performance.measure.bind(performance,"\u200B"+w,A)):performance.measure("\u200B"+w,A)}}}function SQ(A,Q,E,D,w){if(w!==null){if(jB){var G=s(A);if(G!==null){D=[];for(var J=0;J<w.length;J++){var L=w[J].value;D.push(["Error",typeof L==="object"&&L!==null&&typeof L.message==="string"?String(L.message):String(L)])}A.key!==null&&VA("key",A.key,D,0,""),A.memoizedProps!==null&&lA(A.memoizedProps,D,0,""),Q={start:Q,end:E,detail:{devtools:{color:"error",track:"Components \u269B",tooltipText:"A lifecycle or effect errored",properties:D}}},(A=A._debugTask)?A.run(performance.measure.bind(performance,"\u200B"+G,Q)):performance.measure("\u200B"+G,Q)}}}else G=s(A),G!==null&&jB&&(w=1>D?"secondary-light":100>D?"secondary":500>D?"secondary-dark":"error",(A=A._debugTask)?A.run(console.timeStamp.bind(console,G,Q,E,"Components \u269B",void 0,w)):console.timeStamp(G,Q,E,"Components \u269B",void 0,w))}function L0(A,Q,E,D){if(jB&&!(Q<=A)){var w=(E&738197653)===E?"tertiary-dark":"primary-dark";E=(E&536870912)===E?"Prepared":(E&201326741)===E?"Hydrated":"Render",D?D.run(console.timeStamp.bind(console,E,A,Q,HB,"Scheduler \u269B",w)):console.timeStamp(E,A,Q,HB,"Scheduler \u269B",w)}}function vI(A,Q,E,D){!jB||Q<=A||(E=(E&738197653)===E?"tertiary-dark":"primary-dark",D?D.run(console.timeStamp.bind(console,"Prewarm",A,Q,HB,"Scheduler \u269B",E)):console.timeStamp("Prewarm",A,Q,HB,"Scheduler \u269B",E))}function GC(A,Q,E,D){!jB||Q<=A||(E=(E&738197653)===E?"tertiary-dark":"primary-dark",D?D.run(console.timeStamp.bind(console,"Suspended",A,Q,HB,"Scheduler \u269B",E)):console.timeStamp("Suspended",A,Q,HB,"Scheduler \u269B",E))}function ND(A,Q,E,D,w,G){if(jB&&!(Q<=A)){E=[];for(var J=0;J<D.length;J++){var L=D[J].value;E.push(["Recoverable Error",typeof L==="object"&&L!==null&&typeof L.message==="string"?String(L.message):String(L)])}A={start:A,end:Q,detail:{devtools:{color:"primary-dark",track:HB,trackGroup:"Scheduler \u269B",tooltipText:w?"Hydration Failed":"Recovered after Error",properties:E}}},G?G.run(performance.measure.bind(performance,"Recovered",A)):performance.measure("Recovered",A)}}function kE(A,Q,E,D){!jB||Q<=A||(D?D.run(console.timeStamp.bind(console,"Errored",A,Q,HB,"Scheduler \u269B","error")):console.timeStamp("Errored",A,Q,HB,"Scheduler \u269B","error"))}function Bg(A,Q,E,D){!jB||Q<=A||(D?D.run(console.timeStamp.bind(console,E,A,Q,HB,"Scheduler \u269B","secondary-light")):console.timeStamp(E,A,Q,HB,"Scheduler \u269B","secondary-light"))}function Qg(A,Q,E,D,w){if(jB&&!(Q<=A)){for(var G=[],J=0;J<E.length;J++){var L=E[J].value;G.push(["Error",typeof L==="object"&&L!==null&&typeof L.message==="string"?String(L.message):String(L)])}A={start:A,end:Q,detail:{devtools:{color:"error",track:HB,trackGroup:"Scheduler \u269B",tooltipText:D?"Remaining Effects Errored":"Commit Errored",properties:G}}},w?w.run(performance.measure.bind(performance,"Errored",A)):performance.measure("Errored",A)}}function NC(){}function u0(){if(FF===0){RU=console.log,WU=console.info,YU=console.warn,ZU=console.error,XU=console.group,qU=console.groupCollapsed,kU=console.groupEnd;var A={configurable:!0,enumerable:!0,value:NC,writable:!0};Object.defineProperties(console,{info:A,log:A,warn:A,error:A,group:A,groupCollapsed:A,groupEnd:A})}FF++}function K0(){if(FF--,FF===0){var A={configurable:!0,enumerable:!0,writable:!0};Object.defineProperties(console,{log:aQ({},A,{value:RU}),info:aQ({},A,{value:WU}),warn:aQ({},A,{value:YU}),error:aQ({},A,{value:ZU}),group:aQ({},A,{value:XU}),groupCollapsed:aQ({},A,{value:qU}),groupEnd:aQ({},A,{value:kU})})}0>FF&&console.error("disabledDepth fell below zero. This is a bug in React. Please file an issue.")}function FI(A){var Q=Error.prepareStackTrace;if(Error.prepareStackTrace=void 0,A=A.stack,Error.prepareStackTrace=Q,A.startsWith(`Error: react-stack-top-frame
32
+ `)&&(A=A.slice(29)),Q=A.indexOf(`
33
+ `),Q!==-1&&(A=A.slice(Q+1)),Q=A.indexOf("react_stack_bottom_frame"),Q!==-1&&(Q=A.lastIndexOf(`
34
+ `,Q)),Q!==-1)A=A.slice(0,Q);else return"";return A}function wQ(A){if(U6===void 0)try{throw Error()}catch(E){var Q=E.stack.trim().match(/\n( *(at )?)/);U6=Q&&Q[1]||"",zU=-1<E.stack.indexOf(`
35
+ at`)?" (<anonymous>)":-1<E.stack.indexOf("@")?"@unknown:0:0":""}return`
36
+ `+U6+A+zU}function p0(A,Q){if(!A||L6)return"";var E=u6.get(A);if(E!==void 0)return E;L6=!0,E=Error.prepareStackTrace,Error.prepareStackTrace=void 0;var D=null;D=p.H,p.H=null,u0();try{var w={DetermineComponentFrameRoot:function(){try{if(Q){var t=function(){throw Error()};if(Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(eA){var mA=eA}Reflect.construct(A,[],t)}else{try{t.call()}catch(eA){mA=eA}A.call(t.prototype)}}else{try{throw Error()}catch(eA){mA=eA}(t=A())&&typeof t.catch==="function"&&t.catch(function(){})}}catch(eA){if(eA&&mA&&typeof eA.stack==="string")return[eA.stack,mA.stack]}return[null,null]}};w.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var G=Object.getOwnPropertyDescriptor(w.DetermineComponentFrameRoot,"name");G&&G.configurable&&Object.defineProperty(w.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var J=w.DetermineComponentFrameRoot(),L=J[0],q=J[1];if(L&&q){var _=L.split(`
37
+ `),x=q.split(`
38
+ `);for(J=G=0;G<_.length&&!_[G].includes("DetermineComponentFrameRoot");)G++;for(;J<x.length&&!x[J].includes("DetermineComponentFrameRoot");)J++;if(G===_.length||J===x.length)for(G=_.length-1,J=x.length-1;1<=G&&0<=J&&_[G]!==x[J];)J--;for(;1<=G&&0<=J;G--,J--)if(_[G]!==x[J]){if(G!==1||J!==1)do if(G--,J--,0>J||_[G]!==x[J]){var i=`
39
+ `+_[G].replace(" at new "," at ");return A.displayName&&i.includes("<anonymous>")&&(i=i.replace("<anonymous>",A.displayName)),typeof A==="function"&&u6.set(A,i),i}while(1<=G&&0<=J);break}}}finally{L6=!1,p.H=D,K0(),Error.prepareStackTrace=E}return _=(_=A?A.displayName||A.name:"")?wQ(_):"",typeof A==="function"&&u6.set(A,_),_}function _I(A,Q){switch(A.tag){case 26:case 27:case 5:return wQ(A.type);case 16:return wQ("Lazy");case 13:return A.child!==Q&&Q!==null?wQ("Suspense Fallback"):wQ("Suspense");case 19:return wQ("SuspenseList");case 0:case 15:return p0(A.type,!1);case 11:return p0(A.type.render,!1);case 1:return p0(A.type,!0);case 31:return wQ("Activity");default:return""}}function K(A){try{var Q="",E=null;do{Q+=_I(A,E);var D=A._debugInfo;if(D)for(var w=D.length-1;0<=w;w--){var G=D[w];if(typeof G.name==="string"){var J=Q;A:{var{name:L,env:q,debugLocation:_}=G;if(_!=null){var x=FI(_),i=x.lastIndexOf(`
40
+ `),t=i===-1?x:x.slice(i+1);if(t.indexOf(L)!==-1){var mA=`
41
+ `+t;break A}}mA=wQ(L+(q?" ["+q+"]":""))}Q=J+mA}}E=A,A=A.return}while(A);return Q}catch(eA){return`
42
+ Error generating stack: `+eA.message+`
43
+ `+eA.stack}}function P(A){return(A=A?A.displayName||A.name:"")?wQ(A):""}function AA(A,Q){if(typeof A==="object"&&A!==null){var E=K6.get(A);if(E!==void 0)return E;return Q={value:A,source:Q,stack:K(Q)},K6.set(A,Q),Q}return{value:A,source:Q,stack:K(Q)}}function LA(A,Q){$Q(),yD[TD++]=wF,yD[TD++]=d8,d8=A,wF=Q}function yA(A,Q,E){$Q(),tI[eI++]=hE,tI[eI++]=bE,tI[eI++]=Yg,Yg=A;var D=hE;A=bE;var w=32-HI(D)-1;D&=~(1<<w),E+=1;var G=32-HI(Q)+w;if(30<G){var J=w-w%5;G=(D&(1<<J)-1).toString(32),D>>=J,w-=J,hE=1<<32-HI(Q)+w|E<<w|D,bE=G+A}else hE=1<<G|E<<w|D,bE=A}function QB(A){$Q(),A.return!==null&&(LA(A,1),yA(A,1,0))}function iA(A){for(;A===d8;)d8=yD[--TD],yD[TD]=null,wF=yD[--TD],yD[TD]=null;for(;A===Yg;)Yg=tI[--eI],tI[eI]=null,bE=tI[--eI],tI[eI]=null,hE=tI[--eI],tI[eI]=null}function ZB(){return $Q(),Yg!==null?{id:hE,overflow:bE}:null}function CB(A,Q){$Q(),tI[eI++]=hE,tI[eI++]=bE,tI[eI++]=Yg,hE=Q.id,bE=Q.overflow,Yg=A}function $Q(){LB||console.error("Expected to be hydrating. This is a bug in React. Please file an issue.")}function yQ(A){return A===null&&console.error("Expected host context to exist. This error is likely caused by a bug in React. Please file an issue."),A}function HC(A,Q){JA($C,Q,A),JA(GF,A,A),JA(SC,null,A),Q=iX(Q),qA(SC,A),JA(SC,Q,A)}function i0(A){qA(SC,A),qA(GF,A),qA($C,A)}function rI(){return yQ(SC.current)}function VI(A){A.memoizedState!==null&&JA(c8,A,A);var Q=yQ(SC.current),E=dX(Q,A.type);Q!==E&&(JA(GF,A,A),JA(SC,E,A))}function HD(A){GF.current===A&&(qA(SC,A),qA(GF,A)),c8.current===A&&(qA(c8,A),_E?Wg._currentValue=zD:Wg._currentValue2=zD)}function l1(A,Q){return A.serverProps===void 0&&A.serverTail.length===0&&A.children.length===1&&3<A.distanceFromLeaf&&A.distanceFromLeaf>15-Q?l1(A.children[0],Q):A}function dB(A){return" "+" ".repeat(A)}function zE(A){return"+ "+" ".repeat(A)}function sI(A){return"- "+" ".repeat(A)}function JD(A){switch(A.tag){case 26:case 27:case 5:return A.type;case 16:return"Lazy";case 31:return"Activity";case 13:return"Suspense";case 19:return"SuspenseList";case 0:case 15:return A=A.type,A.displayName||A.name||null;case 11:return A=A.type.render,A.displayName||A.name||null;case 1:return A=A.type,A.displayName||A.name||null;default:return null}}function OE(A,Q){return OU.test(A)?(A=JSON.stringify(A),A.length>Q-2?8>Q?'{"..."}':"{"+A.slice(0,Q-7)+'..."}':"{"+A+"}"):A.length>Q?5>Q?'{"..."}':A.slice(0,Q-3)+"...":A}function JC(A,Q,E){var D=120-2*E;if(Q===null)return zE(E)+OE(A,D)+`
44
+ `;if(typeof Q==="string"){for(var w=0;w<Q.length&&w<A.length&&Q.charCodeAt(w)===A.charCodeAt(w);w++);return w>D-8&&10<w&&(A="..."+A.slice(w-8),Q="..."+Q.slice(w-8)),zE(E)+OE(A,D)+`
45
+ `+sI(E)+OE(Q,D)+`
46
+ `}return dB(E)+OE(A,D)+`
47
+ `}function Ig(A){return Object.prototype.toString.call(A).replace(/^\[object (.*)\]$/,function(Q,E){return E})}function Eg(A,Q){switch(typeof A){case"string":return A=JSON.stringify(A),A.length>Q?5>Q?'"..."':A.slice(0,Q-4)+'..."':A;case"object":if(A===null)return"null";if(oQ(A))return"[...]";if(A.$$typeof===TE)return(Q=GA(A.type))?"<"+Q+">":"<...>";var E=Ig(A);if(E==="Object"){E="",Q-=2;for(var D in A)if(A.hasOwnProperty(D)){var w=JSON.stringify(D);if(w!=='"'+D+'"'&&(D=w),Q-=D.length-2,w=Eg(A[D],15>Q?Q:15),Q-=w.length,0>Q){E+=E===""?"...":", ...";break}E+=(E===""?"":",")+D+":"+w}return"{"+E+"}"}return E;case"function":return(Q=A.displayName||A.name)?"function "+Q:"function";default:return String(A)}}function MC(A,Q){return typeof A!=="string"||OU.test(A)?"{"+Eg(A,Q-2)+"}":A.length>Q-2?5>Q?'"..."':'"'+A.slice(0,Q-5)+'..."':'"'+A+'"'}function f2(A,Q,E){var D=120-E.length-A.length,w=[],G;for(G in Q)if(Q.hasOwnProperty(G)&&G!=="children"){var J=MC(Q[G],120-E.length-G.length-1);D-=G.length+J.length+2,w.push(G+"="+J)}return w.length===0?E+"<"+A+`>
48
+ `:0<D?E+"<"+A+" "+w.join(" ")+`>
49
+ `:E+"<"+A+`
50
+ `+E+" "+w.join(`
51
+ `+E+" ")+`
52
+ `+E+`>
53
+ `}function z4(A,Q,E){var D="",w=aQ({},Q),G;for(G in A)if(A.hasOwnProperty(G)){delete w[G];var J=120-2*E-G.length-2,L=Eg(A[G],J);Q.hasOwnProperty(G)?(J=Eg(Q[G],J),D+=zE(E)+G+": "+L+`
54
+ `,D+=sI(E)+G+": "+J+`
55
+ `):D+=zE(E)+G+": "+L+`
56
+ `}for(var q in w)w.hasOwnProperty(q)&&(A=Eg(w[q],120-2*E-q.length-2),D+=sI(E)+q+": "+A+`
57
+ `);return D}function O4(A,Q,E,D){var w="",G=new Map;for(_ in E)E.hasOwnProperty(_)&&G.set(_.toLowerCase(),_);if(G.size===1&&G.has("children"))w+=f2(A,Q,dB(D));else{for(var J in Q)if(Q.hasOwnProperty(J)&&J!=="children"){var L=120-2*(D+1)-J.length-1,q=G.get(J.toLowerCase());if(q!==void 0){G.delete(J.toLowerCase());var _=Q[J];q=E[q];var x=MC(_,L);L=MC(q,L),typeof _==="object"&&_!==null&&typeof q==="object"&&q!==null&&Ig(_)==="Object"&&Ig(q)==="Object"&&(2<Object.keys(_).length||2<Object.keys(q).length||-1<x.indexOf("...")||-1<L.indexOf("..."))?w+=dB(D+1)+J+`={{
58
+ `+z4(_,q,D+2)+dB(D+1)+`}}
59
+ `:(w+=zE(D+1)+J+"="+x+`
60
+ `,w+=sI(D+1)+J+"="+L+`
61
+ `)}else w+=dB(D+1)+J+"="+MC(Q[J],L)+`
62
+ `}G.forEach(function(i){if(i!=="children"){var t=120-2*(D+1)-i.length-1;w+=sI(D+1)+i+"="+MC(E[i],t)+`
63
+ `}}),w=w===""?dB(D)+"<"+A+`>
64
+ `:dB(D)+"<"+A+`
65
+ `+w+dB(D)+`>
66
+ `}if(A=E.children,Q=Q.children,typeof A==="string"||typeof A==="number"||typeof A==="bigint"){if(G="",typeof Q==="string"||typeof Q==="number"||typeof Q==="bigint")G=""+Q;w+=JC(G,""+A,D+1)}else if(typeof Q==="string"||typeof Q==="number"||typeof Q==="bigint")w=A==null?w+JC(""+Q,null,D+1):w+JC(""+Q,void 0,D+1);return w}function a1(A,Q){var E=JD(A);if(E===null){E="";for(A=A.child;A;)E+=a1(A,Q),A=A.sibling;return E}return dB(Q)+"<"+E+`>
67
+ `}function j2(A,Q){var E=l1(A,Q);if(E!==A&&(A.children.length!==1||A.children[0]!==E))return dB(Q)+`...
68
+ `+j2(E,Q+1);E="";var D=A.fiber._debugInfo;if(D)for(var w=0;w<D.length;w++){var G=D[w].name;typeof G==="string"&&(E+=dB(Q)+"<"+G+`>
69
+ `,Q++)}if(D="",w=A.fiber.pendingProps,A.fiber.tag===6)D=JC(w,A.serverProps,Q),Q++;else if(G=JD(A.fiber),G!==null)if(A.serverProps===void 0){D=Q;var J=120-2*D-G.length-2,L="";for(_ in w)if(w.hasOwnProperty(_)&&_!=="children"){var q=MC(w[_],15);if(J-=_.length+q.length+2,0>J){L+=" ...";break}L+=" "+_+"="+q}D=dB(D)+"<"+G+L+`>
70
+ `,Q++}else A.serverProps===null?(D=f2(G,w,zE(Q)),Q++):typeof A.serverProps==="string"?console.error("Should not have matched a non HostText fiber to a Text node. This is a bug in React."):(D=O4(G,w,A.serverProps,Q),Q++);var _="";w=A.fiber.child;for(G=0;w&&G<A.children.length;)J=A.children[G],J.fiber===w?(_+=j2(J,Q),G++):_+=a1(w,Q),w=w.sibling;w&&0<A.children.length&&(_+=dB(Q)+`...
71
+ `),w=A.serverTail,A.serverProps===null&&Q--;for(A=0;A<w.length;A++)G=w[A],_=typeof G==="string"?_+(sI(Q)+OE(G,120-2*Q)+`
72
+ `):_+f2(G.type,G.props,sI(Q));return E+D+_}function o1(A){try{return`
73
+
74
+ `+j2(A,0)}catch(Q){return""}}function S4(){if(fE===null)return"";var A=fE;try{var Q="";switch(A.tag===6&&(A=A.return),A.tag){case 26:case 27:case 5:Q+=wQ(A.type);break;case 13:Q+=wQ("Suspense");break;case 19:Q+=wQ("SuspenseList");break;case 31:Q+=wQ("Activity");break;case 30:case 0:case 15:case 1:A._debugOwner||Q!==""||(Q+=P(A.type));break;case 11:A._debugOwner||Q!==""||(Q+=P(A.type.render))}for(;A;)if(typeof A.tag==="number"){var E=A;A=E._debugOwner;var D=E._debugStack;if(A&&D){var w=FI(D);w!==""&&(Q+=`
75
+ `+w)}}else if(A.debugStack!=null){var G=A.debugStack;(A=A.owner)&&G&&(Q+=`
76
+ `+FI(G))}else break;var J=Q}catch(L){J=`
77
+ Error generating stack: `+L.message+`
78
+ `+L.stack}return J}function TA(A,Q,E,D,w,G,J){var L=fE;UC(A);try{return A!==null&&A._debugTask?A._debugTask.run(Q.bind(null,E,D,w,G,J)):Q(E,D,w,G,J)}finally{UC(L)}throw Error("runWithFiberInDEV should never be called in production. This is a bug in React.")}function UC(A){p.getCurrentStack=A===null?null:S4,CE=!1,fE=A}function SE(A,Q){if(A.return===null){if(bI===null)bI={fiber:A,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:Q};else{if(bI.fiber!==A)throw Error("Saw multiple hydration diff roots in a pass. This is a bug in React.");bI.distanceFromLeaf>Q&&(bI.distanceFromLeaf=Q)}return bI}var E=SE(A.return,Q+1).children;if(0<E.length&&E[E.length-1].fiber===A)return E=E[E.length-1],E.distanceFromLeaf>Q&&(E.distanceFromLeaf=Q),E;return Q={fiber:A,children:[],serverProps:void 0,serverTail:[],distanceFromLeaf:Q},E.push(Q),Q}function n1(){LB&&console.error("We should not be hydrating here. This is a bug in React. Please file a bug.")}function Cg(A,Q){gE||(A=SE(A,0),A.serverProps=null,Q!==null&&(Q=IU(Q),A.serverTail.push(Q)))}function R0(A){var Q=1<arguments.length&&arguments[1]!==void 0?arguments[1]:!1,E="",D=bI;throw D!==null&&(bI=null,E=o1(D)),wI(AA(Error("Hydration failed because the server rendered "+(Q?"text":"HTML")+` didn't match the client. As a result this tree will be regenerated on the client. This can happen if a SSR-ed Client Component used:
79
+
80
+ - A server/client branch \`if (typeof window !== 'undefined')\`.
81
+ - Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
82
+ - Date formatting in a user's locale which doesn't match the server.
83
+ - External changing data without sending a snapshot of it along with the HTML.
84
+ - Invalid HTML tag nesting.
85
+
86
+ It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
87
+
88
+ https://react.dev/link/hydration-mismatch`+E),A)),R6}function x2(A,Q){if(!CI)throw Error("Expected prepareToHydrateHostInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.");lq(A.stateNode,A.type,A.memoizedProps,Q,A)||R0(A,!0)}function gg(A){for(nQ=A.return;nQ;)switch(nQ.tag){case 5:case 31:case 13:A0=!1;return;case 27:case 3:A0=!0;return;default:nQ=nQ.return}}function LC(A){if(!CI||A!==nQ)return!1;if(!LB)return gg(A),LB=!0,!1;var Q=A.tag;if(TQ?Q!==3&&Q!==27&&(Q!==5||AU(A.type)&&!f8(A.type,A.memoizedProps))&&oB&&(r1(A),R0(A)):Q!==3&&(Q!==5||AU(A.type)&&!f8(A.type,A.memoizedProps))&&oB&&(r1(A),R0(A)),gg(A),Q===13){if(!CI)throw Error("Expected skipPastDehydratedSuspenseInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.");if(A=A.memoizedState,A=A!==null?A.dehydrated:null,!A)throw Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");oB=eM(A)}else if(Q===31){if(A=A.memoizedState,A=A!==null?A.dehydrated:null,!A)throw Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");oB=rq(A)}else oB=TQ&&Q===27?mq(A.type,oB):nQ?w6(A.stateNode):null;return!0}function r1(A){for(var Q=oB;Q;){var E=SE(A,0),D=IU(Q);E.serverTail.push(D),Q=D.type==="Suspense"?eM(Q):w6(Q)}}function d0(){CI&&(oB=nQ=null,gE=LB=!1)}function Dg(){var A=yC;return A!==null&&(uI===null?uI=A:uI.push.apply(uI,A),yC=null),A}function wI(A){yC===null?yC=[A]:yC.push(A)}function uC(){var A=bI;if(A!==null){bI=null;for(var Q=o1(A);0<A.children.length;)A=A.children[0];TA(A.fiber,function(){console.error(`A tree hydrated but some attributes of the server rendered HTML didn't match the client properties. This won't be patched up. This can happen if a SSR-ed Client Component used:
89
+
90
+ - A server/client branch \`if (typeof window !== 'undefined')\`.
91
+ - Variable input such as \`Date.now()\` or \`Math.random()\` which changes each time it's called.
92
+ - Date formatting in a user's locale which doesn't match the server.
93
+ - External changing data without sending a snapshot of it along with the HTML.
94
+ - Invalid HTML tag nesting.
95
+
96
+ It can also happen if the client has a browser extension installed which messes with the HTML before React loaded.
97
+
98
+ %s%s`,"https://react.dev/link/hydration-mismatch",Q)})}}function Fg(){vD=o8=null,_D=!1}function Y(A,Q,E){_E?(JA(l8,Q._currentValue,A),Q._currentValue=E,JA(W6,Q._currentRenderer,A),Q._currentRenderer!==void 0&&Q._currentRenderer!==null&&Q._currentRenderer!==a8&&console.error("Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."),Q._currentRenderer=a8):(JA(l8,Q._currentValue2,A),Q._currentValue2=E,JA(Y6,Q._currentRenderer2,A),Q._currentRenderer2!==void 0&&Q._currentRenderer2!==null&&Q._currentRenderer2!==a8&&console.error("Detected multiple renderers concurrently rendering the same context provider. This is currently unsupported."),Q._currentRenderer2=a8)}function Z(A,Q){var E=l8.current;_E?(A._currentValue=E,E=W6.current,qA(W6,Q),A._currentRenderer=E):(A._currentValue2=E,E=Y6.current,qA(Y6,Q),A._currentRenderer2=E),qA(l8,Q)}function S(A,Q,E){for(;A!==null;){var D=A.alternate;if((A.childLanes&Q)!==Q?(A.childLanes|=Q,D!==null&&(D.childLanes|=Q)):D!==null&&(D.childLanes&Q)!==Q&&(D.childLanes|=Q),A===E)break;A=A.return}A!==E&&console.error("Expected to find the propagation root when scheduling context work. This error is likely caused by a bug in React. Please file an issue.")}function V(A,Q,E,D){var w=A.child;w!==null&&(w.return=A);for(;w!==null;){var G=w.dependencies;if(G!==null){var J=w.child;G=G.firstContext;A:for(;G!==null;){var L=G;G=w;for(var q=0;q<Q.length;q++)if(L.context===Q[q]){G.lanes|=E,L=G.alternate,L!==null&&(L.lanes|=E),S(G.return,E,A),D||(J=null);break A}G=L.next}}else if(w.tag===18){if(J=w.return,J===null)throw Error("We just came from a parent so we must have had a parent. This is a bug in React.");J.lanes|=E,G=J.alternate,G!==null&&(G.lanes|=E),S(J,E,A),J=null}else J=w.child;if(J!==null)J.return=w;else for(J=w;J!==null;){if(J===A){J=null;break}if(w=J.sibling,w!==null){w.return=J.return,J=w;break}J=J.return}w=J}}function b(A,Q,E,D){A=null;for(var w=Q,G=!1;w!==null;){if(!G){if((w.flags&524288)!==0)G=!0;else if((w.flags&262144)!==0)break}if(w.tag===10){var J=w.alternate;if(J===null)throw Error("Should have a current fiber. This is a bug in React.");if(J=J.memoizedProps,J!==null){var L=w.type;JI(w.pendingProps.value,J.value)||(A!==null?A.push(L):A=[L])}}else if(w===c8.current){if(J=w.alternate,J===null)throw Error("Should have a current fiber. This is a bug in React.");J.memoizedState.memoizedState!==w.memoizedState.memoizedState&&(A!==null?A.push(Wg):A=[Wg])}w=w.return}A!==null&&V(Q,A,E,D),Q.flags|=262144}function a(A){for(A=A.firstContext;A!==null;){var Q=A.context;if(!JI(_E?Q._currentValue:Q._currentValue2,A.memoizedValue))return!0;A=A.next}return!1}function QA(A){o8=A,vD=null,A=A.dependencies,A!==null&&(A.firstContext=null)}function n(A){return _D&&console.error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo()."),uA(o8,A)}function RA(A,Q){return o8===null&&QA(A),uA(A,Q)}function uA(A,Q){var E=_E?Q._currentValue:Q._currentValue2;if(Q={context:Q,memoizedValue:E,next:null},vD===null){if(A===null)throw Error("Context can only be read while React is rendering. In classes, you can read it in the render method or getDerivedStateFromProps. In function components, you can read it directly in the function body, but not inside Hooks like useReducer() or useMemo().");vD=Q,A.dependencies={lanes:0,firstContext:Q,_debugThenableState:null},A.flags|=524288}else vD=vD.next=Q;return E}function zA(){return{controller:new zk,data:new Map,refCount:0}}function fA(A){A.controller.signal.aborted&&console.warn("A cache instance was retained after it was already freed. This likely indicates a bug in React."),A.refCount++}function UB(A){A.refCount--,0>A.refCount&&console.warn("A cache instance was released after it was already freed. This likely indicates a bug in React."),A.refCount===0&&Ok(Sk,function(){A.controller.abort()})}function OB(A,Q,E){if((A&127)!==0)0>DE&&(DE=RQ(),NF=n8(Q),Z6=Q,E!=null&&(X6=s(E)),xG()&&(DQ=!0,vC=1),A=CF(),Q=EF(),A!==VD||Q!==HF?VD=-1.1:Q!==null&&(vC=1),qg=A,HF=Q);else if((A&4194048)!==0&&0>B0&&(B0=RQ(),JF=n8(Q),SU=Q,E!=null&&($U=s(E)),0>iE)){if(A=CF(),Q=EF(),A!==VC||Q!==kg)VC=-1.1;_C=A,kg=Q}}function SB(A){if(0>DE){DE=RQ(),NF=A._debugTask!=null?A._debugTask:null,xG()&&(vC=1);var Q=CF(),E=EF();Q!==VD||E!==HF?VD=-1.1:E!==null&&(vC=1),qg=Q,HF=E}if(0>B0&&(B0=RQ(),JF=A._debugTask!=null?A._debugTask:null,0>iE)){if(A=CF(),Q=EF(),A!==VC||Q!==kg)VC=-1.1;_C=A,kg=Q}}function EQ(){var A=Zg;return Zg=0,A}function eQ(A){var Q=Zg;return Zg=A,Q}function W0(A){var Q=Zg;return Zg+=A,Q}function WI(){dA=pA=-1.1}function AI(){var A=pA;return pA=-1.1,A}function BI(A){0<=A&&(pA=A)}function c0(){var A=nB;return nB=-0,A}function l0(A){0<=A&&(nB=A)}function a0(){var A=cB;return cB=null,A}function o0(){var A=DQ;return DQ=!1,A}function $4(A){MI=RQ(),0>A.actualStartTime&&(A.actualStartTime=MI)}function y4(A){if(0<=MI){var Q=RQ()-MI;A.actualDuration+=Q,A.selfBaseDuration=Q,MI=-1}}function W9(A){if(0<=MI){var Q=RQ()-MI;A.actualDuration+=Q,MI=-1}}function n0(){if(0<=MI){var A=RQ(),Q=A-MI;MI=-1,Zg+=Q,nB+=Q,dA=A}}function Y9(A){cB===null&&(cB=[]),cB.push(A),xE===null&&(xE=[]),xE.push(A)}function r0(){MI=RQ(),0>pA&&(pA=MI)}function p2(A){for(var Q=A.child;Q;)A.actualDuration+=Q.actualDuration,Q=Q.sibling}function s1(){}function s0(A){A!==mD&&A.next===null&&(mD===null?Aw=mD=A:mD=mD.next=A),Bw=!0,p.actQueue!==null?z6||(z6=!0,z9()):k6||(k6=!0,z9())}function MD(A,Q){if(!O6&&Bw){O6=!0;do{var E=!1;for(var D=Aw;D!==null;){if(!Q)if(A!==0){var w=D.pendingLanes;if(w===0)var G=0;else{var{suspendedLanes:J,pingedLanes:L}=D;G=(1<<31-HI(42|A)+1)-1,G&=w&~(J&~L),G=G&201326741?G&201326741|1:G?G|2:0}G!==0&&(E=!0,k9(D,G))}else G=DB,G=IA(D,D===mB?G:0,D.cancelPendingCommit!==null||D.timeoutHandle!==Rg),(G&3)===0||_A(D,G)||(E=!0,k9(D,G));D=D.next}}while(E);O6=!1}}function Z9(){C6(),T4()}function T4(){Bw=z6=k6=!1;var A=0;zg!==0&&eX()&&(A=zg);for(var Q=vQ(),E=null,D=Aw;D!==null;){var w=D.next,G=X9(D,Q);if(G===0)D.next=null,E===null?Aw=w:E.next=w,w===null&&(mD=E);else if(E=D,A!==0||(G&3)!==0)Bw=!0;D=w}qQ!==xC&&qQ!==qw||MD(A,!1),zg!==0&&(zg=0)}function X9(A,Q){for(var{suspendedLanes:E,pingedLanes:D,expirationTimes:w}=A,G=A.pendingLanes&-62914561;0<G;){var J=31-HI(G),L=1<<J,q=w[J];if(q===-1){if((L&E)===0||(L&D)!==0)w[J]=OA(L,Q)}else q<=Q&&(A.expiredLanes|=L);G&=~L}if(Q=mB,E=DB,E=IA(A,A===Q?E:0,A.cancelPendingCommit!==null||A.timeoutHandle!==Rg),D=A.callbackNode,E===0||A===Q&&(yB===Vg||yB===Pg)||A.cancelPendingCommit!==null)return D!==null&&v4(D),A.callbackNode=null,A.callbackPriority=0;if((E&3)===0||_A(A,E)){if(Q=E&-E,Q!==A.callbackPriority||p.actQueue!==null&&D!==S6)v4(D);else return Q;switch(TB(E)){case 2:case 8:E=MU;break;case 32:E=DF;break;case 268435456:E=UU;break;default:E=DF}return D=q9.bind(null,A),p.actQueue!==null?(p.actQueue.push(D),E=S6):E=i8(E,D),A.callbackPriority=Q,A.callbackNode=E,Q}return D!==null&&v4(D),A.callbackPriority=2,A.callbackNode=null,2}function q9(A,Q){if(e8=t8=!1,C6(),qQ!==xC&&qQ!==qw)return A.callbackNode=null,A.callbackPriority=0,null;var E=A.callbackNode;if(y0===Xw&&(y0=t6),XD()&&A.callbackNode!==E)return null;var D=DB;if(D=IA(A,A===mB?D:0,A.cancelPendingCommit!==null||A.timeoutHandle!==Rg),D===0)return null;return GM(A,D,Q),X9(A,vQ()),A.callbackNode!=null&&A.callbackNode===E?q9.bind(null,A):null}function k9(A,Q){if(XD())return null;t8=e8,e8=!1,GM(A,Q,!0)}function v4(A){A!==S6&&A!==null&&uk(A)}function z9(){p.actQueue!==null&&p.actQueue.push(function(){return T4(),null}),Fq?wq(function(){(uB&(pQ|g0))!==xQ?i8(J6,Z9):T4()}):i8(J6,Z9)}function _4(){if(zg===0){var A=Og;A===0&&(A=j8,j8<<=1,(j8&261888)===0&&(j8=256)),zg=A}return zg}function IX(A,Q){if(UF===null){var E=UF=[];$6=0,Og=_4(),hD={status:"pending",value:void 0,then:function(D){E.push(D)}}}return $6++,Q.then(O9,O9),Q}function O9(){if(--$6===0&&(-1<B0||(iE=-1.1),UF!==null)){hD!==null&&(hD.status="fulfilled");var A=UF;UF=null,Og=0,hD=null;for(var Q=0;Q<A.length;Q++)(0,A[Q])()}}function EX(A,Q){var E=[],D={status:"pending",value:null,reason:null,then:function(w){E.push(w)}};return A.then(function(){D.status="fulfilled",D.value=Q;for(var w=0;w<E.length;w++)(0,E[w])(Q)},function(w){D.status="rejected",D.reason=w;for(w=0;w<E.length;w++)(0,E[w])(void 0)}),D}function V4(){var A=Sg.current;return A!==null?A:mB.pooledCache}function t1(A,Q){Q===null?JA(Sg,Sg.current,A):JA(Sg,Q.pool,A)}function S9(){var A=V4();return A===null?null:{parent:_E?gQ._currentValue:gQ._currentValue2,pool:A}}function e1(A,Q){if(JI(A,Q))return!0;if(typeof A!=="object"||A===null||typeof Q!=="object"||Q===null)return!1;var E=Object.keys(A),D=Object.keys(Q);if(E.length!==D.length)return!1;for(D=0;D<E.length;D++){var w=E[D];if(!M6.call(Q,w)||!JI(A[w],Q[w]))return!1}return!0}function $9(){return{didWarnAboutUncachedPromise:!1,thenables:[]}}function y9(A){return A=A.status,A==="fulfilled"||A==="rejected"}function T9(A,Q,E){p.actQueue!==null&&(p.didUsePromise=!0);var D=A.thenables;if(E=D[E],E===void 0?D.push(Q):E!==Q&&(A.didWarnAboutUncachedPromise||(A.didWarnAboutUncachedPromise=!0,console.error("A component was suspended by an uncached promise. Creating promises inside a Client Component or hook is not yet supported, except via a Suspense-compatible library or framework.")),Q.then(s1,s1),Q=E),Q._debugInfo===void 0){A=performance.now(),D=Q.displayName;var w={name:typeof D==="string"?D:"Promise",start:A,end:A,value:Q};Q._debugInfo=[{awaited:w}],Q.status!=="fulfilled"&&Q.status!=="rejected"&&(A=function(){w.end=performance.now()},Q.then(A,A))}switch(Q.status){case"fulfilled":return Q.value;case"rejected":throw A=Q.reason,_9(A),A;default:if(typeof Q.status==="string")Q.then(s1,s1);else{if(A=mB,A!==null&&100<A.shellSuspendCounter)throw Error("An unknown Component is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.");A=Q,A.status="pending",A.then(function(G){if(Q.status==="pending"){var J=Q;J.status="fulfilled",J.value=G}},function(G){if(Q.status==="pending"){var J=Q;J.status="rejected",J.reason=G}})}switch(Q.status){case"fulfilled":return Q.value;case"rejected":throw A=Q.reason,_9(A),A}throw yg=Q,ZF=!0,bD}}function KC(A){try{return vk(A)}catch(Q){if(Q!==null&&typeof Q==="object"&&typeof Q.then==="function")throw yg=Q,ZF=!0,bD;throw Q}}function v9(){if(yg===null)throw Error("Expected a suspended thenable. This is a bug in React. Please file an issue.");var A=yg;return yg=null,ZF=!1,A}function _9(A){if(A===bD||A===Iw)throw Error("Hooks are not supported inside an async component. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.")}function cQ(A){var Q=gB;return A!=null&&(gB=Q===null?A:Q.concat(A)),Q}function P4(){var A=gB;if(A!=null){for(var Q=A.length-1;0<=Q;Q--)if(A[Q].name!=null){var E=A[Q].debugTask;if(E!=null)return E}}return null}function A8(A,Q,E){for(var D=Object.keys(A.props),w=0;w<D.length;w++){var G=D[w];if(G!=="children"&&G!=="key"){Q===null&&(Q=m8(A,E.mode,0),Q._debugInfo=gB,Q.return=E),TA(Q,function(J){console.error("Invalid prop `%s` supplied to `React.Fragment`. React.Fragment can only have `key` and `children` props.",J)},G);break}}}function B8(A){var Q=XF;return XF+=1,fD===null&&(fD=$9()),T9(fD,A,Q)}function i2(A,Q){Q=Q.props.ref,A.ref=Q!==void 0?Q:null}function V9(A,Q){if(Q.$$typeof===bX)throw Error(`A React Element from an older version of React was rendered. This is not supported. It can happen if:
99
+ - Multiple copies of the "react" package is used.
100
+ - A library pre-bundled an old copy of "react" or "react/jsx-runtime".
101
+ - A compiler tries to "inline" JSX instead of using the runtime.`);throw A=Object.prototype.toString.call(Q),Error("Objects are not valid as a React child (found: "+(A==="[object Object]"?"object with keys {"+Object.keys(Q).join(", ")+"}":A)+"). If you meant to render a collection of children, use an array instead.")}function Q8(A,Q){var E=P4();E!==null?E.run(V9.bind(null,A,Q)):V9(A,Q)}function P9(A,Q){var E=s(A)||"Component";aU[E]||(aU[E]=!0,Q=Q.displayName||Q.name||"Component",A.tag===3?console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
102
+ root.render(%s)`,Q,Q,Q):console.error(`Functions are not valid as a React child. This may happen if you return %s instead of <%s /> from render. Or maybe you meant to call this function rather than return it.
103
+ <%s>{%s}</%s>`,Q,Q,E,Q,E))}function I8(A,Q){var E=P4();E!==null?E.run(P9.bind(null,A,Q)):P9(A,Q)}function m9(A,Q){var E=s(A)||"Component";oU[E]||(oU[E]=!0,Q=String(Q),A.tag===3?console.error(`Symbols are not valid as a React child.
104
+ root.render(%s)`,Q):console.error(`Symbols are not valid as a React child.
105
+ <%s>%s</%s>`,E,Q,E))}function E8(A,Q){var E=P4();E!==null?E.run(m9.bind(null,A,Q)):m9(A,Q)}function h9(A){function Q(y,T){if(A){var m=y.deletions;m===null?(y.deletions=[T],y.flags|=16):m.push(T)}}function E(y,T){if(!A)return null;for(;T!==null;)Q(y,T),T=T.sibling;return null}function D(y){for(var T=new Map;y!==null;)y.key!==null?T.set(y.key,y):T.set(y.index,y),y=y.sibling;return T}function w(y,T){return y=yE(y,T),y.index=0,y.sibling=null,y}function G(y,T,m){if(y.index=m,!A)return y.flags|=1048576,T;if(m=y.alternate,m!==null)return m=m.index,m<T?(y.flags|=67108866,T):m;return y.flags|=67108866,T}function J(y){return A&&y.alternate===null&&(y.flags|=67108866),y}function L(y,T,m,o){if(T===null||T.tag!==6)return T=rG(m,y.mode,o),T.return=y,T._debugOwner=y,T._debugTask=y._debugTask,T._debugInfo=gB,T;return T=w(T,m),T.return=y,T._debugInfo=gB,T}function q(y,T,m,o){var SA=m.type;if(SA===qD)return T=x(y,T,m.props.children,o,m.key),A8(m,T,y),T;if(T!==null&&(T.elementType===SA||yM(T,m)||typeof SA==="object"&&SA!==null&&SA.$$typeof===hI&&KC(SA)===T.type))return T=w(T,m.props),i2(T,m),T.return=y,T._debugOwner=m._owner,T._debugInfo=gB,T;return T=m8(m,y.mode,o),i2(T,m),T.return=y,T._debugInfo=gB,T}function _(y,T,m,o){if(T===null||T.tag!==4||T.stateNode.containerInfo!==m.containerInfo||T.stateNode.implementation!==m.implementation)return T=sG(m,y.mode,o),T.return=y,T._debugInfo=gB,T;return T=w(T,m.children||[]),T.return=y,T._debugInfo=gB,T}function x(y,T,m,o,SA){if(T===null||T.tag!==7)return T=ug(m,y.mode,o,SA),T.return=y,T._debugOwner=y,T._debugTask=y._debugTask,T._debugInfo=gB,T;return T=w(T,m),T.return=y,T._debugInfo=gB,T}function i(y,T,m){if(typeof T==="string"&&T!==""||typeof T==="number"||typeof T==="bigint")return T=rG(""+T,y.mode,m),T.return=y,T._debugOwner=y,T._debugTask=y._debugTask,T._debugInfo=gB,T;if(typeof T==="object"&&T!==null){switch(T.$$typeof){case TE:return m=m8(T,y.mode,m),i2(m,T),m.return=y,y=cQ(T._debugInfo),m._debugInfo=gB,gB=y,m;case Kg:return T=sG(T,y.mode,m),T.return=y,T._debugInfo=gB,T;case hI:var o=cQ(T._debugInfo);return T=KC(T),y=i(y,T,m),gB=o,y}if(oQ(T)||ZA(T))return m=ug(T,y.mode,m,null),m.return=y,m._debugOwner=y,m._debugTask=y._debugTask,y=cQ(T._debugInfo),m._debugInfo=gB,gB=y,m;if(typeof T.then==="function")return o=cQ(T._debugInfo),y=i(y,B8(T),m),gB=o,y;if(T.$$typeof===vE)return i(y,RA(y,T),m);Q8(y,T)}return typeof T==="function"&&I8(y,T),typeof T==="symbol"&&E8(y,T),null}function t(y,T,m,o){var SA=T!==null?T.key:null;if(typeof m==="string"&&m!==""||typeof m==="number"||typeof m==="bigint")return SA!==null?null:L(y,T,""+m,o);if(typeof m==="object"&&m!==null){switch(m.$$typeof){case TE:return m.key===SA?(SA=cQ(m._debugInfo),y=q(y,T,m,o),gB=SA,y):null;case Kg:return m.key===SA?_(y,T,m,o):null;case hI:return SA=cQ(m._debugInfo),m=KC(m),y=t(y,T,m,o),gB=SA,y}if(oQ(m)||ZA(m)){if(SA!==null)return null;return SA=cQ(m._debugInfo),y=x(y,T,m,o,null),gB=SA,y}if(typeof m.then==="function")return SA=cQ(m._debugInfo),y=t(y,T,B8(m),o),gB=SA,y;if(m.$$typeof===vE)return t(y,T,RA(y,m),o);Q8(y,m)}return typeof m==="function"&&I8(y,m),typeof m==="symbol"&&E8(y,m),null}function mA(y,T,m,o,SA){if(typeof o==="string"&&o!==""||typeof o==="number"||typeof o==="bigint")return y=y.get(m)||null,L(T,y,""+o,SA);if(typeof o==="object"&&o!==null){switch(o.$$typeof){case TE:return m=y.get(o.key===null?m:o.key)||null,y=cQ(o._debugInfo),T=q(T,m,o,SA),gB=y,T;case Kg:return y=y.get(o.key===null?m:o.key)||null,_(T,y,o,SA);case hI:var WB=cQ(o._debugInfo);return o=KC(o),T=mA(y,T,m,o,SA),gB=WB,T}if(oQ(o)||ZA(o))return m=y.get(m)||null,y=cQ(o._debugInfo),T=x(T,m,o,SA,null),gB=y,T;if(typeof o.then==="function")return WB=cQ(o._debugInfo),T=mA(y,T,m,B8(o),SA),gB=WB,T;if(o.$$typeof===vE)return mA(y,T,m,RA(T,o),SA);Q8(T,o)}return typeof o==="function"&&I8(T,o),typeof o==="symbol"&&E8(T,o),null}function eA(y,T,m,o){if(typeof m!=="object"||m===null)return o;switch(m.$$typeof){case TE:case Kg:O(y,T,m);var SA=m.key;if(typeof SA!=="string")break;if(o===null){o=new Set,o.add(SA);break}if(!o.has(SA)){o.add(SA);break}TA(T,function(){console.error("Encountered two children with the same key, `%s`. Keys should be unique so that components maintain their identity across updates. Non-unique keys may cause children to be duplicated and/or omitted \u2014 the behavior is unsupported and could change in a future version.",SA)});break;case hI:m=KC(m),eA(y,T,m,o)}return o}function vB(y,T,m,o){for(var SA=null,WB=null,tA=null,IB=T,EB=T=0,xB=null;IB!==null&&EB<m.length;EB++){IB.index>EB?(xB=IB,IB=null):xB=IB.sibling;var LQ=t(y,IB,m[EB],o);if(LQ===null){IB===null&&(IB=xB);break}SA=eA(y,LQ,m[EB],SA),A&&IB&&LQ.alternate===null&&Q(y,IB),T=G(LQ,T,EB),tA===null?WB=LQ:tA.sibling=LQ,tA=LQ,IB=xB}if(EB===m.length)return E(y,IB),LB&&LA(y,EB),WB;if(IB===null){for(;EB<m.length;EB++)IB=i(y,m[EB],o),IB!==null&&(SA=eA(y,IB,m[EB],SA),T=G(IB,T,EB),tA===null?WB=IB:tA.sibling=IB,tA=IB);return LB&&LA(y,EB),WB}for(IB=D(IB);EB<m.length;EB++)xB=mA(IB,y,EB,m[EB],o),xB!==null&&(SA=eA(y,xB,m[EB],SA),A&&xB.alternate!==null&&IB.delete(xB.key===null?EB:xB.key),T=G(xB,T,EB),tA===null?WB=xB:tA.sibling=xB,tA=xB);return A&&IB.forEach(function(rE){return Q(y,rE)}),LB&&LA(y,EB),WB}function A2(y,T,m,o){if(m==null)throw Error("An iterable object provided no iterator.");for(var SA=null,WB=null,tA=T,IB=T=0,EB=null,xB=null,LQ=m.next();tA!==null&&!LQ.done;IB++,LQ=m.next()){tA.index>IB?(EB=tA,tA=null):EB=tA.sibling;var rE=t(y,tA,LQ.value,o);if(rE===null){tA===null&&(tA=EB);break}xB=eA(y,rE,LQ.value,xB),A&&tA&&rE.alternate===null&&Q(y,tA),T=G(rE,T,IB),WB===null?SA=rE:WB.sibling=rE,WB=rE,tA=EB}if(LQ.done)return E(y,tA),LB&&LA(y,IB),SA;if(tA===null){for(;!LQ.done;IB++,LQ=m.next())tA=i(y,LQ.value,o),tA!==null&&(xB=eA(y,tA,LQ.value,xB),T=G(tA,T,IB),WB===null?SA=tA:WB.sibling=tA,WB=tA);return LB&&LA(y,IB),SA}for(tA=D(tA);!LQ.done;IB++,LQ=m.next())EB=mA(tA,y,IB,LQ.value,o),EB!==null&&(xB=eA(y,EB,LQ.value,xB),A&&EB.alternate!==null&&tA.delete(EB.key===null?IB:EB.key),T=G(EB,T,IB),WB===null?SA=EB:WB.sibling=EB,WB=EB);return A&&tA.forEach(function(jk){return Q(y,jk)}),LB&&LA(y,IB),SA}function T0(y,T,m,o){if(typeof m==="object"&&m!==null&&m.type===qD&&m.key===null&&(A8(m,null,y),m=m.props.children),typeof m==="object"&&m!==null){switch(m.$$typeof){case TE:var SA=cQ(m._debugInfo);A:{for(var WB=m.key;T!==null;){if(T.key===WB){if(WB=m.type,WB===qD){if(T.tag===7){E(y,T.sibling),o=w(T,m.props.children),o.return=y,o._debugOwner=m._owner,o._debugInfo=gB,A8(m,o,y),y=o;break A}}else if(T.elementType===WB||yM(T,m)||typeof WB==="object"&&WB!==null&&WB.$$typeof===hI&&KC(WB)===T.type){E(y,T.sibling),o=w(T,m.props),i2(o,m),o.return=y,o._debugOwner=m._owner,o._debugInfo=gB,y=o;break A}E(y,T);break}else Q(y,T);T=T.sibling}m.type===qD?(o=ug(m.props.children,y.mode,o,m.key),o.return=y,o._debugOwner=y,o._debugTask=y._debugTask,o._debugInfo=gB,A8(m,o,y),y=o):(o=m8(m,y.mode,o),i2(o,m),o.return=y,o._debugInfo=gB,y=o)}return y=J(y),gB=SA,y;case Kg:A:{SA=m;for(m=SA.key;T!==null;){if(T.key===m)if(T.tag===4&&T.stateNode.containerInfo===SA.containerInfo&&T.stateNode.implementation===SA.implementation){E(y,T.sibling),o=w(T,SA.children||[]),o.return=y,y=o;break A}else{E(y,T);break}else Q(y,T);T=T.sibling}o=sG(SA,y.mode,o),o.return=y,y=o}return J(y);case hI:return SA=cQ(m._debugInfo),m=KC(m),y=T0(y,T,m,o),gB=SA,y}if(oQ(m))return SA=cQ(m._debugInfo),y=vB(y,T,m,o),gB=SA,y;if(ZA(m)){if(SA=cQ(m._debugInfo),WB=ZA(m),typeof WB!=="function")throw Error("An object is not an iterable. This error is likely caused by a bug in React. Please file an issue.");var tA=WB.call(m);if(tA===m){if(y.tag!==0||Object.prototype.toString.call(y.type)!=="[object GeneratorFunction]"||Object.prototype.toString.call(tA)!=="[object Generator]")cU||console.error("Using Iterators as children is unsupported and will likely yield unexpected results because enumerating a generator mutates it. You may convert it to an array with `Array.from()` or the `[...spread]` operator before rendering. You can also use an Iterable that can iterate multiple times over the same items."),cU=!0}else m.entries!==WB||_6||(console.error("Using Maps as children is not supported. Use an array of keyed ReactElements instead."),_6=!0);return y=A2(y,T,tA,o),gB=SA,y}if(typeof m.then==="function")return SA=cQ(m._debugInfo),y=T0(y,T,B8(m),o),gB=SA,y;if(m.$$typeof===vE)return T0(y,T,RA(y,m),o);Q8(y,m)}if(typeof m==="string"&&m!==""||typeof m==="number"||typeof m==="bigint")return SA=""+m,T!==null&&T.tag===6?(E(y,T.sibling),o=w(T,SA),o.return=y,y=o):(E(y,T),o=rG(SA,y.mode,o),o.return=y,o._debugOwner=y,o._debugTask=y._debugTask,o._debugInfo=gB,y=o),J(y);return typeof m==="function"&&I8(y,m),typeof m==="symbol"&&E8(y,m),E(y,T)}return function(y,T,m,o){var SA=gB;gB=null;try{XF=0;var WB=T0(y,T,m,o);return fD=null,WB}catch(xB){if(xB===bD||xB===Iw)throw xB;var tA=U(29,xB,null,y.mode);tA.lanes=o,tA.return=y;var IB=tA._debugInfo=gB;if(tA._debugOwner=y._debugOwner,tA._debugTask=y._debugTask,IB!=null){for(var EB=IB.length-1;0<=EB;EB--)if(typeof IB[EB].stack==="string"){tA._debugOwner=IB[EB],tA._debugTask=IB[EB].debugTask;break}}return tA}finally{gB=SA}}}function b9(A,Q){var E=oQ(A);return A=!E&&typeof ZA(A)==="function",E||A?(E=E?"array":"iterable",console.error("A nested %s was passed to row #%s in <SuspenseList />. Wrap it in an additional SuspenseList to configure its revealOrder: <SuspenseList revealOrder=...> ... <SuspenseList revealOrder=...>{%s}</SuspenseList> ... </SuspenseList>",E,Q,E),!1):!0}function C8(){for(var A=jD,Q=V6=jD=0;Q<A;){var E=Q0[Q];Q0[Q++]=null;var D=Q0[Q];Q0[Q++]=null;var w=Q0[Q];Q0[Q++]=null;var G=Q0[Q];if(Q0[Q++]=null,D!==null&&w!==null){var J=D.pending;J===null?w.next=w:(w.next=J.next,J.next=w),D.pending=w}G!==0&&f9(E,w,G)}}function g8(A,Q,E,D){Q0[jD++]=A,Q0[jD++]=Q,Q0[jD++]=E,Q0[jD++]=D,V6|=D,A.lanes|=D,A=A.alternate,A!==null&&(A.lanes|=D)}function m4(A,Q,E,D){return g8(A,Q,E,D),D8(A)}function QI(A,Q){return g8(A,null,null,Q),D8(A)}function f9(A,Q,E){A.lanes|=E;var D=A.alternate;D!==null&&(D.lanes|=E);for(var w=!1,G=A.return;G!==null;)G.childLanes|=E,D=G.alternate,D!==null&&(D.childLanes|=E),G.tag===22&&(A=G.stateNode,A===null||A._visibility&qF||(w=!0)),A=G,G=G.return;return A.tag===3?(G=A.stateNode,w&&Q!==null&&(w=31-HI(E),A=G.hiddenUpdates,D=A[w],D===null?A[w]=[Q]:D.push(Q),Q.lane=E|536870912),G):null}function D8(A){if(mF>hk)throw hg=mF=0,hF=QN=null,Error("Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops.");hg>bk&&(hg=0,hF=null,console.error("Maximum update depth exceeded. This can happen when a component calls setState inside useEffect, but useEffect either doesn't have a dependency array, or one of the dependencies changes on every render.")),A.alternate===null&&(A.flags&4098)!==0&&$M(A);for(var Q=A,E=Q.return;E!==null;)Q.alternate===null&&(Q.flags&4098)!==0&&$M(A),Q=E,E=Q.return;return Q.tag===3?Q.stateNode:null}function h4(A){A.updateQueue={baseState:A.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function b4(A,Q){A=A.updateQueue,Q.updateQueue===A&&(Q.updateQueue={baseState:A.baseState,firstBaseUpdate:A.firstBaseUpdate,lastBaseUpdate:A.lastBaseUpdate,shared:A.shared,callbacks:null})}function RC(A){return{lane:A,tag:rU,payload:null,callback:null,next:null}}function WC(A,Q,E){var D=A.updateQueue;if(D===null)return null;if(D=D.shared,m6===D&&!eU){var w=s(A);console.error(`An update (setState, replaceState, or forceUpdate) was scheduled from inside an update function. Update functions should be pure, with zero side-effects. Consider using componentDidUpdate or a callback.
106
+
107
+ Please update the following component: %s`,w),eU=!0}if((uB&pQ)!==xQ)return w=D.pending,w===null?Q.next=Q:(Q.next=w.next,w.next=Q),D.pending=Q,Q=D8(A),f9(A,null,E),Q;return g8(A,D,Q,E),D8(A)}function d2(A,Q,E){if(Q=Q.updateQueue,Q!==null&&(Q=Q.shared,(E&4194048)!==0)){var D=Q.lanes;D&=A.pendingLanes,E|=D,Q.lanes=E,WA(A,E)}}function F8(A,Q){var{updateQueue:E,alternate:D}=A;if(D!==null&&(D=D.updateQueue,E===D)){var w=null,G=null;if(E=E.firstBaseUpdate,E!==null){do{var J={lane:E.lane,tag:E.tag,payload:E.payload,callback:null,next:null};G===null?w=G=J:G=G.next=J,E=E.next}while(E!==null);G===null?w=G=Q:G=G.next=Q}else w=G=Q;E={baseState:D.baseState,firstBaseUpdate:w,lastBaseUpdate:G,shared:D.shared,callbacks:D.callbacks},A.updateQueue=E;return}A=E.lastBaseUpdate,A===null?E.firstBaseUpdate=Q:A.next=Q,E.lastBaseUpdate=Q}function c2(){if(h6){var A=hD;if(A!==null)throw A}}function l2(A,Q,E,D){h6=!1;var w=A.updateQueue;PC=!1,m6=w.shared;var{firstBaseUpdate:G,lastBaseUpdate:J}=w,L=w.shared.pending;if(L!==null){w.shared.pending=null;var q=L,_=q.next;q.next=null,J===null?G=_:J.next=_,J=q;var x=A.alternate;x!==null&&(x=x.updateQueue,L=x.lastBaseUpdate,L!==J&&(L===null?x.firstBaseUpdate=_:L.next=_,x.lastBaseUpdate=q))}if(G!==null){var i=w.baseState;J=0,x=_=q=null,L=G;do{var t=L.lane&-536870913,mA=t!==L.lane;if(mA?(DB&t)===t:(D&t)===t){t!==0&&t===Og&&(h6=!0),x!==null&&(x=x.next={lane:0,tag:L.tag,payload:L.payload,callback:null,next:null});A:{t=A;var eA=L,vB=Q,A2=E;switch(eA.tag){case sU:if(eA=eA.payload,typeof eA==="function"){_D=!0;var T0=eA.call(A2,i,vB);if(t.mode&8){CA(!0);try{eA.call(A2,i,vB)}finally{CA(!1)}}_D=!1,i=T0;break A}i=eA;break A;case P6:t.flags=t.flags&-65537|128;case rU:if(T0=eA.payload,typeof T0==="function"){if(_D=!0,eA=T0.call(A2,i,vB),t.mode&8){CA(!0);try{T0.call(A2,i,vB)}finally{CA(!1)}}_D=!1}else eA=T0;if(eA===null||eA===void 0)break A;i=aQ({},i,eA);break A;case tU:PC=!0}}t=L.callback,t!==null&&(A.flags|=64,mA&&(A.flags|=8192),mA=w.callbacks,mA===null?w.callbacks=[t]:mA.push(t))}else mA={lane:t,tag:L.tag,payload:L.payload,callback:L.callback,next:null},x===null?(_=x=mA,q=i):x=x.next=mA,J|=t;if(L=L.next,L===null)if(L=w.shared.pending,L===null)break;else mA=L,L=mA.next,mA.next=null,w.lastBaseUpdate=mA,w.shared.pending=null}while(1);x===null&&(q=i),w.baseState=q,w.firstBaseUpdate=_,w.lastBaseUpdate=x,G===null&&(w.shared.lanes=0),bC|=J,A.lanes=J,A.memoizedState=i}m6=null}function j9(A,Q){if(typeof A!=="function")throw Error("Invalid argument passed as callback. Expected a function. Instead received: "+A);A.call(Q)}function CX(A,Q){var E=A.shared.hiddenCallbacks;if(E!==null)for(A.shared.hiddenCallbacks=null,A=0;A<E.length;A++)j9(E[A],Q)}function x9(A,Q){var E=A.callbacks;if(E!==null)for(A.callbacks=null,A=0;A<E.length;A++)j9(E[A],Q)}function p9(A,Q){var E=wE;JA(Cw,E,A),JA(xD,Q,A),wE=E|Q.baseLanes}function f4(A){JA(Cw,wE,A),JA(xD,xD.current,A)}function j4(A){wE=Cw.current,qA(xD,A),qA(Cw,A)}function YC(A){var Q=A.alternate;JA(UQ,UQ.current&pD,A),JA(fI,A,A),I0===null&&(Q===null||xD.current!==null?I0=A:Q.memoizedState!==null&&(I0=A))}function x4(A){JA(UQ,UQ.current,A),JA(fI,A,A),I0===null&&(I0=A)}function i9(A){A.tag===22?(JA(UQ,UQ.current,A),JA(fI,A,A),I0===null&&(I0=A)):ZC(A)}function ZC(A){JA(UQ,UQ.current,A),JA(fI,fI.current,A)}function PI(A){qA(fI,A),I0===A&&(I0=null),qA(UQ,A)}function w8(A){for(var Q=A;Q!==null;){if(Q.tag===13){var E=Q.memoizedState;if(E!==null&&(E=E.dehydrated,E===null||D6(E)||F6(E)))return Q}else if(Q.tag===19&&(Q.memoizedProps.revealOrder==="forwards"||Q.memoizedProps.revealOrder==="backwards"||Q.memoizedProps.revealOrder==="unstable_legacy-backwards"||Q.memoizedProps.revealOrder==="together")){if((Q.flags&128)!==0)return Q}else if(Q.child!==null){Q.child.return=Q,Q=Q.child;continue}if(Q===A)break;for(;Q.sibling===null;){if(Q.return===null||Q.return===A)return null;Q=Q.return}Q.sibling.return=Q.return,Q=Q.sibling}return null}function NB(){var A=j;C0===null?C0=[A]:C0.push(A)}function gA(){var A=j;if(C0!==null&&(aE++,C0[aE]!==A)){var Q=s(sA);if(!A7.has(Q)&&(A7.add(Q),C0!==null)){for(var E="",D=0;D<=aE;D++){var w=C0[D],G=D===aE?A:w;for(w=D+1+". "+w;30>w.length;)w+=" ";w+=G+`
108
+ `,E+=w}console.error(`React has detected a change in the order of Hooks called by %s. This will lead to bugs and errors if not fixed. For more information, read the Rules of Hooks: https://react.dev/link/rules-of-hooks
109
+
110
+ Previous render Next render
111
+ ------------------------------------------------------
112
+ %s ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
113
+ `,Q,E)}}}function UD(A){A===void 0||A===null||oQ(A)||console.error("%s received a final argument that is not an array (instead, received `%s`). When specified, the final argument must be an array.",j,typeof A)}function G8(){var A=s(sA);Q7.has(A)||(Q7.add(A),console.error("ReactDOM.useFormState has been renamed to React.useActionState. Please update %s to use React.useActionState.",A))}function GQ(){throw Error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
114
+ 1. You might have mismatching versions of React and the renderer (such as React DOM)
115
+ 2. You might be breaking the Rules of Hooks
116
+ 3. You might have more than one copy of React in the same app
117
+ See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`)}function p4(A,Q){if(OF)return!1;if(Q===null)return console.error("%s received a final argument during this render, but not during the previous render. Even though the final argument is optional, its type cannot change between renders.",j),!1;A.length!==Q.length&&console.error(`The final argument passed to %s changed size between renders. The order and size of this array must remain constant.
118
+
119
+ Previous: %s
120
+ Incoming: %s`,j,"["+Q.join(", ")+"]","["+A.join(", ")+"]");for(var E=0;E<Q.length&&E<A.length;E++)if(!JI(A[E],Q[E]))return!1;return!0}function i4(A,Q,E,D,w,G){if(cE=G,sA=Q,C0=A!==null?A._debugHookTypes:null,aE=-1,OF=A!==null&&A.type!==Q.type,Object.prototype.toString.call(E)==="[object AsyncFunction]"||Object.prototype.toString.call(E)==="[object AsyncGeneratorFunction]")G=s(sA),b6.has(G)||(b6.add(G),console.error("%s is an async Client Component. Only Server Components can be async at the moment. This error is often caused by accidentally adding `'use client'` to a module that was originally written for the server.",G===null?"An unknown Component":"<"+G+">"));Q.memoizedState=null,Q.updateQueue=null,Q.lanes=0,p.H=A!==null&&A.memoizedState!==null?j6:C0!==null?I7:f6,vg=G=(Q.mode&8)!==aA;var J=y6(E,D,w);if(vg=!1,dD&&(J=d4(Q,E,D,w)),G){CA(!0);try{J=d4(Q,E,D,w)}finally{CA(!1)}}return d9(A,Q),J}function d9(A,Q){Q._debugHookTypes=C0,Q.dependencies===null?lE!==null&&(Q.dependencies={lanes:0,firstContext:null,_debugThenableState:lE}):Q.dependencies._debugThenableState=lE,p.H=SF;var E=PB!==null&&PB.next!==null;if(cE=0,C0=j=WQ=PB=sA=null,aE=-1,A!==null&&(A.flags&65011712)!==(Q.flags&65011712)&&console.error("Internal React error: Expected static flag was missing. Please notify the React team."),Dw=!1,zF=0,lE=null,E)throw Error("Rendered fewer hooks than expected. This may be caused by an accidental early return statement.");A===null||YQ||(A=A.dependencies,A!==null&&a(A)&&(YQ=!0)),ZF?(ZF=!1,A=!0):A=!1,A&&(Q=s(Q)||"Unknown",B7.has(Q)||b6.has(Q)||(B7.add(Q),console.error("`use` was called from inside a try/catch block. This is not allowed and can lead to unexpected behavior. To handle errors triggered by `use`, wrap your component in a error boundary.")))}function d4(A,Q,E,D){sA=A;var w=0;do{if(dD&&(lE=null),zF=0,dD=!1,w>=Vk)throw Error("Too many re-renders. React limits the number of renders to prevent an infinite loop.");if(w+=1,OF=!1,WQ=PB=null,A.updateQueue!=null){var G=A.updateQueue;G.lastEffect=null,G.events=null,G.stores=null,G.memoCache!=null&&(G.memoCache.index=0)}aE=-1,p.H=E7,G=y6(Q,E,D)}while(dD);return G}function gX(){var A=p.H,Q=A.useState()[0];return Q=typeof Q.then==="function"?a2(Q):Q,A=A.useState()[0],(PB!==null?PB.memoizedState:null)!==A&&(sA.flags|=1024),Q}function c4(){var A=Fw!==0;return Fw=0,A}function l4(A,Q,E){Q.updateQueue=A.updateQueue,Q.flags=(Q.mode&16)!==aA?Q.flags&-402655237:Q.flags&-2053,A.lanes&=~E}function a4(A){if(Dw){for(A=A.memoizedState;A!==null;){var Q=A.queue;Q!==null&&(Q.pending=null),A=A.next}Dw=!1}cE=0,C0=WQ=PB=sA=null,aE=-1,j=null,dD=!1,zF=Fw=0,lE=null}function GI(){var A={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return WQ===null?sA.memoizedState=WQ=A:WQ=WQ.next=A,WQ}function $B(){if(PB===null){var A=sA.alternate;A=A!==null?A.memoizedState:null}else A=PB.next;var Q=WQ===null?sA.memoizedState:WQ.next;if(Q!==null)WQ=Q,PB=A;else{if(A===null){if(sA.alternate===null)throw Error("Update hook called on initial render. This is likely a bug in React. Please file an issue.");throw Error("Rendered more hooks than during the previous render.")}PB=A,A={memoizedState:PB.memoizedState,baseState:PB.baseState,baseQueue:PB.baseQueue,queue:PB.queue,next:null},WQ===null?sA.memoizedState=WQ=A:WQ=WQ.next=A}return WQ}function N8(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function a2(A){var Q=zF;return zF+=1,lE===null&&(lE=$9()),A=T9(lE,A,Q),Q=sA,(WQ===null?Q.memoizedState:WQ.next)===null&&(Q=Q.alternate,p.H=Q!==null&&Q.memoizedState!==null?j6:f6),A}function XC(A){if(A!==null&&typeof A==="object"){if(typeof A.then==="function")return a2(A);if(A.$$typeof===vE)return n(A)}throw Error("An unsupported type was passed to use(): "+String(A))}function wg(A){var Q=null,E=sA.updateQueue;if(E!==null&&(Q=E.memoCache),Q==null){var D=sA.alternate;D!==null&&(D=D.updateQueue,D!==null&&(D=D.memoCache,D!=null&&(Q={data:D.data.map(function(w){return w.slice()}),index:0})))}if(Q==null&&(Q={data:[],index:0}),E===null&&(E=N8(),sA.updateQueue=E),E.memoCache=Q,E=Q.data[Q.index],E===void 0||OF)for(E=Q.data[Q.index]=Array(A),D=0;D<A;D++)E[D]=fX;else E.length!==A&&console.error("Expected a constant size argument for each invocation of useMemoCache. The previous cache was allocated with size %s but size %s was requested.",E.length,A);return Q.index++,E}function Y0(A,Q){return typeof Q==="function"?Q(A):Q}function o4(A,Q,E){var D=GI();if(E!==void 0){var w=E(Q);if(vg){CA(!0);try{E(Q)}finally{CA(!1)}}}else w=Q;return D.memoizedState=D.baseState=w,A={pending:null,lanes:0,dispatch:null,lastRenderedReducer:A,lastRenderedState:w},D.queue=A,A=A.dispatch=NX.bind(null,sA,A),[D.memoizedState,A]}function LD(A){var Q=$B();return n4(Q,PB,A)}function n4(A,Q,E){var D=A.queue;if(D===null)throw Error("Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)");D.lastRenderedReducer=E;var w=A.baseQueue,G=D.pending;if(G!==null){if(w!==null){var J=w.next;w.next=G.next,G.next=J}Q.baseQueue!==w&&console.error("Internal error: Expected work-in-progress queue to be a clone. This is a bug in React."),Q.baseQueue=w=G,D.pending=null}if(G=A.baseState,w===null)A.memoizedState=G;else{Q=w.next;var L=J=null,q=null,_=Q,x=!1;do{var i=_.lane&-536870913;if(i!==_.lane?(DB&i)===i:(cE&i)===i){var t=_.revertLane;if(t===0)q!==null&&(q=q.next={lane:0,revertLane:0,gesture:null,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null}),i===Og&&(x=!0);else if((cE&t)===t){_=_.next,t===Og&&(x=!0);continue}else i={lane:0,revertLane:_.revertLane,gesture:null,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null},q===null?(L=q=i,J=G):q=q.next=i,sA.lanes|=t,bC|=t;i=_.action,vg&&E(G,i),G=_.hasEagerState?_.eagerState:E(G,i)}else t={lane:i,revertLane:_.revertLane,gesture:_.gesture,action:_.action,hasEagerState:_.hasEagerState,eagerState:_.eagerState,next:null},q===null?(L=q=t,J=G):q=q.next=t,sA.lanes|=i,bC|=i;_=_.next}while(_!==null&&_!==Q);if(q===null?J=G:q.next=L,!JI(G,A.memoizedState)&&(YQ=!0,x&&(E=hD,E!==null)))throw E;A.memoizedState=G,A.baseState=J,A.baseQueue=q,D.lastRenderedState=G}return w===null&&(D.lanes=0),[A.memoizedState,D.dispatch]}function o2(A){var Q=$B(),E=Q.queue;if(E===null)throw Error("Should have a queue. You are likely calling Hooks conditionally, which is not allowed. (https://react.dev/link/invalid-hook-call)");E.lastRenderedReducer=A;var{dispatch:D,pending:w}=E,G=Q.memoizedState;if(w!==null){E.pending=null;var J=w=w.next;do G=A(G,J.action),J=J.next;while(J!==w);JI(G,Q.memoizedState)||(YQ=!0),Q.memoizedState=G,Q.baseQueue===null&&(Q.baseState=G),E.lastRenderedState=G}return[G,D]}function r4(A,Q,E){var D=sA,w=GI();if(LB){if(E===void 0)throw Error("Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.");var G=E();iD||G===E()||(console.error("The result of getServerSnapshot should be cached to avoid an infinite loop"),iD=!0)}else{if(G=Q(),iD||(E=Q(),JI(G,E)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),iD=!0)),mB===null)throw Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");(DB&127)!==0||c9(D,Q,G)}return w.memoizedState=G,E={value:G,getSnapshot:Q},w.queue=E,U8(a9.bind(null,D,E,A),[A]),D.flags|=2048,KD(E0|LI,{destroy:void 0},l9.bind(null,D,E,G,Q),null),G}function H8(A,Q,E){var D=sA,w=$B(),G=LB;if(G){if(E===void 0)throw Error("Missing getServerSnapshot, which is required for server-rendered content. Will revert to client rendering.");E=E()}else if(E=Q(),!iD){var J=Q();JI(E,J)||(console.error("The result of getSnapshot should be cached to avoid an infinite loop"),iD=!0)}if(J=!JI((PB||w).memoizedState,E))w.memoizedState=E,YQ=!0;w=w.queue;var L=a9.bind(null,D,w,A);if(YI(2048,LI,L,[A]),w.getSnapshot!==Q||J||WQ!==null&&WQ.memoizedState.tag&E0){if(D.flags|=2048,KD(E0|LI,{destroy:void 0},l9.bind(null,D,w,E,Q),null),mB===null)throw Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");G||(cE&127)!==0||c9(D,Q,E)}return E}function c9(A,Q,E){A.flags|=16384,A={getSnapshot:Q,value:E},Q=sA.updateQueue,Q===null?(Q=N8(),sA.updateQueue=Q,Q.stores=[A]):(E=Q.stores,E===null?Q.stores=[A]:E.push(A))}function l9(A,Q,E,D){Q.value=E,Q.getSnapshot=D,o9(Q)&&n9(A)}function a9(A,Q,E){return E(function(){o9(Q)&&(OB(2,"updateSyncExternalStore()",A),n9(A))})}function o9(A){var Q=A.getSnapshot;A=A.value;try{var E=Q();return!JI(A,E)}catch(D){return!0}}function n9(A){var Q=QI(A,2);Q!==null&&CQ(Q,A,2)}function s4(A){var Q=GI();if(typeof A==="function"){var E=A;if(A=E(),vg){CA(!0);try{E()}finally{CA(!1)}}}return Q.memoizedState=Q.baseState=A,Q.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Y0,lastRenderedState:A},Q}function t4(A){A=s4(A);var Q=A.queue,E=JJ.bind(null,sA,Q);return Q.dispatch=E,[A.memoizedState,E]}function e4(A){var Q=GI();Q.memoizedState=Q.baseState=A;var E={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return Q.queue=E,Q=HG.bind(null,sA,!0,E),E.dispatch=Q,[A,Q]}function r9(A,Q){var E=$B();return s9(E,PB,A,Q)}function s9(A,Q,E,D){return A.baseState=E,n4(A,PB,typeof D==="function"?D:Y0)}function t9(A,Q){var E=$B();if(PB!==null)return s9(E,PB,A,Q);return E.baseState=A,[A,E.queue.dispatch]}function DX(A,Q,E,D,w){if(Y8(A))throw Error("Cannot update form state while rendering.");if(A=Q.action,A!==null){var G={payload:w,action:A,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(J){G.listeners.push(J)}};p.T!==null?E(!0):G.isTransition=!1,D(G),E=Q.pending,E===null?(G.next=Q.pending=G,e9(Q,G)):(G.next=E.next,Q.pending=E.next=G)}}function e9(A,Q){var{action:E,payload:D}=Q,w=A.state;if(Q.isTransition){var G=p.T,J={};J._updatedFibers=new Set,p.T=J;try{var L=E(w,D),q=p.S;q!==null&&q(J,L),AJ(A,Q,L)}catch(_){AG(A,Q,_)}finally{G!==null&&J.types!==null&&(G.types!==null&&G.types!==J.types&&console.error("We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."),G.types=J.types),p.T=G,G===null&&J._updatedFibers&&(A=J._updatedFibers.size,J._updatedFibers.clear(),10<A&&console.warn("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."))}}else try{J=E(w,D),AJ(A,Q,J)}catch(_){AG(A,Q,_)}}function AJ(A,Q,E){E!==null&&typeof E==="object"&&typeof E.then==="function"?(p.asyncTransitions++,E.then(W8,W8),E.then(function(D){BJ(A,Q,D)},function(D){return AG(A,Q,D)}),Q.isTransition||console.error("An async function with useActionState was called outside of a transition. This is likely not what you intended (for example, isPending will not update correctly). Either call the returned function inside startTransition, or pass it to an `action` or `formAction` prop.")):BJ(A,Q,E)}function BJ(A,Q,E){Q.status="fulfilled",Q.value=E,QJ(Q),A.state=E,Q=A.pending,Q!==null&&(E=Q.next,E===Q?A.pending=null:(E=E.next,Q.next=E,e9(A,E)))}function AG(A,Q,E){var D=A.pending;if(A.pending=null,D!==null){D=D.next;do Q.status="rejected",Q.reason=E,QJ(Q),Q=Q.next;while(Q!==D)}A.action=null}function QJ(A){A=A.listeners;for(var Q=0;Q<A.length;Q++)(0,A[Q])()}function IJ(A,Q){return Q}function uD(A,Q){if(LB){var E=mB.formState;if(E!==null){A:{var D=sA;if(LB){if(oB){var w=Vq(oB,A0);if(w){oB=w6(w),D=Pq(w);break A}}R0(D)}D=!1}D&&(Q=E[0])}}E=GI(),E.memoizedState=E.baseState=Q,D={pending:null,lanes:0,dispatch:null,lastRenderedReducer:IJ,lastRenderedState:Q},E.queue=D,E=JJ.bind(null,sA,D),D.dispatch=E,D=s4(!1);var G=HG.bind(null,sA,!1,D.queue);return D=GI(),w={state:Q,dispatch:null,action:A,pending:null},D.queue=w,E=DX.bind(null,sA,w,G,E),w.dispatch=E,D.memoizedState=A,[Q,E,!1]}function J8(A){var Q=$B();return EJ(Q,PB,A)}function EJ(A,Q,E){if(Q=n4(A,Q,IJ)[0],A=LD(Y0)[0],typeof Q==="object"&&Q!==null&&typeof Q.then==="function")try{var D=a2(Q)}catch(J){if(J===bD)throw Iw;throw J}else D=Q;Q=$B();var w=Q.queue,G=w.dispatch;return E!==Q.memoizedState&&(sA.flags|=2048,KD(E0|LI,{destroy:void 0},FX.bind(null,w,E),null)),[D,G,A]}function FX(A,Q){A.action=Q}function M8(A){var Q=$B(),E=PB;if(E!==null)return EJ(Q,E,A);$B(),Q=Q.memoizedState,E=$B();var D=E.queue.dispatch;return E.memoizedState=A,[Q,D,!1]}function KD(A,Q,E,D){return A={tag:A,create:E,deps:D,inst:Q,next:null},Q=sA.updateQueue,Q===null&&(Q=N8(),sA.updateQueue=Q),E=Q.lastEffect,E===null?Q.lastEffect=A.next=A:(D=E.next,E.next=A,A.next=D,Q.lastEffect=A),A}function BG(A){var Q=GI();return A={current:A},Q.memoizedState=A}function Gg(A,Q,E,D){var w=GI();sA.flags|=A,w.memoizedState=KD(E0|Q,{destroy:void 0},E,D===void 0?null:D)}function YI(A,Q,E,D){var w=$B();D=D===void 0?null:D;var G=w.memoizedState.inst;PB!==null&&D!==null&&p4(D,PB.memoizedState.deps)?w.memoizedState=KD(Q,G,E,D):(sA.flags|=A,w.memoizedState=KD(E0|Q,G,E,D))}function U8(A,Q){(sA.mode&16)!==aA?Gg(276826112,LI,A,Q):Gg(8390656,LI,A,Q)}function wX(A){sA.flags|=4;var Q=sA.updateQueue;if(Q===null)Q=N8(),sA.updateQueue=Q,Q.events=[A];else{var E=Q.events;E===null?Q.events=[A]:E.push(A)}}function QG(A){var Q=GI(),E={impl:A};return Q.memoizedState=E,function(){if((uB&pQ)!==xQ)throw Error("A function wrapped in useEffectEvent can't be called during rendering.");return E.impl.apply(void 0,arguments)}}function L8(A){var Q=$B().memoizedState;return wX({ref:Q,nextImpl:A}),function(){if((uB&pQ)!==xQ)throw Error("A function wrapped in useEffectEvent can't be called during rendering.");return Q.impl.apply(void 0,arguments)}}function IG(A,Q){var E=4194308;return(sA.mode&16)!==aA&&(E|=134217728),Gg(E,jI,A,Q)}function CJ(A,Q){if(typeof Q==="function"){A=A();var E=Q(A);return function(){typeof E==="function"?E():Q(null)}}if(Q!==null&&Q!==void 0)return Q.hasOwnProperty("current")||console.error("Expected useImperativeHandle() first argument to either be a ref callback or React.createRef() object. Instead received: %s.","an object with keys {"+Object.keys(Q).join(", ")+"}"),A=A(),Q.current=A,function(){Q.current=null}}function EG(A,Q,E){typeof Q!=="function"&&console.error("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",Q!==null?typeof Q:"null"),E=E!==null&&E!==void 0?E.concat([A]):null;var D=4194308;(sA.mode&16)!==aA&&(D|=134217728),Gg(D,jI,CJ.bind(null,Q,A),E)}function u8(A,Q,E){typeof Q!=="function"&&console.error("Expected useImperativeHandle() second argument to be a function that creates a handle. Instead received: %s.",Q!==null?typeof Q:"null"),E=E!==null&&E!==void 0?E.concat([A]):null,YI(4,jI,CJ.bind(null,Q,A),E)}function CG(A,Q){return GI().memoizedState=[A,Q===void 0?null:Q],A}function K8(A,Q){var E=$B();Q=Q===void 0?null:Q;var D=E.memoizedState;if(Q!==null&&p4(Q,D[1]))return D[0];return E.memoizedState=[A,Q],A}function gG(A,Q){var E=GI();Q=Q===void 0?null:Q;var D=A();if(vg){CA(!0);try{A()}finally{CA(!1)}}return E.memoizedState=[D,Q],D}function R8(A,Q){var E=$B();Q=Q===void 0?null:Q;var D=E.memoizedState;if(Q!==null&&p4(Q,D[1]))return D[0];if(D=A(),vg){CA(!0);try{A()}finally{CA(!1)}}return E.memoizedState=[D,Q],D}function DG(A,Q){var E=GI();return FG(E,A,Q)}function gJ(A,Q){var E=$B();return FJ(E,PB.memoizedState,A,Q)}function DJ(A,Q){var E=$B();return PB===null?FG(E,A,Q):FJ(E,PB.memoizedState,A,Q)}function FG(A,Q,E){if(E===void 0||(cE&1073741824)!==0&&(DB&261930)===0)return A.memoizedState=Q;return A.memoizedState=E,A=wM(),sA.lanes|=A,bC|=A,E}function FJ(A,Q,E,D){if(JI(E,Q))return E;if(xD.current!==null)return A=FG(A,E,D),JI(A,Q)||(YQ=!0),A;if((cE&42)===0||(cE&1073741824)!==0&&(DB&261930)===0)return YQ=!0,A.memoizedState=E;return A=wM(),sA.lanes|=A,bC|=A,Q}function W8(){p.asyncTransitions--}function wJ(A,Q,E,D,w){var G=VE();fQ(G!==0&&8>G?G:8);var J=p.T,L={};L._updatedFibers=new Set,p.T=L,HG(A,!1,Q,E);try{var q=w(),_=p.S;if(_!==null&&_(L,q),q!==null&&typeof q==="object"&&typeof q.then==="function"){p.asyncTransitions++,q.then(W8,W8);var x=EX(q,D);n2(A,Q,x,mI(A))}else n2(A,Q,D,mI(A))}catch(i){n2(A,Q,{then:function(){},status:"rejected",reason:i},mI(A))}finally{fQ(G),J!==null&&L.types!==null&&(J.types!==null&&J.types!==L.types&&console.error("We expected inner Transitions to have transferred the outer types set and that you cannot add to the outer Transition while inside the inner.This is a bug in React."),J.types=L.types),p.T=J,J===null&&L._updatedFibers&&(A=L._updatedFibers.size,L._updatedFibers.clear(),10<A&&console.warn("Detected a large number of updates inside startTransition. If this is due to a subscription please re-write it to use React provided hooks. Otherwise concurrent mode guarantees are off the table."))}}function GJ(A){var Q=A.memoizedState;if(Q!==null)return Q;Q={memoizedState:zD,baseState:zD,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Y0,lastRenderedState:zD},next:null};var E={};return Q.next={memoizedState:E,baseState:E,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Y0,lastRenderedState:E},next:null},A.memoizedState=Q,A=A.alternate,A!==null&&(A.memoizedState=Q),Q}function wG(){var A=s4(!1);return A=wJ.bind(null,sA,A.queue,!0,!1),GI().memoizedState=A,[!1,A]}function NJ(){var A=LD(Y0)[0],Q=$B().memoizedState;return[typeof A==="boolean"?A:a2(A),Q]}function HJ(){var A=o2(Y0)[0],Q=$B().memoizedState;return[typeof A==="boolean"?A:a2(A),Q]}function Ng(){return n(Wg)}function GG(){var A=GI(),Q=mB.identifierPrefix;if(LB){var E=bE,D=hE;E=(D&~(1<<32-HI(D)-1)).toString(32)+E,Q="_"+Q+"R_"+E,E=Fw++,0<E&&(Q+="H"+E.toString(32)),Q+="_"}else E=_k++,Q="_"+Q+"r_"+E.toString(32)+"_";return A.memoizedState=Q}function NG(){return GI().memoizedState=GX.bind(null,sA)}function GX(A,Q){for(var E=A.return;E!==null;){switch(E.tag){case 24:case 3:var D=mI(E),w=RC(D),G=WC(E,w,D);G!==null&&(OB(D,"refresh()",A),CQ(G,E,D),d2(G,E,D)),A=zA(),Q!==null&&Q!==void 0&&G!==null&&console.error("The seed argument is not enabled outside experimental channels."),w.payload={cache:A};return}E=E.return}}function NX(A,Q,E){var D=arguments;typeof D[3]==="function"&&console.error("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."),D=mI(A);var w={lane:D,revertLane:0,gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null};Y8(A)?MJ(Q,w):(w=m4(A,Q,w,D),w!==null&&(OB(D,"dispatch()",A),CQ(w,A,D),UJ(w,Q,D)))}function JJ(A,Q,E){var D=arguments;typeof D[3]==="function"&&console.error("State updates from the useState() and useReducer() Hooks don't support the second callback argument. To execute a side effect after rendering, declare it in the component body with useEffect()."),D=mI(A),n2(A,Q,E,D)&&OB(D,"setState()",A)}function n2(A,Q,E,D){var w={lane:D,revertLane:0,gesture:null,action:E,hasEagerState:!1,eagerState:null,next:null};if(Y8(A))MJ(Q,w);else{var G=A.alternate;if(A.lanes===0&&(G===null||G.lanes===0)&&(G=Q.lastRenderedReducer,G!==null)){var J=p.H;p.H=O0;try{var L=Q.lastRenderedState,q=G(L,E);if(w.hasEagerState=!0,w.eagerState=q,JI(q,L))return g8(A,Q,w,0),mB===null&&C8(),!1}catch(_){}finally{p.H=J}}if(E=m4(A,Q,w,D),E!==null)return CQ(E,A,D),UJ(E,Q,D),!0}return!1}function HG(A,Q,E,D){if(p.T===null&&Og===0&&console.error("An optimistic state update occurred outside a transition or action. To fix, move the update to an action, or wrap with startTransition."),D={lane:2,revertLane:_4(),gesture:null,action:D,hasEagerState:!1,eagerState:null,next:null},Y8(A)){if(Q)throw Error("Cannot update optimistic state while rendering.");console.error("Cannot call startTransition while rendering.")}else Q=m4(A,E,D,2),Q!==null&&(OB(2,"setOptimistic()",A),CQ(Q,A,2))}function Y8(A){var Q=A.alternate;return A===sA||Q!==null&&Q===sA}function MJ(A,Q){dD=Dw=!0;var E=A.pending;E===null?Q.next=Q:(Q.next=E.next,E.next=Q),A.pending=Q}function UJ(A,Q,E){if((E&4194048)!==0){var D=Q.lanes;D&=A.pendingLanes,E|=D,Q.lanes=E,WA(A,E)}}function JG(A){if(A!==null&&typeof A!=="function"){var Q=String(A);U7.has(Q)||(U7.add(Q),console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",A))}}function MG(A,Q,E,D){var w=A.memoizedState,G=E(D,w);if(A.mode&8){CA(!0);try{G=E(D,w)}finally{CA(!1)}}G===void 0&&(Q=GA(Q)||"Component",N7.has(Q)||(N7.add(Q),console.error("%s.getDerivedStateFromProps(): A valid state object (or null) must be returned. You have returned undefined.",Q))),w=G===null||G===void 0?w:aQ({},w,G),A.memoizedState=w,A.lanes===0&&(A.updateQueue.baseState=w)}function LJ(A,Q,E,D,w,G,J){var L=A.stateNode;if(typeof L.shouldComponentUpdate==="function"){if(E=L.shouldComponentUpdate(D,G,J),A.mode&8){CA(!0);try{E=L.shouldComponentUpdate(D,G,J)}finally{CA(!1)}}return E===void 0&&console.error("%s.shouldComponentUpdate(): Returned undefined instead of a boolean value. Make sure to return true or false.",GA(Q)||"Component"),E}return Q.prototype&&Q.prototype.isPureReactComponent?!e1(E,D)||!e1(w,G):!0}function uJ(A,Q,E,D){var w=Q.state;typeof Q.componentWillReceiveProps==="function"&&Q.componentWillReceiveProps(E,D),typeof Q.UNSAFE_componentWillReceiveProps==="function"&&Q.UNSAFE_componentWillReceiveProps(E,D),Q.state!==w&&(A=s(A)||"Component",g7.has(A)||(g7.add(A),console.error("%s.componentWillReceiveProps(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",A)),x6.enqueueReplaceState(Q,Q.state,null))}function Hg(A,Q){var E=Q;if("ref"in Q){E={};for(var D in Q)D!=="ref"&&(E[D]=Q[D])}if(A=A.defaultProps){E===Q&&(E=aQ({},E));for(var w in A)E[w]===void 0&&(E[w]=A[w])}return E}function Z8(A,Q){try{cD=Q.source?s(Q.source):null,p6=null;var E=Q.value;if(p.actQueue!==null)p.thrownErrors.push(E);else{var D=A.onUncaughtError;D(E,{componentStack:Q.stack})}}catch(w){setTimeout(function(){throw w})}}function KJ(A,Q,E){try{cD=E.source?s(E.source):null,p6=s(Q);var D=A.onCaughtError;D(E.value,{componentStack:E.stack,errorBoundary:Q.tag===1?Q.stateNode:null})}catch(w){setTimeout(function(){throw w})}}function UG(A,Q,E){return E=RC(E),E.tag=P6,E.payload={element:null},E.callback=function(){TA(Q.source,Z8,A,Q)},E}function LG(A){return A=RC(A),A.tag=P6,A}function uG(A,Q,E,D){var w=E.type.getDerivedStateFromError;if(typeof w==="function"){var G=D.value;A.payload=function(){return w(G)},A.callback=function(){TM(E),TA(D.source,KJ,Q,E,D)}}var J=E.stateNode;J!==null&&typeof J.componentDidCatch==="function"&&(A.callback=function(){TM(E),TA(D.source,KJ,Q,E,D),typeof w!=="function"&&(jC===null?jC=new Set([this]):jC.add(this)),$k(this,D),typeof w==="function"||(E.lanes&2)===0&&console.error("%s: Error boundaries should implement getDerivedStateFromError(). In that method, return a state update to display an error message or fallback UI.",s(E)||"Unknown")})}function HX(A,Q,E,D,w){if(E.flags|=32768,EE&&QF(A,w),D!==null&&typeof D==="object"&&typeof D.then==="function"){if(Q=E.alternate,Q!==null&&b(Q,E,w,!0),LB&&(gE=!0),E=fI.current,E!==null){switch(E.tag){case 31:case 13:return I0===null?V8():E.alternate===null&&rB===nE&&(rB=uw),E.flags&=-257,E.flags|=65536,E.lanes=w,D===Ew?E.flags|=16384:(Q=E.updateQueue,Q===null?E.updateQueue=new Set([D]):Q.add(D),cG(A,D,w)),!1;case 22:return E.flags|=65536,D===Ew?E.flags|=16384:(Q=E.updateQueue,Q===null?(Q={transitions:null,markerInstances:null,retryQueue:new Set([D])},E.updateQueue=Q):(E=Q.retryQueue,E===null?Q.retryQueue=new Set([D]):E.add(D)),cG(A,D,w)),!1}throw Error("Unexpected Suspense handler tag ("+E.tag+"). This is a bug in React.")}return cG(A,D,w),V8(),!1}if(LB)return gE=!0,Q=fI.current,Q!==null?((Q.flags&65536)===0&&(Q.flags|=256),Q.flags|=65536,Q.lanes=w,D!==R6&&wI(AA(Error("There was an error while hydrating but React was able to recover by instead client rendering from the nearest Suspense boundary.",{cause:D}),E))):(D!==R6&&wI(AA(Error("There was an error while hydrating but React was able to recover by instead client rendering the entire root.",{cause:D}),E)),A=A.current.alternate,A.flags|=65536,w&=-w,A.lanes|=w,D=AA(D,E),w=UG(A.stateNode,D,w),F8(A,w),rB!==mC&&(rB=_g)),!1;var G=AA(Error("There was an error during concurrent rendering but React was able to recover by instead synchronously rendering the entire root.",{cause:D}),E);if(_F===null?_F=[G]:_F.push(G),rB!==mC&&(rB=_g),Q===null)return!0;D=AA(D,E),E=Q;do{switch(E.tag){case 3:return E.flags|=65536,A=w&-w,E.lanes|=A,A=UG(E.stateNode,D,A),F8(E,A),!1;case 1:if(Q=E.type,G=E.stateNode,(E.flags&128)===0&&(typeof Q.getDerivedStateFromError==="function"||G!==null&&typeof G.componentDidCatch==="function"&&(jC===null||!jC.has(G))))return E.flags|=65536,w&=-w,E.lanes|=w,w=LG(w),uG(w,A,E,D),F8(E,w),!1}E=E.return}while(E!==null);return!1}function lQ(A,Q,E,D){Q.child=A===null?nU(Q,null,E,D):Tg(Q,A.child,E,D)}function RJ(A,Q,E,D,w){E=E.render;var G=Q.ref;if("ref"in D){var J={};for(var L in D)L!=="ref"&&(J[L]=D[L])}else J=D;if(QA(Q),D=i4(A,Q,E,J,G,w),L=c4(),A!==null&&!YQ)return l4(A,Q,w),$E(A,Q,w);return LB&&L&&QB(Q),Q.flags|=1,lQ(A,Q,D,w),Q.child}function WJ(A,Q,E,D,w){if(A===null){var G=E.type;if(typeof G==="function"&&!oG(G)&&G.defaultProps===void 0&&E.compare===null)return E=Lg(G),Q.tag=15,Q.type=E,RG(Q,G),YJ(A,Q,E,D,w);return A=nG(E.type,null,D,Q,Q.mode,w),A.ref=Q.ref,A.return=Q,Q.child=A}if(G=A.child,!kG(A,w)){var J=G.memoizedProps;if(E=E.compare,E=E!==null?E:e1,E(J,D)&&A.ref===Q.ref)return $E(A,Q,w)}return Q.flags|=1,A=yE(G,D),A.ref=Q.ref,A.return=Q,Q.child=A}function YJ(A,Q,E,D,w){if(A!==null){var G=A.memoizedProps;if(e1(G,D)&&A.ref===Q.ref&&Q.type===A.type)if(YQ=!1,Q.pendingProps=D=G,kG(A,w))(A.flags&131072)!==0&&(YQ=!0);else return Q.lanes=A.lanes,$E(A,Q,w)}return KG(A,Q,E,D,w)}function ZJ(A,Q,E,D){var w=D.children,G=A!==null?A.memoizedState:null;if(A===null&&Q.stateNode===null&&(Q.stateNode={_visibility:qF,_pendingMarkers:null,_retryCache:null,_transitions:null}),D.mode==="hidden"){if((Q.flags&128)!==0){if(G=G!==null?G.baseLanes|E:E,A!==null){D=Q.child=A.child;for(w=0;D!==null;)w=w|D.lanes|D.childLanes,D=D.sibling;D=w&~G}else D=0,Q.child=null;return XJ(A,Q,G,E,D)}if((E&536870912)!==0)Q.memoizedState={baseLanes:0,cachePool:null},A!==null&&t1(Q,G!==null?G.cachePool:null),G!==null?p9(Q,G):f4(Q),i9(Q);else return D=Q.lanes=536870912,XJ(A,Q,G!==null?G.baseLanes|E:E,E,D)}else G!==null?(t1(Q,G.cachePool),p9(Q,G),ZC(Q),Q.memoizedState=null):(A!==null&&t1(Q,null),f4(Q),ZC(Q));return lQ(A,Q,w,E),Q.child}function r2(A,Q){return A!==null&&A.tag===22||Q.stateNode!==null||(Q.stateNode={_visibility:qF,_pendingMarkers:null,_retryCache:null,_transitions:null}),Q.sibling}function XJ(A,Q,E,D,w){var G=V4();return G=G===null?null:{parent:_E?gQ._currentValue:gQ._currentValue2,pool:G},Q.memoizedState={baseLanes:E,cachePool:G},A!==null&&t1(Q,null),f4(Q),i9(Q),A!==null&&b(A,Q,D,!0),Q.childLanes=w,null}function X8(A,Q){var E=Q.hidden;return E!==void 0&&console.error(`<Activity> doesn't accept a hidden prop. Use mode="hidden" instead.
121
+ - <Activity %s>
122
+ + <Activity %s>`,E===!0?"hidden":E===!1?"hidden={false}":"hidden={...}",E?'mode="hidden"':'mode="visible"'),Q=k8({mode:Q.mode,children:Q.children},A.mode),Q.ref=A.ref,A.child=Q,Q.return=A,Q}function qJ(A,Q,E){return Tg(Q,A.child,null,E),A=X8(Q,Q.pendingProps),A.flags|=2,PI(Q),Q.memoizedState=null,A}function JX(A,Q,E){var D=Q.pendingProps,w=(Q.flags&128)!==0;if(Q.flags&=-129,A===null){if(LB){if(D.mode==="hidden")return A=X8(Q,D),Q.lanes=536870912,r2(null,A);if(x4(Q),(A=oB)?(E=dq(A,A0),E!==null&&(D={dehydrated:E,treeContext:ZB(),retryLane:536870912,hydrationErrors:null},Q.memoizedState=D,D=VM(E),D.return=Q,Q.child=D,nQ=Q,oB=null)):E=null,E===null)throw Cg(Q,A),R0(Q);return Q.lanes=536870912,null}return X8(Q,D)}var G=A.memoizedState;if(G!==null){var J=G.dehydrated;if(x4(Q),w)if(Q.flags&256)Q.flags&=-257,Q=qJ(A,Q,E);else if(Q.memoizedState!==null)Q.child=A.child,Q.flags|=128,Q=null;else throw Error("Client rendering an Activity suspended it again. This is a bug in React.");else if(n1(),(E&536870912)!==0&&_8(Q),YQ||b(A,Q,E,!1),w=(E&A.childLanes)!==0,YQ||w){if(D=mB,D!==null&&(J=hA(D,E),J!==0&&J!==G.retryLane))throw G.retryLane=J,QI(A,J),CQ(D,A,J),i6;V8(),Q=qJ(A,Q,E)}else A=G.treeContext,CI&&(oB=fq(J),nQ=Q,LB=!0,yC=null,gE=!1,bI=null,A0=!1,A!==null&&CB(Q,A)),Q=X8(Q,D),Q.flags|=4096;return Q}return G=A.child,D={mode:D.mode,children:D.children},(E&536870912)!==0&&(E&A.lanes)!==0&&_8(Q),A=yE(G,D),A.ref=Q.ref,Q.child=A,A.return=Q,A}function q8(A,Q){var E=Q.ref;if(E===null)A!==null&&A.ref!==null&&(Q.flags|=4194816);else{if(typeof E!=="function"&&typeof E!=="object")throw Error("Expected ref to be a function, an object returned by React.createRef(), or undefined/null.");if(A===null||A.ref!==E)Q.flags|=4194816}}function KG(A,Q,E,D,w){if(E.prototype&&typeof E.prototype.render==="function"){var G=GA(E)||"Unknown";L7[G]||(console.error("The <%s /> component appears to have a render method, but doesn't extend React.Component. This is likely to cause errors. Change %s to extend React.Component instead.",G,G),L7[G]=!0)}if(Q.mode&8&&z0.recordLegacyContextWarning(Q,null),A===null&&(RG(Q,Q.type),E.contextTypes&&(G=GA(E)||"Unknown",K7[G]||(K7[G]=!0,console.error("%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with React.useContext() instead. (https://react.dev/link/legacy-context)",G)))),QA(Q),E=i4(A,Q,E,D,void 0,w),D=c4(),A!==null&&!YQ)return l4(A,Q,w),$E(A,Q,w);return LB&&D&&QB(Q),Q.flags|=1,lQ(A,Q,E,w),Q.child}function kJ(A,Q,E,D,w,G){if(QA(Q),aE=-1,OF=A!==null&&A.type!==Q.type,Q.updateQueue=null,E=d4(Q,D,E,w),d9(A,Q),D=c4(),A!==null&&!YQ)return l4(A,Q,G),$E(A,Q,G);return LB&&D&&QB(Q),Q.flags|=1,lQ(A,Q,E,G),Q.child}function zJ(A,Q,E,D,w){switch(M(Q)){case!1:var G=Q.stateNode,J=new Q.type(Q.memoizedProps,G.context).state;G.updater.enqueueSetState(G,J,null);break;case!0:Q.flags|=128,Q.flags|=65536,G=Error("Simulated error coming from DevTools");var L=w&-w;if(Q.lanes|=L,J=mB,J===null)throw Error("Expected a work-in-progress root. This is a bug in React. Please file an issue.");L=LG(L),uG(L,J,Q,AA(G,Q)),F8(Q,L)}if(QA(Q),Q.stateNode===null){if(J=kC,G=E.contextType,"contextType"in E&&G!==null&&(G===void 0||G.$$typeof!==vE)&&!M7.has(E)&&(M7.add(E),L=G===void 0?" However, it is set to undefined. This can be caused by a typo or by mixing up named and default imports. This can also happen due to a circular dependency, so try moving the createContext() call to a separate file.":typeof G!=="object"?" However, it is set to a "+typeof G+".":G.$$typeof===A6?" Did you accidentally pass the Context.Consumer instead?":" However, it is set to an object with keys {"+Object.keys(G).join(", ")+"}.",console.error("%s defines an invalid contextType. contextType should point to the Context object returned by React.createContext().%s",GA(E)||"Component",L)),typeof G==="object"&&G!==null&&(J=n(G)),G=new E(D,J),Q.mode&8){CA(!0);try{G=new E(D,J)}finally{CA(!1)}}if(J=Q.memoizedState=G.state!==null&&G.state!==void 0?G.state:null,G.updater=x6,Q.stateNode=G,G._reactInternals=Q,G._reactInternalInstance=C7,typeof E.getDerivedStateFromProps==="function"&&J===null&&(J=GA(E)||"Component",D7.has(J)||(D7.add(J),console.error("`%s` uses `getDerivedStateFromProps` but its initial state is %s. This is not recommended. Instead, define the initial state by assigning an object to `this.state` in the constructor of `%s`. This ensures that `getDerivedStateFromProps` arguments have a consistent shape.",J,G.state===null?"null":"undefined",J))),typeof E.getDerivedStateFromProps==="function"||typeof G.getSnapshotBeforeUpdate==="function"){var q=L=J=null;if(typeof G.componentWillMount==="function"&&G.componentWillMount.__suppressDeprecationWarning!==!0?J="componentWillMount":typeof G.UNSAFE_componentWillMount==="function"&&(J="UNSAFE_componentWillMount"),typeof G.componentWillReceiveProps==="function"&&G.componentWillReceiveProps.__suppressDeprecationWarning!==!0?L="componentWillReceiveProps":typeof G.UNSAFE_componentWillReceiveProps==="function"&&(L="UNSAFE_componentWillReceiveProps"),typeof G.componentWillUpdate==="function"&&G.componentWillUpdate.__suppressDeprecationWarning!==!0?q="componentWillUpdate":typeof G.UNSAFE_componentWillUpdate==="function"&&(q="UNSAFE_componentWillUpdate"),J!==null||L!==null||q!==null){G=GA(E)||"Component";var _=typeof E.getDerivedStateFromProps==="function"?"getDerivedStateFromProps()":"getSnapshotBeforeUpdate()";w7.has(G)||(w7.add(G),console.error(`Unsafe legacy lifecycles will not be called for components using new component APIs.
123
+
124
+ %s uses %s but also contains the following legacy lifecycles:%s%s%s
125
+
126
+ The above lifecycles should be removed. Learn more about this warning here:
127
+ https://react.dev/link/unsafe-component-lifecycles`,G,_,J!==null?`
128
+ `+J:"",L!==null?`
129
+ `+L:"",q!==null?`
130
+ `+q:""))}}G=Q.stateNode,J=GA(E)||"Component",G.render||(E.prototype&&typeof E.prototype.render==="function"?console.error("No `render` method found on the %s instance: did you accidentally return an object from the constructor?",J):console.error("No `render` method found on the %s instance: you may have forgotten to define `render`.",J)),!G.getInitialState||G.getInitialState.isReactClassApproved||G.state||console.error("getInitialState was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Did you mean to define a state property instead?",J),G.getDefaultProps&&!G.getDefaultProps.isReactClassApproved&&console.error("getDefaultProps was defined on %s, a plain JavaScript class. This is only supported for classes created using React.createClass. Use a static property to define defaultProps instead.",J),G.contextType&&console.error("contextType was defined as an instance property on %s. Use a static property to define contextType instead.",J),E.childContextTypes&&!J7.has(E)&&(J7.add(E),console.error("%s uses the legacy childContextTypes API which was removed in React 19. Use React.createContext() instead. (https://react.dev/link/legacy-context)",J)),E.contextTypes&&!H7.has(E)&&(H7.add(E),console.error("%s uses the legacy contextTypes API which was removed in React 19. Use React.createContext() with static contextType instead. (https://react.dev/link/legacy-context)",J)),typeof G.componentShouldUpdate==="function"&&console.error("%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",J),E.prototype&&E.prototype.isPureReactComponent&&typeof G.shouldComponentUpdate<"u"&&console.error("%s has a method called shouldComponentUpdate(). shouldComponentUpdate should not be used when extending React.PureComponent. Please extend React.Component if shouldComponentUpdate is used.",GA(E)||"A pure component"),typeof G.componentDidUnmount==="function"&&console.error("%s has a method called componentDidUnmount(). But there is no such lifecycle method. Did you mean componentWillUnmount()?",J),typeof G.componentDidReceiveProps==="function"&&console.error("%s has a method called componentDidReceiveProps(). But there is no such lifecycle method. If you meant to update the state in response to changing props, use componentWillReceiveProps(). If you meant to fetch data or run side-effects or mutations after React has updated the UI, use componentDidUpdate().",J),typeof G.componentWillRecieveProps==="function"&&console.error("%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",J),typeof G.UNSAFE_componentWillRecieveProps==="function"&&console.error("%s has a method called UNSAFE_componentWillRecieveProps(). Did you mean UNSAFE_componentWillReceiveProps()?",J),L=G.props!==D,G.props!==void 0&&L&&console.error("When calling super() in `%s`, make sure to pass up the same props that your component's constructor was passed.",J),G.defaultProps&&console.error("Setting defaultProps as an instance property on %s is not supported and will be ignored. Instead, define defaultProps as a static property on %s.",J,J),typeof G.getSnapshotBeforeUpdate!=="function"||typeof G.componentDidUpdate==="function"||F7.has(E)||(F7.add(E),console.error("%s: getSnapshotBeforeUpdate() should be used with componentDidUpdate(). This component defines getSnapshotBeforeUpdate() only.",GA(E))),typeof G.getDerivedStateFromProps==="function"&&console.error("%s: getDerivedStateFromProps() is defined as an instance method and will be ignored. Instead, declare it as a static method.",J),typeof G.getDerivedStateFromError==="function"&&console.error("%s: getDerivedStateFromError() is defined as an instance method and will be ignored. Instead, declare it as a static method.",J),typeof E.getSnapshotBeforeUpdate==="function"&&console.error("%s: getSnapshotBeforeUpdate() is defined as a static method and will be ignored. Instead, declare it as an instance method.",J),(L=G.state)&&(typeof L!=="object"||oQ(L))&&console.error("%s.state: must be set to an object or null",J),typeof G.getChildContext==="function"&&typeof E.childContextTypes!=="object"&&console.error("%s.getChildContext(): childContextTypes must be defined in order to use getChildContext().",J),G=Q.stateNode,G.props=D,G.state=Q.memoizedState,G.refs={},h4(Q),J=E.contextType,G.context=typeof J==="object"&&J!==null?n(J):kC,G.state===D&&(J=GA(E)||"Component",G7.has(J)||(G7.add(J),console.error("%s: It is not recommended to assign props directly to state because updates to props won't be reflected in state. In most cases, it is better to use props directly.",J))),Q.mode&8&&z0.recordLegacyContextWarning(Q,G),z0.recordUnsafeLifecycleWarnings(Q,G),G.state=Q.memoizedState,J=E.getDerivedStateFromProps,typeof J==="function"&&(MG(Q,E,J,D),G.state=Q.memoizedState),typeof E.getDerivedStateFromProps==="function"||typeof G.getSnapshotBeforeUpdate==="function"||typeof G.UNSAFE_componentWillMount!=="function"&&typeof G.componentWillMount!=="function"||(J=G.state,typeof G.componentWillMount==="function"&&G.componentWillMount(),typeof G.UNSAFE_componentWillMount==="function"&&G.UNSAFE_componentWillMount(),J!==G.state&&(console.error("%s.componentWillMount(): Assigning directly to this.state is deprecated (except inside a component's constructor). Use setState instead.",s(Q)||"Component"),x6.enqueueReplaceState(G,G.state,null)),l2(Q,D,G,w),c2(),G.state=Q.memoizedState),typeof G.componentDidMount==="function"&&(Q.flags|=4194308),(Q.mode&16)!==aA&&(Q.flags|=134217728),G=!0}else if(A===null){G=Q.stateNode;var x=Q.memoizedProps;L=Hg(E,x),G.props=L;var i=G.context;q=E.contextType,J=kC,typeof q==="object"&&q!==null&&(J=n(q)),_=E.getDerivedStateFromProps,q=typeof _==="function"||typeof G.getSnapshotBeforeUpdate==="function",x=Q.pendingProps!==x,q||typeof G.UNSAFE_componentWillReceiveProps!=="function"&&typeof G.componentWillReceiveProps!=="function"||(x||i!==J)&&uJ(Q,G,D,J),PC=!1;var t=Q.memoizedState;G.state=t,l2(Q,D,G,w),c2(),i=Q.memoizedState,x||t!==i||PC?(typeof _==="function"&&(MG(Q,E,_,D),i=Q.memoizedState),(L=PC||LJ(Q,E,L,D,t,i,J))?(q||typeof G.UNSAFE_componentWillMount!=="function"&&typeof G.componentWillMount!=="function"||(typeof G.componentWillMount==="function"&&G.componentWillMount(),typeof G.UNSAFE_componentWillMount==="function"&&G.UNSAFE_componentWillMount()),typeof G.componentDidMount==="function"&&(Q.flags|=4194308),(Q.mode&16)!==aA&&(Q.flags|=134217728)):(typeof G.componentDidMount==="function"&&(Q.flags|=4194308),(Q.mode&16)!==aA&&(Q.flags|=134217728),Q.memoizedProps=D,Q.memoizedState=i),G.props=D,G.state=i,G.context=J,G=L):(typeof G.componentDidMount==="function"&&(Q.flags|=4194308),(Q.mode&16)!==aA&&(Q.flags|=134217728),G=!1)}else{G=Q.stateNode,b4(A,Q),J=Q.memoizedProps,q=Hg(E,J),G.props=q,_=Q.pendingProps,t=G.context,i=E.contextType,L=kC,typeof i==="object"&&i!==null&&(L=n(i)),x=E.getDerivedStateFromProps,(i=typeof x==="function"||typeof G.getSnapshotBeforeUpdate==="function")||typeof G.UNSAFE_componentWillReceiveProps!=="function"&&typeof G.componentWillReceiveProps!=="function"||(J!==_||t!==L)&&uJ(Q,G,D,L),PC=!1,t=Q.memoizedState,G.state=t,l2(Q,D,G,w),c2();var mA=Q.memoizedState;J!==_||t!==mA||PC||A!==null&&A.dependencies!==null&&a(A.dependencies)?(typeof x==="function"&&(MG(Q,E,x,D),mA=Q.memoizedState),(q=PC||LJ(Q,E,q,D,t,mA,L)||A!==null&&A.dependencies!==null&&a(A.dependencies))?(i||typeof G.UNSAFE_componentWillUpdate!=="function"&&typeof G.componentWillUpdate!=="function"||(typeof G.componentWillUpdate==="function"&&G.componentWillUpdate(D,mA,L),typeof G.UNSAFE_componentWillUpdate==="function"&&G.UNSAFE_componentWillUpdate(D,mA,L)),typeof G.componentDidUpdate==="function"&&(Q.flags|=4),typeof G.getSnapshotBeforeUpdate==="function"&&(Q.flags|=1024)):(typeof G.componentDidUpdate!=="function"||J===A.memoizedProps&&t===A.memoizedState||(Q.flags|=4),typeof G.getSnapshotBeforeUpdate!=="function"||J===A.memoizedProps&&t===A.memoizedState||(Q.flags|=1024),Q.memoizedProps=D,Q.memoizedState=mA),G.props=D,G.state=mA,G.context=L,G=q):(typeof G.componentDidUpdate!=="function"||J===A.memoizedProps&&t===A.memoizedState||(Q.flags|=4),typeof G.getSnapshotBeforeUpdate!=="function"||J===A.memoizedProps&&t===A.memoizedState||(Q.flags|=1024),G=!1)}if(L=G,q8(A,Q),J=(Q.flags&128)!==0,L||J){if(L=Q.stateNode,UC(Q),J&&typeof E.getDerivedStateFromError!=="function")E=null,MI=-1;else if(E=PU(L),Q.mode&8){CA(!0);try{PU(L)}finally{CA(!1)}}Q.flags|=1,A!==null&&J?(Q.child=Tg(Q,A.child,null,w),Q.child=Tg(Q,null,E,w)):lQ(A,Q,E,w),Q.memoizedState=L.state,A=Q.child}else A=$E(A,Q,w);return w=Q.stateNode,G&&w.props!==D&&(lD||console.error("It looks like %s is reassigning its own `this.props` while rendering. This is not supported and can lead to confusing bugs.",s(Q)||"a component"),lD=!0),A}function OJ(A,Q,E,D){return d0(),Q.flags|=256,lQ(A,Q,E,D),Q.child}function RG(A,Q){Q&&Q.childContextTypes&&console.error(`childContextTypes cannot be defined on a function component.
131
+ %s.childContextTypes = ...`,Q.displayName||Q.name||"Component"),typeof Q.getDerivedStateFromProps==="function"&&(A=GA(Q)||"Unknown",R7[A]||(console.error("%s: Function components do not support getDerivedStateFromProps.",A),R7[A]=!0)),typeof Q.contextType==="object"&&Q.contextType!==null&&(Q=GA(Q)||"Unknown",u7[Q]||(console.error("%s: Function components do not support contextType.",Q),u7[Q]=!0))}function WG(A){return{baseLanes:A,cachePool:S9()}}function YG(A,Q,E){return A=A!==null?A.childLanes&~E:0,Q&&(A|=qI),A}function SJ(A,Q,E){var D=Q.pendingProps;H(Q)&&(Q.flags|=128);var w=!1,G=(Q.flags&128)!==0,J;if((J=G)||(J=A!==null&&A.memoizedState===null?!1:(UQ.current&kF)!==0),J&&(w=!0,Q.flags&=-129),J=(Q.flags&32)!==0,Q.flags&=-33,A===null){if(LB){if(w?YC(Q):ZC(Q),(A=oB)?(E=cq(A,A0),E!==null&&(J={dehydrated:E,treeContext:ZB(),retryLane:536870912,hydrationErrors:null},Q.memoizedState=J,J=VM(E),J.return=Q,Q.child=J,nQ=Q,oB=null)):E=null,E===null)throw Cg(Q,A),R0(Q);return F6(E)?Q.lanes=32:Q.lanes=536870912,null}var L=D.children;if(D=D.fallback,w)return ZC(Q),w=Q.mode,L=k8({mode:"hidden",children:L},w),D=ug(D,w,E,null),L.return=Q,D.return=Q,L.sibling=D,Q.child=L,D=Q.child,D.memoizedState=WG(E),D.childLanes=YG(A,J,E),Q.memoizedState=d6,r2(null,D);return YC(Q),ZG(Q,L)}var q=A.memoizedState;if(q!==null&&(L=q.dehydrated,L!==null)){if(G)Q.flags&256?(YC(Q),Q.flags&=-257,Q=XG(A,Q,E)):Q.memoizedState!==null?(ZC(Q),Q.child=A.child,Q.flags|=128,Q=null):(ZC(Q),L=D.fallback,w=Q.mode,D=k8({mode:"visible",children:D.children},w),L=ug(L,w,E,null),L.flags|=2,D.return=Q,L.return=Q,D.sibling=L,Q.child=D,Tg(Q,A.child,null,E),D=Q.child,D.memoizedState=WG(E),D.childLanes=YG(A,J,E),Q.memoizedState=d6,Q=r2(null,D));else if(YC(Q),n1(),(E&536870912)!==0&&_8(Q),F6(L))w=vq(L),J=w.digest,L=w.message,D=w.stack,w=w.componentStack,L=L?Error(L):Error("The server could not finish this Suspense boundary, likely due to an error during server rendering. Switched to client rendering."),L.stack=D||"",L.digest=J,J=w===void 0?null:w,D={value:L,source:null,stack:J},typeof J==="string"&&K6.set(L,D),wI(D),Q=XG(A,Q,E);else if(YQ||b(A,Q,E,!1),J=(E&A.childLanes)!==0,YQ||J){if(J=mB,J!==null&&(D=hA(J,E),D!==0&&D!==q.retryLane))throw q.retryLane=D,QI(A,D),CQ(J,A,D),i6;D6(L)||V8(),Q=XG(A,Q,E)}else D6(L)?(Q.flags|=192,Q.child=A.child,Q=null):(A=q.treeContext,CI&&(oB=jq(L),nQ=Q,LB=!0,yC=null,gE=!1,bI=null,A0=!1,A!==null&&CB(Q,A)),Q=ZG(Q,D.children),Q.flags|=4096);return Q}if(w)return ZC(Q),L=D.fallback,w=Q.mode,q=A.child,G=q.sibling,D=yE(q,{mode:"hidden",children:D.children}),D.subtreeFlags=q.subtreeFlags&65011712,G!==null?L=yE(G,L):(L=ug(L,w,E,null),L.flags|=2),L.return=Q,D.return=Q,D.sibling=L,Q.child=D,r2(null,D),D=Q.child,L=A.child.memoizedState,L===null?L=WG(E):(w=L.cachePool,w!==null?(q=_E?gQ._currentValue:gQ._currentValue2,w=w.parent!==q?{parent:q,pool:q}:w):w=S9(),L={baseLanes:L.baseLanes|E,cachePool:w}),D.memoizedState=L,D.childLanes=YG(A,J,E),Q.memoizedState=d6,r2(A.child,D);return q!==null&&(E&62914560)===E&&(E&A.lanes)!==0&&_8(Q),YC(Q),E=A.child,A=E.sibling,E=yE(E,{mode:"visible",children:D.children}),E.return=Q,E.sibling=null,A!==null&&(J=Q.deletions,J===null?(Q.deletions=[A],Q.flags|=16):J.push(A)),Q.child=E,Q.memoizedState=null,E}function ZG(A,Q){return Q=k8({mode:"visible",children:Q},A.mode),Q.return=A,A.child=Q}function k8(A,Q){return A=U(22,A,null,Q),A.lanes=0,A}function XG(A,Q,E){return Tg(Q,A.child,null,E),A=ZG(Q,Q.pendingProps.children),A.flags|=2,Q.memoizedState=null,A}function $J(A,Q,E){A.lanes|=Q;var D=A.alternate;D!==null&&(D.lanes|=Q),S(A.return,Q,E)}function qG(A,Q,E,D,w,G){var J=A.memoizedState;J===null?A.memoizedState={isBackwards:Q,rendering:null,renderingStartTime:0,last:D,tail:E,tailMode:w,treeForkCount:G}:(J.isBackwards=Q,J.rendering=null,J.renderingStartTime=0,J.last=D,J.tail=E,J.tailMode=w,J.treeForkCount=G)}function yJ(A,Q,E){var D=Q.pendingProps,w=D.revealOrder,G=D.tail,J=D.children,L=UQ.current;if((D=(L&kF)!==0)?(L=L&pD|kF,Q.flags|=128):L&=pD,JA(UQ,L,Q),L=w==null?"null":w,w!=="forwards"&&w!=="unstable_legacy-backwards"&&w!=="together"&&w!=="independent"&&!W7[L])if(W7[L]=!0,w==null)console.error('The default for the <SuspenseList revealOrder="..."> prop is changing. To be future compatible you must explictly specify either "independent" (the current default), "together", "forwards" or "legacy_unstable-backwards".');else if(w==="backwards")console.error('The rendering order of <SuspenseList revealOrder="backwards"> is changing. To be future compatible you must specify revealOrder="legacy_unstable-backwards" instead.');else if(typeof w==="string")switch(w.toLowerCase()){case"together":case"forwards":case"backwards":case"independent":console.error('"%s" is not a valid value for revealOrder on <SuspenseList />. Use lowercase "%s" instead.',w,w.toLowerCase());break;case"forward":case"backward":console.error('"%s" is not a valid value for revealOrder on <SuspenseList />. React uses the -s suffix in the spelling. Use "%ss" instead.',w,w.toLowerCase());break;default:console.error('"%s" is not a supported revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',w)}else console.error('%s is not a supported value for revealOrder on <SuspenseList />. Did you mean "independent", "together", "forwards" or "backwards"?',w);if(L=G==null?"null":G,!Gw[L])if(G==null){if(w==="forwards"||w==="backwards"||w==="unstable_legacy-backwards")Gw[L]=!0,console.error('The default for the <SuspenseList tail="..."> prop is changing. To be future compatible you must explictly specify either "visible" (the current default), "collapsed" or "hidden".')}else G!=="visible"&&G!=="collapsed"&&G!=="hidden"?(Gw[L]=!0,console.error('"%s" is not a supported value for tail on <SuspenseList />. Did you mean "visible", "collapsed" or "hidden"?',G)):w!=="forwards"&&w!=="backwards"&&w!=="unstable_legacy-backwards"&&(Gw[L]=!0,console.error('<SuspenseList tail="%s" /> is only valid if revealOrder is "forwards" or "backwards". Did you mean to specify revealOrder="forwards"?',G));A:if((w==="forwards"||w==="backwards"||w==="unstable_legacy-backwards")&&J!==void 0&&J!==null&&J!==!1)if(oQ(J)){for(L=0;L<J.length;L++)if(!b9(J[L],L))break A}else if(L=ZA(J),typeof L==="function"){if(L=L.call(J))for(var q=L.next(),_=0;!q.done;q=L.next()){if(!b9(q.value,_))break A;_++}}else console.error('A single row was passed to a <SuspenseList revealOrder="%s" />. This is not useful since it needs multiple rows. Did you mean to pass multiple children or an array?',w);if(lQ(A,Q,J,E),LB?($Q(),J=wF):J=0,!D&&A!==null&&(A.flags&128)!==0)A:for(A=Q.child;A!==null;){if(A.tag===13)A.memoizedState!==null&&$J(A,E,Q);else if(A.tag===19)$J(A,E,Q);else if(A.child!==null){A.child.return=A,A=A.child;continue}if(A===Q)break A;for(;A.sibling===null;){if(A.return===null||A.return===Q)break A;A=A.return}A.sibling.return=A.return,A=A.sibling}switch(w){case"forwards":E=Q.child;for(w=null;E!==null;)A=E.alternate,A!==null&&w8(A)===null&&(w=E),E=E.sibling;E=w,E===null?(w=Q.child,Q.child=null):(w=E.sibling,E.sibling=null),qG(Q,!1,w,E,G,J);break;case"backwards":case"unstable_legacy-backwards":E=null,w=Q.child;for(Q.child=null;w!==null;){if(A=w.alternate,A!==null&&w8(A)===null){Q.child=w;break}A=w.sibling,w.sibling=E,E=w,w=A}qG(Q,!0,E,null,G,J);break;case"together":qG(Q,!1,null,null,void 0,J);break;default:Q.memoizedState=null}return Q.child}function $E(A,Q,E){if(A!==null&&(Q.dependencies=A.dependencies),MI=-1,bC|=Q.lanes,(E&Q.childLanes)===0)if(A!==null){if(b(A,Q,E,!1),(E&Q.childLanes)===0)return null}else return null;if(A!==null&&Q.child!==A.child)throw Error("Resuming work not yet implemented.");if(Q.child!==null){A=Q.child,E=yE(A,A.pendingProps),Q.child=E;for(E.return=Q;A.sibling!==null;)A=A.sibling,E=E.sibling=yE(A,A.pendingProps),E.return=Q;E.sibling=null}return Q.child}function kG(A,Q){if((A.lanes&Q)!==0)return!0;return A=A.dependencies,A!==null&&a(A)?!0:!1}function MX(A,Q,E){switch(Q.tag){case 3:HC(Q,Q.stateNode.containerInfo),Y(Q,gQ,A.memoizedState.cache),d0();break;case 27:case 5:VI(Q);break;case 4:HC(Q,Q.stateNode.containerInfo);break;case 10:Y(Q,Q.type,Q.memoizedProps.value);break;case 12:(E&Q.childLanes)!==0&&(Q.flags|=4),Q.flags|=2048;var D=Q.stateNode;D.effectDuration=-0,D.passiveEffectDuration=-0;break;case 31:if(Q.memoizedState!==null)return Q.flags|=128,x4(Q),null;break;case 13:if(D=Q.memoizedState,D!==null){if(D.dehydrated!==null)return YC(Q),Q.flags|=128,null;if((E&Q.child.childLanes)!==0)return SJ(A,Q,E);return YC(Q),A=$E(A,Q,E),A!==null?A.sibling:null}YC(Q);break;case 19:var w=(A.flags&128)!==0;if(D=(E&Q.childLanes)!==0,D||(b(A,Q,E,!1),D=(E&Q.childLanes)!==0),w){if(D)return yJ(A,Q,E);Q.flags|=128}if(w=Q.memoizedState,w!==null&&(w.rendering=null,w.tail=null,w.lastEffect=null),JA(UQ,UQ.current,Q),D)break;else return null;case 22:return Q.lanes=0,ZJ(A,Q,E,Q.pendingProps);case 24:Y(Q,gQ,A.memoizedState.cache)}return $E(A,Q,E)}function zG(A,Q,E){if(Q._debugNeedsRemount&&A!==null){E=nG(Q.type,Q.key,Q.pendingProps,Q._debugOwner||null,Q.mode,Q.lanes),E._debugStack=Q._debugStack,E._debugTask=Q._debugTask;var D=Q.return;if(D===null)throw Error("Cannot swap the root fiber.");if(A.alternate=null,Q.alternate=null,E.index=Q.index,E.sibling=Q.sibling,E.return=Q.return,E.ref=Q.ref,E._debugInfo=Q._debugInfo,Q===D.child)D.child=E;else{var w=D.child;if(w===null)throw Error("Expected parent to have a child.");for(;w.sibling!==Q;)if(w=w.sibling,w===null)throw Error("Expected to find the previous sibling.");w.sibling=E}return Q=D.deletions,Q===null?(D.deletions=[A],D.flags|=16):Q.push(A),E.flags|=2,E}if(A!==null)if(A.memoizedProps!==Q.pendingProps||Q.type!==A.type)YQ=!0;else{if(!kG(A,E)&&(Q.flags&128)===0)return YQ=!1,MX(A,Q,E);YQ=(A.flags&131072)!==0?!0:!1}else{if(YQ=!1,D=LB)$Q(),D=(Q.flags&1048576)!==0;D&&(D=Q.index,$Q(),yA(Q,wF,D))}switch(Q.lanes=0,Q.tag){case 16:A:if(D=Q.pendingProps,A=KC(Q.elementType),Q.type=A,typeof A==="function")oG(A)?(D=Hg(A,D),Q.tag=1,Q.type=A=Lg(A),Q=zJ(null,Q,A,D,E)):(Q.tag=0,RG(Q,A),Q.type=A=Lg(A),Q=KG(null,Q,A,D,E));else{if(A!==void 0&&A!==null){if(w=A.$$typeof,w===IF){Q.tag=11,Q.type=A=aG(A),Q=RJ(null,Q,A,D,E);break A}else if(w===b8){Q.tag=14,Q=WJ(null,Q,A,D,E);break A}}throw Q="",A!==null&&typeof A==="object"&&A.$$typeof===hI&&(Q=" Did you wrap a component in React.lazy() more than once?"),A=GA(A)||A,Error("Element type is invalid. Received a promise that resolves to: "+A+". Lazy element type must resolve to a class or function."+Q)}return Q;case 0:return KG(A,Q,Q.type,Q.pendingProps,E);case 1:return D=Q.type,w=Hg(D,Q.pendingProps),zJ(A,Q,D,w,E);case 3:A:{if(HC(Q,Q.stateNode.containerInfo),A===null)throw Error("Should have a current fiber. This is a bug in React.");var G=Q.pendingProps;w=Q.memoizedState,D=w.element,b4(A,Q),l2(Q,G,null,E);var J=Q.memoizedState;if(G=J.cache,Y(Q,gQ,G),G!==w.cache&&V(Q,[gQ],E,!0),c2(),G=J.element,CI&&w.isDehydrated)if(w={element:G,isDehydrated:!1,cache:J.cache},Q.updateQueue.baseState=w,Q.memoizedState=w,Q.flags&256){Q=OJ(A,Q,G,E);break A}else if(G!==D){D=AA(Error("This root received an early update, before anything was able hydrate. Switched the entire root to client rendering."),Q),wI(D),Q=OJ(A,Q,G,E);break A}else for(CI&&(oB=bq(Q.stateNode.containerInfo),nQ=Q,LB=!0,yC=null,gE=!1,bI=null,A0=!0),A=nU(Q,null,G,E),Q.child=A;A;)A.flags=A.flags&-3|4096,A=A.sibling;else{if(d0(),G===D){Q=$E(A,Q,E);break A}lQ(A,Q,G,E)}Q=Q.child}return Q;case 26:if(k0)return q8(A,Q),A===null?(A=CU(Q.type,null,Q.pendingProps,null))?Q.memoizedState=A:LB||(Q.stateNode=Gk(Q.type,Q.pendingProps,yQ($C.current),Q)):Q.memoizedState=CU(Q.type,A.memoizedProps,Q.pendingProps,A.memoizedState),null;case 27:if(TQ)return VI(Q),A===null&&TQ&&LB&&(w=yQ($C.current),D=rI(),w=Q.stateNode=NU(Q.type,Q.pendingProps,w,D,!1),gE||(D=BU(w,Q.type,Q.pendingProps,D),D!==null&&(SE(Q,0).serverProps=D)),nQ=Q,A0=!0,oB=xq(Q.type,w,oB)),lQ(A,Q,Q.pendingProps.children,E),q8(A,Q),A===null&&(Q.flags|=4194304),Q.child;case 5:return A===null&&LB&&(G=rI(),D=Dk(Q.type,Q.pendingProps,G),w=oB,(J=!w)||(J=pq(w,Q.type,Q.pendingProps,A0),J!==null?(Q.stateNode=J,gE||(G=BU(J,Q.type,Q.pendingProps,G),G!==null&&(SE(Q,0).serverProps=G)),nQ=Q,oB=hq(J),A0=!1,G=!0):G=!1,J=!G),J&&(D&&Cg(Q,w),R0(Q))),VI(Q),w=Q.type,G=Q.pendingProps,J=A!==null?A.memoizedProps:null,D=G.children,f8(w,G)?D=null:J!==null&&f8(w,J)&&(Q.flags|=32),Q.memoizedState!==null&&(w=i4(A,Q,gX,null,null,E),_E?Wg._currentValue=w:Wg._currentValue2=w),q8(A,Q),lQ(A,Q,D,E),Q.child;case 6:return A===null&&LB&&(A=Q.pendingProps,E=rI(),A=Fk(A,E),E=oB,(D=!E)||(D=iq(E,Q.pendingProps,A0),D!==null?(Q.stateNode=D,nQ=Q,oB=null,D=!0):D=!1,D=!D),D&&(A&&Cg(Q,E),R0(Q))),null;case 13:return SJ(A,Q,E);case 4:return HC(Q,Q.stateNode.containerInfo),D=Q.pendingProps,A===null?Q.child=Tg(Q,null,D,E):lQ(A,Q,D,E),Q.child;case 11:return RJ(A,Q,Q.type,Q.pendingProps,E);case 7:return lQ(A,Q,Q.pendingProps,E),Q.child;case 8:return lQ(A,Q,Q.pendingProps.children,E),Q.child;case 12:return Q.flags|=4,Q.flags|=2048,D=Q.stateNode,D.effectDuration=-0,D.passiveEffectDuration=-0,lQ(A,Q,Q.pendingProps.children,E),Q.child;case 10:return D=Q.type,w=Q.pendingProps,G=w.value,"value"in w||Y7||(Y7=!0,console.error("The `value` prop is required for the `<Context.Provider>`. Did you misspell it or forget to pass it?")),Y(Q,D,G),lQ(A,Q,w.children,E),Q.child;case 9:return w=Q.type._context,D=Q.pendingProps.children,typeof D!=="function"&&console.error("A context consumer was rendered with multiple children, or a child that isn't a function. A context consumer expects a single child that is a function. If you did pass a function, make sure there is no trailing or leading whitespace around it."),QA(Q),w=n(w),D=y6(D,w,void 0),Q.flags|=1,lQ(A,Q,D,E),Q.child;case 14:return WJ(A,Q,Q.type,Q.pendingProps,E);case 15:return YJ(A,Q,Q.type,Q.pendingProps,E);case 19:return yJ(A,Q,E);case 31:return JX(A,Q,E);case 22:return ZJ(A,Q,E,Q.pendingProps);case 24:return QA(Q),D=n(gQ),A===null?(w=V4(),w===null&&(w=mB,G=zA(),w.pooledCache=G,fA(G),G!==null&&(w.pooledCacheLanes|=E),w=G),Q.memoizedState={parent:D,cache:w},h4(Q),Y(Q,gQ,w)):((A.lanes&E)!==0&&(b4(A,Q),l2(Q,null,null,E),c2()),w=A.memoizedState,G=Q.memoizedState,w.parent!==D?(w={parent:D,cache:D},Q.memoizedState=w,Q.lanes===0&&(Q.memoizedState=Q.updateQueue.baseState=w),Y(Q,gQ,D)):(D=G.cache,Y(Q,gQ,D),D!==w.cache&&V(Q,[gQ],E,!0))),lQ(A,Q,Q.pendingProps.children,E),Q.child;case 29:throw Q.pendingProps}throw Error("Unknown unit of work tag ("+Q.tag+"). This error is likely caused by a bug in React. Please file an issue.")}function Z0(A){A.flags|=4}function z8(A){QE&&(A.flags|=8)}function TJ(A,Q){if(A!==null&&A.child===Q.child)return!1;if((Q.flags&16)!==0)return!0;for(A=Q.child;A!==null;){if((A.flags&8218)!==0||(A.subtreeFlags&8218)!==0)return!0;A=A.sibling}return!1}function OG(A,Q,E,D){if(EI)for(E=Q.child;E!==null;){if(E.tag===5||E.tag===6)E6(A,E.stateNode);else if(!(E.tag===4||TQ&&E.tag===27)&&E.child!==null){E.child.return=E,E=E.child;continue}if(E===Q)break;for(;E.sibling===null;){if(E.return===null||E.return===Q)return;E=E.return}E.sibling.return=E.return,E=E.sibling}else if(QE)for(var w=Q.child;w!==null;){if(w.tag===5){var G=w.stateNode;E&&D&&(G=sM(G,w.type,w.memoizedProps)),E6(A,G)}else if(w.tag===6)G=w.stateNode,E&&D&&(G=tM(G,w.memoizedProps)),E6(A,G);else if(w.tag!==4){if(w.tag===22&&w.memoizedState!==null)G=w.child,G!==null&&(G.return=w),OG(A,w,!0,!0);else if(w.child!==null){w.child.return=w,w=w.child;continue}}if(w===Q)break;for(;w.sibling===null;){if(w.return===null||w.return===Q)return;w=w.return}w.sibling.return=w.return,w=w.sibling}}function vJ(A,Q,E,D){var w=!1;if(QE)for(var G=Q.child;G!==null;){if(G.tag===5){var J=G.stateNode;E&&D&&(J=sM(J,G.type,G.memoizedProps)),nM(A,J)}else if(G.tag===6)J=G.stateNode,E&&D&&(J=tM(J,G.memoizedProps)),nM(A,J);else if(G.tag!==4){if(G.tag===22&&G.memoizedState!==null)w=G.child,w!==null&&(w.return=G),vJ(A,G,!0,!0),w=!0;else if(G.child!==null){G.child.return=G,G=G.child;continue}}if(G===Q)break;for(;G.sibling===null;){if(G.return===null||G.return===Q)return w;G=G.return}G.sibling.return=G.return,G=G.sibling}return w}function _J(A,Q){if(QE&&TJ(A,Q)){A=Q.stateNode;var E=A.containerInfo,D=oM();vJ(D,Q,!1,!1),A.pendingChildren=D,Z0(Q),Tq(E,D)}}function SG(A,Q,E,D){if(EI)A.memoizedProps!==D&&Z0(Q);else if(QE){var{stateNode:w,memoizedProps:G}=A;if((A=TJ(A,Q))||G!==D){var J=rI();G=yq(w,E,G,D,!A,null),G===w?Q.stateNode=w:(z8(Q),iM(G,E,D,J)&&Z0(Q),Q.stateNode=G,A&&OG(G,Q,!1,!1))}else Q.stateNode=w}}function $G(A,Q,E,D,w){if((A.mode&32)!==aA&&(E===null?Bq(Q,D):Qq(Q,E,D))){if(A.flags|=16777216,(w&335544128)===w||g6(Q,D))if(cM(A.stateNode,Q,D))A.flags|=8192;else if(JM())A.flags|=8192;else throw yg=Ew,v6}else A.flags&=-16777217}function VJ(A,Q){if(Hk(Q)){if(A.flags|=16777216,!GU(Q))if(JM())A.flags|=8192;else throw yg=Ew,v6}else A.flags&=-16777217}function O8(A,Q){Q!==null&&(A.flags|=4),A.flags&16384&&(Q=A.tag!==22?rA():536870912,A.lanes|=Q,mg|=Q)}function s2(A,Q){if(!LB)switch(A.tailMode){case"hidden":Q=A.tail;for(var E=null;Q!==null;)Q.alternate!==null&&(E=Q),Q=Q.sibling;E===null?A.tail=null:E.sibling=null;break;case"collapsed":E=A.tail;for(var D=null;E!==null;)E.alternate!==null&&(D=E),E=E.sibling;D===null?Q||A.tail===null?A.tail=null:A.tail.sibling=null:D.sibling=null}}function fB(A){var Q=A.alternate!==null&&A.alternate.child===A.child,E=0,D=0;if(Q)if((A.mode&2)!==aA){for(var{selfBaseDuration:w,child:G}=A;G!==null;)E|=G.lanes|G.childLanes,D|=G.subtreeFlags&65011712,D|=G.flags&65011712,w+=G.treeBaseDuration,G=G.sibling;A.treeBaseDuration=w}else for(w=A.child;w!==null;)E|=w.lanes|w.childLanes,D|=w.subtreeFlags&65011712,D|=w.flags&65011712,w.return=A,w=w.sibling;else if((A.mode&2)!==aA){w=A.actualDuration,G=A.selfBaseDuration;for(var J=A.child;J!==null;)E|=J.lanes|J.childLanes,D|=J.subtreeFlags,D|=J.flags,w+=J.actualDuration,G+=J.treeBaseDuration,J=J.sibling;A.actualDuration=w,A.treeBaseDuration=G}else for(w=A.child;w!==null;)E|=w.lanes|w.childLanes,D|=w.subtreeFlags,D|=w.flags,w.return=A,w=w.sibling;return A.subtreeFlags|=D,A.childLanes=E,Q}function UX(A,Q,E){var D=Q.pendingProps;switch(iA(Q),Q.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return fB(Q),null;case 1:return fB(Q),null;case 3:if(E=Q.stateNode,D=null,A!==null&&(D=A.memoizedState.cache),Q.memoizedState.cache!==D&&(Q.flags|=2048),Z(gQ,Q),i0(Q),E.pendingContext&&(E.context=E.pendingContext,E.pendingContext=null),A===null||A.child===null)LC(Q)?(uC(),Z0(Q)):A===null||A.memoizedState.isDehydrated&&(Q.flags&256)===0||(Q.flags|=1024,Dg());return _J(A,Q),fB(Q),null;case 26:if(k0){var{type:w,memoizedState:G}=Q;return A===null?(Z0(Q),G!==null?(fB(Q),VJ(Q,G)):(fB(Q),$G(Q,w,null,D,E))):G?G!==A.memoizedState?(Z0(Q),fB(Q),VJ(Q,G)):(fB(Q),Q.flags&=-16777217):(G=A.memoizedProps,EI?G!==D&&Z0(Q):SG(A,Q,w,D),fB(Q),$G(Q,w,G,D,E)),null}case 27:if(TQ){if(HD(Q),E=yQ($C.current),w=Q.type,A!==null&&Q.stateNode!=null)EI?A.memoizedProps!==D&&Z0(Q):SG(A,Q,w,D);else{if(!D){if(Q.stateNode===null)throw Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");return fB(Q),null}A=rI(),LC(Q)?x2(Q,A):(A=NU(w,D,E,A,!0),Q.stateNode=A,Z0(Q))}return fB(Q),null}case 5:if(HD(Q),w=Q.type,A!==null&&Q.stateNode!=null)SG(A,Q,w,D);else{if(!D){if(Q.stateNode===null)throw Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");return fB(Q),null}if(G=rI(),LC(Q))x2(Q,G),Bk(Q.stateNode,w,D,G)&&(Q.flags|=64);else{var J=yQ($C.current);J=aX(w,D,J,G,Q),z8(Q),OG(J,Q,!1,!1),Q.stateNode=J,iM(J,w,D,G)&&Z0(Q)}}return fB(Q),$G(Q,Q.type,A===null?null:A.memoizedProps,Q.pendingProps,E),null;case 6:if(A&&Q.stateNode!=null)E=A.memoizedProps,EI?E!==D&&Z0(Q):QE&&(E!==D?(A=yQ($C.current),E=rI(),z8(Q),Q.stateNode=dM(D,A,E,Q)):Q.stateNode=A.stateNode);else{if(typeof D!=="string"&&Q.stateNode===null)throw Error("We must have new props for new mounts. This error is likely caused by a bug in React. Please file an issue.");if(A=yQ($C.current),E=rI(),LC(Q)){if(!CI)throw Error("Expected prepareToHydrateHostTextInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.");if(A=Q.stateNode,E=Q.memoizedProps,w=!gE,D=null,G=nQ,G!==null)switch(G.tag){case 3:w&&(w=QU(A,E,D),w!==null&&(SE(Q,0).serverProps=w));break;case 27:case 5:D=G.memoizedProps,w&&(w=QU(A,E,D),w!==null&&(SE(Q,0).serverProps=w))}aq(A,E,Q,D)||R0(Q,!0)}else z8(Q),Q.stateNode=dM(D,A,E,Q)}return fB(Q),null;case 31:if(E=Q.memoizedState,A===null||A.memoizedState!==null){if(D=LC(Q),E!==null){if(A===null){if(!D)throw Error("A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.");if(!CI)throw Error("Expected prepareToHydrateHostActivityInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.");if(A=Q.memoizedState,A=A!==null?A.dehydrated:null,!A)throw Error("Expected to have a hydrated activity instance. This error is likely caused by a bug in React. Please file an issue.");oq(A,Q),fB(Q),(Q.mode&2)!==aA&&E!==null&&(A=Q.child,A!==null&&(Q.treeBaseDuration-=A.treeBaseDuration))}else uC(),d0(),(Q.flags&128)===0&&(E=Q.memoizedState=null),Q.flags|=4,fB(Q),(Q.mode&2)!==aA&&E!==null&&(A=Q.child,A!==null&&(Q.treeBaseDuration-=A.treeBaseDuration));A=!1}else E=Dg(),A!==null&&A.memoizedState!==null&&(A.memoizedState.hydrationErrors=E),A=!0;if(!A){if(Q.flags&256)return PI(Q),Q;return PI(Q),null}if((Q.flags&128)!==0)throw Error("Client rendering an Activity suspended it again. This is a bug in React.")}return fB(Q),null;case 13:if(D=Q.memoizedState,A===null||A.memoizedState!==null&&A.memoizedState.dehydrated!==null){if(w=D,G=LC(Q),w!==null&&w.dehydrated!==null){if(A===null){if(!G)throw Error("A dehydrated suspense component was completed without a hydrated node. This is probably a bug in React.");if(!CI)throw Error("Expected prepareToHydrateHostSuspenseInstance() to never be called. This error is likely caused by a bug in React. Please file an issue.");if(G=Q.memoizedState,G=G!==null?G.dehydrated:null,!G)throw Error("Expected to have a hydrated suspense instance. This error is likely caused by a bug in React. Please file an issue.");nq(G,Q),fB(Q),(Q.mode&2)!==aA&&w!==null&&(w=Q.child,w!==null&&(Q.treeBaseDuration-=w.treeBaseDuration))}else uC(),d0(),(Q.flags&128)===0&&(w=Q.memoizedState=null),Q.flags|=4,fB(Q),(Q.mode&2)!==aA&&w!==null&&(w=Q.child,w!==null&&(Q.treeBaseDuration-=w.treeBaseDuration));w=!1}else w=Dg(),A!==null&&A.memoizedState!==null&&(A.memoizedState.hydrationErrors=w),w=!0;if(!w){if(Q.flags&256)return PI(Q),Q;return PI(Q),null}}if(PI(Q),(Q.flags&128)!==0)return Q.lanes=E,(Q.mode&2)!==aA&&p2(Q),Q;return E=D!==null,A=A!==null&&A.memoizedState!==null,E&&(D=Q.child,w=null,D.alternate!==null&&D.alternate.memoizedState!==null&&D.alternate.memoizedState.cachePool!==null&&(w=D.alternate.memoizedState.cachePool.pool),G=null,D.memoizedState!==null&&D.memoizedState.cachePool!==null&&(G=D.memoizedState.cachePool.pool),G!==w&&(D.flags|=2048)),E!==A&&E&&(Q.child.flags|=8192),O8(Q,Q.updateQueue),fB(Q),(Q.mode&2)!==aA&&E&&(A=Q.child,A!==null&&(Q.treeBaseDuration-=A.treeBaseDuration)),null;case 4:return i0(Q),_J(A,Q),A===null&&sX(Q.stateNode.containerInfo),fB(Q),null;case 10:return Z(Q.type,Q),fB(Q),null;case 19:if(qA(UQ,Q),D=Q.memoizedState,D===null)return fB(Q),null;if(w=(Q.flags&128)!==0,G=D.rendering,G===null)if(w)s2(D,!1);else{if(rB!==nE||A!==null&&(A.flags&128)!==0)for(A=Q.child;A!==null;){if(G=w8(A),G!==null){Q.flags|=128,s2(D,!1),A=G.updateQueue,Q.updateQueue=A,O8(Q,A),Q.subtreeFlags=0,A=E;for(E=Q.child;E!==null;)_M(E,A),E=E.sibling;return JA(UQ,UQ.current&pD|kF,Q),LB&&LA(Q,D.treeForkCount),Q.child}A=A.sibling}D.tail!==null&&vQ()>VF&&(Q.flags|=128,w=!0,s2(D,!1),Q.lanes=4194304)}else{if(!w)if(A=w8(G),A!==null){if(Q.flags|=128,w=!0,A=A.updateQueue,Q.updateQueue=A,O8(Q,A),s2(D,!0),D.tail===null&&D.tailMode==="hidden"&&!G.alternate&&!LB)return fB(Q),null}else 2*vQ()-D.renderingStartTime>VF&&E!==536870912&&(Q.flags|=128,w=!0,s2(D,!1),Q.lanes=4194304);D.isBackwards?(G.sibling=Q.child,Q.child=G):(A=D.last,A!==null?A.sibling=G:Q.child=G,D.last=G)}if(D.tail!==null)return A=D.tail,D.rendering=A,D.tail=A.sibling,D.renderingStartTime=vQ(),A.sibling=null,E=UQ.current,E=w?E&pD|kF:E&pD,JA(UQ,E,Q),LB&&LA(Q,D.treeForkCount),A;return fB(Q),null;case 22:case 23:return PI(Q),j4(Q),D=Q.memoizedState!==null,A!==null?A.memoizedState!==null!==D&&(Q.flags|=8192):D&&(Q.flags|=8192),D?(E&536870912)!==0&&(Q.flags&128)===0&&(fB(Q),Q.subtreeFlags&6&&(Q.flags|=8192)):fB(Q),E=Q.updateQueue,E!==null&&O8(Q,E.retryQueue),E=null,A!==null&&A.memoizedState!==null&&A.memoizedState.cachePool!==null&&(E=A.memoizedState.cachePool.pool),D=null,Q.memoizedState!==null&&Q.memoizedState.cachePool!==null&&(D=Q.memoizedState.cachePool.pool),D!==E&&(Q.flags|=2048),A!==null&&qA(Sg,Q),null;case 24:return E=null,A!==null&&(E=A.memoizedState.cache),Q.memoizedState.cache!==E&&(Q.flags|=2048),Z(gQ,Q),fB(Q),null;case 25:return null;case 30:return null}throw Error("Unknown unit of work tag ("+Q.tag+"). This error is likely caused by a bug in React. Please file an issue.")}function LX(A,Q){switch(iA(Q),Q.tag){case 1:return A=Q.flags,A&65536?(Q.flags=A&-65537|128,(Q.mode&2)!==aA&&p2(Q),Q):null;case 3:return Z(gQ,Q),i0(Q),A=Q.flags,(A&65536)!==0&&(A&128)===0?(Q.flags=A&-65537|128,Q):null;case 26:case 27:case 5:return HD(Q),null;case 31:if(Q.memoizedState!==null){if(PI(Q),Q.alternate===null)throw Error("Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.");d0()}return A=Q.flags,A&65536?(Q.flags=A&-65537|128,(Q.mode&2)!==aA&&p2(Q),Q):null;case 13:if(PI(Q),A=Q.memoizedState,A!==null&&A.dehydrated!==null){if(Q.alternate===null)throw Error("Threw in newly mounted dehydrated component. This is likely a bug in React. Please file an issue.");d0()}return A=Q.flags,A&65536?(Q.flags=A&-65537|128,(Q.mode&2)!==aA&&p2(Q),Q):null;case 19:return qA(UQ,Q),null;case 4:return i0(Q),null;case 10:return Z(Q.type,Q),null;case 22:case 23:return PI(Q),j4(Q),A!==null&&qA(Sg,Q),A=Q.flags,A&65536?(Q.flags=A&-65537|128,(Q.mode&2)!==aA&&p2(Q),Q):null;case 24:return Z(gQ,Q),null;case 25:return null;default:return null}}function PJ(A,Q){switch(iA(Q),Q.tag){case 3:Z(gQ,Q),i0(Q);break;case 26:case 27:case 5:HD(Q);break;case 4:i0(Q);break;case 31:Q.memoizedState!==null&&PI(Q);break;case 13:PI(Q);break;case 19:qA(UQ,Q);break;case 10:Z(Q.type,Q);break;case 22:case 23:PI(Q),j4(Q),A!==null&&qA(Sg,Q);break;case 24:Z(gQ,Q)}}function t0(A){return(A.mode&2)!==aA}function mJ(A,Q){t0(A)?(r0(),t2(Q,A),n0()):t2(Q,A)}function yG(A,Q,E){t0(A)?(r0(),RD(E,A,Q),n0()):RD(E,A,Q)}function t2(A,Q){try{var E=Q.updateQueue,D=E!==null?E.lastEffect:null;if(D!==null){var w=D.next;E=w;do{if((E.tag&A)===A&&(D=void 0,(A&UI)!==gw&&(tD=!0),D=TA(Q,yk,E),(A&UI)!==gw&&(tD=!1),D!==void 0&&typeof D!=="function")){var G=void 0;G=(E.tag&jI)!==0?"useLayoutEffect":(E.tag&UI)!==0?"useInsertionEffect":"useEffect";var J=void 0;J=D===null?" You returned null. If your effect does not require clean up, return undefined (or nothing).":typeof D.then==="function"?`
132
+
133
+ It looks like you wrote `+G+`(async () => ...) or returned a Promise. Instead, write the async function inside your effect and call it immediately:
134
+
135
+ `+G+`(() => {
136
+ async function fetchData() {
137
+ // You can await here
138
+ const response = await MyAPI.getData(someId);
139
+ // ...
140
+ }
141
+ fetchData();
142
+ }, [someId]); // Or [] if effect doesn't need props or state
143
+
144
+ Learn more about data fetching with Hooks: https://react.dev/link/hooks-data-fetching`:" You returned: "+D,TA(Q,function(L,q){console.error("%s must not return anything besides a function, which is used for clean-up.%s",L,q)},G,J)}E=E.next}while(E!==w)}}catch(L){qB(Q,Q.return,L)}}function RD(A,Q,E){try{var D=Q.updateQueue,w=D!==null?D.lastEffect:null;if(w!==null){var G=w.next;D=G;do{if((D.tag&A)===A){var J=D.inst,L=J.destroy;L!==void 0&&(J.destroy=void 0,(A&UI)!==gw&&(tD=!0),w=Q,TA(w,Tk,w,E,L),(A&UI)!==gw&&(tD=!1))}D=D.next}while(D!==G)}}catch(q){qB(Q,Q.return,q)}}function hJ(A,Q){t0(A)?(r0(),t2(Q,A),n0()):t2(Q,A)}function TG(A,Q,E){t0(A)?(r0(),RD(E,A,Q),n0()):RD(E,A,Q)}function bJ(A){var Q=A.updateQueue;if(Q!==null){var E=A.stateNode;A.type.defaultProps||"ref"in A.memoizedProps||lD||(E.props!==A.memoizedProps&&console.error("Expected %s props to match memoized props before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",s(A)||"instance"),E.state!==A.memoizedState&&console.error("Expected %s state to match memoized state before processing the update queue. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",s(A)||"instance"));try{TA(A,x9,Q,E)}catch(D){qB(A,A.return,D)}}}function uX(A,Q,E){return A.getSnapshotBeforeUpdate(Q,E)}function KX(A,Q){var{memoizedProps:E,memoizedState:D}=Q;Q=A.stateNode,A.type.defaultProps||"ref"in A.memoizedProps||lD||(Q.props!==A.memoizedProps&&console.error("Expected %s props to match memoized props before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",s(A)||"instance"),Q.state!==A.memoizedState&&console.error("Expected %s state to match memoized state before getSnapshotBeforeUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",s(A)||"instance"));try{var w=Hg(A.type,E),G=TA(A,uX,Q,w,D);E=Z7,G!==void 0||E.has(A.type)||(E.add(A.type),TA(A,function(){console.error("%s.getSnapshotBeforeUpdate(): A snapshot value (or null) must be returned. You have returned undefined.",s(A))})),Q.__reactInternalSnapshotBeforeUpdate=G}catch(J){qB(A,A.return,J)}}function fJ(A,Q,E){E.props=Hg(A.type,A.memoizedProps),E.state=A.memoizedState,t0(A)?(r0(),TA(A,xU,A,Q,E),n0()):TA(A,xU,A,Q,E)}function RX(A){var Q=A.ref;if(Q!==null){switch(A.tag){case 26:case 27:case 5:var E=kD(A.stateNode);break;case 30:E=A.stateNode;break;default:E=A.stateNode}if(typeof Q==="function")if(t0(A))try{r0(),A.refCleanup=Q(E)}finally{n0()}else A.refCleanup=Q(E);else typeof Q==="string"?console.error("String refs are no longer supported."):Q.hasOwnProperty("current")||console.error("Unexpected ref object provided for %s. Use either a ref-setter function or React.createRef().",s(A)),Q.current=E}}function e2(A,Q){try{TA(A,RX,A)}catch(E){qB(A,Q,E)}}function e0(A,Q){var{ref:E,refCleanup:D}=A;if(E!==null)if(typeof D==="function")try{if(t0(A))try{r0(),TA(A,D)}finally{n0(A)}else TA(A,D)}catch(w){qB(A,Q,w)}finally{A.refCleanup=null,A=A.alternate,A!=null&&(A.refCleanup=null)}else if(typeof E==="function")try{if(t0(A))try{r0(),TA(A,E,null)}finally{n0(A)}else TA(A,E,null)}catch(w){qB(A,Q,w)}else E.current=null}function jJ(A,Q,E,D){var w=A.memoizedProps,G=w.id,J=w.onCommit;w=w.onRender,Q=Q===null?"mount":"update",t8&&(Q="nested-update"),typeof w==="function"&&w(G,Q,A.actualDuration,A.treeBaseDuration,A.actualStartTime,E),typeof J==="function"&&J(G,Q,D,E)}function WX(A,Q,E,D){var w=A.memoizedProps;A=w.id,w=w.onPostCommit,Q=Q===null?"mount":"update",t8&&(Q="nested-update"),typeof w==="function"&&w(A,Q,D,E)}function xJ(A){var{type:Q,memoizedProps:E,stateNode:D}=A;try{TA(A,Rq,D,Q,E,A)}catch(w){qB(A,A.return,w)}}function vG(A,Q,E){try{TA(A,Wq,A.stateNode,A.type,E,Q,A)}catch(D){qB(A,A.return,D)}}function pJ(A){return A.tag===5||A.tag===3||(k0?A.tag===26:!1)||(TQ?A.tag===27&&SD(A.type):!1)||A.tag===4}function _G(A){A:for(;;){for(;A.sibling===null;){if(A.return===null||pJ(A.return))return null;A=A.return}A.sibling.return=A.return;for(A=A.sibling;A.tag!==5&&A.tag!==6&&A.tag!==18;){if(TQ&&A.tag===27&&SD(A.type))continue A;if(A.flags&2)continue A;if(A.child===null||A.tag===4)continue A;else A.child.return=A,A=A.child}if(!(A.flags&2))return A.stateNode}}function VG(A,Q,E){var D=A.tag;if(D===5||D===6)A=A.stateNode,Q?Zq(E,A,Q):uq(E,A);else if(D!==4&&(TQ&&D===27&&SD(A.type)&&(E=A.stateNode,Q=null),A=A.child,A!==null))for(VG(A,Q,E),A=A.sibling;A!==null;)VG(A,Q,E),A=A.sibling}function S8(A,Q,E){var D=A.tag;if(D===5||D===6)A=A.stateNode,Q?Yq(E,A,Q):Lq(E,A);else if(D!==4&&(TQ&&D===27&&SD(A.type)&&(E=A.stateNode),A=A.child,A!==null))for(S8(A,Q,E),A=A.sibling;A!==null;)S8(A,Q,E),A=A.sibling}function YX(A){for(var Q,E=A.return;E!==null;){if(pJ(E)){Q=E;break}E=E.return}if(EI){if(Q==null)throw Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.");switch(Q.tag){case 27:if(TQ){Q=Q.stateNode,E=_G(A),S8(A,E,Q);break}case 5:E=Q.stateNode,Q.flags&32&&(aM(E),Q.flags&=-33),Q=_G(A),S8(A,Q,E);break;case 3:case 4:Q=Q.stateNode.containerInfo,E=_G(A),VG(A,E,Q);break;default:throw Error("Invalid host parent fiber. This error is likely caused by a bug in React. Please file an issue.")}}}function iJ(A,Q,E){A=A.containerInfo;try{TA(Q,rM,A,E)}catch(D){qB(Q,Q.return,D)}}function dJ(A){var{stateNode:Q,memoizedProps:E}=A;try{TA(A,Mk,A.type,E,Q,A)}catch(D){qB(A,A.return,D)}}function cJ(A,Q){return Q.tag===31?(Q=Q.memoizedState,A.memoizedState!==null&&Q===null):Q.tag===13?(A=A.memoizedState,Q=Q.memoizedState,A!==null&&A.dehydrated!==null&&(Q===null||Q.dehydrated===null)):Q.tag===3?A.memoizedState.isDehydrated&&(Q.flags&256)===0:!1}function ZX(A,Q){cX(A.containerInfo);for(jQ=Q;jQ!==null;)if(A=jQ,Q=A.child,(A.subtreeFlags&1028)!==0&&Q!==null)Q.return=A,jQ=Q;else for(;jQ!==null;){Q=A=jQ;var{alternate:E,flags:D}=Q;switch(Q.tag){case 0:if((D&4)!==0&&(Q=Q.updateQueue,Q=Q!==null?Q.events:null,Q!==null))for(E=0;E<Q.length;E++)D=Q[E],D.ref.impl=D.nextImpl;break;case 11:case 15:break;case 1:(D&1024)!==0&&E!==null&&KX(Q,E);break;case 3:(D&1024)!==0&&EI&&$q(Q.stateNode.containerInfo);break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((D&1024)!==0)throw Error("This unit of work tag should not have side-effects. This error is likely caused by a bug in React. Please file an issue.")}if(Q=A.sibling,Q!==null){Q.return=A.return,jQ=Q;break}jQ=A.return}}function lJ(A,Q,E){var D=AI(),w=c0(),G=a0(),J=o0(),L=E.flags;switch(E.tag){case 0:case 11:case 15:AE(A,E),L&4&&mJ(E,jI|E0);break;case 1:if(AE(A,E),L&4)if(A=E.stateNode,Q===null)E.type.defaultProps||"ref"in E.memoizedProps||lD||(A.props!==E.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",s(E)||"instance"),A.state!==E.memoizedState&&console.error("Expected %s state to match memoized state before componentDidMount. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",s(E)||"instance")),t0(E)?(r0(),TA(E,T6,E,A),n0()):TA(E,T6,E,A);else{var q=Hg(E.type,Q.memoizedProps);Q=Q.memoizedState,E.type.defaultProps||"ref"in E.memoizedProps||lD||(A.props!==E.memoizedProps&&console.error("Expected %s props to match memoized props before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.props`. Please file an issue.",s(E)||"instance"),A.state!==E.memoizedState&&console.error("Expected %s state to match memoized state before componentDidUpdate. This might either be because of a bug in React, or because a component reassigns its own `this.state`. Please file an issue.",s(E)||"instance")),t0(E)?(r0(),TA(E,bU,E,A,q,Q,A.__reactInternalSnapshotBeforeUpdate),n0()):TA(E,bU,E,A,q,Q,A.__reactInternalSnapshotBeforeUpdate)}L&64&&bJ(E),L&512&&e2(E,E.return);break;case 3:if(Q=EQ(),AE(A,E),L&64&&(L=E.updateQueue,L!==null)){if(q=null,E.child!==null)switch(E.child.tag){case 27:case 5:q=kD(E.child.stateNode);break;case 1:q=E.child.stateNode}try{TA(E,x9,L,q)}catch(x){qB(E,E.return,x)}}A.effectDuration+=eQ(Q);break;case 27:TQ&&Q===null&&L&4&&dJ(E);case 26:case 5:if(AE(A,E),Q===null){if(L&4)xJ(E);else if(L&64){A=E.type,Q=E.memoizedProps,q=E.stateNode;try{TA(E,sq,q,A,Q,E)}catch(x){qB(E,E.return,x)}}}L&512&&e2(E,E.return);break;case 12:if(L&4){L=EQ(),AE(A,E),A=E.stateNode,A.effectDuration+=W0(L);try{TA(E,jJ,E,Q,TC,A.effectDuration)}catch(x){qB(E,E.return,x)}}else AE(A,E);break;case 31:AE(A,E),L&4&&oJ(A,E);break;case 13:AE(A,E),L&4&&nJ(A,E),L&64&&(A=E.memoizedState,A!==null&&(A=A.dehydrated,A!==null&&(L=TX.bind(null,E),_q(A,L))));break;case 22:if(L=E.memoizedState!==null||oE,!L){Q=Q!==null&&Q.memoizedState!==null||ZQ,q=oE;var _=ZQ;oE=L,(ZQ=Q)&&!_?(BE(A,E,(E.subtreeFlags&8772)!==0),(E.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&PA(E,pA,dA)):AE(A,E),oE=q,ZQ=_}break;case 30:break;default:AE(A,E)}(E.mode&2)!==aA&&0<=pA&&0<=dA&&((DQ||0.05<nB)&&SQ(E,pA,dA,nB,cB),E.alternate===null&&E.return!==null&&E.return.alternate!==null&&0.05<dA-pA&&(cJ(E.return.alternate,E.return)||VB(E,pA,dA,"Mount"))),BI(D),l0(w),cB=G,DQ=J}function aJ(A){var Q=A.alternate;Q!==null&&(A.alternate=null,aJ(Q)),A.child=null,A.deletions=null,A.sibling=null,A.tag===5&&(Q=A.stateNode,Q!==null&&Aq(Q)),A.stateNode=null,A._debugOwner=null,A.return=null,A.dependencies=null,A.memoizedProps=null,A.memoizedState=null,A.pendingProps=null,A.stateNode=null,A.updateQueue=null}function X0(A,Q,E){for(E=E.child;E!==null;)PG(A,Q,E),E=E.sibling}function PG(A,Q,E){if(gI&&typeof gI.onCommitFiberUnmount==="function")try{gI.onCommitFiberUnmount($D,E)}catch(_){IE||(IE=!0,console.error("React instrumentation encountered an error: %o",_))}var D=AI(),w=c0(),G=a0(),J=o0();switch(E.tag){case 26:if(k0){ZQ||e0(E,Q),X0(A,Q,E),E.memoizedState?DU(E.memoizedState):E.stateNode&&wU(E.stateNode);break}case 27:if(TQ){ZQ||e0(E,Q);var L=XQ,q=ZI;SD(E.type)&&(XQ=E.stateNode,ZI=!1),X0(A,Q,E),TA(E,HU,E.stateNode),XQ=L,ZI=q;break}case 5:ZQ||e0(E,Q);case 6:if(EI){if(L=XQ,q=ZI,XQ=null,X0(A,Q,E),XQ=L,ZI=q,XQ!==null)if(ZI)try{TA(E,qq,XQ,E.stateNode)}catch(_){qB(E,Q,_)}else try{TA(E,Xq,XQ,E.stateNode)}catch(_){qB(E,Q,_)}}else X0(A,Q,E);break;case 18:EI&&XQ!==null&&(ZI?Ek(XQ,E.stateNode):Ik(XQ,E.stateNode));break;case 4:EI?(L=XQ,q=ZI,XQ=E.stateNode.containerInfo,ZI=!0,X0(A,Q,E),XQ=L,ZI=q):(QE&&iJ(E.stateNode,E,oM()),X0(A,Q,E));break;case 0:case 11:case 14:case 15:RD(UI,E,Q),ZQ||yG(E,Q,jI),X0(A,Q,E);break;case 1:ZQ||(e0(E,Q),L=E.stateNode,typeof L.componentWillUnmount==="function"&&fJ(E,Q,L)),X0(A,Q,E);break;case 21:X0(A,Q,E);break;case 22:ZQ=(L=ZQ)||E.memoizedState!==null,X0(A,Q,E),ZQ=L;break;default:X0(A,Q,E)}(E.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(E,pA,dA,nB,cB),BI(D),l0(w),cB=G,DQ=J}function oJ(A,Q){if(CI&&Q.memoizedState===null&&(A=Q.alternate,A!==null&&(A=A.memoizedState,A!==null))){A=A.dehydrated;try{TA(Q,eq,A)}catch(E){qB(Q,Q.return,E)}}}function nJ(A,Q){if(CI&&Q.memoizedState===null&&(A=Q.alternate,A!==null&&(A=A.memoizedState,A!==null&&(A=A.dehydrated,A!==null))))try{TA(Q,Ak,A)}catch(E){qB(Q,Q.return,E)}}function XX(A){switch(A.tag){case 31:case 13:case 19:var Q=A.stateNode;return Q===null&&(Q=A.stateNode=new X7),Q;case 22:return A=A.stateNode,Q=A._retryCache,Q===null&&(Q=A._retryCache=new X7),Q;default:throw Error("Unexpected Suspense handler tag ("+A.tag+"). This is a bug in React.")}}function $8(A,Q){var E=XX(A);Q.forEach(function(D){if(!E.has(D)){if(E.add(D),EE)if(aD!==null&&oD!==null)QF(oD,aD);else throw Error("Expected finished root and lanes to be set. This is a bug in React.");var w=vX.bind(null,A,D);D.then(w,w)}})}function II(A,Q){var E=Q.deletions;if(E!==null)for(var D=0;D<E.length;D++){var w=A,G=Q,J=E[D],L=AI();if(EI){var q=G;A:for(;q!==null;){switch(q.tag){case 27:if(TQ){if(SD(q.type)){XQ=q.stateNode,ZI=!1;break A}break}case 5:XQ=q.stateNode,ZI=!1;break A;case 3:case 4:XQ=q.stateNode.containerInfo,ZI=!0;break A}q=q.return}if(XQ===null)throw Error("Expected to find a host parent. This error is likely caused by a bug in React. Please file an issue.");PG(w,G,J),XQ=null,ZI=!1}else PG(w,G,J);(J.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&VB(J,pA,dA,"Unmount"),BI(L),w=J,G=w.alternate,G!==null&&(G.return=null),w.return=null}if(Q.subtreeFlags&13886)for(Q=Q.child;Q!==null;)rJ(Q,A),Q=Q.sibling}function rJ(A,Q){var E=AI(),D=c0(),w=a0(),G=o0(),J=A.alternate,L=A.flags;switch(A.tag){case 0:case 11:case 14:case 15:II(Q,A),NI(A),L&4&&(RD(UI|E0,A,A.return),t2(UI|E0,A),yG(A,A.return,jI|E0));break;case 1:II(Q,A),NI(A),L&512&&(ZQ||J===null||e0(J,J.return)),L&64&&oE&&(L=A.updateQueue,L!==null&&(J=L.callbacks,J!==null&&(Q=L.shared.hiddenCallbacks,L.shared.hiddenCallbacks=Q===null?J:Q.concat(J))));break;case 26:if(k0){var q=S0;II(Q,A),NI(A),L&512&&(ZQ||J===null||e0(J,J.return)),L&4&&(L=J!==null?J.memoizedState:null,Q=A.memoizedState,J===null?Q===null?A.stateNode===null?A.stateNode=wk(q,A.type,A.memoizedProps,A):FU(q,A.type,A.stateNode):A.stateNode=gU(q,Q,A.memoizedProps):L!==Q?(L===null?J.stateNode!==null&&wU(J.stateNode):DU(L),Q===null?FU(q,A.type,A.stateNode):gU(q,Q,A.memoizedProps)):Q===null&&A.stateNode!==null&&vG(A,A.memoizedProps,J.memoizedProps));break}case 27:if(TQ){II(Q,A),NI(A),L&512&&(ZQ||J===null||e0(J,J.return)),J!==null&&L&4&&vG(A,A.memoizedProps,J.memoizedProps);break}case 5:if(II(Q,A),NI(A),L&512&&(ZQ||J===null||e0(J,J.return)),EI){if(A.flags&32){Q=A.stateNode;try{TA(A,aM,Q)}catch(vB){qB(A,A.return,vB)}}L&4&&A.stateNode!=null&&(Q=A.memoizedProps,vG(A,Q,J!==null?J.memoizedProps:Q)),L&1024&&(c6=!0,A.type!=="form"&&console.error("Unexpected host component type. Expected a form. This is a bug in React."))}else QE&&A.alternate!==null&&(A.alternate.stateNode=A.stateNode);break;case 6:if(II(Q,A),NI(A),L&4&&EI){if(A.stateNode===null)throw Error("This should have a text node initialized. This error is likely caused by a bug in React. Please file an issue.");L=A.memoizedProps,J=J!==null?J.memoizedProps:L,Q=A.stateNode;try{TA(A,Kq,Q,J,L)}catch(vB){qB(A,A.return,vB)}}break;case 3:if(q=EQ(),k0){Nk();var _=S0;S0=G6(Q.containerInfo),II(Q,A),S0=_}else II(Q,A);if(NI(A),L&4){if(EI&&CI&&J!==null&&J.memoizedState.isDehydrated)try{TA(A,tq,Q.containerInfo)}catch(vB){qB(A,A.return,vB)}if(QE){L=Q.containerInfo,J=Q.pendingChildren;try{TA(A,rM,L,J)}catch(vB){qB(A,A.return,vB)}}}c6&&(c6=!1,sJ(A)),Q.effectDuration+=eQ(q);break;case 4:k0?(J=S0,S0=G6(A.stateNode.containerInfo),II(Q,A),NI(A),S0=J):(II(Q,A),NI(A)),L&4&&QE&&iJ(A.stateNode,A,A.stateNode.pendingChildren);break;case 12:L=EQ(),II(Q,A),NI(A),A.stateNode.effectDuration+=W0(L);break;case 31:II(Q,A),NI(A),L&4&&(L=A.updateQueue,L!==null&&(A.updateQueue=null,$8(A,L)));break;case 13:II(Q,A),NI(A),A.child.flags&8192&&A.memoizedState!==null!==(J!==null&&J.memoizedState!==null)&&(Zw=vQ()),L&4&&(L=A.updateQueue,L!==null&&(A.updateQueue=null,$8(A,L)));break;case 22:q=A.memoizedState!==null;var x=J!==null&&J.memoizedState!==null,i=oE,t=ZQ;if(oE=i||q,ZQ=t||x,II(Q,A),ZQ=t,oE=i,x&&!q&&!i&&!t&&(A.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&PA(A,pA,dA),NI(A),L&8192&&(Q=A.stateNode,Q._visibility=q?Q._visibility&~qF:Q._visibility|qF,!q||J===null||x||oE||ZQ||(Jg(A),(A.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&VB(A,pA,dA,"Disconnect")),EI)){A:if(J=null,EI)for(Q=A;;){if(Q.tag===5||k0&&Q.tag===26){if(J===null){x=J=Q;try{_=x.stateNode,q?TA(x,kq,_):TA(x,Oq,x.stateNode,x.memoizedProps)}catch(vB){qB(x,x.return,vB)}}}else if(Q.tag===6){if(J===null){x=Q;try{var mA=x.stateNode;q?TA(x,zq,mA):TA(x,Sq,mA,x.memoizedProps)}catch(vB){qB(x,x.return,vB)}}}else if(Q.tag===18){if(J===null){x=Q;try{var eA=x.stateNode;q?TA(x,Ck,eA):TA(x,gk,x.stateNode)}catch(vB){qB(x,x.return,vB)}}}else if((Q.tag!==22&&Q.tag!==23||Q.memoizedState===null||Q===A)&&Q.child!==null){Q.child.return=Q,Q=Q.child;continue}if(Q===A)break A;for(;Q.sibling===null;){if(Q.return===null||Q.return===A)break A;J===Q&&(J=null),Q=Q.return}J===Q&&(J=null),Q.sibling.return=Q.return,Q=Q.sibling}}L&4&&(L=A.updateQueue,L!==null&&(J=L.retryQueue,J!==null&&(L.retryQueue=null,$8(A,J))));break;case 19:II(Q,A),NI(A),L&4&&(L=A.updateQueue,L!==null&&(A.updateQueue=null,$8(A,L)));break;case 30:break;case 21:break;default:II(Q,A),NI(A)}(A.mode&2)!==aA&&0<=pA&&0<=dA&&((DQ||0.05<nB)&&SQ(A,pA,dA,nB,cB),A.alternate===null&&A.return!==null&&A.return.alternate!==null&&0.05<dA-pA&&(cJ(A.return.alternate,A.return)||VB(A,pA,dA,"Mount"))),BI(E),l0(D),cB=w,DQ=G}function NI(A){var Q=A.flags;if(Q&2){try{TA(A,YX,A)}catch(E){qB(A,A.return,E)}A.flags&=-3}Q&4096&&(A.flags&=-4097)}function sJ(A){if(A.subtreeFlags&1024)for(A=A.child;A!==null;){var Q=A;sJ(Q),Q.tag===5&&Q.flags&1024&&gq(Q.stateNode),A=A.sibling}}function AE(A,Q){if(Q.subtreeFlags&8772)for(Q=Q.child;Q!==null;)lJ(A,Q.alternate,Q),Q=Q.sibling}function tJ(A){var Q=AI(),E=c0(),D=a0(),w=o0();switch(A.tag){case 0:case 11:case 14:case 15:yG(A,A.return,jI),Jg(A);break;case 1:e0(A,A.return);var G=A.stateNode;typeof G.componentWillUnmount==="function"&&fJ(A,A.return,G),Jg(A);break;case 27:TQ&&TA(A,HU,A.stateNode);case 26:case 5:e0(A,A.return),Jg(A);break;case 22:A.memoizedState===null&&Jg(A);break;case 30:Jg(A);break;default:Jg(A)}(A.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(A,pA,dA,nB,cB),BI(Q),l0(E),cB=D,DQ=w}function Jg(A){for(A=A.child;A!==null;)tJ(A),A=A.sibling}function eJ(A,Q,E,D){var w=AI(),G=c0(),J=a0(),L=o0(),q=E.flags;switch(E.tag){case 0:case 11:case 15:BE(A,E,D),mJ(E,jI);break;case 1:if(BE(A,E,D),Q=E.stateNode,typeof Q.componentDidMount==="function"&&TA(E,T6,E,Q),Q=E.updateQueue,Q!==null){A=E.stateNode;try{TA(E,CX,Q,A)}catch(_){qB(E,E.return,_)}}D&&q&64&&bJ(E),e2(E,E.return);break;case 27:TQ&&dJ(E);case 26:case 5:BE(A,E,D),D&&Q===null&&q&4&&xJ(E),e2(E,E.return);break;case 12:if(D&&q&4){q=EQ(),BE(A,E,D),D=E.stateNode,D.effectDuration+=W0(q);try{TA(E,jJ,E,Q,TC,D.effectDuration)}catch(_){qB(E,E.return,_)}}else BE(A,E,D);break;case 31:BE(A,E,D),D&&q&4&&oJ(A,E);break;case 13:BE(A,E,D),D&&q&4&&nJ(A,E);break;case 22:E.memoizedState===null&&BE(A,E,D),e2(E,E.return);break;case 30:break;default:BE(A,E,D)}(E.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(E,pA,dA,nB,cB),BI(w),l0(G),cB=J,DQ=L}function BE(A,Q,E){E=E&&(Q.subtreeFlags&8772)!==0;for(Q=Q.child;Q!==null;)eJ(A,Q.alternate,Q,E),Q=Q.sibling}function mG(A,Q){var E=null;A!==null&&A.memoizedState!==null&&A.memoizedState.cachePool!==null&&(E=A.memoizedState.cachePool.pool),A=null,Q.memoizedState!==null&&Q.memoizedState.cachePool!==null&&(A=Q.memoizedState.cachePool.pool),A!==E&&(A!=null&&fA(A),E!=null&&UB(E))}function hG(A,Q){A=null,Q.alternate!==null&&(A=Q.alternate.memoizedState.cache),Q=Q.memoizedState.cache,Q!==A&&(fA(Q),A!=null&&UB(A))}function q0(A,Q,E,D,w){if(Q.subtreeFlags&10256||Q.actualDuration!==0&&(Q.alternate===null||Q.alternate.child!==Q.child))for(Q=Q.child;Q!==null;){var G=Q.sibling;AM(A,Q,E,D,G!==null?G.actualStartTime:w),Q=G}}function AM(A,Q,E,D,w){var G=AI(),J=c0(),L=a0(),q=o0(),_=zC,x=Q.flags;switch(Q.tag){case 0:case 11:case 15:(Q.mode&2)!==aA&&0<Q.actualStartTime&&(Q.flags&1)!==0&&bQ(Q,Q.actualStartTime,w,_Q,E),q0(A,Q,E,D,w),x&2048&&hJ(Q,LI|E0);break;case 1:(Q.mode&2)!==aA&&0<Q.actualStartTime&&((Q.flags&128)!==0?OQ(Q,Q.actualStartTime,w,[]):(Q.flags&1)!==0&&bQ(Q,Q.actualStartTime,w,_Q,E)),q0(A,Q,E,D,w);break;case 3:var i=EQ(),t=_Q;_Q=Q.alternate!==null&&Q.alternate.memoizedState.isDehydrated&&(Q.flags&256)===0,q0(A,Q,E,D,w),_Q=t,x&2048&&(E=null,Q.alternate!==null&&(E=Q.alternate.memoizedState.cache),D=Q.memoizedState.cache,D!==E&&(fA(D),E!=null&&UB(E))),A.passiveEffectDuration+=eQ(i);break;case 12:if(x&2048){x=EQ(),q0(A,Q,E,D,w),A=Q.stateNode,A.passiveEffectDuration+=W0(x);try{TA(Q,WX,Q,Q.alternate,TC,A.passiveEffectDuration)}catch(mA){qB(Q,Q.return,mA)}}else q0(A,Q,E,D,w);break;case 31:x=_Q,i=Q.alternate!==null?Q.alternate.memoizedState:null,t=Q.memoizedState,i!==null&&t===null?(t=Q.deletions,t!==null&&0<t.length&&t[0].tag===18?(_Q=!1,i=i.hydrationErrors,i!==null&&OQ(Q,Q.actualStartTime,w,i)):_Q=!0):_Q=!1,q0(A,Q,E,D,w),_Q=x;break;case 13:x=_Q,i=Q.alternate!==null?Q.alternate.memoizedState:null,t=Q.memoizedState,i===null||i.dehydrated===null||t!==null&&t.dehydrated!==null?_Q=!1:(t=Q.deletions,t!==null&&0<t.length&&t[0].tag===18?(_Q=!1,i=i.hydrationErrors,i!==null&&OQ(Q,Q.actualStartTime,w,i)):_Q=!0),q0(A,Q,E,D,w),_Q=x;break;case 23:break;case 22:t=Q.stateNode,i=Q.alternate,Q.memoizedState!==null?t._visibility&dE?q0(A,Q,E,D,w):AF(A,Q,E,D,w):t._visibility&dE?q0(A,Q,E,D,w):(t._visibility|=dE,WD(A,Q,E,D,(Q.subtreeFlags&10256)!==0||Q.actualDuration!==0&&(Q.alternate===null||Q.alternate.child!==Q.child),w),(Q.mode&2)===aA||_Q||(A=Q.actualStartTime,0<=A&&0.05<w-A&&PA(Q,A,w),0<=pA&&0<=dA&&0.05<dA-pA&&PA(Q,pA,dA))),x&2048&&mG(i,Q);break;case 24:q0(A,Q,E,D,w),x&2048&&hG(Q.alternate,Q);break;default:q0(A,Q,E,D,w)}if((Q.mode&2)!==aA){if(A=!_Q&&Q.alternate===null&&Q.return!==null&&Q.return.alternate!==null)E=Q.actualStartTime,0<=E&&0.05<w-E&&VB(Q,E,w,"Mount");0<=pA&&0<=dA&&((DQ||0.05<nB)&&SQ(Q,pA,dA,nB,cB),A&&0.05<dA-pA&&VB(Q,pA,dA,"Mount"))}BI(G),l0(J),cB=L,DQ=q,zC=_}function WD(A,Q,E,D,w,G){w=w&&((Q.subtreeFlags&10256)!==0||Q.actualDuration!==0&&(Q.alternate===null||Q.alternate.child!==Q.child));for(Q=Q.child;Q!==null;){var J=Q.sibling;BM(A,Q,E,D,w,J!==null?J.actualStartTime:G),Q=J}}function BM(A,Q,E,D,w,G){var J=AI(),L=c0(),q=a0(),_=o0(),x=zC;w&&(Q.mode&2)!==aA&&0<Q.actualStartTime&&(Q.flags&1)!==0&&bQ(Q,Q.actualStartTime,G,_Q,E);var i=Q.flags;switch(Q.tag){case 0:case 11:case 15:WD(A,Q,E,D,w,G),hJ(Q,LI);break;case 23:break;case 22:var t=Q.stateNode;Q.memoizedState!==null?t._visibility&dE?WD(A,Q,E,D,w,G):AF(A,Q,E,D,G):(t._visibility|=dE,WD(A,Q,E,D,w,G)),w&&i&2048&&mG(Q.alternate,Q);break;case 24:WD(A,Q,E,D,w,G),w&&i&2048&&hG(Q.alternate,Q);break;default:WD(A,Q,E,D,w,G)}(Q.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(Q,pA,dA,nB,cB),BI(J),l0(L),cB=q,DQ=_,zC=x}function AF(A,Q,E,D,w){if(Q.subtreeFlags&10256||Q.actualDuration!==0&&(Q.alternate===null||Q.alternate.child!==Q.child))for(var G=Q.child;G!==null;){Q=G.sibling;var J=A,L=E,q=D,_=Q!==null?Q.actualStartTime:w,x=zC;(G.mode&2)!==aA&&0<G.actualStartTime&&(G.flags&1)!==0&&bQ(G,G.actualStartTime,_,_Q,L);var i=G.flags;switch(G.tag){case 22:AF(J,G,L,q,_),i&2048&&mG(G.alternate,G);break;case 24:AF(J,G,L,q,_),i&2048&&hG(G.alternate,G);break;default:AF(J,G,L,q,_)}zC=x,G=Q}}function Mg(A,Q,E){if(A.subtreeFlags&nD)for(A=A.child;A!==null;)QM(A,Q,E),A=A.sibling}function QM(A,Q,E){switch(A.tag){case 26:if(Mg(A,Q,E),A.flags&nD)if(A.memoizedState!==null)Jk(E,S0,A.memoizedState,A.memoizedProps);else{var{stateNode:D,type:w}=A;A=A.memoizedProps,((Q&335544128)===Q||g6(w,A))&&lM(E,D,w,A)}break;case 5:Mg(A,Q,E),A.flags&nD&&(D=A.stateNode,w=A.type,A=A.memoizedProps,((Q&335544128)===Q||g6(w,A))&&lM(E,D,w,A));break;case 3:case 4:k0?(D=S0,S0=G6(A.stateNode.containerInfo),Mg(A,Q,E),S0=D):Mg(A,Q,E);break;case 22:A.memoizedState===null&&(D=A.alternate,D!==null&&D.memoizedState!==null?(D=nD,nD=16777216,Mg(A,Q,E),nD=D):Mg(A,Q,E));break;default:Mg(A,Q,E)}}function IM(A){var Q=A.alternate;if(Q!==null&&(A=Q.child,A!==null)){Q.child=null;do Q=A.sibling,A.sibling=null,A=Q;while(A!==null)}}function BF(A){var Q=A.deletions;if((A.flags&16)!==0){if(Q!==null)for(var E=0;E<Q.length;E++){var D=Q[E],w=AI();jQ=D,gM(D,A),(D.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&VB(D,pA,dA,"Unmount"),BI(w)}IM(A)}if(A.subtreeFlags&10256)for(A=A.child;A!==null;)EM(A),A=A.sibling}function EM(A){var Q=AI(),E=c0(),D=a0(),w=o0();switch(A.tag){case 0:case 11:case 15:BF(A),A.flags&2048&&TG(A,A.return,LI|E0);break;case 3:var G=EQ();BF(A),A.stateNode.passiveEffectDuration+=eQ(G);break;case 12:G=EQ(),BF(A),A.stateNode.passiveEffectDuration+=W0(G);break;case 22:G=A.stateNode,A.memoizedState!==null&&G._visibility&dE&&(A.return===null||A.return.tag!==13)?(G._visibility&=~dE,y8(A),(A.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&VB(A,pA,dA,"Disconnect")):BF(A);break;default:BF(A)}(A.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(A,pA,dA,nB,cB),BI(Q),l0(E),DQ=w,cB=D}function y8(A){var Q=A.deletions;if((A.flags&16)!==0){if(Q!==null)for(var E=0;E<Q.length;E++){var D=Q[E],w=AI();jQ=D,gM(D,A),(D.mode&2)!==aA&&0<=pA&&0<=dA&&0.05<dA-pA&&VB(D,pA,dA,"Unmount"),BI(w)}IM(A)}for(A=A.child;A!==null;)CM(A),A=A.sibling}function CM(A){var Q=AI(),E=c0(),D=a0(),w=o0();switch(A.tag){case 0:case 11:case 15:TG(A,A.return,LI),y8(A);break;case 22:var G=A.stateNode;G._visibility&dE&&(G._visibility&=~dE,y8(A));break;default:y8(A)}(A.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(A,pA,dA,nB,cB),BI(Q),l0(E),DQ=w,cB=D}function gM(A,Q){for(;jQ!==null;){var E=jQ,D=E,w=Q,G=AI(),J=c0(),L=a0(),q=o0();switch(D.tag){case 0:case 11:case 15:TG(D,w,LI);break;case 23:case 22:D.memoizedState!==null&&D.memoizedState.cachePool!==null&&(w=D.memoizedState.cachePool.pool,w!=null&&fA(w));break;case 24:UB(D.memoizedState.cache)}if((D.mode&2)!==aA&&0<=pA&&0<=dA&&(DQ||0.05<nB)&&SQ(D,pA,dA,nB,cB),BI(G),l0(J),DQ=q,cB=L,D=E.child,D!==null)D.return=E,jQ=D;else A:for(E=A;jQ!==null;){if(D=jQ,G=D.sibling,J=D.return,aJ(D),D===E){jQ=null;break A}if(G!==null){G.return=J,jQ=G;break A}jQ=J}}}function bG(A){var Q=rX(A);if(Q!=null){if(typeof Q.memoizedProps["data-testname"]!=="string")throw Error("Invalid host root specified. Should be either a React container or a node with a testname attribute.");return Q}if(A=Gq(A),A===null)throw Error("Could not find React container within specified host subtree.");return A.stateNode.current}function fG(A,Q){var E=A.tag;switch(Q.$$typeof){case Nw:if(A.type===Q.value)return!0;break;case Hw:A:{Q=Q.value,A=[A,0];for(E=0;E<A.length;){var D=A[E++],w=D.tag,G=A[E++],J=Q[G];if(w!==5&&w!==26&&w!==27||!gF(D)){for(;J!=null&&fG(D,J);)G++,J=Q[G];if(G===Q.length){Q=!0;break A}else for(D=D.child;D!==null;)A.push(D,G),D=D.sibling}}Q=!1}return Q;case Jw:if((E===5||E===26||E===27)&&Jq(A.stateNode,Q.value))return!0;break;case Uw:if(E===5||E===6||E===26||E===27){if(A=Hq(A),A!==null&&0<=A.indexOf(Q.value))return!0}break;case Mw:if(E===5||E===26||E===27){if(A=A.memoizedProps["data-testname"],typeof A==="string"&&A.toLowerCase()===Q.value.toLowerCase())return!0}break;default:throw Error("Invalid selector type specified.")}return!1}function jG(A){switch(A.$$typeof){case Nw:return"<"+(GA(A.value)||"Unknown")+">";case Hw:return":has("+(jG(A)||"")+")";case Jw:return'[role="'+A.value+'"]';case Uw:return'"'+A.value+'"';case Mw:return'[data-testname="'+A.value+'"]';default:throw Error("Invalid selector type specified.")}}function DM(A,Q){var E=[];A=[A,0];for(var D=0;D<A.length;){var w=A[D++],G=w.tag,J=A[D++],L=Q[J];if(G!==5&&G!==26&&G!==27||!gF(w)){for(;L!=null&&fG(w,L);)J++,L=Q[J];if(J===Q.length)E.push(w);else for(w=w.child;w!==null;)A.push(w,J),w=w.sibling}}return E}function T8(A,Q){if(!OD)throw Error("Test selector API is not supported by this renderer.");A=bG(A),A=DM(A,Q),Q=[],A=Array.from(A);for(var E=0;E<A.length;){var D=A[E++],w=D.tag;if(w===5||w===26||w===27)gF(D)||Q.push(D.stateNode);else for(D=D.child;D!==null;)A.push(D),D=D.sibling}return Q}function qX(){OD&&Lw.forEach(function(A){return A()})}function FM(){var A=typeof IS_REACT_ACT_ENVIRONMENT<"u"?IS_REACT_ACT_ENVIRONMENT:void 0;return A||p.actQueue===null||console.error("The current testing environment is not configured to support act(...)"),A}function mI(A){if((uB&pQ)!==xQ&&DB!==0)return DB&-DB;var Q=p.T;return Q!==null?(Q._updatedFibers||(Q._updatedFibers=new Set),Q._updatedFibers.add(A),_4()):tX()}function wM(){if(qI===0)if((DB&536870912)===0||LB){var A=x8;x8<<=1,(x8&3932160)===0&&(x8=262144),qI=A}else qI=536870912;return A=fI.current,A!==null&&(A.flags|=32),qI}function CQ(A,Q,E){if(tD&&console.error("useInsertionEffect must not schedule updates."),IN&&(kw=!0),A===mB&&(yB===Vg||yB===Pg)||A.cancelPendingCommit!==null)YD(A,0),qC(A,DB,qI,!1);if(f(A,E),(uB&pQ)!==xQ&&A===mB){if(CE)switch(Q.tag){case 0:case 11:case 15:A=wB&&s(wB)||"Unknown",h7.has(A)||(h7.add(A),Q=s(Q)||"Unknown",console.error("Cannot update a component (`%s`) while rendering a different component (`%s`). To locate the bad setState() call inside `%s`, follow the stack trace as described in https://react.dev/link/setstate-in-render",Q,A,A));break;case 1:m7||(console.error("Cannot update during an existing state transition (such as within `render`). Render methods should be a pure function of props and state."),m7=!0)}}else EE&&bA(A,Q,E),VX(Q),A===mB&&((uB&pQ)===xQ&&(fC|=E),rB===mC&&qC(A,DB,qI,!1)),s0(A)}function GM(A,Q,E){if((uB&(pQ|g0))!==xQ)throw Error("Should not already be working.");if(DB!==0&&wB!==null){var D=wB,w=vQ();switch(yU){case TF:case Vg:var G=MF;jB&&((D=D._debugTask)?D.run(console.timeStamp.bind(console,"Suspended",G,w,"Components \u269B",void 0,"primary-light")):console.timeStamp("Suspended",G,w,"Components \u269B",void 0,"primary-light"));break;case Pg:G=MF,jB&&((D=D._debugTask)?D.run(console.timeStamp.bind(console,"Action",G,w,"Components \u269B",void 0,"primary-light")):console.timeStamp("Action",G,w,"Components \u269B",void 0,"primary-light"));break;default:jB&&(D=w-MF,3>D||console.timeStamp("Blocked",MF,w,"Components \u269B",void 0,5>D?"primary-light":10>D?"primary":100>D?"primary-dark":"error"))}}G=(E=!E&&(Q&127)===0&&(Q&A.expiredLanes)===0||_A(A,Q))?zX(A,Q):iG(A,Q,!0);var J=E;do{if(G===nE){rD&&!E&&qC(A,Q,0,!1),Q=yB,MF=RQ(),yU=Q;break}else{if(D=vQ(),w=A.current.alternate,J&&!kX(w)){bB(Q),w=DI,G=D,!jB||G<=w||(NQ?NQ.run(console.timeStamp.bind(console,"Teared Render",w,G,HB,"Scheduler \u269B","error")):console.timeStamp("Teared Render",w,G,HB,"Scheduler \u269B","error")),Ug(Q,D),G=iG(A,Q,!1),J=!1;continue}if(G===_g){if(J=Q,A.errorRecoveryDisabledLanes&J)var L=0;else L=A.pendingLanes&-536870913,L=L!==0?L:L&536870912?536870912:0;if(L!==0){bB(Q),kE(DI,D,Q,NQ),Ug(Q,D),Q=L;A:{D=A,G=J,J=_F;var q=CI&&D.current.memoizedState.isDehydrated;if(q&&(YD(D,L).flags|=256),L=iG(D,L,!1),L!==_g){if(o6&&!q){D.errorRecoveryDisabledLanes|=G,fC|=G,G=mC;break A}D=uI,uI=J,D!==null&&(uI===null?uI=D:uI.push.apply(uI,D))}G=L}if(J=!1,G!==_g)continue;else D=vQ()}}if(G===yF){bB(Q),kE(DI,D,Q,NQ),Ug(Q,D),YD(A,0),qC(A,Q,0,!0);break}A:{switch(E=A,G){case nE:case yF:throw Error("Root did not complete. This is a bug in React.");case mC:if((Q&4194048)!==Q)break;case Kw:bB(Q),vI(DI,D,Q,NQ),Ug(Q,D),w=Q,(w&127)!==0?r8=D:(w&4194048)!==0&&(s8=D),qC(E,Q,qI,!hC);break A;case _g:uI=null;break;case uw:case q7:break;default:throw Error("Unknown root exit status.")}if(p.actQueue!==null)dG(E,w,Q,uI,PF,Yw,qI,fC,mg,G,null,null,DI,D);else{if((Q&62914560)===Q&&(J=Zw+O7-vQ(),10<J)){if(qC(E,Q,qI,!hC),IA(E,0,!0)!==0)break A;$0=Q,E.timeoutHandle=oX(NM.bind(null,E,w,uI,PF,Yw,Q,qI,fC,mg,hC,G,"Throttled",DI,D),J);break A}NM(E,w,uI,PF,Yw,Q,qI,fC,mg,hC,G,null,DI,D)}}}break}while(1);s0(A)}function NM(A,Q,E,D,w,G,J,L,q,_,x,i,t,mA){A.timeoutHandle=Rg;var eA=Q.subtreeFlags,vB=null;if(eA&8192||(eA&16785408)===16785408){if(vB=Iq(),QM(Q,G,vB),eA=(G&62914560)===G?Zw-vQ():(G&4194048)===G?z7-vQ():0,eA=Eq(vB,eA),eA!==null){$0=G,A.cancelPendingCommit=eA(dG.bind(null,A,Q,G,E,D,w,J,L,q,x,vB,Cq(vB,A.containerInfo),t,mA)),qC(A,G,J,!_);return}}dG(A,Q,G,E,D,w,J,L,q,x,vB,i,t,mA)}function kX(A){for(var Q=A;;){var E=Q.tag;if((E===0||E===11||E===15)&&Q.flags&16384&&(E=Q.updateQueue,E!==null&&(E=E.stores,E!==null)))for(var D=0;D<E.length;D++){var w=E[D],G=w.getSnapshot;w=w.value;try{if(!JI(G(),w))return!1}catch(J){return!1}}if(E=Q.child,Q.subtreeFlags&16384&&E!==null)E.return=Q,Q=E;else{if(Q===A)break;for(;Q.sibling===null;){if(Q.return===null||Q.return===A)return!0;Q=Q.return}Q.sibling.return=Q.return,Q=Q.sibling}}return!0}function qC(A,Q,E,D){Q&=~n6,Q&=~fC,A.suspendedLanes|=Q,A.pingedLanes&=~Q,D&&(A.warmLanes|=Q),D=A.expirationTimes;for(var w=Q;0<w;){var G=31-HI(w),J=1<<G;D[G]=-1,w&=~J}E!==0&&DA(A,E,Q)}function v8(){return(uB&(pQ|g0))===xQ?(MD(0,!1),!1):!0}function xG(){return(uB&(pQ|g0))!==xQ}function pG(){if(wB!==null){if(yB===XI)var A=wB.return;else A=wB,Fg(),a4(A),fD=null,XF=0,A=wB;for(;A!==null;)PJ(A.alternate,A),A=A.return;wB=null}}function Ug(A,Q){(A&127)!==0&&(Xg=Q),(A&4194048)!==0&&(pE=Q)}function YD(A,Q){jB&&(console.timeStamp("Blocking Track",0.003,0.003,"Blocking","Scheduler \u269B","primary-light"),console.timeStamp("Transition Track",0.003,0.003,"Transition","Scheduler \u269B","primary-light"),console.timeStamp("Suspense Track",0.003,0.003,"Suspense","Scheduler \u269B","primary-light"),console.timeStamp("Idle Track",0.003,0.003,"Idle","Scheduler \u269B","primary-light"));var E=DI;if(DI=RQ(),DB!==0&&0<E){if(bB(DB),rB===uw||rB===mC)vI(E,DI,Q,NQ);else{var D=DI,w=NQ;if(jB&&!(D<=E)){var G=(Q&738197653)===Q?"tertiary-dark":"primary-dark",J=(Q&536870912)===Q?"Prewarm":(Q&201326741)===Q?"Interrupted Hydration":"Interrupted Render";w?w.run(console.timeStamp.bind(console,J,E,D,HB,"Scheduler \u269B",G)):console.timeStamp(J,E,D,HB,"Scheduler \u269B",G)}}Ug(DB,DI)}if(E=NQ,NQ=null,(Q&127)!==0){NQ=NF,w=0<=DE&&DE<Xg?Xg:DE,D=0<=qg&&qg<Xg?Xg:qg,G=0<=D?D:0<=w?w:DI,0<=r8&&(bB(2),GC(r8,G,Q,E)),E=w;var L=D,q=HF,_=0<VD,x=vC===1,i=vC===2;if(w=DI,D=NF,G=Z6,J=X6,jB){if(HB="Blocking",0<E?E>w&&(E=w):E=w,0<L?L>E&&(L=E):L=E,q!==null&&E>L){var t=_?"secondary-light":"warning";D?D.run(console.timeStamp.bind(console,_?"Consecutive":"Event: "+q,L,E,HB,"Scheduler \u269B",t)):console.timeStamp(_?"Consecutive":"Event: "+q,L,E,HB,"Scheduler \u269B",t)}w>E&&(L=x?"error":(Q&738197653)===Q?"tertiary-light":"primary-light",x=i?"Promise Resolved":x?"Cascading Update":5<w-E?"Update Blocked":"Update",i=[],J!=null&&i.push(["Component name",J]),G!=null&&i.push(["Method name",G]),E={start:E,end:w,detail:{devtools:{properties:i,track:HB,trackGroup:"Scheduler \u269B",color:L}}},D?D.run(performance.measure.bind(performance,x,E)):performance.measure(x,E))}DE=-1.1,vC=0,X6=Z6=null,r8=-1.1,VD=qg,qg=-1.1,Xg=RQ()}if((Q&4194048)!==0&&(NQ=JF,w=0<=iE&&iE<pE?pE:iE,E=0<=B0&&B0<pE?pE:B0,D=0<=_C&&_C<pE?pE:_C,G=0<=D?D:0<=E?E:DI,0<=s8&&(bB(256),GC(s8,G,Q,NQ)),i=D,L=kg,q=0<VC,_=q6===2,G=DI,D=JF,J=SU,x=$U,jB&&(HB="Transition",0<E?E>G&&(E=G):E=G,0<w?w>E&&(w=E):w=E,0<i?i>w&&(i=w):i=w,w>i&&L!==null&&(t=q?"secondary-light":"warning",D?D.run(console.timeStamp.bind(console,q?"Consecutive":"Event: "+L,i,w,HB,"Scheduler \u269B",t)):console.timeStamp(q?"Consecutive":"Event: "+L,i,w,HB,"Scheduler \u269B",t)),E>w&&(D?D.run(console.timeStamp.bind(console,"Action",w,E,HB,"Scheduler \u269B","primary-dark")):console.timeStamp("Action",w,E,HB,"Scheduler \u269B","primary-dark")),G>E&&(w=_?"Promise Resolved":5<G-E?"Update Blocked":"Update",i=[],x!=null&&i.push(["Component name",x]),J!=null&&i.push(["Method name",J]),E={start:E,end:G,detail:{devtools:{properties:i,track:HB,trackGroup:"Scheduler \u269B",color:"primary-light"}}},D?D.run(performance.measure.bind(performance,w,E)):performance.measure(w,E))),B0=iE=-1.1,q6=0,s8=-1.1,VC=_C,_C=-1.1,pE=RQ()),E=A.timeoutHandle,E!==Rg&&(A.timeoutHandle=Rg,nX(E)),E=A.cancelPendingCommit,E!==null&&(A.cancelPendingCommit=null,E()),$0=0,pG(),mB=A,wB=E=yE(A.current,null),DB=Q,yB=XI,xI=null,hC=!1,rD=_A(A,Q),o6=!1,rB=nE,mg=qI=n6=fC=bC=0,uI=_F=null,Yw=!1,(Q&8)!==0&&(Q|=Q&32),D=A.entangledLanes,D!==0)for(A=A.entanglements,D&=Q;0<D;)w=31-HI(D),G=1<<w,Q|=A[w],D&=~G;return wE=Q,C8(),A=uU(),1000<A-LU&&(p.recentlyCreatedOwnerStacks=0,LU=A),z0.discardPendingWarnings(),E}function HM(A,Q){sA=null,p.H=SF,p.getCurrentStack=null,CE=!1,fE=null,Q===bD||Q===Iw?(Q=v9(),yB=TF):Q===v6?(Q=v9(),yB=k7):yB=Q===i6?a6:Q!==null&&typeof Q==="object"&&typeof Q.then==="function"?vF:Rw,xI=Q;var E=wB;E===null?(rB=yF,Z8(A,AA(Q,A.current))):E.mode&2&&y4(E)}function JM(){var A=fI.current;return A===null?!0:(DB&4194048)===DB?I0===null?!0:!1:(DB&62914560)===DB||(DB&536870912)!==0?A===I0:!1}function MM(){var A=p.H;return p.H=SF,A===null?SF:A}function UM(){var A=p.A;return p.A=Pk,A}function _8(A){NQ===null&&(NQ=A._debugTask==null?null:A._debugTask)}function V8(){rB=mC,hC||(DB&4194048)!==DB&&fI.current!==null||(rD=!0),(bC&134217727)===0&&(fC&134217727)===0||mB===null||qC(mB,DB,qI,!1)}function iG(A,Q,E){var D=uB;uB|=pQ;var w=MM(),G=UM();if(mB!==A||DB!==Q){if(EE){var J=A.memoizedUpdaters;0<J.size&&(QF(A,DB),J.clear()),hB(A,Q)}PF=null,YD(A,Q)}Q=!1,J=rB;A:do try{if(yB!==XI&&wB!==null){var L=wB,q=xI;switch(yB){case a6:pG(),J=Kw;break A;case TF:case Vg:case Pg:case vF:fI.current===null&&(Q=!0);var _=yB;if(yB=XI,xI=null,ZD(A,L,q,_),E&&rD){J=nE;break A}break;default:_=yB,yB=XI,xI=null,ZD(A,L,q,_)}}LM(),J=rB;break}catch(x){HM(A,x)}while(1);return Q&&A.shellSuspendCounter++,Fg(),uB=D,p.H=w,p.A=G,wB===null&&(mB=null,DB=0,C8()),J}function LM(){for(;wB!==null;)uM(wB)}function zX(A,Q){var E=uB;uB|=pQ;var D=MM(),w=UM();if(mB!==A||DB!==Q){if(EE){var G=A.memoizedUpdaters;0<G.size&&(QF(A,DB),G.clear()),hB(A,Q)}PF=null,VF=vQ()+r6,YD(A,Q)}else rD=_A(A,Q);A:do try{if(yB!==XI&&wB!==null)B:switch(Q=wB,G=xI,yB){case Rw:yB=XI,xI=null,ZD(A,Q,G,Rw);break;case Vg:case Pg:if(y9(G)){yB=XI,xI=null,KM(Q);break}Q=function(){yB!==Vg&&yB!==Pg||mB!==A||(yB=Ww),s0(A)},G.then(Q,Q);break A;case TF:yB=Ww;break A;case k7:yB=l6;break A;case Ww:y9(G)?(yB=XI,xI=null,KM(Q)):(yB=XI,xI=null,ZD(A,Q,G,Ww));break;case l6:var J=null;switch(wB.tag){case 26:J=wB.memoizedState;case 5:case 27:var L=wB,q=L.type,_=L.pendingProps;if(J?GU(J):cM(L.stateNode,q,_)){yB=XI,xI=null;var x=L.sibling;if(x!==null)wB=x;else{var i=L.return;i!==null?(wB=i,P8(i)):wB=null}break B}break;default:console.error("Unexpected type of fiber triggered a suspensey commit. This is a bug in React.")}yB=XI,xI=null,ZD(A,Q,G,l6);break;case vF:yB=XI,xI=null,ZD(A,Q,G,vF);break;case a6:pG(),rB=Kw;break A;default:throw Error("Unexpected SuspendedReason. This is a bug in React.")}p.actQueue!==null?LM():OX();break}catch(t){HM(A,t)}while(1);if(Fg(),p.H=D,p.A=w,uB=E,wB!==null)return nE;return mB=null,DB=0,C8(),rB}function OX(){for(;wB!==null&&!Kk();)uM(wB)}function uM(A){var Q=A.alternate;(A.mode&2)!==aA?($4(A),Q=TA(A,zG,Q,A,wE),y4(A)):Q=TA(A,zG,Q,A,wE),A.memoizedProps=A.pendingProps,Q===null?P8(A):wB=Q}function KM(A){var Q=TA(A,SX,A);A.memoizedProps=A.pendingProps,Q===null?P8(A):wB=Q}function SX(A){var Q=A.alternate,E=(A.mode&2)!==aA;switch(E&&$4(A),A.tag){case 15:case 0:Q=kJ(Q,A,A.pendingProps,A.type,void 0,DB);break;case 11:Q=kJ(Q,A,A.pendingProps,A.type.render,A.ref,DB);break;case 5:a4(A);default:PJ(Q,A),A=wB=_M(A,wE),Q=zG(Q,A,wE)}return E&&y4(A),Q}function ZD(A,Q,E,D){Fg(),a4(Q),fD=null,XF=0;var w=Q.return;try{if(HX(A,w,Q,E,DB)){rB=yF,Z8(A,AA(E,A.current)),wB=null;return}}catch(G){if(w!==null)throw wB=w,G;rB=yF,Z8(A,AA(E,A.current)),wB=null;return}if(Q.flags&32768){if(LB||D===Rw)A=!0;else if(rD||(DB&536870912)!==0)A=!1;else if(hC=A=!0,D===Vg||D===Pg||D===TF||D===vF)D=fI.current,D!==null&&D.tag===13&&(D.flags|=16384);RM(Q,A)}else P8(Q)}function P8(A){var Q=A;do{if((Q.flags&32768)!==0){RM(Q,hC);return}var E=Q.alternate;if(A=Q.return,$4(Q),E=TA(Q,UX,E,Q,wE),(Q.mode&2)!==aA&&W9(Q),E!==null){wB=E;return}if(Q=Q.sibling,Q!==null){wB=Q;return}wB=Q=A}while(Q!==null);rB===nE&&(rB=q7)}function RM(A,Q){do{var E=LX(A.alternate,A);if(E!==null){E.flags&=32767,wB=E;return}if((A.mode&2)!==aA){W9(A),E=A.actualDuration;for(var D=A.child;D!==null;)E+=D.actualDuration,D=D.sibling;A.actualDuration=E}if(E=A.return,E!==null&&(E.flags|=32768,E.subtreeFlags=0,E.deletions=null),!Q&&(A=A.sibling,A!==null)){wB=A;return}wB=A=E}while(A!==null);rB=Kw,wB=null}function dG(A,Q,E,D,w,G,J,L,q,_,x,i,t,mA){A.cancelPendingCommit=null;do XD();while(qQ!==xC);if(z0.flushLegacyContextWarning(),z0.flushPendingUnsafeLifecycleWarnings(),(uB&(pQ|g0))!==xQ)throw Error("Should not already be working.");if(bB(E),_===_g?kE(t,mA,E,NQ):D!==null?ND(t,mA,E,D,Q!==null&&Q.alternate!==null&&Q.alternate.memoizedState.isDehydrated&&(Q.flags&256)!==0,NQ):L0(t,mA,E,NQ),Q!==null){if(E===0&&console.error("finishedLanes should not be empty during a commit. This is a bug in React."),Q===A.current)throw Error("Cannot commit the same tree as before. This error is likely caused by a bug in React. Please file an issue.");if(G=Q.lanes|Q.childLanes,G|=V6,NA(A,E,G,J,L,q),A===mB&&(wB=mB=null,DB=0),sD=Q,pC=A,$0=E,e6=G,BN=w,_7=D,AN=mA,V7=i,y0=Xw,P7=null,Q.actualDuration!==0||(Q.subtreeFlags&10256)!==0||(Q.flags&10256)!==0?(A.callbackNode=null,A.callbackPriority=0,_X(DF,function(){return C6(),y0===Xw&&(y0=t6),qM(),null})):(A.callbackNode=null,A.callbackPriority=0),xE=null,TC=RQ(),i!==null&&Bg(mA,TC,i,NQ),D=(Q.flags&13878)!==0,(Q.subtreeFlags&13878)!==0||D){D=p.T,p.T=null,w=VE(),fQ(2),J=uB,uB|=g0;try{ZX(A,Q,E)}finally{uB=J,fQ(w),p.T=D}}qQ=$7,WM(),YM(),ZM()}}function WM(){if(qQ===$7){qQ=xC;var A=pC,Q=sD,E=$0,D=(Q.flags&13878)!==0;if((Q.subtreeFlags&13878)!==0||D){D=p.T,p.T=null;var w=VE();fQ(2);var G=uB;uB|=g0;try{aD=E,oD=A,WI(),rJ(Q,A),oD=aD=null,lX(A.containerInfo)}finally{uB=G,fQ(w),p.T=D}}A.current=Q,qQ=y7}}function YM(){if(qQ===y7){qQ=xC;var A=P7;if(A!==null){TC=RQ();var Q=jE,E=TC;!jB||E<=Q||(PD?PD.run(console.timeStamp.bind(console,A,Q,E,HB,"Scheduler \u269B","secondary-light")):console.timeStamp(A,Q,E,HB,"Scheduler \u269B","secondary-light"))}A=pC,Q=sD,E=$0;var D=(Q.flags&8772)!==0;if((Q.subtreeFlags&8772)!==0||D){D=p.T,p.T=null;var w=VE();fQ(2);var G=uB;uB|=g0;try{aD=E,oD=A,WI(),lJ(A,Q.alternate,Q),oD=aD=null}finally{uB=G,fQ(w),p.T=D}}A=AN,Q=V7,jE=RQ(),A=Q===null?A:TC,Q=jE,E=y0===s6,D=NQ,xE!==null?Qg(A,Q,xE,!1,D):!jB||Q<=A||(D?D.run(console.timeStamp.bind(console,E?"Commit Interrupted View Transition":"Commit",A,Q,HB,"Scheduler \u269B",E?"error":"secondary-dark")):console.timeStamp(E?"Commit Interrupted View Transition":"Commit",A,Q,HB,"Scheduler \u269B",E?"error":"secondary-dark")),qQ=T7}}function ZM(){if(qQ===v7||qQ===T7){if(qQ===v7){var A=jE;jE=RQ();var Q=jE,E=y0===s6;!jB||Q<=A||(PD?PD.run(console.timeStamp.bind(console,E?"Interrupted View Transition":"Starting Animation",A,Q,HB,"Scheduler \u269B",E?"error":"secondary-light")):console.timeStamp(E?"Interrupted View Transition":"Starting Animation",A,Q,HB,"Scheduler \u269B",E?" error":"secondary-light")),y0!==s6&&(y0=S7)}qQ=xC,Rk(),A=pC;var D=sD;Q=$0,E=_7;var w=D.actualDuration!==0||(D.subtreeFlags&10256)!==0||(D.flags&10256)!==0;w?qQ=qw:(qQ=xC,sD=pC=null,XM(A,A.pendingLanes),hg=0,hF=null);var G=A.pendingLanes;if(G===0&&(jC=null),w||SM(A),G=TB(Q),D=D.stateNode,gI&&typeof gI.onCommitFiberRoot==="function")try{var J=(D.current.flags&128)===128;switch(G){case 2:var L=J6;break;case 8:L=MU;break;case 32:L=DF;break;case 268435456:L=UU;break;default:L=DF}gI.onCommitFiberRoot($D,D,L,J)}catch(i){IE||(IE=!0,console.error("React instrumentation encountered an error: %o",i))}if(EE&&A.memoizedUpdaters.clear(),qX(),E!==null){J=p.T,L=VE(),fQ(2),p.T=null;try{var q=A.onRecoverableError;for(D=0;D<E.length;D++){var _=E[D],x=$X(_.stack);TA(_.source,q,_.value,x)}}finally{p.T=J,fQ(L)}}($0&3)!==0&&XD(),s0(A),G=A.pendingLanes,(Q&261930)!==0&&(G&42)!==0?(e8=!0,A===QN?mF++:(mF=0,QN=A)):mF=0,w||Ug(Q,jE),CI&&Qk(),MD(0,!1)}}function $X(A){return A={componentStack:A},Object.defineProperty(A,"digest",{get:function(){console.error('You are accessing "digest" from the errorInfo object passed to onRecoverableError. This property is no longer provided as part of errorInfo but can be accessed as a property of the Error instance itself.')}}),A}function XM(A,Q){(A.pooledCacheLanes&=Q)===0&&(Q=A.pooledCache,Q!=null&&(A.pooledCache=null,UB(Q)))}function XD(){return WM(),YM(),ZM(),qM()}function qM(){if(qQ!==qw)return!1;var A=pC,Q=e6;e6=0;var E=TB($0),D=32>E?32:E;E=p.T;var w=VE();try{fQ(D),p.T=null;var G=BN;BN=null,D=pC;var J=$0;if(qQ=xC,sD=pC=null,$0=0,(uB&(pQ|g0))!==xQ)throw Error("Cannot flush passive effects while already rendering.");bB(J),IN=!0,kw=!1;var L=0;if(xE=null,L=vQ(),y0===S7){var q=jE,_=L;!jB||_<=q||(PD?PD.run(console.timeStamp.bind(console,"Animating",q,_,HB,"Scheduler \u269B","secondary-dark")):console.timeStamp("Animating",q,_,HB,"Scheduler \u269B","secondary-dark"))}else{q=jE,_=L;var x=y0===t6;!jB||_<=q||(NQ?NQ.run(console.timeStamp.bind(console,x?"Waiting for Paint":"Waiting",q,_,HB,"Scheduler \u269B","secondary-light")):console.timeStamp(x?"Waiting for Paint":"Waiting",q,_,HB,"Scheduler \u269B","secondary-light"))}q=uB,uB|=g0;var i=D.current;WI(),EM(i);var t=D.current;i=AN,WI(),AM(D,t,J,G,i),SM(D),uB=q;var mA=vQ();if(t=L,i=NQ,xE!==null?Qg(t,mA,xE,!0,i):!jB||mA<=t||(i?i.run(console.timeStamp.bind(console,"Remaining Effects",t,mA,HB,"Scheduler \u269B","secondary-dark")):console.timeStamp("Remaining Effects",t,mA,HB,"Scheduler \u269B","secondary-dark")),Ug(J,mA),MD(0,!1),kw?D===hF?hg++:(hg=0,hF=D):hg=0,kw=IN=!1,gI&&typeof gI.onPostCommitFiberRoot==="function")try{gI.onPostCommitFiberRoot($D,D)}catch(vB){IE||(IE=!0,console.error("React instrumentation encountered an error: %o",vB))}var eA=D.current.stateNode;return eA.effectDuration=0,eA.passiveEffectDuration=0,!0}finally{fQ(w),p.T=E,XM(A,Q)}}function kM(A,Q,E){Q=AA(E,Q),Y9(Q),Q=UG(A.stateNode,Q,2),A=WC(A,Q,2),A!==null&&(f(A,2),s0(A))}function qB(A,Q,E){if(tD=!1,A.tag===3)kM(A,A,E);else{for(;Q!==null;){if(Q.tag===3){kM(Q,A,E);return}if(Q.tag===1){var D=Q.stateNode;if(typeof Q.type.getDerivedStateFromError==="function"||typeof D.componentDidCatch==="function"&&(jC===null||!jC.has(D))){A=AA(E,A),Y9(A),E=LG(2),D=WC(Q,E,2),D!==null&&(uG(E,D,Q,A),f(D,2),s0(D));return}}Q=Q.return}console.error(`Internal React error: Attempted to capture a commit phase error inside a detached tree. This indicates a bug in React. Potential causes include deleting the same fiber more than once, committing an already-finished tree, or an inconsistent return pointer.
145
+
146
+ Error message:
147
+
148
+ %s`,E)}}function cG(A,Q,E){var D=A.pingCache;if(D===null){D=A.pingCache=new mk;var w=new Set;D.set(Q,w)}else w=D.get(Q),w===void 0&&(w=new Set,D.set(Q,w));w.has(E)||(o6=!0,w.add(E),D=yX.bind(null,A,Q,E),EE&&QF(A,E),Q.then(D,D))}function yX(A,Q,E){var D=A.pingCache;D!==null&&D.delete(Q),A.pingedLanes|=A.suspendedLanes&E,A.warmLanes&=~E,(E&127)!==0?0>DE&&(Xg=DE=RQ(),NF=n8("Promise Resolved"),vC=2):(E&4194048)!==0&&0>B0&&(pE=B0=RQ(),JF=n8("Promise Resolved"),q6=2),FM()&&p.actQueue===null&&console.error(`A suspended resource finished loading inside a test, but the event was not wrapped in act(...).
149
+
150
+ When testing, code that resolves suspended data should be wrapped into act(...):
151
+
152
+ act(() => {
153
+ /* finish loading suspended data */
154
+ });
155
+ /* assert on the output */
156
+
157
+ This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`),mB===A&&(DB&E)===E&&(rB===mC||rB===uw&&(DB&62914560)===DB&&vQ()-Zw<O7?(uB&pQ)===xQ&&YD(A,0):n6|=E,mg===DB&&(mg=0)),s0(A)}function zM(A,Q){Q===0&&(Q=rA()),A=QI(A,Q),A!==null&&(f(A,Q),s0(A))}function TX(A){var Q=A.memoizedState,E=0;Q!==null&&(E=Q.retryLane),zM(A,E)}function vX(A,Q){var E=0;switch(A.tag){case 31:case 13:var{stateNode:D,memoizedState:w}=A;w!==null&&(E=w.retryLane);break;case 19:D=A.stateNode;break;case 22:D=A.stateNode._retryCache;break;default:throw Error("Pinged unknown suspense boundary type. This is probably a bug in React.")}D!==null&&D.delete(Q),zM(A,E)}function lG(A,Q,E){if((Q.subtreeFlags&67117056)!==0)for(Q=Q.child;Q!==null;){var D=A,w=Q,G=w.type===h8;G=E||G,w.tag!==22?w.flags&67108864?G&&TA(w,OM,D,w):lG(D,w,G):w.memoizedState===null&&(G&&w.flags&8192?TA(w,OM,D,w):w.subtreeFlags&67108864&&TA(w,lG,D,w,G)),Q=Q.sibling}}function OM(A,Q){CA(!0);try{tJ(Q),CM(Q),eJ(A,Q.alternate,Q,!1),BM(A,Q,0,null,!1,0)}finally{CA(!1)}}function SM(A){var Q=!0;A.current.mode&24||(Q=!1),lG(A,A.current,Q)}function $M(A){if((uB&pQ)===xQ){var Q=A.tag;if(Q===3||Q===1||Q===0||Q===11||Q===14||Q===15){if(Q=s(A)||"ReactComponent",zw!==null){if(zw.has(Q))return;zw.add(Q)}else zw=new Set([Q]);TA(A,function(){console.error("Can't perform a React state update on a component that hasn't mounted yet. This indicates that you have a side-effect in your render function that asynchronously tries to update the component. Move this work to useEffect instead.")})}}}function QF(A,Q){EE&&A.memoizedUpdaters.forEach(function(E){bA(A,E,Q)})}function _X(A,Q){var E=p.actQueue;return E!==null?(E.push(Q),fk):i8(A,Q)}function VX(A){FM()&&p.actQueue===null&&TA(A,function(){console.error(`An update to %s inside a test was not wrapped in act(...).
158
+
159
+ When testing, code that causes React state updates should be wrapped into act(...):
160
+
161
+ act(() => {
162
+ /* fire events that update state */
163
+ });
164
+ /* assert on the output */
165
+
166
+ This ensures that you're testing the behavior the user would see in the browser. Learn more at https://react.dev/link/wrap-tests-with-act`,s(A))})}function Lg(A){if(D0===null)return A;var Q=D0(A);return Q===void 0?A:Q.current}function aG(A){if(D0===null)return A;var Q=D0(A);return Q===void 0?A!==null&&A!==void 0&&typeof A.render==="function"&&(Q=Lg(A.render),A.render!==Q)?(Q={$$typeof:IF,render:Q},A.displayName!==void 0&&(Q.displayName=A.displayName),Q):A:Q.current}function yM(A,Q){if(D0===null)return!1;var E=A.elementType;Q=Q.type;var D=!1,w=typeof Q==="object"&&Q!==null?Q.$$typeof:null;switch(A.tag){case 1:typeof Q==="function"&&(D=!0);break;case 0:typeof Q==="function"?D=!0:w===hI&&(D=!0);break;case 11:w===IF?D=!0:w===hI&&(D=!0);break;case 14:case 15:w===b8?D=!0:w===hI&&(D=!0);break;default:return!1}return D&&(A=D0(E),A!==void 0&&A===D0(Q))?!0:!1}function TM(A){D0!==null&&typeof WeakSet==="function"&&(eD===null&&(eD=new WeakSet),eD.add(A))}function vM(A,Q,E){do{var D=A,w=D.alternate,G=D.child,J=D.sibling,L=D.tag;D=D.type;var q=null;switch(L){case 0:case 15:case 1:q=D;break;case 11:q=D.render}if(D0===null)throw Error("Expected resolveFamily to be set during hot reload.");var _=!1;if(D=!1,q!==null&&(q=D0(q),q!==void 0&&(E.has(q)?D=!0:Q.has(q)&&(L===1?D=!0:_=!0))),eD!==null&&(eD.has(A)||w!==null&&eD.has(w))&&(D=!0),D&&(A._debugNeedsRemount=!0),D||_)w=QI(A,2),w!==null&&CQ(w,A,2);if(G===null||D||vM(G,Q,E),J===null)break;A=J}while(1)}function PX(A,Q,E,D){this.tag=A,this.key=E,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=Q,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=D,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null,this.actualDuration=-0,this.actualStartTime=-1.1,this.treeBaseDuration=this.selfBaseDuration=-0,this._debugTask=this._debugStack=this._debugOwner=this._debugInfo=null,this._debugNeedsRemount=!1,this._debugHookTypes=null,b7||typeof Object.preventExtensions!=="function"||Object.preventExtensions(this)}function oG(A){return A=A.prototype,!(!A||!A.isReactComponent)}function yE(A,Q){var E=A.alternate;switch(E===null?(E=U(A.tag,Q,A.key,A.mode),E.elementType=A.elementType,E.type=A.type,E.stateNode=A.stateNode,E._debugOwner=A._debugOwner,E._debugStack=A._debugStack,E._debugTask=A._debugTask,E._debugHookTypes=A._debugHookTypes,E.alternate=A,A.alternate=E):(E.pendingProps=Q,E.type=A.type,E.flags=0,E.subtreeFlags=0,E.deletions=null,E.actualDuration=-0,E.actualStartTime=-1.1),E.flags=A.flags&65011712,E.childLanes=A.childLanes,E.lanes=A.lanes,E.child=A.child,E.memoizedProps=A.memoizedProps,E.memoizedState=A.memoizedState,E.updateQueue=A.updateQueue,Q=A.dependencies,E.dependencies=Q===null?null:{lanes:Q.lanes,firstContext:Q.firstContext,_debugThenableState:Q._debugThenableState},E.sibling=A.sibling,E.index=A.index,E.ref=A.ref,E.refCleanup=A.refCleanup,E.selfBaseDuration=A.selfBaseDuration,E.treeBaseDuration=A.treeBaseDuration,E._debugInfo=A._debugInfo,E._debugNeedsRemount=A._debugNeedsRemount,E.tag){case 0:case 15:E.type=Lg(A.type);break;case 1:E.type=Lg(A.type);break;case 11:E.type=aG(A.type)}return E}function _M(A,Q){A.flags&=65011714;var E=A.alternate;return E===null?(A.childLanes=0,A.lanes=Q,A.child=null,A.subtreeFlags=0,A.memoizedProps=null,A.memoizedState=null,A.updateQueue=null,A.dependencies=null,A.stateNode=null,A.selfBaseDuration=0,A.treeBaseDuration=0):(A.childLanes=E.childLanes,A.lanes=E.lanes,A.child=E.child,A.subtreeFlags=0,A.deletions=null,A.memoizedProps=E.memoizedProps,A.memoizedState=E.memoizedState,A.updateQueue=E.updateQueue,A.type=E.type,Q=E.dependencies,A.dependencies=Q===null?null:{lanes:Q.lanes,firstContext:Q.firstContext,_debugThenableState:Q._debugThenableState},A.selfBaseDuration=E.selfBaseDuration,A.treeBaseDuration=E.treeBaseDuration),A}function nG(A,Q,E,D,w,G){var J=0,L=A;if(typeof A==="function")oG(A)&&(J=1),L=Lg(L);else if(typeof A==="string")k0&&TQ?(J=rI(),J=EU(A,E,J)?26:JU(A)?27:5):k0?(J=rI(),J=EU(A,E,J)?26:5):J=TQ?JU(A)?27:5:5;else A:switch(A){case I6:return Q=U(31,E,Q,w),Q.elementType=I6,Q.lanes=G,Q;case qD:return ug(E.children,w,G,Q);case h8:J=8,w|=24;break;case eG:return A=E,D=w,typeof A.id!=="string"&&console.error('Profiler must specify an "id" of type `string` as a prop. Received the type `%s` instead.',typeof A.id),Q=U(12,A,Q,D|2),Q.elementType=eG,Q.lanes=G,Q.stateNode={effectDuration:0,passiveEffectDuration:0},Q;case B6:return Q=U(13,E,Q,w),Q.elementType=B6,Q.lanes=G,Q;case Q6:return Q=U(19,E,Q,w),Q.elementType=Q6,Q.lanes=G,Q;default:if(typeof A==="object"&&A!==null)switch(A.$$typeof){case vE:J=10;break A;case A6:J=9;break A;case IF:J=11,L=aG(L);break A;case b8:J=14;break A;case hI:J=16,L=null;break A}if(L="",A===void 0||typeof A==="object"&&A!==null&&Object.keys(A).length===0)L+=" You likely forgot to export your component from the file it's defined in, or you might have mixed up default and named imports.";A===null?E="null":oQ(A)?E="array":A!==void 0&&A.$$typeof===TE?(E="<"+(GA(A.type)||"Unknown")+" />",L=" Did you accidentally export a JSX literal instead of a component?"):E=typeof A,J=D?typeof D.tag==="number"?s(D):typeof D.name==="string"?D.name:null:null,J&&(L+=`
167
+
168
+ Check the render method of \``+J+"`."),J=29,E=Error("Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: "+(E+"."+L)),L=null}return Q=U(J,E,Q,w),Q.elementType=A,Q.type=L,Q.lanes=G,Q._debugOwner=D,Q}function m8(A,Q,E){return Q=nG(A.type,A.key,A.props,A._owner,Q,E),Q._debugOwner=A._owner,Q._debugStack=A._debugStack,Q._debugTask=A._debugTask,Q}function ug(A,Q,E,D){return A=U(7,A,D,Q),A.lanes=E,A}function rG(A,Q,E){return A=U(6,A,null,Q),A.lanes=E,A}function VM(A){var Q=U(18,null,null,aA);return Q.stateNode=A,Q}function sG(A,Q,E){return Q=U(4,A.children!==null?A.children:[],A.key,Q),Q.lanes=E,Q.stateNode={containerInfo:A.containerInfo,pendingChildren:null,implementation:A.implementation},Q}function mX(A,Q,E,D,w,G,J,L,q){this.tag=1,this.containerInfo=A,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=Rg,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=kA(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=kA(0),this.hiddenUpdates=kA(null),this.identifierPrefix=D,this.onUncaughtError=w,this.onCaughtError=G,this.onRecoverableError=J,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=q,this.incompleteTransitions=new Map,this.passiveEffectDuration=this.effectDuration=-0,this.memoizedUpdaters=new Set,A=this.pendingUpdatersLaneMap=[];for(Q=0;31>Q;Q++)A.push(new Set);this._debugRootType=E?"hydrateRoot()":"createRoot()"}function PM(A,Q,E,D,w,G,J,L,q,_,x,i){return A=new mX(A,Q,E,J,q,_,x,i,L),Q=1,G===!0&&(Q|=24),G=U(3,null,null,Q|2),A.current=G,G.stateNode=A,Q=zA(),fA(Q),A.pooledCache=Q,fA(Q),G.memoizedState={element:D,isDehydrated:E,cache:Q},h4(G),A}function mM(A){return""+A}function hM(A){if(!A)return kC;return A=kC,A}function bM(A,Q,E,D){return fM(Q.current,2,A,Q,E,D),2}function fM(A,Q,E,D,w,G){if(gI&&typeof gI.onScheduleFiberRoot==="function")try{gI.onScheduleFiberRoot($D,D,E)}catch(J){IE||(IE=!0,console.error("React instrumentation encountered an error: %o",J))}w=hM(w),D.context===null?D.context=w:D.pendingContext=w,CE&&fE!==null&&!j7&&(j7=!0,console.error(`Render methods should be a pure function of props and state; triggering nested component updates from render is not allowed. If necessary, trigger nested updates in componentDidUpdate.
169
+
170
+ Check the render method of %s.`,s(fE)||"Unknown")),D=RC(Q),D.payload={element:E},G=G===void 0?null:G,G!==null&&(typeof G!=="function"&&console.error("Expected the last optional `callback` argument to be a function. Instead received: %s.",G),D.callback=G),E=WC(A,D,Q),E!==null&&(OB(Q,"root.render()",null),CQ(E,A,Q),d2(E,A,Q))}function jM(A,Q){if(A=A.memoizedState,A!==null&&A.dehydrated!==null){var E=A.retryLane;A.retryLane=E!==0&&E<Q?E:Q}}function tG(A,Q){jM(A,Q),(A=A.alternate)&&jM(A,Q)}function hX(){return fE}var KB={},aQ=Object.assign,bX=Symbol.for("react.element"),TE=Symbol.for("react.transitional.element"),Kg=Symbol.for("react.portal"),qD=Symbol.for("react.fragment"),h8=Symbol.for("react.strict_mode"),eG=Symbol.for("react.profiler"),A6=Symbol.for("react.consumer"),vE=Symbol.for("react.context"),IF=Symbol.for("react.forward_ref"),B6=Symbol.for("react.suspense"),Q6=Symbol.for("react.suspense_list"),b8=Symbol.for("react.memo"),hI=Symbol.for("react.lazy"),I6=Symbol.for("react.activity"),fX=Symbol.for("react.memo_cache_sentinel"),xM=Symbol.iterator,jX=Symbol.for("react.client.reference"),oQ=Array.isArray,p=J5.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,xX=B.rendererVersion,pX=B.rendererPackageName,pM=B.extraDevToolsConfig,kD=B.getPublicInstance,iX=B.getRootHostContext,dX=B.getChildHostContext,cX=B.prepareForCommit,lX=B.resetAfterCommit,aX=B.createInstance;B.cloneMutableInstance;var{appendInitialChild:E6,finalizeInitialChildren:iM,shouldSetTextContent:f8,createTextInstance:dM}=B;B.cloneMutableTextInstance;var{scheduleTimeout:oX,cancelTimeout:nX,noTimeout:Rg,isPrimaryRenderer:_E}=B;B.warnsIfNotActing;var{supportsMutation:EI,supportsPersistence:QE,supportsHydration:CI,getInstanceFromNode:rX}=B;B.beforeActiveInstanceBlur;var sX=B.preparePortalMount;B.prepareScopeUpdate,B.getInstanceFromScope;var{setCurrentUpdatePriority:fQ,getCurrentUpdatePriority:VE,resolveUpdatePriority:tX,trackSchedulerEvent:C6,resolveEventType:EF,resolveEventTimeStamp:CF,shouldAttemptEagerTransition:eX,detachDeletedInstance:Aq}=B;B.requestPostPaintCallback;var{maySuspendCommit:Bq,maySuspendCommitOnUpdate:Qq,maySuspendCommitInSyncRender:g6,preloadInstance:cM,startSuspendingCommit:Iq,suspendInstance:lM}=B;B.suspendOnActiveViewTransition;var{waitForCommitToBeReady:Eq,getSuspendedCommitReason:Cq,NotPendingTransition:zD,HostTransitionContext:Wg,resetFormInstance:gq,bindToConsole:Dq,supportsMicrotasks:Fq,scheduleMicrotask:wq,supportsTestSelectors:OD,findFiberRoot:Gq,getBoundingRect:Nq,getTextContent:Hq,isHiddenSubtree:gF,matchAccessibilityRole:Jq,setFocusIfFocusable:Mq,setupIntersectionObserver:Uq,appendChild:Lq,appendChildToContainer:uq,commitTextUpdate:Kq,commitMount:Rq,commitUpdate:Wq,insertBefore:Yq,insertInContainerBefore:Zq,removeChild:Xq,removeChildFromContainer:qq,resetTextContent:aM,hideInstance:kq,hideTextInstance:zq,unhideInstance:Oq,unhideTextInstance:Sq}=B;B.cancelViewTransitionName,B.cancelRootViewTransitionName,B.restoreRootViewTransitionName,B.cloneRootViewTransitionContainer,B.removeRootViewTransitionClone,B.measureClonedInstance,B.hasInstanceChanged,B.hasInstanceAffectedParent,B.startViewTransition,B.startGestureTransition,B.stopViewTransition,B.getCurrentGestureOffset,B.createViewTransitionInstance;var $q=B.clearContainer;B.createFragmentInstance,B.updateFragmentInstanceFiber,B.commitNewChildToFragmentInstance,B.deleteChildFromFragmentInstance;var{cloneInstance:yq,createContainerChildSet:oM,appendChildToContainerChildSet:nM,finalizeContainerChildren:Tq,replaceContainerChildren:rM,cloneHiddenInstance:sM,cloneHiddenTextInstance:tM,isSuspenseInstancePending:D6,isSuspenseInstanceFallback:F6,getSuspenseInstanceFallbackErrorDetails:vq,registerSuspenseInstanceRetry:_q,canHydrateFormStateMarker:Vq,isFormStateMarkerMatching:Pq,getNextHydratableSibling:w6,getNextHydratableSiblingAfterSingleton:mq,getFirstHydratableChild:hq,getFirstHydratableChildWithinContainer:bq,getFirstHydratableChildWithinActivityInstance:fq,getFirstHydratableChildWithinSuspenseInstance:jq,getFirstHydratableChildWithinSingleton:xq,canHydrateInstance:pq,canHydrateTextInstance:iq,canHydrateActivityInstance:dq,canHydrateSuspenseInstance:cq,hydrateInstance:lq,hydrateTextInstance:aq,hydrateActivityInstance:oq,hydrateSuspenseInstance:nq,getNextHydratableInstanceAfterActivityInstance:rq,getNextHydratableInstanceAfterSuspenseInstance:eM,commitHydratedInstance:sq,commitHydratedContainer:tq,commitHydratedActivityInstance:eq,commitHydratedSuspenseInstance:Ak,finalizeHydratedChildren:Bk,flushHydrationEvents:Qk}=B;B.clearActivityBoundary;var Ik=B.clearSuspenseBoundary;B.clearActivityBoundaryFromContainer;var{clearSuspenseBoundaryFromContainer:Ek,hideDehydratedBoundary:Ck,unhideDehydratedBoundary:gk,shouldDeleteUnhydratedTailInstances:AU,diffHydratedPropsForDevWarnings:BU,diffHydratedTextForDevWarnings:QU,describeHydratableInstanceForDevWarnings:IU,validateHydratableInstance:Dk,validateHydratableTextInstance:Fk,supportsResources:k0,isHostHoistableType:EU,getHoistableRoot:G6,getResource:CU,acquireResource:gU,releaseResource:DU,hydrateHoistable:wk,mountHoistable:FU,unmountHoistable:wU,createHoistableInstance:Gk,prepareToCommitHoistables:Nk,mayResourceSuspendCommit:Hk,preloadResource:GU,suspendResource:Jk,supportsSingletons:TQ,resolveSingletonInstance:NU,acquireSingletonInstance:Mk,releaseSingletonInstance:HU,isHostSingletonType:JU,isSingletonScope:SD}=B,N6=[],H6=[],PE=-1,kC={};Object.freeze(kC);var HI=Math.clz32?Math.clz32:KA,Uk=Math.log,Lk=Math.LN2,j8=256,x8=262144,p8=4194304,i8=pB.unstable_scheduleCallback,uk=pB.unstable_cancelCallback,Kk=pB.unstable_shouldYield,Rk=pB.unstable_requestPaint,vQ=pB.unstable_now,J6=pB.unstable_ImmediatePriority,MU=pB.unstable_UserBlockingPriority,DF=pB.unstable_NormalPriority,UU=pB.unstable_IdlePriority,Wk=pB.log,Yk=pB.unstable_setDisableYieldValue,$D=null,gI=null,IE=!1,EE=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u",LU=0;if(typeof performance==="object"&&typeof performance.now==="function")var Zk=performance,uU=function(){return Zk.now()};else{var Xk=Date;uU=function(){return Xk.now()}}var JI=typeof Object.is==="function"?Object.is:e,KU=typeof reportError==="function"?reportError:function(A){if(typeof window==="object"&&typeof window.ErrorEvent==="function"){var Q=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof A==="object"&&A!==null&&typeof A.message==="string"?String(A.message):String(A),error:A});if(!window.dispatchEvent(Q))return}else if(typeof process==="object"&&typeof process.emit==="function"){process.emit("uncaughtException",A);return}console.error(A)},M6=Object.prototype.hasOwnProperty,jB=typeof console<"u"&&typeof console.timeStamp==="function"&&typeof performance<"u"&&typeof performance.measure==="function",HB="Blocking",zC=!1,mE={color:"primary",properties:null,tooltipText:"",track:"Components \u269B"},OC={start:-0,end:-0,detail:{devtools:mE}},qk=["Changed Props",""],kk=["Changed Props","This component received deeply equal props. It might benefit from useMemo or the React Compiler in its owner."],FF=0,RU,WU,YU,ZU,XU,qU,kU;NC.__reactDisabledLog=!0;var U6,zU,L6=!1,u6=new(typeof WeakMap==="function"?WeakMap:Map),K6=new WeakMap,yD=[],TD=0,d8=null,wF=0,tI=[],eI=0,Yg=null,hE=1,bE="",SC=XA(null),GF=XA(null),$C=XA(null),c8=XA(null),OU=/["'&<>\n\t]|^\s|\s$/,fE=null,CE=!1,nQ=null,oB=null,LB=!1,gE=!1,bI=null,yC=null,A0=!1,R6=Error("Hydration Mismatch Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."),aA=0,l8=XA(null),W6=XA(null),Y6=XA(null),a8={},o8=null,vD=null,_D=!1,zk=typeof AbortController<"u"?AbortController:function(){var A=[],Q=this.signal={aborted:!1,addEventListener:function(E,D){A.push(D)}};this.abort=function(){Q.aborted=!0,A.forEach(function(E){return E()})}},Ok=pB.unstable_scheduleCallback,Sk=pB.unstable_NormalPriority,gQ={$$typeof:vE,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0,_currentRenderer:null,_currentRenderer2:null},RQ=pB.unstable_now,n8=console.createTask?console.createTask:function(){return null},DI=-0,TC=-0,jE=-0,xE=null,MI=-1.1,Zg=-0,nB=-0,pA=-1.1,dA=-1.1,cB=null,DQ=!1,Xg=-0,DE=-1.1,NF=null,vC=0,Z6=null,X6=null,qg=-1.1,HF=null,VD=-1.1,r8=-1.1,pE=-0,iE=-1.1,B0=-1.1,q6=0,JF=null,SU=null,$U=null,_C=-1.1,kg=null,VC=-1.1,s8=-1.1,PD=null,yU=0,MF=-1.1,t8=!1,e8=!1,Aw=null,mD=null,k6=!1,z6=!1,Bw=!1,O6=!1,zg=0,S6={},UF=null,$6=0,Og=0,hD=null,TU=p.S;p.S=function(A,Q){if(z7=vQ(),typeof Q==="object"&&Q!==null&&typeof Q.then==="function"){if(0>iE&&0>B0){iE=RQ();var E=CF(),D=EF();if(E!==VC||D!==kg)VC=-1.1;_C=E,kg=D}IX(A,Q)}TU!==null&&TU(A,Q)};var Sg=XA(null),z0={recordUnsafeLifecycleWarnings:function(){},flushPendingUnsafeLifecycleWarnings:function(){},recordLegacyContextWarning:function(){},flushLegacyContextWarning:function(){},discardPendingWarnings:function(){}},LF=[],uF=[],KF=[],RF=[],WF=[],YF=[],$g=new Set;z0.recordUnsafeLifecycleWarnings=function(A,Q){$g.has(A.type)||(typeof Q.componentWillMount==="function"&&Q.componentWillMount.__suppressDeprecationWarning!==!0&&LF.push(A),A.mode&8&&typeof Q.UNSAFE_componentWillMount==="function"&&uF.push(A),typeof Q.componentWillReceiveProps==="function"&&Q.componentWillReceiveProps.__suppressDeprecationWarning!==!0&&KF.push(A),A.mode&8&&typeof Q.UNSAFE_componentWillReceiveProps==="function"&&RF.push(A),typeof Q.componentWillUpdate==="function"&&Q.componentWillUpdate.__suppressDeprecationWarning!==!0&&WF.push(A),A.mode&8&&typeof Q.UNSAFE_componentWillUpdate==="function"&&YF.push(A))},z0.flushPendingUnsafeLifecycleWarnings=function(){var A=new Set;0<LF.length&&(LF.forEach(function(L){A.add(s(L)||"Component"),$g.add(L.type)}),LF=[]);var Q=new Set;0<uF.length&&(uF.forEach(function(L){Q.add(s(L)||"Component"),$g.add(L.type)}),uF=[]);var E=new Set;0<KF.length&&(KF.forEach(function(L){E.add(s(L)||"Component"),$g.add(L.type)}),KF=[]);var D=new Set;0<RF.length&&(RF.forEach(function(L){D.add(s(L)||"Component"),$g.add(L.type)}),RF=[]);var w=new Set;0<WF.length&&(WF.forEach(function(L){w.add(s(L)||"Component"),$g.add(L.type)}),WF=[]);var G=new Set;if(0<YF.length&&(YF.forEach(function(L){G.add(s(L)||"Component"),$g.add(L.type)}),YF=[]),0<Q.size){var J=v(Q);console.error(`Using UNSAFE_componentWillMount in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
171
+
172
+ * Move code with side effects to componentDidMount, and set initial state in the constructor.
173
+
174
+ Please update the following components: %s`,J)}0<D.size&&(J=v(D),console.error(`Using UNSAFE_componentWillReceiveProps in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
175
+
176
+ * Move data fetching code or side effects to componentDidUpdate.
177
+ * If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
178
+
179
+ Please update the following components: %s`,J)),0<G.size&&(J=v(G),console.error(`Using UNSAFE_componentWillUpdate in strict mode is not recommended and may indicate bugs in your code. See https://react.dev/link/unsafe-component-lifecycles for details.
180
+
181
+ * Move data fetching code or side effects to componentDidUpdate.
182
+
183
+ Please update the following components: %s`,J)),0<A.size&&(J=v(A),console.warn(`componentWillMount has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
184
+
185
+ * Move code with side effects to componentDidMount, and set initial state in the constructor.
186
+ * Rename componentWillMount to UNSAFE_componentWillMount to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
187
+
188
+ Please update the following components: %s`,J)),0<E.size&&(J=v(E),console.warn(`componentWillReceiveProps has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
189
+
190
+ * Move data fetching code or side effects to componentDidUpdate.
191
+ * If you're updating state whenever props change, refactor your code to use memoization techniques or move it to static getDerivedStateFromProps. Learn more at: https://react.dev/link/derived-state
192
+ * Rename componentWillReceiveProps to UNSAFE_componentWillReceiveProps to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
193
+
194
+ Please update the following components: %s`,J)),0<w.size&&(J=v(w),console.warn(`componentWillUpdate has been renamed, and is not recommended for use. See https://react.dev/link/unsafe-component-lifecycles for details.
195
+
196
+ * Move data fetching code or side effects to componentDidUpdate.
197
+ * Rename componentWillUpdate to UNSAFE_componentWillUpdate to suppress this warning in non-strict mode. In React 18.x, only the UNSAFE_ name will work. To rename all deprecated lifecycles to their new names, you can run \`npx react-codemod rename-unsafe-lifecycles\` in your project source folder.
198
+
199
+ Please update the following components: %s`,J))};var Qw=new Map,vU=new Set;z0.recordLegacyContextWarning=function(A,Q){var E=null;for(var D=A;D!==null;)D.mode&8&&(E=D),D=D.return;E===null?console.error("Expected to find a StrictMode component in a strict mode tree. This error is likely caused by a bug in React. Please file an issue."):!vU.has(A.type)&&(D=Qw.get(E),A.type.contextTypes!=null||A.type.childContextTypes!=null||Q!==null&&typeof Q.getChildContext==="function")&&(D===void 0&&(D=[],Qw.set(E,D)),D.push(A))},z0.flushLegacyContextWarning=function(){Qw.forEach(function(A){if(A.length!==0){var Q=A[0],E=new Set;A.forEach(function(w){E.add(s(w)||"Component"),vU.add(w.type)});var D=v(E);TA(Q,function(){console.error(`Legacy context API has been detected within a strict-mode tree.
200
+
201
+ The old API will be supported in all 16.x releases, but applications using it should migrate to the new version.
202
+
203
+ Please update the following components: %s
204
+
205
+ Learn more about this warning here: https://react.dev/link/legacy-context`,D)})}})},z0.discardPendingWarnings=function(){LF=[],uF=[],KF=[],RF=[],WF=[],YF=[],Qw=new Map};var _U={react_stack_bottom_frame:function(A,Q,E){var D=CE;CE=!0;try{return A(Q,E)}finally{CE=D}}},y6=_U.react_stack_bottom_frame.bind(_U),VU={react_stack_bottom_frame:function(A){var Q=CE;CE=!0;try{return A.render()}finally{CE=Q}}},PU=VU.react_stack_bottom_frame.bind(VU),mU={react_stack_bottom_frame:function(A,Q){try{Q.componentDidMount()}catch(E){qB(A,A.return,E)}}},T6=mU.react_stack_bottom_frame.bind(mU),hU={react_stack_bottom_frame:function(A,Q,E,D,w){try{Q.componentDidUpdate(E,D,w)}catch(G){qB(A,A.return,G)}}},bU=hU.react_stack_bottom_frame.bind(hU),fU={react_stack_bottom_frame:function(A,Q){var E=Q.stack;A.componentDidCatch(Q.value,{componentStack:E!==null?E:""})}},$k=fU.react_stack_bottom_frame.bind(fU),jU={react_stack_bottom_frame:function(A,Q,E){try{E.componentWillUnmount()}catch(D){qB(A,Q,D)}}},xU=jU.react_stack_bottom_frame.bind(jU),pU={react_stack_bottom_frame:function(A){var Q=A.create;return A=A.inst,Q=Q(),A.destroy=Q}},yk=pU.react_stack_bottom_frame.bind(pU),iU={react_stack_bottom_frame:function(A,Q,E){try{E()}catch(D){qB(A,Q,D)}}},Tk=iU.react_stack_bottom_frame.bind(iU),dU={react_stack_bottom_frame:function(A){var Q=A._init;return Q(A._payload)}},vk=dU.react_stack_bottom_frame.bind(dU),bD=Error("Suspense Exception: This is not a real error! It's an implementation detail of `use` to interrupt the current render. You must either rethrow it immediately, or move the `use` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary, or call the promise's `.catch` method and pass the result to `use`."),v6=Error("Suspense Exception: This is not a real error, and should not leak into userspace. If you're seeing this, it's likely a bug in React."),Iw=Error("Suspense Exception: This is not a real error! It's an implementation detail of `useActionState` to interrupt the current render. You must either rethrow it immediately, or move the `useActionState` call outside of the `try/catch` block. Capturing without rethrowing will lead to unexpected behavior.\n\nTo handle async errors, wrap your component in an error boundary."),Ew={then:function(){console.error('Internal React error: A listener was unexpectedly attached to a "noop" thenable. This is a bug in React. Please file an issue.')}},yg=null,ZF=!1,fD=null,XF=0,gB=null,_6,cU=_6=!1,lU={},aU={},oU={};O=function(A,Q,E){if(E!==null&&typeof E==="object"&&E._store&&(!E._store.validated&&E.key==null||E._store.validated===2)){if(typeof E._store!=="object")throw Error("React Component in warnForMissingKey should have a _store. This error is likely caused by a bug in React. Please file an issue.");E._store.validated=1;var D=s(A),w=D||"null";if(!lU[w]){lU[w]=!0,E=E._owner,A=A._debugOwner;var G="";A&&typeof A.tag==="number"&&(w=s(A))&&(G=`
206
+
207
+ Check the render method of \``+w+"`."),G||D&&(G=`
208
+
209
+ Check the top-level render call using <`+D+">.");var J="";E!=null&&A!==E&&(D=null,typeof E.tag==="number"?D=s(E):typeof E.name==="string"&&(D=E.name),D&&(J=" It was passed a child from "+D+".")),TA(Q,function(){console.error('Each child in a list should have a unique "key" prop.%s%s See https://react.dev/link/warning-keys for more information.',G,J)})}}};var Tg=h9(!0),nU=h9(!1),qF=1,dE=2,Q0=[],jD=0,V6=0,rU=0,sU=1,tU=2,P6=3,PC=!1,eU=!1,m6=null,h6=!1,xD=XA(null),Cw=XA(0),fI=XA(null),I0=null,pD=1,kF=2,UQ=XA(0),gw=0,E0=1,UI=2,jI=4,LI=8,iD,A7=new Set,B7=new Set,b6=new Set,Q7=new Set,cE=0,sA=null,PB=null,WQ=null,Dw=!1,dD=!1,vg=!1,Fw=0,zF=0,lE=null,_k=0,Vk=25,j=null,C0=null,aE=-1,OF=!1,SF={readContext:n,use:XC,useCallback:GQ,useContext:GQ,useEffect:GQ,useImperativeHandle:GQ,useLayoutEffect:GQ,useInsertionEffect:GQ,useMemo:GQ,useReducer:GQ,useRef:GQ,useState:GQ,useDebugValue:GQ,useDeferredValue:GQ,useTransition:GQ,useSyncExternalStore:GQ,useId:GQ,useHostTransitionStatus:GQ,useFormState:GQ,useActionState:GQ,useOptimistic:GQ,useMemoCache:GQ,useCacheRefresh:GQ};SF.useEffectEvent=GQ;var f6=null,I7=null,j6=null,E7=null,FE=null,O0=null,ww=null;f6={readContext:function(A){return n(A)},use:XC,useCallback:function(A,Q){return j="useCallback",NB(),UD(Q),CG(A,Q)},useContext:function(A){return j="useContext",NB(),n(A)},useEffect:function(A,Q){return j="useEffect",NB(),UD(Q),U8(A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",NB(),UD(E),EG(A,Q,E)},useInsertionEffect:function(A,Q){j="useInsertionEffect",NB(),UD(Q),Gg(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",NB(),UD(Q),IG(A,Q)},useMemo:function(A,Q){j="useMemo",NB(),UD(Q);var E=p.H;p.H=FE;try{return gG(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",NB();var D=p.H;p.H=FE;try{return o4(A,Q,E)}finally{p.H=D}},useRef:function(A){return j="useRef",NB(),BG(A)},useState:function(A){j="useState",NB();var Q=p.H;p.H=FE;try{return t4(A)}finally{p.H=Q}},useDebugValue:function(){j="useDebugValue",NB()},useDeferredValue:function(A,Q){return j="useDeferredValue",NB(),DG(A,Q)},useTransition:function(){return j="useTransition",NB(),wG()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",NB(),r4(A,Q,E)},useId:function(){return j="useId",NB(),GG()},useFormState:function(A,Q){return j="useFormState",NB(),G8(),uD(A,Q)},useActionState:function(A,Q){return j="useActionState",NB(),uD(A,Q)},useOptimistic:function(A){return j="useOptimistic",NB(),e4(A)},useHostTransitionStatus:Ng,useMemoCache:wg,useCacheRefresh:function(){return j="useCacheRefresh",NB(),NG()},useEffectEvent:function(A){return j="useEffectEvent",NB(),QG(A)}},I7={readContext:function(A){return n(A)},use:XC,useCallback:function(A,Q){return j="useCallback",gA(),CG(A,Q)},useContext:function(A){return j="useContext",gA(),n(A)},useEffect:function(A,Q){return j="useEffect",gA(),U8(A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",gA(),EG(A,Q,E)},useInsertionEffect:function(A,Q){j="useInsertionEffect",gA(),Gg(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",gA(),IG(A,Q)},useMemo:function(A,Q){j="useMemo",gA();var E=p.H;p.H=FE;try{return gG(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",gA();var D=p.H;p.H=FE;try{return o4(A,Q,E)}finally{p.H=D}},useRef:function(A){return j="useRef",gA(),BG(A)},useState:function(A){j="useState",gA();var Q=p.H;p.H=FE;try{return t4(A)}finally{p.H=Q}},useDebugValue:function(){j="useDebugValue",gA()},useDeferredValue:function(A,Q){return j="useDeferredValue",gA(),DG(A,Q)},useTransition:function(){return j="useTransition",gA(),wG()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",gA(),r4(A,Q,E)},useId:function(){return j="useId",gA(),GG()},useActionState:function(A,Q){return j="useActionState",gA(),uD(A,Q)},useFormState:function(A,Q){return j="useFormState",gA(),G8(),uD(A,Q)},useOptimistic:function(A){return j="useOptimistic",gA(),e4(A)},useHostTransitionStatus:Ng,useMemoCache:wg,useCacheRefresh:function(){return j="useCacheRefresh",gA(),NG()},useEffectEvent:function(A){return j="useEffectEvent",gA(),QG(A)}},j6={readContext:function(A){return n(A)},use:XC,useCallback:function(A,Q){return j="useCallback",gA(),K8(A,Q)},useContext:function(A){return j="useContext",gA(),n(A)},useEffect:function(A,Q){j="useEffect",gA(),YI(2048,LI,A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",gA(),u8(A,Q,E)},useInsertionEffect:function(A,Q){return j="useInsertionEffect",gA(),YI(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",gA(),YI(4,jI,A,Q)},useMemo:function(A,Q){j="useMemo",gA();var E=p.H;p.H=O0;try{return R8(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",gA();var D=p.H;p.H=O0;try{return LD(A,Q,E)}finally{p.H=D}},useRef:function(){return j="useRef",gA(),$B().memoizedState},useState:function(){j="useState",gA();var A=p.H;p.H=O0;try{return LD(Y0)}finally{p.H=A}},useDebugValue:function(){j="useDebugValue",gA()},useDeferredValue:function(A,Q){return j="useDeferredValue",gA(),gJ(A,Q)},useTransition:function(){return j="useTransition",gA(),NJ()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",gA(),H8(A,Q,E)},useId:function(){return j="useId",gA(),$B().memoizedState},useFormState:function(A){return j="useFormState",gA(),G8(),J8(A)},useActionState:function(A){return j="useActionState",gA(),J8(A)},useOptimistic:function(A,Q){return j="useOptimistic",gA(),r9(A,Q)},useHostTransitionStatus:Ng,useMemoCache:wg,useCacheRefresh:function(){return j="useCacheRefresh",gA(),$B().memoizedState},useEffectEvent:function(A){return j="useEffectEvent",gA(),L8(A)}},E7={readContext:function(A){return n(A)},use:XC,useCallback:function(A,Q){return j="useCallback",gA(),K8(A,Q)},useContext:function(A){return j="useContext",gA(),n(A)},useEffect:function(A,Q){j="useEffect",gA(),YI(2048,LI,A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",gA(),u8(A,Q,E)},useInsertionEffect:function(A,Q){return j="useInsertionEffect",gA(),YI(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",gA(),YI(4,jI,A,Q)},useMemo:function(A,Q){j="useMemo",gA();var E=p.H;p.H=ww;try{return R8(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",gA();var D=p.H;p.H=ww;try{return o2(A,Q,E)}finally{p.H=D}},useRef:function(){return j="useRef",gA(),$B().memoizedState},useState:function(){j="useState",gA();var A=p.H;p.H=ww;try{return o2(Y0)}finally{p.H=A}},useDebugValue:function(){j="useDebugValue",gA()},useDeferredValue:function(A,Q){return j="useDeferredValue",gA(),DJ(A,Q)},useTransition:function(){return j="useTransition",gA(),HJ()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",gA(),H8(A,Q,E)},useId:function(){return j="useId",gA(),$B().memoizedState},useFormState:function(A){return j="useFormState",gA(),G8(),M8(A)},useActionState:function(A){return j="useActionState",gA(),M8(A)},useOptimistic:function(A,Q){return j="useOptimistic",gA(),t9(A,Q)},useHostTransitionStatus:Ng,useMemoCache:wg,useCacheRefresh:function(){return j="useCacheRefresh",gA(),$B().memoizedState},useEffectEvent:function(A){return j="useEffectEvent",gA(),L8(A)}},FE={readContext:function(A){return z(),n(A)},use:function(A){return W(),XC(A)},useCallback:function(A,Q){return j="useCallback",W(),NB(),CG(A,Q)},useContext:function(A){return j="useContext",W(),NB(),n(A)},useEffect:function(A,Q){return j="useEffect",W(),NB(),U8(A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",W(),NB(),EG(A,Q,E)},useInsertionEffect:function(A,Q){j="useInsertionEffect",W(),NB(),Gg(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",W(),NB(),IG(A,Q)},useMemo:function(A,Q){j="useMemo",W(),NB();var E=p.H;p.H=FE;try{return gG(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",W(),NB();var D=p.H;p.H=FE;try{return o4(A,Q,E)}finally{p.H=D}},useRef:function(A){return j="useRef",W(),NB(),BG(A)},useState:function(A){j="useState",W(),NB();var Q=p.H;p.H=FE;try{return t4(A)}finally{p.H=Q}},useDebugValue:function(){j="useDebugValue",W(),NB()},useDeferredValue:function(A,Q){return j="useDeferredValue",W(),NB(),DG(A,Q)},useTransition:function(){return j="useTransition",W(),NB(),wG()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",W(),NB(),r4(A,Q,E)},useId:function(){return j="useId",W(),NB(),GG()},useFormState:function(A,Q){return j="useFormState",W(),NB(),uD(A,Q)},useActionState:function(A,Q){return j="useActionState",W(),NB(),uD(A,Q)},useOptimistic:function(A){return j="useOptimistic",W(),NB(),e4(A)},useMemoCache:function(A){return W(),wg(A)},useHostTransitionStatus:Ng,useCacheRefresh:function(){return j="useCacheRefresh",NB(),NG()},useEffectEvent:function(A){return j="useEffectEvent",W(),NB(),QG(A)}},O0={readContext:function(A){return z(),n(A)},use:function(A){return W(),XC(A)},useCallback:function(A,Q){return j="useCallback",W(),gA(),K8(A,Q)},useContext:function(A){return j="useContext",W(),gA(),n(A)},useEffect:function(A,Q){j="useEffect",W(),gA(),YI(2048,LI,A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",W(),gA(),u8(A,Q,E)},useInsertionEffect:function(A,Q){return j="useInsertionEffect",W(),gA(),YI(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",W(),gA(),YI(4,jI,A,Q)},useMemo:function(A,Q){j="useMemo",W(),gA();var E=p.H;p.H=O0;try{return R8(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",W(),gA();var D=p.H;p.H=O0;try{return LD(A,Q,E)}finally{p.H=D}},useRef:function(){return j="useRef",W(),gA(),$B().memoizedState},useState:function(){j="useState",W(),gA();var A=p.H;p.H=O0;try{return LD(Y0)}finally{p.H=A}},useDebugValue:function(){j="useDebugValue",W(),gA()},useDeferredValue:function(A,Q){return j="useDeferredValue",W(),gA(),gJ(A,Q)},useTransition:function(){return j="useTransition",W(),gA(),NJ()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",W(),gA(),H8(A,Q,E)},useId:function(){return j="useId",W(),gA(),$B().memoizedState},useFormState:function(A){return j="useFormState",W(),gA(),J8(A)},useActionState:function(A){return j="useActionState",W(),gA(),J8(A)},useOptimistic:function(A,Q){return j="useOptimistic",W(),gA(),r9(A,Q)},useMemoCache:function(A){return W(),wg(A)},useHostTransitionStatus:Ng,useCacheRefresh:function(){return j="useCacheRefresh",gA(),$B().memoizedState},useEffectEvent:function(A){return j="useEffectEvent",W(),gA(),L8(A)}},ww={readContext:function(A){return z(),n(A)},use:function(A){return W(),XC(A)},useCallback:function(A,Q){return j="useCallback",W(),gA(),K8(A,Q)},useContext:function(A){return j="useContext",W(),gA(),n(A)},useEffect:function(A,Q){j="useEffect",W(),gA(),YI(2048,LI,A,Q)},useImperativeHandle:function(A,Q,E){return j="useImperativeHandle",W(),gA(),u8(A,Q,E)},useInsertionEffect:function(A,Q){return j="useInsertionEffect",W(),gA(),YI(4,UI,A,Q)},useLayoutEffect:function(A,Q){return j="useLayoutEffect",W(),gA(),YI(4,jI,A,Q)},useMemo:function(A,Q){j="useMemo",W(),gA();var E=p.H;p.H=O0;try{return R8(A,Q)}finally{p.H=E}},useReducer:function(A,Q,E){j="useReducer",W(),gA();var D=p.H;p.H=O0;try{return o2(A,Q,E)}finally{p.H=D}},useRef:function(){return j="useRef",W(),gA(),$B().memoizedState},useState:function(){j="useState",W(),gA();var A=p.H;p.H=O0;try{return o2(Y0)}finally{p.H=A}},useDebugValue:function(){j="useDebugValue",W(),gA()},useDeferredValue:function(A,Q){return j="useDeferredValue",W(),gA(),DJ(A,Q)},useTransition:function(){return j="useTransition",W(),gA(),HJ()},useSyncExternalStore:function(A,Q,E){return j="useSyncExternalStore",W(),gA(),H8(A,Q,E)},useId:function(){return j="useId",W(),gA(),$B().memoizedState},useFormState:function(A){return j="useFormState",W(),gA(),M8(A)},useActionState:function(A){return j="useActionState",W(),gA(),M8(A)},useOptimistic:function(A,Q){return j="useOptimistic",W(),gA(),t9(A,Q)},useMemoCache:function(A){return W(),wg(A)},useHostTransitionStatus:Ng,useCacheRefresh:function(){return j="useCacheRefresh",gA(),$B().memoizedState},useEffectEvent:function(A){return j="useEffectEvent",W(),gA(),L8(A)}};var C7={},g7=new Set,D7=new Set,F7=new Set,w7=new Set,G7=new Set,N7=new Set,H7=new Set,J7=new Set,M7=new Set,U7=new Set;Object.freeze(C7);var x6={enqueueSetState:function(A,Q,E){A=A._reactInternals;var D=mI(A),w=RC(D);w.payload=Q,E!==void 0&&E!==null&&(JG(E),w.callback=E),Q=WC(A,w,D),Q!==null&&(OB(D,"this.setState()",A),CQ(Q,A,D),d2(Q,A,D))},enqueueReplaceState:function(A,Q,E){A=A._reactInternals;var D=mI(A),w=RC(D);w.tag=sU,w.payload=Q,E!==void 0&&E!==null&&(JG(E),w.callback=E),Q=WC(A,w,D),Q!==null&&(OB(D,"this.replaceState()",A),CQ(Q,A,D),d2(Q,A,D))},enqueueForceUpdate:function(A,Q){A=A._reactInternals;var E=mI(A),D=RC(E);D.tag=tU,Q!==void 0&&Q!==null&&(JG(Q),D.callback=Q),Q=WC(A,D,E),Q!==null&&(OB(E,"this.forceUpdate()",A),CQ(Q,A,E),d2(Q,A,E))}},cD=null,p6=null,i6=Error("This is not a real error. It's an implementation detail of React's selective hydration feature. If this leaks into userspace, it's a bug in React. Please file an issue."),YQ=!1,L7={},u7={},K7={},R7={},lD=!1,W7={},Gw={},d6={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null},Y7=!1,Z7=null;Z7=new Set;var oE=!1,ZQ=!1,c6=!1,X7=typeof WeakSet==="function"?WeakSet:Set,jQ=null,aD=null,oD=null,XQ=null,ZI=!1,S0=null,_Q=!1,nD=8192,Pk={getCacheForType:function(A){var Q=n(gQ),E=Q.data.get(A);return E===void 0&&(E=A(),Q.data.set(A,E)),E},cacheSignal:function(){return n(gQ).controller.signal},getOwner:function(){return fE}},Nw=0,Hw=1,Jw=2,Mw=3,Uw=4;if(typeof Symbol==="function"&&Symbol.for){var $F=Symbol.for;Nw=$F("selector.component"),Hw=$F("selector.has_pseudo_class"),Jw=$F("selector.role"),Mw=$F("selector.test_id"),Uw=$F("selector.text")}var Lw=[],mk=typeof WeakMap==="function"?WeakMap:Map,xQ=0,pQ=2,g0=4,nE=0,yF=1,_g=2,uw=3,mC=4,Kw=6,q7=5,uB=xQ,mB=null,wB=null,DB=0,XI=0,Rw=1,Vg=2,TF=3,k7=4,l6=5,vF=6,Ww=7,a6=8,Pg=9,yB=XI,xI=null,hC=!1,rD=!1,o6=!1,wE=0,rB=nE,bC=0,fC=0,n6=0,qI=0,mg=0,_F=null,uI=null,Yw=!1,Zw=0,z7=0,O7=300,VF=1/0,r6=500,PF=null,NQ=null,jC=null,Xw=0,s6=1,t6=2,S7=3,xC=0,$7=1,y7=2,T7=3,v7=4,qw=5,qQ=0,pC=null,sD=null,$0=0,e6=0,AN=-0,BN=null,_7=null,V7=null,y0=Xw,P7=null,hk=50,mF=0,QN=null,IN=!1,kw=!1,bk=50,hg=0,hF=null,tD=!1,zw=null,m7=!1,h7=new Set,fk={},D0=null,eD=null,b7=!1;try{var f7=Object.preventExtensions({})}catch(A){b7=!0}var j7=!1,x7={},p7=null,i7=null,d7=null,c7=null,l7=null,a7=null,o7=null,n7=null,r7=null,s7=null;return p7=function(A,Q,E,D){Q=I(A,Q),Q!==null&&(E=C(Q.memoizedState,E,0,D),Q.memoizedState=E,Q.baseState=E,A.memoizedProps=aQ({},A.memoizedProps),E=QI(A,2),E!==null&&CQ(E,A,2))},i7=function(A,Q,E){Q=I(A,Q),Q!==null&&(E=N(Q.memoizedState,E,0),Q.memoizedState=E,Q.baseState=E,A.memoizedProps=aQ({},A.memoizedProps),E=QI(A,2),E!==null&&CQ(E,A,2))},d7=function(A,Q,E,D){Q=I(A,Q),Q!==null&&(E=g(Q.memoizedState,E,D),Q.memoizedState=E,Q.baseState=E,A.memoizedProps=aQ({},A.memoizedProps),E=QI(A,2),E!==null&&CQ(E,A,2))},c7=function(A,Q,E){A.pendingProps=C(A.memoizedProps,Q,0,E),A.alternate&&(A.alternate.pendingProps=A.pendingProps),Q=QI(A,2),Q!==null&&CQ(Q,A,2)},l7=function(A,Q){A.pendingProps=N(A.memoizedProps,Q,0),A.alternate&&(A.alternate.pendingProps=A.pendingProps),Q=QI(A,2),Q!==null&&CQ(Q,A,2)},a7=function(A,Q,E){A.pendingProps=g(A.memoizedProps,Q,E),A.alternate&&(A.alternate.pendingProps=A.pendingProps),Q=QI(A,2),Q!==null&&CQ(Q,A,2)},o7=function(A){var Q=QI(A,2);Q!==null&&CQ(Q,A,2)},n7=function(A){var Q=rA(),E=QI(A,Q);E!==null&&CQ(E,A,Q)},r7=function(A){M=A},s7=function(A){H=A},KB.attemptContinuousHydration=function(A){if(A.tag===13||A.tag===31){var Q=QI(A,67108864);Q!==null&&CQ(Q,A,67108864),tG(A,67108864)}},KB.attemptHydrationAtCurrentPriority=function(A){if(A.tag===13||A.tag===31){var Q=mI(A);Q=GB(Q);var E=QI(A,Q);E!==null&&CQ(E,A,Q),tG(A,Q)}},KB.attemptSynchronousHydration=function(A){switch(A.tag){case 3:if(A=A.stateNode,A.current.memoizedState.isDehydrated){var Q=BB(A.pendingLanes);if(Q!==0){A.pendingLanes|=2;for(A.entangledLanes|=2;Q;){var E=1<<31-HI(Q);A.entanglements[1]|=E,Q&=~E}s0(A),(uB&(pQ|g0))===xQ&&(VF=vQ()+r6,MD(0,!1))}}break;case 31:case 13:Q=QI(A,2),Q!==null&&CQ(Q,A,2),v8(),tG(A,2)}},KB.batchedUpdates=function(A,Q){return A(Q)},KB.createComponentSelector=function(A){return{$$typeof:Nw,value:A}},KB.createContainer=function(A,Q,E,D,w,G,J,L,q,_){return PM(A,Q,!1,null,E,D,G,null,J,L,q,_)},KB.createHasPseudoClassSelector=function(A){return{$$typeof:Hw,value:A}},KB.createHydrationContainer=function(A,Q,E,D,w,G,J,L,q,_,x,i,t,mA){return A=PM(E,D,!0,A,w,G,L,mA,q,_,x,i),A.context=hM(null),E=A.current,D=mI(E),D=GB(D),w=RC(D),w.callback=Q!==void 0&&Q!==null?Q:null,WC(E,w,D),OB(D,"hydrateRoot()",null),Q=D,A.current.lanes=Q,f(A,Q),s0(A),A},KB.createPortal=function(A,Q,E){var D=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{mM(D);var w=!1}catch(G){w=!0}return w&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol==="function"&&Symbol.toStringTag&&D[Symbol.toStringTag]||D.constructor.name||"Object"),mM(D)),{$$typeof:Kg,key:D==null?null:""+D,children:A,containerInfo:Q,implementation:E}},KB.createRoleSelector=function(A){return{$$typeof:Jw,value:A}},KB.createTestNameSelector=function(A){return{$$typeof:Mw,value:A}},KB.createTextSelector=function(A){return{$$typeof:Uw,value:A}},KB.defaultOnCaughtError=function(A){var Q=cD?"The above error occurred in the <"+cD+"> component.":"The above error occurred in one of your React components.",E="React will try to recreate this component tree from scratch using the error boundary you provided, "+((p6||"Anonymous")+".");typeof A==="object"&&A!==null&&typeof A.environmentName==="string"?Dq("error",[`%o
210
+
211
+ %s
212
+
213
+ %s
214
+ `,A,Q,E],A.environmentName)():console.error(`%o
215
+
216
+ %s
217
+
218
+ %s
219
+ `,A,Q,E)},KB.defaultOnRecoverableError=function(A){KU(A)},KB.defaultOnUncaughtError=function(A){KU(A),console.warn(`%s
220
+
221
+ %s
222
+ `,cD?"An error occurred in the <"+cD+"> component.":"An error occurred in one of your React components.",`Consider adding an error boundary to your tree to customize error handling behavior.
223
+ Visit https://react.dev/link/error-boundaries to learn more about error boundaries.`)},KB.deferredUpdates=function(A){var Q=p.T,E=VE();try{return fQ(32),p.T=null,A()}finally{fQ(E),p.T=Q}},KB.discreteUpdates=function(A,Q,E,D,w){var G=p.T,J=VE();try{return fQ(2),p.T=null,A(Q,E,D,w)}finally{fQ(J),p.T=G,uB===xQ&&(VF=vQ()+r6)}},KB.findAllNodes=T8,KB.findBoundingRects=function(A,Q){if(!OD)throw Error("Test selector API is not supported by this renderer.");Q=T8(A,Q),A=[];for(var E=0;E<Q.length;E++)A.push(Nq(Q[E]));for(Q=A.length-1;0<Q;Q--){E=A[Q];for(var D=E.x,w=D+E.width,G=E.y,J=G+E.height,L=Q-1;0<=L;L--)if(Q!==L){var q=A[L],_=q.x,x=_+q.width,i=q.y,t=i+q.height;if(D>=_&&G>=i&&w<=x&&J<=t){A.splice(Q,1);break}else if(!(D!==_||E.width!==q.width||t<G||i>J)){i>G&&(q.height+=i-G,q.y=G),t<J&&(q.height=J-i),A.splice(Q,1);break}else if(!(G!==i||E.height!==q.height||x<D||_>w)){_>D&&(q.width+=_-D,q.x=D),x<w&&(q.width=w-_),A.splice(Q,1);break}}}return A},KB.findHostInstance=function(A){var Q=A._reactInternals;if(Q===void 0){if(typeof A.render==="function")throw Error("Unable to find node on an unmounted component.");throw A=Object.keys(A).join(","),Error("Argument appears to not be a ReactComponent. Keys: "+A)}return A=FA(Q),A===null?null:kD(A.stateNode)},KB.findHostInstanceWithNoPortals=function(A){return A=r(A),A=A!==null?wA(A):null,A===null?null:kD(A.stateNode)},KB.findHostInstanceWithWarning=function(A,Q){var E=A._reactInternals;if(E===void 0){if(typeof A.render==="function")throw Error("Unable to find node on an unmounted component.");throw A=Object.keys(A).join(","),Error("Argument appears to not be a ReactComponent. Keys: "+A)}if(A=FA(E),A===null)return null;if(A.mode&8){var D=s(E)||"Component";x7[D]||(x7[D]=!0,TA(A,function(){E.mode&8?console.error("%s is deprecated in StrictMode. %s was passed an instance of %s which is inside StrictMode. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://react.dev/link/strict-mode-find-node",Q,Q,D):console.error("%s is deprecated in StrictMode. %s was passed an instance of %s which renders StrictMode children. Instead, add a ref directly to the element you want to reference. Learn more about using refs safely here: https://react.dev/link/strict-mode-find-node",Q,Q,D)}))}return kD(A.stateNode)},KB.flushPassiveEffects=XD,KB.flushSyncFromReconciler=function(A){var Q=uB;uB|=1;var E=p.T,D=VE();try{if(fQ(2),p.T=null,A)return A()}finally{fQ(D),p.T=E,uB=Q,(uB&(pQ|g0))===xQ&&MD(0,!1)}},KB.flushSyncWork=v8,KB.focusWithin=function(A,Q){if(!OD)throw Error("Test selector API is not supported by this renderer.");A=bG(A),Q=DM(A,Q),Q=Array.from(Q);for(A=0;A<Q.length;){var E=Q[A++],D=E.tag;if(!gF(E)){if((D===5||D===26||D===27)&&Mq(E.stateNode))return!0;for(E=E.child;E!==null;)Q.push(E),E=E.sibling}}return!1},KB.getFindAllNodesFailureDescription=function(A,Q){if(!OD)throw Error("Test selector API is not supported by this renderer.");var E=0,D=[];A=[bG(A),0];for(var w=0;w<A.length;){var G=A[w++],J=G.tag,L=A[w++],q=Q[L];if(J!==5&&J!==26&&J!==27||!gF(G)){if(fG(G,q)&&(D.push(jG(q)),L++,L>E&&(E=L)),L<Q.length)for(G=G.child;G!==null;)A.push(G,L),G=G.sibling}}if(E<Q.length){for(A=[];E<Q.length;E++)A.push(jG(Q[E]));return`findAllNodes was able to match part of the selector:
224
+ `+(D.join(" > ")+`
225
+
226
+ No matching component was found for:
227
+ `)+A.join(" > ")}return null},KB.getPublicRootInstance=function(A){if(A=A.current,!A.child)return null;switch(A.child.tag){case 27:case 5:return kD(A.child.stateNode);default:return A.child.stateNode}},KB.injectIntoDevTools=function(){var A={bundleType:1,version:xX,rendererPackageName:pX,currentDispatcherRef:p,reconcilerVersion:"19.2.0"};return pM!==null&&(A.rendererConfig=pM),A.overrideHookState=p7,A.overrideHookStateDeletePath=i7,A.overrideHookStateRenamePath=d7,A.overrideProps=c7,A.overridePropsDeletePath=l7,A.overridePropsRenamePath=a7,A.scheduleUpdate=o7,A.scheduleRetry=n7,A.setErrorHandler=r7,A.setSuspenseHandler=s7,A.scheduleRefresh=X,A.scheduleRoot=u,A.setRefreshHandler=k,A.getCurrentFiber=hX,EA(A)},KB.isAlreadyRendering=xG,KB.observeVisibleRects=function(A,Q,E,D){function w(){var _=T8(A,Q);G.forEach(function(x){0>_.indexOf(x)&&q(x)}),_.forEach(function(x){0>G.indexOf(x)&&L(x)})}if(!OD)throw Error("Test selector API is not supported by this renderer.");var G=T8(A,Q);E=Uq(G,E,D);var{disconnect:J,observe:L,unobserve:q}=E;return Lw.push(w),{disconnect:function(){var _=Lw.indexOf(w);0<=_&&Lw.splice(_,1),J()}}},KB.shouldError=function(A){return M(A)},KB.shouldSuspend=function(A){return H(A)},KB.startHostTransition=function(A,Q,E,D){if(A.tag!==5)throw Error("Expected the form instance to be a HostComponent. This is a bug in React.");var w=GJ(A).queue;SB(A),wJ(A,w,Q,zD,E===null?$:function(){p.T===null&&console.error("requestFormReset was called outside a transition or action. To fix, move to an action, or wrap with startTransition.");var G=GJ(A);return G.next===null&&(G=A.alternate.memoizedState),n2(A,G.next.queue,{},mI(A)),E(D)})},KB.updateContainer=function(A,Q,E,D){var w=Q.current,G=mI(w);return fM(w,G,A,Q,E,D),G},KB.updateContainerSync=bM,KB},D1.exports.default=D1.exports,Object.defineProperty(D1.exports,"__esModule",{value:!0})});function hS(B){if(B.length>50)return!1;if(PS.test(B))return!0;if(B.includes("\u200D")){let I=B.match(mS);return I!==null&&I.length>=2}return!1}function bS(B){return B.replace(_S,"")}function fS(B){return mu.test(B)}function hu(B){return B>=4352&&B<=4447||B>=43360&&B<=43388}function bu(B){return B>=4448&&B<=4519||B>=55216&&B<=55238}function fu(B){return B>=4520&&B<=4607||B>=55243&&B<=55291}function jS(B){return hu(B)||bu(B)||fu(B)}function xS(B,I){let C=[];for(let F of B){if(mu.test(F))continue;C.push(F.codePointAt(0))}if(C.length===0)return;let g=0;for(let F=0;F<C.length;F++){let N=C[F];if(!jS(N)){if(g===0)return;for(let H=F;H<C.length;H++)g+=rg(C[H],I);return g}if(hu(N)&&bu(C[F+1])){g+=2,F+=fu(C[F+2])?2:1;continue}g+=rg(N,I)}return g}function pS(B,I){let C=0,g=!0;for(let F of B){if(g){g=!1;continue}if(F>="\uFF00"&&F<="\uFFEF")C+=rg(F.codePointAt(0),I)}return C}function ME(B,I={}){if(typeof B!=="string"||B.length===0)return 0;let{ambiguousIsNarrow:C=!0,countAnsiEscapeCodes:g=!1}=I,F=B;if(!g&&(F.includes("\x1B")||F.includes("\x9B")))F=ng(F);if(F.length===0)return 0;if(/^[\u0020-\u007E]*$/.test(F))return F.length;let N=0,H={ambiguousAsWide:!C};for(let{segment:M}of vS.segment(F)){if(fS(M))continue;if(VS.test(M)||hS(M)){N+=2;continue}let U=bS(M),u=xS(U,H);if(u!==void 0){N+=u;continue}let X=U.codePointAt(0);N+=rg(X,H),N+=pS(U,H)}return N}var vS,mu,_S,VS,PS,mS;var A3=c(()=>{ow();rw();vS=new Intl.Segmenter,mu=/^(?:\p{Default_Ignorable_Code_Point}|\p{Control}|\p{Format}|\p{Mark}|\p{Surrogate})+$/v,_S=/^[\p{Default_Ignorable_Code_Point}\p{Control}\p{Format}\p{Mark}\p{Surrogate}]+/v,VS=/^\p{RGI_Emoji}$/v,PS=/^[\d#*]\u20E3$/,mS=/\p{Extended_Pictographic}/gu});function F1(B){let I=0;for(let C of B.split(`
228
+ `))I=Math.max(I,ME(C));return I}var M5=c(()=>{A3()});var ju,iS=(B)=>{if(B.length===0)return{width:0,height:0};let I=ju.get(B);if(I)return I;let C=F1(B),g=B.split(`
229
+ `).length,F={width:C,height:g};return ju.set(B,F),F},U5;var xu=c(()=>{M5();ju=new Map,U5=iS});function K2(B){if(!Number.isInteger(B))return!1;return B1(B)||Q1(B)}var L5=c(()=>{rw()});function u$(B){return B>=sS&&B<=tS||B===eS||B===A$}function K$(B){return B>=B$&&B<=Q$}function R$(B){return B>=I$&&B<=E$}function W$(B){return B>=C$&&B<=g$}function Y$(B){return B>=D$&&B<=F$}function P0(B,I){return{token:{type:"control",code:B},endIndex:I}}function Z$(B){if(L$.test(B))return!0;for(let I of B){let C=I.codePointAt(0);if(C===M$||C===U$)return!0}return!1}function BK(B){let I=0;for(let C of B){let g=C.codePointAt(0);if(K2(g))return 2;if(Y$(g))I++}if(I>=1)return 2;if(Z$(B))return 2;return 1}function X$(B){if(B.startsWith("\x9B"))return"\x9B";return`${R2}${X5}`}function w1(B,I){return`${B}${I.join(";")}${tu}`}function q$(B){let I=[],C=X$(B),g;if(B.startsWith(`${R2}${X5}`))g=B.slice(2,-1);else if(B.startsWith("\x9B"))g=B.slice(1,-1);else return I;let F=g.length===0?[String(pu)]:g.split(";"),N=0;while(N<F.length){let H=Number.parseInt(F[N],10);if(Number.isNaN(H)){N++;continue}if(H===pu){I.push({type:"reset"}),N++;continue}if(H===B3||H===w$){let u=Number.parseInt(F[N+1],10);if(u===G$&&N+H$<F.length){let k=w1(C,F.slice(N,N+iu));I.push({type:"start",code:k,endCode:lB.color.ansi(H===B3?u5:K5)}),N+=iu;continue}if(u===N$&&N+J$<F.length){let k=w1(C,F.slice(N,N+du));I.push({type:"start",code:k,endCode:lB.color.ansi(H===B3?u5:K5)}),N+=du;continue}let X=w1(C,[F[N]]);I.push({type:"start",code:X,endCode:lB.color.ansi(H===B3?u5:K5)}),N++;continue}if(AK.has(H)){I.push({type:"end",endCode:lB.color.ansi(H)}),N++;continue}let M=lB.codes.get(H);if(M!==void 0){let u=w1(C,[F[N]]);I.push({type:"start",code:u,endCode:lB.color.ansi(M)}),N++;continue}let U=w1(C,[F[N]]);I.push({type:"start",code:U,endCode:lB.reset.open}),N++}if(I.length===0)I.push({type:"reset"});return I}function k$(B,I){let C=B.codePointAt(I),g;if(C===G1){if(B[I+1]!==X5)return;g=I+2}else if(C===au)g=I+1;else return;let F=!0;for(let N=g;N<B.length;N++){let H=B.codePointAt(N);if(W$(H)){let U=B.slice(I,N+1);if(B[N]!==tu||!F)return P0(U,N+1);return{token:{type:"sgr",code:U,fragments:q$(U)},endIndex:N+1}}if(K$(H)){if(!u$(H))F=!1;continue}if(R$(H)){F=!1;continue}let M=N;return P0(B.slice(I,M),M)}return P0(B.slice(I),B.length)}function z$(B,I){let C,g,F=B.codePointAt(I);if(F===G1&&B.startsWith(Y5,I))C=Y5,g=nS;else if(F===E3&&B.startsWith(Z5,I))C=Z5,g=rS;else return;let N=B.indexOf(";",I+C.length);if(N===-1)return P0(B.slice(I),B.length);for(let H=N+1;H<B.length;H++){let M=B[H];if(M===W5){let U=B.slice(I,H+1),u=H===N+1?"close":"open";return{token:{type:"hyperlink",code:U,action:u,closePrefix:g,terminator:W5},endIndex:H+1}}if(M===R2&&B[H+1]===Q3){let U=B.slice(I,H+2),u=H===N+1?"close":"open";return{token:{type:"hyperlink",code:U,action:u,closePrefix:g,terminator:eu},endIndex:H+2}}if(M===I3){let U=B.slice(I,H+1),u=H===N+1?"close":"open";return{token:{type:"hyperlink",code:U,action:u,closePrefix:g,terminator:I3},endIndex:H+1}}}return P0(B.slice(I),B.length)}function O$(B,I){let C=B.codePointAt(I),g,F=!1;switch(C){case G1:{switch(B[I+1]){case su:{g=I+2,F=!0;break}case dS:case cS:case lS:case aS:{g=I+2;break}case Q3:return P0(eu,I+2);default:return}break}case E3:{g=I+1,F=!0;break}case cu:case lu:case nu:case ru:{g=I+1;break}case ou:return P0(I3,I+1);default:return}for(let N=g;N<B.length;N++){if(F&&B[N]===W5)return P0(B.slice(I,N+1),N+1);if(B[N]===R2&&B[N+1]===Q3)return P0(B.slice(I,N+2),N+2);if(B[N]===I3)return P0(B.slice(I,N+1),N+1)}return P0(B.slice(I),B.length)}function H1(B,I){let C=B.codePointAt(I);if(C===G1||C===E3){let F=z$(B,I);if(F)return F}let g=O$(B,I);if(g)return g;return k$(B,I)}function QK(B,I,C){while(I<B.length){let g=B.codePointAt(I);if(!N1.has(g))break;let F=H1(B,I);if(!F)break;C.push(F.token),I=F.endIndex}return I}function IK(B,I,C){let g=C.containing(I);if(!g||g.index!==I)return;return{token:{type:"character",value:g.segment,visibleWidth:BK(g.segment),isGraphemeContinuation:!1},endIndex:I+g.segment.length}}function S$(B){let I=[],C=0;while(C<B.length){let g=B.codePointAt(C);if(N1.has(g)){let N=H1(B,C);if(N){C=N.endIndex;continue}}let F=String.fromCodePoint(g);I.push({value:F,visibleWidth:1,isGraphemeContinuation:!1}),C+=F.length}return I}function $$(B){if(B.length===0)return;let I=B.map(({value:N})=>N).join(""),C=[],g=0;for(let N of B)C.push(g),g+=N.value.length;let F=0;for(let N of q5.segment(I)){while(F<B.length&&C[F]<N.index)F++;let H=F,M=!0;while(H<B.length&&C[H]<N.index+N.segment.length)B[H].visibleWidth=M?BK(N.segment):0,B[H].isGraphemeContinuation=!M,M=!1,H++;F=H}}function R5(B,{endCharacter:I=Number.POSITIVE_INFINITY}={}){let C=[],g=S$(B);$$(g);let F=0,N=0,H=0;while(F<B.length){let M=B.codePointAt(F);if(N1.has(M)){let W=H1(B,F);if(W){C.push(W.token),F=W.endIndex;continue}}let U=String.fromCodePoint(M),u=g[N],X=K2(M)?2:U.length;if(u)X=u.visibleWidth;let k={type:"character",value:U,visibleWidth:X,isGraphemeContinuation:u?u.isGraphemeContinuation:!1};if(C.push(k),F+=U.length,N++,H+=k.visibleWidth,H>=I){let W=g[N];if(!W||!W.isGraphemeContinuation){F=QK(B,F,C);break}}}return C}function EK(B,I){let C=`${B}${I}`,g=B.length;for(let F of q5.segment(C)){if(F.index===g)return!1;if(F.index>g)return!0}return!0}function y$(B,I,C,g){if(!C)return!1;let F=I,N=!1;while(F<B.length){let H=B.codePointAt(F);if(N1.has(H)){let U=H1(B,F);if(U){N=!0,F=U.endIndex;continue}}if(!N)return!1;let M=IK(B,F,g);if(!M)return!0;return EK(C,M.token.value)}return!1}function k5(B,{endCharacter:I=Number.POSITIVE_INFINITY}={}){let C=[],g=q5.segment(B),F=0,N=0,H,M=!1;while(F<B.length){let U=B.codePointAt(F);if(N1.has(U)){let X=H1(B,F);if(X){C.push(X.token),F=X.endIndex,M=!0;continue}}let u=IK(B,F,g);if(!u)return R5(B,{endCharacter:I});if(M&&H&&EK(H,u.token.value))return R5(B,{endCharacter:I});if(C.push(u.token),F=u.endIndex,N+=u.token.visibleWidth,M=!1,H=u.token.value,N>=I){if(y$(B,F,H,g))return R5(B,{endCharacter:I});F=QK(B,F,C);break}}return C}var G1=27,cu=144,lu=152,au=155,ou=156,E3=157,nu=158,ru=159,N1,R2="\x1B",W5="\x07",X5="[",su="]",dS="P",cS="X",lS="^",aS="_",tu="m",Q3="\\",eu,oS="\x9D",I3="\x9C",Y5,Z5,nS,rS,sS,tS,eS,A$,B$,Q$,I$,E$,C$,g$,D$=127462,F$=127487,pu=0,B3=38,u5=39,w$=48,K5=49,G$=5,N$=2,iu=3,du=5,H$=2,J$=4,M$=65039,U$=8419,L$,q5,AK;var CK=c(()=>{I1();L5();N1=new Set([G1,cu,lu,au,ou,E3,nu,ru]),eu=`${R2}${Q3}`,Y5=`${R2}${su}8;`,Z5=`${oS}8;`,nS=`${Y5};`,rS=`${Z5};`,sS="0".codePointAt(0),tS="9".codePointAt(0),eS=";".codePointAt(0),A$=":".codePointAt(0),B$="0".codePointAt(0),Q$="?".codePointAt(0),I$=" ".codePointAt(0),E$="/".codePointAt(0),C$="@".codePointAt(0),g$="~".codePointAt(0),L$=/\p{Emoji_Presentation}/u,q5=new Intl.Segmenter(void 0,{granularity:"grapheme"}),AK=new Set;for(let[,B]of lB.codes)AK.add(B)});function T$(B,I){for(let C of I)switch(C.type){case"reset":{B.clear();break}case"end":{B.delete(C.endCode);break}case"start":{B.delete(C.endCode),B.set(C.endCode,C.code);break}default:break}return B}function v$(B){return[...B.keys()].reverse().join("")}function _$(B){return`${B.closePrefix}${B.terminator}`}function V$(B,I){let C=!1,g=!1;for(let F of B.fragments){if(F.type==="start"){C=!0;continue}if(F.type==="reset"&&I.size>0){g=!0;continue}if(F.type==="end"&&I.has(F.endCode))g=!0}return g&&!C}function P$({token:B,isPastEnd:I,activeStyles:C,returnValue:g,include:F,activeHyperlink:N,position:H}){if(I&&!V$(B,C))return{activeStyles:C,activeHyperlink:N,position:H,returnValue:g,include:F};if(C=T$(C,B.fragments),F)g+=B.code;return{activeStyles:C,activeHyperlink:N,position:H,returnValue:g,include:F}}function m$({token:B,isPastEnd:I,activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}){if(I&&(B.action!=="close"||!g))return{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H};if(B.action==="open")g=B;else if(B.action==="close")g=void 0;if(H)N+=B.code;return{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}}function h$({token:B,isPastEnd:I,activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}){if(!I&&H)N+=B.code;return{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}}function b$({token:B,start:I,activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}){if(!H&&F>=I&&!B.isGraphemeContinuation){if(H=!0,N=[...C.values()].join(""),g)N+=g.code}if(H)N+=B.value;return F+=B.visibleWidth,{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}}function j$(B){let I=f$[B.token.type];if(!I){let{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}=B;return{activeStyles:C,activeHyperlink:g,position:F,returnValue:N,include:H}}return I(B)}function x$(B){let I=Array.from({length:B.length},()=>!1),C=!1;for(let g=B.length-1;g>=0;g--){let F=B[g];if(I[g]=C,F.type==="character")C=Boolean(F.isGraphemeContinuation)}return I}function N0(B,I,C){let g=k5(B,{endCharacter:C}),F=x$(g),N=new Map,H,M=0,U="",u=!1;for(let[X,k]of g.entries()){let W=C!==void 0&&M>=C;if(W&&k.type!=="character"&&F[X])W=!1;if(W&&k.type==="character"&&!k.isGraphemeContinuation)break;({activeStyles:N,activeHyperlink:H,position:M,returnValue:U,include:u}=j$({token:k,isPastEnd:W,start:I,activeStyles:N,activeHyperlink:H,position:M,returnValue:U,include:u}))}if(!u)return"";if(H)U+=_$(H);return U+=v$(N),U}var f$;var z5=c(()=>{CK();f$={sgr:P$,hyperlink:m$,control:h$,character:b$}});function C3(B,I,C){if(B.charAt(I)===" ")return I;let g=C?1:-1;for(let F=0;F<=3;F++){let N=I+F*g;if(B.charAt(N)===" ")return N}return I}function O5(B,I,C={}){let{position:g="end",space:F=!1,preferTruncationOnSpace:N=!1}=C,{truncationCharacter:H="\u2026"}=C;if(typeof B!=="string")throw TypeError(`Expected \`input\` to be a string, got ${typeof B}`);if(typeof I!=="number")throw TypeError(`Expected \`columns\` to be a number, got ${typeof I}`);if(I<1)return"";let M=ME(B);if(M<=I)return B;if(I===1)return H;let U={ESC:27,LEFT_BRACKET:91,LETTER_M:109},u=($)=>$>=48&&$<=57||$===59;function X($){let O=0;while(O+2<$.length&&$.codePointAt(O)===U.ESC&&$.codePointAt(O+1)===U.LEFT_BRACKET){let v=O+2;while(v<$.length&&u($.codePointAt(v)))v++;if(v<$.length&&$.codePointAt(v)===U.LETTER_M){O=v+1;continue}break}return O}function k($){let O=$.length;while(O>1&&$.codePointAt(O-1)===U.LETTER_M){let v=O-2;while(v>=0&&u($.codePointAt(v)))v--;if(v>=1&&$.codePointAt(v-1)===U.ESC&&$.codePointAt(v)===U.LEFT_BRACKET){O=v-1;continue}break}return O}function W($,O){let v=k($);if(v===$.length)return $+O;return $.slice(0,v)+O+$.slice(v)}function z($,O){let v=X(O);if(v===0)return $+O;return O.slice(0,v)+$+O.slice(v)}if(g==="start"){if(N){let O=C3(B,M-I+1,!0),v=N0(B,O,M).trim();return z(H,v)}if(F)H+=" ";let $=N0(B,M-I+ME(H),M);return z(H,$)}if(g==="middle"){if(F)H=` ${H} `;let $=Math.floor(I/2);if(N){let O=C3(B,$),v=C3(B,M-(I-$)+1,!0);return N0(B,0,O)+H+N0(B,v,M).trim()}return N0(B,0,$)+H+N0(B,M-(I-$)+ME(H),M)}if(g==="end"){if(N){let O=C3(B,I-1),v=N0(B,0,O);return W(v,H)}if(F)H=` ${H}`;let $=N0(B,0,I-ME(H));return W($,H)}throw Error(`Expected \`options.position\` to be either \`start\`, \`middle\` or \`end\`, got ${g}`)}var gK=c(()=>{z5();A3()});var DK,p$=(B,I,C)=>{let g=B+String(I)+String(C),F=DK[g];if(F)return F;let N=B;if(C==="wrap")N=E1(B,I,{trim:!1,hard:!0});if(C.startsWith("truncate")){let H="end";if(C==="truncate-middle")H="middle";if(C==="truncate-start")H="start";N=O5(B,I,{position:H})}return DK[g]=N,N},g3;var S5=c(()=>{D5();gK();DK={},g3=p$});var i$=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=48&&I<=63},d$=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=32&&I<=47},c$=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=64&&I<=126},GK=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=32&&I<=47},l$=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=48&&I<=126},NK=(B)=>{let I=B.codePointAt(0);return I!==void 0&&I>=128&&I<=159},FK=(B,I)=>{let C=I;while(C<B.length){let M=B[C];if(!i$(M))break;C++}let g=B.slice(I,C),F=C;while(C<B.length){let M=B[C];if(!d$(M))break;C++}let N=B.slice(F,C),H=B[C];if(H===void 0||!c$(H))return;return{endIndex:C+1,parameterString:g,intermediateString:N,finalCharacter:H}},wK=(B,I,C)=>{for(let g=I;g<B.length;g++){let F=B[g];if(C&&F==="\x07")return g+1;if(F==="\x9C")return g+1;if(F==="\x1B"){let N=B[g+1];if(N==="\x1B"){g++;continue}if(N==="\\")return g+2}}return},a$=(B,I)=>{let C=I;while(C<B.length){let N=B[C];if(!GK(N))break;C++}let g=B.slice(I,C),F=B[C];if(F===void 0||!l$(F))return;return{endIndex:C+1,intermediateString:g,finalCharacter:F}},o$=(B)=>{switch(B){case"]":return{type:"osc",allowBellTerminator:!0};case"P":return{type:"dcs",allowBellTerminator:!1};case"^":return{type:"pm",allowBellTerminator:!1};case"_":return{type:"apc",allowBellTerminator:!1};case"X":return{type:"sos",allowBellTerminator:!1};default:return}},n$=(B)=>{switch(B){case"\x9D":return{type:"osc",allowBellTerminator:!0};case"\x90":return{type:"dcs",allowBellTerminator:!1};case"\x9E":return{type:"pm",allowBellTerminator:!1};case"\x9F":return{type:"apc",allowBellTerminator:!1};case"\x98":return{type:"sos",allowBellTerminator:!1};default:return}},$5=(B)=>{if(B.includes("\x1B"))return!0;for(let I of B)if(NK(I))return!0;return!1},W2=(B,I,C,g)=>{if(g>C)B.push({type:"text",value:I.slice(C,g)});return B.push({type:"invalid",value:I.slice(g)}),B},HK=(B)=>{if(!$5(B))return[{type:"text",value:B}];let I=[],C=0;for(let g=0;g<B.length;){let F=B[g];if(F===void 0)break;if(F==="\x1B"){let H=B[g+1];if(H===void 0)return W2(I,B,C,g);if(H==="["){let u=FK(B,g+2);if(u===void 0)return W2(I,B,C,g);if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:"csi",value:B.slice(g,u.endIndex),parameterString:u.parameterString,intermediateString:u.intermediateString,finalCharacter:u.finalCharacter}),g=u.endIndex,C=g;continue}let M=o$(H);if(M!==void 0){let u=wK(B,g+2,M.allowBellTerminator);if(u===void 0)return W2(I,B,C,g);if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:M.type,value:B.slice(g,u)}),g=u,C=g;continue}let U=a$(B,g+1);if(U===void 0){if(GK(H))return W2(I,B,C,g);if(g>C)I.push({type:"text",value:B.slice(C,g)});g++,C=g;continue}if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:"esc",value:B.slice(g,U.endIndex),intermediateString:U.intermediateString,finalCharacter:U.finalCharacter}),g=U.endIndex,C=g;continue}if(F==="\x9B"){let H=FK(B,g+1);if(H===void 0)return W2(I,B,C,g);if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:"csi",value:B.slice(g,H.endIndex),parameterString:H.parameterString,intermediateString:H.intermediateString,finalCharacter:H.finalCharacter}),g=H.endIndex,C=g;continue}let N=n$(F);if(N!==void 0){let H=wK(B,g+1,N.allowBellTerminator);if(H===void 0)return W2(I,B,C,g);if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:N.type,value:B.slice(g,H)}),g=H,C=g;continue}if(F==="\x9C"){if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:"st",value:F}),g++,C=g;continue}if(NK(F)){if(g>C)I.push({type:"text",value:B.slice(C,g)});I.push({type:"c1",value:F}),g++,C=g;continue}g++}if(C<B.length)I.push({type:"text",value:B.slice(C)});return I};var r$,s$=(B)=>{if(!$5(B))return B;let I="";for(let C of HK(B)){if(C.type==="text"||C.type==="osc"){I+=C.value;continue}if(C.type==="csi"&&C.finalCharacter==="m"&&C.intermediateString===""&&r$.test(C.parameterString))I+=C.value}return I},JK;var MK=c(()=>{r$=/^[\d:;]*$/,JK=s$});var UK=(B)=>{let I="";for(let C=0;C<B.childNodes.length;C++){let g=B.childNodes[C];if(g===void 0)continue;let F="";if(g.nodeName==="#text")F=g.nodeValue;else{if(g.nodeName==="ink-text"||g.nodeName==="ink-virtual-text")F=UK(g);if(F.length>0&&typeof g.internal_transform==="function")F=g.internal_transform(F,C)}I+=F}return JK(I)},J1;var y5=c(()=>{MK();J1=UK});var M1=(B)=>{let I={nodeName:B,style:{},attributes:{},childNodes:[],parentNode:void 0,yogaNode:B==="ink-virtual-text"?void 0:vA.Node.create(),internal_accessibility:{}};if(B==="ink-text")I.yogaNode?.setMeasureFunc(t$.bind(null,I));return I},D3=(B,I)=>{if(I.parentNode)U1(I.parentNode,I);if(I.parentNode=B,B.childNodes.push(I),I.yogaNode)B.yogaNode?.insertChild(I.yogaNode,B.yogaNode.getChildCount());if(B.nodeName==="ink-text"||B.nodeName==="ink-virtual-text")F3(B)},T5=(B,I,C)=>{if(I.parentNode)U1(I.parentNode,I);I.parentNode=B;let g=B.childNodes.indexOf(C);if(g>=0){if(B.childNodes.splice(g,0,I),I.yogaNode)B.yogaNode?.insertChild(I.yogaNode,g)}else if(B.childNodes.push(I),I.yogaNode)B.yogaNode?.insertChild(I.yogaNode,B.yogaNode.getChildCount());if(B.nodeName==="ink-text"||B.nodeName==="ink-virtual-text")F3(B)},U1=(B,I)=>{if(I.yogaNode)I.parentNode?.yogaNode?.removeChild(I.yogaNode);I.parentNode=void 0;let C=B.childNodes.indexOf(I);if(C>=0)B.childNodes.splice(C,1);if(B.nodeName==="ink-text"||B.nodeName==="ink-virtual-text")F3(B)},v5=(B,I,C)=>{if(I==="internal_accessibility"){B.internal_accessibility=C;return}B.attributes[I]=C},_5=(B,I)=>{B.style=I},LK=(B)=>{let I={nodeName:"#text",nodeValue:B,yogaNode:void 0,parentNode:void 0,style:{}};return L1(I,B),I},t$=function(B,I){let C=B.nodeName==="#text"?B.nodeValue:J1(B),g=U5(C);if(g.width<=I)return g;if(g.width>=1&&I>0&&I<1)return g;let F=B.style?.textWrap??"wrap",N=g3(C,I,F);return U5(N)},uK=(B)=>{if(!B?.parentNode)return;return B.yogaNode??uK(B.parentNode)},F3=(B)=>{uK(B)?.markDirty()},L1=(B,I)=>{if(typeof I!=="string")I=String(I);B.nodeValue=I,F3(B)};var w3=c(async()=>{xu();S5();y5();await aC()});var Ay=(B,I)=>{if("position"in I)B.setPositionType(I.position==="absolute"?vA.POSITION_TYPE_ABSOLUTE:vA.POSITION_TYPE_RELATIVE)},By=(B,I)=>{if("margin"in I)B.setMargin(vA.EDGE_ALL,I.margin??0);if("marginX"in I)B.setMargin(vA.EDGE_HORIZONTAL,I.marginX??0);if("marginY"in I)B.setMargin(vA.EDGE_VERTICAL,I.marginY??0);if("marginLeft"in I)B.setMargin(vA.EDGE_START,I.marginLeft||0);if("marginRight"in I)B.setMargin(vA.EDGE_END,I.marginRight||0);if("marginTop"in I)B.setMargin(vA.EDGE_TOP,I.marginTop||0);if("marginBottom"in I)B.setMargin(vA.EDGE_BOTTOM,I.marginBottom||0)},Qy=(B,I)=>{if("padding"in I)B.setPadding(vA.EDGE_ALL,I.padding??0);if("paddingX"in I)B.setPadding(vA.EDGE_HORIZONTAL,I.paddingX??0);if("paddingY"in I)B.setPadding(vA.EDGE_VERTICAL,I.paddingY??0);if("paddingLeft"in I)B.setPadding(vA.EDGE_LEFT,I.paddingLeft||0);if("paddingRight"in I)B.setPadding(vA.EDGE_RIGHT,I.paddingRight||0);if("paddingTop"in I)B.setPadding(vA.EDGE_TOP,I.paddingTop||0);if("paddingBottom"in I)B.setPadding(vA.EDGE_BOTTOM,I.paddingBottom||0)},Iy=(B,I)=>{if("flexGrow"in I)B.setFlexGrow(I.flexGrow??0);if("flexShrink"in I)B.setFlexShrink(typeof I.flexShrink==="number"?I.flexShrink:1);if("flexWrap"in I){if(I.flexWrap==="nowrap")B.setFlexWrap(vA.WRAP_NO_WRAP);if(I.flexWrap==="wrap")B.setFlexWrap(vA.WRAP_WRAP);if(I.flexWrap==="wrap-reverse")B.setFlexWrap(vA.WRAP_WRAP_REVERSE)}if("flexDirection"in I){if(I.flexDirection==="row")B.setFlexDirection(vA.FLEX_DIRECTION_ROW);if(I.flexDirection==="row-reverse")B.setFlexDirection(vA.FLEX_DIRECTION_ROW_REVERSE);if(I.flexDirection==="column")B.setFlexDirection(vA.FLEX_DIRECTION_COLUMN);if(I.flexDirection==="column-reverse")B.setFlexDirection(vA.FLEX_DIRECTION_COLUMN_REVERSE)}if("flexBasis"in I)if(typeof I.flexBasis==="number")B.setFlexBasis(I.flexBasis);else if(typeof I.flexBasis==="string")B.setFlexBasisPercent(Number.parseInt(I.flexBasis,10));else B.setFlexBasis(Number.NaN);if("alignItems"in I){if(I.alignItems==="stretch"||!I.alignItems)B.setAlignItems(vA.ALIGN_STRETCH);if(I.alignItems==="flex-start")B.setAlignItems(vA.ALIGN_FLEX_START);if(I.alignItems==="center")B.setAlignItems(vA.ALIGN_CENTER);if(I.alignItems==="flex-end")B.setAlignItems(vA.ALIGN_FLEX_END)}if("alignSelf"in I){if(I.alignSelf==="auto"||!I.alignSelf)B.setAlignSelf(vA.ALIGN_AUTO);if(I.alignSelf==="flex-start")B.setAlignSelf(vA.ALIGN_FLEX_START);if(I.alignSelf==="center")B.setAlignSelf(vA.ALIGN_CENTER);if(I.alignSelf==="flex-end")B.setAlignSelf(vA.ALIGN_FLEX_END)}if("justifyContent"in I){if(I.justifyContent==="flex-start"||!I.justifyContent)B.setJustifyContent(vA.JUSTIFY_FLEX_START);if(I.justifyContent==="center")B.setJustifyContent(vA.JUSTIFY_CENTER);if(I.justifyContent==="flex-end")B.setJustifyContent(vA.JUSTIFY_FLEX_END);if(I.justifyContent==="space-between")B.setJustifyContent(vA.JUSTIFY_SPACE_BETWEEN);if(I.justifyContent==="space-around")B.setJustifyContent(vA.JUSTIFY_SPACE_AROUND);if(I.justifyContent==="space-evenly")B.setJustifyContent(vA.JUSTIFY_SPACE_EVENLY)}},Ey=(B,I)=>{if("width"in I)if(typeof I.width==="number")B.setWidth(I.width);else if(typeof I.width==="string")B.setWidthPercent(Number.parseInt(I.width,10));else B.setWidthAuto();if("height"in I)if(typeof I.height==="number")B.setHeight(I.height);else if(typeof I.height==="string")B.setHeightPercent(Number.parseInt(I.height,10));else B.setHeightAuto();if("minWidth"in I)if(typeof I.minWidth==="string")B.setMinWidthPercent(Number.parseInt(I.minWidth,10));else B.setMinWidth(I.minWidth??0);if("minHeight"in I)if(typeof I.minHeight==="string")B.setMinHeightPercent(Number.parseInt(I.minHeight,10));else B.setMinHeight(I.minHeight??0)},Cy=(B,I)=>{if("display"in I)B.setDisplay(I.display==="flex"?vA.DISPLAY_FLEX:vA.DISPLAY_NONE)},gy=(B,I)=>{if("borderStyle"in I){let C=I.borderStyle?1:0;if(I.borderTop!==!1)B.setBorder(vA.EDGE_TOP,C);if(I.borderBottom!==!1)B.setBorder(vA.EDGE_BOTTOM,C);if(I.borderLeft!==!1)B.setBorder(vA.EDGE_LEFT,C);if(I.borderRight!==!1)B.setBorder(vA.EDGE_RIGHT,C)}},Dy=(B,I)=>{if("gap"in I)B.setGap(vA.GUTTER_ALL,I.gap??0);if("columnGap"in I)B.setGap(vA.GUTTER_COLUMN,I.columnGap??0);if("rowGap"in I)B.setGap(vA.GUTTER_ROW,I.rowGap??0)},Fy=(B,I={})=>{Ay(B,I),By(B,I),Qy(B,I),Iy(B,I),Ey(B,I),Cy(B,I),gy(B,I),Dy(B,I)},V5;var KK=c(async()=>{await aC();V5=Fy});import wy from"ws";var G3;var RK=c(()=>{G3=global;G3.WebSocket||=wy;G3.window||=global;G3.self||=global;G3.window.__REACT_DEVTOOLS_COMPONENT_FILTERS__=[{type:1,value:7,isEnabled:!0},{type:2,value:"InternalApp",isEnabled:!0,isValid:!0},{type:2,value:"InternalAppContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdoutContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStderrContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalStdinContext",isEnabled:!0,isValid:!0},{type:2,value:"InternalFocusContext",isEnabled:!0,isValid:!0}]});var P5;var WK=c(()=>{P5={initialize(){},connectToDevTools(){}}});var Gy={};var YK=c(()=>{RK();WK();P5.initialize();P5.connectToDevTools()});async function Ny(){let I=(await import("fs")).readFileSync(new URL("../package.json",import.meta.url),"utf8");return JSON.parse(I)}var kK,u1,oC,zK,ZK=(B,I)=>{if(B===I)return;if(!B)return I;let C={},g=!1;for(let F of Object.keys(B))if(I?!Object.hasOwn(I,F):!0)C[F]=void 0,g=!0;if(I){for(let F of Object.keys(I))if(I[F]!==B[F])C[F]=I[F],g=!0}return g?C:void 0},XK=(B)=>{B?.unsetMeasureFunc(),B?.freeRecursive()},N3,m5,qK,H0;var H3=c(async()=>{N5();await B2([aC(),w3(),KK()]);kK=YA(Pu(),1),u1=YA(cw(),1),oC=YA(H5(),1),zK=YA(FB(),1);if(g1())try{await Promise.resolve().then(() => (YK(),Gy))}catch(B){if(B.code==="ERR_MODULE_NOT_FOUND")console.warn(`
230
+ The environment variable DEV is set to true, so Ink tried to import \`react-devtools-core\`,
231
+ but this failed as it was not installed. Debugging with React Devtools requires it.
232
+
233
+ To install use this command:
234
+
235
+ $ npm install --save-dev react-devtools-core
236
+ `.trim()+`
237
+ `);else throw B}N3=u1.NoEventPriority;qK=g1()?await Ny():{name:void 0,version:void 0},H0=kK.default({getRootHostContext:()=>({isInsideText:!1}),prepareForCommit:()=>null,preparePortalMount:()=>null,clearContainer:()=>!1,resetAfterCommit(B){if(typeof B.onComputeLayout==="function")B.onComputeLayout();if(B.isStaticDirty){if(B.isStaticDirty=!1,typeof B.onImmediateRender==="function")B.onImmediateRender();return}if(typeof B.onRender==="function")B.onRender()},getChildHostContext(B,I){let C=B.isInsideText,g=I==="ink-text"||I==="ink-virtual-text";if(C===g)return B;return{isInsideText:g}},shouldSetTextContent:()=>!1,createInstance(B,I,C,g){if(g.isInsideText&&B==="ink-box")throw Error("<Box> can\u2019t be nested inside <Text> component");let F=B==="ink-text"&&g.isInsideText?"ink-virtual-text":B,N=M1(F);for(let[H,M]of Object.entries(I)){if(H==="children")continue;if(H==="style"){if(_5(N,M),N.yogaNode)V5(N.yogaNode,M);continue}if(H==="internal_transform"){N.internal_transform=M;continue}if(H==="internal_static"){m5=C,N.internal_static=!0,C.isStaticDirty=!0,C.staticNode=N;continue}v5(N,H,M)}return N},createTextInstance(B,I,C){if(!C.isInsideText)throw Error(`Text string "${B}" must be rendered inside <Text> component`);return LK(B)},resetTextContent(){},hideTextInstance(B){L1(B,"")},unhideTextInstance(B,I){L1(B,I)},getPublicInstance:(B)=>B,hideInstance(B){B.yogaNode?.setDisplay(vA.DISPLAY_NONE)},unhideInstance(B){B.yogaNode?.setDisplay(vA.DISPLAY_FLEX)},appendInitialChild:D3,appendChild:D3,insertBefore:T5,finalizeInitialChildren(){return!1},isPrimaryRenderer:!0,supportsMutation:!0,supportsPersistence:!1,supportsHydration:!1,supportsMicrotasks:!0,scheduleMicrotask:queueMicrotask,scheduleCallback:oC.unstable_scheduleCallback,cancelCallback:oC.unstable_cancelCallback,shouldYield:oC.unstable_shouldYield,now:oC.unstable_now,scheduleTimeout:setTimeout,cancelTimeout:clearTimeout,noTimeout:-1,beforeActiveInstanceBlur(){},afterActiveInstanceBlur(){},detachDeletedInstance(){},getInstanceFromNode:()=>null,prepareScopeUpdate(){},getInstanceFromScope:()=>null,appendChildToContainer:D3,insertInContainerBefore:T5,removeChildFromContainer(B,I){U1(B,I),XK(I.yogaNode)},commitUpdate(B,I,C,g){if(m5&&B.internal_static)m5.isStaticDirty=!0;let F=ZK(C,g),N=ZK(C.style,g.style);if(!F&&!N)return;if(F)for(let[H,M]of Object.entries(F)){if(H==="style"){_5(B,M);continue}if(H==="internal_transform"){B.internal_transform=M;continue}if(H==="internal_static"){B.internal_static=!0;continue}v5(B,H,M)}if(N&&B.yogaNode)V5(B.yogaNode,N)},commitTextUpdate(B,I,C){L1(B,C)},removeChild(B,I){U1(B,I),XK(I.yogaNode)},setCurrentUpdatePriority(B){N3=B},getCurrentUpdatePriority:()=>N3,resolveUpdatePriority(){if(N3!==u1.NoEventPriority)return N3;return u1.DefaultEventPriority},maySuspendCommit(){return!0},NotPendingTransition:void 0,HostTransitionContext:zK.createContext(null),resetFormInstance(){},requestPostPaintCallback(){},shouldAttemptEagerTransition(){return!1},trackSchedulerEvent(){},resolveEventType(){return null},resolveEventTimeStamp(){return-1.1},preloadInstance(){return!0},startSuspendingCommit(){},suspendInstance(){},waitForCommitToBeReady(){return null},rendererPackageName:qK.name,rendererVersion:qK.version})});function h5(B,I=1,C={}){let{indent:g=" ",includeEmptyLines:F=!1}=C;if(typeof B!=="string")throw TypeError(`Expected \`input\` to be a \`string\`, got \`${typeof B}\``);if(typeof I!=="number")throw TypeError(`Expected \`count\` to be a \`number\`, got \`${typeof I}\``);if(I<0)throw RangeError(`Expected \`count\` to be at least 0, got \`${I}\``);if(typeof g!=="string")throw TypeError(`Expected \`options.indent\` to be a \`string\`, got \`${typeof g}\``);if(I===0)return B;let N=F?/^/gm:/^(?!\s*$)/gm;return B.replace(N,g.repeat(I))}var Hy=(B)=>{return B.getComputedWidth()-B.getComputedPadding(vA.EDGE_LEFT)-B.getComputedPadding(vA.EDGE_RIGHT)-B.getComputedBorder(vA.EDGE_LEFT)-B.getComputedBorder(vA.EDGE_RIGHT)},OK;var SK=c(async()=>{await aC();OK=Hy});var $K=pI((Ys,Jy)=>{Jy.exports={single:{topLeft:"\u250C",top:"\u2500",topRight:"\u2510",right:"\u2502",bottomRight:"\u2518",bottom:"\u2500",bottomLeft:"\u2514",left:"\u2502"},double:{topLeft:"\u2554",top:"\u2550",topRight:"\u2557",right:"\u2551",bottomRight:"\u255D",bottom:"\u2550",bottomLeft:"\u255A",left:"\u2551"},round:{topLeft:"\u256D",top:"\u2500",topRight:"\u256E",right:"\u2502",bottomRight:"\u256F",bottom:"\u2500",bottomLeft:"\u2570",left:"\u2502"},bold:{topLeft:"\u250F",top:"\u2501",topRight:"\u2513",right:"\u2503",bottomRight:"\u251B",bottom:"\u2501",bottomLeft:"\u2517",left:"\u2503"},singleDouble:{topLeft:"\u2553",top:"\u2500",topRight:"\u2556",right:"\u2551",bottomRight:"\u255C",bottom:"\u2500",bottomLeft:"\u2559",left:"\u2551"},doubleSingle:{topLeft:"\u2552",top:"\u2550",topRight:"\u2555",right:"\u2502",bottomRight:"\u255B",bottom:"\u2550",bottomLeft:"\u2558",left:"\u2502"},classic:{topLeft:"+",top:"-",topRight:"+",right:"|",bottomRight:"+",bottom:"-",bottomLeft:"+",left:"|"},arrow:{topLeft:"\u2198",top:"\u2193",topRight:"\u2199",right:"\u2190",bottomRight:"\u2196",bottom:"\u2191",bottomLeft:"\u2197",left:"\u2192"}}});var TK=pI((Zs,b5)=>{var yK=$K();b5.exports=yK;b5.exports.default=yK});function Ly(){let B=new Map;for(let[I,C]of Object.entries(AQ)){for(let[g,F]of Object.entries(C))AQ[g]={open:`\x1B[${F[0]}m`,close:`\x1B[${F[1]}m`},C[g]=AQ[g],B.set(F[0],F[1]);Object.defineProperty(AQ,I,{value:C,enumerable:!1})}return Object.defineProperty(AQ,"codes",{value:B,enumerable:!1}),AQ.color.close="\x1B[39m",AQ.bgColor.close="\x1B[49m",AQ.color.ansi=vK(),AQ.color.ansi256=_K(),AQ.color.ansi16m=VK(),AQ.bgColor.ansi=vK(10),AQ.bgColor.ansi256=_K(10),AQ.bgColor.ansi16m=VK(10),Object.defineProperties(AQ,{rgbToAnsi256:{value(I,C,g){if(I===C&&C===g){if(I<8)return 16;if(I>248)return 231;return Math.round((I-8)/247*24)+232}return 16+36*Math.round(I/255*5)+6*Math.round(C/255*5)+Math.round(g/255*5)},enumerable:!1},hexToRgb:{value(I){let C=/[a-f\d]{6}|[a-f\d]{3}/i.exec(I.toString(16));if(!C)return[0,0,0];let[g]=C;if(g.length===3)g=[...g].map((N)=>N+N).join("");let F=Number.parseInt(g,16);return[F>>16&255,F>>8&255,F&255]},enumerable:!1},hexToAnsi256:{value:(I)=>AQ.rgbToAnsi256(...AQ.hexToRgb(I)),enumerable:!1},ansi256ToAnsi:{value(I){if(I<8)return 30+I;if(I<16)return 90+(I-8);let C,g,F;if(I>=232)C=((I-232)*10+8)/255,g=C,F=C;else{I-=16;let M=I%36;C=Math.floor(I/36)/5,g=Math.floor(M/6)/5,F=M%6/5}let N=Math.max(C,g,F)*2;if(N===0)return 30;let H=30+(Math.round(F)<<2|Math.round(g)<<1|Math.round(C));if(N===2)H+=60;return H},enumerable:!1},rgbToAnsi:{value:(I,C,g)=>AQ.ansi256ToAnsi(AQ.rgbToAnsi256(I,C,g)),enumerable:!1},hexToAnsi:{value:(I)=>AQ.ansi256ToAnsi(AQ.hexToAnsi256(I)),enumerable:!1}}),AQ}var vK=(B=0)=>(I)=>`\x1B[${I+B}m`,_K=(B=0)=>(I)=>`\x1B[${38+B};5;${I}m`,VK=(B=0)=>(I,C,g)=>`\x1B[${38+B};2;${I};${C};${g}m`,AQ,Xs,My,Uy,qs,uy,m0;var PK=c(()=>{AQ={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}},Xs=Object.keys(AQ.modifier),My=Object.keys(AQ.color),Uy=Object.keys(AQ.bgColor),qs=[...My,...Uy];uy=Ly(),m0=uy});import f5 from"process";import Ky from"os";import mK from"tty";function J0(B,I=globalThis.Deno?globalThis.Deno.args:f5.argv){let C=B.startsWith("-")?"":B.length===1?"-":"--",g=I.indexOf(C+B),F=I.indexOf("--");return g!==-1&&(F===-1||g<F)}function Ry(){if("FORCE_COLOR"in BQ){if(BQ.FORCE_COLOR==="true")return 1;if(BQ.FORCE_COLOR==="false")return 0;return BQ.FORCE_COLOR.length===0?1:Math.min(Number.parseInt(BQ.FORCE_COLOR,10),3)}}function Wy(B){if(B===0)return!1;return{level:B,hasBasic:!0,has256:B>=2,has16m:B>=3}}function Yy(B,{streamIsTTY:I,sniffFlags:C=!0}={}){let g=Ry();if(g!==void 0)J3=g;let F=C?J3:g;if(F===0)return 0;if(C){if(J0("color=16m")||J0("color=full")||J0("color=truecolor"))return 3;if(J0("color=256"))return 2}if("TF_BUILD"in BQ&&"AGENT_NAME"in BQ)return 1;if(B&&!I&&F===void 0)return 0;let N=F||0;if(BQ.TERM==="dumb")return N;if(f5.platform==="win32"){let H=Ky.release().split(".");if(Number(H[0])>=10&&Number(H[2])>=10586)return Number(H[2])>=14931?3:2;return 1}if("CI"in BQ){if(["GITHUB_ACTIONS","GITEA_ACTIONS","CIRCLECI"].some((H)=>(H in BQ)))return 3;if(["TRAVIS","APPVEYOR","GITLAB_CI","BUILDKITE","DRONE"].some((H)=>(H in BQ))||BQ.CI_NAME==="codeship")return 1;return N}if("TEAMCITY_VERSION"in BQ)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(BQ.TEAMCITY_VERSION)?1:0;if(BQ.COLORTERM==="truecolor")return 3;if(BQ.TERM==="xterm-kitty")return 3;if(BQ.TERM==="xterm-ghostty")return 3;if(BQ.TERM==="wezterm")return 3;if("TERM_PROGRAM"in BQ){let H=Number.parseInt((BQ.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(BQ.TERM_PROGRAM){case"iTerm.app":return H>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(BQ.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(BQ.TERM))return 1;if("COLORTERM"in BQ)return 1;return N}function hK(B,I={}){let C=Yy(B,{streamIsTTY:B&&B.isTTY,...I});return Wy(C)}var BQ,J3,Zy,bK;var fK=c(()=>{({env:BQ}=f5);if(J0("no-color")||J0("no-colors")||J0("color=false")||J0("color=never"))J3=0;else if(J0("color")||J0("colors")||J0("color=true")||J0("color=always"))J3=1;Zy={stdout:hK({isTTY:mK.isatty(1)}),stderr:hK({isTTY:mK.isatty(2)})},bK=Zy});function jK(B,I,C){let g=B.indexOf(I);if(g===-1)return B;let F=I.length,N=0,H="";do H+=B.slice(N,g)+I+C,N=g+F,g=B.indexOf(I,N);while(g!==-1);return H+=B.slice(N),H}function xK(B,I,C,g){let F=0,N="";do{let H=B[g-1]==="\r";N+=B.slice(F,H?g-1:g)+I+(H?`\r
20
238
  `:`
21
- Press Enter, Esc, or q to close.
22
- `),await Ld((n)=>{if(n==="\r"||n===`
23
- `)return!0;if(n==="\x1B"||n==="q"||n==="Q")return!0;return},!0),process.stdout.write(`
24
- `)}var gd={};ai(gd,{showRegionInfo:()=>Ae,getNpmRegistry:()=>j,getMirrors:()=>zd,getLatestBunVersion:()=>$d,getBunMirrorDownloadUrl:()=>Be,getBunInstallCommand:()=>Ke,detectRegion:()=>Hi,MIRRORS:()=>Ao});import{readFileSync as zr,writeFileSync as $r,mkdirSync as gr}from"fs";import{join as bd}from"path";import{homedir as fd}from"os";function Mr(){let i=process.env.TAKO_REGION?.trim().toLowerCase();if(i==="cn"||i==="china")return"cn";if(i==="global"||i==="intl"||i==="international")return"global";return null}function Sr(){try{let i=zr(kd,"utf-8"),o=JSON.parse(i);if(o.region!=="cn"&&o.region!=="global")return null;if(typeof o.detectedAt!=="number")return null;if(Date.now()-o.detectedAt>Gr)return null;return o.region}catch{return null}}function Nd(i){try{gr(bd(fd(),".tako"),{recursive:!0}),$r(kd,JSON.stringify({region:i,detectedAt:Date.now()}),"utf-8")}catch{}}function qr(){try{let o=Intl.DateTimeFormat().resolvedOptions().timeZone||"";if(/^Asia\/(Shanghai|Urumqi|Chongqing|Harbin|Kashgar|Hong_Kong|Macau)$/i.test(o)){if(/^Asia\/(Shanghai|Urumqi|Chongqing|Harbin|Kashgar)$/i.test(o))return"cn"}}catch{}let i=(process.env.LANG||process.env.LC_ALL||process.env.LC_MESSAGES||"").toLowerCase();if(i.startsWith("zh_cn")||i.startsWith("zh-cn"))return"cn";return null}async function Qr(){if(sn)return sn;return sn=(async()=>{let o=[Pr,Jr,Kr,Br].map((n)=>n().then((e)=>e?e:Promise.reject(Error("null"))));try{return await Promise.race([Promise.any(o),new Promise((e,d)=>setTimeout(()=>d(Error("net-timeout")),1200))])}catch{return"cn"}})(),sn}async function Hi(){if(lo)return lo;let i=Mr();if(i)return lo=i,i;let o=Sr();if(o)return lo=o,o;let n=qr();if(n)return lo=n,Nd(n),n;let e=await Qr();return lo=e,Nd(e),e}async function Pr(){try{let i=await fetch("https://ip-api.com/json/?fields=countryCode",{signal:AbortSignal.timeout(1000)});if(!i.ok)return null;return(await i.json()).countryCode==="CN"?"cn":"global"}catch{return null}}async function Jr(){try{let i=await fetch("https://ipinfo.io/json",{signal:AbortSignal.timeout(1000)});if(!i.ok)return null;return(await i.json()).country==="CN"?"cn":"global"}catch{return null}}async function Kr(){try{let i=await fetch("https://api.ip.sb/geoip",{signal:AbortSignal.timeout(1000)});if(!i.ok)return null;return(await i.json()).country_code==="CN"?"cn":"global"}catch{return null}}async function Br(){let i=[async()=>{let o=await fetch("https://myip.ipip.net/json",{signal:AbortSignal.timeout(800)});if(!o.ok)return null;let n=await o.json(),e=n?.data?.location;if(Array.isArray(e)&&e[0]==="\u4E2D\u56FD")return"cn";let d=n?.data?.country_code;return d==="CN"?"cn":d?"global":null},async()=>{let o=await fetch("https://whois.pconline.com.cn/ipJson.jsp?json=true",{signal:AbortSignal.timeout(800)});if(!o.ok)return null;let n=await o.text();try{let e=JSON.parse(n.trim());if(e.proCode&&/^\d{6}$/.test(e.proCode))return"cn"}catch{}return null},async()=>{let o=await fetch("http://ip.3322.net/api/",{signal:AbortSignal.timeout(600)});if(!o.ok)return null;let n=(await o.text()).trim();if(/^\d+\.\d+\.\d+\.\d+$/.test(n))return"cn";return null}];try{return await Promise.any(i.map((o)=>o().then((n)=>n??Promise.reject())))}catch{return null}}async function zd(){let i=await Hi();return Ao[i]}async function j(){return(await zd()).npm}function Ke(){return"curl -fsSL https://bun.sh/install | bash"}async function $d(){let i=Ao.cn.bunBinary,o=await fetch(`${i}/`,{signal:AbortSignal.timeout(1e4)});if(!o.ok)throw Error(`Failed to fetch bun versions: ${o.status}`);let e=(await o.json()).map((d)=>d.name.replace(/\/$/,"")).filter((d)=>/^bun-v\d+\.\d+\.\d+$/.test(d)).sort((d,u)=>{let t=d.replace("bun-v","").split(".").map(Number),a=u.replace("bun-v","").split(".").map(Number);for(let r=0;r<3;r++)if(t[r]!==a[r])return a[r]-t[r];return 0});if(e.length===0)throw Error("No bun versions found on mirror");return e[0]}async function Be(){let i=Ao.cn.bunBinary,o=await $d(),e={darwin:"darwin",win32:"windows",linux:"linux"}[process.platform]||"linux",d=process.arch==="arm64"?"aarch64":"x64",u=`bun-${e}-${d}`;return`${i}/${o}/${u}.zip`}async function Ae(){let i=await Hi(),o=Ao[i];if(i==="cn")h.info(`${b("region.usingChinaMirror")} npm: ${o.npm}`);else h.info(b("region.usingGlobalMirror"))}var lo=null,sn=null,kd,Gr=2592000000,Ao;var mo=G(()=>{I();Ai();kd=bd(fd(),".tako","region.json"),Ao={cn:{npm:"https://registry.npmmirror.com",bunBinary:"https://registry.npmmirror.com/-/binary/bun"},global:{npm:"https://registry.npmjs.org",bunBinary:null}}});var Ar=class{constructor(i){this.baseUrl=i.baseUrl,this.headers={"Content-Type":"application/json",...i.defaultHeaders},this.maxRetries=i.maxRetries??3,this.initialRetryDelay=i.initialRetryDelay??500}async resolveHeaders(){let i={};for(let[o,n]of Object.entries(this.headers)){let e=await n;e!==null&&(i[o]=e)}return i}addHeader(i,o){this.headers[i]=o}async post(i,o,n,e){try{let d=await fetch(i,{method:"POST",headers:await this.resolveHeaders(),body:o?JSON.stringify(o??{}):void 0,keepalive:!0,...n});if(d.status===401)return null;if(d.status!==200&&d.status!==202)throw Error(`HTTP error! status: ${d.status}`);let u=await d.text();return u?JSON.parse(u):null}catch(d){if(e<this.maxRetries){let u=this.initialRetryDelay*2**e;return await new Promise((t)=>setTimeout(t,u)),this.post(i,o,n,e+1)}return console.error("Max retries reached:",d),null}}async fetch(i,o,n={}){let e=`${this.baseUrl}${i}`;return this.post(e,o,n,0)}},Gd=class{constructor(i){this.groups=[],this.queue=[],this.options=i;let o={"openpanel-client-id":i.clientId};i.clientSecret&&(o["openpanel-client-secret"]=i.clientSecret),o["openpanel-sdk-name"]=i.sdk||"node",o["openpanel-sdk-version"]=i.sdkVersion||"1.3.1",this.api=new Ar({baseUrl:i.apiUrl||"https://api.openpanel.dev",defaultHeaders:o})}init(){}ready(){this.options.disabled=!1,this.options.waitForProfile=!1,this.flush()}shouldQueue(i){return!!(this.options.disabled||this.options.waitForProfile&&!this.profileId||i.type==="replay"&&!this.sessionId)}addQueue(i){i.type==="track"&&(i.payload.properties={...i.payload.properties??{},__timestamp:new Date().toISOString()}),this.queue.push(i)}async send(i){if(this.options.filter&&!this.options.filter(i))return Promise.resolve();if(this.shouldQueue(i))return this.addQueue(i),Promise.resolve();let o=await this.api.fetch("/track",i,{keepalive:i.type!=="replay"});this.deviceId=o?.deviceId;let n=!!this.sessionId;return this.sessionId=o?.sessionId,!n&&this.sessionId&&this.flush(),o}setGlobalProperties(i){this.global={...this.global,...i}}track(i,o){this.log("track event",i,o);let{groups:n,profileId:e,...d}=o??{},u=[...new Set([...this.groups,...n??[]])];return this.send({type:"track",payload:{name:i,profileId:e??this.profileId,groups:u.length>0?u:void 0,properties:{...this.global??{},...d}}})}identify(i){if(this.log("identify user",i),i.profileId&&(this.profileId=i.profileId,this.flush()),i.profileId&&Object.keys(i).length>1)return this.send({type:"identify",payload:{...i,properties:{...this.global,...i.properties}}})}upsertGroup(i){return this.log("upsert group",i),this.send({type:"group",payload:i})}setGroup(i){return this.log("set group",i),this.groups.includes(i)||(this.groups=[...this.groups,i]),this.send({type:"assign_group",payload:{groupIds:[i],profileId:this.profileId}})}setGroups(i){return this.log("set groups",i),this.groups=[...new Set([...this.groups,...i])],this.send({type:"assign_group",payload:{groupIds:i,profileId:this.profileId}})}alias(i){}increment(i){return this.send({type:"increment",payload:i})}decrement(i){return this.send({type:"decrement",payload:i})}revenue(i,o){let n=o?.deviceId;return delete o?.deviceId,this.track("revenue",{...o??{},...n?{__deviceId:n}:{},__revenue:i})}getDeviceId(){return this.deviceId??""}getSessionId(){return this.sessionId??""}fetchDeviceId(){return Promise.resolve(this.deviceId??"")}clear(){this.profileId=void 0,this.groups=[],this.deviceId=void 0,this.sessionId=void 0}buildFlushPayload(i){if(i.type==="replay")return i.payload;if(i.type==="track"){let o="groups"in i.payload?i.payload.groups??[]:[],n=[...new Set([...this.groups,...o])];return{...i.payload,profileId:i.payload.profileId??this.profileId,groups:n.length>0?n:void 0}}return i.type==="identify"||i.type==="increment"||i.type==="decrement"?{...i.payload,profileId:i.payload.profileId??this.profileId}:i.type==="assign_group"?{...i.payload,profileId:i.payload.profileId??this.profileId}:i.payload}flush(){let i=[];for(let o of this.queue){if(this.shouldQueue(o)){i.push(o);continue}let n=this.buildFlushPayload(o);this.send({...o,payload:n})}this.queue=i}log(...i){this.options.debug&&console.log("[OpenPanel.dev]",...i)}};var Md=()=>{};function Sd(){if(!wo)wo=new Gd({clientId:Rr,clientSecret:Cr,apiUrl:Hr});return wo}function qd(i,o,n){let e=Sd().track(i,{profileId:o,...n}).catch(()=>{});Ln.push(e)}function Qd(i,o){let{email:n,...e}=o,d=Sd().identify({profileId:i,...typeof n==="string"?{email:n}:{},firstName:String(e.platform||""),properties:e}).catch(()=>{});Ln.push(d)}async function Pd(){if(await Promise.allSettled(Ln),Ln.length=0,wo){try{wo.flush()}catch{}wo=null}}var Rr="d65a6d4b-f702-4af6-98e7-bdb999e01d5f",Cr="sec_1e0ea34016bc3a5f8ef5",Hr="https://op.shiroha.tech/api",wo=null,Ln;var Jd=G(()=>{Md();Ln=[]});function Kd(){return{cli_version:Yr,platform:process.platform,arch:process.arch,locale:Di(),node_version:process.version}}function Bd(i){return Bun.hash(i).toString(16).slice(0,8)}var Yr="0.3.11";var Re=G(()=>{I()});async function Ad(){if(xo!==null)return xo;try{return xo=(await N()).telemetryEnabled!==!1,xo}catch{return xo=!1,!1}}async function Rd(){try{let i=await N();if(i.apiId)return i.apiId;let o=i.providers??[],n=i.defaultProviderId,e=n?o.find((d)=>d.id===n):o[0];if(e){if(e.apiId)return e.apiId;if(e.email)return e.email;return e.id}return"anonymous"}catch{return"anonymous"}}async function A(){if(Ce)return;try{if(!await Ad())return;let i=await N(),o=await Rd();if(o==="anonymous")return;let e=(i.providers??[]).find((u)=>u.email)?.email,d=await Hi();Qd(o,{...e?{email:e}:{},region:d,locale:Di(),first_seen_version:Zr,platform:process.platform,arch:process.arch}),Ce=!0}catch{}}function J(i,o){Tr(i,o).catch(()=>{})}async function Tr(i,o){try{if(!await Ad())return;let n=await Rd();qd(i,n,{...Kd(),...o})}catch{}}async function Ro(){await Pd()}function X(){xo=null,Ce=!1}var Zr="0.3.11",Ce=!1,xo=null;var pi=G(()=>{Jd();P();mo();I();Re();Re()});function Fr(i,o){let n=[];if(o.phase)n.push(o.phase);if(o.pkgCount>0)n.push(`\u5DF2\u5904\u7406 ${o.pkgCount} \u4E2A\u5305`);return n.push(`${o.elapsedSec}s`),`${i} \xB7 ${n.join(" \xB7 ")}`}async function hn(i,o,n){let e=Date.now(),d={phase:"\u6B63\u5728\u51C6\u5907",pkgCount:0,elapsedSec:0},u=[],t=()=>{d.elapsedSec=Math.floor((Date.now()-e)/1000),n(Fr(o,d))};t();let a=setInterval(t,1000),r=(c)=>{if(!c)return;if(u.push(c),Ir.test(c))d.phase="\u89E3\u6790\u4F9D\u8D56";else if(Cd.test(c)){d.phase="\u4E0B\u8F7D\u5E76\u89E3\u538B";let l=c.match(Cd);if(l)d.pkgCount=parseInt(l[1],10)}else if(Or.test(c))d.phase="\u5199\u5165 lockfile";else if(Xr.test(c))d.phase="\u5B8C\u6210";t()},p=async(c)=>{if(!c)return;let l=c.getReader(),m=new TextDecoder,w="";try{while(!0){let{done:y,value:v}=await l.read();if(y)break;w+=m.decode(v,{stream:!0}).replace(/\r/g,"");let s=w.split(`
25
- `);w=s.pop()??"";for(let L of s)r(L)}if(w)r(w)}finally{l.releaseLock()}};try{await Promise.all([p(i.stderr),p(i.stdout)])}finally{clearInterval(a)}return u.join(`
26
- `)}var Ir,Cd,Or,Xr;var He=G(()=>{Ir=/^Resolving dependencies/,Cd=/^Resolved, downloaded and extracted \[(\d+)\]/,Or=/^Saved lockfile/,Xr=/^(\d+) packages? installed/});import{join as R}from"path";function Vr(i){return i.startsWith(vi)}function Hd(i){return{...process.env,BUN_CONFIG_REGISTRY:i,BUN_INSTALL_CACHE_DIR:ee}}async function Ur(){try{if(!await Bun.file(C).exists())return null;let o=Bun.spawn([C,"--version"],{stdout:"pipe",stderr:"pipe"});if(await o.exited,o.exitCode!==0)return null;return(await new Response(o.stdout).text()).trim()}catch{return null}}async function Yd(){return await Ur()!==null}async function Er(){if(process.platform==="win32")return!0;try{let o=Bun.spawn(["which","unzip"],{stdout:"pipe",stderr:"pipe"});if(await o.exited,o.exitCode===0)return!0}catch{}h.warn("\u6B63\u5728\u5B89\u88C5\u7CFB\u7EDF\u4F9D\u8D56 (unzip)...");let i=["apt-get update -qq && apt-get install -y -qq unzip","yum install -y -q unzip","dnf install -y -q unzip","pacman -S --noconfirm unzip","apk add --quiet unzip"];for(let o of i)try{let n=Bun.spawn(["bash","-c",`sudo ${o} 2>/dev/null || ${o}`],{stdout:"pipe",stderr:"pipe"});if(await n.exited,n.exitCode===0)return!0}catch{}return!1}async function _r(i){let o=await import("fs/promises"),{join:n}=await import("path"),e=process.platform==="win32",d=e?"bun.exe":"bun",u=await Be();h.info(`\u4ECE npmmirror \u4E0B\u8F7D: ${u}`);let t=await fetch(u);if(!t.ok)throw Error(`\u4E0B\u8F7D\u5931\u8D25: ${t.status}`);let a=n(i,"bun-download.zip");await Bun.write(a,t);let r=n(i,"bin");if(await o.mkdir(r,{recursive:!0}),e){let c=`Expand-Archive -Path "${a}" -DestinationPath "${i}" -Force`,l=Bun.spawn(["powershell","-Command",c],{stdout:"pipe",stderr:"pipe"});if(await l.exited,l.exitCode!==0)throw Error("\u89E3\u538B\u5931\u8D25")}else{let c=Bun.spawn(["unzip","-oq",a,"-d",i],{stdout:"pipe",stderr:"pipe"});if(await c.exited,c.exitCode!==0)throw Error("\u89E3\u538B\u5931\u8D25")}let p=await o.readdir(i);for(let c of p){let l=n(i,c);if((await o.stat(l)).isDirectory()&&c.startsWith("bun-")){let w=n(l,d);try{if(await o.access(w),await o.rename(w,n(r,d)),!e)await o.chmod(n(r,d),493);await o.rm(l,{recursive:!0,force:!0});break}catch{}}}return await o.rm(a,{force:!0}),!0}async function Dr(){let i=_i();if(!await Er())return h.error("\u8BF7\u5148\u624B\u52A8\u5B89\u88C5 unzip: apt install unzip / yum install unzip"),!1;await Ae(),i.start("\u6B63\u5728\u5B89\u88C5 Tako \u4E13\u5C5E Bun \u8FD0\u884C\u65F6...");try{if(await(await import("fs/promises")).mkdir(vi,{recursive:!0}),await Hi()==="cn")await _r(vi);else if(process.platform==="win32"){let e=`$env:BUN_INSTALL="${vi}"; irm bun.sh/install.ps1 | iex`;if(await Bun.spawn(["powershell","-Command",e],{stdout:"inherit",stderr:"inherit"}).exited!==0)return i.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}else{let e=`BUN_INSTALL="${vi}" ${Ke()}`;if(await Bun.spawn(["bash","-c",e],{stdout:"inherit",stderr:"inherit"}).exited!==0)return i.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}return oo=C,i.stop("Tako \u4E13\u5C5E Bun \u5B89\u88C5\u5B8C\u6210"),h.info(`\u5B89\u88C5\u4F4D\u7F6E: ${vi}`),!0}catch(o){return i.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}}async function jr(){if(await Yd())return oo=C,!0;return h.warn("\u672A\u68C0\u6D4B\u5230 Tako \u4E13\u5C5E Bun\uFF0C\u6B63\u5728\u81EA\u52A8\u5B89\u88C5..."),h.info("\uFF08\u4E0D\u4F1A\u5F71\u54CD\u60A8\u7CFB\u7EDF\u4E2D\u5DF2\u5B89\u88C5\u7684 Node.js \u6216 Bun\uFF09"),await Dr()}async function hi(){if(oo){if(!Vr(oo))oo=C;return oo}if(await Yd())return oo=C,C;return C}async function Xe(i){try{let o=await j(),n=await fetch(`${o}/${i}/latest`);if(!n.ok)return null;return(await n.json()).version}catch{return null}}async function ip(i){return(await N()).installedClients[i.id]?.version||null}async function op(i,o){let n=R(i,"node_modules",o,"package.json");try{return await Bun.file(n).exists()}catch{return!1}}async function Zd(i){let o=gi(i.id);return op(o,i.package)}async function Td(i){let o=await ip(i);if(!o)return!0;let n=await Xe(i.package);if(!n)return!1;return o!==n}function Id(i){let{platform:o,arch:n}=process,e=`${o}-${n}`;for(let[d,u]of Object.entries(i))if(d.endsWith(e))return{pkg:d,version:u};return null}async function Od(i,o,n,e){let d=R(o,"node_modules",i.package,"package.json");try{let u=Bun.file(d);if(!await u.exists())return;let a=(await u.json()).optionalDependencies;if(!a||typeof a!=="object")return;let r=Id(a);if(!r)return;let c=process.platform==="win32"?`${i.command}.exe`:i.command,l=R(o,"node_modules",r.pkg,c),m=Bun.file(l);if(await m.exists()&&m.size>1024)return;h.info(`\u6B63\u5728\u5B89\u88C5\u5E73\u53F0\u5305 ${r.pkg}...`);for(let w of[r.version,"latest"]){let y=Bun.spawn([n,"add",`${r.pkg}@${w}`],{cwd:o,stdout:"pipe",stderr:"pipe",env:Hd(e)});if(await y.exited,y.exitCode===0)break;if(w==="latest"){let v=await new Response(y.stderr).text();h.warn(`\u5E73\u53F0\u5305\u5B89\u88C5\u5931\u8D25: ${v.slice(0,200)}`)}}}catch(u){h.warn(`\u5E73\u53F0\u5305\u68C0\u67E5\u5F02\u5E38: ${u instanceof Error?u.message:"\u672A\u77E5\u9519\u8BEF"}`)}}async function Te(i,o){let n=await import("fs/promises"),e=R(o,"node_modules",i.package,"package.json");try{let d=Bun.file(e);if(!await d.exists())return!1;let u=await d.json(),t=u.optionalDependencies;if(!t)return!0;let a=Id(t);if(!a)return h.warn(`\u672A\u627E\u5230\u5339\u914D\u7684\u5E73\u53F0\u5305 (${process.platform}-${process.arch})`),!1;let r=u.bin,p=typeof r==="string"?r:r?.[i.command];if(!p)return!1;let c=R(o,"node_modules",i.package,p),l=process.platform==="win32",m=l?`${i.command}.exe`:i.command,w=R(o,"node_modules",a.pkg,m),y=Bun.file(w);if(await y.exists()&&y.size>1024){if(await Bun.write(c,y),!l)await n.chmod(c,493);return!0}let v=R(o,"node_modules",i.package,"install.cjs");if(await Bun.file(v).exists()){h.info("\u6B63\u5728\u901A\u8FC7 postinstall \u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236...");let L=await hi(),W=Bun.spawn([L,v],{cwd:R(o,"node_modules",i.package),stdout:"pipe",stderr:"pipe"});if(await W.exited,W.exitCode!==0){let Q=await new Response(W.stderr).text();h.warn(`postinstall \u5931\u8D25: ${Q.slice(0,200)}`)}let M=Bun.file(c);if(await M.exists()&&M.size>1024){if(!l)await n.chmod(c,493);return!0}}h.info("\u6B63\u5728\u4ECE registry \u4E0B\u8F7D\u539F\u751F\u4E8C\u8FDB\u5236...");let s=await j();for(let L of[a.version,"latest"])try{let W=await fetch(`${s}/${a.pkg}/${L}`);if(!W.ok)continue;let Q=(await W.json()).dist?.tarball;if(!Q)continue;let ei=R(B,".tmp-extract-"+Date.now());await n.mkdir(ei,{recursive:!0});let Xi=R(ei,"pkg.tgz"),_n=Bun.spawn(["curl","-fsSL","-o",Xi,Q],{stdout:"pipe",stderr:"pipe"});if(await _n.exited,_n.exitCode!==0){let Ht=await new Response(_n.stderr).text();h.warn(`curl \u4E0B\u8F7D\u5931\u8D25: ${Ht.slice(0,200)}`),await n.rm(ei,{recursive:!0,force:!0}).catch(()=>{});continue}let Dn=Bun.file(Xi).size;if(Dn<1024){h.warn(`\u4E0B\u8F7D\u6587\u4EF6\u5F02\u5E38 (${Dn} bytes, url: ${Q.slice(0,100)})`),await n.rm(ei,{recursive:!0,force:!0}).catch(()=>{});continue}let jn=Bun.spawn(["tar","xzf",Xi,"-C",ei,`package/${m}`],{stdout:"pipe",stderr:"pipe"});await jn.exited;let Rt=R(ei,"package",m),ie=Bun.file(Rt);if(await ie.exists()&&ie.size>1024){if(await Bun.write(c,ie),!l)await n.chmod(c,493);return await n.rm(ei,{recursive:!0,force:!0}).catch(()=>{}),!0}let Ct=await new Response(jn.stderr).text();h.warn(`tar \u63D0\u53D6\u5931\u8D25 (tgz=${Dn} bytes, exit=${jn.exitCode}): ${Ct.slice(0,200)}`),await n.rm(ei,{recursive:!0,force:!0}).catch(()=>{})}catch(W){h.warn(`\u4E0B\u8F7D\u5931\u8D25: ${W instanceof Error?W.message:"\u672A\u77E5\u9519\u8BEF"}`)}if(s!=="https://registry.npmjs.org")try{let L=`https://registry.npmjs.org/${a.pkg}/-/${a.pkg.split("/").pop()}-${a.version}.tgz`;h.info("\u6B63\u5728\u4ECE npmjs.org \u76F4\u8FDE\u4E0B\u8F7D...");let W=R(B,".tmp-extract-"+Date.now());await n.mkdir(W,{recursive:!0});let M=R(W,"pkg.tgz"),Q=Bun.spawn(["curl","-fsSL","-o",M,L],{stdout:"pipe",stderr:"pipe"});if(await Q.exited,Q.exitCode===0&&Bun.file(M).size>1024){await Bun.spawn(["tar","xzf",M,"-C",W,`package/${m}`],{stdout:"pipe",stderr:"pipe"}).exited;let Xi=Bun.file(R(W,"package",m));if(await Xi.exists()&&Xi.size>1024){if(await Bun.write(c,Xi),!l)await n.chmod(c,493);return await n.rm(W,{recursive:!0,force:!0}).catch(()=>{}),!0}}await n.rm(W,{recursive:!0,force:!0}).catch(()=>{})}catch{}return!1}catch(d){return h.warn(`\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236\u5931\u8D25: ${d instanceof Error?d.message:"\u672A\u77E5\u9519\u8BEF"}`),!1}}async function Ie(i,o=!1){let n=_i(),e=gi(i.id);try{if(!await jr())return{success:!1,error:"Tako \u4E13\u5C5E Bun \u5B89\u88C5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u6216\u624B\u52A8\u5220\u9664 ~/.tako/bun \u76EE\u5F55\u540E\u91CD\u8BD5"};let d=await Zd(i),u=o||await Td(i);if(d&&!u)return{success:!0};let t=d?"\u66F4\u65B0":"\u5B89\u88C5",a=`\u6B63\u5728${t} ${i.name}`;n.start(a);let r=await import("fs/promises");await r.mkdir(e,{recursive:!0});let p=R(e,"package.json");if(!await Bun.file(p).exists())await Bun.write(p,JSON.stringify({name:`tako-${i.id}`,private:!0,dependencies:{}},null,2));let l=await hi(),m=await j(),w=await Hi();if(h.info(`\u7F51\u7EDC\u73AF\u5883: ${w==="cn"?"\u56FD\u5185\uFF08npmmirror\uFF09":"\u6D77\u5916"} | registry: ${m}`),d){let M=R(e,"bun.lock");await r.rm(M,{force:!0}).catch(()=>{})}let y=Bun.spawn([l,"add",`${i.package}@latest`],{cwd:e,stdout:"pipe",stderr:"pipe",env:Hd(m)}),v=await hn(y,a,(M)=>n.update(M));if(await y.exited!==0){if(n.stop(`${t} ${i.name} \u5931\u8D25`),!d)await r.rm(p,{force:!0}).catch(()=>{});return{success:!1,error:v||"\u672A\u77E5\u9519\u8BEF"}}await Od(i,e,l,m),await Te(i,e);let L=await Xe(i.package),W=(await N()).installedClients[i.id]?.version;if(L){let M=await N();if(M.installedClients[i.id]={version:L,installedAt:new Date().toISOString()},await Vi(M),d&&W)J("client_updated",{client_id:i.id,from_version:W,to_version:L});else J("client_installed",{client_id:i.id,client_version:L})}return n.stop(`${i.name} ${t}\u5B8C\u6210`),{success:!0}}catch(d){return n.stop("\u64CD\u4F5C\u5931\u8D25"),{success:!1,error:d instanceof Error?d.message:"\u672A\u77E5\u9519\u8BEF"}}}async function Ye(i){try{let o=Bun.file(i);if(!await o.exists())return!0;if(o.size<100)return!0;let e=new Uint8Array(await o.slice(0,4).arrayBuffer());if(e[0]===127&&e[1]===69&&e[2]===76&&e[3]===70)return!1;if(e[0]===254||e[0]===207||e[0]===206||e[0]===202)return!1;if(e[0]===77&&e[1]===90)return!1;return!0}catch{return!0}}async function Ze(i){if(i.runtime!=="native")return;let o=gi(i.id),n=R(o,"node_modules",i.package,"package.json");try{let e=Bun.file(n);if(!await e.exists())return;let u=(await e.json()).bin;if(!u)return;let t=typeof u==="string"?u:u[i.command];if(!t)return;let a=R(o,"node_modules",i.package,t);if(!await Ye(a))return;h.info("\u6B63\u5728\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236...");let r=await hi(),p=await j();if(await Od(i,o,r,p),!await Te(i,o)||await Ye(a)){if(h.warn("\u539F\u751F\u4E8C\u8FDB\u5236\u4FEE\u590D\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u65B0\u5B89\u88C5..."),await(await import("fs/promises")).rm(o,{recursive:!0,force:!0}),(await Ie(i)).success)if(await Te(i,o),await Ye(a))h.warn("\u91CD\u65B0\u5B89\u88C5\u540E\u4ECD\u65E0\u6CD5\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236");else h.success("\u91CD\u65B0\u5B89\u88C5\u5B8C\u6210")}else h.success("\u539F\u751F\u4E8C\u8FDB\u5236\u5B89\u88C5\u5B8C\u6210")}catch{}}async function Xd(i){if(!await Zd(i)){let e=await Ie(i);if(e.success)await Ze(i);return e}if(await Ze(i),await Td(i)){let e=await Xe(i.package),d=(await N()).installedClients[i.id]?.version||"\u672A\u77E5",u=e?`${d} \u2192 ${e}`:"\u6709\u65B0\u7248\u672C\u53EF\u7528";if(h.info(`${i.name} \u53D1\u73B0\u66F4\u65B0: ${u}`),await np(i.id))return h.info("\u4ECA\u65E5\u5DF2\u8DF3\u8FC7\u66F4\u65B0\uFF0C\u4F7F\u7528\u5F53\u524D\u7248\u672C"),{success:!0};if(!await hd({message:`\u662F\u5426\u66F4\u65B0 ${i.name}\uFF1F`,defaultValue:!1}))return await ep(i.id),h.info("\u8DF3\u8FC7\u66F4\u65B0\uFF0C\u4F7F\u7528\u5F53\u524D\u7248\u672C"),{success:!0};let a=await Ie(i,!0);if(a.success)await Ze(i);return a}return{success:!0}}async function np(i){try{let o=Bun.file(Oe);if(!await o.exists())return!1;let e=(await o.json())[i];if(!e)return!1;let d=new Date().toISOString().slice(0,10);return e===d}catch{return!1}}async function ep(i){try{let o={},n=Bun.file(Oe);if(await n.exists())try{o=await n.json()}catch{}o[i]=new Date().toISOString().slice(0,10),await Bun.write(Oe,JSON.stringify(o))}catch{}}var oo=null,Oe;var Co=G(()=>{Ai();T();P();mo();pi();He();Oe=R(B,".update-dismissed.json")});import{join as Zi}from"path";import{homedir as Sp}from"os";import{mkdir as qp,readFile as zn,writeFile as t0,rename as a0,readdir as xu,rm as Qp,appendFile as yu}from"fs/promises";function mi(i){return Zi(e0,i)}function vu(i){return Zi(mi(i),"meta.json")}function V(i){return Zi(mi(i),"log.ndjson")}function Oo(i){return Zi(mi(i),"approvals")}function d0(i,o){return Zi(Oo(i),`${o}.req.json`)}function u0(i,o){return Zi(Oo(i),`${o}.resp.json`)}async function Xo(i){await qp(i,{recursive:!0})}async function su(i){await Xo(mi(i.sid)),await U(i),await yu(V(i.sid),"")}async function bo(i){try{let o=await zn(vu(i),"utf-8");return JSON.parse(o)}catch{return null}}async function U(i){let o=mi(i.sid);await Xo(o);let n=Zi(o,"meta.json.tmp"),e={};for(let[d,u]of Object.entries(i)){if(d.startsWith("_"))continue;e[d]=u}await t0(n,JSON.stringify(e,null,2),"utf-8"),await a0(n,vu(i.sid))}async function wi(i,o){await yu(V(i),JSON.stringify(o)+`
27
- `,"utf-8")}async function $n(){await Xo(e0);let i=await xu(e0,{withFileTypes:!0}),o=[];for(let n of i){if(!n.isDirectory())continue;let e=await bo(n.name);if(e)o.push(e)}return o.sort((n,e)=>e.lastActiveAt-n.lastActiveAt),o}async function gn(i,o){let n;try{n=await zn(V(i),"utf-8")}catch{return[]}let d=n.split(`
28
- `).filter(Boolean).slice(-o),u=[];for(let t of d)try{u.push(JSON.parse(t))}catch{}return u}async function r0(i){try{await Qp(mi(i),{recursive:!0,force:!0})}catch{}}async function Lu(i,o){await Xo(Oo(i));let n=d0(i,o.approvalId)+".tmp";await t0(n,JSON.stringify(o,null,2),"utf-8"),await a0(n,d0(i,o.approvalId))}async function Pp(i,o){try{return JSON.parse(await zn(d0(i,o),"utf-8"))}catch{return null}}async function Gn(i,o,n){await Xo(Oo(i));let e=u0(i,o)+".tmp";await t0(e,JSON.stringify(n,null,2),"utf-8"),await a0(e,u0(i,o))}async function Fo(i,o){try{return JSON.parse(await zn(u0(i,o),"utf-8"))}catch{return null}}async function Vo(i){try{let o=await xu(Oo(i)),n=[];for(let e of o){if(!e.endsWith(".req.json"))continue;let d=e.slice(0,-9),u=await Pp(i,d);if(!u)continue;if(!await Fo(i,d))n.push(u)}return n.sort((e,d)=>e.requestedAt-d.requestedAt),n}catch{return[]}}var e0;var Ti=G(()=>{e0=Zi(Sp(),".tako","agent-sessions")});import{spawn as Jp}from"child_process";async function Mn(i,o,n){await wi(i,o),n?.onFrame?.(o)}function Kp(i,o){let n=[],e=Ni();if(i?.type==="assistant"&&i?.message?.content){for(let d of i.message.content)if(d?.type==="text"&&typeof d.text==="string")n.push({ts:e,kind:"text_delta",text:d.text,itemId:i.message.id});else if(d?.type==="tool_use")n.push({ts:e,kind:"tool_use",name:d.name??"?",input:d.input,itemId:d.id});else if(d?.type==="thinking"&&typeof d.thinking==="string")n.push({ts:e,kind:"reasoning_delta",text:d.thinking})}else if(i?.type==="user"&&i?.message?.content){for(let d of i.message.content)if(d?.type==="tool_result")n.push({ts:e,kind:"tool_result",itemId:d.tool_use_id,output:d.content})}else if(i?.type==="result"){if(i.is_error)n.push({ts:e,kind:"error",message:typeof i.result==="string"?i.result:"claude reported error",raw:i});n.push({ts:e,kind:"turn_completed",turnId:o,stopReason:i.stop_reason,usage:i.usage})}else if(i?.type==="stream_event"&&i?.event?.delta?.thinking)n.push({ts:e,kind:"reasoning_delta",text:String(i.event.delta.thinking)});return n}function Wu(i,o){return i.__env=o,i}var Ni=()=>Date.now(),Uo,hu;var Nu=G(()=>{Ti();T();Co();Uo=new Map,hu={backend:"claude",async start(i){let o={sid:i.sid,backend:"claude",name:i.name,model:i.model,workdir:i.workdir,status:"idle",turnCount:0,createdAt:Ni(),lastActiveAt:Ni(),providerId:i.providerId};return await wi(o.sid,{ts:Ni(),kind:"session_started",sid:o.sid,backend:"claude",model:o.model}),o},async send(i,o,n){let e=E("claude-code");if(!e)throw Error("claude-code client \u672A\u6CE8\u518C");let d=await to(e);if(!d)d=ao(e);let u=i.turnCount===0,t=["--print","--input-format","stream-json","--output-format","stream-json","--verbose"];if(u)t.push("--session-id",i.sid);else t.push("--resume",i.sid);if(i.model)t.push("--model",i.model);t.push("--permission-mode","bypassPermissions");let a={...process.env,...i.__env};delete i.__env;let r=e.runtime==="native"?d:await hi(),p=e.runtime==="native"?t:[d,...t],c=Jp(r,p,{env:a,cwd:i.workdir,stdio:["pipe","pipe","pipe"]});Uo.set(i.sid,{pid:c.pid,kill:(s)=>c.kill(s??"SIGINT")});let l={type:"user",message:{role:"user",content:[{type:"text",text:o}]}};c.stdin.write(JSON.stringify(l)+`
29
- `),c.stdin.end(),i.status="running",i.lastActiveAt=Ni(),await U(i);let m="";c.stderr.on("data",(s)=>{m+=s.toString()});let w=`t${i.turnCount+1}`;await Mn(i.sid,{ts:Ni(),kind:"turn_started",turnId:w},n);let y="";c.stdout.on("data",async(s)=>{y+=s.toString();let L;while((L=y.indexOf(`
30
- `))>=0){let W=y.slice(0,L).trim();if(y=y.slice(L+1),!W)continue;try{let M=JSON.parse(W);for(let Q of Kp(M,w))await Mn(i.sid,Q,n)}catch{}}});let v=await new Promise((s)=>{c.on("close",(L)=>s(L??0))});if(Uo.delete(i.sid),v===0)i.turnCount++;if(i.lastActiveAt=Ni(),i.status="idle",v!==0)await Mn(i.sid,{ts:Ni(),kind:"error",message:`claude exited ${v}${m?`: ${m.slice(0,500)}`:""}`},n);return await U(i),i},async cancel(i){let o=Uo.get(i.sid);if(o)o.kill("SIGINT")},async close(i){let o=Uo.get(i.sid);if(o)o.kill("SIGTERM");Uo.delete(i.sid),await Mn(i.sid,{ts:Ni(),kind:"session_closed"}),i.status="closed",i.lastActiveAt=Ni(),await U(i)},async isAlive(){return!0}}});import{join as ku,isAbsolute as Bp,resolve as p0}from"path";import{readFile as Ap,writeFile as Rp}from"fs/promises";import{homedir as Cp}from"os";function Hp(i){if(!i)return"";let o=i.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return o?o[1]:i}function bu(i,o){if(!i)return!1;let n=Bp(i)?p0(i):p0(o,i),e=p0(o);return n===e||n.startsWith(e+"/")}function zu(i,o,n,e){if(o==="item/commandExecution/requestApproval"||o==="execCommandApproval"){let d=String(n?.command??""),u=Hp(d);for(let t of i.exec_deny??[])try{if(new RegExp(t).test(u))return{kind:"auto_deny",reason:`policy deny: /${t}/`}}catch{}for(let t of i.exec_allow??[])try{if(new RegExp(t).test(u))return{kind:"auto_allow",reason:`policy allow: /${t}/`}}catch{}return{kind:"ask"}}if(o==="item/fileChange/requestApproval"||o==="applyPatchApproval"){let d=Yp(n);for(let t of d)for(let a of i.file_deny??[])try{if(new RegExp(a).test(t))return{kind:"auto_deny",reason:`file deny: ${t} matches /${a}/`}}catch{}if(i.strict_workdir){for(let t of d)if(!bu(t,e))return{kind:"auto_deny",reason:`file outside workdir: ${t}`}}let u=d.length>0;for(let t of d){let a=!1;for(let r of i.file_allow??[])try{if(new RegExp(r).test(t)){a=!0;break}}catch{}if(!a){u=!1;break}}if(u)return{kind:"auto_allow",reason:"all paths matched file_allow"};if(!i.strict_workdir&&d.length>0&&d.every((t)=>bu(t,e)))return{kind:"auto_allow",reason:"all paths inside workdir (non-strict)"};return{kind:"ask"}}return{kind:"ask"}}function Yp(i){let o=[],n=(e)=>{if(typeof e==="string"&&e.length>0&&e.length<1024)o.push(e)};if(n(i?.path),Array.isArray(i?.changes))for(let e of i.changes)n(e?.path),n(e?.target);if(Array.isArray(i?.files))for(let e of i.files)n(e?.path??e);if(typeof i?.patch==="string")for(let e of i.patch.split(`
31
- `)){let d=e.match(/^\+\+\+\s+b\/(.*)$/);if(d)o.push(d[1])}return Array.from(new Set(o))}function m0(i){return ku(mi(i),"policy.json")}async function c0(i){try{return JSON.parse(await Ap(i,"utf-8"))}catch{return null}}async function Sn(i){let o=await c0(Zp),n=await c0(m0(i));return fu(fu(l0,o),n)}function fu(i,o){if(!o)return i;return{exec_allow:[...i.exec_allow??[],...o.exec_allow??[]],exec_deny:[...i.exec_deny??[],...o.exec_deny??[]],file_allow:[...i.file_allow??[],...o.file_allow??[]],file_deny:[...i.file_deny??[],...o.file_deny??[]],strict_workdir:o.strict_workdir??i.strict_workdir}}async function qn(i){return await c0(m0(i))??{}}async function Qn(i,o){await Rp(m0(i),JSON.stringify(o,null,2),"utf-8")}async function $u(i,o){let n=await qn(i),e=n.exec_allow??[];if(!e.includes(o))e.push(o);n.exec_allow=e,await Qn(i,n)}var l0,Zp;var w0=G(()=>{Ti();l0={exec_allow:["^\\s*(ls|pwd|whoami|hostname|date|uname|env|echo|printenv)(\\s|$)","^\\s*(cat|head|tail|less|more|file|stat)\\s+","^\\s*(grep|rg|ag|egrep|fgrep)\\s+","^\\s*find\\s+\\S+\\s+(-name|-type|-maxdepth|-path)","^\\s*(wc|awk|sed -n)\\s+","^\\s*(which|type|whereis|command -v)\\s+","^\\s*(ps|df|du|free|top -b|iostat|vmstat)(\\s|$)","^\\s*tree(\\s|$)","^\\s*git\\s+(status|log|diff|show|branch|remote|config --(get|list)|rev-parse|describe|ls-files|ls-tree|cat-file|tag\\s+--list|stash list|reflog|fetch)(\\s|$)","^\\s*(npm|yarn|pnpm|bun)\\s+(list|outdated|info|view|search|--version)(\\s|$)","^\\s*(node|bun|python|python3|deno|go|cargo|rustc|java|javac)\\s+(--version|-V|version)(\\s|$)","^\\s*pip\\s+(list|show|--version)(\\s|$)","^\\s*cargo\\s+(check|tree|metadata)(\\s|$)","^\\s*(tsc|tsc --noEmit)(\\s|$)","^\\s*(eslint|prettier|stylelint|tslint)\\s+","^\\s*(jest|vitest|mocha|pytest|bun test|cargo test)(\\s|$)","^\\s*npm run (lint|test|build|typecheck|check)"],exec_deny:["\\bsudo\\b","\\bsu\\s+-","\\bdoas\\b","\\brm\\s+-[rRf]+\\s+(/$|/\\s|/[^./])","\\brm\\s+-[rRf]+\\s+\\$HOME(/?)?\\s","\\brm\\s+-[rRf]+\\s+~(/?)?\\s","\\bdd\\s+if=.*\\s+of=/dev/","\\bmkfs\\.","\\bshred\\b","\\bdiskutil\\s+(erase|format)","\\bcurl\\s+[^|]*\\|\\s*(sh|bash|zsh|fish)","\\bwget\\s+[^|]*\\|\\s*(sh|bash|zsh|fish)","\\bcurl\\s+.*-o\\s+/(usr|etc|bin|sbin|lib)/",":\\(\\)\\s*\\{","\\bchmod\\s+-R\\s+[0-7]+\\s+/","\\bssh-keygen\\s+-t","\\bsshpass\\b","\\b(passwd|chpasswd)\\b","\\bgit\\s+push\\s+.*--force"],file_allow:[],file_deny:["/\\.ssh/","/\\.aws/","/\\.gnupg/","\\.env(\\.|$)","/etc/(passwd|shadow|sudoers)","/(usr|etc|bin|sbin)/"],strict_workdir:!1};Zp=ku(Cp(),".tako","agent-policy.json")});import{spawn as Tp}from"child_process";import{writeFile as Ip,unlink as Op}from"fs/promises";import{join as gu}from"path";class qu{proc;buf="";nextId=1;pending=new Map;notifyHandlers=[];serverReqHandler=null;closed=!1;constructor(i){this.proc=i,i.stdout?.on("data",(o)=>this.onData(o)),i.on("close",()=>this.onClose()),i.on("error",()=>this.onClose())}onData(i){this.buf+=i.toString("utf-8");let o;while((o=this.buf.indexOf(`
32
- `))>=0){let n=this.buf.slice(0,o).trim();if(this.buf=this.buf.slice(o+1),!n)continue;try{this.dispatch(JSON.parse(n))}catch{}}}dispatch(i){if(i&&typeof i==="object"){if(i.id!==void 0&&(("result"in i)||("error"in i))){let o=this.pending.get(i.id);if(o)if(this.pending.delete(i.id),i.error)o.reject(Error(JSON.stringify(i.error)));else o.resolve(i.result);return}if(i.method&&i.id!==void 0){this.serverReqHandler?.(i.method,i.id,i.params);return}if(i.method)for(let o of this.notifyHandlers)o(i.method,i.params)}}onClose(){this.closed=!0;for(let[,i]of this.pending)i.reject(Error("rpc closed"));this.pending.clear()}write(i){if(this.closed)return;this.proc.stdin?.write(JSON.stringify(i)+`
33
- `)}request(i,o){if(this.closed)return Promise.reject(Error("rpc closed"));let n=this.nextId++;return new Promise((e,d)=>{this.pending.set(n,{resolve:e,reject:d}),this.write({jsonrpc:"2.0",method:i,params:o,id:n})})}notify(i,o){this.write({jsonrpc:"2.0",method:i,params:o})}reply(i,o){this.write({jsonrpc:"2.0",id:i,result:o})}replyError(i,o,n){this.write({jsonrpc:"2.0",id:i,error:{code:o,message:n}})}onNotification(i){this.notifyHandlers.push(i)}onServerRequest(i){this.serverReqHandler=i}pid(){return this.proc.pid}kill(i="SIGTERM"){try{this.proc.kill(i)}catch{}}close(){try{this.proc.stdin?.end()}catch{}this.kill("SIGTERM")}}async function Gu(i,o){let n=E("codex");if(!n)throw Error("codex client \u672A\u6CE8\u518C");let e=await to(n)??ao(n),d={...process.env,...o},u=n.runtime==="native"?e:await hi(),t=n.runtime==="native"?["app-server"]:[e,"app-server"],a=Tp(u,t,{env:d,cwd:i,stdio:["pipe","pipe","pipe"]});return a.stderr?.on("data",()=>{}),new qu(a)}async function Mu(i){await i.request("initialize",{clientInfo:{name:"tako-agent",title:"Tako Agent",version:"0.1"},capabilities:null})}function Su(i,o={}){let n=i.approvalMode==="external",e={cwd:i.workdir,approvalPolicy:n?"untrusted":"never",sandbox:n?"workspace-write":"danger-full-access",...o};if(i.model)e.model=i.model;if(i.providerHint?.type==="tako"||i.providerHint?.type==="custom")e.modelProvider="tako";return e}function x0(i,o){if(i==="applyPatchApproval"||i==="execCommandApproval")return{decision:o?"approved":"denied"};if(i==="item/commandExecution/requestApproval"||i==="item/fileChange/requestApproval")return{decision:o?"accept":"decline"};if(i==="item/permissions/requestApproval")return o?{permissions:{allowedTools:["*"]},scope:"turn"}:{permissions:{},scope:"turn"};if(i==="mcpServer/elicitation/request")return{action:o?"accept":"decline"};return{decision:o?"approved":"denied"}}function Xp(i){if(i.includes("commandExecution")||i==="execCommandApproval")return"exec";if(i.includes("fileChange")||i==="applyPatchApproval")return"patch";if(i.includes("permissions"))return"permission";if(i.includes("tool/"))return"tool";return"other"}async function Fp(i,o,n=300000,e=200){let d=Date.now();while(Date.now()-d<n){let u=await Fo(i,o);if(u)return{allow:u.decision==="allow",reason:u.reason,by:u.by};await new Promise((t)=>setTimeout(t,e))}return{allow:!1,reason:`timeout after ${Math.round(n/1000)}s`,by:"tako-timeout"}}function Pn(i,o){return i.__env=o,i}function Vp(i,o){let n=[],e=ni();switch(i){case"turn/started":n.push({ts:e,kind:"turn_started",turnId:o?.turn?.id??"?"});break;case"turn/completed":n.push({ts:e,kind:"turn_completed",turnId:o?.turn?.id,usage:o?.turn?.usage});break;case"item/agentMessage/delta":if(typeof o?.delta==="string")n.push({ts:e,kind:"text_delta",text:o.delta,itemId:o.itemId});break;case"item/reasoning/textDelta":case"item/reasoning/summaryTextDelta":if(typeof o?.delta==="string")n.push({ts:e,kind:"reasoning_delta",text:o.delta});break;case"item/started":{let d=o?.item;if(!d)break;if(d.type==="commandExecution")n.push({ts:e,kind:"tool_use",name:"shell",input:{command:d.command},itemId:d.id});else if(d.type==="fileChange")n.push({ts:e,kind:"tool_use",name:"fileChange",input:d,itemId:d.id});else if(d.type==="mcpToolCall")n.push({ts:e,kind:"tool_use",name:d.serverName?`${d.serverName}.${d.toolName}`:d.toolName??"mcp",input:d.args,itemId:d.id});break}case"item/completed":{let d=o?.item;if(!d)break;if(d.type==="commandExecution"||d.type==="fileChange"||d.type==="mcpToolCall")n.push({ts:e,kind:"tool_result",itemId:d.id,output:d});break}case"error":case"warning":n.push({ts:e,kind:"error",message:o?.message??i,raw:o});break}return n}var ni=()=>Date.now(),Qu;var Pu=G(()=>{Ti();w0();T();Co();Qu={backend:"codex",async start(i){let o={sid:i.sid,backend:"codex",name:i.name,model:i.model,workdir:i.workdir,status:"idle",approvalMode:i.approvalMode??"yolo",turnCount:0,createdAt:ni(),lastActiveAt:ni(),providerId:i.providerId};return await wi(o.sid,{ts:ni(),kind:"session_started",sid:o.sid,backend:"codex",model:o.model}),o.__providerHint=i.providerHint,o},async send(i,o,n){let e=i.__env??{},d=i.__providerHint,u=await Gu(i.workdir,e),t=gu(mi(i.sid),"turn.pid");if(u.pid())await Ip(t,String(u.pid()));let a=i.approvalMode??"yolo";u.onServerRequest((l,m,w)=>{if(a==="yolo"){u.replyError(m,-32603,`tako-agent yolo mode: ${l} declined`);return}let y=String(m),v=Xp(l);(async()=>{let s=await Sn(i.sid),L=zu(s,l,w,i.workdir);if(L.kind==="auto_allow"){await wi(i.sid,{ts:ni(),kind:"tool_result",itemId:y,output:{approval:"auto_allowed",reason:L.reason}}),u.reply(m,x0(l,!0));return}if(L.kind==="auto_deny"){await wi(i.sid,{ts:ni(),kind:"error",message:`auto_deny: ${L.reason}`,raw:{method:l,params:w}}),u.reply(m,x0(l,!1));return}let W={approvalId:y,method:l,params:w,approvalType:v,requestedAt:ni()};await Lu(i.sid,W),await wi(i.sid,{ts:ni(),kind:"approval_required",approvalId:y,approvalType:v,params:w}),i.status="awaiting_approval",await U(i);let M=await Fp(i.sid,y);i.status="running",await U(i),u.reply(m,x0(l,M.allow))})().catch((s)=>{u.replyError(m,-32603,`approval bridge error: ${s?.message??s}`)})});let r=Promise.resolve();u.onNotification((l,m)=>{let w=Vp(l,m);if(!w.length)return;r=r.then(async()=>{for(let y of w)await wi(i.sid,y),n?.onFrame?.(y)})}),i.status="running",i.lastActiveAt=ni(),await U(i);let p=new Promise((l)=>{u.onNotification((m)=>{if(m==="turn/completed"||m==="turn/failed")l()})}),c=!1;try{if(await Mu(u),!i.codexThreadId){let l=await u.request("thread/start",Su({workdir:i.workdir,model:i.model,providerHint:d,approvalMode:a}));if(i.codexThreadId=l?.threadId??l?.id??l?.thread?.id,!i.codexThreadId)throw Error("thread/start \u65E0 threadId")}else await u.request("thread/resume",Su({workdir:i.workdir,model:i.model,providerHint:d,approvalMode:a},{threadId:i.codexThreadId}));await u.request("turn/start",{threadId:i.codexThreadId,input:[{type:"text",text:o,text_elements:[]}]}),await Promise.race([p,new Promise((l,m)=>setTimeout(()=>m(Error("turn timeout 10min")),600000))]),await r,c=!0}catch(l){await wi(i.sid,{ts:ni(),kind:"error",message:l instanceof Error?l.message:String(l)})}if(u.close(),await Op(t).catch(()=>{}),c)i.turnCount++;return i.lastActiveAt=ni(),i.status="idle",await U(i),i},async cancel(i){let o=gu(mi(i.sid),"turn.pid");try{let n=await import("fs/promises"),e=parseInt(await n.readFile(o,"utf-8"),10);if(e>0)process.kill(e,"SIGTERM")}catch{}},async close(i){if(i.codexThreadId)try{let o=i.__env??{},n=await Gu(i.workdir,o);await Mu(n).catch(()=>{}),await n.request("thread/archive",{threadId:i.codexThreadId}).catch(()=>{}),n.close()}catch{}await wi(i.sid,{ts:ni(),kind:"session_closed"}),i.status="closed",i.lastActiveAt=ni(),await U(i)},async isAlive(i){return i.status!=="closed"}}});import{randomUUID as Up}from"crypto";async function Eo(i){let o=fo[i.backend],n=y0[i.backend],e=E(n);if(!e)throw Error(`client ${n} \u672A\u6CE8\u518C`);let d=await Ju(i.backend,i.providerId,i.model);if(!d)throw Error(`\u6CA1\u627E\u5230 ${i.backend} \u53EF\u7528\u7684 provider${i.model?`\uFF08\u542B\u6A21\u578B ${i.model}\uFF09`:""}`);let u=O(d);if(i.model)u.model=i.model;let t=e.getEnvVars(u),a=Up(),r={sid:a,backend:i.backend,name:i.name??`${i.backend}-${a.slice(0,8)}`,model:i.model,workdir:i.workdir??process.cwd(),status:"idle",approvalMode:i.approvalMode??"yolo",turnCount:0,createdAt:Date.now(),lastActiveAt:Date.now(),providerId:d.id};await su(r);let p=await o.start({sid:a,name:r.name,model:i.model,workdir:r.workdir,approvalMode:i.approvalMode??"yolo",env:t,providerId:d.id,providerHint:{type:d.type,apiKey:d.apiKey,baseUrl:d.baseUrl}});return await U(p),p}async function _o(i,o,n){let e=await bo(i);if(!e)throw Error(`session ${i} \u4E0D\u5B58\u5728`);if(e.status==="closed")throw Error(`session ${i} \u5DF2\u5173\u95ED`);let d=fo[e.backend],u=await v0(e);if(e.backend==="claude")Wu(e,u);else if(e.backend==="codex")Pn(e,u);return d.send(e,o,n)}async function Do(i){let o=await bo(i);if(!o)return;if(o.backend==="codex")Pn(o,await v0(o));await fo[o.backend].cancel(o)}async function ko(i,o=!1){let n=await bo(i);if(!n)return;if(n.backend==="codex")Pn(n,await v0(n));if(await fo[n.backend].close(n),o)await r0(i)}async function Jn(){return $n()}function Ep(i,o={}){return i.filter((n)=>{if(o.status&&o.status.length>0){if(!o.status.includes(n.status))return!1}else if(!o.includeClosed&&n.status==="closed")return!1;if(o.namePrefix&&!n.name.startsWith(o.namePrefix))return!1;if(o.backend&&n.backend!==o.backend)return!1;if(o.model&&n.model!==o.model)return!1;if(o.turns!==void 0&&n.turnCount!==o.turns)return!1;return!0})}async function Kn(i={}){return Ep(await $n(),i)}async function Bn(i,o=50){let n=await bo(i);if(!n)return null;let e=await gn(i,o),d=await fo[n.backend].isAlive(n);return{meta:n,log:e,alive:d}}async function An(){let i=await $n(),o=0;for(let n of i){if(n.status==="closed"){await r0(n.sid),o++;continue}if(n.backend==="codex"){if(!await fo.codex.isAlive(n))n.status="dead",await U(n)}}return o}async function Ju(i,o,n){let e=await N(),d=await Z(),u=y0[i];if(o){let c=d.find((l)=>l.id===o);if(c)return c}let a=e.agentDefaults?.[i];if(a){let c=d.find((l)=>l.id===a);if(c)return c}let r=await Si(u);if(n){let c=E(u);if(c){for(let l of r)if(an(c,l).some((w)=>w.id===`model-${n}`))return l}}let p=e.clientProviderMap?.[u];if(p){let c=d.find((l)=>l.id===p);if(c)return c}return r[0]}async function v0(i){let o=y0[i.backend],n=E(o);if(!n)return{};let e=await Z(),d=i.providerId?e.find((t)=>t.id===i.providerId):void 0;if(!d)d=await Ju(i.backend,void 0,i.model);if(!d)return{};let u=O(d);if(i.model)u.model=i.model;return i.__providerHint={type:d.type,apiKey:d.apiKey,baseUrl:d.baseUrl},n.getEnvVars(u)}async function Ku(i,o){let{saveConfig:n}=await Promise.resolve().then(() => (P(),C0)),e=await N(),d=e.agentDefaults??{};d[i]=o,e.agentDefaults=d,await n(e)}async function Rn(){return(await N()).agentDefaults??{}}var fo,y0;var Cn=G(()=>{Nu();Pu();Ti();P();ui();T();fo={claude:hu,codex:Qu},y0={claude:"claude-code",codex:"codex"}});function s0(i,o,n){if(o<=0)return;return{usedPct:Math.min(100,Math.max(0,Math.round(i/o*100))),costUsed:i,costLimit:o,...n?{windowMinutes:n}:{}}}function _p(i,o){if(!Number.isFinite(i)||i<0)return;return{usedPct:0,costUsed:i,...o?{windowMinutes:o}:{}}}async function Dp(i){try{let o=await fetch(`${H}/apiStats/api/user-quota`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:i}),signal:AbortSignal.timeout(5000)});if(!o.ok)return null;let n=await o.json();if(!n.plan||!n.usage)return null;return{provider:"tako",status:"ok",primary:s0(n.usage.windowCost??0,n.plan.window_cost_limit??0,n.plan.window_minutes),daily:s0(n.usage.dailyCost??0,n.plan.daily_cost_limit??0),secondary:s0(n.usage.weeklyCost??0,n.plan.weekly_cost_limit??0),fetchedAt:Date.now()}}catch{return null}}async function eo(i){let o=Date.now(),n={provider:"tako",status:"error",fetchedAt:o};if(!i)return{...n,hint:"\u7F3A\u5C11 apiId\uFF0C\u8BF7\u91CD\u65B0\u914D\u7F6E Tako Key",error:"missing_api_id"};let e=await Dp(i);if(e)return e;try{let d=await fetch(`${H}/apiStats/api/user-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:i}),signal:AbortSignal.timeout(5000)});if(!d.ok)return{...n,hint:"Tako \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${d.status}`};let u=await d.json(),t=u?.data;if(!u?.success||!t)return{...n,hint:"Tako \u7528\u91CF\u6570\u636E\u683C\u5F0F\u5F02\u5E38",error:"bad_payload"};let a=t.limits?.currentDailyCost??t.usage?.total?.cost??0;return{provider:"tako",status:"ok",daily:_p(a),fetchedAt:o}}catch(d){return{...n,hint:"Tako \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(d.message??d)}}}async function Bu(i){let o=await Ui();return eo(o)}var L0=G(()=>{P()});function h0(i){if(!i||typeof i.utilization!=="number")return;return{usedPct:Math.min(100,Math.max(0,Math.round(i.utilization))),resetsAt:i.resets_at??void 0}}function jp(i){return i.authData?.credentials?.claudeAiOauth?.accessToken}async function Au(i){let o=Date.now(),n={provider:"claude-subscription",status:"error",fetchedAt:o},e=jp(i);if(!e)return{...n,hint:"Claude OAuth \u672A\u4FDD\u5B58\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"missing_access_token"};try{let d=await fetch("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${e}`,"anthropic-beta":"oauth-2025-04-20"},signal:AbortSignal.timeout(5000)});if(d.status===401)return{...n,hint:"Claude OAuth \u5DF2\u8FC7\u671F\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"unauthorized"};if(!d.ok)return{...n,hint:"Anthropic \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${d.status}`};let u=await d.json(),t=h0(u.seven_day_opus),a=h0(u.five_hour);if(a)a.windowMinutes=300;let r=h0(u.seven_day);if(r)r.windowMinutes=10080;return{provider:"claude-subscription",status:"ok",primary:a,secondary:r,...t?{modelLimits:{opus:t}}:{},fetchedAt:o}}catch(d){return{...n,hint:"Anthropic \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(d.message??d)}}}function Ru(i){if(!i||typeof i.used_percent!=="number")return;let o={usedPct:Math.min(100,Math.max(0,Math.round(i.used_percent)))};if(typeof i.reset_at==="number")o.resetsAt=new Date(i.reset_at*1000).toISOString();if(typeof i.limit_window_seconds==="number")o.windowMinutes=Math.round(i.limit_window_seconds/60);return o}function ic(i){let o=i.authData?.tokens;return{accessToken:o?.access_token,accountId:o?.account_id}}async function oc(i,o){if(await Bun.spawn(["which","codex"],{stdout:"pipe",stderr:"pipe"}).exited!==0)return null;let e=await import("fs/promises"),{mkdtemp:d}=e,{tmpdir:u}=await import("os"),{join:t}=await import("path"),a=await d(t(u(),"tako-codex-"));try{let r={auth_mode:"chatgpt",tokens:{access_token:i,...o?{account_id:o}:{}}};await e.writeFile(t(a,"auth.json"),JSON.stringify(r));let p=[JSON.stringify({jsonrpc:"2.0",method:"initialize",id:0,params:{clientInfo:{name:"tako",version:"1.0"}}}),JSON.stringify({jsonrpc:"2.0",method:"account/rateLimits/read",id:1,params:{}})].join(`
239
+ `)+C,F=g+1,g=B.indexOf(`
240
+ `,F)}while(g!==-1);return N+=B.slice(F),N}function R1(B){return qy(B)}var pK,iK,j5,Y2,K1,dK,Z2,Xy=(B,I={})=>{if(I.level&&!(Number.isInteger(I.level)&&I.level>=0&&I.level<=3))throw Error("The `level` option should be an integer from 0 to 3");let C=pK?pK.level:0;B.level=I.level===void 0?C:I.level},qy=(B)=>{let I=(...C)=>C.join(" ");return Xy(I,B),Object.setPrototypeOf(I,R1.prototype),I},x5=(B,I,C,...g)=>{if(B==="rgb"){if(I==="ansi16m")return m0[C].ansi16m(...g);if(I==="ansi256")return m0[C].ansi256(m0.rgbToAnsi256(...g));return m0[C].ansi(m0.rgbToAnsi(...g))}if(B==="hex")return x5("rgb",I,C,...m0.hexToRgb(...g));return m0[C][B](...g)},ky,zy,p5=(B,I,C)=>{let g,F;if(C===void 0)g=B,F=I;else g=C.openAll+B,F=I+C.closeAll;return{open:B,close:I,openAll:g,closeAll:F,parent:C}},M3=(B,I,C)=>{let g=(...F)=>Oy(g,F.length===1?""+F[0]:F.join(" "));return Object.setPrototypeOf(g,zy),g[j5]=B,g[Y2]=I,g[K1]=C,g},Oy=(B,I)=>{if(B.level<=0||!I)return B[K1]?"":I;let C=B[Y2];if(C===void 0)return I;let{openAll:g,closeAll:F}=C;if(I.includes("\x1B"))while(C!==void 0)I=jK(I,C.close,C.open),C=C.parent;let N=I.indexOf(`
241
+ `);if(N!==-1)I=xK(I,F,g,N);return g+I+F},Sy,Vs,JQ;var U3=c(()=>{PK();fK();({stdout:pK,stderr:iK}=bK),j5=Symbol("GENERATOR"),Y2=Symbol("STYLER"),K1=Symbol("IS_EMPTY"),dK=["ansi","ansi","ansi256","ansi16m"],Z2=Object.create(null);Object.setPrototypeOf(R1.prototype,Function.prototype);for(let[B,I]of Object.entries(m0))Z2[B]={get(){let C=M3(this,p5(I.open,I.close,this[Y2]),this[K1]);return Object.defineProperty(this,B,{value:C}),C}};Z2.visible={get(){let B=M3(this,this[Y2],!0);return Object.defineProperty(this,"visible",{value:B}),B}};ky=["rgb","hex","ansi256"];for(let B of ky){Z2[B]={get(){let{level:C}=this;return function(...g){let F=p5(x5(B,dK[C],"color",...g),m0.color.close,this[Y2]);return M3(this,F,this[K1])}}};let I="bg"+B[0].toUpperCase()+B.slice(1);Z2[I]={get(){let{level:C}=this;return function(...g){let F=p5(x5(B,dK[C],"bgColor",...g),m0.bgColor.close,this[Y2]);return M3(this,F,this[K1])}}}}zy=Object.defineProperties(()=>{},{...Z2,level:{enumerable:!0,get(){return this[j5].level},set(B){this[j5].level=B}}});Object.defineProperties(R1.prototype,Z2);Sy=R1(),Vs=R1({level:iK?iK.level:0}),JQ=Sy});var $y,yy,Ty=(B)=>{return B in JQ},vy=(B,I,C)=>{if(!I)return B;if(Ty(I)){if(C==="foreground")return JQ[I](B);let g=`bg${I[0].toUpperCase()+I.slice(1)}`;return JQ[g](B)}if(I.startsWith("#"))return C==="foreground"?JQ.hex(I)(B):JQ.bgHex(I)(B);if(I.startsWith("ansi256")){let g=yy.exec(I);if(!g)return B;let F=Number(g[1]);return C==="foreground"?JQ.ansi256(F)(B):JQ.bgAnsi256(F)(B)}if(I.startsWith("rgb")){let g=$y.exec(I);if(!g)return B;let F=Number(g[1]),N=Number(g[2]),H=Number(g[3]);return C==="foreground"?JQ.rgb(F,N,H)(B):JQ.bgRgb(F,N,H)(B)}return B},UE;var L3=c(()=>{U3();$y=/^rgb\(\s?(\d+),\s?(\d+),\s?(\d+)\s?\)$/,yy=/^ansi256\(\s?(\d+)\s?\)$/,UE=vy});var cK,_y=(B,I,C,g)=>{if(C.style.borderStyle){let F=C.yogaNode.getComputedWidth(),N=C.yogaNode.getComputedHeight(),H=typeof C.style.borderStyle==="string"?cK.default[C.style.borderStyle]:C.style.borderStyle,M=C.style.borderTopColor??C.style.borderColor,U=C.style.borderBottomColor??C.style.borderColor,u=C.style.borderLeftColor??C.style.borderColor,X=C.style.borderRightColor??C.style.borderColor,k=C.style.borderTopDimColor??C.style.borderDimColor,W=C.style.borderBottomDimColor??C.style.borderDimColor,z=C.style.borderLeftDimColor??C.style.borderDimColor,$=C.style.borderRightDimColor??C.style.borderDimColor,O=C.style.borderTop!==!1,v=C.style.borderBottom!==!1,d=C.style.borderLeft!==!1,l=C.style.borderRight!==!1,r=F-(d?1:0)-(l?1:0),FA=O?UE((d?H.topLeft:"")+H.top.repeat(r)+(l?H.topRight:""),M,"foreground"):void 0;if(O&&k)FA=JQ.dim(FA);let MA=N;if(O)MA-=1;if(v)MA-=1;let wA=(UE(H.left,u,"foreground")+`
242
+ `).repeat(MA);if(z)wA=JQ.dim(wA);let ZA=(UE(H.right,X,"foreground")+`
243
+ `).repeat(MA);if($)ZA=JQ.dim(ZA);let GA=v?UE((d?H.bottomLeft:"")+H.bottom.repeat(r)+(l?H.bottomRight:""),U,"foreground"):void 0;if(v&&W)GA=JQ.dim(GA);let s=O?1:0;if(FA)g.write(B,I,FA,{transformers:[]});if(d)g.write(B,I+s,wA,{transformers:[]});if(l)g.write(B+F-1,I+s,ZA,{transformers:[]});if(GA)g.write(B,I+N-1,GA,{transformers:[]})}},lK;var aK=c(()=>{U3();L3();cK=YA(TK(),1),lK=_y});var Vy=(B,I,C,g)=>{if(!C.style.backgroundColor)return;let F=C.yogaNode.getComputedWidth(),N=C.yogaNode.getComputedHeight(),H=C.style.borderStyle&&C.style.borderLeft!==!1?1:0,M=C.style.borderStyle&&C.style.borderRight!==!1?1:0,U=C.style.borderStyle&&C.style.borderTop!==!1?1:0,u=C.style.borderStyle&&C.style.borderBottom!==!1?1:0,X=F-H-M,k=N-U-u;if(!(X>0&&k>0))return;let W=UE(" ".repeat(X),C.style.backgroundColor,"background");for(let z=0;z<k;z++)g.write(B+H,I+U+z,W,{transformers:[]})},oK;var nK=c(()=>{L3();oK=Vy});var Py=(B,I)=>{let C=B.childNodes[0]?.yogaNode;if(C){let g=C.getComputedLeft(),F=C.getComputedTop();I=`
244
+ `.repeat(F)+h5(I,g)}return I},u3=(B,I={})=>{if(I.skipStaticElements&&B.internal_static)return"";if(B.yogaNode?.getDisplay()===vA.DISPLAY_NONE)return"";let C="";if(B.nodeName==="ink-text")C=J1(B);else if(B.nodeName==="ink-box"||B.nodeName==="ink-root"){let g=B.style.flexDirection==="row"||B.style.flexDirection==="row-reverse"?" ":`
245
+ `;C=(B.style.flexDirection==="row-reverse"||B.style.flexDirection==="column-reverse"?[...B.childNodes].reverse():[...B.childNodes]).map((N)=>{return u3(N,{parentRole:B.internal_accessibility?.role,skipStaticElements:I.skipStaticElements})}).filter(Boolean).join(g)}if(B.internal_accessibility){let{role:g,state:F}=B.internal_accessibility;if(F){let H=Object.keys(F).filter((M)=>F[M]).join(", ");if(H)C=`(${H}) ${C}`}if(g&&g!==I.parentRole)C=`${g}: ${C}`}return C},rK=(B,I,C)=>{let{offsetX:g=0,offsetY:F=0,transformers:N=[],skipStaticElements:H}=C;if(H&&B.internal_static)return;let{yogaNode:M}=B;if(M){if(M.getDisplay()===vA.DISPLAY_NONE)return;let U=g+M.getComputedLeft(),u=F+M.getComputedTop(),X=N;if(typeof B.internal_transform==="function")X=[B.internal_transform,...N];if(B.nodeName==="ink-text"){let W=J1(B);if(W.length>0){let z=F1(W),$=OK(M);if(z>$){let O=B.style.textWrap??"wrap";W=g3(W,$,O)}W=Py(B,W),I.write(U,u,W,{transformers:X})}return}let k=!1;if(B.nodeName==="ink-box"){oK(U,u,B,I),lK(U,u,B,I);let W=B.style.overflowX==="hidden"||B.style.overflow==="hidden",z=B.style.overflowY==="hidden"||B.style.overflow==="hidden";if(W||z){let $=W?U+M.getComputedBorder(vA.EDGE_LEFT):void 0,O=W?U+M.getComputedWidth()-M.getComputedBorder(vA.EDGE_RIGHT):void 0,v=z?u+M.getComputedBorder(vA.EDGE_TOP):void 0,d=z?u+M.getComputedHeight()-M.getComputedBorder(vA.EDGE_BOTTOM):void 0;I.clip({x1:$,x2:O,y1:v,y2:d}),k=!0}}if(B.nodeName==="ink-root"||B.nodeName==="ink-box"){for(let W of B.childNodes)rK(W,I,{offsetX:U,offsetY:u,transformers:X,skipStaticElements:H});if(k)I.unclip()}}},i5;var sK=c(async()=>{M5();S5();y5();aK();nK();await B2([aC(),SK()]);i5=rK});function l5(B){if(K3.has(B))return B;if(d5.has(B))return d5.get(B);if(B.startsWith(R3))return my;if(B=B.slice(2),B.startsWith("38"))return lB.color.close;else if(B.startsWith("48"))return lB.bgColor.close;let I=lB.codes.get(parseInt(B,10));if(I)return lB.color.ansi(I);else return lB.reset.open}function W1(B){return[...new Set(B.map((C)=>C.code))].join("")}function W3(B){return B.code===lB.bold.open||B.code===lB.dim.open}var tK,eK,AR,K3,d5,R3="\x1B]8;",c5,BR="\x07",es,my;var X2=c(()=>{I1();tK=new Set([27,155]),eK="[".codePointAt(0),AR="]".codePointAt(0),K3=new Set,d5=new Map;for(let[B,I]of lB.codes)K3.add(lB.color.ansi(I)),d5.set(lB.color.ansi(B),lB.color.ansi(I));c5=R3.split("").map((B)=>B.charCodeAt(0)),es=BR.charCodeAt(0),my=`\x1B]8;;${BR}`});function a5(B){return Y3([],B)}function Y3(B,I){let C=[...B];for(let g of I)if(g.code===lB.reset.open)C=[];else if(K3.has(g.code))C=C.filter((F)=>F.endCode!==g.code);else if(W3(g)){if(!C.find((F)=>F.code===g.code&&F.endCode===g.endCode))C.push(g)}else C=C.filter((F)=>F.endCode!==g.endCode),C.push(g);return C}var Z3=c(()=>{I1();X2()});function o5(B){return a5(B).reverse().map((I)=>({...I,code:I.endCode}))}var n5=c(()=>{Z3()});function X3(B,I){let C=new Set(I.map((N)=>N.endCode)),g=new Set(I.map((N)=>N.code)),F=new Set(B.map((N)=>N.code));return[...o5(B.filter((N)=>{if(W3(N))return!g.has(N.code);return!C.has(N.endCode)})),...I.filter((N)=>!F.has(N.code))]}var r5=c(()=>{X2();n5()});function QR(B){let I=[],C=[];for(let g of B)if(g.type==="ansi")I=Y3(I,[g]);else if(g.type==="char")C.push({...g,styles:[...I]});return C}function IR(B){let I="";for(let C=0;C<B.length;C++){let g=B[C];if(C===0)I+=W1(g.styles);else I+=W1(X3(B[C-1].styles,g.styles));if(I+=g.value,C===B.length-1)I+=W1(X3(g.styles,[]))}return I}var ER=c(()=>{X2();r5();Z3()});function by(B,I){if(K2(I))return!0;if(B.includes("\uFE0F"))return!0;if(I>=127462&&I<=127487)return!0;return!1}function fy(B,I){B=B.slice(I);for(let F=1;F<c5.length;F++)if(B.charCodeAt(F)!==c5[F])return;let C=B.indexOf(";",R3.length);if(C===-1)return;let g=B.indexOf("\x07",C+1);if(g===-1)return;return B.slice(0,g+1)}function dy(B){for(let I=2;I<B.length;I++){let C=B.charCodeAt(I);if(C===iy)return I;if(C===py)continue;if(C>=jy&&C<=xy)continue;break}return-1}function cy(B,I){B=B.slice(I);let C=dy(B);if(C===-1)return;return B.slice(0,C+1)}function ly(B){if(!B.includes(";"))return[B];let I=B.slice(2,-1).split(";"),C=[];for(let g=0;g<I.length;g++){let F=I[g];if(F==="38"||F==="48"){if(g+2<I.length&&I[g+1]==="5"){C.push(I.slice(g,g+3).join(";")),g+=2;continue}else if(g+4<I.length&&I[g+1]==="2"){C.push(I.slice(g,g+5).join(";")),g+=4;continue}}C.push(F)}return C.map((g)=>`\x1B[${g}m`)}function CR(B,I=Number.POSITIVE_INFINITY){let C=[],g=0,F=0;for(let{segment:N,index:H}of hy.segment(B)){if(H<F)continue;let M=N.codePointAt(0);if(tK.has(M)){let u,X=B.codePointAt(H+1);if(X===AR){if(u=fy(B,H),u)C.push({type:"ansi",code:u,endCode:l5(u)})}else if(X===eK){if(u=cy(B,H),u){let k=ly(u);for(let W of k)C.push({type:"ansi",code:W,endCode:l5(W)})}}if(u){F=H+u.length;continue}}let U=by(N,M);if(C.push({type:"char",value:N,fullWidth:U}),g+=U?2:1,g>=I)break}return C}var hy,jy=48,xy=57,py=59,iy=109;var gR=c(()=>{L5();X2();hy=new Intl.Segmenter(void 0,{granularity:"grapheme"})});var DR=c(()=>{X2();r5();Z3();n5();ER();gR()});class FR{widths=new Map;blockWidths=new Map;styledChars=new Map;getStyledChars(B){let I=this.styledChars.get(B);if(I===void 0)I=QR(CR(B)),this.styledChars.set(B,I);return I}getStringWidth(B){let I=this.widths.get(B);if(I===void 0)I=ME(B),this.widths.set(B,I);return I}getWidestLine(B){let I=this.blockWidths.get(B);if(I===void 0){let C=0;for(let g of B.split(`
246
+ `))C=Math.max(C,this.getStringWidth(g));I=C,this.blockWidths.set(B,I)}return I}}class Y1{width;height;operations=[];caches=new FR;constructor(B){let{width:I,height:C}=B;this.width=I,this.height=C}write(B,I,C,g){let{transformers:F}=g;if(!C)return;this.operations.push({type:"write",x:B,y:I,text:C,transformers:F})}clip(B){this.operations.push({type:"clip",clip:B})}unclip(){this.operations.push({type:"unclip"})}get(){let B=[];for(let g=0;g<this.height;g++){let F=[];for(let N=0;N<this.width;N++)F.push({type:"char",value:" ",fullWidth:!1,styles:[]});B.push(F)}let I=[];for(let g of this.operations){if(g.type==="clip")I.push(g.clip);if(g.type==="unclip")I.pop();if(g.type==="write"){let{text:F,transformers:N}=g,{x:H,y:M}=g,U=F.split(`
247
+ `),u=I.at(-1);if(u){let k=typeof u?.x1==="number"&&typeof u?.x2==="number",W=typeof u?.y1==="number"&&typeof u?.y2==="number";if(k){let z=this.caches.getWidestLine(F);if(H+z<u.x1||H>u.x2)continue}if(W){let z=U.length;if(M+z<u.y1||M>u.y2)continue}if(k){if(U=U.map((z)=>{let $=H<u.x1?u.x1-H:0,O=this.caches.getStringWidth(z),v=H+O>u.x2?u.x2-H:O;return N0(z,$,v)}),H<u.x1)H=u.x1}if(W){let z=M<u.y1?u.y1-M:0,$=U.length,O=M+$>u.y2?u.y2-M:$;if(U=U.slice(z,O),M<u.y1)M=u.y1}}let X=0;for(let[k,W]of U.entries()){let z=B[M+X];if(!z)continue;for(let v of N)W=v(W,k);let $=this.caches.getStyledChars(W),O=H;for(let v of $){z[O]=v;let d=Math.max(1,this.caches.getStringWidth(v.value));if(d>1)for(let l=1;l<d;l++)z[O+l]={type:"char",value:"",fullWidth:!1,styles:v.styles};O+=d}X++}}}return{output:B.map((g)=>{let F=g.filter((N)=>N!==void 0);return IR(F).trimEnd()}).join(`
248
+ `),height:B.length}}}var wR=c(()=>{z5();A3();DR()});var ay=(B,I)=>{if(B.yogaNode){if(I){let H=u3(B,{skipStaticElements:!0}),M=H===""?0:H.split(`
249
+ `).length,U="";if(B.staticNode)U=u3(B.staticNode,{skipStaticElements:!1});return{output:H,outputHeight:M,staticOutput:U?`${U}
250
+ `:""}}let C=new Y1({width:B.yogaNode.getComputedWidth(),height:B.yogaNode.getComputedHeight()});i5(B,C,{skipStaticElements:!0});let g;if(B.staticNode?.yogaNode)g=new Y1({width:B.staticNode.yogaNode.getComputedWidth(),height:B.staticNode.yogaNode.getComputedHeight()}),i5(B.staticNode,g,{skipStaticElements:!1});let{output:F,height:N}=C.get();return{output:F,outputHeight:N,staticOutput:g?`${g.get().output}
251
+ `:""}}return{output:"",outputHeight:0,staticOutput:""}},s5;var t5=c(async()=>{wR();await sK();s5=ay});var NR=pI((yt,e5)=>{var GR=(B,I)=>{for(let C of Reflect.ownKeys(I))Object.defineProperty(B,C,Object.getOwnPropertyDescriptor(I,C));return B};e5.exports=GR;e5.exports.default=GR});var JR=pI((Tt,k3)=>{var oy=NR(),q3=new WeakMap,HR=(B,I={})=>{if(typeof B!=="function")throw TypeError("Expected a function");let C,g=0,F=B.displayName||B.name||"<anonymous>",N=function(...H){if(q3.set(N,++g),g===1)C=B.apply(this,H),B=null;else if(I.throw===!0)throw Error(`Function \`${F}\` can only be called once`);return C};return oy(N,B),q3.set(N,g),N};k3.exports=HR;k3.exports.default=HR;k3.exports.callCount=(B)=>{if(!q3.has(B))throw Error(`The given function \`${B.name}\` is not wrapped by the \`onetime\` package`);return q3.get(B)}});import ny from"process";var MR,UR,ry,LR;var uR=c(()=>{MR=YA(JR(),1),UR=YA(aN(),1),ry=MR.default(()=>{UR.default(()=>{ny.stderr.write("\x1B[?25h")},{alwaysLast:!0})}),LR=ry});import KR from"process";var z3=!1,q2,AD;var AH=c(()=>{uR();q2={};q2.show=(B=KR.stderr)=>{if(!B.isTTY)return;z3=!1,B.write("\x1B[?25h")};q2.hide=(B=KR.stderr)=>{if(!B.isTTY)return;LR(),z3=!0,B.write("\x1B[?25l")};q2.toggle=(B,I)=>{if(B!==void 0)z3=B;if(z3)q2.show(I);else q2.hide(I)};AD=q2});var sy="\x1B[?25h",Z1="\x1B[?25l",X1=(B,I)=>B?.x!==I?.x||B?.y!==I?.y,BD=(B,I)=>{if(!I)return"";let C=B-I.y;return(C>0?HQ.cursorUp(C):"")+HQ.cursorTo(I.x)+sy},RR=(B,I)=>{if(!I)return"";let C=B-1-I.y;return(C>0?HQ.cursorDown(C):"")+HQ.cursorTo(0)},BH=(B)=>{let I=B.cursorWasShown?Z1:"",C=RR(B.previousLineCount,B.previousCursorPosition),g=BD(B.visibleLineCount,B.cursorPosition);return I+C+g},q1=(B,I,C)=>{if(!B)return"";return Z1+RR(I,C)};var WR=c(()=>{xw()});var k1=(B,I)=>I.endsWith(`
252
+ `)?B.length-1:B.length,ty=(B,{showCursor:I=!1}={})=>{let C=0,g="",F=!1,N,H=!1,M,U=!1,u=()=>H?N:void 0,X=(W,z)=>{let $=X1(z,M);return W!==g||$},k=(W)=>{if(!I&&!F)AD.hide(B),F=!0;let z=u();H=!1;let $=X1(z,M);if(!X(W,z))return!1;let O=W.split(`
253
+ `),v=k1(O,W),d=BD(v,z);if(W===g&&$)B.write(BH({cursorWasShown:U,previousLineCount:C,previousCursorPosition:M,visibleLineCount:v,cursorPosition:z}));else{g=W;let l=q1(U,C,M);B.write(l+HQ.eraseLines(C)+W+d),C=O.length}return M=z?{...z}:void 0,U=z!==void 0,!0};return k.clear=()=>{let W=q1(U,C,M);B.write(W+HQ.eraseLines(C)),g="",C=0,M=void 0,U=!1},k.done=()=>{if(g="",C=0,M=void 0,U=!1,!I)AD.show(B),F=!1},k.sync=(W)=>{let z=H?N:void 0;H=!1;let $=W.split(`
254
+ `);if(g=W,C=$.length,!z&&U)B.write(Z1);if(z)B.write(BD(k1($,W),z));M=z?{...z}:void 0,U=z!==void 0},k.setCursorPosition=(W)=>{N=W,H=!0},k.isCursorDirty=()=>H,k.willRender=(W)=>X(W,u()),k},ey=(B,{showCursor:I=!1}={})=>{let C=[],g="",F=!1,N,H=!1,M,U=!1,u=()=>H?N:void 0,X=(W,z)=>{let $=X1(z,M);return W!==g||$},k=(W)=>{if(!I&&!F)AD.hide(B),F=!0;let z=u();H=!1;let $=X1(z,M);if(!X(W,z))return!1;let O=W.split(`
255
+ `),v=k1(O,W),d=k1(C,g);if(W===g&&$)return B.write(BH({cursorWasShown:U,previousLineCount:C.length,previousCursorPosition:M,visibleLineCount:v,cursorPosition:z})),M=z?{...z}:void 0,U=z!==void 0,!0;let l=q1(U,C.length,M);if(W===`
256
+ `||g.length===0){let wA=BD(v,z);return B.write(l+HQ.eraseLines(C.length)+W+wA),U=z!==void 0,M=z?{...z}:void 0,g=W,C=O,!0}let r=W.endsWith(`
257
+ `),FA=[];if(FA.push(l),v<d){let ZA=g.endsWith(`
258
+ `)?1:0;FA.push(HQ.eraseLines(d-v+ZA),HQ.cursorUp(v))}else FA.push(HQ.cursorUp(d-1));for(let wA=0;wA<v;wA++){let ZA=wA===v-1;if(O[wA]===C[wA]){if(!ZA||r)FA.push(HQ.cursorNextLine);continue}FA.push(HQ.cursorTo(0)+O[wA]+HQ.eraseEndLine+(ZA&&!r?"":`
259
+ `))}let MA=BD(v,z);return FA.push(MA),B.write(FA.join("")),U=z!==void 0,M=z?{...z}:void 0,g=W,C=O,!0};return k.clear=()=>{let W=q1(U,C.length,M);B.write(W+HQ.eraseLines(C.length)),g="",C=[],M=void 0,U=!1},k.done=()=>{if(g="",C=[],M=void 0,U=!1,!I)AD.show(B),F=!1},k.sync=(W)=>{let z=H?N:void 0;H=!1;let $=W.split(`
260
+ `);if(g=W,C=$,!z&&U)B.write(Z1);if(z)B.write(BD(k1($,W),z));M=z?{...z}:void 0,U=z!==void 0},k.setCursorPosition=(W)=>{N=W,H=!0},k.isCursorDirty=()=>H,k.willRender=(W)=>X(W,u()),k},AT=(B,{showCursor:I=!1,incremental:C=!1}={})=>{if(C)return ey(B,{showCursor:I});return ty(B,{showCursor:I})},BT,YR;var ZR=c(()=>{xw();AH();WR();BT={create:AT},YR=BT});function ID(B){return"isTTY"in B&&B.isTTY===!0&&!JE}var QD="\x1B[?2026h",nC="\x1B[?2026l";var XR=c(()=>{xN()});var QT,k2;var QH=c(()=>{QT=new WeakMap,k2=QT});var IT=(B)=>{return B>=48&&B<=63},ET=(B)=>{return B>=32&&B<=47},kR=(B)=>{return B>=64&&B<=126},CT=(B,I,C)=>{let g=I+C+1,F=g;for(;F<B.length;F++){let N=B.codePointAt(F);if(N===void 0)return"pending";if(IT(N)||ET(N))continue;if(N===91&&F===g)continue;if(kR(N))return{sequence:B.slice(I,F+1),nextIndex:F+1};return}return"pending"},gT=(B,I,C)=>{let g=I+C+2;if(g>B.length)return"pending";let F=B.codePointAt(g-1);if(F===void 0||!kR(F))return;return{sequence:B.slice(I,g),nextIndex:g}},qR=(B,I,C)=>{let g=B[I+C];if(g===void 0)return"pending";if(g==="[")return CT(B,I,C);if(g==="O")return gT(B,I,C);return},DT=(B,I)=>{let C=B.codePointAt(I+1),g=C!==void 0&&C>65535?2:1,F=I+1+g;return{sequence:B.slice(I,F),nextIndex:F}},FT=(B)=>{let I=[],C=0,g=(F)=>({events:I,pending:B.slice(F)});while(C<B.length){let F=B.indexOf("\x1B",C);if(F===-1)return I.push(B.slice(C)),{events:I,pending:""};if(F>C)I.push(B.slice(C,F));if(F===B.length-1)return g(F);let N=qR(B,F,1);if(N==="pending")return g(F);if(N){I.push(N.sequence),C=N.nextIndex;continue}if(B[F+1]==="\x1B"){if(F+2>=B.length)return g(F);let U=qR(B,F,2);if(U==="pending")return g(F);if(U){I.push(U.sequence),C=U.nextIndex;continue}I.push(B.slice(F,F+2)),C=F+2;continue}let M=DT(B,F);I.push(M.sequence),C=M.nextIndex}return{events:I,pending:""}},zR=()=>{let B="";return{push(I){let C=FT(B+I);return B=C.pending,C.events},hasPendingEscape(){return B.startsWith("\x1B")},flushPendingEscape(){if(!B.startsWith("\x1B"))return;let I=B;return B="",I},reset(){B=""}}};var OR,SR,IH;var EH=c(()=>{OR=YA(FB(),1),SR=OR.createContext({exit(){}});SR.displayName="InternalAppContext";IH=SR});import{EventEmitter as wT}from"events";import GT from"process";var $R,yR,O3;var CH=c(()=>{$R=YA(FB(),1),yR=$R.createContext({stdin:GT.stdin,internal_eventEmitter:new wT,setRawMode(){},isRawModeSupported:!1,internal_exitOnCtrlC:!0});yR.displayName="InternalStdinContext";O3=yR});import NT from"process";var TR,vR,S3;var gH=c(()=>{TR=YA(FB(),1),vR=TR.createContext({stdout:NT.stdout,write(){}});vR.displayName="InternalStdoutContext";S3=vR});import HT from"process";var _R,VR,DH;var FH=c(()=>{_R=YA(FB(),1),VR=_R.createContext({stderr:HT.stderr,write(){}});VR.displayName="InternalStderrContext";DH=VR});var PR,mR,$3;var y3=c(()=>{PR=YA(FB(),1),mR=PR.createContext({activeId:void 0,add(){},remove(){},activate(){},deactivate(){},enableFocus(){},disableFocus(){},focusNext(){},focusPrevious(){},focus(){}});mR.displayName="InternalFocusContext";$3=mR});var hR,bR,wH;var GH=c(()=>{hR=YA(FB(),1),bR=hR.createContext({setCursorPosition(){}});bR.displayName="InternalCursorContext";wH=bR});var jR=pI((Ie,fR)=>{var JT=/[|\\{}()[\]^$+*?.-]/g;fR.exports=(B)=>{if(typeof B!=="string")throw TypeError("Expected a string");return B.replace(JT,"\\$&")}});var dR=pI((Ee,iR)=>{var MT=jR(),UT=typeof process==="object"&&process&&typeof process.cwd==="function"?process.cwd():".",pR=[].concat(cA("module").builtinModules,"bootstrap_node","node").map((B)=>new RegExp(`(?:\\((?:node:)?${B}(?:\\.js)?:\\d+:\\d+\\)$|^\\s*at (?:node:)?${B}(?:\\.js)?:\\d+:\\d+$)`));pR.push(/\((?:node:)?internal\/[^:]+:\d+:\d+\)$/,/\s*at (?:node:)?internal\/[^:]+:\d+:\d+$/,/\/\.node-spawn-wrap-\w+-\w+\/node:\d+:\d+\)?$/);class NH{constructor(B){if(B={ignoredPackages:[],...B},"internals"in B===!1)B.internals=NH.nodeInternals();if("cwd"in B===!1)B.cwd=UT;this._cwd=B.cwd.replace(/\\/g,"/"),this._internals=[].concat(B.internals,LT(B.ignoredPackages)),this._wrapCallSite=B.wrapCallSite||!1}static nodeInternals(){return[...pR]}clean(B,I=0){if(I=" ".repeat(I),!Array.isArray(B))B=B.split(`
261
+ `);if(!/^\s*at /.test(B[0])&&/^\s*at /.test(B[1]))B=B.slice(1);let C=!1,g=null,F=[];return B.forEach((N)=>{if(N=N.replace(/\\/g,"/"),this._internals.some((M)=>M.test(N)))return;let H=/^\s*at /.test(N);if(C)N=N.trimEnd().replace(/^(\s+)at /,"$1");else if(N=N.trim(),H)N=N.slice(3);if(N=N.replace(`${this._cwd}/`,""),N)if(H){if(g)F.push(g),g=null;F.push(N)}else C=!0,g=N}),F.map((N)=>`${I}${N}
262
+ `).join("")}captureString(B,I=this.captureString){if(typeof B==="function")I=B,B=1/0;let{stackTraceLimit:C}=Error;if(B)Error.stackTraceLimit=B;let g={};Error.captureStackTrace(g,I);let{stack:F}=g;return Error.stackTraceLimit=C,this.clean(F)}capture(B,I=this.capture){if(typeof B==="function")I=B,B=1/0;let{prepareStackTrace:C,stackTraceLimit:g}=Error;if(Error.prepareStackTrace=(H,M)=>{if(this._wrapCallSite)return M.map(this._wrapCallSite);return M},B)Error.stackTraceLimit=B;let F={};Error.captureStackTrace(F,I);let{stack:N}=F;return Object.assign(Error,{prepareStackTrace:C,stackTraceLimit:g}),N}at(B=this.at){let[I]=this.capture(1,B);if(!I)return{};let C={line:I.getLineNumber(),column:I.getColumnNumber()};if(xR(C,I.getFileName(),this._cwd),I.isConstructor())Object.defineProperty(C,"constructor",{value:!0,configurable:!0});if(I.isEval())C.evalOrigin=I.getEvalOrigin();if(I.isNative())C.native=!0;let g;try{g=I.getTypeName()}catch(H){}if(g&&g!=="Object"&&g!=="[object Object]")C.type=g;let F=I.getFunctionName();if(F)C.function=F;let N=I.getMethodName();if(N&&F!==N)C.method=N;return C}parseLine(B){let I=B&&B.match(uT);if(!I)return null;let C=I[1]==="new",g=I[2],F=I[3],N=I[4],H=Number(I[5]),M=Number(I[6]),U=I[7],u=I[8],X=I[9],k=I[10]==="native",W=I[11]===")",z,$={};if(u)$.line=Number(u);if(X)$.column=Number(X);if(W&&U){let O=0;for(let v=U.length-1;v>0;v--)if(U.charAt(v)===")")O++;else if(U.charAt(v)==="("&&U.charAt(v-1)===" "){if(O--,O===-1&&U.charAt(v-1)===" "){let d=U.slice(0,v-1);U=U.slice(v+1),g+=` (${d}`;break}}}if(g){let O=g.match(KT);if(O)g=O[1],z=O[2]}if(xR($,U,this._cwd),C)Object.defineProperty($,"constructor",{value:!0,configurable:!0});if(F)$.evalOrigin=F,$.evalLine=H,$.evalColumn=M,$.evalFile=N&&N.replace(/\\/g,"/");if(k)$.native=!0;if(g)$.function=g;if(z&&g!==z)$.method=z;return $}}function xR(B,I,C){if(I){if(I=I.replace(/\\/g,"/"),I.startsWith(`${C}/`))I=I.slice(C.length+1);B.file=I}}function LT(B){if(B.length===0)return[];let I=B.map((C)=>MT(C));return new RegExp(`[/\\\\]node_modules[/\\\\](?:${I.join("|")})[/\\\\][^:]+:\\d+:\\d+`)}var uT=new RegExp("^(?:\\s*at )?(?:(new) )?(?:(.*?) \\()?(?:eval at ([^ ]+) \\((.+?):(\\d+):(\\d+)\\), )?(?:(.+?):(\\d+):(\\d+)|(native))(\\)?)$"),KT=/^(.*?) \[as (.*?)\]$/;iR.exports=NH});var RT=(B,I=2)=>{return B.replace(/^\t+/gm,(C)=>" ".repeat(C.length*I))},cR;var lR=c(()=>{cR=RT});var WT=(B,I)=>{let C=[],g=B-I,F=B+I;for(let N=g;N<=F;N++)C.push(N);return C},YT=(B,I,C={})=>{var g;if(typeof B!=="string")throw TypeError("Source code is missing.");if(!I||I<1)throw TypeError("Line number must start from `1`.");let F=cR(B).split(/\r?\n/);if(I>F.length)return;return WT(I,(g=C.around)!==null&&g!==void 0?g:3).filter((N)=>F[N-1]!==void 0).map((N)=>({line:N,value:F[N-1]}))},aR;var oR=c(()=>{lR();aR=YT});var nR,rC;var z2=c(()=>{nR=YA(FB(),1),rC=nR.createContext({isScreenReaderEnabled:!1})});var rR,T3;var HH=c(()=>{rR=YA(FB(),1),T3=rR.createContext(void 0)});var sC,sR,h;var v3=c(()=>{z2();HH();sC=YA(FB(),1),sR=sC.forwardRef(({children:B,backgroundColor:I,"aria-label":C,"aria-hidden":g,"aria-role":F,"aria-state":N,...H},M)=>{let{isScreenReaderEnabled:U}=sC.useContext(rC),u=C?sC.default.createElement("ink-text",null,C):void 0;if(U&&g)return null;let X=sC.default.createElement("ink-box",{ref:M,style:{flexWrap:"nowrap",flexDirection:"row",flexGrow:0,flexShrink:1,...H,backgroundColor:I,overflowX:H.overflowX??H.overflow??"visible",overflowY:H.overflowY??H.overflow??"visible"},internal_accessibility:{role:F,state:N}},U&&u?u:B);if(I)return sC.default.createElement(T3.Provider,{value:I},X);return X});sR.displayName="Box";h=sR});function R({color:B,backgroundColor:I,dimColor:C=!1,bold:g=!1,italic:F=!1,underline:N=!1,strikethrough:H=!1,inverse:M=!1,wrap:U="wrap",children:u,"aria-label":X,"aria-hidden":k=!1}){let{isScreenReaderEnabled:W}=z1.useContext(rC),z=z1.useContext(T3),$=W&&X?X:u;if($===void 0||$===null)return null;let O=(v)=>{if(C)v=JQ.dim(v);if(B)v=UE(v,B,"foreground");let d=I??z;if(d)v=UE(v,d,"background");if(g)v=JQ.bold(v);if(F)v=JQ.italic(v);if(N)v=JQ.underline(v);if(H)v=JQ.strikethrough(v);if(M)v=JQ.inverse(v);return v};if(W&&k)return null;return z1.default.createElement("ink-text",{style:{flexGrow:0,flexShrink:1,flexDirection:"row",textWrap:U},internal_transform:O},W&&X?X:u)}var z1;var JH=c(()=>{U3();L3();z2();HH();z1=YA(FB(),1)});import*as _3 from"fs";import{cwd as eR}from"process";function LH({error:B}){let I=B.stack?B.stack.split(`
263
+ `).slice(1):void 0,C=I?tR.parseLine(I[0]):void 0,g=MH(C?.file),F,N=0;if(g&&C?.line&&_3.existsSync(g)){let H=_3.readFileSync(g,"utf8");if(F=aR(H,C.line),F)for(let{line:M}of F)N=Math.max(N,String(M).length)}return zQ.default.createElement(h,{flexDirection:"column",padding:1},zQ.default.createElement(h,null,zQ.default.createElement(R,{backgroundColor:"red",color:"white"}," ","ERROR"," "),zQ.default.createElement(R,null," ",B.message)),C&&g&&zQ.default.createElement(h,{marginTop:1},zQ.default.createElement(R,{dimColor:!0},g,":",C.line,":",C.column)),C&&F&&zQ.default.createElement(h,{marginTop:1,flexDirection:"column"},F.map(({line:H,value:M})=>zQ.default.createElement(h,{key:H},zQ.default.createElement(h,{width:N+1},zQ.default.createElement(R,{dimColor:H!==C.line,backgroundColor:H===C.line?"red":void 0,color:H===C.line?"white":void 0,"aria-label":H===C.line?`Line ${H}, error`:`Line ${H}`},String(H).padStart(N," "),":")),zQ.default.createElement(R,{key:H,backgroundColor:H===C.line?"red":void 0,color:H===C.line?"white":void 0}," "+M)))),B.stack&&zQ.default.createElement(h,{marginTop:1,flexDirection:"column"},B.stack.split(`
264
+ `).slice(1).map((H)=>{let M=tR.parseLine(H);if(!M)return zQ.default.createElement(h,{key:H},zQ.default.createElement(R,{dimColor:!0},"- "),zQ.default.createElement(R,{dimColor:!0,bold:!0},H,"\\t"," "));return zQ.default.createElement(h,{key:H},zQ.default.createElement(R,{dimColor:!0},"- "),zQ.default.createElement(R,{dimColor:!0,bold:!0},M.function),zQ.default.createElement(R,{dimColor:!0,color:"gray","aria-label":`at ${MH(M.file)??""} line ${M.line} column ${M.column}`}," ","(",MH(M.file)??"",":",M.line,":",M.column,")"))})))}var zQ,UH,MH=(B)=>{return B?.replace(`file://${eR()}/`,"")},tR;var AW=c(()=>{oR();v3();JH();zQ=YA(FB(),1),UH=YA(dR(),1),tR=new UH.default({cwd:eR(),internals:UH.default.nodeInternals()})});var V3,P3;var BW=c(()=>{AW();V3=YA(FB(),1);P3=class P3 extends V3.PureComponent{static displayName="InternalErrorBoundary";static getDerivedStateFromError(B){return{error:B}}state={error:void 0};componentDidCatch(B){this.props.onError(B)}render(){if(this.state.error)return V3.default.createElement(LH,{error:this.state.error});return this.props.children}}});import{EventEmitter as ZT}from"events";import XT from"process";function QW({children:B,stdin:I,stdout:C,stderr:g,writeToStdout:F,writeToStderr:N,exitOnCtrlC:H,onExit:M,setCursorPosition:U}){let[u,X]=oA.useState(!0),[k,W]=oA.useState(void 0),[,z]=oA.useState([]),$=oA.useRef(0),O=oA.useRef(0),v=oA.useRef(new ZT);v.current.setMaxListeners(1/0);let d=oA.useRef(void 0),l=oA.useRef(zR()),r=oA.useRef(void 0),FA=oA.useCallback(()=>{if(!r.current)return;clearImmediate(r.current),r.current=void 0},[]),MA=I.isTTY,wA=oA.useCallback(()=>{if(!d.current)return;I.removeListener("readable",d.current),d.current=void 0},[I]),ZA=oA.useCallback(()=>{I.setRawMode(!1),wA(),I.unref(),O.current=0,l.current.reset(),FA()},[I,wA,FA]),GA=oA.useCallback((e)=>{if(MA&&O.current>0)ZA();M(e)},[MA,ZA,M]),s=oA.useCallback((e)=>{if(e==="\x03"&&H){GA();return}if(e===zT)W((UA)=>{if(UA)return;return UA})},[H,GA]),XA=oA.useCallback((e)=>{s(e),v.current.emit("input",e)},[s]),qA=oA.useCallback(()=>{FA(),r.current=setImmediate(()=>{r.current=void 0;let e=l.current.flushPendingEscape();if(!e)return;XA(e)})},[FA,XA]),JA=oA.useCallback(()=>{FA();let e;while((e=I.read())!==null){let UA=l.current.push(e);for(let lA of UA)XA(lA)}if(l.current.hasPendingEscape())qA()},[I,XA,FA,qA]),KA=oA.useCallback((e)=>{if(!MA)if(I===XT.stdin)throw Error(`Raw mode is not supported on the current process.stdin, which Ink uses as input stream by default.
265
+ Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);else throw Error(`Raw mode is not supported on the stdin provided to Ink.
266
+ Read about how to prevent this error on https://github.com/vadimdemedes/ink/#israwmodesupported`);if(I.setEncoding("utf8"),e){if(O.current===0)I.ref(),I.setRawMode(!0),d.current=JA,I.addListener("readable",JA);O.current++;return}if(O.current===0)return;if(--O.current===0)ZA()},[MA,I,JA,ZA]),BB=oA.useCallback((e,UA)=>{let lA=e.findIndex((VA)=>{return VA.id===UA});for(let VA=lA+1;VA<e.length;VA++){let MB=e[VA];if(MB?.isActive)return MB.id}return},[]),IA=oA.useCallback((e,UA)=>{let lA=e.findIndex((VA)=>{return VA.id===UA});for(let VA=lA-1;VA>=0;VA--){let MB=e[VA];if(MB?.isActive)return MB.id}return},[]),_A=oA.useCallback(()=>{z((e)=>{return W((UA)=>{let lA=e.find((MB)=>MB.isActive)?.id;return BB(e,UA)??lA}),e})},[BB]),OA=oA.useCallback(()=>{z((e)=>{return W((UA)=>{let lA=e.findLast((MB)=>MB.isActive)?.id;return IA(e,UA)??lA}),e})},[IA]);oA.useEffect(()=>{let e=(lA)=>{if(!u||$.current===0)return;if(lA===qT)_A();if(lA===kT)OA()};v.current.on("input",e);let UA=v.current;return()=>{UA.off("input",e)}},[u,_A,OA]);let rA=oA.useCallback(()=>{X(!0)},[]),kA=oA.useCallback(()=>{X(!1)},[]),f=oA.useCallback((e)=>{z((UA)=>{if(UA.some((VA)=>VA?.id===e))W(e);return UA})},[]),NA=oA.useCallback((e,{autoFocus:UA})=>{if(z((lA)=>{return $.current=lA.length+1,[...lA,{id:e,isActive:!0}]}),UA)W((lA)=>{if(!lA)return e;return lA})},[]),DA=oA.useCallback((e)=>{W((UA)=>{if(UA===e)return;return UA}),z((UA)=>{let lA=UA.filter((VA)=>{return VA.id!==e});return $.current=lA.length,lA})},[]),WA=oA.useCallback((e)=>{z((UA)=>UA.map((lA)=>{if(lA.id!==e)return lA;return{id:e,isActive:!0}}))},[]),hA=oA.useCallback((e)=>{W((UA)=>{if(UA===e)return;return UA}),z((UA)=>UA.map((lA)=>{if(lA.id!==e)return lA;return{id:e,isActive:!1}}))},[]);oA.useEffect(()=>{return()=>{if(AD.show(C),MA&&O.current>0)ZA()}},[C,MA,ZA]);let GB=oA.useMemo(()=>({exit:GA}),[GA]),bA=oA.useMemo(()=>({stdin:I,setRawMode:KA,isRawModeSupported:MA,internal_exitOnCtrlC:H,internal_eventEmitter:v.current}),[I,KA,MA,H]),hB=oA.useMemo(()=>({stdout:C,write:F}),[C,F]),TB=oA.useMemo(()=>({stderr:g,write:N}),[g,N]),EA=oA.useMemo(()=>({setCursorPosition:U}),[U]),CA=oA.useMemo(()=>({activeId:k,add:NA,remove:DA,activate:WA,deactivate:hA,enableFocus:rA,disableFocus:kA,focusNext:_A,focusPrevious:OA,focus:f}),[k,NA,DA,WA,hA,rA,kA,_A,OA,f]);return oA.default.createElement(IH.Provider,{value:GB},oA.default.createElement(O3.Provider,{value:bA},oA.default.createElement(S3.Provider,{value:hB},oA.default.createElement(DH.Provider,{value:TB},oA.default.createElement($3.Provider,{value:CA},oA.default.createElement(wH.Provider,{value:EA},oA.default.createElement(P3,{onError:GA},B)))))))}var oA,qT="\t",kT="\x1B[Z",zT="\x1B",IW;var EW=c(()=>{AH();EH();CH();gH();FH();y3();GH();BW();oA=YA(FB(),1);QW.displayName="InternalApp";IW=QW});function gW(B){let I=0;for(let C of B)I|=CW[C];return I}var CW,LE;var m3=c(()=>{CW={disambiguateEscapeCodes:1,reportEventTypes:2,reportAlternateKeys:4,reportAllKeysAsEscapeCodes:8,reportAssociatedText:16};LE={shift:1,alt:2,ctrl:4,super:8,hyper:16,meta:32,capsLock:64,numLock:128}});import O2 from"process";class f3{isConcurrent;options;log;cursorPosition;throttledLog;isScreenReaderEnabled;isUnmounted;isUnmounting;lastOutput;lastOutputToRender;lastOutputHeight;lastTerminalWidth;container;rootNode;fullStaticOutput;exitPromise;exitResult;beforeExitHandler;restoreConsole;unsubscribeResize;throttledOnRender;hasPendingThrottledRender=!1;kittyProtocolEnabled=!1;cancelKittyDetection;constructor(B){pN(this),this.options=B,this.rootNode=M1("ink-root"),this.rootNode.onComputeLayout=this.calculateLayout,this.isScreenReaderEnabled=B.isScreenReaderEnabled??O2.env.INK_SCREEN_READER==="true";let I=B.debug||this.isScreenReaderEnabled,C=B.maxFps??30,g=C>0?Math.max(1,Math.ceil(1000/C)):0;if(I)this.rootNode.onRender=this.onRender,this.throttledOnRender=void 0;else{let N=fw(this.onRender,g,{leading:!0,trailing:!0});this.rootNode.onRender=()=>{this.hasPendingThrottledRender=!0,N()},this.throttledOnRender=N}this.rootNode.onImmediateRender=this.onRender,this.log=YR.create(B.stdout,{incremental:B.incrementalRendering}),this.cursorPosition=void 0,this.throttledLog=I?this.log:fw((N)=>{let H=this.log.willRender(N),M=ID(this.options.stdout);if(M&&H)this.options.stdout.write(QD);if(this.log(N),M&&H)this.options.stdout.write(nC)},void 0,{leading:!0,trailing:!0}),this.isUnmounted=!1,this.isUnmounting=!1,this.isConcurrent=B.concurrent??!1,this.lastOutput="",this.lastOutputToRender="",this.lastOutputHeight=0,this.lastTerminalWidth=this.getTerminalWidth(),this.fullStaticOutput="";let F=B.concurrent?b3.ConcurrentRoot:b3.LegacyRoot;if(this.container=H0.createContainer(this.rootNode,F,null,!1,null,"id",()=>{},()=>{},()=>{},()=>{}),this.unsubscribeExit=DW.default(this.unmount,{alwaysLast:!1}),g1())H0.injectIntoDevTools();if(B.patchConsole)this.patchConsole();if(!JE)B.stdout.on("resize",this.resized),this.unsubscribeResize=()=>{B.stdout.off("resize",this.resized)};this.initKittyKeyboard()}getTerminalWidth=()=>{if(this.options.stdout.columns)return this.options.stdout.columns;return G5()?.columns??80};resized=()=>{let B=this.getTerminalWidth();if(B<this.lastTerminalWidth)this.log.clear(),this.lastOutput="",this.lastOutputToRender="";this.calculateLayout(),this.onRender(),this.lastTerminalWidth=B};resolveExitPromise=()=>{};rejectExitPromise=()=>{};unsubscribeExit=()=>{};handleAppExit=(B)=>{if(this.isUnmounted||this.isUnmounting)return;if(uH(B)){this.unmount(B);return}this.exitResult=B,this.unmount()};setCursorPosition=(B)=>{this.cursorPosition=B,this.log.setCursorPosition(B)};restoreLastOutput=()=>{this.log.setCursorPosition(this.cursorPosition),this.log(this.lastOutputToRender||this.lastOutput+`
267
+ `)};calculateLayout=()=>{let B=this.getTerminalWidth();this.rootNode.yogaNode.setWidth(B),this.rootNode.yogaNode.calculateLayout(void 0,void 0,vA.DIRECTION_LTR)};onRender=()=>{if(this.hasPendingThrottledRender=!1,this.isUnmounted)return;let B=performance.now(),{output:I,outputHeight:C,staticOutput:g}=s5(this.rootNode,this.isScreenReaderEnabled);this.options.onRender?.({renderTime:performance.now()-B});let F=g&&g!==`
268
+ `;if(this.options.debug){if(F)this.fullStaticOutput+=g;this.options.stdout.write(this.fullStaticOutput+I);return}if(JE){if(F)this.options.stdout.write(g);this.lastOutput=I,this.lastOutputToRender=I+`
269
+ `,this.lastOutputHeight=C;return}if(this.isScreenReaderEnabled){let M=ID(this.options.stdout);if(M)this.options.stdout.write(QD);if(F){let X=this.lastOutputHeight>0?HQ.eraseLines(this.lastOutputHeight):"";this.options.stdout.write(X+g),this.lastOutputHeight=0}if(I===this.lastOutput&&!F){if(M)this.options.stdout.write(nC);return}let U=this.getTerminalWidth(),u=E1(I,U,{trim:!1,hard:!0});if(F)this.options.stdout.write(u);else{let X=this.lastOutputHeight>0?HQ.eraseLines(this.lastOutputHeight):"";this.options.stdout.write(X+u)}if(this.lastOutput=I,this.lastOutputToRender=u,this.lastOutputHeight=u===""?0:u.split(`
270
+ `).length,M)this.options.stdout.write(nC);return}if(F)this.fullStaticOutput+=g;let H=this.options.stdout.isTTY&&C>=this.options.stdout.rows?I:I+`
271
+ `;if(this.lastOutputHeight>=this.options.stdout.rows){let M=ID(this.options.stdout);if(M)this.options.stdout.write(QD);if(this.options.stdout.write(HQ.clearTerminal+this.fullStaticOutput+I),this.lastOutput=I,this.lastOutputToRender=H,this.lastOutputHeight=C,this.log.sync(H),M)this.options.stdout.write(nC);return}if(F){let M=ID(this.options.stdout);if(M)this.options.stdout.write(QD);if(this.log.clear(),this.options.stdout.write(g),this.log(H),M)this.options.stdout.write(nC)}else if(I!==this.lastOutput||this.log.isCursorDirty())this.throttledLog(H);this.lastOutput=I,this.lastOutputToRender=H,this.lastOutputHeight=C};render(B){let I=KH.default.createElement(rC.Provider,{value:{isScreenReaderEnabled:this.isScreenReaderEnabled}},KH.default.createElement(IW,{stdin:this.options.stdin,stdout:this.options.stdout,stderr:this.options.stderr,exitOnCtrlC:this.options.exitOnCtrlC,writeToStdout:this.writeToStdout,writeToStderr:this.writeToStderr,setCursorPosition:this.setCursorPosition,onExit:this.handleAppExit},B));if(this.options.concurrent)H0.updateContainer(I,this.container,null,h3);else H0.updateContainerSync(I,this.container,null,h3),H0.flushSyncWork()}writeToStdout(B){if(this.isUnmounted)return;if(this.options.debug){this.options.stdout.write(B+this.fullStaticOutput+this.lastOutput);return}if(JE){this.options.stdout.write(B);return}let I=ID(this.options.stdout);if(I)this.options.stdout.write(QD);if(this.log.clear(),this.options.stdout.write(B),this.restoreLastOutput(),I)this.options.stdout.write(nC)}writeToStderr(B){if(this.isUnmounted)return;if(this.options.debug){this.options.stderr.write(B),this.options.stdout.write(this.fullStaticOutput+this.lastOutput);return}if(JE){this.options.stderr.write(B);return}let I=ID(this.options.stdout);if(I)this.options.stdout.write(QD);if(this.log.clear(),this.options.stderr.write(B),this.restoreLastOutput(),I)this.options.stdout.write(nC)}unmount(B){if(this.isUnmounted||this.isUnmounting)return;if(this.isUnmounting=!0,this.beforeExitHandler)O2.off("beforeExit",this.beforeExitHandler),this.beforeExitHandler=void 0;let I=this.options.stdout,C=!I.destroyed&&!I.writableEnded&&(I.writable??!0),g=(u)=>{if(typeof u.flush!=="function")return;if(C)u.flush();else if(typeof u.cancel==="function")u.cancel()};if(g(this.throttledOnRender??{}),C){if(!this.throttledOnRender||!this.hasPendingThrottledRender&&this.fullStaticOutput==="")this.calculateLayout(),this.onRender()}if(this.isUnmounted=!0,this.unsubscribeExit(),typeof this.restoreConsole==="function")this.restoreConsole();if(typeof this.unsubscribeResize==="function")this.unsubscribeResize();if(this.cancelKittyDetection)this.cancelKittyDetection();let F=this.throttledLog;if(g(F),C){if(this.kittyProtocolEnabled)try{this.options.stdout.write("\x1B[<u")}catch{}if(JE)this.options.stdout.write(this.lastOutput+`
272
+ `);else if(!this.options.debug)this.log.done()}if(this.kittyProtocolEnabled=!1,this.options.concurrent)H0.updateContainer(null,this.container,null,h3);else H0.updateContainerSync(null,this.container,null,h3),H0.flushSyncWork();k2.delete(this.options.stdout);let{exitResult:N}=this,H=()=>{if(uH(B))this.rejectExitPromise(B);else this.resolveExitPromise(N)},M=B!==void 0&&!uH(B),U=I._writableState!==void 0||I.writableLength!==void 0;if(M)H();else if(C&&U)this.options.stdout.write("",H);else setImmediate(H)}async waitUntilExit(){if(this.exitPromise||=new Promise((B,I)=>{this.resolveExitPromise=B,this.rejectExitPromise=I}),!this.beforeExitHandler)this.beforeExitHandler=()=>{this.unmount()},O2.once("beforeExit",this.beforeExitHandler);return this.exitPromise}clear(){if(!JE&&!this.options.debug)this.log.clear(),this.log.sync(this.lastOutputToRender||this.lastOutput+`
273
+ `)}patchConsole(){if(this.options.debug)return;this.restoreConsole=Bu((B,I)=>{if(B==="stdout")this.writeToStdout(I);if(B==="stderr"){if(!I.startsWith("The above error occurred"))this.writeToStderr(I)}})}initKittyKeyboard(){if(!this.options.kittyKeyboard)return;let B=this.options.kittyKeyboard,I=B.mode??"auto";if(I==="disabled"||!this.options.stdin.isTTY||!this.options.stdout.isTTY)return;let C=B.flags??["disambiguateEscapeCodes"];if(I==="enabled"){this.enableKittyProtocol(C);return}let g=O2.env.TERM??"",F=O2.env.TERM_PROGRAM??"",N="KITTY_WINDOW_ID"in O2.env||g==="xterm-kitty"||F==="WezTerm"||F==="ghostty";if(!JE&&N)this.confirmKittySupport(C)}confirmKittySupport(B){let{stdin:I,stdout:C}=this.options,g=[],F=()=>{this.cancelKittyDetection=void 0,clearTimeout(H),I.removeListener("data",N);let M=PT(g);if(g=[],M.length>0)I.unshift(Buffer.from(M))},N=(M)=>{let U=typeof M==="string"?Buffer.from(M):M;for(let u of U)g.push(u);if(VT(g)){if(F(),!this.isUnmounted)this.enableKittyProtocol(B)}};I.on("data",N);let H=setTimeout(F,200);this.cancelKittyDetection=F,C.write("\x1B[?u")}enableKittyProtocol(B){this.options.stdout.write(`\x1B[>${gW(B)}u`),this.kittyProtocolEnabled=!0}}var KH,DW,b3,h3=()=>{},OT=27,ST=91,$T=63,yT=117,TT=48,vT=57,_T=(B)=>B>=TT&&B<=vT,FW=(B,I)=>{if(B[I]!==OT||B[I+1]!==ST||B[I+2]!==$T)return;let C=I+3,g=C;while(C<B.length&&_T(B[C]))C++;if(C===g)return;if(C===B.length)return{state:"partial"};if(B[C]===yT)return{state:"complete",endIndex:C};return},VT=(B)=>{for(let I=0;I<B.length;I++)if(FW(B,I)?.state==="complete")return!0;return!1},PT=(B)=>{let I=[],C=0;while(C<B.length){let g=FW(B,C);if(g?.state==="complete"){C=g.endIndex+1;continue}if(g?.state==="partial")break;I.push(B[C]),C++}return I},uH=(B)=>{return B instanceof Error||Object.prototype.toString.call(B)==="[object Error]"};var wW=c(async()=>{xL();xw();xN();Qu();D5();Vu();N5();ZR();XR();QH();EW();z2();m3();await B2([aC(),H3(),t5(),w3()]);KH=YA(FB(),1),DW=YA(aN(),1),b3=YA(cw(),1)});import{Stream as mT}from"stream";import j3 from"process";var hT=(B,I)=>{let C={stdout:j3.stdout,stdin:j3.stdin,stderr:j3.stderr,debug:!1,exitOnCtrlC:!0,patchConsole:!0,maxFps:30,incrementalRendering:!1,concurrent:!1,...bT(I)},g=fT(C.stdout,()=>new f3(C),C.concurrent??!1);return g.render(B),{rerender:g.render,unmount(){g.unmount()},waitUntilExit:g.waitUntilExit,cleanup:()=>k2.delete(C.stdout),clear:g.clear}},ED,bT=(B={})=>{if(B instanceof mT)return{stdout:B,stdin:j3.stdin};return B},fT=(B,I,C)=>{let g=k2.get(B);if(!g)g=I(),k2.set(B,g);else if(g.isConcurrent!==C)console.warn(`Warning: render() was called with concurrent: ${C}, but the existing instance for this stdout uses concurrent: ${g.isConcurrent}. The concurrent option only takes effect on the first render. Call unmount() first if you need to change the rendering mode.`);return g};var GW=c(async()=>{QH();await wW();ED=hT});var jT;var NW=c(async()=>{await B2([aC(),H3(),t5(),w3()]);jT=YA(cw(),1)});var x3;var HW=c(()=>{x3=YA(FB(),1)});var JW;var MW=c(()=>{z2();JW=YA(FB(),1)});var xT;var UW=c(()=>{xT=YA(FB(),1)});var pT;var LW=c(()=>{v3();pT=YA(FB(),1)});import{Buffer as iT}from"buffer";function ZW(B){if(B===3)return"release";if(B===2)return"repeat";return"press"}function XW(B){return{ctrl:!!(B&LE.ctrl),shift:!!(B&LE.shift),meta:!!(B&LE.meta),option:!!(B&LE.alt),super:!!(B&LE.super),hyper:!!(B&LE.hyper),capsLock:!!(B&LE.capsLock),numLock:!!(B&LE.numLock)}}var dT,cT,KW,RW,lT=(B)=>{return["[a","[b","[c","[d","[e","[2$","[3$","[5$","[6$","[7$","[8$","[Z"].includes(B)},aT=(B)=>{return["Oa","Ob","Oc","Od","Oe","[2^","[3^","[5^","[6^","[7^","[8^"].includes(B)},WW,oT,nT,rT,uW,YW=(B)=>B>=0&&B<=1114111&&!(B>=55296&&B<=57343),RH=(B)=>YW(B)?String.fromCodePoint(B):"?",sT=(B)=>{let I=WW.exec(B);if(!I)return null;let C=parseInt(I[1],10),g=I[2]?Math.max(0,parseInt(I[2],10)-1):0,F=I[3]?parseInt(I[3],10):1,N=I[4];if(!YW(C))return null;let H;if(N)H=N.split(":").map((u)=>RH(parseInt(u,10))).join("");let M,U;if(C===32)M="space",U=!0;else if(C===13)M="return",U=!0;else if(uW[C])M=uW[C],U=!1;else if(C>=1&&C<=26)M=String.fromCodePoint(C+96),U=!1;else M=RH(C).toLowerCase(),U=!0;if(U&&!H)H=RH(C);return{name:M,...XW(g),eventType:ZW(F),sequence:B,raw:B,isKittyProtocol:!0,isPrintable:U,text:H}},tT=(B)=>{let I=oT.exec(B);if(!I)return null;let C=parseInt(I[1],10),g=Math.max(0,parseInt(I[2],10)-1),F=parseInt(I[3],10),N=I[4],H=N==="~"?rT[C]:nT[N];if(!H)return null;return{name:H,...XW(g),eventType:ZW(F),sequence:B,raw:B,isKittyProtocol:!0,isPrintable:!1}},eT=(B="")=>{let I;if(iT.isBuffer(B))if(B[0]>127&&B[1]===void 0)B[0]-=128,B="\x1B"+String(B);else B=String(B);else if(B!==void 0&&typeof B!=="string")B=String(B);else if(!B)B="";let C=sT(B);if(C)return C;let g=tT(B);if(g)return g;if(WW.test(B))return{name:"",ctrl:!1,meta:!1,shift:!1,option:!1,sequence:B,raw:B,isKittyProtocol:!0,isPrintable:!1};let F={name:"",ctrl:!1,meta:!1,shift:!1,option:!1,sequence:B,raw:B};if(F.sequence=F.sequence||B||F.name,B==="\r"||B==="\x1B\r")F.raw=void 0,F.name="return",F.option=B.length===2;else if(B===`
274
+ `)F.name="enter";else if(B==="\t")F.name="tab";else if(B==="\b"||B==="\x1B\b")F.name="backspace",F.meta=B.charAt(0)==="\x1B";else if(B==="\x7F"||B==="\x1B\x7F")F.name="delete",F.meta=B.charAt(0)==="\x1B";else if(B==="\x1B"||B==="\x1B\x1B")F.name="escape",F.meta=B.length===2;else if(B===" "||B==="\x1B ")F.name="space",F.meta=B.length===2;else if(B.length===1&&B<="\x1A")F.name=String.fromCharCode(B.charCodeAt(0)+97-1),F.ctrl=!0;else if(B.length===1&&B>="0"&&B<="9")F.name="number";else if(B.length===1&&B>="a"&&B<="z")F.name=B;else if(B.length===1&&B>="A"&&B<="Z")F.name=B.toLowerCase(),F.shift=!0;else if(I=dT.exec(B))F.meta=!0,F.shift=/^[A-Z]$/.test(I[1]);else if(I=cT.exec(B)){let N=[...B];if(N[0]==="\x1B"&&N[1]==="\x1B")F.option=!0;let H=[I[1],I[2],I[4],I[6]].filter(Boolean).join(""),M=(I[3]||I[5]||1)-1;F.ctrl=!!(M&4),F.meta=!!(M&10),F.shift=!!(M&1),F.code=H,F.name=KW[H],F.shift=lT(H)||F.shift,F.ctrl=aT(H)||F.ctrl}return F},qW;var kW=c(()=>{m3();dT=/^(?:\x1b)([a-zA-Z0-9])$/,cT=/^(?:\x1b+)(O|N|\[|\[\[)(?:(\d+)(?:;(\d+))?([~^$])|(?:1;)?(\d+)?([a-zA-Z]))/,KW={OP:"f1",OQ:"f2",OR:"f3",OS:"f4","[11~":"f1","[12~":"f2","[13~":"f3","[14~":"f4","[[A":"f1","[[B":"f2","[[C":"f3","[[D":"f4","[[E":"f5","[15~":"f5","[17~":"f6","[18~":"f7","[19~":"f8","[20~":"f9","[21~":"f10","[23~":"f11","[24~":"f12","[A":"up","[B":"down","[C":"right","[D":"left","[E":"clear","[F":"end","[H":"home",OA:"up",OB:"down",OC:"right",OD:"left",OE:"clear",OF:"end",OH:"home","[1~":"home","[2~":"insert","[3~":"delete","[4~":"end","[5~":"pageup","[6~":"pagedown","[[5~":"pageup","[[6~":"pagedown","[7~":"home","[8~":"end","[a":"up","[b":"down","[c":"right","[d":"left","[e":"clear","[2$":"insert","[3$":"delete","[5$":"pageup","[6$":"pagedown","[7$":"home","[8$":"end",Oa:"up",Ob:"down",Oc:"right",Od:"left",Oe:"clear","[2^":"insert","[3^":"delete","[5^":"pageup","[6^":"pagedown","[7^":"home","[8^":"end","[Z":"tab"},RW=[...Object.values(KW),"backspace"],WW=/^\x1b\[(\d+)(?:;(\d+)(?::(\d+))?(?:;([\d:]+))?)?u$/,oT=/^\x1b\[(\d+);(\d+):(\d+)([A-Za-z~])$/,nT={A:"up",B:"down",C:"right",D:"left",E:"clear",F:"end",H:"home",P:"f1",Q:"f2",R:"f3",S:"f4"},rT={2:"insert",3:"delete",5:"pageup",6:"pagedown",7:"home",8:"end",11:"f1",12:"f2",13:"f3",14:"f4",15:"f5",17:"f6",18:"f7",19:"f8",20:"f9",21:"f10",23:"f11",24:"f12"},uW={27:"escape",9:"tab",127:"delete",8:"backspace",57358:"capslock",57359:"scrolllock",57360:"numlock",57361:"printscreen",57362:"pause",57363:"menu",57376:"f13",57377:"f14",57378:"f15",57379:"f16",57380:"f17",57381:"f18",57382:"f19",57383:"f20",57384:"f21",57385:"f22",57386:"f23",57387:"f24",57388:"f25",57389:"f26",57390:"f27",57391:"f28",57392:"f29",57393:"f30",57394:"f31",57395:"f32",57396:"f33",57397:"f34",57398:"f35",57399:"kp0",57400:"kp1",57401:"kp2",57402:"kp3",57403:"kp4",57404:"kp5",57405:"kp6",57406:"kp7",57407:"kp8",57408:"kp9",57409:"kpdecimal",57410:"kpdivide",57411:"kpmultiply",57412:"kpsubtract",57413:"kpadd",57414:"kpenter",57415:"kpequal",57416:"kpseparator",57417:"kpleft",57418:"kpright",57419:"kpup",57420:"kpdown",57421:"kppageup",57422:"kppagedown",57423:"kphome",57424:"kpend",57425:"kpinsert",57426:"kpdelete",57427:"kpbegin",57428:"mediaplay",57429:"mediapause",57430:"mediaplaypause",57431:"mediareverse",57432:"mediastop",57433:"mediafastforward",57434:"mediarewind",57435:"mediatracknext",57436:"mediatrackprevious",57437:"mediarecord",57438:"lowervolume",57439:"raisevolume",57440:"mutevolume",57441:"leftshift",57442:"leftcontrol",57443:"leftalt",57444:"leftsuper",57445:"lefthyper",57446:"leftmeta",57447:"rightshift",57448:"rightcontrol",57449:"rightalt",57450:"rightsuper",57451:"righthyper",57452:"rightmeta",57453:"isoLevel3Shift",57454:"isoLevel5Shift"};qW=eT});var zW,Av=()=>zW.useContext(O3),S2;var p3=c(()=>{CH();zW=YA(FB(),1),S2=Av});var WH,Bv=(B,I={})=>{let{stdin:C,setRawMode:g,internal_exitOnCtrlC:F,internal_eventEmitter:N}=S2();WH.useEffect(()=>{if(I.isActive===!1)return;return g(!0),()=>{g(!1)}},[I.isActive,g]),WH.useEffect(()=>{if(I.isActive===!1)return;let H=(M)=>{let U=qW(M),u={upArrow:U.name==="up",downArrow:U.name==="down",leftArrow:U.name==="left",rightArrow:U.name==="right",pageDown:U.name==="pagedown",pageUp:U.name==="pageup",home:U.name==="home",end:U.name==="end",return:U.name==="return",escape:U.name==="escape",ctrl:U.ctrl,shift:U.shift,tab:U.name==="tab",backspace:U.name==="backspace",delete:U.name==="delete",meta:U.meta||U.name==="escape"||U.option,super:U.super??!1,hyper:U.hyper??!1,capsLock:U.capsLock??!1,numLock:U.numLock??!1,eventType:U.eventType},X;if(U.isKittyProtocol)if(U.isPrintable)X=U.text??U.name;else if(U.ctrl&&U.name.length===1)X=U.name;else X="";else if(U.ctrl)X=U.name;else X=U.sequence;if(!U.isKittyProtocol&&RW.includes(U.name))X="";if(X.startsWith("\x1B"))X=X.slice(1);if(X.length===1&&typeof X[0]==="string"&&/[A-Z]/.test(X[0]))u.shift=!0;if(!(X==="c"&&u.ctrl)||!F)H0.batchedUpdates(()=>{B(X,u)})};return N?.on("input",H),()=>{N?.removeListener("input",H)}},[I.isActive,C,F,B])},QQ;var OW=c(async()=>{kW();p3();await H3();WH=YA(FB(),1),QQ=Bv});var Qv;var SW=c(()=>{EH();Qv=YA(FB(),1)});var $W,Iv=()=>$W.useContext(S3),YH;var yW=c(()=>{gH();$W=YA(FB(),1),YH=Iv});var Ev;var TW=c(()=>{FH();Ev=YA(FB(),1)});var ZH;var vW=c(()=>{y3();p3();ZH=YA(FB(),1)});var Cv;var _W=c(()=>{y3();Cv=YA(FB(),1)});var gv;var VW=c(()=>{z2();gv=YA(FB(),1)});var i3;var PW=c(()=>{GH();i3=YA(FB(),1)});var mW=()=>{};var RI=c(async()=>{v3();JH();HW();MW();UW();LW();SW();p3();yW();TW();vW();_W();VW();PW();mW();m3();await B2([GW(),NW(),OW()])});var _B=pI((Dv)=>{var CD=YA(FB());(function(){function B(f){if(f==null)return null;if(typeof f==="function")return f.$$typeof===XA?null:f.displayName||f.name||null;if(typeof f==="string")return f;switch(f){case O:return"Fragment";case d:return"Profiler";case v:return"StrictMode";case MA:return"Suspense";case wA:return"SuspenseList";case s:return"Activity"}if(typeof f==="object")switch(typeof f.tag==="number"&&console.error("Received an unexpected object in getComponentNameFromType(). This is likely a bug in React. Please file an issue."),f.$$typeof){case $:return"Portal";case r:return f.displayName||"Context";case l:return(f._context.displayName||"Context")+".Consumer";case FA:var NA=f.render;return f=f.displayName,f||(f=NA.displayName||NA.name||"",f=f!==""?"ForwardRef("+f+")":"ForwardRef"),f;case ZA:return NA=f.displayName||null,NA!==null?NA:B(f.type)||"Memo";case GA:NA=f._payload,f=f._init;try{return B(f(NA))}catch(DA){}}return null}function I(f){return""+f}function C(f){try{I(f);var NA=!1}catch(hA){NA=!0}if(NA){NA=console;var DA=NA.error,WA=typeof Symbol==="function"&&Symbol.toStringTag&&f[Symbol.toStringTag]||f.constructor.name||"Object";return DA.call(NA,"The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",WA),I(f)}}function g(f){if(f===O)return"<>";if(typeof f==="object"&&f!==null&&f.$$typeof===GA)return"<...>";try{var NA=B(f);return NA?"<"+NA+">":"<...>"}catch(DA){return"<...>"}}function F(){var f=qA.A;return f===null?null:f.getOwner()}function N(){return Error("react-stack-top-frame")}function H(f){if(JA.call(f,"key")){var NA=Object.getOwnPropertyDescriptor(f,"key").get;if(NA&&NA.isReactWarning)return!1}return f.key!==void 0}function M(f,NA){function DA(){IA||(IA=!0,console.error("%s: `key` is not a prop. Trying to access it will result in `undefined` being returned. If you need to access the same value within the child component, you should pass it as a different prop. (https://react.dev/link/special-props)",NA))}DA.isReactWarning=!0,Object.defineProperty(f,"key",{get:DA,configurable:!0})}function U(){var f=B(this.type);return _A[f]||(_A[f]=!0,console.error("Accessing element.ref was removed in React 19. ref is now a regular prop. It will be removed from the JSX Element type in a future release.")),f=this.props.ref,f!==void 0?f:null}function u(f,NA,DA,WA,hA,GB){var bA=DA.ref;return f={$$typeof:z,type:f,key:NA,props:DA,_owner:WA},(bA!==void 0?bA:null)!==null?Object.defineProperty(f,"ref",{enumerable:!1,get:U}):Object.defineProperty(f,"ref",{enumerable:!1,value:null}),f._store={},Object.defineProperty(f._store,"validated",{configurable:!1,enumerable:!1,writable:!0,value:0}),Object.defineProperty(f,"_debugInfo",{configurable:!1,enumerable:!1,writable:!0,value:null}),Object.defineProperty(f,"_debugStack",{configurable:!1,enumerable:!1,writable:!0,value:hA}),Object.defineProperty(f,"_debugTask",{configurable:!1,enumerable:!1,writable:!0,value:GB}),Object.freeze&&(Object.freeze(f.props),Object.freeze(f)),f}function X(f,NA,DA,WA,hA,GB){var bA=NA.children;if(bA!==void 0)if(WA)if(KA(bA)){for(WA=0;WA<bA.length;WA++)k(bA[WA]);Object.freeze&&Object.freeze(bA)}else console.error("React.jsx: Static children should always be an array. You are likely explicitly calling React.jsxs or React.jsxDEV. Use the Babel transform instead.");else k(bA);if(JA.call(NA,"key")){bA=B(f);var hB=Object.keys(NA).filter(function(EA){return EA!=="key"});WA=0<hB.length?"{key: someKey, "+hB.join(": ..., ")+": ...}":"{key: someKey}",kA[bA+WA]||(hB=0<hB.length?"{"+hB.join(": ..., ")+": ...}":"{}",console.error(`A props object containing a "key" prop is being spread into JSX:
275
+ let props = %s;
276
+ <%s {...props} />
277
+ React keys must be passed directly to JSX without using spread:
278
+ let props = %s;
279
+ <%s key={someKey} {...props} />`,WA,bA,hB,bA),kA[bA+WA]=!0)}if(bA=null,DA!==void 0&&(C(DA),bA=""+DA),H(NA)&&(C(NA.key),bA=""+NA.key),"key"in NA){DA={};for(var TB in NA)TB!=="key"&&(DA[TB]=NA[TB])}else DA=NA;return bA&&M(DA,typeof f==="function"?f.displayName||f.name||"Unknown":f),u(f,bA,DA,F(),hA,GB)}function k(f){W(f)?f._store&&(f._store.validated=1):typeof f==="object"&&f!==null&&f.$$typeof===GA&&(f._payload.status==="fulfilled"?W(f._payload.value)&&f._payload.value._store&&(f._payload.value._store.validated=1):f._store&&(f._store.validated=1))}function W(f){return typeof f==="object"&&f!==null&&f.$$typeof===z}var z=Symbol.for("react.transitional.element"),$=Symbol.for("react.portal"),O=Symbol.for("react.fragment"),v=Symbol.for("react.strict_mode"),d=Symbol.for("react.profiler"),l=Symbol.for("react.consumer"),r=Symbol.for("react.context"),FA=Symbol.for("react.forward_ref"),MA=Symbol.for("react.suspense"),wA=Symbol.for("react.suspense_list"),ZA=Symbol.for("react.memo"),GA=Symbol.for("react.lazy"),s=Symbol.for("react.activity"),XA=Symbol.for("react.client.reference"),qA=CD.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,JA=Object.prototype.hasOwnProperty,KA=Array.isArray,BB=console.createTask?console.createTask:function(){return null};CD={react_stack_bottom_frame:function(f){return f()}};var IA,_A={},OA=CD.react_stack_bottom_frame.bind(CD,N)(),rA=BB(g(N)),kA={};Dv.Fragment=O,Dv.jsxDEV=function(f,NA,DA,WA){var hA=1e4>qA.recentlyCreatedOwnerStacks++;return X(f,NA,DA,WA,hA?Error("react-stack-top-frame"):OA,hA?BB(g(f)):rA)}})()});function Fv({message:B,defaultValue:I,onResult:C}){let[g,F]=hW.useState(I);return QQ((N,H)=>{if(H.leftArrow||H.rightArrow||N==="h"||N==="l"){F((M)=>!M);return}if(N==="y"||N==="Y"){C(!0);return}if(N==="n"||N==="N"){C(!1);return}if(H.return){C(g);return}if(H.escape){C(!1);return}}),lI.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[lI.jsxDEV(h,{gap:1,children:[lI.jsxDEV(R,{color:"yellow",bold:!0,children:"?"},void 0,!1,void 0,this),lI.jsxDEV(R,{bold:!0,children:B},void 0,!1,void 0,this)]},void 0,!0,void 0,this),lI.jsxDEV(h,{marginTop:1,gap:3,children:[lI.jsxDEV(h,{gap:1,children:lI.jsxDEV(R,{color:g?"green":void 0,bold:g,inverse:g,children:g?" Yes ":" Yes "},void 0,!1,void 0,this)},void 0,!1,void 0,this),lI.jsxDEV(h,{gap:1,children:lI.jsxDEV(R,{color:!g?"red":void 0,bold:!g,inverse:!g,children:!g?" No ":" No "},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),lI.jsxDEV(h,{marginTop:1,children:lI.jsxDEV(R,{dimColor:!0,children:"\u2190\u2192 \u5207\u6362 y/n \u5FEB\u6377\u9009\u62E9 Enter \u786E\u8BA4 Esc \u53D6\u6D88"},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}async function bW(B){return new Promise((I)=>{let C=null;C=ED(lI.jsxDEV(Fv,{message:B.message,defaultValue:B.defaultValue??!0,onResult:(g)=>{C?.clear(),C?.unmount(),C=null,I(g)}},void 0,!1,void 0,this))})}var hW,lI;var fW=c(async()=>{await RI();hW=YA(FB(),1),lI=YA(_B(),1)});var lW={};F0(lW,{showRegionInfo:()=>kH,getNpmRegistry:()=>aI,getMirrors:()=>dW,getLatestBunVersion:()=>cW,getBunMirrorDownloadUrl:()=>qH,getBunInstallCommand:()=>XH,detectRegion:()=>tC,MIRRORS:()=>O1});import{readFileSync as wv,writeFileSync as Gv,mkdirSync as Nv}from"fs";import{join as xW}from"path";import{homedir as pW}from"os";function Jv(){let B=process.env.TAKO_REGION?.trim().toLowerCase();if(B==="cn"||B==="china")return"cn";if(B==="global"||B==="intl"||B==="international")return"global";return null}function Mv(){try{let B=wv(iW,"utf-8"),I=JSON.parse(B);if(I.region!=="cn"&&I.region!=="global")return null;if(typeof I.detectedAt!=="number")return null;if(Date.now()-I.detectedAt>Hv)return null;return I.region}catch{return null}}function jW(B){try{Nv(xW(pW(),".tako"),{recursive:!0}),Gv(iW,JSON.stringify({region:B,detectedAt:Date.now()}),"utf-8")}catch{}}function Uv(){try{let I=Intl.DateTimeFormat().resolvedOptions().timeZone||"";if(/^Asia\/(Shanghai|Urumqi|Chongqing|Harbin|Kashgar|Hong_Kong|Macau)$/i.test(I)){if(/^Asia\/(Shanghai|Urumqi|Chongqing|Harbin|Kashgar)$/i.test(I))return"cn"}}catch{}let B=(process.env.LANG||process.env.LC_ALL||process.env.LC_MESSAGES||"").toLowerCase();if(B.startsWith("zh_cn")||B.startsWith("zh-cn"))return"cn";return null}async function Lv(){if(d3)return d3;return d3=(async()=>{let I=[uv,Kv,Rv,Wv].map((C)=>C().then((g)=>g?g:Promise.reject(Error("null"))));try{return await Promise.race([Promise.any(I),new Promise((g,F)=>setTimeout(()=>F(Error("net-timeout")),1200))])}catch{return"cn"}})(),d3}async function tC(){if($2)return $2;let B=Jv();if(B)return $2=B,B;let I=Mv();if(I)return $2=I,I;let C=Uv();if(C)return $2=C,jW(C),C;let g=await Lv();return $2=g,jW(g),g}async function uv(){try{let B=await fetch("https://ip-api.com/json/?fields=countryCode",{signal:AbortSignal.timeout(1000)});if(!B.ok)return null;return(await B.json()).countryCode==="CN"?"cn":"global"}catch{return null}}async function Kv(){try{let B=await fetch("https://ipinfo.io/json",{signal:AbortSignal.timeout(1000)});if(!B.ok)return null;return(await B.json()).country==="CN"?"cn":"global"}catch{return null}}async function Rv(){try{let B=await fetch("https://api.ip.sb/geoip",{signal:AbortSignal.timeout(1000)});if(!B.ok)return null;return(await B.json()).country_code==="CN"?"cn":"global"}catch{return null}}async function Wv(){let B=[async()=>{let I=await fetch("https://myip.ipip.net/json",{signal:AbortSignal.timeout(800)});if(!I.ok)return null;let C=await I.json(),g=C?.data?.location;if(Array.isArray(g)&&g[0]==="\u4E2D\u56FD")return"cn";let F=C?.data?.country_code;return F==="CN"?"cn":F?"global":null},async()=>{let I=await fetch("https://whois.pconline.com.cn/ipJson.jsp?json=true",{signal:AbortSignal.timeout(800)});if(!I.ok)return null;let C=await I.text();try{let g=JSON.parse(C.trim());if(g.proCode&&/^\d{6}$/.test(g.proCode))return"cn"}catch{}return null},async()=>{let I=await fetch("http://ip.3322.net/api/",{signal:AbortSignal.timeout(600)});if(!I.ok)return null;let C=(await I.text()).trim();if(/^\d+\.\d+\.\d+\.\d+$/.test(C))return"cn";return null}];try{return await Promise.any(B.map((I)=>I().then((C)=>C??Promise.reject())))}catch{return null}}async function dW(){let B=await tC();return O1[B]}async function aI(){return(await dW()).npm}function XH(){return"curl -fsSL https://bun.sh/install | bash"}async function cW(){let B=O1.cn.bunBinary,I=await fetch(`${B}/`,{signal:AbortSignal.timeout(1e4)});if(!I.ok)throw Error(`Failed to fetch bun versions: ${I.status}`);let g=(await I.json()).map((F)=>F.name.replace(/\/$/,"")).filter((F)=>/^bun-v\d+\.\d+\.\d+$/.test(F)).sort((F,N)=>{let H=F.replace("bun-v","").split(".").map(Number),M=N.replace("bun-v","").split(".").map(Number);for(let U=0;U<3;U++)if(H[U]!==M[U])return M[U]-H[U];return 0});if(g.length===0)throw Error("No bun versions found on mirror");return g[0]}async function qH(){let B=O1.cn.bunBinary,I=await cW(),g={darwin:"darwin",win32:"windows",linux:"linux"}[process.platform]||"linux",F=process.arch==="arm64"?"aarch64":"x64",N=`bun-${g}-${F}`;return`${B}/${I}/${N}.zip`}async function kH(){let B=await tC(),I=O1[B];if(B==="cn")nA.info(`${jA("region.usingChinaMirror")} npm: ${I.npm}`);else nA.info(jA("region.usingGlobalMirror"))}var $2=null,d3=null,iW,Hv=2592000000,O1;var y2=c(()=>{kQ();eE();iW=xW(pW(),".tako","region.json"),O1={cn:{npm:"https://registry.npmmirror.com",bunBinary:"https://registry.npmmirror.com/-/binary/bun"},global:{npm:"https://registry.npmjs.org",bunBinary:null}}});var Yv=class{constructor(B){this.baseUrl=B.baseUrl,this.headers={"Content-Type":"application/json",...B.defaultHeaders},this.maxRetries=B.maxRetries??3,this.initialRetryDelay=B.initialRetryDelay??500}async resolveHeaders(){let B={};for(let[I,C]of Object.entries(this.headers)){let g=await C;g!==null&&(B[I]=g)}return B}addHeader(B,I){this.headers[B]=I}async post(B,I,C,g){try{let F=await fetch(B,{method:"POST",headers:await this.resolveHeaders(),body:I?JSON.stringify(I??{}):void 0,keepalive:!0,...C});if(F.status===401)return null;if(F.status!==200&&F.status!==202)throw Error(`HTTP error! status: ${F.status}`);let N=await F.text();return N?JSON.parse(N):null}catch(F){if(g<this.maxRetries){let N=this.initialRetryDelay*2**g;return await new Promise((H)=>setTimeout(H,N)),this.post(B,I,C,g+1)}return console.error("Max retries reached:",F),null}}async fetch(B,I,C={}){let g=`${this.baseUrl}${B}`;return this.post(g,I,C,0)}},aW=class{constructor(B){this.groups=[],this.queue=[],this.options=B;let I={"openpanel-client-id":B.clientId};B.clientSecret&&(I["openpanel-client-secret"]=B.clientSecret),I["openpanel-sdk-name"]=B.sdk||"node",I["openpanel-sdk-version"]=B.sdkVersion||"1.3.1",this.api=new Yv({baseUrl:B.apiUrl||"https://api.openpanel.dev",defaultHeaders:I})}init(){}ready(){this.options.disabled=!1,this.options.waitForProfile=!1,this.flush()}shouldQueue(B){return!!(this.options.disabled||this.options.waitForProfile&&!this.profileId||B.type==="replay"&&!this.sessionId)}addQueue(B){B.type==="track"&&(B.payload.properties={...B.payload.properties??{},__timestamp:new Date().toISOString()}),this.queue.push(B)}async send(B){if(this.options.filter&&!this.options.filter(B))return Promise.resolve();if(this.shouldQueue(B))return this.addQueue(B),Promise.resolve();let I=await this.api.fetch("/track",B,{keepalive:B.type!=="replay"});this.deviceId=I?.deviceId;let C=!!this.sessionId;return this.sessionId=I?.sessionId,!C&&this.sessionId&&this.flush(),I}setGlobalProperties(B){this.global={...this.global,...B}}track(B,I){this.log("track event",B,I);let{groups:C,profileId:g,...F}=I??{},N=[...new Set([...this.groups,...C??[]])];return this.send({type:"track",payload:{name:B,profileId:g??this.profileId,groups:N.length>0?N:void 0,properties:{...this.global??{},...F}}})}identify(B){if(this.log("identify user",B),B.profileId&&(this.profileId=B.profileId,this.flush()),B.profileId&&Object.keys(B).length>1)return this.send({type:"identify",payload:{...B,properties:{...this.global,...B.properties}}})}upsertGroup(B){return this.log("upsert group",B),this.send({type:"group",payload:B})}setGroup(B){return this.log("set group",B),this.groups.includes(B)||(this.groups=[...this.groups,B]),this.send({type:"assign_group",payload:{groupIds:[B],profileId:this.profileId}})}setGroups(B){return this.log("set groups",B),this.groups=[...new Set([...this.groups,...B])],this.send({type:"assign_group",payload:{groupIds:B,profileId:this.profileId}})}alias(B){}increment(B){return this.send({type:"increment",payload:B})}decrement(B){return this.send({type:"decrement",payload:B})}revenue(B,I){let C=I?.deviceId;return delete I?.deviceId,this.track("revenue",{...I??{},...C?{__deviceId:C}:{},__revenue:B})}getDeviceId(){return this.deviceId??""}getSessionId(){return this.sessionId??""}fetchDeviceId(){return Promise.resolve(this.deviceId??"")}clear(){this.profileId=void 0,this.groups=[],this.deviceId=void 0,this.sessionId=void 0}buildFlushPayload(B){if(B.type==="replay")return B.payload;if(B.type==="track"){let I="groups"in B.payload?B.payload.groups??[]:[],C=[...new Set([...this.groups,...I])];return{...B.payload,profileId:B.payload.profileId??this.profileId,groups:C.length>0?C:void 0}}return B.type==="identify"||B.type==="increment"||B.type==="decrement"?{...B.payload,profileId:B.payload.profileId??this.profileId}:B.type==="assign_group"?{...B.payload,profileId:B.payload.profileId??this.profileId}:B.payload}flush(){let B=[];for(let I of this.queue){if(this.shouldQueue(I)){B.push(I);continue}let C=this.buildFlushPayload(I);this.send({...I,payload:C})}this.queue=B}log(...B){this.options.debug&&console.log("[OpenPanel.dev]",...B)}};var oW=()=>{};function nW(){if(!T2)T2=new aW({clientId:Zv,clientSecret:Xv,apiUrl:qv});return T2}function rW(B,I,C){let g=nW().track(B,{profileId:I,...C}).catch(()=>{});c3.push(g)}function sW(B,I){let{email:C,...g}=I,F=nW().identify({profileId:B,...typeof C==="string"?{email:C}:{},firstName:String(g.platform||""),properties:g}).catch(()=>{});c3.push(F)}async function tW(){if(await Promise.allSettled(c3),c3.length=0,T2){try{T2.flush()}catch{}T2=null}}var Zv="d65a6d4b-f702-4af6-98e7-bdb999e01d5f",Xv="sec_1e0ea34016bc3a5f8ef5",qv="https://op.shiroha.tech/api",T2=null,c3;var eW=c(()=>{oW();c3=[]});function AY(){return{cli_version:kv,platform:process.platform,arch:process.arch,locale:G0(),node_version:process.version}}function BY(B){return Bun.hash(B).toString(16).slice(0,8)}var kv="0.3.12";var zH=c(()=>{kQ()});async function QY(){if(v2!==null)return v2;try{return v2=(await AB()).telemetryEnabled!==!1,v2}catch{return v2=!1,!1}}async function IY(){try{let B=await AB();if(B.apiId)return B.apiId;let I=B.providers??[],C=B.defaultProviderId,g=C?I.find((F)=>F.id===C):I[0];if(g){if(g.apiId)return g.apiId;if(g.email)return g.email;return g.id}return"anonymous"}catch{return"anonymous"}}async function h0(){if(OH)return;try{if(!await QY())return;let B=await AB(),I=await IY();if(I==="anonymous")return;let g=(B.providers??[]).find((N)=>N.email)?.email,F=await tC();sW(I,{...g?{email:g}:{},region:F,locale:G0(),first_seen_version:zv,platform:process.platform,arch:process.arch}),OH=!0}catch{}}function PQ(B,I){Ov(B,I).catch(()=>{})}async function Ov(B,I){try{if(!await QY())return;let C=await IY();rW(B,C,{...AY(),...I})}catch{}}async function S1(){await tW()}function EC(){v2=null,OH=!1}var zv="0.3.12",OH=!1,v2=null;var uE=c(()=>{eW();sB();y2();kQ();zH();zH()});function Tv(B,I){let C=[];if(I.phase)C.push(I.phase);if(I.pkgCount>0)C.push(`\u5DF2\u5904\u7406 ${I.pkgCount} \u4E2A\u5305`);return C.push(`${I.elapsedSec}s`),`${B} \xB7 ${C.join(" \xB7 ")}`}async function l3(B,I,C){let g=Date.now(),F={phase:"\u6B63\u5728\u51C6\u5907",pkgCount:0,elapsedSec:0},N=[],H=()=>{F.elapsedSec=Math.floor((Date.now()-g)/1000),C(Tv(I,F))};H();let M=setInterval(H,1000),U=(X)=>{if(!X)return;if(N.push(X),Sv.test(X))F.phase="\u89E3\u6790\u4F9D\u8D56";else if(EY.test(X)){F.phase="\u4E0B\u8F7D\u5E76\u89E3\u538B";let k=X.match(EY);if(k)F.pkgCount=parseInt(k[1],10)}else if($v.test(X))F.phase="\u5199\u5165 lockfile";else if(yv.test(X))F.phase="\u5B8C\u6210";H()},u=async(X)=>{if(!X)return;let k=X.getReader(),W=new TextDecoder,z="";try{while(!0){let{done:$,value:O}=await k.read();if($)break;z+=W.decode(O,{stream:!0}).replace(/\r/g,"");let v=z.split(`
280
+ `);z=v.pop()??"";for(let d of v)U(d)}if(z)U(z)}finally{k.releaseLock()}};try{await Promise.all([u(B.stderr),u(B.stdout)])}finally{clearInterval(M)}return N.join(`
281
+ `)}var Sv,EY,$v,yv;var SH=c(()=>{Sv=/^Resolving dependencies/,EY=/^Resolved, downloaded and extracted \[(\d+)\]/,$v=/^Saved lockfile/,yv=/^(\d+) packages? installed/});import{join as mQ}from"path";function vv(B){return B.startsWith(GE)}function CY(B){return{...process.env,BUN_CONFIG_REGISTRY:B,BUN_INSTALL_CACHE_DIR:CN}}async function _v(){try{if(!await Bun.file(iQ).exists())return null;let I=Bun.spawn([iQ,"--version"],{stdout:"pipe",stderr:"pipe"});if(await I.exited,I.exitCode!==0)return null;return(await new Response(I.stdout).text()).trim()}catch{return null}}async function gY(){return await _v()!==null}async function Vv(){if(process.platform==="win32")return!0;try{let I=Bun.spawn(["which","unzip"],{stdout:"pipe",stderr:"pipe"});if(await I.exited,I.exitCode===0)return!0}catch{}nA.warn("\u6B63\u5728\u5B89\u88C5\u7CFB\u7EDF\u4F9D\u8D56 (unzip)...");let B=["apt-get update -qq && apt-get install -y -qq unzip","yum install -y -q unzip","dnf install -y -q unzip","pacman -S --noconfirm unzip","apk add --quiet unzip"];for(let I of B)try{let C=Bun.spawn(["bash","-c",`sudo ${I} 2>/dev/null || ${I}`],{stdout:"pipe",stderr:"pipe"});if(await C.exited,C.exitCode===0)return!0}catch{}return!1}async function Pv(B){let I=await import("fs/promises"),{join:C}=await import("path"),g=process.platform==="win32",F=g?"bun.exe":"bun",N=await qH();nA.info(`\u4ECE npmmirror \u4E0B\u8F7D: ${N}`);let H=await fetch(N);if(!H.ok)throw Error(`\u4E0B\u8F7D\u5931\u8D25: ${H.status}`);let M=C(B,"bun-download.zip");await Bun.write(M,H);let U=C(B,"bin");if(await I.mkdir(U,{recursive:!0}),g){let X=`Expand-Archive -Path "${M}" -DestinationPath "${B}" -Force`,k=Bun.spawn(["powershell","-Command",X],{stdout:"pipe",stderr:"pipe"});if(await k.exited,k.exitCode!==0)throw Error("\u89E3\u538B\u5931\u8D25")}else{let X=Bun.spawn(["unzip","-oq",M,"-d",B],{stdout:"pipe",stderr:"pipe"});if(await X.exited,X.exitCode!==0)throw Error("\u89E3\u538B\u5931\u8D25")}let u=await I.readdir(B);for(let X of u){let k=C(B,X);if((await I.stat(k)).isDirectory()&&X.startsWith("bun-")){let z=C(k,F);try{if(await I.access(z),await I.rename(z,C(U,F)),!g)await I.chmod(C(U,F),493);await I.rm(k,{recursive:!0,force:!0});break}catch{}}}return await I.rm(M,{force:!0}),!0}async function mv(){let B=pg();if(!await Vv())return nA.error("\u8BF7\u5148\u624B\u52A8\u5B89\u88C5 unzip: apt install unzip / yum install unzip"),!1;await kH(),B.start("\u6B63\u5728\u5B89\u88C5 Tako \u4E13\u5C5E Bun \u8FD0\u884C\u65F6...");try{if(await(await import("fs/promises")).mkdir(GE,{recursive:!0}),await tC()==="cn")await Pv(GE);else if(process.platform==="win32"){let g=`$env:BUN_INSTALL="${GE}"; irm bun.sh/install.ps1 | iex`;if(await Bun.spawn(["powershell","-Command",g],{stdout:"inherit",stderr:"inherit"}).exited!==0)return B.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}else{let g=`BUN_INSTALL="${GE}" ${XH()}`;if(await Bun.spawn(["bash","-c",g],{stdout:"inherit",stderr:"inherit"}).exited!==0)return B.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}return gD=iQ,B.stop("Tako \u4E13\u5C5E Bun \u5B89\u88C5\u5B8C\u6210"),nA.info(`\u5B89\u88C5\u4F4D\u7F6E: ${GE}`),!0}catch(I){return B.stop("Bun \u5B89\u88C5\u5931\u8D25"),!1}}async function hv(){if(await gY())return gD=iQ,!0;return nA.warn("\u672A\u68C0\u6D4B\u5230 Tako \u4E13\u5C5E Bun\uFF0C\u6B63\u5728\u81EA\u52A8\u5B89\u88C5..."),nA.info("\uFF08\u4E0D\u4F1A\u5F71\u54CD\u60A8\u7CFB\u7EDF\u4E2D\u5DF2\u5B89\u88C5\u7684 Node.js \u6216 Bun\uFF09"),await mv()}async function KE(){if(gD){if(!vv(gD))gD=iQ;return gD}if(await gY())return gD=iQ,iQ;return iQ}async function VH(B){try{let I=await aI(),C=await fetch(`${I}/${B}/latest`);if(!C.ok)return null;return(await C.json()).version}catch{return null}}async function bv(B){return(await AB()).installedClients[B.id]?.version||null}async function fv(B,I){let C=mQ(B,"node_modules",I,"package.json");try{return await Bun.file(C).exists()}catch{return!1}}async function DY(B){let I=sE(B.id);return fv(I,B.package)}async function FY(B){let I=await bv(B);if(!I)return!0;let C=await VH(B.package);if(!C)return!1;return I!==C}function wY(B){let{platform:I,arch:C}=process,g=`${I}-${C}`;for(let[F,N]of Object.entries(B))if(F.endsWith(g))return{pkg:F,version:N};return null}async function GY(B,I,C,g){let F=mQ(I,"node_modules",B.package,"package.json");try{let N=Bun.file(F);if(!await N.exists())return;let M=(await N.json()).optionalDependencies;if(!M||typeof M!=="object")return;let U=wY(M);if(!U)return;let X=process.platform==="win32"?`${B.command}.exe`:B.command,k=mQ(I,"node_modules",U.pkg,X),W=Bun.file(k);if(await W.exists()&&W.size>1024)return;nA.info(`\u6B63\u5728\u5B89\u88C5\u5E73\u53F0\u5305 ${U.pkg}...`);for(let z of[U.version,"latest"]){let $=Bun.spawn([C,"add",`${U.pkg}@${z}`],{cwd:I,stdout:"pipe",stderr:"pipe",env:CY(g)});if(await $.exited,$.exitCode===0)break;if(z==="latest"){let O=await new Response($.stderr).text();nA.warn(`\u5E73\u53F0\u5305\u5B89\u88C5\u5931\u8D25: ${O.slice(0,200)}`)}}}catch(N){nA.warn(`\u5E73\u53F0\u5305\u68C0\u67E5\u5F02\u5E38: ${N instanceof Error?N.message:"\u672A\u77E5\u9519\u8BEF"}`)}}async function TH(B,I){let C=await import("fs/promises"),g=mQ(I,"node_modules",B.package,"package.json");try{let F=Bun.file(g);if(!await F.exists())return!1;let N=await F.json(),H=N.optionalDependencies;if(!H)return!0;let M=wY(H);if(!M)return nA.warn(`\u672A\u627E\u5230\u5339\u914D\u7684\u5E73\u53F0\u5305 (${process.platform}-${process.arch})`),!1;let U=N.bin,u=typeof U==="string"?U:U?.[B.command];if(!u)return!1;let X=mQ(I,"node_modules",B.package,u),k=process.platform==="win32",W=k?`${B.command}.exe`:B.command,z=mQ(I,"node_modules",M.pkg,W),$=Bun.file(z);if(await $.exists()&&$.size>1024){if(await Bun.write(X,$),!k)await C.chmod(X,493);return!0}let O=mQ(I,"node_modules",B.package,"install.cjs");if(await Bun.file(O).exists()){nA.info("\u6B63\u5728\u901A\u8FC7 postinstall \u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236...");let d=await KE(),l=Bun.spawn([d,O],{cwd:mQ(I,"node_modules",B.package),stdout:"pipe",stderr:"pipe"});if(await l.exited,l.exitCode!==0){let FA=await new Response(l.stderr).text();nA.warn(`postinstall \u5931\u8D25: ${FA.slice(0,200)}`)}let r=Bun.file(X);if(await r.exists()&&r.size>1024){if(!k)await C.chmod(X,493);return!0}}nA.info("\u6B63\u5728\u4ECE registry \u4E0B\u8F7D\u539F\u751F\u4E8C\u8FDB\u5236...");let v=await aI();for(let d of[M.version,"latest"])try{let l=await fetch(`${v}/${M.pkg}/${d}`);if(!l.ok)continue;let FA=(await l.json()).dist?.tarball;if(!FA)continue;let MA=mQ(uQ,".tmp-extract-"+Date.now());await C.mkdir(MA,{recursive:!0});let wA=mQ(MA,"pkg.tgz"),ZA=Bun.spawn(["curl","-fsSL","-o",wA,FA],{stdout:"pipe",stderr:"pipe"});if(await ZA.exited,ZA.exitCode!==0){let KA=await new Response(ZA.stderr).text();nA.warn(`curl \u4E0B\u8F7D\u5931\u8D25: ${KA.slice(0,200)}`),await C.rm(MA,{recursive:!0,force:!0}).catch(()=>{});continue}let GA=Bun.file(wA).size;if(GA<1024){nA.warn(`\u4E0B\u8F7D\u6587\u4EF6\u5F02\u5E38 (${GA} bytes, url: ${FA.slice(0,100)})`),await C.rm(MA,{recursive:!0,force:!0}).catch(()=>{});continue}let s=Bun.spawn(["tar","xzf",wA,"-C",MA,`package/${W}`],{stdout:"pipe",stderr:"pipe"});await s.exited;let XA=mQ(MA,"package",W),qA=Bun.file(XA);if(await qA.exists()&&qA.size>1024){if(await Bun.write(X,qA),!k)await C.chmod(X,493);return await C.rm(MA,{recursive:!0,force:!0}).catch(()=>{}),!0}let JA=await new Response(s.stderr).text();nA.warn(`tar \u63D0\u53D6\u5931\u8D25 (tgz=${GA} bytes, exit=${s.exitCode}): ${JA.slice(0,200)}`),await C.rm(MA,{recursive:!0,force:!0}).catch(()=>{})}catch(l){nA.warn(`\u4E0B\u8F7D\u5931\u8D25: ${l instanceof Error?l.message:"\u672A\u77E5\u9519\u8BEF"}`)}if(v!=="https://registry.npmjs.org")try{let d=`https://registry.npmjs.org/${M.pkg}/-/${M.pkg.split("/").pop()}-${M.version}.tgz`;nA.info("\u6B63\u5728\u4ECE npmjs.org \u76F4\u8FDE\u4E0B\u8F7D...");let l=mQ(uQ,".tmp-extract-"+Date.now());await C.mkdir(l,{recursive:!0});let r=mQ(l,"pkg.tgz"),FA=Bun.spawn(["curl","-fsSL","-o",r,d],{stdout:"pipe",stderr:"pipe"});if(await FA.exited,FA.exitCode===0&&Bun.file(r).size>1024){await Bun.spawn(["tar","xzf",r,"-C",l,`package/${W}`],{stdout:"pipe",stderr:"pipe"}).exited;let wA=Bun.file(mQ(l,"package",W));if(await wA.exists()&&wA.size>1024){if(await Bun.write(X,wA),!k)await C.chmod(X,493);return await C.rm(l,{recursive:!0,force:!0}).catch(()=>{}),!0}}await C.rm(l,{recursive:!0,force:!0}).catch(()=>{})}catch{}return!1}catch(F){return nA.warn(`\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236\u5931\u8D25: ${F instanceof Error?F.message:"\u672A\u77E5\u9519\u8BEF"}`),!1}}async function vH(B,I=!1){let C=pg(),g=sE(B.id);try{if(!await hv())return{success:!1,error:"Tako \u4E13\u5C5E Bun \u5B89\u88C5\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u6216\u624B\u52A8\u5220\u9664 ~/.tako/bun \u76EE\u5F55\u540E\u91CD\u8BD5"};let F=await DY(B),N=I||await FY(B);if(F&&!N)return{success:!0};let H=F?"\u66F4\u65B0":"\u5B89\u88C5",M=`\u6B63\u5728${H} ${B.name}`;C.start(M);let U=await import("fs/promises");await U.mkdir(g,{recursive:!0});let u=mQ(g,"package.json");if(!await Bun.file(u).exists())await Bun.write(u,JSON.stringify({name:`tako-${B.id}`,private:!0,dependencies:{}},null,2));let k=await KE(),W=await aI(),z=await tC();if(nA.info(`\u7F51\u7EDC\u73AF\u5883: ${z==="cn"?"\u56FD\u5185\uFF08npmmirror\uFF09":"\u6D77\u5916"} | registry: ${W}`),F){let r=mQ(g,"bun.lock");await U.rm(r,{force:!0}).catch(()=>{})}let $=Bun.spawn([k,"add",`${B.package}@latest`],{cwd:g,stdout:"pipe",stderr:"pipe",env:CY(W)}),O=await l3($,M,(r)=>C.update(r));if(await $.exited!==0){if(C.stop(`${H} ${B.name} \u5931\u8D25`),!F)await U.rm(u,{force:!0}).catch(()=>{});return{success:!1,error:O||"\u672A\u77E5\u9519\u8BEF"}}await GY(B,g,k,W),await TH(B,g);let d=await VH(B.package),l=(await AB()).installedClients[B.id]?.version;if(d){let r=await AB();if(r.installedClients[B.id]={version:d,installedAt:new Date().toISOString()},await fg(r),F&&l)PQ("client_updated",{client_id:B.id,from_version:l,to_version:d});else PQ("client_installed",{client_id:B.id,client_version:d})}return C.stop(`${B.name} ${H}\u5B8C\u6210`),{success:!0}}catch(F){return C.stop("\u64CD\u4F5C\u5931\u8D25"),{success:!1,error:F instanceof Error?F.message:"\u672A\u77E5\u9519\u8BEF"}}}async function $H(B){try{let I=Bun.file(B);if(!await I.exists())return!0;if(I.size<100)return!0;let g=new Uint8Array(await I.slice(0,4).arrayBuffer());if(g[0]===127&&g[1]===69&&g[2]===76&&g[3]===70)return!1;if(g[0]===254||g[0]===207||g[0]===206||g[0]===202)return!1;if(g[0]===77&&g[1]===90)return!1;return!0}catch{return!0}}async function yH(B){if(B.runtime!=="native")return;let I=sE(B.id),C=mQ(I,"node_modules",B.package,"package.json");try{let g=Bun.file(C);if(!await g.exists())return;let N=(await g.json()).bin;if(!N)return;let H=typeof N==="string"?N:N[B.command];if(!H)return;let M=mQ(I,"node_modules",B.package,H);if(!await $H(M))return;nA.info("\u6B63\u5728\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236...");let U=await KE(),u=await aI();if(await GY(B,I,U,u),!await TH(B,I)||await $H(M)){if(nA.warn("\u539F\u751F\u4E8C\u8FDB\u5236\u4FEE\u590D\u5931\u8D25\uFF0C\u6B63\u5728\u91CD\u65B0\u5B89\u88C5..."),await(await import("fs/promises")).rm(I,{recursive:!0,force:!0}),(await vH(B)).success)if(await TH(B,I),await $H(M))nA.warn("\u91CD\u65B0\u5B89\u88C5\u540E\u4ECD\u65E0\u6CD5\u5B89\u88C5\u539F\u751F\u4E8C\u8FDB\u5236");else nA.success("\u91CD\u65B0\u5B89\u88C5\u5B8C\u6210")}else nA.success("\u539F\u751F\u4E8C\u8FDB\u5236\u5B89\u88C5\u5B8C\u6210")}catch{}}async function NY(B){if(!await DY(B)){let g=await vH(B);if(g.success)await yH(B);return g}if(await yH(B),await FY(B)){let g=await VH(B.package),F=(await AB()).installedClients[B.id]?.version||"\u672A\u77E5",N=g?`${F} \u2192 ${g}`:"\u6709\u65B0\u7248\u672C\u53EF\u7528";if(nA.info(`${B.name} \u53D1\u73B0\u66F4\u65B0: ${N}`),await jv(B.id))return nA.info("\u4ECA\u65E5\u5DF2\u8DF3\u8FC7\u66F4\u65B0\uFF0C\u4F7F\u7528\u5F53\u524D\u7248\u672C"),{success:!0};if(!await bW({message:`\u662F\u5426\u66F4\u65B0 ${B.name}\uFF1F`,defaultValue:!1}))return await xv(B.id),nA.info("\u8DF3\u8FC7\u66F4\u65B0\uFF0C\u4F7F\u7528\u5F53\u524D\u7248\u672C"),{success:!0};let M=await vH(B,!0);if(M.success)await yH(B);return M}return{success:!0}}async function jv(B){try{let I=Bun.file(_H);if(!await I.exists())return!1;let g=(await I.json())[B];if(!g)return!1;let F=new Date().toISOString().slice(0,10);return g===F}catch{return!1}}async function xv(B){try{let I={},C=Bun.file(_H);if(await C.exists())try{I=await C.json()}catch{}I[B]=new Date().toISOString().slice(0,10),await Bun.write(_H,JSON.stringify(I))}catch{}}var gD=null,_H;var $1=c(async()=>{eE();kI();sB();y2();uE();SH();await fW();_H=mQ(uQ,".update-dismissed.json")});function fH(B,I,C){if(I<=0)return;return{usedPct:Math.min(100,Math.max(0,Math.round(B/I*100))),costUsed:B,costLimit:I,...C?{windowMinutes:C}:{}}}function lv(B,I){if(!Number.isFinite(B)||B<0)return;return{usedPct:0,costUsed:B,...I?{windowMinutes:I}:{}}}async function av(B){try{let I=await fetch(`${rQ}/apiStats/api/user-quota`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:B}),signal:AbortSignal.timeout(5000)});if(!I.ok)return null;let C=await I.json();if(!C.plan||!C.usage)return null;return{provider:"tako",status:"ok",primary:fH(C.usage.windowCost??0,C.plan.window_cost_limit??0,C.plan.window_minutes),daily:fH(C.usage.dailyCost??0,C.plan.daily_cost_limit??0),secondary:fH(C.usage.weeklyCost??0,C.plan.weekly_cost_limit??0),fetchedAt:Date.now()}}catch{return null}}async function DD(B){let I=Date.now(),C={provider:"tako",status:"error",fetchedAt:I};if(!B)return{...C,hint:"\u7F3A\u5C11 apiId\uFF0C\u8BF7\u91CD\u65B0\u914D\u7F6E Tako Key",error:"missing_api_id"};let g=await av(B);if(g)return g;try{let F=await fetch(`${rQ}/apiStats/api/user-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:B}),signal:AbortSignal.timeout(5000)});if(!F.ok)return{...C,hint:"Tako \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${F.status}`};let N=await F.json(),H=N?.data;if(!N?.success||!H)return{...C,hint:"Tako \u7528\u91CF\u6570\u636E\u683C\u5F0F\u5F02\u5E38",error:"bad_payload"};let M=H.limits?.currentDailyCost??H.usage?.total?.cost??0;return{provider:"tako",status:"ok",daily:lv(M),fetchedAt:I}}catch(F){return{...C,hint:"Tako \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(F.message??F)}}}async function RY(B){let I=await jg();return DD(I)}var jH=c(()=>{sB()});function xH(B){if(!B||typeof B.utilization!=="number")return;return{usedPct:Math.min(100,Math.max(0,Math.round(B.utilization))),resetsAt:B.resets_at??void 0}}function ov(B){return B.authData?.credentials?.claudeAiOauth?.accessToken}async function WY(B){let I=Date.now(),C={provider:"claude-subscription",status:"error",fetchedAt:I},g=ov(B);if(!g)return{...C,hint:"Claude OAuth \u672A\u4FDD\u5B58\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"missing_access_token"};try{let F=await fetch("https://api.anthropic.com/api/oauth/usage",{method:"GET",headers:{Authorization:`Bearer ${g}`,"anthropic-beta":"oauth-2025-04-20"},signal:AbortSignal.timeout(5000)});if(F.status===401)return{...C,hint:"Claude OAuth \u5DF2\u8FC7\u671F\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"unauthorized"};if(!F.ok)return{...C,hint:"Anthropic \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${F.status}`};let N=await F.json(),H=xH(N.seven_day_opus),M=xH(N.five_hour);if(M)M.windowMinutes=300;let U=xH(N.seven_day);if(U)U.windowMinutes=10080;return{provider:"claude-subscription",status:"ok",primary:M,secondary:U,...H?{modelLimits:{opus:H}}:{},fetchedAt:I}}catch(F){return{...C,hint:"Anthropic \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(F.message??F)}}}function YY(B){if(!B||typeof B.used_percent!=="number")return;let I={usedPct:Math.min(100,Math.max(0,Math.round(B.used_percent)))};if(typeof B.reset_at==="number")I.resetsAt=new Date(B.reset_at*1000).toISOString();if(typeof B.limit_window_seconds==="number")I.windowMinutes=Math.round(B.limit_window_seconds/60);return I}function nv(B){let I=B.authData?.tokens;return{accessToken:I?.access_token,accountId:I?.account_id}}async function rv(B,I){if(await Bun.spawn(["which","codex"],{stdout:"pipe",stderr:"pipe"}).exited!==0)return null;let g=await import("fs/promises"),{mkdtemp:F}=g,{tmpdir:N}=await import("os"),{join:H}=await import("path"),M=await F(H(N(),"tako-codex-"));try{let U={auth_mode:"chatgpt",tokens:{access_token:B,...I?{account_id:I}:{}}};await g.writeFile(H(M,"auth.json"),JSON.stringify(U));let u=[JSON.stringify({jsonrpc:"2.0",method:"initialize",id:0,params:{clientInfo:{name:"tako",version:"1.0"}}}),JSON.stringify({jsonrpc:"2.0",method:"account/rateLimits/read",id:1,params:{}})].join(`
34
282
  `)+`
35
- `,c=Bun.spawn(["codex","app-server"],{stdin:"pipe",stdout:"pipe",stderr:"pipe",env:{...process.env,CODEX_HOME:a}});c.stdin.write(p);let l=new Promise((w)=>setTimeout(w,8000));await Promise.race([c.exited,l]),c.kill();let m=await new Response(c.stdout).text();for(let w of m.split(`
36
- `)){let y=w.trim();if(!y)continue;try{let v=JSON.parse(y);if(v.id!==1)continue;if(v.error)return null;return{status:200,body:JSON.stringify(v.result?.rateLimits??v.result??{})}}catch{continue}}return null}finally{e.rm(a,{recursive:!0,force:!0}).catch(()=>{})}}async function nc(i,o){let n=["-s","-S","--max-time","10","-w",`
37
- __HTTP__%{http_code}`,"https://chatgpt.com/backend-api/wham/usage","-H",`Authorization: Bearer ${i}`,"-H","User-Agent: codex_cli_rs/0.50.0","-H","Accept: application/json"];if(o)n.push("-H",`ChatGPT-Account-Id: ${o}`);let e=Bun.spawn(["curl",...n],{stdout:"pipe",stderr:"pipe"}),d=await new Response(e.stdout).text();await e.exited;let u=d.match(/^([\s\S]*?)\n__HTTP__(\d+)$/);return{body:u?u[1]:d,status:u?parseInt(u[2],10):0}}async function Cu(i){let o=Date.now(),n={provider:"codex-subscription",status:"error",fetchedAt:o},{accessToken:e,accountId:d}=ic(i);if(!e)return{...n,hint:"Codex OAuth \u672A\u4FDD\u5B58\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"missing_access_token"};try{let{status:u,body:t}=await dc(e,d);if(u===401)return{...n,hint:"Codex OAuth \u5DF2\u8FC7\u671F\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"unauthorized"};if(u!==200)return{...n,hint:u===0?"ChatGPT \u7528\u91CF\u83B7\u53D6\u5931\u8D25\uFF1A\u672C\u673A\u7F51\u7EDC\u65E0\u6CD5\u8BBF\u95EE chatgpt.com\uFF08\u53EF\u80FD IP \u88AB Cloudflare \u62E6\u622A\uFF0C\u53EF\u8BD5 HTTPS_PROXY\uFF09":"ChatGPT \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${u}`};let a=JSON.parse(t),r=a.rate_limit??a.rateLimits??a,p=r.primary_window??r.primary,c=r.secondary_window??r.secondary;return{provider:"codex-subscription",status:"ok",primary:Ru(p),secondary:Ru(c),planType:a.plan_type??a.planType,fetchedAt:o}}catch(u){return{...n,hint:"ChatGPT \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(u.message??u)}}}var ec=async(i,o)=>{let n=await oc(i,o).catch(()=>null);if(n)return n;return nc(i,o)},dc;var Hu=G(()=>{dc=ec});var Xu={};ai(Xu,{invalidateQuotaCache:()=>lc,getOfficialQuota:()=>W0,fetchTakoQuotaByApiId:()=>eo,_setQuotaDiskCachePathForTest:()=>rc,_clearQuotaCache:()=>cc});import{homedir as uc}from"os";import{join as tc}from"path";function ac(i){return`${i.type}:${i.id}`}function Tu(){return Zu??tc(uc(),".tako","quota-cache.json")}function rc(i){Zu=i}function Iu(){try{let o=k("fs").readFileSync(Tu(),"utf-8"),n=JSON.parse(o);return typeof n==="object"&&n!==null?n:{}}catch{return{}}}function Ou(i){try{let o=k("fs"),n=Tu(),e=n.slice(0,n.lastIndexOf("/"));if(e)o.mkdirSync(e,{recursive:!0});let d=`${n}.tmp.${process.pid}`;o.writeFileSync(d,JSON.stringify(i)),o.renameSync(d,n)}catch{}}function pc(i){return{provider:i.type,status:"unsupported",fetchedAt:Date.now()}}async function W0(i){let o=ac(i),n=Date.now(),e=zo.get(o);if(e&&n-e.fetchedAt<Yu)return e;let d=Iu(),u=d[o];if(u&&n-u.fetchedAt<Yu)return zo.set(o,u),u;let t;switch(i.type){case"tako":t=await Bu(i);break;case"claude-subscription":t=await Au(i);break;case"codex-subscription":t=await Cu(i);break;default:t=pc(i);break}return zo.set(o,t),d[o]=t,Ou(d),t}function cc(){zo.clear()}function lc(i,o){for(let n of[...zo.keys()])if(n.endsWith(`:${i}`))zo.delete(n);try{let n=Iu(),e=!1;for(let d of Object.keys(n))if(d.endsWith(`:${i}`))delete n[d],e=!0;if(e)Ou(n)}catch{}}var Yu=60000,zo,Zu=null;var N0=G(()=>{L0();Hu();zo=new Map});var Nt={};ai(Nt,{runQuotaCommand:()=>Ec,buildQuotaPayload:()=>Wt});async function Fc(i){try{let n=await(await fetch(`${H}/apiStats/api/get-key-id`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:i}),signal:AbortSignal.timeout(5000)})).json();if(n.success&&n.data?.id)return{valid:!0,apiId:n.data.id};return{valid:!1,error:n.error||"Tako key validation failed"}}catch(o){return{valid:!1,error:String(o.message??o)}}}function Vc(i){let o=(i.providers??[]).find((d)=>d.type==="tako"),n=o?o.apiId||"":i.apiId||"",e=o?o.apiKey||"":i.apiKey||"";if(!n&&!e)return null;return{apiId:n,apiKey:e}}function $0(i){if(!i)return;let o={usedPct:i.usedPct,...i.windowMinutes?{windowMinutes:i.windowMinutes}:{},...i.resetsAt?{resetsAt:i.resetsAt}:{}};if(typeof i.costUsed==="number")o.used=i.costUsed;if(typeof i.costLimit==="number"){o.limit=i.costLimit;let n=i.costUsed??0;o.remaining=Math.max(0,i.costLimit-n),o.remainingPct=Math.max(0,Math.min(100,100-Math.round(i.usedPct)))}return o}function en(i,o,n){return{exitCode:1,payload:{provider:"tako",status:"error",error:i,message:o,...n?{hint:n}:{}}}}function ht(i){return{exitCode:0,payload:{provider:"tako",status:"ok",fiveHour:$0(i.primary),daily:$0(i.daily),weekly:$0(i.secondary),fetchedAt:new Date(i.fetchedAt).toISOString()}}}function Uc(i){return en(i.error||"quota_unavailable",i.hint||"Tako quota is unavailable",i.hint)}async function Wt(i,o={}){let n=o.fetchQuotaByApiId??eo,e=o.resolveApiIdFromKey??Fc,d=Vc(i);if(!d)return en("missing_tako_provider","Tako provider is not configured");let u=null;if(d.apiId){if(u=await n(d.apiId),u.status==="ok")return ht(u)}if(d.apiKey){let t=await e(d.apiKey);if(t.valid&&t.apiId&&t.apiId!==d.apiId){if(u=await n(t.apiId),u.status==="ok")return ht(u)}else if(!d.apiId)return en("api_id_refresh_failed",t.error||"Unable to resolve Tako API ID from API key")}if(u)return Uc(u);return en("missing_api_id","Tako API ID is not configured")}async function Ec(i=[],o={}){if(i.length>0){let d=en("invalid_args","Usage: tako quota");return process.stdout.write(`${JSON.stringify(d.payload)}
38
- `),d.exitCode}let n=o.loadConfig??N,e=await Wt(await n(),o);return process.stdout.write(`${JSON.stringify(e.payload)}
39
- `),e.exitCode}var bt=G(()=>{P();L0()});function go(i,o="human",n={}){if(o==="json"){process.stdout.write(JSON.stringify(g0(i))+`
40
- `);return}if(o==="verbose"){Dc(i,new Date(i.ts).toISOString().slice(11,23),{expandError:!0,...n});return}_c(i,n)}function ft(i){if(i===void 0||i===null)return"";let o;try{o=typeof i==="string"?i:JSON.stringify(i,null,2)}catch{o=String(i)}return o.split(`
41
- `).map((n)=>` \u2502 ${n}`).join(`
42
- `)}function _c(i,o){switch(i.kind){case"text_delta":process.stdout.write(i.text);break;case"tool_use":{let n=kt(i.input)??Pi(JSON.stringify(i.input),240);console.log(`
43
- $ ${n}`);break}case"tool_result":{let n=zt(i.output);if(Go(i.output)){console.log(` \u2717 FAILED${n?` ${n}`:""}`);let d=jc(i.output);if(d)console.log(d.split(`
44
- `).map((u)=>` \u2502 ${u}`).join(`
45
- `))}else if(n)console.log(` ${n}`);break}case"approval_required":console.log(`
46
- \u26A0 APPROVAL [${i.approvalType}] id=${i.approvalId}`),console.log(` ${dn(i.approvalType,i.params)}`);break;case"turn_completed":console.log(`
47
- \u25C0 turn done${i.stopReason&&i.stopReason!=="end_turn"?` (${i.stopReason})`:""}`);break;case"error":{if(console.log(`
48
- \u2717 ${i.message}`),o.expandError&&i.raw!==void 0)console.log(ft(i.raw));else if(i.raw!==void 0)console.log(" (\u8BE6\u7EC6\u9519\u8BEF\u5DF2\u6298\u53E0\uFF0C--errors-only \u6216 logs --errors \u5C55\u5F00)");break}default:break}}function Dc(i,o,n){switch(i.kind){case"session_started":console.log(`[${o}] \u25B6 session_started ${i.backend}${i.model?` model=${i.model}`:""}`);break;case"turn_started":console.log(`[${o}] \u25B6 turn_started ${i.turnId}`);break;case"text_delta":process.stdout.write(i.text);break;case"reasoning_delta":console.log(`
49
- [${o}] \uD83D\uDCAD ${Pi(i.text,240)}`);break;case"tool_use":console.log(`
50
- [${o}] \uD83D\uDD27 ${i.name} ${Pi(JSON.stringify(i.input),240)}`);break;case"tool_result":{let e=Go(i.output);console.log(`[${o}] ${e?"\u2717":"\u2713"} ${Pi(JSON.stringify(i.output),240)}`);break}case"approval_required":console.log(`[${o}] \u26A0 approval_required (${i.approvalType}) id=${i.approvalId}`);break;case"turn_completed":console.log(`
51
- [${o}] \u25C0 turn_completed${i.stopReason?` (${i.stopReason})`:""}`);break;case"error":{if(console.log(`
52
- [${o}] \u2717 ${i.message}`),n.expandError!==!1&&i.raw!==void 0)console.log(ft(i.raw));break}case"session_closed":console.log(`[${o}] \u23F9 session_closed`);break}}function g0(i){let o={kind:i.kind,ts:i.ts};switch(i.kind){case"session_started":if(o.backend=i.backend,i.model)o.model=i.model;return o.sid=i.sid,o;case"turn_started":return o;case"text_delta":return o.text=i.text,o;case"reasoning_delta":return o.text=i.text,o;case"tool_use":{o.tool=i.name;let n=kt(i.input);return o.input=n?{command:n}:i.input,o}case"tool_result":return o.summary=zt(i.output)??"",o;case"approval_required":return o.approvalId=i.approvalId,o.approvalType=i.approvalType,o.detail=dn(i.approvalType,i.params),o;case"turn_completed":if(i.stopReason&&i.stopReason!=="end_turn")o.stopReason=i.stopReason;return o;case"error":return o.message=i.message,o;case"session_closed":return o}}function kt(i){if(!i||typeof i!=="object")return null;let o=i.command??i.cmd;if(typeof o!=="string")return null;let n=o.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return n?n[1]:o}function zt(i){if(!i)return null;if(typeof i==="string")return Pi(i,160);if(typeof i!=="object")return String(i);if(i.approval){let e=i.approval,d=i.reason?`: ${i.reason}`:"";return`[${e}]${d}`}let o=i.stdout??i.output,n=i.exit_code??i.exitCode;if(typeof o==="string"||typeof n==="number"){let e=typeof o==="string"?o.split(`
53
- `).find((t)=>t.trim())??"":"",d=e.length<=120?e:e.slice(0,120)+"\u2026",u=typeof n==="number"?` (exit ${n})`:"";return`${d}${u}`}return Pi(JSON.stringify(i),160)}function Go(i){if(!i||typeof i!=="object")return!1;let o=i.exit_code??i.exitCode;if(typeof o==="number"&&o!==0)return!0;if(i.is_error===!0||i.error)return!0;if(i.approval==="deny"||i.approval==="denied")return!0;return!1}function jc(i){if(!i||typeof i!=="object")return null;let o=i.stderr??i.error_output;if(typeof o==="string"&&o.trim())return o.trimEnd();let n=i.error;if(typeof n==="string"&&n.trim())return n.trimEnd();return null}function $t(i){return i.some((o)=>o.kind==="error"||o.kind==="tool_result"&&Go(o.output))}function dn(i,o){if(i==="exec"){let n=String(o?.command??""),e=n.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return`command=${Pi(e?e[1]:n,200)}`}if(i==="patch"){let n=[];if(Array.isArray(o?.changes)){for(let e of o.changes)if(e?.path)n.push(e.path)}if(o?.path)n.push(o.path);return n.length?`paths=${n.slice(0,5).join(", ")}`:Pi(JSON.stringify(o),200)}return Pi(JSON.stringify(o),200)}function Pi(i,o){if(i.length<=o)return i;return i.slice(0,o)+`\u2026(+${i.length-o})`}var St={};ai(St,{runAgentCommand:()=>ol});import{existsSync as G0}from"fs";import{stat as Vn}from"fs/promises";import{createReadStream as il}from"fs";function yi(i){let o=[],n={};for(let e=0;e<i.length;e++){let d=i[e];if(d.startsWith("--")){let u=d.indexOf("=");if(u>0)n[d.slice(2,u)]=d.slice(u+1);else{let t=i[e+1];if(t!==void 0&&!t.startsWith("--"))n[d.slice(2)]=t,e++;else n[d.slice(2)]=!0}}else o.push(d)}return{positional:o,flags:n}}function gt(i){let o=Math.floor(i/1000);if(o<60)return`${o}s`;if(o<3600)return`${Math.floor(o/60)}m`;if(o<86400)return`${Math.floor(o/3600)}h`;return`${Math.floor(o/86400)}d`}function M0(i){let o={},n=!1;if(typeof i.status==="string")o.status=i.status.split(",").map((e)=>e.trim()).filter(Boolean),n=!0;if(typeof i["name-prefix"]==="string")o.namePrefix=i["name-prefix"],n=!0;if(typeof i.backend==="string")o.backend=i.backend,n=!0;if(typeof i.model==="string")o.model=i.model,n=!0;if(typeof i.turns==="string")o.turns=parseInt(i.turns,10),n=!0;if(i.all===!0||i.closed===!0)o.includeClosed=!0;return{filter:o,hasFilter:n}}async function ol(i){let o=i[0],n=i.slice(1);if(!o||o==="help"||o==="-h"||o==="--help"){Gt();return}switch(o){case"start":return nl(n);case"run":return el(n);case"list":case"ls":return dl(n);case"send":return ul(n);case"cancel":return tl(n);case"close":return al(n);case"show":return rl(n);case"logs":case"log":return pl(n);case"attach":return cl(n);case"purge":return ll();case"default":return vl(n);case"defaults":return sl();case"approve":return ml(n);case"pending":return wl(n);case"policy":return xl(n);case"wait":return yl(n);default:console.error(`\u672A\u77E5\u5B50\u547D\u4EE4: ${o}`),Gt(),process.exit(1)}}function Gt(){console.log(`
283
+ `,X=Bun.spawn(["codex","app-server"],{stdin:"pipe",stdout:"pipe",stderr:"pipe",env:{...process.env,CODEX_HOME:M}});X.stdin.write(u);let k=new Promise((z)=>setTimeout(z,8000));await Promise.race([X.exited,k]),X.kill();let W=await new Response(X.stdout).text();for(let z of W.split(`
284
+ `)){let $=z.trim();if(!$)continue;try{let O=JSON.parse($);if(O.id!==1)continue;if(O.error)return null;return{status:200,body:JSON.stringify(O.result?.rateLimits??O.result??{})}}catch{continue}}return null}finally{g.rm(M,{recursive:!0,force:!0}).catch(()=>{})}}async function sv(B,I){let C=["-s","-S","--max-time","10","-w",`
285
+ __HTTP__%{http_code}`,"https://chatgpt.com/backend-api/wham/usage","-H",`Authorization: Bearer ${B}`,"-H","User-Agent: codex_cli_rs/0.50.0","-H","Accept: application/json"];if(I)C.push("-H",`ChatGPT-Account-Id: ${I}`);let g=Bun.spawn(["curl",...C],{stdout:"pipe",stderr:"pipe"}),F=await new Response(g.stdout).text();await g.exited;let N=F.match(/^([\s\S]*?)\n__HTTP__(\d+)$/);return{body:N?N[1]:F,status:N?parseInt(N[2],10):0}}async function ZY(B){let I=Date.now(),C={provider:"codex-subscription",status:"error",fetchedAt:I},{accessToken:g,accountId:F}=nv(B);if(!g)return{...C,hint:"Codex OAuth \u672A\u4FDD\u5B58\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"missing_access_token"};try{let{status:N,body:H}=await ev(g,F);if(N===401)return{...C,hint:"Codex OAuth \u5DF2\u8FC7\u671F\uFF1A\u6309 p \u2192 \u9009\u4E2D\u8D26\u53F7 \u2192 d \u2192 \u91CD\u65B0\u767B\u5F55",error:"unauthorized"};if(N!==200)return{...C,hint:N===0?"ChatGPT \u7528\u91CF\u83B7\u53D6\u5931\u8D25\uFF1A\u672C\u673A\u7F51\u7EDC\u65E0\u6CD5\u8BBF\u95EE chatgpt.com\uFF08\u53EF\u80FD IP \u88AB Cloudflare \u62E6\u622A\uFF0C\u53EF\u8BD5 HTTPS_PROXY\uFF09":"ChatGPT \u7528\u91CF\u63A5\u53E3\u4E0D\u53EF\u7528",error:`http_${N}`};let M=JSON.parse(H),U=M.rate_limit??M.rateLimits??M,u=U.primary_window??U.primary,X=U.secondary_window??U.secondary;return{provider:"codex-subscription",status:"ok",primary:YY(u),secondary:YY(X),planType:M.plan_type??M.planType,fetchedAt:I}}catch(N){return{...C,hint:"ChatGPT \u7528\u91CF\u63A5\u53E3\u8BF7\u6C42\u5931\u8D25",error:String(N.message??N)}}}var tv=async(B,I)=>{let C=await rv(B,I).catch(()=>null);if(C)return C;return sv(B,I)},ev;var XY=c(()=>{ev=tv});var $Y={};F0($Y,{invalidateQuotaCache:()=>g_,getOfficialQuota:()=>T1,fetchTakoQuotaByApiId:()=>DD,_setQuotaDiskCachePathForTest:()=>I_,_clearQuotaCache:()=>C_});import{homedir as A_}from"os";import{join as B_}from"path";function Q_(B){return`${B.type}:${B.id}`}function zY(){return kY??B_(A_(),".tako","quota-cache.json")}function I_(B){kY=B}function OY(){try{let I=cA("fs").readFileSync(zY(),"utf-8"),C=JSON.parse(I);return typeof C==="object"&&C!==null?C:{}}catch{return{}}}function SY(B){try{let I=cA("fs"),C=zY(),g=C.slice(0,C.lastIndexOf("/"));if(g)I.mkdirSync(g,{recursive:!0});let F=`${C}.tmp.${process.pid}`;I.writeFileSync(F,JSON.stringify(B)),I.renameSync(F,C)}catch{}}function E_(B){return{provider:B.type,status:"unsupported",fetchedAt:Date.now()}}async function T1(B){let I=Q_(B),C=Date.now(),g=_2.get(I);if(g&&C-g.fetchedAt<qY)return g;let F=OY(),N=F[I];if(N&&C-N.fetchedAt<qY)return _2.set(I,N),N;let H;switch(B.type){case"tako":H=await RY(B);break;case"claude-subscription":H=await WY(B);break;case"codex-subscription":H=await ZY(B);break;default:H=E_(B);break}return _2.set(I,H),F[I]=H,SY(F),H}function C_(){_2.clear()}function g_(B,I){for(let C of[..._2.keys()])if(C.endsWith(`:${B}`))_2.delete(C);try{let C=OY(),g=!1;for(let F of Object.keys(C))if(F.endsWith(`:${B}`))delete C[F],g=!0;if(g)SY(C)}catch{}}var qY=60000,_2,kY=null;var s3=c(()=>{jH();XY();_2=new Map});import{join as Ag}from"path";import{homedir as W_}from"os";import{mkdir as Y_,readFile as E4,writeFile as oH,rename as nH,readdir as BZ,rm as Z_,appendFile as QZ}from"fs/promises";function b0(B){return Ag(cH,B)}function IZ(B){return Ag(b0(B),"meta.json")}function dQ(B){return Ag(b0(B),"log.ndjson")}function V1(B){return Ag(b0(B),"approvals")}function lH(B,I){return Ag(V1(B),`${I}.req.json`)}function aH(B,I){return Ag(V1(B),`${I}.resp.json`)}async function P1(B){await Y_(B,{recursive:!0})}async function EZ(B){await P1(b0(B.sid)),await TI(B),await QZ(dQ(B.sid),"")}async function V2(B){try{let I=await E4(IZ(B),"utf-8");return JSON.parse(I)}catch{return null}}async function TI(B){let I=b0(B.sid);await P1(I);let C=Ag(I,"meta.json.tmp"),g={};for(let[F,N]of Object.entries(B)){if(F.startsWith("_"))continue;g[F]=N}await oH(C,JSON.stringify(g,null,2),"utf-8"),await nH(C,IZ(B.sid))}async function f0(B,I){await QZ(dQ(B),JSON.stringify(I)+`
286
+ `,"utf-8")}async function C4(){await P1(cH);let B=await BZ(cH,{withFileTypes:!0}),I=[];for(let C of B){if(!C.isDirectory())continue;let g=await V2(C.name);if(g)I.push(g)}return I.sort((C,g)=>g.lastActiveAt-C.lastActiveAt),I}async function g4(B,I){let C;try{C=await E4(dQ(B),"utf-8")}catch{return[]}let F=C.split(`
287
+ `).filter(Boolean).slice(-I),N=[];for(let H of F)try{N.push(JSON.parse(H))}catch{}return N}async function rH(B){try{await Z_(b0(B),{recursive:!0,force:!0})}catch{}}async function CZ(B,I){await P1(V1(B));let C=lH(B,I.approvalId)+".tmp";await oH(C,JSON.stringify(I,null,2),"utf-8"),await nH(C,lH(B,I.approvalId))}async function X_(B,I){try{return JSON.parse(await E4(lH(B,I),"utf-8"))}catch{return null}}async function D4(B,I,C){await P1(V1(B));let g=aH(B,I)+".tmp";await oH(g,JSON.stringify(C,null,2),"utf-8"),await nH(g,aH(B,I))}async function m1(B,I){try{return JSON.parse(await E4(aH(B,I),"utf-8"))}catch{return null}}async function h1(B){try{let I=await BZ(V1(B)),C=[];for(let g of I){if(!g.endsWith(".req.json"))continue;let F=g.slice(0,-9),N=await X_(B,F);if(!N)continue;if(!await m1(B,F))C.push(N)}return C.sort((g,F)=>g.requestedAt-F.requestedAt),C}catch{return[]}}var cH;var FD=c(()=>{cH=Ag(W_(),".tako","agent-sessions")});import{spawn as q_}from"child_process";async function F4(B,I,C){await f0(B,I),C?.onFrame?.(I)}function k_(B,I){let C=[],g=WE();if(B?.type==="assistant"&&B?.message?.content){for(let F of B.message.content)if(F?.type==="text"&&typeof F.text==="string")C.push({ts:g,kind:"text_delta",text:F.text,itemId:B.message.id});else if(F?.type==="tool_use")C.push({ts:g,kind:"tool_use",name:F.name??"?",input:F.input,itemId:F.id});else if(F?.type==="thinking"&&typeof F.thinking==="string")C.push({ts:g,kind:"reasoning_delta",text:F.thinking})}else if(B?.type==="user"&&B?.message?.content){for(let F of B.message.content)if(F?.type==="tool_result")C.push({ts:g,kind:"tool_result",itemId:F.tool_use_id,output:F.content})}else if(B?.type==="result"){if(B.is_error)C.push({ts:g,kind:"error",message:typeof B.result==="string"?B.result:"claude reported error",raw:B});C.push({ts:g,kind:"turn_completed",turnId:I,stopReason:B.stop_reason,usage:B.usage})}else if(B?.type==="stream_event"&&B?.event?.delta?.thinking)C.push({ts:g,kind:"reasoning_delta",text:String(B.event.delta.thinking)});return C}function DZ(B,I){return B.__env=I,B}var WE=()=>Date.now(),b1,gZ;var FZ=c(async()=>{FD();kI();await $1();b1=new Map,gZ={backend:"claude",async start(B){let I={sid:B.sid,backend:"claude",name:B.name,model:B.model,workdir:B.workdir,status:"idle",turnCount:0,createdAt:WE(),lastActiveAt:WE(),providerId:B.providerId};return await f0(I.sid,{ts:WE(),kind:"session_started",sid:I.sid,backend:"claude",model:I.model}),I},async send(B,I,C){let g=iI("claude-code");if(!g)throw Error("claude-code client \u672A\u6CE8\u518C");let F=await Q2(g);if(!F)F=I2(g);let N=B.turnCount===0,H=["--print","--input-format","stream-json","--output-format","stream-json","--verbose"];if(N)H.push("--session-id",B.sid);else H.push("--resume",B.sid);if(B.model)H.push("--model",B.model);H.push("--permission-mode","bypassPermissions");let M={...process.env,...B.__env};delete B.__env;let U=g.runtime==="native"?F:await KE(),u=g.runtime==="native"?H:[F,...H],X=q_(U,u,{env:M,cwd:B.workdir,stdio:["pipe","pipe","pipe"]});b1.set(B.sid,{pid:X.pid,kill:(v)=>X.kill(v??"SIGINT")});let k={type:"user",message:{role:"user",content:[{type:"text",text:I}]}};X.stdin.write(JSON.stringify(k)+`
288
+ `),X.stdin.end(),B.status="running",B.lastActiveAt=WE(),await TI(B);let W="";X.stderr.on("data",(v)=>{W+=v.toString()});let z=`t${B.turnCount+1}`;await F4(B.sid,{ts:WE(),kind:"turn_started",turnId:z},C);let $="";X.stdout.on("data",async(v)=>{$+=v.toString();let d;while((d=$.indexOf(`
289
+ `))>=0){let l=$.slice(0,d).trim();if($=$.slice(d+1),!l)continue;try{let r=JSON.parse(l);for(let FA of k_(r,z))await F4(B.sid,FA,C)}catch{}}});let O=await new Promise((v)=>{X.on("close",(d)=>v(d??0))});if(b1.delete(B.sid),O===0)B.turnCount++;if(B.lastActiveAt=WE(),B.status="idle",O!==0)await F4(B.sid,{ts:WE(),kind:"error",message:`claude exited ${O}${W?`: ${W.slice(0,500)}`:""}`},C);return await TI(B),B},async cancel(B){let I=b1.get(B.sid);if(I)I.kill("SIGINT")},async close(B){let I=b1.get(B.sid);if(I)I.kill("SIGTERM");b1.delete(B.sid),await F4(B.sid,{ts:WE(),kind:"session_closed"}),B.status="closed",B.lastActiveAt=WE(),await TI(B)},async isAlive(){return!0}}});import{join as NZ,isAbsolute as z_,resolve as sH}from"path";import{readFile as O_,writeFile as S_}from"fs/promises";import{homedir as $_}from"os";function y_(B){if(!B)return"";let I=B.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return I?I[1]:B}function wZ(B,I){if(!B)return!1;let C=z_(B)?sH(B):sH(I,B),g=sH(I);return C===g||C.startsWith(g+"/")}function HZ(B,I,C,g){if(I==="item/commandExecution/requestApproval"||I==="execCommandApproval"){let F=String(C?.command??""),N=y_(F);for(let H of B.exec_deny??[])try{if(new RegExp(H).test(N))return{kind:"auto_deny",reason:`policy deny: /${H}/`}}catch{}for(let H of B.exec_allow??[])try{if(new RegExp(H).test(N))return{kind:"auto_allow",reason:`policy allow: /${H}/`}}catch{}return{kind:"ask"}}if(I==="item/fileChange/requestApproval"||I==="applyPatchApproval"){let F=T_(C);for(let H of F)for(let M of B.file_deny??[])try{if(new RegExp(M).test(H))return{kind:"auto_deny",reason:`file deny: ${H} matches /${M}/`}}catch{}if(B.strict_workdir){for(let H of F)if(!wZ(H,g))return{kind:"auto_deny",reason:`file outside workdir: ${H}`}}let N=F.length>0;for(let H of F){let M=!1;for(let U of B.file_allow??[])try{if(new RegExp(U).test(H)){M=!0;break}}catch{}if(!M){N=!1;break}}if(N)return{kind:"auto_allow",reason:"all paths matched file_allow"};if(!B.strict_workdir&&F.length>0&&F.every((H)=>wZ(H,g)))return{kind:"auto_allow",reason:"all paths inside workdir (non-strict)"};return{kind:"ask"}}return{kind:"ask"}}function T_(B){let I=[],C=(g)=>{if(typeof g==="string"&&g.length>0&&g.length<1024)I.push(g)};if(C(B?.path),Array.isArray(B?.changes))for(let g of B.changes)C(g?.path),C(g?.target);if(Array.isArray(B?.files))for(let g of B.files)C(g?.path??g);if(typeof B?.patch==="string")for(let g of B.patch.split(`
290
+ `)){let F=g.match(/^\+\+\+\s+b\/(.*)$/);if(F)I.push(F[1])}return Array.from(new Set(I))}function A9(B){return NZ(b0(B),"policy.json")}async function tH(B){try{return JSON.parse(await O_(B,"utf-8"))}catch{return null}}async function w4(B){let I=await tH(v_),C=await tH(A9(B));return GZ(GZ(eH,I),C)}function GZ(B,I){if(!I)return B;return{exec_allow:[...B.exec_allow??[],...I.exec_allow??[]],exec_deny:[...B.exec_deny??[],...I.exec_deny??[]],file_allow:[...B.file_allow??[],...I.file_allow??[]],file_deny:[...B.file_deny??[],...I.file_deny??[]],strict_workdir:I.strict_workdir??B.strict_workdir}}async function G4(B){return await tH(A9(B))??{}}async function N4(B,I){await S_(A9(B),JSON.stringify(I,null,2),"utf-8")}async function JZ(B,I){let C=await G4(B),g=C.exec_allow??[];if(!g.includes(I))g.push(I);C.exec_allow=g,await N4(B,C)}var eH,v_;var B9=c(()=>{FD();eH={exec_allow:["^\\s*(ls|pwd|whoami|hostname|date|uname|env|echo|printenv)(\\s|$)","^\\s*(cat|head|tail|less|more|file|stat)\\s+","^\\s*(grep|rg|ag|egrep|fgrep)\\s+","^\\s*find\\s+\\S+\\s+(-name|-type|-maxdepth|-path)","^\\s*(wc|awk|sed -n)\\s+","^\\s*(which|type|whereis|command -v)\\s+","^\\s*(ps|df|du|free|top -b|iostat|vmstat)(\\s|$)","^\\s*tree(\\s|$)","^\\s*git\\s+(status|log|diff|show|branch|remote|config --(get|list)|rev-parse|describe|ls-files|ls-tree|cat-file|tag\\s+--list|stash list|reflog|fetch)(\\s|$)","^\\s*(npm|yarn|pnpm|bun)\\s+(list|outdated|info|view|search|--version)(\\s|$)","^\\s*(node|bun|python|python3|deno|go|cargo|rustc|java|javac)\\s+(--version|-V|version)(\\s|$)","^\\s*pip\\s+(list|show|--version)(\\s|$)","^\\s*cargo\\s+(check|tree|metadata)(\\s|$)","^\\s*(tsc|tsc --noEmit)(\\s|$)","^\\s*(eslint|prettier|stylelint|tslint)\\s+","^\\s*(jest|vitest|mocha|pytest|bun test|cargo test)(\\s|$)","^\\s*npm run (lint|test|build|typecheck|check)"],exec_deny:["\\bsudo\\b","\\bsu\\s+-","\\bdoas\\b","\\brm\\s+-[rRf]+\\s+(/$|/\\s|/[^./])","\\brm\\s+-[rRf]+\\s+\\$HOME(/?)?\\s","\\brm\\s+-[rRf]+\\s+~(/?)?\\s","\\bdd\\s+if=.*\\s+of=/dev/","\\bmkfs\\.","\\bshred\\b","\\bdiskutil\\s+(erase|format)","\\bcurl\\s+[^|]*\\|\\s*(sh|bash|zsh|fish)","\\bwget\\s+[^|]*\\|\\s*(sh|bash|zsh|fish)","\\bcurl\\s+.*-o\\s+/(usr|etc|bin|sbin|lib)/",":\\(\\)\\s*\\{","\\bchmod\\s+-R\\s+[0-7]+\\s+/","\\bssh-keygen\\s+-t","\\bsshpass\\b","\\b(passwd|chpasswd)\\b","\\bgit\\s+push\\s+.*--force"],file_allow:[],file_deny:["/\\.ssh/","/\\.aws/","/\\.gnupg/","\\.env(\\.|$)","/etc/(passwd|shadow|sudoers)","/(usr|etc|bin|sbin)/"],strict_workdir:!1};v_=NZ($_(),".tako","agent-policy.json")});import{spawn as __}from"child_process";import{writeFile as V_,unlink as P_}from"fs/promises";import{join as MZ}from"path";class KZ{proc;buf="";nextId=1;pending=new Map;notifyHandlers=[];serverReqHandler=null;closed=!1;constructor(B){this.proc=B,B.stdout?.on("data",(I)=>this.onData(I)),B.on("close",()=>this.onClose()),B.on("error",()=>this.onClose())}onData(B){this.buf+=B.toString("utf-8");let I;while((I=this.buf.indexOf(`
291
+ `))>=0){let C=this.buf.slice(0,I).trim();if(this.buf=this.buf.slice(I+1),!C)continue;try{this.dispatch(JSON.parse(C))}catch{}}}dispatch(B){if(B&&typeof B==="object"){if(B.id!==void 0&&(("result"in B)||("error"in B))){let I=this.pending.get(B.id);if(I)if(this.pending.delete(B.id),B.error)I.reject(Error(JSON.stringify(B.error)));else I.resolve(B.result);return}if(B.method&&B.id!==void 0){this.serverReqHandler?.(B.method,B.id,B.params);return}if(B.method)for(let I of this.notifyHandlers)I(B.method,B.params)}}onClose(){this.closed=!0;for(let[,B]of this.pending)B.reject(Error("rpc closed"));this.pending.clear()}write(B){if(this.closed)return;this.proc.stdin?.write(JSON.stringify(B)+`
292
+ `)}request(B,I){if(this.closed)return Promise.reject(Error("rpc closed"));let C=this.nextId++;return new Promise((g,F)=>{this.pending.set(C,{resolve:g,reject:F}),this.write({jsonrpc:"2.0",method:B,params:I,id:C})})}notify(B,I){this.write({jsonrpc:"2.0",method:B,params:I})}reply(B,I){this.write({jsonrpc:"2.0",id:B,result:I})}replyError(B,I,C){this.write({jsonrpc:"2.0",id:B,error:{code:I,message:C}})}onNotification(B){this.notifyHandlers.push(B)}onServerRequest(B){this.serverReqHandler=B}pid(){return this.proc.pid}kill(B="SIGTERM"){try{this.proc.kill(B)}catch{}}close(){try{this.proc.stdin?.end()}catch{}this.kill("SIGTERM")}}async function UZ(B,I){let C=iI("codex");if(!C)throw Error("codex client \u672A\u6CE8\u518C");let g=await Q2(C)??I2(C),F={...process.env,...I},N=C.runtime==="native"?g:await KE(),H=C.runtime==="native"?["app-server"]:[g,"app-server"],M=__(N,H,{env:F,cwd:B,stdio:["pipe","pipe","pipe"]});return M.stderr?.on("data",()=>{}),new KZ(M)}async function LZ(B){await B.request("initialize",{clientInfo:{name:"tako-agent",title:"Tako Agent",version:"0.1"},capabilities:null})}function uZ(B,I={}){let C=B.approvalMode==="external",g={cwd:B.workdir,approvalPolicy:C?"untrusted":"never",sandbox:C?"workspace-write":"danger-full-access",...I};if(B.model)g.model=B.model;if(B.providerHint?.type==="tako"||B.providerHint?.type==="custom")g.modelProvider="tako";return g}function Q9(B,I){if(B==="applyPatchApproval"||B==="execCommandApproval")return{decision:I?"approved":"denied"};if(B==="item/commandExecution/requestApproval"||B==="item/fileChange/requestApproval")return{decision:I?"accept":"decline"};if(B==="item/permissions/requestApproval")return I?{permissions:{allowedTools:["*"]},scope:"turn"}:{permissions:{},scope:"turn"};if(B==="mcpServer/elicitation/request")return{action:I?"accept":"decline"};return{decision:I?"approved":"denied"}}function m_(B){if(B.includes("commandExecution")||B==="execCommandApproval")return"exec";if(B.includes("fileChange")||B==="applyPatchApproval")return"patch";if(B.includes("permissions"))return"permission";if(B.includes("tool/"))return"tool";return"other"}async function h_(B,I,C=300000,g=200){let F=Date.now();while(Date.now()-F<C){let N=await m1(B,I);if(N)return{allow:N.decision==="allow",reason:N.reason,by:N.by};await new Promise((H)=>setTimeout(H,g))}return{allow:!1,reason:`timeout after ${Math.round(C/1000)}s`,by:"tako-timeout"}}function H4(B,I){return B.__env=I,B}function b_(B,I){let C=[],g=oI();switch(B){case"turn/started":C.push({ts:g,kind:"turn_started",turnId:I?.turn?.id??"?"});break;case"turn/completed":C.push({ts:g,kind:"turn_completed",turnId:I?.turn?.id,usage:I?.turn?.usage});break;case"item/agentMessage/delta":if(typeof I?.delta==="string")C.push({ts:g,kind:"text_delta",text:I.delta,itemId:I.itemId});break;case"item/reasoning/textDelta":case"item/reasoning/summaryTextDelta":if(typeof I?.delta==="string")C.push({ts:g,kind:"reasoning_delta",text:I.delta});break;case"item/started":{let F=I?.item;if(!F)break;if(F.type==="commandExecution")C.push({ts:g,kind:"tool_use",name:"shell",input:{command:F.command},itemId:F.id});else if(F.type==="fileChange")C.push({ts:g,kind:"tool_use",name:"fileChange",input:F,itemId:F.id});else if(F.type==="mcpToolCall")C.push({ts:g,kind:"tool_use",name:F.serverName?`${F.serverName}.${F.toolName}`:F.toolName??"mcp",input:F.args,itemId:F.id});break}case"item/completed":{let F=I?.item;if(!F)break;if(F.type==="commandExecution"||F.type==="fileChange"||F.type==="mcpToolCall")C.push({ts:g,kind:"tool_result",itemId:F.id,output:F});break}case"error":case"warning":C.push({ts:g,kind:"error",message:I?.message??B,raw:I});break}return C}var oI=()=>Date.now(),RZ;var WZ=c(async()=>{FD();B9();kI();await $1();RZ={backend:"codex",async start(B){let I={sid:B.sid,backend:"codex",name:B.name,model:B.model,workdir:B.workdir,status:"idle",approvalMode:B.approvalMode??"yolo",turnCount:0,createdAt:oI(),lastActiveAt:oI(),providerId:B.providerId};return await f0(I.sid,{ts:oI(),kind:"session_started",sid:I.sid,backend:"codex",model:I.model}),I.__providerHint=B.providerHint,I},async send(B,I,C){let g=B.__env??{},F=B.__providerHint,N=await UZ(B.workdir,g),H=MZ(b0(B.sid),"turn.pid");if(N.pid())await V_(H,String(N.pid()));let M=B.approvalMode??"yolo";N.onServerRequest((k,W,z)=>{if(M==="yolo"){N.replyError(W,-32603,`tako-agent yolo mode: ${k} declined`);return}let $=String(W),O=m_(k);(async()=>{let v=await w4(B.sid),d=HZ(v,k,z,B.workdir);if(d.kind==="auto_allow"){await f0(B.sid,{ts:oI(),kind:"tool_result",itemId:$,output:{approval:"auto_allowed",reason:d.reason}}),N.reply(W,Q9(k,!0));return}if(d.kind==="auto_deny"){await f0(B.sid,{ts:oI(),kind:"error",message:`auto_deny: ${d.reason}`,raw:{method:k,params:z}}),N.reply(W,Q9(k,!1));return}let l={approvalId:$,method:k,params:z,approvalType:O,requestedAt:oI()};await CZ(B.sid,l),await f0(B.sid,{ts:oI(),kind:"approval_required",approvalId:$,approvalType:O,params:z}),B.status="awaiting_approval",await TI(B);let r=await h_(B.sid,$);B.status="running",await TI(B),N.reply(W,Q9(k,r.allow))})().catch((v)=>{N.replyError(W,-32603,`approval bridge error: ${v?.message??v}`)})});let U=Promise.resolve();N.onNotification((k,W)=>{let z=b_(k,W);if(!z.length)return;U=U.then(async()=>{for(let $ of z)await f0(B.sid,$),C?.onFrame?.($)})}),B.status="running",B.lastActiveAt=oI(),await TI(B);let u=new Promise((k)=>{N.onNotification((W)=>{if(W==="turn/completed"||W==="turn/failed")k()})}),X=!1;try{if(await LZ(N),!B.codexThreadId){let k=await N.request("thread/start",uZ({workdir:B.workdir,model:B.model,providerHint:F,approvalMode:M}));if(B.codexThreadId=k?.threadId??k?.id??k?.thread?.id,!B.codexThreadId)throw Error("thread/start \u65E0 threadId")}else await N.request("thread/resume",uZ({workdir:B.workdir,model:B.model,providerHint:F,approvalMode:M},{threadId:B.codexThreadId}));await N.request("turn/start",{threadId:B.codexThreadId,input:[{type:"text",text:I,text_elements:[]}]}),await Promise.race([u,new Promise((k,W)=>setTimeout(()=>W(Error("turn timeout 10min")),600000))]),await U,X=!0}catch(k){await f0(B.sid,{ts:oI(),kind:"error",message:k instanceof Error?k.message:String(k)})}if(N.close(),await P_(H).catch(()=>{}),X)B.turnCount++;return B.lastActiveAt=oI(),B.status="idle",await TI(B),B},async cancel(B){let I=MZ(b0(B.sid),"turn.pid");try{let C=await import("fs/promises"),g=parseInt(await C.readFile(I,"utf-8"),10);if(g>0)process.kill(g,"SIGTERM")}catch{}},async close(B){if(B.codexThreadId)try{let I=B.__env??{},C=await UZ(B.workdir,I);await LZ(C).catch(()=>{}),await C.request("thread/archive",{threadId:B.codexThreadId}).catch(()=>{}),C.close()}catch{}await f0(B.sid,{ts:oI(),kind:"session_closed"}),B.status="closed",B.lastActiveAt=oI(),await TI(B)},async isAlive(B){return B.status!=="closed"}}});import{randomUUID as f_}from"crypto";async function f1(B){let I=P2[B.backend],C=I9[B.backend],g=iI(C);if(!g)throw Error(`client ${C} \u672A\u6CE8\u518C`);let F=await YZ(B.backend,B.providerId,B.model);if(!F)throw Error(`\u6CA1\u627E\u5230 ${B.backend} \u53EF\u7528\u7684 provider${B.model?`\uFF08\u542B\u6A21\u578B ${B.model}\uFF09`:""}`);let N=SI(F);if(B.model)N.model=B.model;let H=g.getEnvVars(N),M=f_(),U={sid:M,backend:B.backend,name:B.name??`${B.backend}-${M.slice(0,8)}`,model:B.model,workdir:B.workdir??process.cwd(),status:"idle",approvalMode:B.approvalMode??"yolo",turnCount:0,createdAt:Date.now(),lastActiveAt:Date.now(),providerId:F.id};await EZ(U);let u=await I.start({sid:M,name:U.name,model:B.model,workdir:U.workdir,approvalMode:B.approvalMode??"yolo",env:H,providerId:F.id,providerHint:{type:F.type,apiKey:F.apiKey,baseUrl:F.baseUrl}});return await TI(u),u}async function j1(B,I,C){let g=await V2(B);if(!g)throw Error(`session ${B} \u4E0D\u5B58\u5728`);if(g.status==="closed")throw Error(`session ${B} \u5DF2\u5173\u95ED`);let F=P2[g.backend],N=await E9(g);if(g.backend==="claude")DZ(g,N);else if(g.backend==="codex")H4(g,N);return F.send(g,I,C)}async function x1(B){let I=await V2(B);if(!I)return;if(I.backend==="codex")H4(I,await E9(I));await P2[I.backend].cancel(I)}async function wD(B,I=!1){let C=await V2(B);if(!C)return;if(C.backend==="codex")H4(C,await E9(C));if(await P2[C.backend].close(C),I)await rH(B)}async function J4(){return C4()}function j_(B,I={}){return B.filter((C)=>{if(I.status&&I.status.length>0){if(!I.status.includes(C.status))return!1}else if(!I.includeClosed&&C.status==="closed")return!1;if(I.namePrefix&&!C.name.startsWith(I.namePrefix))return!1;if(I.backend&&C.backend!==I.backend)return!1;if(I.model&&C.model!==I.model)return!1;if(I.turns!==void 0&&C.turnCount!==I.turns)return!1;return!0})}async function M4(B={}){return j_(await C4(),B)}async function m2(B,I=50){let C=await V2(B);if(!C)return null;let g=await g4(B,I),F=await P2[C.backend].isAlive(C);return{meta:C,log:g,alive:F}}async function U4(){let B=await C4(),I=0;for(let C of B){if(C.status==="closed"){await rH(C.sid),I++;continue}if(C.backend==="codex"){if(!await P2.codex.isAlive(C))C.status="dead",await TI(C)}}return I}async function YZ(B,I,C){let g=await AB(),F=await OI(),N=I9[B];if(I){let X=F.find((k)=>k.id===I);if(X)return X}let M=g.agentDefaults?.[B];if(M){let X=F.find((k)=>k.id===M);if(X)return X}let U=await AC(N);if(C){let X=iI(N);if(X){for(let k of U)if(jF(X,k).some((z)=>z.id===`model-${C}`))return k}}let u=g.clientProviderMap?.[N];if(u){let X=F.find((k)=>k.id===u);if(X)return X}return U[0]}async function E9(B){let I=I9[B.backend],C=iI(I);if(!C)return{};let g=await OI(),F=B.providerId?g.find((H)=>H.id===B.providerId):void 0;if(!F)F=await YZ(B.backend,void 0,B.model);if(!F)return{};let N=SI(F);if(B.model)N.model=B.model;return B.__providerHint={type:F.type,apiKey:F.apiKey,baseUrl:F.baseUrl},C.getEnvVars(N)}async function ZZ(B,I){let{saveConfig:C}=await Promise.resolve().then(() => (sB(),EL)),g=await AB(),F=g.agentDefaults??{};F[B]=I,g.agentDefaults=F,await C(g)}async function L4(){return(await AB()).agentDefaults??{}}var P2,I9;var u4=c(async()=>{FD();sB();_0();kI();await B2([FZ(),WZ()]);P2={claude:gZ,codex:RZ},I9={claude:"claude-code",codex:"codex"}});var jZ={};F0(jZ,{runQuotaCommand:()=>yV,buildQuotaPayload:()=>fZ});async function OV(B){try{let C=await(await fetch(`${rQ}/apiStats/api/get-key-id`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:B}),signal:AbortSignal.timeout(5000)})).json();if(C.success&&C.data?.id)return{valid:!0,apiId:C.data.id};return{valid:!1,error:C.error||"Tako key validation failed"}}catch(I){return{valid:!1,error:String(I.message??I)}}}function SV(B){let I=(B.providers??[]).find((F)=>F.type==="tako"),C=I?I.apiId||"":B.apiId||"",g=I?I.apiKey||"":B.apiKey||"";if(!C&&!g)return null;return{apiId:C,apiKey:g}}function G9(B){if(!B)return;let I={usedPct:B.usedPct,...B.windowMinutes?{windowMinutes:B.windowMinutes}:{},...B.resetsAt?{resetsAt:B.resetsAt}:{}};if(typeof B.costUsed==="number")I.used=B.costUsed;if(typeof B.costLimit==="number"){I.limit=B.costLimit;let C=B.costUsed??0;I.remaining=Math.max(0,B.costLimit-C),I.remainingPct=Math.max(0,Math.min(100,100-Math.round(B.usedPct)))}return I}function d1(B,I,C){return{exitCode:1,payload:{provider:"tako",status:"error",error:B,message:I,...C?{hint:C}:{}}}}function bZ(B){return{exitCode:0,payload:{provider:"tako",status:"ok",fiveHour:G9(B.primary),daily:G9(B.daily),weekly:G9(B.secondary),fetchedAt:new Date(B.fetchedAt).toISOString()}}}function $V(B){return d1(B.error||"quota_unavailable",B.hint||"Tako quota is unavailable",B.hint)}async function fZ(B,I={}){let C=I.fetchQuotaByApiId??DD,g=I.resolveApiIdFromKey??OV,F=SV(B);if(!F)return d1("missing_tako_provider","Tako provider is not configured");let N=null;if(F.apiId){if(N=await C(F.apiId),N.status==="ok")return bZ(N)}if(F.apiKey){let H=await g(F.apiKey);if(H.valid&&H.apiId&&H.apiId!==F.apiId){if(N=await C(H.apiId),N.status==="ok")return bZ(N)}else if(!F.apiId)return d1("api_id_refresh_failed",H.error||"Unable to resolve Tako API ID from API key")}if(N)return $V(N);return d1("missing_api_id","Tako API ID is not configured")}async function yV(B=[],I={}){if(B.length>0){let F=d1("invalid_args","Usage: tako quota");return process.stdout.write(`${JSON.stringify(F.payload)}
293
+ `),F.exitCode}let C=I.loadConfig??AB,g=await fZ(await C(),I);return process.stdout.write(`${JSON.stringify(g.payload)}
294
+ `),g.exitCode}var xZ=c(()=>{sB();jH()});function h2(B,I="human",C={}){if(I==="json"){process.stdout.write(JSON.stringify(N9(B))+`
295
+ `);return}if(I==="verbose"){vV(B,new Date(B.ts).toISOString().slice(11,23),{expandError:!0,...C});return}TV(B,C)}function pZ(B){if(B===void 0||B===null)return"";let I;try{I=typeof B==="string"?B:JSON.stringify(B,null,2)}catch{I=String(B)}return I.split(`
296
+ `).map((C)=>` \u2502 ${C}`).join(`
297
+ `)}function TV(B,I){switch(B.kind){case"text_delta":process.stdout.write(B.text);break;case"tool_use":{let C=iZ(B.input)??wC(JSON.stringify(B.input),240);console.log(`
298
+ $ ${C}`);break}case"tool_result":{let C=dZ(B.output);if(b2(B.output)){console.log(` \u2717 FAILED${C?` ${C}`:""}`);let F=_V(B.output);if(F)console.log(F.split(`
299
+ `).map((N)=>` \u2502 ${N}`).join(`
300
+ `))}else if(C)console.log(` ${C}`);break}case"approval_required":console.log(`
301
+ \u26A0 APPROVAL [${B.approvalType}] id=${B.approvalId}`),console.log(` ${c1(B.approvalType,B.params)}`);break;case"turn_completed":console.log(`
302
+ \u25C0 turn done${B.stopReason&&B.stopReason!=="end_turn"?` (${B.stopReason})`:""}`);break;case"error":{if(console.log(`
303
+ \u2717 ${B.message}`),I.expandError&&B.raw!==void 0)console.log(pZ(B.raw));else if(B.raw!==void 0)console.log(" (\u8BE6\u7EC6\u9519\u8BEF\u5DF2\u6298\u53E0\uFF0C--errors-only \u6216 logs --errors \u5C55\u5F00)");break}default:break}}function vV(B,I,C){switch(B.kind){case"session_started":console.log(`[${I}] \u25B6 session_started ${B.backend}${B.model?` model=${B.model}`:""}`);break;case"turn_started":console.log(`[${I}] \u25B6 turn_started ${B.turnId}`);break;case"text_delta":process.stdout.write(B.text);break;case"reasoning_delta":console.log(`
304
+ [${I}] \uD83D\uDCAD ${wC(B.text,240)}`);break;case"tool_use":console.log(`
305
+ [${I}] \uD83D\uDD27 ${B.name} ${wC(JSON.stringify(B.input),240)}`);break;case"tool_result":{let g=b2(B.output);console.log(`[${I}] ${g?"\u2717":"\u2713"} ${wC(JSON.stringify(B.output),240)}`);break}case"approval_required":console.log(`[${I}] \u26A0 approval_required (${B.approvalType}) id=${B.approvalId}`);break;case"turn_completed":console.log(`
306
+ [${I}] \u25C0 turn_completed${B.stopReason?` (${B.stopReason})`:""}`);break;case"error":{if(console.log(`
307
+ [${I}] \u2717 ${B.message}`),C.expandError!==!1&&B.raw!==void 0)console.log(pZ(B.raw));break}case"session_closed":console.log(`[${I}] \u23F9 session_closed`);break}}function N9(B){let I={kind:B.kind,ts:B.ts};switch(B.kind){case"session_started":if(I.backend=B.backend,B.model)I.model=B.model;return I.sid=B.sid,I;case"turn_started":return I;case"text_delta":return I.text=B.text,I;case"reasoning_delta":return I.text=B.text,I;case"tool_use":{I.tool=B.name;let C=iZ(B.input);return I.input=C?{command:C}:B.input,I}case"tool_result":return I.summary=dZ(B.output)??"",I;case"approval_required":return I.approvalId=B.approvalId,I.approvalType=B.approvalType,I.detail=c1(B.approvalType,B.params),I;case"turn_completed":if(B.stopReason&&B.stopReason!=="end_turn")I.stopReason=B.stopReason;return I;case"error":return I.message=B.message,I;case"session_closed":return I}}function iZ(B){if(!B||typeof B!=="object")return null;let I=B.command??B.cmd;if(typeof I!=="string")return null;let C=I.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return C?C[1]:I}function dZ(B){if(!B)return null;if(typeof B==="string")return wC(B,160);if(typeof B!=="object")return String(B);if(B.approval){let g=B.approval,F=B.reason?`: ${B.reason}`:"";return`[${g}]${F}`}let I=B.stdout??B.output,C=B.exit_code??B.exitCode;if(typeof I==="string"||typeof C==="number"){let g=typeof I==="string"?I.split(`
308
+ `).find((H)=>H.trim())??"":"",F=g.length<=120?g:g.slice(0,120)+"\u2026",N=typeof C==="number"?` (exit ${C})`:"";return`${F}${N}`}return wC(JSON.stringify(B),160)}function b2(B){if(!B||typeof B!=="object")return!1;let I=B.exit_code??B.exitCode;if(typeof I==="number"&&I!==0)return!0;if(B.is_error===!0||B.error)return!0;if(B.approval==="deny"||B.approval==="denied")return!0;return!1}function _V(B){if(!B||typeof B!=="object")return null;let I=B.stderr??B.error_output;if(typeof I==="string"&&I.trim())return I.trimEnd();let C=B.error;if(typeof C==="string"&&C.trim())return C.trimEnd();return null}function cZ(B){return B.some((I)=>I.kind==="error"||I.kind==="tool_result"&&b2(I.output))}function c1(B,I){if(B==="exec"){let C=String(I?.command??""),g=C.match(/^(?:\S*sh|\S*bash|\S*zsh)(?:\s+-\w+)*\s+["'](.*)["']\s*$/s);return`command=${wC(g?g[1]:C,200)}`}if(B==="patch"){let C=[];if(Array.isArray(I?.changes)){for(let g of I.changes)if(g?.path)C.push(g.path)}if(I?.path)C.push(I.path);return C.length?`paths=${C.slice(0,5).join(", ")}`:wC(JSON.stringify(I),200)}return wC(JSON.stringify(I),200)}function wC(B,I){if(B.length<=I)return B;return B.slice(0,I)+`\u2026(+${B.length-I})`}var nZ={};F0(nZ,{runAgentCommand:()=>PV});import{existsSync as H9}from"fs";import{stat as X4}from"fs/promises";import{createReadStream as VV}from"fs";function x0(B){let I=[],C={};for(let g=0;g<B.length;g++){let F=B[g];if(F.startsWith("--")){let N=F.indexOf("=");if(N>0)C[F.slice(2,N)]=F.slice(N+1);else{let H=B[g+1];if(H!==void 0&&!H.startsWith("--"))C[F.slice(2)]=H,g++;else C[F.slice(2)]=!0}}else I.push(F)}return{positional:I,flags:C}}function lZ(B){let I=Math.floor(B/1000);if(I<60)return`${I}s`;if(I<3600)return`${Math.floor(I/60)}m`;if(I<86400)return`${Math.floor(I/3600)}h`;return`${Math.floor(I/86400)}d`}function J9(B){let I={},C=!1;if(typeof B.status==="string")I.status=B.status.split(",").map((g)=>g.trim()).filter(Boolean),C=!0;if(typeof B["name-prefix"]==="string")I.namePrefix=B["name-prefix"],C=!0;if(typeof B.backend==="string")I.backend=B.backend,C=!0;if(typeof B.model==="string")I.model=B.model,C=!0;if(typeof B.turns==="string")I.turns=parseInt(B.turns,10),C=!0;if(B.all===!0||B.closed===!0)I.includeClosed=!0;return{filter:I,hasFilter:C}}async function PV(B){let I=B[0],C=B.slice(1);if(!I||I==="help"||I==="-h"||I==="--help"){aZ();return}switch(I){case"start":return mV(C);case"run":return hV(C);case"list":case"ls":return bV(C);case"send":return fV(C);case"cancel":return jV(C);case"close":return xV(C);case"show":return pV(C);case"logs":case"log":return iV(C);case"attach":return dV(C);case"purge":return cV();case"default":return rV(C);case"defaults":return sV();case"approve":return lV(C);case"pending":return aV(C);case"policy":return oV(C);case"wait":return nV(C);default:console.error(`\u672A\u77E5\u5B50\u547D\u4EE4: ${I}`),aZ(),process.exit(1)}}function aZ(){console.log(`
54
309
  tako agent <\u5B50\u547D\u4EE4> [...]
55
310
 
56
311
  start <claude|codex> [--model X] [--name N] [--cwd .] [--provider id] [--approval yolo|external] [--json]
@@ -80,27 +335,27 @@ tako agent <\u5B50\u547D\u4EE4> [...]
80
335
 
81
336
  default <backend> <providerId> \u8BBE\u9ED8\u8BA4 provider
82
337
  defaults \u67E5\u770B\u9ED8\u8BA4
83
- `)}async function $i(i){if(!i)console.error("\u7F3A\u5C11 sid \u53C2\u6570"),process.exit(1);let n=(await Jn()).filter((e)=>e.sid.startsWith(i));if(n.length===0)return i;if(n.length>1)console.error(`sid \u524D\u7F00 "${i}" \u5339\u914D\u591A\u4E2A`),process.exit(1);return n[0].sid}async function nl(i){let{positional:o,flags:n}=yi(i),e=o[0];if(e!=="claude"&&e!=="codex")console.error("\u7528\u6CD5: tako agent start <claude|codex>"),process.exit(1);let d;if(typeof n.approval==="string"){if(n.approval!=="yolo"&&n.approval!=="external")console.error("--approval \u4EC5\u652F\u6301 yolo|external"),process.exit(1);d=n.approval}let u=await Eo({backend:e,model:typeof n.model==="string"?n.model:void 0,name:typeof n.name==="string"?n.name:void 0,workdir:typeof n.cwd==="string"?n.cwd:void 0,providerId:typeof n.provider==="string"?n.provider:void 0,approvalMode:d});if(n.json){process.stdout.write(JSON.stringify({sid:u.sid,name:u.name,backend:u.backend,model:u.model??null,workdir:u.workdir,approvalMode:u.approvalMode??"yolo"})+`
84
- `);return}if(console.log(`\u2713 ${u.backend} session \u5DF2\u521B\u5EFA`),console.log(` sid: ${u.sid}`),console.log(` name: ${u.name}`),u.model)console.log(` model: ${u.model}`);console.log(` workdir: ${u.workdir}`),console.log(` approval: ${u.approvalMode??"yolo"}`),console.log(`
85
- \u540E\u7EED\uFF1Atako agent send ${u.sid} "\u4F60\u7684 prompt"`)}async function el(i){let{positional:o,flags:n}=yi(i),e=o[0];if(e!=="claude"&&e!=="codex")console.error('\u7528\u6CD5: tako agent run <claude|codex> --prompt "..."'),process.exit(1);let d=typeof n.prompt==="string"?n.prompt:o.slice(1).join(" ");if(!d)console.error("\u7F3A\u5C11 --prompt"),process.exit(1);let u=!!n.json,t=!!n.purge,a;if(typeof n.approval==="string"){if(n.approval!=="yolo"&&n.approval!=="external")console.error("--approval \u4EC5\u652F\u6301 yolo|external"),process.exit(1);a=n.approval}let r="",p,c=[];try{let m=await Eo({backend:e,model:typeof n.model==="string"?n.model:void 0,name:typeof n.name==="string"?n.name:void 0,workdir:typeof n.cwd==="string"?n.cwd:void 0,providerId:typeof n.provider==="string"?n.provider:void 0,approvalMode:a});if(r=m.sid,!u)console.log(`\u2192 run ${r.slice(0,8)} (${m.backend}${m.model?` ${m.model}`:""})`);await _o(r,d,{onFrame:(w)=>{if(w.kind==="text_delta")c.push(w.text);else if(w.kind==="error")p=w.message;if(!u)go(w,"human")}})}catch(m){p=m instanceof Error?m.message:String(m)}let l=p?"error":"ok";if(t&&r)try{await ko(r,!0)}catch{}if(u)process.stdout.write(JSON.stringify({sid:r,status:l,text:c.join(""),error:p??null,purged:t})+`
86
- `);else{if(p)console.error(`\u2717 run \u5931\u8D25: ${p}`);if(r&&!t)console.log(`
87
- session \u4FDD\u7559: ${r.slice(0,8)}\uFF08tako agent show ${r.slice(0,8)} \u67E5\u770B\uFF1B--purge \u53EF\u81EA\u52A8\u56DE\u6536\uFF09`)}if(p)process.exit(1)}async function dl(i){let{flags:o}=yi(i),{filter:n}=M0(o),e=await Kn(n);if(o.json){process.stdout.write(JSON.stringify(e)+`
88
- `);return}let d=e.filter((l)=>l.status==="running").length;if(e.length===0){console.log("(\u65E0\u5339\u914D session)");return}let u=await Promise.all(e.map(async(l)=>$t(await gn(l.sid,60)))),t=0,a=e.map((l,m)=>{let w=u[m];if(w)t++;return{sid:l.sid.slice(0,8),backend:l.backend,name:l.name.slice(0,20),model:(l.model??"-").slice(0,24),status:l.status+(w?" \u26A0":""),turns:String(l.turnCount),age:gt(Date.now()-l.createdAt),last:gt(Date.now()-l.lastActiveAt)}}),r=["sid","backend","name","model","status","turns","age","last"],p=r.map((l,m)=>Math.max(l.length,...a.map((w)=>w[l].length))),c=(l)=>l.map((m,w)=>m.padEnd(p[w])).join(" ");console.log(c(r)),console.log(c(p.map((l)=>"\u2500".repeat(l))));for(let l of a)console.log(c(r.map((m)=>l[m])));console.log(`
89
- \u5171 ${e.length} \u4E2A\u5339\u914D${d>0?`\uFF0C${d} \u4E2A running`:""}${t>0?`\uFF0C${t} \u4E2A\u6709\u9519\u8BEF(\u26A0\uFF0Clogs <sid> --errors \u67E5\u770B)`:""}\uFF08\u9ED8\u8BA4\u9690\u85CF closed\uFF0C--all \u663E\u793A\u5168\u90E8\uFF09`)}async function ul(i){let o=new Set,n=[...i];while(n[0]&&n[0].startsWith("--"))o.add(n.shift());let e=n[0],d=n.slice(1).join(" ");if(!e||!d)console.error("\u7528\u6CD5: tako agent send [--json|--verbose] <sid> <prompt...>"),process.exit(1);let u=o.has("--json")?"json":o.has("--verbose")?"verbose":"human",t=await $i(e);if(u!=="json")console.log(`\u2192 ${t.slice(0,8)}`);await _o(t,d,{onFrame:(a)=>go(a,u)})}async function tl(i){let{positional:o,flags:n}=yi(i),{filter:e,hasFilter:d}=M0(n);if(d&&!o[0]){let t=await Kn(e);if(!await Mt("cancel",t,!!n.yes,!!n.json))return;for(let a of t)try{await Do(a.sid)}catch{}if(!n.json)console.log(`\u2713 \u5DF2\u4E2D\u6B62 ${t.length} \u4E2A`);return}let u=await $i(o[0]);await Do(u),console.log(`\u2713 \u5DF2\u4E2D\u6B62 ${u.slice(0,8)}`)}async function al(i){let{positional:o,flags:n}=yi(i),{filter:e,hasFilter:d}=M0(n);if(d&&!o[0]){let t=await Kn(e);if(!await Mt(n.purge?"close+purge":"close",t,!!n.yes,!!n.json))return;for(let a of t)try{await ko(a.sid,!!n.purge)}catch{}if(!n.json)console.log(`\u2713 \u5DF2\u5173\u95ED ${t.length} \u4E2A${n.purge?"\uFF08\u5DF2\u5220\u9664\u76EE\u5F55\uFF09":""}`);return}let u=await $i(o[0]);await ko(u,!!n.purge),console.log(`\u2713 \u5DF2\u5173\u95ED ${u.slice(0,8)}${n.purge?"\uFF08\u5DF2\u5220\u9664\u76EE\u5F55\uFF09":""}`)}async function Mt(i,o,n,e){if(o.length===0){if(!e)console.log("(\u65E0\u5339\u914D session)");return!1}if(e||n)return!0;console.log(`\u5C06\u5BF9\u4EE5\u4E0B ${o.length} \u4E2A session \u6267\u884C ${i}\uFF1A`);for(let t of o)console.log(` ${t.sid.slice(0,8)} ${t.name} [${t.status}]`);process.stdout.write("\u786E\u8BA4\uFF1F(y/N) ");let u=(await import("readline/promises")).createInterface({input:process.stdin,output:process.stdout});try{let t=await u.question("");return/^y(es)?$/i.test(t.trim())}finally{u.close()}}async function rl(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]),d=!!n["errors-only"]||!!n.errors,u=typeof n.lines==="string"?parseInt(n.lines,10):d?1e4:30,t=n.json?"json":"human",a=await Bn(e,u);if(!a)console.error(`session ${e} \u4E0D\u5B58\u5728`),process.exit(1);let r=a.log;if(d)r=r.filter((c)=>c.kind==="error"||c.kind==="tool_result"&&Go(c.output));if(t==="json"){process.stdout.write(JSON.stringify({meta:a.meta,alive:a.alive,log:r.map(g0)},null,2)+`
90
- `);return}let p=a.meta;if(console.log(`# ${p.sid.slice(0,8)} ${p.backend}${p.model?` ${p.model}`:""}`),console.log(`name=${p.name} status=${p.status} turns=${p.turnCount} approval=${p.approvalMode??"yolo"} alive=${a.alive}`),console.log(`workdir=${p.workdir}`),console.log(`
91
- --- ${d?"errors":"log"} (${r.length}) ---`),d&&r.length===0){console.log("(\u65E0\u9519\u8BEF\u5E27)");return}for(let c of r)go(c,t,{expandError:d})}async function pl(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]);if(!G0(V(e)))console.error(`session ${e} \u4E0D\u5B58\u5728`),process.exit(1);let d=!!n.errors,u=(await import("fs/promises")).readFile,a=(await u(V(e),"utf-8")).split(`
92
- `).filter(Boolean),r=!1;for(let p of a){let c;try{c=JSON.parse(p)}catch{continue}let l=c.kind==="error"||c.kind==="tool_result"&&Go(c.output);if(l)r=!0;if(d&&!l)continue;if(n.json)process.stdout.write(p+`
93
- `);else go(c,"verbose",{expandError:!0})}if(d&&!r&&!n.json)console.log("(\u65E0\u9519\u8BEF\u5E27)")}async function cl(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]),d=n.json?"json":n.verbose?"verbose":"human";if(!G0(V(e)))console.error(`session ${e} \u4E0D\u5B58\u5728`),process.exit(1);let u=(await Vn(V(e))).size;if(d!=="json")console.log(`(attached to ${e.slice(0,8)}; Ctrl-C \u9000\u51FA)`);let t=setInterval(async()=>{try{let a=(await Vn(V(e))).size;if(a<=u)return;let r=il(V(e),{start:u,end:a-1});u=a;let p="";r.on("data",(c)=>{p+=typeof c==="string"?c:c.toString("utf-8");let l;while((l=p.indexOf(`
94
- `))>=0){let m=p.slice(0,l);if(p=p.slice(l+1),!m.trim())continue;try{go(JSON.parse(m),d)}catch{}}})}catch{}},200);await new Promise((a)=>{process.on("SIGINT",()=>{clearInterval(t),a()})})}async function ll(){let i=await An();console.log(`\u2713 \u6E05\u7406\u4E86 ${i} \u4E2A closed/dead session`)}async function ml(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]),d=o[1],u=o[2];if(!d||u!=="allow"&&u!=="deny")console.error("\u7528\u6CD5: tako agent approve <sid> <approvalId> <allow|deny>"),process.exit(1);let t=await Fo(e,d);if(t)console.error(`approval ${d} \u5DF2\u6279\u4E3A ${t.decision}`),process.exit(1);if(await Gn(e,d,{decision:u,reason:typeof n.reason==="string"?n.reason:void 0,by:typeof n.by==="string"?n.by:"cli",decidedAt:Date.now()}),console.log(`\u2713 approval ${d} = ${u}`),typeof n.rule==="string"&&u==="allow")await $u(e,n.rule),console.log(`\u2713 policy: exec_allow += /${n.rule}/`)}async function wl(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]),d=await Vo(e);if(n.json){process.stdout.write(JSON.stringify(d.map((u)=>({approvalId:u.approvalId,type:u.approvalType,detail:dn(u.approvalType,u.params)})),null,2)+`
95
- `);return}if(d.length===0){console.log("(\u65E0 pending)");return}for(let u of d)console.log(`[${u.approvalType}] id=${u.approvalId} ${dn(u.approvalType,u.params)}`)}async function xl(i){if(i[0]==="default-show"){console.log(JSON.stringify(l0,null,2));return}let o=await $i(i[0]),n=i[1];if(!n||n==="show"){let d=await Sn(o),u=await qn(o);console.log("=== effective policy ==="),console.log(JSON.stringify(d,null,2)),console.log(`
96
- === session override ===`),console.log(Object.keys(u).length===0?"(\u7A7A)":JSON.stringify(u,null,2));return}let e=i.slice(2).join(" ").trim();if(n==="allow-exec"||n==="deny-exec"){if(!e)console.error(`\u7528\u6CD5: tako agent policy <sid> ${n} <regex>`),process.exit(1);let d=await qn(o),u=n==="allow-exec"?"exec_allow":"exec_deny",t=d[u]??[];if(!t.includes(e))t.push(e);d[u]=t,await Qn(o,d),console.log(`\u2713 ${u} += /${e}/`);return}if(n==="reset"){await Qn(o,{}),console.log("\u2713 \u7B56\u7565\u5DF2\u6E05\u7A7A");return}console.error(`\u672A\u77E5 policy \u5B50\u547D\u4EE4: ${n}`),process.exit(1)}async function yl(i){let{positional:o,flags:n}=yi(i),e=await $i(o[0]),d=!!n.json,u=typeof n.timeout==="string"?Number(n.timeout)*1000:600000,t=typeof n.since==="string"?Number(n.since):0;if(!G0(V(e))){if(d)process.stdout.write(JSON.stringify({event:"not_found",sid:e})+`
97
- `);else console.error(`session ${e} \u4E0D\u5B58\u5728`);process.exit(1)}let a=t>0?0:(await Vn(V(e))).size,r=Date.now(),p=[];while(Date.now()-r<u){try{let c=(await Vn(V(e))).size;if(c>a){let m=await(await import("fs/promises")).open(V(e),"r"),w=Buffer.alloc(c-a);await m.read(w,0,w.length,a),await m.close(),a=c;for(let y of w.toString("utf-8").split(`
98
- `)){if(!y.trim())continue;let v;try{v=JSON.parse(y)}catch{continue}if(t>0&&v.ts<t)continue;if(v.kind==="text_delta"){p.push(v.text);continue}if(v.kind==="approval_required"){let s=await Vo(e);if(d)process.stdout.write(JSON.stringify({event:"approval_required",pending:s.map((L)=>({approvalId:L.approvalId,type:L.approvalType}))})+`
99
- `);else console.log(`event=approval_required pending=${s.length}`);process.exit(0)}if(v.kind==="turn_completed"){if(d)process.stdout.write(JSON.stringify({event:"turn_completed",text:p.join("")})+`
100
- `);else if(console.log("event=turn_completed"),p.join("").trim())console.log(p.join("").trim());process.exit(2)}if(v.kind==="error"){if(d)process.stdout.write(JSON.stringify({event:"error",message:v.message})+`
101
- `);else console.error(`event=error ${v.message}`);process.exit(1)}if(v.kind==="session_closed"){if(d)process.stdout.write(JSON.stringify({event:"session_closed"})+`
102
- `);else console.log("event=session_closed");process.exit(3)}}}}catch{}await new Promise((c)=>setTimeout(c,200))}if(d)process.stdout.write(JSON.stringify({event:"timeout"})+`
103
- `);else console.error("event=timeout");process.exit(1)}async function vl(i){let o=i[0],n=i[1];if(o!=="claude"&&o!=="codex"||!n)console.error("\u7528\u6CD5: tako agent default <claude|codex> <providerId>"),process.exit(1);await Ku(o,n),console.log(`\u2713 ${o} \u9ED8\u8BA4 provider = ${n}`)}async function sl(){let i=await Rn();if(Object.keys(i).length===0)console.log("(\u672A\u8BBE\u7F6E)");else for(let[o,n]of Object.entries(i))console.log(`${o.padEnd(8)} \u2192 ${n}`)}var qt=G(()=>{Ti();Cn();w0()});var S0;var q0=G(()=>{S0={name:"model-benchmark",description:"Tako \u6A21\u578B\u8BC4\u6D4B\u7ED3\u679C\u4E0E\u63A8\u8350 \u2014 \u67E5\u8BE2\u5404\u6A21\u578B\u7F16\u7801\u80FD\u529B\u8BC4\u5206",filename:"SKILL.md",content:`---
338
+ `)}async function qE(B){if(!B)console.error("\u7F3A\u5C11 sid \u53C2\u6570"),process.exit(1);let C=(await J4()).filter((g)=>g.sid.startsWith(B));if(C.length===0)return B;if(C.length>1)console.error(`sid \u524D\u7F00 "${B}" \u5339\u914D\u591A\u4E2A`),process.exit(1);return C[0].sid}async function mV(B){let{positional:I,flags:C}=x0(B),g=I[0];if(g!=="claude"&&g!=="codex")console.error("\u7528\u6CD5: tako agent start <claude|codex>"),process.exit(1);let F;if(typeof C.approval==="string"){if(C.approval!=="yolo"&&C.approval!=="external")console.error("--approval \u4EC5\u652F\u6301 yolo|external"),process.exit(1);F=C.approval}let N=await f1({backend:g,model:typeof C.model==="string"?C.model:void 0,name:typeof C.name==="string"?C.name:void 0,workdir:typeof C.cwd==="string"?C.cwd:void 0,providerId:typeof C.provider==="string"?C.provider:void 0,approvalMode:F});if(C.json){process.stdout.write(JSON.stringify({sid:N.sid,name:N.name,backend:N.backend,model:N.model??null,workdir:N.workdir,approvalMode:N.approvalMode??"yolo"})+`
339
+ `);return}if(console.log(`\u2713 ${N.backend} session \u5DF2\u521B\u5EFA`),console.log(` sid: ${N.sid}`),console.log(` name: ${N.name}`),N.model)console.log(` model: ${N.model}`);console.log(` workdir: ${N.workdir}`),console.log(` approval: ${N.approvalMode??"yolo"}`),console.log(`
340
+ \u540E\u7EED\uFF1Atako agent send ${N.sid} "\u4F60\u7684 prompt"`)}async function hV(B){let{positional:I,flags:C}=x0(B),g=I[0];if(g!=="claude"&&g!=="codex")console.error('\u7528\u6CD5: tako agent run <claude|codex> --prompt "..."'),process.exit(1);let F=typeof C.prompt==="string"?C.prompt:I.slice(1).join(" ");if(!F)console.error("\u7F3A\u5C11 --prompt"),process.exit(1);let N=!!C.json,H=!!C.purge,M;if(typeof C.approval==="string"){if(C.approval!=="yolo"&&C.approval!=="external")console.error("--approval \u4EC5\u652F\u6301 yolo|external"),process.exit(1);M=C.approval}let U="",u,X=[];try{let W=await f1({backend:g,model:typeof C.model==="string"?C.model:void 0,name:typeof C.name==="string"?C.name:void 0,workdir:typeof C.cwd==="string"?C.cwd:void 0,providerId:typeof C.provider==="string"?C.provider:void 0,approvalMode:M});if(U=W.sid,!N)console.log(`\u2192 run ${U.slice(0,8)} (${W.backend}${W.model?` ${W.model}`:""})`);await j1(U,F,{onFrame:(z)=>{if(z.kind==="text_delta")X.push(z.text);else if(z.kind==="error")u=z.message;if(!N)h2(z,"human")}})}catch(W){u=W instanceof Error?W.message:String(W)}let k=u?"error":"ok";if(H&&U)try{await wD(U,!0)}catch{}if(N)process.stdout.write(JSON.stringify({sid:U,status:k,text:X.join(""),error:u??null,purged:H})+`
341
+ `);else{if(u)console.error(`\u2717 run \u5931\u8D25: ${u}`);if(U&&!H)console.log(`
342
+ session \u4FDD\u7559: ${U.slice(0,8)}\uFF08tako agent show ${U.slice(0,8)} \u67E5\u770B\uFF1B--purge \u53EF\u81EA\u52A8\u56DE\u6536\uFF09`)}if(u)process.exit(1)}async function bV(B){let{flags:I}=x0(B),{filter:C}=J9(I),g=await M4(C);if(I.json){process.stdout.write(JSON.stringify(g)+`
343
+ `);return}let F=g.filter((k)=>k.status==="running").length;if(g.length===0){console.log("(\u65E0\u5339\u914D session)");return}let N=await Promise.all(g.map(async(k)=>cZ(await g4(k.sid,60)))),H=0,M=g.map((k,W)=>{let z=N[W];if(z)H++;return{sid:k.sid.slice(0,8),backend:k.backend,name:k.name.slice(0,20),model:(k.model??"-").slice(0,24),status:k.status+(z?" \u26A0":""),turns:String(k.turnCount),age:lZ(Date.now()-k.createdAt),last:lZ(Date.now()-k.lastActiveAt)}}),U=["sid","backend","name","model","status","turns","age","last"],u=U.map((k,W)=>Math.max(k.length,...M.map((z)=>z[k].length))),X=(k)=>k.map((W,z)=>W.padEnd(u[z])).join(" ");console.log(X(U)),console.log(X(u.map((k)=>"\u2500".repeat(k))));for(let k of M)console.log(X(U.map((W)=>k[W])));console.log(`
344
+ \u5171 ${g.length} \u4E2A\u5339\u914D${F>0?`\uFF0C${F} \u4E2A running`:""}${H>0?`\uFF0C${H} \u4E2A\u6709\u9519\u8BEF(\u26A0\uFF0Clogs <sid> --errors \u67E5\u770B)`:""}\uFF08\u9ED8\u8BA4\u9690\u85CF closed\uFF0C--all \u663E\u793A\u5168\u90E8\uFF09`)}async function fV(B){let I=new Set,C=[...B];while(C[0]&&C[0].startsWith("--"))I.add(C.shift());let g=C[0],F=C.slice(1).join(" ");if(!g||!F)console.error("\u7528\u6CD5: tako agent send [--json|--verbose] <sid> <prompt...>"),process.exit(1);let N=I.has("--json")?"json":I.has("--verbose")?"verbose":"human",H=await qE(g);if(N!=="json")console.log(`\u2192 ${H.slice(0,8)}`);await j1(H,F,{onFrame:(M)=>h2(M,N)})}async function jV(B){let{positional:I,flags:C}=x0(B),{filter:g,hasFilter:F}=J9(C);if(F&&!I[0]){let H=await M4(g);if(!await oZ("cancel",H,!!C.yes,!!C.json))return;for(let M of H)try{await x1(M.sid)}catch{}if(!C.json)console.log(`\u2713 \u5DF2\u4E2D\u6B62 ${H.length} \u4E2A`);return}let N=await qE(I[0]);await x1(N),console.log(`\u2713 \u5DF2\u4E2D\u6B62 ${N.slice(0,8)}`)}async function xV(B){let{positional:I,flags:C}=x0(B),{filter:g,hasFilter:F}=J9(C);if(F&&!I[0]){let H=await M4(g);if(!await oZ(C.purge?"close+purge":"close",H,!!C.yes,!!C.json))return;for(let M of H)try{await wD(M.sid,!!C.purge)}catch{}if(!C.json)console.log(`\u2713 \u5DF2\u5173\u95ED ${H.length} \u4E2A${C.purge?"\uFF08\u5DF2\u5220\u9664\u76EE\u5F55\uFF09":""}`);return}let N=await qE(I[0]);await wD(N,!!C.purge),console.log(`\u2713 \u5DF2\u5173\u95ED ${N.slice(0,8)}${C.purge?"\uFF08\u5DF2\u5220\u9664\u76EE\u5F55\uFF09":""}`)}async function oZ(B,I,C,g){if(I.length===0){if(!g)console.log("(\u65E0\u5339\u914D session)");return!1}if(g||C)return!0;console.log(`\u5C06\u5BF9\u4EE5\u4E0B ${I.length} \u4E2A session \u6267\u884C ${B}\uFF1A`);for(let H of I)console.log(` ${H.sid.slice(0,8)} ${H.name} [${H.status}]`);process.stdout.write("\u786E\u8BA4\uFF1F(y/N) ");let N=(await import("readline/promises")).createInterface({input:process.stdin,output:process.stdout});try{let H=await N.question("");return/^y(es)?$/i.test(H.trim())}finally{N.close()}}async function pV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]),F=!!C["errors-only"]||!!C.errors,N=typeof C.lines==="string"?parseInt(C.lines,10):F?1e4:30,H=C.json?"json":"human",M=await m2(g,N);if(!M)console.error(`session ${g} \u4E0D\u5B58\u5728`),process.exit(1);let U=M.log;if(F)U=U.filter((X)=>X.kind==="error"||X.kind==="tool_result"&&b2(X.output));if(H==="json"){process.stdout.write(JSON.stringify({meta:M.meta,alive:M.alive,log:U.map(N9)},null,2)+`
345
+ `);return}let u=M.meta;if(console.log(`# ${u.sid.slice(0,8)} ${u.backend}${u.model?` ${u.model}`:""}`),console.log(`name=${u.name} status=${u.status} turns=${u.turnCount} approval=${u.approvalMode??"yolo"} alive=${M.alive}`),console.log(`workdir=${u.workdir}`),console.log(`
346
+ --- ${F?"errors":"log"} (${U.length}) ---`),F&&U.length===0){console.log("(\u65E0\u9519\u8BEF\u5E27)");return}for(let X of U)h2(X,H,{expandError:F})}async function iV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]);if(!H9(dQ(g)))console.error(`session ${g} \u4E0D\u5B58\u5728`),process.exit(1);let F=!!C.errors,N=(await import("fs/promises")).readFile,M=(await N(dQ(g),"utf-8")).split(`
347
+ `).filter(Boolean),U=!1;for(let u of M){let X;try{X=JSON.parse(u)}catch{continue}let k=X.kind==="error"||X.kind==="tool_result"&&b2(X.output);if(k)U=!0;if(F&&!k)continue;if(C.json)process.stdout.write(u+`
348
+ `);else h2(X,"verbose",{expandError:!0})}if(F&&!U&&!C.json)console.log("(\u65E0\u9519\u8BEF\u5E27)")}async function dV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]),F=C.json?"json":C.verbose?"verbose":"human";if(!H9(dQ(g)))console.error(`session ${g} \u4E0D\u5B58\u5728`),process.exit(1);let N=(await X4(dQ(g))).size;if(F!=="json")console.log(`(attached to ${g.slice(0,8)}; Ctrl-C \u9000\u51FA)`);let H=setInterval(async()=>{try{let M=(await X4(dQ(g))).size;if(M<=N)return;let U=VV(dQ(g),{start:N,end:M-1});N=M;let u="";U.on("data",(X)=>{u+=typeof X==="string"?X:X.toString("utf-8");let k;while((k=u.indexOf(`
349
+ `))>=0){let W=u.slice(0,k);if(u=u.slice(k+1),!W.trim())continue;try{h2(JSON.parse(W),F)}catch{}}})}catch{}},200);await new Promise((M)=>{process.on("SIGINT",()=>{clearInterval(H),M()})})}async function cV(){let B=await U4();console.log(`\u2713 \u6E05\u7406\u4E86 ${B} \u4E2A closed/dead session`)}async function lV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]),F=I[1],N=I[2];if(!F||N!=="allow"&&N!=="deny")console.error("\u7528\u6CD5: tako agent approve <sid> <approvalId> <allow|deny>"),process.exit(1);let H=await m1(g,F);if(H)console.error(`approval ${F} \u5DF2\u6279\u4E3A ${H.decision}`),process.exit(1);if(await D4(g,F,{decision:N,reason:typeof C.reason==="string"?C.reason:void 0,by:typeof C.by==="string"?C.by:"cli",decidedAt:Date.now()}),console.log(`\u2713 approval ${F} = ${N}`),typeof C.rule==="string"&&N==="allow")await JZ(g,C.rule),console.log(`\u2713 policy: exec_allow += /${C.rule}/`)}async function aV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]),F=await h1(g);if(C.json){process.stdout.write(JSON.stringify(F.map((N)=>({approvalId:N.approvalId,type:N.approvalType,detail:c1(N.approvalType,N.params)})),null,2)+`
350
+ `);return}if(F.length===0){console.log("(\u65E0 pending)");return}for(let N of F)console.log(`[${N.approvalType}] id=${N.approvalId} ${c1(N.approvalType,N.params)}`)}async function oV(B){if(B[0]==="default-show"){console.log(JSON.stringify(eH,null,2));return}let I=await qE(B[0]),C=B[1];if(!C||C==="show"){let F=await w4(I),N=await G4(I);console.log("=== effective policy ==="),console.log(JSON.stringify(F,null,2)),console.log(`
351
+ === session override ===`),console.log(Object.keys(N).length===0?"(\u7A7A)":JSON.stringify(N,null,2));return}let g=B.slice(2).join(" ").trim();if(C==="allow-exec"||C==="deny-exec"){if(!g)console.error(`\u7528\u6CD5: tako agent policy <sid> ${C} <regex>`),process.exit(1);let F=await G4(I),N=C==="allow-exec"?"exec_allow":"exec_deny",H=F[N]??[];if(!H.includes(g))H.push(g);F[N]=H,await N4(I,F),console.log(`\u2713 ${N} += /${g}/`);return}if(C==="reset"){await N4(I,{}),console.log("\u2713 \u7B56\u7565\u5DF2\u6E05\u7A7A");return}console.error(`\u672A\u77E5 policy \u5B50\u547D\u4EE4: ${C}`),process.exit(1)}async function nV(B){let{positional:I,flags:C}=x0(B),g=await qE(I[0]),F=!!C.json,N=typeof C.timeout==="string"?Number(C.timeout)*1000:600000,H=typeof C.since==="string"?Number(C.since):0;if(!H9(dQ(g))){if(F)process.stdout.write(JSON.stringify({event:"not_found",sid:g})+`
352
+ `);else console.error(`session ${g} \u4E0D\u5B58\u5728`);process.exit(1)}let M=H>0?0:(await X4(dQ(g))).size,U=Date.now(),u=[];while(Date.now()-U<N){try{let X=(await X4(dQ(g))).size;if(X>M){let W=await(await import("fs/promises")).open(dQ(g),"r"),z=Buffer.alloc(X-M);await W.read(z,0,z.length,M),await W.close(),M=X;for(let $ of z.toString("utf-8").split(`
353
+ `)){if(!$.trim())continue;let O;try{O=JSON.parse($)}catch{continue}if(H>0&&O.ts<H)continue;if(O.kind==="text_delta"){u.push(O.text);continue}if(O.kind==="approval_required"){let v=await h1(g);if(F)process.stdout.write(JSON.stringify({event:"approval_required",pending:v.map((d)=>({approvalId:d.approvalId,type:d.approvalType}))})+`
354
+ `);else console.log(`event=approval_required pending=${v.length}`);process.exit(0)}if(O.kind==="turn_completed"){if(F)process.stdout.write(JSON.stringify({event:"turn_completed",text:u.join("")})+`
355
+ `);else if(console.log("event=turn_completed"),u.join("").trim())console.log(u.join("").trim());process.exit(2)}if(O.kind==="error"){if(F)process.stdout.write(JSON.stringify({event:"error",message:O.message})+`
356
+ `);else console.error(`event=error ${O.message}`);process.exit(1)}if(O.kind==="session_closed"){if(F)process.stdout.write(JSON.stringify({event:"session_closed"})+`
357
+ `);else console.log("event=session_closed");process.exit(3)}}}}catch{}await new Promise((X)=>setTimeout(X,200))}if(F)process.stdout.write(JSON.stringify({event:"timeout"})+`
358
+ `);else console.error("event=timeout");process.exit(1)}async function rV(B){let I=B[0],C=B[1];if(I!=="claude"&&I!=="codex"||!C)console.error("\u7528\u6CD5: tako agent default <claude|codex> <providerId>"),process.exit(1);await ZZ(I,C),console.log(`\u2713 ${I} \u9ED8\u8BA4 provider = ${C}`)}async function sV(){let B=await L4();if(Object.keys(B).length===0)console.log("(\u672A\u8BBE\u7F6E)");else for(let[I,C]of Object.entries(B))console.log(`${I.padEnd(8)} \u2192 ${C}`)}var rZ=c(async()=>{FD();B9();await u4()});var M9;var U9=c(()=>{M9={name:"model-benchmark",description:"Tako \u6A21\u578B\u8BC4\u6D4B\u7ED3\u679C\u4E0E\u63A8\u8350 \u2014 \u67E5\u8BE2\u5404\u6A21\u578B\u7F16\u7801\u80FD\u529B\u8BC4\u5206",filename:"SKILL.md",content:`---
104
359
  name: model-benchmark
105
360
  description: "Tako \u6A21\u578B\u8BC4\u6D4B\u7ED3\u679C\u4E0E\u63A8\u8350\uFF1A\u67E5\u8BE2\u5404\u6A21\u578B\u7F16\u7801\u80FD\u529B\u8BC4\u5206\u3001\u9009\u6A21\u578B\u5EFA\u8BAE\u3001\u6027\u4EF7\u6BD4\u5BF9\u6BD4\u3002\u89E6\u53D1\u8BCD: \u6A21\u578B\u63A8\u8350, benchmark, \u54EA\u4E2A\u6A21\u578B\u597D, \u9009\u6A21\u578B, model comparison, \u6A21\u578B\u5BF9\u6BD4, \u56FD\u4EA7\u6A21\u578B, \u8BC4\u6D4B\u7ED3\u679C"
106
361
  allowed-tools: Read, Bash(bun:*)
@@ -159,7 +414,7 @@ allowed-tools: Read, Bash(bun:*)
159
414
  ${"```"}bash
160
415
  cd packages/cli && bun run scripts/benchmark-models.ts
161
416
  ${"```"}
162
- `}});var Q0;var P0=G(()=>{Q0={name:"tako-agent",description:"\u957F\u65F6 agent session \u7BA1\u7406 \u2014 \u542F\u52A8/\u7EED\u63A5/\u76D1\u63A7/\u5173\u95ED Claude/Codex agent",filename:"SKILL.md",content:`---
417
+ `}});var L9;var u9=c(()=>{L9={name:"tako-agent",description:"\u957F\u65F6 agent session \u7BA1\u7406 \u2014 \u542F\u52A8/\u7EED\u63A5/\u76D1\u63A7/\u5173\u95ED Claude/Codex agent",filename:"SKILL.md",content:`---
163
418
  name: tako-agent
164
419
  description: "\u901A\u8FC7 tako CLI \u542F\u52A8\u3001\u7EED\u63A5\u3001\u76D1\u63A7\u3001\u5173\u95ED Claude Code \u4E0E Codex \u7684\u957F\u65F6 agent session\u3002\u89E6\u53D1\u8BCD: agent session, \u6D3E\u4E00\u4E2A agent, \u5F00\u4E00\u4E2A\u5B50\u4F1A\u8BDD, \u7BA1\u7406 agent, \u770B agent \u8DD1\u5230\u54EA\u4E86, \u53D6\u6D88\u90A3\u4E2A agent, \u5E76\u884C\u8DD1 agent"
165
420
  allowed-tools: Bash(tako:*)
@@ -242,16 +497,16 @@ ${"```"}
242
497
  - claude \u7528 \`--resume\` \u6301\u4E45\u5316\u5386\u53F2\uFF0Ccodex \u7528 \`thread/resume\`
243
498
  - \`--approval yolo\`\uFF08\u9ED8\u8BA4\uFF09\u4E0D\u5BA1\u6279\uFF1B\`--approval external\` \u542F\u7528\u5916\u7F6E\u5BA1\u6279
244
499
  - \u9ED8\u8BA4\u7B56\u7565\u5DF2\u8986\u76D6\u5E38\u89C1\u5B89\u5168\u573A\u666F\uFF08auto_allow \u53EA\u8BFB\u547D\u4EE4\uFF0Cauto_deny \u5371\u9669\u64CD\u4F5C\uFF09
245
- `}});var Un;var Qt=G(()=>{q0();P0();q0();P0();Un=[S0,Q0]});var Pt={};ai(Pt,{runSkillCommand:()=>Wl});import{join as J0}from"path";import{existsSync as Ll,mkdirSync as hl}from"fs";async function Wl(i){let o=i[0];if(!o||o==="list"){console.log(`
500
+ `}});var q4;var sZ=c(()=>{U9();u9();U9();u9();q4=[M9,L9]});var tZ={};F0(tZ,{runSkillCommand:()=>AP});import{join as K9}from"path";import{existsSync as tV,mkdirSync as eV}from"fs";async function AP(B){let I=B[0];if(!I||I==="list"){console.log(`
246
501
  Available skills:
247
- `);for(let n of Un)console.log(` ${n.name.padEnd(20)} ${n.description}`);console.log(`
502
+ `);for(let C of q4)console.log(` ${C.name.padEnd(20)} ${C.description}`);console.log(`
248
503
  Install: tako skill install <name>`),console.log(`Install all: tako skill install --all
249
- `);return}if(o==="install"){let n=i[1];if(!n)console.error("Usage: tako skill install <name|--all>"),process.exit(1);let e=n==="--all"?Un:Un.filter((u)=>u.name===n);if(e.length===0)console.error(`Skill "${n}" not found. Run "tako skill list" to see available skills.`),process.exit(1);let d=J0(process.cwd(),".claude","skills");for(let u of e){let t=J0(d,u.name),a=J0(t,u.filename);if(Ll(a)){console.log(` skip ${u.name} (already exists)`);continue}hl(t,{recursive:!0}),await Bun.write(a,u.content),console.log(` \u2713 installed ${u.name} \u2192 .claude/skills/${u.name}/${u.filename}`)}return}console.error(`Unknown subcommand: ${o}. Try "tako skill list" or "tako skill install <name>".`),process.exit(1)}var Jt=G(()=>{Qt()});var Bt={};ai(Bt,{runModelsCommand:()=>Ql});function Nl(i){let o={json:!1,refresh:!1},n=[...i];if(n[0]==="list")n.shift();for(let e of n)if(e==="--json")o.json=!0;else if(e==="--refresh")o.refresh=!0;else return o.invalid=e,o;return o}function bl(i){return(i.providers??[]).filter((n)=>n.type==="tako"&&!!n.baseUrl).sort((n,e)=>n.id.localeCompare(e.id))}function fl(i){return[...i].sort((o,n)=>o.id.localeCompare(n.id)||o.displayName.localeCompare(n.displayName))}function kl(i,o){let n=[],e=!1;for(let d of Kt){let u=o(i.baseUrl,d);if(u===null){n.push({apiType:d,models:[]});continue}e=!0,n.push({apiType:d,models:fl(u)})}return{id:i.id,name:i.name,baseUrl:i.baseUrl,buckets:n,hasAnyCache:e}}async function zl(i,o){let n=[];for(let e of i){if(!e.apiKey||!e.baseUrl)continue;for(let d of Kt)n.push(o(e.baseUrl,e.apiKey,d).catch(()=>{}))}await Promise.allSettled(n)}function gl(i){let o=new Set,n=[];for(let e of i)for(let d of e.models){if(o.has(d.id))continue;o.add(d.id),n.push(d.id)}return n.sort((e,d)=>e.localeCompare(d))}function Gl(i){let o=[],n=[],e="";for(let d of i){let u=d.slice(0,3);if(u!==e){if(n.length)o.push(n);n=[d],e=u}else n.push(d)}if(n.length)o.push(n);return o}function Ml(i,o){if(i.length===0)return[];let n=4,d=Math.max(...i.map((p)=>p.length))+2,u=Math.max(d,o-n),t=Math.max(1,Math.floor(u/d)),a=Math.min(t,$l),r=[];for(let p=0;p<i.length;p+=a){let c=i.slice(p,p+a),l=c.map((m,w)=>w===c.length-1?m:m.padEnd(d)).join("");r.push(" ".repeat(n)+l)}return r}function Sl(i,o){if(i.length===0)return`\u672A\u914D\u7F6E Tako \u6E20\u9053
250
- `;let n=[];for(let e of i){if(n.push(`Provider: ${e.id} (${e.baseUrl})`),!e.hasAnyCache){n.push(" \u7F13\u5B58\u4E3A\u7A7A\uFF0C\u8BF7\u5148\u8FD0\u884C `tako models list --refresh`"),n.push("");continue}let d=gl(e.buckets);n.push(` ${d.length} models`);for(let u of Gl(d))n.push(...Ml(u,o));n.push("")}return n.join(`
251
- `)}function ql(i,o,n){let e=i.map((u)=>({id:u.id,name:u.name,baseUrl:u.baseUrl,hasCache:u.hasAnyCache,models:u.buckets.flatMap((t)=>t.models.map((a)=>({apiType:t.apiType,id:a.id,displayName:a.displayName,description:a.description,contextWindow:a.contextWindow,sortOrder:a.sortOrder})))}));return`${JSON.stringify({command:"list",refreshed:o,fetchedAt:n,providers:e})}
252
- `}async function Ql(i=[],o={}){let n=Nl(i);if(n.invalid)return process.stderr.write(`Unknown argument: ${n.invalid}
504
+ `);return}if(I==="install"){let C=B[1];if(!C)console.error("Usage: tako skill install <name|--all>"),process.exit(1);let g=C==="--all"?q4:q4.filter((N)=>N.name===C);if(g.length===0)console.error(`Skill "${C}" not found. Run "tako skill list" to see available skills.`),process.exit(1);let F=K9(process.cwd(),".claude","skills");for(let N of g){let H=K9(F,N.name),M=K9(H,N.filename);if(tV(M)){console.log(` skip ${N.name} (already exists)`);continue}eV(H,{recursive:!0}),await Bun.write(M,N.content),console.log(` \u2713 installed ${N.name} \u2192 .claude/skills/${N.name}/${N.filename}`)}return}console.error(`Unknown subcommand: ${I}. Try "tako skill list" or "tako skill install <name>".`),process.exit(1)}var eZ=c(()=>{sZ()});var BX={};F0(BX,{runModelsCommand:()=>HP});function BP(B){let I={json:!1,refresh:!1},C=[...B];if(C[0]==="list")C.shift();for(let g of C)if(g==="--json")I.json=!0;else if(g==="--refresh")I.refresh=!0;else return I.invalid=g,I;return I}function QP(B){return(B.providers??[]).filter((C)=>C.type==="tako"&&!!C.baseUrl).sort((C,g)=>C.id.localeCompare(g.id))}function IP(B){return[...B].sort((I,C)=>I.id.localeCompare(C.id)||I.displayName.localeCompare(C.displayName))}function EP(B,I){let C=[],g=!1;for(let F of AX){let N=I(B.baseUrl,F);if(N===null){C.push({apiType:F,models:[]});continue}g=!0,C.push({apiType:F,models:IP(N)})}return{id:B.id,name:B.name,baseUrl:B.baseUrl,buckets:C,hasAnyCache:g}}async function CP(B,I){let C=[];for(let g of B){if(!g.apiKey||!g.baseUrl)continue;for(let F of AX)C.push(I(g.baseUrl,g.apiKey,F).catch(()=>{}))}await Promise.allSettled(C)}function DP(B){let I=new Set,C=[];for(let g of B)for(let F of g.models){if(I.has(F.id))continue;I.add(F.id),C.push(F.id)}return C.sort((g,F)=>g.localeCompare(F))}function FP(B){let I=[],C=[],g="";for(let F of B){let N=F.slice(0,3);if(N!==g){if(C.length)I.push(C);C=[F],g=N}else C.push(F)}if(C.length)I.push(C);return I}function wP(B,I){if(B.length===0)return[];let C=4,F=Math.max(...B.map((u)=>u.length))+2,N=Math.max(F,I-C),H=Math.max(1,Math.floor(N/F)),M=Math.min(H,gP),U=[];for(let u=0;u<B.length;u+=M){let X=B.slice(u,u+M),k=X.map((W,z)=>z===X.length-1?W:W.padEnd(F)).join("");U.push(" ".repeat(C)+k)}return U}function GP(B,I){if(B.length===0)return`\u672A\u914D\u7F6E Tako \u6E20\u9053
505
+ `;let C=[];for(let g of B){if(C.push(`Provider: ${g.id} (${g.baseUrl})`),!g.hasAnyCache){C.push(" \u7F13\u5B58\u4E3A\u7A7A\uFF0C\u8BF7\u5148\u8FD0\u884C `tako models list --refresh`"),C.push("");continue}let F=DP(g.buckets);C.push(` ${F.length} models`);for(let N of FP(F))C.push(...wP(N,I));C.push("")}return C.join(`
506
+ `)}function NP(B,I,C){let g=B.map((N)=>({id:N.id,name:N.name,baseUrl:N.baseUrl,hasCache:N.hasAnyCache,models:N.buckets.flatMap((H)=>H.models.map((M)=>({apiType:H.apiType,id:M.id,displayName:M.displayName,description:M.description,contextWindow:M.contextWindow,sortOrder:M.sortOrder})))}));return`${JSON.stringify({command:"list",refreshed:I,fetchedAt:C,providers:g})}
507
+ `}async function HP(B=[],I={}){let C=BP(B);if(C.invalid)return process.stderr.write(`Unknown argument: ${C.invalid}
253
508
  Usage: tako models [list] [--refresh] [--json]
254
- `),1;let e=o.loadConfig??N,d=o.refresh??wn,u=o.read??Ki,t=o.now??(()=>Date.now()),a=o.columns??(()=>process.stdout.columns??80),r=await e(),p=bl(r);if(n.refresh&&p.length>0)await zl(p,d);let c=p.map((m)=>kl(m,u)),l=new Date(t()).toISOString();if(n.json)process.stdout.write(ql(c,n.refresh,l));else process.stdout.write(Sl(c,a()));return 0}var Kt,$l=5;var At=G(()=>{P();he();Kt=["openai","claude"]});T();P();import{homedir as ka}from"os";import{join as Ne}from"path";/*!
509
+ `),1;let g=I.loadConfig??AB,F=I.refresh??Vw,N=I.read??dC,H=I.now??(()=>Date.now()),M=I.columns??(()=>process.stdout.columns??80),U=await g(),u=QP(U);if(C.refresh&&u.length>0)await CP(u,F);let X=u.map((W)=>EP(W,N)),k=new Date(H()).toISOString();if(C.json)process.stdout.write(NP(X,C.refresh,k));else process.stdout.write(GP(X,M()));return 0}var AX,gP=5;var QX=c(()=>{sB();ZN();AX=["openai","claude"]});kI();sB();import{homedir as qz}from"os";import{join as qN}from"path";/*!
255
510
  * Copyright (c) Squirrel Chat et al., All rights reserved.
256
511
  * SPDX-License-Identifier: BSD-3-Clause
257
512
  *
@@ -277,7 +532,7 @@ Usage: tako models [list] [--refresh] [--json]
277
532
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
278
533
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
279
534
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
280
- */var Dt=/^(\d{4}-\d{2}-\d{2})?[T ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|[-+]\d{2}:\d{2})?$/i;class Ji extends Date{#o=!1;#n=!1;#i=null;constructor(i){let o=!0,n=!0,e="Z";if(typeof i==="string"){let d=i.match(Dt);if(d){if(!d[1])o=!1,i=`0000-01-01T${i}`;if(n=!!d[2],n&&i[10]===" "&&(i=i.replace(" ","T")),d[2]&&+d[2]>23)i="";else if(e=d[3]||null,i=i.toUpperCase(),!e&&n)i+="Z"}else i=""}super(i);if(!isNaN(this.getTime()))this.#o=o,this.#n=n,this.#i=e}isDateTime(){return this.#o&&this.#n}isLocal(){return!this.#o||!this.#n||!this.#i}isDate(){return this.#o&&!this.#n}isTime(){return this.#n&&!this.#o}isValid(){return this.#o||this.#n}toISOString(){let i=super.toISOString();if(this.isDate())return i.slice(0,10);if(this.isTime())return i.slice(11,23);if(this.#i===null)return i.slice(0,-1);if(this.#i==="Z")return i;let o=+this.#i.slice(1,3)*60+ +this.#i.slice(4,6);return o=this.#i[0]==="-"?o:-o,new Date(this.getTime()-o*60000).toISOString().slice(0,-1)+this.#i}static wrapAsOffsetDateTime(i,o="Z"){let n=new Ji(i);return n.#i=o,n}static wrapAsLocalDateTime(i){let o=new Ji(i);return o.#i=null,o}static wrapAsLocalDate(i){let o=new Ji(i);return o.#n=!1,o.#i=null,o}static wrapAsLocalTime(i){let o=new Ji(i);return o.#o=!1,o.#i=null,o}}/*!
535
+ */var tk=/^(\d{4}-\d{2}-\d{2})?[T ]?(?:(\d{2}):\d{2}(?::\d{2}(?:\.\d+)?)?)?(Z|[-+]\d{2}:\d{2})?$/i;class iC extends Date{#B=!1;#Q=!1;#A=null;constructor(B){let I=!0,C=!0,g="Z";if(typeof B==="string"){let F=B.match(tk);if(F){if(!F[1])I=!1,B=`0000-01-01T${B}`;if(C=!!F[2],C&&B[10]===" "&&(B=B.replace(" ","T")),F[2]&&+F[2]>23)B="";else if(g=F[3]||null,B=B.toUpperCase(),!g&&C)B+="Z"}else B=""}super(B);if(!isNaN(this.getTime()))this.#B=I,this.#Q=C,this.#A=g}isDateTime(){return this.#B&&this.#Q}isLocal(){return!this.#B||!this.#Q||!this.#A}isDate(){return this.#B&&!this.#Q}isTime(){return this.#Q&&!this.#B}isValid(){return this.#B||this.#Q}toISOString(){let B=super.toISOString();if(this.isDate())return B.slice(0,10);if(this.isTime())return B.slice(11,23);if(this.#A===null)return B.slice(0,-1);if(this.#A==="Z")return B;let I=+this.#A.slice(1,3)*60+ +this.#A.slice(4,6);return I=this.#A[0]==="-"?I:-I,new Date(this.getTime()-I*60000).toISOString().slice(0,-1)+this.#A}static wrapAsOffsetDateTime(B,I="Z"){let C=new iC(B);return C.#A=I,C}static wrapAsLocalDateTime(B){let I=new iC(B);return I.#A=null,I}static wrapAsLocalDate(B){let I=new iC(B);return I.#Q=!1,I.#A=null,I}static wrapAsLocalTime(B){let I=new iC(B);return I.#B=!1,I.#A=null,I}}/*!
281
536
  * Copyright (c) Squirrel Chat et al., All rights reserved.
282
537
  * SPDX-License-Identifier: BSD-3-Clause
283
538
  *
@@ -303,11 +558,11 @@ Usage: tako models [list] [--refresh] [--json]
303
558
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
304
559
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
305
560
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
306
- */function jt(i,o){let n=i.slice(0,o).split(/\r\n|\n|\r/g);return[n.length,n.pop().length+1]}function ia(i,o,n){let e=i.split(/\r\n|\n|\r/g),d="",u=(Math.log10(o+1)|0)+1;for(let t=o-1;t<=o+1;t++){let a=e[t-1];if(!a)continue;if(d+=t.toString().padEnd(u," "),d+=": ",d+=a,d+=`
307
- `,t===o)d+=" ".repeat(u+n+2),d+=`^
308
- `}return d}class $ extends Error{line;column;codeblock;constructor(i,o){let[n,e]=jt(o.toml,o.ptr),d=ia(o.toml,n,e);super(`Invalid TOML document: ${i}
561
+ */function ek(B,I){let C=B.slice(0,I).split(/\r\n|\n|\r/g);return[C.length,C.pop().length+1]}function Az(B,I,C){let g=B.split(/\r\n|\n|\r/g),F="",N=(Math.log10(I+1)|0)+1;for(let H=I-1;H<=I+1;H++){let M=g[H-1];if(!M)continue;if(F+=H.toString().padEnd(N," "),F+=": ",F+=M,F+=`
562
+ `,H===I)F+=" ".repeat(N+C+2),F+=`^
563
+ `}return F}class JB extends Error{line;column;codeblock;constructor(B,I){let[C,g]=ek(I.toml,I.ptr),F=Az(I.toml,C,g);super(`Invalid TOML document: ${B}
309
564
 
310
- ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
565
+ ${F}`,I);this.line=C,this.column=g,this.codeblock=F}}/*!
311
566
  * Copyright (c) Squirrel Chat et al., All rights reserved.
312
567
  * SPDX-License-Identifier: BSD-3-Clause
313
568
  *
@@ -333,12 +588,12 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
333
588
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
334
589
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
335
590
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
336
- */var oa=/^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/,na=/^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/,ea=/^[+-]?0[0-9_]/;function rn(i,o){let n=i[o++],e=n,d=n==="'",u=n===i[o]&&n===i[o+1];if(u){if(i[o+=2]===`
337
- `)o++;else if(i[o]==="\r"&&i[o+1]===`
338
- `)o+=2}let t="",a=o,r=0;for(let p=o;p<i.length;p++)if(n=i[p],u&&(n===`
339
- `||n==="\r"&&i[p+1]===`
340
- `))r=r&&3;else if(n<" "&&n!=="\t"||n==="\x7F")throw new $("control characters are not allowed in strings",{toml:i,ptr:p});else if((!r||r===3)&&n===e&&(!u||i[p+1]===e&&i[p+2]===e)){if(u){if(i[p+3]===e)p++;if(i[p+3]===e)p++}return[r?t:t+i.slice(a,p),p+(u?3:1)]}else if(!r){if(!d&&n==="\\")t+=i.slice(a,a=p),r=1}else if(r===1)if(n==="x"||n==="u"||n==="U"){let c=0,l=n==="x"?2:n==="u"?4:8;for(let m=0;m<l;m++,p++){let w=i.charCodeAt(p+1),y=w>=48&&w<=57?w-48:w>=65&&w<=70?w-65+10:w>=97&&w<=102?w-97+10:-1;if(y<0)throw new $("invalid non-hex character in unicode escape",{toml:i,ptr:p+1});c=c<<4|y}if(c<0||c>1114111||c>=55296&&c<=57343)throw new $("invalid unicode escape",{toml:i,ptr:p});t+=String.fromCodePoint(c),a=p+1,r=0}else if(n===" "||n==="\t")r=2;else{if(n==="b")t+="\b";else if(n==="t")t+="\t";else if(n==="n")t+=`
341
- `;else if(n==="f")t+="\f";else if(n==="r")t+="\r";else if(n==="e")t+="\x1B";else if(n==='"')t+='"';else if(n==="\\")t+="\\";else throw new $("unrecognized escape sequence",{toml:i,ptr:p});a=p+1,r=0}else if(n!==" "&&n!=="\t"){if(r===2)throw new $("invalid escape: only line-ending whitespace may be escaped",{toml:i,ptr:a});r=!d&&n==="\\"?1:0,a=p}throw new $("unfinished string",{toml:i,ptr:o})}function Y0(i,o,n,e){if(i==="true")return!0;if(i==="false")return!1;if(i==="-inf")return-1/0;if(i==="inf"||i==="+inf")return 1/0;if(i==="nan"||i==="+nan"||i==="-nan")return NaN;if(i==="-0")return e?0n:0;let d=oa.test(i);if(d||na.test(i)){if(ea.test(i))throw new $("leading zeroes are not allowed",{toml:o,ptr:n});i=i.replace(/_/g,"");let t=+i;if(isNaN(t))throw new $("invalid number",{toml:o,ptr:n});if(d){if((d=!Number.isSafeInteger(t))&&!e)throw new $("integer value cannot be represented losslessly",{toml:o,ptr:n});if(d||e===!0)t=BigInt(i)}return t}let u=new Ji(i);if(!u.isValid())throw new $("invalid value",{toml:o,ptr:n});return u}/*!
591
+ */var Bz=/^((0x[0-9a-fA-F](_?[0-9a-fA-F])*)|(([+-]|0[ob])?\d(_?\d)*))$/,Qz=/^[+-]?\d(_?\d)*(\.\d(_?\d)*)?([eE][+-]?\d(_?\d)*)?$/,Iz=/^[+-]?0[0-9_]/;function $w(B,I){let C=B[I++],g=C,F=C==="'",N=C===B[I]&&C===B[I+1];if(N){if(B[I+=2]===`
592
+ `)I++;else if(B[I]==="\r"&&B[I+1]===`
593
+ `)I+=2}let H="",M=I,U=0;for(let u=I;u<B.length;u++)if(C=B[u],N&&(C===`
594
+ `||C==="\r"&&B[u+1]===`
595
+ `))U=U&&3;else if(C<" "&&C!=="\t"||C==="\x7F")throw new JB("control characters are not allowed in strings",{toml:B,ptr:u});else if((!U||U===3)&&C===g&&(!N||B[u+1]===g&&B[u+2]===g)){if(N){if(B[u+3]===g)u++;if(B[u+3]===g)u++}return[U?H:H+B.slice(M,u),u+(N?3:1)]}else if(!U){if(!F&&C==="\\")H+=B.slice(M,M=u),U=1}else if(U===1)if(C==="x"||C==="u"||C==="U"){let X=0,k=C==="x"?2:C==="u"?4:8;for(let W=0;W<k;W++,u++){let z=B.charCodeAt(u+1),$=z>=48&&z<=57?z-48:z>=65&&z<=70?z-65+10:z>=97&&z<=102?z-97+10:-1;if($<0)throw new JB("invalid non-hex character in unicode escape",{toml:B,ptr:u+1});X=X<<4|$}if(X<0||X>1114111||X>=55296&&X<=57343)throw new JB("invalid unicode escape",{toml:B,ptr:u});H+=String.fromCodePoint(X),M=u+1,U=0}else if(C===" "||C==="\t")U=2;else{if(C==="b")H+="\b";else if(C==="t")H+="\t";else if(C==="n")H+=`
596
+ `;else if(C==="f")H+="\f";else if(C==="r")H+="\r";else if(C==="e")H+="\x1B";else if(C==='"')H+='"';else if(C==="\\")H+="\\";else throw new JB("unrecognized escape sequence",{toml:B,ptr:u});M=u+1,U=0}else if(C!==" "&&C!=="\t"){if(U===2)throw new JB("invalid escape: only line-ending whitespace may be escaped",{toml:B,ptr:M});U=!F&&C==="\\"?1:0,M=u}throw new JB("unfinished string",{toml:B,ptr:I})}function CL(B,I,C,g){if(B==="true")return!0;if(B==="false")return!1;if(B==="-inf")return-1/0;if(B==="inf"||B==="+inf")return 1/0;if(B==="nan"||B==="+nan"||B==="-nan")return NaN;if(B==="-0")return g?0n:0;let F=Bz.test(B);if(F||Qz.test(B)){if(Iz.test(B))throw new JB("leading zeroes are not allowed",{toml:I,ptr:C});B=B.replace(/_/g,"");let H=+B;if(isNaN(H))throw new JB("invalid number",{toml:I,ptr:C});if(F){if((F=!Number.isSafeInteger(H))&&!g)throw new JB("integer value cannot be represented losslessly",{toml:I,ptr:C});if(F||g===!0)H=BigInt(B)}return H}let N=new iC(B);if(!N.isValid())throw new JB("invalid value",{toml:I,ptr:C});return N}/*!
342
597
  * Copyright (c) Squirrel Chat et al., All rights reserved.
343
598
  * SPDX-License-Identifier: BSD-3-Clause
344
599
  *
@@ -364,14 +619,14 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
364
619
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
365
620
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
366
621
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
367
- */function pn(i,o=0,n=i.length){let e=i.indexOf(`
368
- `,o);if(i[e-1]==="\r")e--;return e<=n?e:-1}function po(i,o){for(let n=o;n<i.length;n++){let e=i[n];if(e===`
369
- `)return n;if(e==="\r"&&i[n+1]===`
370
- `)return n+1;if(e<" "&&e!=="\t"||e==="\x7F")throw new $("control characters are not allowed in comments",{toml:i,ptr:o})}return i.length}function si(i,o,n,e){let d;while(!0){while((d=i[o])===" "||d==="\t"||!n&&(d===`
371
- `||d==="\r"&&i[o+1]===`
372
- `))o++;if(e||d!=="#")break;o=po(i,o)}return o}function Z0(i,o,n,e,d=!1){if(!e)return o=pn(i,o),o<0?i.length:o;for(let u=o;u<i.length;u++){let t=i[u];if(t==="#")u=pn(i,u);else if(t===n)return u+1;else if(t===e||d&&(t===`
373
- `||t==="\r"&&i[u+1]===`
374
- `))return u}throw new $("cannot find end of structure",{toml:i,ptr:o})}/*!
622
+ */function yw(B,I=0,C=B.length){let g=B.indexOf(`
623
+ `,I);if(B[g-1]==="\r")g--;return g<=C?g:-1}function C2(B,I){for(let C=I;C<B.length;C++){let g=B[C];if(g===`
624
+ `)return C;if(g==="\r"&&B[C+1]===`
625
+ `)return C+1;if(g<" "&&g!=="\t"||g==="\x7F")throw new JB("control characters are not allowed in comments",{toml:B,ptr:I})}return B.length}function NE(B,I,C,g){let F;while(!0){while((F=B[I])===" "||F==="\t"||!C&&(F===`
626
+ `||F==="\r"&&B[I+1]===`
627
+ `))I++;if(g||F!=="#")break;I=C2(B,I)}return I}function gL(B,I,C,g,F=!1){if(!g)return I=yw(B,I),I<0?B.length:I;for(let N=I;N<B.length;N++){let H=B[N];if(H==="#")N=yw(B,N);else if(H===C)return N+1;else if(H===g||F&&(H===`
628
+ `||H==="\r"&&B[N+1]===`
629
+ `))return N}throw new JB("cannot find end of structure",{toml:B,ptr:I})}/*!
375
630
  * Copyright (c) Squirrel Chat et al., All rights reserved.
376
631
  * SPDX-License-Identifier: BSD-3-Clause
377
632
  *
@@ -397,8 +652,8 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
397
652
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
398
653
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
399
654
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
400
- */function da(i,o,n){let e=i.slice(o,n),d=e.indexOf("#");if(d>-1)po(i,d),e=e.slice(0,d);return[e.trimEnd(),d]}function So(i,o,n,e,d){if(e===0)throw new $("document contains excessively nested structures. aborting.",{toml:i,ptr:o});let u=i[o];if(u==="["||u==="{"){let[r,p]=u==="["?I0(i,o,e,d):T0(i,o,e,d);if(n){if(p=si(i,p),i[p]===",")p++;else if(i[p]!==n)throw new $("expected comma or end of structure",{toml:i,ptr:p})}return[r,p]}if(u==='"'||u==="'"){let[r,p]=rn(i,o);if(n){if(p=si(i,p),i[p]&&i[p]!==","&&i[p]!==n&&i[p]!==`
401
- `&&i[p]!=="\r")throw new $("unexpected character encountered",{toml:i,ptr:p});if(i[p]===",")p++}return[r,p]}let t=Z0(i,o,",",n),a=da(i,o,t-(i[t-1]===","?1:0));if(!a[0])throw new $("incomplete key-value declaration: no value specified",{toml:i,ptr:o});if(n&&a[1]>-1){if(t=si(i,o+a[1]),i[t]===",")t++}return[Y0(a[0],i,o,d),t]}/*!
655
+ */function Ez(B,I,C){let g=B.slice(I,C),F=g.indexOf("#");if(F>-1)C2(B,F),g=g.slice(0,F);return[g.trimEnd(),F]}function xF(B,I,C,g,F){if(g===0)throw new JB("document contains excessively nested structures. aborting.",{toml:B,ptr:I});let N=B[I];if(N==="["||N==="{"){let[U,u]=N==="["?FL(B,I,g,F):DL(B,I,g,F);if(C){if(u=NE(B,u),B[u]===",")u++;else if(B[u]!==C)throw new JB("expected comma or end of structure",{toml:B,ptr:u})}return[U,u]}if(N==='"'||N==="'"){let[U,u]=$w(B,I);if(C){if(u=NE(B,u),B[u]&&B[u]!==","&&B[u]!==C&&B[u]!==`
656
+ `&&B[u]!=="\r")throw new JB("unexpected character encountered",{toml:B,ptr:u});if(B[u]===",")u++}return[U,u]}let H=gL(B,I,",",C),M=Ez(B,I,H-(B[H-1]===","?1:0));if(!M[0])throw new JB("incomplete key-value declaration: no value specified",{toml:B,ptr:I});if(C&&M[1]>-1){if(H=NE(B,I+M[1]),B[H]===",")H++}return[CL(M[0],B,I,F),H]}/*!
402
657
  * Copyright (c) Squirrel Chat et al., All rights reserved.
403
658
  * SPDX-License-Identifier: BSD-3-Clause
404
659
  *
@@ -424,9 +679,9 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
424
679
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
425
680
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
426
681
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
427
- */var ua=/^[a-zA-Z0-9-_]+[ \t]*$/;function cn(i,o,n="="){let e=o-1,d=[],u=i.indexOf(n,o);if(u<0)throw new $("incomplete key-value: cannot find end of key",{toml:i,ptr:o});do{let t=i[o=++e];if(t!==" "&&t!=="\t")if(t==='"'||t==="'"){if(t===i[o+1]&&t===i[o+2])throw new $("multiline strings are not allowed in keys",{toml:i,ptr:o});let[a,r]=rn(i,o);e=i.indexOf(".",r);let p=i.slice(r,e<0||e>u?u:e),c=pn(p);if(c>-1)throw new $("newlines are not allowed in keys",{toml:i,ptr:o+e+c});if(p.trimStart())throw new $("found extra tokens after the string part",{toml:i,ptr:r});if(u<r){if(u=i.indexOf(n,r),u<0)throw new $("incomplete key-value: cannot find end of key",{toml:i,ptr:o})}d.push(a)}else{e=i.indexOf(".",o);let a=i.slice(o,e<0||e>u?u:e);if(!ua.test(a))throw new $("only letter, numbers, dashes and underscores are allowed in keys",{toml:i,ptr:o});d.push(a.trimEnd())}}while(e+1&&e<u);return[d,si(i,u+1,!0,!0)]}function T0(i,o,n,e){let d={},u=new Set,t;o++;while((t=i[o++])!=="}"&&t)if(t===",")throw new $("expected value, found comma",{toml:i,ptr:o-1});else if(t==="#")o=po(i,o);else if(t!==" "&&t!=="\t"&&t!==`
428
- `&&t!=="\r"){let a,r=d,p=!1,[c,l]=cn(i,o-1);for(let y=0;y<c.length;y++){if(y)r=p?r[a]:r[a]={};if(a=c[y],(p=Object.hasOwn(r,a))&&(typeof r[a]!=="object"||u.has(r[a])))throw new $("trying to redefine an already defined value",{toml:i,ptr:o});if(!p&&a==="__proto__")Object.defineProperty(r,a,{enumerable:!0,configurable:!0,writable:!0})}if(p)throw new $("trying to redefine an already defined value",{toml:i,ptr:o});let[m,w]=So(i,l,"}",n-1,e);u.add(m),r[a]=m,o=w}if(!t)throw new $("unfinished table encountered",{toml:i,ptr:o});return[d,o]}function I0(i,o,n,e){let d=[],u;o++;while((u=i[o++])!=="]"&&u)if(u===",")throw new $("expected value, found comma",{toml:i,ptr:o-1});else if(u==="#")o=po(i,o);else if(u!==" "&&u!=="\t"&&u!==`
429
- `&&u!=="\r"){let t=So(i,o-1,"]",n-1,e);d.push(t[0]),o=t[1]}if(!u)throw new $("unfinished array encountered",{toml:i,ptr:o});return[d,o]}/*!
682
+ */var Cz=/^[a-zA-Z0-9-_]+[ \t]*$/;function Tw(B,I,C="="){let g=I-1,F=[],N=B.indexOf(C,I);if(N<0)throw new JB("incomplete key-value: cannot find end of key",{toml:B,ptr:I});do{let H=B[I=++g];if(H!==" "&&H!=="\t")if(H==='"'||H==="'"){if(H===B[I+1]&&H===B[I+2])throw new JB("multiline strings are not allowed in keys",{toml:B,ptr:I});let[M,U]=$w(B,I);g=B.indexOf(".",U);let u=B.slice(U,g<0||g>N?N:g),X=yw(u);if(X>-1)throw new JB("newlines are not allowed in keys",{toml:B,ptr:I+g+X});if(u.trimStart())throw new JB("found extra tokens after the string part",{toml:B,ptr:U});if(N<U){if(N=B.indexOf(C,U),N<0)throw new JB("incomplete key-value: cannot find end of key",{toml:B,ptr:I})}F.push(M)}else{g=B.indexOf(".",I);let M=B.slice(I,g<0||g>N?N:g);if(!Cz.test(M))throw new JB("only letter, numbers, dashes and underscores are allowed in keys",{toml:B,ptr:I});F.push(M.trimEnd())}}while(g+1&&g<N);return[F,NE(B,N+1,!0,!0)]}function DL(B,I,C,g){let F={},N=new Set,H;I++;while((H=B[I++])!=="}"&&H)if(H===",")throw new JB("expected value, found comma",{toml:B,ptr:I-1});else if(H==="#")I=C2(B,I);else if(H!==" "&&H!=="\t"&&H!==`
683
+ `&&H!=="\r"){let M,U=F,u=!1,[X,k]=Tw(B,I-1);for(let $=0;$<X.length;$++){if($)U=u?U[M]:U[M]={};if(M=X[$],(u=Object.hasOwn(U,M))&&(typeof U[M]!=="object"||N.has(U[M])))throw new JB("trying to redefine an already defined value",{toml:B,ptr:I});if(!u&&M==="__proto__")Object.defineProperty(U,M,{enumerable:!0,configurable:!0,writable:!0})}if(u)throw new JB("trying to redefine an already defined value",{toml:B,ptr:I});let[W,z]=xF(B,k,"}",C-1,g);N.add(W),U[M]=W,I=z}if(!H)throw new JB("unfinished table encountered",{toml:B,ptr:I});return[F,I]}function FL(B,I,C,g){let F=[],N;I++;while((N=B[I++])!=="]"&&N)if(N===",")throw new JB("expected value, found comma",{toml:B,ptr:I-1});else if(N==="#")I=C2(B,I);else if(N!==" "&&N!=="\t"&&N!==`
684
+ `&&N!=="\r"){let H=xF(B,I-1,"]",C-1,g);F.push(H[0]),I=H[1]}if(!N)throw new JB("unfinished array encountered",{toml:B,ptr:I});return[F,I]}/*!
430
685
  * Copyright (c) Squirrel Chat et al., All rights reserved.
431
686
  * SPDX-License-Identifier: BSD-3-Clause
432
687
  *
@@ -452,8 +707,8 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
452
707
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
453
708
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
454
709
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
455
- */function O0(i,o,n,e){let d=o,u=n,t,a=!1,r;for(let p=0;p<i.length;p++){if(p){if(d=a?d[t]:d[t]={},u=(r=u[t]).c,e===0&&(r.t===1||r.t===2))return null;if(r.t===2){let c=d.length-1;d=d[c],u=u[c].c}}if(t=i[p],(a=Object.hasOwn(d,t))&&u[t]?.t===0&&u[t]?.d)return null;if(!a){if(t==="__proto__")Object.defineProperty(d,t,{enumerable:!0,configurable:!0,writable:!0}),Object.defineProperty(u,t,{enumerable:!0,configurable:!0,writable:!0});u[t]={t:p<i.length-1&&e===2?3:e,d:!1,i:0,c:{}}}}if(r=u[t],r.t!==e&&!(e===1&&r.t===3))return null;if(e===2){if(!r.d)r.d=!0,d[t]=[];d[t].push(d={}),r.c[r.i++]=r={t:1,d:!1,i:0,c:{}}}if(r.d)return null;if(r.d=!0,e===1)d=a?d[t]:d[t]={};else if(e===0&&a)return null;return[t,d,r.c]}function ae(i,{maxDepth:o=1000,integersAsBigInt:n}={}){let e={},d={},u=e,t=d;for(let a=si(i,0);a<i.length;){if(i[a]==="["){let r=i[++a]==="[",p=cn(i,a+=+r,"]");if(r){if(i[p[1]-1]!=="]")throw new $("expected end of table declaration",{toml:i,ptr:p[1]-1});p[1]++}let c=O0(p[0],e,d,r?2:1);if(!c)throw new $("trying to redefine an already defined table or value",{toml:i,ptr:a});t=c[2],u=c[1],a=p[1]}else{let r=cn(i,a),p=O0(r[0],u,t,0);if(!p)throw new $("trying to redefine an already defined table or value",{toml:i,ptr:a});let c=So(i,r[1],void 0,o,n);p[1][p[0]]=c[0],a=c[1]}if(a=si(i,a,!0),i[a]&&i[a]!==`
456
- `&&i[a]!=="\r")throw new $("each key-value declaration must be followed by an end-of-line",{toml:i,ptr:a});a=si(i,a)}return e}/*!
710
+ */function wL(B,I,C,g){let F=I,N=C,H,M=!1,U;for(let u=0;u<B.length;u++){if(u){if(F=M?F[H]:F[H]={},N=(U=N[H]).c,g===0&&(U.t===1||U.t===2))return null;if(U.t===2){let X=F.length-1;F=F[X],N=N[X].c}}if(H=B[u],(M=Object.hasOwn(F,H))&&N[H]?.t===0&&N[H]?.d)return null;if(!M){if(H==="__proto__")Object.defineProperty(F,H,{enumerable:!0,configurable:!0,writable:!0}),Object.defineProperty(N,H,{enumerable:!0,configurable:!0,writable:!0});N[H]={t:u<B.length-1&&g===2?3:g,d:!1,i:0,c:{}}}}if(U=N[H],U.t!==g&&!(g===1&&U.t===3))return null;if(g===2){if(!U.d)U.d=!0,F[H]=[];F[H].push(F={}),U.c[U.i++]=U={t:1,d:!1,i:0,c:{}}}if(U.d)return null;if(U.d=!0,g===1)F=M?F[H]:F[H]={};else if(g===0&&M)return null;return[H,F,U.c]}function GN(B,{maxDepth:I=1000,integersAsBigInt:C}={}){let g={},F={},N=g,H=F;for(let M=NE(B,0);M<B.length;){if(B[M]==="["){let U=B[++M]==="[",u=Tw(B,M+=+U,"]");if(U){if(B[u[1]-1]!=="]")throw new JB("expected end of table declaration",{toml:B,ptr:u[1]-1});u[1]++}let X=wL(u[0],g,F,U?2:1);if(!X)throw new JB("trying to redefine an already defined table or value",{toml:B,ptr:M});H=X[2],N=X[1],M=u[1]}else{let U=Tw(B,M),u=wL(U[0],N,H,0);if(!u)throw new JB("trying to redefine an already defined table or value",{toml:B,ptr:M});let X=xF(B,U[1],void 0,I,C);u[1][u[0]]=X[0],M=X[1]}if(M=NE(B,M,!0),B[M]&&B[M]!==`
711
+ `&&B[M]!=="\r")throw new JB("each key-value declaration must be followed by an end-of-line",{toml:B,ptr:M});M=NE(B,M)}return g}/*!
457
712
  * Copyright (c) Squirrel Chat et al., All rights reserved.
458
713
  * SPDX-License-Identifier: BSD-3-Clause
459
714
  *
@@ -479,16 +734,16 @@ ${d}`,o);this.line=n,this.column=e,this.codeblock=d}}/*!
479
734
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
480
735
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
481
736
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
482
- */var X0=/^[a-z0-9-_]+$/i;function qo(i){let o=typeof i;if(o==="object"){if(Array.isArray(i))return"array";if(i instanceof Date)return"date"}return o}function ta(i){for(let o=0;o<i.length;o++)if(qo(i[o])!=="object")return!1;return i.length!=0}function re(i){return JSON.stringify(i).replace(/\x7f/g,"\\u007f")}function pe(i,o,n,e){if(n===0)throw Error("Could not stringify the object: maximum object depth exceeded");if(o==="number"){if(isNaN(i))return"nan";if(i===1/0)return"inf";if(i===-1/0)return"-inf";if(Number.isInteger(i)&&(e||!Number.isSafeInteger(i)))return i.toFixed(1);return i.toString()}if(o==="bigint"||o==="boolean")return i.toString();if(o==="string")return re(i);if(o==="date"){if(isNaN(i.getTime()))throw TypeError("cannot serialize invalid date");return i.toISOString()}if(o==="object")return aa(i,n,e);if(o==="array")return ra(i,n,e)}function aa(i,o,n){let e=Object.keys(i);if(e.length===0)return"{}";let d="{ ";for(let u=0;u<e.length;u++){let t=e[u];if(u)d+=", ";d+=X0.test(t)?t:re(t),d+=" = ",d+=pe(i[t],qo(i[t]),o-1,n)}return d+" }"}function ra(i,o,n){if(i.length===0)return"[]";let e="[ ";for(let d=0;d<i.length;d++){if(d)e+=", ";if(i[d]===null||i[d]===void 0)throw TypeError("arrays cannot contain null or undefined values");e+=pe(i[d],qo(i[d]),o-1,n)}return e+" ]"}function pa(i,o,n,e){if(n===0)throw Error("Could not stringify the object: maximum object depth exceeded");let d="";for(let u=0;u<i.length;u++)d+=`${d&&`
483
- `}[[${o}]]
484
- `,d+=ce(0,i[u],o,n,e);return d}function ce(i,o,n,e,d){if(e===0)throw Error("Could not stringify the object: maximum object depth exceeded");let u="",t="",a=Object.keys(o);for(let r=0;r<a.length;r++){let p=a[r];if(o[p]!==null&&o[p]!==void 0){let c=qo(o[p]);if(c==="symbol"||c==="function")throw TypeError(`cannot serialize values of type '${c}'`);let l=X0.test(p)?p:re(p);if(c==="array"&&ta(o[p]))t+=(t&&`
485
- `)+pa(o[p],n?`${n}.${l}`:l,e-1,d);else if(c==="object"){let m=n?`${n}.${l}`:l;t+=(t&&`
486
- `)+ce(m,o[p],m,e-1,d)}else u+=l,u+=" = ",u+=pe(o[p],c,e,d),u+=`
487
- `}}if(i&&(u||!t))u=u?`[${i}]
488
- ${u}`:`[${i}]`;return u&&t?`${u}
489
- ${t}`:u||t}function le(i,{maxDepth:o=1000,numbersAsFloat:n=!1}={}){if(qo(i)!=="object")throw TypeError("stringify can only be called with an object");let e=ce(0,i,"",o,n);if(e[e.length-1]!==`
490
- `)return e+`
491
- `;return e}/*!
737
+ */var GL=/^[a-z0-9-_]+$/i;function pF(B){let I=typeof B;if(I==="object"){if(Array.isArray(B))return"array";if(B instanceof Date)return"date"}return I}function gz(B){for(let I=0;I<B.length;I++)if(pF(B[I])!=="object")return!1;return B.length!=0}function NN(B){return JSON.stringify(B).replace(/\x7f/g,"\\u007f")}function HN(B,I,C,g){if(C===0)throw Error("Could not stringify the object: maximum object depth exceeded");if(I==="number"){if(isNaN(B))return"nan";if(B===1/0)return"inf";if(B===-1/0)return"-inf";if(Number.isInteger(B)&&(g||!Number.isSafeInteger(B)))return B.toFixed(1);return B.toString()}if(I==="bigint"||I==="boolean")return B.toString();if(I==="string")return NN(B);if(I==="date"){if(isNaN(B.getTime()))throw TypeError("cannot serialize invalid date");return B.toISOString()}if(I==="object")return Dz(B,C,g);if(I==="array")return Fz(B,C,g)}function Dz(B,I,C){let g=Object.keys(B);if(g.length===0)return"{}";let F="{ ";for(let N=0;N<g.length;N++){let H=g[N];if(N)F+=", ";F+=GL.test(H)?H:NN(H),F+=" = ",F+=HN(B[H],pF(B[H]),I-1,C)}return F+" }"}function Fz(B,I,C){if(B.length===0)return"[]";let g="[ ";for(let F=0;F<B.length;F++){if(F)g+=", ";if(B[F]===null||B[F]===void 0)throw TypeError("arrays cannot contain null or undefined values");g+=HN(B[F],pF(B[F]),I-1,C)}return g+" ]"}function wz(B,I,C,g){if(C===0)throw Error("Could not stringify the object: maximum object depth exceeded");let F="";for(let N=0;N<B.length;N++)F+=`${F&&`
738
+ `}[[${I}]]
739
+ `,F+=JN(0,B[N],I,C,g);return F}function JN(B,I,C,g,F){if(g===0)throw Error("Could not stringify the object: maximum object depth exceeded");let N="",H="",M=Object.keys(I);for(let U=0;U<M.length;U++){let u=M[U];if(I[u]!==null&&I[u]!==void 0){let X=pF(I[u]);if(X==="symbol"||X==="function")throw TypeError(`cannot serialize values of type '${X}'`);let k=GL.test(u)?u:NN(u);if(X==="array"&&gz(I[u]))H+=(H&&`
740
+ `)+wz(I[u],C?`${C}.${k}`:k,g-1,F);else if(X==="object"){let W=C?`${C}.${k}`:k;H+=(H&&`
741
+ `)+JN(W,I[u],W,g-1,F)}else N+=k,N+=" = ",N+=HN(I[u],X,g,F),N+=`
742
+ `}}if(B&&(N||!H))N=N?`[${B}]
743
+ ${N}`:`[${B}]`;return N&&H?`${N}
744
+ ${H}`:N||H}function MN(B,{maxDepth:I=1000,numbersAsFloat:C=!1}={}){if(pF(B)!=="object")throw TypeError("stringify can only be called with an object");let g=JN(0,B,"",I,C);if(g[g.length-1]!==`
745
+ `)return g+`
746
+ `;return g}/*!
492
747
  * Copyright (c) Squirrel Chat et al., All rights reserved.
493
748
  * SPDX-License-Identifier: BSD-3-Clause
494
749
  *
@@ -514,33 +769,32 @@ ${t}`:u||t}function le(i,{maxDepth:o=1000,numbersAsFloat:n=!1}={}){if(qo(i)!=="o
514
769
  * CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
515
770
  * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
516
771
  * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
517
- */import{join as ma}from"path";import{homedir as wa}from"os";function ca(i){let o=[];for(let[n,e]of Object.entries(i)){if(!e?.models)continue;for(let[d,u]of Object.entries(e.models)){let t=u?.limit?.context;if(typeof t!=="number"||t<=0)continue;o.push({id:d,displayName:u.name||d,provider:n,contextWindow:t,outputLimit:typeof u.limit?.output==="number"?u.limit.output:void 0})}}return o}async function F0(){let i=await fetch("https://models.dev/api.json",{signal:AbortSignal.timeout(1e4)});if(!i.ok)throw Error(`models.dev http ${i.status}`);let o=await i.json();return ca(o)}var di=[{id:"claude-3-sonnet-20240229",displayName:"Claude Sonnet 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-haiku-4-5",displayName:"Claude Haiku 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-5-20251101",displayName:"Claude Opus 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-opus-20240229",displayName:"Claude Opus 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-3-5-haiku-20241022",displayName:"Claude Haiku 3.5",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-3-5-sonnet-20241022",displayName:"Claude Sonnet 3.5 v2",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-sonnet-4-6",displayName:"Claude Sonnet 4.6",provider:"anthropic",contextWindow:1e6,outputLimit:64000},{id:"claude-opus-4-0",displayName:"Claude Opus 4 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-opus-4-7",displayName:"Claude Opus 4.7",provider:"anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-3-haiku-20240307",displayName:"Claude Haiku 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-sonnet-4-5-20250929",displayName:"Claude Sonnet 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-haiku-latest",displayName:"Claude Haiku 3.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-1",displayName:"Claude Opus 4.1 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-sonnet-4-0",displayName:"Claude Sonnet 4 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-sonnet-20240620",displayName:"Claude Sonnet 3.5",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-5",displayName:"Claude Opus 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-1-20250805",displayName:"Claude Opus 4.1",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-haiku-4-5-20251001",displayName:"Claude Haiku 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-20250514",displayName:"Claude Sonnet 4",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-6",displayName:"Claude Opus 4.6",provider:"anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-3-7-sonnet-20250219",displayName:"Claude Sonnet 3.7",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-5",displayName:"Claude Sonnet 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-20250514",displayName:"Claude Opus 4",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"gpt-5.1-codex-max",displayName:"GPT-5.1 Codex Max",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4o-2024-05-13",displayName:"GPT-4o (2024-05-13)",provider:"openai",contextWindow:128000,outputLimit:4096},{id:"o1-mini",displayName:"o1-mini",provider:"openai",contextWindow:128000,outputLimit:65536},{id:"gpt-5.2-pro",displayName:"GPT-5.2 Pro",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"text-embedding-3-large",displayName:"text-embedding-3-large",provider:"openai",contextWindow:8191,outputLimit:3072},{id:"gpt-5.3-chat-latest",displayName:"GPT-5.3 Chat (latest)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.5",displayName:"GPT-5.5",provider:"openai",contextWindow:1050000,outputLimit:130000},{id:"gpt-5-mini",displayName:"GPT-5 Mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5-nano",displayName:"GPT-5 Nano",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.3-codex",displayName:"GPT-5.3 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4-turbo",displayName:"GPT-4 Turbo",provider:"openai",contextWindow:128000,outputLimit:4096},{id:"text-embedding-ada-002",displayName:"text-embedding-ada-002",provider:"openai",contextWindow:8192,outputLimit:1536},{id:"gpt-5.2",displayName:"GPT-5.2",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o3-pro",displayName:"o3-pro",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-4o-mini",displayName:"GPT-4o mini",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"o4-mini-deep-research",displayName:"o4-mini-deep-research",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-mini",displayName:"GPT-5.4 mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o4-mini",displayName:"o4-mini",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-nano",displayName:"GPT-5.4 nano",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.2-codex",displayName:"GPT-5.2 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.2-chat-latest",displayName:"GPT-5.2 Chat",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.1-codex-mini",displayName:"GPT-5.1 Codex mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o1-preview",displayName:"o1-preview",provider:"openai",contextWindow:128000,outputLimit:32768},{id:"gpt-4o-2024-08-06",displayName:"GPT-4o (2024-08-06)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.1",displayName:"GPT-5.1",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o1",displayName:"o1",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-pro",displayName:"GPT-5.4 Pro",provider:"openai",contextWindow:1050000,outputLimit:128000},{id:"gpt-3.5-turbo",displayName:"GPT-3.5-turbo",provider:"openai",contextWindow:16385,outputLimit:4096},{id:"o3-deep-research",displayName:"o3-deep-research",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"o3-mini",displayName:"o3-mini",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"text-embedding-3-small",displayName:"text-embedding-3-small",provider:"openai",contextWindow:8191,outputLimit:1536},{id:"o1-pro",displayName:"o1-pro",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-4",displayName:"GPT-4",provider:"openai",contextWindow:8192,outputLimit:8192},{id:"gpt-5-codex",displayName:"GPT-5-Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.4",displayName:"GPT-5.4",provider:"openai",contextWindow:1050000,outputLimit:128000},{id:"gpt-5.1-chat-latest",displayName:"GPT-5.1 Chat",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.3-codex-spark",displayName:"GPT-5.3 Codex Spark",provider:"openai",contextWindow:128000,outputLimit:32000},{id:"gpt-4.1-nano",displayName:"GPT-4.1 nano",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"o3",displayName:"o3",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5-pro",displayName:"GPT-5 Pro",provider:"openai",contextWindow:400000,outputLimit:272000},{id:"gpt-4o",displayName:"GPT-4o",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5",displayName:"GPT-5",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5-chat-latest",displayName:"GPT-5 Chat (latest)",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4.1",displayName:"GPT-4.1",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"gpt-4.1-mini",displayName:"GPT-4.1 mini",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"gpt-5.1-codex",displayName:"GPT-5.1 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4o-2024-11-20",displayName:"GPT-4o (2024-11-20)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gemini-flash-lite-latest",displayName:"Gemini Flash-Lite Latest",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-pro-preview-05-06",displayName:"Gemini 2.5 Pro Preview 05-06",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-live-2.5-flash-preview-native-audio",displayName:"Gemini Live 2.5 Flash Preview Native Audio",provider:"google",contextWindow:131072,outputLimit:65536},{id:"gemini-3.1-pro-preview-customtools",displayName:"Gemini 3.1 Pro Preview Custom Tools",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-lite-preview-09-2025",displayName:"Gemini 2.5 Flash Lite Preview 09-25",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-1.5-flash",displayName:"Gemini 1.5 Flash",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemini-1.5-pro",displayName:"Gemini 1.5 Pro",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemma-3n-e4b-it",displayName:"Gemma 3n 4B",provider:"google",contextWindow:8192,outputLimit:2000},{id:"gemini-3.1-flash-lite-preview",displayName:"Gemini 3.1 Flash Lite Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-3.1-pro-preview",displayName:"Gemini 3.1 Pro Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.0-flash",displayName:"Gemini 2.0 Flash",provider:"google",contextWindow:1048576,outputLimit:8192},{id:"gemini-3-flash-preview",displayName:"Gemini 3 Flash Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-preview-tts",displayName:"Gemini 2.5 Flash Preview TTS",provider:"google",contextWindow:8000,outputLimit:16000},{id:"gemini-3-pro-preview",displayName:"Gemini 3 Pro Preview",provider:"google",contextWindow:1e6,outputLimit:64000},{id:"gemini-2.5-flash-preview-05-20",displayName:"Gemini 2.5 Flash Preview 05-20",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-embedding-001",displayName:"Gemini Embedding 001",provider:"google",contextWindow:2048,outputLimit:3072},{id:"gemini-2.5-pro",displayName:"Gemini 2.5 Pro",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-flash-latest",displayName:"Gemini Flash Latest",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-4-31b-it",displayName:"Gemma 4 31B",provider:"google",contextWindow:256000,outputLimit:8192},{id:"gemini-2.5-pro-preview-06-05",displayName:"Gemini 2.5 Pro Preview 06-05",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-image",displayName:"Gemini 2.5 Flash Image",provider:"google",contextWindow:32768,outputLimit:32768},{id:"gemini-2.5-flash-lite-preview-06-17",displayName:"Gemini 2.5 Flash Lite Preview 06-17",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3-12b-it",displayName:"Gemma 3 12B",provider:"google",contextWindow:32768,outputLimit:8192},{id:"gemini-2.5-flash",displayName:"Gemini 2.5 Flash",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3n-e2b-it",displayName:"Gemma 3n 2B",provider:"google",contextWindow:8192,outputLimit:2000},{id:"gemini-3.1-flash-image-preview",displayName:"Gemini 3.1 Flash Image (Preview)",provider:"google",contextWindow:131072,outputLimit:32768},{id:"gemma-3-4b-it",displayName:"Gemma 3 4B",provider:"google",contextWindow:32768,outputLimit:8192},{id:"gemini-2.5-flash-preview-04-17",displayName:"Gemini 2.5 Flash Preview 04-17",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-pro-preview-tts",displayName:"Gemini 2.5 Pro Preview TTS",provider:"google",contextWindow:8000,outputLimit:16000},{id:"gemini-2.5-flash-preview-09-2025",displayName:"Gemini 2.5 Flash Preview 09-25",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3-27b-it",displayName:"Gemma 3 27B",provider:"google",contextWindow:131072,outputLimit:8192},{id:"gemma-4-26b-a4b-it",displayName:"Gemma 4 26B",provider:"google",contextWindow:256000,outputLimit:8192},{id:"gemini-2.5-flash-lite",displayName:"Gemini 2.5 Flash Lite",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-image-preview",displayName:"Gemini 2.5 Flash Image (Preview)",provider:"google",contextWindow:32768,outputLimit:32768},{id:"gemini-1.5-flash-8b",displayName:"Gemini 1.5 Flash-8B",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemini-live-2.5-flash",displayName:"Gemini Live 2.5 Flash",provider:"google",contextWindow:128000,outputLimit:8000},{id:"gemini-2.0-flash-lite",displayName:"Gemini 2.0 Flash Lite",provider:"google",contextWindow:1048576,outputLimit:8192},{id:"claude-sonnet-4-6@default",displayName:"Claude Sonnet 4.6",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-haiku-4-5@20251001",displayName:"Claude Haiku 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-haiku@20241022",displayName:"Claude Haiku 3.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-3-5-sonnet@20241022",displayName:"Claude Sonnet 3.5 v2",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-1@20250805",displayName:"Claude Opus 4.1",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-sonnet-4@20250514",displayName:"Claude Sonnet 4",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-7-sonnet@20250219",displayName:"Claude Sonnet 3.7",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4@20250514",displayName:"Claude Opus 4",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-opus-4-5@20251101",displayName:"Claude Opus 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-5@20250929",displayName:"Claude Sonnet 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-6@default",displayName:"Claude Opus 4.6",provider:"google-vertex-anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-opus-4-7@default",displayName:"Claude Opus 4.7",provider:"google-vertex-anthropic",contextWindow:1e6,outputLimit:128000},{id:"grok-2-1212",displayName:"Grok 2 (1212)",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-vision-beta",displayName:"Grok Vision Beta",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-3-mini-fast",displayName:"Grok 3 Mini Fast",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-3-mini-latest",displayName:"Grok 3 Mini Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-3-fast",displayName:"Grok 3 Fast",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2-vision-latest",displayName:"Grok 2 Vision Latest",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-4.20-0309-reasoning",displayName:"Grok 4.20 (Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-4-1-fast-non-reasoning",displayName:"Grok 4.1 Fast (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-mini-fast-latest",displayName:"Grok 3 Mini Fast Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4-fast",displayName:"Grok 4 Fast",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-latest",displayName:"Grok 3 Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2",displayName:"Grok 2",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-code-fast-1",displayName:"Grok Code Fast 1",provider:"xai",contextWindow:256000,outputLimit:1e4},{id:"grok-4.20-0309-non-reasoning",displayName:"Grok 4.20 (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-fast-latest",displayName:"Grok 3 Fast Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4.20-multi-agent-0309",displayName:"Grok 4.20 Multi-Agent",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-4",displayName:"Grok 4",provider:"xai",contextWindow:256000,outputLimit:64000},{id:"grok-2-latest",displayName:"Grok 2 Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-beta",displayName:"Grok Beta",provider:"xai",contextWindow:131072,outputLimit:4096},{id:"grok-2-vision",displayName:"Grok 2 Vision",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-4-1-fast",displayName:"Grok 4.1 Fast",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-mini",displayName:"Grok 3 Mini",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2-vision-1212",displayName:"Grok 2 Vision (1212)",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-3",displayName:"Grok 3",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4-fast-non-reasoning",displayName:"Grok 4 Fast (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"deepseek-chat",displayName:"DeepSeek Chat",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-reasoner",displayName:"DeepSeek Reasoner",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-v4-flash",displayName:"DeepSeek V4 Flash",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-v4-pro",displayName:"DeepSeek V4 Pro",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"mimo-v2.5-pro",displayName:"MiMo v2.5 Pro",provider:"xiaomi",contextWindow:1e6,outputLimit:64000},{id:"kimi-k2-0905-preview",displayName:"Kimi K2 0905",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2.5",displayName:"Kimi K2.5",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-thinking-turbo",displayName:"Kimi K2 Thinking Turbo",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2.6",displayName:"Kimi K2.6",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-turbo-preview",displayName:"Kimi K2 Turbo",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-0711-preview",displayName:"Kimi K2 0711",provider:"moonshotai",contextWindow:131072,outputLimit:16384},{id:"kimi-k2-thinking",displayName:"Kimi K2 Thinking",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"mistral-small-latest",displayName:"Mistral Small (latest)",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"mistral-nemo",displayName:"Mistral Nemo",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-large-2512",displayName:"Mistral Large 3",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"labs-devstral-small-2512",displayName:"Devstral Small 2",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"devstral-2512",displayName:"Devstral 2",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"magistral-medium-latest",displayName:"Magistral Medium (latest)",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"open-mixtral-8x7b",displayName:"Mixtral 8x7B",provider:"mistral",contextWindow:32000,outputLimit:32000},{id:"pixtral-large-latest",displayName:"Pixtral Large (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-large-2411",displayName:"Mistral Large 2.1",provider:"mistral",contextWindow:131072,outputLimit:16384},{id:"codestral-latest",displayName:"Codestral (latest)",provider:"mistral",contextWindow:256000,outputLimit:4096},{id:"mistral-large-latest",displayName:"Mistral Large (latest)",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"mistral-small-2506",displayName:"Mistral Small 3.2",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"pixtral-12b",displayName:"Pixtral 12B",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"ministral-8b-latest",displayName:"Ministral 8B (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-embed",displayName:"Mistral Embed",provider:"mistral",contextWindow:8000,outputLimit:3072},{id:"magistral-small",displayName:"Magistral Small",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-small-2603",displayName:"Mistral Small 4",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"ministral-3b-latest",displayName:"Ministral 3B (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"open-mixtral-8x22b",displayName:"Mixtral 8x22B",provider:"mistral",contextWindow:64000,outputLimit:64000},{id:"devstral-small-2505",displayName:"Devstral Small 2505",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"devstral-medium-2507",displayName:"Devstral Medium",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-medium-latest",displayName:"Mistral Medium (latest)",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"open-mistral-7b",displayName:"Mistral 7B",provider:"mistral",contextWindow:8000,outputLimit:8000},{id:"devstral-medium-latest",displayName:"Devstral 2 (latest)",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"mistral-medium-2505",displayName:"Mistral Medium 3",provider:"mistral",contextWindow:131072,outputLimit:131072},{id:"devstral-small-2507",displayName:"Devstral Small",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-medium-2508",displayName:"Mistral Medium 3.1",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"qwen3-235b-a22b",displayName:"Qwen3 235B-A22B",provider:"alibaba",contextWindow:131072,outputLimit:16384},{id:"qwen3-coder-plus",displayName:"Qwen3 Coder Plus",provider:"alibaba",contextWindow:1048576,outputLimit:65536},{id:"qwen-vl-ocr",displayName:"Qwen-VL OCR",provider:"alibaba",contextWindow:34096,outputLimit:4096},{id:"qwen-omni-turbo-realtime",displayName:"Qwen-Omni Turbo Realtime",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen3-8b",displayName:"Qwen3 8B",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3.5-397b-a17b",displayName:"Qwen3.5 397B-A17B",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwq-plus",displayName:"QwQ Plus",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen-vl-plus",displayName:"Qwen-VL Plus",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-livetranslate-flash-realtime",displayName:"Qwen3-LiveTranslate Flash Realtime",provider:"alibaba",contextWindow:53248,outputLimit:4096},{id:"qwen3-32b",displayName:"Qwen3 32B",provider:"alibaba",contextWindow:131072,outputLimit:16384},{id:"qwen-max",displayName:"Qwen Max",provider:"alibaba",contextWindow:32768,outputLimit:8192},{id:"qwen-plus",displayName:"Qwen Plus",provider:"alibaba",contextWindow:1e6,outputLimit:32768},{id:"qwen-omni-turbo",displayName:"Qwen-Omni Turbo",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen-flash",displayName:"Qwen Flash",provider:"alibaba",contextWindow:1e6,outputLimit:32768},{id:"qwen2-5-vl-7b-instruct",displayName:"Qwen2.5-VL 7B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3.6-plus",displayName:"Qwen3.6 Plus",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen3-max",displayName:"Qwen3 Max",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen3-omni-flash",displayName:"Qwen3-Omni Flash",provider:"alibaba",contextWindow:65536,outputLimit:16384},{id:"qwen2-5-72b-instruct",displayName:"Qwen2.5 72B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-vl-235b-a22b",displayName:"Qwen3-VL 235B-A22B",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen3-asr-flash",displayName:"Qwen3-ASR Flash",provider:"alibaba",contextWindow:53248,outputLimit:4096},{id:"qwen3-next-80b-a3b-thinking",displayName:"Qwen3-Next 80B-A3B (Thinking)",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen-mt-plus",displayName:"Qwen-MT Plus",provider:"alibaba",contextWindow:16384,outputLimit:8192},{id:"qwen-vl-max",displayName:"Qwen-VL Max",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-coder-flash",displayName:"Qwen3 Coder Flash",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen2-5-7b-instruct",displayName:"Qwen2.5 7B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen2-5-14b-instruct",displayName:"Qwen2.5 14B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen2-5-32b-instruct",displayName:"Qwen2.5 32B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-next-80b-a3b-instruct",displayName:"Qwen3-Next 80B-A3B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen-plus-character-ja",displayName:"Qwen Plus Character (Japanese)",provider:"alibaba",contextWindow:8192,outputLimit:512},{id:"qwen3-omni-flash-realtime",displayName:"Qwen3-Omni Flash Realtime",provider:"alibaba",contextWindow:65536,outputLimit:16384},{id:"qwen3-vl-30b-a3b",displayName:"Qwen3-VL 30B-A3B",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen3-vl-plus",displayName:"Qwen3-VL Plus",provider:"alibaba",contextWindow:262144,outputLimit:32768},{id:"qwen3-coder-480b-a35b-instruct",displayName:"Qwen3-Coder 480B-A35B Instruct",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen3-coder-30b-a3b-instruct",displayName:"Qwen3-Coder 30B-A3B Instruct",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen-turbo",displayName:"Qwen Turbo",provider:"alibaba",contextWindow:1e6,outputLimit:16384},{id:"qwen-mt-turbo",displayName:"Qwen-MT Turbo",provider:"alibaba",contextWindow:16384,outputLimit:8192},{id:"qwen2-5-omni-7b",displayName:"Qwen2.5-Omni 7B",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen3.5-plus",displayName:"Qwen3.5 Plus",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen2-5-vl-72b-instruct",displayName:"Qwen2.5-VL 72B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qvq-max",displayName:"QVQ Max",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-14b",displayName:"Qwen3 14B",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"command-a-reasoning-08-2025",displayName:"Command A Reasoning",provider:"cohere",contextWindow:256000,outputLimit:32000},{id:"command-r7b-12-2024",displayName:"Command R7B",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-vision-8b",displayName:"Aya Vision 8B",provider:"cohere",contextWindow:16000,outputLimit:4000},{id:"command-r-plus-08-2024",displayName:"Command R+",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-expanse-8b",displayName:"Aya Expanse 8B",provider:"cohere",contextWindow:8000,outputLimit:4000},{id:"command-r7b-arabic-02-2025",displayName:"Command R7B Arabic",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"command-a-vision-07-2025",displayName:"Command A Vision",provider:"cohere",contextWindow:128000,outputLimit:8000},{id:"c4ai-aya-vision-32b",displayName:"Aya Vision 32B",provider:"cohere",contextWindow:16000,outputLimit:4000},{id:"command-a-translate-08-2025",displayName:"Command A Translate",provider:"cohere",contextWindow:8000,outputLimit:8000},{id:"command-r-08-2024",displayName:"Command R",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-expanse-32b",displayName:"Aya Expanse 32B",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"command-a-03-2025",displayName:"Command A",provider:"cohere",contextWindow:256000,outputLimit:8000},{id:"anthropic.claude-3-5-sonnet-20241022-v2:0",displayName:"Claude Sonnet 3.5 v2",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"openai.gpt-oss-safeguard-120b",displayName:"GPT OSS Safeguard 120B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-nano-3-30b",displayName:"NVIDIA Nemotron Nano 3 30B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-2-90b-instruct-v1:0",displayName:"Llama 3.2 90B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-super-3-120b",displayName:"NVIDIA Nemotron 3 Super 120B A12B",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"writer.palmyra-x5-v1:0",displayName:"Palmyra X5",provider:"amazon-bedrock",contextWindow:1040000,outputLimit:8192},{id:"mistral.ministral-3-8b-instruct",displayName:"Ministral 3 8B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"au.anthropic.claude-opus-4-6-v1",displayName:"AU Anthropic Claude Opus 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"mistral.ministral-3-3b-instruct",displayName:"Ministral 3 3B",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"amazon.nova-premier-v1:0",displayName:"Nova Premier",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:16384},{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.devstral-2-123b",displayName:"Devstral 2 123B",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.voxtral-small-24b-2507",displayName:"Voxtral Small 24B 2507",provider:"amazon-bedrock",contextWindow:32000,outputLimit:8192},{id:"google.gemma-3-12b-it",displayName:"Google Gemma 3 12B",provider:"amazon-bedrock",contextWindow:131072,outputLimit:8192},{id:"amazon.nova-pro-v1:0",displayName:"Nova Pro",provider:"amazon-bedrock",contextWindow:300000,outputLimit:8192},{id:"anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"minimax.minimax-m2",displayName:"MiniMax M2",provider:"amazon-bedrock",contextWindow:204608,outputLimit:128000},{id:"global.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"mistral.pixtral-large-2502-v1:0",displayName:"Pixtral Large (25.02)",provider:"amazon-bedrock",contextWindow:128000,outputLimit:8192},{id:"meta.llama4-maverick-17b-instruct-v1:0",displayName:"Llama 4 Maverick 17B Instruct",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:16384},{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"amazon.nova-micro-v1:0",displayName:"Nova Micro",provider:"amazon-bedrock",contextWindow:128000,outputLimit:8192},{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"openai.gpt-oss-20b-1:0",displayName:"gpt-oss-20b",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"zai.glm-5",displayName:"GLM-5",provider:"amazon-bedrock",contextWindow:202752,outputLimit:101376},{id:"qwen.qwen3-32b-v1:0",displayName:"Qwen3 32B (dense)",provider:"amazon-bedrock",contextWindow:16384,outputLimit:16384},{id:"deepseek.v3.2",displayName:"DeepSeek-V3.2",provider:"amazon-bedrock",contextWindow:163840,outputLimit:81920},{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"zai.glm-4.7-flash",displayName:"GLM-4.7-Flash",provider:"amazon-bedrock",contextWindow:200000,outputLimit:131072},{id:"us.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"amazon.nova-2-lite-v1:0",displayName:"Nova 2 Lite",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"qwen.qwen3-coder-480b-a35b-v1:0",displayName:"Qwen3 Coder 480B A35B Instruct",provider:"amazon-bedrock",contextWindow:131072,outputLimit:65536},{id:"meta.llama3-2-1b-instruct-v1:0",displayName:"Llama 3.2 1B Instruct",provider:"amazon-bedrock",contextWindow:131000,outputLimit:4096},{id:"amazon.nova-lite-v1:0",displayName:"Nova Lite",provider:"amazon-bedrock",contextWindow:300000,outputLimit:8192},{id:"meta.llama3-1-8b-instruct-v1:0",displayName:"Llama 3.1 8B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"google.gemma-3-27b-it",displayName:"Google Gemma 3 27B Instruct",provider:"amazon-bedrock",contextWindow:202752,outputLimit:8192},{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"google.gemma-3-4b-it",displayName:"Gemma 3 4B IT",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama4-scout-17b-instruct-v1:0",displayName:"Llama 4 Scout 17B Instruct",provider:"amazon-bedrock",contextWindow:3500000,outputLimit:16384},{id:"deepseek.v3-v1:0",displayName:"DeepSeek-V3.1",provider:"amazon-bedrock",contextWindow:163840,outputLimit:81920},{id:"mistral.magistral-small-2509",displayName:"Magistral Small 1.2",provider:"amazon-bedrock",contextWindow:128000,outputLimit:40000},{id:"qwen.qwen3-next-80b-a3b",displayName:"Qwen/Qwen3-Next-80B-A3B-Instruct",provider:"amazon-bedrock",contextWindow:262000,outputLimit:262000},{id:"zai.glm-4.7",displayName:"GLM-4.7",provider:"amazon-bedrock",contextWindow:204800,outputLimit:131072},{id:"moonshot.kimi-k2-thinking",displayName:"Kimi K2 Thinking",provider:"amazon-bedrock",contextWindow:256000,outputLimit:256000},{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.ministral-3-14b-instruct",displayName:"Ministral 14B 3.0",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-3-haiku-20240307-v1:0",displayName:"Claude Haiku 3",provider:"amazon-bedrock",contextWindow:200000,outputLimit:4096},{id:"deepseek.r1-v1:0",displayName:"DeepSeek-R1",provider:"amazon-bedrock",contextWindow:128000,outputLimit:32768},{id:"meta.llama3-1-405b-instruct-v1:0",displayName:"Llama 3.1 405B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"mistral.voxtral-mini-3b-2507",displayName:"Voxtral Mini 3B 2507",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"openai.gpt-oss-120b-1:0",displayName:"gpt-oss-120b",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-nano-12b-v2",displayName:"NVIDIA Nemotron Nano 12B v2 VL BF16",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"eu.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"minimax.minimax-m2.5",displayName:"MiniMax M2.5",provider:"amazon-bedrock",contextWindow:196608,outputLimit:98304},{id:"meta.llama3-3-70b-instruct-v1:0",displayName:"Llama 3.3 70B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-1-70b-instruct-v1:0",displayName:"Llama 3.1 70B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-2-3b-instruct-v1:0",displayName:"Llama 3.2 3B Instruct",provider:"amazon-bedrock",contextWindow:131000,outputLimit:4096},{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"meta.llama3-2-11b-instruct-v1:0",displayName:"Llama 3.2 11B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"moonshotai.kimi-k2.5",displayName:"Kimi K2.5",provider:"amazon-bedrock",contextWindow:256000,outputLimit:256000},{id:"au.anthropic.claude-sonnet-4-6",displayName:"AU Anthropic Claude Sonnet 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"openai.gpt-oss-safeguard-20b",displayName:"GPT OSS Safeguard 20B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"qwen.qwen3-coder-30b-a3b-v1:0",displayName:"Qwen3 Coder 30B A3B Instruct",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"minimax.minimax-m2.1",displayName:"MiniMax M2.1",provider:"amazon-bedrock",contextWindow:204800,outputLimit:131072},{id:"qwen.qwen3-vl-235b-a22b",displayName:"Qwen/Qwen3-VL-235B-A22B-Instruct",provider:"amazon-bedrock",contextWindow:262000,outputLimit:262000},{id:"qwen.qwen3-coder-next",displayName:"Qwen3 Coder Next",provider:"amazon-bedrock",contextWindow:131072,outputLimit:65536},{id:"nvidia.nemotron-nano-9b-v2",displayName:"NVIDIA Nemotron Nano 9B v2",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"mistral.mistral-large-3-675b-instruct",displayName:"Mistral Large 3",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"qwen.qwen3-235b-a22b-2507-v1:0",displayName:"Qwen3 235B A22B 2507",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"anthropic.claude-3-7-sonnet-20250219-v1:0",displayName:"Claude Sonnet 3.7",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"writer.palmyra-x4-v1:0",displayName:"Palmyra X4",provider:"amazon-bedrock",contextWindow:122880,outputLimit:8192},{id:"anthropic.claude-opus-4-1-20250805-v1:0",displayName:"Claude Opus 4.1",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-3-5-sonnet-20240620-v1:0",displayName:"Claude Sonnet 3.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"eu.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"eu.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"us.anthropic.claude-opus-4-20250514-v1:0",displayName:"Claude Opus 4 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"us.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"global.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"us.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"global.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"us.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",displayName:"Claude Opus 4.1 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"global.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"eu.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"anthropic.claude-opus-4-20250514-v1:0",displayName:"Claude Opus 4",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"anthropic.claude-3-5-haiku-20241022-v1:0",displayName:"Claude Haiku 3.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"gpt-5.2-chat",displayName:"GPT-5.2 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"codex-mini",displayName:"Codex Mini",provider:"azure",contextWindow:200000,outputLimit:1e5},{id:"phi-4-multimodal",displayName:"Phi-4-multimodal",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"phi-3.5-mini-instruct",displayName:"Phi-3.5-mini-instruct",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"llama-4-scout-17b-16e-instruct",displayName:"Llama 4 Scout 17B 16E Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"grok-4-1-fast-reasoning",displayName:"Grok 4.1 Fast (Reasoning)",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"phi-3-medium-4k-instruct",displayName:"Phi-3-medium-instruct (4k)",provider:"azure",contextWindow:4096,outputLimit:1024},{id:"ministral-3b",displayName:"Ministral 3B",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"meta-llama-3.1-8b-instruct",displayName:"Meta-Llama-3.1-8B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"llama-3.3-70b-instruct",displayName:"Llama-3.3-70B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"deepseek-v3-0324",displayName:"DeepSeek-V3-0324",provider:"azure",contextWindow:131072,outputLimit:131072},{id:"gpt-5-chat",displayName:"GPT-5 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"phi-3.5-moe-instruct",displayName:"Phi-3.5-MoE-instruct",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-5.3-chat",displayName:"GPT-5.3 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"phi-3-mini-128k-instruct",displayName:"Phi-3-mini-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"phi-4-reasoning",displayName:"Phi-4-reasoning",provider:"azure",contextWindow:32000,outputLimit:4096},{id:"meta-llama-3-70b-instruct",displayName:"Meta-Llama-3-70B-Instruct",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"phi-3-small-8k-instruct",displayName:"Phi-3-small-instruct (8k)",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"llama-3.2-90b-vision-instruct",displayName:"Llama-3.2-90B-Vision-Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"deepseek-r1",displayName:"DeepSeek-R1",provider:"azure",contextWindow:163840,outputLimit:163840},{id:"deepseek-v3.2-speciale",displayName:"DeepSeek-V3.2-Speciale",provider:"azure",contextWindow:128000,outputLimit:128000},{id:"cohere-command-a",displayName:"Command A",provider:"azure",contextWindow:256000,outputLimit:8000},{id:"llama-3.2-11b-vision-instruct",displayName:"Llama-3.2-11B-Vision-Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"meta-llama-3.1-405b-instruct",displayName:"Meta-Llama-3.1-405B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"gpt-5.1-chat",displayName:"GPT-5.1 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"gpt-4-turbo-vision",displayName:"GPT-4 Turbo Vision",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"cohere-embed-v-4-0",displayName:"Embed v4",provider:"azure",contextWindow:128000,outputLimit:1536},{id:"gpt-3.5-turbo-0125",displayName:"GPT-3.5 Turbo 0125",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"cohere-embed-v3-multilingual",displayName:"Embed v3 Multilingual",provider:"azure",contextWindow:512,outputLimit:1024},{id:"grok-4-20-non-reasoning",displayName:"Grok 4.20 (Non-Reasoning)",provider:"azure",contextWindow:262000,outputLimit:8192},{id:"grok-4-fast-reasoning",displayName:"Grok 4 Fast (Reasoning)",provider:"azure",contextWindow:2000000,outputLimit:30000},{id:"mistral-small-2503",displayName:"Mistral Small 3.1",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"model-router",displayName:"Model Router",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"gpt-3.5-turbo-1106",displayName:"GPT-3.5 Turbo 1106",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"deepseek-v3.1",displayName:"DeepSeek-V3.1",provider:"azure",contextWindow:131072,outputLimit:131072},{id:"phi-3-mini-4k-instruct",displayName:"Phi-3-mini-instruct (4k)",provider:"azure",contextWindow:4096,outputLimit:1024},{id:"meta-llama-3.1-70b-instruct",displayName:"Meta-Llama-3.1-70B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"phi-4-mini-reasoning",displayName:"Phi-4-mini-reasoning",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"meta-llama-3-8b-instruct",displayName:"Meta-Llama-3-8B-Instruct",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"phi-4-mini",displayName:"Phi-4-mini",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"grok-4-20-reasoning",displayName:"Grok 4.20 (Reasoning)",provider:"azure",contextWindow:262000,outputLimit:8192},{id:"gpt-3.5-turbo-0301",displayName:"GPT-3.5 Turbo 0301",provider:"azure",contextWindow:4096,outputLimit:4096},{id:"phi-3-small-128k-instruct",displayName:"Phi-3-small-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"deepseek-v3.2",displayName:"DeepSeek-V3.2",provider:"azure",contextWindow:128000,outputLimit:128000},{id:"phi-3-medium-128k-instruct",displayName:"Phi-3-medium-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-3.5-turbo-0613",displayName:"GPT-3.5 Turbo 0613",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"phi-4",displayName:"Phi-4",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-4-32k",displayName:"GPT-4 32K",provider:"azure",contextWindow:32768,outputLimit:32768},{id:"cohere-embed-v3-english",displayName:"Embed v3 English",provider:"azure",contextWindow:512,outputLimit:1024},{id:"phi-4-reasoning-plus",displayName:"Phi-4-reasoning-plus",provider:"azure",contextWindow:32000,outputLimit:4096},{id:"gpt-3.5-turbo-instruct",displayName:"GPT-3.5 Turbo Instruct",provider:"azure",contextWindow:4096,outputLimit:4096},{id:"deepseek-r1-0528",displayName:"DeepSeek-R1-0528",provider:"azure",contextWindow:163840,outputLimit:163840},{id:"codestral-2501",displayName:"Codestral 25.01",provider:"azure",contextWindow:256000,outputLimit:256000},{id:"llama-4-maverick-17b-128e-instruct-fp8",displayName:"Llama 4 Maverick 17B 128E Instruct FP8",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"mai-ds-r1",displayName:"MAI-DS-R1",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"cohere-command-r-08-2024",displayName:"Command R",provider:"azure",contextWindow:128000,outputLimit:4000},{id:"cohere-command-r-plus-08-2024",displayName:"Command R+",provider:"azure",contextWindow:128000,outputLimit:4000}];var xa=86400000,ya=null;function V0(){return ya??ma(wa(),".tako","models-cache.json")}var ln=new Map,mn=!1;function me(i){ln.clear();for(let o of i)if(!ln.has(o.id))ln.set(o.id,o)}function va(){try{let o=k("fs").readFileSync(V0(),"utf-8"),n=JSON.parse(o);if(typeof n?.fetchedAt!=="number"||!Array.isArray(n?.entries))return null;return n}catch{return null}}async function sa(i){try{let o=await import("fs/promises"),n=V0(),e=n.slice(0,n.lastIndexOf("/"));if(e)await o.mkdir(e,{recursive:!0}).catch(()=>{});await o.writeFile(n,JSON.stringify(i),"utf-8")}catch{}}function Li(){if(mn)return;mn=!0;let i=va();if(i&&Date.now()-i.fetchedAt<xa){me(i.entries);return}me(di)}async function we(){try{let i=await F0();if(!i.length)return;me(i),await sa({fetchedAt:Date.now(),entries:i}),mn=!0}catch{}}function U0(i){let o=i.match(/^(.+?)(?:\[1m\]|:1m)$/i),n=o?o[1]:i,e=n.match(/^[^\/]+\/(.+)$/);return{lookupId:e?e[1]:n,is1m:!!o}}function xe(i){if(!mn)Li();let{lookupId:o,is1m:n}=U0(i),e=ln.get(o);if(!e)return;if(n)return{...e,contextWindow:1e6};return e}he();var be=Ne(ka(),".codex"),D0=Ne(be,"config.toml"),j0=Ne(be,"auth.json");function od(i,o){let n={...i};for(let[e,d]of Object.entries(o))if(d&&typeof d==="object"&&!Array.isArray(d)&&n[e]&&typeof n[e]==="object"&&!Array.isArray(n[e]))n[e]=od(n[e],d);else n[e]=d;return n}function za(i){if(i.model_providers?.crs)delete i.model_providers.crs;if(i.model_provider==="crs")delete i.model_provider;if(i.openai_base_url)delete i.openai_base_url;let o=i.model_providers?.tako;if(o)delete o.wire_api,delete o.request_max_retries,delete o.stream_max_retries,delete o.api_key,delete o.env_key;return i}function id(i){if(i.model_providers?.tako)delete i.model_providers.tako.supports_websockets;if(i.features){if(delete i.features.multi_agent,delete i.features.responses_websockets_v2,Object.keys(i.features).length===0)delete i.features}}async function $a(i,o){let n=await import("fs/promises");try{await n.mkdir(be,{recursive:!0})}catch{}let e={};try{e=ae(await n.readFile(D0,"utf-8"))}catch{}if(e=za(e),i.type==="codex-subscription")if(delete e.model_provider,e.check_for_update_on_startup=!1,e.remote_compaction_v2=!1,id(e),i.authData)await Bun.write(j0,JSON.stringify(i.authData,null,2)+`
518
- `);else await Bun.write(j0,JSON.stringify({OPENAI_API_KEY:null,auth_mode:"chatgpt"},null,2)+`
519
- `);else{let d;if(i.type==="tako")d=`${H}/v1`;else if(i.type==="deepseek")d="https://api.deepseek.com/v1";else d=`${i.baseUrl}/v1`;let t=o?.find((l)=>l.startsWith("model-"))?.slice(6)||i.model||"gpt-5.5",a=/^gpt[-.]/i.test(t),r;if(!a){if(r=di.find((m)=>m.id===t)?.contextWindow,!r&&(i.type==="tako"||i.type==="custom")&&i.baseUrl){let m=Ki(i.baseUrl,"openai")?.find((w)=>w.id===t);if(m&&m.contextWindow>0)r=m.contextWindow}if(!r)r=i.modelContextWindow}else delete e.model_context_window;let p={name:"tako",base_url:d,requires_openai_auth:!0};if(i.apiKey)p.experimental_bearer_token=i.apiKey;id(e);let c={model_provider:"tako",model:t,check_for_update_on_startup:!1,remote_compaction_v2:!1,model_providers:{tako:p}};if(r)c.model_context_window=r;e=od(e,c)}await Bun.write(D0,le(e))}var ga={id:"codex",name:"Codex",package:"@openai/codex",command:"codex",runtime:"bun",continueArg:"--continue",brandColor:"blue",getEnvVars(i){return{}},setupConfigFiles:$a,launchOptions:(i)=>Ja(i)},Ga=[{id:"search",label:{en:"Web Search",zh:"\u7F51\u7EDC\u641C\u7D22"},shortLabel:"Search",description:{en:"Enable real-time web search",zh:"\u542F\u7528\u5B9E\u65F6\u7F51\u9875\u641C\u7D22"},flag:"--search",args:["--search"]},{id:"bypass-sandbox",label:{en:"Bypass Sandbox",zh:"\u7ED5\u8FC7\u5BA1\u6279\u4E0E\u6C99\u7BB1"},shortLabel:"Bypass",description:{en:"DANGEROUS: skip all approvals & sandbox (use only in disposable envs)",zh:"\u5371\u9669\uFF1A\u8DF3\u8FC7\u6240\u6709\u5BA1\u6279\u4E0E\u6C99\u7BB1\u9650\u5236\uFF08\u4EC5\u9650\u9694\u79BB/\u4E34\u65F6\u73AF\u5883\u4F7F\u7528\uFF09"},flag:"--dangerously-bypass-approvals-and-sandbox",args:["--dangerously-bypass-approvals-and-sandbox"]}],Ma=["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.3"],Sa=["deepseek-v4-flash","deepseek-v4-pro"];function We(i){if(i>=1e6)return"1M";if(i>0)return`${Math.round(i/1000)}k`;return"?"}function qa(i){return/^claude[-_]/i.test(i)||/^anthropic[-_/]/i.test(i)}function Qa(i){if(!i.baseUrl)return null;let o=Ki(i.baseUrl,"openai");if(!o||o.length===0)return null;let n=o.filter((e)=>!qa(e.id));if(n.length===0)return null;return n.map((e)=>({id:`model-${e.id}`,label:{en:e.displayName,zh:e.displayName},shortLabel:e.displayName,description:{en:`Use ${e.displayName} (${We(e.contextWindow)} ctx)`,zh:`\u4F7F\u7528 ${e.displayName}\uFF08\u4E0A\u4E0B\u6587 ${We(e.contextWindow)}\uFF09`},flag:`--model ${e.id}`,args:["--model",e.id],group:"model"}))}function Pa(i){if(Li(),i&&(i.type==="tako"||i.type==="custom")){let e=Qa(i);if(e)return e}let o=i?.type==="deepseek"?Sa:Ma,n=[];for(let e of o){let d=di.find((a)=>a.id===e),u=We(d?.contextWindow??0),t=d?.displayName??e;n.push({id:`model-${e}`,label:{en:t,zh:t},shortLabel:t,description:{en:`Use ${t} (${u} ctx)`,zh:`\u4F7F\u7528 ${t}\uFF08\u4E0A\u4E0B\u6587 ${u}\uFF09`},flag:`--model ${e}`,args:["--model",e],group:"model"})}return n}function Ja(i){return[...Ga,...Pa(i)]}ro(ga);T();Gi();Ai();I();import{homedir as nr}from"os";import{dirname as er,join as xd}from"path";P();var dr=xd(nr(),".claude","settings.json"),ur=xd(B,"claude-code","settings.json"),tr=["CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC","API_TIMEOUT_MS"];function ar(i){if(i.startsWith("ANTHROPIC_"))return!0;return tr.includes(i)}function rr(i){let o={...i},n=[],e=i.env;if(e&&typeof e==="object"&&!Array.isArray(e)){let d={...e};for(let u of Object.keys(d))if(ar(u))n.push(u),delete d[u];if(n.length>0)if(Object.keys(d).length===0)delete o.env;else o.env=d}return{settings:o,cleanedFields:n}}async function pr(i={}){let o=await import("fs/promises"),n=i.sourcePath??dr,e=i.targetPath??ur,d;try{d=await o.readFile(n,"utf-8")}catch{return null}let u;try{u=JSON.parse(d)}catch{return null}let{settings:t,cleanedFields:a}=rr(u);if(a.length===0)return null;if(i.logConflicts!==!1)h.warn(b("claudeCode.settingsDetected",{fields:a.join(", ")})),h.info(b("claudeCode.usingIsolatedSettings",{path:e}));return await o.mkdir(er(e),{recursive:!0}),await o.writeFile(e,JSON.stringify(t,null,2)+`
520
- `),{args:["--setting-sources","project,local","--settings",e],cleanedFields:a,settingsPath:e}}async function cr(i){let{readClaudeAuth:o,writeClaudeAuth:n}=await Promise.resolve().then(() => (vn(),yn)),{getProviders:e,updateProvider:d}=await Promise.resolve().then(() => (ui(),md)),u=i.authData?.credentials,t=i.authData?.oauthAccount;if(!u){h.warn(b("claudeCode.subscriptionMissingAuth"));return}let a=await o(),r=a.oauthAccount?.emailAddress;if(r&&a.credentials){let l=(await e()).find((m)=>m.type==="claude-subscription"&&m.email===r);if(l){let m={credentials:a.credentials,oauthAccount:a.oauthAccount};if(JSON.stringify(l.authData)!==JSON.stringify(m))await d(l.id,{authData:m})}else if(r!==t?.emailAddress)h.warn(b("claudeCode.unknownCurrentAccount",{email:r}))}await n({credentials:u,oauthAccount:t});let p=t?.emailAddress||"?";h.info(b("claudeCode.subscriptionSwitched",{email:p}))}var lr={id:"claude-code",name:"Claude Code",package:"@anthropic-ai/claude-code",command:"claude",runtime:"native",continueArg:"--continue",brandColor:"yellow",getEnvVars(i){let o={CLAUDE_CODE_DISABLE_UPDATE_CHECK:"1",DISABLE_AUTOUPDATER:"1"},n=i.model?co(i.model):void 0;switch(i.type){case"claude-subscription":return o;case"tako":return{...o,ANTHROPIC_BASE_URL:`${i.baseUrl}/api`,ANTHROPIC_AUTH_TOKEN:i.apiKey,...n?{ANTHROPIC_MODEL:n}:{}};case"anthropic":return{...o,ANTHROPIC_API_KEY:i.apiKey,...n?{ANTHROPIC_MODEL:n}:{}};case"deepseek":return{...o,ANTHROPIC_BASE_URL:ke,ANTHROPIC_AUTH_TOKEN:i.apiKey,...n?{ANTHROPIC_MODEL:n}:{}};case"xiaomi":return{...o,ANTHROPIC_BASE_URL:$e(i.apiKey),ANTHROPIC_AUTH_TOKEN:i.apiKey,...n?{ANTHROPIC_MODEL:n}:{}};case"custom":return{...o,ANTHROPIC_BASE_URL:i.baseUrl,ANTHROPIC_AUTH_TOKEN:i.apiKey,...n?{ANTHROPIC_MODEL:n}:{}};default:return o}},async setupConfigFiles(i,o,n){let e=[];if(n?.forLaunch){let d=await pr();if(d)e=d.args}if(i.type==="claude-subscription")await cr(i);return e.length>0?{args:e}:void 0},launchOptions:(i)=>Wr(i)},mr=[{id:"skip-permissions",label:{en:"Skip Permissions",zh:"\u8DF3\u8FC7\u6743\u9650\u786E\u8BA4"},shortLabel:"Skip Perms",description:{en:"Auto-execute all operations without confirmation",zh:"\u5141\u8BB8\u81EA\u52A8\u6267\u884C\u6240\u6709\u64CD\u4F5C\uFF0C\u65E0\u9700\u786E\u8BA4"},flag:"--dangerously-skip-permissions",args:["--dangerously-skip-permissions"]},{id:"worktree",label:{en:"Git Worktree",zh:"Git Worktree"},shortLabel:"Worktree",description:{en:"Run in an isolated worktree",zh:"\u5728\u9694\u79BB\u7684 worktree \u4E2D\u8FD0\u884C"},flag:"--worktree",args:["--worktree"]}],wr=["claude-sonnet-4-6","claude-opus-4-6","claude-opus-4-7"],xr=["deepseek-v4-flash","deepseek-v4-pro"],yr=["mimo-v2.5-pro"];function vr(i){let o=i.match(/^claude-(haiku|sonnet|opus)-(\d{1,2})-(\d{1,2})$/);if(o)return`${o[1].charAt(0).toUpperCase()+o[1].slice(1)} ${o[2]}.${o[3]}`;return di.find((e)=>e.id===i)?.displayName??i}function co(i){if(!i)return i;if(i.endsWith("[1m]")||/:1m$/i.test(i))return i;if(!/^(claude|deepseek|kimi|mimo)[-_]/i.test(i))return i;let o=di.find((n)=>n.id===i);if(!o||o.contextWindow<1e6)return i;return`${i}[1m]`}function wd(i){if(i>=1e6)return"1M";if(i>0)return`${Math.round(i/1000)}k`;return"?"}function sr(i){return/^(gpt[-_]|chatgpt[-_]|o\d+([-_]|$)|davinci[-_]|text-davinci[-_]|openai[-_/])/i.test(i)}function Lr(i){if(!i.baseUrl)return null;let o=Ki(i.baseUrl,"claude");if(!o||o.length===0)return null;let n=o.filter((e)=>!sr(e.id));if(n.length===0)return null;return n.map((e)=>{let d=co(e.id);return{id:`model-${e.id}`,label:{en:e.displayName,zh:e.displayName},shortLabel:e.displayName,description:{en:`Use ${e.displayName} (${wd(e.contextWindow)} ctx)`,zh:`\u4F7F\u7528 ${e.displayName}\uFF08\u4E0A\u4E0B\u6587 ${wd(e.contextWindow)}\uFF09`},flag:`--model ${d}`,args:[],envVars:{ANTHROPIC_MODEL:d},group:"model"}})}function hr(i){if(Li(),i&&(i.type==="tako"||i.type==="custom")){let e=Lr(i);if(e)return e}let o=i?.type==="deepseek"?xr:i?.type==="xiaomi"?yr:wr,n=[];for(let e of o){let u=di.find((p)=>p.id===e)?.contextWindow??0,t=u>=1e6?"1M":u>0?`${Math.round(u/1000)}k`:"?",a=vr(e),r=co(e);n.push({id:`model-${e}`,label:{en:a,zh:a},shortLabel:a,description:{en:`Use ${a} (${t} ctx)`,zh:`\u4F7F\u7528 ${a}\uFF08\u4E0A\u4E0B\u6587 ${t}\uFF09`},flag:`--model ${r}`,args:[],envVars:{ANTHROPIC_MODEL:r},group:"model"})}return n}function Wr(i){return[...mr,...hr(i)]}ro(lr);T();import{homedir as Nr}from"os";import{join as vd}from"path";var sd=vd(Nr(),".gemini"),yd=vd(sd,"settings.json");async function br(){let i=await import("fs/promises");try{await i.mkdir(sd,{recursive:!0})}catch{}let o={};try{o=JSON.parse(await i.readFile(yd,"utf-8"))}catch{}let n=o.security?.auth||{};if(n.selectedType==="gemini-api-key")return;o.selectedAuthType="gemini-api-key",o.security={...o.security,auth:{...n,selectedType:"gemini-api-key"}},await Bun.write(yd,JSON.stringify(o,null,2)+`
521
- `)}var fr={id:"gemini",name:"Gemini CLI",package:"@google/gemini-cli",command:"gemini",runtime:"bun",brandColor:"cyan",getEnvVars(i){return{GEMINI_API_KEY:i.apiKey,GOOGLE_GEMINI_BASE_URL:i.baseUrl||"https://tako.shiroha.tech"}},setupConfigFiles:br};ro(fr);T();Co();ui();P();P();import{homedir as dp}from"os";var up=50,Fe=3;async function Ve(i){try{return(await(await import("fs/promises")).stat(i)).isDirectory()}catch{return!1}}async function Fd(i,o,n){let e=await N(),d=e.recentProjects||[],u=new Date().toISOString(),t=d.findIndex((r)=>r.path===i);if(t>=0){let r=d[t],p=r.clientUsage||{},c=p[o]||{count:0,lastAt:u};d[t]={...r,launchCount:r.launchCount+1,lastLaunchedAt:u,lastClientId:o,clientUsage:{...p,[o]:{count:c.count+1,lastAt:u,lastSelectedOptionIds:n??c.lastSelectedOptionIds}}}}else d.push({path:i,launchCount:1,lastLaunchedAt:u,lastClientId:o,clientUsage:{[o]:{count:1,lastAt:u,lastSelectedOptionIds:n}}});let a=d.sort((r,p)=>new Date(p.lastLaunchedAt).getTime()-new Date(r.lastLaunchedAt).getTime()).slice(0,up);e.recentProjects=a,await Y(e)}async function Wn(i){let n=(await N()).recentProjects||[],e=process.cwd(),u=n.find((a)=>a.path===e)?.clientUsage?.[i]?.lastSelectedOptionIds;if(u)return u;return n.filter((a)=>a.path!==e&&a.clientUsage?.[i]?.lastSelectedOptionIds).sort((a,r)=>{let p=new Date(a.clientUsage[i].lastAt).getTime();return new Date(r.clientUsage[i].lastAt).getTime()-p})[0]?.clientUsage?.[i]?.lastSelectedOptionIds??[]}function tp(i,o){let n=i.clientUsage?.[o];if(n)return new Date(n.lastAt).getTime();if(i.lastClientId===o)return new Date(i.lastLaunchedAt).getTime();return 0}async function Vd(i,o=Fe,n=!0){let d=(await N()).recentProjects||[],u=process.cwd(),a=d.filter((p)=>{if(n&&p.path===u)return!1;return p.clientUsage?.[i]||p.lastClientId===i}).map((p)=>({...p,lastUsedTime:tp(p,i)})).sort((p,c)=>c.lastUsedTime-p.lastUsedTime),r=[];for(let{lastUsedTime:p,...c}of a){if(r.length>=o)break;if(await Ve(c.path))r.push(c)}return r}async function Ud(){let o=(await N()).recentProjects||[],n=process.cwd();return o.find((d)=>d.path===n)?.lastClientId||null}function Ue(i,o=25){let n=dp(),e=i.startsWith(n)?"~"+i.slice(n.length):i;if(e.length>o){let u=e.split("/").pop()||"";if(u.length>o-4)e="..."+u.slice(-o+3);else e=`.../${u}`}return e}function Ed(i){let{t:o}=(I(),Ot(ud)),n=Date.now(),e=new Date(i).getTime(),d=n-e,u=Math.floor(d/60000),t=Math.floor(d/3600000),a=Math.floor(d/86400000),r=Math.floor(a/7),p=Math.floor(a/30);if(u<1)return o("time.justNow");if(u<60)return o("time.minutesAgo",{n:u});if(t<24)return o("time.hoursAgo",{n:t});if(a===1)return o("time.yesterday");if(a<7)return o("time.daysAgo",{n:a});if(a<30)return o("time.weeksAgo",{n:r});return o("time.monthsAgo",{n:p})}Ai();I();pi();T();Co();var Ee="TAKO_WINDOWS_HANDOFF_FILE";function Ho(i){return`'${i.replace(/'/g,"''")}'`}function _d(i){if(i.length===0)return"@()";return`@(${i.map(Ho).join(", ")})`}function Nn(i){let[o,...n]=i.command;if(!o)throw Error("handoff command is empty");let e=["$ErrorActionPreference = 'Stop'","$scriptPath = $PSCommandPath"];for(let[u,t]of Object.entries(i.env??{})){if(t===void 0)continue;if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(u))continue;e.push(`$env:${u} = ${Ho(String(t))}`)}e.push(`Set-Location -LiteralPath ${Ho(i.cwd)}`,"$esc = [char]27",'try { [Console]::Write("$esc[2J$esc[3J$esc[H") } catch {}',`$argv = ${_d(n)}`,"$code = 0","try {",` & ${Ho(o)} @argv`," $code = if ($null -ne $LASTEXITCODE) { $LASTEXITCODE } else { 0 }","} finally {"," Remove-Item -LiteralPath $scriptPath -Force -ErrorAction SilentlyContinue");let d=i.relaunchCommand??[];if(d.length>0){let[u,...t]=d;e.push(` $relaunchArgv = ${_d(t)}`,` & ${Ho(u)} @relaunchArgv`," $code = if ($null -ne $LASTEXITCODE) { $LASTEXITCODE } else { $code }")}return e.push("}","exit $code",""),e.join(`\r
522
- `)}async function Dd(i,o){try{let n=o?.projectPath||process.cwd(),e=o?.providerContext,d=process.platform==="win32";if(!e)return{success:!1,error:"\u672A\u9009\u62E9\u670D\u52A1\u5546"};let u=await to(i);if(!u)u=ao(i);if(!await Bun.file(u).exists()){let{execSync:m}=await import("child_process"),w=d?`where ${i.command}.exe 2>nul || where ${i.command}.cmd 2>nul || where ${i.command}`:`which ${i.command}`;try{let y=m(w,{encoding:"utf8"}).split(`
523
- `).map((s)=>s.trim().replace(/\r$/,"")).filter(Boolean),v=d?y.find((s)=>s.toLowerCase().endsWith(".exe"))??y.find((s)=>s.toLowerCase().endsWith(".cmd"))??y[0]:y[0];if(v)u=v;else return{success:!1,error:`\u627E\u4E0D\u5230 ${i.command}\uFF0C\u8BF7\u8FD0\u884C tako install ${i.id}`}}catch{return{success:!1,error:`\u627E\u4E0D\u5230 ${i.command}\uFF0C\u8BF7\u8FD0\u884C tako install ${i.id}`}}}let r={...i.getEnvVars(e),...o?.envVars??{}},p={...process.env,...r},c;if(i.runtime==="native")if(d&&u.toLowerCase().endsWith(".js"))c=[await hi(),u];else c=[u];else c=[await hi(),u];if(o?.args&&o.args.length>0)c=[...c,...o.args];if(d&&o?.handoffOnWindows){let m=await import("fs/promises"),w=process.env[Ee];if(w)return await m.writeFile(w,Nn({command:c,cwd:n,env:r}),"utf8"),{success:!0}}if(d&&o?.relaunchTakoOnWindows){let m=await import("fs/promises"),w=process.env[Ee];if(w){let y=[process.argv[0],process.argv[1]].filter((v)=>typeof v==="string"&&v.length>0);return await m.writeFile(w,Nn({command:c,cwd:n,env:r,relaunchCommand:y}),"utf8"),{success:!0}}}async function l(){try{if(process.stdin.removeAllListeners(),!d&&process.stdin.isTTY)process.stdin.setRawMode(!1);process.stdin.pause()}catch{}}if(d){let m=await import("fs/promises"),{join:w}=await import("path"),{tmpdir:y}=await import("os"),v=w(y(),`tako-handoff-${process.pid}-${Date.now()}.ps1`);await m.writeFile(v,Nn({command:c,cwd:n}),"utf8"),await l();try{let L=await Bun.spawn(["powershell.exe","-NoProfile","-ExecutionPolicy","Bypass","-File",v],{env:p,stdio:["inherit","inherit","inherit"],cwd:n}).exited;return{success:L===0,exitCode:L}}catch(s){return await m.rm(v,{force:!0}).catch(()=>{}),{success:!1,error:s instanceof Error?s.message:"PowerShell handoff \u542F\u52A8\u5931\u8D25"}}}if(await l(),process.stdout.isTTY)try{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")}catch{}try{Bun.spawnSync(c,{env:p,stdio:["inherit","inherit","inherit"],cwd:n})}catch{await Bun.spawn(c,{env:p,stdio:["inherit","inherit","inherit"],cwd:n}).exited}return{success:!0}}catch(n){return{success:!1,error:n instanceof Error?n.message:"\u542F\u52A8\u5931\u8D25"}}}async function ap(i,o){if(o?.providerContext)return o.providerContext;let n=await D();if(n){let e=await Si(i.id);if(e.some((u)=>u.id===n.id))return O(n);if(e.length>0)return O(e[0])}return null}async function bn(i,o){try{let n=o?.projectPath||process.cwd();if(o?.projectPath){if(!await Ve(o.projectPath))return{success:!1,error:b("launcher.directoryNotFound",{path:o.projectPath})}}let e=await Xd(i);if(!e.success)return e;let d=await ap(i,o);if(!d)return{success:!1,error:b("launcher.apiKeyNotConfigured")};let u=[],t={};if(i.setupConfigFiles){let p=await i.setupConfigFiles(d,o?.selectedOptionIds,{forLaunch:!0});if(p&&typeof p==="object")u=p.args??[],t=p.envVars??{}}await Fd(n,i.id,o?.selectedOptionIds);let r=(await N()).installedClients[i.id]?.version;return J("client_launched",{client_id:i.id,client_version:r,project_hash:Bd(n),is_recent_project:!!o?.projectPath}),h.info(b("launcher.starting",{client:i.name})),await Dd(i,{...o,args:[...u,...o?.args??[]],envVars:{...t,...o?.envVars??{}},providerContext:d})}catch(n){return{success:!1,error:n instanceof Error?n.message:"Launch failed"}}}T();I();pi();Ai();ui();ui();pi();async function fn(i){let o=await Si(i);if(o.length===0)return null;let n=await qi(i);if(n)return O(n);if(o.length===1)return O(o[0]);let e=await D();if(e&&o.some((d)=>d.id===e.id))return O(e);return O(o[0])}async function jd(){let i=await Ko();if(await Bo(i)>0){for(let n of i)J("provider_added",{provider_type:n.type,method:"auto_detect"});X(),A()}}I();import{createCliRenderer as wc}from"@opentui/core";P();I();pi();ui();Gi();function rp(i){return i.startsWith("cr_")&&i.length>10}async function pp(i){try{let n=await(await fetch(`${H}/apiStats/api/get-key-id`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:i})})).json();if(n.success&&n.data?.id)return{valid:!0,apiId:n.data.id};return{valid:!1,error:n.error||b("auth.validationFailed")}}catch(o){return{valid:!1,error:o instanceof Error?o.message:b("auth.networkError")}}}async function iu(i){if(!rp(i))return J("api_key_validated",{success:!1,error_type:"invalid_format"}),{success:!1,error:b("auth.invalidFormat")};let o=await pp(i);if(!o.valid)return J("api_key_validated",{success:!1,error_type:"api_validation_failed"}),{success:!1,error:o.error};return await Vi({apiKey:i,apiId:o.apiId}),await cp(i,o.apiId),J("api_key_validated",{success:!0}),X(),A(),{success:!0}}async function cp(i,o){let e=(await Z()).find((d)=>d.type==="tako");if(e)await Ci(e.id,{apiKey:i,apiId:o});else await ji({name:"Tako \u5B98\u65B9",type:"tako",apiKey:i,baseUrl:H,apiId:o,supportedClients:_("tako"),builtin:!0})}pi();var _e="0.3.11",Yo=22,x={bg:"#17130f",panel:"#211b16",panelMuted:"#2b231c",text:"#ece3d8",muted:"#94897c",border:"#3a3129",orange:"#fb8147",orangeDim:"#c96a3a",cyan:"#8fb8a8",green:"#8fbf7a",yellow:"#e6b45c",red:"#e58f7b",magenta:"#c99bd6",blue:"#88a8d8",gray:"#94897c"},yo={"claude-code":{icon:"*",color:x.orange},codex:{icon:"C",color:x.blue},gemini:{icon:"G",color:x.green}},vo={icon:"-",color:x.text},ou=["\u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588"," \u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588"," \u2588 \u2588\u2588\u2588\u2588\u2588 \u2588\u2588\u2588\u2588 \u2588\u2588 \u2588\u2588"," \u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588"," \u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588 \u2588\u2588\u2588\u2588\u2588\u2588"].join(`
524
- `),nu=["\u2580\u2588\u2580 \u2584\u2580\u2588 \u2588\u2584\u2580 \u2588\u2580\u2588"," \u2588 \u2588\u2580\u2588 \u2588 \u2588 \u2588\u2584\u2588"].join(`
525
- `),so=["tako","claude-subscription","codex-subscription","anthropic","deepseek","xiaomi","custom"],Yi=[{value:"en",label:"English"},{value:"zh",label:"\u4E2D\u6587"}];T();ui();Gi();I();function Lo(i,o){let n=[],e=new Set;for(let d of i){if(!d.group){n.push({kind:"flag",opt:d});continue}if(!e.has(d.group))e.add(d.group),n.push({kind:"group",group:d.group,title:d.group==="model"?o?"\u6A21\u578B":"Model":d.group})}return n.push({kind:"provider",title:o?"\u670D\u52A1\u5546":"Provider"}),n}function Zo(i,o,n){return i.find((e)=>e.group===n&&o.has(e.id))}function eu(i){let o=[],n={},e=[];for(let d of i.launchOptions){if(!i.enabled.has(d.id))continue;if(o.push(...d.args),d.envVars)Object.assign(n,d.envVars);e.push(d.id)}return{args:o,envVars:n,selectedOptionIds:e}}function du(){try{if(process.stdin.removeAllListeners(),process.stdin.isTTY)process.stdin.setRawMode(!1);process.stdin.pause(),process.stdin.unref()}catch{}}function ho(i){if(i.ctrl||i.meta||i.option)return"";if(i.sequence&&i.sequence.length===1&&i.sequence>=" ")return i.sequence;if(i.name&&i.name.length===1)return i.name;return""}function ii(i){return!i.ctrl&&!i.meta&&!i.option}function De(i){if(!i)return"";if(i.length<=8)return"*".repeat(i.length);return`${i.slice(0,4)}${"*".repeat(Math.min(i.length-8,20))}${i.slice(-4)}`}function To(i){return i.providers.find((o)=>o.id===i.providerSelectedId)}function kn(i,o){let n=i.type==="claude-subscription"||i.type==="codex-subscription";return[...i.id!==o.defaultProviderId?["default"]:[],...n?["relogin"]:["rekey"],...i.builtin?[]:["delete"],"back"]}function uu(i,o){return{default:o?"\u8BBE\u4E3A\u9ED8\u8BA4":"Set default",rekey:o?"\u66F4\u65B0 Key":"Update key",relogin:o?"\u91CD\u65B0\u767B\u5F55":"Re-login",delete:o?"\u5220\u9664":"Delete",back:o?"\u8FD4\u56DE":"Back"}[i]}function je(i){let o=Math.floor(i/1000);if(o<60)return`${o}s`;if(o<3600)return`${Math.floor(o/60)}m`;if(o<86400)return`${Math.floor(o/3600)}h`;return`${Math.floor(o/86400)}d`}function i0(i){switch(i){case"running":return x.yellow;case"awaiting_approval":return x.magenta;case"idle":return x.green;case"closed":return x.gray;case"dead":return x.red;default:return x.text}}function tu(i){switch(i){case"running":return"~";case"awaiting_approval":return"?";case"idle":return"*";case"dead":return"!";default:return"-"}}function Wo(i){if(i.screen==="config"){i.apiKeyValue=i.apiKeyValue.slice(0,-1),i.apiKeyStatus="idle";return}if(i.screen==="agent-new"){if(i.agentField==="model")i.agentModel=i.agentModel.slice(0,-1);if(i.agentField==="name")i.agentName=i.agentName.slice(0,-1);return}if(i.screen==="agent-detail"){i.agentDetailInput=i.agentDetailInput.slice(0,-1);return}switch(i.providerInputMode){case"add-key":case"rekey":i.addKey=i.addKey.slice(0,-1);break;case"add-url":i.addUrl=i.addUrl.slice(0,-1);break;case"add-model":i.addModel=i.addModel.slice(0,-1);break;case"add-ctx":i.addCtx=i.addCtx.slice(0,-1);break}}function No(i,o){if(!o)return;if(i.screen==="config"){i.apiKeyValue+=o,i.apiKeyStatus="idle";return}if(i.screen==="agent-new"){if(i.agentField==="model")i.agentModel+=o;if(i.agentField==="name")i.agentName+=o;return}if(i.screen==="agent-detail"){i.agentDetailInput+=o;return}switch(i.providerInputMode){case"add-key":case"rekey":i.addKey+=o;break;case"add-url":i.addUrl+=o;break;case"add-model":i.addModel+=o;break;case"add-ctx":if(/^[0-9]$/.test(o))i.addCtx+=o;break}}async function au(){let i=await ru(),o=Ri();return{...i,screen:"launcher",busy:!1,message:"",providers:[],defaultProviderId:void 0,clientBindings:{},providerTabIdx:i.clientIdx,providerRowIdx:0,providerDetailIdx:0,optionPickerGroup:void 0,optionPickerIdx:0,scrollOffset:0,scrollScreen:"launcher",providerSelectedId:void 0,providerInputMode:"add-key",addType:"tako",addKey:"",addUrl:"",addModel:"",addCtx:"",statsLoading:!1,apiKeyValue:"",apiKeyStatus:"idle",languageIdx:Math.max(0,Yi.findIndex((n)=>n.value===o)),agentDefaults:{},agentIdx:0,agentDetailFrames:[],agentDetailInput:"",agentDetailStatus:"idle",agentPendingApprovals:[],agentBackend:"claude",agentModel:"",agentName:"",agentField:"backend"}}async function ru(){let i=H0(),o=await Ud(),n=await D(),e=Ri()==="zh",d=[...i].sort((t,a)=>{if(t.id===o)return-1;if(a.id===o)return 1;return 0}),u=[];for(let t of d){let a=await Vd(t.id,Fe,!0),r=process.cwd(),p=[{label:e?"\u5728\u5F53\u524D\u76EE\u5F55\u542F\u52A8":"Launch in current directory",hint:Ue(r,48),path:r},...a.map((W)=>({label:Ue(W.path,48),hint:Ed(W.lastLaunchedAt),path:W.path}))],c=await Si(t.id),m=await qi(t.id)||c.find((W)=>W.id===n?.id)||c[0],w=an(t,m),y=new Set(w.map((W)=>W.id)),v=await Wn(t.id),s=new Set(v.filter((W)=>y.has(W))),L=m?.model?`model-${m.model}`:void 0;if(L&&w.some((W)=>W.id===L)&&!w.some((W)=>W.group==="model"&&s.has(W.id)))s.add(L);u.push({client:t,projects:p,providers:c,activeProvider:m,launchOptions:w,enabled:s})}return{clients:u,clientIdx:0,focus:"tabs",projectIdx:0,optionIdx:0,zh:e}}async function ci(i){let o=i.clients[i.clientIdx]?.client.id,n=await ru();i.clients=n.clients,i.zh=n.zh;let e=o?i.clients.findIndex((d)=>d.client.id===o):-1;i.clientIdx=e>=0?e:0,o0(i)}function o0(i){let o=i.clients[i.clientIdx];if(!o)return;let n=Lo(o.launchOptions,i.zh);i.projectIdx=Math.max(0,Math.min(i.projectIdx,o.projects.length-1)),i.optionIdx=Math.max(0,Math.min(i.optionIdx,n.length-1))}function Io(i){if(i.focus==="options")i.focus="tabs";i.projectIdx=0,i.optionIdx=0,i.optionPickerGroup=void 0,i.optionPickerIdx=0}function no(i,o){if(i.screen="provider-input",i.providerInputMode=o,i.providerRowIdx=0,i.addKey="",o==="add-key")i.addUrl="",i.addModel=Po(i.addType)||"",i.addCtx=""}Gi();I();import{BoxRenderable as lp,ScrollBoxRenderable as mp,TextAttributes as F,TextRenderable as wp}from"@opentui/core";P();async function pu(){try{let i=await Ui();if(!i)return{success:!1,error:"\u672A\u627E\u5230 API ID\uFF0C\u8BF7\u91CD\u65B0\u914D\u7F6E Key"};let n=await(await fetch(`${H}/apiStats/api/user-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:i})})).json(),d=await(await fetch(`${H}/apiStats/api/user-model-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:i,period:"daily"})})).json();if(!n.success)return{success:!1,error:n.error||n.message||"\u83B7\u53D6\u7EDF\u8BA1\u5931\u8D25"};let u=(d.data||[]).map((t)=>({model:t.model,requests:t.requests,cost:t.formatted?.total||"$0.00"}));return{success:!0,data:{totalRequests:n.data?.usage?.total?.requests||0,totalCost:n.data?.usage?.total?.formattedCost||"$0.00",todayCost:`$${(n.data?.limits?.currentDailyCost||0).toFixed(2)}`,modelStats:u}}}catch(i){return{success:!1,error:i instanceof Error?i.message:"\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25"}}}function cu(i){return i.toLocaleString("en-US")}function xp(i){for(let o of[...i.root.getChildren()])i.root.remove(o.id)}function q(i,o){return new lp(i,o)}function n0(i){return i.terminalHeight<Yo}function lu(i){return n0(i)?{minHeight:Yo}:{height:"100%"}}function mu(i){return Math.max(0,i.scrollHeight-i.viewport.height)}function yp(i,o){if(mu(o)<=0)return;i.scrollOffset=Math.max(0,Math.round(o.scrollTop))}function oi(i,o,n){if(!n0(i)){i.root.add(n);return}let e=new mp(i,{width:"100%",height:"100%",scrollY:!0,scrollX:!1,viewportCulling:!1}),d=o.scrollOffset,u=!1,t=()=>{if(d<=0)return;let a=mu(e);if(a<=0)return;u=!0,e.scrollTop=Math.min(d,a),u=!1};if(e.verticalScrollBar.on("change",()=>{if(u)return;yp(o,e),d=o.scrollOffset}),e.content.on("resize",t),e.viewport.on("resize",t),e.add(n),i.root.add(e),o.scrollOffset>0)t(),process.nextTick(t)}function vp(i,o,n={}){return new wp(i,{content:o,fg:x.text,selectable:!1,...n})}function f(i,o,n,e={}){let d=vp(o,n,e);return i.add(d),d}function ti(i,o,n){let e=q(i,{flexDirection:"row",flexWrap:"wrap",gap:2,paddingX:2,paddingY:0,marginTop:1,height:1,justifyContent:"center"});n.forEach(([d,u])=>{let t=q(i,{flexDirection:"row",gap:1});f(t,i,d,{fg:x.orange,attributes:F.BOLD}),f(t,i,u,{fg:x.muted}),e.add(t)}),o.add(e)}function sp(i,o,n,e=x.orange){let d=i.terminalHeight;if(d<30)return;let u=q(i,{flexDirection:"column",alignItems:"center",marginBottom:1}),t=d>=36?ou:nu;if(f(u,i,t,{fg:e,attributes:F.BOLD,selectable:!1}),n&&d>=34)f(u,i,n,{fg:x.muted});o.add(u)}function Wi(i,o,n){let e=q(i,{flexDirection:"column",gap:0});for(let d of n){let u=q(i,{flexDirection:"row",justifyContent:"space-between",backgroundColor:d.focused?x.panelMuted:x.panel,paddingX:1,height:1}),t=q(i,{flexDirection:"row",gap:1,flexGrow:1});if(f(t,i,d.focused?">":" ",{fg:d.focused?d.color||x.orange:x.muted,attributes:d.focused?F.BOLD:F.NONE}),d.marker)f(t,i,d.marker,{fg:d.color||x.orange});if(f(t,i,d.primary,{fg:d.focused?d.color||x.orange:x.text,attributes:d.focused?F.BOLD:F.NONE,truncate:!0}),u.add(t),d.secondary)f(u,i,d.secondary,{fg:x.muted,truncate:!0});e.add(u)}o.add(e)}function li(i,o,n,e=x.orange,d={text:`tako ${_e}`,color:x.muted},u=!1){let t=q(i,{flexDirection:"column",width:"100%",...lu(i),backgroundColor:x.bg,paddingX:1,paddingY:1}),a=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:e,backgroundColor:x.panel,paddingX:2,paddingY:1,gap:1,flexGrow:u?1:0}),r=q(i,{flexDirection:"row",justifyContent:"space-between"});if(f(r,i,n,{fg:e,attributes:F.BOLD}),f(r,i,d.text,{fg:d.color||x.muted,truncate:!0}),a.add(r),o.message)f(a,i,o.message,{fg:o.message.startsWith("!")?x.red:x.green});return t.add(a),{root:t,panel:a}}function z(i,o){if(xp(i),o.scrollScreen!==o.screen)o.scrollScreen=o.screen,o.scrollOffset=0;else if(!n0(i)&&o.scrollOffset!==0)o.scrollOffset=0;switch(o.screen){case"launcher":wu(i,o);break;case"providers":hp(i,o);break;case"provider-detail":Wp(i,o);break;case"provider-add-type":Np(i,o);break;case"provider-input":bp(i,o);break;case"stats":fp(i,o);break;case"config":kp(i,o);break;case"language":zp(i,o);break;case"option-picker":Lp(i,o);break;case"agents":$p(i,o);break;case"agent-detail":Gp(i,o);break;case"agent-new":Mp(i,o);break}i.requestRender()}function wu(i,o){let n=o.clients[o.clientIdx];if(!n)return;let e=yo[n.client.id]||vo,d=Lo(n.launchOptions,o.zh),u=n.activeProvider?.name||(o.zh?"\u672A\u914D\u7F6E":"Not set"),t=i.terminalHeight<26,a=`${o.zh?"\u670D\u52A1\u5546":"Provider"}: ${u}`,r=`${a} \xB7 tako ${_e}`,{root:p,panel:c}=li(i,o,"Tako Launcher",e.color,t?{text:r,color:n.activeProvider?x.orange:x.yellow}:void 0,t);if(sp(i,c,o.zh?"\u591A\u5BA2\u6237\u7AEF AI \u542F\u52A8\u5668":"Multi-client AI launcher",e.color),!t){let L=q(i,{flexDirection:"row",gap:1,justifyContent:"center"});f(L,i,a,{fg:n.activeProvider?x.orange:x.yellow,truncate:!0}),c.add(L)}let l=q(i,{flexDirection:"row",flexWrap:"wrap",gap:1,justifyContent:"center"}),m=o.focus==="tabs";o.clients.forEach((L,W)=>{let M=yo[L.client.id]||vo,Q=W===o.clientIdx,ei=q(i,{border:!0,borderStyle:Q&&m?"heavy":"single",borderColor:Q?M.color:x.border,paddingX:1,height:3,backgroundColor:Q&&m?x.panelMuted:x.panel});f(ei,i,`${Q&&m?"> ":""}${W+1} ${M.icon} ${L.client.name}`,{fg:Q?M.color:x.muted,attributes:Q?F.BOLD:F.NONE}),l.add(ei)}),c.add(l);let w=q(i,{flexDirection:"row",gap:2,flexGrow:t?1:0}),y=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:o.focus==="projects"?e.color:x.border,title:o.zh?"\u9879\u76EE":"Projects",titleColor:o.focus==="projects"?e.color:x.muted,paddingX:1,paddingY:1,width:"58%"});Wi(i,y,n.projects.map((L,W)=>({primary:L.label,secondary:L.hint,focused:o.focus==="projects"&&W===o.projectIdx,color:e.color})));let v=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:o.focus==="options"?e.color:x.border,title:o.zh?"\u542F\u52A8\u9009\u9879":"Options",titleColor:o.focus==="options"?e.color:x.muted,paddingX:1,paddingY:1,flexGrow:1});Wi(i,v,d.map((L,W)=>{let M=o.focus==="options"&&W===o.optionIdx;if(L.kind==="flag"){let Q=n.enabled.has(L.opt.id);return{primary:L.opt.label[o.zh?"zh":"en"]||L.opt.label.en,secondary:M?L.opt.flag:void 0,focused:M,marker:Q?"[x]":"[ ]",color:Q?e.color:x.muted}}if(L.kind==="group"){let Q=Zo(n.launchOptions,n.enabled,L.group);return{primary:`${L.title}: ${Q?.shortLabel||(o.zh?"\u9ED8\u8BA4":"Default")}`,secondary:M?o.zh?"Enter \u9009\u62E9":"Enter to pick":void 0,focused:M,marker:">",color:e.color}}return{primary:`${L.title}: ${u}`,secondary:M?o.zh?"Enter \u7BA1\u7406":"Enter to manage":void 0,focused:M,marker:"*",color:n.activeProvider?e.color:x.yellow}})),w.add(y),w.add(v),c.add(w);let s=o.focus==="tabs"?["\u2190\u2192",o.zh?"\u5207\u5BA2\u6237\u7AEF":"switch client"]:o.focus==="projects"?["\u2192",o.zh?"\u53BB\u9009\u9879":"to options"]:["\u2190",o.zh?"\u53BB\u9879\u76EE":"to projects"];ti(i,p,[["Enter",o.zh?"\u542F\u52A8":"launch"],s,["\u2191\u2193",o.zh?"\u9009\u62E9":"move"],["Space",o.zh?"\u5207\u6362\u9009\u9879":"toggle"],["p",o.zh?"\u670D\u52A1\u5546":"providers"],["c","config"],["s","stats"],["a","agents"],["q",o.zh?"\u9000\u51FA":"quit"]]),oi(i,o,p)}function Lp(i,o){let n=o.clients[o.clientIdx],e=o.optionPickerGroup;if(!n||!e){wu(i,o);return}let d=n.launchOptions.filter((s)=>s.group===e),u=(yo[n.client.id]||vo).color,t=e==="model"?o.zh?"\u9009\u62E9\u6A21\u578B":"Pick Model":o.zh?"\u9009\u62E9\u9009\u9879":"Pick Option",a=Zo(n.launchOptions,n.enabled,e),r=[{id:"",primary:o.zh?"\u9ED8\u8BA4":"Default",secondary:a?"":o.zh?"\u5F53\u524D":"current"},...d.map((s)=>({id:s.id,primary:s.shortLabel||s.label[o.zh?"zh":"en"]||s.label.en,secondary:n.enabled.has(s.id)?o.zh?"\u5F53\u524D":"current":s.flag}))],p=r.length;o.optionPickerIdx=Math.max(0,Math.min(o.optionPickerIdx,p-1));let c=Math.max(5,Math.min(14,i.terminalHeight-10)),l=Math.max(0,Math.min(o.optionPickerIdx-Math.floor(c/2),Math.max(0,p-c))),m=r.slice(l,l+c),w=q(i,{flexDirection:"column",width:"100%",...lu(i),backgroundColor:x.bg,justifyContent:"center",alignItems:"center",paddingX:2}),y=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:u,backgroundColor:x.panel,paddingX:2,paddingY:1,gap:1,width:"70%"}),v=q(i,{flexDirection:"row",justifyContent:"space-between"});f(v,i,t,{fg:u,attributes:F.BOLD}),f(v,i,`${o.optionPickerIdx+1}/${p}`,{fg:x.muted}),y.add(v),Wi(i,y,m.map((s,L)=>{let W=l+L;return{primary:s.primary,secondary:s.secondary,focused:W===o.optionPickerIdx,marker:s.id&&n.enabled.has(s.id)?"[x]":" ",color:u}})),f(y,i,o.zh?"Esc \u8FD4\u56DE\uFF0C\u4E0D\u4FEE\u6539\u5F53\u524D\u9009\u62E9":"Esc returns without changing the current selection",{fg:x.muted,truncate:!0}),w.add(y),ti(i,w,[["Enter",o.zh?"\u786E\u8BA4":"confirm"],["\u2191\u2193",o.zh?"\u9009\u62E9":"select"],["Esc/q",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,w)}function hp(i,o){let e=o.clients[o.providerTabIdx]?.client,d=e?o.providers.filter((w)=>Bi(w,e.id)):[],u=e?o.clientBindings[e.id]||o.defaultProviderId:o.defaultProviderId,t=d.length+3;o.providerRowIdx=Math.max(0,Math.min(o.providerRowIdx,Math.max(0,t-1)));let a=e?(yo[e.id]||vo).color:x.orange,{root:r,panel:p}=li(i,o,o.zh?"\u670D\u52A1\u5546\u7BA1\u7406":"Providers",a),c=q(i,{flexDirection:"row",gap:1,justifyContent:"center"});o.clients.forEach((w,y)=>{let v=yo[w.client.id]||vo,s=y===o.providerTabIdx,L=q(i,{border:!0,borderStyle:s?"heavy":"single",borderColor:s?v.color:x.border,paddingX:1,height:3});f(L,i,`${y+1} ${w.client.name}`,{fg:s?v.color:x.muted,attributes:s?F.BOLD:F.NONE}),c.add(L)}),p.add(c);let l=[...d.map((w)=>({primary:w.name,secondary:[Ei[w.type]?.[o.zh?"zh":"en"]||w.type,w.id===u?o.zh?"\u5F53\u524D":"bound":"",w.id===o.defaultProviderId?o.zh?"\u9ED8\u8BA4":"default":""].filter(Boolean).join(" "),marker:w.id===u?"*":" "})),{primary:o.zh?"\u6DFB\u52A0\u670D\u52A1\u5546":"Add provider",secondary:"",marker:"+"},{primary:o.zh?"\u626B\u63CF\u672C\u5730\u8BA2\u9605":"Scan local subscriptions",secondary:"",marker:"?"},{primary:o.zh?"\u8FD4\u56DE":"Back",secondary:"",marker:"<"}],m=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:a,paddingX:1,paddingY:1});Wi(i,m,l.map((w,y)=>({...w,focused:y===o.providerRowIdx,color:a}))),p.add(m),ti(i,r,[["Enter",o.zh?"\u7ED1\u5B9A/\u6253\u5F00":"bind/open"],["d/e",o.zh?"\u8BE6\u60C5":"detail"],["arrows",o.zh?"\u9009\u62E9":"select"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,r)}function Wp(i,o){let n=To(o),{root:e,panel:d}=li(i,o,o.zh?"\u670D\u52A1\u5546\u8BE6\u60C5":"Provider Detail",x.orange);if(!n)f(d,i,o.zh?"\u670D\u52A1\u5546\u4E0D\u5B58\u5728":"Provider not found",{fg:x.red});else{let u=[["Name",n.name],["Type",Ei[n.type]?.[o.zh?"zh":"en"]||n.type],["Base URL",n.baseUrl||"-"],["Model",n.model||"-"],["Email",n.email||"-"],["Builtin",n.builtin?"yes":"no"]];for(let[a,r]of u)f(d,i,`${a}: ${r}`,{fg:x.text,truncate:!0});let t=kn(n,o);Wi(i,d,t.map((a,r)=>({primary:uu(a,o.zh),focused:r===o.providerDetailIdx,marker:r===o.providerDetailIdx?">":" ",color:x.orange})))}ti(i,e,[["Enter",o.zh?"\u6267\u884C":"run"],["arrows",o.zh?"\u9009\u62E9":"select"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,e)}function Np(i,o){let{root:n,panel:e}=li(i,o,o.zh?"\u6DFB\u52A0\u670D\u52A1\u5546":"Add Provider",x.orange);Wi(i,e,so.map((d,u)=>({primary:Ei[d]?.[o.zh?"zh":"en"]||d,secondary:d==="claude-subscription"||d==="codex-subscription"?o.zh?"\u767B\u5F55\u6388\u6743":"login auth":d==="custom"?o.zh?"\u81EA\u5B9A\u4E49 URL":"custom URL":"",focused:u===o.providerRowIdx,marker:"+",color:x.orange}))),ti(i,n,[["Enter",o.zh?"\u9009\u62E9":"select"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,n)}function bp(i,o){let n={"add-key":o.zh?"\u8F93\u5165 API Key":"Enter API key","add-url":o.zh?"\u8F93\u5165 Base URL":"Enter base URL","add-model":o.zh?"\u9009\u62E9/\u8F93\u5165\u6A21\u578B":"Select/enter model","add-ctx":o.zh?"\u8F93\u5165\u4E0A\u4E0B\u6587\u7A97\u53E3 token \u6570":"Enter context window tokens",rekey:o.zh?"\u66F4\u65B0 API Key":"Update API key"},{root:e,panel:d}=li(i,o,n[o.providerInputMode],x.orange),u=o.providerInputMode==="add-model"?Jo(o.addType):void 0;if(u)Wi(i,d,u.map((t,a)=>({primary:t,focused:a===o.providerRowIdx,marker:a===o.providerRowIdx?">":" ",color:x.orange})));else{let t=o.providerInputMode==="add-key"||o.providerInputMode==="rekey"?De(o.addKey):o.providerInputMode==="add-url"?o.addUrl:o.providerInputMode==="add-model"?o.addModel:o.addCtx;f(d,i,`> ${t}_`,{fg:x.text,truncate:!0})}ti(i,e,[["Enter",o.zh?"\u7EE7\u7EED":"continue"],["Backspace",o.zh?"\u5220\u9664":"delete"],["q/Esc",o.zh?"\u53D6\u6D88":"cancel"]]),oi(i,o,e)}function fp(i,o){let{root:n,panel:e}=li(i,o,o.zh?"\u7528\u91CF\u7EDF\u8BA1":"Usage Stats",x.green);if(o.statsLoading)f(e,i,o.zh?"\u6B63\u5728\u83B7\u53D6...":"Loading...",{fg:x.yellow});else if(o.statsError)f(e,i,`${o.zh?"\u83B7\u53D6\u5931\u8D25":"Failed"}: ${o.statsError}`,{fg:x.red});else if(o.statsData){if(f(e,i,`${o.zh?"\u603B\u8C03\u7528\u6B21\u6570":"Total requests"}: ${cu(o.statsData.totalRequests)}`),f(e,i,`${o.zh?"\u603B\u6D88\u8D39":"Total cost"}: ${o.statsData.totalCost}`),f(e,i,`${o.zh?"\u4ECA\u65E5\u6D88\u8D39":"Today"}: ${o.statsData.todayCost}`),o.statsData.modelStats.length>0){f(e,i,o.zh?"\u6A21\u578B\u5206\u5E03:":"Models:",{fg:x.muted});for(let d of o.statsData.modelStats.slice(0,12))f(e,i,`${d.model.padEnd(28)} ${String(d.requests).padStart(6)} ${d.cost}`,{fg:x.muted,truncate:!0})}}else f(e,i,o.zh?"\u6682\u65E0\u6570\u636E":"No data",{fg:x.muted});ti(i,n,[["r",o.zh?"\u5237\u65B0":"refresh"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,n)}function kp(i,o){let{root:n,panel:e}=li(i,o,o.zh?"\u914D\u7F6E API Key":"Configure API key",x.orange);if(f(e,i,`> ${De(o.apiKeyValue)}_`,{truncate:!0}),o.apiKeyStatus==="validating")f(e,i,o.zh?"\u6B63\u5728\u9A8C\u8BC1...":"Validating...",{fg:x.yellow});if(o.apiKeyStatus==="success")f(e,i,o.zh?"\u914D\u7F6E\u6210\u529F":"Configured",{fg:x.green});if(o.apiKeyStatus==="error")f(e,i,o.apiKeyError||"Error",{fg:x.red});ti(i,n,[["Enter",o.zh?"\u4FDD\u5B58":"save"],["Backspace",o.zh?"\u5220\u9664":"delete"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,n)}function zp(i,o){let{root:n,panel:e}=li(i,o,o.zh?"\u5207\u6362\u8BED\u8A00":"Language",x.magenta);Wi(i,e,Yi.map((d,u)=>({primary:d.label,secondary:d.value===Ri()?o.zh?"\u5F53\u524D":"current":"",focused:u===o.languageIdx,marker:u===o.languageIdx?">":" ",color:x.magenta}))),ti(i,n,[["Enter",o.zh?"\u9009\u62E9":"select"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,n)}function $p(i,o){let{root:n,panel:e}=li(i,o,o.zh?"Agent \u4F1A\u8BDD":"Agent Sessions",x.blue);if(f(e,i,`${o.zh?"\u9ED8\u8BA4 Provider":"Defaults"}: ${Object.keys(o.agentDefaults).length===0?"-":Object.entries(o.agentDefaults).map(([d,u])=>`${d}=${u.slice(0,8)}`).join(" ")}`,{fg:x.muted,truncate:!0}),!o.agentSessions)f(e,i,o.zh?"\u52A0\u8F7D\u4E2D...":"Loading...",{fg:x.yellow});else if(o.agentSessions.length===0)f(e,i,o.zh?"\u6682\u65E0 session\uFF0C\u6309 n \u65B0\u5EFA":"No sessions, press n to create",{fg:x.muted});else Wi(i,e,o.agentSessions.map((d,u)=>({primary:`${d.sid.slice(0,8)} ${d.backend.padEnd(6)} ${(d.name||"").slice(0,18).padEnd(18)} ${d.status}`,secondary:`${d.turnCount} turns ${je(Date.now()-d.lastActiveAt)}`,focused:u===o.agentIdx,marker:tu(d.status),color:i0(d.status)})));if(o.agentError)f(e,i,`! ${o.agentError}`,{fg:x.red,truncate:!0});ti(i,n,[["Enter/o",o.zh?"\u8BE6\u60C5":"open"],["n",o.zh?"\u65B0\u5EFA":"new"],["d",o.zh?"\u5173\u95ED":"close"],["x",o.zh?"\u5220\u9664":"purge"],["r",o.zh?"\u5237\u65B0":"refresh"],["q/Esc",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,n)}function gp(i){let o=new Date(i.ts).toISOString().slice(11,19);switch(i.kind){case"session_started":return{text:`[${o}] session_started ${i.backend}${i.model?` ${i.model}`:""}`,dim:!0};case"turn_started":return{text:`[${o}] turn_started`,color:x.cyan};case"text_delta":return{text:i.text};case"reasoning_delta":return{text:`[${o}] reasoning ${i.text}`,dim:!0};case"tool_use":return{text:`[${o}] tool ${i.name} ${JSON.stringify(i.input)}`,color:x.yellow};case"tool_result":return{text:`[${o}] result ${JSON.stringify(i.output)}`,color:x.green};case"approval_required":return{text:`[${o}] approval ${i.approvalType} ${String(i.approvalId)}`,color:x.magenta};case"turn_completed":return{text:`[${o}] turn_completed${i.stopReason?` ${i.stopReason}`:""}`,color:x.cyan};case"error":return{text:`[${o}] error ${i.message}`,color:x.red};case"session_closed":return{text:`[${o}] session_closed`,dim:!0}}}function Gp(i,o){let n=o.agentDetailMeta,{root:e,panel:d}=li(i,o,o.zh?"Agent \u8BE6\u60C5":"Agent Detail",x.blue);if(!n){f(d,i,o.zh?"\u52A0\u8F7D\u4E2D...":"Loading...",{fg:x.yellow}),oi(i,o,e);return}if(f(d,i,`${n.sid.slice(0,8)} ${n.backend} ${n.name} ${n.status}${o.agentDetailAlive===!1?" dead":""}`,{fg:i0(n.status),attributes:F.BOLD,truncate:!0}),f(d,i,`${o.zh?"\u5DE5\u4F5C\u76EE\u5F55":"cwd"}: ${n.workdir}`,{fg:x.muted,truncate:!0}),f(d,i,`${o.zh?"\u6A21\u578B":"model"}: ${n.model||"-"} turns=${n.turnCount} ${o.zh?"\u6700\u8FD1":"last"}=${je(Date.now()-n.lastActiveAt)}`,{fg:x.muted,truncate:!0}),o.agentPendingApprovals.length>0){let r=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:x.magenta,paddingX:1});f(r,i,`${o.agentPendingApprovals.length} ${o.zh?"\u4E2A\u5F85\u5BA1\u6279":"pending approvals"}`,{fg:x.magenta,attributes:F.BOLD});for(let p of o.agentPendingApprovals.slice(0,3))f(r,i,`${p.approvalType} ${p.approvalId.slice(0,12)} ${JSON.stringify(p.params)}`,{fg:x.muted,truncate:!0});d.add(r)}let u=q(i,{flexDirection:"column",border:!0,borderStyle:"rounded",borderColor:x.border,paddingX:1,title:o.zh?"\u65E5\u5FD7":"Log",titleColor:x.muted}),t=o.agentDetailFrames.slice(-Math.max(6,Math.min(18,i.terminalHeight-14)));if(t.length===0)f(u,i,o.zh?"\u6682\u65E0\u65E5\u5FD7":"No log yet",{fg:x.muted});else for(let r of t){let p=gp(r);f(u,i,p.text.replace(/\s+/g," ").slice(0,240),{fg:p.color||(p.dim?x.muted:x.text),truncate:!0})}if(d.add(u),o.agentError)f(d,i,`! ${o.agentError}`,{fg:x.red,truncate:!0});let a=o.agentDetailStatus==="sending"?"... ":o.agentDetailStatus==="cancelling"?"x ":"> ";f(d,i,`${a}${o.agentDetailInput}_`,{fg:o.agentDetailStatus==="idle"?x.text:x.yellow,truncate:!0}),ti(i,e,[["Enter",o.zh?"\u53D1\u9001":"send"],["Ctrl-Y/N",o.zh?"\u6279/\u62D2":"approve/deny"],["r",o.zh?"\u5237\u65B0":"refresh"],["Ctrl-C",o.zh?"\u53D6\u6D88":"cancel"],["Esc/q",o.zh?"\u8FD4\u56DE":"back"]]),oi(i,o,e)}function Mp(i,o){let{root:n,panel:e}=li(i,o,o.zh?"\u65B0\u5EFA Agent Session":"New Agent Session",x.blue),d=[{id:"backend",label:`${o.zh?"\u540E\u7AEF":"Backend"}: ${o.agentBackend==="claude"?"[claude] codex":"claude [codex]"}`},{id:"model",label:`${o.zh?"\u6A21\u578B":"Model"}: ${o.agentModel||(o.zh?"\u9ED8\u8BA4":"default")}`},{id:"name",label:`${o.zh?"\u540D\u79F0":"Name"}: ${o.agentName||(o.zh?"\u81EA\u52A8":"auto")}`}];if(Wi(i,e,d.map((u)=>({primary:u.label+(o.agentField===u.id&&u.id!=="backend"?"_":""),focused:o.agentField===u.id,marker:o.agentField===u.id?">":" ",color:x.blue}))),o.agentError)f(e,i,`! ${o.agentError}`,{fg:x.red,truncate:!0});ti(i,n,[["Tab/arrows",o.zh?"\u5207\u5B57\u6BB5":"field"],["Space",o.zh?"\u5207\u540E\u7AEF":"backend"],["Enter",o.zh?"\u521B\u5EFA":"create"],["q/Esc",o.zh?"\u53D6\u6D88":"cancel"]]),oi(i,o,n)}ui();Gi();pi();Cn();Ti();async function Ii(i){i.providers=await Z(),i.defaultProviderId=(await D())?.id;let o={};for(let n of i.clients)o[n.client.id]=(await qi(n.client.id))?.id;i.clientBindings=o}async function jo(i){i.screen="providers",i.message="",i.providerTabIdx=i.clientIdx,i.providerRowIdx=0,await Ii(i)}async function Hn(i){i.screen="stats",i.message="",i.statsLoading=!0,i.statsError=void 0;let o=await pu();if(o.success&&o.data)i.statsData=o.data;else i.statsError=o.error||(i.zh?"\u672A\u77E5\u9519\u8BEF":"Unknown error");i.statsLoading=!1}async function bi(i){i.screen="agents",i.message="",i.agentError=void 0;let[o,n]=await Promise.all([Jn(),Rn()]);i.agentSessions=o,i.agentDefaults=n,i.agentIdx=Math.max(0,Math.min(i.agentIdx,o.length-1))}async function Oi(i){let o=i.agentDetailSid;if(!o)return;let[n,e]=await Promise.all([Bn(o,200),Vo(o)]);if(!n){i.agentError=i.zh?"Session \u4E0D\u5B58\u5728":"Session not found",i.screen="agents",await bi(i);return}i.agentDetailMeta=n.meta,i.agentDetailFrames=n.log,i.agentDetailAlive=n.alive,i.agentPendingApprovals=e}async function Vu(i,o){i.screen="agent-detail",i.agentDetailSid=o,i.agentDetailInput="",i.agentDetailStatus="idle",i.agentError=void 0,await Oi(i)}function $o(i){i.screen="launcher",i.message="",i.apiKeyStatus="idle",i.apiKeyError=void 0}function Fu(i){try{if(process.stdin.isTTY)process.stdin.setRawMode(i)}catch{}}function mc(i){return i==="claude"?["claude","auth","login","--claudeai"]:["codex","login"]}async function Uu(i){let o=mc(i);Fu(!1);try{let n=Bun.spawn(o,{stdin:"inherit",stdout:"inherit",stderr:"inherit"});return await n.exited,{ok:n.exitCode===0,exitCode:n.exitCode}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}finally{Fu(!1)}}async function Eu(i,o){let{invalidateQuotaCache:n}=await Promise.resolve().then(() => (N0(),Xu)),e=await Z();if(i==="claude")try{let d=Bun.spawn(["claude","auth","status"],{stdout:"pipe",stderr:"pipe"}),u=await new Response(d.stdout).text();await d.exited;let t=JSON.parse(u.trim());if(!t.loggedIn||t.authMethod!=="claude.ai")return{ok:!1,message:o?"Claude \u767B\u5F55\u672A\u5B8C\u6210":"Claude login not completed"};let a=t.email||"",r=t.subscriptionType||"pro",p=`Claude ${r.charAt(0).toUpperCase()+r.slice(1)}${a?` (${a})`:""}`,{readClaudeAuth:c}=await Promise.resolve().then(() => (vn(),yn)),l=await c(),m=l.credentials||l.oauthAccount?{credentials:l.credentials,oauthAccount:l.oauthAccount}:void 0,w=e.find((y)=>y.type==="claude-subscription"&&(y.email||"")===a);if(w)return await Ci(w.id,{authData:m}),n(w.id,"claude-subscription"),X(),A(),{ok:!0,message:o?"Claude tokens \u5DF2\u66F4\u65B0":"Claude tokens updated"};else return await ji({name:p,type:"claude-subscription",email:a,subscriptionType:r,supportedClients:_("claude-subscription"),authData:m}),X(),A(),{ok:!0,message:o?"Claude \u8BA2\u9605\u5DF2\u6DFB\u52A0":"Claude subscription added"}}catch(d){return{ok:!1,message:d instanceof Error?d.message:String(d)}}else try{let d=await import("fs/promises"),{homedir:u}=await import("os"),{join:t}=await import("path"),a=JSON.parse(await d.readFile(t(u(),".codex","auth.json"),"utf-8"));if(a.auth_mode!=="chatgpt"||!a.tokens?.access_token)return{ok:!1,message:o?"Codex \u767B\u5F55\u672A\u5B8C\u6210":"Codex login not completed"};let r="";try{r=JSON.parse(atob(a.tokens.id_token.split(".")[1])).email||""}catch{}let p=e.find((c)=>c.type==="codex-subscription"&&(c.email||"")===r);if(p)return await Ci(p.id,{authData:a}),n(p.id,"codex-subscription"),X(),A(),{ok:!0,message:o?"Codex tokens \u5DF2\u66F4\u65B0":"Codex tokens updated"};else return await ji({name:r?`Codex Plus (${r})`:"Codex Subscription",type:"codex-subscription",email:r||void 0,supportedClients:_("codex-subscription"),authData:a}),X(),A(),{ok:!0,message:o?"Codex \u8BA2\u9605\u5DF2\u6DFB\u52A0":"Codex subscription added"}}catch(d){return{ok:!1,message:d instanceof Error?d.message:String(d)}}}async function Yn(i){let o=Ei[i.addType]?.[i.zh?"zh":"en"]||i.addType,n=i.addCtx?Number.parseInt(i.addCtx,10):NaN;await ji({name:o,type:i.addType,apiKey:i.addKey,baseUrl:i.addUrl||fe(i.addType),model:i.addModel||Po(i.addType),modelContextWindow:Number.isFinite(n)&&n>0?n:void 0,supportedClients:_(i.addType)}),J("provider_added",{provider_type:i.addType,method:"manual"}),X(),A(),await Ii(i),await ci(i),i.screen="providers",i.providerRowIdx=0,i.message=i.zh?"\u5DF2\u6DFB\u52A0\u670D\u52A1\u5546":"Provider added"}ui();Gi();Cn();Ti();pi();function _u(i,o,n,e,d){let u=o.clients[o.clientIdx];if(!u)return;let t=Lo(u.launchOptions,o.zh),a=i.name,r=ii(i);if(a==="q"||a==="escape"){e({type:"exit"});return}if(r&&a==="a"){d(()=>bi(o));return}if(r&&a==="p"){d(()=>jo(o));return}if(r&&a==="s"){d(()=>Hn(o));return}if(r&&a==="c"){o.screen="config",o.apiKeyValue="",o.apiKeyStatus="idle",o.apiKeyError=void 0,z(n,o);return}if(r&&a==="l"){o.screen="language",z(n,o);return}let p=Number.parseInt(a,10);if(r&&p>=1&&p<=o.clients.length){o.clientIdx=p-1,Io(o),z(n,o);return}if(a==="tab"){if(i.shift)o.clientIdx=o.clientIdx>0?o.clientIdx-1:o.clients.length-1;else o.clientIdx=o.clientIdx<o.clients.length-1?o.clientIdx+1:0;Io(o),z(n,o);return}if(a==="left"){if(o.focus==="tabs")o.clientIdx=o.clientIdx>0?o.clientIdx-1:o.clients.length-1,Io(o);else if(o.focus==="options")o.focus="projects",o.projectIdx=Math.min(o.projectIdx,u.projects.length-1);z(n,o);return}if(a==="right"){if(o.focus==="tabs")o.clientIdx=o.clientIdx<o.clients.length-1?o.clientIdx+1:0,Io(o);else if(o.focus==="projects"&&t.length>0)o.focus="options",o.optionIdx=Math.min(o.optionIdx,t.length-1);z(n,o);return}if(a==="down"){if(o.focus==="tabs")o.focus="projects";else if(o.focus==="projects"){if(o.projectIdx<u.projects.length-1)o.projectIdx+=1}else if(o.optionIdx<t.length-1)o.optionIdx+=1;z(n,o);return}if(a==="up"){if(o.focus==="options")if(o.optionIdx>0)o.optionIdx-=1;else o.focus="tabs";else if(o.focus==="projects")if(o.projectIdx>0)o.projectIdx-=1;else o.focus="tabs";z(n,o);return}if((a==="space"||a==="return")&&o.focus==="options"){let c=t[o.optionIdx];if(c?.kind==="provider"){d(()=>jo(o));return}if(c?.kind==="flag"){if(u.enabled.has(c.opt.id))u.enabled.delete(c.opt.id);else u.enabled.add(c.opt.id);z(n,o);return}if(c?.kind==="group"){let l=u.launchOptions.filter((y)=>y.group===c.group),m=Zo(u.launchOptions,u.enabled,c.group),w=m?l.findIndex((y)=>y.id===m.id)+1:0;o.optionPickerGroup=c.group,o.optionPickerIdx=Math.max(0,w),o.screen="option-picker",z(n,o);return}}if(a==="return"){let c=u.projects[o.projectIdx],l=eu(u);e({type:"launch",clientId:u.client.id,projectPath:c?.path,...l})}}function Du(i,o,n){let e=o.clients[o.clientIdx],d=o.optionPickerGroup;if(!e||!d){o.screen="launcher",z(n,o);return}let u=e.launchOptions.filter((r)=>r.group===d),t=u.length+1,a=i.name;if(a==="escape"||ii(i)&&a==="q"){o.screen="launcher",z(n,o);return}if(a==="up"){o.optionPickerIdx=o.optionPickerIdx>0?o.optionPickerIdx-1:t-1,z(n,o);return}if(a==="down"){o.optionPickerIdx=o.optionPickerIdx<t-1?o.optionPickerIdx+1:0,z(n,o);return}if(a==="return"||a==="space"){for(let r of u)e.enabled.delete(r.id);if(o.optionPickerIdx>0){let r=u[o.optionPickerIdx-1];if(r)e.enabled.add(r.id)}o.screen="launcher",z(n,o)}}function ju(i,o,n,e){let d=o.clients[o.providerTabIdx]?.client,u=d?o.providers.filter((p)=>Bi(p,d.id)):[],t=u.length+3,a=i.name,r=ii(i);if(a==="left")o.providerTabIdx=o.providerTabIdx>0?o.providerTabIdx-1:o.clients.length-1;else if(a==="right")o.providerTabIdx=o.providerTabIdx<o.clients.length-1?o.providerTabIdx+1:0;else if(a==="up")o.providerRowIdx=o.providerRowIdx>0?o.providerRowIdx-1:t-1;else if(a==="down")o.providerRowIdx=o.providerRowIdx<t-1?o.providerRowIdx+1:0;else if(r&&(a==="d"||a==="e")&&o.providerRowIdx<u.length)o.providerSelectedId=u[o.providerRowIdx].id,o.providerDetailIdx=0,o.screen="provider-detail";else if(a==="return"){if(o.providerRowIdx<u.length&&d){let p=u[o.providerRowIdx];e(async()=>{await Qe(d.id,p.id);let c;if(d.setupConfigFiles)try{await d.setupConfigFiles(O(p))}catch(l){c=l instanceof Error?l.message:String(l)}if(await Ii(o),await ci(o),o.clientIdx=o.clients.findIndex((l)=>l.client.id===d.id),o.clientIdx<0)o.clientIdx=0;$o(o),o.message=c?o.zh?`\u670D\u52A1\u5546\u5DF2\u7ED1\u5B9A\uFF0C\u914D\u7F6E\u540C\u6B65\u5931\u8D25\uFF1A${c}`:`Provider bound, config sync failed: ${c}`:o.zh?"\u670D\u52A1\u5546\u5DF2\u7ED1\u5B9A":"Provider bound"});return}if(o.providerRowIdx===u.length)o.screen="provider-add-type",o.providerRowIdx=0;else if(o.providerRowIdx===u.length+1){e(async()=>{let p=await Ko(),c=await Bo(p);if(c>0)X(),A();await Ii(o),await ci(o),o.message=o.zh?`\u626B\u63CF\u5B8C\u6210\uFF0C\u65B0\u589E ${c} \u4E2A`:`Scan complete, ${c} added`});return}else $o(o)}z(n,o)}function it(i,o,n,e,d){let u=To(o);if(!u){o.screen="providers",z(n,o);return}let t=kn(u,o);if(i.name==="up"||i.name==="left")o.providerDetailIdx=o.providerDetailIdx>0?o.providerDetailIdx-1:t.length-1;else if(i.name==="down"||i.name==="right")o.providerDetailIdx=o.providerDetailIdx<t.length-1?o.providerDetailIdx+1:0;else if(i.name==="return"){let a=t[o.providerDetailIdx];if(a==="back")o.screen="providers";if(a==="default"){d(async()=>{await qe(u.id),await Ii(o),await ci(o),o.screen="providers",o.message=o.zh?"\u5DF2\u8BBE\u4E3A\u9ED8\u8BA4":"Set as default"});return}if(a==="delete"){d(async()=>{await Se(u.id),await Ii(o),await ci(o),o.screen="providers",o.message=o.zh?"\u5DF2\u5220\u9664":"Deleted"});return}if(a==="rekey")o.addType=u.type,no(o,"rekey");if(a==="relogin"){e({type:"provider-login",tool:u.type==="codex-subscription"?"codex":"claude"});return}}z(n,o)}function ot(i,o,n,e){if(i.name==="up")o.providerRowIdx=o.providerRowIdx>0?o.providerRowIdx-1:so.length-1;else if(i.name==="down")o.providerRowIdx=o.providerRowIdx<so.length-1?o.providerRowIdx+1:0;else if(i.name==="return"){if(o.addType=so[o.providerRowIdx],o.addType==="claude-subscription"||o.addType==="codex-subscription"){e({type:"provider-login",tool:o.addType==="codex-subscription"?"codex":"claude"});return}no(o,"add-key")}z(n,o)}function nt(i,o,n,e){let d=i.name,u=o.providerInputMode==="add-model"?Jo(o.addType):void 0;if(u){if(d==="up")o.providerRowIdx=o.providerRowIdx>0?o.providerRowIdx-1:u.length-1;else if(d==="down")o.providerRowIdx=o.providerRowIdx<u.length-1?o.providerRowIdx+1:0;else if(d==="return"){o.addModel=u[o.providerRowIdx],e(()=>Yn(o));return}z(n,o);return}if(d==="backspace"||d==="delete")Wo(o);else if(d==="return"){if(o.providerInputMode==="rekey"){let t=To(o);if(!t)return;e(async()=>{await Ci(t.id,{apiKey:o.addKey}),await Ii(o),await ci(o),o.screen="providers",o.message=o.zh?"Key \u5DF2\u66F4\u65B0":"Key updated"});return}if(o.providerInputMode==="add-key"&&o.addKey)if(o.addType==="custom")no(o,"add-url");else no(o,"add-model");else if(o.providerInputMode==="add-url")no(o,"add-model");else if(o.providerInputMode==="add-model"){if(o.addModel.trim())no(o,"add-ctx");else e(()=>Yn(o));return}else if(o.providerInputMode==="add-ctx"){e(()=>Yn(o));return}}else No(o,ho(i));z(n,o)}function et(i,o,n,e){let d=i.name,u=o.agentSessions||[];if(d==="up")o.agentIdx=o.agentIdx>0?o.agentIdx-1:Math.max(0,u.length-1);else if(d==="down")o.agentIdx=o.agentIdx<u.length-1?o.agentIdx+1:0;else if(ii(i)&&d==="r"){e(()=>bi(o));return}else if(ii(i)&&d==="n")o.screen="agent-new",o.agentBackend="claude",o.agentModel="",o.agentName="",o.agentField="backend",o.agentError=void 0;else if((d==="return"||ii(i)&&d==="o")&&u[o.agentIdx]){e(()=>Vu(o,u[o.agentIdx].sid));return}else if(ii(i)&&d==="p"){e(async()=>{let t=await An();await bi(o),o.message=o.zh?`\u5DF2\u6E05\u7406 ${t} \u4E2A session`:`Purged ${t} sessions`});return}else if(ii(i)&&(d==="d"||d==="x")&&u[o.agentIdx]){let t=u[o.agentIdx];e(async()=>{await ko(t.sid,d==="x"),await bi(o),o.message=d==="x"?o.zh?"\u5DF2\u5220\u9664":"Purged":o.zh?"\u5DF2\u5173\u95ED":"Closed"});return}z(n,o)}function dt(i,o,n,e){let d=i.name,u=o.agentDetailSid;if(!u){e(()=>bi(o));return}if(i.ctrl&&d==="c"){if(o.agentDetailStatus==="sending"){o.agentDetailStatus="cancelling",z(n,o),Do(u).catch((t)=>{o.agentError=t instanceof Error?t.message:String(t)}).finally(()=>{o.agentDetailStatus="idle",Oi(o).finally(()=>z(n,o))});return}e(()=>bi(o));return}if(i.ctrl&&(d==="y"||d==="n")){let t=o.agentPendingApprovals[0];if(!t)return;e(async()=>{await Gn(u,t.approvalId,{decision:d==="y"?"allow":"deny",by:"tui",decidedAt:Date.now()}),await Oi(o),o.message=d==="y"?o.zh?"\u5DF2\u6279\u51C6":"Approved":o.zh?"\u5DF2\u62D2\u7EDD":"Denied"});return}if(d==="escape"||ii(i)&&d==="q"&&!o.agentDetailInput){e(()=>bi(o));return}if(ii(i)&&d==="r"){e(()=>Oi(o));return}if(d==="backspace"||d==="delete"){Wo(o),z(n,o);return}if(d==="return"){let t=o.agentDetailInput.trim();if(!t||o.agentDetailStatus!=="idle")return;o.agentDetailInput="",o.agentDetailStatus="sending",o.agentError=void 0,z(n,o),_o(u,t).catch((a)=>{o.agentError=a instanceof Error?a.message:String(a)}).finally(()=>{o.agentDetailStatus="idle",Oi(o).finally(()=>z(n,o))});return}No(o,ho(i)),z(n,o)}function ut(i,o,n,e){let d=i.name;if(d==="tab"||d==="down")o.agentField=o.agentField==="backend"?"model":o.agentField==="model"?"name":"backend";else if(d==="up")o.agentField=o.agentField==="backend"?"name":o.agentField==="model"?"backend":"model";else if((d==="space"||d==="left"||d==="right")&&o.agentField==="backend")o.agentBackend=o.agentBackend==="claude"?"codex":"claude";else if(d==="backspace"||d==="delete")Wo(o);else if(d==="return"){e(async()=>{try{let u=await Eo({backend:o.agentBackend,model:o.agentModel.trim()||void 0,name:o.agentName.trim()||void 0});await bi(o);let t=o.agentSessions?.findIndex((a)=>a.sid===u.sid)??-1;if(t>=0)o.agentIdx=t;o.message=o.zh?"Session \u5DF2\u521B\u5EFA":"Session created"}catch(u){o.agentError=u instanceof Error?u.message:String(u)}});return}else No(o,ho(i));z(n,o)}async function tt(i={}){let o=await au();if(i.screen==="providers")await jo(o);if(i.message)o.message=i.message;let n=await wc({exitOnCtrlC:!1,clearOnShutdown:!0,backgroundColor:x.bg});return new Promise((e)=>{let d=!1,u=!1,t,a=(l)=>{if(d)return;if(d=!0,t)clearInterval(t);n.keyInput.off("keypress",c),n.destroy(),du(),e(l)},r=(l)=>{if(o.busy)return;o.busy=!0,z(n,o),l().catch((m)=>{o.message=`! ${m instanceof Error?m.message:String(m)}`}).finally(()=>{o.busy=!1,z(n,o)})},p=(l)=>{if(n.terminalHeight>=Yo)return!1;let m=Math.max(1,n.terminalHeight-2);return o.scrollOffset=Math.max(0,o.scrollOffset+l*m),z(n,o),!0},c=(l)=>{if(l.eventType==="release"||o.busy)return;let m=l.name,w=ho(l),y=ii(l);if(m==="pagedown"&&p(1))return;if(m==="pageup"&&p(-1))return;if(o.screen==="agent-detail"){dt(l,o,n,r);return}if(l.ctrl&&m==="c"){a({type:"exit"});return}if(o.screen==="launcher"){_u(l,o,n,a,r);return}if(o.screen==="option-picker"){Du(l,o,n);return}if(m==="escape"||y&&m==="q"){if(o.screen==="provider-detail"||o.screen==="provider-add-type"||o.screen==="provider-input")o.screen="providers";else if(o.screen==="agent-new")o.screen="agents";else $o(o);z(n,o);return}if(o.screen==="providers"){ju(l,o,n,r);return}if(o.screen==="provider-detail"){it(l,o,n,a,r);return}if(o.screen==="provider-add-type"){ot(l,o,n,a);return}if(o.screen==="provider-input"){nt(l,o,n,r);return}if(o.screen==="stats"){if(y&&m==="r")r(()=>Hn(o));return}if(o.screen==="config"){if(m==="backspace"||m==="delete")Wo(o);else if(m==="return")r(async()=>{if(!o.apiKeyValue)return;o.apiKeyStatus="validating",z(n,o);let v=await iu(o.apiKeyValue);if(v.success)X(),A(),o.apiKeyStatus="success",await ci(o);else o.apiKeyStatus="error",o.apiKeyError=v.error||"Validation failed"});else No(o,w);z(n,o);return}if(o.screen==="language"){if(m==="up")o.languageIdx=o.languageIdx>0?o.languageIdx-1:Yi.length-1;if(m==="down")o.languageIdx=o.languageIdx<Yi.length-1?o.languageIdx+1:0;if(m==="return"){let v=Yi[o.languageIdx];ge(v.value),o.zh=v.value==="zh",o.message=o.zh?"\u8BED\u8A00\u5DF2\u5207\u6362":"Language changed",r(()=>ci(o).then(()=>$o(o)));return}z(n,o);return}if(o.screen==="agents"){et(l,o,n,r);return}if(o.screen==="agent-new")ut(l,o,n,r)};n.keyInput.on("keypress",c),n.on("resize",()=>z(n,o)),t=setInterval(()=>{if(d||u||o.busy||o.screen!=="agent-detail"||!o.agentDetailSid)return;u=!0,Oi(o).catch((l)=>{o.agentError=l instanceof Error?l.message:String(l)}).finally(()=>{if(u=!1,!d&&o.screen==="agent-detail")z(n,o)})},1000),t.unref?.(),o0(o),z(n,o),n.start()})}P();ui();var xc=2000,at=100;function fi(i){if(Mo||process.env.TAKO_DEBUG==="1")process.stderr.write(`[announcements] ${i}
526
- `)}function rt(i){if(!i)return null;if(i.type!=="tako"&&i.type!=="custom")return null;if(!i.baseUrl||!i.apiKey)return null;return{baseUrl:i.baseUrl.replace(/\/+$/,""),apiKey:i.apiKey}}async function yc(i,o){let n=`${i}/v1/announcements/popup`;try{let e=await fetch(n,{headers:{Authorization:`Bearer ${o}`},signal:AbortSignal.timeout(xc)});if(!e.ok)return fi(`HTTP ${e.status} from ${n}\uFF08par \u53EF\u80FD\u672A\u90E8\u7F72\u65B0\u8DEF\u7531 /v1/announcements/popup\uFF09`),null;let u=(await e.json())?.announcement;if(!u)return fi("\u8FD4\u56DE announcement=null\uFF08par \u540E\u53F0\u6CA1\u6709 published+popup=true \u7684\u516C\u544A\uFF09"),null;if(typeof u.id!=="string"||typeof u.title!=="string")return fi(`payload \u7F3A id/title\uFF0C\u4E22\u5F03\uFF1A${JSON.stringify(u)}`),null;return fi(`\u62C9\u5230\u516C\u544A id=${u.id} title=${u.title} popup_once=${!!u.popup_once}`),{id:u.id,title:u.title,content:u.content??"",type:u.type,popup_once:!!u.popup_once}}catch(e){return fi(`fetch \u5931\u8D25\uFF1A${e instanceof Error?e.message:String(e)}`),null}}async function vc(i){return((await N()).seenAnnouncementIds??[]).includes(i)}async function sc(i){let o=await N(),n=o.seenAnnouncementIds??[];if(n.includes(i))return;let e=[...n,i];if(e.length>at)e.splice(0,e.length-at);o.seenAnnouncementIds=e,await Y(o)}async function Lc(){let i=rt(await D());if(i)return i;for(let o of await Z()){let n=rt(o);if(n)return n}return null}async function pt(){let i=await Lc();if(!i){fi("\u8DF3\u8FC7\uFF1A\u6CA1\u6709\u53EF\u7528\u7684 tako/custom provider\uFF08apiKey + baseUrl\uFF09");return}fi(`\u67E5\u8BE2\u516C\u544A\uFF1A${i.baseUrl}/v1/announcements/popup`);let o=await yc(i.baseUrl,i.apiKey);if(!o)return;if(o.popup_once&&await vc(o.id)){fi(`\u5DF2\u5728 seenAnnouncementIds\uFF0C\u8DF3\u8FC7\uFF1A${o.id}`);return}if(fi(`\u5F39\u7A97\uFF1A${o.id}`),await Wd(o),o.popup_once)await sc(o.id),fi(`\u6807\u8BB0\u5DF2\u770B\u8FC7\uFF1A${o.id}`)}async function ct(){await Pe(),await Je(),await jd(),await Promise.race([Le(await Z()),new Promise((o)=>setTimeout(o,3000))]),await pt();let i;while(!0){let o=await tt(i);if(i=void 0,!o)break;if(o.type==="exit")break;if(o.type==="provider-login"){let a=Ri()==="zh",r=o.tool==="claude"?"Claude":"Codex";h.info(a?`\u6B63\u5728\u6253\u5F00 ${r} \u5B98\u65B9\u767B\u5F55\uFF0C\u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u5B8C\u6210\u6388\u6743...`:`Opening ${r} login; complete authorization in the browser...`);let p=await Uu(o.tool),c=await Eu(o.tool,a),l=c.message;if(!c.ok&&p.error)l=p.error;else if(!c.ok&&!p.ok&&p.exitCode!=null)l=a?`${r} \u767B\u5F55\u672A\u5B8C\u6210\uFF08\u9000\u51FA\u7801 ${p.exitCode}\uFF09`:`${r} login did not complete (exit ${p.exitCode})`;if(c.ok)h.success(c.message);else h.warn(l);i={screen:"providers",message:c.ok?c.message:`! ${l}`};continue}if(o.type!=="launch")continue;let n=E(o.clientId);if(!n)continue;J("menu_action",{action:"launch",client_id:o.clientId});let e=await fn(o.clientId);if(!e){h.warn(b("cli.noProvider")||"\u672A\u914D\u7F6E\u53EF\u7528\u7684\u670D\u52A1\u5546");continue}let u=process.platform==="win32"&&!!process.env.TAKO_WINDOWS_HANDOFF_FILE,t=await bn(n,{projectPath:o.projectPath,args:o.args,envVars:o.envVars,selectedOptionIds:o.selectedOptionIds,providerContext:e,relaunchTakoOnWindows:u});if(!t.success)h.error(t.error||b("cli.launchFailed"));else if(u)process.exit(0)}}Ai();mo();P();I();pi();He();import{join as xi}from"path";function lt(i,o){return["@echo off",'set "TAKO_WINDOWS_HANDOFF_FILE=%TEMP%\\tako-handoff-%RANDOM%-%RANDOM%.ps1"','if exist "%TAKO_WINDOWS_HANDOFF_FILE%" del "%TAKO_WINDOWS_HANDOFF_FILE%" >nul 2>nul',`"${i}" "${o}" %*`,'set "TAKO_EXIT_CODE=%ERRORLEVEL%"','if not exist "%TAKO_WINDOWS_HANDOFF_FILE%" exit /b %TAKO_EXIT_CODE%','powershell.exe -NoProfile -ExecutionPolicy Bypass -File "%TAKO_WINDOWS_HANDOFF_FILE%"',"exit /b %ERRORLEVEL%",""].join(`\r
527
- `)}function mt(i,o){return['$env:TAKO_WINDOWS_HANDOFF_FILE = Join-Path ([System.IO.Path]::GetTempPath()) ("tako-handoff-{0}-{1}.ps1" -f $PID, [System.Guid]::NewGuid().ToString("N"))',"Remove-Item -LiteralPath $env:TAKO_WINDOWS_HANDOFF_FILE -Force -ErrorAction SilentlyContinue",`& "${i}" "${o}" @args`,"$code = $LASTEXITCODE","if (Test-Path -LiteralPath $env:TAKO_WINDOWS_HANDOFF_FILE) {"," powershell.exe -NoProfile -ExecutionPolicy Bypass -File $env:TAKO_WINDOWS_HANDOFF_FILE"," exit $LASTEXITCODE","}","exit $code",""].join(`\r
528
- `)}var b0="tako-cli",on="0.3.11";function hc(i,o){let n=i.split(".").map(Number),e=o.split(".").map(Number);for(let d=0;d<3;d++){let u=n[d]||0,t=e[d]||0;if(u>t)return 1;if(u<t)return-1}return 0}async function Wc(){try{let i=await j(),o=await fetch(`${i}/${b0}/latest`,{signal:AbortSignal.timeout(5000)});if(!o.ok)return null;return(await o.json()).version||null}catch{return null}}async function Nc(){let i=await Wc();if(!i)return{hasUpdate:!1,currentVersion:on};return{hasUpdate:hc(i,on)>0,latestVersion:i,currentVersion:on}}async function wt(){let i=await import("fs/promises"),o=xi(B,"bin"),n=xi(o,"tako"),e=xi(ri,"node_modules/tako-cli/dist/index.js");if(await i.mkdir(o,{recursive:!0}),process.platform==="win32")await i.writeFile(xi(o,"tako.cmd"),lt(C,e)),await i.writeFile(xi(o,"tako.ps1"),mt(C,e));else{let u=`#!/bin/bash
529
- exec "${C}" "${e}" "$@"
530
- `;await i.writeFile(n,u,{mode:493})}}async function bc(i){let o=_i(),n=`\u6B63\u5728\u66F4\u65B0\u5230 v${i}`;o.start(n);try{let e=await j(),d=await import("fs/promises");await d.mkdir(ri,{recursive:!0});let u=xi(ri,"package.json");try{await d.access(u)}catch{await d.writeFile(u,JSON.stringify({name:"tako-local",private:!0},null,2))}let t=Bun.spawn([C,"update",b0,"--latest"],{cwd:ri,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:e}}),a=await hn(t,n,(r)=>o.update(r));if(await t.exited,t.exitCode===0)return await wt(),J("cli_updated",{from_version:on,to_version:i}),o.stop(`\u66F4\u65B0\u6210\u529F\uFF01\u5DF2\u66F4\u65B0\u5230 v${i}`),!0;else return o.stop(`\u66F4\u65B0\u5931\u8D25: ${a||"\u672A\u77E5\u9519\u8BEF"}`),!1}catch(e){return o.stop(`\u66F4\u65B0\u5931\u8D25: ${e instanceof Error?e.message:"\u672A\u77E5\u9519\u8BEF"}`),!1}}async function fc(){let i=await import("fs/promises"),o=xi(ri,"bun.lock");try{await i.unlink(o)}catch{}}async function kc(){let i=await import("fs/promises");try{let o=await j();await i.mkdir(ri,{recursive:!0});let n=xi(ri,"package.json");try{await i.access(n)}catch{await i.writeFile(n,JSON.stringify({name:"tako-local",private:!0},null,2))}await fc();let e=Bun.spawn([C,"add",`${b0}@latest`],{cwd:ri,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:o}});return await e.exited,e.exitCode===0}catch{return!1}}async function zc(){let i=await import("fs/promises"),o=xi(B,"bin"),n=xi(o,"tako"),e=xi(ri,"node_modules/tako-cli/dist/index.js");try{let d=await i.readFile(n,"utf-8");if(d.includes("bun run tako-cli")||d.includes("run tako-cli")){h.info(b("updater.migrating"));let u=!1;try{await i.access(e),u=!0}catch{u=!1}if(!u){let t=_i();if(t.start(b("updater.installingLocally")),!await kc())return t.stop(b("updater.migrationFailed")),!1;t.stop(b("updater.installComplete"))}return await wt(),!0}}catch{}return!1}async function nn(){try{if(await zc())h.info(b("updater.migrationComplete")),process.exit(0);let o=await Nc();if(o.hasUpdate&&o.latestVersion){if(h.warn(b("updater.newVersionAvailable",{version:o.latestVersion,current:on})),await bc(o.latestVersion))h.info(b("updater.pleaseRestart")),process.exit(0)}}catch{}}T();I();pi();import{homedir as gc}from"os";var g={black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m"};var S={bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",reset:"\x1B[0m"};var K={directory:{icon:g.brightYellow,text:g.brightGreen},git:{icon:g.brightBlue,text:g.brightBlue,clean:g.brightGreen,dirty:g.brightYellow,conflict:g.brightRed},model:{icon:g.brightCyan,text:g.brightCyan},version:{icon:g.brightWhite,text:g.brightBlack},outputStyle:{icon:g.brightMagenta,text:g.brightMagenta},context:{icon:g.brightMagenta,low:g.brightGreen,medium:g.brightYellow,high:g.brightRed},todayUsage:{icon:g.brightGreen,text:g.brightGreen},separator:g.brightBlack},Qi={directory:{nerd:"\uF07B",plain:"\uD83D\uDCC1"},git:{nerd:"\uE725",plain:"\uD83C\uDF3F"},model:{nerd:"\uF11B",plain:"\uD83E\uDD16"},version:{nerd:"\uF412",plain:"\uD83D\uDCBE"},outputStyle:{nerd:"\uF12F5",plain:"\uD83C\uDFAF"},context:{nerd:"\uF0E7",plain:"\u26A1"},todayUsage:{nerd:"\uF155",plain:"\uD83D\uDCB0"},gitClean:"\u2713",gitDirty:"\u25CF",gitConflict:"\u26A0",gitAhead:"\u2191",gitBehind:"\u2193"};function $c(){return!1}function ki(i){let o=Qi[i];if(typeof o==="string")return o;return $c()?o.nerd:o.plain}class Zn{id="directory";render(i){let o=this.formatPath(i.workspace.current_dir),n=ki("directory");return`${K.directory.icon}${n}${S.reset} ${K.directory.text}${o}${S.reset}`}formatPath(i){let o=gc();if(i===o)return"~";if(i.startsWith(o+"/"))return"~"+i.slice(o.length);return i}}class Tn{id="git";async render(i){let o=i.workspace.current_dir;if(!await this.isGitRepository(o))return null;let e=await this.getBranch(o);if(!e)return null;let{status:d,statusColor:u}=await this.getStatus(o),{ahead:t,behind:a}=await this.getAheadBehind(o),r=ki("git"),p=`${K.git.icon}${r}${S.reset} ${K.git.text}${e}${S.reset}`;if(p+=` ${u}${d}${S.reset}`,t>0)p+=` ${K.git.clean}${Qi.gitAhead}${t}${S.reset}`;if(a>0)p+=` ${K.git.dirty}${Qi.gitBehind}${a}${S.reset}`;return p}async isGitRepository(i){try{return await Bun.spawn(["git","rev-parse","--git-dir"],{cwd:i,stdout:"pipe",stderr:"pipe"}).exited===0}catch{return!1}}async getBranch(i){try{let o=Bun.spawn(["git","branch","--show-current"],{cwd:i,stdout:"pipe",stderr:"pipe"}),n=await new Response(o.stdout).text();if(await o.exited===0&&n.trim())return n.trim();let d=Bun.spawn(["git","rev-parse","--short","HEAD"],{cwd:i,stdout:"pipe",stderr:"pipe"}),u=await new Response(d.stdout).text();if(await d.exited===0&&u.trim())return`detached:${u.trim()}`;return null}catch{return null}}async getStatus(i){try{let o=Bun.spawn(["git","status","--porcelain"],{cwd:i,stdout:"pipe",stderr:"pipe"}),n=await new Response(o.stdout).text();if(await o.exited!==0)return{status:Qi.gitClean,statusColor:K.git.clean};let d=n.trim();if(!d)return{status:Qi.gitClean,statusColor:K.git.clean};if(d.includes("UU")||d.includes("AA")||d.includes("DD"))return{status:Qi.gitConflict,statusColor:K.git.conflict};return{status:Qi.gitDirty,statusColor:K.git.dirty}}catch{return{status:Qi.gitClean,statusColor:K.git.clean}}}async getAheadBehind(i){try{let o=Bun.spawn(["git","rev-list","--count","@{u}..HEAD"],{cwd:i,stdout:"pipe",stderr:"pipe"}),n=await new Response(o.stdout).text(),d=await o.exited===0?parseInt(n.trim(),10)||0:0,u=Bun.spawn(["git","rev-list","--count","HEAD..@{u}"],{cwd:i,stdout:"pipe",stderr:"pipe"}),t=await new Response(u.stdout).text(),r=await u.exited===0?parseInt(t.trim(),10)||0:0;return{ahead:d,behind:r}}catch{return{ahead:0,behind:0}}}}var Gc={"claude-opus-4-5-20251101":"Opus 4.5","claude-opus-4-5":"Opus 4.5","claude-sonnet-4-5-20250514":"Sonnet 4.5","claude-sonnet-4-5":"Sonnet 4.5","claude-sonnet-4-20250514":"Sonnet 4","claude-sonnet-4":"Sonnet 4","claude-sonnet-3-5-20241022":"Sonnet 3.5","claude-3-5-sonnet-20241022":"Sonnet 3.5","claude-3-5-sonnet":"Sonnet 3.5","claude-haiku-3-5-20241022":"Haiku 3.5","claude-3-5-haiku-20241022":"Haiku 3.5","claude-3-5-haiku":"Haiku 3.5"};class In{id="model";render(i){let o=i.model.id,n=Gc[o]||this.simplifyModelName(i.model.display_name),e=ki("model");return`${K.model.icon}${e}${S.reset} ${K.model.text}${n}${S.reset}`}simplifyModelName(i){let o=i.replace(/^Claude\s+/i,"");return o=o.replace(/-\d{8}$/,""),o}}var Mc=200000;class zi{id="context";static cache=null;static CACHE_TTL=5000;async render(i){let o=await this.getTokensWithCache(i.transcript_path),e=xe(i.model.id)?.contextWindow??Mc,d=Math.round((o??0)/e*100),u=Math.max(0,100-d),t=ki("context"),a=u<=20?g.brightRed:u<=50?g.brightYellow:g.brightGreen;return`${K.context.icon}${t}${S.reset} ${a}${u}%${S.reset}`}async getTokensWithCache(i){let o=Date.now();if(zi.cache&&zi.cache.path===i&&o-zi.cache.timestamp<zi.CACHE_TTL)return zi.cache.tokens;let n=await this.parseTranscriptTokens(i);return zi.cache={path:i,tokens:n,timestamp:o},n}async parseTranscriptTokens(i){try{let o=Bun.file(i);if(!await o.exists())return null;let n=await o.text();if(!n.trim())return null;let e=n.split(`
531
- `).filter((d)=>d.trim());for(let d=e.length-1;d>=0;d--)try{let u=JSON.parse(e[d]);if(u.type==="assistant"&&u.message?.usage){let t=u.message.usage;return(t.input_tokens||0)+(t.output_tokens||0)+(t.cache_creation_input_tokens||0)+(t.cache_read_input_tokens||0)}}catch{continue}return null}catch{return null}}}N0();P();ui();class On{id="quota";async render(i){let o=await this.tryRenderOfficial();if(o)return o;return this.renderSessionCost(i)}async tryRenderOfficial(){try{let i=await qi("claude-code")??await D();if(!i){let n=await Ui().catch(()=>"");if(!n)return null;let e=await eo(n);return this.renderTako(e)}let o=await W0(i);if(o.status!=="ok")return null;switch(o.provider){case"tako":return this.renderTako(o);case"claude-subscription":return this.renderClaudeSub(o);case"codex-subscription":return this.renderCodexSub(o);default:return null}}catch{return null}}renderTako(i){if(i.status!=="ok")return null;if(!!(i.primary?.costLimit||i.secondary?.costLimit||i.daily?.costLimit))return this.renderSub(i);let n=i.daily??i.primary??i.secondary;if(!n)return null;let e=n.costUsed??0;return`${this.icon()} ${g.brightGreen}Day:${this.fmtCost(e)}${S.reset}`}renderSub(i){let o=(e,d,u)=>{if(e&&e>=1440)return`${Math.round(e/1440)}d`;if(e)return`${Math.round(e/60)}h`;return u?`${u}d`:`${d}h`},n=[];if(i.primary)n.push(this.remainChunk(o(i.primary.windowMinutes,5),i.primary.usedPct));if(i.secondary)n.push(this.remainChunk(o(i.secondary.windowMinutes,24,7),i.secondary.usedPct));if(i.modelLimits?.opus)n.push(this.remainChunk("opus",i.modelLimits.opus.usedPct));if(!n.length)return null;return`${this.icon()} ${n.join(`${S.dim} \xB7 ${S.reset}`)}`}renderClaudeSub=this.renderSub;renderCodexSub=this.renderSub;pctChunk(i,o){let n=o>=90?g.brightRed:o>=70?g.brightYellow:g.brightGreen;return`${i}:${n}${o}%${S.reset}`}remainChunk(i,o){let n=Math.max(0,Math.min(100,100-Math.round(o))),e=n<=10?g.brightRed:n<=30?g.brightYellow:g.brightGreen;return`${i} \u5269 ${e}${n}%${S.reset}`}renderSessionCost(i){let o=i.cost?.total_cost_usd;if(o==null||o<=0)return null;return`${this.icon()} ${g.brightGreen}Session:${this.fmtCost(o)}${S.reset}`}icon(){return`${K.todayUsage.icon}${ki("todayUsage")}${S.reset}`}fmtCost(i){if(i>=100)return`$${Math.round(i)}`;if(i>=10)return`$${i.toFixed(1)}`;return`$${i.toFixed(2)}`}}class f0{separator=`${K.separator} \u2502 ${S.reset}`;render(i){let o=["directory","git","model","context","quota"],n=[];for(let e of o){let d=i.get(e);if(d)n.push(d)}return n.join(this.separator)}}import{join as uo,dirname as Sc}from"path";import{homedir as k0}from"os";import{mkdir as qc}from"fs/promises";var xt=uo(k0(),".tako"),Qc=uo(xt,"cli"),Pc=uo(xt,"bin",process.platform==="win32"?"tako.cmd":"tako");function Jc(){if(process.platform==="win32")return uo(process.env.APPDATA||uo(k0(),"AppData","Roaming"),"claude","settings.json");return uo(k0(),".claude","settings.json")}var Kc=process.platform==="win32",Bc="0.1.48";function Ac(i,o){let n=i.split(".").map(Number),e=o.split(".").map(Number),d=Math.max(n.length,e.length);for(let u=0;u<d;u++){let t=n[u]||0,a=e[u]||0;if(t!==a)return t-a}return 0}async function Rc(){let i=uo(Qc,"node_modules","tako-cli","package.json");try{let o=Bun.file(i);if(!await o.exists())return null;return(await o.json()).version||null}catch{return null}}async function Cc(){let i=await Rc();if(!i)return!1;return Ac(i,Bc)>=0}function Hc(){return Pc}function Yc(){return`"${Zc(Hc())}" statusline`}function Zc(i){if(Kc)return i.replace(/\\/g,"/");return i}async function z0(){if(!await Cc())return;let o=Jc(),n={};try{let u=Bun.file(o);if(await u.exists())n=await u.json()}catch{}let e={type:"command",command:Yc(),padding:0},d=typeof n.statusLine==="object"&&n.statusLine!==null?n.statusLine.command:null;if(typeof d==="string"&&d.includes("tako statusline"))return;n.statusLine=e,await qc(Sc(o),{recursive:!0}),await Bun.write(o,JSON.stringify(n,null,2))}var Tc=[new Zn,new Tn,new In,new zi,new On];async function Ic(i){let o=await Promise.all(Tc.map(async(d)=>{try{let u=await d.render(i);return{id:d.id,content:u}}catch{return{id:d.id,content:null}}})),n=new Map;for(let{id:d,content:u}of o)n.set(d,u);return new f0().render(n)}async function yt(){try{let i=await Bun.stdin.json(),o=await Ic(i);console.log(o)}catch{process.exit(0)}}var Oc={"claude-code":{optionId:"skip-permissions",flag:"--dangerously-skip-permissions"},codex:{optionId:"bypass-sandbox",flag:"--dangerously-bypass-approvals-and-sandbox"}};async function Xn(i,o,n,e){let d=o.filter((a)=>a!==n),u=await Xc(i,d,e);if(i!=="claude-code")return u?[u,...d]:d;let t=[];if(u)t.push(u);for(let a=0;a<d.length;a++){let r=d[a];if(r==="--model"&&a+1<d.length){t.push(r,co(d[a+1])),a++;continue}if(r.startsWith("--model=")){let p=r.slice(8);t.push(`--model=${co(p)}`);continue}t.push(r)}return t}async function Xc(i,o,n){let e=Oc[i];if(!e)return null;if(o.includes(e.flag))return null;return(await(n?.getLastSelectedOptionIds??Wn)(i)).includes(e.optionId)?e.flag:null}T();P();mo();import{join as Fn}from"path";async function vt(i){let n=`${await j()}/${encodeURIComponent(i).replace("%40","@")}`,e=await fetch(n,{signal:AbortSignal.timeout(1e4)});if(!e.ok)throw Error(`registry http ${e.status}`);let d=await e.json(),u=Object.keys(d.versions??{});if(!u.length)throw Error("no versions found");let t=d.time??{},a=u.map((r)=>({version:r,publishedAt:t[r],isCurrent:!1}));return a.sort((r,p)=>{let c=r.publishedAt?Date.parse(r.publishedAt):0;return(p.publishedAt?Date.parse(p.publishedAt):0)-c}),a}async function st(i,o){let n=await import("fs/promises"),e=gi(i.id);await n.mkdir(e,{recursive:!0});let d=Fn(e,"bun.lock"),u=Fn(e,"node_modules");await n.rm(d,{force:!0}).catch(()=>{}),await n.rm(u,{recursive:!0,force:!0}).catch(()=>{});let t=Fn(e,"package.json");await Bun.write(t,JSON.stringify({name:`tako-${i.id}-host`,version:"0.0.0",private:!0},null,2));let a=await j(),{detectRegion:r}=await Promise.resolve().then(() => (mo(),gd)),p=await r(),{log:c}=await Promise.resolve().then(() => (Ai(),dd));c.info(`\u7F51\u7EDC\u73AF\u5883: ${p==="cn"?"\u56FD\u5185":"\u6D77\u5916"} | registry: ${a}`);let l=Bun.spawn([C,"add",`${i.package}@${o}`],{cwd:e,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:a}});if(await l.exited,l.exitCode!==0){let w=await new Response(l.stderr).text();throw Error(`bun add ${i.package}@${o} failed: ${w.slice(0,500).trim()}`)}let m=await N();await Vi({installedClients:{...m.installedClients,[i.id]:{version:o,installedAt:new Date().toISOString()}}})}async function Lt(i){let o=gi(i.id),n=Fn(o,"node_modules",i.package,"package.json");try{let d=Bun.file(n);if(await d.exists()){let u=await d.json();if(u.version)return u.version}}catch{}return(await N()).installedClients[i.id]?.version??null}P();var En="0.3.11";function Pl(){console.log(`
532
- ${b("cli.version",{version:En})}
533
-
534
- ${b("cli.usage")}
535
-
536
- ${b("cli.options")}
537
- ${b("cli.optionVersion")}
538
- ${b("cli.optionHelp")}
539
-
540
- ${b("cli.shortcuts")}
541
- ${b("cli.shortcutClaude")}
542
- ${b("cli.shortcutCodex")}
543
- ${b("cli.shortcutGemini")}
772
+ */import{join as Hz}from"path";import{homedir as Jz}from"os";function Gz(B){let I=[];for(let[C,g]of Object.entries(B)){if(!g?.models)continue;for(let[F,N]of Object.entries(g.models)){let H=N?.limit?.context;if(typeof H!=="number"||H<=0)continue;I.push({id:F,displayName:N.name||F,provider:C,contextWindow:H,outputLimit:typeof N.limit?.output==="number"?N.limit.output:void 0})}}return I}async function NL(){let B=await fetch("https://models.dev/api.json",{signal:AbortSignal.timeout(1e4)});if(!B.ok)throw Error(`models.dev http ${B.status}`);let I=await B.json();return Gz(I)}var zI=[{id:"claude-3-sonnet-20240229",displayName:"Claude Sonnet 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-haiku-4-5",displayName:"Claude Haiku 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-5-20251101",displayName:"Claude Opus 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-opus-20240229",displayName:"Claude Opus 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-3-5-haiku-20241022",displayName:"Claude Haiku 3.5",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-3-5-sonnet-20241022",displayName:"Claude Sonnet 3.5 v2",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-sonnet-4-6",displayName:"Claude Sonnet 4.6",provider:"anthropic",contextWindow:1e6,outputLimit:64000},{id:"claude-opus-4-0",displayName:"Claude Opus 4 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-opus-4-7",displayName:"Claude Opus 4.7",provider:"anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-3-haiku-20240307",displayName:"Claude Haiku 3",provider:"anthropic",contextWindow:200000,outputLimit:4096},{id:"claude-sonnet-4-5-20250929",displayName:"Claude Sonnet 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-haiku-latest",displayName:"Claude Haiku 3.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-1",displayName:"Claude Opus 4.1 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-sonnet-4-0",displayName:"Claude Sonnet 4 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-sonnet-20240620",displayName:"Claude Sonnet 3.5",provider:"anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-5",displayName:"Claude Opus 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-1-20250805",displayName:"Claude Opus 4.1",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-haiku-4-5-20251001",displayName:"Claude Haiku 4.5",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-20250514",displayName:"Claude Sonnet 4",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-6",displayName:"Claude Opus 4.6",provider:"anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-3-7-sonnet-20250219",displayName:"Claude Sonnet 3.7",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-5",displayName:"Claude Sonnet 4.5 (latest)",provider:"anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-20250514",displayName:"Claude Opus 4",provider:"anthropic",contextWindow:200000,outputLimit:32000},{id:"gpt-5.1-codex-max",displayName:"GPT-5.1 Codex Max",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4o-2024-05-13",displayName:"GPT-4o (2024-05-13)",provider:"openai",contextWindow:128000,outputLimit:4096},{id:"o1-mini",displayName:"o1-mini",provider:"openai",contextWindow:128000,outputLimit:65536},{id:"gpt-5.2-pro",displayName:"GPT-5.2 Pro",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"text-embedding-3-large",displayName:"text-embedding-3-large",provider:"openai",contextWindow:8191,outputLimit:3072},{id:"gpt-5.3-chat-latest",displayName:"GPT-5.3 Chat (latest)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.5",displayName:"GPT-5.5",provider:"openai",contextWindow:1050000,outputLimit:130000},{id:"gpt-5-mini",displayName:"GPT-5 Mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5-nano",displayName:"GPT-5 Nano",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.3-codex",displayName:"GPT-5.3 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4-turbo",displayName:"GPT-4 Turbo",provider:"openai",contextWindow:128000,outputLimit:4096},{id:"text-embedding-ada-002",displayName:"text-embedding-ada-002",provider:"openai",contextWindow:8192,outputLimit:1536},{id:"gpt-5.2",displayName:"GPT-5.2",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o3-pro",displayName:"o3-pro",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-4o-mini",displayName:"GPT-4o mini",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"o4-mini-deep-research",displayName:"o4-mini-deep-research",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-mini",displayName:"GPT-5.4 mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o4-mini",displayName:"o4-mini",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-nano",displayName:"GPT-5.4 nano",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.2-codex",displayName:"GPT-5.2 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.2-chat-latest",displayName:"GPT-5.2 Chat",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.1-codex-mini",displayName:"GPT-5.1 Codex mini",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o1-preview",displayName:"o1-preview",provider:"openai",contextWindow:128000,outputLimit:32768},{id:"gpt-4o-2024-08-06",displayName:"GPT-4o (2024-08-06)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.1",displayName:"GPT-5.1",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"o1",displayName:"o1",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5.4-pro",displayName:"GPT-5.4 Pro",provider:"openai",contextWindow:1050000,outputLimit:128000},{id:"gpt-3.5-turbo",displayName:"GPT-3.5-turbo",provider:"openai",contextWindow:16385,outputLimit:4096},{id:"o3-deep-research",displayName:"o3-deep-research",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"o3-mini",displayName:"o3-mini",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"text-embedding-3-small",displayName:"text-embedding-3-small",provider:"openai",contextWindow:8191,outputLimit:1536},{id:"o1-pro",displayName:"o1-pro",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-4",displayName:"GPT-4",provider:"openai",contextWindow:8192,outputLimit:8192},{id:"gpt-5-codex",displayName:"GPT-5-Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5.4",displayName:"GPT-5.4",provider:"openai",contextWindow:1050000,outputLimit:128000},{id:"gpt-5.1-chat-latest",displayName:"GPT-5.1 Chat",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5.3-codex-spark",displayName:"GPT-5.3 Codex Spark",provider:"openai",contextWindow:128000,outputLimit:32000},{id:"gpt-4.1-nano",displayName:"GPT-4.1 nano",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"o3",displayName:"o3",provider:"openai",contextWindow:200000,outputLimit:1e5},{id:"gpt-5-pro",displayName:"GPT-5 Pro",provider:"openai",contextWindow:400000,outputLimit:272000},{id:"gpt-4o",displayName:"GPT-4o",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gpt-5",displayName:"GPT-5",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-5-chat-latest",displayName:"GPT-5 Chat (latest)",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4.1",displayName:"GPT-4.1",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"gpt-4.1-mini",displayName:"GPT-4.1 mini",provider:"openai",contextWindow:1047576,outputLimit:32768},{id:"gpt-5.1-codex",displayName:"GPT-5.1 Codex",provider:"openai",contextWindow:400000,outputLimit:128000},{id:"gpt-4o-2024-11-20",displayName:"GPT-4o (2024-11-20)",provider:"openai",contextWindow:128000,outputLimit:16384},{id:"gemini-flash-lite-latest",displayName:"Gemini Flash-Lite Latest",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-pro-preview-05-06",displayName:"Gemini 2.5 Pro Preview 05-06",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-live-2.5-flash-preview-native-audio",displayName:"Gemini Live 2.5 Flash Preview Native Audio",provider:"google",contextWindow:131072,outputLimit:65536},{id:"gemini-3.1-pro-preview-customtools",displayName:"Gemini 3.1 Pro Preview Custom Tools",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-lite-preview-09-2025",displayName:"Gemini 2.5 Flash Lite Preview 09-25",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-1.5-flash",displayName:"Gemini 1.5 Flash",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemini-1.5-pro",displayName:"Gemini 1.5 Pro",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemma-3n-e4b-it",displayName:"Gemma 3n 4B",provider:"google",contextWindow:8192,outputLimit:2000},{id:"gemini-3.1-flash-lite-preview",displayName:"Gemini 3.1 Flash Lite Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-3.1-pro-preview",displayName:"Gemini 3.1 Pro Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.0-flash",displayName:"Gemini 2.0 Flash",provider:"google",contextWindow:1048576,outputLimit:8192},{id:"gemini-3-flash-preview",displayName:"Gemini 3 Flash Preview",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-preview-tts",displayName:"Gemini 2.5 Flash Preview TTS",provider:"google",contextWindow:8000,outputLimit:16000},{id:"gemini-3-pro-preview",displayName:"Gemini 3 Pro Preview",provider:"google",contextWindow:1e6,outputLimit:64000},{id:"gemini-2.5-flash-preview-05-20",displayName:"Gemini 2.5 Flash Preview 05-20",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-embedding-001",displayName:"Gemini Embedding 001",provider:"google",contextWindow:2048,outputLimit:3072},{id:"gemini-2.5-pro",displayName:"Gemini 2.5 Pro",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-flash-latest",displayName:"Gemini Flash Latest",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-4-31b-it",displayName:"Gemma 4 31B",provider:"google",contextWindow:256000,outputLimit:8192},{id:"gemini-2.5-pro-preview-06-05",displayName:"Gemini 2.5 Pro Preview 06-05",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-image",displayName:"Gemini 2.5 Flash Image",provider:"google",contextWindow:32768,outputLimit:32768},{id:"gemini-2.5-flash-lite-preview-06-17",displayName:"Gemini 2.5 Flash Lite Preview 06-17",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3-12b-it",displayName:"Gemma 3 12B",provider:"google",contextWindow:32768,outputLimit:8192},{id:"gemini-2.5-flash",displayName:"Gemini 2.5 Flash",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3n-e2b-it",displayName:"Gemma 3n 2B",provider:"google",contextWindow:8192,outputLimit:2000},{id:"gemini-3.1-flash-image-preview",displayName:"Gemini 3.1 Flash Image (Preview)",provider:"google",contextWindow:131072,outputLimit:32768},{id:"gemma-3-4b-it",displayName:"Gemma 3 4B",provider:"google",contextWindow:32768,outputLimit:8192},{id:"gemini-2.5-flash-preview-04-17",displayName:"Gemini 2.5 Flash Preview 04-17",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-pro-preview-tts",displayName:"Gemini 2.5 Pro Preview TTS",provider:"google",contextWindow:8000,outputLimit:16000},{id:"gemini-2.5-flash-preview-09-2025",displayName:"Gemini 2.5 Flash Preview 09-25",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemma-3-27b-it",displayName:"Gemma 3 27B",provider:"google",contextWindow:131072,outputLimit:8192},{id:"gemma-4-26b-a4b-it",displayName:"Gemma 4 26B",provider:"google",contextWindow:256000,outputLimit:8192},{id:"gemini-2.5-flash-lite",displayName:"Gemini 2.5 Flash Lite",provider:"google",contextWindow:1048576,outputLimit:65536},{id:"gemini-2.5-flash-image-preview",displayName:"Gemini 2.5 Flash Image (Preview)",provider:"google",contextWindow:32768,outputLimit:32768},{id:"gemini-1.5-flash-8b",displayName:"Gemini 1.5 Flash-8B",provider:"google",contextWindow:1e6,outputLimit:8192},{id:"gemini-live-2.5-flash",displayName:"Gemini Live 2.5 Flash",provider:"google",contextWindow:128000,outputLimit:8000},{id:"gemini-2.0-flash-lite",displayName:"Gemini 2.0 Flash Lite",provider:"google",contextWindow:1048576,outputLimit:8192},{id:"claude-sonnet-4-6@default",displayName:"Claude Sonnet 4.6",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-haiku-4-5@20251001",displayName:"Claude Haiku 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-5-haiku@20241022",displayName:"Claude Haiku 3.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-3-5-sonnet@20241022",displayName:"Claude Sonnet 3.5 v2",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:8192},{id:"claude-opus-4-1@20250805",displayName:"Claude Opus 4.1",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-sonnet-4@20250514",displayName:"Claude Sonnet 4",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-3-7-sonnet@20250219",displayName:"Claude Sonnet 3.7",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4@20250514",displayName:"Claude Opus 4",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:32000},{id:"claude-opus-4-5@20251101",displayName:"Claude Opus 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-sonnet-4-5@20250929",displayName:"Claude Sonnet 4.5",provider:"google-vertex-anthropic",contextWindow:200000,outputLimit:64000},{id:"claude-opus-4-6@default",displayName:"Claude Opus 4.6",provider:"google-vertex-anthropic",contextWindow:1e6,outputLimit:128000},{id:"claude-opus-4-7@default",displayName:"Claude Opus 4.7",provider:"google-vertex-anthropic",contextWindow:1e6,outputLimit:128000},{id:"grok-2-1212",displayName:"Grok 2 (1212)",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-vision-beta",displayName:"Grok Vision Beta",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-3-mini-fast",displayName:"Grok 3 Mini Fast",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-3-mini-latest",displayName:"Grok 3 Mini Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-3-fast",displayName:"Grok 3 Fast",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2-vision-latest",displayName:"Grok 2 Vision Latest",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-4.20-0309-reasoning",displayName:"Grok 4.20 (Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-4-1-fast-non-reasoning",displayName:"Grok 4.1 Fast (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-mini-fast-latest",displayName:"Grok 3 Mini Fast Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4-fast",displayName:"Grok 4 Fast",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-latest",displayName:"Grok 3 Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2",displayName:"Grok 2",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-code-fast-1",displayName:"Grok Code Fast 1",provider:"xai",contextWindow:256000,outputLimit:1e4},{id:"grok-4.20-0309-non-reasoning",displayName:"Grok 4.20 (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-fast-latest",displayName:"Grok 3 Fast Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4.20-multi-agent-0309",displayName:"Grok 4.20 Multi-Agent",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-4",displayName:"Grok 4",provider:"xai",contextWindow:256000,outputLimit:64000},{id:"grok-2-latest",displayName:"Grok 2 Latest",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-beta",displayName:"Grok Beta",provider:"xai",contextWindow:131072,outputLimit:4096},{id:"grok-2-vision",displayName:"Grok 2 Vision",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-4-1-fast",displayName:"Grok 4.1 Fast",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"grok-3-mini",displayName:"Grok 3 Mini",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-2-vision-1212",displayName:"Grok 2 Vision (1212)",provider:"xai",contextWindow:8192,outputLimit:4096},{id:"grok-3",displayName:"Grok 3",provider:"xai",contextWindow:131072,outputLimit:8192},{id:"grok-4-fast-non-reasoning",displayName:"Grok 4 Fast (Non-Reasoning)",provider:"xai",contextWindow:2000000,outputLimit:30000},{id:"deepseek-chat",displayName:"DeepSeek Chat",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-reasoner",displayName:"DeepSeek Reasoner",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-v4-flash",displayName:"DeepSeek V4 Flash",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"deepseek-v4-pro",displayName:"DeepSeek V4 Pro",provider:"deepseek",contextWindow:1e6,outputLimit:384000},{id:"mimo-v2.5-pro",displayName:"MiMo v2.5 Pro",provider:"xiaomi",contextWindow:1e6,outputLimit:64000},{id:"kimi-k2-0905-preview",displayName:"Kimi K2 0905",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2.5",displayName:"Kimi K2.5",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-thinking-turbo",displayName:"Kimi K2 Thinking Turbo",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2.6",displayName:"Kimi K2.6",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-turbo-preview",displayName:"Kimi K2 Turbo",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"kimi-k2-0711-preview",displayName:"Kimi K2 0711",provider:"moonshotai",contextWindow:131072,outputLimit:16384},{id:"kimi-k2-thinking",displayName:"Kimi K2 Thinking",provider:"moonshotai",contextWindow:262144,outputLimit:262144},{id:"mistral-small-latest",displayName:"Mistral Small (latest)",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"mistral-nemo",displayName:"Mistral Nemo",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-large-2512",displayName:"Mistral Large 3",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"labs-devstral-small-2512",displayName:"Devstral Small 2",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"devstral-2512",displayName:"Devstral 2",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"magistral-medium-latest",displayName:"Magistral Medium (latest)",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"open-mixtral-8x7b",displayName:"Mixtral 8x7B",provider:"mistral",contextWindow:32000,outputLimit:32000},{id:"pixtral-large-latest",displayName:"Pixtral Large (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-large-2411",displayName:"Mistral Large 2.1",provider:"mistral",contextWindow:131072,outputLimit:16384},{id:"codestral-latest",displayName:"Codestral (latest)",provider:"mistral",contextWindow:256000,outputLimit:4096},{id:"mistral-large-latest",displayName:"Mistral Large (latest)",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"mistral-small-2506",displayName:"Mistral Small 3.2",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"pixtral-12b",displayName:"Pixtral 12B",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"ministral-8b-latest",displayName:"Ministral 8B (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-embed",displayName:"Mistral Embed",provider:"mistral",contextWindow:8000,outputLimit:3072},{id:"magistral-small",displayName:"Magistral Small",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-small-2603",displayName:"Mistral Small 4",provider:"mistral",contextWindow:256000,outputLimit:256000},{id:"ministral-3b-latest",displayName:"Ministral 3B (latest)",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"open-mixtral-8x22b",displayName:"Mixtral 8x22B",provider:"mistral",contextWindow:64000,outputLimit:64000},{id:"devstral-small-2505",displayName:"Devstral Small 2505",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"devstral-medium-2507",displayName:"Devstral Medium",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-medium-latest",displayName:"Mistral Medium (latest)",provider:"mistral",contextWindow:128000,outputLimit:16384},{id:"open-mistral-7b",displayName:"Mistral 7B",provider:"mistral",contextWindow:8000,outputLimit:8000},{id:"devstral-medium-latest",displayName:"Devstral 2 (latest)",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"mistral-medium-2505",displayName:"Mistral Medium 3",provider:"mistral",contextWindow:131072,outputLimit:131072},{id:"devstral-small-2507",displayName:"Devstral Small",provider:"mistral",contextWindow:128000,outputLimit:128000},{id:"mistral-medium-2508",displayName:"Mistral Medium 3.1",provider:"mistral",contextWindow:262144,outputLimit:262144},{id:"qwen3-235b-a22b",displayName:"Qwen3 235B-A22B",provider:"alibaba",contextWindow:131072,outputLimit:16384},{id:"qwen3-coder-plus",displayName:"Qwen3 Coder Plus",provider:"alibaba",contextWindow:1048576,outputLimit:65536},{id:"qwen-vl-ocr",displayName:"Qwen-VL OCR",provider:"alibaba",contextWindow:34096,outputLimit:4096},{id:"qwen-omni-turbo-realtime",displayName:"Qwen-Omni Turbo Realtime",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen3-8b",displayName:"Qwen3 8B",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3.5-397b-a17b",displayName:"Qwen3.5 397B-A17B",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwq-plus",displayName:"QwQ Plus",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen-vl-plus",displayName:"Qwen-VL Plus",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-livetranslate-flash-realtime",displayName:"Qwen3-LiveTranslate Flash Realtime",provider:"alibaba",contextWindow:53248,outputLimit:4096},{id:"qwen3-32b",displayName:"Qwen3 32B",provider:"alibaba",contextWindow:131072,outputLimit:16384},{id:"qwen-max",displayName:"Qwen Max",provider:"alibaba",contextWindow:32768,outputLimit:8192},{id:"qwen-plus",displayName:"Qwen Plus",provider:"alibaba",contextWindow:1e6,outputLimit:32768},{id:"qwen-omni-turbo",displayName:"Qwen-Omni Turbo",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen-flash",displayName:"Qwen Flash",provider:"alibaba",contextWindow:1e6,outputLimit:32768},{id:"qwen2-5-vl-7b-instruct",displayName:"Qwen2.5-VL 7B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3.6-plus",displayName:"Qwen3.6 Plus",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen3-max",displayName:"Qwen3 Max",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen3-omni-flash",displayName:"Qwen3-Omni Flash",provider:"alibaba",contextWindow:65536,outputLimit:16384},{id:"qwen2-5-72b-instruct",displayName:"Qwen2.5 72B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-vl-235b-a22b",displayName:"Qwen3-VL 235B-A22B",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen3-asr-flash",displayName:"Qwen3-ASR Flash",provider:"alibaba",contextWindow:53248,outputLimit:4096},{id:"qwen3-next-80b-a3b-thinking",displayName:"Qwen3-Next 80B-A3B (Thinking)",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen-mt-plus",displayName:"Qwen-MT Plus",provider:"alibaba",contextWindow:16384,outputLimit:8192},{id:"qwen-vl-max",displayName:"Qwen-VL Max",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-coder-flash",displayName:"Qwen3 Coder Flash",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen2-5-7b-instruct",displayName:"Qwen2.5 7B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen2-5-14b-instruct",displayName:"Qwen2.5 14B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen2-5-32b-instruct",displayName:"Qwen2.5 32B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-next-80b-a3b-instruct",displayName:"Qwen3-Next 80B-A3B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen-plus-character-ja",displayName:"Qwen Plus Character (Japanese)",provider:"alibaba",contextWindow:8192,outputLimit:512},{id:"qwen3-omni-flash-realtime",displayName:"Qwen3-Omni Flash Realtime",provider:"alibaba",contextWindow:65536,outputLimit:16384},{id:"qwen3-vl-30b-a3b",displayName:"Qwen3-VL 30B-A3B",provider:"alibaba",contextWindow:131072,outputLimit:32768},{id:"qwen3-vl-plus",displayName:"Qwen3-VL Plus",provider:"alibaba",contextWindow:262144,outputLimit:32768},{id:"qwen3-coder-480b-a35b-instruct",displayName:"Qwen3-Coder 480B-A35B Instruct",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen3-coder-30b-a3b-instruct",displayName:"Qwen3-Coder 30B-A3B Instruct",provider:"alibaba",contextWindow:262144,outputLimit:65536},{id:"qwen-turbo",displayName:"Qwen Turbo",provider:"alibaba",contextWindow:1e6,outputLimit:16384},{id:"qwen-mt-turbo",displayName:"Qwen-MT Turbo",provider:"alibaba",contextWindow:16384,outputLimit:8192},{id:"qwen2-5-omni-7b",displayName:"Qwen2.5-Omni 7B",provider:"alibaba",contextWindow:32768,outputLimit:2048},{id:"qwen3.5-plus",displayName:"Qwen3.5 Plus",provider:"alibaba",contextWindow:1e6,outputLimit:65536},{id:"qwen2-5-vl-72b-instruct",displayName:"Qwen2.5-VL 72B Instruct",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qvq-max",displayName:"QVQ Max",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"qwen3-14b",displayName:"Qwen3 14B",provider:"alibaba",contextWindow:131072,outputLimit:8192},{id:"command-a-reasoning-08-2025",displayName:"Command A Reasoning",provider:"cohere",contextWindow:256000,outputLimit:32000},{id:"command-r7b-12-2024",displayName:"Command R7B",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-vision-8b",displayName:"Aya Vision 8B",provider:"cohere",contextWindow:16000,outputLimit:4000},{id:"command-r-plus-08-2024",displayName:"Command R+",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-expanse-8b",displayName:"Aya Expanse 8B",provider:"cohere",contextWindow:8000,outputLimit:4000},{id:"command-r7b-arabic-02-2025",displayName:"Command R7B Arabic",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"command-a-vision-07-2025",displayName:"Command A Vision",provider:"cohere",contextWindow:128000,outputLimit:8000},{id:"c4ai-aya-vision-32b",displayName:"Aya Vision 32B",provider:"cohere",contextWindow:16000,outputLimit:4000},{id:"command-a-translate-08-2025",displayName:"Command A Translate",provider:"cohere",contextWindow:8000,outputLimit:8000},{id:"command-r-08-2024",displayName:"Command R",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"c4ai-aya-expanse-32b",displayName:"Aya Expanse 32B",provider:"cohere",contextWindow:128000,outputLimit:4000},{id:"command-a-03-2025",displayName:"Command A",provider:"cohere",contextWindow:256000,outputLimit:8000},{id:"anthropic.claude-3-5-sonnet-20241022-v2:0",displayName:"Claude Sonnet 3.5 v2",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"openai.gpt-oss-safeguard-120b",displayName:"GPT OSS Safeguard 120B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-nano-3-30b",displayName:"NVIDIA Nemotron Nano 3 30B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-2-90b-instruct-v1:0",displayName:"Llama 3.2 90B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-super-3-120b",displayName:"NVIDIA Nemotron 3 Super 120B A12B",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"writer.palmyra-x5-v1:0",displayName:"Palmyra X5",provider:"amazon-bedrock",contextWindow:1040000,outputLimit:8192},{id:"mistral.ministral-3-8b-instruct",displayName:"Ministral 3 8B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"au.anthropic.claude-opus-4-6-v1",displayName:"AU Anthropic Claude Opus 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"mistral.ministral-3-3b-instruct",displayName:"Ministral 3 3B",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"amazon.nova-premier-v1:0",displayName:"Nova Premier",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:16384},{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.devstral-2-123b",displayName:"Devstral 2 123B",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.voxtral-small-24b-2507",displayName:"Voxtral Small 24B 2507",provider:"amazon-bedrock",contextWindow:32000,outputLimit:8192},{id:"google.gemma-3-12b-it",displayName:"Google Gemma 3 12B",provider:"amazon-bedrock",contextWindow:131072,outputLimit:8192},{id:"amazon.nova-pro-v1:0",displayName:"Nova Pro",provider:"amazon-bedrock",contextWindow:300000,outputLimit:8192},{id:"anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"minimax.minimax-m2",displayName:"MiniMax M2",provider:"amazon-bedrock",contextWindow:204608,outputLimit:128000},{id:"global.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"mistral.pixtral-large-2502-v1:0",displayName:"Pixtral Large (25.02)",provider:"amazon-bedrock",contextWindow:128000,outputLimit:8192},{id:"meta.llama4-maverick-17b-instruct-v1:0",displayName:"Llama 4 Maverick 17B Instruct",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:16384},{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"amazon.nova-micro-v1:0",displayName:"Nova Micro",provider:"amazon-bedrock",contextWindow:128000,outputLimit:8192},{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"openai.gpt-oss-20b-1:0",displayName:"gpt-oss-20b",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"zai.glm-5",displayName:"GLM-5",provider:"amazon-bedrock",contextWindow:202752,outputLimit:101376},{id:"qwen.qwen3-32b-v1:0",displayName:"Qwen3 32B (dense)",provider:"amazon-bedrock",contextWindow:16384,outputLimit:16384},{id:"deepseek.v3.2",displayName:"DeepSeek-V3.2",provider:"amazon-bedrock",contextWindow:163840,outputLimit:81920},{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"zai.glm-4.7-flash",displayName:"GLM-4.7-Flash",provider:"amazon-bedrock",contextWindow:200000,outputLimit:131072},{id:"us.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"amazon.nova-2-lite-v1:0",displayName:"Nova 2 Lite",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"qwen.qwen3-coder-480b-a35b-v1:0",displayName:"Qwen3 Coder 480B A35B Instruct",provider:"amazon-bedrock",contextWindow:131072,outputLimit:65536},{id:"meta.llama3-2-1b-instruct-v1:0",displayName:"Llama 3.2 1B Instruct",provider:"amazon-bedrock",contextWindow:131000,outputLimit:4096},{id:"amazon.nova-lite-v1:0",displayName:"Nova Lite",provider:"amazon-bedrock",contextWindow:300000,outputLimit:8192},{id:"meta.llama3-1-8b-instruct-v1:0",displayName:"Llama 3.1 8B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"google.gemma-3-27b-it",displayName:"Google Gemma 3 27B Instruct",provider:"amazon-bedrock",contextWindow:202752,outputLimit:8192},{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",displayName:"Claude Haiku 4.5 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"google.gemma-3-4b-it",displayName:"Gemma 3 4B IT",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama4-scout-17b-instruct-v1:0",displayName:"Llama 4 Scout 17B Instruct",provider:"amazon-bedrock",contextWindow:3500000,outputLimit:16384},{id:"deepseek.v3-v1:0",displayName:"DeepSeek-V3.1",provider:"amazon-bedrock",contextWindow:163840,outputLimit:81920},{id:"mistral.magistral-small-2509",displayName:"Magistral Small 1.2",provider:"amazon-bedrock",contextWindow:128000,outputLimit:40000},{id:"qwen.qwen3-next-80b-a3b",displayName:"Qwen/Qwen3-Next-80B-A3B-Instruct",provider:"amazon-bedrock",contextWindow:262000,outputLimit:262000},{id:"zai.glm-4.7",displayName:"GLM-4.7",provider:"amazon-bedrock",contextWindow:204800,outputLimit:131072},{id:"moonshot.kimi-k2-thinking",displayName:"Kimi K2 Thinking",provider:"amazon-bedrock",contextWindow:256000,outputLimit:256000},{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"mistral.ministral-3-14b-instruct",displayName:"Ministral 14B 3.0",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"anthropic.claude-3-haiku-20240307-v1:0",displayName:"Claude Haiku 3",provider:"amazon-bedrock",contextWindow:200000,outputLimit:4096},{id:"deepseek.r1-v1:0",displayName:"DeepSeek-R1",provider:"amazon-bedrock",contextWindow:128000,outputLimit:32768},{id:"meta.llama3-1-405b-instruct-v1:0",displayName:"Llama 3.1 405B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"mistral.voxtral-mini-3b-2507",displayName:"Voxtral Mini 3B 2507",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"openai.gpt-oss-120b-1:0",displayName:"gpt-oss-120b",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"nvidia.nemotron-nano-12b-v2",displayName:"NVIDIA Nemotron Nano 12B v2 VL BF16",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"eu.anthropic.claude-opus-4-7",displayName:"Claude Opus 4.7 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"minimax.minimax-m2.5",displayName:"MiniMax M2.5",provider:"amazon-bedrock",contextWindow:196608,outputLimit:98304},{id:"meta.llama3-3-70b-instruct-v1:0",displayName:"Llama 3.3 70B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-1-70b-instruct-v1:0",displayName:"Llama 3.1 70B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"meta.llama3-2-3b-instruct-v1:0",displayName:"Llama 3.2 3B Instruct",provider:"amazon-bedrock",contextWindow:131000,outputLimit:4096},{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",displayName:"Claude Sonnet 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",displayName:"Claude Opus 4.5 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"meta.llama3-2-11b-instruct-v1:0",displayName:"Llama 3.2 11B Instruct",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"moonshotai.kimi-k2.5",displayName:"Kimi K2.5",provider:"amazon-bedrock",contextWindow:256000,outputLimit:256000},{id:"au.anthropic.claude-sonnet-4-6",displayName:"AU Anthropic Claude Sonnet 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"openai.gpt-oss-safeguard-20b",displayName:"GPT OSS Safeguard 20B",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"qwen.qwen3-coder-30b-a3b-v1:0",displayName:"Qwen3 Coder 30B A3B Instruct",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"minimax.minimax-m2.1",displayName:"MiniMax M2.1",provider:"amazon-bedrock",contextWindow:204800,outputLimit:131072},{id:"qwen.qwen3-vl-235b-a22b",displayName:"Qwen/Qwen3-VL-235B-A22B-Instruct",provider:"amazon-bedrock",contextWindow:262000,outputLimit:262000},{id:"qwen.qwen3-coder-next",displayName:"Qwen3 Coder Next",provider:"amazon-bedrock",contextWindow:131072,outputLimit:65536},{id:"nvidia.nemotron-nano-9b-v2",displayName:"NVIDIA Nemotron Nano 9B v2",provider:"amazon-bedrock",contextWindow:128000,outputLimit:4096},{id:"mistral.mistral-large-3-675b-instruct",displayName:"Mistral Large 3",provider:"amazon-bedrock",contextWindow:256000,outputLimit:8192},{id:"qwen.qwen3-235b-a22b-2507-v1:0",displayName:"Qwen3 235B A22B 2507",provider:"amazon-bedrock",contextWindow:262144,outputLimit:131072},{id:"anthropic.claude-3-7-sonnet-20250219-v1:0",displayName:"Claude Sonnet 3.7",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"writer.palmyra-x4-v1:0",displayName:"Palmyra X4",provider:"amazon-bedrock",contextWindow:122880,outputLimit:8192},{id:"anthropic.claude-opus-4-1-20250805-v1:0",displayName:"Claude Opus 4.1",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-3-5-sonnet-20240620-v1:0",displayName:"Claude Sonnet 3.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"eu.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"eu.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (EU)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"us.anthropic.claude-opus-4-20250514-v1:0",displayName:"Claude Opus 4 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"us.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"global.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"us.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"global.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (Global)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"us.anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6 (US)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",displayName:"Claude Opus 4.1 (US)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"global.anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4 (Global)",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"eu.anthropic.claude-sonnet-4-6",displayName:"Claude Sonnet 4.6 (EU)",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:64000},{id:"anthropic.claude-opus-4-20250514-v1:0",displayName:"Claude Opus 4",provider:"amazon-bedrock",contextWindow:200000,outputLimit:32000},{id:"anthropic.claude-sonnet-4-20250514-v1:0",displayName:"Claude Sonnet 4",provider:"amazon-bedrock",contextWindow:200000,outputLimit:64000},{id:"anthropic.claude-opus-4-6-v1",displayName:"Claude Opus 4.6",provider:"amazon-bedrock",contextWindow:1e6,outputLimit:128000},{id:"anthropic.claude-3-5-haiku-20241022-v1:0",displayName:"Claude Haiku 3.5",provider:"amazon-bedrock",contextWindow:200000,outputLimit:8192},{id:"gpt-5.2-chat",displayName:"GPT-5.2 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"codex-mini",displayName:"Codex Mini",provider:"azure",contextWindow:200000,outputLimit:1e5},{id:"phi-4-multimodal",displayName:"Phi-4-multimodal",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"phi-3.5-mini-instruct",displayName:"Phi-3.5-mini-instruct",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"llama-4-scout-17b-16e-instruct",displayName:"Llama 4 Scout 17B 16E Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"grok-4-1-fast-reasoning",displayName:"Grok 4.1 Fast (Reasoning)",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"phi-3-medium-4k-instruct",displayName:"Phi-3-medium-instruct (4k)",provider:"azure",contextWindow:4096,outputLimit:1024},{id:"ministral-3b",displayName:"Ministral 3B",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"meta-llama-3.1-8b-instruct",displayName:"Meta-Llama-3.1-8B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"llama-3.3-70b-instruct",displayName:"Llama-3.3-70B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"deepseek-v3-0324",displayName:"DeepSeek-V3-0324",provider:"azure",contextWindow:131072,outputLimit:131072},{id:"gpt-5-chat",displayName:"GPT-5 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"phi-3.5-moe-instruct",displayName:"Phi-3.5-MoE-instruct",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-5.3-chat",displayName:"GPT-5.3 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"phi-3-mini-128k-instruct",displayName:"Phi-3-mini-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"phi-4-reasoning",displayName:"Phi-4-reasoning",provider:"azure",contextWindow:32000,outputLimit:4096},{id:"meta-llama-3-70b-instruct",displayName:"Meta-Llama-3-70B-Instruct",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"phi-3-small-8k-instruct",displayName:"Phi-3-small-instruct (8k)",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"llama-3.2-90b-vision-instruct",displayName:"Llama-3.2-90B-Vision-Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"deepseek-r1",displayName:"DeepSeek-R1",provider:"azure",contextWindow:163840,outputLimit:163840},{id:"deepseek-v3.2-speciale",displayName:"DeepSeek-V3.2-Speciale",provider:"azure",contextWindow:128000,outputLimit:128000},{id:"cohere-command-a",displayName:"Command A",provider:"azure",contextWindow:256000,outputLimit:8000},{id:"llama-3.2-11b-vision-instruct",displayName:"Llama-3.2-11B-Vision-Instruct",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"meta-llama-3.1-405b-instruct",displayName:"Meta-Llama-3.1-405B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"gpt-5.1-chat",displayName:"GPT-5.1 Chat",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"gpt-4-turbo-vision",displayName:"GPT-4 Turbo Vision",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"cohere-embed-v-4-0",displayName:"Embed v4",provider:"azure",contextWindow:128000,outputLimit:1536},{id:"gpt-3.5-turbo-0125",displayName:"GPT-3.5 Turbo 0125",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"cohere-embed-v3-multilingual",displayName:"Embed v3 Multilingual",provider:"azure",contextWindow:512,outputLimit:1024},{id:"grok-4-20-non-reasoning",displayName:"Grok 4.20 (Non-Reasoning)",provider:"azure",contextWindow:262000,outputLimit:8192},{id:"grok-4-fast-reasoning",displayName:"Grok 4 Fast (Reasoning)",provider:"azure",contextWindow:2000000,outputLimit:30000},{id:"mistral-small-2503",displayName:"Mistral Small 3.1",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"model-router",displayName:"Model Router",provider:"azure",contextWindow:128000,outputLimit:16384},{id:"gpt-3.5-turbo-1106",displayName:"GPT-3.5 Turbo 1106",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"deepseek-v3.1",displayName:"DeepSeek-V3.1",provider:"azure",contextWindow:131072,outputLimit:131072},{id:"phi-3-mini-4k-instruct",displayName:"Phi-3-mini-instruct (4k)",provider:"azure",contextWindow:4096,outputLimit:1024},{id:"meta-llama-3.1-70b-instruct",displayName:"Meta-Llama-3.1-70B-Instruct",provider:"azure",contextWindow:128000,outputLimit:32768},{id:"phi-4-mini-reasoning",displayName:"Phi-4-mini-reasoning",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"meta-llama-3-8b-instruct",displayName:"Meta-Llama-3-8B-Instruct",provider:"azure",contextWindow:8192,outputLimit:2048},{id:"phi-4-mini",displayName:"Phi-4-mini",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"grok-4-20-reasoning",displayName:"Grok 4.20 (Reasoning)",provider:"azure",contextWindow:262000,outputLimit:8192},{id:"gpt-3.5-turbo-0301",displayName:"GPT-3.5 Turbo 0301",provider:"azure",contextWindow:4096,outputLimit:4096},{id:"phi-3-small-128k-instruct",displayName:"Phi-3-small-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"deepseek-v3.2",displayName:"DeepSeek-V3.2",provider:"azure",contextWindow:128000,outputLimit:128000},{id:"phi-3-medium-128k-instruct",displayName:"Phi-3-medium-instruct (128k)",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-3.5-turbo-0613",displayName:"GPT-3.5 Turbo 0613",provider:"azure",contextWindow:16384,outputLimit:16384},{id:"phi-4",displayName:"Phi-4",provider:"azure",contextWindow:128000,outputLimit:4096},{id:"gpt-4-32k",displayName:"GPT-4 32K",provider:"azure",contextWindow:32768,outputLimit:32768},{id:"cohere-embed-v3-english",displayName:"Embed v3 English",provider:"azure",contextWindow:512,outputLimit:1024},{id:"phi-4-reasoning-plus",displayName:"Phi-4-reasoning-plus",provider:"azure",contextWindow:32000,outputLimit:4096},{id:"gpt-3.5-turbo-instruct",displayName:"GPT-3.5 Turbo Instruct",provider:"azure",contextWindow:4096,outputLimit:4096},{id:"deepseek-r1-0528",displayName:"DeepSeek-R1-0528",provider:"azure",contextWindow:163840,outputLimit:163840},{id:"codestral-2501",displayName:"Codestral 25.01",provider:"azure",contextWindow:256000,outputLimit:256000},{id:"llama-4-maverick-17b-128e-instruct-fp8",displayName:"Llama 4 Maverick 17B 128E Instruct FP8",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"mai-ds-r1",displayName:"MAI-DS-R1",provider:"azure",contextWindow:128000,outputLimit:8192},{id:"cohere-command-r-08-2024",displayName:"Command R",provider:"azure",contextWindow:128000,outputLimit:4000},{id:"cohere-command-r-plus-08-2024",displayName:"Command R+",provider:"azure",contextWindow:128000,outputLimit:4000}];var Mz=86400000,Uz=null;function HL(){return Uz??Hz(Jz(),".tako","models-cache.json")}var vw=new Map,_w=!1;function UN(B){vw.clear();for(let I of B)if(!vw.has(I.id))vw.set(I.id,I)}function Lz(){try{let I=cA("fs").readFileSync(HL(),"utf-8"),C=JSON.parse(I);if(typeof C?.fetchedAt!=="number"||!Array.isArray(C?.entries))return null;return C}catch{return null}}async function uz(B){try{let I=await import("fs/promises"),C=HL(),g=C.slice(0,C.lastIndexOf("/"));if(g)await I.mkdir(g,{recursive:!0}).catch(()=>{});await I.writeFile(C,JSON.stringify(B),"utf-8")}catch{}}function HE(){if(_w)return;_w=!0;let B=Lz();if(B&&Date.now()-B.fetchedAt<Mz){UN(B.entries);return}UN(zI)}async function LN(){try{let B=await NL();if(!B.length)return;UN(B),await uz({fetchedAt:Date.now(),entries:B}),_w=!0}catch{}}function JL(B){let I=B.match(/^(.+?)(?:\[1m\]|:1m)$/i),C=I?I[1]:B,g=C.match(/^[^\/]+\/(.+)$/);return{lookupId:g?g[1]:C,is1m:!!I}}function uN(B){if(!_w)HE();let{lookupId:I,is1m:C}=JL(B),g=vw.get(I);if(!g)return;if(C)return{...g,contextWindow:1e6};return g}ZN();var kN=qN(qz(),".codex"),LL=qN(kN,"config.toml"),uL=qN(kN,"auth.json");function RL(B,I){let C={...B};for(let[g,F]of Object.entries(I))if(F&&typeof F==="object"&&!Array.isArray(F)&&C[g]&&typeof C[g]==="object"&&!Array.isArray(C[g]))C[g]=RL(C[g],F);else C[g]=F;return C}function kz(B){if(B.model_providers?.crs)delete B.model_providers.crs;if(B.model_provider==="crs")delete B.model_provider;if(B.openai_base_url)delete B.openai_base_url;let I=B.model_providers?.tako;if(I)delete I.wire_api,delete I.request_max_retries,delete I.stream_max_retries,delete I.api_key,delete I.env_key;return B}function KL(B){if(B.model_providers?.tako)delete B.model_providers.tako.supports_websockets;if(B.features){if(delete B.features.multi_agent,delete B.features.responses_websockets_v2,Object.keys(B.features).length===0)delete B.features}}async function zz(B,I){let C=await import("fs/promises");try{await C.mkdir(kN,{recursive:!0})}catch{}let g={};try{g=GN(await C.readFile(LL,"utf-8"))}catch{}if(g=kz(g),B.type==="codex-subscription")if(delete g.model_provider,g.check_for_update_on_startup=!1,g.remote_compaction_v2=!1,KL(g),B.authData)await Bun.write(uL,JSON.stringify(B.authData,null,2)+`
773
+ `);else await Bun.write(uL,JSON.stringify({OPENAI_API_KEY:null,auth_mode:"chatgpt"},null,2)+`
774
+ `);else{let F;if(B.type==="tako")F=`${rQ}/v1`;else if(B.type==="deepseek")F="https://api.deepseek.com/v1";else F=`${B.baseUrl}/v1`;let H=I?.find((k)=>k.startsWith("model-"))?.slice(6)||B.model||"gpt-5.5",M=/^gpt[-.]/i.test(H),U;if(!M){if(U=zI.find((W)=>W.id===H)?.contextWindow,!U&&(B.type==="tako"||B.type==="custom")&&B.baseUrl){let W=dC(B.baseUrl,"openai")?.find((z)=>z.id===H);if(W&&W.contextWindow>0)U=W.contextWindow}if(!U)U=B.modelContextWindow}else delete g.model_context_window;let u={name:"tako",base_url:F,requires_openai_auth:!0};if(B.apiKey)u.experimental_bearer_token=B.apiKey;KL(g);let X={model_provider:"tako",model:H,check_for_update_on_startup:!1,remote_compaction_v2:!1,model_providers:{tako:u}};if(U)X.model_context_window=U;g=RL(g,X)}await Bun.write(LL,MN(g))}var Oz={id:"codex",name:"Codex",package:"@openai/codex",command:"codex",runtime:"bun",continueArg:"--continue",brandColor:"blue",getEnvVars(B){return{}},setupConfigFiles:zz,launchOptions:(B)=>Vz(B)},Sz=[{id:"search",label:{en:"Web Search",zh:"\u7F51\u7EDC\u641C\u7D22"},shortLabel:"Search",description:{en:"Enable real-time web search",zh:"\u542F\u7528\u5B9E\u65F6\u7F51\u9875\u641C\u7D22"},flag:"--search",args:["--search"]},{id:"bypass-sandbox",label:{en:"Bypass Sandbox",zh:"\u7ED5\u8FC7\u5BA1\u6279\u4E0E\u6C99\u7BB1"},shortLabel:"Bypass",description:{en:"DANGEROUS: skip all approvals & sandbox (use only in disposable envs)",zh:"\u5371\u9669\uFF1A\u8DF3\u8FC7\u6240\u6709\u5BA1\u6279\u4E0E\u6C99\u7BB1\u9650\u5236\uFF08\u4EC5\u9650\u9694\u79BB/\u4E34\u65F6\u73AF\u5883\u4F7F\u7528\uFF09"},flag:"--dangerously-bypass-approvals-and-sandbox",args:["--dangerously-bypass-approvals-and-sandbox"]}],$z=["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.3"],yz=["deepseek-v4-flash","deepseek-v4-pro"];function XN(B){if(B>=1e6)return"1M";if(B>0)return`${Math.round(B/1000)}k`;return"?"}function Tz(B){return/^claude[-_]/i.test(B)||/^anthropic[-_/]/i.test(B)}function vz(B){if(!B.baseUrl)return null;let I=dC(B.baseUrl,"openai");if(!I||I.length===0)return null;let C=I.filter((g)=>!Tz(g.id));if(C.length===0)return null;return C.map((g)=>({id:`model-${g.id}`,label:{en:g.displayName,zh:g.displayName},shortLabel:g.displayName,description:{en:`Use ${g.displayName} (${XN(g.contextWindow)} ctx)`,zh:`\u4F7F\u7528 ${g.displayName}\uFF08\u4E0A\u4E0B\u6587 ${XN(g.contextWindow)}\uFF09`},flag:`--model ${g.id}`,args:["--model",g.id],group:"model"}))}function _z(B){if(HE(),B&&(B.type==="tako"||B.type==="custom")){let g=vz(B);if(g)return g}let I=B?.type==="deepseek"?yz:$z,C=[];for(let g of I){let F=zI.find((M)=>M.id===g),N=XN(F?.contextWindow??0),H=F?.displayName??g;C.push({id:`model-${g}`,label:{en:H,zh:H},shortLabel:H,description:{en:`Use ${H} (${N} ctx)`,zh:`\u4F7F\u7528 ${H}\uFF08\u4E0A\u4E0B\u6587 ${N}\uFF09`},flag:`--model ${g}`,args:["--model",g],group:"model"})}return C}function Vz(B){return[...Sz,..._z(B)]}E2(Oz);kI();cC();eE();kQ();import{homedir as AO}from"os";import{dirname as BO,join as vL}from"path";sB();var QO=vL(AO(),".claude","settings.json"),IO=vL(uQ,"claude-code","settings.json"),EO=["CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC","API_TIMEOUT_MS"];function CO(B){if(B.startsWith("ANTHROPIC_"))return!0;return EO.includes(B)}function gO(B){let I={...B},C=[],g=B.env;if(g&&typeof g==="object"&&!Array.isArray(g)){let F={...g};for(let N of Object.keys(F))if(CO(N))C.push(N),delete F[N];if(C.length>0)if(Object.keys(F).length===0)delete I.env;else I.env=F}return{settings:I,cleanedFields:C}}async function DO(B={}){let I=await import("fs/promises"),C=B.sourcePath??QO,g=B.targetPath??IO,F;try{F=await I.readFile(C,"utf-8")}catch{return null}let N;try{N=JSON.parse(F)}catch{return null}let{settings:H,cleanedFields:M}=gO(N);if(M.length===0)return null;if(B.logConflicts!==!1)nA.warn(jA("claudeCode.settingsDetected",{fields:M.join(", ")})),nA.info(jA("claudeCode.usingIsolatedSettings",{path:g}));return await I.mkdir(BO(g),{recursive:!0}),await I.writeFile(g,JSON.stringify(H,null,2)+`
775
+ `),{args:["--setting-sources","project,local","--settings",g],cleanedFields:M,settingsPath:g}}async function FO(B){let{readClaudeAuth:I,writeClaudeAuth:C}=await Promise.resolve().then(() => (hw(),mw)),{getProviders:g,updateProvider:F}=await Promise.resolve().then(() => (_0(),yL)),N=B.authData?.credentials,H=B.authData?.oauthAccount;if(!N){nA.warn(jA("claudeCode.subscriptionMissingAuth"));return}let M=await I(),U=M.oauthAccount?.emailAddress;if(U&&M.credentials){let k=(await g()).find((W)=>W.type==="claude-subscription"&&W.email===U);if(k){let W={credentials:M.credentials,oauthAccount:M.oauthAccount};if(JSON.stringify(k.authData)!==JSON.stringify(W))await F(k.id,{authData:W})}else if(U!==H?.emailAddress)nA.warn(jA("claudeCode.unknownCurrentAccount",{email:U}))}await C({credentials:N,oauthAccount:H});let u=H?.emailAddress||"?";nA.info(jA("claudeCode.subscriptionSwitched",{email:u}))}var wO={id:"claude-code",name:"Claude Code",package:"@anthropic-ai/claude-code",command:"claude",runtime:"native",continueArg:"--continue",brandColor:"yellow",getEnvVars(B){let I={CLAUDE_CODE_DISABLE_UPDATE_CHECK:"1",DISABLE_AUTOUPDATER:"1"},C=B.model?F2(B.model):void 0;switch(B.type){case"claude-subscription":return I;case"tako":return{...I,ANTHROPIC_BASE_URL:`${B.baseUrl}/api`,ANTHROPIC_AUTH_TOKEN:B.apiKey,...C?{ANTHROPIC_MODEL:C}:{}};case"anthropic":return{...I,ANTHROPIC_API_KEY:B.apiKey,...C?{ANTHROPIC_MODEL:C}:{}};case"deepseek":return{...I,ANTHROPIC_BASE_URL:ON,ANTHROPIC_AUTH_TOKEN:B.apiKey,...C?{ANTHROPIC_MODEL:C}:{}};case"xiaomi":return{...I,ANTHROPIC_BASE_URL:$N(B.apiKey),ANTHROPIC_AUTH_TOKEN:B.apiKey,...C?{ANTHROPIC_MODEL:C}:{}};case"custom":return{...I,ANTHROPIC_BASE_URL:B.baseUrl,ANTHROPIC_AUTH_TOKEN:B.apiKey,...C?{ANTHROPIC_MODEL:C}:{}};default:return I}},async setupConfigFiles(B,I,C){let g=[];if(C?.forLaunch){let F=await DO();if(F)g=F.args}if(B.type==="claude-subscription")await FO(B);return g.length>0?{args:g}:void 0},launchOptions:(B)=>KO(B)},GO=[{id:"skip-permissions",label:{en:"Skip Permissions",zh:"\u8DF3\u8FC7\u6743\u9650\u786E\u8BA4"},shortLabel:"Skip Perms",description:{en:"Auto-execute all operations without confirmation",zh:"\u5141\u8BB8\u81EA\u52A8\u6267\u884C\u6240\u6709\u64CD\u4F5C\uFF0C\u65E0\u9700\u786E\u8BA4"},flag:"--dangerously-skip-permissions",args:["--dangerously-skip-permissions"]},{id:"worktree",label:{en:"Git Worktree",zh:"Git Worktree"},shortLabel:"Worktree",description:{en:"Run in an isolated worktree",zh:"\u5728\u9694\u79BB\u7684 worktree \u4E2D\u8FD0\u884C"},flag:"--worktree",args:["--worktree"]}],NO=["claude-sonnet-4-6","claude-opus-4-6","claude-opus-4-7"],HO=["deepseek-v4-flash","deepseek-v4-pro"],JO=["mimo-v2.5-pro"];function MO(B){let I=B.match(/^claude-(haiku|sonnet|opus)-(\d{1,2})-(\d{1,2})$/);if(I)return`${I[1].charAt(0).toUpperCase()+I[1].slice(1)} ${I[2]}.${I[3]}`;return zI.find((g)=>g.id===B)?.displayName??B}function F2(B){if(!B)return B;if(B.endsWith("[1m]")||/:1m$/i.test(B))return B;if(!/^(claude|deepseek|kimi|mimo)[-_]/i.test(B))return B;let I=zI.find((C)=>C.id===B);if(!I||I.contextWindow<1e6)return B;return`${B}[1m]`}function TL(B){if(B>=1e6)return"1M";if(B>0)return`${Math.round(B/1000)}k`;return"?"}function UO(B){return/^(gpt[-_]|chatgpt[-_]|o\d+([-_]|$)|davinci[-_]|text-davinci[-_]|openai[-_/])/i.test(B)}function LO(B){if(!B.baseUrl)return null;let I=dC(B.baseUrl,"claude");if(!I||I.length===0)return null;let C=I.filter((g)=>!UO(g.id));if(C.length===0)return null;return C.map((g)=>{let F=F2(g.id);return{id:`model-${g.id}`,label:{en:g.displayName,zh:g.displayName},shortLabel:g.displayName,description:{en:`Use ${g.displayName} (${TL(g.contextWindow)} ctx)`,zh:`\u4F7F\u7528 ${g.displayName}\uFF08\u4E0A\u4E0B\u6587 ${TL(g.contextWindow)}\uFF09`},flag:`--model ${F}`,args:[],envVars:{ANTHROPIC_MODEL:F},group:"model"}})}function uO(B){if(HE(),B&&(B.type==="tako"||B.type==="custom")){let g=LO(B);if(g)return g}let I=B?.type==="deepseek"?HO:B?.type==="xiaomi"?JO:NO,C=[];for(let g of I){let N=zI.find((u)=>u.id===g)?.contextWindow??0,H=N>=1e6?"1M":N>0?`${Math.round(N/1000)}k`:"?",M=MO(g),U=F2(g);C.push({id:`model-${g}`,label:{en:M,zh:M},shortLabel:M,description:{en:`Use ${M} (${H} ctx)`,zh:`\u4F7F\u7528 ${M}\uFF08\u4E0A\u4E0B\u6587 ${H}\uFF09`},flag:`--model ${U}`,args:[],envVars:{ANTHROPIC_MODEL:U},group:"model"})}return C}function KO(B){return[...GO,...uO(B)]}E2(wO);kI();import{homedir as RO}from"os";import{join as VL}from"path";var PL=VL(RO(),".gemini"),_L=VL(PL,"settings.json");async function WO(){let B=await import("fs/promises");try{await B.mkdir(PL,{recursive:!0})}catch{}let I={};try{I=JSON.parse(await B.readFile(_L,"utf-8"))}catch{}let C=I.security?.auth||{};if(C.selectedType==="gemini-api-key")return;I.selectedAuthType="gemini-api-key",I.security={...I.security,auth:{...C,selectedType:"gemini-api-key"}},await Bun.write(_L,JSON.stringify(I,null,2)+`
776
+ `)}var YO={id:"gemini",name:"Gemini CLI",package:"@google/gemini-cli",command:"gemini",runtime:"bun",brandColor:"cyan",getEnvVars(B){return{GEMINI_API_KEY:B.apiKey,GOOGLE_GEMINI_BASE_URL:B.baseUrl||"https://tako.shiroha.tech"}},setupConfigFiles:WO};E2(YO);kI();_0();sB();await $1();sB();import{homedir as pv}from"os";var iv=50,PH=3;async function mH(B){try{return(await(await import("fs/promises")).stat(B)).isDirectory()}catch{return!1}}async function HY(B,I,C){let g=await AB(),F=g.recentProjects||[],N=new Date().toISOString(),H=F.findIndex((U)=>U.path===B);if(H>=0){let U=F[H],u=U.clientUsage||{},X=u[I]||{count:0,lastAt:N};F[H]={...U,launchCount:U.launchCount+1,lastLaunchedAt:N,lastClientId:I,clientUsage:{...u,[I]:{count:X.count+1,lastAt:N,lastSelectedOptionIds:C??X.lastSelectedOptionIds}}}}else F.push({path:B,launchCount:1,lastLaunchedAt:N,lastClientId:I,clientUsage:{[I]:{count:1,lastAt:N,lastSelectedOptionIds:C}}});let M=F.sort((U,u)=>new Date(u.lastLaunchedAt).getTime()-new Date(U.lastLaunchedAt).getTime()).slice(0,iv);g.recentProjects=M,await KI(g)}async function a3(B){let C=(await AB()).recentProjects||[],g=process.cwd(),N=C.find((M)=>M.path===g)?.clientUsage?.[B]?.lastSelectedOptionIds;if(N)return N;return C.filter((M)=>M.path!==g&&M.clientUsage?.[B]?.lastSelectedOptionIds).sort((M,U)=>{let u=new Date(M.clientUsage[B].lastAt).getTime();return new Date(U.clientUsage[B].lastAt).getTime()-u})[0]?.clientUsage?.[B]?.lastSelectedOptionIds??[]}function dv(B,I){let C=B.clientUsage?.[I];if(C)return new Date(C.lastAt).getTime();if(B.lastClientId===I)return new Date(B.lastLaunchedAt).getTime();return 0}async function JY(B,I=PH,C=!0){let F=(await AB()).recentProjects||[],N=process.cwd(),M=F.filter((u)=>{if(C&&u.path===N)return!1;return u.clientUsage?.[B]||u.lastClientId===B}).map((u)=>({...u,lastUsedTime:dv(u,B)})).sort((u,X)=>X.lastUsedTime-u.lastUsedTime),U=[];for(let{lastUsedTime:u,...X}of M){if(U.length>=I)break;if(await mH(X.path))U.push(X)}return U}async function MY(){let I=(await AB()).recentProjects||[],C=process.cwd();return I.find((F)=>F.path===C)?.lastClientId||null}function hH(B,I=25){let C=pv(),g=B.startsWith(C)?"~"+B.slice(C.length):B;if(g.length>I){let N=g.split("/").pop()||"";if(N.length>I-4)g="..."+N.slice(-I+3);else g=`.../${N}`}return g}function UY(B){let{t:I}=(kQ(),lk(XL)),C=Date.now(),g=new Date(B).getTime(),F=C-g,N=Math.floor(F/60000),H=Math.floor(F/3600000),M=Math.floor(F/86400000),U=Math.floor(M/7),u=Math.floor(M/30);if(N<1)return I("time.justNow");if(N<60)return I("time.minutesAgo",{n:N});if(H<24)return I("time.hoursAgo",{n:H});if(M===1)return I("time.yesterday");if(M<7)return I("time.daysAgo",{n:M});if(M<30)return I("time.weeksAgo",{n:U});return I("time.monthsAgo",{n:u})}eE();kQ();uE();kI();await $1();var bH="TAKO_WINDOWS_HANDOFF_FILE";function y1(B){return`'${B.replace(/'/g,"''")}'`}function LY(B){if(B.length===0)return"@()";return`@(${B.map(y1).join(", ")})`}function o3(B){let[I,...C]=B.command;if(!I)throw Error("handoff command is empty");let g=["$ErrorActionPreference = 'Stop'","$scriptPath = $PSCommandPath"];for(let[N,H]of Object.entries(B.env??{})){if(H===void 0)continue;if(!/^[A-Za-z_][A-Za-z0-9_]*$/.test(N))continue;g.push(`$env:${N} = ${y1(String(H))}`)}g.push(`Set-Location -LiteralPath ${y1(B.cwd)}`,"$esc = [char]27",'try { [Console]::Write("$esc[2J$esc[3J$esc[H") } catch {}',`$argv = ${LY(C)}`,"$code = 0","try {",` & ${y1(I)} @argv`," $code = if ($null -ne $LASTEXITCODE) { $LASTEXITCODE } else { 0 }","} finally {"," Remove-Item -LiteralPath $scriptPath -Force -ErrorAction SilentlyContinue");let F=B.relaunchCommand??[];if(F.length>0){let[N,...H]=F;g.push(` $relaunchArgv = ${LY(H)}`,` & ${y1(N)} @relaunchArgv`," $code = if ($null -ne $LASTEXITCODE) { $LASTEXITCODE } else { $code }")}return g.push("}","exit $code",""),g.join(`\r
777
+ `)}async function uY(B,I){try{let C=I?.projectPath||process.cwd(),g=I?.providerContext,F=process.platform==="win32";if(!g)return{success:!1,error:"\u672A\u9009\u62E9\u670D\u52A1\u5546"};let N=await Q2(B);if(!N)N=I2(B);if(!await Bun.file(N).exists()){let{execSync:W}=await import("child_process"),z=F?`where ${B.command}.exe 2>nul || where ${B.command}.cmd 2>nul || where ${B.command}`:`which ${B.command}`;try{let $=W(z,{encoding:"utf8"}).split(`
778
+ `).map((v)=>v.trim().replace(/\r$/,"")).filter(Boolean),O=F?$.find((v)=>v.toLowerCase().endsWith(".exe"))??$.find((v)=>v.toLowerCase().endsWith(".cmd"))??$[0]:$[0];if(O)N=O;else return{success:!1,error:`\u627E\u4E0D\u5230 ${B.command}\uFF0C\u8BF7\u8FD0\u884C tako install ${B.id}`}}catch{return{success:!1,error:`\u627E\u4E0D\u5230 ${B.command}\uFF0C\u8BF7\u8FD0\u884C tako install ${B.id}`}}}let U={...B.getEnvVars(g),...I?.envVars??{}},u={...process.env,...U},X;if(B.runtime==="native")if(F&&N.toLowerCase().endsWith(".js"))X=[await KE(),N];else X=[N];else X=[await KE(),N];if(I?.args&&I.args.length>0)X=[...X,...I.args];if(F&&I?.handoffOnWindows){let W=await import("fs/promises"),z=process.env[bH];if(z)return await W.writeFile(z,o3({command:X,cwd:C,env:U}),"utf8"),{success:!0}}if(F&&I?.relaunchTakoOnWindows){let W=await import("fs/promises"),z=process.env[bH];if(z){let $=[process.argv[0],process.argv[1]].filter((O)=>typeof O==="string"&&O.length>0);return await W.writeFile(z,o3({command:X,cwd:C,env:U,relaunchCommand:$}),"utf8"),{success:!0}}}async function k(){try{if(process.stdin.removeAllListeners(),!F&&process.stdin.isTTY)process.stdin.setRawMode(!1);process.stdin.pause()}catch{}}if(F){let W=await import("fs/promises"),{join:z}=await import("path"),{tmpdir:$}=await import("os"),O=z($(),`tako-handoff-${process.pid}-${Date.now()}.ps1`);await W.writeFile(O,o3({command:X,cwd:C}),"utf8"),await k();try{let d=await Bun.spawn(["powershell.exe","-NoProfile","-ExecutionPolicy","Bypass","-File",O],{env:u,stdio:["inherit","inherit","inherit"],cwd:C}).exited;return{success:d===0,exitCode:d}}catch(v){return await W.rm(O,{force:!0}).catch(()=>{}),{success:!1,error:v instanceof Error?v.message:"PowerShell handoff \u542F\u52A8\u5931\u8D25"}}}if(await k(),process.stdout.isTTY)try{process.stdout.write("\x1B[2J\x1B[3J\x1B[H")}catch{}try{Bun.spawnSync(X,{env:u,stdio:["inherit","inherit","inherit"],cwd:C})}catch{await Bun.spawn(X,{env:u,stdio:["inherit","inherit","inherit"],cwd:C}).exited}return{success:!0}}catch(C){return{success:!1,error:C instanceof Error?C.message:"\u542F\u52A8\u5931\u8D25"}}}async function cv(B,I){if(I?.providerContext)return I.providerContext;let C=await cI();if(C){let g=await AC(B.id);if(g.some((N)=>N.id===C.id))return SI(C);if(g.length>0)return SI(g[0])}return null}async function n3(B,I){try{let C=I?.projectPath||process.cwd();if(I?.projectPath){if(!await mH(I.projectPath))return{success:!1,error:jA("launcher.directoryNotFound",{path:I.projectPath})}}let g=await NY(B);if(!g.success)return g;let F=await cv(B,I);if(!F)return{success:!1,error:jA("launcher.apiKeyNotConfigured")};let N=[],H={};if(B.setupConfigFiles){let u=await B.setupConfigFiles(F,I?.selectedOptionIds,{forLaunch:!0});if(u&&typeof u==="object")N=u.args??[],H=u.envVars??{}}await HY(C,B.id,I?.selectedOptionIds);let U=(await AB()).installedClients[B.id]?.version;return PQ("client_launched",{client_id:B.id,client_version:U,project_hash:BY(C),is_recent_project:!!I?.projectPath}),nA.info(jA("launcher.starting",{client:B.name})),await uY(B,{...I,args:[...N,...I?.args??[]],envVars:{...H,...I?.envVars??{}},providerContext:F})}catch(C){return{success:!1,error:C instanceof Error?C.message:"Launch failed"}}}kI();kQ();uE();eE();_0();_0();uE();async function r3(B){let I=await AC(B);if(I.length===0)return null;let C=await BC(B);if(C)return SI(C);if(I.length===1)return SI(I[0]);let g=await cI();if(g&&I.some((F)=>F.id===g.id))return SI(g);return SI(I[0])}async function KY(){let B=await aF();if(await oF(B)>0){for(let C of B)PQ("provider_added",{provider_type:C.type,method:"auto_detect"});EC(),h0()}}await RI();var U0=YA(FB(),1);await RI();var IQ=YA(FB(),1);kI();_0();kQ();s3();await RI();var YB=YA(_B(),1),D_=[["\u2191\u2193","\u9009\u62E9","select"],["Enter","\u786E\u8BA4","confirm"],["Esc","\u53D6\u6D88","cancel"]];function yY({zh:B}){return YB.jsxDEV(h,{marginTop:1,justifyContent:"center",gap:2,children:D_.flatMap((I,C)=>{return[C>0?YB.jsxDEV(R,{dimColor:!0,children:"\u2502"},`s${C}`,!1,void 0,this):null,YB.jsxDEV(R,{dimColor:!0,bold:!0,children:I[0]},`k${C}`,!1,void 0,this),YB.jsxDEV(R,{dimColor:!0,children:B?I[1]:I[2]},`l${C}`,!1,void 0,this)]})},void 0,!1,void 0,this)}function TY({provs:B,provIdx:I,pickerIdx:C,color:g,zh:F}){return YB.jsxDEV(h,{flexDirection:"column",marginTop:1,borderStyle:"round",borderColor:g,paddingX:2,paddingY:1,children:[YB.jsxDEV(R,{bold:!0,color:g,children:["\u25A3 ",F?"\u9009\u62E9\u670D\u52A1\u5546":"Pick Provider"]},void 0,!0,void 0,this),YB.jsxDEV(h,{flexDirection:"column",marginTop:1,children:[B.length===0&&YB.jsxDEV(h,{paddingLeft:1,children:YB.jsxDEV(R,{dimColor:!0,children:F?"\u6682\u65E0\u517C\u5BB9\u6B64\u5DE5\u5177\u7684\u670D\u52A1\u5546":"No compatible providers"},void 0,!1,void 0,this)},void 0,!1,void 0,this),B.map((N,H)=>{let M=C===H,U=H===I;return YB.jsxDEV(h,{paddingLeft:1,children:[YB.jsxDEV(R,{color:M?g:void 0,bold:M,children:M?"\u25B8":" "},void 0,!1,void 0,this),YB.jsxDEV(R,{bold:M,color:M?g:void 0,children:[" ",N.name]},void 0,!0,void 0,this),N.email&&YB.jsxDEV(R,{dimColor:!0,children:[" (",N.email,")"]},void 0,!0,void 0,this),U&&YB.jsxDEV(R,{color:"green",children:" \u2605"},void 0,!1,void 0,this)]},N.id,!0,void 0,this)}),(()=>{let N=C===B.length;return YB.jsxDEV(h,{paddingLeft:1,marginTop:1,children:[YB.jsxDEV(R,{color:N?g:void 0,bold:N,children:N?"\u25B8":" "},void 0,!1,void 0,this),YB.jsxDEV(R,{bold:N,color:N?g:void 0,children:[" ","\u2699 ",F?"\u7BA1\u7406\u670D\u52A1\u5546\u2026":"Manage providers\u2026"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)})()]},void 0,!0,void 0,this),YB.jsxDEV(yY,{zh:F},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function vY({group:B,options:I,enabled:C,pickerIdx:g,color:F,zh:N}){let H=I.filter((u)=>u.group===B),M=B==="model"?N?"\u9009\u62E9\u6A21\u578B":"Pick Model":B,U=!H.some((u)=>C.has(u.id));return YB.jsxDEV(h,{flexDirection:"column",marginTop:1,borderStyle:"round",borderColor:F,paddingX:2,paddingY:1,children:[YB.jsxDEV(R,{bold:!0,color:F,children:["\u25A3 ",M]},void 0,!0,void 0,this),YB.jsxDEV(h,{flexDirection:"column",marginTop:1,children:[(()=>{let u=g===0;return YB.jsxDEV(h,{paddingLeft:1,children:[YB.jsxDEV(R,{color:u?F:void 0,bold:u,children:u?"\u25B8":" "},void 0,!1,void 0,this),YB.jsxDEV(R,{bold:u,color:u?F:void 0,children:[" ",N?"\u9ED8\u8BA4\uFF08\u4E0D\u6307\u5B9A\uFF09":"Default (none)"]},void 0,!0,void 0,this),U&&YB.jsxDEV(R,{color:"green",children:" \u2605"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)})(),H.map((u,X)=>{let k=g===X+1,W=C.has(u.id);return YB.jsxDEV(h,{paddingLeft:1,flexDirection:"column",children:[YB.jsxDEV(h,{children:[YB.jsxDEV(R,{color:k?F:void 0,bold:k,children:k?"\u25B8":" "},void 0,!1,void 0,this),YB.jsxDEV(R,{bold:k,color:k?F:void 0,children:[" ",u.label[N?"zh":"en"]||u.label.en]},void 0,!0,void 0,this),W&&YB.jsxDEV(R,{color:"green",children:" \u2605"},void 0,!1,void 0,this),YB.jsxDEV(R,{dimColor:!0,children:[" ",u.flag]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),k&&YB.jsxDEV(h,{paddingLeft:3,children:YB.jsxDEV(R,{dimColor:!0,children:u.description[N?"zh":"en"]||u.description.en},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},u.id,!0,void 0,this)})]},void 0,!0,void 0,this),YB.jsxDEV(yY,{zh:N},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}var BA=YA(_B(),1),F_="0.3.12",_Y={"claude-code":{icon:"\u2726",color:"yellow"},codex:{icon:"\u25C8",color:"blue"},gemini:{icon:"\u25C6",color:"cyan"}},VY={icon:"\u25AA",color:"white"};async function w_(){let B=xg(),I=await MY(),C=await cI(),g=sQ()==="zh",F=[...B].sort((M,U)=>{if(M.id===I)return-1;if(U.id===I)return 1;return 0}),N=[];for(let M of F){let U=await JY(M.id,PH,!0),u=process.cwd(),X=[{label:g?"\u5728\u5F53\u524D\u76EE\u5F55\u542F\u52A8":"Launch in current directory",hint:hH(u,45),path:u},...U.map((r)=>({label:hH(r.path,45),hint:UY(r.lastLaunchedAt),path:r.path}))],k=await AC(M.id),z=await BC(M.id)||k.find((r)=>r.id===C?.id)||k[0],$=z?k.findIndex((r)=>r.id===z.id):0,O=jF(M,z),v=await a3(M.id),d=O.map((r)=>r.id),l=v.filter((r)=>d.includes(r));N.push({client:M,projects:X,providers:k,activeProvIdx:Math.max($,0),launchOptions:O,lastSelectedOptionIds:l})}let H=N.some((M)=>M.providers.length>0);return{clients:N,defaultIdx:0,hasProviders:H}}function PY({color:B}){let{stdout:I}=YH(),C=Math.max((I.columns||80)-6,20);return BA.jsxDEV(h,{marginY:0,children:BA.jsxDEV(R,{dimColor:!0,color:B,children:"\u2500".repeat(C)},void 0,!1,void 0,this)},void 0,!1,void 0,this)}function G_(B){return B>30?"green":B>10?"yellow":"red"}function N_({provider:B,zh:I}){if(!B)return BA.jsxDEV(R,{color:"yellow",children:["\u26A0 ",I?"\u672A\u7ED1\u5B9A":"no provider"]},void 0,!0,void 0,this);let C={tako:{zh:"Tako \u4EE3\u7406",en:"Tako Proxy",color:"cyan",icon:"\uD83D\uDC19"},"claude-subscription":{zh:"Claude \u5B98\u65B9",en:"Claude Official",color:"yellow",icon:"\u2726"},"codex-subscription":{zh:"Codex \u5B98\u65B9",en:"Codex Official",color:"blue",icon:"\u25C8"},anthropic:{zh:"Anthropic \u76F4\u8FDE",en:"Anthropic Direct",color:"yellow",icon:"\u2726"},deepseek:{zh:"DeepSeek",en:"DeepSeek",color:"magenta",icon:"\u25C7"},custom:{zh:"\u81EA\u5B9A\u4E49",en:"Custom",color:"gray",icon:"\u25AA"}},g=C[B.type]??C.custom,F=I?g.zh:g.en,N=B.email??"";if(N.length>0){let[H,M]=N.split("@");if(H&&M)N=H.length>14?`${H.slice(0,12)}\u2026@${M}`:N}return BA.jsxDEV(BA.Fragment,{children:[BA.jsxDEV(R,{color:g.color,children:[g.icon," ",F]},void 0,!0,void 0,this),N&&BA.jsxDEV(R,{dimColor:!0,children:[" \xB7 ",N]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function H_({quota:B,zh:I}){if(B.status==="unsupported")return null;if(B.status==="error")return BA.jsxDEV(R,{dimColor:!0,children:["\uD83D\uDCB0 ",B.hint||(I?"\u7528\u91CF\u83B7\u53D6\u5931\u8D25":"quota unavailable")]},void 0,!0,void 0,this);if(B.provider==="tako")if(!!(B.primary?.costLimit||B.secondary?.costLimit||B.daily?.costLimit));else{let M=B.daily??B.primary??B.secondary;if(!M)return null;let U=M.costUsed??0;return BA.jsxDEV(R,{dimColor:!0,children:["\uD83D\uDCB0 ",I?"\u4ECA\u65E5":"Today",": ",BA.jsxDEV(R,{color:"green",children:["$",U.toFixed(2)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}let C=(H,M,U)=>{if(H&&H>=1440)return`${Math.round(H/1440)}d`;if(H)return`${Math.round(H/60)}h`;return U?`${U}d`:`${M}h`},g=(H)=>Math.max(0,Math.min(100,100-Math.round(H))),F=[],N=(H,M,U)=>{if(F.length)F.push(BA.jsxDEV(R,{dimColor:!0,children:" \xB7 "},`sep-${H}`,!1,void 0,this));let u=g(U);F.push(BA.jsxDEV(IQ.default.Fragment,{children:[`${M} \u5269 `,BA.jsxDEV(R,{color:G_(u),children:[u,"%"]},void 0,!0,void 0,this)]},H,!0,void 0,this))};if(B.primary)N("primary",C(B.primary.windowMinutes,5),B.primary.usedPct);if(B.secondary)N("secondary",C(B.secondary.windowMinutes,24,7),B.secondary.usedPct);if(B.modelLimits?.opus)N("opus","opus",B.modelLimits.opus.usedPct);if(!F.length)return null;return BA.jsxDEV(R,{dimColor:!0,children:["\uD83D\uDCB0 ",F]},void 0,!0,void 0,this)}function J_(B,I){let C=[],g=new Set;for(let F of B)if(!F.group)C.push({kind:"flag",opt:F});else if(!g.has(F.group)){g.add(F.group);let N=F.group==="model"?I?"\u6A21\u578B":"Model":F.group;C.push({kind:"group",group:F.group,title:N})}return C.push({kind:"provider",title:I?"\u670D\u52A1\u5546":"Provider"}),C}function pH(B,I,C){return B.find((g)=>g.group===C&&I.has(g.id))}function M_({clients:B,defaultIdx:I,hasProviders:C,onResult:g}){let[F,N]=IQ.useState(I),[H,M]=IQ.useState("projects"),[U,u]=IQ.useState(0),[X,k]=IQ.useState(0),[W,z]=IQ.useState(()=>B[I]?.activeProvIdx||0),[$,O]=IQ.useState(()=>new Set(B[I]?.lastSelectedOptionIds??[])),[v,d]=IQ.useState(""),[l,r]=IQ.useState(null),[FA,MA]=IQ.useState(!1),[wA,ZA]=IQ.useState(0),GA=B[F],s=GA.projects,XA=GA.providers,qA=_Y[GA.client.id]||VY,JA=sQ()==="zh",KA=XA[W],BB=IQ.default.useMemo(()=>jF(GA.client,KA),[GA.client.id,KA?.id,KA?.type]),IA=IQ.default.useMemo(()=>J_(BB,JA),[BB,JA]),_A=KA?.name||(JA?"\u672A\u914D\u7F6E":"N/A"),[OA,rA]=IQ.useState(null);return IQ.useEffect(()=>{if(!KA){rA(null);return}let kA=!1;return T1(KA).then((f)=>{if(!kA)rA(f)}),()=>{kA=!0}},[KA?.id,KA?.type]),IQ.useEffect(()=>{u(0),k(0),M("projects"),z(B[F]?.activeProvIdx||0),r(null),MA(!1),O(new Set(B[F]?.lastSelectedOptionIds??[]))},[F]),IQ.useEffect(()=>{let kA=new Set(BB.map((DA)=>DA.id)),f=new Set(BB.filter((DA)=>DA.group==="model").map((DA)=>DA.id)),NA=KA?.model?`model-${KA.model}`:void 0;O((DA)=>{let WA=new Set,hA=!1,GB=!1;for(let bA of DA)if(kA.has(bA)){if(WA.add(bA),f.has(bA))GB=!0}else hA=!0;if(!GB&&NA&&f.has(NA))WA.add(NA),hA=!0;return hA?WA:DA})},[BB,KA?.model]),QQ(IQ.useCallback((kA,f)=>{if(FA){let DA=XA.length+1;if(f.escape||kA==="q"){MA(!1);return}if(f.upArrow){ZA((WA)=>WA>0?WA-1:DA-1);return}if(f.downArrow){ZA((WA)=>WA<DA-1?WA+1:0);return}if(f.return)if(wA<XA.length){let WA=XA[wA];z(wA),(async()=>{if(await lF(GA.client.id,WA.id),GA.client.setupConfigFiles)try{await GA.client.setupConfigFiles(SI(WA))}catch(hA){d(JA?"\u26A0 \u914D\u7F6E\u540C\u6B65\u5931\u8D25":"\u26A0 Config sync failed"),setTimeout(()=>d(""),2500);return}GA.activeProvIdx=wA,d(JA?`\u2713 \u5DF2\u7ED1\u5B9A ${WA.name}`:`\u2713 Bound ${WA.name}`),setTimeout(()=>d(""),2000)})(),MA(!1)}else MA(!1),g({type:"providers"});return}if(l){let DA=BB.filter((hA)=>hA.group===l),WA=DA.length+1;if(f.escape||kA==="q"){r(null);return}if(f.upArrow){ZA((hA)=>hA>0?hA-1:WA-1);return}if(f.downArrow){ZA((hA)=>hA<WA-1?hA+1:0);return}if(f.return){if(wA===0)O((hA)=>{let GB=new Set(hA);for(let bA of DA)GB.delete(bA.id);return GB});else{let hA=DA[wA-1];O((GB)=>{let bA=new Set(GB);for(let hB of DA)bA.delete(hB.id);return bA.add(hA.id),bA})}r(null)}return}if(kA==="q"){g({type:"exit"});return}if(kA==="a"){g({type:"agent"});return}if(kA==="s"){g({type:"stats"});return}if(kA==="c"){g({type:"config"});return}if(kA==="l"){g({type:"language"});return}if(kA==="p"){g({type:"providers"});return}let NA=parseInt(kA);if(NA>=1&&NA<=B.length){N(NA-1);return}if(f.leftArrow){N((DA)=>DA>0?DA-1:B.length-1);return}if(f.rightArrow){N((DA)=>DA<B.length-1?DA+1:0);return}if(H==="projects"){if(f.downArrow){if(U<s.length-1)u((DA)=>DA+1);else if(IA.length>0)M("options"),k(0);return}if(f.upArrow){if(U>0)u((DA)=>DA-1);return}}if(H==="options"){if(f.downArrow){if(X<IA.length-1)k((DA)=>DA+1);return}if(f.upArrow){if(X>0)k((DA)=>DA-1);else M("projects"),u(s.length-1);return}}if(kA===" "&&H==="options"&&IA.length>0){let DA=IA[X];if(DA.kind==="flag")O((WA)=>{let hA=new Set(WA);if(hA.has(DA.opt.id))hA.delete(DA.opt.id);else hA.add(DA.opt.id);return hA});else if(DA.kind==="group"){let WA=pH(BB,$,DA.group),hA=BB.filter((bA)=>bA.group===DA.group),GB=WA?hA.findIndex((bA)=>bA.id===WA.id)+1:0;ZA(Math.max(0,GB)),r(DA.group)}else ZA(W),MA(!0);return}if(f.return){if(H==="options"&&IA.length>0){let bA=IA[X];if(bA.kind==="group"){let hB=pH(BB,$,bA.group),TB=BB.filter((CA)=>CA.group===bA.group),EA=hB?TB.findIndex((CA)=>CA.id===hB.id)+1:0;ZA(Math.max(0,EA)),r(bA.group);return}if(bA.kind==="provider"){ZA(W),MA(!0);return}}let DA=s[U],WA=[],hA={},GB=[];for(let bA of BB)if($.has(bA.id)){if(WA.push(...bA.args),bA.envVars)Object.assign(hA,bA.envVars);GB.push(bA.id)}g({type:"launch",clientId:GA.client.id,projectPath:DA.path,args:WA,envVars:hA,selectedOptionIds:GB})}},[H,F,U,X,W,XA,KA,GA,s,BB,IA,$,B,g,JA,l,FA,wA])),BA.jsxDEV(h,{flexDirection:"column",paddingX:0,paddingY:1,children:[BA.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:qA.color,paddingX:2,paddingY:1,children:[BA.jsxDEV(h,{justifyContent:"space-between",children:[BA.jsxDEV(h,{gap:1,children:[BA.jsxDEV(R,{bold:!0,children:"\uD83D\uDC19 Tako"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:["v",F_]},void 0,!0,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(N_,{provider:KA,zh:JA},void 0,!1,void 0,this)]},void 0,!0,void 0,this),BA.jsxDEV(h,{children:[v&&BA.jsxDEV(R,{color:"green",children:v},void 0,!1,void 0,this),!v&&OA&&BA.jsxDEV(H_,{quota:OA,zh:JA},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),!C&&BA.jsxDEV(h,{marginTop:1,justifyContent:"center",gap:1,children:[BA.jsxDEV(R,{color:"yellow",children:"\u26A0"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u672A\u914D\u7F6E\u670D\u52A1\u5546 \u2014 \u6309 c \u6DFB\u52A0 API Key \u6216 p \u7BA1\u7406\u670D\u52A1\u5546":"No provider configured \u2014 press c for API Key or p to manage"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),BA.jsxDEV(h,{marginTop:1,gap:1,justifyContent:"center",children:[BA.jsxDEV(R,{dimColor:!0,children:"\u2039"},void 0,!1,void 0,this),B.map((kA,f)=>{let NA=_Y[kA.client.id]||VY;return f===F?BA.jsxDEV(h,{borderStyle:"bold",borderColor:NA.color,paddingX:1,children:BA.jsxDEV(R,{color:NA.color,bold:!0,children:[NA.icon," ",kA.client.name]},void 0,!0,void 0,this)},kA.client.id,!1,void 0,this):BA.jsxDEV(h,{borderStyle:"single",borderColor:"gray",paddingX:1,children:BA.jsxDEV(R,{dimColor:!0,children:[NA.icon," ",kA.client.name]},void 0,!0,void 0,this)},kA.client.id,!1,void 0,this)}),BA.jsxDEV(R,{dimColor:!0,children:"\u203A"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),BA.jsxDEV(PY,{color:qA.color},void 0,!1,void 0,this),FA?BA.jsxDEV(TY,{provs:XA,provIdx:W,pickerIdx:wA,color:qA.color,zh:JA},void 0,!1,void 0,this):l?BA.jsxDEV(vY,{group:l,options:BB,enabled:$,pickerIdx:wA,color:qA.color,zh:JA},void 0,!1,void 0,this):BA.jsxDEV(BA.Fragment,{children:[s.map((kA,f)=>{let NA=H==="projects"&&f===U;return BA.jsxDEV(h,{paddingLeft:1,children:[BA.jsxDEV(h,{flexGrow:1,gap:1,children:[BA.jsxDEV(R,{color:NA?qA.color:void 0,bold:NA,children:NA?"\u25B8":" "},void 0,!1,void 0,this),BA.jsxDEV(R,{bold:NA,color:NA?qA.color:void 0,children:kA.label},void 0,!1,void 0,this)]},void 0,!0,void 0,this),kA.hint?BA.jsxDEV(R,{dimColor:!0,children:kA.hint},void 0,!1,void 0,this):null]},f,!0,void 0,this)}),IA.length>0&&BA.jsxDEV(BA.Fragment,{children:[BA.jsxDEV(PY,{color:qA.color},void 0,!1,void 0,this),IA.map((kA,f)=>{let NA=H==="options"&&f===X;if(kA.kind==="flag"){let DA=kA.opt,WA=$.has(DA.id);return BA.jsxDEV(h,{paddingLeft:1,children:[BA.jsxDEV(h,{flexGrow:1,gap:1,children:[BA.jsxDEV(R,{color:NA?qA.color:void 0,bold:NA,children:NA?"\u25B8":" "},void 0,!1,void 0,this),BA.jsxDEV(R,{color:WA?qA.color:void 0,bold:WA,children:WA?"\u25C9":"\u25CB"},void 0,!1,void 0,this),BA.jsxDEV(R,{bold:NA,color:NA?qA.color:void 0,children:DA.label[JA?"zh":"en"]||DA.label.en},void 0,!1,void 0,this),NA&&BA.jsxDEV(R,{dimColor:!0,children:DA.flag},void 0,!1,void 0,this)]},void 0,!0,void 0,this),NA&&BA.jsxDEV(R,{dimColor:!0,children:DA.description[JA?"zh":"en"]||DA.description.en},void 0,!1,void 0,this)]},DA.id,!0,void 0,this)}if(kA.kind==="group"){let DA=pH(BB,$,kA.group),WA=DA?DA.shortLabel:JA?"\u9ED8\u8BA4":"Default";return BA.jsxDEV(h,{paddingLeft:1,children:[BA.jsxDEV(h,{flexGrow:1,gap:1,children:[BA.jsxDEV(R,{color:NA?qA.color:void 0,bold:NA,children:NA?"\u25B8":" "},void 0,!1,void 0,this),BA.jsxDEV(R,{bold:NA,color:NA?qA.color:void 0,children:[kA.title,":"]},void 0,!0,void 0,this),BA.jsxDEV(R,{color:DA?qA.color:void 0,children:WA},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u203A"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),NA&&BA.jsxDEV(R,{dimColor:!0,children:JA?"Enter \u8FDB\u5165\u9009\u62E9":"Enter to pick"},void 0,!1,void 0,this)]},`group-${kA.group}`,!0,void 0,this)}return BA.jsxDEV(h,{paddingLeft:1,children:[BA.jsxDEV(h,{flexGrow:1,gap:1,children:[BA.jsxDEV(R,{color:NA?qA.color:void 0,bold:NA,children:NA?"\u25B8":" "},void 0,!1,void 0,this),BA.jsxDEV(R,{bold:NA,color:NA?qA.color:void 0,children:[kA.title,":"]},void 0,!0,void 0,this),BA.jsxDEV(R,{color:KA?qA.color:"yellow",children:KA?_A:JA?"\u672A\u914D\u7F6E":"Not set"},void 0,!1,void 0,this),BA.jsxDEV(R,{color:"yellow",children:"\u2605"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u203A"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),NA&&BA.jsxDEV(R,{dimColor:!0,children:JA?"Enter \u5207\u6362\u6216\u7BA1\u7406":"Enter to switch / manage"},void 0,!1,void 0,this)]},"provider-entry",!0,void 0,this)})]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),BA.jsxDEV(h,{paddingX:2,marginTop:1,justifyContent:"center",gap:2,children:H==="options"?BA.jsxDEV(BA.Fragment,{children:[BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Space"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u5F00\u5173":"toggle"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u542F\u52A8":"launch"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u9009\u62E9":"select"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2190\u2192"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u5207\u6362\u5DE5\u5177":"switch tool"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"q"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u9000\u51FA":"quit"},void 0,!1,void 0,this)]},void 0,!0,void 0,this):BA.jsxDEV(BA.Fragment,{children:[BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u542F\u52A8":"launch"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"a"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"agent"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u9009\u62E9":"select"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2190\u2192"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u5207\u6362\u5DE5\u5177":"switch tool"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"p"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u670D\u52A1\u5546":"service"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"s"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u7EDF\u8BA1":"stats"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,bold:!0,children:"q"},void 0,!1,void 0,this),BA.jsxDEV(R,{dimColor:!0,children:JA?"\u9000\u51FA":"quit"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function mY({onResult:B}){let[I,C]=IQ.useState(null);if(IQ.useEffect(()=>{w_().then(C)},[]),!I)return BA.jsxDEV(R,{dimColor:!0,children:"Loading..."},void 0,!1,void 0,this);return BA.jsxDEV(M_,{clients:I.clients,defaultIdx:I.defaultIdx,hasProviders:I.hasProviders,onResult:B},void 0,!1,void 0,this)}kQ();_0();await RI();var iB=YA(FB(),1);cC();cC();uE();cC();await RI();var HA=YA(_B(),1),RE={"claude-subscription":{icon:"\u2726",color:"yellow"},"codex-subscription":{icon:"\u25C8",color:"blue"},tako:{icon:"\uD83D\uDC19",color:"cyan"},anthropic:{icon:"\u25B3",color:"magenta"},deepseek:{icon:"\uD83D\uDD2E",color:"blue"},xiaomi:{icon:"\uD83D\uDFE0",color:"yellow"},custom:{icon:"\u2699",color:"gray"}},iH={"claude-code":{icon:"\u2726",color:"yellow"},codex:{icon:"\u25C8",color:"blue"},gemini:{icon:"\u25C6",color:"cyan"}},v1=["claude-subscription","codex-subscription","tako","anthropic","deepseek","xiaomi","custom"];function hY({provider:B,focused:I,bound:C,isDefault:g,zh:F}){let N=RE[B.type]||RE.custom,H=F?w0[B.type]?.zh:w0[B.type]?.en;return HA.jsxDEV(h,{flexDirection:"column",borderStyle:I?"bold":"round",borderColor:I?N.color:C?N.color:"gray",paddingX:2,paddingY:0,children:[HA.jsxDEV(h,{justifyContent:"space-between",children:[HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{color:N.color,bold:!0,children:N.icon},void 0,!1,void 0,this),HA.jsxDEV(R,{bold:I||C,color:I?N.color:void 0,children:B.name},void 0,!1,void 0,this),g&&HA.jsxDEV(R,{color:"yellow",children:["\u2605 ",F?"\u9ED8\u8BA4":"default"]},void 0,!0,void 0,this),B.builtin&&HA.jsxDEV(R,{dimColor:!0,children:"[built-in]"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),HA.jsxDEV(h,{gap:1,children:C?HA.jsxDEV(R,{color:N.color,bold:!0,children:["\u25CF ",F?"\u5DF2\u7ED1\u5B9A":"bound"]},void 0,!0,void 0,this):HA.jsxDEV(R,{dimColor:!0,children:["\u25CB ",F?"\u672A\u7ED1\u5B9A":"unbound"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this),HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:H},void 0,!1,void 0,this),B.model&&HA.jsxDEV(R,{dimColor:!0,children:"\xB7"},void 0,!1,void 0,this),B.model&&HA.jsxDEV(R,{dimColor:!0,children:B.model},void 0,!1,void 0,this),B.email&&HA.jsxDEV(R,{dimColor:!0,children:"\xB7"},void 0,!1,void 0,this),B.email&&HA.jsxDEV(R,{dimColor:!0,children:B.email},void 0,!1,void 0,this),B.apiKey&&HA.jsxDEV(R,{dimColor:!0,children:"\xB7"},void 0,!1,void 0,this),B.apiKey&&HA.jsxDEV(R,{dimColor:!0,children:["Key: ",B.apiKey.slice(0,8),"\u2022\u2022\u2022"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),I&&HA.jsxDEV(h,{marginTop:0,children:HA.jsxDEV(R,{color:N.color,dimColor:!0,children:["Enter ",F?"\u7ED1\u5B9A\u5230\u5F53\u524D\u5DE5\u5177":"bind to this tool"," \xB7 d ",F?"\u8BE6\u60C5/\u64CD\u4F5C":"detail/actions"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}function bY({screen:B,addType:I,addKey:C,addUrl:g,addModel:F,addCtx:N,rowIdx:H,zh:M}){let U=RE[I]||RE.custom,u=M?w0[I]?.zh:w0[I]?.en,X=B==="add-model"?dF(I):void 0;if(X)return HA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[HA.jsxDEV(h,{borderStyle:"bold",borderColor:U.color,paddingX:3,paddingY:1,flexDirection:"column",children:[HA.jsxDEV(h,{gap:1,marginBottom:1,children:[HA.jsxDEV(R,{color:U.color,bold:!0,children:U.icon},void 0,!1,void 0,this),HA.jsxDEV(R,{bold:!0,color:U.color,children:u},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:["\u2014 ",M?"\u9009\u62E9\u6A21\u578B":"Select Model"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),X.map((O,v)=>{let d=H===v;return HA.jsxDEV(h,{paddingLeft:1,gap:1,children:[HA.jsxDEV(R,{color:d?U.color:void 0,bold:d,children:d?"\u25B8":" "},void 0,!1,void 0,this),HA.jsxDEV(R,{bold:d,color:d?U.color:void 0,children:O},void 0,!1,void 0,this)]},O,!0,void 0,this)})]},void 0,!0,void 0,this),HA.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:M?"\u9009\u62E9":"select"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:M?"\u786E\u8BA4":"confirm"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:M?"\u53D6\u6D88":"cancel"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this);let k=B==="add-key"?M?"\u8F93\u5165 API Key":"Enter API Key":B==="add-url"?"Base URL":B==="add-ctx"?M?"\u4E0A\u4E0B\u6587\u7A97\u53E3\uFF08tokens\uFF0C\u53EF\u7559\u7A7A\uFF09":"Context Window (tokens, optional)":M?"\u6A21\u578B":"Model",W=B==="add-key"?C:B==="add-url"?g:B==="add-ctx"?N??"":F,z=B==="add-url"?"https://your-proxy.com":B==="add-ctx"?M?"\u5982 200000\uFF1Bcatalog \u6CA1\u6709\u8BE5\u6A21\u578B\u65F6\u5EFA\u8BAE\u586B\u5199":"e.g. 200000; recommended if model is unknown to catalog":B==="add-model"?g2(I)||(M?"\u7559\u7A7A\u4F7F\u7528\u9ED8\u8BA4":"leave empty"):void 0,$=B==="add-url"?M?"\u4E0B\u4E00\u6B65":"next":B==="add-ctx"?M?"\u4FDD\u5B58":"save":B==="add-model"?M?"\u4FDD\u5B58":"save":M?"\u786E\u8BA4":"confirm";return HA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[HA.jsxDEV(h,{borderStyle:"bold",borderColor:U.color,paddingX:3,paddingY:1,flexDirection:"column",children:[HA.jsxDEV(h,{gap:1,marginBottom:1,children:[HA.jsxDEV(R,{color:U.color,bold:!0,children:U.icon},void 0,!1,void 0,this),HA.jsxDEV(R,{bold:!0,color:U.color,children:u},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:["\u2014 ",k]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),B==="add-key"&&I==="xiaomi"&&HA.jsxDEV(R,{dimColor:!0,children:[" ",M?"sk- \u5F00\u5934\u8D70\u6309\u91CF\u4ED8\u8D39\uFF0Ctp- \u5F00\u5934\u8D70 Token Plan \u8BA2\u9605\uFF08\u81EA\u52A8\u8BC6\u522B\uFF09":"sk- = pay-as-you-go, tp- = Token Plan subscription (auto-detected)"]},void 0,!0,void 0,this),z&&HA.jsxDEV(R,{dimColor:!0,children:[" ",M?"\u9ED8\u8BA4":"Default",": ",z]},void 0,!0,void 0,this),HA.jsxDEV(h,{marginTop:z?1:0,children:[HA.jsxDEV(R,{color:U.color,bold:!0,children:["\u203A"," "]},void 0,!0,void 0,this),HA.jsxDEV(R,{children:W||z||""},void 0,!1,void 0,this),HA.jsxDEV(R,{color:U.color,children:"\u2588"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),HA.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:$},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:M?"\u53D6\u6D88":"cancel"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function fY({provider:B,defaultId:I,detailActions:C,detailIdx:g,zh:F}){let N=RE[B.type]||RE.custom,H=F?w0[B.type]?.zh:w0[B.type]?.en;return HA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[HA.jsxDEV(h,{borderStyle:"bold",borderColor:N.color,paddingX:3,paddingY:1,flexDirection:"column",children:[HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{color:N.color,bold:!0,children:N.icon},void 0,!1,void 0,this),HA.jsxDEV(R,{bold:!0,color:N.color,children:B.name},void 0,!1,void 0,this),B.id===I&&HA.jsxDEV(R,{color:"yellow",children:[" \u2605 ",F?"\u9ED8\u8BA4":"default"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),HA.jsxDEV(h,{marginTop:1,flexDirection:"column",children:[HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:[F?"\u7C7B\u578B":"Type",":"]},void 0,!0,void 0,this),HA.jsxDEV(R,{children:H},void 0,!1,void 0,this),B.builtin&&HA.jsxDEV(R,{dimColor:!0,children:"[built-in]"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),B.model&&HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:[F?"\u6A21\u578B":"Model",":"]},void 0,!0,void 0,this),HA.jsxDEV(R,{children:B.model},void 0,!1,void 0,this)]},void 0,!0,void 0,this),B.email&&HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:"Email:"},void 0,!1,void 0,this),HA.jsxDEV(R,{children:B.email},void 0,!1,void 0,this)]},void 0,!0,void 0,this),B.apiKey&&HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:"Key:"},void 0,!1,void 0,this),HA.jsxDEV(R,{children:[B.apiKey.slice(0,12),"\u2022\u2022\u2022"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),B.baseUrl&&HA.jsxDEV(h,{gap:1,children:[HA.jsxDEV(R,{dimColor:!0,children:"URL:"},void 0,!1,void 0,this),HA.jsxDEV(R,{children:B.baseUrl},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),HA.jsxDEV(h,{gap:1,marginTop:1,children:C.map((M,U)=>{let u=M==="default"?`\u2B50 ${F?"\u8BBE\u4E3A\u9ED8\u8BA4":"Set Default"}`:M==="rekey"?`\uD83D\uDD11 ${F?"\u4FEE\u6539 Key":"Change Key"}`:M==="relogin"?`\uD83D\uDD04 ${F?"\u91CD\u65B0\u767B\u5F55":"Re-login"}`:M==="delete"?`\uD83D\uDDD1\uFE0F ${F?"\u5220\u9664":"Delete"}`:`\u2190 ${F?"\u8FD4\u56DE":"Back"}`,X=U===g;return HA.jsxDEV(h,{borderStyle:X?"bold":"round",borderColor:X?"cyan":"gray",paddingX:2,children:HA.jsxDEV(R,{bold:X,color:X?"cyan":void 0,dimColor:!X,children:u},void 0,!1,void 0,this)},M,!1,void 0,this)})},void 0,!1,void 0,this),HA.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2190\u2192"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:F?"\u9009\u62E9":"select"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:F?"\u786E\u8BA4":"confirm"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),HA.jsxDEV(R,{dimColor:!0,children:F?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}var xA=YA(_B(),1);function jY({onDone:B}){let[I,C]=iB.useState("list"),[g,F]=iB.useState([]),[N,H]=iB.useState(),[M,U]=iB.useState({}),[u,X]=iB.useState(0),[k,W]=iB.useState(0),[z,$]=iB.useState(0),[O,v]=iB.useState(""),[d,l]=iB.useState(""),[r,FA]=iB.useState("tako"),[MA,wA]=iB.useState(""),[ZA,GA]=iB.useState(""),[s,XA]=iB.useState(""),[qA,JA]=iB.useState(""),KA=sQ()==="zh",BB=xg(),IA=BB[u],_A=iH[IA?.id]?.color||"white",OA=IA?g.filter((EA)=>D2(EA,IA.id)):[],rA=M[IA?.id]||N,kA=OA.length+4,f=g.find((EA)=>EA.id===O),NA=f?.type==="claude-subscription"||f?.type==="codex-subscription",DA=f?[...f.id!==N?["default"]:[],...NA?["relogin"]:[],...f.builtin?["rekey"]:["delete"],"back"]:["back"],WA=iB.useCallback(async()=>{let EA=await OI(),CA=await cI();F(EA),H(CA?.id);let e={};for(let UA of xg()){let lA=await BC(UA.id);e[UA.id]=lA?.id}U(e)},[]);iB.useEffect(()=>{WA()},[WA]),iB.useEffect(()=>{W(0)},[u]),iB.useEffect(()=>{if(d){let EA=setTimeout(()=>l(""),3000);return()=>clearTimeout(EA)}},[d]);let hA=iB.useCallback(async()=>{if(O&&g.find((VA)=>VA.id===O)?.builtin){await dg(O,{apiKey:MA}),l(KA?"Key \u5DF2\u66F4\u65B0":"Key updated"),await WA(),C("list"),W(0);return}let EA=w0[r]?.[KA?"zh":"en"]||r,CA=ZA||zN(r),e=s||g2(r),UA=qA?parseInt(qA,10):NaN,lA=Number.isFinite(UA)&&UA>0?UA:void 0;await ig({name:EA,type:r,apiKey:MA,baseUrl:CA,model:e,modelContextWindow:lA,supportedClients:dI(r)}),PQ("provider_added",{provider_type:r,method:"manual"}),EC(),h0(),l(KA?"\u5DF2\u6DFB\u52A0":"Added"),JA(""),await WA(),C("list"),W(0)},[r,MA,ZA,s,qA,KA,WA,O,g]),GB=iB.useCallback(async()=>{C("scanning");let EA=await aF(),CA=await oF(EA);if(CA>0)EC(),h0();l(KA?`\u626B\u63CF\u5B8C\u6210\uFF0C\u65B0\u589E ${CA} \u4E2A`:`Scan done, ${CA} added`),await WA(),C("list"),W(0)},[WA,KA]),[bA,hB]=iB.useState("claude"),TB=iB.useCallback(async(EA)=>{hB(EA),C("logging-in");let CA=EA==="claude"?["claude","auth","login","--claudeai"]:["codex","login"];await Bun.spawn(CA,{stdin:"inherit",stdout:"pipe",stderr:"pipe"}).exited;let{invalidateQuotaCache:UA}=await Promise.resolve().then(() => (s3(),$Y));if(EA==="claude")try{let lA=Bun.spawn(["claude","auth","status"],{stdout:"pipe",stderr:"pipe"}),VA=await new Response(lA.stdout).text();await lA.exited;let MB=JSON.parse(VA.trim());if(MB.loggedIn&&MB.authMethod==="claude.ai"){let bB=MB.email||"",VB=MB.subscriptionType||"pro",PA=`Claude ${VB.charAt(0).toUpperCase()+VB.slice(1)}${bB?` (${bB})`:""}`,{readClaudeAuth:bQ}=await Promise.resolve().then(() => (hw(),mw)),OQ=await bQ(),SQ=OQ.credentials||OQ.oauthAccount?{credentials:OQ.credentials,oauthAccount:OQ.oauthAccount}:void 0,L0=g.find((vI)=>vI.type==="claude-subscription"&&vI.email===bB);if(!L0)await ig({name:PA,type:"claude-subscription",email:bB,subscriptionType:VB,supportedClients:dI("claude-subscription"),authData:SQ}),l(KA?"Claude \u8BA2\u9605\u5DF2\u6DFB\u52A0":"Claude subscription added");else await dg(L0.id,{authData:SQ}),UA(L0.id,"claude-subscription"),l(KA?"\u5DF2\u66F4\u65B0 tokens":"Tokens updated")}else l(KA?"\u767B\u5F55\u5931\u8D25":"Login failed")}catch{l(KA?"\u68C0\u6D4B\u5931\u8D25":"Detection failed")}else try{let lA=await import("fs/promises"),{homedir:VA}=await import("os"),{join:MB}=await import("path"),bB=JSON.parse(await lA.readFile(MB(VA(),".codex","auth.json"),"utf-8"));if(bB.auth_mode==="chatgpt"&&bB.tokens?.access_token){let VB="";try{VB=JSON.parse(atob(bB.tokens.id_token.split(".")[1])).email||""}catch{}let PA=g.find((bQ)=>bQ.type==="codex-subscription"&&bQ.email===VB);if(!PA)await ig({name:VB?`Codex Plus (${VB})`:"Codex Subscription",type:"codex-subscription",email:VB||void 0,supportedClients:dI("codex-subscription"),authData:bB}),l(KA?"Codex \u8BA2\u9605\u5DF2\u6DFB\u52A0":"Codex subscription added");else await dg(PA.id,{authData:bB}),UA(PA.id,"codex-subscription"),l(KA?"\u5DF2\u66F4\u65B0 tokens":"Tokens updated")}else l(KA?"\u767B\u5F55\u5931\u8D25":"Login failed")}catch{l(KA?"\u68C0\u6D4B\u5931\u8D25":"Detection failed")}await WA(),C("list"),W(0)},[g,KA,WA]);if(QQ(iB.useCallback((EA,CA)=>{if(I==="list"){if(CA.escape||EA==="q"){B();return}if(CA.leftArrow){X((UA)=>UA>0?UA-1:BB.length-1);return}if(CA.rightArrow){X((UA)=>UA<BB.length-1?UA+1:0);return}let e=parseInt(EA);if(e>=1&&e<=BB.length){X(e-1);return}if(CA.upArrow){W((UA)=>UA>0?UA-1:kA-1);return}if(CA.downArrow){W((UA)=>UA<kA-1?UA+1:0);return}if(CA.return){if(k<OA.length){let UA=OA[k];lF(IA.id,UA.id).then(()=>{B()})}else if(k===OA.length)C("add-type"),W(0);else if(k===OA.length+1)GB();else if(k===OA.length+2)B("client-versions");else B();return}if((EA==="d"||EA==="e")&&k<OA.length)v(OA[k].id),C("detail"),$(0);return}if(I==="detail"){if(CA.leftArrow){$((e)=>e>0?e-1:DA.length-1);return}if(CA.rightArrow){$((e)=>e<DA.length-1?e+1:0);return}if(CA.escape){C("list"),W(0);return}if(CA.return){let e=DA[z];if(e==="back"){C("list"),W(0);return}if(e==="default")PN(O).then(()=>{l(KA?"\u5DF2\u8BBE\u4E3A\u9ED8\u8BA4":"Set as default"),WA(),C("list"),W(0)});if(e==="delete")VN(O).then(()=>{l(KA?"\u5DF2\u5220\u9664":"Deleted"),WA(),C("list"),W(0)});if(e==="rekey")FA(f?.type||"tako"),wA(""),C("add-key"),W(0);if(e==="relogin"){let UA=f?.type==="codex-subscription"?"codex":"claude";C("list"),W(0),TB(UA)}}return}if(I==="add-type"){if(CA.upArrow){W((e)=>e>0?e-1:v1.length-1);return}if(CA.downArrow){W((e)=>e<v1.length-1?e+1:0);return}if(CA.escape){C("list"),W(0);return}if(CA.return){let e=v1[k];if(FA(e),e==="claude-subscription"){TB("claude");return}if(e==="codex-subscription"){TB("codex");return}wA(""),GA(""),XA(g2(e)||""),C("add-key"),W(0)}return}if(I==="add-key"){if(CA.escape){C("list"),W(0);return}if(CA.return&&MA){if(r==="custom")C("add-url");else if(r==="deepseek"||r==="anthropic"||r==="tako"||r==="xiaomi")C("add-model"),W(0);else hA();return}if(CA.backspace||CA.delete){wA((e)=>e.slice(0,-1));return}if(EA&&!CA.ctrl)wA((e)=>e+EA);return}if(I==="add-url"){if(CA.escape){C("list"),W(0);return}if(CA.return){C("add-model"),W(0);return}if(CA.backspace||CA.delete){GA((e)=>e.slice(0,-1));return}if(EA&&!CA.ctrl)GA((e)=>e+EA);return}if(I==="add-model"){let e=dF(r);if(CA.escape){C("list"),W(0);return}if(e){if(CA.upArrow){W((UA)=>UA>0?UA-1:e.length-1);return}if(CA.downArrow){W((UA)=>UA<e.length-1?UA+1:0);return}if(CA.return){XA(e[k]),setTimeout(()=>hA(),0);return}}else{if(CA.return){let UA=s.trim();if(UA&&zI.some((lA)=>lA.id===UA))hA();else C("add-ctx");return}if(CA.backspace||CA.delete){XA((UA)=>UA.slice(0,-1));return}if(EA&&!CA.ctrl)XA((UA)=>UA+EA)}return}if(I==="add-ctx"){if(CA.escape){C("list"),W(0);return}if(CA.return){hA();return}if(CA.backspace||CA.delete){JA((e)=>e.slice(0,-1));return}if(EA&&!CA.ctrl&&/^[0-9]$/.test(EA))JA((e)=>e+EA);return}},[I,k,z,OA,kA,BB.length,IA,O,f,DA,r,MA,ZA,s,qA,B,GB,TB,hA,WA,KA])),I==="scanning"||I==="logging-in"){let EA=I==="logging-in"?RE[bA==="claude"?"claude-subscription":"codex-subscription"]:{icon:"\u23F3",color:"yellow"},CA=I==="scanning"?KA?"\u6B63\u5728\u626B\u63CF\u672C\u5730\u8BA2\u9605...":"Scanning local subscriptions...":KA?"\u6B63\u5728\u767B\u5F55\uFF0C\u8BF7\u5728\u6D4F\u89C8\u5668\u4E2D\u5B8C\u6210\u6388\u6743...":"Logging in, please authorize in browser...";return xA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:xA.jsxDEV(h,{borderStyle:"round",borderColor:EA.color,paddingX:3,paddingY:1,flexDirection:"column",alignItems:"center",children:[xA.jsxDEV(R,{color:EA.color,bold:!0,children:[EA.icon," ",CA]},void 0,!0,void 0,this),I==="logging-in"&&xA.jsxDEV(R,{dimColor:!0,children:KA?"\u5B8C\u6210\u540E\u5C06\u81EA\u52A8\u8FD4\u56DE":"Will return automatically when done"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this)}if(I==="add-key"||I==="add-url"||I==="add-model"||I==="add-ctx")return xA.jsxDEV(bY,{screen:I,addType:r,addKey:MA,addUrl:ZA,addModel:s,addCtx:qA,rowIdx:k,zh:KA},void 0,!1,void 0,this);if(I==="add-type")return xA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[xA.jsxDEV(h,{borderStyle:"round",borderColor:"gray",paddingX:3,paddingY:0,children:xA.jsxDEV(R,{bold:!0,children:["\u2795 ",KA?"\u6DFB\u52A0\u670D\u52A1\u5546":"Add Provider"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),xA.jsxDEV(h,{flexDirection:"column",marginTop:1,gap:0,children:v1.map((EA,CA)=>{let e=RE[EA]||RE.custom,UA=k===CA,lA=KA?w0[EA]?.zh:w0[EA]?.en,VA=EA==="claude-subscription"||EA==="codex-subscription";return xA.jsxDEV(h,{borderStyle:UA?"bold":"round",borderColor:UA?e.color:"gray",paddingX:2,paddingY:0,children:xA.jsxDEV(h,{gap:1,children:[xA.jsxDEV(R,{color:e.color,bold:!0,children:e.icon},void 0,!1,void 0,this),xA.jsxDEV(R,{bold:UA,color:UA?e.color:void 0,children:lA},void 0,!1,void 0,this),VA&&xA.jsxDEV(R,{dimColor:!0,children:["(",KA?"\u767B\u5F55\u6388\u6743":"login auth",")"]},void 0,!0,void 0,this),!VA&&xA.jsxDEV(R,{dimColor:!0,children:["(",KA?"\u586B\u5199 Key":"enter key",")"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)},EA,!1,void 0,this)})},void 0,!1,void 0,this),xA.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u9009\u62E9":"select"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u786E\u8BA4":"confirm"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this);if(I==="detail"&&f)return xA.jsxDEV(fY,{provider:f,defaultId:N,detailActions:DA,detailIdx:z,zh:KA},void 0,!1,void 0,this);return xA.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[xA.jsxDEV(h,{borderStyle:"round",borderColor:"gray",paddingX:3,paddingY:0,children:[xA.jsxDEV(R,{bold:!0,children:["\u26A1 ",KA?"\u7BA1\u7406\u670D\u52A1\u5546":"Manage Providers"]},void 0,!0,void 0,this),d&&xA.jsxDEV(R,{color:"green",children:[" \u2713 ",d]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),xA.jsxDEV(h,{marginTop:1,gap:1,justifyContent:"center",children:[xA.jsxDEV(R,{dimColor:!0,children:"\u2039"},void 0,!1,void 0,this),BB.map((EA,CA)=>{let e=iH[EA.id]||{icon:"\u25AA",color:"white"},UA=CA===u;return xA.jsxDEV(h,{borderStyle:UA?"bold":"single",borderColor:UA?e.color:"gray",paddingX:2,children:xA.jsxDEV(R,{color:UA?e.color:void 0,bold:UA,dimColor:!UA,children:[e.icon," ",EA.name]},void 0,!0,void 0,this)},EA.id,!1,void 0,this)}),xA.jsxDEV(R,{dimColor:!0,children:"\u203A"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),xA.jsxDEV(h,{flexDirection:"column",marginTop:1,borderStyle:"round",borderColor:_A,paddingX:1,paddingY:1,children:[OA.length===0&&xA.jsxDEV(h,{paddingX:2,paddingY:1,justifyContent:"center",children:xA.jsxDEV(R,{dimColor:!0,children:KA?"\u6682\u65E0\u517C\u5BB9\u7684\u670D\u52A1\u5546\uFF0C\u8BF7\u6DFB\u52A0":"No compatible providers yet"},void 0,!1,void 0,this)},void 0,!1,void 0,this),OA.map((EA,CA)=>xA.jsxDEV(hY,{provider:EA,focused:k===CA,bound:EA.id===rA,isDefault:EA.id===N,zh:KA},EA.id,!1,void 0,this))]},void 0,!0,void 0,this),xA.jsxDEV(h,{marginTop:1,gap:1,children:[{id:"add",offset:0,icon:"\u2795",label:KA?"\u6DFB\u52A0\u670D\u52A1\u5546":"Add Provider"},{id:"scan",offset:1,icon:"\uD83D\uDD0D",label:KA?"\u626B\u63CF\u8BA2\u9605":"Scan"},{id:"versions",offset:2,icon:"\uD83D\uDCE6",label:KA?"\u5BA2\u6237\u7AEF\u7248\u672C\u7BA1\u7406":"Client Versions"},{id:"back",offset:3,icon:"\u2190",label:KA?"\u8FD4\u56DE":"Back"}].map((EA)=>{let CA=k===OA.length+EA.offset;return xA.jsxDEV(h,{borderStyle:CA?"bold":"round",borderColor:CA?"cyan":"gray",paddingX:2,children:xA.jsxDEV(R,{bold:CA,color:CA?"cyan":void 0,dimColor:!CA,children:[EA.icon," ",EA.label]},void 0,!0,void 0,this)},EA.id,!1,void 0,this)})},void 0,!1,void 0,this),xA.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2190\u2192"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u5207\u6362\u5DE5\u5177":"switch"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u9009\u62E9":"select"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u7ED1\u5B9A":"bind"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"d"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u8BE6\u60C5":"detail"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),xA.jsxDEV(R,{dimColor:!0,children:KA?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}kQ();await RI();var CC=YA(FB(),1);sB();async function xY(){try{let B=await jg();if(!B)return{success:!1,error:"\u672A\u627E\u5230 API ID\uFF0C\u8BF7\u91CD\u65B0\u914D\u7F6E Key"};let C=await(await fetch(`${rQ}/apiStats/api/user-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:B})})).json(),F=await(await fetch(`${rQ}/apiStats/api/user-model-stats`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiId:B,period:"daily"})})).json();if(!C.success)return{success:!1,error:C.error||C.message||"\u83B7\u53D6\u7EDF\u8BA1\u5931\u8D25"};let N=(F.data||[]).map((H)=>({model:H.model,requests:H.requests,cost:H.formatted?.total||"$0.00"}));return{success:!0,data:{totalRequests:C.data?.usage?.total?.requests||0,totalCost:C.data?.usage?.total?.formattedCost||"$0.00",todayCost:`$${(C.data?.limits?.currentDailyCost||0).toFixed(2)}`,modelStats:N}}}catch(B){return{success:!1,error:B instanceof Error?B.message:"\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25"}}}function pY(B){return B.toLocaleString("en-US")}var $I=YA(_B(),1);function iY({onExit:B}){let[I,C]=CC.useState(null),[g,F]=CC.useState(!0),[N,H]=CC.useState(10),M=CC.useCallback(async()=>{F(!0);let u=await xY();if(u.success&&u.data)C(u.data);F(!1)},[]);CC.useEffect(()=>{M()},[M]),CC.useEffect(()=>{let u=setInterval(()=>{H((X)=>{if(X<=1)return M(),10;return X-1})},1000);return()=>clearInterval(u)},[M]),QQ((u,X)=>{if(u==="q"||X.escape)B()});let U=sQ()==="zh";return $I.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,children:[$I.jsxDEV(R,{bold:!0,children:jA("stats.title")},void 0,!1,void 0,this),g&&!I?$I.jsxDEV(R,{dimColor:!0,children:"Loading..."},void 0,!1,void 0,this):I?$I.jsxDEV(h,{flexDirection:"column",marginTop:1,children:[$I.jsxDEV(R,{children:jA("stats.totalRequests",{count:pY(I.totalRequests)})},void 0,!1,void 0,this),$I.jsxDEV(R,{children:jA("stats.totalCost",{cost:I.totalCost})},void 0,!1,void 0,this),$I.jsxDEV(R,{children:jA("stats.todayCost",{cost:I.todayCost})},void 0,!1,void 0,this),I.modelStats.length>0&&$I.jsxDEV(h,{flexDirection:"column",marginTop:1,children:[$I.jsxDEV(R,{bold:!0,dimColor:!0,children:U?"\u6A21\u578B\u5206\u5E03":"Model Distribution"},void 0,!1,void 0,this),I.modelStats.map((u,X)=>$I.jsxDEV(R,{dimColor:!0,children:[X===I.modelStats.length-1?"\u2514\u2500":"\u251C\u2500"," ",u.model.padEnd(25)," ",String(u.requests).padStart(5)," ",u.cost]},u.model,!0,void 0,this))]},void 0,!0,void 0,this)]},void 0,!0,void 0,this):$I.jsxDEV(R,{color:"red",children:U?"\u83B7\u53D6\u5931\u8D25":"Failed to load"},void 0,!1,void 0,this),$I.jsxDEV(h,{marginTop:1,children:$I.jsxDEV(R,{dimColor:!0,children:U?`${N}s \u540E\u5237\u65B0 q \u8FD4\u56DE`:`Refresh in ${N}s q back`},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}kQ();await RI();var eC=YA(FB(),1);sB();kQ();uE();_0();cC();function U_(B){return B.startsWith("cr_")&&B.length>10}async function L_(B){try{let C=await(await fetch(`${rQ}/apiStats/api/get-key-id`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKey:B})})).json();if(C.success&&C.data?.id)return{valid:!0,apiId:C.data.id};return{valid:!1,error:C.error||jA("auth.validationFailed")}}catch(I){return{valid:!1,error:I instanceof Error?I.message:jA("auth.networkError")}}}async function dY(B){if(!U_(B))return PQ("api_key_validated",{success:!1,error_type:"invalid_format"}),{success:!1,error:jA("auth.invalidFormat")};let I=await L_(B);if(!I.valid)return PQ("api_key_validated",{success:!1,error_type:"api_validation_failed"}),{success:!1,error:I.error};return await fg({apiKey:B,apiId:I.apiId}),await u_(B,I.apiId),PQ("api_key_validated",{success:!0}),EC(),h0(),{success:!0}}async function u_(B,I){let g=(await OI()).find((F)=>F.type==="tako");if(g)await dg(g.id,{apiKey:B,apiId:I});else await ig({name:"Tako \u5B98\u65B9",type:"tako",apiKey:B,baseUrl:rQ,apiId:I,supportedClients:dI("tako"),builtin:!0})}uE();var M0=YA(_B(),1);function cY({isReconfigure:B,onDone:I}){let[C,g]=eC.useState(""),[F,N]=eC.useState("idle"),[H,M]=eC.useState(""),{stdin:U,setRawMode:u}=S2();eC.useEffect(()=>{if(!U)return;u(!0);let z=($)=>{let O=$.toString();if(O.length>1&&!O.startsWith("\x1B"))g((v)=>v+O.replace(/[\r\n]/g,""))};return U.on("data",z),()=>{U.off("data",z)}},[U,u]);let X=eC.useCallback(async()=>{if(!C||F==="validating")return;N("validating");let z=await dY(C);if(z.success)N("success"),EC(),h0(),setTimeout(()=>I(!0),500);else N("error"),M(z.error||"Validation failed")},[C,F,I]);QQ((z,$)=>{if($.escape){I(!1);return}if($.return){X();return}if($.backspace||$.delete){g((O)=>O.slice(0,-1)),N("idle");return}if(z&&!$.ctrl&&z.length===1)g((O)=>O+z),N("idle")});let k=C.length<=6?C:`${C.slice(0,3)}${"\u2022".repeat(Math.min(C.length-6,20))}${C.slice(-3)}`,W=sQ()==="zh";return M0.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:2,paddingY:1,children:[M0.jsxDEV(R,{bold:!0,color:"cyan",children:["\uD83D\uDD11 ",B?jA("prompts.enterApiKey"):"API Key"]},void 0,!0,void 0,this),M0.jsxDEV(h,{marginTop:1,children:[M0.jsxDEV(R,{color:"cyan",bold:!0,children:[">"," "]},void 0,!0,void 0,this),M0.jsxDEV(R,{children:k},void 0,!1,void 0,this),F==="idle"&&M0.jsxDEV(R,{color:"cyan",children:"\u2588"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),F==="validating"&&M0.jsxDEV(R,{color:"yellow",children:["\u23F3 ",jA("prompts.validating")]},void 0,!0,void 0,this),F==="success"&&M0.jsxDEV(R,{color:"green",children:["\u2713 ",jA("prompts.keyConfigured")]},void 0,!0,void 0,this),F==="error"&&M0.jsxDEV(R,{color:"red",children:["\u2717 ",H]},void 0,!0,void 0,this),M0.jsxDEV(h,{marginTop:1,children:M0.jsxDEV(R,{dimColor:!0,children:["Enter ",W?"\u63D0\u4EA4":"submit"," Esc ",W?"\u53D6\u6D88":"cancel"]},void 0,!0,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}kQ();await RI();var lY=YA(FB(),1),gC=YA(_B(),1),_1=[{value:"en",label:"English"},{value:"zh",label:"\u4E2D\u6587"}];function aY({onDone:B}){let[I,C]=lY.useState(_1.findIndex((g)=>g.value===sQ()));return QQ((g,F)=>{if(F.upArrow)C((N)=>N>0?N-1:_1.length-1);if(F.downArrow)C((N)=>N<_1.length-1?N+1:0);if(F.return)TN(_1[I].value),B();if(F.escape)B()}),gC.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:2,paddingY:1,children:[gC.jsxDEV(R,{bold:!0,children:["\uD83C\uDF10 ",jA("menu.changeLanguage")]},void 0,!0,void 0,this),_1.map((g,F)=>gC.jsxDEV(h,{gap:1,marginTop:F===0?1:0,children:[gC.jsxDEV(R,{color:"cyan",bold:F===I,children:F===I?"\u25B8":" "},void 0,!1,void 0,this),gC.jsxDEV(R,{bold:F===I,children:g.label},void 0,!1,void 0,this),g.value===sQ()&&gC.jsxDEV(R,{dimColor:!0,children:"\u2190"},void 0,!1,void 0,this)]},g.value,!0,void 0,this)),gC.jsxDEV(h,{marginTop:1,children:gC.jsxDEV(R,{dimColor:!0,children:"Enter select Esc back"},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}sB();sB();kQ();await RI();var e3=YA(FB(),1),FQ=YA(_B(),1);import{join as K_}from"path";var nY=K_(uQ,".key-prompt.json");async function R_(){try{return await Bun.file(nY).json()}catch{return{}}}async function oY(B){await Bun.write(nY,JSON.stringify(B))}async function rY(){if(await DN())return!1;let B=await R_();if(B.never)return!1;let I=new Date().toISOString().slice(0,10);if(B.dismissed===I)return!1;return!0}async function sY(B){if(B==="never")await oY({never:!0});else{let I=new Date().toISOString().slice(0,10);await oY({dismissed:I})}}var t3=[{id:"configure",label:{en:"Configure now",zh:"\u73B0\u5728\u914D\u7F6E"},hint:{en:"Enter your Tako API Key",zh:"\u8F93\u5165\u4F60\u7684 Tako API Key"},color:"cyan"},{id:"skip",label:{en:"Not now",zh:"\u7A0D\u540E\u518D\u8BF4"},hint:{en:"Remind me tomorrow",zh:"\u660E\u5929\u518D\u63D0\u9192\u6211"}},{id:"never",label:{en:"Don't ask again",zh:"\u4E0D\u518D\u63D0\u793A"},hint:{en:"You can configure later via c key",zh:"\u4E4B\u540E\u53EF\u4EE5\u6309 c \u968F\u65F6\u914D\u7F6E"}}];function tY({onDone:B}){let[I,C]=e3.useState(0),g=sQ()==="zh";return QQ(e3.useCallback((F,N)=>{if(N.upArrow){C((H)=>H>0?H-1:t3.length-1);return}if(N.downArrow){C((H)=>H<t3.length-1?H+1:0);return}if(N.escape){B("skip");return}if(N.return){B(t3[I].id);return}},[I,B])),FQ.jsxDEV(h,{flexDirection:"column",paddingX:0,paddingY:1,children:[FQ.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:"cyan",paddingX:2,paddingY:1,children:[FQ.jsxDEV(h,{gap:1,children:[FQ.jsxDEV(R,{color:"cyan",bold:!0,children:"\uD83D\uDD11"},void 0,!1,void 0,this),FQ.jsxDEV(R,{bold:!0,children:g?"\u914D\u7F6E Tako API Key":"Configure Tako API Key"},void 0,!1,void 0,this)]},void 0,!0,void 0,this),FQ.jsxDEV(h,{marginTop:1,flexDirection:"column",children:[FQ.jsxDEV(R,{dimColor:!0,children:g?"\u914D\u7F6E API Key \u540E\u5373\u53EF\u4F7F\u7528 Tako \u4EE3\u7406\u670D\u52A1\uFF0C\u83B7\u5F97\u7EDF\u4E00\u7684\u914D\u989D\u7BA1\u7406\u548C\u66F4\u5FEB\u7684\u8BBF\u95EE\u901F\u5EA6\u3002":"Configure your API Key to use Tako proxy service with unified quota and faster access."},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:g?"\u4F60\u4E5F\u53EF\u4EE5\u8DF3\u8FC7\u6B64\u6B65\u9AA4\uFF0C\u76F4\u63A5\u4F7F\u7528\u5176\u4ED6\u670D\u52A1\u5546\u3002":"You can skip this and use other providers instead."},void 0,!1,void 0,this)]},void 0,!0,void 0,this),FQ.jsxDEV(h,{marginTop:1,flexDirection:"column",children:t3.map((F,N)=>{let H=N===I;return FQ.jsxDEV(h,{paddingLeft:1,gap:1,children:[FQ.jsxDEV(R,{color:H?F.color||"white":void 0,bold:H,children:H?"\u25B8":" "},void 0,!1,void 0,this),FQ.jsxDEV(R,{bold:H,color:H?F.color||"white":void 0,children:g?F.label.zh:F.label.en},void 0,!1,void 0,this),H&&FQ.jsxDEV(R,{dimColor:!0,children:g?F.hint.zh:F.hint.en},void 0,!1,void 0,this)]},F.id,!0,void 0,this)})},void 0,!1,void 0,this)]},void 0,!0,void 0,this),FQ.jsxDEV(h,{paddingX:2,marginTop:1,justifyContent:"center",gap:2,children:[FQ.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:g?"\u9009\u62E9":"select"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:g?"\u786E\u8BA4":"confirm"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),FQ.jsxDEV(R,{dimColor:!0,children:g?"\u8DF3\u8FC7":"skip"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}await RI();var yI=YA(FB(),1);kI();sB();y2();import{join as A4}from"path";async function B4(B){let C=`${await aI()}/${encodeURIComponent(B).replace("%40","@")}`,g=await fetch(C,{signal:AbortSignal.timeout(1e4)});if(!g.ok)throw Error(`registry http ${g.status}`);let F=await g.json(),N=Object.keys(F.versions??{});if(!N.length)throw Error("no versions found");let H=F.time??{},M=N.map((U)=>({version:U,publishedAt:H[U],isCurrent:!1}));return M.sort((U,u)=>{let X=U.publishedAt?Date.parse(U.publishedAt):0;return(u.publishedAt?Date.parse(u.publishedAt):0)-X}),M}async function Q4(B,I){let C=await import("fs/promises"),g=sE(B.id);await C.mkdir(g,{recursive:!0});let F=A4(g,"bun.lock"),N=A4(g,"node_modules");await C.rm(F,{force:!0}).catch(()=>{}),await C.rm(N,{recursive:!0,force:!0}).catch(()=>{});let H=A4(g,"package.json");await Bun.write(H,JSON.stringify({name:`tako-${B.id}-host`,version:"0.0.0",private:!0},null,2));let M=await aI(),{detectRegion:U}=await Promise.resolve().then(() => (y2(),lW)),u=await U(),{log:X}=await Promise.resolve().then(() => (eE(),ZL));X.info(`\u7F51\u7EDC\u73AF\u5883: ${u==="cn"?"\u56FD\u5185":"\u6D77\u5916"} | registry: ${M}`);let k=Bun.spawn([iQ,"add",`${B.package}@${I}`],{cwd:g,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:M}});if(await k.exited,k.exitCode!==0){let z=await new Response(k.stderr).text();throw Error(`bun add ${B.package}@${I} failed: ${z.slice(0,500).trim()}`)}let W=await AB();await fg({installedClients:{...W.installedClients,[B.id]:{version:I,installedAt:new Date().toISOString()}}})}async function I4(B){let I=sE(B.id),C=A4(I,"node_modules",B.package,"package.json");try{let F=Bun.file(C);if(await F.exists()){let N=await F.json();if(N.version)return N.version}}catch{}return(await AB()).installedClients[B.id]?.version??null}kQ();var kB=YA(_B(),1),dH=12,eY={"claude-code":{icon:"\u2726",color:"yellow"},codex:{icon:"\u25C8",color:"blue"},gemini:{icon:"\u25C6",color:"cyan"}};function AZ({onDone:B}){let I=xg(),C=sQ()==="zh",[g,F]=yI.useState(0),[N,H]=yI.useState(0),[M,U]=yI.useState(0),[u,X]=yI.useState({}),[k,W]=yI.useState(null),[z,$]=yI.useState(""),O=I[g],v=yI.useCallback(async(wA)=>{X((GA)=>({...GA,[wA]:{loading:!0,versions:[],current:null}}));let ZA=I.find((GA)=>GA.id===wA);if(!ZA)return;try{let[GA,s]=await Promise.all([B4(ZA.package),I4(ZA)]),XA=GA.map((qA)=>({...qA,isCurrent:qA.version===s}));X((qA)=>({...qA,[wA]:{loading:!1,versions:XA,current:s}}))}catch(GA){X((s)=>({...s,[wA]:{loading:!1,error:GA.message,versions:[],current:null}}))}},[I]);yI.useEffect(()=>{if(!O)return;if(!u[O.id])v(O.id)},[g,O?.id]),yI.useEffect(()=>{H(0),U(0)},[g]),yI.useEffect(()=>{if(!z)return;let wA=setTimeout(()=>$(""),3000);return()=>clearTimeout(wA)},[z]);let d=O?u[O.id]:void 0,l=d?.versions??[],r=yI.useCallback(async(wA)=>{if(!O||k)return;W(wA);try{await Q4(O,wA),$(C?`\u2713 \u5DF2\u5207\u6362\u5230 ${wA}`:`\u2713 Switched to ${wA}`),await v(O.id)}catch(ZA){$(C?`\u2717 \u5B89\u88C5\u5931\u8D25\uFF1A${ZA.message}`:`\u2717 Install failed: ${ZA.message}`)}finally{W(null)}},[O,k,v,C]);QQ((wA,ZA)=>{if(k)return;if(ZA.escape||wA==="q"){B();return}if(ZA.leftArrow){F((s)=>s>0?s-1:I.length-1);return}if(ZA.rightArrow){F((s)=>s<I.length-1?s+1:0);return}if(wA==="r"){if(O)v(O.id);return}if(!l.length)return;let GA=l.length-1;if(ZA.upArrow){H((s)=>{let XA=Math.max(0,s-1);if(XA<M)U(XA);return XA});return}if(ZA.downArrow){H((s)=>{let XA=Math.min(GA,s+1);if(XA>=M+dH)U(XA-dH+1);return XA});return}if(ZA.return){let s=l[N];if(s&&!s.isCurrent)r(s.version)}});let FA=eY[O?.id]?.color||"white",MA=l.slice(M,M+dH);return kB.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[kB.jsxDEV(h,{borderStyle:"round",borderColor:"gray",paddingX:3,children:[kB.jsxDEV(R,{bold:!0,children:["\uD83D\uDCE6 ",C?"\u5BA2\u6237\u7AEF\u7248\u672C\u7BA1\u7406":"Client Versions"]},void 0,!0,void 0,this),z&&kB.jsxDEV(R,{color:z.startsWith("\u2713")?"green":"red",children:[" ",z]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),kB.jsxDEV(h,{marginTop:1,gap:1,justifyContent:"center",children:I.map((wA,ZA)=>{let GA=eY[wA.id]||{icon:"\u25AA",color:"white"},s=ZA===g;return kB.jsxDEV(h,{borderStyle:s?"bold":"single",borderColor:s?GA.color:"gray",paddingX:2,children:kB.jsxDEV(R,{bold:s,color:s?GA.color:void 0,dimColor:!s,children:[GA.icon," ",wA.name]},void 0,!0,void 0,this)},wA.id,!1,void 0,this)})},void 0,!1,void 0,this),kB.jsxDEV(h,{flexDirection:"column",marginTop:1,borderStyle:"round",borderColor:FA,paddingX:2,paddingY:1,children:!d||d.loading?kB.jsxDEV(R,{dimColor:!0,children:C?"\u52A0\u8F7D\u4E2D...":"Loading..."},void 0,!1,void 0,this):d.error?kB.jsxDEV(R,{color:"red",children:[C?"\u52A0\u8F7D\u5931\u8D25\uFF1A":"Failed: ",d.error]},void 0,!0,void 0,this):l.length===0?kB.jsxDEV(R,{dimColor:!0,children:C?"\u6682\u65E0\u7248\u672C":"No versions"},void 0,!1,void 0,this):kB.jsxDEV(h,{flexDirection:"column",children:[kB.jsxDEV(R,{dimColor:!0,children:[C?`\u5171 ${l.length} \u4E2A\u7248\u672C\uFF0C\u5F53\u524D\u5B89\u88C5\uFF1A`:`${l.length} versions, current: `,kB.jsxDEV(R,{color:FA,children:d.current??(C?"\u672A\u5B89\u88C5":"not installed")},void 0,!1,void 0,this)]},void 0,!0,void 0,this),kB.jsxDEV(h,{marginTop:1,flexDirection:"column",children:MA.map((wA,ZA)=>{let s=M+ZA===N,XA=wA.publishedAt?wA.publishedAt.slice(0,10):"",qA=wA.isCurrent?C?" \u2605 \u5F53\u524D":" \u2605 current":"",JA=k===wA.version,KA=s?FA:wA.isCurrent?"green":void 0;return kB.jsxDEV(h,{paddingLeft:1,children:kB.jsxDEV(R,{color:KA,bold:s,dimColor:!s&&!wA.isCurrent,children:[s?"\u25B6 ":" ",wA.version.padEnd(16),XA.padEnd(14),qA,JA?C?" \u23F3 \u5B89\u88C5\u4E2D...":" \u23F3 installing...":""]},void 0,!0,void 0,this)},wA.version,!1,void 0,this)})},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),kB.jsxDEV(h,{marginTop:1,borderStyle:"round",borderColor:"gray",paddingX:2,justifyContent:"center",gap:2,children:[kB.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2190\u2192"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:C?"\u5207\u6362\u5DE5\u5177":"switch"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:C?"\u9009\u62E9":"select"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:C?"\u5B89\u88C5":"install"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,bold:!0,children:"r"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:C?"\u5237\u65B0":"refresh"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,bold:!0,children:"Esc"},void 0,!1,void 0,this),kB.jsxDEV(R,{dimColor:!0,children:C?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}kQ();await B2([RI(),u4()]);var hQ=YA(FB(),1);kQ();FD();await B2([RI(),u4()]);var tQ=YA(FB(),1),RB=YA(_B(),1),XZ=300,qZ=200;function x_(B){let I=new Date(B.ts).toISOString().slice(11,19);switch(B.kind){case"session_started":return{dim:!0,text:`[${I}] \u25B6 session_started ${B.backend}`};case"turn_started":return{color:"cyan",text:`[${I}] \u25B6 turn_started`};case"text_delta":return{text:B.text};case"reasoning_delta":return{dim:!0,text:`[${I}] \uD83D\uDCAD ${B.text.slice(0,200)}`};case"tool_use":return{color:"yellow",text:`[${I}] \uD83D\uDD27 ${B.name} ${JSON.stringify(B.input).slice(0,160)}`};case"tool_result":return{color:"green",text:`[${I}] \u2713 result`};case"approval_required":return{color:"magenta",text:`[${I}] \u26A0 approval(${B.approvalType})`};case"turn_completed":return{color:"cyan",text:`[${I}] \u25C0 turn_completed`};case"error":return{color:"red",text:`[${I}] \u2717 ${B.message}`};case"session_closed":return{dim:!0,text:`[${I}] \u23F9 closed`};default:return{text:JSON.stringify(B)}}}function kZ({sid:B,onBack:I}){let C=G0()==="zh",[g,F]=tQ.useState(null),[N,H]=tQ.useState([]),[M,U]=tQ.useState(""),[u,X]=tQ.useState("idle"),[k,W]=tQ.useState(null),[z,$]=tQ.useState([]),O=tQ.useRef(0),v=tQ.useCallback(async()=>{let FA=await m2(B,qZ);if(!FA)return;F(FA.meta),H(FA.log);try{let wA=await(await import("fs/promises")).stat(dQ(B));O.current=wA.size}catch{O.current=0}},[B]);tQ.useEffect(()=>{v()},[v]),tQ.useEffect(()=>{let FA=!1,MA=null,wA=async()=>{if(FA)return;try{let ZA=await import("fs/promises"),GA=await ZA.stat(dQ(B));if(GA.size>O.current){let s=await ZA.open(dQ(B),"r"),XA=Buffer.alloc(GA.size-O.current);await s.read(XA,0,XA.length,O.current),await s.close(),O.current=GA.size;let qA=[];for(let JA of XA.toString("utf-8").split(`
779
+ `)){if(!JA.trim())continue;try{qA.push(JSON.parse(JA))}catch{}}if(qA.length)H((JA)=>[...JA,...qA].slice(-qZ))}if(Math.random()<0.1){let s=await m2(B,0);if(s)F(s.meta)}$(await h1(B))}catch{}MA=setTimeout(wA,XZ)};return MA=setTimeout(wA,XZ),()=>{if(FA=!0,MA)clearTimeout(MA)}},[B]);let d=tQ.useCallback(async()=>{if(u!=="idle"||!M.trim())return;let FA=M;U(""),W(null),X("sending");try{await j1(B,FA)}catch(MA){W(MA instanceof Error?MA.message:String(MA))}finally{X("idle");let MA=await m2(B,0);if(MA)F(MA.meta)}},[B,M,u]),l=tQ.useCallback(async()=>{if(u!=="sending")return I();X("cancelling"),await x1(B).catch(()=>{})},[u,B,I]),r=tQ.useCallback(async(FA)=>{let MA=z[0];if(!MA)return;await D4(B,MA.approvalId,{decision:FA?"allow":"deny",by:"tui",decidedAt:Date.now()}),$((wA)=>wA.filter((ZA)=>ZA.approvalId!==MA.approvalId))},[z,B]);if(QQ((FA,MA)=>{if(MA.ctrl&&FA==="y"){r(!0);return}if(MA.ctrl&&FA==="n"){r(!1);return}if(MA.escape){l();return}if(MA.ctrl&&FA==="c"){l();return}if(MA.ctrl&&FA==="d"){I();return}if(MA.return){d();return}if(MA.backspace||MA.delete){U((wA)=>wA.slice(0,-1));return}if(M.length===0&&FA==="q"){I();return}if(FA&&!MA.ctrl&&FA.length===1)U((wA)=>wA+FA)}),!g)return RB.jsxDEV(h,{paddingX:2,paddingY:1,children:RB.jsxDEV(R,{dimColor:!0,children:C?"\u52A0\u8F7D\u4E2D...":"loading..."},void 0,!1,void 0,this)},void 0,!1,void 0,this);return RB.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[RB.jsxDEV(h,{children:[RB.jsxDEV(R,{bold:!0,children:"Session "},void 0,!1,void 0,this),RB.jsxDEV(R,{color:"cyan",children:g.sid.slice(0,8)},void 0,!1,void 0,this),RB.jsxDEV(R,{children:" "},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:g.name},void 0,!1,void 0,this)]},void 0,!0,void 0,this),RB.jsxDEV(h,{children:RB.jsxDEV(R,{dimColor:!0,children:[g.backend," \xB7 ",g.model??"-"," \xB7 status=",g.status," \xB7 turns=",g.turnCount]},void 0,!0,void 0,this)},void 0,!1,void 0,this),RB.jsxDEV(h,{children:RB.jsxDEV(R,{dimColor:!0,children:[C?"\u5DE5\u4F5C\u76EE\u5F55\uFF1A":"cwd: ",g.workdir]},void 0,!0,void 0,this)},void 0,!1,void 0,this),z.length>0&&RB.jsxDEV(h,{marginTop:1,flexDirection:"column",borderStyle:"round",borderColor:"magenta",paddingX:1,children:[RB.jsxDEV(R,{color:"magenta",bold:!0,children:["\u26A0 ",z.length," ",C?"\u4E2A\u5F85\u5BA1\u6279":"pending"," \u2014 ",RB.jsxDEV(R,{bold:!0,children:"Ctrl-Y"},void 0,!1,void 0,this)," ",C?"\u6279\u51C6":"allow"," / ",RB.jsxDEV(R,{bold:!0,children:"Ctrl-N"},void 0,!1,void 0,this)," ",C?"\u62D2\u7EDD":"deny"]},void 0,!0,void 0,this),z.slice(0,3).map((FA,MA)=>RB.jsxDEV(R,{color:MA===0?"magenta":void 0,dimColor:MA!==0,children:[MA===0?"\u25B6 ":" ","[",FA.approvalType,"] ",FA.approvalId.slice(0,12)]},FA.approvalId,!0,void 0,this))]},void 0,!0,void 0,this),RB.jsxDEV(h,{marginTop:1,flexDirection:"column",borderStyle:"round",borderColor:"gray",paddingX:1,children:N.length===0?RB.jsxDEV(R,{dimColor:!0,children:C?"\uFF08\u6682\u65E0\u65E5\u5FD7\uFF09":"(no log yet)"},void 0,!1,void 0,this):N.slice(-30).map((FA,MA)=>{let wA=x_(FA);return RB.jsxDEV(R,{color:wA.color,dimColor:wA.dim,children:wA.text||" "},MA,!1,void 0,this)})},void 0,!1,void 0,this),k&&RB.jsxDEV(h,{marginTop:1,children:RB.jsxDEV(R,{color:"red",children:["\u2717 ",k]},void 0,!0,void 0,this)},void 0,!1,void 0,this),RB.jsxDEV(h,{marginTop:1,children:[RB.jsxDEV(R,{color:"cyan",bold:!0,children:u==="sending"?"\u23F3 ":u==="cancelling"?"\u270B ":"\u25B6 "},void 0,!1,void 0,this),RB.jsxDEV(R,{children:M},void 0,!1,void 0,this),u==="idle"&&RB.jsxDEV(R,{inverse:!0,children:" "},void 0,!1,void 0,this),u==="sending"&&RB.jsxDEV(R,{dimColor:!0,children:[" (",C?"\u6B63\u5728\u53D1\u9001\u2026ESC \u53D6\u6D88":"sending\u2026 ESC cancel",")"]},void 0,!0,void 0,this)]},void 0,!0,void 0,this),RB.jsxDEV(h,{marginTop:1,gap:2,children:[RB.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:C?"\u53D1\u9001":"send"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,bold:!0,children:"^Y/^N"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:C?"\u6279/\u62D2":"allow/deny"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,bold:!0,children:"ESC"},void 0,!1,void 0,this),RB.jsxDEV(R,{dimColor:!0,children:C?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}var $A=YA(_B(),1);function zZ(B){let I=Math.floor(B/1000);if(I<60)return`${I}s`;if(I<3600)return`${Math.floor(I/60)}m`;if(I<86400)return`${Math.floor(I/3600)}h`;return`${Math.floor(I/86400)}d`}function p_(B){switch(B){case"running":return"yellow";case"idle":return"green";case"closed":return"gray";case"dead":return"red";default:return"white"}}function OZ({onDone:B}){let I=G0()==="zh",[C,g]=hQ.useState(null),[F,N]=hQ.useState({}),[H,M]=hQ.useState(0),[U,u]=hQ.useState(null),[X,k]=hQ.useState(0),[W,z]=hQ.useState({kind:"list"}),$=hQ.useCallback(async()=>{let[O,v]=await Promise.all([J4(),L4()]);g(O),N(v),M((d)=>Math.max(0,Math.min(d,O.length-1)))},[]);if(hQ.useEffect(()=>{$()},[$,X]),hQ.useEffect(()=>{let O=setInterval(()=>k((v)=>v+1),5000);return()=>clearInterval(O)},[]),QQ((O,v)=>{if(U)return;if(W.kind!=="list")return;if(v.escape||O==="q"){B();return}if(O==="n"){z({kind:"new",backend:"claude",model:"",name:"",field:"backend"});return}if(!C||C.length===0){if(O==="r")k((l)=>l+1);return}if(v.upArrow||O==="k"){M((l)=>Math.max(0,l-1));return}if(v.downArrow||O==="j"){M((l)=>Math.min(C.length-1,l+1));return}if(O==="r"){k((l)=>l+1);return}if(O==="p"){u(I?"\u6E05\u7406\u4E2D...":"purging..."),U4().then(()=>{u(null),$()});return}let d=C[H];if(!d)return;if(v.return||O==="o"){z({kind:"detail",sid:d.sid});return}if(O==="d"){u(`closing ${d.sid.slice(0,8)}...`),wD(d.sid,!1).then(()=>{u(null),$()});return}if(O==="x"){u(`purging ${d.sid.slice(0,8)}...`),wD(d.sid,!0).then(()=>{u(null),$()});return}}),W.kind==="detail")return $A.jsxDEV(kZ,{sid:W.sid,onBack:()=>{z({kind:"list"}),$()}},void 0,!1,void 0,this);if(W.kind==="new")return $A.jsxDEV(i_,{initial:W,onCancel:()=>z({kind:"list"}),onCreated:(O)=>{z({kind:"detail",sid:O})}},void 0,!1,void 0,this);if(!C)return $A.jsxDEV(h,{paddingX:2,paddingY:1,children:$A.jsxDEV(R,{dimColor:!0,children:I?"\u52A0\u8F7D\u4E2D...":"loading..."},void 0,!1,void 0,this)},void 0,!1,void 0,this);return $A.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[$A.jsxDEV(R,{bold:!0,children:I?"Agent \u4F1A\u8BDD\u7BA1\u7406":"Agent Sessions"},void 0,!1,void 0,this),$A.jsxDEV(h,{marginTop:1,children:$A.jsxDEV(R,{dimColor:!0,children:[I?"\u9ED8\u8BA4 Provider\uFF1A":"Defaults: ",Object.keys(F).length===0?I?"\uFF08\u672A\u8BBE\u7F6E\uFF09":"(unset)":Object.entries(F).map(([O,v])=>`${O}=${v.slice(0,8)}`).join(" \u2502 ")]},void 0,!0,void 0,this)},void 0,!1,void 0,this),C.length===0?$A.jsxDEV(h,{marginTop:2,flexDirection:"column",children:$A.jsxDEV(R,{dimColor:!0,children:I?"\uFF08\u6682\u65E0 session \u2014 \u6309 n \u65B0\u5EFA\uFF09":"(no sessions \u2014 press n to create)"},void 0,!1,void 0,this)},void 0,!1,void 0,this):$A.jsxDEV(h,{marginTop:1,flexDirection:"column",children:[$A.jsxDEV(h,{children:$A.jsxDEV(R,{bold:!0,children:["sid".padEnd(10),"backend".padEnd(9),"name".padEnd(20),"model".padEnd(22),"status".padEnd(9),"turns".padEnd(7),"age".padEnd(6),"last"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),C.map((O,v)=>{let d=v===H;return $A.jsxDEV(h,{children:[$A.jsxDEV(R,{color:d?"cyan":void 0,inverse:d,children:d?"\u25B6 ":" "},void 0,!1,void 0,this),$A.jsxDEV(R,{color:d?"cyan":void 0,children:O.sid.slice(0,8).padEnd(10)},void 0,!1,void 0,this),$A.jsxDEV(R,{children:O.backend.padEnd(9)},void 0,!1,void 0,this),$A.jsxDEV(R,{children:(O.name??"").slice(0,18).padEnd(20)},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:(O.model??"-").slice(0,20).padEnd(22)},void 0,!1,void 0,this),$A.jsxDEV(R,{color:p_(O.status),children:O.status.padEnd(9)},void 0,!1,void 0,this),$A.jsxDEV(R,{children:String(O.turnCount).padEnd(7)},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:zZ(Date.now()-O.createdAt).padEnd(6)},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:zZ(Date.now()-O.lastActiveAt)},void 0,!1,void 0,this)]},O.sid,!0,void 0,this)})]},void 0,!0,void 0,this),U&&$A.jsxDEV(h,{marginTop:1,children:$A.jsxDEV(R,{color:"yellow",children:["\u23F3 ",U]},void 0,!0,void 0,this)},void 0,!1,void 0,this),$A.jsxDEV(h,{marginTop:2,gap:2,children:[$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"\u2191\u2193"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u9009\u62E9":"select"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u8FDB\u5165":"open"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"n"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u65B0\u5EFA":"new"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"d"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u5173\u95ED":"close"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"x"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u5220\u9664":"purge"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"r"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u5237\u65B0":"refresh"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"q"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:I?"\u8FD4\u56DE":"back"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}function i_({initial:B,onCancel:I,onCreated:C}){let g=G0()==="zh",[F,N]=hQ.useState(B.backend),[H,M]=hQ.useState(B.model),[U,u]=hQ.useState(B.name),[X,k]=hQ.useState(B.field),[W,z]=hQ.useState(!1),[$,O]=hQ.useState(null),v=hQ.useCallback(async()=>{if(W)return;z(!0),O(null);try{let d=await f1({backend:F,model:H.trim()||void 0,name:U.trim()||void 0});C(d.sid)}catch(d){O(d instanceof Error?d.message:String(d)),z(!1)}},[F,H,U,W,C]);return QQ((d,l)=>{if(W)return;if(l.escape){I();return}if(l.tab||l.downArrow){k((r)=>r==="backend"?"model":r==="model"?"name":"backend");return}if(l.upArrow){k((r)=>r==="backend"?"name":r==="model"?"backend":"model");return}if(X==="backend"){if(l.leftArrow||l.rightArrow||d===" "){N((r)=>r==="claude"?"codex":"claude");return}if(l.return){v();return}return}if(X==="model"){if(l.return){k("name");return}if(l.backspace||l.delete){M((r)=>r.slice(0,-1));return}if(d&&!l.ctrl&&d.length===1)M((r)=>r+d);return}if(X==="name"){if(l.return){v();return}if(l.backspace||l.delete){u((r)=>r.slice(0,-1));return}if(d&&!l.ctrl&&d.length===1)u((r)=>r+d)}}),$A.jsxDEV(h,{flexDirection:"column",paddingX:2,paddingY:1,children:[$A.jsxDEV(R,{bold:!0,children:g?"\u65B0\u5EFA Agent Session":"New agent session"},void 0,!1,void 0,this),$A.jsxDEV(h,{marginTop:1,children:$A.jsxDEV(R,{color:X==="backend"?"cyan":void 0,bold:X==="backend",children:[X==="backend"?"\u25B6 ":" ",g?"\u540E\u7AEF":"backend",": ",F==="claude"?"\u25CF claude \u25CB codex":"\u25CB claude \u25CF codex"]},void 0,!0,void 0,this)},void 0,!1,void 0,this),$A.jsxDEV(h,{children:$A.jsxDEV(R,{color:X==="model"?"cyan":void 0,bold:X==="model",children:[X==="model"?"\u25B6 ":" ",g?"\u6A21\u578B":"model",": ",H||(g?"\uFF08\u7559\u7A7A\u8D70\u9ED8\u8BA4\uFF09":"(default)"),X==="model"&&$A.jsxDEV(R,{inverse:!0,children:" "},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),$A.jsxDEV(h,{children:$A.jsxDEV(R,{color:X==="name"?"cyan":void 0,bold:X==="name",children:[X==="name"?"\u25B6 ":" ",g?"\u540D\u5B57":"name",": ",U||(g?"\uFF08\u7559\u7A7A\u81EA\u52A8\uFF09":"(auto)"),X==="name"&&$A.jsxDEV(R,{inverse:!0,children:" "},void 0,!1,void 0,this)]},void 0,!0,void 0,this)},void 0,!1,void 0,this),$&&$A.jsxDEV(h,{marginTop:1,children:$A.jsxDEV(R,{color:"red",children:["\u2717 ",$]},void 0,!0,void 0,this)},void 0,!1,void 0,this),W&&$A.jsxDEV(h,{marginTop:1,children:$A.jsxDEV(R,{color:"yellow",children:["\u23F3 ",g?"\u521B\u5EFA\u4E2D...":"creating..."]},void 0,!0,void 0,this)},void 0,!1,void 0,this),$A.jsxDEV(h,{marginTop:1,gap:2,children:[$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"Tab/\u2191\u2193"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:g?"\u5207\u5B57\u6BB5":"switch"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"Enter"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:g?"\u521B\u5EFA":"create"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:"\u2502"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,bold:!0,children:"ESC"},void 0,!1,void 0,this),$A.jsxDEV(R,{dimColor:!0,children:g?"\u53D6\u6D88":"cancel"},void 0,!1,void 0,this)]},void 0,!0,void 0,this)]},void 0,!0,void 0,this)}eE();var nI=YA(_B(),1);function d_({onLaunch:B,onExit:I,initialView:C="launcher"}){let[g,F]=U0.useState(C),[N,H]=U0.useState([]),M=U0.useRef(null),U=U0.useRef(!1);U0.useEffect(()=>{if(U.current||C!=="launcher")return;U.current=!0,rY().then(($)=>{if($)F("key-guide")})},[C]);let u=U0.useCallback(($)=>{if(H((O)=>[...O.slice(-4),$]),M.current)clearTimeout(M.current);M.current=setTimeout(()=>H([]),5000)},[]);U0.useEffect(()=>{let $=0;return yN({info:(O)=>u({text:O,type:"info"}),warn:(O)=>u({text:O,type:"warn"}),error:(O)=>u({text:O,type:"error"}),success:(O)=>u({text:O,type:"success"}),spin:(O)=>{let v=++$;return u({id:v,text:O,type:"spin"}),{stop:(d)=>{if(H((l)=>{let r=l.filter((FA)=>FA.id!==v);if(d)r.push({text:d,type:"success"});return r.slice(-5)}),M.current)clearTimeout(M.current);M.current=setTimeout(()=>H([]),5000)},update:(d)=>{if(H((l)=>l.map((r)=>r.id===v?{...r,text:d}:r)),M.current)clearTimeout(M.current);M.current=setTimeout(()=>H([]),5000)}}}}),()=>cF()},[u]);let X=U0.useCallback(()=>F("launcher"),[]),k={info:"cyan",warn:"yellow",error:"red",success:"green",spin:"yellow"},W={info:"\u2139",warn:"\u26A0",error:"\u2717",success:"\u2713",spin:"\u23F3"},z=(()=>{switch(g){case"launcher":return nI.jsxDEV(mY,{onResult:($)=>{switch($.type){case"launch":B($);break;case"agent":F("agents");break;case"providers":F("providers");break;case"stats":F("stats");break;case"config":F("config");break;case"language":F("language");break;case"exit":I();break}}},void 0,!1,void 0,this);case"providers":return nI.jsxDEV(jY,{onDone:($)=>{if($==="client-versions")F("client-versions");else X()}},void 0,!1,void 0,this);case"agents":return nI.jsxDEV(OZ,{onDone:X},void 0,!1,void 0,this);case"client-versions":return nI.jsxDEV(AZ,{onDone:()=>F("providers")},void 0,!1,void 0,this);case"stats":return nI.jsxDEV(iY,{onExit:X},void 0,!1,void 0,this);case"config":return nI.jsxDEV(cY,{isReconfigure:!0,onDone:X},void 0,!1,void 0,this);case"language":return nI.jsxDEV(aY,{onDone:X},void 0,!1,void 0,this);case"key-guide":return nI.jsxDEV(tY,{onDone:($)=>{if($==="configure")F("config");else sY($).then(()=>F("launcher"))}},void 0,!1,void 0,this)}})();return nI.jsxDEV(h,{flexDirection:"column",children:[N.length>0&&nI.jsxDEV(h,{flexDirection:"column",paddingX:2,children:N.map(($,O)=>nI.jsxDEV(R,{color:k[$.type],dimColor:$.type==="info",children:[W[$.type]," ",$.text]},O,!0,void 0,this))},void 0,!1,void 0,this),z]},void 0,!0,void 0,this)}function C9(){return new Promise((B)=>{let I=null;function C(){try{if(process.stdin.removeAllListeners(),process.stdin.isTTY)process.stdin.setRawMode(!1);process.stdin.pause(),process.stdin.unref()}catch{}}function g(N){I?.clear(),I?.unmount(),I=null,C(),cF(),B(N)}function F(){I?.clear(),I?.unmount(),I=null,C(),cF(),B(null)}I=ED(nI.jsxDEV(d_,{onLaunch:g,onExit:F},void 0,!1,void 0,this))})}sB();_0();await RI();var DC=YA(_B(),1),c_={info:"cyan",success:"green",warning:"yellow",danger:"red"};function l_(B){return c_[B??"info"]??"cyan"}function a_({ann:B,onClose:I}){QQ((F,N)=>{if(N.return||N.escape||F==="q")I()});let C=l_(B.type),g=B.content.split(/\r?\n/);return DC.jsxDEV(h,{flexDirection:"column",borderStyle:"round",borderColor:C,paddingX:2,paddingY:1,children:[DC.jsxDEV(h,{children:DC.jsxDEV(R,{color:C,bold:!0,children:["\uD83D\uDCE3 ",B.title]},void 0,!0,void 0,this)},void 0,!1,void 0,this),DC.jsxDEV(h,{marginTop:1,flexDirection:"column",children:g.map((F,N)=>DC.jsxDEV(R,{children:F||" "},N,!1,void 0,this))},void 0,!1,void 0,this),DC.jsxDEV(h,{marginTop:1,children:DC.jsxDEV(R,{dimColor:!0,children:B.popup_once?"\u6309 Enter / Esc / q \u5173\u95ED\uFF0C\u672C\u6761\u53EA\u63D0\u793A\u4E00\u6B21":"\u6309 Enter / Esc / q \u5173\u95ED"},void 0,!1,void 0,this)},void 0,!1,void 0,this)]},void 0,!0,void 0,this)}async function SZ(B){return new Promise((I)=>{let C=null;C=ED(DC.jsxDEV(a_,{ann:B,onClose:()=>{C?.clear(),C?.unmount(),C=null,I()}},void 0,!1,void 0,this))})}var o_=2000,$Z=100;function YE(B){if(fF||process.env.TAKO_DEBUG==="1")process.stderr.write(`[announcements] ${B}
780
+ `)}function yZ(B){if(!B)return null;if(B.type!=="tako"&&B.type!=="custom")return null;if(!B.baseUrl||!B.apiKey)return null;return{baseUrl:B.baseUrl.replace(/\/+$/,""),apiKey:B.apiKey}}async function n_(B,I){let C=`${B}/v1/announcements/popup`;try{let g=await fetch(C,{headers:{Authorization:`Bearer ${I}`},signal:AbortSignal.timeout(o_)});if(!g.ok)return YE(`HTTP ${g.status} from ${C}\uFF08par \u53EF\u80FD\u672A\u90E8\u7F72\u65B0\u8DEF\u7531 /v1/announcements/popup\uFF09`),null;let N=(await g.json())?.announcement;if(!N)return YE("\u8FD4\u56DE announcement=null\uFF08par \u540E\u53F0\u6CA1\u6709 published+popup=true \u7684\u516C\u544A\uFF09"),null;if(typeof N.id!=="string"||typeof N.title!=="string")return YE(`payload \u7F3A id/title\uFF0C\u4E22\u5F03\uFF1A${JSON.stringify(N)}`),null;return YE(`\u62C9\u5230\u516C\u544A id=${N.id} title=${N.title} popup_once=${!!N.popup_once}`),{id:N.id,title:N.title,content:N.content??"",type:N.type,popup_once:!!N.popup_once}}catch(g){return YE(`fetch \u5931\u8D25\uFF1A${g instanceof Error?g.message:String(g)}`),null}}async function r_(B){return((await AB()).seenAnnouncementIds??[]).includes(B)}async function s_(B){let I=await AB(),C=I.seenAnnouncementIds??[];if(C.includes(B))return;let g=[...C,B];if(g.length>$Z)g.splice(0,g.length-$Z);I.seenAnnouncementIds=g,await KI(I)}async function t_(){let B=yZ(await cI());if(B)return B;for(let I of await OI()){let C=yZ(I);if(C)return C}return null}async function TZ(){let B=await t_();if(!B){YE("\u8DF3\u8FC7\uFF1A\u6CA1\u6709\u53EF\u7528\u7684 tako/custom provider\uFF08apiKey + baseUrl\uFF09");return}YE(`\u67E5\u8BE2\u516C\u544A\uFF1A${B.baseUrl}/v1/announcements/popup`);let I=await n_(B.baseUrl,B.apiKey);if(!I)return;if(I.popup_once&&await r_(I.id)){YE(`\u5DF2\u5728 seenAnnouncementIds\uFF0C\u8DF3\u8FC7\uFF1A${I.id}`);return}if(YE(`\u5F39\u7A97\uFF1A${I.id}`),await SZ(I),I.popup_once)await s_(I.id),YE(`\u6807\u8BB0\u5DF2\u770B\u8FC7\uFF1A${I.id}`)}async function vZ(){await mN(),await hN(),await KY(),await Promise.race([YN(await OI()),new Promise((B)=>setTimeout(B,3000))]),await TZ();while(!0){let B=await C9();if(!B)break;if(B.type==="agent")continue;let I=iI(B.clientId);if(!I)continue;PQ("menu_action",{action:"launch",client_id:B.clientId});let C=await r3(B.clientId);if(!C){nA.warn(jA("cli.noProvider")||"\u672A\u914D\u7F6E\u53EF\u7528\u7684\u670D\u52A1\u5546");continue}let F=process.platform==="win32"&&!!process.env.TAKO_WINDOWS_HANDOFF_FILE,N=await n3(I,{projectPath:B.projectPath,args:B.args,envVars:B.envVars,selectedOptionIds:B.selectedOptionIds,providerContext:C,relaunchTakoOnWindows:F});if(!N.success)nA.error(N.error||jA("cli.launchFailed"));else if(F)process.exit(0)}}eE();y2();sB();kQ();uE();SH();import{join as j0}from"path";function _Z(B,I){return["@echo off",'set "TAKO_WINDOWS_HANDOFF_FILE=%TEMP%\\tako-handoff-%RANDOM%-%RANDOM%.ps1"','if exist "%TAKO_WINDOWS_HANDOFF_FILE%" del "%TAKO_WINDOWS_HANDOFF_FILE%" >nul 2>nul',`"${B}" "${I}" %*`,'set "TAKO_EXIT_CODE=%ERRORLEVEL%"','if not exist "%TAKO_WINDOWS_HANDOFF_FILE%" exit /b %TAKO_EXIT_CODE%','powershell.exe -NoProfile -ExecutionPolicy Bypass -File "%TAKO_WINDOWS_HANDOFF_FILE%"',"exit /b %ERRORLEVEL%",""].join(`\r
781
+ `)}function VZ(B,I){return['$env:TAKO_WINDOWS_HANDOFF_FILE = Join-Path ([System.IO.Path]::GetTempPath()) ("tako-handoff-{0}-{1}.ps1" -f $PID, [System.Guid]::NewGuid().ToString("N"))',"Remove-Item -LiteralPath $env:TAKO_WINDOWS_HANDOFF_FILE -Force -ErrorAction SilentlyContinue",`& "${B}" "${I}" @args`,"$code = $LASTEXITCODE","if (Test-Path -LiteralPath $env:TAKO_WINDOWS_HANDOFF_FILE) {"," powershell.exe -NoProfile -ExecutionPolicy Bypass -File $env:TAKO_WINDOWS_HANDOFF_FILE"," exit $LASTEXITCODE","}","exit $code",""].join(`\r
782
+ `)}var g9="tako-cli",p1="0.3.12";function e_(B,I){let C=B.split(".").map(Number),g=I.split(".").map(Number);for(let F=0;F<3;F++){let N=C[F]||0,H=g[F]||0;if(N>H)return 1;if(N<H)return-1}return 0}async function AV(){try{let B=await aI(),I=await fetch(`${B}/${g9}/latest`,{signal:AbortSignal.timeout(5000)});if(!I.ok)return null;return(await I.json()).version||null}catch{return null}}async function BV(){let B=await AV();if(!B)return{hasUpdate:!1,currentVersion:p1};return{hasUpdate:e_(B,p1)>0,latestVersion:B,currentVersion:p1}}async function PZ(){let B=await import("fs/promises"),I=j0(uQ,"bin"),C=j0(I,"tako"),g=j0(v0,"node_modules/tako-cli/dist/index.js");if(await B.mkdir(I,{recursive:!0}),process.platform==="win32")await B.writeFile(j0(I,"tako.cmd"),_Z(iQ,g)),await B.writeFile(j0(I,"tako.ps1"),VZ(iQ,g));else{let N=`#!/bin/bash
783
+ exec "${iQ}" "${g}" "$@"
784
+ `;await B.writeFile(C,N,{mode:493})}}async function QV(B){let I=pg(),C=`\u6B63\u5728\u66F4\u65B0\u5230 v${B}`;I.start(C);try{let g=await aI(),F=await import("fs/promises");await F.mkdir(v0,{recursive:!0});let N=j0(v0,"package.json");try{await F.access(N)}catch{await F.writeFile(N,JSON.stringify({name:"tako-local",private:!0},null,2))}let H=Bun.spawn([iQ,"update",g9,"--latest"],{cwd:v0,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:g}}),M=await l3(H,C,(U)=>I.update(U));if(await H.exited,H.exitCode===0)return await PZ(),PQ("cli_updated",{from_version:p1,to_version:B}),I.stop(`\u66F4\u65B0\u6210\u529F\uFF01\u5DF2\u66F4\u65B0\u5230 v${B}`),!0;else return I.stop(`\u66F4\u65B0\u5931\u8D25: ${M||"\u672A\u77E5\u9519\u8BEF"}`),!1}catch(g){return I.stop(`\u66F4\u65B0\u5931\u8D25: ${g instanceof Error?g.message:"\u672A\u77E5\u9519\u8BEF"}`),!1}}async function IV(){let B=await import("fs/promises"),I=j0(v0,"bun.lock");try{await B.unlink(I)}catch{}}async function EV(){let B=await import("fs/promises");try{let I=await aI();await B.mkdir(v0,{recursive:!0});let C=j0(v0,"package.json");try{await B.access(C)}catch{await B.writeFile(C,JSON.stringify({name:"tako-local",private:!0},null,2))}await IV();let g=Bun.spawn([iQ,"add",`${g9}@latest`],{cwd:v0,stdout:"pipe",stderr:"pipe",env:{...process.env,BUN_CONFIG_REGISTRY:I}});return await g.exited,g.exitCode===0}catch{return!1}}async function CV(){let B=await import("fs/promises"),I=j0(uQ,"bin"),C=j0(I,"tako"),g=j0(v0,"node_modules/tako-cli/dist/index.js");try{let F=await B.readFile(C,"utf-8");if(F.includes("bun run tako-cli")||F.includes("run tako-cli")){nA.info(jA("updater.migrating"));let N=!1;try{await B.access(g),N=!0}catch{N=!1}if(!N){let H=pg();if(H.start(jA("updater.installingLocally")),!await EV())return H.stop(jA("updater.migrationFailed")),!1;H.stop(jA("updater.installComplete"))}return await PZ(),!0}}catch{}return!1}async function i1(){try{if(await CV())nA.info(jA("updater.migrationComplete")),process.exit(0);let I=await BV();if(I.hasUpdate&&I.latestVersion){if(nA.warn(jA("updater.newVersionAvailable",{version:I.latestVersion,current:p1})),await QV(I.latestVersion))nA.info(jA("updater.pleaseRestart")),process.exit(0)}}catch{}}kI();kQ();uE();import{homedir as DV}from"os";var zB={black:"\x1B[30m",red:"\x1B[31m",green:"\x1B[32m",yellow:"\x1B[33m",blue:"\x1B[34m",magenta:"\x1B[35m",cyan:"\x1B[36m",white:"\x1B[37m",brightBlack:"\x1B[90m",brightRed:"\x1B[91m",brightGreen:"\x1B[92m",brightYellow:"\x1B[93m",brightBlue:"\x1B[94m",brightMagenta:"\x1B[95m",brightCyan:"\x1B[96m",brightWhite:"\x1B[97m"};var aB={bold:"\x1B[1m",dim:"\x1B[2m",italic:"\x1B[3m",underline:"\x1B[4m",reset:"\x1B[0m"};var MQ={directory:{icon:zB.brightYellow,text:zB.brightGreen},git:{icon:zB.brightBlue,text:zB.brightBlue,clean:zB.brightGreen,dirty:zB.brightYellow,conflict:zB.brightRed},model:{icon:zB.brightCyan,text:zB.brightCyan},version:{icon:zB.brightWhite,text:zB.brightBlack},outputStyle:{icon:zB.brightMagenta,text:zB.brightMagenta},context:{icon:zB.brightMagenta,low:zB.brightGreen,medium:zB.brightYellow,high:zB.brightRed},todayUsage:{icon:zB.brightGreen,text:zB.brightGreen},separator:zB.brightBlack},FC={directory:{nerd:"\uF07B",plain:"\uD83D\uDCC1"},git:{nerd:"\uE725",plain:"\uD83C\uDF3F"},model:{nerd:"\uF11B",plain:"\uD83E\uDD16"},version:{nerd:"\uF412",plain:"\uD83D\uDCBE"},outputStyle:{nerd:"\uF12F5",plain:"\uD83C\uDFAF"},context:{nerd:"\uF0E7",plain:"\u26A1"},todayUsage:{nerd:"\uF155",plain:"\uD83D\uDCB0"},gitClean:"\u2713",gitDirty:"\u25CF",gitConflict:"\u26A0",gitAhead:"\u2191",gitBehind:"\u2193"};function gV(){return!1}function ZE(B){let I=FC[B];if(typeof I==="string")return I;return gV()?I.nerd:I.plain}class K4{id="directory";render(B){let I=this.formatPath(B.workspace.current_dir),C=ZE("directory");return`${MQ.directory.icon}${C}${aB.reset} ${MQ.directory.text}${I}${aB.reset}`}formatPath(B){let I=DV();if(B===I)return"~";if(B.startsWith(I+"/"))return"~"+B.slice(I.length);return B}}class R4{id="git";async render(B){let I=B.workspace.current_dir;if(!await this.isGitRepository(I))return null;let g=await this.getBranch(I);if(!g)return null;let{status:F,statusColor:N}=await this.getStatus(I),{ahead:H,behind:M}=await this.getAheadBehind(I),U=ZE("git"),u=`${MQ.git.icon}${U}${aB.reset} ${MQ.git.text}${g}${aB.reset}`;if(u+=` ${N}${F}${aB.reset}`,H>0)u+=` ${MQ.git.clean}${FC.gitAhead}${H}${aB.reset}`;if(M>0)u+=` ${MQ.git.dirty}${FC.gitBehind}${M}${aB.reset}`;return u}async isGitRepository(B){try{return await Bun.spawn(["git","rev-parse","--git-dir"],{cwd:B,stdout:"pipe",stderr:"pipe"}).exited===0}catch{return!1}}async getBranch(B){try{let I=Bun.spawn(["git","branch","--show-current"],{cwd:B,stdout:"pipe",stderr:"pipe"}),C=await new Response(I.stdout).text();if(await I.exited===0&&C.trim())return C.trim();let F=Bun.spawn(["git","rev-parse","--short","HEAD"],{cwd:B,stdout:"pipe",stderr:"pipe"}),N=await new Response(F.stdout).text();if(await F.exited===0&&N.trim())return`detached:${N.trim()}`;return null}catch{return null}}async getStatus(B){try{let I=Bun.spawn(["git","status","--porcelain"],{cwd:B,stdout:"pipe",stderr:"pipe"}),C=await new Response(I.stdout).text();if(await I.exited!==0)return{status:FC.gitClean,statusColor:MQ.git.clean};let F=C.trim();if(!F)return{status:FC.gitClean,statusColor:MQ.git.clean};if(F.includes("UU")||F.includes("AA")||F.includes("DD"))return{status:FC.gitConflict,statusColor:MQ.git.conflict};return{status:FC.gitDirty,statusColor:MQ.git.dirty}}catch{return{status:FC.gitClean,statusColor:MQ.git.clean}}}async getAheadBehind(B){try{let I=Bun.spawn(["git","rev-list","--count","@{u}..HEAD"],{cwd:B,stdout:"pipe",stderr:"pipe"}),C=await new Response(I.stdout).text(),F=await I.exited===0?parseInt(C.trim(),10)||0:0,N=Bun.spawn(["git","rev-list","--count","HEAD..@{u}"],{cwd:B,stdout:"pipe",stderr:"pipe"}),H=await new Response(N.stdout).text(),U=await N.exited===0?parseInt(H.trim(),10)||0:0;return{ahead:F,behind:U}}catch{return{ahead:0,behind:0}}}}var FV={"claude-opus-4-5-20251101":"Opus 4.5","claude-opus-4-5":"Opus 4.5","claude-sonnet-4-5-20250514":"Sonnet 4.5","claude-sonnet-4-5":"Sonnet 4.5","claude-sonnet-4-20250514":"Sonnet 4","claude-sonnet-4":"Sonnet 4","claude-sonnet-3-5-20241022":"Sonnet 3.5","claude-3-5-sonnet-20241022":"Sonnet 3.5","claude-3-5-sonnet":"Sonnet 3.5","claude-haiku-3-5-20241022":"Haiku 3.5","claude-3-5-haiku-20241022":"Haiku 3.5","claude-3-5-haiku":"Haiku 3.5"};class W4{id="model";render(B){let I=B.model.id,C=FV[I]||this.simplifyModelName(B.model.display_name),g=ZE("model");return`${MQ.model.icon}${g}${aB.reset} ${MQ.model.text}${C}${aB.reset}`}simplifyModelName(B){let I=B.replace(/^Claude\s+/i,"");return I=I.replace(/-\d{8}$/,""),I}}var wV=200000;class XE{id="context";static cache=null;static CACHE_TTL=5000;async render(B){let I=await this.getTokensWithCache(B.transcript_path),g=uN(B.model.id)?.contextWindow??wV,F=Math.round((I??0)/g*100),N=Math.max(0,100-F),H=ZE("context"),M=N<=20?zB.brightRed:N<=50?zB.brightYellow:zB.brightGreen;return`${MQ.context.icon}${H}${aB.reset} ${M}${N}%${aB.reset}`}async getTokensWithCache(B){let I=Date.now();if(XE.cache&&XE.cache.path===B&&I-XE.cache.timestamp<XE.CACHE_TTL)return XE.cache.tokens;let C=await this.parseTranscriptTokens(B);return XE.cache={path:B,tokens:C,timestamp:I},C}async parseTranscriptTokens(B){try{let I=Bun.file(B);if(!await I.exists())return null;let C=await I.text();if(!C.trim())return null;let g=C.split(`
785
+ `).filter((F)=>F.trim());for(let F=g.length-1;F>=0;F--)try{let N=JSON.parse(g[F]);if(N.type==="assistant"&&N.message?.usage){let H=N.message.usage;return(H.input_tokens||0)+(H.output_tokens||0)+(H.cache_creation_input_tokens||0)+(H.cache_read_input_tokens||0)}}catch{continue}return null}catch{return null}}}s3();sB();_0();class Y4{id="quota";async render(B){let I=await this.tryRenderOfficial();if(I)return I;return this.renderSessionCost(B)}async tryRenderOfficial(){try{let B=await BC("claude-code")??await cI();if(!B){let C=await jg().catch(()=>"");if(!C)return null;let g=await DD(C);return this.renderTako(g)}let I=await T1(B);if(I.status!=="ok")return null;switch(I.provider){case"tako":return this.renderTako(I);case"claude-subscription":return this.renderClaudeSub(I);case"codex-subscription":return this.renderCodexSub(I);default:return null}}catch{return null}}renderTako(B){if(B.status!=="ok")return null;if(!!(B.primary?.costLimit||B.secondary?.costLimit||B.daily?.costLimit))return this.renderSub(B);let C=B.daily??B.primary??B.secondary;if(!C)return null;let g=C.costUsed??0;return`${this.icon()} ${zB.brightGreen}Day:${this.fmtCost(g)}${aB.reset}`}renderSub(B){let I=(g,F,N)=>{if(g&&g>=1440)return`${Math.round(g/1440)}d`;if(g)return`${Math.round(g/60)}h`;return N?`${N}d`:`${F}h`},C=[];if(B.primary)C.push(this.remainChunk(I(B.primary.windowMinutes,5),B.primary.usedPct));if(B.secondary)C.push(this.remainChunk(I(B.secondary.windowMinutes,24,7),B.secondary.usedPct));if(B.modelLimits?.opus)C.push(this.remainChunk("opus",B.modelLimits.opus.usedPct));if(!C.length)return null;return`${this.icon()} ${C.join(`${aB.dim} \xB7 ${aB.reset}`)}`}renderClaudeSub=this.renderSub;renderCodexSub=this.renderSub;pctChunk(B,I){let C=I>=90?zB.brightRed:I>=70?zB.brightYellow:zB.brightGreen;return`${B}:${C}${I}%${aB.reset}`}remainChunk(B,I){let C=Math.max(0,Math.min(100,100-Math.round(I))),g=C<=10?zB.brightRed:C<=30?zB.brightYellow:zB.brightGreen;return`${B} \u5269 ${g}${C}%${aB.reset}`}renderSessionCost(B){let I=B.cost?.total_cost_usd;if(I==null||I<=0)return null;return`${this.icon()} ${zB.brightGreen}Session:${this.fmtCost(I)}${aB.reset}`}icon(){return`${MQ.todayUsage.icon}${ZE("todayUsage")}${aB.reset}`}fmtCost(B){if(B>=100)return`$${Math.round(B)}`;if(B>=10)return`$${B.toFixed(1)}`;return`$${B.toFixed(2)}`}}class D9{separator=`${MQ.separator} \u2502 ${aB.reset}`;render(B){let I=["directory","git","model","context","quota"],C=[];for(let g of I){let F=B.get(g);if(F)C.push(F)}return C.join(this.separator)}}import{join as GD,dirname as GV}from"path";import{homedir as F9}from"os";import{mkdir as NV}from"fs/promises";var mZ=GD(F9(),".tako"),HV=GD(mZ,"cli"),JV=GD(mZ,"bin",process.platform==="win32"?"tako.cmd":"tako");function MV(){if(process.platform==="win32")return GD(process.env.APPDATA||GD(F9(),"AppData","Roaming"),"claude","settings.json");return GD(F9(),".claude","settings.json")}var UV=process.platform==="win32",LV="0.1.48";function uV(B,I){let C=B.split(".").map(Number),g=I.split(".").map(Number),F=Math.max(C.length,g.length);for(let N=0;N<F;N++){let H=C[N]||0,M=g[N]||0;if(H!==M)return H-M}return 0}async function KV(){let B=GD(HV,"node_modules","tako-cli","package.json");try{let I=Bun.file(B);if(!await I.exists())return null;return(await I.json()).version||null}catch{return null}}async function RV(){let B=await KV();if(!B)return!1;return uV(B,LV)>=0}function WV(){return JV}function YV(){return`"${ZV(WV())}" statusline`}function ZV(B){if(UV)return B.replace(/\\/g,"/");return B}async function w9(){if(!await RV())return;let I=MV(),C={};try{let N=Bun.file(I);if(await N.exists())C=await N.json()}catch{}let g={type:"command",command:YV(),padding:0},F=typeof C.statusLine==="object"&&C.statusLine!==null?C.statusLine.command:null;if(typeof F==="string"&&F.includes("tako statusline"))return;C.statusLine=g,await NV(GV(I),{recursive:!0}),await Bun.write(I,JSON.stringify(C,null,2))}var XV=[new K4,new R4,new W4,new XE,new Y4];async function qV(B){let I=await Promise.all(XV.map(async(F)=>{try{let N=await F.render(B);return{id:F.id,content:N}}catch{return{id:F.id,content:null}}})),C=new Map;for(let{id:F,content:N}of I)C.set(F,N);return new D9().render(C)}async function hZ(){try{let B=await Bun.stdin.json(),I=await qV(B);console.log(I)}catch{process.exit(0)}}var kV={"claude-code":{optionId:"skip-permissions",flag:"--dangerously-skip-permissions"},codex:{optionId:"bypass-sandbox",flag:"--dangerously-bypass-approvals-and-sandbox"}};async function Z4(B,I,C,g){let F=I.filter((M)=>M!==C),N=await zV(B,F,g);if(B!=="claude-code")return N?[N,...F]:F;let H=[];if(N)H.push(N);for(let M=0;M<F.length;M++){let U=F[M];if(U==="--model"&&M+1<F.length){H.push(U,F2(F[M+1])),M++;continue}if(U.startsWith("--model=")){let u=U.slice(8);H.push(`--model=${F2(u)}`);continue}H.push(U)}return H}async function zV(B,I,C){let g=kV[B];if(!g)return null;if(I.includes(g.flag))return null;return(await(C?.getLastSelectedOptionIds??a3)(B)).includes(g.optionId)?g.flag:null}sB();var k4="0.3.12";function JP(){console.log(`
786
+ ${jA("cli.version",{version:k4})}
787
+
788
+ ${jA("cli.usage")}
789
+
790
+ ${jA("cli.options")}
791
+ ${jA("cli.optionVersion")}
792
+ ${jA("cli.optionHelp")}
793
+
794
+ ${jA("cli.shortcuts")}
795
+ ${jA("cli.shortcutClaude")}
796
+ ${jA("cli.shortcutCodex")}
797
+ ${jA("cli.shortcutGemini")}
544
798
 
545
799
  Commands:
546
800
  tako install <client> Install AI coding tool
@@ -550,12 +804,12 @@ Commands:
550
804
  tako skill install <name> Install skill to current project
551
805
  tako models [--refresh] List models exposed by Tako providers
552
806
 
553
- ${b("cli.examples")}
554
- ${b("cli.exampleInteractive")}
555
- ${b("cli.exampleClaude")}
556
- ${b("cli.exampleClaudeModel")}
557
- ${b("cli.exampleCodex")}
558
- ${b("cli.exampleGemini")}
559
- `)}async function Jl(i){let[o,n]=i;if(!o)console.error("\u7528\u6CD5: tako install <client> [version]"),console.error(" tako install claude-code # \u5217\u51FA\u6240\u6709\u53EF\u7528\u7248\u672C"),console.error(" tako install claude-code 1.0.5 # \u5B89\u88C5\u6307\u5B9A\u7248\u672C"),process.exit(1);let e=E(o);if(!e)console.error(`\u672A\u77E5 client: ${o}`),process.exit(1);if(!n){try{let d=await vt(e.package),u=await Lt(e),t=d.slice(0,30);console.log(`${e.name} (${e.package}) \u6700\u8FD1 ${t.length} \u4E2A\u7248\u672C\uFF1A`);for(let a of t){let r=a.version===u?" \u2190 \u5F53\u524D":"",p=a.publishedAt?` ${a.publishedAt.slice(0,10)}`:"";console.log(` ${a.version}${p}${r}`)}console.log(`
560
- \u5B89\u88C5\uFF1Atako install ${o} <version>`)}catch(d){console.error("\u83B7\u53D6\u7248\u672C\u5217\u8868\u5931\u8D25:",d.message),process.exit(1)}return}console.log(`\u6B63\u5728\u5B89\u88C5 ${e.package}@${n} \u5230 ${e.id}...`);try{await st(e,n),console.log(`\u2713 ${e.name} \u5DF2\u5207\u6362\u5230 ${n}`)}catch(d){console.error("\u5B89\u88C5\u5931\u8D25:",d.message),process.exit(1)}}async function K0(i,o,n){let e=E(i);if(!e)console.error(b("cli.clientNotFound",{client:o})),process.exit(1);let d=await fn(i);if(!d)console.error("\u672A\u914D\u7F6E\u53EF\u7528\u7684\u670D\u52A1\u5546"),process.exit(1);let u=await bn(e,{providerContext:d,args:n,handoffOnWindows:!0});if(!u.success)console.error(u.error),process.exit(1);process.exit(u.exitCode??0)}async function Kl(){let i=process.argv.slice(2);if(i[0]==="statusline"){Li(),await yt();return}if(i[0]==="install"){await Jl(i.slice(1));return}if(i[0]==="quota"){let{runQuotaCommand:n}=await Promise.resolve().then(() => (bt(),Nt)),e=await n(i.slice(1));if(e!==0)process.exit(e);return}if(i[0]==="agent"){Li();let{runAgentCommand:n}=await Promise.resolve().then(() => (qt(),St));await n(i.slice(1));return}if(i[0]==="skill"){let{runSkillCommand:n}=await Promise.resolve().then(() => (Jt(),Pt));await n(i.slice(1));return}if(i[0]==="models"){let{runModelsCommand:n}=await Promise.resolve().then(() => (At(),Bt)),e=await n(i.slice(1));if(e!==0)process.exit(e);return}if(i.includes("-v")||i.includes("--version")){console.log(`Tako CLI v${En}`);return}if(i.includes("-h")||i.includes("--help")){Pl();return}let o=En==="dev"||Mo;if(i.includes("--claude")){if(A(),J("cli_started"),!o)await nn();await K0("claude-code","Claude Code",await Xn("claude-code",i,"--claude"));return}if(i.includes("--codex")){if(A(),J("cli_started"),!o)await nn();await K0("codex","Codex",await Xn("codex",i,"--codex"));return}if(i.includes("--gemini")){if(A(),J("cli_started"),!o)await nn();await K0("gemini","Gemini CLI",await Xn("gemini",i,"--gemini"));return}if(!process.stdin.isTTY){console.log("Tako CLI v"+En),console.log(`
561
- \u5B89\u88C5\u6210\u529F\uFF01\u8BF7\u5728\u7EC8\u7AEF\u4E2D\u76F4\u63A5\u8FD0\u884C tako \u542F\u52A8\u4EA4\u4E92\u754C\u9762\u3002`),console.log(" tako \u2014 \u4EA4\u4E92\u5F0F\u542F\u52A8\u5668"),console.log(" tako --help \u2014 \u67E5\u770B\u6240\u6709\u547D\u4EE4");return}if(A(),J("cli_started"),!o)await nn();z0().catch(()=>{}),Li(),we().catch(()=>{}),await ct()}process.on("beforeExit",async()=>{await Ro()});process.on("SIGINT",async()=>{await Ro(),process.exit(0)});process.on("SIGTERM",async()=>{await Ro(),process.exit(0)});Kl().catch(async(i)=>{console.error(b("cli.cliError"),i),await Ro(),process.exit(1)});
807
+ ${jA("cli.examples")}
808
+ ${jA("cli.exampleInteractive")}
809
+ ${jA("cli.exampleClaude")}
810
+ ${jA("cli.exampleClaudeModel")}
811
+ ${jA("cli.exampleCodex")}
812
+ ${jA("cli.exampleGemini")}
813
+ `)}async function MP(B){let[I,C]=B;if(!I)console.error("\u7528\u6CD5: tako install <client> [version]"),console.error(" tako install claude-code # \u5217\u51FA\u6240\u6709\u53EF\u7528\u7248\u672C"),console.error(" tako install claude-code 1.0.5 # \u5B89\u88C5\u6307\u5B9A\u7248\u672C"),process.exit(1);let g=iI(I);if(!g)console.error(`\u672A\u77E5 client: ${I}`),process.exit(1);if(!C){try{let F=await B4(g.package),N=await I4(g),H=F.slice(0,30);console.log(`${g.name} (${g.package}) \u6700\u8FD1 ${H.length} \u4E2A\u7248\u672C\uFF1A`);for(let M of H){let U=M.version===N?" \u2190 \u5F53\u524D":"",u=M.publishedAt?` ${M.publishedAt.slice(0,10)}`:"";console.log(` ${M.version}${u}${U}`)}console.log(`
814
+ \u5B89\u88C5\uFF1Atako install ${I} <version>`)}catch(F){console.error("\u83B7\u53D6\u7248\u672C\u5217\u8868\u5931\u8D25:",F.message),process.exit(1)}return}console.log(`\u6B63\u5728\u5B89\u88C5 ${g.package}@${C} \u5230 ${g.id}...`);try{await Q4(g,C),console.log(`\u2713 ${g.name} \u5DF2\u5207\u6362\u5230 ${C}`)}catch(F){console.error("\u5B89\u88C5\u5931\u8D25:",F.message),process.exit(1)}}async function R9(B,I,C){let g=iI(B);if(!g)console.error(jA("cli.clientNotFound",{client:I})),process.exit(1);let F=await r3(B);if(!F)console.error("\u672A\u914D\u7F6E\u53EF\u7528\u7684\u670D\u52A1\u5546"),process.exit(1);let N=await n3(g,{providerContext:F,args:C,handoffOnWindows:!0});if(!N.success)console.error(N.error),process.exit(1);process.exit(N.exitCode??0)}async function UP(){let B=process.argv.slice(2);if(B[0]==="statusline"){HE(),await hZ();return}if(B[0]==="install"){await MP(B.slice(1));return}if(B[0]==="quota"){let{runQuotaCommand:C}=await Promise.resolve().then(() => (xZ(),jZ)),g=await C(B.slice(1));if(g!==0)process.exit(g);return}if(B[0]==="agent"){HE();let{runAgentCommand:C}=await rZ().then(() => nZ);await C(B.slice(1));return}if(B[0]==="skill"){let{runSkillCommand:C}=await Promise.resolve().then(() => (eZ(),tZ));await C(B.slice(1));return}if(B[0]==="models"){let{runModelsCommand:C}=await Promise.resolve().then(() => (QX(),BX)),g=await C(B.slice(1));if(g!==0)process.exit(g);return}if(B.includes("-v")||B.includes("--version")){console.log(`Tako CLI v${k4}`);return}if(B.includes("-h")||B.includes("--help")){JP();return}let I=k4==="dev"||fF;if(h0(),PQ("cli_started"),B.includes("--claude")){if(!I)await i1();await R9("claude-code","Claude Code",await Z4("claude-code",B,"--claude"));return}if(B.includes("--codex")){if(!I)await i1();await R9("codex","Codex",await Z4("codex",B,"--codex"));return}if(B.includes("--gemini")){if(!I)await i1();await R9("gemini","Gemini CLI",await Z4("gemini",B,"--gemini"));return}if(!I)await i1();if(w9().catch(()=>{}),HE(),LN().catch(()=>{}),!process.stdin.isTTY){console.log("Tako CLI v"+k4),console.log(`
815
+ \u5B89\u88C5\u6210\u529F\uFF01\u8BF7\u5728\u7EC8\u7AEF\u4E2D\u76F4\u63A5\u8FD0\u884C tako \u542F\u52A8\u4EA4\u4E92\u754C\u9762\u3002`),console.log(" tako \u2014 \u4EA4\u4E92\u5F0F\u542F\u52A8\u5668"),console.log(" tako --help \u2014 \u67E5\u770B\u6240\u6709\u547D\u4EE4");return}await vZ()}process.on("beforeExit",async()=>{await S1()});process.on("SIGINT",async()=>{await S1(),process.exit(0)});process.on("SIGTERM",async()=>{await S1(),process.exit(0)});UP().catch(async(B)=>{console.error(jA("cli.cliError"),B),await S1(),process.exit(1)});