@cline/llms 0.0.39 → 0.0.40

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 (39) hide show
  1. package/README.md +2 -1
  2. package/dist/catalog/catalog-live.d.ts +2 -0
  3. package/dist/catalog/catalog-live.d.ts.map +1 -1
  4. package/dist/catalog/catalog.generated.d.ts.map +1 -1
  5. package/dist/catalog/types.d.ts +4 -0
  6. package/dist/catalog/types.d.ts.map +1 -1
  7. package/dist/index.browser.js +1 -1
  8. package/dist/index.js +44 -44
  9. package/dist/models.js +33 -33
  10. package/dist/providers/ai-sdk.d.ts +0 -8
  11. package/dist/providers/ai-sdk.d.ts.map +1 -1
  12. package/dist/providers/builtins.d.ts +1 -0
  13. package/dist/providers/builtins.d.ts.map +1 -1
  14. package/dist/providers/compat.d.ts.map +1 -1
  15. package/dist/providers/config.d.ts +3 -3
  16. package/dist/providers/config.d.ts.map +1 -1
  17. package/dist/providers/gateway.d.ts +1 -0
  18. package/dist/providers/gateway.d.ts.map +1 -1
  19. package/dist/providers/registry.d.ts.map +1 -1
  20. package/dist/providers/routing/anthropic-compatible.d.ts +11 -12
  21. package/dist/providers/routing/anthropic-compatible.d.ts.map +1 -1
  22. package/dist/providers/routing/generic-compatible.d.ts +10 -0
  23. package/dist/providers/routing/generic-compatible.d.ts.map +1 -0
  24. package/dist/providers/routing/glm-thinking.d.ts +3 -2
  25. package/dist/providers/routing/glm-thinking.d.ts.map +1 -1
  26. package/dist/providers/routing/provider-option-rules.d.ts +19 -0
  27. package/dist/providers/routing/provider-option-rules.d.ts.map +1 -0
  28. package/dist/providers/routing/provider-options-types.d.ts +36 -0
  29. package/dist/providers/routing/provider-options-types.d.ts.map +1 -0
  30. package/dist/providers/routing/provider-options.d.ts +6 -11
  31. package/dist/providers/routing/provider-options.d.ts.map +1 -1
  32. package/dist/providers/routing/reasoning-codecs.d.ts +4 -0
  33. package/dist/providers/routing/reasoning-codecs.d.ts.map +1 -0
  34. package/dist/providers/routing/utils.d.ts +14 -0
  35. package/dist/providers/routing/utils.d.ts.map +1 -1
  36. package/dist/providers/vendors/types.d.ts +3 -0
  37. package/dist/providers/vendors/types.d.ts.map +1 -1
  38. package/dist/providers.js +30 -30
  39. package/package.json +4 -5
package/dist/providers.js CHANGED
@@ -1,42 +1,42 @@
1
- import{createRequire as sg}from"node:module";var rg=Object.defineProperty;var ag=(e)=>e;function og(e,t){this[e]=ag.bind(null,t)}var se=(e,t)=>{for(var n in t)rg(e,n,{get:t[n],enumerable:!0,configurable:!0,set:og.bind(t,n)})};var V=(e,t)=>()=>(e&&(t=e(e=0)),t);var He=sg(import.meta.url);var Fp={};se(Fp,{zodToJsonSchema:()=>$p,xmlTagsRemoval:()=>vp,withResolvedClineBuildEnv:()=>ck,validateWithZod:()=>J_,upsertWorkspaceInfo:()=>Ak,truncateStr:()=>bp,truncateSplit:()=>R_,toAiSdkToolResultOutput:()=>gp,serializeAbortReason:()=>v_,sanitizeFileName:()=>C_,safeJsonStringify:()=>O_,safeJsonParse:()=>N_,resolveRootSessionId:()=>wk,resolveReasoningEffortRatio:()=>hp,resolveReasoningBudgetFromRatio:()=>f_,resolveHubCommandTimeoutMs:()=>X$,resolveHookSessionContext:()=>kk,resolveEffectiveReasoningEffort:()=>m_,resolveClineEnvironment:()=>Sp,resolveClineBuildEnv:()=>to,registerRemoteConfigSessionBlobUpload:()=>$g,registerDisposable:()=>ap,readRemoteConfigSessionBlobUploadMetadata:()=>Ts,processWorkspaceInfo:()=>W_,prepareRemoteConfigRuntime:()=>Mg,parseUserCommandEnvelope:()=>fp,parseRuntimeConfigExtensions:()=>jk,parseJsonStream:()=>j_,parseHookEventPayload:()=>W$,normalizeUserInput:()=>pp,normalizePluginManifest:()=>sp,noopBasicLogger:()=>g_,maskSecret:()=>M_,isRuntimeConfigExtensionKind:()=>Up,isOAuthProviderId:()=>Zp,isLikelyAuthError:()=>Sw,isHubToolExecutorName:()=>Y$,isHubDaemonProcess:()=>yk,initVcr:()=>Jw,hasRuntimeConfigExtension:()=>Ok,getShellArgs:()=>Z_,getDefaultShell:()=>D_,getDefaultHubCommandTimeoutMs:()=>dp,getClineEnvironmentConfig:()=>io,formatUserInputBlock:()=>a_,formatUserCommandBlock:()=>o_,formatUptime:()=>F_,formatMessagesForAiSdk:()=>eo,formatHumanReadableDate:()=>L_,formatFileContentBlock:()=>mp,formatDisplayUserInput:()=>l_,emptyWorkspaceManifest:()=>Nk,disposeAll:()=>T$,createTool:()=>ww,createSessionId:()=>Ek,createRemoteConfigSessionMessagesArtifactUploader:()=>Ug,createContributionRegistry:()=>D$,createClineTelemetryServiceMetadata:()=>Ip,createClineTelemetryServiceConfig:()=>_k,clearRemoteConfigSessionBlobUpload:()=>_g,buildRemoteConfigSessionBlobUploadMetadata:()=>bg,buildClineSystemPrompt:()=>H_,augmentNodeCommandForDebug:()=>mk,WorkspaceManifestSchema:()=>Pp,WorkspaceInfoSchema:()=>Ep,VertexSettingsSchema:()=>Zf,VertexModelSchema:()=>Df,ToolCallRecordSchema:()=>Yf,ThinkingConfigSchema:()=>Vf,TeamTeammateSpecSchema:()=>Mk,TeamTaskToolResultSchema:()=>uw,TeamTaskListItemToolResultSchema:()=>Op,TeamTaskInputSchema:()=>Wk,TeamStatusToolResultSchema:()=>sw,TeamStatusInputSchema:()=>Jk,TeamSpawnTeammateInputSchema:()=>Lk,TeamSimpleAgentStatusToolResultSchema:()=>pw,TeamShutdownTeammateInputSchema:()=>Fk,TeamSendMessageToolResultSchema:()=>gw,TeamSendMessageInputSchema:()=>Yk,TeamRunToolSummarySchema:()=>dw,TeamRunTaskToolResultSchema:()=>lw,TeamRunTaskInputSchema:()=>Hk,TeamRunResultSummarySchema:()=>Np,TeamReviewOutcomeFragmentInputSchema:()=>rw,TeamReadMailboxInputSchema:()=>qk,TeamOutcomeToolResultSchema:()=>mw,TeamOutcomeFragmentToolResultSchema:()=>$w,TeamMissionLogToolResultSchema:()=>yw,TeamMissionLogInputSchema:()=>ew,TeamMessageType:()=>Ap,TeamMailboxMessageToolResultSchema:()=>cw,TeamListRunsInputSchema:()=>Bk,TeamListOutcomesInputSchema:()=>ow,TeamFinalizeOutcomeToolResultSchema:()=>_w,TeamFinalizeOutcomeInputSchema:()=>aw,TeamCreateOutcomeToolResultSchema:()=>fw,TeamCreateOutcomeInputSchema:()=>iw,TeamCleanupToolResultSchema:()=>bw,TeamCleanupInputSchema:()=>tw,TeamCancelRunToolResultSchema:()=>vw,TeamCancelRunInputSchema:()=>Xk,TeamBroadcastToolResultSchema:()=>hw,TeamBroadcastInputSchema:()=>Qk,TeamAwaitRunsInputSchema:()=>Vk,TeamAttachOutcomeFragmentInputSchema:()=>nw,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>Gk,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>Ck,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>Zk,TEAM_PROGRESS_EVENT_TYPE:()=>tk,TEAM_LIFECYCLE_EVENT_TYPE:()=>ik,TEAM_AWAIT_TIMEOUT_MS:()=>Dk,SESSION_STATUS_VALUES:()=>Pk,S3AccessKeySettingsSchema:()=>fi,RemoteMCPServerSchema:()=>Jf,RemoteConfigSchema:()=>w$,ReasoningEffortSchema:()=>ep,RUNTIME_CONFIG_EXTENSION_KINDS:()=>no,REMOTE_URI_SCHEME:()=>Eg,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>zs,REASONING_EFFORT_RATIOS:()=>yt,ProviderProtocolSchema:()=>q_,ProviderClientSchema:()=>ek,ProviderCapabilitySchema:()=>Q_,PromptUploadingSchema:()=>Kf,PLUGIN_FILE_EXTENSIONS:()=>Z$,OpenAiCompatibleSchema:()=>Pf,OpenAiCompatibleModelSchema:()=>Ef,OAUTH_PROVIDER_IDS:()=>Dp,ModelStatusSchema:()=>Bf,ModelPricingSchema:()=>Xf,ModelInfoSchema:()=>Qa,ModelCapabilitySchema:()=>Hf,LiteLLMSchema:()=>Rf,LiteLLMModelSchema:()=>Cf,HookEventPayloadSchema:()=>lp,HookEventNameSchema:()=>up,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>r_,HUB_TOOL_EXECUTOR_NAMES:()=>cp,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>Q$,HUB_MISTAKE_LIMIT_CAPABILITY:()=>n_,HUB_HOOK_CAPABILITY_PREFIX:()=>e_,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>H$,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>q$,HUB_COMPACTION_CAPABILITY:()=>t_,HUB_COMMAND_SLOW_LOG_MS:()=>B$,HUB_CHECKPOINT_CAPABILITY:()=>i_,GlobalInstructionsFileSchema:()=>Gn,EnterpriseTelemetrySchema:()=>Gf,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>zp,DEFAULT_REQUEST_HEADERS:()=>p_,DEFAULT_REASONING_EFFORT:()=>c_,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>Tp,DEFAULT_CLINE_ENVIRONMENT:()=>vk,ContributionRegistry:()=>qa,ConnectorHookEventSchema:()=>P$,ConnectorHookEventNameSchema:()=>tp,ConnectorEventContextSchema:()=>np,ConnectorEventActorSchema:()=>ip,ConnectorAuthorizationRequestSchema:()=>U$,ConnectorAuthorizationDecisionSchema:()=>E$,ClineSettingsSchema:()=>Af,ClineModelSchema:()=>Nf,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>hk,CLINE_HUB_PORT:()=>B_,CLINE_HUB_DEV_PORT:()=>X_,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>pk,CLINE_ENVIRONMENT_ENV:()=>fk,CLINE_ENVIRONMENTS:()=>Xn,CLINE_DEFAULT_RPC_PORT:()=>V_,CLINE_DEFAULT_RPC_ADDRESS:()=>Y_,CLINE_DEBUG_PORT_BASE_ENV:()=>kp,CLINE_DEBUG_HOST_ENV:()=>_p,CLINE_BUILD_ENV_ENV:()=>Ii,AwsBedrockSettingsSchema:()=>Of,AwsBedrockModelSchema:()=>Tf,AwsBedrockCustomModelSchema:()=>jf,ApiFormatSchema:()=>Wf,ApiFormat:()=>I$,AnthropicSchema:()=>Lf,AnthropicModelSchema:()=>Mf,AllowedMCPServerSchema:()=>Ff,AgentUsageSchema:()=>qf,AgentResultSchema:()=>x$,AgentFinishReasonSchema:()=>Qf,AgentConfigSchema:()=>z$,AUTH_ERROR_PATTERNS:()=>Cp,APIKeySchema:()=>S$});import pe from"node:fs/promises";import Zn from"node:path";import{createHmac as fg}from"node:crypto";import{basename as pg}from"node:path";import Be from"node:path";import{basename as nk}from"node:path";import{webcrypto as ws}from"node:crypto";import{existsSync as Iw,mkdirSync as xw,readFileSync as zw,writeFileSync as Uw}from"node:fs";import{dirname as Ew,resolve as Pw}from"node:path";function cg(e,t){this[e]=dg.bind(null,t)}async function mg(e){try{return await pe.access(e),!0}catch{return!1}}class Ss{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await pe.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await pe.mkdir(Zn.dirname(this.filePath),{recursive:!0}),await pe.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await pe.rm(this.filePath,{force:!0})}}class Is{async writeText(e,t){await pe.mkdir(Zn.dirname(e),{recursive:!0}),await pe.writeFile(e,t,"utf8")}async remove(e){await pe.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await mg(e))return;let t=await pe.readdir(e);await Promise.all(t.map((n)=>pe.rm(Zn.join(e,n),{recursive:!0,force:!0})))}}class Yn{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:a,region:i,cache:r,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=a,this.region=i,this.cache=r||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:r,headers:o,body:s}=e;if(t=Object.assign({method:i,url:r,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=r}let n=new xs(Object.assign({url:e.toString()},t,this,t&&t.aws)),a=Object.assign({},t,await n.sign());delete a.aws;try{return new Request(a.url.toString(),a)}catch(i){if(i instanceof TypeError)return new Request(a.url.toString(),Object.assign({duplex:"half"},a));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let a=fetch(await this.sign(e,t));if(n===this.retries)return a;let i=await a;if(i.status<500&&i.status!==429)return i;await new Promise((r)=>setTimeout(r,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class xs{constructor({method:e,url:t,headers:n,body:a,accessKeyId:i,secretAccessKey:r,sessionToken:o,service:s,region:l,cache:d,datetime:c,signQuery:p,appendSessionToken:v,allHeaders:f,singleEncode:y}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(r==null)throw TypeError("secretAccessKey is a required option");this.method=e||(a?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=a,this.accessKeyId=i,this.secretAccessKey=r,this.sessionToken=o;let k,T;if(!s||!l)[k,T]=hg(this.url,this.headers);if(this.service=s||k||"",this.region=l||T||"us-east-1",this.cache=d||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=p,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let j=this.signQuery?this.url.searchParams:this.headers;if(j.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)j.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((S)=>f||!gg.has(S)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((S)=>S+":"+(S==="host"?this.url.host:(this.headers.get(S)||"").replace(/\s+/g," "))).join(`
2
- `),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery){if(this.service==="s3"&&!j.has("X-Amz-Expires"))j.set("X-Amz-Expires","86400");j.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),j.set("X-Amz-Credential",this.accessKeyId+"/"+this.credentialString),j.set("X-Amz-SignedHeaders",this.signedHeaders)}if(this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch(S){this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");if(!y)this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/");this.encodedPath=Do(this.encodedPath);let M=new Set;this.encodedSearch=[...this.url.searchParams].filter(([S])=>{if(!S)return!1;if(this.service==="s3"){if(M.has(S))return!1;M.add(S)}return!0}).map((S)=>S.map((Z)=>Do(encodeURIComponent(Z)))).sort(([S,Z],[W,fe])=>S<W?-1:S>W?1:Z<fe?-1:Z>fe?1:0).map((S)=>S.join("=")).join("&")}async sign(){if(this.signQuery){if(this.url.searchParams.set("X-Amz-Signature",await this.signature()),this.sessionToken&&this.appendSessionToken)this.url.searchParams.set("X-Amz-Security-Token",this.sessionToken)}else this.headers.set("Authorization",await this.authHeader());return{method:this.method,url:this.url,headers:this.headers,body:this.body}}async authHeader(){return["AWS4-HMAC-SHA256 Credential="+this.accessKeyId+"/"+this.credentialString,"SignedHeaders="+this.signedHeaders,"Signature="+await this.signature()].join(", ")}async signature(){let e=this.datetime.slice(0,8),t=[this.secretAccessKey,e,this.region,this.service].join(),n=this.cache.get(t);if(!n){let a=await pt("AWS4"+this.secretAccessKey,e),i=await pt(a,this.region),r=await pt(i,this.service);n=await pt(r,"aws4_request"),this.cache.set(t,n)}return On(await pt(n,await this.stringToSign()))}async stringToSign(){return["AWS4-HMAC-SHA256",this.datetime,this.credentialString,On(await No(await this.canonicalString()))].join(`
1
+ import{createRequire as Jg}from"node:module";var Lg=Object.defineProperty;var Mg=(e)=>e;function Fg(e,t){this[e]=Mg.bind(null,t)}var de=(e,t)=>{for(var n in t)Lg(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Fg.bind(t,n)})};var G=(e,t)=>()=>(e&&(t=e(e=0)),t);var Qe=Jg(import.meta.url);var lv={};de(lv,{zodToJsonSchema:()=>Rp,xmlTagsRemoval:()=>Np,withResolvedClineBuildEnv:()=>Hk,validateWithZod:()=>xk,upsertWorkspaceInfo:()=>ww,truncateStr:()=>Cp,truncateSplit:()=>kk,toAiSdkToolResultOutput:()=>Ap,serializeAbortReason:()=>Y_,sanitizeSurrogates:()=>q,sanitizeFileName:()=>_k,safeJsonStringify:()=>gk,safeJsonParse:()=>hk,resolveRootSessionId:()=>cw,resolveReasoningEffortRatio:()=>Dp,resolveReasoningBudgetFromRatio:()=>X_,resolveHubCommandTimeoutMs:()=>O_,resolveHookSessionContext:()=>dw,resolveEffectiveReasoningEffort:()=>H_,resolveClineEnvironment:()=>Jp,resolveClineBuildEnv:()=>go,registerRemoteConfigSessionBlobUpload:()=>ih,registerDisposable:()=>Sp,readRemoteConfigSessionBlobUploadMetadata:()=>Vs,processWorkspaceInfo:()=>Ek,prepareRemoteConfigRuntime:()=>kh,parseUserCommandEnvelope:()=>Pp,parseRuntimeConfigExtensions:()=>$w,parseJsonStream:()=>vk,parseHookEventPayload:()=>U_,normalizeUserInput:()=>jp,normalizeSdkError:()=>Gp,normalizePluginManifest:()=>xp,noopBasicLogger:()=>Q_,maskSecret:()=>wk,isRuntimeConfigExtensionKind:()=>Xp,isOAuthProviderId:()=>rv,isLikelyAuthError:()=>mS,isHubToolExecutorName:()=>j_,isHubDaemonProcess:()=>tw,initVcr:()=>OS,hasRuntimeConfigExtension:()=>_w,getShellArgs:()=>$k,getDefaultShell:()=>bk,getDefaultHubCommandTimeoutMs:()=>Ep,getClineEnvironmentConfig:()=>ho,formatUserInputBlock:()=>M_,formatUserCommandBlock:()=>F_,formatUptime:()=>Ik,formatMessagesForAiSdk:()=>vo,formatHumanReadableDate:()=>Sk,formatFileContentBlock:()=>Op,formatDisplayUserInput:()=>G_,estimateTokens:()=>q_,emptyWorkspaceManifest:()=>kw,disposeAll:()=>f_,createTool:()=>cS,createSessionId:()=>hw,createRemoteConfigSessionMessagesArtifactUploader:()=>dh,createContributionRegistry:()=>y_,createClineTelemetryServiceMetadata:()=>Wp,createClineTelemetryServiceConfig:()=>lw,clearRemoteConfigSessionBlobUpload:()=>nh,captureSdkError:()=>xn,buildSdkErrorProperties:()=>Kp,buildRemoteConfigSessionBlobUploadMetadata:()=>th,buildClineSystemPrompt:()=>Tk,augmentNodeCommandForDebug:()=>Xk,WorkspaceManifestSchema:()=>Yp,WorkspaceInfoSchema:()=>Vp,VertexSettingsSchema:()=>ip,VertexModelSchema:()=>tp,ToolCallRecordSchema:()=>gp,ThinkingConfigSchema:()=>vp,TeamTeammateSpecSchema:()=>Uw,TeamTaskToolResultSchema:()=>Vw,TeamTaskListItemToolResultSchema:()=>ev,TeamTaskInputSchema:()=>Nw,TeamStatusToolResultSchema:()=>Xw,TeamStatusInputSchema:()=>Ow,TeamSpawnTeammateInputSchema:()=>Ew,TeamSimpleAgentStatusToolResultSchema:()=>iS,TeamShutdownTeammateInputSchema:()=>Tw,TeamSendMessageToolResultSchema:()=>rS,TeamSendMessageInputSchema:()=>Rw,TeamRunToolSummarySchema:()=>qw,TeamRunTaskToolResultSchema:()=>Yw,TeamRunTaskInputSchema:()=>Aw,TeamRunResultSummarySchema:()=>tv,TeamReviewOutcomeFragmentInputSchema:()=>Ww,TeamReadMailboxInputSchema:()=>Mw,TeamOutcomeToolResultSchema:()=>eS,TeamOutcomeFragmentToolResultSchema:()=>uS,TeamMissionLogToolResultSchema:()=>oS,TeamMissionLogInputSchema:()=>Fw,TeamMessageType:()=>iv,TeamMailboxMessageToolResultSchema:()=>Qw,TeamListRunsInputSchema:()=>Dw,TeamListOutcomesInputSchema:()=>Hw,TeamFinalizeOutcomeToolResultSchema:()=>lS,TeamFinalizeOutcomeInputSchema:()=>Bw,TeamCreateOutcomeToolResultSchema:()=>tS,TeamCreateOutcomeInputSchema:()=>Kw,TeamCleanupToolResultSchema:()=>sS,TeamCleanupInputSchema:()=>Jw,TeamCancelRunToolResultSchema:()=>nS,TeamCancelRunInputSchema:()=>Zw,TeamBroadcastToolResultSchema:()=>aS,TeamBroadcastInputSchema:()=>Lw,TeamAwaitRunsInputSchema:()=>Cw,TeamAttachOutcomeFragmentInputSchema:()=>Gw,TEAM_TASK_IGNORED_FIELDS_BY_ACTION:()=>jw,TEAM_RUN_TEXT_PREVIEW_LIMIT:()=>xw,TEAM_RUN_MESSAGE_PREVIEW_LIMIT:()=>Iw,TEAM_PROGRESS_EVENT_TYPE:()=>Ck,TEAM_LIFECYCLE_EVENT_TYPE:()=>Rk,TEAM_AWAIT_TIMEOUT_MS:()=>Sw,SESSION_STATUS_VALUES:()=>yw,SDK_ERROR_TELEMETRY_EVENT:()=>iw,S3AccessKeySettingsSchema:()=>wi,RemoteMCPServerSchema:()=>up,RemoteConfigSchema:()=>a_,ReasoningEffortSchema:()=>bp,RUNTIME_CONFIG_EXTENSION_KINDS:()=>yo,REMOTE_URI_SCHEME:()=>ch,REMOTE_CONFIG_SESSION_BLOB_UPLOAD_METADATA_KEY:()=>Ws,REASONING_EFFORT_RATIOS:()=>It,ProviderProtocolSchema:()=>Dk,ProviderClientSchema:()=>Zk,ProviderCapabilitySchema:()=>Ak,PromptUploadingSchema:()=>lp,PLUGIN_FILE_EXTENSIONS:()=>b_,OpenAiCompatibleSchema:()=>Xf,OpenAiCompatibleModelSchema:()=>Hf,OAUTH_PROVIDER_IDS:()=>nv,ModelStatusSchema:()=>fp,ModelPricingSchema:()=>pp,ModelInfoSchema:()=>fo,ModelCapabilitySchema:()=>mp,LiteLLMSchema:()=>rp,LiteLLMModelSchema:()=>np,HookEventPayloadSchema:()=>Up,HookEventNameSchema:()=>zp,HUB_USER_INSTRUCTIONS_SNAPSHOT_CAPABILITY:()=>L_,HUB_TOOL_EXECUTOR_NAMES:()=>Tp,HUB_TOOL_EXECUTOR_CAPABILITY_PREFIX:()=>N_,HUB_MISTAKE_LIMIT_CAPABILITY:()=>R_,HUB_HOOK_CAPABILITY_PREFIX:()=>D_,HUB_DEFAULT_COMMAND_TIMEOUT_MS:()=>E_,HUB_CUSTOM_TOOL_CAPABILITY_PREFIX:()=>A_,HUB_COMPACTION_CAPABILITY:()=>Z_,HUB_COMMAND_SLOW_LOG_MS:()=>T_,HUB_CHECKPOINT_CAPABILITY:()=>C_,GlobalInstructionsFileSchema:()=>ar,EnterpriseTelemetrySchema:()=>dp,DEFAULT_RUNTIME_CONFIG_EXTENSIONS:()=>Hp,DEFAULT_REQUEST_HEADERS:()=>V_,DEFAULT_REASONING_EFFORT:()=>B_,DEFAULT_OUTCOME_REQUIRED_SECTIONS:()=>qp,DEFAULT_CLINE_ENVIRONMENT:()=>qk,ContributionRegistry:()=>po,ConnectorHookEventSchema:()=>m_,ConnectorHookEventNameSchema:()=>$p,ConnectorEventContextSchema:()=>kp,ConnectorEventActorSchema:()=>_p,ConnectorAuthorizationRequestSchema:()=>d_,ConnectorAuthorizationDecisionSchema:()=>c_,ClineSettingsSchema:()=>ep,ClineModelSchema:()=>Qf,CLINE_RUN_AS_HUB_DAEMON_ENV:()=>ew,CLINE_HUB_PORT:()=>Ok,CLINE_HUB_DEV_PORT:()=>Pk,CLINE_ENVIRONMENT_OVERRIDE_ENV:()=>Yk,CLINE_ENVIRONMENT_ENV:()=>Vk,CLINE_ENVIRONMENTS:()=>lr,CLINE_DEFAULT_RPC_PORT:()=>jk,CLINE_DEFAULT_RPC_ADDRESS:()=>Nk,CLINE_DEBUG_PORT_BASE_ENV:()=>Mp,CLINE_DEBUG_HOST_ENV:()=>Lp,CLINE_BUILD_ENV_ENV:()=>Di,AwsBedrockSettingsSchema:()=>qf,AwsBedrockModelSchema:()=>Vf,AwsBedrockCustomModelSchema:()=>Yf,ApiFormatSchema:()=>cp,ApiFormat:()=>s_,AnthropicSchema:()=>op,AnthropicModelSchema:()=>ap,AllowedMCPServerSchema:()=>sp,AgentUsageSchema:()=>yp,AgentResultSchema:()=>u_,AgentFinishReasonSchema:()=>hp,AgentConfigSchema:()=>l_,AUTH_ERROR_PATTERNS:()=>av,APIKeySchema:()=>o_});import he from"node:fs/promises";import Yn from"node:path";import{createHmac as Xg}from"node:crypto";import{basename as Vg}from"node:path";import et from"node:path";import{basename as Lk}from"node:path";import{webcrypto as Fs}from"node:crypto";import{existsSync as fS,mkdirSync as pS,readFileSync as vS,writeFileSync as gS}from"node:fs";import{dirname as hS,resolve as yS}from"node:path";function Bg(e,t){this[e]=Wg.bind(null,t)}async function Hg(e){try{return await he.access(e),!0}catch{return!1}}class Js{filePath;constructor(e){this.filePath=e}async read(){try{return JSON.parse(await he.readFile(this.filePath,"utf8"))}catch(e){if(e.code==="ENOENT")return;throw e}}async write(e){await he.mkdir(Yn.dirname(this.filePath),{recursive:!0}),await he.writeFile(this.filePath,JSON.stringify(e,null,2),"utf8")}async clear(){await he.rm(this.filePath,{force:!0})}}class Ks{async writeText(e,t){await he.mkdir(Yn.dirname(e),{recursive:!0}),await he.writeFile(e,t,"utf8")}async remove(e){await he.rm(e,{recursive:!0,force:!0})}async removeChildren(e){if(!await Hg(e))return;let t=await he.readdir(e);await Promise.all(t.map((n)=>he.rm(Yn.join(e,n),{recursive:!0,force:!0})))}}class cr{constructor({accessKeyId:e,secretAccessKey:t,sessionToken:n,service:a,region:i,cache:r,retries:o,initRetryMs:s}){if(e==null)throw TypeError("accessKeyId is a required option");if(t==null)throw TypeError("secretAccessKey is a required option");this.accessKeyId=e,this.secretAccessKey=t,this.sessionToken=n,this.service=a,this.region=i,this.cache=r||new Map,this.retries=o!=null?o:10,this.initRetryMs=s||50}async sign(e,t){if(e instanceof Request){let{method:i,url:r,headers:o,body:s}=e;if(t=Object.assign({method:i,url:r,headers:o},t),t.body==null&&o.has("Content-Type"))t.body=s!=null&&o.has("X-Amz-Content-Sha256")?s:await e.clone().arrayBuffer();e=r}let n=new Gs(Object.assign({url:e.toString()},t,this,t&&t.aws)),a=Object.assign({},t,await n.sign());delete a.aws;try{return new Request(a.url.toString(),a)}catch(i){if(i instanceof TypeError)return new Request(a.url.toString(),Object.assign({duplex:"half"},a));throw i}}async fetch(e,t){for(let n=0;n<=this.retries;n++){let a=fetch(await this.sign(e,t));if(n===this.retries)return a;let i=await a;if(i.status<500&&i.status!==429)return i;await new Promise((r)=>setTimeout(r,Math.random()*this.initRetryMs*Math.pow(2,n)))}throw Error("An unknown error occurred, ensure retries is not negative")}}class Gs{constructor({method:e,url:t,headers:n,body:a,accessKeyId:i,secretAccessKey:r,sessionToken:o,service:s,region:l,cache:d,datetime:c,signQuery:p,appendSessionToken:v,allHeaders:f,singleEncode:y}){if(t==null)throw TypeError("url is a required option");if(i==null)throw TypeError("accessKeyId is a required option");if(r==null)throw TypeError("secretAccessKey is a required option");this.method=e||(a?"POST":"GET"),this.url=new URL(t),this.headers=new Headers(n||{}),this.body=a,this.accessKeyId=i,this.secretAccessKey=r,this.sessionToken=o;let _,O;if(!s||!l)[_,O]=Qg(this.url,this.headers);if(this.service=s||_||"",this.region=l||O||"us-east-1",this.cache=d||new Map,this.datetime=c||new Date().toISOString().replace(/[:-]|\.\d{3}/g,""),this.signQuery=p,this.appendSessionToken=v||this.service==="iotdevicegateway",this.headers.delete("Host"),this.service==="s3"&&!this.signQuery&&!this.headers.has("X-Amz-Content-Sha256"))this.headers.set("X-Amz-Content-Sha256","UNSIGNED-PAYLOAD");let P=this.signQuery?this.url.searchParams:this.headers;if(P.set("X-Amz-Date",this.datetime),this.sessionToken&&!this.appendSessionToken)P.set("X-Amz-Security-Token",this.sessionToken);if(this.signableHeaders=["host",...this.headers.keys()].filter((S)=>f||!qg.has(S)).sort(),this.signedHeaders=this.signableHeaders.join(";"),this.canonicalHeaders=this.signableHeaders.map((S)=>S+":"+(S==="host"?this.url.host:(this.headers.get(S)||"").replace(/\s+/g," "))).join(`
2
+ `),this.credentialString=[this.datetime.slice(0,8),this.region,this.service,"aws4_request"].join("/"),this.signQuery){if(this.service==="s3"&&!P.has("X-Amz-Expires"))P.set("X-Amz-Expires","86400");P.set("X-Amz-Algorithm","AWS4-HMAC-SHA256"),P.set("X-Amz-Credential",this.accessKeyId+"/"+this.credentialString),P.set("X-Amz-SignedHeaders",this.signedHeaders)}if(this.service==="s3")try{this.encodedPath=decodeURIComponent(this.url.pathname.replace(/\+/g," "))}catch(S){this.encodedPath=this.url.pathname}else this.encodedPath=this.url.pathname.replace(/\/+/g,"/");if(!y)this.encodedPath=encodeURIComponent(this.encodedPath).replace(/%2F/g,"/");this.encodedPath=es(this.encodedPath);let L=new Set;this.encodedSearch=[...this.url.searchParams].filter(([S])=>{if(!S)return!1;if(this.service==="s3"){if(L.has(S))return!1;L.add(S)}return!0}).map((S)=>S.map((Z)=>es(encodeURIComponent(Z)))).sort(([S,Z],[H,ge])=>S<H?-1:S>H?1:Z<ge?-1:Z>ge?1:0).map((S)=>S.join("=")).join("&")}async sign(){if(this.signQuery){if(this.url.searchParams.set("X-Amz-Signature",await this.signature()),this.sessionToken&&this.appendSessionToken)this.url.searchParams.set("X-Amz-Security-Token",this.sessionToken)}else this.headers.set("Authorization",await this.authHeader());return{method:this.method,url:this.url,headers:this.headers,body:this.body}}async authHeader(){return["AWS4-HMAC-SHA256 Credential="+this.accessKeyId+"/"+this.credentialString,"SignedHeaders="+this.signedHeaders,"Signature="+await this.signature()].join(", ")}async signature(){let e=this.datetime.slice(0,8),t=[this.secretAccessKey,e,this.region,this.service].join(),n=this.cache.get(t);if(!n){let a=await _t("AWS4"+this.secretAccessKey,e),i=await _t(a,this.region),r=await _t(i,this.service);n=await _t(r,"aws4_request"),this.cache.set(t,n)}return Wn(await _t(n,await this.stringToSign()))}async stringToSign(){return["AWS4-HMAC-SHA256",this.datetime,this.credentialString,Wn(await qo(await this.canonicalString()))].join(`
3
3
  `)}async canonicalString(){return[this.method.toUpperCase(),this.encodedPath,this.encodedSearch,this.canonicalHeaders+`
4
4
  `,this.signedHeaders,await this.hexBodyHash()].join(`
5
- `)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256")||(this.service==="s3"&&this.signQuery?"UNSIGNED-PAYLOAD":null);if(e==null){if(this.body&&typeof this.body!=="string"&&!("byteLength"in this.body))throw Error("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=On(await No(this.body||""))}return e}}async function pt(e,t){let n=await crypto.subtle.importKey("raw",typeof e==="string"?Cn.encode(e):e,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return crypto.subtle.sign("HMAC",n,Cn.encode(t))}async function No(e){return crypto.subtle.digest("SHA-256",typeof e==="string"?Cn.encode(e):e)}function On(e){let t=new Uint8Array(e),n="";for(let a=0;a<t.length;a++){let i=t[a];n+=Ao[i>>>4&15],n+=Ao[i&15]}return n}function Do(e){return e.replace(/[!'()*]/g,(t)=>"%"+t.charCodeAt(0).toString(16).toUpperCase())}function hg(e,t){let{hostname:n,pathname:a}=e;if(n.endsWith(".on.aws")){let s=n.match(/^[^.]{1,63}\.lambda-url\.([^.]{1,63})\.on\.aws$/);return s!=null?["lambda",s[1]||""]:["",""]}if(n.endsWith(".r2.cloudflarestorage.com"))return["s3","auto"];if(n.endsWith(".backblazeb2.com")){let s=n.match(/^(?:[^.]{1,63}\.)?s3\.([^.]{1,63})\.backblazeb2\.com$/);return s!=null?["s3",s[1]||""]:["",""]}let i=n.replace("dualstack.","").match(/([^.]{1,63})\.(?:([^.]{0,63})\.)?amazonaws\.com(?:\.cn)?$/),r=i&&i[1]||"",o=i&&i[2];if(o==="us-gov")o="us-gov-west-1";else if(o==="s3"||o==="s3-accelerate")o="us-east-1",r="s3";else if(r==="iot")if(n.startsWith("iot."))r="execute-api";else if(n.startsWith("data.jobs.iot."))r="iot-jobs-data";else r=a==="/mqtt"?"iotdevicegateway":"iotdata";else if(r==="autoscaling"){let s=(t.get("X-Amz-Target")||"").split(".")[0];if(s==="AnyScaleFrontendService")r="application-autoscaling";else if(s==="AnyScaleScalingPlannerFrontendService")r="autoscaling-plans"}else if(o==null&&r.startsWith("s3-"))o=r.slice(3).replace(/^fips-|^external-1/,""),r="s3";else if(r.endsWith("-fips"))r=r.slice(0,-5);else if(o&&/-\d$/.test(r)&&!/-\d$/.test(o))[r,o]=[o,r];return[vg[r]||r,o||""]}function Nn(e,t){return{adapterType:e,accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,region:t.region,bucket:t.bucket,endpoint:t.endpoint,accountId:t.accountId}}function Us(e){return{adapterType:e.adapterType,bucket:e.bucket,region:e.region,endpoint:e.endpoint,accountId:e.accountId}}function yg(e){if(!e||e.enabled!==!0)return;if(e.type==="s3_access_keys"&&e.s3AccessSettings)return Nn("s3",e.s3AccessSettings);if(e.type==="r2_access_keys"&&e.r2AccessSettings)return Nn("r2",e.r2AccessSettings);if(e.type==="azure_access_keys"&&e.azureAccessSettings)return Nn("azure",e.azureAccessSettings);return}function Es(e){return yg(e?.enterpriseTelemetry?.promptUploading)}function bg(e,t){let n=Es(e);if(!n)return;return{version:1,storage:Us(n),userDistinctId:t}}function $g(e,t,n){let a=Es(t);if(!a){gi.delete(e);return}return gi.set(e,a),{version:1,storage:Us(a),userDistinctId:n}}function _g(e){gi.delete(e)}function Ps(e,t,n){let a=`${t}/${n}`;return{async write(i,r){let o=await e.fetch(`${a}/${i}`,{method:"PUT",body:r,headers:{"Content-Type":"application/json; charset=utf-8"}});if(!o.ok)throw Error(`Failed to write ${i}: ${o.status}`)}}}function kg(e){let{bucket:t,accessKeyId:n,secretAccessKey:a}=e;if(!t||!n||!a)return;let i=e.region||"us-east-1",r=e.endpoint||`https://s3.${i}.amazonaws.com`;return Ps(new Yn({region:i,accessKeyId:n,secretAccessKey:a}),r,t)}function wg(e){let{accountId:t,endpoint:n,bucket:a,accessKeyId:i,secretAccessKey:r}=e;if(!n&&!t||!a||!i||!r)return;return Ps(new Yn({accessKeyId:i,secretAccessKey:r}),e.endpoint??`https://${t}.r2.cloudflarestorage.com`,a)}function Sg(e,t,n,a,i){let r=i["Content-Length"]||"",o=i["Content-Type"]||"",s=Object.entries(i).filter(([v])=>v.toLowerCase().startsWith("x-ms-")).sort(([v],[f])=>v.toLowerCase().localeCompare(f.toLowerCase())).map(([v,f])=>`${v.toLowerCase()}:${f}`).join(`
5
+ `)}async hexBodyHash(){let e=this.headers.get("X-Amz-Content-Sha256")||(this.service==="s3"&&this.signQuery?"UNSIGNED-PAYLOAD":null);if(e==null){if(this.body&&typeof this.body!=="string"&&!("byteLength"in this.body))throw Error("body must be a string, ArrayBuffer or ArrayBufferView, unless you include the X-Amz-Content-Sha256 header");e=Wn(await qo(this.body||""))}return e}}async function _t(e,t){let n=await crypto.subtle.importKey("raw",typeof e==="string"?qn.encode(e):e,{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign"]);return crypto.subtle.sign("HMAC",n,qn.encode(t))}async function qo(e){return crypto.subtle.digest("SHA-256",typeof e==="string"?qn.encode(e):e)}function Wn(e){let t=new Uint8Array(e),n="";for(let a=0;a<t.length;a++){let i=t[a];n+=Qo[i>>>4&15],n+=Qo[i&15]}return n}function es(e){return e.replace(/[!'()*]/g,(t)=>"%"+t.charCodeAt(0).toString(16).toUpperCase())}function Qg(e,t){let{hostname:n,pathname:a}=e;if(n.endsWith(".on.aws")){let s=n.match(/^[^.]{1,63}\.lambda-url\.([^.]{1,63})\.on\.aws$/);return s!=null?["lambda",s[1]||""]:["",""]}if(n.endsWith(".r2.cloudflarestorage.com"))return["s3","auto"];if(n.endsWith(".backblazeb2.com")){let s=n.match(/^(?:[^.]{1,63}\.)?s3\.([^.]{1,63})\.backblazeb2\.com$/);return s!=null?["s3",s[1]||""]:["",""]}let i=n.replace("dualstack.","").match(/([^.]{1,63})\.(?:([^.]{0,63})\.)?amazonaws\.com(?:\.cn)?$/),r=i&&i[1]||"",o=i&&i[2];if(o==="us-gov")o="us-gov-west-1";else if(o==="s3"||o==="s3-accelerate")o="us-east-1",r="s3";else if(r==="iot")if(n.startsWith("iot."))r="execute-api";else if(n.startsWith("data.jobs.iot."))r="iot-jobs-data";else r=a==="/mqtt"?"iotdevicegateway":"iotdata";else if(r==="autoscaling"){let s=(t.get("X-Amz-Target")||"").split(".")[0];if(s==="AnyScaleFrontendService")r="application-autoscaling";else if(s==="AnyScaleScalingPlannerFrontendService")r="autoscaling-plans"}else if(o==null&&r.startsWith("s3-"))o=r.slice(3).replace(/^fips-|^external-1/,""),r="s3";else if(r.endsWith("-fips"))r=r.slice(0,-5);else if(o&&/-\d$/.test(r)&&!/-\d$/.test(o))[r,o]=[o,r];return[Yg[r]||r,o||""]}function Bn(e,t){return{adapterType:e,accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,region:t.region,bucket:t.bucket,endpoint:t.endpoint,accountId:t.accountId}}function Bs(e){return{adapterType:e.adapterType,bucket:e.bucket,region:e.region,endpoint:e.endpoint,accountId:e.accountId}}function eh(e){if(!e||e.enabled!==!0)return;if(e.type==="s3_access_keys"&&e.s3AccessSettings)return Bn("s3",e.s3AccessSettings);if(e.type==="r2_access_keys"&&e.r2AccessSettings)return Bn("r2",e.r2AccessSettings);if(e.type==="azure_access_keys"&&e.azureAccessSettings)return Bn("azure",e.azureAccessSettings);return}function Hs(e){return eh(e?.enterpriseTelemetry?.promptUploading)}function th(e,t){let n=Hs(e);if(!n)return;return{version:1,storage:Bs(n),userDistinctId:t}}function ih(e,t,n){let a=Hs(t);if(!a){xi.delete(e);return}return xi.set(e,a),{version:1,storage:Bs(a),userDistinctId:n}}function nh(e){xi.delete(e)}function Xs(e,t,n){let a=`${t}/${n}`;return{async write(i,r){let o=await e.fetch(`${a}/${i}`,{method:"PUT",body:r,headers:{"Content-Type":"application/json; charset=utf-8"}});if(!o.ok)throw Error(`Failed to write ${i}: ${o.status}`)}}}function rh(e){let{bucket:t,accessKeyId:n,secretAccessKey:a}=e;if(!t||!n||!a)return;let i=e.region||"us-east-1",r=e.endpoint||`https://s3.${i}.amazonaws.com`;return Xs(new cr({region:i,accessKeyId:n,secretAccessKey:a}),r,t)}function ah(e){let{accountId:t,endpoint:n,bucket:a,accessKeyId:i,secretAccessKey:r}=e;if(!n&&!t||!a||!i||!r)return;return Xs(new cr({accessKeyId:i,secretAccessKey:r}),e.endpoint??`https://${t}.r2.cloudflarestorage.com`,a)}function oh(e,t,n,a,i){let r=i["Content-Length"]||"",o=i["Content-Type"]||"",s=Object.entries(i).filter(([v])=>v.toLowerCase().startsWith("x-ms-")).sort(([v],[f])=>v.toLowerCase().localeCompare(f.toLowerCase())).map(([v,f])=>`${v.toLowerCase()}:${f}`).join(`
6
6
  `),l=`/${e}${a}`,d=[n,"","",r,"",o,"","","","","","",s,l].join(`
7
- `),c=Buffer.from(t,"base64"),p=fg("sha256",c).update(d,"utf8").digest("base64");return`SharedKey ${e}:${p}`}function Ig(e){let{accessKeyId:t,secretAccessKey:n,bucket:a}=e;if(!t||!n||!a)return;let i=e.endpoint||`https://${t}.blob.core.windows.net`;return{async write(r,o){let s=`/${a}/${r}`,l=new Date().toUTCString(),d=Buffer.from(o,"utf8"),c={"x-ms-date":l,"x-ms-version":"2024-11-04","x-ms-blob-type":"BlockBlob","Content-Type":"application/json; charset=utf-8","Content-Length":d.byteLength.toString()};c.Authorization=Sg(t,n,"PUT",s,c);let p=await fetch(`${i}${s}`,{method:"PUT",body:d,headers:c});if(!p.ok){let v=await p.text().catch(()=>"");throw Error(`Failed to write ${r}: ${p.status} ${v}`.trim())}}}}function xg(e){if(e.adapterType==="s3")return kg(e);if(e.adapterType==="r2")return wg(e);if(e.adapterType==="azure")return Ig(e);return}function Zo(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ts(e){let t=e?.metadata?.[zs];if(!Zo(t))return;let n=t.storage;if(!Zo(n))return;let a=n.adapterType;if(a!=="s3"&&a!=="r2"&&a!=="azure")return;if(typeof n.bucket!=="string")return;return{version:1,storage:{adapterType:a,bucket:n.bucket,region:typeof n.region==="string"?n.region:void 0,endpoint:typeof n.endpoint==="string"?n.endpoint:void 0,accountId:typeof n.accountId==="string"?n.accountId:void 0},keyPrefix:typeof t.keyPrefix==="string"?t.keyPrefix:void 0,userDistinctId:typeof t.userDistinctId==="string"?t.userDistinctId:void 0}}function zg(e,t,n){return["sessions",n.userDistinctId?.trim()||"unknown",e,t?.endsWith("messages.json")?"messages.json":pg(t)].filter((a)=>Boolean(a?.trim())).join("/")}function Ug(){let e=new Map;return{async uploadMessagesFile({sessionId:t,path:n,contents:a,row:i}){let r=Ts(i);if(!r)return;let o=gi.get(t);if(!o)return;let s=JSON.stringify(o),l=e.get(s);if(!l){if(l=xg(o),!l)return;e.set(s,l)}await l.write(zg(t,n,r),a)}}}function Co(e,t,n){return{id:`remote-config:${e}:${n}:${t.name}`,name:t.name,kind:e,contents:t.contents,alwaysEnabled:t.alwaysEnabled}}function Ro(e){let t="",n=!1;for(let a of e.trim().toLowerCase()){let i=a.charCodeAt(0);if(i>=97&&i<=122||i>=48&&i<=57||a==="."||a==="_"||a==="-"){if(n&&t&&t[t.length-1]!=="-")t+="-";n=!1,t+=a}else n=!0;if(t.length>=80)break}while(t.endsWith("-"))t=t.slice(0,-1);while(t.startsWith("-"))t=t.slice(1);return t||"item"}function Pg(e){let t=e?.globalRules?.map((a,i)=>Co("rule",a,`${i}`))??[],n=e?.globalWorkflows?.map((a,i)=>Co("workflow",a,`${i}`))??[];return[...t,...n]}function Tg(e){return[...Pg(e.remoteConfig),...e.managedInstructions??[]]}function jg(e){return e.map((t)=>{let n=`## ${t.name}`,a=t.alwaysEnabled?`_Always enabled_
7
+ `),c=Buffer.from(t,"base64"),p=Xg("sha256",c).update(d,"utf8").digest("base64");return`SharedKey ${e}:${p}`}function sh(e){let{accessKeyId:t,secretAccessKey:n,bucket:a}=e;if(!t||!n||!a)return;let i=e.endpoint||`https://${t}.blob.core.windows.net`;return{async write(r,o){let s=`/${a}/${r}`,l=new Date().toUTCString(),d=Buffer.from(o,"utf8"),c={"x-ms-date":l,"x-ms-version":"2024-11-04","x-ms-blob-type":"BlockBlob","Content-Type":"application/json; charset=utf-8","Content-Length":d.byteLength.toString()};c.Authorization=oh(t,n,"PUT",s,c);let p=await fetch(`${i}${s}`,{method:"PUT",body:d,headers:c});if(!p.ok){let v=await p.text().catch(()=>"");throw Error(`Failed to write ${r}: ${p.status} ${v}`.trim())}}}}function uh(e){if(e.adapterType==="s3")return rh(e);if(e.adapterType==="r2")return ah(e);if(e.adapterType==="azure")return sh(e);return}function ts(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Vs(e){let t=e?.metadata?.[Ws];if(!ts(t))return;let n=t.storage;if(!ts(n))return;let a=n.adapterType;if(a!=="s3"&&a!=="r2"&&a!=="azure")return;if(typeof n.bucket!=="string")return;return{version:1,storage:{adapterType:a,bucket:n.bucket,region:typeof n.region==="string"?n.region:void 0,endpoint:typeof n.endpoint==="string"?n.endpoint:void 0,accountId:typeof n.accountId==="string"?n.accountId:void 0},keyPrefix:typeof t.keyPrefix==="string"?t.keyPrefix:void 0,userDistinctId:typeof t.userDistinctId==="string"?t.userDistinctId:void 0}}function lh(e,t,n){return["sessions",n.userDistinctId?.trim()||"unknown",e,t?.endsWith("messages.json")?"messages.json":Vg(t)].filter((a)=>Boolean(a?.trim())).join("/")}function dh(){let e=new Map;return{async uploadMessagesFile({sessionId:t,path:n,contents:a,row:i}){let r=Vs(i);if(!r)return;let o=xi.get(t);if(!o)return;let s=JSON.stringify(o),l=e.get(s);if(!l){if(l=uh(o),!l)return;e.set(s,l)}await l.write(lh(t,n,r),a)}}}function is(e,t,n){return{id:`remote-config:${e}:${n}:${t.name}`,name:t.name,kind:e,contents:t.contents,alwaysEnabled:t.alwaysEnabled}}function ns(e){let t="",n=!1;for(let a of e.trim().toLowerCase()){let i=a.charCodeAt(0);if(i>=97&&i<=122||i>=48&&i<=57||a==="."||a==="_"||a==="-"){if(n&&t&&t[t.length-1]!=="-")t+="-";n=!1,t+=a}else n=!0;if(t.length>=80)break}while(t.endsWith("-"))t=t.slice(0,-1);while(t.startsWith("-"))t=t.slice(1);return t||"item"}function mh(e){let t=e?.globalRules?.map((a,i)=>is("rule",a,`${i}`))??[],n=e?.globalWorkflows?.map((a,i)=>is("workflow",a,`${i}`))??[];return[...t,...n]}function fh(e){return[...mh(e.remoteConfig),...e.managedInstructions??[]]}function ph(e){return e.map((t)=>{let n=`## ${t.name}`,a=t.alwaysEnabled?`_Always enabled_
8
8
  `:"";return`${n}
9
9
 
10
10
  ${a}${t.contents.trim()}`}).join(`
11
11
 
12
- `)}function An(e,t){return e.filter((n)=>n.kind===t)}class js{async materialize(e){let t=Tg(e.bundle),n=An(t,"rule"),a=An(t,"workflow"),i=An(t,"skill");await e.artifactStore.removeChildren(e.paths.workflowsPath),await e.artifactStore.removeChildren(e.paths.skillsPath);let r=[];if(n.length>0)await e.artifactStore.writeText(e.paths.rulesFilePath,jg(n)),r.push(...n.map((o)=>({kind:o.kind,filePath:e.paths.rulesFilePath,id:o.id,name:o.name})));else await e.artifactStore.remove(e.paths.rulesFilePath);for(let o of a){let s=`${e.paths.workflowsPath}/${Ro(o.name.replace(/\.(md|markdown|txt)$/i,""))}.md`;await e.artifactStore.writeText(s,o.contents),r.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}for(let o of i){let s=`${e.paths.skillsPath}/${Ro(o.name)}/SKILL.md`;await e.artifactStore.writeText(s,o.contents),r.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}return await e.artifactStore.writeText(e.paths.manifestPath,JSON.stringify({source:e.bundle.source,version:e.bundle.version,files:r},null,2)),{paths:e.paths,rulesFilePath:n.length>0?e.paths.rulesFilePath:void 0,files:r}}}function Ng(e){let t=e.pluginName??Og,n=Be.join(e.workspacePath,".cline",t);return{pluginName:t,pluginPath:n,workflowsPath:Be.join(n,"workflows"),skillsPath:Be.join(n,"skills"),bundleCachePath:Be.join(n,"cache","bundle.json"),manifestPath:Be.join(n,"managed.json"),rulesFilePath:Be.join(n,"rules.md")}}function Ag(e){return{workflowsDirectories:[e.workflowsPath],skillsDirectories:[e.skillsPath]}}function Dg(e){if(!e)return;return{enabled:e.openTelemetryEnabled??!1,metricsExporter:e.openTelemetryMetricsExporter,logsExporter:e.openTelemetryLogsExporter,otlpProtocol:e.openTelemetryOtlpProtocol,otlpEndpoint:e.openTelemetryOtlpEndpoint,otlpHeaders:e.openTelemetryOtlpHeaders,otlpMetricsProtocol:e.openTelemetryOtlpMetricsProtocol,otlpMetricsEndpoint:e.openTelemetryOtlpMetricsEndpoint,otlpMetricsHeaders:e.openTelemetryOtlpMetricsHeaders,otlpLogsProtocol:e.openTelemetryOtlpLogsProtocol,otlpLogsEndpoint:e.openTelemetryOtlpLogsEndpoint,otlpLogsHeaders:e.openTelemetryOtlpLogsHeaders,metricExportInterval:e.openTelemetryMetricExportInterval,otlpInsecure:e.openTelemetryOtlpInsecure,logBatchSize:e.openTelemetryLogBatchSize,logBatchTimeout:e.openTelemetryLogBatchTimeout,logMaxQueueSize:e.openTelemetryLogMaxQueueSize}}function Os(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function ke(e,t){let n=e[t];return typeof n==="string"?n:void 0}function Mo(e,t){let n=e[t];return typeof n==="boolean"?n:void 0}function ui(e,t){let n=e[t];return typeof n==="number"&&Number.isFinite(n)?n:void 0}function Dn(e,t){let n=e[t];if(!Os(n))return;let a=Object.entries(n).filter((i)=>typeof i[1]==="string");return a.length>0?Object.fromEntries(a):void 0}function Zg(e){if(!Os(e))return;let t={enabled:Mo(e,"enabled"),metricsExporter:ke(e,"metricsExporter"),logsExporter:ke(e,"logsExporter"),otlpProtocol:ke(e,"otlpProtocol"),otlpEndpoint:ke(e,"otlpEndpoint"),otlpHeaders:Dn(e,"otlpHeaders"),otlpMetricsProtocol:ke(e,"otlpMetricsProtocol"),otlpMetricsEndpoint:ke(e,"otlpMetricsEndpoint"),otlpMetricsHeaders:Dn(e,"otlpMetricsHeaders"),otlpLogsProtocol:ke(e,"otlpLogsProtocol"),otlpLogsEndpoint:ke(e,"otlpLogsEndpoint"),otlpLogsHeaders:Dn(e,"otlpLogsHeaders"),metricExportInterval:ui(e,"metricExportInterval"),otlpInsecure:Mo(e,"otlpInsecure"),logBatchSize:ui(e,"logBatchSize"),logBatchTimeout:ui(e,"logBatchTimeout"),logMaxQueueSize:ui(e,"logMaxQueueSize")};return Object.values(t).some((n)=>n!==void 0)?t:void 0}class Ns{name="remote-config";resolveTelemetry(e,t){return{...Dg(e.remoteConfig),...Zg(e.telemetry)}}}function As(e){return e?.claims}function Ds(e,t){if(!e)return[];if(t.claimsMapper)return t.claimsMapper.mapClaimsToRoles(e);return e.roles??[]}function Cg(e,t){return{...e,metadata:{...e.metadata??{},paths:t}}}class Zs{options;constructor(e){this.options=e}async sync(e){let t=await this.options.controlPlane.fetchBundle({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger});if(!t)throw Error("Remote config control plane returned no bundle");await this.options.bundleStore.write(t);let n=await this.options.materializer.materialize({bundle:t,paths:e.paths,artifactStore:this.options.artifactStore}),a=this.options.telemetryAdapter?await this.options.telemetryAdapter.resolveTelemetry(t,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger}):void 0,i=As(t),r=Ds(i,this.options);return{bundle:t,materialized:n,telemetry:a,roles:r,claims:i}}}function Rg(e){let t=e?.name??"remote-config";return{name:t,manifest:{capabilities:["providers"]},async setup(n,a){n.registerProvider?.({name:t,description:"Remote-config managed runtime integration"}),await e?.setup?.(n,a)}}}async function Mg(e){let t=Ng({workspacePath:e.workspacePath,pluginName:e.pluginName}),n=e.bundleStore??new Ss(t.bundleCachePath),a=e.artifactStore??new Is,i=e.materializer??new js,r=e.telemetryAdapter??new Ns,o,s,l=[],d,c=!1,p=!1;if(e.controlPlane){let f=new Zs({controlPlane:e.controlPlane,bundleStore:n,artifactStore:a,materializer:i,telemetryAdapter:r,claimsMapper:e.claimsMapper,logger:e.logger});try{let y=await f.sync({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,paths:t,signal:e.signal,now:e.now});o=y.bundle,s=y.telemetry,l=y.roles,d=y.claims,p=!0}catch(y){if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o)throw y}}else if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o&&e.requireBundle)throw Error("Remote config runtime preparation requires a bundle");if(o){let f=Cg(o,t);if(await n.write(f),!p)await i.materialize({bundle:f,paths:t,artifactStore:a});d??=As(f),l=l.length>0?l:Ds(d,e),s??=await r.resolveTelemetry(f,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:e.logger}),o=f}let v=Ag(t);return{pluginName:t.pluginName,pluginDefinition:Rg({name:t.pluginName}),paths:t,bundle:o,telemetry:s,roles:l,claims:d,usedCachedBundle:c,workflowsDirectories:v.workflowsDirectories,skillsDirectories:v.skillsDirectories}}function m(e,t,n){function a(s,l){if(!s._zod)Object.defineProperty(s,"_zod",{value:{def:l,constr:o,traits:new Set},enumerable:!1});if(s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,l);let d=o.prototype,c=Object.keys(d);for(let p=0;p<c.length;p++){let v=c[p];if(!(v in s))s[v]=d[v].bind(s)}}let i=n?.Parent??Object;class r extends i{}Object.defineProperty(r,"name",{value:e});function o(s){var l;let d=n?.Parent?new r:this;a(d,s),(l=d._zod).deferred??(l.deferred=[]);for(let c of d._zod.deferred)c();return d}return Object.defineProperty(o,"init",{value:a}),Object.defineProperty(o,Symbol.hasInstance,{value:(s)=>{if(n?.Parent&&s instanceof n.Parent)return!0;return s?._zod?.traits?.has(e)}}),Object.defineProperty(o,"name",{value:e}),o}function J(e){if(e)Object.assign(bt,e);return bt}function Lg(e){return e}function Fg(e){return e}function Jg(e){}function Kg(e){throw Error("Unexpected value in exhaustive check")}function Gg(e){}function Qn(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,a])=>t.indexOf(+n)===-1).map(([n,a])=>a)}function g(e,t="|"){return e.map((n)=>_(n)).join(t)}function hi(e,t){if(typeof t==="bigint")return t.toString();return t}function xt(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error("cached value already set")}}}function Re(e){return e===null||e===void 0}function xi(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function Ls(e,t){let n=e/t,a=Math.round(n),i=Number.EPSILON*Math.max(Math.abs(n),1);if(Math.abs(n-a)<i)return 0;return n-a}function E(e,t,n){let a=void 0;Object.defineProperty(e,t,{get(){if(a===Fo)return;if(a===void 0)a=Fo,a=n();return a},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function Wg(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Ue(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function ye(...e){let t={};for(let n of e){let a=Object.getOwnPropertyDescriptors(n);Object.assign(t,a)}return Object.defineProperties({},t)}function Hg(e){return ye(e._zod.def)}function Bg(e,t){if(!t)return e;return t.reduce((n,a)=>n?.[a],e)}function Xg(e){let t=Object.keys(e),n=t.map((a)=>e[a]);return Promise.all(n).then((a)=>{let i={};for(let r=0;r<t.length;r++)i[t[r]]=a[r];return i})}function Vg(e=10){let t="";for(let n=0;n<e;n++)t+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return t}function Rn(e){return JSON.stringify(e)}function Fs(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}function Qe(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Ae(e){if(Qe(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if(Qe(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function Ks(e){if(Ae(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}function Yg(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}function ge(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ae(e,t,n){let a=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)a._zod.parent=e;return a}function h(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function qg(e){let t;return new Proxy({},{get(n,a,i){return t??(t=e()),Reflect.get(t,a,i)},set(n,a,i,r){return t??(t=e()),Reflect.set(t,a,i,r)},has(n,a){return t??(t=e()),Reflect.has(t,a)},deleteProperty(n,a){return t??(t=e()),Reflect.deleteProperty(t,a)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,a){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,a)},defineProperty(n,a,i){return t??(t=e()),Reflect.defineProperty(t,a,i)}})}function _(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function Ws(e){return Object.keys(e).filter((t)=>{return e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional"})}function eh(e,t){let n=e._zod.def,a=n.checks;if(a&&a.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=ye(e._zod.def,{get shape(){let r={};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;r[o]=n.shape[o]}return Ue(this,"shape",r),r},checks:[]});return ae(e,i)}function th(e,t){let n=e._zod.def,a=n.checks;if(a&&a.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=ye(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;delete r[o]}return Ue(this,"shape",r),r},checks:[]});return ae(e,i)}function ih(e,t){if(!Ae(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let r in t)if(Object.getOwnPropertyDescriptor(i,r)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let a=ye(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Ue(this,"shape",i),i}});return ae(e,a)}function nh(e,t){if(!Ae(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=ye(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Ue(this,"shape",a),a}});return ae(e,n)}function rh(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=ye(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t._zod.def.shape};return Ue(this,"shape",a),a},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return ae(e,n)}function ah(e,t,n){let a=t._zod.def.checks;if(a&&a.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let i=ye(t._zod.def,{get shape(){let r=t._zod.def.shape,o={...r};if(n)for(let s in n){if(!(s in r))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;o[s]=e?new e({type:"optional",innerType:r[s]}):r[s]}else for(let s in r)o[s]=e?new e({type:"optional",innerType:r[s]}):r[s];return Ue(this,"shape",o),o},checks:[]});return ae(t,i)}function oh(e,t,n){let a=ye(t._zod.def,{get shape(){let i=t._zod.def.shape,r={...i};if(n)for(let o in n){if(!(o in r))throw Error(`Unrecognized key: "${o}"`);if(!n[o])continue;r[o]=new e({type:"nonoptional",innerType:i[o]})}else for(let o in i)r[o]=new e({type:"nonoptional",innerType:i[o]});return Ue(this,"shape",r),r}});return ae(t,a)}function Ne(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Xs(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function ie(e,t){return t.map((n)=>{var a;return(a=n).path??(a.path=[]),n.path.unshift(e),n})}function ht(e){return typeof e==="string"?e:e?.message}function Q(e,t,n){let a=e.message?e.message:ht(e.inst?._zod.def?.error?.(e))??ht(t?.error?.(e))??ht(n.customError?.(e))??ht(n.localeError?.(e))??"Invalid input",{inst:i,continue:r,input:o,...s}=e;if(s.path??(s.path=[]),s.message=a,t?.reportInput)s.input=o;return s}function zi(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Ui(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function w(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function bi(...e){let[t,n,a]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:a};return{...t}}function sh(e){return Object.entries(e).filter(([t,n])=>{return Number.isNaN(Number.parseInt(t,10))}).map((t)=>t[1])}function Vs(e){let t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}function Ys(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function uh(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return Vs(t+n)}function lh(e){return Ys(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function dh(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let a=0;a<t.length;a+=2)n[a/2]=Number.parseInt(t.slice(a,a+2),16);return n}function ch(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class Qs{constructor(...e){}}function tr(e,t=(n)=>n.message){let n={},a=[];for(let i of e.issues)if(i.path.length>0)n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i));else a.push(t(i));return{formErrors:a,fieldErrors:n}}function ir(e,t=(n)=>n.message){let n={_errors:[]},a=(i,r=[])=>{for(let o of i.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map((s)=>a({issues:s},[...r,...o.path]));else if(o.code==="invalid_key")a({issues:o.issues},[...r,...o.path]);else if(o.code==="invalid_element")a({issues:o.issues},[...r,...o.path]);else{let s=[...r,...o.path];if(s.length===0)n._errors.push(t(o));else{let l=n,d=0;while(d<s.length){let c=s[d];if(d!==s.length-1)l[c]=l[c]||{_errors:[]};else l[c]=l[c]||{_errors:[]},l[c]._errors.push(t(o));l=l[c],d++}}}};return a(e),n}function eu(e,t=(n)=>n.message){let n={errors:[]},a=(i,r=[])=>{var o,s;for(let l of i.issues)if(l.code==="invalid_union"&&l.errors.length)l.errors.map((d)=>a({issues:d},[...r,...l.path]));else if(l.code==="invalid_key")a({issues:l.issues},[...r,...l.path]);else if(l.code==="invalid_element")a({issues:l.issues},[...r,...l.path]);else{let d=[...r,...l.path];if(d.length===0){n.errors.push(t(l));continue}let c=n,p=0;while(p<d.length){let v=d[p],f=p===d.length-1;if(typeof v==="string")c.properties??(c.properties={}),(o=c.properties)[v]??(o[v]={errors:[]}),c=c.properties[v];else c.items??(c.items=[]),(s=c.items)[v]??(s[v]={errors:[]}),c=c.items[v];if(f)c.errors.push(t(l));p++}}};return a(e),n}function tu(e){let t=[],n=e.map((a)=>typeof a==="object"?a.key:a);for(let a of n)if(typeof a==="number")t.push(`[${a}]`);else if(typeof a==="symbol")t.push(`[${JSON.stringify(String(a))}]`);else if(/[^\w$]/.test(a))t.push(`[${JSON.stringify(a)}]`);else{if(t.length)t.push(".");t.push(a)}return t.join("")}function iu(e){let t=[],n=[...e.issues].sort((a,i)=>(a.path??[]).length-(i.path??[]).length);for(let a of n)if(t.push(`✖ ${a.message}`),a.path?.length)t.push(` → at ${tu(a.path)}`);return t.join(`
13
- `)}function vu(){return new RegExp(Uh,"u")}function xu(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function zu(e){return new RegExp(`^${xu(e)}$`)}function Uu(e){let t=xu({precision:e.precision}),n=["Z"];if(e.local)n.push("");if(e.offset)n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let a=`${t}(?:${n.join("|")})`;return new RegExp(`^${Su}T(?:${a})$`)}function Tt(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function jt(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}function Jo(e,t,n){if(e.issues.length)t.issues.push(...ie(n,e.issues))}class vr{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let t=e.split(`
12
+ `)}function Hn(e,t){return e.filter((n)=>n.kind===t)}class Ys{async materialize(e){let t=fh(e.bundle),n=Hn(t,"rule"),a=Hn(t,"workflow"),i=Hn(t,"skill");await e.artifactStore.removeChildren(e.paths.workflowsPath),await e.artifactStore.removeChildren(e.paths.skillsPath);let r=[];if(n.length>0)await e.artifactStore.writeText(e.paths.rulesFilePath,ph(n)),r.push(...n.map((o)=>({kind:o.kind,filePath:e.paths.rulesFilePath,id:o.id,name:o.name})));else await e.artifactStore.remove(e.paths.rulesFilePath);for(let o of a){let s=`${e.paths.workflowsPath}/${ns(o.name.replace(/\.(md|markdown|txt)$/i,""))}.md`;await e.artifactStore.writeText(s,o.contents),r.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}for(let o of i){let s=`${e.paths.skillsPath}/${ns(o.name)}/SKILL.md`;await e.artifactStore.writeText(s,o.contents),r.push({kind:o.kind,filePath:s,id:o.id,name:o.name})}return await e.artifactStore.writeText(e.paths.manifestPath,JSON.stringify({source:e.bundle.source,version:e.bundle.version,files:r},null,2)),{paths:e.paths,rulesFilePath:n.length>0?e.paths.rulesFilePath:void 0,files:r}}}function gh(e){let t=e.pluginName??vh,n=et.join(e.workspacePath,".cline",t);return{pluginName:t,pluginPath:n,workflowsPath:et.join(n,"workflows"),skillsPath:et.join(n,"skills"),bundleCachePath:et.join(n,"cache","bundle.json"),manifestPath:et.join(n,"managed.json"),rulesFilePath:et.join(n,"rules.md")}}function hh(e){return{workflowsDirectories:[e.workflowsPath],skillsDirectories:[e.skillsPath]}}function yh(e){if(!e)return;return{enabled:e.openTelemetryEnabled??!1,metricsExporter:e.openTelemetryMetricsExporter,logsExporter:e.openTelemetryLogsExporter,otlpProtocol:e.openTelemetryOtlpProtocol,otlpEndpoint:e.openTelemetryOtlpEndpoint,otlpHeaders:e.openTelemetryOtlpHeaders,otlpMetricsProtocol:e.openTelemetryOtlpMetricsProtocol,otlpMetricsEndpoint:e.openTelemetryOtlpMetricsEndpoint,otlpMetricsHeaders:e.openTelemetryOtlpMetricsHeaders,otlpLogsProtocol:e.openTelemetryOtlpLogsProtocol,otlpLogsEndpoint:e.openTelemetryOtlpLogsEndpoint,otlpLogsHeaders:e.openTelemetryOtlpLogsHeaders,metricExportInterval:e.openTelemetryMetricExportInterval,otlpInsecure:e.openTelemetryOtlpInsecure,logBatchSize:e.openTelemetryLogBatchSize,logBatchTimeout:e.openTelemetryLogBatchTimeout,logMaxQueueSize:e.openTelemetryLogMaxQueueSize}}function qs(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function xe(e,t){let n=e[t];return typeof n==="string"?n:void 0}function rs(e,t){let n=e[t];return typeof n==="boolean"?n:void 0}function yi(e,t){let n=e[t];return typeof n==="number"&&Number.isFinite(n)?n:void 0}function Xn(e,t){let n=e[t];if(!qs(n))return;let a=Object.entries(n).filter((i)=>typeof i[1]==="string");return a.length>0?Object.fromEntries(a):void 0}function bh(e){if(!qs(e))return;let t={enabled:rs(e,"enabled"),metricsExporter:xe(e,"metricsExporter"),logsExporter:xe(e,"logsExporter"),otlpProtocol:xe(e,"otlpProtocol"),otlpEndpoint:xe(e,"otlpEndpoint"),otlpHeaders:Xn(e,"otlpHeaders"),otlpMetricsProtocol:xe(e,"otlpMetricsProtocol"),otlpMetricsEndpoint:xe(e,"otlpMetricsEndpoint"),otlpMetricsHeaders:Xn(e,"otlpMetricsHeaders"),otlpLogsProtocol:xe(e,"otlpLogsProtocol"),otlpLogsEndpoint:xe(e,"otlpLogsEndpoint"),otlpLogsHeaders:Xn(e,"otlpLogsHeaders"),metricExportInterval:yi(e,"metricExportInterval"),otlpInsecure:rs(e,"otlpInsecure"),logBatchSize:yi(e,"logBatchSize"),logBatchTimeout:yi(e,"logBatchTimeout"),logMaxQueueSize:yi(e,"logMaxQueueSize")};return Object.values(t).some((n)=>n!==void 0)?t:void 0}class Qs{name="remote-config";resolveTelemetry(e,t){return{...yh(e.remoteConfig),...bh(e.telemetry)}}}function eu(e){return e?.claims}function tu(e,t){if(!e)return[];if(t.claimsMapper)return t.claimsMapper.mapClaimsToRoles(e);return e.roles??[]}function $h(e,t){return{...e,metadata:{...e.metadata??{},paths:t}}}class iu{options;constructor(e){this.options=e}async sync(e){let t=await this.options.controlPlane.fetchBundle({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger});if(!t)throw Error("Remote config control plane returned no bundle");await this.options.bundleStore.write(t);let n=await this.options.materializer.materialize({bundle:t,paths:e.paths,artifactStore:this.options.artifactStore}),a=this.options.telemetryAdapter?await this.options.telemetryAdapter.resolveTelemetry(t,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:this.options.logger}):void 0,i=eu(t),r=tu(i,this.options);return{bundle:t,materialized:n,telemetry:a,roles:r,claims:i}}}function _h(e){let t=e?.name??"remote-config";return{name:t,manifest:{capabilities:["providers"]},async setup(n,a){n.registerProvider?.({name:t,description:"Remote-config managed runtime integration"}),await e?.setup?.(n,a)}}}async function kh(e){let t=gh({workspacePath:e.workspacePath,pluginName:e.pluginName}),n=e.bundleStore??new Js(t.bundleCachePath),a=e.artifactStore??new Ks,i=e.materializer??new Ys,r=e.telemetryAdapter??new Qs,o,s,l=[],d,c=!1,p=!1;if(e.controlPlane){let f=new iu({controlPlane:e.controlPlane,bundleStore:n,artifactStore:a,materializer:i,telemetryAdapter:r,claimsMapper:e.claimsMapper,logger:e.logger});try{let y=await f.sync({workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,paths:t,signal:e.signal,now:e.now});o=y.bundle,s=y.telemetry,l=y.roles,d=y.claims,p=!0}catch(y){if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o)throw y}}else if(e.useCachedBundle!==!1)o=await n.read(),c=Boolean(o);if(!o&&e.requireBundle)throw Error("Remote config runtime preparation requires a bundle");if(o){let f=$h(o,t);if(await n.write(f),!p)await i.materialize({bundle:f,paths:t,artifactStore:a});d??=eu(f),l=l.length>0?l:tu(d,e),s??=await r.resolveTelemetry(f,{workspacePath:e.workspacePath,rootPath:e.rootPath,context:e.context,signal:e.signal,now:e.now,logger:e.logger}),o=f}let v=hh(t);return{pluginName:t.pluginName,pluginDefinition:_h({name:t.pluginName}),paths:t,bundle:o,telemetry:s,roles:l,claims:d,usedCachedBundle:c,workflowsDirectories:v.workflowsDirectories,skillsDirectories:v.skillsDirectories}}function m(e,t,n){function a(s,l){if(!s._zod)Object.defineProperty(s,"_zod",{value:{def:l,constr:o,traits:new Set},enumerable:!1});if(s._zod.traits.has(e))return;s._zod.traits.add(e),t(s,l);let d=o.prototype,c=Object.keys(d);for(let p=0;p<c.length;p++){let v=c[p];if(!(v in s))s[v]=d[v].bind(s)}}let i=n?.Parent??Object;class r extends i{}Object.defineProperty(r,"name",{value:e});function o(s){var l;let d=n?.Parent?new r:this;a(d,s),(l=d._zod).deferred??(l.deferred=[]);for(let c of d._zod.deferred)c();return d}return Object.defineProperty(o,"init",{value:a}),Object.defineProperty(o,Symbol.hasInstance,{value:(s)=>{if(n?.Parent&&s instanceof n.Parent)return!0;return s?._zod?.traits?.has(e)}}),Object.defineProperty(o,"name",{value:e}),o}function K(e){if(e)Object.assign(xt,e);return xt}function wh(e){return e}function Sh(e){return e}function Ih(e){}function xh(e){throw Error("Unexpected value in exhaustive check")}function zh(e){}function mr(e){let t=Object.values(e).filter((n)=>typeof n==="number");return Object.entries(e).filter(([n,a])=>t.indexOf(+n)===-1).map(([n,a])=>a)}function g(e,t="|"){return e.map((n)=>k(n)).join(t)}function zi(e,t){if(typeof t==="bigint")return t.toString();return t}function jt(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error("cached value already set")}}}function We(e){return e===null||e===void 0}function Zi(e){let t=e.startsWith("^")?1:0,n=e.endsWith("$")?e.length-1:e.length;return e.slice(t,n)}function ou(e,t){let n=e/t,a=Math.round(n),i=Number.EPSILON*Math.max(Math.abs(n),1);if(Math.abs(n-a)<i)return 0;return n-a}function E(e,t,n){let a=void 0;Object.defineProperty(e,t,{get(){if(a===os)return;if(a===void 0)a=os,a=n();return a},set(i){Object.defineProperty(e,t,{value:i})},configurable:!0})}function Uh(e){return Object.create(Object.getPrototypeOf(e),Object.getOwnPropertyDescriptors(e))}function Pe(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function we(...e){let t={};for(let n of e){let a=Object.getOwnPropertyDescriptors(n);Object.assign(t,a)}return Object.defineProperties({},t)}function Eh(e){return we(e._zod.def)}function Th(e,t){if(!t)return e;return t.reduce((n,a)=>n?.[a],e)}function Oh(e){let t=Object.keys(e),n=t.map((a)=>e[a]);return Promise.all(n).then((a)=>{let i={};for(let r=0;r<t.length;r++)i[t[r]]=a[r];return i})}function Ph(e=10){let t="";for(let n=0;n<e;n++)t+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return t}function Qn(e){return JSON.stringify(e)}function su(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,"").replace(/[\s_-]+/g,"-").replace(/^-+|-+$/g,"")}function rt(e){return typeof e==="object"&&e!==null&&!Array.isArray(e)}function Fe(e){if(rt(e)===!1)return!1;let t=e.constructor;if(t===void 0)return!0;if(typeof t!=="function")return!0;let n=t.prototype;if(rt(n)===!1)return!1;if(Object.prototype.hasOwnProperty.call(n,"isPrototypeOf")===!1)return!1;return!0}function lu(e){if(Fe(e))return{...e};if(Array.isArray(e))return[...e];if(e instanceof Map)return new Map(e);if(e instanceof Set)return new Set(e);return e}function jh(e){let t=0;for(let n in e)if(Object.prototype.hasOwnProperty.call(e,n))t++;return t}function _e(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function se(e,t,n){let a=new e._zod.constr(t??e._zod.def);if(!t||n?.parent)a._zod.parent=e;return a}function h(e){let t=e;if(!t)return{};if(typeof t==="string")return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}if(delete t.message,typeof t.error==="string")return{...t,error:()=>t.error};return t}function Ah(e){let t;return new Proxy({},{get(n,a,i){return t??(t=e()),Reflect.get(t,a,i)},set(n,a,i,r){return t??(t=e()),Reflect.set(t,a,i,r)},has(n,a){return t??(t=e()),Reflect.has(t,a)},deleteProperty(n,a){return t??(t=e()),Reflect.deleteProperty(t,a)},ownKeys(n){return t??(t=e()),Reflect.ownKeys(t)},getOwnPropertyDescriptor(n,a){return t??(t=e()),Reflect.getOwnPropertyDescriptor(t,a)},defineProperty(n,a,i){return t??(t=e()),Reflect.defineProperty(t,a,i)}})}function k(e){if(typeof e==="bigint")return e.toString()+"n";if(typeof e==="string")return`"${e}"`;return`${e}`}function cu(e){return Object.keys(e).filter((t)=>{return e[t]._zod.optin==="optional"&&e[t]._zod.optout==="optional"})}function Dh(e,t){let n=e._zod.def,a=n.checks;if(a&&a.length>0)throw Error(".pick() cannot be used on object schemas containing refinements");let i=we(e._zod.def,{get shape(){let r={};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;r[o]=n.shape[o]}return Pe(this,"shape",r),r},checks:[]});return se(e,i)}function Zh(e,t){let n=e._zod.def,a=n.checks;if(a&&a.length>0)throw Error(".omit() cannot be used on object schemas containing refinements");let i=we(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let o in t){if(!(o in n.shape))throw Error(`Unrecognized key: "${o}"`);if(!t[o])continue;delete r[o]}return Pe(this,"shape",r),r},checks:[]});return se(e,i)}function Ch(e,t){if(!Fe(t))throw Error("Invalid input to extend: expected a plain object");let n=e._zod.def.checks;if(n&&n.length>0){let i=e._zod.def.shape;for(let r in t)if(Object.getOwnPropertyDescriptor(i,r)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}let a=we(e._zod.def,{get shape(){let i={...e._zod.def.shape,...t};return Pe(this,"shape",i),i}});return se(e,a)}function Rh(e,t){if(!Fe(t))throw Error("Invalid input to safeExtend: expected a plain object");let n=we(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t};return Pe(this,"shape",a),a}});return se(e,n)}function Lh(e,t){if(e._zod.def.checks?.length)throw Error(".merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.");let n=we(e._zod.def,{get shape(){let a={...e._zod.def.shape,...t._zod.def.shape};return Pe(this,"shape",a),a},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]});return se(e,n)}function Mh(e,t,n){let a=t._zod.def.checks;if(a&&a.length>0)throw Error(".partial() cannot be used on object schemas containing refinements");let i=we(t._zod.def,{get shape(){let r=t._zod.def.shape,o={...r};if(n)for(let s in n){if(!(s in r))throw Error(`Unrecognized key: "${s}"`);if(!n[s])continue;o[s]=e?new e({type:"optional",innerType:r[s]}):r[s]}else for(let s in r)o[s]=e?new e({type:"optional",innerType:r[s]}):r[s];return Pe(this,"shape",o),o},checks:[]});return se(t,i)}function Fh(e,t,n){let a=we(t._zod.def,{get shape(){let i=t._zod.def.shape,r={...i};if(n)for(let o in n){if(!(o in r))throw Error(`Unrecognized key: "${o}"`);if(!n[o])continue;r[o]=new e({type:"nonoptional",innerType:i[o]})}else for(let o in i)r[o]=new e({type:"nonoptional",innerType:i[o]});return Pe(this,"shape",r),r}});return se(t,a)}function Me(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function pu(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function re(e,t){return t.map((n)=>{var a;return(a=n).path??(a.path=[]),n.path.unshift(e),n})}function St(e){return typeof e==="string"?e:e?.message}function Q(e,t,n){let a=e.message?e.message:St(e.inst?._zod.def?.error?.(e))??St(t?.error?.(e))??St(n.customError?.(e))??St(n.localeError?.(e))??"Invalid input",{inst:i,continue:r,input:o,...s}=e;if(s.path??(s.path=[]),s.message=a,t?.reportInput)s.input=o;return s}function Ci(e){if(e instanceof Set)return"set";if(e instanceof Map)return"map";if(e instanceof File)return"file";return"unknown"}function Ri(e){if(Array.isArray(e))return"array";if(typeof e==="string")return"string";return"unknown"}function w(e){let t=typeof e;switch(t){case"number":return Number.isNaN(e)?"nan":"number";case"object":{if(e===null)return"null";if(Array.isArray(e))return"array";let n=e;if(n&&Object.getPrototypeOf(n)!==Object.prototype&&"constructor"in n&&n.constructor)return n.constructor.name}}return t}function Ei(...e){let[t,n,a]=e;if(typeof t==="string")return{message:t,code:"custom",input:n,inst:a};return{...t}}function Jh(e){return Object.entries(e).filter(([t,n])=>{return Number.isNaN(Number.parseInt(t,10))}).map((t)=>t[1])}function vu(e){let t=atob(e),n=new Uint8Array(t.length);for(let a=0;a<t.length;a++)n[a]=t.charCodeAt(a);return n}function gu(e){let t="";for(let n=0;n<e.length;n++)t+=String.fromCharCode(e[n]);return btoa(t)}function Kh(e){let t=e.replace(/-/g,"+").replace(/_/g,"/"),n="=".repeat((4-t.length%4)%4);return vu(t+n)}function Gh(e){return gu(e).replace(/\+/g,"-").replace(/\//g,"_").replace(/=/g,"")}function Wh(e){let t=e.replace(/^0x/,"");if(t.length%2!==0)throw Error("Invalid hex string length");let n=new Uint8Array(t.length/2);for(let a=0;a<t.length;a+=2)n[a/2]=Number.parseInt(t.slice(a,a+2),16);return n}function Bh(e){return Array.from(e).map((t)=>t.toString(16).padStart(2,"0")).join("")}class hu{constructor(...e){}}function vr(e,t=(n)=>n.message){let n={},a=[];for(let i of e.issues)if(i.path.length>0)n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i));else a.push(t(i));return{formErrors:a,fieldErrors:n}}function gr(e,t=(n)=>n.message){let n={_errors:[]},a=(i,r=[])=>{for(let o of i.issues)if(o.code==="invalid_union"&&o.errors.length)o.errors.map((s)=>a({issues:s},[...r,...o.path]));else if(o.code==="invalid_key")a({issues:o.issues},[...r,...o.path]);else if(o.code==="invalid_element")a({issues:o.issues},[...r,...o.path]);else{let s=[...r,...o.path];if(s.length===0)n._errors.push(t(o));else{let l=n,d=0;while(d<s.length){let c=s[d];if(d!==s.length-1)l[c]=l[c]||{_errors:[]};else l[c]=l[c]||{_errors:[]},l[c]._errors.push(t(o));l=l[c],d++}}}};return a(e),n}function bu(e,t=(n)=>n.message){let n={errors:[]},a=(i,r=[])=>{var o,s;for(let l of i.issues)if(l.code==="invalid_union"&&l.errors.length)l.errors.map((d)=>a({issues:d},[...r,...l.path]));else if(l.code==="invalid_key")a({issues:l.issues},[...r,...l.path]);else if(l.code==="invalid_element")a({issues:l.issues},[...r,...l.path]);else{let d=[...r,...l.path];if(d.length===0){n.errors.push(t(l));continue}let c=n,p=0;while(p<d.length){let v=d[p],f=p===d.length-1;if(typeof v==="string")c.properties??(c.properties={}),(o=c.properties)[v]??(o[v]={errors:[]}),c=c.properties[v];else c.items??(c.items=[]),(s=c.items)[v]??(s[v]={errors:[]}),c=c.items[v];if(f)c.errors.push(t(l));p++}}};return a(e),n}function $u(e){let t=[],n=e.map((a)=>typeof a==="object"?a.key:a);for(let a of n)if(typeof a==="number")t.push(`[${a}]`);else if(typeof a==="symbol")t.push(`[${JSON.stringify(String(a))}]`);else if(/[^\w$]/.test(a))t.push(`[${JSON.stringify(a)}]`);else{if(t.length)t.push(".");t.push(a)}return t.join("")}function _u(e){let t=[],n=[...e.issues].sort((a,i)=>(a.path??[]).length-(i.path??[]).length);for(let a of n)if(t.push(`✖ ${a.message}`),a.path?.length)t.push(` → at ${$u(a.path)}`);return t.join(`
13
+ `)}function Nu(){return new RegExp(dy,"u")}function Gu(e){return typeof e.precision==="number"?e.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":e.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${e.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function Wu(e){return new RegExp(`^${Gu(e)}$`)}function Bu(e){let t=Gu({precision:e.precision}),n=["Z"];if(e.local)n.push("");if(e.offset)n.push("([+-](?:[01]\\d|2[0-3]):[0-5]\\d)");let a=`${t}(?:${n.join("|")})`;return new RegExp(`^${Ju}T(?:${a})$`)}function Ct(e,t){return new RegExp(`^[A-Za-z0-9+/]{${e}}${t}$`)}function Rt(e){return new RegExp(`^[A-Za-z0-9_-]{${e}}$`)}function ss(e,t,n){if(e.issues.length)t.issues.push(...re(n,e.issues))}class Er{constructor(e=[]){if(this.content=[],this.indent=0,this)this.args=e}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e==="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let t=e.split(`
14
14
  `).filter((i)=>i),n=Math.min(...t.map((i)=>i.length-i.trimStart().length)),a=t.map((i)=>i.slice(n)).map((i)=>" ".repeat(this.indent*2)+i);for(let i of a)this.content.push(i)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[""]).map((a)=>` ${a}`)];return new e(...t,n.join(`
15
- `))}}function gr(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}function Sl(e){if(!cr.test(e))return!1;let t=e.replace(/[-_]/g,(a)=>a==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return gr(n)}function zl(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[a]=n;if(!a)return!1;let i=JSON.parse(atob(a));if("typ"in i&&i?.typ!=="JWT")return!1;if(!i.alg)return!1;if(t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}function Ko(e,t,n){if(e.issues.length)t.issues.push(...ie(n,e.issues));t.value[n]=e.value}function $i(e,t,n,a,i,r){let o=n in a;if(e.issues.length){if(i&&r&&!o)return;t.issues.push(...ie(n,e.issues))}if(!o&&!i){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}if(e.value===void 0){if(o)t.value[n]=void 0}else t.value[n]=e.value}function Ll(e){let t=Object.keys(e.shape);for(let a of t)if(!e.shape?.[a]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${a}": expected a Zod schema`);let n=Ws(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Fl(e,t,n,a,i,r){let o=[],s=i.keySet,l=i.catchall._zod,d=l.def.type,c=l.optin==="optional",p=l.optout==="optional";for(let v in t){if(v==="__proto__")continue;if(s.has(v))continue;if(d==="never"){o.push(v);continue}let f=l.run({value:t[v],issues:[]},a);if(f instanceof Promise)e.push(f.then((y)=>$i(y,n,v,t,c,p)));else $i(f,n,v,t,c,p)}if(o.length)n.issues.push({code:"unrecognized_keys",keys:o,input:t,inst:r});if(!e.length)return n;return Promise.all(e).then(()=>{return n})}function Go(e,t,n,a){for(let r of e)if(r.issues.length===0)return t.value=r.value,t;let i=e.filter((r)=>!Ne(r));if(i.length===1)return t.value=i[0].value,i[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((r)=>r.issues.map((o)=>Q(o,a,J())))}),t}function Wo(e,t,n,a){let i=e.filter((r)=>r.issues.length===0);if(i.length===1)return t.value=i[0].value,t;if(i.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((r)=>r.issues.map((o)=>Q(o,a,J())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}function Fn(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Ae(e)&&Ae(t)){let n=Object.keys(t),a=Object.keys(e).filter((r)=>n.indexOf(r)!==-1),i={...e,...t};for(let r of a){let o=Fn(e[r],t[r]);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};i[r]=o.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let a=0;a<e.length;a++){let i=e[a],r=t[a],o=Fn(i,r);if(!o.valid)return{valid:!1,mergeErrorPath:[a,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function Ho(e,t,n){let a=new Map,i;for(let s of t.issues)if(s.code==="unrecognized_keys"){i??(i=s);for(let l of s.keys){if(!a.has(l))a.set(l,{});a.get(l).l=!0}}else e.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let l of s.keys){if(!a.has(l))a.set(l,{});a.get(l).r=!0}else e.issues.push(s);let r=[...a].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(r.length&&i)e.issues.push({...i,keys:r});if(Ne(e))return e;let o=Fn(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}function Bo(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function Xo(e,t,n){if(e.issues.length)t.issues.push(...ie(n,e.issues));t.value[n]=e.value}function Vo(e,t,n,a,i){for(let r=0;r<n.length;r++){let o=e[r],s=r<a.length;if(o.issues.length){if(!s&&r>=i){t.value.length=r;break}t.issues.push(...ie(r,o.issues))}t.value[r]=o.value}for(let r=t.value.length-1;r>=a.length;r--)if(n[r]._zod.optout==="optional"&&t.value[r]===void 0)t.value.length=r;else break;return t}function Yo(e,t,n,a,i,r,o){if(e.issues.length)if(yi.has(typeof a))n.issues.push(...ie(a,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:i,inst:r,issues:e.issues.map((s)=>Q(s,o,J()))});if(t.issues.length)if(yi.has(typeof a))n.issues.push(...ie(a,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:i,inst:r,key:a,issues:t.issues.map((s)=>Q(s,o,J()))});n.value.set(e.value,t.value)}function Qo(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}function qo(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}function es(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}function ts(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function li(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}function di(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let a=t.transform(e.value,e);if(a instanceof Promise)return a.then((i)=>ci(e,i,t.out,n));return ci(e,a,t.out,n)}else{let a=t.reverseTransform(e.value,e);if(a instanceof Promise)return a.then((i)=>ci(e,i,t.in,n));return ci(e,a,t.in,n)}}function ci(e,t,n,a){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},a)}function is(e){return e.value=Object.freeze(e.value),e}function ns(e,t,n,a){if(!e){let i={code:"custom",input:n,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};if(a._zod.def.params)i.params=a._zod.def.params;t.issues.push(bi(i))}}function Bh(){return{localeError:Hh()}}function Vh(){return{localeError:Xh()}}function rs(e,t,n,a){let i=Math.abs(e),r=i%10,o=i%100;if(o>=11&&o<=19)return a;if(r===1)return t;if(r>=2&&r<=4)return n;return a}function Qh(){return{localeError:Yh()}}function ey(){return{localeError:qh()}}function iy(){return{localeError:ty()}}function ry(){return{localeError:ny()}}function oy(){return{localeError:ay()}}function uy(){return{localeError:sy()}}function dy(){return{localeError:ly()}}function gd(){return{localeError:cy()}}function fy(){return{localeError:my()}}function vy(){return{localeError:py()}}function hy(){return{localeError:gy()}}function by(){return{localeError:yy()}}function _y(){return{localeError:$y()}}function wy(){return{localeError:ky()}}function Iy(){return{localeError:Sy()}}function zy(){return{localeError:xy()}}function Ey(){return{localeError:Uy()}}function as(e,t,n){return Math.abs(e)===1?t:n}function Xe(e){if(!e)return"";let t=["ա","ե","ը","ի","ո","ու","օ"],n=e[e.length-1];return e+(t.includes(n)?"ն":"ը")}function Ty(){return{localeError:Py()}}function Oy(){return{localeError:jy()}}function Ay(){return{localeError:Ny()}}function Zy(){return{localeError:Dy()}}function Ry(){return{localeError:Cy()}}function Ly(){return{localeError:My()}}function hd(){return{localeError:Fy()}}function Jy(){return hd()}function Gy(){return{localeError:Ky()}}function os(e){let t=Math.abs(e),n=t%10,a=t%100;if(a>=11&&a<=19||n===0)return"many";if(n===1)return"one";return"few"}function Hy(){return{localeError:Wy()}}function Xy(){return{localeError:By()}}function Yy(){return{localeError:Vy()}}function qy(){return{localeError:Qy()}}function tb(){return{localeError:eb()}}function nb(){return{localeError:ib()}}function ab(){return{localeError:rb()}}function sb(){return{localeError:ob()}}function lb(){return{localeError:ub()}}function cb(){return{localeError:db()}}function ss(e,t,n,a){let i=Math.abs(e),r=i%10,o=i%100;if(o>=11&&o<=19)return a;if(r===1)return t;if(r>=2&&r<=4)return n;return a}function fb(){return{localeError:mb()}}function vb(){return{localeError:pb()}}function hb(){return{localeError:gb()}}function bb(){return{localeError:yb()}}function _b(){return{localeError:$b()}}function wb(){return{localeError:kb()}}function yd(){return{localeError:Sb()}}function Ib(){return yd()}function zb(){return{localeError:xb()}}function Eb(){return{localeError:Ub()}}function Tb(){return{localeError:Pb()}}function Ob(){return{localeError:jb()}}function Ab(){return{localeError:Nb()}}function Zb(){return{localeError:Db()}}class Ir{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let a={...n,...this._map.get(e)};return Object.keys(a).length?a:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function xr(){return new Ir}function _d(e,t){return new e({type:"string",...h(t)})}function kd(e,t){return new e({type:"string",coerce:!0,...h(t)})}function zr(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...h(t)})}function _i(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...h(t)})}function Ur(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...h(t)})}function Er(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...h(t)})}function Pr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...h(t)})}function Tr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...h(t)})}function Pi(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...h(t)})}function jr(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...h(t)})}function Or(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...h(t)})}function Nr(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...h(t)})}function Ar(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...h(t)})}function Dr(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...h(t)})}function Zr(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...h(t)})}function Cr(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...h(t)})}function Rr(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...h(t)})}function Mr(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...h(t)})}function wd(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...h(t)})}function Lr(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...h(t)})}function Fr(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...h(t)})}function Jr(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...h(t)})}function Kr(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...h(t)})}function Gr(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...h(t)})}function Wr(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...h(t)})}function Id(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...h(t)})}function xd(e,t){return new e({type:"string",format:"date",check:"string_format",...h(t)})}function zd(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...h(t)})}function Ud(e,t){return new e({type:"string",format:"duration",check:"string_format",...h(t)})}function Ed(e,t){return new e({type:"number",checks:[],...h(t)})}function Pd(e,t){return new e({type:"number",coerce:!0,checks:[],...h(t)})}function Td(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...h(t)})}function jd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...h(t)})}function Od(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...h(t)})}function Nd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...h(t)})}function Ad(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...h(t)})}function Dd(e,t){return new e({type:"boolean",...h(t)})}function Zd(e,t){return new e({type:"boolean",coerce:!0,...h(t)})}function Cd(e,t){return new e({type:"bigint",...h(t)})}function Rd(e,t){return new e({type:"bigint",coerce:!0,...h(t)})}function Md(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...h(t)})}function Ld(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...h(t)})}function Fd(e,t){return new e({type:"symbol",...h(t)})}function Jd(e,t){return new e({type:"undefined",...h(t)})}function Kd(e,t){return new e({type:"null",...h(t)})}function Gd(e){return new e({type:"any"})}function Wd(e){return new e({type:"unknown"})}function Hd(e,t){return new e({type:"never",...h(t)})}function Bd(e,t){return new e({type:"void",...h(t)})}function Xd(e,t){return new e({type:"date",...h(t)})}function Vd(e,t){return new e({type:"date",coerce:!0,...h(t)})}function Yd(e,t){return new e({type:"nan",...h(t)})}function Ie(e,t){return new fr({check:"less_than",...h(t),value:e,inclusive:!1})}function re(e,t){return new fr({check:"less_than",...h(t),value:e,inclusive:!0})}function xe(e,t){return new pr({check:"greater_than",...h(t),value:e,inclusive:!1})}function Y(e,t){return new pr({check:"greater_than",...h(t),value:e,inclusive:!0})}function Hr(e){return xe(0,e)}function Br(e){return Ie(0,e)}function Xr(e){return re(0,e)}function Vr(e){return Y(0,e)}function et(e,t){return new Cu({check:"multiple_of",...h(t),value:e})}function ot(e,t){return new Lu({check:"max_size",...h(t),maximum:e})}function ze(e,t){return new Fu({check:"min_size",...h(t),minimum:e})}function At(e,t){return new Ju({check:"size_equals",...h(t),size:e})}function Dt(e,t){return new Ku({check:"max_length",...h(t),maximum:e})}function De(e,t){return new Gu({check:"min_length",...h(t),minimum:e})}function Zt(e,t){return new Wu({check:"length_equals",...h(t),length:e})}function Ti(e,t){return new Hu({check:"string_format",format:"regex",...h(t),pattern:e})}function ji(e){return new Bu({check:"string_format",format:"lowercase",...h(e)})}function Oi(e){return new Xu({check:"string_format",format:"uppercase",...h(e)})}function Ni(e,t){return new Vu({check:"string_format",format:"includes",...h(t),includes:e})}function Ai(e,t){return new Yu({check:"string_format",format:"starts_with",...h(t),prefix:e})}function Di(e,t){return new Qu({check:"string_format",format:"ends_with",...h(t),suffix:e})}function Yr(e,t,n){return new qu({check:"property",property:e,schema:t,...h(n)})}function Zi(e,t){return new el({check:"mime_type",mime:e,...h(t)})}function be(e){return new tl({check:"overwrite",tx:e})}function Ci(e){return be((t)=>t.normalize(e))}function Ri(){return be((e)=>e.trim())}function Mi(){return be((e)=>e.toLowerCase())}function Li(){return be((e)=>e.toUpperCase())}function Fi(){return be((e)=>Fs(e))}function Qd(e,t,n){return new e({type:"array",element:t,...h(n)})}function Cb(e,t,n){return new e({type:"union",options:t,...h(n)})}function Rb(e,t,n){return new e({type:"union",options:t,inclusive:!1,...h(n)})}function Mb(e,t,n,a){return new e({type:"union",options:n,discriminator:t,...h(a)})}function Lb(e,t,n){return new e({type:"intersection",left:t,right:n})}function Fb(e,t,n,a){let i=n instanceof x;return new e({type:"tuple",items:t,rest:i?n:null,...h(i?a:n)})}function Jb(e,t,n,a){return new e({type:"record",keyType:t,valueType:n,...h(a)})}function Kb(e,t,n,a){return new e({type:"map",keyType:t,valueType:n,...h(a)})}function Gb(e,t,n){return new e({type:"set",valueType:t,...h(n)})}function Wb(e,t,n){let a=Array.isArray(t)?Object.fromEntries(t.map((i)=>[i,i])):t;return new e({type:"enum",entries:a,...h(n)})}function Hb(e,t,n){return new e({type:"enum",entries:t,...h(n)})}function Bb(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...h(n)})}function qd(e,t){return new e({type:"file",...h(t)})}function Xb(e,t){return new e({type:"transform",transform:t})}function Vb(e,t){return new e({type:"optional",innerType:t})}function Yb(e,t){return new e({type:"nullable",innerType:t})}function Qb(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():Ks(n)}})}function qb(e,t,n){return new e({type:"nonoptional",innerType:t,...h(n)})}function e$(e,t){return new e({type:"success",innerType:t})}function t$(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function i$(e,t,n){return new e({type:"pipe",in:t,out:n})}function n$(e,t){return new e({type:"readonly",innerType:t})}function r$(e,t,n){return new e({type:"template_literal",parts:t,...h(n)})}function a$(e,t){return new e({type:"lazy",getter:t})}function o$(e,t){return new e({type:"promise",innerType:t})}function ec(e,t,n){let a=h(n);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:t,...a})}function tc(e,t,n){return new e({type:"custom",check:"custom",fn:t,...h(n)})}function ic(e,t){let n=nc((a)=>{return a.addIssue=(i)=>{if(typeof i==="string")a.issues.push(bi(i,a.value,n._zod.def));else{let r=i;if(r.fatal)r.continue=!1;r.code??(r.code="custom"),r.input??(r.input=a.value),r.inst??(r.inst=n),r.continue??(r.continue=!n._zod.def.abort),a.issues.push(bi(r))}},e(a.value,a)},t);return n}function nc(e,t){let n=new R({check:"custom",...h(t)});return n._zod.check=e,n}function rc(e){let t=new R({check:"describe"});return t._zod.onattach=[(n)=>{let a=ne.get(n)??{};ne.add(n,{...a,description:e})}],t._zod.check=()=>{},t}function ac(e){let t=new R({check:"meta"});return t._zod.onattach=[(n)=>{let a=ne.get(n)??{};ne.add(n,{...a,...e})}],t._zod.check=()=>{},t}function oc(e,t){let n=h(t),a=n.truthy??["true","1","yes","on","y","enabled"],i=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")a=a.map((v)=>typeof v==="string"?v.toLowerCase():v),i=i.map((v)=>typeof v==="string"?v.toLowerCase():v);let r=new Set(a),o=new Set(i),s=e.Codec??wr,l=e.Boolean??yr,d=new(e.String??Nt)({type:"string",error:n.error}),c=new l({type:"boolean",error:n.error}),p=new s({type:"pipe",in:d,out:c,transform:(v,f)=>{let y=v;if(n.case!=="sensitive")y=y.toLowerCase();if(r.has(y))return!0;else if(o.has(y))return!1;else return f.issues.push({code:"invalid_value",expected:"stringbool",values:[...r,...o],input:f.value,inst:p,continue:!1}),{}},reverseTransform:(v,f)=>{if(v===!0)return a[0]||"true";else return i[0]||"false"},error:n.error});return p}function Ct(e,t,n,a={}){let i=h(a),r={...h(a),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(o)=>n.test(o),...i};if(n instanceof RegExp)r.pattern=n;return new e(r)}function tt(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??ne,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function N(e,t,n={path:[],schemaPath:[]}){var a;let i=e._zod.def,r=t.seen.get(e);if(r){if(r.count++,n.schemaPath.includes(e))r.cycle=n.path;return r.schema}let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let d={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,d);else{let p=o.schema,v=t.processors[i.type];if(!v)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);v(e,t,p,d)}let c=e._zod.parent;if(c){if(!o.ref)o.ref=c;N(c,t,d),t.seen.get(c).isParent=!0}}let l=t.metadataRegistry.get(e);if(l)Object.assign(o.schema,l);if(t.io==="input"&&B(e))delete o.schema.examples,delete o.schema.default;if(t.io==="input"&&"_prefault"in o.schema)(a=o.schema).default??(a.default=o.schema._prefault);return delete o.schema._prefault,t.seen.get(e).schema}function it(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let a=new Map;for(let o of e.seen.entries()){let s=e.metadataRegistry.get(o[0])?.id;if(s){let l=a.get(s);if(l&&l!==o[0])throw Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);a.set(s,o[0])}}let i=(o)=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let c=e.external.registry.get(o[0])?.id,p=e.external.uri??((f)=>f);if(c)return{ref:p(c)};let v=o[1].defId??o[1].schema.id??`schema${e.counter++}`;return o[1].defId=v,{defId:v,ref:`${p("__shared")}#/${s}/${v}`}}if(o[1]===n)return{ref:"#"};let l=`#/${s}/`,d=o[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:l+d}},r=(o)=>{if(o[1].schema.$ref)return;let s=o[1],{ref:l,defId:d}=i(o);if(s.def={...s.schema},d)s.defId=d;let c=s.schema;for(let p in c)delete c[p];c.$ref=l};if(e.cycles==="throw")for(let o of e.seen.entries()){let s=o[1];if(s.cycle)throw Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
15
+ `))}}function Tr(e){if(e==="")return!0;if(/\s/.test(e))return!1;if(e.length%4!==0)return!1;try{return atob(e),!0}catch{return!1}}function Jl(e){if(!Ir.test(e))return!1;let t=e.replace(/[-_]/g,(a)=>a==="-"?"+":"/"),n=t.padEnd(Math.ceil(t.length/4)*4,"=");return Tr(n)}function Wl(e,t=null){try{let n=e.split(".");if(n.length!==3)return!1;let[a]=n;if(!a)return!1;let i=JSON.parse(atob(a));if("typ"in i&&i?.typ!=="JWT")return!1;if(!i.alg)return!1;if(t&&(!("alg"in i)||i.alg!==t))return!1;return!0}catch{return!1}}function us(e,t,n){if(e.issues.length)t.issues.push(...re(n,e.issues));t.value[n]=e.value}function Ti(e,t,n,a,i,r){let o=n in a;if(e.issues.length){if(i&&r&&!o)return;t.issues.push(...re(n,e.issues))}if(!o&&!i){if(!e.issues.length)t.issues.push({code:"invalid_type",expected:"nonoptional",input:void 0,path:[n]});return}if(e.value===void 0){if(o)t.value[n]=void 0}else t.value[n]=e.value}function od(e){let t=Object.keys(e.shape);for(let a of t)if(!e.shape?.[a]?._zod?.traits?.has("$ZodType"))throw Error(`Invalid element at key "${a}": expected a Zod schema`);let n=cu(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function sd(e,t,n,a,i,r){let o=[],s=i.keySet,l=i.catchall._zod,d=l.def.type,c=l.optin==="optional",p=l.optout==="optional";for(let v in t){if(v==="__proto__")continue;if(s.has(v))continue;if(d==="never"){o.push(v);continue}let f=l.run({value:t[v],issues:[]},a);if(f instanceof Promise)e.push(f.then((y)=>Ti(y,n,v,t,c,p)));else Ti(f,n,v,t,c,p)}if(o.length)n.issues.push({code:"unrecognized_keys",keys:o,input:t,inst:r});if(!e.length)return n;return Promise.all(e).then(()=>{return n})}function ls(e,t,n,a){for(let r of e)if(r.issues.length===0)return t.value=r.value,t;let i=e.filter((r)=>!Me(r));if(i.length===1)return t.value=i[0].value,i[0];return t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((r)=>r.issues.map((o)=>Q(o,a,K())))}),t}function ds(e,t,n,a){let i=e.filter((r)=>r.issues.length===0);if(i.length===1)return t.value=i[0].value,t;if(i.length===0)t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:e.map((r)=>r.issues.map((o)=>Q(o,a,K())))});else t.issues.push({code:"invalid_union",input:t.value,inst:n,errors:[],inclusive:!1});return t}function ir(e,t){if(e===t)return{valid:!0,data:e};if(e instanceof Date&&t instanceof Date&&+e===+t)return{valid:!0,data:e};if(Fe(e)&&Fe(t)){let n=Object.keys(t),a=Object.keys(e).filter((r)=>n.indexOf(r)!==-1),i={...e,...t};for(let r of a){let o=ir(e[r],t[r]);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};i[r]=o.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let a=0;a<e.length;a++){let i=e[a],r=t[a],o=ir(i,r);if(!o.valid)return{valid:!1,mergeErrorPath:[a,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function cs(e,t,n){let a=new Map,i;for(let s of t.issues)if(s.code==="unrecognized_keys"){i??(i=s);for(let l of s.keys){if(!a.has(l))a.set(l,{});a.get(l).l=!0}}else e.issues.push(s);for(let s of n.issues)if(s.code==="unrecognized_keys")for(let l of s.keys){if(!a.has(l))a.set(l,{});a.get(l).r=!0}else e.issues.push(s);let r=[...a].filter(([,s])=>s.l&&s.r).map(([s])=>s);if(r.length&&i)e.issues.push({...i,keys:r});if(Me(e))return e;let o=ir(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}function ms(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!=="optional")return n+1;return 0}function fs(e,t,n){if(e.issues.length)t.issues.push(...re(n,e.issues));t.value[n]=e.value}function ps(e,t,n,a,i){for(let r=0;r<n.length;r++){let o=e[r],s=r<a.length;if(o.issues.length){if(!s&&r>=i){t.value.length=r;break}t.issues.push(...re(r,o.issues))}t.value[r]=o.value}for(let r=t.value.length-1;r>=a.length;r--)if(n[r]._zod.optout==="optional"&&t.value[r]===void 0)t.value.length=r;else break;return t}function vs(e,t,n,a,i,r,o){if(e.issues.length)if(Ui.has(typeof a))n.issues.push(...re(a,e.issues));else n.issues.push({code:"invalid_key",origin:"map",input:i,inst:r,issues:e.issues.map((s)=>Q(s,o,K()))});if(t.issues.length)if(Ui.has(typeof a))n.issues.push(...re(a,t.issues));else n.issues.push({origin:"map",code:"invalid_element",input:i,inst:r,key:a,issues:t.issues.map((s)=>Q(s,o,K()))});n.value.set(e.value,t.value)}function gs(e,t){if(e.issues.length)t.issues.push(...e.issues);t.value.add(e.value)}function hs(e,t){if(t===void 0&&(e.issues.length||e.fallback))return{issues:[],value:void 0};return e}function ys(e,t){if(e.value===void 0)e.value=t.defaultValue;return e}function bs(e,t){if(!e.issues.length&&e.value===void 0)e.issues.push({code:"invalid_type",expected:"nonoptional",input:e.value,inst:t});return e}function bi(e,t,n){if(e.issues.length)return e.aborted=!0,e;return t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}function $i(e,t,n){if(e.issues.length)return e.aborted=!0,e;if((n.direction||"forward")==="forward"){let a=t.transform(e.value,e);if(a instanceof Promise)return a.then((i)=>_i(e,i,t.out,n));return _i(e,a,t.out,n)}else{let a=t.reverseTransform(e.value,e);if(a instanceof Promise)return a.then((i)=>_i(e,i,t.in,n));return _i(e,a,t.in,n)}}function _i(e,t,n,a){if(e.issues.length)return e.aborted=!0,e;return n._zod.run({value:t,issues:e.issues},a)}function $s(e){return e.value=Object.freeze(e.value),e}function _s(e,t,n,a){if(!e){let i={code:"custom",input:n,inst:a,path:[...a._zod.def.path??[]],continue:!a._zod.def.abort};if(a._zod.def.params)i.params=a._zod.def.params;t.issues.push(Ei(i))}}function Ty(){return{localeError:Ey()}}function Py(){return{localeError:Oy()}}function ks(e,t,n,a){let i=Math.abs(e),r=i%10,o=i%100;if(o>=11&&o<=19)return a;if(r===1)return t;if(r>=2&&r<=4)return n;return a}function Ny(){return{localeError:jy()}}function Dy(){return{localeError:Ay()}}function Cy(){return{localeError:Zy()}}function Ly(){return{localeError:Ry()}}function Fy(){return{localeError:My()}}function Ky(){return{localeError:Jy()}}function Wy(){return{localeError:Gy()}}function Ad(){return{localeError:By()}}function Xy(){return{localeError:Hy()}}function Yy(){return{localeError:Vy()}}function Qy(){return{localeError:qy()}}function tb(){return{localeError:eb()}}function nb(){return{localeError:ib()}}function ab(){return{localeError:rb()}}function sb(){return{localeError:ob()}}function lb(){return{localeError:ub()}}function cb(){return{localeError:db()}}function ws(e,t,n){return Math.abs(e)===1?t:n}function tt(e){if(!e)return"";let t=["ա","ե","ը","ի","ո","ու","օ"],n=e[e.length-1];return e+(t.includes(n)?"ն":"ը")}function fb(){return{localeError:mb()}}function vb(){return{localeError:pb()}}function hb(){return{localeError:gb()}}function bb(){return{localeError:yb()}}function _b(){return{localeError:$b()}}function wb(){return{localeError:kb()}}function Dd(){return{localeError:Sb()}}function Ib(){return Dd()}function zb(){return{localeError:xb()}}function Ss(e){let t=Math.abs(e),n=t%10,a=t%100;if(a>=11&&a<=19||n===0)return"many";if(n===1)return"one";return"few"}function Eb(){return{localeError:Ub()}}function Ob(){return{localeError:Tb()}}function jb(){return{localeError:Pb()}}function Ab(){return{localeError:Nb()}}function Zb(){return{localeError:Db()}}function Rb(){return{localeError:Cb()}}function Mb(){return{localeError:Lb()}}function Jb(){return{localeError:Fb()}}function Gb(){return{localeError:Kb()}}function Bb(){return{localeError:Wb()}}function Is(e,t,n,a){let i=Math.abs(e),r=i%10,o=i%100;if(o>=11&&o<=19)return a;if(r===1)return t;if(r>=2&&r<=4)return n;return a}function Xb(){return{localeError:Hb()}}function Yb(){return{localeError:Vb()}}function Qb(){return{localeError:qb()}}function t$(){return{localeError:e$()}}function n$(){return{localeError:i$()}}function a$(){return{localeError:r$()}}function Zd(){return{localeError:o$()}}function s$(){return Zd()}function l$(){return{localeError:u$()}}function c$(){return{localeError:d$()}}function f$(){return{localeError:m$()}}function v$(){return{localeError:p$()}}function h$(){return{localeError:g$()}}function b$(){return{localeError:y$()}}class Rr{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];if(this._map.set(e,n),n&&typeof n==="object"&&"id"in n)this._idmap.set(n.id,e);return this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);if(t&&typeof t==="object"&&"id"in t)this._idmap.delete(t.id);return this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let a={...n,...this._map.get(e)};return Object.keys(a).length?a:void 0}return this._map.get(e)}has(e){return this._map.has(e)}}function Lr(){return new Rr}function Ld(e,t){return new e({type:"string",...h(t)})}function Md(e,t){return new e({type:"string",coerce:!0,...h(t)})}function Mr(e,t){return new e({type:"string",format:"email",check:"string_format",abort:!1,...h(t)})}function Oi(e,t){return new e({type:"string",format:"guid",check:"string_format",abort:!1,...h(t)})}function Fr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,...h(t)})}function Jr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...h(t)})}function Kr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...h(t)})}function Gr(e,t){return new e({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...h(t)})}function Mi(e,t){return new e({type:"string",format:"url",check:"string_format",abort:!1,...h(t)})}function Wr(e,t){return new e({type:"string",format:"emoji",check:"string_format",abort:!1,...h(t)})}function Br(e,t){return new e({type:"string",format:"nanoid",check:"string_format",abort:!1,...h(t)})}function Hr(e,t){return new e({type:"string",format:"cuid",check:"string_format",abort:!1,...h(t)})}function Xr(e,t){return new e({type:"string",format:"cuid2",check:"string_format",abort:!1,...h(t)})}function Vr(e,t){return new e({type:"string",format:"ulid",check:"string_format",abort:!1,...h(t)})}function Yr(e,t){return new e({type:"string",format:"xid",check:"string_format",abort:!1,...h(t)})}function qr(e,t){return new e({type:"string",format:"ksuid",check:"string_format",abort:!1,...h(t)})}function Qr(e,t){return new e({type:"string",format:"ipv4",check:"string_format",abort:!1,...h(t)})}function ea(e,t){return new e({type:"string",format:"ipv6",check:"string_format",abort:!1,...h(t)})}function Fd(e,t){return new e({type:"string",format:"mac",check:"string_format",abort:!1,...h(t)})}function ta(e,t){return new e({type:"string",format:"cidrv4",check:"string_format",abort:!1,...h(t)})}function ia(e,t){return new e({type:"string",format:"cidrv6",check:"string_format",abort:!1,...h(t)})}function na(e,t){return new e({type:"string",format:"base64",check:"string_format",abort:!1,...h(t)})}function ra(e,t){return new e({type:"string",format:"base64url",check:"string_format",abort:!1,...h(t)})}function aa(e,t){return new e({type:"string",format:"e164",check:"string_format",abort:!1,...h(t)})}function oa(e,t){return new e({type:"string",format:"jwt",check:"string_format",abort:!1,...h(t)})}function Kd(e,t){return new e({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...h(t)})}function Gd(e,t){return new e({type:"string",format:"date",check:"string_format",...h(t)})}function Wd(e,t){return new e({type:"string",format:"time",check:"string_format",precision:null,...h(t)})}function Bd(e,t){return new e({type:"string",format:"duration",check:"string_format",...h(t)})}function Hd(e,t){return new e({type:"number",checks:[],...h(t)})}function Xd(e,t){return new e({type:"number",coerce:!0,checks:[],...h(t)})}function Vd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"safeint",...h(t)})}function Yd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float32",...h(t)})}function qd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"float64",...h(t)})}function Qd(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"int32",...h(t)})}function ec(e,t){return new e({type:"number",check:"number_format",abort:!1,format:"uint32",...h(t)})}function tc(e,t){return new e({type:"boolean",...h(t)})}function ic(e,t){return new e({type:"boolean",coerce:!0,...h(t)})}function nc(e,t){return new e({type:"bigint",...h(t)})}function rc(e,t){return new e({type:"bigint",coerce:!0,...h(t)})}function ac(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"int64",...h(t)})}function oc(e,t){return new e({type:"bigint",check:"bigint_format",abort:!1,format:"uint64",...h(t)})}function sc(e,t){return new e({type:"symbol",...h(t)})}function uc(e,t){return new e({type:"undefined",...h(t)})}function lc(e,t){return new e({type:"null",...h(t)})}function dc(e){return new e({type:"any"})}function cc(e){return new e({type:"unknown"})}function mc(e,t){return new e({type:"never",...h(t)})}function fc(e,t){return new e({type:"void",...h(t)})}function pc(e,t){return new e({type:"date",...h(t)})}function vc(e,t){return new e({type:"date",coerce:!0,...h(t)})}function gc(e,t){return new e({type:"nan",...h(t)})}function Ee(e,t){return new zr({check:"less_than",...h(t),value:e,inclusive:!1})}function oe(e,t){return new zr({check:"less_than",...h(t),value:e,inclusive:!0})}function Te(e,t){return new Ur({check:"greater_than",...h(t),value:e,inclusive:!1})}function Y(e,t){return new Ur({check:"greater_than",...h(t),value:e,inclusive:!0})}function sa(e){return Te(0,e)}function ua(e){return Ee(0,e)}function la(e){return oe(0,e)}function da(e){return Y(0,e)}function ot(e,t){return new nl({check:"multiple_of",...h(t),value:e})}function mt(e,t){return new ol({check:"max_size",...h(t),maximum:e})}function Oe(e,t){return new sl({check:"min_size",...h(t),minimum:e})}function Ft(e,t){return new ul({check:"size_equals",...h(t),size:e})}function Jt(e,t){return new ll({check:"max_length",...h(t),maximum:e})}function Je(e,t){return new dl({check:"min_length",...h(t),minimum:e})}function Kt(e,t){return new cl({check:"length_equals",...h(t),length:e})}function Fi(e,t){return new ml({check:"string_format",format:"regex",...h(t),pattern:e})}function Ji(e){return new fl({check:"string_format",format:"lowercase",...h(e)})}function Ki(e){return new pl({check:"string_format",format:"uppercase",...h(e)})}function Gi(e,t){return new vl({check:"string_format",format:"includes",...h(t),includes:e})}function Wi(e,t){return new gl({check:"string_format",format:"starts_with",...h(t),prefix:e})}function Bi(e,t){return new hl({check:"string_format",format:"ends_with",...h(t),suffix:e})}function ca(e,t,n){return new yl({check:"property",property:e,schema:t,...h(n)})}function Hi(e,t){return new bl({check:"mime_type",mime:e,...h(t)})}function Se(e){return new $l({check:"overwrite",tx:e})}function Xi(e){return Se((t)=>t.normalize(e))}function Vi(){return Se((e)=>e.trim())}function Yi(){return Se((e)=>e.toLowerCase())}function qi(){return Se((e)=>e.toUpperCase())}function Qi(){return Se((e)=>su(e))}function hc(e,t,n){return new e({type:"array",element:t,...h(n)})}function $$(e,t,n){return new e({type:"union",options:t,...h(n)})}function _$(e,t,n){return new e({type:"union",options:t,inclusive:!1,...h(n)})}function k$(e,t,n,a){return new e({type:"union",options:n,discriminator:t,...h(a)})}function w$(e,t,n){return new e({type:"intersection",left:t,right:n})}function S$(e,t,n,a){let i=n instanceof x;return new e({type:"tuple",items:t,rest:i?n:null,...h(i?a:n)})}function I$(e,t,n,a){return new e({type:"record",keyType:t,valueType:n,...h(a)})}function x$(e,t,n,a){return new e({type:"map",keyType:t,valueType:n,...h(a)})}function z$(e,t,n){return new e({type:"set",valueType:t,...h(n)})}function U$(e,t,n){let a=Array.isArray(t)?Object.fromEntries(t.map((i)=>[i,i])):t;return new e({type:"enum",entries:a,...h(n)})}function E$(e,t,n){return new e({type:"enum",entries:t,...h(n)})}function T$(e,t,n){return new e({type:"literal",values:Array.isArray(t)?t:[t],...h(n)})}function yc(e,t){return new e({type:"file",...h(t)})}function O$(e,t){return new e({type:"transform",transform:t})}function P$(e,t){return new e({type:"optional",innerType:t})}function j$(e,t){return new e({type:"nullable",innerType:t})}function N$(e,t,n){return new e({type:"default",innerType:t,get defaultValue(){return typeof n==="function"?n():lu(n)}})}function A$(e,t,n){return new e({type:"nonoptional",innerType:t,...h(n)})}function D$(e,t){return new e({type:"success",innerType:t})}function Z$(e,t,n){return new e({type:"catch",innerType:t,catchValue:typeof n==="function"?n:()=>n})}function C$(e,t,n){return new e({type:"pipe",in:t,out:n})}function R$(e,t){return new e({type:"readonly",innerType:t})}function L$(e,t,n){return new e({type:"template_literal",parts:t,...h(n)})}function M$(e,t){return new e({type:"lazy",getter:t})}function F$(e,t){return new e({type:"promise",innerType:t})}function bc(e,t,n){let a=h(n);return a.abort??(a.abort=!0),new e({type:"custom",check:"custom",fn:t,...a})}function $c(e,t,n){return new e({type:"custom",check:"custom",fn:t,...h(n)})}function _c(e,t){let n=kc((a)=>{return a.addIssue=(i)=>{if(typeof i==="string")a.issues.push(Ei(i,a.value,n._zod.def));else{let r=i;if(r.fatal)r.continue=!1;r.code??(r.code="custom"),r.input??(r.input=a.value),r.inst??(r.inst=n),r.continue??(r.continue=!n._zod.def.abort),a.issues.push(Ei(r))}},e(a.value,a)},t);return n}function kc(e,t){let n=new R({check:"custom",...h(t)});return n._zod.check=e,n}function wc(e){let t=new R({check:"describe"});return t._zod.onattach=[(n)=>{let a=ae.get(n)??{};ae.add(n,{...a,description:e})}],t._zod.check=()=>{},t}function Sc(e){let t=new R({check:"meta"});return t._zod.onattach=[(n)=>{let a=ae.get(n)??{};ae.add(n,{...a,...e})}],t._zod.check=()=>{},t}function Ic(e,t){let n=h(t),a=n.truthy??["true","1","yes","on","y","enabled"],i=n.falsy??["false","0","no","off","n","disabled"];if(n.case!=="sensitive")a=a.map((v)=>typeof v==="string"?v.toLowerCase():v),i=i.map((v)=>typeof v==="string"?v.toLowerCase():v);let r=new Set(a),o=new Set(i),s=e.Codec??Zr,l=e.Boolean??Pr,d=new(e.String??Mt)({type:"string",error:n.error}),c=new l({type:"boolean",error:n.error}),p=new s({type:"pipe",in:d,out:c,transform:(v,f)=>{let y=v;if(n.case!=="sensitive")y=y.toLowerCase();if(r.has(y))return!0;else if(o.has(y))return!1;else return f.issues.push({code:"invalid_value",expected:"stringbool",values:[...r,...o],input:f.value,inst:p,continue:!1}),{}},reverseTransform:(v,f)=>{if(v===!0)return a[0]||"true";else return i[0]||"false"},error:n.error});return p}function Gt(e,t,n,a={}){let i=h(a),r={...h(a),check:"string_format",type:"string",format:t,fn:typeof n==="function"?n:(o)=>n.test(o),...i};if(n instanceof RegExp)r.pattern=n;return new e(r)}function st(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";return{processors:e.processors??{},metadataRegistry:e?.metadata??ae,target:t,unrepresentable:e?.unrepresentable??"throw",override:e?.override??(()=>{}),io:e?.io??"output",counter:0,seen:new Map,cycles:e?.cycles??"ref",reused:e?.reused??"inline",external:e?.external??void 0}}function N(e,t,n={path:[],schemaPath:[]}){var a;let i=e._zod.def,r=t.seen.get(e);if(r){if(r.count++,n.schemaPath.includes(e))r.cycle=n.path;return r.schema}let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let d={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,d);else{let p=o.schema,v=t.processors[i.type];if(!v)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);v(e,t,p,d)}let c=e._zod.parent;if(c){if(!o.ref)o.ref=c;N(c,t,d),t.seen.get(c).isParent=!0}}let l=t.metadataRegistry.get(e);if(l)Object.assign(o.schema,l);if(t.io==="input"&&V(e))delete o.schema.examples,delete o.schema.default;if(t.io==="input"&&"_prefault"in o.schema)(a=o.schema).default??(a.default=o.schema._prefault);return delete o.schema._prefault,t.seen.get(e).schema}function ut(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let a=new Map;for(let o of e.seen.entries()){let s=e.metadataRegistry.get(o[0])?.id;if(s){let l=a.get(s);if(l&&l!==o[0])throw Error(`Duplicate schema id "${s}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);a.set(s,o[0])}}let i=(o)=>{let s=e.target==="draft-2020-12"?"$defs":"definitions";if(e.external){let c=e.external.registry.get(o[0])?.id,p=e.external.uri??((f)=>f);if(c)return{ref:p(c)};let v=o[1].defId??o[1].schema.id??`schema${e.counter++}`;return o[1].defId=v,{defId:v,ref:`${p("__shared")}#/${s}/${v}`}}if(o[1]===n)return{ref:"#"};let l=`#/${s}/`,d=o[1].schema.id??`__schema${e.counter++}`;return{defId:d,ref:l+d}},r=(o)=>{if(o[1].schema.$ref)return;let s=o[1],{ref:l,defId:d}=i(o);if(s.def={...s.schema},d)s.defId=d;let c=s.schema;for(let p in c)delete c[p];c.$ref=l};if(e.cycles==="throw")for(let o of e.seen.entries()){let s=o[1];if(s.cycle)throw Error(`Cycle detected: #/${s.cycle?.join("/")}/<root>
16
16
 
17
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of e.seen.entries()){let s=o[1];if(t===o[0]){r(o);continue}if(e.external){let l=e.external.registry.get(o[0])?.id;if(t!==o[0]&&l){r(o);continue}}if(e.metadataRegistry.get(o[0])?.id){r(o);continue}if(s.cycle){r(o);continue}if(s.count>1){if(e.reused==="ref"){r(o);continue}}}}function nt(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let a=(s)=>{let l=e.seen.get(s);if(l.ref===null)return;let d=l.def??l.schema,c={...d},p=l.ref;if(l.ref=null,p){a(p);let f=e.seen.get(p),y=f.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))d.allOf=d.allOf??[],d.allOf.push(y);else Object.assign(d,y);if(Object.assign(d,c),s._zod.parent===p)for(let k in d){if(k==="$ref"||k==="allOf")continue;if(!(k in c))delete d[k]}if(y.$ref&&f.def)for(let k in d){if(k==="$ref"||k==="allOf")continue;if(k in f.def&&JSON.stringify(d[k])===JSON.stringify(f.def[k]))delete d[k]}}let v=s._zod.parent;if(v&&v!==p){a(v);let f=e.seen.get(v);if(f?.schema.$ref){if(d.$ref=f.schema.$ref,f.def)for(let y in d){if(y==="$ref"||y==="allOf")continue;if(y in f.def&&JSON.stringify(d[y])===JSON.stringify(f.def[y]))delete d[y]}}}e.override({zodSchema:s,jsonSchema:d,path:l.path??[]})};for(let s of[...e.seen.entries()].reverse())a(s[0]);let i={};if(e.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(s)}Object.assign(i,n.def??n.schema);let r=e.metadataRegistry.get(t)?.id;if(r!==void 0&&i.id===r)delete i.id;let o=e.external?.defs??{};for(let s of e.seen.entries()){let l=s[1];if(l.def&&l.defId){if(l.def.id===l.defId)delete l.def.id;o[l.defId]=l.def}}if(e.external);else if(Object.keys(o).length>0)if(e.target==="draft-2020-12")i.$defs=o;else i.definitions=o;try{let s=JSON.parse(JSON.stringify(i));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:$t(t,"input",e.processors),output:$t(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch(s){throw Error("Error converting schema to JSON.")}}function B(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let a=e._zod.def;if(a.type==="transform")return!0;if(a.type==="array")return B(a.element,n);if(a.type==="set")return B(a.valueType,n);if(a.type==="lazy")return B(a.getter(),n);if(a.type==="promise"||a.type==="optional"||a.type==="nonoptional"||a.type==="nullable"||a.type==="readonly"||a.type==="default"||a.type==="prefault")return B(a.innerType,n);if(a.type==="intersection")return B(a.left,n)||B(a.right,n);if(a.type==="record"||a.type==="map")return B(a.keyType,n)||B(a.valueType,n);if(a.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return B(a.in,n)||B(a.out,n)}if(a.type==="object"){for(let i in a.shape)if(B(a.shape[i],n))return!0;return!1}if(a.type==="union"){for(let i of a.options)if(B(i,n))return!0;return!1}if(a.type==="tuple"){for(let i of a.items)if(B(i,n))return!0;if(a.rest&&B(a.rest,n))return!0;return!1}return!1}function Gc(e,t){if("_idmap"in e){let a=e,i=tt({...t,processors:Jn}),r={};for(let l of a._idmap.entries()){let[d,c]=l;N(c,i)}let o={},s={registry:a,uri:t?.uri,defs:r};i.external=s;for(let l of a._idmap.entries()){let[d,c]=l;it(i,c),o[d]=nt(i,c)}if(Object.keys(r).length>0){let l=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[l]:r}}return{schemas:o}}let n=tt({...t,processors:Jn});return N(e,n),it(n,e),nt(n,e)}class Wc{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=tt({processors:Jn,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return N(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}it(this.ctx,e);let n=nt(this.ctx,e),{"~standard":a,...i}=n;return i}}function Xc(e){return Id(ta,e)}function Vc(e){return xd(ia,e)}function Yc(e){return zd(na,e)}function Qc(e){return Ud(ra,e)}function Rt(e,t,n){let a=Object.getPrototypeOf(e),i=ls.get(a);if(!i)i=new Set,ls.set(a,i);if(i.has(t))return;i.add(t);for(let r in n){let o=n[r];Object.defineProperty(a,r,{configurable:!0,enumerable:!1,get(){let s=o.bind(this);return Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}function _t(e){return _d(Mt,e)}function mm(e){return zr(Ki,e)}function fm(e){return _i(kt,e)}function pm(e){return Ur(ve,e)}function vm(e){return Er(ve,e)}function gm(e){return Pr(ve,e)}function hm(e){return Tr(ve,e)}function ym(e){return Pi(Lt,e)}function bm(e){return Pi(Lt,{protocol:Se.httpProtocol,hostname:Se.domain,...U.normalizeParams(e)})}function $m(e){return jr(Gi,e)}function _m(e){return Or(Wi,e)}function km(e){return Nr(Hi,e)}function wm(e){return Ar(Bi,e)}function Sm(e){return Dr(Xi,e)}function Im(e){return Zr(Vi,e)}function xm(e){return Cr(Yi,e)}function zm(e){return Rr(Qi,e)}function Um(e){return wd(aa,e)}function Em(e){return Mr(qi,e)}function Pm(e){return Lr(en,e)}function Tm(e){return Fr(tn,e)}function jm(e){return Jr(nn,e)}function Om(e){return Kr(rn,e)}function Nm(e){return Gr(an,e)}function Am(e){return Wr(on,e)}function Dm(e,t,n={}){return Ct(st,e,t,n)}function Zm(e){return Ct(st,"hostname",Se.hostname,e)}function Cm(e){return Ct(st,"hex",Se.hex,e)}function Rm(e,t){let n=t?.enc??"hex",a=`${e}_${n}`,i=Se[a];if(!i)throw Error(`Unrecognized hash format: ${a}`);return Ct(st,a,i,t)}function oa(e){return Ed(Ft,e)}function ki(e){return Td(Me,e)}function Mm(e){return jd(Me,e)}function Lm(e){return Od(Me,e)}function Fm(e){return Nd(Me,e)}function Jm(e){return Ad(Me,e)}function sa(e){return Dd(Jt,e)}function Km(e){return Cd(Kt,e)}function Gm(e){return Md(sn,e)}function Wm(e){return Ld(sn,e)}function Hm(e){return Fd(ua,e)}function Bm(e){return Jd(la,e)}function ca(e){return Kd(da,e)}function Xm(){return Gd(ma)}function Ze(){return Wd(fa)}function un(e){return Hd(pa,e)}function Vm(e){return Bd(va,e)}function Ym(e){return Xd(ln,e)}function Gt(e,t){return Qd(ga,e,t)}function Qm(e){let t=e._zod.def.shape;return cn(Object.keys(t))}function qm(e,t){let n={type:"object",shape:e??{},...U.normalizeParams(t)};return new Wt(n)}function ef(e,t){return new Wt({type:"object",shape:e,catchall:un(),...U.normalizeParams(t)})}function tf(e,t){return new Wt({type:"object",shape:e,catchall:Ze(),...U.normalizeParams(t)})}function dn(e,t){return new Ht({type:"union",options:e,...U.normalizeParams(t)})}function nf(e,t){return new ha({type:"union",options:e,inclusive:!1,...U.normalizeParams(t)})}function rf(e,t,n){return new ya({type:"union",options:t,discriminator:e,...U.normalizeParams(n)})}function $a(e,t){return new ba({type:"intersection",left:e,right:t})}function ka(e,t,n){let a=t instanceof x,i=a?n:t;return new _a({type:"tuple",items:e,rest:a?t:null,...U.normalizeParams(i)})}function wa(e,t,n){if(!t||!t._zod)return new rt({type:"record",keyType:_t(),valueType:e,...U.normalizeParams(t)});return new rt({type:"record",keyType:e,valueType:t,...U.normalizeParams(n)})}function af(e,t,n){let a=ae(e);return a._zod.values=void 0,new rt({type:"record",keyType:a,valueType:t,...U.normalizeParams(n)})}function of(e,t,n){return new rt({type:"record",keyType:e,valueType:t,mode:"loose",...U.normalizeParams(n)})}function sf(e,t,n){return new Sa({type:"map",keyType:e,valueType:t,...U.normalizeParams(n)})}function uf(e,t){return new Ia({type:"set",valueType:e,...U.normalizeParams(t)})}function cn(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((a)=>[a,a])):e;return new at({type:"enum",entries:n,...U.normalizeParams(t)})}function lf(e,t){return new at({type:"enum",entries:e,...U.normalizeParams(t)})}function df(e,t){return new xa({type:"literal",values:Array.isArray(e)?e:[e],...U.normalizeParams(t)})}function cf(e){return qd(za,e)}function mn(e){return new Ua({type:"transform",transform:e})}function wt(e){return new fn({type:"optional",innerType:e})}function Pa(e){return new Ea({type:"optional",innerType:e})}function St(e){return new Ta({type:"nullable",innerType:e})}function mf(e){return wt(St(e))}function Oa(e,t){return new ja({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():U.shallowClone(t)}})}function Aa(e,t){return new Na({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():U.shallowClone(t)}})}function Da(e,t){return new pn({type:"nonoptional",innerType:e,...U.normalizeParams(t)})}function ff(e){return new Za({type:"success",innerType:e})}function Ra(e,t){return new Ca({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}function pf(e){return Yd(Ma,e)}function wi(e,t){return new Bt({type:"pipe",in:e,out:t})}function vf(e,t,n){return new Xt({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function gf(e){let t=e._zod.def;return new Xt({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}function Ja(e){return new Fa({type:"readonly",innerType:e})}function hf(e,t){return new Ka({type:"template_literal",parts:e,...U.normalizeParams(t)})}function Wa(e){return new Ga({type:"lazy",getter:e})}function yf(e){return new Ha({type:"promise",innerType:e})}function Si(e){return new Ba({type:"function",input:Array.isArray(e?.input)?ka(e?.input):e?.input??Gt(Ze()),output:e?.output??Ze()})}function bf(e){let t=new R({check:"custom"});return t._zod.check=e,t}function $f(e,t){return ec(Vt,e??(()=>!0),t)}function Xa(e,t={}){return tc(Vt,e,t)}function Va(e,t){return ic(e,t)}function wf(e,t={}){let n=new Vt({type:"custom",check:"custom",fn:(a)=>a instanceof e,abort:!0,...U.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(a)=>{if(!(a.value instanceof e))a.issues.push({code:"invalid_type",expected:e.name,input:a.value,inst:n,path:[...n._zod.def.path??[]]})},n}function If(e){let t=Wa(()=>{return dn([_t(e),oa(),sa(),ca(),Gt(t),wa(_t(),t)])});return t}function xf(e,t){return new La({type:"pipe",in:mn(e),out:t})}function c$(e){J({customError:e})}function m$(){return J().customError}function p$(e,t){let n=e.$schema;if(n==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(n==="http://json-schema.org/draft-07/schema#")return"draft-7";if(n==="http://json-schema.org/draft-04/schema#")return"draft-4";return t??"draft-2020-12"}function v$(e,t){if(!e.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let a=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===a){let i=n[1];if(!i||!t.defs[i])throw Error(`Reference not found: ${e}`);return t.defs[i]}throw Error(`Reference not found: ${e}`)}function zf(e,t){if(e.not!==void 0){if(typeof e.not==="object"&&Object.keys(e.not).length===0)return b.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let i=e.$ref;if(t.refs.has(i))return t.refs.get(i);if(t.processing.has(i))return b.lazy(()=>{if(!t.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return t.refs.get(i)});t.processing.add(i);let r=v$(i,t),o=K(r,t);return t.refs.set(i,o),t.processing.delete(i),o}if(e.enum!==void 0){let i=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&i.length===1&&i[0]===null)return b.null();if(i.length===0)return b.never();if(i.length===1)return b.literal(i[0]);if(i.every((o)=>typeof o==="string"))return b.enum(i);let r=i.map((o)=>b.literal(o));if(r.length<2)return r[0];return b.union([r[0],r[1],...r.slice(2)])}if(e.const!==void 0)return b.literal(e.const);let n=e.type;if(Array.isArray(n)){let i=n.map((r)=>{let o={...e,type:r};return zf(o,t)});if(i.length===0)return b.never();if(i.length===1)return i[0];return b.union(i)}if(!n)return b.any();let a;switch(n){case"string":{let i=b.string();if(e.format){let r=e.format;if(r==="email")i=i.check(b.email());else if(r==="uri"||r==="uri-reference")i=i.check(b.url());else if(r==="uuid"||r==="guid")i=i.check(b.uuid());else if(r==="date-time")i=i.check(b.iso.datetime());else if(r==="date")i=i.check(b.iso.date());else if(r==="time")i=i.check(b.iso.time());else if(r==="duration")i=i.check(b.iso.duration());else if(r==="ipv4")i=i.check(b.ipv4());else if(r==="ipv6")i=i.check(b.ipv6());else if(r==="mac")i=i.check(b.mac());else if(r==="cidr")i=i.check(b.cidrv4());else if(r==="cidr-v6")i=i.check(b.cidrv6());else if(r==="base64")i=i.check(b.base64());else if(r==="base64url")i=i.check(b.base64url());else if(r==="e164")i=i.check(b.e164());else if(r==="jwt")i=i.check(b.jwt());else if(r==="emoji")i=i.check(b.emoji());else if(r==="nanoid")i=i.check(b.nanoid());else if(r==="cuid")i=i.check(b.cuid());else if(r==="cuid2")i=i.check(b.cuid2());else if(r==="ulid")i=i.check(b.ulid());else if(r==="xid")i=i.check(b.xid());else if(r==="ksuid")i=i.check(b.ksuid())}if(typeof e.minLength==="number")i=i.min(e.minLength);if(typeof e.maxLength==="number")i=i.max(e.maxLength);if(e.pattern)i=i.regex(new RegExp(e.pattern));a=i;break}case"number":case"integer":{let i=n==="integer"?b.number().int():b.number();if(typeof e.minimum==="number")i=i.min(e.minimum);if(typeof e.maximum==="number")i=i.max(e.maximum);if(typeof e.exclusiveMinimum==="number")i=i.gt(e.exclusiveMinimum);else if(e.exclusiveMinimum===!0&&typeof e.minimum==="number")i=i.gt(e.minimum);if(typeof e.exclusiveMaximum==="number")i=i.lt(e.exclusiveMaximum);else if(e.exclusiveMaximum===!0&&typeof e.maximum==="number")i=i.lt(e.maximum);if(typeof e.multipleOf==="number")i=i.multipleOf(e.multipleOf);a=i;break}case"boolean":{a=b.boolean();break}case"null":{a=b.null();break}case"object":{let i={},r=e.properties||{},o=new Set(e.required||[]);for(let[l,d]of Object.entries(r)){let c=K(d,t);i[l]=o.has(l)?c:c.optional()}if(e.propertyNames){let l=K(e.propertyNames,t),d=e.additionalProperties&&typeof e.additionalProperties==="object"?K(e.additionalProperties,t):b.any();if(Object.keys(i).length===0){a=b.record(l,d);break}let c=b.object(i).passthrough(),p=b.looseRecord(l,d);a=b.intersection(c,p);break}if(e.patternProperties){let l=e.patternProperties,d=Object.keys(l),c=[];for(let v of d){let f=K(l[v],t),y=b.string().regex(new RegExp(v));c.push(b.looseRecord(y,f))}let p=[];if(Object.keys(i).length>0)p.push(b.object(i).passthrough());if(p.push(...c),p.length===0)a=b.object({}).passthrough();else if(p.length===1)a=p[0];else{let v=b.intersection(p[0],p[1]);for(let f=2;f<p.length;f++)v=b.intersection(v,p[f]);a=v}break}let s=b.object(i);if(e.additionalProperties===!1)a=s.strict();else if(typeof e.additionalProperties==="object")a=s.catchall(K(e.additionalProperties,t));else a=s.passthrough();break}case"array":{let{prefixItems:i,items:r}=e;if(i&&Array.isArray(i)){let o=i.map((l)=>K(l,t)),s=r&&typeof r==="object"&&!Array.isArray(r)?K(r,t):void 0;if(s)a=b.tuple(o).rest(s);else a=b.tuple(o);if(typeof e.minItems==="number")a=a.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")a=a.check(b.maxLength(e.maxItems))}else if(Array.isArray(r)){let o=r.map((l)=>K(l,t)),s=e.additionalItems&&typeof e.additionalItems==="object"?K(e.additionalItems,t):void 0;if(s)a=b.tuple(o).rest(s);else a=b.tuple(o);if(typeof e.minItems==="number")a=a.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")a=a.check(b.maxLength(e.maxItems))}else if(r!==void 0){let o=K(r,t),s=b.array(o);if(typeof e.minItems==="number")s=s.min(e.minItems);if(typeof e.maxItems==="number")s=s.max(e.maxItems);a=s}else a=b.array(b.any());break}default:throw Error(`Unsupported type: ${n}`)}return a}function K(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n=zf(e,t),a=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map((d)=>K(d,t)),l=b.union(s);n=a?b.intersection(n,l):l}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map((d)=>K(d,t)),l=b.xor(s);n=a?b.intersection(n,l):l}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=a?n:b.any();else{let s=a?n:K(e.allOf[0],t),l=a?0:1;for(let d=l;d<e.allOf.length;d++)s=b.intersection(s,K(e.allOf[d],t));n=s}if(e.nullable===!0&&t.version==="openapi-3.0")n=b.nullable(n);if(e.readOnly===!0)n=b.readonly(n);if(e.default!==void 0)n=n.default(e.default);let i={},r=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of r)if(s in e)i[s]=e[s];let o=["contentEncoding","contentMediaType","contentSchema"];for(let s of o)if(s in e)i[s]=e[s];for(let s of Object.keys(e))if(!f$.has(s))i[s]=e[s];if(Object.keys(i).length>0)t.registry.add(n,i);if(e.description)n=n.describe(e.description);return n}function g$(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let a=p$(n,t?.defaultTarget),i=n.$defs||n.definitions||{},r={version:a,defs:i,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??ne};return K(n,r)}function h$(e){return kd(Mt,e)}function y$(e){return Pd(Ft,e)}function b$(e){return Zd(Jt,e)}function $$(e){return Rd(Kt,e)}function _$(e){return Vd(ln,e)}function ap(e){rp.push(e)}async function T$(){let e=rp.splice(0);await Promise.all(e.map((t)=>{try{return(typeof t==="function"?t():t.dispose())??Promise.resolve()}catch{return Promise.resolve()}}))}function op(e,t){return e.name||`extension_${String(t).padStart(4,"0")}`}function ds(e){return Array.isArray(e)&&e.every((t)=>typeof t==="string")}function cs(e){if(!Array.isArray(e))return;let t=e.filter((n)=>typeof n==="string").map((n)=>n.trim()).filter((n)=>n.length>0);return t.length>0?t:void 0}function sp(e){let t=cs(e.providerIds),n=cs(e.modelIds);return{...e,...t?{providerIds:t}:{},...n?{modelIds:n}:{}}}function N$(e,t){let n=op(e,t),a=e.manifest;if(!a||typeof a!=="object")throw Error(`Invalid manifest for extension "${n}": manifest is required`);if(!Array.isArray(a.capabilities)||a.capabilities.length===0)throw Error(`Invalid manifest for extension "${n}": capabilities must be a non-empty array`);let i=new Set;for(let o of a.capabilities){if(!O$.has(o))throw Error(`Invalid manifest for extension "${n}": unsupported capability "${String(o)}"`);i.add(o)}if(Object.hasOwn(a,"providerIds")&&!ds(a.providerIds))throw Error(`Invalid manifest for extension "${n}": providerIds must be a string array when provided`);if(Object.hasOwn(a,"modelIds")&&!ds(a.modelIds))throw Error(`Invalid manifest for extension "${n}": modelIds must be a string array when provided`);let r=i.has("hooks");if(e.hooks!==void 0&&!r)throw Error(`Invalid manifest for extension "${n}": runtime hooks require the "hooks" capability`);return{capabilities:i,raw:sp(a)}}function A$(e,t){if(!e||typeof e!=="object")throw Error(`Invalid automation event contribution for extension "${t}": expected object`);let n=typeof e.eventType==="string"?e.eventType.trim():"",a=typeof e.source==="string"?e.source.trim():"";if(!n)throw Error(`Invalid automation event contribution for extension "${t}": eventType is required`);if(!a)throw Error(`Invalid automation event contribution for extension "${t}": source is required`);return{...e,eventType:n,source:a,examples:e.examples?[...e.examples]:void 0,metadata:e.metadata?{...e.metadata}:void 0}}class qa{extensions;registry={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[]};normalized=[];phase="resolve";setupContext;constructor(e={}){this.extensions=e.extensions??[],this.setupContext=e.setupContext??{}}resolve(){if(this.phase!=="resolve")return;this.normalized=this.extensions.map((e,t)=>({extension:e,order:t,manifest:{capabilities:new Set,raw:e.manifest}})),this.phase="validate"}validate(){if(this.phase==="resolve")this.resolve();if(this.phase!=="validate")return;this.normalized=this.normalized.map((e)=>({...e,manifest:N$(e.extension,e.order)})),this.phase="setup"}async setup(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase!=="setup")return;for(let e of this.normalized){let{extension:t}=e;if(t.disabled)continue;let n=op(t,e.order),a={registerTool:(r)=>this.registry.tools.push(r),registerCommand:(r)=>this.registry.commands.push(r),registerRule:(r)=>{if(!e.manifest.capabilities.has("rules"))throw Error(`Invalid setup for extension "${n}": registerRule requires the "rules" capability`);this.registry.rules.push(r)},registerMessageBuilder:(r)=>this.registry.messageBuilder.push(r),registerProvider:(r)=>this.registry.providers.push(r),registerAutomationEventType:(r)=>{if(!e.manifest.capabilities.has("automationEvents"))throw Error(`Invalid setup for extension "${n}": registerAutomationEventType requires the "automationEvents" capability`);this.registry.automationEventTypes.push(A$(r,n))}},i=e.manifest.capabilities.has("automationEvents")?this.setupContext:{...this.setupContext,automation:void 0};await t.setup?.(a,i)}this.phase="activate"}activate(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase==="setup")throw Error("Contribution registry setup must complete before activation");if(this.phase!=="activate")return;this.phase="run"}async initialize(){this.resolve(),this.validate(),await this.setup(),this.activate()}isActivated(){return this.phase==="run"}getRegistrySnapshot(){return{tools:[...this.registry.tools],commands:[...this.registry.commands],rules:[...this.registry.rules],messageBuilder:[...this.registry.messageBuilder],providers:[...this.registry.providers],automationEventTypes:[...this.registry.automationEventTypes]}}getRegisteredTools(){return[...this.registry.tools]}getRegisteredRules(){return[...this.registry.rules]}getRegisteredAutomationEventTypes(){return[...this.registry.automationEventTypes]}getValidatedExtensions(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();return this.normalized.slice().sort((e,t)=>e.order-t.order).map(({extension:e})=>e)}}function D$(e={}){return new qa(e)}function W$(e){let t=lp.safeParse(e);if(!t.success)return;return t.data}function dp(e){switch(e){case"run.start":case"session.send_input":return null;default:return 30000}}function X$(e,t){return t===void 0?dp(e):t}function Y$(e){return typeof e==="string"&&V$.has(e)}function mp(e,t){return`<file_content path="${e}">
17
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let o of e.seen.entries()){let s=o[1];if(t===o[0]){r(o);continue}if(e.external){let l=e.external.registry.get(o[0])?.id;if(t!==o[0]&&l){r(o);continue}}if(e.metadataRegistry.get(o[0])?.id){r(o);continue}if(s.cycle){r(o);continue}if(s.count>1){if(e.reused==="ref"){r(o);continue}}}}function lt(e,t){let n=e.seen.get(t);if(!n)throw Error("Unprocessed schema. This is a bug in Zod.");let a=(s)=>{let l=e.seen.get(s);if(l.ref===null)return;let d=l.def??l.schema,c={...d},p=l.ref;if(l.ref=null,p){a(p);let f=e.seen.get(p),y=f.schema;if(y.$ref&&(e.target==="draft-07"||e.target==="draft-04"||e.target==="openapi-3.0"))d.allOf=d.allOf??[],d.allOf.push(y);else Object.assign(d,y);if(Object.assign(d,c),s._zod.parent===p)for(let _ in d){if(_==="$ref"||_==="allOf")continue;if(!(_ in c))delete d[_]}if(y.$ref&&f.def)for(let _ in d){if(_==="$ref"||_==="allOf")continue;if(_ in f.def&&JSON.stringify(d[_])===JSON.stringify(f.def[_]))delete d[_]}}let v=s._zod.parent;if(v&&v!==p){a(v);let f=e.seen.get(v);if(f?.schema.$ref){if(d.$ref=f.schema.$ref,f.def)for(let y in d){if(y==="$ref"||y==="allOf")continue;if(y in f.def&&JSON.stringify(d[y])===JSON.stringify(f.def[y]))delete d[y]}}}e.override({zodSchema:s,jsonSchema:d,path:l.path??[]})};for(let s of[...e.seen.entries()].reverse())a(s[0]);let i={};if(e.target==="draft-2020-12")i.$schema="https://json-schema.org/draft/2020-12/schema";else if(e.target==="draft-07")i.$schema="http://json-schema.org/draft-07/schema#";else if(e.target==="draft-04")i.$schema="http://json-schema.org/draft-04/schema#";else if(e.target==="openapi-3.0");if(e.external?.uri){let s=e.external.registry.get(t)?.id;if(!s)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(s)}Object.assign(i,n.def??n.schema);let r=e.metadataRegistry.get(t)?.id;if(r!==void 0&&i.id===r)delete i.id;let o=e.external?.defs??{};for(let s of e.seen.entries()){let l=s[1];if(l.def&&l.defId){if(l.def.id===l.defId)delete l.def.id;o[l.defId]=l.def}}if(e.external);else if(Object.keys(o).length>0)if(e.target==="draft-2020-12")i.$defs=o;else i.definitions=o;try{let s=JSON.parse(JSON.stringify(i));return Object.defineProperty(s,"~standard",{value:{...t["~standard"],jsonSchema:{input:zt(t,"input",e.processors),output:zt(t,"output",e.processors)}},enumerable:!1,writable:!1}),s}catch(s){throw Error("Error converting schema to JSON.")}}function V(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let a=e._zod.def;if(a.type==="transform")return!0;if(a.type==="array")return V(a.element,n);if(a.type==="set")return V(a.valueType,n);if(a.type==="lazy")return V(a.getter(),n);if(a.type==="promise"||a.type==="optional"||a.type==="nonoptional"||a.type==="nullable"||a.type==="readonly"||a.type==="default"||a.type==="prefault")return V(a.innerType,n);if(a.type==="intersection")return V(a.left,n)||V(a.right,n);if(a.type==="record"||a.type==="map")return V(a.keyType,n)||V(a.valueType,n);if(a.type==="pipe"){if(e._zod.traits.has("$ZodCodec"))return!0;return V(a.in,n)||V(a.out,n)}if(a.type==="object"){for(let i in a.shape)if(V(a.shape[i],n))return!0;return!1}if(a.type==="union"){for(let i of a.options)if(V(i,n))return!0;return!1}if(a.type==="tuple"){for(let i of a.items)if(V(i,n))return!0;if(a.rest&&V(a.rest,n))return!0;return!1}return!1}function dm(e,t){if("_idmap"in e){let a=e,i=st({...t,processors:nr}),r={};for(let l of a._idmap.entries()){let[d,c]=l;N(c,i)}let o={},s={registry:a,uri:t?.uri,defs:r};i.external=s;for(let l of a._idmap.entries()){let[d,c]=l;ut(i,c),o[d]=lt(i,c)}if(Object.keys(r).length>0){let l=i.target==="draft-2020-12"?"$defs":"definitions";o.__shared={[l]:r}}return{schemas:o}}let n=st({...t,processors:nr});return N(e,n),ut(n,e),lt(n,e)}class cm{get metadataRegistry(){return this.ctx.metadataRegistry}get target(){return this.ctx.target}get unrepresentable(){return this.ctx.unrepresentable}get override(){return this.ctx.override}get io(){return this.ctx.io}get counter(){return this.ctx.counter}set counter(e){this.ctx.counter=e}get seen(){return this.ctx.seen}constructor(e){let t=e?.target??"draft-2020-12";if(t==="draft-4")t="draft-04";if(t==="draft-7")t="draft-07";this.ctx=st({processors:nr,target:t,...e?.metadata&&{metadata:e.metadata},...e?.unrepresentable&&{unrepresentable:e.unrepresentable},...e?.override&&{override:e.override},...e?.io&&{io:e.io}})}process(e,t={path:[],schemaPath:[]}){return N(e,this.ctx,t)}emit(e,t){if(t){if(t.cycles)this.ctx.cycles=t.cycles;if(t.reused)this.ctx.reused=t.reused;if(t.external)this.ctx.external=t.external}ut(this.ctx,e);let n=lt(this.ctx,e),{"~standard":a,...i}=n;return i}}function pm(e){return Kd(va,e)}function vm(e){return Gd(ga,e)}function gm(e){return Wd(ha,e)}function hm(e){return Bd(ya,e)}function Wt(e,t,n){let a=Object.getPrototypeOf(e),i=zs.get(a);if(!i)i=new Set,zs.set(a,i);if(i.has(t))return;i.add(t);for(let r in n){let o=n[r];Object.defineProperty(a,r,{configurable:!0,enumerable:!1,get(){let s=o.bind(this);return Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:s}),s},set(s){Object.defineProperty(this,r,{configurable:!0,writable:!0,enumerable:!0,value:s})}})}}function Ut(e){return Ld(Bt,e)}function Om(e){return Mr(tn,e)}function Pm(e){return Oi(Et,e)}function jm(e){return Fr(ye,e)}function Nm(e){return Jr(ye,e)}function Am(e){return Kr(ye,e)}function Dm(e){return Gr(ye,e)}function Zm(e){return Mi(Ht,e)}function Cm(e){return Mi(Ht,{protocol:Ue.httpProtocol,hostname:Ue.domain,...U.normalizeParams(e)})}function Rm(e){return Wr(nn,e)}function Lm(e){return Br(rn,e)}function Mm(e){return Hr(an,e)}function Fm(e){return Xr(on,e)}function Jm(e){return Vr(sn,e)}function Km(e){return Yr(un,e)}function Gm(e){return qr(ln,e)}function Wm(e){return Qr(dn,e)}function Bm(e){return Fd(ba,e)}function Hm(e){return ea(cn,e)}function Xm(e){return ta(mn,e)}function Vm(e){return ia(fn,e)}function Ym(e){return na(pn,e)}function qm(e){return ra(vn,e)}function Qm(e){return aa(gn,e)}function ef(e){return oa(hn,e)}function tf(e,t,n={}){return Gt(ft,e,t,n)}function nf(e){return Gt(ft,"hostname",Ue.hostname,e)}function rf(e){return Gt(ft,"hex",Ue.hex,e)}function af(e,t){let n=t?.enc??"hex",a=`${e}_${n}`,i=Ue[a];if(!i)throw Error(`Unrecognized hash format: ${a}`);return Gt(ft,a,i,t)}function $a(e){return Hd(Xt,e)}function Pi(e){return Vd(Be,e)}function of(e){return Yd(Be,e)}function sf(e){return qd(Be,e)}function uf(e){return Qd(Be,e)}function lf(e){return ec(Be,e)}function _a(e){return tc(Vt,e)}function df(e){return nc(Yt,e)}function cf(e){return ac(yn,e)}function mf(e){return oc(yn,e)}function ff(e){return sc(ka,e)}function pf(e){return uc(wa,e)}function Ia(e){return lc(Sa,e)}function vf(){return dc(xa)}function Ke(){return cc(za)}function bn(e){return mc(Ua,e)}function gf(e){return fc(Ea,e)}function hf(e){return pc($n,e)}function qt(e,t){return hc(Ta,e,t)}function yf(e){let t=e._zod.def.shape;return kn(Object.keys(t))}function bf(e,t){let n={type:"object",shape:e??{},...U.normalizeParams(t)};return new Qt(n)}function $f(e,t){return new Qt({type:"object",shape:e,catchall:bn(),...U.normalizeParams(t)})}function _f(e,t){return new Qt({type:"object",shape:e,catchall:Ke(),...U.normalizeParams(t)})}function _n(e,t){return new ei({type:"union",options:e,...U.normalizeParams(t)})}function kf(e,t){return new Oa({type:"union",options:e,inclusive:!1,...U.normalizeParams(t)})}function wf(e,t,n){return new Pa({type:"union",options:t,discriminator:e,...U.normalizeParams(n)})}function Na(e,t){return new ja({type:"intersection",left:e,right:t})}function Da(e,t,n){let a=t instanceof x,i=a?n:t;return new Aa({type:"tuple",items:e,rest:a?t:null,...U.normalizeParams(i)})}function Za(e,t,n){if(!t||!t._zod)return new dt({type:"record",keyType:Ut(),valueType:e,...U.normalizeParams(t)});return new dt({type:"record",keyType:e,valueType:t,...U.normalizeParams(n)})}function Sf(e,t,n){let a=se(e);return a._zod.values=void 0,new dt({type:"record",keyType:a,valueType:t,...U.normalizeParams(n)})}function If(e,t,n){return new dt({type:"record",keyType:e,valueType:t,mode:"loose",...U.normalizeParams(n)})}function xf(e,t,n){return new Ca({type:"map",keyType:e,valueType:t,...U.normalizeParams(n)})}function zf(e,t){return new Ra({type:"set",valueType:e,...U.normalizeParams(t)})}function kn(e,t){let n=Array.isArray(e)?Object.fromEntries(e.map((a)=>[a,a])):e;return new ct({type:"enum",entries:n,...U.normalizeParams(t)})}function Uf(e,t){return new ct({type:"enum",entries:e,...U.normalizeParams(t)})}function Ef(e,t){return new La({type:"literal",values:Array.isArray(e)?e:[e],...U.normalizeParams(t)})}function Tf(e){return yc(Ma,e)}function wn(e){return new Fa({type:"transform",transform:e})}function Tt(e){return new Sn({type:"optional",innerType:e})}function Ka(e){return new Ja({type:"optional",innerType:e})}function Ot(e){return new Ga({type:"nullable",innerType:e})}function Of(e){return Tt(Ot(e))}function Ba(e,t){return new Wa({type:"default",innerType:e,get defaultValue(){return typeof t==="function"?t():U.shallowClone(t)}})}function Xa(e,t){return new Ha({type:"prefault",innerType:e,get defaultValue(){return typeof t==="function"?t():U.shallowClone(t)}})}function Va(e,t){return new In({type:"nonoptional",innerType:e,...U.normalizeParams(t)})}function Pf(e){return new Ya({type:"success",innerType:e})}function Qa(e,t){return new qa({type:"catch",innerType:e,catchValue:typeof t==="function"?t:()=>t})}function jf(e){return gc(eo,e)}function ji(e,t){return new ti({type:"pipe",in:e,out:t})}function Nf(e,t,n){return new ii({type:"pipe",in:e,out:t,transform:n.decode,reverseTransform:n.encode})}function Af(e){let t=e._zod.def;return new ii({type:"pipe",in:t.out,out:t.in,transform:t.reverseTransform,reverseTransform:t.transform})}function no(e){return new io({type:"readonly",innerType:e})}function Df(e,t){return new ro({type:"template_literal",parts:e,...U.normalizeParams(t)})}function oo(e){return new ao({type:"lazy",getter:e})}function Zf(e){return new so({type:"promise",innerType:e})}function Ni(e){return new uo({type:"function",input:Array.isArray(e?.input)?Da(e?.input):e?.input??qt(Ke()),output:e?.output??Ke()})}function Cf(e){let t=new R({check:"custom"});return t._zod.check=e,t}function Rf(e,t){return bc(ni,e??(()=>!0),t)}function lo(e,t={}){return $c(ni,e,t)}function co(e,t){return _c(e,t)}function Ff(e,t={}){let n=new ni({type:"custom",check:"custom",fn:(a)=>a instanceof e,abort:!0,...U.normalizeParams(t)});return n._zod.bag.Class=e,n._zod.check=(a)=>{if(!(a.value instanceof e))a.issues.push({code:"invalid_type",expected:e.name,input:a.value,inst:n,path:[...n._zod.def.path??[]]})},n}function Kf(e){let t=oo(()=>{return _n([Ut(e),$a(),_a(),Ia(),qt(t),Za(Ut(),t)])});return t}function Gf(e,t){return new to({type:"pipe",in:wn(e),out:t})}function B$(e){K({customError:e})}function H$(){return K().customError}function V$(e,t){let n=e.$schema;if(n==="https://json-schema.org/draft/2020-12/schema")return"draft-2020-12";if(n==="http://json-schema.org/draft-07/schema#")return"draft-7";if(n==="http://json-schema.org/draft-04/schema#")return"draft-4";return t??"draft-2020-12"}function Y$(e,t){if(!e.startsWith("#"))throw Error("External $ref is not supported, only local refs (#/...) are allowed");let n=e.slice(1).split("/").filter(Boolean);if(n.length===0)return t.rootSchema;let a=t.version==="draft-2020-12"?"$defs":"definitions";if(n[0]===a){let i=n[1];if(!i||!t.defs[i])throw Error(`Reference not found: ${e}`);return t.defs[i]}throw Error(`Reference not found: ${e}`)}function Wf(e,t){if(e.not!==void 0){if(typeof e.not==="object"&&Object.keys(e.not).length===0)return b.never();throw Error("not is not supported in Zod (except { not: {} } for never)")}if(e.unevaluatedItems!==void 0)throw Error("unevaluatedItems is not supported");if(e.unevaluatedProperties!==void 0)throw Error("unevaluatedProperties is not supported");if(e.if!==void 0||e.then!==void 0||e.else!==void 0)throw Error("Conditional schemas (if/then/else) are not supported");if(e.dependentSchemas!==void 0||e.dependentRequired!==void 0)throw Error("dependentSchemas and dependentRequired are not supported");if(e.$ref){let i=e.$ref;if(t.refs.has(i))return t.refs.get(i);if(t.processing.has(i))return b.lazy(()=>{if(!t.refs.has(i))throw Error(`Circular reference not resolved: ${i}`);return t.refs.get(i)});t.processing.add(i);let r=Y$(i,t),o=W(r,t);return t.refs.set(i,o),t.processing.delete(i),o}if(e.enum!==void 0){let i=e.enum;if(t.version==="openapi-3.0"&&e.nullable===!0&&i.length===1&&i[0]===null)return b.null();if(i.length===0)return b.never();if(i.length===1)return b.literal(i[0]);if(i.every((o)=>typeof o==="string"))return b.enum(i);let r=i.map((o)=>b.literal(o));if(r.length<2)return r[0];return b.union([r[0],r[1],...r.slice(2)])}if(e.const!==void 0)return b.literal(e.const);let n=e.type;if(Array.isArray(n)){let i=n.map((r)=>{let o={...e,type:r};return Wf(o,t)});if(i.length===0)return b.never();if(i.length===1)return i[0];return b.union(i)}if(!n)return b.any();let a;switch(n){case"string":{let i=b.string();if(e.format){let r=e.format;if(r==="email")i=i.check(b.email());else if(r==="uri"||r==="uri-reference")i=i.check(b.url());else if(r==="uuid"||r==="guid")i=i.check(b.uuid());else if(r==="date-time")i=i.check(b.iso.datetime());else if(r==="date")i=i.check(b.iso.date());else if(r==="time")i=i.check(b.iso.time());else if(r==="duration")i=i.check(b.iso.duration());else if(r==="ipv4")i=i.check(b.ipv4());else if(r==="ipv6")i=i.check(b.ipv6());else if(r==="mac")i=i.check(b.mac());else if(r==="cidr")i=i.check(b.cidrv4());else if(r==="cidr-v6")i=i.check(b.cidrv6());else if(r==="base64")i=i.check(b.base64());else if(r==="base64url")i=i.check(b.base64url());else if(r==="e164")i=i.check(b.e164());else if(r==="jwt")i=i.check(b.jwt());else if(r==="emoji")i=i.check(b.emoji());else if(r==="nanoid")i=i.check(b.nanoid());else if(r==="cuid")i=i.check(b.cuid());else if(r==="cuid2")i=i.check(b.cuid2());else if(r==="ulid")i=i.check(b.ulid());else if(r==="xid")i=i.check(b.xid());else if(r==="ksuid")i=i.check(b.ksuid())}if(typeof e.minLength==="number")i=i.min(e.minLength);if(typeof e.maxLength==="number")i=i.max(e.maxLength);if(e.pattern)i=i.regex(new RegExp(e.pattern));a=i;break}case"number":case"integer":{let i=n==="integer"?b.number().int():b.number();if(typeof e.minimum==="number")i=i.min(e.minimum);if(typeof e.maximum==="number")i=i.max(e.maximum);if(typeof e.exclusiveMinimum==="number")i=i.gt(e.exclusiveMinimum);else if(e.exclusiveMinimum===!0&&typeof e.minimum==="number")i=i.gt(e.minimum);if(typeof e.exclusiveMaximum==="number")i=i.lt(e.exclusiveMaximum);else if(e.exclusiveMaximum===!0&&typeof e.maximum==="number")i=i.lt(e.maximum);if(typeof e.multipleOf==="number")i=i.multipleOf(e.multipleOf);a=i;break}case"boolean":{a=b.boolean();break}case"null":{a=b.null();break}case"object":{let i={},r=e.properties||{},o=new Set(e.required||[]);for(let[l,d]of Object.entries(r)){let c=W(d,t);i[l]=o.has(l)?c:c.optional()}if(e.propertyNames){let l=W(e.propertyNames,t),d=e.additionalProperties&&typeof e.additionalProperties==="object"?W(e.additionalProperties,t):b.any();if(Object.keys(i).length===0){a=b.record(l,d);break}let c=b.object(i).passthrough(),p=b.looseRecord(l,d);a=b.intersection(c,p);break}if(e.patternProperties){let l=e.patternProperties,d=Object.keys(l),c=[];for(let v of d){let f=W(l[v],t),y=b.string().regex(new RegExp(v));c.push(b.looseRecord(y,f))}let p=[];if(Object.keys(i).length>0)p.push(b.object(i).passthrough());if(p.push(...c),p.length===0)a=b.object({}).passthrough();else if(p.length===1)a=p[0];else{let v=b.intersection(p[0],p[1]);for(let f=2;f<p.length;f++)v=b.intersection(v,p[f]);a=v}break}let s=b.object(i);if(e.additionalProperties===!1)a=s.strict();else if(typeof e.additionalProperties==="object")a=s.catchall(W(e.additionalProperties,t));else a=s.passthrough();break}case"array":{let{prefixItems:i,items:r}=e;if(i&&Array.isArray(i)){let o=i.map((l)=>W(l,t)),s=r&&typeof r==="object"&&!Array.isArray(r)?W(r,t):void 0;if(s)a=b.tuple(o).rest(s);else a=b.tuple(o);if(typeof e.minItems==="number")a=a.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")a=a.check(b.maxLength(e.maxItems))}else if(Array.isArray(r)){let o=r.map((l)=>W(l,t)),s=e.additionalItems&&typeof e.additionalItems==="object"?W(e.additionalItems,t):void 0;if(s)a=b.tuple(o).rest(s);else a=b.tuple(o);if(typeof e.minItems==="number")a=a.check(b.minLength(e.minItems));if(typeof e.maxItems==="number")a=a.check(b.maxLength(e.maxItems))}else if(r!==void 0){let o=W(r,t),s=b.array(o);if(typeof e.minItems==="number")s=s.min(e.minItems);if(typeof e.maxItems==="number")s=s.max(e.maxItems);a=s}else a=b.array(b.any());break}default:throw Error(`Unsupported type: ${n}`)}return a}function W(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n=Wf(e,t),a=e.type||e.enum!==void 0||e.const!==void 0;if(e.anyOf&&Array.isArray(e.anyOf)){let s=e.anyOf.map((d)=>W(d,t)),l=b.union(s);n=a?b.intersection(n,l):l}if(e.oneOf&&Array.isArray(e.oneOf)){let s=e.oneOf.map((d)=>W(d,t)),l=b.xor(s);n=a?b.intersection(n,l):l}if(e.allOf&&Array.isArray(e.allOf))if(e.allOf.length===0)n=a?n:b.any();else{let s=a?n:W(e.allOf[0],t),l=a?0:1;for(let d=l;d<e.allOf.length;d++)s=b.intersection(s,W(e.allOf[d],t));n=s}if(e.nullable===!0&&t.version==="openapi-3.0")n=b.nullable(n);if(e.readOnly===!0)n=b.readonly(n);if(e.default!==void 0)n=n.default(e.default);let i={},r=["$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor"];for(let s of r)if(s in e)i[s]=e[s];let o=["contentEncoding","contentMediaType","contentSchema"];for(let s of o)if(s in e)i[s]=e[s];for(let s of Object.keys(e))if(!X$.has(s))i[s]=e[s];if(Object.keys(i).length>0)t.registry.add(n,i);if(e.description)n=n.describe(e.description);return n}function q$(e,t){if(typeof e==="boolean")return e?b.any():b.never();let n;try{n=JSON.parse(JSON.stringify(e))}catch{throw Error("fromJSONSchema input is not valid JSON (possibly cyclic); use $defs/$ref for recursive schemas")}let a=V$(n,t?.defaultTarget),i=n.$defs||n.definitions||{},r={version:a,defs:i,refs:new Map,processing:new Set,rootSchema:n,registry:t?.registry??ae};return W(n,r)}function Q$(e){return Md(Bt,e)}function e_(e){return Xd(Xt,e)}function t_(e){return ic(Vt,e)}function i_(e){return rc(Yt,e)}function n_(e){return vc($n,e)}function Sp(e){wp.push(e)}async function f_(){let e=wp.splice(0);await Promise.all(e.map((t)=>{try{return(typeof t==="function"?t():t.dispose())??Promise.resolve()}catch{return Promise.resolve()}}))}function Ip(e,t){return e.name||`extension_${String(t).padStart(4,"0")}`}function Us(e){return Array.isArray(e)&&e.every((t)=>typeof t==="string")}function Es(e){if(!Array.isArray(e))return;let t=e.filter((n)=>typeof n==="string").map((n)=>n.trim()).filter((n)=>n.length>0);return t.length>0?t:void 0}function xp(e){let t=Es(e.providerIds),n=Es(e.modelIds);return{...e,...t?{providerIds:t}:{},...n?{modelIds:n}:{}}}function g_(e,t){let n=Ip(e,t),a=e.manifest;if(!a||typeof a!=="object")throw Error(`Invalid manifest for extension "${n}": manifest is required`);if(!Array.isArray(a.capabilities)||a.capabilities.length===0)throw Error(`Invalid manifest for extension "${n}": capabilities must be a non-empty array`);let i=new Set;for(let o of a.capabilities){if(!v_.has(o))throw Error(`Invalid manifest for extension "${n}": unsupported capability "${String(o)}"`);i.add(o)}if(Object.hasOwn(a,"providerIds")&&!Us(a.providerIds))throw Error(`Invalid manifest for extension "${n}": providerIds must be a string array when provided`);if(Object.hasOwn(a,"modelIds")&&!Us(a.modelIds))throw Error(`Invalid manifest for extension "${n}": modelIds must be a string array when provided`);let r=i.has("hooks");if(e.hooks!==void 0&&!r)throw Error(`Invalid manifest for extension "${n}": runtime hooks require the "hooks" capability`);return{capabilities:i,raw:xp(a)}}function h_(e,t){if(!e||typeof e!=="object")throw Error(`Invalid automation event contribution for extension "${t}": expected object`);let n=typeof e.eventType==="string"?e.eventType.trim():"",a=typeof e.source==="string"?e.source.trim():"";if(!n)throw Error(`Invalid automation event contribution for extension "${t}": eventType is required`);if(!a)throw Error(`Invalid automation event contribution for extension "${t}": source is required`);return{...e,eventType:n,source:a,examples:e.examples?[...e.examples]:void 0,metadata:e.metadata?{...e.metadata}:void 0}}class po{extensions;registry={tools:[],commands:[],rules:[],messageBuilder:[],providers:[],automationEventTypes:[]};normalized=[];phase="resolve";setupContext;constructor(e={}){this.extensions=e.extensions??[],this.setupContext=e.setupContext??{}}resolve(){if(this.phase!=="resolve")return;this.normalized=this.extensions.map((e,t)=>({extension:e,order:t,manifest:{capabilities:new Set,raw:e.manifest}})),this.phase="validate"}validate(){if(this.phase==="resolve")this.resolve();if(this.phase!=="validate")return;this.normalized=this.normalized.map((e)=>({...e,manifest:g_(e.extension,e.order)})),this.phase="setup"}async setup(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase!=="setup")return;for(let e of this.normalized){let{extension:t}=e;if(t.disabled)continue;let n=Ip(t,e.order),a={registerTool:(r)=>this.registry.tools.push(r),registerCommand:(r)=>this.registry.commands.push(r),registerRule:(r)=>{if(!e.manifest.capabilities.has("rules"))throw Error(`Invalid setup for extension "${n}": registerRule requires the "rules" capability`);this.registry.rules.push(r)},registerMessageBuilder:(r)=>this.registry.messageBuilder.push(r),registerProvider:(r)=>this.registry.providers.push(r),registerAutomationEventType:(r)=>{if(!e.manifest.capabilities.has("automationEvents"))throw Error(`Invalid setup for extension "${n}": registerAutomationEventType requires the "automationEvents" capability`);this.registry.automationEventTypes.push(h_(r,n))}},i=e.manifest.capabilities.has("automationEvents")?this.setupContext:{...this.setupContext,automation:void 0};await t.setup?.(a,i)}this.phase="activate"}activate(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();if(this.phase==="setup")throw Error("Contribution registry setup must complete before activation");if(this.phase!=="activate")return;this.phase="run"}async initialize(){this.resolve(),this.validate(),await this.setup(),this.activate()}isActivated(){return this.phase==="run"}getRegistrySnapshot(){return{tools:[...this.registry.tools],commands:[...this.registry.commands],rules:[...this.registry.rules],messageBuilder:[...this.registry.messageBuilder],providers:[...this.registry.providers],automationEventTypes:[...this.registry.automationEventTypes]}}getRegisteredTools(){return[...this.registry.tools]}getRegisteredRules(){return[...this.registry.rules]}getRegisteredAutomationEventTypes(){return[...this.registry.automationEventTypes]}getValidatedExtensions(){if(this.phase==="resolve")this.resolve();if(this.phase==="validate")this.validate();return this.normalized.slice().sort((e,t)=>e.order-t.order).map(({extension:e})=>e)}}function y_(e={}){return new po(e)}function U_(e){let t=Up.safeParse(e);if(!t.success)return;return t.data}function Ep(e){switch(e){case"run.start":case"session.send_input":return null;default:return 30000}}function O_(e,t){return t===void 0?Ep(e):t}function j_(e){return typeof e==="string"&&P_.has(e)}function Op(e,t){return`<file_content path="${e}">
18
18
  ${t}
19
- </file_content>`}function a_(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function o_(e,t){return`<user_command slash="${t}">${e}</user_command>`}function s_(e,t){let n=e.trim(),a=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!a)return;return{attrs:a[1]??"",content:a[2]??""}}function u_(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function fp(e){if(!e?.trim())return;let t=s_(e,"user_command");if(!t)return;let n=u_(t.attrs,"slash");if(!n)return;return{slash:n,content:t.content.trim()}}function pp(e){if(!e?.trim())return"";let t=e.trim();for(let n of["user_input","user_command"]){let a=vp(t,n);t=(a!==t?a:t.replace(new RegExp(`<${n}[^>]*>`,"g"),"")).trim()}return t}function l_(e){let t=pp(e),n=fp(e);if(!n)return t;if(n.slash.toLowerCase()==="team"){let a=t.toLowerCase().startsWith("spawn a team of agents for the following task:")?t.slice(46).trim():t;return a?`/team ${a}`:"/team"}return t?`/${n.slash} ${t}`:`/${n.slash}`}function vp(e,t){if(!e?.trim())return"";if(!t)return e;let n=new RegExp(`<${t}\\b[^>]*>([\\s\\S]*?)</${t}>`,"g");return e.replace(n,"$1")}function ms(e,t){let n=e[e.length-1];if(t.role==="tool"&&n?.role==="tool"&&Array.isArray(n.content)&&Array.isArray(t.content)){n.content.push(...t.content);return}e.push(t)}function d_(e){if(!Array.isArray(e)||e.length===0)return!1;return e.every((t)=>{if(!t||typeof t!=="object")return!1;let n=t;if(n.type==="text")return typeof n.text==="string";if(n.type==="image")return typeof n.data==="string"&&typeof n.mediaType==="string";return!1})}function Wn(e,t){if(e==null||typeof e!=="object")return e;if(Array.isArray(e)){let i=[];for(let r of e){if(r&&typeof r==="object"){let o=r;if(o.type==="image"&&typeof o.data==="string"&&typeof o.mediaType==="string"){t.push({type:"image",data:o.data,mediaType:o.mediaType});continue}if(o.type==="text"&&typeof o.text==="string"){i.push(o.text);continue}}i.push(Wn(r,t))}return i}let n=e,a={};for(let[i,r]of Object.entries(n))a[i]=Wn(r,t);return a}function gp(e,t=!1){if(typeof e==="string")return{type:t?"error-text":"text",value:e};if(!t&&d_(e))return{type:"content",value:e.map((n)=>n.type==="image"?{type:"image-data",data:n.data,mediaType:n.mediaType}:{type:"text",text:n.text})};if(!t&&e!==null&&typeof e==="object"){let n=[],a=Wn(e,n);if(n.length>0)return{type:"content",value:[{type:"text",text:typeof a==="string"?a:JSON.stringify(a)},...n.map((i)=>({type:"image-data",data:i.data,mediaType:i.mediaType}))]}}if(e===null||typeof e==="boolean"||typeof e==="number"||typeof e==="object")return{type:t?"error-json":"json",value:e};return{type:t?"error-text":"text",value:String(e)}}function eo(e,t,n){let a=n?.assistantToolCallArgKey??"input",i=[];if(typeof e==="string"&&e.trim().length>0||Array.isArray(e)&&e.length>0)i.push({role:"system",content:e});for(let r of t){let o=r.content;if(typeof o==="string"){i.push({role:r.role,content:o});continue}let s=[],l=[];for(let d of o)switch(d.type){case"text":s.push({type:"text",text:d.text});break;case"reasoning":s.push({type:"reasoning",text:d.text,...d.providerOptions?{providerOptions:d.providerOptions}:{}});break;case"image":s.push({type:"image",image:d.image,mediaType:d.mediaType});break;case"file":s.push({type:"text",text:mp(d.path,d.content)});break;case"tool-call":if(r.role==="assistant")s.push({type:"tool-call",toolCallId:d.toolCallId,toolName:d.toolName,[a]:d.input,...d.providerOptions?{providerOptions:d.providerOptions}:{}});break;case"tool-result":l.push({type:"tool-result",toolCallId:d.toolCallId,toolName:d.toolName,output:gp(d.output,d.isError??!1)});break}if(s.length>0)ms(i,{role:r.role,content:s});if(l.length>0)ms(i,{role:"tool",content:l})}return i}function m_(e,t){if(typeof e==="string"&&e.toLowerCase()in yt)return e.toLowerCase();return t?void 0:void 0}function hp(e,t){let n=typeof e==="string"?e.toLowerCase():void 0;if(n&&n in yt)return yt[n];if(t?.fallbackEffort)return yt[t.fallbackEffort];return}function f_(e){let t=hp(e.effort,{fallbackEffort:e.fallbackEffort});if(t===void 0)return;if(t<=0)return 0;let n=e.minimumBudget??1;if(e.maxBudget<n)return;let a=e.scaleTokens??e.maxBudget;return Math.min(Math.max(Math.floor(a*t),n),e.maxBudget)}function v_(e){return e instanceof Error?{name:e.name,message:e.message}:e}function h_(e){return/^[0-9A-Fa-f]$/.test(e)}function Pe(e){return e>="0"&&e<="9"}function y_(e){return e>=" "}function mi(e){return`,:[]/{}()
20
- +`.includes(e)}function fs(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"}function ps(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"||e>="0"&&e<="9"}function hs(e){return`,[]/{}
21
- +`.includes(e)}function ys(e){return pi(e)||b_.test(e)}function $_(e){return e===`
22
- `||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function Oe(e,t){let n=e.charCodeAt(t);return n===32||n===10||n===9||n===13}function __(e,t){let n=e.charCodeAt(t);return n===32||n===9||n===13}function k_(e,t){let n=e.charCodeAt(t);return n===160||n===6158||n>=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function pi(e){return yp(e)||Hn(e)}function yp(e){return e==='"'||e==="“"||e==="”"}function bs(e){return e==='"'}function Hn(e){return e==="'"||e==="‘"||e==="’"||e==="`"||e==="´"}function $s(e){return e==="'"}function gt(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=e.lastIndexOf(t);return a!==-1?e.substring(0,a)+(n?"":e.substring(a+1)):e}function ue(e,t){let n=e.length;if(!Oe(e,n-1))return e+t;while(Oe(e,n-1))n--;return e.substring(0,n)+t+e.substring(n)}function w_(e,t,n){return e.substring(0,t)+e.substring(t+n)}function S_(e){return/[,\n][ \t\r]*$/.test(e)}function z_(e){let t=0,n="";if(l(["```","[```","{```"]),!i())tg();l(["```","```]","```}"]);let a=c(",");if(a)r();if(ys(e[t])&&S_(n)){if(!a)n=ue(n,",");T()}else if(a)n=gt(n,",");while(e[t]==="}"||e[t]==="]")t++,r();if(t>=e.length)return n;eg();function i(){r();let $=y()||k()||j()||S()||Z()||fe(!1)||Pn();return r(),$}function r(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,P=t,O=o($);do if(O=s(),O)O=o($);while(O);return t>P}function o($){let P=$?Oe:__,O="";while(!0)if(P(e,t))O+=e[t],t++;else if(k_(e,t))O+=" ",t++;else break;if(O.length>0)return n+=O,!0;return!1}function s(){if(e[t]==="/"&&e[t+1]==="*"){while(t<e.length&&!U_(e,t))t++;return t+=2,!0}if(e[t]==="/"&&e[t+1]==="/"){while(t<e.length&&e[t]!==`
23
- `)t++;return!0}return!1}function l($){if(d($)){if(fs(e[t]))while(t<e.length&&ps(e[t]))t++;return r(),!0}return!1}function d($){o(!0);for(let P of $){let O=t+P.length;if(e.slice(t,O)===P)return t=O,!0}return!1}function c($){if(e[t]===$)return n+=e[t],t++,!0;return!1}function p($){if(e[t]===$)return t++,!0;return!1}function v(){return p("\\")}function f(){if(r(),e[t]==="."&&e[t+1]==="."&&e[t+2]===".")return t+=3,r(),p(","),!0;return!1}function y(){if(e[t]==="{"){if(n+="{",t++,r(),p(","))r();let $=!0;while(t<e.length&&e[t]!=="}"){let P;if(!$){if(P=c(","),!P)n=ue(n,",");r()}else P=!0,$=!1;if(f(),!(j()||fe(!0))){if(e[t]==="}"||e[t]==="{"||e[t]==="]"||e[t]==="["||e[t]===void 0)n=gt(n,",");else ig();break}r();let O=c(":"),ni=t>=e.length;if(!O)if(ys(e[t])||ni)n=ue(n,":");else To();if(!i())if(O||ni)n+="null";else To()}if(e[t]==="}")n+="}",t++;else n=ue(n,"}");return!0}return!1}function k(){if(e[t]==="["){if(n+="[",t++,r(),p(","))r();let $=!0;while(t<e.length&&e[t]!=="]"){if(!$){if(!c(","))n=ue(n,",")}else $=!1;if(f(),!i()){n=gt(n,",");break}}if(e[t]==="]")n+="]",t++;else n=ue(n,"]");return!0}return!1}function T(){let $=!0,P=!0;while(P){if(!$){if(!c(","))n=ue(n,",")}else $=!1;P=i()}if(!P)n=gt(n,",");n=`[
19
+ </file_content>`}function M_(e,t="act"){return`<user_input mode="${t}">${e}</user_input>`}function F_(e,t){return`<user_command slash="${t}">${e}</user_command>`}function J_(e,t){let n=e.trim(),a=new RegExp(`^<${t}\\b([^>]*)>([\\s\\S]*?)<\\/${t}>$`,"i").exec(n);if(!a)return;return{attrs:a[1]??"",content:a[2]??""}}function K_(e,t){return new RegExp(`${t}="([^"]+)"`,"i").exec(e)?.[1]?.trim()||void 0}function Pp(e){if(!e?.trim())return;let t=J_(e,"user_command");if(!t)return;let n=K_(t.attrs,"slash");if(!n)return;return{slash:n,content:t.content.trim()}}function jp(e){if(!e?.trim())return"";let t=e.trim();for(let n of["user_input","user_command"]){let a=Np(t,n);t=(a!==t?a:t.replace(new RegExp(`<${n}[^>]*>`,"g"),"")).trim()}return t}function G_(e){let t=jp(e),n=Pp(e);if(!n)return t;if(n.slash.toLowerCase()==="team"){let a=t.toLowerCase().startsWith("spawn a team of agents for the following task:")?t.slice(46).trim():t;return a?`/team ${a}`:"/team"}return t?`/${n.slash} ${t}`:`/${n.slash}`}function Np(e,t){if(!e?.trim())return"";if(!t)return e;let n=new RegExp(`<${t}\\b[^>]*>([\\s\\S]*?)</${t}>`,"g");return e.replace(n,"$1")}function q(e){return e.replace(/[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?<![\uD800-\uDBFF])[\uDC00-\uDFFF]/g,"�")}function Ts(e,t){let n=e[e.length-1];if(t.role==="tool"&&n?.role==="tool"&&Array.isArray(n.content)&&Array.isArray(t.content)){n.content.push(...t.content);return}e.push(t)}function W_(e){if(!Array.isArray(e)||e.length===0)return!1;return e.every((t)=>{if(!t||typeof t!=="object")return!1;let n=t;if(n.type==="text")return typeof n.text==="string";if(n.type==="image")return typeof n.data==="string"&&typeof n.mediaType==="string";return!1})}function or(e,t){if(e==null||typeof e!=="object")return e;if(Array.isArray(e)){let i=[];for(let r of e){if(r&&typeof r==="object"){let o=r;if(o.type==="image"&&typeof o.data==="string"&&typeof o.mediaType==="string"){t.push({type:"image",data:o.data,mediaType:o.mediaType});continue}if(o.type==="text"&&typeof o.text==="string"){i.push(o.text);continue}}i.push(or(r,t))}return i}let n=e,a={};for(let[i,r]of Object.entries(n))a[i]=or(r,t);return a}function Ai(e){if(typeof e==="string")return q(e);if(Array.isArray(e))return e.map((t)=>Ai(t));if(e!==null&&typeof e==="object"){let t=e,n={};for(let[a,i]of Object.entries(t))n[a]=Ai(i);return n}return e}function Ap(e,t=!1){if(typeof e==="string")return{type:t?"error-text":"text",value:q(e)};if(!t&&W_(e))return{type:"content",value:e.map((n)=>n.type==="image"?{type:"image-data",data:n.data,mediaType:n.mediaType}:{type:"text",text:q(n.text)})};if(!t&&e!==null&&typeof e==="object"){let n=[],a=or(e,n);if(n.length>0)return{type:"content",value:[{type:"text",text:typeof a==="string"?q(a):JSON.stringify(Ai(a))},...n.map((i)=>({type:"image-data",data:i.data,mediaType:i.mediaType}))]}}if(e===null||typeof e==="boolean"||typeof e==="number"||typeof e==="object")return{type:t?"error-json":"json",value:Ai(e)};return{type:t?"error-text":"text",value:q(String(e))}}function vo(e,t,n){let a=n?.assistantToolCallArgKey??"input",i=[];if(typeof e==="string"&&e.trim().length>0||Array.isArray(e)&&e.length>0)i.push({role:"system",content:typeof e==="string"?q(e):e});for(let r of t){let o=r.content;if(typeof o==="string"){i.push({role:r.role,content:q(o)});continue}let s=[],l=[];for(let d of o)switch(d.type){case"text":s.push({type:"text",text:q(d.text),...d.providerOptions?{providerOptions:d.providerOptions}:{}});break;case"reasoning":s.push({type:"reasoning",text:q(d.text),...d.providerOptions?{providerOptions:d.providerOptions}:{}});break;case"image":s.push({type:"image",image:d.image,mediaType:d.mediaType});break;case"file":s.push({type:"text",text:Op(d.path,q(d.content))});break;case"tool-call":if(r.role==="assistant")s.push({type:"tool-call",toolCallId:d.toolCallId,toolName:d.toolName,[a]:d.input,...d.providerOptions?{providerOptions:d.providerOptions}:{}});break;case"tool-result":l.push({type:"tool-result",toolCallId:d.toolCallId,toolName:d.toolName,output:Ap(d.output,d.isError??!1)});break}if(s.length>0)Ts(i,{role:r.role,content:s});if(l.length>0)Ts(i,{role:"tool",content:l})}return i}function H_(e,t){if(typeof e==="string"&&e.toLowerCase()in It)return e.toLowerCase();return t?void 0:void 0}function Dp(e,t){let n=typeof e==="string"?e.toLowerCase():void 0;if(n&&n in It)return It[n];if(t?.fallbackEffort)return It[t.fallbackEffort];return}function X_(e){let t=Dp(e.effort,{fallbackEffort:e.fallbackEffort});if(t===void 0)return;if(t<=0)return 0;let n=e.minimumBudget??1;if(e.maxBudget<n)return;let a=e.scaleTokens??e.maxBudget;return Math.min(Math.max(Math.floor(a*t),n),e.maxBudget)}function Y_(e){return e instanceof Error?{name:e.name,message:e.message}:e}function q_(e){return Math.max(1,Math.ceil(e/3))}function ek(e){return/^[0-9A-Fa-f]$/.test(e)}function Ze(e){return e>="0"&&e<="9"}function tk(e){return e>=" "}function ki(e){return`,:[]/{}()
20
+ +`.includes(e)}function Os(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"}function Ps(e){return e>="a"&&e<="z"||e>="A"&&e<="Z"||e==="_"||e==="$"||e>="0"&&e<="9"}function As(e){return`,[]/{}
21
+ +`.includes(e)}function Ds(e){return Si(e)||ik.test(e)}function nk(e){return e===`
22
+ `||e==="\r"||e==="\t"||e==="\b"||e==="\f"}function Le(e,t){let n=e.charCodeAt(t);return n===32||n===10||n===9||n===13}function rk(e,t){let n=e.charCodeAt(t);return n===32||n===9||n===13}function ak(e,t){let n=e.charCodeAt(t);return n===160||n===6158||n>=8192&&n<=8203||n===8239||n===8287||n===12288||n===65279}function Si(e){return Zp(e)||sr(e)}function Zp(e){return e==='"'||e==="“"||e==="”"}function Zs(e){return e==='"'}function sr(e){return e==="'"||e==="‘"||e==="’"||e==="`"||e==="´"}function Cs(e){return e==="'"}function wt(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!1,a=e.lastIndexOf(t);return a!==-1?e.substring(0,a)+(n?"":e.substring(a+1)):e}function ce(e,t){let n=e.length;if(!Le(e,n-1))return e+t;while(Le(e,n-1))n--;return e.substring(0,n)+t+e.substring(n)}function ok(e,t,n){return e.substring(0,t)+e.substring(t+n)}function sk(e){return/[,\n][ \t\r]*$/.test(e)}function dk(e){let t=0,n="";if(l(["```","[```","{```"]),!i())Zg();l(["```","```]","```}"]);let a=c(",");if(a)r();if(Ds(e[t])&&sk(n)){if(!a)n=ce(n,",");O()}else if(a)n=wt(n,",");while(e[t]==="}"||e[t]==="]")t++,r();if(t>=e.length)return n;Dg();function i(){r();let $=y()||_()||P()||S()||Z()||ge(!1)||Jn();return r(),$}function r(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!0,T=t,j=o($);do if(j=s(),j)j=o($);while(j);return t>T}function o($){let T=$?Le:rk,j="";while(!0)if(T(e,t))j+=e[t],t++;else if(ak(e,t))j+=" ",t++;else break;if(j.length>0)return n+=j,!0;return!1}function s(){if(e[t]==="/"&&e[t+1]==="*"){while(t<e.length&&!ck(e,t))t++;return t+=2,!0}if(e[t]==="/"&&e[t+1]==="/"){while(t<e.length&&e[t]!==`
23
+ `)t++;return!0}return!1}function l($){if(d($)){if(Os(e[t]))while(t<e.length&&Ps(e[t]))t++;return r(),!0}return!1}function d($){o(!0);for(let T of $){let j=t+T.length;if(e.slice(t,j)===T)return t=j,!0}return!1}function c($){if(e[t]===$)return n+=e[t],t++,!0;return!1}function p($){if(e[t]===$)return t++,!0;return!1}function v(){return p("\\")}function f(){if(r(),e[t]==="."&&e[t+1]==="."&&e[t+2]===".")return t+=3,r(),p(","),!0;return!1}function y(){if(e[t]==="{"){if(n+="{",t++,r(),p(","))r();let $=!0;while(t<e.length&&e[t]!=="}"){let T;if(!$){if(T=c(","),!T)n=ce(n,",");r()}else T=!0,$=!1;if(f(),!(P()||ge(!0))){if(e[t]==="}"||e[t]==="{"||e[t]==="]"||e[t]==="["||e[t]===void 0)n=wt(n,",");else Cg();break}r();let j=c(":"),fi=t>=e.length;if(!j)if(Ds(e[t])||fi)n=ce(n,":");else Xo();if(!i())if(j||fi)n+="null";else Xo()}if(e[t]==="}")n+="}",t++;else n=ce(n,"}");return!0}return!1}function _(){if(e[t]==="["){if(n+="[",t++,r(),p(","))r();let $=!0;while(t<e.length&&e[t]!=="]"){if(!$){if(!c(","))n=ce(n,",")}else $=!1;if(f(),!i()){n=wt(n,",");break}}if(e[t]==="]")n+="]",t++;else n=ce(n,"]");return!0}return!1}function O(){let $=!0,T=!0;while(T){if(!$){if(!c(","))n=ce(n,",")}else $=!1;T=i()}if(!T)n=wt(n,",");n=`[
24
24
  ${n}
25
- ]`}function j(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,P=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,O=e[t]==="\\";if(O)t++,O=!0;if(pi(e[t])){let ni=bs(e[t])?bs:$s(e[t])?$s:Hn(e[t])?Hn:yp,ri=t,ai=n.length,L='"';t++;while(!0){if(t>=e.length){let F=Po(t-1);if(!$&&mi(e.charAt(F)))return t=ri,n=n.substring(0,ai),j(!0);return L=ue(L,'"'),n+=L,!0}if(t===P)return L=ue(L,'"'),n+=L,!0;if(ni(e[t])){let F=t,_e=L.length;if(L+='"',t++,n+=L,r(!1),$||t>=e.length||mi(e[t])||pi(e[t])||Pe(e[t]))return M(),!0;let jo=Po(F-1),Oo=e.charAt(jo);if(Oo===",")return t=ri,n=n.substring(0,ai),j(!1,jo);if(mi(Oo))return t=ri,n=n.substring(0,ai),j(!0);n=n.substring(0,ai),t=F+1,L=`${L.substring(0,_e)}\\${L.substring(_e)}`}else if($&&hs(e[t])){if(e[t-1]===":"&&vs.test(e.substring(ri+1,t+2)))while(t<e.length&&gs.test(e[t]))L+=e[t],t++;return L=ue(L,'"'),n+=L,M(),!0}else if(e[t]==="\\"){let F=e.charAt(t+1);if(x_[F]!==void 0)L+=e.slice(t,t+2),t+=2;else if(F==="u"){let _e=2;while(_e<6&&h_(e[t+_e]))_e++;if(_e===6)L+=e.slice(t,t+6),t+=6;else if(t+_e>=e.length)t=e.length;else ng()}else if(F===`
26
- `)L+="\\n",t+=2;else L+=F,t+=2}else{let F=e.charAt(t);if(F==='"'&&e[t-1]!=="\\")L+=`\\${F}`,t++;else if($_(F))L+=I_[F],t++;else{if(!y_(F))qv(F);L+=F,t++}}if(O)v()}}return!1}function M(){let $=!1;r();while(e[t]==="+"){$=!0,t++,r(),n=gt(n,'"',!0);let P=n.length;if(j())n=w_(n,P,1);else n=ue(n,'"')}return $}function S(){let $=t;if(e[t]==="-"){if(t++,ii())return Tn($),!0;if(!Pe(e[t]))return t=$,!1}while(Pe(e[t]))t++;if(e[t]==="."){if(t++,ii())return Tn($),!0;if(!Pe(e[t]))return t=$,!1;while(Pe(e[t]))t++}if(e[t]==="e"||e[t]==="E"){if(t++,e[t]==="-"||e[t]==="+")t++;if(ii())return Tn($),!0;if(!Pe(e[t]))return t=$,!1;while(Pe(e[t]))t++}if(!ii())return t=$,!1;if(t>$){let P=e.slice($,t),O=/^0\d/.test(P);return n+=O?`"${P}"`:P,!0}return!1}function Z(){return W("true","true")||W("false","false")||W("null","null")||W("True","true")||W("False","false")||W("None","null")}function W($,P){if(e.slice(t,t+$.length)===$)return n+=P,t+=$.length,!0;return!1}function fe($){let P=t;if(fs(e[t])){while(t<e.length&&ps(e[t]))t++;let O=t;while(Oe(e,O))O++;if(e[O]==="("){if(t=O+1,i(),e[t]===")"){if(t++,e[t]===";")t++}return!0}}while(t<e.length&&!hs(e[t])&&!pi(e[t])&&(!$||e[t]!==":"))t++;if(e[t-1]===":"&&vs.test(e.substring(P,t+2)))while(t<e.length&&gs.test(e[t]))t++;if(t>P){while(Oe(e,t-1)&&t>0)t--;let O=e.slice(P,t);if(n+=O==="undefined"?"null":JSON.stringify(O),e[t]==='"')t++;return!0}}function Pn(){if(e[t]==="/"){let $=t;t++;while(t<e.length&&(e[t]!=="/"||e[t-1]==="\\"))t++;return t++,n+=JSON.stringify(e.substring($,t)),!0}}function Po($){let P=$;while(P>0&&Oe(e,P))P--;return P}function ii(){return t>=e.length||mi(e[t])||Oe(e,t)}function Tn($){n+=`${e.slice($,t)}0`}function qv($){throw new Te(`Invalid character ${JSON.stringify($)}`,t)}function eg(){throw new Te(`Unexpected character ${JSON.stringify(e[t])}`,t)}function tg(){throw new Te("Unexpected end of json string",e.length)}function ig(){throw new Te("Object key expected",t)}function To(){throw new Te("Colon expected",t)}function ng(){let $=e.slice(t,t+6);throw new Te(`Invalid unicode character "${$}"`,t)}}function U_(e,t){return e[t]==="*"&&e[t+1]==="/"}function P_(e){let t=e.match(E_);if(!t)return;let[,n,a]=t,i=a.trim();if(!i)return;let r=i[0];if(r==='"'||r==="{"||r==="["||i==="true"||i==="false"||i==="null"||Number.isFinite(Number(i)))return;return JSON.parse(`{"${n}":${JSON.stringify(i)}}`)}function j_(e){if(typeof e!=="string")return e;let t=e.trimStart();if(t[0]!=="{"&&t[0]!=="[")return e;for(let n of T_)try{let a=n(t);if(a!==void 0)return a}catch{}return e}function O_(e){let t=new WeakSet;try{return JSON.stringify(e,(n,a)=>{if(typeof a==="bigint")return a.toString();if(a&&typeof a==="object"){if(t.has(a))return"[Circular]";t.add(a)}return a})??"null"}catch{return String(e)}}function N_(e){try{return JSON.parse(e)}catch{return}}function A_(e){let t=e.replaceAll("\\","/"),n=t.lastIndexOf("/");return(n>=0?t.slice(n+1):t).toLowerCase()}function D_(e){return e==="win32"?"powershell":"/bin/bash"}function Z_(e,t){let n=A_(e);if(n==="powershell"||n==="powershell.exe"||n==="pwsh"||n==="pwsh.exe")return["-NoProfile","-NonInteractive","-Command",t];if(n==="cmd"||n==="cmd.exe")return["/d","/s","/c",t];return["-c",t]}function C_(e){return e.toLowerCase().replace(/[^\w.-]+/g,"_")}function bp(e,t){if(e.length<=t)return e;return`${e.slice(0,t-1)}…`}function R_(e,t="/",n=100){if(!e||e.length<=n)return e||"";let a=e.split(t)?.shift()?.trim()?.slice(0,n-1);return a?`${a}…`:bp(e,n)}function M_(e){if(e.length<=8)return"****";return`${e.slice(0,4)}...${e.slice(-4)}`}function L_(e){if(!e)return"(unknown-date)";let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return t.toLocaleString("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!0})}function F_(e){let t=Math.max(0,Math.floor(e/1000)),n=Math.floor(t/86400),a=Math.floor(t%86400/3600),i=Math.floor(t%3600/60),r=t%60;if(n>0)return`${n}d ${a}h`;if(a>0)return`${a}h ${i}m`;if(i>0)return`${i}m ${r}s`;return`${r}s`}function J_(e,t){let n=e.safeParse(t);if(!n.success)throw Error(u.prettifyError(n.error));return n.data}function $p(e){return u.toJSONSchema(e)}function W_(e){return JSON.stringify({workspaces:{[e.rootPath]:{hint:e.hint,associatedRemoteUrls:e.associatedRemoteUrls,latestGitCommitHash:e.latestGitCommitHash,latestGitBranchName:e.latestGitBranchName}}},null,2)}function _s(e,t,n){if(n?.trim()?.includes(Bn))return n.trim();let a=n||JSON.stringify({workspaces:{[e]:{hint:t||e.split("/").at(-1)||e}}},null,2);return`
27
- ${Bn}
28
- ${a}`}function H_(e){let{ide:t="Terminal Shell",mode:n,platform:a="unknown",workspaceName:i,metadata:r,rules:o,overridePrompt:s,providerId:l}=e,d=e.workspaceRoot??e.rootPath??"",c=l==="cline";if(s?.trim()){let p=s.trim();if(c&&r?.trim()&&!p.includes(Bn))return`${p}
25
+ ]`}function P(){let $=arguments.length>0&&arguments[0]!==void 0?arguments[0]:!1,T=arguments.length>1&&arguments[1]!==void 0?arguments[1]:-1,j=e[t]==="\\";if(j)t++,j=!0;if(Si(e[t])){let fi=Zs(e[t])?Zs:Cs(e[t])?Cs:sr(e[t])?sr:Zp,pi=t,vi=n.length,M='"';t++;while(!0){if(t>=e.length){let J=Ho(t-1);if(!$&&ki(e.charAt(J)))return t=pi,n=n.substring(0,vi),P(!0);return M=ce(M,'"'),n+=M,!0}if(t===T)return M=ce(M,'"'),n+=M,!0;if(fi(e[t])){let J=t,Ie=M.length;if(M+='"',t++,n+=M,r(!1),$||t>=e.length||ki(e[t])||Si(e[t])||Ze(e[t]))return L(),!0;let Vo=Ho(J-1),Yo=e.charAt(Vo);if(Yo===",")return t=pi,n=n.substring(0,vi),P(!1,Vo);if(ki(Yo))return t=pi,n=n.substring(0,vi),P(!0);n=n.substring(0,vi),t=J+1,M=`${M.substring(0,Ie)}\\${M.substring(Ie)}`}else if($&&As(e[t])){if(e[t-1]===":"&&js.test(e.substring(pi+1,t+2)))while(t<e.length&&Ns.test(e[t]))M+=e[t],t++;return M=ce(M,'"'),n+=M,L(),!0}else if(e[t]==="\\"){let J=e.charAt(t+1);if(lk[J]!==void 0)M+=e.slice(t,t+2),t+=2;else if(J==="u"){let Ie=2;while(Ie<6&&ek(e[t+Ie]))Ie++;if(Ie===6)M+=e.slice(t,t+6),t+=6;else if(t+Ie>=e.length)t=e.length;else Rg()}else if(J===`
26
+ `)M+="\\n",t+=2;else M+=J,t+=2}else{let J=e.charAt(t);if(J==='"'&&e[t-1]!=="\\")M+=`\\${J}`,t++;else if(nk(J))M+=uk[J],t++;else{if(!tk(J))Ag(J);M+=J,t++}}if(j)v()}}return!1}function L(){let $=!1;r();while(e[t]==="+"){$=!0,t++,r(),n=wt(n,'"',!0);let T=n.length;if(P())n=ok(n,T,1);else n=ce(n,'"')}return $}function S(){let $=t;if(e[t]==="-"){if(t++,mi())return Kn($),!0;if(!Ze(e[t]))return t=$,!1}while(Ze(e[t]))t++;if(e[t]==="."){if(t++,mi())return Kn($),!0;if(!Ze(e[t]))return t=$,!1;while(Ze(e[t]))t++}if(e[t]==="e"||e[t]==="E"){if(t++,e[t]==="-"||e[t]==="+")t++;if(mi())return Kn($),!0;if(!Ze(e[t]))return t=$,!1;while(Ze(e[t]))t++}if(!mi())return t=$,!1;if(t>$){let T=e.slice($,t),j=/^0\d/.test(T);return n+=j?`"${T}"`:T,!0}return!1}function Z(){return H("true","true")||H("false","false")||H("null","null")||H("True","true")||H("False","false")||H("None","null")}function H($,T){if(e.slice(t,t+$.length)===$)return n+=T,t+=$.length,!0;return!1}function ge($){let T=t;if(Os(e[t])){while(t<e.length&&Ps(e[t]))t++;let j=t;while(Le(e,j))j++;if(e[j]==="("){if(t=j+1,i(),e[t]===")"){if(t++,e[t]===";")t++}return!0}}while(t<e.length&&!As(e[t])&&!Si(e[t])&&(!$||e[t]!==":"))t++;if(e[t-1]===":"&&js.test(e.substring(T,t+2)))while(t<e.length&&Ns.test(e[t]))t++;if(t>T){while(Le(e,t-1)&&t>0)t--;let j=e.slice(T,t);if(n+=j==="undefined"?"null":JSON.stringify(j),e[t]==='"')t++;return!0}}function Jn(){if(e[t]==="/"){let $=t;t++;while(t<e.length&&(e[t]!=="/"||e[t-1]==="\\"))t++;return t++,n+=JSON.stringify(e.substring($,t)),!0}}function Ho($){let T=$;while(T>0&&Le(e,T))T--;return T}function mi(){return t>=e.length||ki(e[t])||Le(e,t)}function Kn($){n+=`${e.slice($,t)}0`}function Ag($){throw new Ce(`Invalid character ${JSON.stringify($)}`,t)}function Dg(){throw new Ce(`Unexpected character ${JSON.stringify(e[t])}`,t)}function Zg(){throw new Ce("Unexpected end of json string",e.length)}function Cg(){throw new Ce("Object key expected",t)}function Xo(){throw new Ce("Colon expected",t)}function Rg(){let $=e.slice(t,t+6);throw new Ce(`Invalid unicode character "${$}"`,t)}}function ck(e,t){return e[t]==="*"&&e[t+1]==="/"}function fk(e){let t=e.match(mk);if(!t)return;let[,n,a]=t,i=a.trim();if(!i)return;let r=i[0];if(r==='"'||r==="{"||r==="["||i==="true"||i==="false"||i==="null"||Number.isFinite(Number(i)))return;return JSON.parse(`{"${n}":${JSON.stringify(i)}}`)}function vk(e){if(typeof e!=="string")return e;let t=e.trimStart();if(t[0]!=="{"&&t[0]!=="[")return e;for(let n of pk)try{let a=n(t);if(a!==void 0)return a}catch{}return e}function gk(e){let t=new WeakSet;try{return JSON.stringify(e,(n,a)=>{if(typeof a==="bigint")return a.toString();if(a&&typeof a==="object"){if(t.has(a))return"[Circular]";t.add(a)}return a})??"null"}catch{return String(e)}}function hk(e){try{return JSON.parse(e)}catch{return}}function yk(e){let t=e.replaceAll("\\","/"),n=t.lastIndexOf("/");return(n>=0?t.slice(n+1):t).toLowerCase()}function bk(e){return e==="win32"?"powershell":"/bin/bash"}function $k(e,t){let n=yk(e);if(n==="powershell"||n==="powershell.exe"||n==="pwsh"||n==="pwsh.exe")return["-NoProfile","-NonInteractive","-Command",t];if(n==="cmd"||n==="cmd.exe")return["/d","/s","/c",t];return["-c",t]}function _k(e){return e.toLowerCase().replace(/[^\w.-]+/g,"_")}function Cp(e,t){if(e.length<=t)return e;return`${e.slice(0,t-1)}…`}function kk(e,t="/",n=100){if(!e||e.length<=n)return e||"";let a=e.split(t)?.shift()?.trim()?.slice(0,n-1);return a?`${a}…`:Cp(e,n)}function wk(e){if(e.length<=8)return"****";return`${e.slice(0,4)}...${e.slice(-4)}`}function Sk(e){if(!e)return"(unknown-date)";let t=new Date(e);if(Number.isNaN(t.getTime()))return e;return t.toLocaleString("en-US",{year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric",hour12:!0})}function Ik(e){let t=Math.max(0,Math.floor(e/1000)),n=Math.floor(t/86400),a=Math.floor(t%86400/3600),i=Math.floor(t%3600/60),r=t%60;if(n>0)return`${n}d ${a}h`;if(a>0)return`${a}h ${i}m`;if(i>0)return`${i}m ${r}s`;return`${r}s`}function xk(e,t){let n=e.safeParse(t);if(!n.success)throw Error(u.prettifyError(n.error));return n.data}function Rp(e){return u.toJSONSchema(e)}function Ek(e){return JSON.stringify({workspaces:{[e.rootPath]:{hint:e.hint,associatedRemoteUrls:e.associatedRemoteUrls,latestGitCommitHash:e.latestGitCommitHash,latestGitBranchName:e.latestGitBranchName}}},null,2)}function Rs(e,t,n){if(n?.trim()?.includes(ur))return n.trim();let a=n||JSON.stringify({workspaces:{[e]:{hint:t||e.split("/").at(-1)||e}}},null,2);return`
27
+ ${ur}
28
+ ${a}`}function Tk(e){let{ide:t="Terminal Shell",mode:n,platform:a="unknown",workspaceName:i,metadata:r,rules:o,overridePrompt:s,providerId:l}=e,d=e.workspaceRoot??e.rootPath??"",c=l==="cline";if(s?.trim()){let p=s.trim();if(c&&r?.trim()&&!p.includes(ur))return`${p}
29
29
 
30
- ${_s(d,i,r)}`.trim();return p}return(n==="yolo"?G_:K_).replace("{{PLATFORM_NAME}}",a).replace("{{CWD}}",d).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?_s(d,i,r):"").replace("{{CLINE_RULES}}",o||"").trim()}function wp(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function rk(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((a)=>a.trim()).includes("development"))return!0}return!1}function ak(e){if(!e?.trim())return!1;let t=nk(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function ok(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function sk(e){return e.some((t)=>t==="--enable-source-maps")}function uk(e){return e[_p]?.trim()||"127.0.0.1"}function lk(e){let t=e[kp]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function dk(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function to(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,a=wp(t[Ii]);if(a)return a;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return rk(n)?"development":"production"}function ck(e=process.env,t={}){if(wp(e[Ii]))return e;return{...e,[Ii]:to({env:e,execArgv:t.execArgv})}}function mk(e,t={}){if(e.length===0||!ak(e[0]))return[...e];if(to(t)!=="development")return[...e];let n=t.env??process.env,a=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!ok(a)){let r=uk(n),o=lk(n),s=o===void 0?0:o+dk(t.debugRole);i.push(`--inspect=${r}:${s}`)}if(!sk(a))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function ks(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function gk(){if(typeof process>"u"||!process?.env)return{};return process.env}function Sp(e={}){let t=e.env??gk();return ks(t.CLINE_ENVIRONMENT_OVERRIDE)??ks(t.CLINE_ENVIRONMENT)??"production"}function io(e){if(typeof e==="string")return Xn[e];return Xn[Sp(e)]}function yk(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function bk(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let a=n.indexOf("=");if(a<=0)return;let i=decodeURIComponent(n.substring(0,a).trim()),r=decodeURIComponent(n.substring(a+1).trim());if(!i||!r)return;t[i]=r})}catch{}return t}function $k(){return{enabled:process?.env?.OTEL_TELEMETRY_ENABLED==="1"||process?.env?.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process?.env?.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process?.env?.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process?.env?.OTEL_TRACES_EXPORTER,otlpProtocol:process?.env?.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process?.env?.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process?.env?.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process?.env?.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process?.env?.OTEL_EXPORTER_OTLP_HEADERS?bk(process?.env?.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function Ip(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function _k(e={}){return{...$k(),...e,metadata:Ip(e.metadata)}}function xp(e){let t=e?.trim();return t?t:void 0}function kk(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let a=xp(n.rootSessionId);if(!a)return;return{rootSessionId:a}}function wk(e){return xp(e?.rootSessionId)}function Ik(e){if(e<0||e>1024)throw RangeError("Wrong ID size");if(!je||je.length<e)je=Buffer.allocUnsafe(e*Sk),ws.getRandomValues(je),Ve=0;else if(Ve+e>je.length)ws.getRandomValues(je),Ve=0;Ve+=e}function xk(e){return Ik(e|=0),je.subarray(Ve-e,Ve)}function zk(e,t,n){let a=256-256%e.length;if(a===256){let r=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let l=n(o),d=o;while(d--)if(s+=e[l[d]&r],s.length>=o)return s}}}let i=Math.ceil(409.6*t/a);return(r=t)=>{if(!r)return"";let o="";while(!0){let s=n(i),l=i;while(l--)if(s[l]<a){if(o+=e[s[l]%e.length],o.length>=r)return o}}}}function Uk(e,t=21){return zk(e,t,xk)}function Ek(e="",t=""){let n=Uk("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function Up(e){return typeof e==="string"&&Tk.has(e)}function jk(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(Up);return[...new Set(t)]}function Ok(e,t){return new Set(e??zp).has(t)}function Nk(){return{workspaces:{}}}function Ak(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return Pp.parse(n)}function C(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function kw(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let a of["oneOf","anyOf","allOf"]){let i=n[a];if(!Array.isArray(i)||i.length===0)continue;if(a==="allOf"){if(i.some((r)=>r&&typeof r==="object"&&r.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((r)=>r&&typeof r==="object"&&r.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${a}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function ww(e){let t=kw(e.inputSchema instanceof u.ZodType?$p(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function Zp(e){return Dp.includes(e)}function Sw(e,t){if(!Zp(t))return!1;let n=e instanceof Error?e.message.toLowerCase():String(e);return Cp.some((a)=>n.includes(a))}function Ow(e){let t=e.toLowerCase();if(Tw.has(t))return!0;for(let n of jw){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let a=t[t.length-n.length-1];if(a==="_"||a==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function Aw(e){let t=e;for(let{pattern:n,replacement:a}of Nw)t=t.replace(n,a);return t}function Vn(e){let t=e;for(let{pattern:n,replacement:a}of Dw)t=t.replace(n,a);return t}function vi(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(vi(t))}catch{}return Aw(e)}if(Array.isArray(e))return e.map(vi);if(typeof e==="object"){let t={};for(let[n,a]of Object.entries(e))if(Ow(n)&&(typeof a==="string"||typeof a==="number"))t[n]="REDACTED";else t[n]=vi(a);return t}return e}function Zw(e){let t={...e};if(t.body)delete t.body;if(typeof t.path==="string")t.path=Vn(t.path);if(t.response!==void 0)t.response=vi(t.response);return t}function Rp(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,a=t.pathname+t.search;return{scope:n,path:a}}catch{return{scope:"",path:e}}}function Mp(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function Lp(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function Cw(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
30
+ ${Rs(d,i,r)}`.trim();return p}return(n==="yolo"?Uk:zk).replace("{{PLATFORM_NAME}}",a).replace("{{CWD}}",d).replace("{{CURRENT_DATE}}",new Date().toLocaleDateString()).replace("{{IDE_NAME}}",t).replace("{{CLINE_METADATA}}",c?Rs(d,i,r):"").replace("{{CLINE_RULES}}",o||"").trim()}function Fp(e){let t=e?.trim().toLowerCase();if(t==="development"||t==="production")return t;return}function Mk(e){for(let t=0;t<e.length;t+=1){let n=e[t]?.trim();if(!n)continue;if(n==="--conditions"&&e[t+1]?.trim()==="development")return!0;if(n.startsWith("--conditions=")&&n.slice(13).split(",").map((a)=>a.trim()).includes("development"))return!0}return!1}function Fk(e){if(!e?.trim())return!1;let t=Lk(e).toLowerCase();return t==="node"||t==="node.exe"||t==="bun"||t==="bun.exe"}function Jk(e){return e.some((t)=>t==="--inspect"||t.startsWith("--inspect=")||t==="--inspect-brk"||t.startsWith("--inspect-brk="))}function Kk(e){return e.some((t)=>t==="--enable-source-maps")}function Gk(e){return e[Lp]?.trim()||"127.0.0.1"}function Wk(e){let t=e[Mp]?.trim();if(!t)return;let n=Number.parseInt(t,10);return Number.isInteger(n)&&n>0?n:void 0}function Bk(e){switch(e){case"rpc":return 0;case"hook":return 1;case"plugin-sandbox":return 2;case"connector":return 3;case"sandbox":return 4;default:return 9}}function go(e={}){let t=e.env??process.env,n=e.execArgv??process.execArgv,a=Fp(t[Di]);if(a)return a;let i=t.NODE_ENV?.trim().toLowerCase();if(i==="production")return"production";if(i==="development")return"development";return Mk(n)?"development":"production"}function Hk(e=process.env,t={}){if(Fp(e[Di]))return e;return{...e,[Di]:go({env:e,execArgv:t.execArgv})}}function Xk(e,t={}){if(e.length===0||!Fk(e[0]))return[...e];if(go(t)!=="development")return[...e];let n=t.env??process.env,a=[...n.NODE_OPTIONS?.split(/\s+/).filter(Boolean)??[],...e.slice(1)],i=[];if(!Jk(a)){let r=Gk(n),o=Wk(n),s=o===void 0?0:o+Bk(t.debugRole);i.push(`--inspect=${r}:${s}`)}if(!Kk(a))i.push("--enable-source-maps");return[e[0],...i,...e.slice(1)]}function Ls(e){let t=e?.trim().toLowerCase();if(t==="production"||t==="staging"||t==="local")return t;return}function Qk(){if(typeof process>"u"||!process?.env)return{};return process.env}function Jp(e={}){let t=e.env??Qk();return Ls(t.CLINE_ENVIRONMENT_OVERRIDE)??Ls(t.CLINE_ENVIRONMENT)??"production"}function ho(e){if(typeof e==="string")return lr[e];return lr[Jp(e)]}function tw(e=process.env){return e.CLINE_RUN_AS_HUB_DAEMON==="1"}function xn(e,t){if(!e)return;e.capture({event:t.event??"sdk.error",properties:Kp(t)})}function Kp(e){return{...e.context??{},component:e.component,operation:e.operation,severity:e.severity??"error",handled:e.handled??!0,...Gp(e.error,e.messageLimit)}}function Gp(e,t=500){let n=aw(e)?e:void 0,a=e instanceof Error?e:void 0,i=a?.message??Ms(n?.message)??(typeof e==="string"?e:String(e)),r=ow(n?.code),o=Vn(n?.status)??Vn(n?.statusCode)??Vn(n?.responseStatus);return{error_type:a?.name?.trim()||Ms(n?.name)||a?.constructor?.name||"Error",error_message:rw(nw(i),t),...r!==void 0?{error_code:r}:{},...o!==void 0?{error_status:o}:{}}}function nw(e){return e.replace(/(authorization=Bearer\s+)[^&\s]+/gi,"$1[redacted]").replace(/(api[_-]?key|access[_-]?token|refresh[_-]?token|authorization|password|secret)=([^&\s]+)/gi,"$1=[redacted]").replace(/(Bearer\s+)[A-Za-z0-9._~+/-]+=*/gi,"$1[redacted]").replace(/\/Users\/[^/\s]+/g,"/Users/[redacted]").replace(/\/home\/[^/\s]+/g,"/home/[redacted]").replace(/([A-Za-z]:[\\/]+Users[\\/]+)[^\\/\s]+/g,"$1[redacted]")}function rw(e,t){let n=Math.max(1,Math.floor(t));return e.length>n?e.substring(0,n):e}function aw(e){return typeof e==="object"&&e!==null}function Ms(e){return typeof e==="string"&&e.trim().length>0?e:void 0}function ow(e){if(typeof e==="string"&&e.trim().length>0)return e;if(typeof e==="number"&&Number.isFinite(e))return e;return}function Vn(e){return typeof e==="number"&&Number.isFinite(e)?e:void 0}function sw(e){let t={};if(!e)return t;try{e.split(",").forEach((n)=>{let a=n.indexOf("=");if(a<=0)return;let i=decodeURIComponent(n.substring(0,a).trim()),r=decodeURIComponent(n.substring(a+1).trim());if(!i||!r)return;t[i]=r})}catch{}return t}function uw(){return{enabled:process?.env?.OTEL_TELEMETRY_ENABLED==="1"||process?.env?.OTEL_TELEMETRY_ENABLED==="true",metricsExporter:process?.env?.OTEL_METRICS_EXPORTER||"otlp",logsExporter:process?.env?.OTEL_LOGS_EXPORTER||"otlp",tracesExporter:process?.env?.OTEL_TRACES_EXPORTER,otlpProtocol:process?.env?.OTEL_EXPORTER_OTLP_PROTOCOL||"http/json",otlpEndpoint:process?.env?.OTEL_EXPORTER_OTLP_ENDPOINT,metricExportInterval:process?.env?.OTEL_METRIC_EXPORT_INTERVAL?Number.parseInt(process?.env?.OTEL_METRIC_EXPORT_INTERVAL,10):void 0,otlpHeaders:process?.env?.OTEL_EXPORTER_OTLP_HEADERS?sw(process?.env?.OTEL_EXPORTER_OTLP_HEADERS):void 0}}function Wp(e={}){return{extension_version:"unknown",cline_type:"unknown",platform:"terminal",platform_version:process?.version||"unknown",os_type:process?.platform||"unknown",os_version:process?.platform==="win32"?process?.env?.OS??"unknown":"unknown",...e}}function lw(e={}){return{...uw(),...e,metadata:Wp(e.metadata)}}function Bp(e){let t=e?.trim();return t?t:void 0}function dw(e,t){if(!e)return;let n=typeof e==="function"?e(t):e;if(!n)return;let a=Bp(n.rootSessionId);if(!a)return;return{rootSessionId:a}}function cw(e){return Bp(e?.rootSessionId)}function fw(e){if(e<0||e>1024)throw RangeError("Wrong ID size");if(!Re||Re.length<e)Re=Buffer.allocUnsafe(e*mw),Fs.getRandomValues(Re),it=0;else if(it+e>Re.length)Fs.getRandomValues(Re),it=0;it+=e}function pw(e){return fw(e|=0),Re.subarray(it-e,it)}function vw(e,t,n){let a=256-256%e.length;if(a===256){let r=e.length-1;return(o=t)=>{if(!o)return"";let s="";while(!0){let l=n(o),d=o;while(d--)if(s+=e[l[d]&r],s.length>=o)return s}}}let i=Math.ceil(409.6*t/a);return(r=t)=>{if(!r)return"";let o="";while(!0){let s=n(i),l=i;while(l--)if(s[l]<a){if(o+=e[s[l]%e.length],o.length>=r)return o}}}}function gw(e,t=21){return vw(e,t,pw)}function hw(e="",t=""){let n=gw("1234567890abcdefghijklmnopqrstuvwxyz",10);return`${e}${Date.now()}_${n(5)}${t}`}function Xp(e){return typeof e==="string"&&bw.has(e)}function $w(e){if(!Array.isArray(e))return;let t=e.map((n)=>typeof n==="string"?n.trim():"").filter(Xp);return[...new Set(t)]}function _w(e,t){return new Set(e??Hp).has(t)}function kw(){return{workspaces:{}}}function ww(e,t){let n={...e,workspaces:{...e.workspaces,[t.rootPath]:t}};if(!n.currentWorkspacePath)n.currentWorkspacePath=t.rootPath;return Yp.parse(n)}function C(e){return u.preprocess((t)=>t===null?void 0:t,e.optional())}function dS(e){let{$schema:t,...n}=e;if(typeof n.type==="string")return n;if("properties"in n||"required"in n||"additionalProperties"in n)return{type:"object",...n};for(let a of["oneOf","anyOf","allOf"]){let i=n[a];if(!Array.isArray(i)||i.length===0)continue;if(a==="allOf"){if(i.some((r)=>r&&typeof r==="object"&&r.type==="object"))return{type:"object",...n};throw Error('Tool inputSchema must describe an object at the top level, but the schema has a top-level "allOf" with no branch that asserts type: "object". Add type: "object" to at least one allOf branch to make the object constraint explicit.')}if(i.every((r)=>r&&typeof r==="object"&&r.type==="object"))return{type:"object",...n};throw Error(`Tool inputSchema must describe an object at the top level, but the schema has a top-level "${a}" whose branches include non-object types. Pass the strict object schema as inputSchema and reserve union/coercion schemas for use inside execute().`)}return n}function cS(e){let t=dS(e.inputSchema instanceof u.ZodType?Rp(e.inputSchema):e.inputSchema);return{name:e.name,description:e.description,inputSchema:t,lifecycle:e.lifecycle,timeoutMs:e.timeoutMs??30000,retryable:e.retryable??!0,maxRetries:e.maxRetries??3,execute:e.execute}}function rv(e){return nv.includes(e)}function mS(e,t){if(!rv(t))return!1;let n=e instanceof Error?e.message.toLowerCase():String(e);return av.some((a)=>n.includes(a))}function _S(e){let t=e.toLowerCase();if(bS.has(t))return!0;for(let n of $S){if(t===n)return!0;if(t.endsWith(n)&&t.length>n.length){let a=t[t.length-n.length-1];if(a==="_"||a==="-")return!0;let i=e[e.length-n.length];if(i&&i===i.toUpperCase()&&i!==i.toLowerCase())return!0}if(t.endsWith(`_${n}`))return!0}return!1}function wS(e){let t=e;for(let{pattern:n,replacement:a}of kS)t=t.replace(n,a);return t}function dr(e){let t=e;for(let{pattern:n,replacement:a}of SS)t=t.replace(n,a);return t}function Ii(e){if(e===null||e===void 0)return e;if(typeof e==="string"){try{let t=JSON.parse(e);if(typeof t==="object"&&t!==null)return JSON.stringify(Ii(t))}catch{}return wS(e)}if(Array.isArray(e))return e.map(Ii);if(typeof e==="object"){let t={};for(let[n,a]of Object.entries(e))if(_S(n)&&(typeof a==="string"||typeof a==="number"))t[n]="REDACTED";else t[n]=Ii(a);return t}return e}function IS(e){let t={...e};if(t.body)delete t.body;if(typeof t.path==="string")t.path=dr(t.path);if(t.response!==void 0)t.response=Ii(t.response);return t}function ov(e){try{let t=new URL(e),n=`${t.protocol}//${t.host}`,a=t.pathname+t.search;return{scope:n,path:a}}catch{return{scope:"",path:e}}}function sv(e){if(typeof e==="string")return e;if(e instanceof URL)return e.toString();if(e&&typeof e.url==="string")return e.url;return String(e)}function uv(e,t){if(t?.method)return t.method.toUpperCase();if(e&&typeof e.method==="string")return e.method.toUpperCase();return"GET"}function xS(e){if(!e)return null;if(!process.env.CLINE_VCR_CASSETTE)return process.stderr.write(`[VCR] No CLINE_VCR_CASSETTE: requests will not be recorded or played back.
31
31
  `),null;if(e!=="record"&&e!=="playback")process.stderr.write(`[VCR] Invalid CLINE_VCR value: "${e}". Expected "record" or "playback".
32
- `),process.exit(1);let t=Pw(process.env.CLINE_VCR_CASSETTE),n=process.env.CLINE_VCR_FILTER??"";return{mode:e,cassettePath:t,filter:n}}function Rw(e,t){let n=[],a=[],i=globalThis.fetch;function r(l){if(l.finalized)return;l.finalized=!0;let d=new TextDecoder,c=l.chunks.map((v)=>d.decode(v,{stream:!0})).join("")+d.decode(),p;try{p=JSON.parse(c)}catch{p=c}n.push({scope:l.scope,method:l.method,path:l.path,body:l.body,status:l.status,response:p,responseIsBinary:!1,contentType:l.contentType})}globalThis.fetch=Object.assign(async(l,d)=>{let c=Mp(l),p=Lp(l,d),{scope:v,path:f}=Rp(c),y;if(d?.body)y=typeof d.body==="string"?d.body:d.body instanceof ArrayBuffer?new TextDecoder().decode(d.body):void 0;else if(l instanceof Request)try{y=await l.clone().text()}catch{}let k=await i(l,d);if(t&&!f.includes(t))return k;let T=k.headers.get("content-type")??void 0;if(!k.body)return n.push({scope:v,method:p,path:f,body:y??"",status:k.status,response:"",responseIsBinary:!1,contentType:T}),k;let j={scope:v,method:p,path:f,body:y??"",status:k.status,contentType:T,chunks:[],finalized:!1};a.push(j);let M=k.body,S=new TransformStream({transform(W,fe){j.chunks.push(W),fe.enqueue(W)},flush(){r(j)}}),Z=M.pipeThrough(S);return new Response(Z,{status:k.status,statusText:k.statusText,headers:k.headers})},{preconnect:(l)=>{}});let o=t?`matching path "*${t}*"`:"all paths";process.stderr.write(`[VCR] Recording HTTP requests (${o}). Cassette will be saved to: ${e}
33
- `);let s=!1;ap(()=>{if(s)return;s=!0,globalThis.fetch=i;for(let c of a)r(c);if(n.length===0){process.stderr.write(`[VCR] No HTTP requests${t?` matching "${t}"`:""} were recorded.
34
- `);return}let l=Ew(e);xw(l,{recursive:!0});let d=n.map(Zw);Uw(e,JSON.stringify(d,null,2)),process.stderr.write(`[VCR] Saved ${d.length} recorded HTTP interaction(s) to ${e}
35
- `)})}function Mw(e){let t=[],n=e.split(/\n\n/);for(let a of n){let i=a.trim();if(i)t.push(`${i}
32
+ `),process.exit(1);let t=yS(process.env.CLINE_VCR_CASSETTE),n=process.env.CLINE_VCR_FILTER??"";return{mode:e,cassettePath:t,filter:n}}function zS(e,t){let n=[],a=[],i=globalThis.fetch;function r(l){if(l.finalized)return;l.finalized=!0;let d=new TextDecoder,c=l.chunks.map((v)=>d.decode(v,{stream:!0})).join("")+d.decode(),p;try{p=JSON.parse(c)}catch{p=c}n.push({scope:l.scope,method:l.method,path:l.path,body:l.body,status:l.status,response:p,responseIsBinary:!1,contentType:l.contentType})}globalThis.fetch=Object.assign(async(l,d)=>{let c=sv(l),p=uv(l,d),{scope:v,path:f}=ov(c),y;if(d?.body)y=typeof d.body==="string"?d.body:d.body instanceof ArrayBuffer?new TextDecoder().decode(d.body):void 0;else if(l instanceof Request)try{y=await l.clone().text()}catch{}let _=await i(l,d);if(t&&!f.includes(t))return _;let O=_.headers.get("content-type")??void 0;if(!_.body)return n.push({scope:v,method:p,path:f,body:y??"",status:_.status,response:"",responseIsBinary:!1,contentType:O}),_;let P={scope:v,method:p,path:f,body:y??"",status:_.status,contentType:O,chunks:[],finalized:!1};a.push(P);let L=_.body,S=new TransformStream({transform(H,ge){P.chunks.push(H),ge.enqueue(H)},flush(){r(P)}}),Z=L.pipeThrough(S);return new Response(Z,{status:_.status,statusText:_.statusText,headers:_.headers})},{preconnect:(l)=>{}});let o=t?`matching path "*${t}*"`:"all paths";process.stderr.write(`[VCR] Recording HTTP requests (${o}). Cassette will be saved to: ${e}
33
+ `);let s=!1;Sp(()=>{if(s)return;s=!0,globalThis.fetch=i;for(let c of a)r(c);if(n.length===0){process.stderr.write(`[VCR] No HTTP requests${t?` matching "${t}"`:""} were recorded.
34
+ `);return}let l=hS(e);pS(l,{recursive:!0});let d=n.map(IS);gS(e,JSON.stringify(d,null,2)),process.stderr.write(`[VCR] Saved ${d.length} recorded HTTP interaction(s) to ${e}
35
+ `)})}function US(e){let t=[],n=e.split(/\n\n/);for(let a of n){let i=a.trim();if(i)t.push(`${i}
36
36
 
37
- `)}return t}function Lw(e,t){let n=new TextEncoder,a=0;return new ReadableStream({async pull(i){if(a>=e.length){i.close();return}if(a>0&&t>0)await new Promise((o)=>setTimeout(o,t));let r=e[a];if(r===void 0){i.close();return}i.enqueue(n.encode(r)),a+=1}})}function Fw(e,t){if(!Iw(e))process.stderr.write(`[VCR] Cassette file not found: ${e}
38
- `),process.exit(1);let n=JSON.parse(zw(e,"utf-8")),a=Number.parseInt(process.env.CLINE_VCR_SSE_DELAY??"100",10),i=Array(n.length).fill(!1),r=globalThis.fetch;globalThis.fetch=Object.assign(async(s,l)=>{let d=Mp(s),c=Lp(s,l),{path:p}=Rp(d),v=Vn(p);if(t&&!p.includes(t))return r(s,l);let f=n.findIndex((y,k)=>{if(i[k])return!1;let T=Vn(y.path);return y.method.toUpperCase()===c&&T===v});if(f>=0){i[f]=!0;let y=n[f];if(!y)return r(s,l);let k=typeof y.response==="string"?y.response:JSON.stringify(y.response),T=new Headers;if(y.contentType)T.set("content-type",y.contentType);else if(typeof y.response==="string"&&y.response.trimStart().startsWith("data:"))T.set("content-type","text/event-stream");else if(typeof y.response==="object")T.set("content-type","application/json");let j=T.get("content-type")?.includes("text/event-stream")??!1;if(j)T.set("cache-control","no-cache"),T.set("connection","keep-alive");if(j&&typeof y.response==="string"){let M=Mw(y.response);if(M.length>1){let S=Lw(M,a);return new Response(S,{status:y.status,headers:T})}}return new Response(k,{status:y.status,headers:T})}if(!t)throw Error(`[VCR] No matching recording for ${c} ${d} (path: ${v}). ${n.length} recording(s) loaded from ${e}.`);return r(s,l)},{preconnect:(s)=>{}});let o=t?`(only paths matching "*${t}*", all other requests go through normally)`:"(all requests intercepted)";process.stderr.write(`[VCR] Playing back ${n.length} recorded HTTP interaction(s) from ${e} ${o}
39
- `)}function Jw(e){let t=Cw(e);if(!t)return;if(t.mode==="record")Rw(t.cassettePath,t.filter);else Fw(t.cassettePath,t.filter)}var lg,dg=(e)=>e,he=(e,t)=>{for(var n in t)lg(e,n,{get:t[n],enumerable:!0,configurable:!0,set:cg.bind(t,n)})},Cn,vg,gg,Ao,zs="enterprise.blobUpload",gi,Eg="remote://",Og="remote-config",u,Cs,Lo,Rs,Ms,we,It,bt,U,Fo,qn,Js,Qg=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},yi,Gs,Hs,Bs,qs=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,hi,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},er,q,zt=(e)=>(t,n,a,i)=>{let r=a?{...a,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},r);if(o instanceof Promise)throw new we;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((l)=>Q(l,r,J())));throw qn(s,i?.callee),s}return o.value},Mn,Ut=(e)=>async(t,n,a,i)=>{let r=a?{...a,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},r);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((l)=>Q(l,r,J())));throw qn(s,i?.callee),s}return o.value},Ln,Et=(e)=>(t,n,a)=>{let i=a?{...a,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},i);if(r instanceof Promise)throw new we;return r.issues.length?{success:!1,error:new(e??er)(r.issues.map((o)=>Q(o,i,J())))}:{success:!0,data:r.value}},nu,Pt=(e)=>async(t,n,a)=>{let i=a?{...a,async:!0}:{async:!0},r=t._zod.run({value:n,issues:[]},i);if(r instanceof Promise)r=await r;return r.issues.length?{success:!1,error:new e(r.issues.map((o)=>Q(o,i,J())))}:{success:!0,data:r.value}},ru,nr=(e)=>(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return zt(e)(t,n,i)},mh,rr=(e)=>(t,n,a)=>{return zt(e)(t,n,a)},fh,ar=(e)=>async(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Ut(e)(t,n,i)},ph,or=(e)=>async(t,n,a)=>{return Ut(e)(t,n,a)},vh,sr=(e)=>(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Et(e)(t,n,i)},gh,ur=(e)=>(t,n,a)=>{return Et(e)(t,n,a)},hh,lr=(e)=>async(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Pt(e)(t,n,i)},yh,dr=(e)=>async(t,n,a)=>{return Pt(e)(t,n,a)},bh,Se,au,ou,su,uu,lu,du,cu,$h,mu,qe=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},_h,kh,wh,fu,Sh,Ih,pu,xh,zh,Uh="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",gu,hu,yu=(e)=>{let t=ge(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},bu,$u,_u,cr,Eh,Ph,ku,wu,Su="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Iu,Eu=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Pu,Tu,mr,ju,Ou,Nu,Au,Du,Th,jh,Oh,Nh,Ah,Dh,Zh,Ch,Rh,Mh,Lh,Fh,Jh,Kh,Gh,Wh,R,Zu,fr,pr,Cu,Ru,Mu,Lu,Fu,Ju,Ku,Gu,Wu,Ot,Hu,Bu,Xu,Vu,Yu,Qu,qu,el,tl,il,x,Nt,A,nl,rl,al,ol,sl,ul,ll,dl,cl,ml,fl,pl,vl,gl,hl,yl,bl,$l,_l,kl,wl,Il,xl,Ul,El,hr,Pl,yr,br,Tl,jl,Ol,Nl,Al,Dl,Zl,Cl,Rl,Ml,Jl,Kl,Ei,Gl,Wl,Hl,$r,Bl,Xl,Vl,Yl,Ql,ql,ed,_r,td,id,nd,rd,ad,od,sd,ud,kr,wr,ld,dd,cd,md,fd,pd,vd,Sr,Hh=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${r}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${_(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${r} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${r} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(r.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${r.suffix}"`;if(r.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${r.includes}"`;if(r.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${r.pattern}`;return`${n[r.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},Xh=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${r}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${_(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${r}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Yanlış mətn: "${r.prefix}" ilə başlamalıdır`;if(r.format==="ends_with")return`Yanlış mətn: "${r.suffix}" ilə bitməlidir`;if(r.format==="includes")return`Yanlış mətn: "${r.includes}" daxil olmalıdır`;if(r.format==="regex")return`Yanlış mətn: ${r.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[r.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},Yh=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},a={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${r}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${_(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=rs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${r}${i.maximum.toString()} ${l}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=rs(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${r}${i.minimum.toString()} ${l}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${r.prefix}"`;if(r.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${r.suffix}"`;if(r.format==="includes")return`Няправільны радок: павінен змяшчаць "${r.includes}"`;if(r.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${r.pattern}`;return`Няправільны ${n[r.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},qh=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},a={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${r}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${_(i.values[0])}`;return`Невалидна опция: очаквано едно от ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${r}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${r}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Невалиден низ: трябва да започва с "${r.prefix}"`;if(r.format==="ends_with")return`Невалиден низ: трябва да завършва с "${r.suffix}"`;if(r.format==="includes")return`Невалиден низ: трябва да включва "${r.includes}"`;if(r.format==="regex")return`Невалиден низ: трябва да съвпада с ${r.pattern}`;let o="Невалиден";if(r.format==="emoji")o="Невалидно";if(r.format==="datetime")o="Невалидно";if(r.format==="date")o="Невалидна";if(r.format==="time")o="Невалидно";if(r.format==="duration")o="Невалидна";return`${o} ${n[r.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},ty=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${r}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${_(i.values[0])}`;return`Opció invàlida: s'esperava una de ${g(i.values," o ")}`;case"too_big":{let r=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${r} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${r} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Format invàlid: ha de començar amb "${r.prefix}"`;if(r.format==="ends_with")return`Format invàlid: ha d'acabar amb "${r.suffix}"`;if(r.format==="includes")return`Format invàlid: ha d'incloure "${r.includes}"`;if(r.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${r.pattern}`;return`Format invàlid per a ${n[r.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},ny=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},a={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${r}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${_(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${r}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${r}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neplatný řetězec: musí začínat na "${r.prefix}"`;if(r.format==="ends_with")return`Neplatný řetězec: musí končit na "${r.suffix}"`;if(r.format==="includes")return`Neplatný řetězec: musí obsahovat "${r.includes}"`;if(r.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${r.pattern}`;return`Neplatný formát ${n[r.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${g(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},ay=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},a={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${r}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${_(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${r} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${r} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ugyldig streng: skal starte med "${r.prefix}"`;if(r.format==="ends_with")return`Ugyldig streng: skal ende med "${r.suffix}"`;if(r.format==="includes")return`Ugyldig streng: skal indeholde "${r.includes}"`;if(r.format==="regex")return`Ugyldig streng: skal matche mønsteret ${r.pattern}`;return`Ugyldig ${n[r.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},sy=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},a={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${r}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${_(i.values[0])}`;return`Ungültige Option: erwartet eine von ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${r}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${r}${i.maximum.toString()} ist`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${r}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${r}${i.minimum.toString()} ist`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ungültiger String: muss mit "${r.prefix}" beginnen`;if(r.format==="ends_with")return`Ungültiger String: muss mit "${r.suffix}" enden`;if(r.format==="includes")return`Ungültiger String: muss "${r.includes}" enthalten`;if(r.format==="regex")return`Ungültiger String: muss dem Muster ${r.pattern} entsprechen`;return`Ungültig: ${n[r.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},ly=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${r}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${_(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${r}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${r}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${r.prefix}"`;if(r.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${r.suffix}"`;if(r.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${r.includes}"`;if(r.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${r.pattern}`;return`Μη έγκυρο: ${n[r.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${g(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},cy=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;return`Invalid input: expected ${r}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Invalid option: expected one of ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${r}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${r}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Invalid string: must start with "${r.prefix}"`;if(r.format==="ends_with")return`Invalid string: must end with "${r.suffix}"`;if(r.format==="includes")return`Invalid string: must include "${r.includes}"`;if(r.format==="regex")return`Invalid string: must match pattern ${r.pattern}`;return`Invalid ${n[r.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((r)=>`'${r}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},my=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},a={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${r}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${_(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${r}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${r}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${r.prefix}"`;if(r.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${r.suffix}"`;if(r.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${r.includes}"`;if(r.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${r.pattern}`;return`Nevalida ${n[r.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},py=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${r}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${_(i.values[0])}`;return`Opción inválida: se esperaba una de ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${r}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${r}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Cadena inválida: debe comenzar con "${r.prefix}"`;if(r.format==="ends_with")return`Cadena inválida: debe terminar en "${r.suffix}"`;if(r.format==="includes")return`Cadena inválida: debe incluir "${r.includes}"`;if(r.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${r.pattern}`;return`Inválido ${n[r.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${a[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${a[i.origin]??i.origin}`;default:return"Entrada inválida"}}},gy=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},a={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: می‌بایست instanceof ${i.expected} می‌بود، ${s} دریافت شد`;return`ورودی نامعتبر: می‌بایست ${r} می‌بود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: می‌بایست ${_(i.values[0])} می‌بود`;return`گزینه نامعتبر: می‌بایست یکی از ${g(i.values,"|")} می‌بود`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${r}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${r}${i.maximum.toString()} باشد`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${r}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${r}${i.minimum.toString()} باشد`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`رشته نامعتبر: باید با "${r.prefix}" شروع شود`;if(r.format==="ends_with")return`رشته نامعتبر: باید با "${r.suffix}" تمام شود`;if(r.format==="includes")return`رشته نامعتبر: باید شامل "${r.includes}" باشد`;if(r.format==="regex")return`رشته نامعتبر: باید با الگوی ${r.pattern} مطابقت داشته باشد`;return`${n[r.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${g(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},yy=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${r}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${_(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${r}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${r}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${r.prefix}"`;if(r.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${r.suffix}"`;if(r.format==="includes")return`Virheellinen syöte: täytyy sisältää "${r.includes}"`;if(r.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${r.pattern}`;return`Virheellinen ${n[r.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${g(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},$y=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},a={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${r} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${_(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${g(i.values,"|")} attendue`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${a[i.origin]??"valeur"} doit ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${a[i.origin]??"valeur"} doit être ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${a[i.origin]??"valeur"} doit ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${a[i.origin]??"valeur"} doit être ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chaîne invalide : doit commencer par "${r.prefix}"`;if(r.format==="ends_with")return`Chaîne invalide : doit se terminer par "${r.suffix}"`;if(r.format==="includes")return`Chaîne invalide : doit inclure "${r.includes}"`;if(r.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${r.pattern}`;return`${n[r.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},ky=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${r}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${_(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${r}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${r}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chaîne invalide : doit commencer par "${r.prefix}"`;if(r.format==="ends_with")return`Chaîne invalide : doit se terminer par "${r.suffix}"`;if(r.format==="includes")return`Chaîne invalide : doit inclure "${r.includes}"`;if(r.format==="regex")return`Chaîne invalide : doit correspondre au motif ${r.pattern}`;return`${n[r.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},Sy=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(d)=>d?e[d]:void 0,a=(d)=>{let c=n(d);if(c)return c.label;return d??e.unknown.label},i=(d)=>`ה${a(d)}`,r=(d)=>{return(n(d)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(d)=>{if(!d)return null;return t[d]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},l={nan:"NaN"};return(d)=>{switch(d.code){case"invalid_type":{let c=d.expected,p=l[c??""]??a(c),v=w(d.input),f=l[v]??e[v]?.label??v;if(/^[A-Z]/.test(d.expected))return`קלט לא תקין: צריך להיות instanceof ${d.expected}, התקבל ${f}`;return`קלט לא תקין: צריך להיות ${p}, התקבל ${f}`}case"invalid_value":{if(d.values.length===1)return`ערך לא תקין: הערך חייב להיות ${_(d.values[0])}`;let c=d.values.map((v)=>_(v));if(d.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let p=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${p}`}case"too_big":{let c=o(d.origin),p=i(d.origin??"value");if(d.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${p} צריכה להכיל ${d.maximum.toString()} ${c?.unit??""} ${d.inclusive?"או פחות":"לכל היותר"}`.trim();if(d.origin==="number"){let y=d.inclusive?`קטן או שווה ל-${d.maximum}`:`קטן מ-${d.maximum}`;return`גדול מדי: ${p} צריך להיות ${y}`}if(d.origin==="array"||d.origin==="set"){let y=d.origin==="set"?"צריכה":"צריך",k=d.inclusive?`${d.maximum} ${c?.unit??""} או פחות`:`פחות מ-${d.maximum} ${c?.unit??""}`;return`גדול מדי: ${p} ${y} להכיל ${k}`.trim()}let v=d.inclusive?"<=":"<",f=r(d.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${p} ${f} ${v}${d.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${p} ${f} ${v}${d.maximum.toString()}`}case"too_small":{let c=o(d.origin),p=i(d.origin??"value");if(d.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${p} צריכה להכיל ${d.minimum.toString()} ${c?.unit??""} ${d.inclusive?"או יותר":"לפחות"}`.trim();if(d.origin==="number"){let y=d.inclusive?`גדול או שווה ל-${d.minimum}`:`גדול מ-${d.minimum}`;return`קטן מדי: ${p} צריך להיות ${y}`}if(d.origin==="array"||d.origin==="set"){let y=d.origin==="set"?"צריכה":"צריך";if(d.minimum===1&&d.inclusive){let T=d.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${p} ${y} להכיל ${T}`}let k=d.inclusive?`${d.minimum} ${c?.unit??""} או יותר`:`יותר מ-${d.minimum} ${c?.unit??""}`;return`קטן מדי: ${p} ${y} להכיל ${k}`.trim()}let v=d.inclusive?">=":">",f=r(d.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${p} ${f} ${v}${d.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${p} ${f} ${v}${d.minimum.toString()}`}case"invalid_format":{let c=d;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let p=s[c.format],v=p?.label??c.format,f=(p?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${f}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${d.divisor}`;case"unrecognized_keys":return`מפתח${d.keys.length>1?"ות":""} לא מזוה${d.keys.length>1?"ים":"ה"}: ${g(d.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(d.origin??"array")}`;default:return"קלט לא תקין"}}},xy=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},a={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${r}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${_(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${r}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${r}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neispravan tekst: mora započinjati s "${r.prefix}"`;if(r.format==="ends_with")return`Neispravan tekst: mora završavati s "${r.suffix}"`;if(r.format==="includes")return`Neispravan tekst: mora sadržavati "${r.includes}"`;if(r.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${r.pattern}`;return`Neispravna ${n[r.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${a[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${a[i.origin]??i.origin}`;default:return"Neispravan unos"}}},Uy=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},a={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${r}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${_(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${r}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${r}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Érvénytelen string: "${r.prefix}" értékkel kell kezdődnie`;if(r.format==="ends_with")return`Érvénytelen string: "${r.suffix}" értékkel kell végződnie`;if(r.format==="includes")return`Érvénytelen string: "${r.includes}" értéket kell tartalmaznia`;if(r.format==="regex")return`Érvénytelen string: ${r.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[r.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},Py=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},a={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${r}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${_(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=as(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${Xe(i.origin??"արժեք")} կունենա ${r}${i.maximum.toString()} ${l}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${Xe(i.origin??"արժեք")} լինի ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=as(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${Xe(i.origin)} կունենա ${r}${i.minimum.toString()} ${l}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${Xe(i.origin)} լինի ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${r.prefix}"-ով`;if(r.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${r.suffix}"-ով`;if(r.format==="includes")return`Սխալ տող․ պետք է պարունակի "${r.includes}"`;if(r.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${r.pattern} ձևաչափին`;return`Սխալ ${n[r.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${g(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${Xe(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${Xe(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},jy=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${r}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${_(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${r}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${r}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`String tidak valid: harus dimulai dengan "${r.prefix}"`;if(r.format==="ends_with")return`String tidak valid: harus berakhir dengan "${r.suffix}"`;if(r.format==="includes")return`String tidak valid: harus menyertakan "${r.includes}"`;if(r.format==="regex")return`String tidak valid: harus sesuai pola ${r.pattern}`;return`${n[r.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},Ny=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},a={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${r}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${_(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${r}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${r}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ógildur strengur: verður að byrja á "${r.prefix}"`;if(r.format==="ends_with")return`Ógildur strengur: verður að enda á "${r.suffix}"`;if(r.format==="includes")return`Ógildur strengur: verður að innihalda "${r.includes}"`;if(r.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${r.pattern}`;return`Rangt ${n[r.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${g(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},Dy=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${r}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${_(i.values[0])}`;return`Opzione non valida: atteso uno tra ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${r}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${r}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Stringa non valida: deve iniziare con "${r.prefix}"`;if(r.format==="ends_with")return`Stringa non valida: deve terminare con "${r.suffix}"`;if(r.format==="includes")return`Stringa non valida: deve includere "${r.includes}"`;if(r.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${r.pattern}`;return`Input non valido: ${n[r.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${g(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},Cy=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},a={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${r}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${_(i.values[0])}が期待されました`;return`無効な選択: ${g(i.values,"、")}のいずれかである必要があります`;case"too_big":{let r=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${r}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${r}必要があります`}case"too_small":{let r=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${r}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${r}必要があります`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`無効な文字列: "${r.prefix}"で始まる必要があります`;if(r.format==="ends_with")return`無効な文字列: "${r.suffix}"で終わる必要があります`;if(r.format==="includes")return`無効な文字列: "${r.includes}"を含む必要があります`;if(r.format==="regex")return`無効な文字列: パターン${r.pattern}に一致する必要があります`;return`無効な${n[r.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${g(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},My=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},a={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${r}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${_(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${g(i.values,"|")}-დან`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${r.prefix}"-ით`;if(r.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${r.suffix}"-ით`;if(r.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${r.includes}"-ს`;if(r.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${r.pattern}`;return`არასწორი ${n[r.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${g(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},Fy=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},a={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${r} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${_(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${r} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${r} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${r.prefix}"`;if(r.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${r.suffix}"`;if(r.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${r.includes}"`;if(r.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${r.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[r.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${g(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},Ky=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${r}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${_(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${g(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let r=i.inclusive?"이하":"미만",o=r==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),l=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${l} ${r}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${r}${o}`}case"too_small":{let r=i.inclusive?"이상":"초과",o=r==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),l=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${l} ${r}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${r}${o}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`잘못된 문자열: "${r.prefix}"(으)로 시작해야 합니다`;if(r.format==="ends_with")return`잘못된 문자열: "${r.suffix}"(으)로 끝나야 합니다`;if(r.format==="includes")return`잘못된 문자열: "${r.includes}"을(를) 포함해야 합니다`;if(r.format==="regex")return`잘못된 문자열: 정규식 ${r.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[r.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${g(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},vt=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},Wy=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,r,o,s){let l=e[i]??null;if(l===null)return l;return{unit:l.unit[r],verb:l.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},a={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${r}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${_(i.values[0])}`;return`Privalo būti vienas iš ${g(i.values,"|")} pasirinkimų`;case"too_big":{let r=a[i.origin]??i.origin,o=t(i.origin,os(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${vt(r??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${vt(r??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let r=a[i.origin]??i.origin,o=t(i.origin,os(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${vt(r??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${vt(r??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Eilutė privalo prasidėti "${r.prefix}"`;if(r.format==="ends_with")return`Eilutė privalo pasibaigti "${r.suffix}"`;if(r.format==="includes")return`Eilutė privalo įtraukti "${r.includes}"`;if(r.format==="regex")return`Eilutė privalo atitikti ${r.pattern}`;return`Neteisingas ${n[r.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${g(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let r=a[i.origin]??i.origin;return`${vt(r??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},By=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},a={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${r}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${_(i.values[0])}`;return`Грешана опција: се очекува една ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${r}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${r}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неважечка низа: мора да започнува со "${r.prefix}"`;if(r.format==="ends_with")return`Неважечка низа: мора да завршува со "${r.suffix}"`;if(r.format==="includes")return`Неважечка низа: мора да вклучува "${r.includes}"`;if(r.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${r.pattern}`;return`Invalid ${n[r.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${g(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},Vy=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${r}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${_(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`String tidak sah: mesti bermula dengan "${r.prefix}"`;if(r.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${r.suffix}"`;if(r.format==="includes")return`String tidak sah: mesti mengandungi "${r.includes}"`;if(r.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${r.pattern}`;return`${n[r.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},Qy=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},a={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${r}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${_(i.values[0])}`;return`Ongeldige optie: verwacht één van ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${r}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${r}${i.maximum.toString()} is`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${r}${i.minimum.toString()} is`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ongeldige tekst: moet met "${r.prefix}" beginnen`;if(r.format==="ends_with")return`Ongeldige tekst: moet op "${r.suffix}" eindigen`;if(r.format==="includes")return`Ongeldige tekst: moet "${r.includes}" bevatten`;if(r.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${r.pattern}`;return`Ongeldig: ${n[r.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},eb=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${r}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${_(i.values[0])}`;return`Ugyldig valg: forventet en av ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${r}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${r}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ugyldig streng: må starte med "${r.prefix}"`;if(r.format==="ends_with")return`Ugyldig streng: må ende med "${r.suffix}"`;if(r.format==="includes")return`Ugyldig streng: må inneholde "${r.includes}"`;if(r.format==="regex")return`Ugyldig streng: må matche mønsteret ${r.pattern}`;return`Ugyldig ${n[r.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},ib=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},a={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${r}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${_(i.values[0])}`;return`Fâsit tercih: mûteberler ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${r}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${r}${i.maximum.toString()} olmalıydı.`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${r}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${r}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Fâsit metin: "${r.prefix}" ile başlamalı.`;if(r.format==="ends_with")return`Fâsit metin: "${r.suffix}" ile bitmeli.`;if(r.format==="includes")return`Fâsit metin: "${r.includes}" ihtivâ etmeli.`;if(r.format==="regex")return`Fâsit metin: ${r.pattern} nakşına uymalı.`;return`Fâsit ${n[r.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},rb=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},a={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${r} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${_(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${g(i.values,"|")} څخه وای`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${r}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${r}${i.maximum.toString()} وي`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${r}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${r}${i.minimum.toString()} وي`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`ناسم متن: باید د "${r.prefix}" سره پیل شي`;if(r.format==="ends_with")return`ناسم متن: باید د "${r.suffix}" سره پای ته ورسيږي`;if(r.format==="includes")return`ناسم متن: باید "${r.includes}" ولري`;if(r.format==="regex")return`ناسم متن: باید د ${r.pattern} سره مطابقت ولري`;return`${n[r.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${g(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},ob=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},a={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${r}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${_(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${r}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${r}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${r.prefix}"`;if(r.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${r.suffix}"`;if(r.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${r.includes}"`;if(r.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${r.pattern}`;return`Nieprawidłow(y/a/e) ${n[r.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},ub=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${r}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${_(i.values[0])}`;return`Opção inválida: esperada uma das ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${r}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${r}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Texto inválido: deve começar com "${r.prefix}"`;if(r.format==="ends_with")return`Texto inválido: deve terminar com "${r.suffix}"`;if(r.format==="includes")return`Texto inválido: deve incluir "${r.includes}"`;if(r.format==="regex")return`Texto inválido: deve corresponder ao padrão ${r.pattern}`;return`${n[r.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},db=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},a={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;return`Intrare invalidă: așteptat ${r}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${_(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${r.prefix}"`;if(r.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${r.suffix}"`;if(r.format==="includes")return`Șir invalid: trebuie să includă "${r.includes}"`;if(r.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${r.pattern}`;return`Format invalid: ${n[r.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${g(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},mb=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},a={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${r}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${_(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=ss(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${r}${i.maximum.toString()} ${l}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=ss(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${r}${i.minimum.toString()} ${l}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неверная строка: должна начинаться с "${r.prefix}"`;if(r.format==="ends_with")return`Неверная строка: должна заканчиваться на "${r.suffix}"`;if(r.format==="includes")return`Неверная строка: должна содержать "${r.includes}"`;if(r.format==="regex")return`Неверная строка: должна соответствовать шаблону ${r.pattern}`;return`Неверный ${n[r.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},pb=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},a={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${r}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${_(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${r}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${r}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neveljaven niz: mora se začeti z "${r.prefix}"`;if(r.format==="ends_with")return`Neveljaven niz: mora se končati z "${r.suffix}"`;if(r.format==="includes")return`Neveljaven niz: mora vsebovati "${r.includes}"`;if(r.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${r.pattern}`;return`Neveljaven ${n[r.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},gb=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},a={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${r}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${_(i.values[0])}`;return`Ogiltigt val: förväntade en av ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ogiltig sträng: måste börja med "${r.prefix}"`;if(r.format==="ends_with")return`Ogiltig sträng: måste sluta med "${r.suffix}"`;if(r.format==="includes")return`Ogiltig sträng: måste innehålla "${r.includes}"`;if(r.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${r.pattern}"`;return`Ogiltig(t) ${n[r.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},yb=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${r}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${_(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${g(i.values,"|")} இல் ஒன்று`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${r}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${r}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${r}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`தவறான சரம்: "${r.prefix}" இல் தொடங்க வேண்டும்`;if(r.format==="ends_with")return`தவறான சரம்: "${r.suffix}" இல் முடிவடைய வேண்டும்`;if(r.format==="includes")return`தவறான சரம்: "${r.includes}" ஐ உள்ளடக்க வேண்டும்`;if(r.format==="regex")return`தவறான சரம்: ${r.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[r.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},$b=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},a={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${r} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${_(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${r} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${r} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${r.prefix}"`;if(r.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${r.suffix}"`;if(r.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${r.includes}" อยู่ในข้อความ`;if(r.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${r.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[r.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${g(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},kb=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${r}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${_(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${r}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Geçersiz metin: "${r.prefix}" ile başlamalı`;if(r.format==="ends_with")return`Geçersiz metin: "${r.suffix}" ile bitmeli`;if(r.format==="includes")return`Geçersiz metin: "${r.includes}" içermeli`;if(r.format==="regex")return`Geçersiz metin: ${r.pattern} desenine uymalı`;return`Geçersiz ${n[r.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},Sb=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},a={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${r}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${_(i.values[0])}`;return`Неправильна опція: очікується одне з ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неправильний рядок: повинен починатися з "${r.prefix}"`;if(r.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${r.suffix}"`;if(r.format==="includes")return`Неправильний рядок: повинен містити "${r.includes}"`;if(r.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${r.pattern}`;return`Неправильний ${n[r.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},xb=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},a={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${r} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${_(i.values[0])} متوقع تھا`;return`غلط آپشن: ${g(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${r}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${r}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${r}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${r}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`غلط سٹرنگ: "${r.prefix}" سے شروع ہونا چاہیے`;if(r.format==="ends_with")return`غلط سٹرنگ: "${r.suffix}" پر ختم ہونا چاہیے`;if(r.format==="includes")return`غلط سٹرنگ: "${r.includes}" شامل ہونا چاہیے`;if(r.format==="regex")return`غلط سٹرنگ: پیٹرن ${r.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[r.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},Ub=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},a={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${r}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${_(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${r}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Noto‘g‘ri satr: "${r.prefix}" bilan boshlanishi kerak`;if(r.format==="ends_with")return`Noto‘g‘ri satr: "${r.suffix}" bilan tugashi kerak`;if(r.format==="includes")return`Noto‘g‘ri satr: "${r.includes}" ni o‘z ichiga olishi kerak`;if(r.format==="regex")return`Noto‘g‘ri satr: ${r.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[r.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},Pb=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},a={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${r}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${_(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${r.prefix}"`;if(r.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${r.suffix}"`;if(r.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${r.includes}"`;if(r.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${r.pattern}`;return`${n[r.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${g(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},jb=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},a={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${r},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${_(i.values[0])}`;return`无效选项:期望以下之一 ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${r}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`无效字符串:必须以 "${r.prefix}" 开头`;if(r.format==="ends_with")return`无效字符串:必须以 "${r.suffix}" 结尾`;if(r.format==="includes")return`无效字符串:必须包含 "${r.includes}"`;if(r.format==="regex")return`无效字符串:必须满足正则表达式 ${r.pattern}`;return`无效${n[r.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},Nb=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${r},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${_(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${r}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${r}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`無效的字串:必須以 "${r.prefix}" 開頭`;if(r.format==="ends_with")return`無效的字串:必須以 "${r.suffix}" 結尾`;if(r.format==="includes")return`無效的字串:必須包含 "${r.includes}"`;if(r.format==="regex")return`無效的字串:必須符合格式 ${r.pattern}`;return`無效的 ${n[r.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${g(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},Db=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},a={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${r}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${_(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${r}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${r}${i.maximum}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${r}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${r}${i.minimum}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${r.prefix}"`;if(r.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${r.suffix}"`;if(r.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${r.includes}"`;if(r.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${r.pattern}`;return`Aṣìṣe: ${n[r.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${g(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},us,bd,$d,ne,Sd,sc=(e,t={})=>(n)=>{let a=tt({...n,processors:t});return N(e,a),it(a,e),nt(a,e)},$t=(e,t,n={})=>(a)=>{let{libraryOptions:i,target:r}=a??{},o=tt({...i??{},target:r,io:t,processors:n});return N(e,o),it(o,e),nt(o,e)},s$,uc=(e,t,n,a)=>{let i=n;i.type="string";let{minimum:r,maximum:o,format:s,patterns:l,contentEncoding:d}=e._zod.bag;if(typeof r==="number")i.minLength=r;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=s$[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(d)i.contentEncoding=d;if(l&&l.size>0){let c=[...l];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},lc=(e,t,n,a)=>{let i=n,{minimum:r,maximum:o,format:s,multipleOf:l,exclusiveMaximum:d,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let p=typeof c==="number"&&c>=(r??Number.NEGATIVE_INFINITY),v=typeof d==="number"&&d<=(o??Number.POSITIVE_INFINITY),f=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(f)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof r==="number")i.minimum=r;if(v)if(f)i.maximum=d,i.exclusiveMaximum=!0;else i.exclusiveMaximum=d;else if(typeof o==="number")i.maximum=o;if(typeof l==="number")i.multipleOf=l},dc=(e,t,n,a)=>{n.type="boolean"},cc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},mc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},fc=(e,t,n,a)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},pc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},vc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},gc=(e,t,n,a)=>{n.not={}},hc=(e,t,n,a)=>{},yc=(e,t,n,a)=>{},bc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},$c=(e,t,n,a)=>{let i=e._zod.def,r=Qn(i.entries);if(r.every((o)=>typeof o==="number"))n.type="number";if(r.every((o)=>typeof o==="string"))n.type="string";n.enum=r},_c=(e,t,n,a)=>{let i=e._zod.def,r=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else r.push(Number(o));else r.push(o);if(r.length===0);else if(r.length===1){let o=r[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(r.every((o)=>typeof o==="number"))n.type="number";if(r.every((o)=>typeof o==="string"))n.type="string";if(r.every((o)=>typeof o==="boolean"))n.type="boolean";if(r.every((o)=>o===null))n.type="null";n.enum=r}},kc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},wc=(e,t,n,a)=>{let i=n,r=e._zod.pattern;if(!r)throw Error("Pattern not found in template literal");i.type="string",i.pattern=r.source},Sc=(e,t,n,a)=>{let i=n,r={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:l}=e._zod.bag;if(o!==void 0)r.minLength=o;if(s!==void 0)r.maxLength=s;if(l)if(l.length===1)r.contentMediaType=l[0],Object.assign(i,r);else Object.assign(i,r),i.anyOf=l.map((d)=>({contentMediaType:d}));else Object.assign(i,r)},Ic=(e,t,n,a)=>{n.type="boolean"},xc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},zc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Uc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Ec=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Pc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Tc=(e,t,n,a)=>{let i=n,r=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=N(r.element,t,{...a,path:[...a.path,"items"]})},jc=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="object",i.properties={};let o=r.shape;for(let d in o)i.properties[d]=N(o[d],t,{...a,path:[...a.path,"properties",d]});let s=new Set(Object.keys(o)),l=new Set([...s].filter((d)=>{let c=r.shape[d]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(l.size>0)i.required=Array.from(l);if(r.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!r.catchall){if(t.io==="output")i.additionalProperties=!1}else if(r.catchall)i.additionalProperties=N(r.catchall,t,{...a,path:[...a.path,"additionalProperties"]})},Qr=(e,t,n,a)=>{let i=e._zod.def,r=i.inclusive===!1,o=i.options.map((s,l)=>N(s,t,{...a,path:[...a.path,r?"oneOf":"anyOf",l]}));if(r)n.oneOf=o;else n.anyOf=o},Oc=(e,t,n,a)=>{let i=e._zod.def,r=N(i.left,t,{...a,path:[...a.path,"allOf",0]}),o=N(i.right,t,{...a,path:[...a.path,"allOf",1]}),s=(d)=>("allOf"in d)&&Object.keys(d).length===1,l=[...s(r)?r.allOf:[r],...s(o)?o.allOf:[o]];n.allOf=l},Nc=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",l=r.items.map((v,f)=>N(v,t,{...a,path:[...a.path,o,f]})),d=r.rest?N(r.rest,t,{...a,path:[...a.path,s,...t.target==="openapi-3.0"?[r.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=l,d)i.items=d}else if(t.target==="openapi-3.0"){if(i.items={anyOf:l},d)i.items.anyOf.push(d);if(i.minItems=l.length,!d)i.maxItems=l.length}else if(i.items=l,d)i.additionalItems=d;let{minimum:c,maximum:p}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof p==="number")i.maxItems=p},Ac=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="object";let o=r.keyType,s=o._zod.bag?.patterns;if(r.mode==="loose"&&s&&s.size>0){let d=N(r.valueType,t,{...a,path:[...a.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=N(r.keyType,t,{...a,path:[...a.path,"propertyNames"]});i.additionalProperties=N(r.valueType,t,{...a,path:[...a.path,"additionalProperties"]})}let l=o._zod.values;if(l){let d=[...l].filter((c)=>typeof c==="string"||typeof c==="number");if(d.length>0)i.required=d}},Dc=(e,t,n,a)=>{let i=e._zod.def,r=N(i.innerType,t,a),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[r,{type:"null"}]},Zc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},Cc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Rc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);if(r.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},Mc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},Lc=(e,t,n,a)=>{let i=e._zod.def,r=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?r?i.out:i.in:i.out;N(o,t,a);let s=t.seen.get(e);s.ref=o},Fc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType,n.readOnly=!0},Jc=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},qr=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},Kc=(e,t,n,a)=>{let i=e._zod.innerType;N(i,t,a);let r=t.seen.get(e);r.ref=i},Jn,u$,Hc,Bc,ea,ta,ia,na,ra,qc=(e,t)=>{er.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>ir(e,n)},flatten:{value:(n)=>tr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,hi,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,hi,2)}},isEmpty:{get(){return e.issues.length===0}}})},l$,ee,em,tm,im,nm,rm,am,om,sm,um,lm,dm,cm,ls,z,Ji,Mt,D,Ki,kt,ve,Lt,Gi,Wi,Hi,Bi,Xi,Vi,Yi,Qi,aa,qi,en,tn,nn,rn,an,on,st,Ft,Me,Jt,Kt,sn,ua,la,da,ma,fa,pa,va,ln,ga,Wt,Ht,ha,ya,ba,_a,rt,Sa,Ia,at,xa,za,Ua,fn,Ea,Ta,ja,Na,pn,Za,Ca,Ma,Bt,Xt,La,Fa,Ka,Ga,Ha,Ba,Vt,_f,kf,Sf=(...e)=>oc({Codec:Xt,Boolean:Jt,String:Mt},...e),d$,Kn,b,f$,Uf,Ya,Ef,Pf,Tf,jf,Of,Nf,Af,Df,Zf,Cf,Rf,Mf,Lf,k$,Ff,Jf,Gn,fi,Kf,Gf,w$,S$,Wf,I$,Hf,Bf,Xf,Vf,Qa,Yf,Qf,qf,x$,ep,z$,tp,ip,np,U$,E$,P$,rp,j$,O$,Z$,up,Ce,C$,R$,M$,L$,F$,J$,K$,G$,lp,H$=30000,B$=5000,cp,V$,Q$="tool_executor.",q$="custom_tool.",e_="hook.",t_="compaction.compact",i_="checkpoint.create",n_="mistake_limit.decide",r_="user_instructions.snapshot",yt,c_=void 0,p_,g_,Te,vs,gs,b_,I_,x_,E_,T_,K_=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
37
+ `)}return t}function ES(e,t){let n=new TextEncoder,a=0;return new ReadableStream({async pull(i){if(a>=e.length){i.close();return}if(a>0&&t>0)await new Promise((o)=>setTimeout(o,t));let r=e[a];if(r===void 0){i.close();return}i.enqueue(n.encode(r)),a+=1}})}function TS(e,t){if(!fS(e))process.stderr.write(`[VCR] Cassette file not found: ${e}
38
+ `),process.exit(1);let n=JSON.parse(vS(e,"utf-8")),a=Number.parseInt(process.env.CLINE_VCR_SSE_DELAY??"100",10),i=Array(n.length).fill(!1),r=globalThis.fetch;globalThis.fetch=Object.assign(async(s,l)=>{let d=sv(s),c=uv(s,l),{path:p}=ov(d),v=dr(p);if(t&&!p.includes(t))return r(s,l);let f=n.findIndex((y,_)=>{if(i[_])return!1;let O=dr(y.path);return y.method.toUpperCase()===c&&O===v});if(f>=0){i[f]=!0;let y=n[f];if(!y)return r(s,l);let _=typeof y.response==="string"?y.response:JSON.stringify(y.response),O=new Headers;if(y.contentType)O.set("content-type",y.contentType);else if(typeof y.response==="string"&&y.response.trimStart().startsWith("data:"))O.set("content-type","text/event-stream");else if(typeof y.response==="object")O.set("content-type","application/json");let P=O.get("content-type")?.includes("text/event-stream")??!1;if(P)O.set("cache-control","no-cache"),O.set("connection","keep-alive");if(P&&typeof y.response==="string"){let L=US(y.response);if(L.length>1){let S=ES(L,a);return new Response(S,{status:y.status,headers:O})}}return new Response(_,{status:y.status,headers:O})}if(!t)throw Error(`[VCR] No matching recording for ${c} ${d} (path: ${v}). ${n.length} recording(s) loaded from ${e}.`);return r(s,l)},{preconnect:(s)=>{}});let o=t?`(only paths matching "*${t}*", all other requests go through normally)`:"(all requests intercepted)";process.stderr.write(`[VCR] Playing back ${n.length} recorded HTTP interaction(s) from ${e} ${o}
39
+ `)}function OS(e){let t=xS(e);if(!t)return;if(t.mode==="record")zS(t.cassettePath,t.filter);else TS(t.cassettePath,t.filter)}var Gg,Wg=(e)=>e,ke=(e,t)=>{for(var n in t)Gg(e,n,{get:t[n],enumerable:!0,configurable:!0,set:Bg.bind(t,n)})},qn,Yg,qg,Qo,Ws="enterprise.blobUpload",xi,ch="remote://",vh="remote-config",u,nu,as,ru,au,ze,Pt,xt,U,os,fr,uu,Nh=(e)=>{let t=typeof e;switch(t){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(e)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(e))return"array";if(e===null)return"null";if(e.then&&typeof e.then==="function"&&e.catch&&typeof e.catch==="function")return"promise";if(typeof Map<"u"&&e instanceof Map)return"map";if(typeof Set<"u"&&e instanceof Set)return"set";if(typeof Date<"u"&&e instanceof Date)return"date";if(typeof File<"u"&&e instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${t}`)}},Ui,du,mu,fu,yu=(e,t)=>{e.name="$ZodError",Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,zi,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},pr,ee,Nt=(e)=>(t,n,a,i)=>{let r=a?{...a,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},r);if(o instanceof Promise)throw new ze;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((l)=>Q(l,r,K())));throw fr(s,i?.callee),s}return o.value},er,At=(e)=>async(t,n,a,i)=>{let r=a?{...a,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},r);if(o instanceof Promise)o=await o;if(o.issues.length){let s=new(i?.Err??e)(o.issues.map((l)=>Q(l,r,K())));throw fr(s,i?.callee),s}return o.value},tr,Dt=(e)=>(t,n,a)=>{let i=a?{...a,async:!1}:{async:!1},r=t._zod.run({value:n,issues:[]},i);if(r instanceof Promise)throw new ze;return r.issues.length?{success:!1,error:new(e??pr)(r.issues.map((o)=>Q(o,i,K())))}:{success:!0,data:r.value}},ku,Zt=(e)=>async(t,n,a)=>{let i=a?{...a,async:!0}:{async:!0},r=t._zod.run({value:n,issues:[]},i);if(r instanceof Promise)r=await r;return r.issues.length?{success:!1,error:new e(r.issues.map((o)=>Q(o,i,K())))}:{success:!0,data:r.value}},wu,hr=(e)=>(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Nt(e)(t,n,i)},Hh,yr=(e)=>(t,n,a)=>{return Nt(e)(t,n,a)},Xh,br=(e)=>async(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return At(e)(t,n,i)},Vh,$r=(e)=>async(t,n,a)=>{return At(e)(t,n,a)},Yh,_r=(e)=>(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Dt(e)(t,n,i)},qh,kr=(e)=>(t,n,a)=>{return Dt(e)(t,n,a)},Qh,wr=(e)=>async(t,n,a)=>{let i=a?{...a,direction:"backward"}:{direction:"backward"};return Zt(e)(t,n,i)},ey,Sr=(e)=>async(t,n,a)=>{return Zt(e)(t,n,a)},ty,Ue,Su,Iu,xu,zu,Uu,Eu,Tu,iy,Ou,at=(e)=>{if(!e)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)},ny,ry,ay,Pu,oy,sy,ju,uy,ly,dy="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Au,Du,Zu=(e)=>{let t=_e(e??":");return new RegExp(`^(?:[0-9A-F]{2}${t}){5}[0-9A-F]{2}$|^(?:[0-9a-f]{2}${t}){5}[0-9a-f]{2}$`)},Cu,Ru,Lu,Ir,cy,my,Mu,Fu,Ju="(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))",Ku,Hu=(e)=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${t}$`)},Xu,Vu,xr,Yu,qu,Qu,el,tl,fy,py,vy,gy,hy,yy,by,$y,_y,ky,wy,Sy,Iy,xy,zy,Uy,R,il,zr,Ur,nl,rl,al,ol,sl,ul,ll,dl,cl,Lt,ml,fl,pl,vl,gl,hl,yl,bl,$l,_l,x,Mt,A,kl,wl,Sl,Il,xl,zl,Ul,El,Tl,Ol,Pl,jl,Nl,Al,Dl,Zl,Cl,Rl,Ll,Ml,Fl,Kl,Gl,Bl,Hl,Or,Xl,Pr,jr,Vl,Yl,ql,Ql,ed,td,id,nd,rd,ad,ud,ld,Li,dd,cd,md,Nr,fd,pd,vd,gd,hd,yd,bd,Ar,$d,_d,kd,wd,Sd,Id,xd,zd,Dr,Zr,Ud,Ed,Td,Od,Pd,jd,Nd,Cr,Ey=()=>{let e={string:{unit:"حرف",verb:"أن يحوي"},file:{unit:"بايت",verb:"أن يحوي"},array:{unit:"عنصر",verb:"أن يحوي"},set:{unit:"عنصر",verb:"أن يحوي"}};function t(i){return e[i]??null}let n={regex:"مدخل",email:"بريد إلكتروني",url:"رابط",emoji:"إيموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاريخ ووقت بمعيار ISO",date:"تاريخ بمعيار ISO",time:"وقت بمعيار ISO",duration:"مدة بمعيار ISO",ipv4:"عنوان IPv4",ipv6:"عنوان IPv6",cidrv4:"مدى عناوين بصيغة IPv4",cidrv6:"مدى عناوين بصيغة IPv6",base64:"نَص بترميز base64-encoded",base64url:"نَص بترميز base64url-encoded",json_string:"نَص على هيئة JSON",e164:"رقم هاتف بمعيار E.164",jwt:"JWT",template_literal:"مدخل"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`مدخلات غير مقبولة: يفترض إدخال instanceof ${i.expected}، ولكن تم إدخال ${s}`;return`مدخلات غير مقبولة: يفترض إدخال ${r}، ولكن تم إدخال ${s}`}case"invalid_value":if(i.values.length===1)return`مدخلات غير مقبولة: يفترض إدخال ${k(i.values[0])}`;return`اختيار غير مقبول: يتوقع انتقاء أحد هذه الخيارات: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return` أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${r} ${i.maximum.toString()} ${o.unit??"عنصر"}`;return`أكبر من اللازم: يفترض أن تكون ${i.origin??"القيمة"} ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${r} ${i.minimum.toString()} ${o.unit}`;return`أصغر من اللازم: يفترض لـ ${i.origin} أن يكون ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`نَص غير مقبول: يجب أن يبدأ بـ "${i.prefix}"`;if(r.format==="ends_with")return`نَص غير مقبول: يجب أن ينتهي بـ "${r.suffix}"`;if(r.format==="includes")return`نَص غير مقبول: يجب أن يتضمَّن "${r.includes}"`;if(r.format==="regex")return`نَص غير مقبول: يجب أن يطابق النمط ${r.pattern}`;return`${n[r.format]??i.format} غير مقبول`}case"not_multiple_of":return`رقم غير مقبول: يجب أن يكون من مضاعفات ${i.divisor}`;case"unrecognized_keys":return`معرف${i.keys.length>1?"ات":""} غريب${i.keys.length>1?"ة":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`معرف غير مقبول في ${i.origin}`;case"invalid_union":return"مدخل غير مقبول";case"invalid_element":return`مدخل غير مقبول في ${i.origin}`;default:return"مدخل غير مقبول"}}},Oy=()=>{let e={string:{unit:"simvol",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"element",verb:"olmalıdır"},set:{unit:"element",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Yanlış dəyər: gözlənilən instanceof ${i.expected}, daxil olan ${s}`;return`Yanlış dəyər: gözlənilən ${r}, daxil olan ${s}`}case"invalid_value":if(i.values.length===1)return`Yanlış dəyər: gözlənilən ${k(i.values[0])}`;return`Yanlış seçim: aşağıdakılardan biri olmalıdır: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${r}${i.maximum.toString()} ${o.unit??"element"}`;return`Çox böyük: gözlənilən ${i.origin??"dəyər"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çox kiçik: gözlənilən ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`Çox kiçik: gözlənilən ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Yanlış mətn: "${r.prefix}" ilə başlamalıdır`;if(r.format==="ends_with")return`Yanlış mətn: "${r.suffix}" ilə bitməlidir`;if(r.format==="includes")return`Yanlış mətn: "${r.includes}" daxil olmalıdır`;if(r.format==="regex")return`Yanlış mətn: ${r.pattern} şablonuna uyğun olmalıdır`;return`Yanlış ${n[r.format]??i.format}`}case"not_multiple_of":return`Yanlış ədəd: ${i.divisor} ilə bölünə bilən olmalıdır`;case"unrecognized_keys":return`Tanınmayan açar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} daxilində yanlış açar`;case"invalid_union":return"Yanlış dəyər";case"invalid_element":return`${i.origin} daxilində yanlış dəyər`;default:return"Yanlış dəyər"}}},jy=()=>{let e={string:{unit:{one:"сімвал",few:"сімвалы",many:"сімвалаў"},verb:"мець"},array:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},set:{unit:{one:"элемент",few:"элементы",many:"элементаў"},verb:"мець"},file:{unit:{one:"байт",few:"байты",many:"байтаў"},verb:"мець"}};function t(i){return e[i]??null}let n={regex:"увод",email:"email адрас",url:"URL",emoji:"эмодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата і час",date:"ISO дата",time:"ISO час",duration:"ISO працягласць",ipv4:"IPv4 адрас",ipv6:"IPv6 адрас",cidrv4:"IPv4 дыяпазон",cidrv6:"IPv6 дыяпазон",base64:"радок у фармаце base64",base64url:"радок у фармаце base64url",json_string:"JSON радок",e164:"нумар E.164",jwt:"JWT",template_literal:"увод"},a={nan:"NaN",number:"лік",array:"масіў"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Няправільны ўвод: чакаўся instanceof ${i.expected}, атрымана ${s}`;return`Няправільны ўвод: чакаўся ${r}, атрымана ${s}`}case"invalid_value":if(i.values.length===1)return`Няправільны ўвод: чакалася ${k(i.values[0])}`;return`Няправільны варыянт: чакаўся адзін з ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=ks(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна ${o.verb} ${r}${i.maximum.toString()} ${l}`}return`Занадта вялікі: чакалася, што ${i.origin??"значэнне"} павінна быць ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=ks(s,o.unit.one,o.unit.few,o.unit.many);return`Занадта малы: чакалася, што ${i.origin} павінна ${o.verb} ${r}${i.minimum.toString()} ${l}`}return`Занадта малы: чакалася, што ${i.origin} павінна быць ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Няправільны радок: павінен пачынацца з "${r.prefix}"`;if(r.format==="ends_with")return`Няправільны радок: павінен заканчвацца на "${r.suffix}"`;if(r.format==="includes")return`Няправільны радок: павінен змяшчаць "${r.includes}"`;if(r.format==="regex")return`Няправільны радок: павінен адпавядаць шаблону ${r.pattern}`;return`Няправільны ${n[r.format]??i.format}`}case"not_multiple_of":return`Няправільны лік: павінен быць кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспазнаны ${i.keys.length>1?"ключы":"ключ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Няправільны ключ у ${i.origin}`;case"invalid_union":return"Няправільны ўвод";case"invalid_element":return`Няправільнае значэнне ў ${i.origin}`;default:return"Няправільны ўвод"}}},Ay=()=>{let e={string:{unit:"символа",verb:"да съдържа"},file:{unit:"байта",verb:"да съдържа"},array:{unit:"елемента",verb:"да съдържа"},set:{unit:"елемента",verb:"да съдържа"}};function t(i){return e[i]??null}let n={regex:"вход",email:"имейл адрес",url:"URL",emoji:"емоджи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO време",date:"ISO дата",time:"ISO време",duration:"ISO продължителност",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"base64-кодиран низ",base64url:"base64url-кодиран низ",json_string:"JSON низ",e164:"E.164 номер",jwt:"JWT",template_literal:"вход"},a={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Невалиден вход: очакван instanceof ${i.expected}, получен ${s}`;return`Невалиден вход: очакван ${r}, получен ${s}`}case"invalid_value":if(i.values.length===1)return`Невалиден вход: очакван ${k(i.values[0])}`;return`Невалидна опция: очаквано едно от ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Твърде голямо: очаква се ${i.origin??"стойност"} да съдържа ${r}${i.maximum.toString()} ${o.unit??"елемента"}`;return`Твърде голямо: очаква се ${i.origin??"стойност"} да бъде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Твърде малко: очаква се ${i.origin} да съдържа ${r}${i.minimum.toString()} ${o.unit}`;return`Твърде малко: очаква се ${i.origin} да бъде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Невалиден низ: трябва да започва с "${r.prefix}"`;if(r.format==="ends_with")return`Невалиден низ: трябва да завършва с "${r.suffix}"`;if(r.format==="includes")return`Невалиден низ: трябва да включва "${r.includes}"`;if(r.format==="regex")return`Невалиден низ: трябва да съвпада с ${r.pattern}`;let o="Невалиден";if(r.format==="emoji")o="Невалидно";if(r.format==="datetime")o="Невалидно";if(r.format==="date")o="Невалидна";if(r.format==="time")o="Невалидно";if(r.format==="duration")o="Невалидна";return`${o} ${n[r.format]??i.format}`}case"not_multiple_of":return`Невалидно число: трябва да бъде кратно на ${i.divisor}`;case"unrecognized_keys":return`Неразпознат${i.keys.length>1?"и":""} ключ${i.keys.length>1?"ове":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Невалиден ключ в ${i.origin}`;case"invalid_union":return"Невалиден вход";case"invalid_element":return`Невалидна стойност в ${i.origin}`;default:return"Невалиден вход"}}},Zy=()=>{let e={string:{unit:"caràcters",verb:"contenir"},file:{unit:"bytes",verb:"contenir"},array:{unit:"elements",verb:"contenir"},set:{unit:"elements",verb:"contenir"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"adreça electrònica",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i hora ISO",date:"data ISO",time:"hora ISO",duration:"durada ISO",ipv4:"adreça IPv4",ipv6:"adreça IPv6",cidrv4:"rang IPv4",cidrv6:"rang IPv6",base64:"cadena codificada en base64",base64url:"cadena codificada en base64url",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipus invàlid: s'esperava instanceof ${i.expected}, s'ha rebut ${s}`;return`Tipus invàlid: s'esperava ${r}, s'ha rebut ${s}`}case"invalid_value":if(i.values.length===1)return`Valor invàlid: s'esperava ${k(i.values[0])}`;return`Opció invàlida: s'esperava una de ${g(i.values," o ")}`;case"too_big":{let r=i.inclusive?"com a màxim":"menys de",o=t(i.origin);if(o)return`Massa gran: s'esperava que ${i.origin??"el valor"} contingués ${r} ${i.maximum.toString()} ${o.unit??"elements"}`;return`Massa gran: s'esperava que ${i.origin??"el valor"} fos ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"com a mínim":"més de",o=t(i.origin);if(o)return`Massa petit: s'esperava que ${i.origin} contingués ${r} ${i.minimum.toString()} ${o.unit}`;return`Massa petit: s'esperava que ${i.origin} fos ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Format invàlid: ha de començar amb "${r.prefix}"`;if(r.format==="ends_with")return`Format invàlid: ha d'acabar amb "${r.suffix}"`;if(r.format==="includes")return`Format invàlid: ha d'incloure "${r.includes}"`;if(r.format==="regex")return`Format invàlid: ha de coincidir amb el patró ${r.pattern}`;return`Format invàlid per a ${n[r.format]??i.format}`}case"not_multiple_of":return`Número invàlid: ha de ser múltiple de ${i.divisor}`;case"unrecognized_keys":return`Clau${i.keys.length>1?"s":""} no reconeguda${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Clau invàlida a ${i.origin}`;case"invalid_union":return"Entrada invàlida";case"invalid_element":return`Element invàlid a ${i.origin}`;default:return"Entrada invàlida"}}},Ry=()=>{let e={string:{unit:"znaků",verb:"mít"},file:{unit:"bajtů",verb:"mít"},array:{unit:"prvků",verb:"mít"},set:{unit:"prvků",verb:"mít"}};function t(i){return e[i]??null}let n={regex:"regulární výraz",email:"e-mailová adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"datum a čas ve formátu ISO",date:"datum ve formátu ISO",time:"čas ve formátu ISO",duration:"doba trvání ISO",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"rozsah IPv4",cidrv6:"rozsah IPv6",base64:"řetězec zakódovaný ve formátu base64",base64url:"řetězec zakódovaný ve formátu base64url",json_string:"řetězec ve formátu JSON",e164:"číslo E.164",jwt:"JWT",template_literal:"vstup"},a={nan:"NaN",number:"číslo",string:"řetězec",function:"funkce",array:"pole"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neplatný vstup: očekáváno instanceof ${i.expected}, obdrženo ${s}`;return`Neplatný vstup: očekáváno ${r}, obdrženo ${s}`}case"invalid_value":if(i.values.length===1)return`Neplatný vstup: očekáváno ${k(i.values[0])}`;return`Neplatná možnost: očekávána jedna z hodnot ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí mít ${r}${i.maximum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš velká: ${i.origin??"hodnota"} musí být ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí mít ${r}${i.minimum.toString()} ${o.unit??"prvků"}`;return`Hodnota je příliš malá: ${i.origin??"hodnota"} musí být ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neplatný řetězec: musí začínat na "${r.prefix}"`;if(r.format==="ends_with")return`Neplatný řetězec: musí končit na "${r.suffix}"`;if(r.format==="includes")return`Neplatný řetězec: musí obsahovat "${r.includes}"`;if(r.format==="regex")return`Neplatný řetězec: musí odpovídat vzoru ${r.pattern}`;return`Neplatný formát ${n[r.format]??i.format}`}case"not_multiple_of":return`Neplatné číslo: musí být násobkem ${i.divisor}`;case"unrecognized_keys":return`Neznámé klíče: ${g(i.keys,", ")}`;case"invalid_key":return`Neplatný klíč v ${i.origin}`;case"invalid_union":return"Neplatný vstup";case"invalid_element":return`Neplatná hodnota v ${i.origin}`;default:return"Neplatný vstup"}}},My=()=>{let e={string:{unit:"tegn",verb:"havde"},file:{unit:"bytes",verb:"havde"},array:{unit:"elementer",verb:"indeholdt"},set:{unit:"elementer",verb:"indeholdt"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-mailadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslæt",date:"ISO-dato",time:"ISO-klokkeslæt",duration:"ISO-varighed",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodet streng",base64url:"base64url-kodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},a={nan:"NaN",string:"streng",number:"tal",boolean:"boolean",array:"liste",object:"objekt",set:"sæt",file:"fil"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldigt input: forventede instanceof ${i.expected}, fik ${s}`;return`Ugyldigt input: forventede ${r}, fik ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig værdi: forventede ${k(i.values[0])}`;return`Ugyldigt valg: forventede en af følgende ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`For stor: forventede ${s??"value"} ${o.verb} ${r} ${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor: forventede ${s??"value"} havde ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`For lille: forventede ${s} ${o.verb} ${r} ${i.minimum.toString()} ${o.unit}`;return`For lille: forventede ${s} havde ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ugyldig streng: skal starte med "${r.prefix}"`;if(r.format==="ends_with")return`Ugyldig streng: skal ende med "${r.suffix}"`;if(r.format==="includes")return`Ugyldig streng: skal indeholde "${r.includes}"`;if(r.format==="regex")return`Ugyldig streng: skal matche mønsteret ${r.pattern}`;return`Ugyldig ${n[r.format]??i.format}`}case"not_multiple_of":return`Ugyldigt tal: skal være deleligt med ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukendte nøgler":"Ukendt nøgle"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøgle i ${i.origin}`;case"invalid_union":return"Ugyldigt input: matcher ingen af de tilladte typer";case"invalid_element":return`Ugyldig værdi i ${i.origin}`;default:return"Ugyldigt input"}}},Jy=()=>{let e={string:{unit:"Zeichen",verb:"zu haben"},file:{unit:"Bytes",verb:"zu haben"},array:{unit:"Elemente",verb:"zu haben"},set:{unit:"Elemente",verb:"zu haben"}};function t(i){return e[i]??null}let n={regex:"Eingabe",email:"E-Mail-Adresse",url:"URL",emoji:"Emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-Datum und -Uhrzeit",date:"ISO-Datum",time:"ISO-Uhrzeit",duration:"ISO-Dauer",ipv4:"IPv4-Adresse",ipv6:"IPv6-Adresse",cidrv4:"IPv4-Bereich",cidrv6:"IPv6-Bereich",base64:"Base64-codierter String",base64url:"Base64-URL-codierter String",json_string:"JSON-String",e164:"E.164-Nummer",jwt:"JWT",template_literal:"Eingabe"},a={nan:"NaN",number:"Zahl",array:"Array"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ungültige Eingabe: erwartet instanceof ${i.expected}, erhalten ${s}`;return`Ungültige Eingabe: erwartet ${r}, erhalten ${s}`}case"invalid_value":if(i.values.length===1)return`Ungültige Eingabe: erwartet ${k(i.values[0])}`;return`Ungültige Option: erwartet eine von ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${r}${i.maximum.toString()} ${o.unit??"Elemente"} hat`;return`Zu groß: erwartet, dass ${i.origin??"Wert"} ${r}${i.maximum.toString()} ist`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Zu klein: erwartet, dass ${i.origin} ${r}${i.minimum.toString()} ${o.unit} hat`;return`Zu klein: erwartet, dass ${i.origin} ${r}${i.minimum.toString()} ist`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ungültiger String: muss mit "${r.prefix}" beginnen`;if(r.format==="ends_with")return`Ungültiger String: muss mit "${r.suffix}" enden`;if(r.format==="includes")return`Ungültiger String: muss "${r.includes}" enthalten`;if(r.format==="regex")return`Ungültiger String: muss dem Muster ${r.pattern} entsprechen`;return`Ungültig: ${n[r.format]??i.format}`}case"not_multiple_of":return`Ungültige Zahl: muss ein Vielfaches von ${i.divisor} sein`;case"unrecognized_keys":return`${i.keys.length>1?"Unbekannte Schlüssel":"Unbekannter Schlüssel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ungültiger Schlüssel in ${i.origin}`;case"invalid_union":return"Ungültige Eingabe";case"invalid_element":return`Ungültiger Wert in ${i.origin}`;default:return"Ungültige Eingabe"}}},Gy=()=>{let e={string:{unit:"χαρακτήρες",verb:"να έχει"},file:{unit:"bytes",verb:"να έχει"},array:{unit:"στοιχεία",verb:"να έχει"},set:{unit:"στοιχεία",verb:"να έχει"},map:{unit:"καταχωρήσεις",verb:"να έχει"}};function t(i){return e[i]??null}let n={regex:"είσοδος",email:"διεύθυνση email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ημερομηνία και ώρα",date:"ISO ημερομηνία",time:"ISO ώρα",duration:"ISO διάρκεια",ipv4:"διεύθυνση IPv4",ipv6:"διεύθυνση IPv6",mac:"διεύθυνση MAC",cidrv4:"εύρος IPv4",cidrv6:"εύρος IPv6",base64:"συμβολοσειρά κωδικοποιημένη σε base64",base64url:"συμβολοσειρά κωδικοποιημένη σε base64url",json_string:"συμβολοσειρά JSON",e164:"αριθμός E.164",jwt:"JWT",template_literal:"είσοδος"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(typeof i.expected==="string"&&/^[A-Z]/.test(i.expected))return`Μη έγκυρη είσοδος: αναμενόταν instanceof ${i.expected}, λήφθηκε ${s}`;return`Μη έγκυρη είσοδος: αναμενόταν ${r}, λήφθηκε ${s}`}case"invalid_value":if(i.values.length===1)return`Μη έγκυρη είσοδος: αναμενόταν ${k(i.values[0])}`;return`Μη έγκυρη επιλογή: αναμενόταν ένα από ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να έχει ${r}${i.maximum.toString()} ${o.unit??"στοιχεία"}`;return`Πολύ μεγάλο: αναμενόταν ${i.origin??"τιμή"} να είναι ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Πολύ μικρό: αναμενόταν ${i.origin} να έχει ${r}${i.minimum.toString()} ${o.unit}`;return`Πολύ μικρό: αναμενόταν ${i.origin} να είναι ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να ξεκινά με "${r.prefix}"`;if(r.format==="ends_with")return`Μη έγκυρη συμβολοσειρά: πρέπει να τελειώνει με "${r.suffix}"`;if(r.format==="includes")return`Μη έγκυρη συμβολοσειρά: πρέπει να περιέχει "${r.includes}"`;if(r.format==="regex")return`Μη έγκυρη συμβολοσειρά: πρέπει να ταιριάζει με το μοτίβο ${r.pattern}`;return`Μη έγκυρο: ${n[r.format]??i.format}`}case"not_multiple_of":return`Μη έγκυρος αριθμός: πρέπει να είναι πολλαπλάσιο του ${i.divisor}`;case"unrecognized_keys":return`Άγνωστ${i.keys.length>1?"α":"ο"} κλειδ${i.keys.length>1?"ιά":"ί"}: ${g(i.keys,", ")}`;case"invalid_key":return`Μη έγκυρο κλειδί στο ${i.origin}`;case"invalid_union":return"Μη έγκυρη είσοδος";case"invalid_element":return`Μη έγκυρη τιμή στο ${i.origin}`;default:return"Μη έγκυρη είσοδος"}}},By=()=>{let e={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"},map:{unit:"entries",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",mac:"MAC address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;return`Invalid input: expected ${r}, received ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Invalid option: expected one of ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Too big: expected ${i.origin??"value"} to have ${r}${i.maximum.toString()} ${o.unit??"elements"}`;return`Too big: expected ${i.origin??"value"} to be ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Too small: expected ${i.origin} to have ${r}${i.minimum.toString()} ${o.unit}`;return`Too small: expected ${i.origin} to be ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Invalid string: must start with "${r.prefix}"`;if(r.format==="ends_with")return`Invalid string: must end with "${r.suffix}"`;if(r.format==="includes")return`Invalid string: must include "${r.includes}"`;if(r.format==="regex")return`Invalid string: must match pattern ${r.pattern}`;return`Invalid ${n[r.format]??i.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${i.divisor}`;case"unrecognized_keys":return`Unrecognized key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Invalid key in ${i.origin}`;case"invalid_union":if(i.options&&Array.isArray(i.options)&&i.options.length>0)return`Invalid discriminator value. Expected ${i.options.map((r)=>`'${r}'`).join(" | ")}`;return"Invalid input";case"invalid_element":return`Invalid value in ${i.origin}`;default:return"Invalid input"}}},Hy=()=>{let e={string:{unit:"karaktrojn",verb:"havi"},file:{unit:"bajtojn",verb:"havi"},array:{unit:"elementojn",verb:"havi"},set:{unit:"elementojn",verb:"havi"}};function t(i){return e[i]??null}let n={regex:"enigo",email:"retadreso",url:"URL",emoji:"emoĝio",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datotempo",date:"ISO-dato",time:"ISO-tempo",duration:"ISO-daŭro",ipv4:"IPv4-adreso",ipv6:"IPv6-adreso",cidrv4:"IPv4-rango",cidrv6:"IPv6-rango",base64:"64-ume kodita karaktraro",base64url:"URL-64-ume kodita karaktraro",json_string:"JSON-karaktraro",e164:"E.164-nombro",jwt:"JWT",template_literal:"enigo"},a={nan:"NaN",number:"nombro",array:"tabelo",null:"senvalora"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Nevalida enigo: atendiĝis instanceof ${i.expected}, riceviĝis ${s}`;return`Nevalida enigo: atendiĝis ${r}, riceviĝis ${s}`}case"invalid_value":if(i.values.length===1)return`Nevalida enigo: atendiĝis ${k(i.values[0])}`;return`Nevalida opcio: atendiĝis unu el ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${r}${i.maximum.toString()} ${o.unit??"elementojn"}`;return`Tro granda: atendiĝis ke ${i.origin??"valoro"} havu ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Tro malgranda: atendiĝis ke ${i.origin} havu ${r}${i.minimum.toString()} ${o.unit}`;return`Tro malgranda: atendiĝis ke ${i.origin} estu ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Nevalida karaktraro: devas komenciĝi per "${r.prefix}"`;if(r.format==="ends_with")return`Nevalida karaktraro: devas finiĝi per "${r.suffix}"`;if(r.format==="includes")return`Nevalida karaktraro: devas inkluzivi "${r.includes}"`;if(r.format==="regex")return`Nevalida karaktraro: devas kongrui kun la modelo ${r.pattern}`;return`Nevalida ${n[r.format]??i.format}`}case"not_multiple_of":return`Nevalida nombro: devas esti oblo de ${i.divisor}`;case"unrecognized_keys":return`Nekonata${i.keys.length>1?"j":""} ŝlosilo${i.keys.length>1?"j":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nevalida ŝlosilo en ${i.origin}`;case"invalid_union":return"Nevalida enigo";case"invalid_element":return`Nevalida valoro en ${i.origin}`;default:return"Nevalida enigo"}}},Vy=()=>{let e={string:{unit:"caracteres",verb:"tener"},file:{unit:"bytes",verb:"tener"},array:{unit:"elementos",verb:"tener"},set:{unit:"elementos",verb:"tener"}};function t(i){return e[i]??null}let n={regex:"entrada",email:"dirección de correo electrónico",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"fecha y hora ISO",date:"fecha ISO",time:"hora ISO",duration:"duración ISO",ipv4:"dirección IPv4",ipv6:"dirección IPv6",cidrv4:"rango IPv4",cidrv6:"rango IPv6",base64:"cadena codificada en base64",base64url:"URL codificada en base64",json_string:"cadena JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN",string:"texto",number:"número",boolean:"booleano",array:"arreglo",object:"objeto",set:"conjunto",file:"archivo",date:"fecha",bigint:"número grande",symbol:"símbolo",undefined:"indefinido",null:"nulo",function:"función",map:"mapa",record:"registro",tuple:"tupla",enum:"enumeración",union:"unión",literal:"literal",promise:"promesa",void:"vacío",never:"nunca",unknown:"desconocido",any:"cualquiera"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrada inválida: se esperaba instanceof ${i.expected}, recibido ${s}`;return`Entrada inválida: se esperaba ${r}, recibido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: se esperaba ${k(i.values[0])}`;return`Opción inválida: se esperaba una de ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Demasiado grande: se esperaba que ${s??"valor"} tuviera ${r}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Demasiado grande: se esperaba que ${s??"valor"} fuera ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Demasiado pequeño: se esperaba que ${s} tuviera ${r}${i.minimum.toString()} ${o.unit}`;return`Demasiado pequeño: se esperaba que ${s} fuera ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Cadena inválida: debe comenzar con "${r.prefix}"`;if(r.format==="ends_with")return`Cadena inválida: debe terminar en "${r.suffix}"`;if(r.format==="includes")return`Cadena inválida: debe incluir "${r.includes}"`;if(r.format==="regex")return`Cadena inválida: debe coincidir con el patrón ${r.pattern}`;return`Inválido ${n[r.format]??i.format}`}case"not_multiple_of":return`Número inválido: debe ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Llave${i.keys.length>1?"s":""} desconocida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Llave inválida en ${a[i.origin]??i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido en ${a[i.origin]??i.origin}`;default:return"Entrada inválida"}}},qy=()=>{let e={string:{unit:"کاراکتر",verb:"داشته باشد"},file:{unit:"بایت",verb:"داشته باشد"},array:{unit:"آیتم",verb:"داشته باشد"},set:{unit:"آیتم",verb:"داشته باشد"}};function t(i){return e[i]??null}let n={regex:"ورودی",email:"آدرس ایمیل",url:"URL",emoji:"ایموجی",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"تاریخ و زمان ایزو",date:"تاریخ ایزو",time:"زمان ایزو",duration:"مدت زمان ایزو",ipv4:"IPv4 آدرس",ipv6:"IPv6 آدرس",cidrv4:"IPv4 دامنه",cidrv6:"IPv6 دامنه",base64:"base64-encoded رشته",base64url:"base64url-encoded رشته",json_string:"JSON رشته",e164:"E.164 عدد",jwt:"JWT",template_literal:"ورودی"},a={nan:"NaN",number:"عدد",array:"آرایه"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ورودی نامعتبر: می‌بایست instanceof ${i.expected} می‌بود، ${s} دریافت شد`;return`ورودی نامعتبر: می‌بایست ${r} می‌بود، ${s} دریافت شد`}case"invalid_value":if(i.values.length===1)return`ورودی نامعتبر: می‌بایست ${k(i.values[0])} می‌بود`;return`گزینه نامعتبر: می‌بایست یکی از ${g(i.values,"|")} می‌بود`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${r}${i.maximum.toString()} ${o.unit??"عنصر"} باشد`;return`خیلی بزرگ: ${i.origin??"مقدار"} باید ${r}${i.maximum.toString()} باشد`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`خیلی کوچک: ${i.origin} باید ${r}${i.minimum.toString()} ${o.unit} باشد`;return`خیلی کوچک: ${i.origin} باید ${r}${i.minimum.toString()} باشد`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`رشته نامعتبر: باید با "${r.prefix}" شروع شود`;if(r.format==="ends_with")return`رشته نامعتبر: باید با "${r.suffix}" تمام شود`;if(r.format==="includes")return`رشته نامعتبر: باید شامل "${r.includes}" باشد`;if(r.format==="regex")return`رشته نامعتبر: باید با الگوی ${r.pattern} مطابقت داشته باشد`;return`${n[r.format]??i.format} نامعتبر`}case"not_multiple_of":return`عدد نامعتبر: باید مضرب ${i.divisor} باشد`;case"unrecognized_keys":return`کلید${i.keys.length>1?"های":""} ناشناس: ${g(i.keys,", ")}`;case"invalid_key":return`کلید ناشناس در ${i.origin}`;case"invalid_union":return"ورودی نامعتبر";case"invalid_element":return`مقدار نامعتبر در ${i.origin}`;default:return"ورودی نامعتبر"}}},eb=()=>{let e={string:{unit:"merkkiä",subject:"merkkijonon"},file:{unit:"tavua",subject:"tiedoston"},array:{unit:"alkiota",subject:"listan"},set:{unit:"alkiota",subject:"joukon"},number:{unit:"",subject:"luvun"},bigint:{unit:"",subject:"suuren kokonaisluvun"},int:{unit:"",subject:"kokonaisluvun"},date:{unit:"",subject:"päivämäärän"}};function t(i){return e[i]??null}let n={regex:"säännöllinen lauseke",email:"sähköpostiosoite",url:"URL-osoite",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-aikaleima",date:"ISO-päivämäärä",time:"ISO-aika",duration:"ISO-kesto",ipv4:"IPv4-osoite",ipv6:"IPv6-osoite",cidrv4:"IPv4-alue",cidrv6:"IPv6-alue",base64:"base64-koodattu merkkijono",base64url:"base64url-koodattu merkkijono",json_string:"JSON-merkkijono",e164:"E.164-luku",jwt:"JWT",template_literal:"templaattimerkkijono"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Virheellinen tyyppi: odotettiin instanceof ${i.expected}, oli ${s}`;return`Virheellinen tyyppi: odotettiin ${r}, oli ${s}`}case"invalid_value":if(i.values.length===1)return`Virheellinen syöte: täytyy olla ${k(i.values[0])}`;return`Virheellinen valinta: täytyy olla yksi seuraavista: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Liian suuri: ${o.subject} täytyy olla ${r}${i.maximum.toString()} ${o.unit}`.trim();return`Liian suuri: arvon täytyy olla ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Liian pieni: ${o.subject} täytyy olla ${r}${i.minimum.toString()} ${o.unit}`.trim();return`Liian pieni: arvon täytyy olla ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Virheellinen syöte: täytyy alkaa "${r.prefix}"`;if(r.format==="ends_with")return`Virheellinen syöte: täytyy loppua "${r.suffix}"`;if(r.format==="includes")return`Virheellinen syöte: täytyy sisältää "${r.includes}"`;if(r.format==="regex")return`Virheellinen syöte: täytyy vastata säännöllistä lauseketta ${r.pattern}`;return`Virheellinen ${n[r.format]??i.format}`}case"not_multiple_of":return`Virheellinen luku: täytyy olla luvun ${i.divisor} monikerta`;case"unrecognized_keys":return`${i.keys.length>1?"Tuntemattomat avaimet":"Tuntematon avain"}: ${g(i.keys,", ")}`;case"invalid_key":return"Virheellinen avain tietueessa";case"invalid_union":return"Virheellinen unioni";case"invalid_element":return"Virheellinen arvo joukossa";default:return"Virheellinen syöte"}}},ib=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date et heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},a={string:"chaîne",number:"nombre",int:"entier",boolean:"booléen",bigint:"grand entier",symbol:"symbole",undefined:"indéfini",null:"null",never:"jamais",void:"vide",date:"date",array:"tableau",object:"objet",tuple:"tuple",record:"enregistrement",map:"carte",set:"ensemble",file:"fichier",nonoptional:"non-optionnel",nan:"NaN",function:"fonction"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : instanceof ${i.expected} attendu, ${s} reçu`;return`Entrée invalide : ${r} attendu, ${s} reçu`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : ${k(i.values[0])} attendu`;return`Option invalide : une valeur parmi ${g(i.values,"|")} attendue`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Trop grand : ${a[i.origin]??"valeur"} doit ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"élément(s)"}`;return`Trop grand : ${a[i.origin]??"valeur"} doit être ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Trop petit : ${a[i.origin]??"valeur"} doit ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Trop petit : ${a[i.origin]??"valeur"} doit être ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chaîne invalide : doit commencer par "${r.prefix}"`;if(r.format==="ends_with")return`Chaîne invalide : doit se terminer par "${r.suffix}"`;if(r.format==="includes")return`Chaîne invalide : doit inclure "${r.includes}"`;if(r.format==="regex")return`Chaîne invalide : doit correspondre au modèle ${r.pattern}`;return`${n[r.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},rb=()=>{let e={string:{unit:"caractères",verb:"avoir"},file:{unit:"octets",verb:"avoir"},array:{unit:"éléments",verb:"avoir"},set:{unit:"éléments",verb:"avoir"}};function t(i){return e[i]??null}let n={regex:"entrée",email:"adresse courriel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"date-heure ISO",date:"date ISO",time:"heure ISO",duration:"durée ISO",ipv4:"adresse IPv4",ipv6:"adresse IPv6",cidrv4:"plage IPv4",cidrv6:"plage IPv6",base64:"chaîne encodée en base64",base64url:"chaîne encodée en base64url",json_string:"chaîne JSON",e164:"numéro E.164",jwt:"JWT",template_literal:"entrée"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Entrée invalide : attendu instanceof ${i.expected}, reçu ${s}`;return`Entrée invalide : attendu ${r}, reçu ${s}`}case"invalid_value":if(i.values.length===1)return`Entrée invalide : attendu ${k(i.values[0])}`;return`Option invalide : attendu l'une des valeurs suivantes ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"≤":"<",o=t(i.origin);if(o)return`Trop grand : attendu que ${i.origin??"la valeur"} ait ${r}${i.maximum.toString()} ${o.unit}`;return`Trop grand : attendu que ${i.origin??"la valeur"} soit ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"≥":">",o=t(i.origin);if(o)return`Trop petit : attendu que ${i.origin} ait ${r}${i.minimum.toString()} ${o.unit}`;return`Trop petit : attendu que ${i.origin} soit ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chaîne invalide : doit commencer par "${r.prefix}"`;if(r.format==="ends_with")return`Chaîne invalide : doit se terminer par "${r.suffix}"`;if(r.format==="includes")return`Chaîne invalide : doit inclure "${r.includes}"`;if(r.format==="regex")return`Chaîne invalide : doit correspondre au motif ${r.pattern}`;return`${n[r.format]??i.format} invalide`}case"not_multiple_of":return`Nombre invalide : doit être un multiple de ${i.divisor}`;case"unrecognized_keys":return`Clé${i.keys.length>1?"s":""} non reconnue${i.keys.length>1?"s":""} : ${g(i.keys,", ")}`;case"invalid_key":return`Clé invalide dans ${i.origin}`;case"invalid_union":return"Entrée invalide";case"invalid_element":return`Valeur invalide dans ${i.origin}`;default:return"Entrée invalide"}}},ob=()=>{let e={string:{label:"מחרוזת",gender:"f"},number:{label:"מספר",gender:"m"},boolean:{label:"ערך בוליאני",gender:"m"},bigint:{label:"BigInt",gender:"m"},date:{label:"תאריך",gender:"m"},array:{label:"מערך",gender:"m"},object:{label:"אובייקט",gender:"m"},null:{label:"ערך ריק (null)",gender:"m"},undefined:{label:"ערך לא מוגדר (undefined)",gender:"m"},symbol:{label:"סימבול (Symbol)",gender:"m"},function:{label:"פונקציה",gender:"f"},map:{label:"מפה (Map)",gender:"f"},set:{label:"קבוצה (Set)",gender:"f"},file:{label:"קובץ",gender:"m"},promise:{label:"Promise",gender:"m"},NaN:{label:"NaN",gender:"m"},unknown:{label:"ערך לא ידוע",gender:"m"},value:{label:"ערך",gender:"m"}},t={string:{unit:"תווים",shortLabel:"קצר",longLabel:"ארוך"},file:{unit:"בייטים",shortLabel:"קטן",longLabel:"גדול"},array:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},set:{unit:"פריטים",shortLabel:"קטן",longLabel:"גדול"},number:{unit:"",shortLabel:"קטן",longLabel:"גדול"}},n=(d)=>d?e[d]:void 0,a=(d)=>{let c=n(d);if(c)return c.label;return d??e.unknown.label},i=(d)=>`ה${a(d)}`,r=(d)=>{return(n(d)?.gender??"m")==="f"?"צריכה להיות":"צריך להיות"},o=(d)=>{if(!d)return null;return t[d]??null},s={regex:{label:"קלט",gender:"m"},email:{label:"כתובת אימייל",gender:"f"},url:{label:"כתובת רשת",gender:"f"},emoji:{label:"אימוג'י",gender:"m"},uuid:{label:"UUID",gender:"m"},nanoid:{label:"nanoid",gender:"m"},guid:{label:"GUID",gender:"m"},cuid:{label:"cuid",gender:"m"},cuid2:{label:"cuid2",gender:"m"},ulid:{label:"ULID",gender:"m"},xid:{label:"XID",gender:"m"},ksuid:{label:"KSUID",gender:"m"},datetime:{label:"תאריך וזמן ISO",gender:"m"},date:{label:"תאריך ISO",gender:"m"},time:{label:"זמן ISO",gender:"m"},duration:{label:"משך זמן ISO",gender:"m"},ipv4:{label:"כתובת IPv4",gender:"f"},ipv6:{label:"כתובת IPv6",gender:"f"},cidrv4:{label:"טווח IPv4",gender:"m"},cidrv6:{label:"טווח IPv6",gender:"m"},base64:{label:"מחרוזת בבסיס 64",gender:"f"},base64url:{label:"מחרוזת בבסיס 64 לכתובות רשת",gender:"f"},json_string:{label:"מחרוזת JSON",gender:"f"},e164:{label:"מספר E.164",gender:"m"},jwt:{label:"JWT",gender:"m"},ends_with:{label:"קלט",gender:"m"},includes:{label:"קלט",gender:"m"},lowercase:{label:"קלט",gender:"m"},starts_with:{label:"קלט",gender:"m"},uppercase:{label:"קלט",gender:"m"}},l={nan:"NaN"};return(d)=>{switch(d.code){case"invalid_type":{let c=d.expected,p=l[c??""]??a(c),v=w(d.input),f=l[v]??e[v]?.label??v;if(/^[A-Z]/.test(d.expected))return`קלט לא תקין: צריך להיות instanceof ${d.expected}, התקבל ${f}`;return`קלט לא תקין: צריך להיות ${p}, התקבל ${f}`}case"invalid_value":{if(d.values.length===1)return`ערך לא תקין: הערך חייב להיות ${k(d.values[0])}`;let c=d.values.map((v)=>k(v));if(d.values.length===2)return`ערך לא תקין: האפשרויות המתאימות הן ${c[0]} או ${c[1]}`;let p=c[c.length-1];return`ערך לא תקין: האפשרויות המתאימות הן ${c.slice(0,-1).join(", ")} או ${p}`}case"too_big":{let c=o(d.origin),p=i(d.origin??"value");if(d.origin==="string")return`${c?.longLabel??"ארוך"} מדי: ${p} צריכה להכיל ${d.maximum.toString()} ${c?.unit??""} ${d.inclusive?"או פחות":"לכל היותר"}`.trim();if(d.origin==="number"){let y=d.inclusive?`קטן או שווה ל-${d.maximum}`:`קטן מ-${d.maximum}`;return`גדול מדי: ${p} צריך להיות ${y}`}if(d.origin==="array"||d.origin==="set"){let y=d.origin==="set"?"צריכה":"צריך",_=d.inclusive?`${d.maximum} ${c?.unit??""} או פחות`:`פחות מ-${d.maximum} ${c?.unit??""}`;return`גדול מדי: ${p} ${y} להכיל ${_}`.trim()}let v=d.inclusive?"<=":"<",f=r(d.origin??"value");if(c?.unit)return`${c.longLabel} מדי: ${p} ${f} ${v}${d.maximum.toString()} ${c.unit}`;return`${c?.longLabel??"גדול"} מדי: ${p} ${f} ${v}${d.maximum.toString()}`}case"too_small":{let c=o(d.origin),p=i(d.origin??"value");if(d.origin==="string")return`${c?.shortLabel??"קצר"} מדי: ${p} צריכה להכיל ${d.minimum.toString()} ${c?.unit??""} ${d.inclusive?"או יותר":"לפחות"}`.trim();if(d.origin==="number"){let y=d.inclusive?`גדול או שווה ל-${d.minimum}`:`גדול מ-${d.minimum}`;return`קטן מדי: ${p} צריך להיות ${y}`}if(d.origin==="array"||d.origin==="set"){let y=d.origin==="set"?"צריכה":"צריך";if(d.minimum===1&&d.inclusive){let O=d.origin==="set"?"לפחות פריט אחד":"לפחות פריט אחד";return`קטן מדי: ${p} ${y} להכיל ${O}`}let _=d.inclusive?`${d.minimum} ${c?.unit??""} או יותר`:`יותר מ-${d.minimum} ${c?.unit??""}`;return`קטן מדי: ${p} ${y} להכיל ${_}`.trim()}let v=d.inclusive?">=":">",f=r(d.origin??"value");if(c?.unit)return`${c.shortLabel} מדי: ${p} ${f} ${v}${d.minimum.toString()} ${c.unit}`;return`${c?.shortLabel??"קטן"} מדי: ${p} ${f} ${v}${d.minimum.toString()}`}case"invalid_format":{let c=d;if(c.format==="starts_with")return`המחרוזת חייבת להתחיל ב "${c.prefix}"`;if(c.format==="ends_with")return`המחרוזת חייבת להסתיים ב "${c.suffix}"`;if(c.format==="includes")return`המחרוזת חייבת לכלול "${c.includes}"`;if(c.format==="regex")return`המחרוזת חייבת להתאים לתבנית ${c.pattern}`;let p=s[c.format],v=p?.label??c.format,f=(p?.gender??"m")==="f"?"תקינה":"תקין";return`${v} לא ${f}`}case"not_multiple_of":return`מספר לא תקין: חייב להיות מכפלה של ${d.divisor}`;case"unrecognized_keys":return`מפתח${d.keys.length>1?"ות":""} לא מזוה${d.keys.length>1?"ים":"ה"}: ${g(d.keys,", ")}`;case"invalid_key":return"שדה לא תקין באובייקט";case"invalid_union":return"קלט לא תקין";case"invalid_element":return`ערך לא תקין ב${i(d.origin??"array")}`;default:return"קלט לא תקין"}}},ub=()=>{let e={string:{unit:"znakova",verb:"imati"},file:{unit:"bajtova",verb:"imati"},array:{unit:"stavki",verb:"imati"},set:{unit:"stavki",verb:"imati"}};function t(i){return e[i]??null}let n={regex:"unos",email:"email adresa",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum i vrijeme",date:"ISO datum",time:"ISO vrijeme",duration:"ISO trajanje",ipv4:"IPv4 adresa",ipv6:"IPv6 adresa",cidrv4:"IPv4 raspon",cidrv6:"IPv6 raspon",base64:"base64 kodirani tekst",base64url:"base64url kodirani tekst",json_string:"JSON tekst",e164:"E.164 broj",jwt:"JWT",template_literal:"unos"},a={nan:"NaN",string:"tekst",number:"broj",boolean:"boolean",array:"niz",object:"objekt",set:"skup",file:"datoteka",date:"datum",bigint:"bigint",symbol:"simbol",undefined:"undefined",null:"null",function:"funkcija",map:"mapa"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neispravan unos: očekuje se instanceof ${i.expected}, a primljeno je ${s}`;return`Neispravan unos: očekuje se ${r}, a primljeno je ${s}`}case"invalid_value":if(i.values.length===1)return`Neispravna vrijednost: očekivano ${k(i.values[0])}`;return`Neispravna opcija: očekivano jedno od ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Preveliko: očekivano da ${s??"vrijednost"} ima ${r}${i.maximum.toString()} ${o.unit??"elemenata"}`;return`Preveliko: očekivano da ${s??"vrijednost"} bude ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=a[i.origin]??i.origin;if(o)return`Premalo: očekivano da ${s} ima ${r}${i.minimum.toString()} ${o.unit}`;return`Premalo: očekivano da ${s} bude ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neispravan tekst: mora započinjati s "${r.prefix}"`;if(r.format==="ends_with")return`Neispravan tekst: mora završavati s "${r.suffix}"`;if(r.format==="includes")return`Neispravan tekst: mora sadržavati "${r.includes}"`;if(r.format==="regex")return`Neispravan tekst: mora odgovarati uzorku ${r.pattern}`;return`Neispravna ${n[r.format]??i.format}`}case"not_multiple_of":return`Neispravan broj: mora biti višekratnik od ${i.divisor}`;case"unrecognized_keys":return`Neprepoznat${i.keys.length>1?"i ključevi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neispravan ključ u ${a[i.origin]??i.origin}`;case"invalid_union":return"Neispravan unos";case"invalid_element":return`Neispravna vrijednost u ${a[i.origin]??i.origin}`;default:return"Neispravan unos"}}},db=()=>{let e={string:{unit:"karakter",verb:"legyen"},file:{unit:"byte",verb:"legyen"},array:{unit:"elem",verb:"legyen"},set:{unit:"elem",verb:"legyen"}};function t(i){return e[i]??null}let n={regex:"bemenet",email:"email cím",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO időbélyeg",date:"ISO dátum",time:"ISO idő",duration:"ISO időintervallum",ipv4:"IPv4 cím",ipv6:"IPv6 cím",cidrv4:"IPv4 tartomány",cidrv6:"IPv6 tartomány",base64:"base64-kódolt string",base64url:"base64url-kódolt string",json_string:"JSON string",e164:"E.164 szám",jwt:"JWT",template_literal:"bemenet"},a={nan:"NaN",number:"szám",array:"tömb"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Érvénytelen bemenet: a várt érték instanceof ${i.expected}, a kapott érték ${s}`;return`Érvénytelen bemenet: a várt érték ${r}, a kapott érték ${s}`}case"invalid_value":if(i.values.length===1)return`Érvénytelen bemenet: a várt érték ${k(i.values[0])}`;return`Érvénytelen opció: valamelyik érték várt ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Túl nagy: ${i.origin??"érték"} mérete túl nagy ${r}${i.maximum.toString()} ${o.unit??"elem"}`;return`Túl nagy: a bemeneti érték ${i.origin??"érték"} túl nagy: ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Túl kicsi: a bemeneti érték ${i.origin} mérete túl kicsi ${r}${i.minimum.toString()} ${o.unit}`;return`Túl kicsi: a bemeneti érték ${i.origin} túl kicsi ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Érvénytelen string: "${r.prefix}" értékkel kell kezdődnie`;if(r.format==="ends_with")return`Érvénytelen string: "${r.suffix}" értékkel kell végződnie`;if(r.format==="includes")return`Érvénytelen string: "${r.includes}" értéket kell tartalmaznia`;if(r.format==="regex")return`Érvénytelen string: ${r.pattern} mintának kell megfelelnie`;return`Érvénytelen ${n[r.format]??i.format}`}case"not_multiple_of":return`Érvénytelen szám: ${i.divisor} többszörösének kell lennie`;case"unrecognized_keys":return`Ismeretlen kulcs${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Érvénytelen kulcs ${i.origin}`;case"invalid_union":return"Érvénytelen bemenet";case"invalid_element":return`Érvénytelen érték: ${i.origin}`;default:return"Érvénytelen bemenet"}}},mb=()=>{let e={string:{unit:{one:"նշան",many:"նշաններ"},verb:"ունենալ"},file:{unit:{one:"բայթ",many:"բայթեր"},verb:"ունենալ"},array:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"},set:{unit:{one:"տարր",many:"տարրեր"},verb:"ունենալ"}};function t(i){return e[i]??null}let n={regex:"մուտք",email:"էլ. հասցե",url:"URL",emoji:"էմոջի",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO ամսաթիվ և ժամ",date:"ISO ամսաթիվ",time:"ISO ժամ",duration:"ISO տևողություն",ipv4:"IPv4 հասցե",ipv6:"IPv6 հասցե",cidrv4:"IPv4 միջակայք",cidrv6:"IPv6 միջակայք",base64:"base64 ձևաչափով տող",base64url:"base64url ձևաչափով տող",json_string:"JSON տող",e164:"E.164 համար",jwt:"JWT",template_literal:"մուտք"},a={nan:"NaN",number:"թիվ",array:"զանգված"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Սխալ մուտքագրում․ սպասվում էր instanceof ${i.expected}, ստացվել է ${s}`;return`Սխալ մուտքագրում․ սպասվում էր ${r}, ստացվել է ${s}`}case"invalid_value":if(i.values.length===1)return`Սխալ մուտքագրում․ սպասվում էր ${k(i.values[1])}`;return`Սխալ տարբերակ․ սպասվում էր հետևյալներից մեկը՝ ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=ws(s,o.unit.one,o.unit.many);return`Չափազանց մեծ արժեք․ սպասվում է, որ ${tt(i.origin??"արժեք")} կունենա ${r}${i.maximum.toString()} ${l}`}return`Չափազանց մեծ արժեք․ սպասվում է, որ ${tt(i.origin??"արժեք")} լինի ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=ws(s,o.unit.one,o.unit.many);return`Չափազանց փոքր արժեք․ սպասվում է, որ ${tt(i.origin)} կունենա ${r}${i.minimum.toString()} ${l}`}return`Չափազանց փոքր արժեք․ սպասվում է, որ ${tt(i.origin)} լինի ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Սխալ տող․ պետք է սկսվի "${r.prefix}"-ով`;if(r.format==="ends_with")return`Սխալ տող․ պետք է ավարտվի "${r.suffix}"-ով`;if(r.format==="includes")return`Սխալ տող․ պետք է պարունակի "${r.includes}"`;if(r.format==="regex")return`Սխալ տող․ պետք է համապատասխանի ${r.pattern} ձևաչափին`;return`Սխալ ${n[r.format]??i.format}`}case"not_multiple_of":return`Սխալ թիվ․ պետք է բազմապատիկ լինի ${i.divisor}-ի`;case"unrecognized_keys":return`Չճանաչված բանալի${i.keys.length>1?"ներ":""}. ${g(i.keys,", ")}`;case"invalid_key":return`Սխալ բանալի ${tt(i.origin)}-ում`;case"invalid_union":return"Սխալ մուտքագրում";case"invalid_element":return`Սխալ արժեք ${tt(i.origin)}-ում`;default:return"Սխալ մուտքագրում"}}},pb=()=>{let e={string:{unit:"karakter",verb:"memiliki"},file:{unit:"byte",verb:"memiliki"},array:{unit:"item",verb:"memiliki"},set:{unit:"item",verb:"memiliki"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tanggal dan waktu format ISO",date:"tanggal format ISO",time:"jam format ISO",duration:"durasi format ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"rentang alamat IPv4",cidrv6:"rentang alamat IPv6",base64:"string dengan enkode base64",base64url:"string dengan enkode base64url",json_string:"string JSON",e164:"angka E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak valid: diharapkan instanceof ${i.expected}, diterima ${s}`;return`Input tidak valid: diharapkan ${r}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak valid: diharapkan ${k(i.values[0])}`;return`Pilihan tidak valid: diharapkan salah satu dari ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: diharapkan ${i.origin??"value"} memiliki ${r}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: diharapkan ${i.origin??"value"} menjadi ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: diharapkan ${i.origin} memiliki ${r}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: diharapkan ${i.origin} menjadi ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`String tidak valid: harus dimulai dengan "${r.prefix}"`;if(r.format==="ends_with")return`String tidak valid: harus berakhir dengan "${r.suffix}"`;if(r.format==="includes")return`String tidak valid: harus menyertakan "${r.includes}"`;if(r.format==="regex")return`String tidak valid: harus sesuai pola ${r.pattern}`;return`${n[r.format]??i.format} tidak valid`}case"not_multiple_of":return`Angka tidak valid: harus kelipatan dari ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak valid di ${i.origin}`;case"invalid_union":return"Input tidak valid";case"invalid_element":return`Nilai tidak valid di ${i.origin}`;default:return"Input tidak valid"}}},gb=()=>{let e={string:{unit:"stafi",verb:"að hafa"},file:{unit:"bæti",verb:"að hafa"},array:{unit:"hluti",verb:"að hafa"},set:{unit:"hluti",verb:"að hafa"}};function t(i){return e[i]??null}let n={regex:"gildi",email:"netfang",url:"vefslóð",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dagsetning og tími",date:"ISO dagsetning",time:"ISO tími",duration:"ISO tímalengd",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded strengur",base64url:"base64url-encoded strengur",json_string:"JSON strengur",e164:"E.164 tölugildi",jwt:"JWT",template_literal:"gildi"},a={nan:"NaN",number:"númer",array:"fylki"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera instanceof ${i.expected}`;return`Rangt gildi: Þú slóst inn ${s} þar sem á að vera ${r}`}case"invalid_value":if(i.values.length===1)return`Rangt gildi: gert ráð fyrir ${k(i.values[0])}`;return`Ógilt val: má vera eitt af eftirfarandi ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} hafi ${r}${i.maximum.toString()} ${o.unit??"hluti"}`;return`Of stórt: gert er ráð fyrir að ${i.origin??"gildi"} sé ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Of lítið: gert er ráð fyrir að ${i.origin} hafi ${r}${i.minimum.toString()} ${o.unit}`;return`Of lítið: gert er ráð fyrir að ${i.origin} sé ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ógildur strengur: verður að byrja á "${r.prefix}"`;if(r.format==="ends_with")return`Ógildur strengur: verður að enda á "${r.suffix}"`;if(r.format==="includes")return`Ógildur strengur: verður að innihalda "${r.includes}"`;if(r.format==="regex")return`Ógildur strengur: verður að fylgja mynstri ${r.pattern}`;return`Rangt ${n[r.format]??i.format}`}case"not_multiple_of":return`Röng tala: verður að vera margfeldi af ${i.divisor}`;case"unrecognized_keys":return`Óþekkt ${i.keys.length>1?"ir lyklar":"ur lykill"}: ${g(i.keys,", ")}`;case"invalid_key":return`Rangur lykill í ${i.origin}`;case"invalid_union":return"Rangt gildi";case"invalid_element":return`Rangt gildi í ${i.origin}`;default:return"Rangt gildi"}}},yb=()=>{let e={string:{unit:"caratteri",verb:"avere"},file:{unit:"byte",verb:"avere"},array:{unit:"elementi",verb:"avere"},set:{unit:"elementi",verb:"avere"}};function t(i){return e[i]??null}let n={regex:"input",email:"indirizzo email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e ora ISO",date:"data ISO",time:"ora ISO",duration:"durata ISO",ipv4:"indirizzo IPv4",ipv6:"indirizzo IPv6",cidrv4:"intervallo IPv4",cidrv6:"intervallo IPv6",base64:"stringa codificata in base64",base64url:"URL codificata in base64",json_string:"stringa JSON",e164:"numero E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"numero",array:"vettore"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input non valido: atteso instanceof ${i.expected}, ricevuto ${s}`;return`Input non valido: atteso ${r}, ricevuto ${s}`}case"invalid_value":if(i.values.length===1)return`Input non valido: atteso ${k(i.values[0])}`;return`Opzione non valida: atteso uno tra ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Troppo grande: ${i.origin??"valore"} deve avere ${r}${i.maximum.toString()} ${o.unit??"elementi"}`;return`Troppo grande: ${i.origin??"valore"} deve essere ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Troppo piccolo: ${i.origin} deve avere ${r}${i.minimum.toString()} ${o.unit}`;return`Troppo piccolo: ${i.origin} deve essere ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Stringa non valida: deve iniziare con "${r.prefix}"`;if(r.format==="ends_with")return`Stringa non valida: deve terminare con "${r.suffix}"`;if(r.format==="includes")return`Stringa non valida: deve includere "${r.includes}"`;if(r.format==="regex")return`Stringa non valida: deve corrispondere al pattern ${r.pattern}`;return`Input non valido: ${n[r.format]??i.format}`}case"not_multiple_of":return`Numero non valido: deve essere un multiplo di ${i.divisor}`;case"unrecognized_keys":return`Chiav${i.keys.length>1?"i":"e"} non riconosciut${i.keys.length>1?"e":"a"}: ${g(i.keys,", ")}`;case"invalid_key":return`Chiave non valida in ${i.origin}`;case"invalid_union":return"Input non valido";case"invalid_element":return`Valore non valido in ${i.origin}`;default:return"Input non valido"}}},$b=()=>{let e={string:{unit:"文字",verb:"である"},file:{unit:"バイト",verb:"である"},array:{unit:"要素",verb:"である"},set:{unit:"要素",verb:"である"}};function t(i){return e[i]??null}let n={regex:"入力値",email:"メールアドレス",url:"URL",emoji:"絵文字",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日時",date:"ISO日付",time:"ISO時刻",duration:"ISO期間",ipv4:"IPv4アドレス",ipv6:"IPv6アドレス",cidrv4:"IPv4範囲",cidrv6:"IPv6範囲",base64:"base64エンコード文字列",base64url:"base64urlエンコード文字列",json_string:"JSON文字列",e164:"E.164番号",jwt:"JWT",template_literal:"入力値"},a={nan:"NaN",number:"数値",array:"配列"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`無効な入力: instanceof ${i.expected}が期待されましたが、${s}が入力されました`;return`無効な入力: ${r}が期待されましたが、${s}が入力されました`}case"invalid_value":if(i.values.length===1)return`無効な入力: ${k(i.values[0])}が期待されました`;return`無効な選択: ${g(i.values,"、")}のいずれかである必要があります`;case"too_big":{let r=i.inclusive?"以下である":"より小さい",o=t(i.origin);if(o)return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${o.unit??"要素"}${r}必要があります`;return`大きすぎる値: ${i.origin??"値"}は${i.maximum.toString()}${r}必要があります`}case"too_small":{let r=i.inclusive?"以上である":"より大きい",o=t(i.origin);if(o)return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${o.unit}${r}必要があります`;return`小さすぎる値: ${i.origin}は${i.minimum.toString()}${r}必要があります`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`無効な文字列: "${r.prefix}"で始まる必要があります`;if(r.format==="ends_with")return`無効な文字列: "${r.suffix}"で終わる必要があります`;if(r.format==="includes")return`無効な文字列: "${r.includes}"を含む必要があります`;if(r.format==="regex")return`無効な文字列: パターン${r.pattern}に一致する必要があります`;return`無効な${n[r.format]??i.format}`}case"not_multiple_of":return`無効な数値: ${i.divisor}の倍数である必要があります`;case"unrecognized_keys":return`認識されていないキー${i.keys.length>1?"群":""}: ${g(i.keys,"、")}`;case"invalid_key":return`${i.origin}内の無効なキー`;case"invalid_union":return"無効な入力";case"invalid_element":return`${i.origin}内の無効な値`;default:return"無効な入力"}}},kb=()=>{let e={string:{unit:"სიმბოლო",verb:"უნდა შეიცავდეს"},file:{unit:"ბაიტი",verb:"უნდა შეიცავდეს"},array:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"},set:{unit:"ელემენტი",verb:"უნდა შეიცავდეს"}};function t(i){return e[i]??null}let n={regex:"შეყვანა",email:"ელ-ფოსტის მისამართი",url:"URL",emoji:"ემოჯი",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"თარიღი-დრო",date:"თარიღი",time:"დრო",duration:"ხანგრძლივობა",ipv4:"IPv4 მისამართი",ipv6:"IPv6 მისამართი",cidrv4:"IPv4 დიაპაზონი",cidrv6:"IPv6 დიაპაზონი",base64:"base64-კოდირებული ველი",base64url:"base64url-კოდირებული ველი",json_string:"JSON ველი",e164:"E.164 ნომერი",jwt:"JWT",template_literal:"შეყვანა"},a={nan:"NaN",number:"რიცხვი",string:"ველი",boolean:"ბულეანი",function:"ფუნქცია",array:"მასივი"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`არასწორი შეყვანა: მოსალოდნელი instanceof ${i.expected}, მიღებული ${s}`;return`არასწორი შეყვანა: მოსალოდნელი ${r}, მიღებული ${s}`}case"invalid_value":if(i.values.length===1)return`არასწორი შეყვანა: მოსალოდნელი ${k(i.values[0])}`;return`არასწორი ვარიანტი: მოსალოდნელია ერთ-ერთი ${g(i.values,"|")}-დან`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit}`;return`ზედმეტად დიდი: მოსალოდნელი ${i.origin??"მნიშვნელობა"} იყოს ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`ზედმეტად პატარა: მოსალოდნელი ${i.origin} იყოს ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`არასწორი ველი: უნდა იწყებოდეს "${r.prefix}"-ით`;if(r.format==="ends_with")return`არასწორი ველი: უნდა მთავრდებოდეს "${r.suffix}"-ით`;if(r.format==="includes")return`არასწორი ველი: უნდა შეიცავდეს "${r.includes}"-ს`;if(r.format==="regex")return`არასწორი ველი: უნდა შეესაბამებოდეს შაბლონს ${r.pattern}`;return`არასწორი ${n[r.format]??i.format}`}case"not_multiple_of":return`არასწორი რიცხვი: უნდა იყოს ${i.divisor}-ის ჯერადი`;case"unrecognized_keys":return`უცნობი გასაღებ${i.keys.length>1?"ები":"ი"}: ${g(i.keys,", ")}`;case"invalid_key":return`არასწორი გასაღები ${i.origin}-ში`;case"invalid_union":return"არასწორი შეყვანა";case"invalid_element":return`არასწორი მნიშვნელობა ${i.origin}-ში`;default:return"არასწორი შეყვანა"}}},Sb=()=>{let e={string:{unit:"តួអក្សរ",verb:"គួរមាន"},file:{unit:"បៃ",verb:"គួរមាន"},array:{unit:"ធាតុ",verb:"គួរមាន"},set:{unit:"ធាតុ",verb:"គួរមាន"}};function t(i){return e[i]??null}let n={regex:"ទិន្នន័យបញ្ចូល",email:"អាសយដ្ឋានអ៊ីមែល",url:"URL",emoji:"សញ្ញាអារម្មណ៍",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"កាលបរិច្ឆេទ និងម៉ោង ISO",date:"កាលបរិច្ឆេទ ISO",time:"ម៉ោង ISO",duration:"រយៈពេល ISO",ipv4:"អាសយដ្ឋាន IPv4",ipv6:"អាសយដ្ឋាន IPv6",cidrv4:"ដែនអាសយដ្ឋាន IPv4",cidrv6:"ដែនអាសយដ្ឋាន IPv6",base64:"ខ្សែអក្សរអ៊ិកូដ base64",base64url:"ខ្សែអក្សរអ៊ិកូដ base64url",json_string:"ខ្សែអក្សរ JSON",e164:"លេខ E.164",jwt:"JWT",template_literal:"ទិន្នន័យបញ្ចូល"},a={nan:"NaN",number:"លេខ",array:"អារេ (Array)",null:"គ្មានតម្លៃ (null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ instanceof ${i.expected} ប៉ុន្តែទទួលបាន ${s}`;return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${r} ប៉ុន្តែទទួលបាន ${s}`}case"invalid_value":if(i.values.length===1)return`ទិន្នន័យបញ្ចូលមិនត្រឹមត្រូវ៖ ត្រូវការ ${k(i.values[0])}`;return`ជម្រើសមិនត្រឹមត្រូវ៖ ត្រូវជាមួយក្នុងចំណោម ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${r} ${i.maximum.toString()} ${o.unit??"ធាតុ"}`;return`ធំពេក៖ ត្រូវការ ${i.origin??"តម្លៃ"} ${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`តូចពេក៖ ត្រូវការ ${i.origin} ${r} ${i.minimum.toString()} ${o.unit}`;return`តូចពេក៖ ត្រូវការ ${i.origin} ${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវចាប់ផ្តើមដោយ "${r.prefix}"`;if(r.format==="ends_with")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវបញ្ចប់ដោយ "${r.suffix}"`;if(r.format==="includes")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវមាន "${r.includes}"`;if(r.format==="regex")return`ខ្សែអក្សរមិនត្រឹមត្រូវ៖ ត្រូវតែផ្គូផ្គងនឹងទម្រង់ដែលបានកំណត់ ${r.pattern}`;return`មិនត្រឹមត្រូវ៖ ${n[r.format]??i.format}`}case"not_multiple_of":return`លេខមិនត្រឹមត្រូវ៖ ត្រូវតែជាពហុគុណនៃ ${i.divisor}`;case"unrecognized_keys":return`រកឃើញសោមិនស្គាល់៖ ${g(i.keys,", ")}`;case"invalid_key":return`សោមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;case"invalid_union":return"ទិន្នន័យមិនត្រឹមត្រូវ";case"invalid_element":return`ទិន្នន័យមិនត្រឹមត្រូវនៅក្នុង ${i.origin}`;default:return"ទិន្នន័យមិនត្រឹមត្រូវ"}}},xb=()=>{let e={string:{unit:"문자",verb:"to have"},file:{unit:"바이트",verb:"to have"},array:{unit:"개",verb:"to have"},set:{unit:"개",verb:"to have"}};function t(i){return e[i]??null}let n={regex:"입력",email:"이메일 주소",url:"URL",emoji:"이모지",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 날짜시간",date:"ISO 날짜",time:"ISO 시간",duration:"ISO 기간",ipv4:"IPv4 주소",ipv6:"IPv6 주소",cidrv4:"IPv4 범위",cidrv6:"IPv6 범위",base64:"base64 인코딩 문자열",base64url:"base64url 인코딩 문자열",json_string:"JSON 문자열",e164:"E.164 번호",jwt:"JWT",template_literal:"입력"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`잘못된 입력: 예상 타입은 instanceof ${i.expected}, 받은 타입은 ${s}입니다`;return`잘못된 입력: 예상 타입은 ${r}, 받은 타입은 ${s}입니다`}case"invalid_value":if(i.values.length===1)return`잘못된 입력: 값은 ${k(i.values[0])} 이어야 합니다`;return`잘못된 옵션: ${g(i.values,"또는 ")} 중 하나여야 합니다`;case"too_big":{let r=i.inclusive?"이하":"미만",o=r==="미만"?"이어야 합니다":"여야 합니다",s=t(i.origin),l=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()}${l} ${r}${o}`;return`${i.origin??"값"}이 너무 큽니다: ${i.maximum.toString()} ${r}${o}`}case"too_small":{let r=i.inclusive?"이상":"초과",o=r==="이상"?"이어야 합니다":"여야 합니다",s=t(i.origin),l=s?.unit??"요소";if(s)return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()}${l} ${r}${o}`;return`${i.origin??"값"}이 너무 작습니다: ${i.minimum.toString()} ${r}${o}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`잘못된 문자열: "${r.prefix}"(으)로 시작해야 합니다`;if(r.format==="ends_with")return`잘못된 문자열: "${r.suffix}"(으)로 끝나야 합니다`;if(r.format==="includes")return`잘못된 문자열: "${r.includes}"을(를) 포함해야 합니다`;if(r.format==="regex")return`잘못된 문자열: 정규식 ${r.pattern} 패턴과 일치해야 합니다`;return`잘못된 ${n[r.format]??i.format}`}case"not_multiple_of":return`잘못된 숫자: ${i.divisor}의 배수여야 합니다`;case"unrecognized_keys":return`인식할 수 없는 키: ${g(i.keys,", ")}`;case"invalid_key":return`잘못된 키: ${i.origin}`;case"invalid_union":return"잘못된 입력";case"invalid_element":return`잘못된 값: ${i.origin}`;default:return"잘못된 입력"}}},kt=(e)=>{return e.charAt(0).toUpperCase()+e.slice(1)},Ub=()=>{let e={string:{unit:{one:"simbolis",few:"simboliai",many:"simbolių"},verb:{smaller:{inclusive:"turi būti ne ilgesnė kaip",notInclusive:"turi būti trumpesnė kaip"},bigger:{inclusive:"turi būti ne trumpesnė kaip",notInclusive:"turi būti ilgesnė kaip"}}},file:{unit:{one:"baitas",few:"baitai",many:"baitų"},verb:{smaller:{inclusive:"turi būti ne didesnis kaip",notInclusive:"turi būti mažesnis kaip"},bigger:{inclusive:"turi būti ne mažesnis kaip",notInclusive:"turi būti didesnis kaip"}}},array:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}},set:{unit:{one:"elementą",few:"elementus",many:"elementų"},verb:{smaller:{inclusive:"turi turėti ne daugiau kaip",notInclusive:"turi turėti mažiau kaip"},bigger:{inclusive:"turi turėti ne mažiau kaip",notInclusive:"turi turėti daugiau kaip"}}}};function t(i,r,o,s){let l=e[i]??null;if(l===null)return l;return{unit:l.unit[r],verb:l.verb[s][o?"inclusive":"notInclusive"]}}let n={regex:"įvestis",email:"el. pašto adresas",url:"URL",emoji:"jaustukas",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO data ir laikas",date:"ISO data",time:"ISO laikas",duration:"ISO trukmė",ipv4:"IPv4 adresas",ipv6:"IPv6 adresas",cidrv4:"IPv4 tinklo prefiksas (CIDR)",cidrv6:"IPv6 tinklo prefiksas (CIDR)",base64:"base64 užkoduota eilutė",base64url:"base64url užkoduota eilutė",json_string:"JSON eilutė",e164:"E.164 numeris",jwt:"JWT",template_literal:"įvestis"},a={nan:"NaN",number:"skaičius",bigint:"sveikasis skaičius",string:"eilutė",boolean:"loginė reikšmė",undefined:"neapibrėžta reikšmė",function:"funkcija",symbol:"simbolis",array:"masyvas",object:"objektas",null:"nulinė reikšmė"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Gautas tipas ${s}, o tikėtasi - instanceof ${i.expected}`;return`Gautas tipas ${s}, o tikėtasi - ${r}`}case"invalid_value":if(i.values.length===1)return`Privalo būti ${k(i.values[0])}`;return`Privalo būti vienas iš ${g(i.values,"|")} pasirinkimų`;case"too_big":{let r=a[i.origin]??i.origin,o=t(i.origin,Ss(Number(i.maximum)),i.inclusive??!1,"smaller");if(o?.verb)return`${kt(r??i.origin??"reikšmė")} ${o.verb} ${i.maximum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne didesnis kaip":"mažesnis kaip";return`${kt(r??i.origin??"reikšmė")} turi būti ${s} ${i.maximum.toString()} ${o?.unit}`}case"too_small":{let r=a[i.origin]??i.origin,o=t(i.origin,Ss(Number(i.minimum)),i.inclusive??!1,"bigger");if(o?.verb)return`${kt(r??i.origin??"reikšmė")} ${o.verb} ${i.minimum.toString()} ${o.unit??"elementų"}`;let s=i.inclusive?"ne mažesnis kaip":"didesnis kaip";return`${kt(r??i.origin??"reikšmė")} turi būti ${s} ${i.minimum.toString()} ${o?.unit}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Eilutė privalo prasidėti "${r.prefix}"`;if(r.format==="ends_with")return`Eilutė privalo pasibaigti "${r.suffix}"`;if(r.format==="includes")return`Eilutė privalo įtraukti "${r.includes}"`;if(r.format==="regex")return`Eilutė privalo atitikti ${r.pattern}`;return`Neteisingas ${n[r.format]??i.format}`}case"not_multiple_of":return`Skaičius privalo būti ${i.divisor} kartotinis.`;case"unrecognized_keys":return`Neatpažint${i.keys.length>1?"i":"as"} rakt${i.keys.length>1?"ai":"as"}: ${g(i.keys,", ")}`;case"invalid_key":return"Rastas klaidingas raktas";case"invalid_union":return"Klaidinga įvestis";case"invalid_element":{let r=a[i.origin]??i.origin;return`${kt(r??i.origin??"reikšmė")} turi klaidingą įvestį`}default:return"Klaidinga įvestis"}}},Tb=()=>{let e={string:{unit:"знаци",verb:"да имаат"},file:{unit:"бајти",verb:"да имаат"},array:{unit:"ставки",verb:"да имаат"},set:{unit:"ставки",verb:"да имаат"}};function t(i){return e[i]??null}let n={regex:"внес",email:"адреса на е-пошта",url:"URL",emoji:"емоџи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO датум и време",date:"ISO датум",time:"ISO време",duration:"ISO времетраење",ipv4:"IPv4 адреса",ipv6:"IPv6 адреса",cidrv4:"IPv4 опсег",cidrv6:"IPv6 опсег",base64:"base64-енкодирана низа",base64url:"base64url-енкодирана низа",json_string:"JSON низа",e164:"E.164 број",jwt:"JWT",template_literal:"внес"},a={nan:"NaN",number:"број",array:"низа"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Грешен внес: се очекува instanceof ${i.expected}, примено ${s}`;return`Грешен внес: се очекува ${r}, примено ${s}`}case"invalid_value":if(i.values.length===1)return`Invalid input: expected ${k(i.values[0])}`;return`Грешана опција: се очекува една ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Премногу голем: се очекува ${i.origin??"вредноста"} да има ${r}${i.maximum.toString()} ${o.unit??"елементи"}`;return`Премногу голем: се очекува ${i.origin??"вредноста"} да биде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Премногу мал: се очекува ${i.origin} да има ${r}${i.minimum.toString()} ${o.unit}`;return`Премногу мал: се очекува ${i.origin} да биде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неважечка низа: мора да започнува со "${r.prefix}"`;if(r.format==="ends_with")return`Неважечка низа: мора да завршува со "${r.suffix}"`;if(r.format==="includes")return`Неважечка низа: мора да вклучува "${r.includes}"`;if(r.format==="regex")return`Неважечка низа: мора да одгоара на патернот ${r.pattern}`;return`Invalid ${n[r.format]??i.format}`}case"not_multiple_of":return`Грешен број: мора да биде делив со ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Непрепознаени клучеви":"Непрепознаен клуч"}: ${g(i.keys,", ")}`;case"invalid_key":return`Грешен клуч во ${i.origin}`;case"invalid_union":return"Грешен внес";case"invalid_element":return`Грешна вредност во ${i.origin}`;default:return"Грешен внес"}}},Pb=()=>{let e={string:{unit:"aksara",verb:"mempunyai"},file:{unit:"bait",verb:"mempunyai"},array:{unit:"elemen",verb:"mempunyai"},set:{unit:"elemen",verb:"mempunyai"}};function t(i){return e[i]??null}let n={regex:"input",email:"alamat e-mel",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"tarikh masa ISO",date:"tarikh ISO",time:"masa ISO",duration:"tempoh ISO",ipv4:"alamat IPv4",ipv6:"alamat IPv6",cidrv4:"julat IPv4",cidrv6:"julat IPv6",base64:"string dikodkan base64",base64url:"string dikodkan base64url",json_string:"string JSON",e164:"nombor E.164",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"nombor"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Input tidak sah: dijangka instanceof ${i.expected}, diterima ${s}`;return`Input tidak sah: dijangka ${r}, diterima ${s}`}case"invalid_value":if(i.values.length===1)return`Input tidak sah: dijangka ${k(i.values[0])}`;return`Pilihan tidak sah: dijangka salah satu daripada ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Terlalu besar: dijangka ${i.origin??"nilai"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"elemen"}`;return`Terlalu besar: dijangka ${i.origin??"nilai"} adalah ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Terlalu kecil: dijangka ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Terlalu kecil: dijangka ${i.origin} adalah ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`String tidak sah: mesti bermula dengan "${r.prefix}"`;if(r.format==="ends_with")return`String tidak sah: mesti berakhir dengan "${r.suffix}"`;if(r.format==="includes")return`String tidak sah: mesti mengandungi "${r.includes}"`;if(r.format==="regex")return`String tidak sah: mesti sepadan dengan corak ${r.pattern}`;return`${n[r.format]??i.format} tidak sah`}case"not_multiple_of":return`Nombor tidak sah: perlu gandaan ${i.divisor}`;case"unrecognized_keys":return`Kunci tidak dikenali: ${g(i.keys,", ")}`;case"invalid_key":return`Kunci tidak sah dalam ${i.origin}`;case"invalid_union":return"Input tidak sah";case"invalid_element":return`Nilai tidak sah dalam ${i.origin}`;default:return"Input tidak sah"}}},Nb=()=>{let e={string:{unit:"tekens",verb:"heeft"},file:{unit:"bytes",verb:"heeft"},array:{unit:"elementen",verb:"heeft"},set:{unit:"elementen",verb:"heeft"}};function t(i){return e[i]??null}let n={regex:"invoer",email:"emailadres",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum en tijd",date:"ISO datum",time:"ISO tijd",duration:"ISO duur",ipv4:"IPv4-adres",ipv6:"IPv6-adres",cidrv4:"IPv4-bereik",cidrv6:"IPv6-bereik",base64:"base64-gecodeerde tekst",base64url:"base64 URL-gecodeerde tekst",json_string:"JSON string",e164:"E.164-nummer",jwt:"JWT",template_literal:"invoer"},a={nan:"NaN",number:"getal"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ongeldige invoer: verwacht instanceof ${i.expected}, ontving ${s}`;return`Ongeldige invoer: verwacht ${r}, ontving ${s}`}case"invalid_value":if(i.values.length===1)return`Ongeldige invoer: verwacht ${k(i.values[0])}`;return`Ongeldige optie: verwacht één van ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin),s=i.origin==="date"?"laat":i.origin==="string"?"lang":"groot";if(o)return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${r}${i.maximum.toString()} ${o.unit??"elementen"} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin??"waarde"} ${r}${i.maximum.toString()} is`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin),s=i.origin==="date"?"vroeg":i.origin==="string"?"kort":"klein";if(o)return`Te ${s}: verwacht dat ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Te ${s}: verwacht dat ${i.origin} ${r}${i.minimum.toString()} is`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ongeldige tekst: moet met "${r.prefix}" beginnen`;if(r.format==="ends_with")return`Ongeldige tekst: moet op "${r.suffix}" eindigen`;if(r.format==="includes")return`Ongeldige tekst: moet "${r.includes}" bevatten`;if(r.format==="regex")return`Ongeldige tekst: moet overeenkomen met patroon ${r.pattern}`;return`Ongeldig: ${n[r.format]??i.format}`}case"not_multiple_of":return`Ongeldig getal: moet een veelvoud van ${i.divisor} zijn`;case"unrecognized_keys":return`Onbekende key${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Ongeldige key in ${i.origin}`;case"invalid_union":return"Ongeldige invoer";case"invalid_element":return`Ongeldige waarde in ${i.origin}`;default:return"Ongeldige invoer"}}},Db=()=>{let e={string:{unit:"tegn",verb:"å ha"},file:{unit:"bytes",verb:"å ha"},array:{unit:"elementer",verb:"å inneholde"},set:{unit:"elementer",verb:"å inneholde"}};function t(i){return e[i]??null}let n={regex:"input",email:"e-postadresse",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO dato- og klokkeslett",date:"ISO-dato",time:"ISO-klokkeslett",duration:"ISO-varighet",ipv4:"IPv4-område",ipv6:"IPv6-område",cidrv4:"IPv4-spekter",cidrv6:"IPv6-spekter",base64:"base64-enkodet streng",base64url:"base64url-enkodet streng",json_string:"JSON-streng",e164:"E.164-nummer",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"tall",array:"liste"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ugyldig input: forventet instanceof ${i.expected}, fikk ${s}`;return`Ugyldig input: forventet ${r}, fikk ${s}`}case"invalid_value":if(i.values.length===1)return`Ugyldig verdi: forventet ${k(i.values[0])}`;return`Ugyldig valg: forventet en av ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`For stor(t): forventet ${i.origin??"value"} til å ha ${r}${i.maximum.toString()} ${o.unit??"elementer"}`;return`For stor(t): forventet ${i.origin??"value"} til å ha ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`For lite(n): forventet ${i.origin} til å ha ${r}${i.minimum.toString()} ${o.unit}`;return`For lite(n): forventet ${i.origin} til å ha ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ugyldig streng: må starte med "${r.prefix}"`;if(r.format==="ends_with")return`Ugyldig streng: må ende med "${r.suffix}"`;if(r.format==="includes")return`Ugyldig streng: må inneholde "${r.includes}"`;if(r.format==="regex")return`Ugyldig streng: må matche mønsteret ${r.pattern}`;return`Ugyldig ${n[r.format]??i.format}`}case"not_multiple_of":return`Ugyldig tall: må være et multiplum av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Ukjente nøkler":"Ukjent nøkkel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ugyldig nøkkel i ${i.origin}`;case"invalid_union":return"Ugyldig input";case"invalid_element":return`Ugyldig verdi i ${i.origin}`;default:return"Ugyldig input"}}},Cb=()=>{let e={string:{unit:"harf",verb:"olmalıdır"},file:{unit:"bayt",verb:"olmalıdır"},array:{unit:"unsur",verb:"olmalıdır"},set:{unit:"unsur",verb:"olmalıdır"}};function t(i){return e[i]??null}let n={regex:"giren",email:"epostagâh",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO hengâmı",date:"ISO tarihi",time:"ISO zamanı",duration:"ISO müddeti",ipv4:"IPv4 nişânı",ipv6:"IPv6 nişânı",cidrv4:"IPv4 menzili",cidrv6:"IPv6 menzili",base64:"base64-şifreli metin",base64url:"base64url-şifreli metin",json_string:"JSON metin",e164:"E.164 sayısı",jwt:"JWT",template_literal:"giren"},a={nan:"NaN",number:"numara",array:"saf",null:"gayb"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Fâsit giren: umulan instanceof ${i.expected}, alınan ${s}`;return`Fâsit giren: umulan ${r}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Fâsit giren: umulan ${k(i.values[0])}`;return`Fâsit tercih: mûteberler ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Fazla büyük: ${i.origin??"value"}, ${r}${i.maximum.toString()} ${o.unit??"elements"} sahip olmalıydı.`;return`Fazla büyük: ${i.origin??"value"}, ${r}${i.maximum.toString()} olmalıydı.`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Fazla küçük: ${i.origin}, ${r}${i.minimum.toString()} ${o.unit} sahip olmalıydı.`;return`Fazla küçük: ${i.origin}, ${r}${i.minimum.toString()} olmalıydı.`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Fâsit metin: "${r.prefix}" ile başlamalı.`;if(r.format==="ends_with")return`Fâsit metin: "${r.suffix}" ile bitmeli.`;if(r.format==="includes")return`Fâsit metin: "${r.includes}" ihtivâ etmeli.`;if(r.format==="regex")return`Fâsit metin: ${r.pattern} nakşına uymalı.`;return`Fâsit ${n[r.format]??i.format}`}case"not_multiple_of":return`Fâsit sayı: ${i.divisor} katı olmalıydı.`;case"unrecognized_keys":return`Tanınmayan anahtar ${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} için tanınmayan anahtar var.`;case"invalid_union":return"Giren tanınamadı.";case"invalid_element":return`${i.origin} için tanınmayan kıymet var.`;default:return"Kıymet tanınamadı."}}},Lb=()=>{let e={string:{unit:"توکي",verb:"ولري"},file:{unit:"بایټس",verb:"ولري"},array:{unit:"توکي",verb:"ولري"},set:{unit:"توکي",verb:"ولري"}};function t(i){return e[i]??null}let n={regex:"ورودي",email:"بریښنالیک",url:"یو آر ال",emoji:"ایموجي",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"نیټه او وخت",date:"نېټه",time:"وخت",duration:"موده",ipv4:"د IPv4 پته",ipv6:"د IPv6 پته",cidrv4:"د IPv4 ساحه",cidrv6:"د IPv6 ساحه",base64:"base64-encoded متن",base64url:"base64url-encoded متن",json_string:"JSON متن",e164:"د E.164 شمېره",jwt:"JWT",template_literal:"ورودي"},a={nan:"NaN",number:"عدد",array:"ارې"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ناسم ورودي: باید instanceof ${i.expected} وای, مګر ${s} ترلاسه شو`;return`ناسم ورودي: باید ${r} وای, مګر ${s} ترلاسه شو`}case"invalid_value":if(i.values.length===1)return`ناسم ورودي: باید ${k(i.values[0])} وای`;return`ناسم انتخاب: باید یو له ${g(i.values,"|")} څخه وای`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`ډیر لوی: ${i.origin??"ارزښت"} باید ${r}${i.maximum.toString()} ${o.unit??"عنصرونه"} ولري`;return`ډیر لوی: ${i.origin??"ارزښت"} باید ${r}${i.maximum.toString()} وي`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`ډیر کوچنی: ${i.origin} باید ${r}${i.minimum.toString()} ${o.unit} ولري`;return`ډیر کوچنی: ${i.origin} باید ${r}${i.minimum.toString()} وي`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`ناسم متن: باید د "${r.prefix}" سره پیل شي`;if(r.format==="ends_with")return`ناسم متن: باید د "${r.suffix}" سره پای ته ورسيږي`;if(r.format==="includes")return`ناسم متن: باید "${r.includes}" ولري`;if(r.format==="regex")return`ناسم متن: باید د ${r.pattern} سره مطابقت ولري`;return`${n[r.format]??i.format} ناسم دی`}case"not_multiple_of":return`ناسم عدد: باید د ${i.divisor} مضرب وي`;case"unrecognized_keys":return`ناسم ${i.keys.length>1?"کلیډونه":"کلیډ"}: ${g(i.keys,", ")}`;case"invalid_key":return`ناسم کلیډ په ${i.origin} کې`;case"invalid_union":return"ناسمه ورودي";case"invalid_element":return`ناسم عنصر په ${i.origin} کې`;default:return"ناسمه ورودي"}}},Fb=()=>{let e={string:{unit:"znaków",verb:"mieć"},file:{unit:"bajtów",verb:"mieć"},array:{unit:"elementów",verb:"mieć"},set:{unit:"elementów",verb:"mieć"}};function t(i){return e[i]??null}let n={regex:"wyrażenie",email:"adres email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data i godzina w formacie ISO",date:"data w formacie ISO",time:"godzina w formacie ISO",duration:"czas trwania ISO",ipv4:"adres IPv4",ipv6:"adres IPv6",cidrv4:"zakres IPv4",cidrv6:"zakres IPv6",base64:"ciąg znaków zakodowany w formacie base64",base64url:"ciąg znaków zakodowany w formacie base64url",json_string:"ciąg znaków w formacie JSON",e164:"liczba E.164",jwt:"JWT",template_literal:"wejście"},a={nan:"NaN",number:"liczba",array:"tablica"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Nieprawidłowe dane wejściowe: oczekiwano instanceof ${i.expected}, otrzymano ${s}`;return`Nieprawidłowe dane wejściowe: oczekiwano ${r}, otrzymano ${s}`}case"invalid_value":if(i.values.length===1)return`Nieprawidłowe dane wejściowe: oczekiwano ${k(i.values[0])}`;return`Nieprawidłowa opcja: oczekiwano jednej z wartości ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Za duża wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${r}${i.maximum.toString()} ${o.unit??"elementów"}`;return`Zbyt duż(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Za mała wartość: oczekiwano, że ${i.origin??"wartość"} będzie mieć ${r}${i.minimum.toString()} ${o.unit??"elementów"}`;return`Zbyt mał(y/a/e): oczekiwano, że ${i.origin??"wartość"} będzie wynosić ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Nieprawidłowy ciąg znaków: musi zaczynać się od "${r.prefix}"`;if(r.format==="ends_with")return`Nieprawidłowy ciąg znaków: musi kończyć się na "${r.suffix}"`;if(r.format==="includes")return`Nieprawidłowy ciąg znaków: musi zawierać "${r.includes}"`;if(r.format==="regex")return`Nieprawidłowy ciąg znaków: musi odpowiadać wzorcowi ${r.pattern}`;return`Nieprawidłow(y/a/e) ${n[r.format]??i.format}`}case"not_multiple_of":return`Nieprawidłowa liczba: musi być wielokrotnością ${i.divisor}`;case"unrecognized_keys":return`Nierozpoznane klucze${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Nieprawidłowy klucz w ${i.origin}`;case"invalid_union":return"Nieprawidłowe dane wejściowe";case"invalid_element":return`Nieprawidłowa wartość w ${i.origin}`;default:return"Nieprawidłowe dane wejściowe"}}},Kb=()=>{let e={string:{unit:"caracteres",verb:"ter"},file:{unit:"bytes",verb:"ter"},array:{unit:"itens",verb:"ter"},set:{unit:"itens",verb:"ter"}};function t(i){return e[i]??null}let n={regex:"padrão",email:"endereço de e-mail",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"data e hora ISO",date:"data ISO",time:"hora ISO",duration:"duração ISO",ipv4:"endereço IPv4",ipv6:"endereço IPv6",cidrv4:"faixa de IPv4",cidrv6:"faixa de IPv6",base64:"texto codificado em base64",base64url:"URL codificada em base64",json_string:"texto JSON",e164:"número E.164",jwt:"JWT",template_literal:"entrada"},a={nan:"NaN",number:"número",null:"nulo"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Tipo inválido: esperado instanceof ${i.expected}, recebido ${s}`;return`Tipo inválido: esperado ${r}, recebido ${s}`}case"invalid_value":if(i.values.length===1)return`Entrada inválida: esperado ${k(i.values[0])}`;return`Opção inválida: esperada uma das ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Muito grande: esperado que ${i.origin??"valor"} tivesse ${r}${i.maximum.toString()} ${o.unit??"elementos"}`;return`Muito grande: esperado que ${i.origin??"valor"} fosse ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Muito pequeno: esperado que ${i.origin} tivesse ${r}${i.minimum.toString()} ${o.unit}`;return`Muito pequeno: esperado que ${i.origin} fosse ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Texto inválido: deve começar com "${r.prefix}"`;if(r.format==="ends_with")return`Texto inválido: deve terminar com "${r.suffix}"`;if(r.format==="includes")return`Texto inválido: deve incluir "${r.includes}"`;if(r.format==="regex")return`Texto inválido: deve corresponder ao padrão ${r.pattern}`;return`${n[r.format]??i.format} inválido`}case"not_multiple_of":return`Número inválido: deve ser múltiplo de ${i.divisor}`;case"unrecognized_keys":return`Chave${i.keys.length>1?"s":""} desconhecida${i.keys.length>1?"s":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Chave inválida em ${i.origin}`;case"invalid_union":return"Entrada inválida";case"invalid_element":return`Valor inválido em ${i.origin}`;default:return"Campo inválido"}}},Wb=()=>{let e={string:{unit:"caractere",verb:"să aibă"},file:{unit:"octeți",verb:"să aibă"},array:{unit:"elemente",verb:"să aibă"},set:{unit:"elemente",verb:"să aibă"},map:{unit:"intrări",verb:"să aibă"}};function t(i){return e[i]??null}let n={regex:"intrare",email:"adresă de email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"dată și oră ISO",date:"dată ISO",time:"oră ISO",duration:"durată ISO",ipv4:"adresă IPv4",ipv6:"adresă IPv6",mac:"adresă MAC",cidrv4:"interval IPv4",cidrv6:"interval IPv6",base64:"șir codat base64",base64url:"șir codat base64url",json_string:"șir JSON",e164:"număr E.164",jwt:"JWT",template_literal:"intrare"},a={nan:"NaN",string:"șir",number:"număr",boolean:"boolean",function:"funcție",array:"matrice",object:"obiect",undefined:"nedefinit",symbol:"simbol",bigint:"număr mare",void:"void",never:"never",map:"hartă",set:"set"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;return`Intrare invalidă: așteptat ${r}, primit ${s}`}case"invalid_value":if(i.values.length===1)return`Intrare invalidă: așteptat ${k(i.values[0])}`;return`Opțiune invalidă: așteptat una dintre ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Prea mare: așteptat ca ${i.origin??"valoarea"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"elemente"}`;return`Prea mare: așteptat ca ${i.origin??"valoarea"} să fie ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Prea mic: așteptat ca ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Prea mic: așteptat ca ${i.origin} să fie ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Șir invalid: trebuie să înceapă cu "${r.prefix}"`;if(r.format==="ends_with")return`Șir invalid: trebuie să se termine cu "${r.suffix}"`;if(r.format==="includes")return`Șir invalid: trebuie să includă "${r.includes}"`;if(r.format==="regex")return`Șir invalid: trebuie să se potrivească cu modelul ${r.pattern}`;return`Format invalid: ${n[r.format]??i.format}`}case"not_multiple_of":return`Număr invalid: trebuie să fie multiplu de ${i.divisor}`;case"unrecognized_keys":return`Chei nerecunoscute: ${g(i.keys,", ")}`;case"invalid_key":return`Cheie invalidă în ${i.origin}`;case"invalid_union":return"Intrare invalidă";case"invalid_element":return`Valoare invalidă în ${i.origin}`;default:return"Intrare invalidă"}}},Hb=()=>{let e={string:{unit:{one:"символ",few:"символа",many:"символов"},verb:"иметь"},file:{unit:{one:"байт",few:"байта",many:"байт"},verb:"иметь"},array:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"},set:{unit:{one:"элемент",few:"элемента",many:"элементов"},verb:"иметь"}};function t(i){return e[i]??null}let n={regex:"ввод",email:"email адрес",url:"URL",emoji:"эмодзи",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO дата и время",date:"ISO дата",time:"ISO время",duration:"ISO длительность",ipv4:"IPv4 адрес",ipv6:"IPv6 адрес",cidrv4:"IPv4 диапазон",cidrv6:"IPv6 диапазон",base64:"строка в формате base64",base64url:"строка в формате base64url",json_string:"JSON строка",e164:"номер E.164",jwt:"JWT",template_literal:"ввод"},a={nan:"NaN",number:"число",array:"массив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Неверный ввод: ожидалось instanceof ${i.expected}, получено ${s}`;return`Неверный ввод: ожидалось ${r}, получено ${s}`}case"invalid_value":if(i.values.length===1)return`Неверный ввод: ожидалось ${k(i.values[0])}`;return`Неверный вариант: ожидалось одно из ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o){let s=Number(i.maximum),l=Is(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет иметь ${r}${i.maximum.toString()} ${l}`}return`Слишком большое значение: ожидалось, что ${i.origin??"значение"} будет ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o){let s=Number(i.minimum),l=Is(s,o.unit.one,o.unit.few,o.unit.many);return`Слишком маленькое значение: ожидалось, что ${i.origin} будет иметь ${r}${i.minimum.toString()} ${l}`}return`Слишком маленькое значение: ожидалось, что ${i.origin} будет ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неверная строка: должна начинаться с "${r.prefix}"`;if(r.format==="ends_with")return`Неверная строка: должна заканчиваться на "${r.suffix}"`;if(r.format==="includes")return`Неверная строка: должна содержать "${r.includes}"`;if(r.format==="regex")return`Неверная строка: должна соответствовать шаблону ${r.pattern}`;return`Неверный ${n[r.format]??i.format}`}case"not_multiple_of":return`Неверное число: должно быть кратным ${i.divisor}`;case"unrecognized_keys":return`Нераспознанн${i.keys.length>1?"ые":"ый"} ключ${i.keys.length>1?"и":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неверный ключ в ${i.origin}`;case"invalid_union":return"Неверные входные данные";case"invalid_element":return`Неверное значение в ${i.origin}`;default:return"Неверные входные данные"}}},Vb=()=>{let e={string:{unit:"znakov",verb:"imeti"},file:{unit:"bajtov",verb:"imeti"},array:{unit:"elementov",verb:"imeti"},set:{unit:"elementov",verb:"imeti"}};function t(i){return e[i]??null}let n={regex:"vnos",email:"e-poštni naslov",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datum in čas",date:"ISO datum",time:"ISO čas",duration:"ISO trajanje",ipv4:"IPv4 naslov",ipv6:"IPv6 naslov",cidrv4:"obseg IPv4",cidrv6:"obseg IPv6",base64:"base64 kodiran niz",base64url:"base64url kodiran niz",json_string:"JSON niz",e164:"E.164 številka",jwt:"JWT",template_literal:"vnos"},a={nan:"NaN",number:"število",array:"tabela"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Neveljaven vnos: pričakovano instanceof ${i.expected}, prejeto ${s}`;return`Neveljaven vnos: pričakovano ${r}, prejeto ${s}`}case"invalid_value":if(i.values.length===1)return`Neveljaven vnos: pričakovano ${k(i.values[0])}`;return`Neveljavna možnost: pričakovano eno izmed ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} imelo ${r}${i.maximum.toString()} ${o.unit??"elementov"}`;return`Preveliko: pričakovano, da bo ${i.origin??"vrednost"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Premajhno: pričakovano, da bo ${i.origin} imelo ${r}${i.minimum.toString()} ${o.unit}`;return`Premajhno: pričakovano, da bo ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Neveljaven niz: mora se začeti z "${r.prefix}"`;if(r.format==="ends_with")return`Neveljaven niz: mora se končati z "${r.suffix}"`;if(r.format==="includes")return`Neveljaven niz: mora vsebovati "${r.includes}"`;if(r.format==="regex")return`Neveljaven niz: mora ustrezati vzorcu ${r.pattern}`;return`Neveljaven ${n[r.format]??i.format}`}case"not_multiple_of":return`Neveljavno število: mora biti večkratnik ${i.divisor}`;case"unrecognized_keys":return`Neprepoznan${i.keys.length>1?"i ključi":" ključ"}: ${g(i.keys,", ")}`;case"invalid_key":return`Neveljaven ključ v ${i.origin}`;case"invalid_union":return"Neveljaven vnos";case"invalid_element":return`Neveljavna vrednost v ${i.origin}`;default:return"Neveljaven vnos"}}},qb=()=>{let e={string:{unit:"tecken",verb:"att ha"},file:{unit:"bytes",verb:"att ha"},array:{unit:"objekt",verb:"att innehålla"},set:{unit:"objekt",verb:"att innehålla"}};function t(i){return e[i]??null}let n={regex:"reguljärt uttryck",email:"e-postadress",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO-datum och tid",date:"ISO-datum",time:"ISO-tid",duration:"ISO-varaktighet",ipv4:"IPv4-intervall",ipv6:"IPv6-intervall",cidrv4:"IPv4-spektrum",cidrv6:"IPv6-spektrum",base64:"base64-kodad sträng",base64url:"base64url-kodad sträng",json_string:"JSON-sträng",e164:"E.164-nummer",jwt:"JWT",template_literal:"mall-literal"},a={nan:"NaN",number:"antal",array:"lista"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ogiltig inmatning: förväntat instanceof ${i.expected}, fick ${s}`;return`Ogiltig inmatning: förväntat ${r}, fick ${s}`}case"invalid_value":if(i.values.length===1)return`Ogiltig inmatning: förväntat ${k(i.values[0])}`;return`Ogiltigt val: förväntade en av ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`För stor(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.maximum.toString()} ${o.unit??"element"}`;return`För stor(t): förväntat ${i.origin??"värdet"} att ha ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.minimum.toString()} ${o.unit}`;return`För lite(t): förväntade ${i.origin??"värdet"} att ha ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ogiltig sträng: måste börja med "${r.prefix}"`;if(r.format==="ends_with")return`Ogiltig sträng: måste sluta med "${r.suffix}"`;if(r.format==="includes")return`Ogiltig sträng: måste innehålla "${r.includes}"`;if(r.format==="regex")return`Ogiltig sträng: måste matcha mönstret "${r.pattern}"`;return`Ogiltig(t) ${n[r.format]??i.format}`}case"not_multiple_of":return`Ogiltigt tal: måste vara en multipel av ${i.divisor}`;case"unrecognized_keys":return`${i.keys.length>1?"Okända nycklar":"Okänd nyckel"}: ${g(i.keys,", ")}`;case"invalid_key":return`Ogiltig nyckel i ${i.origin??"värdet"}`;case"invalid_union":return"Ogiltig input";case"invalid_element":return`Ogiltigt värde i ${i.origin??"värdet"}`;default:return"Ogiltig input"}}},e$=()=>{let e={string:{unit:"எழுத்துக்கள்",verb:"கொண்டிருக்க வேண்டும்"},file:{unit:"பைட்டுகள்",verb:"கொண்டிருக்க வேண்டும்"},array:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"},set:{unit:"உறுப்புகள்",verb:"கொண்டிருக்க வேண்டும்"}};function t(i){return e[i]??null}let n={regex:"உள்ளீடு",email:"மின்னஞ்சல் முகவரி",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO தேதி நேரம்",date:"ISO தேதி",time:"ISO நேரம்",duration:"ISO கால அளவு",ipv4:"IPv4 முகவரி",ipv6:"IPv6 முகவரி",cidrv4:"IPv4 வரம்பு",cidrv6:"IPv6 வரம்பு",base64:"base64-encoded சரம்",base64url:"base64url-encoded சரம்",json_string:"JSON சரம்",e164:"E.164 எண்",jwt:"JWT",template_literal:"input"},a={nan:"NaN",number:"எண்",array:"அணி",null:"வெறுமை"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது instanceof ${i.expected}, பெறப்பட்டது ${s}`;return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${r}, பெறப்பட்டது ${s}`}case"invalid_value":if(i.values.length===1)return`தவறான உள்ளீடு: எதிர்பார்க்கப்பட்டது ${k(i.values[0])}`;return`தவறான விருப்பம்: எதிர்பார்க்கப்பட்டது ${g(i.values,"|")} இல் ஒன்று`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${r}${i.maximum.toString()} ${o.unit??"உறுப்புகள்"} ஆக இருக்க வேண்டும்`;return`மிக பெரியது: எதிர்பார்க்கப்பட்டது ${i.origin??"மதிப்பு"} ${r}${i.maximum.toString()} ஆக இருக்க வேண்டும்`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ஆக இருக்க வேண்டும்`;return`மிகச் சிறியது: எதிர்பார்க்கப்பட்டது ${i.origin} ${r}${i.minimum.toString()} ஆக இருக்க வேண்டும்`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`தவறான சரம்: "${r.prefix}" இல் தொடங்க வேண்டும்`;if(r.format==="ends_with")return`தவறான சரம்: "${r.suffix}" இல் முடிவடைய வேண்டும்`;if(r.format==="includes")return`தவறான சரம்: "${r.includes}" ஐ உள்ளடக்க வேண்டும்`;if(r.format==="regex")return`தவறான சரம்: ${r.pattern} முறைபாட்டுடன் பொருந்த வேண்டும்`;return`தவறான ${n[r.format]??i.format}`}case"not_multiple_of":return`தவறான எண்: ${i.divisor} இன் பலமாக இருக்க வேண்டும்`;case"unrecognized_keys":return`அடையாளம் தெரியாத விசை${i.keys.length>1?"கள்":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} இல் தவறான விசை`;case"invalid_union":return"தவறான உள்ளீடு";case"invalid_element":return`${i.origin} இல் தவறான மதிப்பு`;default:return"தவறான உள்ளீடு"}}},i$=()=>{let e={string:{unit:"ตัวอักษร",verb:"ควรมี"},file:{unit:"ไบต์",verb:"ควรมี"},array:{unit:"รายการ",verb:"ควรมี"},set:{unit:"รายการ",verb:"ควรมี"}};function t(i){return e[i]??null}let n={regex:"ข้อมูลที่ป้อน",email:"ที่อยู่อีเมล",url:"URL",emoji:"อิโมจิ",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"วันที่เวลาแบบ ISO",date:"วันที่แบบ ISO",time:"เวลาแบบ ISO",duration:"ช่วงเวลาแบบ ISO",ipv4:"ที่อยู่ IPv4",ipv6:"ที่อยู่ IPv6",cidrv4:"ช่วง IP แบบ IPv4",cidrv6:"ช่วง IP แบบ IPv6",base64:"ข้อความแบบ Base64",base64url:"ข้อความแบบ Base64 สำหรับ URL",json_string:"ข้อความแบบ JSON",e164:"เบอร์โทรศัพท์ระหว่างประเทศ (E.164)",jwt:"โทเคน JWT",template_literal:"ข้อมูลที่ป้อน"},a={nan:"NaN",number:"ตัวเลข",array:"อาร์เรย์ (Array)",null:"ไม่มีค่า (null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น instanceof ${i.expected} แต่ได้รับ ${s}`;return`ประเภทข้อมูลไม่ถูกต้อง: ควรเป็น ${r} แต่ได้รับ ${s}`}case"invalid_value":if(i.values.length===1)return`ค่าไม่ถูกต้อง: ควรเป็น ${k(i.values[0])}`;return`ตัวเลือกไม่ถูกต้อง: ควรเป็นหนึ่งใน ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"ไม่เกิน":"น้อยกว่า",o=t(i.origin);if(o)return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${r} ${i.maximum.toString()} ${o.unit??"รายการ"}`;return`เกินกำหนด: ${i.origin??"ค่า"} ควรมี${r} ${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?"อย่างน้อย":"มากกว่า",o=t(i.origin);if(o)return`น้อยกว่ากำหนด: ${i.origin} ควรมี${r} ${i.minimum.toString()} ${o.unit}`;return`น้อยกว่ากำหนด: ${i.origin} ควรมี${r} ${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องขึ้นต้นด้วย "${r.prefix}"`;if(r.format==="ends_with")return`รูปแบบไม่ถูกต้อง: ข้อความต้องลงท้ายด้วย "${r.suffix}"`;if(r.format==="includes")return`รูปแบบไม่ถูกต้อง: ข้อความต้องมี "${r.includes}" อยู่ในข้อความ`;if(r.format==="regex")return`รูปแบบไม่ถูกต้อง: ต้องตรงกับรูปแบบที่กำหนด ${r.pattern}`;return`รูปแบบไม่ถูกต้อง: ${n[r.format]??i.format}`}case"not_multiple_of":return`ตัวเลขไม่ถูกต้อง: ต้องเป็นจำนวนที่หารด้วย ${i.divisor} ได้ลงตัว`;case"unrecognized_keys":return`พบคีย์ที่ไม่รู้จัก: ${g(i.keys,", ")}`;case"invalid_key":return`คีย์ไม่ถูกต้องใน ${i.origin}`;case"invalid_union":return"ข้อมูลไม่ถูกต้อง: ไม่ตรงกับรูปแบบยูเนียนที่กำหนดไว้";case"invalid_element":return`ข้อมูลไม่ถูกต้องใน ${i.origin}`;default:return"ข้อมูลไม่ถูกต้อง"}}},r$=()=>{let e={string:{unit:"karakter",verb:"olmalı"},file:{unit:"bayt",verb:"olmalı"},array:{unit:"öğe",verb:"olmalı"},set:{unit:"öğe",verb:"olmalı"}};function t(i){return e[i]??null}let n={regex:"girdi",email:"e-posta adresi",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO tarih ve saat",date:"ISO tarih",time:"ISO saat",duration:"ISO süre",ipv4:"IPv4 adresi",ipv6:"IPv6 adresi",cidrv4:"IPv4 aralığı",cidrv6:"IPv6 aralığı",base64:"base64 ile şifrelenmiş metin",base64url:"base64url ile şifrelenmiş metin",json_string:"JSON dizesi",e164:"E.164 sayısı",jwt:"JWT",template_literal:"Şablon dizesi"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Geçersiz değer: beklenen instanceof ${i.expected}, alınan ${s}`;return`Geçersiz değer: beklenen ${r}, alınan ${s}`}case"invalid_value":if(i.values.length===1)return`Geçersiz değer: beklenen ${k(i.values[0])}`;return`Geçersiz seçenek: aşağıdakilerden biri olmalı: ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Çok büyük: beklenen ${i.origin??"değer"} ${r}${i.maximum.toString()} ${o.unit??"öğe"}`;return`Çok büyük: beklenen ${i.origin??"değer"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Çok küçük: beklenen ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`Çok küçük: beklenen ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Geçersiz metin: "${r.prefix}" ile başlamalı`;if(r.format==="ends_with")return`Geçersiz metin: "${r.suffix}" ile bitmeli`;if(r.format==="includes")return`Geçersiz metin: "${r.includes}" içermeli`;if(r.format==="regex")return`Geçersiz metin: ${r.pattern} desenine uymalı`;return`Geçersiz ${n[r.format]??i.format}`}case"not_multiple_of":return`Geçersiz sayı: ${i.divisor} ile tam bölünebilmeli`;case"unrecognized_keys":return`Tanınmayan anahtar${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} içinde geçersiz anahtar`;case"invalid_union":return"Geçersiz değer";case"invalid_element":return`${i.origin} içinde geçersiz değer`;default:return"Geçersiz değer"}}},o$=()=>{let e={string:{unit:"символів",verb:"матиме"},file:{unit:"байтів",verb:"матиме"},array:{unit:"елементів",verb:"матиме"},set:{unit:"елементів",verb:"матиме"}};function t(i){return e[i]??null}let n={regex:"вхідні дані",email:"адреса електронної пошти",url:"URL",emoji:"емодзі",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"дата та час ISO",date:"дата ISO",time:"час ISO",duration:"тривалість ISO",ipv4:"адреса IPv4",ipv6:"адреса IPv6",cidrv4:"діапазон IPv4",cidrv6:"діапазон IPv6",base64:"рядок у кодуванні base64",base64url:"рядок у кодуванні base64url",json_string:"рядок JSON",e164:"номер E.164",jwt:"JWT",template_literal:"вхідні дані"},a={nan:"NaN",number:"число",array:"масив"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Неправильні вхідні дані: очікується instanceof ${i.expected}, отримано ${s}`;return`Неправильні вхідні дані: очікується ${r}, отримано ${s}`}case"invalid_value":if(i.values.length===1)return`Неправильні вхідні дані: очікується ${k(i.values[0])}`;return`Неправильна опція: очікується одне з ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Занадто велике: очікується, що ${i.origin??"значення"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"елементів"}`;return`Занадто велике: очікується, що ${i.origin??"значення"} буде ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Занадто мале: очікується, що ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Занадто мале: очікується, що ${i.origin} буде ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Неправильний рядок: повинен починатися з "${r.prefix}"`;if(r.format==="ends_with")return`Неправильний рядок: повинен закінчуватися на "${r.suffix}"`;if(r.format==="includes")return`Неправильний рядок: повинен містити "${r.includes}"`;if(r.format==="regex")return`Неправильний рядок: повинен відповідати шаблону ${r.pattern}`;return`Неправильний ${n[r.format]??i.format}`}case"not_multiple_of":return`Неправильне число: повинно бути кратним ${i.divisor}`;case"unrecognized_keys":return`Нерозпізнаний ключ${i.keys.length>1?"і":""}: ${g(i.keys,", ")}`;case"invalid_key":return`Неправильний ключ у ${i.origin}`;case"invalid_union":return"Неправильні вхідні дані";case"invalid_element":return`Неправильне значення у ${i.origin}`;default:return"Неправильні вхідні дані"}}},u$=()=>{let e={string:{unit:"حروف",verb:"ہونا"},file:{unit:"بائٹس",verb:"ہونا"},array:{unit:"آئٹمز",verb:"ہونا"},set:{unit:"آئٹمز",verb:"ہونا"}};function t(i){return e[i]??null}let n={regex:"ان پٹ",email:"ای میل ایڈریس",url:"یو آر ایل",emoji:"ایموجی",uuid:"یو یو آئی ڈی",uuidv4:"یو یو آئی ڈی وی 4",uuidv6:"یو یو آئی ڈی وی 6",nanoid:"نینو آئی ڈی",guid:"جی یو آئی ڈی",cuid:"سی یو آئی ڈی",cuid2:"سی یو آئی ڈی 2",ulid:"یو ایل آئی ڈی",xid:"ایکس آئی ڈی",ksuid:"کے ایس یو آئی ڈی",datetime:"آئی ایس او ڈیٹ ٹائم",date:"آئی ایس او تاریخ",time:"آئی ایس او وقت",duration:"آئی ایس او مدت",ipv4:"آئی پی وی 4 ایڈریس",ipv6:"آئی پی وی 6 ایڈریس",cidrv4:"آئی پی وی 4 رینج",cidrv6:"آئی پی وی 6 رینج",base64:"بیس 64 ان کوڈڈ سٹرنگ",base64url:"بیس 64 یو آر ایل ان کوڈڈ سٹرنگ",json_string:"جے ایس او این سٹرنگ",e164:"ای 164 نمبر",jwt:"جے ڈبلیو ٹی",template_literal:"ان پٹ"},a={nan:"NaN",number:"نمبر",array:"آرے",null:"نل"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`غلط ان پٹ: instanceof ${i.expected} متوقع تھا، ${s} موصول ہوا`;return`غلط ان پٹ: ${r} متوقع تھا، ${s} موصول ہوا`}case"invalid_value":if(i.values.length===1)return`غلط ان پٹ: ${k(i.values[0])} متوقع تھا`;return`غلط آپشن: ${g(i.values,"|")} میں سے ایک متوقع تھا`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`بہت بڑا: ${i.origin??"ویلیو"} کے ${r}${i.maximum.toString()} ${o.unit??"عناصر"} ہونے متوقع تھے`;return`بہت بڑا: ${i.origin??"ویلیو"} کا ${r}${i.maximum.toString()} ہونا متوقع تھا`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`بہت چھوٹا: ${i.origin} کے ${r}${i.minimum.toString()} ${o.unit} ہونے متوقع تھے`;return`بہت چھوٹا: ${i.origin} کا ${r}${i.minimum.toString()} ہونا متوقع تھا`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`غلط سٹرنگ: "${r.prefix}" سے شروع ہونا چاہیے`;if(r.format==="ends_with")return`غلط سٹرنگ: "${r.suffix}" پر ختم ہونا چاہیے`;if(r.format==="includes")return`غلط سٹرنگ: "${r.includes}" شامل ہونا چاہیے`;if(r.format==="regex")return`غلط سٹرنگ: پیٹرن ${r.pattern} سے میچ ہونا چاہیے`;return`غلط ${n[r.format]??i.format}`}case"not_multiple_of":return`غلط نمبر: ${i.divisor} کا مضاعف ہونا چاہیے`;case"unrecognized_keys":return`غیر تسلیم شدہ کی${i.keys.length>1?"ز":""}: ${g(i.keys,"، ")}`;case"invalid_key":return`${i.origin} میں غلط کی`;case"invalid_union":return"غلط ان پٹ";case"invalid_element":return`${i.origin} میں غلط ویلیو`;default:return"غلط ان پٹ"}}},d$=()=>{let e={string:{unit:"belgi",verb:"bo‘lishi kerak"},file:{unit:"bayt",verb:"bo‘lishi kerak"},array:{unit:"element",verb:"bo‘lishi kerak"},set:{unit:"element",verb:"bo‘lishi kerak"},map:{unit:"yozuv",verb:"bo‘lishi kerak"}};function t(i){return e[i]??null}let n={regex:"kirish",email:"elektron pochta manzili",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO sana va vaqti",date:"ISO sana",time:"ISO vaqt",duration:"ISO davomiylik",ipv4:"IPv4 manzil",ipv6:"IPv6 manzil",mac:"MAC manzil",cidrv4:"IPv4 diapazon",cidrv6:"IPv6 diapazon",base64:"base64 kodlangan satr",base64url:"base64url kodlangan satr",json_string:"JSON satr",e164:"E.164 raqam",jwt:"JWT",template_literal:"kirish"},a={nan:"NaN",number:"raqam",array:"massiv"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Noto‘g‘ri kirish: kutilgan instanceof ${i.expected}, qabul qilingan ${s}`;return`Noto‘g‘ri kirish: kutilgan ${r}, qabul qilingan ${s}`}case"invalid_value":if(i.values.length===1)return`Noto‘g‘ri kirish: kutilgan ${k(i.values[0])}`;return`Noto‘g‘ri variant: quyidagilardan biri kutilgan ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Juda katta: kutilgan ${i.origin??"qiymat"} ${r}${i.maximum.toString()} ${o.unit} ${o.verb}`;return`Juda katta: kutilgan ${i.origin??"qiymat"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Juda kichik: kutilgan ${i.origin} ${r}${i.minimum.toString()} ${o.unit} ${o.verb}`;return`Juda kichik: kutilgan ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Noto‘g‘ri satr: "${r.prefix}" bilan boshlanishi kerak`;if(r.format==="ends_with")return`Noto‘g‘ri satr: "${r.suffix}" bilan tugashi kerak`;if(r.format==="includes")return`Noto‘g‘ri satr: "${r.includes}" ni o‘z ichiga olishi kerak`;if(r.format==="regex")return`Noto‘g‘ri satr: ${r.pattern} shabloniga mos kelishi kerak`;return`Noto‘g‘ri ${n[r.format]??i.format}`}case"not_multiple_of":return`Noto‘g‘ri raqam: ${i.divisor} ning karralisi bo‘lishi kerak`;case"unrecognized_keys":return`Noma’lum kalit${i.keys.length>1?"lar":""}: ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} dagi kalit noto‘g‘ri`;case"invalid_union":return"Noto‘g‘ri kirish";case"invalid_element":return`${i.origin} da noto‘g‘ri qiymat`;default:return"Noto‘g‘ri kirish"}}},m$=()=>{let e={string:{unit:"ký tự",verb:"có"},file:{unit:"byte",verb:"có"},array:{unit:"phần tử",verb:"có"},set:{unit:"phần tử",verb:"có"}};function t(i){return e[i]??null}let n={regex:"đầu vào",email:"địa chỉ email",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ngày giờ ISO",date:"ngày ISO",time:"giờ ISO",duration:"khoảng thời gian ISO",ipv4:"địa chỉ IPv4",ipv6:"địa chỉ IPv6",cidrv4:"dải IPv4",cidrv6:"dải IPv6",base64:"chuỗi mã hóa base64",base64url:"chuỗi mã hóa base64url",json_string:"chuỗi JSON",e164:"số E.164",jwt:"JWT",template_literal:"đầu vào"},a={nan:"NaN",number:"số",array:"mảng"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Đầu vào không hợp lệ: mong đợi instanceof ${i.expected}, nhận được ${s}`;return`Đầu vào không hợp lệ: mong đợi ${r}, nhận được ${s}`}case"invalid_value":if(i.values.length===1)return`Đầu vào không hợp lệ: mong đợi ${k(i.values[0])}`;return`Tùy chọn không hợp lệ: mong đợi một trong các giá trị ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${o.verb} ${r}${i.maximum.toString()} ${o.unit??"phần tử"}`;return`Quá lớn: mong đợi ${i.origin??"giá trị"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Quá nhỏ: mong đợi ${i.origin} ${o.verb} ${r}${i.minimum.toString()} ${o.unit}`;return`Quá nhỏ: mong đợi ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Chuỗi không hợp lệ: phải bắt đầu bằng "${r.prefix}"`;if(r.format==="ends_with")return`Chuỗi không hợp lệ: phải kết thúc bằng "${r.suffix}"`;if(r.format==="includes")return`Chuỗi không hợp lệ: phải bao gồm "${r.includes}"`;if(r.format==="regex")return`Chuỗi không hợp lệ: phải khớp với mẫu ${r.pattern}`;return`${n[r.format]??i.format} không hợp lệ`}case"not_multiple_of":return`Số không hợp lệ: phải là bội số của ${i.divisor}`;case"unrecognized_keys":return`Khóa không được nhận dạng: ${g(i.keys,", ")}`;case"invalid_key":return`Khóa không hợp lệ trong ${i.origin}`;case"invalid_union":return"Đầu vào không hợp lệ";case"invalid_element":return`Giá trị không hợp lệ trong ${i.origin}`;default:return"Đầu vào không hợp lệ"}}},p$=()=>{let e={string:{unit:"字符",verb:"包含"},file:{unit:"字节",verb:"包含"},array:{unit:"项",verb:"包含"},set:{unit:"项",verb:"包含"}};function t(i){return e[i]??null}let n={regex:"输入",email:"电子邮件",url:"URL",emoji:"表情符号",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO日期时间",date:"ISO日期",time:"ISO时间",duration:"ISO时长",ipv4:"IPv4地址",ipv6:"IPv6地址",cidrv4:"IPv4网段",cidrv6:"IPv6网段",base64:"base64编码字符串",base64url:"base64url编码字符串",json_string:"JSON字符串",e164:"E.164号码",jwt:"JWT",template_literal:"输入"},a={nan:"NaN",number:"数字",array:"数组",null:"空值(null)"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`无效输入:期望 instanceof ${i.expected},实际接收 ${s}`;return`无效输入:期望 ${r},实际接收 ${s}`}case"invalid_value":if(i.values.length===1)return`无效输入:期望 ${k(i.values[0])}`;return`无效选项:期望以下之一 ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`数值过大:期望 ${i.origin??"值"} ${r}${i.maximum.toString()} ${o.unit??"个元素"}`;return`数值过大:期望 ${i.origin??"值"} ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`数值过小:期望 ${i.origin} ${r}${i.minimum.toString()} ${o.unit}`;return`数值过小:期望 ${i.origin} ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`无效字符串:必须以 "${r.prefix}" 开头`;if(r.format==="ends_with")return`无效字符串:必须以 "${r.suffix}" 结尾`;if(r.format==="includes")return`无效字符串:必须包含 "${r.includes}"`;if(r.format==="regex")return`无效字符串:必须满足正则表达式 ${r.pattern}`;return`无效${n[r.format]??i.format}`}case"not_multiple_of":return`无效数字:必须是 ${i.divisor} 的倍数`;case"unrecognized_keys":return`出现未知的键(key): ${g(i.keys,", ")}`;case"invalid_key":return`${i.origin} 中的键(key)无效`;case"invalid_union":return"无效输入";case"invalid_element":return`${i.origin} 中包含无效值(value)`;default:return"无效输入"}}},g$=()=>{let e={string:{unit:"字元",verb:"擁有"},file:{unit:"位元組",verb:"擁有"},array:{unit:"項目",verb:"擁有"},set:{unit:"項目",verb:"擁有"}};function t(i){return e[i]??null}let n={regex:"輸入",email:"郵件地址",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO 日期時間",date:"ISO 日期",time:"ISO 時間",duration:"ISO 期間",ipv4:"IPv4 位址",ipv6:"IPv6 位址",cidrv4:"IPv4 範圍",cidrv6:"IPv6 範圍",base64:"base64 編碼字串",base64url:"base64url 編碼字串",json_string:"JSON 字串",e164:"E.164 數值",jwt:"JWT",template_literal:"輸入"},a={nan:"NaN"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`無效的輸入值:預期為 instanceof ${i.expected},但收到 ${s}`;return`無效的輸入值:預期為 ${r},但收到 ${s}`}case"invalid_value":if(i.values.length===1)return`無效的輸入值:預期為 ${k(i.values[0])}`;return`無效的選項:預期為以下其中之一 ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`數值過大:預期 ${i.origin??"值"} 應為 ${r}${i.maximum.toString()} ${o.unit??"個元素"}`;return`數值過大:預期 ${i.origin??"值"} 應為 ${r}${i.maximum.toString()}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`數值過小:預期 ${i.origin} 應為 ${r}${i.minimum.toString()} ${o.unit}`;return`數值過小:預期 ${i.origin} 應為 ${r}${i.minimum.toString()}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`無效的字串:必須以 "${r.prefix}" 開頭`;if(r.format==="ends_with")return`無效的字串:必須以 "${r.suffix}" 結尾`;if(r.format==="includes")return`無效的字串:必須包含 "${r.includes}"`;if(r.format==="regex")return`無效的字串:必須符合格式 ${r.pattern}`;return`無效的 ${n[r.format]??i.format}`}case"not_multiple_of":return`無效的數字:必須為 ${i.divisor} 的倍數`;case"unrecognized_keys":return`無法識別的鍵值${i.keys.length>1?"們":""}:${g(i.keys,"、")}`;case"invalid_key":return`${i.origin} 中有無效的鍵值`;case"invalid_union":return"無效的輸入值";case"invalid_element":return`${i.origin} 中有無效的值`;default:return"無效的輸入值"}}},y$=()=>{let e={string:{unit:"àmi",verb:"ní"},file:{unit:"bytes",verb:"ní"},array:{unit:"nkan",verb:"ní"},set:{unit:"nkan",verb:"ní"}};function t(i){return e[i]??null}let n={regex:"ẹ̀rọ ìbáwọlé",email:"àdírẹ́sì ìmẹ́lì",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"àkókò ISO",date:"ọjọ́ ISO",time:"àkókò ISO",duration:"àkókò tó pé ISO",ipv4:"àdírẹ́sì IPv4",ipv6:"àdírẹ́sì IPv6",cidrv4:"àgbègbè IPv4",cidrv6:"àgbègbè IPv6",base64:"ọ̀rọ̀ tí a kọ́ ní base64",base64url:"ọ̀rọ̀ base64url",json_string:"ọ̀rọ̀ JSON",e164:"nọ́mbà E.164",jwt:"JWT",template_literal:"ẹ̀rọ ìbáwọlé"},a={nan:"NaN",number:"nọ́mbà",array:"akopọ"};return(i)=>{switch(i.code){case"invalid_type":{let r=a[i.expected]??i.expected,o=w(i.input),s=a[o]??o;if(/^[A-Z]/.test(i.expected))return`Ìbáwọlé aṣìṣe: a ní láti fi instanceof ${i.expected}, àmọ̀ a rí ${s}`;return`Ìbáwọlé aṣìṣe: a ní láti fi ${r}, àmọ̀ a rí ${s}`}case"invalid_value":if(i.values.length===1)return`Ìbáwọlé aṣìṣe: a ní láti fi ${k(i.values[0])}`;return`Àṣàyàn aṣìṣe: yan ọ̀kan lára ${g(i.values,"|")}`;case"too_big":{let r=i.inclusive?"<=":"<",o=t(i.origin);if(o)return`Tó pọ̀ jù: a ní láti jẹ́ pé ${i.origin??"iye"} ${o.verb} ${r}${i.maximum} ${o.unit}`;return`Tó pọ̀ jù: a ní láti jẹ́ ${r}${i.maximum}`}case"too_small":{let r=i.inclusive?">=":">",o=t(i.origin);if(o)return`Kéré ju: a ní láti jẹ́ pé ${i.origin} ${o.verb} ${r}${i.minimum} ${o.unit}`;return`Kéré ju: a ní láti jẹ́ ${r}${i.minimum}`}case"invalid_format":{let r=i;if(r.format==="starts_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bẹ̀rẹ̀ pẹ̀lú "${r.prefix}"`;if(r.format==="ends_with")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ parí pẹ̀lú "${r.suffix}"`;if(r.format==="includes")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ ní "${r.includes}"`;if(r.format==="regex")return`Ọ̀rọ̀ aṣìṣe: gbọ́dọ̀ bá àpẹẹrẹ mu ${r.pattern}`;return`Aṣìṣe: ${n[r.format]??i.format}`}case"not_multiple_of":return`Nọ́mbà aṣìṣe: gbọ́dọ̀ jẹ́ èyà pípín ti ${i.divisor}`;case"unrecognized_keys":return`Bọtìnì àìmọ̀: ${g(i.keys,", ")}`;case"invalid_key":return`Bọtìnì aṣìṣe nínú ${i.origin}`;case"invalid_union":return"Ìbáwọlé aṣìṣe";case"invalid_element":return`Iye aṣìṣe nínú ${i.origin}`;default:return"Ìbáwọlé aṣìṣe"}}},xs,Cd,Rd,ae,Jd,xc=(e,t={})=>(n)=>{let a=st({...n,processors:t});return N(e,a),ut(a,e),lt(a,e)},zt=(e,t,n={})=>(a)=>{let{libraryOptions:i,target:r}=a??{},o=st({...i??{},target:r,io:t,processors:n});return N(e,o),ut(o,e),lt(o,e)},J$,zc=(e,t,n,a)=>{let i=n;i.type="string";let{minimum:r,maximum:o,format:s,patterns:l,contentEncoding:d}=e._zod.bag;if(typeof r==="number")i.minLength=r;if(typeof o==="number")i.maxLength=o;if(s){if(i.format=J$[s]??s,i.format==="")delete i.format;if(s==="time")delete i.format}if(d)i.contentEncoding=d;if(l&&l.size>0){let c=[...l];if(c.length===1)i.pattern=c[0].source;else if(c.length>1)i.allOf=[...c.map((p)=>({...t.target==="draft-07"||t.target==="draft-04"||t.target==="openapi-3.0"?{type:"string"}:{},pattern:p.source}))]}},Uc=(e,t,n,a)=>{let i=n,{minimum:r,maximum:o,format:s,multipleOf:l,exclusiveMaximum:d,exclusiveMinimum:c}=e._zod.bag;if(typeof s==="string"&&s.includes("int"))i.type="integer";else i.type="number";let p=typeof c==="number"&&c>=(r??Number.NEGATIVE_INFINITY),v=typeof d==="number"&&d<=(o??Number.POSITIVE_INFINITY),f=t.target==="draft-04"||t.target==="openapi-3.0";if(p)if(f)i.minimum=c,i.exclusiveMinimum=!0;else i.exclusiveMinimum=c;else if(typeof r==="number")i.minimum=r;if(v)if(f)i.maximum=d,i.exclusiveMaximum=!0;else i.exclusiveMaximum=d;else if(typeof o==="number")i.maximum=o;if(typeof l==="number")i.multipleOf=l},Ec=(e,t,n,a)=>{n.type="boolean"},Tc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema")},Oc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema")},Pc=(e,t,n,a)=>{if(t.target==="openapi-3.0")n.type="string",n.nullable=!0,n.enum=[null];else n.type="null"},jc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema")},Nc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema")},Ac=(e,t,n,a)=>{n.not={}},Dc=(e,t,n,a)=>{},Zc=(e,t,n,a)=>{},Cc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema")},Rc=(e,t,n,a)=>{let i=e._zod.def,r=mr(i.entries);if(r.every((o)=>typeof o==="number"))n.type="number";if(r.every((o)=>typeof o==="string"))n.type="string";n.enum=r},Lc=(e,t,n,a)=>{let i=e._zod.def,r=[];for(let o of i.values)if(o===void 0){if(t.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof o==="bigint")if(t.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else r.push(Number(o));else r.push(o);if(r.length===0);else if(r.length===1){let o=r[0];if(n.type=o===null?"null":typeof o,t.target==="draft-04"||t.target==="openapi-3.0")n.enum=[o];else n.const=o}else{if(r.every((o)=>typeof o==="number"))n.type="number";if(r.every((o)=>typeof o==="string"))n.type="string";if(r.every((o)=>typeof o==="boolean"))n.type="boolean";if(r.every((o)=>o===null))n.type="null";n.enum=r}},Mc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema")},Fc=(e,t,n,a)=>{let i=n,r=e._zod.pattern;if(!r)throw Error("Pattern not found in template literal");i.type="string",i.pattern=r.source},Jc=(e,t,n,a)=>{let i=n,r={type:"string",format:"binary",contentEncoding:"binary"},{minimum:o,maximum:s,mime:l}=e._zod.bag;if(o!==void 0)r.minLength=o;if(s!==void 0)r.maxLength=s;if(l)if(l.length===1)r.contentMediaType=l[0],Object.assign(i,r);else Object.assign(i,r),i.anyOf=l.map((d)=>({contentMediaType:d}));else Object.assign(i,r)},Kc=(e,t,n,a)=>{n.type="boolean"},Gc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema")},Wc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Function types cannot be represented in JSON Schema")},Bc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema")},Hc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema")},Xc=(e,t,n,a)=>{if(t.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema")},Vc=(e,t,n,a)=>{let i=n,r=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;if(typeof o==="number")i.minItems=o;if(typeof s==="number")i.maxItems=s;i.type="array",i.items=N(r.element,t,{...a,path:[...a.path,"items"]})},Yc=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="object",i.properties={};let o=r.shape;for(let d in o)i.properties[d]=N(o[d],t,{...a,path:[...a.path,"properties",d]});let s=new Set(Object.keys(o)),l=new Set([...s].filter((d)=>{let c=r.shape[d]._zod;if(t.io==="input")return c.optin===void 0;else return c.optout===void 0}));if(l.size>0)i.required=Array.from(l);if(r.catchall?._zod.def.type==="never")i.additionalProperties=!1;else if(!r.catchall){if(t.io==="output")i.additionalProperties=!1}else if(r.catchall)i.additionalProperties=N(r.catchall,t,{...a,path:[...a.path,"additionalProperties"]})},ma=(e,t,n,a)=>{let i=e._zod.def,r=i.inclusive===!1,o=i.options.map((s,l)=>N(s,t,{...a,path:[...a.path,r?"oneOf":"anyOf",l]}));if(r)n.oneOf=o;else n.anyOf=o},qc=(e,t,n,a)=>{let i=e._zod.def,r=N(i.left,t,{...a,path:[...a.path,"allOf",0]}),o=N(i.right,t,{...a,path:[...a.path,"allOf",1]}),s=(d)=>("allOf"in d)&&Object.keys(d).length===1,l=[...s(r)?r.allOf:[r],...s(o)?o.allOf:[o]];n.allOf=l},Qc=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="array";let o=t.target==="draft-2020-12"?"prefixItems":"items",s=t.target==="draft-2020-12"?"items":t.target==="openapi-3.0"?"items":"additionalItems",l=r.items.map((v,f)=>N(v,t,{...a,path:[...a.path,o,f]})),d=r.rest?N(r.rest,t,{...a,path:[...a.path,s,...t.target==="openapi-3.0"?[r.items.length]:[]]}):null;if(t.target==="draft-2020-12"){if(i.prefixItems=l,d)i.items=d}else if(t.target==="openapi-3.0"){if(i.items={anyOf:l},d)i.items.anyOf.push(d);if(i.minItems=l.length,!d)i.maxItems=l.length}else if(i.items=l,d)i.additionalItems=d;let{minimum:c,maximum:p}=e._zod.bag;if(typeof c==="number")i.minItems=c;if(typeof p==="number")i.maxItems=p},em=(e,t,n,a)=>{let i=n,r=e._zod.def;i.type="object";let o=r.keyType,s=o._zod.bag?.patterns;if(r.mode==="loose"&&s&&s.size>0){let d=N(r.valueType,t,{...a,path:[...a.path,"patternProperties","*"]});i.patternProperties={};for(let c of s)i.patternProperties[c.source]=d}else{if(t.target==="draft-07"||t.target==="draft-2020-12")i.propertyNames=N(r.keyType,t,{...a,path:[...a.path,"propertyNames"]});i.additionalProperties=N(r.valueType,t,{...a,path:[...a.path,"additionalProperties"]})}let l=o._zod.values;if(l){let d=[...l].filter((c)=>typeof c==="string"||typeof c==="number");if(d.length>0)i.required=d}},tm=(e,t,n,a)=>{let i=e._zod.def,r=N(i.innerType,t,a),o=t.seen.get(e);if(t.target==="openapi-3.0")o.ref=i.innerType,n.nullable=!0;else n.anyOf=[r,{type:"null"}]},im=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},nm=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},rm=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);if(r.ref=i.innerType,t.io==="input")n._prefault=JSON.parse(JSON.stringify(i.defaultValue))},am=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}n.default=o},om=(e,t,n,a)=>{let i=e._zod.def,r=i.in._zod.traits.has("$ZodTransform"),o=t.io==="input"?r?i.out:i.in:i.out;N(o,t,a);let s=t.seen.get(e);s.ref=o},sm=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType,n.readOnly=!0},um=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},fa=(e,t,n,a)=>{let i=e._zod.def;N(i.innerType,t,a);let r=t.seen.get(e);r.ref=i.innerType},lm=(e,t,n,a)=>{let i=e._zod.innerType;N(i,t,a);let r=t.seen.get(e);r.ref=i},nr,K$,mm,fm,pa,va,ga,ha,ya,ym=(e,t)=>{pr.init(e,t),e.name="ZodError",Object.defineProperties(e,{format:{value:(n)=>gr(e,n)},flatten:{value:(n)=>vr(e,n)},addIssue:{value:(n)=>{e.issues.push(n),e.message=JSON.stringify(e.issues,zi,2)}},addIssues:{value:(n)=>{e.issues.push(...n),e.message=JSON.stringify(e.issues,zi,2)}},isEmpty:{get(){return e.issues.length===0}}})},G$,te,bm,$m,_m,km,wm,Sm,Im,xm,zm,Um,Em,Tm,zs,z,en,Bt,D,tn,Et,ye,Ht,nn,rn,an,on,sn,un,ln,dn,ba,cn,mn,fn,pn,vn,gn,hn,ft,Xt,Be,Vt,Yt,yn,ka,wa,Sa,xa,za,Ua,Ea,$n,Ta,Qt,ei,Oa,Pa,ja,Aa,dt,Ca,Ra,ct,La,Ma,Fa,Sn,Ja,Ga,Wa,Ha,In,Ya,qa,eo,ti,ii,to,io,ro,ao,so,uo,ni,Lf,Mf,Jf=(...e)=>Ic({Codec:ii,Boolean:Vt,String:Bt},...e),W$,rr,b,X$,Bf,mo,Hf,Xf,Vf,Yf,qf,Qf,ep,tp,ip,np,rp,ap,op,r_,sp,up,ar,wi,lp,dp,a_,o_,cp,s_,mp,fp,pp,vp,fo,gp,hp,yp,u_,bp,l_,$p,_p,kp,d_,c_,m_,wp,p_,v_,b_,zp,Ge,$_,__,k_,w_,S_,I_,x_,z_,Up,E_=30000,T_=5000,Tp,P_,N_="tool_executor.",A_="custom_tool.",D_="hook.",Z_="compaction.compact",C_="checkpoint.create",R_="mistake_limit.decide",L_="user_instructions.snapshot",It,B_=void 0,V_,Q_,Ce,js,Ns,ik,uk,lk,mk,pk,zk=`You are Cline, an AI coding agent. Your primary goal is to assist users with various coding tasks by leveraging your knowledge and the tools at your disposal. Given the user's prompt, you should use the tools available to you to answer user's question.
40
40
 
41
41
  Always gather all the necessary context before starting to work on a task. For example, if you are generating a unit test or new code, make sure you understand the requirement, the naming conventions, frameworks and libraries used and aligned in the current codebase, and the environment and commands used to run and test the code etc. Always validate the new unit test at the end including running the code if possible for live feedback.
42
42
  Review each question carefully and answer it with detailed, accurate information.
@@ -69,7 +69,7 @@ When you have completed the task, please provide a summary of what you did and a
69
69
 
70
70
  If user asked a simple question without any coding context, answer it directly without using any tools.
71
71
  {{CLINE_RULES}}
72
- {{CLINE_METADATA}}`,G_=`You are Cline, a careful and helpful coding agent that works in the background.
72
+ {{CLINE_METADATA}}`,Uk=`You are Cline, a careful and helpful coding agent that works in the background.
73
73
  You are tasked to solve an issue reported by the user who you cannot communicate with directly.
74
74
  Your goal is to utilize the tools at your disposal to investigate and answer the question according to user's instructions with the aim to verify that the issue is resolved.
75
75
 
@@ -97,7 +97,7 @@ Do not consider the task complete until tests pass.
97
97
  Always includes tool calls in your response until the task is completed. You should only end the task when all the requirements are met by calling the 'submit_and_exit' tool.
98
98
  Response without the submit_and_exit tool call will considered not completed and the task will continue.
99
99
  {{CLINE_RULES}}
100
- {{CLINE_METADATA}}`,Bn="# Workspace Configuration",B_=25463,X_=25466,V_=4317,Y_="127.0.0.1:4317",Q_,q_,ek,tk="runtime.team.progress.v1",ik="runtime.team.lifecycle.v1",Ii="CLINE_BUILD_ENV",_p="CLINE_DEBUG_HOST",kp="CLINE_DEBUG_PORT_BASE",fk="CLINE_ENVIRONMENT",pk="CLINE_ENVIRONMENT_OVERRIDE",Xn,vk="production",hk="CLINE_RUN_AS_HUB_DAEMON",Sk=128,je,Ve,Pk,no,zp,Tk,Ep,Pp,Tp,Dk=3600000,Zk=240,Ck=400,le,Ye,jp,vn,Rk,Mk,Lk,Fk,Jk,Kk,Gk,Wk,Hk,Bk,Xk,Vk,Yk,Qk,qk,ew,tw,iw,nw,rw,aw,ow,sw,Op,uw,lw,Np,dw,cw,mw,fw,pw,vw,gw,hw,yw,bw,$w,_w,Ap,Dp,Cp,Tw,jw,Nw,Dw;var gn=V(()=>{lg=Object.defineProperty;Cn=new TextEncoder,vg={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},gg=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);Ao=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];gi=new Map;u={};he(u,{xor:()=>nf,xid:()=>Im,void:()=>Vm,uuidv7:()=>hm,uuidv6:()=>gm,uuidv4:()=>vm,uuid:()=>pm,util:()=>U,url:()=>ym,uppercase:()=>Oi,unknown:()=>Ze,union:()=>dn,undefined:()=>Bm,ulid:()=>Sm,uint64:()=>Wm,uint32:()=>Jm,tuple:()=>ka,trim:()=>Ri,treeifyError:()=>eu,transform:()=>mn,toUpperCase:()=>Li,toLowerCase:()=>Mi,toJSONSchema:()=>Gc,templateLiteral:()=>hf,symbol:()=>Hm,superRefine:()=>Va,success:()=>ff,stringbool:()=>Sf,stringFormat:()=>Dm,string:()=>_t,strictObject:()=>ef,startsWith:()=>Ai,slugify:()=>Fi,size:()=>At,setErrorMap:()=>c$,set:()=>uf,safeParseAsync:()=>nm,safeParse:()=>im,safeEncodeAsync:()=>dm,safeEncode:()=>um,safeDecodeAsync:()=>cm,safeDecode:()=>lm,registry:()=>xr,regexes:()=>Se,regex:()=>Ti,refine:()=>Xa,record:()=>wa,readonly:()=>Ja,property:()=>Yr,promise:()=>yf,prettifyError:()=>iu,preprocess:()=>xf,prefault:()=>Aa,positive:()=>Hr,pipe:()=>wi,partialRecord:()=>af,parseAsync:()=>tm,parse:()=>em,overwrite:()=>be,optional:()=>wt,object:()=>qm,number:()=>oa,nullish:()=>mf,nullable:()=>St,null:()=>ca,normalize:()=>Ci,nonpositive:()=>Xr,nonoptional:()=>Da,nonnegative:()=>Vr,never:()=>un,negative:()=>Br,nativeEnum:()=>lf,nanoid:()=>_m,nan:()=>pf,multipleOf:()=>et,minSize:()=>ze,minLength:()=>De,mime:()=>Zi,meta:()=>kf,maxSize:()=>ot,maxLength:()=>Dt,map:()=>sf,mac:()=>Um,lte:()=>re,lt:()=>Ie,lowercase:()=>ji,looseRecord:()=>of,looseObject:()=>tf,locales:()=>Sr,literal:()=>df,length:()=>Zt,lazy:()=>Wa,ksuid:()=>xm,keyof:()=>Qm,jwt:()=>Am,json:()=>If,iso:()=>ea,ipv6:()=>Em,ipv4:()=>zm,invertCodec:()=>gf,intersection:()=>$a,int64:()=>Gm,int32:()=>Fm,int:()=>ki,instanceof:()=>wf,includes:()=>Ni,httpUrl:()=>bm,hostname:()=>Zm,hex:()=>Cm,hash:()=>Rm,guid:()=>fm,gte:()=>Y,gt:()=>xe,globalRegistry:()=>ne,getErrorMap:()=>m$,function:()=>Si,fromJSONSchema:()=>g$,formatError:()=>ir,float64:()=>Lm,float32:()=>Mm,flattenError:()=>tr,file:()=>cf,exactOptional:()=>Pa,enum:()=>cn,endsWith:()=>Di,encodeAsync:()=>om,encode:()=>rm,emoji:()=>$m,email:()=>mm,e164:()=>Nm,discriminatedUnion:()=>rf,describe:()=>_f,decodeAsync:()=>sm,decode:()=>am,date:()=>Ym,custom:()=>$f,cuid2:()=>wm,cuid:()=>km,core:()=>Cs,config:()=>J,coerce:()=>Uf,codec:()=>vf,clone:()=>ae,cidrv6:()=>Tm,cidrv4:()=>Pm,check:()=>bf,catch:()=>Ra,boolean:()=>sa,bigint:()=>Km,base64url:()=>Om,base64:()=>jm,array:()=>Gt,any:()=>Xm,_function:()=>Si,_default:()=>Oa,_ZodString:()=>Ji,ZodXor:()=>ha,ZodXID:()=>Vi,ZodVoid:()=>va,ZodUnknown:()=>fa,ZodUnion:()=>Ht,ZodUndefined:()=>la,ZodUUID:()=>ve,ZodURL:()=>Lt,ZodULID:()=>Xi,ZodType:()=>z,ZodTuple:()=>_a,ZodTransform:()=>Ua,ZodTemplateLiteral:()=>Ka,ZodSymbol:()=>ua,ZodSuccess:()=>Za,ZodStringFormat:()=>D,ZodString:()=>Mt,ZodSet:()=>Ia,ZodRecord:()=>rt,ZodRealError:()=>ee,ZodReadonly:()=>Fa,ZodPromise:()=>Ha,ZodPreprocess:()=>La,ZodPrefault:()=>Na,ZodPipe:()=>Bt,ZodOptional:()=>fn,ZodObject:()=>Wt,ZodNumberFormat:()=>Me,ZodNumber:()=>Ft,ZodNullable:()=>Ta,ZodNull:()=>da,ZodNonOptional:()=>pn,ZodNever:()=>pa,ZodNanoID:()=>Wi,ZodNaN:()=>Ma,ZodMap:()=>Sa,ZodMAC:()=>aa,ZodLiteral:()=>xa,ZodLazy:()=>Ga,ZodKSUID:()=>Yi,ZodJWT:()=>on,ZodIssueCode:()=>d$,ZodIntersection:()=>ba,ZodISOTime:()=>na,ZodISODuration:()=>ra,ZodISODateTime:()=>ta,ZodISODate:()=>ia,ZodIPv6:()=>qi,ZodIPv4:()=>Qi,ZodGUID:()=>kt,ZodFunction:()=>Ba,ZodFirstPartyTypeKind:()=>Kn,ZodFile:()=>za,ZodExactOptional:()=>Ea,ZodError:()=>l$,ZodEnum:()=>at,ZodEmoji:()=>Gi,ZodEmail:()=>Ki,ZodE164:()=>an,ZodDiscriminatedUnion:()=>ya,ZodDefault:()=>ja,ZodDate:()=>ln,ZodCustomStringFormat:()=>st,ZodCustom:()=>Vt,ZodCodec:()=>Xt,ZodCatch:()=>Ca,ZodCUID2:()=>Bi,ZodCUID:()=>Hi,ZodCIDRv6:()=>tn,ZodCIDRv4:()=>en,ZodBoolean:()=>Jt,ZodBigIntFormat:()=>sn,ZodBigInt:()=>Kt,ZodBase64URL:()=>rn,ZodBase64:()=>nn,ZodArray:()=>ga,ZodAny:()=>ma,TimePrecision:()=>Sd,NEVER:()=>Rs,$output:()=>bd,$input:()=>$d,$brand:()=>Ms});Cs={};he(Cs,{version:()=>il,util:()=>U,treeifyError:()=>eu,toJSONSchema:()=>Gc,toDotPath:()=>tu,safeParseAsync:()=>ru,safeParse:()=>nu,safeEncodeAsync:()=>yh,safeEncode:()=>gh,safeDecodeAsync:()=>bh,safeDecode:()=>hh,registry:()=>xr,regexes:()=>Se,process:()=>N,prettifyError:()=>iu,parseAsync:()=>Ln,parse:()=>Mn,meta:()=>ac,locales:()=>Sr,isValidJWT:()=>zl,isValidBase64URL:()=>Sl,isValidBase64:()=>gr,initializeContext:()=>tt,globalRegistry:()=>ne,globalConfig:()=>bt,formatError:()=>ir,flattenError:()=>tr,finalize:()=>nt,extractDefs:()=>it,encodeAsync:()=>ph,encode:()=>mh,describe:()=>rc,decodeAsync:()=>vh,decode:()=>fh,createToJSONSchemaMethod:()=>sc,createStandardJSONSchemaMethod:()=>$t,config:()=>J,clone:()=>ae,_xor:()=>Rb,_xid:()=>Zr,_void:()=>Bd,_uuidv7:()=>Tr,_uuidv6:()=>Pr,_uuidv4:()=>Er,_uuid:()=>Ur,_url:()=>Pi,_uppercase:()=>Oi,_unknown:()=>Wd,_union:()=>Cb,_undefined:()=>Jd,_ulid:()=>Dr,_uint64:()=>Ld,_uint32:()=>Ad,_tuple:()=>Fb,_trim:()=>Ri,_transform:()=>Xb,_toUpperCase:()=>Li,_toLowerCase:()=>Mi,_templateLiteral:()=>r$,_symbol:()=>Fd,_superRefine:()=>ic,_success:()=>e$,_stringbool:()=>oc,_stringFormat:()=>Ct,_string:()=>_d,_startsWith:()=>Ai,_slugify:()=>Fi,_size:()=>At,_set:()=>Gb,_safeParseAsync:()=>Pt,_safeParse:()=>Et,_safeEncodeAsync:()=>lr,_safeEncode:()=>sr,_safeDecodeAsync:()=>dr,_safeDecode:()=>ur,_regex:()=>Ti,_refine:()=>tc,_record:()=>Jb,_readonly:()=>n$,_property:()=>Yr,_promise:()=>o$,_positive:()=>Hr,_pipe:()=>i$,_parseAsync:()=>Ut,_parse:()=>zt,_overwrite:()=>be,_optional:()=>Vb,_number:()=>Ed,_nullable:()=>Yb,_null:()=>Kd,_normalize:()=>Ci,_nonpositive:()=>Xr,_nonoptional:()=>qb,_nonnegative:()=>Vr,_never:()=>Hd,_negative:()=>Br,_nativeEnum:()=>Hb,_nanoid:()=>Or,_nan:()=>Yd,_multipleOf:()=>et,_minSize:()=>ze,_minLength:()=>De,_min:()=>Y,_mime:()=>Zi,_maxSize:()=>ot,_maxLength:()=>Dt,_max:()=>re,_map:()=>Kb,_mac:()=>wd,_lte:()=>re,_lt:()=>Ie,_lowercase:()=>ji,_literal:()=>Bb,_length:()=>Zt,_lazy:()=>a$,_ksuid:()=>Cr,_jwt:()=>Wr,_isoTime:()=>zd,_isoDuration:()=>Ud,_isoDateTime:()=>Id,_isoDate:()=>xd,_ipv6:()=>Mr,_ipv4:()=>Rr,_intersection:()=>Lb,_int64:()=>Md,_int32:()=>Nd,_int:()=>Td,_includes:()=>Ni,_guid:()=>_i,_gte:()=>Y,_gt:()=>xe,_float64:()=>Od,_float32:()=>jd,_file:()=>qd,_enum:()=>Wb,_endsWith:()=>Di,_encodeAsync:()=>ar,_encode:()=>nr,_emoji:()=>jr,_email:()=>zr,_e164:()=>Gr,_discriminatedUnion:()=>Mb,_default:()=>Qb,_decodeAsync:()=>or,_decode:()=>rr,_date:()=>Xd,_custom:()=>ec,_cuid2:()=>Ar,_cuid:()=>Nr,_coercedString:()=>kd,_coercedNumber:()=>Pd,_coercedDate:()=>Vd,_coercedBoolean:()=>Zd,_coercedBigint:()=>Rd,_cidrv6:()=>Fr,_cidrv4:()=>Lr,_check:()=>nc,_catch:()=>t$,_boolean:()=>Dd,_bigint:()=>Cd,_base64url:()=>Kr,_base64:()=>Jr,_array:()=>Qd,_any:()=>Gd,TimePrecision:()=>Sd,NEVER:()=>Rs,JSONSchemaGenerator:()=>Wc,JSONSchema:()=>u$,Doc:()=>vr,$output:()=>bd,$input:()=>$d,$constructor:()=>m,$brand:()=>Ms,$ZodXor:()=>Gl,$ZodXID:()=>ml,$ZodVoid:()=>Cl,$ZodUnknown:()=>Dl,$ZodUnion:()=>Ei,$ZodUndefined:()=>Ol,$ZodUUID:()=>rl,$ZodURL:()=>ol,$ZodULID:()=>cl,$ZodType:()=>x,$ZodTuple:()=>$r,$ZodTransform:()=>ed,$ZodTemplateLiteral:()=>cd,$ZodSymbol:()=>jl,$ZodSuccess:()=>od,$ZodStringFormat:()=>A,$ZodString:()=>Nt,$ZodSet:()=>Vl,$ZodRegistry:()=>Ir,$ZodRecord:()=>Bl,$ZodRealError:()=>q,$ZodReadonly:()=>dd,$ZodPromise:()=>fd,$ZodPreprocess:()=>ld,$ZodPrefault:()=>rd,$ZodPipe:()=>kr,$ZodOptional:()=>_r,$ZodObjectJIT:()=>Kl,$ZodObject:()=>Jl,$ZodNumberFormat:()=>Pl,$ZodNumber:()=>hr,$ZodNullable:()=>id,$ZodNull:()=>Nl,$ZodNonOptional:()=>ad,$ZodNever:()=>Zl,$ZodNanoID:()=>ul,$ZodNaN:()=>ud,$ZodMap:()=>Xl,$ZodMAC:()=>$l,$ZodLiteral:()=>Ql,$ZodLazy:()=>pd,$ZodKSUID:()=>fl,$ZodJWT:()=>Ul,$ZodIntersection:()=>Hl,$ZodISOTime:()=>gl,$ZodISODuration:()=>hl,$ZodISODateTime:()=>pl,$ZodISODate:()=>vl,$ZodIPv6:()=>bl,$ZodIPv4:()=>yl,$ZodGUID:()=>nl,$ZodFunction:()=>md,$ZodFile:()=>ql,$ZodExactOptional:()=>td,$ZodError:()=>er,$ZodEnum:()=>Yl,$ZodEncodeError:()=>It,$ZodEmoji:()=>sl,$ZodEmail:()=>al,$ZodE164:()=>xl,$ZodDiscriminatedUnion:()=>Wl,$ZodDefault:()=>nd,$ZodDate:()=>Rl,$ZodCustomStringFormat:()=>El,$ZodCustom:()=>vd,$ZodCodec:()=>wr,$ZodCheckUpperCase:()=>Xu,$ZodCheckStringFormat:()=>Ot,$ZodCheckStartsWith:()=>Yu,$ZodCheckSizeEquals:()=>Ju,$ZodCheckRegex:()=>Hu,$ZodCheckProperty:()=>qu,$ZodCheckOverwrite:()=>tl,$ZodCheckNumberFormat:()=>Ru,$ZodCheckMultipleOf:()=>Cu,$ZodCheckMinSize:()=>Fu,$ZodCheckMinLength:()=>Gu,$ZodCheckMimeType:()=>el,$ZodCheckMaxSize:()=>Lu,$ZodCheckMaxLength:()=>Ku,$ZodCheckLowerCase:()=>Bu,$ZodCheckLessThan:()=>fr,$ZodCheckLengthEquals:()=>Wu,$ZodCheckIncludes:()=>Vu,$ZodCheckGreaterThan:()=>pr,$ZodCheckEndsWith:()=>Qu,$ZodCheckBigIntFormat:()=>Mu,$ZodCheck:()=>R,$ZodCatch:()=>sd,$ZodCUID2:()=>dl,$ZodCUID:()=>ll,$ZodCIDRv6:()=>kl,$ZodCIDRv4:()=>_l,$ZodBoolean:()=>yr,$ZodBigIntFormat:()=>Tl,$ZodBigInt:()=>br,$ZodBase64URL:()=>Il,$ZodBase64:()=>wl,$ZodAsyncError:()=>we,$ZodArray:()=>Ml,$ZodAny:()=>Al});Rs=Object.freeze({status:"aborted"});Ms=Symbol("zod_brand");we=class we extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};It=class It extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(Lo=globalThis).__zod_globalConfig??(Lo.__zod_globalConfig={});bt=globalThis.__zod_globalConfig;U={};he(U,{unwrapMessage:()=>ht,uint8ArrayToHex:()=>ch,uint8ArrayToBase64url:()=>lh,uint8ArrayToBase64:()=>Ys,stringifyPrimitive:()=>_,slugify:()=>Fs,shallowClone:()=>Ks,safeExtend:()=>nh,required:()=>oh,randomString:()=>Vg,propertyKeyTypes:()=>yi,promiseAllObject:()=>Xg,primitiveTypes:()=>Gs,prefixIssues:()=>ie,pick:()=>eh,partial:()=>ah,parsedType:()=>w,optionalKeys:()=>Ws,omit:()=>th,objectClone:()=>Wg,numKeys:()=>Yg,nullish:()=>Re,normalizeParams:()=>h,mergeDefs:()=>ye,merge:()=>rh,jsonStringifyReplacer:()=>hi,joinValues:()=>g,issue:()=>bi,isPlainObject:()=>Ae,isObject:()=>Qe,hexToUint8Array:()=>dh,getSizableOrigin:()=>zi,getParsedType:()=>Qg,getLengthableOrigin:()=>Ui,getEnumValues:()=>Qn,getElementAtPath:()=>Bg,floatSafeRemainder:()=>Ls,finalizeIssue:()=>Q,extend:()=>ih,explicitlyAborted:()=>Xs,escapeRegex:()=>ge,esc:()=>Rn,defineLazy:()=>E,createTransparentProxy:()=>qg,cloneDef:()=>Hg,clone:()=>ae,cleanRegex:()=>xi,cleanEnum:()=>sh,captureStackTrace:()=>qn,cached:()=>xt,base64urlToUint8Array:()=>uh,base64ToUint8Array:()=>Vs,assignProp:()=>Ue,assertNotEqual:()=>Fg,assertNever:()=>Kg,assertIs:()=>Jg,assertEqual:()=>Lg,assert:()=>Gg,allowsEval:()=>Js,aborted:()=>Ne,NUMBER_FORMAT_RANGES:()=>Hs,Class:()=>Qs,BIGINT_FORMAT_RANGES:()=>Bs});Fo=Symbol("evaluating");qn="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};Js=xt(()=>{if(bt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});yi=new Set(["string","number","symbol"]),Gs=new Set(["string","number","bigint","boolean","symbol","undefined"]);Hs={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Bs={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};er=m("$ZodError",qs),q=m("$ZodError",qs,{Parent:Error});Mn=zt(q),Ln=Ut(q),nu=Et(q),ru=Pt(q),mh=nr(q),fh=rr(q),ph=ar(q),vh=or(q),gh=sr(q),hh=ur(q),yh=lr(q),bh=dr(q),Se={};he(Se,{xid:()=>uu,uuid7:()=>wh,uuid6:()=>kh,uuid4:()=>_h,uuid:()=>qe,uppercase:()=>Du,unicodeEmail:()=>pu,undefined:()=>Nu,ulid:()=>su,time:()=>zu,string:()=>Eu,sha512_hex:()=>Kh,sha512_base64url:()=>Wh,sha512_base64:()=>Gh,sha384_hex:()=>Lh,sha384_base64url:()=>Jh,sha384_base64:()=>Fh,sha256_hex:()=>Ch,sha256_base64url:()=>Mh,sha256_base64:()=>Rh,sha1_hex:()=>Ah,sha1_base64url:()=>Zh,sha1_base64:()=>Dh,rfc5322Email:()=>Ih,number:()=>mr,null:()=>Ou,nanoid:()=>du,md5_hex:()=>jh,md5_base64url:()=>Nh,md5_base64:()=>Oh,mac:()=>yu,lowercase:()=>Au,ksuid:()=>lu,ipv6:()=>hu,ipv4:()=>gu,integer:()=>Tu,idnEmail:()=>xh,httpProtocol:()=>ku,html5Email:()=>Sh,hostname:()=>Eh,hex:()=>Th,guid:()=>mu,extendedDuration:()=>$h,emoji:()=>vu,email:()=>fu,e164:()=>wu,duration:()=>cu,domain:()=>Ph,datetime:()=>Uu,date:()=>Iu,cuid2:()=>ou,cuid:()=>au,cidrv6:()=>$u,cidrv4:()=>bu,browserEmail:()=>zh,boolean:()=>ju,bigint:()=>Pu,base64url:()=>cr,base64:()=>_u});au=/^[cC][0-9a-z]{6,}$/,ou=/^[0-9a-z]+$/,su=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,uu=/^[0-9a-vA-V]{20}$/,lu=/^[A-Za-z0-9]{27}$/,du=/^[a-zA-Z0-9_-]{21}$/,cu=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,$h=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,mu=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,_h=qe(4),kh=qe(6),wh=qe(7),fu=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Sh=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,Ih=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,pu=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,xh=pu,zh=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;gu=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,hu=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,bu=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,$u=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,_u=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,cr=/^[A-Za-z0-9_-]*$/,Eh=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,Ph=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,ku=/^https?$/,wu=/^\+[1-9]\d{6,14}$/,Iu=new RegExp(`^${Su}$`);Pu=/^-?\d+n?$/,Tu=/^-?\d+$/,mr=/^-?\d+(?:\.\d+)?$/,ju=/^(?:true|false)$/i,Ou=/^null$/i,Nu=/^undefined$/i,Au=/^[^A-Z]*$/,Du=/^[^a-z]*$/,Th=/^[0-9a-fA-F]*$/;jh=/^[0-9a-fA-F]{32}$/,Oh=Tt(22,"=="),Nh=jt(22),Ah=/^[0-9a-fA-F]{40}$/,Dh=Tt(27,"="),Zh=jt(27),Ch=/^[0-9a-fA-F]{64}$/,Rh=Tt(43,"="),Mh=jt(43),Lh=/^[0-9a-fA-F]{96}$/,Fh=Tt(64,""),Jh=jt(64),Kh=/^[0-9a-fA-F]{128}$/,Gh=Tt(86,"=="),Wh=jt(86),R=m("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Zu={number:"number",bigint:"bigint",object:"date"},fr=m("$ZodCheckLessThan",(e,t)=>{R.init(e,t);let n=Zu[typeof t.value];e._zod.onattach.push((a)=>{let i=a._zod.bag,r=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<r)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(a)=>{if(t.inclusive?a.value<=t.value:a.value<t.value)return;a.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),pr=m("$ZodCheckGreaterThan",(e,t)=>{R.init(e,t);let n=Zu[typeof t.value];e._zod.onattach.push((a)=>{let i=a._zod.bag,r=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>r)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(a)=>{if(t.inclusive?a.value>=t.value:a.value>t.value)return;a.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Cu=m("$ZodCheckMultipleOf",(e,t)=>{R.init(e,t),e._zod.onattach.push((n)=>{var a;(a=n._zod.bag).multipleOf??(a.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):Ls(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Ru=m("$ZodCheckNumberFormat",(e,t)=>{R.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),a=n?"int":"number",[i,r]=Hs[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=r,n)s.pattern=Tu}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>r)o.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),Mu=m("$ZodCheckBigIntFormat",(e,t)=>{R.init(e,t);let[n,a]=Bs[t.format];e._zod.onattach.push((i)=>{let r=i._zod.bag;r.format=t.format,r.minimum=n,r.maximum=a}),e._zod.check=(i)=>{let r=i.value;if(r<n)i.issues.push({origin:"bigint",input:r,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(r>a)i.issues.push({origin:"bigint",input:r,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Lu=m("$ZodCheckMaxSize",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)a._zod.bag.maximum=t.maximum}),e._zod.check=(a)=>{let i=a.value;if(i.size<=t.maximum)return;a.issues.push({origin:zi(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Fu=m("$ZodCheckMinSize",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)a._zod.bag.minimum=t.minimum}),e._zod.check=(a)=>{let i=a.value;if(i.size>=t.minimum)return;a.issues.push({origin:zi(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Ju=m("$ZodCheckSizeEquals",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(a)=>{let i=a.value,r=i.size;if(r===t.size)return;let o=r>t.size;a.issues.push({origin:zi(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),Ku=m("$ZodCheckMaxLength",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)a._zod.bag.maximum=t.maximum}),e._zod.check=(a)=>{let i=a.value;if(i.length<=t.maximum)return;let r=Ui(i);a.issues.push({origin:r,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Gu=m("$ZodCheckMinLength",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)a._zod.bag.minimum=t.minimum}),e._zod.check=(a)=>{let i=a.value;if(i.length>=t.minimum)return;let r=Ui(i);a.issues.push({origin:r,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),Wu=m("$ZodCheckLengthEquals",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!Re(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(a)=>{let i=a.value,r=i.length;if(r===t.length)return;let o=Ui(i),s=r>t.length;a.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),Ot=m("$ZodCheckStringFormat",(e,t)=>{var n,a;if(R.init(e,t),e._zod.onattach.push((i)=>{let r=i._zod.bag;if(r.format=t.format,t.pattern)r.patterns??(r.patterns=new Set),r.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(a=e._zod).check??(a.check=()=>{})}),Hu=m("$ZodCheckRegex",(e,t)=>{Ot.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),Bu=m("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=Au),Ot.init(e,t)}),Xu=m("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=Du),Ot.init(e,t)}),Vu=m("$ZodCheckIncludes",(e,t)=>{R.init(e,t);let n=ge(t.includes),a=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=a,e._zod.onattach.push((i)=>{let r=i._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(a)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),Yu=m("$ZodCheckStartsWith",(e,t)=>{R.init(e,t);let n=new RegExp(`^${ge(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(a)=>{if(a.value.startsWith(t.prefix))return;a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:a.value,inst:e,continue:!t.abort})}}),Qu=m("$ZodCheckEndsWith",(e,t)=>{R.init(e,t);let n=new RegExp(`.*${ge(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(a)=>{if(a.value.endsWith(t.suffix))return;a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:a.value,inst:e,continue:!t.abort})}});qu=m("$ZodCheckProperty",(e,t)=>{R.init(e,t),e._zod.check=(n)=>{let a=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(a instanceof Promise)return a.then((i)=>Jo(i,n,t.property));Jo(a,n,t.property);return}}),el=m("$ZodCheckMimeType",(e,t)=>{R.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((a)=>{a._zod.bag.mime=t.mime}),e._zod.check=(a)=>{if(n.has(a.value.type))return;a.issues.push({code:"invalid_value",values:t.mime,input:a.value.type,inst:e,continue:!t.abort})}}),tl=m("$ZodCheckOverwrite",(e,t)=>{R.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});il={major:4,minor:4,patch:3},x=m("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=il;let a=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))a.unshift(e);for(let i of a)for(let r of i._zod.onattach)r(e);if(a.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,l)=>{let d=Ne(o),c;for(let p of s){if(p._zod.def.when){if(Xs(o))continue;if(!p._zod.def.when(o))continue}else if(d)continue;let v=o.issues.length,f=p._zod.check(o);if(f instanceof Promise&&l?.async===!1)throw new we;if(c||f instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await f,o.issues.length===v)return;if(!d)d=Ne(o,v)});else{if(o.issues.length===v)continue;if(!d)d=Ne(o,v)}}if(c)return c.then(()=>{return o});return o},r=(o,s,l)=>{if(Ne(o))return o.aborted=!0,o;let d=i(s,a,l);if(d instanceof Promise){if(l.async===!1)throw new we;return d.then((c)=>e._zod.parse(c,l))}return e._zod.parse(d,l)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let d=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(d instanceof Promise)return d.then((c)=>{return r(c,o,s)});return r(d,o,s)}let l=e._zod.parse(o,s);if(l instanceof Promise){if(s.async===!1)throw new we;return l.then((d)=>i(d,a,s))}return i(l,a,s)}}E(e,"~standard",()=>({validate:(i)=>{try{let r=nu(e,i);return r.success?{value:r.data}:{issues:r.error?.issues}}catch(r){return ru(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Nt=m("$ZodString",(e,t)=>{x.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Eu(e._zod.bag),e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),A=m("$ZodStringFormat",(e,t)=>{Ot.init(e,t),Nt.init(e,t)}),nl=m("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=mu),A.init(e,t)}),rl=m("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=qe(n))}else t.pattern??(t.pattern=qe());A.init(e,t)}),al=m("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=fu),A.init(e,t)}),ol=m("$ZodURL",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{try{let a=n.value.trim();if(!t.normalize&&t.protocol?.source===ku.source){if(!/^https?:\/\//i.test(a)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(a);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=a;return}catch(a){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),sl=m("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=vu()),A.init(e,t)}),ul=m("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=du),A.init(e,t)}),ll=m("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=au),A.init(e,t)}),dl=m("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=ou),A.init(e,t)}),cl=m("$ZodULID",(e,t)=>{t.pattern??(t.pattern=su),A.init(e,t)}),ml=m("$ZodXID",(e,t)=>{t.pattern??(t.pattern=uu),A.init(e,t)}),fl=m("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=lu),A.init(e,t)}),pl=m("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Uu(t)),A.init(e,t)}),vl=m("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Iu),A.init(e,t)}),gl=m("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=zu(t)),A.init(e,t)}),hl=m("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=cu),A.init(e,t)}),yl=m("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=gu),A.init(e,t),e._zod.bag.format="ipv4"}),bl=m("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=hu),A.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),$l=m("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=yu(t.delimiter)),A.init(e,t),e._zod.bag.format="mac"}),_l=m("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=bu),A.init(e,t)}),kl=m("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=$u),A.init(e,t),e._zod.check=(n)=>{let a=n.value.split("/");try{if(a.length!==2)throw Error();let[i,r]=a;if(!r)throw Error();let o=Number(r);if(`${o}`!==r)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});wl=m("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=_u),A.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(gr(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});Il=m("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=cr),A.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(Sl(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),xl=m("$ZodE164",(e,t)=>{t.pattern??(t.pattern=wu),A.init(e,t)});Ul=m("$ZodJWT",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{if(zl(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),El=m("$ZodCustomStringFormat",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),hr=m("$ZodNumber",(e,t)=>{x.init(e,t),e._zod.pattern=e._zod.bag.pattern??mr,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let r=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...r?{received:r}:{}}),n}}),Pl=m("$ZodNumberFormat",(e,t)=>{Ru.init(e,t),hr.init(e,t)}),yr=m("$ZodBoolean",(e,t)=>{x.init(e,t),e._zod.pattern=ju,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(r){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),br=m("$ZodBigInt",(e,t)=>{x.init(e,t),e._zod.pattern=Pu,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),Tl=m("$ZodBigIntFormat",(e,t)=>{Mu.init(e,t),br.init(e,t)}),jl=m("$ZodSymbol",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),Ol=m("$ZodUndefined",(e,t)=>{x.init(e,t),e._zod.pattern=Nu,e._zod.values=new Set([void 0]),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),Nl=m("$ZodNull",(e,t)=>{x.init(e,t),e._zod.pattern=Ou,e._zod.values=new Set([null]),e._zod.parse=(n,a)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),Al=m("$ZodAny",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),Dl=m("$ZodUnknown",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),Zl=m("$ZodNever",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),Cl=m("$ZodVoid",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),Rl=m("$ZodDate",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,r=i instanceof Date;if(r&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...r?{received:"Invalid Date"}:{},inst:e}),n}});Ml=m("$ZodArray",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let r=[];for(let o=0;o<i.length;o++){let s=i[o],l=t.element._zod.run({value:s,issues:[]},a);if(l instanceof Promise)r.push(l.then((d)=>Ko(d,n,o)));else Ko(l,n,o)}if(r.length)return Promise.all(r).then(()=>n);return n}});Jl=m("$ZodObject",(e,t)=>{if(x.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=xt(()=>Ll(t));E(e._zod,"propValues",()=>{let o=t.shape,s={};for(let l in o){let d=o[l]._zod;if(d.values){s[l]??(s[l]=new Set);for(let c of d.values)s[l].add(c)}}return s});let a=Qe,i=t.catchall,r;e._zod.parse=(o,s)=>{r??(r=n.value);let l=o.value;if(!a(l))return o.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),o;o.value={};let d=[],c=r.shape;for(let p of r.keys){let v=c[p],f=v._zod.optin==="optional",y=v._zod.optout==="optional",k=v._zod.run({value:l[p],issues:[]},s);if(k instanceof Promise)d.push(k.then((T)=>$i(T,o,p,l,f,y)));else $i(k,o,p,l,f,y)}if(!i)return d.length?Promise.all(d).then(()=>o):o;return Fl(d,l,o,s,n.value,e)}}),Kl=m("$ZodObjectJIT",(e,t)=>{Jl.init(e,t);let n=e._zod.parse,a=xt(()=>Ll(t)),i=(p)=>{let v=new vr(["shape","payload","ctx"]),f=a.value,y=(M)=>{let S=Rn(M);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};v.write("const input = payload.value;");let k=Object.create(null),T=0;for(let M of f.keys)k[M]=`key_${T++}`;v.write("const newResult = {};");for(let M of f.keys){let S=k[M],Z=Rn(M),W=p[M],fe=W?._zod?.optin==="optional",Pn=W?._zod?.optout==="optional";if(v.write(`const ${S} = ${y(M)};`),fe&&Pn)v.write(`
100
+ {{CLINE_METADATA}}`,ur="# Workspace Configuration",Ok=25463,Pk=25466,jk=4317,Nk="127.0.0.1:4317",Ak,Dk,Zk,Ck="runtime.team.progress.v1",Rk="runtime.team.lifecycle.v1",Di="CLINE_BUILD_ENV",Lp="CLINE_DEBUG_HOST",Mp="CLINE_DEBUG_PORT_BASE",Vk="CLINE_ENVIRONMENT",Yk="CLINE_ENVIRONMENT_OVERRIDE",lr,qk="production",ew="CLINE_RUN_AS_HUB_DAEMON",iw="sdk.error",mw=128,Re,it,yw,yo,Hp,bw,Vp,Yp,qp,Sw=3600000,Iw=240,xw=400,me,nt,Qp,zn,zw,Uw,Ew,Tw,Ow,Pw,jw,Nw,Aw,Dw,Zw,Cw,Rw,Lw,Mw,Fw,Jw,Kw,Gw,Ww,Bw,Hw,Xw,ev,Vw,Yw,tv,qw,Qw,eS,tS,iS,nS,rS,aS,oS,sS,uS,lS,iv,nv,av,bS,$S,kS,SS;var Un=G(()=>{Gg=Object.defineProperty;qn=new TextEncoder,Yg={appstream2:"appstream",cloudhsmv2:"cloudhsm",email:"ses",marketplace:"aws-marketplace",mobile:"AWSMobileHubService",pinpoint:"mobiletargeting",queue:"sqs","git-codecommit":"codecommit","mturk-requester-sandbox":"mturk-requester","personalize-runtime":"personalize"},qg=new Set(["authorization","content-type","content-length","user-agent","presigned-expires","expect","x-amzn-trace-id","range","connection"]);Qo=["0","1","2","3","4","5","6","7","8","9","a","b","c","d","e","f"];xi=new Map;u={};ke(u,{xor:()=>kf,xid:()=>Km,void:()=>gf,uuidv7:()=>Dm,uuidv6:()=>Am,uuidv4:()=>Nm,uuid:()=>jm,util:()=>U,url:()=>Zm,uppercase:()=>Ki,unknown:()=>Ke,union:()=>_n,undefined:()=>pf,ulid:()=>Jm,uint64:()=>mf,uint32:()=>lf,tuple:()=>Da,trim:()=>Vi,treeifyError:()=>bu,transform:()=>wn,toUpperCase:()=>qi,toLowerCase:()=>Yi,toJSONSchema:()=>dm,templateLiteral:()=>Df,symbol:()=>ff,superRefine:()=>co,success:()=>Pf,stringbool:()=>Jf,stringFormat:()=>tf,string:()=>Ut,strictObject:()=>$f,startsWith:()=>Wi,slugify:()=>Qi,size:()=>Ft,setErrorMap:()=>B$,set:()=>zf,safeParseAsync:()=>km,safeParse:()=>_m,safeEncodeAsync:()=>Em,safeEncode:()=>zm,safeDecodeAsync:()=>Tm,safeDecode:()=>Um,registry:()=>Lr,regexes:()=>Ue,regex:()=>Fi,refine:()=>lo,record:()=>Za,readonly:()=>no,property:()=>ca,promise:()=>Zf,prettifyError:()=>_u,preprocess:()=>Gf,prefault:()=>Xa,positive:()=>sa,pipe:()=>ji,partialRecord:()=>Sf,parseAsync:()=>$m,parse:()=>bm,overwrite:()=>Se,optional:()=>Tt,object:()=>bf,number:()=>$a,nullish:()=>Of,nullable:()=>Ot,null:()=>Ia,normalize:()=>Xi,nonpositive:()=>la,nonoptional:()=>Va,nonnegative:()=>da,never:()=>bn,negative:()=>ua,nativeEnum:()=>Uf,nanoid:()=>Lm,nan:()=>jf,multipleOf:()=>ot,minSize:()=>Oe,minLength:()=>Je,mime:()=>Hi,meta:()=>Mf,maxSize:()=>mt,maxLength:()=>Jt,map:()=>xf,mac:()=>Bm,lte:()=>oe,lt:()=>Ee,lowercase:()=>Ji,looseRecord:()=>If,looseObject:()=>_f,locales:()=>Cr,literal:()=>Ef,length:()=>Kt,lazy:()=>oo,ksuid:()=>Gm,keyof:()=>yf,jwt:()=>ef,json:()=>Kf,iso:()=>pa,ipv6:()=>Hm,ipv4:()=>Wm,invertCodec:()=>Af,intersection:()=>Na,int64:()=>cf,int32:()=>uf,int:()=>Pi,instanceof:()=>Ff,includes:()=>Gi,httpUrl:()=>Cm,hostname:()=>nf,hex:()=>rf,hash:()=>af,guid:()=>Pm,gte:()=>Y,gt:()=>Te,globalRegistry:()=>ae,getErrorMap:()=>H$,function:()=>Ni,fromJSONSchema:()=>q$,formatError:()=>gr,float64:()=>sf,float32:()=>of,flattenError:()=>vr,file:()=>Tf,exactOptional:()=>Ka,enum:()=>kn,endsWith:()=>Bi,encodeAsync:()=>Im,encode:()=>wm,emoji:()=>Rm,email:()=>Om,e164:()=>Qm,discriminatedUnion:()=>wf,describe:()=>Lf,decodeAsync:()=>xm,decode:()=>Sm,date:()=>hf,custom:()=>Rf,cuid2:()=>Fm,cuid:()=>Mm,core:()=>nu,config:()=>K,coerce:()=>Bf,codec:()=>Nf,clone:()=>se,cidrv6:()=>Vm,cidrv4:()=>Xm,check:()=>Cf,catch:()=>Qa,boolean:()=>_a,bigint:()=>df,base64url:()=>qm,base64:()=>Ym,array:()=>qt,any:()=>vf,_function:()=>Ni,_default:()=>Ba,_ZodString:()=>en,ZodXor:()=>Oa,ZodXID:()=>un,ZodVoid:()=>Ea,ZodUnknown:()=>za,ZodUnion:()=>ei,ZodUndefined:()=>wa,ZodUUID:()=>ye,ZodURL:()=>Ht,ZodULID:()=>sn,ZodType:()=>z,ZodTuple:()=>Aa,ZodTransform:()=>Fa,ZodTemplateLiteral:()=>ro,ZodSymbol:()=>ka,ZodSuccess:()=>Ya,ZodStringFormat:()=>D,ZodString:()=>Bt,ZodSet:()=>Ra,ZodRecord:()=>dt,ZodRealError:()=>te,ZodReadonly:()=>io,ZodPromise:()=>so,ZodPreprocess:()=>to,ZodPrefault:()=>Ha,ZodPipe:()=>ti,ZodOptional:()=>Sn,ZodObject:()=>Qt,ZodNumberFormat:()=>Be,ZodNumber:()=>Xt,ZodNullable:()=>Ga,ZodNull:()=>Sa,ZodNonOptional:()=>In,ZodNever:()=>Ua,ZodNanoID:()=>rn,ZodNaN:()=>eo,ZodMap:()=>Ca,ZodMAC:()=>ba,ZodLiteral:()=>La,ZodLazy:()=>ao,ZodKSUID:()=>ln,ZodJWT:()=>hn,ZodIssueCode:()=>W$,ZodIntersection:()=>ja,ZodISOTime:()=>ha,ZodISODuration:()=>ya,ZodISODateTime:()=>va,ZodISODate:()=>ga,ZodIPv6:()=>cn,ZodIPv4:()=>dn,ZodGUID:()=>Et,ZodFunction:()=>uo,ZodFirstPartyTypeKind:()=>rr,ZodFile:()=>Ma,ZodExactOptional:()=>Ja,ZodError:()=>G$,ZodEnum:()=>ct,ZodEmoji:()=>nn,ZodEmail:()=>tn,ZodE164:()=>gn,ZodDiscriminatedUnion:()=>Pa,ZodDefault:()=>Wa,ZodDate:()=>$n,ZodCustomStringFormat:()=>ft,ZodCustom:()=>ni,ZodCodec:()=>ii,ZodCatch:()=>qa,ZodCUID2:()=>on,ZodCUID:()=>an,ZodCIDRv6:()=>fn,ZodCIDRv4:()=>mn,ZodBoolean:()=>Vt,ZodBigIntFormat:()=>yn,ZodBigInt:()=>Yt,ZodBase64URL:()=>vn,ZodBase64:()=>pn,ZodArray:()=>Ta,ZodAny:()=>xa,TimePrecision:()=>Jd,NEVER:()=>ru,$output:()=>Cd,$input:()=>Rd,$brand:()=>au});nu={};ke(nu,{version:()=>_l,util:()=>U,treeifyError:()=>bu,toJSONSchema:()=>dm,toDotPath:()=>$u,safeParseAsync:()=>wu,safeParse:()=>ku,safeEncodeAsync:()=>ey,safeEncode:()=>qh,safeDecodeAsync:()=>ty,safeDecode:()=>Qh,registry:()=>Lr,regexes:()=>Ue,process:()=>N,prettifyError:()=>_u,parseAsync:()=>tr,parse:()=>er,meta:()=>Sc,locales:()=>Cr,isValidJWT:()=>Wl,isValidBase64URL:()=>Jl,isValidBase64:()=>Tr,initializeContext:()=>st,globalRegistry:()=>ae,globalConfig:()=>xt,formatError:()=>gr,flattenError:()=>vr,finalize:()=>lt,extractDefs:()=>ut,encodeAsync:()=>Vh,encode:()=>Hh,describe:()=>wc,decodeAsync:()=>Yh,decode:()=>Xh,createToJSONSchemaMethod:()=>xc,createStandardJSONSchemaMethod:()=>zt,config:()=>K,clone:()=>se,_xor:()=>_$,_xid:()=>Yr,_void:()=>fc,_uuidv7:()=>Gr,_uuidv6:()=>Kr,_uuidv4:()=>Jr,_uuid:()=>Fr,_url:()=>Mi,_uppercase:()=>Ki,_unknown:()=>cc,_union:()=>$$,_undefined:()=>uc,_ulid:()=>Vr,_uint64:()=>oc,_uint32:()=>ec,_tuple:()=>S$,_trim:()=>Vi,_transform:()=>O$,_toUpperCase:()=>qi,_toLowerCase:()=>Yi,_templateLiteral:()=>L$,_symbol:()=>sc,_superRefine:()=>_c,_success:()=>D$,_stringbool:()=>Ic,_stringFormat:()=>Gt,_string:()=>Ld,_startsWith:()=>Wi,_slugify:()=>Qi,_size:()=>Ft,_set:()=>z$,_safeParseAsync:()=>Zt,_safeParse:()=>Dt,_safeEncodeAsync:()=>wr,_safeEncode:()=>_r,_safeDecodeAsync:()=>Sr,_safeDecode:()=>kr,_regex:()=>Fi,_refine:()=>$c,_record:()=>I$,_readonly:()=>R$,_property:()=>ca,_promise:()=>F$,_positive:()=>sa,_pipe:()=>C$,_parseAsync:()=>At,_parse:()=>Nt,_overwrite:()=>Se,_optional:()=>P$,_number:()=>Hd,_nullable:()=>j$,_null:()=>lc,_normalize:()=>Xi,_nonpositive:()=>la,_nonoptional:()=>A$,_nonnegative:()=>da,_never:()=>mc,_negative:()=>ua,_nativeEnum:()=>E$,_nanoid:()=>Br,_nan:()=>gc,_multipleOf:()=>ot,_minSize:()=>Oe,_minLength:()=>Je,_min:()=>Y,_mime:()=>Hi,_maxSize:()=>mt,_maxLength:()=>Jt,_max:()=>oe,_map:()=>x$,_mac:()=>Fd,_lte:()=>oe,_lt:()=>Ee,_lowercase:()=>Ji,_literal:()=>T$,_length:()=>Kt,_lazy:()=>M$,_ksuid:()=>qr,_jwt:()=>oa,_isoTime:()=>Wd,_isoDuration:()=>Bd,_isoDateTime:()=>Kd,_isoDate:()=>Gd,_ipv6:()=>ea,_ipv4:()=>Qr,_intersection:()=>w$,_int64:()=>ac,_int32:()=>Qd,_int:()=>Vd,_includes:()=>Gi,_guid:()=>Oi,_gte:()=>Y,_gt:()=>Te,_float64:()=>qd,_float32:()=>Yd,_file:()=>yc,_enum:()=>U$,_endsWith:()=>Bi,_encodeAsync:()=>br,_encode:()=>hr,_emoji:()=>Wr,_email:()=>Mr,_e164:()=>aa,_discriminatedUnion:()=>k$,_default:()=>N$,_decodeAsync:()=>$r,_decode:()=>yr,_date:()=>pc,_custom:()=>bc,_cuid2:()=>Xr,_cuid:()=>Hr,_coercedString:()=>Md,_coercedNumber:()=>Xd,_coercedDate:()=>vc,_coercedBoolean:()=>ic,_coercedBigint:()=>rc,_cidrv6:()=>ia,_cidrv4:()=>ta,_check:()=>kc,_catch:()=>Z$,_boolean:()=>tc,_bigint:()=>nc,_base64url:()=>ra,_base64:()=>na,_array:()=>hc,_any:()=>dc,TimePrecision:()=>Jd,NEVER:()=>ru,JSONSchemaGenerator:()=>cm,JSONSchema:()=>K$,Doc:()=>Er,$output:()=>Cd,$input:()=>Rd,$constructor:()=>m,$brand:()=>au,$ZodXor:()=>dd,$ZodXID:()=>Ol,$ZodVoid:()=>nd,$ZodUnknown:()=>td,$ZodUnion:()=>Li,$ZodUndefined:()=>ql,$ZodUUID:()=>wl,$ZodURL:()=>Il,$ZodULID:()=>Tl,$ZodType:()=>x,$ZodTuple:()=>Nr,$ZodTransform:()=>bd,$ZodTemplateLiteral:()=>Td,$ZodSymbol:()=>Yl,$ZodSuccess:()=>Id,$ZodStringFormat:()=>A,$ZodString:()=>Mt,$ZodSet:()=>vd,$ZodRegistry:()=>Rr,$ZodRecord:()=>fd,$ZodRealError:()=>ee,$ZodReadonly:()=>Ed,$ZodPromise:()=>Pd,$ZodPreprocess:()=>Ud,$ZodPrefault:()=>wd,$ZodPipe:()=>Dr,$ZodOptional:()=>Ar,$ZodObjectJIT:()=>ld,$ZodObject:()=>ud,$ZodNumberFormat:()=>Xl,$ZodNumber:()=>Or,$ZodNullable:()=>_d,$ZodNull:()=>Ql,$ZodNonOptional:()=>Sd,$ZodNever:()=>id,$ZodNanoID:()=>zl,$ZodNaN:()=>zd,$ZodMap:()=>pd,$ZodMAC:()=>Rl,$ZodLiteral:()=>hd,$ZodLazy:()=>jd,$ZodKSUID:()=>Pl,$ZodJWT:()=>Bl,$ZodIntersection:()=>md,$ZodISOTime:()=>Al,$ZodISODuration:()=>Dl,$ZodISODateTime:()=>jl,$ZodISODate:()=>Nl,$ZodIPv6:()=>Cl,$ZodIPv4:()=>Zl,$ZodGUID:()=>kl,$ZodFunction:()=>Od,$ZodFile:()=>yd,$ZodExactOptional:()=>$d,$ZodError:()=>pr,$ZodEnum:()=>gd,$ZodEncodeError:()=>Pt,$ZodEmoji:()=>xl,$ZodEmail:()=>Sl,$ZodE164:()=>Gl,$ZodDiscriminatedUnion:()=>cd,$ZodDefault:()=>kd,$ZodDate:()=>rd,$ZodCustomStringFormat:()=>Hl,$ZodCustom:()=>Nd,$ZodCodec:()=>Zr,$ZodCheckUpperCase:()=>pl,$ZodCheckStringFormat:()=>Lt,$ZodCheckStartsWith:()=>gl,$ZodCheckSizeEquals:()=>ul,$ZodCheckRegex:()=>ml,$ZodCheckProperty:()=>yl,$ZodCheckOverwrite:()=>$l,$ZodCheckNumberFormat:()=>rl,$ZodCheckMultipleOf:()=>nl,$ZodCheckMinSize:()=>sl,$ZodCheckMinLength:()=>dl,$ZodCheckMimeType:()=>bl,$ZodCheckMaxSize:()=>ol,$ZodCheckMaxLength:()=>ll,$ZodCheckLowerCase:()=>fl,$ZodCheckLessThan:()=>zr,$ZodCheckLengthEquals:()=>cl,$ZodCheckIncludes:()=>vl,$ZodCheckGreaterThan:()=>Ur,$ZodCheckEndsWith:()=>hl,$ZodCheckBigIntFormat:()=>al,$ZodCheck:()=>R,$ZodCatch:()=>xd,$ZodCUID2:()=>El,$ZodCUID:()=>Ul,$ZodCIDRv6:()=>Ml,$ZodCIDRv4:()=>Ll,$ZodBoolean:()=>Pr,$ZodBigIntFormat:()=>Vl,$ZodBigInt:()=>jr,$ZodBase64URL:()=>Kl,$ZodBase64:()=>Fl,$ZodAsyncError:()=>ze,$ZodArray:()=>ad,$ZodAny:()=>ed});ru=Object.freeze({status:"aborted"});au=Symbol("zod_brand");ze=class ze extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}};Pt=class Pt extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`);this.name="ZodEncodeError"}};(as=globalThis).__zod_globalConfig??(as.__zod_globalConfig={});xt=globalThis.__zod_globalConfig;U={};ke(U,{unwrapMessage:()=>St,uint8ArrayToHex:()=>Bh,uint8ArrayToBase64url:()=>Gh,uint8ArrayToBase64:()=>gu,stringifyPrimitive:()=>k,slugify:()=>su,shallowClone:()=>lu,safeExtend:()=>Rh,required:()=>Fh,randomString:()=>Ph,propertyKeyTypes:()=>Ui,promiseAllObject:()=>Oh,primitiveTypes:()=>du,prefixIssues:()=>re,pick:()=>Dh,partial:()=>Mh,parsedType:()=>w,optionalKeys:()=>cu,omit:()=>Zh,objectClone:()=>Uh,numKeys:()=>jh,nullish:()=>We,normalizeParams:()=>h,mergeDefs:()=>we,merge:()=>Lh,jsonStringifyReplacer:()=>zi,joinValues:()=>g,issue:()=>Ei,isPlainObject:()=>Fe,isObject:()=>rt,hexToUint8Array:()=>Wh,getSizableOrigin:()=>Ci,getParsedType:()=>Nh,getLengthableOrigin:()=>Ri,getEnumValues:()=>mr,getElementAtPath:()=>Th,floatSafeRemainder:()=>ou,finalizeIssue:()=>Q,extend:()=>Ch,explicitlyAborted:()=>pu,escapeRegex:()=>_e,esc:()=>Qn,defineLazy:()=>E,createTransparentProxy:()=>Ah,cloneDef:()=>Eh,clone:()=>se,cleanRegex:()=>Zi,cleanEnum:()=>Jh,captureStackTrace:()=>fr,cached:()=>jt,base64urlToUint8Array:()=>Kh,base64ToUint8Array:()=>vu,assignProp:()=>Pe,assertNotEqual:()=>Sh,assertNever:()=>xh,assertIs:()=>Ih,assertEqual:()=>wh,assert:()=>zh,allowsEval:()=>uu,aborted:()=>Me,NUMBER_FORMAT_RANGES:()=>mu,Class:()=>hu,BIGINT_FORMAT_RANGES:()=>fu});os=Symbol("evaluating");fr="captureStackTrace"in Error?Error.captureStackTrace:(...e)=>{};uu=jt(()=>{if(xt.jitless)return!1;if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return Function(""),!0}catch(e){return!1}});Ui=new Set(["string","number","symbol"]),du=new Set(["string","number","bigint","boolean","symbol","undefined"]);mu={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},fu={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};pr=m("$ZodError",yu),ee=m("$ZodError",yu,{Parent:Error});er=Nt(ee),tr=At(ee),ku=Dt(ee),wu=Zt(ee),Hh=hr(ee),Xh=yr(ee),Vh=br(ee),Yh=$r(ee),qh=_r(ee),Qh=kr(ee),ey=wr(ee),ty=Sr(ee),Ue={};ke(Ue,{xid:()=>zu,uuid7:()=>ay,uuid6:()=>ry,uuid4:()=>ny,uuid:()=>at,uppercase:()=>tl,unicodeEmail:()=>ju,undefined:()=>Qu,ulid:()=>xu,time:()=>Wu,string:()=>Hu,sha512_hex:()=>xy,sha512_base64url:()=>Uy,sha512_base64:()=>zy,sha384_hex:()=>wy,sha384_base64url:()=>Iy,sha384_base64:()=>Sy,sha256_hex:()=>$y,sha256_base64url:()=>ky,sha256_base64:()=>_y,sha1_hex:()=>hy,sha1_base64url:()=>by,sha1_base64:()=>yy,rfc5322Email:()=>sy,number:()=>xr,null:()=>qu,nanoid:()=>Eu,md5_hex:()=>py,md5_base64url:()=>gy,md5_base64:()=>vy,mac:()=>Zu,lowercase:()=>el,ksuid:()=>Uu,ipv6:()=>Du,ipv4:()=>Au,integer:()=>Vu,idnEmail:()=>uy,httpProtocol:()=>Mu,html5Email:()=>oy,hostname:()=>cy,hex:()=>fy,guid:()=>Ou,extendedDuration:()=>iy,emoji:()=>Nu,email:()=>Pu,e164:()=>Fu,duration:()=>Tu,domain:()=>my,datetime:()=>Bu,date:()=>Ku,cuid2:()=>Iu,cuid:()=>Su,cidrv6:()=>Ru,cidrv4:()=>Cu,browserEmail:()=>ly,boolean:()=>Yu,bigint:()=>Xu,base64url:()=>Ir,base64:()=>Lu});Su=/^[cC][0-9a-z]{6,}$/,Iu=/^[0-9a-z]+$/,xu=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,zu=/^[0-9a-vA-V]{20}$/,Uu=/^[A-Za-z0-9]{27}$/,Eu=/^[a-zA-Z0-9_-]{21}$/,Tu=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,iy=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,Ou=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,ny=at(4),ry=at(6),ay=at(7),Pu=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,oy=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/,sy=/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,ju=/^[^\s@"]{1,64}@[^\s@]{1,255}$/u,uy=ju,ly=/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;Au=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Du=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Cu=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Ru=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Lu=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ir=/^[A-Za-z0-9_-]*$/,cy=/^(?=.{1,253}\.?$)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[-0-9a-zA-Z]{0,61}[0-9a-zA-Z])?)*\.?$/,my=/^([a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,}$/,Mu=/^https?$/,Fu=/^\+[1-9]\d{6,14}$/,Ku=new RegExp(`^${Ju}$`);Xu=/^-?\d+n?$/,Vu=/^-?\d+$/,xr=/^-?\d+(?:\.\d+)?$/,Yu=/^(?:true|false)$/i,qu=/^null$/i,Qu=/^undefined$/i,el=/^[^A-Z]*$/,tl=/^[^a-z]*$/,fy=/^[0-9a-fA-F]*$/;py=/^[0-9a-fA-F]{32}$/,vy=Ct(22,"=="),gy=Rt(22),hy=/^[0-9a-fA-F]{40}$/,yy=Ct(27,"="),by=Rt(27),$y=/^[0-9a-fA-F]{64}$/,_y=Ct(43,"="),ky=Rt(43),wy=/^[0-9a-fA-F]{96}$/,Sy=Ct(64,""),Iy=Rt(64),xy=/^[0-9a-fA-F]{128}$/,zy=Ct(86,"=="),Uy=Rt(86),R=m("$ZodCheck",(e,t)=>{var n;e._zod??(e._zod={}),e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),il={number:"number",bigint:"bigint",object:"date"},zr=m("$ZodCheckLessThan",(e,t)=>{R.init(e,t);let n=il[typeof t.value];e._zod.onattach.push((a)=>{let i=a._zod.bag,r=(t.inclusive?i.maximum:i.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(t.value<r)if(t.inclusive)i.maximum=t.value;else i.exclusiveMaximum=t.value}),e._zod.check=(a)=>{if(t.inclusive?a.value<=t.value:a.value<t.value)return;a.issues.push({origin:n,code:"too_big",maximum:typeof t.value==="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Ur=m("$ZodCheckGreaterThan",(e,t)=>{R.init(e,t);let n=il[typeof t.value];e._zod.onattach.push((a)=>{let i=a._zod.bag,r=(t.inclusive?i.minimum:i.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(t.value>r)if(t.inclusive)i.minimum=t.value;else i.exclusiveMinimum=t.value}),e._zod.check=(a)=>{if(t.inclusive?a.value>=t.value:a.value>t.value)return;a.issues.push({origin:n,code:"too_small",minimum:typeof t.value==="object"?t.value.getTime():t.value,input:a.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),nl=m("$ZodCheckMultipleOf",(e,t)=>{R.init(e,t),e._zod.onattach.push((n)=>{var a;(a=n._zod.bag).multipleOf??(a.multipleOf=t.value)}),e._zod.check=(n)=>{if(typeof n.value!==typeof t.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof n.value==="bigint"?n.value%t.value===BigInt(0):ou(n.value,t.value)===0)return;n.issues.push({origin:typeof n.value,code:"not_multiple_of",divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),rl=m("$ZodCheckNumberFormat",(e,t)=>{R.init(e,t),t.format=t.format||"float64";let n=t.format?.includes("int"),a=n?"int":"number",[i,r]=mu[t.format];e._zod.onattach.push((o)=>{let s=o._zod.bag;if(s.format=t.format,s.minimum=i,s.maximum=r,n)s.pattern=Vu}),e._zod.check=(o)=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:a,format:t.format,code:"invalid_type",continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){if(s>0)o.issues.push({input:s,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});else o.issues.push({input:s,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:e,origin:a,inclusive:!0,continue:!t.abort});return}}if(s<i)o.issues.push({origin:"number",input:s,code:"too_small",minimum:i,inclusive:!0,inst:e,continue:!t.abort});if(s>r)o.issues.push({origin:"number",input:s,code:"too_big",maximum:r,inclusive:!0,inst:e,continue:!t.abort})}}),al=m("$ZodCheckBigIntFormat",(e,t)=>{R.init(e,t);let[n,a]=fu[t.format];e._zod.onattach.push((i)=>{let r=i._zod.bag;r.format=t.format,r.minimum=n,r.maximum=a}),e._zod.check=(i)=>{let r=i.value;if(r<n)i.issues.push({origin:"bigint",input:r,code:"too_small",minimum:n,inclusive:!0,inst:e,continue:!t.abort});if(r>a)i.issues.push({origin:"bigint",input:r,code:"too_big",maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),ol=m("$ZodCheckMaxSize",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)a._zod.bag.maximum=t.maximum}),e._zod.check=(a)=>{let i=a.value;if(i.size<=t.maximum)return;a.issues.push({origin:Ci(i),code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),sl=m("$ZodCheckMinSize",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)a._zod.bag.minimum=t.minimum}),e._zod.check=(a)=>{let i=a.value;if(i.size>=t.minimum)return;a.issues.push({origin:Ci(i),code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),ul=m("$ZodCheckSizeEquals",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.size!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.minimum=t.size,i.maximum=t.size,i.size=t.size}),e._zod.check=(a)=>{let i=a.value,r=i.size;if(r===t.size)return;let o=r>t.size;a.issues.push({origin:Ci(i),...o?{code:"too_big",maximum:t.size}:{code:"too_small",minimum:t.size},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),ll=m("$ZodCheckMaxLength",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.maximum??Number.POSITIVE_INFINITY;if(t.maximum<i)a._zod.bag.maximum=t.maximum}),e._zod.check=(a)=>{let i=a.value;if(i.length<=t.maximum)return;let r=Ri(i);a.issues.push({origin:r,code:"too_big",maximum:t.maximum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),dl=m("$ZodCheckMinLength",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(t.minimum>i)a._zod.bag.minimum=t.minimum}),e._zod.check=(a)=>{let i=a.value;if(i.length>=t.minimum)return;let r=Ri(i);a.issues.push({origin:r,code:"too_small",minimum:t.minimum,inclusive:!0,input:i,inst:e,continue:!t.abort})}}),cl=m("$ZodCheckLengthEquals",(e,t)=>{var n;R.init(e,t),(n=e._zod.def).when??(n.when=(a)=>{let i=a.value;return!We(i)&&i.length!==void 0}),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.minimum=t.length,i.maximum=t.length,i.length=t.length}),e._zod.check=(a)=>{let i=a.value,r=i.length;if(r===t.length)return;let o=Ri(i),s=r>t.length;a.issues.push({origin:o,...s?{code:"too_big",maximum:t.length}:{code:"too_small",minimum:t.length},inclusive:!0,exact:!0,input:a.value,inst:e,continue:!t.abort})}}),Lt=m("$ZodCheckStringFormat",(e,t)=>{var n,a;if(R.init(e,t),e._zod.onattach.push((i)=>{let r=i._zod.bag;if(r.format=t.format,t.pattern)r.patterns??(r.patterns=new Set),r.patterns.add(t.pattern)}),t.pattern)(n=e._zod).check??(n.check=(i)=>{if(t.pattern.lastIndex=0,t.pattern.test(i.value))return;i.issues.push({origin:"string",code:"invalid_format",format:t.format,input:i.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})});else(a=e._zod).check??(a.check=()=>{})}),ml=m("$ZodCheckRegex",(e,t)=>{Lt.init(e,t),e._zod.check=(n)=>{if(t.pattern.lastIndex=0,t.pattern.test(n.value))return;n.issues.push({origin:"string",code:"invalid_format",format:"regex",input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),fl=m("$ZodCheckLowerCase",(e,t)=>{t.pattern??(t.pattern=el),Lt.init(e,t)}),pl=m("$ZodCheckUpperCase",(e,t)=>{t.pattern??(t.pattern=tl),Lt.init(e,t)}),vl=m("$ZodCheckIncludes",(e,t)=>{R.init(e,t);let n=_e(t.includes),a=new RegExp(typeof t.position==="number"?`^.{${t.position}}${n}`:n);t.pattern=a,e._zod.onattach.push((i)=>{let r=i._zod.bag;r.patterns??(r.patterns=new Set),r.patterns.add(a)}),e._zod.check=(i)=>{if(i.value.includes(t.includes,t.position))return;i.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:t.includes,input:i.value,inst:e,continue:!t.abort})}}),gl=m("$ZodCheckStartsWith",(e,t)=>{R.init(e,t);let n=new RegExp(`^${_e(t.prefix)}.*`);t.pattern??(t.pattern=n),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(a)=>{if(a.value.startsWith(t.prefix))return;a.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:t.prefix,input:a.value,inst:e,continue:!t.abort})}}),hl=m("$ZodCheckEndsWith",(e,t)=>{R.init(e,t);let n=new RegExp(`.*${_e(t.suffix)}$`);t.pattern??(t.pattern=n),e._zod.onattach.push((a)=>{let i=a._zod.bag;i.patterns??(i.patterns=new Set),i.patterns.add(n)}),e._zod.check=(a)=>{if(a.value.endsWith(t.suffix))return;a.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:t.suffix,input:a.value,inst:e,continue:!t.abort})}});yl=m("$ZodCheckProperty",(e,t)=>{R.init(e,t),e._zod.check=(n)=>{let a=t.schema._zod.run({value:n.value[t.property],issues:[]},{});if(a instanceof Promise)return a.then((i)=>ss(i,n,t.property));ss(a,n,t.property);return}}),bl=m("$ZodCheckMimeType",(e,t)=>{R.init(e,t);let n=new Set(t.mime);e._zod.onattach.push((a)=>{a._zod.bag.mime=t.mime}),e._zod.check=(a)=>{if(n.has(a.value.type))return;a.issues.push({code:"invalid_value",values:t.mime,input:a.value.type,inst:e,continue:!t.abort})}}),$l=m("$ZodCheckOverwrite",(e,t)=>{R.init(e,t),e._zod.check=(n)=>{n.value=t.tx(n.value)}});_l={major:4,minor:4,patch:3},x=m("$ZodType",(e,t)=>{var n;e??(e={}),e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=_l;let a=[...e._zod.def.checks??[]];if(e._zod.traits.has("$ZodCheck"))a.unshift(e);for(let i of a)for(let r of i._zod.onattach)r(e);if(a.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let i=(o,s,l)=>{let d=Me(o),c;for(let p of s){if(p._zod.def.when){if(pu(o))continue;if(!p._zod.def.when(o))continue}else if(d)continue;let v=o.issues.length,f=p._zod.check(o);if(f instanceof Promise&&l?.async===!1)throw new ze;if(c||f instanceof Promise)c=(c??Promise.resolve()).then(async()=>{if(await f,o.issues.length===v)return;if(!d)d=Me(o,v)});else{if(o.issues.length===v)continue;if(!d)d=Me(o,v)}}if(c)return c.then(()=>{return o});return o},r=(o,s,l)=>{if(Me(o))return o.aborted=!0,o;let d=i(s,a,l);if(d instanceof Promise){if(l.async===!1)throw new ze;return d.then((c)=>e._zod.parse(c,l))}return e._zod.parse(d,l)};e._zod.run=(o,s)=>{if(s.skipChecks)return e._zod.parse(o,s);if(s.direction==="backward"){let d=e._zod.parse({value:o.value,issues:[]},{...s,skipChecks:!0});if(d instanceof Promise)return d.then((c)=>{return r(c,o,s)});return r(d,o,s)}let l=e._zod.parse(o,s);if(l instanceof Promise){if(s.async===!1)throw new ze;return l.then((d)=>i(d,a,s))}return i(l,a,s)}}E(e,"~standard",()=>({validate:(i)=>{try{let r=ku(e,i);return r.success?{value:r.data}:{issues:r.error?.issues}}catch(r){return wu(e,i).then((o)=>o.success?{value:o.data}:{issues:o.error?.issues})}},vendor:"zod",version:1}))}),Mt=m("$ZodString",(e,t)=>{x.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Hu(e._zod.bag),e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=String(n.value)}catch(i){}if(typeof n.value==="string")return n;return n.issues.push({expected:"string",code:"invalid_type",input:n.value,inst:e}),n}}),A=m("$ZodStringFormat",(e,t)=>{Lt.init(e,t),Mt.init(e,t)}),kl=m("$ZodGUID",(e,t)=>{t.pattern??(t.pattern=Ou),A.init(e,t)}),wl=m("$ZodUUID",(e,t)=>{if(t.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(n===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??(t.pattern=at(n))}else t.pattern??(t.pattern=at());A.init(e,t)}),Sl=m("$ZodEmail",(e,t)=>{t.pattern??(t.pattern=Pu),A.init(e,t)}),Il=m("$ZodURL",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{try{let a=n.value.trim();if(!t.normalize&&t.protocol?.source===Mu.source){if(!/^https?:\/\//i.test(a)){n.issues.push({code:"invalid_format",format:"url",note:"Invalid URL format",input:n.value,inst:e,continue:!t.abort});return}}let i=new URL(a);if(t.hostname){if(t.hostname.lastIndex=0,!t.hostname.test(i.hostname))n.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})}if(t.protocol){if(t.protocol.lastIndex=0,!t.protocol.test(i.protocol.endsWith(":")?i.protocol.slice(0,-1):i.protocol))n.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})}if(t.normalize)n.value=i.href;else n.value=a;return}catch(a){n.issues.push({code:"invalid_format",format:"url",input:n.value,inst:e,continue:!t.abort})}}}),xl=m("$ZodEmoji",(e,t)=>{t.pattern??(t.pattern=Nu()),A.init(e,t)}),zl=m("$ZodNanoID",(e,t)=>{t.pattern??(t.pattern=Eu),A.init(e,t)}),Ul=m("$ZodCUID",(e,t)=>{t.pattern??(t.pattern=Su),A.init(e,t)}),El=m("$ZodCUID2",(e,t)=>{t.pattern??(t.pattern=Iu),A.init(e,t)}),Tl=m("$ZodULID",(e,t)=>{t.pattern??(t.pattern=xu),A.init(e,t)}),Ol=m("$ZodXID",(e,t)=>{t.pattern??(t.pattern=zu),A.init(e,t)}),Pl=m("$ZodKSUID",(e,t)=>{t.pattern??(t.pattern=Uu),A.init(e,t)}),jl=m("$ZodISODateTime",(e,t)=>{t.pattern??(t.pattern=Bu(t)),A.init(e,t)}),Nl=m("$ZodISODate",(e,t)=>{t.pattern??(t.pattern=Ku),A.init(e,t)}),Al=m("$ZodISOTime",(e,t)=>{t.pattern??(t.pattern=Wu(t)),A.init(e,t)}),Dl=m("$ZodISODuration",(e,t)=>{t.pattern??(t.pattern=Tu),A.init(e,t)}),Zl=m("$ZodIPv4",(e,t)=>{t.pattern??(t.pattern=Au),A.init(e,t),e._zod.bag.format="ipv4"}),Cl=m("$ZodIPv6",(e,t)=>{t.pattern??(t.pattern=Du),A.init(e,t),e._zod.bag.format="ipv6",e._zod.check=(n)=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:"invalid_format",format:"ipv6",input:n.value,inst:e,continue:!t.abort})}}}),Rl=m("$ZodMAC",(e,t)=>{t.pattern??(t.pattern=Zu(t.delimiter)),A.init(e,t),e._zod.bag.format="mac"}),Ll=m("$ZodCIDRv4",(e,t)=>{t.pattern??(t.pattern=Cu),A.init(e,t)}),Ml=m("$ZodCIDRv6",(e,t)=>{t.pattern??(t.pattern=Ru),A.init(e,t),e._zod.check=(n)=>{let a=n.value.split("/");try{if(a.length!==2)throw Error();let[i,r]=a;if(!r)throw Error();let o=Number(r);if(`${o}`!==r)throw Error();if(o<0||o>128)throw Error();new URL(`http://[${i}]`)}catch{n.issues.push({code:"invalid_format",format:"cidrv6",input:n.value,inst:e,continue:!t.abort})}}});Fl=m("$ZodBase64",(e,t)=>{t.pattern??(t.pattern=Lu),A.init(e,t),e._zod.bag.contentEncoding="base64",e._zod.check=(n)=>{if(Tr(n.value))return;n.issues.push({code:"invalid_format",format:"base64",input:n.value,inst:e,continue:!t.abort})}});Kl=m("$ZodBase64URL",(e,t)=>{t.pattern??(t.pattern=Ir),A.init(e,t),e._zod.bag.contentEncoding="base64url",e._zod.check=(n)=>{if(Jl(n.value))return;n.issues.push({code:"invalid_format",format:"base64url",input:n.value,inst:e,continue:!t.abort})}}),Gl=m("$ZodE164",(e,t)=>{t.pattern??(t.pattern=Fu),A.init(e,t)});Bl=m("$ZodJWT",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{if(Wl(n.value,t.alg))return;n.issues.push({code:"invalid_format",format:"jwt",input:n.value,inst:e,continue:!t.abort})}}),Hl=m("$ZodCustomStringFormat",(e,t)=>{A.init(e,t),e._zod.check=(n)=>{if(t.fn(n.value))return;n.issues.push({code:"invalid_format",format:t.format,input:n.value,inst:e,continue:!t.abort})}}),Or=m("$ZodNumber",(e,t)=>{x.init(e,t),e._zod.pattern=e._zod.bag.pattern??xr,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=Number(n.value)}catch(o){}let i=n.value;if(typeof i==="number"&&!Number.isNaN(i)&&Number.isFinite(i))return n;let r=typeof i==="number"?Number.isNaN(i)?"NaN":!Number.isFinite(i)?"Infinity":void 0:void 0;return n.issues.push({expected:"number",code:"invalid_type",input:i,inst:e,...r?{received:r}:{}}),n}}),Xl=m("$ZodNumberFormat",(e,t)=>{rl.init(e,t),Or.init(e,t)}),Pr=m("$ZodBoolean",(e,t)=>{x.init(e,t),e._zod.pattern=Yu,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=Boolean(n.value)}catch(r){}let i=n.value;if(typeof i==="boolean")return n;return n.issues.push({expected:"boolean",code:"invalid_type",input:i,inst:e}),n}}),jr=m("$ZodBigInt",(e,t)=>{x.init(e,t),e._zod.pattern=Xu,e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=BigInt(n.value)}catch(i){}if(typeof n.value==="bigint")return n;return n.issues.push({expected:"bigint",code:"invalid_type",input:n.value,inst:e}),n}}),Vl=m("$ZodBigIntFormat",(e,t)=>{al.init(e,t),jr.init(e,t)}),Yl=m("$ZodSymbol",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i==="symbol")return n;return n.issues.push({expected:"symbol",code:"invalid_type",input:i,inst:e}),n}}),ql=m("$ZodUndefined",(e,t)=>{x.init(e,t),e._zod.pattern=Qu,e._zod.values=new Set([void 0]),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"undefined",code:"invalid_type",input:i,inst:e}),n}}),Ql=m("$ZodNull",(e,t)=>{x.init(e,t),e._zod.pattern=qu,e._zod.values=new Set([null]),e._zod.parse=(n,a)=>{let i=n.value;if(i===null)return n;return n.issues.push({expected:"null",code:"invalid_type",input:i,inst:e}),n}}),ed=m("$ZodAny",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),td=m("$ZodUnknown",(e,t)=>{x.init(e,t),e._zod.parse=(n)=>n}),id=m("$ZodNever",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{return n.issues.push({expected:"never",code:"invalid_type",input:n.value,inst:e}),n}}),nd=m("$ZodVoid",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(typeof i>"u")return n;return n.issues.push({expected:"void",code:"invalid_type",input:i,inst:e}),n}}),rd=m("$ZodDate",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(t.coerce)try{n.value=new Date(n.value)}catch(o){}let i=n.value,r=i instanceof Date;if(r&&!Number.isNaN(i.getTime()))return n;return n.issues.push({expected:"date",code:"invalid_type",input:i,...r?{received:"Invalid Date"}:{},inst:e}),n}});ad=m("$ZodArray",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:"array",code:"invalid_type",input:i,inst:e}),n;n.value=Array(i.length);let r=[];for(let o=0;o<i.length;o++){let s=i[o],l=t.element._zod.run({value:s,issues:[]},a);if(l instanceof Promise)r.push(l.then((d)=>us(d,n,o)));else us(l,n,o)}if(r.length)return Promise.all(r).then(()=>n);return n}});ud=m("$ZodObject",(e,t)=>{if(x.init(e,t),!Object.getOwnPropertyDescriptor(t,"shape")?.get){let o=t.shape;Object.defineProperty(t,"shape",{get:()=>{let s={...o};return Object.defineProperty(t,"shape",{value:s}),s}})}let n=jt(()=>od(t));E(e._zod,"propValues",()=>{let o=t.shape,s={};for(let l in o){let d=o[l]._zod;if(d.values){s[l]??(s[l]=new Set);for(let c of d.values)s[l].add(c)}}return s});let a=rt,i=t.catchall,r;e._zod.parse=(o,s)=>{r??(r=n.value);let l=o.value;if(!a(l))return o.issues.push({expected:"object",code:"invalid_type",input:l,inst:e}),o;o.value={};let d=[],c=r.shape;for(let p of r.keys){let v=c[p],f=v._zod.optin==="optional",y=v._zod.optout==="optional",_=v._zod.run({value:l[p],issues:[]},s);if(_ instanceof Promise)d.push(_.then((O)=>Ti(O,o,p,l,f,y)));else Ti(_,o,p,l,f,y)}if(!i)return d.length?Promise.all(d).then(()=>o):o;return sd(d,l,o,s,n.value,e)}}),ld=m("$ZodObjectJIT",(e,t)=>{ud.init(e,t);let n=e._zod.parse,a=jt(()=>od(t)),i=(p)=>{let v=new Er(["shape","payload","ctx"]),f=a.value,y=(L)=>{let S=Qn(L);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};v.write("const input = payload.value;");let _=Object.create(null),O=0;for(let L of f.keys)_[L]=`key_${O++}`;v.write("const newResult = {};");for(let L of f.keys){let S=_[L],Z=Qn(L),H=p[L],ge=H?._zod?.optin==="optional",Jn=H?._zod?.optout==="optional";if(v.write(`const ${S} = ${y(L)};`),ge&&Jn)v.write(`
101
101
  if (${S}.issues.length) {
102
102
  if (${Z} in input) {
103
103
  payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
@@ -115,7 +115,7 @@ Response without the submit_and_exit tool call will considered not completed and
115
115
  newResult[${Z}] = ${S}.value;
116
116
  }
117
117
 
118
- `);else if(!fe)v.write(`
118
+ `);else if(!ge)v.write(`
119
119
  const ${S}_present = ${Z} in input;
120
120
  if (${S}.issues.length) {
121
121
  payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
@@ -156,5 +156,5 @@ Response without the submit_and_exit tool call will considered not completed and
156
156
  newResult[${Z}] = ${S}.value;
157
157
  }
158
158
 
159
- `)}v.write("payload.value = newResult;"),v.write("return payload;");let j=v.compile();return(M,S)=>j(p,M,S)},r,o=Qe,s=!bt.jitless,l=s&&Js.value,d=t.catchall,c;e._zod.parse=(p,v)=>{c??(c=a.value);let f=p.value;if(!o(f))return p.issues.push({expected:"object",code:"invalid_type",input:f,inst:e}),p;if(s&&l&&v?.async===!1&&v.jitless!==!0){if(!r)r=i(t.shape);if(p=r(p,v),!d)return p;return Fl([],f,p,v,c,e)}return n(p,v)}});Ei=m("$ZodUnion",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.options.some((a)=>a._zod.optin==="optional")?"optional":void 0),E(e._zod,"optout",()=>t.options.some((a)=>a._zod.optout==="optional")?"optional":void 0),E(e._zod,"values",()=>{if(t.options.every((a)=>a._zod.values))return new Set(t.options.flatMap((a)=>Array.from(a._zod.values)));return}),E(e._zod,"pattern",()=>{if(t.options.every((a)=>a._zod.pattern)){let a=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${a.map((i)=>xi(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(a,i)=>{if(n)return n(a,i);let r=!1,o=[];for(let s of t.options){let l=s._zod.run({value:a.value,issues:[]},i);if(l instanceof Promise)o.push(l),r=!0;else{if(l.issues.length===0)return l;o.push(l)}}if(!r)return Go(o,a,e,i);return Promise.all(o).then((s)=>{return Go(s,a,e,i)})}});Gl=m("$ZodXor",(e,t)=>{Ei.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(a,i)=>{if(n)return n(a,i);let r=!1,o=[];for(let s of t.options){let l=s._zod.run({value:a.value,issues:[]},i);if(l instanceof Promise)o.push(l),r=!0;else o.push(l)}if(!r)return Wo(o,a,e,i);return Promise.all(o).then((s)=>{return Wo(s,a,e,i)})}}),Wl=m("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Ei.init(e,t);let n=e._zod.parse;E(e._zod,"propValues",()=>{let i={};for(let r of t.options){let o=r._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let[s,l]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let d of l)i[s].add(d)}}return i});let a=xt(()=>{let i=t.options,r=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let l of s){if(r.has(l))throw Error(`Duplicate discriminator value "${String(l)}"`);r.set(l,o)}}return r});e._zod.parse=(i,r)=>{let o=i.value;if(!Qe(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=a.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,r);if(t.unionFallback||r.direction==="backward")return n(i,r);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(a.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),Hl=m("$ZodIntersection",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value,r=t.left._zod.run({value:i,issues:[]},a),o=t.right._zod.run({value:i,issues:[]},a);if(r instanceof Promise||o instanceof Promise)return Promise.all([r,o]).then(([s,l])=>{return Ho(n,s,l)});return Ho(n,r,o)}});$r=m("$ZodTuple",(e,t)=>{x.init(e,t);let n=t.items;e._zod.parse=(a,i)=>{let r=a.value;if(!Array.isArray(r))return a.issues.push({input:r,inst:e,expected:"tuple",code:"invalid_type"}),a;a.value=[];let o=[],s=Bo(n,"optin"),l=Bo(n,"optout");if(!t.rest){if(r.length<s)return a.issues.push({code:"too_small",minimum:s,inclusive:!0,input:r,inst:e,origin:"array"}),a;if(r.length>n.length)a.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:r,inst:e,origin:"array"})}let d=Array(n.length);for(let c=0;c<n.length;c++){let p=n[c]._zod.run({value:r[c],issues:[]},i);if(p instanceof Promise)o.push(p.then((v)=>{d[c]=v}));else d[c]=p}if(t.rest){let c=n.length-1,p=r.slice(n.length);for(let v of p){c++;let f=t.rest._zod.run({value:v,issues:[]},i);if(f instanceof Promise)o.push(f.then((y)=>Xo(y,a,c)));else Xo(f,a,c)}}if(o.length)return Promise.all(o).then(()=>Vo(d,a,n,r,l));return Vo(d,a,n,r,l)}});Bl=m("$ZodRecord",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!Ae(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let r=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let d of o)if(typeof d==="string"||typeof d==="number"||typeof d==="symbol"){s.add(typeof d==="number"?d.toString():d);let c=t.keyType._zod.run({value:d,issues:[]},a);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((f)=>Q(f,a,J())),input:d,path:[d],inst:e});continue}let p=c.value,v=t.valueType._zod.run({value:i[d],issues:[]},a);if(v instanceof Promise)r.push(v.then((f)=>{if(f.issues.length)n.issues.push(...ie(d,f.issues));n.value[p]=f.value}));else{if(v.issues.length)n.issues.push(...ie(d,v.issues));n.value[p]=v.value}}let l;for(let d in i)if(!s.has(d))l=l??[],l.push(d);if(l&&l.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:l})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let l=t.keyType._zod.run({value:s,issues:[]},a);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&mr.test(s)&&l.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},a);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)l=c}if(l.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((c)=>Q(c,a,J())),input:s,path:[s],inst:e});continue}let d=t.valueType._zod.run({value:i[s],issues:[]},a);if(d instanceof Promise)r.push(d.then((c)=>{if(c.issues.length)n.issues.push(...ie(s,c.issues));n.value[l.value]=c.value}));else{if(d.issues.length)n.issues.push(...ie(s,d.issues));n.value[l.value]=d.value}}}if(r.length)return Promise.all(r).then(()=>n);return n}}),Xl=m("$ZodMap",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let r=[];n.value=new Map;for(let[o,s]of i){let l=t.keyType._zod.run({value:o,issues:[]},a),d=t.valueType._zod.run({value:s,issues:[]},a);if(l instanceof Promise||d instanceof Promise)r.push(Promise.all([l,d]).then(([c,p])=>{Yo(c,p,n,o,i,e,a)}));else Yo(l,d,n,o,i,e,a)}if(r.length)return Promise.all(r).then(()=>n);return n}});Vl=m("$ZodSet",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let r=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},a);if(s instanceof Promise)r.push(s.then((l)=>Qo(l,n)));else Qo(s,n)}if(r.length)return Promise.all(r).then(()=>n);return n}});Yl=m("$ZodEnum",(e,t)=>{x.init(e,t);let n=Qn(t.entries),a=new Set(n);e._zod.values=a,e._zod.pattern=new RegExp(`^(${n.filter((i)=>yi.has(typeof i)).map((i)=>typeof i==="string"?ge(i):i.toString()).join("|")})$`),e._zod.parse=(i,r)=>{let o=i.value;if(a.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),Ql=m("$ZodLiteral",(e,t)=>{if(x.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((a)=>typeof a==="string"?ge(a):a?ge(a.toString()):String(a)).join("|")})$`),e._zod.parse=(a,i)=>{let r=a.value;if(n.has(r))return a;return a.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),a}}),ql=m("$ZodFile",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),ed=m("$ZodTransform",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new It(e.constructor.name);let i=t.transform(n.value,n);if(a.async)return(i instanceof Promise?i:Promise.resolve(i)).then((r)=>{return n.value=r,n.fallback=!0,n});if(i instanceof Promise)throw new we;return n.value=i,n.fallback=!0,n}});_r=m("$ZodOptional",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.optout="optional",E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${xi(n.source)})?$`):void 0}),e._zod.parse=(n,a)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,r=t.innerType._zod.run(n,a);if(r instanceof Promise)return r.then((o)=>qo(o,i));return qo(r,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,a)}}),td=m("$ZodExactOptional",(e,t)=>{_r.init(e,t),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,a)=>{return t.innerType._zod.run(n,a)}}),id=m("$ZodNullable",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.innerType._zod.optin),E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${xi(n.source)}|null)$`):void 0}),E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,a)=>{if(n.value===null)return n;return t.innerType._zod.run(n,a)}}),nd=m("$ZodDefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>es(r,t));return es(i,t)}});rd=m("$ZodPrefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,a)}}),ad=m("$ZodNonOptional",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((a)=>a!==void 0)):void 0}),e._zod.parse=(n,a)=>{let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>ts(r,e));return ts(i,e)}});od=m("$ZodSuccess",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new It("ZodSuccess");let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>{return n.value=r.issues.length===0,n});return n.value=i.issues.length===0,n}}),sd=m("$ZodCatch",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>{if(n.value=r.value,r.issues.length)n.value=t.catchValue({...n,error:{issues:r.issues.map((o)=>Q(o,a,J()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((r)=>Q(r,a,J()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),ud=m("$ZodNaN",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),kr=m("$ZodPipe",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,a)=>{if(a.direction==="backward"){let r=t.out._zod.run(n,a);if(r instanceof Promise)return r.then((o)=>li(o,t.in,a));return li(r,t.in,a)}let i=t.in._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>li(r,t.out,a));return li(i,t.out,a)}});wr=m("$ZodCodec",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,a)=>{if((a.direction||"forward")==="forward"){let i=t.in._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>di(r,t,a));return di(i,t,a)}else{let i=t.out._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>di(r,t,a));return di(i,t,a)}}});ld=m("$ZodPreprocess",(e,t)=>{kr.init(e,t)}),dd=m("$ZodReadonly",(e,t)=>{x.init(e,t),E(e._zod,"propValues",()=>t.innerType._zod.propValues),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"optin",()=>t.innerType?._zod?.optin),E(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then(is);return is(i)}});cd=m("$ZodTemplateLiteral",(e,t)=>{x.init(e,t);let n=[];for(let a of t.parts)if(typeof a==="object"&&a!==null){if(!a._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...a._zod.traits].shift()}`);let i=a._zod.pattern instanceof RegExp?a._zod.pattern.source:a._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${a._zod.traits}`);let r=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(r,o))}else if(a===null||Gs.has(typeof a))n.push(ge(`${a}`));else throw Error(`Invalid template literal part: ${a}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(a,i)=>{if(typeof a.value!=="string")return a.issues.push({input:a.value,inst:e,expected:"string",code:"invalid_type"}),a;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(a.value))return a.issues.push({input:a.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),a;return a}}),md=m("$ZodFunction",(e,t)=>{return x.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...a){let i=e._def.input?Mn(e._def.input,a):a,r=Reflect.apply(n,this,i);if(e._def.output)return Mn(e._def.output,r);return r}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...a){let i=e._def.input?await Ln(e._def.input,a):a,r=await Reflect.apply(n,this,i);if(e._def.output)return await Ln(e._def.output,r);return r}},e._zod.parse=(n,a)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let a=e.constructor;if(Array.isArray(n[0]))return new a({type:"function",input:new $r({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new a({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),fd=m("$ZodPromise",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},a))}}),pd=m("$ZodLazy",(e,t)=>{x.init(e,t),E(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),E(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),E(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),E(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),E(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,a)=>{return e._zod.innerType._zod.run(n,a)}}),vd=m("$ZodCustom",(e,t)=>{R.init(e,t),x.init(e,t),e._zod.parse=(n,a)=>{return n},e._zod.check=(n)=>{let a=n.value,i=t.fn(a);if(i instanceof Promise)return i.then((r)=>ns(r,n,a,e));ns(i,n,a,e);return}});Sr={};he(Sr,{zhTW:()=>Ab,zhCN:()=>Ob,yo:()=>Zb,vi:()=>Tb,uz:()=>Eb,ur:()=>zb,uk:()=>yd,ua:()=>Ib,tr:()=>wb,th:()=>_b,ta:()=>bb,sv:()=>hb,sl:()=>vb,ru:()=>fb,ro:()=>cb,pt:()=>lb,ps:()=>ab,pl:()=>sb,ota:()=>nb,no:()=>tb,nl:()=>qy,ms:()=>Yy,mk:()=>Xy,lt:()=>Hy,ko:()=>Gy,km:()=>hd,kh:()=>Jy,ka:()=>Ly,ja:()=>Ry,it:()=>Zy,is:()=>Ay,id:()=>Oy,hy:()=>Ty,hu:()=>Ey,hr:()=>zy,he:()=>Iy,frCA:()=>wy,fr:()=>_y,fi:()=>by,fa:()=>hy,es:()=>vy,eo:()=>fy,en:()=>gd,el:()=>dy,de:()=>uy,da:()=>oy,cs:()=>ry,ca:()=>iy,bg:()=>ey,be:()=>Qh,az:()=>Vh,ar:()=>Bh});bd=Symbol("ZodOutput"),$d=Symbol("ZodInput");(us=globalThis).__zod_globalRegistry??(us.__zod_globalRegistry=xr());ne=globalThis.__zod_globalRegistry;Sd={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};s$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},Jn={string:uc,number:lc,boolean:dc,bigint:cc,symbol:mc,null:fc,undefined:pc,void:vc,never:gc,any:hc,unknown:yc,date:bc,enum:$c,literal:_c,nan:kc,template_literal:wc,file:Sc,success:Ic,custom:xc,function:zc,transform:Uc,map:Ec,set:Pc,array:Tc,object:jc,union:Qr,intersection:Oc,tuple:Nc,record:Ac,nullable:Dc,nonoptional:Zc,default:Cc,prefault:Rc,catch:Mc,pipe:Lc,readonly:Fc,promise:Jc,optional:qr,lazy:Kc};u$={},Hc={};he(Hc,{xor:()=>nf,xid:()=>Im,void:()=>Vm,uuidv7:()=>hm,uuidv6:()=>gm,uuidv4:()=>vm,uuid:()=>pm,url:()=>ym,unknown:()=>Ze,union:()=>dn,undefined:()=>Bm,ulid:()=>Sm,uint64:()=>Wm,uint32:()=>Jm,tuple:()=>ka,transform:()=>mn,templateLiteral:()=>hf,symbol:()=>Hm,superRefine:()=>Va,success:()=>ff,stringbool:()=>Sf,stringFormat:()=>Dm,string:()=>_t,strictObject:()=>ef,set:()=>uf,refine:()=>Xa,record:()=>wa,readonly:()=>Ja,promise:()=>yf,preprocess:()=>xf,prefault:()=>Aa,pipe:()=>wi,partialRecord:()=>af,optional:()=>wt,object:()=>qm,number:()=>oa,nullish:()=>mf,nullable:()=>St,null:()=>ca,nonoptional:()=>Da,never:()=>un,nativeEnum:()=>lf,nanoid:()=>_m,nan:()=>pf,meta:()=>kf,map:()=>sf,mac:()=>Um,looseRecord:()=>of,looseObject:()=>tf,literal:()=>df,lazy:()=>Wa,ksuid:()=>xm,keyof:()=>Qm,jwt:()=>Am,json:()=>If,ipv6:()=>Em,ipv4:()=>zm,invertCodec:()=>gf,intersection:()=>$a,int64:()=>Gm,int32:()=>Fm,int:()=>ki,instanceof:()=>wf,httpUrl:()=>bm,hostname:()=>Zm,hex:()=>Cm,hash:()=>Rm,guid:()=>fm,function:()=>Si,float64:()=>Lm,float32:()=>Mm,file:()=>cf,exactOptional:()=>Pa,enum:()=>cn,emoji:()=>$m,email:()=>mm,e164:()=>Nm,discriminatedUnion:()=>rf,describe:()=>_f,date:()=>Ym,custom:()=>$f,cuid2:()=>wm,cuid:()=>km,codec:()=>vf,cidrv6:()=>Tm,cidrv4:()=>Pm,check:()=>bf,catch:()=>Ra,boolean:()=>sa,bigint:()=>Km,base64url:()=>Om,base64:()=>jm,array:()=>Gt,any:()=>Xm,_function:()=>Si,_default:()=>Oa,_ZodString:()=>Ji,ZodXor:()=>ha,ZodXID:()=>Vi,ZodVoid:()=>va,ZodUnknown:()=>fa,ZodUnion:()=>Ht,ZodUndefined:()=>la,ZodUUID:()=>ve,ZodURL:()=>Lt,ZodULID:()=>Xi,ZodType:()=>z,ZodTuple:()=>_a,ZodTransform:()=>Ua,ZodTemplateLiteral:()=>Ka,ZodSymbol:()=>ua,ZodSuccess:()=>Za,ZodStringFormat:()=>D,ZodString:()=>Mt,ZodSet:()=>Ia,ZodRecord:()=>rt,ZodReadonly:()=>Fa,ZodPromise:()=>Ha,ZodPreprocess:()=>La,ZodPrefault:()=>Na,ZodPipe:()=>Bt,ZodOptional:()=>fn,ZodObject:()=>Wt,ZodNumberFormat:()=>Me,ZodNumber:()=>Ft,ZodNullable:()=>Ta,ZodNull:()=>da,ZodNonOptional:()=>pn,ZodNever:()=>pa,ZodNanoID:()=>Wi,ZodNaN:()=>Ma,ZodMap:()=>Sa,ZodMAC:()=>aa,ZodLiteral:()=>xa,ZodLazy:()=>Ga,ZodKSUID:()=>Yi,ZodJWT:()=>on,ZodIntersection:()=>ba,ZodIPv6:()=>qi,ZodIPv4:()=>Qi,ZodGUID:()=>kt,ZodFunction:()=>Ba,ZodFile:()=>za,ZodExactOptional:()=>Ea,ZodEnum:()=>at,ZodEmoji:()=>Gi,ZodEmail:()=>Ki,ZodE164:()=>an,ZodDiscriminatedUnion:()=>ya,ZodDefault:()=>ja,ZodDate:()=>ln,ZodCustomStringFormat:()=>st,ZodCustom:()=>Vt,ZodCodec:()=>Xt,ZodCatch:()=>Ca,ZodCUID2:()=>Bi,ZodCUID:()=>Hi,ZodCIDRv6:()=>tn,ZodCIDRv4:()=>en,ZodBoolean:()=>Jt,ZodBigIntFormat:()=>sn,ZodBigInt:()=>Kt,ZodBase64URL:()=>rn,ZodBase64:()=>nn,ZodArray:()=>ga,ZodAny:()=>ma});Bc={};he(Bc,{uppercase:()=>Oi,trim:()=>Ri,toUpperCase:()=>Li,toLowerCase:()=>Mi,startsWith:()=>Ai,slugify:()=>Fi,size:()=>At,regex:()=>Ti,property:()=>Yr,positive:()=>Hr,overwrite:()=>be,normalize:()=>Ci,nonpositive:()=>Xr,nonnegative:()=>Vr,negative:()=>Br,multipleOf:()=>et,minSize:()=>ze,minLength:()=>De,mime:()=>Zi,maxSize:()=>ot,maxLength:()=>Dt,lte:()=>re,lt:()=>Ie,lowercase:()=>ji,length:()=>Zt,includes:()=>Ni,gte:()=>Y,gt:()=>xe,endsWith:()=>Di});ea={};he(ea,{time:()=>Yc,duration:()=>Qc,datetime:()=>Xc,date:()=>Vc,ZodISOTime:()=>na,ZodISODuration:()=>ra,ZodISODateTime:()=>ta,ZodISODate:()=>ia});ta=m("ZodISODateTime",(e,t)=>{pl.init(e,t),D.init(e,t)});ia=m("ZodISODate",(e,t)=>{vl.init(e,t),D.init(e,t)});na=m("ZodISOTime",(e,t)=>{gl.init(e,t),D.init(e,t)});ra=m("ZodISODuration",(e,t)=>{hl.init(e,t),D.init(e,t)});l$=m("ZodError",qc),ee=m("ZodError",qc,{Parent:Error}),em=zt(ee),tm=Ut(ee),im=Et(ee),nm=Pt(ee),rm=nr(ee),am=rr(ee),om=ar(ee),sm=or(ee),um=sr(ee),lm=ur(ee),dm=lr(ee),cm=dr(ee),ls=new WeakMap;z=m("ZodType",(e,t)=>{return x.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:$t(e,"input"),output:$t(e,"output")}}),e.toJSONSchema=sc(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,a)=>em(e,n,a,{callee:e.parse}),e.safeParse=(n,a)=>im(e,n,a),e.parseAsync=async(n,a)=>tm(e,n,a,{callee:e.parseAsync}),e.safeParseAsync=async(n,a)=>nm(e,n,a),e.spa=e.safeParseAsync,e.encode=(n,a)=>rm(e,n,a),e.decode=(n,a)=>am(e,n,a),e.encodeAsync=async(n,a)=>om(e,n,a),e.decodeAsync=async(n,a)=>sm(e,n,a),e.safeEncode=(n,a)=>um(e,n,a),e.safeDecode=(n,a)=>lm(e,n,a),e.safeEncodeAsync=async(n,a)=>dm(e,n,a),e.safeDecodeAsync=async(n,a)=>cm(e,n,a),Rt(e,"ZodType",{check(...n){let a=this.def;return this.clone(U.mergeDefs(a,{checks:[...a.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,a){return ae(this,n,a)},brand(){return this},register(n,a){return n.add(this,a),this},refine(n,a){return this.check(Xa(n,a))},superRefine(n,a){return this.check(Va(n,a))},overwrite(n){return this.check(be(n))},optional(){return wt(this)},exactOptional(){return Pa(this)},nullable(){return St(this)},nullish(){return wt(St(this))},nonoptional(n){return Da(this,n)},array(){return Gt(this)},or(n){return dn([this,n])},and(n){return $a(this,n)},transform(n){return wi(this,mn(n))},default(n){return Oa(this,n)},prefault(n){return Aa(this,n)},catch(n){return Ra(this,n)},pipe(n){return wi(this,n)},readonly(){return Ja(this)},describe(n){let a=this.clone();return ne.add(a,{description:n}),a},meta(...n){if(n.length===0)return ne.get(this);let a=this.clone();return ne.add(a,n[0]),a},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ne.get(e)?.description},configurable:!0}),e}),Ji=m("_ZodString",(e,t)=>{Nt.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>uc(e,a,i,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Rt(e,"_ZodString",{regex(...a){return this.check(Ti(...a))},includes(...a){return this.check(Ni(...a))},startsWith(...a){return this.check(Ai(...a))},endsWith(...a){return this.check(Di(...a))},min(...a){return this.check(De(...a))},max(...a){return this.check(Dt(...a))},length(...a){return this.check(Zt(...a))},nonempty(...a){return this.check(De(1,...a))},lowercase(a){return this.check(ji(a))},uppercase(a){return this.check(Oi(a))},trim(){return this.check(Ri())},normalize(...a){return this.check(Ci(...a))},toLowerCase(){return this.check(Mi())},toUpperCase(){return this.check(Li())},slugify(){return this.check(Fi())}})}),Mt=m("ZodString",(e,t)=>{Nt.init(e,t),Ji.init(e,t),e.email=(n)=>e.check(zr(Ki,n)),e.url=(n)=>e.check(Pi(Lt,n)),e.jwt=(n)=>e.check(Wr(on,n)),e.emoji=(n)=>e.check(jr(Gi,n)),e.guid=(n)=>e.check(_i(kt,n)),e.uuid=(n)=>e.check(Ur(ve,n)),e.uuidv4=(n)=>e.check(Er(ve,n)),e.uuidv6=(n)=>e.check(Pr(ve,n)),e.uuidv7=(n)=>e.check(Tr(ve,n)),e.nanoid=(n)=>e.check(Or(Wi,n)),e.guid=(n)=>e.check(_i(kt,n)),e.cuid=(n)=>e.check(Nr(Hi,n)),e.cuid2=(n)=>e.check(Ar(Bi,n)),e.ulid=(n)=>e.check(Dr(Xi,n)),e.base64=(n)=>e.check(Jr(nn,n)),e.base64url=(n)=>e.check(Kr(rn,n)),e.xid=(n)=>e.check(Zr(Vi,n)),e.ksuid=(n)=>e.check(Cr(Yi,n)),e.ipv4=(n)=>e.check(Rr(Qi,n)),e.ipv6=(n)=>e.check(Mr(qi,n)),e.cidrv4=(n)=>e.check(Lr(en,n)),e.cidrv6=(n)=>e.check(Fr(tn,n)),e.e164=(n)=>e.check(Gr(an,n)),e.datetime=(n)=>e.check(Xc(n)),e.date=(n)=>e.check(Vc(n)),e.time=(n)=>e.check(Yc(n)),e.duration=(n)=>e.check(Qc(n))});D=m("ZodStringFormat",(e,t)=>{A.init(e,t),Ji.init(e,t)}),Ki=m("ZodEmail",(e,t)=>{al.init(e,t),D.init(e,t)});kt=m("ZodGUID",(e,t)=>{nl.init(e,t),D.init(e,t)});ve=m("ZodUUID",(e,t)=>{rl.init(e,t),D.init(e,t)});Lt=m("ZodURL",(e,t)=>{ol.init(e,t),D.init(e,t)});Gi=m("ZodEmoji",(e,t)=>{sl.init(e,t),D.init(e,t)});Wi=m("ZodNanoID",(e,t)=>{ul.init(e,t),D.init(e,t)});Hi=m("ZodCUID",(e,t)=>{ll.init(e,t),D.init(e,t)});Bi=m("ZodCUID2",(e,t)=>{dl.init(e,t),D.init(e,t)});Xi=m("ZodULID",(e,t)=>{cl.init(e,t),D.init(e,t)});Vi=m("ZodXID",(e,t)=>{ml.init(e,t),D.init(e,t)});Yi=m("ZodKSUID",(e,t)=>{fl.init(e,t),D.init(e,t)});Qi=m("ZodIPv4",(e,t)=>{yl.init(e,t),D.init(e,t)});aa=m("ZodMAC",(e,t)=>{$l.init(e,t),D.init(e,t)});qi=m("ZodIPv6",(e,t)=>{bl.init(e,t),D.init(e,t)});en=m("ZodCIDRv4",(e,t)=>{_l.init(e,t),D.init(e,t)});tn=m("ZodCIDRv6",(e,t)=>{kl.init(e,t),D.init(e,t)});nn=m("ZodBase64",(e,t)=>{wl.init(e,t),D.init(e,t)});rn=m("ZodBase64URL",(e,t)=>{Il.init(e,t),D.init(e,t)});an=m("ZodE164",(e,t)=>{xl.init(e,t),D.init(e,t)});on=m("ZodJWT",(e,t)=>{Ul.init(e,t),D.init(e,t)});st=m("ZodCustomStringFormat",(e,t)=>{El.init(e,t),D.init(e,t)});Ft=m("ZodNumber",(e,t)=>{hr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>lc(e,a,i,r),Rt(e,"ZodNumber",{gt(a,i){return this.check(xe(a,i))},gte(a,i){return this.check(Y(a,i))},min(a,i){return this.check(Y(a,i))},lt(a,i){return this.check(Ie(a,i))},lte(a,i){return this.check(re(a,i))},max(a,i){return this.check(re(a,i))},int(a){return this.check(ki(a))},safe(a){return this.check(ki(a))},positive(a){return this.check(xe(0,a))},nonnegative(a){return this.check(Y(0,a))},negative(a){return this.check(Ie(0,a))},nonpositive(a){return this.check(re(0,a))},multipleOf(a,i){return this.check(et(a,i))},step(a,i){return this.check(et(a,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});Me=m("ZodNumberFormat",(e,t)=>{Pl.init(e,t),Ft.init(e,t)});Jt=m("ZodBoolean",(e,t)=>{yr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>dc(e,n,a,i)});Kt=m("ZodBigInt",(e,t)=>{br.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>cc(e,a,i,r),e.gte=(a,i)=>e.check(Y(a,i)),e.min=(a,i)=>e.check(Y(a,i)),e.gt=(a,i)=>e.check(xe(a,i)),e.gte=(a,i)=>e.check(Y(a,i)),e.min=(a,i)=>e.check(Y(a,i)),e.lt=(a,i)=>e.check(Ie(a,i)),e.lte=(a,i)=>e.check(re(a,i)),e.max=(a,i)=>e.check(re(a,i)),e.positive=(a)=>e.check(xe(BigInt(0),a)),e.negative=(a)=>e.check(Ie(BigInt(0),a)),e.nonpositive=(a)=>e.check(re(BigInt(0),a)),e.nonnegative=(a)=>e.check(Y(BigInt(0),a)),e.multipleOf=(a,i)=>e.check(et(a,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});sn=m("ZodBigIntFormat",(e,t)=>{Tl.init(e,t),Kt.init(e,t)});ua=m("ZodSymbol",(e,t)=>{jl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>mc(e,n,a,i)});la=m("ZodUndefined",(e,t)=>{Ol.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>pc(e,n,a,i)});da=m("ZodNull",(e,t)=>{Nl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>fc(e,n,a,i)});ma=m("ZodAny",(e,t)=>{Al.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>hc(e,n,a,i)});fa=m("ZodUnknown",(e,t)=>{Dl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>yc(e,n,a,i)});pa=m("ZodNever",(e,t)=>{Zl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>gc(e,n,a,i)});va=m("ZodVoid",(e,t)=>{Cl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>vc(e,n,a,i)});ln=m("ZodDate",(e,t)=>{Rl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>bc(e,a,i,r),e.min=(a,i)=>e.check(Y(a,i)),e.max=(a,i)=>e.check(re(a,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});ga=m("ZodArray",(e,t)=>{Ml.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Tc(e,n,a,i),e.element=t.element,Rt(e,"ZodArray",{min(n,a){return this.check(De(n,a))},nonempty(n){return this.check(De(1,n))},max(n,a){return this.check(Dt(n,a))},length(n,a){return this.check(Zt(n,a))},unwrap(){return this.element}})});Wt=m("ZodObject",(e,t)=>{Kl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>jc(e,n,a,i),U.defineLazy(e,"shape",()=>{return t.shape}),Rt(e,"ZodObject",{keyof(){return cn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:Ze()})},loose(){return this.clone({...this._zod.def,catchall:Ze()})},strict(){return this.clone({...this._zod.def,catchall:un()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return U.extend(this,n)},safeExtend(n){return U.safeExtend(this,n)},merge(n){return U.merge(this,n)},pick(n){return U.pick(this,n)},omit(n){return U.omit(this,n)},partial(...n){return U.partial(fn,this,n[0])},required(...n){return U.required(pn,this,n[0])}})});Ht=m("ZodUnion",(e,t)=>{Ei.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Qr(e,n,a,i),e.options=t.options});ha=m("ZodXor",(e,t)=>{Ht.init(e,t),Gl.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Qr(e,n,a,i),e.options=t.options});ya=m("ZodDiscriminatedUnion",(e,t)=>{Ht.init(e,t),Wl.init(e,t)});ba=m("ZodIntersection",(e,t)=>{Hl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Oc(e,n,a,i)});_a=m("ZodTuple",(e,t)=>{$r.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Nc(e,n,a,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});rt=m("ZodRecord",(e,t)=>{Bl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Ac(e,n,a,i),e.keyType=t.keyType,e.valueType=t.valueType});Sa=m("ZodMap",(e,t)=>{Xl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Ec(e,n,a,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(ze(...n)),e.nonempty=(n)=>e.check(ze(1,n)),e.max=(...n)=>e.check(ot(...n)),e.size=(...n)=>e.check(At(...n))});Ia=m("ZodSet",(e,t)=>{Vl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Pc(e,n,a,i),e.min=(...n)=>e.check(ze(...n)),e.nonempty=(n)=>e.check(ze(1,n)),e.max=(...n)=>e.check(ot(...n)),e.size=(...n)=>e.check(At(...n))});at=m("ZodEnum",(e,t)=>{Yl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>$c(e,a,i,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(a,i)=>{let r={};for(let o of a)if(n.has(o))r[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new at({...t,checks:[],...U.normalizeParams(i),entries:r})},e.exclude=(a,i)=>{let r={...t.entries};for(let o of a)if(n.has(o))delete r[o];else throw Error(`Key ${o} not found in enum`);return new at({...t,checks:[],...U.normalizeParams(i),entries:r})}});xa=m("ZodLiteral",(e,t)=>{Ql.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>_c(e,n,a,i),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});za=m("ZodFile",(e,t)=>{ql.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Sc(e,n,a,i),e.min=(n,a)=>e.check(ze(n,a)),e.max=(n,a)=>e.check(ot(n,a)),e.mime=(n,a)=>e.check(Zi(Array.isArray(n)?n:[n],a))});Ua=m("ZodTransform",(e,t)=>{ed.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Uc(e,n,a,i),e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new It(e.constructor.name);n.addIssue=(r)=>{if(typeof r==="string")n.issues.push(U.issue(r,n.value,t));else{let o=r;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(U.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((r)=>{return n.value=r,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});fn=m("ZodOptional",(e,t)=>{_r.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>qr(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ea=m("ZodExactOptional",(e,t)=>{td.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>qr(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ta=m("ZodNullable",(e,t)=>{id.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Dc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});ja=m("ZodDefault",(e,t)=>{nd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Cc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});Na=m("ZodPrefault",(e,t)=>{rd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Rc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});pn=m("ZodNonOptional",(e,t)=>{ad.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Zc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Za=m("ZodSuccess",(e,t)=>{od.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Ic(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ca=m("ZodCatch",(e,t)=>{sd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Mc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});Ma=m("ZodNaN",(e,t)=>{ud.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>kc(e,n,a,i)});Bt=m("ZodPipe",(e,t)=>{kr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Lc(e,n,a,i),e.in=t.in,e.out=t.out});Xt=m("ZodCodec",(e,t)=>{Bt.init(e,t),wr.init(e,t)});La=m("ZodPreprocess",(e,t)=>{Bt.init(e,t),ld.init(e,t)}),Fa=m("ZodReadonly",(e,t)=>{dd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Fc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ka=m("ZodTemplateLiteral",(e,t)=>{cd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>wc(e,n,a,i)});Ga=m("ZodLazy",(e,t)=>{pd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Kc(e,n,a,i),e.unwrap=()=>e._zod.def.getter()});Ha=m("ZodPromise",(e,t)=>{fd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Jc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ba=m("ZodFunction",(e,t)=>{md.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>zc(e,n,a,i)});Vt=m("ZodCustom",(e,t)=>{vd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>xc(e,n,a,i)});_f=rc,kf=ac;d$={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(Kn||(Kn={}));b={...Hc,...Bc,iso:ea},f$=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);Uf={};he(Uf,{string:()=>h$,number:()=>y$,date:()=>_$,boolean:()=>b$,bigint:()=>$$});J(gd());Ya=u,Ef=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),Pf=u.object({models:u.array(Ef).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),Tf=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),jf=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),Of=u.object({models:u.array(Tf).optional(),customModels:u.array(jf).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),Nf=u.object({id:u.string()}),Af=u.object({models:u.array(Nf).optional()}),Df=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),Zf=u.object({models:u.array(Df).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),Cf=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),Rf=u.object({models:u.array(Cf).optional(),baseUrl:u.string().optional()}),Mf=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),Lf=u.object({models:u.array(Mf).optional(),baseUrl:u.string().optional()}),k$=u.object({OpenAiCompatible:Pf.optional(),AwsBedrock:Of.optional(),Cline:Af.optional(),Vertex:Zf.optional(),LiteLLM:Rf.optional(),Anthropic:Lf.optional()}),Ff=u.object({id:u.string()}),Jf=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),Gn=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),fi=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),Kf=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:fi.optional(),r2AccessSettings:fi.optional(),azureAccessSettings:fi.optional()}),Gf=u.object({promptUploading:Kf.optional()}),w$=u.object({version:u.string(),providerSettings:k$.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(Ff).optional(),remoteMCPServers:u.array(Jf).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:Gf.optional(),globalRules:u.array(Gn).optional(),globalWorkflows:u.array(Gn).optional()}),S$=u.record(u.string(),u.string()),Wf=u.enum(["default","openai-responses","r1"]),I$={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},Hf=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),Bf=u.enum(["active","preview","deprecated","legacy"]),Xf=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),Vf=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),Qa=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),capabilities:u.array(Hf).optional(),apiFormat:Wf.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:Xf.optional(),thinkingConfig:Vf.optional(),status:Bf.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional()}),Yf=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),Qf=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),qf=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),x$=u.object({text:u.string(),usage:qf,messages:u.array(u.custom()),toolCalls:u.array(Yf),iterations:u.number(),finishReason:Qf,model:u.object({id:u.string(),provider:u.string(),info:Qa.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),ep=u.enum(["low","medium","high","xhigh"]),z$=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),Qa).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:ep.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),tp=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),ip=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),np=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),U$=u.object({actor:ip,context:np,payload:u.record(u.string(),u.unknown()).optional()}),E$=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),P$=u.object({adapter:u.string(),botUserName:u.string().optional(),event:tp,payload:u.record(u.string(),u.unknown()),ts:u.string()}),rp=[];j$=["hooks","tools","commands","rules","messageBuilders","providers","automationEvents"],O$=new Set(j$);Z$=[".js",".ts"],up=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),Ce=u.record(u.string(),u.string()),C$=u.object({toolName:u.string(),parameters:Ce}),R$=u.object({toolName:u.string(),parameters:Ce,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),M$=u.object({prompt:u.string(),attachments:u.array(u.string())}),L$=u.object({taskMetadata:Ce}),F$=u.object({taskMetadata:Ce,previousState:Ce}),J$=u.object({taskMetadata:Ce}),K$=u.object({taskMetadata:Ce}),G$=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),lp=u.object({clineVersion:u.string(),hookName:up,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:C$.optional(),postToolUse:R$.optional(),userPromptSubmit:M$.optional(),taskStart:L$.optional(),taskResume:F$.optional(),taskCancel:J$.optional(),taskComplete:K$.optional(),preCompact:G$.optional()}).passthrough();cp=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],V$=new Set(cp);yt={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};p_={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};g_={debug:()=>{},log:()=>{},error:()=>{}};Te=class Te extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};vs=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,gs=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;b_=/^[[{\w-]$/;I_={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},x_={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
160
- `,r:"\r",t:"\t"};E_=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;T_=[(e)=>JSON.parse(e),(e)=>JSON.parse(z_(e)),P_];Q_=Ya.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth"]),q_=Ya.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),ek=Ya.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);Xn={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};Pk=["running","completed","failed","cancelled"],no=["rules","skills","workflows","plugins"],zp=no,Tk=new Set(no);Ep=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),Pp=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),Ep)});Tp=["current_state","boundary_analysis","interface_proposal"],le=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),Ye=u.enum(["pending","in_progress","blocked","completed"]),jp=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),vn=u.enum(["draft","in_review","finalized"]),Rk=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),Mk=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});Lk=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),Fk=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:C(u.string().min(1)).describe("Optional shutdown reason")}),Jk=u.object({}),Kk={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},Gk={create:["status","taskId","summary","reason"]},Wk=u.object({action:u.enum(["create","list","claim","complete","block"]),title:C(u.string().min(1)).describe("Task title"),description:C(u.string().min(1)).describe("Task details"),dependsOn:C(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:C(u.string().min(1)).describe("Optional assignee"),status:C(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:C(u.string()).describe("Task ID"),summary:C(u.string().min(1)).describe("Completion summary"),reason:C(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of Kk[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),Hk=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:C(u.string()).describe("Optional shared task list ID"),runMode:C(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:C(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),Bk=u.object({status:C(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:C(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:C(u.boolean()).describe("Include completed/failed runs (default true)")}),Xk=u.object({runId:u.string().min(1).describe("Run ID"),reason:C(u.string().min(1)).describe("Optional cancellation reason")}),Vk=u.object({runId:C(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),Yk=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:C(u.string().min(1)).describe("Optional task ID context")}),Qk=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:C(u.string().min(1)).describe("Optional task ID context")}),qk=u.object({unreadOnly:C(u.boolean()).describe("Only unread messages for read action (default true)")}),ew=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:C(u.string().min(1)).describe("Optional task ID context"),evidence:C(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:C(u.string().min(1)).describe("Planned next step")}),tw=u.object({}),iw=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default(Tp).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),nw=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:C(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),rw=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),aw=u.object({outcomeId:u.string().describe("Outcome ID")}),ow=u.object({}),sw=u.object({teamId:u.string(),teamName:u.string(),members:u.array(Rk),taskCounts:u.record(Ye,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(vn,u.number())}),Op=u.object({id:u.string(),title:u.string(),description:u.string(),status:Ye,createdAt:le,updatedAt:le,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),uw=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:Ye,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(Op)}),u.object({action:u.literal("claim"),taskId:u.string(),status:Ye,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:Ye}),u.object({action:u.literal("block"),taskId:u.string(),status:Ye})]),lw=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),Np=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),dw=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:jp,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:le.optional(),continueConversation:u.boolean().optional(),startedAt:le,endedAt:le.optional(),leaseOwner:u.string().optional(),heartbeatAt:le.optional(),lastProgressAt:le.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:Np.optional()}),cw=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:le,readAt:le.optional()}),mw=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:vn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:le,finalizedAt:le.optional()}),fw=u.object({outcomeId:u.string(),status:vn,requiredSections:u.array(u.string())}),pw=u.object({agentId:u.string(),status:u.string()}),vw=u.object({runId:u.string(),status:jp}),gw=u.object({id:u.string(),toAgentId:u.string()}),hw=u.object({delivered:u.number()}),yw=u.object({id:u.string()}),bw=u.object({status:u.string()}),$w=u.object({fragmentId:u.string(),status:u.string()}),_w=u.object({outcomeId:u.string(),status:vn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(Ap||={});Dp=["cline","oca","openai-codex"];Cp=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];Tw=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accessToken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userInfo"]),jw=["id","balance","cost","secret"];Nw=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];Dw=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function Fe(e){let t=(a)=>{if(!a)return;if(typeof a==="string")try{return t(JSON.parse(a))}catch{return a.trim()||void 0}if(typeof a!=="object")return;let i=a;if(typeof i.error==="string"&&i.error.trim())return i.error;if(i.error&&typeof i.error==="object"&&typeof i.error.message==="string"&&i.error.message.trim())return i.error.message;if(typeof i.detail==="string"&&i.detail.trim())return i.detail;if(Array.isArray(i.errors))for(let r of i.errors){let o=t(r);if(o)return o}if("responseBody"in i&&i.responseBody!==a){let r=t(i.responseBody);if(r)return r}if("cause"in i&&i.cause!==a){let r=t(i.cause);if(r)return r}if(typeof i.message==="string"&&i.message.trim())return i.message;return},n=t(e);if(n)return n;return String(e)}function hn(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function Ee(){return{cache_control:{type:"ephemeral"}}}function X(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function $e(e){let t=typeof e.family==="string"?e.family.trim():"";if(t)return t.toLowerCase().includes("claude");return Ww(e.modelId)}function Ww(e){if(!e)return!1;let t=e.toLowerCase(),n=t.includes("anthropic"),a=t.includes("claude"),i=t.includes("qwen");return n||a||i}function Jp(e,t){let n={openaiCompatible:Ee(),[e]:Ee()},a=hn(e);if(a!==e)n[a]=Ee();if(t)n.anthropic=Ee();return n}function Kp(e,t,n){if(!e)return;let a=e.content;if(typeof a==="string"){e.content=[{type:"text",text:a,providerOptions:Jp(t,n)}];return}if(!Array.isArray(a))return;for(let i=a.length-1;i>=0;i--){let r=a[i];if(r&&typeof r==="object"&&r.type==="text"){a[i]={...r,providerOptions:Jp(t,n)};return}}}function Yt(e,t){return $e({modelId:e.modelId,family:X(t)})&&Yw(t.provider)==="anthropic-automatic"}function Hw(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function Bw(e,t){let n=t?.toLowerCase()??"",a=e?.toLowerCase()??"";if(n.includes("opus")||a.includes("opus"))return"opus";if(n.includes("sonnet")||a.includes("sonnet"))return"sonnet";if(n.includes("haiku")||a.includes("haiku"))return"haiku";return}function Xw(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],r=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!r||!o)return;let s=Number.parseInt(r,10),l=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(l))return;return{major:s,minor:l}}function Vw(e){let t=Bw(e.modelId,e.family),n=Xw(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function lt(e,t){let n=X(t);if(!$e({modelId:e.modelId,family:n})||!Hw(t))return{kind:"none"};return Vw({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function Yw(e){let t=e.metadata?.promptCacheStrategy;return t==="anthropic-automatic"?t:void 0}function Gp(e,t){let n=lt(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:ro({modelId:e.modelId,family:X(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...Yt(e,t)?Ee():{}}}function ro(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!$e({modelId:e.modelId,family:e.family}))return;if(!e.effort)return ut;if(typeof e.maxTokens!=="number")return ut;if(e.maxTokens<=ut)return ut;let t=Gw[e.effort];if(!t)return ut;let n=Math.min(e.maxTokens-1,Kw);return Math.max(ut,Math.floor(n*t))}function Wp(e,t){let n=lt(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let a=ro({modelId:e.modelId,family:X(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof a==="number"&&a>=0)i.max_tokens=a;return Object.keys(i).length>0?i:void 0}function Hp(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=lt(e,t);if(n.kind==="none"&&$e({modelId:e.modelId,family:X(t)}))return;let a=n.kind==="anthropic-manual"?ro({modelId:e.modelId,family:X(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,i={...e.reasoning?.enabled===!0?{enabled:!0}:e.reasoning?.enabled===!1?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof a==="number"&&a>=0)i.max_tokens=a;return Object.keys(i).length>0?i:void 0}var ut=1024,Kw=128000,Gw;var yn=V(()=>{Gw={low:0.2,medium:0.5,high:0.8}});function bn(e,t){let n=X(t)?.toLowerCase()??"",a=e.modelId.toLowerCase();return n.includes("glm")||a.includes("glm")}function ao(e){return e==="zai"||e==="zai-coding-plan"}function Bp(e,t){return ao(e.providerId)&&e.reasoning?.enabled!==void 0&&!bn(e,t)||bn(e,t)&&!ao(e.providerId)}function Qw(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function qw(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function Xp(e,t,n){if(ao(e.providerId)){if(!bn(e,t))return;let i=Qw(e);return i?{openaiCompatible:i,[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}:void 0}if(!bn(e,t))return;let a=qw(e);if(!a)return;return{openaiCompatible:a,[e.providerId]:a,...n!==e.providerId?{[n]:a}:{}}}var Vp=V(()=>{yn()});function iS(e){let t={};for(let n of e){if(!n)continue;for(let[a,i]of Object.entries(n))t[a]={...t[a]??{},...i}}return t}function oo(e){let{providerId:t,providerOptionsKey:n,bucketOptions:a}=e,i=n!==t&&n!=="anthropic";return{[t]:a,...i?{[n]:a}:{}}}function nS(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";default:return"openai-compatible"}}function Yp(e){let t={thinking:{type:e.thinkingType}};return{...oo({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function rS(e){return e.toLowerCase().includes("moonshotai/kimi-")}function Qp(e){return X(e)?.trim().toLowerCase()==="kimi-k2.6"}function aS(e){return X(e)?.trim().toLowerCase().includes("deepseek")===!0}function oS(e,t){return qp.some((n)=>n.matches(e,t))}function sS(e,t){let n=qp.find((i)=>i.matches(e,t));if(!n)return;let a=e.reasoning?.enabled;if(a===!0)return"enabled";if(a===!1)return"disabled";return n.defaultWhenUnset}function uS(e,t){if(Bp(e,t)||oS(e,t))return{};if(e.reasoning?.enabled!==!0)return{};let a=$e({modelId:e.modelId,family:X(t)})?lt(e,t):void 0;if(a&&a.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function lS(e){let t=e.reasoning?.effort;if(!t||e.reasoning?.enabled===!1)return{};if(!(!e.isAnthropicCompatibleModelId||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.isAnthropicCompatibleModelId?{}:{reasoningSummary:"auto"}}}function ev(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function dS(e){let{request:t,context:n,isAnthropicCompatibleModelId:a,target:i}=e,r=a?lt(t,n):void 0,o=Wp(t,n),s=Yt(t,n)?Ee():{};return{...i==="openai-compatible"?{strictJsonSchema:!1}:{},...uS(t,n),...lS({reasoning:t.reasoning,isAnthropicCompatibleModelId:a,anthropicReasoningPolicyKind:r?.kind}),...o?{reasoning:o}:{},...s,...ev(t)}}function cS(e,t){if(t!=="openai")return;return{openai:{strictJsonSchema:!1,...ev(e)}}}function mS(e,t){return{anthropic:t,openaiCompatible:e}}function fS(e,t,n){if(e.providerId!=="openai-codex")return;let a={...n,instructions:e.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:a,...oo({providerId:e.providerId,providerOptionsKey:t,bucketOptions:a})}}function pS(e,t,n,a,i){if(i==="openai")return;if(eS.has(e.providerId))return;let r=e.providerId==="cline"?Hp(e,t):void 0;return oo({providerId:e.providerId,providerOptionsKey:n,bucketOptions:{...a,...r?{reasoning:r}:{}}})}function vS(e){if(!(e.providerId==="google"||e.providerId==="gemini")||!e.reasoning?.effort)return;return{google:{thinkingConfig:{thinkingLevel:e.reasoning.effort,includeThoughts:!0}}}}function gS(e){let{request:t,context:n,providerOptionsKey:a}=e;if(t.reasoning?.enabled!==!1)return;if(!rS(t.modelId))return;if(Qp(n))return;if(!tS.has(t.providerId))return;return Yp({providerId:t.providerId,providerOptionsKey:a,thinkingType:"disabled"})}function hS(e){let{request:t,context:n,providerOptionsKey:a}=e,i=sS(t,n);if(!i)return;return Yp({providerId:t.providerId,providerOptionsKey:a,thinkingType:i})}function tv(e,t,n=nS(e.providerId)){let a=hn(e.providerId),i=$e({modelId:e.modelId,family:X(t)}),r=dS({request:e,context:t,isAnthropicCompatibleModelId:i,target:n}),o=Gp(e,t),s=[mS(r,o),cS(e,n),fS(e,a,r),pS(e,t,a,r,n),vS(e),gS({request:e,context:t,providerOptionsKey:a}),hS({request:e,context:t,providerOptionsKey:a}),Xp(e,t,a)];return iS(s)}var eS,tS,qp;var iv=V(()=>{yn();Vp();eS=new Set(["anthropic","openai-codex","google"]),tS=new Set(["cline","openrouter"]);qp=[{matches:(e,t)=>Qp(t),defaultWhenUnset:"enabled"},{matches:(e,t)=>aS(t)||e.providerId==="deepseek",defaultWhenUnset:void 0}]});var sv={};se(sv,{resetLangfuseTelemetryForTests:()=>kS,hasLangfuseTelemetryConfig:()=>av,ensureLangfuseTelemetry:()=>yS,disposeLangfuseTelemetry:()=>ov,debugLangfuse:()=>de});function rv(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),a=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!a)return;return{baseUrl:t,publicKey:n,secretKey:a}}function av(){return rv()!==void 0}async function yS(e){if(!av())return!1;if(Je!==void 0)return de(`cached readiness=${String(Je)}`),Je;if(!$n)$n=bS();return Je=await $n,de(`initialized readiness=${String(Je)}`),Je}async function bS(){let{registerDisposable:e}=await Promise.resolve().then(() => (gn(),Fp));e(ov);let t=rv();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:a},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),r=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});de(`creating span processor baseUrl=${t.baseUrl}`);let o=a.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(r);let c=nv(a);return de(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[r]}).register();let d=nv(a);return de(`registered NodeTracerProvider delegateReady=${String(d)}`),d}catch(n){return de(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function nv(e){let a=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(a&&a!=="NoopTracerProvider")}async function $S(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),de("forceFlush completed")}catch(e){de(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function ov(){try{await $S();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),de("shutdown completed")}catch(e){de(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function de(e){if(!_S())return;console.warn(`[langfuse-debug] ${e}`)}function _S(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function kS(){Je=void 0,$n=void 0}var Je,$n;async function G(e){let t=e.apiKey?.trim();if(t)return t;let a=(await e.apiKeyResolver?.())?.trim();if(a)return a;for(let i of e.apiKeyEnv??[]){let r=wS(i);if(r)return r}return}function wS(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let a=n.trim();return a.length>0?a:void 0}var uv={};se(uv,{createOpenAIProviderModule:()=>IS});import{createOpenAI as SS}from"@ai-sdk/openai";async function IS(e,t){let n=await G(e),a=SS({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a.responses(i)}}var lv=()=>{};function xS(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function zS(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function US(e){if(e.type!=="content")return null;let t=[],n=[];for(let a of e.value){if(!xS(a)){n.push(a);continue}let i=zS(a);if(!i){n.push(a);continue}t.push(i);let r={type:"text",text:"(see following user message for image)"};n.push(r)}if(t.length===0)return null;return{stripped:{type:"content",value:n},media:t}}function ES(e){let t=[],n=!1;for(let a of e){if(a.role!=="tool"){t.push(a);continue}let i=[],r=a.content.map((o)=>{if(o.type!=="tool-result")return o;let s=US(o.output);if(!s)return o;return i.push(...s.media),{...o,output:s.stripped}});if(t.push({...a,content:r}),i.length>0)t.push({role:"user",content:i}),n=!0}return{prompt:t,mutated:n}}var _n;var so=V(()=>{_n={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=ES(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var dv={};se(dv,{createOpenAICompatibleProviderModule:()=>jS});import{createOpenAICompatible as PS}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as TS}from"ai";async function jS(e,t){let n=await G(e),a=PS({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...e.fetch?{fetch:e.fetch}:{},includeUsage:!0});return{model:(i)=>TS({model:a(i),middleware:_n})}}var cv=V(()=>{so()});var mv={};se(mv,{createAnthropicProviderModule:()=>NS});import{createAnthropic as OS}from"@ai-sdk/anthropic";async function NS(e,t){let n=await G(e),a=OS({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a(i)}}var fv=()=>{};var pv={};se(pv,{createGoogleProviderModule:()=>DS});import{createGoogleGenerativeAI as AS}from"@ai-sdk/google";async function DS(e,t){let n=await G(e),a=AS({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a(i)}}var vv=()=>{};var gv={};se(gv,{createVertexProviderModule:()=>RS});import{createVertex as ZS}from"@ai-sdk/google-vertex";import{createVertexAnthropic as CS}from"@ai-sdk/google-vertex/anthropic";async function RS(e,t){let n=String(e.options?.project??e.options?.projectId??""),a=String(e.options?.location??e.options?.region??"us-central1");if(t.model.id.toLowerCase().includes("claude")){let r=CS({project:n,location:a,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(o)=>r(o)}}let i=ZS({project:n,location:a,apiKey:await G(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(r)=>i(r)}}var hv=()=>{};var yv={};se(yv,{createBedrockProviderModule:()=>LS});import{createAmazonBedrock as MS}from"@ai-sdk/amazon-bedrock";async function LS(e){let t=typeof e.options?.credentialProvider==="function"?e.options.credentialProvider:void 0,n=MS({region:e.options?.region,apiKey:await G(e),accessKeyId:e.options?.accessKeyId,secretAccessKey:e.options?.secretAccessKey,sessionToken:e.options?.sessionToken,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,credentialProvider:t});return{model:(a)=>n(a)}}var bv=()=>{};var $v={};se($v,{createMistralProviderModule:()=>KS});import{createMistral as FS}from"@ai-sdk/mistral";import{wrapLanguageModel as JS}from"ai";async function KS(e){let t=FS({apiKey:await G(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>JS({model:t(n),middleware:_n})}}var _v=V(()=>{so()});var Qt={};se(Qt,{listOpenAICodexModels:()=>YS,createOpenCodeProviderModule:()=>qS,createOpenAICodexProviderModule:()=>VS,createDifyProviderModule:()=>eI,createClaudeCodeProviderModule:()=>XS});import{createClaudeCode as GS}from"ai-sdk-provider-claude-code";import{createCodexAppServer as WS,createCodexExec as HS}from"ai-sdk-provider-codex-cli";import{createDifyProvider as BS}from"dify-ai-provider";function kn(e){return e.options??{}}async function XS(e){let t=GS(kn(e));return{model:(n)=>t(n)}}async function VS(e){let t=HS(kn(e));return{model:(n)=>t(n)}}async function YS(e={}){let t=e.accessToken&&e.accountId?{onAuthRefresh:async()=>({accessToken:e.accessToken,chatgptAccountId:e.accountId,chatgptPlanType:null})}:void 0,n=WS({defaultSettings:{codexPath:e.codexPath??"codex",cwd:e.cwd,env:e.env,logger:!1,requestTimeoutMs:e.requestTimeoutMs,connectionTimeoutMs:e.connectionTimeoutMs,serverRequests:t}}),a;try{a=await n.listModels(["openai"])}finally{await n.close().catch(()=>{})}return a.models.map((i)=>({id:i.id,name:i.name,isDefault:i.isDefault}))}async function QS(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),a=await e();for(let i of t)for(let r of process.listeners(i))if(!n.get(i)?.has(r))process.removeListener(i,r);return a}async function qS(e){let t=await QS(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(kn(e))});return{model:(n)=>t(n)}}async function eI(e){let t=await G(e),n=BS({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...kn(e)});return{model:(a)=>n(a,{apiKey:t})}}var qt=()=>{};var oe={};se(oe,{normalizeUsage:()=>Uv,createVertexProvider:()=>zn,createOpenCodeProvider:()=>po,createOpenAIProvider:()=>wn,createOpenAICompatibleProvider:()=>Sn,createOpenAICodexProvider:()=>fo,createMistralProvider:()=>co,createGoogleProvider:()=>xn,createDifyProvider:()=>vo,createClaudeCodeProvider:()=>mo,createBedrockProvider:()=>Un,createAnthropicProvider:()=>In});import{jsonSchema as tI,streamText as iI}from"ai";import{nanoid as kv}from"nanoid";import{z as nI}from"zod";function rI(e,t,n){let a=Sv(e.messages,n),i=$e({modelId:e.modelId,family:X(t)});for(let r=a.length-1;r>=0;r--)if(a[r]?.role==="user"){Kp(a[r],e.providerId,i);break}return a}async function aI(e){try{return(await Promise.resolve().then(() => sv)).ensureLangfuseTelemetry(e)}catch{return!1}}function Sv(e,t){let n=[];for(let a of e){let i=[];for(let r of a.content){if(r.type==="text"){i.push({type:"text",text:r.text});continue}if(r.type==="reasoning"){let o=r.metadata,s=o?.signature,l=o?.redactedData;i.push({type:"reasoning",text:r.text,...typeof s==="string"||typeof l==="string"?{providerOptions:{anthropic:{...typeof s==="string"?{signature:s}:{},...typeof l==="string"?{redactedData:l}:{}}}}:{}});continue}if(r.type==="file"){i.push({type:"file",path:r.path,content:r.content});continue}if(r.type==="image"){i.push({type:"image",image:r.image,mediaType:r.mediaType});continue}if(r.type==="tool-call"){let o=r.metadata,s=o?.thoughtSignature??o?.thought_signature;i.push({type:"tool-call",toolCallId:r.toolCallId,toolName:r.toolName,input:r.input,...typeof s==="string"?{providerOptions:{google:{thoughtSignature:s}}}:{}});continue}if(r.type==="tool-result")i.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,output:r.output,isError:r.isError??!1})}if(i.length>0)n.push({role:a.role,content:i});else if(a.role==="user"||a.role==="assistant")n.push({role:a.role,content:""})}return eo(t,n,{assistantToolCallArgKey:"input"})}function oI(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:tI(sI(t.inputSchema),{validate:async(n)=>{let a=await nI.fromJSONSchema(t.inputSchema).safeParseAsync(n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}]))}function sI(e){if(e.type==="object")return e;return{type:"object",...e}}function Iv(e){return e.provider.capabilities?.includes("provider-tools")??!1}function xv(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function zv(e){return xv(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:Iv(e.context)?"provider":"runtime"}})}function uI(e){return zv({metadata:xv(lo(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function lI(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function dI(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function Ke(e,...t){for(let n of t){let a=e[n];if(typeof a==="number"&&Number.isFinite(a))return a;if(typeof a==="string"&&a.trim().length>0&&Number.isFinite(Number(a)))return Number(a)}return 0}function ce(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function uo(e,...t){let n=e;for(let a of t){if(!n||typeof n!=="object")return 0;n=n[a]}return typeof n==="number"&&Number.isFinite(n)?n:0}function cI(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let a=n;if(a.usage&&typeof a.usage==="object")return a.usage}return}function mI(e,t){if(!t||typeof t!=="object")return;let n=t,a=ce(n.input),i=ce(n.output);if(a===void 0||i===void 0)return;let r=ce(n.cacheRead)??0,o=ce(n.cacheWrite)??a*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*a+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*r+e.cacheWriteTokens/1e6*o}function Uv(e,t,n){let a=e&&typeof e==="object"?e:{},i=cI(t),r=t&&typeof t==="object"?t:{},o=r.gateway&&typeof r.gateway==="object"?r.gateway:{},s=a.raw&&typeof a.raw==="object"?a.raw:a,l=ce(s.cost_details?.upstream_inference_cost)??ce(s.upstream_inference_cost),d=ce(s.market_cost)??ce(s.marketCost)??ce(o.marketCost),c=ce(s.cost)??ce(o.cost),p=d!==void 0||c!==void 0||l!==void 0,v=d??(c!==void 0&&l!==void 0?c+l:c??l),f={inputTokens:Ke(a,"inputTokens","input_tokens","prompt_tokens"),outputTokens:Ke(a,"outputTokens","output_tokens","completion_tokens"),cacheReadTokens:uo(a,"inputTokenDetails","cacheReadTokens")||Ke(a,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||uo(a,"prompt_tokens_details","cached_tokens")||Ke(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:uo(a,"inputTokenDetails","cacheWriteTokens")||Ke(a,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Ke(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||Ke(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},y=v!==void 0?v:p?void 0:mI(f,n);return{...f,...typeof y==="number"?{totalCost:y}:{}}}function wv(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},a=e;for(let i of Object.keys(e))try{n(a[i])}catch{}}function lo(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,a=n?.google&&typeof n.google==="object"?n.google:void 0;if(typeof t.thoughtSignature!=="string"&&typeof a?.thoughtSignature==="string")t.thoughtSignature=a.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof a?.thought_signature==="string")t.thought_signature=a.thought_signature;return Object.keys(t).length>0?t:void 0}async function*fI(e,t,n,a,i){let r=!1,o=new Set,s,l,d,c;try{if(e.fullStream)for await(let f of e.fullStream){if(f.type==="text-delta"){let y=f.textDelta??f.text??f.delta;if(y)yield{type:"text-delta",text:y};continue}if(f.type==="reasoning-delta"||f.type==="reasoning"){let y=f.textDelta??f.text??f.reasoning;if(y)yield{type:"reasoning-delta",text:y,metadata:lo(f)};continue}if(f.type==="tool-call"){r=!0;let y=f.toolCallId??f.id??`tool_${kv()}`;o.add(y);let k=f.input??f.args??{},T=typeof k==="string"?k:JSON.stringify(k);yield{type:"tool-call-delta",toolCallId:y,toolName:f.toolName??f.name??"tool",input:typeof k==="string"?void 0:k,inputText:T,metadata:zv({metadata:lo(f),request:t,context:n})};continue}if(f.type==="tool-error"){r=!0;let y=f.toolCallId??f.id??`tool_${kv()}`,k=o.has(y);o.add(y);let T=f.toolName??f.name??"tool",j=f.input??f.args??{},M=typeof j==="string"?j:JSON.stringify(j),S=f.error===void 0?"Tool input was rejected by the model adapter":Fe(f.error);yield{type:"tool-call-delta",toolCallId:y,toolName:T,input:k?void 0:typeof j==="string"?void 0:j,inputText:k?void 0:M,metadata:uI({part:f,errorMessage:S,request:t,context:n,toolName:T})};continue}if(f.type==="finish")d=f.usage??f.totalUsage,c=f.providerMetadata,s=f.finishReason??f.rawFinishReason??f.reason;if(f.type==="error"){l=i?.current??Fe(f.error);break}if(f.type==="abort")break}else if(e.textStream)for await(let f of e.textStream)yield{type:"text-delta",text:f}}catch(f){l=i?.current??Fe(f)}let p,v;if(l)p=d,v=c;else if(e.usage)try{p=await e.usage}catch(f){if(!l)l=i?.current??Fe(f);p=d,v=c}else p=d,v=c;if(p)yield{type:"usage",usage:Uv(p,v,a)};yield{type:"finish",reason:l?"error":dI(s,r),error:l}}async function pI(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:a}=await Promise.resolve().then(() => (lv(),uv));return a(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:a}=await Promise.resolve().then(() => (cv(),dv));return a(t,n)}case"anthropic":{let{createAnthropicProviderModule:a}=await Promise.resolve().then(() => (fv(),mv));return a(t,n)}case"google":{let{createGoogleProviderModule:a}=await Promise.resolve().then(() => (vv(),pv));return a(t,n)}case"vertex":{let{createVertexProviderModule:a}=await Promise.resolve().then(() => (hv(),gv));return a(t,n)}case"bedrock":{let{createBedrockProviderModule:a}=await Promise.resolve().then(() => (bv(),yv));return a(t)}case"mistral":{let{createMistralProviderModule:a}=await Promise.resolve().then(() => (_v(),$v));return a(t)}case"claude-code":{let{createClaudeCodeProviderModule:a}=await Promise.resolve().then(() => (qt(),Qt));return a(t)}case"openai-codex":{let{createOpenAICodexProviderModule:a}=await Promise.resolve().then(() => (qt(),Qt));return a(t)}case"opencode":{let{createOpenCodeProviderModule:a}=await Promise.resolve().then(() => (qt(),Qt));return a(t)}case"dify":{let{createDifyProviderModule:a}=await Promise.resolve().then(() => (qt(),Qt));return a(t)}}}function me(e){return async(t)=>({async*stream(n,a){let i=a.logger,r,o={current:void 0};try{let s=await pI(e,t,a),l=await aI(t.providerId),d=Iv(a)?void 0:oI(n),c=lI(n),p=typeof c==="string"&&c.trim().length>0,v=p?void 0:c;r=iI({model:s.model(a.model.id),messages:Yt(n,a)?rI(n,a,v):Sv(n.messages,v),...p?{system:c}:{},tools:d,temperature:n.temperature,maxOutputTokens:n.maxTokens,abortSignal:n.signal,experimental_telemetry:{isEnabled:l},providerOptions:tv(n,a,e),onError:({error:f})=>{let y=Fe(f);if(o.current=y,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:f,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${y}`,{providerId:n.providerId,severity:"error"})}}),wv(r),yield*fI(r,n,a,a.model.metadata?.pricing,o)}catch(s){wv(r);let l=o.current??Fe(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${l}`,{providerId:n.providerId,severity:"error"});yield{type:"finish",reason:"error",error:l}}}})}var wn,Sn,In,xn,zn,Un,co,mo,fo,po,vo;var te=V(()=>{gn();yn();iv();wn=me("openai"),Sn=me("openai-compatible"),In=me("anthropic"),xn=me("google"),zn=me("vertex"),Un=me("bedrock"),co=me("mistral"),mo=me("claude-code"),fo=me("openai-codex"),po=me("opencode"),vo=me("dify")});var ft;((I)=>{I.ANTHROPIC="anthropic";I.CLAUDE_CODE="claude-code";I.CLINE="cline";I.OPENAI_NATIVE="openai-native";I.OPENAI_CODEX="openai-codex";I.OPENAI_CODEX_CLI="openai-codex-cli";I.OPENCODE="opencode";I.BEDROCK="bedrock";I.VERTEX="vertex";I.GEMINI="gemini";I.OLLAMA="ollama";I.LMSTUDIO="lmstudio";I.DEEPSEEK="deepseek";I.XAI="xai";I.TOGETHER="together";I.FIREWORKS="fireworks";I.GROQ="groq";I.CEREBRAS="cerebras";I.SAMBANOVA="sambanova";I.NEBIUS="nebius";I.BASETEN="baseten";I.REQUESTY="requesty";I.LITELLM="litellm";I.HUGGINGFACE="huggingface";I.VERCEL_AI_GATEWAY="vercel-ai-gateway";I.V0="v0";I.AIHUBMIX="aihubmix";I.HICAP="hicap";I.NOUS_RESEARCH="nousResearch";I.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";I.WANDB="wandb";I.XIAOMI="xiaomi";I.KILO="kilo";I.ZAI="zai";I.ZAI_CODING_PLAN="zai-coding-plan";I.QWEN="qwen";I.QWEN_CODE="qwen-code";I.DOUBAO="doubao";I.MISTRAL="mistral";I.MOONSHOT="moonshot";I.ASKSAGE="asksage";I.MINIMAX="minimax";I.DIFY="dify";I.OCA="oca";I.SAPAICORE="sapaicore";I.OPENROUTER="openrouter"})(ft||={});var ug={openai:"openai-native",togetherai:"together","sap-ai-core":"sapaicore"},oi=Object.values(ft);function jn(e){return oi.includes(e)}function H(e){let t=e.trim();return ug[t]??t}function si(e){return H(e.routingProviderId??e.providerId)}te();import{nanoid as xo}from"nanoid";gn();var go={version:1778284066400,providers:{aihubmix:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-flash-think":{id:"deepseek-v4-flash-think",name:"DeepSeek V4 Flash Think",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.9995,cacheRead:0.160835,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding-GLM-5.1",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Plus",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.169,output:1.014,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding-MiniMax-M2.7-Free",contextWindow:204800,maxTokens:13100,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2958,output:1.1832,cacheRead:0.05916,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-11",family:"gpt"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4-Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-11",family:"gpt-mini"},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Think",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen3.5-plus":{id:"qwen3.5-plus",name:"Qwen3.5 Plus",contextWindow:991000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1096,output:0.6576,cacheRead:0.01096,cacheWrite:0.137},releaseDate:"2026-02-16",family:"qwen"},"coding-glm-5-free":{id:"coding-glm-5-free",name:"Coding-GLM-5-Free",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:202752,maxTokens:0,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.88,output:2.816,cacheRead:0.176,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxTokens:0,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.105,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"minimax-m2.1":{id:"minimax-m2.1",name:"MiniMax-M2.1",contextWindow:204800,maxTokens:192000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.288,output:1.152,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-15",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"qwen3-max-2026-01-23":{id:"qwen3-max-2026-01-23",name:"Qwen3 Max",contextWindow:252000,maxTokens:32000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.34246,output:1.36984,cacheRead:0.34246,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"Qwen3 Coder Plus",contextWindow:2000000,maxTokens:64000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.137,output:0.548,cacheRead:0.137,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.499,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1":{id:"claude-opus-4-1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-1-20250805":{id:"claude-opus-4-1-20250805",name:"Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-0":{id:"claude-opus-4-0",name:"Claude Opus 4 (latest)",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-opus-4-20250514":{id:"claude-opus-4-20250514",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4-0":{id:"claude-sonnet-4-0",name:"Claude Sonnet 4 (latest)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-sonnet-4-20250514":{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-7-sonnet-20250219":{id:"claude-3-7-sonnet-20250219",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"claude-3-5-haiku-20241022":{id:"claude-3-5-haiku-20241022",name:"Claude Haiku 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-haiku-latest":{id:"claude-3-5-haiku-latest",name:"Claude Haiku 3.5 (latest)",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-sonnet-20241022":{id:"claude-3-5-sonnet-20241022",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"claude-3-5-sonnet-20240620":{id:"claude-3-5-sonnet-20240620",name:"Claude Sonnet 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-06-20",family:"claude-sonnet"},"claude-3-haiku-20240307":{id:"claude-3-haiku-20240307",name:"Claude Haiku 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"claude-3-sonnet-20240229":{id:"claude-3-sonnet-20240229",name:"Claude Sonnet 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:0.3},releaseDate:"2024-03-04",family:"claude-sonnet"},"claude-3-opus-20240229":{id:"claude-3-opus-20240229",name:"Claude Opus 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},baseten:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron 3 Super",contextWindow:262144,maxTokens:32678,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204000,maxTokens:10200,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.95,output:3.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM 4.6",contextWindow:200000,maxTokens:1e4,capabilities:["tools","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-16",family:"glm"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:164000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"deepseek-ai/DeepSeek-V3-0324":{id:"deepseek-ai/DeepSeek-V3-0324",name:"DeepSeek V3 0324",contextWindow:164000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.77,output:0.77,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"}},bedrock:{"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxTokens:101376,capabilities:["tools","reasoning","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxTokens:81920,capabilities:["tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxTokens:13100,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxTokens:819,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxTokens:13100,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"anthropic.claude-opus-4-20250514-v1:0":{id:"anthropic.claude-opus-4-20250514-v1:0",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic.claude-sonnet-4-20250514-v1:0":{id:"anthropic.claude-sonnet-4-20250514-v1:0",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-20250514-v1:0":{id:"eu.anthropic.claude-sonnet-4-20250514-v1:0",name:"Claude Sonnet 4 (EU)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-20250514-v1:0":{id:"global.anthropic.claude-sonnet-4-20250514-v1:0",name:"Claude Sonnet 4 (Global)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"us.anthropic.claude-opus-4-20250514-v1:0":{id:"us.anthropic.claude-opus-4-20250514-v1:0",name:"Claude Opus 4 (US)",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"us.anthropic.claude-sonnet-4-20250514-v1:0":{id:"us.anthropic.claude-sonnet-4-20250514-v1:0",name:"Claude Sonnet 4 (US)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"anthropic.claude-3-7-sonnet-20250219-v1:0":{id:"anthropic.claude-3-7-sonnet-20250219-v1:0",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-premier-v1:0":{id:"amazon.nova-premier-v1:0",name:"Nova Premier",contextWindow:1e6,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03",family:"nova"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"anthropic.claude-3-5-haiku-20241022-v1:0":{id:"anthropic.claude-3-5-haiku-20241022-v1:0",name:"Claude Haiku 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"anthropic.claude-3-5-sonnet-20241022-v2:0":{id:"anthropic.claude-3-5-sonnet-20241022-v2:0",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"meta.llama3-2-11b-instruct-v1:0":{id:"meta.llama3-2-11b-instruct-v1:0",name:"Llama 3.2 11B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta.llama3-2-1b-instruct-v1:0":{id:"meta.llama3-2-1b-instruct-v1:0",name:"Llama 3.2 1B Instruct",contextWindow:131000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta.llama3-2-3b-instruct-v1:0":{id:"meta.llama3-2-3b-instruct-v1:0",name:"Llama 3.2 3B Instruct",contextWindow:131000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta.llama3-2-90b-instruct-v1:0":{id:"meta.llama3-2-90b-instruct-v1:0",name:"Llama 3.2 90B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta.llama3-1-405b-instruct-v1:0":{id:"meta.llama3-1-405b-instruct-v1:0",name:"Llama 3.1 405B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"anthropic.claude-3-5-sonnet-20240620-v1:0":{id:"anthropic.claude-3-5-sonnet-20240620-v1:0",name:"Claude Sonnet 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-06-20",family:"claude-sonnet"},"anthropic.claude-3-haiku-20240307-v1:0":{id:"anthropic.claude-3-haiku-20240307-v1:0",name:"Claude Haiku 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:0.25,output:1.25,cacheRead:0,cacheWrite:0},releaseDate:"2024-03-13",family:"claude-haiku"}},cerebras:{"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxTokens:40000,capabilities:["tools","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-10"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen-3-235b-a22b-instruct-2507":{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen 3 235B Instruct",contextWindow:131000,maxTokens:32000,capabilities:["tools","temperature"],pricing:{input:0.6,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"llama3.1-8b":{id:"llama3.1-8b",name:"Llama 3.1 8B",contextWindow:32000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01",family:"llama"}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxTokens:13100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/qwen3p6-plus":{id:"accounts/fireworks/models/qwen3p6-plus",name:"Qwen 3.6 Plus",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-04",family:"qwen"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/minimax-m2p5":{id:"accounts/fireworks/models/minimax-m2p5",name:"MiniMax-M2.5",contextWindow:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"accounts/fireworks/models/glm-5":{id:"accounts/fireworks/models/glm-5",name:"GLM 5",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"accounts/fireworks/models/kimi-k2p5":{id:"accounts/fireworks/models/kimi-k2p5",name:"Kimi K2.5",contextWindow:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p5-turbo":{id:"accounts/fireworks/routers/kimi-k2p5-turbo",name:"Kimi K2.5 Turbo",contextWindow:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p1":{id:"accounts/fireworks/models/minimax-m2p1",name:"MiniMax-M2.1",contextWindow:200000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"accounts/fireworks/models/glm-4p7":{id:"accounts/fireworks/models/glm-4p7",name:"GLM 4.7",contextWindow:198000,maxTokens:9900,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"accounts/fireworks/models/deepseek-v3p2":{id:"accounts/fireworks/models/deepseek-v3p2",name:"DeepSeek V3.2",contextWindow:160000,maxTokens:8000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"accounts/fireworks/models/kimi-k2-thinking":{id:"accounts/fireworks/models/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"accounts/fireworks/models/deepseek-v3p1":{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.56,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/glm-4p5-air":{id:"accounts/fireworks/models/glm-4p5-air",name:"GLM 4.5 Air",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01",family:"glm-air"},"accounts/fireworks/models/glm-4p5":{id:"accounts/fireworks/models/glm-4p5",name:"GLM 4.5",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.55,output:2.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"glm"},"accounts/fireworks/models/kimi-k2-instruct":{id:"accounts/fireworks/models/kimi-k2-instruct",name:"Kimi K2 Instruct",contextWindow:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"}},gemini:{"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"gemini-2.5-flash-lite-preview-09-2025":{id:"gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash-preview-09-2025":{id:"gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-live-2.5-flash":{id:"gemini-live-2.5-flash",name:"Gemini Live 2.5 Flash",contextWindow:128000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-01",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-flash-lite-preview-06-17":{id:"gemini-2.5-flash-lite-preview-06-17",name:"Gemini 2.5 Flash Lite Preview 06-17",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-live-2.5-flash-preview-native-audio":{id:"gemini-live-2.5-flash-preview-native-audio",name:"Gemini Live 2.5 Flash Preview Native Audio",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-pro-preview-06-05":{id:"gemini-2.5-pro-preview-06-05",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-06-05",family:"gemini-pro"},"gemini-2.5-flash-preview-05-20":{id:"gemini-2.5-flash-preview-05-20",name:"Gemini 2.5 Flash Preview 05-20",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-05-20",family:"gemini-flash"},"gemini-2.5-pro-preview-05-06":{id:"gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-05-06",family:"gemini-pro"},"gemini-2.5-flash-preview-04-17":{id:"gemini-2.5-flash-preview-04-17",name:"Gemini 2.5 Flash Preview 04-17",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"gemma-3-27b-it":{id:"gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"gemini-2.0-flash-lite":{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash-lite"},"gemini-1.5-flash-8b":{id:"gemini-1.5-flash-8b",name:"Gemini 1.5 Flash-8B",contextWindow:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.0375,output:0.15,cacheRead:0.01,cacheWrite:0},releaseDate:"2024-10-03",family:"gemini-flash"},"gemini-1.5-flash":{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash",contextWindow:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.01875,cacheWrite:0},releaseDate:"2024-05-14",family:"gemini-flash"},"gemini-1.5-pro":{id:"gemini-1.5-pro",name:"Gemini 1.5 Pro",contextWindow:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:1.25,output:5,cacheRead:0.3125,cacheWrite:0},releaseDate:"2024-02-15",family:"gemini-pro"}},groq:{"moonshotai/kimi-k2-instruct-0905":{id:"moonshotai/kimi-k2-instruct-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"groq/compound":{id:"groq/compound",name:"Compound",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"groq/compound-mini":{id:"groq/compound-mini",name:"Compound Mini",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B",contextWindow:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-03-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-23",family:"qwen"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B Versatile",contextWindow:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B Instant",contextWindow:131072,maxTokens:6553,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"}},kilo:{"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxTokens:6553,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",contextWindow:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t:free":{id:"inclusionai/ling-2.6-1t:free",name:"inclusionAI: Ling-2.6-1T (free)",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview:free":{id:"tencent/hy3-preview:free",name:"Tencent: Hy3 Preview (free)",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxTokens:819,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Arcee AI: Trinity Large Preview",contextWindow:131000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-28"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"x-ai/grok-4.1-fast":{id:"x-ai/grok-4.1-fast",name:"xAI: Grok 4.1 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxTokens:10240,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxTokens:6553,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"alibaba/tongyi-deepresearch-30b-a3b":{id:"alibaba/tongyi-deepresearch-30b-a3b",name:"Tongyi DeepResearch 30B A3B",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"x-ai/grok-code-fast-1:optimized:free":{id:"x-ai/grok-code-fast-1:optimized:free",name:"xAI: Grok Code Fast 1 Optimized (experimental, free)",contextWindow:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-27"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"stepfun/step-3.5-flash:free":{id:"stepfun/step-3.5-flash:free",name:"StepFun: Step 3.5 Flash (free)",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-26"},"x-ai/grok-code-fast-1":{id:"x-ai/grok-code-fast-1",name:"xAI: Grok Code Fast 1",contextWindow:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"x-ai/grok-4-fast":{id:"x-ai/grok-4-fast",name:"xAI: Grok 4 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-08-19"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"x-ai/grok-4":{id:"x-ai/grok-4",name:"xAI: Grok 4",contextWindow:256000,maxTokens:51200,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09"},"tngtech/deepseek-r1t2-chimera":{id:"tngtech/deepseek-r1t2-chimera",name:"TNG: DeepSeek R1T2 Chimera",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.85,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-07-08"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxTokens:6553,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Anthropic: Claude 3.7 Sonnet",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19"},"anthropic/claude-3.7-sonnet:thinking":{id:"anthropic/claude-3.7-sonnet:thinking",name:"Anthropic: Claude 3.7 Sonnet (thinking)",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3":{id:"x-ai/grok-3",name:"xAI: Grok 3",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-beta":{id:"x-ai/grok-3-beta",name:"xAI: Grok 3 Beta",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-mini":{id:"x-ai/grok-3-mini",name:"xAI: Grok 3 Mini",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-mini-beta":{id:"x-ai/grok-3-mini-beta",name:"xAI: Grok 3 Mini Beta",contextWindow:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"qwen/qwen-turbo":{id:"qwen/qwen-turbo",name:"Qwen: Qwen-Turbo",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.0325,output:0.13,cacheRead:0.01,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"nvidia/llama-3.1-nemotron-70b-instruct":{id:"nvidia/llama-3.1-nemotron-70b-instruct",name:"NVIDIA: Llama 3.1 Nemotron 70B Instruct",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1.2,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-12"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxTokens:819,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxTokens:409,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"qwen/qwen-vl-max":{id:"qwen/qwen-vl-max",name:"Qwen: Qwen VL Max",contextWindow:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-08"},"qwen/qwen-max":{id:"qwen/qwen-max",name:"Qwen: Qwen-Max ",contextWindow:32768,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.04,output:4.16,cacheRead:0.32,cacheWrite:0},releaseDate:"2024-04-03"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-02-27"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"mistralai/mixtral-8x7b-instruct":{id:"mistralai/mixtral-8x7b-instruct",name:"Mistral: Mixtral 8x7B Instruct",contextWindow:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.54,output:0.54,cacheRead:0,cacheWrite:0},releaseDate:"2023-12-10"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"}},nebius:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:200000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:1},releaseDate:"2026-03-01"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"PrimeIntellect/INTELLECT-3":{id:"PrimeIntellect/INTELLECT-3",name:"INTELLECT-3",contextWindow:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.02,cacheWrite:0.25},releaseDate:"2026-01-25"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.45,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-01-20"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"moonshotai/Kimi-K2.5-fast":{id:"moonshotai/Kimi-K2.5-fast",name:"Kimi-K2.5-fast",contextWindow:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507-fast":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507-fast",name:"Qwen3-235B-A22B-Thinking-2507-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-07-25"},"Qwen/Qwen3-Next-80B-A3B-Thinking-fast":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking-fast",name:"Qwen3-Next-80B-A3B-Thinking-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.1875},releaseDate:"2025-07-25"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"Qwen/Qwen3.5-397B-A17B-fast":{id:"Qwen/Qwen3.5-397B-A17B-fast",name:"Qwen3.5-397B-A17B-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"openai/gpt-oss-120b-fast":{id:"openai/gpt-oss-120b-fast",name:"gpt-oss-120b-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2025-06-10"},"deepseek-ai/DeepSeek-V3.2-fast":{id:"deepseek-ai/DeepSeek-V3.2-fast",name:"DeepSeek-V3.2-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2025-01-27"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"MiniMaxAI/MiniMax-M2.5-fast":{id:"MiniMaxAI/MiniMax-M2.5-fast",name:"MiniMax-M2.5-fast",contextWindow:8000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15"},"meta-llama/Meta-Llama-3.1-8B-Instruct":{id:"meta-llama/Meta-Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.02,output:0.06,cacheRead:0.002,cacheWrite:0.025},releaseDate:"2024-07-23"}},ollama:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxTokens:52428,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxTokens:52428,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6:cloud":{id:"kimi-k2.6:cloud",name:"kimi-k2.6:cloud",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxTokens:9830,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxTokens:13107,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxTokens:13107,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxTokens:13107,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"cogito-2.1:671b":{id:"cogito-2.1:671b",name:"cogito-2.1:671b",contextWindow:163840,maxTokens:32000,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-19",family:"cogito"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"kimi-k2-thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax-m2":{id:"minimax-m2",name:"minimax-m2",contextWindow:204800,maxTokens:128000,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"minimax"},"glm-4.6":{id:"glm-4.6",name:"glm-4.6",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"glm"},"qwen3-vl:235b":{id:"qwen3-vl:235b",name:"qwen3-vl:235b",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"qwen"},"qwen3-vl:235b-instruct":{id:"qwen3-vl:235b-instruct",name:"qwen3-vl:235b-instruct",contextWindow:262144,maxTokens:131072,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"qwen"},"qwen3-next:80b":{id:"qwen3-next:80b",name:"qwen3-next:80b",contextWindow:262144,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-15",family:"qwen"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"kimi-k2:1t":{id:"kimi-k2:1t",name:"kimi-k2:1t",contextWindow:262144,maxTokens:13107,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxTokens:409,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxTokens:50000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen-3.6-27b":{id:"qwen/qwen-3.6-27b",name:"Qwen3.6 27B",contextWindow:262144,maxTokens:81920,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo-V2.5-Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"openrouter/pareto-code":{id:"openrouter/pareto-code",name:"Pareto Code Router",contextWindow:200000,maxTokens:1e4,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0.029},releaseDate:"2026-04-20",family:"Hy"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"openrouter/elephant-alpha":{id:"openrouter/elephant-alpha",name:"Elephant (free)",contextWindow:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-13",family:"elephant"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.96,output:3.2,cacheRead:0.192,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"x-ai/grok-4.20-beta":{id:"x-ai/grok-4.20-beta",name:"Grok 4.20 Beta",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-12",family:"grok"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B A17B",contextWindow:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5:free":{id:"minimax/minimax-m2.5:free",name:"MiniMax M2.5 (free)",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxTokens:131000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29",family:"step"},"arcee-ai/trinity-large-preview:free":{id:"arcee-ai/trinity-large-preview:free",name:"Trinity Large Preview",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-28",family:"trinity"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxTokens:65535,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-14",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2-speciale":{id:"deepseek/deepseek-v3.2-speciale",name:"DeepSeek V3.2 Speciale",contextWindow:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"x-ai/grok-4.1-fast":{id:"x-ai/grok-4.1-fast",name:"Grok 4.1 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.05},releaseDate:"2025-11-19",family:"grok"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1050000,maxTokens:66000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxTokens:6400,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:196600,maxTokens:118000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.15,cacheRead:0.28,cacheWrite:1.15},releaseDate:"2025-10-23",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"z-ai/glm-4.6:exacto":{id:"z-ai/glm-4.6:exacto",name:"GLM 4.6 (exacto)",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"google/gemini-2.5-flash-preview-09-2025":{id:"google/gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.031,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"deepseek/deepseek-v3.1-terminus:exacto":{id:"deepseek/deepseek-v3.1-terminus:exacto",name:"DeepSeek V3.1 Terminus (exacto)",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Devstral 2 2512",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"devstral"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"moonshotai/kimi-k2-0905:exacto":{id:"moonshotai/kimi-k2-0905:exacto",name:"Kimi K2 Instruct 0905 (exacto)",contextWindow:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"nemotron"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-05",family:"qwen"},"x-ai/grok-code-fast-1":{id:"x-ai/grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxTokens:1e4,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-26",family:"grok"},"nousresearch/hermes-4-405b":{id:"nousresearch/hermes-4-405b",name:"Hermes 4 405B",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"hermes"},"nousresearch/hermes-4-70b":{id:"nousresearch/hermes-4-70b",name:"Hermes 4 70B",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"hermes"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"x-ai/grok-4-fast":{id:"x-ai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.05},releaseDate:"2025-08-19",family:"grok"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"nvidia-nemotron-nano-9b-v2",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM 4.5V",contextWindow:64000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.25,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.072,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:exacto":{id:"openai/gpt-oss-120b:exacto",name:"GPT OSS 120B (exacto)",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxTokens:12800,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31",family:"qwen"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262000,maxTokens:13100,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:262000,maxTokens:13100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxTokens:96000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxTokens:96000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.078,output:0.312,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder",contextWindow:262144,maxTokens:66536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:128000,maxTokens:66536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.5,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:exacto":{id:"qwen/qwen3-coder:exacto",name:"Qwen3 Coder (exacto)",contextWindow:131072,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.38,output:1.53,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-07-17",family:"gemini-flash"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2",contextWindow:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"mistralai/devstral-medium-2507":{id:"mistralai/devstral-medium-2507",name:"Devstral Medium",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10",family:"devstral"},"mistralai/devstral-small-2507":{id:"mistralai/devstral-small-2507",name:"Devstral Small 1.1",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10",family:"devstral"},"x-ai/grok-4":{id:"x-ai/grok-4",name:"Grok 4",contextWindow:256000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-07-09",family:"grok"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B Instruct",contextWindow:96000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"google/gemini-2.5-pro-preview-06-05":{id:"google/gemini-2.5-pro-preview-06-05",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-06-05",family:"gemini-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistralai/devstral-small-2505":{id:"mistralai/devstral-small-2505",name:"Devstral Small",contextWindow:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.06,output:0.12,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxTokens:6553,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-05-06",family:"gemini-pro"},"qwen/qwen3-235b-a22b-07-25":{id:"qwen/qwen3-235b-a22b-07-25",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistralai/mistral-small-3.1-24b-instruct":{id:"mistralai/mistral-small-3.1-24b-instruct",name:"Mistral Small 3.1 24B Instruct",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"mistral-small"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:96000,maxTokens:4800,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.04,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"google/gemma-3-27b-it:free":{id:"google/gemma-3-27b-it:free",name:"Gemma 3 27B (free)",contextWindow:131072,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"x-ai/grok-3":{id:"x-ai/grok-3",name:"Grok 3",contextWindow:131072,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-beta":{id:"x-ai/grok-3-beta",name:"Grok 3 Beta",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-mini":{id:"x-ai/grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0.5},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-mini-beta":{id:"x-ai/grok-3-mini-beta",name:"Grok 3 Mini Beta",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0.5},releaseDate:"2025-02-17",family:"grok"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2025-01-25",family:"qwen"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"minimax/minimax-01":{id:"minimax/minimax-01",name:"MiniMax-01",contextWindow:1e6,maxTokens:50000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-15",family:"minimax"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Intellect 3",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-15",family:"glm"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Gemini 2.0 Flash",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude Haiku 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o-mini",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-03-20",family:"gemini-pro"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},together:{"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.1,output:4.4,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"Qwen/Qwen3-Coder-Next-FP8":{id:"Qwen/Qwen3-Coder-Next-FP8",name:"Qwen3 Coder Next FP8",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"deepseek-ai/DeepSeek-V3-1":{id:"deepseek-ai/DeepSeek-V3-1",name:"DeepSeek V3.1",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxTokens:13107,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:1.25,output:1.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxTokens:6553,capabilities:["tools","temperature"],pricing:{input:0.88,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxTokens:50000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxTokens:12800,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.6,output:3.5999999999999996,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxTokens:131100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39999999999999997,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxTokens:13100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2.6"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202752,maxTokens:10137,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.09999999999999999,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.13,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.14,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxTokens:131000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxTokens:131100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.19999999999999998,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-13",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxTokens:1e5,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxTokens:1e5,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxTokens:1e5,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxTokens:1e5,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:0,maxTokens:0,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02",family:"claude-opus"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:202752,maxTokens:120000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.43,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.29,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"mimo"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxTokens:12800,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.28,output:0.42,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12",family:"gpt-codex"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"INTELLECT 3",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26",family:"intellect"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:18.75},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:216144,maxTokens:10807,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.14,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"moonshotai/kimi-k2-thinking-turbo":{id:"moonshotai/kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262114,maxTokens:13105,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:262114,maxTokens:13105,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1.15,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-10",family:"seed"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.45,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"google/gemini-2.5-flash-preview-09-2025":{id:"google/gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxTokens:129024,capabilities:["images","tools","temperature"],pricing:{input:0.7,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxTokens:129024,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.7,output:8.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:1.2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"meituan/longcat-flash-thinking":{id:"meituan/longcat-flash-thinking",name:"LongCat Flash Thinking",contextWindow:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"longcat"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"xai/grok-4-fast-non-reasoning":{id:"xai/grok-4-fast-non-reasoning",name:"Grok 4 Fast (Non-Reasoning)",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"moonshotai/kimi-k2-turbo":{id:"moonshotai/kimi-k2-turbo",name:"Kimi K2 Turbo",contextWindow:256000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.4,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-30",family:"longcat"},"xai/grok-code-fast-1":{id:"xai/grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-28",family:"grok"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxTokens:3300,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxTokens:272000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.18,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.18,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxTokens:50000,capabilities:["tools","temperature"],pricing:{input:1,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4-fast-reasoning":{id:"xai/grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning",contextWindow:2000000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:2000000,maxTokens:30000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:2000000,maxTokens:30000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"vercel/v0-1.5-md":{id:"vercel/v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"vercel/v0-1.0-md":{id:"vercel/v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"},"openai/codex-mini":{id:"openai/codex-mini",name:"Codex Mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:6,cacheRead:0.38,cacheWrite:0},releaseDate:"2025-05-16",family:"gpt-codex-mini"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-05-16",family:"gpt"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxTokens:12800,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16",family:"o-pro"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:40960,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.13,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.08,output:0.29,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262114,maxTokens:13105,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.38,output:1.53,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:160000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:1,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"xai/grok-3":{id:"xai/grok-3",name:"Grok 3",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-fast":{id:"xai/grok-3-fast",name:"Grok 3 Fast",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-mini":{id:"xai/grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-mini-fast":{id:"xai/grok-3-mini-fast",name:"Grok 3 Mini Fast",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-01",family:"qwen"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxTokens:6550,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01",family:"trinity"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-01",family:"glm-flash"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.77,output:0.77,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"google/gemini-2.0-flash":{id:"google/gemini-2.0-flash",name:"Gemini 2.0 Flash",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"google/gemini-2.0-flash-lite":{id:"google/gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite",contextWindow:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash-lite"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxTokens:6553,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxTokens:6400,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude Haiku 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"anthropic/claude-3.5-sonnet":{id:"anthropic/claude-3.5-sonnet",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxTokens:6400,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"xai/grok-2-vision":{id:"xai/grok-2-vision",name:"Grok 2 Vision",contextWindow:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:60288,maxTokens:16000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.17,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"anthropic/claude-3.5-sonnet-20240620":{id:"anthropic/claude-3.5-sonnet-20240620",name:"Claude 3.5 Sonnet (2024-06-20)",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-20",family:"claude-sonnet"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistral/mixtral-8x22b-instruct":{id:"mistral/mixtral-8x22b-instruct",name:"Mixtral 8x22B",contextWindow:64000,maxTokens:3200,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17",family:"mixtral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude Haiku 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic/claude-3-opus":{id:"anthropic/claude-3-opus",name:"Claude Opus 3",contextWindow:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1@20250805":{id:"claude-opus-4-1@20250805",name:"Claude Opus 4.1",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4@20250514":{id:"claude-opus-4@20250514",name:"Claude Opus 4",contextWindow:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4@20250514":{id:"claude-sonnet-4@20250514",name:"Claude Sonnet 4",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-7-sonnet@20250219":{id:"claude-3-7-sonnet@20250219",name:"Claude Sonnet 3.7",contextWindow:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"claude-3-5-haiku@20241022":{id:"claude-3-5-haiku@20241022",name:"Claude Haiku 3.5",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-sonnet@20241022":{id:"claude-3-5-sonnet@20241022",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxTokens:9830,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxTokens:1e4,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxTokens:8050,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxTokens:1638,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxTokens:3200,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxTokens:6400,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4-1-fast":{id:"grok-4-1-fast",name:"Grok 4.1 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"grok-4-1-fast-non-reasoning":{id:"grok-4-1-fast-non-reasoning",name:"Grok 4.1 Fast (Non-Reasoning)",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"grok-4-fast":{id:"grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"grok-4-fast-non-reasoning":{id:"grok-4-fast-non-reasoning",name:"Grok 4 Fast (Non-Reasoning)",contextWindow:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"grok-code-fast-1":{id:"grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-28",family:"grok"},"grok-4":{id:"grok-4",name:"Grok 4",contextWindow:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"grok-3":{id:"grok-3",name:"Grok 3",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-fast":{id:"grok-3-fast",name:"Grok 3 Fast",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-fast-latest":{id:"grok-3-fast-latest",name:"Grok 3 Fast Latest",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-latest":{id:"grok-3-latest",name:"Grok 3 Latest",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini":{id:"grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-fast":{id:"grok-3-mini-fast",name:"Grok 3 Mini Fast",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-fast-latest":{id:"grok-3-mini-fast-latest",name:"Grok 3 Mini Fast Latest",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-latest":{id:"grok-3-mini-latest",name:"Grok 3 Mini Latest",contextWindow:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-2-1212":{id:"grok-2-1212",name:"Grok 2 (1212)",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-12-12",family:"grok"},"grok-beta":{id:"grok-beta",name:"Grok Beta",contextWindow:131072,maxTokens:4096,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:15,cacheRead:5,cacheWrite:0},releaseDate:"2024-11-01",family:"grok-beta"},"grok-vision-beta":{id:"grok-vision-beta",name:"Grok Vision Beta",contextWindow:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:5,output:15,cacheRead:5,cacheWrite:0},releaseDate:"2024-11-01",family:"grok-vision"},"grok-2":{id:"grok-2",name:"Grok 2",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-latest":{id:"grok-2-latest",name:"Grok 2 Latest",contextWindow:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision":{id:"grok-2-vision",name:"Grok 2 Vision",contextWindow:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision-1212":{id:"grok-2-vision-1212",name:"Grok 2 Vision (1212)",contextWindow:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision-latest":{id:"grok-2-vision-latest",name:"Grok 2 Vision Latest",contextWindow:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"}},xiaomi:{"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2-omni":{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextWindow:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-pro":{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextWindow:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-flash":{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"}},zai:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var Pv=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex-anthropic",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function Ev(e){return[...new Set(e)]}var Tv=Object.fromEntries(Pv.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function qx(e){let t=Pv.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return Ev([...t,"nousresearch",e]);return Ev([...t,e])}var vI=4096,gI=4096;function jv(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function En(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[a,i])=>{let r=jv(n.releaseDate),o=jv(i.releaseDate);if(r!==o)return o-r;return t.localeCompare(a)}))}function hI(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return t}function yI(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function bI(e,t){let n=t.limit?.context??vI,a=t.limit?.output??gI,i=n===a?a*0.05:a;return{id:e,name:t.name||e,contextWindow:n,maxTokens:Math.floor(i),capabilities:hI(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:yI(t.status),releaseDate:t.release_date,family:t.family}}function $I(e){return e.status==="deprecated"}function _I(e){let t={};for(let[n,a]of Object.entries(Tv)){let i=e[n];if(!i?.models)continue;let r={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||$I(s))continue;r[o]=bI(o,s)}if(Object.keys(r).length>0)t[a]=En(r)}return t}async function i0(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let a=await n.json();return _I(a)}var Ov,Nv=new Map;function o0(){return Ov??=Object.fromEntries(Object.entries(go.providers).map(([e,t])=>[e,En(t)])),Ov}function Av(e){let t=Nv.get(e);if(t)return t;let n=En(go.providers[e]??{});return Nv.set(e,n),n}var kI="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm";function wI(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function yo(e){return wI(Av(e))}function ho(e){let t=Object.entries(yo("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function SI(){function e(t){return{...t==="opus"?ho((a)=>a.includes("opus")):t==="haiku"?ho((a)=>a.includes("haiku")):ho((a)=>a.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function II(){let e=yo("openai");return Object.fromEntries(["gpt-5.4","gpt-5.3-codex"].map((n)=>[n,e[n]??{id:n,name:n,capabilities:["tools","reasoning","streaming"]}]))}function xI(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let a={};if(t.family)a.family=t.family;if(t.pricing)a.pricing=t.pricing;if(t.status)a.status=t.status;if(t.releaseDate)a.releaseDate=t.releaseDate;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(a).length>0?a:void 0}}function zI(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function UI(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":return"ai-sdk-community";default:return"openai-compatible"}}var EI=[{id:"cline",name:"Cline",description:"Cline API endpoint",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:"openrouter",defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${io().apiBaseUrl}/api/v1`}},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/minimax-m2p5",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://api-inference.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",protocol:"openai-responses",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"}},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"}},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2-omni",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:kI},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"openai-compatible",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:{promptCacheStrategy:"anthropic-automatic"}}],bo=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",capabilities:["reasoning","oauth"],defaultModelId:"gpt-5.4",modelsFactory:II,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},metadata:{usageCostDisplay:"hide"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},metadata:{usageCostDisplay:"hide"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:SI,defaults:{baseUrl:""}},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6@default",apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY"],modelsProviderId:"vertex",metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic"},metadata:{promptCacheStrategy:"anthropic-automatic"}},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""}},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},...EI];function PI(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return yo(e.modelsProviderId);return{}}function Dv(e){let t=PI(e),n=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:{id:e.defaultModelId,name:e.defaultModelId}}:{},a=Object.keys(n),i=e.defaultModelId||a[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??zI(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:i,capabilities:e.capabilities,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??UI(e),source:"system",metadata:e.metadata},models:n}}function Zv(e){let t=Dv(e),n=Object.values(t.models).map((i)=>xI(e.id,i)),a=n.length>0?n:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||a[0]?.id||"default",models:a,capabilities:e.capabilities,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:e.metadata}}var $o=bo.map(Dv),d0=Object.fromEntries($o.map((e)=>[e.provider.id,e]));var Cv=new Map;async function TI(e){let t=Cv.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (te(),oe))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (te(),oe))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (te(),oe))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (te(),oe))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (te(),oe))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (te(),oe))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (te(),oe))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (te(),oe))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (te(),oe))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (te(),oe))).createDifyProvider}})();return Cv.set(e,n),n}function jI(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var ei=bo.map((e)=>({manifest:Zv(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await TI(jI(e))})}));async function*Rv(e){for await(let t of e)yield t}function Mv(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function OI(e,t){let n=new Map;for(let a of e.models)n.set(a.id,{...a});for(let a of t?.models??[])n.set(a.id,{...a,providerId:e.id});return Array.from(n.values())}function NI(e,t){return{id:t,name:t,providerId:e.id}}class _o{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:Mv(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let a=OI(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??a[0]?.id;if(!i)return;return{...Mv(t.manifest),defaultModelId:i,models:a,metadata:n?.metadata||t.manifest.metadata?{...t.manifest.metadata??{},...n?.metadata??{}}:void 0}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,a=t.models.find((i)=>i.id===n)??NI(t,n);return{provider:t,model:a}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let o=await t.loadProvider?.();if(!o?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=o.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let a=this.providerConfigs.get(e),i={...t.defaults?.metadata??{},...a?.metadata??{}},r=Object.keys(i).length>0?i:void 0;return{manifest:n,config:{providerId:e,apiKey:a?.apiKey??t.defaults?.apiKey,apiKeyResolver:a?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:a?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:a?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...a?.headers??{}},timeoutMs:a?.timeoutMs??t.defaults?.timeoutMs,fetch:a?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...a?.options??{}},metadata:r},createProvider:t.createProvider}}}class Lv{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,a=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,r=a==="low"||a==="medium"||a==="high"?a:void 0,o=typeof n==="boolean"||r!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:r,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:e.options?.metadata??this.defaults?.metadata,reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}class Fv{registry;logger;constructor(e={}){if(this.registry=new _o(e.fetch),this.logger=e.logger,e.builtins!==!1){let t=new Set(e.builtins??ei.map((n)=>n.manifest.id));for(let n of ei)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new Lv(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),i=await(await n.createProvider(n.config)).stream({...e,modelId:t.model.id,providerId:t.provider.id},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger});return Rv(i)}}function ko(e){return new Fv(e)}function AI(){let e=new Map;for(let t of $o)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,a])=>[n,{...a}]))});return e}var ti=AI(),dt=new Map,We=new Map;function Ge(e){return We.get(e)??ti.get(e)}function Jv(){let e=Array.from(ti.keys()),t=Array.from(We.keys()).filter((n)=>!ti.has(n));return[...e,...t]}function _0(e){return ti.has(e)||We.has(e)}async function k0(e){return Ge(e)?.provider}function wo(e){return Ge(e)}async function So(e){return Ge(e)}async function w0(e){let n=Ge(e)?.models??{},a=dt.get(e);if(a)return{...n,...Object.fromEntries(a)};return n}async function S0(){return Jv().map((e)=>Ge(e)?.provider).filter((e)=>e!==void 0)}function I0(e){We.set(e.provider.id,e)}function x0(e,t,n){if(!dt.has(e))dt.set(e,new Map);dt.get(e)?.set(t,{...n,id:t})}function z0(e){return dt.delete(e),We.delete(e)}function U0(){dt.clear(),We.clear()}var E0=new Proxy({},{get(e,t){return Ge(t)},has(e,t){return ti.has(t)||We.has(t)},ownKeys(){return Jv()},getOwnPropertyDescriptor(e,t){let n=Ge(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var ct=new Map(ei.map((e)=>[e.manifest.id,e]));function DI(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"prompt-cache":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function zo(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxOutputTokens:t.maxTokens,capabilities:DI(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function Kv(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return wn;switch(t?.client){case"anthropic":return In;case"gemini":return xn;case"vertex":return zn;case"bedrock":return Un;case"openai-compatible":return Sn}switch(H(e)){case"openai-codex":case"openai-native":return wn;case"anthropic":case"minimax":return In;case"gemini":return xn;case"vertex":return zn;case"bedrock":return Un;case"mistral":return co;case"claude-code":return mo;case"openai-codex-cli":return fo;case"opencode":return po;case"dify":return vo;default:return Sn}}async function ZI(e){let t=H(e.providerId),n=H(si(e));if(ct.get(t)&&t===n)return;let i=await So(t)??(t!==n?await So(n):void 0);if(!i){let o=ct.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let r=ct.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>zo(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...r?.defaults??{},baseUrl:i.provider.baseUrl??r?.defaults?.baseUrl,apiKeyEnv:i.provider.env??r?.defaults?.apiKeyEnv},createProvider:r?.createProvider??Kv(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:r?.loadProvider}}function CI(e){let t=H(e.providerId),n=H(si(e));if(ct.get(t)&&t===n)return;let i=wo(t)??(t!==n?wo(n):void 0);if(!i){let o=ct.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let r=ct.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>zo(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...r?.defaults??{},baseUrl:i.provider.baseUrl??r?.defaults?.baseUrl,apiKeyEnv:i.provider.env??r?.defaults?.apiKeyEnv},createProvider:r?.createProvider??Kv(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:r?.loadProvider}}function RI(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let a of n.content)if(a.type==="tool_use"){if(t.set(a.id,a.name),a.call_id)t.set(a.call_id,a.name)}}return e.map((n)=>{let a=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:xo(),role:n.role,content:a,createdAt:Date.now()}})}function MI(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function Io(e,t,n,a,i){return{providerId:H(e.providerId),modelId:e.modelId,systemPrompt:t,messages:RI(n),tools:MI(a),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function Gv(e){let t=H(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let a=zo(t,n),{providerId:i,...r}=a;return r}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,credentialProvider:e.aws?.profile,authentication:e.aws?.authentication,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function Wv(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,a=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:a}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function LI(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class Uo{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return Io(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let a=ko({providerConfigs:[Gv(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger}),i=CI(this.config);if(i)a.registerProvider(i);let r=Io(this.config,e,t,n,this.abortSignal),o=`gw_${xo(10)}`,s=async function*(){for await(let l of await a.stream(r))yield Wv(o,l)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:LI(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function Hv(e){return new Uo(e)}async function Bv(e){let t=ko({providerConfigs:[Gv(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger}),n=await ZI(e);if(n)t.registerProvider(n);return new class extends Uo{createMessage(a,i,r){let o=Io(e,a,i,r,e.abortSignal),s=`gw_${xo(10)}`,l=async function*(){for await(let d of await t.stream(o))yield Wv(s,d)}();return l.id=s,l}}(e)}var mt=new Map;function FI(e,t){mt.set(e,{factory:t,isAsync:!1})}function JI(e,t){mt.set(e,{factory:t,isAsync:!0})}function Eo(e){return mt.has(e)}function Xv(e,t){let n=mt.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function Vv(e,t){let n=mt.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function Yv(e){return mt.get(e)?.isAsync??!1}function Qv(e){let t=H(e.providerId),n=e.routingProviderId?H(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function J0(e){let t=Qv(e),{providerId:n}=t;if(Eo(n)){if(Yv(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let a=Xv(n,t);if(a)return a}return Hv(t)}async function K0(e){let t=Qv(e),{providerId:n}=t;if(Eo(n)){let a=await Vv(n,t);if(a)return a}return Bv(t)}export{FI as registerHandler,JI as registerAsyncHandler,H as normalizeProviderId,jn as isBuiltInProviderId,K0 as createHandlerAsync,J0 as createHandler,oi as BUILT_IN_PROVIDER_IDS,ft as BUILT_IN_PROVIDER};
159
+ `)}v.write("payload.value = newResult;"),v.write("return payload;");let P=v.compile();return(L,S)=>P(p,L,S)},r,o=rt,s=!xt.jitless,l=s&&uu.value,d=t.catchall,c;e._zod.parse=(p,v)=>{c??(c=a.value);let f=p.value;if(!o(f))return p.issues.push({expected:"object",code:"invalid_type",input:f,inst:e}),p;if(s&&l&&v?.async===!1&&v.jitless!==!0){if(!r)r=i(t.shape);if(p=r(p,v),!d)return p;return sd([],f,p,v,c,e)}return n(p,v)}});Li=m("$ZodUnion",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.options.some((a)=>a._zod.optin==="optional")?"optional":void 0),E(e._zod,"optout",()=>t.options.some((a)=>a._zod.optout==="optional")?"optional":void 0),E(e._zod,"values",()=>{if(t.options.every((a)=>a._zod.values))return new Set(t.options.flatMap((a)=>Array.from(a._zod.values)));return}),E(e._zod,"pattern",()=>{if(t.options.every((a)=>a._zod.pattern)){let a=t.options.map((i)=>i._zod.pattern);return new RegExp(`^(${a.map((i)=>Zi(i.source)).join("|")})$`)}return});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(a,i)=>{if(n)return n(a,i);let r=!1,o=[];for(let s of t.options){let l=s._zod.run({value:a.value,issues:[]},i);if(l instanceof Promise)o.push(l),r=!0;else{if(l.issues.length===0)return l;o.push(l)}}if(!r)return ls(o,a,e,i);return Promise.all(o).then((s)=>{return ls(s,a,e,i)})}});dd=m("$ZodXor",(e,t)=>{Li.init(e,t),t.inclusive=!1;let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(a,i)=>{if(n)return n(a,i);let r=!1,o=[];for(let s of t.options){let l=s._zod.run({value:a.value,issues:[]},i);if(l instanceof Promise)o.push(l),r=!0;else o.push(l)}if(!r)return ds(o,a,e,i);return Promise.all(o).then((s)=>{return ds(s,a,e,i)})}}),cd=m("$ZodDiscriminatedUnion",(e,t)=>{t.inclusive=!1,Li.init(e,t);let n=e._zod.parse;E(e._zod,"propValues",()=>{let i={};for(let r of t.options){let o=r._zod.propValues;if(!o||Object.keys(o).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let[s,l]of Object.entries(o)){if(!i[s])i[s]=new Set;for(let d of l)i[s].add(d)}}return i});let a=jt(()=>{let i=t.options,r=new Map;for(let o of i){let s=o._zod.propValues?.[t.discriminator];if(!s||s.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(o)}"`);for(let l of s){if(r.has(l))throw Error(`Duplicate discriminator value "${String(l)}"`);r.set(l,o)}}return r});e._zod.parse=(i,r)=>{let o=i.value;if(!rt(o))return i.issues.push({code:"invalid_type",expected:"object",input:o,inst:e}),i;let s=a.value.get(o?.[t.discriminator]);if(s)return s._zod.run(i,r);if(t.unionFallback||r.direction==="backward")return n(i,r);return i.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",discriminator:t.discriminator,options:Array.from(a.value.keys()),input:o,path:[t.discriminator],inst:e}),i}}),md=m("$ZodIntersection",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value,r=t.left._zod.run({value:i,issues:[]},a),o=t.right._zod.run({value:i,issues:[]},a);if(r instanceof Promise||o instanceof Promise)return Promise.all([r,o]).then(([s,l])=>{return cs(n,s,l)});return cs(n,r,o)}});Nr=m("$ZodTuple",(e,t)=>{x.init(e,t);let n=t.items;e._zod.parse=(a,i)=>{let r=a.value;if(!Array.isArray(r))return a.issues.push({input:r,inst:e,expected:"tuple",code:"invalid_type"}),a;a.value=[];let o=[],s=ms(n,"optin"),l=ms(n,"optout");if(!t.rest){if(r.length<s)return a.issues.push({code:"too_small",minimum:s,inclusive:!0,input:r,inst:e,origin:"array"}),a;if(r.length>n.length)a.issues.push({code:"too_big",maximum:n.length,inclusive:!0,input:r,inst:e,origin:"array"})}let d=Array(n.length);for(let c=0;c<n.length;c++){let p=n[c]._zod.run({value:r[c],issues:[]},i);if(p instanceof Promise)o.push(p.then((v)=>{d[c]=v}));else d[c]=p}if(t.rest){let c=n.length-1,p=r.slice(n.length);for(let v of p){c++;let f=t.rest._zod.run({value:v,issues:[]},i);if(f instanceof Promise)o.push(f.then((y)=>fs(y,a,c)));else fs(f,a,c)}}if(o.length)return Promise.all(o).then(()=>ps(d,a,n,r,l));return ps(d,a,n,r,l)}});fd=m("$ZodRecord",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!Fe(i))return n.issues.push({expected:"record",code:"invalid_type",input:i,inst:e}),n;let r=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let d of o)if(typeof d==="string"||typeof d==="number"||typeof d==="symbol"){s.add(typeof d==="number"?d.toString():d);let c=t.keyType._zod.run({value:d,issues:[]},a);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length){n.issues.push({code:"invalid_key",origin:"record",issues:c.issues.map((f)=>Q(f,a,K())),input:d,path:[d],inst:e});continue}let p=c.value,v=t.valueType._zod.run({value:i[d],issues:[]},a);if(v instanceof Promise)r.push(v.then((f)=>{if(f.issues.length)n.issues.push(...re(d,f.issues));n.value[p]=f.value}));else{if(v.issues.length)n.issues.push(...re(d,v.issues));n.value[p]=v.value}}let l;for(let d in i)if(!s.has(d))l=l??[],l.push(d);if(l&&l.length>0)n.issues.push({code:"unrecognized_keys",input:i,inst:e,keys:l})}else{n.value={};for(let s of Reflect.ownKeys(i)){if(s==="__proto__")continue;if(!Object.prototype.propertyIsEnumerable.call(i,s))continue;let l=t.keyType._zod.run({value:s,issues:[]},a);if(l instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(typeof s==="string"&&xr.test(s)&&l.issues.length){let c=t.keyType._zod.run({value:Number(s),issues:[]},a);if(c instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(c.issues.length===0)l=c}if(l.issues.length){if(t.mode==="loose")n.value[s]=i[s];else n.issues.push({code:"invalid_key",origin:"record",issues:l.issues.map((c)=>Q(c,a,K())),input:s,path:[s],inst:e});continue}let d=t.valueType._zod.run({value:i[s],issues:[]},a);if(d instanceof Promise)r.push(d.then((c)=>{if(c.issues.length)n.issues.push(...re(s,c.issues));n.value[l.value]=c.value}));else{if(d.issues.length)n.issues.push(...re(s,d.issues));n.value[l.value]=d.value}}}if(r.length)return Promise.all(r).then(()=>n);return n}}),pd=m("$ZodMap",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!(i instanceof Map))return n.issues.push({expected:"map",code:"invalid_type",input:i,inst:e}),n;let r=[];n.value=new Map;for(let[o,s]of i){let l=t.keyType._zod.run({value:o,issues:[]},a),d=t.valueType._zod.run({value:s,issues:[]},a);if(l instanceof Promise||d instanceof Promise)r.push(Promise.all([l,d]).then(([c,p])=>{vs(c,p,n,o,i,e,a)}));else vs(l,d,n,o,i,e,a)}if(r.length)return Promise.all(r).then(()=>n);return n}});vd=m("$ZodSet",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(!(i instanceof Set))return n.issues.push({input:i,inst:e,expected:"set",code:"invalid_type"}),n;let r=[];n.value=new Set;for(let o of i){let s=t.valueType._zod.run({value:o,issues:[]},a);if(s instanceof Promise)r.push(s.then((l)=>gs(l,n)));else gs(s,n)}if(r.length)return Promise.all(r).then(()=>n);return n}});gd=m("$ZodEnum",(e,t)=>{x.init(e,t);let n=mr(t.entries),a=new Set(n);e._zod.values=a,e._zod.pattern=new RegExp(`^(${n.filter((i)=>Ui.has(typeof i)).map((i)=>typeof i==="string"?_e(i):i.toString()).join("|")})$`),e._zod.parse=(i,r)=>{let o=i.value;if(a.has(o))return i;return i.issues.push({code:"invalid_value",values:n,input:o,inst:e}),i}}),hd=m("$ZodLiteral",(e,t)=>{if(x.init(e,t),t.values.length===0)throw Error("Cannot create literal schema with no valid values");let n=new Set(t.values);e._zod.values=n,e._zod.pattern=new RegExp(`^(${t.values.map((a)=>typeof a==="string"?_e(a):a?_e(a.toString()):String(a)).join("|")})$`),e._zod.parse=(a,i)=>{let r=a.value;if(n.has(r))return a;return a.issues.push({code:"invalid_value",values:t.values,input:r,inst:e}),a}}),yd=m("$ZodFile",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{let i=n.value;if(i instanceof File)return n;return n.issues.push({expected:"file",code:"invalid_type",input:i,inst:e}),n}}),bd=m("$ZodTransform",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new Pt(e.constructor.name);let i=t.transform(n.value,n);if(a.async)return(i instanceof Promise?i:Promise.resolve(i)).then((r)=>{return n.value=r,n.fallback=!0,n});if(i instanceof Promise)throw new ze;return n.value=i,n.fallback=!0,n}});Ar=m("$ZodOptional",(e,t)=>{x.init(e,t),e._zod.optin="optional",e._zod.optout="optional",E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0}),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Zi(n.source)})?$`):void 0}),e._zod.parse=(n,a)=>{if(t.innerType._zod.optin==="optional"){let i=n.value,r=t.innerType._zod.run(n,a);if(r instanceof Promise)return r.then((o)=>hs(o,i));return hs(r,i)}if(n.value===void 0)return n;return t.innerType._zod.run(n,a)}}),$d=m("$ZodExactOptional",(e,t)=>{Ar.init(e,t),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"pattern",()=>t.innerType._zod.pattern),e._zod.parse=(n,a)=>{return t.innerType._zod.run(n,a)}}),_d=m("$ZodNullable",(e,t)=>{x.init(e,t),E(e._zod,"optin",()=>t.innerType._zod.optin),E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"pattern",()=>{let n=t.innerType._zod.pattern;return n?new RegExp(`^(${Zi(n.source)}|null)$`):void 0}),E(e._zod,"values",()=>{return t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0}),e._zod.parse=(n,a)=>{if(n.value===null)return n;return t.innerType._zod.run(n,a)}}),kd=m("$ZodDefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);if(n.value===void 0)return n.value=t.defaultValue,n;let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>ys(r,t));return ys(i,t)}});wd=m("$ZodPrefault",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);if(n.value===void 0)n.value=t.defaultValue;return t.innerType._zod.run(n,a)}}),Sd=m("$ZodNonOptional",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>{let n=t.innerType._zod.values;return n?new Set([...n].filter((a)=>a!==void 0)):void 0}),e._zod.parse=(n,a)=>{let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>bs(r,e));return bs(i,e)}});Id=m("$ZodSuccess",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new Pt("ZodSuccess");let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>{return n.value=r.issues.length===0,n});return n.value=i.issues.length===0,n}}),xd=m("$ZodCatch",(e,t)=>{x.init(e,t),e._zod.optin="optional",E(e._zod,"optout",()=>t.innerType._zod.optout),E(e._zod,"values",()=>t.innerType._zod.values),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>{if(n.value=r.value,r.issues.length)n.value=t.catchValue({...n,error:{issues:r.issues.map((o)=>Q(o,a,K()))},input:n.value}),n.issues=[],n.fallback=!0;return n});if(n.value=i.value,i.issues.length)n.value=t.catchValue({...n,error:{issues:i.issues.map((r)=>Q(r,a,K()))},input:n.value}),n.issues=[],n.fallback=!0;return n}}),zd=m("$ZodNaN",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{if(typeof n.value!=="number"||!Number.isNaN(n.value))return n.issues.push({input:n.value,inst:e,expected:"nan",code:"invalid_type"}),n;return n}}),Dr=m("$ZodPipe",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,a)=>{if(a.direction==="backward"){let r=t.out._zod.run(n,a);if(r instanceof Promise)return r.then((o)=>bi(o,t.in,a));return bi(r,t.in,a)}let i=t.in._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>bi(r,t.out,a));return bi(i,t.out,a)}});Zr=m("$ZodCodec",(e,t)=>{x.init(e,t),E(e._zod,"values",()=>t.in._zod.values),E(e._zod,"optin",()=>t.in._zod.optin),E(e._zod,"optout",()=>t.out._zod.optout),E(e._zod,"propValues",()=>t.in._zod.propValues),e._zod.parse=(n,a)=>{if((a.direction||"forward")==="forward"){let i=t.in._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>$i(r,t,a));return $i(i,t,a)}else{let i=t.out._zod.run(n,a);if(i instanceof Promise)return i.then((r)=>$i(r,t,a));return $i(i,t,a)}}});Ud=m("$ZodPreprocess",(e,t)=>{Dr.init(e,t)}),Ed=m("$ZodReadonly",(e,t)=>{x.init(e,t),E(e._zod,"propValues",()=>t.innerType._zod.propValues),E(e._zod,"values",()=>t.innerType._zod.values),E(e._zod,"optin",()=>t.innerType?._zod?.optin),E(e._zod,"optout",()=>t.innerType?._zod?.optout),e._zod.parse=(n,a)=>{if(a.direction==="backward")return t.innerType._zod.run(n,a);let i=t.innerType._zod.run(n,a);if(i instanceof Promise)return i.then($s);return $s(i)}});Td=m("$ZodTemplateLiteral",(e,t)=>{x.init(e,t);let n=[];for(let a of t.parts)if(typeof a==="object"&&a!==null){if(!a._zod.pattern)throw Error(`Invalid template literal part, no pattern found: ${[...a._zod.traits].shift()}`);let i=a._zod.pattern instanceof RegExp?a._zod.pattern.source:a._zod.pattern;if(!i)throw Error(`Invalid template literal part: ${a._zod.traits}`);let r=i.startsWith("^")?1:0,o=i.endsWith("$")?i.length-1:i.length;n.push(i.slice(r,o))}else if(a===null||du.has(typeof a))n.push(_e(`${a}`));else throw Error(`Invalid template literal part: ${a}`);e._zod.pattern=new RegExp(`^${n.join("")}$`),e._zod.parse=(a,i)=>{if(typeof a.value!=="string")return a.issues.push({input:a.value,inst:e,expected:"string",code:"invalid_type"}),a;if(e._zod.pattern.lastIndex=0,!e._zod.pattern.test(a.value))return a.issues.push({input:a.value,inst:e,code:"invalid_format",format:t.format??"template_literal",pattern:e._zod.pattern.source}),a;return a}}),Od=m("$ZodFunction",(e,t)=>{return x.init(e,t),e._def=t,e._zod.def=t,e.implement=(n)=>{if(typeof n!=="function")throw Error("implement() must be called with a function");return function(...a){let i=e._def.input?er(e._def.input,a):a,r=Reflect.apply(n,this,i);if(e._def.output)return er(e._def.output,r);return r}},e.implementAsync=(n)=>{if(typeof n!=="function")throw Error("implementAsync() must be called with a function");return async function(...a){let i=e._def.input?await tr(e._def.input,a):a,r=await Reflect.apply(n,this,i);if(e._def.output)return await tr(e._def.output,r);return r}},e._zod.parse=(n,a)=>{if(typeof n.value!=="function")return n.issues.push({code:"invalid_type",expected:"function",input:n.value,inst:e}),n;if(e._def.output&&e._def.output._zod.def.type==="promise")n.value=e.implementAsync(n.value);else n.value=e.implement(n.value);return n},e.input=(...n)=>{let a=e.constructor;if(Array.isArray(n[0]))return new a({type:"function",input:new Nr({type:"tuple",items:n[0],rest:n[1]}),output:e._def.output});return new a({type:"function",input:n[0],output:e._def.output})},e.output=(n)=>{return new e.constructor({type:"function",input:e._def.input,output:n})},e}),Pd=m("$ZodPromise",(e,t)=>{x.init(e,t),e._zod.parse=(n,a)=>{return Promise.resolve(n.value).then((i)=>t.innerType._zod.run({value:i,issues:[]},a))}}),jd=m("$ZodLazy",(e,t)=>{x.init(e,t),E(e._zod,"innerType",()=>{let n=t;if(!n._cachedInner)n._cachedInner=t.getter();return n._cachedInner}),E(e._zod,"pattern",()=>e._zod.innerType?._zod?.pattern),E(e._zod,"propValues",()=>e._zod.innerType?._zod?.propValues),E(e._zod,"optin",()=>e._zod.innerType?._zod?.optin??void 0),E(e._zod,"optout",()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(n,a)=>{return e._zod.innerType._zod.run(n,a)}}),Nd=m("$ZodCustom",(e,t)=>{R.init(e,t),x.init(e,t),e._zod.parse=(n,a)=>{return n},e._zod.check=(n)=>{let a=n.value,i=t.fn(a);if(i instanceof Promise)return i.then((r)=>_s(r,n,a,e));_s(i,n,a,e);return}});Cr={};ke(Cr,{zhTW:()=>h$,zhCN:()=>v$,yo:()=>b$,vi:()=>f$,uz:()=>c$,ur:()=>l$,uk:()=>Zd,ua:()=>s$,tr:()=>a$,th:()=>n$,ta:()=>t$,sv:()=>Qb,sl:()=>Yb,ru:()=>Xb,ro:()=>Bb,pt:()=>Gb,ps:()=>Mb,pl:()=>Jb,ota:()=>Rb,no:()=>Zb,nl:()=>Ab,ms:()=>jb,mk:()=>Ob,lt:()=>Eb,ko:()=>zb,km:()=>Dd,kh:()=>Ib,ka:()=>wb,ja:()=>_b,it:()=>bb,is:()=>hb,id:()=>vb,hy:()=>fb,hu:()=>cb,hr:()=>lb,he:()=>sb,frCA:()=>ab,fr:()=>nb,fi:()=>tb,fa:()=>Qy,es:()=>Yy,eo:()=>Xy,en:()=>Ad,el:()=>Wy,de:()=>Ky,da:()=>Fy,cs:()=>Ly,ca:()=>Cy,bg:()=>Dy,be:()=>Ny,az:()=>Py,ar:()=>Ty});Cd=Symbol("ZodOutput"),Rd=Symbol("ZodInput");(xs=globalThis).__zod_globalRegistry??(xs.__zod_globalRegistry=Lr());ae=globalThis.__zod_globalRegistry;Jd={Any:null,Minute:-1,Second:0,Millisecond:3,Microsecond:6};J$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},nr={string:zc,number:Uc,boolean:Ec,bigint:Tc,symbol:Oc,null:Pc,undefined:jc,void:Nc,never:Ac,any:Dc,unknown:Zc,date:Cc,enum:Rc,literal:Lc,nan:Mc,template_literal:Fc,file:Jc,success:Kc,custom:Gc,function:Wc,transform:Bc,map:Hc,set:Xc,array:Vc,object:Yc,union:ma,intersection:qc,tuple:Qc,record:em,nullable:tm,nonoptional:im,default:nm,prefault:rm,catch:am,pipe:om,readonly:sm,promise:um,optional:fa,lazy:lm};K$={},mm={};ke(mm,{xor:()=>kf,xid:()=>Km,void:()=>gf,uuidv7:()=>Dm,uuidv6:()=>Am,uuidv4:()=>Nm,uuid:()=>jm,url:()=>Zm,unknown:()=>Ke,union:()=>_n,undefined:()=>pf,ulid:()=>Jm,uint64:()=>mf,uint32:()=>lf,tuple:()=>Da,transform:()=>wn,templateLiteral:()=>Df,symbol:()=>ff,superRefine:()=>co,success:()=>Pf,stringbool:()=>Jf,stringFormat:()=>tf,string:()=>Ut,strictObject:()=>$f,set:()=>zf,refine:()=>lo,record:()=>Za,readonly:()=>no,promise:()=>Zf,preprocess:()=>Gf,prefault:()=>Xa,pipe:()=>ji,partialRecord:()=>Sf,optional:()=>Tt,object:()=>bf,number:()=>$a,nullish:()=>Of,nullable:()=>Ot,null:()=>Ia,nonoptional:()=>Va,never:()=>bn,nativeEnum:()=>Uf,nanoid:()=>Lm,nan:()=>jf,meta:()=>Mf,map:()=>xf,mac:()=>Bm,looseRecord:()=>If,looseObject:()=>_f,literal:()=>Ef,lazy:()=>oo,ksuid:()=>Gm,keyof:()=>yf,jwt:()=>ef,json:()=>Kf,ipv6:()=>Hm,ipv4:()=>Wm,invertCodec:()=>Af,intersection:()=>Na,int64:()=>cf,int32:()=>uf,int:()=>Pi,instanceof:()=>Ff,httpUrl:()=>Cm,hostname:()=>nf,hex:()=>rf,hash:()=>af,guid:()=>Pm,function:()=>Ni,float64:()=>sf,float32:()=>of,file:()=>Tf,exactOptional:()=>Ka,enum:()=>kn,emoji:()=>Rm,email:()=>Om,e164:()=>Qm,discriminatedUnion:()=>wf,describe:()=>Lf,date:()=>hf,custom:()=>Rf,cuid2:()=>Fm,cuid:()=>Mm,codec:()=>Nf,cidrv6:()=>Vm,cidrv4:()=>Xm,check:()=>Cf,catch:()=>Qa,boolean:()=>_a,bigint:()=>df,base64url:()=>qm,base64:()=>Ym,array:()=>qt,any:()=>vf,_function:()=>Ni,_default:()=>Ba,_ZodString:()=>en,ZodXor:()=>Oa,ZodXID:()=>un,ZodVoid:()=>Ea,ZodUnknown:()=>za,ZodUnion:()=>ei,ZodUndefined:()=>wa,ZodUUID:()=>ye,ZodURL:()=>Ht,ZodULID:()=>sn,ZodType:()=>z,ZodTuple:()=>Aa,ZodTransform:()=>Fa,ZodTemplateLiteral:()=>ro,ZodSymbol:()=>ka,ZodSuccess:()=>Ya,ZodStringFormat:()=>D,ZodString:()=>Bt,ZodSet:()=>Ra,ZodRecord:()=>dt,ZodReadonly:()=>io,ZodPromise:()=>so,ZodPreprocess:()=>to,ZodPrefault:()=>Ha,ZodPipe:()=>ti,ZodOptional:()=>Sn,ZodObject:()=>Qt,ZodNumberFormat:()=>Be,ZodNumber:()=>Xt,ZodNullable:()=>Ga,ZodNull:()=>Sa,ZodNonOptional:()=>In,ZodNever:()=>Ua,ZodNanoID:()=>rn,ZodNaN:()=>eo,ZodMap:()=>Ca,ZodMAC:()=>ba,ZodLiteral:()=>La,ZodLazy:()=>ao,ZodKSUID:()=>ln,ZodJWT:()=>hn,ZodIntersection:()=>ja,ZodIPv6:()=>cn,ZodIPv4:()=>dn,ZodGUID:()=>Et,ZodFunction:()=>uo,ZodFile:()=>Ma,ZodExactOptional:()=>Ja,ZodEnum:()=>ct,ZodEmoji:()=>nn,ZodEmail:()=>tn,ZodE164:()=>gn,ZodDiscriminatedUnion:()=>Pa,ZodDefault:()=>Wa,ZodDate:()=>$n,ZodCustomStringFormat:()=>ft,ZodCustom:()=>ni,ZodCodec:()=>ii,ZodCatch:()=>qa,ZodCUID2:()=>on,ZodCUID:()=>an,ZodCIDRv6:()=>fn,ZodCIDRv4:()=>mn,ZodBoolean:()=>Vt,ZodBigIntFormat:()=>yn,ZodBigInt:()=>Yt,ZodBase64URL:()=>vn,ZodBase64:()=>pn,ZodArray:()=>Ta,ZodAny:()=>xa});fm={};ke(fm,{uppercase:()=>Ki,trim:()=>Vi,toUpperCase:()=>qi,toLowerCase:()=>Yi,startsWith:()=>Wi,slugify:()=>Qi,size:()=>Ft,regex:()=>Fi,property:()=>ca,positive:()=>sa,overwrite:()=>Se,normalize:()=>Xi,nonpositive:()=>la,nonnegative:()=>da,negative:()=>ua,multipleOf:()=>ot,minSize:()=>Oe,minLength:()=>Je,mime:()=>Hi,maxSize:()=>mt,maxLength:()=>Jt,lte:()=>oe,lt:()=>Ee,lowercase:()=>Ji,length:()=>Kt,includes:()=>Gi,gte:()=>Y,gt:()=>Te,endsWith:()=>Bi});pa={};ke(pa,{time:()=>gm,duration:()=>hm,datetime:()=>pm,date:()=>vm,ZodISOTime:()=>ha,ZodISODuration:()=>ya,ZodISODateTime:()=>va,ZodISODate:()=>ga});va=m("ZodISODateTime",(e,t)=>{jl.init(e,t),D.init(e,t)});ga=m("ZodISODate",(e,t)=>{Nl.init(e,t),D.init(e,t)});ha=m("ZodISOTime",(e,t)=>{Al.init(e,t),D.init(e,t)});ya=m("ZodISODuration",(e,t)=>{Dl.init(e,t),D.init(e,t)});G$=m("ZodError",ym),te=m("ZodError",ym,{Parent:Error}),bm=Nt(te),$m=At(te),_m=Dt(te),km=Zt(te),wm=hr(te),Sm=yr(te),Im=br(te),xm=$r(te),zm=_r(te),Um=kr(te),Em=wr(te),Tm=Sr(te),zs=new WeakMap;z=m("ZodType",(e,t)=>{return x.init(e,t),Object.assign(e["~standard"],{jsonSchema:{input:zt(e,"input"),output:zt(e,"output")}}),e.toJSONSchema=xc(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(n,a)=>bm(e,n,a,{callee:e.parse}),e.safeParse=(n,a)=>_m(e,n,a),e.parseAsync=async(n,a)=>$m(e,n,a,{callee:e.parseAsync}),e.safeParseAsync=async(n,a)=>km(e,n,a),e.spa=e.safeParseAsync,e.encode=(n,a)=>wm(e,n,a),e.decode=(n,a)=>Sm(e,n,a),e.encodeAsync=async(n,a)=>Im(e,n,a),e.decodeAsync=async(n,a)=>xm(e,n,a),e.safeEncode=(n,a)=>zm(e,n,a),e.safeDecode=(n,a)=>Um(e,n,a),e.safeEncodeAsync=async(n,a)=>Em(e,n,a),e.safeDecodeAsync=async(n,a)=>Tm(e,n,a),Wt(e,"ZodType",{check(...n){let a=this.def;return this.clone(U.mergeDefs(a,{checks:[...a.checks??[],...n.map((i)=>typeof i==="function"?{_zod:{check:i,def:{check:"custom"},onattach:[]}}:i)]}),{parent:!0})},with(...n){return this.check(...n)},clone(n,a){return se(this,n,a)},brand(){return this},register(n,a){return n.add(this,a),this},refine(n,a){return this.check(lo(n,a))},superRefine(n,a){return this.check(co(n,a))},overwrite(n){return this.check(Se(n))},optional(){return Tt(this)},exactOptional(){return Ka(this)},nullable(){return Ot(this)},nullish(){return Tt(Ot(this))},nonoptional(n){return Va(this,n)},array(){return qt(this)},or(n){return _n([this,n])},and(n){return Na(this,n)},transform(n){return ji(this,wn(n))},default(n){return Ba(this,n)},prefault(n){return Xa(this,n)},catch(n){return Qa(this,n)},pipe(n){return ji(this,n)},readonly(){return no(this)},describe(n){let a=this.clone();return ae.add(a,{description:n}),a},meta(...n){if(n.length===0)return ae.get(this);let a=this.clone();return ae.add(a,n[0]),a},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(n){return n(this)}}),Object.defineProperty(e,"description",{get(){return ae.get(e)?.description},configurable:!0}),e}),en=m("_ZodString",(e,t)=>{Mt.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>zc(e,a,i,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Wt(e,"_ZodString",{regex(...a){return this.check(Fi(...a))},includes(...a){return this.check(Gi(...a))},startsWith(...a){return this.check(Wi(...a))},endsWith(...a){return this.check(Bi(...a))},min(...a){return this.check(Je(...a))},max(...a){return this.check(Jt(...a))},length(...a){return this.check(Kt(...a))},nonempty(...a){return this.check(Je(1,...a))},lowercase(a){return this.check(Ji(a))},uppercase(a){return this.check(Ki(a))},trim(){return this.check(Vi())},normalize(...a){return this.check(Xi(...a))},toLowerCase(){return this.check(Yi())},toUpperCase(){return this.check(qi())},slugify(){return this.check(Qi())}})}),Bt=m("ZodString",(e,t)=>{Mt.init(e,t),en.init(e,t),e.email=(n)=>e.check(Mr(tn,n)),e.url=(n)=>e.check(Mi(Ht,n)),e.jwt=(n)=>e.check(oa(hn,n)),e.emoji=(n)=>e.check(Wr(nn,n)),e.guid=(n)=>e.check(Oi(Et,n)),e.uuid=(n)=>e.check(Fr(ye,n)),e.uuidv4=(n)=>e.check(Jr(ye,n)),e.uuidv6=(n)=>e.check(Kr(ye,n)),e.uuidv7=(n)=>e.check(Gr(ye,n)),e.nanoid=(n)=>e.check(Br(rn,n)),e.guid=(n)=>e.check(Oi(Et,n)),e.cuid=(n)=>e.check(Hr(an,n)),e.cuid2=(n)=>e.check(Xr(on,n)),e.ulid=(n)=>e.check(Vr(sn,n)),e.base64=(n)=>e.check(na(pn,n)),e.base64url=(n)=>e.check(ra(vn,n)),e.xid=(n)=>e.check(Yr(un,n)),e.ksuid=(n)=>e.check(qr(ln,n)),e.ipv4=(n)=>e.check(Qr(dn,n)),e.ipv6=(n)=>e.check(ea(cn,n)),e.cidrv4=(n)=>e.check(ta(mn,n)),e.cidrv6=(n)=>e.check(ia(fn,n)),e.e164=(n)=>e.check(aa(gn,n)),e.datetime=(n)=>e.check(pm(n)),e.date=(n)=>e.check(vm(n)),e.time=(n)=>e.check(gm(n)),e.duration=(n)=>e.check(hm(n))});D=m("ZodStringFormat",(e,t)=>{A.init(e,t),en.init(e,t)}),tn=m("ZodEmail",(e,t)=>{Sl.init(e,t),D.init(e,t)});Et=m("ZodGUID",(e,t)=>{kl.init(e,t),D.init(e,t)});ye=m("ZodUUID",(e,t)=>{wl.init(e,t),D.init(e,t)});Ht=m("ZodURL",(e,t)=>{Il.init(e,t),D.init(e,t)});nn=m("ZodEmoji",(e,t)=>{xl.init(e,t),D.init(e,t)});rn=m("ZodNanoID",(e,t)=>{zl.init(e,t),D.init(e,t)});an=m("ZodCUID",(e,t)=>{Ul.init(e,t),D.init(e,t)});on=m("ZodCUID2",(e,t)=>{El.init(e,t),D.init(e,t)});sn=m("ZodULID",(e,t)=>{Tl.init(e,t),D.init(e,t)});un=m("ZodXID",(e,t)=>{Ol.init(e,t),D.init(e,t)});ln=m("ZodKSUID",(e,t)=>{Pl.init(e,t),D.init(e,t)});dn=m("ZodIPv4",(e,t)=>{Zl.init(e,t),D.init(e,t)});ba=m("ZodMAC",(e,t)=>{Rl.init(e,t),D.init(e,t)});cn=m("ZodIPv6",(e,t)=>{Cl.init(e,t),D.init(e,t)});mn=m("ZodCIDRv4",(e,t)=>{Ll.init(e,t),D.init(e,t)});fn=m("ZodCIDRv6",(e,t)=>{Ml.init(e,t),D.init(e,t)});pn=m("ZodBase64",(e,t)=>{Fl.init(e,t),D.init(e,t)});vn=m("ZodBase64URL",(e,t)=>{Kl.init(e,t),D.init(e,t)});gn=m("ZodE164",(e,t)=>{Gl.init(e,t),D.init(e,t)});hn=m("ZodJWT",(e,t)=>{Bl.init(e,t),D.init(e,t)});ft=m("ZodCustomStringFormat",(e,t)=>{Hl.init(e,t),D.init(e,t)});Xt=m("ZodNumber",(e,t)=>{Or.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>Uc(e,a,i,r),Wt(e,"ZodNumber",{gt(a,i){return this.check(Te(a,i))},gte(a,i){return this.check(Y(a,i))},min(a,i){return this.check(Y(a,i))},lt(a,i){return this.check(Ee(a,i))},lte(a,i){return this.check(oe(a,i))},max(a,i){return this.check(oe(a,i))},int(a){return this.check(Pi(a))},safe(a){return this.check(Pi(a))},positive(a){return this.check(Te(0,a))},nonnegative(a){return this.check(Y(0,a))},negative(a){return this.check(Ee(0,a))},nonpositive(a){return this.check(oe(0,a))},multipleOf(a,i){return this.check(ot(a,i))},step(a,i){return this.check(ot(a,i))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??Number.NEGATIVE_INFINITY,n.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,e.maxValue=Math.min(n.maximum??Number.POSITIVE_INFINITY,n.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,e.isInt=(n.format??"").includes("int")||Number.isSafeInteger(n.multipleOf??0.5),e.isFinite=!0,e.format=n.format??null});Be=m("ZodNumberFormat",(e,t)=>{Xl.init(e,t),Xt.init(e,t)});Vt=m("ZodBoolean",(e,t)=>{Pr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Ec(e,n,a,i)});Yt=m("ZodBigInt",(e,t)=>{jr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>Tc(e,a,i,r),e.gte=(a,i)=>e.check(Y(a,i)),e.min=(a,i)=>e.check(Y(a,i)),e.gt=(a,i)=>e.check(Te(a,i)),e.gte=(a,i)=>e.check(Y(a,i)),e.min=(a,i)=>e.check(Y(a,i)),e.lt=(a,i)=>e.check(Ee(a,i)),e.lte=(a,i)=>e.check(oe(a,i)),e.max=(a,i)=>e.check(oe(a,i)),e.positive=(a)=>e.check(Te(BigInt(0),a)),e.negative=(a)=>e.check(Ee(BigInt(0),a)),e.nonpositive=(a)=>e.check(oe(BigInt(0),a)),e.nonnegative=(a)=>e.check(Y(BigInt(0),a)),e.multipleOf=(a,i)=>e.check(ot(a,i));let n=e._zod.bag;e.minValue=n.minimum??null,e.maxValue=n.maximum??null,e.format=n.format??null});yn=m("ZodBigIntFormat",(e,t)=>{Vl.init(e,t),Yt.init(e,t)});ka=m("ZodSymbol",(e,t)=>{Yl.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Oc(e,n,a,i)});wa=m("ZodUndefined",(e,t)=>{ql.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>jc(e,n,a,i)});Sa=m("ZodNull",(e,t)=>{Ql.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Pc(e,n,a,i)});xa=m("ZodAny",(e,t)=>{ed.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Dc(e,n,a,i)});za=m("ZodUnknown",(e,t)=>{td.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Zc(e,n,a,i)});Ua=m("ZodNever",(e,t)=>{id.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Ac(e,n,a,i)});Ea=m("ZodVoid",(e,t)=>{nd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Nc(e,n,a,i)});$n=m("ZodDate",(e,t)=>{rd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>Cc(e,a,i,r),e.min=(a,i)=>e.check(Y(a,i)),e.max=(a,i)=>e.check(oe(a,i));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});Ta=m("ZodArray",(e,t)=>{ad.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Vc(e,n,a,i),e.element=t.element,Wt(e,"ZodArray",{min(n,a){return this.check(Je(n,a))},nonempty(n){return this.check(Je(1,n))},max(n,a){return this.check(Jt(n,a))},length(n,a){return this.check(Kt(n,a))},unwrap(){return this.element}})});Qt=m("ZodObject",(e,t)=>{ld.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Yc(e,n,a,i),U.defineLazy(e,"shape",()=>{return t.shape}),Wt(e,"ZodObject",{keyof(){return kn(Object.keys(this._zod.def.shape))},catchall(n){return this.clone({...this._zod.def,catchall:n})},passthrough(){return this.clone({...this._zod.def,catchall:Ke()})},loose(){return this.clone({...this._zod.def,catchall:Ke()})},strict(){return this.clone({...this._zod.def,catchall:bn()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(n){return U.extend(this,n)},safeExtend(n){return U.safeExtend(this,n)},merge(n){return U.merge(this,n)},pick(n){return U.pick(this,n)},omit(n){return U.omit(this,n)},partial(...n){return U.partial(Sn,this,n[0])},required(...n){return U.required(In,this,n[0])}})});ei=m("ZodUnion",(e,t)=>{Li.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>ma(e,n,a,i),e.options=t.options});Oa=m("ZodXor",(e,t)=>{ei.init(e,t),dd.init(e,t),e._zod.processJSONSchema=(n,a,i)=>ma(e,n,a,i),e.options=t.options});Pa=m("ZodDiscriminatedUnion",(e,t)=>{ei.init(e,t),cd.init(e,t)});ja=m("ZodIntersection",(e,t)=>{md.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>qc(e,n,a,i)});Aa=m("ZodTuple",(e,t)=>{Nr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Qc(e,n,a,i),e.rest=(n)=>e.clone({...e._zod.def,rest:n})});dt=m("ZodRecord",(e,t)=>{fd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>em(e,n,a,i),e.keyType=t.keyType,e.valueType=t.valueType});Ca=m("ZodMap",(e,t)=>{pd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Hc(e,n,a,i),e.keyType=t.keyType,e.valueType=t.valueType,e.min=(...n)=>e.check(Oe(...n)),e.nonempty=(n)=>e.check(Oe(1,n)),e.max=(...n)=>e.check(mt(...n)),e.size=(...n)=>e.check(Ft(...n))});Ra=m("ZodSet",(e,t)=>{vd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Xc(e,n,a,i),e.min=(...n)=>e.check(Oe(...n)),e.nonempty=(n)=>e.check(Oe(1,n)),e.max=(...n)=>e.check(mt(...n)),e.size=(...n)=>e.check(Ft(...n))});ct=m("ZodEnum",(e,t)=>{gd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(a,i,r)=>Rc(e,a,i,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(a,i)=>{let r={};for(let o of a)if(n.has(o))r[o]=t.entries[o];else throw Error(`Key ${o} not found in enum`);return new ct({...t,checks:[],...U.normalizeParams(i),entries:r})},e.exclude=(a,i)=>{let r={...t.entries};for(let o of a)if(n.has(o))delete r[o];else throw Error(`Key ${o} not found in enum`);return new ct({...t,checks:[],...U.normalizeParams(i),entries:r})}});La=m("ZodLiteral",(e,t)=>{hd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Lc(e,n,a,i),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});Ma=m("ZodFile",(e,t)=>{yd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Jc(e,n,a,i),e.min=(n,a)=>e.check(Oe(n,a)),e.max=(n,a)=>e.check(mt(n,a)),e.mime=(n,a)=>e.check(Hi(Array.isArray(n)?n:[n],a))});Fa=m("ZodTransform",(e,t)=>{bd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Bc(e,n,a,i),e._zod.parse=(n,a)=>{if(a.direction==="backward")throw new Pt(e.constructor.name);n.addIssue=(r)=>{if(typeof r==="string")n.issues.push(U.issue(r,n.value,t));else{let o=r;if(o.fatal)o.continue=!1;o.code??(o.code="custom"),o.input??(o.input=n.value),o.inst??(o.inst=e),n.issues.push(U.issue(o))}};let i=t.transform(n.value,n);if(i instanceof Promise)return i.then((r)=>{return n.value=r,n.fallback=!0,n});return n.value=i,n.fallback=!0,n}});Sn=m("ZodOptional",(e,t)=>{Ar.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>fa(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ja=m("ZodExactOptional",(e,t)=>{$d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>fa(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ga=m("ZodNullable",(e,t)=>{_d.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>tm(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Wa=m("ZodDefault",(e,t)=>{kd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>nm(e,n,a,i),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});Ha=m("ZodPrefault",(e,t)=>{wd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>rm(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});In=m("ZodNonOptional",(e,t)=>{Sd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>im(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});Ya=m("ZodSuccess",(e,t)=>{Id.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Kc(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});qa=m("ZodCatch",(e,t)=>{xd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>am(e,n,a,i),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});eo=m("ZodNaN",(e,t)=>{zd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Mc(e,n,a,i)});ti=m("ZodPipe",(e,t)=>{Dr.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>om(e,n,a,i),e.in=t.in,e.out=t.out});ii=m("ZodCodec",(e,t)=>{ti.init(e,t),Zr.init(e,t)});to=m("ZodPreprocess",(e,t)=>{ti.init(e,t),Ud.init(e,t)}),io=m("ZodReadonly",(e,t)=>{Ed.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>sm(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});ro=m("ZodTemplateLiteral",(e,t)=>{Td.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Fc(e,n,a,i)});ao=m("ZodLazy",(e,t)=>{jd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>lm(e,n,a,i),e.unwrap=()=>e._zod.def.getter()});so=m("ZodPromise",(e,t)=>{Pd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>um(e,n,a,i),e.unwrap=()=>e._zod.def.innerType});uo=m("ZodFunction",(e,t)=>{Od.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Wc(e,n,a,i)});ni=m("ZodCustom",(e,t)=>{Nd.init(e,t),z.init(e,t),e._zod.processJSONSchema=(n,a,i)=>Gc(e,n,a,i)});Lf=wc,Mf=Sc;W$={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};(function(e){})(rr||(rr={}));b={...mm,...fm,iso:pa},X$=new Set(["$schema","$ref","$defs","definitions","$id","id","$comment","$anchor","$vocabulary","$dynamicRef","$dynamicAnchor","type","enum","const","anyOf","oneOf","allOf","not","properties","required","additionalProperties","patternProperties","propertyNames","minProperties","maxProperties","items","prefixItems","additionalItems","minItems","maxItems","uniqueItems","contains","minContains","maxContains","minLength","maxLength","pattern","format","minimum","maximum","exclusiveMinimum","exclusiveMaximum","multipleOf","description","default","contentEncoding","contentMediaType","contentSchema","unevaluatedItems","unevaluatedProperties","if","then","else","dependentSchemas","dependentRequired","nullable","readOnly"]);Bf={};ke(Bf,{string:()=>Q$,number:()=>e_,date:()=>n_,boolean:()=>t_,bigint:()=>i_});K(Ad());mo=u,Hf=u.object({id:u.string(),temperature:u.number().optional(),isR1FormatRequired:u.boolean().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),inputPrice:u.number().optional(),outputPrice:u.number().optional(),supportsImages:u.boolean().optional()}),Xf=u.object({models:u.array(Hf).optional(),openAiBaseUrl:u.string().optional(),openAiHeaders:u.record(u.string(),u.string()).optional(),azureApiVersion:u.string().optional(),azureIdentity:u.boolean().optional()}),Vf=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),Yf=u.object({name:u.string(),baseModelId:u.string(),thinkingBudgetTokens:u.number().optional()}),qf=u.object({models:u.array(Vf).optional(),customModels:u.array(Yf).optional(),awsRegion:u.string().optional(),awsUseCrossRegionInference:u.boolean().optional(),awsUseGlobalInference:u.boolean().optional(),awsBedrockUsePromptCache:u.boolean().optional(),awsBedrockEndpoint:u.string().optional()}),Qf=u.object({id:u.string()}),ep=u.object({models:u.array(Qf).optional()}),tp=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),ip=u.object({models:u.array(tp).optional(),vertexProjectId:u.string().optional(),vertexRegion:u.string().optional()}),np=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional(),promptCachingEnabled:u.boolean().optional()}),rp=u.object({models:u.array(np).optional(),baseUrl:u.string().optional()}),ap=u.object({id:u.string(),thinkingBudgetTokens:u.number().optional()}),op=u.object({models:u.array(ap).optional(),baseUrl:u.string().optional()}),r_=u.object({OpenAiCompatible:Xf.optional(),AwsBedrock:qf.optional(),Cline:ep.optional(),Vertex:ip.optional(),LiteLLM:rp.optional(),Anthropic:op.optional()}),sp=u.object({id:u.string()}),up=u.object({name:u.string(),url:u.string(),alwaysEnabled:u.boolean().optional(),headers:u.record(u.string(),u.string()).optional()}),ar=u.object({alwaysEnabled:u.boolean(),name:u.string(),contents:u.string()}),wi=u.object({bucket:u.string(),accessKeyId:u.string(),secretAccessKey:u.string(),region:u.string().optional(),endpoint:u.string().optional(),accountId:u.string().optional()}),lp=u.object({enabled:u.boolean().optional(),type:u.union([u.literal("s3_access_keys"),u.literal("r2_access_keys"),u.literal("azure_access_keys")]).optional(),s3AccessSettings:wi.optional(),r2AccessSettings:wi.optional(),azureAccessSettings:wi.optional()}),dp=u.object({promptUploading:lp.optional()}),a_=u.object({version:u.string(),providerSettings:r_.optional(),telemetryEnabled:u.boolean().optional(),kanbanEnabled:u.boolean().optional(),mcpMarketplaceEnabled:u.boolean().optional(),allowedMCPServers:u.array(sp).optional(),remoteMCPServers:u.array(up).optional(),blockPersonalRemoteMCPServers:u.boolean().optional(),yoloModeAllowed:u.boolean().optional(),openTelemetryEnabled:u.boolean().optional(),openTelemetryMetricsExporter:u.string().optional(),openTelemetryLogsExporter:u.string().optional(),openTelemetryOtlpProtocol:u.string().optional(),openTelemetryOtlpEndpoint:u.string().optional(),openTelemetryOtlpHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpMetricsProtocol:u.string().optional(),openTelemetryOtlpMetricsEndpoint:u.string().optional(),openTelemetryOtlpMetricsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryOtlpLogsProtocol:u.string().optional(),openTelemetryOtlpLogsEndpoint:u.string().optional(),openTelemetryOtlpLogsHeaders:u.record(u.string(),u.string()).optional(),openTelemetryMetricExportInterval:u.number().optional(),openTelemetryOtlpInsecure:u.boolean().optional(),openTelemetryLogBatchSize:u.number().optional(),openTelemetryLogBatchTimeout:u.number().optional(),openTelemetryLogMaxQueueSize:u.number().optional(),enterpriseTelemetry:dp.optional(),globalRules:u.array(ar).optional(),globalWorkflows:u.array(ar).optional()}),o_=u.record(u.string(),u.string()),cp=u.enum(["default","openai-responses","r1"]),s_={DEFAULT:"default",OPENAI_RESPONSES:"openai-responses",R1:"r1"},mp=u.enum(["images","tools","streaming","prompt-cache","reasoning","reasoning-effort","computer-use","global-endpoint","structured_output","temperature","files"]),fp=u.enum(["active","preview","deprecated","legacy"]),pp=u.object({input:u.number().optional(),output:u.number().optional(),cacheWrite:u.number().optional(),cacheRead:u.number().optional()}),vp=u.object({maxBudget:u.number().optional(),outputPrice:u.number().optional(),thinkingLevel:u.enum(["low","high"]).optional()}),fo=u.object({id:u.string(),name:u.string().optional(),description:u.string().optional(),maxTokens:u.number().optional(),contextWindow:u.number().optional(),maxInputTokens:u.number().optional(),capabilities:u.array(mp).optional(),apiFormat:cp.optional(),systemRole:u.enum(["system","developer"]).optional(),temperature:u.number().optional(),pricing:pp.optional(),thinkingConfig:vp.optional(),status:fp.optional(),deprecationNotice:u.string().optional(),replacedBy:u.string().optional(),releaseDate:u.string().optional(),deprecationDate:u.string().optional(),family:u.string().optional()}),gp=u.object({id:u.string(),name:u.string(),input:u.unknown(),output:u.unknown(),error:u.string().optional(),durationMs:u.number(),startedAt:u.date(),endedAt:u.date()}),hp=u.enum(["completed","max_iterations","aborted","mistake_limit","error"]),yp=u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()}),u_=u.object({text:u.string(),usage:yp,messages:u.array(u.custom()),toolCalls:u.array(gp),iterations:u.number(),finishReason:hp,model:u.object({id:u.string(),provider:u.string(),info:fo.optional()}),startedAt:u.date(),endedAt:u.date(),durationMs:u.number()}),bp=u.enum(["low","medium","high","xhigh"]),l_=u.object({sessionId:u.string().optional(),providerId:u.string(),modelId:u.string(),apiKey:u.string().optional(),baseUrl:u.string().url().optional(),headers:u.record(u.string(),u.string()).optional(),knownModels:u.record(u.string(),fo).optional(),providerConfig:u.unknown().optional(),initialMessages:u.array(u.custom()).optional(),systemPrompt:u.string(),tools:u.array(u.custom()),maxIterations:u.number().positive().optional(),maxParallelToolCalls:u.number().int().positive().default(8),maxTokensPerTurn:u.number().positive().optional(),apiTimeoutMs:u.number().positive().default(180000),userFileContentLoader:u.function().input([u.string()]).output(u.promise(u.string())).optional(),toolContextMetadata:u.record(u.string(),u.unknown()).optional(),execution:u.object({maxConsecutiveMistakes:u.number().int().positive().optional(),reminderAfterIterations:u.number().nonnegative().optional(),reminderText:u.string().optional(),loopDetection:u.union([u.literal(!1),u.object({softThreshold:u.number().int().positive().optional(),hardThreshold:u.number().int().positive().optional()})]).optional()}).optional(),reasoningEffort:bp.optional(),thinkingBudgetTokens:u.number().positive().optional(),thinking:u.boolean().optional(),onEvent:u.function().input([u.custom()]).output(u.void()).optional(),hooks:u.custom().optional(),parentAgentId:u.string().optional(),extensions:u.array(u.custom()).optional(),hookErrorMode:u.enum(["ignore","throw"]).default("ignore"),toolPolicies:u.record(u.string(),u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()})).optional(),requestToolApproval:u.function().input([u.object({sessionId:u.string(),agentId:u.string(),conversationId:u.string(),iteration:u.number(),toolCallId:u.string(),toolName:u.string(),input:u.unknown(),policy:u.object({enabled:u.boolean().optional(),autoApprove:u.boolean().optional()}).default({})})]).output(u.union([u.object({approved:u.boolean(),reason:u.string().optional()}),u.promise(u.object({approved:u.boolean(),reason:u.string().optional()}))])).optional(),onConsecutiveMistakeLimitReached:u.function().input([u.object({iteration:u.number().int().positive(),consecutiveMistakes:u.number().int().positive(),maxConsecutiveMistakes:u.number().int().positive(),reason:u.enum(["api_error","invalid_tool_call","tool_execution_failed"]),details:u.string().optional()})]).output(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()}),u.promise(u.union([u.object({action:u.literal("continue"),guidance:u.string().optional()}),u.object({action:u.literal("stop"),reason:u.string().optional()})]))])).optional(),logger:u.custom().optional(),extensionContext:u.custom().optional(),abortSignal:u.custom().optional()}),$p=u.enum(["connector.started","connector.stopping","session.authorize","message.received","message.denied","message.completed","message.failed","session.started","session.reused","session.reset","schedule.delivery.started","schedule.delivery.sent","schedule.delivery.failed"]),_p=u.object({id:u.string().optional(),label:u.string().optional(),role:u.string().optional(),participantKey:u.string().optional(),participantLabel:u.string().optional(),platformUserId:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),kp=u.object({source:u.string(),sourceEvent:u.string(),threadId:u.string(),channelId:u.string(),isDM:u.boolean(),sessionId:u.string().optional(),workspaceRoot:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),d_=u.object({actor:_p,context:kp,payload:u.record(u.string(),u.unknown()).optional()}),c_=u.object({action:u.enum(["allow","deny"]).default("allow"),message:u.string().optional(),reason:u.string().optional(),metadata:u.record(u.string(),u.unknown()).optional()}),m_=u.object({adapter:u.string(),botUserName:u.string().optional(),event:$p,payload:u.record(u.string(),u.unknown()),ts:u.string()}),wp=[];p_=["hooks","tools","commands","rules","messageBuilders","providers","automationEvents"],v_=new Set(p_);b_=[".js",".ts"],zp=u.enum(["agent_start","agent_resume","agent_abort","agent_end","agent_error","tool_call","tool_result","prompt_submit","pre_compact","session_shutdown"]),Ge=u.record(u.string(),u.string()),$_=u.object({toolName:u.string(),parameters:Ge}),__=u.object({toolName:u.string(),parameters:Ge,result:u.string(),success:u.boolean(),executionTimeMs:u.number()}),k_=u.object({prompt:u.string(),attachments:u.array(u.string())}),w_=u.object({taskMetadata:Ge}),S_=u.object({taskMetadata:Ge,previousState:Ge}),I_=u.object({taskMetadata:Ge}),x_=u.object({taskMetadata:Ge}),z_=u.object({taskId:u.string(),ulid:u.string(),contextSize:u.number(),compactionStrategy:u.string(),previousApiReqIndex:u.number(),tokensIn:u.number(),tokensOut:u.number(),tokensInCache:u.number(),tokensOutCache:u.number(),deletedRangeStart:u.number(),deletedRangeEnd:u.number(),contextJsonPath:u.string(),contextRawPath:u.string()}),Up=u.object({clineVersion:u.string(),hookName:zp,timestamp:u.string(),taskId:u.string(),sessionContext:u.object({rootSessionId:u.string().optional(),hookLogPath:u.string().optional()}).optional(),workspaceRoots:u.array(u.string()),workspaceInfo:u.custom().optional(),userId:u.string(),agent_id:u.string(),parent_agent_id:u.string().nullable(),iteration:u.number().optional(),reason:u.string().optional(),tool_call:u.object({id:u.string(),name:u.string(),input:u.unknown()}).optional(),tool_result:u.custom().optional(),turn:u.unknown().optional(),error:u.object({name:u.string(),message:u.string(),stack:u.string().optional()}).optional(),preToolUse:$_.optional(),postToolUse:__.optional(),userPromptSubmit:k_.optional(),taskStart:w_.optional(),taskResume:S_.optional(),taskCancel:I_.optional(),taskComplete:x_.optional(),preCompact:z_.optional()}).passthrough();Tp=["readFile","search","bash","webFetch","editor","applyPatch","skills","askQuestion","submit"],P_=new Set(Tp);It={xhigh:0.95,high:0.8,medium:0.5,low:0.2,minimal:0.1,none:0};V_={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","X-IS-MULTIROOT":"false","X-CLIENT-TYPE":"cline-sdk"};Q_={debug:()=>{},log:()=>{},error:()=>{}};Ce=class Ce extends Error{constructor(e,t){super(`${e} at position ${t}`);this.position=t}};js=/^(http|https|ftp|mailto|file|data|irc):\/\/$/,Ns=/^[A-Za-z0-9-._~:/?#@!$&'()*+;=]$/;ik=/^[[{\w-]$/;uk={"\b":"\\b","\f":"\\f","\n":"\\n","\r":"\\r","\t":"\\t"},lk={'"':'"',"\\":"\\","/":"/",b:"\b",f:"\f",n:`
160
+ `,r:"\r",t:"\t"};mk=/^\{\s*"([A-Za-z0-9_.$-]+)"\s*:\s*([\s\S]+?)\s*\}$/;pk=[(e)=>JSON.parse(e),(e)=>JSON.parse(dk(e)),fk];Ak=mo.enum(["reasoning","prompt-cache","tools","provider-tools","oauth","temperature","files","streaming","vision","computer-use","local-auth","popular"]),Dk=mo.enum(["anthropic","gemini","openai-chat","openai-responses","openai-r1","ai-sdk"]),Zk=mo.enum(["anthropic","ai-sdk","ai-sdk-community","openai","openai-compatible","openai-r1","gemini","bedrock","custom","fetch","vertex"]);lr={production:{environment:"production",appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",mcpBaseUrl:"https://api.cline.bot/v1/mcp",workOsClientId:"client_01K3A541FN8TA3EPPHTD2325AR"},staging:{environment:"staging",appBaseUrl:"https://staging-app.cline.bot",apiBaseUrl:"https://core-api.staging.int.cline.bot",mcpBaseUrl:"https://core-api.staging.int.cline.bot/v1/mcp",workOsClientId:"client_01K3A5415VF6QBQBG3XYCW91G6"},local:{environment:"local",appBaseUrl:"http://localhost:3000",apiBaseUrl:"http://localhost:7777",mcpBaseUrl:"http://localhost:7777/v1/mcp",workOsClientId:"client_01K6XQAY7JK6T5HXVSZW2S5VYK"}};yw=["running","completed","failed","cancelled"],yo=["rules","skills","workflows","plugins"],Hp=yo,bw=new Set(yo);Vp=u.object({rootPath:u.string().min(1),hint:u.string().min(1).optional(),associatedRemoteUrls:u.array(u.string().min(1)).optional(),latestGitCommitHash:u.string().min(1).optional(),latestGitBranchName:u.string().min(1).optional()}),Yp=u.object({currentWorkspacePath:u.string().min(1).optional(),workspaces:u.record(u.string().min(1),Vp)});qp=["current_state","boundary_analysis","interface_proposal"],me=u.preprocess((e)=>e instanceof Date?e.toISOString():e,u.string().datetime()),nt=u.enum(["pending","in_progress","blocked","completed"]),Qp=u.enum(["queued","running","completed","failed","cancelled","interrupted"]),zn=u.enum(["draft","in_review","finalized"]),zw=u.object({agentId:u.string(),role:u.enum(["lead","teammate"]),description:u.string().optional(),status:u.enum(["idle","running","stopped"])}),Uw=u.object({agentId:u.string(),rolePrompt:u.string(),modelId:u.string().optional(),maxIterations:u.number().optional()});Ew=u.object({agentId:u.string().min(1).describe("Teammate identifier"),rolePrompt:u.string().min(1).describe("System prompt describing teammate role")}).strict(),Tw=u.object({agentId:u.string().min(1).describe("Teammate identifier"),reason:C(u.string().min(1)).describe("Optional shutdown reason")}),Ow=u.object({}),Pw={create:["title","description"],list:[],claim:["taskId"],complete:["taskId","summary"],block:["taskId","reason"]},jw={create:["status","taskId","summary","reason"]},Nw=u.object({action:u.enum(["create","list","claim","complete","block"]),title:C(u.string().min(1)).describe("Task title"),description:C(u.string().min(1)).describe("Task details"),dependsOn:C(u.array(u.string().describe("Dependency task ID"))).describe("Array of dependency task IDs"),assignee:C(u.string().min(1)).describe("Optional assignee"),status:C(u.enum(["pending","in_progress","blocked","completed"])).describe("Optional task status filter"),taskId:C(u.string()).describe("Task ID"),summary:C(u.string().min(1)).describe("Completion summary"),reason:C(u.string().min(1)).describe("Blocking reason")}).superRefine((e,t)=>{for(let n of Pw[e.action]){if(e[n]!==void 0)continue;t.addIssue({code:"custom",path:[n],message:`Field "${n}" is required when action=${e.action}`})}}),Aw=u.object({agentId:u.string().describe("Teammate agent ID"),task:u.string().min(1).describe("Task instructions for the teammate"),taskId:C(u.string()).describe("Optional shared task list ID"),runMode:C(u.enum(["sync","async"])).describe("Execution mode: 'sync' blocks until the teammate finishes and returns the result (default if omitted); 'async' queues the run and returns a runId immediately — use team_await_runs to collect results later."),continueConversation:C(u.boolean()).describe("If true, continue the teammate conversation; otherwise start fresh")}),Dw=u.object({status:C(u.enum(["queued","running","completed","failed","cancelled","interrupted"])).describe("Optional run status filter. Omit to include all statuses."),agentId:C(u.string().min(1)).describe("Optional teammate ID filter. Omit to include all teammates."),includeCompleted:C(u.boolean()).describe("Include completed/failed runs (default true)")}),Zw=u.object({runId:u.string().min(1).describe("Run ID"),reason:C(u.string().min(1)).describe("Optional cancellation reason")}),Cw=u.object({runId:C(u.string().min(1)).describe("Optional async run ID to await. Omit to wait for all active async runs.")}).strict(),Rw=u.object({toAgentId:u.string().min(1).describe("Recipient agent ID"),subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:C(u.string().min(1)).describe("Optional task ID context")}),Lw=u.object({subject:u.string().min(1).describe("Message subject"),body:u.string().min(1).describe("Message body"),taskId:C(u.string().min(1)).describe("Optional task ID context")}),Mw=u.object({unreadOnly:C(u.boolean()).describe("Only unread messages for read action (default true)")}),Fw=u.object({kind:u.enum(["progress","handoff","blocked","decision","done","error"]),summary:u.string().min(1).describe("Update summary"),taskId:C(u.string().min(1)).describe("Optional task ID context"),evidence:C(u.array(u.string().min(1))).describe("Optional evidence links/snippets"),nextAction:C(u.string().min(1)).describe("Planned next step")}),Jw=u.object({}),Kw=u.object({title:u.string().describe("Outcome title"),requiredSections:u.array(u.string()).default(qp).describe("Required sections for finalization gate (defaults to current_state,boundary_analysis,interface_proposal)")}),Gw=u.object({outcomeId:u.string().describe("Outcome ID"),section:u.string().describe("Section name"),sourceRunId:C(u.string()).describe("Optional source run ID"),content:u.string().describe("Section fragment content")}),Ww=u.object({fragmentId:u.string().describe("Fragment ID"),approved:u.boolean().describe("Review decision")}),Bw=u.object({outcomeId:u.string().describe("Outcome ID")}),Hw=u.object({}),Xw=u.object({teamId:u.string(),teamName:u.string(),members:u.array(zw),taskCounts:u.record(nt,u.number()),unreadMessages:u.number(),missionLogEntries:u.number(),activeRuns:u.number(),queuedRuns:u.number(),outcomeCounts:u.record(zn,u.number())}),ev=u.object({id:u.string(),title:u.string(),description:u.string(),status:nt,createdAt:me,updatedAt:me,createdBy:u.string(),assignee:u.string().optional(),dependsOn:u.array(u.string()),summary:u.string().optional(),isReady:u.boolean(),blockedBy:u.array(u.string())}),Vw=u.discriminatedUnion("action",[u.object({action:u.literal("create"),taskId:u.string(),status:nt,ignoredFields:u.array(u.string()).optional(),note:u.string().optional()}),u.object({action:u.literal("list"),tasks:u.array(ev)}),u.object({action:u.literal("claim"),taskId:u.string(),status:nt,nextStep:u.string()}),u.object({action:u.literal("complete"),taskId:u.string(),status:nt}),u.object({action:u.literal("block"),taskId:u.string(),status:nt})]),Yw=u.object({agentId:u.string(),mode:u.enum(["sync","async"]),status:u.enum(["dispatched","running","queued","joined"]),dispatched:u.boolean(),message:u.string(),deduped:u.boolean().optional(),runId:u.string().optional(),text:u.string().optional(),iterations:u.number().optional()}),tv=u.object({textPreview:u.string(),iterations:u.number(),finishReason:u.string(),durationMs:u.number(),usage:u.object({inputTokens:u.number(),outputTokens:u.number(),cacheReadTokens:u.number().optional(),cacheWriteTokens:u.number().optional(),totalCost:u.number().optional()})}),qw=u.object({id:u.string(),agentId:u.string(),taskId:u.string().optional(),status:Qp,messagePreview:u.string(),priority:u.number(),retryCount:u.number(),maxRetries:u.number(),nextAttemptAt:me.optional(),continueConversation:u.boolean().optional(),startedAt:me,endedAt:me.optional(),leaseOwner:u.string().optional(),heartbeatAt:me.optional(),lastProgressAt:me.optional(),lastProgressMessage:u.string().optional(),currentActivity:u.string().optional(),error:u.string().optional(),resultSummary:tv.optional()}),Qw=u.object({id:u.string(),teamId:u.string(),fromAgentId:u.string(),toAgentId:u.string(),subject:u.string(),body:u.string(),taskId:u.string().optional(),sentAt:me,readAt:me.optional()}),eS=u.object({id:u.string(),teamId:u.string(),title:u.string(),status:zn,requiredSections:u.array(u.string()),createdBy:u.string(),createdAt:me,finalizedAt:me.optional()}),tS=u.object({outcomeId:u.string(),status:zn,requiredSections:u.array(u.string())}),iS=u.object({agentId:u.string(),status:u.string()}),nS=u.object({runId:u.string(),status:Qp}),rS=u.object({id:u.string(),toAgentId:u.string()}),aS=u.object({delivered:u.number()}),oS=u.object({id:u.string()}),sS=u.object({status:u.string()}),uS=u.object({fragmentId:u.string(),status:u.string()}),lS=u.object({outcomeId:u.string(),status:zn});((e)=>{e.TaskStart="task_start",e.TaskEnd="task_end",e.AgentEvent="agent_event",e.TeammateSpawned="teammate_spawned",e.TeammateShutdown="teammate_shutdown",e.TeamTaskUpdated="team_task_updated",e.TeamMessage="team_message",e.TeamMissionLog="team_mission_log",e.TeamTaskCompleted="team_task_completed",e.RunStarted="run_started",e.RunQueued="run_queued",e.RunProgress="run_progress",e.RunCompleted="run_completed",e.RunFailed="run_failed",e.RunCancelled="run_cancelled",e.RunInterrupted="run_interrupted",e.OutcomeCreated="outcome_created",e.OutcomeFragmentAttached="outcome_fragment_attached",e.OutcomeFragmentReviewed="outcome_fragment_reviewed",e.OutcomeFinalized="outcome_finalized"})(iv||={});nv=["cline","oca","openai-codex"];av=["401","403","unauthorized","forbidden","invalid token","expired token","authentication"];bS=new Set(["accesskeyid","secretaccesskey","idtoken","refreshtoken","accessToken","access_token","refresh_token","apikey","api_key","authorization","password","secret","token","email","displayname","display_name","userInfo"]),$S=["id","balance","cost","secret"];kS=[{pattern:/AKIA[A-Z0-9]{16}/g,replacement:"AKIA_REDACTED"},{pattern:/\/Users\/[A-Za-z0-9._-]+/g,replacement:"/Users/REDACTED_USER"},{pattern:/\/home\/[A-Za-z0-9._-]+/g,replacement:"/home/REDACTED_USER"}];SS=[{pattern:/tasks\/[A-Za-z0-9._-]+\/[A-Za-z0-9._-]+\/api_conversation_history/g,replacement:"tasks/usr-test/taskid/api_conversation_history"},{pattern:/\/(org|usr|mbr|ses|gen|req|msg|tsk|sch|exe|srv|cli|wkr|evt|sub|tkn)-[A-Za-z0-9]{10,}(?=[/?#]|$)/g,replacement:"/$1-REDACTED"}]});function He(e){let t=(a)=>{if(!a)return;if(typeof a==="string")try{return t(JSON.parse(a))}catch{return a.trim()||void 0}if(typeof a!=="object")return;let i=a;if(typeof i.error==="string"&&i.error.trim())return i.error;if(i.error&&typeof i.error==="object"&&typeof i.error.message==="string"&&i.error.message.trim())return i.error.message;if(typeof i.detail==="string"&&i.detail.trim())return i.detail;if(Array.isArray(i.errors))for(let r of i.errors){let o=t(r);if(o)return o}if("responseBody"in i&&i.responseBody!==a){let r=t(i.responseBody);if(r)return r}if("cause"in i&&i.cause!==a){let r=t(i.cause);if(r)return r}if(typeof i.message==="string"&&i.message.trim())return i.message;return},n=t(e);if(n)return n;return String(e)}function En(e){return e.replace(/-([a-z0-9])/gi,(t,n)=>n.toUpperCase())}function je(){return{cache_control:{type:"ephemeral"}}}function ri(e){let{providerId:t,providerOptionsKey:n,bucketOptions:a}=e,i=n!==t&&n!=="anthropic";return{[t]:a,...i?{[n]:a}:{}}}function Tn(e){let t={thinking:{type:e.thinkingType}};return{...ri({providerId:e.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t}),openaiCompatible:t}}function _o(e){let t=e?.promptCacheRoutes??[bo],n=e?.reasoningRoutes??[bo];return{routing:{...t.length>0?{promptCache:{format:"anthropic-cache-control",routes:t.map((a)=>({...a}))}}:{},...n.length>0?{reasoning:{format:"anthropic-thinking",routes:n.map((a)=>({...a}))}}:{}}}}function F(e){let t=e.model.metadata?.family;return typeof t==="string"?t:void 0}function ie(e){let t=Ne(e.family);if(t)return mv(t);return NS(e.modelId)}function NS(e){if(!e)return!1;return mv(e)}function ai(e){let t=Ne(e.family);if($o(t))return!0;let n=Ne(e.modelId);return $o(n)}function Ne(e){let t=e?.trim().toLowerCase();return t?t:void 0}function mv(e){let t=Ne(e);return t?t.includes("anthropic")||t.includes("claude"):!1}function $o(e){return e?/(^|[/:._-])qwen(?:$|[/:._-]|\d)/.test(e):!1}function AS(e,t){let n=Ne(e),a=Ne(t);if(!n||!a)return!1;if(n===a)return!0;return a==="qwen"?$o(n):!1}function fv(e,t){if("requiredCapability"in e&&e.requiredCapability&&!t.capabilities?.includes(e.requiredCapability))return!1;switch(e.matcher){case"anthropic-compatible":return ie(t);case"model-family":return AS(t.family,e.family);case"model-id":return Ne(t.modelId)===Ne(e.modelId)}}function dv(e,t){let n={openaiCompatible:je(),[e]:je()},a=En(e);if(a!==e)n[a]=je();if(t)n.anthropic=je();return n}function pv(e,t,n){if(!e)return;let a=e.content;if(typeof a==="string"){let r=[{type:"text",text:a,providerOptions:dv(t,n)}];if(!n)r.push({type:"text",text:" "});e.content=r;return}if(!Array.isArray(a))return;let i=a.filter((r)=>r&&typeof r==="object"&&r.type==="text").length;for(let r=a.length-1;r>=0;r--){let o=a[r];if(o&&typeof o==="object"&&o.type==="text"){let s=i===1&&!n;if(a[r]={...o,providerOptions:dv(t,n)},s)a.push({type:"text",text:" "});return}}}function vt(e,t){return gv(e,t)!==void 0}function DS(e,t){return gv(e,t)?.matcher==="anthropic-compatible"}function vv(e){return e.metadata?.promptCacheStrategy==="anthropic-automatic"?"anthropic-automatic":void 0}function ZS(e,t){if(vv(t.provider)!=="anthropic-automatic")return;let n=F(t);if(ie({modelId:e.modelId,family:n}))return{matcher:"anthropic-compatible"};if(ai({modelId:e.modelId,family:n}))return n?{matcher:"model-family",family:n}:{matcher:"model-id",modelId:e.modelId};return}function CS(e,t){if(vv(t.provider)!=="anthropic-automatic")return;let n=F(t);return ie({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function RS(e,t){if(t.provider.metadata?.routing)return;let n=F(t);return ie({modelId:e.modelId,family:n})?{matcher:"anthropic-compatible"}:void 0}function gv(e,t){let n=t.provider.metadata?.routing?.promptCache;if(n){if(n.format!=="anthropic-cache-control")return;return n.routes.find((a)=>fv(a,{modelId:e.modelId,family:F(t),capabilities:t.model.capabilities}))}return ZS(e,t)}function oi(e,t){let n=t.provider.metadata?.routing?.reasoning;if(!n)return CS(e,t)??RS(e,t);if(n.format!=="anthropic-thinking")return;return n.routes.find((a)=>fv(a,{modelId:e.modelId,family:F(t),capabilities:t.model.capabilities}))}function LS(e){let t=e.model.capabilities;return!t||t.includes("reasoning")}function MS(e,t){let n=t?.toLowerCase()??"",a=e?.toLowerCase()??"";if(n.includes("opus")||a.includes("opus"))return"opus";if(n.includes("sonnet")||a.includes("sonnet"))return"sonnet";if(n.includes("haiku")||a.includes("haiku"))return"haiku";return}function FS(e){let t=e?.toLowerCase()??"",n=/claude-(\d+)[.-](\d{1,2})-(?:opus|sonnet|haiku)/i.exec(t),i=/claude-(?:opus|sonnet|haiku)-(.+)/i.exec(t)?.[1]?.match(/\d+/g)??[],r=n?.[1]??i[0],o=n?.[2]??(i[1]?.length<=2?i[1]:void 0);if(!r||!o)return;let s=Number.parseInt(r,10),l=Number.parseInt(o,10);if(!Number.isFinite(s)||!Number.isFinite(l))return;return{major:s,minor:l}}function JS(e){let t=MS(e.modelId,e.family),n=FS(e.modelId);if(!t||!n)return!1;if(n.major!==4)return n.major>4;return(t==="opus"||t==="sonnet")&&n.minor>=6}function De(e,t){let n=F(t);if(!oi(e,t)||!LS(t))return{kind:"none"};return JS({modelId:e.modelId,family:n})?{kind:"anthropic-adaptive"}:{kind:"anthropic-manual"}}function hv(e,t){let n=De(e,t),i=e.reasoning?.enabled===!0||e.reasoning?.effort!==void 0||typeof e.reasoning?.budgetTokens==="number"&&e.reasoning.budgetTokens>0?n.kind==="anthropic-adaptive"?{type:"adaptive"}:n.kind==="anthropic-manual"?{type:"enabled",budgetTokens:wo({modelId:e.modelId,family:F(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens})}:void 0:void 0;return{...n.kind==="anthropic-adaptive"&&e.reasoning?.effort?{effort:e.reasoning.effort}:{},...i?{thinking:i}:{},...DS(e,t)?je():{}}}function wo(e){if(typeof e.explicitBudgetTokens==="number"&&e.explicitBudgetTokens>0)return e.explicitBudgetTokens;if(!e.modelId&&!e.family||!ie({modelId:e.modelId,family:e.family}))return;if(!e.effort)return pt;if(typeof e.maxTokens!=="number")return pt;if(e.maxTokens<=pt)return pt;let t=jS[e.effort];if(!t)return pt;let n=Math.min(e.maxTokens-1,PS);return Math.max(pt,Math.floor(n*t))}function yv(e,t){let n=De(e,t);if(n.kind==="none"||!e.reasoning?.enabled&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let a=wo({modelId:e.modelId,family:F(t),effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}),i={};if(e.reasoning?.enabled===!0)i.enabled=!0;if(n.kind==="anthropic-adaptive"&&e.reasoning?.effort)i.effort=e.reasoning.effort;if(typeof e.reasoning?.budgetTokens==="number")i.max_tokens=e.reasoning.budgetTokens;else if(n.kind==="anthropic-manual"&&typeof a==="number"&&a>=0)i.max_tokens=a;return Object.keys(i).length>0?i:void 0}function bv(e,t){if(e.reasoning?.enabled===void 0&&!e.reasoning?.effort&&typeof e.reasoning?.budgetTokens!=="number")return;let n=De(e,t),a=oi(e,t),i=F(t),r=n.kind==="none"&&a!==void 0,o=n.kind==="none"&&a===void 0&&(vt(e,t)||ai({modelId:e.modelId,family:i})||ie({modelId:e.modelId,family:i}));if(r||o)return;let s=n.kind==="anthropic-manual"?wo({modelId:e.modelId,family:i,effort:e.reasoning?.effort,maxTokens:e.maxTokens,explicitBudgetTokens:e.reasoning?.budgetTokens}):e.reasoning?.budgetTokens,l={...e.reasoning?.enabled===!0?{enabled:!0}:e.reasoning?.enabled===!1?{enabled:!1}:e.reasoning?.effort?{enabled:!0}:{},...e.reasoning?.effort&&n.kind!=="anthropic-manual"?{effort:e.reasoning.effort}:{}};if(typeof s==="number"&&s>=0)l.max_tokens=s;return Object.keys(l).length>0?l:void 0}var pt=1024,PS=128000,jS,bo,cv,Ae,ko,On;var Xe=G(()=>{jS={low:0.2,medium:0.5,high:0.8},bo={matcher:"anthropic-compatible"},cv={matcher:"model-family",family:"qwen",requiredCapability:"prompt-cache"};Ae=_o(),ko=_o({promptCacheRoutes:[cv],reasoningRoutes:[]}),On=_o({promptCacheRoutes:[bo,cv]})});function So(e){return["openai-native","openai"].includes(e.providerId)?{truncation:"auto"}:{}}function KS(e){let{request:t,context:n,suppressions:a}=e;if(a.genericThinking)return{};if(t.reasoning?.enabled!==!0)return{};let i=F(n),r=De(t,n),o=oi(t,n)!==void 0,s=vt(t,n),l=ie({modelId:t.modelId,family:i}),d=ai({modelId:t.modelId,family:i});if(!o&&(s||d||l))return{};if(o&&r.kind!=="anthropic-adaptive")return{};return{thinking:{type:"adaptive"}}}function GS(e){let t=e.reasoning?.effort;if(e.suppressions.genericEffort||!t||e.reasoning?.enabled===!1||e.suppressEffortOptions)return{};if(!(!e.usesAnthropicReasoningRoute||e.anthropicReasoningPolicyKind==="anthropic-adaptive"))return{};return{effort:t,reasoningEffort:t,...e.usesAnthropicReasoningRoute?{}:{reasoningSummary:"auto"}}}function $v(e){let{request:t,context:n,target:a,suppressions:i}=e,r=F(n),o=De(t,n),s=oi(t,n)!==void 0,l=vt(t,n),d=ie({modelId:t.modelId,family:r}),c=ai({modelId:t.modelId,family:r}),p=!s&&(l||c||d),v=yv(t,n),f=l?je():{};return{...a==="openai-compatible"?{strictJsonSchema:!1}:{},...KS({request:t,context:n,suppressions:i}),...GS({reasoning:t.reasoning,usesAnthropicReasoningRoute:s,suppressEffortOptions:p,suppressions:i,anthropicReasoningPolicyKind:o.kind}),...v?{reasoning:v}:{},...f,...So(t)}}var Io=G(()=>{Xe()});function gt(e,t){let n=F(t)?.toLowerCase()??"",a=e.modelId.toLowerCase();return n.includes("glm")||a.includes("glm")}function si(e){return e==="zai"||e==="zai-coding-plan"}function WS(e){if(e.reasoning?.enabled===void 0)return;return{thinking:{type:e.reasoning.enabled?"enabled":"disabled"}}}function BS(e){if(e.reasoning?.enabled===!0)return{reasoning:{enabled:!0}};if(e.reasoning?.enabled===!1)return{reasoning:{exclude:!0}};return}function xo(e,t,n,a){if(si(e.providerId)){if(!gt(e,t))return;let r=WS(e);return r?{openaiCompatible:r,[e.providerId]:r,...n!==e.providerId?{[n]:r}:{}}:void 0}if(!gt(e,t))return;let i=BS(e);if(!i)return;return{openaiCompatible:i,...a?.includeProviderBuckets===!1?{}:{[e.providerId]:i,...n!==e.providerId?{[n]:i}:{}}}}var _v=G(()=>{Xe()});function HS(e){return e?.enabled!==void 0||!!e?.effort||typeof e?.budgetTokens==="number"}function kv(e){let t=e.reasoning;if(!HS(t))return;if(t?.enabled===!1)return{exclude:!0};if(typeof t?.budgetTokens==="number")return{max_tokens:t.budgetTokens};if(t?.effort)return{effort:t.effort};if(t?.enabled===!0)return{enabled:!0};return}function Pn(e){return e.request.providerId==="openrouter"}function wv(e){return e.modelFamily?.trim().toLowerCase()==="kimi-k2.6"}function XS(e){return e.request.modelId.toLowerCase().includes("moonshotai/kimi-")}function VS(e){return!!e.modelFamily?.trim().toLowerCase().includes("deepseek")}function Sv(e,t){let n=e.request.reasoning?.enabled;if(n===!0)return"enabled";if(n===!1)return"disabled";return t}function Iv(e,t){if(!t)return;return ri({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:{reasoning:t}})}function zv(e,t){let n=[];for(let a of e)if(a.applies(t))n.push({rule:a});return n}function Uv(e){return e.reduce((t,{rule:n})=>{if(!n.suppresses)return t;return{genericThinking:t.genericThinking||n.suppresses.genericThinking||void 0,genericEffort:t.genericEffort||n.suppresses.genericEffort||void 0,genericFanout:t.genericFanout||n.suppresses.genericFanout||void 0}},{})}function Ev(e,t){return e.map(({rule:n})=>n.build(t))}function Tv(e){return{...e,modelFamily:F(e.context)}}var YS,qS,QS,eI,tI,iI,nI,rI,aI,oI,sI,uI,lI,dI,xv;var Ov=G(()=>{Xe();Io();_v();YS={id:"provider.anthropic.direct",phase:"provider",description:"Direct Anthropic owns the anthropic bucket built by the base patch.",applies:(e)=>e.request.providerId==="anthropic",suppresses:{genericFanout:!0},build:()=>{return}},qS={id:"provider.google.direct",phase:"provider",description:"Direct Google owns the google bucket through Gemini thinkingConfig.",applies:(e)=>e.request.providerId==="google",suppresses:{genericFanout:!0},build:()=>{return}},QS={id:"adapter.openai",phase:"adapter",description:"OpenAI adapter targets the AI SDK openai bucket, not provider-id buckets.",applies:(e)=>e.target==="openai",build:(e)=>({openai:{strictJsonSchema:!1,...So(e.request)}})},eI={id:"provider.openai-codex",phase:"provider",description:"Codex CLI uses OpenAI Responses options plus provider-id aliases.",applies:(e)=>e.request.providerId==="openai-codex",suppresses:{genericFanout:!0},build:(e)=>{let t={...e.compatibleOptions,instructions:e.request.systemPrompt,store:!1,strictJsonSchema:!1,systemMessageMode:"remove"};return{openai:t,...ri({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:t})}}},tI={id:"provider.generic-fanout",phase:"provider-fanout",description:"Default OpenAI-compatible providers receive provider-id and camelCase alias buckets.",applies:(e)=>e.target!=="openai",build:(e)=>e.suppressions.genericFanout?void 0:ri({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,bucketOptions:e.compatibleOptions})},iI={id:"provider.cline.reasoning",phase:"provider-reasoning",description:"Cline gateway accepts the shared gateway reasoning shape.",applies:(e)=>e.request.providerId==="cline",build:(e)=>Iv(e,bv(e.request,e.context))},nI={id:"provider.openrouter.reasoning",phase:"provider-reasoning",description:"OpenRouter expects reasoning controls under its first-class reasoning object.",applies:Pn,suppresses:{genericThinking:!0,genericEffort:!0},build:(e)=>Iv(e,kv(e.request))},rI={id:"provider.google-gemini.thinking-config",phase:"provider",description:"Google/Gemini maps reasoning effort to google.thinkingConfig.",applies:(e)=>(e.request.providerId==="google"||e.request.providerId==="gemini")&&!!e.request.reasoning?.effort,build:(e)=>({google:{thinkingConfig:{thinkingLevel:e.request.reasoning?.effort,includeThoughts:!0}}})},aI={id:"provider.cline.disable-thinking",phase:"provider",description:"Cline-routed non-Kimi-K2.6 Moonshot Kimi models use thinking.type=disabled when reasoning is disabled.",applies:(e)=>e.request.providerId==="cline"&&XS(e)&&e.request.reasoning?.enabled===!1&&!wv(e),build:(e)=>Tn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:"disabled"})},oI={id:"family.kimi-k2.6.thinking",phase:"model-family",description:"Kimi K2.6 uses thinking.type and defaults to enabled when reasoning is unset.",applies:(e)=>wv(e)&&!Pn(e),suppresses:{genericThinking:!0},build:(e)=>{let t=Sv(e,"enabled");return t?Tn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},sI={id:"family.deepseek.thinking",phase:"model-family",description:"DeepSeek models use thinking.type only for explicit reasoning enabled/disabled.",applies:(e)=>!Pn(e)&&(VS(e)||e.request.providerId==="deepseek"),suppresses:{genericThinking:!0},build:(e)=>{let t=Sv(e,void 0);return t?Tn({providerId:e.request.providerId,providerOptionsKey:e.providerOptionsKey,thinkingType:t}):void 0}},uI={id:"provider.zai.non-glm.suppress-generic-thinking",phase:"provider",description:"Native Z.AI non-GLM models should not inherit adaptive OpenAI-compatible thinking.",applies:(e)=>si(e.request.providerId)&&e.request.reasoning?.enabled!==void 0&&!gt(e.request,e.context),suppresses:{genericThinking:!0},build:()=>{return}},lI={id:"family.glm.native-zai-thinking",phase:"model-overlay",description:"Native Z.AI GLM models use thinking.type.",applies:(e)=>si(e.request.providerId)&&gt(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>xo(e.request,e.context,e.providerOptionsKey)},dI={id:"family.glm.routed-reasoning",phase:"model-overlay",description:"Routed GLM models use the generic reasoning include/exclude shape, not thinking.type.",applies:(e)=>!si(e.request.providerId)&&gt(e.request,e.context),suppresses:{genericThinking:!0},build:(e)=>xo(e.request,e.context,e.providerOptionsKey,{includeProviderBuckets:!Pn(e)})},xv=[YS,qS,QS,eI,tI,iI,nI,rI,aI,oI,sI,uI,lI,dI]});function Pv(e){switch(e){case"openai-native":return"openai";case"anthropic":return"anthropic";case"google":case"gemini":return"google";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":return"mistral";case"claude-code":return"claude-code";case"openai-codex":return"openai-codex";case"opencode":return"opencode";case"dify":return"dify";default:return"openai-compatible"}}function cI(e){let t={};for(let n of e){if(!n)continue;for(let[a,i]of Object.entries(n))t[a]={...t[a]??{},...i}}return t}function mI(e,t){return{anthropic:t,openaiCompatible:e}}function jv(e,t,n=Pv(e.providerId)){let a=En(e.providerId),i=F(t),r=ie({modelId:e.modelId,family:i}),o=r?De(e,t):void 0,s=Tv({request:e,context:t,providerOptionsKey:a,target:n,isAnthropicCompatibleModelId:r,anthropicReasoningPolicyKind:o?.kind}),l=zv(xv,s),d=Uv(l),c=$v({request:e,context:t,target:n,suppressions:d}),p=hv(e,t),v={...s,compatibleOptions:c,anthropicOptions:p,suppressions:d};return cI([mI(c,p),...Ev(l,v)])}var Nv=G(()=>{Xe();Io();Ov()});var Rv={};de(Rv,{resetLangfuseTelemetryForTests:()=>hI,hasLangfuseTelemetryConfig:()=>Zv,ensureLangfuseTelemetry:()=>fI,disposeLangfuseTelemetry:()=>Cv,debugLangfuse:()=>pe});function Dv(){let e=process?.env,t=e?.LANGFUSE_BASE_URL?.trim(),n=e?.LANGFUSE_PUBLIC_KEY?.trim(),a=e?.LANGFUSE_SECRET_KEY?.trim();if(!t||!n||!a)return;return{baseUrl:t,publicKey:n,secretKey:a}}function Zv(){return Dv()!==void 0}async function fI(e){if(!Zv())return!1;if(Ve!==void 0)return pe(`cached readiness=${String(Ve)}`),Ve;if(!jn)jn=pI();return Ve=await jn,pe(`initialized readiness=${String(Ve)}`),Ve}async function pI(){let{registerDisposable:e}=await Promise.resolve().then(() => (Un(),lv));e(Cv);let t=Dv();if(!t)return!1;try{let[{LangfuseSpanProcessor:n},{trace:a},{NodeTracerProvider:i}]=await Promise.all([import("@langfuse/otel"),import("@opentelemetry/api"),import("@opentelemetry/sdk-trace-node")]),r=new n({baseUrl:t.baseUrl,publicKey:t.publicKey,secretKey:t.secretKey});pe(`creating span processor baseUrl=${t.baseUrl}`);let o=a.getTracerProvider();if(typeof o?.addSpanProcessor==="function"){o.addSpanProcessor(r);let c=Av(a);return pe(`attached processor to existing tracer provider delegateReady=${String(c)}`),c}let s=o?.constructor?.name;if(s&&s!=="ProxyTracerProvider"&&s!=="NoopTracerProvider")return!1;new i({spanProcessors:[r]}).register();let d=Av(a);return pe(`registered NodeTracerProvider delegateReady=${String(d)}`),d}catch(n){return pe(`initialization failed error=${n instanceof Error?n.message:String(n)}`),!1}}function Av(e){let a=e.getTracerProvider().getDelegate?.()?.constructor?.name;return Boolean(a&&a!=="NoopTracerProvider")}async function vI(){try{let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.forceFlush?.(),pe("forceFlush completed")}catch(e){pe(`forceFlush failed error=${e instanceof Error?e.message:String(e)}`)}}async function Cv(){try{await vI();let{trace:e}=await import("@opentelemetry/api");await e.getTracerProvider().getDelegate?.()?.shutdown?.(),pe("shutdown completed")}catch(e){pe(`shutdown failed error=${e instanceof Error?e.message:String(e)}`)}}function pe(e){if(!gI())return;console.warn(`[langfuse-debug] ${e}`)}function gI(){let e=process.env.CLINE_DEBUG_LANGFUSE;if(!e)return!1;let t=e.trim().toLowerCase();return t==="1"||t==="true"||t==="yes"}function hI(){Ve=void 0,jn=void 0}var Ve,jn;async function B(e){let t=e.apiKey?.trim();if(t)return t;let a=(await e.apiKeyResolver?.())?.trim();if(a)return a;for(let i of e.apiKeyEnv??[]){let r=yI(i);if(r)return r}return}function yI(e){let t=globalThis.process?.env;if(!t)return;let n=t[e];if(typeof n!=="string")return;let a=n.trim();return a.length>0?a:void 0}var Lv={};de(Lv,{createOpenAIProviderModule:()=>$I});import{createOpenAI as bI}from"@ai-sdk/openai";async function $I(e,t){let n=await B(e),a=bI({apiKey:n,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a.responses(i)}}var Mv=()=>{};function _I(e){switch(e.type){case"image-data":case"image-url":case"file-data":case"file-url":case"image-file-id":return!0;default:return!1}}function kI(e){switch(e.type){case"image-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-url":return{type:"file",data:e.url,mediaType:"image/*",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-data":return{type:"file",data:e.data,mediaType:e.mediaType,...e.filename?{filename:e.filename}:{},...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"file-url":return{type:"file",data:e.url,mediaType:"application/octet-stream",...e.providerOptions?{providerOptions:e.providerOptions}:{}};case"image-file-id":return null}}function wI(e){if(e.type!=="content")return null;let t=[],n=[];for(let a of e.value){if(!_I(a)){n.push(a);continue}let i=kI(a);if(!i){n.push(a);continue}t.push(i);let r={type:"text",text:"(see following user message for image)"};n.push(r)}if(t.length===0)return null;return{stripped:{type:"content",value:n},media:t}}function SI(e){let t=[],n=!1;for(let a of e){if(a.role!=="tool"){t.push(a);continue}let i=[],r=a.content.map((o)=>{if(o.type!=="tool-result")return o;let s=wI(o.output);if(!s)return o;return i.push(...s.media),{...o,output:s.stripped}});if(t.push({...a,content:r}),i.length>0)t.push({role:"user",content:i}),n=!0}return{prompt:t,mutated:n}}var Nn;var zo=G(()=>{Nn={specificationVersion:"v3",transformParams:async({params:e})=>{let{prompt:t,mutated:n}=SI(e.prompt);if(!n)return e;return{...e,prompt:t}}}});var Fv={};de(Fv,{createOpenAICompatibleProviderModule:()=>zI});import{createOpenAICompatible as II}from"@ai-sdk/openai-compatible";import{wrapLanguageModel as xI}from"ai";async function zI(e,t){let n=await B(e),a=II({name:t.provider.id,apiKey:n,...e.baseUrl?{baseURL:e.baseUrl}:{},...e.headers?{headers:e.headers}:{},...e.fetch?{fetch:e.fetch}:{},includeUsage:!0});return{model:(i)=>xI({model:a(i),middleware:Nn})}}var Jv=G(()=>{zo()});var Kv={};de(Kv,{createAnthropicProviderModule:()=>EI});import{createAnthropic as UI}from"@ai-sdk/anthropic";async function EI(e,t){let n=await B(e),a=UI({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a(i)}}var Gv=()=>{};var Wv={};de(Wv,{createGoogleProviderModule:()=>OI});import{createGoogleGenerativeAI as TI}from"@ai-sdk/google";async function OI(e,t){let n=await B(e),a=TI({apiKey:n,headers:e.headers,fetch:e.fetch,name:t.provider.id});return{model:(i)=>a(i)}}var Bv=()=>{};var Hv={};de(Hv,{createVertexProviderModule:()=>NI});import{createVertex as PI}from"@ai-sdk/google-vertex";import{createVertexAnthropic as jI}from"@ai-sdk/google-vertex/anthropic";async function NI(e,t){let n=String(e.options?.project??e.options?.projectId??""),a=String(e.options?.location??e.options?.region??"us-central1");if(t.model.id.toLowerCase().includes("claude")){let r=jI({project:n,location:a,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(o)=>r(o)}}let i=PI({project:n,location:a,apiKey:await B(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(r)=>i(r)}}var Xv=()=>{};var Vv={};de(Vv,{createBedrockProviderModule:()=>DI});import{createAmazonBedrock as AI}from"@ai-sdk/amazon-bedrock";async function DI(e){let t=typeof e.options?.credentialProvider==="function"?e.options.credentialProvider:void 0,n=AI({region:e.options?.region,apiKey:await B(e),accessKeyId:e.options?.accessKeyId,secretAccessKey:e.options?.secretAccessKey,sessionToken:e.options?.sessionToken,baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,credentialProvider:t});return{model:(a)=>n(a)}}var Yv=()=>{};var qv={};de(qv,{createMistralProviderModule:()=>RI});import{createMistral as ZI}from"@ai-sdk/mistral";import{wrapLanguageModel as CI}from"ai";async function RI(e){let t=ZI({apiKey:await B(e),baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch});return{model:(n)=>CI({model:t(n),middleware:Nn})}}var Qv=G(()=>{zo()});var ui={};de(ui,{listOpenAICodexModels:()=>WI,createOpenCodeProviderModule:()=>HI,createOpenAICodexProviderModule:()=>GI,createDifyProviderModule:()=>XI,createClaudeCodeProviderModule:()=>KI});import{createClaudeCode as LI}from"ai-sdk-provider-claude-code";import{createCodexAppServer as MI,createCodexExec as FI}from"ai-sdk-provider-codex-cli";import{createDifyProvider as JI}from"dify-ai-provider";function An(e){return e.options??{}}async function KI(e){let t=LI(An(e));return{model:(n)=>t(n)}}async function GI(e){let t=FI(An(e));return{model:(n)=>t(n)}}async function WI(e={}){let t=e.accessToken&&e.accountId?{onAuthRefresh:async()=>({accessToken:e.accessToken,chatgptAccountId:e.accountId,chatgptPlanType:null})}:void 0,n=MI({defaultSettings:{codexPath:e.codexPath??"codex",cwd:e.cwd,env:e.env,logger:!1,requestTimeoutMs:e.requestTimeoutMs,connectionTimeoutMs:e.connectionTimeoutMs,serverRequests:t}}),a;try{a=await n.listModels(["openai"])}finally{await n.close().catch(()=>{})}return a.models.map((i)=>({id:i.id,name:i.name,isDefault:i.isDefault}))}async function BI(e){let t=["SIGINT","SIGTERM"],n=new Map(t.map((i)=>[i,new Set(process.listeners(i))])),a=await e();for(let i of t)for(let r of process.listeners(i))if(!n.get(i)?.has(r))process.removeListener(i,r);return a}async function HI(e){let t=await BI(async()=>{let{createOpencode:n}=await import("ai-sdk-provider-opencode-sdk");return n(An(e))});return{model:(n)=>t(n)}}async function XI(e){let t=await B(e),n=JI({baseURL:e.baseUrl,headers:e.headers,fetch:e.fetch,...An(e)});return{model:(a)=>n(a,{apiKey:t})}}var li=()=>{};var le={};de(le,{normalizeUsage:()=>og,createVertexProvider:()=>Ln,createOpenCodeProvider:()=>Po,createOpenAIProvider:()=>Dn,createOpenAICompatibleProvider:()=>Zn,createOpenAICodexProvider:()=>Oo,createMistralProvider:()=>Eo,createGoogleProvider:()=>Rn,createDifyProvider:()=>jo,createClaudeCodeProvider:()=>To,createBedrockProvider:()=>Mn,createAnthropicProvider:()=>Cn});import{jsonSchema as VI,streamText as YI}from"ai";import{nanoid as eg}from"nanoid";import{z as qI}from"zod";function QI(e,t,n){let a=ig(e.messages,n),i=ie({modelId:e.modelId,family:F(t)});for(let r=a.length-1;r>=0;r--)if(a[r]?.role==="user"){pv(a[r],e.providerId,i);break}return a}async function ex(e){try{return(await Promise.resolve().then(() => Rv)).ensureLangfuseTelemetry(e)}catch{return!1}}function ig(e,t){let n=[];for(let a of e){let i=[];for(let r of a.content){if(r.type==="text"){i.push({type:"text",text:q(r.text)});continue}if(r.type==="reasoning"){let o=r.metadata,s=o?.signature,l=o?.redactedData;i.push({type:"reasoning",text:q(r.text),...typeof s==="string"||typeof l==="string"?{providerOptions:{anthropic:{...typeof s==="string"?{signature:s}:{},...typeof l==="string"?{redactedData:l}:{}}}}:{}});continue}if(r.type==="file"){i.push({type:"file",path:r.path,content:r.content});continue}if(r.type==="image"){i.push({type:"image",image:r.image,mediaType:r.mediaType});continue}if(r.type==="tool-call"){let o=r.metadata,s=o?.thoughtSignature??o?.thought_signature;i.push({type:"tool-call",toolCallId:r.toolCallId,toolName:r.toolName,input:r.input,...typeof s==="string"?{providerOptions:{google:{thoughtSignature:s}}}:{}});continue}if(r.type==="tool-result")i.push({type:"tool-result",toolCallId:r.toolCallId,toolName:r.toolName,output:r.output,isError:r.isError??!1})}if(i.length>0)n.push({role:a.role,content:i});else if(a.role==="user"||a.role==="assistant")n.push({role:a.role,content:""})}return vo(t,n,{assistantToolCallArgKey:"input"})}function tx(e){if(!e.tools?.length)return;return Object.fromEntries(e.tools.map((t)=>[t.name,{description:t.description,inputSchema:VI(ix(t.inputSchema),{validate:async(n)=>{let a=await qI.fromJSONSchema(t.inputSchema).safeParseAsync(n);return a.success?{success:!0,value:a.data}:{success:!1,error:a.error}}})}]))}function ix(e){if(e.type==="object")return e;return{type:"object",...e}}function ng(e){return e.provider.capabilities?.includes("provider-tools")??!1}function rg(e,t){if(!e||typeof e!=="object"||Array.isArray(e))return t;return{...e,...t}}function ag(e){return rg(e.metadata,{toolSource:{providerId:e.request.providerId,modelId:e.request.modelId,executionMode:ng(e.context)?"provider":"runtime"}})}function nx(e){return ag({metadata:rg(Uo(e.part),{inputParseError:`Tool call ${e.toolName} was rejected before execution: ${e.errorMessage}`,aiSdkToolError:e.errorMessage}),request:e.request,context:e.context})}function rx(e){return e.providerId==="openai-codex"?void 0:e.systemPrompt}function ax(e,t){if(e==="tool-calls"||e==="tool_calls"||t)return"tool-calls";if(e==="length"||e==="max_tokens")return"max-tokens";if(e==="error")return"error";return"stop"}function be(e,...t){for(let n of t){let a=e[n];if(typeof a==="number"&&Number.isFinite(a))return a;if(typeof a==="string"&&a.trim().length>0&&Number.isFinite(Number(a)))return Number(a)}return 0}function ue(e){if(typeof e==="number"&&Number.isFinite(e))return e;if(typeof e==="string"&&e.trim().length>0&&Number.isFinite(Number(e)))return Number(e);return}function $e(e,...t){let n=e;for(let a of t){if(!n||typeof n!=="object")return 0;n=n[a]}return ue(n)??0}function ox(e){if(!e||typeof e!=="object")return;let t=e;for(let n of Object.values(t)){if(!n||typeof n!=="object")continue;let a=n;if(a.usage&&typeof a.usage==="object")return a.usage}return}function sx(e,t){if(!t||typeof t!=="object")return;let n=t,a=ue(n.input),i=ue(n.output);if(a===void 0||i===void 0)return;let r=ue(n.cacheRead)??0,o=ue(n.cacheWrite)??a*1.25;return Math.max(0,e.inputTokens-e.cacheReadTokens-e.cacheWriteTokens)/1e6*a+e.outputTokens/1e6*i+e.cacheReadTokens/1e6*r+e.cacheWriteTokens/1e6*o}function og(e,t,n){let a=e&&typeof e==="object"?e:{},i=ox(t),r=t&&typeof t==="object"?t:{},o=r.gateway&&typeof r.gateway==="object"?r.gateway:{},s=a.raw&&typeof a.raw==="object"?a.raw:a,l=ue(s.cost_details?.upstream_inference_cost)??ue(s.upstream_inference_cost),d=ue(s.market_cost)??ue(s.marketCost)??ue(o.marketCost),c=ue(s.cost)??ue(o.cost),p=d!==void 0||c!==void 0||l!==void 0,f=(s.is_byok===!0||s.isByok===!0||o.is_byok===!0||o.isByok===!0)&&c!==void 0&&l!==void 0,y=c!==void 0&&c>0?c:l??c,_=d??(f?c+l:y),O={inputTokens:$e(a,"inputTokens","total")||be(a,"inputTokens","input_tokens","prompt_tokens")||be(s,"promptTokenCount","prompt_token_count"),outputTokens:$e(a,"outputTokens","total")||be(a,"outputTokens","output_tokens","completion_tokens")||be(s,"candidatesTokenCount","candidates_token_count"),cacheReadTokens:$e(a,"inputTokens","cacheRead")||$e(a,"inputTokenDetails","cacheReadTokens")||be(a,"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens")||$e(a,"prompt_tokens_details","cached_tokens")||$e(s,"prompt_tokens_details","cached_tokens")||be(s,"cachedContentTokenCount")||be(i??{},"cachedInputTokens","cacheReadTokens","cache_read_tokens","cache_read_input_tokens"),cacheWriteTokens:$e(a,"inputTokens","cacheWrite")||$e(a,"inputTokenDetails","cacheWriteTokens")||$e(a,"prompt_tokens_details","cache_write_tokens")||be(a,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||$e(s,"prompt_tokens_details","cache_write_tokens")||be(s,"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")||be(i??{},"cacheWriteTokens","cache_write_tokens","cache_creation_input_tokens")},P=_!==void 0?_:p?void 0:sx(O,n);return{...O,...typeof P==="number"?{totalCost:P}:{}}}function tg(e){if(!e)return;let t=()=>{},n=(i)=>{if(i&&typeof i.catch==="function")i.catch(t)},a=e;for(let i of Object.keys(e))try{n(a[i])}catch{}}function Uo(e){let t={};if(typeof e.thoughtSignature==="string")t.thoughtSignature=e.thoughtSignature;if(typeof e.thought_signature==="string")t.thought_signature=e.thought_signature;let n=e.providerMetadata&&typeof e.providerMetadata==="object"?e.providerMetadata:void 0,a=n?.google&&typeof n.google==="object"?n.google:void 0;if(typeof t.thoughtSignature!=="string"&&typeof a?.thoughtSignature==="string")t.thoughtSignature=a.thoughtSignature;if(typeof t.thought_signature!=="string"&&typeof a?.thought_signature==="string")t.thought_signature=a.thought_signature;return Object.keys(t).length>0?t:void 0}async function*ux(e,t,n,a,i){let r=!1,o=new Set,s,l,d,c;try{if(e.fullStream)for await(let f of e.fullStream){if(f.type==="text-delta"){let y=f.textDelta??f.text??f.delta;if(y)yield{type:"text-delta",text:y};continue}if(f.type==="reasoning-delta"||f.type==="reasoning"){let y=f.textDelta??f.text??f.reasoning;if(y)yield{type:"reasoning-delta",text:y,metadata:Uo(f)};continue}if(f.type==="tool-call"){r=!0;let y=f.toolCallId??f.id??`tool_${eg()}`;o.add(y);let _=f.input??f.args??{},O=typeof _==="string"?_:JSON.stringify(_);yield{type:"tool-call-delta",toolCallId:y,toolName:f.toolName??f.name??"tool",input:typeof _==="string"?void 0:_,inputText:O,metadata:ag({metadata:Uo(f),request:t,context:n})};continue}if(f.type==="tool-error"){r=!0;let y=f.toolCallId??f.id??`tool_${eg()}`,_=o.has(y);o.add(y);let O=f.toolName??f.name??"tool",P=f.input??f.args??{},L=typeof P==="string"?P:JSON.stringify(P),S=f.error===void 0?"Tool input was rejected by the model adapter":He(f.error);yield{type:"tool-call-delta",toolCallId:y,toolName:O,input:_?void 0:typeof P==="string"?void 0:P,inputText:_?void 0:L,metadata:nx({part:f,errorMessage:S,request:t,context:n,toolName:O})};continue}if(f.type==="finish")d=f.usage??f.totalUsage,c=f.providerMetadata,s=f.finishReason??f.rawFinishReason??f.reason;if(f.type==="error"){l=i?.current??He(f.error);break}if(f.type==="abort")break}else if(e.textStream)for await(let f of e.textStream)yield{type:"text-delta",text:f}}catch(f){l=i?.current??He(f)}let p,v;if(l)p=d,v=c;else if(e.usage)try{p=await e.usage}catch(f){if(!l)l=i?.current??He(f);p=d,v=c}else p=d,v=c;if(p)yield{type:"usage",usage:og(p,v,a)};yield{type:"finish",reason:l?"error":ax(s,r),error:l}}async function lx(e,t,n){switch(e){case"openai":{let{createOpenAIProviderModule:a}=await Promise.resolve().then(() => (Mv(),Lv));return a(t,n)}case"openai-compatible":{let{createOpenAICompatibleProviderModule:a}=await Promise.resolve().then(() => (Jv(),Fv));return a(t,n)}case"anthropic":{let{createAnthropicProviderModule:a}=await Promise.resolve().then(() => (Gv(),Kv));return a(t,n)}case"google":{let{createGoogleProviderModule:a}=await Promise.resolve().then(() => (Bv(),Wv));return a(t,n)}case"vertex":{let{createVertexProviderModule:a}=await Promise.resolve().then(() => (Xv(),Hv));return a(t,n)}case"bedrock":{let{createBedrockProviderModule:a}=await Promise.resolve().then(() => (Yv(),Vv));return a(t)}case"mistral":{let{createMistralProviderModule:a}=await Promise.resolve().then(() => (Qv(),qv));return a(t)}case"claude-code":{let{createClaudeCodeProviderModule:a}=await Promise.resolve().then(() => (li(),ui));return a(t)}case"openai-codex":{let{createOpenAICodexProviderModule:a}=await Promise.resolve().then(() => (li(),ui));return a(t)}case"opencode":{let{createOpenCodeProviderModule:a}=await Promise.resolve().then(() => (li(),ui));return a(t)}case"dify":{let{createDifyProviderModule:a}=await Promise.resolve().then(() => (li(),ui));return a(t)}}}function ve(e){return async(t)=>({async*stream(n,a){let i=a.logger,r,o={current:void 0};try{let s=await lx(e,t,a),l=await ex(t.providerId),d=ng(a)?void 0:tx(n),c=rx(n),p=typeof c==="string"&&c.trim().length>0,v=p?void 0:c;r=YI({model:s.model(a.model.id),messages:vt(n,a)?QI(n,a,v):ig(n.messages,v),...p?{system:c}:{},tools:d,temperature:n.temperature,maxOutputTokens:n.maxTokens,abortSignal:n.signal,experimental_telemetry:{isEnabled:l},providerOptions:jv(n,a,e),onError:({error:f})=>{let y=He(f);if(o.current=y,i?.error)i.error("[ai-sdk] stream error",{providerId:n.providerId,error:f,severity:"error"});else if(i)i.log(`[ai-sdk] stream error: ${y}`,{providerId:n.providerId,severity:"error"});xn(a.telemetry,{component:"llms",operation:"provider.stream",error:f,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}})}}),tg(r),yield*ux(r,n,a,a.model.metadata?.pricing,o)}catch(s){tg(r);let l=o.current??He(s);if(i?.error)i.error("[ai-sdk] provider error",{providerId:n.providerId,error:s,severity:"error"});else if(i)i.log(`[ai-sdk] provider error: ${l}`,{providerId:n.providerId,severity:"error"});xn(a.telemetry,{component:"llms",operation:"provider.create_or_stream",error:s,severity:"error",handled:!0,context:{providerId:n.providerId,modelId:n.modelId,providerKind:e}}),yield{type:"finish",reason:"error",error:l}}}})}var Dn,Zn,Cn,Rn,Ln,Mn,Eo,To,Oo,Po,jo;var ne=G(()=>{Un();Xe();Nv();Dn=ve("openai"),Zn=ve("openai-compatible"),Cn=ve("anthropic"),Rn=ve("google"),Ln=ve("vertex"),Mn=ve("bedrock"),Eo=ve("mistral"),To=ve("claude-code"),Oo=ve("openai-codex"),Po=ve("opencode"),jo=ve("dify")});var $t;((I)=>{I.ANTHROPIC="anthropic";I.CLAUDE_CODE="claude-code";I.CLINE="cline";I.OPENAI_NATIVE="openai-native";I.OPENAI_CODEX="openai-codex";I.OPENAI_CODEX_CLI="openai-codex-cli";I.OPENCODE="opencode";I.BEDROCK="bedrock";I.VERTEX="vertex";I.GEMINI="gemini";I.OLLAMA="ollama";I.LMSTUDIO="lmstudio";I.DEEPSEEK="deepseek";I.XAI="xai";I.TOGETHER="together";I.FIREWORKS="fireworks";I.GROQ="groq";I.CEREBRAS="cerebras";I.SAMBANOVA="sambanova";I.NEBIUS="nebius";I.BASETEN="baseten";I.REQUESTY="requesty";I.LITELLM="litellm";I.HUGGINGFACE="huggingface";I.VERCEL_AI_GATEWAY="vercel-ai-gateway";I.V0="v0";I.AIHUBMIX="aihubmix";I.HICAP="hicap";I.NOUS_RESEARCH="nousResearch";I.HUAWEI_CLOUD_MAAS="huawei-cloud-maas";I.WANDB="wandb";I.XIAOMI="xiaomi";I.KILO="kilo";I.ZAI="zai";I.ZAI_CODING_PLAN="zai-coding-plan";I.QWEN="qwen";I.QWEN_CODE="qwen-code";I.DOUBAO="doubao";I.MISTRAL="mistral";I.MOONSHOT="moonshot";I.ASKSAGE="asksage";I.MINIMAX="minimax";I.DIFY="dify";I.OCA="oca";I.SAPAICORE="sapaicore";I.OPENROUTER="openrouter"})($t||={});var Kg={openai:"openai-native",togetherai:"together","sap-ai-core":"sapaicore"},gi=Object.values($t);function Gn(e){return gi.includes(e)}function X(e){let t=e.trim();return Kg[t]??t}function hi(e){return X(e.routingProviderId??e.providerId)}ne();import{nanoid as Ko}from"nanoid";Un();var No={version:1778637073919,providers:{aihubmix:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM 5 Vision Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.7042,output:3.09848,cacheRead:0.169008,cacheWrite:0},releaseDate:"2026-05-09",family:"glm"},"qwen3.6-max-preview":{id:"qwen3.6-max-preview",name:"Qwen3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.268,output:7.608,cacheRead:0.1268,cacheWrite:1.585},releaseDate:"2026-05-09",family:"qwen"},"qwen3.6-plus":{id:"qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.282,output:1.692,cacheRead:0.0282,cacheWrite:0.3525},releaseDate:"2026-05-09",family:"qwen"},"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:50000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-flash-think":{id:"deepseek-v4-flash-think",name:"DeepSeek V4 Flash Think",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.154,output:0.308,cacheRead:0.0308,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.478,output:0.956,cacheRead:0.004302,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:3.9995,cacheRead:0.160835,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-opus-4-7-think":{id:"claude-opus-4-7-think",name:"Claude Opus 4.7 Thinking",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"coding-glm-5.1":{id:"coding-glm-5.1",name:"Coding-GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"coding-glm-5.1-free":{id:"coding-glm-5.1-free",name:"Coding GLM 5.1 (free)",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-11",family:"glm"},"qwen3.6-flash":{id:"qwen3.6-flash",name:"Qwen3.6 Flash",contextWindow:991000,maxInputTokens:991000,maxTokens:64000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.169,output:1.014,cacheRead:0.0169,cacheWrite:0.21125},releaseDate:"2026-04-02",family:"qwen"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.845,output:3.38,cacheRead:0.183112,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"coding-minimax-m2.7":{id:"coding-minimax-m2.7",name:"Coding MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:13100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-free":{id:"coding-minimax-m2.7-free",name:"Coding-MiniMax-M2.7-Free",contextWindow:204800,maxInputTokens:204800,maxTokens:13100,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"coding-minimax-m2.7-highspeed":{id:"coding-minimax-m2.7-highspeed",name:"Coding MiniMax M2.7 Highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:13100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"minimax-m2.7":{id:"minimax-m2.7",name:"MiniMax-M2.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2958,output:1.1832,cacheRead:0.05916,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-11",family:"gpt"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-11",family:"gpt-mini"},"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-sonnet-4-6-think":{id:"claude-sonnet-4-6-think",name:"Claude Sonnet 4.6 Think",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-6-think":{id:"claude-opus-4-6-think",name:"Claude Opus 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:0,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.105,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-15",family:"gpt"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.499,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"}},anthropic:{"claude-opus-4-7":{id:"claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6":{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6":{id:"claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5":{id:"claude-opus-4-5",name:"Claude Opus 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"claude-opus-4-5-20251101":{id:"claude-opus-4-5-20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5":{id:"claude-haiku-4-5",name:"Claude Haiku 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-haiku-4-5-20251001":{id:"claude-haiku-4-5-20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5":{id:"claude-sonnet-4-5",name:"Claude Sonnet 4.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-sonnet-4-5-20250929":{id:"claude-sonnet-4-5-20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1":{id:"claude-opus-4-1",name:"Claude Opus 4.1 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-1-20250805":{id:"claude-opus-4-1-20250805",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4-0":{id:"claude-opus-4-0",name:"Claude Opus 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-opus-4-20250514":{id:"claude-opus-4-20250514",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4-0":{id:"claude-sonnet-4-0",name:"Claude Sonnet 4 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-sonnet-4-20250514":{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-7-sonnet-20250219":{id:"claude-3-7-sonnet-20250219",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"claude-3-5-haiku-20241022":{id:"claude-3-5-haiku-20241022",name:"Claude Haiku 3.5",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-haiku-latest":{id:"claude-3-5-haiku-latest",name:"Claude Haiku 3.5 (latest)",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-sonnet-20241022":{id:"claude-3-5-sonnet-20241022",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"claude-3-5-sonnet-20240620":{id:"claude-3-5-sonnet-20240620",name:"Claude Sonnet 3.5",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-06-20",family:"claude-sonnet"},"claude-3-haiku-20240307":{id:"claude-3-haiku-20240307",name:"Claude Haiku 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"claude-3-sonnet-20240229":{id:"claude-3-sonnet-20240229",name:"Claude Sonnet 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:0.3},releaseDate:"2024-03-04",family:"claude-sonnet"},"claude-3-opus-20240229":{id:"claude-3-opus-20240229",name:"Claude Opus 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},baseten:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"nvidia/Nemotron-120B-A12B":{id:"nvidia/Nemotron-120B-A12B",name:"Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:32678,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204000,maxInputTokens:204000,maxTokens:10200,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.95,output:3.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-30",family:"kimi"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"zai-org/GLM-4.6":{id:"zai-org/GLM-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:1e4,capabilities:["tools","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-16",family:"glm"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:164000,maxInputTokens:164000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"deepseek-ai/DeepSeek-V3-0324":{id:"deepseek-ai/DeepSeek-V3-0324",name:"DeepSeek V3 0324",contextWindow:164000,maxInputTokens:164000,maxTokens:131000,capabilities:["tools","temperature"],pricing:{input:0.77,output:0.77,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-24",family:"deepseek"}},bedrock:{"anthropic.claude-opus-4-7":{id:"anthropic.claude-opus-4-7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"eu.anthropic.claude-opus-4-7":{id:"eu.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"global.anthropic.claude-opus-4-7":{id:"global.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"jp.anthropic.claude-opus-4-7":{id:"jp.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"us.anthropic.claude-opus-4-7":{id:"us.anthropic.claude-opus-4-7",name:"Claude Opus 4.7 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"minimax.minimax-m2.5":{id:"minimax.minimax-m2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"zai.glm-5":{id:"zai.glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:101376,capabilities:["tools","reasoning","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"glm"},"nvidia.nemotron-super-3-120b":{id:"nvidia.nemotron-super-3-120b",name:"NVIDIA Nemotron 3 Super 120B A12B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.65,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"anthropic.claude-sonnet-4-6":{id:"anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-6":{id:"au.anthropic.claude-sonnet-4-6",name:"AU Anthropic Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3.3,output:16.5,cacheRead:0.33,cacheWrite:4.125},releaseDate:"2026-02-17",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-6":{id:"eu.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-6":{id:"global.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-6":{id:"jp.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (JP)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"mistral.devstral-2-123b":{id:"mistral.devstral-2-123b",name:"Devstral 2 123B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17",family:"devstral"},"us.anthropic.claude-sonnet-4-6":{id:"us.anthropic.claude-sonnet-4-6",name:"Claude Sonnet 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"deepseek.v3.2":{id:"deepseek.v3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","temperature"],pricing:{input:0.62,output:1.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"deepseek"},"moonshotai.kimi-k2.5":{id:"moonshotai.kimi-k2.5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"kimi"},"qwen.qwen3-coder-next":{id:"qwen.qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-06",family:"qwen"},"anthropic.claude-opus-4-6-v1":{id:"anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"au.anthropic.claude-opus-4-6-v1":{id:"au.anthropic.claude-opus-4-6-v1",name:"AU Anthropic Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:16.5,output:82.5,cacheRead:1.65,cacheWrite:20.625},releaseDate:"2026-02-05",family:"claude-opus"},"eu.anthropic.claude-opus-4-6-v1":{id:"eu.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (EU)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"global.anthropic.claude-opus-4-6-v1":{id:"global.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (Global)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"us.anthropic.claude-opus-4-6-v1":{id:"us.anthropic.claude-opus-4-6-v1",name:"Claude Opus 4.6 (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"zai.glm-4.7-flash":{id:"zai.glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"minimax.minimax-m2.1":{id:"minimax.minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"nvidia.nemotron-nano-3-30b":{id:"nvidia.nemotron-nano-3-30b",name:"NVIDIA Nemotron Nano 3 30B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"nemotron"},"zai.glm-4.7":{id:"zai.glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"mistral.magistral-small-2509":{id:"mistral.magistral-small-2509",name:"Magistral Small 1.2",contextWindow:128000,maxInputTokens:128000,maxTokens:40000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"magistral"},"mistral.ministral-3-3b-instruct":{id:"mistral.ministral-3-3b-instruct",name:"Ministral 3 3B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"ministral"},"mistral.mistral-large-3-675b-instruct":{id:"mistral.mistral-large-3-675b-instruct",name:"Mistral Large 3",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral"},"moonshot.kimi-k2-thinking":{id:"moonshot.kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"kimi-thinking"},"anthropic.claude-opus-4-5-20251101-v1:0":{id:"anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"eu.anthropic.claude-opus-4-5-20251101-v1:0":{id:"eu.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"global.anthropic.claude-opus-4-5-20251101-v1:0":{id:"global.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"us.anthropic.claude-opus-4-5-20251101-v1:0":{id:"us.anthropic.claude-opus-4-5-20251101-v1:0",name:"Claude Opus 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"minimax.minimax-m2":{id:"minimax.minimax-m2",name:"MiniMax M2",contextWindow:204608,maxInputTokens:204608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"},"anthropic.claude-haiku-4-5-20251001-v1:0":{id:"anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"au.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"au.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"eu.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"eu.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"global.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"global.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"us.anthropic.claude-haiku-4-5-20251001-v1:0":{id:"us.anthropic.claude-haiku-4-5-20251001-v1:0",name:"Claude Haiku 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"qwen.qwen3-vl-235b-a22b":{id:"qwen.qwen3-vl-235b-a22b",name:"Qwen/Qwen3-VL-235B-A22B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.3,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-04",family:"qwen"},"anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"au.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"au.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (AU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"eu.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"eu.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (EU)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"global.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"global.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (Global)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"jp.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"jp.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (JP)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"us.anthropic.claude-sonnet-4-5-20250929-v1:0":{id:"us.anthropic.claude-sonnet-4-5-20250929-v1:0",name:"Claude Sonnet 4.5 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek.v3-v1:0":{id:"deepseek.v3-v1:0",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.58,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"deepseek"},"qwen.qwen3-235b-a22b-2507-v1:0":{id:"qwen.qwen3-235b-a22b-2507-v1:0",name:"Qwen3 235B A22B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-32b-v1:0":{id:"qwen.qwen3-32b-v1:0",name:"Qwen3 32B (dense)",contextWindow:16384,maxInputTokens:16384,maxTokens:819,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-30b-a3b-v1:0":{id:"qwen.qwen3-coder-30b-a3b-v1:0",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-coder-480b-a35b-v1:0":{id:"qwen.qwen3-coder-480b-a35b-v1:0",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.22,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"qwen.qwen3-next-80b-a3b":{id:"qwen.qwen3-next-80b-a3b",name:"Qwen/Qwen3-Next-80B-A3B-Instruct",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18",family:"qwen"},"anthropic.claude-opus-4-1-20250805-v1:0":{id:"anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"us.anthropic.claude-opus-4-1-20250805-v1:0":{id:"us.anthropic.claude-opus-4-1-20250805-v1:0",name:"Claude Opus 4.1 (US)",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google.gemma-3-27b-it":{id:"google.gemma-3-27b-it",name:"Google Gemma 3 27B Instruct",contextWindow:202752,maxInputTokens:202752,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.12,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-27",family:"gemma"},"mistral.voxtral-small-24b-2507":{id:"mistral.voxtral-small-24b-2507",name:"Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:8192,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01",family:"mistral"},"writer.palmyra-x4-v1:0":{id:"writer.palmyra-x4-v1:0",name:"Palmyra X4",contextWindow:122880,maxInputTokens:122880,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"writer.palmyra-x5-v1:0":{id:"writer.palmyra-x5-v1:0",name:"Palmyra X5",contextWindow:1040000,maxInputTokens:1040000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"palmyra"},"mistral.pixtral-large-2502-v1:0":{id:"mistral.pixtral-large-2502-v1:0",name:"Pixtral Large (25.02)",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-08",family:"mistral"},"meta.llama4-maverick-17b-instruct-v1:0":{id:"meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta.llama4-scout-17b-instruct-v1:0":{id:"meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-maverick-17b-instruct-v1:0":{id:"us.meta.llama4-maverick-17b-instruct-v1:0",name:"Llama 4 Maverick 17B Instruct (US)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.24,output:0.97,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"us.meta.llama4-scout-17b-instruct-v1:0":{id:"us.meta.llama4-scout-17b-instruct-v1:0",name:"Llama 4 Scout 17B Instruct (US)",contextWindow:3500000,maxInputTokens:3500000,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"deepseek.r1-v1:0":{id:"deepseek.r1-v1:0",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"us.deepseek.r1-v1:0":{id:"us.deepseek.r1-v1:0",name:"DeepSeek-R1 (US)",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"meta.llama3-3-70b-instruct-v1:0":{id:"meta.llama3-3-70b-instruct-v1:0",name:"Llama 3.3 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"amazon.nova-lite-v1:0":{id:"amazon.nova-lite-v1:0",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon.nova-micro-v1:0":{id:"amazon.nova-micro-v1:0",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon.nova-pro-v1:0":{id:"amazon.nova-pro-v1:0",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"amazon.nova-2-lite-v1:0":{id:"amazon.nova-2-lite-v1:0",name:"Nova 2 Lite",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.33,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nova"},"google.gemma-3-4b-it":{id:"google.gemma-3-4b-it",name:"Gemma 3 4B IT",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0.04,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gemma"},"mistral.ministral-3-14b-instruct":{id:"mistral.ministral-3-14b-instruct",name:"Ministral 14B 3.0",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.ministral-3-8b-instruct":{id:"mistral.ministral-3-8b-instruct",name:"Ministral 3 8B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"mistral.voxtral-mini-3b-2507":{id:"mistral.voxtral-mini-3b-2507",name:"Voxtral Mini 3B 2507",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"mistral"},"nvidia.nemotron-nano-12b-v2":{id:"nvidia.nemotron-nano-12b-v2",name:"NVIDIA Nemotron Nano 12B v2 VL BF16",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"nvidia.nemotron-nano-9b-v2":{id:"nvidia.nemotron-nano-9b-v2",name:"NVIDIA Nemotron Nano 9B v2",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.06,output:0.23,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"nemotron"},"openai.gpt-oss-120b-1:0":{id:"openai.gpt-oss-120b-1:0",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-20b-1:0":{id:"openai.gpt-oss-20b-1:0",name:"gpt-oss-20b",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-safeguard-120b":{id:"openai.gpt-oss-safeguard-120b",name:"GPT OSS Safeguard 120B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"openai.gpt-oss-safeguard-20b":{id:"openai.gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"meta.llama3-1-70b-instruct-v1:0":{id:"meta.llama3-1-70b-instruct-v1:0",name:"Llama 3.1 70B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta.llama3-1-8b-instruct-v1:0":{id:"meta.llama3-1-8b-instruct-v1:0",name:"Llama 3.1 8B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},cerebras:{"zai-glm-4.7":{id:"zai-glm-4.7",name:"Z.AI GLM-4.7",contextWindow:131072,maxInputTokens:131072,maxTokens:40000,capabilities:["tools","temperature"],pricing:{input:2.25,output:2.75,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-10"},"gpt-oss-120b":{id:"gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.69,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen-3-235b-a22b-instruct-2507":{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen 3 235B Instruct",contextWindow:131000,maxInputTokens:131000,maxTokens:32000,capabilities:["tools","temperature"],pricing:{input:0.6,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"llama3.1-8b":{id:"llama3.1-8b",name:"Llama 3.1 8B",contextWindow:32000,maxInputTokens:32000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01",family:"llama"}},deepseek:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"deepseek-chat":{id:"deepseek-chat",name:"DeepSeek Chat",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek-reasoner":{id:"deepseek-reasoner",name:"DeepSeek Reasoner",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"}},fireworks:{"accounts/fireworks/models/deepseek-v4-pro":{id:"accounts/fireworks/models/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"accounts/fireworks/models/kimi-k2p6":{id:"accounts/fireworks/models/kimi-k2p6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-17",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p7":{id:"accounts/fireworks/models/minimax-m2p7",name:"MiniMax-M2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-04-12",family:"minimax"},"accounts/fireworks/models/qwen3p6-plus":{id:"accounts/fireworks/models/qwen3p6-plus",name:"Qwen 3.6 Plus",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-04-04",family:"qwen"},"accounts/fireworks/models/glm-5p1":{id:"accounts/fireworks/models/glm-5p1",name:"GLM 5.1",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"accounts/fireworks/models/minimax-m2p5":{id:"accounts/fireworks/models/minimax-m2p5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"accounts/fireworks/models/glm-5":{id:"accounts/fireworks/models/glm-5",name:"GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"accounts/fireworks/models/kimi-k2p5":{id:"accounts/fireworks/models/kimi-k2p5",name:"Kimi K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/routers/kimi-k2p5-turbo":{id:"accounts/fireworks/routers/kimi-k2p5-turbo",name:"Kimi K2.5 Turbo",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi-thinking"},"accounts/fireworks/models/minimax-m2p1":{id:"accounts/fireworks/models/minimax-m2p1",name:"MiniMax-M2.1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"accounts/fireworks/models/glm-4p7":{id:"accounts/fireworks/models/glm-4p7",name:"GLM 4.7",contextWindow:198000,maxInputTokens:198000,maxTokens:9900,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"accounts/fireworks/models/deepseek-v3p2":{id:"accounts/fireworks/models/deepseek-v3p2",name:"DeepSeek V3.2",contextWindow:160000,maxInputTokens:160000,maxTokens:8000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.56,output:1.68,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"accounts/fireworks/models/kimi-k2-thinking":{id:"accounts/fireworks/models/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.3,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"accounts/fireworks/models/deepseek-v3p1":{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.56,output:1.68,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"accounts/fireworks/models/gpt-oss-120b":{id:"accounts/fireworks/models/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/gpt-oss-20b":{id:"accounts/fireworks/models/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"accounts/fireworks/models/glm-4p5-air":{id:"accounts/fireworks/models/glm-4p5-air",name:"GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01",family:"glm-air"},"accounts/fireworks/models/glm-4p5":{id:"accounts/fireworks/models/glm-4p5",name:"GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.55,output:2.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"glm"},"accounts/fireworks/models/kimi-k2-instruct":{id:"accounts/fireworks/models/kimi-k2-instruct",name:"Kimi K2 Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"}},gemini:{"gemini-3.1-flash-lite":{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini-flash-lite"},"gemma-4-26b-a4b-it":{id:"gemma-4-26b-a4b-it",name:"Gemma 4 26B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemma-4-31b-it":{id:"gemma-4-31b-it",name:"Gemma 4 31B",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"gemini-3.1-flash-lite-preview":{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"gemini-3.1-pro-preview":{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3.1-pro-preview-customtools":{id:"gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"gemini-3-pro-preview":{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"gemini-2.5-flash-lite-preview-09-2025":{id:"gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-2.5-flash-preview-09-2025":{id:"gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-latest":{id:"gemini-flash-latest",name:"Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"gemini-flash-lite-latest":{id:"gemini-flash-lite-latest",name:"Gemini Flash-Lite Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"gemini-live-2.5-flash":{id:"gemini-live-2.5-flash",name:"Gemini Live 2.5 Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-01",family:"gemini-flash"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-2.5-flash-lite-preview-06-17":{id:"gemini-2.5-flash-lite-preview-06-17",name:"Gemini 2.5 Flash Lite Preview 06-17",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"gemini-live-2.5-flash-preview-native-audio":{id:"gemini-live-2.5-flash-preview-native-audio",name:"Gemini Live 2.5 Flash Preview Native Audio",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash"},"gemini-2.5-pro-preview-06-05":{id:"gemini-2.5-pro-preview-06-05",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-06-05",family:"gemini-pro"},"gemini-2.5-flash-preview-05-20":{id:"gemini-2.5-flash-preview-05-20",name:"Gemini 2.5 Flash Preview 05-20",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-05-20",family:"gemini-flash"},"gemini-2.5-pro-preview-05-06":{id:"gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-05-06",family:"gemini-pro"},"gemini-2.5-flash-preview-04-17":{id:"gemini-2.5-flash-preview-04-17",name:"Gemini 2.5 Flash Preview 04-17",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-04-17",family:"gemini-flash"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"gemma-3-27b-it":{id:"gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"gemini-2.0-flash":{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"gemini-2.0-flash-lite":{id:"gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash-lite"},"gemini-1.5-flash-8b":{id:"gemini-1.5-flash-8b",name:"Gemini 1.5 Flash-8B",contextWindow:1e6,maxInputTokens:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.0375,output:0.15,cacheRead:0.01,cacheWrite:0},releaseDate:"2024-10-03",family:"gemini-flash"},"gemini-1.5-flash":{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.01875,cacheWrite:0},releaseDate:"2024-05-14",family:"gemini-flash"},"gemini-1.5-pro":{id:"gemini-1.5-pro",name:"Gemini 1.5 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:1.25,output:5,cacheRead:0.3125,cacheWrite:0},releaseDate:"2024-02-15",family:"gemini-pro"}},groq:{"moonshotai/kimi-k2-instruct-0905":{id:"moonshotai/kimi-k2-instruct-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"groq/compound":{id:"groq/compound",name:"Compound",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"groq/compound-mini":{id:"groq/compound-mini",name:"Compound Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"groq"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"meta-llama/llama-4-scout-17b-16e-instruct":{id:"meta-llama/llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout 17B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.11,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"Safety GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-03-05",family:"gpt-oss"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen3 32B",contextWindow:131072,maxInputTokens:131072,maxTokens:40960,capabilities:["tools","reasoning","temperature"],pricing:{input:0.29,output:0.59,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-23",family:"qwen"},"llama-3.3-70b-versatile":{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B Versatile",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.59,output:0.79,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"llama-3.1-8b-instant":{id:"llama-3.1-8b-instant",name:"Llama 3.1 8B Instant",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},huggingface:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi-K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-03",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"Qwen/Qwen3-Coder-Next":{id:"Qwen/Qwen3-Coder-Next",name:"Qwen3-Coder-Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0.2,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-01",family:"kimi"},"MiniMaxAI/MiniMax-M2.1":{id:"MiniMaxAI/MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"zai-org/GLM-4.7":{id:"zai-org/GLM-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"XiaomiMiMo/MiMo-V2-Flash":{id:"XiaomiMiMo/MiMo-V2-Flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:4096,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"moonshotai/Kimi-K2-Thinking":{id:"moonshotai/Kimi-K2-Thinking",name:"Kimi-K2-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"Qwen/Qwen3-Next-80B-A3B-Instruct":{id:"Qwen/Qwen3-Next-80B-A3B-Instruct",name:"Qwen3-Next-80B-A3B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","temperature"],pricing:{input:0.3,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/Kimi-K2-Instruct-0905":{id:"moonshotai/Kimi-K2-Instruct-0905",name:"Kimi-K2-Instruct-0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-04",family:"kimi"},"zai-org/GLM-4.7-Flash":{id:"zai-org/GLM-4.7-Flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-08",family:"glm"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"moonshotai/Kimi-K2-Instruct":{id:"moonshotai/Kimi-K2-Instruct",name:"Kimi-K2-Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"},"deepseek-ai/DeepSeek-R1-0528":{id:"deepseek-ai/DeepSeek-R1-0528",name:"DeepSeek-R1-0528",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:3,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-28",family:"deepseek-thinking"}},kilo:{"baidu/cobuddy:free":{id:"baidu/cobuddy:free",name:"Baidu: CoBuddy (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-05-06"},"openai/gpt-chat-latest":{id:"openai/gpt-chat-latest",name:"OpenAI: GPT Chat Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-05-05"},"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"xAI: Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:4096,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01"},"ibm-granite/granite-4.1-8b":{id:"ibm-granite/granite-4.1-8b",name:"IBM: Granite 4.1 8B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.05,output:0.1,cacheRead:0.05,cacheWrite:0},releaseDate:"2026-04-30"},"mistralai/mistral-medium-3-5":{id:"mistralai/mistral-medium-3-5",name:"Mistral: Mistral Medium 3.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.5,output:7.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"NVIDIA: Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Poolside: Laguna M.1 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Poolside: Laguna XS.2 (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"~anthropic/claude-haiku-latest":{id:"~anthropic/claude-haiku-latest",name:"Anthropic: Claude Haiku Latest",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-04-27"},"~anthropic/claude-sonnet-latest":{id:"~anthropic/claude-sonnet-latest",name:"Anthropic: Claude Sonnet Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-04-27"},"~google/gemini-flash-latest":{id:"~google/gemini-flash-latest",name:"Google: Gemini Flash Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.08333333333333334},releaseDate:"2026-04-27"},"~google/gemini-pro-latest":{id:"~google/gemini-pro-latest",name:"Google: Gemini Pro Latest",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0.375},releaseDate:"2026-04-27"},"~moonshotai/kimi-latest":{id:"~moonshotai/kimi-latest",name:"MoonshotAI: Kimi Latest",contextWindow:262142,maxInputTokens:262142,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.74,output:3.49,cacheRead:0.14,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-latest":{id:"~openai/gpt-latest",name:"OpenAI: GPT Latest",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-27"},"~openai/gpt-mini-latest":{id:"~openai/gpt-mini-latest",name:"OpenAI: GPT Mini Latest",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.5-plus-20260420":{id:"qwen/qwen3.5-plus-20260420",name:"Qwen: Qwen3.5 Plus 2026-04-20",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-27b":{id:"qwen/qwen3.6-27b",name:"Qwen: Qwen3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.325,output:3.25,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-27"},"qwen/qwen3.6-flash":{id:"qwen/qwen3.6-flash",name:"Qwen: Qwen3.6 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0.3125},releaseDate:"2026-04-27"},"qwen/qwen3.6-max-preview":{id:"qwen/qwen3.6-max-preview",name:"Qwen: Qwen3.6 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.04,output:6.24,cacheRead:0,cacheWrite:1.3},releaseDate:"2026-04-27"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek: DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.0028,cacheWrite:0},releaseDate:"2026-04-24"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek: DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.435,output:0.87,cacheRead:0.003625,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"OpenAI: GPT-5.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"OpenAI: GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24"},"inclusionai/ling-2.6-1t:free":{id:"inclusionai/ling-2.6-1t:free",name:"inclusionAI: Ling-2.6-1T (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23"},"tencent/hy3-preview:free":{id:"tencent/hy3-preview:free",name:"Tencent: Hy3 Preview (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo V2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"inclusionai/ling-2.6-flash":{id:"inclusionai/ling-2.6-flash",name:"inclusionAI: Ling-2.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.016,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"MoonshotAI: Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:3.5,cacheRead:0.375,cacheWrite:0},releaseDate:"2026-04-20"},"~anthropic/claude-opus-latest":{id:"~anthropic/claude-opus-latest",name:"Anthropic: Claude Opus Latest",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Anthropic: Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16"},"anthropic/claude-opus-4.6-fast":{id:"anthropic/claude-opus-4.6-fast",name:"Anthropic: Claude Opus 4.6 (Fast)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:30,output:150,cacheRead:3,cacheWrite:37.5},releaseDate:"2026-04-07"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Google: Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.12,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Google: Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Arcee AI: Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01"},"z-ai/glm-5v-turbo":{id:"z-ai/glm-5v-turbo",name:"Z.ai: GLM 5V Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01"},"x-ai/grok-4.20":{id:"x-ai/grok-4.20",name:"xAI: Grok 4.20",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-31"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kwaipilot: KAT-Coder-Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:80000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"Z.ai: GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:1.26,output:3.96,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27"},"rekaai/reka-edge":{id:"rekaai/reka-edge",name:"Reka Edge",contextWindow:16384,maxInputTokens:16384,maxTokens:819,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-20"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax: MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax-m2.7"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"OpenAI: GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"OpenAI: GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral: Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0},releaseDate:"2026-03-16"},"kilo-auto/balanced":{id:"kilo-auto/balanced",name:"Kilo Auto Balanced",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/free":{id:"kilo-auto/free",name:"Kilo Auto Free",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/frontier":{id:"kilo-auto/frontier",name:"Kilo Auto Frontier",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:5,output:25,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"kilo-auto/small":{id:"kilo-auto/small",name:"Kilo Auto Small",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"openrouter/auto":{id:"openrouter/auto",name:"Auto Router",contextWindow:2000000,maxInputTokens:2000000,maxTokens:32768,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-15"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"Z.ai: GLM 5 Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"NVIDIA: Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-12"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"NVIDIA: Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-03-11"},"bytedance-seed/seed-2.0-lite":{id:"bytedance-seed/seed-2.0-lite",name:"ByteDance Seed: Seed-2.0-Lite",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"qwen/qwen3.5-9b":{id:"qwen/qwen3.5-9b",name:"Qwen: Qwen3.5-9B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.05,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-10"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"OpenAI: GPT-5.4",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:2.5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"OpenAI: GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-06"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"OpenAI: GPT-5.3 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-04"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Google: Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.25,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-03"},"bytedance-seed/seed-2.0-mini":{id:"bytedance-seed/seed-2.0-mini",name:"ByteDance Seed: Seed-2.0-Mini",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-27"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Google: Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-122b-a10b":{id:"qwen/qwen3.5-122b-a10b",name:"Qwen: Qwen3.5-122B-A10B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.08,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-27b":{id:"qwen/qwen3.5-27b",name:"Qwen: Qwen3.5-27B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-35b-a3b":{id:"qwen/qwen3.5-35b-a3b",name:"Qwen: Qwen3.5-35B-A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1625,output:1.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-26"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"OpenAI: GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:1.75,output:14,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25"},"inception/mercury-2":{id:"inception/mercury-2",name:"Inception: Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-02-24"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Google: Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Anthropic: Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-17"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen: Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.39,output:2.34,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen: Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax: MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.2,cacheRead:0.029,cacheWrite:0},releaseDate:"2026-02-12"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"Z.ai: GLM 5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.72,output:2.3,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Anthropic: Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05"},"qwen/qwen3-coder-next":{id:"qwen/qwen3-coder-next",name:"Qwen: Qwen3 Coder Next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.12,output:0.75,cacheRead:0.035,cacheWrite:0},releaseDate:"2026-02-02"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"StepFun: Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Arcee AI: Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-28"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"MoonshotAI: Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:65535,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.45,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"upstage/solar-pro-3":{id:"upstage/solar-pro-3",name:"Upstage: Solar Pro 3",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27"},"qwen/qwen3-max-thinking":{id:"qwen/qwen3-max-thinking",name:"Qwen: Qwen3 Max Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.78,output:3.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-23"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"Z.ai: GLM 4.7 Flash",contextWindow:202752,maxInputTokens:202752,maxTokens:40551,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"OpenAI: GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14"},"mistralai/mistral-small-24b-instruct-2501":{id:"mistralai/mistral-small-24b-instruct-2501",name:"Mistral: Mistral Small 3",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.05,output:0.08,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-29"},"bytedance-seed/seed-1.6-flash":{id:"bytedance-seed/seed-1.6-flash",name:"ByteDance Seed: Seed 1.6 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax: MiniMax M2.1",contextWindow:196608,maxInputTokens:196608,maxTokens:39322,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:0.95,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-23"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"Z.ai: GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.38,output:1.98,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-12-22"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Google: Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0.083333},releaseDate:"2025-12-17"},"mistralai/ministral-14b-2512":{id:"mistralai/ministral-14b-2512",name:"Mistral: Ministral 3 14B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.2,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-16"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.09,output:0.29,cacheRead:0.045,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"OpenAI: GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"OpenAI: GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"OpenAI: GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11"},"relace/relace-search":{id:"relace/relace-search",name:"Relace: Relace Search",contextWindow:256000,maxInputTokens:256000,maxTokens:128000,capabilities:["tools","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09"},"essentialai/rnj-1-instruct":{id:"essentialai/rnj-1-instruct",name:"EssentialAI: Rnj 1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05"},"mistralai/ministral-3b-2512":{id:"mistralai/ministral-3b-2512",name:"Mistral: Ministral 3 3B 2512",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"mistralai/ministral-8b-2512":{id:"mistralai/ministral-8b-2512",name:"Mistral: Ministral 3 8B 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02"},"arcee-ai/trinity-mini":{id:"arcee-ai/trinity-mini",name:"Arcee AI: Trinity Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.045,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek: DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.26,output:0.38,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-12-01"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Prime Intellect: INTELLECT-3",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Anthropic: Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24"},"x-ai/grok-4.1-fast":{id:"x-ai/grok-4.1-fast",name:"xAI: Grok 4.1 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"OpenAI: GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"OpenAI: GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"OpenAI: GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"OpenAI: GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"OpenAI: GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"MoonshotAI: Kimi K2 Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65535,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-06"},"amazon/nova-premier-v1":{id:"amazon/nova-premier-v1",name:"Amazon: Nova Premier 1.0",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32000,capabilities:["images","tools","temperature"],pricing:{input:2.5,output:12.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-01"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"OpenAI: gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.075,output:0.3,cacheRead:0.037,cacheWrite:0},releaseDate:"2025-10-29"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax: MiniMax M2",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.255,output:1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-10-23"},"qwen/qwen3-vl-32b-instruct":{id:"qwen/qwen3-vl-32b-instruct",name:"Qwen: Qwen3 VL 32B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.104,output:0.416,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-21"},"openai/gpt-5-image-mini":{id:"openai/gpt-5-image-mini",name:"OpenAI: GPT-5 Image Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:2.5,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-16"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Anthropic: Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-instruct":{id:"qwen/qwen3-vl-8b-instruct",name:"Qwen: Qwen3 VL 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"qwen/qwen3-vl-8b-thinking":{id:"qwen/qwen3-vl-8b-thinking",name:"Qwen: Qwen3 VL 8B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.117,output:1.365,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-15"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"OpenAI: GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:10,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-14"},"qwen/qwen3-vl-30b-a3b-thinking":{id:"qwen/qwen3-vl-30b-a3b-thinking",name:"Qwen: Qwen3 VL 30B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.13,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-11"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"OpenAI: GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06"},"qwen/qwen3-vl-30b-a3b-instruct":{id:"qwen/qwen3-vl-30b-a3b-instruct",name:"Qwen: Qwen3 VL 30B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.13,output:0.52,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-05"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"Z.ai: GLM 4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:10240,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39,output:1.9,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-09-30"},"z-ai/glm-4.6v":{id:"z-ai/glm-4.6v",name:"Z.ai: GLM 4.6V",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Anthropic: Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Google: Gemini 2.5 Flash Lite Preview 09-2025",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-09-25"},"qwen/qwen3-vl-235b-a22b-thinking":{id:"qwen/qwen3-vl-235b-a22b-thinking",name:"Qwen: Qwen3 VL 235B A22B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.26,output:2.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24"},"qwen/qwen3-vl-235b-a22b-instruct":{id:"qwen/qwen3-vl-235b-a22b-instruct",name:"Qwen: Qwen3 VL 235B A22B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.88,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-23"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek: DeepSeek V3.1 Terminus",contextWindow:163840,maxInputTokens:163840,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.21,output:0.79,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-09-22"},"alibaba/tongyi-deepresearch-30b-a3b":{id:"alibaba/tongyi-deepresearch-30b-a3b",name:"Tongyi DeepResearch 30B A3B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.09,output:0.45,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-18"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"OpenAI: GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Mistral: Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-12"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen: Qwen3 Next 80B A3B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:52429,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen: Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.0975,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11"},"qwen/qwen-plus-2025-07-28":{id:"qwen/qwen-plus-2025-07-28",name:"Qwen: Qwen Plus 0728",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"qwen/qwen-plus-2025-07-28:thinking":{id:"qwen/qwen-plus-2025-07-28:thinking",name:"Qwen: Qwen Plus 0728 (thinking)",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.26,output:0.78,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-09"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"MoonshotAI: Kimi K2 0905",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen: Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-05"},"bytedance-seed/seed-1.6":{id:"bytedance-seed/seed-1.6",name:"ByteDance Seed: Seed 1.6",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-09"},"x-ai/grok-code-fast-1:optimized:free":{id:"x-ai/grok-code-fast-1:optimized:free",name:"xAI: Grok Code Fast 1 Optimized (experimental, free)",contextWindow:256000,maxInputTokens:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-27"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen: Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2025-08-26"},"stepfun/step-3.5-flash:free":{id:"stepfun/step-3.5-flash:free",name:"StepFun: Step 3.5 Flash (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-26"},"x-ai/grok-code-fast-1":{id:"x-ai/grok-code-fast-1",name:"xAI: Grok Code Fast 1",contextWindow:256000,maxInputTokens:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-26"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek: DeepSeek V3.1",contextWindow:32768,maxInputTokens:32768,maxTokens:7168,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.75,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21"},"x-ai/grok-4-fast":{id:"x-ai/grok-4-fast",name:"xAI: Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-08-19"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"NVIDIA: Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18"},"openai/gpt-4o-audio-preview":{id:"openai/gpt-4o-audio-preview",name:"OpenAI: GPT-4o Audio",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-15"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral: Mistral Medium 3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"Z.ai: GLM 4.5V",contextWindow:65536,maxInputTokens:65536,maxTokens:16384,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-08-11"},"ai21/jamba-large-1.7":{id:"ai21/jamba-large-1.7",name:"AI21: Jamba Large 1.7",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:2,output:8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-09"},"openai/gpt-5":{id:"openai/gpt-5",name:"OpenAI: GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"OpenAI: GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"OpenAI: GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Anthropic: Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"OpenAI: gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.039,output:0.19,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"OpenAI: gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.03,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Mistral: Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen: Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen: Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.09,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2025-07-29"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen: Qwen3 30B A3B Thinking 2507",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","reasoning","temperature"],pricing:{input:0.051,output:0.34,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"Z.ai: GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-07-28"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"Z.ai: GLM 4.5 Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.13,output:0.85,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-07-28"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen: Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.11,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"z-ai/glm-4-32b":{id:"z-ai/glm-4-32b",name:"Z.ai: GLM 4 32B ",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen: Qwen3 Coder 480B A35B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.22,output:1,cacheRead:0.022,cacheWrite:0},releaseDate:"2025-07-23"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen: Qwen3 Coder Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.195,output:0.975,cacheRead:0.06,cacheWrite:0},releaseDate:"2025-07-23"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Google: Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.083333},releaseDate:"2025-07-17"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"MoonshotAI: Kimi K2 0711",contextWindow:131000,maxInputTokens:131000,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11"},"mistralai/devstral-medium":{id:"mistralai/devstral-medium",name:"Mistral: Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10"},"x-ai/grok-4":{id:"x-ai/grok-4",name:"xAI: Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:51200,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09"},"tngtech/deepseek-r1t2-chimera":{id:"tngtech/deepseek-r1t2-chimera",name:"TNG: DeepSeek R1T2 Chimera",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.85,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-07-08"},"mistralai/voxtral-small-24b-2507":{id:"mistralai/voxtral-small-24b-2507",name:"Mistral: Voxtral Small 24B 2507",contextWindow:32000,maxInputTokens:32000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-01"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen: Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-07-01"},"baidu/ernie-4.5-21b-a3b":{id:"baidu/ernie-4.5-21b-a3b",name:"Baidu: ERNIE 4.5 21B A3B",contextWindow:120000,maxInputTokens:120000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:0.07,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"baidu/ernie-4.5-vl-28b-a3b":{id:"baidu/ernie-4.5-vl-28b-a3b",name:"Baidu: ERNIE 4.5 VL 28B A3B",contextWindow:30000,maxInputTokens:30000,maxTokens:8000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.14,output:0.56,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-30"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral: Mistral Small 3.2 24B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.18,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-06-20"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Google: Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0.083333},releaseDate:"2025-06-17"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax: MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17"},"google/gemini-2.5-pro-preview":{id:"google/gemini-2.5-pro-preview",name:"Google: Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-06-05"},"deepseek/deepseek-r1-0528":{id:"deepseek/deepseek-r1-0528",name:"DeepSeek: R1 0528",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.45,output:2.15,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-05-28"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Anthropic: Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Anthropic: Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22"},"mistralai/devstral-small":{id:"mistralai/devstral-small",name:"Mistral: Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral: Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07"},"arcee-ai/virtuoso-large":{id:"arcee-ai/virtuoso-large",name:"Arcee AI: Virtuoso Large",contextWindow:131072,maxInputTokens:131072,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.75,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-06"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Google: Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-05-06"},"openai/o4-mini-high":{id:"openai/o4-mini-high",name:"OpenAI: o4 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:1.1,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-17"},"openai/o3":{id:"openai/o3",name:"OpenAI: o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o3-pro":{id:"openai/o3-pro",name:"OpenAI: o3 Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16"},"openai/o4-mini":{id:"openai/o4-mini",name:"OpenAI: o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.275,cacheWrite:0},releaseDate:"2025-04-16"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"OpenAI: GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"OpenAI: GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"OpenAI: GPT-4.1 Nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04-14"},"meta-llama/llama-4-maverick":{id:"meta-llama/llama-4-maverick",name:"Meta: Llama 4 Maverick",contextWindow:1048576,maxInputTokens:1048576,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"meta-llama/llama-4-scout":{id:"meta-llama/llama-4-scout",name:"Meta: Llama 4 Scout",contextWindow:327680,maxInputTokens:327680,maxTokens:16384,capabilities:["images","tools","temperature"],pricing:{input:0.08,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05"},"qwen/qwen3-14b":{id:"qwen/qwen3-14b",name:"Qwen: Qwen3 14B",contextWindow:40960,maxInputTokens:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-235b-a22b-2507":{id:"qwen/qwen3-235b-a22b-2507",name:"Qwen: Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.071,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-30b-a3b":{id:"qwen/qwen3-30b-a3b",name:"Qwen: Qwen3 30B A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.28,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04"},"qwen/qwen3-8b":{id:"qwen/qwen3-8b",name:"Qwen: Qwen3 8B",contextWindow:40960,maxInputTokens:40960,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-04"},"deepseek/deepseek-chat-v3-0324":{id:"deepseek/deepseek-chat-v3-0324",name:"DeepSeek: DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.77,cacheRead:0.095,cacheWrite:0},releaseDate:"2025-03-24"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Google: Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0.375},releaseDate:"2025-03-20"},"nvidia/llama-3.3-nemotron-super-49b-v1.5":{id:"nvidia/llama-3.3-nemotron-super-49b-v1.5",name:"NVIDIA: Llama 3.3 Nemotron Super 49B V1.5",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-16"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Google: Gemma 3 27B",contextWindow:128000,maxInputTokens:128000,maxTokens:65536,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.03,output:0.11,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-03-12"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Anthropic: Claude 3.7 Sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19"},"anthropic/claude-3.7-sonnet:thinking":{id:"anthropic/claude-3.7-sonnet:thinking",name:"Anthropic: Claude 3.7 Sonnet (thinking)",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19"},"mistralai/mistral-saba":{id:"mistralai/mistral-saba",name:"Mistral: Saba",contextWindow:32768,maxInputTokens:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3":{id:"x-ai/grok-3",name:"xAI: Grok 3",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-beta":{id:"x-ai/grok-3-beta",name:"xAI: Grok 3 Beta",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-mini":{id:"x-ai/grok-3-mini",name:"xAI: Grok 3 Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17"},"x-ai/grok-3-mini-beta":{id:"x-ai/grok-3-mini-beta",name:"xAI: Grok 3 Mini Beta",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17"},"openai/o3-mini-high":{id:"openai/o3-mini-high",name:"OpenAI: o3 Mini High",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2025-01-31"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek: DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"nex-agi/deepseek-v3.1-nex-n1":{id:"nex-agi/deepseek-v3.1-nex-n1",name:"Nex AGI: DeepSeek V3.1 Nex N1",contextWindow:131072,maxInputTokens:131072,maxTokens:163840,capabilities:["tools","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-01"},"openai/o3-mini":{id:"openai/o3-mini",name:"OpenAI: o3 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["files","tools","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Google: Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0.083333},releaseDate:"2024-12-11"},"google/gemini-2.0-flash-lite-001":{id:"google/gemini-2.0-flash-lite-001",name:"Google: Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11"},"amazon/nova-lite-v1":{id:"amazon/nova-lite-v1",name:"Amazon: Nova Lite 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"amazon/nova-micro-v1":{id:"amazon/nova-micro-v1",name:"Amazon: Nova Micro 1.0",contextWindow:128000,maxInputTokens:128000,maxTokens:5120,capabilities:["tools","temperature"],pricing:{input:0.035,output:0.14,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06"},"openai/o1":{id:"openai/o1",name:"OpenAI: o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05"},"amazon/nova-pro-v1":{id:"amazon/nova-pro-v1",name:"Amazon: Nova Pro 1.0",contextWindow:300000,maxInputTokens:300000,maxTokens:5120,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-03"},"amazon/nova-2-lite-v1":{id:"amazon/nova-2-lite-v1",name:"Amazon: Nova 2 Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65535,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01"},"deepseek/deepseek-chat":{id:"deepseek/deepseek-chat",name:"DeepSeek: DeepSeek V3",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.32,output:0.89,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"nvidia/nemotron-3-nano-30b-a3b":{id:"nvidia/nemotron-3-nano-30b-a3b",name:"NVIDIA: Nemotron 3 Nano 30B A3B",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["tools","reasoning","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-12"},"qwen/qwen3-235b-a22b":{id:"qwen/qwen3-235b-a22b",name:"Qwen: Qwen3 235B A22B",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.455,output:1.82,cacheRead:0.15,cacheWrite:0},releaseDate:"2024-12-01"},"qwen/qwen3-32b":{id:"qwen/qwen3-32b",name:"Qwen: Qwen3 32B",contextWindow:40960,maxInputTokens:40960,maxTokens:2048,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.24,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01"},"openai/gpt-4o-2024-11-20":{id:"openai/gpt-4o-2024-11-20",name:"OpenAI: GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20"},"mistralai/mistral-large-2407":{id:"mistralai/mistral-large-2407",name:"Mistral Large 2407",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"mistralai/pixtral-large-2411":{id:"mistralai/pixtral-large-2411",name:"Mistral: Pixtral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-19"},"thedrummer/unslopnemo-12b":{id:"thedrummer/unslopnemo-12b",name:"TheDrummer: UnslopNemo 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-09"},"mistralai/mistral-large-2512":{id:"mistralai/mistral-large-2512",name:"Mistral: Mistral Large 3 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:52429,capabilities:["images","tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01"},"qwen/qwen-turbo":{id:"qwen/qwen-turbo",name:"Qwen: Qwen-Turbo",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.0325,output:0.13,cacheRead:0.01,cacheWrite:0},releaseDate:"2024-11-01"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Anthropic: Claude 3.5 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22"},"nvidia/llama-3.1-nemotron-70b-instruct":{id:"nvidia/llama-3.1-nemotron-70b-instruct",name:"NVIDIA: Llama 3.1 Nemotron 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:1.2,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-12"},"thedrummer/rocinante-12b":{id:"thedrummer/rocinante-12b",name:"TheDrummer: Rocinante 12B",contextWindow:32768,maxInputTokens:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.17,output:0.43,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-30"},"qwen/qwen-2.5-72b-instruct":{id:"qwen/qwen-2.5-72b-instruct",name:"Qwen2.5 72B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.12,output:0.39,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"qwen/qwen-2.5-7b-instruct":{id:"qwen/qwen-2.5-7b-instruct",name:"Qwen: Qwen2.5 7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:6554,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-09"},"cohere/command-r-08-2024":{id:"cohere/command-r-08-2024",name:"Cohere: Command R (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"cohere/command-r-plus-08-2024":{id:"cohere/command-r-plus-08-2024",name:"Cohere: Command R+ (08-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-30"},"sao10k/l3.1-euryale-70b":{id:"sao10k/l3.1-euryale-70b",name:"Sao10K: Llama 3.1 Euryale 70B v2.2",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.85,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-28"},"openai/gpt-4o-2024-08-06":{id:"openai/gpt-4o-2024-08-06",name:"OpenAI: GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06"},"meta-llama/llama-3.3-70b-instruct":{id:"meta-llama/llama-3.3-70b-instruct",name:"Meta: Llama 3.3 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.32,cacheRead:0,cacheWrite:0},releaseDate:"2024-08-01"},"mistralai/mistral-large":{id:"mistralai/mistral-large",name:"Mistral Large",contextWindow:128000,maxInputTokens:128000,maxTokens:25600,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"mistralai/mistral-large-2411":{id:"mistralai/mistral-large-2411",name:"Mistral Large 2411",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-24"},"meta-llama/llama-3.1-8b-instruct":{id:"meta-llama/llama-3.1-8b-instruct",name:"Meta: Llama 3.1 8B Instruct",contextWindow:16384,maxInputTokens:16384,maxTokens:819,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"OpenAI: GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.075,cacheWrite:0},releaseDate:"2024-07-18"},"openai/gpt-4o-mini-2024-07-18":{id:"openai/gpt-4o-mini-2024-07-18",name:"OpenAI: GPT-4o-mini (2024-07-18)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-18"},"meta-llama/llama-3.1-70b-instruct":{id:"meta-llama/llama-3.1-70b-instruct",name:"Meta: Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:26215,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-16"},"mistralai/mistral-nemo":{id:"mistralai/mistral-nemo",name:"Mistral: Mistral Nemo",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.02,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"OpenAI: o3 Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26"},"openai/o4-mini-deep-research":{id:"openai/o4-mini-deep-research",name:"OpenAI: o4 Mini Deep Research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26"},"sao10k/l3-euryale-70b":{id:"sao10k/l3-euryale-70b",name:"Sao10k: Llama 3 Euryale 70B v2.1",contextWindow:8192,maxInputTokens:8192,maxTokens:409,capabilities:["tools","temperature"],pricing:{input:1.48,output:1.48,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-18"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"OpenAI: GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13"},"openai/gpt-4o-2024-05-13":{id:"openai/gpt-4o-2024-05-13",name:"OpenAI: GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","files","tools","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13"},"meta-llama/llama-3-8b-instruct":{id:"meta-llama/llama-3-8b-instruct",name:"Meta: Llama 3 8B Instruct",contextWindow:8192,maxInputTokens:8192,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-25"},"mistralai/mixtral-8x22b-instruct":{id:"mistralai/mixtral-8x22b-instruct",name:"Mistral: Mixtral 8x22B Instruct",contextWindow:65536,maxInputTokens:65536,maxTokens:13108,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17"},"qwen/qwen-vl-max":{id:"qwen/qwen-vl-max",name:"Qwen: Qwen VL Max",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["images","tools","temperature"],pricing:{input:0.8,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-08"},"qwen/qwen-max":{id:"qwen/qwen-max",name:"Qwen: Qwen-Max ",contextWindow:32768,maxInputTokens:32768,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.04,output:4.16,cacheRead:0.32,cacheWrite:0},releaseDate:"2024-04-03"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Anthropic: Claude 3 Haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-07"},"cohere/command-r7b-12-2024":{id:"cohere/command-r7b-12-2024",name:"Cohere: Command R7B (12-2024)",contextWindow:128000,maxInputTokens:128000,maxTokens:4000,capabilities:["tools","temperature"],pricing:{input:0.0375,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-02-27"},"openai/gpt-4-turbo-preview":{id:"openai/gpt-4-turbo-preview",name:"OpenAI: GPT-4 Turbo Preview",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2024-01-25"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.2,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-01-25"},"mistralai/mixtral-8x7b-instruct":{id:"mistralai/mixtral-8x7b-instruct",name:"Mistral: Mixtral 8x7B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.54,output:0.54,cacheRead:0,cacheWrite:0},releaseDate:"2023-12-10"},"openai/gpt-4-1106-preview":{id:"openai/gpt-4-1106-preview",name:"OpenAI: GPT-4 Turbo (older v1106)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"OpenAI: GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-09-13"},"openai/gpt-3.5-turbo-16k":{id:"openai/gpt-3.5-turbo-16k",name:"OpenAI: GPT-3.5 Turbo 16k",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:3,output:4,cacheRead:0,cacheWrite:0},releaseDate:"2023-08-28"},"openai/gpt-3.5-turbo-0613":{id:"openai/gpt-3.5-turbo-0613",name:"OpenAI: GPT-3.5 Turbo (older v0613)",contextWindow:4095,maxInputTokens:4095,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:1,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2023-06-13"},"openai/gpt-4-0314":{id:"openai/gpt-4-0314",name:"OpenAI: GPT-4 (older v0314)",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-05-28"},"openai/gpt-4":{id:"openai/gpt-4",name:"OpenAI: GPT-4",contextWindow:8191,maxInputTokens:8191,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-14"},"openai/gpt-3.5-turbo":{id:"openai/gpt-3.5-turbo",name:"OpenAI: GPT-3.5 Turbo",contextWindow:16385,maxInputTokens:16385,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2023-03-01"}},lmstudio:{"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen/qwen3-30b-a3b-2507":{id:"qwen/qwen3-30b-a3b-2507",name:"Qwen3 30B A3B 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-30",family:"qwen"},"qwen/qwen3-coder-30b":{id:"qwen/qwen3-coder-30b",name:"Qwen3 Coder 30B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"}},minimax:{"MiniMax-M2.7":{id:"MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.7-highspeed":{id:"MiniMax-M2.7-highspeed",name:"MiniMax-M2.7-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"MiniMax-M2.5-highspeed":{id:"MiniMax-M2.5-highspeed",name:"MiniMax-M2.5-highspeed",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-02-13",family:"minimax"},"MiniMax-M2.5":{id:"MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"MiniMax-M2.1":{id:"MiniMax-M2.1",name:"MiniMax-M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"MiniMax-M2":{id:"MiniMax-M2",name:"MiniMax-M2",contextWindow:196608,maxInputTokens:196608,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-27",family:"minimax"}},moonshot:{"kimi-k2.6":{id:"kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"kimi-k2.5":{id:"kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01",family:"kimi-k2.5"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-thinking-turbo":{id:"kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"kimi-k2-0905-preview":{id:"kimi-k2-0905-preview",name:"Kimi K2 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-turbo-preview":{id:"kimi-k2-turbo-preview",name:"Kimi K2 Turbo",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2.4,output:10,cacheRead:0.6,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"kimi-k2-0711-preview":{id:"kimi-k2-0711-preview",name:"Kimi K2 0711",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-07-14",family:"kimi"}},nebius:{"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:3.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron-3-Super-120B-A12B",contextWindow:256000,maxInputTokens:256000,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11"},"zai-org/GLM-5":{id:"zai-org/GLM-5",name:"GLM-5",contextWindow:200000,maxInputTokens:200000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.1,cacheWrite:1},releaseDate:"2026-03-01"},"NousResearch/Hermes-4-405B":{id:"NousResearch/Hermes-4-405B",name:"Hermes-4-405B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2026-01-30"},"NousResearch/Hermes-4-70B":{id:"NousResearch/Hermes-4-70B",name:"Hermes-4-70B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2026-01-30"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3-30B-A3B-Instruct-2507",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-32B":{id:"Qwen/Qwen3-32B",name:"Qwen3-32B",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-28"},"Qwen/Qwen3-Next-80B-A3B-Thinking":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking",name:"Qwen3-Next-80B-A3B-Thinking",contextWindow:128000,maxInputTokens:120000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-28"},"PrimeIntellect/INTELLECT-3":{id:"PrimeIntellect/INTELLECT-3",name:"INTELLECT-3",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.02,cacheWrite:0.25},releaseDate:"2026-01-25"},"deepseek-ai/DeepSeek-V3.2":{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek-V3.2",contextWindow:163000,maxInputTokens:160000,maxTokens:16384,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.45,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-01-20"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma-3-27b-it",contextWindow:110000,maxInputTokens:1e5,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2026-01-20"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:128000,maxInputTokens:124000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.015,cacheWrite:0.18},releaseDate:"2026-01-10"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi-K2.5",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"moonshotai/Kimi-K2.5-fast":{id:"moonshotai/Kimi-K2.5-fast",name:"Kimi-K2.5-fast",contextWindow:256000,maxInputTokens:256000,maxTokens:8192,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2.5,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-12-15",family:"kimi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.13,output:0.4,cacheRead:0.013,cacheWrite:0.16},releaseDate:"2025-12-05"},"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B":{id:"nvidia/NVIDIA-Nemotron-3-Nano-30B-A3B",name:"Nemotron-3-Nano-30B-A3B",contextWindow:32000,maxInputTokens:30000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-08-10"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507-fast":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507-fast",name:"Qwen3-235B-A22B-Thinking-2507-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:2,cacheRead:0.05,cacheWrite:0.625},releaseDate:"2025-07-25"},"Qwen/Qwen3-Next-80B-A3B-Thinking-fast":{id:"Qwen/Qwen3-Next-80B-A3B-Thinking-fast",name:"Qwen3-Next-80B-A3B-Thinking-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:1.2,cacheRead:0.015,cacheWrite:0.1875},releaseDate:"2025-07-25"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5-397B-A17B",contextWindow:262144,maxInputTokens:250000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"Qwen/Qwen3.5-397B-A17B-fast":{id:"Qwen/Qwen3.5-397B-A17B-fast",name:"Qwen3.5-397B-A17B-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3.6,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-07-15"},"openai/gpt-oss-120b-fast":{id:"openai/gpt-oss-120b-fast",name:"gpt-oss-120b-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.5,cacheRead:0.01,cacheWrite:0.125},releaseDate:"2025-06-10"},"deepseek-ai/DeepSeek-V3.2-fast":{id:"deepseek-ai/DeepSeek-V3.2-fast",name:"DeepSeek-V3.2-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2025-01-27"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:196608,maxInputTokens:190000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"MiniMaxAI/MiniMax-M2.5-fast":{id:"MiniMaxAI/MiniMax-M2.5-fast",name:"MiniMax-M2.5-fast",contextWindow:8000,maxInputTokens:7000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2025-01-20"},"nvidia/Nemotron-3-Nano-Omni":{id:"nvidia/Nemotron-3-Nano-Omni",name:"Nemotron-3-Nano-Omni",contextWindow:65536,maxInputTokens:60000,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.006,cacheWrite:0.075},releaseDate:"2025-01-20"},"Qwen/Qwen2.5-VL-72B-Instruct":{id:"Qwen/Qwen2.5-VL-72B-Instruct",name:"Qwen2.5-VL-72B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0.31},releaseDate:"2025-01-20"},"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1":{id:"nvidia/Llama-3_1-Nemotron-Ultra-253B-v1",name:"Llama-3.1-Nemotron-Ultra-253B-v1",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.8,cacheRead:0.06,cacheWrite:0.75},releaseDate:"2025-01-15"},"meta-llama/Meta-Llama-3.1-8B-Instruct":{id:"meta-llama/Meta-Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:120000,maxTokens:4096,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.02,output:0.06,cacheRead:0.002,cacheWrite:0.025},releaseDate:"2024-07-23"}},ollama:{"deepseek-v4-flash":{id:"deepseek-v4-flash",name:"deepseek-v4-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:52428,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek-v4-pro":{id:"deepseek-v4-pro",name:"deepseek-v4-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:52428,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"kimi-k2.6":{id:"kimi-k2.6",name:"kimi-k2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"gemma4:31b":{id:"gemma4:31b",name:"gemma4:31b",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"glm-5.1":{id:"glm-5.1",name:"glm-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"minimax-m2.7":{id:"minimax-m2.7",name:"minimax-m2.7",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"nemotron-3-super":{id:"nemotron-3-super",name:"nemotron-3-super",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"qwen3.5:397b":{id:"qwen3.5:397b",name:"qwen3.5:397b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-15",family:"qwen"},"minimax-m2.5":{id:"minimax-m2.5",name:"minimax-m2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"glm-5":{id:"glm-5",name:"glm-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"qwen3-coder-next":{id:"qwen3-coder-next",name:"qwen3-coder-next",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-02",family:"qwen"},"kimi-k2.5":{id:"kimi-k2.5",name:"kimi-k2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"minimax-m2.1":{id:"minimax-m2.1",name:"minimax-m2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"glm-4.7":{id:"glm-4.7",name:"glm-4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"gemini-3-flash-preview":{id:"gemini-3-flash-preview",name:"gemini-3-flash-preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"nemotron-3-nano:30b":{id:"nemotron-3-nano:30b",name:"nemotron-3-nano:30b",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-15",family:"nemotron"},"devstral-2:123b":{id:"devstral-2:123b",name:"devstral-2:123b",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"devstral-small-2:24b":{id:"devstral-small-2:24b",name:"devstral-small-2:24b",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"rnj-1:8b":{id:"rnj-1:8b",name:"rnj-1:8b",contextWindow:32768,maxInputTokens:32768,maxTokens:4096,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-06",family:"rnj"},"mistral-large-3:675b":{id:"mistral-large-3:675b",name:"mistral-large-3:675b",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-02",family:"mistral-large"},"cogito-2.1:671b":{id:"cogito-2.1:671b",name:"cogito-2.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:32000,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-19",family:"cogito"},"kimi-k2-thinking":{id:"kimi-k2-thinking",name:"kimi-k2-thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax-m2":{id:"minimax-m2",name:"minimax-m2",contextWindow:204800,maxInputTokens:204800,maxTokens:128000,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-23",family:"minimax"},"glm-4.6":{id:"glm-4.6",name:"glm-4.6",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"glm"},"qwen3-vl:235b":{id:"qwen3-vl:235b",name:"qwen3-vl:235b",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"qwen"},"qwen3-vl:235b-instruct":{id:"qwen3-vl:235b-instruct",name:"qwen3-vl:235b-instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"qwen"},"qwen3-next:80b":{id:"qwen3-next:80b",name:"qwen3-next:80b",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-15",family:"qwen"},"deepseek-v3.1:671b":{id:"deepseek-v3.1:671b",name:"deepseek-v3.1:671b",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"gpt-oss:120b":{id:"gpt-oss:120b",name:"gpt-oss:120b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"gpt-oss:20b":{id:"gpt-oss:20b",name:"gpt-oss:20b",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"qwen3-coder:480b":{id:"qwen3-coder:480b",name:"qwen3-coder:480b",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"kimi-k2:1t":{id:"kimi-k2:1t",name:"kimi-k2:1t",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"deepseek-v3.2":{id:"deepseek-v3.2",name:"deepseek-v3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-15",family:"deepseek"},"ministral-3:14b":{id:"ministral-3:14b",name:"ministral-3:14b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:8b":{id:"ministral-3:8b",name:"ministral-3:8b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-01",family:"ministral"},"ministral-3:3b":{id:"ministral-3:3b",name:"ministral-3:3b",contextWindow:262144,maxInputTokens:262144,maxTokens:128000,capabilities:["images","tools"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-22",family:"ministral"}},"openai-native":{"gpt-5.5":{id:"gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"gpt-5.5-pro":{id:"gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"gpt-5.4-mini":{id:"gpt-5.4-mini",name:"GPT-5.4 mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"gpt-5.4-nano":{id:"gpt-5.4-nano",name:"GPT-5.4 nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"gpt-5.4":{id:"gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"gpt-5.4-pro":{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"gpt-5.3-chat-latest":{id:"gpt-5.3-chat-latest",name:"GPT-5.3 Chat (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"gpt-5.3-codex":{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex"},"gpt-5.3-codex-spark":{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",contextWindow:128000,maxInputTokens:1e5,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-05",family:"gpt-codex-spark"},"gpt-5.2":{id:"gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"gpt-5.2-chat-latest":{id:"gpt-5.2-chat-latest",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-codex":{id:"gpt-5.2-codex",name:"GPT-5.2 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"gpt-5.2-pro":{id:"gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"gpt-5.1":{id:"gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"gpt-5.1-chat-latest":{id:"gpt-5.1-chat-latest",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex":{id:"gpt-5.1-codex",name:"GPT-5.1 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-max":{id:"gpt-5.1-codex-max",name:"GPT-5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5.1-codex-mini":{id:"gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"gpt-5-pro":{id:"gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:272000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"gpt-5-codex":{id:"gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"gpt-5":{id:"gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"o3-pro":{id:"o3-pro",name:"o3-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-10",family:"o-pro"},o3:{id:"o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"o4-mini":{id:"o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"gpt-4.1":{id:"gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gpt-4.1-nano":{id:"gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"o1-pro":{id:"o1-pro",name:"o1-pro",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:150,output:600,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-19",family:"o-pro"},"o3-mini":{id:"o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},o1:{id:"o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"gpt-4o-2024-11-20":{id:"gpt-4o-2024-11-20",name:"GPT-4o (2024-11-20)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-11-20",family:"gpt"},"gpt-4o-2024-08-06":{id:"gpt-4o-2024-08-06",name:"GPT-4o (2024-08-06)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-08-06",family:"gpt"},"gpt-4o-mini":{id:"gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"o3-deep-research":{id:"o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"o4-mini-deep-research":{id:"o4-mini-deep-research",name:"o4-mini-deep-research",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o-mini"},"gpt-4o":{id:"gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4o-2024-05-13":{id:"gpt-4o-2024-05-13",name:"GPT-4o (2024-05-13)",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","structured_output","temperature"],pricing:{input:5,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"gpt-4":{id:"gpt-4",name:"GPT-4",contextWindow:8192,maxInputTokens:8192,maxTokens:409,capabilities:["tools","temperature"],pricing:{input:30,output:60,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"},"gpt-4-turbo":{id:"gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},openrouter:{"x-ai/grok-4.3":{id:"x-ai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:50000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free":{id:"nvidia/nemotron-3-nano-omni-30b-a3b-reasoning:free",name:"Nemotron 3 Nano Omni (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28",family:"nemotron"},"openrouter/owl-alpha":{id:"openrouter/owl-alpha",name:"Owl Alpha",contextWindow:1048756,maxInputTokens:1048756,maxTokens:262144,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-m.1:free":{id:"poolside/laguna-m.1:free",name:"Laguna M.1",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"poolside/laguna-xs.2:free":{id:"poolside/laguna-xs.2:free",name:"Laguna XS.2",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-28"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-flash"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:393216,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek-thinking"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT-5.5",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT-5.5 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-23",family:"gpt-pro"},"qwen/qwen-3.6-27b":{id:"qwen/qwen-3.6-27b",name:"Qwen3.6 27B",contextWindow:262144,maxInputTokens:262144,maxTokens:81920,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.195,output:1.56,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"Xiaomi: MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"Xiaomi: MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"openrouter/pareto-code":{id:"openrouter/pareto-code",name:"Pareto Code Router",contextWindow:200000,maxInputTokens:200000,maxTokens:1e4,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-21"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi"},"tencent/hy3-preview":{id:"tencent/hy3-preview",name:"Hy3 preview",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.066,output:0.26,cacheRead:0.029,cacheWrite:0.029},releaseDate:"2026-04-20",family:"Hy"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"openrouter/elephant-alpha":{id:"openrouter/elephant-alpha",name:"Elephant (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-13",family:"elephant"},"z-ai/glm-5.1":{id:"z-ai/glm-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03",family:"gemma"},"google/gemma-4-26b-a4b-it:free":{id:"google/gemma-4-26b-a4b-it:free",name:"Gemma 4 26B A4B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-03",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it:free":{id:"google/gemma-4-31b-it:free",name:"Gemma 4 31B (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"qwen/qwen3.6-plus":{id:"qwen/qwen3.6-plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.325,output:1.95,cacheRead:0.0325,cacheWrite:0.40625},releaseDate:"2026-04-02",family:"qwen"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.22,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"MiniMax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-omni":{id:"xiaomi/mimo-v2-omni",name:"Xiaomi: MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"Xiaomi: MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT-5.4 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-mini"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT-5.4 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt-nano"},"mistralai/mistral-small-2603":{id:"mistralai/mistral-small-2603",name:"Mistral Small 4",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"z-ai/glm-5-turbo":{id:"z-ai/glm-5-turbo",name:"GLM-5-Turbo",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.96,output:3.2,cacheRead:0.192,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"x-ai/grok-4.20-beta":{id:"x-ai/grok-4.20-beta",name:"Grok 4.20 Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-12",family:"grok"},"nvidia/nemotron-3-super-120b-a12b":{id:"nvidia/nemotron-3-super-120b-a12b",name:"Nemotron 3 Super",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"nvidia/nemotron-3-super-120b-a12b:free":{id:"nvidia/nemotron-3-super-120b-a12b:free",name:"Nemotron 3 Super (free)",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:50000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.025,cacheWrite:0},releaseDate:"2026-03-04",family:"mercury"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:0.083},releaseDate:"2026-03-03",family:"gemini-flash-lite"},"qwen/qwen3.5-flash-02-23":{id:"qwen/qwen3.5-flash-02-23",name:"Qwen: Qwen3.5-Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.065,output:0.26,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-25",family:"qwen"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"google/gemini-3.1-pro-preview-customtools":{id:"google/gemini-3.1-pro-preview-customtools",name:"Gemini 3.1 Pro Preview Custom Tools",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini-pro"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"qwen/qwen3.5-397b-a17b":{id:"qwen/qwen3.5-397b-a17b",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"qwen/qwen3.5-plus-02-15":{id:"qwen/qwen3.5-plus-02-15",name:"Qwen3.5 Plus 2026-02-15",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.4,output:2.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5:free":{id:"minimax/minimax-m2.5:free",name:"MiniMax M2.5 (free)",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"z-ai/glm-5":{id:"z-ai/glm-5",name:"GLM-5",contextWindow:202752,maxInputTokens:202752,maxTokens:131000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openrouter/free":{id:"openrouter/free",name:"Free Models Router",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-01"},"stepfun/step-3.5-flash":{id:"stepfun/step-3.5-flash",name:"Step 3.5 Flash",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-01-29",family:"step"},"arcee-ai/trinity-large-preview:free":{id:"arcee-ai/trinity-large-preview:free",name:"Trinity Large Preview",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-28",family:"trinity"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:3,cacheRead:0.1,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"z-ai/glm-4.7-flash":{id:"z-ai/glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:65535,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.07,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-23",family:"minimax"},"z-ai/glm-4.7":{id:"z-ai/glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash Preview",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"Xiaomi: MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"},"nvidia/nemotron-3-nano-30b-a3b:free":{id:"nvidia/nemotron-3-nano-30b-a3b:free",name:"Nemotron 3 Nano 30B A3B (free)",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-14",family:"nemotron"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"deepseek/deepseek-v3.2":{id:"deepseek/deepseek-v3.2",name:"DeepSeek V3.2",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.28,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"deepseek/deepseek-v3.2-speciale":{id:"deepseek/deepseek-v3.2-speciale",name:"DeepSeek V3.2 Speciale",contextWindow:163840,maxInputTokens:163840,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:0.41,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"x-ai/grok-4.1-fast":{id:"x-ai/grok-4.1-fast",name:"Grok 4.1 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.05},releaseDate:"2025-11-19",family:"grok"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1050000,maxInputTokens:1050000,maxTokens:66000,capabilities:["images","files","tools","reasoning","structured_output","temperature"],pricing:{input:2,output:12,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.5,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"GPT OSS Safeguard 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-29",family:"gpt-oss"},"nvidia/nemotron-nano-12b-v2-vl:free":{id:"nvidia/nemotron-nano-12b-v2-vl:free",name:"Nemotron Nano 12B 2 VL (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-28",family:"nemotron"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:196600,maxInputTokens:196600,maxTokens:118000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.28,output:1.15,cacheRead:0.28,cacheWrite:1.15},releaseDate:"2025-10-23",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"z-ai/glm-4.6":{id:"z-ai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"z-ai/glm-4.6:exacto":{id:"z-ai/glm-4.6:exacto",name:"GLM 4.6 (exacto)",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.6,output:1.9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"google/gemini-2.5-flash-preview-09-2025":{id:"google/gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.031,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash"},"qwen/qwen3-coder-plus":{id:"qwen/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65536,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:0.65,output:3.25,cacheRead:0.13,cacheWrite:0.8125},releaseDate:"2025-09-23",family:"qwen"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"deepseek/deepseek-v3.1-terminus:exacto":{id:"deepseek/deepseek-v3.1-terminus:exacto",name:"DeepSeek V3.1 Terminus (exacto)",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"mistralai/devstral-2512":{id:"mistralai/devstral-2512",name:"Devstral 2 2512",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"devstral"},"qwen/qwen3-next-80b-a3b-instruct":{id:"qwen/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"qwen/qwen3-next-80b-a3b-thinking":{id:"qwen/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.14,output:1.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-11",family:"qwen"},"moonshotai/kimi-k2-0905":{id:"moonshotai/kimi-k2-0905",name:"Kimi K2 Instruct 0905",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"moonshotai/kimi-k2-0905:exacto":{id:"moonshotai/kimi-k2-0905:exacto",name:"Kimi K2 Instruct 0905 (exacto)",contextWindow:262144,maxInputTokens:262144,maxTokens:16384,capabilities:["tools","structured_output","temperature"],pricing:{input:0.6,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"nvidia/nemotron-nano-9b-v2:free":{id:"nvidia/nemotron-nano-9b-v2:free",name:"Nemotron Nano 9B V2 (free)",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"nemotron"},"qwen/qwen3-max":{id:"qwen/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.156,cacheWrite:0.975},releaseDate:"2025-09-05",family:"qwen"},"x-ai/grok-code-fast-1":{id:"x-ai/grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxInputTokens:256000,maxTokens:1e4,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-26",family:"grok"},"nousresearch/hermes-4-405b":{id:"nousresearch/hermes-4-405b",name:"Hermes 4 405B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:1,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"hermes"},"nousresearch/hermes-4-70b":{id:"nousresearch/hermes-4-70b",name:"Hermes 4 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.13,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-25",family:"hermes"},"deepseek/deepseek-chat-v3.1":{id:"deepseek/deepseek-chat-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"x-ai/grok-4-fast":{id:"x-ai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.05},releaseDate:"2025-08-19",family:"grok"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"nvidia-nemotron-nano-9b-v2",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"mistralai/mistral-medium-3.1":{id:"mistralai/mistral-medium-3.1",name:"Mistral Medium 3.1",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-12",family:"mistral-medium"},"z-ai/glm-4.5v":{id:"z-ai/glm-4.5v",name:"GLM 4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:1.25,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.25,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.072,output:0.28,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:exacto":{id:"openai/gpt-oss-120b:exacto",name:"GPT OSS 120B (exacto)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-120b:free":{id:"openai/gpt-oss-120b:free",name:"gpt-oss-120b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b:free":{id:"openai/gpt-oss-20b:free",name:"gpt-oss-20b (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"mistralai/codestral-2508":{id:"mistralai/codestral-2508",name:"Codestral 2508",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-01",family:"codestral"},"qwen/qwen3-coder-30b-a3b-instruct":{id:"qwen/qwen3-coder-30b-a3b-instruct",name:"Qwen3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:65536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-31",family:"qwen"},"qwen/qwen3-30b-a3b-instruct-2507":{id:"qwen/qwen3-30b-a3b-instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"qwen/qwen3-30b-a3b-thinking-2507":{id:"qwen/qwen3-30b-a3b-thinking-2507",name:"Qwen3 30B A3B Thinking 2507",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"z-ai/glm-4.5":{id:"z-ai/glm-4.5",name:"GLM 4.5",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"z-ai/glm-4.5-air":{id:"z-ai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"qwen/qwen3-235b-a22b-thinking-2507":{id:"qwen/qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:81920,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.078,output:0.312,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"qwen/qwen3-coder":{id:"qwen/qwen3-coder",name:"Qwen3 Coder",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder-flash":{id:"qwen/qwen3-coder-flash",name:"Qwen3 Coder Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:66536,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.3,output:1.5,cacheRead:0.039,cacheWrite:0.24375},releaseDate:"2025-07-23",family:"qwen"},"qwen/qwen3-coder:exacto":{id:"qwen/qwen3-coder:exacto",name:"Qwen3 Coder (exacto)",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","structured_output","temperature"],pricing:{input:0.38,output:1.53,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.0375,cacheWrite:0},releaseDate:"2025-07-17",family:"gemini-flash"},"moonshotai/kimi-k2":{id:"moonshotai/kimi-k2",name:"Kimi K2",contextWindow:131072,maxInputTokens:131072,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.55,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-11",family:"kimi"},"mistralai/devstral-medium-2507":{id:"mistralai/devstral-medium-2507",name:"Devstral Medium",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10",family:"devstral"},"mistralai/devstral-small-2507":{id:"mistralai/devstral-small-2507",name:"Devstral Small 1.1",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-10",family:"devstral"},"x-ai/grok-4":{id:"x-ai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-07-09",family:"grok"},"mistralai/mistral-small-3.2-24b-instruct":{id:"mistralai/mistral-small-3.2-24b-instruct",name:"Mistral Small 3.2 24B Instruct",contextWindow:96000,maxInputTokens:96000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-20",family:"mistral-small"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"minimax/minimax-m1":{id:"minimax/minimax-m1",name:"MiniMax M1",contextWindow:1e6,maxInputTokens:1e6,maxTokens:40000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.4,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-17",family:"minimax"},"google/gemini-2.5-pro-preview-06-05":{id:"google/gemini-2.5-pro-preview-06-05",name:"Gemini 2.5 Pro Preview 06-05",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-06-05",family:"gemini-pro"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"mistralai/devstral-small-2505":{id:"mistralai/devstral-small-2505",name:"Devstral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.06,output:0.12,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistralai/mistral-medium-3":{id:"mistralai/mistral-medium-3",name:"Mistral Medium 3",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"google/gemini-2.5-pro-preview-05-06":{id:"google/gemini-2.5-pro-preview-05-06",name:"Gemini 2.5 Pro Preview 05-06",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:0},releaseDate:"2025-05-06",family:"gemini-pro"},"qwen/qwen3-235b-a22b-07-25":{id:"qwen/qwen3-235b-a22b-07-25",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.85,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistralai/mistral-small-3.1-24b-instruct":{id:"mistralai/mistral-small-3.1-24b-instruct",name:"Mistral Small 3.1 24B Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"mistral-small"},"google/gemma-3-27b-it":{id:"google/gemma-3-27b-it",name:"Gemma 3 27B",contextWindow:96000,maxInputTokens:96000,maxTokens:4800,capabilities:["images","tools","structured_output","temperature"],pricing:{input:0.04,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"google/gemma-3-27b-it:free":{id:"google/gemma-3-27b-it:free",name:"Gemma 3 27B (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-12",family:"gemma"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"x-ai/grok-3":{id:"x-ai/grok-3",name:"Grok 3",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-beta":{id:"x-ai/grok-3-beta",name:"Grok 3 Beta",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:15},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-mini":{id:"x-ai/grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0.5},releaseDate:"2025-02-17",family:"grok"},"x-ai/grok-3-mini-beta":{id:"x-ai/grok-3-mini-beta",name:"Grok 3 Mini Beta",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0.5},releaseDate:"2025-02-17",family:"grok"},"qwen/qwen-plus":{id:"qwen/qwen-plus",name:"Qwen: Qwen-Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.26,output:0.78,cacheRead:0.052,cacheWrite:0.325},releaseDate:"2025-01-25",family:"qwen"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek: R1",contextWindow:64000,maxInputTokens:64000,maxTokens:16000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.7,output:2.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"minimax/minimax-01":{id:"minimax/minimax-01",name:"MiniMax-01",contextWindow:1e6,maxInputTokens:1e6,maxTokens:50000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-15",family:"minimax"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"Intellect 3",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-15",family:"glm"},"google/gemini-2.0-flash-001":{id:"google/gemini-2.0-flash-001",name:"Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"meta-llama/llama-3.3-70b-instruct:free":{id:"meta-llama/llama-3.3-70b-instruct:free",name:"Llama 3.3 70B Instruct (free)",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude Haiku 3.5",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o-mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},requesty:{"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT-5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT-5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:30,output:180,cacheRead:30,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt-pro"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT-5.3-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt-codex"},"anthropic/claude-sonnet-4-6":{id:"anthropic/claude-sonnet-4-6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic/claude-opus-4-6":{id:"anthropic/claude-opus-4-6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-01-14",family:"gpt-codex"},"google/gemini-3-flash-preview":{id:"google/gemini-3-flash-preview",name:"Gemini 3 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:1},releaseDate:"2025-12-17"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-codex"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT-5.2 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-11",family:"gpt-pro"},"anthropic/claude-opus-4-5":{id:"anthropic/claude-opus-4-5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:4.5},releaseDate:"2025-11-18",family:"gemini-pro"},"openai/gpt-5.1":{id:"openai/gpt-5.1",name:"GPT-5.1",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt"},"openai/gpt-5.1-chat":{id:"openai/gpt-5.1-chat",name:"GPT-5.1 Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT-5.1-Codex-Max",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.1,output:9,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1-Codex-Mini",contextWindow:400000,maxInputTokens:400000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-11-13",family:"gpt-codex"},"anthropic/claude-haiku-4-5":{id:"anthropic/claude-haiku-4-5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:62000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"openai/gpt-5-image":{id:"openai/gpt-5-image",name:"GPT-5 Image",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-10-14",family:"gpt"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 Pro",contextWindow:400000,maxInputTokens:400000,maxTokens:272000,capabilities:["images","tools","reasoning","structured_output"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-10-06",family:"gpt-pro"},"anthropic/claude-sonnet-4-5":{id:"anthropic/claude-sonnet-4-5",name:"Claude Sonnet 4.5",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"xai/grok-4-fast":{id:"xai/grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0.2},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5 Codex",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:3},releaseDate:"2025-09-09",family:"grok"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:16000,maxInputTokens:16000,maxTokens:4000,capabilities:["tools","reasoning","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"anthropic/claude-opus-4-1":{id:"anthropic/claude-opus-4-1",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.075,cacheWrite:0.55},releaseDate:"2025-06-17",family:"gemini-flash"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4 Mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 Mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.31,cacheWrite:2.375},releaseDate:"2025-03-20",family:"gemini-pro"},"anthropic/claude-3-7-sonnet":{id:"anthropic/claude-3-7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o Mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"}},sapaicore:{"anthropic--claude-4.6-sonnet":{id:"anthropic--claude-4.6-sonnet",name:"anthropic--claude-4.6-sonnet",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"anthropic--claude-4.6-opus":{id:"anthropic--claude-4.6-opus",name:"anthropic--claude-4.6-opus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"anthropic--claude-4.5-opus":{id:"anthropic--claude-4.5-opus",name:"anthropic--claude-4.5-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-24",family:"claude-opus"},"anthropic--claude-4.5-haiku":{id:"anthropic--claude-4.5-haiku",name:"anthropic--claude-4.5-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"anthropic--claude-4.5-sonnet":{id:"anthropic--claude-4.5-sonnet",name:"anthropic--claude-4.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"gpt-5":{id:"gpt-5",name:"gpt-5",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"gpt-5-mini":{id:"gpt-5-mini",name:"gpt-5-mini",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"gpt-5-nano":{id:"gpt-5-nano",name:"gpt-5-nano",contextWindow:400000,maxInputTokens:400000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"gemini-2.5-flash-lite":{id:"gemini-2.5-flash-lite",name:"gemini-2.5-flash-lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"anthropic--claude-4-opus":{id:"anthropic--claude-4-opus",name:"anthropic--claude-4-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic--claude-4-sonnet":{id:"anthropic--claude-4-sonnet",name:"anthropic--claude-4-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"gpt-4.1":{id:"gpt-4.1",name:"gpt-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"gpt-4.1-mini":{id:"gpt-4.1-mini",name:"gpt-4.1-mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"gemini-2.5-flash":{id:"gemini-2.5-flash",name:"gemini-2.5-flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-flash"},"gemini-2.5-pro":{id:"gemini-2.5-pro",name:"gemini-2.5-pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-25",family:"gemini-pro"},"anthropic--claude-3.7-sonnet":{id:"anthropic--claude-3.7-sonnet",name:"anthropic--claude-3.7-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-24",family:"claude-sonnet"},"anthropic--claude-3.5-sonnet":{id:"anthropic--claude-3.5-sonnet",name:"anthropic--claude-3.5-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"anthropic--claude-3-haiku":{id:"anthropic--claude-3-haiku",name:"anthropic--claude-3-haiku",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic--claude-3-sonnet":{id:"anthropic--claude-3-sonnet",name:"anthropic--claude-3-sonnet",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-03-04",family:"claude-sonnet"},"anthropic--claude-3-opus":{id:"anthropic--claude-3-opus",name:"anthropic--claude-3-opus",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"}},together:{"Qwen/Qwen3.6-Plus":{id:"Qwen/Qwen3.6-Plus",name:"Qwen3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:500000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:3,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-30",family:"qwen"},"deepseek-ai/DeepSeek-V4-Pro":{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro",contextWindow:512000,maxInputTokens:512000,maxTokens:384000,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:2.1,output:4.4,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-24",family:"deepseek"},"moonshotai/Kimi-K2.6":{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6",contextWindow:262144,maxInputTokens:262144,maxTokens:131000,capabilities:["images","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-21",family:"kimi-k2.6"},"google/gemma-4-31B-it":{id:"google/gemma-4-31B-it",name:"Gemma 4 31B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"gemma"},"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:1.4,output:4.4,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"MiniMaxAI/MiniMax-M2.7":{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax-M2.7",contextWindow:202752,maxInputTokens:202752,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-18",family:"minimax"},"Qwen/Qwen3.5-397B-A17B":{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen3.5 397B A17B",contextWindow:262144,maxInputTokens:262144,maxTokens:130000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:3.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-16",family:"qwen"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax-M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"Qwen/Qwen3-Coder-Next-FP8":{id:"Qwen/Qwen3-Coder-Next-FP8",name:"Qwen3 Coder Next FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-03",family:"qwen"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.5,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"essentialai/Rnj-1-Instruct":{id:"essentialai/Rnj-1-Instruct",name:"Rnj-1 Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:1638,capabilities:["tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-05",family:"rnj"},"deepseek-ai/DeepSeek-V3-1":{id:"deepseek-ai/DeepSeek-V3-1",name:"DeepSeek V3.1",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:1.7,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-235B-A22B-Instruct-2507-tput":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507-tput",name:"Qwen3 235B A22B Instruct 2507 FP8",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct-FP8",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","temperature"],pricing:{input:2,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"deepseek-ai/DeepSeek-V3":{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:1.25,output:1.25,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek"},"meta-llama/Llama-3.3-70B-Instruct-Turbo":{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","temperature"],pricing:{input:0.88,output:0.88,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"}},v0:{"v0-1.5-lg":{id:"v0-1.5-lg",name:"v0-1.5-lg",contextWindow:512000,maxInputTokens:512000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:15,output:75,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.5-md":{id:"v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"v0-1.0-md":{id:"v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"}},"vercel-ai-gateway":{"google/gemini-3.1-flash-lite":{id:"google/gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2026-05-07",family:"gemini"},"xai/grok-4.3":{id:"xai/grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:50000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-04-30",family:"grok"},"openai/gpt-5.5":{id:"openai/gpt-5.5",name:"GPT 5.5",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:30,cacheRead:0.5,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"openai/gpt-5.5-pro":{id:"openai/gpt-5.5-pro",name:"GPT 5.5 Pro",contextWindow:1e6,maxInputTokens:872000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-24",family:"gpt"},"deepseek/deepseek-v4-flash":{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.14,output:0.28,cacheRead:0.028,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"deepseek/deepseek-v4-pro":{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:384000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.74,output:3.48,cacheRead:0.145,cacheWrite:0},releaseDate:"2026-04-23",family:"deepseek"},"alibaba/qwen3.6-27b":{id:"alibaba/qwen3.6-27b",name:"Qwen 3.6 27B",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.6,output:3.5999999999999996,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-22",family:"qwen3.6"},"xiaomi/mimo-v2.5":{id:"xiaomi/mimo-v2.5",name:"MiMo M2.5",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.39999999999999997,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5"},"xiaomi/mimo-v2.5-pro":{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro",contextWindow:1050000,maxInputTokens:1050000,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo-v2.5-pro"},"alibaba/qwen-3.6-max-preview":{id:"alibaba/qwen-3.6-max-preview",name:"Qwen 3.6 Max Preview",contextWindow:240000,maxInputTokens:240000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.3,output:7.8,cacheRead:0.26,cacheWrite:1.625},releaseDate:"2026-04-20",family:"qwen"},"moonshotai/kimi-k2.6":{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6",contextWindow:262000,maxInputTokens:262000,maxTokens:13100,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.95,output:4,cacheRead:0.16,cacheWrite:0},releaseDate:"2026-04-20",family:"kimi-k2.6"},"anthropic/claude-opus-4.7":{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"zai/glm-5.1":{id:"zai/glm-5.1",name:"GLM 5.1",contextWindow:202752,maxInputTokens:202752,maxTokens:10137,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-04-07",family:"glm"},"alibaba/qwen3.6-plus":{id:"alibaba/qwen3.6-plus",name:"Qwen 3.6 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.09999999999999999,cacheWrite:0.625},releaseDate:"2026-04-02",family:"qwen"},"google/gemma-4-26b-a4b-it":{id:"google/gemma-4-26b-a4b-it",name:"Gemma 4 26B A4B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.13,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"google/gemma-4-31b-it":{id:"google/gemma-4-31b-it",name:"Gemma 4 31B IT",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.14,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-02",family:"gemma"},"arcee-ai/trinity-large-thinking":{id:"arcee-ai/trinity-large-thinking",name:"Trinity Large Thinking",contextWindow:262100,maxInputTokens:262100,maxTokens:80000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.25,output:0.8999999999999999,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"trinity"},"zai/glm-5v-turbo":{id:"zai/glm-5v-turbo",name:"GLM 5V Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"kwaipilot/kat-coder-pro-v2":{id:"kwaipilot/kat-coder-pro-v2",name:"Kat Coder Pro V2",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0},releaseDate:"2026-03-27",family:"kat-coder"},"minimax/minimax-m2.7":{id:"minimax/minimax-m2.7",name:"Minimax M2.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"minimax/minimax-m2.7-highspeed":{id:"minimax/minimax-m2.7-highspeed",name:"MiniMax M2.7 High Speed",contextWindow:204800,maxInputTokens:204800,maxTokens:131100,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.06,cacheWrite:0.375},releaseDate:"2026-03-18",family:"minimax"},"xiaomi/mimo-v2-pro":{id:"xiaomi/mimo-v2-pro",name:"MiMo V2 Pro",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"openai/gpt-5.4-mini":{id:"openai/gpt-5.4-mini",name:"GPT 5.4 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.75,output:4.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"openai/gpt-5.4-nano":{id:"openai/gpt-5.4-nano",name:"GPT 5.4 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.19999999999999998,output:1.25,cacheRead:0.02,cacheWrite:0},releaseDate:"2026-03-17",family:"gpt"},"mistral/mistral-small":{id:"mistral/mistral-small",name:"Mistral Small (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"mistral-small"},"zai/glm-5-turbo":{id:"zai/glm-5-turbo",name:"GLM 5 Turbo",contextWindow:202800,maxInputTokens:202800,maxTokens:131100,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-15",family:"glm"},"zai/glm-4.7-flash":{id:"zai/glm-4.7-flash",name:"GLM 4.7 Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.39999999999999997,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-13",family:"glm"},"xai/grok-4.20-multi-agent-beta":{id:"xai/grok-4.20-multi-agent-beta",name:"Grok 4.20 Multi Agent Beta",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-non-reasoning-beta":{id:"xai/grok-4.20-non-reasoning-beta",name:"Grok 4.20 Beta Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-reasoning-beta":{id:"xai/grok-4.20-reasoning-beta",name:"Grok 4.20 Beta Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-11",family:"grok"},"xai/grok-4.20-multi-agent":{id:"xai/grok-4.20-multi-agent",name:"Grok 4.20 Multi-Agent",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-non-reasoning":{id:"xai/grok-4.20-non-reasoning",name:"Grok 4.20 Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"xai/grok-4.20-reasoning":{id:"xai/grok-4.20-reasoning",name:"Grok 4.20 Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.19999999999999998,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"openai/gpt-5.4":{id:"openai/gpt-5.4",name:"GPT 5.4",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2.5,output:15,cacheRead:0.25,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"openai/gpt-5.4-pro":{id:"openai/gpt-5.4-pro",name:"GPT 5.4 Pro",contextWindow:1050000,maxInputTokens:922000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:30,output:180,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-05",family:"gpt"},"google/gemini-3.1-flash-lite-preview":{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:65000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:1.5,cacheRead:0.025,cacheWrite:1},releaseDate:"2026-03-03",family:"gemini"},"openai/gpt-5.3-chat":{id:"openai/gpt-5.3-chat",name:"GPT-5.3 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-03-03",family:"gpt"},"alibaba/qwen3.5-flash":{id:"alibaba/qwen3.5-flash",name:"Qwen 3.5 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.001,cacheWrite:0.125},releaseDate:"2026-02-24",family:"qwen"},"inception/mercury-2":{id:"inception/mercury-2",name:"Mercury 2",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:0.75,cacheRead:0.024999999999999998,cacheWrite:0},releaseDate:"2026-02-24",family:"mercury"},"openai/gpt-5.3-codex":{id:"openai/gpt-5.3-codex",name:"GPT 5.3 Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2026-02-24",family:"gpt"},"google/gemini-3.1-pro-preview":{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-19",family:"gemini"},"anthropic/claude-sonnet-4.6":{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"alibaba/qwen3.5-plus":{id:"alibaba/qwen3.5-plus",name:"Qwen 3.5 Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2.4,cacheRead:0.04,cacheWrite:0.5},releaseDate:"2026-02-16",family:"qwen"},"minimax/minimax-m2.5":{id:"minimax/minimax-m2.5",name:"MiniMax M2.5",contextWindow:204800,maxInputTokens:204800,maxTokens:131000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"minimax/minimax-m2.5-highspeed":{id:"minimax/minimax-m2.5-highspeed",name:"MiniMax M2.5 High Speed",contextWindow:0,maxInputTokens:0,maxTokens:0,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.4,cacheRead:0.03,cacheWrite:0.375},releaseDate:"2026-02-12",family:"minimax"},"zai/glm-5":{id:"zai/glm-5",name:"GLM-5",contextWindow:202800,maxInputTokens:202800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-12",family:"glm"},"anthropic/claude-opus-4.6":{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02",family:"claude-opus"},"moonshotai/kimi-k2.5":{id:"moonshotai/kimi-k2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-26",family:"kimi"},"zai/glm-4.7":{id:"zai/glm-4.7",name:"GLM 4.7",contextWindow:202752,maxInputTokens:202752,maxTokens:120000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.43,output:1.75,cacheRead:0.08,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"google/gemini-3-flash":{id:"google/gemini-3-flash",name:"Gemini 3 Flash",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.5,output:3,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-12-17",family:"gemini-flash"},"xiaomi/mimo-v2-flash":{id:"xiaomi/mimo-v2-flash",name:"MiMo V2 Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:32000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.29,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-17",family:"mimo"},"mistral/devstral-2":{id:"mistral/devstral-2",name:"Devstral 2",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-09",family:"devstral"},"deepseek/deepseek-v3.2-thinking":{id:"deepseek/deepseek-v3.2-thinking",name:"DeepSeek V3.2 Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.28,output:0.42,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-12-01",family:"deepseek-thinking"},"openai/gpt-5.2-codex":{id:"openai/gpt-5.2-codex",name:"GPT-5.2-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.175,cacheWrite:0},releaseDate:"2025-12",family:"gpt-codex"},"prime-intellect/intellect-3":{id:"prime-intellect/intellect-3",name:"INTELLECT 3",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-11-26",family:"intellect"},"anthropic/claude-opus-4.5":{id:"anthropic/claude-opus-4.5",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:18.75},releaseDate:"2025-11-24",family:"claude-opus"},"google/gemini-3-pro-preview":{id:"google/gemini-3-pro-preview",name:"Gemini 3 Pro Preview",contextWindow:1e6,maxInputTokens:1e6,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:12,cacheRead:0.2,cacheWrite:0},releaseDate:"2025-11-18",family:"gemini-pro"},"moonshotai/kimi-k2-thinking":{id:"moonshotai/kimi-k2-thinking",name:"Kimi K2 Thinking",contextWindow:216144,maxInputTokens:216144,maxTokens:10807,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.47,output:2,cacheRead:0.14,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"moonshotai/kimi-k2-thinking-turbo":{id:"moonshotai/kimi-k2-thinking-turbo",name:"Kimi K2 Thinking Turbo",contextWindow:262114,maxInputTokens:262114,maxTokens:13105,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.15,output:8,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-11-06",family:"kimi-thinking"},"minimax/minimax-m2":{id:"minimax/minimax-m2",name:"MiniMax M2",contextWindow:262114,maxInputTokens:262114,maxTokens:13105,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.27,output:1.15,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1":{id:"minimax/minimax-m2.1",name:"MiniMax M2.1",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:1.2,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"minimax/minimax-m2.1-lightning":{id:"minimax/minimax-m2.1-lightning",name:"MiniMax M2.1 Lightning",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.4,cacheRead:0.03,cacheWrite:0.38},releaseDate:"2025-10-27",family:"minimax"},"anthropic/claude-haiku-4.5":{id:"anthropic/claude-haiku-4.5",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"bytedance/seed-1.8":{id:"bytedance/seed-1.8",name:"Seed 1.8",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-10",family:"seed"},"zai/glm-4.6":{id:"zai/glm-4.6",name:"GLM 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.45,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v":{id:"zai/glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.9,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"zai/glm-4.6v-flash":{id:"zai/glm-4.6v-flash",name:"GLM-4.6V-Flash",contextWindow:128000,maxInputTokens:128000,maxTokens:24000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"anthropic/claude-sonnet-4.5":{id:"anthropic/claude-sonnet-4.5",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"deepseek/deepseek-v3.2-exp":{id:"deepseek/deepseek-v3.2-exp",name:"DeepSeek V3.2 Exp",contextWindow:163840,maxInputTokens:163840,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-29",family:"deepseek"},"google/gemini-2.5-flash-lite-preview-09-2025":{id:"google/gemini-2.5-flash-lite-preview-09-2025",name:"Gemini 2.5 Flash Lite Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-09-25",family:"gemini-flash-lite"},"google/gemini-2.5-flash-preview-09-2025":{id:"google/gemini-2.5-flash-preview-09-2025",name:"Gemini 2.5 Flash Preview 09-25",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0.383},releaseDate:"2025-09-25",family:"gemini-flash"},"alibaba/qwen3-vl-instruct":{id:"alibaba/qwen3-vl-instruct",name:"Qwen3 VL Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","tools","temperature"],pricing:{input:0.7,output:2.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-vl-thinking":{id:"alibaba/qwen3-vl-thinking",name:"Qwen3 VL Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:129024,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.7,output:8.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-24",family:"qwen"},"alibaba/qwen3-max":{id:"alibaba/qwen3-max",name:"Qwen3 Max",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:1.2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"alibaba/qwen3-max-preview":{id:"alibaba/qwen3-max-preview",name:"Qwen3 Max Preview",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-09-23",family:"qwen"},"meituan/longcat-flash-thinking":{id:"meituan/longcat-flash-thinking",name:"LongCat Flash Thinking",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-23",family:"longcat"},"deepseek/deepseek-v3.1-terminus":{id:"deepseek/deepseek-v3.1-terminus",name:"DeepSeek V3.1 Terminus",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.27,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-22",family:"deepseek"},"xai/grok-4-fast-non-reasoning":{id:"xai/grok-4-fast-non-reasoning",name:"Grok 4 Fast (Non-Reasoning)",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"openai/gpt-5-codex":{id:"openai/gpt-5-codex",name:"GPT-5-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-09-15",family:"gpt-codex"},"alibaba/qwen3-next-80b-a3b-instruct":{id:"alibaba/qwen3-next-80b-a3b-instruct",name:"Qwen3 Next 80B A3B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:32768,capabilities:["tools","temperature"],pricing:{input:0.09,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"alibaba/qwen3-next-80b-a3b-thinking":{id:"alibaba/qwen3-next-80b-a3b-thinking",name:"Qwen3 Next 80B A3B Thinking",contextWindow:131072,maxInputTokens:131072,maxTokens:65536,capabilities:["tools","reasoning","temperature"],pricing:{input:0.15,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-12",family:"qwen"},"moonshotai/kimi-k2-turbo":{id:"moonshotai/kimi-k2-turbo",name:"Kimi K2 Turbo",contextWindow:256000,maxInputTokens:256000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:2.4,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-09-05",family:"kimi"},"bytedance/seed-1.6":{id:"bytedance/seed-1.6",name:"Seed 1.6",contextWindow:256000,maxInputTokens:256000,maxTokens:32000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09",family:"seed"},"meituan/longcat-flash-chat":{id:"meituan/longcat-flash-chat",name:"LongCat Flash Chat",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-30",family:"longcat"},"xai/grok-code-fast-1":{id:"xai/grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxInputTokens:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-28",family:"grok"},"deepseek/deepseek-v3.1":{id:"deepseek/deepseek-v3.1",name:"DeepSeek-V3.1",contextWindow:163840,maxInputTokens:163840,maxTokens:128000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.3,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"nvidia/nemotron-nano-9b-v2":{id:"nvidia/nemotron-nano-9b-v2",name:"Nvidia Nemotron Nano 9B V2",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.04,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-18",family:"nemotron"},"zai/glm-4.5v":{id:"zai/glm-4.5v",name:"GLM 4.5V",contextWindow:66000,maxInputTokens:66000,maxTokens:3300,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"openai/gpt-5":{id:"openai/gpt-5",name:"GPT-5",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-chat":{id:"openai/gpt-5-chat",name:"GPT-5 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5-mini":{id:"openai/gpt-5-mini",name:"GPT-5 Mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.025,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-mini"},"openai/gpt-5-nano":{id:"openai/gpt-5-nano",name:"GPT-5 Nano",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:0.05,output:0.4,cacheRead:0.005,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt-nano"},"openai/gpt-5-pro":{id:"openai/gpt-5-pro",name:"GPT-5 pro",contextWindow:400000,maxInputTokens:128000,maxTokens:272000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:15,output:120,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-codex":{id:"openai/gpt-5.1-codex",name:"GPT-5.1-Codex",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-codex-max":{id:"openai/gpt-5.1-codex-max",name:"GPT 5.1 Codex Max",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-instant":{id:"openai/gpt-5.1-instant",name:"GPT-5.1 Instant",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.1-thinking":{id:"openai/gpt-5.1-thinking",name:"GPT 5.1 Thinking",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.13,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2":{id:"openai/gpt-5.2",name:"GPT-5.2",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.18,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2-chat":{id:"openai/gpt-5.2-chat",name:"GPT-5.2 Chat",contextWindow:128000,maxInputTokens:111616,maxTokens:16384,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.75,output:14,cacheRead:0.18,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-5.2-pro":{id:"openai/gpt-5.2-pro",name:"GPT 5.2 ",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:21,output:168,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-07",family:"gpt"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"GPT OSS 120B",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"GPT OSS 20B",contextWindow:131072,maxInputTokens:98304,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"zai/glm-4.5":{id:"zai/glm-4.5",name:"GLM 4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","reasoning","temperature"],pricing:{input:0.6,output:2.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"zai/glm-4.5-air":{id:"zai/glm-4.5-air",name:"GLM 4.5 Air",contextWindow:128000,maxInputTokens:128000,maxTokens:96000,capabilities:["tools","reasoning","temperature"],pricing:{input:0.2,output:1.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"alibaba/qwen3-coder-plus":{id:"alibaba/qwen3-coder-plus",name:"Qwen3 Coder Plus",contextWindow:1e6,maxInputTokens:1e6,maxTokens:50000,capabilities:["tools","temperature"],pricing:{input:1,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"alibaba/qwen3-coder-next":{id:"alibaba/qwen3-coder-next",name:"Qwen3 Coder Next",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-22",family:"qwen"},"xai/grok-4":{id:"xai/grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4-fast-reasoning":{id:"xai/grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:256000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-non-reasoning":{id:"xai/grok-4.1-fast-non-reasoning",name:"Grok 4.1 Fast Non-Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"xai/grok-4.1-fast-reasoning":{id:"xai/grok-4.1-fast-reasoning",name:"Grok 4.1 Fast Reasoning",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"google/gemini-2.5-flash-lite":{id:"google/gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-06-17",family:"gemini-flash-lite"},"vercel/v0-1.5-md":{id:"vercel/v0-1.5-md",name:"v0-1.5-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-06-09",family:"v0"},"anthropic/claude-opus-4":{id:"anthropic/claude-opus-4",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-opus-4.1":{id:"anthropic/claude-opus-4.1",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"anthropic/claude-sonnet-4":{id:"anthropic/claude-sonnet-4",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"vercel/v0-1.0-md":{id:"vercel/v0-1.0-md",name:"v0-1.0-md",contextWindow:128000,maxInputTokens:128000,maxTokens:32000,capabilities:["images","tools","reasoning","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-22",family:"v0"},"openai/codex-mini":{id:"openai/codex-mini",name:"Codex Mini",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.5,output:6,cacheRead:0.38,cacheWrite:0},releaseDate:"2025-05-16",family:"gpt-codex-mini"},"openai/gpt-5.1-codex-mini":{id:"openai/gpt-5.1-codex-mini",name:"GPT-5.1 Codex mini",contextWindow:400000,maxInputTokens:272000,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.25,output:2,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-05-16",family:"gpt"},"mistral/devstral-small":{id:"mistral/devstral-small",name:"Devstral Small 1.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/devstral-small-2":{id:"mistral/devstral-small-2",name:"Devstral Small 2",contextWindow:256000,maxInputTokens:256000,maxTokens:12800,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"devstral"},"mistral/mistral-medium":{id:"mistral/mistral-medium",name:"Mistral Medium 3.1",contextWindow:128000,maxInputTokens:128000,maxTokens:64000,capabilities:["images","tools","temperature"],pricing:{input:0.4,output:2,cacheRead:0,cacheWrite:0},releaseDate:"2025-05-07",family:"mistral-medium"},"openai/o3":{id:"openai/o3",name:"o3",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-16",family:"o"},"openai/o3-pro":{id:"openai/o3-pro",name:"o3 Pro",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning"],pricing:{input:20,output:80,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-16",family:"o-pro"},"openai/o4-mini":{id:"openai/o4-mini",name:"o4-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.28,cacheWrite:0},releaseDate:"2025-04-16",family:"o-mini"},"openai/gpt-4.1":{id:"openai/gpt-4.1",name:"GPT-4.1",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2,output:8,cacheRead:0.5,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt"},"openai/gpt-4.1-mini":{id:"openai/gpt-4.1-mini",name:"GPT-4.1 mini",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.4,output:1.6,cacheRead:0.1,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-mini"},"openai/gpt-4.1-nano":{id:"openai/gpt-4.1-nano",name:"GPT-4.1 nano",contextWindow:1047576,maxInputTokens:1047576,maxTokens:32768,capabilities:["images","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-04-14",family:"gpt-nano"},"meta/llama-4-maverick":{id:"meta/llama-4-maverick",name:"Llama-4-Maverick-17B-128E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"meta/llama-4-scout":{id:"meta/llama-4-scout",name:"Llama-4-Scout-17B-16E-Instruct-FP8",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-05",family:"llama"},"alibaba/qwen-3-14b":{id:"alibaba/qwen-3-14b",name:"Qwen3-14B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.06,output:0.24,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-235b":{id:"alibaba/qwen-3-235b",name:"Qwen3 235B A22B Instruct 2507",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.13,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-30b":{id:"alibaba/qwen-3-30b",name:"Qwen3-30B-A3B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.08,output:0.29,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen-3-32b":{id:"alibaba/qwen-3-32b",name:"Qwen 3.32B",contextWindow:40960,maxInputTokens:40960,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-235b-a22b-thinking":{id:"alibaba/qwen3-235b-a22b-thinking",name:"Qwen3 235B A22B Thinking 2507",contextWindow:262114,maxInputTokens:262114,maxTokens:13105,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0.3,output:2.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-coder":{id:"alibaba/qwen3-coder",name:"Qwen3 Coder 480B A35B Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:66536,capabilities:["tools","temperature"],pricing:{input:0.38,output:1.53,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"alibaba/qwen3-coder-30b-a3b":{id:"alibaba/qwen3-coder-30b-a3b",name:"Qwen 3 Coder 30B A3B Instruct",contextWindow:160000,maxInputTokens:160000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:0.07,output:0.27,cacheRead:0,cacheWrite:0},releaseDate:"2025-04",family:"qwen"},"google/gemini-2.5-flash":{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:0.3,output:2.5,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-flash"},"google/gemini-2.5-pro":{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:65536,capabilities:["images","files","tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.25,output:10,cacheRead:0.125,cacheWrite:0},releaseDate:"2025-03-20",family:"gemini-pro"},"mistral/magistral-medium":{id:"mistral/magistral-medium",name:"Magistral Medium (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["tools","reasoning","temperature"],pricing:{input:2,output:5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-medium"},"mistral/magistral-small":{id:"mistral/magistral-small",name:"Magistral Small",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","temperature"],pricing:{input:0.5,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-17",family:"magistral-small"},"cohere/command-a":{id:"cohere/command-a",name:"Command A",contextWindow:256000,maxInputTokens:256000,maxTokens:8000,capabilities:["tools","temperature"],pricing:{input:2.5,output:10,cacheRead:0,cacheWrite:0},releaseDate:"2025-03-13",family:"command"},"inception/mercury-coder-small":{id:"inception/mercury-coder-small",name:"Mercury Coder Small Beta",contextWindow:32000,maxInputTokens:32000,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-26",family:"mercury"},"anthropic/claude-3.7-sonnet":{id:"anthropic/claude-3.7-sonnet",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"perplexity/sonar":{id:"perplexity/sonar",name:"Sonar",contextWindow:127000,maxInputTokens:127000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:1,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar"},"perplexity/sonar-pro":{id:"perplexity/sonar-pro",name:"Sonar Pro",contextWindow:200000,maxInputTokens:200000,maxTokens:8000,capabilities:["images","tools","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2025-02-19",family:"sonar-pro"},"xai/grok-3":{id:"xai/grok-3",name:"Grok 3",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-fast":{id:"xai/grok-3-fast",name:"Grok 3 Fast",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-mini":{id:"xai/grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"xai/grok-3-mini-fast":{id:"xai/grok-3-mini-fast",name:"Grok 3 Mini Fast",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"deepseek/deepseek-r1":{id:"deepseek/deepseek-r1",name:"DeepSeek-R1",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["tools","reasoning","temperature"],pricing:{input:1.35,output:5.4,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-20",family:"deepseek-thinking"},"alibaba/qwen3-max-thinking":{id:"alibaba/qwen3-max-thinking",name:"Qwen 3 Max Thinking",contextWindow:256000,maxInputTokens:256000,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:6,cacheRead:0.24,cacheWrite:0},releaseDate:"2025-01",family:"qwen"},"arcee-ai/trinity-large-preview":{id:"arcee-ai/trinity-large-preview",name:"Trinity Large Preview",contextWindow:131000,maxInputTokens:131000,maxTokens:6550,capabilities:["tools","temperature"],pricing:{input:0.25,output:1,cacheRead:0,cacheWrite:0},releaseDate:"2025-01",family:"trinity"},"zai/glm-4.7-flashx":{id:"zai/glm-4.7-flashx",name:"GLM 4.7 FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:128000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.06,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-01",family:"glm-flash"},"deepseek/deepseek-v3":{id:"deepseek/deepseek-v3",name:"DeepSeek V3 0324",contextWindow:163840,maxInputTokens:163840,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.77,output:0.77,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-26",family:"deepseek"},"openai/o3-mini":{id:"openai/o3-mini",name:"o3-mini",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["tools","reasoning","structured_output","prompt-cache"],pricing:{input:1.1,output:4.4,cacheRead:0.55,cacheWrite:0},releaseDate:"2024-12-20",family:"o-mini"},"google/gemini-2.0-flash":{id:"google/gemini-2.0-flash",name:"Gemini 2.0 Flash",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.1,output:0.4,cacheRead:0.025,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash"},"google/gemini-2.0-flash-lite":{id:"google/gemini-2.0-flash-lite",name:"Gemini 2.0 Flash Lite",contextWindow:1048576,maxInputTokens:1048576,maxTokens:8192,capabilities:["images","files","tools","structured_output","temperature"],pricing:{input:0.075,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"gemini-flash-lite"},"meta/llama-3.3-70b":{id:"meta/llama-3.3-70b",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"openai/o1":{id:"openai/o1",name:"o1",contextWindow:200000,maxInputTokens:200000,maxTokens:1e5,capabilities:["images","files","tools","reasoning","structured_output","prompt-cache"],pricing:{input:15,output:60,cacheRead:7.5,cacheWrite:0},releaseDate:"2024-12-05",family:"o"},"amazon/nova-lite":{id:"amazon/nova-lite",name:"Nova Lite",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.06,output:0.24,cacheRead:0.015,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-lite"},"amazon/nova-micro":{id:"amazon/nova-micro",name:"Nova Micro",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:0.035,output:0.14,cacheRead:0.00875,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-micro"},"amazon/nova-pro":{id:"amazon/nova-pro",name:"Nova Pro",contextWindow:300000,maxInputTokens:300000,maxTokens:8192,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.8,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2024-12-03",family:"nova-pro"},"nvidia/nemotron-nano-12b-v2-vl":{id:"nvidia/nemotron-nano-12b-v2-vl",name:"Nvidia Nemotron Nano 12B V2 VL",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.2,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2024-12",family:"nemotron"},"openai/gpt-oss-safeguard-20b":{id:"openai/gpt-oss-safeguard-20b",name:"gpt-oss-safeguard-20b",contextWindow:131072,maxInputTokens:65536,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.08,output:0.3,cacheRead:0.04,cacheWrite:0},releaseDate:"2024-12-01",family:"gpt-oss"},"mistral/pixtral-large":{id:"mistral/pixtral-large",name:"Pixtral Large (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["images","tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-11-01",family:"pixtral"},"anthropic/claude-3.5-haiku":{id:"anthropic/claude-3.5-haiku",name:"Claude Haiku 3.5",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"anthropic/claude-3.5-sonnet":{id:"anthropic/claude-3.5-sonnet",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"},"mistral/ministral-3b":{id:"mistral/ministral-3b",name:"Ministral 3B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.04,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"mistral/ministral-8b":{id:"mistral/ministral-8b",name:"Ministral 8B (latest)",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2024-10-01",family:"ministral"},"meta/llama-3.2-11b":{id:"meta/llama-3.2-11b",name:"Llama 3.2 11B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.16,output:0.16,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"meta/llama-3.2-90b":{id:"meta/llama-3.2-90b",name:"Llama 3.2 90B Vision Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:8192,capabilities:["images","tools","temperature"],pricing:{input:0.72,output:0.72,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-25",family:"llama"},"mistral/pixtral-12b":{id:"mistral/pixtral-12b",name:"Pixtral 12B",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["images","tools","temperature"],pricing:{input:0.15,output:0.15,cacheRead:0,cacheWrite:0},releaseDate:"2024-09-01",family:"pixtral"},"xai/grok-2-vision":{id:"xai/grok-2-vision",name:"Grok 2 Vision",contextWindow:8192,maxInputTokens:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"meta/llama-3.1-70b":{id:"meta/llama-3.1-70b",name:"Llama 3.1 70B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.4,output:0.4,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta/llama-3.1-8b":{id:"meta/llama-3.1-8b",name:"Llama 3.1 8B Instruct",contextWindow:131072,maxInputTokens:131072,maxTokens:16384,capabilities:["tools","temperature"],pricing:{input:0.03,output:0.05,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"openai/gpt-4o-mini":{id:"openai/gpt-4o-mini",name:"GPT-4o mini",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:0.15,output:0.6,cacheRead:0.08,cacheWrite:0},releaseDate:"2024-07-18",family:"gpt-mini"},"mistral/mistral-nemo":{id:"mistral/mistral-nemo",name:"Mistral Nemo",contextWindow:60288,maxInputTokens:60288,maxTokens:16000,capabilities:["tools","temperature"],pricing:{input:0.04,output:0.17,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-01",family:"mistral-nemo"},"openai/o3-deep-research":{id:"openai/o3-deep-research",name:"o3-deep-research",contextWindow:200000,maxInputTokens:1e5,maxTokens:1e5,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:10,output:40,cacheRead:2.5,cacheWrite:0},releaseDate:"2024-06-26",family:"o"},"anthropic/claude-3.5-sonnet-20240620":{id:"anthropic/claude-3.5-sonnet-20240620",name:"Claude 3.5 Sonnet (2024-06-20)",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature"],pricing:{input:3,output:15,cacheRead:0,cacheWrite:0},releaseDate:"2024-06-20",family:"claude-sonnet"},"mistral/codestral":{id:"mistral/codestral",name:"Codestral (latest)",contextWindow:256000,maxInputTokens:256000,maxTokens:4096,capabilities:["tools","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2024-05-29",family:"codestral"},"openai/gpt-4o":{id:"openai/gpt-4o",name:"GPT-4o",contextWindow:128000,maxInputTokens:128000,maxTokens:16384,capabilities:["images","files","tools","structured_output","temperature","prompt-cache"],pricing:{input:2.5,output:10,cacheRead:1.25,cacheWrite:0},releaseDate:"2024-05-13",family:"gpt"},"mistral/mixtral-8x22b-instruct":{id:"mistral/mixtral-8x22b-instruct",name:"Mixtral 8x22B",contextWindow:64000,maxInputTokens:64000,maxTokens:3200,capabilities:["tools","temperature"],pricing:{input:2,output:6,cacheRead:0,cacheWrite:0},releaseDate:"2024-04-17",family:"mixtral"},"anthropic/claude-3-haiku":{id:"anthropic/claude-3-haiku",name:"Claude Haiku 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.25,output:1.25,cacheRead:0.03,cacheWrite:0.3},releaseDate:"2024-03-13",family:"claude-haiku"},"anthropic/claude-3-opus":{id:"anthropic/claude-3-opus",name:"Claude Opus 3",contextWindow:200000,maxInputTokens:200000,maxTokens:4096,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2024-02-29",family:"claude-opus"},"openai/gpt-4-turbo":{id:"openai/gpt-4-turbo",name:"GPT-4 Turbo",contextWindow:128000,maxInputTokens:128000,maxTokens:4096,capabilities:["images","tools","temperature"],pricing:{input:10,output:30,cacheRead:0,cacheWrite:0},releaseDate:"2023-11-06",family:"gpt"}},vertex:{"claude-opus-4-7@default":{id:"claude-opus-4-7@default",name:"Claude Opus 4.7",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-04-16",family:"claude-opus"},"claude-sonnet-4-6@default":{id:"claude-sonnet-4-6@default",name:"Claude Sonnet 4.6",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2026-02-17",family:"claude-sonnet"},"claude-opus-4-6@default":{id:"claude-opus-4-6@default",name:"Claude Opus 4.6",contextWindow:1e6,maxInputTokens:1e6,maxTokens:128000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2026-02-05",family:"claude-opus"},"claude-opus-4-5@20251101":{id:"claude-opus-4-5@20251101",name:"Claude Opus 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:0.5,cacheWrite:6.25},releaseDate:"2025-11-01",family:"claude-opus"},"claude-haiku-4-5@20251001":{id:"claude-haiku-4-5@20251001",name:"Claude Haiku 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:5,cacheRead:0.1,cacheWrite:1.25},releaseDate:"2025-10-15",family:"claude-haiku"},"claude-sonnet-4-5@20250929":{id:"claude-sonnet-4-5@20250929",name:"Claude Sonnet 4.5",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-09-29",family:"claude-sonnet"},"claude-opus-4-1@20250805":{id:"claude-opus-4-1@20250805",name:"Claude Opus 4.1",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-08-05",family:"claude-opus"},"claude-opus-4@20250514":{id:"claude-opus-4@20250514",name:"Claude Opus 4",contextWindow:200000,maxInputTokens:200000,maxTokens:32000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:15,output:75,cacheRead:1.5,cacheWrite:18.75},releaseDate:"2025-05-22",family:"claude-opus"},"claude-sonnet-4@20250514":{id:"claude-sonnet-4@20250514",name:"Claude Sonnet 4",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-05-22",family:"claude-sonnet"},"claude-3-7-sonnet@20250219":{id:"claude-3-7-sonnet@20250219",name:"Claude Sonnet 3.7",contextWindow:200000,maxInputTokens:200000,maxTokens:64000,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2025-02-19",family:"claude-sonnet"},"claude-3-5-haiku@20241022":{id:"claude-3-5-haiku@20241022",name:"Claude Haiku 3.5",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:0.8,output:4,cacheRead:0.08,cacheWrite:1},releaseDate:"2024-10-22",family:"claude-haiku"},"claude-3-5-sonnet@20241022":{id:"claude-3-5-sonnet@20241022",name:"Claude Sonnet 3.5 v2",contextWindow:200000,maxInputTokens:200000,maxTokens:8192,capabilities:["images","files","tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.3,cacheWrite:3.75},releaseDate:"2024-10-22",family:"claude-sonnet"}},wandb:{"zai-org/GLM-5.1":{id:"zai-org/GLM-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8":{id:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",name:"NVIDIA Nemotron 3 Super 120B",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.2,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-11",family:"nemotron"},"MiniMaxAI/MiniMax-M2.5":{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5",contextWindow:196608,maxInputTokens:196608,maxTokens:9830,capabilities:["tools","structured_output","temperature"],pricing:{input:0.3,output:1.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-12",family:"minimax"},"zai-org/GLM-5-FP8":{id:"zai-org/GLM-5-FP8",name:"GLM 5",contextWindow:200000,maxInputTokens:200000,maxTokens:1e4,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:3.2,cacheRead:0,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"moonshotai/Kimi-K2.5":{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.5,output:2.85,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-27",family:"kimi"},"deepseek-ai/DeepSeek-V3.1":{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1",contextWindow:161000,maxInputTokens:161000,maxTokens:8050,capabilities:["tools","structured_output","temperature"],pricing:{input:0.55,output:1.65,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-21",family:"deepseek"},"openai/gpt-oss-120b":{id:"openai/gpt-oss-120b",name:"gpt-oss-120b",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.15,output:0.6,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"openai/gpt-oss-20b":{id:"openai/gpt-oss-20b",name:"gpt-oss-20b",contextWindow:131072,maxInputTokens:131072,maxTokens:6553,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.2,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-05",family:"gpt-oss"},"Qwen/Qwen3-30B-A3B-Instruct-2507":{id:"Qwen/Qwen3-30B-A3B-Instruct-2507",name:"Qwen3 30B A3B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.3,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Thinking-2507":{id:"Qwen/Qwen3-235B-A22B-Thinking-2507",name:"Qwen3-235B-A22B-Thinking-2507",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-25",family:"qwen"},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{id:"Qwen/Qwen3-Coder-480B-A35B-Instruct",name:"Qwen3-Coder-480B-A35B-Instruct",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:1,output:1.5,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-23",family:"qwen"},"OpenPipe/Qwen3-14B-Instruct":{id:"OpenPipe/Qwen3-14B-Instruct",name:"OpenPipe Qwen3 14B Instruct",contextWindow:32768,maxInputTokens:32768,maxTokens:1638,capabilities:["tools","structured_output","temperature"],pricing:{input:0.05,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-29",family:"qwen"},"Qwen/Qwen3-235B-A22B-Instruct-2507":{id:"Qwen/Qwen3-235B-A22B-Instruct-2507",name:"Qwen3 235B A22B Instruct 2507",contextWindow:262144,maxInputTokens:262144,maxTokens:13107,capabilities:["tools","structured_output","temperature"],pricing:{input:0.1,output:0.1,cacheRead:0,cacheWrite:0},releaseDate:"2025-04-28",family:"qwen"},"meta-llama/Llama-4-Scout-17B-16E-Instruct":{id:"meta-llama/Llama-4-Scout-17B-16E-Instruct",name:"Llama 4 Scout 17B 16E Instruct",contextWindow:64000,maxInputTokens:64000,maxTokens:3200,capabilities:["images","tools","reasoning","structured_output","temperature"],pricing:{input:0.17,output:0.66,cacheRead:0,cacheWrite:0},releaseDate:"2025-01-31",family:"llama"},"microsoft/Phi-4-mini-instruct":{id:"microsoft/Phi-4-mini-instruct",name:"Phi-4-mini-instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.08,output:0.35,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-11",family:"phi"},"meta-llama/Llama-3.3-70B-Instruct":{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama-3.3-70B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.71,output:0.71,cacheRead:0,cacheWrite:0},releaseDate:"2024-12-06",family:"llama"},"meta-llama/Llama-3.1-70B-Instruct":{id:"meta-llama/Llama-3.1-70B-Instruct",name:"Llama 3.1 70B",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","structured_output","temperature"],pricing:{input:0.8,output:0.8,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"},"meta-llama/Llama-3.1-8B-Instruct":{id:"meta-llama/Llama-3.1-8B-Instruct",name:"Meta-Llama-3.1-8B-Instruct",contextWindow:128000,maxInputTokens:128000,maxTokens:6400,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0.22,output:0.22,cacheRead:0,cacheWrite:0},releaseDate:"2024-07-23",family:"llama"}},xai:{"grok-4.3":{id:"grok-4.3",name:"Grok 4.3",contextWindow:1e6,maxInputTokens:1e6,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.25,output:2.5,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-05-01",family:"grok"},"grok-4.20-0309-non-reasoning":{id:"grok-4.20-0309-non-reasoning",name:"Grok 4.20 (Non-Reasoning)",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4.20-0309-reasoning":{id:"grok-4.20-0309-reasoning",name:"Grok 4.20 (Reasoning)",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:2,output:6,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-09",family:"grok"},"grok-4-1-fast":{id:"grok-4-1-fast",name:"Grok 4.1 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"grok-4-1-fast-non-reasoning":{id:"grok-4-1-fast-non-reasoning",name:"Grok 4.1 Fast (Non-Reasoning)",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-11-19",family:"grok"},"grok-4-fast":{id:"grok-4-fast",name:"Grok 4 Fast",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"grok-4-fast-non-reasoning":{id:"grok-4-fast-non-reasoning",name:"Grok 4 Fast (Non-Reasoning)",contextWindow:2000000,maxInputTokens:2000000,maxTokens:30000,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:0.2,output:0.5,cacheRead:0.05,cacheWrite:0},releaseDate:"2025-09-19",family:"grok"},"grok-code-fast-1":{id:"grok-code-fast-1",name:"Grok Code Fast 1",contextWindow:256000,maxInputTokens:256000,maxTokens:1e4,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.5,cacheRead:0.02,cacheWrite:0},releaseDate:"2025-08-28",family:"grok"},"grok-4":{id:"grok-4",name:"Grok 4",contextWindow:256000,maxInputTokens:256000,maxTokens:64000,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-07-09",family:"grok"},"grok-3":{id:"grok-3",name:"Grok 3",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-fast":{id:"grok-3-fast",name:"Grok 3 Fast",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-fast-latest":{id:"grok-3-fast-latest",name:"Grok 3 Fast Latest",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:25,cacheRead:1.25,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-latest":{id:"grok-3-latest",name:"Grok 3 Latest",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:3,output:15,cacheRead:0.75,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini":{id:"grok-3-mini",name:"Grok 3 Mini",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-fast":{id:"grok-3-mini-fast",name:"Grok 3 Mini Fast",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-fast-latest":{id:"grok-3-mini-fast-latest",name:"Grok 3 Mini Fast Latest",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:4,cacheRead:0.15,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-3-mini-latest":{id:"grok-3-mini-latest",name:"Grok 3 Mini Latest",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.3,output:0.5,cacheRead:0.075,cacheWrite:0},releaseDate:"2025-02-17",family:"grok"},"grok-2-1212":{id:"grok-2-1212",name:"Grok 2 (1212)",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-12-12",family:"grok"},"grok-beta":{id:"grok-beta",name:"Grok Beta",contextWindow:131072,maxInputTokens:131072,maxTokens:4096,capabilities:["tools","temperature","prompt-cache"],pricing:{input:5,output:15,cacheRead:5,cacheWrite:0},releaseDate:"2024-11-01",family:"grok-beta"},"grok-vision-beta":{id:"grok-vision-beta",name:"Grok Vision Beta",contextWindow:8192,maxInputTokens:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:5,output:15,cacheRead:5,cacheWrite:0},releaseDate:"2024-11-01",family:"grok-vision"},"grok-2":{id:"grok-2",name:"Grok 2",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-latest":{id:"grok-2-latest",name:"Grok 2 Latest",contextWindow:131072,maxInputTokens:131072,maxTokens:8192,capabilities:["tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision":{id:"grok-2-vision",name:"Grok 2 Vision",contextWindow:8192,maxInputTokens:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision-1212":{id:"grok-2-vision-1212",name:"Grok 2 Vision (1212)",contextWindow:8192,maxInputTokens:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"},"grok-2-vision-latest":{id:"grok-2-vision-latest",name:"Grok 2 Vision Latest",contextWindow:8192,maxInputTokens:8192,maxTokens:4096,capabilities:["images","tools","temperature","prompt-cache"],pricing:{input:2,output:10,cacheRead:2,cacheWrite:0},releaseDate:"2024-08-20",family:"grok"}},xiaomi:{"mimo-v2.5":{id:"mimo-v2.5",name:"MiMo-V2.5",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["images","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2.5-pro":{id:"mimo-v2.5-pro",name:"MiMo-V2.5-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-04-22",family:"mimo"},"mimo-v2-omni":{id:"mimo-v2-omni",name:"MiMo-V2-Omni",contextWindow:262144,maxInputTokens:262144,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:0.4,output:2,cacheRead:0.08,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-pro":{id:"mimo-v2-pro",name:"MiMo-V2-Pro",contextWindow:1048576,maxInputTokens:1048576,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-03-18",family:"mimo"},"mimo-v2-flash":{id:"mimo-v2-flash",name:"MiMo-V2-Flash",contextWindow:262144,maxInputTokens:262144,maxTokens:65536,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.1,output:0.3,cacheRead:0.01,cacheWrite:0},releaseDate:"2025-12-16",family:"mimo"}},zai:{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.4,output:4.4,cacheRead:0.26,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature","prompt-cache"],pricing:{input:1.2,output:4,cacheRead:0.24,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-5":{id:"glm-5",name:"GLM-5",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:1,output:3.2,cacheRead:0.2,cacheWrite:0},releaseDate:"2026-02-11",family:"glm"},"glm-4.7-flash":{id:"glm-4.7-flash",name:"GLM-4.7-Flash",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7-flashx":{id:"glm-4.7-flashx",name:"GLM-4.7-FlashX",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.07,output:0.4,cacheRead:0.01,cacheWrite:0},releaseDate:"2026-01-19",family:"glm-flash"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.6v":{id:"glm-4.6v",name:"GLM-4.6V",contextWindow:128000,maxInputTokens:128000,maxTokens:32768,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.3,output:0.9,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-08",family:"glm"},"glm-4.6":{id:"glm-4.6",name:"GLM-4.6",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-09-30",family:"glm"},"glm-4.5v":{id:"glm-4.5v",name:"GLM-4.5V",contextWindow:64000,maxInputTokens:64000,maxTokens:16384,capabilities:["images","tools","reasoning","temperature"],pricing:{input:0.6,output:1.8,cacheRead:0,cacheWrite:0},releaseDate:"2025-08-11",family:"glm"},"glm-4.5":{id:"glm-4.5",name:"GLM-4.5",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.6,output:2.2,cacheRead:0.11,cacheWrite:0},releaseDate:"2025-07-28",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature","prompt-cache"],pricing:{input:0.2,output:1.1,cacheRead:0.03,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"},"glm-4.5-flash":{id:"glm-4.5-flash",name:"GLM-4.5-Flash",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-flash"}},"zai-coding-plan":{"glm-5v-turbo":{id:"glm-5v-turbo",name:"GLM-5V-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["images","files","tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-04-01",family:"glm"},"glm-5.1":{id:"glm-5.1",name:"GLM-5.1",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-27",family:"glm"},"glm-5-turbo":{id:"glm-5-turbo",name:"GLM-5-Turbo",contextWindow:200000,maxInputTokens:200000,maxTokens:131072,capabilities:["tools","reasoning","structured_output","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2026-03-16",family:"glm"},"glm-4.7":{id:"glm-4.7",name:"GLM-4.7",contextWindow:204800,maxInputTokens:204800,maxTokens:131072,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-12-22",family:"glm"},"glm-4.5-air":{id:"glm-4.5-air",name:"GLM-4.5-Air",contextWindow:131072,maxInputTokens:131072,maxTokens:98304,capabilities:["tools","reasoning","temperature"],pricing:{input:0,output:0,cacheRead:0,cacheWrite:0},releaseDate:"2025-07-28",family:"glm-air"}}}};var ug=[{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-native"},{modelsDevKey:"openai",generatedProviderId:"openai-native",runtimeProviderId:"openai-codex-cli"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic"},{modelsDevKey:"anthropic",generatedProviderId:"anthropic",runtimeProviderId:"claude-code"},{modelsDevKey:"google",generatedProviderId:"gemini"},{modelsDevKey:"deepseek",generatedProviderId:"deepseek",runtimeProviderId:"deepseek"},{modelsDevKey:"xai",generatedProviderId:"xai"},{modelsDevKey:"togetherai",generatedProviderId:"together",runtimeProviderId:"together"},{modelsDevKey:"sap-ai-core",generatedProviderId:"sapaicore",runtimeProviderId:"sapaicore"},{modelsDevKey:"ollama",runtimeProviderId:"ollama-cloud"},{modelsDevKey:"ollama-cloud",generatedProviderId:"ollama"},{modelsDevKey:"fireworks-ai",generatedProviderId:"fireworks",runtimeProviderId:"fireworks"},{modelsDevKey:"groq",generatedProviderId:"groq",runtimeProviderId:"groq"},{modelsDevKey:"cerebras",generatedProviderId:"cerebras",runtimeProviderId:"cerebras"},{modelsDevKey:"sambanova",generatedProviderId:"sambanova",runtimeProviderId:"sambanova"},{modelsDevKey:"nebius",generatedProviderId:"nebius",runtimeProviderId:"nebius"},{modelsDevKey:"huggingface",generatedProviderId:"huggingface",runtimeProviderId:"huggingface"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway",runtimeProviderId:"dify"},{modelsDevKey:"vercel",generatedProviderId:"vercel-ai-gateway"},{modelsDevKey:"openrouter",generatedProviderId:"openrouter",runtimeProviderId:"cline"},{modelsDevKey:"aihubmix",generatedProviderId:"aihubmix",runtimeProviderId:"aihubmix"},{modelsDevKey:"hicap",runtimeProviderId:"hicap"},{modelsDevKey:"nous-research",runtimeProviderId:"nousResearch"},{modelsDevKey:"huawei-cloud-maas",runtimeProviderId:"huawei-cloud-maas"},{modelsDevKey:"baseten",generatedProviderId:"baseten",runtimeProviderId:"baseten"},{modelsDevKey:"zai-coding-plan",generatedProviderId:"zai-coding-plan"},{modelsDevKey:"google-vertex-anthropic",generatedProviderId:"vertex"},{modelsDevKey:"lmstudio",generatedProviderId:"lmstudio"},{modelsDevKey:"zai",generatedProviderId:"zai"},{modelsDevKey:"requesty",generatedProviderId:"requesty"},{modelsDevKey:"amazon-bedrock",generatedProviderId:"bedrock"},{modelsDevKey:"moonshotai",generatedProviderId:"moonshot"},{modelsDevKey:"minimax",generatedProviderId:"minimax"},{modelsDevKey:"wandb",generatedProviderId:"wandb"},{modelsDevKey:"kilo",generatedProviderId:"kilo"},{modelsDevKey:"xiaomi",generatedProviderId:"xiaomi"},{modelsDevKey:"v0",generatedProviderId:"v0"}];function sg(e){return[...new Set(e)]}var lg=Object.fromEntries(ug.flatMap((e)=>e.generatedProviderId?[[e.modelsDevKey,e.generatedProviderId]]:[]));function l6(e){let t=ug.flatMap((n)=>{if(!n.generatedProviderId)return[];if(n.generatedProviderId===e||n.runtimeProviderId===e)return[n.generatedProviderId];return[]});if(e==="nousResearch")return sg([...t,"nousresearch",e]);return sg([...t,e])}var cg=4096,dx=4096;function dg(e){if(!e)return Number.NEGATIVE_INFINITY;let t=Date.parse(e);return Number.isNaN(t)?Number.NEGATIVE_INFINITY:t}function Fn(e){return Object.fromEntries(Object.entries(e).sort(([t,n],[a,i])=>{let r=dg(n.releaseDate),o=dg(i.releaseDate);if(r!==o)return o-r;return t.localeCompare(a)}))}function cx(e){let t=[];if(e.modalities?.input?.includes("image"))t.push("images");if(e.modalities?.input?.includes("pdf"))t.push("files");if(e.tool_call===!0)t.push("tools");if(e.reasoning===!0)t.push("reasoning");if(e.structured_output===!0)t.push("structured_output");if(e.temperature===!0)t.push("temperature");if(e.cost?.cache_read&&e.cost?.cache_read>=0||e.cost?.cache_write&&e.cost?.cache_write>=0)t.push("prompt-cache");return t}function mx(e){if(e==="active"||e==="preview"||e==="deprecated"||e==="legacy")return e;return}function fx(e){let t=e?.context,n=e?.input;if(typeof t==="number"&&typeof n==="number")return Math.min(t,n);return n??t??cg}function px(e,t){let n=fx(t.limit),a=t.limit?.output??dx,i=t.limit?.context,o=(i??cg)===a?a*0.05:a;return{id:e,name:t.name||e,contextWindow:i,maxInputTokens:n,maxTokens:Math.floor(o),capabilities:cx(t),pricing:{input:t.cost?.input??0,output:t.cost?.output??0,cacheRead:t.cost?.cache_read??0,cacheWrite:t.cost?.cache_write??0},status:mx(t.status),releaseDate:t.release_date,family:t.family}}function vx(e){return e.status==="deprecated"}function gx(e){let t={};for(let[n,a]of Object.entries(lg)){let i=e[n];if(!i?.models)continue;let r={};for(let[o,s]of Object.entries(i.models)){if(s.tool_call!==!0||vx(s))continue;r[o]=px(o,s)}if(Object.keys(r).length>0)t[a]=Fn(r)}return t}async function m6(e,t=fetch){let n=await t(e);if(!n.ok)throw Error(`Failed to load model catalog from ${e}: HTTP ${n.status}`);let a=await n.json();return gx(a)}var mg,fg=new Map;function g6(){return mg??=Object.fromEntries(Object.entries(No.providers).map(([e,t])=>[e,Fn(t)])),mg}function pg(e){let t=fg.get(e);if(t)return t;let n=Fn(No.providers[e]??{});return fg.set(e,n),n}Xe();var hx="https://code.aiservice.us-chicago-1.oci.oraclecloud.com/20250206/app/litellm";function yx(e){return Object.fromEntries(Object.entries(e).map(([t,n])=>[t,{...n}]))}function bx(e){if(!e?.length)return;return[...new Set(e)]}function vg(e){return bx([...e.capabilities??[],...e.popular!==void 0?["popular"]:[]])}function gg(e){if(e.popular===void 0)return e.metadata;return{...e.metadata,popularRank:e.popular}}function Do(e){return yx(pg(e))}function Ao(e){let t=Object.entries(Do("anthropic")).find(([n])=>e(n));if(t)return t[1];return{id:"sonnet",name:"Claude Sonnet",capabilities:["streaming","reasoning"]}}function $x(){function e(t){return{...t==="opus"?Ao((a)=>a.includes("opus")):t==="haiku"?Ao((a)=>a.includes("haiku")):Ao((a)=>a.includes("sonnet")),id:t,name:`Claude ${t.charAt(0).toUpperCase()}${t.slice(1)}`}}return{opus:e("opus"),sonnet:e("sonnet"),haiku:e("haiku")}}function _x(){let e=Do("openai-native");return Object.fromEntries(["gpt-5.4","gpt-5.3-codex"].map((n)=>[n,e[n]??{id:n,name:n,capabilities:["tools","reasoning","streaming"]}]))}function kx(e,t){let n={id:e,name:e};if(t?.id==="qwen"||t?.id==="qwen-code")n.family="qwen",n.capabilities=["prompt-cache"];return n}function wx(e,t){let n=new Set(["text"]);for(let i of t.capabilities??[])switch(i){case"tools":n.add("tools");break;case"reasoning":n.add("reasoning");break;case"prompt-cache":n.add("prompt-cache");break;case"images":n.add("images");break;case"structured_output":n.add("structured-output");break}let a={};if(t.family)a.family=t.family;if(t.pricing)a.pricing=t.pricing;if(t.status)a.status=t.status;if(t.releaseDate)a.releaseDate=t.releaseDate;return{id:t.id,name:t.name??t.id,providerId:e,description:t.description,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:[...n],metadata:Object.keys(a).length>0?a:void 0}}function Sx(e){if(e.client==="openai")return"openai-responses";switch(e.family){case"openai":return"openai-responses";case"anthropic":case"bedrock":return"anthropic";case"google":case"vertex":return"gemini";default:return"openai-chat"}}function Ix(e){if(e.protocol==="openai-responses")return"openai";switch(e.family){case"openai":return"openai";case"anthropic":return"anthropic";case"google":return"gemini";case"vertex":return"vertex";case"bedrock":return"bedrock";case"mistral":case"claude-code":case"openai-codex":case"opencode":case"dify":return"ai-sdk-community";default:return"openai-compatible"}}var xx=[{id:"cline",name:"Cline",description:"Cline API endpoint",family:"openai-compatible",popular:1,capabilities:["reasoning","prompt-cache","tools","oauth"],modelsProviderId:"openrouter",defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["CLINE_API_KEY"],defaults:{get baseUrl(){return`${ho().apiBaseUrl}/api/v1`}},metadata:On},{id:"deepseek",name:"DeepSeek",description:"Advanced AI models with reasoning capabilities",family:"openai-compatible",popular:3,capabilities:["reasoning","prompt-cache"],defaultModelId:"deepseek-v4-flash",apiKeyEnv:["DEEPSEEK_API_KEY"],defaults:{baseUrl:"https://api.deepseek.com/v1"}},{id:"xai",name:"xAI",description:"Creator of Grok AI assistant",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"grok-4.20-0309-non-reasoning",apiKeyEnv:["XAI_API_KEY"],defaults:{baseUrl:"https://api.x.ai/v1"}},{id:"together",name:"Together AI",description:"Fast inference for open-source models",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"Qwen/Qwen3.5-397B-A17B",apiKeyEnv:["TOGETHER_API_KEY"],defaults:{baseUrl:"https://api.together.xyz/v1"}},{id:"fireworks",name:"Fireworks AI",description:"High-performance inference platform",family:"openai-compatible",defaultModelId:"accounts/fireworks/models/minimax-m2p5",apiKeyEnv:["FIREWORKS_API_KEY"],defaults:{baseUrl:"https://api.fireworks.ai/inference/v1"}},{id:"groq",name:"Groq",description:"Ultra-fast LPU inference",family:"openai-compatible",defaultModelId:"moonshotai/kimi-k2-instruct-0905",apiKeyEnv:["GROQ_API_KEY"],defaults:{baseUrl:"https://api.groq.com/openai/v1"}},{id:"cerebras",name:"Cerebras",description:"Fast inference on Cerebras wafer-scale chips",family:"openai-compatible",defaultModelId:"zai-glm-4.7",apiKeyEnv:["CEREBRAS_API_KEY"],defaults:{baseUrl:"https://api.cerebras.ai/v1"}},{id:"sambanova",name:"SambaNova",description:"High-performance AI inference",family:"openai-compatible",apiKeyEnv:["SAMBANOVA_API_KEY"],modelsProviderId:"sambanova",defaults:{baseUrl:"https://api.sambanova.ai/v1"}},{id:"nebius",name:"Nebius",description:"European cloud AI infrastructure",family:"openai-compatible",defaultModelId:"nvidia/nemotron-3-super-120b-a12b",apiKeyEnv:["NEBIUS_API_KEY"],defaults:{baseUrl:"https://api.studio.nebius.ai/v1"}},{id:"baseten",name:"Baseten",description:"ML inference platform",family:"openai-compatible",apiKeyEnv:["BASETEN_API_KEY"],modelsProviderId:"baseten",defaults:{baseUrl:"https://model-api.baseten.co/v1"}},{id:"requesty",name:"Requesty",description:"AI router with multiple provider support",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"openai/gpt-5.4",apiKeyEnv:["REQUESTY_API_KEY"],modelsProviderId:"requesty",defaults:{baseUrl:"https://router.requesty.ai/v1"}},{id:"litellm",name:"LiteLLM",description:"Self-hosted LLM proxy",family:"openai-compatible",protocol:"openai-responses",popular:8,capabilities:["prompt-cache"],defaultModelId:"gpt-5.4",apiKeyEnv:["LITELLM_API_KEY"],defaults:{baseUrl:"http://localhost:4000/v1"}},{id:"huggingface",name:"Hugging Face",description:"Hugging Face inference API",family:"openai-compatible",defaultModelId:"MiniMaxAI/MiniMax-M2.5",apiKeyEnv:["HF_TOKEN"],modelsProviderId:"huggingface",defaults:{baseUrl:"https://api-inference.huggingface.co/v1"}},{id:"vercel-ai-gateway",name:"Vercel AI Gateway",description:"Vercel's AI gateway service",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"alibaba/qwen3.6-plus",apiKeyEnv:["AI_GATEWAY_API_KEY"],modelsProviderId:"vercel-ai-gateway",defaults:{baseUrl:"https://ai-gateway.vercel.sh/v1"},metadata:On},{id:"v0",name:"Vercel V0",description:"The Vercel provider gives you access to the v0 API, designed for building modern web applications.",family:"openai-compatible",protocol:"openai-responses",capabilities:["reasoning","tools"],defaultModelId:"v0-1.5-md",apiKeyEnv:["V0_API_KEY"],modelsProviderId:"v0",defaults:{baseUrl:"https://api.v0.dev/v1"}},{id:"aihubmix",name:"AI Hub Mix",description:"AI model aggregator",family:"openai-compatible",defaultModelId:"gpt-4o",apiKeyEnv:["AIHUBMIX_API_KEY"],modelsProviderId:"aihubmix",defaults:{baseUrl:"https://api.aihubmix.com/v1"},metadata:Ae},{id:"hicap",name:"HiCap",description:"HiCap AI platform",family:"openai-compatible",defaultModelId:"hicap-pro",apiKeyEnv:["HICAP_API_KEY"],defaults:{baseUrl:"https://api.hicap.ai/v1"}},{id:"nousResearch",name:"Nous Research",description:"Open-source AI research lab",family:"openai-compatible",defaultModelId:"DeepHermes-3-Llama-3-3-70B-Preview",apiKeyEnv:["NOUS_RESEARCH_API_KEY","NOUSRESEARCH_API_KEY"],modelsProviderId:"nousResearch",defaults:{baseUrl:"https://inference-api.nousresearch.com/v1"}},{id:"huawei-cloud-maas",name:"Huawei Cloud MaaS",description:"Huawei's model-as-a-service platform",family:"openai-compatible",defaultModelId:"DeepSeek-R1",apiKeyEnv:["HUAWEI_CLOUD_MAAS_API_KEY"],defaults:{baseUrl:"https://infer-modelarts.cn-southwest-2.myhuaweicloud.com/v1"}},{id:"qwen",name:"Alibaba Qwen",description:"Alibaba Qwen platform models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen-plus-latest",apiKeyEnv:["QWEN_API_KEY"],modelsProviderId:"qwen",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},metadata:ko},{id:"qwen-code",name:"Alibaba Qwen Code",description:"Qwen OAuth coding models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"qwen3-coder-plus",modelsProviderId:"qwen-code",defaults:{baseUrl:"https://dashscope.aliyuncs.com/compatible-mode/v1"},metadata:ko},{id:"doubao",name:"Doubao",description:"Volcengine Ark platform models",family:"openai-compatible",capabilities:["tools"],defaultModelId:"doubao-1-5-pro-256k-250115",apiKeyEnv:["DOUBAO_API_KEY"],modelsProviderId:"doubao",defaults:{baseUrl:"https://ark.cn-beijing.volces.com/api/v3"}},{id:"zai",name:"Z.AI",description:"Z.AI's family of LLMs",family:"openai-compatible",capabilities:["reasoning"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai",defaults:{baseUrl:"https://api.z.ai/api/paas/v4"}},{id:"zai-coding-plan",name:"Z.AI Coding Plan",description:"Z.AI's coding-focused models",family:"openai-compatible",capabilities:["reasoning","tools"],defaultModelId:"glm-5v-turbo",apiKeyEnv:["ZHIPU_API_KEY"],modelsProviderId:"zai-coding-plan",defaults:{baseUrl:"https://api.z.ai/api/coding/paas/v4"}},{id:"moonshot",name:"Moonshot",description:"Moonshot AI Studio models",family:"openai-compatible",capabilities:["tools","reasoning"],defaultModelId:"kimi-k2-0905-preview",apiKeyEnv:["MOONSHOT_API_KEY"],modelsProviderId:"moonshot",defaults:{baseUrl:"https://api.moonshot.ai/v1"}},{id:"wandb",name:"W&B by CoreWeave",description:"Weights & Biases",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"nvidia/NVIDIA-Nemotron-3-Super-120B-A12B-FP8",apiKeyEnv:["WANDB_API_KEY"],modelsProviderId:"wandb",defaults:{baseUrl:"https://api.inference.wandb.ai/v1"}},{id:"xiaomi",name:"Xiaomi",description:"Xiaomi",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","tools","reasoning"],defaultModelId:"mimo-v2-omni",apiKeyEnv:["XIAOMI_API_KEY"],modelsProviderId:"xiaomi",defaults:{baseUrl:"https://api.xiaomimimo.com/v1"}},{id:"kilo",name:"Kilo Gateway",description:"Kilo Gateway",family:"openai-compatible",protocol:"openai-responses",capabilities:["prompt-cache","reasoning","tools"],defaultModelId:"gpt-4o",apiKeyEnv:["KILO_GATEWAY_API_KEY"],modelsProviderId:"kilo",defaults:{baseUrl:"https://api.kilo.ai/api/gateway"}},{id:"openrouter",name:"OpenRouter",description:"OpenRouter AI platform",family:"openai-compatible",popular:5,capabilities:["reasoning","prompt-cache"],defaultModelId:"anthropic/claude-sonnet-4.6",apiKeyEnv:["OPENROUTER_API_KEY"],modelsProviderId:"openrouter",docsUrl:"https://openrouter.ai/models",defaults:{baseUrl:"https://openrouter.ai/api/v1"},metadata:On},{id:"ollama",name:"Ollama",description:"Ollama Cloud and local LLM hosting",family:"openai-compatible",popular:6,defaultModelId:"",apiKeyEnv:["OLLAMA_API_KEY"],defaults:{baseUrl:"http://localhost:11434/v1"},modelsSourceUrl:"http://localhost:11434/api/tags"},{id:"lmstudio",name:"LM Studio",description:"Local model inference with LM Studio",family:"openai-compatible",defaultModelId:"",apiKeyEnv:["LMSTUDIO_API_KEY"],modelsProviderId:"lmstudio",defaults:{baseUrl:"http://localhost:1234/v1"},modelsSourceUrl:"http://localhost:1234/v1/models"},{id:"oca",name:"Oracle Code Assist",description:"Oracle Code Assist (OCA) LiteLLM gateway",family:"openai-compatible",capabilities:["reasoning","prompt-cache","tools"],defaultModelId:"anthropic/claude-3-7-sonnet-20250219",apiKeyEnv:["OCA_API_KEY"],modelsProviderId:"oca",defaults:{baseUrl:hx},metadata:Ae},{id:"asksage",name:"AskSage",description:"AskSage platform",family:"openai-compatible",client:"fetch",capabilities:["tools"],defaultModelId:"gpt-4o",apiKeyEnv:["ASKSAGE_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.asksage.ai/server"}},{id:"sapaicore",name:"SAP AI Core",description:"SAP AI Core inference and orchestration platform",family:"openai-compatible",client:"ai-sdk-community",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"anthropic--claude-3.5-sonnet",apiKeyEnv:["AICORE_SERVICE_KEY","VCAP_SERVICES"],modelsProviderId:"sapaicore",metadata:Ae}],Zo=[{id:"openai-native",name:"OpenAI",description:"Creator of GPT and ChatGPT",family:"openai",capabilities:["reasoning"],modelsProviderId:"openai-native",defaultModelId:"gpt-5.4",apiKeyEnv:["OPENAI_API_KEY"],defaults:{baseUrl:"https://api.openai.com/v1"}},{id:"openai-codex",name:"OpenAI ChatGPT Subscription",description:"OpenAI ChatGPT subscription access uses an OAuth device code flow.",family:"openai",popular:2,capabilities:["reasoning","oauth"],defaultModelId:"gpt-5.4",modelsFactory:_x,defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},metadata:{usageCostDisplay:"hide"}},{id:"openai-codex-cli",name:"OpenAI Codex CLI",description:"OpenAI Codex via the local Codex CLI provider",family:"openai-codex",capabilities:["reasoning","provider-tools","local-auth"],defaultModelId:"gpt-5.3-codex",modelsProviderId:"openai",defaults:{baseUrl:"https://chatgpt.com/backend-api/codex"},metadata:{usageCostDisplay:"hide"}},{id:"anthropic",name:"Anthropic",description:"Creator of Claude, the AI assistant",family:"anthropic",popular:4,capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6",apiKeyEnv:["ANTHROPIC_API_KEY"],modelsProviderId:"anthropic",defaults:{baseUrl:"https://api.anthropic.com/v1"},metadata:Ae},{id:"claude-code",name:"Claude Code",description:"Use Claude Code SDK with Claude Pro/Max subscription",family:"claude-code",capabilities:["reasoning"],defaultModelId:"sonnet",modelsFactory:$x,defaults:{baseUrl:""}},{id:"gemini",name:"Google Gemini",description:"Google Gemini API",family:"google",popular:9,capabilities:["reasoning","prompt-cache"],defaultModelId:"gemma-4-26b",apiKeyEnv:["GOOGLE_GENERATIVE_AI_API_KEY","GEMINI_API_KEY"],modelsProviderId:"gemini",defaults:{baseUrl:"https://generativelanguage.googleapis.com/v1beta"}},{id:"vertex",name:"Google Vertex AI",description:"Google Cloud Vertex AI",family:"vertex",capabilities:["reasoning","prompt-cache"],defaultModelId:"claude-sonnet-4-6@default",apiKeyEnv:["GCP_PROJECT_ID","GOOGLE_CLOUD_PROJECT","GOOGLE_APPLICATION_CREDENTIALS","GEMINI_API_KEY","GOOGLE_API_KEY"],modelsProviderId:"vertex",metadata:Ae},{id:"bedrock",name:"AWS Bedrock",description:"Amazon Bedrock managed foundation models",family:"bedrock",popular:7,capabilities:["reasoning","prompt-cache"],defaultModelId:"minimax.minimax-m2.5",apiKeyEnv:["AWS_REGION","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN"],modelsProviderId:"bedrock",metadata:Ae},{id:"mistral",name:"Mistral",description:"Mistral AI models via AI SDK provider",family:"mistral",capabilities:["reasoning"],defaultModelId:"mistral-medium-latest",apiKeyEnv:["MISTRAL_API_KEY"],modelsFactory:()=>({}),defaults:{baseUrl:"https://api.mistral.ai/v1"}},{id:"minimax",name:"MiniMax",description:"MiniMax models via Anthropic-compatible API",family:"anthropic",capabilities:["tools","reasoning","prompt-cache"],defaultModelId:"MiniMax-M2.5",apiKeyEnv:["MINIMAX_API_KEY"],modelsProviderId:"minimax",defaults:{baseUrl:"https://api.minimax.io/anthropic"},metadata:Ae},{id:"opencode",name:"OpenCode",description:"OpenCode SDK multi-provider runtime",family:"opencode",capabilities:["reasoning","oauth"],defaultModelId:"openai/gpt-5.4",modelsProviderId:"opencode",defaults:{baseUrl:""}},{id:"dify",name:"Dify",description:"Dify workflow/application provider via AI SDK",family:"dify",defaultModelId:"default",apiKeyEnv:["DIFY_API_KEY"],modelsFactory:()=>({})},...xx];function zx(e){if(e.modelsFactory)return e.modelsFactory();if(e.modelsProviderId)return Do(e.modelsProviderId);return{}}function hg(e){let t=zx(e),n=vg(e),a=gg(e),i=Object.keys(t).length>0?t:e.defaultModelId?{[e.defaultModelId]:kx(e.defaultModelId,e)}:{},r=Object.keys(i),o=e.defaultModelId||r[0]||"default";return{provider:{id:e.id,name:e.name,description:e.description,protocol:e.protocol??Sx(e),baseUrl:e.defaults?.baseUrl,modelsSourceUrl:e.modelsSourceUrl,defaultModelId:o,capabilities:n,env:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,client:e.client??Ix(e),source:"system",metadata:a},models:i}}function yg(e){let t=hg(e),n=vg(e),a=gg(e),i=Object.values(t.models).map((o)=>wx(e.id,o)),r=i.length>0?i:[{id:t.provider.defaultModelId||"default",name:t.provider.defaultModelId||"Default",providerId:e.id,capabilities:["text"]}];return{id:e.id,name:e.name,description:e.description,defaultModelId:t.provider.defaultModelId||r[0]?.id||"default",models:r,capabilities:n,env:e.env??["browser","node"],api:e.defaults?.baseUrl,apiKeyEnv:e.apiKeyEnv,docsUrl:e.docsUrl,metadata:a}}var Co=Zo.map(hg),_6=Object.fromEntries(Co.map((e)=>[e.provider.id,e]));var bg=new Map;async function Ux(e){let t=bg.get(e);if(t)return t;let n=(async()=>{switch(e){case"openai":return(await Promise.resolve().then(() => (ne(),le))).createOpenAIProvider;case"openai-compatible":return(await Promise.resolve().then(() => (ne(),le))).createOpenAICompatibleProvider;case"anthropic":return(await Promise.resolve().then(() => (ne(),le))).createAnthropicProvider;case"google":return(await Promise.resolve().then(() => (ne(),le))).createGoogleProvider;case"vertex":return(await Promise.resolve().then(() => (ne(),le))).createVertexProvider;case"bedrock":return(await Promise.resolve().then(() => (ne(),le))).createBedrockProvider;case"mistral":return(await Promise.resolve().then(() => (ne(),le))).createMistralProvider;case"claude-code":return(await Promise.resolve().then(() => (ne(),le))).createClaudeCodeProvider;case"openai-codex":return(await Promise.resolve().then(() => (ne(),le))).createOpenAICodexProvider;case"opencode":return(await Promise.resolve().then(() => (ne(),le))).createOpenCodeProvider;case"dify":return(await Promise.resolve().then(() => (ne(),le))).createDifyProvider}})();return bg.set(e,n),n}function Ex(e){if(e.family==="openai"||e.protocol==="openai-responses"||e.client==="openai")return"openai";return e.family}var di=Zo.map((e)=>({manifest:yg(e),defaults:{...e.defaults,apiKeyEnv:e.apiKeyEnv,baseUrl:e.defaults?.baseUrl},loadProvider:async()=>({createProvider:await Ux(Ex(e))})}));async function*$g(e){for await(let t of e)yield t}function _g(e){return{...e,models:e.models.map((t)=>({...t})),capabilities:e.capabilities?[...e.capabilities]:void 0,env:e.env?[...e.env]:void 0,api:e.api,apiKeyEnv:e.apiKeyEnv?[...e.apiKeyEnv]:void 0,docsUrl:e.docsUrl,metadata:e.metadata?{...e.metadata}:void 0}}function Tx(e,t){let n=new Map;for(let a of e.models)n.set(a.id,{...a});for(let a of t?.models??[])n.set(a.id,{...a,providerId:e.id});return Array.from(n.values())}function kg(e,t){let n=e?.routing||t?.routing?{...e?.routing??{},...t?.routing??{}}:void 0,a={...e??{},...t??{},...n?{routing:n}:{}};return Object.keys(a).length>0?a:void 0}function Ox(e,t){return{id:t,name:t,providerId:e.id}}class Ro{providers=new Map;providerConfigs=new Map;fallbackFetch;constructor(e){this.fallbackFetch=e}registerProvider(e){if(!e.createProvider&&!e.loadProvider)throw Error(`Provider "${e.manifest.id}" must include createProvider or loadProvider.`);this.providers.set(e.manifest.id,{manifest:_g(e.manifest),defaults:e.defaults?{providerId:e.manifest.id,apiKey:e.defaults.apiKey,apiKeyResolver:e.defaults.apiKeyResolver,apiKeyEnv:e.defaults.apiKeyEnv,baseUrl:e.defaults.baseUrl,headers:e.defaults.headers?{...e.defaults.headers}:void 0,timeoutMs:e.defaults.timeoutMs,fetch:e.defaults.fetch,options:e.defaults.options?{...e.defaults.options}:void 0,metadata:e.defaults.metadata?{...e.defaults.metadata}:void 0}:void 0,createProvider:e.createProvider,loadProvider:e.loadProvider})}configureProvider(e){this.providerConfigs.set(e.providerId,{providerId:e.providerId,apiKey:e.apiKey,apiKeyResolver:e.apiKeyResolver,apiKeyEnv:e.apiKeyEnv,baseUrl:e.baseUrl,headers:e.headers?{...e.headers}:void 0,timeoutMs:e.timeoutMs,fetch:e.fetch,options:e.options?{...e.options}:void 0,metadata:e.metadata?{...e.metadata}:void 0,enabled:e.enabled??!0,defaultModelId:e.defaultModelId,models:e.models?.map((t)=>({...t}))})}listProviders(){return Array.from(this.providers.values()).map((e)=>this.getManifest(e.manifest.id)).filter((e)=>e!==void 0)}listModels(e){if(e)return[...this.getManifest(e)?.models??[]];return this.listProviders().flatMap((t)=>t.models.map((n)=>({...n})))}getManifest(e){let t=this.providers.get(e);if(!t)return;let n=this.providerConfigs.get(e);if(n&&!n.enabled)return;let a=Tx(t.manifest,n),i=n?.defaultModelId??t.manifest.defaultModelId??a[0]?.id;if(!i)return;return{..._g(t.manifest),defaultModelId:i,models:a,metadata:kg(t.manifest.metadata,n?.metadata)}}resolveModel(e){let t=this.getManifest(e.providerId);if(!t)throw Error(`Unknown or disabled provider "${e.providerId}".`);let n=e.modelId??t.defaultModelId,a=t.models.find((i)=>i.id===n)??Ox(t,n);return{provider:t,model:a}}async createProvider(e){let t=this.providers.get(e);if(!t)throw Error(`Unknown provider "${e}".`);if(!t.createProvider){let r=await t.loadProvider?.();if(!r?.createProvider)throw Error(`Provider "${e}" could not be loaded.`);t.createProvider=r.createProvider}let n=this.getManifest(e);if(!n)throw Error(`Provider "${e}" is disabled.`);let a=this.providerConfigs.get(e),i=kg(t.defaults?.metadata,a?.metadata);return{manifest:n,config:{providerId:e,apiKey:a?.apiKey??t.defaults?.apiKey,apiKeyResolver:a?.apiKeyResolver??t.defaults?.apiKeyResolver,apiKeyEnv:a?.apiKeyEnv??t.defaults?.apiKeyEnv,baseUrl:a?.baseUrl??t.defaults?.baseUrl,headers:{...t.defaults?.headers??{},...a?.headers??{}},timeoutMs:a?.timeoutMs??t.defaults?.timeoutMs,fetch:a?.fetch??t.defaults?.fetch??this.fallbackFetch,options:{...t.defaults?.options??{},...a?.options??{}},metadata:i},createProvider:t.createProvider}}}class wg{gateway;selection;defaults;constructor(e,t,n){this.gateway=e;this.selection=t;this.defaults=n}stream(e){let t=e.options?.reasoning,n=e.options?.thinking,a=e.options?.reasoningEffort,i=e.options?.thinkingBudgetTokens,r=a==="low"||a==="medium"||a==="high"?a:void 0,o=typeof n==="boolean"||r!==void 0||typeof i==="number"?{enabled:typeof n==="boolean"?n:void 0,effort:r,budgetTokens:typeof i==="number"?i:void 0}:void 0;return this.gateway.stream({providerId:this.selection.providerId,modelId:this.selection.modelId??"",systemPrompt:e.systemPrompt,messages:e.messages,tools:this.defaults?.tools??e.tools,temperature:e.options?.temperature??this.defaults?.temperature,maxTokens:e.options?.maxTokens??this.defaults?.maxTokens,metadata:e.options?.metadata??this.defaults?.metadata,reasoning:t??o??this.defaults?.reasoning,signal:e.signal??this.defaults?.signal})}}class Sg{registry;logger;telemetry;constructor(e={}){if(this.registry=new Ro(e.fetch),this.logger=e.logger,this.telemetry=e.telemetry,e.builtins!==!1){let t=new Set(e.builtins??di.map((n)=>n.manifest.id));for(let n of di)if(t.has(n.manifest.id))this.registry.registerProvider(n)}for(let t of e.providers??[])this.registry.registerProvider(t);for(let t of e.providerConfigs??[])this.registry.configureProvider(t)}registerProvider(e){return this.registry.registerProvider(e),this}configureProvider(e){return this.registry.configureProvider(e),this}listProviders(){return this.registry.listProviders()}listModels(e){return this.registry.listModels(e)}createAgentModel(e,t){return new wg(this,e,t)}async stream(e){let t=this.registry.resolveModel({providerId:e.providerId,modelId:e.modelId||void 0}),n=await this.registry.createProvider(e.providerId),i=await(await n.createProvider(n.config)).stream({...e,modelId:t.model.id,providerId:t.provider.id},{provider:t.provider,model:t.model,config:n.config,signal:e.signal,logger:this.logger,telemetry:this.telemetry});return $g(i)}}function Lo(e){return new Sg(e)}function Px(){let e=new Map;for(let t of Co)e.set(t.provider.id,{provider:{...t.provider},models:Object.fromEntries(Object.entries(t.models).map(([n,a])=>[n,{...a}]))});return e}var ci=Px(),ht=new Map,qe=new Map;function Ye(e){return qe.get(e)??ci.get(e)}function Ig(){let e=Array.from(ci.keys()),t=Array.from(qe.keys()).filter((n)=>!ci.has(n));return[...e,...t]}function P6(e){return ci.has(e)||qe.has(e)}async function j6(e){return Ye(e)?.provider}function Mo(e){return Ye(e)}async function Fo(e){return Ye(e)}async function N6(e){let n=Ye(e)?.models??{},a=ht.get(e);if(a)return{...n,...Object.fromEntries(a)};return n}async function A6(){return Ig().map((e)=>Ye(e)?.provider).filter((e)=>e!==void 0)}function D6(e){qe.set(e.provider.id,e)}function Z6(e,t,n){if(!ht.has(e))ht.set(e,new Map);ht.get(e)?.set(t,{...n,id:t})}function C6(e){return ht.delete(e),qe.delete(e)}function R6(){ht.clear(),qe.clear()}var L6=new Proxy({},{get(e,t){return Ye(t)},has(e,t){return ci.has(t)||qe.has(t)},ownKeys(){return Ig()},getOwnPropertyDescriptor(e,t){let n=Ye(t);if(n===void 0)return;return{configurable:!0,enumerable:!0,value:n}}});var yt=new Map(di.map((e)=>[e.manifest.id,e]));function jx(e){if(!e?.length)return;let t=new Set;for(let n of e)switch(n){case"tools":case"reasoning":case"prompt-cache":case"images":case"audio":t.add(n);break;case"files":case"streaming":case"temperature":case"reasoning-effort":case"computer-use":case"global-endpoint":t.add("text");break;case"structured_output":t.add("structured-output");break;default:t.add("text")}return t.add("text"),[...t]}function Go(e,t){return{id:t.id,name:t.name??t.id,description:t.description,providerId:e,contextWindow:t.contextWindow,maxInputTokens:t.maxInputTokens,maxOutputTokens:t.maxTokens,capabilities:jx(t.capabilities),metadata:{family:t.family,pricing:t.pricing,status:t.status,releaseDate:t.releaseDate}}}function xg(e,t){if(t?.client==="openai"||t?.protocol==="openai-responses")return Dn;switch(t?.client){case"anthropic":return Cn;case"gemini":return Rn;case"vertex":return Ln;case"bedrock":return Mn;case"openai-compatible":return Zn}switch(X(e)){case"openai-codex":case"openai-native":return Dn;case"anthropic":case"minimax":return Cn;case"gemini":return Rn;case"vertex":return Ln;case"bedrock":return Mn;case"mistral":return Eo;case"claude-code":return To;case"openai-codex-cli":return Oo;case"opencode":return Po;case"dify":return jo;default:return Zn}}async function Nx(e){let t=X(e.providerId),n=X(hi(e));if(yt.get(t)&&t===n)return;let i=await Fo(t)??(t!==n?await Fo(n):void 0);if(!i){let o=yt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,name:o.manifest.name,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let r=yt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Go(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...r?.defaults??{},baseUrl:i.provider.baseUrl??r?.defaults?.baseUrl,apiKeyEnv:i.provider.env??r?.defaults?.apiKeyEnv},createProvider:r?.createProvider??xg(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:r?.loadProvider}}function Ax(e){let t=X(e.providerId),n=X(hi(e));if(yt.get(t)&&t===n)return;let i=Mo(t)??(t!==n?Mo(n):void 0);if(!i){let o=yt.get(n);if(!o||t===n)return;return{manifest:{...o.manifest,id:t,models:o.manifest.models.map((s)=>({...s,providerId:t}))},defaults:o.defaults,createProvider:o.createProvider,loadProvider:o.loadProvider}}let r=yt.get(n);return{manifest:{id:t,name:i.provider.name,description:i.provider.description,defaultModelId:i.provider.defaultModelId,models:Object.values(i.models).map((o)=>Go(t,o)),api:i.provider.baseUrl,apiKeyEnv:i.provider.env},defaults:{...r?.defaults??{},baseUrl:i.provider.baseUrl??r?.defaults?.baseUrl,apiKeyEnv:i.provider.env??r?.defaults?.apiKeyEnv},createProvider:r?.createProvider??xg(n,{client:e.clientType??i.provider.client,protocol:i.provider.protocol}),loadProvider:r?.loadProvider}}function Dx(e){let t=new Map;for(let n of e){if(!Array.isArray(n.content))continue;for(let a of n.content)if(a.type==="tool_use"){if(t.set(a.id,a.name),a.call_id)t.set(a.call_id,a.name)}}return e.map((n)=>{let a=typeof n.content==="string"?[{type:"text",text:n.content}]:n.content.flatMap((i)=>{switch(i.type){case"text":return[{type:"text",text:i.text}];case"thinking":return[{type:"reasoning",text:i.thinking,metadata:i.signature||i.call_id?{signature:i.signature,callId:i.call_id,details:i.details}:void 0}];case"tool_use":return[{type:"tool-call",toolCallId:i.call_id??i.id,toolName:i.name,input:i.input,metadata:i.signature?{thoughtSignature:i.signature}:void 0}];case"tool_result":return[{type:"tool-result",toolCallId:i.tool_use_id,toolName:t.get(i.tool_use_id)??"tool",output:i.content,isError:i.is_error??!1}];case"image":return[{type:"image",image:`data:${i.mediaType};base64,${i.data}`,mediaType:i.mediaType}];case"file":return[{type:"text",text:i.content}];case"redacted_thinking":return[];default:return[]}});return{id:Ko(),role:n.role,content:a,createdAt:Date.now()}})}function Zx(e){return e?.map((t)=>({name:t.name,description:t.description,inputSchema:t.inputSchema}))}function Jo(e,t,n,a,i){return{providerId:X(e.providerId),modelId:e.modelId,systemPrompt:t,messages:Dx(n),tools:Zx(a),maxTokens:e.maxOutputTokens,reasoning:e.thinking!==void 0||e.reasoningEffort||e.thinkingBudgetTokens!==void 0?{enabled:e.thinking,effort:e.reasoningEffort==="xhigh"?"high":e.reasoningEffort==="low"||e.reasoningEffort==="medium"||e.reasoningEffort==="high"?e.reasoningEffort:void 0,budgetTokens:e.thinkingBudgetTokens}:void 0,signal:i}}function zg(e){let t=X(e.providerId);return{providerId:t,apiKey:e.apiKey??e.accessToken,baseUrl:e.baseUrl,headers:e.headers,timeoutMs:e.timeoutMs,fetch:e.fetch,defaultModelId:e.modelId,models:e.knownModels?Object.values(e.knownModels).map((n)=>{let a=Go(t,n),{providerId:i,...r}=a;return r}):void 0,options:{region:e.region??e.gcp?.region,project:e.gcp?.projectId,projectId:e.gcp?.projectId,location:e.region??e.gcp?.region,accessKeyId:e.aws?.accessKey,secretAccessKey:e.aws?.secretKey,sessionToken:e.aws?.sessionToken,credentialProvider:e.aws?.profile,authentication:e.aws?.authentication,endpoint:e.aws?.endpoint,customModelBaseId:e.aws?.customModelBaseId,apiVersion:e.azure?.apiVersion,useIdentity:e.azure?.useIdentity,mode:e.oca?.mode,usePromptCache:e.aws?.usePromptCache??e.oca?.usePromptCache,...e.codex,...e.claudeCode,...e.opencode,...e.sap}}}function Ug(e,t){switch(t.type){case"text-delta":return{type:"text",id:e,text:t.text};case"reasoning-delta":{let n=t.metadata;return{type:"reasoning",id:e,reasoning:t.text,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:typeof n?.signature==="string"?n.signature:void 0,details:n?.details}}case"tool-call-delta":{let n=t.metadata,a=typeof t.inputText==="string"||t.input===void 0?t.inputText:t.input;return{type:"tool_calls",id:e,signature:typeof n?.thoughtSignature==="string"?n.thoughtSignature:void 0,tool_call:{call_id:t.toolCallId,function:{id:t.toolCallId,name:t.toolName,arguments:a}}}}case"usage":return{type:"usage",id:e,inputTokens:t.usage.inputTokens??0,outputTokens:t.usage.outputTokens??0,cacheReadTokens:t.usage.cacheReadTokens,cacheWriteTokens:t.usage.cacheWriteTokens,totalCost:t.usage.totalCost};case"finish":return{type:"done",id:e,success:t.reason!=="error",error:t.error,incompleteReason:t.reason==="max-tokens"?"max_tokens":void 0}}}function Cx(e){return e.modelInfo??(e.modelId?e.knownModels?.[e.modelId]:void 0)??{id:e.modelId,name:e.modelId,capabilities:["streaming"]}}class Wo{config;abortSignal;constructor(e){this.config=e;this.abortSignal=e.abortSignal}getMessages(e,t){return Jo(this.config,e,t,void 0,this.abortSignal)}createMessage(e,t,n){let a=Lo({providerConfigs:[zg(this.config)],fetch:this.config.fetch,logger:this.config.logger??this.config.extensionContext?.logger,telemetry:this.config.extensionContext?.telemetry}),i=Ax(this.config);if(i)a.registerProvider(i);let r=Jo(this.config,e,t,n,this.abortSignal),o=`gw_${Ko(10)}`,s=async function*(){for await(let l of await a.stream(r))yield Ug(o,l)}();return s.id=o,s}getModel(){return{id:this.config.modelId,info:Cx(this.config)}}abort(){}setAbortSignal(e){this.abortSignal=e}}function Eg(e){return new Wo(e)}async function Tg(e){let t=Lo({providerConfigs:[zg(e)],fetch:e.fetch,logger:e.logger??e.extensionContext?.logger,telemetry:e.extensionContext?.telemetry}),n=await Nx(e);if(n)t.registerProvider(n);return new class extends Wo{createMessage(a,i,r){let o=Jo(e,a,i,r,e.abortSignal),s=`gw_${Ko(10)}`,l=async function*(){for await(let d of await t.stream(o))yield Ug(s,d)}();return l.id=s,l}}(e)}var bt=new Map;function Rx(e,t){bt.set(e,{factory:t,isAsync:!1})}function Lx(e,t){bt.set(e,{factory:t,isAsync:!0})}function Bo(e){return bt.has(e)}function Og(e,t){let n=bt.get(e);if(!n)return;if(n.isAsync)throw Error(`Handler for "${e}" is registered as async. Use getRegisteredHandlerAsync() or createHandlerAsync() instead.`);return n.factory(t)}async function Pg(e,t){let n=bt.get(e);if(!n)return;if(n.isAsync)return n.factory(t);return n.factory(t)}function jg(e){return bt.get(e)?.isAsync??!1}function Ng(e){let t=X(e.providerId),n=e.routingProviderId?X(e.routingProviderId):void 0;if(t===e.providerId&&n===e.routingProviderId)return e;return{...e,providerId:t,routingProviderId:n}}function e4(e){let t=Ng(e),{providerId:n}=t;if(Bo(n)){if(jg(n))throw Error(`Handler for "${n}" is registered as async. Use createHandlerAsync() instead.`);let a=Og(n,t);if(a)return a}return Eg(t)}async function t4(e){let t=Ng(e),{providerId:n}=t;if(Bo(n)){let a=await Pg(n,t);if(a)return a}return Tg(t)}export{Rx as registerHandler,Lx as registerAsyncHandler,X as normalizeProviderId,Gn as isBuiltInProviderId,t4 as createHandlerAsync,e4 as createHandler,gi as BUILT_IN_PROVIDER_IDS,$t as BUILT_IN_PROVIDER};