switchboard-router 0.9.61 → 0.9.63
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.next/static/chunks/1321-e00fa4ad9a905a7b.js +1 -0
- package/app/.next/static/chunks/4601-44deee06e6597c34.js +1 -0
- package/app/.next/static/chunks/app/(dashboard)/dashboard/agent-library/{page-fa24110e606e19b6.js → page-5099a8abbc816db2.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-7b00fb83303d1d11.js → .next/static/chunks/app/(dashboard)/dashboard/basic-chat/page-f19524e912fe1985.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-e59f3822e2167ab7.js → page-5ffac5b1a7f569eb.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-d994adf3e0ce78c1.js → page-e88926cdf34f51b4.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-99d3be5c7da63d57.js → .next/static/chunks/app/(dashboard)/dashboard/combos/page-f18e04dca95f62e1.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/routing/{page-650dc0927f999aaf.js → page-0fbb282f4f13b383.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/console-log/{page-eefda4a8f32e649e.js → page-a6d96961aa96c6f6.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/{page-adba2750c4fbf61e.js → page-57222cb64d90dbc5.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-e6fc3a5c25ce1247.js → .next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-b538f94596e78384.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-078eb5d8bfc3f4d1.js → .next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-e5f3c1f8be627058.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-7dfde081613f35f3.js → page-3b278b46c2e9b047.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/{page-1d63cfd88010b65f.js → page-768e0fe3ec5c50cb.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-281c93713fd1e960.js → page-932db86bb9b65c82.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/mitm/{page-f44e14a7efc8f81a.js → page-77d678509c4b9807.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/profile/{page-0e0047609d5634c9.js → page-be26ebe2eb5fe86f.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-7650a3a5ee2467f7.js +10 -0
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-604dae851964c441.js → .next/static/chunks/app/(dashboard)/dashboard/providers/new/page-40b58bbd9ed53384.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-e1c9f4ce8466e3ad.js → .next/static/chunks/app/(dashboard)/dashboard/providers/page-62fb355a1fda21fb.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-6ca234b58c5e9feb.js → page-da3416bfce941d67.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/quota/{page-cf70f587dc7ab205.js → page-c9a257b85e05472a.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/skills/[id]/{page-ea262b6192d5a92c.js → page-2141fe25b428c1a8.js} +1 -1
- package/app/{.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/page-36d107b083ad3a43.js → .next/static/chunks/app/(dashboard)/dashboard/skills/page-459447066f6cd1d5.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/token-saver/{page-14e5599c720c645b.js → page-93ce8e180c126dcc.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/{page-687e09f904b04cea.js → page-b6c5cc339e7a5ef3.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/{page-195bdcbea10136e1.js → page-492962969724f559.js} +1 -1
- package/app/.next/static/chunks/app/(dashboard)/{layout-6dfa9d7deb27d461.js → layout-c0725f0b6b7f0bea.js} +1 -1
- package/app/.next/static/chunks/app/dashboard/settings/pricing/page-e08a7bfc3255b9c7.js +1 -0
- package/app/.next/static/chunks/app/layout-5fa07c6e20da16ba.js +1 -0
- package/app/.next/static/chunks/app/login/{page-f326e6c17a8b0e04.js → page-df9fdce0e38e5f58.js} +1 -1
- package/app/.next/static/media/catalog.b2c6512a.json +38874 -0
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +12 -12
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/routing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/doctor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/export/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/mcp/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/skills/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/sync/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/agent-library/updates/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/aider-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/aider-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +6 -6
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-full-catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-picker-labels/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/fx-settings/manual-configs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/fx-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/fx-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/gemini-cli-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/gemini-cli-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/grok-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/manual-configs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/picker-labels/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/live/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/metrics/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mgmt/v1/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/routable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/defaults/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/cache/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/prepare/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/remove-unavailable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/verify/cancel/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/verify/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/model-probes/verify/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/feedback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/insights/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/learn/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/versions/promote/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing/versions/rollback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/skills/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +12 -12
- package/app/.next-cli-build/server/chunks/1350.js +1 -1
- package/app/.next-cli-build/server/chunks/2847.js +1 -1
- package/app/.next-cli-build/server/chunks/3464.js +1 -1
- package/app/.next-cli-build/server/chunks/3904.js +1 -1
- package/app/.next-cli-build/server/chunks/4454.js +1 -1
- package/app/.next-cli-build/server/chunks/4646.js +1 -1
- package/app/.next-cli-build/server/chunks/5139.js +1 -1
- package/app/.next-cli-build/server/chunks/7662.js +1 -1
- package/app/.next-cli-build/server/chunks/7757.js +1 -1
- package/app/.next-cli-build/server/chunks/869.js +1 -1
- package/app/.next-cli-build/server/chunks/8998.js +7 -7
- package/app/.next-cli-build/server/chunks/static/media/catalog.b2c6512a.json +38874 -0
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +4 -4
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/chunks/1321-e00fa4ad9a905a7b.js +1 -0
- package/app/.next-cli-build/static/chunks/4601-44deee06e6597c34.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/agent-library/{page-fa24110e606e19b6.js → page-5099a8abbc816db2.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/basic-chat/page-7b00fb83303d1d11.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-f19524e912fe1985.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-e59f3822e2167ab7.js → page-5ffac5b1a7f569eb.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-d994adf3e0ce78c1.js → page-e88926cdf34f51b4.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/combos/page-99d3be5c7da63d57.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-f18e04dca95f62e1.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/routing/{page-650dc0927f999aaf.js → page-0fbb282f4f13b383.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-eefda4a8f32e649e.js → page-a6d96961aa96c6f6.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/{page-adba2750c4fbf61e.js → page-57222cb64d90dbc5.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-e6fc3a5c25ce1247.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-b538f94596e78384.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-078eb5d8bfc3f4d1.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-e5f3c1f8be627058.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-7dfde081613f35f3.js → page-3b278b46c2e9b047.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/{page-1d63cfd88010b65f.js → page-768e0fe3ec5c50cb.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-281c93713fd1e960.js → page-932db86bb9b65c82.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-f44e14a7efc8f81a.js → page-77d678509c4b9807.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-0e0047609d5634c9.js → page-be26ebe2eb5fe86f.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-7650a3a5ee2467f7.js +10 -0
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-604dae851964c441.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-40b58bbd9ed53384.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/providers/page-e1c9f4ce8466e3ad.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-62fb355a1fda21fb.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-6ca234b58c5e9feb.js → page-da3416bfce941d67.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-cf70f587dc7ab205.js → page-c9a257b85e05472a.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/[id]/{page-ea262b6192d5a92c.js → page-2141fe25b428c1a8.js} +1 -1
- package/app/{.next/static/chunks/app/(dashboard)/dashboard/skills/page-36d107b083ad3a43.js → .next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/page-459447066f6cd1d5.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/{page-14e5599c720c645b.js → page-93ce8e180c126dcc.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-687e09f904b04cea.js → page-b6c5cc339e7a5ef3.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-195bdcbea10136e1.js → page-492962969724f559.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-6dfa9d7deb27d461.js → layout-c0725f0b6b7f0bea.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-e08a7bfc3255b9c7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/layout-5fa07c6e20da16ba.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/{page-f326e6c17a8b0e04.js → page-df9fdce0e38e5f58.js} +1 -1
- package/app/.next-cli-build/static/media/catalog.b2c6512a.json +38874 -0
- package/app/open-sse/identity/tls/bin/darwin/arm64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/darwin/x64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/linux/arm64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/linux/x64/switchboard-claude-tls +0 -0
- package/app/open-sse/identity/tls/bin/win32/arm64/switchboard-claude-tls.exe +0 -0
- package/app/open-sse/identity/tls/bin/win32/x64/switchboard-claude-tls.exe +0 -0
- package/app/open-sse/providers/generated/catalog.json +37152 -0
- package/app/package.json +3 -2
- package/package.json +1 -1
- package/app/.next/static/chunks/1321-8f2bc21e3e1510f8.js +0 -1
- package/app/.next/static/chunks/4707-8ea6ba647d0a40c9.js +0 -1
- package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9bc17a08bc8f466c.js +0 -10
- package/app/.next/static/chunks/app/dashboard/settings/pricing/page-423a4c1e078872dd.js +0 -1
- package/app/.next/static/chunks/app/layout-26e1615874db4cd7.js +0 -1
- package/app/.next/static/media/catalog.fb7b1b70.json +0 -1722
- package/app/.next-cli-build/server/chunks/static/media/catalog.fb7b1b70.json +0 -1722
- package/app/.next-cli-build/static/chunks/1321-8f2bc21e3e1510f8.js +0 -1
- package/app/.next-cli-build/static/chunks/4707-8ea6ba647d0a40c9.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-9bc17a08bc8f466c.js +0 -10
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-423a4c1e078872dd.js +0 -1
- package/app/.next-cli-build/static/chunks/app/layout-26e1615874db4cd7.js +0 -1
- package/app/.next-cli-build/static/media/catalog.fb7b1b70.json +0 -1722
- /package/app/.next/static/{buFm6Q9XY8OxLsQzoorjq → 5c3eUqHnZ4XIBUMPRDLdh}/_buildManifest.js +0 -0
- /package/app/.next/static/{buFm6Q9XY8OxLsQzoorjq → 5c3eUqHnZ4XIBUMPRDLdh}/_ssgManifest.js +0 -0
- /package/app/.next-cli-build/static/{buFm6Q9XY8OxLsQzoorjq → 5c3eUqHnZ4XIBUMPRDLdh}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{buFm6Q9XY8OxLsQzoorjq → 5c3eUqHnZ4XIBUMPRDLdh}/_ssgManifest.js +0 -0
|
@@ -26,7 +26,7 @@ exports.id=8998,exports.ids=[8998],exports.modules={794:(a,b,c)=>{"use strict";l
|
|
|
26
26
|
promptTokens = promptTokens + excluded.promptTokens,
|
|
27
27
|
completionTokens = completionTokens + excluded.completionTokens,
|
|
28
28
|
cachedTokens = cachedTokens + excluded.cachedTokens,
|
|
29
|
-
cost = cost + excluded.cost`,[c.requests,c.promptTokens,c.completionTokens,c.cachedTokens,c.cost]),a.run("DELETE FROM prometheusUsageTotals WHERE provider = ?",[b])})}},15873:(a,b,c)=>{var d=c(45654);c(63070),c(76632),c(36105),c(56416),c(20308),c(29984),c(10401),c(4554),c(33889),c(65737);var e=d.asn1,f=d.pki,g=a.exports=d.pkcs12=d.pkcs12||{},h={name:"ContentInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},i={name:"PFX",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"},h,{name:"PFX.macData",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",optional:!0,tagClass:e.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},j={name:"SafeBag",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SafeBag.bagId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},k={name:"Attribute",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"oid"},{name:"Attribute.attrValues",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,capture:"values"}]},l={name:"CertBag",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:e.Class.UNIVERSAL,type:e.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};function m(a,b,c,d){for(var e=[],f=0;f<a.length;f++)for(var g=0;g<a[f].safeBags.length;g++){var h=a[f].safeBags[g];if(void 0===d||h.type===d){if(null===b){e.push(h);continue}void 0!==h.attributes[b]&&h.attributes[b].indexOf(c)>=0&&e.push(h)}}return e}function n(a){if(a.composed||a.constructed){for(var b=d.util.createBuffer(),c=0;c<a.value.length;++c)b.putBytes(a.value[c].value);a.composed=a.constructed=!1,a.value=b.getBytes()}return a}g.pkcs12FromAsn1=function(a,b,c){"string"==typeof b?(c=b,b=!0):void 0===b&&(b=!0);var o={};if(!e.validate(a,i,o,[])){var p=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX.");throw p.errors=p,p}var q={version:o.version.charCodeAt(0),safeContents:[],getBags:function(a){var b,c={};return"localKeyId"in a?b=a.localKeyId:"localKeyIdHex"in a&&(b=d.util.hexToBytes(a.localKeyIdHex)),void 0===b&&!("friendlyName"in a)&&"bagType"in a&&(c[a.bagType]=m(q.safeContents,null,null,a.bagType)),void 0!==b&&(c.localKeyId=m(q.safeContents,"localKeyId",b,a.bagType)),"friendlyName"in a&&(c.friendlyName=m(q.safeContents,"friendlyName",a.friendlyName,a.bagType)),c},getBagsByFriendlyName:function(a,b){return m(q.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return m(q.safeContents,"localKeyId",a,b)}};if(3!==o.version.charCodeAt(0)){var p=Error("PKCS#12 PFX of version other than 3 not supported.");throw p.version=o.version.charCodeAt(0),p}if(e.derToOid(o.contentType)!==f.oids.data){var p=Error("Only PKCS#12 PFX in password integrity mode supported.");throw p.oid=e.derToOid(o.contentType),p}var r=o.content.value[0];if(r.tagClass!==e.Class.UNIVERSAL||r.type!==e.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");if(r=n(r),o.mac){var s=null,t=0,u=e.derToOid(o.macAlgorithm);switch(u){case f.oids.sha1:s=d.md.sha1.create(),t=20;break;case f.oids.sha256:s=d.md.sha256.create(),t=32;break;case f.oids.sha384:s=d.md.sha384.create(),t=48;break;case f.oids.sha512:s=d.md.sha512.create(),t=64;break;case f.oids.md5:s=d.md.md5.create(),t=16}if(null===s)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var v=new d.util.ByteBuffer(o.macSalt),w="macIterations"in o?parseInt(d.util.bytesToHex(o.macIterations),16):1,x=g.generateKey(c,v,3,w,t,s),y=d.hmac.create();if(y.start(s,x),y.update(r.value),y.getMac().getBytes()!==o.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?")}else if(Array.isArray(a.value)&&a.value.length>2)throw Error("Invalid PKCS#12. macData field present but MAC was not validated.");return function(a,b,c,g){if((b=e.fromDer(b,c)).tagClass!==e.Class.UNIVERSAL||b.type!==e.Type.SEQUENCE||!0!==b.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");for(var i=0;i<b.value.length;i++){var m=b.value[i],o={},p=[];if(!e.validate(m,h,o,p)){var q=Error("Cannot read ContentInfo.");throw q.errors=p,q}var r={encrypted:!1},s=null,t=o.content.value[0];switch(e.derToOid(o.contentType)){case f.oids.data:if(t.tagClass!==e.Class.UNIVERSAL||t.type!==e.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");s=n(t).value;break;case f.oids.encryptedData:s=function(a,b){var c={},g=[];if(!e.validate(a,d.pkcs7.asn1.encryptedDataValidator,c,g)){var h=Error("Cannot read EncryptedContentInfo.");throw h.errors=g,h}var i=e.derToOid(c.contentType);if(i!==f.oids.data){var h=Error("PKCS#12 EncryptedContentInfo ContentType is not Data.");throw h.oid=i,h}i=e.derToOid(c.encAlgorithm);var j=f.pbe.getCipher(i,c.encParameter,b),k=n(c.encryptedContentAsn1),l=d.util.createBuffer(k.value);if(j.update(l),!j.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");return j.output.getBytes()}(t,g),r.encrypted=!0;break;default:var q=Error("Unsupported PKCS#12 contentType.");throw q.contentType=e.derToOid(o.contentType),q}r.safeBags=function(a,b,c){if(!b&&0===a.length)return[];if((a=e.fromDer(a,b)).tagClass!==e.Class.UNIVERSAL||a.type!==e.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],g=0;g<a.value.length;g++){var h,i,m=a.value[g],n={},o=[];if(!e.validate(m,j,n,o)){var p=Error("Cannot read SafeBag.");throw p.errors=o,p}var q={type:e.derToOid(n.bagId),attributes:function(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},g=[];if(!e.validate(a[c],k,d,g)){var h=Error("Cannot read PKCS#12 BagAttribute.");throw h.errors=g,h}var i=e.derToOid(d.oid);if(void 0!==f.oids[i]){b[f.oids[i]]=[];for(var j=0;j<d.values.length;++j)b[f.oids[i]].push(d.values[j].value)}}return b}(n.bagAttributes)};d.push(q);var r=n.bagValue.value[0];switch(q.type){case f.oids.pkcs8ShroudedKeyBag:if(null===(r=f.decryptPrivateKeyInfo(r,c)))throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case f.oids.keyBag:try{q.key=f.privateKeyFromAsn1(r)}catch(a){q.key=null,q.asn1=r}continue;case f.oids.certBag:h=l,i=function(){if(e.derToOid(n.certId)!==f.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");throw a.oid=e.derToOid(n.certId),a}var c=e.fromDer(n.cert,b);try{q.cert=f.certificateFromAsn1(c,!0)}catch(a){q.cert=null,q.asn1=c}};break;default:var p=Error("Unsupported PKCS#12 SafeBag type.");throw p.oid=q.type,p}if(void 0!==h&&!e.validate(r,h,n,o)){var p=Error("Cannot read PKCS#12 "+h.name);throw p.errors=o,p}i()}return d}(s,c,g),a.safeContents.push(r)}}(q,r.value,b,c),q},g.toPkcs12Asn1=function(a,b,c,h){(h=h||{}).saltSize=h.saltSize||8,h.count=h.count||2048,h.algorithm=h.algorithm||h.encAlgorithm||"aes128","useMac"in h||(h.useMac=!0),"localKeyId"in h||(h.localKeyId=null),"generateLocalKeyId"in h||(h.generateLocalKeyId=!0);var i,j,k=h.localKeyId;if(null!==k)k=d.util.hexToBytes(k);else if(h.generateLocalKeyId)if(b){var l=d.util.isArray(b)?b[0]:b;"string"==typeof l&&(l=f.certificateFromPem(l));var m=d.md.sha1.create();m.update(e.toDer(f.certificateToAsn1(l)).getBytes()),k=m.digest().getBytes()}else k=d.random.getBytes(20);var n=[];null!==k&&n.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.localKeyId).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,k)])])),"friendlyName"in h&&n.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.friendlyName).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.BMPSTRING,!1,h.friendlyName)])])),n.length>0&&(i=e.create(e.Class.UNIVERSAL,e.Type.SET,!0,n));var o=[],p=[];null!==b&&(p=d.util.isArray(b)?b:[b]);for(var q=[],r=0;r<p.length;++r){"string"==typeof(b=p[r])&&(b=f.certificateFromPem(b));var s=0===r?i:void 0,t=f.certificateToAsn1(b),u=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.certBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.x509Certificate).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(t).getBytes())])])]),s]);q.push(u)}if(q.length>0){var v=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,q),w=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(v).getBytes())])]);o.push(w)}var x=null;if(null!==a){var y=f.wrapRsaPrivateKey(f.privateKeyToAsn1(a));x=null===c?e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.keyBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[y]),i]):e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.pkcs8ShroudedKeyBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[f.encryptPrivateKeyInfo(y,c,h)]),i]);var z=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[x]),A=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(z).getBytes())])]);o.push(A)}var B=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,o);if(h.useMac){var m=d.md.sha1.create(),C=new d.util.ByteBuffer(d.random.getBytes(h.saltSize)),D=h.count,a=g.generateKey(c,C,3,D,20),E=d.hmac.create();E.start(m,a),E.update(e.toDer(B).getBytes());var F=E.getMac();j=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.sha1).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")]),e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,F.getBytes())]),e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,C.getBytes()),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(D).getBytes())])}return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(3).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(B).getBytes())])]),j])},g.generateKey=d.pbe.generatePkcs12Key},15904:(a,b,c)=>{"use strict";c.d(b,{BO:()=>m,Bq:()=>k,Kd:()=>l,SQ:()=>n});var d=c(77397);let e=["requests","promptTokens","completionTokens","cachedTokens"],f=["requests","errors","fallbacks"],g=new WeakMap;function h(a,b){let c=g.get(a);if(c||(c=new Map,g.set(a,c)),c.has(b))return c.get(b);let d=!!a.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?",[b]);return c.set(b,d),d}let i=new WeakMap;function j(a){i.delete(a),h(a,"prometheusMetricState")&&a.run("UPDATE prometheusMetricState SET available = 0 WHERE id = 1")}function k(a,b){if(!function(a){let b=Date.now(),c=i.get(a);if(c&&c.expiresAt>b)return c.value;let e=function(a){if(!h(a,"prometheusMetricState"))return!1;let b=a.get("SELECT available FROM prometheusMetricState WHERE id = 1");try{let a=(0,d.T)(b?.available,"metricState.available",{integer:!0});if(![0,1].includes(a))throw Error("invalid Prometheus metric state");return 1===a}catch{return j(a),!1}}(a);return i.set(a,{value:e,expiresAt:b+5e3}),e}(a))return!1;try{return a.transaction(b),!0}catch{return j(a),!1}}function l(a,b=a?.provider||"usage"){if(!a||"string"!=typeof a.provider||!a.provider)throw Error(`invalid Prometheus usage metric: ${b}.provider`);for(let c of e)(0,d.T)(a[c],`${b}.${c}`,{integer:!0});return(0,d.T)(a.cost,`${b}.cost`),a}function m(a,b=a?.source||"routing"){if(!a||"string"!=typeof a.source||!a.source)throw Error(`invalid Prometheus routing metric: ${b}.source`);for(let c of f)(0,d.T)(a[c],`${b}.${c}`,{integer:!0});return a}function n(a,b=a?.requestKey||"routingRequest"){if(!a||"string"!=typeof a.source||!a.source)throw Error(`invalid Prometheus routing request: ${b}.source`);(0,d.T)(a.terminalId,`${b}.terminalId`,{integer:!0});let c=(0,d.T)(a.isError,`${b}.isError`,{integer:!0}),e=(0,d.T)(a.fallbackUsed,`${b}.fallbackUsed`,{integer:!0});if(![0,1].includes(c)||![0,1].includes(e))throw Error(`invalid Prometheus routing request: ${b}`);return a}},16276:(a,b,c)=>{"use strict";c.d(b,{v:()=>e});var d=c(46248);class e extends d.L{constructor(){super("codebuddy-cn")}transformRequest(a,b,c,d){let e=super.transformRequest(a,b,c,d);e.stream=!0;let f=e.reasoning_effort;return"none"===f||"off"===f?delete e.reasoning_effort:f&&(e.reasoning_summary="auto"),e}}},16537:(a,b,c)=>{"use strict";let d=c(34589),{asciiLowercase:e,forgivingBase64:f,collectASequenceOfCodePoints:g,collectASequenceOfCodePointsFast:h,isomorphicDecode:i,removeASCIIWhitespace:j,removeChars:k}=c(70745),l=new TextEncoder,m=/^[-!#$%&'*+.^_`|~A-Za-z0-9]+$/u,n=/[\u000A\u000D\u0009\u0020]/u,o=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function p(a,b=!1){if(!b)return a.href;let c=a.href,d=a.hash.length,e=0===d?c:c.substring(0,c.length-d);return!d&&c.endsWith("#")?e.slice(0,-1):e}function q(a){return function(a){let b=a.length,c=new Uint8Array(b),d=0,e=0;for(;e<b;){let b=a[e];37!==b?c[d++]=b:37!==b||r(a[e+1])&&r(a[e+2])?(c[d++]=s(a[e+1])<<4|s(a[e+2]),e+=2):c[d++]=37,++e}return b===d?c:c.subarray(0,d)}(l.encode(a))}function r(a){return a>=48&&a<=57||a>=65&&a<=70||a>=97&&a<=102}function s(a){return a>=48&&a<=57?a-48:(223&a)-55}function t(a){a=w(a,!0,!0);let b={position:0},c=h("/",a,b);if(0===c.length||!m.test(c)||b.position>=a.length)return"failure";b.position++;let d=h(";",a,b);if(0===(d=w(d,!1,!0)).length||!m.test(d))return"failure";let f=e(c),i=e(d),j={type:f,subtype:i,parameters:new Map,essence:`${f}/${i}`};for(;b.position<a.length;){b.position++,g(a=>n.test(a),a,b);let c=g(a=>";"!==a&&"="!==a,a,b);if(c=e(c),b.position<a.length){if(";"===a[b.position])continue;b.position++}if(b.position>=a.length)break;let d=null;if('"'===a[b.position])d=u(a,b,!0),h(";",a,b);else if(0===(d=w(d=h(";",a,b),!1,!0)).length)continue;0!==c.length&&m.test(c)&&(0===d.length||o.test(d))&&!j.parameters.has(c)&&j.parameters.set(c,d)}return j}function u(a,b,c=!1){let e=b.position,f="";for(d('"'===a[b.position]),b.position++;f+=g(a=>'"'!==a&&"\\"!==a,a,b),!(b.position>=a.length);){let c=a[b.position];if(b.position++,"\\"===c){if(b.position>=a.length){f+="\\";break}f+=a[b.position],b.position++}else{d('"'===c);break}}return c?f:a.slice(e,b.position)}function v(a){return 13===a||10===a||9===a||32===a}function w(a,b=!0,c=!0){return k(a,b,c,v)}a.exports={dataURLProcessor:function(a){d("data:"===a.protocol);let b=p(a,!0);b=b.slice(5);let c={position:0},e=h(",",b,c),g=e.length;if(e=j(e,!0,!0),c.position>=b.length)return"failure";c.position++;let k=q(b.slice(g+1));if(/;\u0020*[Bb][Aa][Ss][Ee]64$/u.test(e)){if("failure"===(k=f(i(k))))return"failure";e=(e=(e=e.slice(0,-6)).replace(/(\u0020+)$/u,"")).slice(0,-1)}e.startsWith(";")&&(e="text/plain"+e);let l=t(e);return"failure"===l&&(l=t("text/plain;charset=US-ASCII")),{mimeType:l,body:k}},URLSerializer:p,stringPercentDecode:q,parseMIMEType:t,collectAnHTTPQuotedString:u,serializeAMimeType:function(a){d("failure"!==a);let{parameters:b,essence:c}=a,e=c;for(let[a,c]of b.entries())e+=";",e+=a,e+="=",m.test(c)||(c='"'+(c=c.replace(/[\\"]/ug,"\\$&"))+'"'),e+=c;return e},removeHTTPWhitespace:w,minimizeSupportedMimeType:function(a){switch(a.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return a.subtype.endsWith("+json")?"application/json":a.subtype.endsWith("+xml")?"application/xml":""},HTTP_TOKEN_CODEPOINTS:m}},16542:(a,b,c)=>{"use strict";c.d(b,{r:()=>h});var d=c(55511),e=c(22256),f=c(38421),g=c(96997);class h extends e.Hv{constructor(){super("iflow",f.xq.iflow)}async refreshCredentials(a,b){if(!a?.refreshToken)return null;let c=await (0,g.AH)(a.refreshToken,b);return c?.accessToken?{accessToken:c.accessToken,refreshToken:c.refreshToken||a.refreshToken,expiresAt:c.expiresAt,expiresIn:c.expiresIn}:null}generateUUID(){return d.randomUUID()}createIFlowSignature(a,b,c,e){if(!e)return"";let f=`${a}:${b}:${c}`,g=d.createHmac("sha256",e);return g.update(f),g.digest("hex")}buildHeaders(a,b=!0){let c=`session-${this.generateUUID()}`,d=Date.now(),e=this.config.headers["User-Agent"]||"iFlow-Cli",f=a.apiKey||a.accessToken||"",g=this.createIFlowSignature(e,c,d,f),h={"Content-Type":"application/json",...this.config.headers,"session-id":c,"x-iflow-timestamp":d.toString(),"x-iflow-signature":g},i=a.apiKey||a.accessToken;return i&&(h.Authorization=`Bearer ${i}`),b&&(h.Accept="text/event-stream"),h}buildUrl(a,b,c=0,d=null){return this.config.baseUrl}transformRequest(a,b,c,d){return c&&b.messages&&!b.stream_options&&(b.stream_options={include_usage:!0}),b}}},16712:(a,b,c)=>{"use strict";let d=c(34589),{AsyncResource:e}=c(16698),{Readable:f}=c(1712),{InvalidArgumentError:g,RequestAbortedError:h}=c(61448),i=c(84285);function j(){}class k extends e{constructor(a,b){if(!a||"object"!=typeof a)throw new g("invalid opts");const{signal:c,method:d,opaque:e,body:f,onInfo:k,responseHeaders:l,highWaterMark:m}=a;try{if("function"!=typeof b)throw new g("invalid callback");if(null!=m&&(!Number.isFinite(m)||m<0))throw new g("invalid highWaterMark");if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new g("signal must be an EventEmitter or EventTarget");if("CONNECT"===d)throw new g("invalid method");if(k&&"function"!=typeof k)throw new g("invalid onInfo callback");super("UNDICI_REQUEST")}catch(a){throw i.isStream(f)&&i.destroy(f.on("error",j),a),a}this.method=d,this.responseHeaders=l||null,this.opaque=e||null,this.callback=b,this.res=null,this.abort=null,this.body=f,this.trailers={},this.context=null,this.controller=null,this.onInfo=k||null,this.highWaterMark=m,this.reason=null,this.removeAbortListener=null,c?.aborted?this.reason=c.reason??new h:c&&(this.removeAbortListener=i.addAbortListener(c,()=>{if(this.reason=c.reason??new h,this.res){let a=this.res;this.res=null,i.destroy(a.on("error",j),this.reason)}else this.abort&&this.abort(this.reason)}))}onRequestStart(a,b){this.reason?a.abort(this.reason):(d(this.callback),this.controller=a,this.abort=b=>a.abort(b),this.context=b)}onResponseStart(a,b,c,d){let{callback:e,opaque:g,context:h,responseHeaders:k,highWaterMark:l}=this,m=a?.rawHeaders,n="raw"===k?i.parseRawHeaders(m):c;if(b<200){this.onInfo&&this.onInfo({statusCode:b,headers:n});return}let o=c?.["content-type"],p=c?.["content-length"],q=new f({resume:()=>a.resume(),abort:b=>a.abort(b),contentType:o,contentLength:"HEAD"!==this.method&&p?Number(p):null,highWaterMark:l});if(this.removeAbortListener&&(q.on("close",this.removeAbortListener),this.removeAbortListener=null),this.callback=null,this.res=q,null!==e)try{this.runInAsyncScope(e,null,null,{statusCode:b,statusText:d,headers:n,trailers:this.trailers,opaque:g,body:q,context:h})}catch(a){this.res=null,i.destroy(q.on("error",j),a),queueMicrotask(()=>{throw a})}}onResponseData(a,b){this.res&&!1===this.res.push(b)&&a.pause()}onResponseEnd(a,b){if(b&&"object"==typeof b)for(let a of Object.keys(b))"__proto__"===a?Object.defineProperty(this.trailers,a,{value:b[a],enumerable:!0,configurable:!0,writable:!0}):this.trailers[a]=b[a];this.res?.push(null)}onResponseError(a,b){let{res:c,callback:d,body:e,opaque:f}=this;d&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(d,null,b,{opaque:f})})),c&&(this.res=null,queueMicrotask(()=>{i.destroy(c.on("error",j),b)})),e&&(this.body=null,i.isStream(e)&&(e.on("error",j),i.destroy(e,b))),this.removeAbortListener&&(this.removeAbortListener(),this.removeAbortListener=null)}}a.exports=function a(b,c){if(void 0===c)return new Promise((c,d)=>{a.call(this,b,(a,b)=>a?d(a):c(b))});try{let a=new k(b,c);this.dispatch(b,a)}catch(d){if("function"!=typeof c)throw d;let a=b?.opaque;queueMicrotask(()=>c(d,{opaque:a}))}},a.exports.RequestHandler=k},17438:(a,b,c)=>{"use strict";c.d(b,{GU:()=>j,HP:()=>o,Hr:()=>l,Kx:()=>i,dC:()=>n,d_:()=>p,f8:()=>m,mt:()=>h,oC:()=>g,p3:()=>k,qd:()=>f});let d=async()=>{},e={getSettings:async()=>({}),loadProviderQuotaState:null,saveProviderQuotaState:null,trackPendingRequest:()=>{},appendRequestLog:d,saveRequestDetail:d,saveRequestUsage:d,getRoutingEvents:async()=>[],getClusterWorkerStats:async()=>({}),getPromotedLearningVersion:async()=>null,createLearningVersion:d,countRoutingEvents:async()=>0,listCombosWithRoutingEvents:async()=>[],getLastScheduledLearnAt:async()=>null,getClusterLatencyP50:async()=>null,getComboModels:async()=>null,putVaultEntry:async()=>!1,searchVault:async()=>[],getVaultEntry:async()=>null,cleanupExpiredVault:async()=>0,buildExternalIdpRefreshParams:null,createXaiService:null,fetchKiroProfileArn:null};function f(a={}){return e={...e,...a}}function g(){return e}async function h(...a){return e.getSettings?e.getSettings(...a):{}}async function i(...a){return e.getRoutingEvents(...a)}async function j(...a){return e.getClusterWorkerStats(...a)}async function k(...a){return e.getPromotedLearningVersion(...a)}async function l(...a){return e.createLearningVersion(...a)}async function m(...a){return e.countRoutingEvents(...a)}async function n(...a){return e.listCombosWithRoutingEvents(...a)}async function o(...a){return e.getLastScheduledLearnAt(...a)}async function p(...a){return e.getComboModels(...a)}},17525:(a,b,c)=>{"use strict";c.d(b,{sS:()=>d}),c(49471),c(15251),c(71253);function d(a){if(!a||"object"!=typeof a)return null;let b=a.output_config?.effort;if("string"==typeof b&&b){let a=b.toLowerCase();return"none"===a||"off"===a?{mode:"none"}:"auto"===a?{mode:"auto"}:{mode:"level",level:a}}let c=a.thinking;if(c&&"object"==typeof c){if("disabled"===c.type)return{mode:"none"};if("adaptive"===c.type||"enabled"===c.type){let a=Number(c.budget_tokens);return Number.isFinite(a)&&a>0?{mode:"budget",budget:a}:{mode:"auto"}}}let d=a.reasoning_effort??("object"==typeof a.reasoning?a.reasoning?.effort:null);if("string"==typeof d&&d){let a=d.toLowerCase();return"none"===a||"off"===a?{mode:"none"}:"auto"===a?{mode:"auto"}:{mode:"level",level:a}}let e=a.thinkingConfig||a.generationConfig?.thinkingConfig||a.request?.generationConfig?.thinkingConfig;if(e&&"object"==typeof e){if("string"==typeof e.thinkingLevel)return{mode:"level",level:e.thinkingLevel.toLowerCase()};let a=Number(e.thinkingBudget);if(Number.isFinite(a))return 0===a?{mode:"none"}:a<0?{mode:"auto"}:{mode:"budget",budget:a}}if(!1===a.enable_thinking)return{mode:"none"};if(!0===a.enable_thinking){let b=Number(a.thinking_budget);return Number.isFinite(b)&&b>0?{mode:"budget",budget:b}:{mode:"auto"}}return null}c(26317)},17538:(a,b,c)=>{"use strict";function d(a,b){let c=Number.parseFloat(a||"");return Number.isFinite(c)&&c>0&&c<1?c:b}c.d(b,{rW:()=>g});let e=globalThis.__switchboardMemoryWatchdog??={timer:null,consecutiveCritical:0,lastSnapshot:null,restarting:!1};function f(a){return`${Math.round((a||0)/1048576)}MB`}function g(a={}){let b=a.config||function(a=process.env){let b=Number.parseInt(a?.SWITCHBOARD_MEMORY_SAMPLE_MS||"",10),c=Number.parseInt(a?.SWITCHBOARD_MEMORY_CRITICAL_SAMPLES||"",10),e=d(a?.SWITCHBOARD_MEMORY_WARN_FRACTION,.8),f=d(a?.SWITCHBOARD_MEMORY_CRITICAL_FRACTION,.92);return f<=e&&(f=.92),{enabled:a?.SWITCHBOARD_MEMORY_WATCHDOG!=="0",sampleMs:Number.isFinite(b)?Math.max(1e3,b):15e3,warnFraction:e,criticalFraction:f,criticalSamples:Number.isFinite(c)&&c>=1?c:4}}();if(!b.enabled)return!1;if(e.timer)return!0;let c=a.log||console,h=a.exit||(a=>process.exit(a));c.info?.(`[MemoryWatchdog] sampling every ${b.sampleMs}ms; warn≥${Math.round(100*b.warnFraction)}% critical≥${Math.round(100*b.criticalFraction)}% \xd7${b.criticalSamples} of heap limit`);let i=async()=>{let d=function(){try{let a=process.memoryUsage(),b=function(a){try{let a=process.getBuiltinModule?.("node:v8"),b=a?.getHeapStatistics?.()?.heap_size_limit;if(Number.isFinite(b)&&b>0)return b}catch{}return a.heapTotal}(a);return{rssBytes:a.rss,heapUsedBytes:a.heapUsed,heapTotalBytes:a.heapTotal,heapLimitBytes:b,externalBytes:a.external,arrayBuffersBytes:a.arrayBuffers||0,heapFraction:b>0?a.heapUsed/b:0,uptimeSeconds:Math.round(process.uptime())}}catch{return null}}();if(!d)return;e.lastSnapshot=d;let g=function(a,b){let c=Number.isFinite(a?.fraction)?a.fraction:0;if(c>=b.criticalFraction){let c=(a.consecutiveCritical||0)+1;return{level:"critical",consecutiveCritical:c,shouldRestart:c>=b.criticalSamples}}return c>=b.warnFraction?{level:"warn",consecutiveCritical:0,shouldRestart:!1}:{level:"ok",consecutiveCritical:0,shouldRestart:!1}}({fraction:d.heapFraction,consecutiveCritical:e.consecutiveCritical},b);if(e.consecutiveCritical=g.consecutiveCritical,"warn"===g.level&&c.warn?.(`[MemoryWatchdog] heap pressure: used=${f(d.heapUsedBytes)} limit=${f(d.heapLimitBytes)} (${(100*d.heapFraction).toFixed(1)}%) rss=${f(d.rssBytes)} external=${f(d.externalBytes)}`),g.shouldRestart&&!e.restarting){e.restarting=!0,c.error?.(`[MemoryWatchdog] sustained critical heap pressure (${(100*d.heapFraction).toFixed(1)}% of ${f(d.heapLimitBytes)} for ${g.consecutiveCritical} samples); flushing and exiting for supervisor restart instead of V8 OOM abort`);try{await Promise.race([Promise.resolve().then(()=>a.onCritical?.(d)),new Promise(a=>setTimeout(a,2e3))])}catch{}h(1)}};return e.timer=setInterval(()=>{i()},b.sampleMs),e.timer?.unref?.(),!0}},18101:(a,b,c)=>{"use strict";c.d(b,{tV:()=>e,v8:()=>g});var d=c(68531);function e(a,b=null){if(!a)return null;let c=a.trim();if(b===d.h.OLLAMA||c.startsWith("{")&&!c.startsWith("data:")){if(c.startsWith("{"))try{return JSON.parse(c)}catch(a){return null}if(b===d.h.OLLAMA)return null}if(c.startsWith("data:")){let a=c.split("\n").map(a=>{let b=a.trim();return b.startsWith("data:")?b.slice(5).replace(/^ /,""):b}).join("\n").trim();if("[DONE]"===a)return{done:!0};try{return JSON.parse(a)}catch(b){a.length>0&&a.length<1e3&&console.log(`[WARN] Failed to parse SSE line (${a.length} chars): ${a.substring(0,100)}...`)}}return null}function f(a){if(!a||"object"!=typeof a||Array.isArray(a))return a;let b=a;if("usage"in b){if(null===b.usage){let{usage:a,...c}=b;b=c}else if("object"==typeof b.usage&&null===b.usage.perf_metrics){let{perf_metrics:a,...c}=b.usage;b={...b,usage:c}}}if(b.response&&"object"==typeof b.response&&!Array.isArray(b.response)){let a=f(b.response);a!==b.response&&(b={...b,response:a})}return b}function g(a,b){if(null==a)return"data: null\n\n";if(a&&a.done)return"data: [DONE]\n\n";if(a&&a.event&&a.data){let b=f(a.data);return`event: ${a.event}
|
|
29
|
+
cost = cost + excluded.cost`,[c.requests,c.promptTokens,c.completionTokens,c.cachedTokens,c.cost]),a.run("DELETE FROM prometheusUsageTotals WHERE provider = ?",[b])})}},15873:(a,b,c)=>{var d=c(45654);c(63070),c(76632),c(36105),c(56416),c(20308),c(29984),c(10401),c(4554),c(33889),c(65737);var e=d.asn1,f=d.pki,g=a.exports=d.pkcs12=d.pkcs12||{},h={name:"ContentInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},i={name:"PFX",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"},h,{name:"PFX.macData",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",optional:!0,tagClass:e.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},j={name:"SafeBag",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SafeBag.bagId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},k={name:"Attribute",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"oid"},{name:"Attribute.attrValues",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,capture:"values"}]},l={name:"CertBag",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:e.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:e.Class.UNIVERSAL,type:e.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};function m(a,b,c,d){for(var e=[],f=0;f<a.length;f++)for(var g=0;g<a[f].safeBags.length;g++){var h=a[f].safeBags[g];if(void 0===d||h.type===d){if(null===b){e.push(h);continue}void 0!==h.attributes[b]&&h.attributes[b].indexOf(c)>=0&&e.push(h)}}return e}function n(a){if(a.composed||a.constructed){for(var b=d.util.createBuffer(),c=0;c<a.value.length;++c)b.putBytes(a.value[c].value);a.composed=a.constructed=!1,a.value=b.getBytes()}return a}g.pkcs12FromAsn1=function(a,b,c){"string"==typeof b?(c=b,b=!0):void 0===b&&(b=!0);var o={};if(!e.validate(a,i,o,[])){var p=Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX.");throw p.errors=p,p}var q={version:o.version.charCodeAt(0),safeContents:[],getBags:function(a){var b,c={};return"localKeyId"in a?b=a.localKeyId:"localKeyIdHex"in a&&(b=d.util.hexToBytes(a.localKeyIdHex)),void 0===b&&!("friendlyName"in a)&&"bagType"in a&&(c[a.bagType]=m(q.safeContents,null,null,a.bagType)),void 0!==b&&(c.localKeyId=m(q.safeContents,"localKeyId",b,a.bagType)),"friendlyName"in a&&(c.friendlyName=m(q.safeContents,"friendlyName",a.friendlyName,a.bagType)),c},getBagsByFriendlyName:function(a,b){return m(q.safeContents,"friendlyName",a,b)},getBagsByLocalKeyId:function(a,b){return m(q.safeContents,"localKeyId",a,b)}};if(3!==o.version.charCodeAt(0)){var p=Error("PKCS#12 PFX of version other than 3 not supported.");throw p.version=o.version.charCodeAt(0),p}if(e.derToOid(o.contentType)!==f.oids.data){var p=Error("Only PKCS#12 PFX in password integrity mode supported.");throw p.oid=e.derToOid(o.contentType),p}var r=o.content.value[0];if(r.tagClass!==e.Class.UNIVERSAL||r.type!==e.Type.OCTETSTRING)throw Error("PKCS#12 authSafe content data is not an OCTET STRING.");if(r=n(r),o.mac){var s=null,t=0,u=e.derToOid(o.macAlgorithm);switch(u){case f.oids.sha1:s=d.md.sha1.create(),t=20;break;case f.oids.sha256:s=d.md.sha256.create(),t=32;break;case f.oids.sha384:s=d.md.sha384.create(),t=48;break;case f.oids.sha512:s=d.md.sha512.create(),t=64;break;case f.oids.md5:s=d.md.md5.create(),t=16}if(null===s)throw Error("PKCS#12 uses unsupported MAC algorithm: "+u);var v=new d.util.ByteBuffer(o.macSalt),w="macIterations"in o?parseInt(d.util.bytesToHex(o.macIterations),16):1,x=g.generateKey(c,v,3,w,t,s),y=d.hmac.create();if(y.start(s,x),y.update(r.value),y.getMac().getBytes()!==o.macDigest)throw Error("PKCS#12 MAC could not be verified. Invalid password?")}else if(Array.isArray(a.value)&&a.value.length>2)throw Error("Invalid PKCS#12. macData field present but MAC was not validated.");return function(a,b,c,g){if((b=e.fromDer(b,c)).tagClass!==e.Class.UNIVERSAL||b.type!==e.Type.SEQUENCE||!0!==b.constructed)throw Error("PKCS#12 AuthenticatedSafe expected to be a SEQUENCE OF ContentInfo");for(var i=0;i<b.value.length;i++){var m=b.value[i],o={},p=[];if(!e.validate(m,h,o,p)){var q=Error("Cannot read ContentInfo.");throw q.errors=p,q}var r={encrypted:!1},s=null,t=o.content.value[0];switch(e.derToOid(o.contentType)){case f.oids.data:if(t.tagClass!==e.Class.UNIVERSAL||t.type!==e.Type.OCTETSTRING)throw Error("PKCS#12 SafeContents Data is not an OCTET STRING.");s=n(t).value;break;case f.oids.encryptedData:s=function(a,b){var c={},g=[];if(!e.validate(a,d.pkcs7.asn1.encryptedDataValidator,c,g)){var h=Error("Cannot read EncryptedContentInfo.");throw h.errors=g,h}var i=e.derToOid(c.contentType);if(i!==f.oids.data){var h=Error("PKCS#12 EncryptedContentInfo ContentType is not Data.");throw h.oid=i,h}i=e.derToOid(c.encAlgorithm);var j=f.pbe.getCipher(i,c.encParameter,b),k=n(c.encryptedContentAsn1),l=d.util.createBuffer(k.value);if(j.update(l),!j.finish())throw Error("Failed to decrypt PKCS#12 SafeContents.");return j.output.getBytes()}(t,g),r.encrypted=!0;break;default:var q=Error("Unsupported PKCS#12 contentType.");throw q.contentType=e.derToOid(o.contentType),q}r.safeBags=function(a,b,c){if(!b&&0===a.length)return[];if((a=e.fromDer(a,b)).tagClass!==e.Class.UNIVERSAL||a.type!==e.Type.SEQUENCE||!0!==a.constructed)throw Error("PKCS#12 SafeContents expected to be a SEQUENCE OF SafeBag.");for(var d=[],g=0;g<a.value.length;g++){var h,i,m=a.value[g],n={},o=[];if(!e.validate(m,j,n,o)){var p=Error("Cannot read SafeBag.");throw p.errors=o,p}var q={type:e.derToOid(n.bagId),attributes:function(a){var b={};if(void 0!==a)for(var c=0;c<a.length;++c){var d={},g=[];if(!e.validate(a[c],k,d,g)){var h=Error("Cannot read PKCS#12 BagAttribute.");throw h.errors=g,h}var i=e.derToOid(d.oid);if(void 0!==f.oids[i]){b[f.oids[i]]=[];for(var j=0;j<d.values.length;++j)b[f.oids[i]].push(d.values[j].value)}}return b}(n.bagAttributes)};d.push(q);var r=n.bagValue.value[0];switch(q.type){case f.oids.pkcs8ShroudedKeyBag:if(null===(r=f.decryptPrivateKeyInfo(r,c)))throw Error("Unable to decrypt PKCS#8 ShroudedKeyBag, wrong password?");case f.oids.keyBag:try{q.key=f.privateKeyFromAsn1(r)}catch(a){q.key=null,q.asn1=r}continue;case f.oids.certBag:h=l,i=function(){if(e.derToOid(n.certId)!==f.oids.x509Certificate){var a=Error("Unsupported certificate type, only X.509 supported.");throw a.oid=e.derToOid(n.certId),a}var c=e.fromDer(n.cert,b);try{q.cert=f.certificateFromAsn1(c,!0)}catch(a){q.cert=null,q.asn1=c}};break;default:var p=Error("Unsupported PKCS#12 SafeBag type.");throw p.oid=q.type,p}if(void 0!==h&&!e.validate(r,h,n,o)){var p=Error("Cannot read PKCS#12 "+h.name);throw p.errors=o,p}i()}return d}(s,c,g),a.safeContents.push(r)}}(q,r.value,b,c),q},g.toPkcs12Asn1=function(a,b,c,h){(h=h||{}).saltSize=h.saltSize||8,h.count=h.count||2048,h.algorithm=h.algorithm||h.encAlgorithm||"aes128","useMac"in h||(h.useMac=!0),"localKeyId"in h||(h.localKeyId=null),"generateLocalKeyId"in h||(h.generateLocalKeyId=!0);var i,j,k=h.localKeyId;if(null!==k)k=d.util.hexToBytes(k);else if(h.generateLocalKeyId)if(b){var l=d.util.isArray(b)?b[0]:b;"string"==typeof l&&(l=f.certificateFromPem(l));var m=d.md.sha1.create();m.update(e.toDer(f.certificateToAsn1(l)).getBytes()),k=m.digest().getBytes()}else k=d.random.getBytes(20);var n=[];null!==k&&n.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.localKeyId).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,k)])])),"friendlyName"in h&&n.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.friendlyName).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.BMPSTRING,!1,h.friendlyName)])])),n.length>0&&(i=e.create(e.Class.UNIVERSAL,e.Type.SET,!0,n));var o=[],p=[];null!==b&&(p=d.util.isArray(b)?b:[b]);for(var q=[],r=0;r<p.length;++r){"string"==typeof(b=p[r])&&(b=f.certificateFromPem(b));var s=0===r?i:void 0,t=f.certificateToAsn1(b),u=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.certBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.x509Certificate).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(t).getBytes())])])]),s]);q.push(u)}if(q.length>0){var v=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,q),w=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(v).getBytes())])]);o.push(w)}var x=null;if(null!==a){var y=f.wrapRsaPrivateKey(f.privateKeyToAsn1(a));x=null===c?e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.keyBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[y]),i]):e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.pkcs8ShroudedKeyBag).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[f.encryptPrivateKeyInfo(y,c,h)]),i]);var z=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[x]),A=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(z).getBytes())])]);o.push(A)}var B=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,o);if(h.useMac){var m=d.md.sha1.create(),C=new d.util.ByteBuffer(d.random.getBytes(h.saltSize)),D=h.count,a=g.generateKey(c,C,3,D,20),E=d.hmac.create();E.start(m,a),E.update(e.toDer(B).getBytes());var F=E.getMac();j=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.sha1).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")]),e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,F.getBytes())]),e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,C.getBytes()),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(D).getBytes())])}return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(3).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(f.oids.data).getBytes()),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,e.toDer(B).getBytes())])]),j])},g.generateKey=d.pbe.generatePkcs12Key},15904:(a,b,c)=>{"use strict";c.d(b,{BO:()=>m,Bq:()=>k,Kd:()=>l,SQ:()=>n});var d=c(77397);let e=["requests","promptTokens","completionTokens","cachedTokens"],f=["requests","errors","fallbacks"],g=new WeakMap;function h(a,b){let c=g.get(a);if(c||(c=new Map,g.set(a,c)),c.has(b))return c.get(b);let d=!!a.get("SELECT name FROM sqlite_master WHERE type = 'table' AND name = ?",[b]);return c.set(b,d),d}let i=new WeakMap;function j(a){i.delete(a),h(a,"prometheusMetricState")&&a.run("UPDATE prometheusMetricState SET available = 0 WHERE id = 1")}function k(a,b){if(!function(a){let b=Date.now(),c=i.get(a);if(c&&c.expiresAt>b)return c.value;let e=function(a){if(!h(a,"prometheusMetricState"))return!1;let b=a.get("SELECT available FROM prometheusMetricState WHERE id = 1");try{let a=(0,d.T)(b?.available,"metricState.available",{integer:!0});if(![0,1].includes(a))throw Error("invalid Prometheus metric state");return 1===a}catch{return j(a),!1}}(a);return i.set(a,{value:e,expiresAt:b+5e3}),e}(a))return!1;try{return a.transaction(b),!0}catch{return j(a),!1}}function l(a,b=a?.provider||"usage"){if(!a||"string"!=typeof a.provider||!a.provider)throw Error(`invalid Prometheus usage metric: ${b}.provider`);for(let c of e)(0,d.T)(a[c],`${b}.${c}`,{integer:!0});return(0,d.T)(a.cost,`${b}.cost`),a}function m(a,b=a?.source||"routing"){if(!a||"string"!=typeof a.source||!a.source)throw Error(`invalid Prometheus routing metric: ${b}.source`);for(let c of f)(0,d.T)(a[c],`${b}.${c}`,{integer:!0});return a}function n(a,b=a?.requestKey||"routingRequest"){if(!a||"string"!=typeof a.source||!a.source)throw Error(`invalid Prometheus routing request: ${b}.source`);(0,d.T)(a.terminalId,`${b}.terminalId`,{integer:!0});let c=(0,d.T)(a.isError,`${b}.isError`,{integer:!0}),e=(0,d.T)(a.fallbackUsed,`${b}.fallbackUsed`,{integer:!0});if(![0,1].includes(c)||![0,1].includes(e))throw Error(`invalid Prometheus routing request: ${b}`);return a}},16276:(a,b,c)=>{"use strict";c.d(b,{v:()=>e});var d=c(46248);class e extends d.L{constructor(){super("codebuddy-cn")}transformRequest(a,b,c,d){let e=super.transformRequest(a,b,c,d);e.stream=!0;let f=e.reasoning_effort;return"none"===f||"off"===f?delete e.reasoning_effort:f&&(e.reasoning_summary="auto"),e}}},16537:(a,b,c)=>{"use strict";let d=c(34589),{asciiLowercase:e,forgivingBase64:f,collectASequenceOfCodePoints:g,collectASequenceOfCodePointsFast:h,isomorphicDecode:i,removeASCIIWhitespace:j,removeChars:k}=c(70745),l=new TextEncoder,m=/^[-!#$%&'*+.^_`|~A-Za-z0-9]+$/u,n=/[\u000A\u000D\u0009\u0020]/u,o=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function p(a,b=!1){if(!b)return a.href;let c=a.href,d=a.hash.length,e=0===d?c:c.substring(0,c.length-d);return!d&&c.endsWith("#")?e.slice(0,-1):e}function q(a){return function(a){let b=a.length,c=new Uint8Array(b),d=0,e=0;for(;e<b;){let b=a[e];37!==b?c[d++]=b:37!==b||r(a[e+1])&&r(a[e+2])?(c[d++]=s(a[e+1])<<4|s(a[e+2]),e+=2):c[d++]=37,++e}return b===d?c:c.subarray(0,d)}(l.encode(a))}function r(a){return a>=48&&a<=57||a>=65&&a<=70||a>=97&&a<=102}function s(a){return a>=48&&a<=57?a-48:(223&a)-55}function t(a){a=w(a,!0,!0);let b={position:0},c=h("/",a,b);if(0===c.length||!m.test(c)||b.position>=a.length)return"failure";b.position++;let d=h(";",a,b);if(0===(d=w(d,!1,!0)).length||!m.test(d))return"failure";let f=e(c),i=e(d),j={type:f,subtype:i,parameters:new Map,essence:`${f}/${i}`};for(;b.position<a.length;){b.position++,g(a=>n.test(a),a,b);let c=g(a=>";"!==a&&"="!==a,a,b);if(c=e(c),b.position<a.length){if(";"===a[b.position])continue;b.position++}if(b.position>=a.length)break;let d=null;if('"'===a[b.position])d=u(a,b,!0),h(";",a,b);else if(0===(d=w(d=h(";",a,b),!1,!0)).length)continue;0!==c.length&&m.test(c)&&(0===d.length||o.test(d))&&!j.parameters.has(c)&&j.parameters.set(c,d)}return j}function u(a,b,c=!1){let e=b.position,f="";for(d('"'===a[b.position]),b.position++;f+=g(a=>'"'!==a&&"\\"!==a,a,b),!(b.position>=a.length);){let c=a[b.position];if(b.position++,"\\"===c){if(b.position>=a.length){f+="\\";break}f+=a[b.position],b.position++}else{d('"'===c);break}}return c?f:a.slice(e,b.position)}function v(a){return 13===a||10===a||9===a||32===a}function w(a,b=!0,c=!0){return k(a,b,c,v)}a.exports={dataURLProcessor:function(a){d("data:"===a.protocol);let b=p(a,!0);b=b.slice(5);let c={position:0},e=h(",",b,c),g=e.length;if(e=j(e,!0,!0),c.position>=b.length)return"failure";c.position++;let k=q(b.slice(g+1));if(/;\u0020*[Bb][Aa][Ss][Ee]64$/u.test(e)){if("failure"===(k=f(i(k))))return"failure";e=(e=(e=e.slice(0,-6)).replace(/(\u0020+)$/u,"")).slice(0,-1)}e.startsWith(";")&&(e="text/plain"+e);let l=t(e);return"failure"===l&&(l=t("text/plain;charset=US-ASCII")),{mimeType:l,body:k}},URLSerializer:p,stringPercentDecode:q,parseMIMEType:t,collectAnHTTPQuotedString:u,serializeAMimeType:function(a){d("failure"!==a);let{parameters:b,essence:c}=a,e=c;for(let[a,c]of b.entries())e+=";",e+=a,e+="=",m.test(c)||(c='"'+(c=c.replace(/[\\"]/ug,"\\$&"))+'"'),e+=c;return e},removeHTTPWhitespace:w,minimizeSupportedMimeType:function(a){switch(a.essence){case"application/ecmascript":case"application/javascript":case"application/x-ecmascript":case"application/x-javascript":case"text/ecmascript":case"text/javascript":case"text/javascript1.0":case"text/javascript1.1":case"text/javascript1.2":case"text/javascript1.3":case"text/javascript1.4":case"text/javascript1.5":case"text/jscript":case"text/livescript":case"text/x-ecmascript":case"text/x-javascript":return"text/javascript";case"application/json":case"text/json":return"application/json";case"image/svg+xml":return"image/svg+xml";case"text/xml":case"application/xml":return"application/xml"}return a.subtype.endsWith("+json")?"application/json":a.subtype.endsWith("+xml")?"application/xml":""},HTTP_TOKEN_CODEPOINTS:m}},16542:(a,b,c)=>{"use strict";c.d(b,{r:()=>h});var d=c(55511),e=c(22256),f=c(38421),g=c(96997);class h extends e.Hv{constructor(){super("iflow",f.xq.iflow)}async refreshCredentials(a,b){if(!a?.refreshToken)return null;let c=await (0,g.AH)(a.refreshToken,b);return c?.accessToken?{accessToken:c.accessToken,refreshToken:c.refreshToken||a.refreshToken,expiresAt:c.expiresAt,expiresIn:c.expiresIn}:null}generateUUID(){return d.randomUUID()}createIFlowSignature(a,b,c,e){if(!e)return"";let f=`${a}:${b}:${c}`,g=d.createHmac("sha256",e);return g.update(f),g.digest("hex")}buildHeaders(a,b=!0){let c=`session-${this.generateUUID()}`,d=Date.now(),e=this.config.headers["User-Agent"]||"iFlow-Cli",f=a.apiKey||a.accessToken||"",g=this.createIFlowSignature(e,c,d,f),h={"Content-Type":"application/json",...this.config.headers,"session-id":c,"x-iflow-timestamp":d.toString(),"x-iflow-signature":g},i=a.apiKey||a.accessToken;return i&&(h.Authorization=`Bearer ${i}`),b&&(h.Accept="text/event-stream"),h}buildUrl(a,b,c=0,d=null){return this.config.baseUrl}transformRequest(a,b,c,d){return c&&b.messages&&!b.stream_options&&(b.stream_options={include_usage:!0}),b}}},16712:(a,b,c)=>{"use strict";let d=c(34589),{AsyncResource:e}=c(16698),{Readable:f}=c(1712),{InvalidArgumentError:g,RequestAbortedError:h}=c(61448),i=c(84285);function j(){}class k extends e{constructor(a,b){if(!a||"object"!=typeof a)throw new g("invalid opts");const{signal:c,method:d,opaque:e,body:f,onInfo:k,responseHeaders:l,highWaterMark:m}=a;try{if("function"!=typeof b)throw new g("invalid callback");if(null!=m&&(!Number.isFinite(m)||m<0))throw new g("invalid highWaterMark");if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new g("signal must be an EventEmitter or EventTarget");if("CONNECT"===d)throw new g("invalid method");if(k&&"function"!=typeof k)throw new g("invalid onInfo callback");super("UNDICI_REQUEST")}catch(a){throw i.isStream(f)&&i.destroy(f.on("error",j),a),a}this.method=d,this.responseHeaders=l||null,this.opaque=e||null,this.callback=b,this.res=null,this.abort=null,this.body=f,this.trailers={},this.context=null,this.controller=null,this.onInfo=k||null,this.highWaterMark=m,this.reason=null,this.removeAbortListener=null,c?.aborted?this.reason=c.reason??new h:c&&(this.removeAbortListener=i.addAbortListener(c,()=>{if(this.reason=c.reason??new h,this.res){let a=this.res;this.res=null,i.destroy(a.on("error",j),this.reason)}else this.abort&&this.abort(this.reason)}))}onRequestStart(a,b){this.reason?a.abort(this.reason):(d(this.callback),this.controller=a,this.abort=b=>a.abort(b),this.context=b)}onResponseStart(a,b,c,d){let{callback:e,opaque:g,context:h,responseHeaders:k,highWaterMark:l}=this,m=a?.rawHeaders,n="raw"===k?i.parseRawHeaders(m):c;if(b<200){this.onInfo&&this.onInfo({statusCode:b,headers:n});return}let o=c?.["content-type"],p=c?.["content-length"],q=new f({resume:()=>a.resume(),abort:b=>a.abort(b),contentType:o,contentLength:"HEAD"!==this.method&&p?Number(p):null,highWaterMark:l});if(this.removeAbortListener&&(q.on("close",this.removeAbortListener),this.removeAbortListener=null),this.callback=null,this.res=q,null!==e)try{this.runInAsyncScope(e,null,null,{statusCode:b,statusText:d,headers:n,trailers:this.trailers,opaque:g,body:q,context:h})}catch(a){this.res=null,i.destroy(q.on("error",j),a),queueMicrotask(()=>{throw a})}}onResponseData(a,b){this.res&&!1===this.res.push(b)&&a.pause()}onResponseEnd(a,b){if(b&&"object"==typeof b)for(let a of Object.keys(b))"__proto__"===a?Object.defineProperty(this.trailers,a,{value:b[a],enumerable:!0,configurable:!0,writable:!0}):this.trailers[a]=b[a];this.res?.push(null)}onResponseError(a,b){let{res:c,callback:d,body:e,opaque:f}=this;d&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(d,null,b,{opaque:f})})),c&&(this.res=null,queueMicrotask(()=>{i.destroy(c.on("error",j),b)})),e&&(this.body=null,i.isStream(e)&&(e.on("error",j),i.destroy(e,b))),this.removeAbortListener&&(this.removeAbortListener(),this.removeAbortListener=null)}}a.exports=function a(b,c){if(void 0===c)return new Promise((c,d)=>{a.call(this,b,(a,b)=>a?d(a):c(b))});try{let a=new k(b,c);this.dispatch(b,a)}catch(d){if("function"!=typeof c)throw d;let a=b?.opaque;queueMicrotask(()=>c(d,{opaque:a}))}},a.exports.RequestHandler=k},17438:(a,b,c)=>{"use strict";c.d(b,{GU:()=>j,HP:()=>o,Hr:()=>l,Kx:()=>i,dC:()=>n,d_:()=>p,f8:()=>m,mt:()=>h,oC:()=>g,p3:()=>k,qd:()=>f});let d=async()=>{},e={getSettings:async()=>({}),loadProviderQuotaState:null,saveProviderQuotaState:null,trackPendingRequest:()=>{},appendRequestLog:d,saveRequestDetail:d,saveRequestUsage:d,getRoutingEvents:async()=>[],getClusterWorkerStats:async()=>({}),getPromotedLearningVersion:async()=>null,createLearningVersion:d,countRoutingEvents:async()=>0,listCombosWithRoutingEvents:async()=>[],getLastScheduledLearnAt:async()=>null,getClusterLatencyP50:async()=>null,getComboModels:async()=>null,putVaultEntry:async()=>!1,searchVault:async()=>[],getVaultEntry:async()=>null,cleanupExpiredVault:async()=>0,buildExternalIdpRefreshParams:null,createXaiService:null,fetchKiroProfileArn:null};function f(a={}){return e={...e,...a}}function g(){return e}async function h(...a){return e.getSettings?e.getSettings(...a):{}}async function i(...a){return e.getRoutingEvents(...a)}async function j(...a){return e.getClusterWorkerStats(...a)}async function k(...a){return e.getPromotedLearningVersion(...a)}async function l(...a){return e.createLearningVersion(...a)}async function m(...a){return e.countRoutingEvents(...a)}async function n(...a){return e.listCombosWithRoutingEvents(...a)}async function o(...a){return e.getLastScheduledLearnAt(...a)}async function p(...a){return e.getComboModels(...a)}},17538:(a,b,c)=>{"use strict";function d(a,b){let c=Number.parseFloat(a||"");return Number.isFinite(c)&&c>0&&c<1?c:b}c.d(b,{rW:()=>g});let e=globalThis.__switchboardMemoryWatchdog??={timer:null,consecutiveCritical:0,lastSnapshot:null,restarting:!1};function f(a){return`${Math.round((a||0)/1048576)}MB`}function g(a={}){let b=a.config||function(a=process.env){let b=Number.parseInt(a?.SWITCHBOARD_MEMORY_SAMPLE_MS||"",10),c=Number.parseInt(a?.SWITCHBOARD_MEMORY_CRITICAL_SAMPLES||"",10),e=d(a?.SWITCHBOARD_MEMORY_WARN_FRACTION,.8),f=d(a?.SWITCHBOARD_MEMORY_CRITICAL_FRACTION,.92);return f<=e&&(f=.92),{enabled:a?.SWITCHBOARD_MEMORY_WATCHDOG!=="0",sampleMs:Number.isFinite(b)?Math.max(1e3,b):15e3,warnFraction:e,criticalFraction:f,criticalSamples:Number.isFinite(c)&&c>=1?c:4}}();if(!b.enabled)return!1;if(e.timer)return!0;let c=a.log||console,h=a.exit||(a=>process.exit(a));c.info?.(`[MemoryWatchdog] sampling every ${b.sampleMs}ms; warn≥${Math.round(100*b.warnFraction)}% critical≥${Math.round(100*b.criticalFraction)}% \xd7${b.criticalSamples} of heap limit`);let i=async()=>{let d=function(){try{let a=process.memoryUsage(),b=function(a){try{let a=process.getBuiltinModule?.("node:v8"),b=a?.getHeapStatistics?.()?.heap_size_limit;if(Number.isFinite(b)&&b>0)return b}catch{}return a.heapTotal}(a);return{rssBytes:a.rss,heapUsedBytes:a.heapUsed,heapTotalBytes:a.heapTotal,heapLimitBytes:b,externalBytes:a.external,arrayBuffersBytes:a.arrayBuffers||0,heapFraction:b>0?a.heapUsed/b:0,uptimeSeconds:Math.round(process.uptime())}}catch{return null}}();if(!d)return;e.lastSnapshot=d;let g=function(a,b){let c=Number.isFinite(a?.fraction)?a.fraction:0;if(c>=b.criticalFraction){let c=(a.consecutiveCritical||0)+1;return{level:"critical",consecutiveCritical:c,shouldRestart:c>=b.criticalSamples}}return c>=b.warnFraction?{level:"warn",consecutiveCritical:0,shouldRestart:!1}:{level:"ok",consecutiveCritical:0,shouldRestart:!1}}({fraction:d.heapFraction,consecutiveCritical:e.consecutiveCritical},b);if(e.consecutiveCritical=g.consecutiveCritical,"warn"===g.level&&c.warn?.(`[MemoryWatchdog] heap pressure: used=${f(d.heapUsedBytes)} limit=${f(d.heapLimitBytes)} (${(100*d.heapFraction).toFixed(1)}%) rss=${f(d.rssBytes)} external=${f(d.externalBytes)}`),g.shouldRestart&&!e.restarting){e.restarting=!0,c.error?.(`[MemoryWatchdog] sustained critical heap pressure (${(100*d.heapFraction).toFixed(1)}% of ${f(d.heapLimitBytes)} for ${g.consecutiveCritical} samples); flushing and exiting for supervisor restart instead of V8 OOM abort`);try{await Promise.race([Promise.resolve().then(()=>a.onCritical?.(d)),new Promise(a=>setTimeout(a,2e3))])}catch{}h(1)}};return e.timer=setInterval(()=>{i()},b.sampleMs),e.timer?.unref?.(),!0}},18101:(a,b,c)=>{"use strict";c.d(b,{tV:()=>e,v8:()=>g});var d=c(68531);function e(a,b=null){if(!a)return null;let c=a.trim();if(b===d.h.OLLAMA||c.startsWith("{")&&!c.startsWith("data:")){if(c.startsWith("{"))try{return JSON.parse(c)}catch(a){return null}if(b===d.h.OLLAMA)return null}if(c.startsWith("data:")){let a=c.split("\n").map(a=>{let b=a.trim();return b.startsWith("data:")?b.slice(5).replace(/^ /,""):b}).join("\n").trim();if("[DONE]"===a)return{done:!0};try{return JSON.parse(a)}catch(b){a.length>0&&a.length<1e3&&console.log(`[WARN] Failed to parse SSE line (${a.length} chars): ${a.substring(0,100)}...`)}}return null}function f(a){if(!a||"object"!=typeof a||Array.isArray(a))return a;let b=a;if("usage"in b){if(null===b.usage){let{usage:a,...c}=b;b=c}else if("object"==typeof b.usage&&null===b.usage.perf_metrics){let{perf_metrics:a,...c}=b.usage;b={...b,usage:c}}}if(b.response&&"object"==typeof b.response&&!Array.isArray(b.response)){let a=f(b.response);a!==b.response&&(b={...b,response:a})}return b}function g(a,b){if(null==a)return"data: null\n\n";if(a&&a.done)return"data: [DONE]\n\n";if(a&&a.event&&a.data){let b=f(a.data);return`event: ${a.event}
|
|
30
30
|
data: ${JSON.stringify(b)}
|
|
31
31
|
|
|
32
32
|
`}return(a=f(a),b===d.h.CLAUDE&&a&&a.type)?`event: ${a.type}
|
|
@@ -34,7 +34,7 @@ data: ${JSON.stringify(a)}
|
|
|
34
34
|
|
|
35
35
|
`:`data: ${JSON.stringify(a)}
|
|
36
36
|
|
|
37
|
-
`}},18184:(a,b,c)=>{"use strict";function d({id:a,created:b,model:c},e,f=null){return{id:a,object:"chat.completion.chunk",created:b,model:c,choices:[{index:0,delta:e,finish_reason:f}]}}c.d(b,{k:()=>d})},18205:(a,b,c)=>{"use strict";c.d(b,{D:()=>f});var d=c(46248),e=c(38421);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},18586:(a,b,c)=>{"use strict";c.d(b,{au:()=>m});var d=c(52655);let e="<|tool▁calls▁begin|>",f="<|tool▁call▁begin|>",g="<|tool▁sep|>",h="<|tool▁call▁end|>",i="<|tool▁calls▁end|>",j="<|DSML|tool_calls>",k=/(<|tool▁calls▁begin|>|<|DSML|tool_calls>)/,l=[[/deepseek|composer/i,{name:"deepseek",detect:a=>k.test(a),parse(a){let b=function(a){let b=a.indexOf(e);if(b<0)return null;let c=a.slice(0,b).trim(),j=a.indexOf(i,b),k=j>=0?a.slice(b+e.length,j):a.slice(b+e.length),l=j>=0?a.slice(j+i.length).trim():"",m=[],n=k.split(f).filter(Boolean);for(let a=0;a<n.length;a++){let b=n[a],c=function(a,b){let c=a;c.startsWith(f)&&(c=c.slice(f.length)),c.endsWith(h)&&(c=c.slice(0,-h.length));let e=c.indexOf(g);if(e<0)return null;let i=c.slice(e+g.length),j=i.search(/[\n`]/),k=j>0?i.slice(0,j).trim():i.trim();if(!k)return null;let l="{}",m=i.match(/```(?:json)?\s*\n?([\s\S]*?)\n?```/);if(m)l=m[1].trim();else{let a=i.slice(j>=0?j:0).trim();(a.startsWith("{")||a.startsWith("["))&&(l=a)}try{JSON.parse(l)}catch{l=JSON.stringify({_raw:l})}return{id:(0,d.J4)(0,b,k),type:"function",function:{name:k,arguments:l}}}(b=f+b,a);c&&m.push(c)}return 0===m.length?null:{content:[c,l].filter(Boolean).join("\n").trim()||null,toolCalls:m}}(a);if(b)return b;let c=function(a){let b,c=a.indexOf(j);if(c<0)return null;let e=a.slice(0,c).trim(),f=a.slice(c+j.length);if(f.length>5e5)return null;let g=/<|DSML|invoke\s+name="([^"]+)">([\s\S]*?)(?:<\/|DSML|invoke>|$)/g,h=/<|DSML|parameter\s+name="([^"]+)"\s+string="(true|false)">([\s\S]*?)(?=<|DSML|parameter|<\/|DSML|invoke>|$)/g,i=[];for(;null!==(b=g.exec(f));){let a,c=b[1],e=b[2],f={};for(h.lastIndex=0;null!==(a=h.exec(e));){let b=a[1],c="true"===a[2],d=a[3].trim();if(c)f[b]=d;else try{f[b]=JSON.parse(d)}catch{f[b]=d}}i.push({id:(0,d.J4)(0,i.length,c),type:"function",function:{name:c,arguments:JSON.stringify(f)}})}return 0===i.length?null:{content:e||null,toolCalls:i}}(a);return c||null}}]];function m(a,b){if(!a||!b)return null;let c=function(a){if(!a)return null;for(let[b,c]of l)if(b.test(a))return c;return null}(b);return c&&c.detect(a)?c.parse(a):null}},18762:(a,b,c)=>{"use strict";c(87350),c(68531),c(17438),c(22268),c(18101),c(73081),c(1031),c(19016),c(39490),c(82703),new TextEncoder},18922:(a,b,c)=>{"use strict";let d;c.d(b,{ox:()=>A,pS:()=>B});var e=c(24081),f=c(50743),g=c(68176),h=c(22268);let i=null,j=0;async function k(){if(i&&Date.now()-j<5e3)return i;try{let{getSettings:a}=await Promise.resolve().then(c.bind(c,45874)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;i={enabled:"boolean"==typeof b.enableObservability?b.enableObservability:d,maxRecords:b.observabilityMaxRecords||parseInt(process.env.OBSERVABILITY_MAX_RECORDS||String(200),10),batchSize:b.observabilityBatchSize||parseInt(process.env.OBSERVABILITY_BATCH_SIZE||String(20),10),flushIntervalMs:b.observabilityFlushIntervalMs||parseInt(process.env.OBSERVABILITY_FLUSH_INTERVAL_MS||String(5e3),10),maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10)),maxBuffer:parseInt(process.env.OBSERVABILITY_MAX_BUFFER||String(5e3),10)||5e3}}catch{i={enabled:!1,maxRecords:200,batchSize:20,flushIntervalMs:5e3,maxJsonSize:5120,maxBuffer:5e3}}return j=Date.now(),i}let l=[],m=null,n=!1,o=0,p=0,q=0,r=new Set(["accesstoken","refreshtoken","idtoken","apikey","copilottoken","cookies","clientsecret","secretaccesskey","authorization","xapikey","xswitchboardkey","cookie","token","password","passwd","secret","bearer","setcookie","xauthtoken"]);function s(a,b=new WeakSet){if(!a||"object"!=typeof a||b.has(a))return a;b.add(a);let c=null;if(Array.isArray(a)){for(let d=0;d<a.length;d++){let e=s(a[d],b);e===a[d]||c||(c=a.slice()),c&&(c[d]=e)}return c||a}for(let[d,e]of Object.entries(a)){let f=r.has(String(d).toLowerCase().replace(/[-_]/g,""))?"[REDACTED]":s(e,b);f===e||c||(c={...a}),c&&(c[d]=f)}return c||a}let t=new WeakMap;function u(a,b,c){if(a&&("object"==typeof a||"function"==typeof a))try{t.set(a,{maxSize:b,result:c})}catch{}return c}function v(a,b){let c;if(null==a)return{};if("object"==typeof a||"function"==typeof a)try{let c=t.get(a);if(c&&c.maxSize===b)return c.result}catch{}try{c=JSON.stringify(a)}catch{let c=String(a).substring(0,200);return u(a,b,{_truncated:!0,_originalSize:c.length,_preview:c,_error:"stringify_failed"})}return((0,h.nx)(a,c.length),c.length>b)?u(a,b,{_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)}):u(a,b,a)}function w(a,b,c){a.transaction(()=>{for(let d of c){let c=function(a,b){var c;let d,e,f;return a.id||(c=a.model,d=new Date().toISOString(),e=Math.random().toString(36).substring(2,8),f=c?c.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown",a.id=`${d}-${e}-${f}`),a.timestamp||(a.timestamp=new Date().toISOString()),{id:a.id,provider:a.provider||null,model:a.model||null,connectionId:a.connectionId||null,timestamp:a.timestamp,status:a.status||null,latency:a.latency||{},tokens:a.tokens||{},request:v(a.request,b.maxJsonSize),providerRequest:v(a.providerRequest,b.maxJsonSize),providerResponse:v(a.providerResponse,b.maxJsonSize),response:v(a.response,b.maxJsonSize),pxpipe:a.pxpipe||void 0,toolHistory:a.toolHistory||void 0,rtk:a.rtk?{...a.rtk,hits:a.rtk.hits?.slice(0,50)}:void 0}}(d,b);a.run("INSERT INTO requestDetails(id, timestamp, provider, model, connectionId, status, data) VALUES(?, ?, ?, ?, ?, ?, ?) ON CONFLICT(id) DO UPDATE SET timestamp = excluded.timestamp, provider = excluded.provider, model = excluded.model, connectionId = excluded.connectionId, status = excluded.status, data = excluded.data",[c.id,c.timestamp,c.provider,c.model,c.connectionId,c.status,(0,f.s)(c)])}let d=a.get("SELECT timestamp FROM requestDetails ORDER BY timestamp DESC LIMIT 1 OFFSET ?",[Math.max(0,b.maxRecords-1)]);d&&a.run("DELETE FROM requestDetails WHERE timestamp < ?",[d.timestamp])})}let x=null,y=null;async function z(){if(n||0===l.length)return;n=!0;let a=null;try{for(;l.length>0;){let b=l.splice(0,l.length);try{let a=await (0,e.c)(),c=await k();x=a,y=c,w(a,c,b)}catch(c){a=c,l.unshift(...b);break}}}finally{n=!1}a&&console.error("[requestDetailsRepo] Batch write failed:",a)}async function A(a){let b=await k();if(!b.enabled)return;y=b;try{(0,e.c)().then(a=>{x=a},()=>{})}catch{}let c=function(a,b){if(!a||"object"!=typeof a)return a;let c={...a};return c.request?.headers&&(c.request={...c.request,headers:function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","x-switchboard-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(c.request.headers)}),c.request=v(s(c.request),b),c.providerRequest=v(s(c.providerRequest),b),c.providerResponse=v(s(c.providerResponse),b),c.response=v(s(c.response),b),c.body&&(c.body=v(s(c.body),b)),c.raw&&(c.raw=v(s(c.raw),b)),c}(a,b.maxJsonSize);if(l.length>=b.maxBuffer){l.shift(),p++,q++;let a=Date.now();a-o>6e4&&(console.warn(`[requestDetailsRepo] observability buffer full (${b.maxBuffer}); dropped ${p} record(s). Raise OBSERVABILITY_MAX_BUFFER or lower OBSERVABILITY_FLUSH_INTERVAL_MS.`),o=a,p=0)}l.push(c),l.length>=b.batchSize?(m&&(clearTimeout(m),m=null),z().catch(a=>console.error("[requestDetailsRepo] flush err:",a))):m||(m=setTimeout(()=>{m=null,z().catch(()=>{})},b.flushIntervalMs))}let B=async()=>{m&&(clearTimeout(m),m=null),l.length>0&&await z()},C="__switchboardRequestDetailsBeforeExitHandler",D="__switchboardRequestDetailsSyncFlushUnregister";(d=globalThis[C])&&process.off("beforeExit",d),globalThis[C]=B,process.on("beforeExit",B);try{let a=globalThis[D];if("function"==typeof a)try{a()}catch{}globalThis[D]=(0,g.H)(function(){if(0===l.length)return 0;let a=x,b=y;if(!a||!b)return 0;try{m&&(clearTimeout(m),m=null);let c=l.splice(0,l.length);try{w(a,b,c)}catch{return l.unshift(...c),0}return c.length}catch{return 0}},{flush:!0})}catch{}},19016:(a,b,c)=>{"use strict";c.d(b,{$U:()=>d,pb:()=>e,uB:()=>f});let d="data: [DONE]\n\n",e={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"},f={"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}},19071:(a,b,c)=>{"use strict";let{kConnected:d,kPending:e,kRunning:f,kSize:g,kFree:h,kQueued:i}=c(49176);class j{constructor(a){this.connected=a[d],this.pending=a[e],this.running=a[f],this.size=a[g]}}class k{constructor(a){this.connected=a[d],this.free=a[h],this.pending=a[e],this.queued=a[i],this.running=a[f],this.size=a[g]}}a.exports={ClientStats:j,PoolStats:k}},19396:(a,b,c)=>{var d=c(45654);c(33889),d.cipher=d.cipher||{};var e=a.exports=d.cipher.modes=d.cipher.modes||{};function f(a,b){if("string"==typeof a&&(a=d.util.createBuffer(a)),d.util.isArray(a)&&a.length>4){var c=a;a=d.util.createBuffer();for(var e=0;e<c.length;++e)a.putByte(c[e])}if(a.length()<b)throw Error("Invalid IV length; got "+a.length()+" bytes and expected "+b+" bytes.");if(!d.util.isArray(a)){for(var f=[],g=b/4,e=0;e<g;++e)f.push(a.getInt32());a=f}return a}function g(a){a[a.length-1]=a[a.length-1]+1|0}function h(a){return[a/0x100000000|0,0|a]}e.ecb=function(a){a=a||{},this.name="ECB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints)},e.ecb.prototype.start=function(a){},e.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d])},e.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d])},e.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();return a.fillWithByte(c,c),!0},e.ecb.prototype.unpad=function(a,b){if(b.overflow>0)return!1;var c=a.length(),d=a.at(c-1);return!(d>this.blockSize<<2)&&(a.truncate(d),!0)},e.cbc=function(a){a=a||{},this.name="CBC",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints)},e.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=f(a.iv,this.blockSize),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.")},e.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=this._prev[d]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d]);this._prev=this._outBlock},e.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._prev[d]^this._outBlock[d]);this._prev=this._inBlock.slice(0)},e.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();return a.fillWithByte(c,c),!0},e.cbc.prototype.unpad=function(a,b){if(b.overflow>0)return!1;var c=a.length(),d=a.at(c-1);return!(d>this.blockSize<<2)&&(a.truncate(d),!0)},e.cfb=function(a){a=a||{},this.name="CFB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)this._inBlock[e]=a.getInt32()^this._outBlock[e],b.putInt32(this._inBlock[e]);return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialBlock[e]=a.getInt32()^this._outBlock[e],this._partialOutput.putInt32(this._partialBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._partialBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)this._inBlock[e]=a.getInt32(),b.putInt32(this._inBlock[e]^this._outBlock[e]);return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialBlock[e]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[e]^this._outBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._partialBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.ofb=function(a){a=a||{},this.name="OFB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]),this._inBlock[e]=this._outBlock[e];return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._outBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.ofb.prototype.decrypt=e.ofb.prototype.encrypt,e.ctr=function(a){a=a||{},this.name="CTR",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.ctr.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize)for(var e=0;e<this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f>0&&(a.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0}g(this._inBlock)},e.ctr.prototype.decrypt=e.ctr.prototype.encrypt,e.gcm=function(a){a=a||{},this.name="GCM",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0,this._R=0xe1000000},e.gcm.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");var b,c=d.util.createBuffer(a.iv);if(this._cipherLength=0,b="additionalData"in a?d.util.createBuffer(a.additionalData):d.util.createBuffer(),"tagLength"in a?this._tagLength=a.tagLength:this._tagLength=128,this._tag=null,a.decrypt&&(this._tag=d.util.createBuffer(a.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints),this.tag=null,this._hashSubkey=Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var e=c.length();if(12===e)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];c.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(h(8*e)))}this._inBlock=this._j0.slice(0),g(this._inBlock),this._partialBytes=0,b=d.util.createBuffer(b),this._aDataLength=h(8*b.length());var f=b.length()%this.blockSize;for(f&&b.fillWithByte(0,this.blockSize-f),this._s=[0,0,0,0];b.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()])},e.gcm.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f<=0||c){if(c){var h=d%this.blockSize;this._cipherLength+=h,this._partialOutput.truncate(this.blockSize-h)}else this._cipherLength+=this.blockSize;for(var e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),g(this._inBlock)},e.gcm.prototype.decrypt=function(a,b,c){var d=a.length();if(d<this.blockSize&&!(c&&d>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),g(this._inBlock),this._hashBlock[0]=a.getInt32(),this._hashBlock[1]=a.getInt32(),this._hashBlock[2]=a.getInt32(),this._hashBlock[3]=a.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^this._hashBlock[e]);d<this.blockSize?this._cipherLength+=d%this.blockSize:this._cipherLength+=this.blockSize},e.gcm.prototype.afterFinish=function(a,b){var c=!0;b.decrypt&&b.overflow&&a.truncate(this.blockSize-b.overflow),this.tag=d.util.createBuffer();var e=this._aDataLength.concat(h(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,e);var f=[];this.cipher.encrypt(this._j0,f);for(var g=0;g<this._ints;++g)this.tag.putInt32(this._s[g]^f[g]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),b.decrypt&&this.tag.bytes()!==this._tag&&(c=!1),c},e.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),e=0;e<128;++e)a[e/32|0]&1<<31-e%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c},e.gcm.prototype.pow=function(a,b){for(var c=1&a[3],d=3;d>0;--d)b[d]=a[d]>>>1|(1&a[d-1])<<31;b[0]=a[0]>>>1,c&&(b[0]^=this._R)},e.gcm.prototype.tableMultiply=function(a){for(var b=[0,0,0,0],c=0;c<32;++c){var d=a[c/8|0]>>>(7-c%8)*4&15,e=this._m[c][d];b[0]^=e[0],b[1]^=e[1],b[2]^=e[2],b[3]^=e[3]}return b},e.gcm.prototype.ghash=function(a,b,c){return b[0]^=c[0],b[1]^=c[1],b[2]^=c[2],b[3]^=c[3],this.tableMultiply(b)},e.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,e=16*c,f=Array(e),g=0;g<e;++g){var h=[0,0,0,0],i=g/d|0,j=(d-1-g%d)*b;h[i]=1<<b-1<<j,f[g]=this.generateSubHashTable(this.multiply(h,a),b)}return f},e.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,d=c>>>1,e=Array(c);e[d]=a.slice(0);for(var f=d>>>1;f>0;)this.pow(e[2*f],e[f]=[]),f>>=1;for(f=2;f<d;){for(var g=1;g<f;++g){var h=e[f],i=e[g];e[f+g]=[h[0]^i[0],h[1]^i[1],h[2]^i[2],h[3]^i[3]]}f*=2}for(e[0]=[0,0,0,0],f=d+1;f<c;++f){var j=e[f^d];e[f]=[a[0]^j[0],a[1]^j[1],a[2]^j[2],a[3]^j[3]]}return e}},19431:(a,b,c)=>{"use strict";let d=c(34589),{Readable:e}=c(57075),f=c(84285),g=c(89409),h=c(38650),i=c(56698),{assertCacheStore:j,assertCacheMethods:k,getInterceptorOrigin:l,makeCacheKey:m,normalizeHeaders:n,parseCacheControlHeader:o,isInvalidOrWildcardVaryHeader:p,parseVaryHeader:q}=c(79468),{AbortError:r}=c(61448),{parseHttpDate:s}=c(24214),t=()=>{};function u(a,b){for(let c=0;c<a.length;c++)if(a[c]===b)return!0;return!1}function v(a,b){return a.cacheControlDirectives?.["must-revalidate"]===!0||"shared"===b&&(a.cacheControlDirectives?.["proxy-revalidate"]===!0||a.cacheControlDirectives?.["s-maxage"]!==void 0)}function w(a,b){try{a.delete(b)?.catch?.(t)}catch{}}function x(a,b){let c={...a.headers,"if-modified-since":function(a){let b=a?.["last-modified"];if("string"==typeof b&&s(b))return b}(b.headers)??new Date(b.cachedAt).toUTCString()};if(b.etag&&(c["if-none-match"]=b.etag),b.vary)for(let a in b.vary)null!=b.vary[a]&&(c[a]=b.vary[a]);return c}function y(a,b,c,d,e,f){if(f?.["only-if-cached"]){let a=!1,b={paused:!1,rawHeaders:[],rawTrailers:[],pause(){this.paused=!0},resume(){this.paused=!1},abort:c=>{a=!0,d.onResponseError?.(b,c??new r)}};try{if(d.onRequestStart?.(b,null),a||(d.onResponseStart?.(b,504,{},"Gateway Timeout"),a))return;d.onResponseEnd?.(b,{})}catch(a){"function"==typeof d.onResponseError&&d.onResponseError(b,a)}return!0}return a(e,new g(b,c,d))}function z(a,b,c,g,h,i){let j=f.isStream(c.body)?c.body:e.from(c.body??[]);d(!j.destroyed,"stream should not be destroyed"),d(!j.readableDidRead,"stream should not be readableDidRead");let k=!1,l={rawHeaders:[],rawTrailers:[],resume(){j.resume()},pause(){j.pause()},get paused(){return j.isPaused()},get aborted(){return k},get reason(){return j.errored},abort(a){k=!0,j.destroy(a??new r)}};if(j.on("error",function(b){if(!this.readableEnded)if("function"==typeof a.onResponseError)a.onResponseError(l,b);else throw b}).on("close",function(){this.errored||a.onResponseEnd?.(l,{})}),a.onRequestStart?.(l,h),j.destroyed)return;let m={...c.headers,age:String(g)};i&&(m.warning='110 - "response is stale"'),l.rawHeaders=f.toRawHeaders(m),a.onResponseStart?.(l,c.statusCode,m,c.statusMessage),"HEAD"===b.method?j.destroy():j.on("data",function(b){a.onResponseData?.(l,b)})}function A(a,b,c,d,e,h,j){var k,l,m,n,r;let s;if(!j)return y(a,b,c,d,e,h);if("shared"===b.type&&Object.hasOwn(j.headers,"set-cookie"))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),y(a,b,c,d,e,h);let u=Date.now();if(u>j.deleteAt)return a(e,new g(b,c,d));let A=Math.round((u-j.cachedAt)/1e3),B=h?.["max-age"]!==void 0&&A>=h["max-age"],C=B||(k=j,l=h,m=b.type,(s=Date.now())>k.staleAt?!(!v(k,m)&&l?.["max-stale"])||s>k.staleAt+1e3*l["max-stale"]:!!l?.["min-fresh"]&&k.staleAt-s<=1e3*l["min-fresh"]),D=B||function(a,b,{headers:c={}}){return!!(b?.["no-cache"]||a.cacheControlDirectives?.["no-cache"]&&!Array.isArray(a.cacheControlDirectives["no-cache"]))||!!c["if-modified-since"]||!!c["if-none-match"]}(j,h,e);if(C||D){let k;if(f.isStream(e.body)&&0!==f.bodyLength(e.body))return a(e,new g(b,c,d));if(!D&&(n=j,r=b.type,!(!(k=n.cacheControlDirectives?.["stale-while-revalidate"])||v(n,r))&&Date.now()<=n.staleAt+1e3*k))return z(d,e,j,A,null,!0),queueMicrotask(()=>{let d=x(e,j);a({...e,headers:d},new g(b,c,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let l=!1;if(!v(j,b.type)){let a=j.cacheControlDirectives["stale-if-error"]??h?.["stale-if-error"];a&&(l=u<j.staleAt+1e3*a)}let m=x(e,j);return a({...e,headers:m},new i((h,i,k,l)=>{if(h){if(304===k){if(function(a,b){if(b.vary&&p(b.vary)||"shared"===a&&Object.hasOwn(b,"set-cookie"))return!0;let c=b["cache-control"];if(!c)return!1;let d=o(c);return!0===d["no-store"]||"shared"===a&&!0===d.private}(b.type,l))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),a(e,new g(b,c,d));if(void 0!==l["cache-control"])w(b.store,c);else if(function(a,b){if(!b)return!1;for(let c in b)if(null==a.vary||!Object.hasOwn(a.vary,c))return!0;return!1}(j,l.vary?q(l.vary,e.headers):void 0))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),a(e,new g(b,c,d))}z(d,e,j,A,i,C)}else f.isStream(j.body)&&j.body.on("error",t).destroy()},new g(b,c,d),l))}f.isStream(e.body)&&e.body.on("error",t).destroy(),z(d,e,j,A,null,!1)}a.exports=(a={})=>{let{store:b=new h,methods:c=["GET"],cacheByDefault:d,type:e="shared",origins:i}=a;if("object"!=typeof a||null===a)throw TypeError(`expected type of opts to be an Object, got ${null===a?"null":typeof a}`);j(b,"opts.store"),k(c,"opts.methods");var p="opts.origins";if(void 0!==i){if(!Array.isArray(i))throw TypeError(`expected ${p} to be an array or undefined, got ${typeof i}`);for(let a=0;a<i.length;a++){let b=i[a];if("string"!=typeof b&&!(b instanceof RegExp))throw TypeError(`expected ${p}[${a}] to be a string or RegExp, got ${typeof b}`)}}if(void 0!==d&&"number"!=typeof d)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof d}`);if(void 0!==e&&"shared"!==e&&"private"!==e)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof e}`);let q={store:b,methods:c,cacheByDefault:d,type:e},r=[];for(let a=0;a<f.safeHTTPMethods.length;a++){let b=f.safeHTTPMethods[a];u(c,b)||r.push(b)}return(a,c)=>(d,e)=>{let h=l(d,c);if(!h||u(r,d.method))return a(d,e);if(void 0!==i){let b=h.toString().toLowerCase(),c=!1;for(let a=0;a<i.length;a++){let d=i[a];if("string"==typeof d){if(d.toLowerCase()===b){c=!0;break}}else if(d.test(b)){c=!0;break}}if(!c)return a(d,e)}d={...d,headers:n(d)};let j=d.headers?.["cache-control"]?o(d.headers["cache-control"]):!function(a){let b=a?.pragma;if(!b)return!1;let c=Array.isArray(b)?b:[b];for(let a=0;a<c.length;a++){let b=c[a];if("string"!=typeof b)continue;let d=b.split(",");for(let a=0;a<d.length;a++)if("no-cache"===d[a].replace(/^[\t ]+|[\t ]+$/g,"").toLowerCase())return!0}return!1}(d.headers)?void 0:{"no-cache":!0};if(j?.["no-store"])return a(d,e);let k=m(d,h);if(!u(f.safeHTTPMethods,d.method))return a(d,new g(q,k,e));let p=b.get(k);return p&&"function"==typeof p.then?p.then(b=>A(a,q,k,e,d,j,b)):A(a,q,k,e,d,j,p)}}},19608:a=>{"use strict";let b=["GET","HEAD","POST"],c=new Set(b),d=[301,302,303,307,308],e=new Set(d),f=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],g=new Set(f),h=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],i=["",...h],j=new Set(h),k=["GET","HEAD","OPTIONS","TRACE","QUERY"],l=new Set(k),m=["CONNECT","TRACE","TRACK"],n=new Set(m),o=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],p=new Set(o);a.exports={subresource:o,forbiddenMethods:m,requestBodyHeader:["content-encoding","content-language","content-location","content-type","content-length"],referrerPolicy:i,requestRedirect:["follow","manual","error"],requestMode:["navigate","same-origin","no-cors","cors"],requestCredentials:["omit","same-origin","include"],requestCache:["default","no-store","reload","no-cache","force-cache","only-if-cached"],redirectStatus:d,corsSafeListedMethods:b,nullBodyStatus:[101,204,205,304],safeMethods:k,badPorts:f,requestDuplex:["half"],subresourceSet:p,badPortsSet:g,redirectStatusSet:e,corsSafeListedMethodsSet:c,safeMethodsSet:l,forbiddenMethodsSet:n,referrerPolicyTokens:j}},19659:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/catalog.fb7b1b70.json"},20012:(a,b,c)=>{"use strict";c.d(b,{Tl:()=>l});var d=c(63971),e=c(50969),f=c(38528);let g={usageUrl:(0,f.U)("codex").url,resetCreditsUrl:(0,f.U)("codex").resetCreditsUrl,resetCreditsConsumeUrl:(0,f.U)("codex").resetCreditsConsumeUrl};function h(a){return a?.workspaceId||a?.accountId||a?.chatgptAccountId||null}function i(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function j(a){let b=(0,d.Gv)(a?.used_percent??a?.percent_used),c=null!==b&&b>=0?b:null,e=(0,d.Gv)(a?.limit_window_seconds);return{used:c,total:100,remaining:null===c?null:Math.max(0,100-c),...e>0?{windowSeconds:e,displayName:18e3===e?"Session (5h)":604800===e?"Weekly (7d)":`Window (${e/3600}h)`}:{},resetAt:(0,f.eZ)(a?.reset_at??a?.resets_at??a?.resetAt??null)||((0,d.Gv)(a?.reset_after_seconds)>0?new Date(Date.now()+1e3*(0,d.Gv)(a.reset_after_seconds)).toISOString():null),unlimited:!1}}function k(a,b,c){let d=i(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=j(e),!0===d.limit_reached&&(a[b?`${b}_session`:"session"].blocked=!0),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=j(f),!0===d.limit_reached&&(a[b?`${b}_weekly`:"weekly"].blocked=!0),g=!0),g}async function l(a,b=null,c=null){try{let d=await (0,e.Fm)(g.usageUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json",...h(c)?{"ChatGPT-Account-ID":h(c)}:{}},identity:"codex-cli",provider:"codex",format:"codex"},b);if(!d.ok)return{message:`Codex connected. Usage API temporarily unavailable (${d.status}).`};let j=await d.json(),l=j.rate_limit||j.rate_limits||j.rate_limits_by_limit_id?.codex||{},m=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(j),n=Math.max(0,(0,f.IQ)(j.rate_limit_reset_credits?.available_count,0)),o={};for(let a of(k(o,"",l),k(o,"review",m),Array.isArray(j.additional_rate_limits)?j.additional_rate_limits:[])){if(a===m)continue;let b=a.limit_name||a.metered_feature||a.id;"string"==typeof b&&b&&k(o,b,a)}for(let[a,b]of Object.entries(j.rate_limits_by_limit_id||{}))"codex"!==a&&b!==m&&k(o,a,b);for(let[a,b]of Object.entries(o))b.displayName&&"session"!==a&&"weekly"!==a&&(b.displayName=`${a.replace(/_(session|weekly)$/,"")} \xb7 ${b.displayName}`);return{plan:j.plan_type||j.summary?.plan||"unknown",limitReached:i(l)?.limit_reached||!1,reviewLimitReached:i(m)?.limit_reached||!1,resetCredits:{availableCount:n},quotas:o}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}},20096:a=>{var b={};a.exports=b;var c={};b.encode=function(a,b,c){if("string"!=typeof b)throw TypeError('"alphabet" must be a string.');if(void 0!==c&&"number"!=typeof c)throw TypeError('"maxline" must be a number.');var d="";if(a instanceof Uint8Array){var e=0,f=b.length,g=b.charAt(0),h=[0];for(e=0;e<a.length;++e){for(var i=0,j=a[e];i<h.length;++i)j+=h[i]<<8,h[i]=j%f,j=j/f|0;for(;j>0;)h.push(j%f),j=j/f|0}for(e=0;0===a[e]&&e<a.length-1;++e)d+=g;for(e=h.length-1;e>=0;--e)d+=b[h[e]]}else d=function(a,b){var c=0,d=b.length,e=b.charAt(0),f=[0];for(c=0;c<a.length();++c){for(var g=0,h=a.at(c);g<f.length;++g)h+=f[g]<<8,f[g]=h%d,h=h/d|0;for(;h>0;)f.push(h%d),h=h/d|0}var i="";for(c=0;0===a.at(c)&&c<a.length()-1;++c)i+=e;for(c=f.length-1;c>=0;--c)i+=b[f[c]];return i}(a,b);if(c){var k=RegExp(".{1,"+c+"}","g");d=d.match(k).join("\r\n")}return d},b.decode=function(a,b){if("string"!=typeof a)throw TypeError('"input" must be a string.');if("string"!=typeof b)throw TypeError('"alphabet" must be a string.');var d=c[b];if(!d){d=c[b]=[];for(var e=0;e<b.length;++e)d[b.charCodeAt(e)]=e}a=a.replace(/\s/g,"");for(var f=b.length,g=b.charAt(0),h=[0],e=0;e<a.length;e++){var i=d[a.charCodeAt(e)];if(void 0===i)return;for(var j=0,k=i;j<h.length;++j)k+=h[j]*f,h[j]=255&k,k>>=8;for(;k>0;)h.push(255&k),k>>=8}for(var l=0;a[l]===g&&l<a.length-1;++l)h.push(0);return"u">typeof Buffer?Buffer.from(h.reverse()):new Uint8Array(h.reverse())}},20308:(a,b,c)=>{var d=c(45654);if(c(45518),c(63070),c(88819),c(1277),c(36105),c(70710),c(49345),c(29984),c(67382),c(10401),c(33889),void 0===e)var e=d.jsbn.BigInteger;var f=d.asn1,g=d.pki=d.pki||{};a.exports=g.pbe=d.pbe=d.pbe||{};var h=g.oids,i={name:"EncryptedPrivateKeyInfo",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},j={name:"PBES2Algorithms",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},k={name:"pkcs-12PbeParams",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"iterations"}]};function l(a,b){return a.start().update(b).digest().getBytes()}function m(a){var b;if(a){if(!(b=g.oids[f.derToOid(a)])){var c=Error("Unsupported PRF OID.");throw c.oid=a,c.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],c}}else b="hmacWithSHA1";return n(b)}function n(a){var b=d.md;switch(a){case"hmacWithSHA224":b=d.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":a=a.substr(8).toLowerCase();break;default:var c=Error("Unsupported PRF algorithm.");throw c.algorithm=a,c.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],c}if(!b||!(a in b))throw Error("Unknown hash algorithm: "+a);return b[a].create()}g.encryptPrivateKeyInfo=function(a,b,c){(c=c||{}).saltSize=c.saltSize||8,c.count=c.count||2048,c.algorithm=c.algorithm||"aes128",c.prfAlgorithm=c.prfAlgorithm||"sha1";var e=d.random.getBytesSync(c.saltSize),i=c.count,j=f.integerToDer(i);if(0===c.algorithm.indexOf("aes")||"des"===c.algorithm){switch(c.algorithm){case"aes128":q=16,t=16,u=h["aes128-CBC"],v=d.aes.createEncryptionCipher;break;case"aes192":q=24,t=16,u=h["aes192-CBC"],v=d.aes.createEncryptionCipher;break;case"aes256":q=32,t=16,u=h["aes256-CBC"],v=d.aes.createEncryptionCipher;break;case"des":q=8,t=8,u=h.desCBC,v=d.des.createEncryptionCipher;break;default:var k,l,m,o,p,q,r,s,t,u,v,w=Error("Cannot encrypt private key. Unknown encryption algorithm.");throw w.algorithm=c.algorithm,w}var x="hmacWith"+c.prfAlgorithm.toUpperCase(),y=n(x),z=d.pkcs5.pbkdf2(b,e,i,q,y),A=d.random.getBytesSync(t),B=v(z);B.start(A),B.update(f.toDer(a)),B.finish(),s=B.output.getBytes();var C=(k=e,l=j,m=q,o=x,p=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,k),f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,l.getBytes())]),"hmacWithSHA1"!==o&&p.value.push(f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,d.util.hexToBytes(m.toString(16))),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.oids[o]).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.NULL,!1,"")])),p);r=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h.pkcs5PBES2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h.pkcs5PBKDF2).getBytes()),C]),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(u).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,A)])])])}else if("3des"===c.algorithm){q=24;var D=new d.util.ByteBuffer(e),z=g.pbe.generatePkcs12Key(b,D,1,i,q),A=g.pbe.generatePkcs12Key(b,D,2,i,q),B=d.des.createEncryptionCipher(z);B.start(A),B.update(f.toDer(a)),B.finish(),s=B.output.getBytes(),r=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,e),f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,j.getBytes())])])}else{var w=Error("Cannot encrypt private key. Unknown encryption algorithm.");throw w.algorithm=c.algorithm,w}return f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[r,f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,s)])},g.decryptPrivateKeyInfo=function(a,b){var c=null,e={},h=[];if(!f.validate(a,i,e,h)){var j=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw j.errors=h,j}var k=f.derToOid(e.encryptionOid),l=g.pbe.getCipher(k,e.encryptionParams,b),m=d.util.createBuffer(e.encryptedData);return l.update(m),l.finish()&&(c=f.fromDer(l.output)),c},g.encryptedPrivateKeyToPem=function(a,b){var c={type:"ENCRYPTED PRIVATE KEY",body:f.toDer(a).getBytes()};return d.pem.encode(c,{maxline:b})},g.encryptedPrivateKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return f.fromDer(b.body)},g.encryptRsaPrivateKey=function(a,b,c){if(!(c=c||{}).legacy){var e,h,i,j,k=g.wrapRsaPrivateKey(g.privateKeyToAsn1(a));return k=g.encryptPrivateKeyInfo(k,b,c),g.encryptedPrivateKeyToPem(k)}switch(c.algorithm){case"aes128":e="AES-128-CBC",i=16,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"aes192":e="AES-192-CBC",i=24,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"aes256":e="AES-256-CBC",i=32,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"3des":e="DES-EDE3-CBC",i=24,h=d.random.getBytesSync(8),j=d.des.createEncryptionCipher;break;case"des":e="DES-CBC",i=8,h=d.random.getBytesSync(8),j=d.des.createEncryptionCipher;break;default:var l=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+c.algorithm+'".');throw l.algorithm=c.algorithm,l}var m=j(d.pbe.opensslDeriveBytes(b,h.substr(0,8),i));m.start(h),m.update(f.toDer(g.privateKeyToAsn1(a))),m.finish();var n={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:e,parameters:d.util.bytesToHex(h).toUpperCase()},body:m.output.getBytes()};return d.pem.encode(n)},g.decryptRsaPrivateKey=function(a,b){var c=null,e=d.pem.decode(a)[0];if("ENCRYPTED PRIVATE KEY"!==e.type&&"PRIVATE KEY"!==e.type&&"RSA PRIVATE KEY"!==e.type){var h=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw h.headerType=h,h}if(e.procType&&"ENCRYPTED"===e.procType.type){switch(e.dekInfo.algorithm){case"DES-CBC":i=8,j=d.des.createDecryptionCipher;break;case"DES-EDE3-CBC":i=24,j=d.des.createDecryptionCipher;break;case"AES-128-CBC":i=16,j=d.aes.createDecryptionCipher;break;case"AES-192-CBC":i=24,j=d.aes.createDecryptionCipher;break;case"AES-256-CBC":i=32,j=d.aes.createDecryptionCipher;break;case"RC2-40-CBC":i=5,j=function(a){return d.rc2.createDecryptionCipher(a,40)};break;case"RC2-64-CBC":i=8,j=function(a){return d.rc2.createDecryptionCipher(a,64)};break;case"RC2-128-CBC":i=16,j=function(a){return d.rc2.createDecryptionCipher(a,128)};break;default:var i,j,h=Error('Could not decrypt private key; unsupported encryption algorithm "'+e.dekInfo.algorithm+'".');throw h.algorithm=e.dekInfo.algorithm,h}var k=d.util.hexToBytes(e.dekInfo.parameters),l=j(d.pbe.opensslDeriveBytes(b,k.substr(0,8),i));if(l.start(k),l.update(d.util.createBuffer(e.body)),!l.finish())return c;c=l.output.getBytes()}else c=e.body;return null!==(c="ENCRYPTED PRIVATE KEY"===e.type?g.decryptPrivateKeyInfo(f.fromDer(c),b):f.fromDer(c))&&(c=g.privateKeyFromAsn1(c)),c},g.pbe.generatePkcs12Key=function(a,b,c,e,f,g){if(null==g){if(!("sha1"in d.md))throw Error('"sha1" hash algorithm unavailable.');g=d.md.sha1.create()}var h,i,j=g.digestLength,k=g.blockLength,l=new d.util.ByteBuffer,m=new d.util.ByteBuffer;if(null!=a){for(i=0;i<a.length;i++)m.putInt16(a.charCodeAt(i));m.putInt16(0)}var n=m.length(),o=b.length(),p=new d.util.ByteBuffer;p.fillWithByte(c,k);var q=k*Math.ceil(o/k),r=new d.util.ByteBuffer;for(i=0;i<q;i++)r.putByte(b.at(i%o));var s=k*Math.ceil(n/k),t=new d.util.ByteBuffer;for(i=0;i<s;i++)t.putByte(m.at(i%n));var u=r;u.putBuffer(t);for(var v=Math.ceil(f/j),w=1;w<=v;w++){var x=new d.util.ByteBuffer;x.putBytes(p.bytes()),x.putBytes(u.bytes());for(var y=0;y<e;y++)g.start(),g.update(x.getBytes()),x=g.digest();var z=new d.util.ByteBuffer;for(i=0;i<k;i++)z.putByte(x.at(i%j));var A=Math.ceil(o/k)+Math.ceil(n/k),B=new d.util.ByteBuffer;for(h=0;h<A;h++){var C=new d.util.ByteBuffer(u.getBytes(k)),D=511;for(i=z.length()-1;i>=0;i--)D>>=8,D+=z.at(i)+C.at(i),C.setAt(i,255&D);B.putBuffer(C)}u=B,l.putBuffer(x)}return l.truncate(l.length()-f),l},g.pbe.getCipher=function(a,b,c){switch(a){case g.oids.pkcs5PBES2:return g.pbe.getCipherForPBES2(a,b,c);case g.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case g.oids["pbewithSHAAnd40BitRC2-CBC"]:return g.pbe.getCipherForPKCS12PBE(a,b,c);default:var d=Error("Cannot read encrypted PBE data block. Unsupported OID.");throw d.oid=a,d.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],d}},g.pbe.getCipherForPBES2=function(a,b,c){var e,h,i={},k=[];if(!f.validate(b,j,i,k)){var l=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw l.errors=k,l}if((a=f.derToOid(i.kdfOid))!==g.oids.pkcs5PBKDF2){var l=Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw l.oid=a,l.supportedOids=["pkcs5PBKDF2"],l}if((a=f.derToOid(i.encOid))!==g.oids["aes128-CBC"]&&a!==g.oids["aes192-CBC"]&&a!==g.oids["aes256-CBC"]&&a!==g.oids["des-EDE3-CBC"]&&a!==g.oids.desCBC){var l=Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw l.oid=a,l.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],l}var n=i.kdfSalt,o=d.util.createBuffer(i.kdfIterationCount);switch(o=o.getInt(o.length()<<3),g.oids[a]){case"aes128-CBC":e=16,h=d.aes.createDecryptionCipher;break;case"aes192-CBC":e=24,h=d.aes.createDecryptionCipher;break;case"aes256-CBC":e=32,h=d.aes.createDecryptionCipher;break;case"des-EDE3-CBC":e=24,h=d.des.createDecryptionCipher;break;case"desCBC":e=8,h=d.des.createDecryptionCipher}var p=m(i.prfOid),q=d.pkcs5.pbkdf2(c,n,o,e,p),r=i.encIv,s=h(q);return s.start(r),s},g.pbe.getCipherForPKCS12PBE=function(a,b,c){var e,h,i,j={},l=[];if(!f.validate(b,k,j,l)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw n.errors=l,n}var o=d.util.createBuffer(j.salt),p=d.util.createBuffer(j.iterations);switch(p=p.getInt(p.length()<<3),a){case g.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:e=24,h=8,i=d.des.startDecrypting;break;case g.oids["pbewithSHAAnd40BitRC2-CBC"]:e=5,h=8,i=function(a,b){var c=d.rc2.createDecryptionCipher(a,40);return c.start(b,null),c};break;default:var n=Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw n.oid=a,n}var q=m(j.prfOid),r=g.pbe.generatePkcs12Key(c,o,1,p,e,q);return q.start(),i(r,g.pbe.generatePkcs12Key(c,o,2,p,h,q))},g.pbe.opensslDeriveBytes=function(a,b,c,e){if(null==e){if(!("md5"in d.md))throw Error('"md5" hash algorithm unavailable.');e=d.md.md5.create()}null===b&&(b="");for(var f=[l(e,a+b)],g=16,h=1;g<c;++h,g+=16)f.push(l(e,f[h-1]+a+b));return f.join("").substr(0,c)}},20437:(a,b,c)=>{"use strict";c.d(b,{AL:()=>j,HG:()=>i,Jh:()=>m,KQ:()=>k,Or:()=>l,ok:()=>h.ok});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(53859);let i=e().join(h.nJ,"db"),j=e().join(i,"data.sqlite"),k=e().join(i,"backups"),l={main:e().join(h.nJ,"db.json"),usage:e().join(h.nJ,"usage.json"),disabled:e().join(h.nJ,"disabledModels.json"),details:e().join(h.nJ,"request-details.json")};function m(){for(let a of[h.nJ,i,k])g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}},20579:(a,b,c)=>{"use strict";let d,{Writable:e}=c(57075),{assertCacheKey:f,assertCacheValue:g}=c(79468);a.exports=class{#g=2e9;#h=1/0;#i;#j;#k;#l;#m;#n;#o;#p;constructor(a){if(a){if("object"!=typeof a)throw TypeError("SqliteCacheStore options must be an object");if(void 0!==a.maxEntrySize){if("number"!=typeof a.maxEntrySize||!Number.isInteger(a.maxEntrySize)||a.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(a.maxEntrySize>2e9)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#g=a.maxEntrySize}if(void 0!==a.maxCount){if("number"!=typeof a.maxCount||!Number.isInteger(a.maxCount)||a.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#h=a.maxCount}}d||(d=c(79868).DatabaseSync),this.#i=new d(a?.location??":memory:"),this.#i.exec(`
|
|
37
|
+
`}},18184:(a,b,c)=>{"use strict";function d({id:a,created:b,model:c},e,f=null){return{id:a,object:"chat.completion.chunk",created:b,model:c,choices:[{index:0,delta:e,finish_reason:f}]}}c.d(b,{k:()=>d})},18205:(a,b,c)=>{"use strict";c.d(b,{D:()=>f});var d=c(46248),e=c(38421);class f extends d.L{constructor(){super("ollama-local")}buildUrl(a,b,c=0,d=null){return`${(0,e.Ak)(d)}/api/chat`}}},18586:(a,b,c)=>{"use strict";c.d(b,{au:()=>m});var d=c(52655);let e="<|tool▁calls▁begin|>",f="<|tool▁call▁begin|>",g="<|tool▁sep|>",h="<|tool▁call▁end|>",i="<|tool▁calls▁end|>",j="<|DSML|tool_calls>",k=/(<|tool▁calls▁begin|>|<|DSML|tool_calls>)/,l=[[/deepseek|composer/i,{name:"deepseek",detect:a=>k.test(a),parse(a){let b=function(a){let b=a.indexOf(e);if(b<0)return null;let c=a.slice(0,b).trim(),j=a.indexOf(i,b),k=j>=0?a.slice(b+e.length,j):a.slice(b+e.length),l=j>=0?a.slice(j+i.length).trim():"",m=[],n=k.split(f).filter(Boolean);for(let a=0;a<n.length;a++){let b=n[a],c=function(a,b){let c=a;c.startsWith(f)&&(c=c.slice(f.length)),c.endsWith(h)&&(c=c.slice(0,-h.length));let e=c.indexOf(g);if(e<0)return null;let i=c.slice(e+g.length),j=i.search(/[\n`]/),k=j>0?i.slice(0,j).trim():i.trim();if(!k)return null;let l="{}",m=i.match(/```(?:json)?\s*\n?([\s\S]*?)\n?```/);if(m)l=m[1].trim();else{let a=i.slice(j>=0?j:0).trim();(a.startsWith("{")||a.startsWith("["))&&(l=a)}try{JSON.parse(l)}catch{l=JSON.stringify({_raw:l})}return{id:(0,d.J4)(0,b,k),type:"function",function:{name:k,arguments:l}}}(b=f+b,a);c&&m.push(c)}return 0===m.length?null:{content:[c,l].filter(Boolean).join("\n").trim()||null,toolCalls:m}}(a);if(b)return b;let c=function(a){let b,c=a.indexOf(j);if(c<0)return null;let e=a.slice(0,c).trim(),f=a.slice(c+j.length);if(f.length>5e5)return null;let g=/<|DSML|invoke\s+name="([^"]+)">([\s\S]*?)(?:<\/|DSML|invoke>|$)/g,h=/<|DSML|parameter\s+name="([^"]+)"\s+string="(true|false)">([\s\S]*?)(?=<|DSML|parameter|<\/|DSML|invoke>|$)/g,i=[];for(;null!==(b=g.exec(f));){let a,c=b[1],e=b[2],f={};for(h.lastIndex=0;null!==(a=h.exec(e));){let b=a[1],c="true"===a[2],d=a[3].trim();if(c)f[b]=d;else try{f[b]=JSON.parse(d)}catch{f[b]=d}}i.push({id:(0,d.J4)(0,i.length,c),type:"function",function:{name:c,arguments:JSON.stringify(f)}})}return 0===i.length?null:{content:e||null,toolCalls:i}}(a);return c||null}}]];function m(a,b){if(!a||!b)return null;let c=function(a){if(!a)return null;for(let[b,c]of l)if(b.test(a))return c;return null}(b);return c&&c.detect(a)?c.parse(a):null}},18762:(a,b,c)=>{"use strict";c(87350),c(68531),c(17438),c(22268),c(18101),c(73081),c(1031),c(19016),c(39490),c(82703),new TextEncoder},18922:(a,b,c)=>{"use strict";let d;c.d(b,{ox:()=>A,pS:()=>B});var e=c(24081),f=c(50743),g=c(68176),h=c(22268);let i=null,j=0;async function k(){if(i&&Date.now()-j<5e3)return i;try{let{getSettings:a}=await Promise.resolve().then(c.bind(c,45874)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;i={enabled:"boolean"==typeof b.enableObservability?b.enableObservability:d,maxRecords:b.observabilityMaxRecords||parseInt(process.env.OBSERVABILITY_MAX_RECORDS||String(200),10),batchSize:b.observabilityBatchSize||parseInt(process.env.OBSERVABILITY_BATCH_SIZE||String(20),10),flushIntervalMs:b.observabilityFlushIntervalMs||parseInt(process.env.OBSERVABILITY_FLUSH_INTERVAL_MS||String(5e3),10),maxJsonSize:1024*(b.observabilityMaxJsonSize||parseInt(process.env.OBSERVABILITY_MAX_JSON_SIZE||"5",10)),maxBuffer:parseInt(process.env.OBSERVABILITY_MAX_BUFFER||String(5e3),10)||5e3}}catch{i={enabled:!1,maxRecords:200,batchSize:20,flushIntervalMs:5e3,maxJsonSize:5120,maxBuffer:5e3}}return j=Date.now(),i}let l=[],m=null,n=!1,o=0,p=0,q=0,r=new Set(["accesstoken","refreshtoken","idtoken","apikey","copilottoken","cookies","clientsecret","secretaccesskey","authorization","xapikey","xswitchboardkey","cookie","token","password","passwd","secret","bearer","setcookie","xauthtoken"]);function s(a,b=new WeakSet){if(!a||"object"!=typeof a||b.has(a))return a;b.add(a);let c=null;if(Array.isArray(a)){for(let d=0;d<a.length;d++){let e=s(a[d],b);e===a[d]||c||(c=a.slice()),c&&(c[d]=e)}return c||a}for(let[d,e]of Object.entries(a)){let f=r.has(String(d).toLowerCase().replace(/[-_]/g,""))?"[REDACTED]":s(e,b);f===e||c||(c={...a}),c&&(c[d]=f)}return c||a}let t=new WeakMap;function u(a,b,c){if(a&&("object"==typeof a||"function"==typeof a))try{t.set(a,{maxSize:b,result:c})}catch{}return c}function v(a,b){let c;if(null==a)return{};if("object"==typeof a||"function"==typeof a)try{let c=t.get(a);if(c&&c.maxSize===b)return c.result}catch{}try{c=JSON.stringify(a)}catch{let c=String(a).substring(0,200);return u(a,b,{_truncated:!0,_originalSize:c.length,_preview:c,_error:"stringify_failed"})}return((0,h.nx)(a,c.length),c.length>b)?u(a,b,{_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)}):u(a,b,a)}function w(a,b,c){a.transaction(()=>{for(let d of c){let c=function(a,b){var c;let d,e,f;return a.id||(c=a.model,d=new Date().toISOString(),e=Math.random().toString(36).substring(2,8),f=c?c.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown",a.id=`${d}-${e}-${f}`),a.timestamp||(a.timestamp=new Date().toISOString()),{id:a.id,provider:a.provider||null,model:a.model||null,connectionId:a.connectionId||null,timestamp:a.timestamp,status:a.status||null,latency:a.latency||{},tokens:a.tokens||{},request:v(a.request,b.maxJsonSize),providerRequest:v(a.providerRequest,b.maxJsonSize),providerResponse:v(a.providerResponse,b.maxJsonSize),response:v(a.response,b.maxJsonSize),pxpipe:a.pxpipe||void 0,toolHistory:a.toolHistory||void 0,rtk:a.rtk?{...a.rtk,hits:a.rtk.hits?.slice(0,50)}:void 0}}(d,b);a.run("INSERT INTO requestDetails(id, timestamp, provider, model, connectionId, status, data) VALUES(?, ?, ?, ?, ?, ?, ?) ON CONFLICT(id) DO UPDATE SET timestamp = excluded.timestamp, provider = excluded.provider, model = excluded.model, connectionId = excluded.connectionId, status = excluded.status, data = excluded.data",[c.id,c.timestamp,c.provider,c.model,c.connectionId,c.status,(0,f.s)(c)])}let d=a.get("SELECT timestamp FROM requestDetails ORDER BY timestamp DESC LIMIT 1 OFFSET ?",[Math.max(0,b.maxRecords-1)]);d&&a.run("DELETE FROM requestDetails WHERE timestamp < ?",[d.timestamp])})}let x=null,y=null;async function z(){if(n||0===l.length)return;n=!0;let a=null;try{for(;l.length>0;){let b=l.splice(0,l.length);try{let a=await (0,e.c)(),c=await k();x=a,y=c,w(a,c,b)}catch(c){a=c,l.unshift(...b);break}}}finally{n=!1}a&&console.error("[requestDetailsRepo] Batch write failed:",a)}async function A(a){let b=await k();if(!b.enabled)return;y=b;try{(0,e.c)().then(a=>{x=a},()=>{})}catch{}let c=function(a,b){if(!a||"object"!=typeof a)return a;let c={...a};return c.request?.headers&&(c.request={...c.request,headers:function(a){if(!a||"object"!=typeof a)return{};let b=["authorization","x-api-key","x-switchboard-key","cookie","token","api-key"],c={...a};for(let a of Object.keys(c))b.some(b=>a.toLowerCase().includes(b))&&delete c[a];return c}(c.request.headers)}),c.request=v(s(c.request),b),c.providerRequest=v(s(c.providerRequest),b),c.providerResponse=v(s(c.providerResponse),b),c.response=v(s(c.response),b),c.body&&(c.body=v(s(c.body),b)),c.raw&&(c.raw=v(s(c.raw),b)),c}(a,b.maxJsonSize);if(l.length>=b.maxBuffer){l.shift(),p++,q++;let a=Date.now();a-o>6e4&&(console.warn(`[requestDetailsRepo] observability buffer full (${b.maxBuffer}); dropped ${p} record(s). Raise OBSERVABILITY_MAX_BUFFER or lower OBSERVABILITY_FLUSH_INTERVAL_MS.`),o=a,p=0)}l.push(c),l.length>=b.batchSize?(m&&(clearTimeout(m),m=null),z().catch(a=>console.error("[requestDetailsRepo] flush err:",a))):m||(m=setTimeout(()=>{m=null,z().catch(()=>{})},b.flushIntervalMs))}let B=async()=>{m&&(clearTimeout(m),m=null),l.length>0&&await z()},C="__switchboardRequestDetailsBeforeExitHandler",D="__switchboardRequestDetailsSyncFlushUnregister";(d=globalThis[C])&&process.off("beforeExit",d),globalThis[C]=B,process.on("beforeExit",B);try{let a=globalThis[D];if("function"==typeof a)try{a()}catch{}globalThis[D]=(0,g.H)(function(){if(0===l.length)return 0;let a=x,b=y;if(!a||!b)return 0;try{m&&(clearTimeout(m),m=null);let c=l.splice(0,l.length);try{w(a,b,c)}catch{return l.unshift(...c),0}return c.length}catch{return 0}},{flush:!0})}catch{}},19016:(a,b,c)=>{"use strict";c.d(b,{$U:()=>d,pb:()=>e,uB:()=>f});let d="data: [DONE]\n\n",e={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"},f={"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Accel-Buffering":"no"}},19071:(a,b,c)=>{"use strict";let{kConnected:d,kPending:e,kRunning:f,kSize:g,kFree:h,kQueued:i}=c(49176);class j{constructor(a){this.connected=a[d],this.pending=a[e],this.running=a[f],this.size=a[g]}}class k{constructor(a){this.connected=a[d],this.free=a[h],this.pending=a[e],this.queued=a[i],this.running=a[f],this.size=a[g]}}a.exports={ClientStats:j,PoolStats:k}},19396:(a,b,c)=>{var d=c(45654);c(33889),d.cipher=d.cipher||{};var e=a.exports=d.cipher.modes=d.cipher.modes||{};function f(a,b){if("string"==typeof a&&(a=d.util.createBuffer(a)),d.util.isArray(a)&&a.length>4){var c=a;a=d.util.createBuffer();for(var e=0;e<c.length;++e)a.putByte(c[e])}if(a.length()<b)throw Error("Invalid IV length; got "+a.length()+" bytes and expected "+b+" bytes.");if(!d.util.isArray(a)){for(var f=[],g=b/4,e=0;e<g;++e)f.push(a.getInt32());a=f}return a}function g(a){a[a.length-1]=a[a.length-1]+1|0}function h(a){return[a/0x100000000|0,0|a]}e.ecb=function(a){a=a||{},this.name="ECB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints)},e.ecb.prototype.start=function(a){},e.ecb.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d])},e.ecb.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d])},e.ecb.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();return a.fillWithByte(c,c),!0},e.ecb.prototype.unpad=function(a,b){if(b.overflow>0)return!1;var c=a.length(),d=a.at(c-1);return!(d>this.blockSize<<2)&&(a.truncate(d),!0)},e.cbc=function(a){a=a||{},this.name="CBC",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints)},e.cbc.prototype.start=function(a){if(null===a.iv){if(!this._prev)throw Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if("iv"in a)this._iv=f(a.iv,this.blockSize),this._prev=this._iv.slice(0);else throw Error("Invalid IV parameter.")},e.cbc.prototype.encrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=this._prev[d]^a.getInt32();this.cipher.encrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._outBlock[d]);this._prev=this._outBlock},e.cbc.prototype.decrypt=function(a,b,c){if(a.length()<this.blockSize&&!(c&&a.length()>0))return!0;for(var d=0;d<this._ints;++d)this._inBlock[d]=a.getInt32();this.cipher.decrypt(this._inBlock,this._outBlock);for(var d=0;d<this._ints;++d)b.putInt32(this._prev[d]^this._outBlock[d]);this._prev=this._inBlock.slice(0)},e.cbc.prototype.pad=function(a,b){var c=a.length()===this.blockSize?this.blockSize:this.blockSize-a.length();return a.fillWithByte(c,c),!0},e.cbc.prototype.unpad=function(a,b){if(b.overflow>0)return!1;var c=a.length(),d=a.at(c-1);return!(d>this.blockSize<<2)&&(a.truncate(d),!0)},e.cfb=function(a){a=a||{},this.name="CFB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.cfb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.cfb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)this._inBlock[e]=a.getInt32()^this._outBlock[e],b.putInt32(this._inBlock[e]);return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialBlock[e]=a.getInt32()^this._outBlock[e],this._partialOutput.putInt32(this._partialBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._partialBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.cfb.prototype.decrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)this._inBlock[e]=a.getInt32(),b.putInt32(this._inBlock[e]^this._outBlock[e]);return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialBlock[e]=a.getInt32(),this._partialOutput.putInt32(this._partialBlock[e]^this._outBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._partialBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.ofb=function(a){a=a||{},this.name="OFB",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.ofb.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.ofb.prototype.encrypt=function(a,b,c){var d=a.length();if(0===a.length())return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]),this._inBlock[e]=this._outBlock[e];return}var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f>0)a.read-=this.blockSize;else for(var e=0;e<this._ints;++e)this._inBlock[e]=this._outBlock[e];if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0},e.ofb.prototype.decrypt=e.ofb.prototype.encrypt,e.ctr=function(a){a=a||{},this.name="CTR",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0},e.ctr.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");this._iv=f(a.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},e.ctr.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize)for(var e=0;e<this._ints;++e)b.putInt32(a.getInt32()^this._outBlock[e]);else{var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f>0&&(a.read-=this.blockSize),this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0}g(this._inBlock)},e.ctr.prototype.decrypt=e.ctr.prototype.encrypt,e.gcm=function(a){a=a||{},this.name="GCM",this.cipher=a.cipher,this.blockSize=a.blockSize||16,this._ints=this.blockSize/4,this._inBlock=Array(this._ints),this._outBlock=Array(this._ints),this._partialOutput=d.util.createBuffer(),this._partialBytes=0,this._R=0xe1000000},e.gcm.prototype.start=function(a){if(!("iv"in a))throw Error("Invalid IV parameter.");var b,c=d.util.createBuffer(a.iv);if(this._cipherLength=0,b="additionalData"in a?d.util.createBuffer(a.additionalData):d.util.createBuffer(),"tagLength"in a?this._tagLength=a.tagLength:this._tagLength=128,this._tag=null,a.decrypt&&(this._tag=d.util.createBuffer(a.tag).getBytes(),this._tag.length!==this._tagLength/8))throw Error("Authentication tag does not match tag length.");this._hashBlock=Array(this._ints),this.tag=null,this._hashSubkey=Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var e=c.length();if(12===e)this._j0=[c.getInt32(),c.getInt32(),c.getInt32(),1];else{for(this._j0=[0,0,0,0];c.length()>0;)this._j0=this.ghash(this._hashSubkey,this._j0,[c.getInt32(),c.getInt32(),c.getInt32(),c.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(h(8*e)))}this._inBlock=this._j0.slice(0),g(this._inBlock),this._partialBytes=0,b=d.util.createBuffer(b),this._aDataLength=h(8*b.length());var f=b.length()%this.blockSize;for(f&&b.fillWithByte(0,this.blockSize-f),this._s=[0,0,0,0];b.length()>0;)this._s=this.ghash(this._hashSubkey,this._s,[b.getInt32(),b.getInt32(),b.getInt32(),b.getInt32()])},e.gcm.prototype.encrypt=function(a,b,c){var d=a.length();if(0===d)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),0===this._partialBytes&&d>=this.blockSize){for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^=a.getInt32());this._cipherLength+=this.blockSize}else{var f=(this.blockSize-d)%this.blockSize;f>0&&(f=this.blockSize-f),this._partialOutput.clear();for(var e=0;e<this._ints;++e)this._partialOutput.putInt32(a.getInt32()^this._outBlock[e]);if(f<=0||c){if(c){var h=d%this.blockSize;this._cipherLength+=h,this._partialOutput.truncate(this.blockSize-h)}else this._cipherLength+=this.blockSize;for(var e=0;e<this._ints;++e)this._outBlock[e]=this._partialOutput.getInt32();this._partialOutput.read-=this.blockSize}if(this._partialBytes>0&&this._partialOutput.getBytes(this._partialBytes),f>0&&!c)return a.read-=this.blockSize,b.putBytes(this._partialOutput.getBytes(f-this._partialBytes)),this._partialBytes=f,!0;b.putBytes(this._partialOutput.getBytes(d-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),g(this._inBlock)},e.gcm.prototype.decrypt=function(a,b,c){var d=a.length();if(d<this.blockSize&&!(c&&d>0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),g(this._inBlock),this._hashBlock[0]=a.getInt32(),this._hashBlock[1]=a.getInt32(),this._hashBlock[2]=a.getInt32(),this._hashBlock[3]=a.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var e=0;e<this._ints;++e)b.putInt32(this._outBlock[e]^this._hashBlock[e]);d<this.blockSize?this._cipherLength+=d%this.blockSize:this._cipherLength+=this.blockSize},e.gcm.prototype.afterFinish=function(a,b){var c=!0;b.decrypt&&b.overflow&&a.truncate(this.blockSize-b.overflow),this.tag=d.util.createBuffer();var e=this._aDataLength.concat(h(8*this._cipherLength));this._s=this.ghash(this._hashSubkey,this._s,e);var f=[];this.cipher.encrypt(this._j0,f);for(var g=0;g<this._ints;++g)this.tag.putInt32(this._s[g]^f[g]);return this.tag.truncate(this.tag.length()%(this._tagLength/8)),b.decrypt&&this.tag.bytes()!==this._tag&&(c=!1),c},e.gcm.prototype.multiply=function(a,b){for(var c=[0,0,0,0],d=b.slice(0),e=0;e<128;++e)a[e/32|0]&1<<31-e%32&&(c[0]^=d[0],c[1]^=d[1],c[2]^=d[2],c[3]^=d[3]),this.pow(d,d);return c},e.gcm.prototype.pow=function(a,b){for(var c=1&a[3],d=3;d>0;--d)b[d]=a[d]>>>1|(1&a[d-1])<<31;b[0]=a[0]>>>1,c&&(b[0]^=this._R)},e.gcm.prototype.tableMultiply=function(a){for(var b=[0,0,0,0],c=0;c<32;++c){var d=a[c/8|0]>>>(7-c%8)*4&15,e=this._m[c][d];b[0]^=e[0],b[1]^=e[1],b[2]^=e[2],b[3]^=e[3]}return b},e.gcm.prototype.ghash=function(a,b,c){return b[0]^=c[0],b[1]^=c[1],b[2]^=c[2],b[3]^=c[3],this.tableMultiply(b)},e.gcm.prototype.generateHashTable=function(a,b){for(var c=8/b,d=4*c,e=16*c,f=Array(e),g=0;g<e;++g){var h=[0,0,0,0],i=g/d|0,j=(d-1-g%d)*b;h[i]=1<<b-1<<j,f[g]=this.generateSubHashTable(this.multiply(h,a),b)}return f},e.gcm.prototype.generateSubHashTable=function(a,b){var c=1<<b,d=c>>>1,e=Array(c);e[d]=a.slice(0);for(var f=d>>>1;f>0;)this.pow(e[2*f],e[f]=[]),f>>=1;for(f=2;f<d;){for(var g=1;g<f;++g){var h=e[f],i=e[g];e[f+g]=[h[0]^i[0],h[1]^i[1],h[2]^i[2],h[3]^i[3]]}f*=2}for(e[0]=[0,0,0,0],f=d+1;f<c;++f){var j=e[f^d];e[f]=[a[0]^j[0],a[1]^j[1],a[2]^j[2],a[3]^j[3]]}return e}},19431:(a,b,c)=>{"use strict";let d=c(34589),{Readable:e}=c(57075),f=c(84285),g=c(89409),h=c(38650),i=c(56698),{assertCacheStore:j,assertCacheMethods:k,getInterceptorOrigin:l,makeCacheKey:m,normalizeHeaders:n,parseCacheControlHeader:o,isInvalidOrWildcardVaryHeader:p,parseVaryHeader:q}=c(79468),{AbortError:r}=c(61448),{parseHttpDate:s}=c(24214),t=()=>{};function u(a,b){for(let c=0;c<a.length;c++)if(a[c]===b)return!0;return!1}function v(a,b){return a.cacheControlDirectives?.["must-revalidate"]===!0||"shared"===b&&(a.cacheControlDirectives?.["proxy-revalidate"]===!0||a.cacheControlDirectives?.["s-maxage"]!==void 0)}function w(a,b){try{a.delete(b)?.catch?.(t)}catch{}}function x(a,b){let c={...a.headers,"if-modified-since":function(a){let b=a?.["last-modified"];if("string"==typeof b&&s(b))return b}(b.headers)??new Date(b.cachedAt).toUTCString()};if(b.etag&&(c["if-none-match"]=b.etag),b.vary)for(let a in b.vary)null!=b.vary[a]&&(c[a]=b.vary[a]);return c}function y(a,b,c,d,e,f){if(f?.["only-if-cached"]){let a=!1,b={paused:!1,rawHeaders:[],rawTrailers:[],pause(){this.paused=!0},resume(){this.paused=!1},abort:c=>{a=!0,d.onResponseError?.(b,c??new r)}};try{if(d.onRequestStart?.(b,null),a||(d.onResponseStart?.(b,504,{},"Gateway Timeout"),a))return;d.onResponseEnd?.(b,{})}catch(a){"function"==typeof d.onResponseError&&d.onResponseError(b,a)}return!0}return a(e,new g(b,c,d))}function z(a,b,c,g,h,i){let j=f.isStream(c.body)?c.body:e.from(c.body??[]);d(!j.destroyed,"stream should not be destroyed"),d(!j.readableDidRead,"stream should not be readableDidRead");let k=!1,l={rawHeaders:[],rawTrailers:[],resume(){j.resume()},pause(){j.pause()},get paused(){return j.isPaused()},get aborted(){return k},get reason(){return j.errored},abort(a){k=!0,j.destroy(a??new r)}};if(j.on("error",function(b){if(!this.readableEnded)if("function"==typeof a.onResponseError)a.onResponseError(l,b);else throw b}).on("close",function(){this.errored||a.onResponseEnd?.(l,{})}),a.onRequestStart?.(l,h),j.destroyed)return;let m={...c.headers,age:String(g)};i&&(m.warning='110 - "response is stale"'),l.rawHeaders=f.toRawHeaders(m),a.onResponseStart?.(l,c.statusCode,m,c.statusMessage),"HEAD"===b.method?j.destroy():j.on("data",function(b){a.onResponseData?.(l,b)})}function A(a,b,c,d,e,h,j){var k,l,m,n,r;let s;if(!j)return y(a,b,c,d,e,h);if("shared"===b.type&&Object.hasOwn(j.headers,"set-cookie"))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),y(a,b,c,d,e,h);let u=Date.now();if(u>j.deleteAt)return a(e,new g(b,c,d));let A=Math.round((u-j.cachedAt)/1e3),B=h?.["max-age"]!==void 0&&A>=h["max-age"],C=B||(k=j,l=h,m=b.type,(s=Date.now())>k.staleAt?!(!v(k,m)&&l?.["max-stale"])||s>k.staleAt+1e3*l["max-stale"]:!!l?.["min-fresh"]&&k.staleAt-s<=1e3*l["min-fresh"]),D=B||function(a,b,{headers:c={}}){return!!(b?.["no-cache"]||a.cacheControlDirectives?.["no-cache"]&&!Array.isArray(a.cacheControlDirectives["no-cache"]))||!!c["if-modified-since"]||!!c["if-none-match"]}(j,h,e);if(C||D){let k;if(f.isStream(e.body)&&0!==f.bodyLength(e.body))return a(e,new g(b,c,d));if(!D&&(n=j,r=b.type,!(!(k=n.cacheControlDirectives?.["stale-while-revalidate"])||v(n,r))&&Date.now()<=n.staleAt+1e3*k))return z(d,e,j,A,null,!0),queueMicrotask(()=>{let d=x(e,j);a({...e,headers:d},new g(b,c,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let l=!1;if(!v(j,b.type)){let a=j.cacheControlDirectives["stale-if-error"]??h?.["stale-if-error"];a&&(l=u<j.staleAt+1e3*a)}let m=x(e,j);return a({...e,headers:m},new i((h,i,k,l)=>{if(h){if(304===k){if(function(a,b){if(b.vary&&p(b.vary)||"shared"===a&&Object.hasOwn(b,"set-cookie"))return!0;let c=b["cache-control"];if(!c)return!1;let d=o(c);return!0===d["no-store"]||"shared"===a&&!0===d.private}(b.type,l))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),a(e,new g(b,c,d));if(void 0!==l["cache-control"])w(b.store,c);else if(function(a,b){if(!b)return!1;for(let c in b)if(null==a.vary||!Object.hasOwn(a.vary,c))return!0;return!1}(j,l.vary?q(l.vary,e.headers):void 0))return f.isStream(j.body)&&j.body.on("error",t).destroy(),w(b.store,c),a(e,new g(b,c,d))}z(d,e,j,A,i,C)}else f.isStream(j.body)&&j.body.on("error",t).destroy()},new g(b,c,d),l))}f.isStream(e.body)&&e.body.on("error",t).destroy(),z(d,e,j,A,null,!1)}a.exports=(a={})=>{let{store:b=new h,methods:c=["GET"],cacheByDefault:d,type:e="shared",origins:i}=a;if("object"!=typeof a||null===a)throw TypeError(`expected type of opts to be an Object, got ${null===a?"null":typeof a}`);j(b,"opts.store"),k(c,"opts.methods");var p="opts.origins";if(void 0!==i){if(!Array.isArray(i))throw TypeError(`expected ${p} to be an array or undefined, got ${typeof i}`);for(let a=0;a<i.length;a++){let b=i[a];if("string"!=typeof b&&!(b instanceof RegExp))throw TypeError(`expected ${p}[${a}] to be a string or RegExp, got ${typeof b}`)}}if(void 0!==d&&"number"!=typeof d)throw TypeError(`expected opts.cacheByDefault to be number or undefined, got ${typeof d}`);if(void 0!==e&&"shared"!==e&&"private"!==e)throw TypeError(`expected opts.type to be shared, private, or undefined, got ${typeof e}`);let q={store:b,methods:c,cacheByDefault:d,type:e},r=[];for(let a=0;a<f.safeHTTPMethods.length;a++){let b=f.safeHTTPMethods[a];u(c,b)||r.push(b)}return(a,c)=>(d,e)=>{let h=l(d,c);if(!h||u(r,d.method))return a(d,e);if(void 0!==i){let b=h.toString().toLowerCase(),c=!1;for(let a=0;a<i.length;a++){let d=i[a];if("string"==typeof d){if(d.toLowerCase()===b){c=!0;break}}else if(d.test(b)){c=!0;break}}if(!c)return a(d,e)}d={...d,headers:n(d)};let j=d.headers?.["cache-control"]?o(d.headers["cache-control"]):!function(a){let b=a?.pragma;if(!b)return!1;let c=Array.isArray(b)?b:[b];for(let a=0;a<c.length;a++){let b=c[a];if("string"!=typeof b)continue;let d=b.split(",");for(let a=0;a<d.length;a++)if("no-cache"===d[a].replace(/^[\t ]+|[\t ]+$/g,"").toLowerCase())return!0}return!1}(d.headers)?void 0:{"no-cache":!0};if(j?.["no-store"])return a(d,e);let k=m(d,h);if(!u(f.safeHTTPMethods,d.method))return a(d,new g(q,k,e));let p=b.get(k);return p&&"function"==typeof p.then?p.then(b=>A(a,q,k,e,d,j,b)):A(a,q,k,e,d,j,p)}}},19608:a=>{"use strict";let b=["GET","HEAD","POST"],c=new Set(b),d=[301,302,303,307,308],e=new Set(d),f=["1","7","9","11","13","15","17","19","20","21","22","23","25","37","42","43","53","69","77","79","87","95","101","102","103","104","109","110","111","113","115","117","119","123","135","137","139","143","161","179","389","427","465","512","513","514","515","526","530","531","532","540","548","554","556","563","587","601","636","989","990","993","995","1719","1720","1723","2049","3659","4045","4190","5060","5061","6000","6566","6665","6666","6667","6668","6669","6679","6697","10080"],g=new Set(f),h=["no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],i=["",...h],j=new Set(h),k=["GET","HEAD","OPTIONS","TRACE","QUERY"],l=new Set(k),m=["CONNECT","TRACE","TRACK"],n=new Set(m),o=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],p=new Set(o);a.exports={subresource:o,forbiddenMethods:m,requestBodyHeader:["content-encoding","content-language","content-location","content-type","content-length"],referrerPolicy:i,requestRedirect:["follow","manual","error"],requestMode:["navigate","same-origin","no-cors","cors"],requestCredentials:["omit","same-origin","include"],requestCache:["default","no-store","reload","no-cache","force-cache","only-if-cached"],redirectStatus:d,corsSafeListedMethods:b,nullBodyStatus:[101,204,205,304],safeMethods:k,badPorts:f,requestDuplex:["half"],subresourceSet:p,badPortsSet:g,redirectStatusSet:e,corsSafeListedMethodsSet:c,safeMethodsSet:l,forbiddenMethodsSet:n,referrerPolicyTokens:j}},19659:(a,b,c)=>{"use strict";a.exports=c.p+"static/media/catalog.b2c6512a.json"},20012:(a,b,c)=>{"use strict";c.d(b,{Tl:()=>l});var d=c(63971),e=c(50969),f=c(38528);let g={usageUrl:(0,f.U)("codex").url,resetCreditsUrl:(0,f.U)("codex").resetCreditsUrl,resetCreditsConsumeUrl:(0,f.U)("codex").resetCreditsConsumeUrl};function h(a){return a?.workspaceId||a?.accountId||a?.chatgptAccountId||null}function i(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function j(a){let b=(0,d.Gv)(a?.used_percent??a?.percent_used),c=null!==b&&b>=0?b:null,e=(0,d.Gv)(a?.limit_window_seconds);return{used:c,total:100,remaining:null===c?null:Math.max(0,100-c),...e>0?{windowSeconds:e,displayName:18e3===e?"Session (5h)":604800===e?"Weekly (7d)":`Window (${e/3600}h)`}:{},resetAt:(0,f.eZ)(a?.reset_at??a?.resets_at??a?.resetAt??null)||((0,d.Gv)(a?.reset_after_seconds)>0?new Date(Date.now()+1e3*(0,d.Gv)(a.reset_after_seconds)).toISOString():null),unlimited:!1}}function k(a,b,c){let d=i(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=j(e),!0===d.limit_reached&&(a[b?`${b}_session`:"session"].blocked=!0),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=j(f),!0===d.limit_reached&&(a[b?`${b}_weekly`:"weekly"].blocked=!0),g=!0),g}async function l(a,b=null,c=null){try{let d=await (0,e.Fm)(g.usageUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json",...h(c)?{"ChatGPT-Account-ID":h(c)}:{}},identity:"codex-cli",provider:"codex",format:"codex"},b);if(!d.ok)return{message:`Codex connected. Usage API temporarily unavailable (${d.status}).`};let j=await d.json(),l=j.rate_limit||j.rate_limits||j.rate_limits_by_limit_id?.codex||{},m=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(j),n=Math.max(0,(0,f.IQ)(j.rate_limit_reset_credits?.available_count,0)),o={};for(let a of(k(o,"",l),k(o,"review",m),Array.isArray(j.additional_rate_limits)?j.additional_rate_limits:[])){if(a===m)continue;let b=a.limit_name||a.metered_feature||a.id;"string"==typeof b&&b&&k(o,b,a)}for(let[a,b]of Object.entries(j.rate_limits_by_limit_id||{}))"codex"!==a&&b!==m&&k(o,a,b);for(let[a,b]of Object.entries(o))b.displayName&&"session"!==a&&"weekly"!==a&&(b.displayName=`${a.replace(/_(session|weekly)$/,"")} \xb7 ${b.displayName}`);return{plan:j.plan_type||j.summary?.plan||"unknown",limitReached:i(l)?.limit_reached||!1,reviewLimitReached:i(m)?.limit_reached||!1,resetCredits:{availableCount:n},quotas:o}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}},20096:a=>{var b={};a.exports=b;var c={};b.encode=function(a,b,c){if("string"!=typeof b)throw TypeError('"alphabet" must be a string.');if(void 0!==c&&"number"!=typeof c)throw TypeError('"maxline" must be a number.');var d="";if(a instanceof Uint8Array){var e=0,f=b.length,g=b.charAt(0),h=[0];for(e=0;e<a.length;++e){for(var i=0,j=a[e];i<h.length;++i)j+=h[i]<<8,h[i]=j%f,j=j/f|0;for(;j>0;)h.push(j%f),j=j/f|0}for(e=0;0===a[e]&&e<a.length-1;++e)d+=g;for(e=h.length-1;e>=0;--e)d+=b[h[e]]}else d=function(a,b){var c=0,d=b.length,e=b.charAt(0),f=[0];for(c=0;c<a.length();++c){for(var g=0,h=a.at(c);g<f.length;++g)h+=f[g]<<8,f[g]=h%d,h=h/d|0;for(;h>0;)f.push(h%d),h=h/d|0}var i="";for(c=0;0===a.at(c)&&c<a.length()-1;++c)i+=e;for(c=f.length-1;c>=0;--c)i+=b[f[c]];return i}(a,b);if(c){var k=RegExp(".{1,"+c+"}","g");d=d.match(k).join("\r\n")}return d},b.decode=function(a,b){if("string"!=typeof a)throw TypeError('"input" must be a string.');if("string"!=typeof b)throw TypeError('"alphabet" must be a string.');var d=c[b];if(!d){d=c[b]=[];for(var e=0;e<b.length;++e)d[b.charCodeAt(e)]=e}a=a.replace(/\s/g,"");for(var f=b.length,g=b.charAt(0),h=[0],e=0;e<a.length;e++){var i=d[a.charCodeAt(e)];if(void 0===i)return;for(var j=0,k=i;j<h.length;++j)k+=h[j]*f,h[j]=255&k,k>>=8;for(;k>0;)h.push(255&k),k>>=8}for(var l=0;a[l]===g&&l<a.length-1;++l)h.push(0);return"u">typeof Buffer?Buffer.from(h.reverse()):new Uint8Array(h.reverse())}},20308:(a,b,c)=>{var d=c(45654);if(c(45518),c(63070),c(88819),c(1277),c(36105),c(70710),c(49345),c(29984),c(67382),c(10401),c(33889),void 0===e)var e=d.jsbn.BigInteger;var f=d.asn1,g=d.pki=d.pki||{};a.exports=g.pbe=d.pbe=d.pbe||{};var h=g.oids,i={name:"EncryptedPrivateKeyInfo",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedPrivateKeyInfo.encryptionAlgorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encryptionOid"},{name:"AlgorithmIdentifier.parameters",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,captureAsn1:"encryptionParams"}]},{name:"EncryptedPrivateKeyInfo.encryptedData",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encryptedData"}]},j={name:"PBES2Algorithms",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.keyDerivationFunc.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"kdfOid"},{name:"PBES2Algorithms.params",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.params.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"kdfSalt"},{name:"PBES2Algorithms.params.iterationCount",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"kdfIterationCount"},{name:"PBES2Algorithms.params.keyLength",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,optional:!0,capture:"keyLength"},{name:"PBES2Algorithms.params.prf",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,optional:!0,value:[{name:"PBES2Algorithms.params.prf.algorithm",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"prfOid"}]}]}]},{name:"PBES2Algorithms.encryptionScheme",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"PBES2Algorithms.encryptionScheme.oid",tagClass:f.Class.UNIVERSAL,type:f.Type.OID,constructed:!1,capture:"encOid"},{name:"PBES2Algorithms.encryptionScheme.iv",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"encIv"}]}]},k={name:"pkcs-12PbeParams",tagClass:f.Class.UNIVERSAL,type:f.Type.SEQUENCE,constructed:!0,value:[{name:"pkcs-12PbeParams.salt",tagClass:f.Class.UNIVERSAL,type:f.Type.OCTETSTRING,constructed:!1,capture:"salt"},{name:"pkcs-12PbeParams.iterations",tagClass:f.Class.UNIVERSAL,type:f.Type.INTEGER,constructed:!1,capture:"iterations"}]};function l(a,b){return a.start().update(b).digest().getBytes()}function m(a){var b;if(a){if(!(b=g.oids[f.derToOid(a)])){var c=Error("Unsupported PRF OID.");throw c.oid=a,c.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],c}}else b="hmacWithSHA1";return n(b)}function n(a){var b=d.md;switch(a){case"hmacWithSHA224":b=d.md.sha512;case"hmacWithSHA1":case"hmacWithSHA256":case"hmacWithSHA384":case"hmacWithSHA512":a=a.substr(8).toLowerCase();break;default:var c=Error("Unsupported PRF algorithm.");throw c.algorithm=a,c.supported=["hmacWithSHA1","hmacWithSHA224","hmacWithSHA256","hmacWithSHA384","hmacWithSHA512"],c}if(!b||!(a in b))throw Error("Unknown hash algorithm: "+a);return b[a].create()}g.encryptPrivateKeyInfo=function(a,b,c){(c=c||{}).saltSize=c.saltSize||8,c.count=c.count||2048,c.algorithm=c.algorithm||"aes128",c.prfAlgorithm=c.prfAlgorithm||"sha1";var e=d.random.getBytesSync(c.saltSize),i=c.count,j=f.integerToDer(i);if(0===c.algorithm.indexOf("aes")||"des"===c.algorithm){switch(c.algorithm){case"aes128":q=16,t=16,u=h["aes128-CBC"],v=d.aes.createEncryptionCipher;break;case"aes192":q=24,t=16,u=h["aes192-CBC"],v=d.aes.createEncryptionCipher;break;case"aes256":q=32,t=16,u=h["aes256-CBC"],v=d.aes.createEncryptionCipher;break;case"des":q=8,t=8,u=h.desCBC,v=d.des.createEncryptionCipher;break;default:var k,l,m,o,p,q,r,s,t,u,v,w=Error("Cannot encrypt private key. Unknown encryption algorithm.");throw w.algorithm=c.algorithm,w}var x="hmacWith"+c.prfAlgorithm.toUpperCase(),y=n(x),z=d.pkcs5.pbkdf2(b,e,i,q,y),A=d.random.getBytesSync(t),B=v(z);B.start(A),B.update(f.toDer(a)),B.finish(),s=B.output.getBytes();var C=(k=e,l=j,m=q,o=x,p=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,k),f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,l.getBytes())]),"hmacWithSHA1"!==o&&p.value.push(f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,d.util.hexToBytes(m.toString(16))),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(g.oids[o]).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.NULL,!1,"")])),p);r=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h.pkcs5PBES2).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h.pkcs5PBKDF2).getBytes()),C]),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(u).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,A)])])])}else if("3des"===c.algorithm){q=24;var D=new d.util.ByteBuffer(e),z=g.pbe.generatePkcs12Key(b,D,1,i,q),A=g.pbe.generatePkcs12Key(b,D,2,i,q),B=d.des.createEncryptionCipher(z);B.start(A),B.update(f.toDer(a)),B.finish(),s=B.output.getBytes(),r=f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OID,!1,f.oidToDer(h["pbeWithSHAAnd3-KeyTripleDES-CBC"]).getBytes()),f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,e),f.create(f.Class.UNIVERSAL,f.Type.INTEGER,!1,j.getBytes())])])}else{var w=Error("Cannot encrypt private key. Unknown encryption algorithm.");throw w.algorithm=c.algorithm,w}return f.create(f.Class.UNIVERSAL,f.Type.SEQUENCE,!0,[r,f.create(f.Class.UNIVERSAL,f.Type.OCTETSTRING,!1,s)])},g.decryptPrivateKeyInfo=function(a,b){var c=null,e={},h=[];if(!f.validate(a,i,e,h)){var j=Error("Cannot read encrypted private key. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw j.errors=h,j}var k=f.derToOid(e.encryptionOid),l=g.pbe.getCipher(k,e.encryptionParams,b),m=d.util.createBuffer(e.encryptedData);return l.update(m),l.finish()&&(c=f.fromDer(l.output)),c},g.encryptedPrivateKeyToPem=function(a,b){var c={type:"ENCRYPTED PRIVATE KEY",body:f.toDer(a).getBytes()};return d.pem.encode(c,{maxline:b})},g.encryptedPrivateKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("ENCRYPTED PRIVATE KEY"!==b.type){var c=Error('Could not convert encrypted private key from PEM; PEM header type is "ENCRYPTED PRIVATE KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert encrypted private key from PEM; PEM is encrypted.");return f.fromDer(b.body)},g.encryptRsaPrivateKey=function(a,b,c){if(!(c=c||{}).legacy){var e,h,i,j,k=g.wrapRsaPrivateKey(g.privateKeyToAsn1(a));return k=g.encryptPrivateKeyInfo(k,b,c),g.encryptedPrivateKeyToPem(k)}switch(c.algorithm){case"aes128":e="AES-128-CBC",i=16,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"aes192":e="AES-192-CBC",i=24,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"aes256":e="AES-256-CBC",i=32,h=d.random.getBytesSync(16),j=d.aes.createEncryptionCipher;break;case"3des":e="DES-EDE3-CBC",i=24,h=d.random.getBytesSync(8),j=d.des.createEncryptionCipher;break;case"des":e="DES-CBC",i=8,h=d.random.getBytesSync(8),j=d.des.createEncryptionCipher;break;default:var l=Error('Could not encrypt RSA private key; unsupported encryption algorithm "'+c.algorithm+'".');throw l.algorithm=c.algorithm,l}var m=j(d.pbe.opensslDeriveBytes(b,h.substr(0,8),i));m.start(h),m.update(f.toDer(g.privateKeyToAsn1(a))),m.finish();var n={type:"RSA PRIVATE KEY",procType:{version:"4",type:"ENCRYPTED"},dekInfo:{algorithm:e,parameters:d.util.bytesToHex(h).toUpperCase()},body:m.output.getBytes()};return d.pem.encode(n)},g.decryptRsaPrivateKey=function(a,b){var c=null,e=d.pem.decode(a)[0];if("ENCRYPTED PRIVATE KEY"!==e.type&&"PRIVATE KEY"!==e.type&&"RSA PRIVATE KEY"!==e.type){var h=Error('Could not convert private key from PEM; PEM header type is not "ENCRYPTED PRIVATE KEY", "PRIVATE KEY", or "RSA PRIVATE KEY".');throw h.headerType=h,h}if(e.procType&&"ENCRYPTED"===e.procType.type){switch(e.dekInfo.algorithm){case"DES-CBC":i=8,j=d.des.createDecryptionCipher;break;case"DES-EDE3-CBC":i=24,j=d.des.createDecryptionCipher;break;case"AES-128-CBC":i=16,j=d.aes.createDecryptionCipher;break;case"AES-192-CBC":i=24,j=d.aes.createDecryptionCipher;break;case"AES-256-CBC":i=32,j=d.aes.createDecryptionCipher;break;case"RC2-40-CBC":i=5,j=function(a){return d.rc2.createDecryptionCipher(a,40)};break;case"RC2-64-CBC":i=8,j=function(a){return d.rc2.createDecryptionCipher(a,64)};break;case"RC2-128-CBC":i=16,j=function(a){return d.rc2.createDecryptionCipher(a,128)};break;default:var i,j,h=Error('Could not decrypt private key; unsupported encryption algorithm "'+e.dekInfo.algorithm+'".');throw h.algorithm=e.dekInfo.algorithm,h}var k=d.util.hexToBytes(e.dekInfo.parameters),l=j(d.pbe.opensslDeriveBytes(b,k.substr(0,8),i));if(l.start(k),l.update(d.util.createBuffer(e.body)),!l.finish())return c;c=l.output.getBytes()}else c=e.body;return null!==(c="ENCRYPTED PRIVATE KEY"===e.type?g.decryptPrivateKeyInfo(f.fromDer(c),b):f.fromDer(c))&&(c=g.privateKeyFromAsn1(c)),c},g.pbe.generatePkcs12Key=function(a,b,c,e,f,g){if(null==g){if(!("sha1"in d.md))throw Error('"sha1" hash algorithm unavailable.');g=d.md.sha1.create()}var h,i,j=g.digestLength,k=g.blockLength,l=new d.util.ByteBuffer,m=new d.util.ByteBuffer;if(null!=a){for(i=0;i<a.length;i++)m.putInt16(a.charCodeAt(i));m.putInt16(0)}var n=m.length(),o=b.length(),p=new d.util.ByteBuffer;p.fillWithByte(c,k);var q=k*Math.ceil(o/k),r=new d.util.ByteBuffer;for(i=0;i<q;i++)r.putByte(b.at(i%o));var s=k*Math.ceil(n/k),t=new d.util.ByteBuffer;for(i=0;i<s;i++)t.putByte(m.at(i%n));var u=r;u.putBuffer(t);for(var v=Math.ceil(f/j),w=1;w<=v;w++){var x=new d.util.ByteBuffer;x.putBytes(p.bytes()),x.putBytes(u.bytes());for(var y=0;y<e;y++)g.start(),g.update(x.getBytes()),x=g.digest();var z=new d.util.ByteBuffer;for(i=0;i<k;i++)z.putByte(x.at(i%j));var A=Math.ceil(o/k)+Math.ceil(n/k),B=new d.util.ByteBuffer;for(h=0;h<A;h++){var C=new d.util.ByteBuffer(u.getBytes(k)),D=511;for(i=z.length()-1;i>=0;i--)D>>=8,D+=z.at(i)+C.at(i),C.setAt(i,255&D);B.putBuffer(C)}u=B,l.putBuffer(x)}return l.truncate(l.length()-f),l},g.pbe.getCipher=function(a,b,c){switch(a){case g.oids.pkcs5PBES2:return g.pbe.getCipherForPBES2(a,b,c);case g.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case g.oids["pbewithSHAAnd40BitRC2-CBC"]:return g.pbe.getCipherForPKCS12PBE(a,b,c);default:var d=Error("Cannot read encrypted PBE data block. Unsupported OID.");throw d.oid=a,d.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],d}},g.pbe.getCipherForPBES2=function(a,b,c){var e,h,i={},k=[];if(!f.validate(b,j,i,k)){var l=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw l.errors=k,l}if((a=f.derToOid(i.kdfOid))!==g.oids.pkcs5PBKDF2){var l=Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw l.oid=a,l.supportedOids=["pkcs5PBKDF2"],l}if((a=f.derToOid(i.encOid))!==g.oids["aes128-CBC"]&&a!==g.oids["aes192-CBC"]&&a!==g.oids["aes256-CBC"]&&a!==g.oids["des-EDE3-CBC"]&&a!==g.oids.desCBC){var l=Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw l.oid=a,l.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],l}var n=i.kdfSalt,o=d.util.createBuffer(i.kdfIterationCount);switch(o=o.getInt(o.length()<<3),g.oids[a]){case"aes128-CBC":e=16,h=d.aes.createDecryptionCipher;break;case"aes192-CBC":e=24,h=d.aes.createDecryptionCipher;break;case"aes256-CBC":e=32,h=d.aes.createDecryptionCipher;break;case"des-EDE3-CBC":e=24,h=d.des.createDecryptionCipher;break;case"desCBC":e=8,h=d.des.createDecryptionCipher}var p=m(i.prfOid),q=d.pkcs5.pbkdf2(c,n,o,e,p),r=i.encIv,s=h(q);return s.start(r),s},g.pbe.getCipherForPKCS12PBE=function(a,b,c){var e,h,i,j={},l=[];if(!f.validate(b,k,j,l)){var n=Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw n.errors=l,n}var o=d.util.createBuffer(j.salt),p=d.util.createBuffer(j.iterations);switch(p=p.getInt(p.length()<<3),a){case g.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:e=24,h=8,i=d.des.startDecrypting;break;case g.oids["pbewithSHAAnd40BitRC2-CBC"]:e=5,h=8,i=function(a,b){var c=d.rc2.createDecryptionCipher(a,40);return c.start(b,null),c};break;default:var n=Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw n.oid=a,n}var q=m(j.prfOid),r=g.pbe.generatePkcs12Key(c,o,1,p,e,q);return q.start(),i(r,g.pbe.generatePkcs12Key(c,o,2,p,h,q))},g.pbe.opensslDeriveBytes=function(a,b,c,e){if(null==e){if(!("md5"in d.md))throw Error('"md5" hash algorithm unavailable.');e=d.md.md5.create()}null===b&&(b="");for(var f=[l(e,a+b)],g=16,h=1;g<c;++h,g+=16)f.push(l(e,f[h-1]+a+b));return f.join("").substr(0,c)}},20437:(a,b,c)=>{"use strict";c.d(b,{AL:()=>j,HG:()=>i,Jh:()=>m,KQ:()=>k,Or:()=>l,ok:()=>h.ok});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(53859);let i=e().join(h.nJ,"db"),j=e().join(i,"data.sqlite"),k=e().join(i,"backups"),l={main:e().join(h.nJ,"db.json"),usage:e().join(h.nJ,"usage.json"),disabled:e().join(h.nJ,"disabledModels.json"),details:e().join(h.nJ,"request-details.json")};function m(){for(let a of[h.nJ,i,k])g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}},20579:(a,b,c)=>{"use strict";let d,{Writable:e}=c(57075),{assertCacheKey:f,assertCacheValue:g}=c(79468);a.exports=class{#g=2e9;#h=1/0;#i;#j;#k;#l;#m;#n;#o;#p;constructor(a){if(a){if("object"!=typeof a)throw TypeError("SqliteCacheStore options must be an object");if(void 0!==a.maxEntrySize){if("number"!=typeof a.maxEntrySize||!Number.isInteger(a.maxEntrySize)||a.maxEntrySize<0)throw TypeError("SqliteCacheStore options.maxEntrySize must be a non-negative integer");if(a.maxEntrySize>2e9)throw TypeError("SqliteCacheStore options.maxEntrySize must be less than 2gb");this.#g=a.maxEntrySize}if(void 0!==a.maxCount){if("number"!=typeof a.maxCount||!Number.isInteger(a.maxCount)||a.maxCount<0)throw TypeError("SqliteCacheStore options.maxCount must be a non-negative integer");this.#h=a.maxCount}}d||(d=c(79868).DatabaseSync),this.#i=new d(a?.location??":memory:"),this.#i.exec(`
|
|
38
38
|
PRAGMA journal_mode = WAL;
|
|
39
39
|
PRAGMA synchronous = NORMAL;
|
|
40
40
|
PRAGMA temp_store = memory;
|
|
@@ -298,7 +298,7 @@ You are producing plain text that will later be styled by the CLI. Follow these
|
|
|
298
298
|
* Examples: src/app.ts, src/app.ts:42, b/server/index.js#L10, C:\\repo\\project\\main.rs:12:5`;var f=c(38421),g=c(98976),h=c(10342),i=c(26408),j=c(13161),k=c(86363),l=c(49623),m=c(97137),n=c(68531),o=c(82689),p=c(73081);let q=new TextEncoder;var r=c(44140),s=c(50969);let t=new Map,u=/^(rs|fc|resp|msg)_/,v=new Set(["image_generation","web_search","web_search_preview","file_search","computer","computer_use_preview","code_interpreter","mcp","local_shell","tool_search"]),w=new Set(["custom"]),x=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","service_tier","include","prompt_cache_key","client_metadata","text"]);class y extends d.Hv{constructor(){super("codex",f.xq.codex),this._currentSessionId=null}buildHeaders(a,b=!0){let c=super.buildHeaders(a,b);c.session_id=this._currentSessionId||a?.connectionId||"default",c.originator||(c.originator="codex_cli_rs");let d=a?.providerSpecificData?.workspaceId;return"string"==typeof d&&d&&!c["chatgpt-account-id"]&&(c["chatgpt-account-id"]=d),c}buildUrl(a,b,c=0,d=null){let e=super.buildUrl(a,b,c,d);return this._isCompact?`${e}/compact`:e}async refreshCredentials(a,b){return a?.refreshToken?(0,g.Vq)("codex",a,b):null}needsRefresh(a){return(0,g.fp)("codex",a)}async prefetchImages(a){if(Array.isArray(a?.input))for(let b of a.input){if(!Array.isArray(b.content))continue;let a=b.content.map(async a=>{if("image_url"!==a.type)return a;let b="string"==typeof a.image_url?a.image_url:a.image_url?.url,c=a.image_url?.detail||"auto";if(!b)return a;if(b.startsWith("data:"))return{type:"input_image",image_url:b,detail:c};let d=await (0,i.ni)(b,{timeoutMs:15e3});return{type:"input_image",image_url:d?.url||b,detail:c}});b.content=await Promise.all(a)}}async execute(a){let b=Array.isArray(a.body?.input)?a.body.input.reduce((a,b)=>a+(Array.isArray(b.content)?b.content.filter(a=>"image_url"===a.type).length:0),0):0,c=Array.isArray(a.body?.input)?a.body.input.length:0;if((0,k.s)("CODEX",`execute start | inputItems=${c} | images=${b} | session=${this._currentSessionId?"resolved":"pending"}`),b>0){let b=Date.now();await this.prefetchImages(a.body),(0,k.s)("CODEX",`prefetchImages done | ${Date.now()-b}ms`)}else await this.prefetchImages(a.body);let d="off"!==process.env.CODEX_WS_TRANSPORT?await this._executeOverWebSocket(a):null;return d||(0,m.v)({execute:()=>super.execute(a),retryConfig:this.config.retry,signal:a.signal,log:a.log,provider:"codex"})}async _executeOverWebSocket(a){let b;if("off"===process.env.CODEX_WS_TRANSPORT||process.env.VITEST||a.body?._compact||!1===a.stream||a.proxyOptions?.vercelRelayUrl||a.signal?.aborted)return null;try{b=structuredClone(a.body)}catch{return null}let c=null;try{let d,e=this.transformRequest(a.model,b,a.stream,a.credentials),f=this.buildUrl(a.model,a.stream,0,a.credentials);if((0,s.WV)(f))return null;let g=(0,s.ip)(f,a.proxyOptions);if(c=function(a){let b=t.get(a);if(!b){for(;t.size>=256;){let a=t.keys().next().value;if(void 0===a)break;t.delete(a)}b={failures:0,openUntil:0},t.set(a,b)}return b}(g||"direct"),Date.now()<c.openUntil)return null;let h={...this.buildHeaders(a.credentials,a.stream,f,a.model)},{headers:i}=(0,r.fX)(h,{identity:this.resolveIdentity(a.credentials),provider:"codex",format:a.credentials?.runtimeTransport?.format||this.config.format,credentialId:a.credentials?.connectionId||a.credentials?.apiKey||a.credentials?.accessToken,stream:!0});if(delete i["Content-Type"],delete i.Accept,g)try{d=await (0,s.wo)(g)}catch(b){if(a.proxyOptions?.strictProxy===!0)return null;a.log?.warn?.("CODEX-WS",`proxy dispatcher unavailable, connecting direct: ${b.message}`)}let j=function({wsUrl:a,headers:b,request:c,WebSocket:d=globalThis.WebSocket,signal:e,dispatcher:f,connectTimeoutMs:g=o.pH}={}){let h,i,j;if("function"!=typeof d)throw Error("no WebSocket implementation available");try{h=new d(a,f?{headers:b,dispatcher:f}:{headers:b})}catch(a){throw Error(`codex ws connect failed: ${a.message}`)}let l=null,m=[],r=!1,s=!1,t=!1,u=!1,v=new Promise((a,b)=>{i=a,j=b}),w=(a,b=!0)=>{if(!t){t=!0,clearTimeout(y),e?.removeEventListener?.("abort",x);try{h.close()}catch{}if(s||(s=!0,a?j(a):i()),b&&l)try{a?l.error(a):l.close()}catch{}}},x=()=>w(new DOMException("The operation was aborted.","AbortError"));e?.addEventListener?.("abort",x,{once:!0});let y=setTimeout(()=>{w(Object.assign(Error("codex ws first frame timeout"),{code:"codex_ws_timeout",status:504}))},g);y.unref?.(),e?.aborted&&x();let z=()=>{if(l&&!t)for(;m.length>0&&l.desiredSize>0;)try{l.enqueue(m.shift())}catch{break}},A=()=>{r&&0===m.length&&w()};return h.onopen=()=>{if(!t)try{h.send(JSON.stringify({type:"response.create",...c})),u=!0,(0,k.s)("CODEX-WS",`opened ${a} | request sent`)}catch(a){w(Error(`codex ws send failed: ${a.message}`))}},h.onerror=()=>w(Error(u?"codex ws transport failed":"codex ws handshake failed")),{response:new Response(new ReadableStream({start(a){l=a,h.onmessage=a=>{if(t)return;let b="string"==typeof a.data?a.data:"",c=null;try{c=JSON.parse(b)}catch{}let d=c?.type||null;if(d){if(!s){if("error"===d)return void w(Object.assign(Error(c?.error?.message||"codex ws error frame"),{status:Number(c?.status)||502,code:"codex_ws_error_frame"}));s=!0,clearTimeout(y),i()}m.push(q.encode(`event: ${d}
|
|
299
299
|
data: ${b}
|
|
300
300
|
|
|
301
|
-
`)),(0,p.nu)(d,{response:{}})&&((0,k.s)("CODEX-WS",`terminal ${d} | closing`),r=!0),z(),A()}},h.onclose=()=>{if(!t){if(r){try{for(;m.length>0;)l.enqueue(m.shift())}catch{}w();return}w(Error("codex ws closed before terminal event"))}}},pull(){z(),A()},cancel(){w(null,!1)}}),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Switchboard-Transport":"responses-websocket"}}),url:a,headers:b,ready:v,format:n.h.OPENAI_RESPONSES}}({wsUrl:String(f).replace(/^http:\/\//i,"ws://").replace(/^https:\/\//i,"wss://"),headers:i,request:e,signal:a.signal,...d?{dispatcher:d}:{}});return await j.ready,c.failures=0,(0,k.s)("CODEX-WS",`transport=responses_websocket | ${f}`),{response:j.response,url:f,headers:i,transformedBody:e}}catch(d){if(d?.name==="AbortError")throw d;let b=c&&d?.code!=="codex_ws_error_frame";return b&&(c.failures+=1),b&&c.failures>=3?(c.openUntil=Date.now()+3e5,c.failures=0,a.log?.warn?.("CODEX-WS",`websocket transport failing repeatedly, pausing attempts for 5 minutes: ${d.message}`)):a.log?.warn?.("CODEX-WS",`websocket transport failed, falling back to HTTP: ${d.message}`),(0,k.s)("CODEX-WS",`handshake failed: ${d.message}`),null}}parseError(a,b){if(429===a.status&&b)try{let a=JSON.parse(b),c=a?.error;if(c?.type==="usage_limit_reached"){let a=Date.now(),d=null;if("number"==typeof c.resets_at&&c.resets_at>0){let b=1e3*c.resets_at;b>a&&(d=b)}if(!d&&"number"==typeof c.resets_in_seconds&&c.resets_in_seconds>0&&(d=a+1e3*c.resets_in_seconds),d)return{status:429,message:c.message||b,resetsAtMs:d}}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._isCompact=!!b._compact,delete b._compact,this._currentSessionId=(0,l.oV)({headers:d?.rawHeaders,body:b,connectionId:d?.connectionId,workspaceId:d?.providerSpecificData?.workspaceId,scope:"codex"});let f=(0,h.m)(b.input);if(f&&(b.input=f),(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(b.input=[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]),Array.isArray(b.input))for(let a of b.input)!(!a||"object"!=typeof a||Array.isArray(a))&&("system"!==a.role||a.type&&"message"!==a.type||(a.role="developer"));Array.isArray(b.input)&&(b.input=b.input.filter(a=>{if("string"==typeof a&&u.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&u.test(a.id)&&delete a.id}return!0})),function(a){if(!Array.isArray(a.tools))return;let b=new Set;if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let c="string"==typeof a.type?a.type:"";if("namespace"===c){if(Array.isArray(a.tools))for(let c of a.tools){let a="string"==typeof c?.name?c.name.trim().slice(0,128):"";a&&b.add(a)}return!0}if("function"!==c)return!!w.has(c)||!!c&&!a.function&&"string"!=typeof a.name&&v.has(c);let d=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,e=("string"==typeof a.name?a.name:"string"==typeof d?.name?d.name:"").trim();if(!e)return!1;let f="string"==typeof a.description?a.description:"string"==typeof d?.description?d.description:"",g=a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:d?.parameters&&"object"==typeof d.parameters&&!Array.isArray(d.parameters)?d.parameters:{type:"object",properties:{}};for(let b of Object.keys(a))delete a[b];return a.type="function",a.name=e.slice(0,128),f&&(a.description=f),a.parameters=g,b.add(e),!0}),a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)&&"function"===a.tool_choice.type){let c="string"==typeof a.tool_choice.name?a.tool_choice.name.trim():"";c&&b.has(c)||delete a.tool_choice}}(b),b.stream=!0,b.instructions&&""!==b.instructions.trim()||(b.instructions=e),b.store=!1,!b.prompt_cache_key&&this._currentSessionId&&(b.prompt_cache_key=this._currentSessionId),b.model=(0,j.kt)("cx",b.model||a);let g=null;for(let a of["none","low","medium","high","xhigh"])if(b.model.endsWith(`-${a}`)){g=a,b.model=b.model.replace(`-${a}`,"");break}if(b.reasoning)b.reasoning.summary||(b.reasoning.summary="auto");else{let a=b.reasoning_effort||g||"low";b.reasoning={effort:a,summary:"auto"}}for(let a of(delete b.reasoning_effort,b.reasoning&&b.reasoning.effort&&"none"!==b.reasoning.effort&&(b.include=["reasoning.encrypted_content"]),delete b.temperature,delete b.top_p,delete b.frequency_penalty,delete b.presence_penalty,delete b.logprobs,delete b.top_logprobs,delete b.n,delete b.seed,delete b.max_tokens,delete b.max_completion_tokens,delete b.max_output_tokens,delete b.user,delete b.prompt_cache_retention,delete b.metadata,delete b.stream_options,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))x.has(a)||delete b[a];return b}}},40603:(a,b,c)=>{"use strict";let{EventEmitter:d}=c(78474),{Buffer:e}=c(4573),{InvalidArgumentError:f,Socks5ProxyError:g}=c(61448),{debuglog:h}=c(57975),{parseAddress:i}=c(33297),j=h("undici:socks5"),k=e.alloc(0),l={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},m={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},n={IPV4:1,DOMAIN:3,IPV6:4},o={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},p={INITIAL:"initial",HANDSHAKING:"handshaking",AUTHENTICATING:"authenticating",AUTHENTICATED:"authenticated",CONNECTING:"connecting",CONNECTED:"connected",ERROR:"error",CLOSED:"closed"};class q extends d{constructor(a,b={}){if(super(),!a)throw new f("socket is required");this.socket=a,this.options=b,this.state=p.INITIAL,this.buffer=k,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],b.username&&b.password&&this.authMethods.push(l.USERNAME_PASSWORD),this.authMethods.push(l.NO_AUTH),this.socket.on("data",this.onSocketData),this.socket.on("error",this.onSocketError),this.socket.on("close",this.onSocketClose)}onData(a){j("received data",a.length,"bytes in state",this.state),this.buffer=e.concat([this.buffer,a]);try{switch(this.state){case p.HANDSHAKING:this.handleHandshakeResponse();break;case p.AUTHENTICATING:this.handleAuthResponse();break;case p.CONNECTING:this.handleConnectResponse()}}catch(a){this.onError(a)}}onError(a){j("socket error",a),this.state=p.ERROR,this.emit("error",a),this.destroy()}onClose(){j("socket closed"),this.state=p.CLOSED,this.emit("close")}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=p.AUTHENTICATED,this.emit("authenticated")}handshake(){if(this.state!==p.INITIAL)throw new f("Handshake already started");j("starting handshake with",this.authMethods.length,"auth methods"),this.state=p.HANDSHAKING;let a=e.alloc(2+this.authMethods.length);a[0]=5,a[1]=this.authMethods.length,this.authMethods.forEach((b,c)=>{a[2+c]=b}),this.socket.write(a)}handleHandshakeResponse(){if(this.buffer.length<2)return;let a=this.buffer[0],b=this.buffer[1];if(5!==a)throw new g(`Invalid SOCKS version: ${a}`,"UND_ERR_SOCKS5_VERSION");if(b===l.NO_ACCEPTABLE)throw new g("No acceptable authentication method","UND_ERR_SOCKS5_AUTH_REJECTED");if(this.buffer=this.buffer.subarray(2),j("server selected auth method",b),b===l.NO_AUTH)this.markAuthenticated();else if(b===l.USERNAME_PASSWORD)this.state=p.AUTHENTICATING,this.sendAuthRequest();else throw new g(`Unsupported authentication method: ${b}`,"UND_ERR_SOCKS5_AUTH_METHOD")}sendAuthRequest(){let{username:a,password:b}=this.options;if(!a||!b)throw new f("Username and password required for authentication");j("sending username/password auth");let c=e.from(a),d=e.from(b);if(c.length>255||d.length>255)throw new f("Username or password too long");let g=e.alloc(3+c.length+d.length);g[0]=1,g[1]=c.length,c.copy(g,2),g[2+c.length]=d.length,d.copy(g,3+c.length),this.socket.write(g)}handleAuthResponse(){if(this.buffer.length<2)return;let a=this.buffer[0],b=this.buffer[1];if(1!==a)throw new g(`Invalid auth sub-negotiation version: ${a}`,"UND_ERR_SOCKS5_AUTH_VERSION");if(0!==b)throw new g("Authentication failed","UND_ERR_SOCKS5_AUTH_FAILED");this.buffer=this.buffer.subarray(2),j("authentication successful"),this.markAuthenticated()}connect(a,b){if(this.state===p.CONNECTING||this.state===p.CONNECTED)throw new f("Connection already in progress");if(this.state!==p.AUTHENTICATED)throw new f("Client must be authenticated before CONNECT");j("connecting to",a,b),this.state=p.CONNECTING;let c=this.buildConnectRequest(m.CONNECT,a,b);this.socket.write(c)}buildConnectRequest(a,b,c){let{type:d,buffer:f}=i(b),g=e.alloc(4+f.length+2);return g[0]=5,g[1]=a,g[2]=0,g[3]=d,f.copy(g,4),g.writeUInt16BE(c,4+f.length),g}handleConnectResponse(){let a;if(this.buffer.length<4)return;let b=this.buffer[0],c=this.buffer[1],d=this.buffer[3];if(5!==b)throw new g(`Invalid SOCKS version in reply: ${b}`,"UND_ERR_SOCKS5_REPLY_VERSION");let e=4;if(d===n.IPV4)e+=6;else if(d===n.DOMAIN){if(this.buffer.length<5)return;e+=1+this.buffer[4]+2}else if(d===n.IPV6)e+=18;else throw new g(`Invalid address type in reply: ${d}`,"UND_ERR_SOCKS5_ADDR_TYPE");if(this.buffer.length<e)return;if(c!==o.SUCCEEDED){let a=this.getReplyErrorMessage(c);throw new g(`SOCKS5 connection failed: ${a}`,`UND_ERR_SOCKS5_REPLY_${c}`)}let f=4;if(d===n.IPV4)a=Array.from(this.buffer.subarray(f,f+4)).join("."),f+=4;else if(d===n.DOMAIN){let b=this.buffer[f];f+=1,a=this.buffer.subarray(f,f+b).toString(),f+=b}else if(d===n.IPV6){let b=[];for(let a=0;a<8;a++){let c=this.buffer.readUInt16BE(f+2*a);b.push(c.toString(16))}a=b.join(":"),f+=16}let h=this.buffer.readUInt16BE(f);this.buffer=k,this.state=p.CONNECTED,this.socket.removeListener("data",this.onSocketData),j("connected, bound address:",a,"port:",h),this.emit("connected",{address:a,port:h})}getReplyErrorMessage(a){switch(a){case o.GENERAL_FAILURE:return"General SOCKS server failure";case o.CONNECTION_NOT_ALLOWED:return"Connection not allowed by ruleset";case o.NETWORK_UNREACHABLE:return"Network unreachable";case o.HOST_UNREACHABLE:return"Host unreachable";case o.CONNECTION_REFUSED:return"Connection refused";case o.TTL_EXPIRED:return"TTL expired";case o.COMMAND_NOT_SUPPORTED:return"Command not supported";case o.ADDRESS_TYPE_NOT_SUPPORTED:return"Address type not supported";default:return`Unknown error code: ${a}`}}}a.exports={Socks5Client:q,AUTH_METHODS:l,COMMANDS:m,ADDRESS_TYPES:n,REPLY_CODES:o,STATES:p}},41702:(a,b,c)=>{var d=c(45654);c(33889),d.mgf=d.mgf||{},(a.exports=d.mgf.mgf1=d.mgf1=d.mgf1||{}).create=function(a){return{generate:function(b,c){for(var e=new d.util.ByteBuffer,f=Math.ceil(c/a.digestLength),g=0;g<f;g++){var h=new d.util.ByteBuffer;h.putInt32(g),a.start(),a.update(b+h.getBytes()),e.putBuffer(a.digest())}return e.truncate(e.length()-c),e.getBytes()}}}},41883:(a,b,c)=>{"use strict";c.d(b,{w:()=>k});var d=c(22256),e=c(38421),f=c(96997),g=c(50969);let h=new Map;function i(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("authorized_user"===b.type&&b.client_id&&b.client_secret&&b.refresh_token)return b;return null}catch{return null}}async function j(a,b,c,d){if(h.has(a))return h.get(a);let e=await (0,g.Fm)(`https://aiplatform.googleapis.com/v1/publishers/google/models/__probe__:generateContent?key=${a}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}",identity:c.identity,provider:b,format:c.format},d),f=await e.json().catch(()=>null),i=(f?.[0]?.error?.message||f?.error?.message||"").match(/projects\/([^/]+)\//),j=i?.[1]||null;return j&&h.set(a,j),j}class k extends d.Hv{constructor(a="vertex"){super(a,e.xq[a]||{})}buildUrl(a,b,c=0,d=null){let e=(0,f.Sc)(d?.apiKey),g=i(d?.apiKey),h=!!e||!!g||!!d?.accessToken,j=h?null:d?.apiKey,k=e?.project_id||g?.quota_project_id||d?.providerSpecificData?.projectId;if("vertex-partner"===this.provider){if(!k)throw Error("Vertex partner models require a project_id. Add it in providerSpecificData or use Service Account JSON.");let a=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/global/endpoints/openapi/chat/completions`;return j?`${a}?key=${j}`:a}let l=b?"streamGenerateContent":"generateContent";if(h){if(!k)throw Error("Vertex OAuth/ADC requires a project_id. Add quota_project_id to your ADC JSON or set providerSpecificData.projectId.");let c=d?.providerSpecificData?.location||"us-central1",e=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/${c}/publishers/google/models/${a}:${l}`;return b&&(e+="?alt=sse"),e}let m=`https://aiplatform.googleapis.com/v1/publishers/google/models/${a}:${l}`;return b&&(m+="?alt=sse"),j&&(m+=b?`&key=${j}`:`?key=${j}`),m}buildHeaders(a,b=!0){let c={"Content-Type":"application/json"};return a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),b&&(c.Accept="text/event-stream"),c}async refreshCredentials(a,b,c=null){let d=(0,f.Sc)(a?.apiKey);if(d){let a=await (0,f.pb)(d,b);return a?{accessToken:a.accessToken,expiresAt:a.expiresAt}:null}let e=i(a?.apiKey);if(e){let a=await (0,f.I9)(e.refresh_token,e.client_id,e.client_secret,b,this.provider,c);return a?.accessToken?{accessToken:a.accessToken,expiresAt:a.expiresAt}:null}return null}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:h,proxyOptions:k=null}){let l=(0,f.Sc)(d?.apiKey),m=i(d?.apiKey);if(l){let a=await (0,f.pb)(l,h);if(!a?.accessToken)throw Error("Vertex: failed to mint access token from Service Account JSON");d.accessToken=a.accessToken}if(m){let a=await (0,f.I9)(m.refresh_token,m.client_id,m.client_secret,h,this.provider,k);if(!a?.accessToken)throw Error("Vertex: failed to refresh access token from ADC JSON (authorized_user)");d.accessToken=a.accessToken}if("vertex-partner"===this.provider&&!l&&!m&&!d?.providerSpecificData?.projectId){let a=await j(d.apiKey,this.provider,this.config,k);if(!a)throw Error("Vertex: could not resolve project_id from API key. Please add it manually in provider settings.");h?.debug?.("VERTEX",`Resolved project_id: ${a}`),d.providerSpecificData={...d.providerSpecificData,projectId:a}}let n=this.buildUrl(a,c,0,d),o=this.buildHeaders(d,c),p=this.transformRequest(a,b,c,d);return{response:await (0,g.Fm)(n,{method:"POST",headers:o,body:JSON.stringify(p),signal:e,identity:this.resolveIdentity(d),provider:this.provider,format:this.config?.format},k),url:n,headers:o,transformedBody:p}}}},42425:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),e=c(38522),{redirectStatusSet:f,referrerPolicyTokens:g,badPortsSet:h}=c(19608),{getGlobalOrigin:i}=c(79412),{collectAnHTTPQuotedString:j,parseMIMEType:k}=c(16537),{performance:l}=c(643),{isValidHTTPToken:m,normalizedMethodRecordsBase:n}=c(84285),o=c(34589),{isUint8Array:p}=c(73429),{webidl:q}=c(32984),{isomorphicEncode:r,collectASequenceOfCodePoints:s,removeChars:t}=c(70745);function u(a){let b=a.urlList,c=b.length;return 0===c?null:b[c-1].toString()}function v(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c>126||c<32)return!1}return!0}function w(a){return a.urlList[a.urlList.length-1]}function x(a){return!1===(" "===a[0]||" "===a[0]||" "===a[a.length-1]||" "===a[a.length-1]||a.includes("\n")||a.includes("\r")||a.includes("\0"))}function y(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function z(a,b=!1){return(o(q.is.URL(a)),I(a=new URL(a)))?"no-referrer":(a.username="",a.password="",a.hash="",!0===b&&(a.pathname="",a.search=""),a)}let A=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),B=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function C(a){return a.includes(":")?("["===a[0]&&"]"===a[a.length-1]&&(a=a.slice(1,-1)),B(a)):A(a)}function D(a){var b;return!!q.is.URL(a)&&("about:blank"===a.href||"about:srcdoc"===a.href||"data:"===a.protocol||"blob:"===a.protocol||null!=(b=a.origin)&&"null"!==b&&(!!("https:"===(b=new URL(b)).protocol||"wss:"===b.protocol||C(b.hostname)||"localhost"===b.hostname||"localhost."===b.hostname||b.hostname.endsWith(".localhost")||b.hostname.endsWith(".localhost."))||"file:"===b.protocol))}function E(a,b){return a.origin===b.origin&&"null"===a.origin||a.protocol===b.protocol&&a.hostname===b.hostname&&a.port===b.port}let F=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function G(a,b,c=0,d=1){class e{#I;#aG;#aH;constructor(a,b){this.#I=a,this.#aG=b,this.#aH=0}next(){let e;if("object"!=typeof this||this===null||!(#I in this))throw TypeError(`'next' called on an object that does not implement interface ${a} Iterator.`);let f=this.#aH,g=b(this.#I);if(f>=g.length)return{value:void 0,done:!0};let{[c]:h,[d]:i}=g[f];switch(this.#aH=f+1,this.#aG){case"key":e=h;break;case"value":e=i;break;case"key+value":e=[h,i]}return{value:e,done:!1}}}return delete e.prototype.constructor,Object.setPrototypeOf(e.prototype,F),Object.defineProperties(e.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${a} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(a,b){return new e(a,b)}}async function H(a,b,c){try{let d=[],e=0;for(;;){let{done:f,value:g}=await a.read();if(f)return void b(Buffer.concat(d,e));if(!p(g))return void c(TypeError("Received non-Uint8Array chunk"));d.push(g),e+=g.length}}catch(a){c(a)}}function I(a){o("protocol"in a);let b=a.protocol;return"about:"===b||"blob:"===b||"data:"===b}function J(a){return"string"==typeof a&&":"===a[5]&&"h"===a[0]&&"t"===a[1]&&"t"===a[2]&&"p"===a[3]&&"s"===a[4]||"https:"===a.protocol}function K(a){o("protocol"in a);let b=a.protocol;return"http:"===b||"https:"===b}class L extends d{#aI;constructor(a){super(),this.#aI=a}_transform(a,b,c){if(!this._inflateStream){if(0===a.length)return void c();this._inflateStream=(15&a[0])==8?e.createInflate(this.#aI):e.createInflateRaw(this.#aI),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(a,b,c)}_final(a){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),a()}}function M(a,b){let c=b.get(a,!0);if(null===c)return null;let d={position:0},e=[],f="";for(;d.position<c.length;){if(f+=s(a=>'"'!==a&&","!==a,c,d),d.position<c.length)if(34===c.charCodeAt(d.position)){if(f+=j(c,d),d.position<c.length)continue}else o(44===c.charCodeAt(d.position)),d.position++;f=t(f,!0,!0,a=>9===a||32===a),e.push(f),f=""}return e}class N{get baseUrl(){return i()}get origin(){return this.baseUrl?.origin}policyContainer=y()}class O{settingsObject=new N}a.exports={isAborted:function(a){return"aborted"===a.controller.state},isCancelled:function(a){return"aborted"===a.controller.state||"terminated"===a.controller.state},isValidEncodedURL:v,tryUpgradeRequestToAPotentiallyTrustworthyURL:function(a){},clampAndCoarsenConnectionTimingInfo:function(a,b,c){return!a?.startTime||a.startTime<b?{domainLookupStartTime:b,domainLookupEndTime:b,connectionStartTime:b,connectionEndTime:b,secureConnectionStartTime:b,ALPNNegotiatedProtocol:a?.ALPNNegotiatedProtocol}:{domainLookupStartTime:a.domainLookupStartTime,domainLookupEndTime:a.domainLookupEndTime,connectionStartTime:a.connectionStartTime,connectionEndTime:a.connectionEndTime,secureConnectionStartTime:a.secureConnectionStartTime,ALPNNegotiatedProtocol:a.ALPNNegotiatedProtocol}},coarsenedSharedCurrentTime:function(a){return l.now()},determineRequestsReferrer:function(a){let b=a.referrerPolicy;o(b);let c=null;if("client"===a.referrer){let a=i();if(!a||"null"===a.origin)return"no-referrer";c=new URL(a)}else q.is.URL(a.referrer)&&(c=a.referrer);let d=z(c),e=z(c,!0);switch(d.toString().length>4096&&(d=e),b){case"no-referrer":return"no-referrer";case"origin":if(null!=e)return e;return z(c,!0);case"unsafe-url":return d;case"strict-origin":{let b=w(a);if(D(d)&&!D(b))return"no-referrer";return e}case"strict-origin-when-cross-origin":{let b=w(a);if(E(d,b))return d;if(D(d)&&!D(b))return"no-referrer";return e}case"same-origin":if(E(a,d))return d;return"no-referrer";case"origin-when-cross-origin":if(E(a,d))return d;return e;case"no-referrer-when-downgrade":{let b=w(a);if(D(d)&&!D(b))return"no-referrer";return d}}},makePolicyContainer:y,clonePolicyContainer:function(a){return{referrerPolicy:a.referrerPolicy}},appendFetchMetadata:function(a){if(!D(w(a)))return;let b=null;b=a.mode,a.headersList.set("sec-fetch-mode",b,!0)},appendRequestOriginHeader:function(a){let b=a.origin;if("client"!==b&&void 0!==b){if("cors"===a.responseTainting||"websocket"===a.mode)a.headersList.append("origin",b,!0);else if("GET"!==a.method&&"HEAD"!==a.method){switch(a.referrerPolicy){case"no-referrer":b=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":a.origin&&J(a.origin)&&!J(w(a))&&(b=null);break;case"same-origin":E(a,w(a))||(b=null)}a.headersList.append("origin",b,!0)}}},TAOCheck:function(){return"success"},corsCheck:function(){return"success"},crossOriginResourcePolicyCheck:function(){return"allowed"},createOpaqueTimingInfo:function(a){return{startTime:a.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:a.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}},setRequestReferrerPolicyOnRedirect:function(a,b){let c=function(a){let b=(a.headersList.get("referrer-policy",!0)??"").split(","),c="";if(b.length)for(let a=b.length;0!==a;a--){let d=b[a-1].trim();if(g.has(d)){c=d;break}}return c}(b);""!==c&&(a.referrerPolicy=c)},isValidHTTPToken:m,requestBadPort:function(a){let b=w(a);return K(b)&&h.has(b.port)?"blocked":"allowed"},requestCurrentURL:w,responseURL:u,responseLocationURL:function(a,b){var c;if(!f.has(a.status))return null;let d=a.headersList.get("location",!0);return null!==d&&x(d)&&(v(d)||(c=d,d=Buffer.from(c,"binary").toString("utf8")),d=new URL(d,u(a))),d&&!d.hash&&(d.hash=b),d},isURLPotentiallyTrustworthy:D,isValidReasonPhrase:function(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(!(9===c||c>=32&&c<=126||c>=128&&c<=255))return!1}return!0},sameOrigin:E,normalizeMethod:function(a){return n[a.toLowerCase()]??a},iteratorMixin:function(a,b,c,d=0,e=1,f){let g=G(a,c,d,e),h={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(b,c=globalThis){if(q.brandCheck(this,f),q.argumentLengthCheck(arguments,1,`${a}.forEach`),"function"!=typeof b)throw TypeError(`Failed to execute 'forEach' on '${a}': parameter 1 is not of type 'Function'.`);for(let{0:a,1:d}of g(this,"key+value"))b.call(c,d,a,this)}}};return Object.defineProperties(b.prototype,{...h,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:h.entries.value}})},createIterator:G,isValidHeaderName:m,isValidHeaderValue:x,isErrorLike:function(a){return a instanceof Error||a?.constructor?.name==="Error"||a?.constructor?.name==="DOMException"},fullyReadBody:function(a,b,c){try{let d=a.stream.getReader();H(d,b,c)}catch(a){c(a)}},readableStreamClose:function(a){try{a.close(),a.byobRequest?.respond(0)}catch(a){if(!a.message.includes("Controller is already closed")&&!a.message.includes("ReadableStream is already closed"))throw a}},urlIsLocal:I,urlHasHttpsScheme:J,urlIsHttpHttpsScheme:K,readAllBytes:H,simpleRangeHeaderValue:function(a,b){if(!a.startsWith("bytes"))return"failure";let c={position:5};if(b&&s(a=>" "===a||" "===a,a,c),61!==a.charCodeAt(c.position))return"failure";c.position++,b&&s(a=>" "===a||" "===a,a,c);let d=s(a=>{let b=a.charCodeAt(0);return b>=48&&b<=57},a,c),e=d.length?Number(d):null;if(b&&s(a=>" "===a||" "===a,a,c),45!==a.charCodeAt(c.position))return"failure";c.position++,b&&s(a=>" "===a||" "===a,a,c);let f=s(a=>{let b=a.charCodeAt(0);return b>=48&&b<=57},a,c),g=f.length?Number(f):null;return c.position<a.length||null===g&&null===e||null!==e&&null!==g&&e>g?"failure":{rangeStartValue:e,rangeEndValue:g}},buildContentRange:function(a,b,c){let d="bytes ";return d+=r(`${a}`),d+="-",d+=r(`${b}`),d+="/",d+=r(`${c}`)},createInflate:function(a){return new L(a)},extractMimeType:function(a){let b=null,c=null,d=null,e=M("content-type",a);if(null===e)return"failure";for(let a of e){let e=k(a);"failure"!==e&&"*/*"!==e.essence&&((d=e).essence!==c?(b=null,d.parameters.has("charset")&&(b=d.parameters.get("charset")),c=d.essence):d.parameters.has("charset")||null===b||d.parameters.set("charset",b))}return null==d?"failure":d},getDecodeSplit:M,environmentSettingsObject:new O,isOriginIPPotentiallyTrustworthy:C,hasAuthenticationEntry:function(a){return!1},includesCredentials:function(a){return!!(a.username||a.password)},isTraversableNavigable:function(a){return null!=a&&"client"!==a&&"no-traversable"!==a}}},42430:(a,b,c)=>{"use strict";let{addAbortListener:d}=c(78474),{environmentSettingsObject:e,readableStreamClose:f}=c(42425),{states:g,opcodes:h,sentCloseFrameState:i}=c(62026),{webidl:j}=c(32984),{getURLRecord:k,isValidSubprotocol:l,isEstablished:m,utf8Decode:n}=c(94050),{establishWebSocketConnection:o,failWebsocketConnection:p,closeWebSocketConnection:q}=c(4654),{channels:r}=c(62571),{WebsocketFrameSend:s}=c(45221),{ByteParser:t}=c(64821),{WebSocketError:u,createUnvalidatedWebSocketError:v}=c(87404),{kEnumerableProperty:w}=c(84285),{utf8DecodeBytes:x}=c(67449),y=!1;class z{#aJ;#aK;#aL;#aM;#aN;#aO;#aP=!1;#aQ={onConnectionEstablished:(a,b)=>this.#aR(a,b),onMessage:(a,b)=>this.#aS(a,b),onParserError:a=>p(this.#aQ,null,a.message),onParserDrain:()=>this.#aQ.socket.resume(),onSocketData:a=>{this.#aT.write(a)||this.#aQ.socket.pause()},onSocketError:a=>{this.#aQ.readyState=g.CLOSING,r.socketError.hasSubscribers&&r.socketError.publish(a),this.#aQ.socket.destroy()},onSocketClose:()=>queueMicrotask(()=>this.#aU()),onPing:()=>{},onPong:()=>{},readyState:g.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#aT;constructor(a,b){y||(process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),y=!0),j.argumentLengthCheck(arguments,1,"WebSocket"),a=j.converters.USVString(a),null!==b&&(b=j.converters.WebSocketStreamOptions(b));const c=k(a,e.settingsObject.baseUrl),f=b.protocols;if(f.length!==new Set(f.map(a=>a.toLowerCase())).size||f.length>0&&!f.every(a=>l(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#aJ=c.toString(),this.#aK=Promise.withResolvers(),this.#aL=Promise.withResolvers(),null!=b.signal){const a=b.signal;if(a.aborted){this.#aK.reject(a.reason),this.#aL.reject(a.reason);return}d(a,()=>{m(this.#aQ.readyState)||(p(this.#aQ),this.#aQ.readyState=g.CLOSING,this.#aK.reject(a.reason),this.#aL.reject(a.reason),this.#aP=!0)})}const h=e.settingsObject;this.#aQ.controller=o(c,f,h,this.#aQ,b)}get url(){return this.#aJ.toString()}get opened(){return this.#aK.promise}get closed(){return this.#aL.promise}close(a){null!==a&&(a=j.converters.WebSocketCloseInfo(a));let b=a.closeCode??null,c=a.reason;q(this.#aQ,b,c,!0)}#aV(a){a=j.converters.WebSocketStreamWrite(a);let b=Promise.withResolvers(),c=null,d=null;if(j.is.BufferSource(a))c=new Uint8Array(ArrayBuffer.isView(a)?new Uint8Array(a.buffer,a.byteOffset,a.byteLength):a.slice()),d=h.BINARY;else{let e;try{e=j.converters.DOMString(a)}catch(a){return b.reject(a),b.promise}c=new TextEncoder().encode(e),d=h.TEXT}if(this.#aQ.closeState.has(i.SENT)||this.#aQ.closeState.has(i.RECEIVED))b.resolve(void 0);else{let a=new s(c);this.#aQ.socket.write(a.createFrame(d),()=>{b.resolve(void 0)})}return b.promise}#aR(a,b){this.#aQ.socket=a.socket;let c=this.#aQ.controller.dispatcher?.webSocketOptions?.maxFragments,d=this.#aQ.controller.dispatcher?.webSocketOptions?.maxPayloadSize,e=new t(this.#aQ,b,{maxFragments:c,maxPayloadSize:d});e.on("drain",()=>this.#aQ.onParserDrain()),e.on("error",a=>this.#aQ.onParserError(a)),this.#aT=e,this.#aQ.readyState=g.OPEN;let f=a.headersList.get("sec-websocket-extensions")??"",h=a.headersList.get("sec-websocket-protocol")??"",i=new ReadableStream({start:a=>{this.#aN=a},pull:()=>this.#aW(),cancel:a=>this.#aX(a)}),j=new WritableStream({start:a=>{this.#aO=a},write:a=>this.#aV(a),close:()=>q(this.#aQ,null,null),abort:a=>this.#aY(a)});this.#aM=i,this.#aK.resolve({extensions:f,protocol:h,readable:i,writable:j})}#aS(a,b){let c;if(this.#aQ.readyState===g.OPEN){if(a===h.TEXT)try{c=n(b)}catch{p(this.#aQ,1007,"Received invalid UTF-8 in text frame.");return}else a===h.BINARY&&(c=new Uint8Array(b.buffer,b.byteOffset,b.byteLength));this.#aN.enqueue(c),this.#aN.desiredSize<=0&&this.#aQ.socket.pause()}}#aU(){let a=this.#aQ.closeState.has(i.SENT)&&this.#aQ.closeState.has(i.RECEIVED);if(this.#aQ.readyState=g.CLOSED,this.#aP)return;this.#aQ.wasEverConnected||this.#aK.reject(new u("Socket never opened"));let b=this.#aT?.closingInfo,c=b?.code??1005;this.#aQ.closeState.has(i.RECEIVED)||(c=1006);let d=b?.reason==null?"":x(Buffer.from(b.reason));if(a)f(this.#aN),this.#aO.error(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError")),this.#aL.resolve({closeCode:c,reason:d});else{let a=v("unclean close",c,d);this.#aN?.error(a),this.#aO?.error(a),this.#aL.reject(a)}}#aY(a){let b=null,c="";j.is.WebSocketError(a)&&(b=a.closeCode,c=a.reason),q(this.#aQ,b,c)}#aW(){this.#aQ.socket.resume()}#aX(a){this.#aY(a)}}Object.defineProperties(z.prototype,{url:w,opened:w,closed:w,close:w,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}}),j.converters.WebSocketStreamOptions=j.dictionaryConverter([{key:"protocols",converter:j.sequenceConverter(j.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:j.nullableConverter(j.converters.AbortSignal),defaultValue:()=>null}]),j.converters.WebSocketCloseInfo=j.dictionaryConverter([{key:"closeCode",converter:a=>j.converters["unsigned short"](a,j.attributes.EnforceRange)},{key:"reason",converter:j.converters.USVString,defaultValue:()=>""}]),j.converters.WebSocketStreamWrite=function(a){return"string"==typeof a?j.converters.USVString(a):j.converters.BufferSource(a)},a.exports={WebSocketStream:z}},43086:(a,b,c)=>{"use strict";let d=c(5318),{kClose:e,kDestroy:f,kClosed:g,kDestroyed:h,kDispatch:i,kNoProxyAgent:j,kHttpProxyAgent:k,kHttpsProxyAgent:l}=c(49176),m=c(48841),n=c(37417),o={"http:":80,"https:":443};class p extends d{#aZ=null;#a$=null;#y=null;constructor(a={}){super(a),this.#y=a;const{httpProxy:b,httpsProxy:c,noProxy:d,...e}=a;this[j]=new n(e);const f=b??process.env.http_proxy??process.env.HTTP_PROXY;f?this[k]=new m({...e,uri:f}):this[k]=this[j];const g=c??process.env.https_proxy??process.env.HTTPS_PROXY;g?this[l]=new m({...e,uri:g}):this[l]=this[k],this.#a_()}[i](a,b){let c=new URL(a.origin);return this.#a0(c).dispatch(a,b)}[e](){return Promise.all([this[j].close(),!this[k][g]&&this[k].close(),!this[l][g]&&this[l].close()])}[f](a){return Promise.all([this[j].destroy(a),!this[k][h]&&this[k].destroy(a),!this[l][h]&&this[l].destroy(a)])}#a0(a){let{protocol:b,host:c,port:d}=a;return((c=c.replace(/:\d*$/,"").replace(/^\[(.+)\]$/,"$1").toLowerCase()).length>1&&46===c.charCodeAt(c.length-1)&&(c=c.slice(0,-1)),d=Number.parseInt(d,10)||o[b]||0,this.#a1(c,d))?"https:"===b?this[l]:this[k]:this[j]}#a1(a,b){if(this.#a2&&this.#a_(),0===this.#a$.length)return!0;for(let c=0;c<this.#a$.length;c++){let d=this.#a$[c];if("*"===d.hostname){if(d.port&&d.port!==b)continue;return!1}if((!d.port||d.port===b)&&(!d.wildcard&&a===d.hostname||a.slice(-(d.hostname.length+1))===`.${d.hostname}`))return!1}return!0}#a_(){let a=this.#y.noProxy??this.#a3,b=a.split(/[,\s]/),c=[];for(let a=0;a<b.length;a++){let d,e,f=b[a];if(!f)continue;let g=f.match(/^\[(.+)\]:(\d+)$/);if(g)d=g[1],e=Number.parseInt(g[2],10);else{let a=f.replace(/^\[(.+)\]$/,"$1"),b=1===(a.match(/:/g)||[]).length&&a.match(/^(.+):(\d+)$/);d=b?b[1]:a,e=b?Number.parseInt(b[2],10):0}let h=42===f.charCodeAt(0);c.push({hostname:d.replace(/^\*?\./,"").replace(/^(.+)\.$/,"$1").toLowerCase(),port:e,wildcard:h})}this.#aZ=a,this.#a$=c}get #a2(){return void 0===this.#y.noProxy&&this.#aZ!==this.#a3}get #a3(){return process.env.no_proxy??process.env.NO_PROXY??""}}a.exports=p},43835:(a,b,c)=>{"use strict";c.d(b,{$D:()=>m,P9:()=>j,We:()=>h,aZ:()=>n,rG:()=>i});var d=c(17525),e=c(26317);let f="-agentic",g="-thinking";function h(a){return"google"===a||"github"===a?"arn:aws:codewhisperer:us-east-1:699475941385:profile/EHGA3GRVQMUK":"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX"}let i=`
|
|
301
|
+
`)),(0,p.nu)(d,{response:{}})&&((0,k.s)("CODEX-WS",`terminal ${d} | closing`),r=!0),z(),A()}},h.onclose=()=>{if(!t){if(r){try{for(;m.length>0;)l.enqueue(m.shift())}catch{}w();return}w(Error("codex ws closed before terminal event"))}}},pull(){z(),A()},cancel(){w(null,!1)}}),{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache","X-Switchboard-Transport":"responses-websocket"}}),url:a,headers:b,ready:v,format:n.h.OPENAI_RESPONSES}}({wsUrl:String(f).replace(/^http:\/\//i,"ws://").replace(/^https:\/\//i,"wss://"),headers:i,request:e,signal:a.signal,...d?{dispatcher:d}:{}});return await j.ready,c.failures=0,(0,k.s)("CODEX-WS",`transport=responses_websocket | ${f}`),{response:j.response,url:f,headers:i,transformedBody:e}}catch(d){if(d?.name==="AbortError")throw d;let b=c&&d?.code!=="codex_ws_error_frame";return b&&(c.failures+=1),b&&c.failures>=3?(c.openUntil=Date.now()+3e5,c.failures=0,a.log?.warn?.("CODEX-WS",`websocket transport failing repeatedly, pausing attempts for 5 minutes: ${d.message}`)):a.log?.warn?.("CODEX-WS",`websocket transport failed, falling back to HTTP: ${d.message}`),(0,k.s)("CODEX-WS",`handshake failed: ${d.message}`),null}}parseError(a,b){if(429===a.status&&b)try{let a=JSON.parse(b),c=a?.error;if(c?.type==="usage_limit_reached"){let a=Date.now(),d=null;if("number"==typeof c.resets_at&&c.resets_at>0){let b=1e3*c.resets_at;b>a&&(d=b)}if(!d&&"number"==typeof c.resets_in_seconds&&c.resets_in_seconds>0&&(d=a+1e3*c.resets_in_seconds),d)return{status:429,message:c.message||b,resetsAtMs:d}}}catch{}return super.parseError(a,b)}transformRequest(a,b,c,d){this._isCompact=!!b._compact,delete b._compact,this._currentSessionId=(0,l.oV)({headers:d?.rawHeaders,body:b,connectionId:d?.connectionId,workspaceId:d?.providerSpecificData?.workspaceId,scope:"codex"});let f=(0,h.m)(b.input);if(f&&(b.input=f),(!b.input||Array.isArray(b.input)&&0===b.input.length)&&(b.input=[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]),Array.isArray(b.input))for(let a of b.input)!(!a||"object"!=typeof a||Array.isArray(a))&&("system"!==a.role||a.type&&"message"!==a.type||(a.role="developer"));Array.isArray(b.input)&&(b.input=b.input.filter(a=>{if("string"==typeof a&&u.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&u.test(a.id)&&delete a.id}return!0})),function(a){if(!Array.isArray(a.tools))return;let b=new Set;if(a.tools=a.tools.filter(a=>{if(!a||"object"!=typeof a||Array.isArray(a))return!1;let c="string"==typeof a.type?a.type:"";if("namespace"===c){if(Array.isArray(a.tools))for(let c of a.tools){let a="string"==typeof c?.name?c.name.trim().slice(0,128):"";a&&b.add(a)}return!0}if("function"!==c)return!!w.has(c)||!!c&&!a.function&&"string"!=typeof a.name&&v.has(c);let d=a.function&&"object"==typeof a.function&&!Array.isArray(a.function)?a.function:null,e=("string"==typeof a.name?a.name:"string"==typeof d?.name?d.name:"").trim();if(!e)return!1;let f="string"==typeof a.description?a.description:"string"==typeof d?.description?d.description:"",g=a.parameters&&"object"==typeof a.parameters&&!Array.isArray(a.parameters)?a.parameters:d?.parameters&&"object"==typeof d.parameters&&!Array.isArray(d.parameters)?d.parameters:{type:"object",properties:{}};for(let b of Object.keys(a))delete a[b];return a.type="function",a.name=e.slice(0,128),f&&(a.description=f),a.parameters=g,b.add(e),!0}),a.tool_choice&&"object"==typeof a.tool_choice&&!Array.isArray(a.tool_choice)&&"function"===a.tool_choice.type){let c="string"==typeof a.tool_choice.name?a.tool_choice.name.trim():"";c&&b.has(c)||delete a.tool_choice}}(b),b.stream=!0,b.instructions&&""!==b.instructions.trim()||(b.instructions=e),b.store=!1,!b.prompt_cache_key&&this._currentSessionId&&(b.prompt_cache_key=this._currentSessionId),b.model=(0,j.kt)("cx",b.model||a);let g=null;for(let a of["none","low","medium","high","xhigh"])if(b.model.endsWith(`-${a}`)){g=a,b.model=b.model.replace(`-${a}`,"");break}if(b.reasoning)b.reasoning.summary||(b.reasoning.summary="auto");else{let a=b.reasoning_effort||g||"low";b.reasoning={effort:a,summary:"auto"}}for(let a of(delete b.reasoning_effort,b.reasoning&&b.reasoning.effort&&"none"!==b.reasoning.effort&&(b.include=["reasoning.encrypted_content"]),delete b.temperature,delete b.top_p,delete b.frequency_penalty,delete b.presence_penalty,delete b.logprobs,delete b.top_logprobs,delete b.n,delete b.seed,delete b.max_tokens,delete b.max_completion_tokens,delete b.max_output_tokens,delete b.user,delete b.prompt_cache_retention,delete b.metadata,delete b.stream_options,delete b.safety_identifier,delete b.previous_response_id,Object.keys(b)))x.has(a)||delete b[a];return b}}},40603:(a,b,c)=>{"use strict";let{EventEmitter:d}=c(78474),{Buffer:e}=c(4573),{InvalidArgumentError:f,Socks5ProxyError:g}=c(61448),{debuglog:h}=c(57975),{parseAddress:i}=c(33297),j=h("undici:socks5"),k=e.alloc(0),l={NO_AUTH:0,GSSAPI:1,USERNAME_PASSWORD:2,NO_ACCEPTABLE:255},m={CONNECT:1,BIND:2,UDP_ASSOCIATE:3},n={IPV4:1,DOMAIN:3,IPV6:4},o={SUCCEEDED:0,GENERAL_FAILURE:1,CONNECTION_NOT_ALLOWED:2,NETWORK_UNREACHABLE:3,HOST_UNREACHABLE:4,CONNECTION_REFUSED:5,TTL_EXPIRED:6,COMMAND_NOT_SUPPORTED:7,ADDRESS_TYPE_NOT_SUPPORTED:8},p={INITIAL:"initial",HANDSHAKING:"handshaking",AUTHENTICATING:"authenticating",AUTHENTICATED:"authenticated",CONNECTING:"connecting",CONNECTED:"connected",ERROR:"error",CLOSED:"closed"};class q extends d{constructor(a,b={}){if(super(),!a)throw new f("socket is required");this.socket=a,this.options=b,this.state=p.INITIAL,this.buffer=k,this.onSocketData=this.onData.bind(this),this.onSocketError=this.onError.bind(this),this.onSocketClose=this.onClose.bind(this),this.authMethods=[],b.username&&b.password&&this.authMethods.push(l.USERNAME_PASSWORD),this.authMethods.push(l.NO_AUTH),this.socket.on("data",this.onSocketData),this.socket.on("error",this.onSocketError),this.socket.on("close",this.onSocketClose)}onData(a){j("received data",a.length,"bytes in state",this.state),this.buffer=e.concat([this.buffer,a]);try{switch(this.state){case p.HANDSHAKING:this.handleHandshakeResponse();break;case p.AUTHENTICATING:this.handleAuthResponse();break;case p.CONNECTING:this.handleConnectResponse()}}catch(a){this.onError(a)}}onError(a){j("socket error",a),this.state=p.ERROR,this.emit("error",a),this.destroy()}onClose(){j("socket closed"),this.state=p.CLOSED,this.emit("close")}destroy(){this.socket&&!this.socket.destroyed&&this.socket.destroy()}markAuthenticated(){this.state=p.AUTHENTICATED,this.emit("authenticated")}handshake(){if(this.state!==p.INITIAL)throw new f("Handshake already started");j("starting handshake with",this.authMethods.length,"auth methods"),this.state=p.HANDSHAKING;let a=e.alloc(2+this.authMethods.length);a[0]=5,a[1]=this.authMethods.length,this.authMethods.forEach((b,c)=>{a[2+c]=b}),this.socket.write(a)}handleHandshakeResponse(){if(this.buffer.length<2)return;let a=this.buffer[0],b=this.buffer[1];if(5!==a)throw new g(`Invalid SOCKS version: ${a}`,"UND_ERR_SOCKS5_VERSION");if(b===l.NO_ACCEPTABLE)throw new g("No acceptable authentication method","UND_ERR_SOCKS5_AUTH_REJECTED");if(this.buffer=this.buffer.subarray(2),j("server selected auth method",b),b===l.NO_AUTH)this.markAuthenticated();else if(b===l.USERNAME_PASSWORD)this.state=p.AUTHENTICATING,this.sendAuthRequest();else throw new g(`Unsupported authentication method: ${b}`,"UND_ERR_SOCKS5_AUTH_METHOD")}sendAuthRequest(){let{username:a,password:b}=this.options;if(!a||!b)throw new f("Username and password required for authentication");j("sending username/password auth");let c=e.from(a),d=e.from(b);if(c.length>255||d.length>255)throw new f("Username or password too long");let g=e.alloc(3+c.length+d.length);g[0]=1,g[1]=c.length,c.copy(g,2),g[2+c.length]=d.length,d.copy(g,3+c.length),this.socket.write(g)}handleAuthResponse(){if(this.buffer.length<2)return;let a=this.buffer[0],b=this.buffer[1];if(1!==a)throw new g(`Invalid auth sub-negotiation version: ${a}`,"UND_ERR_SOCKS5_AUTH_VERSION");if(0!==b)throw new g("Authentication failed","UND_ERR_SOCKS5_AUTH_FAILED");this.buffer=this.buffer.subarray(2),j("authentication successful"),this.markAuthenticated()}connect(a,b){if(this.state===p.CONNECTING||this.state===p.CONNECTED)throw new f("Connection already in progress");if(this.state!==p.AUTHENTICATED)throw new f("Client must be authenticated before CONNECT");j("connecting to",a,b),this.state=p.CONNECTING;let c=this.buildConnectRequest(m.CONNECT,a,b);this.socket.write(c)}buildConnectRequest(a,b,c){let{type:d,buffer:f}=i(b),g=e.alloc(4+f.length+2);return g[0]=5,g[1]=a,g[2]=0,g[3]=d,f.copy(g,4),g.writeUInt16BE(c,4+f.length),g}handleConnectResponse(){let a;if(this.buffer.length<4)return;let b=this.buffer[0],c=this.buffer[1],d=this.buffer[3];if(5!==b)throw new g(`Invalid SOCKS version in reply: ${b}`,"UND_ERR_SOCKS5_REPLY_VERSION");let e=4;if(d===n.IPV4)e+=6;else if(d===n.DOMAIN){if(this.buffer.length<5)return;e+=1+this.buffer[4]+2}else if(d===n.IPV6)e+=18;else throw new g(`Invalid address type in reply: ${d}`,"UND_ERR_SOCKS5_ADDR_TYPE");if(this.buffer.length<e)return;if(c!==o.SUCCEEDED){let a=this.getReplyErrorMessage(c);throw new g(`SOCKS5 connection failed: ${a}`,`UND_ERR_SOCKS5_REPLY_${c}`)}let f=4;if(d===n.IPV4)a=Array.from(this.buffer.subarray(f,f+4)).join("."),f+=4;else if(d===n.DOMAIN){let b=this.buffer[f];f+=1,a=this.buffer.subarray(f,f+b).toString(),f+=b}else if(d===n.IPV6){let b=[];for(let a=0;a<8;a++){let c=this.buffer.readUInt16BE(f+2*a);b.push(c.toString(16))}a=b.join(":"),f+=16}let h=this.buffer.readUInt16BE(f);this.buffer=k,this.state=p.CONNECTED,this.socket.removeListener("data",this.onSocketData),j("connected, bound address:",a,"port:",h),this.emit("connected",{address:a,port:h})}getReplyErrorMessage(a){switch(a){case o.GENERAL_FAILURE:return"General SOCKS server failure";case o.CONNECTION_NOT_ALLOWED:return"Connection not allowed by ruleset";case o.NETWORK_UNREACHABLE:return"Network unreachable";case o.HOST_UNREACHABLE:return"Host unreachable";case o.CONNECTION_REFUSED:return"Connection refused";case o.TTL_EXPIRED:return"TTL expired";case o.COMMAND_NOT_SUPPORTED:return"Command not supported";case o.ADDRESS_TYPE_NOT_SUPPORTED:return"Address type not supported";default:return`Unknown error code: ${a}`}}}a.exports={Socks5Client:q,AUTH_METHODS:l,COMMANDS:m,ADDRESS_TYPES:n,REPLY_CODES:o,STATES:p}},41702:(a,b,c)=>{var d=c(45654);c(33889),d.mgf=d.mgf||{},(a.exports=d.mgf.mgf1=d.mgf1=d.mgf1||{}).create=function(a){return{generate:function(b,c){for(var e=new d.util.ByteBuffer,f=Math.ceil(c/a.digestLength),g=0;g<f;g++){var h=new d.util.ByteBuffer;h.putInt32(g),a.start(),a.update(b+h.getBytes()),e.putBuffer(a.digest())}return e.truncate(e.length()-c),e.getBytes()}}}},41883:(a,b,c)=>{"use strict";c.d(b,{w:()=>k});var d=c(22256),e=c(38421),f=c(96997),g=c(50969);let h=new Map;function i(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("authorized_user"===b.type&&b.client_id&&b.client_secret&&b.refresh_token)return b;return null}catch{return null}}async function j(a,b,c,d){if(h.has(a))return h.get(a);let e=await (0,g.Fm)(`https://aiplatform.googleapis.com/v1/publishers/google/models/__probe__:generateContent?key=${a}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}",identity:c.identity,provider:b,format:c.format},d),f=await e.json().catch(()=>null),i=(f?.[0]?.error?.message||f?.error?.message||"").match(/projects\/([^/]+)\//),j=i?.[1]||null;return j&&h.set(a,j),j}class k extends d.Hv{constructor(a="vertex"){super(a,e.xq[a]||{})}buildUrl(a,b,c=0,d=null){let e=(0,f.Sc)(d?.apiKey),g=i(d?.apiKey),h=!!e||!!g||!!d?.accessToken,j=h?null:d?.apiKey,k=e?.project_id||g?.quota_project_id||d?.providerSpecificData?.projectId;if("vertex-partner"===this.provider){if(!k)throw Error("Vertex partner models require a project_id. Add it in providerSpecificData or use Service Account JSON.");let a=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/global/endpoints/openapi/chat/completions`;return j?`${a}?key=${j}`:a}let l=b?"streamGenerateContent":"generateContent";if(h){if(!k)throw Error("Vertex OAuth/ADC requires a project_id. Add quota_project_id to your ADC JSON or set providerSpecificData.projectId.");let c=d?.providerSpecificData?.location||"us-central1",e=`https://aiplatform.googleapis.com/v1/projects/${k}/locations/${c}/publishers/google/models/${a}:${l}`;return b&&(e+="?alt=sse"),e}let m=`https://aiplatform.googleapis.com/v1/publishers/google/models/${a}:${l}`;return b&&(m+="?alt=sse"),j&&(m+=b?`&key=${j}`:`?key=${j}`),m}buildHeaders(a,b=!0){let c={"Content-Type":"application/json"};return a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),b&&(c.Accept="text/event-stream"),c}async refreshCredentials(a,b,c=null){let d=(0,f.Sc)(a?.apiKey);if(d){let a=await (0,f.pb)(d,b);return a?{accessToken:a.accessToken,expiresAt:a.expiresAt}:null}let e=i(a?.apiKey);if(e){let a=await (0,f.I9)(e.refresh_token,e.client_id,e.client_secret,b,this.provider,c);return a?.accessToken?{accessToken:a.accessToken,expiresAt:a.expiresAt}:null}return null}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:h,proxyOptions:k=null}){let l=(0,f.Sc)(d?.apiKey),m=i(d?.apiKey);if(l){let a=await (0,f.pb)(l,h);if(!a?.accessToken)throw Error("Vertex: failed to mint access token from Service Account JSON");d.accessToken=a.accessToken}if(m){let a=await (0,f.I9)(m.refresh_token,m.client_id,m.client_secret,h,this.provider,k);if(!a?.accessToken)throw Error("Vertex: failed to refresh access token from ADC JSON (authorized_user)");d.accessToken=a.accessToken}if("vertex-partner"===this.provider&&!l&&!m&&!d?.providerSpecificData?.projectId){let a=await j(d.apiKey,this.provider,this.config,k);if(!a)throw Error("Vertex: could not resolve project_id from API key. Please add it manually in provider settings.");h?.debug?.("VERTEX",`Resolved project_id: ${a}`),d.providerSpecificData={...d.providerSpecificData,projectId:a}}let n=this.buildUrl(a,c,0,d),o=this.buildHeaders(d,c),p=this.transformRequest(a,b,c,d);return{response:await (0,g.Fm)(n,{method:"POST",headers:o,body:JSON.stringify(p),signal:e,identity:this.resolveIdentity(d),provider:this.provider,format:this.config?.format},k),url:n,headers:o,transformedBody:p}}}},42425:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),e=c(38522),{redirectStatusSet:f,referrerPolicyTokens:g,badPortsSet:h}=c(19608),{getGlobalOrigin:i}=c(79412),{collectAnHTTPQuotedString:j,parseMIMEType:k}=c(16537),{performance:l}=c(643),{isValidHTTPToken:m,normalizedMethodRecordsBase:n}=c(84285),o=c(34589),{isUint8Array:p}=c(73429),{webidl:q}=c(32984),{isomorphicEncode:r,collectASequenceOfCodePoints:s,removeChars:t}=c(70745);function u(a){let b=a.urlList,c=b.length;return 0===c?null:b[c-1].toString()}function v(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c>126||c<32)return!1}return!0}function w(a){return a.urlList[a.urlList.length-1]}function x(a){return!1===(" "===a[0]||" "===a[0]||" "===a[a.length-1]||" "===a[a.length-1]||a.includes("\n")||a.includes("\r")||a.includes("\0"))}function y(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function z(a,b=!1){return(o(q.is.URL(a)),I(a=new URL(a)))?"no-referrer":(a.username="",a.password="",a.hash="",!0===b&&(a.pathname="",a.search=""),a)}let A=RegExp.prototype.test.bind(/^127\.(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)\.){2}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]\d|\d)$/),B=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function C(a){return a.includes(":")?("["===a[0]&&"]"===a[a.length-1]&&(a=a.slice(1,-1)),B(a)):A(a)}function D(a){var b;return!!q.is.URL(a)&&("about:blank"===a.href||"about:srcdoc"===a.href||"data:"===a.protocol||"blob:"===a.protocol||null!=(b=a.origin)&&"null"!==b&&(!!("https:"===(b=new URL(b)).protocol||"wss:"===b.protocol||C(b.hostname)||"localhost"===b.hostname||"localhost."===b.hostname||b.hostname.endsWith(".localhost")||b.hostname.endsWith(".localhost."))||"file:"===b.protocol))}function E(a,b){return a.origin===b.origin&&"null"===a.origin||a.protocol===b.protocol&&a.hostname===b.hostname&&a.port===b.port}let F=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function G(a,b,c=0,d=1){class e{#I;#aG;#aH;constructor(a,b){this.#I=a,this.#aG=b,this.#aH=0}next(){let e;if("object"!=typeof this||this===null||!(#I in this))throw TypeError(`'next' called on an object that does not implement interface ${a} Iterator.`);let f=this.#aH,g=b(this.#I);if(f>=g.length)return{value:void 0,done:!0};let{[c]:h,[d]:i}=g[f];switch(this.#aH=f+1,this.#aG){case"key":e=h;break;case"value":e=i;break;case"key+value":e=[h,i]}return{value:e,done:!1}}}return delete e.prototype.constructor,Object.setPrototypeOf(e.prototype,F),Object.defineProperties(e.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${a} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(a,b){return new e(a,b)}}async function H(a,b,c){try{let d=[],e=0;for(;;){let{done:f,value:g}=await a.read();if(f)return void b(Buffer.concat(d,e));if(!p(g))return void c(TypeError("Received non-Uint8Array chunk"));d.push(g),e+=g.length}}catch(a){c(a)}}function I(a){o("protocol"in a);let b=a.protocol;return"about:"===b||"blob:"===b||"data:"===b}function J(a){return"string"==typeof a&&":"===a[5]&&"h"===a[0]&&"t"===a[1]&&"t"===a[2]&&"p"===a[3]&&"s"===a[4]||"https:"===a.protocol}function K(a){o("protocol"in a);let b=a.protocol;return"http:"===b||"https:"===b}class L extends d{#aI;constructor(a){super(),this.#aI=a}_transform(a,b,c){if(!this._inflateStream){if(0===a.length)return void c();this._inflateStream=(15&a[0])==8?e.createInflate(this.#aI):e.createInflateRaw(this.#aI),this._inflateStream.on("data",this.push.bind(this)),this._inflateStream.on("end",()=>this.push(null)),this._inflateStream.on("error",a=>this.destroy(a))}this._inflateStream.write(a,b,c)}_final(a){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),a()}}function M(a,b){let c=b.get(a,!0);if(null===c)return null;let d={position:0},e=[],f="";for(;d.position<c.length;){if(f+=s(a=>'"'!==a&&","!==a,c,d),d.position<c.length)if(34===c.charCodeAt(d.position)){if(f+=j(c,d),d.position<c.length)continue}else o(44===c.charCodeAt(d.position)),d.position++;f=t(f,!0,!0,a=>9===a||32===a),e.push(f),f=""}return e}class N{get baseUrl(){return i()}get origin(){return this.baseUrl?.origin}policyContainer=y()}class O{settingsObject=new N}a.exports={isAborted:function(a){return"aborted"===a.controller.state},isCancelled:function(a){return"aborted"===a.controller.state||"terminated"===a.controller.state},isValidEncodedURL:v,tryUpgradeRequestToAPotentiallyTrustworthyURL:function(a){},clampAndCoarsenConnectionTimingInfo:function(a,b,c){return!a?.startTime||a.startTime<b?{domainLookupStartTime:b,domainLookupEndTime:b,connectionStartTime:b,connectionEndTime:b,secureConnectionStartTime:b,ALPNNegotiatedProtocol:a?.ALPNNegotiatedProtocol}:{domainLookupStartTime:a.domainLookupStartTime,domainLookupEndTime:a.domainLookupEndTime,connectionStartTime:a.connectionStartTime,connectionEndTime:a.connectionEndTime,secureConnectionStartTime:a.secureConnectionStartTime,ALPNNegotiatedProtocol:a.ALPNNegotiatedProtocol}},coarsenedSharedCurrentTime:function(a){return l.now()},determineRequestsReferrer:function(a){let b=a.referrerPolicy;o(b);let c=null;if("client"===a.referrer){let a=i();if(!a||"null"===a.origin)return"no-referrer";c=new URL(a)}else q.is.URL(a.referrer)&&(c=a.referrer);let d=z(c),e=z(c,!0);switch(d.toString().length>4096&&(d=e),b){case"no-referrer":return"no-referrer";case"origin":if(null!=e)return e;return z(c,!0);case"unsafe-url":return d;case"strict-origin":{let b=w(a);if(D(d)&&!D(b))return"no-referrer";return e}case"strict-origin-when-cross-origin":{let b=w(a);if(E(d,b))return d;if(D(d)&&!D(b))return"no-referrer";return e}case"same-origin":if(E(a,d))return d;return"no-referrer";case"origin-when-cross-origin":if(E(a,d))return d;return e;case"no-referrer-when-downgrade":{let b=w(a);if(D(d)&&!D(b))return"no-referrer";return d}}},makePolicyContainer:y,clonePolicyContainer:function(a){return{referrerPolicy:a.referrerPolicy}},appendFetchMetadata:function(a){if(!D(w(a)))return;let b=null;b=a.mode,a.headersList.set("sec-fetch-mode",b,!0)},appendRequestOriginHeader:function(a){let b=a.origin;if("client"!==b&&void 0!==b){if("cors"===a.responseTainting||"websocket"===a.mode)a.headersList.append("origin",b,!0);else if("GET"!==a.method&&"HEAD"!==a.method){switch(a.referrerPolicy){case"no-referrer":b=null;break;case"no-referrer-when-downgrade":case"strict-origin":case"strict-origin-when-cross-origin":a.origin&&J(a.origin)&&!J(w(a))&&(b=null);break;case"same-origin":E(a,w(a))||(b=null)}a.headersList.append("origin",b,!0)}}},TAOCheck:function(){return"success"},corsCheck:function(){return"success"},crossOriginResourcePolicyCheck:function(){return"allowed"},createOpaqueTimingInfo:function(a){return{startTime:a.startTime??0,redirectStartTime:0,redirectEndTime:0,postRedirectStartTime:a.startTime??0,finalServiceWorkerStartTime:0,finalNetworkResponseStartTime:0,finalNetworkRequestStartTime:0,endTime:0,encodedBodySize:0,decodedBodySize:0,finalConnectionTimingInfo:null}},setRequestReferrerPolicyOnRedirect:function(a,b){let c=function(a){let b=(a.headersList.get("referrer-policy",!0)??"").split(","),c="";if(b.length)for(let a=b.length;0!==a;a--){let d=b[a-1].trim();if(g.has(d)){c=d;break}}return c}(b);""!==c&&(a.referrerPolicy=c)},isValidHTTPToken:m,requestBadPort:function(a){let b=w(a);return K(b)&&h.has(b.port)?"blocked":"allowed"},requestCurrentURL:w,responseURL:u,responseLocationURL:function(a,b){var c;if(!f.has(a.status))return null;let d=a.headersList.get("location",!0);return null!==d&&x(d)&&(v(d)||(c=d,d=Buffer.from(c,"binary").toString("utf8")),d=new URL(d,u(a))),d&&!d.hash&&(d.hash=b),d},isURLPotentiallyTrustworthy:D,isValidReasonPhrase:function(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(!(9===c||c>=32&&c<=126||c>=128&&c<=255))return!1}return!0},sameOrigin:E,normalizeMethod:function(a){return n[a.toLowerCase()]??a},iteratorMixin:function(a,b,c,d=0,e=1,f){let g=G(a,c,d,e),h={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return q.brandCheck(this,f),g(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(b,c=globalThis){if(q.brandCheck(this,f),q.argumentLengthCheck(arguments,1,`${a}.forEach`),"function"!=typeof b)throw TypeError(`Failed to execute 'forEach' on '${a}': parameter 1 is not of type 'Function'.`);for(let{0:a,1:d}of g(this,"key+value"))b.call(c,d,a,this)}}};return Object.defineProperties(b.prototype,{...h,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:h.entries.value}})},createIterator:G,isValidHeaderName:m,isValidHeaderValue:x,isErrorLike:function(a){return a instanceof Error||a?.constructor?.name==="Error"||a?.constructor?.name==="DOMException"},fullyReadBody:function(a,b,c){try{let d=a.stream.getReader();H(d,b,c)}catch(a){c(a)}},readableStreamClose:function(a){try{a.close(),a.byobRequest?.respond(0)}catch(a){if(!a.message.includes("Controller is already closed")&&!a.message.includes("ReadableStream is already closed"))throw a}},urlIsLocal:I,urlHasHttpsScheme:J,urlIsHttpHttpsScheme:K,readAllBytes:H,simpleRangeHeaderValue:function(a,b){if(!a.startsWith("bytes"))return"failure";let c={position:5};if(b&&s(a=>" "===a||" "===a,a,c),61!==a.charCodeAt(c.position))return"failure";c.position++,b&&s(a=>" "===a||" "===a,a,c);let d=s(a=>{let b=a.charCodeAt(0);return b>=48&&b<=57},a,c),e=d.length?Number(d):null;if(b&&s(a=>" "===a||" "===a,a,c),45!==a.charCodeAt(c.position))return"failure";c.position++,b&&s(a=>" "===a||" "===a,a,c);let f=s(a=>{let b=a.charCodeAt(0);return b>=48&&b<=57},a,c),g=f.length?Number(f):null;return c.position<a.length||null===g&&null===e||null!==e&&null!==g&&e>g?"failure":{rangeStartValue:e,rangeEndValue:g}},buildContentRange:function(a,b,c){let d="bytes ";return d+=r(`${a}`),d+="-",d+=r(`${b}`),d+="/",d+=r(`${c}`)},createInflate:function(a){return new L(a)},extractMimeType:function(a){let b=null,c=null,d=null,e=M("content-type",a);if(null===e)return"failure";for(let a of e){let e=k(a);"failure"!==e&&"*/*"!==e.essence&&((d=e).essence!==c?(b=null,d.parameters.has("charset")&&(b=d.parameters.get("charset")),c=d.essence):d.parameters.has("charset")||null===b||d.parameters.set("charset",b))}return null==d?"failure":d},getDecodeSplit:M,environmentSettingsObject:new O,isOriginIPPotentiallyTrustworthy:C,hasAuthenticationEntry:function(a){return!1},includesCredentials:function(a){return!!(a.username||a.password)},isTraversableNavigable:function(a){return null!=a&&"client"!==a&&"no-traversable"!==a}}},42430:(a,b,c)=>{"use strict";let{addAbortListener:d}=c(78474),{environmentSettingsObject:e,readableStreamClose:f}=c(42425),{states:g,opcodes:h,sentCloseFrameState:i}=c(62026),{webidl:j}=c(32984),{getURLRecord:k,isValidSubprotocol:l,isEstablished:m,utf8Decode:n}=c(94050),{establishWebSocketConnection:o,failWebsocketConnection:p,closeWebSocketConnection:q}=c(4654),{channels:r}=c(62571),{WebsocketFrameSend:s}=c(45221),{ByteParser:t}=c(64821),{WebSocketError:u,createUnvalidatedWebSocketError:v}=c(87404),{kEnumerableProperty:w}=c(84285),{utf8DecodeBytes:x}=c(67449),y=!1;class z{#aJ;#aK;#aL;#aM;#aN;#aO;#aP=!1;#aQ={onConnectionEstablished:(a,b)=>this.#aR(a,b),onMessage:(a,b)=>this.#aS(a,b),onParserError:a=>p(this.#aQ,null,a.message),onParserDrain:()=>this.#aQ.socket.resume(),onSocketData:a=>{this.#aT.write(a)||this.#aQ.socket.pause()},onSocketError:a=>{this.#aQ.readyState=g.CLOSING,r.socketError.hasSubscribers&&r.socketError.publish(a),this.#aQ.socket.destroy()},onSocketClose:()=>queueMicrotask(()=>this.#aU()),onPing:()=>{},onPong:()=>{},readyState:g.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#aT;constructor(a,b){y||(process.emitWarning("WebSocketStream is experimental! Expect it to change at any time.",{code:"UNDICI-WSS"}),y=!0),j.argumentLengthCheck(arguments,1,"WebSocket"),a=j.converters.USVString(a),null!==b&&(b=j.converters.WebSocketStreamOptions(b));const c=k(a,e.settingsObject.baseUrl),f=b.protocols;if(f.length!==new Set(f.map(a=>a.toLowerCase())).size||f.length>0&&!f.every(a=>l(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(this.#aJ=c.toString(),this.#aK=Promise.withResolvers(),this.#aL=Promise.withResolvers(),null!=b.signal){const a=b.signal;if(a.aborted){this.#aK.reject(a.reason),this.#aL.reject(a.reason);return}d(a,()=>{m(this.#aQ.readyState)||(p(this.#aQ),this.#aQ.readyState=g.CLOSING,this.#aK.reject(a.reason),this.#aL.reject(a.reason),this.#aP=!0)})}const h=e.settingsObject;this.#aQ.controller=o(c,f,h,this.#aQ,b)}get url(){return this.#aJ.toString()}get opened(){return this.#aK.promise}get closed(){return this.#aL.promise}close(a){null!==a&&(a=j.converters.WebSocketCloseInfo(a));let b=a.closeCode??null,c=a.reason;q(this.#aQ,b,c,!0)}#aV(a){a=j.converters.WebSocketStreamWrite(a);let b=Promise.withResolvers(),c=null,d=null;if(j.is.BufferSource(a))c=new Uint8Array(ArrayBuffer.isView(a)?new Uint8Array(a.buffer,a.byteOffset,a.byteLength):a.slice()),d=h.BINARY;else{let e;try{e=j.converters.DOMString(a)}catch(a){return b.reject(a),b.promise}c=new TextEncoder().encode(e),d=h.TEXT}if(this.#aQ.closeState.has(i.SENT)||this.#aQ.closeState.has(i.RECEIVED))b.resolve(void 0);else{let a=new s(c);this.#aQ.socket.write(a.createFrame(d),()=>{b.resolve(void 0)})}return b.promise}#aR(a,b){this.#aQ.socket=a.socket;let c=this.#aQ.controller.dispatcher?.webSocketOptions?.maxFragments,d=this.#aQ.controller.dispatcher?.webSocketOptions?.maxPayloadSize,e=new t(this.#aQ,b,{maxFragments:c,maxPayloadSize:d});e.on("drain",()=>this.#aQ.onParserDrain()),e.on("error",a=>this.#aQ.onParserError(a)),this.#aT=e,this.#aQ.readyState=g.OPEN;let f=a.headersList.get("sec-websocket-extensions")??"",h=a.headersList.get("sec-websocket-protocol")??"",i=new ReadableStream({start:a=>{this.#aN=a},pull:()=>this.#aW(),cancel:a=>this.#aX(a)}),j=new WritableStream({start:a=>{this.#aO=a},write:a=>this.#aV(a),close:()=>q(this.#aQ,null,null),abort:a=>this.#aY(a)});this.#aM=i,this.#aK.resolve({extensions:f,protocol:h,readable:i,writable:j})}#aS(a,b){let c;if(this.#aQ.readyState===g.OPEN){if(a===h.TEXT)try{c=n(b)}catch{p(this.#aQ,1007,"Received invalid UTF-8 in text frame.");return}else a===h.BINARY&&(c=new Uint8Array(b.buffer,b.byteOffset,b.byteLength));this.#aN.enqueue(c),this.#aN.desiredSize<=0&&this.#aQ.socket.pause()}}#aU(){let a=this.#aQ.closeState.has(i.SENT)&&this.#aQ.closeState.has(i.RECEIVED);if(this.#aQ.readyState=g.CLOSED,this.#aP)return;this.#aQ.wasEverConnected||this.#aK.reject(new u("Socket never opened"));let b=this.#aT?.closingInfo,c=b?.code??1005;this.#aQ.closeState.has(i.RECEIVED)||(c=1006);let d=b?.reason==null?"":x(Buffer.from(b.reason));if(a)f(this.#aN),this.#aO.error(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError")),this.#aL.resolve({closeCode:c,reason:d});else{let a=v("unclean close",c,d);this.#aN?.error(a),this.#aO?.error(a),this.#aL.reject(a)}}#aY(a){let b=null,c="";j.is.WebSocketError(a)&&(b=a.closeCode,c=a.reason),q(this.#aQ,b,c)}#aW(){this.#aQ.socket.resume()}#aX(a){this.#aY(a)}}Object.defineProperties(z.prototype,{url:w,opened:w,closed:w,close:w,[Symbol.toStringTag]:{value:"WebSocketStream",writable:!1,enumerable:!1,configurable:!0}}),j.converters.WebSocketStreamOptions=j.dictionaryConverter([{key:"protocols",converter:j.sequenceConverter(j.converters.USVString),defaultValue:()=>[]},{key:"signal",converter:j.nullableConverter(j.converters.AbortSignal),defaultValue:()=>null}]),j.converters.WebSocketCloseInfo=j.dictionaryConverter([{key:"closeCode",converter:a=>j.converters["unsigned short"](a,j.attributes.EnforceRange)},{key:"reason",converter:j.converters.USVString,defaultValue:()=>""}]),j.converters.WebSocketStreamWrite=function(a){return"string"==typeof a?j.converters.USVString(a):j.converters.BufferSource(a)},a.exports={WebSocketStream:z}},43086:(a,b,c)=>{"use strict";let d=c(5318),{kClose:e,kDestroy:f,kClosed:g,kDestroyed:h,kDispatch:i,kNoProxyAgent:j,kHttpProxyAgent:k,kHttpsProxyAgent:l}=c(49176),m=c(48841),n=c(37417),o={"http:":80,"https:":443};class p extends d{#aZ=null;#a$=null;#y=null;constructor(a={}){super(a),this.#y=a;const{httpProxy:b,httpsProxy:c,noProxy:d,...e}=a;this[j]=new n(e);const f=b??process.env.http_proxy??process.env.HTTP_PROXY;f?this[k]=new m({...e,uri:f}):this[k]=this[j];const g=c??process.env.https_proxy??process.env.HTTPS_PROXY;g?this[l]=new m({...e,uri:g}):this[l]=this[k],this.#a_()}[i](a,b){let c=new URL(a.origin);return this.#a0(c).dispatch(a,b)}[e](){return Promise.all([this[j].close(),!this[k][g]&&this[k].close(),!this[l][g]&&this[l].close()])}[f](a){return Promise.all([this[j].destroy(a),!this[k][h]&&this[k].destroy(a),!this[l][h]&&this[l].destroy(a)])}#a0(a){let{protocol:b,host:c,port:d}=a;return((c=c.replace(/:\d*$/,"").replace(/^\[(.+)\]$/,"$1").toLowerCase()).length>1&&46===c.charCodeAt(c.length-1)&&(c=c.slice(0,-1)),d=Number.parseInt(d,10)||o[b]||0,this.#a1(c,d))?"https:"===b?this[l]:this[k]:this[j]}#a1(a,b){if(this.#a2&&this.#a_(),0===this.#a$.length)return!0;for(let c=0;c<this.#a$.length;c++){let d=this.#a$[c];if("*"===d.hostname){if(d.port&&d.port!==b)continue;return!1}if((!d.port||d.port===b)&&(!d.wildcard&&a===d.hostname||a.slice(-(d.hostname.length+1))===`.${d.hostname}`))return!1}return!0}#a_(){let a=this.#y.noProxy??this.#a3,b=a.split(/[,\s]/),c=[];for(let a=0;a<b.length;a++){let d,e,f=b[a];if(!f)continue;let g=f.match(/^\[(.+)\]:(\d+)$/);if(g)d=g[1],e=Number.parseInt(g[2],10);else{let a=f.replace(/^\[(.+)\]$/,"$1"),b=1===(a.match(/:/g)||[]).length&&a.match(/^(.+):(\d+)$/);d=b?b[1]:a,e=b?Number.parseInt(b[2],10):0}let h=42===f.charCodeAt(0);c.push({hostname:d.replace(/^\*?\./,"").replace(/^(.+)\.$/,"$1").toLowerCase(),port:e,wildcard:h})}this.#aZ=a,this.#a$=c}get #a2(){return void 0===this.#y.noProxy&&this.#aZ!==this.#a3}get #a3(){return process.env.no_proxy??process.env.NO_PROXY??""}}a.exports=p},43835:(a,b,c)=>{"use strict";c.d(b,{$D:()=>m,P9:()=>j,We:()=>h,aZ:()=>n,rG:()=>i});var d=c(84970),e=c(26317);let f="-agentic",g="-thinking";function h(a){return"google"===a||"github"===a?"arn:aws:codewhisperer:us-east-1:699475941385:profile/EHGA3GRVQMUK":"arn:aws:codewhisperer:us-east-1:638616132270:profile/AAAACCCCXXXX"}let i=`
|
|
302
302
|
# CRITICAL: CHUNKED WRITE PROTOCOL (MANDATORY)
|
|
303
303
|
|
|
304
304
|
You MUST follow these rules for ALL file operations. Violation causes server timeouts and task failure.
|
|
@@ -365,7 +365,7 @@ ${d}`}):e.unshift({role:"system",content:d}),{...a,messages:e,response_format:{t
|
|
|
365
365
|
`),f.push(k.$U),new Response(f.join(""),{status:200,headers:{...k.pb}})}async refreshCredentials(){return null}}d()}catch(a){d(a)}},1)},51753:(a,b,c)=>{"use strict";let d,{webidl:e}=c(32984),{kEnumerableProperty:f}=c(84285),{kConstruct:g}=c(49176);class h extends Event{#bn;constructor(a,b={}){if(a===g){super(arguments[1],arguments[2]),e.util.markAsUncloneable(this);return}const c="MessageEvent constructor";e.argumentLengthCheck(arguments,1,c),super(a=e.converters.DOMString(a,c,"type"),b=e.converters.MessageEventInit(b,c,"eventInitDict")),this.#bn=b,e.util.markAsUncloneable(this)}get data(){return e.brandCheck(this,e.is.MessageEvent),this.#bn.data}get origin(){return e.brandCheck(this,e.is.MessageEvent),this.#bn.origin}get lastEventId(){return e.brandCheck(this,e.is.MessageEvent),this.#bn.lastEventId}get source(){return e.brandCheck(this,e.is.MessageEvent),this.#bn.source}get ports(){return e.brandCheck(this,e.is.MessageEvent),Object.isFrozen(this.#bn.ports)||Object.freeze(this.#bn.ports),this.#bn.ports}initMessageEvent(a,b=!1,c=!1,d=null,f="",g="",i=null,j=[]){return e.brandCheck(this,e.is.MessageEvent),e.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new h(a,{bubbles:b,cancelable:c,data:d,origin:f,lastEventId:g,source:i,ports:j})}static{d=(a,b)=>{let c=new h(g,a,b);return c.#bn=b,c.#bn.data??=null,c.#bn.origin??="",c.#bn.lastEventId??="",c.#bn.source??=null,c.#bn.ports??=[],c},e.is.MessageEvent=a=>null!=a&&"object"==typeof a&&#bn in a}}class i extends Event{#bn;constructor(a,b={}){const c="CloseEvent constructor";e.argumentLengthCheck(arguments,1,c),super(a=e.converters.DOMString(a,c,"type"),b=e.converters.CloseEventInit(b)),this.#bn=b,e.util.markAsUncloneable(this)}get wasClean(){return e.brandCheck(this,e.is.CloseEvent),this.#bn.wasClean}get code(){return e.brandCheck(this,e.is.CloseEvent),this.#bn.code}get reason(){return e.brandCheck(this,e.is.CloseEvent),this.#bn.reason}static{e.is.CloseEvent=a=>null!=a&&"object"==typeof a&&#bn in a}}class j extends Event{#bn;constructor(a,b){const c="ErrorEvent constructor";e.argumentLengthCheck(arguments,1,c),super(a,b),e.util.markAsUncloneable(this),a=e.converters.DOMString(a,c,"type"),b=e.converters.ErrorEventInit(b??{}),this.#bn=b}get message(){return e.brandCheck(this,e.is.ErrorEvent),this.#bn.message}get filename(){return e.brandCheck(this,e.is.ErrorEvent),this.#bn.filename}get lineno(){return e.brandCheck(this,e.is.ErrorEvent),this.#bn.lineno}get colno(){return e.brandCheck(this,e.is.ErrorEvent),this.#bn.colno}get error(){return e.brandCheck(this,e.is.ErrorEvent),this.#bn.error}static{e.is.ErrorEvent=a=>null!=a&&"object"==typeof a&&#bn in a}}Object.defineProperties(h.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:f,origin:f,lastEventId:f,source:f,ports:f,initMessageEvent:f}),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:f,code:f,wasClean:f}),Object.defineProperties(j.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:f,filename:f,lineno:f,colno:f,error:f}),e.converters.MessagePort=e.interfaceConverter(e.is.MessagePort,"MessagePort"),e.converters["sequence<MessagePort>"]=e.sequenceConverter(e.converters.MessagePort);let k=[{key:"bubbles",converter:e.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:e.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:e.converters.boolean,defaultValue:()=>!1}];e.converters.MessageEventInit=e.dictionaryConverter([...k,{key:"data",converter:e.converters.any,defaultValue:()=>null},{key:"origin",converter:e.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:e.converters.DOMString,defaultValue:()=>""},{key:"source",converter:e.nullableConverter(e.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:e.converters["sequence<MessagePort>"],defaultValue:()=>[]}]),e.converters.CloseEventInit=e.dictionaryConverter([...k,{key:"wasClean",converter:e.converters.boolean,defaultValue:()=>!1},{key:"code",converter:e.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:e.converters.USVString,defaultValue:()=>""}]),e.converters.ErrorEventInit=e.dictionaryConverter([...k,{key:"message",converter:e.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:e.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:e.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:e.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:e.converters.any}]),a.exports={MessageEvent:h,CloseEvent:i,ErrorEvent:j,createFastMessageEvent:d}},52039:(a,b,c)=>{"use strict";let d,{isArrayBuffer:e}=c(73429),{webidl:f}=c(32984),{URLSerializer:g}=c(16537),{environmentSettingsObject:h}=c(42425),{staticPropertyDescriptors:i,states:j,sentCloseFrameState:k,sendHints:l,opcodes:m}=c(62026),{isConnecting:n,isEstablished:o,isClosing:p,isClosed:q,isValidSubprotocol:r,fireEvent:s,utf8Decode:t,toArrayBuffer:u,getURLRecord:v}=c(94050),{establishWebSocketConnection:w,closeWebSocketConnection:x,failWebsocketConnection:y}=c(4654),{ByteParser:z}=c(64821),{kEnumerableProperty:A}=c(84285),{getGlobalDispatcher:B}=c(59970),{ErrorEvent:C,CloseEvent:D,createFastMessageEvent:E}=c(51753),{SendQueue:F}=c(54849),{WebsocketFrameSend:G}=c(45221),{channels:H}=c(62571),I=Symbol.for("nodejs.ref"),J=Symbol.for("nodejs.unref");class K extends EventTarget{#a8={open:null,error:null,close:null,message:null};#bo=0;#bp="";#bq="";#br=!0;#bs;#aQ={onConnectionEstablished:(a,b)=>this.#aR(a,b),onMessage:(a,b)=>this.#aS(a,b),onParserError:a=>y(this.#aQ,null,a.message),onParserDrain:()=>this.#bt(),onSocketData:a=>{this.#aT.write(a)||this.#aQ.socket.pause()},onSocketError:a=>{this.#aQ.readyState=j.CLOSING,H.socketError.hasSubscribers&&H.socketError.publish(a),this.#aQ.socket.destroy()},onSocketClose:()=>this.#aU(),onPing:a=>{H.ping.hasSubscribers&&H.ping.publish({payload:a,websocket:this})},onPong:a=>{H.pong.hasSubscribers&&H.pong.publish({payload:a,websocket:this})},readyState:j.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#aJ;#bu;#aT;constructor(a,b=[]){super(),f.util.markAsUncloneable(this);const c="WebSocket constructor";f.argumentLengthCheck(arguments,1,c);const d=f.converters["DOMString or sequence<DOMString> or WebSocketInit"](b,c,"options");a=f.converters.USVString(a),b=d.protocols;const e=v(a,h.settingsObject.baseUrl);if("string"==typeof b&&(b=[b]),b.length!==new Set(b.map(a=>a.toLowerCase())).size||b.length>0&&!b.every(a=>r(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#aJ=new URL(e.href);const g=h.settingsObject;this.#aQ.controller=w(e,b,g,this.#aQ,d),this.#aQ.readyState=K.CONNECTING,this.#bu="blob"}[I](){this.#br=!0,this.#aQ.socket?.ref?.()}[J](){this.#br=!1,this.#aQ.socket?.unref?.()}close(a,b){f.brandCheck(this,f.is.WebSocket),void 0!==a&&(a=f.converters["unsigned short"](a,"WebSocket.close","code",f.attributes.Clamp)),void 0!==b&&(b=f.converters.USVString(b)),a??=null,b??="",x(this.#aQ,a,b,!0)}send(a){f.brandCheck(this,f.is.WebSocket);let b="WebSocket.send";if(f.argumentLengthCheck(arguments,1,b),a=f.converters.WebSocketSendData(a,b,"data"),n(this.#aQ.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!o(this.#aQ.readyState)||p(this.#aQ.readyState)))if("string"==typeof a){let b=Buffer.from(a);this.#bo+=b.byteLength,this.#bs.add(b,()=>{this.#bo-=b.byteLength},l.text)}else e(a)?(this.#bo+=a.byteLength,this.#bs.add(a,()=>{this.#bo-=a.byteLength},l.arrayBuffer)):ArrayBuffer.isView(a)?(this.#bo+=a.byteLength,this.#bs.add(a,()=>{this.#bo-=a.byteLength},l.typedArray)):f.is.Blob(a)&&(this.#bo+=a.size,this.#bs.add(a,()=>{this.#bo-=a.size},l.blob))}get readyState(){return f.brandCheck(this,f.is.WebSocket),this.#aQ.readyState}get bufferedAmount(){return f.brandCheck(this,f.is.WebSocket),this.#bo}get url(){return f.brandCheck(this,f.is.WebSocket),g(this.#aJ)}get extensions(){return f.brandCheck(this,f.is.WebSocket),this.#bq}get protocol(){return f.brandCheck(this,f.is.WebSocket),this.#bp}get onopen(){return f.brandCheck(this,f.is.WebSocket),this.#a8.open}set onopen(a){f.brandCheck(this,f.is.WebSocket),this.#a8.open&&this.removeEventListener("open",this.#a8.open);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("open",b),this.#a8.open=a):this.#a8.open=null}get onerror(){return f.brandCheck(this,f.is.WebSocket),this.#a8.error}set onerror(a){f.brandCheck(this,f.is.WebSocket),this.#a8.error&&this.removeEventListener("error",this.#a8.error);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("error",b),this.#a8.error=a):this.#a8.error=null}get onclose(){return f.brandCheck(this,f.is.WebSocket),this.#a8.close}set onclose(a){f.brandCheck(this,f.is.WebSocket),this.#a8.close&&this.removeEventListener("close",this.#a8.close);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("close",b),this.#a8.close=a):this.#a8.close=null}get onmessage(){return f.brandCheck(this,f.is.WebSocket),this.#a8.message}set onmessage(a){f.brandCheck(this,f.is.WebSocket),this.#a8.message&&this.removeEventListener("message",this.#a8.message);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("message",b),this.#a8.message=a):this.#a8.message=null}get binaryType(){return f.brandCheck(this,f.is.WebSocket),this.#bu}set binaryType(a){f.brandCheck(this,f.is.WebSocket),"blob"!==a&&"arraybuffer"!==a?this.#bu="blob":this.#bu=a}#aR(a,b){this.#aQ.socket=a.socket,this.#br||this.#aQ.socket.unref?.();let c=this.#aQ.controller.dispatcher?.webSocketOptions?.maxFragments,d=this.#aQ.controller.dispatcher?.webSocketOptions?.maxPayloadSize,e=new z(this.#aQ,b,{maxFragments:c,maxPayloadSize:d});e.on("drain",()=>this.#aQ.onParserDrain()),e.on("error",a=>this.#aQ.onParserError(a)),this.#aT=e,this.#bs=new F(a.socket),this.#aQ.readyState=j.OPEN;let f=a.headersList.get("sec-websocket-extensions");null!==f&&(this.#bq=f);let g=a.headersList.get("sec-websocket-protocol");if(null!==g&&(this.#bp=g),s("open",this),H.open.hasSubscribers){var h;let b=a.headersList.entries;H.open.publish({address:(h=a.socket,"function"==typeof h?.address?h.address():"function"==typeof h?.session?.socket?.address?h.session.socket.address():null),protocol:this.#bp,extensions:this.#bq,websocket:this,handshakeResponse:{status:a.status,statusText:a.statusText,headers:b}})}}#aS(a,b){let c;if(this.#aQ.readyState===j.OPEN){if(a===m.TEXT)try{c=t(b)}catch{y(this.#aQ,1007,"Received invalid UTF-8 in text frame.");return}else a===m.BINARY&&(c="blob"===this.#bu?new Blob([b]):u(b));s("message",this,E,{origin:this.#aJ.origin,data:c})}}#bt(){this.#aQ.socket.resume()}#aU(){let a=this.#aQ.closeState.has(k.SENT)&&this.#aQ.closeState.has(k.RECEIVED),b=1005,c="",d=this.#aT?.closingInfo;d&&!d.error&&(b=d.code??1005,c=d.reason),this.#aQ.readyState=j.CLOSED,this.#aQ.closeState.has(k.RECEIVED)||(b=1006,s("error",this,(a,b)=>new C(a,b),{error:TypeError(c)})),s("close",this,(a,b)=>new D(a,b),{wasClean:a,code:b,reason:c}),H.close.hasSubscribers&&H.close.publish({websocket:this,code:b,reason:c})}static{d=(a,b)=>{if(Buffer.isBuffer(b)){if(b.length>125)throw TypeError("A PING frame cannot have a body larger than 125 bytes.")}else if(void 0!==b)throw TypeError("Expected buffer payload");let c=a.#aQ.readyState;if(o(c)&&!p(c)&&!q(c)){let c=new G(b);a.#aQ.socket.write(c.createFrame(m.PING))}},f.is.WebSocket=a=>null!=a&&"object"==typeof a&&#aQ in a}}K.CONNECTING=K.prototype.CONNECTING=j.CONNECTING,K.OPEN=K.prototype.OPEN=j.OPEN,K.CLOSING=K.prototype.CLOSING=j.CLOSING,K.CLOSED=K.prototype.CLOSED=j.CLOSED,Object.defineProperties(K.prototype,{CONNECTING:i,OPEN:i,CLOSING:i,CLOSED:i,url:A,readyState:A,bufferedAmount:A,onopen:A,onerror:A,onclose:A,close:A,onmessage:A,binaryType:A,send:A,extensions:A,protocol:A,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(K,{CONNECTING:i,OPEN:i,CLOSING:i,CLOSED:i}),f.converters["sequence<DOMString>"]=f.sequenceConverter(f.converters.DOMString),f.converters["DOMString or sequence<DOMString>"]=function(a,b,c){return f.util.Type(a)===f.util.Types.OBJECT&&Symbol.iterator in a?f.converters["sequence<DOMString>"](a):f.converters.DOMString(a,b,c)},f.converters.WebSocketInit=f.dictionaryConverter([{key:"protocols",converter:f.converters["DOMString or sequence<DOMString>"],defaultValue:()=>[]},{key:"dispatcher",converter:f.converters.any,defaultValue:()=>B()},{key:"headers",converter:f.nullableConverter(f.converters.HeadersInit)}]),f.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(a){return f.util.Type(a)!==f.util.Types.OBJECT||Symbol.iterator in a?{protocols:f.converters["DOMString or sequence<DOMString>"](a)}:f.converters.WebSocketInit(a)},f.converters.WebSocketSendData=function(a){return f.util.Type(a)===f.util.Types.OBJECT&&(f.is.Blob(a)||f.is.BufferSource(a))?a:f.converters.USVString(a)},a.exports={WebSocket:K,ping:d}},52655:(a,b,c)=>{"use strict";c.d(b,{Fq:()=>f,J4:()=>g,eG:()=>e});let d=0;function e(a,b=""){let c=b?`_${String(b).replace(/[^a-zA-Z0-9_-]/g,"")}`:"";return void 0!==a?`call_stream_${a}${c}`:(d+=1,`call_stream_fb_${d}${c}`)}function f(a){let b=a?.request||a||{},c=b.toolConfig?.functionCallingConfig?.mode;if(!c)return;let d=b.toolConfig.functionCallingConfig.allowedFunctionNames;return"NONE"===c?"none":"ANY"===c?Array.isArray(d)&&1===d.length?{type:"function",function:{name:d[0]}}:"required":"AUTO"===c||"VALIDATED"===c?"auto":void 0}function g(a=0,b=0,c=""){let d=c?`_${c.replace(/[^a-zA-Z0-9_-]/g,"")}`:"";return`call_msg${a}_tc${b}${d}`}},52748:(a,b,c)=>{"use strict";var d=c(68531);c(87350),c(18762),c(20830),c(38421),c(82689),c(73081),c(81556),c(17438),c(19016),d.h.OPENAI_RESPONSES,d.h.OPENAI_RESPONSES,d.h.CLAUDE,d.h.CLAUDE,d.h.ANTIGRAVITY,d.h.ANTIGRAVITY,d.h.GEMINI,d.h.ANTIGRAVITY,d.h.GEMINI_CLI,d.h.ANTIGRAVITY},53552:(a,b,c)=>{"use strict";let{InvalidArgumentError:d}=c(61448),e=c(40106);class f extends e{constructor(a,b){if("string"==typeof a&&(a=new URL(a)),"http:"!==a.protocol)throw new d("h2c-client: Only h2c protocol is supported");const{maxConcurrentStreams:c,pipelining:e,...f}=b??{},g=c??100;let h=100;if(null!=c&&(!Number.isInteger(c)||c<1))throw new d("maxConcurrentStreams must be a positive integer, greater than 0");if(null!=e&&Number.isInteger(e)&&e>0&&(h=e),h>g)throw new d("h2c-client: pipelining cannot be greater than maxConcurrentStreams");super(a,{...f,maxConcurrentStreams:g,pipelining:h,allowH2:!0,useH2c:!0})}}a.exports=f},53859:(a,b,c)=>{"use strict";c.d(b,{nJ:()=>p,ok:()=>o});var d=c(73024),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="switchboard";function k(a){if("win32"===process.platform){let b=process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming");return g().join(b,a)}return g().join(i().homedir(),`.${a}`)}let l=["db/data.sqlite","machine-id","jwt-secret","auth","db.json"];function m(a){return l.some(b=>e().existsSync(g().join(a,b)))}function n(){let a=k(j);if(m(a))return a;let b=k("9router");return m(b)?(console.warn(`[DATA_DIR] using legacy data directory '${b}' (set DATA_DIR='${a}' to switch)`),b):a}function o(){let a=process.env.DATA_DIR;if(!a)return n();if("win32"===process.platform&&/^\//.test(a))return console.warn(`[DATA_DIR] '${a}' is a Unix path on Windows → fallback to default`),n();try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${j}`),n();throw b}}let p=o()},54383:(a,b,c)=>{"use strict";c.d(b,{R:()=>f});var d=c(85513);let e=/^arn:(aws|aws-us-gov):codewhisperer:([^:]+):(\d{12}):profile\/([^/]+)$/;function f(a){let b="string"==typeof a?a.trim():"",c=b.match(e);return c&&(0,d.i7)(c[2])?{profileArn:b,region:c[2]}:null}},54849:(a,b,c)=>{"use strict";let{WebsocketFrameSend:d}=c(45221),{opcodes:e,sendHints:f}=c(62026),g=c(50329);class h{#bv=new g;#bw=!1;#bx;constructor(a){this.#bx=a}add(a,b,c){if(c!==f.blob){if(this.#bw){let d={promise:null,callback:b,frame:i(a,c)};this.#bv.push(d)}else if(c===f.text){let{0:c,1:e}=d.createFastTextFrame(a);this.#bx.cork(),this.#bx.write(c),this.#bx.write(e,b),this.#bx.uncork()}else this.#bx.write(i(a,c),b);return}let e={promise:a.arrayBuffer().then(a=>{e.promise=null,e.frame=i(a,c)}),callback:b,frame:null};this.#bv.push(e),this.#bw||this.#by()}async #by(){this.#bw=!0;let a=this.#bv;for(;!a.isEmpty();){let b=a.shift();null!==b.promise&&await b.promise,this.#bx.write(b.frame,b.callback),b.callback=b.frame=null}this.#bw=!1}}function i(a,b){return new d(function(a,b){switch(b){case f.text:case f.typedArray:return new Uint8Array(a.buffer,a.byteOffset,a.byteLength);case f.arrayBuffer:case f.blob:return new Uint8Array(a)}}(a,b)).createFrame(b===f.text?e.TEXT:e.BINARY)}a.exports={SendQueue:h}},55261:(a,b,c)=>{},55285:(a,b,c)=>{"use strict";let d,e=c(77030),f=c(34589),g=c(84285),{InvalidArgumentError:h,ConnectTimeoutError:i}=c(61448),j=class{constructor(a){this._maxCachedSessions=a,this._sessionCache=new Map,this._sessionRegistry=new FinalizationRegistry(a=>{if(this._sessionCache.size<this._maxCachedSessions)return;let b=this._sessionCache.get(a);void 0!==b&&void 0===b.deref()&&this._sessionCache.delete(a)})}get(a){let b=this._sessionCache.get(a);return b?b.deref():null}set(a,b){if(0!==this._maxCachedSessions){if(this._sessionCache.has(a))this._sessionCache.delete(a);else if(this._sessionCache.size>=this._maxCachedSessions){for(let[a,b]of this._sessionCache)if(void 0===b.deref())return void this._sessionCache.delete(a);let a=this._sessionCache.keys().next();a.done||this._sessionCache.delete(a.value)}this._sessionCache.set(a,new WeakRef(b)),this._sessionRegistry.register(b,a)}}};a.exports=function({allowH2:a,preferH2:b,useH2c:k,maxCachedSessions:l,socketPath:m,timeout:n,session:o,...p}){if(null!=l&&(!Number.isInteger(l)||l<0))throw new h("maxCachedSessions must be a positive integer or zero");let q={path:m,...p},r=new j(null==l?100:l);return n=null==n?1e4:n,a=null==a||a,function({hostname:h,host:j,protocol:l,port:m,servername:p,localAddress:s,httpSocket:t},u){let v;if("https:"===l){d||(d=c(41692));let e=(p=p||q.servername||g.getServerName(j)||null)||h;f(e);let i=o||r.get(e)||null;m=m||443,(v=d.connect({highWaterMark:16384,...q,servername:p,session:i,localAddress:s,ALPNProtocols:a?b?["h2","http/1.1"]:["http/1.1","h2"]:["http/1.1"],socket:t,port:m,host:h})).on("session",function(a){r.set(e,a)})}else{f(!t,"httpSocket can only be sent on TLS update"),m=m||80;let a={highWaterMark:65536,...q,localAddress:s,port:m,host:h},b=e.isIP(h);0!==b&&p&&p!==h&&(a.host=p,a.lookup=(a,c,d)=>{c.all?d(null,[{address:h,family:b}]):d(null,h,b)}),v=e.connect(a),!0===k&&(v.alpnProtocol="h2")}if(null==q.keepAlive||q.keepAlive){let a=void 0===q.keepAliveInitialDelay?6e4:q.keepAliveInitialDelay;v.setKeepAlive(!0,a)}let w=g.setupConnectTimeout(new WeakRef(v),{timeout:n,hostname:h,port:m});return v.setNoDelay(!0).once("https:"===l?"secureConnect":"connect",function(){if(queueMicrotask(w),u){let a=u;u=null,a(null,this)}}).on("error",function(a){if(queueMicrotask(w),u){let b=u;u=null,b(function(a,b,c){if(a instanceof AggregateError&&("ETIMEDOUT"===a.code||a.errors.some(a=>null!=a&&"ETIMEDOUT"===a.code))){let d="Connect Timeout Error";Array.isArray(b.autoSelectFamilyAttemptedAddresses)?d+=` (attempted addresses: ${b.autoSelectFamilyAttemptedAddresses.join(", ")},`:d+=` (attempted address: ${c.hostname}:${c.port},`;let e=new i(d+=` timeout: ${c.timeout}ms)`);return e.cause=a,e}return a}(a,this,{timeout:n,hostname:h,port:m}))}}),v}}},55720:(a,b,c)=>{"use strict";let{getResponseData:d,buildKey:e,addMockDispatch:f}=c(70634),{kDispatches:g,kDispatchKey:h,kDefaultHeaders:i,kDefaultTrailers:j,kContentLength:k,kMockDispatch:l,kIgnoreTrailingSlash:m}=c(80830),{InvalidArgumentError:n}=c(61448),{serializePathWithQuery:o}=c(84285),{types:{isPromise:p}}=c(57975);class q{constructor(a){this[l]=a}delay(a){if("number"!=typeof a||!Number.isInteger(a)||a<=0)throw new n("waitInMs must be a valid integer > 0");return this[l].delay=a,this}persist(){return this[l].persist=!0,this}times(a){if("number"!=typeof a||!Number.isInteger(a)||a<=0)throw new n("repeatTimes must be a valid integer > 0");return this[l].times=a,this}}class r{constructor(a,b){if("object"!=typeof a)throw new n("opts must be an object");if(void 0===a.path)throw new n("opts.path must be defined");if(void 0===a.method&&(a.method="GET"),"string"==typeof a.path)if(a.query)a.path=o(a.path,a.query);else{const b=new URL(a.path,"data://");a.path=b.pathname+b.search}"string"==typeof a.method&&(a.method=a.method.toUpperCase()),this[h]=e(a),this[g]=b,this[m]=a.ignoreTrailingSlash??!1,this[i]={},this[j]={},this[k]=!1}createMockScopeDispatchData({statusCode:a,data:b,responseOptions:c}){let e=d(b),f=this[k]?{"content-length":e.length}:{};return{statusCode:a,data:b,headers:{...this[i],...f,...c.headers},trailers:{...this[j],...c.trailers}}}validateReplyParameters(a){if(void 0===a.statusCode)throw new n("statusCode must be defined");if("object"!=typeof a.responseOptions||null===a.responseOptions)throw new n("responseOptions must be an object")}reply(a){if("function"==typeof a){let b=a=>{if("object"!=typeof a||null===a)throw new n("reply options callback must return an object");let b={data:"",responseOptions:{},...a};return this.validateReplyParameters(b),{...this.createMockScopeDispatchData(b)}};return new q(f(this[g],this[h],c=>{let d=a(c);return p(d)?d.then(b):b(d)},{ignoreTrailingSlash:this[m]}))}let b={statusCode:a,data:void 0===arguments[1]?"":arguments[1],responseOptions:void 0===arguments[2]?{}:arguments[2]};this.validateReplyParameters(b);let c=this.createMockScopeDispatchData(b);return new q(f(this[g],this[h],c,{ignoreTrailingSlash:this[m]}))}replyWithError(a){if(void 0===a)throw new n("error must be defined");return new q(f(this[g],this[h],{error:a},{ignoreTrailingSlash:this[m]}))}defaultReplyHeaders(a){if(void 0===a)throw new n("headers must be defined");return this[i]=a,this}defaultReplyTrailers(a){if(void 0===a)throw new n("trailers must be defined");return this[j]=a,this}replyContentLength(){return this[k]=!0,this}}a.exports.MockInterceptor=r,a.exports.MockScope=q},56416:(a,b,c)=>{var d=c(45654);c(63070),c(33889);var e=d.asn1,f=a.exports=d.pkcs7asn1=d.pkcs7asn1||{};d.pkcs7=d.pkcs7||{},d.pkcs7.asn1=f;var g={name:"ContentInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.ContentType",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,captureAsn1:"content"}]};f.contentInfoValidator=g;var h={name:"EncryptedContentInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentType",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"contentType"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedContentInfo.contentEncryptionAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"EncryptedContentInfo.contentEncryptionAlgorithm.parameter",tagClass:e.Class.UNIVERSAL,captureAsn1:"encParameter"}]},{name:"EncryptedContentInfo.encryptedContent",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,capture:"encryptedContent",captureAsn1:"encryptedContentAsn1"}]};f.envelopedDataValidator={name:"EnvelopedData",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EnvelopedData.Version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"},{name:"EnvelopedData.RecipientInfos",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,captureAsn1:"recipientInfos"}].concat(h)},f.encryptedDataValidator={name:"EncryptedData",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"EncryptedData.Version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"}].concat(h)};var i={name:"SignerInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1},{name:"SignerInfo.issuerAndSerialNumber",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.issuerAndSerialNumber.issuer",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"SignerInfo.issuerAndSerialNumber.serialNumber",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"SignerInfo.digestAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SignerInfo.digestAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"digestAlgorithm"},{name:"SignerInfo.digestAlgorithm.parameter",tagClass:e.Class.UNIVERSAL,constructed:!1,captureAsn1:"digestParameter",optional:!0}]},{name:"SignerInfo.authenticatedAttributes",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"authenticatedAttributes"},{name:"SignerInfo.digestEncryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,capture:"signatureAlgorithm"},{name:"SignerInfo.encryptedDigest",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"signature"},{name:"SignerInfo.unauthenticatedAttributes",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,capture:"unauthenticatedAttributes"}]};f.signedDataValidator={name:"SignedData",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"SignedData.Version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"},{name:"SignedData.DigestAlgorithms",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0,captureAsn1:"digestAlgorithms"},g,{name:"SignedData.Certificates",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,optional:!0,captureAsn1:"certificates"},{name:"SignedData.CertificateRevocationLists",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,optional:!0,captureAsn1:"crls"},{name:"SignedData.SignerInfos",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,capture:"signerInfos",optional:!0,value:[i]}]},f.recipientInfoValidator={name:"RecipientInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"version"},{name:"RecipientInfo.issuerAndSerial",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.issuerAndSerial.issuer",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"issuer"},{name:"RecipientInfo.issuerAndSerial.serialNumber",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"serial"}]},{name:"RecipientInfo.keyEncryptionAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"RecipientInfo.keyEncryptionAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"encAlgorithm"},{name:"RecipientInfo.keyEncryptionAlgorithm.parameter",tagClass:e.Class.UNIVERSAL,constructed:!1,captureAsn1:"encParameter",optional:!0}]},{name:"RecipientInfo.encryptedKey",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"encKey"}]}},56698:(a,b,c)=>{"use strict";let d=c(34589);class e{#bz=!1;#bA;#aQ;#bB;#bC;constructor(a,b,c){if("function"!=typeof a)throw TypeError("callback must be a function");this.#bA=a,this.#aQ=b,this.#bC=c}onRequestStart(a,b){this.#bz=!1,this.#bB=b}onRequestUpgrade(a,b,c,d){this.#aQ.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,e){if(d(null!=this.#bA),this.#bz=304===b||this.#bC&&b>=500&&b<=504,this.#bA(this.#bz,this.#bB,b,c),this.#bA=null,this.#bz)return!0;this.#aQ.onRequestStart?.(a,this.#bB),this.#aQ.onResponseStart?.(a,b,c,e)}onResponseData(a,b){if(!this.#bz)return this.#aQ.onResponseData?.(a,b)}onResponseEnd(a,b){this.#bz||this.#aQ.onResponseEnd?.(a,b)}onResponseError(a,b){if(!this.#bz){if(this.#bA){if(this.#bC){this.#bz=!0,this.#bA(!0,this.#bB),this.#bA=null;return}this.#bA(!1),this.#bA=null}if("function"==typeof this.#aQ.onResponseError)this.#aQ.onResponseError(a,b);else throw b}}}a.exports=e},56758:(a,b,c)=>{"use strict";let d={__proto__:null,"node:crypto":()=>c(77598),"node:sqlite":()=>c(79868)},e=["crypto","sqlite"];class f{#bD=new Map;clear(){this.#bD.clear()}has(a){return this.#bD.get(a)??this.#bE(a)}set(a,b){if(!1===e.includes(a))throw TypeError(`unknown feature: ${a}`);this.#bD.set(a,b)}#bE(a){let b=function(a){if(e.includes(a)){var b=`node:${a}`;try{return d[b](),!0}catch(a){if("ERR_UNKNOWN_BUILTIN_MODULE"!==a.code&&"ERR_NO_CRYPTO"!==a.code)throw a;return!1}}throw TypeError(`unknown feature: ${a}`)}(a);return this.#bD.set(a,b),b}}let g=new f;a.exports.runtimeFeatures=g,a.exports.default=g},57431:(a,b,c)=>{"use strict";c.r(b),c.d(b,{CLIENT_KEY_POLICY_BOUNDS:()=>i,__resetApiKeyVerifyMemoForTests:()=>t,authenticateApiKey:()=>A,createApiKey:()=>x,deleteApiKey:()=>z,getApiKeyById:()=>w,getApiKeys:()=>v,getClientKeySpend:()=>u,normalizeClientKeyPatch:()=>o,updateApiKey:()=>y,validateApiKey:()=>B});var d=c(77598),e=c.n(d),f=c(27137),g=c(24081),h=c(20639);let i=Object.freeze({maxAllowlistEntries:100,maxTargetLength:256,maxRatePerMinute:6e4,maxConcurrency:1e3,maxSpendUsd:1e6}),j=new Set(["name","isActive","allowedModels","allowedCombos","expiresAt","rateLimitPerMinute","concurrencyLimit","spendLimitUsd"]);function k(a){if(Array.isArray(a))return a;if("string"!=typeof a||""===a)return[];try{let b=JSON.parse(a);return Array.isArray(b)?b:[]}catch{return[]}}function l(a){if(!a)return null;let b=(0,h.BA)(a.key);return{id:a.id,keyPrefix:b.prefix||"sk-…",name:a.name,machineId:a.machineId,isActive:1===a.isActive||!0===a.isActive,createdAt:a.createdAt,rotationRequired:2!==b.version||!b.lookupDigest,allowedModels:k(a.allowedModels),allowedCombos:k(a.allowedCombos),expiresAt:a.expiresAt||null,rateLimitPerMinute:null==a.rateLimitPerMinute?null:Number(a.rateLimitPerMinute),concurrencyLimit:null==a.concurrencyLimit?null:Number(a.concurrencyLimit),spendLimitUsd:null==a.spendLimitUsd?null:Number(a.spendLimitUsd),spentUsd:Number(a.spentUsd||0)}}function m(a,b){if(null==b)return[];if(!Array.isArray(b))throw Error(`${a} must be an array`);if(b.length>i.maxAllowlistEntries)throw Error(`${a} must contain at most ${i.maxAllowlistEntries} entries`);let c=[],d=new Set;for(let e of b){if("string"!=typeof e)throw Error(`${a} entries must be strings`);let b=e.trim();if(!b)throw Error(`${a} entries must not be empty`);if(b.length>i.maxTargetLength)throw Error(`${a} entry length exceeds ${i.maxTargetLength}`);d.has(b)||(d.add(b),c.push(b))}return c}function n(a,b,c){if(null==b||""===b)return null;if(!Number.isInteger(b)||b<1||b>c)throw Error(`${a} must be an integer from 1 through ${c}`);return b}function o(a){if(!a||"object"!=typeof a||Array.isArray(a))throw Error("client key patch must be an object");for(let b of Object.keys(a))if(!j.has(b))throw Error(`unknown client key field: ${b}`);let b={};if(Object.hasOwn(a,"name")){if("string"!=typeof a.name)throw Error("name must be a string");b.name=a.name}if(Object.hasOwn(a,"isActive")){if("boolean"!=typeof a.isActive)throw Error("isActive must be a boolean");b.isActive=a.isActive}if(Object.hasOwn(a,"allowedModels")&&(b.allowedModels=m("allowedModels",a.allowedModels)),Object.hasOwn(a,"allowedCombos")&&(b.allowedCombos=m("allowedCombos",a.allowedCombos)),Object.hasOwn(a,"expiresAt"))if(null==a.expiresAt||""===a.expiresAt)b.expiresAt=null;else{if("string"!=typeof a.expiresAt||!/^\d{4}-\d{2}-\d{2}T.*(?:Z|[+-]\d{2}:\d{2})$/.test(a.expiresAt))throw Error("expiresAt must be a valid ISO instant");let c=new Date(a.expiresAt);if(Number.isNaN(c.getTime()))throw Error("expiresAt must be a valid ISO instant");b.expiresAt=c.toISOString()}if(Object.hasOwn(a,"rateLimitPerMinute")&&(b.rateLimitPerMinute=n("rateLimitPerMinute",a.rateLimitPerMinute,i.maxRatePerMinute)),Object.hasOwn(a,"concurrencyLimit")&&(b.concurrencyLimit=n("concurrencyLimit",a.concurrencyLimit,i.maxConcurrency)),Object.hasOwn(a,"spendLimitUsd")){let c=a.spendLimitUsd;if(null==c||""===c)b.spendLimitUsd=null;else if("number"!=typeof c||!Number.isFinite(c)||c<0||c>i.maxSpendUsd)throw Error(`spendLimitUsd must be finite from 0 through ${i.maxSpendUsd}`);else b.spendLimitUsd=c}return b}let p="SELECT k.* FROM apiKeys k",q=new Map;function r(a,b,c){if(q.has(a))q.delete(a);else if(q.size>=256){let a=q.keys().next().value;void 0!==a&&q.delete(a)}q.set(a,{rawSha256:b,id:c,expiresAt:Date.now()+6e4})}function s(a){for(let[b,c]of q)c.id===a&&q.delete(b)}function t(){q.clear()}async function u(a){let b=(await (0,g.c)()).get("SELECT spentUsd FROM apiKeys WHERE id = ?",[a]);return Number(b?.spentUsd||0)}async function v(){return(await (0,g.c)()).all(`${p} ORDER BY k.createdAt ASC`).map(l)}async function w(a){return l((await (0,g.c)()).get(`${p} WHERE k.id = ?`,[a]))}async function x(a,b){if(!b)throw Error("machineId is required");let d=await (0,g.c)(),{generateApiKeyWithMachine:e}=await c.e(6103).then(c.bind(c,86103)),i=e(b),j=(0,h.ws)(i.key),k={id:(0,f.A)(),key:j,name:a,machineId:b,isActive:1,createdAt:new Date().toISOString(),allowedModels:null,allowedCombos:null,expiresAt:null,rateLimitPerMinute:null,concurrencyLimit:null,spendLimitUsd:null,spentUsd:0};return d.run(`INSERT INTO apiKeys(id, key, keyPrefix, lookupDigest, name, machineId, isActive, createdAt, allowedModels, allowedCombos, expiresAt, rateLimitPerMinute, concurrencyLimit, spendLimitUsd, spentUsd)
|
|
366
366
|
VALUES(?, ?, ?, ?, ?, ?, 1, ?, NULL, NULL, NULL, NULL, NULL, NULL, 0)`,[k.id,j,(0,h.E8)(i.key),(0,h.cb)(i.key),a,b,k.createdAt]),{...l(k),key:i.key}}async function y(a,b){let c=o(b),d=await (0,g.c)(),e=null;return d.transaction(()=>{let b=d.get(`${p} WHERE k.id = ?`,[a]);if(!b)return;let f={...l(b),...c};d.run(`UPDATE apiKeys
|
|
367
367
|
SET name = ?, isActive = ?, allowedModels = ?, allowedCombos = ?, expiresAt = ?, rateLimitPerMinute = ?, concurrencyLimit = ?, spendLimitUsd = ?
|
|
368
|
-
WHERE id = ?`,[f.name,+!!f.isActive,JSON.stringify(f.allowedModels),JSON.stringify(f.allowedCombos),f.expiresAt,f.rateLimitPerMinute,f.concurrencyLimit,f.spendLimitUsd,a]),e={...f}}),e&&s(a),e}async function z(a){let b=await (0,g.c)(),c=(b.run("DELETE FROM apiKeys WHERE id = ?",[a])?.changes??0)>0;return c&&s(a),c}async function A(a){if(!a||"string"!=typeof a)return null;let b=await (0,g.c)(),c=(0,h.cb)(a),d=(0,h.E8)(a),f=c?e().createHash("sha256").update(a).digest("hex"):null;if(c&&f){let a,d=(a=q.get(c))?a.expiresAt<=Date.now()?(q.delete(c),null):(0,h.lO)(a.rawSha256,f)?(q.delete(c),q.set(c,a),a):null:null;if(d){let a=b.get(`${p} WHERE k.id = ?`,[d.id]);if(a&&(1===a.isActive||!0===a.isActive))return a.spentUsd=await u(a.id),l(a);q.delete(c)}}let i=c?b.get(`${p} WHERE k.isActive = 1 AND k.lookupDigest = ?`,[c]):null;if(i)return(2===(0,h.BA)(i.key).version?await (0,h.ue)(i.key,a):(0,h.O0)(i.key,a))?(c&&f&&r(c,f,i.id),i.spentUsd=await u(i.id),l(i)):null;for(let e of b.all(`${p} WHERE k.isActive = 1 AND k.lookupDigest IS NULL AND k.keyPrefix = ? AND k.key NOT LIKE 'v2:%'`,[d])){let d=(0,h.BA)(e.key);if((0,h.O0)(e.key,a)){if(d.legacy||1===d.version&&c){let d=(0,h.ws)(a,c);b.run("UPDATE apiKeys SET key = ?, keyPrefix = ?, lookupDigest = ? WHERE id = ?",[d,(0,h.E8)(a),c,e.id]),c&&q.delete(c),e.key=d,e.keyPrefix=(0,h.E8)(a),e.lookupDigest=c}return c&&f&&r(c,f,e.id),e.spentUsd=await u(e.id),l(e)}}return null}async function B(a){return!!await A(a)}},57435:(a,b,c)=>{"use strict";let{Readable:d,Duplex:e,PassThrough:f}=c(57075),g=c(34589),{AsyncResource:h}=c(16698),{InvalidArgumentError:i,InvalidReturnValueError:j,RequestAbortedError:k}=c(61448),l=c(84285),{kBodyUsed:m}=c(49176),{addSignal:n,removeSignal:o}=c(73135);function p(){}let q=Symbol("resume");class r extends d{constructor(){super({autoDestroy:!0}),this[q]=null,this[m]=!0}_read(){let{[q]:a}=this;a&&(this[q]=null,a())}_destroy(a,b){this._read(),b(a)}}class s extends d{constructor(a){super({autoDestroy:!0}),this[q]=a}_read(){this[q]()}_destroy(a,b){a||this._readableState.endEmitted||(a=new k),b(a)}}class t extends h{constructor(a,b){if(!a||"object"!=typeof a)throw new i("invalid opts");if("function"!=typeof b)throw new i("invalid handler");const{signal:c,method:d,opaque:f,onInfo:g,responseHeaders:h}=a;if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new i("signal must be an EventEmitter or EventTarget");if("CONNECT"===d)throw new i("invalid method");if(g&&"function"!=typeof g)throw new i("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=f||null,this.responseHeaders=h||null,this.handler=b,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new r().on("error",p),this.ret=new e({readableObjectMode:a.objectMode,autoDestroy:!0,read:()=>{let{body:a}=this;a?.resume&&a.resume()},write:(a,b,c)=>{let{req:d}=this;d.push(a,b)||d._readableState.destroyed?c():d[q]=c},destroy:(a,b)=>{let{body:c,req:d,res:e,ret:f,abort:g}=this;a||f._readableState.endEmitted||(a=new k),g&&a&&g(),l.destroy(c,a),l.destroy(d,a),l.destroy(e,a),o(this),b(a)}}).on("prefinish",()=>{let{req:a}=this;a.push(null)}),this.res=null,n(this,c)}onRequestStart(a,b){let{res:c}=this;this.reason?a.abort(this.reason):(g(!c,"pipeline cannot be retried"),this.abort=b=>a.abort(b),this.context=b)}onResponseStart(a,b,c,d){let e,{opaque:f,handler:g,context:h}=this;if(b<200){if(this.onInfo){let d=a?.rawHeaders,e="raw"===this.responseHeaders?l.parseRawHeaders(d):c;this.onInfo({statusCode:b,headers:e})}return}this.res=new s(()=>a.resume());try{this.handler=null;let d=a?.rawHeaders,i="raw"===this.responseHeaders?l.parseRawHeaders(d):c;e=this.runInAsyncScope(g,null,{statusCode:b,headers:i,opaque:f,body:this.res,context:h})}catch(a){throw this.res.on("error",p),a}if(!e||"function"!=typeof e.on)throw new j("expected Readable");e.on("data",a=>{let{ret:b,body:c}=this;!b.push(a)&&c.pause&&c.pause()}).on("error",a=>{let{ret:b}=this;l.destroy(b,a)}).on("end",()=>{let{ret:a}=this;a.push(null)}).on("close",()=>{let{ret:a}=this;a._readableState.ended||l.destroy(a,new k)}),this.body=e}onResponseData(a,b){let{res:c}=this;!1===c.push(b)&&a.pause()}onResponseEnd(a,b){let{res:c}=this;c.push(null)}onResponseError(a,b){let{ret:c}=this;this.handler=null,l.destroy(c,b)}}a.exports=function(a,b){try{let c=new t(a,b);return this.dispatch({...a,body:c.req},c),c.ret}catch(a){return new f().destroy(a)}}},57690:(a,b,c)=>{"use strict";let d;c.d(b,{KN:()=>m,uV:()=>n});let e={pricing:{},capabilities:{}};function f(a,b){if(!a)throw Error(b)}let g=!1;function h(a){if("u"<typeof process)return null;if("function"!=typeof process.getBuiltinModule)return!g&&process.versions?.node&&(g=!0,console.warn(`[switchboard] generated model catalog disabled: process.getBuiltinModule requires Node >= 20.12 (running ${process.versions.node}); falling back to hand-maintained data only`)),null;try{return process.getBuiltinModule(a)}catch{return null}}function i(){return void 0===d&&(d=function(){let a=h("node:fs");if(!a)return e;for(let b of function(){let a=[],b=h("node:path");if(b&&"function"==typeof process.cwd)try{a.push(b.join(process.cwd(),"open-sse","providers","generated","catalog.json"))}catch{}let d=h("node:url");if(d)try{a.push(d.fileURLToPath(new c.U(c(19659))))}catch{}return a}())if("string"==typeof b)try{return function(a){let b=JSON.parse(a);return null===b||"object"!=typeof b?e:{pricing:b.pricing&&"object"==typeof b.pricing?b.pricing:{},capabilities:b.capabilities&&"object"==typeof b.capabilities?b.capabilities:{}}}(a.readFileSync(b,"utf8"))}catch{}return e}()),d}let j=new WeakMap;function k(a){let b=j.get(a);if(!b){for(let c of(b=new Map,Object.keys(a).sort())){let d=c.toLowerCase();b.has(d)||b.set(d,a[c])}j.set(a,b)}return b}function l(a,b){if(!b)return null;f("string"==typeof b,"model must be a string");let c=b.includes("/")?b.split("/").pop():b;return f("string"==typeof c,"model base must be a string"),a[c]||a[b]||k(a).get(c.toLowerCase())||k(a).get(b.toLowerCase())||null}function m(a){return l(i().pricing,a)}function n(a){return l(i().capabilities,a)}},58609:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(24081),e=c(50743);function f(a){return{async get(b,c=null){let f=(await (0,d.c)()).get("SELECT value FROM kv WHERE scope = ? AND key = ?",[a,b]);return f?(0,e.q)(f.value,c):c},async getAll(){let b=(await (0,d.c)()).all("SELECT key, value FROM kv WHERE scope = ?",[a]),c={};for(let a of b)c[a.key]=(0,e.q)(a.value);return c},async set(b,c){(await (0,d.c)()).run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,b,(0,e.s)(c)])},async setMany(b){let c=await (0,d.c)();c.transaction(()=>{for(let[d,f]of Object.entries(b))c.run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,d,(0,e.s)(f)])})},async remove(b){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ? AND key = ?",[a,b])},async clear(){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ?",[a])}}}},59529:(a,b,c)=>{"use strict";c.d(b,{VG:()=>h});var d=c(22256),e=c(38421),f=c(10793),g=c(50969);class h extends d.Hv{constructor(){super("gemini-cli",e.xq["gemini-cli"])}buildUrl(a,b,c=0){return`${this.config.baseUrl}:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":(0,f.sX)(this._currentModel),"X-Goog-Api-Client":f.go,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){this._currentModel=a;let e=function(a){if(!a||"object"!=typeof a)return a;let{stream:b,...c}=a;if(!c.request||"object"!=typeof c.request)return c;let{stream:d,...e}=c.request;return{...c,request:e}}(b);return e&&e.request&&e.model?e:{project:d?.projectId||e?.project,model:a,request:e}}parseError(a,b){let c=super.parseError(a,b);if(429!==a.status||!b)return c;try{let a=JSON.parse(b),d=a?.error?.details;if(Array.isArray(d)){for(let a of d)if(a?.["@type"]==="type.googleapis.com/google.rpc.RetryInfo"&&a?.retryDelay){c.retryAfter=a.retryDelay;let b=function(a){if("string"==typeof a){let b=a.match(/^(\d+(?:\.\d+)?)s$/);if(!b)return null;let c=Math.round(1e3*Number(b[1]));return Number.isFinite(c)?c:null}if("number"==typeof a)return Number.isFinite(a)?Math.round(1e3*a):null;if(a&&"object"==typeof a){let b=Number(a.seconds||0),c=Number(a.nanos||0);return Number.isFinite(b)&&Number.isFinite(c)?Math.round(1e3*b+c/1e6):null}return null}(a.retryDelay);null!==b&&b>0&&(c.resetsAtMs=Date.now()+b);break}}}catch{}return c}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,g.Fm)(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret}),identity:this.config.identity,provider:this.provider,format:this.config.format},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Gemini CLI refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Gemini CLI refresh error: ${a.message}`),null}}}},59882:(a,b,c)=>{"use strict";c.d(b,{$3:()=>q,$R:()=>i,Dm:()=>s,E$:()=>k,Zb:()=>h,jI:()=>j,ti:()=>n});var d=c(74570),e=c(3507),f=c(48161),g=c(83382);let h=["Accept","Authorization","Content-Type","User-Agent","X-Claude-Code-Session-Id","X-Stainless-Arch","X-Stainless-Lang","X-Stainless-OS","X-Stainless-Package-Version","X-Stainless-Retry-Count","X-Stainless-Runtime","X-Stainless-Runtime-Version","X-Stainless-Timeout","anthropic-beta","anthropic-dangerous-direct-browser-access","anthropic-version","x-app","x-client-request-id","Connection","Host","Accept-Encoding","Content-Length"],i=h.filter(a=>"X-Stainless-Timeout"!==a),j={"claude-cli":{id:"claude-cli",tls:"claude-code",alpn:["http/1.1"],headerOrder:h,source:{npm:"@anthropic-ai/claude-code",capture:"claude-code-native",tlsSpec:"claude-code"},headers:function(a){let b=a?.version||"2.1.302",c=a?.entrypoint||"cli";return{"Anthropic-Version":d.b8,"Anthropic-Beta":a?.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,effort-2025-11-24,structured-outputs-2025-12-15","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":a?.userAgent||`claude-cli/${b} (external, ${c})`,"X-App":"cli","X-Stainless-Runtime-Version":a?.runtimeVersion||process.version,"X-Stainless-Package-Version":a?.packageVersion||"0.128.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":a?.arch||(0,e.Tc)(),"X-Stainless-Os":a?.os||(0,e.vv)(),"X-Stainless-Timeout":"600"}}},"codex-cli":{id:"codex-cli",tls:"chrome",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","originator","session_id","User-Agent","version","chatgpt-account-id"],source:{npm:"@openai/codex"},headers:function(a){let b=a?.version||"0.163.0";return{originator:"codex_cli_rs","User-Agent":`codex_cli_rs/${b}`,version:b}}},"gemini-cli":{id:"gemini-cli",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Content-Type","Authorization","User-Agent","X-Goog-Api-Client","Accept"],source:{npm:"@google/gemini-cli"},headers:function(a){let b=a?.version||"0.56.0",c=a?.upstreamModel||"unknown",d="ia32"===(0,e.LY)()?"x86":(0,e.LY)(),f="u">typeof process&&process.version?process.version.replace(/^v/,""):"unknown";return{"User-Agent":`GeminiCLI/${b}/${c} (${(0,e.ol)()}; ${d}; terminal)`,"X-Goog-Api-Client":a?.apiClient||`google-genai-sdk/1.41.0 gl-node/v${f}`}}},"openai-node":{id:"openai-node",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent"],source:{npm:"openai"},headers:function(){return{"User-Agent":`OpenAI/NodeJS/${process.version.replace(/^v/,"")}`}}},cline:{id:"cline",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","HTTP-Referer","X-Title","User-Agent","X-PLATFORM","X-PLATFORM-VERSION","X-CLIENT-TYPE","X-CLIENT-VERSION","X-CORE-VERSION","X-IS-MULTIROOT"],source:{npm:"cline"},headers:function(a){let b=a?.version||"3.0.0";return{"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`Cline/${b}`,"X-PLATFORM":(0,e.ol)()||"unknown","X-PLATFORM-VERSION":a?.platformVersion||(0,f.release)()||"unknown","X-CLIENT-TYPE":"extension","X-CLIENT-VERSION":b,"X-CORE-VERSION":b,"X-IS-MULTIROOT":"false"}}},chrome:{id:"chrome",tls:"chrome",alpn:["h2","http/1.1"],headerOrder:["User-Agent","Accept","Accept-Language","Accept-Encoding"],source:{capture:"chrome"},headers:function(a){let b,c=a?.chromeVersion||"136";return{"User-Agent":`Mozilla/5.0 (${"darwin"===(b=(0,e.ol)())?"Macintosh; Intel Mac OS X 10_15_7":"win32"===b?"Windows NT 10.0; Win64; x64":"X11; Linux x86_64"}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/${c}.0.0.0 Safari/537.36`}}},cursor:{id:"cursor",tls:"node",alpn:["h2","http/1.1"],headerOrder:[],source:{capture:"cursor"},headers:()=>({})},antigravity:{id:"antigravity",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","Accept"],source:{capture:"antigravity"},headers:function(a){let b=a?.version||"2.9.1";return{"User-Agent":`antigravity/${b} ${(0,e.ol)()}/${(0,e.LY)()}`}}},copilot:{id:"copilot",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","copilot-integration-id","editor-version","editor-plugin-version","user-agent","openai-intent","x-github-api-version"],source:{capture:"github-copilot"},headers:function(a){let b=a?.vscodeVersion||"1.110.0",c=a?.chatVersion||a?.version||"0.38.0";return{"copilot-integration-id":"vscode-chat","editor-version":`vscode/${b}`,"editor-plugin-version":`copilot-chat/${c}`,"user-agent":`GitHubCopilotChat/${c}`,"openai-intent":"conversation-panel","x-github-api-version":a?.apiVersion||"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user"}}},qwen:{id:"qwen",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","X-Stainless-Arch","X-Stainless-Os"],source:{capture:"qwen-code"},headers:function(a){let{os:b,arch:c,stainlessOs:d,stainlessArch:f}=a?.qwenOsArch||{os:"win32"===(0,e.ol)()?"windows":"darwin"===(0,e.ol)()?"darwin":"linux",arch:"arm64"===(0,e.LY)()?"arm64":"x64",stainlessOs:(0,e.vv)(),stainlessArch:(0,e.Tc)()},g=a?.version||"0.12.3",h=`QwenCode/${g} (${b}; ${c})`;return{"User-Agent":h,"X-DashScope-UserAgent":h,"X-Stainless-Arch":f,"X-Stainless-Os":d,"X-Stainless-Lang":"js","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":a?.runtimeVersion||process.version,"X-Stainless-Package-Version":a?.packageVersion||"5.11.0"}}},kimi:{id:"kimi",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","X-Msh-Version","X-Msh-Device-Model"],source:{capture:"kimi-code"},headers:function(){return{"X-Msh-Version":"2.1.2","X-Msh-Device-Model":`${(0,e.ol)()} ${(0,e.LY)()}`}}},"grok-cli":{id:"grok-cli",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent"],source:{capture:"grok-cli"},headers:function(a){return{"User-Agent":`grok-cli/${a?.version||"1.0.0"}`}}},"grok-build":{id:"grok-build",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","Accept","User-Agent","x-grok-client-identifier","x-grok-client-version"],source:{capture:"@xai-official/grok 0.2.99"},headers:function(){let a;return{"User-Agent":`grok-shell/${g.uG} (${(0,e.ol)()||"linux"}; ${"x64"===(a=(0,e.LY)())?"x86_64":"arm64"===a?"aarch64":"ia32"===a?"x86":a||"x86_64"})`,"x-grok-client-identifier":g.rK,"x-grok-client-version":g.uG}}},"muse-code":{id:"muse-code",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","Accept"],source:{capture:"muse-code"},headers:a=>({"User-Agent":`muse-code/${a?.version||"1.0.2"}`})}};function k(a){return j[a]||j["openai-node"]}let l=new Set(["openai","openai-responses","openai-compat"]),m=new Set(["claude"]);function n(a,b={}){if("string"==typeof a&&a)return a;if(a&&"object"==typeof a&&a.profile)return a.profile;let c=b.format||"",d=b.provider||"";return"claude"===c||m.has(c)||"claude"===d||d.startsWith("anthropic-compatible")?"claude-cli":"codex"===d?"codex-cli":"gemini-cli"===d?"gemini-cli":"antigravity"===d?"antigravity":"github"===d?"copilot":"qwen"===d?"qwen":"cline"===d||"clinepass"===d?"cline":"kimi"===d||"kimi-coding"===d?"kimi":"xai"===d?"grok-cli":"grok-cli"===d?"grok-build":"grok-web"===d?"chrome":"cursor"===d||"cursor"===c?"cursor":"muse"===d||"meta"===d?"muse-code":(l.has(c),"openai-node")}let o=new Set(["user-agent","anthropic-beta","x-stainless-package-version","x-stainless-runtime-version","x-stainless-os","x-stainless-arch"]),p=new Set(["x-stainless-helper-method","x-stainless-retry-count"]);function q(a,b,c={}){var d;let e,f=k(b),g=(d=c.snapshot,"function"==typeof(e=k(b)).headers?e.headers(d):{...e.headers||{}});!0===c.stream&&"claude-cli"===b?g["X-Stainless-Helper-Method"]="stream":"claude-cli"===b&&delete g["X-Stainless-Helper-Method"],"number"==typeof c.retryCount&&"claude-cli"===b&&(g["X-Stainless-Retry-Count"]=String(c.retryCount));let h=new Map;for(let[b,c]of Object.entries(a||{})){let a=b.toLowerCase();("authorization"===a||"x-api-key"===a||"api-key"===a)&&h.set(a,[b,c])}let i=!0===c.preserveUserAgent&&"claude-cli"!==b&&Object.entries(a||{}).find(([a])=>"user-agent"===a.toLowerCase())||null,j=r(a,g),l=c.overlay&&"object"==typeof c.overlay?"claude-cli"===b?function(a,b){let c,d,e={...a||{}},f=0!==(d=Object.values(c=Object.fromEntries([...o].map(a=>{let b;return[a,(b=Object.keys(e||{}).find(b=>b.toLowerCase()===a))?e[b]:void 0]}))).filter(a=>null!=a).length)&&d===o.size&&String(c["user-agent"]).match(/claude-(?:cli|code)\/(\d+\.\d+\.\d+)/i)?.[1]===b?.version;for(let a of Object.keys(e)){let b=a.toLowerCase();(p.has(b)||!f&&o.has(b))&&delete e[a]}return e}(c.overlay,c.snapshot):{...c.overlay}:{};for(let a of Object.keys(l))h.has(a.toLowerCase())&&delete l[a];let m=r(j,l);if(i&&!Object.keys(l).some(a=>"user-agent"===a.toLowerCase())){for(let a of Object.keys(m))"user-agent"===a.toLowerCase()&&delete m[a];m[i[0]]=i[1]}if("claude-cli"===b){if(!0===c.stream)m["X-Stainless-Helper-Method"]="stream";else for(let a of Object.keys(m))"x-stainless-helper-method"===a.toLowerCase()&&delete m[a];if("number"==typeof c.retryCount){for(let a of Object.keys(m))"x-stainless-retry-count"===a.toLowerCase()&&delete m[a];m["X-Stainless-Retry-Count"]=String(c.retryCount)}}for(let[a,[b,c]]of h){for(let b of Object.keys(m))b.toLowerCase()===a&&delete m[b];m[b]=c}return f?.headerOrder?s(m,f.headerOrder):m}function r(...a){let b={};for(let c of a)for(let[a,d]of Object.entries(c||{})){let c=Object.keys(b).find(b=>b.toLowerCase()===a.toLowerCase());c&&delete b[c],b[a]=d}return b}function s(a,b){if(!b||!b.length)return{...a};let c=new Set,d={},e=new Map;for(let[b,c]of Object.entries(a))e.set(b.toLowerCase(),[b,c]);for(let a of b){let b=e.get(a.toLowerCase());b&&(d[b[0]]=b[1],c.add(a.toLowerCase()))}for(let[b,e]of Object.entries(a))c.has(b.toLowerCase())||(d[b]=e);return d}},59970:(a,b,c)=>{"use strict";let d,e=Symbol.for("undici.globalDispatcher.2"),f=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:g}=c(61448),h=c(37417),i=c(74399);function j(a){if(!a||"function"!=typeof a.dispatch)throw new g("Argument agent must implement Agent");try{Object.defineProperty(globalThis,e,{value:a,writable:!0,enumerable:!1,configurable:!1})}catch(b){if(b instanceof TypeError){d=a;return}throw b}try{let b=a instanceof i?a:new i(a);Object.defineProperty(globalThis,f,{value:b,writable:!0,enumerable:!1,configurable:!1})}catch(a){if(!(a instanceof TypeError))throw a}}function k(){return globalThis[e]??d}void 0===k()&&j(new h),a.exports={setGlobalDispatcher:j,getGlobalDispatcher:k,installedExports:["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"]}},60823:(a,b,c)=>{"use strict";let d=c(34589);a.exports=class{#aQ;#bF=!1;#bG=!1;#bH=!1;constructor(a){if("object"!=typeof a||null===a)throw TypeError("handler must be an object");this.#aQ=a}onRequestStart(...a){this.#aQ.onRequestStart?.(...a)}onRequestUpgrade(...a){return d(!this.#bF),d(!this.#bG),this.#aQ.onRequestUpgrade?.(...a)}onResponseStart(...a){return d(!this.#bF),d(!this.#bG),d(!this.#bH),this.#bH=!0,this.#aQ.onResponseStart?.(...a)}onResponseData(...a){return d(!this.#bF),d(!this.#bG),this.#aQ.onResponseData?.(...a)}onResponseEnd(...a){return d(!this.#bF),d(!this.#bG),this.#bF=!0,this.#aQ.onResponseEnd?.(...a)}onResponseError(...a){return this.#bG=!0,this.#aQ.onResponseError?.(...a)}onBodySent(...a){return this.#aQ.onBodySent?.(...a)}onRequestSent(...a){return this.#aQ.onRequestSent?.(...a)}}},61330:(a,b,c)=>{"use strict";let{BalancedPoolMissingUpstreamError:d,InvalidArgumentError:e}=c(61448),{PoolBase:f,kClients:g,kNeedDrain:h,kAddClient:i,kRemoveClient:j,kGetDispatcher:k}=c(39065),l=c(35689),{kOriginless:m,kUrl:n}=c(49176),o=c(84285),p=Symbol("factory"),q=Symbol("options"),r=Symbol("kGreatestCommonDivisor"),s=Symbol("kCurrentWeight"),t=Symbol("kIndex"),u=Symbol("kWeight"),v=Symbol("kMaxWeightPerServer"),w=Symbol("kErrorPenalty");function x(a,b){return new l(a,b)}class y extends f{constructor(a=[],{factory:b=x,connect:c,tls:d,...f}={}){if("function"!=typeof b)throw new e("factory must be a function.");for(const e of(super(f),this[m]=!0,c&&"function"!=typeof c&&(c={...c}),d&&"function"!=typeof d&&(d={...d}),this[q]={...o.deepClone(f),connect:c,tls:d},this[t]=-1,this[s]=0,this[v]=this[q].maxWeightPerServer||100,this[w]=this[q].errorPenalty||15,Array.isArray(a)||(a=[a]),this[p]=b,a))this.addUpstream(e);this._updateBalancedPoolStats()}addUpstream(a){let b=o.parseOrigin(a).origin;if(this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed))return this;let c=this[p](b,this[q]);for(let a of(this[i](c),c.on("connect",()=>{c[u]=Math.min(this[v],c[u]+this[w])}),c.on("connectionError",()=>{c[u]=Math.max(1,c[u]-this[w]),this._updateBalancedPoolStats()}),c.on("disconnect",(...a)=>{let b=a[2];b&&"UND_ERR_SOCKET"===b.code&&(c[u]=Math.max(1,c[u]-this[w]),this._updateBalancedPoolStats())}),this[g]))a[u]=this[v];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let a=0;for(let b=0;b<this[g].length;b++)a=function(a,b){if(0===a)return b;for(;0!==b;){let c=b;b=a%b,a=c}return a}(this[g][b][u],a);this[r]=a}removeUpstream(a){let b=o.parseOrigin(a).origin,c=this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed);return c&&this[j](c),this}getUpstream(a){let b=o.parseOrigin(a).origin;return this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed)}get upstreams(){return this[g].filter(a=>!0!==a.closed&&!0!==a.destroyed).map(a=>a[n].origin)}[k](){if(0===this[g].length)throw new d;let a=0,b=-1;for(;a++<this[g].length;){this[t]=(this[t]+1)%this[g].length;let a=this[g][this[t]];if((0===this[t]&&(this[s]=this[s]-this[r],this[s]<=0&&(this[s]=this[v])),!a[h]&&!0!==a.closed&&!0!==a.destroyed)&&((-1===b||a[u]>this[g][b][u])&&(b=this[t]),a[u]>=this[s]))return a}if(-1!==b)return this[s]=this[g][b][u],this[t]=b,this[g][b]}}a.exports=y},61448:a=>{"use strict";let b=Symbol.for("undici.error.UND_ERR");class c extends Error{constructor(a,b){super(a,b),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](a){return a&&!0===a[b]}get[b](){return!0}}let d=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class e extends c{constructor(a){super(a),this.name="ConnectTimeoutError",this.message=a||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[d]}get[d](){return!0}}let f=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class g extends c{constructor(a){super(a),this.name="HeadersTimeoutError",this.message=a||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[f]}get[f](){return!0}}let h=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class i extends c{constructor(a){super(a),this.name="HeadersOverflowError",this.message=a||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](a){return a&&!0===a[h]}get[h](){return!0}}let j=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class k extends c{constructor(a){super(a),this.name="BodyTimeoutError",this.message=a||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[j]}get[j](){return!0}}let l=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class m extends c{constructor(a){super(a),this.name="InvalidArgumentError",this.message=a||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](a){return a&&!0===a[l]}get[l](){return!0}}let n=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class o extends c{constructor(a){super(a),this.name="InvalidReturnValueError",this.message=a||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](a){return a&&!0===a[n]}get[n](){return!0}}let p=Symbol.for("undici.error.UND_ERR_ABORT");class q extends c{constructor(a){super(a),this.name="AbortError",this.message=a||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](a){return a&&!0===a[p]}get[p](){return!0}}let r=Symbol.for("undici.error.UND_ERR_ABORTED");class s extends q{constructor(a){super(a),this.name="AbortError",this.message=a||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](a){return a&&!0===a[r]}get[r](){return!0}}let t=Symbol.for("undici.error.UND_ERR_INFO");class u extends c{constructor(a,b){super(a,b),this.name="InformationalError",this.message=a||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](a){return a&&!0===a[t]}get[t](){return!0}}let v=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class w extends c{constructor(a){super(a),this.name="RequestContentLengthMismatchError",this.message=a||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](a){return a&&!0===a[v]}get[v](){return!0}}let x=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class y extends c{constructor(a){super(a),this.name="ResponseContentLengthMismatchError",this.message=a||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](a){return a&&!0===a[x]}get[x](){return!0}}let z=Symbol.for("undici.error.UND_ERR_DESTROYED");class A extends c{constructor(a){super(a),this.name="ClientDestroyedError",this.message=a||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](a){return a&&!0===a[z]}get[z](){return!0}}let B=Symbol.for("undici.error.UND_ERR_CLOSED");class C extends c{constructor(a){super(a),this.name="ClientClosedError",this.message=a||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](a){return a&&!0===a[B]}get[B](){return!0}}let D=Symbol.for("undici.error.UND_ERR_SOCKET");class E extends c{constructor(a,b){super(a),this.name="SocketError",this.message=a||"Socket error",this.code="UND_ERR_SOCKET",this.socket=b}static[Symbol.hasInstance](a){return a&&!0===a[D]}get[D](){return!0}}let F=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class G extends c{constructor(a){super(a),this.name="NotSupportedError",this.message=a||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](a){return a&&!0===a[F]}get[F](){return!0}}let H=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class I extends c{constructor(a){super(a),this.name="MissingUpstreamError",this.message=a||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](a){return a&&!0===a[H]}get[H](){return!0}}let J=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class K extends Error{constructor(a,b,c){super(a),this.name="HTTPParserError",this.code=b?`HPE_${b}`:void 0,this.data=c?c.toString():void 0}static[Symbol.hasInstance](a){return a&&!0===a[J]}get[J](){return!0}}let L=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class M extends c{constructor(a){super(a),this.name="ResponseExceededMaxSizeError",this.message=a||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](a){return a&&!0===a[L]}get[L](){return!0}}let N=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class O extends c{constructor(a,b,{headers:c,data:d}){super(a),this.name="RequestRetryError",this.message=a||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=b,this.data=d,this.headers=c}static[Symbol.hasInstance](a){return a&&!0===a[N]}get[N](){return!0}}let P=Symbol.for("undici.error.UND_ERR_RESPONSE");class Q extends c{constructor(a,b,{headers:c,body:d}){super(a),this.name="ResponseError",this.message=a||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=b,this.body=d,this.headers=c}static[Symbol.hasInstance](a){return a&&!0===a[P]}get[P](){return!0}}let R=Symbol.for("undici.error.UND_ERR_PRX_TLS");class S extends c{constructor(a,b,c={}){super(b,{cause:a,...c}),this.name="SecureProxyConnectionError",this.message=b||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=a}static[Symbol.hasInstance](a){return a&&!0===a[R]}get[R](){return!0}}let T=Symbol.for("undici.error.UND_ERR_PRX_CONN");class U extends c{constructor(a,b,c={}){super(b,{cause:a,...c}),this.name="ProxyConnectionError",this.message=b||"Proxy Connection failed",this.code="UND_ERR_PRX_CONN",this.cause=a}static[Symbol.hasInstance](a){return a&&!0===a[T]}get[T](){return!0}}let V=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class W extends c{constructor(a){super(a),this.name="MaxOriginsReachedError",this.message=a||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](a){return a&&!0===a[V]}get[V](){return!0}}class X extends c{constructor(a,b){super(a),this.name="Socks5ProxyError",this.message=a||"SOCKS5 proxy error",this.code=b||"UND_ERR_SOCKS5"}}let Y=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED");class Z extends c{constructor(a){super(a),this.name="MessageSizeExceededError",this.message=a||"Max decompressed message size exceeded",this.code="UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"}static[Symbol.hasInstance](a){return a&&!0===a[Y]}get[Y](){return!0}}a.exports={AbortError:q,HTTPParserError:K,UndiciError:c,HeadersTimeoutError:g,HeadersOverflowError:i,BodyTimeoutError:k,RequestContentLengthMismatchError:w,ConnectTimeoutError:e,InvalidArgumentError:m,InvalidReturnValueError:o,RequestAbortedError:s,ClientDestroyedError:A,ClientClosedError:C,InformationalError:u,SocketError:E,NotSupportedError:G,ResponseContentLengthMismatchError:y,BalancedPoolMissingUpstreamError:I,ResponseExceededMaxSizeError:M,RequestRetryError:O,ResponseError:Q,SecureProxyConnectionError:S,ProxyConnectionError:U,MaxOriginsReachedError:W,Socks5ProxyError:X,MessageSizeExceededError:Z}},62026:a=>{"use strict";a.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}},62457:(a,b,c)=>{"use strict";c.d(b,{Ut:()=>e,a_:()=>f,bC:()=>d,lW:()=>g,zh:()=>h});let d={STOP:"stop",LENGTH:"length",TOOL_CALLS:"tool_calls",CONTENT_FILTER:"content_filter",ERROR:"error"},e={END_TURN:"end_turn",MAX_TOKENS:"max_tokens",TOOL_USE:"tool_use",STOP_SEQUENCE:"stop_sequence"},f={STOP:"STOP",MAX_TOKENS:"MAX_TOKENS",SAFETY:"SAFETY",RECITATION:"RECITATION",BLOCKLIST:"BLOCKLIST",PROHIBITED_CONTENT:"PROHIBITED_CONTENT",SPII:"SPII",IMAGE_SAFETY:"IMAGE_SAFETY",MALFORMED_FUNCTION_CALL:"MALFORMED_FUNCTION_CALL",UNEXPECTED_TOOL_CALL:"UNEXPECTED_TOOL_CALL",FINISH_REASON_UNSPECIFIED:"FINISH_REASON_UNSPECIFIED",OTHER:"OTHER",LANGUAGE:"LANGUAGE",NO_IMAGE:"NO_IMAGE"},g=new Set([f.MALFORMED_FUNCTION_CALL,f.UNEXPECTED_TOOL_CALL,f.FINISH_REASON_UNSPECIFIED,f.OTHER,f.LANGUAGE,f.NO_IMAGE]),h=new Set([f.SAFETY,f.RECITATION,f.BLOCKLIST,f.SPII,f.IMAGE_SAFETY,f.PROHIBITED_CONTENT])},62571:(a,b,c)=>{"use strict";let d=c(53053),e=c(57975),f=e.debuglog("undici"),g=e.debuglog("fetch"),h=e.debuglog("websocket"),i={beforeConnect:d.channel("undici:client:beforeConnect"),connected:d.channel("undici:client:connected"),connectError:d.channel("undici:client:connectError"),sendHeaders:d.channel("undici:client:sendHeaders"),create:d.channel("undici:request:create"),bodySent:d.channel("undici:request:bodySent"),bodyChunkSent:d.channel("undici:request:bodyChunkSent"),bodyChunkReceived:d.channel("undici:request:bodyChunkReceived"),headers:d.channel("undici:request:headers"),trailers:d.channel("undici:request:trailers"),error:d.channel("undici:request:error"),open:d.channel("undici:websocket:open"),close:d.channel("undici:websocket:close"),socketError:d.channel("undici:websocket:socket_error"),ping:d.channel("undici:websocket:ping"),pong:d.channel("undici:websocket:pong"),proxyConnected:d.channel("undici:proxy:connected")},j=!1;function k(a=f){if(!j){if(i.beforeConnect.hasSubscribers||i.connected.hasSubscribers||i.connectError.hasSubscribers||i.sendHeaders.hasSubscribers){j=!0;return}j=!0,d.subscribe("undici:client:beforeConnect",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f}}=b;a("connecting to %s%s using %s%s",f,e?`:${e}`:"",d,c)}),d.subscribe("undici:client:connected",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f}}=b;a("connected to %s%s using %s%s",f,e?`:${e}`:"",d,c)}),d.subscribe("undici:client:connectError",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f},error:g}=b;a("connection to %s%s using %s%s errored - %s",f,e?`:${e}`:"",d,c,g.message)}),d.subscribe("undici:client:sendHeaders",b=>{let{request:{method:c,path:d,origin:e}}=b;a("sending request to %s %s%s",c,e,d)})}}let l=!1,m=!1;(f.enabled||g.enabled)&&(k(g.enabled?g:f),function(a=f){if(!l){if(i.headers.hasSubscribers||i.trailers.hasSubscribers||i.error.hasSubscribers){l=!0;return}l=!0,d.subscribe("undici:request:headers",b=>{let{request:{method:c,path:d,origin:e},response:{statusCode:f}}=b;a("received response to %s %s%s - HTTP %d",c,e,d,f)}),d.subscribe("undici:request:trailers",b=>{let{request:{method:c,path:d,origin:e}}=b;a("trailers received from %s %s%s",c,e,d)}),d.subscribe("undici:request:error",b=>{let{request:{method:c,path:d,origin:e},error:f}=b;a("request to %s %s%s errored - %s",c,e,d,f.message)})}}(g.enabled?g:f)),h.enabled&&(k(f.enabled?f:h),function(a=h){if(!m){if(i.open.hasSubscribers||i.close.hasSubscribers||i.socketError.hasSubscribers||i.ping.hasSubscribers||i.pong.hasSubscribers){m=!0;return}m=!0,d.subscribe("undici:websocket:open",b=>{if(null!=b.address){let{address:c,port:d}=b.address;a("connection opened %s%s",c,d?`:${d}`:"")}else a("connection opened")}),d.subscribe("undici:websocket:close",b=>{let{websocket:c,code:d,reason:e}=b;a("closed connection to %s - %s %s",c.url,d,e)}),d.subscribe("undici:websocket:socket_error",b=>{a("connection errored - %s",b.message)}),d.subscribe("undici:websocket:ping",b=>{a("ping received")}),d.subscribe("undici:websocket:pong",b=>{a("pong received")})}}(h)),a.exports={channels:i}},62692:(a,b,c)=>{"use strict";c.d(b,{B:()=>m});var d=c(22256),e=c(38421),f=c(43835),g=c(27137),h=c(96997),i=c(19016),j=c(49471),k=c(85513),l=c(54383);class m extends d.Hv{constructor(){super("kiro",e.xq.kiro)}buildHeaders(a,b=!0){let c={...this.config.headers,"Amz-Sdk-Request":"attempt=1; max=3","Amz-Sdk-Invocation-Id":(0,g.A)()},d=a?.providerSpecificData?.authMethod,e="api_key"===d,f=a?.apiKey||(e?a?.accessToken:null);return e&&f?(c.Authorization=`Bearer ${f}`,c.tokentype="API_KEY"):a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`,"external_idp"===d&&(c.TokenType="EXTERNAL_IDP")),c}getOrderedBaseUrls(a){let b=this.getBaseUrls(),c=a?.providerSpecificData?.authMethod;if("api_key"!==c&&"external_idp"!==c&&"idc"!==c)return b;let d=(0,l.R)(a?.providerSpecificData?.profileArn),e=d?.region||(0,k.l6)((a?.providerSpecificData?.region||"").trim()),f=b.filter(a=>a.includes("amazonaws.com")),g=b.filter(a=>!a.includes("amazonaws.com"));if(0===f.length||"us-east-1"===e)return f.length>0?[...f,...g]:b;let h=f.find(a=>a.includes("://q."));if(!h)return[...f,...g];let i=e.startsWith("us-gov-")?`q-fips.${e}.amazonaws.com`:`q.${e}.amazonaws.com`;return[h.replace(/q\.[a-z0-9-]+\.amazonaws\.com/,i),...f.filter(a=>a!==h),...g]}buildUrl(a,b,c=0,d=null){let e=this.getOrderedBaseUrls(d);return e[c]||e[0]||this.config.baseUrl}transformRequest(a,b,c,d){return b}async execute(a){let b=await super.execute(a);return b?.response?.ok&&(b.response=this.transformEventStreamToSSE(b.response,a.model)),b}transformEventStreamToSSE(a,b){let c=new Uint8Array(0),d=0,e=`chatcmpl-${Date.now()}`,g=Math.floor(Date.now()/1e3),h=(0,f.$D)(b).upstream,k=(0,j.nl)("kiro",h).contextWindow||2e5,l={endDetected:!1,finishEmitted:!1,upstreamError:null,hasToolCalls:!1,hasReasoningContent:!1,reasoningChunkCount:0,toolCallIndex:0,seenToolIds:new Map,inThinking:!1},m=new TransformStream({async transform(a,f){let h=d,i=new Uint8Array(c.length+a.length);i.set(c),i.set(a,c.length),c=i;let j=0;for(;c.length>=16&&j<1e3;){j++;let a=new DataView(c.buffer,c.byteOffset).getUint32(0,!1);if(a<16||a>c.length||c.length<a)break;let h=c.slice(0,a);c=c.slice(a);let i=function(a){try{let b=new DataView(a.buffer,a.byteOffset).getUint32(4,!1),c={},d=12,e=12+b;for(;d<e&&d<a.length;){let b=a[d];if(++d+b>a.length)break;let e=new TextDecoder().decode(a.slice(d,d+b)),f=a[d+=b];if(d++,7===f){let b=a[d]<<8|a[d+1];if((d+=2)+b>a.length)break;let f=new TextDecoder().decode(a.slice(d,d+b));d+=b,c[e]=f}else break}let f=12+b,g=a.length-4,h=null;if(g>f){let b=new TextDecoder().decode(a.slice(f,g));if(!b||!b.trim())return{headers:c,payload:null};try{h=JSON.parse(b)}catch(a){console.warn(`[Kiro] Failed to parse payload: ${a.message} | payload: ${b.substring(0,100)}`),h={raw:b}}}return{headers:c,payload:h}}catch{return null}}(h);if(!i)continue;let m=i.headers[":event-type"]||"",n=i.headers[":exception-type"]||"";if(n||"exception"===i.headers[":message-type"]){let a=i.payload&&"object"==typeof i.payload?i.payload:{};l.upstreamError=String(a.message||a.Message||("string"==typeof i.payload?i.payload:"")||n||"Kiro upstream exception"),l.finishEmitted=!0;let c={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{},finish_reason:null}],error:{message:l.upstreamError,type:"server_error",code:n||"upstream_exception"}};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(c)}
|
|
368
|
+
WHERE id = ?`,[f.name,+!!f.isActive,JSON.stringify(f.allowedModels),JSON.stringify(f.allowedCombos),f.expiresAt,f.rateLimitPerMinute,f.concurrencyLimit,f.spendLimitUsd,a]),e={...f}}),e&&s(a),e}async function z(a){let b=await (0,g.c)(),c=(b.run("DELETE FROM apiKeys WHERE id = ?",[a])?.changes??0)>0;return c&&s(a),c}async function A(a){if(!a||"string"!=typeof a)return null;let b=await (0,g.c)(),c=(0,h.cb)(a),d=(0,h.E8)(a),f=c?e().createHash("sha256").update(a).digest("hex"):null;if(c&&f){let a,d=(a=q.get(c))?a.expiresAt<=Date.now()?(q.delete(c),null):(0,h.lO)(a.rawSha256,f)?(q.delete(c),q.set(c,a),a):null:null;if(d){let a=b.get(`${p} WHERE k.id = ?`,[d.id]);if(a&&(1===a.isActive||!0===a.isActive))return a.spentUsd=await u(a.id),l(a);q.delete(c)}}let i=c?b.get(`${p} WHERE k.isActive = 1 AND k.lookupDigest = ?`,[c]):null;if(i)return(2===(0,h.BA)(i.key).version?await (0,h.ue)(i.key,a):(0,h.O0)(i.key,a))?(c&&f&&r(c,f,i.id),i.spentUsd=await u(i.id),l(i)):null;for(let e of b.all(`${p} WHERE k.isActive = 1 AND k.lookupDigest IS NULL AND k.keyPrefix = ? AND k.key NOT LIKE 'v2:%'`,[d])){let d=(0,h.BA)(e.key);if((0,h.O0)(e.key,a)){if(d.legacy||1===d.version&&c){let d=(0,h.ws)(a,c);b.run("UPDATE apiKeys SET key = ?, keyPrefix = ?, lookupDigest = ? WHERE id = ?",[d,(0,h.E8)(a),c,e.id]),c&&q.delete(c),e.key=d,e.keyPrefix=(0,h.E8)(a),e.lookupDigest=c}return c&&f&&r(c,f,e.id),e.spentUsd=await u(e.id),l(e)}}return null}async function B(a){return!!await A(a)}},57435:(a,b,c)=>{"use strict";let{Readable:d,Duplex:e,PassThrough:f}=c(57075),g=c(34589),{AsyncResource:h}=c(16698),{InvalidArgumentError:i,InvalidReturnValueError:j,RequestAbortedError:k}=c(61448),l=c(84285),{kBodyUsed:m}=c(49176),{addSignal:n,removeSignal:o}=c(73135);function p(){}let q=Symbol("resume");class r extends d{constructor(){super({autoDestroy:!0}),this[q]=null,this[m]=!0}_read(){let{[q]:a}=this;a&&(this[q]=null,a())}_destroy(a,b){this._read(),b(a)}}class s extends d{constructor(a){super({autoDestroy:!0}),this[q]=a}_read(){this[q]()}_destroy(a,b){a||this._readableState.endEmitted||(a=new k),b(a)}}class t extends h{constructor(a,b){if(!a||"object"!=typeof a)throw new i("invalid opts");if("function"!=typeof b)throw new i("invalid handler");const{signal:c,method:d,opaque:f,onInfo:g,responseHeaders:h}=a;if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new i("signal must be an EventEmitter or EventTarget");if("CONNECT"===d)throw new i("invalid method");if(g&&"function"!=typeof g)throw new i("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=f||null,this.responseHeaders=h||null,this.handler=b,this.abort=null,this.context=null,this.onInfo=g||null,this.req=new r().on("error",p),this.ret=new e({readableObjectMode:a.objectMode,autoDestroy:!0,read:()=>{let{body:a}=this;a?.resume&&a.resume()},write:(a,b,c)=>{let{req:d}=this;d.push(a,b)||d._readableState.destroyed?c():d[q]=c},destroy:(a,b)=>{let{body:c,req:d,res:e,ret:f,abort:g}=this;a||f._readableState.endEmitted||(a=new k),g&&a&&g(),l.destroy(c,a),l.destroy(d,a),l.destroy(e,a),o(this),b(a)}}).on("prefinish",()=>{let{req:a}=this;a.push(null)}),this.res=null,n(this,c)}onRequestStart(a,b){let{res:c}=this;this.reason?a.abort(this.reason):(g(!c,"pipeline cannot be retried"),this.abort=b=>a.abort(b),this.context=b)}onResponseStart(a,b,c,d){let e,{opaque:f,handler:g,context:h}=this;if(b<200){if(this.onInfo){let d=a?.rawHeaders,e="raw"===this.responseHeaders?l.parseRawHeaders(d):c;this.onInfo({statusCode:b,headers:e})}return}this.res=new s(()=>a.resume());try{this.handler=null;let d=a?.rawHeaders,i="raw"===this.responseHeaders?l.parseRawHeaders(d):c;e=this.runInAsyncScope(g,null,{statusCode:b,headers:i,opaque:f,body:this.res,context:h})}catch(a){throw this.res.on("error",p),a}if(!e||"function"!=typeof e.on)throw new j("expected Readable");e.on("data",a=>{let{ret:b,body:c}=this;!b.push(a)&&c.pause&&c.pause()}).on("error",a=>{let{ret:b}=this;l.destroy(b,a)}).on("end",()=>{let{ret:a}=this;a.push(null)}).on("close",()=>{let{ret:a}=this;a._readableState.ended||l.destroy(a,new k)}),this.body=e}onResponseData(a,b){let{res:c}=this;!1===c.push(b)&&a.pause()}onResponseEnd(a,b){let{res:c}=this;c.push(null)}onResponseError(a,b){let{ret:c}=this;this.handler=null,l.destroy(c,b)}}a.exports=function(a,b){try{let c=new t(a,b);return this.dispatch({...a,body:c.req},c),c.ret}catch(a){return new f().destroy(a)}}},57690:(a,b,c)=>{"use strict";let d;c.d(b,{KN:()=>m,uV:()=>n});let e={pricing:{},capabilities:{},reasoning:{}};function f(a,b){if(!a)throw Error(b)}let g=!1;function h(a){if("u"<typeof process)return null;if("function"!=typeof process.getBuiltinModule)return!g&&process.versions?.node&&(g=!0,console.warn(`[switchboard] generated model catalog disabled: process.getBuiltinModule requires Node >= 20.12 (running ${process.versions.node}); falling back to hand-maintained data only`)),null;try{return process.getBuiltinModule(a)}catch{return null}}function i(){return void 0===d&&(d=function(){let a=h("node:fs");if(!a)return e;for(let b of function(){let a=[],b=h("node:path");if(b&&"function"==typeof process.cwd)try{a.push(b.join(process.cwd(),"open-sse","providers","generated","catalog.json"))}catch{}let d=h("node:url");if(d)try{a.push(d.fileURLToPath(new c.U(c(19659))))}catch{}return a}())if("string"==typeof b)try{return function(a){let b=JSON.parse(a);return null===b||"object"!=typeof b?e:{pricing:b.pricing&&"object"==typeof b.pricing?b.pricing:{},capabilities:b.capabilities&&"object"==typeof b.capabilities?b.capabilities:{},reasoning:b.reasoning&&"object"==typeof b.reasoning?b.reasoning:{}}}(a.readFileSync(b,"utf8"))}catch{}return e}()),d}let j=new WeakMap;function k(a){let b=j.get(a);if(!b){for(let c of(b=new Map,Object.keys(a).sort())){let d=c.toLowerCase();b.has(d)||b.set(d,a[c])}j.set(a,b)}return b}function l(a,b){if(!b)return null;f("string"==typeof b,"model must be a string");let c=b.includes("/")?b.split("/").pop():b;return f("string"==typeof c,"model base must be a string"),a[c]||a[b]||k(a).get(c.toLowerCase())||k(a).get(b.toLowerCase())||null}function m(a){return l(i().pricing,a)}function n(a){return l(i().capabilities,a)}},58609:(a,b,c)=>{"use strict";c.d(b,{U:()=>f});var d=c(24081),e=c(50743);function f(a){return{async get(b,c=null){let f=(await (0,d.c)()).get("SELECT value FROM kv WHERE scope = ? AND key = ?",[a,b]);return f?(0,e.q)(f.value,c):c},async getAll(){let b=(await (0,d.c)()).all("SELECT key, value FROM kv WHERE scope = ?",[a]),c={};for(let a of b)c[a.key]=(0,e.q)(a.value);return c},async set(b,c){(await (0,d.c)()).run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,b,(0,e.s)(c)])},async setMany(b){let c=await (0,d.c)();c.transaction(()=>{for(let[d,f]of Object.entries(b))c.run("INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",[a,d,(0,e.s)(f)])})},async remove(b){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ? AND key = ?",[a,b])},async clear(){(await (0,d.c)()).run("DELETE FROM kv WHERE scope = ?",[a])}}}},59529:(a,b,c)=>{"use strict";c.d(b,{VG:()=>h});var d=c(22256),e=c(38421),f=c(10793),g=c(50969);class h extends d.Hv{constructor(){super("gemini-cli",e.xq["gemini-cli"])}buildUrl(a,b,c=0){return`${this.config.baseUrl}:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":(0,f.sX)(this._currentModel),"X-Goog-Api-Client":f.go,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){this._currentModel=a;let e=function(a){if(!a||"object"!=typeof a)return a;let{stream:b,...c}=a;if(!c.request||"object"!=typeof c.request)return c;let{stream:d,...e}=c.request;return{...c,request:e}}(b);return e&&e.request&&e.model?e:{project:d?.projectId||e?.project,model:a,request:e}}parseError(a,b){let c=super.parseError(a,b);if(429!==a.status||!b)return c;try{let a=JSON.parse(b),d=a?.error?.details;if(Array.isArray(d)){for(let a of d)if(a?.["@type"]==="type.googleapis.com/google.rpc.RetryInfo"&&a?.retryDelay){c.retryAfter=a.retryDelay;let b=function(a){if("string"==typeof a){let b=a.match(/^(\d+(?:\.\d+)?)s$/);if(!b)return null;let c=Math.round(1e3*Number(b[1]));return Number.isFinite(c)?c:null}if("number"==typeof a)return Number.isFinite(a)?Math.round(1e3*a):null;if(a&&"object"==typeof a){let b=Number(a.seconds||0),c=Number(a.nanos||0);return Number.isFinite(b)&&Number.isFinite(c)?Math.round(1e3*b+c/1e6):null}return null}(a.retryDelay);null!==b&&b>0&&(c.resetsAtMs=Date.now()+b);break}}}catch{}return c}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,g.Fm)(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret}),identity:this.config.identity,provider:this.provider,format:this.config.format},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Gemini CLI refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Gemini CLI refresh error: ${a.message}`),null}}}},59882:(a,b,c)=>{"use strict";c.d(b,{$3:()=>q,$R:()=>i,Dm:()=>s,E$:()=>k,Zb:()=>h,jI:()=>j,ti:()=>n});var d=c(74570),e=c(3507),f=c(48161),g=c(83382);let h=["Accept","Authorization","Content-Type","User-Agent","X-Claude-Code-Session-Id","X-Stainless-Arch","X-Stainless-Lang","X-Stainless-OS","X-Stainless-Package-Version","X-Stainless-Retry-Count","X-Stainless-Runtime","X-Stainless-Runtime-Version","X-Stainless-Timeout","anthropic-beta","anthropic-dangerous-direct-browser-access","anthropic-version","x-app","x-client-request-id","Connection","Host","Accept-Encoding","Content-Length"],i=h.filter(a=>"X-Stainless-Timeout"!==a),j={"claude-cli":{id:"claude-cli",tls:"claude-code",alpn:["http/1.1"],headerOrder:h,source:{npm:"@anthropic-ai/claude-code",capture:"claude-code-native",tlsSpec:"claude-code"},headers:function(a){let b=a?.version||"2.1.302",c=a?.entrypoint||"cli";return{"Anthropic-Version":d.b8,"Anthropic-Beta":a?.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,effort-2025-11-24,structured-outputs-2025-12-15","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":a?.userAgent||`claude-cli/${b} (external, ${c})`,"X-App":"cli","X-Stainless-Runtime-Version":a?.runtimeVersion||process.version,"X-Stainless-Package-Version":a?.packageVersion||"0.128.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":a?.arch||(0,e.Tc)(),"X-Stainless-Os":a?.os||(0,e.vv)(),"X-Stainless-Timeout":"600"}}},"codex-cli":{id:"codex-cli",tls:"chrome",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","originator","session_id","User-Agent","version","chatgpt-account-id"],source:{npm:"@openai/codex"},headers:function(a){let b=a?.version||"0.163.0";return{originator:"codex_cli_rs","User-Agent":`codex_cli_rs/${b}`,version:b}}},"gemini-cli":{id:"gemini-cli",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Content-Type","Authorization","User-Agent","X-Goog-Api-Client","Accept"],source:{npm:"@google/gemini-cli"},headers:function(a){let b=a?.version||"0.56.0",c=a?.upstreamModel||"unknown",d="ia32"===(0,e.LY)()?"x86":(0,e.LY)(),f="u">typeof process&&process.version?process.version.replace(/^v/,""):"unknown";return{"User-Agent":`GeminiCLI/${b}/${c} (${(0,e.ol)()}; ${d}; terminal)`,"X-Goog-Api-Client":a?.apiClient||`google-genai-sdk/1.41.0 gl-node/v${f}`}}},"openai-node":{id:"openai-node",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent"],source:{npm:"openai"},headers:function(){return{"User-Agent":`OpenAI/NodeJS/${process.version.replace(/^v/,"")}`}}},cline:{id:"cline",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","HTTP-Referer","X-Title","User-Agent","X-PLATFORM","X-PLATFORM-VERSION","X-CLIENT-TYPE","X-CLIENT-VERSION","X-CORE-VERSION","X-IS-MULTIROOT"],source:{npm:"cline"},headers:function(a){let b=a?.version||"3.0.0";return{"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`Cline/${b}`,"X-PLATFORM":(0,e.ol)()||"unknown","X-PLATFORM-VERSION":a?.platformVersion||(0,f.release)()||"unknown","X-CLIENT-TYPE":"extension","X-CLIENT-VERSION":b,"X-CORE-VERSION":b,"X-IS-MULTIROOT":"false"}}},chrome:{id:"chrome",tls:"chrome",alpn:["h2","http/1.1"],headerOrder:["User-Agent","Accept","Accept-Language","Accept-Encoding"],source:{capture:"chrome"},headers:function(a){let b,c=a?.chromeVersion||"136";return{"User-Agent":`Mozilla/5.0 (${"darwin"===(b=(0,e.ol)())?"Macintosh; Intel Mac OS X 10_15_7":"win32"===b?"Windows NT 10.0; Win64; x64":"X11; Linux x86_64"}) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/${c}.0.0.0 Safari/537.36`}}},cursor:{id:"cursor",tls:"node",alpn:["h2","http/1.1"],headerOrder:[],source:{capture:"cursor"},headers:()=>({})},antigravity:{id:"antigravity",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","Accept"],source:{capture:"antigravity"},headers:function(a){let b=a?.version||"2.9.1";return{"User-Agent":`antigravity/${b} ${(0,e.ol)()}/${(0,e.LY)()}`}}},copilot:{id:"copilot",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","copilot-integration-id","editor-version","editor-plugin-version","user-agent","openai-intent","x-github-api-version"],source:{capture:"github-copilot"},headers:function(a){let b=a?.vscodeVersion||"1.110.0",c=a?.chatVersion||a?.version||"0.38.0";return{"copilot-integration-id":"vscode-chat","editor-version":`vscode/${b}`,"editor-plugin-version":`copilot-chat/${c}`,"user-agent":`GitHubCopilotChat/${c}`,"openai-intent":"conversation-panel","x-github-api-version":a?.apiVersion||"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user"}}},qwen:{id:"qwen",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","X-Stainless-Arch","X-Stainless-Os"],source:{capture:"qwen-code"},headers:function(a){let{os:b,arch:c,stainlessOs:d,stainlessArch:f}=a?.qwenOsArch||{os:"win32"===(0,e.ol)()?"windows":"darwin"===(0,e.ol)()?"darwin":"linux",arch:"arm64"===(0,e.LY)()?"arm64":"x64",stainlessOs:(0,e.vv)(),stainlessArch:(0,e.Tc)()},g=a?.version||"0.12.3",h=`QwenCode/${g} (${b}; ${c})`;return{"User-Agent":h,"X-DashScope-UserAgent":h,"X-Stainless-Arch":f,"X-Stainless-Os":d,"X-Stainless-Lang":"js","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":a?.runtimeVersion||process.version,"X-Stainless-Package-Version":a?.packageVersion||"5.11.0"}}},kimi:{id:"kimi",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","X-Msh-Version","X-Msh-Device-Model"],source:{capture:"kimi-code"},headers:function(){return{"X-Msh-Version":"2.1.2","X-Msh-Device-Model":`${(0,e.ol)()} ${(0,e.LY)()}`}}},"grok-cli":{id:"grok-cli",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent"],source:{capture:"grok-cli"},headers:function(a){return{"User-Agent":`grok-cli/${a?.version||"1.0.0"}`}}},"grok-build":{id:"grok-build",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","Accept","User-Agent","x-grok-client-identifier","x-grok-client-version"],source:{capture:"@xai-official/grok 0.2.99"},headers:function(){let a;return{"User-Agent":`grok-shell/${g.uG} (${(0,e.ol)()||"linux"}; ${"x64"===(a=(0,e.LY)())?"x86_64":"arm64"===a?"aarch64":"ia32"===a?"x86":a||"x86_64"})`,"x-grok-client-identifier":g.rK,"x-grok-client-version":g.uG}}},"muse-code":{id:"muse-code",tls:"node",alpn:["h2","http/1.1"],headerOrder:["Authorization","Content-Type","User-Agent","Accept"],source:{capture:"muse-code"},headers:a=>({"User-Agent":`muse-code/${a?.version||"1.0.2"}`})}};function k(a){return j[a]||j["openai-node"]}let l=new Set(["openai","openai-responses","openai-compat"]),m=new Set(["claude"]);function n(a,b={}){if("string"==typeof a&&a)return a;if(a&&"object"==typeof a&&a.profile)return a.profile;let c=b.format||"",d=b.provider||"";return"claude"===c||m.has(c)||"claude"===d||d.startsWith("anthropic-compatible")?"claude-cli":"codex"===d?"codex-cli":"gemini-cli"===d?"gemini-cli":"antigravity"===d?"antigravity":"github"===d?"copilot":"qwen"===d?"qwen":"cline"===d||"clinepass"===d?"cline":"kimi"===d||"kimi-coding"===d?"kimi":"xai"===d?"grok-cli":"grok-cli"===d?"grok-build":"grok-web"===d?"chrome":"cursor"===d||"cursor"===c?"cursor":"muse"===d||"meta"===d?"muse-code":(l.has(c),"openai-node")}let o=new Set(["user-agent","anthropic-beta","x-stainless-package-version","x-stainless-runtime-version","x-stainless-os","x-stainless-arch"]),p=new Set(["x-stainless-helper-method","x-stainless-retry-count"]);function q(a,b,c={}){var d;let e,f=k(b),g=(d=c.snapshot,"function"==typeof(e=k(b)).headers?e.headers(d):{...e.headers||{}});!0===c.stream&&"claude-cli"===b?g["X-Stainless-Helper-Method"]="stream":"claude-cli"===b&&delete g["X-Stainless-Helper-Method"],"number"==typeof c.retryCount&&"claude-cli"===b&&(g["X-Stainless-Retry-Count"]=String(c.retryCount));let h=new Map;for(let[b,c]of Object.entries(a||{})){let a=b.toLowerCase();("authorization"===a||"x-api-key"===a||"api-key"===a)&&h.set(a,[b,c])}let i=!0===c.preserveUserAgent&&"claude-cli"!==b&&Object.entries(a||{}).find(([a])=>"user-agent"===a.toLowerCase())||null,j=r(a,g),l=c.overlay&&"object"==typeof c.overlay?"claude-cli"===b?function(a,b){let c,d,e={...a||{}},f=0!==(d=Object.values(c=Object.fromEntries([...o].map(a=>{let b;return[a,(b=Object.keys(e||{}).find(b=>b.toLowerCase()===a))?e[b]:void 0]}))).filter(a=>null!=a).length)&&d===o.size&&String(c["user-agent"]).match(/claude-(?:cli|code)\/(\d+\.\d+\.\d+)/i)?.[1]===b?.version;for(let a of Object.keys(e)){let b=a.toLowerCase();(p.has(b)||!f&&o.has(b))&&delete e[a]}return e}(c.overlay,c.snapshot):{...c.overlay}:{};for(let a of Object.keys(l))h.has(a.toLowerCase())&&delete l[a];let m=r(j,l);if(i&&!Object.keys(l).some(a=>"user-agent"===a.toLowerCase())){for(let a of Object.keys(m))"user-agent"===a.toLowerCase()&&delete m[a];m[i[0]]=i[1]}if("claude-cli"===b){if(!0===c.stream)m["X-Stainless-Helper-Method"]="stream";else for(let a of Object.keys(m))"x-stainless-helper-method"===a.toLowerCase()&&delete m[a];if("number"==typeof c.retryCount){for(let a of Object.keys(m))"x-stainless-retry-count"===a.toLowerCase()&&delete m[a];m["X-Stainless-Retry-Count"]=String(c.retryCount)}}for(let[a,[b,c]]of h){for(let b of Object.keys(m))b.toLowerCase()===a&&delete m[b];m[b]=c}return f?.headerOrder?s(m,f.headerOrder):m}function r(...a){let b={};for(let c of a)for(let[a,d]of Object.entries(c||{})){let c=Object.keys(b).find(b=>b.toLowerCase()===a.toLowerCase());c&&delete b[c],b[a]=d}return b}function s(a,b){if(!b||!b.length)return{...a};let c=new Set,d={},e=new Map;for(let[b,c]of Object.entries(a))e.set(b.toLowerCase(),[b,c]);for(let a of b){let b=e.get(a.toLowerCase());b&&(d[b[0]]=b[1],c.add(a.toLowerCase()))}for(let[b,e]of Object.entries(a))c.has(b.toLowerCase())||(d[b]=e);return d}},59970:(a,b,c)=>{"use strict";let d,e=Symbol.for("undici.globalDispatcher.2"),f=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:g}=c(61448),h=c(37417),i=c(74399);function j(a){if(!a||"function"!=typeof a.dispatch)throw new g("Argument agent must implement Agent");try{Object.defineProperty(globalThis,e,{value:a,writable:!0,enumerable:!1,configurable:!1})}catch(b){if(b instanceof TypeError){d=a;return}throw b}try{let b=a instanceof i?a:new i(a);Object.defineProperty(globalThis,f,{value:b,writable:!0,enumerable:!1,configurable:!1})}catch(a){if(!(a instanceof TypeError))throw a}}function k(){return globalThis[e]??d}void 0===k()&&j(new h),a.exports={setGlobalDispatcher:j,getGlobalDispatcher:k,installedExports:["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"]}},60823:(a,b,c)=>{"use strict";let d=c(34589);a.exports=class{#aQ;#bF=!1;#bG=!1;#bH=!1;constructor(a){if("object"!=typeof a||null===a)throw TypeError("handler must be an object");this.#aQ=a}onRequestStart(...a){this.#aQ.onRequestStart?.(...a)}onRequestUpgrade(...a){return d(!this.#bF),d(!this.#bG),this.#aQ.onRequestUpgrade?.(...a)}onResponseStart(...a){return d(!this.#bF),d(!this.#bG),d(!this.#bH),this.#bH=!0,this.#aQ.onResponseStart?.(...a)}onResponseData(...a){return d(!this.#bF),d(!this.#bG),this.#aQ.onResponseData?.(...a)}onResponseEnd(...a){return d(!this.#bF),d(!this.#bG),this.#bF=!0,this.#aQ.onResponseEnd?.(...a)}onResponseError(...a){return this.#bG=!0,this.#aQ.onResponseError?.(...a)}onBodySent(...a){return this.#aQ.onBodySent?.(...a)}onRequestSent(...a){return this.#aQ.onRequestSent?.(...a)}}},61330:(a,b,c)=>{"use strict";let{BalancedPoolMissingUpstreamError:d,InvalidArgumentError:e}=c(61448),{PoolBase:f,kClients:g,kNeedDrain:h,kAddClient:i,kRemoveClient:j,kGetDispatcher:k}=c(39065),l=c(35689),{kOriginless:m,kUrl:n}=c(49176),o=c(84285),p=Symbol("factory"),q=Symbol("options"),r=Symbol("kGreatestCommonDivisor"),s=Symbol("kCurrentWeight"),t=Symbol("kIndex"),u=Symbol("kWeight"),v=Symbol("kMaxWeightPerServer"),w=Symbol("kErrorPenalty");function x(a,b){return new l(a,b)}class y extends f{constructor(a=[],{factory:b=x,connect:c,tls:d,...f}={}){if("function"!=typeof b)throw new e("factory must be a function.");for(const e of(super(f),this[m]=!0,c&&"function"!=typeof c&&(c={...c}),d&&"function"!=typeof d&&(d={...d}),this[q]={...o.deepClone(f),connect:c,tls:d},this[t]=-1,this[s]=0,this[v]=this[q].maxWeightPerServer||100,this[w]=this[q].errorPenalty||15,Array.isArray(a)||(a=[a]),this[p]=b,a))this.addUpstream(e);this._updateBalancedPoolStats()}addUpstream(a){let b=o.parseOrigin(a).origin;if(this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed))return this;let c=this[p](b,this[q]);for(let a of(this[i](c),c.on("connect",()=>{c[u]=Math.min(this[v],c[u]+this[w])}),c.on("connectionError",()=>{c[u]=Math.max(1,c[u]-this[w]),this._updateBalancedPoolStats()}),c.on("disconnect",(...a)=>{let b=a[2];b&&"UND_ERR_SOCKET"===b.code&&(c[u]=Math.max(1,c[u]-this[w]),this._updateBalancedPoolStats())}),this[g]))a[u]=this[v];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let a=0;for(let b=0;b<this[g].length;b++)a=function(a,b){if(0===a)return b;for(;0!==b;){let c=b;b=a%b,a=c}return a}(this[g][b][u],a);this[r]=a}removeUpstream(a){let b=o.parseOrigin(a).origin,c=this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed);return c&&this[j](c),this}getUpstream(a){let b=o.parseOrigin(a).origin;return this[g].find(a=>a[n].origin===b&&!0!==a.closed&&!0!==a.destroyed)}get upstreams(){return this[g].filter(a=>!0!==a.closed&&!0!==a.destroyed).map(a=>a[n].origin)}[k](){if(0===this[g].length)throw new d;let a=0,b=-1;for(;a++<this[g].length;){this[t]=(this[t]+1)%this[g].length;let a=this[g][this[t]];if((0===this[t]&&(this[s]=this[s]-this[r],this[s]<=0&&(this[s]=this[v])),!a[h]&&!0!==a.closed&&!0!==a.destroyed)&&((-1===b||a[u]>this[g][b][u])&&(b=this[t]),a[u]>=this[s]))return a}if(-1!==b)return this[s]=this[g][b][u],this[t]=b,this[g][b]}}a.exports=y},61448:a=>{"use strict";let b=Symbol.for("undici.error.UND_ERR");class c extends Error{constructor(a,b){super(a,b),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](a){return a&&!0===a[b]}get[b](){return!0}}let d=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT");class e extends c{constructor(a){super(a),this.name="ConnectTimeoutError",this.message=a||"Connect Timeout Error",this.code="UND_ERR_CONNECT_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[d]}get[d](){return!0}}let f=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT");class g extends c{constructor(a){super(a),this.name="HeadersTimeoutError",this.message=a||"Headers Timeout Error",this.code="UND_ERR_HEADERS_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[f]}get[f](){return!0}}let h=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW");class i extends c{constructor(a){super(a),this.name="HeadersOverflowError",this.message=a||"Headers Overflow Error",this.code="UND_ERR_HEADERS_OVERFLOW"}static[Symbol.hasInstance](a){return a&&!0===a[h]}get[h](){return!0}}let j=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT");class k extends c{constructor(a){super(a),this.name="BodyTimeoutError",this.message=a||"Body Timeout Error",this.code="UND_ERR_BODY_TIMEOUT"}static[Symbol.hasInstance](a){return a&&!0===a[j]}get[j](){return!0}}let l=Symbol.for("undici.error.UND_ERR_INVALID_ARG");class m extends c{constructor(a){super(a),this.name="InvalidArgumentError",this.message=a||"Invalid Argument Error",this.code="UND_ERR_INVALID_ARG"}static[Symbol.hasInstance](a){return a&&!0===a[l]}get[l](){return!0}}let n=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE");class o extends c{constructor(a){super(a),this.name="InvalidReturnValueError",this.message=a||"Invalid Return Value Error",this.code="UND_ERR_INVALID_RETURN_VALUE"}static[Symbol.hasInstance](a){return a&&!0===a[n]}get[n](){return!0}}let p=Symbol.for("undici.error.UND_ERR_ABORT");class q extends c{constructor(a){super(a),this.name="AbortError",this.message=a||"The operation was aborted",this.code="UND_ERR_ABORT"}static[Symbol.hasInstance](a){return a&&!0===a[p]}get[p](){return!0}}let r=Symbol.for("undici.error.UND_ERR_ABORTED");class s extends q{constructor(a){super(a),this.name="AbortError",this.message=a||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](a){return a&&!0===a[r]}get[r](){return!0}}let t=Symbol.for("undici.error.UND_ERR_INFO");class u extends c{constructor(a,b){super(a,b),this.name="InformationalError",this.message=a||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](a){return a&&!0===a[t]}get[t](){return!0}}let v=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH");class w extends c{constructor(a){super(a),this.name="RequestContentLengthMismatchError",this.message=a||"Request body length does not match content-length header",this.code="UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](a){return a&&!0===a[v]}get[v](){return!0}}let x=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH");class y extends c{constructor(a){super(a),this.name="ResponseContentLengthMismatchError",this.message=a||"Response body length does not match content-length header",this.code="UND_ERR_RES_CONTENT_LENGTH_MISMATCH"}static[Symbol.hasInstance](a){return a&&!0===a[x]}get[x](){return!0}}let z=Symbol.for("undici.error.UND_ERR_DESTROYED");class A extends c{constructor(a){super(a),this.name="ClientDestroyedError",this.message=a||"The client is destroyed",this.code="UND_ERR_DESTROYED"}static[Symbol.hasInstance](a){return a&&!0===a[z]}get[z](){return!0}}let B=Symbol.for("undici.error.UND_ERR_CLOSED");class C extends c{constructor(a){super(a),this.name="ClientClosedError",this.message=a||"The client is closed",this.code="UND_ERR_CLOSED"}static[Symbol.hasInstance](a){return a&&!0===a[B]}get[B](){return!0}}let D=Symbol.for("undici.error.UND_ERR_SOCKET");class E extends c{constructor(a,b){super(a),this.name="SocketError",this.message=a||"Socket error",this.code="UND_ERR_SOCKET",this.socket=b}static[Symbol.hasInstance](a){return a&&!0===a[D]}get[D](){return!0}}let F=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED");class G extends c{constructor(a){super(a),this.name="NotSupportedError",this.message=a||"Not supported error",this.code="UND_ERR_NOT_SUPPORTED"}static[Symbol.hasInstance](a){return a&&!0===a[F]}get[F](){return!0}}let H=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM");class I extends c{constructor(a){super(a),this.name="MissingUpstreamError",this.message=a||"No upstream has been added to the BalancedPool",this.code="UND_ERR_BPL_MISSING_UPSTREAM"}static[Symbol.hasInstance](a){return a&&!0===a[H]}get[H](){return!0}}let J=Symbol.for("undici.error.UND_ERR_HTTP_PARSER");class K extends Error{constructor(a,b,c){super(a),this.name="HTTPParserError",this.code=b?`HPE_${b}`:void 0,this.data=c?c.toString():void 0}static[Symbol.hasInstance](a){return a&&!0===a[J]}get[J](){return!0}}let L=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE");class M extends c{constructor(a){super(a),this.name="ResponseExceededMaxSizeError",this.message=a||"Response content exceeded max size",this.code="UND_ERR_RES_EXCEEDED_MAX_SIZE"}static[Symbol.hasInstance](a){return a&&!0===a[L]}get[L](){return!0}}let N=Symbol.for("undici.error.UND_ERR_REQ_RETRY");class O extends c{constructor(a,b,{headers:c,data:d}){super(a),this.name="RequestRetryError",this.message=a||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=b,this.data=d,this.headers=c}static[Symbol.hasInstance](a){return a&&!0===a[N]}get[N](){return!0}}let P=Symbol.for("undici.error.UND_ERR_RESPONSE");class Q extends c{constructor(a,b,{headers:c,body:d}){super(a),this.name="ResponseError",this.message=a||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=b,this.body=d,this.headers=c}static[Symbol.hasInstance](a){return a&&!0===a[P]}get[P](){return!0}}let R=Symbol.for("undici.error.UND_ERR_PRX_TLS");class S extends c{constructor(a,b,c={}){super(b,{cause:a,...c}),this.name="SecureProxyConnectionError",this.message=b||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=a}static[Symbol.hasInstance](a){return a&&!0===a[R]}get[R](){return!0}}let T=Symbol.for("undici.error.UND_ERR_PRX_CONN");class U extends c{constructor(a,b,c={}){super(b,{cause:a,...c}),this.name="ProxyConnectionError",this.message=b||"Proxy Connection failed",this.code="UND_ERR_PRX_CONN",this.cause=a}static[Symbol.hasInstance](a){return a&&!0===a[T]}get[T](){return!0}}let V=Symbol.for("undici.error.UND_ERR_MAX_ORIGINS_REACHED");class W extends c{constructor(a){super(a),this.name="MaxOriginsReachedError",this.message=a||"Maximum allowed origins reached",this.code="UND_ERR_MAX_ORIGINS_REACHED"}static[Symbol.hasInstance](a){return a&&!0===a[V]}get[V](){return!0}}class X extends c{constructor(a,b){super(a),this.name="Socks5ProxyError",this.message=a||"SOCKS5 proxy error",this.code=b||"UND_ERR_SOCKS5"}}let Y=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED");class Z extends c{constructor(a){super(a),this.name="MessageSizeExceededError",this.message=a||"Max decompressed message size exceeded",this.code="UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"}static[Symbol.hasInstance](a){return a&&!0===a[Y]}get[Y](){return!0}}a.exports={AbortError:q,HTTPParserError:K,UndiciError:c,HeadersTimeoutError:g,HeadersOverflowError:i,BodyTimeoutError:k,RequestContentLengthMismatchError:w,ConnectTimeoutError:e,InvalidArgumentError:m,InvalidReturnValueError:o,RequestAbortedError:s,ClientDestroyedError:A,ClientClosedError:C,InformationalError:u,SocketError:E,NotSupportedError:G,ResponseContentLengthMismatchError:y,BalancedPoolMissingUpstreamError:I,ResponseExceededMaxSizeError:M,RequestRetryError:O,ResponseError:Q,SecureProxyConnectionError:S,ProxyConnectionError:U,MaxOriginsReachedError:W,Socks5ProxyError:X,MessageSizeExceededError:Z}},62026:a=>{"use strict";a.exports={uid:"258EAFA5-E914-47DA-95CA-C5AB0DC85B11",sentCloseFrameState:{SENT:1,RECEIVED:2},staticPropertyDescriptors:{enumerable:!0,writable:!1,configurable:!1},states:{CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},opcodes:{CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},maxUnsigned16Bit:65535,parserStates:{INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},emptyBuffer:Buffer.allocUnsafe(0),sendHints:{text:1,typedArray:2,arrayBuffer:3,blob:4}}},62457:(a,b,c)=>{"use strict";c.d(b,{Ut:()=>e,a_:()=>f,bC:()=>d,lW:()=>g,zh:()=>h});let d={STOP:"stop",LENGTH:"length",TOOL_CALLS:"tool_calls",CONTENT_FILTER:"content_filter",ERROR:"error"},e={END_TURN:"end_turn",MAX_TOKENS:"max_tokens",TOOL_USE:"tool_use",STOP_SEQUENCE:"stop_sequence"},f={STOP:"STOP",MAX_TOKENS:"MAX_TOKENS",SAFETY:"SAFETY",RECITATION:"RECITATION",BLOCKLIST:"BLOCKLIST",PROHIBITED_CONTENT:"PROHIBITED_CONTENT",SPII:"SPII",IMAGE_SAFETY:"IMAGE_SAFETY",MALFORMED_FUNCTION_CALL:"MALFORMED_FUNCTION_CALL",UNEXPECTED_TOOL_CALL:"UNEXPECTED_TOOL_CALL",FINISH_REASON_UNSPECIFIED:"FINISH_REASON_UNSPECIFIED",OTHER:"OTHER",LANGUAGE:"LANGUAGE",NO_IMAGE:"NO_IMAGE"},g=new Set([f.MALFORMED_FUNCTION_CALL,f.UNEXPECTED_TOOL_CALL,f.FINISH_REASON_UNSPECIFIED,f.OTHER,f.LANGUAGE,f.NO_IMAGE]),h=new Set([f.SAFETY,f.RECITATION,f.BLOCKLIST,f.SPII,f.IMAGE_SAFETY,f.PROHIBITED_CONTENT])},62571:(a,b,c)=>{"use strict";let d=c(53053),e=c(57975),f=e.debuglog("undici"),g=e.debuglog("fetch"),h=e.debuglog("websocket"),i={beforeConnect:d.channel("undici:client:beforeConnect"),connected:d.channel("undici:client:connected"),connectError:d.channel("undici:client:connectError"),sendHeaders:d.channel("undici:client:sendHeaders"),create:d.channel("undici:request:create"),bodySent:d.channel("undici:request:bodySent"),bodyChunkSent:d.channel("undici:request:bodyChunkSent"),bodyChunkReceived:d.channel("undici:request:bodyChunkReceived"),headers:d.channel("undici:request:headers"),trailers:d.channel("undici:request:trailers"),error:d.channel("undici:request:error"),open:d.channel("undici:websocket:open"),close:d.channel("undici:websocket:close"),socketError:d.channel("undici:websocket:socket_error"),ping:d.channel("undici:websocket:ping"),pong:d.channel("undici:websocket:pong"),proxyConnected:d.channel("undici:proxy:connected")},j=!1;function k(a=f){if(!j){if(i.beforeConnect.hasSubscribers||i.connected.hasSubscribers||i.connectError.hasSubscribers||i.sendHeaders.hasSubscribers){j=!0;return}j=!0,d.subscribe("undici:client:beforeConnect",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f}}=b;a("connecting to %s%s using %s%s",f,e?`:${e}`:"",d,c)}),d.subscribe("undici:client:connected",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f}}=b;a("connected to %s%s using %s%s",f,e?`:${e}`:"",d,c)}),d.subscribe("undici:client:connectError",b=>{let{connectParams:{version:c,protocol:d,port:e,host:f},error:g}=b;a("connection to %s%s using %s%s errored - %s",f,e?`:${e}`:"",d,c,g.message)}),d.subscribe("undici:client:sendHeaders",b=>{let{request:{method:c,path:d,origin:e}}=b;a("sending request to %s %s%s",c,e,d)})}}let l=!1,m=!1;(f.enabled||g.enabled)&&(k(g.enabled?g:f),function(a=f){if(!l){if(i.headers.hasSubscribers||i.trailers.hasSubscribers||i.error.hasSubscribers){l=!0;return}l=!0,d.subscribe("undici:request:headers",b=>{let{request:{method:c,path:d,origin:e},response:{statusCode:f}}=b;a("received response to %s %s%s - HTTP %d",c,e,d,f)}),d.subscribe("undici:request:trailers",b=>{let{request:{method:c,path:d,origin:e}}=b;a("trailers received from %s %s%s",c,e,d)}),d.subscribe("undici:request:error",b=>{let{request:{method:c,path:d,origin:e},error:f}=b;a("request to %s %s%s errored - %s",c,e,d,f.message)})}}(g.enabled?g:f)),h.enabled&&(k(f.enabled?f:h),function(a=h){if(!m){if(i.open.hasSubscribers||i.close.hasSubscribers||i.socketError.hasSubscribers||i.ping.hasSubscribers||i.pong.hasSubscribers){m=!0;return}m=!0,d.subscribe("undici:websocket:open",b=>{if(null!=b.address){let{address:c,port:d}=b.address;a("connection opened %s%s",c,d?`:${d}`:"")}else a("connection opened")}),d.subscribe("undici:websocket:close",b=>{let{websocket:c,code:d,reason:e}=b;a("closed connection to %s - %s %s",c.url,d,e)}),d.subscribe("undici:websocket:socket_error",b=>{a("connection errored - %s",b.message)}),d.subscribe("undici:websocket:ping",b=>{a("ping received")}),d.subscribe("undici:websocket:pong",b=>{a("pong received")})}}(h)),a.exports={channels:i}},62692:(a,b,c)=>{"use strict";c.d(b,{B:()=>m});var d=c(22256),e=c(38421),f=c(43835),g=c(27137),h=c(96997),i=c(19016),j=c(49471),k=c(85513),l=c(54383);class m extends d.Hv{constructor(){super("kiro",e.xq.kiro)}buildHeaders(a,b=!0){let c={...this.config.headers,"Amz-Sdk-Request":"attempt=1; max=3","Amz-Sdk-Invocation-Id":(0,g.A)()},d=a?.providerSpecificData?.authMethod,e="api_key"===d,f=a?.apiKey||(e?a?.accessToken:null);return e&&f?(c.Authorization=`Bearer ${f}`,c.tokentype="API_KEY"):a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`,"external_idp"===d&&(c.TokenType="EXTERNAL_IDP")),c}getOrderedBaseUrls(a){let b=this.getBaseUrls(),c=a?.providerSpecificData?.authMethod;if("api_key"!==c&&"external_idp"!==c&&"idc"!==c)return b;let d=(0,l.R)(a?.providerSpecificData?.profileArn),e=d?.region||(0,k.l6)((a?.providerSpecificData?.region||"").trim()),f=b.filter(a=>a.includes("amazonaws.com")),g=b.filter(a=>!a.includes("amazonaws.com"));if(0===f.length||"us-east-1"===e)return f.length>0?[...f,...g]:b;let h=f.find(a=>a.includes("://q."));if(!h)return[...f,...g];let i=e.startsWith("us-gov-")?`q-fips.${e}.amazonaws.com`:`q.${e}.amazonaws.com`;return[h.replace(/q\.[a-z0-9-]+\.amazonaws\.com/,i),...f.filter(a=>a!==h),...g]}buildUrl(a,b,c=0,d=null){let e=this.getOrderedBaseUrls(d);return e[c]||e[0]||this.config.baseUrl}transformRequest(a,b,c,d){return b}async execute(a){let b=await super.execute(a);return b?.response?.ok&&(b.response=this.transformEventStreamToSSE(b.response,a.model)),b}transformEventStreamToSSE(a,b){let c=new Uint8Array(0),d=0,e=`chatcmpl-${Date.now()}`,g=Math.floor(Date.now()/1e3),h=(0,f.$D)(b).upstream,k=(0,j.nl)("kiro",h).contextWindow||2e5,l={endDetected:!1,finishEmitted:!1,upstreamError:null,hasToolCalls:!1,hasReasoningContent:!1,reasoningChunkCount:0,toolCallIndex:0,seenToolIds:new Map,inThinking:!1},m=new TransformStream({async transform(a,f){let h=d,i=new Uint8Array(c.length+a.length);i.set(c),i.set(a,c.length),c=i;let j=0;for(;c.length>=16&&j<1e3;){j++;let a=new DataView(c.buffer,c.byteOffset).getUint32(0,!1);if(a<16||a>c.length||c.length<a)break;let h=c.slice(0,a);c=c.slice(a);let i=function(a){try{let b=new DataView(a.buffer,a.byteOffset).getUint32(4,!1),c={},d=12,e=12+b;for(;d<e&&d<a.length;){let b=a[d];if(++d+b>a.length)break;let e=new TextDecoder().decode(a.slice(d,d+b)),f=a[d+=b];if(d++,7===f){let b=a[d]<<8|a[d+1];if((d+=2)+b>a.length)break;let f=new TextDecoder().decode(a.slice(d,d+b));d+=b,c[e]=f}else break}let f=12+b,g=a.length-4,h=null;if(g>f){let b=new TextDecoder().decode(a.slice(f,g));if(!b||!b.trim())return{headers:c,payload:null};try{h=JSON.parse(b)}catch(a){console.warn(`[Kiro] Failed to parse payload: ${a.message} | payload: ${b.substring(0,100)}`),h={raw:b}}}return{headers:c,payload:h}}catch{return null}}(h);if(!i)continue;let m=i.headers[":event-type"]||"",n=i.headers[":exception-type"]||"";if(n||"exception"===i.headers[":message-type"]){let a=i.payload&&"object"==typeof i.payload?i.payload:{};l.upstreamError=String(a.message||a.Message||("string"==typeof i.payload?i.payload:"")||n||"Kiro upstream exception"),l.finishEmitted=!0;let c={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{},finish_reason:null}],error:{message:l.upstreamError,type:"server_error",code:n||"upstream_exception"}};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(c)}
|
|
369
369
|
|
|
370
370
|
`));continue}if(l.totalContentLength||(l.totalContentLength=0),l.contextUsagePercentage||(l.contextUsagePercentage=0),"assistantResponseEvent"===m&&i.payload?.content){let a=i.payload.content;if(l.inThinking)if(a.includes("</thinking>")){l.inThinking=!1;let b=a.split("</thinking>").slice(1).join("</thinking>");a=b.startsWith("\n")?b.substring(1):b}else a="";else if(a.includes("<thinking>"))if(l.inThinking=!0,a.includes("</thinking>")){l.inThinking=!1;let b=a.split("<thinking>")[0],c=a.split("</thinking>").slice(1).join("</thinking>");a=b+(c.startsWith("\n")?c.substring(1):c)}else a=a.split("<thinking>")[0];if(!a&&l.hasReasoningContent)continue;l.totalContentLength+=a.length;let c={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:0===d?{role:"assistant",content:a}:{content:a},finish_reason:null}]};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(c)}
|
|
371
371
|
|
|
@@ -387,7 +387,7 @@ ${a.format(b)}`.trim():`${b.length} interceptors are pending:
|
|
|
387
387
|
|
|
388
388
|
${a.format(b)}`.trim())}}a.exports=G},65737:(a,b,c)=>{var d=c(45654);c(45518),c(63070),c(88819),c(1277),c(15529),c(36105),c(49345),c(87981),c(10401),c(33889);var e=d.asn1,f=a.exports=d.pki=d.pki||{},g=f.oids,h={};h.CN=g.commonName,h.commonName="CN",h.C=g.countryName,h.countryName="C",h.L=g.localityName,h.localityName="L",h.ST=g.stateOrProvinceName,h.stateOrProvinceName="ST",h.O=g.organizationName,h.organizationName="O",h.OU=g.organizationalUnitName,h.organizationalUnitName="OU",h.E=g.emailAddress,h.emailAddress="E";var i=d.pki.rsa.publicKeyValidator,j={name:"Certificate",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"tbsCertificate",value:[{name:"Certificate.TBSCertificate.version",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.version.integer",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certVersion"}]},{name:"Certificate.TBSCertificate.serialNumber",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certSerialNumber"},{name:"Certificate.TBSCertificate.signature",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.signature.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certinfoSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"certinfoSignatureParams"}]},{name:"Certificate.TBSCertificate.issuer",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certIssuer"},{name:"Certificate.TBSCertificate.validity",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.TBSCertificate.validity.notBefore (utc)",tagClass:e.Class.UNIVERSAL,type:e.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity1UTCTime"},{name:"Certificate.TBSCertificate.validity.notBefore (generalized)",tagClass:e.Class.UNIVERSAL,type:e.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity2GeneralizedTime"},{name:"Certificate.TBSCertificate.validity.notAfter (utc)",tagClass:e.Class.UNIVERSAL,type:e.Type.UTCTIME,constructed:!1,optional:!0,capture:"certValidity3UTCTime"},{name:"Certificate.TBSCertificate.validity.notAfter (generalized)",tagClass:e.Class.UNIVERSAL,type:e.Type.GENERALIZEDTIME,constructed:!1,optional:!0,capture:"certValidity4GeneralizedTime"}]},{name:"Certificate.TBSCertificate.subject",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certSubject"},i,{name:"Certificate.TBSCertificate.issuerUniqueID",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.issuerUniqueID.id",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certIssuerUniqueId"}]},{name:"Certificate.TBSCertificate.subjectUniqueID",tagClass:e.Class.CONTEXT_SPECIFIC,type:2,constructed:!0,optional:!0,value:[{name:"Certificate.TBSCertificate.subjectUniqueID.id",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSubjectUniqueId"}]},{name:"Certificate.TBSCertificate.extensions",tagClass:e.Class.CONTEXT_SPECIFIC,type:3,constructed:!0,captureAsn1:"certExtensions",optional:!0}]},{name:"Certificate.signatureAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"Certificate.signatureAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"certSignatureOid"},{name:"Certificate.TBSCertificate.signature.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"certSignatureParams"}]},{name:"Certificate.signatureValue",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"certSignature"}]},k={name:"rsapss",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.hashAlgorithm",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier",tagClass:e.Class.UNIVERSAL,type:e.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.hashAlgorithm.AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"hashOid"}]}]},{name:"rsapss.maskGenAlgorithm",tagClass:e.Class.CONTEXT_SPECIFIC,type:1,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier",tagClass:e.Class.UNIVERSAL,type:e.Class.SEQUENCE,constructed:!0,optional:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"maskGenOid"},{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"rsapss.maskGenAlgorithm.AlgorithmIdentifier.params.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"maskGenHashOid"}]}]}]},{name:"rsapss.saltLength",tagClass:e.Class.CONTEXT_SPECIFIC,type:2,optional:!0,value:[{name:"rsapss.saltLength.saltLength",tagClass:e.Class.UNIVERSAL,type:e.Class.INTEGER,constructed:!1,capture:"saltLength"}]},{name:"rsapss.trailerField",tagClass:e.Class.CONTEXT_SPECIFIC,type:3,optional:!0,value:[{name:"rsapss.trailer.trailer",tagClass:e.Class.UNIVERSAL,type:e.Class.INTEGER,constructed:!1,capture:"trailer"}]}]},l={name:"CertificationRequestInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfo",value:[{name:"CertificationRequestInfo.integer",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"certificationRequestInfoVersion"},{name:"CertificationRequestInfo.subject",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"certificationRequestInfoSubject"},i,{name:"CertificationRequestInfo.attributes",tagClass:e.Class.CONTEXT_SPECIFIC,type:0,constructed:!0,optional:!0,capture:"certificationRequestInfoAttributes",value:[{name:"CertificationRequestInfo.attributes",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequestInfo.attributes.type",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1},{name:"CertificationRequestInfo.attributes.value",tagClass:e.Class.UNIVERSAL,type:e.Type.SET,constructed:!0}]}]}]},m={name:"CertificationRequest",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"csr",value:[l,{name:"CertificationRequest.signatureAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"CertificationRequest.signatureAlgorithm.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"csrSignatureOid"},{name:"CertificationRequest.signatureAlgorithm.parameters",tagClass:e.Class.UNIVERSAL,optional:!0,captureAsn1:"csrSignatureParams"}]},{name:"CertificationRequest.signature",tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,captureBitStringValue:"csrSignature"}]};function n(a,b){"string"==typeof b&&(b={shortName:b});for(var c,d=null,e=0;null===d&&e<a.attributes.length;++e)c=a.attributes[e],b.type&&b.type===c.type||b.name&&b.name===c.name?d=c:b.shortName&&b.shortName===c.shortName&&(d=c);return d}f.RDNAttributesAsArray=function(a,b){for(var c,d,f,i=[],j=0;j<a.value.length;++j){c=a.value[j];for(var k=0;k<c.value.length;++k)f={},d=c.value[k],f.type=e.derToOid(d.value[0].value),f.value=d.value[1].value,f.valueTagClass=d.value[1].type,f.type in g&&(f.name=g[f.type],f.name in h&&(f.shortName=h[f.name])),b&&(b.update(f.type),b.update(f.value)),i.push(f)}return i},f.CRIAttributesAsArray=function(a){for(var b=[],c=0;c<a.length;++c)for(var d=a[c],i=e.derToOid(d.value[0].value),j=d.value[1].value,k=0;k<j.length;++k){var l={};if(l.type=i,l.value=j[k].value,l.valueTagClass=j[k].type,l.type in g&&(l.name=g[l.type],l.name in h&&(l.shortName=h[l.name])),l.type===g.extensionRequest){l.extensions=[];for(var m=0;m<l.value.length;++m)l.extensions.push(f.certificateExtensionFromAsn1(l.value[m]))}b.push(l)}return b};var o=function(a,b,c){var d={};if(a!==g["RSASSA-PSS"])return d;c&&(d={hash:{algorithmOid:g.sha1},mgf:{algorithmOid:g.mgf1,hash:{algorithmOid:g.sha1}},saltLength:20});var f={},h=[];if(!e.validate(b,k,f,h)){var i=Error("Cannot read RSASSA-PSS parameter block.");throw i.errors=h,i}return void 0!==f.hashOid&&(d.hash=d.hash||{},d.hash.algorithmOid=e.derToOid(f.hashOid)),void 0!==f.maskGenOid&&(d.mgf=d.mgf||{},d.mgf.algorithmOid=e.derToOid(f.maskGenOid),d.mgf.hash=d.mgf.hash||{},d.mgf.hash.algorithmOid=e.derToOid(f.maskGenHashOid)),void 0!==f.saltLength&&(d.saltLength=f.saltLength.charCodeAt(0)),d},p=function(a){switch(g[a.signatureOid]){case"sha1WithRSAEncryption":case"sha1WithRSASignature":return d.md.sha1.create();case"md5WithRSAEncryption":return d.md.md5.create();case"sha256WithRSAEncryption":case"RSASSA-PSS":return d.md.sha256.create();case"sha384WithRSAEncryption":return d.md.sha384.create();case"sha512WithRSAEncryption":return d.md.sha512.create();default:var b=Error("Could not compute "+a.type+" digest. Unknown signature OID.");throw b.signatureOid=a.signatureOid,b}},q=function(a){var b,c,e,f=a.certificate;switch(f.signatureOid){case g.sha1WithRSAEncryption:case g.sha1WithRSASignature:break;case g["RSASSA-PSS"]:if(void 0===(c=g[f.signatureParameters.mgf.hash.algorithmOid])||void 0===d.md[c]){var h=Error("Unsupported MGF hash function.");throw h.oid=f.signatureParameters.mgf.hash.algorithmOid,h.name=c,h}if(void 0===(e=g[f.signatureParameters.mgf.algorithmOid])||void 0===d.mgf[e]){var h=Error("Unsupported MGF function.");throw h.oid=f.signatureParameters.mgf.algorithmOid,h.name=e,h}if(e=d.mgf[e].create(d.md[c].create()),void 0===(c=g[f.signatureParameters.hash.algorithmOid])||void 0===d.md[c]){var h=Error("Unsupported RSASSA-PSS hash function.");throw h.oid=f.signatureParameters.hash.algorithmOid,h.name=c,h}b=d.pss.create(d.md[c].create(),e,f.signatureParameters.saltLength)}return f.publicKey.verify(a.md.digest().getBytes(),a.signature,b)};function r(a){for(var b,c,f=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),g=a.attributes,h=0;h<g.length;++h){var i=(b=g[h]).value,j=e.Type.PRINTABLESTRING;"valueTagClass"in b&&(j=b.valueTagClass)===e.Type.UTF8&&(i=d.util.encodeUtf8(i)),c=e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.type).getBytes()),e.create(e.Class.UNIVERSAL,j,!1,i)])]),f.value.push(c)}return f}function s(a){for(var b,c=0;c<a.length;++c){if(void 0===(b=a[c]).name&&(b.type&&b.type in f.oids?b.name=f.oids[b.type]:b.shortName&&b.shortName in h&&(b.name=f.oids[h[b.shortName]])),void 0===b.type)if(b.name&&b.name in f.oids)b.type=f.oids[b.name];else{var d=Error("Attribute type not specified.");throw d.attribute=b,d}if(void 0===b.shortName&&b.name&&b.name in h&&(b.shortName=h[b.name]),b.type===g.extensionRequest&&(b.valueConstructed=!0,b.valueTagClass=e.Type.SEQUENCE,!b.value&&b.extensions)){b.value=[];for(var i=0;i<b.extensions.length;++i)b.value.push(f.certificateExtensionToAsn1(t(b.extensions[i])))}if(void 0===b.value){var d=Error("Attribute value not specified.");throw d.attribute=b,d}}}function t(a,b){if(b=b||{},void 0===a.name&&a.id&&a.id in f.oids&&(a.name=f.oids[a.id]),void 0===a.id)if(a.name&&a.name in f.oids)a.id=f.oids[a.name];else{var c=Error("Extension ID not specified.");throw c.extension=a,c}if(void 0!==a.value)return a;if("keyUsage"===a.name){var h=0,i=0,j=0;a.digitalSignature&&(i|=128,h=7),a.nonRepudiation&&(i|=64,h=6),a.keyEncipherment&&(i|=32,h=5),a.dataEncipherment&&(i|=16,h=4),a.keyAgreement&&(i|=8,h=3),a.keyCertSign&&(i|=4,h=2),a.cRLSign&&(i|=2,h=1),a.encipherOnly&&(i|=1,h=0),a.decipherOnly&&(j|=128,h=7);var k=String.fromCharCode(h);0!==j?k+=String.fromCharCode(i)+String.fromCharCode(j):0!==i&&(k+=String.fromCharCode(i)),a.value=e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,k)}else if("basicConstraints"===a.name)a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),a.cA&&a.value.value.push(e.create(e.Class.UNIVERSAL,e.Type.BOOLEAN,!1,String.fromCharCode(255))),"pathLenConstraint"in a&&a.value.value.push(e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.pathLenConstraint).getBytes()));else if("extKeyUsage"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);var l=a.value.value;for(var m in a)!0===a[m]&&(m in g?l.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(g[m]).getBytes())):-1!==m.indexOf(".")&&l.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(m).getBytes())))}else if("nsCertType"===a.name){var h=0,i=0;a.client&&(i|=128,h=7),a.server&&(i|=64,h=6),a.email&&(i|=32,h=5),a.objsign&&(i|=16,h=4),a.reserved&&(i|=8,h=3),a.sslCA&&(i|=4,h=2),a.emailCA&&(i|=2,h=1),a.objCA&&(i|=1,h=0);var k=String.fromCharCode(h);0!==i&&(k+=String.fromCharCode(i)),a.value=e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,k)}else if("subjectAltName"===a.name||"issuerAltName"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);for(var n,o=0;o<a.altNames.length;++o){var k=(n=a.altNames[o]).value;if(7===n.type&&n.ip){if(null===(k=d.util.bytesFromIP(n.ip))){var c=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.');throw c.extension=a,c}}else 8===n.type&&(k=n.oid?e.oidToDer(e.oidToDer(n.oid)):e.oidToDer(k));a.value.value.push(e.create(e.Class.CONTEXT_SPECIFIC,n.type,!1,k))}}else if("nsComment"===a.name&&b.cert){if(!/^[\x00-\x7F]*$/.test(a.comment)||a.comment.length<1||a.comment.length>128)throw Error('Invalid "nsComment" content.');a.value=e.create(e.Class.UNIVERSAL,e.Type.IA5STRING,!1,a.comment)}else if("subjectKeyIdentifier"===a.name&&b.cert){var p=b.cert.generateSubjectKeyIdentifier();a.subjectKeyIdentifier=p.toHex(),a.value=e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,p.getBytes())}else if("authorityKeyIdentifier"===a.name&&b.cert){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);var l=a.value.value;if(a.keyIdentifier){var q=!0===a.keyIdentifier?b.cert.generateSubjectKeyIdentifier().getBytes():a.keyIdentifier;l.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!1,q))}if(a.authorityCertIssuer){var s=[e.create(e.Class.CONTEXT_SPECIFIC,4,!0,[r(!0===a.authorityCertIssuer?b.cert.issuer:a.authorityCertIssuer)])];l.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,s))}if(a.serialNumber){var t=d.util.hexToBytes(!0===a.serialNumber?b.cert.serialNumber:a.serialNumber);l.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!1,t))}}else if("cRLDistributionPoints"===a.name){a.value=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);for(var n,l=a.value.value,u=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]),v=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[]),o=0;o<a.altNames.length;++o){var k=(n=a.altNames[o]).value;if(7===n.type&&n.ip){if(null===(k=d.util.bytesFromIP(n.ip))){var c=Error('Extension "ip" value is not a valid IPv4 or IPv6 address.');throw c.extension=a,c}}else 8===n.type&&(k=n.oid?e.oidToDer(e.oidToDer(n.oid)):e.oidToDer(k));v.value.push(e.create(e.Class.CONTEXT_SPECIFIC,n.type,!1,k))}u.value.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[v])),l.push(u)}if(void 0===a.value){var c=Error("Extension value not specified.");throw c.extension=a,c}return a}function u(a,b){if(a!==g["RSASSA-PSS"])return e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"");var c=[];return void 0!==b.hash.algorithmOid&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.hash.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])])),void 0!==b.mgf.algorithmOid&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.mgf.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.mgf.hash.algorithmOid).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])])])),void 0!==b.saltLength&&c.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(b.saltLength).getBytes())])),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,c)}f.certificateFromPem=function(a,b,c){var g=d.pem.decode(a)[0];if("CERTIFICATE"!==g.type&&"X509 CERTIFICATE"!==g.type&&"TRUSTED CERTIFICATE"!==g.type){var h=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');throw h.headerType=g.type,h}if(g.procType&&"ENCRYPTED"===g.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var i=e.fromDer(g.body,c);return f.certificateFromAsn1(i,b)},f.certificateToPem=function(a,b){var c={type:"CERTIFICATE",body:e.toDer(f.certificateToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.publicKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("PUBLIC KEY"!==b.type&&"RSA PUBLIC KEY"!==b.type){var c=Error('Could not convert public key from PEM; PEM header type is not "PUBLIC KEY" or "RSA PUBLIC KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert public key from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.publicKeyFromAsn1(g)},f.publicKeyToPem=function(a,b){var c={type:"PUBLIC KEY",body:e.toDer(f.publicKeyToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.publicKeyToRSAPublicKeyPem=function(a,b){var c={type:"RSA PUBLIC KEY",body:e.toDer(f.publicKeyToRSAPublicKey(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.getPublicKeyFingerprint=function(a,b){var c,g=(b=b||{}).md||d.md.sha1.create();switch(b.type||"RSAPublicKey"){case"RSAPublicKey":c=e.toDer(f.publicKeyToRSAPublicKey(a)).getBytes();break;case"SubjectPublicKeyInfo":c=e.toDer(f.publicKeyToAsn1(a)).getBytes();break;default:throw Error('Unknown fingerprint type "'+b.type+'".')}g.start(),g.update(c);var h=g.digest();if("hex"===b.encoding){var i=h.toHex();return b.delimiter?i.match(/.{2}/g).join(b.delimiter):i}if("binary"===b.encoding)return h.getBytes();if(b.encoding)throw Error('Unknown encoding "'+b.encoding+'".');return h},f.certificationRequestFromPem=function(a,b,c){var g=d.pem.decode(a)[0];if("CERTIFICATE REQUEST"!==g.type){var h=Error('Could not convert certification request from PEM; PEM header type is not "CERTIFICATE REQUEST".');throw h.headerType=g.type,h}if(g.procType&&"ENCRYPTED"===g.procType.type)throw Error("Could not convert certification request from PEM; PEM is encrypted.");var i=e.fromDer(g.body,c);return f.certificationRequestFromAsn1(i,b)},f.certificationRequestToPem=function(a,b){var c={type:"CERTIFICATE REQUEST",body:e.toDer(f.certificationRequestToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.createCertificate=function(){var a={};return a.version=2,a.serialNumber="00",a.signatureOid=null,a.signature=null,a.siginfo={},a.siginfo.algorithmOid=null,a.validity={},a.validity.notBefore=new Date,a.validity.notAfter=new Date,a.issuer={},a.issuer.getField=function(b){return n(a.issuer,b)},a.issuer.addField=function(b){s([b]),a.issuer.attributes.push(b)},a.issuer.attributes=[],a.issuer.hash=null,a.subject={},a.subject.getField=function(b){return n(a.subject,b)},a.subject.addField=function(b){s([b]),a.subject.attributes.push(b)},a.subject.attributes=[],a.subject.hash=null,a.extensions=[],a.publicKey=null,a.md=null,a.setSubject=function(b,c){s(b),a.subject.attributes=b,delete a.subject.uniqueId,c&&(a.subject.uniqueId=c),a.subject.hash=null},a.setIssuer=function(b,c){s(b),a.issuer.attributes=b,delete a.issuer.uniqueId,c&&(a.issuer.uniqueId=c),a.issuer.hash=null},a.setExtensions=function(b){for(var c=0;c<b.length;++c)t(b[c],{cert:a});a.extensions=b},a.getExtension=function(b){"string"==typeof b&&(b={name:b});for(var c,d=null,e=0;null===d&&e<a.extensions.length;++e)c=a.extensions[e],b.id&&c.id===b.id?d=c:b.name&&c.name===b.name&&(d=c);return d},a.sign=function(b,c){a.md=c||d.md.sha1.create();var h=g[a.md.algorithm+"WithRSAEncryption"];if(!h){var i=Error("Could not compute certificate digest. Unknown message digest algorithm OID.");throw i.algorithm=a.md.algorithm,i}a.signatureOid=a.siginfo.algorithmOid=h,a.tbsCertificate=f.getTBSCertificate(a);var j=e.toDer(a.tbsCertificate);a.md.update(j.getBytes()),a.signature=b.sign(a.md)},a.verify=function(b){var c=!1;if(!a.issued(b)){var d=b.issuer,g=a.subject,h=Error("The parent certificate did not issue the given child certificate; the child certificate's issuer does not match the parent's subject.");throw h.expectedIssuer=g.attributes,h.actualIssuer=d.attributes,h}var i=b.md;if(null===i){i=p({signatureOid:b.signatureOid,type:"certificate"});var j=b.tbsCertificate||f.getTBSCertificate(b),k=e.toDer(j);i.update(k.getBytes())}return null!==i&&(c=q({certificate:a,md:i,signature:b.signature})),c},a.isIssuer=function(b){var c=!1,d=a.issuer,e=b.subject;if(d.hash&&e.hash)c=d.hash===e.hash;else if(d.attributes.length===e.attributes.length){c=!0;for(var f,g,h=0;c&&h<d.attributes.length;++h)f=d.attributes[h],g=e.attributes[h],(f.type!==g.type||f.value!==g.value)&&(c=!1)}return c},a.issued=function(b){return b.isIssuer(a)},a.generateSubjectKeyIdentifier=function(){return f.getPublicKeyFingerprint(a.publicKey,{type:"RSAPublicKey"})},a.verifySubjectKeyIdentifier=function(){for(var b=g.subjectKeyIdentifier,c=0;c<a.extensions.length;++c){var e=a.extensions[c];if(e.id===b){var f=a.generateSubjectKeyIdentifier().getBytes();return d.util.hexToBytes(e.subjectKeyIdentifier)===f}}return!1},a},f.certificateFromAsn1=function(a,b){var c={},g=[];if(!e.validate(a,j,c,g)){var h=Error("Cannot read X.509 certificate. ASN.1 object is not an X509v3 Certificate.");throw h.errors=g,h}if(e.derToOid(c.publicKeyOid)!==f.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var i=f.createCertificate();i.version=c.certVersion?c.certVersion.charCodeAt(0):0,i.serialNumber=d.util.createBuffer(c.certSerialNumber).toHex(),i.signatureOid=d.asn1.derToOid(c.certSignatureOid),i.signatureParameters=o(i.signatureOid,c.certSignatureParams,!0),i.siginfo.algorithmOid=d.asn1.derToOid(c.certinfoSignatureOid),i.siginfo.parameters=o(i.siginfo.algorithmOid,c.certinfoSignatureParams,!1),i.signature=c.certSignature;var k=[];if(void 0!==c.certValidity1UTCTime&&k.push(e.utcTimeToDate(c.certValidity1UTCTime)),void 0!==c.certValidity2GeneralizedTime&&k.push(e.generalizedTimeToDate(c.certValidity2GeneralizedTime)),void 0!==c.certValidity3UTCTime&&k.push(e.utcTimeToDate(c.certValidity3UTCTime)),void 0!==c.certValidity4GeneralizedTime&&k.push(e.generalizedTimeToDate(c.certValidity4GeneralizedTime)),k.length>2)throw Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(k.length<2)throw Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");if(i.validity.notBefore=k[0],i.validity.notAfter=k[1],i.tbsCertificate=c.tbsCertificate,b){i.md=p({signatureOid:i.signatureOid,type:"certificate"});var l=e.toDer(i.tbsCertificate);i.md.update(l.getBytes())}var m=d.md.sha1.create(),q=e.toDer(c.certIssuer);m.update(q.getBytes()),i.issuer.getField=function(a){return n(i.issuer,a)},i.issuer.addField=function(a){s([a]),i.issuer.attributes.push(a)},i.issuer.attributes=f.RDNAttributesAsArray(c.certIssuer),c.certIssuerUniqueId&&(i.issuer.uniqueId=c.certIssuerUniqueId),i.issuer.hash=m.digest().toHex();var r=d.md.sha1.create(),t=e.toDer(c.certSubject);return r.update(t.getBytes()),i.subject.getField=function(a){return n(i.subject,a)},i.subject.addField=function(a){s([a]),i.subject.attributes.push(a)},i.subject.attributes=f.RDNAttributesAsArray(c.certSubject),c.certSubjectUniqueId&&(i.subject.uniqueId=c.certSubjectUniqueId),i.subject.hash=r.digest().toHex(),c.certExtensions?i.extensions=f.certificateExtensionsFromAsn1(c.certExtensions):i.extensions=[],i.publicKey=f.publicKeyFromAsn1(c.subjectPublicKeyInfo),i},f.certificateExtensionsFromAsn1=function(a){for(var b=[],c=0;c<a.value.length;++c)for(var d=a.value[c],e=0;e<d.value.length;++e)b.push(f.certificateExtensionFromAsn1(d.value[e]));return b},f.certificateExtensionFromAsn1=function(a){var b={};if(b.id=e.derToOid(a.value[0].value),b.critical=!1,a.value[1].type===e.Type.BOOLEAN?(b.critical=0!==a.value[1].value.charCodeAt(0),b.value=a.value[2].value):b.value=a.value[1].value,b.id in g){if(b.name=g[b.id],"keyUsage"===b.name){var c=e.fromDer(b.value),f=0,h=0;c.value.length>1&&(f=c.value.charCodeAt(1),h=c.value.length>2?c.value.charCodeAt(2):0),b.digitalSignature=(128&f)==128,b.nonRepudiation=(64&f)==64,b.keyEncipherment=(32&f)==32,b.dataEncipherment=(16&f)==16,b.keyAgreement=(8&f)==8,b.keyCertSign=(4&f)==4,b.cRLSign=(2&f)==2,b.encipherOnly=(1&f)==1,b.decipherOnly=(128&h)==128}else if("basicConstraints"===b.name){var c=e.fromDer(b.value);c.value.length>0&&c.value[0].type===e.Type.BOOLEAN?b.cA=0!==c.value[0].value.charCodeAt(0):b.cA=!1;var i=null;c.value.length>0&&c.value[0].type===e.Type.INTEGER?i=c.value[0].value:c.value.length>1&&(i=c.value[1].value),null!==i&&(b.pathLenConstraint=e.derToInteger(i))}else if("extKeyUsage"===b.name)for(var c=e.fromDer(b.value),j=0;j<c.value.length;++j){var k=e.derToOid(c.value[j].value);k in g?b[g[k]]=!0:b[k]=!0}else if("nsCertType"===b.name){var c=e.fromDer(b.value),f=0;c.value.length>1&&(f=c.value.charCodeAt(1)),b.client=(128&f)==128,b.server=(64&f)==64,b.email=(32&f)==32,b.objsign=(16&f)==16,b.reserved=(8&f)==8,b.sslCA=(4&f)==4,b.emailCA=(2&f)==2,b.objCA=(1&f)==1}else if("subjectAltName"===b.name||"issuerAltName"===b.name){b.altNames=[];for(var l,c=e.fromDer(b.value),m=0;m<c.value.length;++m){var n={type:(l=c.value[m]).type,value:l.value};switch(b.altNames.push(n),l.type){case 1:case 2:case 6:break;case 7:n.ip=d.util.bytesToIP(l.value);break;case 8:n.oid=e.derToOid(l.value)}}}else if("subjectKeyIdentifier"===b.name){var c=e.fromDer(b.value);b.subjectKeyIdentifier=d.util.bytesToHex(c.value)}}return b},f.certificationRequestFromAsn1=function(a,b){var c={},g=[];if(!e.validate(a,m,c,g)){var h=Error("Cannot read PKCS#10 certificate request. ASN.1 object is not a PKCS#10 CertificationRequest.");throw h.errors=g,h}if(e.derToOid(c.publicKeyOid)!==f.oids.rsaEncryption)throw Error("Cannot read public key. OID is not RSA.");var i=f.createCertificationRequest();if(i.version=c.csrVersion?c.csrVersion.charCodeAt(0):0,i.signatureOid=d.asn1.derToOid(c.csrSignatureOid),i.signatureParameters=o(i.signatureOid,c.csrSignatureParams,!0),i.siginfo.algorithmOid=d.asn1.derToOid(c.csrSignatureOid),i.siginfo.parameters=o(i.siginfo.algorithmOid,c.csrSignatureParams,!1),i.signature=c.csrSignature,i.certificationRequestInfo=c.certificationRequestInfo,b){i.md=p({signatureOid:i.signatureOid,type:"certification request"});var j=e.toDer(i.certificationRequestInfo);i.md.update(j.getBytes())}var k=d.md.sha1.create();return i.subject.getField=function(a){return n(i.subject,a)},i.subject.addField=function(a){s([a]),i.subject.attributes.push(a)},i.subject.attributes=f.RDNAttributesAsArray(c.certificationRequestInfoSubject,k),i.subject.hash=k.digest().toHex(),i.publicKey=f.publicKeyFromAsn1(c.subjectPublicKeyInfo),i.getAttribute=function(a){return n(i,a)},i.addAttribute=function(a){s([a]),i.attributes.push(a)},i.attributes=f.CRIAttributesAsArray(c.certificationRequestInfoAttributes||[]),i},f.createCertificationRequest=function(){var a={};return a.version=0,a.signatureOid=null,a.signature=null,a.siginfo={},a.siginfo.algorithmOid=null,a.subject={},a.subject.getField=function(b){return n(a.subject,b)},a.subject.addField=function(b){s([b]),a.subject.attributes.push(b)},a.subject.attributes=[],a.subject.hash=null,a.publicKey=null,a.attributes=[],a.getAttribute=function(b){return n(a,b)},a.addAttribute=function(b){s([b]),a.attributes.push(b)},a.md=null,a.setSubject=function(b){s(b),a.subject.attributes=b,a.subject.hash=null},a.setAttributes=function(b){s(b),a.attributes=b},a.sign=function(b,c){a.md=c||d.md.sha1.create();var h=g[a.md.algorithm+"WithRSAEncryption"];if(!h){var i=Error("Could not compute certification request digest. Unknown message digest algorithm OID.");throw i.algorithm=a.md.algorithm,i}a.signatureOid=a.siginfo.algorithmOid=h,a.certificationRequestInfo=f.getCertificationRequestInfo(a);var j=e.toDer(a.certificationRequestInfo);a.md.update(j.getBytes()),a.signature=b.sign(a.md)},a.verify=function(){var b=!1,c=a.md;if(null===c){c=p({signatureOid:a.signatureOid,type:"certification request"});var d=a.certificationRequestInfo||f.getCertificationRequestInfo(a),g=e.toDer(d);c.update(g.getBytes())}return null!==c&&(b=q({certificate:a,md:c,signature:a.signature})),b},a};var v=new Date("1950-01-01T00:00:00Z"),w=new Date("2050-01-01T00:00:00Z");function x(a){return a>=v&&a<w?e.create(e.Class.UNIVERSAL,e.Type.UTCTIME,!1,e.dateToUtcTime(a)):e.create(e.Class.UNIVERSAL,e.Type.GENERALIZEDTIME,!1,e.dateToGeneralizedTime(a))}f.getTBSCertificate=function(a){var b=x(a.validity.notBefore),c=x(a.validity.notAfter),g=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes())]),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,d.util.hexToBytes(a.serialNumber)),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.siginfo.algorithmOid).getBytes()),u(a.siginfo.algorithmOid,a.siginfo.parameters)]),r(a.issuer),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,c]),r(a.subject),f.publicKeyToAsn1(a.publicKey)]);return a.issuer.uniqueId&&g.value.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,[e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.issuer.uniqueId)])),a.subject.uniqueId&&g.value.push(e.create(e.Class.CONTEXT_SPECIFIC,2,!0,[e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.subject.uniqueId)])),a.extensions.length>0&&g.value.push(f.certificateExtensionsToAsn1(a.extensions)),g},f.getCertificationRequestInfo=function(a){return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes()),r(a.subject),f.publicKeyToAsn1(a.publicKey),function(a){var b=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[]);if(0===a.attributes.length)return b;for(var c=a.attributes,f=0;f<c.length;++f){var g=c[f],h=g.value,i=e.Type.UTF8;"valueTagClass"in g&&(i=g.valueTagClass),i===e.Type.UTF8&&(h=d.util.encodeUtf8(h));var j=!1;"valueConstructed"in g&&(j=g.valueConstructed);var k=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(g.type).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[e.create(e.Class.UNIVERSAL,i,j,h)])]);b.value.push(k)}return b}(a)])},f.distinguishedNameToAsn1=function(a){return r(a)},f.certificateToAsn1=function(a){var b=a.tbsCertificate||f.getTBSCertificate(a);return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.signatureOid).getBytes()),u(a.signatureOid,a.signatureParameters)]),e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.signature)])},f.certificateExtensionsToAsn1=function(a){var b=e.create(e.Class.CONTEXT_SPECIFIC,3,!0,[]),c=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);b.value.push(c);for(var d=0;d<a.length;++d)c.value.push(f.certificateExtensionToAsn1(a[d]));return b},f.certificateExtensionToAsn1=function(a){var b=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[]);b.value.push(e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.id).getBytes())),a.critical&&b.value.push(e.create(e.Class.UNIVERSAL,e.Type.BOOLEAN,!1,String.fromCharCode(255)));var c=a.value;return"string"!=typeof a.value&&(c=e.toDer(c).getBytes()),b.value.push(e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,c)),b},f.certificationRequestToAsn1=function(a){var b=a.certificationRequestInfo||f.getCertificationRequestInfo(a);return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[b,e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.signatureOid).getBytes()),u(a.signatureOid,a.signatureParameters)]),e.create(e.Class.UNIVERSAL,e.Type.BITSTRING,!1,"\0"+a.signature)])},f.createCaStore=function(a){var b={certs:{}};function c(a){return g(a),b.certs[a.hash]||null}function g(a){if(!a.hash){var b=d.md.sha1.create();a.attributes=f.RDNAttributesAsArray(r(a),b),a.hash=b.digest().toHex()}}if(b.getIssuer=function(a){return c(a.issuer)},b.addCertificate=function(a){if("string"==typeof a&&(a=d.pki.certificateFromPem(a)),g(a.subject),!b.hasCertificate(a))if(a.subject.hash in b.certs){var c=b.certs[a.subject.hash];d.util.isArray(c)||(c=[c]),c.push(a),b.certs[a.subject.hash]=c}else b.certs[a.subject.hash]=a},b.hasCertificate=function(a){"string"==typeof a&&(a=d.pki.certificateFromPem(a));var b=c(a.subject);if(!b)return!1;d.util.isArray(b)||(b=[b]);for(var g=e.toDer(f.certificateToAsn1(a)).getBytes(),h=0;h<b.length;++h)if(g===e.toDer(f.certificateToAsn1(b[h])).getBytes())return!0;return!1},b.listAllCertificates=function(){var a=[];for(var c in b.certs)if(b.certs.hasOwnProperty(c)){var e=b.certs[c];if(d.util.isArray(e))for(var f=0;f<e.length;++f)a.push(e[f]);else a.push(e)}return a},b.removeCertificate=function(a){if("string"==typeof a&&(a=d.pki.certificateFromPem(a)),g(a.subject),!b.hasCertificate(a))return null;var h,i=c(a.subject);if(!d.util.isArray(i))return h=b.certs[a.subject.hash],delete b.certs[a.subject.hash],h;for(var j=e.toDer(f.certificateToAsn1(a)).getBytes(),k=0;k<i.length;++k)j===e.toDer(f.certificateToAsn1(i[k])).getBytes()&&(h=i[k],i.splice(k,1));return 0===i.length&&delete b.certs[a.subject.hash],h},a)for(var h=0;h<a.length;++h){var i=a[h];b.addCertificate(i)}return b},f.certificateError={bad_certificate:"forge.pki.BadCertificate",unsupported_certificate:"forge.pki.UnsupportedCertificate",certificate_revoked:"forge.pki.CertificateRevoked",certificate_expired:"forge.pki.CertificateExpired",certificate_unknown:"forge.pki.CertificateUnknown",unknown_ca:"forge.pki.UnknownCertificateAuthority"},f.verifyCertificateChain=function(a,b,c){"function"==typeof c&&(c={verify:c}),c=c||{};var e=(b=b.slice(0)).slice(0),g=c.validityCheckDate;void 0===g&&(g=new Date);var h=!0,i=null,j=0;do{var k=b.shift(),l=null,m=!1;if(g&&(g<k.validity.notBefore||g>k.validity.notAfter)&&(i={message:"Certificate is not valid yet or has expired.",error:f.certificateError.certificate_expired,notBefore:k.validity.notBefore,notAfter:k.validity.notAfter,now:g}),null===i){if(null===(l=b[0]||a.getIssuer(k))&&k.isIssuer(k)&&(m=!0,l=k),l){var n=l;d.util.isArray(n)||(n=[n]);for(var o=!1;!o&&n.length>0;){l=n.shift();try{o=l.verify(k)}catch(a){}}o||(i={message:"Certificate signature is invalid.",error:f.certificateError.bad_certificate})}null!==i||l&&!m||a.hasCertificate(k)||(i={message:"Certificate is not trusted.",error:f.certificateError.unknown_ca})}if(null===i&&l&&!k.isIssuer(l)&&(i={message:"Certificate issuer is invalid.",error:f.certificateError.bad_certificate}),null===i)for(var p={keyUsage:!0,basicConstraints:!0},q=0;null===i&&q<k.extensions.length;++q){var r=k.extensions[q];!r.critical||r.name in p||(i={message:"Certificate has an unsupported critical extension.",error:f.certificateError.unsupported_certificate})}if(null===i&&(!h||0===b.length&&(!l||m))){var s=k.getExtension("basicConstraints"),t=k.getExtension("keyUsage");null===t||t.keyCertSign&&null!==s||(i={message:"Certificate keyUsage or basicConstraints conflict or indicate that the certificate is not a CA. If the certificate is the only one in the chain or isn't the first then the certificate must be a valid CA.",error:f.certificateError.bad_certificate}),null===i&&null===s&&(i={message:"Certificate is missing basicConstraints extension and cannot be used as a CA.",error:f.certificateError.bad_certificate}),null!==i||null===s||s.cA||(i={message:"Certificate basicConstraints indicates the certificate is not a CA.",error:f.certificateError.bad_certificate}),null===i&&null!==t&&"pathLenConstraint"in s&&j-1>s.pathLenConstraint&&(i={message:"Certificate basicConstraints pathLenConstraint violated.",error:f.certificateError.bad_certificate})}var u=null===i||i.error,v=c.verify?c.verify(u,j,e):u;if(!0===v)i=null;else throw!0===u&&(i={message:"The application rejected the certificate.",error:f.certificateError.bad_certificate}),(v||0===v)&&("object"!=typeof v||d.util.isArray(v)?"string"==typeof v&&(i.error=v):(v.message&&(i.message=v.message),v.error&&(i.error=v.error))),i;h=!1,++j}while(b.length>0);return!0}},66498:(a,b,c)=>{"use strict";let{promisify:d}=c(57975),e=c(40106),{buildMockDispatch:f}=c(70634),{kDispatches:g,kMockAgent:h,kClose:i,kOriginalClose:j,kOrigin:k,kOriginalDispatch:l,kConnected:m,kIgnoreTrailingSlash:n}=c(80830),{MockInterceptor:o}=c(55720),p=c(49176),{InvalidArgumentError:q}=c(61448);class r extends e{constructor(a,b){if(!b||!b.agent||"function"!=typeof b.agent.dispatch)throw new q("Argument opts.agent must implement Agent");super(a,b),this[h]=b.agent,this[k]=a,this[n]=b.ignoreTrailingSlash??!1,this[g]=[],this[m]=1,this[l]=this.dispatch,this[j]=this.close.bind(this),this.dispatch=f.call(this),this.close=this[i]}get[p.kConnected](){return this[m]}intercept(a){return new o(a&&{ignoreTrailingSlash:this[n],...a},this[g])}cleanMocks(){this[g]=[]}async [i](){await d(this[j])(),this[m]=0,this[h][p.kClients].delete(this[k])}}a.exports=r},66568:(a,b,c)=>{var d=c(45654);c(33889),a.exports=d.cipher=d.cipher||{},d.cipher.algorithms=d.cipher.algorithms||{},d.cipher.createCipher=function(a,b){var c=a;if("string"==typeof c&&(c=d.cipher.getAlgorithm(c))&&(c=c()),!c)throw Error("Unsupported algorithm: "+a);return new d.cipher.BlockCipher({algorithm:c,key:b,decrypt:!1})},d.cipher.createDecipher=function(a,b){var c=a;if("string"==typeof c&&(c=d.cipher.getAlgorithm(c))&&(c=c()),!c)throw Error("Unsupported algorithm: "+a);return new d.cipher.BlockCipher({algorithm:c,key:b,decrypt:!0})},d.cipher.registerAlgorithm=function(a,b){a=a.toUpperCase(),d.cipher.algorithms[a]=b},d.cipher.getAlgorithm=function(a){return(a=a.toUpperCase())in d.cipher.algorithms?d.cipher.algorithms[a]:null};var e=d.cipher.BlockCipher=function(a){this.algorithm=a.algorithm,this.mode=this.algorithm.mode,this.blockSize=this.mode.blockSize,this._finish=!1,this._input=null,this.output=null,this._op=a.decrypt?this.mode.decrypt:this.mode.encrypt,this._decrypt=a.decrypt,this.algorithm.initialize(a)};e.prototype.start=function(a){var b={};for(var c in a=a||{})b[c]=a[c];b.decrypt=this._decrypt,this._finish=!1,this._input=d.util.createBuffer(),this.output=a.output||d.util.createBuffer(),this.mode.start(b)},e.prototype.update=function(a){for(a&&this._input.putBuffer(a);!this._op.call(this.mode,this._input,this.output,this._finish)&&!this._finish;);this._input.compact()},e.prototype.finish=function(a){a&&("ECB"===this.mode.name||"CBC"===this.mode.name)&&(this.mode.pad=function(b){return a(this.blockSize,b,!1)},this.mode.unpad=function(b){return a(this.blockSize,b,!0)});var b={};return b.decrypt=this._decrypt,b.overflow=this._input.length()%this.blockSize,(!!this._decrypt||!this.mode.pad||!!this.mode.pad(this._input,b))&&(this._finish=!0,this.update(),(!this._decrypt||!this.mode.unpad||!!this.mode.unpad(this.output,b))&&(!this.mode.afterFinish||!!this.mode.afterFinish(this.output,b)))}},67382:(a,b,c)=>{var d=c(45654);c(33889);var e=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],f=[1,2,3,5];a.exports=d.rc2=d.rc2||{},d.rc2.expandKey=function(a,b){"string"==typeof a&&(a=d.util.createBuffer(a)),b=b||128;var c,f=a,g=a.length(),h=b,i=Math.ceil(h/8);for(c=g;c<128;c++)f.putByte(e[f.at(c-1)+f.at(c-g)&255]);for(f.setAt(128-i,e[f.at(128-i)&255>>(7&h)]),c=127-i;c>=0;c--)f.setAt(c,e[f.at(c+1)^f.at(c+i)]);return f};var g=function(a,b,c){var e,g,h,i,j=!1,k=null,l=null,m=null,n=[];for(a=d.rc2.expandKey(a,b),h=0;h<64;h++)n.push(a.getInt16Le());c?(e=function(a){for(h=0;h<4;h++){var b,c;a[h]+=n[i]+(a[(h+3)%4]&a[(h+2)%4])+(~a[(h+3)%4]&a[(h+1)%4]),a[h]=(b=a[h])<<(c=f[h])&65535|(65535&b)>>16-c,i++}},g=function(a){for(h=0;h<4;h++)a[h]+=n[63&a[(h+3)%4]]}):(e=function(a){for(h=3;h>=0;h--){var b,c;a[h]=(65535&(b=a[h]))>>(c=f[h])|b<<16-c&65535,a[h]-=n[i]+(a[(h+3)%4]&a[(h+2)%4])+(~a[(h+3)%4]&a[(h+1)%4]),i--}},g=function(a){for(h=3;h>=0;h--)a[h]-=n[63&a[(h+3)%4]]});var o=function(a){var b=[];for(h=0;h<4;h++){var d=k.getInt16Le();null!==m&&(c?d^=m.getInt16Le():m.putInt16Le(d)),b.push(65535&d)}i=63*!c;for(var e=0;e<a.length;e++)for(var f=0;f<a[e][0];f++)a[e][1](b);for(h=0;h<4;h++)null!==m&&(c?m.putInt16Le(b[h]):b[h]^=m.getInt16Le()),l.putInt16Le(b[h])},p=null;return p={start:function(a,b){a&&"string"==typeof a&&(a=d.util.createBuffer(a)),j=!1,k=d.util.createBuffer(),l=b||new d.util.createBuffer,m=a,p.output=l},update:function(a){for(j||k.putBuffer(a);k.length()>=8;)o([[5,e],[1,g],[6,e],[1,g],[5,e]])},finish:function(a){var b=!0;if(c)if(a)b=a(8,k,!c);else{var d=8===k.length()?8:8-k.length();k.fillWithByte(d,d)}if(b&&(j=!0,p.update()),!c&&(b=0===k.length()))if(a)b=a(8,l,!c);else{var e=l.length(),f=l.at(e-1);f>e?b=!1:l.truncate(f)}return b}}};d.rc2.startEncrypting=function(a,b,c){var e=d.rc2.createEncryptionCipher(a,128);return e.start(b,c),e},d.rc2.createEncryptionCipher=function(a,b){return g(a,b,!0)},d.rc2.startDecrypting=function(a,b,c){var e=d.rc2.createDecryptionCipher(a,128);return e.start(b,c),e},d.rc2.createDecryptionCipher=function(a,b){return g(a,b,!1)}},67449:a=>{"use strict";let b=new TextDecoder;a.exports={utf8DecodeBytes:function(a){return 0===a.length?"":(239===a[0]&&187===a[1]&&191===a[2]&&(a=a.subarray(3)),b.decode(a))}}},67519:(a,b,c)=>{"use strict";let d=c(84285),e=c(34589),{InvalidArgumentError:f}=c(61448),{kRequestOrigin:g}=c(49176),h=[300,301,302,303,307,308],i=()=>{};class j{static buildDispatch(a,b){if(null!=b&&(!Number.isInteger(b)||b<0))throw new f("maxRedirections must be a positive number");let c=a.dispatch.bind(a);return(a,d)=>c(a,new j(c,b,a,d))}constructor(a,b,c,e){if(null!=b&&(!Number.isInteger(b)||b<0))throw new f("maxRedirections must be a positive number");if(null!=c.throwOnMaxRedirect&&"boolean"!=typeof c.throwOnMaxRedirect)throw new f("throwOnMaxRedirect must be a boolean");this.dispatch=a,this.location=null;const{maxRedirections:g,stripHeadersOnRedirect:h,stripHeadersOnCrossOriginRedirect:i,...j}=c;this.opts=j,this.opts.body=d.wrapRequestBody(this.opts.body),this.stripHeadersOnRedirect=l(h,"stripHeadersOnRedirect"),this.stripHeadersOnCrossOriginRedirect=l(i,"stripHeadersOnCrossOriginRedirect"),this.maxRedirections=b,this.handler=e,this.history=[]}onRequestStart(a,b){this.handler.onRequestStart?.(a,{...b,history:this.history})}onBodySent(a){this.handler.onBodySent?.(a)}onRequestSent(){this.handler.onRequestSent?.()}onRequestUpgrade(a,b,c,d){this.handler.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,j){if(b<200)return void this.handler.onResponseStart?.(a,b,c,j);if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");let l=303===b;(301===b||302===b)&&"POST"===this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",i)),this.opts.body=null,l=!0),303===b&&"HEAD"!==this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",i)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||d.isDisturbed(this.opts.body)||-1===h.indexOf(b)?null:c.location;let m=void 0===this.opts[g]?this.opts.origin:this.opts[g];if(m&&this.history.push(new URL(this.opts.path,m)),!this.location)return void this.handler.onResponseStart?.(a,b,c,j);let n=m?new URL(this.opts.path,m):void 0,{origin:o,pathname:p,search:q}=d.parseURL(new URL(this.location,n)),r=q?`${p}${q}`:p,s=`${o}${r}`;for(let a of this.history)if(a.toString()===s)throw new f(`Redirect loop detected. Cannot redirect to ${o}. This typically happens when using a Client or Pool with cross-origin redirects. Use an Agent for cross-origin redirects.`);this.opts.headers=function(a,b,c,f,g){let h=[];if(Array.isArray(a))for(let d=0;d<a.length;d+=2)k(a[d],b,c,f,g)||h.push(a[d],a[d+1]);else if(a&&"object"==typeof a)for(let[e,i]of d.hasSafeIterator(a)?a:Object.entries(a))k(e,b,c,f,g)||h.push(e,i);else e(null==a,"headers must be an object or an array");return h}(this.opts.headers,l,m!==o,this.stripHeadersOnRedirect,this.stripHeadersOnCrossOriginRedirect),this.opts.path=r,this.opts.origin=o,this.opts[g]=o,this.opts.query=null}onResponseData(a,b){this.location||this.handler.onResponseData?.(a,b)}onResponseEnd(a,b){this.location?this.dispatch(this.opts,this):this.handler.onResponseEnd(a,b)}onResponseError(a,b){this.handler.onResponseError?.(a,b)}}function k(a,b,c,e,f){let g=d.headerNameToString(a);return!!("host"===g||e?.has(g)||c&&f?.has(g)||b&&g.startsWith("content-"))||!!c&&("authorization"===g||"cookie"===g||"proxy-authorization"===g)}function l(a,b){if(null==a)return null;if(!Array.isArray(a))throw new f(`${b} must be an array`);let c=new Set;for(let e of a){if("string"!=typeof e)throw new f(`${b} must contain header names`);c.add(d.headerNameToString(e))}return c}a.exports=j},67594:(a,b,c)=>{"use strict";c.d(b,{j:()=>i});var d=c(22256),e=c(38421),f=c(77321),g=c(49623);let h=new Set;class i extends d.Hv{constructor(){super("opencode",e.xq.opencode)}transformRequest(a,b,c,d){return super.transformRequest(a,b,c,d),(0,f.Z)({provider:this.provider,model:a,body:b})}buildUrl(a){let b=this.config.baseUrl;return h.has(a)?`${b}/zen/v1/messages`:`${b}/zen/v1/chat/completions`}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",Authorization:"Bearer public","x-opencode-client":"desktop"};return c["x-opencode-session"]||(c["x-opencode-session"]=(0,g.oV)({headers:a?.rawHeaders,connectionId:a?.connectionId,scope:"opencode"})),b&&(c.Accept="text/event-stream"),c}}},68176:(a,b,c)=>{"use strict";c.d(b,{H:()=>g});let d=Symbol.for("switchboard.adapterShutdownRegistry"),e=globalThis[d]??={closers:new Set,flushers:new Set,listener:null,signalHandlers:null};function f(){for(let a of[e.flushers,e.closers])for(let b of[...a])if(a.delete(b))try{b()}catch{}}if(e.flushers??=new Set,!e.listener)for(let[a,b]of(e.listener=()=>{f()},process.on("beforeExit",e.listener),process.on("exit",e.listener),e.signalHandlers=Object.fromEntries(["SIGTERM","SIGINT",..."win32"===process.platform?["SIGBREAK"]:[]].map(a=>[a,()=>(a=>{if(f(),e.signalHandlers){for(let[a,b]of Object.entries(e.signalHandlers))process.removeListener(a,b);e.signalHandlers=null}if(!(process.listenerCount(a)>0))try{process.kill(process.pid,a)}catch{process.exit("SIGINT"===a?130:143)}})(a)])),Object.entries(e.signalHandlers)))process.on(a,b);function g(a,{flush:b=!1}={}){let c=b?e.flushers:e.closers;c.add(a);let d=!0;return()=>!!d&&(d=!1,c.delete(a))}},68531:(a,b,c)=>{"use strict";c.d(b,{h:()=>d});let d={OPENAI:"openai",OPENAI_RESPONSES:"openai-responses",OPENAI_RESPONSE:"openai-response",CLAUDE:"claude",GEMINI:"gemini",GEMINI_CLI:"gemini-cli",VERTEX:"vertex",CODEX:"codex",ANTIGRAVITY:"antigravity",KIRO:"kiro",CURSOR:"cursor",OLLAMA:"ollama",COMMANDCODE:"commandcode"}},68759:(a,b,c)=>{"use strict";let d;a=c.nmd(a);let{Buffer:e}=c(4573);Object.defineProperty(a,"exports",{get:()=>d||(d=e.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAn9/AGABfwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAzU0BQYAAAMAAAAAAAADAQMAAwMDAAACAAAAAAICAgICAgICAgIBAQEBAQEBAQEBAwAAAwAAAAQFAXABExMFAwEAAgYIAX8BQcDZBAsHxQcoBm1lbW9yeQIAC19pbml0aWFsaXplAAgZX19pbmRpcmVjdF9mdW5jdGlvbl90YWJsZQEAC2xsaHR0cF9pbml0AAkYbGxodHRwX3Nob3VsZF9rZWVwX2FsaXZlADcMbGxodHRwX2FsbG9jAAsGbWFsbG9jADkLbGxodHRwX2ZyZWUADARmcmVlAAwPbGxodHRwX2dldF90eXBlAA0VbGxodHRwX2dldF9odHRwX21ham9yAA4VbGxodHRwX2dldF9odHRwX21pbm9yAA8RbGxodHRwX2dldF9tZXRob2QAEBZsbGh0dHBfZ2V0X3N0YXR1c19jb2RlABESbGxodHRwX2dldF91cGdyYWRlABIMbGxodHRwX3Jlc2V0ABMObGxodHRwX2V4ZWN1dGUAFBRsbGh0dHBfc2V0dGluZ3NfaW5pdAAVDWxsaHR0cF9maW5pc2gAFgxsbGh0dHBfcGF1c2UAFw1sbGh0dHBfcmVzdW1lABgbbGxodHRwX3Jlc3VtZV9hZnRlcl91cGdyYWRlABkQbGxodHRwX2dldF9lcnJubwAaF2xsaHR0cF9nZXRfZXJyb3JfcmVhc29uABsXbGxodHRwX3NldF9lcnJvcl9yZWFzb24AHBRsbGh0dHBfZ2V0X2Vycm9yX3BvcwAdEWxsaHR0cF9lcnJub19uYW1lAB4SbGxodHRwX21ldGhvZF9uYW1lAB8SbGxodHRwX3N0YXR1c19uYW1lACAabGxodHRw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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgL5YUCAgd/A34gASACaiEEAkAgACIDKAIMIgANACADKAIEBEAgAyABNgIECyMAQRBrIgkkAAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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C0HjAQwHC0HXAQwGC0HYAQwFC0HZAQwEC0HaAQwDC0HbAQwCC0HdAQwBC0HcAQshAgNAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCADAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQAJ/AkACQAJAAn8CQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAg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ogKiAqICogKiAqICogKiAqICogKiAqICogIAogILIAQgAUEBaiIBRw0AC0HJACECDOwCCyABQQFqIQEgA0Evai0AAEEBcQ2lAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgzrAgsgASAERwRAA0AgAS0AAEEgRw0VIAQgAUEBaiIBRw0AC0H4ACECDOsCC0H4ACECDOoCCyADQQI6ACgMOAtBACECIANBADYCHCADQb8LNgIQIANBAjYCDCADIAFBAWo2AhQM6AILQQAhAgzOAgtBDSECDM0CC0ETIQIMzAILQRUhAgzLAgtBFiECDMoCC0EYIQIMyQILQRkhAgzIAgtBGiECDMcCC0EbIQIMxgILQRwhAgzFAgtBHSECDMQCC0EeIQIMwwILQR8hAgzCAgtBICECDMECC0EiIQIMwAILQSMhAgy/AgtBJSECDL4CC0HlACECDL0CCyADQT02AhwgAyABNgIUIAMgADYCDEEAIQIM1QILIANBGzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDNQCCyADQSA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzTAgsgA0ETNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0gILIANBCzYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNECCyADQRA2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzQAgsgA0EgNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzwILIANBCzYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM4CCyADQQw2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzNAgtBACECIANBADYCHCADIAE2AhQgA0HdDjYCECADQRI2AgwMzAILAkADQAJAIAEtAABBCmsOBAACAgACCyAEIAFBAWoiAUcNAAtB/QEhAgzMAgsCQAJAIAMtADZBAUcNAEEAIQACQCADKAI4IgJFDQAgAigCYCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUcNASADQfwBNgIcIAMgATYCFCADQdwZNgIQIANBFTYCDEEAIQIMzQILQdwBIQIMswILIANBADYCHCADIAE2AhQgA0H5CzYCECADQR82AgxBACECDMsCCwJAAkAgAy0AKEEBaw4CBAEAC0HbASECDLICC0HUASECDLECCyADQQI6ADFBACEAAkAgAygCOCICRQ0AIAIoAgAiAkUNACADIAIRAAAhAAsgAEUEQEHdASECDLECCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQbQMNgIQIANBEDYCDEEAIQIMygILIANB+wE2AhwgAyABNgIUIANBgRo2AhAgA0EVNgIMQQAhAgzJAgsgASAERgRAQfoBIQIMyQILIAEtAABByABGDQEgA0EBOgAoC0HAASECDK4CC0HaASECDK0CCyABIARHBEAgA0EMNgIIIAMgATYCBEHZASECDK0CC0H5ASECDMUCCyABIARGBEBB+AEhAgzFAgsgAS0AAEHIAEcNBCABQQFqIQFB2AEhAgyrAgsgASAERgRAQfcBIQIMxAILAkACQCABLQAAQcUAaw4QAAUFBQUFBQUFBQUFBQUFAQULIAFBAWohAUHWASECDKsCCyABQQFqIQFB1wEhAgyqAgtB9gEhAiABIARGDcICIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbrVAGotAABHDQMgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMMCCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIARQRAQeMBIQIMqgILIANB9QE2AhwgAyABNgIUIAMgADYCDEEAIQIMwgILQfQBIQIgASAERg3BAiADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEG41QBqLQAARw0CIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzCAgsgA0GBBDsBKCADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQLiIADQMMAgsgA0EANgIAC0EAIQIgA0EANgIcIAMgATYCFCADQeUfNgIQIANBCDYCDAy/AgtB1QEhAgylAgsgA0HzATYCHCADIAE2AhQgAyAANgIMQQAhAgy9AgtBACEAAkAgAygCOCICRQ0AIAIoAkAiAkUNACADIAIRAAAhAAsgAEUNbiAAQRVHBEAgA0EANgIcIAMgATYCFCADQYIPNgIQIANBIDYCDEEAIQIMvQILIANBjwE2AhwgAyABNgIUIANB7Bs2AhAgA0EVNgIMQQAhAgy8AgsgASAERwRAIANBDTYCCCADIAE2AgRB0wEhAgyjAgtB8gEhAgy7AgsgASAERgRAQfEBIQIMuwILAkACQAJAIAEtAABByABrDgsAAQgICAgICAgIAggLIAFBAWohAUHQASECDKMCCyABQQFqIQFB0QEhAgyiAgsgAUEBaiEBQdIBIQIMoQILQfABIQIgASAERg25AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBtdUAai0AAEcNBCAAQQJGDQMgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuQILQe8BIQIgASAERg24AiADKAIAIgAgBCABa2ohBiABIABrQQFqIQUDQCABLQAAIABBs9UAai0AAEcNAyAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMuAILQe4BIQIgASAERg23AiADKAIAIgAgBCABa2ohBiABIABrQQJqIQUDQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAY2AgAMtwILIAMoAgQhACADQgA3AwAgAyAAIAVBAWoiARArIgBFDQIgA0HsATYCHCADIAE2AhQgAyAANgIMQQAhAgy2AgsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNnAIgA0HtATYCHCADIAE2AhQgAyAANgIMQQAhAgy0AgtBzwEhAgyaAgtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDLQCC0HOASECDJoCCyADQesBNgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMsgILIAEgBEYEQEHrASECDLICCyABLQAAQS9GBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GyODYCECADQQg2AgxBACECDLECC0HNASECDJcCCyABIARHBEAgA0EONgIIIAMgATYCBEHMASECDJcCC0HqASECDK8CCyABIARGBEBB6QEhAgyvAgsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFBywEhAgyWAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZcCIANB6AE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAEgBEYEQEHnASECDK4CCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5gE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILQcoBIQIMlAILIAEgBEYEQEHlASECDK0CC0EAIQBBASEFQQEhB0EAIQICQAJAAkACQAJAAn8CQAJAAkACQAJAAkACQCABLQAAQTBrDgoKCQABAgMEBQYICwtBAgwGC0EDDAULQQQMBAtBBQwDC0EGDAILQQcMAQtBCAshAkEAIQVBACEHDAILQQkhAkEBIQBBACEFQQAhBwwBC0EAIQVBASECCyADIAI6ACsgAUEBaiEBAkACQCADLQAuQRBxDQACQAJAAkAgAy0AKg4DAQACBAsgB0UNAwwCCyAADQEMAgsgBUUNAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDQIgA0HiATYCHCADIAE2AhQgAyAANgIMQQAhAgyvAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZoCIANB4wE2AhwgAyABNgIUIAMgADYCDEEAIQIMrgILIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ2YAiADQeQBNgIcIAMgATYCFCADIAA2AgwMrQILQckBIQIMkwILQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgytAgtByAEhAgyTAgsgA0HhATYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDKsCCyABIARGBEBB4QEhAgyrAgsCQCABLQAAQSBGBEAgA0EAOwE0IAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBmRE2AhAgA0EJNgIMQQAhAgyrAgtBxwEhAgyRAgsgASAERgRAQeABIQIMqgILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyrAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqgILQcYBIQIMkAILIAEgBEYEQEHfASECDKkCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqgILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKkCC0HFASECDI8CCyABIARGBEBB3gEhAgyoAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKkCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyoAgtBxAEhAgyOAgsgASAERgRAQd0BIQIMpwILAkACQAJAAkAgAS0AAEEKaw4XAgMDAAMDAwMDAwMDAwMDAwMDAwMDAwEDCyABQQFqDAULIAFBAWohAUHDASECDI8CCyABQQFqIQEgA0Evai0AAEEBcQ0IIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKcCCyADQQA2AhwgAyABNgIUIANBjQs2AhAgA0ENNgIMQQAhAgymAgsgASAERwRAIANBDzYCCCADIAE2AgRBASECDI0CC0HcASECDKUCCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtB2wEhAgymAgsgAygCBCEAIANBADYCBCADIAAgARAtIgBFBEAgAUEBaiEBDAQLIANB2gE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMpQILIAMoAgQhACADQQA2AgQgAyAAIAEQLSIADQEgAUEBagshAUHBASECDIoCCyADQdkBNgIcIAMgADYCDCADIAFBAWo2AhRBACECDKICC0HCASECDIgCCyADQS9qLQAAQQFxDQEgA0EANgIcIAMgATYCFCADQeQcNgIQIANBGTYCDEEAIQIMoAILIAEgBEYEQEHZASEC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IAFBAWohAUGeASECDOQBCyABQQFqIQFBnwEhAgzjAQtBtwEhAiABIARGDfsBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQezUAGotAABHDSggAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPwBCyADQQA2AgAgBkEBaiEBQQ0MKAtBtgEhAiABIARGDfoBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDScgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPsBCyADQQA2AgAgBkEBaiEBQQwMJwtBtQEhAiABIARGDfkBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQerUAGotAABHDSYgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPoBCyADQQA2AgAgBkEBaiEBQQMMJgtBtAEhAiABIARGDfgBIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQejUAGotAABHDSUgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADPkBCyADQQA2AgAgBkEBaiEBQSYMJQsgASAERgRAQbMBIQIM+AELAkACQCABLQAAQdQAaw4CAAEnCyABQQFqIQFBmQEhAgzfAQsgAUEBaiEBQZoBIQIM3gELQbIBIQIgASAERg32ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHm1ABqLQAARw0jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz3AQsgA0EANgIAIAZBAWohAUEnDCMLQbEBIQIgASAERg31ASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHk1ABqLQAARw0iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz2AQsgA0EANgIAIAZBAWohAUEcDCILQbABIQIgASAERg30ASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHe1ABqLQAARw0hIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz1AQsgA0EANgIAIAZBAWohAUEGDCELQa8BIQIgASAERg3zASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHZ1ABqLQAARw0gIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAz0AQsgA0EANgIAIAZBAWohAUEZDCALIAEgBEYEQEGuASECDPMBCwJAAkACQAJAIAEtAABBLWsOIwAkJCQkJCQkJCQkJCQkJCQkJCQkJCQkJAEkJCQkJAIkJCQDJAsgAUEBaiEBQY4BIQIM3AELIAFBAWohAUGPASECDNsBCyABQQFqIQFBlAEhAgzaAQsgAUEBaiEBQZUBIQIM2QELQa0BIQIgASAERg3xASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHX1ABqLQAARw0eIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzyAQsgA0EANgIAIAZBAWohAUELDB4LIAEgBEYEQEGsASECDPEBCwJAAkAgAS0AAEHBAGsOAwAgASALIAFBAWohAUGQASECDNgBCyABQQFqIQFBkwEhAgzXAQsgASAERgRAQasBIQIM8AELAkACQCABLQAAQcEAaw4PAB8fHx8fHx8fHx8fHx8BHwsgAUEBaiEBQZEBIQIM1wELIAFBAWohAUGSASECDNYBCyABIARGBEBBqgEhAgzvAQsgAS0AAEHMAEcNHCABQQFqIQFBCgwbC0GpASECIAEgBEYN7QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABB0dQAai0AAEcNGiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7gELIANBADYCACAGQQFqIQFBHgwaC0GoASECIAEgBEYN7AEgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCABLQAAIABBytQAai0AAEcNGSAAQQZGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7QELIANBADYCACAGQQFqIQFBFQwZC0GnASECIAEgBEYN6wEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBx9QAai0AAEcNGCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM7AELIANBADYCACAGQQFqIQFBFwwYC0GmASECIAEgBEYN6gEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBwdQAai0AAEcNFyAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6wELIANBADYCACAGQQFqIQFBGAwXCyABIARGBEBBpQEhAgzqAQsCQAJAIAEtAABByQBrDgcAGRkZGRkBGQsgAUEBaiEBQYsBIQIM0QELIAFBAWohAUGMASECDNABC0GkASECIAEgBEYN6AEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBptUAai0AAEcNFSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6QELIANBADYCACAGQQFqIQFBCQwVC0GjASECIAEgBEYN5wEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBpNUAai0AAEcNFCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM6AELIANBADYCACAGQQFqIQFBHwwUC0GiASECIAEgBEYN5gEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBvtQAai0AAEcNEyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5wELIANBADYCACAGQQFqIQFBAgwTC0GhASECIAEgBEYN5QEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGA0AgAS0AACAAQbzUAGotAABHDREgAEEBRg0CIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADOUBCyABIARGBEBBoAEhAgzlAQtBASABLQAAQd8ARw0RGiABQQFqIQFBhwEhAgzLAQsgA0EANgIAIAZBAWohAUGIASECDMoBC0GfASECIAEgBEYN4gEgAygCACIAIAQgAWtqIQUgASAAa0EIaiEGAkADQCABLQAAIABBhNUAai0AAEcNDyAAQQhGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4wELIANBADYCACAGQQFqIQFBKQwPC0GeASECIAEgBEYN4QEgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBuNQAai0AAEcNDiAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM4gELIANBADYCACAGQQFqIQFBLQwOCyABIARGBEBBnQEhAgzhAQsgAS0AAEHFAEcNDiABQQFqIQFBhAEhAgzHAQsgASAERgRAQZwBIQIM4AELAkACQCABLQAAQcwAaw4IAA8PDw8PDwEPCyABQQFqIQFBggEhAgzHAQsgAUEBaiEBQYMBIQIMxgELQZsBIQIgASAERg3eASADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEGz1ABqLQAARw0LIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzfAQsgA0EANgIAIAZBAWohAUEjDAsLQZoBIQIgASAERg3dASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGw1ABqLQAARw0KIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzeAQsgA0EANgIAIAZBAWohAUEADAoLIAEgBEYEQEGZASECDN0BCwJAAkAgAS0AAEHIAGsOCAAMDAwMDAwBDAsgAUEBaiEBQf0AIQIMxAELIAFBAWohAUGAASECDMMBCyABIARGBEBBmAEhAgzcAQsCQAJAIAEtAABBzgBrDgMACwELCyABQQFqIQFB/gAhAgzDAQsgAUEBaiEBQf8AIQIMwgELIAEgBEYEQEGXASECDNsBCyABLQAAQdkARw0IIAFBAWohAUEIDAcLQZYBIQIgASAERg3ZASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEGs1ABqLQAARw0GIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzaAQsgA0EANgIAIAZBAWohAUEFDAYLQZUBIQIgASAERg3YASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGm1ABqLQAARw0FIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzZAQsgA0EANgIAIAZBAWohAUEWDAULQZQBIQIgASAERg3XASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGh1QBqLQAARw0EIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzYAQsgA0EANgIAIAZBAWohAUEQDAQLIAEgBEYEQEGTASECDNcBCwJAAkAgAS0AAEHDAGsODAAGBgYGBgYGBgYGAQYLIAFBAWohAUH5ACECDL4BCyABQQFqIQFB+gAhAgy9AQtBkgEhAiABIARGDdUBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQaDUAGotAABHDQIgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNYBCyADQQA2AgAgBkEBaiEBQSQMAgsgA0EANgIADAILIAEgBEYEQEGRASECDNQBCyABLQAAQcwARw0BIAFBAWohAUETCzoAKSADKAIEIQAgA0EANgIEIAMgACABEC4iAA0CDAELQQAhAiADQQA2AhwgAyABNgIUIANB/h82AhAgA0EGNgIMDNEBC0H4ACECDLcBCyADQZABNgIcIAMgATYCFCADIAA2AgxBACECDM8BC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ0AIABBFUYNASADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgzOAQtB9wAhAgy0AQsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDMwBCyABIARGBEBBjwEhAgzMAQsCQCABLQAAQSBGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GbHzYCECADQQY2AgxBACECDMwBC0ECIQIMsgELA0AgAS0AAEEgRw0CIAQgAUEBaiIBRw0AC0GOASECDMoBCyABIARGBEBBjQEhAgzKAQsCQCABLQAAQQlrDgRKAABKAAtB9QAhAgywAQsgAy0AKUEFRgRAQfYAIQIMsAELQfQAIQIMrwELIAEgBEYEQEGMASECDMgBCyADQRA2AgggAyABNgIEDAoLIAEgBEYEQEGLASECDMcBCwJAIAEtAABBCWsOBEcAAEcAC0HzACECDK0BCyABIARHBEAgA0EQNgIIIAMgATYCBEHxACECDK0BC0GKASECDMUBCwJAIAEgBEcEQANAIAEtAABBoNAAai0AACIAQQNHBEACQCAAQQFrDgJJAAQLQfAAIQIMrwELIAQgAUEBaiIBRw0AC0GIASEC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BCABQQFqIgFHDQALQfsAIQIMpwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMpgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMpQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0DIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMpAELIANBADYCHCADIAE2AhQgA0G8CjYCECADQQc2AgxBACECDKMBC0HPACECDIkBC0HRACECDIgBC0HnACECDIcBCyABIARGBEBB+gAhAgygAQsCQCABLQAAQQlrDgQgAAAgAAsgAUEBaiEBQeYAIQIMhgELIAEgBEYEQEH5ACECDJ8BCwJAIAEtAABBCWsOBB8AAB8AC0EAIQACQCADKAI4IgJFDQAgAigCOCICRQ0AIAMgAhEAACEACyAARQRAQeIBIQIMhgELIABBFUcEQCADQQA2AhwgAyABNgIUIANByQ02AhAgA0EaNgIMQQAhAgyfAQsgA0H4ADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDJ4BCyABIARHBEAgA0ENNgIIIAMgATYCBEHkACECDIUBC0H3ACECDJ0BCyABIARGBEBB9gAhAgydAQsCQAJAAkAgAS0AAEHIAGsOCwABCwsLCwsLCwsCCwsgAUEBaiEBQd0AIQIMhQELIAFBAWohAUHgACECDIQBCyABQQFqIQFB4wAhAgyDAQtB9QAhAiABIARGDZsBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbXVAGotAABHDQggAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJwBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIABEAgA0H0ADYCHCADIAE2AhQgAyAANgIMQQAhAgycAQtB4gAhAgyCAQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJwBC0HhACECDIIBCyADQfMANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMmgELIAMtACkiAEEja0ELSQ0JAkAgAEEGSw0AQQEgAHRBygBxRQ0ADAoLQQAhAiADQQA2AhwgAyABNgIUIANB7Qk2AhAgA0EINgIMDJkBC0HyACECIAEgBEYNmAEgAygCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBs9UAai0AAEcNBSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMmQELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfEANgIcIAMgATYCFCADIAA2AgxBACECDJkBC0HfACECDH8LQQAhAAJAIAMoAjgiAkUNACACKAI0IgJFDQAgAyACEQAAIQALAkAgAARAIABBFUYNASADQQA2AhwgAyABNgIUIANB6g02AhAgA0EmNgIMQQAhAgyZAQtB3gAhAgx/CyADQfAANgIcIAMgATYCFCADQYAbNgIQIANBFTYCDEEAIQIMlwELIAMtAClBIUYNBiADQQA2AhwgAyABNgIUIANBkQo2AhAgA0EINgIMQQAhAgyWAQtB7wAhAiABIARGDZUBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDVAGotAABHDQIgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADJYBCyADKAIEIQAgA0IANwMAIAMgACAGQQFqIgEQKyIARQ0CIANB7QA2AhwgAyABNgIUIAMgADYCDEEAIQIMlQELIANBADYCAAsgAygCBCEAIANBADYCBCADIAAgARArIgBFDYABIANB7gA2AhwgAyABNgIUIAMgADYCDEEAIQIMkwELQdwAIQIMeQtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJMBC0HbACECDHkLIANB7AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyRAQsgAy0AKSIAQSNJDQAgAEEuRg0AIANBADYCHCADIAE2AhQgA0HJCTYCECADQQg2AgxBACECDJABC0HaACECDHYLIAEgBEYEQEHrACECDI8BCwJAIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMjwELQdkAIQIMdQsgASAERwRAIANBDjYCCCADIAE2AgRB2AAhAgx1C0HqACECDI0BCyABIARGBEBB6QAhAgyNAQsgAS0AAEEwayIAQf8BcUEKSQRAIAMgADoAKiABQQFqIQFB1wAhAgx0CyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeiADQegANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyABIARGBEBB5wAhAgyMAQsCQCABLQAAQS5GBEAgAUEBaiEBDAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELQdYAIQIMcgsgASAERgRAQeUAIQIMiwELQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIANgIcIAMgATYCFCADIAA2AgxBACECDI0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNfSADQeMANgIcIAMgATYCFCADIAA2AgxBACECDIwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNeyADQeQANgIcIAMgATYCFCADIAA2AgwMiwELQdQAIQIMcQsgAy0AKUEiRg2GAUHTACECDHALQQAhAAJAIAMoAjgiAkUNACACKAJEIgJFDQAgAyACEQAAIQALIABFBEBB1QAhAgxwCyAAQRVHBEAgA0EANgIcIAMgATYCFCADQaQNNgIQIANBITYCDEEAIQIMiQELIANB4QA2AhwgAyABNgIUIANB0Bo2AhAgA0EVNgIMQQAhAgyIAQsgASAERgRAQeAAIQIMiAELAkACQAJAAkACQCABLQAAQQprDgQBBAQABAsgAUEBaiEBDAELIAFBAWohASADQS9qLQAAQQFxRQ0BC0HSACECDHALIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIgBCyADQQA2AhwgAyABNgIUIANBthE2AhAgA0EJNgIMQQAhAgyHAQsgASAERgRAQd8AIQIMhwELIAEtAABBCkYEQCABQQFqIQEMCQsgAy0ALkHAAHENCCADQQA2AhwgAyABNgIUIANBthE2AhAgA0ECNgIMQQAhAgyGAQsgASAERgRAQd0AIQIMhgELIAEtAAAiAkENRgRAIAFBAWohAUHQACECDG0LIAEhACACQQlrDgQFAQEFAQsgBCABIgBGBEBB3AAhAgyFAQsgAC0AAEEKRw0AIABBAWoMAgtBACECIANBADYCHCADIAA2AhQgA0HKLTYCECADQQc2AgwMgwELIAEgBEYEQEHbACECDIMBCwJAIAEtAABBCWsOBAMAAAMACyABQQFqCyEBQc4AIQIMaAsgASAERgRAQdoAIQIMgQELIAEtAABBCWsOBAABAQABC0EAIQIgA0EANgIcIANBmhI2AhAgA0EHNgIMIAMgAUEBajYCFAx/CyADQYASOwEqQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2QA2AhwgAyABNgIUIANB6ho2AhAgA0EVNgIMQQAhAgx+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsg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c3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64"))})},69226:(a,b,c)=>{"use strict";c.d(b,{$G:()=>g,bf:()=>e,n6:()=>f,xr:()=>d});let d="EpwGCkYIChgCKkCzVUuRrg7CcglSUWEef4rH6o35g9UYS8ZPe0/VomQTBsFx6sttYNj5l8GqgW6ejuHyYqpFToxIbZl0bw17l5dJEgzCnqDO0Z8fRlMrNgsaDLS1cnCjC53KBqE0CCIwAADQdo1eO+7qPAmo8J4WR3JPmr92S97kmvr5K1iPMiOpkZNj8mEXW8uzBoOJs/9ZKoMFiqHJ3UObwaJDqFOW70E9oCwDoc6jesaWVAEdN5vWfKMpIkjFJjECdjIdkxyJNJ8Ib8yXVal3qwE7uThoPRqSZDdHB5mmwPEjWE/90cSYCbtX2YsJki1265CabBb8/QEkODXg4kgRrL+c8e8rRXz/dr1RswvaPuzEdGKHRNi9UooNUeOK4/ebx1KkP9YZttyohN9GWqlts36kOoW0Cfie/ABDgF9g534BPth/sstxDM6d79QlRmh6NxizyTF74DXJI34u0M4tTRchqE5pAq85SgdJaa+dix1yJPMji8m6nZkwJbscJb9rdc2MKyKWjz8QL2+rTSSuZ2F1k1qSsW0xNcI7qLcI12Vncfn/VqY6YOIZy/saZBR0ezXvN6g+UYbuIdyVg7AyIFZt3nbrO7/kmOEb2VKzygwklHGEIJHfFgMpH3JSrAzbZIowVHOF7VaJ+KXRFDCFin7hHTOiOsdg+1ij1mML9Z/x/9CP4b7OUcaQm1llDZPSHc6rZMNL3DdB+fW5YfmNgKU35S+7AMtA10nVILzDAk1UV4T2K9Do09JlI6rjOs9UuULlIN2Z0eE8YTlANR6uQcw7lMcdfqYE8tke4rDKc2dDiaS5vVe45VewICNpdXGN11yw8QqH7p27CR1HtN30e0tHXOR3bIwWk/Yb6O5fTaKG6Ri8e5ZCPvdD9HqepVi188nM0iTjJqL58F3ni04ECIhcbyaQWnuTes1Kw4CMwiZDLQkk8Hgz7HkUOf1btQTF/0nhD7ry0n0hAEg2PaDM3V6TjOjf4hEldRmeqERcQF1PfgKb6ZM12rlIIfUqKACczWJSzTV158+47HX36o0cgux6nFlv/DE+sEiRVxgB",e="EuwGCukGAXLI2nxwZIq54WWSoL/YN0P3TsDZ7zRnLi8g0S4aVr2HUGxvaHKySuY6HAVzcE0GPGjXrytLIldxthSvfxgUlJh6Qa9Z+Oj5QZBlYdg6HaJ6yuY5R7waE6rdwBsRf7Ft2j3DJ9rMi9qhWFqApewYtPhls3VHtuvND3l8Rm09+lbAXQs6KKWEWrxNLKTBkfpMgXhRERc/TQRMZu1twAablm6/Zk1tsYRvfWKLsNbeKF+CCojJdXJKvnR/8Ouuoa+Y2Ti20hcW7aZIIjZDFYPU//k6Ybmhg69J/imbFai2ckhfLaisqdDkdoIiBJScTOUvYqP6AE9d4MsydSC+UlhIMk4hoP76R8vUSCZRMkjOaDXstf/QoVZKbt94wyRZgAJ1G0BqI8L5ow86kLpA4wJEtxsRGymOE4bKUvApveBakYDNM9APkf+LbtbzWSseGjoZcSlycF9iN8Q2XNYKRrHbv3Lr5Y8JjdH/5y/6SHkNehTEZugaeGnSPSyCTWto1kQgHpxdWmhkLfJGNUGLmue7Mesj4TSms4J33mRpYVhNB/J333FCqIP0hr/E7BkkjEn7yZ4X7SQlh+xKPurapsnHRwiKmtsilmEFrnTE9iQr+pMr6M29qqFNv1tr5yumbaJw8JW9sB15tNsRv+dW6BjNanbsKz7HCgKUBc8tGy+7YuhXzAfViyRefcjK7eZW0Fbyt7AbybJTKz78W8NH7ye6LAwzOebXpeZ4D43fNIt8bKh26qgduSQv/7o+pAflkuqHZ99YWgHQ8h8OkZFi3eOiSYjsjhdZ/czWOdoPI/OnqIldzMPF5YlrKBLFX8VhRKVmqgsmWf5PHGulHhMkVlS+XG2UIseGy69ARa93D78Gsa+1n1kJr7EEB7Rh+27vUMxVYLdz1yMSvE5nalTAlg/ZeG8+XQ0cHuAI3KbQpHW2Q++RdXfm5JzD5WdJZUU+Zn8t8UUn85BH4RxZLeE0qJikgSsKoYVBc6YhiMjhPgkR95ReimY4Z0xCJdRo1gjexOFeODZMpQF6Yxnoic7IrdgsFA3iePTbFnPp3IAM1fAThWhXJUn3QInUOTd5o1qmTmn6REbL15g/JQNl+dqUoPkhleeb2V3kjqp1okmO3wMZbPknR3S1LZNmlS72/iBQUm+n2b/RCn4PjmM2",f="CloBjz1rX5+yg1ILh/Ag+suum5k1f/9m/hI0XDQ33lsQIYnOHLn9KZwN0C7E4jgep5MzZvz5Se1Z1xxYrA1+Iz0Il4tabBhaDfMKNa5dGdEA3KnikfjfIpMlPaAKaQGPPWtf2hodPdBgguiZqDn+Qz2LwGEqHVJ16LVBUpeSx7UnYBLSwio8cyNy0jPijOh5QXKLTeHVdO2tKKcCCrtG2JCW3dOSrW2qA8eyAg40iQUnMNECjbcjkqB1+zrab7jX9ILwg7L9OgqYAQGPPWtfT4nzaPzSkXePAa920abYxPs3fg/RHDlg8PUVFLa+ko6qOjt7nXJTMxN0cpCwUCFX7eHHcMnA6vApyA/rXvJiAABkHZ3HilAktXRtxr/thHU0H8/4H5gT3kzoQcq9aMznrKomd3ct0mFi0ioSKnOEfoY1Mrfj00p/ZWm0tT7Wrjcm3BQXZ+T9Vrb94k+6CjtcEBrGCq8BAY89a1/vTMczqwB1NP3HCCuBdnds2vDXkj6XAYaXjsjmik8tGqwMKHz8R9RAWsx6SO6pkGEpXXpRzAaUx6c+aofsL/z1xOcN7ArCAa6uEeQKEgNngZuCP05p4+9P95epVmgOjFa4KfsPnyg+NKUkEFmpPSDrIRyMT+xERlclVcCI98/u7i8a9+vTbgzl8TRFYryClNH37K1ye5i6kqSGDUcMyiEasjke5BxbUh3i6wqMAgGPPWtfk+A+iY38QAldu117FEkTIkzbYOIt67lk9c6Ou3Y3Ct8TFHFw5QwGfSFc0YWjeTFHdm9UdV5jPK35p6VfhiRSva3w2+JLIHb4jvv5HutZPOJ3yQTt/+hUDj80oMNMbwnxNZvCEdzKS+D9vwmTACAm5H0ZetBSH2gPJXnhhuQo9AegS3wIWVR2a5k643Vx9r4u4pOvij4476lxKswIHvqsjL4jnTzRCvd44G6dn7vD0ENGb1K/i+dMRQMcOBaOxPN0ynk9bKxXWRDbZ+Rhakfr+y74z+6eYCdRPVqO9I7s+riilFuRIfaQ+U6/vuVKGIWEVKCfZZi0z6H5Xgz1xmse0u0AsittDlIKxwEBjz1rX783A0vehvUeabRia+/pX46IsN5efTAxFEBUeUce3jLuXIghkMV2b8KNhUs2G0aZldDDewRQbkluQabBMDT82N5I7reJP0VZgLIKccCL5DoGv1J7YWM2npLMIgZ6aP8aSlT3PFFJ0IXbUZUrzduczmIm6nzAJf9zxmq1aIFYw8YrgW8RjUdy0UvUmRoBEShSGUrvsyaRTl7J//KJW5utIPunFMu53GPWLidCFHzM1QA3Cj1+4zv5UXajP/V92RQayWbzCvYBAY89a1+yzoVSWukUGH7kX71Tg9dx7HA7OyKYwnYaqekG98zJfcUM/3KoiiiotW5t4xYu//ksEl36bSWvUHsRnxGByg+3WYdnZqKg0AtdRB/EXbI5PsjvS5ko96bkjSuFkY3TjHGwAM2B94K6/t6OTE/NBbxCsY9sT4d+1sbFv/iyfmfCnfvJaSzGmC9CDWKy4iqQ/vBNWps9j1JXk0p5uPAYC2BaMkxl5xoTVZqI3zAuRtQF5JLmPPy+PdqOgFxMKcLGNhwp7dbhIFLF68vCYQ9CL0NnK2d3CFk1UFVYxsi1TsolR1xahe/Rxt5HZDz/z65nevrQ",g="CiQBjz1rX/AlslZWMe5RgBt4Tv9j4+YNZTTez+JH2/+5oAlICygKXgGPPWtf7/Sux9eLYap/bmYAdPqFThLXj+l7o0DLu/hdgU98MA9ZrlRDNHXx+T0tuY8AcnjPZbiDyOq2bE11Fjhsk6p5axqayaapC/Pt9GczcgIQf1z15WTxCeKWAPYKYQGPPWtfDYj0nlNFNoTlU39RC91Z16xFKJ2MLEmkm+NvimsoOJ6be3g2BssNPtJ/9BKDXRA5cVs17tBeeW72lH8TMB5999udtxHM2SiUsnWsrHlfVuGSCpNQQ+5REw8HNvEKkgEBjz1rXzBNWrqZGbjun55K+vgYPBhJO2qZ67uRWXUA5/qcU12U/mbi5XoA3swoxYE8LEXfZvFFC9WG/W28QNCA0Qd4Trk/WkWiAwZmB8a84Fs14rkv3wqyxwFavPkJorqurAfd2XzGiFy0sB0ITCOPYi1HzDGV5WfXk6b9k+jT66/RuzGa8EcSOWo/QtC3Bkhgowo4AY89a1/f/tw8A02zjIoK7JVDAbf8W4UfmbApJJhwXIiGtu1M0JItObx7g2reYqT+HHL2Q/R4VDc="},69353:(a,b,c)=>{"use strict";c.d(b,{Qm:()=>d,lc:()=>e});let d=2e4;function e(a){let b="string"==typeof a?a:String(a??""),c=b.indexOf("/");return -1===c?b:b.slice(0,c)}},69445:(a,b,c)=>{a.exports=c(1277),c(38627),c(4554),c(6680),c(37691)},69493:(a,b,c)=>{"use strict";c(68531),c(9960),c(75371),c(22268),c(80152),c(82689),c(82703),c(81556),c(17438),c(25720),c(39490)},69537:(a,b,c)=>{"use strict";c.d(b,{A:()=>n});var d=c(74570);let e={id:"deepseek",priority:110,alias:"deepseek",aliases:["ds"],uiAlias:"ds",display:{name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com",notice:{apiKeyUrl:"https://platform.deepseek.com/api_keys"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.deepseek.com/chat/completions",validateUrl:"https://api.deepseek.com/models",reasoningInject:{scope:"all"}},transports:[{identity:"openai-node",format:"openai",baseUrl:"https://api.deepseek.com/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"openai-node",format:"claude",baseUrl:"https://api.deepseek.com/anthropic/v1/messages",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-v4-pro-max",name:"DeepSeek V4 Pro Max",upstreamModelId:"deepseek-v4-pro"},{id:"deepseek-v4-pro-none",name:"DeepSeek V4 Pro No Thinking",upstreamModelId:"deepseek-v4-pro"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"deepseek-chat",name:"DeepSeek V3.2 Chat"},{id:"deepseek-reasoner",name:"DeepSeek V3.2 Reasoner"}],features:{usage:!0,usageApikey:!0}},f={id:"glm",priority:140,alias:"glm",display:{name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},category:"apikey",transport:{identity:"claude-cli",baseUrl:"https://api.z.ai/api/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{url:"https://api.z.ai/api/monitor/usage/quota/limit"}},transports:[{identity:"claude-cli",format:"openai",baseUrl:"https://api.z.ai/api/coding/paas/v4/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"claude-cli",format:"claude",baseUrl:"https://api.z.ai/api/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"glm-5.3",name:"GLM 5.3"},{id:"glm-5.2",name:"GLM 5.2"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM 4.7"},{id:"glm-4.6v",name:"GLM 4.6V (Vision)"}],features:{usage:!0,usageApikey:!0}};var g=c(45431);let h={id:"kimi-coding",hidden:!0,priority:120,alias:"kmc",display:{name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC",website:"https://kimi.moonshot.cn",notice:{signupUrl:"https://kimi.moonshot.cn"}},category:"oauth",transport:{identity:"kimi",baseUrl:"https://api.kimi.com/coding/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...d.Bi},clientId:"17e5f671-d194-4dfb-9706-5516cb48c098",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshUrl:"https://auth.kimi.com/api/oauth/token",auth:{combined:!0,header:"x-api-key",scheme:"raw",hooks:["kimiHeaders"]}},transports:[{identity:"kimi",format:"openai",baseUrl:"https://api.kimi.com/coding/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["kimiHeaders"]}},{identity:"kimi",format:"claude",baseUrl:"https://api.kimi.com/coding/v1/messages",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw",hooks:["kimiHeaders"]}}],models:[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],oauth:{deviceCodeUrl:"https://auth.kimi.com/api/oauth/device_authorization",tokenUrl:"https://auth.kimi.com/api/oauth/token",refreshLeadMs:3e5},features:{usage:!0}},i={id:"kimi",priority:170,alias:"kimi",display:{name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn",notice:{apiKeyUrl:"https://platform.moonshot.ai/console/api-keys"}},category:"apikey",transport:{identity:"kimi",baseUrl:"https://api.kimi.com/coding/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}},transports:[{identity:"kimi",format:"openai",baseUrl:"https://api.kimi.com/coding/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"kimi",format:"claude",baseUrl:"https://api.kimi.com/coding/v1/messages",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"kimi-k2.5-thinking",name:"Kimi K2.5 Thinking"},{id:"kimi-latest",name:"Kimi Latest"}],serviceKinds:["llm","webSearch"],features:{usage:!0,usageApikey:!0},searchViaChat:{defaultModel:"kimi-k2.5",endpoint:"https://api.moonshot.cn/v1/chat/completions",pricingUrl:"https://platform.moonshot.ai/docs/pricing/chat"}},j={id:"minimax-cn",priority:190,alias:"minimax-cn",display:{name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"}},category:"apikey",transport:{identity:"claude-cli",baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...d.Bi},quirks:{dropOutputConfig:!0},reasoningInject:{scope:"all"},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{urls:["https://www.minimaxi.com/v1/api/openplatform/coding_plan/remains","https://api.minimaxi.com/v1/api/openplatform/coding_plan/remains"]}},transports:[{identity:"claude-cli",format:"openai",baseUrl:"https://api.minimaxi.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"claude-cli",format:"claude",baseUrl:"https://api.minimaxi.com/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"MiniMax-M3",name:"MiniMax M3",targetFormat:"claude"},{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"speech-2.8-hd",name:"Speech 2.8 HD",kind:"tts"},{id:"speech-2.8-turbo",name:"Speech 2.8 Turbo",kind:"tts"},{id:"speech-2.6-hd",name:"Speech 2.6 HD",kind:"tts"},{id:"speech-2.6-turbo",name:"Speech 2.6 Turbo",kind:"tts"},{id:"speech-02-hd",name:"Speech 02 HD",kind:"tts"},{id:"speech-02-turbo",name:"Speech 02 Turbo",kind:"tts"},{id:"speech-01-hd",name:"Speech 01 HD",kind:"tts"},{id:"speech-01-turbo",name:"Speech 01 Turbo",kind:"tts"}],serviceKinds:["llm","tts"],ttsConfig:{identity:"claude-cli",baseUrl:"https://api.minimaxi.com/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},features:{usage:!0,usageApikey:!0}},k={id:"minimax",priority:90,alias:"minimax",display:{name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com",notice:{apiKeyUrl:"https://platform.minimaxi.com/user-center/basic-information/interface-key"}},category:"apikey",transport:{identity:"claude-cli",baseUrl:"https://api.minimax.io/anthropic/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{...d.Bi},quirks:{dropOutputConfig:!0},reasoningInject:{scope:"all"},auth:{combined:!0,header:"x-api-key",scheme:"raw"},usage:{urls:["https://www.minimax.io/v1/token_plan/remains","https://api.minimax.io/v1/api/openplatform/coding_plan/remains"]}},transports:[{identity:"claude-cli",format:"openai",baseUrl:"https://api.minimax.io/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"claude-cli",format:"claude",baseUrl:"https://api.minimax.io/anthropic/v1/messages",urlSuffix:"?beta=true",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"MiniMax-M3",name:"MiniMax M3",targetFormat:"claude"},{id:"MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"MiniMax-M2.1",name:"MiniMax M2.1"},{id:"minimax-image-01",name:"MiniMax Image 01",params:["n","size","response_format"],kind:"image"},{id:"speech-2.8-hd",name:"Speech 2.8 HD",kind:"tts"},{id:"speech-2.8-turbo",name:"Speech 2.8 Turbo",kind:"tts"},{id:"speech-2.6-hd",name:"Speech 2.6 HD",kind:"tts"},{id:"speech-2.6-turbo",name:"Speech 2.6 Turbo",kind:"tts"},{id:"speech-02-hd",name:"Speech 02 HD",kind:"tts"},{id:"speech-02-turbo",name:"Speech 02 Turbo",kind:"tts"},{id:"speech-01-hd",name:"Speech 01 HD",kind:"tts"},{id:"speech-01-turbo",name:"Speech 01 Turbo",kind:"tts"}],serviceKinds:["llm","image","imageToText","webSearch","tts"],ttsConfig:{identity:"claude-cli",baseUrl:"https://api.minimax.io/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},imageConfig:{identity:"claude-cli",baseUrl:"https://api.minimaxi.com/v1/images/generations"},searchViaChat:{defaultModel:"MiniMax-M2.7",endpoint:"https://api.minimaxi.com/v1/text/chatcompletion_v2",pricingUrl:"https://www.minimaxi.com/document/price"},features:{usage:!0,usageApikey:!0}},l={id:"xiaomi-mimo",priority:290,alias:"xiaomi-mimo",aliases:["mimo"],uiAlias:"mimo",display:{name:"Xiaomi MiMo",icon:"smart_toy",color:"#FF6900",textIcon:"XM",website:"https://xiaomimimo.com",notice:{apiKeyUrl:"https://xiaomimimo.com"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",validateUrl:"https://api.xiaomimimo.com/v1/models"},transports:[{identity:"openai-node",format:"openai",baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"openai-node",format:"claude",baseUrl:"https://api.xiaomimimo.com/anthropic/v1/messages",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"mimo-v2-flash",name:"MiMo V2 Flash"}]},m={id:"xiaomi-tokenplan",priority:300,alias:"xiaomi-tokenplan",aliases:["xmtp"],uiAlias:"xmtp",display:{name:"Xiaomi MiMo (Token Plan)",icon:"smart_toy",color:"#FF6700",textIcon:"XT",website:"https://mimo.xiaomi.com",notice:{text:"Xiaomi MiMo Token Plan subscription (API key starts with tp-). Token Plan keys are cluster-specific — select the region matching your subscription.",apiKeyUrl:"https://mimo.xiaomi.com"}},category:"apikey",hasProviderSpecificData:!0,regions:[{id:"sgp",label:"Singapore (新加坡)"},{id:"cn",label:"China (中国大陆)"},{id:"ams",label:"Amsterdam (阿姆斯特丹)"}],defaultRegion:"sgp",transport:{identity:"openai-node",baseUrl:"https://token-plan-sgp.xiaomimimo.com/v1/chat/completions",regions:{sgp:"https://token-plan-sgp.xiaomimimo.com/v1",cn:"https://token-plan-cn.xiaomimimo.com/v1",ams:"https://token-plan-ams.xiaomimimo.com/v1"},defaultRegion:"sgp"},transports:[{identity:"openai-node",format:"openai",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"openai-node",format:"claude",headers:{...d.Bi},auth:{combined:!0,header:"x-api-key",scheme:"raw"}}],models:[{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"mimo-v2.5-pro-claude",name:"MiMo V2.5 Pro (Claude Native)",targetFormat:"claude",upstreamModelId:"mimo-v2.5-pro"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2-pro",name:"MiMo V2 Pro"},{id:"mimo-v2-omni",name:"MiMo V2 Omni"},{id:"mimo-v2-tts",name:"MiMo V2 TTS"},{id:"mimo-v2.5-tts",name:"MiMo V2.5 TTS"},{id:"mimo-v2.5-tts-voiceclone",name:"MiMo V2.5 TTS Voice Clone"},{id:"mimo-v2.5-tts-voicedesign",name:"MiMo V2.5 TTS Voice Design"}]},n=[{id:"alicode-intl",priority:10,alias:"alicode-intl",display:{name:"Alibaba Intl",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://modelstudio.console.alibabacloud.com",notice:{apiKeyUrl:"https://modelstudio.console.alibabacloud.com/?apiKey=1"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}]},{id:"alicode",priority:20,alias:"alicode",display:{name:"Alibaba",icon:"cloud",color:"#FF6A00",textIcon:"ALi",website:"https://bailian.console.aliyun.com",notice:{apiKeyUrl:"https://bailian.console.aliyun.com/?apiKey=1"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://coding.dashscope.aliyuncs.com/v1/chat/completions",headers:{},quirks:{preserveCacheControl:!0}},models:[{id:"qwen3.5-plus",name:"Qwen3.5 Plus"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"qwen3-max-2026-01-23",name:"Qwen3 Max"},{id:"qwen3-coder-next",name:"Qwen3 Coder Next"},{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"glm-4.7",name:"GLM 4.7"}]},{id:"anthropic",priority:30,alias:"anthropic",display:{name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com",notice:{apiKeyUrl:"https://console.anthropic.com/settings/keys"}},category:"apikey",transport:{identity:"claude-cli",baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},auth:{apiKey:{header:"x-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"}}},models:[{id:"claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"claude-opus-4-20250514",name:"Claude Opus 4"},{id:"claude-3-5-sonnet-20241022",name:"Claude 3.5 Sonnet"}],serviceKinds:["llm","imageToText"]},{id:"antigravity",priority:20,alias:"ag",uiAlias:"ag",display:{name:"Antigravity",icon:"rocket_launch",color:"#F59E0B",website:"https://antigravity.google",notice:{signupUrl:"https://antigravity.google"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",serviceKinds:["llm","image"],modelsFetcher:{url:"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels",method:"POST",type:"google-available-models",headers:{"X-Client-Name":"antigravity"}},transport:{identity:"antigravity",baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",retry:{429:{attempts:3},500:{attempts:3},503:{attempts:3}},usage:{quotaApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels",loadProjectApiUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",tokenUrl:"https://oauth2.googleapis.com/token"},clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},models:[{id:"gemini-3.8-flash-high",name:"Gemini 3.8 Flash (High)"},{id:"gemini-3.7-flash-high",name:"Gemini 3.7 Flash (High)"},{id:"gemini-3.6-flash-high",name:"Gemini 3.6 Flash (High)"},{id:"gemini-3-flash-agent",name:"Gemini 3.5 Flash (High)"},{id:"gemini-3.5-flash-low",name:"Gemini 3.5 Flash (Medium)"},{id:"gemini-3.5-flash-extra-low",name:"Gemini 3.5 Flash (Low)"},{id:"gemini-pro-agent",name:"Gemini 3.1 Pro (High)"},{id:"gemini-3.1-pro-low",name:"Gemini 3.1 Pro (Low)"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6 (Thinking)"},{id:"claude-opus-4-6-thinking",name:"Claude Opus 4.6 (Thinking)"},{id:"gpt-oss-120b-medium",name:"GPT-OSS 120B (Medium)"},{id:"gemini-3-flash",name:"Gemini 3 Flash",thinking:!1},{id:"gemini-3.1-flash-lite",name:"Gemini 3.1 Flash Lite"},{id:"gemini-3.1-flash-image",name:"Gemini 3.1 Flash (Image)",kind:"image",imageGen:!0,capabilities:["textToImage"]}],oauth:{authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile","https://www.googleapis.com/auth/cclog","https://www.googleapis.com/auth/experimentsandconfigs"],apiEndpoint:"https://cloudcode-pa.googleapis.com",apiVersion:"v1internal",loadCodeAssistEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUserEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser",loadCodeAssistUserAgent:"google-api-nodejs-client/9.15.1",loadCodeAssistApiClient:"google-cloud-sdk vscode_cloudshelleditor/0.1",refreshLeadMs:3e5},features:{usage:!0}},{id:"assemblyai",priority:30,alias:"assemblyai",aliases:["aai"],uiAlias:"aai",display:{name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com",notice:{apiKeyUrl:"https://www.assemblyai.com/app/api-keys"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.assemblyai.com/v1/audio/transcriptions",validateUrl:"https://api.assemblyai.com/v1/account"},models:[{id:"universal-3-pro",name:"Universal 3 Pro",params:["language"],kind:"stt"},{id:"universal-2",name:"Universal 2",params:["language"],kind:"stt"},{id:"best",name:"Best (Nano + Universal)",kind:"stt"},{id:"nano",name:"Nano (Fast)",kind:"stt"}],serviceKinds:["stt"],sttConfig:{identity:"openai-node",baseUrl:"https://api.assemblyai.com/v2/transcript",authType:"apikey",authHeader:"authorization",format:"assemblyai"}},{id:"aws-polly",alias:"polly",display:{name:"AWS Polly",icon:"record_voice_over",color:"#FF9900",textIcon:"PL",website:"https://aws.amazon.com/polly/",notice:{text:"Use AWS Secret Access Key as API key; set providerSpecificData.accessKeyId and optional region.",apiKeyUrl:"https://console.aws.amazon.com/iam/home#/security_credentials"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{identity:"openai-node",baseUrl:"https://polly.{region}.amazonaws.com/v1/speech",authType:"apikey",authHeader:"aws-sigv4",format:"aws-polly",models:[{id:"standard",name:"Standard"},{identity:"openai-node",id:"neural",name:"Neural"},{identity:"openai-node",id:"long-form",name:"Long-form"},{identity:"openai-node",id:"generative",name:"Generative"}]},hasProviderSpecificData:!0},{id:"azure",priority:40,alias:"azure",display:{name:"Azure OpenAI",icon:"cloud",color:"#0078D4",textIcon:"AZ",website:"https://azure.microsoft.com/en-us/products/ai-services/openai-service",notice:{apiKeyUrl:"https://portal.azure.com/#view/Microsoft_Azure_ProjectOxford/CognitiveServicesHub/~/OpenAI"}},category:"apikey",hasProviderSpecificData:!0,transport:{identity:"openai-node",baseUrl:"",headers:{}}},{id:"black-forest-labs",priority:50,alias:"black-forest-labs",aliases:["bfl"],uiAlias:"bfl",display:{name:"Black Forest Labs",icon:"image",color:"#111827",textIcon:"BF",website:"https://blackforestlabs.ai",notice:{apiKeyUrl:"https://api.bfl.ai"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"flux-pro-1.1",name:"FLUX Pro 1.1",params:["n","size"],kind:"image"},{id:"flux-pro-1.1-ultra",name:"FLUX Pro 1.1 Ultra",params:["size"],kind:"image"},{id:"flux-pro",name:"FLUX Pro",params:["n","size"],kind:"image"},{id:"flux-dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"flux-kontext-pro",name:"FLUX Kontext Pro (Edit)",params:["size"],capabilities:["edit"],kind:"image"},{id:"flux-kontext-max",name:"FLUX Kontext Max (Edit)",params:["size"],capabilities:["edit"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://api.bfl.ai/v1"}},{id:"blackbox",priority:50,alias:"blackbox",aliases:["bb"],uiAlias:"bb",display:{name:"Blackbox AI",icon:"smart_toy",color:"#5B5FEF",textIcon:"BB",website:"https://blackbox.ai",notice:{apiKeyUrl:"https://www.blackbox.ai/api-management"}},category:"apikey",serviceKinds:["llm"],thinkingConfig:{options:["auto","none","low","medium","high","xhigh"],defaultMode:"auto"},transport:{identity:"openai-node",baseUrl:"https://api.blackbox.ai/v1/chat/completions",thinkingFormat:"openai"},models:[{id:"claude-fable-5",name:"Claude Fable 5",upstreamModelId:"blackboxai/anthropic/claude-fable-5"},{id:"claude-opus-4.8",name:"Claude Opus 4.8",upstreamModelId:"blackboxai/anthropic/claude-opus-4.8"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6",upstreamModelId:"blackboxai/anthropic/claude-sonnet-4.6"},{id:"gpt-5.5",name:"GPT-5.5",upstreamModelId:"blackboxai/openai/gpt-5.5"},{id:"gpt-5.4-pro",name:"GPT-5.4 Pro",upstreamModelId:"blackboxai/openai/gpt-5.4-pro"},{id:"gpt-5.4",name:"GPT-5.4",upstreamModelId:"blackboxai/openai/gpt-5.4"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",upstreamModelId:"blackboxai/openai/gpt-5.3-codex"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano",upstreamModelId:"blackboxai/openai/gpt-5.4-nano"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",upstreamModelId:"blackboxai/deepseek/deepseek-v4-flash"},{id:"grok-4.3",name:"Grok 4.3",upstreamModelId:"blackboxai/x-ai/grok-4.3"}]},{id:"brave-search",alias:"brave",display:{name:"Brave Search",icon:"travel_explore",color:"#FB542B",textIcon:"BR",website:"https://brave.com/search/api",notice:{apiKeyUrl:"https://api-dashboard.search.brave.com/app/keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://api.search.brave.com/res/v1",method:"GET",authType:"apikey",authHeader:"x-subscription-token",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"byteplus",priority:70,alias:"byteplus",aliases:["bpm"],uiAlias:"bpm",display:{name:"BytePlus ModelArk",icon:"cloud",color:"#2563EB",textIcon:"BP",website:"https://console.byteplus.com/ark",notice:{text:"Free credits for new accounts. Access to Seed 2.0, Kimi K2 Thinking, GLM 4.7, GPT-OSS-120B models.",apiKeyUrl:"https://console.byteplus.com/ark/region:ark+ap-southeast-1/apiKey"}},category:"freeTier",transport:{identity:"openai-node",baseUrl:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",headers:{}},models:[{id:"seed-2-0-pro-260328",name:"Seed 2.0 Pro"},{id:"seed-2-0-code-preview-260328",name:"Seed 2.0 Code Preview"},{id:"seed-2-0-mini-260215",name:"Seed 2.0 Mini"},{id:"seed-2-0-lite-260228",name:"Seed 2.0 Lite"},{id:"kimi-k2-thinking-251104",name:"Kimi K2 Thinking"},{id:"glm-4-7-251222",name:"GLM 4.7"},{id:"gpt-oss-120b-250805",name:"GPT-OSS-120B"}],serviceKinds:["llm"]},{id:"cartesia",alias:"cartesia",display:{name:"Cartesia",icon:"spatial_audio",color:"#FF4F8B",textIcon:"CA",website:"https://cartesia.ai",notice:{apiKeyUrl:"https://play.cartesia.ai/keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{identity:"openai-node",baseUrl:"https://api.cartesia.ai/tts/bytes",authType:"apikey",authHeader:"x-api-key",format:"cartesia",models:[{id:"sonic-2",name:"Sonic 2"},{identity:"openai-node",id:"sonic-3",name:"Sonic 3"}]},hidden:!0},{id:"cerebras",priority:60,alias:"cerebras",display:{name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai",notice:{apiKeyUrl:"https://cloud.cerebras.ai/platform"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.cerebras.ai/v1/chat/completions",validateUrl:"https://api.cerebras.ai/v1/models",quirks:{dropClientMetadata:!0}},models:[{id:"gpt-oss-120b",name:"GPT OSS 120B"},{id:"zai-glm-4.7",name:"ZAI GLM 4.7"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"llama-4-scout-17b-16e-instruct",name:"Llama 4 Scout"},{id:"qwen-3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B"},{id:"qwen-3-32b",name:"Qwen3 32B"}]},{id:"chutes",priority:70,alias:"chutes",aliases:["ch"],uiAlias:"ch",display:{name:"Chutes AI",icon:"water_drop",color:"#ffffffff",textIcon:"CH",website:"https://chutes.ai",notice:{apiKeyUrl:"https://chutes.ai/app/api"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://llm.chutes.ai/v1/chat/completions",validateUrl:"https://llm.chutes.ai/v1/models"}},{id:"claude",priority:10,alias:"cc",uiAlias:"cc",display:{name:"Claude Code",icon:"smart_toy",color:"#D97757",website:"https://claude.ai",notice:{signupUrl:"https://claude.ai"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",transport:{identity:"claude-cli",baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Dangerous-Direct-Browser-Access":"true"},quirks:{cloakToolsOnOAuth:!0},auth:{apiKey:{header:"x-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"}},usage:{oauthUrl:"https://api.anthropic.com/api/oauth/usage",orgUrl:"https://api.anthropic.com/v1/organizations/{org_id}/usage",settingsUrl:"https://api.anthropic.com/v1/settings"}},models:[{id:"claude-fable-5",name:"Claude Fable 5"},{id:"claude-fable-5-1",name:"Claude Fable 5.1"},{id:"claude-opus-5",name:"Claude Opus 5"},{id:"claude-sonnet-5",name:"Claude Sonnet 5"},{id:"claude-opus-4-8",name:"Claude Opus 4.8"},{id:"claude-opus-4-7",name:"Claude Opus 4.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4-5-20251101",name:"Claude 4.5 Opus"},{id:"claude-haiku-4-5-20251001",name:"Claude 4.5 Haiku"},{id:"claude-sonnet-4-5-20250929",name:"Claude 4.5 Sonnet"},{id:"claude-opus-4-1-20250805",name:"Claude 4.1 Opus"},{id:"claude-opus-4-20250514",name:"Claude 4 Opus"},{id:"claude-sonnet-4-20250514",name:"Claude 4 Sonnet"},{id:"claude-3-7-sonnet-20250219",name:"Claude 3.7 Sonnet"},{id:"claude-3-5-haiku-20241022",name:"Claude 3.5 Haiku"}],oauth:{clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",authorizeUrl:"https://claude.ai/oauth/authorize",tokenUrl:"https://api.anthropic.com/v1/oauth/token",scopes:["org:create_api_key","user:profile","user:inference"],codeChallengeMethod:"S256",refreshLeadMs:144e5,refresh:{encoding:"json"}},features:{usage:!0}},{id:"cline",priority:80,alias:"cl",uiAlias:"cl",display:{name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL",website:"https://cline.bot",notice:{signupUrl:"https://cline.bot"}},category:"oauth",transport:{identity:"cline",baseUrl:"https://api.cline.bot/api/v1/chat/completions",tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["clineHeaders"]}},models:[{id:"anthropic/claude-opus-4.7",name:"Claude Opus 4.7"},{id:"anthropic/claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"anthropic/claude-opus-4.6",name:"Claude Opus 4.6"},{id:"openai/gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"openai/gpt-5.4",name:"GPT-5.4"},{id:"google/gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"google/gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"kwaipilot/kat-coder-pro",name:"KAT Coder Pro"}],oauth:{appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"}},{id:"clinepass",priority:85,alias:"clinepass",aliases:["cline-pass"],uiAlias:"clinepass",display:{name:"ClinePass",icon:"vpn_key",color:"#5B9BD5",textIcon:"CP",website:"https://cline.bot",notice:{signupUrl:"https://app.cline.bot"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{identity:"cline",baseUrl:"https://api.cline.bot/api/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["clineHeaders"]}},models:[{id:"cline-pass/glm-5.2",name:"GLM-5.2 (ClinePass)"},{id:"cline-pass/kimi-k2.7-code",name:"Kimi K2.7 Code (ClinePass)"},{id:"cline-pass/kimi-k2.6",name:"Kimi K2.6 (ClinePass)"},{id:"cline-pass/deepseek-v4-pro",name:"DeepSeek V4 Pro (ClinePass)"},{id:"cline-pass/deepseek-v4-flash",name:"DeepSeek V4 Flash (ClinePass)"},{id:"cline-pass/mimo-v2.5",name:"MiMo-V2.5 (ClinePass)"},{id:"cline-pass/mimo-v2.5-pro",name:"MiMo-V2.5-Pro (ClinePass)"},{id:"cline-pass/minimax-m3",name:"MiniMax M3 (ClinePass)"},{id:"cline-pass/qwen3.7-max",name:"Qwen3.7 Max (ClinePass)"},{id:"cline-pass/qwen3.7-plus",name:"Qwen3.7 Plus (ClinePass)"}],oauth:{appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},thinkingConfig:{options:["auto","on","off"],defaultMode:"auto"}},{id:"cloudflare-ai",priority:60,hasFree:!0,alias:"cloudflare-ai",aliases:["cf"],uiAlias:"cf",display:{name:"Cloudflare",icon:"cloud",color:"#F38020",textIcon:"CF",website:"https://developers.cloudflare.com/workers-ai/",notice:{text:"Workers AI free tier. Requires a Cloudflare API token and Account ID.",apiKeyUrl:"https://dash.cloudflare.com/profile/api-tokens"}},category:"freeTier",hasProviderSpecificData:!0,transport:{identity:"openai-node",baseUrl:"https://api.cloudflare.com/client/v4/accounts/{accountId}/ai/v1/chat/completions",thinkingFormat:"openai"},models:[{id:"@cf/meta/llama-3.2-1b-instruct",name:"Llama 3.2 1B Instruct"},{id:"@cf/meta/llama-3.2-3b-instruct",name:"Llama 3.2 3B Instruct"},{id:"@cf/meta/llama-3.1-8b-instruct-fp8-fast",name:"Llama 3.1 8B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.1-8b-instruct-awq",name:"Llama 3.1 8B Instruct AWQ"},{id:"@cf/mistralai/mistral-small-3.1-24b-instruct",name:"Mistral Small 3.1 24B Instruct"},{id:"@cf/meta/llama-3.1-70b-instruct-fp8-fast",name:"Llama 3.1 70B Instruct FP8 Fast"},{id:"@cf/meta/llama-3.3-70b-instruct-fp8-fast",name:"Llama 3.3 70B Instruct FP8 Fast"},{id:"@cf/deepseek-ai/deepseek-r1-distill-qwen-32b",name:"DeepSeek R1 Distill Qwen 32B"},{id:"@cf/moonshotai/kimi-k2.5",name:"Kimi K2.5"},{id:"@cf/moonshotai/kimi-k2.6",name:"Kimi K2.6"},{id:"@cf/zai-org/glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"@cf/qwen/qwq-32b",name:"QwQ 32B"},{id:"@cf/qwen/qwen2.5-coder-32b-instruct",name:"Qwen 2.5 Coder 32B Instruct"},{id:"@cf/black-forest-labs/flux-2-klein-9b",name:"FLUX.2 Klein 9B",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-2-klein-4b",name:"FLUX.2 Klein 4B",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-2-dev",name:"FLUX.2 Dev",params:["size"],kind:"image"},{id:"@cf/leonardo/lucid-origin",name:"Lucid Origin",params:["size"],kind:"image"},{id:"@cf/leonardo/phoenix-1.0",name:"Phoenix 1.0",params:["size"],kind:"image"},{id:"@cf/black-forest-labs/flux-1-schnell",name:"FLUX.1 Schnell",params:["size"],kind:"image"},{id:"@cf/bytedance/stable-diffusion-xl-lightning",name:"SDXL Lightning",params:["size"],kind:"image"},{id:"@cf/lykon/dreamshaper-8-lcm",name:"DreamShaper 8 LCM",params:["size"],kind:"image"},{id:"@cf/runwayml/stable-diffusion-v1-5-img2img",name:"Stable Diffusion v1.5 Img2Img",params:["size"],capabilities:["edit"],kind:"image"},{id:"@cf/runwayml/stable-diffusion-v1-5-inpainting",name:"Stable Diffusion v1.5 Inpainting",params:["size"],capabilities:["edit","mask"],kind:"image"},{id:"@cf/stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",params:["size"],kind:"image"}],serviceKinds:["llm","image"],imageConfig:{identity:"openai-node",baseUrl:"https://api.cloudflare.com/client/v4/accounts"}},{id:"codebuddy-cn",alias:"cbcn",uiAlias:"cbcn",hidden:!1,priority:90,display:{name:"CodeBuddy CN",icon:"smart_toy",color:"#006EFF",website:"https://copilot.tencent.com",notice:{signupUrl:"https://copilot.tencent.com"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{identity:"openai-node",baseUrl:"https://copilot.tencent.com/v2/chat/completions",forceStream:!0,thinkingFormat:"openai",headers:{"User-Agent":"CLI/2.108.1 CodeBuddy/2.108.1","X-Product":"SaaS","X-IDE-Type":"CLI","X-IDE-Name":"CLI","x-requested-with":"XMLHttpRequest","x-codebuddy-request":"1"},auth:{combined:!0,header:"Authorization",scheme:"bearer"},usage:{url:"https://copilot.tencent.com/v2/billing/meter/get-user-resource"}},models:[{id:"glm-5.2",name:"GLM-5.2"},{id:"glm-5.1",name:"GLM-5.1"},{id:"glm-5.0",name:"GLM-5.0"},{id:"glm-5.0-turbo",name:"GLM-5.0-Turbo"},{id:"glm-5v-turbo",name:"GLM-5v-Turbo"},{id:"glm-4.7",name:"GLM-4.7"},{id:"minimax-m3",name:"MiniMax-M3"},{id:"minimax-m2.7",name:"MiniMax-M2.7"},{id:"kimi-k2.7",name:"Kimi-K2.7-Code"},{id:"kimi-k2.6",name:"Kimi-K2.6"},{id:"kimi-k2.5",name:"Kimi-K2.5"},{id:"hy3-preview",name:"Hy3 Preview"},{id:"deepseek-v4-pro",name:"DeepSeek-V4-Pro"},{id:"deepseek-v4-flash",name:"DeepSeek-V4-Flash"},{id:"deepseek-v3-2-volc",name:"DeepSeek-V3.2"}],oauth:{baseUrl:"https://copilot.tencent.com",stateUrl:"https://copilot.tencent.com/v2/plugin/auth/state",tokenUrl:"https://copilot.tencent.com/v2/plugin/auth/token",refreshUrl:"https://copilot.tencent.com/v2/plugin/auth/token/refresh",userAgent:"CLI/2.63.2 CodeBuddy/2.63.2",platform:"CLI",pollInterval:5e3},features:{usage:!0,usageApikey:!0}},{id:"codex",priority:30,alias:"cx",uiAlias:"cx",display:{name:"OpenAI Codex",icon:"code",color:"#3B82F6",website:"https://chatgpt.com/codex",notice:{signupUrl:"https://chatgpt.com/codex"},deprecated:!0,deprecationNotice:"RISK_NOTICE",kindNotice:{image:"Requires a ChatGPT Plus (or higher) account. Free accounts are not supported for image generation."}},category:"oauth",thinkingConfig:{options:["auto","none","low","medium","high"],defaultMode:"auto"},transport:{identity:"codex-cli",baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",forceStream:!0,usage:{url:"https://chatgpt.com/backend-api/wham/usage",resetCreditsUrl:"https://chatgpt.com/backend-api/wham/rate-limit-reset-credits",resetCreditsConsumeUrl:"https://chatgpt.com/backend-api/wham/rate-limit-reset-credits/consume"}},models:[{id:"gpt-5.5",name:"GPT 5.5"},{id:"gpt-5.5-review",name:"GPT 5.5 Review",upstreamModelId:"gpt-5.5",quotaFamily:"review"},{id:"gpt-5.4",name:"GPT 5.4"},{id:"gpt-5.4-review",name:"GPT 5.4 Review",upstreamModelId:"gpt-5.4",quotaFamily:"review"},{id:"gpt-5.4-mini",name:"GPT 5.4 Mini"},{id:"gpt-5.4-mini-review",name:"GPT 5.4 Mini Review",upstreamModelId:"gpt-5.4-mini",quotaFamily:"review"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"gpt-5.3-codex-review",name:"GPT 5.3 Codex Review",upstreamModelId:"gpt-5.3-codex",quotaFamily:"review"},{id:"gpt-5.3-codex-xhigh",name:"GPT 5.3 Codex (xHigh)"},{id:"gpt-5.3-codex-xhigh-review",name:"GPT 5.3 Codex (xHigh) Review",upstreamModelId:"gpt-5.3-codex-xhigh",quotaFamily:"review"},{id:"gpt-5.3-codex-high",name:"GPT 5.3 Codex (High)"},{id:"gpt-5.3-codex-high-review",name:"GPT 5.3 Codex (High) Review",upstreamModelId:"gpt-5.3-codex-high",quotaFamily:"review"},{id:"gpt-5.3-codex-low",name:"GPT 5.3 Codex (Low)"},{id:"gpt-5.3-codex-low-review",name:"GPT 5.3 Codex (Low) Review",upstreamModelId:"gpt-5.3-codex-low",quotaFamily:"review"},{id:"gpt-5.3-codex-none",name:"GPT 5.3 Codex (None)"},{id:"gpt-5.3-codex-none-review",name:"GPT 5.3 Codex (None) Review",upstreamModelId:"gpt-5.3-codex-none",quotaFamily:"review"},{id:"gpt-5.3-codex-spark",name:"GPT 5.3 Codex Spark"},{id:"gpt-5.3-codex-spark-review",name:"GPT 5.3 Codex Spark Review",upstreamModelId:"gpt-5.3-codex-spark",quotaFamily:"review"},{id:"gpt-5.5-image",name:"GPT 5.5 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.4-image",name:"GPT 5.4 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"},{id:"gpt-5.3-image",name:"GPT 5.3 Image",capabilities:["text2img","edit"],params:["size","quality","background","image_detail","output_format"],kind:"image"}],serviceKinds:["llm","image"],oauth:{clientId:"app_EMoamEEZ73f0CkXaXp7hrann",authorizeUrl:"https://auth.openai.com/oauth/authorize",tokenUrl:"https://auth.openai.com/oauth/token",scope:"openid profile email offline_access",codeChallengeMethod:"S256",fixedPort:1455,callbackPath:"/auth/callback",extraParams:{id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:"codex_cli_rs"},refreshLeadMs:432e6,maxRefreshAgeMs:6912e5,trackRefreshAt:!0,acceptsRawAccessToken:!0,rawAccessTokenIssuers:["https://auth.openai.com","https://auth0.openai.com"]},features:{usage:!0}},{id:"cohere",priority:90,alias:"cohere",display:{name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com",notice:{apiKeyUrl:"https://dashboard.cohere.com/api-keys"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.cohere.ai/v1/chat/completions",validateUrl:"https://api.cohere.ai/v1/models"},models:[{id:"command-r-plus-08-2024",name:"Command R+ (Aug 2024)"},{id:"command-r-08-2024",name:"Command R (Aug 2024)"},{id:"command-a-03-2025",name:"Command A (Mar 2025)"}]},{id:"comfyui",priority:120,alias:"comfyui",display:{name:"ComfyUI",icon:"account_tree",color:"#4CAF50",textIcon:"CF",website:"https://github.com/comfyanonymous/ComfyUI"},category:"apikey",transport:null,models:[{id:"flux-dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"sdxl",name:"SDXL",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"http://localhost:8188"}},{id:"commandcode",priority:100,alias:"commandcode",aliases:["cmc"],uiAlias:"cmc",display:{name:"Command Code",icon:"smart_toy",color:"#000000",textIcon:"CC",website:"https://commandcode.ai",notice:{text:"Use your CommandCode CLI API key (starts with user_...) from ~/.commandcode/auth.json or commandcode.ai/studio.",apiKeyUrl:"https://commandcode.ai/studio"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.commandcode.ai/alpha/generate",format:"commandcode",forceStream:!0,headers:{"x-command-code-version":"0.25.7","x-cli-environment":"cli"}},modelsFetcher:{url:"https://api.commandcode.ai/provider/v1/models",method:"GET",type:"openai",requiresAuth:!0},models:[{id:"deepseek/deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek/deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"moonshotai/Kimi-K2.7-Code",name:"Kimi K2.7 Code"},{id:"moonshotai/Kimi-K2.7-Code-Highspeed",name:"Kimi K2.7 Code HighSpeed"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"zai-org/GLM-5.2",name:"GLM 5.2"},{id:"zai-org/GLM-5.2-Fast",name:"GLM 5.2 Fast"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"zai-org/GLM-5",name:"GLM 5"},{id:"MiniMaxAI/MiniMax-M3",name:"MiniMax M3"},{id:"MiniMaxAI/MiniMax-M2.7",name:"MiniMax M2.7"},{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5"},{id:"xiaomi/mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"xiaomi/mimo-v2.5",name:"MiMo V2.5"},{id:"Qwen/Qwen3.6-Max-Preview",name:"Qwen 3.6 Max Preview"},{id:"Qwen/Qwen3.6-Plus",name:"Qwen 3.6 Plus"},{id:"Qwen/Qwen3.7-Max",name:"Qwen 3.7 Max"},{id:"Qwen/Qwen3.7-Plus",name:"Qwen 3.7 Plus"},{id:"stepfun/Step-3.7-Flash",name:"Step 3.7 Flash"},{id:"stepfun/Step-3.5-Flash",name:"Step 3.5 Flash"},{id:"tencent/Hy3",name:"Tencent Hy3"},{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra"}]},{id:"coqui",alias:"coqui",display:{name:"Coqui TTS",icon:"record_voice_over",color:"#10B981",textIcon:"CQ",website:"https://github.com/coqui-ai/TTS"},category:"freeTier",authType:"none",serviceKinds:["tts"],noAuth:!0,ttsConfig:{identity:"openai-node",baseUrl:"http://localhost:5002/api/tts",authType:"none",authHeader:"none",format:"coqui",models:[{id:"tts_models/en/ljspeech/tacotron2-DDC",name:"Tacotron2 DDC (LJSpeech)"}]},hidden:!0},{id:"cursor",priority:50,alias:"cu",uiAlias:"cu",display:{name:"Cursor IDE",icon:"edit_note",color:"#00D4AA",website:"https://cursor.com",notice:{signupUrl:"https://cursor.com"}},category:"oauth",transport:{identity:"openai-node",baseUrl:"https://api2.cursor.sh",chatPath:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",format:"cursor",headers:{"connect-accept-encoding":"gzip","connect-protocol-version":"1","Content-Type":"application/connect+proto","User-Agent":"connect-es/1.6.1"},clientVersion:"3.1.0"},models:[{id:"default",name:"Auto (Server Picks)"},{id:"claude-4.5-opus-high-thinking",name:"Claude 4.5 Opus High Thinking"},{id:"claude-4.5-opus-high",name:"Claude 4.5 Opus High"},{id:"claude-4.5-sonnet-thinking",name:"Claude 4.5 Sonnet Thinking"},{id:"claude-4.5-sonnet",name:"Claude 4.5 Sonnet"},{id:"claude-4.5-haiku",name:"Claude 4.5 Haiku"},{id:"claude-4.5-opus",name:"Claude 4.5 Opus"},{id:"gpt-5.2-codex",name:"GPT 5.2 Codex"},{id:"claude-4.6-opus-max",name:"Claude 4.6 Opus Max"},{id:"claude-4.6-sonnet-medium-thinking",name:"Claude 4.6 Sonnet Medium Thinking"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gpt-5.2",name:"GPT 5.2"},{id:"gpt-5.3-codex",name:"GPT 5.3 Codex"},{id:"composer-2.5",name:"Composer 2.5"},{id:"composer-2.5-fast",name:"Composer 2.5 Fast"}],oauth:{apiEndpoint:"https://api2.cursor.sh",chatEndpoint:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",modelsEndpoint:"/aiserver.v1.AiService/GetUsableModels",api3Endpoint:"https://api3.cursor.sh",agentEndpoint:"https://agent.api5.cursor.sh",agentNonPrivacyEndpoint:"https://agentn.api5.cursor.sh",clientVersion:"3.1.0",clientType:"ide",dbKeys:{accessToken:"cursorAuth/accessToken",machineId:"storage.serviceMachineId"}}},{id:"deepgram",priority:20,alias:"deepgram",aliases:["dg"],uiAlias:"dg",display:{name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com",notice:{text:"$200 free credit on signup (no card required). Aura-1: $0.015/1k chars, Aura-2: $0.030/1k chars (Pay-As-You-Go).",apiKeyUrl:"https://console.deepgram.com/api-keys"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.deepgram.com/v1/listen"},models:[{id:"nova-3",name:"Nova 3",params:["language"],kind:"stt"},{id:"nova-2",name:"Nova 2",params:["language"],kind:"stt"},{id:"whisper-large",name:"Whisper Large",params:["language"],kind:"stt"},{id:"nova",name:"Nova",kind:"stt"}],serviceKinds:["stt"],sttConfig:{identity:"openai-node",baseUrl:"https://api.deepgram.com/v1/listen",authType:"apikey",authHeader:"token",format:"deepgram"}},e,{id:"edge-tts",alias:"edge-tts",display:{name:"Edge TTS",icon:"record_voice_over",color:"#0078D4",textIcon:"ET"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{identity:"openai-node",baseUrl:"edge-tts",authType:"none",authHeader:"none",format:"edge-tts",models:[]}},{id:"elevenlabs",alias:"el",display:{name:"ElevenLabs",icon:"record_voice_over",color:"#6C47FF",textIcon:"EL",website:"https://elevenlabs.io",notice:{apiKeyUrl:"https://elevenlabs.io/app/settings/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{identity:"openai-node",baseUrl:"https://api.elevenlabs.io/v1/text-to-speech",authType:"apikey",authHeader:"xi-api-key",format:"elevenlabs",models:[{id:"eleven_multilingual_v2",name:"Eleven Multilingual v2"},{identity:"openai-node",id:"eleven_turbo_v2_5",name:"Eleven Turbo v2.5"}]}},{id:"exa",alias:"exa",display:{name:"Exa",icon:"manage_search",color:"#2563EB",textIcon:"EX",website:"https://exa.ai",notice:{apiKeyUrl:"https://dashboard.exa.ai/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch","webFetch"],searchConfig:{identity:"openai-node",baseUrl:"https://api.exa.ai/search",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.007,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{identity:"openai-node",baseUrl:"https://api.exa.ai/contents",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:1e3,formats:["text","markdown"],maxCharacters:1e5,timeoutMs:15e3}},{id:"fal-ai",priority:90,hasFree:!0,alias:"fal-ai",aliases:["fal"],uiAlias:"fal",display:{name:"Fal.ai",icon:"image",color:"#2563EB",textIcon:"FL",website:"https://fal.ai",notice:{apiKeyUrl:"https://fal.ai/dashboard/keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"fal-ai/flux/schnell",name:"FLUX Schnell",params:["n","size"],kind:"image"},{id:"fal-ai/flux/dev",name:"FLUX Dev",params:["n","size"],kind:"image"},{id:"fal-ai/flux-pro/v1.1",name:"FLUX Pro v1.1",params:["n","size"],kind:"image"},{id:"fal-ai/flux-pro/v1.1-ultra",name:"FLUX Pro v1.1 Ultra",params:["n","size"],kind:"image"},{id:"fal-ai/recraft-v3",name:"Recraft V3",params:["n","size","style"],kind:"image"},{id:"fal-ai/ideogram/v2",name:"Ideogram V2",params:["n","size","style"],kind:"image"},{id:"fal-ai/stable-diffusion-v35-large",name:"SD 3.5 Large",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://queue.fal.run"}},{id:"firecrawl",alias:"firecrawl",display:{name:"Firecrawl",icon:"local_fire_department",color:"#F59E0B",textIcon:"FC",website:"https://firecrawl.dev",notice:{apiKeyUrl:"https://www.firecrawl.dev/app/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webFetch"],fetchConfig:{identity:"openai-node",baseUrl:"https://api.firecrawl.dev/v1/scrape",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.002,freeMonthlyQuota:500,formats:["markdown","html","text"],maxCharacters:2e5,timeoutMs:3e4}},{id:"fireworks",priority:50,alias:"fireworks",display:{name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai",notice:{apiKeyUrl:"https://fireworks.ai/account/api-keys"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.fireworks.ai/inference/v1/chat/completions",validateUrl:"https://api.fireworks.ai/inference/v1/models"},models:[{id:"accounts/fireworks/models/deepseek-v3p1",name:"DeepSeek V3.1"},{id:"accounts/fireworks/models/llama-v3p3-70b-instruct",name:"Llama 3.3 70B"},{id:"accounts/fireworks/models/qwen3-235b-a22b",name:"Qwen3 235B"},{id:"nomic-ai/nomic-embed-text-v1.5",name:"Nomic Embed Text v1.5",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.fireworks.ai/inference/v1/embeddings"}},{id:"gemini-cli",priority:20,hasFree:!0,alias:"gc",uiAlias:"gc",display:{name:"Gemini CLI",icon:"terminal",color:"#4285F4",website:"https://github.com/google-gemini/gemini-cli",notice:{signupUrl:"https://github.com/google-gemini/gemini-cli"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"free",transport:{identity:"gemini-cli",baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",usage:{quotaUrl:"https://cloudcode-pa.googleapis.com/v1internal:retrieveUserQuota",loadCodeAssistUrl:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist"},clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"},models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3-pro-preview",name:"Gemini 3 Pro Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"}],oauth:{authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile"],refresh:{encoding:"form"}},features:{usage:!0}},{id:"gemini",priority:50,hasFree:!0,alias:"gemini",display:{name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev",notice:{apiKeyUrl:"https://aistudio.google.com/app/apikey"}},category:"freeTier",mediaPriority:1,transport:{identity:"openai-node",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",format:"gemini",clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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",auth:{apiKey:{header:"x-goog-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"}}},models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite"},{id:"gemma-4-31b-it",name:"Gemma 4 31B IT"},{id:"gemini-embedding-2-preview",name:"Gemini Embedding 2 Preview",kind:"embedding"},{id:"gemini-embedding-001",name:"Gemini Embedding 001",kind:"embedding"},{id:"text-embedding-005",name:"Text Embedding 005",kind:"embedding"},{id:"text-embedding-004",name:"Text Embedding 004 (Legacy)",kind:"embedding"},{id:"gemini-3.1-flash-image-preview",name:"Gemini 3.1 Flash Image (Nano Banana 2)",params:[],kind:"image"},{id:"gemini-3-pro-image-preview",name:"Gemini 3 Pro Image (Nano Banana Pro)",params:[],kind:"image"},{id:"gemini-2.5-flash-image",name:"Gemini 2.5 Flash Image (Nano Banana)",params:[],kind:"image"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro (Best)",params:["language","prompt"],kind:"stt"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash",params:["language","prompt"],kind:"stt"},{id:"gemini-2.5-flash-lite",name:"Gemini 2.5 Flash Lite (Cheapest)",params:["language","prompt"],kind:"stt"},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",params:["language","prompt"],kind:"stt"},{id:"gemini-3.1-flash-tts-preview",name:"Gemini 3.1 Flash TTS",kind:"tts"},{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",kind:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",kind:"tts"},{id:"embedding-001",name:"Embedding 001",dimensions:768,kind:"embedding"}],serviceKinds:["llm","embedding","image","imageToText","webSearch","tts","stt"],ttsConfig:{identity:"openai-node",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-tts"},sttConfig:{identity:"openai-node",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-stt"},embeddingConfig:{identity:"openai-node",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key"},imageConfig:{identity:"openai-node",baseUrl:"https://generativelanguage.googleapis.com/v1beta/models"},searchViaChat:{defaultModel:"gemini-2.5-flash",endpoint:"https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent",pricingUrl:"https://ai.google.dev/pricing",freeTier:"Free tier: 15 RPM, 1M tokens/day on gemini-2.5-flash via AI Studio."}},{id:"github",priority:40,alias:"gh",uiAlias:"gh",display:{name:"GitHub Copilot",icon:"code",color:"#333333",website:"https://github.com/features/copilot",notice:{signupUrl:"https://github.com/features/copilot"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"oauth",transport:{identity:"copilot",baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",usage:{url:"https://api.github.com/copilot_internal/user"}},models:[{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.2-codex",name:"GPT-5.2 Codex"},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex"},{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-sonnet-4.6",name:"Claude Sonnet 4.6"},{id:"claude-opus-4.6",name:"Claude Opus 4.6"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash"},{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro"},{id:"grok-code-fast-1",name:"Grok Code Fast 1"},{id:"oswe-vscode-prime",name:"Raptor Mini"},{id:"goldeneye-free-auto",name:"GoldenEye"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small (GitHub)",kind:"embedding"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large (GitHub)",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{identity:"copilot",baseUrl:"https://models.github.ai/inference/embeddings",authType:"apikey",authHeader:"bearer"},oauth:{clientId:"Iv1.b507a08c87ecfe98",authorizeUrl:"https://github.com/login/oauth/authorize",deviceCodeUrl:"https://github.com/login/device/code",tokenUrl:"https://github.com/login/oauth/access_token",userInfoUrl:"https://api.github.com/user",scopes:"read:user",apiVersion:"2022-11-28",copilotTokenUrl:"https://api.github.com/copilot_internal/v2/token"},features:{usage:!0}},{id:"gitlab",hidden:!0,priority:100,display:{name:"GitLab Duo",icon:"code",color:"#FC6D26",textIcon:"GL",website:"https://gitlab.com",notice:{signupUrl:"https://gitlab.com"}},category:"oauth",transport:{identity:"openai-node",baseUrl:"https://gitlab.com/api/v4/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},oauth:{defaultBaseUrl:"https://gitlab.com",authorizeUrlPath:"/oauth/authorize",tokenUrlPath:"/oauth/token",userInfoUrlPath:"/api/v4/user",scope:"api read_user",codeChallengeMethod:"S256"}},{id:"glm-cn",priority:130,alias:"glm-cn",display:{name:"GLM (China)",icon:"code",color:"#DC2626",textIcon:"GC",website:"https://open.bigmodel.cn",notice:{apiKeyUrl:"https://open.bigmodel.cn/usercenter/apikeys"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",headers:{},usage:{url:"https://open.bigmodel.cn/api/monitor/usage/quota/limit"}},models:[{id:"glm-5.3",name:"GLM 5.3"},{id:"glm-5.2",name:"GLM 5.2"},{id:"glm-5.1",name:"GLM 5.1"},{id:"glm-5",name:"GLM 5"},{id:"glm-4.7",name:"GLM-4.7"},{id:"glm-4.6",name:"GLM-4.6"},{id:"glm-4.5-air",name:"GLM-4.5-Air"}],features:{usage:!0,usageApikey:!0}},f,{id:"google-pse",alias:"gpse",display:{name:"Google PSE",icon:"search",color:"#4285F4",textIcon:"GP",website:"https://programmablesearchengine.google.com",notice:{apiKeyUrl:"https://programmablesearchengine.google.com/controlpanel/create"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://www.googleapis.com/customsearch/v1",method:"GET",authType:"apikey",authHeader:"key",costPerQuery:.005,freeMonthlyQuota:3e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:10,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"google-tts",alias:"google-tts",display:{name:"Google TTS",icon:"record_voice_over",color:"#4285F4",textIcon:"GT"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{identity:"openai-node",baseUrl:"google-tts",authType:"none",authHeader:"none",format:"google-tts",models:[]}},g.A,{id:"grok-web",priority:150,alias:"grok-web",aliases:["gw"],uiAlias:"gw",display:{name:"Grok Web (Subscription)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"GW",website:"https://grok.com"},category:"webCookie",authType:"cookie",authHint:"Paste your sso= cookie value from grok.com",transport:{identity:"chrome",baseUrl:"https://grok.com/rest/app-chat/conversations/new",format:"grok-web",authType:"cookie"},models:[{id:"grok-3",name:"Grok 3"},{id:"grok-3-mini",name:"Grok 3 Mini (Thinking)"},{id:"grok-3-thinking",name:"Grok 3 Thinking"},{id:"grok-4",name:"Grok 4"},{id:"grok-4-mini",name:"Grok 4 Mini (Thinking)"},{id:"grok-4-thinking",name:"Grok 4 Thinking"},{id:"grok-4-heavy",name:"Grok 4 Heavy (SuperGrok)"},{id:"grok-4.1-mini",name:"Grok 4.1 Mini (Thinking)"},{id:"grok-4.1-fast",name:"Grok 4.1 Fast"},{id:"grok-4.1-expert",name:"Grok 4.1 Expert"},{id:"grok-4.1-thinking",name:"Grok 4.1 Thinking"},{id:"grok-4.2",name:"Grok 4.2 (4.20 Beta)"}],passthroughModels:!0},{id:"groq",priority:60,hasFree:!0,alias:"groq",display:{name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com",notice:{apiKeyUrl:"https://console.groq.com/keys"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.groq.com/openai/v1/chat/completions",validateUrl:"https://api.groq.com/openai/v1/models"},models:[{id:"llama-3.3-70b-versatile",name:"Llama 3.3 70B"},{id:"meta-llama/llama-4-maverick-17b-128e-instruct",name:"Llama 4 Maverick"},{id:"qwen/qwen3-32b",name:"Qwen3 32B"},{id:"openai/gpt-oss-120b",name:"GPT-OSS 120B"},{id:"whisper-large-v3",name:"Whisper Large v3",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"whisper-large-v3-turbo",name:"Whisper Large v3 Turbo",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"distil-whisper-large-v3-en",name:"Distil Whisper Large v3 EN",params:["language","response_format","temperature","prompt"],kind:"stt"}],serviceKinds:["llm","imageToText","stt"],sttConfig:{identity:"openai-node",baseUrl:"https://api.groq.com/openai/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"}},{id:"huggingface",priority:70,hasFree:!0,alias:"huggingface",aliases:["hf"],uiAlias:"hf",display:{name:"HuggingFace",icon:"face",color:"#FFD21E",textIcon:"HF",website:"https://huggingface.co",notice:{apiKeyUrl:"https://huggingface.co/settings/tokens"}},category:"apikey",authType:"apikey",hiddenKinds:["tts"],transport:null,models:[{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell",params:[],kind:"image"},{id:"stabilityai/stable-diffusion-xl-base-1.0",name:"SDXL Base 1.0",params:[],kind:"image"},{id:"openai/whisper-large-v3",name:"Whisper Large v3 (HF)",params:["language"],kind:"stt"},{id:"openai/whisper-small",name:"Whisper Small (HF)",params:["language"],kind:"stt"}],serviceKinds:["image","stt"],imageConfig:{identity:"openai-node",baseUrl:"https://api-inference.huggingface.co/models"}},{id:"hyperbolic",priority:160,alias:"hyperbolic",aliases:["hyp"],uiAlias:"hyp",display:{name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz",notice:{apiKeyUrl:"https://app.hyperbolic.xyz/settings"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.hyperbolic.xyz/v1/chat/completions",validateUrl:"https://api.hyperbolic.xyz/v1/models"},models:[{id:"Qwen/QwQ-32B",name:"QwQ 32B"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"deepseek-ai/DeepSeek-V3",name:"DeepSeek V3"},{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B"},{id:"meta-llama/Llama-3.2-3B-Instruct",name:"Llama 3.2 3B"},{id:"Qwen/Qwen2.5-72B-Instruct",name:"Qwen 2.5 72B"},{id:"Qwen/Qwen2.5-Coder-32B-Instruct",name:"Qwen 2.5 Coder 32B"},{id:"NousResearch/Hermes-3-Llama-3.1-70B",name:"Hermes 3 70B"}]},{id:"iflow",hidden:!0,priority:110,alias:"if",display:{name:"iFlow AI",icon:"water_drop",color:"#6366F1",website:"https://iflow.cn",notice:{signupUrl:"https://iflow.cn"}},category:"oauth",transport:{identity:"openai-node",baseUrl:"https://apis.iflow.cn/v1/chat/completions",thinkingFormat:"openai",headers:{"User-Agent":"iFlow-Cli"}},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-max",name:"Qwen3 Max"},{id:"qwen3-vl-plus",name:"Qwen3 VL Plus"},{id:"qwen3-max-preview",name:"Qwen3 Max Preview"},{id:"qwen3-235b",name:"Qwen3 235B A22B"},{id:"qwen3-235b-a22b-instruct",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-235b-a22b-thinking-2507",name:"Qwen3 235B A22B Thinking"},{id:"qwen3-32b",name:"Qwen3 32B"},{id:"kimi-k2",name:"Kimi K2"},{id:"deepseek-v3.2",name:"DeepSeek V3.2 Exp"},{id:"deepseek-v3.1",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-v3",name:"DeepSeek V3 671B"},{id:"deepseek-r1",name:"DeepSeek R1"},{id:"glm-4.7",name:"GLM 4.7"},{id:"iflow-rome-30ba3b",name:"iFlow ROME"}],oauth:{clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",authorizeUrl:"https://iflow.cn/oauth",tokenUrl:"https://iflow.cn/oauth/token",userInfoUrl:"https://iflow.cn/api/oauth/getUserInfo",extraParams:{loginMethod:"phone",type:"phone"},refreshLeadMs:864e5}},{id:"inworld",alias:"inworld",display:{name:"Inworld TTS",icon:"record_voice_over",color:"#FF6B6B",textIcon:"IW",website:"https://inworld.ai",notice:{text:"Free tier: 40 minutes/month TTS. Paid: TTS-1.5 Mini $0.01/min ($15/1M chars), TTS-1.5 Max $0.025/min ($30/1M chars). 270+ voices, 15 languages.",apiKeyUrl:"https://platform.inworld.ai/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{identity:"openai-node",baseUrl:"https://api.inworld.ai/tts/v1/voice",authType:"apikey",authHeader:"basic",format:"inworld",models:[{id:"inworld-tts-1.5-mini",name:"Inworld TTS 1.5 Mini ($0.01/min)"},{identity:"openai-node",id:"inworld-tts-1.5-max",name:"Inworld TTS 1.5 Max ($0.025/min)"}]}},{id:"jina-ai",alias:"jina",display:{name:"Jina AI",icon:"blur_on",color:"#2563EB",textIcon:"JA",website:"https://jina.ai",notice:{text:"10M free tokens on signup (non-commercial), no credit card required.",apiKeyUrl:"https://jina.ai/?sui=apikey"}},category:"apikey",authType:"apikey",serviceKinds:["embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.jina.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"jina-embeddings-v3",name:"Jina Embeddings v3",dimensions:1024},{identity:"openai-node",id:"jina-embeddings-v2-base-en",name:"Jina Embeddings v2 Base EN",dimensions:768},{identity:"openai-node",id:"jina-embeddings-v2-base-code",name:"Jina Embeddings v2 Base Code",dimensions:768}]}},{id:"jina-reader",alias:"jina-reader",display:{name:"Jina Reader",icon:"menu_book",color:"#000000",textIcon:"JR",website:"https://jina.ai/reader",notice:{apiKeyUrl:"https://jina.ai/?sui=apikey"}},category:"apikey",authType:"apikey",serviceKinds:["webFetch"],fetchConfig:{identity:"openai-node",baseUrl:"https://r.jina.ai",method:"GET",authType:"apikey",authHeader:"bearer",costPerQuery:0,freeMonthlyQuota:1e6,formats:["markdown","text","html"],maxCharacters:2e5,timeoutMs:3e4}},{id:"kilocode",priority:70,alias:"kc",uiAlias:"kc",display:{name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC",website:"https://kilocode.ai",notice:{signupUrl:"https://kilocode.ai"}},category:"oauth",transport:{identity:"openai-node",baseUrl:"https://api.kilo.ai/api/openrouter/chat/completions",headers:{},auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["kilocodeOrg"]}},models:[{id:"anthropic/claude-sonnet-4-20250514",name:"Claude Sonnet 4"},{id:"anthropic/claude-opus-4-20250514",name:"Claude Opus 4"},{id:"google/gemini-2.5-pro",name:"Gemini 2.5 Pro"},{id:"google/gemini-2.5-flash",name:"Gemini 2.5 Flash"},{id:"openai/gpt-4.1",name:"GPT-4.1"},{id:"openai/o3",name:"o3"},{id:"deepseek/deepseek-chat",name:"DeepSeek Chat"},{id:"deepseek/deepseek-reasoner",name:"DeepSeek Reasoner"}],modelsFetcher:{url:"https://api.kilo.ai/api/gateway/models",type:"openrouter-free"},passthroughModels:!0,oauth:{apiBaseUrl:"https://api.kilo.ai",initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"}},{id:"kimchi",priority:95,alias:"kimchi",uiAlias:"kimchi",display:{name:"Kimchi",icon:"restaurant",color:"#FF521D",textIcon:"KC",website:"https://kimchi.dev",notice:{signupUrl:"https://app.kimchi.dev"}},category:"oauth",authModes:["oauth"],hasOAuth:!0,transport:{identity:"openai-node",baseUrl:"https://llm.kimchi.dev/openai/v1/chat/completions",format:"openai",headers:{"User-Agent":"kimchi/0.1.50"},auth:{combined:!0,header:"Authorization",scheme:"bearer"}},models:[{id:"minimax-m3",name:"MiniMax-M3"},{id:"kimi-k2.7",name:"Kimi-K2.7"},{id:"kimi-k2.6",name:"Kimi-K2.6"},{id:"kimi-k2.5",name:"Kimi-K2.5"},{id:"nemotron-3-ultra-fp4",name:"Nemotron 3 Ultra FP4"},{id:"minimax-m2.7",name:"MiniMax-M2.7"},{id:"claude-opus-4-6",name:"Claude Opus 4.6"},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6"}],serviceKinds:["llm","imageToText"],oauth:{webAppUrl:"https://app.kimchi.dev",validationUrl:"https://api.cast.ai/v1/llm/openai/supported-providers",userInfoUrl:"https://app.kimchi.dev/api/v1/me",modelsUrl:"https://llm.kimchi.dev/v1/models/metadata?include_in_cli=true"},passthroughModels:!0},h,i,{id:"kiro",priority:10,alias:"kr",uiAlias:"kr",display:{name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35",website:"https://kiro.dev",notice:{signupUrl:"https://kiro.dev"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"free",transport:{identity:"openai-node",baseUrl:"https://runtime.us-east-1.kiro.dev/generateAssistantResponse",baseUrls:["https://runtime.us-east-1.kiro.dev/generateAssistantResponse","https://codewhisperer.us-east-1.amazonaws.com/generateAssistantResponse","https://q.us-east-1.amazonaws.com/generateAssistantResponse"],format:"kiro",retry:{429:0},headers:{"Content-Type":"application/json",Accept:"application/vnd.amazon.eventstream","X-Amz-Target":"AmazonCodeWhispererStreamingService.GenerateAssistantResponse","User-Agent":"AWS-SDK-JS/3.0.0 kiro-ide/1.0.0","X-Amz-User-Agent":"aws-sdk-js/3.0.0 kiro-ide/1.0.0"},tokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authUrl:"https://prod.us-east-1.auth.desktop.kiro.dev",usage:{cwHost:"https://codewhisperer.us-east-1.amazonaws.com",qHost:"https://q.us-east-1.amazonaws.com",limitsPath:"/getUsageLimits"}},models:[{id:"claude-opus-4.8",name:"Claude Opus 4.8"},{id:"claude-opus-4.8-thinking",name:"Claude Opus 4.8 (Thinking)"},{id:"claude-opus-4.8-agentic",name:"Claude Opus 4.8 (Agentic)"},{id:"claude-opus-4.8-thinking-agentic",name:"Claude Opus 4.8 (Thinking + Agentic)"},{id:"claude-opus-4.7",name:"Claude Opus 4.7"},{id:"claude-opus-4.7-thinking",name:"Claude Opus 4.7 (Thinking)"},{id:"claude-opus-4.7-agentic",name:"Claude Opus 4.7 (Agentic)"},{id:"claude-opus-4.7-thinking-agentic",name:"Claude Opus 4.7 (Thinking + Agentic)"},{id:"claude-opus-4.5",name:"Claude Opus 4.5"},{id:"claude-opus-4.5-thinking",name:"Claude Opus 4.5 (Thinking)"},{id:"claude-opus-4.5-agentic",name:"Claude Opus 4.5 (Agentic)"},{id:"claude-opus-4.5-thinking-agentic",name:"Claude Opus 4.5 (Thinking + Agentic)"},{id:"claude-sonnet-5",name:"Claude Sonnet 5"},{id:"claude-sonnet-4.5",name:"Claude Sonnet 4.5"},{id:"claude-haiku-4.5",name:"Claude Haiku 4.5"},{id:"deepseek-3.2",name:"DeepSeek 3.2",strip:["image","audio"]},{id:"qwen3-coder-next",name:"Qwen3 Coder Next",strip:["image","audio"]},{id:"glm-5",name:"GLM 5"},{id:"MiniMax-M2.5",name:"MiniMax M2.5"},{id:"claude-sonnet-5-thinking",name:"Claude Sonnet 5 (Thinking)"},{id:"claude-sonnet-4.5-thinking",name:"Claude Sonnet 4.5 (Thinking)"},{id:"claude-haiku-4.5-thinking",name:"Claude Haiku 4.5 (Thinking)"},{id:"claude-sonnet-5-agentic",name:"Claude Sonnet 5 (Agentic)"},{id:"claude-sonnet-4.5-agentic",name:"Claude Sonnet 4.5 (Agentic)"},{id:"claude-haiku-4.5-agentic",name:"Claude Haiku 4.5 (Agentic)"},{id:"claude-sonnet-5-thinking-agentic",name:"Claude Sonnet 5 (Thinking + Agentic)"},{id:"claude-sonnet-4.5-thinking-agentic",name:"Claude Sonnet 4.5 (Thinking + Agentic)"},{id:"claude-haiku-4.5-thinking-agentic",name:"Claude Haiku 4.5 (Thinking + Agentic)"}],oauth:{ssoOidcEndpoint:"https://oidc.us-east-1.amazonaws.com",registerClientUrl:"https://oidc.us-east-1.amazonaws.com/client/register",deviceAuthUrl:"https://oidc.us-east-1.amazonaws.com/device_authorization",tokenUrl:"https://oidc.us-east-1.amazonaws.com/token",startUrl:"https://view.awsapps.com/start",clientName:"kiro-oauth-client",clientType:"public",scopes:["codewhisperer:completions","codewhisperer:analysis","codewhisperer:conversations"],grantTypes:["urn:ietf:params:oauth:grant-type:device_code","refresh_token"],issuerUrl:"https://identitycenter.amazonaws.com/ssoins-722374e8c3c8e6c6",socialAuthEndpoint:"https://prod.us-east-1.auth.desktop.kiro.dev",socialLoginUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/login",socialTokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/oauth/token",socialRefreshUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authMethods:["builder-id","idc","google","github","import"]},features:{usage:!0,usageApikey:!0}},{id:"linkup",alias:"linkup",display:{name:"Linkup",icon:"link",color:"#0EA5E9",textIcon:"LK",website:"https://linkup.so",notice:{apiKeyUrl:"https://app.linkup.so/api-keys"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://api.linkup.so/v1/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.005,freeMonthlyQuota:1e3,searchTypes:["web"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"local-device",alias:"local-device",display:{name:"Local Device",icon:"speaker",color:"#64748B",textIcon:"LD"},category:"freeTier",authType:"none",serviceKinds:["tts"],mediaPriority:5,noAuth:!0,ttsConfig:{identity:"openai-node",baseUrl:"local-device",authType:"none",authHeader:"none",format:"local-device",models:[]}},{id:"mimo-free",priority:50,hasFree:!0,alias:"mmf",uiAlias:"mmf",display:{name:"MiMo Code Free",icon:"smart_toy",color:"#FF6900",textIcon:"MF"},category:"free",noAuth:!0,transport:{identity:"openai-node",baseUrl:"https://api.xiaomimimo.com/api/free-ai/openai/chat",noAuth:!0},models:[{id:"mimo-auto",name:"MiMo Auto"}],modelsFetcher:{url:"https://models.dev/api.json",type:"mimo-free"},passthroughModels:!0},j,k,{id:"mistral",priority:80,alias:"mistral",display:{name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai",notice:{apiKeyUrl:"https://console.mistral.ai/api-keys"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.mistral.ai/v1/chat/completions",validateUrl:"https://api.mistral.ai/v1/models",quirks:{dropClientMetadata:!0}},models:[{id:"mistral-large-latest",name:"Mistral Large 3"},{id:"codestral-latest",name:"Codestral"},{id:"mistral-medium-latest",name:"Mistral Medium 3"},{id:"mistral-embed",name:"Mistral Embed",kind:"embedding"}],serviceKinds:["llm","imageToText","embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.mistral.ai/v1/embeddings",authType:"apikey",authHeader:"bearer"}},{id:"mmf",hidden:!0,priority:200,display:{name:"MMF",icon:"hub",color:"#6366F1",textIcon:"MF"},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.xiaomimimo.com/api/free-ai/openai/chat",noAuth:!0},models:[{id:"mimo-auto",name:"MiMo Auto"}]},{id:"muse",priority:285,alias:"muse",aliases:["meta","meta-ai","muse-code"],uiAlias:"muse",display:{name:"Meta Muse",icon:"psychology",color:"#0081FB",textIcon:"MU",website:"https://api.meta.ai",notice:{text:"Sign in with your Meta account via device code, or use a Meta Muse API key.",apiKeyUrl:"https://api.meta.ai",signupUrl:"https://auth.meta.com"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,thinkingConfig:{options:["none","minimal","low","medium","high","xhigh","max"],defaultMode:"high"},transport:{identity:"muse-code",baseUrl:"https://api.meta.ai/v1/chat/completions",format:"openai",validateUrl:"https://api.meta.ai/v1/models",modelsUrl:"https://api.meta.ai/v1/models",usage:{url:"https://api.meta.ai/muse-code/key"},retry:{429:{attempts:3,delayMs:2e3},502:{attempts:2,delayMs:1500},503:{attempts:2,delayMs:1500}}},models:[{id:"muse-spark-1.3",name:"Muse Spark 1.3",contextLength:1048576,maxOutputTokens:65536,thinking:{levels:["minimal","low","medium","high","xhigh","max"]}},{id:"muse-spark-1.3-contributor",name:"Muse Spark 1.3 Contributor",contextLength:1048576,maxOutputTokens:65536,thinking:{levels:["minimal","low","medium","high","xhigh","max"]}},{id:"muse-spark-1.2",name:"Muse Spark 1.2",contextLength:1048576,maxOutputTokens:65536,thinking:{levels:["minimal","low","medium","high","xhigh"]}},{id:"muse-spark-1.2-contributor",name:"Muse Spark 1.2 Contributor",contextLength:1048576,maxOutputTokens:65536,thinking:{levels:["minimal","low","medium","high","xhigh"]}},{id:"muse-spark-1.1",name:"Muse Spark 1.1",contextLength:1048576,maxOutputTokens:65536,thinking:{levels:["low","medium","high","xhigh"]}}],serviceKinds:["llm"],oauth:{clientId:"1031625952748946",deviceCodeUrl:"https://auth.meta.com/oidc/device/authorization/",tokenUrl:"https://auth.meta.com/oidc/device/token/",mintUrl:"https://api.meta.ai/muse-code/key",grantType:"urn:ietf:params:oauth:grant-type:device_code",pollInterval:5e3},features:{usage:!0}},{id:"nanobanana",priority:80,hasFree:!0,alias:"nanobanana",aliases:["nb"],uiAlias:"nb",display:{name:"NanoBanana API",icon:"extension",color:"#FFD700",textIcon:"\uD83C\uDF4C",website:"https://nanobananaapi.ai",notice:{text:"3rd-party proxy for Google Nano Banana (Gemini 2.5/3 Flash Image). For official, use Gemini provider.",apiKeyUrl:"https://nanobananaapi.ai/dashboard"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.nanobananaapi.ai/v1/chat/completions",validateUrl:"https://api.nanobananaapi.ai/v1/models"},models:[{id:"nanobanana-flash",name:"NanoBanana Flash",params:["n","size"],kind:"image"},{id:"nanobanana-pro",name:"NanoBanana Pro",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/generate",pollUrl:"https://api.nanobananaapi.ai/api/v1/nanobanana/record-info"}},{id:"nebius",priority:70,alias:"nebius",display:{name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com",notice:{apiKeyUrl:"https://studio.nebius.com/settings/api-keys"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.studio.nebius.ai/v1/chat/completions",validateUrl:"https://api.studio.nebius.ai/v1/models"},models:[{id:"meta-llama/Llama-3.3-70B-Instruct",name:"Llama 3.3 70B Instruct"},{id:"Qwen/Qwen3-Embedding-8B",name:"Qwen3 Embedding 8B",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.tokenfactory.nebius.com/v1/embeddings"}},{id:"nvidia",priority:20,hasFree:!0,alias:"nvidia",display:{name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim",notice:{text:"Free access for NVIDIA Developer Program members (prototyping & testing).",apiKeyUrl:"https://build.nvidia.com/settings/api-keys"}},category:"freeTier",transport:{identity:"openai-node",baseUrl:"https://integrate.api.nvidia.com/v1/chat/completions",validateUrl:"https://integrate.api.nvidia.com/v1/models"},models:[{id:"minimaxai/minimax-m2.7",name:"MiniMax M2.7"},{id:"minimaxai/minimax-m3",name:"MiniMax M3"},{id:"z-ai/glm-5.2",name:"GLM 5.2"},{id:"deepseek-ai/deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-ai/deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"moonshotai/kimi-k2.6",name:"Kimi K2.6"},{id:"nvidia/nemotron-3-ultra-550b-a55b",name:"Nemotron 3 Ultra"},{id:"nvidia/nv-embedqa-e5-v5",name:"NV EmbedQA E5 v5",kind:"embedding"},{id:"nvidia/parakeet-ctc-1.1b-asr",name:"Parakeet CTC 1.1B",params:["language"],kind:"stt"},{id:"fastpitch",name:"FastPitch",kind:"tts"},{id:"tacotron2",name:"Tacotron2",kind:"tts"}],serviceKinds:["llm","tts","embedding"],ttsConfig:{identity:"openai-node",baseUrl:"https://integrate.api.nvidia.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"nvidia-tts"},embeddingConfig:{identity:"openai-node",baseUrl:"https://integrate.api.nvidia.com/v1/embeddings",authType:"apikey",authHeader:"bearer"}},{id:"ollama-local",priority:50,hasFree:!0,alias:"ollama-local",display:{name:"Ollama Local",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com"},category:"apikey",transport:{identity:"openai-node",baseUrl:"http://localhost:11434/api/chat",format:"ollama"},serviceKinds:["llm"]},{id:"ollama",priority:30,hasFree:!0,alias:"ollama",display:{name:"Ollama Cloud",icon:"cloud",color:"#ffffffff",textIcon:"OL",website:"https://ollama.com",notice:{text:"Free tier: light usage, 1 cloud model at a time (limits reset every 5h & 7d). Pro $20/mo \xb7 Max $100/mo.",apiKeyUrl:"https://ollama.com/settings/keys"}},category:"freeTier",transport:{identity:"openai-node",baseUrl:"https://ollama.com/api/chat",validateUrl:"https://ollama.com/api/tags",format:"ollama"},models:[{id:"gpt-oss:120b",name:"GPT OSS 120B"},{id:"kimi-k2.5",name:"Kimi K2.5"},{id:"glm-5",name:"GLM 5"},{id:"minimax-m2.5",name:"MiniMax M2.5"},{id:"glm-4.7-flash",name:"GLM 4.7 Flash"},{id:"qwen3.5",name:"Qwen3.5"},{id:"minimax-m3",name:"MiniMax M3"}],serviceKinds:["llm"],features:{usage:!0,usageApikey:!0}},{id:"openai",priority:30,alias:"openai",display:{name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com",notice:{apiKeyUrl:"https://platform.openai.com/api-keys"}},category:"apikey",thinkingConfig:{options:["auto","none","low","medium","high"],defaultMode:"auto"},transport:{identity:"openai-node",baseUrl:"https://api.openai.com/v1/chat/completions",forceStream:!0},models:[{id:"gpt-5.4",name:"GPT-5.4"},{id:"gpt-5.4-mini",name:"GPT-5.4 Mini"},{id:"gpt-5.4-nano",name:"GPT-5.4 Nano"},{id:"gpt-5.2",name:"GPT-5.2"},{id:"gpt-5.1",name:"GPT-5.1"},{id:"gpt-5",name:"GPT-5"},{id:"gpt-5-mini",name:"GPT-5 Mini"},{id:"gpt-5-nano",name:"GPT-5 Nano"},{id:"gpt-4o",name:"GPT-4o"},{id:"gpt-4o-mini",name:"GPT-4o Mini"},{id:"gpt-4-turbo",name:"GPT-4 Turbo"},{id:"gpt-4.1",name:"GPT-4.1"},{id:"gpt-4.1-mini",name:"GPT-4.1 Mini"},{id:"gpt-4.1-nano",name:"GPT-4.1 Nano"},{id:"o3",name:"O3"},{id:"o3-mini",name:"O3 Mini"},{id:"o3-pro",name:"O3 Pro"},{id:"o4-mini",name:"O4 Mini"},{id:"o1",name:"O1"},{id:"o1-mini",name:"O1 Mini"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",kind:"embedding"},{id:"text-embedding-3-small",name:"Text Embedding 3 Small",kind:"embedding"},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",kind:"embedding"},{id:"tts-1",name:"TTS-1",kind:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",kind:"tts"},{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",kind:"tts"},{id:"whisper-1",name:"Whisper 1",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-4o-transcribe",name:"GPT-4o Transcribe",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-4o-mini-transcribe",name:"GPT-4o Mini Transcribe",params:["language","response_format","temperature","prompt"],kind:"stt"},{id:"gpt-image-1",name:"GPT Image 1",params:["n","size","quality","response_format"],kind:"image"},{id:"dall-e-3",name:"DALL-E 3",params:["size","quality","style","response_format"],kind:"image"},{id:"dall-e-2",name:"DALL-E 2",params:["n","size","response_format"],kind:"image"}],serviceKinds:["llm","embedding","tts","stt","image","imageToText","webSearch"],ttsConfig:{identity:"openai-node",baseUrl:"https://api.openai.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"openai",defaultModel:"gpt-4o-mini-tts"},sttConfig:{identity:"openai-node",baseUrl:"https://api.openai.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"},embeddingConfig:{identity:"openai-node",baseUrl:"https://api.openai.com/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{identity:"openai-node",baseUrl:"https://api.openai.com/v1/images/generations"},searchViaChat:{defaultModel:"gpt-4o-mini",pricingUrl:"https://openai.com/api/pricing"}},{id:"opencode-go",priority:210,alias:"opencode-go",aliases:["ocg"],uiAlias:"ocg",display:{name:"OpenCode",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode subscription (multiple plans). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",headers:{}},transports:[{identity:"openai-node",format:"openai",baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{identity:"openai-node",format:"claude",baseUrl:"https://opencode.ai/zen/go/v1/messages",auth:{combined:!0,header:"x-api-key",scheme:"raw",anthropicVersion:!0}},{identity:"openai-node",format:"openai-responses",baseUrl:"https://opencode.ai/zen/go/v1/responses",auth:{combined:!0,header:"Authorization",scheme:"bearer"}}],models:[{id:"glm-5.2",name:"GLM 5.2",supportedFormats:["openai"]},{id:"glm-5.1",name:"GLM 5.1",supportedFormats:["openai"]},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code",supportedFormats:["openai"]},{id:"kimi-k2.6",name:"Kimi K2.6",supportedFormats:["openai"]},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",supportedFormats:["openai","claude","openai-responses"]},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",supportedFormats:["openai","claude","openai-responses"]},{id:"mimo-v2.5",name:"MiMo V2.5",supportedFormats:["openai"]},{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro",supportedFormats:["openai"]},{id:"minimax-m3",name:"MiniMax M3",targetFormat:"claude",supportedFormats:["openai","claude"]},{id:"minimax-m2.7",name:"MiniMax M2.7",targetFormat:"claude",supportedFormats:["openai","claude"]},{id:"minimax-m2.5",name:"MiniMax M2.5",targetFormat:"claude",supportedFormats:["openai","claude"]},{id:"qwen3.7-max",name:"Qwen 3.7 Max",targetFormat:"claude",supportedFormats:["openai","claude"]},{id:"qwen3.7-plus",name:"Qwen 3.7 Plus",targetFormat:"claude",supportedFormats:["openai","claude"]},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus",targetFormat:"claude",supportedFormats:["openai","claude"]}]},{id:"opencode",priority:40,hasFree:!0,alias:"oc",uiAlias:"oc",display:{name:"OpenCode Free",icon:"terminal",color:"#E87040",textIcon:"OC"},category:"free",noAuth:!0,transport:{identity:"openai-node",baseUrl:"https://opencode.ai",headers:{"x-opencode-client":"desktop"},noAuth:!0},models:[],modelsFetcher:{url:"https://opencode.ai/zen/v1/models",type:"opencode-free"},passthroughModels:!0},{id:"openrouter",priority:10,hasFree:!0,alias:"openrouter",display:{name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",website:"https://openrouter.ai",notice:{text:"Free tier: 27+ free models, no credit card needed, 200 req/day. After 0 credit: 1,000 req/day.",apiKeyUrl:"https://openrouter.ai/settings/keys"}},category:"freeTier",transport:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",thinkingFormat:"openai",identity:"openai-node"},models:[{id:"openai/text-embedding-3-large",name:"OpenAI Text Embedding 3 Large",kind:"embedding"},{id:"openai/text-embedding-3-small",name:"OpenAI Text Embedding 3 Small",kind:"embedding"},{id:"openai/text-embedding-ada-002",name:"OpenAI Text Embedding Ada 002",kind:"embedding"},{id:"qwen/qwen3-embedding-8b",name:"Qwen3 Embedding 8B",kind:"embedding"},{id:"perplexity/pplx-embed-v1-4b",name:"Perplexity Embed V1 4B",kind:"embedding"},{id:"perplexity/pplx-embed-v1-0.6b",name:"Perplexity Embed V1 0.6B",kind:"embedding"},{id:"nvidia/llama-nemotron-embed-vl-1b-v2:free",name:"NVIDIA Nemotron Embed VL 1B V2 (Free)",kind:"embedding"},{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",kind:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",kind:"tts"},{id:"openai/tts-1",name:"TTS-1",kind:"tts"},{id:"openai/dall-e-3",name:"DALL-E 3 (via OpenRouter)",params:["size","quality","style","response_format"],kind:"image"},{id:"openai/gpt-image-1",name:"GPT Image 1 (via OpenRouter)",params:["n","size","quality","response_format"],kind:"image"},{id:"google/imagen-3.0-generate-002",name:"Imagen 3 (via OpenRouter)",params:["n","size"],kind:"image"},{id:"black-forest-labs/FLUX.1-schnell",name:"FLUX.1 Schnell (via OpenRouter)",params:["n","size"],kind:"image"}],serviceKinds:["llm","embedding","tts","imageToText"],ttsConfig:{identity:"openai-node",baseUrl:"https://openrouter.ai/api/v1/chat/completions",defaultModel:"openai/gpt-4o-mini-tts"},embeddingConfig:{identity:"openai-node",baseUrl:"https://openrouter.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{identity:"openai-node",baseUrl:"https://openrouter.ai/api/v1/images/generations"},modelsFetcher:{url:"https://openrouter.ai/api/v1/models",type:"openrouter-free"},passthroughModels:!0},{id:"perplexity-web",priority:220,alias:"perplexity-web",aliases:["pw"],uiAlias:"pw",display:{name:"Perplexity Web (Pro/Max)",icon:"search",color:"#20808D",textIcon:"PW",website:"https://www.perplexity.ai"},category:"webCookie",authType:"cookie",authHint:"Paste your __Secure-next-auth.session-token cookie value from perplexity.ai",transport:{identity:"chrome",baseUrl:"https://www.perplexity.ai/rest/sse/perplexity_ask",format:"perplexity-web",authType:"cookie"},models:[{id:"pplx-auto",name:"Perplexity Auto (Free)"},{id:"pplx-sonar",name:"Perplexity Sonar"},{id:"pplx-gpt",name:"GPT-5.4 (via Perplexity)"},{id:"pplx-gemini",name:"Gemini 3.1 Pro (via Perplexity)"},{id:"pplx-sonnet",name:"Claude Sonnet 4.6 (via Perplexity)"},{id:"pplx-opus",name:"Claude Opus 4.6 (via Perplexity)"},{id:"pplx-nemotron",name:"Nemotron 3 Super (via Perplexity)"}]},{id:"perplexity",priority:180,alias:"perplexity",aliases:["pplx"],uiAlias:"pplx",display:{name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai",notice:{apiKeyUrl:"https://www.perplexity.ai/settings/api"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.perplexity.ai/chat/completions",validateUrl:"https://api.perplexity.ai/models"},models:[{id:"sonar-pro",name:"Sonar Pro"},{id:"sonar",name:"Sonar"}],serviceKinds:["llm","webSearch"],searchViaChat:{defaultModel:"sonar",endpoint:"https://api.perplexity.ai/chat/completions",pricingUrl:"https://docs.perplexity.ai/guides/pricing"}},{id:"playht",alias:"playht",display:{name:"PlayHT",icon:"play_circle",color:"#00B4D8",textIcon:"PH",website:"https://play.ht",notice:{apiKeyUrl:"https://play.ht/studio/api-access"}},category:"apikey",authType:"apikey",serviceKinds:["tts"],ttsConfig:{identity:"openai-node",baseUrl:"https://api.play.ht/api/v2/tts/stream",authType:"apikey",authHeader:"playht",format:"playht",models:[{id:"PlayDialog",name:"PlayDialog"},{identity:"openai-node",id:"Play3.0-mini",name:"Play 3.0 Mini"}]},hidden:!0},{id:"qoder",priority:30,alias:"qd",uiAlias:"qd",display:{name:"Qoder",icon:"water_drop",color:"#EC4899",website:"https://qoder.com",notice:{signupUrl:"https://qoder.com"},deprecated:!0,deprecationNotice:"RISK_NOTICE"},category:"free",transport:{identity:"openai-node",baseUrl:"https://api3.qoder.sh/algo/api/v2/service/pro/sse/agent_chat_generation",headers:{},timeoutMs:12e4,stallTimeoutMs:12e4,usage:{url:"https://openapi.qoder.sh/api/v2/quota/usage"}},models:[{id:"qmodel_latest",name:"Qoder Qwen 3.7 Max"}],oauth:{openApiBaseUrl:"https://openapi.qoder.sh",centerBaseUrl:"https://center.qoder.sh",chatBaseUrl:"https://api3.qoder.sh",deviceTokenUrl:"https://openapi.qoder.sh/api/v1/deviceToken/poll",refreshUrl:"https://center.qoder.sh/algo/api/v3/user/refresh_token",userInfoUrl:"https://openapi.qoder.sh/api/v1/userinfo",quotaUsageUrl:"https://openapi.qoder.sh/api/v2/quota/usage",loginUrl:"https://qoder.com/device/selectAccounts"},features:{usage:!0}},{id:"qwen",priority:130,alias:"qw",display:{name:"Qwen Code",icon:"psychology",color:"#10B981",website:"https://chat.qwen.ai",notice:{signupUrl:"https://chat.qwen.ai"}},category:"oauth",transport:{identity:"qwen",baseUrl:"https://portal.qwen.ai/v1/chat/completions"},models:[{id:"qwen3-coder-plus",name:"Qwen3 Coder Plus"},{id:"qwen3-coder-flash",name:"Qwen3 Coder Flash"},{id:"vision-model",name:"Qwen3 Vision Model"},{id:"coder-model",name:"Qwen3.6 Coder Model"}],oauth:{clientId:"f0304373b74a44d2b584a3fb70ca9e56",deviceCodeUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",scope:"openid profile email model.completion",codeChallengeMethod:"S256",refreshLeadMs:12e5}},{id:"recraft",priority:70,alias:"recraft",display:{name:"Recraft",icon:"image",color:"#EC4899",textIcon:"RC",website:"https://recraft.ai",notice:{apiKeyUrl:"https://www.recraft.ai/profile/api"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"recraftv3",name:"Recraft V3",params:["n","size","style"],kind:"image"},{id:"recraftv2",name:"Recraft V2",params:["n","size","style"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://external.api.recraft.ai/v1/images/generations"}},{id:"runwayml",priority:80,alias:"runwayml",aliases:["runway"],uiAlias:"runway",display:{name:"Runway ML",icon:"movie",color:"#000000",textIcon:"RW",website:"https://runwayml.com",notice:{apiKeyUrl:"https://dev.runwayml.com"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"gen4_image",name:"Gen-4 Image",params:["size"],kind:"image"},{id:"gen4_image_turbo",name:"Gen-4 Image Turbo",params:["size"],kind:"image"},{id:"gen4_turbo",name:"Gen-4 Turbo",params:[],kind:"video"},{id:"gen3a_turbo",name:"Gen-3 Alpha Turbo",params:[],kind:"video"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://api.dev.runwayml.com/v1"}},{id:"sdwebui",priority:110,alias:"sdwebui",display:{name:"SD WebUI",icon:"brush",color:"#FF7043",textIcon:"SD",website:"https://github.com/AUTOMATIC1111/stable-diffusion-webui"},category:"apikey",transport:null,models:[{id:"stable-diffusion-v1-5",name:"Stable Diffusion v1.5",params:["n","size"],kind:"image"},{id:"sdxl-base-1.0",name:"SDXL Base 1.0",params:["n","size"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"http://localhost:7860/sdapi/v1/txt2img"}},{id:"searchapi",alias:"searchapi",display:{name:"SearchAPI",icon:"search",color:"#0EA5A4",textIcon:"SA",website:"https://www.searchapi.io",notice:{apiKeyUrl:"https://www.searchapi.io/dashboard"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://www.searchapi.io/api/v1/search",method:"GET",authType:"apikey",authHeader:"api_key",costPerQuery:.004,freeMonthlyQuota:100,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"searxng",alias:"searxng",display:{name:"SearXNG",icon:"saved_search",color:"#3B82F6",textIcon:"SX",website:"https://docs.searxng.org"},category:"freeTier",authType:"none",serviceKinds:["webSearch"],noAuth:!0,searchConfig:{identity:"openai-node",baseUrl:"http://localhost:8888/search",method:"GET",authType:"none",authHeader:"none",costPerQuery:0,freeMonthlyQuota:999999,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:50,timeoutMs:1e4,cacheTTLMs:18e4}},{id:"selfhosted-embedding",priority:50,alias:"selfhosted-embedding",display:{name:"Self-hosted Embedding",icon:"data_array",color:"#14B8A6",textIcon:"SE",website:"https://github.com/ggml-org/llama.cpp"},category:"apikey",authType:"apikey",models:[{id:"embedding",name:"Self-hosted embedding model",kind:"embedding"}],serviceKinds:["embedding"],embeddingConfig:{identity:"openai-node",authType:"none",authHeader:"bearer",format:"openai"}},{id:"selfhosted-stt",priority:50,alias:"selfhosted-stt",display:{name:"Self-hosted STT",icon:"mic",color:"#14B8A6",textIcon:"ST",website:"https://github.com/ggml-org/whisper.cpp"},category:"apikey",authType:"apikey",models:[{id:"whisper-1",name:"Whisper (self-hosted)",params:["language","response_format","temperature","prompt"],kind:"stt"}],serviceKinds:["stt"],sttConfig:{identity:"openai-node",authType:"none",authHeader:"bearer",format:"openai"}},{id:"selfhosted-tts",priority:50,alias:"selfhosted-tts",display:{name:"Self-hosted TTS",icon:"record_voice_over",color:"#14B8A6",textIcon:"TT",website:"https://github.com/remsky/Kokoro-FastAPI"},category:"apikey",authType:"apikey",models:[{id:"kokoro",name:"Kokoro (self-hosted)",params:["voice","response_format","speed"],kind:"tts"}],serviceKinds:["tts"],ttsConfig:{identity:"openai-node",authType:"none",authHeader:"bearer",format:"openai",defaultModel:"kokoro",defaultVoice:"af_heart"}},{id:"serper",alias:"serper",display:{name:"Serper",icon:"search",color:"#4F46E5",textIcon:"SP",website:"https://serper.dev",notice:{apiKeyUrl:"https://serper.dev/api-key"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://google.serper.dev",method:"POST",authType:"apikey",authHeader:"x-api-key",costPerQuery:.001,freeMonthlyQuota:2500,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}},{id:"siliconflow",priority:250,alias:"siliconflow",display:{name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com",notice:{apiKeyUrl:"https://cloud.siliconflow.com/account/ak"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.siliconflow.com/v1/chat/completions",validateUrl:"https://api.siliconflow.com/v1/models",thinkingFormat:"openai"},models:[{id:"deepseek-ai/DeepSeek-V4-Pro",name:"DeepSeek V4 Pro"},{id:"deepseek-ai/DeepSeek-V4-Flash",name:"DeepSeek V4 Flash"},{id:"deepseek-ai/DeepSeek-V3.2",name:"DeepSeek V3.2"},{id:"deepseek-ai/DeepSeek-V3.2-Exp",name:"DeepSeek V3.2 Exp"},{id:"deepseek-ai/DeepSeek-V3.1",name:"DeepSeek V3.1"},{id:"deepseek-ai/DeepSeek-V3.1-Terminus",name:"DeepSeek V3.1 Terminus"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3.5-397B-A17B",name:"Qwen 3.5 397B A17B"},{id:"Qwen/Qwen3.5-122B-A10B",name:"Qwen 3.5 122B A10B"},{id:"zai-org/GLM-5.1",name:"GLM 5.1"},{id:"zai-org/GLM-5",name:"GLM 5"},{id:"moonshotai/Kimi-K2.6",name:"Kimi K2.6"},{id:"moonshotai/Kimi-K2.5",name:"Kimi K2.5"},{id:"openai/gpt-oss-120b",name:"GPT OSS 120B"},{id:"MiniMaxAI/MiniMax-M2.5",name:"MiniMax M2.5"},{id:"inclusionAI/Ling-flash-2.0",name:"Ling Flash 2.0"}]},{id:"stability-ai",priority:60,alias:"stability-ai",aliases:["stability"],uiAlias:"stability",display:{name:"Stability AI",icon:"image",color:"#8B5CF6",textIcon:"SA",website:"https://stability.ai",notice:{apiKeyUrl:"https://platform.stability.ai/account/keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"stable-image-ultra",name:"Stable Image Ultra",params:["size"],kind:"image"},{id:"stable-image-core",name:"Stable Image Core",params:["size","style"],kind:"image"},{id:"sd3.5-large",name:"Stable Diffusion 3.5 Large",params:["size"],kind:"image"},{id:"sd3.5-large-turbo",name:"Stable Diffusion 3.5 Large Turbo",params:["size"],kind:"image"},{id:"sd3.5-medium",name:"Stable Diffusion 3.5 Medium",params:["size"],kind:"image"}],serviceKinds:["image"],imageConfig:{identity:"openai-node",baseUrl:"https://api.stability.ai/v2beta/stable-image/generate"}},{id:"tavily",alias:"tavily",display:{name:"Tavily",icon:"search",color:"#5B21B6",textIcon:"TV",website:"https://tavily.com",notice:{apiKeyUrl:"https://app.tavily.com/home"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch","webFetch"],searchConfig:{identity:"openai-node",baseUrl:"https://api.tavily.com/search",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:20,timeoutMs:1e4,cacheTTLMs:3e5},fetchConfig:{identity:"openai-node",baseUrl:"https://api.tavily.com/extract",method:"POST",authType:"apikey",authHeader:"bearer",costPerQuery:.008,freeMonthlyQuota:1e3,formats:["markdown","text"],maxCharacters:1e5,timeoutMs:15e3}},{id:"together",priority:60,alias:"together",display:{name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai",notice:{apiKeyUrl:"https://api.together.xyz/settings/api-keys"}},category:"apikey",authType:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.together.xyz/v1/chat/completions",validateUrl:"https://api.together.xyz/v1/models"},models:[{id:"meta-llama/Llama-3.3-70B-Instruct-Turbo",name:"Llama 3.3 70B Turbo"},{id:"deepseek-ai/DeepSeek-R1",name:"DeepSeek R1"},{id:"Qwen/Qwen3-235B-A22B",name:"Qwen3 235B"},{id:"meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8",name:"Llama 4 Maverick"},{id:"BAAI/bge-large-en-v1.5",name:"BGE Large EN v1.5",kind:"embedding"},{id:"togethercomputer/m2-bert-80M-8k-retrieval",name:"M2 BERT 80M 8K",kind:"embedding"}],serviceKinds:["llm","embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.together.xyz/v1/embeddings"}},{id:"topaz",alias:"topaz",display:{name:"Topaz",icon:"image",color:"#059669",textIcon:"TP",website:"https://topazlabs.com",notice:{apiKeyUrl:"https://topazlabs.com/account"}},category:"apikey",authType:"apikey",serviceKinds:["image"]},{id:"tortoise",alias:"tortoise",display:{name:"Tortoise TTS",icon:"record_voice_over",color:"#7C3AED",textIcon:"TT",website:"https://github.com/neonbjb/tortoise-tts"},category:"freeTier",authType:"none",serviceKinds:["tts"],noAuth:!0,ttsConfig:{identity:"openai-node",baseUrl:"http://localhost:5000/api/tts",authType:"none",authHeader:"none",format:"tortoise",models:[{id:"tortoise-v2",name:"Tortoise v2"}]},hidden:!0},{id:"venice",priority:115,alias:"venice",aliases:["vn"],uiAlias:"venice",display:{name:"Venice AI",icon:"shield",color:"#DC2626",textIcon:"VE",website:"https://venice.ai",notice:{text:"OpenAI-compatible. Private inference + uncensored models (Venice Uncensored, GLM, Qwen, DeepSeek, Llama).",apiKeyUrl:"https://venice.ai/settings/api"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://api.venice.ai/api/v1/chat/completions",validateUrl:"https://api.venice.ai/api/v1/models",thinkingFormat:"openai"},models:[{id:"venice-uncensored-1-2",name:"Venice Uncensored 1.2"},{id:"zai-org-glm-5",name:"GLM-5"},{id:"qwen3-235b-a22b-instruct-2507",name:"Qwen3 235B A22B Instruct"},{id:"qwen3-coder-480b-a35b-instruct-turbo",name:"Qwen3 Coder 480B A35B Turbo"},{id:"qwen3-vl-235b-a22b",name:"Qwen3 VL 235B A22B"},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"llama-3.3-70b",name:"Llama 3.3 70B"},{id:"hermes-3-llama-3.1-405b",name:"Hermes 3 Llama 3.1 405B"},{id:"mistral-small-3-2-24b-instruct",name:"Mistral Small 3.2 24B"},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",kind:"embedding"},{id:"text-embedding-bge-m3",name:"BGE-M3 Embedding",kind:"embedding"},{id:"text-embedding-qwen3-8b",name:"Qwen3 8B Embedding",kind:"embedding"},{id:"venice-sd35",name:"Venice SD3.5",params:["n","size"],kind:"image"},{id:"flux-2-pro",name:"FLUX.2 Pro",params:["n","size"],kind:"image"},{id:"gpt-image-2",name:"GPT Image 2 (via Venice)",params:["n","size","quality"],kind:"image"}],serviceKinds:["llm","embedding","image"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.venice.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{identity:"openai-node",baseUrl:"https://api.venice.ai/api/v1/images/generations"},modelsFetcher:{url:"https://api.venice.ai/api/v1/models",type:"openai"},passthroughModels:!0},{id:"vercel-ai-gateway",priority:160,alias:"vercel-ai-gateway",aliases:["vercel"],uiAlias:"vercel",display:{name:"Vercel AI Gateway",icon:"deployed_code",color:"#111827",textIcon:"VG",website:"https://vercel.com/ai-gateway",notice:{text:"Unified OpenAI-compatible endpoint from Vercel. Use your AI Gateway API key, then pick models with provider/model IDs like anthropic/claude-sonnet-4.6 or openai/gpt-5.4.",apiKeyUrl:"https://vercel.com/dashboard/~/ai-gateway"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://ai-gateway.vercel.sh/v1/chat/completions",thinkingFormat:"openai",retry:{429:2},usage:{url:"https://ai-gateway.vercel.sh/v1/credits"}},serviceKinds:["llm","embedding","image","imageToText","webSearch"],embeddingConfig:{identity:"openai-node",baseUrl:"https://ai-gateway.vercel.sh/v1/embeddings"},imageConfig:{identity:"openai-node",baseUrl:"https://ai-gateway.vercel.sh/v1/images/generations"},searchViaChat:{defaultModel:"openai/gpt-4o-mini",pricingUrl:"https://vercel.com/docs/ai-gateway/pricing"},modelsFetcher:{url:"https://ai-gateway.vercel.sh/v1/models",type:"openai"},passthroughModels:!0,features:{usage:!0,usageApikey:!0}},{id:"vertex-partner",priority:260,alias:"vertex-partner",aliases:["vxp"],uiAlias:"vxp",display:{name:"Vertex Partner",icon:"cloud",color:"#34A853",textIcon:"VP",website:"https://cloud.google.com/vertex-ai/generative-ai/docs/partner-models/use-partner-models",notice:{apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://aiplatform.googleapis.com"},models:[{id:"deepseek-ai/deepseek-v3.2-maas",name:"DeepSeek V3.2 (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-thinking-maas",name:"Qwen3 Next 80B Thinking (Vertex)"},{id:"qwen/qwen3-next-80b-a3b-instruct-maas",name:"Qwen3 Next 80B Instruct (Vertex)"},{id:"zai-org/glm-5-maas",name:"GLM-5 (Vertex)"}]},{id:"vertex",priority:40,alias:"vertex",aliases:["vx"],uiAlias:"vx",display:{name:"Vertex AI",icon:"cloud",color:"#4285F4",textIcon:"VX",website:"https://cloud.google.com/vertex-ai",notice:{text:"New Google Cloud accounts get $300 free credits. Requires GCP project + Service Account with Vertex AI API enabled.",apiKeyUrl:"https://console.cloud.google.com/iam-admin/serviceaccounts"}},category:"freeTier",transport:{identity:"openai-node",baseUrl:"https://aiplatform.googleapis.com",format:"vertex"},models:[{id:"gemini-3.1-pro-preview",name:"Gemini 3.1 Pro Preview"},{id:"gemini-3.1-flash-lite-preview",name:"Gemini 3.1 Flash Lite Preview"},{id:"gemini-3-flash-preview",name:"Gemini 3 Flash Preview"},{id:"gemini-2.5-flash",name:"Gemini 2.5 Flash"}],serviceKinds:["llm","imageToText"]},{id:"volcengine-ark",priority:270,alias:"volcengine-ark",aliases:["ark"],uiAlias:"ark",display:{name:"Volcengine Ark",icon:"cloud",color:"#1677FF",textIcon:"ARK",website:"https://ark.cn-beijing.volces.com",notice:{apiKeyUrl:"https://console.volcengine.com/ark/region:ark+cn-beijing/apiKey"}},category:"apikey",transport:{identity:"openai-node",baseUrl:"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",headers:{}},models:[{id:"Doubao-Seed-2.0-Code",name:"Doubao-Seed-2.0-Code"},{id:"Doubao-Seed-2.0-pro",name:"Doubao-Seed-2.0-pro"},{id:"Doubao-Seed-2.0-lite",name:"Doubao-Seed-2.0-lite"},{id:"Doubao-Seed-Code",name:"Doubao-Seed-Code"},{id:"DeepSeek-V4-Flash",name:"DeepSeek-V4-Flash"},{id:"DeepSeek-V4-Pro",name:"DeepSeek-V4-Pro"},{id:"GLM-5.1",name:"GLM-5.1"},{id:"MiniMax-M2.7",name:"MiniMax-M2.7"},{id:"Kimi-K2.6",name:"Kimi-K2.6"}]},{id:"voyage-ai",priority:40,alias:"voyage-ai",uiAlias:"voyage",display:{name:"Voyage AI",icon:"data_array",color:"#0EA5E9",textIcon:"VG",website:"https://www.voyageai.com",notice:{apiKeyUrl:"https://dash.voyageai.com/api-keys"}},category:"apikey",authType:"apikey",transport:null,models:[{id:"voyage-3-large",name:"Voyage 3 Large",kind:"embedding"},{id:"voyage-3.5",name:"Voyage 3.5",kind:"embedding"},{id:"voyage-3.5-lite",name:"Voyage 3.5 Lite",kind:"embedding"},{id:"voyage-code-3",name:"Voyage Code 3",kind:"embedding"},{id:"voyage-finance-2",name:"Voyage Finance 2",kind:"embedding"},{id:"voyage-law-2",name:"Voyage Law 2",kind:"embedding"},{id:"voyage-multilingual-2",name:"Voyage Multilingual 2",kind:"embedding"}],serviceKinds:["embedding"],embeddingConfig:{identity:"openai-node",baseUrl:"https://api.voyageai.com/v1/embeddings"}},{id:"xai",priority:280,alias:"xai",display:{name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai",notice:{apiKeyUrl:"https://console.x.ai"}},category:"oauth",authModes:["oauth","apikey"],hasOAuth:!0,transport:{identity:"grok-cli",baseUrl:"https://api.x.ai/v1/chat/completions",validateUrl:"https://api.x.ai/v1/models",responsesUrl:"https://api.x.ai/v1/responses",clientId:"b1a00492-073a-47ea-816f-4c329264a828",tokenUrl:"https://auth.x.ai/oauth2/token",refreshUrl:"https://auth.x.ai/oauth2/token"},models:[{id:"grok-4",name:"Grok 4"},{id:"grok-4-fast-reasoning",name:"Grok 4 Fast Reasoning"},{id:"grok-code-fast-1",name:"Grok Code Fast"},{id:"grok-3",name:"Grok 3"},{id:"grok-2-image-1212",name:"Grok 2 Image",params:["n","response_format"],kind:"image"},{id:"grok-imagine-video",name:"Grok Imagine Video",params:["duration","aspect_ratio","resolution"],kind:"video"}],serviceKinds:["llm","imageToText","webSearch","image","video"],imageConfig:{identity:"grok-cli",baseUrl:"https://api.x.ai/v1/images/generations",bodyFields:["model","prompt","n","response_format"]},videoConfig:{identity:"grok-cli",baseUrl:"https://api.x.ai/v1/videos"},searchViaChat:{defaultModel:"grok-4.20-reasoning",endpoint:"https://api.x.ai/v1/responses",pricingUrl:"https://x.ai/api#pricing"}},l,m,{id:"youcom",alias:"youcom",display:{name:"You.com Search",icon:"search",color:"#7C3AED",textIcon:"YC",website:"https://you.com",notice:{apiKeyUrl:"https://api.you.com"}},category:"apikey",authType:"apikey",serviceKinds:["webSearch"],searchConfig:{identity:"openai-node",baseUrl:"https://ydc-index.io/v1/search",method:"GET",authType:"apikey",authHeader:"x-api-key",costPerQuery:.005,freeMonthlyQuota:0,searchTypes:["web","news"],defaultMaxResults:5,maxMaxResults:100,timeoutMs:1e4,cacheTTLMs:3e5}}]},69632:(a,b,c)=>{"use strict";c.d(b,{H:()=>o});var d=c(99887),e=c(68531),f=c(11897),g=c(18184),h=c(90694),i=c(29055),j=c(52655),k=c(96684);function l(a,b){a.responseId||(a.responseId=`chatcmpl-${Date.now()}`,a.created=Math.floor(Date.now()/1e3),a.model=a.model||b||"commandcode",a.chunkIndex=0,a.toolIndex=0,a.finishReason=null,a.usage=null),a.toolIndexById instanceof Map||(a.toolIndexById=new Map),a.openTools instanceof Set||(a.openTools=new Set),"number"!=typeof a.toolIndex&&(a.toolIndex=0),"number"!=typeof a.chunkIndex&&(a.chunkIndex=0)}function m(a,b,c=null){return(0,g.k)({id:a.responseId,created:a.created,model:a.model},b,c)}let n=a=>(0,k.F)(a,"commandcode");function o(a,b){if(!a){if(b.commandcodeFinished||!((b.chunkIndex||0)>0||(b.toolIndex||0)>0))return null;b.commandcodeFinished=!0,l(b);let a=m(b,{},b.finishReason||f.bC.STOP),c=(0,h.B)(b.usage,"commandcode");return c&&(a.usage=c),[a]}if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let c=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let d=b.startsWith("data:")?b.slice(5).trim():b;if(!d||"[DONE]"===d)return null;try{c=JSON.parse(d)}catch{return null}}if(!c||"object"!=typeof c||!c.type)return null;l(b,c.model);let d=[];switch(c.type){case"text-delta":{let a=c.text||c.delta||"";if(!a)break;let e=0===b.chunkIndex?{role:f.z7.ASSISTANT,content:a}:{content:a};b.chunkIndex++,d.push(m(b,e));break}case"reasoning-delta":{let a=c.text||"";if(!a)break;let e=(0,i.B)(a,0===b.chunkIndex);b.chunkIndex++,d.push(m(b,e));break}case"tool-input-start":{let a=c.id||c.toolCallId||(0,j.eG)(b.toolIndex),e=b.toolIndexById.get(a);null==e&&(e=b.toolIndex++,b.toolIndexById.set(a,e)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:e,id:a,type:f.x4.FUNCTION,function:{name:c.toolName||"",arguments:""}}]};b.chunkIndex++,d.push(m(b,g));break}case"tool-input-delta":{let a=c.id||c.toolCallId||(b.openTools?.size===1?[...b.openTools][0]:void 0),e=b.toolIndexById.get(a);if(null==e)break;let f={tool_calls:[{index:e,function:{arguments:c.delta||c.inputTextDelta||""}}]};d.push(m(b,f));break}case"tool-call":{let a=c.toolCallId||c.id||(0,j.eG)(b.toolIndex);if(b.toolIndexById.has(a))break;let e=b.toolIndex++;b.toolIndexById.set(a,e);let g="string"==typeof c.input?c.input:JSON.stringify(c.input??{}),h={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:e,id:a,type:f.x4.FUNCTION,function:{name:c.toolName||"",arguments:g}}]};b.chunkIndex++,d.push(m(b,h));break}case"finish-step":b.finishReason=n(c.finishReason),c.usage&&(b.usage=c.usage);break;case"finish":{if(b.commandcodeFinished)break;b.commandcodeFinished=!0;let a=b.finishReason||n(c.finishReason||"stop"),e=m(b,{},a),f=c.totalUsage||b.usage,g=(0,h.B)(f,"commandcode");g&&(e.usage=g),d.push(e);break}case"error":{if(b.commandcodeFinished)break;b.commandcodeFinished=!0,b.finishReason=f.bC.STOP;let a=c.error??c.message??"unknown",e="string"==typeof a?a:JSON.stringify(a);d.push(m(b,{content:`
|
|
389
389
|
|
|
390
|
-
[CommandCode error: ${e}]`})),d.push(m(b,{},f.bC.STOP))}}return d.length?d:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,o)},69641:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(22884),c(87350),c(17525);var d=c(68531);c(82812),c(18762),c(20830),c(96997),c(1654),c(98976),c(6125),c(50969),c(13161),c(38421),c(80152),c(82689),c(7878),c(17438);var e=c(95695);c(81556),c(49926),c(69493),c(52748),c(978),c(96998),c(76441),c(55261),c(4879),c(34578),c(78116),c(25720),c(49623),c(31629),c(23493),c(33871),c(50132),c(49471),c(46036),c(14896);var f=a([e]);e=(f.then?(await f)():f)[0],d.h.GEMINI,d.h.GEMINI_CLI,d.h.ANTIGRAVITY,d.h.VERTEX,b()}catch(a){b(a)}})},70106:(a,b,c)=>{"use strict";let{parseSetCookie:d}=c(5831),{stringify:e}=c(84698),{webidl:f}=c(32984);function g(a){try{f.brandCheck(a,f.is.Headers);return}catch{}f.brandCheck(a,f.util.MakeTypeAssertion(globalThis.Headers))}function h(a,b){f.argumentLengthCheck(arguments,2,"setCookie"),g(a);let c=e(b=f.converters.Cookie(b));c&&a.append("set-cookie",c,!0)}f.converters.DeleteCookieAttributes=f.dictionaryConverter([{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null}]),f.converters.Cookie=f.dictionaryConverter([{converter:f.converters.DOMString,key:"name"},{converter:f.converters.DOMString,key:"value"},{converter:f.nullableConverter(a=>"number"==typeof a?f.converters["unsigned long long"](a):new Date(a)),key:"expires",defaultValue:()=>null},{converter:f.nullableConverter(f.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"secure",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:f.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:f.sequenceConverter(f.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]),a.exports={getCookies:function(a){f.argumentLengthCheck(arguments,1,"getCookies"),g(a);let b=a.get("cookie"),c={__proto__:null};if(!b)return c;for(let a of b.split(";")){let[b,...d]=a.split("=");c[b.trim()]=d.join("=")}return c},deleteCookie:function(a,b,c){g(a);let d="deleteCookie";f.argumentLengthCheck(arguments,2,d),b=f.converters.DOMString(b,d,"name"),c=f.converters.DeleteCookieAttributes(c),h(a,{name:b,value:"",expires:new Date(0),...c})},getSetCookies:function(a){f.argumentLengthCheck(arguments,1,"getSetCookies"),g(a);let b=a.getSetCookie();return b?b.map(a=>d(a)):[]},setCookie:h,parseCookie:function(a){return d(a=f.converters.DOMString(a))}}},70459:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{Console:e}=c(37540),f=process.versions.icu?"✅":"Y ",g=process.versions.icu?"❌":"N ";a.exports=class{constructor({disableColors:a}={}){this.transform=new d({transform(a,b,c){c(null,a)}}),this.logger=new e({stdout:this.transform,inspectOptions:{colors:!a&&!process.env.CI}})}format(a){let b=a.map(({method:a,path:b,data:{statusCode:c},persist:d,times:e,timesInvoked:h,origin:i})=>({Method:a,Origin:i,Path:b,"Status code":c,Persistent:d?f:g,Invocations:h,Remaining:d?1/0:e-h}));return this.logger.table(b),this.transform.read().toString()}}},70625:(a,b,c)=>{"use strict";c.d(b,{Iq:()=>B,Kn:()=>v,dV:()=>w,zi:()=>x});var d=c(73024),e=c(76760),f=c(77598),g=c(59882),h=c(3507);let i=["claude-cli","codex-cli","gemini-cli"],j=new Map,k=new Map,l=new Set,m=null;function n(){let a=process.env.DATA_DIR||e.join(process.env.HOME||process.env.USERPROFILE||".",".switchboard");return e.join(a,"identity")}function o(a){return e.join(n(),`${a}.json`)}let p=function(){try{return JSON.parse(d.readFileSync(e.join(process.cwd(),"open-sse","identity","snapshots","versions.json"),"utf8"))}catch{try{return JSON.parse(d.readFileSync(new c.U(c(13839)),"utf8"))}catch{return{}}}}();function q(a){let b=p[a],c=b?.version;if(!c)return null;if("claude-cli"!==a)return{version:c,latestVersion:b.latestVersion};let d=b.tlsSpecRev||c;return{version:c,billingVersion:c,tlsSpecRev:d,latestVersion:b.latestVersion,capturedAt:b.capturedAt,entrypoint:b.entrypoint||"cli",userAgent:`claude-cli/${c} (external, ${b.entrypoint||"cli"})`,packageVersion:b.packageVersion||"0.128.0",runtimeVersion:b.runtimeVersion||"v26.3.0",betas:b.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,effort-2025-11-24,structured-outputs-2025-12-15"}}function r(a){let b=String(a||"").split(".").map(Number);return 3===b.length&&b.every(Number.isInteger)?b:null}function s(a){let b=String(a?.tlsSpecRev||"").match(/(\d+\.\d+\.\d+)/);return b?.[1]||null}function t(a,b){let c=r(a),d=r(b);if(!c||!d)return 0;for(let a=0;a<3;a++)if(c[a]!==d[a])return c[a]-d[a];return 0}function u(a){return!!(a?.version&&a?.billingVersion===a.version&&s(a)===a.version&&a.version===(z(p["claude-cli"]?.tlsSpecRev)||p["claude-cli"]?.version||null)&&a?.userAgent?.includes(`claude-cli/${a.version}`)&&a?.packageVersion&&a?.runtimeVersion&&a?.betas)}function v(a){return{version:a?.version||null,billingVersion:a?.billingVersion||null,tlsVersion:s(a),userAgentVersion:z(a?.userAgent)}}function w(a){if(j.has(a))return j.get(a);let b=null;try{b=JSON.parse(d.readFileSync(o(a),"utf8"))}catch{b=q(a)}return"claude-cli"!==a||u(b)||(b=q(a)),b&&j.set(a,b),b}function x(a){let b=w(a);return"claude-cli"!==a||u(b)?b:q(a)}function y(a,b){if(b&&"object"==typeof b){j.set(a,b);try{d.mkdirSync(n(),{recursive:!0}),d.writeFileSync(o(a),JSON.stringify(b,null,2))}catch{}}}function z(a){if("string"!=typeof a)return null;let b=a.match(/claude-cli\/(\d+\.\d+\.\d+)/i)||a.match(/codex_cli_rs\/(\d+\.\d+\.\d+)/i)||a.match(/GeminiCLI\/(\d+\.\d+\.\d+)/i)||a.match(/Cline\/(\d+\.\d+\.\d+)/i)||a.match(/antigravity\/(\d+\.\d+\.\d+)/i)||a.match(/QwenCode\/(\d+\.\d+\.\d+)/i)||a.match(/GitHubCopilotChat\/(\d+\.\d+\.\d+)/i);return b?b[1]:null}let A={"claude-cli":/claude-(?:cli|code)\//i,"codex-cli":/codex_cli_rs\//i,"gemini-cli":/GeminiCLI\//i,cline:/Cline\//i,antigravity:/antigravity\//i,qwen:/QwenCode\//i,copilot:/GitHubCopilotChat\//i};function B(a){let b=a||"anonymous";if(k.has(b))return k.get(b);let c=(0,f.createHash)("sha256").update(`device:${b}`).digest("hex"),d={buildHash:c.slice(0,3),deviceId:c,accountUuid:`${c.slice(0,8)}-${c.slice(8,12)}-4${c.slice(13,16)}-a${c.slice(17,20)}-${c.slice(20,32)}`,os:(0,h.vv)(),arch:(0,h.Tc)()};return k.set(b,d),d}function C(a,b){l.has(a)||(l.add(a),console.warn(`[IDENTITY_STALE] ${a}: ${b}`))}async function D(a,b){let c=g.jI[a]?.source?.npm;if(!c)return null;let d=await b(`https://registry.npmjs.org/${encodeURIComponent(c)}/latest`,{headers:{Accept:"application/json"}});if(!d.ok)return null;let e=await d.json();return r(e?.version)?e.version:null}async function E(a=globalThis.fetch){"function"==typeof a&&await Promise.all(i.map(async b=>{try{var c;let d,e=await D(b,a);if(!e)return;let f=x(b)||q(b)||{};if("claude-cli"===b){t(e,f.version)>0&&(y(b,{...f,latestVersion:e,checkedAt:Date.now()}),C(b,`npm ${e} is ahead of captured tuple ${f.version}`));return}if(c=f,!(!((d=A[b])&&c?.userAgent)||d.test(c.userAgent))||t(f.version,e)>0)C(b,`stored snapshot ${f.version} cannot belong to ${b}; reset to npm ${e}`),f=q(b)||{};else if(0>=t(e,f.version))return;let g="codex-cli"===b?`codex_cli_rs/${e}`:f.userAgent;y(b,{...f,version:e,...g?{userAgent:g}:{},checkedAt:Date.now()})}catch{}}))}function F(){let a=Date.now();for(let b of Object.keys(g.jI)){let c=x(b)||q(b),d=c?.capturedAt;if(!d)continue;let e=a-new Date(d).getTime();if(Number.isFinite(e)&&e>2592e6){let a=Math.floor(e/864e5);C(b,`snapshot is ${a}d old; run npm run identity:refresh`)}}}"1"!==process.env.SWITCHBOARD_DISABLE_IDENTITY_POLL&&queueMicrotask(()=>(function(a=globalThis.fetch){return m||"function"!=typeof a||(E(a),F(),m=setInterval(()=>{E(a),F()},216e5),m.unref?.()),m})())},70634:(a,b,c)=>{"use strict";let{MockNotMatchedError:d}=c(28998),{kDispatches:e,kMockAgent:f,kOriginalDispatch:g,kOrigin:h,kGetNetConnect:i,kTotalDispatchCount:j}=c(80830),{serializePathWithQuery:k,parseHeaders:l}=c(84285),{STATUS_CODES:m}=c(37067),{types:{isPromise:n}}=c(57975),{InvalidArgumentError:o}=c(61448),p=Symbol("request aborted");function q(a,b){return"string"==typeof a?a===b:a instanceof RegExp?a.test(b):"function"==typeof a&&!0===a(b)}function r(a){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a.toLocaleLowerCase(),b]))}function s(a,b){if(Array.isArray(a)){for(let c=0;c<a.length;c+=2)if(a[c].toLocaleLowerCase()===b.toLocaleLowerCase())return a[c+1];return}return"function"==typeof a.get?a.get(b):r(a)[b.toLocaleLowerCase()]}function t(a){let b=a.slice(),c=[];for(let a=0;a<b.length;a+=2)c.push([b[a],b[a+1]]);return Object.fromEntries(c)}function u(a,b){if("function"==typeof a.headers)return Array.isArray(b)&&(b=t(b)),a.headers(b?r(b):{});if(void 0===a.headers)return!0;if("object"!=typeof b||"object"!=typeof a.headers)return!1;for(let[c,d]of Object.entries(a.headers))if(!q(d,s(b,c)))return!1;return!0}function v(a){if("string"!=typeof a)return a;let b=a.split("?",3);if(2!==b.length)return a;let c=new URLSearchParams(b.pop());return c.sort(),[...b,c.toString()].join("?")}function w(a){if(Buffer.isBuffer(a)||a instanceof Uint8Array)return a;if(a instanceof ArrayBuffer)return a;if(ArrayBuffer.isView(a))return new Uint8Array(a.buffer,a.byteOffset,a.byteLength);if("object"==typeof a)return JSON.stringify(a);else if(a)return a.toString();else return""}function x(a,b){let c=b.query?k(b.path,b.query):b.path,e="string"==typeof c?v(c):c,f=z(e),g=a.filter(({consumed:a})=>!a).filter(({path:a,ignoreTrailingSlash:b})=>b?q(z(v(a)),f):q(v(a),e));if(0===g.length)throw new d(`Mock dispatch not matched for path '${e}'`);if(0===(g=g.filter(({method:a})=>q(a,b.method))).length)throw new d(`Mock dispatch not matched for method '${b.method}' on path '${e}'`);if(0===(g=g.filter(({body:a})=>void 0===a||q(a,b.body))).length)throw new d(`Mock dispatch not matched for body '${b.body}' on path '${e}'`);if(0===(g=g.filter(a=>u(a,b.headers))).length){let a="object"==typeof b.headers?JSON.stringify(b.headers):b.headers;throw new d(`Mock dispatch not matched for headers '${a}' on path '${e}'`)}return g[0]}function y(a,b){let c=a.findIndex(a=>!!a.consumed&&function(a,{path:b,method:c,body:d,headers:e}){let f=q(a.path,b),g=q(a.method,c),h=void 0===a.body||q(a.body,d),i=u(a,e);return f&&g&&h&&i}(a,b));-1!==c&&a.splice(c,1)}function z(a){if("string"!=typeof a)return a;for(;a.endsWith("/");)a=a.slice(0,-1);return 0===a.length&&(a="/"),a}function A(a){let{path:b,method:c,body:d,headers:e,query:f}=a;return{path:b,method:c,body:d,headers:e,query:f}}function B(a){let b=Object.keys(a),c=[];for(let d=0;d<b.length;++d){let e=b[d],f=a[e],g=Buffer.from(`${e}`);if(Array.isArray(f))for(let a=0;a<f.length;++a)c.push(g,Buffer.from(`${f[a]}`));else c.push(g,Buffer.from(`${f}`))}return c}function C(a){return m[a]||"unknown"}function D(a,b){let c=A(a),d=x(this[e],c),f=this[e];d.timesInvoked++;let{timesInvoked:g,times:h}=d;d.consumed=!d.persist&&g>=h,d.pending=g<h;let i="function"==typeof b.onBodySent||"function"==typeof b.onRequestSent;if(d.data.callback&&(!i||null==a.body)){let{callback:e,...g}=d.data,h=e(a);if(n(h))return h.then(e=>{null==e||"object"!=typeof e?b.onResponseError(null,new o("reply options callback must return an object")):E(f,d,c,a,b,{...g,...e})},a=>{b.onResponseError(null,a)}),!0;if(null==h||"object"!=typeof h)throw new o("reply options callback must return an object");return E(f,d,c,a,b,{...g,...h})}return E(f,d,c,a,b)}function E(a,b,c,d,e,f){let{data:g,delay:h}=b,i=f??g;if(null!==i.error)return y(a,c),e.onResponseError(null,i.error),!0;let j=!1,k=null,m={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:a=>{j||(j=!0,null!==k&&(clearTimeout(k),k=null),e.onResponseError?.(m,a))}},q=d;if(e.onRequestStart?.(m,null),j)return!0;let r=function(a,b,c,d){var e;if("function"!=typeof b.onBodySent&&"function"!=typeof b.onRequestSent)return a;if(null==a)return H(b,c,d)?a:p;if(a&&"function"==typeof a[Symbol.asyncIterator])return F(a,b,c,d);if("string"!=typeof(e=a)&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&"function"==typeof e[Symbol.iterator]){let e=[];for(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?e:p}return d()||!G(b,c,a)?p:H(b,c,d)?a:p}(d.body,e,m,()=>j);if(n(r))return r.then(a=>{a!==p&&(a!==d.body&&(q={...d,body:a}),s())},a=>m.abort(a)),!0;if(r===p)return!0;function s(){if(i.callback){let b,{callback:d,...f}=i;try{b=d(q)}catch(b){y(a,c),e.onResponseError(null,b);return}if(n(b))return void b.then(b=>{null==b||"object"!=typeof b?e.onResponseError(null,new o("reply options callback must return an object")):u(a,{...f,...b})},a=>{e.onResponseError(null,a)});if(null==b||"object"!=typeof b)throw new o("reply options callback must return an object");return void u(a,{...f,...b})}"number"==typeof h&&h>0?k=setTimeout(()=>{k=null,u(a)},h):u(a)}function u(a,b=i){if(j)return;let{statusCode:f,data:g,headers:h,trailers:k}=b,o=Array.isArray(d.headers)?t(d.headers):d.headers,p="function"==typeof g?g({...q,headers:o}):g;if(n(p))return p.then(c=>u(a,{...b,data:c}));if(j)return;let r=w(p),s=B(h??{}),v=B(k??{});m.rawHeaders=s,m.rawTrailers=v,e.onResponseStart?.(m,f,l(s),C(f)),e.onResponseData?.(m,Buffer.from(r)),e.onResponseEnd?.(m,l(v)),y(a,c)}return r!==d.body&&(q={...d,body:r}),s(),!0}async function F(a,b,c,d){let e=[];for await(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?{async *[Symbol.asyncIterator](){yield*e}}:p}function G(a,b,c){try{return a.onBodySent?.(c),!0}catch(a){return b.abort(a),!1}}function H(a,b,c){try{return a.onRequestSent?.(),!c()}catch(a){return b.abort(a),!1}}function I(a,b){let c=new URL(b);return!0===a||!!(Array.isArray(a)&&a.some(a=>q(a,c.host)))}a.exports={getResponseData:w,getMockDispatch:x,addMockDispatch:function(a,b,c,d){let e={timesInvoked:0,times:1,persist:!1,consumed:!1,...d},f="function"==typeof c?{callback:c}:{...c},g={...e,...b,pending:!0,data:{error:null,...f}};return a.push(g),a[j]=(a[j]||0)+1,g},deleteMockDispatch:y,buildKey:A,generateKeyValues:B,matchValue:q,getResponse:async function a(a){let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString("utf8")},getStatusText:C,mockDispatch:D,buildMockDispatch:function(){let a=this[f],b=this[h],c=this[g];return function(f,g){if(a.isMockActive)try{D.call(this,f,g)}catch(h){if("UND_MOCK_ERR_MOCK_NOT_MATCHED"===h.code){let k=a[i](),l=this[e][j]||this[e].length,m=this[e].filter(({consumed:a})=>!a).length,n=`, ${m} interceptor(s) remaining out of ${l} defined`;if(!1===k)throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect disabled)${n}`);if(I(k,b))c.call(this,"__mockAgentBodyForDispatch"in f?{...f,body:f.__mockAgentBodyForDispatch}:f,g);else throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect is not enabled for this origin)${n}`)}else throw h}else c.call(this,f,g)}},checkNetConnect:I,buildAndValidateMockOptions:function(a){let{agent:b,...c}=a;if("enableCallHistory"in c&&"boolean"!=typeof c.enableCallHistory)throw new o("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in c&&"boolean"!=typeof c.acceptNonStandardSearchParameters)throw new o("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in c&&"boolean"!=typeof c.ignoreTrailingSlash)throw new o("options.ignoreTrailingSlash must to be a boolean");return c},getHeaderByName:s,buildHeadersFromArray:t,normalizeSearchParams:function(a){if("string"!=typeof a)return a;let b=new URLSearchParams(a),c=new URLSearchParams;for(let[a,d]of b.entries()){if(a=a.replace("[]",""),/^(['"]).*\1$/.test(d)){c.append(a,d);continue}if(d.includes(",")){for(let b of d.split(","))c.append(a,b);continue}c.append(a,d)}return c},normalizeOrigin:function(a){return"string"==typeof a||a instanceof URL?a instanceof URL?a.origin:a.toLowerCase():a}}},70707:(a,b,c)=>{"use strict";let d=c(67519);a.exports=function({maxRedirections:a,throwOnMaxRedirect:b,stripHeadersOnRedirect:c,stripHeadersOnCrossOriginRedirect:e}={}){return f=>function(g,h){let{maxRedirections:i=a,throwOnMaxRedirect:j=b,stripHeadersOnRedirect:k=c,stripHeadersOnCrossOriginRedirect:l=e,...m}=g;if(null==i||0===i)return f(g,h);let n={...m,throwOnMaxRedirect:j,stripHeadersOnRedirect:k,stripHeadersOnCrossOriginRedirect:l},o=new d(f,i,n,h);return f(n,o)}}},70710:(a,b,c)=>{var d,e=c(45654);c(76632),c(1277),c(33889);var f=e.pkcs5=e.pkcs5||{};e.util.isNodejs&&!e.options.usePureJavaScript&&(d=c(55511)),a.exports=e.pbkdf2=f.pbkdf2=function(a,b,c,f,g,h){if("function"==typeof g&&(h=g,g=null),e.util.isNodejs&&!e.options.usePureJavaScript&&d.pbkdf2&&(null===g||"object"!=typeof g)&&(d.pbkdf2Sync.length>4||!g||"sha1"===g))return("string"!=typeof g&&(g="sha1"),a=Buffer.from(a,"binary"),b=Buffer.from(b,"binary"),h)?4===d.pbkdf2Sync.length?d.pbkdf2(a,b,c,f,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):d.pbkdf2(a,b,c,f,g,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):4===d.pbkdf2Sync.length?d.pbkdf2Sync(a,b,c,f).toString("binary"):d.pbkdf2Sync(a,b,c,f,g).toString("binary");if(null==g&&(g="sha1"),"string"==typeof g){if(!(g in e.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=e.md[g].create()}var i=g.digestLength;if(f>0xffffffff*i){var j=Error("Derived key is too long.");if(h)return h(j);throw j}var k=Math.ceil(f/i),l=f-(k-1)*i,m=e.hmac.create();m.start(g,a);var n="";if(!h){for(var o=1;o<=k;++o){m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes();for(var p=2;p<=c;++p)m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r;n+=o<k?q:q.substr(0,l)}return n}var q,r,s,p,o=1;!function a(){if(o>k)return h(null,n);m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes(),p=2,function b(){if(p<=c)return m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r,++p,e.util.setImmediate(b);n+=o<k?q:q.substr(0,l),++o,a()}()}()}},70745:(a,b,c)=>{"use strict";let d=c(34589),{utf8DecodeBytes:e}=c(67449),f=/[\u0009\u000A\u000C\u000D\u0020]/g;function g(a){return 9===a||10===a||12===a||13===a||32===a}let h=/[^\x00-\xFF]/,i=/[^\x00-\x7F]/;function j(a,b,c,d){let e=0,f=a.length-1;if(b)for(;e<a.length&&d(a.charCodeAt(e));)e++;if(c)for(;f>=e&&d(a.charCodeAt(f));)f--;return 0===e&&f===a.length-1?a:a.slice(e,f+1)}a.exports={asciiLowercase:function(a){return i.test(a)?a.replace(/[A-Z]+/g,a=>a.toLowerCase()):a.toLowerCase()},collectASequenceOfCodePoints:function(a,b,c){let d="";for(;c.position<b.length&&a(b[c.position]);)d+=b[c.position],c.position++;return d},collectASequenceOfCodePointsFast:function(a,b,c){let d=b.indexOf(a,c.position),e=c.position;return -1===d?(c.position=b.length,b.slice(e)):(c.position=d,b.slice(e,c.position))},forgivingBase64:function(a){let b=(a=a.replace(f,"")).length;if(b%4==0&&61===a.charCodeAt(b-1)&&(--b,61===a.charCodeAt(b-1)&&--b),b%4==1||/[^+/0-9A-Za-z]/.test(a.length===b?a:a.substring(0,b)))return"failure";let c=Buffer.from(a,"base64");return new Uint8Array(c.buffer,c.byteOffset,c.byteLength)},isASCIIWhitespace:g,isomorphicDecode:function(a){let b=a.length;if(65535>b)return String.fromCharCode.apply(null,a);let c="",d=0,e=65535;for(;d<b;)d+e>b&&(e=b-d),c+=String.fromCharCode.apply(null,a.subarray(d,d+=e));return c},isomorphicEncode:function(a){return d(!h.test(a)),a},parseJSONFromBytes:function(a){return JSON.parse(e(a))},removeASCIIWhitespace:function(a,b=!0,c=!0){return j(a,b,c,g)},removeChars:j,serializeJavascriptValueToJSONString:function(a){let b=JSON.stringify(a);if(void 0===b)throw TypeError("Value is not JSON serializable");return d("string"==typeof b),b}}},70799:(a,b,c)=>{"use strict";c.d(b,{JA:()=>l});var d=c(55511),e=c(77598);let f=function(a){return Array.isArray(a)?a=Buffer.from(a):"string"==typeof a&&(a=Buffer.from(a,"utf8")),(0,e.createHash)("sha1").update(a).digest()},g=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,h=function(a){let b;if(!("string"==typeof a&&g.test(a)))throw TypeError("Invalid UUID");return Uint8Array.of((b=parseInt(a.slice(0,8),16))>>>24,b>>>16&255,b>>>8&255,255&b,(b=parseInt(a.slice(9,13),16))>>>8,255&b,(b=parseInt(a.slice(14,18),16))>>>8,255&b,(b=parseInt(a.slice(19,23),16))>>>8,255&b,(b=parseInt(a.slice(24,36),16))/0x10000000000&255,b/0x100000000&255,b>>>24&255,b>>>16&255,b>>>8&255,255&b)};var i=c(82009);function j(a,b,c,d){var e=b,g=d;let j="string"==typeof a?function(a){let b=new Uint8Array((a=unescape(encodeURIComponent(a))).length);for(let c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}(a):a,k="string"==typeof e?h(e):e;if("string"==typeof e&&(e=h(e)),e?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+j.length);if(l.set(k),l.set(j,k.length),(l=f(l))[6]=15&l[6]|80,l[8]=63&l[8]|128,c){if((g??=0)<0||g+16>c.length)throw RangeError(`UUID byte range ${g}:${g+15} is out of buffer bounds`);for(let a=0;a<16;++a)c[g+a]=l[a];return c}return(0,i.k)(l)}function k(a,b=""){return d.createHash("sha256").update(a+b).digest("hex")}function l(a,b=null,c=!0){let e=a.includes("::")?a.split("::")[1]:a,f=b||k(e,"machineId"),g=j(e,j.DNS),h=k(e),i=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(f),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${e}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${d.randomUUID()}`,"x-client-key":h,"x-cursor-checksum":i,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":d.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":d.randomUUID(),"x-session-id":g}}j.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",j.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8"},70815:(a,b,c)=>{"use strict";c.d(b,{$s:()=>i,Bl:()=>j,M8:()=>h,ui:()=>k});var d=c(24081);let e="vault_fts",f=null;function g(a){if(null!==f)return f;try{a.run("CREATE VIRTUAL TABLE IF NOT EXISTS vault_fts USING fts5(text, entryId UNINDEXED, chunkIndex UNINDEXED, conversationId UNINDEXED, tokenize='porter unicode61')"),f=!0}catch{f=!1}return f}async function h({id:a,conversationId:b,toolName:c,content:f,chunks:i,ttlMs:j}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b||"string"!=typeof f||!f)return!1;let h=Buffer.byteLength(f,"utf8"),k=Number(j);if(h>5242880||!Number.isFinite(k)||k<=0)return!1;let l=await (0,d.c)(),m=Date.now(),n=new Date(m).toISOString(),o=new Date(m+k).toISOString(),p=Array.isArray(i)&&i.length>0?i:[f];if(p.length>2e3)return!1;l.run(`INSERT OR REPLACE INTO vault_entries(id, conversationId, toolName, content, sizeBytes, createdAt, expiresAt, lastAccessedAt)
|
|
390
|
+
[CommandCode error: ${e}]`})),d.push(m(b,{},f.bC.STOP))}}return d.length?d:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,o)},69641:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(22884),c(87350),c(84970);var d=c(68531);c(82812),c(18762),c(20830),c(96997),c(1654),c(98976),c(6125),c(50969),c(13161),c(38421),c(80152),c(82689),c(7878),c(17438);var e=c(95695);c(81556),c(49926),c(69493),c(52748),c(978),c(96998),c(76441),c(55261),c(4879),c(34578),c(78116),c(25720),c(49623),c(31629),c(23493),c(33871),c(50132),c(49471),c(46036),c(14896);var f=a([e]);e=(f.then?(await f)():f)[0],d.h.GEMINI,d.h.GEMINI_CLI,d.h.ANTIGRAVITY,d.h.VERTEX,b()}catch(a){b(a)}})},70106:(a,b,c)=>{"use strict";let{parseSetCookie:d}=c(5831),{stringify:e}=c(84698),{webidl:f}=c(32984);function g(a){try{f.brandCheck(a,f.is.Headers);return}catch{}f.brandCheck(a,f.util.MakeTypeAssertion(globalThis.Headers))}function h(a,b){f.argumentLengthCheck(arguments,2,"setCookie"),g(a);let c=e(b=f.converters.Cookie(b));c&&a.append("set-cookie",c,!0)}f.converters.DeleteCookieAttributes=f.dictionaryConverter([{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null}]),f.converters.Cookie=f.dictionaryConverter([{converter:f.converters.DOMString,key:"name"},{converter:f.converters.DOMString,key:"value"},{converter:f.nullableConverter(a=>"number"==typeof a?f.converters["unsigned long long"](a):new Date(a)),key:"expires",defaultValue:()=>null},{converter:f.nullableConverter(f.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.DOMString),key:"path",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"secure",defaultValue:()=>null},{converter:f.nullableConverter(f.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:f.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:f.sequenceConverter(f.converters.DOMString),key:"unparsed",defaultValue:()=>[]}]),a.exports={getCookies:function(a){f.argumentLengthCheck(arguments,1,"getCookies"),g(a);let b=a.get("cookie"),c={__proto__:null};if(!b)return c;for(let a of b.split(";")){let[b,...d]=a.split("=");c[b.trim()]=d.join("=")}return c},deleteCookie:function(a,b,c){g(a);let d="deleteCookie";f.argumentLengthCheck(arguments,2,d),b=f.converters.DOMString(b,d,"name"),c=f.converters.DeleteCookieAttributes(c),h(a,{name:b,value:"",expires:new Date(0),...c})},getSetCookies:function(a){f.argumentLengthCheck(arguments,1,"getSetCookies"),g(a);let b=a.getSetCookie();return b?b.map(a=>d(a)):[]},setCookie:h,parseCookie:function(a){return d(a=f.converters.DOMString(a))}}},70459:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{Console:e}=c(37540),f=process.versions.icu?"✅":"Y ",g=process.versions.icu?"❌":"N ";a.exports=class{constructor({disableColors:a}={}){this.transform=new d({transform(a,b,c){c(null,a)}}),this.logger=new e({stdout:this.transform,inspectOptions:{colors:!a&&!process.env.CI}})}format(a){let b=a.map(({method:a,path:b,data:{statusCode:c},persist:d,times:e,timesInvoked:h,origin:i})=>({Method:a,Origin:i,Path:b,"Status code":c,Persistent:d?f:g,Invocations:h,Remaining:d?1/0:e-h}));return this.logger.table(b),this.transform.read().toString()}}},70625:(a,b,c)=>{"use strict";c.d(b,{Iq:()=>B,Kn:()=>v,dV:()=>w,zi:()=>x});var d=c(73024),e=c(76760),f=c(77598),g=c(59882),h=c(3507);let i=["claude-cli","codex-cli","gemini-cli"],j=new Map,k=new Map,l=new Set,m=null;function n(){let a=process.env.DATA_DIR||e.join(process.env.HOME||process.env.USERPROFILE||".",".switchboard");return e.join(a,"identity")}function o(a){return e.join(n(),`${a}.json`)}let p=function(){try{return JSON.parse(d.readFileSync(e.join(process.cwd(),"open-sse","identity","snapshots","versions.json"),"utf8"))}catch{try{return JSON.parse(d.readFileSync(new c.U(c(13839)),"utf8"))}catch{return{}}}}();function q(a){let b=p[a],c=b?.version;if(!c)return null;if("claude-cli"!==a)return{version:c,latestVersion:b.latestVersion};let d=b.tlsSpecRev||c;return{version:c,billingVersion:c,tlsSpecRev:d,latestVersion:b.latestVersion,capturedAt:b.capturedAt,entrypoint:b.entrypoint||"cli",userAgent:`claude-cli/${c} (external, ${b.entrypoint||"cli"})`,packageVersion:b.packageVersion||"0.128.0",runtimeVersion:b.runtimeVersion||"v26.3.0",betas:b.betas||"claude-code-20250219,interleaved-thinking-2025-05-14,redact-thinking-2026-02-12,thinking-token-count-2026-05-13,context-management-2025-06-27,prompt-caching-scope-2026-01-05,effort-2025-11-24,structured-outputs-2025-12-15"}}function r(a){let b=String(a||"").split(".").map(Number);return 3===b.length&&b.every(Number.isInteger)?b:null}function s(a){let b=String(a?.tlsSpecRev||"").match(/(\d+\.\d+\.\d+)/);return b?.[1]||null}function t(a,b){let c=r(a),d=r(b);if(!c||!d)return 0;for(let a=0;a<3;a++)if(c[a]!==d[a])return c[a]-d[a];return 0}function u(a){return!!(a?.version&&a?.billingVersion===a.version&&s(a)===a.version&&a.version===(z(p["claude-cli"]?.tlsSpecRev)||p["claude-cli"]?.version||null)&&a?.userAgent?.includes(`claude-cli/${a.version}`)&&a?.packageVersion&&a?.runtimeVersion&&a?.betas)}function v(a){return{version:a?.version||null,billingVersion:a?.billingVersion||null,tlsVersion:s(a),userAgentVersion:z(a?.userAgent)}}function w(a){if(j.has(a))return j.get(a);let b=null;try{b=JSON.parse(d.readFileSync(o(a),"utf8"))}catch{b=q(a)}return"claude-cli"!==a||u(b)||(b=q(a)),b&&j.set(a,b),b}function x(a){let b=w(a);return"claude-cli"!==a||u(b)?b:q(a)}function y(a,b){if(b&&"object"==typeof b){j.set(a,b);try{d.mkdirSync(n(),{recursive:!0}),d.writeFileSync(o(a),JSON.stringify(b,null,2))}catch{}}}function z(a){if("string"!=typeof a)return null;let b=a.match(/claude-cli\/(\d+\.\d+\.\d+)/i)||a.match(/codex_cli_rs\/(\d+\.\d+\.\d+)/i)||a.match(/GeminiCLI\/(\d+\.\d+\.\d+)/i)||a.match(/Cline\/(\d+\.\d+\.\d+)/i)||a.match(/antigravity\/(\d+\.\d+\.\d+)/i)||a.match(/QwenCode\/(\d+\.\d+\.\d+)/i)||a.match(/GitHubCopilotChat\/(\d+\.\d+\.\d+)/i);return b?b[1]:null}let A={"claude-cli":/claude-(?:cli|code)\//i,"codex-cli":/codex_cli_rs\//i,"gemini-cli":/GeminiCLI\//i,cline:/Cline\//i,antigravity:/antigravity\//i,qwen:/QwenCode\//i,copilot:/GitHubCopilotChat\//i};function B(a){let b=a||"anonymous";if(k.has(b))return k.get(b);let c=(0,f.createHash)("sha256").update(`device:${b}`).digest("hex"),d={buildHash:c.slice(0,3),deviceId:c,accountUuid:`${c.slice(0,8)}-${c.slice(8,12)}-4${c.slice(13,16)}-a${c.slice(17,20)}-${c.slice(20,32)}`,os:(0,h.vv)(),arch:(0,h.Tc)()};return k.set(b,d),d}function C(a,b){l.has(a)||(l.add(a),console.warn(`[IDENTITY_STALE] ${a}: ${b}`))}async function D(a,b){let c=g.jI[a]?.source?.npm;if(!c)return null;let d=await b(`https://registry.npmjs.org/${encodeURIComponent(c)}/latest`,{headers:{Accept:"application/json"}});if(!d.ok)return null;let e=await d.json();return r(e?.version)?e.version:null}async function E(a=globalThis.fetch){"function"==typeof a&&await Promise.all(i.map(async b=>{try{var c;let d,e=await D(b,a);if(!e)return;let f=x(b)||q(b)||{};if("claude-cli"===b){t(e,f.version)>0&&(y(b,{...f,latestVersion:e,checkedAt:Date.now()}),C(b,`npm ${e} is ahead of captured tuple ${f.version}`));return}if(c=f,!(!((d=A[b])&&c?.userAgent)||d.test(c.userAgent))||t(f.version,e)>0)C(b,`stored snapshot ${f.version} cannot belong to ${b}; reset to npm ${e}`),f=q(b)||{};else if(0>=t(e,f.version))return;let g="codex-cli"===b?`codex_cli_rs/${e}`:f.userAgent;y(b,{...f,version:e,...g?{userAgent:g}:{},checkedAt:Date.now()})}catch{}}))}function F(){let a=Date.now();for(let b of Object.keys(g.jI)){let c=x(b)||q(b),d=c?.capturedAt;if(!d)continue;let e=a-new Date(d).getTime();if(Number.isFinite(e)&&e>2592e6){let a=Math.floor(e/864e5);C(b,`snapshot is ${a}d old; run npm run identity:refresh`)}}}"1"!==process.env.SWITCHBOARD_DISABLE_IDENTITY_POLL&&queueMicrotask(()=>(function(a=globalThis.fetch){return m||"function"!=typeof a||(E(a),F(),m=setInterval(()=>{E(a),F()},216e5),m.unref?.()),m})())},70634:(a,b,c)=>{"use strict";let{MockNotMatchedError:d}=c(28998),{kDispatches:e,kMockAgent:f,kOriginalDispatch:g,kOrigin:h,kGetNetConnect:i,kTotalDispatchCount:j}=c(80830),{serializePathWithQuery:k,parseHeaders:l}=c(84285),{STATUS_CODES:m}=c(37067),{types:{isPromise:n}}=c(57975),{InvalidArgumentError:o}=c(61448),p=Symbol("request aborted");function q(a,b){return"string"==typeof a?a===b:a instanceof RegExp?a.test(b):"function"==typeof a&&!0===a(b)}function r(a){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a.toLocaleLowerCase(),b]))}function s(a,b){if(Array.isArray(a)){for(let c=0;c<a.length;c+=2)if(a[c].toLocaleLowerCase()===b.toLocaleLowerCase())return a[c+1];return}return"function"==typeof a.get?a.get(b):r(a)[b.toLocaleLowerCase()]}function t(a){let b=a.slice(),c=[];for(let a=0;a<b.length;a+=2)c.push([b[a],b[a+1]]);return Object.fromEntries(c)}function u(a,b){if("function"==typeof a.headers)return Array.isArray(b)&&(b=t(b)),a.headers(b?r(b):{});if(void 0===a.headers)return!0;if("object"!=typeof b||"object"!=typeof a.headers)return!1;for(let[c,d]of Object.entries(a.headers))if(!q(d,s(b,c)))return!1;return!0}function v(a){if("string"!=typeof a)return a;let b=a.split("?",3);if(2!==b.length)return a;let c=new URLSearchParams(b.pop());return c.sort(),[...b,c.toString()].join("?")}function w(a){if(Buffer.isBuffer(a)||a instanceof Uint8Array)return a;if(a instanceof ArrayBuffer)return a;if(ArrayBuffer.isView(a))return new Uint8Array(a.buffer,a.byteOffset,a.byteLength);if("object"==typeof a)return JSON.stringify(a);else if(a)return a.toString();else return""}function x(a,b){let c=b.query?k(b.path,b.query):b.path,e="string"==typeof c?v(c):c,f=z(e),g=a.filter(({consumed:a})=>!a).filter(({path:a,ignoreTrailingSlash:b})=>b?q(z(v(a)),f):q(v(a),e));if(0===g.length)throw new d(`Mock dispatch not matched for path '${e}'`);if(0===(g=g.filter(({method:a})=>q(a,b.method))).length)throw new d(`Mock dispatch not matched for method '${b.method}' on path '${e}'`);if(0===(g=g.filter(({body:a})=>void 0===a||q(a,b.body))).length)throw new d(`Mock dispatch not matched for body '${b.body}' on path '${e}'`);if(0===(g=g.filter(a=>u(a,b.headers))).length){let a="object"==typeof b.headers?JSON.stringify(b.headers):b.headers;throw new d(`Mock dispatch not matched for headers '${a}' on path '${e}'`)}return g[0]}function y(a,b){let c=a.findIndex(a=>!!a.consumed&&function(a,{path:b,method:c,body:d,headers:e}){let f=q(a.path,b),g=q(a.method,c),h=void 0===a.body||q(a.body,d),i=u(a,e);return f&&g&&h&&i}(a,b));-1!==c&&a.splice(c,1)}function z(a){if("string"!=typeof a)return a;for(;a.endsWith("/");)a=a.slice(0,-1);return 0===a.length&&(a="/"),a}function A(a){let{path:b,method:c,body:d,headers:e,query:f}=a;return{path:b,method:c,body:d,headers:e,query:f}}function B(a){let b=Object.keys(a),c=[];for(let d=0;d<b.length;++d){let e=b[d],f=a[e],g=Buffer.from(`${e}`);if(Array.isArray(f))for(let a=0;a<f.length;++a)c.push(g,Buffer.from(`${f[a]}`));else c.push(g,Buffer.from(`${f}`))}return c}function C(a){return m[a]||"unknown"}function D(a,b){let c=A(a),d=x(this[e],c),f=this[e];d.timesInvoked++;let{timesInvoked:g,times:h}=d;d.consumed=!d.persist&&g>=h,d.pending=g<h;let i="function"==typeof b.onBodySent||"function"==typeof b.onRequestSent;if(d.data.callback&&(!i||null==a.body)){let{callback:e,...g}=d.data,h=e(a);if(n(h))return h.then(e=>{null==e||"object"!=typeof e?b.onResponseError(null,new o("reply options callback must return an object")):E(f,d,c,a,b,{...g,...e})},a=>{b.onResponseError(null,a)}),!0;if(null==h||"object"!=typeof h)throw new o("reply options callback must return an object");return E(f,d,c,a,b,{...g,...h})}return E(f,d,c,a,b)}function E(a,b,c,d,e,f){let{data:g,delay:h}=b,i=f??g;if(null!==i.error)return y(a,c),e.onResponseError(null,i.error),!0;let j=!1,k=null,m={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:a=>{j||(j=!0,null!==k&&(clearTimeout(k),k=null),e.onResponseError?.(m,a))}},q=d;if(e.onRequestStart?.(m,null),j)return!0;let r=function(a,b,c,d){var e;if("function"!=typeof b.onBodySent&&"function"!=typeof b.onRequestSent)return a;if(null==a)return H(b,c,d)?a:p;if(a&&"function"==typeof a[Symbol.asyncIterator])return F(a,b,c,d);if("string"!=typeof(e=a)&&!Buffer.isBuffer(e)&&!ArrayBuffer.isView(e)&&"function"==typeof e[Symbol.iterator]){let e=[];for(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?e:p}return d()||!G(b,c,a)?p:H(b,c,d)?a:p}(d.body,e,m,()=>j);if(n(r))return r.then(a=>{a!==p&&(a!==d.body&&(q={...d,body:a}),s())},a=>m.abort(a)),!0;if(r===p)return!0;function s(){if(i.callback){let b,{callback:d,...f}=i;try{b=d(q)}catch(b){y(a,c),e.onResponseError(null,b);return}if(n(b))return void b.then(b=>{null==b||"object"!=typeof b?e.onResponseError(null,new o("reply options callback must return an object")):u(a,{...f,...b})},a=>{e.onResponseError(null,a)});if(null==b||"object"!=typeof b)throw new o("reply options callback must return an object");return void u(a,{...f,...b})}"number"==typeof h&&h>0?k=setTimeout(()=>{k=null,u(a)},h):u(a)}function u(a,b=i){if(j)return;let{statusCode:f,data:g,headers:h,trailers:k}=b,o=Array.isArray(d.headers)?t(d.headers):d.headers,p="function"==typeof g?g({...q,headers:o}):g;if(n(p))return p.then(c=>u(a,{...b,data:c}));if(j)return;let r=w(p),s=B(h??{}),v=B(k??{});m.rawHeaders=s,m.rawTrailers=v,e.onResponseStart?.(m,f,l(s),C(f)),e.onResponseData?.(m,Buffer.from(r)),e.onResponseEnd?.(m,l(v)),y(a,c)}return r!==d.body&&(q={...d,body:r}),s(),!0}async function F(a,b,c,d){let e=[];for await(let f of a)if(d()||(e.push(f),!G(b,c,f)||d()))return p;return H(b,c,d)?{async *[Symbol.asyncIterator](){yield*e}}:p}function G(a,b,c){try{return a.onBodySent?.(c),!0}catch(a){return b.abort(a),!1}}function H(a,b,c){try{return a.onRequestSent?.(),!c()}catch(a){return b.abort(a),!1}}function I(a,b){let c=new URL(b);return!0===a||!!(Array.isArray(a)&&a.some(a=>q(a,c.host)))}a.exports={getResponseData:w,getMockDispatch:x,addMockDispatch:function(a,b,c,d){let e={timesInvoked:0,times:1,persist:!1,consumed:!1,...d},f="function"==typeof c?{callback:c}:{...c},g={...e,...b,pending:!0,data:{error:null,...f}};return a.push(g),a[j]=(a[j]||0)+1,g},deleteMockDispatch:y,buildKey:A,generateKeyValues:B,matchValue:q,getResponse:async function a(a){let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString("utf8")},getStatusText:C,mockDispatch:D,buildMockDispatch:function(){let a=this[f],b=this[h],c=this[g];return function(f,g){if(a.isMockActive)try{D.call(this,f,g)}catch(h){if("UND_MOCK_ERR_MOCK_NOT_MATCHED"===h.code){let k=a[i](),l=this[e][j]||this[e].length,m=this[e].filter(({consumed:a})=>!a).length,n=`, ${m} interceptor(s) remaining out of ${l} defined`;if(!1===k)throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect disabled)${n}`);if(I(k,b))c.call(this,"__mockAgentBodyForDispatch"in f?{...f,body:f.__mockAgentBodyForDispatch}:f,g);else throw new d(`${h.message}: subsequent request to origin ${b} was not allowed (net.connect is not enabled for this origin)${n}`)}else throw h}else c.call(this,f,g)}},checkNetConnect:I,buildAndValidateMockOptions:function(a){let{agent:b,...c}=a;if("enableCallHistory"in c&&"boolean"!=typeof c.enableCallHistory)throw new o("options.enableCallHistory must to be a boolean");if("acceptNonStandardSearchParameters"in c&&"boolean"!=typeof c.acceptNonStandardSearchParameters)throw new o("options.acceptNonStandardSearchParameters must to be a boolean");if("ignoreTrailingSlash"in c&&"boolean"!=typeof c.ignoreTrailingSlash)throw new o("options.ignoreTrailingSlash must to be a boolean");return c},getHeaderByName:s,buildHeadersFromArray:t,normalizeSearchParams:function(a){if("string"!=typeof a)return a;let b=new URLSearchParams(a),c=new URLSearchParams;for(let[a,d]of b.entries()){if(a=a.replace("[]",""),/^(['"]).*\1$/.test(d)){c.append(a,d);continue}if(d.includes(",")){for(let b of d.split(","))c.append(a,b);continue}c.append(a,d)}return c},normalizeOrigin:function(a){return"string"==typeof a||a instanceof URL?a instanceof URL?a.origin:a.toLowerCase():a}}},70707:(a,b,c)=>{"use strict";let d=c(67519);a.exports=function({maxRedirections:a,throwOnMaxRedirect:b,stripHeadersOnRedirect:c,stripHeadersOnCrossOriginRedirect:e}={}){return f=>function(g,h){let{maxRedirections:i=a,throwOnMaxRedirect:j=b,stripHeadersOnRedirect:k=c,stripHeadersOnCrossOriginRedirect:l=e,...m}=g;if(null==i||0===i)return f(g,h);let n={...m,throwOnMaxRedirect:j,stripHeadersOnRedirect:k,stripHeadersOnCrossOriginRedirect:l},o=new d(f,i,n,h);return f(n,o)}}},70710:(a,b,c)=>{var d,e=c(45654);c(76632),c(1277),c(33889);var f=e.pkcs5=e.pkcs5||{};e.util.isNodejs&&!e.options.usePureJavaScript&&(d=c(55511)),a.exports=e.pbkdf2=f.pbkdf2=function(a,b,c,f,g,h){if("function"==typeof g&&(h=g,g=null),e.util.isNodejs&&!e.options.usePureJavaScript&&d.pbkdf2&&(null===g||"object"!=typeof g)&&(d.pbkdf2Sync.length>4||!g||"sha1"===g))return("string"!=typeof g&&(g="sha1"),a=Buffer.from(a,"binary"),b=Buffer.from(b,"binary"),h)?4===d.pbkdf2Sync.length?d.pbkdf2(a,b,c,f,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):d.pbkdf2(a,b,c,f,g,function(a,b){if(a)return h(a);h(null,b.toString("binary"))}):4===d.pbkdf2Sync.length?d.pbkdf2Sync(a,b,c,f).toString("binary"):d.pbkdf2Sync(a,b,c,f,g).toString("binary");if(null==g&&(g="sha1"),"string"==typeof g){if(!(g in e.md.algorithms))throw Error("Unknown hash algorithm: "+g);g=e.md[g].create()}var i=g.digestLength;if(f>0xffffffff*i){var j=Error("Derived key is too long.");if(h)return h(j);throw j}var k=Math.ceil(f/i),l=f-(k-1)*i,m=e.hmac.create();m.start(g,a);var n="";if(!h){for(var o=1;o<=k;++o){m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes();for(var p=2;p<=c;++p)m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r;n+=o<k?q:q.substr(0,l)}return n}var q,r,s,p,o=1;!function a(){if(o>k)return h(null,n);m.start(null,null),m.update(b),m.update(e.util.int32ToBytes(o)),q=s=m.digest().getBytes(),p=2,function b(){if(p<=c)return m.start(null,null),m.update(s),r=m.digest().getBytes(),q=e.util.xorBytes(q,r,i),s=r,++p,e.util.setImmediate(b);n+=o<k?q:q.substr(0,l),++o,a()}()}()}},70745:(a,b,c)=>{"use strict";let d=c(34589),{utf8DecodeBytes:e}=c(67449),f=/[\u0009\u000A\u000C\u000D\u0020]/g;function g(a){return 9===a||10===a||12===a||13===a||32===a}let h=/[^\x00-\xFF]/,i=/[^\x00-\x7F]/;function j(a,b,c,d){let e=0,f=a.length-1;if(b)for(;e<a.length&&d(a.charCodeAt(e));)e++;if(c)for(;f>=e&&d(a.charCodeAt(f));)f--;return 0===e&&f===a.length-1?a:a.slice(e,f+1)}a.exports={asciiLowercase:function(a){return i.test(a)?a.replace(/[A-Z]+/g,a=>a.toLowerCase()):a.toLowerCase()},collectASequenceOfCodePoints:function(a,b,c){let d="";for(;c.position<b.length&&a(b[c.position]);)d+=b[c.position],c.position++;return d},collectASequenceOfCodePointsFast:function(a,b,c){let d=b.indexOf(a,c.position),e=c.position;return -1===d?(c.position=b.length,b.slice(e)):(c.position=d,b.slice(e,c.position))},forgivingBase64:function(a){let b=(a=a.replace(f,"")).length;if(b%4==0&&61===a.charCodeAt(b-1)&&(--b,61===a.charCodeAt(b-1)&&--b),b%4==1||/[^+/0-9A-Za-z]/.test(a.length===b?a:a.substring(0,b)))return"failure";let c=Buffer.from(a,"base64");return new Uint8Array(c.buffer,c.byteOffset,c.byteLength)},isASCIIWhitespace:g,isomorphicDecode:function(a){let b=a.length;if(65535>b)return String.fromCharCode.apply(null,a);let c="",d=0,e=65535;for(;d<b;)d+e>b&&(e=b-d),c+=String.fromCharCode.apply(null,a.subarray(d,d+=e));return c},isomorphicEncode:function(a){return d(!h.test(a)),a},parseJSONFromBytes:function(a){return JSON.parse(e(a))},removeASCIIWhitespace:function(a,b=!0,c=!0){return j(a,b,c,g)},removeChars:j,serializeJavascriptValueToJSONString:function(a){let b=JSON.stringify(a);if(void 0===b)throw TypeError("Value is not JSON serializable");return d("string"==typeof b),b}}},70799:(a,b,c)=>{"use strict";c.d(b,{JA:()=>l});var d=c(55511),e=c(77598);let f=function(a){return Array.isArray(a)?a=Buffer.from(a):"string"==typeof a&&(a=Buffer.from(a,"utf8")),(0,e.createHash)("sha1").update(a).digest()},g=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/i,h=function(a){let b;if(!("string"==typeof a&&g.test(a)))throw TypeError("Invalid UUID");return Uint8Array.of((b=parseInt(a.slice(0,8),16))>>>24,b>>>16&255,b>>>8&255,255&b,(b=parseInt(a.slice(9,13),16))>>>8,255&b,(b=parseInt(a.slice(14,18),16))>>>8,255&b,(b=parseInt(a.slice(19,23),16))>>>8,255&b,(b=parseInt(a.slice(24,36),16))/0x10000000000&255,b/0x100000000&255,b>>>24&255,b>>>16&255,b>>>8&255,255&b)};var i=c(82009);function j(a,b,c,d){var e=b,g=d;let j="string"==typeof a?function(a){let b=new Uint8Array((a=unescape(encodeURIComponent(a))).length);for(let c=0;c<a.length;++c)b[c]=a.charCodeAt(c);return b}(a):a,k="string"==typeof e?h(e):e;if("string"==typeof e&&(e=h(e)),e?.length!==16)throw TypeError("Namespace must be array-like (16 iterable integer values, 0-255)");let l=new Uint8Array(16+j.length);if(l.set(k),l.set(j,k.length),(l=f(l))[6]=15&l[6]|80,l[8]=63&l[8]|128,c){if((g??=0)<0||g+16>c.length)throw RangeError(`UUID byte range ${g}:${g+15} is out of buffer bounds`);for(let a=0;a<16;++a)c[g+a]=l[a];return c}return(0,i.k)(l)}function k(a,b=""){return d.createHash("sha256").update(a+b).digest("hex")}function l(a,b=null,c=!0){let e=a.includes("::")?a.split("::")[1]:a,f=b||k(e,"machineId"),g=j(e,j.DNS),h=k(e),i=function(a){let b=Math.floor(Date.now()/1e6),c=new Uint8Array([b>>40&255,b>>32&255,b>>24&255,b>>16&255,b>>8&255,255&b]),d=165;for(let a=0;a<c.length;a++)c[a]=(c[a]^d)+a%256&255,d=c[a];let e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-_",f="";for(let a=0;a<c.length;a+=3){let b=c[a],d=a+1<c.length?c[a+1]:0,g=a+2<c.length?c[a+2]:0;f+=e[b>>2],f+=e[(3&b)<<4|d>>4],a+1<c.length&&(f+=e[(15&d)<<2|g>>6]),a+2<c.length&&(f+=e[63&g])}return`${f}${a}`}(f),m="linux";"u">typeof process&&("win32"===process.platform?m="windows":"darwin"===process.platform&&(m="macos"));let n="x64";return"u">typeof process&&"arm64"===process.arch&&(n="aarch64"),{authorization:`Bearer ${e}`,"connect-accept-encoding":"gzip","connect-protocol-version":"1","content-type":"application/connect+proto","user-agent":"connect-es/1.6.1","x-amzn-trace-id":`Root=${d.randomUUID()}`,"x-client-key":h,"x-cursor-checksum":i,"x-cursor-client-version":"3.1.0","x-cursor-client-type":"ide","x-cursor-client-os":m,"x-cursor-client-arch":n,"x-cursor-client-device-type":"desktop","x-cursor-config-version":d.randomUUID(),"x-cursor-timezone":Intl.DateTimeFormat().resolvedOptions().timeZone||"UTC","x-ghost-mode":c?"true":"false","x-request-id":d.randomUUID(),"x-session-id":g}}j.DNS="6ba7b810-9dad-11d1-80b4-00c04fd430c8",j.URL="6ba7b811-9dad-11d1-80b4-00c04fd430c8"},70815:(a,b,c)=>{"use strict";c.d(b,{$s:()=>i,Bl:()=>j,M8:()=>h,ui:()=>k});var d=c(24081);let e="vault_fts",f=null;function g(a){if(null!==f)return f;try{a.run("CREATE VIRTUAL TABLE IF NOT EXISTS vault_fts USING fts5(text, entryId UNINDEXED, chunkIndex UNINDEXED, conversationId UNINDEXED, tokenize='porter unicode61')"),f=!0}catch{f=!1}return f}async function h({id:a,conversationId:b,toolName:c,content:f,chunks:i,ttlMs:j}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b||"string"!=typeof f||!f)return!1;let h=Buffer.byteLength(f,"utf8"),k=Number(j);if(h>5242880||!Number.isFinite(k)||k<=0)return!1;let l=await (0,d.c)(),m=Date.now(),n=new Date(m).toISOString(),o=new Date(m+k).toISOString(),p=Array.isArray(i)&&i.length>0?i:[f];if(p.length>2e3)return!1;l.run(`INSERT OR REPLACE INTO vault_entries(id, conversationId, toolName, content, sizeBytes, createdAt, expiresAt, lastAccessedAt)
|
|
391
391
|
VALUES(?, ?, ?, ?, ?, ?, ?, ?)`,[a,b,c||null,f,h,n,o,n]),l.run("DELETE FROM vault_chunks WHERE entryId = ?",[a]);for(let c=0;c<p.length;c+=1){let d=p[c];if("string"!=typeof d)throw Error("invalid vault chunk");l.run("INSERT INTO vault_chunks(entryId, chunkIndex, conversationId, text) VALUES(?, ?, ?, ?)",[a,c,b,d])}if(g(l))try{l.run(`DELETE FROM ${e} WHERE entryId = ?`,[a]);for(let c=0;c<p.length;c+=1)l.run(`INSERT INTO ${e}(text, entryId, chunkIndex, conversationId) VALUES(?, ?, ?, ?)`,[p[c],a,c,b])}catch{}let q=l.get("SELECT COUNT(*) AS count FROM vault_entries")?.count||0,r=Number(q)-200;return r>0&&function(a,b){if(!Number.isInteger(b)||b<=0)return;let c="SELECT id FROM vault_entries ORDER BY lastAccessedAt ASC LIMIT ?";if(a.run(`DELETE FROM vault_chunks WHERE entryId IN (${c})`,[b]),g(a))try{a.run(`DELETE FROM ${e} WHERE entryId IN (${c})`,[b])}catch{}a.run(`DELETE FROM vault_entries WHERE id IN (${c})`,[b])}(l,r),!0}catch{return!1}}async function i({conversationId:a,query:b,vaultId:c=null,limit:f=5}={}){try{if("string"!=typeof a||!a||"string"!=typeof b||!b.trim())return[];let i=Math.max(1,Math.min(20,Math.floor(Number(f)||5))),l=function(a){try{if("string"!=typeof a)return[];return(a.toLowerCase().match(/[\p{L}\p{N}]+/gu)||[]).filter(a=>a.length>=2).slice(0,12)}catch{return[]}}(b),m=await (0,d.c)(),n=new Date().toISOString(),o=[];if(l.length>0&&g(m))try{let b=l.map(a=>`"${a}"`).join(" OR "),d=c?` AND ${e}.entryId = ?`:"",f=c?[b,a,n,c,i]:[b,a,n,i];o=m.all(`SELECT ${e}.entryId AS entryId, ${e}.chunkIndex AS chunkIndex, ${e}.text AS text, bm25(${e}) AS rank
|
|
392
392
|
FROM ${e} JOIN vault_entries ON vault_entries.id = ${e}.entryId
|
|
393
393
|
WHERE ${e} MATCH ? AND ${e}.conversationId = ? AND vault_entries.expiresAt > ?${d} ORDER BY rank LIMIT ?`,f)}catch{o=[]}if(0===o.length&&l.length>0){var h;let b=l.map(()=>"lower(vault_chunks.text) LIKE ?").join(" OR "),d=c?[a,n,c,...l.map(a=>`%${a}%`),4*i]:[a,n,...l.map(a=>`%${a}%`),4*i];h=m.all(`SELECT vault_chunks.entryId AS entryId, vault_chunks.chunkIndex AS chunkIndex, vault_chunks.text AS text
|
|
@@ -417,10 +417,10 @@ ${d.content}`:Array.isArray(d.content)&&d.content.unshift({type:"text",text:c}):
|
|
|
417
417
|
\`\`\`json
|
|
418
418
|
${b}
|
|
419
419
|
\`\`\`
|
|
420
|
-
Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&u.push("You must respond with valid JSON. Respond ONLY with a JSON object, no other text.")}let v=d?.accessToken||d?.apiKey||"",w="string"==typeof v&&v.includes("sk-ant-oat"),x={type:k.R4.TEXT,text:f.Co};if(u.length>0){let a=u.join("\n"),b={type:k.R4.TEXT,text:a,cache_control:{type:"ephemeral",ttl:"1h"}};s.system=w?[x,b]:[b]}else w&&(s.system=[x]);if(b.tools&&Array.isArray(b.tools)){for(let a of(s.tools=[],b.tools)){let b=a.type;if(b&&b!==k.x4.FUNCTION){s.tools.push(a);continue}let c=a.function??a,d=c.name,f=""+d;e.set(f,d),s.tools.push({name:f,description:"string"==typeof c.description?c.description:String(c.description||""),input_schema:c.parameters||c.input_schema||{type:"object",properties:{},required:[]}})}s.tools.length>0&&(s.tools[s.tools.length-1].cache_control={type:"ephemeral",ttl:"1h"})}return b.tool_choice&&(s.tool_choice=function(a){if(!a)return{type:"auto"};if("string"==typeof a)return"required"===a?{type:"any"}:"none"===a?{type:"none"}:{type:"auto"};if("object"==typeof a){if(a.function?.name)return{type:"tool",name:a.function.name};if(q.has(a.type))return a}return{type:"auto"}}(b.tool_choice)),!1===b.parallel_tool_calls&&s.tools?.length>0&&s.tool_choice?.type!=="none"&&(s.tool_choice={...s.tool_choice||{type:"auto"},disable_parallel_tool_use:!0}),e.size>0&&(s._toolNameMap=e),(0,l.n)(s,{maxTemperature:1}),s}function p(a){if("string"==typeof a.file_url&&/^https?:\/\//.test(a.file_url))return{type:k.R4.DOCUMENT,source:{type:"url",url:a.file_url}};let b=a.file_data,c="string"==typeof b?(0,i.W$)(b):null;if(c&&"application/pdf"===c.mimeType)return{type:k.R4.DOCUMENT,source:{type:"base64",media_type:c.mimeType,data:c.base64}};if(c&&c.mimeType.startsWith("text/"))try{return{type:k.R4.TEXT,text:Buffer.from(c.base64,"base64").toString("utf-8")}}catch{return{type:k.R4.TEXT,text:`[file omitted: ${c.mimeType}]`}}return c?{type:k.R4.TEXT,text:`[file omitted: ${c.mimeType}]`}:a.file_id?{type:k.R4.TEXT,text:`[file omitted: ${a.file_id}]`}:null}let q=new Set(["auto","any","tool","none"]);function r(a,b,c){let d=o(a,b,c);return d.system&&Array.isArray(d.system)&&(d.system=d.system.filter(a=>!a.text||a.text!==f.Co),0===d.system.length&&delete d.system),d.tools&&Array.isArray(d.tools)&&(d.tools=d.tools.map(a=>a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a)),d.messages&&Array.isArray(d.messages)&&(d.messages=d.messages.map(a=>{if(!a.content||!Array.isArray(a.content))return a;let b=a.content.map(a=>a.type===k.R4.TOOL_USE&&a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a);return{...a,content:b}})),d}(0,d.kz)(e.h.OPENAI,e.h.CLAUDE,o,null)},84698:a=>{"use strict";function b(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c<33||c>126||34===c||40===c||41===c||60===c||62===c||64===c||44===c||59===c||58===c||92===c||47===c||91===c||93===c||63===c||61===c||123===c||125===c)throw Error("Invalid cookie name")}}function c(a){let b=a.length,c=0;if('"'===a[0]){if(1===b||'"'!==a[b-1])throw Error("Invalid cookie value");--b,++c}for(;c<b;){let b=a.charCodeAt(c++);if(b<33||b>126||34===b||44===b||59===b||92===b)throw Error("Invalid cookie value")}}function d(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c<32||c>126||59===c)throw Error("Invalid cookie path")}}function e(a){return a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122}let f=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],g=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],h=Array(61).fill(0).map((a,b)=>b.toString().padStart(2,"0"));function i(a){return"number"==typeof a&&(a=new Date(a)),`${f[a.getUTCDay()]}, ${h[a.getUTCDate()]} ${g[a.getUTCMonth()]} ${a.getUTCFullYear()} ${h[a.getUTCHours()]}:${h[a.getUTCMinutes()]}:${h[a.getUTCSeconds()]} GMT`}a.exports={isCTLExcludingHtab:function(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c>=0&&c<=8||c>=10&&c<=31||127===c)return!0}return!1},validateCookieName:b,validateCookiePath:d,validateCookieValue:c,toIMFDate:i,stringify:function(a){if(0===a.name.length)return null;b(a.name),c(a.value);let f=[`${a.name}=${a.value}`];if(a.name.startsWith("__Secure-")&&(a.secure=!0),a.name.startsWith("__Host-")&&(a.secure=!0,a.domain=null,a.path="/"),a.secure&&f.push("Secure"),a.httpOnly&&f.push("HttpOnly"),"number"==typeof a.maxAge){if(a.maxAge<0)throw Error("Invalid cookie max-age");f.push(`Max-Age=${a.maxAge}`)}for(let g of(a.domain&&(!function(a){if(" "===a)return;if(a.length>255)throw Error("Invalid cookie domain");let b=0;for(let c=0;c<a.length;++c){let d=a.charCodeAt(c);if(46===d){if(0===b||45===a.charCodeAt(c-1))throw Error("Invalid cookie domain");b=0;continue}if(0===b&&!e(d)||!e(d)&&45!==d||++b>63)throw Error("Invalid cookie domain")}if(0===b||45===a.charCodeAt(a.length-1))throw Error("Invalid cookie domain")}(a.domain),f.push(`Domain=${a.domain}`)),a.path&&(d(a.path),f.push(`Path=${a.path}`)),null!=a.expires&&"Invalid Date"!==a.expires.toString()&&f.push(`Expires=${i(a.expires)}`),a.sameSite&&f.push(`SameSite=${a.sameSite}`),a.unparsed)){if(!g.includes("="))throw Error("Invalid unparsed");let[a,...d]=g.split("="),e=a.trim(),h=d.join("=");b(e),c(h),f.push(`${e}=${h}`)}return f.join("; ")}}},85513:(a,b,c)=>{"use strict";c.d(b,{i7:()=>e,l6:()=>f});let d=/^[a-z]{2}(?:-[a-z0-9]+)+-\d{1,2}$/;function e(a){return"string"==typeof a&&d.test(a)}function f(a,b="us-east-1"){return e(a)?a:b}},86363:(a,b,c)=>{"use strict";function d(a,b){}c.d(b,{s:()=>d})},86538:(a,b,c)=>{"use strict";var d=c(69537);let e={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(e[a.id]=a.id,a.alias&&(e[a.alias]=a.id),a.aliases||[]))e[b]=a.id},86625:(a,b,c)=>{"use strict";let{promisify:d}=c(57975),e=c(35689),{buildMockDispatch:f}=c(70634),{kDispatches:g,kMockAgent:h,kClose:i,kOriginalClose:j,kOrigin:k,kOriginalDispatch:l,kConnected:m,kIgnoreTrailingSlash:n}=c(80830),{MockInterceptor:o}=c(55720),p=c(49176),{InvalidArgumentError:q}=c(61448);class r extends e{constructor(a,b){if(!b||!b.agent||"function"!=typeof b.agent.dispatch)throw new q("Argument opts.agent must implement Agent");super(a,b),this[h]=b.agent,this[k]=a,this[n]=b.ignoreTrailingSlash??!1,this[g]=[],this[m]=1,this[l]=this.dispatch,this[j]=this.close.bind(this),this.dispatch=f.call(this),this.close=this[i]}get[p.kConnected](){return this[m]}intercept(a){return new o(a&&{ignoreTrailingSlash:this[n],...a},this[g])}cleanMocks(){this[g]=[]}async [i](){await d(this[j])(),this[m]=0,this[h][p.kClients].delete(this[k])}}a.exports=r},86772:(a,b,c)=>{"use strict";let d=c(29021),e=c(33873),f=c(74075),{DATA_DIR:g}=c(37436),{LOG_BLACKLIST_URL_PARTS:h}=c(794);function i(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let j=e.join(g,"logs","mitm");d.existsSync(j)||d.mkdirSync(j,{recursive:!0});let k=/^\s*(\{\s*\}|\[\s*\]|null)?\s*$/,l=new Set(["authorization","proxy-authorization","cookie","set-cookie","x-api-key","api-key","x-auth-token"]),m=new Set(["api-key","apikey","api_key","token","access-token","access_token","accesstoken","refresh-token","refresh_token","refreshtoken","secret","password","auth"]),n=new Set([...m,"key"]),o="[REDACTED]";function p(a){let b={};for(let[c,d]of Object.entries(a||{}))b[c]=l.has(String(c).toLowerCase())?o:d;return b}function q(a){return Array.isArray(a)?a.map(q):a&&"object"==typeof a?Object.fromEntries(Object.entries(a).map(([a,b])=>[a,m.has(String(a).toLowerCase())?o:q(b)])):"string"==typeof a?a.replace(/Bearer\s+[A-Za-z0-9._~+/=-]{4,}/gi,`Bearer ${o}`):a}function r(a,b=80){return String(a).replace(/[^a-zA-Z0-9]/g,"_").substring(0,b)}function s(a){return!!a&&h.some(b=>a.includes(b))}a.exports={log:a=>console.log(`[${i()}] [MITM] ${a}`),err:a=>console.error(`[${i()}] ❌ [MITM] ${a}`),dumpRequest:function(a,b,c="raw"){if(s(a.url))return null;try{let f=new Date().toISOString().replace(/[:.]/g,"-"),g=r((a.headers.host||"")+a.url),h=e.join(j,`${f}_${c}_${g}.req.json`),i=null;try{i=JSON.parse(b.toString())}catch{}return d.writeFileSync(h,JSON.stringify({method:a.method,url:function(a){if(!a||!a.includes("?"))return a;let b=a.indexOf("?"),c=a.slice(0,b),d=a.slice(b+1).split("&").map(a=>{let b=a.indexOf("="),c=-1===b?a:a.slice(0,b);try{if(n.has(decodeURIComponent(c).toLowerCase()))return`${c}=${o}`}catch{}return a});return`${c}?${d.join("&")}`}(a.url),host:a.headers.host,headers:p(a.headers),body:i?q(i):q(b.toString("utf8"))},null,2)),h}catch{return null}},createResponseDumper:function(a,b="raw"){if(s(a.url))return null;let c=new Date().toISOString().replace(/[:.]/g,"-"),g=r((a.headers.host||"")+a.url),h=e.join(j,`${c}_${b}_${g}.res.txt`),i=0,l={},m=[];return{writeHeader:(a,b)=>{i=a,l=b||{}},writeChunk:a=>{null!=a&&m.push(Buffer.isBuffer(a)?a:Buffer.from(a))},end:()=>{try{let a=Buffer.concat(m),b=l["content-encoding"]||l["Content-Encoding"],c=(function(a,b){if(!a||0===a.length)return a;try{let c=(b||"").toLowerCase();if(c.includes("gzip"))return f.gunzipSync(a);if(c.includes("br"))return f.brotliDecompressSync(a);if(c.includes("deflate"))return f.inflateSync(a)}catch{}return a})(a,b).toString("utf8");if(k.test(c))return;let e=p({...l});delete e["content-encoding"],delete e["Content-Encoding"];let g=`STATUS: ${i}
|
|
420
|
+
Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&u.push("You must respond with valid JSON. Respond ONLY with a JSON object, no other text.")}let v=d?.accessToken||d?.apiKey||"",w="string"==typeof v&&v.includes("sk-ant-oat"),x={type:k.R4.TEXT,text:f.Co};if(u.length>0){let a=u.join("\n"),b={type:k.R4.TEXT,text:a,cache_control:{type:"ephemeral",ttl:"1h"}};s.system=w?[x,b]:[b]}else w&&(s.system=[x]);if(b.tools&&Array.isArray(b.tools)){for(let a of(s.tools=[],b.tools)){let b=a.type;if(b&&b!==k.x4.FUNCTION){s.tools.push(a);continue}let c=a.function??a,d=c.name,f=""+d;e.set(f,d),s.tools.push({name:f,description:"string"==typeof c.description?c.description:String(c.description||""),input_schema:c.parameters||c.input_schema||{type:"object",properties:{},required:[]}})}s.tools.length>0&&(s.tools[s.tools.length-1].cache_control={type:"ephemeral",ttl:"1h"})}return b.tool_choice&&(s.tool_choice=function(a){if(!a)return{type:"auto"};if("string"==typeof a)return"required"===a?{type:"any"}:"none"===a?{type:"none"}:{type:"auto"};if("object"==typeof a){if(a.function?.name)return{type:"tool",name:a.function.name};if(q.has(a.type))return a}return{type:"auto"}}(b.tool_choice)),!1===b.parallel_tool_calls&&s.tools?.length>0&&s.tool_choice?.type!=="none"&&(s.tool_choice={...s.tool_choice||{type:"auto"},disable_parallel_tool_use:!0}),e.size>0&&(s._toolNameMap=e),(0,l.n)(s,{maxTemperature:1}),s}function p(a){if("string"==typeof a.file_url&&/^https?:\/\//.test(a.file_url))return{type:k.R4.DOCUMENT,source:{type:"url",url:a.file_url}};let b=a.file_data,c="string"==typeof b?(0,i.W$)(b):null;if(c&&"application/pdf"===c.mimeType)return{type:k.R4.DOCUMENT,source:{type:"base64",media_type:c.mimeType,data:c.base64}};if(c&&c.mimeType.startsWith("text/"))try{return{type:k.R4.TEXT,text:Buffer.from(c.base64,"base64").toString("utf-8")}}catch{return{type:k.R4.TEXT,text:`[file omitted: ${c.mimeType}]`}}return c?{type:k.R4.TEXT,text:`[file omitted: ${c.mimeType}]`}:a.file_id?{type:k.R4.TEXT,text:`[file omitted: ${a.file_id}]`}:null}let q=new Set(["auto","any","tool","none"]);function r(a,b,c){let d=o(a,b,c);return d.system&&Array.isArray(d.system)&&(d.system=d.system.filter(a=>!a.text||a.text!==f.Co),0===d.system.length&&delete d.system),d.tools&&Array.isArray(d.tools)&&(d.tools=d.tools.map(a=>a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a)),d.messages&&Array.isArray(d.messages)&&(d.messages=d.messages.map(a=>{if(!a.content||!Array.isArray(a.content))return a;let b=a.content.map(a=>a.type===k.R4.TOOL_USE&&a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a);return{...a,content:b}})),d}(0,d.kz)(e.h.OPENAI,e.h.CLAUDE,o,null)},84698:a=>{"use strict";function b(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c<33||c>126||34===c||40===c||41===c||60===c||62===c||64===c||44===c||59===c||58===c||92===c||47===c||91===c||93===c||63===c||61===c||123===c||125===c)throw Error("Invalid cookie name")}}function c(a){let b=a.length,c=0;if('"'===a[0]){if(1===b||'"'!==a[b-1])throw Error("Invalid cookie value");--b,++c}for(;c<b;){let b=a.charCodeAt(c++);if(b<33||b>126||34===b||44===b||59===b||92===b)throw Error("Invalid cookie value")}}function d(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c<32||c>126||59===c)throw Error("Invalid cookie path")}}function e(a){return a>=48&&a<=57||a>=65&&a<=90||a>=97&&a<=122}let f=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],g=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],h=Array(61).fill(0).map((a,b)=>b.toString().padStart(2,"0"));function i(a){return"number"==typeof a&&(a=new Date(a)),`${f[a.getUTCDay()]}, ${h[a.getUTCDate()]} ${g[a.getUTCMonth()]} ${a.getUTCFullYear()} ${h[a.getUTCHours()]}:${h[a.getUTCMinutes()]}:${h[a.getUTCSeconds()]} GMT`}a.exports={isCTLExcludingHtab:function(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c>=0&&c<=8||c>=10&&c<=31||127===c)return!0}return!1},validateCookieName:b,validateCookiePath:d,validateCookieValue:c,toIMFDate:i,stringify:function(a){if(0===a.name.length)return null;b(a.name),c(a.value);let f=[`${a.name}=${a.value}`];if(a.name.startsWith("__Secure-")&&(a.secure=!0),a.name.startsWith("__Host-")&&(a.secure=!0,a.domain=null,a.path="/"),a.secure&&f.push("Secure"),a.httpOnly&&f.push("HttpOnly"),"number"==typeof a.maxAge){if(a.maxAge<0)throw Error("Invalid cookie max-age");f.push(`Max-Age=${a.maxAge}`)}for(let g of(a.domain&&(!function(a){if(" "===a)return;if(a.length>255)throw Error("Invalid cookie domain");let b=0;for(let c=0;c<a.length;++c){let d=a.charCodeAt(c);if(46===d){if(0===b||45===a.charCodeAt(c-1))throw Error("Invalid cookie domain");b=0;continue}if(0===b&&!e(d)||!e(d)&&45!==d||++b>63)throw Error("Invalid cookie domain")}if(0===b||45===a.charCodeAt(a.length-1))throw Error("Invalid cookie domain")}(a.domain),f.push(`Domain=${a.domain}`)),a.path&&(d(a.path),f.push(`Path=${a.path}`)),null!=a.expires&&"Invalid Date"!==a.expires.toString()&&f.push(`Expires=${i(a.expires)}`),a.sameSite&&f.push(`SameSite=${a.sameSite}`),a.unparsed)){if(!g.includes("="))throw Error("Invalid unparsed");let[a,...d]=g.split("="),e=a.trim(),h=d.join("=");b(e),c(h),f.push(`${e}=${h}`)}return f.join("; ")}}},84970:(a,b,c)=>{"use strict";c.d(b,{sS:()=>d}),c(49471),c(15251),c(71253),c(57690);function d(a){if(!a||"object"!=typeof a)return null;let b=a.output_config?.effort;if("string"==typeof b&&b){let a=b.toLowerCase();return"none"===a||"off"===a?{mode:"none"}:"auto"===a?{mode:"auto"}:{mode:"level",level:a}}let c=a.thinking;if(c&&"object"==typeof c){if("disabled"===c.type)return{mode:"none"};if("adaptive"===c.type||"enabled"===c.type){let a=Number(c.budget_tokens);return Number.isFinite(a)&&a>0?{mode:"budget",budget:a}:{mode:"auto"}}}let d=a.reasoning_effort??("object"==typeof a.reasoning?a.reasoning?.effort:null);if("string"==typeof d&&d){let a=d.toLowerCase();return"none"===a||"off"===a?{mode:"none"}:"auto"===a?{mode:"auto"}:{mode:"level",level:a}}let e=a.thinkingConfig||a.generationConfig?.thinkingConfig||a.request?.generationConfig?.thinkingConfig;if(e&&"object"==typeof e){if("string"==typeof e.thinkingLevel)return{mode:"level",level:e.thinkingLevel.toLowerCase()};let a=Number(e.thinkingBudget);if(Number.isFinite(a))return 0===a?{mode:"none"}:a<0?{mode:"auto"}:{mode:"budget",budget:a}}if(!1===a.enable_thinking)return{mode:"none"};if(!0===a.enable_thinking){let b=Number(a.thinking_budget);return Number.isFinite(b)&&b>0?{mode:"budget",budget:b}:{mode:"auto"}}return null}c(26317)},85513:(a,b,c)=>{"use strict";c.d(b,{i7:()=>e,l6:()=>f});let d=/^[a-z]{2}(?:-[a-z0-9]+)+-\d{1,2}$/;function e(a){return"string"==typeof a&&d.test(a)}function f(a,b="us-east-1"){return e(a)?a:b}},86363:(a,b,c)=>{"use strict";function d(a,b){}c.d(b,{s:()=>d})},86538:(a,b,c)=>{"use strict";var d=c(69537);let e={el:"elevenlabs",jina:"jina-ai","jina-ai":"jina-ai",polly:"aws-polly","aws-polly":"aws-polly"};for(let a of d.A)for(let b of(e[a.id]=a.id,a.alias&&(e[a.alias]=a.id),a.aliases||[]))e[b]=a.id},86625:(a,b,c)=>{"use strict";let{promisify:d}=c(57975),e=c(35689),{buildMockDispatch:f}=c(70634),{kDispatches:g,kMockAgent:h,kClose:i,kOriginalClose:j,kOrigin:k,kOriginalDispatch:l,kConnected:m,kIgnoreTrailingSlash:n}=c(80830),{MockInterceptor:o}=c(55720),p=c(49176),{InvalidArgumentError:q}=c(61448);class r extends e{constructor(a,b){if(!b||!b.agent||"function"!=typeof b.agent.dispatch)throw new q("Argument opts.agent must implement Agent");super(a,b),this[h]=b.agent,this[k]=a,this[n]=b.ignoreTrailingSlash??!1,this[g]=[],this[m]=1,this[l]=this.dispatch,this[j]=this.close.bind(this),this.dispatch=f.call(this),this.close=this[i]}get[p.kConnected](){return this[m]}intercept(a){return new o(a&&{ignoreTrailingSlash:this[n],...a},this[g])}cleanMocks(){this[g]=[]}async [i](){await d(this[j])(),this[m]=0,this[h][p.kClients].delete(this[k])}}a.exports=r},86772:(a,b,c)=>{"use strict";let d=c(29021),e=c(33873),f=c(74075),{DATA_DIR:g}=c(37436),{LOG_BLACKLIST_URL_PARTS:h}=c(794);function i(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let j=e.join(g,"logs","mitm");d.existsSync(j)||d.mkdirSync(j,{recursive:!0});let k=/^\s*(\{\s*\}|\[\s*\]|null)?\s*$/,l=new Set(["authorization","proxy-authorization","cookie","set-cookie","x-api-key","api-key","x-auth-token"]),m=new Set(["api-key","apikey","api_key","token","access-token","access_token","accesstoken","refresh-token","refresh_token","refreshtoken","secret","password","auth"]),n=new Set([...m,"key"]),o="[REDACTED]";function p(a){let b={};for(let[c,d]of Object.entries(a||{}))b[c]=l.has(String(c).toLowerCase())?o:d;return b}function q(a){return Array.isArray(a)?a.map(q):a&&"object"==typeof a?Object.fromEntries(Object.entries(a).map(([a,b])=>[a,m.has(String(a).toLowerCase())?o:q(b)])):"string"==typeof a?a.replace(/Bearer\s+[A-Za-z0-9._~+/=-]{4,}/gi,`Bearer ${o}`):a}function r(a,b=80){return String(a).replace(/[^a-zA-Z0-9]/g,"_").substring(0,b)}function s(a){return!!a&&h.some(b=>a.includes(b))}a.exports={log:a=>console.log(`[${i()}] [MITM] ${a}`),err:a=>console.error(`[${i()}] ❌ [MITM] ${a}`),dumpRequest:function(a,b,c="raw"){if(s(a.url))return null;try{let f=new Date().toISOString().replace(/[:.]/g,"-"),g=r((a.headers.host||"")+a.url),h=e.join(j,`${f}_${c}_${g}.req.json`),i=null;try{i=JSON.parse(b.toString())}catch{}return d.writeFileSync(h,JSON.stringify({method:a.method,url:function(a){if(!a||!a.includes("?"))return a;let b=a.indexOf("?"),c=a.slice(0,b),d=a.slice(b+1).split("&").map(a=>{let b=a.indexOf("="),c=-1===b?a:a.slice(0,b);try{if(n.has(decodeURIComponent(c).toLowerCase()))return`${c}=${o}`}catch{}return a});return`${c}?${d.join("&")}`}(a.url),host:a.headers.host,headers:p(a.headers),body:i?q(i):q(b.toString("utf8"))},null,2)),h}catch{return null}},createResponseDumper:function(a,b="raw"){if(s(a.url))return null;let c=new Date().toISOString().replace(/[:.]/g,"-"),g=r((a.headers.host||"")+a.url),h=e.join(j,`${c}_${b}_${g}.res.txt`),i=0,l={},m=[];return{writeHeader:(a,b)=>{i=a,l=b||{}},writeChunk:a=>{null!=a&&m.push(Buffer.isBuffer(a)?a:Buffer.from(a))},end:()=>{try{let a=Buffer.concat(m),b=l["content-encoding"]||l["Content-Encoding"],c=(function(a,b){if(!a||0===a.length)return a;try{let c=(b||"").toLowerCase();if(c.includes("gzip"))return f.gunzipSync(a);if(c.includes("br"))return f.brotliDecompressSync(a);if(c.includes("deflate"))return f.inflateSync(a)}catch{}return a})(a,b).toString("utf8");if(k.test(c))return;let e=p({...l});delete e["content-encoding"],delete e["Content-Encoding"];let g=`STATUS: ${i}
|
|
421
421
|
HEADERS: ${JSON.stringify(e,null,2)}
|
|
422
422
|
---BODY---
|
|
423
|
-
${function(a){try{let b=JSON.parse(a);return JSON.stringify(q(b))}catch{return q(a)}}(c)}`;d.writeFileSync(h,g)}catch{}},file:h}},clearDumpDir:function(){try{if(!d.existsSync(j))return;for(let a of d.readdirSync(j))try{d.rmSync(e.join(j,a),{recursive:!0,force:!0})}catch{}}catch{}}}},87085:(a,b,c)=>{"use strict";let{InvalidArgumentError:d,RequestAbortedError:e}=c(61448),f=c(60823);class g extends f{#ad=1048576;#bT=!1;#aC=0;aborted=!1;reason=!1;constructor({maxSize:a,signal:b},c){if(null!=a&&(!Number.isFinite(a)||a<1))throw new d("maxSize must be a number greater than 0");super(c),this.#ad=a??this.#ad}#bS(a){this.aborted=!0,this.reason=a}onRequestStart(a,b){return a.abort=this.#bS.bind(this),super.onRequestStart(a,b)}onResponseStart(a,b,c,d){let f=c["content-length"];if(null!=f&&f>this.#ad)throw new e(`Response size (${f}) larger than maxSize (${this.#ad})`);return!0===this.aborted||super.onResponseStart(a,b,c,d)}onResponseError(a,b){super.onResponseError(a,!0===this.aborted?this.reason:b)}onResponseData(a,b){if(this.#aC=this.#aC+b.length,this.#aC>this.#ad)throw new e(`Response size (${this.#aC}) larger than maxSize (${this.#ad})`);return this.#aC===this.#ad&&(this.#bT=!0),!0}onResponseEnd(a,b){!0===this.aborted?super.onResponseError(a,this.reason):super.onResponseEnd(a,this.#bT?{}:b)}}a.exports=function({maxSize:a}={maxSize:1048576}){return b=>function(c,d){let{dumpMaxSize:e=a}=c,f=new g({maxSize:e,signal:c.signal},d);return b(c,f)}}},87350:(a,b,c)=>{"use strict";c.d(b,{Ws:()=>aj});var d=c(68531);c(82812),c(25720),c(30816),c(22884),c(
|
|
423
|
+
${function(a){try{let b=JSON.parse(a);return JSON.stringify(q(b))}catch{return q(a)}}(c)}`;d.writeFileSync(h,g)}catch{}},file:h}},clearDumpDir:function(){try{if(!d.existsSync(j))return;for(let a of d.readdirSync(j))try{d.rmSync(e.join(j,a),{recursive:!0,force:!0})}catch{}}catch{}}}},87085:(a,b,c)=>{"use strict";let{InvalidArgumentError:d,RequestAbortedError:e}=c(61448),f=c(60823);class g extends f{#ad=1048576;#bT=!1;#aC=0;aborted=!1;reason=!1;constructor({maxSize:a,signal:b},c){if(null!=a&&(!Number.isFinite(a)||a<1))throw new d("maxSize must be a number greater than 0");super(c),this.#ad=a??this.#ad}#bS(a){this.aborted=!0,this.reason=a}onRequestStart(a,b){return a.abort=this.#bS.bind(this),super.onRequestStart(a,b)}onResponseStart(a,b,c,d){let f=c["content-length"];if(null!=f&&f>this.#ad)throw new e(`Response size (${f}) larger than maxSize (${this.#ad})`);return!0===this.aborted||super.onResponseStart(a,b,c,d)}onResponseError(a,b){super.onResponseError(a,!0===this.aborted?this.reason:b)}onResponseData(a,b){if(this.#aC=this.#aC+b.length,this.#aC>this.#ad)throw new e(`Response size (${this.#aC}) larger than maxSize (${this.#ad})`);return this.#aC===this.#ad&&(this.#bT=!0),!0}onResponseEnd(a,b){!0===this.aborted?super.onResponseError(a,this.reason):super.onResponseEnd(a,this.#bT?{}:b)}}a.exports=function({maxSize:a}={maxSize:1048576}){return b=>function(c,d){let{dumpMaxSize:e=a}=c,f=new g({maxSize:e,signal:c.signal},d);return b(c,f)}}},87350:(a,b,c)=>{"use strict";c.d(b,{Ws:()=>aj});var d=c(68531);c(82812),c(25720),c(30816),c(22884),c(84970);var e=c(49623);c(65369),c(15251);var f=c(99887);c(45504);var g=c(84460),h=c(10962),i=c(26408),j=c(90242),k=c(52655),l=c(26317),m=c(11897);function n(a){let b=(a||[]).flatMap(a=>a?.parts||[]),c=new Map;for(let a of b){let b=a?.functionCall;if(!b?.name)continue;let d=c.get(b.name)||[];b.id||(b.id=`call_${b.name}_${d.length}`),d.push(b.id),c.set(b.name,d)}let d=new Map;for(let a of b){let b=a?.functionResponse;if(!b?.name)continue;let e=d.get(b.name)||0;b.id||(b.id=c.get(b.name)?.[e]??`call_${b.name}_${e}`),d.set(b.name,e+1)}}function o(a,b,c){let d=b?.request||b||{},e={model:a,messages:[],stream:c};if(d.generationConfig){let a=d.generationConfig;if(a.maxOutputTokens){let b={max_tokens:a.maxOutputTokens,tools:d.tools};e.max_tokens=(0,h.M)(b)}if(void 0!==a.temperature&&(e.temperature=a.temperature),void 0!==a.topP&&(e.top_p=a.topP),a.thinkingConfig?.thinkingBudget){let b=(0,l.Vp)(a.thinkingConfig.thinkingBudget);b&&(e.reasoning_effort=b)}}if(d.systemInstruction){var f;let a="string"==typeof(f=d.systemInstruction)?f:f.parts&&Array.isArray(f.parts)?f.parts.map(a=>a.text||"").filter(Boolean).join("\n"):"";a&&e.messages.push({role:m.z7.SYSTEM,content:a})}let g=(0,k.Fq)(d);if(void 0!==g&&(e.tool_choice=g),d.contents&&Array.isArray(d.contents))for(let a of(n(d.contents),d.contents)){let b=function(a){let b=a.role===m.RV.USER?m.z7.USER:m.z7.ASSISTANT;if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[],e="";for(let b of a.parts){if(!0===b.thought){void 0!==b.text&&(e+=b.text);continue}if(void 0!==b.text&&c.push({type:m.x4.TEXT,text:b.text}),b.inlineData&&c.push({type:m.x4.IMAGE_URL,image_url:{url:(0,i.$q)(b.inlineData.mimeType,b.inlineData.data)}}),b.fileData){let a=b.fileData.fileUri||"";(b.fileData.mimeType||"").startsWith("image/")?c.push({type:m.x4.IMAGE_URL,image_url:{url:a}}):a&&c.push({type:m.x4.TEXT,text:`[File: ${a}]`})}if(b.functionCall&&d.push({id:b.functionCall.id||`call_${b.functionCall.name}`,type:m.x4.FUNCTION,function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse)return{role:m.z7.TOOL,tool_call_id:b.functionResponse.id||`call_${b.functionResponse.name}`,content:JSON.stringify(b.functionResponse.response?.result??b.functionResponse.response??{})}}if(d.length>0){let a={role:m.z7.ASSISTANT};return c.length>0&&(a.content=1===c.length?c[0].text:c),e&&(a.reasoning_content=e),a.tool_calls=d,a}if(c.length>0||e){let a={role:b};return c.length>0&&(a.content=(0,j.z)(c)),e&&(a.reasoning_content=e),a}return null}(a);b&&e.messages.push(b)}if(d.tools&&Array.isArray(d.tools)){for(let a of(e.tools=[],d.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)e.tools.push({type:m.x4.FUNCTION,function:{name:b.name,description:b.description||"",parameters:b.parameters||{type:"object",properties:{}}}})}return e}function p(a,b,c){let d=b?.request||b;if(!d||!Array.isArray(d.contents))return o(a,b,c);let e=[];for(let a of d.contents){if(!a||!Array.isArray(a.parts)||!a.parts.some(a=>a&&a.functionResponse)){e.push(a);continue}let b=[],c=()=>{b.length>0&&(e.push({...a,parts:b}),b=[])};for(let d of a.parts)d&&d.functionResponse?(c(),e.push({...a,parts:[d]})):b.push(d);c()}return o(a,{...b,...b?.request?{request:{...d,contents:e}}:{contents:e}},c)}(0,f.kz)(d.h.GEMINI,d.h.OPENAI,p,null),(0,f.kz)(d.h.GEMINI_CLI,d.h.OPENAI,p,null);var q=c(69226),r=c(10793),s=c(22435),t=c(27547);function u(){return crypto.randomUUID()}function v(a){if(!a)return"_unknown";let b=a.replace(/[^a-zA-Z0-9_.:\-]/g,"_");return/^[a-zA-Z_]/.test(b)||(b="_"+b),b.substring(0,64)}function w(a){let b=[];for(let c of a||[]){if(!c?.role||!Array.isArray(c.parts)||0===c.parts.length)continue;let a=b.at(-1);a?.role===c.role?a.parts.push(...c.parts):b.push({...c,parts:[...c.parts]})}return b}function x(a,b,c,d=q.bf){let e={model:a,contents:[],generationConfig:{},safetySettings:s.fc};void 0!==b.temperature&&(e.generationConfig.temperature=b.temperature),void 0!==b.top_p&&(e.generationConfig.topP=b.top_p),void 0!==b.top_k&&(e.generationConfig.topK=b.top_k);let f=b.max_tokens??b.max_completion_tokens??b.max_output_tokens;if(void 0!==f&&(e.generationConfig.maxOutputTokens=f),void 0!==b.stop){let a=(Array.isArray(b.stop)?b.stop:[b.stop]).filter(a=>"string"==typeof a&&a);a.length>0&&(e.generationConfig.stopSequences=a.slice(0,5))}b.response_format?.type==="json_object"?e.generationConfig.responseMimeType="application/json":b.response_format?.type==="json_schema"&&b.response_format.json_schema?.schema&&(e.generationConfig.responseMimeType="application/json",e.generationConfig.responseSchema=(0,s.Yr)(structuredClone(b.response_format.json_schema.schema)));let g={};if(b.messages&&Array.isArray(b.messages)){for(let a of b.messages)if(a.role===m.z7.ASSISTANT&&a.tool_calls)for(let b of a.tool_calls)b.type===m.x4.FUNCTION&&b.id&&b.function?.name&&(g[b.id]=b.function.name)}let h=new Map;if(b.messages&&Array.isArray(b.messages))for(let a of b.messages)a.role===m.z7.TOOL&&a.tool_call_id&&h.set(a.tool_call_id,a.content??"");if(b.messages&&Array.isArray(b.messages))for(let a=0;a<b.messages.length;a++){let c=b.messages[a],f=c.role===m.z7.DEVELOPER?m.z7.SYSTEM:c.role,i=c.content;if(f===m.z7.SYSTEM&&b.messages.length>1){let a="string"==typeof i?i:(0,s.kU)(i,"\n");if(a){let b=e.systemInstruction?.parts?.[0]?.text;e.systemInstruction={role:m.RV.USER,parts:[{text:b?`${b}
|
|
424
424
|
${a}`:a}]}}}else if(f===m.z7.USER||f===m.z7.SYSTEM&&1===b.messages.length){let a=(0,s.S6)(i);a.length>0&&e.contents.push({role:m.RV.USER,parts:a})}else if(f===m.z7.ASSISTANT){let a=[];if(c.reasoning_content&&(a.push({thought:!0,text:c.reasoning_content}),a.push({thoughtSignature:d,text:""})),i){let b="string"==typeof i?i:(0,s.kU)(i);b&&a.push({text:b})}if(c.tool_calls&&Array.isArray(c.tool_calls)){let b=[];for(let e of c.tool_calls){if(e.type!==m.x4.FUNCTION)continue;let c=(0,s.pT)(e.function?.arguments||"{}")??{};a.push({thoughtSignature:d,functionCall:{id:e.id,name:v(e.function.name),args:c}}),b.push(e.id)}if(a.length>0&&e.contents.push({role:m.RV.MODEL,parts:a}),b.some(a=>h.has(a))){let a=[];for(let c of b){if(!h.has(c))continue;let b=g[c];if(!b){let a=c.split("-");b=a.length>2?a.slice(0,-2).join("-"):c}let d=h.get(c),e=(0,s.pT)(d);a.push({functionResponse:{id:c,name:v(b),response:{result:null===e?d??"":e}}})}a.length>0&&e.contents.push({role:m.RV.USER,parts:a})}}else a.length>0&&e.contents.push({role:m.RV.MODEL,parts:a})}}if(b.tools&&Array.isArray(b.tools)&&b.tools.length>0){let a=[];for(let c of b.tools)if(c.name&&c.input_schema){let b=(0,s.Yr)(structuredClone(c.input_schema||{type:"object",properties:{}}));a.push({name:v(c.name),description:c.description||"",parameters:b})}else if(c.type===m.x4.FUNCTION&&c.function){let b=c.function,d=(0,s.Yr)(structuredClone(b.parameters||{type:"object",properties:{}}));a.push({name:v(b.name),description:b.description||"",parameters:d})}a.length>0&&(e.tools=[{functionDeclarations:a}])}return e.tools?.length>0&&void 0!==b.tool_choice&&(e.toolConfig={functionCallingConfig:function(a){if("none"===a)return{mode:"NONE"};if("required"===a)return{mode:"ANY"};if("auto"===a)return{mode:"AUTO"};if("object"==typeof a&&null!==a){if("none"===a.type)return{mode:"NONE"};if("any"===a.type||"required"===a.type)return{mode:"ANY"};let b=a.function?.name||a.name;if(b)return{mode:"ANY",allowedFunctionNames:[v(b)]}}return{mode:"AUTO"}}(b.tool_choice)}),e.contents=w(e.contents),(0,t.n)(e.generationConfig),e}function y(a,b,c){let d=x(a,b,c,q.$G);if(d.tools?.[0]?.functionDeclarations){for(let a of d.tools[0].functionDeclarations)if(a.parameters){let b=(0,s.Yr)(a.parameters);a.parameters=b}}return d}function z(a,b,c=null,d=!1){let f={project:c?.projectId||(0,s.w_)(),model:a,userAgent:d?"antigravity":"gemini-cli",requestId:d?`agent-${u()}`:(0,s.KZ)(),request:{sessionId:(0,e.E9)(c?._clientSessionId)||(d?(0,e.RF)(c?.email||c?.connectionId):(0,s.f6)()),contents:b.contents,systemInstruction:b.systemInstruction,generationConfig:b.generationConfig,tools:b.tools}};if(b.toolConfig&&(f.request.toolConfig=b.toolConfig),d){f.requestType="agent";let a=[{text:r.$V},{text:`Please ignore the following [ignore]${r.$V}[/ignore]`}];f.request.systemInstruction?.parts?f.request.systemInstruction.parts.unshift(...a):f.request.systemInstruction={role:m.RV.USER,parts:a},b.tools?.length>0&&!b.toolConfig&&(f.request.toolConfig={functionCallingConfig:{mode:"VALIDATED"}})}else f.request.safetySettings=b.safetySettings;return f}(0,f.kz)(d.h.OPENAI,d.h.GEMINI,function(a,b,c){return x(a,b,c)},null),(0,f.kz)(d.h.OPENAI,d.h.GEMINI_CLI,(a,b,c,d)=>z(a,y(a,b,c),d),null),(0,f.kz)(d.h.OPENAI,d.h.ANTIGRAVITY,function(a,b,c,d=null){if(/^(claude|anthropic)[-/]/i.test(String(a||""))){let f=(0,g.C)(a,b,c);return function(a,b,c=null,d=q.bf){let f={project:c?.projectId||(0,s.w_)(),model:a,userAgent:"antigravity",requestId:`agent-${u()}`,requestType:"agent",request:{sessionId:(0,e.E9)(c?._clientSessionId)||(0,e.RF)(c?.email||c?.connectionId),contents:[],generationConfig:{temperature:b.temperature??1,maxOutputTokens:b.max_tokens||4096}}},g={};if(b.messages&&Array.isArray(b.messages)){for(let a of b.messages)if(Array.isArray(a.content))for(let b of a.content)b.type===m.R4.TOOL_USE&&b.id&&b.name&&(g[b.id]=b.name)}if(b.messages&&Array.isArray(b.messages))for(let a of b.messages){let b=[];if(Array.isArray(a.content)){for(let c of a.content)if(c.type===m.R4.TEXT)b.push({text:c.text});else if(c.type===m.R4.TOOL_USE)b.push({thoughtSignature:d,functionCall:{id:c.id,name:v(c.name),args:c.input||{}}});else if(c.type===m.R4.TOOL_RESULT){let a=c.content;Array.isArray(a)&&(a=a.map(a=>a.type===m.R4.TEXT?a.text:JSON.stringify(a)).join("\n"));let d=g[c.tool_use_id]?v(g[c.tool_use_id]):"tool";b.push({functionResponse:{id:c.tool_use_id,name:d,response:{result:(0,s.pT)(a)||a}}})}}else"string"==typeof a.content&&b.push({text:a.content});b.length>0&&f.request.contents.push({role:a.role===m.z7.ASSISTANT?m.RV.MODEL:m.RV.USER,parts:b})}if(b.tools&&Array.isArray(b.tools)){var h;let a=[];for(let c of b.tools)if(c.name&&c.input_schema){let b=(0,s.Yr)(c.input_schema);a.push({name:v(c.name),description:c.description||"",parameters:b})}a.length>0&&(f.request.tools=[{functionDeclarations:a}],f.request.toolConfig={functionCallingConfig:(h=b.tool_choice,h?.type==="none"?{mode:"NONE"}:h?.type==="auto"?{mode:"AUTO"}:h?.type==="any"?{mode:"ANY"}:h?.type==="tool"&&h.name?{mode:"ANY",allowedFunctionNames:[v(h.name)]}:{mode:"VALIDATED"})})}let i=[{text:r.$V},{text:`Please ignore the following [ignore]${r.$V}[/ignore]`}];if(b.system)if(Array.isArray(b.system))for(let a of b.system)a.text&&i.push({text:a.text});else"string"==typeof b.system&&i.push({text:b.system});return f.request.systemInstruction?.parts?f.request.systemInstruction.parts.unshift(...i):f.request.systemInstruction={role:m.RV.USER,parts:i},f.request.contents=w(f.request.contents),f}(a,f,d)}let f=y(a,b,c);return z(a,f,d,!0)},null),(0,f.kz)(d.h.OPENAI,d.h.VERTEX,function(a,b,c){var d=x(a,b,c,q.n6);if(!d?.contents)return d;for(let a of d.contents)if(Array.isArray(a.parts))for(let b of a.parts)void 0!==b.thoughtSignature&&(b.thoughtSignature=q.n6),b.functionCall&&"id"in b.functionCall&&delete b.functionCall.id,b.functionResponse&&"id"in b.functionResponse&&delete b.functionResponse.id;return d},null),(0,f.kz)(d.h.ANTIGRAVITY,d.h.OPENAI,function(a,b,c){let d=b.request||b,e={model:a,messages:[],stream:c};if(d.generationConfig){let a=d.generationConfig;if(a.maxOutputTokens){let b={max_tokens:a.maxOutputTokens,tools:d.tools};e.max_tokens=(0,h.M)(b)}if(void 0!==a.temperature&&(e.temperature=a.temperature),void 0!==a.topP&&(e.top_p=a.topP),void 0!==a.topK&&(e.top_k=a.topK),a.thinkingConfig){let b=a.thinkingConfig;if("string"==typeof b.thinkingLevel){let a={minimal:"low",low:"low",medium:"medium",high:"high"}[b.thinkingLevel.toLowerCase()];a&&(e.reasoning_effort=a)}else{let a=(0,l.Vp)(b.thinkingBudget||0);a&&(e.reasoning_effort=a)}}}let f=(0,k.Fq)(d);if(void 0!==f&&(e.tool_choice=f),d.systemInstruction){var g;let a="string"==typeof(g=d.systemInstruction)?g:g.parts&&Array.isArray(g.parts)?g.parts.map(a=>a.text||"").filter(Boolean).join("\n"):"";a&&e.messages.push({role:m.z7.SYSTEM,content:a})}if(d.contents&&Array.isArray(d.contents))for(let a of(n(d.contents),d.contents)){let b=function(a){let b=a.role===m.RV.MODEL?m.z7.ASSISTANT:a.role===m.RV.USER?m.z7.USER:a.role;if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[],e=[],f="";for(let b of a.parts){if(!0===b.thought&&b.text){f+=b.text;continue}if(b.thoughtSignature&&void 0!==b.text){b.text&&c.push({type:m.x4.TEXT,text:b.text});continue}if(void 0!==b.text&&""!==b.text&&c.push({type:m.x4.TEXT,text:b.text}),b.inlineData&&c.push({type:m.x4.IMAGE_URL,image_url:{url:(0,i.$q)(b.inlineData.mimeType,b.inlineData.data)}}),b.fileData){let a=b.fileData.fileUri||"";(b.fileData.mimeType||"").startsWith("image/")?c.push({type:m.x4.IMAGE_URL,image_url:{url:a}}):a&&c.push({type:m.x4.TEXT,text:`[File: ${a}]`})}if(b.functionCall&&d.push({id:b.functionCall.id||`call_${b.functionCall.name}`,type:m.x4.FUNCTION,function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse){let a=b.functionResponse,c={role:m.z7.TOOL,tool_call_id:a.id||`call_${a.name}`,content:JSON.stringify(a.response?.result??a.response??{})};("ERROR"===a.status||!0===a.isError||!0===a.is_error)&&(c.is_error=!0),e.push(c)}}if(e.length>0){if(d.length>0||c.length>0||f){let a={role:m.z7.ASSISTANT};return c.length>0&&(a.content=(0,j.z)(c)),f&&(a.reasoning_content=f),d.length>0&&(a.tool_calls=d),[a,...e]}return e}if(d.length>0){let a={role:m.z7.ASSISTANT};return c.length>0&&(a.content=(0,j.z)(c)),f&&(a.reasoning_content=f),a.tool_calls=d,a}if(c.length>0||f){let a={role:b};return c.length>0&&(a.content=(0,j.z)(c)),f&&(a.reasoning_content=f),a}return null}(a);b&&(Array.isArray(b)?e.messages.push(...b):e.messages.push(b))}if(d.tools&&Array.isArray(d.tools)){for(let a of(e.tools=[],d.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)e.tools.push({type:m.x4.FUNCTION,function:{name:b.name,description:b.description||"",parameters:function a(b){if(!b||"object"!=typeof b)return b;let c=Array.isArray(b)?[...b]:{...b};if("string"==typeof c.type&&(c.type=c.type.toLowerCase()),delete c.enumDescriptions,c.properties){let b={};for(let[d,e]of Object.entries(c.properties))b[d]=a(e);c.properties=b}return c.items&&(c.items=a(c.items)),c}(b.parameters)||{type:"object",properties:{}}}})}return e},null),c(89666);var A=c(27137),B=c(43835);function C(a,b){let c;try{c="string"==typeof b?b:JSON.stringify(b??{})}catch{c="{}"}return`[Tool call: ${a||"unknown"}(${c})]`}function D(a){let b=Array.isArray(a)?a.map(a=>"string"==typeof a?a:a.text||"").join("\n"):"string"==typeof a?a:"";return`[Tool result: ${b}]`}(0,f.kz)(d.h.OPENAI,d.h.KIRO,function(a,b,c,d){let f=b.messages||[],g=b.tools||[],h="number"==typeof b.max_tokens?b.max_tokens:"number"==typeof b.max_completion_tokens?b.max_completion_tokens:32e3,j=b.temperature,k=b.top_p,{upstream:l,agentic:n}=(0,B.$D)(a),o=(0,B.P9)(b,d?.rawHeaders,a),{history:p,currentMessage:q}=function(a,b,c){let d=[],e=null,f=b&&b.length>0;f||(a=function(a){let b=[];for(let c of a){if(c.role===m.z7.TOOL){b.push({role:m.z7.USER,content:D(c.content)});continue}if(c.role===m.z7.ASSISTANT){let a=[];if(c.reasoning_content&&a.push(c.reasoning_content),Array.isArray(c.content))for(let b of c.content)b.type===m.R4.TOOL_USE?a.push(C(b.name,b.input)):b.type===m.R4.THINKING&&b.thinking?a.push(b.thinking):(b.type===m.x4.TEXT||b.text)&&a.push(b.text||"");else"string"==typeof c.content&&a.push(c.content);for(let b of c.tool_calls||[])a.push(C(b.function?.name,b.function?.arguments));b.push({role:m.z7.ASSISTANT,content:a.filter(Boolean).join("\n")});continue}if(c.role===m.z7.USER&&Array.isArray(c.content)){let a=c.content.map(a=>a.type===m.R4.TOOL_RESULT?{type:m.x4.TEXT,text:D(a.content)}:a);b.push({...c,content:a});continue}b.push(c)}return b}(a));let g=[],h=[],j=[],k=[],l=null,n=!1,o=null,p=()=>{if("user"===l){let a={userInputMessage:{content:g.join("\n\n").trim()||"continue",modelId:""}};k.length>0&&(a.userInputMessage.images=k),j.length>0&&(a.userInputMessage.userInputMessageContext={toolResults:j}),f&&!n&&(a.userInputMessage.userInputMessageContext||(a.userInputMessage.userInputMessageContext={}),o=b.map(a=>{let b=a.function?.name||a.name,c=a.function?.description||a.description||"";c.trim()||(c=`Tool: ${b}`);let d=a.function?.parameters||a.parameters||a.input_schema||{};return{toolSpecification:{name:b,description:c,inputSchema:{json:0===Object.keys(d).length?{type:"object",properties:{},required:[]}:{...d,required:d.required??[]}}}}}),a.userInputMessage.userInputMessageContext.tools=o,n=!0),d.push(a),e=a,g=[],j=[],k=[]}else if("assistant"===l){let a=h.join("\n\n").trim()||"...";d.push({assistantResponseMessage:{content:a}}),h=[]}};for(let b=0;b<a.length;b++){let c=a[b],e=c.role,f=e===m.z7.SYSTEM;if((e===m.z7.SYSTEM||e===m.z7.TOOL)&&(e=m.z7.USER),e!==l&&null!==l&&p(),l=e,e===m.z7.USER){let a="";if("string"==typeof c.content)a=c.content;else if(Array.isArray(c.content)){let b=[];for(let a of c.content)if(a.type===m.x4.TEXT||a.text)b.push(a.text||"");else if(a.type===m.x4.IMAGE_URL){let c=a.image_url?.url||"",d=(0,i.W$)(c);if(d){let a=d.mimeType.split("/")[1]||d.mimeType;k.push({format:a,source:{bytes:d.base64}})}else(c.startsWith("http://")||c.startsWith("https://"))&&b.push(`[Image: ${c}]`)}else if(a.type===m.R4.IMAGE)if(a.source?.type==="base64"&&a.source?.data){let b=a.source.media_type||m.BY,c=b.split("/")[1]||b;k.push({format:c,source:{bytes:a.source.data}})}else a.source?.type==="url"&&a.source.url&&b.push(`[Image: ${a.source.url}]`);a=b.join("\n");let d=c.content.filter(a=>a.type===m.R4.TOOL_RESULT);d.length>0&&d.forEach(a=>{let b=Array.isArray(a.content)?a.content.map(a=>a.text||"").join("\n"):"string"==typeof a.content?a.content:"";j.push({toolUseId:a.tool_use_id,status:"success",content:[{text:b}]})})}if(c.role===m.z7.TOOL){let a="string"==typeof c.content?c.content:"";j.push({toolUseId:c.tool_call_id,status:"success",content:[{text:a||"[No response received]"}]})}else a&&g.push(f?`<instructions>
|
|
425
425
|
${a}
|
|
426
426
|
</instructions>`:a)}else if(e===m.z7.ASSISTANT){let a="",b=[];if(Array.isArray(c.content)?(a=c.content.filter(a=>a.type===m.x4.TEXT).map(a=>a.text).join("\n").trim(),b=c.content.filter(a=>a.type===m.R4.TOOL_USE)):"string"==typeof c.content&&(a=c.content.trim()),c.tool_calls&&c.tool_calls.length>0&&(b=c.tool_calls),a&&h.push(a),b.length>0){p();let a=d[d.length-1];a?.assistantResponseMessage&&(a.assistantResponseMessage.toolUses=b.map(a=>a.function?{toolUseId:a.id||(0,A.A)(),name:a.function.name,input:function(a,b){if("string"!=typeof a)return a??b;try{return JSON.parse(a)}catch{return b}}(a.function.arguments,{})}:{toolUseId:a.id||(0,A.A)(),name:a.name,input:a.input||{}})),l=null}}}null!==l&&p();for(let a=d.length-1;a>=0;a--)if(d[a].userInputMessage){e=d.splice(a,1)[0];break}let q=o??d.find(a=>a.userInputMessage?.userInputMessageContext?.tools)?.userInputMessage?.userInputMessageContext?.tools;d.forEach(a=>{a.userInputMessage?.userInputMessageContext?.tools&&delete a.userInputMessage.userInputMessageContext.tools,a.userInputMessage?.userInputMessageContext&&0===Object.keys(a.userInputMessage.userInputMessageContext).length&&delete a.userInputMessage.userInputMessageContext,a.userInputMessage&&!a.userInputMessage.modelId&&(a.userInputMessage.modelId=c)});let r=[];for(let a=0;a<d.length;a++){let b=d[a];if(b.userInputMessage&&r.length>0&&r[r.length-1].userInputMessage){let a=r[r.length-1];a.userInputMessage.content+="\n\n"+b.userInputMessage.content;let c=a.userInputMessage.userInputMessageContext,d=b.userInputMessage.userInputMessageContext;d&&(c?(d.toolResults?.length>0&&(c.toolResults=[...c.toolResults||[],...d.toolResults]),d.tools?.length>0&&(c.tools=[...c.tools||[],...d.tools])):a.userInputMessage.userInputMessageContext=d)}else r.push(b)}return e||(e={userInputMessage:{content:"",modelId:c}}),f&&function(a,b){let c=new Set;for(let b of a){let a=b.assistantResponseMessage;if(a)for(let b of a.toolUses||[])b.toolUseId&&c.add(b.toolUseId)}for(let d of b?[...a,b]:a){let a=d.userInputMessage,b=a?.userInputMessageContext;if(!b?.toolResults?.length)continue;let e=[],f=[];for(let a of b.toolResults)c.has(a.toolUseId)?e.push(a):f.push(D(a.content));if(0===f.length)continue;let g=f.join("\n");a.content=a.content?`${a.content}
|