switchboard-router 0.5.21 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +17 -8
- package/app/.next-cli-build/build-manifest.json +3 -3
- package/app/.next-cli-build/prerender-manifest.json +3 -435
- package/app/.next-cli-build/required-server-files.json +9 -2
- package/app/.next-cli-build/routes-manifest.json +86 -13
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/agent-library/page.js +2 -2
- 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 +2 -2
- 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 +11 -24
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +3 -3
- 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 +16 -16
- 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 +2 -2
- 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 +4 -4
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +4 -4
- 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 +2 -2
- 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 +2 -2
- 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/quota/page.js +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +2 -2
- 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 +3 -3
- 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/_global-error.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_index.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 +2 -2
- 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 +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/agent-library/catalog/route.js +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 +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 +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 +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 +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 +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 +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/auth/status/route.js +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 +5 -11
- 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 +13 -38
- 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 +2 -2
- 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 +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-settings/route.js +2 -2
- 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 +5 -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 +2 -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 +1 -1
- 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 +2 -2
- 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 +5 -9
- 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 +5 -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/gemini-cli-settings/route.js +9 -10
- 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 +9 -6
- 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 +8 -10
- 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 +6 -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 +5 -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 +1 -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 +2 -2
- 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/route.js +5 -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/combos/[id]/route.js +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 +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/proxy/[...path]/route.js +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/start/route.js +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 +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 +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/route.js +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 +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 +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 +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 +2 -2
- 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 +2 -2
- 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 +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 +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 +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 +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 +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 +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/[id]/strategy/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/combos/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/health/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/health/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/health/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/providers/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/routing/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/usage/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/version/route.js +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/version/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/mgmt/v1/version/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/models/alias/route.js +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 +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 +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 +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/route.js +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 +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 +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 +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 +2 -2
- 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 +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 +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 +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 +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 +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 +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 +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 +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 +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/route.js +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 +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 +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 +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 +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 +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 +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 +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]/models/route.js +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 +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 +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 +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 +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 +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 +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 +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 +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 +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/routing/feedback/route.js +1 -0
- package/app/.next-cli-build/server/app/api/routing/feedback/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/routing/feedback/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/routing/insights/route.js +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 +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 +1 -0
- package/app/.next-cli-build/server/app/api/routing/stats/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/routing/stats/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/routing/versions/promote/route.js +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 +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 +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 +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 +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 +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 +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 +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 +1 -0
- package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/token-saver/vault-stats/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +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 +2 -2
- 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 +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 +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 +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 +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 +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 +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 +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 +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 +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 +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/route.js +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 +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 +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 +2 -2
- 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 +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 +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 +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 +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 +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 +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 +2 -2
- 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 +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 +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 +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 +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 +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 +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 +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 +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 +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/web/fetch/route.js +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 +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 +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 +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 +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 +2 -2
- 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 +5 -5
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
- 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 +5 -5
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
- 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 +4 -4
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing/page.js +2 -2
- 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 +5 -5
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +2 -2
- 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/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +2 -2
- 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 +17 -8
- package/app/.next-cli-build/server/chunks/1062.js +64 -0
- package/app/.next-cli-build/server/chunks/1064.js +104 -0
- package/app/.next-cli-build/server/chunks/1294.js +49 -0
- package/app/.next-cli-build/server/chunks/159.js +1 -0
- package/app/.next-cli-build/server/chunks/1808.js +1 -0
- package/app/.next-cli-build/server/chunks/1814.js +2 -2
- package/app/.next-cli-build/server/chunks/194.js +1 -0
- package/app/.next-cli-build/server/chunks/1998.js +1 -1
- package/app/.next-cli-build/server/chunks/241.js +1 -1
- package/app/.next-cli-build/server/chunks/2712.js +3 -0
- package/app/.next-cli-build/server/chunks/{9528.js → 2750.js} +2 -3
- package/app/.next-cli-build/server/chunks/2925.js +1 -0
- package/app/.next-cli-build/server/chunks/3072.js +2 -0
- package/app/.next-cli-build/server/chunks/3075.js +1 -0
- package/app/.next-cli-build/server/chunks/319.js +3 -3
- package/app/.next-cli-build/server/chunks/3535.js +1 -1
- package/app/.next-cli-build/server/chunks/3546.js +1 -1
- package/app/.next-cli-build/server/chunks/3593.js +2 -2
- package/app/.next-cli-build/server/chunks/3675.js +1 -0
- package/app/.next-cli-build/server/chunks/369.js +70 -0
- package/app/.next-cli-build/server/chunks/3904.js +1 -0
- package/app/.next-cli-build/server/chunks/3986.js +49 -14
- package/app/.next-cli-build/server/chunks/4126.js +5 -0
- package/app/.next-cli-build/server/chunks/{2422.js → 4176.js} +1 -1
- package/app/.next-cli-build/server/chunks/4192.js +1 -0
- package/app/.next-cli-build/server/chunks/4194.js +1 -1
- package/app/.next-cli-build/server/chunks/440.js +26 -0
- package/app/.next-cli-build/server/chunks/4646.js +1 -0
- package/app/.next-cli-build/server/chunks/4739.js +2 -2
- package/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/app/.next-cli-build/server/chunks/4776.js +33 -0
- package/app/.next-cli-build/server/chunks/4780.js +2 -2
- package/app/.next-cli-build/server/chunks/4803.js +9 -0
- package/app/.next-cli-build/server/chunks/4904.js +10 -0
- package/app/.next-cli-build/server/chunks/507.js +1 -1
- package/app/.next-cli-build/server/chunks/5115.js +67 -0
- package/app/.next-cli-build/server/chunks/5139.js +1 -0
- package/app/.next-cli-build/server/chunks/5258.js +2 -2
- package/app/.next-cli-build/server/chunks/5350.js +1 -0
- package/app/.next-cli-build/server/chunks/5615.js +3 -3
- package/app/.next-cli-build/server/chunks/5821.js +1 -0
- package/app/.next-cli-build/server/chunks/6103.js +1 -0
- package/app/.next-cli-build/server/chunks/615.js +1 -1
- package/app/.next-cli-build/server/chunks/6182.js +3 -3
- package/app/.next-cli-build/server/chunks/6252.js +9 -0
- package/app/.next-cli-build/server/chunks/6448.js +109 -0
- package/app/.next-cli-build/server/chunks/{4206.js → 6470.js} +1 -1
- package/app/.next-cli-build/server/chunks/6492.js +1 -0
- package/app/.next-cli-build/server/chunks/6844.js +1 -1
- package/app/.next-cli-build/server/chunks/698.js +1 -1
- package/app/.next-cli-build/server/chunks/7141.js +1 -0
- package/app/.next-cli-build/server/chunks/7155.js +1 -0
- package/app/.next-cli-build/server/chunks/7250.js +1 -0
- package/app/.next-cli-build/server/chunks/7335.js +1 -0
- package/app/.next-cli-build/server/chunks/7662.js +1 -0
- package/app/.next-cli-build/server/chunks/7753.js +1 -0
- package/app/.next-cli-build/server/chunks/7828.js +1 -0
- package/app/.next-cli-build/server/chunks/7965.js +2 -2
- package/app/.next-cli-build/server/chunks/8062.js +9 -0
- package/app/.next-cli-build/server/chunks/8117.js +1 -0
- package/app/.next-cli-build/server/chunks/8129.js +1 -0
- package/app/.next-cli-build/server/chunks/8400.js +153 -0
- package/app/.next-cli-build/server/chunks/8469.js +9 -0
- package/app/.next-cli-build/server/chunks/8520.js +1 -1
- package/app/.next-cli-build/server/chunks/869.js +1 -0
- package/app/.next-cli-build/server/chunks/8775.js +1 -1
- package/app/.next-cli-build/server/chunks/8998.js +486 -0
- package/app/.next-cli-build/server/chunks/9046.js +1 -0
- package/app/.next-cli-build/server/chunks/9062.js +104 -0
- package/app/.next-cli-build/server/chunks/9261.js +88 -0
- package/app/.next-cli-build/server/chunks/9291.js +1 -0
- package/app/.next-cli-build/server/chunks/9397.js +1 -0
- package/app/.next-cli-build/server/chunks/9489.js +8 -0
- package/app/.next-cli-build/server/chunks/9508.js +45 -0
- package/app/.next-cli-build/server/chunks/9696.js +3 -3
- package/app/.next-cli-build/server/chunks/995.js +1 -0
- package/app/.next-cli-build/server/chunks/static/media/catalog.e7ada387.json +1710 -0
- package/app/.next-cli-build/server/instrumentation.js +1 -0
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +11 -11
- 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/server/webpack-runtime.js +1 -1
- package/app/.next-cli-build/static/chunks/1321-a44fdd7adfc172fb.js +1 -0
- package/app/.next-cli-build/static/chunks/136-b76ff55769d5ecb1.js +1 -0
- package/app/.next-cli-build/static/chunks/2280-61262f8359f37a85.js +64 -0
- package/app/.next-cli-build/static/chunks/2493-6241eb181f2ecb6e.js +67 -0
- package/app/.next-cli-build/static/chunks/5497-aa5f62602eba33e9.js +7 -0
- package/app/.next-cli-build/static/chunks/7592-bbf465c7acd2478e.js +1 -0
- package/app/.next-cli-build/static/chunks/782-3676be0287313117.js +3 -0
- package/app/.next-cli-build/static/chunks/8500-287dd3e5d372ba6f.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/agent-library/page-3eb83b61eb3cbc9f.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-04509a38b9fd3dcf.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-fa35870caaeabe20.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-88244cb193592f8f.js → page-aa9c65a5e73a3f5d.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-a8d77d24b4c71915.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/routing/page-95f09ae849f539d6.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-6678759c536b4008.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-59e92d48daea1aed.js +3 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-183cf5498e6d3e42.js +59 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-b67e7e3b9acaf1cc.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/page-a4bad553cba810e7.js +4 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/{page-36448aa4e37c7802.js → page-0568602ac2385103.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-f6e3507247a819e5.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-755ed32651028f99.js → page-08fe6612a31239da.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-27ae229b00137a0b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-a1ab95a02951c91d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-0d7fcdbff356b2ab.js +10 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-608cdc11e7047159.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-ad84a479883e6cc3.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-f312c1076859630e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/[id]/page-90277b8688f387c1.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-77bb7400c2be9752.js → page-33e127c15efc66a5.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-0f74a450b98fa125.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-ad2eda4b48c9319b.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-025d20cc7b091120.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-b06b9aec5dcdf486.js +1 -0
- package/app/.next-cli-build/static/chunks/app/_global-error/page-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/catalog/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/doctor/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/export/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/mcp/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/skills/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/agent-library/sync/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/aider-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/gemini-cli-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/[id]/strategy/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/combos/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/health/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/providers/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/routing/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/usage/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mgmt/v1/version/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/batch/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/cache/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/prepare/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/remove-unavailable/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/feedback/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/insights/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/learn/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/stats/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/versions/promote/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/routing/versions/rollback/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/skills/[id]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/token-saver/vault-stats/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/callback/page-5c1d863ff86ddc6e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-4cfc7195d2a8bf0e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/landing/page-9e06d57d9b215fd7.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/page-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-1d242eb898fee31e.js +1 -0
- package/app/.next-cli-build/static/chunks/webpack-57b54315eb9fa808.js +1 -0
- package/app/.next-cli-build/static/css/92a5708a6b29ef8c.css +1 -0
- package/app/.next-cli-build/static/media/catalog.e7ada387.json +1710 -0
- package/app/.next-cli-build/static/sBwyl4vbyME9SYpTbTHkn/_buildManifest.js +1 -0
- package/app/custom-server.js +5 -5
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/container.js +26 -18
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/css-syntax-error.js +47 -14
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/fromJSON.js +23 -9
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/input.js +61 -33
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/lazy-result.js +50 -37
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/map-generator.js +26 -9
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/no-work-result.js +57 -55
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/node.js +110 -35
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/parser.js +46 -38
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/previous-map.js +30 -11
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/processor.js +7 -7
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/result.js +5 -5
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/stringifier.js +41 -20
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/tokenize.js +6 -2
- package/app/node_modules/{next/node_modules/postcss → postcss}/package.json +48 -48
- package/app/open-sse/package.json +4 -0
- package/app/open-sse/providers/generated/catalog.json +1710 -0
- package/app/package.json +22 -10
- package/app/public/i18n/literals/zh-CN.json +8 -0
- package/app/server.js +1 -1
- package/app/src/lib/db/adapters/betterSqliteAdapter.js +2 -3
- package/app/src/lib/db/adapters/bunSqliteAdapter.js +0 -2
- package/app/src/lib/db/adapters/nodeSqliteAdapter.js +0 -2
- package/app/src/lib/db/adapters/sqljsAdapter.js +23 -4
- package/app/src/lib/db/migrate.js +15 -4
- package/app/src/lib/updater/updater.js +67 -9
- package/app/src/shared/utils/apiKey.js +3 -7
- package/cli.js +205 -180
- package/hooks/sqliteRuntime.js +1 -7
- package/package.json +2 -2
- package/src/cli/api/client.js +3 -20
- package/src/cli/menus/settings.js +3 -62
- package/src/cli/tray/tray.js +18 -26
- package/src/shared/dataDir.js +61 -0
- package/src/shared/disableMitm.js +102 -0
- package/src/shared/openBrowser.js +43 -0
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +0 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +0 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +0 -1
- package/app/.next-cli-build/server/app/api/init/route.js +0 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +0 -1
- package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +0 -1
- package/app/.next-cli-build/server/app/dashboard/agent-library.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/agent-library.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/agent-library.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard/agent-library/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard/agent-library.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/agent-library.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/combos/routing.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/combos/routing.meta +0 -18
- package/app/.next-cli-build/server/app/dashboard/combos/routing.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos/routing/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos/routing.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/combos/routing.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/combos.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/combos.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.meta +0 -18
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/media-providers.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/media-providers.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/profile.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/profile.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.meta +0 -18
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/providers.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/providers.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/quota.html +0 -2
- package/app/.next-cli-build/server/app/dashboard/quota.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/skills.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/skills.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +0 -27
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/translator.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/translator.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/usage.html +0 -1
- package/app/.next-cli-build/server/app/dashboard/usage.meta +0 -17
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +0 -9
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +0 -30
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard.html +0 -1
- package/app/.next-cli-build/server/app/dashboard.meta +0 -16
- package/app/.next-cli-build/server/app/dashboard.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +0 -5
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +0 -7
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +0 -28
- package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +0 -6
- package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +0 -8
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +0 -8
- package/app/.next-cli-build/server/chunks/1051.js +0 -1
- package/app/.next-cli-build/server/chunks/1220.js +0 -3
- package/app/.next-cli-build/server/chunks/1241.js +0 -1
- package/app/.next-cli-build/server/chunks/2117.js +0 -1
- package/app/.next-cli-build/server/chunks/2280.js +0 -1
- package/app/.next-cli-build/server/chunks/2548.js +0 -67
- package/app/.next-cli-build/server/chunks/2701.js +0 -10
- package/app/.next-cli-build/server/chunks/2768.js +0 -79
- package/app/.next-cli-build/server/chunks/3943.js +0 -1
- package/app/.next-cli-build/server/chunks/4632.js +0 -1
- package/app/.next-cli-build/server/chunks/4827.js +0 -1
- package/app/.next-cli-build/server/chunks/5330.js +0 -161
- package/app/.next-cli-build/server/chunks/5612.js +0 -1
- package/app/.next-cli-build/server/chunks/5655.js +0 -1
- package/app/.next-cli-build/server/chunks/5699.js +0 -1
- package/app/.next-cli-build/server/chunks/5961.js +0 -28
- package/app/.next-cli-build/server/chunks/6040.js +0 -1
- package/app/.next-cli-build/server/chunks/6059.js +0 -1
- package/app/.next-cli-build/server/chunks/6070.js +0 -1
- package/app/.next-cli-build/server/chunks/6150.js +0 -64
- package/app/.next-cli-build/server/chunks/6306.js +0 -1
- package/app/.next-cli-build/server/chunks/6763.js +0 -1
- package/app/.next-cli-build/server/chunks/6777.js +0 -1
- package/app/.next-cli-build/server/chunks/6922.js +0 -1
- package/app/.next-cli-build/server/chunks/7651.js +0 -1
- package/app/.next-cli-build/server/chunks/8164.js +0 -67
- package/app/.next-cli-build/server/chunks/8238.js +0 -1
- package/app/.next-cli-build/server/chunks/8860.js +0 -32
- package/app/.next-cli-build/server/chunks/8895.js +0 -67
- package/app/.next-cli-build/server/chunks/8910.js +0 -8
- package/app/.next-cli-build/server/chunks/8920.js +0 -1
- package/app/.next-cli-build/server/chunks/9830.js +0 -73
- package/app/.next-cli-build/static/HFerqnfiKkxdqoMVxOfPW/_buildManifest.js +0 -1
- package/app/.next-cli-build/static/chunks/1321-39ad919b1616c75c.js +0 -1
- package/app/.next-cli-build/static/chunks/1610-cd46c6c47a9aa99a.js +0 -1
- package/app/.next-cli-build/static/chunks/1655-0df56bb46fc3a442.js +0 -73
- package/app/.next-cli-build/static/chunks/2562-ceb69ca00b47af6e.js +0 -64
- package/app/.next-cli-build/static/chunks/5242-bb1a1a7ec3bfb62f.js +0 -1
- package/app/.next-cli-build/static/chunks/5497-1ebc533b1f404c9f.js +0 -7
- package/app/.next-cli-build/static/chunks/5772-901f1092d831ec37.js +0 -3
- package/app/.next-cli-build/static/chunks/705-012db20bb6a5da8b.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/agent-library/page-b6f9c90a614bfb03.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-af2d913820faedae.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-a777baf9c2aa43b4.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-3f5fa0d8e152056f.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/routing/page-ff92eef8e57d1447.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-73628e93426ae624.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-a8d8d0f4bfbcfbae.js +0 -3
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page-a915efd975f6af81.js +0 -59
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-9cad271042843781.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/page-8bff15a89ffc3746.js +0 -4
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-4d2b06f4c8d1b384.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-afeae41f2e9445ec.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-ff7973275ee57a96.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-5e44267c26a7e42d.js +0 -10
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-3afd6ee04180298c.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-4957f02eb9879798.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-14da9269a25bd090.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/[id]/page-95e55b6593bcf3f7.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-54d1bd253432bc6f.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-ef0b203963c2c25e.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-59db0b586ad5ab45.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/layout-58013e7e99d17d70.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/catalog/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/doctor/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/export/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/mcp/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/skills/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/agent-library/sync/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/aider-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/gemini-cli-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/pi-settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/batch/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/cache/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/prepare/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/model-probes/remove-unavailable/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/routing/insights/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/routing/learn/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/routing/versions/promote/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/routing/versions/rollback/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/skills/[id]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/callback/page-64f2a90493720740.js +0 -1
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-2c2051aa3be879d6.js +0 -1
- package/app/.next-cli-build/static/chunks/app/landing/page-8c76c0ea58e06a53.js +0 -1
- package/app/.next-cli-build/static/chunks/app/login/page-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-4ff27935cdf818b5.js +0 -1
- package/app/.next-cli-build/static/chunks/webpack-868e94e9a2c8d9a9.js +0 -1
- package/app/.next-cli-build/static/css/20c5585d3269ee43.css +0 -1
- package/app/cli/.build-home/.switchboard/auth/machine-id-salt +0 -1
- package/app/cli/.build-home/.switchboard/db/data.sqlite +0 -0
- package/app/cli/.build-home/.switchboard/machine-id +0 -1
- package/app/public/i18n/literals/ar.json +0 -195
- package/app/public/i18n/literals/bn.json +0 -195
- package/app/public/i18n/literals/cs.json +0 -195
- package/app/public/i18n/literals/da.json +0 -195
- package/app/public/i18n/literals/de.json +0 -195
- package/app/public/i18n/literals/el.json +0 -195
- package/app/public/i18n/literals/es.json +0 -195
- package/app/public/i18n/literals/fa.json +0 -195
- package/app/public/i18n/literals/fi.json +0 -195
- package/app/public/i18n/literals/fr.json +0 -195
- package/app/public/i18n/literals/he.json +0 -195
- package/app/public/i18n/literals/hi.json +0 -195
- package/app/public/i18n/literals/hu.json +0 -195
- package/app/public/i18n/literals/id.json +0 -195
- package/app/public/i18n/literals/it.json +0 -195
- package/app/public/i18n/literals/ja.json +0 -195
- package/app/public/i18n/literals/ko.json +0 -195
- package/app/public/i18n/literals/nl.json +0 -195
- package/app/public/i18n/literals/no.json +0 -195
- package/app/public/i18n/literals/pl.json +0 -195
- package/app/public/i18n/literals/pt-BR.json +0 -195
- package/app/public/i18n/literals/pt-PT.json +0 -195
- package/app/public/i18n/literals/ro.json +0 -195
- package/app/public/i18n/literals/ru.json +0 -195
- package/app/public/i18n/literals/sv.json +0 -195
- package/app/public/i18n/literals/th.json +0 -195
- package/app/public/i18n/literals/tl.json +0 -195
- package/app/public/i18n/literals/tr.json +0 -195
- package/app/public/i18n/literals/uk.json +0 -195
- package/app/public/i18n/literals/ur.json +0 -195
- package/app/public/i18n/literals/vi.json +0 -195
- package/app/public/i18n/literals/zh-TW.json +0 -195
- package/app/.next-cli-build/static/{HFerqnfiKkxdqoMVxOfPW → sBwyl4vbyME9SYpTbTHkn}/_ssgManifest.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/at-rule.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/comment.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/declaration.js +4 -4
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/document.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/list.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/parse.js +1 -1
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/postcss.js +12 -12
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/root.js +0 -0
- package/app/node_modules/{next/node_modules/postcss → postcss}/lib/rule.js +6 -6
- /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/stringify.js +0 -0
- /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/symbols.js +0 -0
- /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/terminal-highlight.js +0 -0
- /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/warn-once.js +0 -0
- /package/app/node_modules/{next/node_modules/postcss → postcss}/lib/warning.js +0 -0
|
@@ -0,0 +1,486 @@
|
|
|
1
|
+
exports.id=8998,exports.ids=[8998],exports.modules={794:(a,b,c)=>{"use strict";let d=c(29021);a.exports={IS_DEV:!1,LSOF_BIN:(()=>{if("win32"===process.platform)return null;for(let a of["/usr/sbin/lsof","/usr/bin/lsof","/sbin/lsof"])try{return d.accessSync(a,d.constants.X_OK),a}catch{}return"lsof"})(),TARGET_HOSTS:["daily-cloudcode-pa.googleapis.com","cloudcode-pa.googleapis.com","api.individual.githubcopilot.com","q.us-east-1.amazonaws.com","codewhisperer.us-east-1.amazonaws.com","runtime.us-east-1.kiro.dev","api2.cursor.sh"],URL_PATTERNS:{antigravity:[":generateContent",":streamGenerateContent"],copilot:["/chat/completions","/v1/messages","/responses"],kiro:["/generateAssistantResponse"],cursor:["/BidiAppend","/RunSSE","/RunPoll","/Run"]},MODEL_SYNONYMS:{antigravity:{"gemini-default":"gemini-3.5-flash-low","gemini-3.5-flash-high":"gemini-3-flash-agent","gemini-3.5-flash-medium":"gemini-3.5-flash-low","gemini-3.5-flash-extra-low":"gemini-3.5-flash-extra-low","gemini-3.1-pro-high":"gemini-pro-agent","gemini-3-pro-high":"gemini-pro-agent","gemini-3-pro-low":"gemini-3.1-pro-low"}},MODEL_PATTERNS:{antigravity:[{match:/flash.*extra.*low|extra.*low.*flash|flash.*low|low.*flash/i,alias:"gemini-3.5-flash-extra-low"},{match:/flash.*medium|medium.*flash/i,alias:"gemini-3.5-flash-low"},{match:/flash.*agent|agent.*flash|flash/i,alias:"gemini-3-flash-agent"},{match:/pro.*low|low.*pro/i,alias:"gemini-3.1-pro-low"},{match:/gemini.*pro|pro.*gemini/i,alias:"gemini-pro-agent"},{match:/opus/i,alias:"claude-opus-4-6-thinking"},{match:/sonnet|claude/i,alias:"claude-sonnet-4-6"},{match:/gpt.*oss|oss/i,alias:"gpt-oss-120b-medium"}]},MODEL_NO_MAP:{antigravity:[/^tab[_-]/i]},LOG_BLACKLIST_URL_PARTS:["recordCodeAssistMetrics","recordTrajectoryAnalytics","fetchAdminControls","listExperiments","fetchUserInfo"],getToolForHost:function(a){let b=(a||"").split(":")[0];return"api.individual.githubcopilot.com"===b?"copilot":"daily-cloudcode-pa.googleapis.com"===b||"cloudcode-pa.googleapis.com"===b?"antigravity":"q.us-east-1.amazonaws.com"===b||"codewhisperer.us-east-1.amazonaws.com"===b||"runtime.us-east-1.kiro.dev"===b?"kiro":"api2.cursor.sh"===b?"cursor":null}}},978:(a,b,c)=>{"use strict";c(62457),c(82689)},1277:(a,b,c)=>{var d=c(45654);a.exports=d.md=d.md||{},d.md.algorithms=d.md.algorithms||{}},1653:(a,b,c)=>{"use strict";let d=c(33873),e=c(29021),f=c(5019),{MITM_DIR:g}=c(37436),h=d.join(g,"rootCA.key"),i=d.join(g,"rootCA.crt");function j(a){try{let b=f.pki.certificateFromPem(e.readFileSync(a,"utf8")),c=new Date(Date.now()+2592e6);return b.validity.notAfter<c}catch{return!0}}a.exports={generateRootCA:function(){let a=e.existsSync(h)&&e.existsSync(i);if(a&&!j(i))return console.log("✅ Root CA already exists"),{key:h,cert:i};if(a){console.log("\uD83D\uDD10 Root CA expired or expiring soon — regenerating...");try{e.unlinkSync(h)}catch{}try{e.unlinkSync(i)}catch{}}if(e.existsSync(g))try{e.chmodSync(g,448)}catch{}else e.mkdirSync(g,{recursive:!0,mode:448});console.log("\uD83D\uDD10 Generating Root CA certificate...");let b=f.pki.rsa.generateKeyPair(2048),c=f.pki.createCertificate();c.publicKey=b.publicKey,c.serialNumber="01",c.validity.notBefore=new Date,c.validity.notAfter=new Date,c.validity.notAfter.setFullYear(c.validity.notBefore.getFullYear()+10);let d=[{name:"commonName",value:"Switchboard MITM Root CA"},{name:"organizationName",value:"Switchboard"},{name:"countryName",value:"US"}];c.setSubject(d),c.setIssuer(d),c.setExtensions([{name:"basicConstraints",cA:!0,critical:!0},{name:"keyUsage",keyCertSign:!0,cRLSign:!0,critical:!0},{name:"subjectKeyIdentifier"}]),c.sign(b.privateKey,f.md.sha256.create());let k=f.pki.privateKeyToPem(b.privateKey),l=f.pki.certificateToPem(c);e.writeFileSync(h,k,{mode:384}),e.writeFileSync(i,l,{mode:420});try{e.chmodSync(h,384)}catch{}return console.log("✅ Root CA generated successfully"),{key:h,cert:i}},loadRootCA:function(){if(!e.existsSync(h)||!e.existsSync(i))throw Error("Root CA not found. Generate it first.");let a=e.readFileSync(h,"utf8"),b=e.readFileSync(i,"utf8");return{key:f.pki.privateKeyFromPem(a),cert:f.pki.certificateFromPem(b)}},generateLeafCert:function(a,b){let c=f.pki.rsa.generateKeyPair(2048),d=f.pki.createCertificate();return d.publicKey=c.publicKey,d.serialNumber=Math.floor(1e6*Math.random()).toString(),d.validity.notBefore=new Date,d.validity.notAfter=new Date,d.validity.notAfter.setFullYear(d.validity.notBefore.getFullYear()+1),d.setSubject([{name:"commonName",value:a}]),d.setIssuer(b.cert.subject.attributes),d.setExtensions([{name:"basicConstraints",cA:!1},{name:"keyUsage",digitalSignature:!0,keyEncipherment:!0},{name:"extKeyUsage",serverAuth:!0,clientAuth:!0},{name:"subjectAltName",altNames:[{type:2,value:a},{type:2,value:`*.${a}`}]}]),d.sign(b.key,f.md.sha256.create()),{key:f.pki.privateKeyToPem(c.privateKey),cert:f.pki.certificateToPem(d)}},isCertExpired:j,ROOT_CA_CERT_PATH:i,ROOT_CA_KEY_PATH:h}},1654:(a,b,c)=>{"use strict";c(23059)},1712:(a,b,c)=>{"use strict";let d=c(34589),{addAbortListener:e}=c(78474),{Readable:f}=c(57075),{RequestAbortedError:g,NotSupportedError:h,InvalidArgumentError:i,AbortError:j}=c(61448),k=c(84285),{ReadableStreamFrom:l}=c(84285),m=Symbol("kConsume"),n=Symbol("kReading"),o=Symbol("kBody"),p=Symbol("kAbort"),q=Symbol("kContentType"),r=Symbol("kContentLength"),s=Symbol("kUsed"),t=Symbol("kBytesRead"),u=Symbol("kPreservedBuffer"),v=()=>{};class w extends f{constructor({resume:a,abort:b,contentType:c="",contentLength:d,highWaterMark:e=65536}){super({autoDestroy:!0,read:a,highWaterMark:e}),this._readableState.dataEmitted=!1,this[p]=b,this[m]=null,this[t]=0,this[o]=null,this[s]=!1,this[q]=c,this[r]=Number.isFinite(d)?d:null,this[n]=!1}_destroy(a,b){a||this._readableState.endEmitted||(a=new g),a&&this[p](),this[s]?b(a):setImmediate(b,a)}on(a,b){return("data"===a||"readable"===a)&&(this[n]=!0,this[s]=!0),super.on(a,b)}addListener(a,b){return this.on(a,b)}off(a,b){let c=super.off(a,b);return("data"===a||"readable"===a)&&(this[n]=this.listenerCount("data")>0||this.listenerCount("readable")>0),c}removeListener(a,b){return this.off(a,b)}push(a){return a&&(this[t]+=a.length,this[m])?(B(this[m],a),!this[n]||super.push(a)):super.push(a)}text(){return x(this,"text")}json(){return x(this,"json")}blob(){return x(this,"blob")}bytes(){return x(this,"bytes")}arrayBuffer(){return x(this,"arrayBuffer")}async formData(){throw new h}get bodyUsed(){return k.isDisturbed(this)}get body(){return!this[o]&&(this[o]=l(this),this[m]&&(this[o].getReader(),d(this[o].locked))),this[o]}dump(a){let b=a?.signal;if(null!=b&&("object"!=typeof b||!("aborted"in b)))return Promise.reject(new i("signal must be an AbortSignal"));let c=a?.limit&&Number.isFinite(a.limit)?a.limit:131072;return b?.aborted?Promise.reject(b.reason??new j):this._readableState.closeEmitted?Promise.resolve(null):new Promise((a,d)=>{if((this[r]&&this[r]>c||this[t]>c)&&this.destroy(new j),b){let c=()=>{this.destroy(b.reason??new j)},f=e(b,c);this.on("close",function(){f[Symbol.dispose](),b.aborted?d(b.reason??new j):a(null)})}else this.on("close",a);this.on("error",v).on("data",()=>{this[t]>c&&this.destroy()}).resume()})}setEncoding(a){if(Buffer.isEncoding(a)){let b=this._readableState,c=b.buffer;if(c&&b.length>0){let a=b.bufferIndex??0,d=[];for(let b of"function"==typeof c.slice?c.slice(a):c)Buffer.isBuffer(b)&&d.push(b);d.length>0&&(this[u]=(this[u]||[]).concat(d))}super.setEncoding(a)}return this}}function x(a,b){return d(!a[m]),new Promise((c,d)=>{if(k.isDisturbed(a)||a[o]?.locked===!0||null!==a[m]){let b=a._readableState;b.destroyed&&!1===b.closeEmitted?a.on("error",d).on("close",()=>{d(TypeError("unusable"))}):d(b.errored??TypeError("unusable"))}else queueMicrotask(()=>{a[m]={type:b,stream:a,resolve:c,reject:d,length:0,body:[]},a.on("error",function(a){C(this[m],a)}).on("close",function(){null!==this[m].body&&C(this[m],new g)}),function(a){if(null===a.body)return;let{_readableState:b}=a.stream,c=a.stream[u];if(c&&c.length>0){for(let b of c)B(a,b);a.stream[u]=null}else if(b.bufferIndex){let c=b.bufferIndex,d=b.buffer.length;for(let e=c;e<d;e++)B(a,b.buffer[e])}else for(let c of b.buffer)B(a,c);for(b.endEmitted?A(this[m],this._readableState.encoding):a.stream.on("end",function(){A(this[m],this._readableState.encoding)}),a.stream.resume();null!=a.stream.read(););}(a[m])})})}function y(a,b,c){if(0===a.length||0===b)return"";let d=1===a.length?a[0]:Buffer.concat(a,b),e=d.length,f=3*(e>2&&239===d[0]&&187===d[1]&&191===d[2]);return c&&"utf8"!==c&&"utf-8"!==c?d.subarray(f,e).toString(c):d.utf8Slice(f,e)}function z(a,b){if(0===a.length||0===b)return new Uint8Array(0);if(1===a.length)return new Uint8Array(a[0]);let c=new Uint8Array(Buffer.allocUnsafeSlow(b).buffer),d=0;for(let b=0;b<a.length;++b){let e=a[b];c.set(e,d),d+=e.length}return c}function A(a,b){let{type:c,body:d,resolve:e,stream:f,length:g}=a;try{"text"===c?e(y(d,g,b)):"json"===c?e(JSON.parse(y(d,g,b))):"arrayBuffer"===c?e(z(d,g).buffer):"blob"===c?e(new Blob(d,{type:f[q]})):"bytes"===c&&e(z(d,g)),C(a)}catch(a){f.destroy(a)}}function B(a,b){null!==a.body&&(a.length+=b.length,a.body.push(b))}function C(a,b){null!==a.body&&(b?a.reject(b):a.resolve(),a.type=null,a.stream=null,a.resolve=null,a.reject=null,a.length=0,a.body=null)}a.exports={Readable:w,chunksDecode:y}},2670:(a,b,c)=>{"use strict";c.d(b,{v:()=>r});var d=c(22268),e=c(68531),f=c(18184),g=c(90694),h=c(52655),i=c(29055),j=c(11897);function k(a,b,c){a.reasoningId||(a.reasoningId=`rs_${a.responseId}_${c}`,a.reasoningIndex=c,b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:a.reasoningId,type:j.Du.REASONING,summary:[]}}),b("response.reasoning_summary_part.added",{type:"response.reasoning_summary_part.added",item_id:a.reasoningId,output_index:c,summary_index:0,part:{type:j.Du.SUMMARY_TEXT,text:""}}),a.reasoningPartAdded=!0)}function l(a,b,c){c&&(a.reasoningBuf+=c,b("response.reasoning_summary_text.delta",{type:"response.reasoning_summary_text.delta",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,delta:c}))}function m(a,b){a.reasoningId&&!a.reasoningDone&&(a.reasoningDone=!0,b("response.reasoning_summary_text.done",{type:"response.reasoning_summary_text.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,text:a.reasoningBuf}),b("response.reasoning_summary_part.done",{type:"response.reasoning_summary_part.done",item_id:a.reasoningId,output_index:a.reasoningIndex,summary_index:0,part:{type:j.Du.SUMMARY_TEXT,text:a.reasoningBuf}}),b("response.output_item.done",{type:"response.output_item.done",output_index:a.reasoningIndex,item:{id:a.reasoningId,type:j.Du.REASONING,summary:[{type:j.Du.SUMMARY_TEXT,text:a.reasoningBuf}]}}))}function n(a,b,c){if(a.msgItemAdded[c]&&!a.msgItemDone[c]){a.msgItemDone[c]=!0;let d=a.msgTextBuf[c]||"",e=`msg_${a.responseId}_${c}`;b("response.output_text.done",{type:"response.output_text.done",item_id:e,output_index:parseInt(c),content_index:0,text:d,logprobs:[]}),b("response.content_part.done",{type:"response.content_part.done",item_id:e,output_index:parseInt(c),content_index:0,part:{type:j.Du.OUTPUT_TEXT,annotations:[],logprobs:[],text:d}}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:e,type:j.Du.MESSAGE,content:[{type:j.Du.OUTPUT_TEXT,annotations:[],logprobs:[],text:d}],role:j.z7.ASSISTANT}})}}function o(a,b,c){let d=a.funcCallIds[c];if(d&&!a.funcItemDone[c]){let e=a.funcArgsBuf[c]||"{}";b("response.function_call_arguments.done",{type:"response.function_call_arguments.done",item_id:`fc_${d}`,output_index:parseInt(c),arguments:e}),b("response.output_item.done",{type:"response.output_item.done",output_index:parseInt(c),item:{id:`fc_${d}`,type:j.Du.FUNCTION_CALL,arguments:e,call_id:d,name:a.funcNames[c]||""}}),a.funcItemDone[c]=!0,a.funcArgsDone[c]=!0}}function p(a,b){a.completedSent||(a.completedSent=!0,b("response.completed",{type:"response.completed",response:{id:a.responseId,object:"response",created_at:a.created,status:"completed",background:!1,error:null}}))}function q(a){return a.toolCallIndex>0||a.currentToolCallId?j.bC.TOOL_CALLS:j.bC.STOP}function r(a,b){if(!a){if(b.finishReasonSent||!b.started)return null;let a=q(b);b.finishReasonSent=!0,b.finishReason=a;let c=(0,f.k)({id:b.chatId||`chatcmpl-${Date.now()}`,created:b.created||Math.floor(Date.now()/1e3),model:b.model||j.rP},{},a);return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}let c=a.type||a.event,d=a.data||a;if(b.started||(b.started=!0,b.chatId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.toolCallIndex=0,b.currentToolCallId=null),"response.output_text.delta"===c){let a=d.delta||"";return a?(0,f.k)({id:b.chatId,created:b.created,model:b.model||j.rP},{content:a}):null}if("response.output_text.done"===c)return null;if("response.output_item.added"===c&&(d.item?.type===j.Du.FUNCTION_CALL||d.item?.type==="custom_tool_call")){let a=d.item;return b.currentToolCallId=a.call_id||(0,h.eG)(),(0,f.k)({id:b.chatId,created:b.created,model:b.model||j.rP},{tool_calls:[{index:b.toolCallIndex,id:b.currentToolCallId,type:j.x4.FUNCTION,function:{name:a.name||"",arguments:""}}]})}if("response.function_call_arguments.delta"===c||"response.custom_tool_call_input.delta"===c){let a=d.delta||"";return a?(0,f.k)({id:b.chatId,created:b.created,model:b.model||j.rP},{tool_calls:[{index:b.toolCallIndex,function:{arguments:a}}]}):null}if("response.output_item.done"===c&&(d.item?.type===j.Du.FUNCTION_CALL||d.item?.type==="custom_tool_call"))return b.toolCallIndex++,null;if("response.completed"===c||"response.done"===c){let a=d.response?.usage;if(a&&"object"==typeof a){let c=a.input_tokens||a.prompt_tokens||0,d=a.output_tokens||a.completion_tokens||0,e=a.input_tokens_details?.cached_tokens||a.cache_read_input_tokens||0;b.usage=(0,g.c)({promptTokens:c,completionTokens:d,totalTokens:c+d,cachedTokens:e})}if(!b.finishReasonSent){let a=q(b);b.finishReasonSent=!0,b.finishReason=a;let c=(0,f.k)({id:b.chatId,created:b.created,model:b.model||j.rP},{},a);return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}return null}if("error"===c||"response.failed"===c){if(b.finishReasonSent)return null;let a=d.error||d.response?.error;return a?(b.error=a,b.finishReasonSent=!0,(0,f.k)({id:b.chatId||`chatcmpl-${Date.now()}`,created:b.created||Math.floor(Date.now()/1e3),model:b.model||j.rP},{content:`[Error] ${a.message||JSON.stringify(a)}`},j.bC.STOP)):null}if("response.reasoning_summary_text.delta"===c){let a=d.delta||"";return a?(0,f.k)({id:b.chatId,created:b.created,model:b.model||j.rP},(0,i.B)(a)):null}return null}(0,d.kz)(e.h.OPENAI,e.h.OPENAI_RESPONSES,null,function(a,b){if(!a){var c=b;if(c.completedSent)return[];let a=[],d=(b,d)=>{d.sequence_number=++c.seq,a.push({event:b,data:d})};for(let a in c.msgItemAdded)n(c,d,a);for(let a in m(c,d),c.funcCallIds)o(c,d,a);return p(c,d),a}if(!a.choices?.length)return[];let d=[],e=(a,c)=>{c.sequence_number=++b.seq,d.push({event:a,data:c})},f=a.choices[0],g=f.index||0,h=f.delta||{};b.started||(b.started=!0,b.responseId=a.id?`resp_${a.id}`:b.responseId,e("response.created",{type:"response.created",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress",background:!1,error:null,output:[]}}),e("response.in_progress",{type:"response.in_progress",response:{id:b.responseId,object:"response",created_at:b.created,status:"in_progress"}}));let q=(0,i.V)(h);if(q&&(k(b,e,g),l(b,e,q)),h.content){let a=h.content;if(a.includes("<think>")&&(b.inThinking=!0,a=a.replace("<think>",""),k(b,e,g)),a.includes("</think>")){let c=a.split("</think>"),d=c[0],f=c.slice(1).join("</think>");d&&l(b,e,d),m(b,e),b.inThinking=!1,a=f}if(b.inThinking&&a)return l(b,e,a),d;a&&function(a,b,c,d){if(!a.msgItemAdded[c]){a.msgItemAdded[c]=!0;let d=`msg_${a.responseId}_${c}`;b("response.output_item.added",{type:"response.output_item.added",output_index:c,item:{id:d,type:j.Du.MESSAGE,content:[],role:j.z7.ASSISTANT}})}a.msgContentAdded[c]||(a.msgContentAdded[c]=!0,b("response.content_part.added",{type:"response.content_part.added",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,part:{type:j.Du.OUTPUT_TEXT,annotations:[],logprobs:[],text:""}})),b("response.output_text.delta",{type:"response.output_text.delta",item_id:`msg_${a.responseId}_${c}`,output_index:c,content_index:0,delta:d,logprobs:[]}),a.msgTextBuf[c]||(a.msgTextBuf[c]=""),a.msgTextBuf[c]+=d}(b,e,g,a)}if(h.tool_calls)for(let a of(n(b,e,g),h.tool_calls))!function(a,b,c){let d=c.index??0,e=c.id,f=c.function?.name;if(f&&(a.funcNames[d]=f),!a.funcCallIds[d]&&e&&(a.funcCallIds[d]=e,b("response.output_item.added",{type:"response.output_item.added",output_index:d,item:{id:`fc_${e}`,type:j.Du.FUNCTION_CALL,arguments:"",call_id:e,name:a.funcNames[d]||""}})),a.funcArgsBuf[d]||(a.funcArgsBuf[d]=""),c.function?.arguments){let f=a.funcCallIds[d]||e;f&&b("response.function_call_arguments.delta",{type:"response.function_call_arguments.delta",item_id:`fc_${f}`,output_index:d,delta:c.function.arguments}),a.funcArgsBuf[d]+=c.function.arguments}}(b,e,a);if(f.finish_reason){for(let a in b.msgItemAdded)n(b,e,a);for(let a in m(b,e),b.funcCallIds)o(b,e,a);p(b,e)}return d}),(0,d.kz)(e.h.OPENAI_RESPONSES,e.h.OPENAI,null,r)},2887:(a,b,c)=>{"use strict";let{iteratorMixin:d}=c(42425),{kEnumerableProperty:e}=c(84285),{webidl:f}=c(32984),g=c(57975),{runtimeFeatures:h}=c(56758),i=h.has("crypto")?c(77598).randomInt:a=>Math.floor(Math.random()*a);class j{#a=[];#b=null;constructor(a){if(f.util.markAsUncloneable(this),void 0!==a)throw f.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]})}append(a,b,c){f.brandCheck(this,j);let d="FormData.append";f.argumentLengthCheck(arguments,2,d),a=f.converters.USVString(a),3==arguments.length||f.is.Blob(b)?(b=f.converters.Blob(b,d,"value"),void 0!==c&&(c=f.converters.USVString(c))):b=f.converters.USVString(b);let e=n(a,b,c);this.#a.push(e)}delete(a){f.brandCheck(this,j),f.argumentLengthCheck(arguments,1,"FormData.delete"),a=f.converters.USVString(a),this.#a=this.#a.filter(b=>b.name!==a)}get(a){f.brandCheck(this,j),f.argumentLengthCheck(arguments,1,"FormData.get"),a=f.converters.USVString(a);let b=this.#a.findIndex(b=>b.name===a);return -1===b?null:this.#a[b].value}getAll(a){return f.brandCheck(this,j),f.argumentLengthCheck(arguments,1,"FormData.getAll"),a=f.converters.USVString(a),this.#a.filter(b=>b.name===a).map(a=>a.value)}has(a){return f.brandCheck(this,j),f.argumentLengthCheck(arguments,1,"FormData.has"),a=f.converters.USVString(a),-1!==this.#a.findIndex(b=>b.name===a)}set(a,b,c){f.brandCheck(this,j);let d="FormData.set";f.argumentLengthCheck(arguments,2,d),a=f.converters.USVString(a),3==arguments.length||f.is.Blob(b)?(b=f.converters.Blob(b,d,"value"),void 0!==c&&(c=f.converters.USVString(c))):b=f.converters.USVString(b);let e=n(a,b,c),g=this.#a.findIndex(b=>b.name===a);-1!==g?this.#a=[...this.#a.slice(0,g),e,...this.#a.slice(g+1).filter(b=>b.name!==a)]:this.#a.push(e)}[g.inspect.custom](a,b){let c=this.#a.reduce((a,b)=>(a[b.name]?Array.isArray(a[b.name])?a[b.name].push(b.value):a[b.name]=[a[b.name],b.value]:a[b.name]=b.value,a),{__proto__:null});b.depth??=a,b.colors??=!0;let d=g.formatWithOptions(b,c);return`FormData ${d.slice(d.indexOf("]")+2)}`}static getFormDataState(a){return a.#a}static setFormDataState(a,b){a.#a=b}static getFormDataBoundary(a){let b=a.#b;return null!=b?b:a.#b=`----formdata-undici-0${`${i(1e11)}`.padStart(11,"0")}`}}let{getFormDataState:k,setFormDataState:l,getFormDataBoundary:m}=j;function n(a,b,c){if("string"==typeof b);else if(f.is.File(b)||(b=new File([b],"blob",{type:b.type})),void 0!==c){let a={type:b.type,lastModified:b.lastModified};b=new File([b],c,a)}return{name:a,value:b}}Reflect.deleteProperty(j,"getFormDataState"),Reflect.deleteProperty(j,"setFormDataState"),Reflect.deleteProperty(j,"getFormDataBoundary"),d("FormData",j,k,"name","value"),Object.defineProperties(j.prototype,{append:e,delete:e,get:e,getAll:e,has:e,set:e,[Symbol.toStringTag]:{value:"FormData",configurable:!0}}),f.is.FormData=f.util.MakeTypeAssertion(j),a.exports={FormData:j,makeEntry:n,setFormDataState:l,getFormDataBoundary:m}},3721:(a,b,c)=>{"use strict";let{exec:d,spawn:e,execSync:f}=c(79646),g=c(33873),h=c(29021),i=c(21820),j=c(91645),k=c(55591),l=c(55511),{addDNSEntry:m,removeDNSEntry:n,removeAllDNSEntries:o,removeAllDNSEntriesSync:p,checkAllDNSStatus:q,TOOL_HOSTS:r,isSudoAvailable:s,isSudoPasswordRequired:t}=c(81283),{isAdmin:u}=c(11380),v="win32"===process.platform,w="darwin"===process.platform,{generateCert:x}=c(76540),{installCert:y,uninstallCert:z}=c(94442),{isCertExpired:A}=c(1653),{DATA_DIR:B,MITM_DIR:C}=c(37436),{log:D,err:E}=c(86772),{LSOF_BIN:F}=c(794),G="http://localhost:20128";function H(a){return null==a||""===a?"''":`'${String(a).replace(/'/g,"'\\''")}'`}async function I(){if(!_)return G;try{let a=await _(),b=a&&null!=a.mitmRouterBaseUrl?String(a.mitmRouterBaseUrl).trim():"";if(!b)return G;let c=new URL(b);if("http:"!==c.protocol&&"https:"!==c.protocol)return G;return b.replace(/\/+$/,"")}catch{return G}}let J=g.join(C,".mitm.pid"),K=g.join(C,".mitm.lock"),L=[5e3,1e4,2e4,3e4,6e4],M=0,N=0,O=!1;function P(){if(process.env.MITM_SERVER_PATH)return process.env.MITM_SERVER_PATH;let a=g.join(__dirname,"server.js");if(h.existsSync(a))return a;let b=g.join(process.cwd(),"src","mitm","server.js");if(h.existsSync(b))return b;let c=g.join(process.cwd(),"..","src","mitm","server.js");return h.existsSync(c)?c:b}function Q(a){try{if(!a||!h.existsSync(a)||!a.includes(`${g.sep}node_modules${g.sep}`))return a;let b=g.join(B,"runtime","mitm"),c=g.join(b,"server.js");if(h.existsSync(c))try{if(h.statSync(a).size===h.statSync(c).size)return c}catch{}return h.mkdirSync(b,{recursive:!0}),h.copyFileSync(a,c),c}catch(b){try{D(`[MITM] runtime copy failed: ${b.message}`)}catch{}return a}}let R=Q(P()),S="aes-256-gcm",T="switchboard-mitm-pwd",U=null,V=null;function W(){return globalThis.__mitmSudoPassword||null}function X(a){globalThis.__mitmSudoPassword=a}function Y(a){try{return process.kill(a,0),!0}catch(a){return"EACCES"===a.code}}function Z(a,b=!1,e=null){if(v)d(`taskkill ${b?"/F ":""}/PID ${a}`,{windowsHide:!0},()=>{});else{let f=b?"SIGKILL":"SIGTERM",g=`pkill -${f} -P ${a} 2>/dev/null; kill -${f} ${a} 2>/dev/null`;if(e||s()){let{execWithPassword:a}=c(81283);a(g,e||"").catch(()=>d(g,{windowsHide:!0},()=>{}))}else d(g,{windowsHide:!0},()=>{})}}function $(){try{let{machineIdSync:a}=c(39852),b=a();return l.createHash("sha256").update(b+T).digest()}catch{return l.createHash("sha256").update(T).digest()}}let _=null,aa=null;async function ab(a,b){if(aa)try{let c,d,e,f,g,h={mitmEnabled:a};b&&(c=$(),d=l.randomBytes(12),e=l.createCipheriv(S,c,d),f=Buffer.concat([e.update(b,"utf8"),e.final()]),g=e.getAuthTag(),h.mitmSudoEncrypted=`${d.toString("hex")}:${g.toString("hex")}:${f.toString("hex")}`),await aa(h)}catch(a){E(`Failed to save settings: ${a.message}`)}}async function ac(){if(aa)try{await aa({mitmSudoEncrypted:null})}catch(a){E(`Failed to clear encrypted password: ${a.message}`)}}async function ad(){if(!_)return null;try{let a=await _();if(!a.mitmSudoEncrypted)return null;return function(a){try{let[b,c,d]=a.split(":");if(!b||!c||!d)return null;let e=$(),f=l.createDecipheriv(S,e,Buffer.from(b,"hex"));return f.setAuthTag(Buffer.from(c,"hex")),f.update(Buffer.from(d,"hex"))+f.final("utf8")}catch{return null}}(a.mitmSudoEncrypted)}catch{return null}}async function ae(a,b){if(aa&&_)try{let c={...(await _()).dnsToolEnabled||{},[a]:b};await aa({dnsToolEnabled:c})}catch(a){E(`Failed to save DNS state: ${a.message}`)}}async function af(){if(!_)return{};try{return(await _()).dnsToolEnabled||{}}catch{return{}}}async function ag(a){let b=await af(),c=a||W()||await ad();for(let[a,d]of Object.entries(b))if(d&&r[a])try{await m(a,c)}catch(b){E(`DNS ${a}: restore failed — ${b.message}`)}}async function ah(){return v?u():!(!u()&&t())||!!(W()||await ad())}function ai(a){return new Promise(a=>{v?d('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{windowsHide:!0},(b,c)=>{if(b)return a(null);let e=parseInt(c.trim(),10);if(!e||e<=4)return a(null);d(`tasklist /FI "PID eq ${e}" /FO CSV /NH`,{windowsHide:!0},(b,c)=>{let d=c?.match(/"([^"]+)"/);a({pid:e,name:d?d[1]:"unknown"})})}):d(`${F} -nP -iTCP:443 -sTCP:LISTEN -t`,{windowsHide:!0},(b,c)=>{if(b||!c?.trim())return a(null);let e=parseInt(c.trim().split("\n")[0],10);if(!e||isNaN(e))return a(null);d(`ps -p ${e} -o comm=`,{windowsHide:!0},(b,c)=>{a({pid:e,name:c?.trim()||"unknown"})})})})}async function aj(a){if(U&&!U.killed){try{U.kill("SIGKILL")}catch{}U=null,V=null}try{if(h.existsSync(J)){let b=parseInt(h.readFileSync(J,"utf-8").trim(),10);b&&Y(b)&&(Z(b,!0,a),await new Promise(a=>setTimeout(a,500))),h.unlinkSync(J)}}catch{}if(!v&&R)try{let b=H(R);if(a||s()){let{execWithPassword:d}=c(81283);await d(`pkill -SIGKILL -f ${b} 2>/dev/null || true`,a||"").catch(()=>{})}else d(`pkill -SIGKILL -f ${b} 2>/dev/null || true`,{windowsHide:!0},()=>{});await new Promise(a=>setTimeout(a,500))}catch{}}function ak(a,b=443){return new Promise(c=>{let d=Date.now()+a,e=()=>{let a=k.request({hostname:"127.0.0.1",port:b,path:"/_mitm_health",method:"GET",rejectUnauthorized:!1,timeout:2e3},a=>{let b="";a.on("data",a=>{b+=a}),a.on("end",()=>{try{let a=JSON.parse(b);c(!0===a.ok?{ok:!0,pid:a.pid||null}:null)}catch{c(null)}})});a.on("timeout",()=>a.destroy(Error("health check timed out"))),a.on("error",()=>{Date.now()<d?setTimeout(e,500):c(null)}),a.end()};e()})}async function al(){let a=null!==U&&!U.killed,b=V;if(!a)try{if(h.existsSync(J)){let c=parseInt(h.readFileSync(J,"utf-8").trim(),10);c&&Y(c)?(a=!0,b=c):h.unlinkSync(J)}}catch{}let d=q(),e=g.join(C,"rootCA.crt"),f=h.existsSync(e),{checkCertInstalled:i}=c(94442),j=!!f&&await i(e);return{running:a,pid:b,certExists:f,certTrusted:j,dnsStatus:d}}async function am(a){if(O)return;if(O=!0,Date.now()-N>=6e4&&(M=0),M>=5){E("Max restart attempts reached. Giving up."),O=!1;return}let b=L[Math.min(M,L.length-1)];M++,D(`Restarting in ${b/1e3}s... (${M}/5)`),await new Promise(a=>setTimeout(a,b));try{let b=_?await _():null;if(b&&!b.mitmEnabled){D("MITM disabled, skipping restart"),O=!1;return}let c=W()||await ad();if(!c&&!v){E("No cached password, cannot auto-restart"),O=!1;return}await ao(a,c),D("\uD83D\uDD04 Restarted successfully"),M=0,O=!1}catch(b){E(`Restart attempt ${M}/5 failed: ${b.message}`),O=!1,am(a)}}async function an(a,b){if(a&&a.pid){if(v)try{f(`powershell -NonInteractive -WindowStyle Hidden -Command "Stop-Process -Id ${a.pid} -Force -ErrorAction SilentlyContinue"`,{windowsHide:!0})}catch{}else try{let{execWithPassword:d}=c(81283);b||s()?await d(`kill -9 ${a.pid}`,b||""):f(`kill -9 ${a.pid}`,{windowsHide:!0})}catch{}await new Promise(a=>setTimeout(a,800))}}async function ao(a,b,k=!1){if(!U||U.killed)try{if(h.existsSync(J)){let a=parseInt(h.readFileSync(J,"utf-8").trim(),10);if(a&&Y(a))return V=a,D(`♻️ Reusing existing process (PID: ${a})`),await ab(!0,b),b&&X(b),{running:!0,pid:a};h.unlinkSync(J)}}catch{}if(U&&!U.killed)throw Error("MITM server is already running");try{h.writeFileSync(K,String(process.pid),{flag:"wx"})}catch(a){if("EEXIST"===a.code){let a=!1;try{let b=parseInt(h.readFileSync(K,"utf-8").trim(),10);a=!b||!Y(b)}catch{a=!0}if(!a)throw Error("MITM server is already starting (lock contention)");try{h.unlinkSync(K)}catch{}h.writeFileSync(K,String(process.pid),{flag:"wx"})}else throw a}try{if(await aj(b),!v){let a=await new Promise(a=>{let b=j.createServer();b.once("error",b=>{"EADDRINUSE"===b.code?a("in-use"):a("no-permission")}),b.once("listening",()=>{b.close(()=>a("free"))}),b.listen(443,"127.0.0.1")});if("in-use"===a||"no-permission"===a){let a=await ai(b);if(a){let c=a.name.includes("/")?a.name.split("/").filter(Boolean).pop():a.name;if(k)D(`Killing process on port 443 (PID ${a.pid}, name=${c})...`),await an(a,b);else{let b=Error(`Port 443 is already in use by "${c}" (PID ${a.pid}).`);throw b.code="PORT_443_BUSY",b.portOwner={pid:a.pid,name:c},b}}}}let l=g.join(C,"rootCA.crt"),m=g.join(C,"rootCA.key"),n=h.existsSync(l)&&h.existsSync(m);if(!n||A(l)){if(n){D("\uD83D\uDD10 Cert expired — uninstalling old cert...");let a=b||W()||await ad();try{await z(a,l)}catch{}}D("\uD83D\uDD10 Generating Root CA..."),await x()}let{checkCertInstalled:o}=c(94442),p=await o(l),r=!v&&!w&&!s();if(p)D("\uD83D\uDD10 Cert: already trusted ✅");else{D("\uD83D\uDD10 Cert: not trusted → installing...");let a=b||W()||await ad();if(r)D(`🔐 Cert: skipping system trust (no sudo). Install ${l} as a trusted CA on machines that use this proxy.`);else{if(!a&&t())throw Error("Sudo password required to install Root CA certificate");try{await y(a,l),D("\uD83D\uDD10 Cert: ✅ trusted")}catch(a){throw Error(`Failed to trust certificate: ${a.message}`)}}}let u=R;if((!u||!h.existsSync(u))&&(D(`[MITM] server.js missing at ${u} → recopying`),!(u=Q(P()))||!h.existsSync(u)))throw Error(`MITM server.js not found at ${u}. Reinstall switchboard.`);let B=await I();if(D(`🚀 Starting server... (router: ${B})`),v){let c=await ai(b);if(c)if(k)D(`Killing process on port 443 (PID ${c.pid}, name=${c.name})...`),await an(c,b);else{let a=Error(`Port 443 is already in use by "${c.name}" (PID ${c.pid}).`);throw a.code="PORT_443_BUSY",a.portOwner={pid:c.pid,name:c.name},a}U=e(process.execPath,[u],{detached:!1,windowsHide:!0,cwd:i.tmpdir(),stdio:["ignore","pipe","pipe"],env:{...process.env,ROUTER_API_KEY:a,NODE_ENV:"production",MITM_ROUTER_BASE:B}}),aa&&await aa({mitmCertInstalled:!0}).catch(()=>{})}else if(s()){let c=[`HOME=${H(i.homedir())}`,`ROUTER_API_KEY=${H(a)}`,`MITM_ROUTER_BASE=${H(B)}`,"NODE_ENV=production",H(process.execPath),H(u)].join(" ");U=e("sudo",["-S","-E","sh","-c",c],{detached:!1,windowsHide:!0,stdio:["pipe","pipe","pipe"]}),b&&U.stdin.write(`${b}
|
|
2
|
+
`),U.stdin.end()}else U=e(process.execPath,[u],{detached:!1,windowsHide:!0,cwd:i.tmpdir(),stdio:["ignore","pipe","pipe"],env:{...process.env,ROUTER_API_KEY:a,NODE_ENV:"production",MITM_ROUTER_BASE:B}});if(U&&(V=U.pid,h.writeFileSync(J,String(V)),N=Date.now()),w){let a=g.join(C,"rootCA.crt");h.existsSync(a)&&d(`launchctl setenv NODE_EXTRA_CA_CERTS "${a}"`,{windowsHide:!0},b=>{b?D(`[launchctl] Failed to set NODE_EXTRA_CA_CERTS: ${b.message}`):D(`[launchctl] NODE_EXTRA_CA_CERTS set to ${a}`)})}else if(v){let a=g.join(C,"rootCA.crt");h.existsSync(a)&&d(`setx NODE_EXTRA_CA_CERTS "${a}"`,{windowsHide:!0},a=>{a?D(`[setx] Failed to set NODE_EXTRA_CA_CERTS: ${a.message}`):D("[setx] NODE_EXTRA_CA_CERTS set for current user")})}let G=null;U&&(U.stdout.on("data",a=>{process.stdout.write(a)}),U.stderr.on("data",a=>{let b=a.toString().trim();b&&(v||!b.includes("Password:")&&!b.includes("password for"))&&(E(b),G=b),!v&&(b.includes("incorrect password")||b.includes("no password was provided"))&&(X(null),ac(),O=!0)}),U.on("exit",b=>{D(`Server exited (code: ${b})`),U=null,V=null;try{h.unlinkSync(J)}catch{}try{h.unlinkSync(K)}catch{}0===b||O||am(a)}));let L=await ak(8e3,443);if(!L){if(U&&!U.killed){try{U.kill()}catch{}U=null}let a=function(){try{if(v){let a=f('powershell -NonInteractive -WindowStyle Hidden -Command "$c = Get-NetTCPConnection -LocalPort 443 -State Listen -ErrorAction SilentlyContinue | Select-Object -First 1; if ($c) { $c.OwningProcess } else { 0 }"',{encoding:"utf8",windowsHide:!0}).trim(),b=parseInt(a,10);if(b&&b>4){let a=f(`tasklist /FI "PID eq ${b}" /FO CSV /NH`,{encoding:"utf8",windowsHide:!0}).match(/"([^"]+)"/);if(a)return a[1].replace(".exe","")}}else{let a=f(`${F} -i :443`,{encoding:"utf8",windowsHide:!0}).trim().split("\n");if(a.length>1)return a[1].split(/\s+/)[0]}}catch{}return null}(),b=a?` Port 443 already in use by ${a}.`:"",c=G||`Check sudo password or port 443 access.${b}`;throw Error(`MITM server failed to start. ${c}`)}aa&&await aa({mitmCertInstalled:!0}).catch(()=>{}),D(`✅ Server healthy (PID: ${V||L.pid})`);let M=q();for(let[a,b]of Object.entries(M))D(`🌐 DNS ${a}: ${b?"✅ active":"❌ inactive"}`);await ab(!0,b),b&&X(b);try{h.unlinkSync(K)}catch{}return{running:!0,pid:V}}catch(a){try{h.unlinkSync(K)}catch{}throw a}}async function ap(a){O=!0,M=0,D("⏹ Stopping server...");let b=U,e=b&&!b.killed?b.pid:(()=>{try{return parseInt(h.readFileSync(J,"utf-8").trim(),10)}catch{return null}})();if(e&&Y(e)&&(D(`Killing server (PID: ${e})...`),Z(e,!1,a),await new Promise(a=>setTimeout(a,1e3)),Y(e)&&Z(e,!0,a)),U=null,V=null,v){let a=g.join(process.env.SystemRoot||"C:\\Windows","System32","drivers","etc","hosts"),b=Object.values(r).flat();try{let{isAdmin:d,runElevatedPowerShell:e,quotePs:f}=c(11380);if(d()){let d=h.readFileSync(a,"utf8"),e=d.split(/\r?\n/).filter(a=>!b.some(b=>a.includes(b))).join("\r\n").replace(/[\r\n\s]+$/g,"")+"\r\n";e!==d&&h.writeFileSync(a,e,"utf8");try{c(79646).execSync("ipconfig /flushdns",{windowsHide:!0,stdio:"ignore"})}catch{}D("\uD83C\uDF10 DNS: ✅ all tool hosts removed")}else{let c=b.map(f).join(","),d=`
|
|
3
|
+
$hosts = @(${c})
|
|
4
|
+
$lines = Get-Content -LiteralPath ${f(a)}
|
|
5
|
+
$filtered = $lines | Where-Object {
|
|
6
|
+
$line = $_
|
|
7
|
+
-not ($hosts | Where-Object { $line -match [regex]::Escape($_) })
|
|
8
|
+
}
|
|
9
|
+
Set-Content -LiteralPath ${f(a)} -Value $filtered
|
|
10
|
+
ipconfig /flushdns | Out-Null
|
|
11
|
+
`;await e(d)}}catch(a){E(`Failed to clean hosts: ${a.message}`)}}else await o(a);w?d("launchctl unsetenv NODE_EXTRA_CA_CERTS",{windowsHide:!0},a=>{a?D(`[launchctl] Failed to unset NODE_EXTRA_CA_CERTS: ${a.message}`):D("[launchctl] NODE_EXTRA_CA_CERTS unset")}):v&&d("reg delete HKCU\\Environment /F /V NODE_EXTRA_CA_CERTS",{windowsHide:!0},a=>{a?D(`[reg] Failed to unset NODE_EXTRA_CA_CERTS: ${a.message}`):D("[reg] NODE_EXTRA_CA_CERTS unset")});try{h.unlinkSync(J)}catch{}try{h.unlinkSync(K)}catch{}return await ab(!1,null),O=!1,{running:!1,pid:null}}async function aq(a,b){if(!(await al()).running)throw Error("MITM server is not running. Start the server first.");let c=b||W()||await ad();return await m(a,c),await ae(a,!0),{success:!0}}a.exports={pollMitmHealth:ak,getMitmStatus:al,startServer:ao,stopServer:ap,enableToolDNS:aq,disableToolDNS:async function a(a,b){let c=b||W()||await ad();return await n(a,c),await ae(a,!1),{success:!0}},trustCert:async function a(a){let b=g.join(C,"rootCA.crt");if(!h.existsSync(b))throw Error("Root CA not found. Start server first to generate it.");let{installCert:d}=c(94442);if(!v&&!w&&!s())return void D(`🔐 Cert: system trust unavailable (no sudo). Use file: ${b}`);let e=a||W()||await ad();if(!e&&t())throw Error("Sudo password required to trust certificate");await d(e,b),e&&X(e)},startMitm:ao,stopMitm:ap,getCachedPassword:W,setCachedPassword:X,loadEncryptedPassword:ad,clearEncryptedPassword:ac,isSudoPasswordRequired:t,initDbHooks:function(a,b){_=a,aa=b},restoreToolDNS:ag,hasDnsPrivilege:ah,removeAllDNSEntriesSync:p}},4554:(a,b,c)=>{var d=c(45654);c(1277),c(33889);var e=a.exports=d.sha1=d.sha1||{};d.md.sha1=d.md.algorithms.sha1=e,e.create=function(){g||(f=String.fromCharCode(128)+d.util.fillString("\0",64),g=!0);var a=null,b=d.util.createBuffer(),c=Array(80),e={algorithm:"sha1",blockLength:64,digestLength:20,messageLength:0,fullMessageLength:null,messageLengthSize:8};return e.start=function(){e.messageLength=0,e.fullMessageLength=e.messageLength64=[];for(var c=e.messageLengthSize/4,f=0;f<c;++f)e.fullMessageLength.push(0);return b=d.util.createBuffer(),a={h0:0x67452301,h1:0xefcdab89,h2:0x98badcfe,h3:0x10325476,h4:0xc3d2e1f0},e},e.start(),e.update=function(f,g){"utf8"===g&&(f=d.util.encodeUtf8(f));var i=f.length;e.messageLength+=i,i=[i/0x100000000>>>0,i>>>0];for(var j=e.fullMessageLength.length-1;j>=0;--j)e.fullMessageLength[j]+=i[1],i[1]=i[0]+(e.fullMessageLength[j]/0x100000000>>>0),e.fullMessageLength[j]=e.fullMessageLength[j]>>>0,i[0]=i[1]/0x100000000>>>0;return b.putBytes(f),h(a,c,b),(b.read>2048||0===b.length())&&b.compact(),e},e.digest=function(){var g,i=d.util.createBuffer();i.putBytes(b.bytes());var j=e.fullMessageLength[e.fullMessageLength.length-1]+e.messageLengthSize&e.blockLength-1;i.putBytes(f.substr(0,e.blockLength-j));for(var k=8*e.fullMessageLength[0],l=0;l<e.fullMessageLength.length-1;++l)k+=(g=8*e.fullMessageLength[l+1])/0x100000000>>>0,i.putInt32(k>>>0),k=g>>>0;i.putInt32(k);var m={h0:a.h0,h1:a.h1,h2:a.h2,h3:a.h3,h4:a.h4};h(m,c,i);var n=d.util.createBuffer();return n.putInt32(m.h0),n.putInt32(m.h1),n.putInt32(m.h2),n.putInt32(m.h3),n.putInt32(m.h4),n},e};var f=null,g=!1;function h(a,b,c){for(var d,e,f,g,h,i,j,k,l=c.length();l>=64;){for(k=0,e=a.h0,f=a.h1,g=a.h2,h=a.h3,i=a.h4;k<16;++k)d=c.getInt32(),b[k]=d,d=(e<<5|e>>>27)+(h^f&(g^h))+i+0x5a827999+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;for(;k<20;++k)d=(d=b[k-3]^b[k-8]^b[k-14]^b[k-16])<<1|d>>>31,b[k]=d,d=(e<<5|e>>>27)+(h^f&(g^h))+i+0x5a827999+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;for(;k<32;++k)d=(d=b[k-3]^b[k-8]^b[k-14]^b[k-16])<<1|d>>>31,b[k]=d,d=(e<<5|e>>>27)+(f^g^h)+i+0x6ed9eba1+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;for(;k<40;++k)d=(d=b[k-6]^b[k-16]^b[k-28]^b[k-32])<<2|d>>>30,b[k]=d,d=(e<<5|e>>>27)+(f^g^h)+i+0x6ed9eba1+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;for(;k<60;++k)d=(d=b[k-6]^b[k-16]^b[k-28]^b[k-32])<<2|d>>>30,b[k]=d,d=(e<<5|e>>>27)+(f&g|h&(f^g))+i+0x8f1bbcdc+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;for(;k<80;++k)d=(d=b[k-6]^b[k-16]^b[k-28]^b[k-32])<<2|d>>>30,b[k]=d,d=(e<<5|e>>>27)+(f^g^h)+i+0xca62c1d6+d,i=h,h=g,g=(f<<30|f>>>2)>>>0,f=e,e=d;a.h0=a.h0+e|0,a.h1=a.h1+f|0,a.h2=a.h2+g|0,a.h3=a.h3+h|0,a.h4=a.h4+i|0,l-=64}}},4620:(a,b,c)=>{"use strict";c.d(b,{x:()=>p});var d=c(93048),e=c(38421),f=c(10793),g=c(82689),h=c(89666),i=c(2670),j=c(87350),k=c(18101),l=c(26762),m=c(29137),n=c(19016),o=c(55511);class p extends d.Hv{constructor(){super("github",e.xq.github),this.knownCodexModels=new Set}buildUrl(a,b,c=0){return this.config.baseUrl}buildHeaders(a,b=!0){let c=a.copilotToken||a.accessToken;return{Authorization:`Bearer ${c}`,"Content-Type":"application/json","copilot-integration-id":"vscode-chat","editor-version":`vscode/${f.x0.VSCODE_VERSION}`,"editor-plugin-version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,"user-agent":f.x0.USER_AGENT,"openai-intent":"conversation-panel","x-github-api-version":f.x0.API_VERSION,"x-request-id":o.randomUUID?.()||`${Date.now()}-${Math.random().toString(36).slice(2)}`,"x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:b?"text/event-stream":"application/json"}}sanitizeMessagesForChatCompletions(a){if(!a?.messages)return a;let b={...a};if(a.response_format&&a.model?.includes("claude")){let b=a.response_format,c="";if("json_schema"===b.type&&b.json_schema?.schema?c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks. Never wrap JSON in triple backticks. Output ONLY the raw JSON object.":"json_object"===b.type&&(c="CRITICAL: You must ONLY output raw JSON. Never use markdown code blocks. Never use backticks."),c){let b=a.messages.findIndex(a=>"system"===a.role);b>=0?a.messages[b].content=c+"\n\n"+a.messages[b].content:a.messages.unshift({role:"system",content:c});let d=a.messages.map((a,b)=>"user"===a.role?b:-1).filter(a=>a>=0).pop();if(d>=0){let b=a.messages[d],c="string"==typeof b.content?b.content:JSON.stringify(b.content);b.content="Respond with ONLY raw JSON (no markdown, no backticks, no code blocks): "+c}}}return b.messages=a.messages.map(a=>{if(!a.content||"string"==typeof a.content)return a;if(Array.isArray(a.content)){let b=a.content.map(a=>{if("text"===a.type||"image_url"===a.type)return a;let b=a.text||a.content||JSON.stringify(a);return{type:"text",text:"string"==typeof b?b:JSON.stringify(b)}}).filter(a=>""!==a.text);return{...a,content:b.length>0?b:null}}return a}),b}requiresMaxCompletionTokens(a){return/gpt-5|o[134]-/i.test(a)}transformRequest(a,b,c,d){super.transformRequest(a,b,c,d);let e=b&&"object"==typeof b?b:{...b};return this.requiresMaxCompletionTokens(a)&&void 0!==e.max_tokens&&(e.max_completion_tokens=e.max_tokens,delete e.max_tokens),"none"===e.reasoning_effort&&delete e.reasoning_effort,(0,m.c)("github",a,e),e}supportsResponsesEndpoint(a){let b=(a||"").toLowerCase();return!(b.includes("gemini")||b.includes("claude"))}async execute(a){let{model:b,log:c}=a;if(this.knownCodexModels.has(b)&&this.supportsResponsesEndpoint(b))return c?.debug("GITHUB",`Using cached /responses route for ${b}`),this.executeWithResponsesEndpoint(a);let d={...a,body:this.sanitizeMessagesForChatCompletions(a.body)},e=await super.execute({...d,proxyOptions:a.proxyOptions||null});if(e.response.status===g.gx.BAD_REQUEST&&this.supportsResponsesEndpoint(b)){let d=await e.response.clone().text();if(d.includes("not accessible via the /chat/completions endpoint")||d.includes("The requested model is not supported"))return c?.warn("GITHUB",`Model ${b} requires /responses. Switching...`),this.knownCodexModels.add(b),this.executeWithResponsesEndpoint(a)}return e}async executeWithResponsesEndpoint({model:a,body:b,stream:d,credentials:e,signal:f,log:g,proxyOptions:m=null}){let o=this.config.responsesUrl,p=this.buildHeaders(e,d),q=(0,h.h)(a,b,d,e);g?.debug("GITHUB","Sending translated request to /responses");let r=await (0,l.Fm)(o,{method:"POST",headers:p,body:JSON.stringify(q),signal:f},m);if(!r.ok)return{response:r,url:o,headers:p,transformedBody:q};if(!d&&r.body)try{let{convertResponsesStreamToJson:b}=await Promise.resolve().then(c.bind(c,82703)),d=await b(r.body),e=function(a,b){let c=Array.isArray(a?.output)?a.output:[],d="",e=[];for(let a of c){if(a?.type==="message"&&Array.isArray(a.content))for(let b of a.content)b?.type==="output_text"&&"string"==typeof b.text?d+=b.text:"string"==typeof b?.text&&(d+=b.text);a?.type==="function_call"&&e.push({id:a.call_id||`call_${a.name}_${e.length}`,type:"function",function:{name:a.name,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments||{})}})}let f={role:"assistant",content:d||(e.length?null:"")};e.length&&(f.tool_calls=e);let g=a?.usage||{};return{id:a?.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:a?.created_at||Math.floor(Date.now()/1e3),model:a?.model||b,choices:[{index:0,message:f,finish_reason:e.length?"tool_calls":"stop"}],usage:{prompt_tokens:g.input_tokens||0,completion_tokens:g.output_tokens||0,total_tokens:(g.input_tokens||0)+(g.output_tokens||0)}}}(d,a);return{response:new Response(JSON.stringify(e),{status:200,headers:{"Content-Type":"application/json"}}),url:o,headers:p,transformedBody:q}}catch(a){g?.warn?.("GITHUB",`non-stream responses aggregate failed: ${a.message}`)}let s=(0,j.Ws)("openai-responses");s.model=a;let t=new TextDecoder,u="",v=new TransformStream({async transform(a,b){let c=(u+=t.decode(a,{stream:!0})).split("\n");for(let a of(u=c.pop()||"",c)){let c=a.trim();if(!c)continue;let e=(0,k.tV)(c);if(!e)continue;if(e.done&&!0===d){b.enqueue(new TextEncoder().encode(n.$U));continue}let f=(0,i.v)(e,s);if(f){let a=(0,k.v8)(f,"openai");b.enqueue(new TextEncoder().encode(a))}}},flush(a){if(u.trim()){let b=(0,k.tV)(u.trim());if(b&&!b.done){let c=(0,i.v)(b,s);c&&a.enqueue(new TextEncoder().encode((0,k.v8)(c,"openai")))}}}});return r.body?{response:new Response(r.body.pipeThrough(v),{status:r.status,statusText:r.statusText,headers:r.headers}),url:o,headers:p,transformedBody:q}:{response:new Response("",{status:r.status,headers:r.headers}),url:o,headers:p,transformedBody:q}}async refreshCopilotToken(a,b,c=null){try{let d=await (0,l.Fm)("https://api.github.com/copilot_internal/v2/token",{headers:{Authorization:`token ${a}`,"User-Agent":f.x0.USER_AGENT,"Editor-Version":`vscode/${f.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":f.x0.API_VERSION}},c);if(!d.ok){let a=await d.text();return b?.error?.("TOKEN",`Copilot token refresh failed: ${d.status} ${a}`),null}let e=await d.json();return b?.info?.("TOKEN","Copilot token refreshed"),{token:e.token,expiresAt:e.expires_at}}catch(a){return b?.error?.("TOKEN",`Copilot refresh error: ${a.message}`),null}}async refreshGitHubToken(a,b,c=null){try{let d={grant_type:"refresh_token",refresh_token:a,client_id:this.config.clientId};this.config.clientSecret&&(d.client_secret=this.config.clientSecret);let e=await (0,l.Fm)(f.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(d)},c);if(!e.ok)return null;let g=await e.json();return b?.info?.("TOKEN","GitHub token refreshed"),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return b?.error?.("TOKEN",`GitHub refresh error: ${a.message}`),null}}async refreshCredentials(a,b,c=null){let d=await this.refreshCopilotToken(a.accessToken,b,c);if(!d&&a.refreshToken){let e=await this.refreshGitHubToken(a.refreshToken,b,c);if(e?.accessToken)return(d=await this.refreshCopilotToken(e.accessToken,b,c))?{...e,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:e}return d?{accessToken:a.accessToken,refreshToken:a.refreshToken,copilotToken:d.token,copilotTokenExpiresAt:d.expiresAt}:null}needsRefresh(a){if(!a.copilotToken)return!0;if(a.copilotTokenExpiresAt){let b=a.copilotTokenExpiresAt;if("number"==typeof b&&b<1e12?b*=1e3:"string"==typeof b&&(b=new Date(b).getTime()),!Number.isFinite(b)||b-Date.now()<3e5)return!0}return super.needsRefresh(a)}}},4654:(a,b,c)=>{"use strict";let{uid:d,states:e,sentCloseFrameState:f,emptyBuffer:g,opcodes:h}=c(62026),{parseExtensions:i,isClosed:j,isClosing:k,isEstablished:l,isConnecting:m,validateCloseCodeAndReason:n}=c(94050),{makeRequest:o}=c(12600),{fetching:p}=c(76403),{Headers:q,getHeadersList:r}=c(28665),{getDecodeSplit:s}=c(42425),{WebsocketFrameSend:t}=c(45221),u=c(34589),{runtimeFeatures:v}=c(56758),w=v.has("crypto")?c(77598):null,x=!1;function y(a,b,c,d=!1){if(b??=null,c??="",d&&n(b,c),j(a.readyState)||k(a.readyState));else if(l(a.readyState))if(a.closeState.has(f.SENT)||a.closeState.has(f.RECEIVED))a.readyState=e.CLOSING;else{let d=new t;0!==c.length&&null===b&&(b=1e3),u(null===b||Number.isInteger(b)),null===b&&0===c.length?d.frameData=g:null!==b&&null===c?(d.frameData=Buffer.allocUnsafe(2),d.frameData.writeUInt16BE(b,0)):null!==b&&null!==c?(d.frameData=Buffer.allocUnsafe(2+Buffer.byteLength(c)),d.frameData.writeUInt16BE(b,0),d.frameData.write(c,2,"utf-8")):d.frameData=g,a.socket.write(d.createFrame(h.CLOSE)),a.closeState.add(f.SENT),a.readyState=e.CLOSING}else z(a),a.readyState=e.CLOSING}function z(a,b,c,d){l(a.readyState)&&y(a,b,c,!1),a.controller.abort(),m(a.readyState)?a.onSocketClose():a.socket?.destroyed===!1&&a.socket.destroy()}a.exports={establishWebSocketConnection:function(a,b,c,e,f){a.protocol="ws:"===a.protocol?"http:":"https:";let g=o({urlList:[a],client:c,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error",useURLCredentials:!0});f.headers&&(g.headersList=r(new q(f.headers)));let h=w.randomBytes(16).toString("base64");for(let a of(g.headersList.append("sec-websocket-key",h,!0),g.headersList.append("sec-websocket-version","13",!0),b))g.headersList.append("sec-websocket-protocol",a,!0);return g.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits",!0),p({request:g,useParallelQueue:!0,dispatcher:f.dispatcher,processResponse(a){let c;if("error"===a.type||101!==a.status){if(a.socket?.session==null)return void z(e,1002,"Received network error or non-101 status code.",a.error);if(200!==a.status)return void z(e,1002,"Received network error or non-200 status code.",a.error)}if(!1===x&&a.socket?.session!=null&&(process.emitWarning("WebSocket over HTTP2 is experimental, and subject to change.","ExperimentalWarning"),x=!0),0!==b.length&&!a.headersList.get("Sec-WebSocket-Protocol"))return void z(e,1002,"Server did not respond with sent protocols.");if(null==a.socket.session&&a.headersList.get("Upgrade")?.toLowerCase()!=="websocket")return void z(e,1002,'Server did not set Upgrade header to "websocket".');if(null==a.socket.session&&a.headersList.get("Connection")?.toLowerCase()!=="upgrade")return void z(e,1002,'Server did not set Connection header to "upgrade".');if(a.headersList.get("Sec-WebSocket-Accept")!==w.hash("sha1",h+d,"base64"))return void z(e,1002,"Incorrect hash received in Sec-WebSocket-Accept header.");let f=a.headersList.get("Sec-WebSocket-Extensions");if(null!==f&&!(c=i(f)).has("permessage-deflate"))return void z(e,1002,"Sec-WebSocket-Extensions header does not match.");let j=a.headersList.get("Sec-WebSocket-Protocol");null===j||s("sec-websocket-protocol",g.headersList).includes(j)?(a.socket.on("data",e.onSocketData),a.socket.on("close",e.onSocketClose),a.socket.on("error",e.onSocketError),e.wasEverConnected=!0,e.onConnectionEstablished(a,c)):z(e,1002,"Protocol was not set in the opening handshake.")}})},failWebsocketConnection:z,closeWebSocketConnection:y}},4879:(a,b,c)=>{"use strict";c(82340);let d="Code blocks, file paths, commands, errors, URLs: keep exact. Security warnings, irreversible action confirmations, multi-step ordered sequences: write normal. Resume terse style after.",e='Not: "Sure! I\'d be happy to help you with that. The issue you\'re experiencing is likely caused by..." Yes: "Bug in auth middleware. Token expiry check use `<` not `<=`. Fix:"',f="Auto-Clarity: drop caveman for security warnings, irreversible actions, multi-step sequences where fragment ambiguity risks misread, or when user repeats a question. Resume after the clear part.",g="ACTIVE EVERY RESPONSE. No revert after many turns. No filler drift. Still active if unsure.",h="No invented abbreviations. Standard well-known tech acronyms (DB, API, HTTP, URL, JSON, ID, OS, CPU) OK. Names of code symbols, function names, API names, error strings: keep verbatim.",i="Preserve the user's dominant language. User wrote Vietnamese, reply Vietnamese. User wrote English, reply English. Wenyan/classical-Chinese levels override this language-preservation rule. Code identifiers, error strings, file paths, commands: keep in their original form regardless of language.",j='No self-reference. Do not name or announce the style (no "caveman mode", no "me caveman think", no "compressed mode active"). Just respond.',k='No decorative emoji. No narrating tool calls ("I will now search", "I used X to find Y"). No status phrases ("Sure!", "Of course!", "I\'d be happy to"). No causal arrow shorthand ("A -> B -> fails"). State the thing, the action, the reason. Then next step.';["Respond tersely. Keep grammar and full sentences but drop filler, hedging and pleasantries (just/really/basically/sure/of course/I'd be happy to). Pattern: state the thing, the action, the reason. Then next step.",e,d,f,g,h,i,j,k].join(" "),["Respond like terse caveman. All technical substance stay exact, only fluff die. Drop: articles (a/an/the), filler (just/really/basically/actually/simply), pleasantries, hedging. Fragments OK. Short synonyms (big not extensive, fix not implement a solution for). Pattern: [thing] [action] [reason]. [next step].",e,d,f,g,h,i,j,k].join(" "),["Respond ultra-terse. Maximum compression. Telegraphic. Strip conjunctions. One word when one word enough. Pattern: [thing] [action] [reason]. [next step].",e,d,f,g,h,i,j,k].join(" "),["Respond semi-classical. Drop filler/hedging but keep grammar structure, classical register. Use classical Chinese sentence patterns where natural. Keep English for technical terms.",e,d,f,g,h,i,j,k].join(" "),["Respond classical Chinese (文言文). Maximum classical terseness. 80-90% character reduction. Classical sentence patterns, verbs precede objects, subjects often omitted, classical particles (之/乃/為/其). Keep English for code, commands, function names, API names, error strings.",e,d,f,g,h,i,j,k].join(" "),["Respond extreme classical compression (文言文 ultra). Maximum compression, ultra terse. Same classical rules as wenyan-full but even more compressed. One classical particle per clause.",e,d,f,g,h,i,j,k].join(" ")},4890:(a,b,c)=>{var d=c(45654);c(33889);var e=null;!d.util.isNodejs||d.options.usePureJavaScript||process.versions["node-webkit"]||(e=c(55511)),(a.exports=d.prng=d.prng||{}).create=function(a){for(var b={plugin:a,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},c=a.md,f=Array(32),g=0;g<32;++g)f[g]=c.create();function h(){b.reseeds=0xffffffff===b.reseeds?0:b.reseeds+1;var a=b.plugin.md.create();a.update(b.keyBytes);for(var c=1,d=0;d<32;++d)b.reseeds%c==0&&(a.update(b.pools[d].digest().getBytes()),b.pools[d].start()),c<<=1;b.keyBytes=a.digest().getBytes(),a.start(),a.update(b.keyBytes);var e=a.digest().getBytes();b.key=b.plugin.formatKey(b.keyBytes),b.seed=b.plugin.formatSeed(e),b.generated=0}function i(a){var b=null,c=d.util.globalScope,e=c.crypto||c.msCrypto;e&&e.getRandomValues&&(b=function(a){return e.getRandomValues(a)});var f=d.util.createBuffer();if(b)for(;f.length()<a;){var g=new Uint32Array(Math.floor(Math.max(1,Math.min(a-f.length(),65536)/4)));try{b(g);for(var h=0;h<g.length;++h)f.putInt32(g[h])}catch(a){if(!("u">typeof QuotaExceededError&&a instanceof QuotaExceededError))throw a}}if(f.length()<a)for(var i,j,k,l=Math.floor(65536*Math.random());f.length()<a;){l=0|(j=(0x7fffffff&(j=16807*(65535&l)+(((32767&(i=16807*(l>>16)))<<16)+(i>>15))))+(j>>31));for(var h=0;h<3;++h)k=l>>>(h<<3)^Math.floor(256*Math.random()),f.putByte(255&k)}return f.getBytes(a)}return b.pools=f,b.pool=0,b.generate=function(a,c){if(!c)return b.generateSync(a);var e=b.plugin.cipher,f=b.plugin.increment,g=b.plugin.formatKey,i=b.plugin.formatSeed,j=d.util.createBuffer();b.key=null,function k(l){if(l)return c(l);if(j.length()>=a)return c(null,j.getBytes(a));if(b.generated>1048575&&(b.key=null),null===b.key)return d.util.nextTick(function(){!function(a){if(b.pools[0].messageLength>=32)return h(),a();var c=32-b.pools[0].messageLength<<5;b.seedFile(c,function(c,d){if(c)return a(c);b.collect(d),h(),a()})}(k)});var m=e(b.key,b.seed);b.generated+=m.length,j.putBytes(m),b.key=g(e(b.key,f(b.seed))),b.seed=i(e(b.key,b.seed)),d.util.setImmediate(k)}()},b.generateSync=function(a){var c=b.plugin.cipher,e=b.plugin.increment,f=b.plugin.formatKey,g=b.plugin.formatSeed;b.key=null;for(var i=d.util.createBuffer();i.length()<a;){b.generated>1048575&&(b.key=null),null===b.key&&function(){if(b.pools[0].messageLength>=32)return h();var a=32-b.pools[0].messageLength<<5;b.collect(b.seedFileSync(a)),h()}();var j=c(b.key,b.seed);b.generated+=j.length,i.putBytes(j),b.key=f(c(b.key,e(b.seed))),b.seed=g(c(b.key,b.seed))}return i.getBytes(a)},e?(b.seedFile=function(a,b){e.randomBytes(a,function(a,c){if(a)return b(a);b(null,c.toString())})},b.seedFileSync=function(a){return e.randomBytes(a).toString()}):(b.seedFile=function(a,b){try{b(null,i(a))}catch(a){b(a)}},b.seedFileSync=i),b.collect=function(a){for(var c=a.length,d=0;d<c;++d)b.pools[b.pool].update(a.substr(d,1)),b.pool=31===b.pool?0:b.pool+1},b.collectInt=function(a,c){for(var d="",e=0;e<c;e+=8)d+=String.fromCharCode(a>>e&255);b.collect(d)},b.registerWorker=function(a){a===self?b.seedFile=function(a,b){self.addEventListener("message",function a(c){var d=c.data;d.forge&&d.forge.prng&&(self.removeEventListener("message",a),b(d.forge.prng.err,d.forge.prng.bytes))}),self.postMessage({forge:{prng:{needed:a}}})}:a.addEventListener("message",function(c){var d=c.data;d.forge&&d.forge.prng&&b.seedFile(d.forge.prng.needed,function(b,c){a.postMessage({forge:{prng:{err:b,bytes:c}}})})})},b}},5019:(a,b,c)=>{a.exports=c(45654),c(45518),c(39804),c(63070),c(66568),c(88819),c(22164),c(76632),c(33206),c(31881),c(69445),c(41702),c(70710),c(49345),c(24985),c(15873),c(76103),c(94463),c(36902),c(4890),c(87981),c(29984),c(67382),c(28169),c(27080),c(33889)},5318:(a,b,c)=>{"use strict";let d=c(7344),{ClientDestroyedError:e,ClientClosedError:f,InvalidArgumentError:g}=c(61448),{kDestroy:h,kClose:i,kClosed:j,kDestroyed:k,kDispatch:l}=c(49176),m=Symbol("onDestroyed"),n=Symbol("onClosed"),o=Symbol("webSocketOptions");class p extends d{[k]=!1;[m]=null;[j]=!1;[n]=null;constructor(a){super(),this[o]=a?.webSocket??{}}get webSocketOptions(){return{maxFragments:this[o].maxFragments??131072,maxPayloadSize:this[o].maxPayloadSize??0x8000000}}get destroyed(){return this[k]}get closed(){return this[j]}close(a){if(void 0===a)return new Promise((a,b)=>{this.close((c,d)=>c?b(c):a(d))});if("function"!=typeof a)throw new g("invalid callback");if(this[k]){let b=new e;queueMicrotask(()=>a(b,null));return}if(this[j])return void(this[n]?this[n].push(a):queueMicrotask(()=>a(null,null)));this[j]=!0,this[n]??=[],this[n].push(a);let b=()=>{let a=this[n];this[n]=null;for(let b=0;b<a.length;b++)a[b](null,null)};this[i]().then(()=>this.destroy()).then(()=>queueMicrotask(b))}destroy(a,b){if("function"==typeof a&&(b=a,a=null),void 0===b)return new Promise((b,c)=>{this.destroy(a,(a,d)=>a?c(a):b(d))});if("function"!=typeof b)throw new g("invalid callback");if(this[k])return void(this[m]?this[m].push(b):queueMicrotask(()=>b(null,null)));a||(a=new e),this[k]=!0,this[m]??=[],this[m].push(b);let c=()=>{let a=this[m];this[m]=null;for(let b=0;b<a.length;b++)a[b](null,null)};this[h](a).then(()=>queueMicrotask(c))}dispatch(a,b){if(!b||"object"!=typeof b)throw new g("handler must be an object");try{if(!a||"object"!=typeof a)throw new g("opts must be an object.");if(a.dispatcher)throw new g("opts.dispatcher is not supported by instance methods. Pass opts.dispatcher to the top-level undici functions or call the dispatcher instance method directly.");if(this[k]||this[m])throw new e;if(this[j])throw new f;return this[l](a,b)}catch(a){if("function"!=typeof b.onResponseError)throw a;return b.onResponseError(null,a),!1}}}a.exports=p},5831:(a,b,c)=>{"use strict";let{collectASequenceOfCodePointsFast:d}=c(70745),{maxNameValuePairSize:e,maxAttributeValueSize:f}=c(29653),{isCTLExcludingHtab:g}=c(84698),h=c(34589);function i(a,b={}){if(0===a.length)return b;h(";"===a[0]);let c="";(a=a.slice(1)).includes(";")?(c=d(";",a,{position:0}),a=a.slice(c.length)):(c=a,a="");let e="",g="";if(c.includes("=")){let a={position:0};e=d("=",c,a),g=c.slice(a.position+1)}else e=c;if(e=e.trim(),(g=g.trim()).length>f)return i(a,b);let j=e.toLowerCase();if("expires"===j){let a=new Date(g);Number.isNaN(a.getTime())||(b.expires=a)}else if("max-age"===j){let c=g.charCodeAt(0);if((c<48||c>57)&&"-"!==g[0]||!/^\d+$/.test(g))return i(a,b);b.maxAge=Number(g)}else if("domain"===j){let a=g;"."===a[0]&&(a=a.slice(1)),b.domain=a=a.toLowerCase()}else if("path"===j)b.path=0===g.length||"/"!==g[0]?"/":g;else if("secure"===j)b.secure=!0;else if("httponly"===j)b.httpOnly=!0;else if("samesite"===j){let a=g.toLowerCase();"none"===a?b.sameSite="None":"strict"===a?b.sameSite="Strict":"lax"===a&&(b.sameSite="Lax")}else b.unparsed??=[],b.unparsed.push(`${e}=${g}`);return i(a,b)}a.exports={parseSetCookie:function(a){if(g(a))return null;let b="",c="",f="",h="";if(a.includes(";")){let e={position:0};b=d(";",a,e),c=a.slice(e.position)}else b=a;if(b.includes("=")){let a={position:0};f=d("=",b,a),h=b.slice(a.position+1)}else h=b;return(f=f.trim(),h=h.trim(),f.length+h.length>e)?null:{name:f,value:h,...i(c)}},parseUnparsedAttributes:i}},6125:(a,b,c)=>{"use strict";"u">typeof process&&process.versions?.node,"u">typeof process&&process.env?.ENABLE_REQUEST_LOGS},6680:(a,b,c)=>{var d=c(45654);c(1277),c(33889);var e=a.exports=d.sha256=d.sha256||{};d.md.sha256=d.md.algorithms.sha256=e,e.create=function(){g||(f=String.fromCharCode(128)+d.util.fillString("\0",64),h=[0x428a2f98,0x71374491,0xb5c0fbcf,0xe9b5dba5,0x3956c25b,0x59f111f1,0x923f82a4,0xab1c5ed5,0xd807aa98,0x12835b01,0x243185be,0x550c7dc3,0x72be5d74,0x80deb1fe,0x9bdc06a7,0xc19bf174,0xe49b69c1,0xefbe4786,0xfc19dc6,0x240ca1cc,0x2de92c6f,0x4a7484aa,0x5cb0a9dc,0x76f988da,0x983e5152,0xa831c66d,0xb00327c8,0xbf597fc7,0xc6e00bf3,0xd5a79147,0x6ca6351,0x14292967,0x27b70a85,0x2e1b2138,0x4d2c6dfc,0x53380d13,0x650a7354,0x766a0abb,0x81c2c92e,0x92722c85,0xa2bfe8a1,0xa81a664b,0xc24b8b70,0xc76c51a3,0xd192e819,0xd6990624,0xf40e3585,0x106aa070,0x19a4c116,0x1e376c08,0x2748774c,0x34b0bcb5,0x391c0cb3,0x4ed8aa4a,0x5b9cca4f,0x682e6ff3,0x748f82ee,0x78a5636f,0x84c87814,0x8cc70208,0x90befffa,0xa4506ceb,0xbef9a3f7,0xc67178f2],g=!0);var a=null,b=d.util.createBuffer(),c=Array(64),e={algorithm:"sha256",blockLength:64,digestLength:32,messageLength:0,fullMessageLength:null,messageLengthSize:8};return e.start=function(){e.messageLength=0,e.fullMessageLength=e.messageLength64=[];for(var c=e.messageLengthSize/4,f=0;f<c;++f)e.fullMessageLength.push(0);return b=d.util.createBuffer(),a={h0:0x6a09e667,h1:0xbb67ae85,h2:0x3c6ef372,h3:0xa54ff53a,h4:0x510e527f,h5:0x9b05688c,h6:0x1f83d9ab,h7:0x5be0cd19},e},e.start(),e.update=function(f,g){"utf8"===g&&(f=d.util.encodeUtf8(f));var h=f.length;e.messageLength+=h,h=[h/0x100000000>>>0,h>>>0];for(var j=e.fullMessageLength.length-1;j>=0;--j)e.fullMessageLength[j]+=h[1],h[1]=h[0]+(e.fullMessageLength[j]/0x100000000>>>0),e.fullMessageLength[j]=e.fullMessageLength[j]>>>0,h[0]=h[1]/0x100000000>>>0;return b.putBytes(f),i(a,c,b),(b.read>2048||0===b.length())&&b.compact(),e},e.digest=function(){var g,h=d.util.createBuffer();h.putBytes(b.bytes());var j=e.fullMessageLength[e.fullMessageLength.length-1]+e.messageLengthSize&e.blockLength-1;h.putBytes(f.substr(0,e.blockLength-j));for(var k=8*e.fullMessageLength[0],l=0;l<e.fullMessageLength.length-1;++l)k+=(g=8*e.fullMessageLength[l+1])/0x100000000>>>0,h.putInt32(k>>>0),k=g>>>0;h.putInt32(k);var m={h0:a.h0,h1:a.h1,h2:a.h2,h3:a.h3,h4:a.h4,h5:a.h5,h6:a.h6,h7:a.h7};i(m,c,h);var n=d.util.createBuffer();return n.putInt32(m.h0),n.putInt32(m.h1),n.putInt32(m.h2),n.putInt32(m.h3),n.putInt32(m.h4),n.putInt32(m.h5),n.putInt32(m.h6),n.putInt32(m.h7),n},e};var f=null,g=!1,h=null;function i(a,b,c){for(var d,e,f,g,i,j,k,l,m,n,o,p,q,r,s,t=c.length();t>=64;){for(k=0;k<16;++k)b[k]=c.getInt32();for(;k<64;++k)d=((d=b[k-2])>>>17|d<<15)^(d>>>19|d<<13)^d>>>10,e=((e=b[k-15])>>>7|e<<25)^(e>>>18|e<<14)^e>>>3,b[k]=d+b[k-7]+e+b[k-16]|0;for(k=0,l=a.h0,m=a.h1,n=a.h2,o=a.h3,p=a.h4,q=a.h5,r=a.h6,s=a.h7;k<64;++k)g=(p>>>6|p<<26)^(p>>>11|p<<21)^(p>>>25|p<<7),i=r^p&(q^r),f=(l>>>2|l<<30)^(l>>>13|l<<19)^(l>>>22|l<<10),j=l&m|n&(l^m),d=s+g+i+h[k]+b[k],e=f+j,s=r,r=q,q=p,p=o+d>>>0,o=n,n=m,m=l,l=d+e>>>0;a.h0=a.h0+l|0,a.h1=a.h1+m|0,a.h2=a.h2+n|0,a.h3=a.h3+o|0,a.h4=a.h4+p|0,a.h5=a.h5+q|0,a.h6=a.h6+r|0,a.h7=a.h7+s|0,t-=64}}},6951:(a,b,c)=>{"use strict";c.d(b,{v:()=>l});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j=process.env.DATA_DIR||("win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),"switchboard"):g().join(i().homedir(),".switchboard")),k=g().join(j,"mitm","aliases.json");async function l(){try{var a;let b,d,{getMitmAlias:f}=await Promise.resolve().then(c.bind(c,37703));a=await f()||{},b=g().dirname(k),e().mkdirSync(b,{recursive:!0}),d=`${k}.tmp`,e().writeFileSync(d,JSON.stringify(a,null,2),"utf8"),e().renameSync(d,k)}catch(a){console.log("[mitmAliasCache] sync failed:",a.message)}}},7044:(a,b,c)=>{"use strict";c.r(b),c.d(b,{createProviderNode:()=>k,deleteProviderNode:()=>m,getProviderNodeById:()=>j,getProviderNodes:()=>i,updateProviderNode:()=>l});var d=c(27137),e=c(24081),f=c(50743);function g(a){return a?{...(0,f.q)(a.data,{}),id:a.id,type:a.type,name:a.name,createdAt:a.createdAt,updatedAt:a.updatedAt}:null}function h(a,b){let c=function(a){let{id:b,type:c,name:d,createdAt:e,updatedAt:g,...h}=a;return{id:b,type:c??null,name:d??null,data:(0,f.s)(h),createdAt:e,updatedAt:g}}(b);a.run(`INSERT INTO providerNodes(id, type, name, data, createdAt, updatedAt)
|
|
12
|
+
VALUES(?, ?, ?, ?, ?, ?)
|
|
13
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
14
|
+
type=excluded.type, name=excluded.name, data=excluded.data, updatedAt=excluded.updatedAt`,[c.id,c.type,c.name,c.data,c.createdAt,c.updatedAt])}async function i(a={}){let b=await (0,e.c)(),c=[],d=[];a.type&&(c.push("type = ?"),d.push(a.type));let f=`SELECT * FROM providerNodes${c.length?` WHERE ${c.join(" AND ")}`:""}`;return b.all(f,d).map(g)}async function j(a){return g((await (0,e.c)()).get("SELECT * FROM providerNodes WHERE id = ?",[a]))}async function k(a){let b=await (0,e.c)(),c=new Date().toISOString(),f={id:a.id||(0,d.A)(),type:a.type,name:a.name,prefix:a.prefix,apiType:a.apiType,baseUrl:a.baseUrl,createdAt:c,updatedAt:c};return h(b,f),f}async function l(a,b){let c=await (0,e.c)(),d=null;return c.transaction(()=>{let e=c.get("SELECT * FROM providerNodes WHERE id = ?",[a]);if(!e)return;let f={...g(e),...b,updatedAt:new Date().toISOString()};h(c,f),d=f}),d}async function m(a){let b=await (0,e.c)(),c=null;return b.transaction(()=>{let d=b.get("SELECT * FROM providerNodes WHERE id = ?",[a]);d&&(c=g(d),b.run("DELETE FROM providerNodes WHERE id = ?",[a]))}),c}},7344:(a,b,c)=>{"use strict";let d=c(78474);class e extends d{dispatch(){throw Error("not implemented")}close(){throw Error("not implemented")}destroy(){throw Error("not implemented")}compose(...a){let b=Array.isArray(a[0])?a[0]:a,c=this.dispatch.bind(this);for(let a of b)if(null!=a){if("function"!=typeof a)throw TypeError(`invalid interceptor, expected function received ${typeof a}`);if(null==(c=a(c))||"function"!=typeof c||2!==c.length)throw TypeError("invalid interceptor")}return new Proxy(this,{get:(a,b)=>"dispatch"===b?c:a[b]})}}a.exports=e},7878:(a,b,c)=>{"use strict";c(22884),c(87350),c(68531),c(82689),c(18762)},9960:(a,b,c)=>{"use strict";var d=c(22268),e=c(68531),f=c(11897),g=c(18184),h=c(90694),i=c(52655),j=c(96684);(0,d.kz)(e.h.OLLAMA,e.h.OPENAI,null,function(a,b){if(!a||"object"!=typeof a)return null;b.ollama||(b.ollama={id:`chatcmpl-${Date.now()}`,created:Math.floor(Date.now()/1e3),model:a.model||b.model});let{id:c,created:d,model:e}=b.ollama;if(a.done){var k;let i=(k=a,(0,h.B)(k,"ollama")),l=(0,j.F)(a.done_reason,"ollama");(a.done_reason===f.bC.TOOL_CALLS||b.hadToolCalls)&&(l=f.bC.TOOL_CALLS);let m=(0,g.k)({id:c,created:d,model:e},{},l);return m.usage=i,m}let l=a.message;if(!l)return null;let m="string"==typeof l.content?l.content:"",n="string"==typeof l.thinking?l.thinking:"",o=Array.isArray(l.tool_calls)?l.tool_calls:null;if(!m&&!n&&!o)return null;m&&(b.accumulatedContent=(b.accumulatedContent||"")+m),n&&(b.accumulatedThinking=(b.accumulatedThinking||"")+n);let p={};return m&&(p.content=m),n&&(p.reasoning_content=n),o&&(b.hadToolCalls=!0,p.tool_calls=o.map((a,b)=>({index:a.function?.index??b,id:a.id||(0,i.eG)(b),type:f.x4.FUNCTION,function:{name:a.function?.name||"",arguments:"string"==typeof a.function?.arguments?a.function.arguments:JSON.stringify(a.function?.arguments||{})}}))),(0,g.k)({id:c,created:d,model:e},p,null)})},10342:(a,b,c)=>{"use strict";c.d(b,{m:()=>e});var d=c(11897);function e(a){if("string"==typeof a){let b=""===a.trim()?"...":a;return[{type:d.Du.MESSAGE,role:d.z7.USER,content:[{type:d.Du.INPUT_TEXT,text:b}]}]}return Array.isArray(a)?0===a.length?[{type:d.Du.MESSAGE,role:d.z7.USER,content:[{type:d.Du.INPUT_TEXT,text:"..."}]}]:a:null}},10401:(a,b,c)=>{var d=c(45654);if(c(63070),c(32e3),c(36105),c(24985),c(36902),c(29984),c(33889),void 0===e)var e=d.jsbn.BigInteger;var f=d.util.isNodejs?c(55511):null,g=d.asn1,h=d.util;d.pki=d.pki||{},a.exports=d.pki.rsa=d.rsa=d.rsa||{};var i=d.pki,j=[6,4,2,4,2,4,6,2],k={name:"PrivateKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},l={name:"RSAPrivateKey",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},m={name:"RSAPublicKey",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:g.Class.UNIVERSAL,type:g.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},n=d.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:g.Class.UNIVERSAL,type:g.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},o={name:"DigestInfo",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:g.Class.UNIVERSAL,type:g.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:g.Class.UNIVERSAL,type:g.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:g.Class.UNIVERSAL,type:g.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:g.Class.UNIVERSAL,type:g.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},p=function(a){if(a.algorithm in i.oids)b=i.oids[a.algorithm];else{var b,c=Error("Unknown message digest algorithm.");throw c.algorithm=a.algorithm,c}var d=g.oidToDer(b).getBytes(),e=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]),f=g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[]);f.value.push(g.create(g.Class.UNIVERSAL,g.Type.OID,!1,d)),f.value.push(g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,""));var h=g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,a.digest().getBytes());return e.value.push(f),e.value.push(h),g.toDer(e).getBytes()},q=function(a,b,c){if(c)return a.modPow(b.e,b.n);if(!b.p||!b.q)return a.modPow(b.d,b.n);b.dP||(b.dP=b.d.mod(b.p.subtract(e.ONE))),b.dQ||(b.dQ=b.d.mod(b.q.subtract(e.ONE))),b.qInv||(b.qInv=b.q.modInverse(b.p));do f=new e(d.util.bytesToHex(d.random.getBytes(b.n.bitLength()/8)),16);while(f.compareTo(b.n)>=0||!f.gcd(b.n).equals(e.ONE));for(var f,g=(a=a.multiply(f.modPow(b.e,b.n)).mod(b.n)).mod(b.p).modPow(b.dP,b.p),h=a.mod(b.q).modPow(b.dQ,b.q);0>g.compareTo(h);)g=g.add(b.p);var i=g.subtract(h).multiply(b.qInv).mod(b.p).multiply(b.q).add(h);return i.multiply(f.modInverse(b.n)).mod(b.n)};function r(a,b,c){var e,f=d.util.createBuffer(),g=Math.ceil(b.n.bitLength()/8);if(a.length>g-11){var h=Error("Message is too long for PKCS#1 v1.5 padding.");throw h.length=a.length,h.max=g-11,h}f.putByte(0),f.putByte(c);var i=g-3-a.length;if(0===c||1===c){e=255*(0!==c);for(var j=0;j<i;++j)f.putByte(e)}else for(;i>0;){for(var k=0,l=d.random.getBytes(i),j=0;j<i;++j)0===(e=l.charCodeAt(j))?++k:f.putByte(e);i=k}return f.putByte(0),f.putBytes(a),f}function s(a,b,c,e,f){var g=Math.ceil(b.n.bitLength()/8),h=d.util.createBuffer(a),i=h.getByte(),j=h.getByte();if(0!==i||c&&0!==j&&1!==j||!c&&2!==j||c&&0===j&&void 0===e)throw Error("Encryption block is invalid.");var k=0;if(0===j){k=g-3-e;for(var l=0;l<k;++l)if(0!==h.getByte())throw Error("Encryption block is invalid.")}else if(1===j){for(k=0;h.length()>1;){if(255!==h.getByte()){--h.read;break}++k}if(k<8&&!(f&&f._skipPaddingChecks))throw Error("Encryption block is invalid.")}else if(2===j){for(k=0;h.length()>1;){if(0===h.getByte()){--h.read;break}++k}if(k<8&&!(f&&f._skipPaddingChecks))throw Error("Encryption block is invalid.")}if(0!==h.getByte()||k!==g-3-h.length())throw Error("Encryption block is invalid.");return h.getBytes()}function t(a){var b=a.toString(16);b[0]>="8"&&(b="00"+b);var c=d.util.hexToBytes(b);return c.length>1&&(0===c.charCodeAt(0)&&(128&c.charCodeAt(1))==0||255===c.charCodeAt(0)&&(128&c.charCodeAt(1))==128)?c.substr(1):c}function u(a){return d.util.isNodejs&&"function"==typeof f[a]}function v(a){return void 0!==h.globalScope&&"object"==typeof h.globalScope.crypto&&"object"==typeof h.globalScope.crypto.subtle&&"function"==typeof h.globalScope.crypto.subtle[a]}function w(a){return void 0!==h.globalScope&&"object"==typeof h.globalScope.msCrypto&&"object"==typeof h.globalScope.msCrypto.subtle&&"function"==typeof h.globalScope.msCrypto.subtle[a]}function x(a){for(var b=d.util.hexToBytes(a.toString(16)),c=new Uint8Array(b.length),e=0;e<b.length;++e)c[e]=b.charCodeAt(e);return c}i.rsa.encrypt=function(a,b,c){var f,g=c,h=Math.ceil(b.n.bitLength()/8);!1!==c&&!0!==c?(g=2===c,f=r(a,b,c)):(f=d.util.createBuffer()).putBytes(a);for(var i=q(new e(f.toHex(),16),b,g).toString(16),j=d.util.createBuffer(),k=h-Math.ceil(i.length/2);k>0;)j.putByte(0),--k;return j.putBytes(d.util.hexToBytes(i)),j.getBytes()},i.rsa.decrypt=function(a,b,c,f){var g=Math.ceil(b.n.bitLength()/8);if(a.length!==g){var h=Error("Encrypted message length is invalid.");throw h.length=a.length,h.expected=g,h}var i=new e(d.util.createBuffer(a).toHex(),16);if(i.compareTo(b.n)>=0)throw Error("Encrypted message is invalid.");for(var j=q(i,b,c).toString(16),k=d.util.createBuffer(),l=g-Math.ceil(j.length/2);l>0;)k.putByte(0),--l;return(k.putBytes(d.util.hexToBytes(j)),!1!==f)?s(k.getBytes(),b,c):k.getBytes()},i.rsa.createKeyPairGenerationState=function(a,b,c){"string"==typeof a&&(a=parseInt(a,10)),a=a||2048;var f,g=(c=c||{}).prng||d.random,h=c.algorithm||"PRIMEINC";if("PRIMEINC"===h)(f={algorithm:h,state:0,bits:a,rng:{nextBytes:function(a){for(var b=g.getBytesSync(a.length),c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}},eInt:b||65537,e:new e(null),p:null,q:null,qBits:a>>1,pBits:a-(a>>1),pqState:0,num:null,keys:null}).e.fromInt(f.eInt);else throw Error("Invalid key generation algorithm: "+h);return f},i.rsa.stepKeyPairGenerationState=function(a,b){"algorithm"in a||(a.algorithm="PRIMEINC");var c,d=new e(null);d.fromInt(30);for(var f=0,g=function(a,b){return a|b},h=+new Date,k=0;null===a.keys&&(b<=0||k<b);){if(0===a.state){var l,m=null===a.p?a.pBits:a.qBits,n=m-1;0===a.pqState?(a.num=new e(m,a.rng),a.num.testBit(n)||a.num.bitwiseTo(e.ONE.shiftLeft(n),g,a.num),a.num.dAddOffset(31-a.num.mod(d).byteValue(),0),f=0,++a.pqState):1===a.pqState?a.num.bitLength()>m?a.pqState=0:a.num.isProbablePrime((l=a.num.bitLength())<=100?27:l<=150?18:l<=200?15:l<=250?12:l<=300?9:l<=350?8:l<=400?7:l<=500?6:l<=600?5:l<=800?4:l<=1250?3:2)?++a.pqState:a.num.dAddOffset(j[f++%8],0):2===a.pqState?a.pqState=3*(0===a.num.subtract(e.ONE).gcd(a.e).compareTo(e.ONE)):3===a.pqState&&(a.pqState=0,null===a.p?a.p=a.num:a.q=a.num,null!==a.p&&null!==a.q&&++a.state,a.num=null)}else if(1===a.state)0>a.p.compareTo(a.q)&&(a.num=a.p,a.p=a.q,a.q=a.num),++a.state;else if(2===a.state)a.p1=a.p.subtract(e.ONE),a.q1=a.q.subtract(e.ONE),a.phi=a.p1.multiply(a.q1),++a.state;else if(3===a.state)0===a.phi.gcd(a.e).compareTo(e.ONE)?++a.state:(a.p=null,a.q=null,a.state=0);else if(4===a.state)a.n=a.p.multiply(a.q),a.n.bitLength()===a.bits?++a.state:(a.q=null,a.state=0);else if(5===a.state){var o=a.e.modInverse(a.phi);a.keys={privateKey:i.rsa.setPrivateKey(a.n,a.e,o,a.p,a.q,o.mod(a.p1),o.mod(a.q1),a.q.modInverse(a.p)),publicKey:i.rsa.setPublicKey(a.n,a.e)}}k+=(c=+new Date)-h,h=c}return null!==a.keys},i.rsa.generateKeyPair=function(a,b,c,j){if(1==arguments.length?"object"==typeof a?(c=a,a=void 0):"function"==typeof a&&(j=a,a=void 0):2==arguments.length?"number"==typeof a?"function"==typeof b?(j=b,b=void 0):"number"!=typeof b&&(c=b,b=void 0):(c=a,j=b,a=void 0,b=void 0):3==arguments.length&&("number"==typeof b?"function"==typeof c&&(j=c,c=void 0):(j=c,c=b,b=void 0)),c=c||{},void 0===a&&(a=c.bits||2048),void 0===b&&(b=c.e||65537),!d.options.usePureJavaScript&&!c.prng&&a>=256&&a<=16384&&(65537===b||3===b)){if(j){if(u("generateKeyPair"))return f.generateKeyPair("rsa",{modulusLength:a,publicExponent:b,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(a,b,c){if(a)return j(a);j(null,{privateKey:i.privateKeyFromPem(c),publicKey:i.publicKeyFromPem(b)})});if(v("generateKey")&&v("exportKey"))return h.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:a,publicExponent:x(b),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(a){return h.globalScope.crypto.subtle.exportKey("pkcs8",a.privateKey)}).then(void 0,function(a){j(a)}).then(function(a){if(a){var b=i.privateKeyFromAsn1(g.fromDer(d.util.createBuffer(a)));j(null,{privateKey:b,publicKey:i.setRsaPublicKey(b.n,b.e)})}});if(w("generateKey")&&w("exportKey")){var k=h.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:a,publicExponent:x(b),hash:{name:"SHA-256"}},!0,["sign","verify"]);k.oncomplete=function(a){var b=a.target.result,c=h.globalScope.msCrypto.subtle.exportKey("pkcs8",b.privateKey);c.oncomplete=function(a){var b=a.target.result,c=i.privateKeyFromAsn1(g.fromDer(d.util.createBuffer(b)));j(null,{privateKey:c,publicKey:i.setRsaPublicKey(c.n,c.e)})},c.onerror=function(a){j(a)}},k.onerror=function(a){j(a)};return}}else if(u("generateKeyPairSync")){var l=f.generateKeyPairSync("rsa",{modulusLength:a,publicExponent:b,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:i.privateKeyFromPem(l.privateKey),publicKey:i.publicKeyFromPem(l.publicKey)}}}var m=i.rsa.createKeyPairGenerationState(a,b,c);if(!j)return i.rsa.stepKeyPairGenerationState(m,0),m.keys;var n=m,o=c,p=j;"function"==typeof o&&(p=o,o={});var q={algorithm:{name:(o=o||{}).algorithm||"PRIMEINC",options:{workers:o.workers||2,workLoad:o.workLoad||100,workerScript:o.workerScript}}};function r(){s(n.pBits,function(a,b){return a?p(a):(n.p=b,null!==n.q)?t(a,n.q):void s(n.qBits,t)})}function s(a,b){d.prime.generateProbablePrime(a,q,b)}function t(a,b){if(a)return p(a);if(n.q=b,0>n.p.compareTo(n.q)){var c=n.p;n.p=n.q,n.q=c}if(0!==n.p.subtract(e.ONE).gcd(n.e).compareTo(e.ONE)){n.p=null,r();return}if(0!==n.q.subtract(e.ONE).gcd(n.e).compareTo(e.ONE)){n.q=null,s(n.qBits,t);return}if(n.p1=n.p.subtract(e.ONE),n.q1=n.q.subtract(e.ONE),n.phi=n.p1.multiply(n.q1),0!==n.phi.gcd(n.e).compareTo(e.ONE)){n.p=n.q=null,r();return}if(n.n=n.p.multiply(n.q),n.n.bitLength()!==n.bits){n.q=null,s(n.qBits,t);return}var d=n.e.modInverse(n.phi);n.keys={privateKey:i.rsa.setPrivateKey(n.n,n.e,d,n.p,n.q,d.mod(n.p1),d.mod(n.q1),n.q.modInverse(n.p)),publicKey:i.rsa.setPublicKey(n.n,n.e)},p(null,n.keys)}"prng"in o&&(q.prng=o.prng),r()},i.setRsaPublicKey=i.rsa.setPublicKey=function(a,b){var c={n:a,e:b};return c.encrypt=function(a,b,e){if("string"==typeof b?b=b.toUpperCase():void 0===b&&(b="RSAES-PKCS1-V1_5"),"RSAES-PKCS1-V1_5"===b)b={encode:function(a,b,c){return r(a,b,2).getBytes()}};else if("RSA-OAEP"===b||"RSAES-OAEP"===b)b={encode:function(a,b){return d.pkcs1.encode_rsa_oaep(b,a,e)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(b))b={encode:function(a){return a}};else if("string"==typeof b)throw Error('Unsupported encryption scheme: "'+b+'".');var f=b.encode(a,c,!0);return i.rsa.encrypt(f,c,!0)},c.verify=function(a,b,e,f){"string"==typeof e?e=e.toUpperCase():void 0===e&&(e="RSASSA-PKCS1-V1_5"),void 0===f&&(f={_parseAllDigestBytes:!0,_skipPaddingChecks:!1}),"_parseAllDigestBytes"in f||(f._parseAllDigestBytes=!0),"_skipPaddingChecks"in f||(f._skipPaddingChecks=!1),"RSASSA-PKCS1-V1_5"===e?e={verify:function(a,b){b=s(b,c,!0,void 0,f);var e=g.fromDer(b,{parseAllBytes:f._parseAllDigestBytes}),h={},i=[];if(!g.validate(e,o,h,i)||2!==e.value.length){var j=Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw j.errors=i,j}var k=g.derToOid(h.algorithmIdentifier);if(k!==d.oids.md2&&k!==d.oids.md5&&k!==d.oids.sha1&&k!==d.oids.sha224&&k!==d.oids.sha256&&k!==d.oids.sha384&&k!==d.oids.sha512&&k!==d.oids["sha512-224"]&&k!==d.oids["sha512-256"]){var j=Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw j.oid=k,j}if((k===d.oids.md2||k===d.oids.md5)&&!("parameters"in h))throw Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifier NULL parameters.");return a===h.digest}}:("NONE"===e||"NULL"===e||null===e)&&(e={verify:function(a,b){return a===(b=s(b,c,!0,void 0,f))}});var h=i.rsa.decrypt(b,c,!0,!1);return e.verify(a,h,c.n.bitLength())},c},i.setRsaPrivateKey=i.rsa.setPrivateKey=function(a,b,c,e,f,g,h,j){var k={n:a,e:b,d:c,p:e,q:f,dP:g,dQ:h,qInv:j};return k.decrypt=function(a,b,c){"string"==typeof b?b=b.toUpperCase():void 0===b&&(b="RSAES-PKCS1-V1_5");var e=i.rsa.decrypt(a,k,!1,!1);if("RSAES-PKCS1-V1_5"===b)b={decode:s};else if("RSA-OAEP"===b||"RSAES-OAEP"===b)b={decode:function(a,b){return d.pkcs1.decode_rsa_oaep(b,a,c)}};else if(-1!==["RAW","NONE","NULL",null].indexOf(b))b={decode:function(a){return a}};else throw Error('Unsupported encryption scheme: "'+b+'".');return b.decode(e,k,!1)},k.sign=function(a,b){var c=!1;"string"==typeof b&&(b=b.toUpperCase()),void 0===b||"RSASSA-PKCS1-V1_5"===b?(b={encode:p},c=1):("NONE"===b||"NULL"===b||null===b)&&(b={encode:function(){return a}},c=1);var d=b.encode(a,k.n.bitLength());return i.rsa.encrypt(d,k,c)},k},i.wrapRsaPrivateKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(0).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(i.oids.rsaEncryption).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")]),g.create(g.Class.UNIVERSAL,g.Type.OCTETSTRING,!1,g.toDer(a).getBytes())])},i.privateKeyFromAsn1=function(a){var b,c,f,h,j,m,n,o,p={},q=[];if(g.validate(a,k,p,q)&&(a=g.fromDer(d.util.createBuffer(p.privateKey))),p={},q=[],!g.validate(a,l,p,q)){var r=Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw r.errors=q,r}return b=d.util.createBuffer(p.privateKeyModulus).toHex(),c=d.util.createBuffer(p.privateKeyPublicExponent).toHex(),f=d.util.createBuffer(p.privateKeyPrivateExponent).toHex(),h=d.util.createBuffer(p.privateKeyPrime1).toHex(),j=d.util.createBuffer(p.privateKeyPrime2).toHex(),m=d.util.createBuffer(p.privateKeyExponent1).toHex(),n=d.util.createBuffer(p.privateKeyExponent2).toHex(),o=d.util.createBuffer(p.privateKeyCoefficient).toHex(),i.setRsaPrivateKey(new e(b,16),new e(c,16),new e(f,16),new e(h,16),new e(j,16),new e(m,16),new e(n,16),new e(o,16))},i.privateKeyToAsn1=i.privateKeyToRSAPrivateKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,g.integerToDer(0).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.n)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.e)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.d)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.p)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.q)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.dP)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.dQ)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.qInv))])},i.publicKeyFromAsn1=function(a){var b={},c=[];if(g.validate(a,n,b,c)){var f=g.derToOid(b.publicKeyOid);if(f!==i.oids.rsaEncryption){var h=Error("Cannot read public key. Unknown OID.");throw h.oid=f,h}a=b.rsaPublicKey}if(c=[],!g.validate(a,m,b,c)){var h=Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw h.errors=c,h}var j=d.util.createBuffer(b.publicKeyModulus).toHex(),k=d.util.createBuffer(b.publicKeyExponent).toHex();return i.setRsaPublicKey(new e(j,16),new e(k,16))},i.publicKeyToAsn1=i.publicKeyToSubjectPublicKeyInfo=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.OID,!1,g.oidToDer(i.oids.rsaEncryption).getBytes()),g.create(g.Class.UNIVERSAL,g.Type.NULL,!1,"")]),g.create(g.Class.UNIVERSAL,g.Type.BITSTRING,!1,[i.publicKeyToRSAPublicKey(a)])])},i.publicKeyToRSAPublicKey=function(a){return g.create(g.Class.UNIVERSAL,g.Type.SEQUENCE,!0,[g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.n)),g.create(g.Class.UNIVERSAL,g.Type.INTEGER,!1,t(a.e))])}},10793:(a,b,c)=>{"use strict";c.d(b,{$V:()=>s,A9:()=>l,Cn:()=>m,Co:()=>r,J5:()=>p,K:()=>q,NA:()=>u,Ox:()=>n,QH:()=>o,VK:()=>v,Wu:()=>t,go:()=>g,sX:()=>h,x0:()=>j});var d=c(21820),e=c(38421);let f=e.xq["gemini-cli"]?.cliVersion,g=e.xq["gemini-cli"]?.apiClient;function h(a="unknown"){let b;return`GeminiCLI/${f}/${a||"unknown"} (${(0,d.platform)()}; ${"ia32"===(b=(0,d.arch)())?"x86":b}; terminal)`}let i=e.xq.github?.copilot||{},j={VSCODE_VERSION:i.vscodeVersion,COPILOT_CHAT_VERSION:i.chatVersion,USER_AGENT:i.userAgent,API_VERSION:i.apiVersion};function k(){let a=(0,d.platform)(),b=(0,d.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}function l(){return`antigravity/1.104.0 ${(0,d.platform)()}/${(0,d.arch)()}`}let m={ideType:9,platform:k(),pluginType:2},n={name:"x-request-source",value:"local"},o="_ide",p=new Set(["browser_subagent","command_status","find_by_name","generate_image","grep_search","list_dir","list_resources","multi_replace_file_content","notify_user","read_resource","read_terminal","read_url_content","replace_file_content","run_command","search_web","send_command_input","task_boundary","view_content_chunk","view_file","write_to_file"]),q={"User-Agent":`antigravity/1.107.0 ${(0,d.platform)()}/${(0,d.arch)()}`};JSON.stringify({ideType:9,platform:k(),pluginType:2}),k();let r="You are Claude Code, Anthropic's official CLI for Claude.",s="You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**",t=Object.fromEntries(Object.entries(e.sr).filter(([,a])=>a.refreshLeadMs).map(([a,b])=>[a,b.refreshLeadMs])),u={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:e.sr.codex?.tokenUrl,auth:e.sr.codex?.authorizeUrl},anthropic:{token:e.sr.claude?.tokenUrl,auth:"https://api.anthropic.com/v1/oauth/authorize"},qwen:{token:e.sr.qwen?.tokenUrl,auth:e.sr.qwen?.deviceCodeUrl},iflow:{token:e.sr.iflow?.tokenUrl,auth:e.sr.iflow?.authorizeUrl},github:{token:e.sr.github?.tokenUrl,auth:e.sr.github?.authorizeUrl,deviceCode:e.sr.github?.deviceCodeUrl}};function v(){return{"X-Msh-Platform":"switchboard","X-Msh-Version":"2.1.2","X-Msh-Device-Model":"u">typeof process?`${process.platform} ${process.arch}`:"unknown","X-Msh-Device-Id":`kimi-${Date.now()}`}}},10962:(a,b,c)=>{"use strict";c.d(b,{M:()=>e});var d=c(82689);function e(a,b=d.Uc){let c=a.max_tokens||a.max_completion_tokens||a.max_output_tokens||d.Uc;return a.tools&&Array.isArray(a.tools)&&a.tools.length>0&&c<d.eo&&(c=d.eo),a.thinking?.budget_tokens&&c<=a.thinking.budget_tokens&&(c=a.thinking.budget_tokens+1024),c>b&&(c=b),c}},11380:(a,b,c)=>{"use strict";let{exec:d,execSync:e}=c(79646),f="win32"===process.platform;function g(){if(f)try{return e("net session >nul 2>&1",{windowsHide:!0,stdio:"ignore"}),!0}catch{return!1}return"function"==typeof process.getuid&&0===process.getuid()}function h(a){return`'${String(a).replace(/'/g,"''")}'`}a.exports={isAdmin:g,runElevatedPowerShell:function(a){if(!f)return Promise.reject(Error("Windows-only"));let b=Buffer.from(a,"utf16le").toString("base64");if(g())return new Promise((a,c)=>{d(`powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -EncodedCommand ${b}`,{windowsHide:!0},(b,d,e)=>{b?c(Error(e||b.message)):a(d)})});let c=`
|
|
15
|
+
$proc = Start-Process powershell -ArgumentList @(
|
|
16
|
+
'-NoProfile','-NonInteractive','-ExecutionPolicy','Bypass',
|
|
17
|
+
'-WindowStyle','Hidden','-EncodedCommand','${b}'
|
|
18
|
+
) -Verb RunAs -Wait -PassThru -WindowStyle Hidden;
|
|
19
|
+
if ($proc.ExitCode -ne 0) { throw "Elevated command exited with code $($proc.ExitCode)" }
|
|
20
|
+
`;return new Promise((a,b)=>{d(`powershell -NoProfile -NonInteractive -ExecutionPolicy Bypass -Command ${h(c)}`,{windowsHide:!0},(c,d,e)=>{if(c){let a=e||c.message;a.includes("canceled by the user")||a.includes("operation was canceled")?b(Error("User canceled UAC prompt")):b(Error(a))}else a(d)})})},quotePs:h}},11897:(a,b,c)=>{"use strict";c.d(b,{R4:()=>g,BY:()=>k,a_:()=>i.a_,RV:()=>e,rP:()=>j,x4:()=>f,bC:()=>i.bC,Du:()=>h,z7:()=>d});let d={USER:"user",ASSISTANT:"assistant",TOOL:"tool",SYSTEM:"system",DEVELOPER:"developer"},e={USER:"user",MODEL:"model"},f={TEXT:"text",IMAGE_URL:"image_url",IMAGE:"image",INPUT_AUDIO:"input_audio",AUDIO_URL:"audio_url",FILE:"file",FUNCTION:"function"},g={TEXT:"text",IMAGE:"image",DOCUMENT:"document",TOOL_USE:"tool_use",TOOL_RESULT:"tool_result",THINKING:"thinking",REDACTED_THINKING:"redacted_thinking"},h={MESSAGE:"message",FUNCTION_CALL:"function_call",FUNCTION_CALL_OUTPUT:"function_call_output",REASONING:"reasoning",OUTPUT_TEXT:"output_text",INPUT_TEXT:"input_text",INPUT_IMAGE:"input_image",INPUT_FILE:"input_file",SUMMARY_TEXT:"summary_text"};f.TEXT,f.IMAGE_URL,f.IMAGE,f.INPUT_AUDIO,f.AUDIO_URL,f.FILE,f.TEXT,f.IMAGE_URL,f.IMAGE,g.TOOL_RESULT;var i=c(62457);let j="unknown",k="image/png"},12600:(a,b,c)=>{"use strict";let d,{extractBody:e,mixinBody:f,cloneBody:g,bodyUnusable:h}=c(35381),{Headers:i,fill:j,HeadersList:k,setHeadersGuard:l,getHeadersGuard:m,setHeadersList:n,getHeadersList:o}=c(28665),p=c(84285),q=c(57975),{isValidHTTPToken:r,sameOrigin:s,environmentSettingsObject:t}=c(42425),{forbiddenMethodsSet:u,corsSafeListedMethodsSet:v,referrerPolicy:w,requestRedirect:x,requestMode:y,requestCredentials:z,requestCache:A,requestDuplex:B}=c(19608),{kEnumerableProperty:C,normalizedMethodRecordsBase:D,normalizedMethodRecords:E}=p,{webidl:F}=c(32984),{URLSerializer:G}=c(16537),{kConstruct:H}=c(49176),I=c(34589),{getMaxListeners:J,setMaxListeners:K,defaultMaxListeners:L}=c(78474),M=Symbol("abortController"),N=new FinalizationRegistry(({signal:a,abort:b})=>{a.removeEventListener("abort",b)}),O=new WeakMap;try{d=J(new AbortController().signal)>0}catch{d=!1}function P(a){return function b(){let c=a.deref();if(void 0!==c){N.unregister(b),this.removeEventListener("abort",b),c.abort(this.reason);let a=O.get(c.signal);if(void 0!==a){if(0!==a.size){for(let b of a){let a=b.deref();void 0!==a&&a.abort(this.reason)}a.clear()}O.delete(c.signal)}}}}let Q=!1;class R{#c;#d;#e;#a;#f=null;constructor(a,b){let c;if(F.util.markAsUncloneable(this),a===H)return;F.argumentLengthCheck(arguments,1,"Request constructor"),a=F.converters.RequestInfo(a),b=F.converters.RequestInit(b);let f=null,g=null;const m=t.settingsObject.baseUrl;let q=null;if("string"==typeof a){let c;this.#d=b.dispatcher;try{c=new URL(a,m)}catch(b){throw TypeError("Failed to parse URL from "+a,{cause:b})}if(c.username||c.password)throw TypeError("Request cannot be constructed from a URL that includes credentials: "+a);f=Z({urlList:[c]}),g="cors"}else I(F.is.Request(a)),f=a.#a,q=a.#c,this.#d=b.dispatcher||a.#d;const w=t.settingsObject.origin;let x="client";if(f.window?.constructor?.name==="EnvironmentSettingsObject"&&s(f.window,w)&&(x=f.window),null!=b.window)throw TypeError(`'window' option '${x}' must be null`);"window"in b&&(x="no-window"),f=Z({method:f.method,headersList:f.headersList,unsafeRequest:f.unsafeRequest,client:t.settingsObject,window:x,priority:f.priority,origin:f.origin,referrer:f.referrer,referrerPolicy:f.referrerPolicy,mode:f.mode,credentials:f.credentials,cache:f.cache,redirect:f.redirect,integrity:f.integrity,keepalive:f.keepalive,reloadNavigation:f.reloadNavigation,historyNavigation:f.historyNavigation,urlList:[...f.urlList]});const y=0!==Object.keys(b).length;if(y&&("navigate"===f.mode&&(f.mode="same-origin"),f.reloadNavigation=!1,f.historyNavigation=!1,f.origin="client",f.referrer="client",f.referrerPolicy="",f.url=f.urlList[f.urlList.length-1],f.urlList=[f.url]),void 0!==b.referrer){const a=b.referrer;if(""===a)f.referrer="no-referrer";else{let b;try{b=new URL(a,m)}catch(b){throw TypeError(`Referrer "${a}" is not a valid URL.`,{cause:b})}"about:"===b.protocol&&"client"===b.hostname||w&&!s(b,t.settingsObject.baseUrl)?f.referrer="client":f.referrer=b}}if(void 0!==b.referrerPolicy&&(f.referrerPolicy=b.referrerPolicy),"navigate"===(c=void 0!==b.mode?b.mode:g))throw F.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(null!=c&&(f.mode=c),void 0!==b.credentials&&(f.credentials=b.credentials),void 0!==b.cache&&(f.cache=b.cache),"only-if-cached"===f.cache&&"same-origin"!==f.mode)throw TypeError("'only-if-cached' can be set only with 'same-origin' mode");if(void 0!==b.redirect&&(f.redirect=b.redirect),null!=b.integrity&&(f.integrity=String(b.integrity)),void 0!==b.keepalive&&(f.keepalive=!!b.keepalive),void 0!==b.method){let a=b.method;const c=E[a];if(void 0!==c)f.method=c;else{if(!r(a))throw TypeError(`'${a}' is not a valid HTTP method.`);const b=a.toUpperCase();if(u.has(b))throw TypeError(`'${a}' HTTP method is unsupported.`);a=D[b]??a,f.method=a}Q||"patch"!==f.method||(process.emitWarning("Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.",{code:"UNDICI-FETCH-patch"}),Q=!0)}void 0!==b.signal&&(q=b.signal),this.#a=f;const z=new AbortController;if(this.#c=z.signal,null!=q)if(q.aborted)z.abort(q.reason);else{this[M]=z;const a=P(new WeakRef(z));d&&J(q)===L&&K(1500,q);const b=p.addAbortListener(q,a);N.register(z,{signal:q,abort:a},a),this.#f=()=>{N.unregister(a),b(),this.#f=null}}if(this.#e=new i(H),n(this.#e,f.headersList),l(this.#e,"request"),"no-cors"===c){if(!v.has(f.method))throw TypeError(`'${f.method} is unsupported in no-cors mode.`);l(this.#e,"request-no-cors")}if(y){const a=o(this.#e),c=void 0!==b.headers?b.headers:new k(a);if(a.clear(),c instanceof k){for(const{name:b,value:d}of c.rawValues())a.append(b,d,!1);a.cookies=c.cookies}else j(this.#e,c)}const A=F.is.Request(a)?a.#a.body:null;if((null!=b.body||null!=A)&&("GET"===f.method||"HEAD"===f.method))throw TypeError("Request with GET/HEAD method cannot have body.");let B=null;if(null!=b.body){const[a,c]=e(b.body,f.keepalive);B=a,c&&!o(this.#e).contains("content-type",!0)&&this.#e.append("content-type",c,!0)}const C=B??A;if(null!=C&&null==C.source){if(null!=B&&null==b.duplex)throw TypeError("RequestInit: duplex option is required when sending a body.");if("same-origin"!==f.mode&&"cors"!==f.mode)throw TypeError('If request is made from ReadableStream, mode should be "same-origin" or "cors"');f.useCORSPreflightFlag=!0}let G=C;if(null==B&&null!=A){if(h(a.#a))throw TypeError("Cannot construct a Request with a Request object that has already been used.");const b=new TransformStream;A.stream.pipeThrough(b),G={source:A.source,length:A.length,stream:b.readable}}this.#a.body=G}get method(){return F.brandCheck(this,R),this.#a.method}get url(){return F.brandCheck(this,R),G(this.#a.url)}get headers(){return F.brandCheck(this,R),this.#e}get destination(){return F.brandCheck(this,R),this.#a.destination}get referrer(){return(F.brandCheck(this,R),"no-referrer"===this.#a.referrer)?"":"client"===this.#a.referrer?"about:client":this.#a.referrer.toString()}get referrerPolicy(){return F.brandCheck(this,R),this.#a.referrerPolicy}get mode(){return F.brandCheck(this,R),this.#a.mode}get credentials(){return F.brandCheck(this,R),this.#a.credentials}get cache(){return F.brandCheck(this,R),this.#a.cache}get redirect(){return F.brandCheck(this,R),this.#a.redirect}get integrity(){return F.brandCheck(this,R),this.#a.integrity}get keepalive(){return F.brandCheck(this,R),this.#a.keepalive}get isReloadNavigation(){return F.brandCheck(this,R),this.#a.reloadNavigation}get isHistoryNavigation(){return F.brandCheck(this,R),this.#a.historyNavigation}get signal(){return F.brandCheck(this,R),this.#c}get body(){return F.brandCheck(this,R),this.#a.body?this.#a.body.stream:null}get bodyUsed(){return F.brandCheck(this,R),!!this.#a.body&&p.isDisturbed(this.#a.body.stream)}get duplex(){return F.brandCheck(this,R),"half"}clone(){if(F.brandCheck(this,R),h(this.#a))throw TypeError("unusable");let a=$(this.#a),b=new AbortController;if(this.signal.aborted)b.abort(this.signal.reason);else{let a=O.get(this.signal);void 0===a&&(a=new Set,O.set(this.signal,a));let c=new WeakRef(b);a.add(c),p.addAbortListener(b.signal,P(c))}return _(a,this.#d,b.signal,m(this.#e))}[q.inspect.custom](a,b){null===b.depth&&(b.depth=2),b.colors??=!0;let c={method:this.method,url:this.url,headers:this.headers,destination:this.destination,referrer:this.referrer,referrerPolicy:this.referrerPolicy,mode:this.mode,credentials:this.credentials,cache:this.cache,redirect:this.redirect,integrity:this.integrity,keepalive:this.keepalive,isReloadNavigation:this.isReloadNavigation,isHistoryNavigation:this.isHistoryNavigation,signal:this.signal};return`Request ${q.formatWithOptions(b,c)}`}static setRequestSignal(a,b){return a.#c=b,a}static getRequestDispatcher(a){return a.#d}static setRequestDispatcher(a,b){a.#d=b}static setRequestHeaders(a,b){a.#e=b}static getRequestState(a){return a.#a}static setRequestState(a,b){a.#a=b}static removeRequestAbortListener(a){a.#f?.()}}let{setRequestSignal:S,getRequestDispatcher:T,setRequestDispatcher:U,setRequestHeaders:V,getRequestState:W,setRequestState:X,removeRequestAbortListener:Y}=R;function Z(a){return{method:a.method??"GET",localURLsOnly:a.localURLsOnly??!1,unsafeRequest:a.unsafeRequest??!1,body:a.body??null,client:a.client??null,reservedClient:a.reservedClient??null,replacesClientId:a.replacesClientId??"",window:a.window??"client",keepalive:a.keepalive??!1,serviceWorkers:a.serviceWorkers??"all",initiator:a.initiator??"",destination:a.destination??"",priority:a.priority??null,origin:a.origin??"client",policyContainer:a.policyContainer??"client",referrer:a.referrer??"client",referrerPolicy:a.referrerPolicy??"",mode:a.mode??"no-cors",useCORSPreflightFlag:a.useCORSPreflightFlag??!1,credentials:a.credentials??"same-origin",useCredentials:a.useCredentials??!1,cache:a.cache??"default",redirect:a.redirect??"follow",integrity:a.integrity??"",cryptoGraphicsNonceMetadata:a.cryptoGraphicsNonceMetadata??"",parserMetadata:a.parserMetadata??"",reloadNavigation:a.reloadNavigation??!1,historyNavigation:a.historyNavigation??!1,userActivation:a.userActivation??!1,taintedOrigin:a.taintedOrigin??!1,redirectCount:a.redirectCount??0,responseTainting:a.responseTainting??"basic",preventNoCacheCacheControlHeaderModification:a.preventNoCacheCacheControlHeaderModification??!1,done:a.done??!1,timingAllowFailed:a.timingAllowFailed??!1,useURLCredentials:a.useURLCredentials??void 0,traversableForUserPrompts:a.traversableForUserPrompts??"client",urlList:a.urlList,url:a.urlList[0],headersList:a.headersList?new k(a.headersList):new k}}function $(a){let b=Z({...a,body:null});return null!=a.body&&(b.body=g(a.body)),b}function _(a,b,c,d){let e=new R(H);X(e,a),U(e,b),S(e,c);let f=new i(H);return V(e,f),n(f,a.headersList),l(f,d),e}Reflect.deleteProperty(R,"setRequestSignal"),Reflect.deleteProperty(R,"getRequestDispatcher"),Reflect.deleteProperty(R,"setRequestDispatcher"),Reflect.deleteProperty(R,"setRequestHeaders"),Reflect.deleteProperty(R,"getRequestState"),Reflect.deleteProperty(R,"setRequestState"),Reflect.deleteProperty(R,"removeRequestAbortListener"),f(R,W),Object.defineProperties(R.prototype,{method:C,url:C,headers:C,redirect:C,clone:C,signal:C,duplex:C,destination:C,body:C,bodyUsed:C,isHistoryNavigation:C,isReloadNavigation:C,keepalive:C,integrity:C,cache:C,credentials:C,attribute:C,referrerPolicy:C,referrer:C,mode:C,[Symbol.toStringTag]:{value:"Request",configurable:!0}}),F.is.Request=F.util.MakeTypeAssertion(R),F.converters.RequestInfo=function(a){return"string"==typeof a?F.converters.USVString(a):F.is.Request(a)?a:F.converters.USVString(a)},F.converters.RequestInit=F.dictionaryConverter([{key:"method",converter:F.converters.ByteString},{key:"headers",converter:F.converters.HeadersInit},{key:"body",converter:F.nullableConverter(F.converters.BodyInit)},{key:"referrer",converter:F.converters.USVString},{key:"referrerPolicy",converter:F.converters.DOMString,allowedValues:w},{key:"mode",converter:F.converters.DOMString,allowedValues:y},{key:"credentials",converter:F.converters.DOMString,allowedValues:z},{key:"cache",converter:F.converters.DOMString,allowedValues:A},{key:"redirect",converter:F.converters.DOMString,allowedValues:x},{key:"integrity",converter:F.converters.DOMString},{key:"keepalive",converter:F.converters.boolean},{key:"signal",converter:F.nullableConverter(a=>F.converters.AbortSignal(a,"RequestInit","signal"))},{key:"window",converter:F.converters.any},{key:"duplex",converter:F.converters.DOMString,allowedValues:B},{key:"dispatcher",converter:F.converters.any},{key:"priority",converter:F.converters.DOMString,allowedValues:["high","low","auto"],defaultValue:()=>"auto"}]),a.exports={Request:R,makeRequest:Z,fromInnerRequest:_,cloneRequest:$,getRequestDispatcher:T,getRequestState:W,removeRequestAbortListener:Y}},13161:(a,b,c)=>{"use strict";c.d(b,{vq:()=>f.vq,kt:()=>j});var d=c(38421),e=c(91004),f=c(15251),g=c(97915);let h="-review",i=new Set(["kr","kiro"]);function j(a,b){let c="string"==typeof b?b.match(/\([^()]+\)\s*$/):null,d=c?c[0]:"",e=d?b.slice(0,c.index).trim():b,j=function(a,b,c){if(!a)return;let d=a.find(a=>a.id===b);if(d)return d;if(!i.has(c))return;let e=(0,g.Kq)(b);if(e!==b)return a.find(a=>a.id===e)}(f.vq[a],e,a);return j?.upstreamModelId?j.upstreamModelId+d:j?.id?j.id+d:"cx"===a&&"string"==typeof e&&e.endsWith(h)?e.slice(0,-h.length)+d:e+d}let k=Object.fromEntries(e.A.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias]));Object.fromEntries(Object.keys(d.xq).map(a=>[a,k[a]||a]))},14071:(a,b,c)=>{"use strict";c.d(b,{F:()=>f});var d=c(32655),e=c(38421);class f extends d.L{constructor(){super("xiaomi-tokenplan")}buildUrl(a,b,c=0,d=null){let f=(0,e.Yg)(d);return d?.runtimeTransport?.format==="claude"?`${f.replace(/\/v1\/?$/,"")}/anthropic/v1/messages`:`${f}/chat/completions`}}},14896:(a,b,c)=>{"use strict";var d=c(68531);c(26408),d.h.GEMINI,d.h.GEMINI_CLI,d.h.VERTEX,d.h.ANTIGRAVITY,d.h.OLLAMA,d.h.KIRO},15251:(a,b,c)=>{"use strict";c.d(b,{xq:()=>p,vq:()=>q,sr:()=>r});var d=c(91004),e=c(82689);let f={baseUrl:"",format:"openai",headers:{},auth:{header:"Authorization",scheme:"bearer",source:["accessToken","apiKey"]},forceStream:!1,urlSuffix:"",quirks:{},passthroughModels:!1,retry:e.cI,timeoutMs:e.pH,executor:"default"};var g=c(97915);let h={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},i=(...a)=>a.map(a=>({...h[a],type:"tts"})),j=i("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),k=i("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),l=["Zephyr","Puck","Charon","Kore","Fenrir","Leda","Orus","Aoede","Callirrhoe","Autonoe","Enceladus","Iapetus","Umbriel","Algieba","Despina","Erinome","Algenib","Rasalgethi","Laomedeia","Achernar","Alnilam","Schedar","Gacrux","Pulcherrima","Achird","Zubenelgenubi","Vindemiatrix","Sadachbia","Sadaltager","Sulafat"].map(a=>({id:a,name:a,type:"tts"})),m={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":k,"tts-1":j,"tts-1-hd":j},allVoices:k},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":k,"openai/tts-1":j,"openai/tts-1-hd":j},allVoices:k},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]},gemini:{models:[{id:"gemini-3.1-flash-tts-preview",name:"Gemini 3.1 Flash TTS",type:"tts"},{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",type:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",type:"tts"}],voices:{"gemini-3.1-flash-tts-preview":l,"gemini-2.5-flash-preview-tts":l,"gemini-2.5-pro-preview-tts":l},allVoices:l}},n=["clientId","clientSecret","tokenUrl"],o=new Set(["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","modelsFetcher","mediaPriority","hiddenKinds"]),p={},q={},r={},s={};for(let a of d.A){a.transport&&(p[a.id]=function(a,b){let c={...a};if(c.format||(c.format=f.format),b)for(let a of n)void 0===c[a]&&void 0!==b[a]&&(c[a]=b[a]);return c}(a.transport,a.oauth),a.transports&&(p[a.id].transports=a.transports)),void 0!==a.models&&(q[a.alias||a.id]=a.models.map(g.pk)),a.oauth&&(r[a.id]=a.oauth);let b={};for(let c of o)void 0!==a[c]&&(b[c]=a[c]);a.media&&Object.assign(b,a.media),Object.keys(b).length&&(s[a.id]=b)}Object.assign(q,function(){let a={};for(let[b,c]of Object.entries(m))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=m.openai.allVoices,a["openrouter-tts-voices"]=m.openrouter.allVoices,a}())},15529:(a,b,c)=>{var d=c(45654);c(41702),a.exports=d.mgf=d.mgf||{},d.mgf.mgf1=d.mgf1},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},16276:(a,b,c)=>{"use strict";c.d(b,{v:()=>e});var d=c(32655);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),{forgivingBase64:e,collectASequenceOfCodePoints:f,collectASequenceOfCodePointsFast:g,isomorphicDecode:h,removeASCIIWhitespace:i,removeChars:j}=c(70745),k=new TextEncoder,l=/^[-!#$%&'*+.^_|~A-Za-z0-9]+$/u,m=/[\u000A\u000D\u0009\u0020]/u,n=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/u;function o(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 p(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||q(a[e+1])&&q(a[e+2])?(c[d++]=r(a[e+1])<<4|r(a[e+2]),e+=2):c[d++]=37,++e}return b===d?c:c.subarray(0,d)}(k.encode(a))}function q(a){return a>=48&&a<=57||a>=65&&a<=70||a>=97&&a<=102}function r(a){return a>=48&&a<=57?a-48:(223&a)-55}function s(a){a=v(a,!0,!0);let b={position:0},c=g("/",a,b);if(0===c.length||!l.test(c)||b.position>=a.length)return"failure";b.position++;let d=g(";",a,b);if(0===(d=v(d,!1,!0)).length||!l.test(d))return"failure";let e=c.toLowerCase(),h=d.toLowerCase(),i={type:e,subtype:h,parameters:new Map,essence:`${e}/${h}`};for(;b.position<a.length;){b.position++,f(a=>m.test(a),a,b);let c=f(a=>";"!==a&&"="!==a,a,b);if(c=c.toLowerCase(),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=t(a,b,!0),g(";",a,b);else if(0===(d=v(d=g(";",a,b),!1,!0)).length)continue;0!==c.length&&l.test(c)&&(0===d.length||n.test(d))&&!i.parameters.has(c)&&i.parameters.set(c,d)}return i}function t(a,b,c=!1){let e=b.position,g="";for(d('"'===a[b.position]),b.position++;g+=f(a=>'"'!==a&&"\\"!==a,a,b),!(b.position>=a.length);){let c=a[b.position];if(b.position++,"\\"===c){if(b.position>=a.length){g+="\\";break}g+=a[b.position],b.position++}else{d('"'===c);break}}return c?g:a.slice(e,b.position)}function u(a){return 13===a||10===a||9===a||32===a}function v(a,b=!0,c=!0){return j(a,b,c,u)}a.exports={dataURLProcessor:function(a){d("data:"===a.protocol);let b=o(a,!0);b=b.slice(5);let c={position:0},f=g(",",b,c),j=f.length;if(f=i(f,!0,!0),c.position>=b.length)return"failure";c.position++;let k=p(b.slice(j+1));if(/;(?:\u0020*)base64$/ui.test(f)){if("failure"===(k=e(h(k))))return"failure";f=(f=(f=f.slice(0,-6)).replace(/(\u0020+)$/u,"")).slice(0,-1)}f.startsWith(";")&&(f="text/plain"+f);let l=s(f);return"failure"===l&&(l=s("text/plain;charset=US-ASCII")),{mimeType:l,body:k}},URLSerializer:o,stringPercentDecode:p,parseMIMEType:s,collectAnHTTPQuotedString:t,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+="=",l.test(c)||(c='"'+(c=c.replace(/[\\"]/ug,"\\$&"))+'"'),e+=c;return e},removeHTTPWhitespace:v,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:l}},16542:(a,b,c)=>{"use strict";c.d(b,{r:()=>h});var d=c(55511),e=c(93048),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()=>({}),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)}},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}
|
|
21
|
+
data: ${JSON.stringify(b)}
|
|
22
|
+
|
|
23
|
+
`}return(a=f(a),b===d.h.CLAUDE&&a&&a.type)?`event: ${a.type}
|
|
24
|
+
data: ${JSON.stringify(a)}
|
|
25
|
+
|
|
26
|
+
`:`data: ${JSON.stringify(a)}
|
|
27
|
+
|
|
28
|
+
`}},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(32655),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`}}},18762:(a,b,c)=>{"use strict";c(87350),c(68531),c(17438),c(99887),c(18101),c(73081),c(19016),c(39490),new TextEncoder},18922:(a,b,c)=>{"use strict";c.d(b,{ox:()=>p,pS:()=>q});var d=c(24081),e=c(50743);let f=null,g=0;async function h(){if(f&&Date.now()-g<5e3)return f;try{let{getSettings:a}=await Promise.resolve().then(c.bind(c,45874)),b=await a(),d="false"!==process.env.OBSERVABILITY_ENABLED;f={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{f={enabled:!1,maxRecords:200,batchSize:20,flushIntervalMs:5e3,maxJsonSize:5120,maxBuffer:5e3}}return g=Date.now(),f}let i=[],j=null,k=!1,l=0,m=0;function n(a,b){let c;if(null==a)return{};try{c=JSON.stringify(a)}catch{let b=String(a).substring(0,200);return{_truncated:!0,_originalSize:b.length,_preview:b,_error:"stringify_failed"}}return c.length>b?{_truncated:!0,_originalSize:c.length,_preview:c.substring(0,200)}:a}async function o(){if(!k&&0!==i.length){k=!0;try{for(;i.length>0;){let a=i.splice(0,i.length),b=await (0,d.c)(),c=await h();b.transaction(()=>{for(let d of a){d.id||(d.id=function(a){let b=new Date().toISOString(),c=Math.random().toString(36).substring(2,8),d=a?a.replace(/[^a-zA-Z0-9-]/g,"-"):"unknown";return`${b}-${c}-${d}`}(d.model)),d.timestamp||(d.timestamp=new Date().toISOString());let a={id:d.id,provider:d.provider||null,model:d.model||null,connectionId:d.connectionId||null,timestamp:d.timestamp,status:d.status||null,latency:d.latency||{},tokens:d.tokens||{},request:n(d.request,c.maxJsonSize),providerRequest:n(d.providerRequest,c.maxJsonSize),providerResponse:n(d.providerResponse,c.maxJsonSize),response:n(d.response,c.maxJsonSize)};b.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",[a.id,a.timestamp,a.provider,a.model,a.connectionId,a.status,(0,e.s)(a)])}b.run(`DELETE FROM requestDetails WHERE id IN (
|
|
29
|
+
SELECT id FROM requestDetails
|
|
30
|
+
WHERE id NOT IN (
|
|
31
|
+
SELECT id FROM requestDetails ORDER BY timestamp DESC LIMIT ?
|
|
32
|
+
)
|
|
33
|
+
)`,[c.maxRecords])})}}catch(a){console.error("[requestDetailsRepo] Batch write failed:",a)}finally{k=!1}}}async function p(a){let b=await h();if(!b.enabled)return;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","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=n(c.request,b),c.providerRequest=n(c.providerRequest,b),c.providerResponse=n(c.providerResponse,b),c.response=n(c.response,b),c.body&&(c.body=n(c.body,b)),c.raw&&(c.raw=n(c.raw,b)),c}(a,b.maxJsonSize);if(i.length>=b.maxBuffer){i.shift(),m++;let a=Date.now();a-l>6e4&&(console.warn(`[requestDetailsRepo] observability buffer full (${b.maxBuffer}); dropped ${m} record(s). Raise OBSERVABILITY_MAX_BUFFER or lower OBSERVABILITY_FLUSH_INTERVAL_MS.`),l=a,m=0)}i.push(c),i.length>=b.batchSize?(j&&(clearTimeout(j),j=null),o().catch(a=>console.error("[requestDetailsRepo] flush err:",a))):j||(j=setTimeout(()=>{j=null,o().catch(()=>{})},b.flushIntervalMs))}let q=async()=>{j&&(clearTimeout(j),j=null),i.length>0&&await o()};process.off("beforeExit",q),process.on("beforeExit",q)},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,makeCacheKey:l,normalizeHeaders:m,parseCacheControlHeader:n}=c(79468),{AbortError:o}=c(61448),p=()=>{};function q(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={rawHeaders:[],rawTrailers:[],resume(){j.resume()},pause(){j.pause()},get paused(){return j.isPaused()},get aborted(){return j.destroyed},get reason(){return j.errored},abort(a){j.destroy(a??new o)}};if(j.on("error",function(b){if(!this.readableEnded)if("function"==typeof a.onResponseError)a.onResponseError(k,b);else throw b}).on("close",function(){this.errored||a.onResponseEnd?.(k,{})}),a.onRequestStart?.(k,h),j.destroyed)return;let l={...c.headers,age:String(g)};i&&(l.warning='110 - "response is stale"'),k.rawHeaders=f.toRawHeaders(l),a.onResponseStart?.(k,c.statusCode,l,c.statusMessage),"HEAD"===b.method?j.destroy():j.on("data",function(b){a.onResponseData?.(k,b)})}function r(a,b,c,d,e,h,j){var k,l,m;let n;if(!j){if(h?.["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 o)}};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))}let r=Date.now();if(r>j.deleteAt)return a(e,new g(b,c,d));let s=Math.round((r-j.cachedAt)/1e3);if(h?.["max-age"]&&s>=h["max-age"])return a(e,d);let t=(k=j,l=h,(n=Date.now())>k.staleAt?!l?.["max-stale"]||n>k.staleAt+1e3*l["max-stale"]:!!l?.["min-fresh"]&&k.staleAt-n<=1e3*l["min-fresh"]),u=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(t||u){let k;if(f.isStream(e.body)&&0!==f.bodyLength(e.body))return a(e,new g(b,c,d));if(!u&&(m=j,(k=m.cacheControlDirectives?.["stale-while-revalidate"])&&Date.now()<=m.staleAt+1e3*k))return q(d,e,j,s,null,!0),queueMicrotask(()=>{let d={...e.headers,"if-modified-since":new Date(j.cachedAt).toUTCString()};if(j.etag&&(d["if-none-match"]=j.etag),j.vary)for(let a in j.vary)null!=j.vary[a]&&(d[a]=j.vary[a]);a({...e,headers:d},new g(b,c,{onRequestStart(){},onRequestUpgrade(){},onResponseStart(){},onResponseData(){},onResponseEnd(){},onResponseError(){}}))}),!0;let l=!1,n=j.cacheControlDirectives["stale-if-error"]??h?.["stale-if-error"];n&&(l=r<j.staleAt+1e3*n);let o={...e.headers,"if-modified-since":new Date(j.cachedAt).toUTCString()};if(j.etag&&(o["if-none-match"]=j.etag),j.vary)for(let a in j.vary)null!=j.vary[a]&&(o[a]=j.vary[a]);return a({...e,headers:o},new i((a,b)=>{a?q(d,e,j,s,b,t):f.isStream(j.body)&&j.body.on("error",p).destroy()},new g(b,c,d),l))}f.isStream(e.body)&&e.body.on("error",p).destroy(),q(d,e,j,s,null,!1)}a.exports=(a={})=>{let{store:b=new h,methods:c=["GET"],cacheByDefault:d,type:e="shared",origins:g}=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 i="opts.origins";if(void 0!==g){if(!Array.isArray(g))throw TypeError(`expected ${i} to be an array or undefined, got ${typeof g}`);for(let a=0;a<g.length;a++){let b=g[a];if("string"!=typeof b&&!(b instanceof RegExp))throw TypeError(`expected ${i}[${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 o={store:b,methods:c,cacheByDefault:d,type:e},p=f.safeHTTPMethods.filter(a=>!1===c.includes(a));return a=>(c,d)=>{if(!c.origin||p.includes(c.method))return a(c,d);if(void 0!==g){let b=c.origin.toString().toLowerCase(),e=!1;for(let a=0;a<g.length;a++){let c=g[a];if("string"==typeof c){if(c.toLowerCase()===b){e=!0;break}}else if(c.test(b)){e=!0;break}}if(!e)return a(c,d)}c={...c,headers:m(c)};let e=c.headers?.["cache-control"]?n(c.headers["cache-control"]):void 0;if(e?.["no-store"])return a(c,d);let f=l(c),h=b.get(f);return h&&"function"==typeof h.then?h.then(b=>r(a,o,f,d,c,e,b)):r(a,o,f,d,c,e,h)}}},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.e7ada387.json"},20012:(a,b,c)=>{"use strict";c.d(b,{Tl:()=>j});var d=c(26762),e=c(38528);let f={usageUrl:(0,e.U)("codex").url,resetCreditsUrl:(0,e.U)("codex").resetCreditsUrl,resetCreditsConsumeUrl:(0,e.U)("codex").resetCreditsConsumeUrl};function g(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function h(a){let b=Math.max(0,Math.min(100,(0,e.IQ)(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:(0,e.eZ)(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function i(a,b,c){let d=g(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,i=!1;return e&&(a[b?`${b}_session`:"session"]=h(e),i=!0),f&&(a[b?`${b}_weekly`:"weekly"]=h(f),i=!0),i}async function j(a,b=null){try{let c=await (0,d.Fm)(f.usageUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,Accept:"application/json"}},b);if(!c.ok)return{message:`Codex connected. Usage API temporarily unavailable (${c.status}).`};let h=await c.json(),j=h.rate_limit||h.rate_limits||h.rate_limits_by_limit_id?.codex||{},k=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}(h),l=Math.max(0,(0,e.IQ)(h.rate_limit_reset_credits?.available_count,0)),m={};return i(m,"",j),i(m,"review",k),{plan:h.plan_type||h.summary?.plan||"unknown",limitReached:g(j)?.limit_reached||!1,reviewLimitReached:g(k)?.limit_reached||!1,resetCredits:{availableCount:l},quotas:m}}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});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(`
|
|
34
|
+
PRAGMA journal_mode = WAL;
|
|
35
|
+
PRAGMA synchronous = NORMAL;
|
|
36
|
+
PRAGMA temp_store = memory;
|
|
37
|
+
PRAGMA optimize;
|
|
38
|
+
|
|
39
|
+
CREATE TABLE IF NOT EXISTS cacheInterceptorV3 (
|
|
40
|
+
-- Data specific to us
|
|
41
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
42
|
+
url TEXT NOT NULL,
|
|
43
|
+
method TEXT NOT NULL,
|
|
44
|
+
|
|
45
|
+
-- Data returned to the interceptor
|
|
46
|
+
body BUF NULL,
|
|
47
|
+
deleteAt INTEGER NOT NULL,
|
|
48
|
+
statusCode INTEGER NOT NULL,
|
|
49
|
+
statusMessage TEXT NOT NULL,
|
|
50
|
+
headers TEXT NULL,
|
|
51
|
+
cacheControlDirectives TEXT NULL,
|
|
52
|
+
etag TEXT NULL,
|
|
53
|
+
vary TEXT NULL,
|
|
54
|
+
cachedAt INTEGER NOT NULL,
|
|
55
|
+
staleAt INTEGER NOT NULL
|
|
56
|
+
);
|
|
57
|
+
|
|
58
|
+
CREATE INDEX IF NOT EXISTS idx_cacheInterceptorV3_getValuesQuery ON cacheInterceptorV3(url, method, deleteAt);
|
|
59
|
+
CREATE INDEX IF NOT EXISTS idx_cacheInterceptorV3_deleteByUrlQuery ON cacheInterceptorV3(deleteAt);
|
|
60
|
+
`),this.#j=this.#i.prepare(`
|
|
61
|
+
SELECT
|
|
62
|
+
id,
|
|
63
|
+
body,
|
|
64
|
+
deleteAt,
|
|
65
|
+
statusCode,
|
|
66
|
+
statusMessage,
|
|
67
|
+
headers,
|
|
68
|
+
etag,
|
|
69
|
+
cacheControlDirectives,
|
|
70
|
+
vary,
|
|
71
|
+
cachedAt,
|
|
72
|
+
staleAt
|
|
73
|
+
FROM cacheInterceptorV3
|
|
74
|
+
WHERE
|
|
75
|
+
url = ?
|
|
76
|
+
AND method = ?
|
|
77
|
+
ORDER BY
|
|
78
|
+
deleteAt ASC
|
|
79
|
+
`),this.#k=this.#i.prepare(`
|
|
80
|
+
UPDATE cacheInterceptorV3 SET
|
|
81
|
+
body = ?,
|
|
82
|
+
deleteAt = ?,
|
|
83
|
+
statusCode = ?,
|
|
84
|
+
statusMessage = ?,
|
|
85
|
+
headers = ?,
|
|
86
|
+
etag = ?,
|
|
87
|
+
cacheControlDirectives = ?,
|
|
88
|
+
vary = ?,
|
|
89
|
+
cachedAt = ?,
|
|
90
|
+
staleAt = ?
|
|
91
|
+
WHERE
|
|
92
|
+
id = ?
|
|
93
|
+
`),this.#l=this.#i.prepare(`
|
|
94
|
+
INSERT INTO cacheInterceptorV3 (
|
|
95
|
+
url,
|
|
96
|
+
method,
|
|
97
|
+
body,
|
|
98
|
+
deleteAt,
|
|
99
|
+
statusCode,
|
|
100
|
+
statusMessage,
|
|
101
|
+
headers,
|
|
102
|
+
etag,
|
|
103
|
+
cacheControlDirectives,
|
|
104
|
+
vary,
|
|
105
|
+
cachedAt,
|
|
106
|
+
staleAt
|
|
107
|
+
) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
108
|
+
`),this.#n=this.#i.prepare("DELETE FROM cacheInterceptorV3 WHERE url = ?"),this.#o=this.#i.prepare("SELECT COUNT(*) AS total FROM cacheInterceptorV3"),this.#m=this.#i.prepare("DELETE FROM cacheInterceptorV3 WHERE deleteAt <= ?"),this.#p=this.#h===1/0?null:this.#i.prepare(`
|
|
109
|
+
DELETE FROM cacheInterceptorV3
|
|
110
|
+
WHERE id IN (
|
|
111
|
+
SELECT
|
|
112
|
+
id
|
|
113
|
+
FROM cacheInterceptorV3
|
|
114
|
+
ORDER BY cachedAt ASC
|
|
115
|
+
LIMIT ?
|
|
116
|
+
)
|
|
117
|
+
`)}close(){this.#i.close()}get(a){f(a);let b=this.#q(a);return b?{body:b.body?Buffer.from(b.body.buffer,b.body.byteOffset,b.body.byteLength):void 0,statusCode:b.statusCode,statusMessage:b.statusMessage,headers:b.headers?JSON.parse(b.headers):void 0,etag:b.etag?b.etag:void 0,vary:b.vary?JSON.parse(b.vary):void 0,cacheControlDirectives:b.cacheControlDirectives?JSON.parse(b.cacheControlDirectives):void 0,cachedAt:b.cachedAt,staleAt:b.staleAt,deleteAt:b.deleteAt}:void 0}set(a,b){f(a);let c=this.#r(a),d=Array.isArray(b.body)?Buffer.concat(b.body):b.body,e=d?.byteLength;if(e&&e>this.#g)return;let g=this.#q(a,!0);g?this.#k.run(d,b.deleteAt,b.statusCode,b.statusMessage,b.headers?JSON.stringify(b.headers):null,b.etag?b.etag:null,b.cacheControlDirectives?JSON.stringify(b.cacheControlDirectives):null,b.vary?JSON.stringify(b.vary):null,b.cachedAt,b.staleAt,g.id):(this.#l.run(c,a.method,d,b.deleteAt,b.statusCode,b.statusMessage,b.headers?JSON.stringify(b.headers):null,b.etag?b.etag:null,b.cacheControlDirectives?JSON.stringify(b.cacheControlDirectives):null,b.vary?JSON.stringify(b.vary):null,b.cachedAt,b.staleAt),this.#s())}createWriteStream(a,b){f(a),g(b);let c=0,d=[],h=this;return new e({decodeStrings:!0,write(a,b,e){(c+=a.byteLength)<=h.#g?d.push(a):this.destroy(),e()},final(c){h.set(a,{...b,body:d}),c()}})}delete(a){if("object"!=typeof a)throw TypeError(`expected key to be object, got ${typeof a}`);this.#n.run(this.#r(a))}#s(){if(Number.isFinite(this.#h)&&this.size<=this.#h)return 0;{let a=this.#m.run(Date.now()).changes;if(a)return a}{let a=this.#p?.run(Math.max(Math.floor(.1*this.#h),1)).changes;if(a)return a}return 0}get size(){let{total:a}=this.#o.get();return a}#r(a){return`${a.origin}/${a.path}`}#q(a,b=!1){let c=this.#r(a),{headers:d,method:e}=a,f=this.#j.all(c,e);if(0===f.length)return;let g=Date.now();for(let a of f){if(g>=a.deleteAt&&!b)continue;let c=!0;if(a.vary){let b=JSON.parse(a.vary);for(let a in b)if(!function(a,b){return null==a&&null==b||(null!=a||null==b)&&(null==a||null!=b)&&(Array.isArray(a)&&Array.isArray(b)?a.length===b.length&&a.every((a,c)=>a===b[c]):a===b)}(d[a],b[a])){c=!1;break}}if(c)return a}}}},20639:(a,b,c)=>{"use strict";c.d(b,{BA:()=>v,MG:()=>q,kk:()=>s,lO:()=>w,ws:()=>u,wu:()=>r});var d=c(77598),e=c.n(d),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(53859);let k="aes-256-gcm",l="enc:v1:",m=i().join(j.nJ,"auth","data-key"),n="switchboard-at-rest-v1",o=null;function p(){if(o)return o;try{let a=g().readFileSync(m);if(32===a.length)return o=a}catch{}try{let a=i().join(j.nJ,"machine-id"),b=n;try{b=g().readFileSync(a,"utf8").trim()+n}catch{}o=b===n?e().randomBytes(32):e().createHash("sha256").update(b).digest()}catch{o=e().randomBytes(32)}try{g().mkdirSync(i().dirname(m),{recursive:!0,mode:448}),g().writeFileSync(m,o,{mode:384})}catch{}return o}function q(a){if(null==a||""===a||"string"!=typeof a||a.startsWith(l))return a;let b=p(),c=e().randomBytes(12),d=e().createCipheriv(k,b,c),f=Buffer.concat([d.update(a,"utf8"),d.final()]),g=d.getAuthTag();return`${l}${c.toString("hex")}:${g.toString("hex")}:${f.toString("hex")}`}function r(a){if(null==a||""===a||"string"!=typeof a||!a.startsWith(l))return a;try{let[b,c,d]=a.slice(l.length).split(":");if(!b||!c||!d)return null;let f=p(),g=e().createDecipheriv(k,f,Buffer.from(b,"hex"));return g.setAuthTag(Buffer.from(c,"hex")),g.update(Buffer.from(d,"hex"),void 0,"utf8")+g.final("utf8")}catch{return null}}function s(a){return e().createHash("sha256").update(`sb-key:${a}`).digest("hex")}function t(a){return a&&"string"==typeof a?a.length<=12?a.slice(0,4)+"…":a.slice(0,10)+"…":""}function u(a){return`v1:${t(a)}:${s(a)}`}function v(a){if(!a||"string"!=typeof a)return{prefix:"",hash:null,legacy:!0,raw:a};if(a.startsWith("v1:")){let b=a.split(":");if(b.length>=3)return{prefix:b[1],hash:b.slice(2).join(":"),legacy:!1,raw:null}}return{prefix:t(a),hash:null,legacy:!0,raw:a}}function w(a,b){if("string"!=typeof a||"string"!=typeof b)return!1;let c=e().createHash("sha256").update(a).digest(),d=e().createHash("sha256").update(b).digest();return e().timingSafeEqual(c,d)}},20830:(a,b,c)=>{"use strict";c(82689)},21523:(a,b,c)=>{"use strict";let{kMockCallHistoryAddLog:d}=c(80830),{InvalidArgumentError:e}=c(61448);function f(a,b,c,d,f){switch(b.operator){case"OR":return d.push(...c(a,f)),d;case"AND":return c(a,d);default:throw new e("options.operator must to be a case insensitive string equal to 'OR' or 'AND'")}}function g(a){return(b,c=this.logs)=>{if("string"==typeof b||null==b)return c.filter(c=>c[a]===b);if(b instanceof RegExp)return c.filter(c=>b.test(c[a]));throw new e(`${a} parameter should be one of string, regexp, undefined or null`)}}class h{constructor(a={}){this.body=a.body,this.headers=a.headers,this.method=a.method;const b=function(a){try{let b=new URL(a.path,a.origin);if(0!==b.search.length)return b;return b.search=new URLSearchParams(a.query).toString(),b}catch(a){throw new e("An error occurred when computing MockCallHistoryLog.url",{cause:a})}}(a);this.fullUrl=b.toString(),this.origin=b.origin,this.path=b.pathname,this.searchParams=Object.fromEntries(b.searchParams),this.protocol=b.protocol,this.host=b.host,this.port=b.port,this.hash=b.hash}toMap(){return new Map([["protocol",this.protocol],["host",this.host],["port",this.port],["origin",this.origin],["path",this.path],["hash",this.hash],["searchParams",this.searchParams],["fullUrl",this.fullUrl],["method",this.method],["body",this.body],["headers",this.headers]])}toString(){let a="";return this.toMap().forEach((b,c)=>{("string"==typeof b||null==b)&&(a=`${a}${c}->${b}|`),("object"==typeof b&&null!==b||Array.isArray(b))&&(a=`${a}${c}->${JSON.stringify(b)}|`)}),a.slice(0,-1)}}class i{logs=[];calls(){return this.logs}firstCall(){return this.logs.at(0)}lastCall(){return this.logs.at(-1)}nthCall(a){if("number"!=typeof a)throw new e("nthCall must be called with a number");if(!Number.isInteger(a))throw new e("nthCall must be called with an integer");if(1!==Math.sign(a))throw new e("nthCall must be called with a positive value. use firstCall or lastCall instead");return this.logs.at(a-1)}filterCalls(a,b){if(0===this.logs.length)return this.logs;if("function"==typeof a)return this.logs.filter(a);if(a instanceof RegExp)return this.logs.filter(b=>a.test(b.toString()));if("object"==typeof a&&null!==a){if(0===Object.keys(a).length)return this.logs;let c={operator:"OR",...function(a={}){let b={};if("operator"in a){if("string"!=typeof a.operator||"OR"!==a.operator.toUpperCase()&&"AND"!==a.operator.toUpperCase())throw new e("options.operator must to be a case insensitive string equal to 'OR' or 'AND'");return{...b,operator:a.operator.toUpperCase()}}return b}(b)},d="AND"===c.operator?this.logs:[];return"protocol"in a&&(d=f(a.protocol,c,this.filterCallsByProtocol,d,this.logs)),"host"in a&&(d=f(a.host,c,this.filterCallsByHost,d,this.logs)),"port"in a&&(d=f(a.port,c,this.filterCallsByPort,d,this.logs)),"origin"in a&&(d=f(a.origin,c,this.filterCallsByOrigin,d,this.logs)),"path"in a&&(d=f(a.path,c,this.filterCallsByPath,d,this.logs)),"hash"in a&&(d=f(a.hash,c,this.filterCallsByHash,d,this.logs)),"fullUrl"in a&&(d=f(a.fullUrl,c,this.filterCallsByFullUrl,d,this.logs)),"method"in a&&(d=f(a.method,c,this.filterCallsByMethod,d,this.logs)),[...new Set(d)]}throw new e("criteria parameter should be one of function, regexp, or object")}filterCallsByProtocol=g.call(this,"protocol");filterCallsByHost=g.call(this,"host");filterCallsByPort=g.call(this,"port");filterCallsByOrigin=g.call(this,"origin");filterCallsByPath=g.call(this,"path");filterCallsByHash=g.call(this,"hash");filterCallsByFullUrl=g.call(this,"fullUrl");filterCallsByMethod=g.call(this,"method");clear(){this.logs=[]}[d](a){let b=new h(a);return this.logs.push(b),b}*[Symbol.iterator](){for(let a of this.calls())yield a}}a.exports.MockCallHistory=i,a.exports.MockCallHistoryLog=h},22164:(a,b,c)=>{var d=c(45654);c(32e3),c(29984),c(37691),c(33889);var e=c(24547),f=e.publicKeyValidator,g=e.privateKeyValidator;if(void 0===h)var h=d.jsbn.BigInteger;var i=d.util.ByteBuffer,j="u"<typeof Buffer?Uint8Array:Buffer;d.pki=d.pki||{},a.exports=d.pki.ed25519=d.ed25519=d.ed25519||{};var k=d.ed25519;function l(a){var b=a.message;if(b instanceof Uint8Array||b instanceof j)return b;var c=a.encoding;if(void 0===b)if(a.md)b=a.md.digest().getBytes(),c="binary";else throw TypeError('"options.message" or "options.md" not specified.');if("string"==typeof b&&!c)throw TypeError('"options.encoding" must be "binary" or "utf8".');if("string"==typeof b){if("u">typeof Buffer)return Buffer.from(b,c);b=new i(b,c)}else if(!(b instanceof i))throw TypeError('"options.message" must be a node.js Buffer, a Uint8Array, a forge ByteBuffer, or a string with "options.encoding" specifying its encoding.');for(var d=new j(b.length()),e=0;e<d.length;++e)d[e]=b.at(e);return d}k.constants={},k.constants.PUBLIC_KEY_BYTE_LENGTH=32,k.constants.PRIVATE_KEY_BYTE_LENGTH=64,k.constants.SEED_BYTE_LENGTH=32,k.constants.SIGN_BYTE_LENGTH=64,k.constants.HASH_BYTE_LENGTH=64,k.generateKeyPair=function(a){var b=(a=a||{}).seed;if(void 0===b)b=d.random.getBytesSync(k.constants.SEED_BYTE_LENGTH);else if("string"==typeof b){if(b.length!==k.constants.SEED_BYTE_LENGTH)throw TypeError('"seed" must be '+k.constants.SEED_BYTE_LENGTH+" bytes in length.")}else if(!(b instanceof Uint8Array))throw TypeError('"seed" must be a node.js Buffer, Uint8Array, or a binary string.');b=l({message:b,encoding:"binary"});for(var c=new j(k.constants.PUBLIC_KEY_BYTE_LENGTH),e=new j(k.constants.PRIVATE_KEY_BYTE_LENGTH),f=0;f<32;++f)e[f]=b[f];return function(a,b){var c,d=[J(),J(),J(),J()],e=u(b,32);for(e[0]&=248,e[31]&=127,e[31]|=64,F(d,e),z(a,d),c=0;c<32;++c)b[c+32]=a[c]}(c,e),{publicKey:c,privateKey:e}},k.privateKeyFromAsn1=function(a){var b={},c=[];if(!d.asn1.validate(a,g,b,c)){var e=Error("Invalid Key.");throw e.errors=c,e}var f=d.asn1.derToOid(b.privateKeyOid),h=d.oids.EdDSA25519;if(f!==h)throw Error('Invalid OID "'+f+'"; OID must be "'+h+'".');var i=b.privateKey;return{privateKeyBytes:l({message:d.asn1.fromDer(i).value,encoding:"binary"})}},k.publicKeyFromAsn1=function(a){var b={},c=[];if(!d.asn1.validate(a,f,b,c)){var e=Error("Invalid Key.");throw e.errors=c,e}var g=d.asn1.derToOid(b.publicKeyOid),h=d.oids.EdDSA25519;if(g!==h)throw Error('Invalid OID "'+g+'"; OID must be "'+h+'".');var i=b.ed25519PublicKey;if(i.length!==k.constants.PUBLIC_KEY_BYTE_LENGTH)throw Error("Key length is invalid.");return l({message:i,encoding:"binary"})},k.publicKeyFromPrivateKey=function(a){var b=l({message:(a=a||{}).privateKey,encoding:"binary"});if(b.length!==k.constants.PRIVATE_KEY_BYTE_LENGTH)throw TypeError('"options.privateKey" must have a byte length of '+k.constants.PRIVATE_KEY_BYTE_LENGTH);for(var c=new j(k.constants.PUBLIC_KEY_BYTE_LENGTH),d=0;d<c.length;++d)c[d]=b[32+d];return c},k.sign=function(a){var b=l(a=a||{}),c=l({message:a.privateKey,encoding:"binary"});if(c.length===k.constants.SEED_BYTE_LENGTH)c=k.generateKeyPair({seed:c}).privateKey;else if(c.length!==k.constants.PRIVATE_KEY_BYTE_LENGTH)throw TypeError('"options.privateKey" must have a byte length of '+k.constants.SEED_BYTE_LENGTH+" or "+k.constants.PRIVATE_KEY_BYTE_LENGTH);var d=new j(k.constants.SIGN_BYTE_LENGTH+b.length);!function(a,b,c,d){var e,f,g=new Float64Array(64),h=[J(),J(),J(),J()],i=u(d,32);for(i[0]&=248,i[31]&=127,i[31]|=64,e=0;e<c;++e)a[64+e]=b[e];for(e=0;e<32;++e)a[32+e]=i[32+e];var j=u(a.subarray(32),c+32);for(w(j),F(h,j),z(a,h),e=32;e<64;++e)a[e]=d[e];var k=u(a,c+64);for(w(k),e=32;e<64;++e)g[e]=0;for(e=0;e<32;++e)g[e]=j[e];for(e=0;e<32;++e)for(f=0;f<32;f++)g[e+f]+=k[e]*i[f];v(a.subarray(32),g)}(d,b,b.length,c);for(var e=new j(k.constants.SIGN_BYTE_LENGTH),f=0;f<e.length;++f)e[f]=d[f];return e},k.verify=function(a){var b,c=l(a=a||{});if(void 0===a.signature)throw TypeError('"options.signature" must be a node.js Buffer, a Uint8Array, a forge ByteBuffer, or a binary string.');var d=l({message:a.signature,encoding:"binary"});if(d.length!==k.constants.SIGN_BYTE_LENGTH)throw TypeError('"options.signature" must have a byte length of '+k.constants.SIGN_BYTE_LENGTH);var e=l({message:a.publicKey,encoding:"binary"});if(e.length!==k.constants.PUBLIC_KEY_BYTE_LENGTH)throw TypeError('"options.publicKey" must have a byte length of '+k.constants.PUBLIC_KEY_BYTE_LENGTH);var f=new j(k.constants.SIGN_BYTE_LENGTH+c.length),g=new j(k.constants.SIGN_BYTE_LENGTH+c.length);for(b=0;b<k.constants.SIGN_BYTE_LENGTH;++b)f[b]=d[b];for(b=0;b<c.length;++b)f[b+k.constants.SIGN_BYTE_LENGTH]=c[b];return function(a,b,c,d){var e,f,g,h,i,k,l,p,q,r,v=new j(32),y=[J(),J(),J(),J()],A=[J(),J(),J(),J()];if(c<64||(e=A,f=d,g=J(),h=J(),i=J(),k=J(),l=J(),p=J(),q=J(),(G(e[2],n),function(a,b){var c;for(c=0;c<16;++c)a[c]=b[2*c]+(b[2*c+1]<<8);a[15]&=32767}(e[1],f),function(a,b){M(a,b,b)}(i,e[1]),M(k,i,o),L(i,i,e[2]),K(k,e[2],k),function(a,b){M(a,b,b)}(l,k),function(a,b){M(a,b,b)}(p,l),M(q,p,l),M(g,q,i),M(g,g,k),function(a,b){var c,d=J();for(c=0;c<16;++c)d[c]=b[c];for(c=250;c>=0;--c)(function(a,b){M(a,b,b)})(d,d),1!==c&&M(d,d,b);for(c=0;c<16;++c)a[c]=d[c]}(g,g),M(g,g,i),M(g,g,k),M(g,g,k),M(e[0],g,k),function(a,b){M(a,b,b)}(h,e[0]),M(h,h,k),B(h,i)&&M(e[0],e[0],t),function(a,b){M(a,b,b)}(h,e[0]),M(h,h,k),B(h,i))?-1:(D(e[0])===f[31]>>7&&L(e[0],m,e[0]),M(e[3],e[0],e[1]),0))||!function(a){var b;for(b=31;b>=0;--b){if(a[32+b]<s[b])return!0;if(a[32+b]>s[b])break}return!1}(b))return -1;for(r=0;r<c;++r)a[r]=b[r];for(r=0;r<32;++r)a[r+32]=d[r];var H=u(a,c);if(w(H),E(y,A,H),F(A,b.subarray(32)),x(y,A),z(v,y),c-=64,function(a,b,c,d){return C(a,b,c,d,32)}(b,0,v,0)){for(r=0;r<c;++r)a[r]=0;return -1}for(r=0;r<c;++r)a[r]=b[r+64];return c}(g,f,f.length,e)>=0};var m=J(),n=J([1]),o=J([30883,4953,19914,30187,55467,16705,2637,112,59544,30585,16505,36039,65139,11119,27886,20995]),p=J([61785,9906,39828,60374,45398,33411,5274,224,53552,61171,33010,6542,64743,22239,55772,9222]),q=J([54554,36645,11616,51542,42930,38181,51040,26924,56412,64982,57905,49316,21502,52590,14035,8553]),r=J([26200,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214,26214]),s=new Float64Array([237,211,245,92,26,99,18,88,214,156,247,162,222,249,222,20,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,16]),t=J([41136,18958,6951,50414,58488,44335,6150,12099,55207,15867,153,11085,57099,20417,9344,11139]);function u(a,b){var c=d.md.sha512.create(),e=new i(a);c.update(e.getBytes(b),"binary");var f=c.digest().getBytes();if("u">typeof Buffer)return Buffer.from(f,"binary");for(var g=new j(k.constants.HASH_BYTE_LENGTH),h=0;h<64;++h)g[h]=f.charCodeAt(h);return g}function v(a,b){var c,d,e,f;for(d=63;d>=32;--d){for(c=0,e=d-32,f=d-12;e<f;++e)b[e]+=c-16*b[d]*s[e-(d-32)],c=b[e]+128>>8,b[e]-=256*c;b[e]+=c,b[d]=0}for(e=0,c=0;e<32;++e)b[e]+=c-(b[31]>>4)*s[e],c=b[e]>>8,b[e]&=255;for(e=0;e<32;++e)b[e]-=c*s[e];for(d=0;d<32;++d)b[d+1]+=b[d]>>8,a[d]=255&b[d]}function w(a){for(var b=new Float64Array(64),c=0;c<64;++c)b[c]=a[c],a[c]=0;v(a,b)}function x(a,b){var c=J(),d=J(),e=J(),f=J(),g=J(),h=J(),i=J(),j=J(),k=J();L(c,a[1],a[0]),L(k,b[1],b[0]),M(c,c,k),K(d,a[0],a[1]),K(k,b[0],b[1]),M(d,d,k),M(e,a[3],b[3]),M(e,e,p),M(f,a[2],b[2]),K(f,f,f),L(g,d,c),L(h,f,e),K(i,f,e),K(j,d,c),M(a[0],g,h),M(a[1],j,i),M(a[2],i,h),M(a[3],g,j)}function y(a,b,c){for(var d=0;d<4;++d)I(a[d],b[d],c)}function z(a,b){var c=J(),d=J(),e=J();(function(a,b){var c,d=J();for(c=0;c<16;++c)d[c]=b[c];for(c=253;c>=0;--c)(function(a,b){M(a,b,b)})(d,d),2!==c&&4!==c&&M(d,d,b);for(c=0;c<16;++c)a[c]=d[c]})(e,b[2]),M(c,b[0],e),M(d,b[1],e),A(a,d),a[31]^=D(c)<<7}function A(a,b){var c,d,e,f=J(),g=J();for(c=0;c<16;++c)g[c]=b[c];for(H(g),H(g),H(g),d=0;d<2;++d){for(c=1,f[0]=g[0]-65517;c<15;++c)f[c]=g[c]-65535-(f[c-1]>>16&1),f[c-1]&=65535;f[15]=g[15]-32767-(f[14]>>16&1),e=f[15]>>16&1,f[14]&=65535,I(g,f,1-e)}for(c=0;c<16;c++)a[2*c]=255&g[c],a[2*c+1]=g[c]>>8}function B(a,b){var c=new j(32),d=new j(32);return A(c,a),A(d,b),C(c,0,d,0,32)}function C(a,b,c,d,e){var f,g=0;for(f=0;f<e;++f)g|=a[b+f]^c[d+f];return(1&g-1>>>8)-1}function D(a){var b=new j(32);return A(b,a),1&b[0]}function E(a,b,c){var d,e;for(G(a[0],m),G(a[1],n),G(a[2],n),G(a[3],m),e=255;e>=0;--e)y(a,b,d=c[e/8|0]>>(7&e)&1),x(b,a),x(a,a),y(a,b,d)}function F(a,b){var c=[J(),J(),J(),J()];G(c[0],q),G(c[1],r),G(c[2],n),M(c[3],q,r),E(a,c,b)}function G(a,b){var c;for(c=0;c<16;c++)a[c]=0|b[c]}function H(a){var b,c,d=1;for(b=0;b<16;++b)d=Math.floor((c=a[b]+d+65535)/65536),a[b]=c-65536*d;a[0]+=d-1+37*(d-1)}function I(a,b,c){for(var d,e=~(c-1),f=0;f<16;++f)d=e&(a[f]^b[f]),a[f]^=d,b[f]^=d}function J(a){var b,c=new Float64Array(16);if(a)for(b=0;b<a.length;++b)c[b]=a[b];return c}function K(a,b,c){for(var d=0;d<16;++d)a[d]=b[d]+c[d]}function L(a,b,c){for(var d=0;d<16;++d)a[d]=b[d]-c[d]}function M(a,b,c){var d,e,f=0,g=0,h=0,i=0,j=0,k=0,l=0,m=0,n=0,o=0,p=0,q=0,r=0,s=0,t=0,u=0,v=0,w=0,x=0,y=0,z=0,A=0,B=0,C=0,D=0,E=0,F=0,G=0,H=0,I=0,J=0,K=c[0],L=c[1],M=c[2],N=c[3],O=c[4],P=c[5],Q=c[6],R=c[7],S=c[8],T=c[9],U=c[10],V=c[11],W=c[12],X=c[13],Y=c[14],Z=c[15];f+=(d=b[0])*K,g+=d*L,h+=d*M,i+=d*N,j+=d*O,k+=d*P,l+=d*Q,m+=d*R,n+=d*S,o+=d*T,p+=d*U,q+=d*V,r+=d*W,s+=d*X,t+=d*Y,u+=d*Z,g+=(d=b[1])*K,h+=d*L,i+=d*M,j+=d*N,k+=d*O,l+=d*P,m+=d*Q,n+=d*R,o+=d*S,p+=d*T,q+=d*U,r+=d*V,s+=d*W,t+=d*X,u+=d*Y,v+=d*Z,h+=(d=b[2])*K,i+=d*L,j+=d*M,k+=d*N,l+=d*O,m+=d*P,n+=d*Q,o+=d*R,p+=d*S,q+=d*T,r+=d*U,s+=d*V,t+=d*W,u+=d*X,v+=d*Y,w+=d*Z,i+=(d=b[3])*K,j+=d*L,k+=d*M,l+=d*N,m+=d*O,n+=d*P,o+=d*Q,p+=d*R,q+=d*S,r+=d*T,s+=d*U,t+=d*V,u+=d*W,v+=d*X,w+=d*Y,x+=d*Z,j+=(d=b[4])*K,k+=d*L,l+=d*M,m+=d*N,n+=d*O,o+=d*P,p+=d*Q,q+=d*R,r+=d*S,s+=d*T,t+=d*U,u+=d*V,v+=d*W,w+=d*X,x+=d*Y,y+=d*Z,k+=(d=b[5])*K,l+=d*L,m+=d*M,n+=d*N,o+=d*O,p+=d*P,q+=d*Q,r+=d*R,s+=d*S,t+=d*T,u+=d*U,v+=d*V,w+=d*W,x+=d*X,y+=d*Y,z+=d*Z,l+=(d=b[6])*K,m+=d*L,n+=d*M,o+=d*N,p+=d*O,q+=d*P,r+=d*Q,s+=d*R,t+=d*S,u+=d*T,v+=d*U,w+=d*V,x+=d*W,y+=d*X,z+=d*Y,A+=d*Z,m+=(d=b[7])*K,n+=d*L,o+=d*M,p+=d*N,q+=d*O,r+=d*P,s+=d*Q,t+=d*R,u+=d*S,v+=d*T,w+=d*U,x+=d*V,y+=d*W,z+=d*X,A+=d*Y,B+=d*Z,n+=(d=b[8])*K,o+=d*L,p+=d*M,q+=d*N,r+=d*O,s+=d*P,t+=d*Q,u+=d*R,v+=d*S,w+=d*T,x+=d*U,y+=d*V,z+=d*W,A+=d*X,B+=d*Y,C+=d*Z,o+=(d=b[9])*K,p+=d*L,q+=d*M,r+=d*N,s+=d*O,t+=d*P,u+=d*Q,v+=d*R,w+=d*S,x+=d*T,y+=d*U,z+=d*V,A+=d*W,B+=d*X,C+=d*Y,D+=d*Z,p+=(d=b[10])*K,q+=d*L,r+=d*M,s+=d*N,t+=d*O,u+=d*P,v+=d*Q,w+=d*R,x+=d*S,y+=d*T,z+=d*U,A+=d*V,B+=d*W,C+=d*X,D+=d*Y,E+=d*Z,q+=(d=b[11])*K,r+=d*L,s+=d*M,t+=d*N,u+=d*O,v+=d*P,w+=d*Q,x+=d*R,y+=d*S,z+=d*T,A+=d*U,B+=d*V,C+=d*W,D+=d*X,E+=d*Y,F+=d*Z,r+=(d=b[12])*K,s+=d*L,t+=d*M,u+=d*N,v+=d*O,w+=d*P,x+=d*Q,y+=d*R,z+=d*S,A+=d*T,B+=d*U,C+=d*V,D+=d*W,E+=d*X,F+=d*Y,G+=d*Z,s+=(d=b[13])*K,t+=d*L,u+=d*M,v+=d*N,w+=d*O,x+=d*P,y+=d*Q,z+=d*R,A+=d*S,B+=d*T,C+=d*U,D+=d*V,E+=d*W,F+=d*X,G+=d*Y,H+=d*Z,t+=(d=b[14])*K,u+=d*L,v+=d*M,w+=d*N,x+=d*O,y+=d*P,z+=d*Q,A+=d*R,B+=d*S,C+=d*T,D+=d*U,E+=d*V,F+=d*W,G+=d*X,H+=d*Y,I+=d*Z,u+=(d=b[15])*K,v+=d*L,w+=d*M,x+=d*N,y+=d*O,z+=d*P,A+=d*Q,B+=d*R,C+=d*S,D+=d*T,E+=d*U,F+=d*V,G+=d*W,H+=d*X,I+=d*Y,J+=d*Z,f+=38*v,g+=38*w,h+=38*x,i+=38*y,j+=38*z,k+=38*A,l+=38*B,m+=38*C,n+=38*D,o+=38*E,p+=38*F,q+=38*G,r+=38*H,s+=38*I,t+=38*J,e=Math.floor((d=f+(e=1)+65535)/65536),f=d-65536*e,e=Math.floor((d=g+e+65535)/65536),g=d-65536*e,e=Math.floor((d=h+e+65535)/65536),h=d-65536*e,e=Math.floor((d=i+e+65535)/65536),i=d-65536*e,e=Math.floor((d=j+e+65535)/65536),j=d-65536*e,e=Math.floor((d=k+e+65535)/65536),k=d-65536*e,e=Math.floor((d=l+e+65535)/65536),l=d-65536*e,e=Math.floor((d=m+e+65535)/65536),m=d-65536*e,e=Math.floor((d=n+e+65535)/65536),n=d-65536*e,e=Math.floor((d=o+e+65535)/65536),o=d-65536*e,e=Math.floor((d=p+e+65535)/65536),p=d-65536*e,e=Math.floor((d=q+e+65535)/65536),q=d-65536*e,e=Math.floor((d=r+e+65535)/65536),r=d-65536*e,e=Math.floor((d=s+e+65535)/65536),s=d-65536*e,e=Math.floor((d=t+e+65535)/65536),t=d-65536*e,e=Math.floor((d=u+e+65535)/65536),u=d-65536*e,f+=e-1+37*(e-1),e=Math.floor((d=f+(e=1)+65535)/65536),f=d-65536*e,e=Math.floor((d=g+e+65535)/65536),g=d-65536*e,e=Math.floor((d=h+e+65535)/65536),h=d-65536*e,e=Math.floor((d=i+e+65535)/65536),i=d-65536*e,e=Math.floor((d=j+e+65535)/65536),j=d-65536*e,e=Math.floor((d=k+e+65535)/65536),k=d-65536*e,e=Math.floor((d=l+e+65535)/65536),l=d-65536*e,e=Math.floor((d=m+e+65535)/65536),m=d-65536*e,e=Math.floor((d=n+e+65535)/65536),n=d-65536*e,e=Math.floor((d=o+e+65535)/65536),o=d-65536*e,e=Math.floor((d=p+e+65535)/65536),p=d-65536*e,e=Math.floor((d=q+e+65535)/65536),q=d-65536*e,e=Math.floor((d=r+e+65535)/65536),r=d-65536*e,e=Math.floor((d=s+e+65535)/65536),s=d-65536*e,e=Math.floor((d=t+e+65535)/65536),t=d-65536*e,e=Math.floor((d=u+e+65535)/65536),u=d-65536*e,f+=e-1+37*(e-1),a[0]=f,a[1]=g,a[2]=h,a[3]=i,a[4]=j,a[5]=k,a[6]=l,a[7]=m,a[8]=n,a[9]=o,a[10]=p,a[11]=q,a[12]=r,a[13]=s,a[14]=t,a[15]=u}},22219:(a,b,c)=>{"use strict";function d(a,b){if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return b}}c.d(b,{N:()=>d})},22268:(a,b,c)=>{"use strict";c.d(b,{kz:()=>f});let d=new Map,e=new Map;function f(a,b,c,f){let g=`${a}:${b}`;c&&d.set(g,c),f&&e.set(g,f)}},22435:(a,b,c)=>{"use strict";c.d(b,{KZ:()=>k,S6:()=>h,Yr:()=>o,f6:()=>l,fc:()=>g,kU:()=>i,pT:()=>j,w_:()=>m});var d=c(22219),e=c(11897);let f=["minLength","maxLength","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","format","pattern","uniqueItems","multipleOf","minimum","maximum","default","examples","$schema","$defs","definitions","const","$ref","$comment","ref","deprecated","readOnly","writeOnly","additionalProperties","propertyNames","patternProperties","enumDescriptions","anyOf","oneOf","allOf","not","dependencies","dependentSchemas","dependentRequired","title","optional","deprecated","if","then","else","contentMediaType","contentEncoding","cornerRadius","fillColor","fontFamily","fontSize","fontWeight","gap","padding","strokeColor","strokeThickness","textColor"],g=[{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"OFF"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"OFF"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"OFF"},{category:"HARM_CATEGORY_HARASSMENT",threshold:"OFF"},{category:"HARM_CATEGORY_CIVIC_INTEGRITY",threshold:"OFF"}];function h(a){let b=[];if("string"==typeof a)b.push({text:a});else if(Array.isArray(a)){for(let c of a)if(c&&"object"==typeof c){if(c.type===e.x4.TEXT)b.push({text:c.text});else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url?.startsWith("data:")){let a=c.image_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.IMAGE_URL&&c.image_url?.url&&(c.image_url.url.startsWith("http://")||c.image_url.url.startsWith("https://")))b.push({fileData:{fileUri:c.image_url.url,mimeType:"image/*"}});else if(c.type===e.x4.INPUT_AUDIO&&c.input_audio?.data){let a=c.input_audio.format||"wav",d="mp3"===a?"audio/mpeg":`audio/${a}`;b.push({inlineData:{mime_type:d,data:c.input_audio.data}})}else if(c.type===e.x4.AUDIO_URL&&c.audio_url?.url?.startsWith("data:")){let a=c.audio_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if(c.type===e.x4.FILE&&c.file?.file_data?.startsWith("data:")){let a=c.file.file_data,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d).split(";")[0],e=a.substring(d+1);b.push({inlineData:{mime_type:c,data:e}})}}}}return b}function i(a,b=""){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>a.type===e.x4.TEXT).map(a=>a.text).join(b):""}function j(a){return(0,d.N)(a,null)}function k(){return`agent-${crypto.randomUUID()}`}function l(){return crypto.randomUUID()+Date.now().toString()}function m(){let a=["useful","bright","swift","calm","bold"],b=["fuze","wave","spark","flow","core"],c=a[Math.floor(Math.random()*a.length)],d=b[Math.floor(Math.random()*b.length)];return`${c}-${d}-${crypto.randomUUID().slice(0,5)}`}function n(a){let b=0,c=-1;for(let d=0;d<a.length;d++){let e=a[d],f=0,g=e.type;"object"===g||e.properties?f=3:"array"===g||e.items?f=2:g&&"null"!==g&&(f=1),f>c&&(c=f,b=d)}return b}function o(a){return a&&"object"==typeof a&&(!function a(b){if(b&&"object"==typeof b)for(let c of(void 0===b.const||b.enum||(b.enum=[b.const],delete b.const),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(b.allOf&&Array.isArray(b.allOf)){let a={},c={};for(let d of b.allOf)if(d&&"object"==typeof d){if(d.properties&&(a.properties||(a.properties={}),Object.assign(a.properties,d.properties)),d.required&&Array.isArray(d.required))for(let b of(a.required||(a.required=[]),d.required))a.required.includes(b)||a.required.push(b);for(let[a,b]of Object.entries(d))"properties"!==a&&"required"!==a&&(a in c||(c[a]=b))}for(let[a,d]of(delete b.allOf,Object.entries(c)))a in b||(b[a]=d);a.properties&&(b.properties={...b.properties,...a.properties}),a.required&&(b.required=[...b.required||[],...a.required])}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.anyOf&&Array.isArray(b.anyOf)&&b.anyOf.length>0){let a=b.anyOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.anyOf,Object.assign(b,d)}}if(b.oneOf&&Array.isArray(b.oneOf)&&b.oneOf.length>0){let a=b.oneOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=n(a),d=a[c];delete b.oneOf,Object.assign(b,d)}}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.type&&Array.isArray(b.type)){let a=b.type.filter(a=>"null"!==a);b.type=a.length>0?a[0]:"string"}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.enum&&Array.isArray(b.enum)&&(b.enum=b.enum.map(a=>String(a)),b.type="string"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.properties&&!b.type&&(b.type="object"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(Array.isArray(b))return void b.forEach(a);if(b.properties&&"object"==typeof b.properties&&!Array.isArray(b.properties))for(let[c,d]of Object.entries(b.properties))if("string"==typeof d){let a=d.toLowerCase();"object"===a?b.properties[c]={type:"object",properties:{}}:["string","number","integer","boolean","array"].includes(a)?b.properties[c]={type:a}:b.properties[c]={type:"string",description:d}}else null!==d&&"object"==typeof d&&a(d);for(let[c,d]of Object.entries(b))"properties"!==c&&d&&"object"==typeof d&&a(d)}}(a),!function a(b,c){if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.keys(b)){if(c.includes(d)||d.startsWith("x-")){delete b[d];continue}let e=b[d];e&&"object"==typeof e&&a(e,c)}}}(a,f),!function a(b){if(b&&"object"==typeof b){if(b.required&&Array.isArray(b.required)&&b.properties){let a=b.required.filter(a=>Object.prototype.hasOwnProperty.call(b.properties,a));0===a.length?delete b.required:b.required=a}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of("object"!==b.type||b.properties&&0!==Object.keys(b.properties).length||(b.properties={reason:{type:"string",description:"Brief explanation of why you are calling this tool"}},b.required=["reason"]),Object.values(b)))c&&"object"==typeof c&&a(c)}(a)),a}},22884:(a,b,c)=>{"use strict";c.d(b,{jD:()=>e}),c(38421);var d=c(74570);function e(a,b=null){if(!("string"==typeof a&&a.startsWith("openai-compatible-")))return"chat";let c=b?.providerSpecificData?.apiType;return"chat"===c||"responses"===c?c:a.includes("responses")?"responses":"chat"}d.Es,d.ky},23059:(a,b,c)=>{},23423:(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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AXRrQT5qIQILIAEgAjYCHCABQgA3AhAgAkECdEH01wBqIQACQEHI1QAoAgAiA0EBIAJ0IgdxRQRAIAAgATYCAEHI1QAgAyAHcjYCACABIAA2AhggASABNgIIIAEgATYCDAwBCyAEQRkgAkEBdmtBACACQR9HG3QhAiAAKAIAIQACQANAIAAiAygCBEF4cSAERg0BIAJBHXYhACACQQF0IQIgAyAAQQRxakEQaiIHKAIAIgANAAsgByABNgIAIAEgAzYCGCABIAE2AgwgASABNgIIDAELIAMoAggiACABNgIMIAMgATYCCCABQQA2AhggASADNgIMIAEgADYCCAtB5NUAQeTVACgCAEEBayIAQX8gABs2AgALCwcAIAAtACgLBwAgAC0AKgsHACAALQArCwcAIAAtACkLBwAgAC8BNAsHACAALQAwC0ABBH8gACgCGCEBIAAvAS4hAiAALQAoIQMgACgCOCEEIAAQOCAAIAQ2AjggACADOgAoIAAgAjsBLiAAIAE2AhgLhocCAwd/A34BeyABIAJqIQQCQCAAIgMoAgwiAA0AIAMoAgQEQCADIAE2AgQLIwBBEGsiCSQAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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DAgLQeMBDAcLQdcBDAYLQdgBDAULQdkBDAQLQdoBDAMLQdsBDAILQd0BDAELQdwBCyECA0ACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAMCfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAAn8CQAJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAwJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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A0EXNgIcIAMgADYCDCADIAFBAWo2AhQM+AILIABBFUYNI0EAIQIgA0EANgIcIAMgATYCFCADQdYMNgIQIANBIzYCDAz3AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQwdCyADQRk2AhwgAyAANgIMIAMgAUEBajYCFAz2AgsgAygCBCEAQQAhAiADQQA2AgQgAyAAIAEQNCIARQRAIAFBAWohAQzvAgsgA0EaNgIcIAMgADYCDCADIAFBAWo2AhQM9QILIABBFUYNH0EAIQIgA0EANgIcIAMgATYCFCADQdAPNgIQIANBIjYCDAz0AgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDBsLIANBHDYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgzzAgsgAygCBCEAIANBADYCBCADIAAgARAzIgBFBEAgAUEBaiEBDOsCCyADQR02AhwgAyAANgIMIAMgAUEBajYCFEEAIQIM8gILIABBO0cNASABQQFqIQELQSYhAgzXAgtBACECIANBADYCHCADIAE2AhQgA0GfFTYCECADQQw2AgwM7wILIAEgBEcEQANAIAEtAABBIEcNhAIgBCABQQFqIgFHDQALQSwhAgzvAgtBLCECDO4CCyABIARGBEBBNCECDO4CCwJAAkADQAJAIAEtAABBCmsOBAIAAAMACyAEIAFBAWoiAUcNAAtBNCECDO8CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNnwIgA0EyNgIcIAMgATYCFCADIAA2AgxBACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUEQCABQQFqIQEMnwILIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgztAgsgASAERwRAAkADQCABLQAAQTBrIgBB/wFxQQpPBEBBOiECDNcCCyADKQMgIgtCmbPmzJmz5swZVg0BIAMgC0IKfiIKNwMgIAogAK1C/wGDIgtCf4VWDQEgAyAKIAt8NwMgIAQgAUEBaiIBRw0AC0HAACECDO4CCyADKAIEIQAgA0EANgIEIAMgACABQQFqIgEQMSIADRcM4gILQcAAIQIM7AILIAEgBEYEQEHJACECDOwCCwJAA0ACQCABLQAAQQlrDhgAAqICogKpAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAqICogKiAgCiAgsgBCABQQFqIgFHDQALQckAIQIM7AILIAFBAWohASADQS9qLQAAQQFxDaUCIANBADYCHCADIAE2AhQgA0GXEDYCECADQQo2AgxBACECDOsCCyABIARHBEADQCABLQAAQSBHDRUgBCABQQFqIgFHDQALQfgAIQIM6wILQfgAIQIM6gILIANBAjoAKAw4C0EAIQIgA0EANgIcIANBvws2AhAgA0ECNgIMIAMgAUEBajYCFAzoAgtBACECDM4CC0ENIQIMzQILQRMhAgzMAgtBFSECDMsCC0EWIQIMygILQRghAgzJAgtBGSECDMgCC0EaIQIMxwILQRshAgzGAgtBHCECDMUCC0EdIQIMxAILQR4hAgzDAgtBHyECDMICC0EgIQIMwQILQSIhAgzAAgtBIyECDL8CC0ElIQIMvgILQeUAIQIMvQILIANBPTYCHCADIAE2AhQgAyAANgIMQQAhAgzVAgsgA0EbNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIM1AILIANBIDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNMCCyADQRM2AhwgAyABNgIUIANBmBo2AhAgA0EVNgIMQQAhAgzSAgsgA0ELNgIcIAMgATYCFCADQZgaNgIQIANBFTYCDEEAIQIM0QILIANBEDYCHCADIAE2AhQgA0GYGjYCECADQRU2AgxBACECDNACCyADQSA2AhwgAyABNgIUIANBpBw2AhAgA0EVNgIMQQAhAgzPAgsgA0ELNgIcIAMgATYCFCADQaQcNgIQIANBFTYCDEEAIQIMzgILIANBDDYCHCADIAE2AhQgA0GkHDYCECADQRU2AgxBACECDM0CC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAzMAgsCQANAAkAgAS0AAEEKaw4EAAICAAILIAQgAUEBaiIBRw0AC0H9ASECDMwCCwJAAkAgAy0ANkEBRw0AQQAhAAJAIAMoAjgiAkUNACACKAJgIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB/AE2AhwgAyABNgIUIANB3Bk2AhAgA0EVNgIMQQAhAgzNAgtB3AEhAgyzAgsgA0EANgIcIAMgATYCFCADQfkLNgIQIANBHzYCDEEAIQIMywILAkACQCADLQAoQQFrDgIEAQALQdsBIQIMsgILQdQBIQIMsQILIANBAjoAMUEAIQACQCADKAI4IgJFDQAgAigCACICRQ0AIAMgAhEAACEACyAARQRAQd0BIQIMsQILIABBFUcEQCADQQA2AhwgAyABNgIUIANBtAw2AhAgA0EQNgIMQQAhAgzKAgsgA0H7ATYCHCADIAE2AhQgA0GBGjYCECADQRU2AgxBACECDMkCCyABIARGBEBB+gEhAgzJAgsgAS0AAEHIAEYNASADQQE6ACgLQcABIQIMrgILQdoBIQIMrQILIAEgBEcEQCADQQw2AgggAyABNgIEQdkBIQIMrQILQfkBIQIMxQILIAEgBEYEQEH4ASECDMUCCyABLQAAQcgARw0EIAFBAWohAUHYASECDKsCCyABIARGBEBB9wEhAgzEAgsCQAJAIAEtAABBxQBrDhAABQUFBQUFBQUFBQUFBQUBBQsgAUEBaiEBQdYBIQIMqwILIAFBAWohAUHXASECDKoCC0H2ASECIAEgBEYNwgIgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABButUAai0AAEcNAyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMwwILIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgBFBEBB4wEhAgyqAgsgA0H1ATYCHCADIAE2AhQgAyAANgIMQQAhAgzCAgtB9AEhAiABIARGDcECIAMoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjVAGotAABHDQIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADMICCyADQYEEOwEoIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARAuIgANAwwCCyADQQA2AgALQQAhAiADQQA2AhwgAyABNgIUIANB5R82AhAgA0EINgIMDL8CC0HVASECDKUCCyADQfMBNgIcIAMgATYCFCADIAA2AgxBACECDL0CC0EAIQACQCADKAI4IgJFDQAgAigCQCICRQ0AIAMgAhEAACEACyAARQ1uIABBFUcEQCADQQA2AhwgAyABNgIUIANBgg82AhAgA0EgNgIMQQAhAgy9AgsgA0GPATYCHCADIAE2AhQgA0HsGzYCECADQRU2AgxBACECDLwCCyABIARHBEAgA0ENNgIIIAMgATYCBEHTASECDKMCC0HyASECDLsCCyABIARGBEBB8QEhAgy7AgsCQAJAAkAgAS0AAEHIAGsOCwABCAgICAgICAgCCAsgAUEBaiEBQdABIQIMowILIAFBAWohAUHRASECDKICCyABQQFqIQFB0gEhAgyhAgtB8AEhAiABIARGDbkCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEG11QBqLQAARw0EIABBAkYNAyAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy5AgtB7wEhAiABIARGDbgCIAMoAgAiACAEIAFraiEGIAEgAGtBAWohBQNAIAEtAAAgAEGz1QBqLQAARw0DIABBAUYNAiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy4AgtB7gEhAiABIARGDbcCIAMoAgAiACAEIAFraiEGIAEgAGtBAmohBQNAIAEtAAAgAEGw1QBqLQAARw0CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBjYCAAy3AgsgAygCBCEAIANCADcDACADIAAgBUEBaiIBECsiAEUNAiADQewBNgIcIAMgATYCFCADIAA2AgxBACECDLYCCyADQQA2AgALIAMoAgQhACADQQA2AgQgAyAAIAEQKyIARQ2cAiADQe0BNgIcIAMgATYCFCADIAA2AgxBACECDLQCC0HPASECDJoCC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMtAILQc4BIQIMmgILIANB6wE2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyyAgsgASAERgRAQesBIQIMsgILIAEtAABBL0YEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDEEAIQIMsQILQc0BIQIMlwILIAEgBEcEQCADQQ42AgggAyABNgIEQcwBIQIMlwILQeoBIQIMrwILIAEgBEYEQEHpASECDK8CCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHLASECDJYCCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNlwIgA0HoATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgASAERgRAQecBIQIMrgILAkAgAS0AAEEuRgRAIAFBAWohAQwBCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmAIgA0HmATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgtBygEhAgyUAgsgASAERgRAQeUBIQIMrQILQQAhAEEBIQVBASEHQQAhAgJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIAEtAABBMGsOCgoJAAECAwQFBggLC0ECDAYLQQMMBQtBBAwEC0EFDAMLQQYMAgtBBwwBC0EICyECQQAhBUEAIQcMAgtBCSECQQEhAEEAIQVBACEHDAELQQAhBUEBIQILIAMgAjoAKyABQQFqIQECQAJAIAMtAC5BEHENAAJAAkACQCADLQAqDgMBAAIECyAHRQ0DDAILIAANAQwCCyAFRQ0BCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNAiADQeIBNgIcIAMgATYCFCADIAA2AgxBACECDK8CCyADKAIEIQAgA0EANgIEIAMgACABEC8iAEUNmgIgA0HjATYCHCADIAE2AhQgAyAANgIMQQAhAgyuAgsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDZgCIANB5AE2AhwgAyABNgIUIAMgADYCDAytAgtByQEhAgyTAgtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GkDTYCECADQSE2AgxBACECDK0CC0HIASECDJMCCyADQeEBNgIcIAMgATYCFCADQdAaNgIQIANBFTYCDEEAIQIMqwILIAEgBEYEQEHhASECDKsCCwJAIAEtAABBIEYEQCADQQA7ATQgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GZETYCECADQQk2AgxBACECDKsCC0HHASECDJECCyABIARGBEBB4AEhAgyqAgsCQCABLQAAQTBrQf8BcSICQQpJBEAgAUEBaiEBAkAgAy8BNCIAQZkzSw0AIAMgAEEKbCIAOwE0IABB/v8DcSACQf//A3NLDQAgAyAAIAJqOwE0DAILQQAhAiADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMDKsCCyADQQA2AhwgAyABNgIUIANBlR42AhAgA0ENNgIMQQAhAgyqAgtBxgEhAgyQAgsgASAERgRAQd8BIQIMqQILAkAgAS0AAEEwa0H/AXEiAkEKSQRAIAFBAWohAQJAIAMvATQiAEGZM0sNACADIABBCmwiADsBNCAAQf7/A3EgAkH//wNzSw0AIAMgACACajsBNAwCC0EAIQIgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDAyqAgsgA0EANgIcIAMgATYCFCADQZUeNgIQIANBDTYCDEEAIQIMqQILQcUBIQIMjwILIAEgBEYEQEHeASECDKgCCwJAIAEtAABBMGtB/wFxIgJBCkkEQCABQQFqIQECQCADLwE0IgBBmTNLDQAgAyAAQQpsIgA7ATQgAEH+/wNxIAJB//8Dc0sNACADIAAgAmo7ATQMAgtBACECIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgwMqQILIANBADYCHCADIAE2AhQgA0GVHjYCECADQQ02AgxBACECDKgCC0HEASECDI4CCyABIARGBEBB3QEhAgynAgsCQAJAAkACQCABLQAAQQprDhcCAwMAAwMDAwMDAwMDAwMDAwMDAwMDAQMLIAFBAWoMBQsgAUEBaiEBQcMBIQIMjwILIAFBAWohASADQS9qLQAAQQFxDQggA0EANgIcIAMgATYCFCADQY0LNgIQIANBDTYCDEEAIQIMpwILIANBADYCHCADIAE2AhQgA0GNCzYCECADQQ02AgxBACECDKYCCyABIARHBEAgA0EPNgIIIAMgATYCBEEBIQIMjQILQdwBIQIMpQILAkACQANAAkAgAS0AAEEKaw4EAgAAAwALIAQgAUEBaiIBRw0AC0HbASECDKYCCyADKAIEIQAgA0EANgIEIAMgACABEC0iAEUEQCABQQFqIQEMBAsgA0HaATYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgylAgsgAygCBCEAIANBADYCBCADIAAgARAtIgANASABQQFqCyEBQcEBIQIMigILIANB2QE2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMogILQcIBIQIMiAILIANBL2otAABBAXENASADQQA2AhwgAyABNgIUIANB5Bw2AhAgA0EZNgIMQQAhAgygAgsgASAERgRAQdkB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CyADIAU2AgAMkAILIANBADYCACAGQQFqIQFBGgw8C0HKASECIAEgBEYNjgIgAygCACIAIAQgAWtqIQUgASAAa0EDaiEGAkADQCABLQAAIABBjdUAai0AAEcNOyAAQQNGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMjwILIANBADYCACAGQQFqIQFBIQw7CyABIARGBEBByQEhAgyOAgsCQAJAIAEtAABBwQBrDhQAPT09PT09PT09PT09PT09PT09AT0LIAFBAWohAUGtASECDPUBCyABQQFqIQFBsAEhAgz0AQsgASAERgRAQcgBIQIMjQILAkACQCABLQAAQdUAaw4LADw8PDw8PDw8PAE8CyABQQFqIQFBrgEhAgz0AQsgAUEBaiEBQa8BIQIM8wELQccBIQIgASAERg2LAiADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw04IABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyMAgsgA0EANgIAIAZBAWohAUEqDDgLIAEgBEYEQEHGASECDIsCCyABLQAAQdAARw04IAFBAWohAUElDDcLQcUBIQIgASAERg2JAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGB1QBqLQAARw02IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyKAgsgA0EANgIAIAZBAWohAUEODDYLIAEgBEYEQEHEASECDIkCCyABLQAAQcUARw02IAFBAWohAUGrASECDO8BCyABIARGBEBBwwEhAgyIAgsCQAJAAkACQCABLQAAQcIAaw4PAAECOTk5OTk5OTk5OTkDOQsgAUEBaiEBQacBIQIM8QELIAFBAWohAUGoASECDPABCyABQQFqIQFBqQEhAgzvAQsgAUEBaiEBQaoBIQIM7gELQcIBIQIgASAERg2GAiADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEH+1ABqLQAARw0zIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyHAgsgA0EANgIAIAZBAWohAUEUDDMLQcEBIQIgASAERg2FAiADKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANA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BTYCAAzsAQsgA0EANgIAIAZBAWohAUEXDBgLQaYBIQIgASAERg3qASADKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHB1ABqLQAARw0XIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzrAQsgA0EANgIAIAZBAWohAUEYDBcLIAEgBEYEQEGlASECDOoBCwJAAkAgAS0AAEHJAGsOBwAZGRkZGQEZCyABQQFqIQFBiwEhAgzRAQsgAUEBaiEBQYwBIQIM0AELQaQBIQIgASAERg3oASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGm1QBqLQAARw0VIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzpAQsgA0EANgIAIAZBAWohAUEJDBULQaMBIQIgASAERg3nASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGk1QBqLQAARw0UIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzoAQsgA0EANgIAIAZBAWohAUEfDBQLQaIBIQIgASAERg3mASADKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEG+1ABqLQAARw0TIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAznAQsgA0EANgIAIAZBAWohAUECDBMLQaEBIQIgASAERg3lASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYDQCABLQAAIABBvNQAai0AAEcNESAAQQFGDQIgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM5QELIAEgBEYEQEGgASECDOUBC0EBIAEtAABB3wBHDREaIAFBAWohAUGHASECDMsBCyADQQA2AgAgBkEBaiEBQYgBIQIMygELQZ8BIQIgASAERg3iASADKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEGE1QBqLQAARw0PIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAzjAQsgA0EANgIAIAZBAWohAUEpDA8LQZ4BIQIgASAERg3hASADKAIAIgAgBCABa2ohBSABIABrQQNqIQYCQANAIAEtAAAgAEG41ABqLQAARw0OIABBA0YNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAziAQsgA0EANgIAIAZBAWohAUEtDA4LIAEgBEYEQEGdASECDOEBCyABLQAAQcUARw0OIAFBAWohAUGEASECDMcBCyABIARGBEBBnAEhAgzgAQsCQAJAIAEtAABBzABrDggADw8PDw8PAQ8LIAFBAWohAUGCASECDMcBCyABQQFqIQFBgwEhAgzGAQtBmwEhAiABIARGDd4BIAMoAgAiACAEIAFraiEFIAEgAGtBBGohBgJAA0AgAS0AACAAQbPUAGotAABHDQsgAEEERg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN8BCyADQQA2AgAgBkEBaiEBQSMMCwtBmgEhAiABIARGDd0BIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQbDUAGotAABHDQogAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADN4BCyADQQA2AgAgBkEBaiEBQQAMCgsgASAERgRAQZkBIQIM3QELAkACQCABLQAAQcgAaw4IAAwMDAwMDAEMCyABQQFqIQFB/QAhAgzEAQsgAUEBaiEBQYABIQIMwwELIAEgBEYEQEGYASECDNwBCwJAAkAgAS0AAEHOAGsOAwALAQsLIAFBAWohAUH+ACECDMMBCyABQQFqIQFB/wAhAgzCAQsgASAERgRAQZcBIQIM2wELIAEtAABB2QBHDQggAUEBaiEBQQgMBwtBlgEhAiABIARGDdkBIAMoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQazUAGotAABHDQYgAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNoBCyADQQA2AgAgBkEBaiEBQQUMBgtBlQEhAiABIARGDdgBIAMoAgAiACAEIAFraiEFIAEgAGtBBWohBgJAA0AgAS0AACAAQabUAGotAABHDQUgAEEFRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNkBCyADQQA2AgAgBkEBaiEBQRYMBQtBlAEhAiABIARGDdcBIAMoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQaHVAGotAABHDQQgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAyAFNgIADNgBCyADQQA2AgAgBkEBaiEBQRAMBAsgASAERgRAQZMBIQIM1wELAkACQCABLQAAQcMAaw4MAAYGBgYGBgYGBgYBBgsgAUEBaiEBQfkAIQIMvgELIAFBAWohAUH6ACECDL0BC0GSASECIAEgBEYN1QEgAygCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBoNQAai0AAEcNAiAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAM1gELIANBADYCACAGQQFqIQFBJAwCCyADQQA2AgAMAgsgASAERgRAQZEBIQIM1AELIAEtAABBzABHDQEgAUEBaiEBQRMLOgApIAMoAgQhACADQQA2AgQgAyAAIAEQLiIADQIMAQtBACECIANBADYCHCADIAE2AhQgA0H+HzYCECADQQY2AgwM0QELQfgAIQIMtwELIANBkAE2AhwgAyABNgIUIAMgADYCDEEAIQIMzwELQQAhAAJAIAMoAjgiAkUNACACKAJAIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRg0BIANBADYCHCADIAE2AhQgA0GCDzYCECADQSA2AgxBACECDM4BC0H3ACECDLQBCyADQY8BNgIcIAMgATYCFCADQewbNgIQIANBFTYCDEEAIQIMzAELIAEgBEYEQEGPASECDMwBCwJAIAEtAABBIEYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZsfNgIQIANBBjYCDEEAIQIMzAELQQIhAgyyAQsDQCABLQAAQSBHDQIgBCABQQFqIgFHDQALQY4BIQIMygELIAEgBEYEQEGNASECDMoBCwJAIAEtAABBCWsOBEoAAEoAC0H1ACECDLABCyADLQApQQVGBEBB9gAhAgywAQtB9AAhAgyvAQsgASAERgRAQYwBIQIMyAELIANBEDYCCCADIAE2AgQMCgsgASAERgRAQYsBIQIMxwELAkAgAS0AAEEJaw4ERwAARwALQfMAIQIMrQELIAEgBEcEQCADQRA2AgggAyABNgIEQfEAIQIMrQELQYoBIQIMxQELAkAgASAERwRAA0AgAS0AAEGg0ABqLQAAIgBBA0cEQAJAIABBAWsOAkkABAtB8AAhAgyvAQsgBCABQQFqIgFHDQALQYgBIQIMxgELQYgBIQIMxQELIANBADYCHCADIAE2AhQgA0HbIDYCECADQQc2AgxBACECDMQBCyABIARGBEBBiQEhAgzEAQsCQAJAAkAgAS0AAEGg0gBqLQAAQQFrDgNGAgABC0HyACECDKwBCyADQQA2AhwgAyABNgIUIANBtBI2AhAgA0EHNgIMQQAhAgzEAQtB6gAhAgyqAQsgASAERwRAIAFBAWohAUHvACECDKoBC0GHASECDMIBCyAEIAEiAEYEQEGGASECDMIBCyAALQAAIgFBL0YEQCAAQQFqIQFB7gAhAgypAQsgAUEJayICQRdLDQEgACEBQQEgAnRBm4CABHENQQwBCyAEIAEiAEYEQEGFASECDMEBCyAALQAAQS9HDQAgAEEBaiEBDAMLQQAhAiADQQA2AhwgAyAANgIUIANB2yA2AhAgA0EHNgIMDL8BCwJAAkACQAJAAkADQCABLQAAQaDOAGotAAAiAEEFRwRAAkACQCAAQQFrDghHBQYHCAAEAQgLQesAIQIMrQELIAFBAWohAUHtACECDKwBCyAEIAFBAWoiAUcNAAtBhAEhAgzDAQsgAUEBagwUCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDMEBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDMABCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNHiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDL8BCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy+AQsgASAERgRAQYMBIQIMvgELAkAgAS0AAEGgzgBqLQAAQQFrDgg+BAUGAAgCAwcLIAFBAWohAQtBAyECDKMBCyABQQFqDA0LQQAhAiADQQA2AhwgA0HREjYCECADQQc2AgwgAyABQQFqNgIUDLoBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQdsANgIcIAMgATYCFCADIAA2AgxBACECDLkBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQd0ANgIcIAMgATYCFCADIAA2AgxBACECDLgBCyADKAIEIQAgA0EANgIEIAMgACABECwiAEUNFiADQfoANgIcIAMgATYCFCADIAA2AgxBACECDLcBCyADQQA2AhwgAyABNgIUIANB+Q82AhAgA0EHNgIMQQAhAgy2AQtB7AAhAgycAQsgASAERgRAQYIBIQIMtQELIAFBAWoMAgsgASAERgRAQYEBIQIMtAELIAFBAWoMAQsgASAERg0BIAFBAWoLIQFBBCECDJgBC0GAASECDLABCwNAIAEtAABBoMwAai0AACIAQQJHBEAgAEEBRwRAQekAIQIMmQELDDELIAQgAUEBaiIBRw0AC0H/ACECDK8BCyABIARGBEBB/gAhAgyvAQsCQCABLQAAQQlrDjcvAwYvBAYGBgYGBgYGBgYGBgYGBgYGBgUGBgIGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYGBgYABgsgAUEBagshAUEFIQIMlAELIAFBAWoMBgsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgyrAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgyqAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQggA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgypAQsgA0EANgIcIAMgATYCFCADQY0UNgIQIANBBzYCDEEAIQIMqAELAkACQAJAAkADQCABLQAAQaDKAGotAAAiAEEFRwRAAkAgAEEBaw4GLgMEBQYABgtB6AAhAgyUAQsgBCABQQFqIgFHDQALQf0AIQIMqwELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB2wA2AhwgAyABNgIUIAMgADYCDEEAIQIMqgELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB3QA2AhwgAyABNgIUIAMgADYCDEEAIQIMqQELIAMoAgQhACADQQA2AgQgAyAAIAEQLCIARQ0HIANB+gA2AhwgAyABNgIUIAMgADYCDEEAIQIMqAELIANBADYCHCADIAE2AhQgA0HkCDYCECADQQc2AgxBACECDKcBCyABIARGDQEgAUEBagshAUEGIQIMjAELQfwAIQIMpAELAkACQAJAAkADQCABLQAAQaDIAGotAAAiAEEFRwRAIABBAWsOBCkCAwQFCyAEIAFBAWoiAUcNAAtB+wAhAgynAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HbADYCHCADIAE2AhQgAyAANgIMQQAhAgymAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0HdADYCHCADIAE2AhQgAyAANgIMQQAhAgylAQsgAygCBCEAIANBADYCBCADIAAgARAsIgBFDQMgA0H6ADYCHCADIAE2AhQgAyAANgIMQQAhAgykAQsgA0EANgIcIAMgATYCFCADQbwKNgIQIANBBzYCDEEAIQIMowELQc8AIQIMiQELQdEAIQIMiAELQecAIQIMhwELIAEgBEYEQEH6ACECDKABCwJAIAEtAABBCWsOBCAAACAACyABQQFqIQFB5gAhAgyGAQsgASAERgRAQfkAIQIMnwELAkAgAS0AAEEJaw4EHwAAHwALQQAhAAJAIAMoAjgiAkUNACACKAI4IgJFDQAgAyACEQAAIQALIABFBEBB4gEhAgyGAQsgAEEVRwRAIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDJ8BCyADQfgANgIcIAMgATYCFCADQeoaNgIQIANBFTYCDEEAIQIMngELIAEgBEcEQCADQQ02AgggAyABNgIEQeQAIQIMhQELQfcAIQIMnQELIAEgBEYEQEH2ACECDJ0BCwJAAkACQCABLQAAQcgAaw4LAAELCwsLCwsLCwILCyABQQFqIQFB3QAhAgyFAQsgAUEBaiEBQeAAIQIMhAELIAFBAWohAUHjACECDIMBC0H1ACECIAEgBEYNmwEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBtdUAai0AAEcNCCAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMnAELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgAEQCADQfQANgIcIAMgATYCFCADIAA2AgxBACECDJwBC0HiACECDIIBC0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMnAELQeEAIQIMggELIANB8wA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyaAQsgAy0AKSIAQSNrQQtJDQkCQCAAQQZLDQBBASAAdEHKAHFFDQAMCgtBACECIANBADYCHCADIAE2AhQgA0HtCTYCECADQQg2AgwMmQELQfIAIQIgASAERg2YASADKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEGz1QBqLQAARw0FIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAyZAQsgAygCBCEAIANCADcDACADIAAgBkEBaiIBECsiAARAIANB8QA2AhwgAyABNgIUIAMgADYCDEEAIQIMmQELQd8AIQIMfwtBACEAAkAgAygCOCICRQ0AIAIoAjQiAkUNACADIAIRAAAhAAsCQCAABEAgAEEVRg0BIANBADYCHCADIAE2AhQgA0HqDTYCECADQSY2AgxBACECDJkBC0HeACECDH8LIANB8AA2AhwgAyABNgIUIANBgBs2AhAgA0EVNgIMQQAhAgyXAQsgAy0AKUEhRg0GIANBADYCHCADIAE2AhQgA0GRCjYCECADQQg2AgxBACECDJYBC0HvACECIAEgBEYNlQEgAygCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABBsNUAai0AAEcNAiAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMlgELIAMoAgQhACADQgA3AwAgAyAAIAZBAWoiARArIgBFDQIgA0HtADYCHCADIAE2AhQgAyAANgIMQQAhAgyVAQsgA0EANgIACyADKAIEIQAgA0EANgIEIAMgACABECsiAEUNgAEgA0HuADYCHCADIAE2AhQgAyAANgIMQQAhAgyTAQtB3AAhAgx5C0EAIQACQCADKAI4IgJFDQAgAigCNCICRQ0AIAMgAhEAACEACwJAIAAEQCAAQRVGDQEgA0EANgIcIAMgATYCFCADQeoNNgIQIANBJjYCDEEAIQIMkwELQdsAIQIMeQsgA0HsADYCHCADIAE2AhQgA0GAGzYCECADQRU2AgxBACECDJEBCyADLQApIgBBI0kNACAAQS5GDQAgA0EANgIcIAMgATYCFCADQckJNgIQIANBCDYCDEEAIQIMkAELQdoAIQIMdgsgASAERgRAQesAIQIMjwELAkAgAS0AAEEvRgRAIAFBAWohAQwBCyADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMQQAhAgyPAQtB2QAhAgx1CyABIARHBEAgA0EONgIIIAMgATYCBEHYACECDHULQeoAIQIMjQELIAEgBEYEQEHpACECDI0BCyABLQAAQTBrIgBB/wFxQQpJBEAgAyAAOgAqIAFBAWohAUHXACECDHQLIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ16IANB6AA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAEgBEYEQEHnACECDIwBCwJAIAEtAABBLkYEQCABQQFqIQEMAQsgAygCBCEAIANBADYCBCADIAAgARAvIgBFDXsgA0HmADYCHCADIAE2AhQgAyAANgIMQQAhAgyMAQtB1gAhAgxyCyABIARGBEBB5QAhAgyLAQtBACEAQQEhBUEBIQdBACECAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkAgAS0AAEEwaw4KCgkAAQIDBAUGCAsLQQIMBgtBAwwFC0EEDAQLQQUMAwtBBgwCC0EHDAELQQgLIQJBACEFQQAhBwwCC0EJIQJBASEAQQAhBUEAIQcMAQtBACEFQQEhAgsgAyACOgArIAFBAWohAQJAAkAgAy0ALkEQcQ0AAkACQAJAIAMtACoOAwEAAgQLIAdFDQMMAgsgAA0BDAILIAVFDQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ0CIANB4gA2AhwgAyABNgIUIAMgADYCDEEAIQIMjQELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ19IANB4wA2AhwgAyABNgIUIAMgADYCDEEAIQIMjAELIAMoAgQhACADQQA2AgQgAyAAIAEQLyIARQ17IANB5AA2AhwgAyABNgIUIAMgADYCDAyLAQtB1AAhAgxxCyADLQApQSJGDYYBQdMAIQIMcAtBACEAAkAgAygCOCICRQ0AIAIoAkQiAkUNACADIAIRAAAhAAsgAEUEQEHVACECDHALIABBFUcEQCADQQA2AhwgAyABNgIUIANBpA02AhAgA0EhNgIMQQAhAgyJAQsgA0HhADYCHCADIAE2AhQgA0HQGjYCECADQRU2AgxBACECDIgBCyABIARGBEBB4AAhAgyIAQsCQAJAAkACQAJAIAEtAABBCmsOBAEEBAAECyABQQFqIQEMAQsgAUEBaiEBIANBL2otAABBAXFFDQELQdIAIQIMcAsgA0EANgIcIAMgATYCFCADQbYRNgIQIANBCTYCDEEAIQIMiAELIANBADYCHCADIAE2AhQgA0G2ETYCECADQQk2AgxBACECDIcBCyABIARGBEBB3wAhAgyHAQsgAS0AAEEKRgRAIAFBAWohAQwJCyADLQAuQcAAcQ0IIANBADYCHCADIAE2AhQgA0G2ETYCECADQQI2AgxBACECDIYBCyABIARGBEBB3QAhAgyGAQsgAS0AACICQQ1GBEAgAUEBaiEBQdAAIQIMbQsgASEAIAJBCWsOBAUBAQUBCyAEIAEiAEYEQEHcACECDIUBCyAALQAAQQpHDQAgAEEBagwCC0EAIQIgA0EANgIcIAMgADYCFCADQcotNgIQIANBBzYCDAyDAQsgASAERgRAQdsAIQIMgwELAkAgAS0AAEEJaw4EAwAAAwALIAFBAWoLIQFBzgAhAgxoCyABIARGBEBB2gAhAgyBAQsgAS0AAEEJaw4EAAEBAAELQQAhAiADQQA2AhwgA0GaEjYCECADQQc2AgwgAyABQQFqNgIUDH8LIANBgBI7ASpBACEAAkAgAygCOCICRQ0AIAIoAjgiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HZADYCHCADIAE2AhQgA0HqGjYCECADQRU2AgxBACECDH4LQc0AIQIMZAsgA0EANgIcIAMgATYCFCADQckNNgIQIANBGjYCDEEAIQIMfAsgASAERgRAQdkAIQIMfAsgAS0AAEEgRw09IAFBAWohASADLQAuQQFxDT0gA0EANgIcIAMgATYCFCADQcIcNgIQIANBHjYCDEEAIQIMewsgASAERgRAQdgAIQIMewsCQAJAAkACQAJAIAEtAAAiAEEKaw4EAgMDAAELIAFBAWohAUEsIQIMZQsgAEE6Rw0BIANBADYCHCADIAE2AhQgA0HnETYCECADQQo2AgxBACECDH0LIAFBAWohASADQS9qLQAAQQFxRQ1zIAMtADJBgAFxRQRAIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsCQAJAIAAOFk1MSwEBAQEBAQEBAQEBAQEBAQEBAQABCyADQSk2AhwgAyABNgIUIANBrBk2AhAgA0EVNgIMQQAhAgx+CyADQQA2AhwgAyABNgIUIANB5Qs2AhAgA0ERNgIMQQAhAgx9C0EAIQACQCADKAI4IgJFDQAgAigCXCICRQ0AIAMgAhEAACEACyAARQ1ZIABBFUcNASADQQU2AhwgAyABNgIUIANBmxs2AhAgA0EVNgIMQQAhAgx8C0HLACECDGILQQAhAiADQQA2AhwgAyABNgIUIANBkA42AhAgA0EUNgIMDHoLIAMgAy8BMkGAAXI7ATIMOwsgASAERwRAIANBETYCCCADIAE2AgRBygAhAgxgC0HXACECDHgLIAEgBEYEQEHWACECDHgLAkACQAJAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXFB4wBrDhMAQEBAQEBAQEBAQEBAAUBAQAIDQAsgAUEBaiEBQcYAIQIMYQsgAUEBaiEBQccAIQIMYAsgAUEBaiEBQcgAIQIMXwsgAUEBaiEBQckAIQIMXgtB1QAhAiAEIAEiAEYNdiAEIAFrIAMoAgAiAWohBiAAIAFrQQVqIQcDQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQhBBCABQQVGDQoaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHYLQdQAIQIgBCABIgBGDXUgBCABayADKAIAIgFqIQYgACABa0EPaiEHA0AgAUGAyABqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0HQQMgAUEPRg0JGiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAx1C0HTACECIAQgASIARg10IAQgAWsgAygCACIBaiEGIAAgAWtBDmohBwNAIAFB4scAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNBiABQQ5GDQcgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMdAtB0gAhAiAEIAEiAEYNcyAEIAFrIAMoAgAiAWohBSAAIAFrQQFqIQYDQCABQeDHAGotAAAgAC0AACIHQSByIAcgB0HBAGtB/wFxQRpJG0H/AXFHDQUgAUEBRg0CIAFBAWohASAEIABBAWoiAEcNAAsgAyAFNgIADHMLIAEgBEYEQEHRACECDHMLAkACQCABLQAAIgBBIHIgACAAQcEAa0H/AXFBGkkbQf8BcUHuAGsOBwA5OTk5OQE5CyABQQFqIQFBwwAhAgxaCyABQQFqIQFBxAAhAgxZCyADQQA2AgAgBkEBaiEBQcUAIQIMWAtB0AAhAiAEIAEiAEYNcCAEIAFrIAMoAgAiAWohBiAAIAFrQQlqIQcDQCABQdbHAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQJBAiABQQlGDQQaIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHALQc8AIQIgBCABIgBGDW8gBCABayADKAIAIgFqIQYgACABa0EFaiEHA0AgAUHQxwBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBBUYNAiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxvCyAAIQEgA0EANgIADDMLQQELOgAsIANBADYCACAHQQFqIQELQS0hAgxSCwJAA0AgAS0AAEHQxQBqLQAAQQFHDQEgBCABQQFqIgFHDQALQc0AIQIMawtBwgAhAgxRCyABIARGBEBBzAAhAgxqCyABLQAAQTpGBEAgAygCBCEAIANBADYCBCADIAAgARAwIgBFDTMgA0HLADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxqCyADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgxpCwJAAkAgAy0ALEECaw4CAAEnCyADQTNqLQAAQQJxRQ0mIAMtAC5BAnENJiADQQA2AhwgAyABNgIUIANBphQ2AhAgA0ELNgIMQQAhAgxpCyADLQAyQSBxRQ0lIAMtAC5BAnENJSADQQA2AhwgAyABNgIUIANBvRM2AhAgA0EPNgIMQQAhAgxoC0EAIQACQCADKAI4IgJFDQAgAigCSCICRQ0AIAMgAhEAACEACyAARQRAQcEAIQIMTwsgAEEVRwRAIANBADYCHCADIAE2AhQgA0GmDzYCECADQRw2AgxBACECDGgLIANBygA2AhwgAyABNgIUIANBhRw2AhAgA0EVNgIMQQAhAgxnCyABIARHBEAgASECA0AgBCACIgFrQRBOBEAgAUEQaiEC/Qz/////////////////////IAH9AAAAIg1BB/1sIA39DODg4ODg4ODg4ODg4ODg4OD9bv0MX19fX19fX19fX19fX19fX/0mIA39DAkJCQkJCQkJCQkJCQkJCQn9I/1Q/VL9ZEF/c2giAEEQRg0BIAAgAWohAQwYCyABIARGBEBBxAAhAgxpCyABLQAAQcDBAGotAABBAUcNFyAEIAFBAWoiAkcNAAtBxAAhAgxnC0HEACECDGYLIAEgBEcEQANAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXEiAEEJRg0AIABBIEYNAAJAAkACQAJAIABB4wBrDhMAAwMDAwMDAwEDAwMDAwMDAwMCAwsgAUEBaiEBQTYhAgxSCyABQQFqIQFBNyECDFELIAFBAWohAUE4IQIMUAsMFQsgBCABQQFqIgFHDQALQTwhAgxmC0E8IQIMZQsgASAERgRAQcgAIQIMZQsgA0ESNgIIIAMgATYCBAJAAkACQAJAAkAgAy0ALEEBaw4EFAABAgkLIAMtADJBIHENA0HgASECDE8LAkAgAy8BMiIAQQhxRQ0AIAMtAChBAUcNACADLQAuQQhxRQ0CCyADIABB9/sDcUGABHI7ATIMCwsgAyADLwEyQRByOwEyDAQLIANBADYCBCADIAEgARAxIgAEQCADQcEANgIcIAMgADYCDCADIAFBAWo2AhRBACECDGYLIAFBAWohAQxYCyADQQA2AhwgAyABNgIUIANB9BM2AhAgA0EENgIMQQAhAgxkC0HHACECIAEgBEYNYyADKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIABBwMUAai0AACABLQAAQSByRw0BIABBBkYNSiAAQQFqIQAgBCABQQFqIgFHDQALIAMgBTYCAAxkCyADQQA2AgAMBQsCQCABIARHBEADQCABLQAAQcDDAGotAAAiAEEBRwRAIABBAkcNAyABQQFqIQEMBQsgBCABQQFqIgFHDQALQcUAIQIMZAtBxQAhAgxjCwsgA0EAOgAsDAELQQshAgxHC0E/IQIMRgsCQAJAA0AgAS0AACIAQSBHBEACQCAAQQprDgQDBQUDAAsgAEEsRg0DDAQLIAQgAUEBaiIBRw0AC0HGACECDGALIANBCDoALAwOCyADLQAoQQFHDQIgAy0ALkEIcQ0CIAMoAgQhACADQQA2AgQgAyAAIAEQMSIABEAgA0HCADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxfCyABQQFqIQEMUAtBOyECDEQLAkADQCABLQAAIgBBIEcgAEEJR3ENASAEIAFBAWoiAUcNAAtBwwAhAgxdCwtBPCECDEILAkACQCABIARHBEADQCABLQAAIgBBIEcEQCAAQQprDgQDBAQDBAsgBCABQQFqIgFHDQALQT8hAgxdC0E/IQIMXAsgAyADLwEyQSByOwEyDAoLIAMoAgQhACADQQA2AgQgAyAAIAEQMSIARQ1OIANBPjYCHCADIAE2AhQgAyAANgIMQQAhAgxaCwJAIAEgBEcEQANAIAEtAABBwMMAai0AACIAQQFHBEAgAEECRg0DDAwLIAQgAUEBaiIBRw0AC0E3IQIMWwtBNyECDFoLIAFBAWohAQwEC0E7IQIgBCABIgBGDVggBCABayADKAIAIgFqIQYgACABa0EFaiEHAkADQCABQZDIAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQEgAUEFRgRAQQchAQw/CyABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxZCyADQQA2AgAgACEBDAULQTohAiAEIAEiAEYNVyAEIAFrIAMoAgAiAWohBiAAIAFrQQhqIQcCQANAIAFBtMEAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNASABQQhGBEBBBSEBDD4LIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADFgLIANBADYCACAAIQEMBAtBOSECIAQgASIARg1WIAQgAWsgAygCACIBaiEGIAAgAWtBA2ohBwJAA0AgAUGwwQBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBA0YEQEEGIQEMPQsgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMVwsgA0EANgIAIAAhAQwDCwJAA0AgAS0AACIAQSBHBEAgAEEKaw4EBwQEBwILIAQgAUEBaiIBRw0AC0E4IQIMVgsgAEEsRw0BIAFBAWohAEEBIQECQAJAAkACQAJAIAMtACxBBWsOBAMBAgQACyAAIQEMBAtBAiEBDAELQQQhAQsgA0EBOgAsIAMgAy8BMiABcjsBMiAAIQEMAQsgAyADLwEyQQhyOwEyIAAhAQtBPiECDDsLIANBADoALAtBOSECDDkLIAEgBEYEQEE2IQIMUgsCQAJAAkACQAJAIAEtAABBCmsOBAACAgECCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNAiADQTM2AhwgAyABNgIUIAMgADYCDEEAIQIMVQsgAygCBCEAIANBADYCBCADIAAgARAxIgBFBEAgAUEBaiEBDAYLIANBMjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxUCyADLQAuQQFxBEBB3wEhAgw7CyADKAIEIQAgA0EANgIEIAMgACABEDEiAA0BDEkLQTQhAgw5CyADQTU2AhwgAyABNgIUIAMgADYCDEEAIQIMUQtBNSECDDcLIANBL2otAABBAXENACADQQA2AhwgAyABNgIUIANB6xY2AhAgA0EZNgIMQQAhAgxPC0EzIQIMNQsgASAERgRAQTIhAgxOCwJAIAEtAABBCkYEQCABQQFqIQEMAQsgA0EANgIcIAMgATYCFCADQZIXNgIQIANBAzYCDEEAIQIMTgtBMiECDDQLIAEgBEYEQEExIQIMTQsCQCABLQAAIgBBCUYNACAAQSBGDQBBASECAkAgAy0ALEEFaw4EBgQFAA0LIAMgAy8BMkEIcjsBMgwMCyADLQAuQQFxRQ0BIAMtACxBCEcNACADQQA6ACwLQT0hAgwyCyADQQA2AhwgAyABNgIUIANBwhY2AhAgA0EKNgIMQQAhAgxKC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyDAYLIAEgBEYEQEEwIQIMRwsgAS0AAEEKRgRAIAFBAWohAQwBCyADLQAuQQFxDQAgA0EANgIcIAMgATYCFCADQdwoNgIQIANBAjYCDEEAIQIMRgtBMCECDCwLIAFBAWohAUExIQIMKwsgASAERgRAQS8hAgxECyABLQAAIgBBCUcgAEEgR3FFBEAgAUEBaiEBIAMtAC5BAXENASADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMQQAhAgxEC0EBIQICQAJAAkACQAJAAkAgAy0ALEECaw4HBQQEAwECAAQLIAMgAy8BMkEIcjsBMgwDC0ECIQIMAQtBBCECCyADQQE6ACwgAyADLwEyIAJyOwEyC0EvIQIMKwsgA0EANgIcIAMgATYCFCADQYQTNgIQIANBCzYCDEEAIQIMQwtB4QEhAgwpCyABIARGBEBBLiECDEILIANBADYCBCADQRI2AgggAyABIAEQMSIADQELQS4hAgwnCyADQS02AhwgAyABNgIUIAMgADYCDEEAIQIMPwtBACEAAkAgAygCOCICRQ0AIAIoAkwiAkUNACADIAIRAAAhAAsgAEUNACAAQRVHDQEgA0HYADYCHCADIAE2AhQgA0GzGzYCECADQRU2AgxBACECDD4LQcwAIQIMJAsgA0EANgIcIAMgATYCFCADQbMONgIQIANBHTYCDEEAIQIMPAsgASAERgRAQc4AIQIMPAsgAS0AACIAQSBGDQIgAEE6Rg0BCyADQQA6ACxBCSECDCELIAMoAgQhACADQQA2AgQgAyAAIAEQMCIADQEMAgsgAy0ALkEBcQRAQd4BIQIMIAsgAygCBCEAIANBADYCBCADIAAgARAwIgBFDQIgA0EqNgIcIAMgADYCDCADIAFBAWo2AhRBACECDDgLIANBywA2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMNwsgAUEBaiEBQcAAIQIMHQsgAUEBaiEBDCwLIAEgBEYEQEErIQIMNQsCQCABLQAAQQpGBEAgAUEBaiEBDAELIAMtAC5BwABxRQ0GCyADLQAyQYABcQRAQQAhAAJAIAMoAjgiAkUNACACKAJcIgJFDQAgAyACEQAAIQALIABFDRIgAEEVRgRAIANBBTYCHCADIAE2AhQgA0GbGzYCECADQRU2AgxBACECDDYLIANBADYCHCADIAE2AhQgA0GQDjYCECADQRQ2AgxBACECDDULIANBMmohAiADEDVBACEAAkAgAygCOCIGRQ0AIAYoAigiBkUNACADIAYRAAAhAAsgAA4WAgEABAQEBAQEBAQEBAQEBAQEBAQEAwQLIANBAToAMAsgAiACLwEAQcAAcjsBAAtBKyECDBgLIANBKTYCHCADIAE2AhQgA0GsGTYCECADQRU2AgxBACECDDALIANBADYCHCADIAE2AhQgA0HlCzYCECADQRE2AgxBACECDC8LIANBADYCHCADIAE2AhQgA0GlCzYCECADQQI2AgxBACECDC4LQQEhByADLwEyIgVBCHFFBEAgAykDIEIAUiEHCwJAIAMtADAEQEEBIQAgAy0AKUEFRg0BIAVBwABxRSAHcUUNAQsCQCADLQAoIgJBAkYEQEEBIQAgAy8BNCIGQeUARg0CQQAhACAFQcAAcQ0CIAZB5ABGDQIgBkHmAGtBAkkNAiAGQcwBRg0CIAZBsAJGDQIMAQtBACEAIAVBwABxDQELQQIhACAFQQhxDQAgBUGABHEEQAJAIAJBAUcNACADLQAuQQpxDQBBBSEADAILQQQhAAwBCyAFQSBxRQRAIAMQNkEAR0ECdCEADAELQQBBAyADKQMgUBshAAsgAEEBaw4FAgAHAQMEC0ERIQIMEwsgA0EBOgAxDCkLQQAhAgJAIAMoAjgiAEUNACAAKAIwIgBFDQAgAyAAEQAAIQILIAJFDSYgAkEVRgRAIANBAzYCHCADIAE2AhQgA0HSGzYCECADQRU2AgxBACECDCsLQQAhAiADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMDCoLIANBADYCHCADIAE2AhQgA0H5IDYCECADQQ82AgxBACECDCkLQQAhAAJAIAMoAjgiAkUNACACKAIwIgJFDQAgAyACEQAAIQALIAANAQtBDiECDA4LIABBFUYEQCADQQI2AhwgAyABNgIUIANB0hs2AhAgA0EVNgIMQQAhAgwnCyADQQA2AhwgAyABNgIUIANB3Q42AhAgA0ESNgIMQQAhAgwmC0EqIQIMDAsgASAERwRAIANBCTYCCCADIAE2AgRBKSECDAwLQSYhAgwkCyADIAMpAyAiDCAEIAFrrSIKfSILQgAgCyAMWBs3AyAgCiAMVARAQSUhAgwkCyADKAIEIQAgA0EANgIEIAMgACABIAynaiIBEDIiAEUNACADQQU2AhwgAyABNgIUIAMgADYCDEEAIQIMIwtBDyECDAkLQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQTBrDjcXFgABAgMEBQYHFBQUFBQUFAgJCgsMDRQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUDg8QERITFAtCAiEKDBYLQgMhCgwVC0IEIQoMFAtCBSEKDBMLQgYhCgwSC0IHIQoMEQtCCCEKDBALQgkhCgwPC0IKIQoMDgtCCyEKDA0LQgwhCgwMC0INIQoMCwtCDiEKDAoLQg8hCgwJC0IKIQoMCAtCCyEKDAcLQgwhCgwGC0INIQoMBQtCDiEKDAQLQg8hCgwDCyADQQA2AhwgAyABNgIUIANBnxU2AhAgA0EMNgIMQQAhAgwhCyABIARGBEBBIiECDCELQgAhCgJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAS0AAEEwaw43FRQAAQIDBAUGBxYWFhYWFhYICQoLDA0WFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFg4PEBESExYLQgIhCgwUC0IDIQoMEwtCBCEKDBILQgUhCgwRC0IGIQoMEAtCByEKDA8LQgghCgwOC0IJIQoMDQtCCiEKDAwLQgshCgwLC0IMIQoMCgtCDSEKDAkLQg4hCgwIC0IPIQoMBwtCCiEKDAYLQgshCgwFC0IMIQoMBAtCDSEKDAMLQg4hCgwCC0IPIQoMAQtCASEKCyABQQFqIQEgAykDICILQv//////////D1gEQCADIAtCBIYgCoQ3AyAMAgsgA0EANgIcIAMgATYCFCADQbUJNgIQIANBDDYCDEEAIQIMHgtBJyECDAQLQSghAgwDCyADIAE6ACwgA0EANgIAIAdBAWohAUEMIQIMAgsgA0EANgIAIAZBAWohAUEKIQIMAQsgAUEBaiEBQQghAgwACwALQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBcLQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBYLQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBULQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDBQLQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDBMLQQAhAiADQQA2AhwgAyABNgIUIANBsjg2AhAgA0EINgIMDBILQQAhAiADQQA2AhwgAyABNgIUIANBgxE2AhAgA0EJNgIMDBELQQAhAiADQQA2AhwgAyABNgIUIANB3wo2AhAgA0EJNgIMDBALQQAhAiADQQA2AhwgAyABNgIUIANB7RA2AhAgA0EJNgIMDA8LQQAhAiADQQA2AhwgAyABNgIUIANB0hE2AhAgA0EJNgIMDA4LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDA0LQQAhAiADQQA2AhwgAyABNgIUIANBuRc2AhAgA0EPNgIMDAwLQQAhAiADQQA2AhwgAyABNgIUIANBmRM2AhAgA0ELNgIMDAsLQQAhAiADQQA2AhwgAyABNgIUIANBnQk2AhAgA0ELNgIMDAoLQQAhAiADQQA2AhwgAyABNgIUIANBlxA2AhAgA0EKNgIMDAkLQQAhAiADQQA2AhwgAyABNgIUIANBsRA2AhAgA0EKNgIMDAgLQQAhAiADQQA2AhwgAyABNgIUIANBux02AhAgA0ECNgIMDAcLQQAhAiADQQA2AhwgAyABNgIUIANBlhY2AhAgA0ECNgIMDAYLQQAhAiADQQA2AhwgAyABNgIUIANB+Rg2AhAgA0ECNgIMDAULQQAhAiADQQA2AhwgAyABNgIUIANBxBg2AhAgA0ECNgIMDAQLIANBAjYCHCADIAE2AhQgA0GpHjYCECADQRY2AgxBACECDAMLQd4AIQIgASAERg0CIAlBCGohByADKAIAIQUCQAJAIAEgBEcEQCAFQZbIAGohCCAEIAVqIAFrIQYgBUF/c0EKaiIFIAFqIQADQCABLQAAIAgtAABHBEBBAiEIDAMLIAVFBEBBACEIIAAhAQwDCyAFQQFrIQUgCEEBaiEIIAQgAUEBaiIBRw0ACyAGIQUgBCEBCyAHQQE2AgAgAyAFNgIADAELIANBADYCACAHIAg2AgALIAcgATYCBCAJKAIMIQACQAJAIAkoAghBAWsOAgQBAAsgA0EANgIcIANBwh42AhAgA0EXNgIMIAMgAEEBajYCFEEAIQIMAwsgA0EANgIcIAMgADYCFCADQdceNgIQIANBCTYCDEEAIQIMAgsgASAERgRAQSghAgwCCyADQQk2AgggAyABNgIEQSchAgwBCyABIARGBEBBASECDAELA0ACQAJAAkAgAS0AAEEKaw4EAAEBAAELIAFBAWohAQwBCyABQQFqIQEgAy0ALkEgcQ0AQQAhAiADQQA2AhwgAyABNgIUIANBoSE2AhAgA0EFNgIMDAILQQEhAiABIARHDQALCyAJQRBqJAAgAkUEQCADKAIMIQAMAQsgAyACNgIcQQAhACADKAIEIgFFDQAgAyABIAQgAygCCBEBACIBRQ0AIAMgBDYCFCADIAE2AgwgASEACyAAC74CAQJ/IABBADoAACAAQeQAaiIBQQFrQQA6AAAgAEEAOgACIABBADoAASABQQNrQQA6AAAgAUECa0EAOgAAIABBADoAAyABQQRrQQA6AABBACAAa0EDcSIBIABqIgBBADYCAEHkACABa0F8cSICIABqIgFBBGtBADYCAAJAIAJBCUkNACAAQQA2AgggAEEANgIEIAFBCGtBADYCACABQQxrQQA2AgAgAkEZSQ0AIABBADYCGCAAQQA2AhQgAEEANgIQIABBADYCDCABQRBrQQA2AgAgAUEUa0EANgIAIAFBGGtBADYCACABQRxrQQA2AgAgAiAAQQRxQRhyIgJrIgFBIEkNACAAIAJqIQADQCAAQgA3AxggAEIANwMQIABCADcDCCAAQgA3AwAgAEEgaiEAIAFBIGsiAUEfSw0ACwsLVgEBfwJAIAAoAgwNAAJAAkACQAJAIAAtADEOAwEAAwILIAAoAjgiAUUNACABKAIwIgFFDQAgACABEQAAIgENAwtBAA8LAAsgAEHKGTYCEEEOIQELIAELGgAgACgCDEUEQCAAQd4fNgIQIABBFTYCDAsLFAAgACgCDEEVRgRAIABBADYCDAsLFAAgACgCDEEWRgRAIABBADYCDAsLBwAgACgCDAsHACAAKAIQCwkAIAAgATYCEAsHACAAKAIUCysAAkAgAEEnTw0AQv//////CSAArYhCAYNQDQAgAEECdEHQOGooAgAPCwALFwAgAEEvTwRAAAsgAEECdEHsOWooAgALvwkBAX9B9C0hAQJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HqLA8LQZgmDwtB7TEPC0GgNw8LQckpDwtBtCkPC0GWLQ8LQesrDwtBojUPC0HbNA8LQeApDwtB4yQPC0HVJA8LQe4kDwtB5iUPC0HKNA8LQdA3DwtBqjUPC0H1LA8LQfYmDwtBgiIPC0HyMw8LQb4oDwtB5zcPC0HNIQ8LQcAhDwtBuCUPC0HLJQ8LQZYkDwtBjzQPC0HNNQ8LQd0qDwtB7jMPC0GcNA8LQZ4xDwtB9DUPC0HlIg8LQa8lDwtBmTEPC0GyNg8LQfk2DwtBxDIPC0HdLA8LQYIxDwtBwTEPC0GNNw8LQckkDwtB7DYPC0HnKg8LQcgjDwtB4iEPC0HJNw8LQaUiDwtBlCIPC0HbNg8LQd41DwtBhiYPC0G8Kw8LQYsyDwtBoCMPC0H2MA8LQYAsDwtBiSsPC0GkJg8LQfIjDwtBgSgPC0GrMg8LQesnDwtBwjYPC0GiJA8LQc8qDwtB3CMPC0GHJw8LQeQ0DwtBtyIPC0GtMQ8LQdUiDwtBrzQPC0HeJg8LQdYyDwtB9DQPC0GBOA8LQfQ3DwtBkjYPC0GdJw8LQYIpDwtBjSMPC0HXMQ8LQb01DwtBtDcPC0HYMA8LQbYnDwtBmjgPC0GnKg8LQcQnDwtBriMPC0H1Ig8LAAtByiYhAQsgAQsXACAAIAAvAS5B/v8DcSABQQBHcjsBLgsaACAAIAAvAS5B/f8DcSABQQBHQQF0cjsBLgsaACAAIAAvAS5B+/8DcSABQQBHQQJ0cjsBLgsaACAAIAAvAS5B9/8DcSABQQBHQQN0cjsBLgsaACAAIAAvAS5B7/8DcSABQQBHQQR0cjsBLgsaACAAIAAvAS5B3/8DcSABQQBHQQV0cjsBLgsaACAAIAAvAS5Bv/8DcSABQQBHQQZ0cjsBLgsaACAAIAAvAS5B//4DcSABQQBHQQd0cjsBLgsaACAAIAAvAS5B//0DcSABQQBHQQh0cjsBLgsaACAAIAAvAS5B//sDcSABQQBHQQl0cjsBLgs+AQJ/AkAgACgCOCIDRQ0AIAMoAgQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeESNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAggiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfwRNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAgwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQewKNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQfoeNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQcsQNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhgiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQbcfNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAhwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQb8VNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiwiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQf4INgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiAiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQYwdNgIQQRghBAsgBAs+AQJ/AkAgACgCOCIDRQ0AIAMoAiQiA0UNACAAIAEgAiABayADEQEAIgRBf0cNACAAQeYVNgIQQRghBAsgBAs4ACAAAn8gAC8BMkEUcUEURgRAQQEgAC0AKEEBRg0BGiAALwE0QeUARgwBCyAALQApQQVGCzoAMAtZAQJ/AkAgAC0AKEEBRg0AIAAvATQiAUHkAGtB5ABJDQAgAUHMAUYNACABQbACRg0AIAAvATIiAEHAAHENAEEBIQIgAEGIBHFBgARGDQAgAEEocUUhAgsgAguMAQECfwJAAkACQCAALQAqRQ0AIAAtACtFDQAgAC8BMiIBQQJxRQ0BDAILIAAvATIiAUEBcUUNAQtBASECIAAtAChBAUYNACAALwE0IgBB5ABrQeQASQ0AIABBzAFGDQAgAEGwAkYNACABQcAAcQ0AQQAhAiABQYgEcUGABEYNACABQShxQQBHIQILIAILcwAgAEEQav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAP0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEwav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEEgav0MAAAAAAAAAAAAAAAAAAAAAP0LAwAgAEH9ATYCHAsGACAAEDoLmi0BC38jAEEQayIKJABB3NUAKAIAIglFBEBBnNkAKAIAIgVFBEBBqNkAQn83AgBBoNkAQoCAhICAgMAANwIAQZzZACAKQQhqQXBxQdiq1aoFcyIFNgIAQbDZAEEANgIAQYDZAEEANgIAC0GE2QBBwNkENgIAQdTVAEHA2QQ2AgBB6NUAIAU2AgBB5NUAQX82AgBBiNkAQcCmAzYCAANAIAFBgNYAaiABQfTVAGoiAjYCACACIAFB7NUAaiIDNgIAIAFB+NUAaiADNgIAIAFBiNYAaiABQfzVAGoiAzYCACADIAI2AgAgAUGQ1gBqIAFBhNYAaiICNgIAIAIgAzYCACABQYzWAGogAjYCACABQSBqIgFBgAJHDQALQczZBEGBpgM2AgBB4NUAQazZACgCADYCAEHQ1QBBgKYDNgIAQdzVAEHI2QQ2AgBBzP8HQTg2AgBByNkEIQkLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAU0EQEHE1QAoAgAiBkEQIABBE2pBcHEgAEELSRsiBEEDdiIAdiIBQQNxBEACQCABQQFxIAByQQFzIgJBA3QiAEHs1QBqIgEgAEH01QBqKAIAIgAoAggiA0YEQEHE1QAgBkF+IAJ3cTYCAAwBCyABIAM2AgggAyABNgIMCyAAQQhqIQEgACACQQN0IgJBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMEQtBzNUAKAIAIgggBE8NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgBBA3QiAkHs1QBqIgEgAkH01QBqKAIAIgIoAggiA0YEQEHE1QAgBkF+IAB3cSIGNgIADAELIAEgAzYCCCADIAE2AgwLIAIgBEEDcjYCBCAAQQN0IgAgBGshBSAAIAJqIAU2AgAgAiAEaiIEIAVBAXI2AgQgCARAIAhBeHFB7NUAaiEAQdjVACgCACEDAn9BASAIQQN2dCIBIAZxRQRAQcTVACABIAZyNgIAIAAMAQsgACgCCAsiASADNgIMIAAgAzYCCCADIAA2AgwgAyABNgIICyACQQhqIQFB2NUAIAQ2AgBBzNUAIAU2AgAMEQtByNUAKAIAIgtFDQEgC2hBAnRB9NcAaigCACIAKAIEQXhxIARrIQUgACECA0ACQCACKAIQIgFFBEAgAkEUaigCACIBRQ0BCyABKAIEQXhxIARrIgMgBUkhAiADIAUgAhshBSABIAAgAhshACABIQIMAQsLIAAoAhghCSAAKAIMIgMgAEcEQEHU1QAoAgAaIAMgACgCCCIBNgIIIAEgAzYCDAwQCyAAQRRqIgIoAgAiAUUEQCAAKAIQIgFFDQMgAEEQaiECCwNAIAIhByABIgNBFGoiAigCACIBDQAgA0EQaiECIAMoAhAiAQ0ACyAHQQA2AgAMDwtBfyEEIABBv39LDQAgAEETaiIBQXBxIQRByNUAKAIAIghFDQBBACAEayEFAkACQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEH01wBqKAIAIgJFBEBBACEBQQAhAwwBC0EAIQEgBEEZIAZBAXZrQQAgBkEfRxt0IQBBACEDA0ACQCACKAIEQXhxIARrIgcgBU8NACACIQMgByIFDQBBACEFIAIhAQwDCyABIAJBFGooAgAiByAHIAIgAEEddkEEcWpBEGooAgAiAkYbIAEgBxshASAAQQF0IQAgAg0ACwsgASADckUEQEEAIQNBAiAGdCIAQQAgAGtyIAhxIgBFDQMgAGhBAnRB9NcAaigCACEBCyABRQ0BCwNAIAEoAgRBeHEgBGsiAiAFSSEAIAIgBSAAGyEFIAEgAyAAGyEDIAEoAhAiAAR/IAAFIAFBFGooAgALIgENAAsLIANFDQAgBUHM1QAoAgAgBGtPDQAgAygCGCEHIAMgAygCDCIARwRAQdTVACgCABogACADKAIIIgE2AgggASAANgIMDA4LIANBFGoiAigCACIBRQRAIAMoAhAiAUUNAyADQRBqIQILA0AgAiEGIAEiAEEUaiICKAIAIgENACAAQRBqIQIgACgCECIBDQALIAZBADYCAAwNC0HM1QAoAgAiAyAETwRAQdjVACgCACEBAkAgAyAEayICQRBPBEAgASAEaiIAIAJBAXI2AgQgASADaiACNgIAIAEgBEEDcjYCBAwBCyABIANBA3I2AgQgASADaiIAIAAoAgRBAXI2AgRBACEAQQAhAgtBzNUAIAI2AgBB2NUAIAA2AgAgAUEIaiEBDA8LQdDVACgCACIDIARLBEAgBCAJaiIAIAMgBGsiAUEBcjYCBEHc1QAgADYCAEHQ1QAgATYCACAJIARBA3I2AgQgCUEIaiEBDA8LQQAhASAEAn9BnNkAKAIABEBBpNkAKAIADAELQajZAEJ/NwIAQaDZAEKAgISAgIDAADcCAEGc2QAgCkEMakFwcUHYqtWqBXM2AgBBsNkAQQA2AgBBgNkAQQA2AgBBgIAECyIAIARBxwBqIgVqIgZBACAAayIHcSICTwRAQbTZAEEwNgIADA8LAkBB/NgAKAIAIgFFDQBB9NgAKAIAIgggAmohACAAIAFNIAAgCEtxDQBBACEBQbTZAEEwNgIADA8LQYDZAC0AAEEEcQ0EAkACQCAJBEBBhNkAIQEDQCABKAIAIgAgCU0EQCAAIAEoAgRqIAlLDQMLIAEoAggiAQ0ACwtBABA7IgBBf0YNBSACIQZBoNkAKAIAIgFBAWsiAyAAcQRAIAIgAGsgACADakEAIAFrcWohBgsgBCAGTw0FIAZB/v///wdLDQVB/NgAKAIAIgMEQEH02AAoAgAiByAGaiEBIAEgB00NBiABIANLDQYLIAYQOyIBIABHDQEMBwsgBiADayAHcSIGQf7///8HSw0EIAYQOyEAIAAgASgCACABKAIEakYNAyAAIQELAkAgBiAEQcgAak8NACABQX9GDQBBpNkAKAIAIgAgBSAGa2pBACAAa3EiAEH+////B0sEQCABIQAMBwsgABA7QX9HBEAgACAGaiEGIAEhAAwHC0EAIAZrEDsaDAQLIAEiAEF/Rw0FDAMLQQAhAwwMC0EAIQAMCgsgAEF/Rw0CC0GA2QBBgNkAKAIAQQRyNgIACyACQf7///8HSw0BIAIQOyEAQQAQOyEBIABBf0YNASABQX9GDQEgACABTw0BIAEgAGsiBiAEQThqTQ0BC0H02ABB9NgAKAIAIAZqIgE2AgBB+NgAKAIAIAFJBEBB+NgAIAE2AgALAkACQAJAQdzVACgCACICBEBBhNkAIQEDQCAAIAEoAgAiAyABKAIEIgVqRg0CIAEoAggiAQ0ACwwCC0HU1QAoAgAiAUEARyAAIAFPcUUEQEHU1QAgADYCAAtBACEBQYjZACAGNgIAQYTZACAANgIAQeTVAEF/NgIAQejVAEGc2QAoAgA2AgBBkNkAQQA2AgADQCABQYDWAGogAUH01QBqIgI2AgAgAiABQezVAGoiAzYCACABQfjVAGogAzYCACABQYjWAGogAUH81QBqIgM2AgAgAyACNgIAIAFBkNYAaiABQYTWAGoiAjYCACACIAM2AgAgAUGM1gBqIAI2AgAgAUEgaiIBQYACRw0AC0F4IABrQQ9xIgEgAGoiAiAGQThrIgMgAWsiAUEBcjYCBEHg1QBBrNkAKAIANgIAQdDVACABNgIAQdzVACACNgIAIAAgA2pBODYCBAwCCyAAIAJNDQAgAiADSQ0AIAEoAgxBCHENAEF4IAJrQQ9xIgAgAmoiA0HQ1QAoAgAgBmoiByAAayIAQQFyNgIEIAEgBSAGajYCBEHg1QBBrNkAKAIANgIAQdDVACAANgIAQdzVACADNgIAIAIgB2pBODYCBAwBCyAAQdTVACgCAEkEQEHU1QAgADYCAAsgACAGaiEDQYTZACEBAkACQAJAA0AgAyABKAIARwRAIAEoAggiAQ0BDAILCyABLQAMQQhxRQ0BC0GE2QAhAQNAIAEoAgAiAyACTQRAIAMgASgCBGoiBSACSw0DCyABKAIIIQEMAAsACyABIAA2AgAgASABKAIEIAZqNgIEIABBeCAAa0EPcWoiCSAEQQNyNgIEIANBeCADa0EPcWoiBiAEIAlqIgRrIQEgAiAGRgRAQdzVACAENgIAQdDVAEHQ1QAoAgAgAWoiADYCACAEIABBAXI2AgQMCAtB2NUAKAIAIAZGBEBB2NUAIAQ2AgBBzNUAQczVACgCACABaiIANgIAIAQgAEEBcjYCBCAAIARqIAA2AgAMCAsgBigCBCIFQQNxQQFHDQYgBUF4cSEIIAVB/wFNBEAgBUEDdiEDIAYoAggiACAGKAIMIgJGBEBBxNUAQcTVACgCAEF+IAN3cTYCAAwHCyACIAA2AgggACACNgIMDAYLIAYoAhghByAGIAYoAgwiAEcEQCAAIAYoAggiAjYCCCACIAA2AgwMBQsgBkEUaiICKAIAIgVFBEAgBigCECIFRQ0EIAZBEGohAgsDQCACIQMgBSIAQRRqIgIoAgAiBQ0AIABBEGohAiAAKAIQIgUNAAsgA0EANgIADAQLQXggAGtBD3EiASAAaiIHIAZBOGsiAyABayIBQQFyNgIEIAAgA2pBODYCBCACIAVBNyAFa0EPcWpBP2siAyADIAJBEGpJGyIDQSM2AgRB4NUAQazZACgCADYCAEHQ1QAgATYCAEHc1QAgBzYCACADQRBqQYzZACkCADcCACADQYTZACkCADcCCEGM2QAgA0EIajYCAEGI2QAgBjYCAEGE2QAgADYCAEGQ2QBBADYCACADQSRqIQEDQCABQQc2AgAgBSABQQRqIgFLDQALIAIgA0YNACADIAMoAgRBfnE2AgQgAyADIAJrIgU2AgAgAiAFQQFyNgIEIAVB/wFNBEAgBUF4cUHs1QBqIQACf0HE1QAoAgAiAUEBIAVBA3Z0IgNxRQRAQcTVACABIANyNgIAIAAMAQsgACgCCAsiASACNgIMIAAgAjYCCCACIAA2AgwgAiABNgIIDAELQR8hASAFQf///wdNBEAgBUEmIAVBCHZnIgBrdkEBcSAAQQF0a0E+aiEBCyACIAE2AhwgAkIANwIQIAFBAnRB9NcAaiEAQcjVACgCACIDQQEgAXQiBnFFBEAgACACNgIAQcjVACADIAZyNgIAIAIgADYCGCACIAI2AgggAiACNgIMDAELIAVBGSABQQF2a0EAIAFBH0cbdCEBIAAoAgAhAwJAA0AgAyIAKAIEQXhxIAVGDQEgAUEddiEDIAFBAXQhASAAIANBBHFqQRBqIgYoAgAiAw0ACyAGIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggMAQsgACgCCCIBIAI2AgwgACACNgIIIAJBADYCGCACIAA2AgwgAiABNgIIC0HQ1QAoAgAiASAETQ0AQdzVACgCACIAIARqIgIgASAEayIBQQFyNgIEQdDVACABNgIAQdzVACACNgIAIAAgBEEDcjYCBCAAQQhqIQEMCAtBACEBQbTZAEEwNgIADAcLQQAhAAsgB0UNAAJAIAYoAhwiAkECdEH01wBqIgMoAgAgBkYEQCADIAA2AgAgAA0BQcjVAEHI1QAoAgBBfiACd3E2AgAMAgsgB0EQQRQgBygCECAGRhtqIAA2AgAgAEUNAQsgACAHNgIYIAYoAhAiAgRAIAAgAjYCECACIAA2AhgLIAZBFGooAgAiAkUNACAAQRRqIAI2AgAgAiAANgIYCyABIAhqIQEgBiAIaiIGKAIEIQULIAYgBUF+cTYCBCABIARqIAE2AgAgBCABQQFyNgIEIAFB/wFNBEAgAUF4cUHs1QBqIQACf0HE1QAoAgAiAkEBIAFBA3Z0IgFxRQRAQcTVACABIAJyNgIAIAAMAQsgACgCCAsiASAENgIMIAAgBDYCCCAEIAA2AgwgBCABNgIIDAELQR8hBSABQf///wdNBEAgAUEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+aiEFCyAEIAU2AhwgBEIANwIQIAVBAnRB9NcAaiEAQcjVACgCACICQQEgBXQiA3FFBEAgACAENgIAQcjVACACIANyNgIAIAQgADYCGCAEIAQ2AgggBCAENgIMDAELIAFBGSAFQQF2a0EAIAVBH0cbdCEFIAAoAgAhAAJAA0AgACICKAIEQXhxIAFGDQEgBUEddiEAIAVBAXQhBSACIABBBHFqQRBqIgMoAgAiAA0ACyADIAQ2AgAgBCACNgIYIAQgBDYCDCAEIAQ2AggMAQsgAigCCCIAIAQ2AgwgAiAENgIIIARBADYCGCAEIAI2AgwgBCAANgIICyAJQQhqIQEMAgsCQCAHRQ0AAkAgAygCHCIBQQJ0QfTXAGoiAigCACADRgRAIAIgADYCACAADQFByNUAIAhBfiABd3EiCDYCAAwCCyAHQRBBFCAHKAIQIANGG2ogADYCACAARQ0BCyAAIAc2AhggAygCECIBBEAgACABNgIQIAEgADYCGAsgA0EUaigCACIBRQ0AIABBFGogATYCACABIAA2AhgLAkAgBUEPTQRAIAMgBCAFaiIAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEDAELIAMgBGoiAiAFQQFyNgIEIAMgBEEDcjYCBCACIAVqIAU2AgAgBUH/AU0EQCAFQXhxQezVAGohAAJ/QcTVACgCACIBQQEgBUEDdnQiBXFFBEBBxNUAIAEgBXI2AgAgAAwBCyAAKAIICyIBIAI2AgwgACACNgIIIAIgADYCDCACIAE2AggMAQtBHyEBIAVB////B00EQCAFQSYgBUEIdmciAGt2QQFxIABBAXRrQT5qIQELIAIgATYCHCACQgA3AhAgAUECdEH01wBqIQBBASABdCIEIAhxRQRAIAAgAjYCAEHI1QAgBCAIcjYCACACIAA2AhggAiACNgIIIAIgAjYCDAwBCyAFQRkgAUEBdmtBACABQR9HG3QhASAAKAIAIQQCQANAIAQiACgCBEF4cSAFRg0BIAFBHXYhBCABQQF0IQEgACAEQQRxakEQaiIGKAIAIgQNAAsgBiACNgIAIAIgADYCGCACIAI2AgwgAiACNgIIDAELIAAoAggiASACNgIMIAAgAjYCCCACQQA2AhggAiAANgIMIAIgATYCCAsgA0EIaiEBDAELAkAgCUUNAAJAIAAoAhwiAUECdEH01wBqIgIoAgAgAEYEQCACIAM2AgAgAw0BQcjVACALQX4gAXdxNgIADAILIAlBEEEUIAkoAhAgAEYbaiADNgIAIANFDQELIAMgCTYCGCAAKAIQIgEEQCADIAE2AhAgASADNgIYCyAAQRRqKAIAIgFFDQAgA0EUaiABNgIAIAEgAzYCGAsCQCAFQQ9NBEAgACAEIAVqIgFBA3I2AgQgACABaiIBIAEoAgRBAXI2AgQMAQsgACAEaiIHIAVBAXI2AgQgACAEQQNyNgIEIAUgB2ogBTYCACAIBEAgCEF4cUHs1QBqIQFB2NUAKAIAIQMCf0EBIAhBA3Z0IgIgBnFFBEBBxNUAIAIgBnI2AgAgAQwBCyABKAIICyICIAM2AgwgASADNgIIIAMgATYCDCADIAI2AggLQdjVACAHNgIAQczVACAFNgIACyAAQQhqIQELIApBEGokACABC0MAIABFBEA/AEEQdA8LAkAgAEH//wNxDQAgAEEASA0AIABBEHZAACIAQX9GBEBBtNkAQTA2AgBBfw8LIABBEHQPCwALC5lCIgBBgAgLDQEAAAAAAAAAAgAAAAMAQZgICwUEAAAABQBBqAgLCQYAAAAHAAAACABB5AgLwjJJbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+EgAA/hQAADYVAAALFgAA2BYAAPMSAABCGAAArBYAABIVAAAUFwAA7xcAAEgUAABxFwAAshoAAGsZAAB+GQAANRQAAIIaAABEFwAA/RYAAB4YAACHFwAAqhkAAJMSAAAHGAAALBcAAMoXAACkFwAA5xUAAOcVAABYFwAAOxgAAKASAAAtHAAAwxEAAEgRAADeEgAAQhMAAKQZAAD9EAAA9xUAAKUVAADvFgAA+BkAAEoWAABWFgAA9RUAAAoaAAAIGgAAARoAAKsVAABCEgAA1xAAAEwRAAAFGQAAVBYAAB4RAADKGQAAyBkAAE4WAAD/GAAAcRQAAPAVAADuFQAAlBkAAPwVAAC/GQAAmxkAAHwUAABDEQAAcBgAAJUUAAAnFAAAGRQAANUSAADUGQAARBYAAPcQAEG5OwsBAQBB0DsL4AEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEDAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBuj0LBAEAAAIAQdE9C14DBAMDAwMDAAADAwADAwADAwMDAwMDAwMDAAUAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAwADAEG6PwsEAQAAAgBB0T8LXgMAAwMDAwMAAAMDAAMDAAMDAwMDAwMDAwMABAAFAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwADAAMAQbDBAAsNbG9zZWVlcC1hbGl2ZQBBycEACwEBAEHgwQAL4AEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBBycMACwEBAEHgwwAL5wEBAQEBAQEBAQEBAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAWNodW5rZWQAQfHFAAteAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBB0McACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQYDIAAsgcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQpTTQ0KDQoAQanIAAsFAQIAAQMAQcDIAAtfBAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanKAAsFAQIAAQMAQcDKAAtfBAUFBgUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAQanMAAsEAQAAAQBBwcwAC14CAgACAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAEGpzgALBQECAAEDAEHAzgALXwQFAAAFBQUFBQUFBQUFBQYFBQUFBQUFBQUFBQUABQAHCAUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQAFAAUABQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUAAAAFAEGp0AALBQEBAAEBAEHA0AALAQEAQdrQAAtBAgAAAAAAAAMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQanSAAsFAQEAAQEAQcDSAAsBAQBBytIACwYCAAAAAAIAQeHSAAs6AwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBBoNQAC50BTk9VTkNFRUNLT1VUTkVDVEVURUNSSUJFTFVTSEVURUFEU0VBUkNIUkdFQ1RJVklUWUxFTkRBUlZFT1RJRllQVElPTlNDSFNFQVlTVEFUQ0hHRVVFUllPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFVFRQQ0VUU1BBRFRQLw==","base64"))})},23493:(a,b,c)=>{"use strict";global.__vaultStats??={entries:0,hits:0,bytesSaved:0}},24081:(a,b,c)=>{"use strict";c.d(b,{c:()=>l,y:()=>m});var d=c(20437),e=c(4107);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1});let f=global._dbAdapter;async function g(a){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(8062).then(c.bind(c,38062));return await a(d.AL)}catch(b){return a.push(b),console.warn(`[DB] bun:sqlite unavailable: ${b.message}`),null}}async function h(a){if(process.versions.bun)return null;try{let{createBetterSqliteAdapter:a}=await c.e(8469).then(c.bind(c,88469));return a(d.AL)}catch(b){return a.push(b),console.warn(`[DB] better-sqlite3 unavailable: ${b.message}`),null}}async function i(a){if(process.versions.bun)return null;let[b,e]=process.versions.node.split(".").map(Number);if(b<22||22===b&&e<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(4803).then(c.bind(c,54803));return await a(d.AL)}catch(b){return a.push(b),console.warn(`[DB] node:sqlite unavailable: ${b.message}`),null}}async function j(a){try{let{createSqlJsAdapter:a}=await c.e(6252).then(c.bind(c,66252));return await a(d.AL)}catch(b){return a.push(b),console.warn(`[DB] sql.js unavailable: ${b.message}`),null}}async function k(){if((0,e.I)())throw Error(`[DB] refusing to open ${d.AL} during next build — mark the calling page 'force-dynamic'`);(0,d.Jh)();let a=[],b=await g(a);if(b||(b=await h(a)),b||(b=await i(a)),b||(b=await j(a)),!b){if(a.some(a=>a?.code==="SQLITE_CORRUPT"||/corrupt|malformed|not a database/i.test(a?.message||"")))throw Error(`[DB] Database appears corrupted: ${d.AL}. Restore one of the five automatic backups from ${d.KQ}.`);throw Error("[DB] No SQLite driver available (bun/better/node/sql.js all failed)")}if(!f.logged){let a="sql.js"===b.driver?"warn":"log";"sql.js"===b.driver?console.warn(`[DB] WARNING: using sql.js fallback (in-memory + full-file rewrite). Prefer Node ≥22.5 (node:sqlite) or install better-sqlite3. file: ${d.AL}`):console[a](`[DB] Driver: ${b.driver} | file: ${d.AL}`),f.logged=!0}let{runMigrationOnce:k}=await c.e(1064).then(c.bind(c,51064));return await k(b),b}async function l(){return f.instance?f.instance:(f.initPromise||(f.initPromise=k().then(a=>(f.instance=a,a))),f.initPromise)}async function m(){let a=f.instance||(f.initPromise?await f.initPromise.catch(()=>null):null);if(a)try{a.close?.()}finally{f.instance=null,f.initPromise=null}}},24214:a=>{"use strict";a.exports={parseHttpDate:function(a){switch(a[3]){case",":return function(a){if(29!==a.length||" "!==a[4]||" "!==a[7]||" "!==a[11]||" "!==a[16]||":"!==a[19]||":"!==a[22]||" "!==a[25]||"G"!==a[26]||"M"!==a[27]||"T"!==a[28])return;let b=-1;if("S"===a[0]&&"u"===a[1]&&"n"===a[2])b=0;else if("M"===a[0]&&"o"===a[1]&&"n"===a[2])b=1;else if("T"===a[0]&&"u"===a[1]&&"e"===a[2])b=2;else if("W"===a[0]&&"e"===a[1]&&"d"===a[2])b=3;else if("T"===a[0]&&"h"===a[1]&&"u"===a[2])b=4;else if("F"===a[0]&&"r"===a[1]&&"i"===a[2])b=5;else{if("S"!==a[0]||"a"!==a[1]||"t"!==a[2])return;b=6}let c=0;if("0"===a[5]){let b=a.charCodeAt(6);if(b<49||b>57)return;c=b-48}else{let b=a.charCodeAt(5);if(b<49||b>51)return;let d=a.charCodeAt(6);if(d<48||d>57)return;c=(b-48)*10+(d-48)}let d=-1;if("J"===a[8]&&"a"===a[9]&&"n"===a[10])d=0;else if("F"===a[8]&&"e"===a[9]&&"b"===a[10])d=1;else if("M"===a[8]&&"a"===a[9])if("r"===a[10])d=2;else{if("y"!==a[10])return;d=4}else if("J"===a[8])if("a"===a[9]&&"n"===a[10])d=0;else if("u"!==a[9])return;else if("n"===a[10])d=5;else{if("l"!==a[10])return;d=6}else if("A"===a[8])if("p"===a[9]&&"r"===a[10])d=3;else{if("u"!==a[9]||"g"!==a[10])return;d=7}else if("S"===a[8]&&"e"===a[9]&&"p"===a[10])d=8;else if("O"===a[8]&&"c"===a[9]&&"t"===a[10])d=9;else if("N"===a[8]&&"o"===a[9]&&"v"===a[10])d=10;else{if("D"!==a[8]||"e"!==a[9]||"c"!==a[10])return;d=11}let e=a.charCodeAt(12);if(e<48||e>57)return;let f=a.charCodeAt(13);if(f<48||f>57)return;let g=a.charCodeAt(14);if(g<48||g>57)return;let h=a.charCodeAt(15);if(h<48||h>57)return;let i=0;if("0"===a[17]){let b=a.charCodeAt(18);if(b<48||b>57)return;i=b-48}else{let b=a.charCodeAt(17);if(b<48||b>50)return;let c=a.charCodeAt(18);if(c<48||c>57||50===b&&c>51)return;i=(b-48)*10+(c-48)}let j=0;if("0"===a[20]){let b=a.charCodeAt(21);if(b<48||b>57)return;j=b-48}else{let b=a.charCodeAt(20);if(b<48||b>53)return;let c=a.charCodeAt(21);if(c<48||c>57)return;j=(b-48)*10+(c-48)}let k=0;if("0"===a[23]){let b=a.charCodeAt(24);if(b<48||b>57)return;k=b-48}else{let b=a.charCodeAt(23);if(b<48||b>53)return;let c=a.charCodeAt(24);if(c<48||c>57)return;k=(b-48)*10+(c-48)}let l=new Date(Date.UTC((e-48)*1e3+(f-48)*100+(g-48)*10+(h-48),d,c,i,j,k));return l.getUTCDay()===b?l:void 0}(a);case" ":return function(a){if(24!==a.length||" "!==a[7]||" "!==a[10]||" "!==a[19])return;let b=-1;if("S"===a[0]&&"u"===a[1]&&"n"===a[2])b=0;else if("M"===a[0]&&"o"===a[1]&&"n"===a[2])b=1;else if("T"===a[0]&&"u"===a[1]&&"e"===a[2])b=2;else if("W"===a[0]&&"e"===a[1]&&"d"===a[2])b=3;else if("T"===a[0]&&"h"===a[1]&&"u"===a[2])b=4;else if("F"===a[0]&&"r"===a[1]&&"i"===a[2])b=5;else{if("S"!==a[0]||"a"!==a[1]||"t"!==a[2])return;b=6}let c=-1;if("J"===a[4]&&"a"===a[5]&&"n"===a[6])c=0;else if("F"===a[4]&&"e"===a[5]&&"b"===a[6])c=1;else if("M"===a[4]&&"a"===a[5])if("r"===a[6])c=2;else{if("y"!==a[6])return;c=4}else if("J"===a[4])if("a"===a[5]&&"n"===a[6])c=0;else if("u"!==a[5])return;else if("n"===a[6])c=5;else{if("l"!==a[6])return;c=6}else if("A"===a[4])if("p"===a[5]&&"r"===a[6])c=3;else{if("u"!==a[5]||"g"!==a[6])return;c=7}else if("S"===a[4]&&"e"===a[5]&&"p"===a[6])c=8;else if("O"===a[4]&&"c"===a[5]&&"t"===a[6])c=9;else if("N"===a[4]&&"o"===a[5]&&"v"===a[6])c=10;else{if("D"!==a[4]||"e"!==a[5]||"c"!==a[6])return;c=11}let d=0;if(" "===a[8]){let b=a.charCodeAt(9);if(b<49||b>57)return;d=b-48}else{let b=a.charCodeAt(8);if(b<49||b>51)return;let c=a.charCodeAt(9);if(c<48||c>57)return;d=(b-48)*10+(c-48)}let e=0;if("0"===a[11]){let b=a.charCodeAt(12);if(b<48||b>57)return;e=b-48}else{let b=a.charCodeAt(11);if(b<48||b>50)return;let c=a.charCodeAt(12);if(c<48||c>57||50===b&&c>51)return;e=(b-48)*10+(c-48)}let f=0;if("0"===a[14]){let b=a.charCodeAt(15);if(b<48||b>57)return;f=b-48}else{let b=a.charCodeAt(14);if(b<48||b>53)return;let c=a.charCodeAt(15);if(c<48||c>57)return;f=(b-48)*10+(c-48)}let g=0;if("0"===a[17]){let b=a.charCodeAt(18);if(b<48||b>57)return;g=b-48}else{let b=a.charCodeAt(17);if(b<48||b>53)return;let c=a.charCodeAt(18);if(c<48||c>57)return;g=(b-48)*10+(c-48)}let h=a.charCodeAt(20);if(h<48||h>57)return;let i=a.charCodeAt(21);if(i<48||i>57)return;let j=a.charCodeAt(22);if(j<48||j>57)return;let k=a.charCodeAt(23);if(k<48||k>57)return;let l=new Date(Date.UTC((h-48)*1e3+(i-48)*100+(j-48)*10+(k-48),c,d,e,f,g));return l.getUTCDay()===b?l:void 0}(a);default:return function(a){let b=-1,c=-1;if("S"===a[0])"u"===a[1]&&"n"===a[2]&&"d"===a[3]&&"a"===a[4]&&"y"===a[5]?(c=0,b=6):"a"===a[1]&&"t"===a[2]&&"u"===a[3]&&"r"===a[4]&&"d"===a[5]&&"a"===a[6]&&"y"===a[7]&&(c=6,b=8);else if("M"===a[0]&&"o"===a[1]&&"n"===a[2]&&"d"===a[3]&&"a"===a[4]&&"y"===a[5])c=1,b=6;else if("T"===a[0])"u"===a[1]&&"e"===a[2]&&"s"===a[3]&&"d"===a[4]&&"a"===a[5]&&"y"===a[6]?(c=2,b=7):"h"===a[1]&&"u"===a[2]&&"r"===a[3]&&"s"===a[4]&&"d"===a[5]&&"a"===a[6]&&"y"===a[7]&&(c=4,b=8);else if("W"===a[0]&&"e"===a[1]&&"d"===a[2]&&"n"===a[3]&&"e"===a[4]&&"s"===a[5]&&"d"===a[6]&&"a"===a[7]&&"y"===a[8])c=3,b=9;else{if("F"!==a[0]||"r"!==a[1]||"i"!==a[2]||"d"!==a[3]||"a"!==a[4]||"y"!==a[5])return;c=5,b=6}if(","!==a[b]||a.length-b-1!=23||" "!==a[b+1]||"-"!==a[b+4]||"-"!==a[b+8]||" "!==a[b+11]||":"!==a[b+14]||":"!==a[b+17]||" "!==a[b+20]||"G"!==a[b+21]||"M"!==a[b+22]||"T"!==a[b+23])return;let d=0;if("0"===a[b+2]){let c=a.charCodeAt(b+3);if(c<49||c>57)return;d=c-48}else{let c=a.charCodeAt(b+2);if(c<49||c>51)return;let e=a.charCodeAt(b+3);if(e<48||e>57)return;d=(c-48)*10+(e-48)}let e=-1;if("J"===a[b+5]&&"a"===a[b+6]&&"n"===a[b+7])e=0;else if("F"===a[b+5]&&"e"===a[b+6]&&"b"===a[b+7])e=1;else if("M"===a[b+5]&&"a"===a[b+6]&&"r"===a[b+7])e=2;else if("A"===a[b+5]&&"p"===a[b+6]&&"r"===a[b+7])e=3;else if("M"===a[b+5]&&"a"===a[b+6]&&"y"===a[b+7])e=4;else if("J"===a[b+5]&&"u"===a[b+6]&&"n"===a[b+7])e=5;else if("J"===a[b+5]&&"u"===a[b+6]&&"l"===a[b+7])e=6;else if("A"===a[b+5]&&"u"===a[b+6]&&"g"===a[b+7])e=7;else if("S"===a[b+5]&&"e"===a[b+6]&&"p"===a[b+7])e=8;else if("O"===a[b+5]&&"c"===a[b+6]&&"t"===a[b+7])e=9;else if("N"===a[b+5]&&"o"===a[b+6]&&"v"===a[b+7])e=10;else{if("D"!==a[b+5]||"e"!==a[b+6]||"c"!==a[b+7])return;e=11}let f=a.charCodeAt(b+9);if(f<48||f>57)return;let g=a.charCodeAt(b+10);if(g<48||g>57)return;let h=(f-48)*10+(g-48);h+=h<70?2e3:1900;let i=0;if("0"===a[b+12]){let c=a.charCodeAt(b+13);if(c<48||c>57)return;i=c-48}else{let c=a.charCodeAt(b+12);if(c<48||c>50)return;let d=a.charCodeAt(b+13);if(d<48||d>57||50===c&&d>51)return;i=(c-48)*10+(d-48)}let j=0;if("0"===a[b+15]){let c=a.charCodeAt(b+16);if(c<48||c>57)return;j=c-48}else{let c=a.charCodeAt(b+15);if(c<48||c>53)return;let d=a.charCodeAt(b+16);if(d<48||d>57)return;j=(c-48)*10+(d-48)}let k=0;if("0"===a[b+18]){let c=a.charCodeAt(b+19);if(c<48||c>57)return;k=c-48}else{let c=a.charCodeAt(b+18);if(c<48||c>53)return;let d=a.charCodeAt(b+19);if(d<48||d>57)return;k=(c-48)*10+(d-48)}let l=new Date(Date.UTC(h,e,d,i,j,k));return l.getUTCDay()===c?l:void 0}(a)}}}},24464:a=>{"use strict";a.exports={TOOL_HOSTS:{antigravity:["daily-cloudcode-pa.googleapis.com","cloudcode-pa.googleapis.com"],copilot:["api.individual.githubcopilot.com"],kiro:["runtime.us-east-1.kiro.dev","q.us-east-1.amazonaws.com","codewhisperer.us-east-1.amazonaws.com"],cursor:["api2.cursor.sh"]}}},24547:(a,b,c)=>{var d=c(45654);c(63070);var e=d.asn1;b.privateKeyValidator={name:"PrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:e.Class.UNIVERSAL,type:e.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},b.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:e.Class.UNIVERSAL,type:e.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:e.Class.UNIVERSAL,type:e.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{tagClass:e.Class.UNIVERSAL,type:e.Type.BITSTRING,constructed:!1,composed:!0,captureBitStringValue:"ed25519PublicKey"}]}},24725:(a,b,c)=>{"use strict";function d(a){return`data: ${JSON.stringify(a)}
|
|
118
|
+
|
|
119
|
+
`}function e({id:a,created:b,model:c,delta:f,finishReason:g=null}){return d({id:a,object:"chat.completion.chunk",created:b,model:c,choices:[{index:0,delta:f,finish_reason:g}]})}c.d(b,{N:()=>d,z:()=>e})},24976:(a,b,c)=>{"use strict";c.d(b,{JV:()=>s});var d=c(17438),e=c(71253),f=c(69353);function g(a,b){if(!b||"off"===b.strategy)return a;let c=[],d=0;for(;d<a.length;){let e=a[d].avgScore,g=d+1;for(;g<a.length&&15>=Math.abs(a[g].avgScore-e);)g+=1;let h=a.slice(d,g).map((a,c)=>({entry:a,index:c,rank:function(a,b){try{let c=b?.strategy;if(!c||"off"===c||"round-robin"===c)return 0;let d=(0,f.lc)(a),e=b.providerLatencyMs?.[d],g=Number.isFinite(b.guardMs)?b.guardMs:f.Qm,h=Number.isFinite(e)&&e>g?1e12:0;if("priority"===c){let a=(Array.isArray(b.providerOrder)?b.providerOrder:[]).indexOf(d);return(-1===a?1e9:a)+h}if("fastest"===c)return(Number.isFinite(e)?e:1/0)+h;if("quota-first"===c){let a=b.providerQuota?.[d],c=b.providerUsage?.[d];return(Number.isFinite(a)?100-a:1e6+(Number.isFinite(c)?c:0))+h}}catch{}return 0}(a.id,b)}));h.sort((a,b)=>a.rank<b.rank?-1:a.rank>b.rank?1:a.index-b.index),c.push(...h.map(({entry:a})=>a)),d=g}return c}let h=Object.freeze(["code-review","code-generate","mechanical-edit","debug","explain","chat","agentic-tools","vision","document","general"]),i="general",j=new Set(h),k=Object.freeze({review:"code-review",code_review:"code-review",codereview:"code-review",audit:"code-review",critique:"code-review",pr_review:"code-review",coding:"code-generate",code:"code-generate",codegen:"code-generate",code_generation:"code-generate",code_generate:"code-generate",generate:"code-generate",implement:"code-generate",implementation:"code-generate",feature:"code-generate",write_code:"code-generate",edit:"mechanical-edit",mechanical:"mechanical-edit",refactor:"mechanical-edit",refactoring:"mechanical-edit",rename:"mechanical-edit",reformat:"mechanical-edit",format:"mechanical-edit",boilerplate:"mechanical-edit",debug:"debug",debugging:"debug",bug:"debug",bugfix:"debug",error:"debug",fix:"debug",stacktrace:"debug",explain:"explain",explanation:"explain",summarize:"explain",summary:"explain",describe:"explain",docs_explain:"explain",chat:"chat",conversation:"chat",qa:"chat",question:"chat",general_chat:"chat",smalltalk:"chat",agentic:"agentic-tools",agent:"agentic-tools",agentic_tools:"agentic-tools",tools:"agentic-tools",tool_use:"agentic-tools",orchestration:"agentic-tools",vision:"vision",image:"vision",images:"vision",visual:"vision",ocr:"vision",document:"document",documents:"document",pdf:"document",file:"document",files:"document",doc:"document",general:"general",other:"general",misc:"general",unknown:"general"});function l(a){if("string"!=typeof a)return i;let b=a.toLowerCase().replace(/[^a-z0-9]+/g,"_").replace(/^_+|_+$/g,"");if(!b)return i;let c=b.replace(/_/g,"-");return j.has(c)?c:k[b]?k[b]:b.includes("review")||b.includes("audit")?"code-review":b.includes("debug")||b.includes("bug")||b.includes("error")?"debug":b.includes("refactor")||b.includes("rename")||b.includes("format")?"mechanical-edit":b.includes("explain")||b.includes("summ")?"explain":b.includes("vision")||b.includes("image")?"vision":b.includes("document")||b.includes("pdf")||b.includes("file")?"document":b.includes("agent")||b.includes("tool")?"agentic-tools":b.includes("chat")||b.includes("convers")?"chat":b.includes("code")||b.includes("gen")||b.includes("implement")?"code-generate":i}async function m(a,b={}){let c=b.minEvents??50,e=b.windowDays??14,f=b.source||"manual",g=b.maxFewShots??5,h=b.objective||"balanced",i=b.log,j=Array.isArray(b.pool)&&b.pool.length?new Set(b.pool.filter(Boolean)):null,k=new Date(Date.now()-864e5*e).toISOString(),q=await (0,d.f8)(a,k);if(q<c&&!b.force)return{ok:!1,promoted:!1,reason:"insufficient_events",message:`Need ${c-q} more requests before first learn (min ${c})`,eventCount:q,minEvents:c};let r=await (0,d.GU)(a,e),s=j?(r||[]).filter(a=>j.has(a.pickedWorker)):r,t=(await (0,d.Kx)(a,{days:e,limit:2e3,terminalOnly:!1})||[]).filter(a=>!j||j.has(a.pickedWorker)),u=(t||[]).filter(a=>(a.meta?.terminal===!0||a.meta?.terminal==null)&&!a.meta?.skippedRouter),v=n(t);if(0===Object.keys(v).length&&(v=function(a){let b={};for(let c of a||[]){let a=l(c.cluster),d=c.pickedWorker;if(!d)continue;b[a]||(b[a]={});let e=Number(c.n)||0,f=Number(c.avgScore)||0,g=null!=c.wins&&Number.isFinite(Number(c.wins))?Number(c.wins):Math.round(f/100*e);g=Math.max(0,Math.min(e,g));let h=Number(c.avgLatencyMs)||0,i=Number(c.avgTokensOut)||0,j=null!=c.p50LatencyMs&&Number.isFinite(Number(c.p50LatencyMs))?Number(c.p50LatencyMs):h,k=b[a][d];if(k){let c=k.attempts+e;b[a][d]={wins:Math.max(0,Math.min(c,k.wins+g)),attempts:c,avgScore:c?(k.avgScore*k.attempts+f*e)/c:0,avgLatencyMs:c?(k.avgLatencyMs*k.attempts+h*e)/c:0,p50LatencyMs:c?(k.p50LatencyMs*k.attempts+j*e)/c:0,avgTokensOut:c?(k.avgTokensOut*k.attempts+i*e)/c:0}}else b[a][d]={wins:g,attempts:e,avgScore:f,avgLatencyMs:h,p50LatencyMs:j,avgTokensOut:i}}return b}(s)),0===Object.keys(v).length)return{ok:!1,promoted:!1,reason:"empty_bandit",message:"No cluster\xd7worker stats in the learning window — refusing to promote an empty version",eventCount:q,minEvents:c};let w=function(a){let b=[];for(let[c,d]of Object.entries(a||{})){let a=Object.entries(d).map(([a,b])=>({id:a,...b})).filter(a=>a.attempts>=10).sort((a,b)=>b.avgScore-a.avgScore);if(!a.length)continue;let e=a[0],f=e.attempts?e.wins/e.attempts:0;if(a.length>=2){let d=a[1];e.avgScore-d.avgScore>15&&b.push(`For cluster "${c}", prefer ${e.id} (win rate ${Math.round(100*f)}%, n=${e.attempts})`)}else f>=.55&&b.push(`For cluster "${c}", prefer ${e.id} (win rate ${Math.round(100*f)}%, n=${e.attempts})`);if(a.length>=2){let d=a[a.length-1];d.id!==e.id&&e.avgScore-d.avgScore>15&&b.push(`Avoid ${d.id} for "${c}" when ${e.id} is available`)}}return b.slice(0,10)}(v),x=function(a){let b=[];for(let[c,d]of Object.entries(a||{})){let a=Object.entries(d).map(([a,b])=>({id:a,...b})).filter(a=>a.attempts>=10).sort((a,b)=>b.avgScore-a.avgScore);if(a.length<2)continue;let e=a[0],f=a[1];e.avgScore-f.avgScore<=15&&b.push(`no rule: "${c}" top two within 15 pts (${o(e.id)}=${Math.round(e.avgScore)} n=${e.attempts}, ${o(f.id)}=${Math.round(f.avgScore)} n=${f.attempts})`)}return b}(v),y=function(a,b=5){let c=Math.max(1,Math.min(20,Number(b)||5)),d=(a||[]).filter(a=>null!=a.outcomeScore&&a.outcomeScore>=85&&a.pickedWorker&&!a.meta?.skippedRouter),e=new Map;for(let a of d){let b=l(a.cluster);e.has(b)||e.set(b,[]),e.get(b).push(a)}let f=[],g=new Set,h=[...e.keys()],i=!0;for(;f.length<c&&i;)for(let a of(i=!1,h)){if(f.length>=c)break;let b=e.get(a)||[];for(b.sort((a,b)=>(b.outcomeScore||0)-(a.outcomeScore||0));b.length;){let a=b.shift(),c=a.requestFingerprint||`${a.cluster}|${a.pickedWorker}|${a.routerReason||""}`;if(!g.has(c)){g.add(c),f.push(function(a){let b="string"==typeof a.meta?.userSummary&&a.meta.userSummary||"string"==typeof a.meta?.intentSummary&&a.meta.intentSummary||"",c=b?b.replace(/\s+/g," ").trim().slice(0,120):(a.routerReason||`${a.cluster} → ${a.pickedWorker}`).slice(0,120);return{fingerprint:a.requestFingerprint,cluster:a.cluster,worker:a.pickedWorker,score:a.outcomeScore,summary:c}}(a)),i=!0;break}}}return f}(u,g),z=(u||[]).filter(a=>a.cluster&&a.pickedWorker&&null!=a.outcomeScore&&!a.meta?.skippedRouter).slice().sort((a,b)=>String(a.timestamp||"").localeCompare(String(b.timestamp||""))),A=z,B=z;if(z.length>=5){let a=Math.max(1,Math.floor(.3*z.length));A=z.slice(0,z.length-a),B=z.slice(z.length-a)}let C=A.length>0?A[A.length-1].timestamp:null,D=n(C?(t||[]).filter(a=>a.timestamp&&String(a.timestamp)<=String(C)&&!a.meta?.skippedRouter):t||[]);0===Object.keys(D).length&&(D=n(A));let E=p(Object.keys(D).length>0?D:v,B,h),F=await (0,d.p3)(a),G=F?.banditTable&&Object.keys(F.banditTable).length?p(F.banditTable,B,h):null,H=!0,I=`events=${q}; clusters=${Object.keys(v).length}; objective=${h}; holdout=${B.length}`;x.length&&(I+=`; ${x.slice(0,3).join("; ")}`),null!=G?E<G+2?(H=!1,I+=`; no promote (eval ${E.toFixed(1)} < old ${G.toFixed(1)} + 2)`,b.force&&(I+=" (force skipped min-events only)")):I+=`; eval ${E.toFixed(1)} (old ${G.toFixed(1)}, +${(E-G).toFixed(1)})`:I+=`; eval ${E.toFixed(1)} (first)`;let J=await (0,d.Hr)({comboName:a,source:f,banditTable:v,learnedRules:w,fewShots:y,evalScore:E,notes:I,promote:H,prevVersionId:F?.id||null}),K=H?`Promoted v${J.version}`:`Created v${J.version} but did not promote (no improvement)`;return i?.info?.("ROUTING_LEARN",F?`v${F.version}→v${J.version} eval ${G?.toFixed?.(1)??"—"}→${E.toFixed(1)} ${H?"promoted":"draft"}`:`v${J.version} eval ${E.toFixed(1)} ${H?"promoted":"draft"} (first)`),{ok:!0,promoted:H,version:J.version,evalScore:E,prevEvalScore:G,eventCount:q,message:K,id:J.id}}function n(a){let b={};for(let c of a||[]){if(c.meta?.skippedRouter)continue;let a=l(c.cluster),d=c.pickedWorker;if(!d||null==c.outcomeScore)continue;b[a]||(b[a]={}),b[a][d]||(b[a][d]={scoreSum:0,weightSum:0,attempts_real:0,wins_real:0,lats:[],tokensOuts:[]});let e=b[a][d],f=Number(c.outcomeScore)||0,g=function(a){let b=a?.meta?.userRating;return 1===b||-1===b?5:a?.meta?.judgeAdjusted===!0?2:1}(c);e.scoreSum+=f*g,e.weightSum+=g,e.attempts_real+=1,e.wins_real+=+(f>=60),null!=c.workerLatencyMs&&Number.isFinite(Number(c.workerLatencyMs))&&e.lats.push(Number(c.workerLatencyMs)),null!=c.tokensOut&&Number.isFinite(Number(c.tokensOut))&&e.tokensOuts.push(Number(c.tokensOut))}let c={};for(let[a,d]of Object.entries(b))for(let[b,e]of(c[a]={},Object.entries(d))){let d=e.attempts_real,f=e.weightSum?e.scoreSum/e.weightSum:0,g=e.lats.length?e.lats.reduce((a,b)=>a+b,0)/e.lats.length:0,h=function(a){if(!a?.length)return null;let b=a.slice().sort((a,b)=>a-b),c=Math.floor(b.length/2);!0;return b.length%2==0?(b[c-1]+b[c])/2:b[c]}(e.lats),i=e.tokensOuts.length?e.tokensOuts.reduce((a,b)=>a+b,0)/e.tokensOuts.length:0;c[a][b]={wins:Math.max(0,Math.min(d,e.wins_real)),attempts:d,avgScore:f,avgLatencyMs:g,p50LatencyMs:null!=h?h:g,avgTokensOut:i}}return c}function o(a){if(!a)return"?";let b=String(a).split("/");return b[b.length-1]||a}function p(a,b,c="balanced"){let d=(b||[]).filter(a=>a.cluster&&a.pickedWorker&&null!=a.outcomeScore&&!a.meta?.skippedRouter&&a.meta?.terminal!==!1);if(!d.length)return q(a);let f=0,h=0;for(let b of d){let d=a[l(b.cluster)];if(!d||!Object.keys(d).length){f+=Number(b.outcomeScore)||0,h+=1;continue}let i=function(a,b="balanced",c=null,d={}){if(!a||"object"!=typeof a)return null;let f=Object.entries(a).map(([a,b])=>({id:a,...b}));if(Array.isArray(c)&&c.length){let a=new Set(c);f=f.filter(b=>a.has(b.id))}if(!f.length)return null;let h=function(a,b="balanced",c={}){let d=c?.estInputTokens,f=new Map,h=(a||[]).map(a=>{let b={...a,avgScore:Number(a.avgScore)||0,attempts:Number(a.attempts)||0,p50:Number(a.p50LatencyMs)||Number(a.avgLatencyMs)||1/0,tier:function(a){if(!a)return 4;let[b,...c]=a.split("/"),d=c.join("/")||b,f=(0,e.getPricingForModel)(b,d);if(!f||"number"!=typeof f.input)return 4;let g="number"==typeof f.output?f.output:3*f.input,h=f.input+g;return h<2?0:h<10?1:h<30?2:h<80?3:4}(a.id)};return f.set(b,function(a,b,c){if(!a)return null;let[d,...f]=a.split("/"),g=f.join("/")||d,h=(0,e.getPricingForModel)(d,g);if(!h||"number"!=typeof h.input)return null;let i="number"==typeof h.output?h.output:3*h.input;return(Number(b)||0)/1e6*h.input+(Number(c)||0)/1e6*i}(a.id,d??0,a.avgTokensOut??500)),b});if(!h.length)return h;let i=Number.isFinite(d)&&d>0&&h.every(a=>null!=f.get(a)),j=b||"balanced";if("latency"===j)return g(h.sort((a,b)=>a.p50!==b.p50?a.p50-b.p50:b.avgScore-a.avgScore),c.providerBias);if("quality"===j)return g(h.sort((a,b)=>b.avgScore!==a.avgScore?b.avgScore-a.avgScore:a.tier-b.tier),c.providerBias);if("economy"===j){let a=Math.max(...h.map(a=>a.avgScore));return a>0?g(h.sort((b,c)=>{let d=b.avgScore>=.9*a,e=c.avgScore>=.9*a;return d&&e?i&&f.get(b)!==f.get(c)?f.get(b)-f.get(c):b.tier!==c.tier?b.tier-c.tier:c.avgScore-b.avgScore:d!==e?d?-1:1:c.avgScore!==b.avgScore?c.avgScore-b.avgScore:i&&f.get(b)!==f.get(c)?f.get(b)-f.get(c):b.tier-c.tier}),c.providerBias):g(h.sort((a,b)=>i&&f.get(a)!==f.get(b)?f.get(a)-f.get(b):a.tier!==b.tier?a.tier-b.tier:b.avgScore-a.avgScore),c.providerBias)}return g(h.sort((a,b)=>{let c=i?a.avgScore-50*f.get(a):a.avgScore-.001*a.tier,d=i?b.avgScore-50*f.get(b):b.avgScore-.001*b.tier;return d!==c?d-c:i&&f.get(a)!==f.get(b)?f.get(a)-f.get(b):a.tier-b.tier}),c.providerBias)}(f,b,d);return h[0]?.id||null}(d,c);if(!i){f+=Number(b.outcomeScore)||0,h+=1;continue}if(i===b.pickedWorker)f+=Number(b.outcomeScore)||0;else{let a=d[i];f+=a?.avgScore!=null?Number(a.avgScore):Math.max(0,(Number(b.outcomeScore)||0)-15)}h+=1}return h?f/h:q(a)}function q(a){let b=0,c=0;for(let d of Object.values(a||{}))for(let a of Object.values(d)){let d=Number(a.attempts)||0,e=Number(a.avgScore)||0;b+=d,c+=e*d}return b?c/b:50}let r=global.__autoLearnScheduler??={interval:null,running:!1,lastRunByCombo:{}};function s(a={}){if(r.interval)return;let b=a.log||console,c=()=>{u(b).catch(a=>b.warn?.("[ROUTING_LEARN] scheduler tick failed:",a?.message||a))};setTimeout(c,6e4),r.interval=setInterval(c,9e5),"function"==typeof r.interval.unref&&r.interval.unref(),b.info?.("[ROUTING_LEARN] scheduler started (tick every 15m)")}async function t(a){if(r.lastRunByCombo[a])return r.lastRunByCombo[a];try{let b=await (0,d.HP)(a);if(b){let c=Date.parse(b);if(Number.isFinite(c))return r.lastRunByCombo[a]=c,c}}catch{}return 0}async function u(a=console){if(r.running)return{skipped:!0,reason:"already_running"};r.running=!0;try{let b=await (0,d.mt)(),c=b?.comboStrategies||{},e=await (0,d.dC)().catch(()=>[]),f=Object.keys(c).filter(a=>c[a]?.fallbackStrategy==="auto"),g=[...new Set([...e,...f])],h=[],i=Date.now();for(let b of g){let e=c[b]||{};if("auto"!==e.fallbackStrategy||!1===e.learningEnabled||e.freezeLearning)continue;if(!e.routerModel){a.info?.("[ROUTING_LEARN]",`skip ${b}: no routerModel configured`);continue}let f=Number(e.autoLearnIntervalHours);if(!Number.isFinite(f)||f<=0)continue;let g=3600*f*1e3,j=await t(b);if(j>0&&i-j<g)continue;let k=e.autoTuning?.minEventsBeforeLearn??50,l=e.learningWindowDays??14,n=e.autoTuning?.maxFewShots??5,o=e.objective||"balanced";try{let c=null;try{let a=await (0,d.d_)(b),f=e.routerModel;c=(a||[]).filter(a=>a&&a!==f)}catch{c=null}let f=await m(b,{force:!1,source:"scheduled",minEvents:k,windowDays:l,maxFewShots:n,objective:o,pool:c,log:{info:(b,c)=>a.info?.(`[${b}] ${c}`),warn:(b,c)=>a.warn?.(`[${b}] ${c}`)}});r.lastRunByCombo[b]=i,h.push({comboName:b,...f}),f.ok&&a.info?.("[ROUTING_LEARN]",`scheduled ${b}: ${f.message}`)}catch(c){a.error?.("[ROUTING_LEARN]",`scheduled ${b} failed: ${c.message}`),h.push({comboName:b,ok:!1,error:c.message})}}return{ok:!0,results:h}}finally{r.running=!1}}},24985:(a,b,c)=>{var d=c(45654);c(33889),c(29984),c(4554);var e=a.exports=d.pkcs1=d.pkcs1||{};function f(a,b,c){c||(c=d.md.sha1.create());for(var e="",f=Math.ceil(b/c.digestLength),g=0;g<f;++g){var h=String.fromCharCode(g>>24&255,g>>16&255,g>>8&255,255&g);c.start(),c.update(a+h),e+=c.digest().getBytes()}return e.substring(0,b)}e.encode_rsa_oaep=function(a,b,c){"string"==typeof c?(e=c,g=arguments[3]||void 0,h=arguments[4]||void 0):c&&(e=c.label||void 0,g=c.seed||void 0,h=c.md||void 0,c.mgf1&&c.mgf1.md&&(i=c.mgf1.md)),h?h.start():h=d.md.sha1.create(),i||(i=h);var e,g,h,i,j=Math.ceil(a.n.bitLength()/8),k=j-2*h.digestLength-2;if(b.length>k){var l=Error("RSAES-OAEP input message length is too long.");throw l.length=b.length,l.maxLength=k,l}e||(e=""),h.update(e,"raw");for(var m=h.digest(),n="",o=k-b.length,p=0;p<o;p++)n+="\0";var q=m.getBytes()+n+"\x01"+b;if(g){if(g.length!==h.digestLength){var l=Error("Invalid RSAES-OAEP seed. The seed length must match the digest length.");throw l.seedLength=g.length,l.digestLength=h.digestLength,l}}else g=d.random.getBytes(h.digestLength);var r=f(g,j-h.digestLength-1,i),s=d.util.xorBytes(q,r,q.length),t=f(s,h.digestLength,i);return"\0"+d.util.xorBytes(g,t,g.length)+s},e.decode_rsa_oaep=function(a,b,c){"string"==typeof c?(e=c,g=arguments[3]||void 0):c&&(e=c.label||void 0,g=c.md||void 0,c.mgf1&&c.mgf1.md&&(h=c.mgf1.md));var e,g,h,i=Math.ceil(a.n.bitLength()/8);if(b.length!==i){var j=Error("RSAES-OAEP encoded message length is invalid.");throw j.length=b.length,j.expectedLength=i,j}if(void 0===g?g=d.md.sha1.create():g.start(),h||(h=g),i<2*g.digestLength+2)throw Error("RSAES-OAEP key is too short for the hash function.");e||(e=""),g.update(e,"raw");for(var k=g.digest().getBytes(),l=b.charAt(0),m=b.substring(1,g.digestLength+1),n=b.substring(1+g.digestLength),o=f(n,g.digestLength,h),p=f(d.util.xorBytes(m,o,m.length),i-g.digestLength-1,h),q=d.util.xorBytes(n,p,n.length),r=q.substring(0,g.digestLength),j="\0"!==l,s=0;s<g.digestLength;++s)j|=k.charAt(s)!==r.charAt(s);for(var t=1,u=g.digestLength,v=g.digestLength;v<q.length;v++){var w=q.charCodeAt(v),x=1&w^1;j|=w&65534*!!t,t&=x,u+=t}if(j||1!==q.charCodeAt(u))throw Error("Invalid RSAES-OAEP padding.");return q.substring(u+1)}},25720:(a,b,c)=>{"use strict";c(55511),c(10793)},25814:(a,b,c)=>{"use strict";c(40106);let d=c(7344),e=(c(35689),c(61330),c(34441),c(37417)),f=(c(74399),c(48841)),g=(c(64156),c(43086),c(95095),c(53552),c(61448)),h=c(84285),{InvalidArgumentError:i}=g,j=c(99528),{MockCallHistory:k,MockCallHistoryLog:l}=(c(55285),c(66498),c(21523)),{getGlobalDispatcher:m,setGlobalDispatcher:n}=(c(65630),c(86625),c(89512),c(28998),c(31825),c(59970));function o(a){return(b,c,d)=>{if("function"==typeof c&&(d=c,c=null),!b||"string"!=typeof b&&"object"!=typeof b&&!(b instanceof URL))throw new i("invalid url");if(null!=c&&"object"!=typeof c)throw new i("invalid opts");if(c&&null!=c.path){if("string"!=typeof c.path)throw new i("invalid opts.path");let a=c.path;c.path.startsWith("/")||(a=`/${a}`),b=new URL(h.parseOrigin(b).origin+a)}else c||(c="object"==typeof b?b:{}),b=h.parseURL(b);let{agent:e,dispatcher:f=m(),...g}=c;if(e)throw new i("unsupported opts.agent. Did you mean opts.client?");return a.call(f,{...g,origin:b.origin,path:b.search?`${b.pathname}${b.search}`:b.pathname,method:c.method||(c.body?"PUT":"GET")},d)}}c(60823),c(67519),Object.assign(d.prototype,j),a.exports.g6=e,a.exports.ProxyAgent=f,c(70707),c(47335),c(78075),c(87085),c(27060),c(19431),c(37858),c(90249),c(38650),c(20579),h.parseHeaders,h.headerNameToString;let p=c(76403).fetch,q=__filename;a.exports.hd=function(b,c){return p(b,c).catch(b=>{throw q?!function a(b,c){if(!b||"object"!=typeof b)return;let d="string"==typeof b.stack?b.stack:"",e=c.replace(/\\/g,"/");if(d&&(d.includes(c)||d.includes(e)))return;let f={};if(Error.captureStackTrace(f,a),!f.stack)return;let g=f.stack.split("\n").slice(1).join("\n");b.stack=d?`${d}
|
|
120
|
+
${g}`:f.stack}(b,q):b&&"object"==typeof b&&Error.captureStackTrace(b,a.exports.hd),b})},a.exports.Headers=c(28665).Headers,a.exports.Response=c(78196).Response,a.exports.Request=c(12600).Request,a.exports.FormData=c(2887).FormData;let{setGlobalOrigin:r,getGlobalOrigin:s}=c(79412),{CacheStorage:t}=c(49166),{kConstruct:u}=c(49176);new t(u);let{deleteCookie:v,getCookies:w,getSetCookies:x,setCookie:y,parseCookie:z}=c(70106),{parseMIMEType:A,serializeAMimeType:B}=c(16537),{CloseEvent:C,ErrorEvent:D,MessageEvent:E}=c(51753),{WebSocket:F,ping:G}=c(52039);a.exports.kb=F,a.exports.rd=C,a.exports.NN=D,a.exports.aM=E,c(42430).WebSocketStream,c(87404).WebSocketError,o(j.request),o(j.stream),o(j.pipeline),o(j.connect),o(j.upgrade);let{EventSource:H}=c(47703);a.exports.GD=H},26317:(a,b,c)=>{"use strict";c.d(b,{Vp:()=>f,nE:()=>e});let d={none:0,minimal:512,low:1024,medium:8192,high:24576,xhigh:32768,max:128e3};function e(a){if(a)return d[String(a).toLowerCase()]}function f(a){return!a||a<=0?null:a<=2048?"low":a<=16384?"medium":"high"}},26376:(a,b,c)=>{"use strict";let{makeRequest:d}=c(12600);a.exports={isValidLastEventId:function(a){return -1===a.indexOf("\0")},isASCIINumber:function(a){if(0===a.length)return!1;for(let b=0;b<a.length;b++)if(48>a.charCodeAt(b)||a.charCodeAt(b)>57)return!1;return!0},createPotentialCORSRequest:function(a,b,c,e){let f="no cors"===c?"no-cors":"cors";e&&"no-cors"===f&&(f="same-origin");let g="include";return"anonymous"===c&&(g="same-origin"),d({urlList:[a],destination:b,mode:f,credentials:g,useURLCredentials:!0})}}},26408:(a,b,c)=>{"use strict";c.d(b,{$q:()=>h,ni:()=>l,W$:()=>j});var d=c(71553),e=c(25814);let f=[{sig:[137,80,78,71],offset:0,mime:"image/png"},{sig:[255,216,255],offset:0,mime:"image/jpeg"},{sig:[71,73,70,56],offset:0,mime:"image/gif"},{sig:[82,73,70,70],offset:0,mime:"image/webp",verifyWebp:!0},{sig:[66,77],offset:0,mime:"image/bmp"}],g=new Set(["localhost","127.0.0.1","0.0.0.0","::1","169.254.169.254","metadata.google.internal"]);function h(a,b){return`data:${a};base64,${b}`}let i=/^data:([^;]+);base64,([\s\S]+)$/;function j(a){if("string"!=typeof a)return null;let b=a.match(i);return b?{mimeType:b[1],base64:b[2]}:null}async function k(a){if(!a||g.has(a.toLowerCase()))return null;try{let b=await (0,d.lookup)(a,{all:!0});if(!b.length||b.some(a=>(function(a){if(!a||"::1"===a||a.startsWith("fc")||a.startsWith("fd")||a.startsWith("fe80"))return!0;let b=(a.includes(".")?a.split(":").pop():a).split(".").map(a=>Number.parseInt(a,10));if(4!==b.length||b.some(a=>Number.isNaN(a)))return!a.includes(":");let[c,d]=b;return 10===c||127===c||0===c||172===c&&d>=16&&d<=31||192===c&&168===d||169===c&&254===d||100===c&&d>=64&&d<=127||!1})(a.address)))return null;return b}catch{return null}}async function l(a,b={}){let c,{signal:d,timeoutMs:g=1e4,maxBytes:h=0xa00000}=b;if(!a||!a.startsWith("http://")&&!a.startsWith("https://"))return null;try{c=new URL(a)}catch{return null}let i=await k(c.hostname);if(!i)return null;let j=new AbortController,m=d?null:setTimeout(()=>j.abort(),g),n=d||j.signal,o=new e.g6({connect:{lookup:(a,b,c)=>c(null,[{address:i[0].address,family:i[0].family}])}});try{let b=await fetch(a,{signal:n,redirect:"manual",dispatcher:o});if(!b.ok||!b.body)return null;let c=b.body.getReader(),d=[],e=0;for(;;){let{done:a,value:b}=await c.read();if(a)break;if((e+=b.length)>h){try{await c.cancel()}catch{}return null}d.push(b)}let g=Buffer.concat(d.map(a=>Buffer.from(a))),i=function(a){for(let{sig:b,offset:c,mime:d,verifyWebp:e}of f){if(a.length<c+b.length)continue;let f=!0;for(let d=0;d<b.length;d++)if(a[c+d]!==b[d]){f=!1;break}if(f&&(!e||a.length>=12&&87===a[8]&&69===a[9]&&66===a[10]&&80===a[11]))return d}return null}(g);if(!i)return null;return{url:`data:${i};base64,${g.toString("base64")}`,mimeType:i}}catch{return null}finally{m&&clearTimeout(m),o.close().catch(()=>{})}}},26757:(a,b,c)=>{"use strict";let d=c(34589),{AsyncResource:e}=c(16698),{InvalidArgumentError:f,InvalidReturnValueError:g}=c(61448),h=c(84285),{addSignal:i,removeSignal:j}=c(73135);function k(){}class l extends e{constructor(a,b,c){if(!a||"object"!=typeof a)throw new f("invalid opts");const{signal:d,method:e,opaque:g,body:j,onInfo:l,responseHeaders:m}=a;try{if("function"!=typeof c)throw new f("invalid callback");if("function"!=typeof b)throw new f("invalid factory");if(d&&"function"!=typeof d.on&&"function"!=typeof d.addEventListener)throw new f("signal must be an EventEmitter or EventTarget");if("CONNECT"===e)throw new f("invalid method");if(l&&"function"!=typeof l)throw new f("invalid onInfo callback");super("UNDICI_STREAM")}catch(a){throw h.isStream(j)&&h.destroy(j.on("error",k),a),a}this.responseHeaders=m||null,this.opaque=g||null,this.factory=b,this.callback=c,this.res=null,this.abort=null,this.context=null,this.controller=null,this.trailers=null,this.body=j,this.onInfo=l||null,h.isStream(j)&&j.on("error",a=>{this.onResponseError(this.controller,a)}),i(this,d)}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){var e;let f,i,j,k,l,{factory:m,opaque:n,context:o,responseHeaders:p}=this,q=a?.rawHeaders,r="raw"===p?h.parseRawHeaders(q):c;if(b<200){this.onInfo&&this.onInfo({statusCode:b,headers:r});return}if(this.factory=null,null===m)return;let s=this.runInAsyncScope(m,null,{statusCode:b,headers:r,opaque:n,context:o});if(!s||"function"!=typeof s.write||"function"!=typeof s.end||"function"!=typeof s.on)throw new g("expected Writable");e=(a,b)=>{let{callback:c,res:d,opaque:e,trailers:f,abort:g}=this;this.res=null,(a||!d?.readable)&&h.destroy(d,b?void 0:a),this.callback=null,this.runInAsyncScope(c,null,a||null,{opaque:e,trailers:f}),a&&g(a)},f=!1,i=(a,b=!1)=>{f||(f=!0,s.removeListener("close",j),s.removeListener("error",k),s.removeListener("finish",l),e(a,b))},j=()=>{let a;i(s.errored??s.writableErrored??s._writableState?.errored??(s.writableFinished?void 0:((a=Error("Premature close")).code="ERR_STREAM_PREMATURE_CLOSE",a)))},k=a=>i(a,!0),l=()=>i(),s.on("close",j),s.on("error",k),s.on("finish",l),s.closed?process.nextTick(j):s.writableFinished&&process.nextTick(l),s.on("drain",()=>a.resume()),this.res=s,!0===(void 0!==s.writableNeedDrain?s.writableNeedDrain:s._writableState?.needDrain)&&a.pause()}onResponseData(a,b){let{res:c}=this;c&&!1===c.write(b)&&a.pause()}onResponseEnd(a,b){let{res:c}=this;j(this),c&&(b&&"object"==typeof b&&(this.trailers=b),c.end())}onResponseError(a,b){let{res:c,callback:d,opaque:e,body:f}=this;j(this),this.factory=null,c?(this.res=null,h.destroy(c,b)):d&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(d,null,b,{opaque:e})})),f&&(this.body=null,h.destroy(f,b))}}a.exports=function a(b,c,d){if(void 0===d)return new Promise((d,e)=>{a.call(this,b,c,(a,b)=>a?e(a):d(b))});try{let a=new l(b,c,d);this.dispatch(b,a)}catch(c){if("function"!=typeof d)throw c;let a=b?.opaque;queueMicrotask(()=>d(c,{opaque:a}))}}},26762:(a,b,c)=>{"use strict";c.d(b,{Fm:()=>q});var d=c(27910),e=c(82689);let f=globalThis.fetch,g=new Map,h=new Map,i=["cloudcode-pa.googleapis.com","daily-cloudcode-pa.googleapis.com","api.individual.githubcopilot.com","q.us-east-1.amazonaws.com","codewhisperer.us-east-1.amazonaws.com","api2.cursor.sh"],j=["8.8.8.8","8.8.4.4"];function k(a){return null==a?"":String(a).trim()}async function l(a){let b=h.get(a);if(b&&Date.now()<b.expiry)return b.ip;try{let b=await Promise.resolve().then(c.t.bind(c,14985,19)),{promisify:d}=await Promise.resolve().then(c.t.bind(c,28354,19)),f=new b.Resolver;f.setServers(j);let g=d(f.resolve4.bind(f)),i=await g(a);if(h.size>=e.v1.dnsCacheMaxSize){let a=Date.now();for(let[b,c]of h)c.expiry<=a&&h.delete(b);for(;h.size>=e.v1.dnsCacheMaxSize;)h.delete(h.keys().next().value)}return h.set(a,{ip:i[0],expiry:Date.now()+e.v1.dnsCacheTtlMs}),i[0]}catch(b){return console.warn(`[ProxyFetch] DNS resolve failed for ${a}:`,b.message),null}}function m(a,b){let c,d=k(b);if(!d)return!1;try{c=new URL(a).hostname.toLowerCase()}catch{return!1}return d.split(",").map(a=>a.trim().toLowerCase()).filter(Boolean).some(a=>"*"===a||(a.startsWith(".")?c.endsWith(a)||c===a.slice(1):c===a||c.endsWith(`.${a}`)))}function n(a){let b=k(a);if(!b)return null;try{return new URL(b),b}catch{return`http://${b}`}}async function o(a){let b=n(a);if(!b)return null;if(!g.has(b)){if(g.size>=e.v1.proxyDispatchersMaxSize){let a=g.keys().next().value,b=g.get(a);g.delete(a),Promise.resolve(b?.close?.()).catch(()=>{})}let{ProxyAgent:a}=await Promise.resolve().then(c.t.bind(c,25814,19));g.set(b,new a({uri:b}))}let d=g.get(b);return g.delete(b),g.set(b,d),d}async function p(a,b,e){let f=await Promise.resolve().then(c.t.bind(c,55591,19)),g=await Promise.resolve().then(c.t.bind(c,91645,19)),h=f.default??f,i=g.default??g;return new Promise((c,f)=>{let g,j=new i.Socket,k=!1;function l(){j.setTimeout(0),e.signal&&e.signal.removeEventListener("abort",m)}function m(){k||(k=!0,l(),j.destroy(),g?.destroy(),f(new DOMException("The operation was aborted.","AbortError")))}e.signal?.aborted?m():(e.signal&&e.signal.addEventListener("abort",m,{once:!0}),j.setTimeout(1e4,()=>{k||(k=!0,l(),j.destroy(),f(Error(`[ProxyFetch] connect timeout after 10000ms to ${b}`)))}),j.connect(443,b,()=>{j.setTimeout(0);let b={socket:j,servername:a.hostname,path:a.pathname+a.search,method:e.method||"POST",headers:{...e.headers,Host:a.hostname}};(g=h.request(b,a=>{let b=()=>{try{a.destroy(new DOMException("The operation was aborted.","AbortError"))}catch{a.destroy()}},g=()=>e.signal?.removeEventListener("abort",b);if(e.signal?.aborted){k=!0,l(),b(),g(),f(new DOMException("The operation was aborted.","AbortError"));return}e.signal?.addEventListener("abort",b,{once:!0}),a.once("end",g),a.once("close",g),a.once("error",g);let h={ok:a.statusCode>=200&&a.statusCode<300,status:a.statusCode,statusText:a.statusMessage,headers:new Map(Object.entries(a.headers)),body:d.Readable.toWeb(a),text:async()=>{let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString()},json:async()=>JSON.parse(await h.text())};k=!0,l(),c(h)})).on("error",a=>{k||(k=!0,l(),f(a))}),e.body&&g.write("string"==typeof e.body?e.body:JSON.stringify(e.body)),g.end()}),j.on("error",a=>{k||(k=!0,l(),f(a))}))})}async function q(a,b={},c=null){let d="string"==typeof a?a:a.toString(),e=k(c?.vercelRelayUrl);if(e){let a=new URL(d),c={...b.headers,"x-relay-target":`${a.protocol}//${a.host}`,"x-relay-path":`${a.pathname}${a.search}`};return f(e,{...b,headers:c})}let g=function(a,b){if(b?.enabled!==!0&&b?.connectionProxyEnabled!==!0)return null;let c=k(b?.url??b?.connectionProxyUrl);if(!c)return null;let d=k(b?.noProxy??b?.connectionNoProxy);return d&&m(a,d)?null:n(c)}(d,c),h=g?null:n(function(a){let b;if(m(a,process.env.NO_PROXY||process.env.no_proxy))return null;try{b=new URL(a).protocol}catch{return null}return"https:"===b?process.env.HTTPS_PROXY||process.env.https_proxy||process.env.ALL_PROXY||process.env.all_proxy:process.env.HTTP_PROXY||process.env.http_proxy||process.env.ALL_PROXY||process.env.all_proxy}(d)),j=g||h;if(function(a){try{let b=new URL(a).hostname;return i.some(a=>b.includes(a))}catch{return!1}}(d)){if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct bypass: ${a.message}`)}try{let a=new URL(d),c=await l(a.hostname);if(c)return await p(a,c,b)}catch(a){console.warn(`[ProxyFetch] MITM bypass failed: ${a.message}`)}}if(j)try{let c=await o(j);return await f(a,{...b,dispatcher:c})}catch(a){if(c?.strictProxy===!0)throw Error(`[ProxyFetch] Proxy required but failed (strictProxy=true): ${a.message}`);console.warn(`[ProxyFetch] Proxy failed, falling back to direct: ${a.message}`)}return f(a,b)}async function r(a,b={}){return q(a,b,null)}globalThis.fetch!==r&&(globalThis.fetch=r)},27060:(a,b,c)=>{"use strict";let{isIP:d}=c(77030),{lookup:e}=c(40610),f=c(60823),{InvalidArgumentError:g,InformationalError:h}=c(61448);function i(a){return"string"==typeof a&&"host"===a.toLowerCase()}function j(a,b){let c=function(a){let b;if(null==a)return null;if(Array.isArray(a)){if(0===a.length||!Array.isArray(a[0]))return a;let b=[];for(let c of a)Array.isArray(c)&&2===c.length?b.push(c[0],c[1]):b.push(c);return b}if("object"==typeof a&&(b=Object.getPrototypeOf(a),Object.hasOwn(a,Symbol.iterator)||null!=b&&b!==Object.prototype&&"function"==typeof a[Symbol.iterator])){let b=[];for(let c of a)Array.isArray(c)&&2===c.length?b.push(c[0],c[1]):b.push(c);return b}return a}(b);return!function(a){if(null==a)return!1;if(Array.isArray(a)){if(0===a.length)return!1;for(let b=0;b<a.length;b+=2)if(i(a[b]))return!0;return!1}if("object"==typeof a){for(let b in a)if(i(b))return!0}return!1}(c)?Array.isArray(c)?["host",a,...c]:c&&"object"==typeof c?{host:a,...c}:{host:a}:c}class k{#t=0;#u=new Map;constructor(a){this.#t=a.maxItems}get size(){return this.#u.size}get(a){return this.#u.get(a)??null}set(a,b){this.#u.set(a,b)}delete(a){this.#u.delete(a)}full(){return this.size>=this.#t}}class l{#v=0;#t=0;dualStack=!0;affinity=null;lookup=null;pick=null;storage=null;constructor(a){this.#v=a.maxTTL,this.#t=a.maxItems,this.dualStack=a.dualStack,this.affinity=a.affinity,this.lookup=a.lookup??this.#w,this.pick=a.pick??this.#x,this.storage=a.storage??new k(a)}runLookup(a,b,c){let d=this.storage.get(a.hostname);if(null==d&&this.storage.full())return void c(null,a);let e={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...b.dns,maxTTL:this.#v,maxItems:this.#t};if(null==d)this.lookup(a,e,(b,d)=>{let f;if(b||null==d||0===d.length)return void c(b??new h("No DNS entries found"));this.setRecords(a,d);let g=this.storage.get(a.hostname),i=this.pick(a,g,e.affinity);f="number"==typeof i.port?`:${i.port}`:""!==a.port?`:${a.port}`:"",c(null,new URL(`${a.protocol}//${6===i.family?`[${i.address}]`:i.address}${f}`))});else{let f,g=this.pick(a,d,e.affinity);if(null==g){this.storage.delete(a.hostname),this.runLookup(a,b,c);return}f="number"==typeof g.port?`:${g.port}`:""!==a.port?`:${a.port}`:"",c(null,new URL(`${a.protocol}//${6===g.family?`[${g.address}]`:g.address}${f}`))}}#w(a,b,c){e(a.hostname,{all:!0,family:!1===this.dualStack?this.affinity:0,order:"ipv4first"},(a,b)=>{if(a)return c(a);let d=new Map;for(let a of b)d.set(`${a.address}:${a.family}`,a);c(null,d.values())})}#x(a,b,c){let d,e=null,{records:f,offset:g}=b;if(this.dualStack?(null==c&&(null==g||0x7fffffff===g?(b.offset=0,c=4):(b.offset++,c=(1&b.offset)==1?6:4)),d=null!=f[c]&&f[c].ips.length>0?f[c]:f[4===c?6:4]):d=f[c],null==d||0===d.ips.length)return e;null==d.offset||0x7fffffff===d.offset?d.offset=0:d.offset++;let h=d.offset%d.ips.length;return null==(e=d.ips[h]??null)?e:Date.now()-e.timestamp>e.ttl?(d.ips.splice(h,1),this.pick(a,b,c)):e}pickFamily(a,b){let c=this.storage.get(a.hostname)?.records;if(!c)return null;let d=c[b];if(!d)return null;null==d.offset||0x7fffffff===d.offset?d.offset=0:d.offset++;let e=d.offset%d.ips.length,f=d.ips[e]??null;return null==f||Date.now()-f.timestamp>f.ttl&&d.ips.splice(e,1),f}setRecords(a,b){let c=Date.now(),d={records:{4:null,6:null}},e=this.#v;for(let a of b){a.timestamp=c,"number"==typeof a.ttl?(a.ttl=Math.min(a.ttl,this.#v),e=Math.min(e,a.ttl)):a.ttl=this.#v;let b=d.records[a.family]??{ips:[]};b.ips.push(a),d.records[a.family]=b}this.storage.set(a.hostname,d,{ttl:e})}deleteRecords(a){this.storage.delete(a.hostname)}getHandler(a,b){return new m(this,a,b)}}class m extends f{#a=null;#y=null;#z=null;#A=null;#B=null;#C=null;#D=!0;constructor(a,{origin:b,handler:c,dispatch:d,newOrigin:e},f){super(c),this.#A=b,this.#C=e,this.#y={...f},this.#a=a,this.#z=d}onResponseError(a,b){switch(b.code){case"ETIMEDOUT":case"ECONNREFUSED":if(this.#a.dualStack){let c;if(!this.#D)return void super.onResponseError(a,b);this.#D=!1;let d="["===this.#C.hostname[0]?4:6,e=this.#a.pickFamily(this.#A,d);if(null==e)return void super.onResponseError(a,b);c="number"==typeof e.port?`:${e.port}`:""!==this.#A.port?`:${this.#A.port}`:"";let f={...this.#y,origin:`${this.#A.protocol}//${6===e.family?`[${e.address}]`:e.address}${c}`,headers:j(this.#A.host,this.#y.headers)};this.#z(f,this);return}super.onResponseError(a,b);break;case"ENOTFOUND":this.#a.deleteRecords(this.#A),super.onResponseError(a,b);break;default:super.onResponseError(a,b)}}}a.exports=a=>{let b;if(a?.maxTTL!=null&&("number"!=typeof a?.maxTTL||a?.maxTTL<0))throw new g("Invalid maxTTL. Must be a positive number");if(a?.maxItems!=null&&("number"!=typeof a?.maxItems||a?.maxItems<1))throw new g("Invalid maxItems. Must be a positive number and greater than zero");if(a?.affinity!=null&&a?.affinity!==4&&a?.affinity!==6)throw new g("Invalid affinity. Must be either 4 or 6");if(a?.dualStack!=null&&"boolean"!=typeof a?.dualStack)throw new g("Invalid dualStack. Must be a boolean");if(a?.lookup!=null&&"function"!=typeof a?.lookup)throw new g("Invalid lookup. Must be a function");if(a?.pick!=null&&"function"!=typeof a?.pick)throw new g("Invalid pick. Must be a function");if(a?.storage!=null&&("function"!=typeof a?.storage?.get||"function"!=typeof a?.storage?.set||"function"!=typeof a?.storage?.full||"function"!=typeof a?.storage?.delete))throw new g("Invalid storage. Must be a object with methods: { get, set, full, delete }");let c=a?.dualStack??!0;b=c?a?.affinity??null:a?.affinity??4;let e=new l({maxTTL:a?.maxTTL??1e4,lookup:a?.lookup??null,pick:a?.pick??null,dualStack:c,affinity:b,maxItems:a?.maxItems??1/0,storage:a?.storage});return a=>function(b,c){if(null==b.origin)return a(b,c);let f=b.origin.constructor===URL?b.origin:new URL(b.origin);return 0!==d(f.hostname)?a(b,c):(e.runLookup(f,b,(d,g)=>{if(d)return c.onResponseError(null,d);a({...b,servername:f.hostname,origin:g.origin,headers:j(f.host,b.headers)},e.getHandler({origin:f,dispatch:a,handler:c,newOrigin:g},b))}),!0)}}},27080:(a,b,c)=>{var d=c(45654);c(63070),c(76632),c(38627),c(49345),c(94463),c(29984),c(4554),c(33889);var e=function(a,b,c,e){var f=d.util.createBuffer(),g=a.length>>1,h=g+(1&a.length),i=a.substr(0,h),j=a.substr(g,h),k=d.util.createBuffer(),l=d.hmac.create();c=b+c;var m=Math.ceil(e/16),n=Math.ceil(e/20);l.start("MD5",i);var o=d.util.createBuffer();k.putBytes(c);for(var p=0;p<m;++p)l.start(null,null),l.update(k.getBytes()),k.putBuffer(l.digest()),l.start(null,null),l.update(k.bytes()+c),o.putBuffer(l.digest());l.start("SHA1",j);var q=d.util.createBuffer();k.clear(),k.putBytes(c);for(var p=0;p<n;++p)l.start(null,null),l.update(k.getBytes()),k.putBuffer(l.digest()),l.start(null,null),l.update(k.bytes()+c),q.putBuffer(l.digest());return f.putBytes(d.util.xorBytes(o.getBytes(),q.getBytes(),e)),f},f=function(a,b,c){var e=!1;try{var f=a.deflate(b.fragment.getBytes());b.fragment=d.util.createBuffer(f),b.length=f.length,e=!0}catch(a){}return e},g=function(a,b,c){var e=!1;try{var f=a.inflate(b.fragment.getBytes());b.fragment=d.util.createBuffer(f),b.length=f.length,e=!0}catch(a){}return e},h=function(a,b){var c=0;switch(b){case 1:c=a.getByte();break;case 2:c=a.getInt16();break;case 3:c=a.getInt24();break;case 4:c=a.getInt32()}return d.util.createBuffer(a.getBytes(c))},i=function(a,b,c){a.putInt(c.length(),b<<3),a.putBuffer(c)},j={};j.Versions={TLS_1_0:{major:3,minor:1},TLS_1_1:{major:3,minor:2},TLS_1_2:{major:3,minor:3}},j.SupportedVersions=[j.Versions.TLS_1_1,j.Versions.TLS_1_0],j.Version=j.SupportedVersions[0],j.MaxFragment=15360,j.ConnectionEnd={server:0,client:1},j.PRFAlgorithm={tls_prf_sha256:0},j.BulkCipherAlgorithm={none:null,rc4:0,des3:1,aes:2},j.CipherType={stream:0,block:1,aead:2},j.MACAlgorithm={none:null,hmac_md5:0,hmac_sha1:1,hmac_sha256:2,hmac_sha384:3,hmac_sha512:4},j.CompressionMethod={none:0,deflate:1},j.ContentType={change_cipher_spec:20,alert:21,handshake:22,application_data:23,heartbeat:24},j.HandshakeType={hello_request:0,client_hello:1,server_hello:2,certificate:11,server_key_exchange:12,certificate_request:13,server_hello_done:14,certificate_verify:15,client_key_exchange:16,finished:20},j.Alert={},j.Alert.Level={warning:1,fatal:2},j.Alert.Description={close_notify:0,unexpected_message:10,bad_record_mac:20,decryption_failed:21,record_overflow:22,decompression_failure:30,handshake_failure:40,bad_certificate:42,unsupported_certificate:43,certificate_revoked:44,certificate_expired:45,certificate_unknown:46,illegal_parameter:47,unknown_ca:48,access_denied:49,decode_error:50,decrypt_error:51,export_restriction:60,protocol_version:70,insufficient_security:71,internal_error:80,user_canceled:90,no_renegotiation:100},j.HeartbeatMessageType={heartbeat_request:1,heartbeat_response:2},j.CipherSuites={},j.getCipherSuite=function(a){var b=null;for(var c in j.CipherSuites){var d=j.CipherSuites[c];if(d.id[0]===a.charCodeAt(0)&&d.id[1]===a.charCodeAt(1)){b=d;break}}return b},j.handleUnexpected=function(a,b){(a.open||a.entity!==j.ConnectionEnd.client)&&a.error(a,{message:"Unexpected message. Received TLS record out of order.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.unexpected_message}})},j.handleHelloRequest=function(a,b,c){!a.handshaking&&a.handshakes>0&&(j.queue(a,j.createAlert(a,{level:j.Alert.Level.warning,description:j.Alert.Description.no_renegotiation})),j.flush(a)),a.process()},j.parseHelloMessage=function(a,b,c){var e=null,f=a.entity===j.ConnectionEnd.client;if(c<38)a.error(a,{message:f?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}});else{var g=b.fragment,i=g.length();if(e={version:{major:g.getByte(),minor:g.getByte()},random:d.util.createBuffer(g.getBytes(32)),session_id:h(g,1),extensions:[]},f?(e.cipher_suite=g.getBytes(2),e.compression_method=g.getByte()):(e.cipher_suites=h(g,2),e.compression_methods=h(g,1)),(i=c-(i-g.length()))>0){for(var k=h(g,2);k.length()>0;)e.extensions.push({type:[k.getByte(),k.getByte()],data:h(k,2)});if(!f)for(var l=0;l<e.extensions.length;++l){var m=e.extensions[l];if(0===m.type[0]&&0===m.type[1])for(var n=h(m.data,2);n.length()>0&&0===n.getByte();)a.session.extensions.server_name.serverNameList.push(h(n,2).getBytes())}}if(a.session.version&&(e.version.major!==a.session.version.major||e.version.minor!==a.session.version.minor))return a.error(a,{message:"TLS version change is disallowed during renegotiation.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.protocol_version}});if(f)a.session.cipherSuite=j.getCipherSuite(e.cipher_suite);else for(var o=d.util.createBuffer(e.cipher_suites.bytes());o.length()>0&&(a.session.cipherSuite=j.getCipherSuite(o.getBytes(2)),null===a.session.cipherSuite););if(null===a.session.cipherSuite)return a.error(a,{message:"No cipher suites in common.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.handshake_failure},cipherSuite:d.util.bytesToHex(e.cipher_suite)});f?a.session.compressionMethod=e.compression_method:a.session.compressionMethod=j.CompressionMethod.none}return e},j.createSecurityParameters=function(a,b){var c=a.entity===j.ConnectionEnd.client,d=b.random.bytes(),e=c?a.session.sp.client_random:d,f=c?d:j.createRandom().getBytes();a.session.sp={entity:a.entity,prf_algorithm:j.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,compression_algorithm:a.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:e,server_random:f}},j.handleServerHello=function(a,b,c){var d=j.parseHelloMessage(a,b,c);if(!a.fail){if(!(d.version.minor<=a.version.minor))return a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.protocol_version}});a.version.minor=d.version.minor,a.session.version=a.version;var e=d.session_id.bytes();e.length>0&&e===a.session.id?(a.expect=o,a.session.resuming=!0,a.session.sp.server_random=d.random.bytes()):(a.expect=k,a.session.resuming=!1,j.createSecurityParameters(a,d)),a.session.id=e,a.process()}},j.handleClientHello=function(a,b,c){var e,f=j.parseHelloMessage(a,b,c);if(!a.fail){var g=f.session_id.bytes(),h=null;if(a.sessionCache&&(null===(h=a.sessionCache.getSession(g))?g="":(h.version.major!==f.version.major||h.version.minor>f.version.minor)&&(h=null,g="")),0===g.length&&(g=d.random.getBytes(32)),a.session.id=g,a.session.clientHelloVersion=f.version,a.session.sp={},h)a.version=a.session.version=h.version,a.session.sp=h.sp;else{for(var i=1;i<j.SupportedVersions.length&&!((e=j.SupportedVersions[i]).minor<=f.version.minor);++i);a.version={major:e.major,minor:e.minor},a.session.version=a.version}null!==h?(a.expect=v,a.session.resuming=!0,a.session.sp.client_random=f.random.bytes()):(a.expect=!1!==a.verifyClient?s:t,a.session.resuming=!1,j.createSecurityParameters(a,f)),a.open=!0,j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createServerHello(a)})),a.session.resuming?(j.queue(a,j.createRecord(a,{type:j.ContentType.change_cipher_spec,data:j.createChangeCipherSpec()})),a.state.pending=j.createConnectionState(a),a.state.current.write=a.state.pending.write,j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createFinished(a)}))):(j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createCertificate(a)})),a.fail||(j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createServerKeyExchange(a)})),!1!==a.verifyClient&&j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createCertificateRequest(a)})),j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createServerHelloDone(a)})))),j.flush(a),a.process()}},j.handleCertificate=function(a,b,c){if(c<3)return a.error(a,{message:"Invalid Certificate message. Message too short.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}});var e,f,g={certificate_list:h(b.fragment,3)},i=[];try{for(;g.certificate_list.length()>0;)e=h(g.certificate_list,3),f=d.asn1.fromDer(e),e=d.pki.certificateFromAsn1(f,!0),i.push(e)}catch(b){return a.error(a,{message:"Could not parse certificate list.",cause:b,send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.bad_certificate}})}var k=a.entity===j.ConnectionEnd.client;(k||!0===a.verifyClient)&&0===i.length?a.error(a,{message:k?"No server certificate provided.":"No client certificate provided.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}}):0===i.length?a.expect=k?l:t:(k?a.session.serverCertificate=i[0]:a.session.clientCertificate=i[0],j.verifyCertificateChain(a,i)&&(a.expect=k?l:t)),a.process()},j.handleServerKeyExchange=function(a,b,c){if(c>0)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.unsupported_certificate}});a.expect=m,a.process()},j.handleClientKeyExchange=function(a,b,c){if(c<48)return a.error(a,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.unsupported_certificate}});var e={enc_pre_master_secret:h(b.fragment,2).getBytes()},f=null;if(a.getPrivateKey)try{f=a.getPrivateKey(a,a.session.serverCertificate),f=d.pki.privateKeyFromPem(f)}catch(b){a.error(a,{message:"Could not get private key.",cause:b,send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}})}if(null===f)return a.error(a,{message:"No private key set.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}});try{var g=a.session.sp;g.pre_master_secret=f.decrypt(e.enc_pre_master_secret);var i=a.session.clientHelloVersion;if(i.major!==g.pre_master_secret.charCodeAt(0)||i.minor!==g.pre_master_secret.charCodeAt(1))throw Error("TLS version rollback attack detected.")}catch(a){g.pre_master_secret=d.random.getBytes(48)}a.expect=v,null!==a.session.clientCertificate&&(a.expect=u),a.process()},j.handleCertificateRequest=function(a,b,c){if(c<3)return a.error(a,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}});var d=b.fragment,e={certificate_types:h(d,1),certificate_authorities:h(d,2)};a.session.certificateRequest=e,a.expect=n,a.process()},j.handleCertificateVerify=function(a,b,c){if(c<2)return a.error(a,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}});var e=b.fragment;e.read-=4;var f=e.bytes();e.read+=4;var g={signature:h(e,2).getBytes()},i=d.util.createBuffer();i.putBuffer(a.session.md5.digest()),i.putBuffer(a.session.sha1.digest()),i=i.getBytes();try{if(!a.session.clientCertificate.publicKey.verify(i,g.signature,"NONE"))throw Error("CertificateVerify signature does not match.");a.session.md5.update(f),a.session.sha1.update(f)}catch(b){return a.error(a,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.handshake_failure}})}a.expect=v,a.process()},j.handleServerHelloDone=function(a,b,c){if(c>0)return a.error(a,{message:"Invalid ServerHelloDone message. Invalid length.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.record_overflow}});if(null===a.serverCertificate){var e={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.insufficient_security}},f=a.verify(a,e.alert.description,0,[]);if(!0!==f)return(f||0===f)&&("object"!=typeof f||d.util.isArray(f)?"number"==typeof f&&(e.alert.description=f):(f.message&&(e.message=f.message),f.alert&&(e.alert.description=f.alert))),a.error(a,e)}null!==a.session.certificateRequest&&(b=j.createRecord(a,{type:j.ContentType.handshake,data:j.createCertificate(a)}),j.queue(a,b)),b=j.createRecord(a,{type:j.ContentType.handshake,data:j.createClientKeyExchange(a)}),j.queue(a,b),a.expect=r;var g=function(a,b){null!==a.session.certificateRequest&&null!==a.session.clientCertificate&&j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createCertificateVerify(a,b)})),j.queue(a,j.createRecord(a,{type:j.ContentType.change_cipher_spec,data:j.createChangeCipherSpec()})),a.state.pending=j.createConnectionState(a),a.state.current.write=a.state.pending.write,j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createFinished(a)})),a.expect=o,j.flush(a),a.process()};if(null===a.session.certificateRequest||null===a.session.clientCertificate)return g(a,null);j.getClientSignature(a,g)},j.handleChangeCipherSpec=function(a,b){if(1!==b.fragment.getByte())return a.error(a,{message:"Invalid ChangeCipherSpec message received.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.illegal_parameter}});var c=a.entity===j.ConnectionEnd.client;(a.session.resuming&&c||!a.session.resuming&&!c)&&(a.state.pending=j.createConnectionState(a)),a.state.current.read=a.state.pending.read,(!a.session.resuming&&c||a.session.resuming&&!c)&&(a.state.pending=null),a.expect=c?p:w,a.process()},j.handleFinished=function(a,b,c){var f=b.fragment;f.read-=4;var g=f.bytes();f.read+=4;var h=b.fragment.getBytes();(f=d.util.createBuffer()).putBuffer(a.session.md5.digest()),f.putBuffer(a.session.sha1.digest());var i=a.entity===j.ConnectionEnd.client;if((f=e(a.session.sp.master_secret,i?"server finished":"client finished",f.getBytes(),12)).getBytes()!==h)return a.error(a,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.decrypt_error}});a.session.md5.update(g),a.session.sha1.update(g),(a.session.resuming&&i||!a.session.resuming&&!i)&&(j.queue(a,j.createRecord(a,{type:j.ContentType.change_cipher_spec,data:j.createChangeCipherSpec()})),a.state.current.write=a.state.pending.write,a.state.pending=null,j.queue(a,j.createRecord(a,{type:j.ContentType.handshake,data:j.createFinished(a)}))),a.expect=i?q:x,a.handshaking=!1,++a.handshakes,a.peerCertificate=i?a.session.serverCertificate:a.session.clientCertificate,j.flush(a),a.isConnected=!0,a.connected(a),a.process()},j.handleAlert=function(a,b){var c,d=b.fragment,e={level:d.getByte(),description:d.getByte()};switch(e.description){case j.Alert.Description.close_notify:c="Connection closed.";break;case j.Alert.Description.unexpected_message:c="Unexpected message.";break;case j.Alert.Description.bad_record_mac:c="Bad record MAC.";break;case j.Alert.Description.decryption_failed:c="Decryption failed.";break;case j.Alert.Description.record_overflow:c="Record overflow.";break;case j.Alert.Description.decompression_failure:c="Decompression failed.";break;case j.Alert.Description.handshake_failure:c="Handshake failure.";break;case j.Alert.Description.bad_certificate:c="Bad certificate.";break;case j.Alert.Description.unsupported_certificate:c="Unsupported certificate.";break;case j.Alert.Description.certificate_revoked:c="Certificate revoked.";break;case j.Alert.Description.certificate_expired:c="Certificate expired.";break;case j.Alert.Description.certificate_unknown:c="Certificate unknown.";break;case j.Alert.Description.illegal_parameter:c="Illegal parameter.";break;case j.Alert.Description.unknown_ca:c="Unknown certificate authority.";break;case j.Alert.Description.access_denied:c="Access denied.";break;case j.Alert.Description.decode_error:c="Decode error.";break;case j.Alert.Description.decrypt_error:c="Decrypt error.";break;case j.Alert.Description.export_restriction:c="Export restriction.";break;case j.Alert.Description.protocol_version:c="Unsupported protocol version.";break;case j.Alert.Description.insufficient_security:c="Insufficient security.";break;case j.Alert.Description.internal_error:c="Internal error.";break;case j.Alert.Description.user_canceled:c="User canceled.";break;case j.Alert.Description.no_renegotiation:c="Renegotiation not supported.";break;default:c="Unknown error."}if(e.description===j.Alert.Description.close_notify)return a.close();a.error(a,{message:c,send:!1,origin:a.entity===j.ConnectionEnd.client?"server":"client",alert:e}),a.process()},j.handleHandshake=function(a,b){var c=b.fragment,e=c.getByte(),f=c.getInt24();if(f>c.length())return a.fragmented=b,b.fragment=d.util.createBuffer(),c.read-=4,a.process();a.fragmented=null,c.read-=4;var g=c.bytes(f+4);c.read+=4,e in M[a.entity][a.expect]?(a.entity!==j.ConnectionEnd.server||a.open||a.fail||(a.handshaking=!0,a.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:d.md.md5.create(),sha1:d.md.sha1.create()}),e!==j.HandshakeType.hello_request&&e!==j.HandshakeType.certificate_verify&&e!==j.HandshakeType.finished&&(a.session.md5.update(g),a.session.sha1.update(g)),M[a.entity][a.expect][e](a,b,f)):j.handleUnexpected(a,b)},j.handleApplicationData=function(a,b){a.data.putBuffer(b.fragment),a.dataReady(a),a.process()},j.handleHeartbeat=function(a,b){var c=b.fragment,e=c.getByte(),f=c.getInt16(),g=c.getBytes(f);if(e===j.HeartbeatMessageType.heartbeat_request){if(a.handshaking||f>g.length)return a.process();j.queue(a,j.createRecord(a,{type:j.ContentType.heartbeat,data:j.createHeartbeat(j.HeartbeatMessageType.heartbeat_response,g)})),j.flush(a)}else if(e===j.HeartbeatMessageType.heartbeat_response){if(g!==a.expectedHeartbeatPayload)return a.process();a.heartbeatReceived&&a.heartbeatReceived(a,d.util.createBuffer(g))}a.process()};var k=1,l=2,m=3,n=4,o=5,p=6,q=7,r=8,s=1,t=2,u=3,v=4,w=5,x=6,y=j.handleUnexpected,z=j.handleChangeCipherSpec,A=j.handleAlert,B=j.handleHandshake,C=j.handleApplicationData,D=j.handleHeartbeat,E=[];E[j.ConnectionEnd.client]=[[y,A,B,y,D],[y,A,B,y,D],[y,A,B,y,D],[y,A,B,y,D],[y,A,B,y,D],[z,A,y,y,D],[y,A,B,y,D],[y,A,B,C,D],[y,A,B,y,D]],E[j.ConnectionEnd.server]=[[y,A,B,y,D],[y,A,B,y,D],[y,A,B,y,D],[y,A,B,y,D],[z,A,y,y,D],[y,A,B,y,D],[y,A,B,C,D],[y,A,B,y,D]];var F=j.handleHelloRequest,G=j.handleServerHello,H=j.handleCertificate,I=j.handleServerKeyExchange,J=j.handleCertificateRequest,K=j.handleServerHelloDone,L=j.handleFinished,M=[];M[j.ConnectionEnd.client]=[[y,y,G,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,H,I,J,K,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,I,J,K,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,y,J,K,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,y,y,K,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,L],[F,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[F,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y]];var N=j.handleClientHello,O=j.handleClientKeyExchange,P=j.handleCertificateVerify;M[j.ConnectionEnd.server]=[[y,N,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,H,y,y,y,y,y,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,O,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,P,y,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,L],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y],[y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y,y]],j.generateKeys=function(a,b){var c=b.client_random+b.server_random;a.session.resuming||(b.master_secret=e(b.pre_master_secret,"master secret",c,48).bytes(),b.pre_master_secret=null),c=b.server_random+b.client_random;var d=2*b.mac_key_length+2*b.enc_key_length,f=a.version.major===j.Versions.TLS_1_0.major&&a.version.minor===j.Versions.TLS_1_0.minor;f&&(d+=2*b.fixed_iv_length);var g=e(b.master_secret,"key expansion",c,d),h={client_write_MAC_key:g.getBytes(b.mac_key_length),server_write_MAC_key:g.getBytes(b.mac_key_length),client_write_key:g.getBytes(b.enc_key_length),server_write_key:g.getBytes(b.enc_key_length)};return f&&(h.client_write_IV=g.getBytes(b.fixed_iv_length),h.server_write_IV=g.getBytes(b.fixed_iv_length)),h},j.createConnectionState=function(a){var b=a.entity===j.ConnectionEnd.client,c=function(){var a={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,cipherState:null,cipherFunction:function(a){return!0},compressionState:null,compressFunction:function(a){return!0},updateSequenceNumber:function(){0xffffffff===a.sequenceNumber[1]?(a.sequenceNumber[1]=0,++a.sequenceNumber[0]):++a.sequenceNumber[1]}};return a},d={read:c(),write:c()};if(d.read.update=function(a,b){return d.read.cipherFunction(b,d.read)?d.read.compressFunction(a,b,d.read)||a.error(a,{message:"Could not decompress record.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.decompression_failure}}):a.error(a,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.bad_record_mac}}),!a.fail},d.write.update=function(a,b){return d.write.compressFunction(a,b,d.write)?d.write.cipherFunction(b,d.write)||a.error(a,{message:"Could not encrypt record.",send:!1,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}}):a.error(a,{message:"Could not compress record.",send:!1,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}}),!a.fail},a.session){var e=a.session.sp;switch(a.session.cipherSuite.initSecurityParameters(e),e.keys=j.generateKeys(a,e),d.read.macKey=b?e.keys.server_write_MAC_key:e.keys.client_write_MAC_key,d.write.macKey=b?e.keys.client_write_MAC_key:e.keys.server_write_MAC_key,a.session.cipherSuite.initConnectionState(d,a,e),e.compression_algorithm){case j.CompressionMethod.none:break;case j.CompressionMethod.deflate:d.read.compressFunction=g,d.write.compressFunction=f;break;default:throw Error("Unsupported compression algorithm.")}}return d},j.createRandom=function(){var a=new Date,b=+a+6e4*a.getTimezoneOffset(),c=d.util.createBuffer();return c.putInt32(b),c.putBytes(d.random.getBytes(28)),c},j.createRecord=function(a,b){return b.data?{type:b.type,version:{major:a.version.major,minor:a.version.minor},length:b.data.length(),fragment:b.data}:null},j.createAlert=function(a,b){var c=d.util.createBuffer();return c.putByte(b.level),c.putByte(b.description),j.createRecord(a,{type:j.ContentType.alert,data:c})},j.createClientHello=function(a){a.session.clientHelloVersion={major:a.version.major,minor:a.version.minor};for(var b=d.util.createBuffer(),c=0;c<a.cipherSuites.length;++c){var e=a.cipherSuites[c];b.putByte(e.id[0]),b.putByte(e.id[1])}var f=b.length(),g=d.util.createBuffer();g.putByte(j.CompressionMethod.none);var h=g.length(),k=d.util.createBuffer();if(a.virtualHost){var l=d.util.createBuffer();l.putByte(0),l.putByte(0);var m=d.util.createBuffer();m.putByte(0),i(m,2,d.util.createBuffer(a.virtualHost));var n=d.util.createBuffer();i(n,2,m),i(l,2,n),k.putBuffer(l)}var o=k.length();o>0&&(o+=2);var p=a.session.id,q=p.length+1+2+4+28+2+f+1+h+o,r=d.util.createBuffer();return r.putByte(j.HandshakeType.client_hello),r.putInt24(q),r.putByte(a.version.major),r.putByte(a.version.minor),r.putBytes(a.session.sp.client_random),i(r,1,d.util.createBuffer(p)),i(r,2,b),i(r,1,g),o>0&&i(r,2,k),r},j.createServerHello=function(a){var b=a.session.id,c=b.length+1+2+4+28+2+1,e=d.util.createBuffer();return e.putByte(j.HandshakeType.server_hello),e.putInt24(c),e.putByte(a.version.major),e.putByte(a.version.minor),e.putBytes(a.session.sp.server_random),i(e,1,d.util.createBuffer(b)),e.putByte(a.session.cipherSuite.id[0]),e.putByte(a.session.cipherSuite.id[1]),e.putByte(a.session.compressionMethod),e},j.createCertificate=function(a){var b,c=a.entity===j.ConnectionEnd.client,e=null;a.getCertificate&&(b=c?a.session.certificateRequest:a.session.extensions.server_name.serverNameList,e=a.getCertificate(a,b));var f=d.util.createBuffer();if(null!==e)try{d.util.isArray(e)||(e=[e]);for(var g=null,h=0;h<e.length;++h){var k=d.pem.decode(e[h])[0];if("CERTIFICATE"!==k.type&&"X509 CERTIFICATE"!==k.type&&"TRUSTED CERTIFICATE"!==k.type){var l=Error('Could not convert certificate from PEM; PEM header type is not "CERTIFICATE", "X509 CERTIFICATE", or "TRUSTED CERTIFICATE".');throw l.headerType=k.type,l}if(k.procType&&"ENCRYPTED"===k.procType.type)throw Error("Could not convert certificate from PEM; PEM is encrypted.");var m=d.util.createBuffer(k.body);null===g&&(g=d.asn1.fromDer(m.bytes(),!1));var n=d.util.createBuffer();i(n,3,m),f.putBuffer(n)}e=d.pki.certificateFromAsn1(g),c?a.session.clientCertificate=e:a.session.serverCertificate=e}catch(b){return a.error(a,{message:"Could not send certificate list.",cause:b,send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.bad_certificate}})}var o=3+f.length(),p=d.util.createBuffer();return p.putByte(j.HandshakeType.certificate),p.putInt24(o),i(p,3,f),p},j.createClientKeyExchange=function(a){var b=d.util.createBuffer();b.putByte(a.session.clientHelloVersion.major),b.putByte(a.session.clientHelloVersion.minor),b.putBytes(d.random.getBytes(46));var c=a.session.sp;c.pre_master_secret=b.getBytes();var e=(b=a.session.serverCertificate.publicKey.encrypt(c.pre_master_secret)).length+2,f=d.util.createBuffer();return f.putByte(j.HandshakeType.client_key_exchange),f.putInt24(e),f.putInt16(b.length),f.putBytes(b),f},j.createServerKeyExchange=function(a){return d.util.createBuffer()},j.getClientSignature=function(a,b){var c=d.util.createBuffer();c.putBuffer(a.session.md5.digest()),c.putBuffer(a.session.sha1.digest()),c=c.getBytes(),a.getSignature=a.getSignature||function(a,b,c){var e=null;if(a.getPrivateKey)try{e=a.getPrivateKey(a,a.session.clientCertificate),e=d.pki.privateKeyFromPem(e)}catch(b){a.error(a,{message:"Could not get private key.",cause:b,send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}})}null===e?a.error(a,{message:"No private key set.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.internal_error}}):b=e.sign(b,null),c(a,b)},a.getSignature(a,c,b)},j.createCertificateVerify=function(a,b){var c=b.length+2,e=d.util.createBuffer();return e.putByte(j.HandshakeType.certificate_verify),e.putInt24(c),e.putInt16(b.length),e.putBytes(b),e},j.createCertificateRequest=function(a){var b=d.util.createBuffer();b.putByte(1);var c=d.util.createBuffer();for(var e in a.caStore.certs){var f=a.caStore.certs[e],g=d.pki.distinguishedNameToAsn1(f.subject),h=d.asn1.toDer(g);c.putInt16(h.length()),c.putBuffer(h)}var k=1+b.length()+2+c.length(),l=d.util.createBuffer();return l.putByte(j.HandshakeType.certificate_request),l.putInt24(k),i(l,1,b),i(l,2,c),l},j.createServerHelloDone=function(a){var b=d.util.createBuffer();return b.putByte(j.HandshakeType.server_hello_done),b.putInt24(0),b},j.createChangeCipherSpec=function(){var a=d.util.createBuffer();return a.putByte(1),a},j.createFinished=function(a){var b=d.util.createBuffer();b.putBuffer(a.session.md5.digest()),b.putBuffer(a.session.sha1.digest());var c=a.entity===j.ConnectionEnd.client;b=e(a.session.sp.master_secret,c?"client finished":"server finished",b.getBytes(),12);var f=d.util.createBuffer();return f.putByte(j.HandshakeType.finished),f.putInt24(b.length()),f.putBuffer(b),f},j.createHeartbeat=function(a,b,c){void 0===c&&(c=b.length);var e=d.util.createBuffer();e.putByte(a),e.putInt16(c),e.putBytes(b);var f=Math.max(16,e.length()-c-3);return e.putBytes(d.random.getBytes(f)),e},j.queue=function(a,b){if(b&&(0!==b.fragment.length()||b.type!==j.ContentType.handshake&&b.type!==j.ContentType.alert&&b.type!==j.ContentType.change_cipher_spec)){if(b.type===j.ContentType.handshake){var c,e=b.fragment.bytes();a.session.md5.update(e),a.session.sha1.update(e),e=null}if(b.fragment.length()<=j.MaxFragment)c=[b];else{c=[];for(var f=b.fragment.bytes();f.length>j.MaxFragment;)c.push(j.createRecord(a,{type:b.type,data:d.util.createBuffer(f.slice(0,j.MaxFragment))})),f=f.slice(j.MaxFragment);f.length>0&&c.push(j.createRecord(a,{type:b.type,data:d.util.createBuffer(f)}))}for(var g=0;g<c.length&&!a.fail;++g){var h=c[g];a.state.current.write.update(a,h)&&a.records.push(h)}}},j.flush=function(a){for(var b=0;b<a.records.length;++b){var c=a.records[b];a.tlsData.putByte(c.type),a.tlsData.putByte(c.version.major),a.tlsData.putByte(c.version.minor),a.tlsData.putInt16(c.fragment.length()),a.tlsData.putBuffer(a.records[b].fragment)}return a.records=[],a.tlsDataReady(a)};var Q=function(a){switch(a){case!0:return!0;case d.pki.certificateError.bad_certificate:return j.Alert.Description.bad_certificate;case d.pki.certificateError.unsupported_certificate:return j.Alert.Description.unsupported_certificate;case d.pki.certificateError.certificate_revoked:return j.Alert.Description.certificate_revoked;case d.pki.certificateError.certificate_expired:return j.Alert.Description.certificate_expired;case d.pki.certificateError.certificate_unknown:return j.Alert.Description.certificate_unknown;case d.pki.certificateError.unknown_ca:return j.Alert.Description.unknown_ca;default:return j.Alert.Description.bad_certificate}},R=function(a){switch(a){case!0:return!0;case j.Alert.Description.bad_certificate:return d.pki.certificateError.bad_certificate;case j.Alert.Description.unsupported_certificate:return d.pki.certificateError.unsupported_certificate;case j.Alert.Description.certificate_revoked:return d.pki.certificateError.certificate_revoked;case j.Alert.Description.certificate_expired:return d.pki.certificateError.certificate_expired;case j.Alert.Description.certificate_unknown:return d.pki.certificateError.certificate_unknown;case j.Alert.Description.unknown_ca:return d.pki.certificateError.unknown_ca;default:return d.pki.certificateError.bad_certificate}};for(var S in j.verifyCertificateChain=function(a,b){try{var c={};for(var e in a.verifyOptions)c[e]=a.verifyOptions[e];c.verify=function(b,c,e){Q(b);var f=a.verify(a,b,c,e);if(!0!==f){if("object"==typeof f&&!d.util.isArray(f)){var g=Error("The application rejected the certificate.");throw g.send=!0,g.alert={level:j.Alert.Level.fatal,description:j.Alert.Description.bad_certificate},f.message&&(g.message=f.message),f.alert&&(g.alert.description=f.alert),g}f!==b&&(f=R(f))}return f},d.pki.verifyCertificateChain(a.caStore,b,c)}catch(b){var f=b;("object"!=typeof f||d.util.isArray(f))&&(f={send:!0,alert:{level:j.Alert.Level.fatal,description:Q(b)}}),"send"in f||(f.send=!0),"alert"in f||(f.alert={level:j.Alert.Level.fatal,description:Q(f.error)}),a.error(a,f)}return!a.fail},j.createSessionCache=function(a,b){var c=null;if(a&&a.getSession&&a.setSession&&a.order)c=a;else{for(var e in(c={}).cache=a||{},c.capacity=Math.max(b||100,1),c.order=[],a)c.order.length<=b?c.order.push(e):delete a[e];c.getSession=function(a){var b=null,e=null;if(a?e=d.util.bytesToHex(a):c.order.length>0&&(e=c.order[0]),null!==e&&e in c.cache){for(var f in b=c.cache[e],delete c.cache[e],c.order)if(c.order[f]===e){c.order.splice(f,1);break}}return b},c.setSession=function(a,b){if(c.order.length===c.capacity){var e=c.order.shift();delete c.cache[e]}var e=d.util.bytesToHex(a);c.order.push(e),c.cache[e]=b}}return c},j.createConnection=function(a){var b=null;b=a.caStore?d.util.isArray(a.caStore)?d.pki.createCaStore(a.caStore):a.caStore:d.pki.createCaStore();var c=a.cipherSuites||null;if(null===c)for(var e in c=[],j.CipherSuites)c.push(j.CipherSuites[e]);var f=a.server?j.ConnectionEnd.server:j.ConnectionEnd.client,g=a.sessionCache?j.createSessionCache(a.sessionCache):null,h={version:{major:j.Version.major,minor:j.Version.minor},entity:f,sessionId:a.sessionId,caStore:b,sessionCache:g,cipherSuites:c,connected:a.connected,virtualHost:a.virtualHost||null,verifyClient:a.verifyClient||!1,verify:a.verify||function(a,b,c,d){return b},verifyOptions:a.verifyOptions||{},getCertificate:a.getCertificate||null,getPrivateKey:a.getPrivateKey||null,getSignature:a.getSignature||null,input:d.util.createBuffer(),tlsData:d.util.createBuffer(),data:d.util.createBuffer(),tlsDataReady:a.tlsDataReady,dataReady:a.dataReady,heartbeatReceived:a.heartbeatReceived,closed:a.closed,error:function(b,c){c.origin=c.origin||(b.entity===j.ConnectionEnd.client?"client":"server"),c.send&&(j.queue(b,j.createAlert(b,c.alert)),j.flush(b));var d=!1!==c.fatal;d&&(b.fail=!0),a.error(b,c),d&&b.close(!1)},deflate:a.deflate||null,inflate:a.inflate||null};h.reset=function(a){h.version={major:j.Version.major,minor:j.Version.minor},h.record=null,h.session=null,h.peerCertificate=null,h.state={pending:null,current:null},h.entity,j.ConnectionEnd.client,h.expect=0,h.fragmented=null,h.records=[],h.open=!1,h.handshakes=0,h.handshaking=!1,h.isConnected=!1,h.fail=!(a||void 0===a),h.input.clear(),h.tlsData.clear(),h.data.clear(),h.state.current=j.createConnectionState(h)},h.reset();var i=function(a,b){var c=b.type-j.ContentType.change_cipher_spec,d=E[a.entity][a.expect];c in d?d[c](a,b):j.handleUnexpected(a,b)},k=function(a){var b=0,c=a.input,e=c.length();if(e<5)b=5-e;else{a.record={type:c.getByte(),version:{major:c.getByte(),minor:c.getByte()},length:c.getInt16(),fragment:d.util.createBuffer(),ready:!1};var f=a.record.version.major===a.version.major;f&&a.session&&a.session.version&&(f=a.record.version.minor===a.version.minor),f||a.error(a,{message:"Incompatible TLS version.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.protocol_version}})}return b},l=function(a){var b=0,c=a.input,d=c.length();return d<a.record.length?b=a.record.length-d:(a.record.fragment.putBytes(c.getBytes(a.record.length)),c.compact(),a.state.current.read.update(a,a.record)&&(null!==a.fragmented&&(a.fragmented.type===a.record.type?(a.fragmented.fragment.putBuffer(a.record.fragment),a.record=a.fragmented):a.error(a,{message:"Invalid fragmented record.",send:!0,alert:{level:j.Alert.Level.fatal,description:j.Alert.Description.unexpected_message}})),a.record.ready=!0)),b};return h.handshake=function(a){if(h.entity!==j.ConnectionEnd.client)h.error(h,{message:"Cannot initiate handshake as a server.",fatal:!1});else if(h.handshaking)h.error(h,{message:"Handshake already in progress.",fatal:!1});else{h.fail&&!h.open&&0===h.handshakes&&(h.fail=!1),h.handshaking=!0;var b=null;(a=a||"").length>0&&(h.sessionCache&&(b=h.sessionCache.getSession(a)),null===b&&(a="")),0===a.length&&h.sessionCache&&null!==(b=h.sessionCache.getSession())&&(a=b.id),h.session={id:a,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:d.md.md5.create(),sha1:d.md.sha1.create()},b&&(h.version=b.version,h.session.sp=b.sp),h.session.sp.client_random=j.createRandom().getBytes(),h.open=!0,j.queue(h,j.createRecord(h,{type:j.ContentType.handshake,data:j.createClientHello(h)})),j.flush(h)}},h.process=function(a){var b=0;return a&&h.input.putBytes(a),h.fail||(null!==h.record&&h.record.ready&&h.record.fragment.isEmpty()&&(h.record=null),null===h.record&&(b=k(h)),h.fail||null===h.record||h.record.ready||(b=l(h)),!h.fail&&null!==h.record&&h.record.ready&&i(h,h.record)),b},h.prepare=function(a){return j.queue(h,j.createRecord(h,{type:j.ContentType.application_data,data:d.util.createBuffer(a)})),j.flush(h)},h.prepareHeartbeatRequest=function(a,b){return a instanceof d.util.ByteBuffer&&(a=a.bytes()),void 0===b&&(b=a.length),h.expectedHeartbeatPayload=a,j.queue(h,j.createRecord(h,{type:j.ContentType.heartbeat,data:j.createHeartbeat(j.HeartbeatMessageType.heartbeat_request,a,b)})),j.flush(h)},h.close=function(a){if(!h.fail&&h.sessionCache&&h.session){var b={id:h.session.id,version:h.session.version,sp:h.session.sp};b.sp.keys=null,h.sessionCache.setSession(b.id,b)}h.open&&(h.open=!1,h.input.clear(),(h.isConnected||h.handshaking)&&(h.isConnected=h.handshaking=!1,j.queue(h,j.createAlert(h,{level:j.Alert.Level.warning,description:j.Alert.Description.close_notify})),j.flush(h)),h.closed(h)),h.reset(a)},h},a.exports=d.tls=d.tls||{},j)"function"!=typeof j[S]&&(d.tls[S]=j[S]);d.tls.prf_tls1=e,d.tls.hmac_sha1=function(a,b,c){var e=d.hmac.create();e.start("SHA1",a);var f=d.util.createBuffer();return f.putInt32(b[0]),f.putInt32(b[1]),f.putByte(c.type),f.putByte(c.version.major),f.putByte(c.version.minor),f.putInt16(c.length),f.putBytes(c.fragment.bytes()),e.update(f.getBytes()),e.digest().getBytes()},d.tls.createSessionCache=j.createSessionCache,d.tls.createConnection=j.createConnection},27137:(a,b,c)=>{"use strict";c.d(b,{A:()=>f});let d=new Uint8Array(16);var e=c(82009);let f=function(a,b,c){return b||a||!crypto.randomUUID?function(a,b,c){let f=(a=a||{}).random??a.rng?.()??crypto.getRandomValues(d);if(f.length<16)throw Error("Random bytes length must be >= 16");if(f[6]=15&f[6]|64,f[8]=63&f[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=f[a];return b}return(0,e.k)(f)}(a,b,c):crypto.randomUUID()}},28169:(a,b,c)=>{var d=c(45654);c(45518),c(76632),c(38627),c(4554),c(33889);var e=a.exports=d.ssh=d.ssh||{};function f(a,b){var c=b.toString(16);c[0]>="8"&&(c="00"+c);var e=d.util.hexToBytes(c);a.putInt32(e.length),a.putBytes(e)}function g(a,b){a.putInt32(b.length),a.putString(b)}function h(){for(var a=d.md.sha1.create(),b=arguments.length,c=0;c<b;++c)a.update(arguments[c]);return a.digest()}e.privateKeyToPutty=function(a,b,c){c=c||"";var e,i="ssh-rsa",j=""===(b=b||"")?"none":"aes256-cbc",k="PuTTY-User-Key-File-2: "+i+"\r\n";k+="Encryption: "+j+"\r\n",k+="Comment: "+c+"\r\n";var l=d.util.createBuffer();g(l,i),f(l,a.e),f(l,a.n);var m=d.util.encode64(l.bytes(),64),n=Math.floor(m.length/66)+1;k+="Public-Lines: "+n+"\r\n",k+=m;var o=d.util.createBuffer();if(f(o,a.d),f(o,a.p),f(o,a.q),f(o,a.qInv),b){var p=o.length()+16-1;p-=p%16;var q=h(o.bytes());q.truncate(q.length()-p+o.length()),o.putBuffer(q);var r=d.util.createBuffer();r.putBuffer(h("\0\0\0\0",b)),r.putBuffer(h("\0\0\0\x01",b));var s=d.aes.createEncryptionCipher(r.truncate(8),"CBC");s.start(d.util.createBuffer().fillWithByte(0,16)),s.update(o.copy()),s.finish();var t=s.output;t.truncate(16),e=d.util.encode64(t.bytes(),64)}else e=d.util.encode64(o.bytes(),64);k+="\r\nPrivate-Lines: "+(n=Math.floor(e.length/66)+1)+"\r\n",k+=e;var u=h("putty-private-key-file-mac-key",b),v=d.util.createBuffer();g(v,i),g(v,j),g(v,c),v.putInt32(l.length()),v.putBuffer(l),v.putInt32(o.length()),v.putBuffer(o);var w=d.hmac.create();return w.start("sha1",u),w.update(v.bytes()),k+="\r\nPrivate-MAC: "+w.digest().toHex()+"\r\n"},e.publicKeyToOpenSSH=function(a,b){var c="ssh-rsa";b=b||"";var e=d.util.createBuffer();return g(e,c),f(e,a.e),f(e,a.n),c+" "+d.util.encode64(e.bytes())+" "+b},e.privateKeyToOpenSSH=function(a,b){return b?d.pki.encryptRsaPrivateKey(a,b,{legacy:!0,algorithm:"aes128"}):d.pki.privateKeyToPem(a)},e.getPublicKeyFingerprint=function(a,b){var c=(b=b||{}).md||d.md.md5.create(),e=d.util.createBuffer();g(e,"ssh-rsa"),f(e,a.e),f(e,a.n),c.start(),c.update(e.getBytes());var h=c.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}},28665:(a,b,c)=>{"use strict";let{kConstruct:d}=c(49176),{kEnumerableProperty:e}=c(84285),{iteratorMixin:f,isValidHeaderName:g,isValidHeaderValue:h}=c(42425),{webidl:i}=c(32984),j=c(34589),k=c(57975);function l(a){return 10===a||13===a||9===a||32===a}function m(a){let b=0,c=a.length;for(;c>b&&l(a.charCodeAt(c-1));)--c;for(;c>b&&l(a.charCodeAt(b));)++b;return 0===b&&c===a.length?a:a.substring(b,c)}function n(a,b){if(Array.isArray(b))for(let c=0;c<b.length;++c){let d=b[c];if(2!==d.length)throw i.errors.exception({header:"Headers constructor",message:`expected name/value pair to be length 2, found ${d.length}.`});o(a,d[0],d[1])}else if("object"==typeof b&&null!==b){let c=Object.keys(b);for(let d=0;d<c.length;++d)o(a,c[d],b[c[d]])}else throw i.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})}function o(a,b,c){if(c=m(c),g(b)){if(!h(c))throw i.errors.invalidArgument({prefix:"Headers.append",value:c,type:"header value"})}else throw i.errors.invalidArgument({prefix:"Headers.append",value:b,type:"header name"});if("immutable"===s(a))throw TypeError("immutable");return u(a).append(b,c,!1)}function p(a,b){return a[0]<b[0]?-1:1}class q{cookies=null;sortedMap;headersMap;constructor(a){a instanceof q?(this.headersMap=new Map(a.headersMap),this.sortedMap=a.sortedMap,this.cookies=null===a.cookies?null:[...a.cookies]):(this.headersMap=new Map(a),this.sortedMap=null)}contains(a,b){return this.headersMap.has(b?a:a.toLowerCase())}clear(){this.headersMap.clear(),this.sortedMap=null,this.cookies=null}append(a,b,c){this.sortedMap=null;let d=c?a:a.toLowerCase(),e=this.headersMap.get(d);if(e){let a="cookie"===d?"; ":", ";this.headersMap.set(d,{name:e.name,value:`${e.value}${a}${b}`})}else this.headersMap.set(d,{name:a,value:b});"set-cookie"===d&&(this.cookies??=[]).push(b)}set(a,b,c){this.sortedMap=null;let d=c?a:a.toLowerCase();"set-cookie"===d&&(this.cookies=[b]),this.headersMap.set(d,{name:a,value:b})}delete(a,b){this.sortedMap=null,b||(a=a.toLowerCase()),"set-cookie"===a&&(this.cookies=null),this.headersMap.delete(a)}get(a,b){return this.headersMap.get(b?a:a.toLowerCase())?.value??null}*[Symbol.iterator](){for(let{0:a,1:{value:b}}of this.headersMap)yield[a,b]}get entries(){let a={};if(0!==this.headersMap.size)for(let{name:b,value:c}of this.headersMap.values())a[b]=c;return a}rawValues(){return this.headersMap.values()}get entriesList(){let a=[];if(0!==this.headersMap.size)for(let{0:b,1:{name:c,value:d}}of this.headersMap)if("set-cookie"===b)for(let b of this.cookies)a.push([c,b]);else a.push([c,d]);return a}toSortedArray(){let a=this.headersMap.size,b=Array(a);if(a<=32){if(0===a)return b;let c=this.headersMap[Symbol.iterator](),d=c.next().value;b[0]=[d[0],d[1].value],j(null!==d[1].value);for(let d=1,e=0,f=0,g=0,h=0,i,k;d<a;++d){for(k=c.next().value,j(null!==(i=b[d]=[k[0],k[1].value])[1]),g=0,f=d;g<f;)b[h=g+(f-g>>1)][0]<=i[0]?g=h+1:f=h;if(d!==h){for(e=d;e>g;)b[e]=b[--e];b[g]=i}}if(!c.next().done)throw TypeError("Unreachable");return b}{let a=0;for(let{0:c,1:{value:d}}of this.headersMap)b[a++]=[c,d],j(null!==d);return b.sort(p)}}}class r{#E;#F;constructor(a){if(i.util.markAsUncloneable(this),a===d)return;this.#F=new q,this.#E="none",void 0!==a&&n(this,a=i.converters.HeadersInit(a,"Headers constructor","init"))}append(a,b){i.brandCheck(this,r),i.argumentLengthCheck(arguments,2,"Headers.append");let c="Headers.append";return a=i.converters.ByteString(a,c,"name"),b=i.converters.ByteString(b,c,"value"),o(this,a,b)}delete(a){if(i.brandCheck(this,r),i.argumentLengthCheck(arguments,1,"Headers.delete"),!g(a=i.converters.ByteString(a,"Headers.delete","name")))throw i.errors.invalidArgument({prefix:"Headers.delete",value:a,type:"header name"});if("immutable"===this.#E)throw TypeError("immutable");this.#F.contains(a,!1)&&this.#F.delete(a,!1)}get(a){i.brandCheck(this,r),i.argumentLengthCheck(arguments,1,"Headers.get");let b="Headers.get";if(!g(a=i.converters.ByteString(a,b,"name")))throw i.errors.invalidArgument({prefix:b,value:a,type:"header name"});return this.#F.get(a,!1)}has(a){i.brandCheck(this,r),i.argumentLengthCheck(arguments,1,"Headers.has");let b="Headers.has";if(!g(a=i.converters.ByteString(a,b,"name")))throw i.errors.invalidArgument({prefix:b,value:a,type:"header name"});return this.#F.contains(a,!1)}set(a,b){i.brandCheck(this,r),i.argumentLengthCheck(arguments,2,"Headers.set");let c="Headers.set";if(a=i.converters.ByteString(a,c,"name"),b=m(b=i.converters.ByteString(b,c,"value")),g(a)){if(!h(b))throw i.errors.invalidArgument({prefix:c,value:b,type:"header value"})}else throw i.errors.invalidArgument({prefix:c,value:a,type:"header name"});if("immutable"===this.#E)throw TypeError("immutable");this.#F.set(a,b,!1)}getSetCookie(){i.brandCheck(this,r);let a=this.#F.cookies;return a?[...a]:[]}[k.inspect.custom](a,b){return b.depth??=a,`Headers ${k.formatWithOptions(b,this.#F.entries)}`}static getHeadersGuard(a){return a.#E}static setHeadersGuard(a,b){a.#E=b}static getHeadersList(a){return a.#F}static setHeadersList(a,b){a.#F=b}}let{getHeadersGuard:s,setHeadersGuard:t,getHeadersList:u,setHeadersList:v}=r;Reflect.deleteProperty(r,"getHeadersGuard"),Reflect.deleteProperty(r,"setHeadersGuard"),Reflect.deleteProperty(r,"getHeadersList"),Reflect.deleteProperty(r,"setHeadersList"),f("Headers",r,function(a){let b=u(a);if(!b)return[];if(b.sortedMap)return b.sortedMap;let c=[],d=b.toSortedArray(),e=b.cookies;if(null===e||1===e.length)return b.sortedMap=d;for(let a=0;a<d.length;++a){let{0:b,1:f}=d[a];if("set-cookie"===b)for(let a=0;a<e.length;++a)c.push([b,e[a]]);else c.push([b,f])}return b.sortedMap=c},0,1),Object.defineProperties(r.prototype,{append:e,delete:e,get:e,has:e,set:e,getSetCookie:e,[Symbol.toStringTag]:{value:"Headers",configurable:!0},[k.inspect.custom]:{enumerable:!1}}),i.converters.HeadersInit=function(a,b,c){if(i.util.Type(a)===i.util.Types.OBJECT){let d=Reflect.get(a,Symbol.iterator);if(!k.types.isProxy(a)&&d===r.prototype.entries)try{return u(a).entriesList}catch{}return"function"==typeof d?i.converters["sequence<sequence<ByteString>>"](a,b,c,d.bind(a)):i.converters["record<ByteString, ByteString>"](a,b,c)}throw i.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence<sequence<ByteString>>","record<ByteString, ByteString>"]})},a.exports={fill:n,compareHeaderName:p,Headers:r,HeadersList:q,getHeadersGuard:s,setHeadersGuard:t,setHeadersList:v,getHeadersList:u}},28820:a=>{"use strict";let b=["Accept","Accept-Encoding","Accept-Language","Accept-Ranges","Access-Control-Allow-Credentials","Access-Control-Allow-Headers","Access-Control-Allow-Methods","Access-Control-Allow-Origin","Access-Control-Expose-Headers","Access-Control-Max-Age","Access-Control-Request-Headers","Access-Control-Request-Method","Age","Allow","Alt-Svc","Alt-Used","Authorization","Cache-Control","Clear-Site-Data","Connection","Content-Disposition","Content-Encoding","Content-Language","Content-Length","Content-Location","Content-Range","Content-Security-Policy","Content-Security-Policy-Report-Only","Content-Type","Cookie","Cross-Origin-Embedder-Policy","Cross-Origin-Opener-Policy","Cross-Origin-Resource-Policy","Date","Device-Memory","Downlink","ECT","ETag","Expect","Expect-CT","Expires","Forwarded","From","Host","If-Match","If-Modified-Since","If-None-Match","If-Range","If-Unmodified-Since","Keep-Alive","Last-Modified","Link","Location","Max-Forwards","Origin","Permissions-Policy","Pragma","Proxy-Authenticate","Proxy-Authorization","RTT","Range","Referer","Referrer-Policy","Refresh","Retry-After","Sec-WebSocket-Accept","Sec-WebSocket-Extensions","Sec-WebSocket-Key","Sec-WebSocket-Protocol","Sec-WebSocket-Version","Server","Server-Timing","Service-Worker-Allowed","Service-Worker-Navigation-Preload","Set-Cookie","SourceMap","Strict-Transport-Security","Supports-Loading-Mode","TE","Timing-Allow-Origin","Trailer","Transfer-Encoding","Upgrade","Upgrade-Insecure-Requests","User-Agent","Vary","Via","WWW-Authenticate","X-Content-Type-Options","X-DNS-Prefetch-Control","X-Frame-Options","X-Permitted-Cross-Domain-Policies","X-Powered-By","X-Requested-With","X-XSS-Protection"],c={};Object.setPrototypeOf(c,null);for(let a=0;a<b.length;++a){let d=b[a],e=d.toLowerCase();c[d]=c[e]=e}a.exports={wellknownHeaderNames:b,headerNameLowerCasedRecord:c}},28998:(a,b,c)=>{"use strict";let{UndiciError:d}=c(61448),e=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED");class f extends d{constructor(a){super(a),this.name="MockNotMatchedError",this.message=a||"The request does not match any registered mock dispatches",this.code="UND_MOCK_ERR_MOCK_NOT_MATCHED"}static[Symbol.hasInstance](a){return a&&!0===a[e]}get[e](){return!0}}a.exports={MockNotMatchedError:f}},29055:(a,b,c)=>{"use strict";c.d(b,{B:()=>e,V:()=>f});var d=c(11897);function e(a,b=!1){return b?{role:d.z7.ASSISTANT,reasoning_content:a}:{reasoning_content:a}}function f(a){if(!a||"object"!=typeof a)return"";if("string"==typeof a.reasoning_content&&a.reasoning_content)return a.reasoning_content;if("string"==typeof a.reasoning&&a.reasoning)return a.reasoning;let b=a.reasoning_details;return Array.isArray(b)?b.map(a=>"string"==typeof a?a:a?.text||a?.content||"").join(""):""}},29137:(a,b,c)=>{"use strict";c.d(b,{c:()=>g});var d=c(49471);let e=[{match:/claude-opus-4/i,drop:["temperature"]},{provider:"github",match:/gpt-5\.4/i,drop:["temperature"]},{provider:"github",match:a=>/claude/i.test(a)&&!/claude.*(opus|sonnet).*4\.6/i.test(a),drop:["thinking","reasoning_effort"]},{provider:"cloudflare-ai",flattenContent:!0},{provider:"volcengine-ark",match:/glm-5/i,clampToModelMaxOutput:!0}];function f(a,b,c){"number"==typeof a[b]&&Number.isFinite(a[b])&&a[b]>c&&(a[b]=c)}function g(a,b,c){if(!b||!c||"object"!=typeof c)return c;for(let g of e)if((!g.provider||g.provider===a)&&(!g.match||("function"==typeof g.match?g.match(b):g.match.test(b)))){for(let a of g.drop||[])void 0!==c[a]&&delete c[a];if(g.flattenContent&&Array.isArray(c.messages))for(let a of c.messages)a&&Array.isArray(a.content)&&(a.content=a.content.map(a=>a?.type==="text"&&"string"==typeof a.text?a.text:"").join(""));if(g.clampToModelMaxOutput){let e=(0,d.nl)(a,b).maxOutput;Number.isFinite(e)&&e>0&&(f(c,"max_tokens",e),f(c,"max_completion_tokens",e),f(c,"max_output_tokens",e))}}return c}},29653:a=>{"use strict";a.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}},29984:(a,b,c)=>{var d=c(45654);c(45518),c(6680),c(4890),c(33889),function(){if(d.random&&d.random.getBytes){a.exports=d.random;return}!function(b){var c={},e=[,,,,],f=d.util.createBuffer();function g(){var a=d.prng.create(c);return a.getBytes=function(b,c){return a.generate(b,c)},a.getBytesSync=function(b){return a.generate(b)},a}c.formatKey=function(a){var b=d.util.createBuffer(a);return(a=[,,,,])[0]=b.getInt32(),a[1]=b.getInt32(),a[2]=b.getInt32(),a[3]=b.getInt32(),d.aes._expandKey(a,!1)},c.formatSeed=function(a){var b=d.util.createBuffer(a);return(a=[,,,,])[0]=b.getInt32(),a[1]=b.getInt32(),a[2]=b.getInt32(),a[3]=b.getInt32(),a},c.cipher=function(a,b){return d.aes._updateBlock(a,b,e,!1),f.putInt32(e[0]),f.putInt32(e[1]),f.putInt32(e[2]),f.putInt32(e[3]),f.getBytes()},c.increment=function(a){return++a[3],a},c.md=d.md.sha256;var h=g(),i=null,j=d.util.globalScope,k=j.crypto||j.msCrypto;if(k&&k.getRandomValues&&(i=function(a){return k.getRandomValues(a)}),d.options.usePureJavaScript||!d.util.isNodejs&&!i){if("u"<typeof window||window.document,h.collectInt(+new Date,32),"u">typeof navigator){var l="";for(var m in navigator)try{"string"==typeof navigator[m]&&(l+=navigator[m])}catch(a){}h.collect(l),l=null}b&&(b().mousemove(function(a){h.collectInt(a.clientX,16),h.collectInt(a.clientY,16)}),b().keypress(function(a){h.collectInt(a.charCode,8)}))}if(d.random)for(var m in h)d.random[m]=h[m];else d.random=h;d.random.createInstance=g,a.exports=d.random}("u">typeof jQuery?jQuery:null)}()},30322:(a,b,c)=>{"use strict";c.d(b,{P:()=>e});var d=c(32655);class e extends d.L{constructor(){super("azure")}isUserConfiguredBase(a){return super.isUserConfiguredBase(a)||!!a?.providerSpecificData?.azureEndpoint||!!process.env.AZURE_ENDPOINT}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.azureEndpoint||process.env.AZURE_ENDPOINT||"https://api.openai.com",f=d?.providerSpecificData?.apiVersion||process.env.AZURE_API_VERSION||"2024-10-01-preview",g=d?.providerSpecificData?.deployment||a||process.env.AZURE_DEPLOYMENT||"gpt-4",h=e.replace(/\/$/,"");return`${h}/openai/deployments/${g}/chat/completions?api-version=${f}`}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers},d=a?.apiKey||a?.accessToken||process.env.OPENAI_API_KEY;d&&(c["api-key"]=d);let e=a?.providerSpecificData?.organization||process.env.AZURE_ORGANIZATION;return e&&(c["OpenAI-Organization"]=e),b&&(c.Accept="text/event-stream"),c}transformRequest(a,b,c,d){return super.transformRequest(a,b,c,d)}}},30816:(a,b,c)=>{"use strict";c.d(b,{M:()=>function a(b){if(!b||"object"!=typeof b)return b;if(Array.isArray(b)){for(let c of b)a(c);return b}for(let a of d)if("string"==typeof b[a]){let c=Number(b[a]);Number.isNaN(c)||(b[a]=c)}for(let c of Object.values(b))c&&"object"==typeof c&&a(c);return b}}),c(11897),c(90242);let d=["minimum","maximum","exclusiveMinimum","exclusiveMaximum","minLength","maxLength","minItems","maxItems","minProperties","maxProperties","multipleOf"]},31629:(a,b,c)=>{"use strict";c(77598),c(17438),new TextEncoder,c(78116)},31825:(a,b,c)=>{"use strict";let d=c(34589),{kRetryHandlerDefaultRetry:e}=c(49176),{RequestRetryError:f}=c(61448),{isDisturbed:g,parseRangeHeader:h,wrapRequestBody:i}=c(84285);class j{constructor(){this.target=null}pause(){this.target?.pause()}resume(){this.target?.resume()}abort(a){this.target?.abort(a)}get paused(){return this.target?.paused??!1}get aborted(){return this.target?.aborted??!1}get reason(){return this.target?.reason??null}get rawHeaders(){return this.target?.rawHeaders??null}get rawTrailers(){return this.target?.rawTrailers??null}}class k{constructor(a,{dispatch:b,handler:c}){const{retryOptions:d,...f}=a,{retry:g,maxRetries:h,maxTimeout:l,minTimeout:m,timeoutFactor:n,methods:o,errorCodes:p,retryAfter:q,statusCodes:r,throwOnError:s}=d??{};this.error=null,this.dispatch=b,this.handler=c,this.opts={...f,body:i(a.body)},this.retryOpts={throwOnError:s??!0,retry:g??k[e],retryAfter:q??!0,maxTimeout:l??3e4,minTimeout:m??500,timeoutFactor:n??2,maxRetries:h??5,methods:o??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE","QUERY"],statusCodes:r??[500,502,503,504,429],errorCodes:p??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.headersSent=!1,this.start=0,this.end=null,this.etag=null,this.statusCode=null,this.headers=null,this.controllerProxy=new j}onResponseStartWithRetry(a,b,c,d,e){if(this.retryOpts.throwOnError)return void(!1===this.retryOpts.statusCodes.includes(b)?(this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,b,c,d)):this.error=e);if(g(this.opts.body)){this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,b,c,d);return}a.pause(),this.retryOpts.retry(e,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},(function(f){if(f){this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,b,c,d),a.resume();return}this.error=e,a.resume()}).bind(this))}onRequestStart(a,b){this.controllerProxy.target=a,this.headersSent||this.handler.onRequestStart?.(this.controllerProxy,b)}onRequestUpgrade(a,b,c,d){this.handler.onRequestUpgrade?.(this.controllerProxy,b,c,d)}static[e](a,{state:b,opts:c},d){let{statusCode:e,code:f,headers:g}=a,{method:h,retryOptions:i}=c,{maxRetries:j,minTimeout:k,maxTimeout:l,timeoutFactor:m,statusCodes:n,errorCodes:o,methods:p}=i,{counter:q}=b;if(f&&"UND_ERR_REQ_RETRY"!==f&&!o.includes(f)||Array.isArray(p)&&!p.includes(h)||null!=e&&Array.isArray(n)&&!n.includes(e)||q>j)return void d(a);let r=g?.["retry-after"];if(r){let a;r=Number.isNaN(r=Number(r))?isNaN(a=new Date(g["retry-after"]).getTime())?0:a-Date.now():1e3*r}setTimeout(()=>d(null),r>0?Math.min(r,l):Math.min(k*m**(q-1),l))}onResponseStart(a,b,c,e){if(this.error=null,this.retryCount+=1,this.statusCode=b,this.headers=c,b>=300){let d=new f("Request failed",b,{headers:c,data:{count:this.retryCount}});this.onResponseStartWithRetry(a,b,c,e,d);return}if(this.headersSent){if(206!==b&&(this.start>0||200!==b))throw new f("server does not support the range header and the payload was partially consumed",b,{headers:c,data:{count:this.retryCount}});let a=h(c["content-range"]);if(!a)throw new f("Content-Range mismatch",b,{headers:c,data:{count:this.retryCount}});if(null!=this.etag&&this.etag!==c.etag)throw new f("ETag mismatch",b,{headers:c,data:{count:this.retryCount}});let{start:e,size:g,end:i=g?g-1:null}=a;d(this.start===e,"content-range mismatch"),d(null==this.end||this.end===i,"content-range mismatch");return}if(null==this.end){if(206===b){let a=h(c["content-range"]);if(null==a){this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,b,c,e);return}let{start:f,size:g,end:i=g?g-1:null}=a;d(null!=f&&Number.isFinite(f),"content-range mismatch"),d(null!=i&&Number.isFinite(i),"invalid content-length"),this.start=f,this.end=i}if(null==this.end){let a=c["content-length"];this.end=null!=a?Number(a)-1:null}d(Number.isFinite(this.start)),d(null==this.end||Number.isFinite(this.end),"invalid content-length"),this.resume=!0,this.etag=null!=c.etag?c.etag:null,null!=this.etag&&"W"===this.etag[0]&&"/"===this.etag[1]&&(this.etag=null),this.headersSent=!0,this.handler.onResponseStart?.(this.controllerProxy,b,c,e)}else throw new f("Request failed",b,{headers:c,data:{count:this.retryCount}})}onResponseData(a,b){this.error||(this.start+=b.length,this.handler.onResponseData?.(this.controllerProxy,b))}onResponseEnd(a,b){if(this.error&&this.retryOpts.throwOnError)throw this.error;if(!this.error){if(null!=this.end&&Number.isFinite(this.end)&&this.start!==this.end+1)throw new f("Content-Range mismatch",this.statusCode,{headers:this.headers,data:{count:this.retryCount}});return this.retryCount=0,this.handler.onResponseEnd?.(this.controllerProxy,b)}this.retry()}retry(){if(0!==this.start){let a={range:`bytes=${this.start}-${this.end??""}`};null!=this.etag&&(a["if-match"]=this.etag),this.opts={...this.opts,headers:{...this.opts.headers,...a}}}try{this.retryCountCheckpoint=this.retryCount,this.dispatch(this.opts,this)}catch(a){this.handler.onResponseError?.(this.controllerProxy,a)}}onResponseError(a,b){a?.aborted||g(this.opts.body)?this.handler.onResponseError?.(this.controllerProxy,b):(this.retryCount-this.retryCountCheckpoint>0?this.retryCount=this.retryCountCheckpoint+(this.retryCount-this.retryCountCheckpoint):this.retryCount+=1,this.retryOpts.retry(b,{state:{counter:this.retryCount},opts:{retryOptions:this.retryOpts,...this.opts}},(function(a){a?this.handler?.onResponseError?.(this.controllerProxy,a):this.retry()}).bind(this)))}}a.exports=k},31881:(a,b,c)=>{var d,e=c(45654);c(33889),a.exports=e.log=e.log||{},e.log.levels=["none","error","warning","info","debug","verbose","max"];var f={},g=[],h=null;e.log.LEVEL_LOCKED=2,e.log.NO_LEVEL_CHECK=4,e.log.INTERPOLATE=8;for(var i=0;i<e.log.levels.length;++i){var j=e.log.levels[i];f[j]={index:i,name:j.toUpperCase()}}e.log.logMessage=function(a){for(var b=f[a.level].index,c=0;c<g.length;++c){var d=g[c];d.flags&e.log.NO_LEVEL_CHECK?d.f(a):b<=f[d.level].index&&d.f(d,a)}},e.log.prepareStandard=function(a){"standard"in a||(a.standard=f[a.level].name+" ["+a.category+"] "+a.message)},e.log.prepareFull=function(a){if(!("full"in a)){var b=[a.message];b=b.concat([]),a.full=e.util.format.apply(this,b)}},e.log.prepareStandardFull=function(a){"standardFull"in a||(e.log.prepareStandard(a),a.standardFull=a.standard)};for(var k=["error","warning","info","debug","verbose"],i=0;i<k.length;++i)!function(a){e.log[a]=function(b,c){var d=Array.prototype.slice.call(arguments).slice(2),f={timestamp:new Date,level:a,category:b,message:c,arguments:d};e.log.logMessage(f)}}(k[i]);if(e.log.makeLogger=function(a){var b={flags:0,f:a};return e.log.setLevel(b,"none"),b},e.log.setLevel=function(a,b){var c=!1;if(a&&!(a.flags&e.log.LEVEL_LOCKED)){for(var d=0;d<e.log.levels.length;++d)if(b==e.log.levels[d]){a.level=b,c=!0;break}}return c},e.log.lock=function(a,b){void 0===b||b?a.flags|=e.log.LEVEL_LOCKED:a.flags&=~e.log.LEVEL_LOCKED},e.log.addLogger=function(a){g.push(a)},"u">typeof console&&"log"in console){if(console.error&&console.warn&&console.info&&console.debug){var l={error:console.error,warning:console.warn,info:console.info,debug:console.debug,verbose:console.debug},m=function(a,b){e.log.prepareStandard(b);var c=l[b.level],d=[b.standard];d=d.concat(b.arguments.slice()),c.apply(console,d)};d=e.log.makeLogger(m)}else{var m=function(a,b){e.log.prepareStandardFull(b),console.log(b.standardFull)};d=e.log.makeLogger(m)}e.log.setLevel(d,"debug"),e.log.addLogger(d),h=d}else console={log:function(){}};if(null!==h&&"u">typeof window&&window.location){var n=new URL(window.location.href).searchParams;n.has("console.level")&&e.log.setLevel(h,n.get("console.level").slice(-1)[0]),n.has("console.lock")&&"true"==n.get("console.lock").slice(-1)[0]&&e.log.lock(h)}e.log.consoleLogger=h},32e3:(a,b,c)=>{var d,e,f,g=c(45654);a.exports=g.jsbn=g.jsbn||{};function h(a,b,c){this.data=[],null!=a&&("number"==typeof a?this.fromNumber(a,b,c):null==b&&"string"!=typeof a?this.fromString(a,256):this.fromString(a,b))}function i(){return new h(null)}function j(a,b,c,d,e,f){for(var g=16383&b,h=b>>14;--f>=0;){var i=16383&this.data[a],j=this.data[a++]>>14,k=h*i+j*g;e=((i=g*i+((16383&k)<<14)+c.data[d]+e)>>28)+(k>>14)+h*j,c.data[d++]=0xfffffff&i}return e}g.jsbn.BigInteger=h,"u"<typeof navigator?(h.prototype.am=j,d=28):"Microsoft Internet Explorer"==navigator.appName?(h.prototype.am=function(a,b,c,d,e,f){for(var g=32767&b,h=b>>15;--f>=0;){var i=32767&this.data[a],j=this.data[a++]>>15,k=h*i+j*g;e=((i=g*i+((32767&k)<<15)+c.data[d]+(0x3fffffff&e))>>>30)+(k>>>15)+h*j+(e>>>30),c.data[d++]=0x3fffffff&i}return e},d=30):"Netscape"!=navigator.appName?(h.prototype.am=function(a,b,c,d,e,f){for(;--f>=0;){var g=b*this.data[a++]+c.data[d]+e;e=Math.floor(g/0x4000000),c.data[d++]=0x3ffffff&g}return e},d=26):(h.prototype.am=j,d=28),h.prototype.DB=d,h.prototype.DM=(1<<d)-1,h.prototype.DV=1<<d,h.prototype.FV=0x10000000000000,h.prototype.F1=52-d,h.prototype.F2=2*d-52;var k=[];for(f=0,e=48;f<=9;++f)k[e++]=f;for(f=10,e=97;f<36;++f)k[e++]=f;for(f=10,e=65;f<36;++f)k[e++]=f;function l(a){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(a)}function m(a,b){var c=k[a.charCodeAt(b)];return null==c?-1:c}function n(a){var b=i();return b.fromInt(a),b}function o(a){var b,c=1;return 0!=(b=a>>>16)&&(a=b,c+=16),0!=(b=a>>8)&&(a=b,c+=8),0!=(b=a>>4)&&(a=b,c+=4),0!=(b=a>>2)&&(a=b,c+=2),0!=(b=a>>1)&&(a=b,c+=1),c}function p(a){this.m=a}function q(a){this.m=a,this.mp=a.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<<a.DB-15)-1,this.mt2=2*a.t}function r(a,b){return a&b}function s(a,b){return a|b}function t(a,b){return a^b}function u(a,b){return a&~b}function v(){}function w(a){return a}function x(a){this.r2=i(),this.q3=i(),h.ONE.dlShiftTo(2*a.t,this.r2),this.mu=this.r2.divide(a),this.m=a}p.prototype.convert=function(a){return a.s<0||a.compareTo(this.m)>=0?a.mod(this.m):a},p.prototype.revert=function(a){return a},p.prototype.reduce=function(a){a.divRemTo(this.m,null,a)},p.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c),this.reduce(c)},p.prototype.sqrTo=function(a,b){a.squareTo(b),this.reduce(b)},q.prototype.convert=function(a){var b=i();return a.abs().dlShiftTo(this.m.t,b),b.divRemTo(this.m,null,b),a.s<0&&b.compareTo(h.ZERO)>0&&this.m.subTo(b,b),b},q.prototype.revert=function(a){var b=i();return a.copyTo(b),this.reduce(b),b},q.prototype.reduce=function(a){for(;a.t<=this.mt2;)a.data[a.t++]=0;for(var b=0;b<this.m.t;++b){var c=32767&a.data[b],d=c*this.mpl+((c*this.mph+(a.data[b]>>15)*this.mpl&this.um)<<15)&a.DM;for(c=b+this.m.t,a.data[c]+=this.m.am(0,d,a,b,0,this.m.t);a.data[c]>=a.DV;)a.data[c]-=a.DV,a.data[++c]++}a.clamp(),a.drShiftTo(this.m.t,a),a.compareTo(this.m)>=0&&a.subTo(this.m,a)},q.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c),this.reduce(c)},q.prototype.sqrTo=function(a,b){a.squareTo(b),this.reduce(b)},h.prototype.copyTo=function(a){for(var b=this.t-1;b>=0;--b)a.data[b]=this.data[b];a.t=this.t,a.s=this.s},h.prototype.fromInt=function(a){this.t=1,this.s=a<0?-1:0,a>0?this.data[0]=a:a<-1?this.data[0]=a+this.DV:this.t=0},h.prototype.fromString=function(a,b){if(16==b)c=4;else if(8==b)c=3;else if(256==b)c=8;else if(2==b)c=1;else if(32==b)c=5;else{if(4!=b)return void this.fromRadix(a,b);c=2}this.t=0,this.s=0;for(var c,d=a.length,e=!1,f=0;--d>=0;){var g=8==c?255&a[d]:m(a,d);if(g<0){"-"==a.charAt(d)&&(e=!0);continue}e=!1,0==f?this.data[this.t++]=g:f+c>this.DB?(this.data[this.t-1]|=(g&(1<<this.DB-f)-1)<<f,this.data[this.t++]=g>>this.DB-f):this.data[this.t-1]|=g<<f,(f+=c)>=this.DB&&(f-=this.DB)}8==c&&(128&a[0])!=0&&(this.s=-1,f>0&&(this.data[this.t-1]|=(1<<this.DB-f)-1<<f)),this.clamp(),e&&h.ZERO.subTo(this,this)},h.prototype.clamp=function(){for(var a=this.s&this.DM;this.t>0&&this.data[this.t-1]==a;)--this.t},h.prototype.dlShiftTo=function(a,b){var c;for(c=this.t-1;c>=0;--c)b.data[c+a]=this.data[c];for(c=a-1;c>=0;--c)b.data[c]=0;b.t=this.t+a,b.s=this.s},h.prototype.drShiftTo=function(a,b){for(var c=a;c<this.t;++c)b.data[c-a]=this.data[c];b.t=Math.max(this.t-a,0),b.s=this.s},h.prototype.lShiftTo=function(a,b){var c,d=a%this.DB,e=this.DB-d,f=(1<<e)-1,g=Math.floor(a/this.DB),h=this.s<<d&this.DM;for(c=this.t-1;c>=0;--c)b.data[c+g+1]=this.data[c]>>e|h,h=(this.data[c]&f)<<d;for(c=g-1;c>=0;--c)b.data[c]=0;b.data[g]=h,b.t=this.t+g+1,b.s=this.s,b.clamp()},h.prototype.rShiftTo=function(a,b){b.s=this.s;var c=Math.floor(a/this.DB);if(c>=this.t){b.t=0;return}var d=a%this.DB,e=this.DB-d,f=(1<<d)-1;b.data[0]=this.data[c]>>d;for(var g=c+1;g<this.t;++g)b.data[g-c-1]|=(this.data[g]&f)<<e,b.data[g-c]=this.data[g]>>d;d>0&&(b.data[this.t-c-1]|=(this.s&f)<<e),b.t=this.t-c,b.clamp()},h.prototype.subTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]-a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d-=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d-=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d-=a.s}b.s=d<0?-1:0,d<-1?b.data[c++]=this.DV+d:d>0&&(b.data[c++]=d),b.t=c,b.clamp()},h.prototype.multiplyTo=function(a,b){var c=this.abs(),d=a.abs(),e=c.t;for(b.t=e+d.t;--e>=0;)b.data[e]=0;for(e=0;e<d.t;++e)b.data[e+c.t]=c.am(0,d.data[e],b,e,0,c.t);b.s=0,b.clamp(),this.s!=a.s&&h.ZERO.subTo(b,b)},h.prototype.squareTo=function(a){for(var b=this.abs(),c=a.t=2*b.t;--c>=0;)a.data[c]=0;for(c=0;c<b.t-1;++c){var d=b.am(c,b.data[c],a,2*c,0,1);(a.data[c+b.t]+=b.am(c+1,2*b.data[c],a,2*c+1,d,b.t-c-1))>=b.DV&&(a.data[c+b.t]-=b.DV,a.data[c+b.t+1]=1)}a.t>0&&(a.data[a.t-1]+=b.am(c,b.data[c],a,2*c,0,1)),a.s=0,a.clamp()},h.prototype.divRemTo=function(a,b,c){var d=a.abs();if(!(d.t<=0)){var e=this.abs();if(e.t<d.t){null!=b&&b.fromInt(0),null!=c&&this.copyTo(c);return}null==c&&(c=i());var f=i(),g=this.s,j=a.s,k=this.DB-o(d.data[d.t-1]);k>0?(d.lShiftTo(k,f),e.lShiftTo(k,c)):(d.copyTo(f),e.copyTo(c));var l=f.t,m=f.data[l-1];if(0!=m){var n=m*(1<<this.F1)+(l>1?f.data[l-2]>>this.F2:0),p=this.FV/n,q=(1<<this.F1)/n,r=1<<this.F2,s=c.t,t=s-l,u=null==b?i():b;for(f.dlShiftTo(t,u),c.compareTo(u)>=0&&(c.data[c.t++]=1,c.subTo(u,c)),h.ONE.dlShiftTo(l,u),u.subTo(f,f);f.t<l;)f.data[f.t++]=0;for(;--t>=0;){var v=c.data[--s]==m?this.DM:Math.floor(c.data[s]*p+(c.data[s-1]+r)*q);if((c.data[s]+=f.am(0,v,c,t,0,l))<v)for(f.dlShiftTo(t,u),c.subTo(u,c);c.data[s]<--v;)c.subTo(u,c)}null!=b&&(c.drShiftTo(l,b),g!=j&&h.ZERO.subTo(b,b)),c.t=l,c.clamp(),k>0&&c.rShiftTo(k,c),g<0&&h.ZERO.subTo(c,c)}}},h.prototype.invDigit=function(){if(this.t<1)return 0;var a=this.data[0];if((1&a)==0)return 0;var b=3&a;return(b=(b=(b=(b=b*(2-(15&a)*b)&15)*(2-(255&a)*b)&255)*(2-((65535&a)*b&65535))&65535)*(2-a*b%this.DV)%this.DV)>0?this.DV-b:-b},h.prototype.isEven=function(){return(this.t>0?1&this.data[0]:this.s)==0},h.prototype.exp=function(a,b){if(a>0xffffffff||a<1)return h.ONE;var c=i(),d=i(),e=b.convert(this),f=o(a)-1;for(e.copyTo(c);--f>=0;)if(b.sqrTo(c,d),(a&1<<f)>0)b.mulTo(d,e,c);else{var g=c;c=d,d=g}return b.revert(c)},h.prototype.toString=function(a){if(this.s<0)return"-"+this.negate().toString(a);if(16==a)b=4;else if(8==a)b=3;else if(2==a)b=1;else if(32==a)b=5;else{if(4!=a)return this.toRadix(a);b=2}var b,c,d=(1<<b)-1,e=!1,f="",g=this.t,h=this.DB-g*this.DB%b;if(g-- >0)for(h<this.DB&&(c=this.data[g]>>h)>0&&(e=!0,f=l(c));g>=0;)h<b?c=(this.data[g]&(1<<h)-1)<<b-h|this.data[--g]>>(h+=this.DB-b):(c=this.data[g]>>(h-=b)&d,h<=0&&(h+=this.DB,--g)),c>0&&(e=!0),e&&(f+=l(c));return e?f:"0"},h.prototype.negate=function(){var a=i();return h.ZERO.subTo(this,a),a},h.prototype.abs=function(){return this.s<0?this.negate():this},h.prototype.compareTo=function(a){var b=this.s-a.s;if(0!=b)return b;var c=this.t;if(0!=(b=c-a.t))return this.s<0?-b:b;for(;--c>=0;)if(0!=(b=this.data[c]-a.data[c]))return b;return 0},h.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+o(this.data[this.t-1]^this.s&this.DM)},h.prototype.mod=function(a){var b=i();return this.abs().divRemTo(a,null,b),this.s<0&&b.compareTo(h.ZERO)>0&&a.subTo(b,b),b},h.prototype.modPowInt=function(a,b){var c;return c=a<256||b.isEven()?new p(b):new q(b),this.exp(a,c)},h.ZERO=n(0),h.ONE=n(1),v.prototype.convert=w,v.prototype.revert=w,v.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c)},v.prototype.sqrTo=function(a,b){a.squareTo(b)},x.prototype.convert=function(a){if(a.s<0||a.t>2*this.m.t)return a.mod(this.m);if(0>a.compareTo(this.m))return a;var b=i();return a.copyTo(b),this.reduce(b),b},x.prototype.revert=function(a){return a},x.prototype.reduce=function(a){for(a.drShiftTo(this.m.t-1,this.r2),a.t>this.m.t+1&&(a.t=this.m.t+1,a.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);0>a.compareTo(this.r2);)a.dAddOffset(1,this.m.t+1);for(a.subTo(this.r2,a);a.compareTo(this.m)>=0;)a.subTo(this.m,a)},x.prototype.mulTo=function(a,b,c){a.multiplyTo(b,c),this.reduce(c)},x.prototype.sqrTo=function(a,b){a.squareTo(b),this.reduce(b)};var y=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],z=0x4000000/y[y.length-1];h.prototype.chunkSize=function(a){return Math.floor(Math.LN2*this.DB/Math.log(a))},h.prototype.toRadix=function(a){if(null==a&&(a=10),0==this.signum()||a<2||a>36)return"0";var b=this.chunkSize(a),c=Math.pow(a,b),d=n(c),e=i(),f=i(),g="";for(this.divRemTo(d,e,f);e.signum()>0;)g=(c+f.intValue()).toString(a).substr(1)+g,e.divRemTo(d,e,f);return f.intValue().toString(a)+g},h.prototype.fromRadix=function(a,b){this.fromInt(0),null==b&&(b=10);for(var c=this.chunkSize(b),d=Math.pow(b,c),e=!1,f=0,g=0,i=0;i<a.length;++i){var j=m(a,i);if(j<0){"-"==a.charAt(i)&&0==this.signum()&&(e=!0);continue}g=b*g+j,++f>=c&&(this.dMultiply(d),this.dAddOffset(g,0),f=0,g=0)}f>0&&(this.dMultiply(Math.pow(b,f)),this.dAddOffset(g,0)),e&&h.ZERO.subTo(this,this)},h.prototype.fromNumber=function(a,b,c){if("number"==typeof b)if(a<2)this.fromInt(1);else for(this.fromNumber(a,c),this.testBit(a-1)||this.bitwiseTo(h.ONE.shiftLeft(a-1),s,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(b);)this.dAddOffset(2,0),this.bitLength()>a&&this.subTo(h.ONE.shiftLeft(a-1),this);else{var d=[],e=7&a;d.length=(a>>3)+1,b.nextBytes(d),e>0?d[0]&=(1<<e)-1:d[0]=0,this.fromString(d,256)}},h.prototype.bitwiseTo=function(a,b,c){var d,e,f=Math.min(a.t,this.t);for(d=0;d<f;++d)c.data[d]=b(this.data[d],a.data[d]);if(a.t<this.t){for(e=a.s&this.DM,d=f;d<this.t;++d)c.data[d]=b(this.data[d],e);c.t=this.t}else{for(e=this.s&this.DM,d=f;d<a.t;++d)c.data[d]=b(e,a.data[d]);c.t=a.t}c.s=b(this.s,a.s),c.clamp()},h.prototype.changeBit=function(a,b){var c=h.ONE.shiftLeft(a);return this.bitwiseTo(c,b,c),c},h.prototype.addTo=function(a,b){for(var c=0,d=0,e=Math.min(a.t,this.t);c<e;)d+=this.data[c]+a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;if(a.t<this.t){for(d+=a.s;c<this.t;)d+=this.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=this.s}else{for(d+=this.s;c<a.t;)d+=a.data[c],b.data[c++]=d&this.DM,d>>=this.DB;d+=a.s}b.s=d<0?-1:0,d>0?b.data[c++]=d:d<-1&&(b.data[c++]=this.DV+d),b.t=c,b.clamp()},h.prototype.dMultiply=function(a){this.data[this.t]=this.am(0,a-1,this,0,0,this.t),++this.t,this.clamp()},h.prototype.dAddOffset=function(a,b){if(0!=a){for(;this.t<=b;)this.data[this.t++]=0;for(this.data[b]+=a;this.data[b]>=this.DV;)this.data[b]-=this.DV,++b>=this.t&&(this.data[this.t++]=0),++this.data[b]}},h.prototype.multiplyLowerTo=function(a,b,c){var d,e=Math.min(this.t+a.t,b);for(c.s=0,c.t=e;e>0;)c.data[--e]=0;for(d=c.t-this.t;e<d;++e)c.data[e+this.t]=this.am(0,a.data[e],c,e,0,this.t);for(d=Math.min(a.t,b);e<d;++e)this.am(0,a.data[e],c,e,0,b-e);c.clamp()},h.prototype.multiplyUpperTo=function(a,b,c){--b;var d=c.t=this.t+a.t-b;for(c.s=0;--d>=0;)c.data[d]=0;for(d=Math.max(b-this.t,0);d<a.t;++d)c.data[this.t+d-b]=this.am(b-d,a.data[d],c,0,0,this.t+d-b);c.clamp(),c.drShiftTo(1,c)},h.prototype.modInt=function(a){if(a<=0)return 0;var b=this.DV%a,c=this.s<0?a-1:0;if(this.t>0)if(0==b)c=this.data[0]%a;else for(var d=this.t-1;d>=0;--d)c=(b*c+this.data[d])%a;return c},h.prototype.millerRabin=function(a){var b,c=this.subtract(h.ONE),d=c.getLowestSetBit();if(d<=0)return!1;for(var e=c.shiftRight(d),f={nextBytes:function(a){for(var b=0;b<a.length;++b)a[b]=Math.floor(256*Math.random())}},g=0;g<a;++g){do b=new h(this.bitLength(),f);while(0>=b.compareTo(h.ONE)||b.compareTo(c)>=0);var i=b.modPow(e,this);if(0!=i.compareTo(h.ONE)&&0!=i.compareTo(c)){for(var j=1;j++<d&&0!=i.compareTo(c);)if(0==(i=i.modPowInt(2,this)).compareTo(h.ONE))return!1;if(0!=i.compareTo(c))return!1}}return!0},h.prototype.clone=function(){var a=i();return this.copyTo(a),a},h.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this.data[0]-this.DV;else if(0==this.t)return -1}else if(1==this.t)return this.data[0];else if(0==this.t)return 0;return(this.data[1]&(1<<32-this.DB)-1)<<this.DB|this.data[0]},h.prototype.byteValue=function(){return 0==this.t?this.s:this.data[0]<<24>>24},h.prototype.shortValue=function(){return 0==this.t?this.s:this.data[0]<<16>>16},h.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this.data[0]<=0?0:1},h.prototype.toByteArray=function(){var a=this.t,b=[];b[0]=this.s;var c,d=this.DB-a*this.DB%8,e=0;if(a-- >0)for(d<this.DB&&(c=this.data[a]>>d)!=(this.s&this.DM)>>d&&(b[e++]=c|this.s<<this.DB-d);a>=0;)d<8?c=(this.data[a]&(1<<d)-1)<<8-d|this.data[--a]>>(d+=this.DB-8):(c=this.data[a]>>(d-=8)&255,d<=0&&(d+=this.DB,--a)),(128&c)!=0&&(c|=-256),0==e&&(128&this.s)!=(128&c)&&++e,(e>0||c!=this.s)&&(b[e++]=c);return b},h.prototype.equals=function(a){return 0==this.compareTo(a)},h.prototype.min=function(a){return 0>this.compareTo(a)?this:a},h.prototype.max=function(a){return this.compareTo(a)>0?this:a},h.prototype.and=function(a){var b=i();return this.bitwiseTo(a,r,b),b},h.prototype.or=function(a){var b=i();return this.bitwiseTo(a,s,b),b},h.prototype.xor=function(a){var b=i();return this.bitwiseTo(a,t,b),b},h.prototype.andNot=function(a){var b=i();return this.bitwiseTo(a,u,b),b},h.prototype.not=function(){for(var a=i(),b=0;b<this.t;++b)a.data[b]=this.DM&~this.data[b];return a.t=this.t,a.s=~this.s,a},h.prototype.shiftLeft=function(a){var b=i();return a<0?this.rShiftTo(-a,b):this.lShiftTo(a,b),b},h.prototype.shiftRight=function(a){var b=i();return a<0?this.lShiftTo(-a,b):this.rShiftTo(a,b),b},h.prototype.getLowestSetBit=function(){for(var a=0;a<this.t;++a)if(0!=this.data[a])return a*this.DB+function(a){if(0==a)return -1;var b=0;return(65535&a)==0&&(a>>=16,b+=16),(255&a)==0&&(a>>=8,b+=8),(15&a)==0&&(a>>=4,b+=4),(3&a)==0&&(a>>=2,b+=2),(1&a)==0&&++b,b}(this.data[a]);return this.s<0?this.t*this.DB:-1},h.prototype.bitCount=function(){for(var a=0,b=this.s&this.DM,c=0;c<this.t;++c)a+=function(a){for(var b=0;0!=a;)a&=a-1,++b;return b}(this.data[c]^b);return a},h.prototype.testBit=function(a){var b=Math.floor(a/this.DB);return b>=this.t?0!=this.s:(this.data[b]&1<<a%this.DB)!=0},h.prototype.setBit=function(a){return this.changeBit(a,s)},h.prototype.clearBit=function(a){return this.changeBit(a,u)},h.prototype.flipBit=function(a){return this.changeBit(a,t)},h.prototype.add=function(a){var b=i();return this.addTo(a,b),b},h.prototype.subtract=function(a){var b=i();return this.subTo(a,b),b},h.prototype.multiply=function(a){var b=i();return this.multiplyTo(a,b),b},h.prototype.divide=function(a){var b=i();return this.divRemTo(a,b,null),b},h.prototype.remainder=function(a){var b=i();return this.divRemTo(a,null,b),b},h.prototype.divideAndRemainder=function(a){var b=i(),c=i();return this.divRemTo(a,b,c),[b,c]},h.prototype.modPow=function(a,b){var c,d,e=a.bitLength(),f=n(1);if(e<=0)return f;c=e<18?1:e<48?3:e<144?4:e<768?5:6,d=e<8?new p(b):b.isEven()?new x(b):new q(b);var g=[],h=3,j=c-1,k=(1<<c)-1;if(g[1]=d.convert(this),c>1){var l=i();for(d.sqrTo(g[1],l);h<=k;)g[h]=i(),d.mulTo(l,g[h-2],g[h]),h+=2}var m,r,s=a.t-1,t=!0,u=i();for(e=o(a.data[s])-1;s>=0;){for(e>=j?m=a.data[s]>>e-j&k:(m=(a.data[s]&(1<<e+1)-1)<<j-e,s>0&&(m|=a.data[s-1]>>this.DB+e-j)),h=c;(1&m)==0;)m>>=1,--h;if((e-=h)<0&&(e+=this.DB,--s),t)g[m].copyTo(f),t=!1;else{for(;h>1;)d.sqrTo(f,u),d.sqrTo(u,f),h-=2;h>0?d.sqrTo(f,u):(r=f,f=u,u=r),d.mulTo(u,g[m],f)}for(;s>=0&&(a.data[s]&1<<e)==0;)d.sqrTo(f,u),r=f,f=u,u=r,--e<0&&(e=this.DB-1,--s)}return d.revert(f)},h.prototype.modInverse=function(a){if(0==this.signum())return h.ZERO;var b=a.isEven();if(this.isEven()&&b||0==a.signum())return h.ZERO;for(var c=a.clone(),d=this.clone(),e=n(1),f=n(0),g=n(0),i=n(1);0!=c.signum();){for(;c.isEven();)c.rShiftTo(1,c),b?(e.isEven()&&f.isEven()||(e.addTo(this,e),f.subTo(a,f)),e.rShiftTo(1,e)):f.isEven()||f.subTo(a,f),f.rShiftTo(1,f);for(;d.isEven();)d.rShiftTo(1,d),b?(g.isEven()&&i.isEven()||(g.addTo(this,g),i.subTo(a,i)),g.rShiftTo(1,g)):i.isEven()||i.subTo(a,i),i.rShiftTo(1,i);c.compareTo(d)>=0?(c.subTo(d,c),b&&e.subTo(g,e),f.subTo(i,f)):(d.subTo(c,d),b&&g.subTo(e,g),i.subTo(f,i))}return 0!=d.compareTo(h.ONE)?h.ZERO:i.compareTo(a)>=0?i.subtract(a):0>i.signum()&&(i.addTo(a,i),0>i.signum())?i.add(a):i},h.prototype.pow=function(a){return this.exp(a,new v)},h.prototype.gcd=function(a){var b=this.s<0?this.negate():this.clone(),c=a.s<0?a.negate():a.clone();if(0>b.compareTo(c)){var d=b;b=c,c=d}var e=b.getLowestSetBit(),f=c.getLowestSetBit();if(f<0)return b;for(e<f&&(f=e),f>0&&(b.rShiftTo(f,b),c.rShiftTo(f,c));b.signum()>0;)(e=b.getLowestSetBit())>0&&b.rShiftTo(e,b),(e=c.getLowestSetBit())>0&&c.rShiftTo(e,c),b.compareTo(c)>=0?(b.subTo(c,b),b.rShiftTo(1,b)):(c.subTo(b,c),c.rShiftTo(1,c));return f>0&&c.lShiftTo(f,c),c},h.prototype.isProbablePrime=function(a){var b,c=this.abs();if(1==c.t&&c.data[0]<=y[y.length-1]){for(b=0;b<y.length;++b)if(c.data[0]==y[b])return!0;return!1}if(c.isEven())return!1;for(b=1;b<y.length;){for(var d=y[b],e=b+1;e<y.length&&d<z;)d*=y[e++];for(d=c.modInt(d);b<e;)if(d%y[b++]==0)return!1}return c.millerRabin(a)},h.prototype.square=function(){var a=i();return this.squareTo(a),a}},32264:(a,b,c)=>{"use strict";let{RequestAbortedError:d}=c(61448);class e{#G;#H=[];#I=5242880;#J=0;#e={};#K="";#L=!1;#M=!1;#N=!1;#O=!1;#B=null;#P=null;constructor(a,b,c=5242880){this.#G=a,this.#P=b,this.#I=c}addWaitingHandler(a){if(this.#O||this.#N)return!1;let b=this.#Q(a),c=b.controller;try{if(a.onRequestStart?.(c,null),c.aborted)return b.done=!0,!0;this.#M&&a.onResponseStart?.(c,this.#J,this.#e,this.#K)}catch{return b.done=!0,!0}return c.aborted||this.#H.push(b),!0}onRequestStart(a,b){this.#B=a,this.#G.onRequestStart?.(a,b)}onRequestUpgrade(a,b,c,d){this.#G.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,d){for(let e of(this.#M=!0,this.#J=b,this.#e=c,this.#K=d,this.#G.onResponseStart?.(a,b,c,d),this.#H)){let{handler:a,controller:f}=e;if(e.done||f.aborted){e.done=!0;continue}try{a.onResponseStart?.(f,b,c,d)}catch{}f.aborted&&(e.done=!0)}this.#R()}onResponseData(a,b){if(!this.#L&&!this.#O){for(let c of(this.#N=!0,this.#G.onResponseData?.(a,b),this.#H)){let{handler:a,controller:d}=c;if(c.done||d.aborted){c.done=!0;continue}if(d.paused){this.#S(c,b);continue}try{a.onResponseData?.(d,b)}catch{}d.aborted&&(c.done=!0,c.bufferedChunks=[],c.bufferedBytes=0)}this.#R()}}onResponseEnd(a,b){if(!this.#L&&!this.#O){for(let c of(this.#O=!0,this.#G.onResponseEnd?.(a,b),this.#H)){if(c.done||c.controller.aborted||(this.#T(c),c.done||c.controller.aborted)){c.done=!0;continue}if(c.controller.paused&&c.bufferedChunks.length>0){c.pendingTrailers=b;continue}try{c.handler.onResponseEnd?.(c.controller,b)}catch{}c.done=!0}this.#R(),this.#P?.()}}onResponseError(a,b){if(!this.#O){for(let c of(this.#L=!0,this.#O=!0,this.#G.onResponseError?.(a,b),this.#H))this.#U(c,b);this.#H=[],this.#P?.()}}#Q(a){let b={handler:a,controller:null,bufferedChunks:[],bufferedBytes:0,pendingTrailers:null,done:!1},c={aborted:!1,paused:!1,reason:null};return b.controller={resume:()=>{if(!c.aborted){if(c.paused=!1,this.#T(b),this.#O&&b.pendingTrailers&&0===b.bufferedChunks.length&&!c.paused&&!c.aborted){try{b.handler.onResponseEnd?.(b.controller,b.pendingTrailers)}catch{}b.pendingTrailers=null,b.done=!0}this.#R()}},pause:()=>{c.aborted||(c.paused=!0)},get paused(){return c.paused},get aborted(){return c.aborted},get reason(){return c.reason},abort:a=>{c.aborted=!0,c.reason=a??null,b.done=!0,b.pendingTrailers=null,b.bufferedChunks=[],b.bufferedBytes=0}},b}#S(a,b){if(a.done||a.controller.aborted){a.done=!0,a.bufferedChunks=[],a.bufferedBytes=0;return}let c=Buffer.from(b);if(a.bufferedChunks.push(c),a.bufferedBytes+=c.length,a.bufferedBytes>this.#I){let b=new d(`Deduplicated waiting handler exceeded maxBufferSize (${this.#I} bytes) while paused`);this.#U(a,b)}}#T(a){let{handler:b,controller:c}=a;for(;!a.done&&!c.aborted&&!c.paused&&a.bufferedChunks.length>0;){let d=a.bufferedChunks.shift();a.bufferedBytes-=d.length;try{b.onResponseData?.(c,d)}catch{}if(c.aborted){a.done=!0,a.pendingTrailers=null,a.bufferedChunks=[],a.bufferedBytes=0;break}}}#U(a,b){if(!a.done){a.done=!0,a.pendingTrailers=null,a.bufferedChunks=[],a.bufferedBytes=0;try{a.controller.abort(b),a.handler.onResponseError?.(a.controller,b)}catch{}}}#R(){this.#H=this.#H.filter(a=>!1===a.done)}}a.exports=e},32655:(a,b,c)=>{"use strict";c.d(b,{L:()=>s});var d=c(93048),e=c(38421),f=c(74570),g=c(22884),h=c(10793);let i=c(90053).rE||"0.0.0";var j=c(26762),k=c(77321),l=c(29137);let m={combined:!0,header:"Authorization",scheme:"bearer"},n={combined:!0,header:"x-api-key",scheme:"raw"},o=Object.fromEntries(Object.entries(e.xq).filter(([,a])=>a.auth).map(([a,b])=>[a,b.auth]));function p(a,b,c){a[b.header]="bearer"===b.scheme?`Bearer ${c}`:c}let q={kimiHeaders:a=>Object.assign(a,(0,h.VK)()),clineHeaders:(a,b)=>Object.assign(a,function(a,b={}){let c,d=(c=function(a){if("string"!=typeof a)return"";let b=a.trim();return b?b.startsWith("workos:")?b:`workos:${b}`:""}(a))?`Bearer ${c}`:"",e={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`Switchboard/${i}`,"X-PLATFORM":process.platform||"unknown","X-PLATFORM-VERSION":process.version||"unknown","X-CLIENT-TYPE":"switchboard","X-CLIENT-VERSION":i,"X-CORE-VERSION":i,"X-IS-MULTIROOT":"false",...b};return d&&(e.Authorization=d),e}(b.apiKey||b.accessToken)),kilocodeOrg:(a,b)=>{b.providerSpecificData?.orgId&&(a["X-Kilocode-OrganizationID"]=b.providerSpecificData.orgId)},claudeOverlay:a=>{}},r=Object.fromEntries(Object.entries(e.sr).filter(([,a])=>a.refresh).map(([a,b])=>{let c=b.tokenUrl,d=b.refresh.encoding,e=b.refresh.scope?{scope:b.refresh.scope}:{};return[a,{encoding:d,url:()=>c,params:c=>"gemini"===a?{client_id:c.config.clientId,client_secret:c.config.clientSecret,...e}:{client_id:b.clientId,...e}}]}));class s extends d.Hv{constructor(a){super(a,e.xq[a]||e.xq.openai)}transformRequest(a,b,c,e){super.transformRequest(a,b,c,e);let f=this.applyJsonSchemaFallback(b);return f&&"object"==typeof f&&(this.config.quirks?.dropClientMetadata&&delete f.client_metadata,(0,l.c)(this.provider,a,f),c&&Array.isArray(f.messages)&&!f.stream_options&&(f.stream_options={include_usage:!0}),(0,d._2)(this.config)?delete f.stream:c&&!0!==f.stream&&(f.stream=!0)),(0,k.Z)({provider:this.provider,model:a,body:f})}applyJsonSchemaFallback(a){if(!this.provider?.startsWith?.("openai-compatible-"))return a;let b=a?.response_format;if(b?.type!=="json_schema"||!b.json_schema?.schema)return a;let c=JSON.stringify(b.json_schema.schema,null,2),d=`You must respond with valid JSON that strictly follows this JSON schema:
|
|
121
|
+
\`\`\`json
|
|
122
|
+
${c}
|
|
123
|
+
\`\`\`
|
|
124
|
+
Respond ONLY with the JSON object, no other text.`,e=Array.isArray(a.messages)?a.messages.map(a=>({...a})):[],f=e.find(a=>"system"===a.role);return f?"string"==typeof f.content?f.content=`${f.content}
|
|
125
|
+
|
|
126
|
+
${d}`:Array.isArray(f.content)&&f.content.push({type:"text",text:`
|
|
127
|
+
|
|
128
|
+
${d}`}):e.unshift({role:"system",content:d}),{...a,messages:e,response_format:{type:"json_object"}}}buildUrl(a,b,c=0,d=null){let e=d?.runtimeTransport;if(e?.baseUrl)return e.urlSuffix?`${e.baseUrl}${e.urlSuffix}`:e.baseUrl;if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||f.Es).replace(/\/$/,""),b="responses"===(0,g.jD)(this.provider,d)?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||f.ky).replace(/\/$/,"");return`${a}/messages`}if("gemini"===this.config.format)return`${this.config.baseUrl}/${a}:${b?"streamGenerateContent?alt=sse":"generateContent"}`;if(this.config.urlSuffix)return`${this.config.baseUrl}${this.config.urlSuffix}`;let h=this.config.baseUrl;if(h?.includes("{accountId}")){let a=d?.providerSpecificData?.accountId;if(!a)throw Error(`${this.provider} requires accountId in providerSpecificData`);return h.replace("{accountId}",a)}return h}resolveAuthDescriptor(){return this.provider?.startsWith?.("anthropic-compatible-")?{apiKey:{header:"x-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"},anthropicVersion:!0}:this.config?.format==="claude"?{...n,anthropicVersion:!0}:m}buildHeaders(a,b=!0){let c=a?.runtimeTransport,d={"Content-Type":"application/json",...c?c.headers:this.config.headers},e=c?.auth||o[this.provider]||this.resolveAuthDescriptor();for(let b of e.hooks||[])q[b]?.(d,a);if(!function(a,b,c){if(b.combined){p(a,b,c.apiKey||c.accessToken),b.anthropicVersion&&!a["anthropic-version"]&&(a["anthropic-version"]=f.b8);return}c.apiKey?p(a,b.apiKey,c.apiKey):c.accessToken&&p(a,b.oauth,c.accessToken),b.anthropicVersion&&!a["anthropic-version"]&&(a["anthropic-version"]=f.b8)}(d,e,a),this.provider?.startsWith?.("anthropic-compatible-")){let b=a?.providerSpecificData?.baseUrl||"";if(!(""===b||b.includes("api.anthropic.com"))){for(let b of(a.apiKey&&!d.Authorization&&(d.Authorization=`Bearer ${a.apiKey}`),delete d["anthropic-dangerous-direct-browser-access"],delete d["Anthropic-Dangerous-Direct-Browser-Access"],delete d["x-app"],delete d["X-App"],["anthropic-beta","Anthropic-Beta"]))if(d[b]){let a=d[b].split(",").map(a=>a.trim()).filter(a=>a&&"claude-code-20250219"!==a).join(",");a?d[b]=a:delete d[b]}}}return b&&(d.Accept="text/event-stream"),d}refreshFromGrant(a,b){let c=r[this.provider],d={grant_type:"refresh_token",refresh_token:a.refreshToken,...c.params(this)};return"json"===c.encoding?this.refreshWithJSON(c.url(),d,b):this.refreshWithForm(c.url(),d,b)}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;let d={claude:()=>this.refreshFromGrant(a,c),codex:()=>this.refreshFromGrant(a,c),qwen:()=>this.refreshWithForm(h.NA.qwen.token,{grant_type:"refresh_token",refresh_token:a.refreshToken,client_id:e.xq.qwen.clientId},c),iflow:()=>this.refreshIflow(a.refreshToken,c),gemini:()=>this.refreshFromGrant(a,c),kiro:()=>this.refreshKiro(a.refreshToken,c),cline:()=>this.refreshCline(a.refreshToken,c),clinepass:()=>this.refreshCline(a.refreshToken,c),"kimi-coding":()=>this.refreshKimiCoding(a.refreshToken,c),kilocode:()=>this.refreshKilocode(a.refreshToken,c)}[this.provider];if(!d)return null;try{let a=await d();return a&&b?.info?.("TOKEN",`${this.provider} refreshed`),a}catch(a){return b?.error?.("TOKEN",`${this.provider} refresh error: ${a.message}`),null}}async refreshWithJSON(a,b,c=null){let d=await (0,j.Fm)(a,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshWithForm(a,b,c=null){let d=await (0,j.Fm)(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(b)},c);if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,refreshToken:e.refresh_token||b.refresh_token,expiresIn:e.expires_in}}async refreshIflow(a,b=null){let c=btoa(`${e.xq.iflow.clientId}:${e.xq.iflow.clientSecret}`),d=await (0,j.Fm)(h.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:e.xq.iflow.clientId,client_secret:e.xq.iflow.clientSecret})},b);if(!d.ok)return null;let f=await d.json();return{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}async refreshKiro(a,b=null){let c=await (0,j.Fm)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},b);if(!c.ok)return null;let d=await c.json();return{accessToken:d.accessToken,refreshToken:d.refreshToken||a,expiresIn:d.expiresIn}}async refreshCline(a,b=null){let c=await (0,j.Fm)(e.xq.cline.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})},b);if(!c.ok)return null;let d=await c.json(),f=d?.data||d,g=f?.expiresAt,h=g?Math.max(1,Math.floor((new Date(g).getTime()-Date.now())/1e3)):void 0,i=f?.accessToken;return i&&!i.startsWith("workos:")&&(i=`workos:${i}`),{accessToken:i,refreshToken:f?.refreshToken||a,expiresIn:h}}async refreshKimiCoding(a,b=null){let c=(0,h.VK)(),d=await (0,j.Fm)(e.xq["kimi-coding"].refreshUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...c},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:e.xq["kimi-coding"].clientId})},b);if(!d.ok)return null;let f=await d.json();return{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}async refreshKilocode(a,b=null){return null}}},32984:(a,b,c)=>{"use strict";let d=c(34589),{types:e,inspect:f}=c(57975),{markAsUncloneable:g}=c(75919),h=Function.call.bind(Function.prototype[Symbol.hasInstance]),i={converters:{},util:{},errors:{},is:{}};i.errors.exception=function(a){return TypeError(`${a.header}: ${a.message}`)},i.errors.conversionFailed=function(a){let b=1===a.types.length?"":" one of",c=`${a.argument} could not be converted to${b}: ${a.types.join(", ")}.`;return i.errors.exception({header:a.prefix,message:c})},i.errors.invalidArgument=function(a){return i.errors.exception({header:a.prefix,message:`"${a.value}" is an invalid ${a.type}.`})},i.brandCheck=function(a,b){if(!h(b,a)){let a=TypeError("Illegal invocation");throw a.code="ERR_INVALID_THIS",a}},i.brandCheckMultiple=function(a){let b=a.map(a=>i.util.MakeTypeAssertion(a));return a=>{if(b.every(b=>!b(a))){let a=TypeError("Illegal invocation");throw a.code="ERR_INVALID_THIS",a}}},i.argumentLengthCheck=function({length:a},b,c){if(a<b)throw i.errors.exception({message:`${b} argument${1!==b?"s":""} required, but${a?" only":""} ${a} found.`,header:c})},i.illegalConstructor=function(){throw i.errors.exception({header:"TypeError",message:"Illegal constructor"})},i.util.MakeTypeAssertion=function(a){return b=>h(a,b)},i.util.Type=function(a){switch(typeof a){case"undefined":return 1;case"boolean":return 2;case"string":return 3;case"symbol":return 4;case"number":return 5;case"bigint":return 6;case"function":case"object":if(null===a)return 7;return 8}},i.util.Types={UNDEFINED:1,BOOLEAN:2,STRING:3,SYMBOL:4,NUMBER:5,BIGINT:6,NULL:7,OBJECT:8},i.util.TypeValueToString=function(a){switch(i.util.Type(a)){case 1:return"Undefined";case 2:return"Boolean";case 3:return"String";case 4:return"Symbol";case 5:return"Number";case 6:return"BigInt";case 7:return"Null";case 8:return"Object"}},i.util.markAsUncloneable=g,i.util.ConvertToInt=function(a,b,c,d){let e,f;64===b?(e=0x1fffffffffffff,f="unsigned"===c?0:-0x1fffffffffffff):"unsigned"===c?(f=0,e=Math.pow(2,b)-1):(f=-Math.pow(2,b-1),e=Math.pow(2,b-1)-1);let g=Number(a);if(0===g&&(g=0),i.util.HasFlag(d,i.attributes.EnforceRange)){if(Number.isNaN(g)||g===1/0||g===-1/0)throw i.errors.exception({header:"Integer conversion",message:`Could not convert ${i.util.Stringify(a)} to an integer.`});if((g=i.util.IntegerPart(g))<f||g>e)throw i.errors.exception({header:"Integer conversion",message:`Value must be between ${f}-${e}, got ${g}.`});return g}return!Number.isNaN(g)&&i.util.HasFlag(d,i.attributes.Clamp)?g=Math.floor(g=Math.min(Math.max(g,f),e))%2==0?Math.floor(g):Math.ceil(g):Number.isNaN(g)||0===g&&Object.is(0,g)||g===1/0||g===-1/0?0:(g=i.util.IntegerPart(g)%Math.pow(2,b),"signed"===c&&g>=Math.pow(2,b-1))?g-Math.pow(2,b):g},i.util.IntegerPart=function(a){let b=Math.floor(Math.abs(a));return a<0?-1*b:b},i.util.Stringify=function(a){switch(i.util.Type(a)){case 4:return`Symbol(${a.description})`;case 8:return f(a);case 3:return`"${a}"`;case 6:return`${a}n`;default:return`${a}`}},i.util.IsResizableArrayBuffer=function(a){if(e.isArrayBuffer(a))return a.resizable;if(e.isSharedArrayBuffer(a))return a.growable;throw i.errors.exception({header:"IsResizableArrayBuffer",message:`"${i.util.Stringify(a)}" is not an array buffer.`})},i.util.HasFlag=function(a,b){return"number"==typeof a&&(a&b)===b},i.sequenceConverter=function(a){return(b,c,d,e)=>{if(8!==i.util.Type(b))throw i.errors.exception({header:c,message:`${d} (${i.util.Stringify(b)}) is not iterable.`});let f="function"==typeof e?e():b?.[Symbol.iterator]?.(),g=[],h=0;if(void 0===f||"function"!=typeof f.next)throw i.errors.exception({header:c,message:`${d} is not iterable.`});for(;;){let{done:b,value:e}=f.next();if(b)break;g.push(a(e,c,`${d}[${h++}]`))}return g}},i.recordConverter=function(a,b){return(c,d,f)=>{if(8!==i.util.Type(c))throw i.errors.exception({header:d,message:`${f} ("${i.util.TypeValueToString(c)}") is not an Object.`});let g={};if(!e.isProxy(c)){for(let e of[...Object.getOwnPropertyNames(c),...Object.getOwnPropertySymbols(c)]){let h=i.util.Stringify(e),j=a(e,d,`Key ${h} in ${f}`),k=b(c[e],d,`${f}[${h}]`);g[j]=k}return g}for(let e of Reflect.ownKeys(c)){let h=Reflect.getOwnPropertyDescriptor(c,e);if(h?.enumerable){let h=a(e,d,f),i=b(c[e],d,f);g[h]=i}}return g}},i.interfaceConverter=function(a,b){return(c,d,e)=>{if(!a(c))throw i.errors.exception({header:d,message:`Expected ${e} ("${i.util.Stringify(c)}") to be an instance of ${b}.`});return c}},i.dictionaryConverter=function(a){return a.sort((a,b)=>(a.key>b.key)-(a.key<b.key)),(b,c,d)=>{let e={};if(null!=b&&8!==i.util.Type(b))throw i.errors.exception({header:c,message:`Expected ${b} to be one of: Null, Undefined, Object.`});for(let f of a){let{key:a,defaultValue:g,required:h,converter:j}=f;if(!0===h&&(null==b||!Object.hasOwn(b,a)))throw i.errors.exception({header:c,message:`Missing required key "${a}".`});let k=b?.[a],l=void 0!==g;if(l&&void 0===k&&(k=g()),h||l||void 0!==k){if(k=j(k,c,`${d}.${a}`),f.allowedValues&&!f.allowedValues.includes(k))throw i.errors.exception({header:c,message:`${k} is not an accepted type. Expected one of ${f.allowedValues.join(", ")}.`});e[a]=k}}return e}},i.nullableConverter=function(a){return(b,c,d)=>null===b?b:a(b,c,d)},i.is.USVString=function(a){return"string"==typeof a&&a.isWellFormed()},i.is.ReadableStream=i.util.MakeTypeAssertion(ReadableStream),i.is.Blob=i.util.MakeTypeAssertion(Blob),i.is.URLSearchParams=i.util.MakeTypeAssertion(URLSearchParams),i.is.File=i.util.MakeTypeAssertion(File),i.is.URL=i.util.MakeTypeAssertion(URL),i.is.AbortSignal=i.util.MakeTypeAssertion(AbortSignal),i.is.MessagePort=i.util.MakeTypeAssertion(MessagePort),i.is.BufferSource=function(a){return e.isArrayBuffer(a)||ArrayBuffer.isView(a)&&e.isArrayBuffer(a.buffer)},i.util.getCopyOfBytesHeldByBufferSource=function(a){let b=a,c=0,f=0;if(e.isTypedArray(a)||e.isDataView(a)?(b=a.buffer,c=a.byteOffset):d(e.isAnyArrayBuffer(a)),f=a.byteLength,b.detached)return new Uint8Array(0);let g=new Uint8Array(f),h=new Uint8Array(b,c,f);return g.set(h),g},i.converters.DOMString=function(a,b,c,d){if(null===a&&i.util.HasFlag(d,i.attributes.LegacyNullToEmptyString))return"";if("symbol"==typeof a)throw i.errors.exception({header:b,message:`${c} is a symbol, which cannot be converted to a DOMString.`});return String(a)},i.converters.ByteString=function(a,b,c){if("symbol"==typeof a)throw i.errors.exception({header:b,message:`${c} is a symbol, which cannot be converted to a ByteString.`});let d=String(a);for(let a=0;a<d.length;a++)if(d.charCodeAt(a)>255)throw TypeError(`Cannot convert argument to a ByteString because the character at index ${a} has a value of ${d.charCodeAt(a)} which is greater than 255.`);return d},i.converters.USVString=function(a){return"string"==typeof a?a.toWellFormed():`${a}`.toWellFormed()},i.converters.boolean=function(a){return!!a},i.converters.any=function(a){return a},i.converters["long long"]=function(a,b,c){return i.util.ConvertToInt(a,64,"signed",0,b,c)},i.converters["unsigned long long"]=function(a,b,c){return i.util.ConvertToInt(a,64,"unsigned",0,b,c)},i.converters["unsigned long"]=function(a,b,c){return i.util.ConvertToInt(a,32,"unsigned",0,b,c)},i.converters["unsigned short"]=function(a,b,c,d){return i.util.ConvertToInt(a,16,"unsigned",d,b,c)},i.converters.ArrayBuffer=function(a,b,c,d){if(8!==i.util.Type(a)||!e.isArrayBuffer(a))throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["ArrayBuffer"]});if(!i.util.HasFlag(d,i.attributes.AllowResizable)&&i.util.IsResizableArrayBuffer(a))throw i.errors.exception({header:b,message:`${c} cannot be a resizable ArrayBuffer.`});return a},i.converters.SharedArrayBuffer=function(a,b,c,d){if(8!==i.util.Type(a)||!e.isSharedArrayBuffer(a))throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["SharedArrayBuffer"]});if(!i.util.HasFlag(d,i.attributes.AllowResizable)&&i.util.IsResizableArrayBuffer(a))throw i.errors.exception({header:b,message:`${c} cannot be a resizable SharedArrayBuffer.`});return a},i.converters.TypedArray=function(a,b,c,d,f){if(8!==i.util.Type(a)||!e.isTypedArray(a)||a.constructor.name!==b.name)throw i.errors.conversionFailed({prefix:c,argument:`${d} ("${i.util.Stringify(a)}")`,types:[b.name]});if(!i.util.HasFlag(f,i.attributes.AllowShared)&&e.isSharedArrayBuffer(a.buffer))throw i.errors.exception({header:c,message:`${d} cannot be a view on a shared array buffer.`});if(!i.util.HasFlag(f,i.attributes.AllowResizable)&&i.util.IsResizableArrayBuffer(a.buffer))throw i.errors.exception({header:c,message:`${d} cannot be a view on a resizable array buffer.`});return a},i.converters.DataView=function(a,b,c,d){if(8!==i.util.Type(a)||!e.isDataView(a))throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["DataView"]});if(!i.util.HasFlag(d,i.attributes.AllowShared)&&e.isSharedArrayBuffer(a.buffer))throw i.errors.exception({header:b,message:`${c} cannot be a view on a shared array buffer.`});if(!i.util.HasFlag(d,i.attributes.AllowResizable)&&i.util.IsResizableArrayBuffer(a.buffer))throw i.errors.exception({header:b,message:`${c} cannot be a view on a resizable array buffer.`});return a},i.converters.ArrayBufferView=function(a,b,c,d){if(8!==i.util.Type(a)||!e.isArrayBufferView(a))throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["ArrayBufferView"]});if(!i.util.HasFlag(d,i.attributes.AllowShared)&&e.isSharedArrayBuffer(a.buffer))throw i.errors.exception({header:b,message:`${c} cannot be a view on a shared array buffer.`});if(!i.util.HasFlag(d,i.attributes.AllowResizable)&&i.util.IsResizableArrayBuffer(a.buffer))throw i.errors.exception({header:b,message:`${c} cannot be a view on a resizable array buffer.`});return a},i.converters.BufferSource=function(a,b,c,d){if(e.isArrayBuffer(a))return i.converters.ArrayBuffer(a,b,c,d);if(e.isArrayBufferView(a))return d&=~i.attributes.AllowShared,i.converters.ArrayBufferView(a,b,c,d);if(e.isSharedArrayBuffer(a))throw i.errors.exception({header:b,message:`${c} cannot be a SharedArrayBuffer.`});throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["ArrayBuffer","ArrayBufferView"]})},i.converters.AllowSharedBufferSource=function(a,b,c,d){if(e.isArrayBuffer(a))return i.converters.ArrayBuffer(a,b,c,d);if(e.isSharedArrayBuffer(a))return i.converters.SharedArrayBuffer(a,b,c,d);if(e.isArrayBufferView(a))return d|=i.attributes.AllowShared,i.converters.ArrayBufferView(a,b,c,d);throw i.errors.conversionFailed({prefix:b,argument:`${c} ("${i.util.Stringify(a)}")`,types:["ArrayBuffer","SharedArrayBuffer","ArrayBufferView"]})},i.converters["sequence<ByteString>"]=i.sequenceConverter(i.converters.ByteString),i.converters["sequence<sequence<ByteString>>"]=i.sequenceConverter(i.converters["sequence<ByteString>"]),i.converters["record<ByteString, ByteString>"]=i.recordConverter(i.converters.ByteString,i.converters.ByteString),i.converters.Blob=i.interfaceConverter(i.is.Blob,"Blob"),i.converters.AbortSignal=i.interfaceConverter(i.is.AbortSignal,"AbortSignal"),i.converters.EventHandlerNonNull=function(a){return 8!==i.util.Type(a)?null:"function"==typeof a?a:()=>{}},i.attributes={Clamp:1,EnforceRange:2,AllowShared:4,AllowResizable:8,LegacyNullToEmptyString:16},a.exports={webidl:i}},33113:(a,b,c)=>{"use strict";c.d(b,{DH:()=>v});let d=(()=>{let a=new Int16Array(128).fill(-1);for(let b=0;b<64;b++)a["ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".charCodeAt(b)]="_doRTgHZBKcGVjlvpC,@aFSx#DPuNJme&i*MzLOEn)sUrthbf%Y^w.(kIQyXqWA!".charCodeAt(b);return a[61]=36,a})();var e=c(55511),f=c(27137),g=c(79401);function h(a){return e.createHash("md5").update(a).digest("hex")}function i(a,b,c){var d;let i,j;if(!c?.userId)throw Error("cosy: user id is empty");if(!c?.authToken)throw Error("cosy: auth token is empty");let k=Buffer.isBuffer(a)?a:"string"==typeof a?Buffer.from(a,"latin1"):Buffer.from(a||[]),{cosyKey:l,info:m}=(d={uid:c.userId,security_oauth_token:c.authToken,name:c.name||"",aid:"",email:c.email||""},i=(0,f.A)().slice(0,16),j=function(a,b){var c;let d,f,g=Buffer.from(b,"utf8");if(16!==g.length)throw Error(`aes key must be 16 bytes, got ${g.length}`);let h=g.subarray(0,16),i=e.createCipheriv("aes-128-cbc",g,h);i.setAutoPadding(!1);let j=(d=16-(c=Buffer.from(a,"utf8")).length%16,f=Buffer.alloc(c.length+d,d),c.copy(f,0),f);return Buffer.concat([i.update(j),i.final()]).toString("base64")}(JSON.stringify(d),i),{cosyKey:e.publicEncrypt({key:g.pr,padding:e.constants.RSA_PKCS1_PADDING},Buffer.from(i,"utf8")).toString("base64"),info:j}),n=String(Math.floor(Date.now()/1e3)),o=JSON.stringify({version:"v1",requestId:(0,f.A)(),info:m,cosyVersion:g.cT,ideVersion:""}),p=Buffer.from(o,"utf8").toString("base64"),q=function(a){let b;try{b=new URL(a).pathname||""}catch{return""}return b.startsWith("/algo")?b.slice(5):b}(b),r=`${p}
|
|
129
|
+
${l}
|
|
130
|
+
${n}
|
|
131
|
+
${k.toString("latin1")}
|
|
132
|
+
${q}`,s=h(Buffer.from(r,"latin1")),t=c.machineId||(0,f.A)(),u=h(k),v=String(k.length);return{Authorization:`Bearer COSY.${p}.${s}`,"Cosy-Key":l,"Cosy-User":c.userId,"Cosy-Date":n,"Cosy-Version":g.cT,"Cosy-Machineid":t,"Cosy-Machinetoken":t,"Cosy-Machinetype":g.RB,"Cosy-Machineos":g.pM,"Cosy-Clienttype":g.Ty,"Cosy-Clientip":"127.0.0.1","Cosy-Bodyhash":u,"Cosy-Bodylength":v,"Cosy-Sigpath":q,"Cosy-Data-Policy":g.qk,"Cosy-Organization-Id":"","Cosy-Organization-Tags":"","Login-Version":g.xG,"X-Request-Id":(0,f.A)()}}var j=c(93048),k=c(38421),l=c(26762),m=c(19016),n=c(82689);let o=new Map,p=new Map;async function q(a,b,c=null){let d,e,f={userId:(e=a?.providerSpecificData||{}).userId,authToken:a.accessToken,name:a.displayName||"",email:a.email||"",machineId:e.machineId||""};if(!f.userId||!f.authToken)return null;let h={Accept:"application/json","Accept-Encoding":"identity",...i(Buffer.alloc(0),g.t6,f)},j=new AbortController,k=null,m=null;try{k=setTimeout(()=>j.abort("timeout"),15e3),b&&"function"==typeof b.addEventListener&&(b.aborted?j.abort(b.reason):(m=()=>j.abort(b.reason),b.addEventListener("abort",m))),d=await (0,l.Fm)(g.t6,{method:"GET",headers:h,signal:j.signal},c)}finally{k&&clearTimeout(k),b&&m&&b.removeEventListener("abort",m)}if(!d.ok)return null;let n=await d.json().catch(()=>null);if(!n||!Array.isArray(n.chat))return null;let o=[],p=new Map;for(let a of n.chat){if(!a||"object"!=typeof a)continue;let b=a.key;if(!b||(p.set(b,a),!1===a.enable))continue;let c=a.display_name||b,d=Number(a.max_input_tokens)||131072;o.push({id:b,name:`${c}`,contextLength:d,isVL:!!a.is_vl,isReasoning:!!a.is_reasoning,maxOutputTokens:Number(a.max_output_tokens)||0,description:a.description||""})}return{models:o,rawConfigs:p}}async function r(a,b,c={}){let d=await s(a,c);if(!d)return null;let e=d.rawConfigs.get(b);return e?{...e,key:b}:null}async function s(a,b={}){let c;if(!a?.accessToken||!(a.providerSpecificData||{}).userId)return null;let d=(c=(a?.providerSpecificData||{}).userId||a?.refreshToken||a?.accessToken||"anonymous",(0,e.createHash)("sha256").update(`qoder:${c}`).digest("hex")),f=Date.now();if(!b.forceRefresh){let a=o.get(d);if(a&&a.expiresAt>f)return a}let g=p.get(d);if(g&&!b.forceRefresh)return g;let h=(async()=>{let c=await q(a,b.signal,b.proxyOptions);if(!c)return null;let e={expiresAt:Date.now()+36e5,models:c.models,rawConfigs:c.rawConfigs,fetched:!0};return o.set(d,e),e})();p.set(d,h);try{return await h}finally{p.get(d)===h&&p.delete(d)}}function t(a,b){return a&&a.length>b?`${a.slice(0,b)}...`:a||""}async function u({model:a,body:b,credentials:c,log:d,proxyOptions:g,signal:h}){let i=String(a||"").replace(/^qoder\//,""),j=await r(c,i,{log:d,proxyOptions:g,signal:h});if(!j){let a=await s(c,{forceRefresh:!0,log:d,proxyOptions:g,signal:h}),b=a?.rawConfigs.get(i);if(!b)throw Error(`qoder: model_config for "${i}" not yet known (run a model list fetch or check upstream connectivity)`);j={...b,key:i}}let{messages:k,systemText:l}=function(a){if(!Array.isArray(a)||0===a.length)return{messages:[],systemText:""};let b=[],c=[];for(let d of a){if(!d||"object"!=typeof d)continue;let a=function(a){if("string"==typeof a)return a;if(null==a)return"";if(Array.isArray(a)){let b=[];for(let c of a)c&&"object"==typeof c&&("text"===c.type&&"string"==typeof c.text?b.push(c.text):"string"==typeof c.text&&b.push(c.text));return b.join("\n")}return String(a)}(d.content);if("system"===d.role){a&&b.push(a);continue}let e={...d};e.content=a,c.push(e)}return{messages:c,systemText:b.join("\n\n")}}(b.messages||[]),m=b.tools,n=!!j.is_reasoning,o=Number(j.max_output_tokens)||0,p=32768;o>0&&(p=o),"number"==typeof b.max_tokens&&b.max_tokens>0&&b.max_tokens<p&&(p=b.max_tokens),"number"==typeof b.max_completion_tokens&&b.max_completion_tokens>0&&b.max_completion_tokens<p&&(p=b.max_completion_tokens);let q=function(a){for(let b=a.length-1;b>=0;b--){let c=a[b];if(c?.role==="user"&&"string"==typeof c.content)return c.content}return""}(k),v=function(a,...b){let c=(0,e.createHash)("sha256");for(let d of(c.update(a),b))c.update("\0"),c.update(String(d??""));return c.digest("hex").slice(0,16)}("qoder-session",(c.providerSpecificData||{}).userId,i),w=function(a,b,c,d){let f=(0,e.createHash)("sha256");for(let c of(f.update("qoder-record\0"),f.update(String(a)),b))c&&"object"==typeof c&&(c.role&&(f.update("\0"),f.update(c.role)),"string"==typeof c.content&&c.content&&(f.update("\0"),f.update(c.content)));if(c){f.update("\0");try{f.update(JSON.stringify(c))}catch{}}return f.update(`\0mt=${d}`),f.digest("hex").slice(0,16)}(i,k,m,p);return{qoderKey:i,payload:{request_id:(0,f.A)(),request_set_id:w,chat_record_id:w,session_id:v,stream:!0,chat_task:"FREE_INPUT",is_reply:!0,is_retry:!1,source:1,version:"3",session_type:"qodercli",agent_id:"agent_common",task_id:"common",code_language:"",chat_prompt:"",image_urls:null,aliyun_user_type:"",system:l,messages:k,tools:Array.isArray(m)?m:[],parameters:{max_tokens:p},chat_context:{chatPrompt:"",imageUrls:null,extra:{context:[],modelConfig:{key:i,is_reasoning:n},originalContent:q},features:[],text:q},model_config:j,business:{product:"cli",version:"1.0.0",type:"agent",stage:"start",id:(0,f.A)(),name:t(q,30),begin_at:Date.now()}},modelConfig:j}}class v extends j.Hv{constructor(){super("qoder",k.xq.qoder)}buildUrl(){return g.KC}async execute({model:a,body:b,stream:c,credentials:e,signal:f,log:g,proxyOptions:h=null}){let j,k,o,p,q=this.buildUrl(),r=e?.providerSpecificData||{};if(!r.userId)return{response:new Response(JSON.stringify({error:{message:"qoder credential is missing userId; reconnect the account"}}),{status:401,headers:{"Content-Type":"application/json"}}),url:q,headers:{},transformedBody:b};if(!e?.accessToken)return{response:new Response(JSON.stringify({error:{message:"qoder credential is missing accessToken; reconnect the account"}}),{status:401,headers:{"Content-Type":"application/json"}}),url:q,headers:{},transformedBody:b};try{({qoderKey:j,payload:k}=await u({model:a,body:b,credentials:e,log:g,proxyOptions:h,signal:f}))}catch(a){return{response:new Response(JSON.stringify({error:{message:a.message}}),{status:400,headers:{"Content-Type":"application/json"}}),url:q,headers:{},transformedBody:b}}let s=function(a){let b=(Buffer.isBuffer(a)?a:"string"==typeof a?Buffer.from(a,"utf8"):Buffer.from(a)).toString("base64"),c=b.length,e=Math.floor(c/3),f=b.slice(c-e)+b.slice(e,c-e)+b.slice(0,e),g=Buffer.alloc(c);for(let a=0;a<c;a++){let b=f.charCodeAt(a);b<128&&d[b]>=0?g[a]=d[b]:g[a]=b}return g.toString("latin1")}(Buffer.from(JSON.stringify(k),"utf8")),v=Buffer.from(s,"latin1");try{o=i(v,q,{userId:r.userId,authToken:e.accessToken,name:e.displayName||"",email:e.email||"",machineId:r.machineId||""})}catch(a){return{response:new Response(JSON.stringify({error:{message:`qoder cosy signing failed: ${a.message}`}}),{status:401,headers:{"Content-Type":"application/json"}}),url:q,headers:{},transformedBody:b}}let w={"Content-Type":"application/json",Accept:"text/event-stream","Cache-Control":"no-cache","X-Model-Key":j,"X-Model-Source":k.model_config&&k.model_config.source||"system","Accept-Encoding":"identity",...o},x=this.config?.timeoutMs||n.pH,y=new AbortController,z=setTimeout(()=>y.abort(Error("fetch connect timeout")),x),A=f?AbortSignal.any([f,y.signal]):y.signal;try{p=await (0,l.Fm)(q,{method:"POST",headers:w,body:v,signal:A},h)}finally{clearTimeout(z)}return p.ok?{response:function(a,b){if(!a.ok||!a.body)return a;let c=new TextDecoder,d=new TextEncoder,e="",f=!1,g=(a,c)=>{let e,g=a.replace(/\r$/,"").trim();if(!g||!g.startsWith("data:")||f)return;let h=g.slice(5).trimStart();if("[DONE]"===h){c.enqueue(d.encode(m.$U)),f=!0;return}try{e=JSON.parse(h)}catch{return}let i="number"==typeof e.statusCodeValue?e.statusCodeValue:200,j="string"==typeof e.body?e.body:"";if(200!==i){let a=j||`upstream status ${i}`,e=JSON.stringify({id:`qoder-error-${Date.now()}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b,choices:[{index:0,delta:{content:`
|
|
133
|
+
[qoder error ${i}: ${t(a,200)}]`},finish_reason:"stop"}]});c.enqueue(d.encode(`data: ${e}
|
|
134
|
+
|
|
135
|
+
`)),c.enqueue(d.encode(m.$U)),f=!0;return}if(!j)return;if("[DONE]"===j){c.enqueue(d.encode(m.$U)),f=!0;return}let k=j.replace(/\r?\n/g,"");c.enqueue(d.encode(`data: ${k}
|
|
136
|
+
|
|
137
|
+
`))},h=new TransformStream({transform(a,b){let d;for(e+=c.decode(a,{stream:!0});-1!==(d=e.indexOf("\n"));){let a=e.slice(0,d);e=e.slice(d+1),g(a,b)}},flush(a){(e+=c.decode()).length>0&&(g(e,a),e=""),f||(a.enqueue(d.encode(m.$U)),f=!0)}});return new Response(a.body.pipeThrough(h),{status:a.status,statusText:a.statusText,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache"}})}(p,`qoder/${j}`),url:q,headers:w,transformedBody:k}:{response:p,url:q,headers:w,transformedBody:k}}async refreshCredentials(){return null}needsRefresh(){return!1}}},33206:(a,b,c)=>{var d=c(45654);c(33889),c(29984),c(32e3),a.exports=d.kem=d.kem||{};var e=d.jsbn.BigInteger;function f(a,b,c,e){a.generate=function(a,f){for(var g=new d.util.ByteBuffer,h=Math.ceil(f/e)+c,i=new d.util.ByteBuffer,j=c;j<h;++j){i.putInt32(j),b.start(),b.update(a+i.getBytes());var k=b.digest();g.putBytes(k.getBytes(e))}return g.truncate(g.length()-f),g.getBytes()}}d.kem.rsa={},d.kem.rsa.create=function(a,b){var c=(b=b||{}).prng||d.random,f={};return f.encrypt=function(b,f){var g,h=Math.ceil(b.n.bitLength()/8);do g=new e(d.util.bytesToHex(c.getBytesSync(h)),16).mod(b.n);while(0>=g.compareTo(e.ONE));var i=h-(g=d.util.hexToBytes(g.toString(16))).length;return i>0&&(g=d.util.fillString("\0",i)+g),{encapsulation:b.encrypt(g,"NONE"),key:a.generate(g,f)}},f.decrypt=function(b,c,d){var e=b.decrypt(c,"NONE");return a.generate(e,d)},f},d.kem.kdf1=function(a,b){f(this,a,0,b||a.digestLength)},d.kem.kdf2=function(a,b){f(this,a,1,b||a.digestLength)}},33297:(a,b,c)=>{"use strict";let{Buffer:d}=c(4573),e=c(77030),{InvalidArgumentError:f}=c(61448);function g(a){let b=d.alloc(16),c=a;if(a.includes(".")){let b=a.lastIndexOf(":"),d=a.slice(b+1);if(e.isIPv4(d)){let e=d.split(".").map(Number),f=(e[0]<<8|e[1]).toString(16),g=(e[2]<<8|e[3]).toString(16);c=`${a.slice(0,b)}:${f}:${g}`}}let f=c.indexOf("::");if(-1!==f){let a=c.slice(0,f),d=c.slice(f+2),e=""===a?[]:a.split(":"),g=""===d?[]:d.split(":"),h=0;for(let a of e)b.writeUInt16BE(parseInt(a,16),h),h+=2;for(let a of(h=16-2*g.length,g))b.writeUInt16BE(parseInt(a,16),h),h+=2}else{let a=c.split(":");for(let c=0;c<a.length;c++)b.writeUInt16BE(parseInt(a[c],16),2*c)}return b}a.exports={parseAddress:function(a){if(e.isIPv4(a)){let b=a.split(".").map(Number);return{type:1,buffer:d.from(b)}}if(e.isIPv6(a))return{type:4,buffer:g(a)};let b=d.from(a,"utf8");if(b.length>255)throw new f("Domain name too long (max 255 bytes)");return{type:3,buffer:d.concat([d.from([b.length]),b])}},parseIPv6:g,buildAddressBuffer:function(a,b,c){let e=d.allocUnsafe(2);return e.writeUInt16BE(c,0),d.concat([d.from([a]),b,e])},parseResponseAddress:function(a,b=0){let c;if(a.length<b+1)throw new f("Buffer too small to contain address type");let d=a[b],e=b+1;switch(d){case 1:if(a.length<e+6)throw new f("Buffer too small for IPv4 address");c=Array.from(a.subarray(e,e+4)).join("."),e+=4;break;case 3:{if(a.length<e+1)throw new f("Buffer too small for domain length");let b=a[e];if(e+=1,a.length<e+b+2)throw new f("Buffer too small for domain address");c=a.subarray(e,e+b).toString("utf8"),e+=b;break}case 4:{if(a.length<e+18)throw new f("Buffer too small for IPv6 address");let b=[];for(let c=0;c<8;c++){let d=a.readUInt16BE(e+2*c);b.push(d.toString(16))}c=b.join(":"),e+=16;break}default:throw new f(`Invalid address type: ${d}`)}if(a.length<e+2)throw new f("Buffer too small for port");return{address:c,port:a.readUInt16BE(e),bytesRead:(e+=2)-b}},createReplyError:function(a){let b=Error({1:"General SOCKS server failure",2:"Connection not allowed by ruleset",3:"Network unreachable",4:"Host unreachable",5:"Connection refused",6:"TTL expired",7:"Command not supported",8:"Address type not supported"}[a]||`Unknown SOCKS5 error code: ${a}`);return b.code=`SOCKS5_${a}`,b}}},33629:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.enumToMap=function(a,b=[],c=[]){let d=(b?.length??0)===0,e=(c?.length??0)===0;return Object.fromEntries(Object.entries(a).filter(([,a])=>"number"==typeof a&&(d||b.includes(a))&&(e||!c.includes(a))))}},33871:(a,b,c)=>{"use strict";c(45504),c(84460),c(89666)},33889:(a,b,c)=>{var d=c(45654),e=c(20096),f=a.exports=d.util=d.util||{};function g(a){if(8!==a&&16!==a&&24!==a&&32!==a)throw Error("Only 8, 16, 24, or 32 bits supported: "+a)}function h(a){if(this.data="",this.read=0,"string"==typeof a)this.data=a;else if(f.isArrayBuffer(a)||f.isArrayBufferView(a))if("u">typeof Buffer&&a instanceof Buffer)this.data=a.toString("binary");else{var b=new Uint8Array(a);try{this.data=String.fromCharCode.apply(null,b)}catch(a){for(var c=0;c<b.length;++c)this.putByte(b[c])}}else(a instanceof h||"object"==typeof a&&"string"==typeof a.data&&"number"==typeof a.read)&&(this.data=a.data,this.read=a.read);this._constructedStringLength=0}!function(){if("u">typeof process&&process.nextTick&&1){f.nextTick=process.nextTick,"function"==typeof setImmediate?f.setImmediate=setImmediate:f.setImmediate=f.nextTick;return}if("function"==typeof setImmediate){f.setImmediate=function(){return setImmediate.apply(void 0,arguments)},f.nextTick=function(a){return setImmediate(a)};return}if(f.setImmediate=function(a){setTimeout(a,0)},"u">typeof window&&"function"==typeof window.postMessage){var a="forge.setImmediate",b=[];f.setImmediate=function(c){b.push(c),1===b.length&&window.postMessage(a,"*")},window.addEventListener("message",function(c){if(c.source===window&&c.data===a){c.stopPropagation();var d=b.slice();b.length=0,d.forEach(function(a){a()})}},!0)}if("u">typeof MutationObserver){var c=Date.now(),d=!0,e=document.createElement("div"),b=[];new MutationObserver(function(){var a=b.slice();b.length=0,a.forEach(function(a){a()})}).observe(e,{attributes:!0});var g=f.setImmediate;f.setImmediate=function(a){Date.now()-c>15?(c=Date.now(),g(a)):(b.push(a),1===b.length&&e.setAttribute("a",d=!d))}}f.nextTick=f.setImmediate}(),f.isNodejs="u">typeof process&&process.versions&&process.versions.node,f.globalScope=f.isNodejs?global:"u"<typeof self?window:self,f.isArray=Array.isArray||function(a){return"[object Array]"===Object.prototype.toString.call(a)},f.isArrayBuffer=function(a){return"u">typeof ArrayBuffer&&a instanceof ArrayBuffer},f.isArrayBufferView=function(a){return a&&f.isArrayBuffer(a.buffer)&&void 0!==a.byteLength},f.ByteBuffer=h,f.ByteStringBuffer=h,f.ByteStringBuffer.prototype._optimizeConstructedString=function(a){this._constructedStringLength+=a,this._constructedStringLength>4096&&(this.data.substr(0,1),this._constructedStringLength=0)},f.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read},f.ByteStringBuffer.prototype.isEmpty=function(){return 0>=this.length()},f.ByteStringBuffer.prototype.putByte=function(a){return this.putBytes(String.fromCharCode(a))},f.ByteStringBuffer.prototype.fillWithByte=function(a,b){a=String.fromCharCode(a);for(var c=this.data;b>0;)1&b&&(c+=a),(b>>>=1)>0&&(a+=a);return this.data=c,this._optimizeConstructedString(b),this},f.ByteStringBuffer.prototype.putBytes=function(a){return this.data+=a,this._optimizeConstructedString(a.length),this},f.ByteStringBuffer.prototype.putString=function(a){return this.putBytes(f.encodeUtf8(a))},f.ByteStringBuffer.prototype.putInt16=function(a){return this.putBytes(String.fromCharCode(a>>8&255)+String.fromCharCode(255&a))},f.ByteStringBuffer.prototype.putInt24=function(a){return this.putBytes(String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(255&a))},f.ByteStringBuffer.prototype.putInt32=function(a){return this.putBytes(String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(255&a))},f.ByteStringBuffer.prototype.putInt16Le=function(a){return this.putBytes(String.fromCharCode(255&a)+String.fromCharCode(a>>8&255))},f.ByteStringBuffer.prototype.putInt24Le=function(a){return this.putBytes(String.fromCharCode(255&a)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255))},f.ByteStringBuffer.prototype.putInt32Le=function(a){return this.putBytes(String.fromCharCode(255&a)+String.fromCharCode(a>>8&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>24&255))},f.ByteStringBuffer.prototype.putInt=function(a,b){g(b);var c="";do b-=8,c+=String.fromCharCode(a>>b&255);while(b>0);return this.putBytes(c)},f.ByteStringBuffer.prototype.putSignedInt=function(a,b){return a<0&&(a+=2<<b-1),this.putInt(a,b)},f.ByteStringBuffer.prototype.putBuffer=function(a){return this.putBytes(a.getBytes())},f.ByteStringBuffer.prototype.getByte=function(){return this.data.charCodeAt(this.read++)},f.ByteStringBuffer.prototype.getInt16=function(){var a=this.data.charCodeAt(this.read)<<8^this.data.charCodeAt(this.read+1);return this.read+=2,a},f.ByteStringBuffer.prototype.getInt24=function(){var a=this.data.charCodeAt(this.read)<<16^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2);return this.read+=3,a},f.ByteStringBuffer.prototype.getInt32=function(){var a=this.data.charCodeAt(this.read)<<24^this.data.charCodeAt(this.read+1)<<16^this.data.charCodeAt(this.read+2)<<8^this.data.charCodeAt(this.read+3);return this.read+=4,a},f.ByteStringBuffer.prototype.getInt16Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8;return this.read+=2,a},f.ByteStringBuffer.prototype.getInt24Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16;return this.read+=3,a},f.ByteStringBuffer.prototype.getInt32Le=function(){var a=this.data.charCodeAt(this.read)^this.data.charCodeAt(this.read+1)<<8^this.data.charCodeAt(this.read+2)<<16^this.data.charCodeAt(this.read+3)<<24;return this.read+=4,a},f.ByteStringBuffer.prototype.getInt=function(a){g(a);var b=0;do b=(b<<8)+this.data.charCodeAt(this.read++),a-=8;while(a>0);return b},f.ByteStringBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a),c=2<<a-2;return b>=c&&(b-=c<<1),b},f.ByteStringBuffer.prototype.getBytes=function(a){var b;return a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear()),b},f.ByteStringBuffer.prototype.bytes=function(a){return void 0===a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)},f.ByteStringBuffer.prototype.at=function(a){return this.data.charCodeAt(this.read+a)},f.ByteStringBuffer.prototype.setAt=function(a,b){return this.data=this.data.substr(0,this.read+a)+String.fromCharCode(b)+this.data.substr(this.read+a+1),this},f.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)},f.ByteStringBuffer.prototype.copy=function(){var a=f.createBuffer(this.data);return a.read=this.read,a},f.ByteStringBuffer.prototype.compact=function(){return this.read>0&&(this.data=this.data.slice(this.read),this.read=0),this},f.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this},f.ByteStringBuffer.prototype.truncate=function(a){var b=Math.max(0,this.length()-a);return this.data=this.data.substr(this.read,b),this.read=0,this},f.ByteStringBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.length;++b){var c=this.data.charCodeAt(b);c<16&&(a+="0"),a+=c.toString(16)}return a},f.ByteStringBuffer.prototype.toString=function(){return f.decodeUtf8(this.bytes())},f.DataBuffer=function(a,b){b=b||{},this.read=b.readOffset||0,this.growSize=b.growSize||1024;var c=f.isArrayBuffer(a),d=f.isArrayBufferView(a);if(c||d){c?this.data=new DataView(a):this.data=new DataView(a.buffer,a.byteOffset,a.byteLength),this.write="writeOffset"in b?b.writeOffset:this.data.byteLength;return}this.data=new DataView(new ArrayBuffer(0)),this.write=0,null!=a&&this.putBytes(a),"writeOffset"in b&&(this.write=b.writeOffset)},f.DataBuffer.prototype.length=function(){return this.write-this.read},f.DataBuffer.prototype.isEmpty=function(){return 0>=this.length()},f.DataBuffer.prototype.accommodate=function(a,b){if(this.length()>=a)return this;b=Math.max(b||this.growSize,a);var c=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),d=new Uint8Array(this.length()+b);return d.set(c),this.data=new DataView(d.buffer),this},f.DataBuffer.prototype.putByte=function(a){return this.accommodate(1),this.data.setUint8(this.write++,a),this},f.DataBuffer.prototype.fillWithByte=function(a,b){this.accommodate(b);for(var c=0;c<b;++c)this.data.setUint8(a);return this},f.DataBuffer.prototype.putBytes=function(a,b){if(f.isArrayBufferView(a)){var c,d=new Uint8Array(a.buffer,a.byteOffset,a.byteLength),e=d.byteLength-d.byteOffset;this.accommodate(e);var g=new Uint8Array(this.data.buffer,this.write);return g.set(d),this.write+=e,this}if(f.isArrayBuffer(a)){var d=new Uint8Array(a);this.accommodate(d.byteLength);var g=new Uint8Array(this.data.buffer);return g.set(d,this.write),this.write+=d.byteLength,this}if(a instanceof f.DataBuffer||"object"==typeof a&&"number"==typeof a.read&&"number"==typeof a.write&&f.isArrayBufferView(a.data)){var d=new Uint8Array(a.data.byteLength,a.read,a.length());this.accommodate(d.byteLength);var g=new Uint8Array(a.data.byteLength,this.write);return g.set(d),this.write+=d.byteLength,this}if(a instanceof f.ByteStringBuffer&&(a=a.data,b="binary"),b=b||"binary","string"==typeof a){if("hex"===b)return this.accommodate(Math.ceil(a.length/2)),c=new Uint8Array(this.data.buffer,this.write),this.write+=f.binary.hex.decode(a,c,this.write),this;if("base64"===b)return this.accommodate(3*Math.ceil(a.length/4)),c=new Uint8Array(this.data.buffer,this.write),this.write+=f.binary.base64.decode(a,c,this.write),this;if("utf8"===b&&(a=f.encodeUtf8(a),b="binary"),"binary"===b||"raw"===b)return this.accommodate(a.length),c=new Uint8Array(this.data.buffer,this.write),this.write+=f.binary.raw.decode(c),this;if("utf16"===b)return this.accommodate(2*a.length),c=new Uint16Array(this.data.buffer,this.write),this.write+=f.text.utf16.encode(c),this;throw Error("Invalid encoding: "+b)}throw Error("Invalid parameter: "+a)},f.DataBuffer.prototype.putBuffer=function(a){return this.putBytes(a),a.clear(),this},f.DataBuffer.prototype.putString=function(a){return this.putBytes(a,"utf16")},f.DataBuffer.prototype.putInt16=function(a){return this.accommodate(2),this.data.setInt16(this.write,a),this.write+=2,this},f.DataBuffer.prototype.putInt24=function(a){return this.accommodate(3),this.data.setInt16(this.write,a>>8&65535),this.data.setInt8(this.write,a>>16&255),this.write+=3,this},f.DataBuffer.prototype.putInt32=function(a){return this.accommodate(4),this.data.setInt32(this.write,a),this.write+=4,this},f.DataBuffer.prototype.putInt16Le=function(a){return this.accommodate(2),this.data.setInt16(this.write,a,!0),this.write+=2,this},f.DataBuffer.prototype.putInt24Le=function(a){return this.accommodate(3),this.data.setInt8(this.write,a>>16&255),this.data.setInt16(this.write,a>>8&65535,!0),this.write+=3,this},f.DataBuffer.prototype.putInt32Le=function(a){return this.accommodate(4),this.data.setInt32(this.write,a,!0),this.write+=4,this},f.DataBuffer.prototype.putInt=function(a,b){g(b),this.accommodate(b/8);do b-=8,this.data.setInt8(this.write++,a>>b&255);while(b>0);return this},f.DataBuffer.prototype.putSignedInt=function(a,b){return g(b),this.accommodate(b/8),a<0&&(a+=2<<b-1),this.putInt(a,b)},f.DataBuffer.prototype.getByte=function(){return this.data.getInt8(this.read++)},f.DataBuffer.prototype.getInt16=function(){var a=this.data.getInt16(this.read);return this.read+=2,a},f.DataBuffer.prototype.getInt24=function(){var a=this.data.getInt16(this.read)<<8^this.data.getInt8(this.read+2);return this.read+=3,a},f.DataBuffer.prototype.getInt32=function(){var a=this.data.getInt32(this.read);return this.read+=4,a},f.DataBuffer.prototype.getInt16Le=function(){var a=this.data.getInt16(this.read,!0);return this.read+=2,a},f.DataBuffer.prototype.getInt24Le=function(){var a=this.data.getInt8(this.read)^this.data.getInt16(this.read+1,!0)<<8;return this.read+=3,a},f.DataBuffer.prototype.getInt32Le=function(){var a=this.data.getInt32(this.read,!0);return this.read+=4,a},f.DataBuffer.prototype.getInt=function(a){g(a);var b=0;do b=(b<<8)+this.data.getInt8(this.read++),a-=8;while(a>0);return b},f.DataBuffer.prototype.getSignedInt=function(a){var b=this.getInt(a),c=2<<a-2;return b>=c&&(b-=c<<1),b},f.DataBuffer.prototype.getBytes=function(a){var b;return a?(a=Math.min(this.length(),a),b=this.data.slice(this.read,this.read+a),this.read+=a):0===a?b="":(b=0===this.read?this.data:this.data.slice(this.read),this.clear()),b},f.DataBuffer.prototype.bytes=function(a){return void 0===a?this.data.slice(this.read):this.data.slice(this.read,this.read+a)},f.DataBuffer.prototype.at=function(a){return this.data.getUint8(this.read+a)},f.DataBuffer.prototype.setAt=function(a,b){return this.data.setUint8(a,b),this},f.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)},f.DataBuffer.prototype.copy=function(){return new f.DataBuffer(this)},f.DataBuffer.prototype.compact=function(){if(this.read>0){var a=new Uint8Array(this.data.buffer,this.read),b=new Uint8Array(a.byteLength);b.set(a),this.data=new DataView(b),this.write-=this.read,this.read=0}return this},f.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this},f.DataBuffer.prototype.truncate=function(a){return this.write=Math.max(0,this.length()-a),this.read=Math.min(this.read,this.write),this},f.DataBuffer.prototype.toHex=function(){for(var a="",b=this.read;b<this.data.byteLength;++b){var c=this.data.getUint8(b);c<16&&(a+="0"),a+=c.toString(16)}return a},f.DataBuffer.prototype.toString=function(a){var b=new Uint8Array(this.data,this.read,this.length());if("binary"===(a=a||"utf8")||"raw"===a)return f.binary.raw.encode(b);if("hex"===a)return f.binary.hex.encode(b);if("base64"===a)return f.binary.base64.encode(b);if("utf8"===a)return f.text.utf8.decode(b);if("utf16"===a)return f.text.utf16.decode(b);throw Error("Invalid encoding: "+a)},f.createBuffer=function(a,b){return b=b||"raw",void 0!==a&&"utf8"===b&&(a=f.encodeUtf8(a)),new f.ByteBuffer(a)},f.fillString=function(a,b){for(var c="";b>0;)1&b&&(c+=a),(b>>>=1)>0&&(a+=a);return c},f.xorBytes=function(a,b,c){for(var d="",e="",f="",g=0,h=0;c>0;--c,++g)e=a.charCodeAt(g)^b.charCodeAt(g),h>=10&&(d+=f,f="",h=0),f+=String.fromCharCode(e),++h;return d+f},f.hexToBytes=function(a){var b="",c=0;for(!0&a.length&&(c=1,b+=String.fromCharCode(parseInt(a[0],16)));c<a.length;c+=2)b+=String.fromCharCode(parseInt(a.substr(c,2),16));return b},f.bytesToHex=function(a){return f.createBuffer(a).toHex()},f.int32ToBytes=function(a){return String.fromCharCode(a>>24&255)+String.fromCharCode(a>>16&255)+String.fromCharCode(a>>8&255)+String.fromCharCode(255&a)};var i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",j=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],k="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";f.encode64=function(a,b){for(var c,d,e,f="",g="",h=0;h<a.length;)c=a.charCodeAt(h++),d=a.charCodeAt(h++),e=a.charCodeAt(h++),f+=i.charAt(c>>2),f+=i.charAt((3&c)<<4|d>>4),isNaN(d)?f+="==":(f+=i.charAt((15&d)<<2|e>>6),f+=isNaN(e)?"=":i.charAt(63&e)),b&&f.length>b&&(g+=f.substr(0,b)+"\r\n",f=f.substr(b));return g+f},f.decode64=function(a){a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var b,c,d,e,f="",g=0;g<a.length;)b=j[a.charCodeAt(g++)-43],c=j[a.charCodeAt(g++)-43],d=j[a.charCodeAt(g++)-43],e=j[a.charCodeAt(g++)-43],f+=String.fromCharCode(b<<2|c>>4),64!==d&&(f+=String.fromCharCode((15&c)<<4|d>>2),64!==e&&(f+=String.fromCharCode((3&d)<<6|e)));return f},f.encodeUtf8=function(a){return unescape(encodeURIComponent(a))},f.decodeUtf8=function(a){return decodeURIComponent(escape(a))},f.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:e.encode,decode:e.decode}},f.binary.raw.encode=function(a){return String.fromCharCode.apply(null,a)},f.binary.raw.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(a.length));for(var e=c=c||0,f=0;f<a.length;++f)d[e++]=a.charCodeAt(f);return b?e-c:d},f.binary.hex.encode=f.bytesToHex,f.binary.hex.decode=function(a,b,c){var d=b;d||(d=new Uint8Array(Math.ceil(a.length/2)));var e=0,f=c=c||0;for(1&a.length&&(e=1,d[f++]=parseInt(a[0],16));e<a.length;e+=2)d[f++]=parseInt(a.substr(e,2),16);return b?f-c:d},f.binary.base64.encode=function(a,b){for(var c,d,e,f="",g="",h=0;h<a.byteLength;)c=a[h++],d=a[h++],e=a[h++],f+=i.charAt(c>>2),f+=i.charAt((3&c)<<4|d>>4),isNaN(d)?f+="==":(f+=i.charAt((15&d)<<2|e>>6),f+=isNaN(e)?"=":i.charAt(63&e)),b&&f.length>b&&(g+=f.substr(0,b)+"\r\n",f=f.substr(b));return g+f},f.binary.base64.decode=function(a,b,c){var d,e,f,g,h=b;h||(h=new Uint8Array(3*Math.ceil(a.length/4))),a=a.replace(/[^A-Za-z0-9\+\/\=]/g,"");for(var i=0,k=c=c||0;i<a.length;)d=j[a.charCodeAt(i++)-43],e=j[a.charCodeAt(i++)-43],f=j[a.charCodeAt(i++)-43],g=j[a.charCodeAt(i++)-43],h[k++]=d<<2|e>>4,64!==f&&(h[k++]=(15&e)<<4|f>>2,64!==g&&(h[k++]=(3&f)<<6|g));return b?k-c:h.subarray(0,k)},f.binary.base58.encode=function(a,b){return f.binary.baseN.encode(a,k,b)},f.binary.base58.decode=function(a,b){return f.binary.baseN.decode(a,k,b)},f.text={utf8:{},utf16:{}},f.text.utf8.encode=function(a,b,c){a=f.encodeUtf8(a);var d=b;d||(d=new Uint8Array(a.length));for(var e=c=c||0,g=0;g<a.length;++g)d[e++]=a.charCodeAt(g);return b?e-c:d},f.text.utf8.decode=function(a){return f.decodeUtf8(String.fromCharCode.apply(null,a))},f.text.utf16.encode=function(a,b,c){var d=b;d||(d=new Uint8Array(2*a.length));for(var e=new Uint16Array(d.buffer),f=c=c||0,g=c,h=0;h<a.length;++h)e[g++]=a.charCodeAt(h),f+=2;return b?f-c:d},f.text.utf16.decode=function(a){return String.fromCharCode.apply(null,new Uint16Array(a.buffer))},f.deflate=function(a,b,c){if(b=f.decode64(a.deflate(f.encode64(b)).rval),c){var d=2;32&b.charCodeAt(1)&&(d=6),b=b.substring(d,b.length-4)}return b},f.inflate=function(a,b,c){var d=a.inflate(f.encode64(b)).rval;return null===d?null:f.decode64(d)};var l=function(a,b,c){if(!a)throw Error("WebStorage not available.");if(null===c?d=a.removeItem(b):(c=f.encode64(JSON.stringify(c)),d=a.setItem(b,c)),void 0!==d&&!0!==d.rval){var d,e=Error(d.error.message);throw e.id=d.error.id,e.name=d.error.name,e}},m=function(a,b){if(!a)throw Error("WebStorage not available.");var c=a.getItem(b);if(a.init)if(null===c.rval){if(c.error){var d=Error(c.error.message);throw d.id=c.error.id,d.name=c.error.name,d}c=null}else c=c.rval;return null!==c&&(c=JSON.parse(f.decode64(c))),c},n=function(a,b,c,d){var e=m(a,b);null===e&&(e={}),e[c]=d,l(a,b,e)},o=function(a,b,c){var d=m(a,b);return null!==d&&(d=c in d?d[c]:null),d},p=function(a,b,c){var d=m(a,b);if(null!==d&&c in d){delete d[c];var e=!0;for(var f in d){e=!1;break}e&&(d=null),l(a,b,d)}},q=function(a,b){l(a,b,null)},r=function(a,b,c){var d,e=null;void 0===c&&(c=["web","flash"]);var f=!1,g=null;for(var h in c){d=c[h];try{if("flash"===d||"both"===d){if(null===b[0])throw Error("Flash local storage not available.");e=a.apply(this,b),f="flash"===d}("web"===d||"both"===d)&&(b[0]=localStorage,e=a.apply(this,b),f=!0)}catch(a){g=a}if(f)break}if(!f)throw g;return e};f.setItem=function(a,b,c,d,e){r(n,arguments,e)},f.getItem=function(a,b,c,d){return r(o,arguments,d)},f.removeItem=function(a,b,c,d){r(p,arguments,d)},f.clearItems=function(a,b,c){r(q,arguments,c)},f.isEmpty=function(a){for(var b in a)if(a.hasOwnProperty(b))return!1;return!0},f.format=function(a){for(var b,c,d=/%./g,e=0,f=[],g=0;b=d.exec(a);){(c=a.substring(g,d.lastIndex-2)).length>0&&f.push(c),g=d.lastIndex;var h=b[0][1];switch(h){case"s":case"o":e<arguments.length?f.push(arguments[e+++1]):f.push("<?>");break;case"%":f.push("%");break;default:f.push("<%"+h+"?>")}}return f.push(a.substring(g)),f.join("")},f.formatNumber=function(a,b,c,d){var e=a,f=isNaN(b=Math.abs(b))?2:b,g=void 0===d?".":d,h=e<0?"-":"",i=parseInt(e=Math.abs(+e||0).toFixed(f),10)+"",j=i.length>3?i.length%3:0;return h+(j?i.substr(0,j)+g:"")+i.substr(j).replace(/(\d{3})(?=\d)/g,"$1"+g)+(f?(void 0===c?",":c)+Math.abs(e-i).toFixed(f).slice(2):"")},f.formatSize=function(a){return a>=0x40000000?f.formatNumber(a/0x40000000,2,".","")+" GiB":a>=1048576?f.formatNumber(a/1048576,2,".","")+" MiB":a>=1024?f.formatNumber(a/1024,0)+" KiB":f.formatNumber(a,0)+" bytes"},f.bytesFromIP=function(a){return -1!==a.indexOf(".")?f.bytesFromIPv4(a):-1!==a.indexOf(":")?f.bytesFromIPv6(a):null},f.bytesFromIPv4=function(a){if(4!==(a=a.split(".")).length)return null;for(var b=f.createBuffer(),c=0;c<a.length;++c){var d=parseInt(a[c],10);if(isNaN(d))return null;b.putByte(d)}return b.getBytes()},f.bytesFromIPv6=function(a){for(var b=0,c=(8-(a=a.split(":").filter(function(a){return 0===a.length&&++b,!0})).length+b)*2,d=f.createBuffer(),e=0;e<8;++e){if(!a[e]||0===a[e].length){d.fillWithByte(0,c),c=0;continue}var g=f.hexToBytes(a[e]);g.length<2&&d.putByte(0),d.putBytes(g)}return d.getBytes()},f.bytesToIP=function(a){return 4===a.length?f.bytesToIPv4(a):16===a.length?f.bytesToIPv6(a):null},f.bytesToIPv4=function(a){if(4!==a.length)return null;for(var b=[],c=0;c<a.length;++c)b.push(a.charCodeAt(c));return b.join(".")},f.bytesToIPv6=function(a){if(16!==a.length)return null;for(var b=[],c=[],d=0,e=0;e<a.length;e+=2){for(var g=f.bytesToHex(a[e]+a[e+1]);"0"===g[0]&&"0"!==g;)g=g.substr(1);if("0"===g){var h=c[c.length-1],i=b.length;h&&i===h.end+1?(h.end=i,h.end-h.start>c[d].end-c[d].start&&(d=c.length-1)):c.push({start:i,end:i})}b.push(g)}if(c.length>0){var j=c[d];j.end-j.start>0&&(b.splice(j.start,j.end-j.start+1,""),0===j.start&&b.unshift(""),7===j.end&&b.push(""))}return b.join(":")},f.estimateCores=function(a,b){if("function"==typeof a&&(b=a,a={}),a=a||{},"cores"in f&&!a.update)return b(null,f.cores);if("u">typeof navigator&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return f.cores=navigator.hardwareConcurrency,b(null,f.cores);if("u"<typeof Worker)return f.cores=1,b(null,f.cores);if("u"<typeof Blob)return f.cores=2,b(null,f.cores);var c=URL.createObjectURL(new Blob(["(",(function(){self.addEventListener("message",function(a){for(var b=Date.now(),c=b+4;Date.now()<c;);self.postMessage({st:b,et:c})})}).toString(),")()"],{type:"application/javascript"}));!function a(d,e,g){if(0===e)return f.cores=Math.max(1,Math.floor(d.reduce(function(a,b){return a+b},0)/d.length)),URL.revokeObjectURL(c),b(null,f.cores);!function(a,b){for(var d=[],e=[],f=0;f<a;++f){var g=new Worker(c);g.addEventListener("message",function(c){if(e.push(c.data),e.length===a){for(var f=0;f<a;++f)d[f].terminate();b(null,e)}}),d.push(g)}for(var f=0;f<a;++f)d[f].postMessage(f)}(g,function(b,c){d.push(function(a,b){for(var c=[],d=0;d<a;++d)for(var e=b[d],f=c[d]=[],g=0;g<a;++g)if(d!==g){var h=b[g];(e.st>h.st&&e.st<h.et||h.st>e.st&&h.st<e.et)&&f.push(g)}return c.reduce(function(a,b){return Math.max(a,b.length)},0)}(g,c)),a(d,e-1,g)})}([],5,16)}},34441:(a,b,c)=>{"use strict";let{PoolBase:d,kClients:e,kNeedDrain:f,kAddClient:g,kGetDispatcher:h,kHasDispatcher:i,kRemoveClient:j}=c(39065),k=c(40106),{InvalidArgumentError:l}=c(61448),m=c(84285),{kUrl:n}=c(49176),o=c(55285),p=Symbol("options"),q=Symbol("connections"),r=Symbol("factory"),s=Symbol("index");function t(a,b){return new k(a,b)}class u extends d{constructor(a,{connections:b,factory:c=t,connect:d,connectTimeout:f,tls:g,maxCachedSessions:h,socketPath:i,autoSelectFamily:j,autoSelectFamilyAttemptTimeout:k,allowH2:u,clientTtl:v,...w}={}){if(null!=b&&(!Number.isFinite(b)||b<0))throw new l("invalid connections");if("function"!=typeof c)throw new l("factory must be a function.");if(null!=d&&"function"!=typeof d&&"object"!=typeof d)throw new l("connect must be a function or an object");"function"!=typeof d&&(d=o({...g,maxCachedSessions:h,allowH2:u,socketPath:i,timeout:f,..."boolean"==typeof j?{autoSelectFamily:j,autoSelectFamilyAttemptTimeout:k}:void 0,...d})),super(),this[q]=b||null,this[n]=m.parseOrigin(a),this[p]={...m.deepClone(w),connect:d,allowH2:u,clientTtl:v,socketPath:i},this[r]=c,this[s]=-1,this.on("connect",(a,b)=>{if(null!=v&&v>0)for(let a of b)Object.assign(a,{ttl:Date.now()})}),this.on("connectionError",(a,b,c)=>{for(let a of b){let b=this[e].indexOf(a);-1!==b&&this[e].splice(b,1)}})}[h](){let a=this[p].clientTtl;if(0===this[e].length){let a=this[r](this[n],this[p]);return this[g](a),a}let b=0;for(;b<this[e].length;){this[s]=(this[s]+1)%this[e].length;let c=this[e][this[s]];if(null!=a&&a>0&&c.ttl&&Date.now()-c.ttl>a){this[j](c),this[s]--;continue}if(!c[f])return c;b++}if(!this[q]||this[e].length<this[q]){let a=this[r](this[n],this[p]);return this[g](a),a}}[i](){let a=this[p].clientTtl;for(let b=0;b<this[e].length;b++){let c=this[e][b];if(null!=a&&a>0&&c.ttl&&Date.now()-c.ttl>a)this[j](c),b<=this[s]&&this[s]--,b--;else if(!c[f])return!0}if(!this[q]||this[e].length<this[q]){let a=this[r](this[n],this[p]);return this[g](a),!0}return!1}}a.exports=u},34578:(a,b,c)=>{"use strict";c(82340);let d="You are a lazy senior developer. Lazy means efficient, not careless. The best code is the code never written.",e="Before writing code, stop at the first rung that holds: 1) Does this need to exist at all? (YAGNI) 2) Stdlib does it? Use it. 3) Native platform feature covers it? Use it (CSS over JS, DB constraint over app code). 4) Already-installed dependency solves it? Use it; never add a new one for what a few lines can do. 5) Can it be one line? One line. 6) Only then: the minimum code that works.",f='No unrequested abstractions (no interface with one implementation, no factory for one product, no config for a value that never changes). No boilerplate or scaffolding "for later". Deletion over addition. Boring over clever. Fewest files possible; shortest working diff wins. Two stdlib options the same size: take the edge-case-correct one. Mark deliberate simplifications with a `ponytail:` comment naming the ceiling and upgrade path.',g="Code first. Then at most three short lines: what was skipped, when to add it. No essays or design notes. Pattern: `[code] → skipped: [X], add when [Y].`",h="Never simplify away: input validation at trust boundaries, error handling that prevents data loss, security, accessibility, anything explicitly requested. Non-trivial logic leaves ONE runnable check behind (an assert-based self-check or one small test file; no frameworks). Trivial one-liners need no test.",i="ACTIVE EVERY RESPONSE. No drift back to over-building. Still active if unsure.";[d,"Lite: build what's asked, but name the lazier alternative in one line. User picks.",e,f,g,h,i].join(" "),[d,"Full: the ladder enforced. Stdlib and native first. Shortest diff, shortest explanation.",e,f,g,h,i].join(" "),[d,"Ultra: YAGNI extremist. Deletion before addition. Ship the one-liner and challenge the rest of the requirement in the same response.",e,f,g,h,i].join(" ")},34721:(a,b,c)=>{"use strict";c.d(b,{GU:()=>p,HP:()=>n,Hr:()=>j,Kx:()=>m,_6:()=>r,dC:()=>q,eh:()=>s,f8:()=>l,p3:()=>h});var d=c(24081),e=c(50743),f=c(55511);function g(a){}async function h(a){let b=(await (0,d.c)()).get(`SELECT * FROM router_learning_versions
|
|
138
|
+
WHERE comboName = ? AND promoted = 1
|
|
139
|
+
ORDER BY version DESC LIMIT 1`,[a]);return b?i(b):null}function i(a){return{id:a.id,comboName:a.comboName,version:a.version,createdAt:a.createdAt,source:a.source,banditTable:(0,e.q)(a.banditTable,{}),learnedRules:(0,e.q)(a.learnedRules,[]),fewShots:(0,e.q)(a.fewShots,[]),evalScore:a.evalScore,prevVersionId:a.prevVersionId,promoted:!!a.promoted,notes:a.notes}}async function j({comboName:a,source:b="manual",banditTable:c={},learnedRules:h=[],fewShots:i=[],evalScore:l=null,notes:m="",promote:n=!1,prevVersionId:o=null}){let p=await (0,d.c)(),q=(0,f.randomUUID)(),r=new Date().toISOString(),s=1;return p.transaction(()=>{let d=p.get("SELECT MAX(version) AS v FROM router_learning_versions WHERE comboName = ?",[a]);s=(d?.v||0)+1,n&&p.run("UPDATE router_learning_versions SET promoted = 0 WHERE comboName = ?",[a]),p.run(`INSERT INTO router_learning_versions(
|
|
140
|
+
id, comboName, version, createdAt, source, banditTable, learnedRules,
|
|
141
|
+
fewShots, evalScore, prevVersionId, promoted, notes
|
|
142
|
+
) VALUES (?,?,?,?,?,?,?,?,?,?,?,?)`,[q,a,s,r,b,(0,e.s)(c),(0,e.s)(h),(0,e.s)(i),l,o,+!!n,m||null])}),g(a),k(q)}async function k(a){let b=(await (0,d.c)()).get("SELECT * FROM router_learning_versions WHERE id = ?",[a]);return b?i(b):null}async function l(a,b=null,c={}){let e=await (0,d.c)(),f=!1!==c.terminalOnly,g="(meta IS NULL OR meta NOT LIKE '%\"skippedRouter\":true%')",h=f?`AND (
|
|
143
|
+
meta LIKE '%"terminal":true%'
|
|
144
|
+
OR (meta IS NULL OR meta NOT LIKE '%"terminal"%')
|
|
145
|
+
)
|
|
146
|
+
AND ${g}`:`AND ${g}`;if(b){let c=e.get(`SELECT COUNT(DISTINCT COALESCE(requestId, CAST(id AS TEXT))) AS n
|
|
147
|
+
FROM routing_events
|
|
148
|
+
WHERE comboName = ? AND timestamp >= ?
|
|
149
|
+
${h}`,[a,b]);return c?.n||0}let i=e.get(`SELECT COUNT(DISTINCT COALESCE(requestId, CAST(id AS TEXT))) AS n
|
|
150
|
+
FROM routing_events
|
|
151
|
+
WHERE comboName = ?
|
|
152
|
+
${h}`,[a]);return i?.n||0}async function m(a,{days:b=14,limit:c=200,terminalOnly:e=!1}={}){let f=await (0,d.c)(),g=new Date(Date.now()-864e5*b).toISOString(),h=e?`AND (
|
|
153
|
+
meta LIKE '%"terminal":true%'
|
|
154
|
+
OR meta IS NULL
|
|
155
|
+
OR meta NOT LIKE '%"terminal"%'
|
|
156
|
+
)`:"";return f.all(`SELECT * FROM routing_events
|
|
157
|
+
WHERE comboName = ? AND timestamp >= ?
|
|
158
|
+
${h}
|
|
159
|
+
ORDER BY timestamp DESC LIMIT ?`,[a,g,c]).map(o)}async function n(a){if(!a)return null;let b=(await (0,d.c)()).get(`SELECT MAX(createdAt) AS t FROM router_learning_versions
|
|
160
|
+
WHERE comboName = ? AND source = 'scheduled'`,[a]);return b?.t||null}function o(a){return{...a,alternates:(0,e.q)(a.alternates,[]),meta:(0,e.q)(a.meta,{}),fallbackUsed:!!a.fallbackUsed}}async function p(a,b=14){let c=await (0,d.c)(),e=new Date(Date.now()-864e5*b).toISOString();return c.all(`SELECT cluster, pickedWorker,
|
|
161
|
+
COUNT(*) AS n,
|
|
162
|
+
SUM(CASE WHEN outcomeScore >= 60 THEN 1 ELSE 0 END) AS wins,
|
|
163
|
+
AVG(outcomeScore) AS avgScore,
|
|
164
|
+
AVG(workerLatencyMs) AS avgLatencyMs,
|
|
165
|
+
AVG(tokensOut) AS avgTokensOut
|
|
166
|
+
FROM routing_events
|
|
167
|
+
WHERE comboName = ? AND timestamp >= ?
|
|
168
|
+
AND cluster IS NOT NULL AND pickedWorker IS NOT NULL
|
|
169
|
+
AND (meta IS NULL OR meta NOT LIKE '%"skippedRouter":true%')
|
|
170
|
+
GROUP BY cluster, pickedWorker`,[a,e])}async function q(){return((await (0,d.c)()).all("SELECT DISTINCT comboName FROM routing_events WHERE comboName IS NOT NULL")||[]).map(a=>a.comboName).filter(Boolean)}async function r(a,b,c=14,e=200){if(!a||!b)return null;let f=await (0,d.c)(),g=new Date(Date.now()-864e5*c).toISOString(),h=f.all(`SELECT workerLatencyMs AS ms FROM routing_events
|
|
171
|
+
WHERE comboName = ? AND cluster = ? AND timestamp >= ?
|
|
172
|
+
AND workerLatencyMs IS NOT NULL
|
|
173
|
+
AND (meta IS NULL OR meta NOT LIKE '%"skippedRouter":true%')
|
|
174
|
+
ORDER BY timestamp DESC LIMIT ?`,[a,b,g,e]);if(!h?.length)return null;let i=h.map(a=>Number(a.ms)).filter(a=>Number.isFinite(a)).sort((a,b)=>a-b);if(!i.length)return null;let j=Math.floor(i.length/2);return i.length%2==0?(i[j-1]+i[j])/2:i[j]}async function s(a=90){let b=await (0,d.c)(),c=new Date(Date.now()-864e5*a).toISOString(),e=b.run("DELETE FROM routing_events WHERE timestamp < ?",[c]);return g(null),e?.changes??0}c(69353)},35381:(a,b,c)=>{"use strict";let d=c(84285),{ReadableStreamFrom:e,readableStreamClose:f,fullyReadBody:g,extractMimeType:h}=c(42425),{FormData:i,setFormDataState:j,getFormDataBoundary:k}=c(2887),{webidl:l}=c(32984),m=c(34589),{isErrored:n,isDisturbed:o}=c(57075),{isUint8Array:p}=c(73429),{serializeAMimeType:q}=c(16537),{multipartFormDataParser:r}=c(98369),{parseJSONFromBytes:s}=c(70745),{utf8DecodeBytes:t}=c(67449),u=new TextEncoder;function v(){}function w(a,b=!1){let c=null,g=null;c=l.is.ReadableStream(a)?a:l.is.Blob(a)?a.stream():new ReadableStream({pull(){},start(a){g=a},cancel(){},type:"bytes"}),m(l.is.ReadableStream(c));let h=null,i=null,j=null,o=null;if("string"==typeof a)i=a,o="text/plain;charset=UTF-8";else if(l.is.URLSearchParams(a))i=a.toString(),o="application/x-www-form-urlencoded;charset=UTF-8";else if(l.is.BufferSource(a))i=l.util.getCopyOfBytesHeldByBufferSource(a);else if(l.is.FormData(a)){let b=k(a),c=`--${b}\r
|
|
175
|
+
Content-Disposition: form-data`,d=a=>a.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),e=a=>a.replace(/\r?\n|\r/g,"\r\n"),f=[],g=new Uint8Array([13,10]);j=0;let l=!1;for(let[b,h]of a)if("string"==typeof h){let a=u.encode(c+`; name="${d(e(b))}"`+`\r
|
|
176
|
+
\r
|
|
177
|
+
${e(h)}\r
|
|
178
|
+
`);f.push(a),j+=a.byteLength}else{let a=u.encode(`${c}; name="${d(e(b))}"`+(h.name?`; filename="${d(h.name)}"`:"")+"\r\n"+`Content-Type: ${h.type||"application/octet-stream"}\r
|
|
179
|
+
\r
|
|
180
|
+
`);f.push(a,h,g),"number"==typeof h.size?j+=a.byteLength+h.size+g.byteLength:l=!0}let m=u.encode(`--${b}--\r
|
|
181
|
+
`);f.push(m),j+=m.byteLength,l&&(j=null),i=a,h=async function*(){for(let a of f)a.stream?yield*a.stream():yield a},o=`multipart/form-data; boundary=${b}`}else if(l.is.Blob(a))i=a,j=a.size,a.type&&(o=a.type);else if("function"==typeof a[Symbol.asyncIterator]){if(b)throw TypeError("keepalive");if(d.isDisturbed(a)||a.locked)throw TypeError("Response body object should not be disturbed or locked");c=l.is.ReadableStream(a)?a:e(a)}return("string"==typeof i||p(i))&&(h=()=>(j="string"==typeof i?Buffer.byteLength(i):i.length,i)),null!=h&&(async()=>{let a=h(),b=a?.[Symbol.asyncIterator]?.();if(b)for await(let a of b){if(n(c))break;a.length&&g.enqueue(new Uint8Array(a))}else a?.length&&!n(c)&&g.enqueue("string"==typeof a?u.encode(a):new Uint8Array(a));queueMicrotask(()=>f(g))})(),[{stream:c,source:i,length:j},o]}function x(a,b,c,d){try{l.brandCheck(a,c)}catch(a){return Promise.reject(a)}if(y(a=d(a)))return Promise.reject(TypeError("Body is unusable: Body has already been read"));let e=Promise.withResolvers(),f=e.reject,h=a=>{try{e.resolve(b(a))}catch(a){f(a)}};return null==a.body?h(Buffer.allocUnsafe(0)):g(a.body,h,f),e.promise}function y(a){let b=a.body;return null!=b&&(b.stream.locked||d.isDisturbed(b.stream))}function z(a){let b=h(a.headersList);return"failure"===b?null:b}a.exports={extractBody:w,safelyExtractBody:function(a,b=!1){return l.is.ReadableStream(a)&&(m(!d.isDisturbed(a),"The body has already been consumed."),m(!a.locked,"The stream is locked.")),w(a,b)},cloneBody:function(a){let{0:b,1:c}=a.stream.tee();return a.stream=b,{stream:c,length:a.length,source:a.source}},mixinBody:function(a,b){Object.assign(a.prototype,{blob(){return x(this,a=>{let c=z(b(this));return null===c?c="":c&&(c=q(c)),new Blob([a],{type:c})},a,b)},arrayBuffer(){return x(this,a=>new Uint8Array(a).buffer,a,b)},text(){return x(this,t,a,b)},json(){return x(this,s,a,b)},formData(){return x(this,a=>{let c=z(b(this));if(null!==c)switch(c.essence){case"multipart/form-data":{let b=r(a,c),d=new i;return j(d,b),d}case"application/x-www-form-urlencoded":{let b=new URLSearchParams(a.toString()),c=new i;for(let[a,d]of b)c.append(a,d);return c}}throw TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},a,b)},bytes(){return x(this,a=>new Uint8Array(a),a,b)},textStream(){let a=b(this);if(y(a))throw TypeError("Body is unusable: Body has already been read");if(null==a.body){let a,b=new ReadableStream({start:b=>{a=b},pull:()=>Promise.resolve(),cancel:()=>Promise.resolve()},{size:()=>1});return a.close(),b}let c=a.body.stream,d=new TextDecoderStream("UTF-8");return c.pipeThrough(d)}})},streamRegistry:new FinalizationRegistry(a=>{let b=a.deref();!b||b.locked||o(b)||n(b)||b.cancel("Response object has been garbage collected").catch(v)}),bodyUnusable:y}},35689:(a,b,c)=>{"use strict";let{PoolBase:d,kClients:e,kNeedDrain:f,kAddClient:g,kGetDispatcher:h,kHasDispatcher:i,kRemoveClient:j}=c(39065),k=c(40106),{InvalidArgumentError:l}=c(61448),m=c(84285),{kUrl:n}=c(49176),o=c(55285),p=Symbol("options"),q=Symbol("connections"),r=Symbol("factory");function s(a,b){return new k(a,b)}class t extends d{constructor(a,{connections:b,factory:c=s,connect:d,connectTimeout:f,tls:g,maxCachedSessions:h,socketPath:i,autoSelectFamily:j,autoSelectFamilyAttemptTimeout:k,allowH2:t,useH2c:u,clientTtl:v,...w}={}){if(null!=b&&(!Number.isFinite(b)||b<0))throw new l("invalid connections");if("function"!=typeof c)throw new l("factory must be a function.");if(null!=d&&"function"!=typeof d&&"object"!=typeof d)throw new l("connect must be a function or an object");"function"!=typeof d&&(d=o({...g,maxCachedSessions:h,allowH2:t,useH2c:u,socketPath:i,timeout:f,..."boolean"==typeof j?{autoSelectFamily:j,autoSelectFamilyAttemptTimeout:k}:void 0,...d})),super(w),this[q]=b||null,this[n]=m.parseOrigin(a),this[p]={...m.deepClone(w),connect:d,allowH2:t,useH2c:u,clientTtl:v,socketPath:i},this[r]=c,this.on("connect",(a,b)=>{if(null!=v&&v>0)for(let a of b)Object.assign(a,{ttl:Date.now()})}),this.on("connectionError",(a,b,c)=>{for(let a of b){let b=this[e].indexOf(a);-1!==b&&this[e].splice(b,1)}})}[h](){let a=this[p].clientTtl;for(let b=0;b<this[e].length;b++){let c=this[e][b];if(null!=a&&a>0&&c.ttl&&Date.now()-c.ttl>a)this[j](c),b--;else if(!c[f])return c}if(!this[q]||this[e].length<this[q]){let a=this[r](this[n],this[p]);return this[g](a),a}}[i](){let a=this[p].clientTtl;for(let b=0;b<this[e].length;b++){let c=this[e][b];if(null!=a&&a>0&&c.ttl&&Date.now()-c.ttl>a)this[j](c),b--;else if(!c[f])return!0}if(!this[q]||this[e].length<this[q]){let a=this[r](this[n],this[p]);return this[g](a),!0}return!1}}a.exports=t},36105:(a,b,c)=>{var d=c(45654);d.pki=d.pki||{};var e=a.exports=d.pki.oids=d.oids=d.oids||{};function f(a,b){e[a]=b,e[b]=a}f("1.2.840.113549.1.1.1","rsaEncryption"),f("1.2.840.113549.1.1.4","md5WithRSAEncryption"),f("1.2.840.113549.1.1.5","sha1WithRSAEncryption"),f("1.2.840.113549.1.1.7","RSAES-OAEP"),f("1.2.840.113549.1.1.8","mgf1"),f("1.2.840.113549.1.1.9","pSpecified"),f("1.2.840.113549.1.1.10","RSASSA-PSS"),f("1.2.840.113549.1.1.11","sha256WithRSAEncryption"),f("1.2.840.113549.1.1.12","sha384WithRSAEncryption"),f("1.2.840.113549.1.1.13","sha512WithRSAEncryption"),f("1.3.101.112","EdDSA25519"),f("1.2.840.10040.4.3","dsa-with-sha1"),f("1.3.14.3.2.7","desCBC"),f("1.3.14.3.2.26","sha1"),f("1.3.14.3.2.29","sha1WithRSASignature"),f("2.16.840.1.101.3.4.2.1","sha256"),f("2.16.840.1.101.3.4.2.2","sha384"),f("2.16.840.1.101.3.4.2.3","sha512"),f("2.16.840.1.101.3.4.2.4","sha224"),f("2.16.840.1.101.3.4.2.5","sha512-224"),f("2.16.840.1.101.3.4.2.6","sha512-256"),f("1.2.840.113549.2.2","md2"),f("1.2.840.113549.2.5","md5"),f("1.2.840.113549.1.7.1","data"),f("1.2.840.113549.1.7.2","signedData"),f("1.2.840.113549.1.7.3","envelopedData"),f("1.2.840.113549.1.7.4","signedAndEnvelopedData"),f("1.2.840.113549.1.7.5","digestedData"),f("1.2.840.113549.1.7.6","encryptedData"),f("1.2.840.113549.1.9.1","emailAddress"),f("1.2.840.113549.1.9.2","unstructuredName"),f("1.2.840.113549.1.9.3","contentType"),f("1.2.840.113549.1.9.4","messageDigest"),f("1.2.840.113549.1.9.5","signingTime"),f("1.2.840.113549.1.9.6","counterSignature"),f("1.2.840.113549.1.9.7","challengePassword"),f("1.2.840.113549.1.9.8","unstructuredAddress"),f("1.2.840.113549.1.9.14","extensionRequest"),f("1.2.840.113549.1.9.20","friendlyName"),f("1.2.840.113549.1.9.21","localKeyId"),f("1.2.840.113549.1.9.22.1","x509Certificate"),f("1.2.840.113549.1.12.10.1.1","keyBag"),f("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag"),f("1.2.840.113549.1.12.10.1.3","certBag"),f("1.2.840.113549.1.12.10.1.4","crlBag"),f("1.2.840.113549.1.12.10.1.5","secretBag"),f("1.2.840.113549.1.12.10.1.6","safeContentsBag"),f("1.2.840.113549.1.5.13","pkcs5PBES2"),f("1.2.840.113549.1.5.12","pkcs5PBKDF2"),f("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4"),f("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4"),f("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC"),f("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC"),f("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC"),f("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC"),f("1.2.840.113549.2.7","hmacWithSHA1"),f("1.2.840.113549.2.8","hmacWithSHA224"),f("1.2.840.113549.2.9","hmacWithSHA256"),f("1.2.840.113549.2.10","hmacWithSHA384"),f("1.2.840.113549.2.11","hmacWithSHA512"),f("1.2.840.113549.3.7","des-EDE3-CBC"),f("2.16.840.1.101.3.4.1.2","aes128-CBC"),f("2.16.840.1.101.3.4.1.22","aes192-CBC"),f("2.16.840.1.101.3.4.1.42","aes256-CBC"),f("2.5.4.3","commonName"),f("2.5.4.4","surname"),f("2.5.4.5","serialNumber"),f("2.5.4.6","countryName"),f("2.5.4.7","localityName"),f("2.5.4.8","stateOrProvinceName"),f("2.5.4.9","streetAddress"),f("2.5.4.10","organizationName"),f("2.5.4.11","organizationalUnitName"),f("2.5.4.12","title"),f("2.5.4.13","description"),f("2.5.4.15","businessCategory"),f("2.5.4.17","postalCode"),f("2.5.4.42","givenName"),f("2.5.4.65","pseudonym"),f("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName"),f("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName"),f("2.16.840.1.113730.1.1","nsCertType"),f("2.16.840.1.113730.1.13","nsComment"),e["2.5.29.1"]="authorityKeyIdentifier",e["2.5.29.2"]="keyAttributes",e["2.5.29.3"]="certificatePolicies",e["2.5.29.4"]="keyUsageRestriction",e["2.5.29.5"]="policyMapping",e["2.5.29.6"]="subtreesConstraint",e["2.5.29.7"]="subjectAltName",e["2.5.29.8"]="issuerAltName",e["2.5.29.9"]="subjectDirectoryAttributes",e["2.5.29.10"]="basicConstraints",e["2.5.29.11"]="nameConstraints",e["2.5.29.12"]="policyConstraints",e["2.5.29.13"]="basicConstraints",f("2.5.29.14","subjectKeyIdentifier"),f("2.5.29.15","keyUsage"),e["2.5.29.16"]="privateKeyUsagePeriod",f("2.5.29.17","subjectAltName"),f("2.5.29.18","issuerAltName"),f("2.5.29.19","basicConstraints"),e["2.5.29.20"]="cRLNumber",e["2.5.29.21"]="cRLReason",e["2.5.29.22"]="expirationDate",e["2.5.29.23"]="instructionCode",e["2.5.29.24"]="invalidityDate",e["2.5.29.25"]="cRLDistributionPoints",e["2.5.29.26"]="issuingDistributionPoint",e["2.5.29.27"]="deltaCRLIndicator",e["2.5.29.28"]="issuingDistributionPoint",e["2.5.29.29"]="certificateIssuer",e["2.5.29.30"]="nameConstraints",f("2.5.29.31","cRLDistributionPoints"),f("2.5.29.32","certificatePolicies"),e["2.5.29.33"]="policyMappings",e["2.5.29.34"]="policyConstraints",f("2.5.29.35","authorityKeyIdentifier"),e["2.5.29.36"]="policyConstraints",f("2.5.29.37","extKeyUsage"),e["2.5.29.46"]="freshestCRL",e["2.5.29.54"]="inhibitAnyPolicy",f("1.3.6.1.4.1.11129.2.4.2","timestampList"),f("1.3.6.1.5.5.7.1.1","authorityInfoAccess"),f("1.3.6.1.5.5.7.3.1","serverAuth"),f("1.3.6.1.5.5.7.3.2","clientAuth"),f("1.3.6.1.5.5.7.3.3","codeSigning"),f("1.3.6.1.5.5.7.3.4","emailProtection"),f("1.3.6.1.5.5.7.3.8","timeStamping")},36649:(a,b,c)=>{"use strict";let{wellknownHeaderNames:d,headerNameLowerCasedRecord:e}=c(28820);class f{value=null;left=null;middle=null;right=null;code;constructor(a,b,c){if(void 0===c||c>=a.length)throw TypeError("Unreachable");if((this.code=a.charCodeAt(c))>127)throw TypeError("key must be ascii string");a.length!==++c?this.middle=new f(a,b,c):this.value=b}add(a,b){let c=a.length;if(0===c)throw TypeError("Unreachable");let d=0,e=this;for(;;){let g=a.charCodeAt(d);if(g>127)throw TypeError("key must be ascii string");if(e.code===g)if(c===++d){e.value=b;break}else if(null!==e.middle)e=e.middle;else{e.middle=new f(a,b,d);break}else if(e.code<g)if(null!==e.left)e=e.left;else{e.left=new f(a,b,d);break}else if(null!==e.right)e=e.right;else{e.right=new f(a,b,d);break}}}search(a){let b=a.length,c=0,d=this;for(;null!==d&&c<b;){let e=a[c];for(e<=90&&e>=65&&(e|=32);null!==d;){if(e===d.code){if(b===++c)return d;d=d.middle;break}d=d.code<e?d.left:d.right}}return null}}class g{node=null;insert(a,b){null===this.node?this.node=new f(a,b,0):this.node.add(a,b)}lookup(a){return this.node?.search(a)?.value??null}}let h=new g;for(let a=0;a<d.length;++a){let b=e[d[a]];h.insert(b,b)}a.exports={TernarySearchTree:g,tree:h}},36902:(a,b,c)=>{var d=c(45654);c(33889),c(32e3),c(29984),function(){if(d.prime){a.exports=d.prime;return}var b=a.exports=d.prime=d.prime||{},c=d.jsbn.BigInteger,e=[6,4,2,4,2,4,6,2],f=new c(null);f.fromInt(30);var g=function(a,b){return a|b};function h(a,b,c,f){var g,h=i(a,b),j=(g=h.bitLength())<=100?27:g<=150?18:g<=200?15:g<=250?12:g<=300?9:g<=350?8:g<=400?7:g<=500?6:g<=600?5:g<=800?4:g<=1250?3:2;"millerRabinTests"in c&&(j=c.millerRabinTests);var k=10;"maxBlockTime"in c&&(k=c.maxBlockTime),function a(b,c,f,g,h,j,k){var l=+new Date;do{if(b.bitLength()>c&&(b=i(c,f)),b.isProbablePrime(h))return k(null,b);b.dAddOffset(e[g++%8],0)}while(j<0||new Date-l<j);d.util.setImmediate(function(){a(b,c,f,g,h,j,k)})}(h,a,b,0,j,k,f)}function i(a,b){var d=new c(a,b),e=a-1;return d.testBit(e)||d.bitwiseTo(c.ONE.shiftLeft(e),g,d),d.dAddOffset(31-d.mod(f).byteValue(),0),d}b.generateProbablePrime=function(a,b,e){"function"==typeof b&&(e=b,b={});var f,g,j,k,l=(b=b||{}).algorithm||"PRIMEINC";"string"==typeof l&&(l={name:l}),l.options=l.options||{};var m=b.prng||d.random;if("PRIMEINC"===l.name){return f=a,g={nextBytes:function(a){for(var b=m.getBytesSync(a.length),c=0;c<a.length;++c)a[c]=b.charCodeAt(c)}},j=l.options,k=e,"workers"in j?function(a,b,e,f){if("u"<typeof Worker)return h(a,b,e,f);var g=i(a,b),j=e.workers,k=e.workLoad||100,l=30*k/8,m=e.workerScript||"forge/prime.worker.js";if(-1===j)return d.util.estimateCores(function(a,b){a&&(b=2),j=b-1,n()});function n(){j=Math.max(1,j);for(var d=[],e=0;e<j;++e)d[e]=new Worker(m);for(var h=j,e=0;e<j;++e)d[e].addEventListener("message",o);var n=!1;function o(e){if(!n){--h;var j=e.data;if(j.found){for(var m=0;m<d.length;++m)d[m].terminate();return n=!0,f(null,new c(j.prime,16))}g.bitLength()>a&&(g=i(a,b));var o=g.toString(16);e.target.postMessage({hex:o,workLoad:k}),g.dAddOffset(l,0)}}}n()}(f,g,j,k):h(f,g,j,k)}throw Error("Invalid prime generation algorithm: "+l.name)}}()},37071:(a,b,c)=>{"use strict";c.d(b,{T:()=>s});var d=c(93048);let e=`You are Codex, based on GPT-5. You are running as a coding agent in the Codex CLI on a user's computer.
|
|
182
|
+
|
|
183
|
+
## General
|
|
184
|
+
|
|
185
|
+
- When searching for text or files, prefer using \`rg\` or \`rg --files\` respectively because \`rg\` is much faster than alternatives like \`grep\`. (If the \`rg\` command is not found, then use alternatives.)
|
|
186
|
+
|
|
187
|
+
## Editing constraints
|
|
188
|
+
|
|
189
|
+
- Default to ASCII when editing or creating files. Only introduce non-ASCII or other Unicode characters when there is a clear justification and the file already uses them.
|
|
190
|
+
- Add succinct code comments that explain what is going on if code is not self-explanatory. You should not add comments like "Assigns the value to the variable", but a brief comment might be useful ahead of a complex code block that the user would otherwise have to spend time parsing out. Usage of these comments should be rare.
|
|
191
|
+
- Try to use apply_patch for single file edits, but it is fine to explore other options to make the edit if it does not work well. Do not use apply_patch for changes that are auto-generated (i.e. generating package.json or running a lint or format command like gofmt) or when scripting is more efficient (such as search and replacing a string across a codebase).
|
|
192
|
+
- You may be in a dirty git worktree.
|
|
193
|
+
* NEVER revert existing changes you did not make unless explicitly requested, since these changes were made by the user.
|
|
194
|
+
* If asked to make a commit or code edits and there are unrelated changes to your work or changes that you didn't make in those files, don't revert those changes.
|
|
195
|
+
* If the changes are in files you've touched recently, you should read carefully and understand how you can work with the changes rather than reverting them.
|
|
196
|
+
* If the changes are in unrelated files, just ignore them and don't revert them.
|
|
197
|
+
- Do not amend a commit unless explicitly requested to do so.
|
|
198
|
+
- While you are working, you might notice unexpected changes that you didn't make. If this happens, STOP IMMEDIATELY and ask the user how they would like to proceed.
|
|
199
|
+
- **NEVER** use destructive commands like \`git reset --hard\` or \`git checkout --\` unless specifically requested or approved by the user.
|
|
200
|
+
|
|
201
|
+
## Plan tool
|
|
202
|
+
|
|
203
|
+
When using the planning tool:
|
|
204
|
+
- Skip using the planning tool for straightforward tasks (roughly the easiest 25%).
|
|
205
|
+
- Do not make single-step plans.
|
|
206
|
+
- When you made a plan, update it after having performed one of the sub-tasks that you shared on the plan.
|
|
207
|
+
|
|
208
|
+
## Codex CLI harness, sandboxing, and approvals
|
|
209
|
+
|
|
210
|
+
The Codex CLI harness supports several different configurations for sandboxing and escalation approvals that the user can choose from.
|
|
211
|
+
|
|
212
|
+
Filesystem sandboxing defines which files can be read or written. The options for \`sandbox_mode\` are:
|
|
213
|
+
- **read-only**: The sandbox only permits reading files.
|
|
214
|
+
- **workspace-write**: The sandbox permits reading files, and editing files in \`cwd\` and \`writable_roots\`. Editing files in other directories requires approval.
|
|
215
|
+
- **danger-full-access**: No filesystem sandboxing - all commands are permitted.
|
|
216
|
+
|
|
217
|
+
Network sandboxing defines whether network can be accessed without approval. Options for \`network_access\` are:
|
|
218
|
+
- **restricted**: Requires approval
|
|
219
|
+
- **enabled**: No approval needed
|
|
220
|
+
|
|
221
|
+
Approvals are your mechanism to get user consent to run shell commands without the sandbox. Possible configuration options for \`approval_policy\` are
|
|
222
|
+
- **untrusted**: The harness will escalate most commands for user approval, apart from a limited allowlist of safe "read" commands.
|
|
223
|
+
- **on-failure**: The harness will allow all commands to run in the sandbox (if enabled), and failures will be escalated to the user for approval to run again without the sandbox.
|
|
224
|
+
- **on-request**: Commands will be run in the sandbox by default, and you can specify in your tool call if you want to escalate a command to run without sandboxing. (Note that this mode is not always available. If it is, you'll see parameters for it in the \`shell\` command description.)
|
|
225
|
+
- **never**: This is a non-interactive mode where you may NEVER ask the user for approval to run commands. Instead, you must always persist and work around constraints to solve the task for the user. You MUST do your utmost best to finish the task and validate your work before yielding. If this mode is paired with \`danger-full-access\`, take advantage of it to deliver the best outcome for the user. Further, in this mode, your default testing philosophy is overridden: Even if you don't see local patterns for testing, you may add tests and scripts to validate your work. Just remove them before yielding.
|
|
226
|
+
|
|
227
|
+
When you are running with \`approval_policy == on-request\`, and sandboxing enabled, here are scenarios where you'll need to request approval:
|
|
228
|
+
- You need to run a command that writes to a directory that requires it (e.g. running tests that write to /var)
|
|
229
|
+
- You need to run a GUI app (e.g., open/xdg-open/osascript) to open browsers or files.
|
|
230
|
+
- You are running sandboxed and need to run a command that requires network access (e.g. installing packages)
|
|
231
|
+
- If you run a command that is important to solving the user's query, but it fails because of sandboxing, rerun the command with approval. ALWAYS proceed to use the \`sandbox_permissions\` and \`justification\` parameters - do not message the user before requesting approval for the command.
|
|
232
|
+
- You are about to take a potentially destructive action such as an \`rm\` or \`git reset\` that the user did not explicitly ask for
|
|
233
|
+
- (for all of these, you should weigh alternative paths that do not require approval)
|
|
234
|
+
|
|
235
|
+
When \`sandbox_mode\` is set to read-only, you'll need to request approval for any command that isn't a read.
|
|
236
|
+
|
|
237
|
+
You will be told what filesystem sandboxing, network sandboxing, and approval mode are active in a developer or user message. If you are not told about this, assume that you are running with workspace-write, network sandboxing enabled, and approval on-failure.
|
|
238
|
+
|
|
239
|
+
Although they introduce friction to the user because your work is paused until the user responds, you should leverage them when necessary to accomplish important work. If the completing the task requires escalated permissions, Do not let these settings or the sandbox deter you from attempting to accomplish the user's task unless it is set to "never", in which case never ask for approvals.
|
|
240
|
+
|
|
241
|
+
When requesting approval to execute a command that will require escalated privileges:
|
|
242
|
+
- Provide the \`sandbox_permissions\` parameter with the value \`"require_escalated"\`
|
|
243
|
+
- Include a short, 1 sentence explanation for why you need escalated permissions in the justification parameter
|
|
244
|
+
|
|
245
|
+
## Special user requests
|
|
246
|
+
|
|
247
|
+
- If the user makes a simple request (such as asking for the time) which you can fulfill by running a terminal command (such as \`date\`), you should do so.
|
|
248
|
+
- If the user asks for a "review", default to a code review mindset: prioritise identifying bugs, risks, behavioural regressions, and missing tests. Findings must be the primary focus of the response - keep summaries or overviews brief and only after enumerating the issues. Present findings first (ordered by severity with file/line references), follow with open questions or assumptions, and offer a change-summary only as a secondary detail. If no findings are discovered, state that explicitly and mention any residual risks or testing gaps.
|
|
249
|
+
|
|
250
|
+
## Frontend tasks
|
|
251
|
+
When doing frontend design tasks, avoid collapsing into "AI slop" or safe, average-looking layouts.
|
|
252
|
+
Aim for interfaces that feel intentional, bold, and a bit surprising.
|
|
253
|
+
- Typography: Use expressive, purposeful fonts and avoid default stacks (Inter, Roboto, Arial, system).
|
|
254
|
+
- Color & Look: Choose a clear visual direction; define CSS variables; avoid purple-on-white defaults. No purple bias or dark mode bias.
|
|
255
|
+
- Motion: Use a few meaningful animations (page-load, staggered reveals) instead of generic micro-motions.
|
|
256
|
+
- Background: Don't rely on flat, single-color backgrounds; use gradients, shapes, or subtle patterns to build atmosphere.
|
|
257
|
+
- Overall: Avoid boilerplate layouts and interchangeable UI patterns. Vary themes, type families, and visual languages across outputs.
|
|
258
|
+
- Ensure the page loads properly on both desktop and mobile
|
|
259
|
+
|
|
260
|
+
Exception: If working within an existing website or design system, preserve the established patterns, structure, and visual language.
|
|
261
|
+
|
|
262
|
+
## Presenting your work and final message
|
|
263
|
+
|
|
264
|
+
You are producing plain text that will later be styled by the CLI. Follow these rules exactly. Formatting should make results easy to scan, but not feel mechanical. Use judgment to decide how much structure adds value.
|
|
265
|
+
|
|
266
|
+
- Default: be very concise; friendly coding teammate tone.
|
|
267
|
+
- Ask only when needed; suggest ideas; mirror the user's style.
|
|
268
|
+
- For substantial work, summarize clearly; follow final‑answer formatting.
|
|
269
|
+
- Skip heavy formatting for simple confirmations.
|
|
270
|
+
- Don't dump large files you've written; reference paths only.
|
|
271
|
+
- No "save/copy this file" - User is on the same machine.
|
|
272
|
+
- Offer logical next steps (tests, commits, build) briefly; add verify steps if you couldn't do something.
|
|
273
|
+
- For code changes:
|
|
274
|
+
* Lead with a quick explanation of the change, and then give more details on the context covering where and why a change was made. Do not start this explanation with "summary", just jump right in.
|
|
275
|
+
* If there are natural next steps the user may want to take, suggest them at the end of your response. Do not make suggestions if there are no natural next steps.
|
|
276
|
+
* When suggesting multiple options, use numeric lists for the suggestions so the user can quickly respond with a single number.
|
|
277
|
+
- The user does not command execution outputs. When asked to show the output of a command (e.g. \`git show\`), relay the important details in your answer or summarize the key lines so the user understands the result.
|
|
278
|
+
|
|
279
|
+
### Final answer structure and style guidelines
|
|
280
|
+
|
|
281
|
+
- Plain text; CLI handles styling. Use structure only when it helps scanability.
|
|
282
|
+
- Headers: optional; short Title Case (1-3 words) wrapped in **…**; no blank line before the first bullet; add only if they truly help.
|
|
283
|
+
- Bullets: use - ; merge related points; keep to one line when possible; 4–6 per list ordered by importance; keep phrasing consistent.
|
|
284
|
+
- Monospace: backticks for commands/paths/env vars/code ids and inline examples; use for literal keyword bullets; never combine with **.
|
|
285
|
+
- Code samples or multi-line snippets should be wrapped in fenced code blocks; include an info string as often as possible.
|
|
286
|
+
- Structure: group related bullets; order sections general → specific → supporting; for subsections, start with a bolded keyword bullet, then items; match complexity to the task.
|
|
287
|
+
- Tone: collaborative, concise, factual; present tense, active voice; self‑contained; no "above/below"; parallel wording.
|
|
288
|
+
- Don'ts: no nested bullets/hierarchies; no ANSI codes; don't cram unrelated keywords; keep keyword lists short—wrap/reformat if long; avoid naming formatting styles in answers.
|
|
289
|
+
- Adaptation: code explanations → precise, structured with code refs; simple tasks → lead with outcome; big changes → logical walkthrough + rationale + next actions; casual one-offs → plain sentences, no headers/bullets.
|
|
290
|
+
- File References: When referencing files in your response follow the below rules:
|
|
291
|
+
* Use inline code to make file paths clickable.
|
|
292
|
+
* Each reference should have a stand alone path. Even if it's the same file.
|
|
293
|
+
* Accepted: absolute, workspace‑relative, a/ or b/ diff prefixes, or bare filename/suffix.
|
|
294
|
+
* Optionally include line/column (1‑based): :line[:column] or #Lline[Ccolumn] (column defaults to 1).
|
|
295
|
+
* Do not use URIs like file://, vscode://, or https://.
|
|
296
|
+
* Do not provide range of lines
|
|
297
|
+
* 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(82689),l=c(86363),m=c(49623);let n=["server_is_overloaded","service_unavailable_error"],o=/^(rs|fc|resp|msg)_/,p=new Set(["image_generation","web_search","web_search_preview","file_search","computer","computer_use_preview","code_interpreter","mcp","local_shell","tool_search"]),q=new Set(["custom"]),r=new Set(["model","input","instructions","tools","tool_choice","stream","store","reasoning","service_tier","include","prompt_cache_key","client_metadata","text"]);class s 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,l.s)("CODEX",`execute start | inputItems=${c} | images=${b} | sessionId=${this._currentSessionId||"pending"}`),b>0){let b=Date.now();await this.prefetchImages(a.body),(0,l.s)("CODEX",`prefetchImages done | ${Date.now()-b}ms`)}else await this.prefetchImages(a.body);let d={...k.cI,...this.config.retry},{attempts:e,delayMs:f}=(0,k.DR)(d[503]),g=0;for(;;){let b=await super.execute(a),c=await this._peekSseOverloaded(b.response);if(!c.matched)return c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;if(g>=e)return a.log?.warn?.("RETRY",`CODEX | SSE overloaded "${c.matched}" — retries exhausted (${g}/${e})`),c.replacementBody&&(b.response=new Response(c.replacementBody,{status:b.response.status,statusText:b.response.statusText,headers:b.response.headers})),b;g++,a.log?.debug?.("RETRY",`CODEX | SSE "${c.matched}" retry ${g}/${e} after ${f/1e3}s`),(0,l.s)("CODEX",`SSE overloaded "${c.matched}" → retry ${g}/${e} in ${f}ms`);try{await b.response.body?.cancel?.()}catch{}await new Promise(a=>setTimeout(a,f))}}async _peekSseOverloaded(a){if(!a||!a.ok||!a.body)return{matched:null,replacementBody:null};let b=a.body.getReader(),c=new TextDecoder,d=[],e="",f=null;try{for(;e.length<4096;){let{done:a,value:g}=await b.read();if(a)break;d.push(g),e+=c.decode(g,{stream:!0});let h=n.find(a=>e.includes(a));if(h){f=h;break}}}catch(a){(0,l.s)("CODEX",`peek read error: ${a.message}`)}b.releaseLock();let g=a.body,h=null;return{matched:f,replacementBody:new ReadableStream({start(a){for(let b of d)a.enqueue(b);h=g.getReader()},async pull(a){try{let{done:b,value:c}=await h.read();if(b)return void a.close();a.enqueue(c)}catch(b){a.error(b)}},cancel(a){try{h?.cancel(a)}catch{}}})}}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,m.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&&o.test(a))return!1;if(a&&"object"==typeof a&&!Array.isArray(a)){if("item_reference"===a.type)return!1;"string"==typeof a.id&&o.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!!q.has(c)||!!c&&!a.function&&"string"!=typeof a.name&&p.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)))r.has(a)||delete b[a];return b}}},37417:(a,b,c)=>{"use strict";let{InvalidArgumentError:d,MaxOriginsReachedError:e}=c(61448),{kBusy:f,kClients:g,kConnected:h,kRunning:i,kClose:j,kDestroy:k,kDispatch:l,kUrl:m}=c(49176),n=c(5318),o=c(35689),p=c(40106),q=c(84285),r=Symbol("onConnect"),s=Symbol("onDisconnect"),t=Symbol("onConnectionError"),u=Symbol("onDrain"),v=Symbol("factory"),w=Symbol("options"),x=Symbol("origins");function y(a,b){return b&&1===b.connections?new p(a,b):new o(a,b)}class z extends n{constructor({factory:a=y,maxOrigins:b=1/0,connect:c,...e}={}){if("function"!=typeof a)throw new d("factory must be a function.");if(null!=c&&"function"!=typeof c&&"object"!=typeof c)throw new d("connect must be a function or an object");if("number"!=typeof b||Number.isNaN(b)||b<=0)throw new d("maxOrigins must be a number greater than 0");super(e),c&&"function"!=typeof c&&(c={...c}),this[w]={...q.deepClone(e),maxOrigins:b,connect:c},this[v]=a,this[g]=new Map,this[x]=new Set,this[u]=(a,b)=>{this.emit("drain",a,[this,...b])},this[r]=(a,b)=>{this.emit("connect",a,[this,...b])},this[s]=(a,b,c)=>{this.emit("disconnect",a,[this,...b],c)},this[t]=(a,b,c)=>{this.emit("connectionError",a,[this,...b],c)}}get[i](){let a=0;for(let b of this[g].values())a+=b[i];return a}[l](a,b){let c;if(a.origin&&("string"==typeof a.origin||a.origin instanceof URL))c=String(a.origin);else throw new d("opts.origin must be a non-empty string or URL.");let i=a.allowH2??this[w].allowH2,j=!1===i?`${c}#http1-only`:c;if(this[x].size>=this[w].maxOrigins&&!this[x].has(c))throw new e;let k=this[g].get(j);if(!k){k=this[v](a.origin,!1===i?{...this[w],allowH2:!1}:this[w]);let b=()=>{if(this[g].get(j)!==k||k[h]>0||k[f])return;this[g].delete(j),k.destroyed||k.close();let a=!1;for(let b of this[g].values())if(b[m].origin===k[m].origin){a=!0;break}a||this[x].delete(k[m].origin)};k.on("drain",this[u]).on("connect",this[r]).on("disconnect",(a,c,d)=>{b(),this[s](a,c,d)}).on("connectionError",(a,c,d)=>{b(),this[t](a,c,d)}),this[g].set(j,k),this[x].add(c)}return k.dispatch(a,b)}[j](){let a=[];for(let b of this[g].values())a.push(b.close());return this[g].clear(),Promise.all(a)}[k](a){let b=[];for(let c of this[g].values())b.push(c.destroy(a));return this[g].clear(),Promise.all(b)}get stats(){let a={};for(let b of this[g].values())b.stats&&(a[b[m].origin]=b.stats);return a}}a.exports=z},37436:(a,b,c)=>{"use strict";let d=c(29021),e=c(33873),f=c(21820),g="switchboard";function h(){return"win32"===process.platform?e.join(process.env.APPDATA||e.join(f.homedir(),"AppData","Roaming"),g):e.join(f.homedir(),`.${g}`)}let i=function(){let a=process.env.DATA_DIR;if(!a)return h();try{return d.mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${g}`),h();throw b}}(),j=e.join(i,"mitm");a.exports={DATA_DIR:i,MITM_DIR:j}},37606:(a,b,c)=>{"use strict";c.d(b,{Ay:()=>z});var d=c(93048),e=c(38421),f=c(19016),g=c(24725);let h=e.xq["perplexity-web"].baseUrl,i="2.18",j={"pplx-auto":["concise","pplx_pro"],"pplx-sonar":["copilot","experimental"],"pplx-gpt":["copilot","gpt54"],"pplx-gemini":["copilot","gemini31pro_high"],"pplx-sonnet":["copilot","claude46sonnet"],"pplx-opus":["copilot","claude46opus"],"pplx-nemotron":["copilot","nv_nemotron_3_super"]},k={"pplx-gpt":"gpt54_thinking","pplx-sonnet":"claude46sonnetthinking","pplx-opus":"claude46opusthinking"},l=/\[\d+\]/g,m=/<grok:[^>]*>.*?<\/grok:[^>]*>/gs,n=/<grok:[^>]*\/>/g,o=/<[?]xml[^?]*[?]>/g,p=/<\/?response\b[^>]*>/gi,q=/ {2,}/g,r=/\n{3,}/g,s=new Map;function t(a){let b=a.map(a=>`${a.role}:${a.content}`).join("\n"),c=0x811c9dc5;for(let a=0;a<b.length;a++)c^=b.charCodeAt(a),c=0x1000193*c>>>0;return c.toString(16).padStart(8,"0")}function u(a,b,c,d){if(!d)return;let e=t([...a,{role:"user",content:b},{role:"assistant",content:c}]);if(s.set(e,{backendUuid:d,ts:Date.now()}),s.size>200){let a=null,b=1/0;for(let[c,d]of s)d.ts<b&&(b=d.ts,a=c);a&&s.delete(a)}}function v(a,b=!0){let c=a;return c=(c=(c=(c=(c=c.replace(o,"")).replace(l,"")).replace(m,"")).replace(n,"")).replace(p,""),b&&(c=(c=(c=c.replace(q," ")).replace(r,"\n\n")).trim()),c}async function*w(a,b){let c=a.getReader(),d=new TextDecoder,e="",f=[];function g(){if(0===f.length)return null;let a=f.join("\n");f=[];let b=a.trim();if(!b||"[DONE]"===b)return"done";try{return JSON.parse(b)}catch{return null}}try{for(;;){if(b?.aborted)return;let{value:a,done:h}=await c.read();if(h)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a);e=e.slice(a+1);let c=b.endsWith("\r")?b.slice(0,-1):b;if(""===c){let a=g();if("done"===a)return;a&&(yield a);continue}if(c.startsWith("data:")&&f.push(c.slice(5).trimStart()),"event: end_of_stream"===c)return}}(e+=d.decode()).trim().startsWith("data:")&&f.push(e.trim().slice(5).trimStart());let a=g();a&&"done"!==a&&(yield a)}finally{c.releaseLock()}}async function*x(a,b){let c="",d=null,e=0,f=new Set;for await(let g of w(a,b)){if(g.error_code||g.error_message)return void(yield{error:g.error_message||`Perplexity error: ${g.error_code}`,done:!0});g.backend_uuid&&(d=g.backend_uuid);let a=g.blocks??[];for(let b of a){let a=b.intended_usage??"";if("pro_search_steps"===a&&b.plan_block?.steps){for(let a of b.plan_block.steps)if("SEARCH_WEB"===a.step_type)for(let b of a.search_web_content?.queries??[]){let a=b.query??"";a&&!f.has(a)&&(f.add(a),yield{thinking:`Searching: ${a}`,backendUuid:d??void 0})}else if("READ_RESULTS"===a.step_type)for(let b of(a.read_results_content?.urls??[]).slice(0,3))b&&!f.has(b)&&(f.add(b),yield{thinking:`Reading: ${b}`,backendUuid:d??void 0})}if("plan"===a&&b.plan_block?.goals)for(let a of b.plan_block.goals){let b=a.description??"";b&&!f.has(b)&&(f.add(b),yield{thinking:b,backendUuid:d??void 0})}if(!a.includes("markdown"))continue;let g=b.markdown_block;if(!g)continue;let h=g.chunks??[];if(0!==h.length)if("DONE"===g.progress)c=h.join("");else{let a=c+h.join("");if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}}if(0===a.length&&g.text){let a=g.text.trim();if(a.length>e){let b=a.slice(e);c=a,e=a.length,yield{delta:b,answer:c,backendUuid:d??void 0}}}if(g.final||"COMPLETED"===g.status)break}yield{delta:"",answer:c,backendUuid:d??void 0,done:!0}}async function y(a,b,c,d,e,f,g){let h="",i=null,j=[];for await(let b of x(a,g)){if(b.backendUuid&&(i=b.backendUuid),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"PPLX_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){j.push(b.thinking);continue}if(b.done){h=b.answer||h;break}b.answer&&(h=b.answer)}u(e,f,h=v(h),i);let k=j.length>0?j.join("\n"):void 0,l={role:"assistant",content:h};k&&(l.reasoning_content=k);let m=Math.ceil(f.length/4),n=Math.ceil(h.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:null,choices:[{index:0,message:l,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:m,completion_tokens:n,total_tokens:m+n}}),{status:200,headers:{"Content-Type":"application/json"}})}class z extends d.Hv{constructor(){super("perplexity-web",e.xq["perplexity-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:l}){var m,n,o,p,q;let r,w,z,A,B,C=b?.messages;if(!C||!Array.isArray(C)||0===C.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:h,headers:{},transformedBody:b};(b?.thinking===!0||b?.reasoning_effort!=null&&"none"!==b.reasoning_effort)&&k[a]?(r="copilot",w=k[a],l?.info?.("PPLX-WEB",`Thinking mode → ${a} using ${w}`)):j[a]?[r,w]=j[a]:(r="copilot",w=a,l?.info?.("PPLX-WEB",`Unmapped model ${a}, using as raw preference`));let D=function(a){let b="",c=[];for(let d of a){let a=String(d.role||"user");"developer"===a&&(a="system");let e="";"string"==typeof d.content?e=d.content:Array.isArray(d.content)&&(e=d.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),e.trim()&&("system"===a?b+=e+"\n":("user"===a||"assistant"===a)&&c.push({role:a,content:e}))}let d="";return c.length>0&&"user"===c[c.length-1].role&&(d=c.pop().content),{systemMsg:b,history:c,currentMsg:d}}(C),E=function(a){if(0===a.length)return null;let b=t(a),c=s.get(b);return c?Date.now()-c.ts>36e5?(s.delete(b),null):c.backendUuid:null}(D.history);E&&l?.info?.("PPLX-WEB",`Session continue: ${E.slice(0,12)}...`);let F=function(a,b,c){if(b)return a.currentMsg;let d={},e=[];a.systemMsg.trim()&&e.push(a.systemMsg.trim());let f=function(a){if(!Array.isArray(a)||0===a.length)return"";let b=a.map(a=>{let b=a?.function||a||{},c=b.name||"unnamed",d=(b.description||"").split("\n")[0].slice(0,200);return`- ${c}: ${d}`});return`Available tools (reference only, cannot invoke):
|
|
298
|
+
${b.join("\n")}`}(c);f&&e.push(f),e.push("You have built-in web search. Answer questions directly using search results."),d.instructions=e,a.history.length>0&&(d.history=a.history),a.currentMsg?d.query=a.currentMsg:0===a.history.length&&(d.query="");let g=JSON.stringify(d);return g.length>96e3?g.slice(-96e3):g}(D,E,b?.tools);if(!F.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:h,headers:{},transformedBody:b};let G=(m=r,n=w,B="u">typeof Intl?Intl.DateTimeFormat().resolvedOptions().timeZone:"UTC",{query_str:F,params:{query_str:F,search_focus:"internet",mode:m,model_preference:n,sources:["web"],attachments:[],frontend_uuid:crypto.randomUUID(),frontend_context_uuid:crypto.randomUUID(),version:i,language:"en-US",timezone:B,search_recency_filter:null,is_incognito:!0,use_schematized_api:!0,last_backend_uuid:E}}),H={"Content-Type":"application/json",Accept:"text/event-stream",Origin:"https://www.perplexity.ai",Referer:"https://www.perplexity.ai/","User-Agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36","X-App-ApiClient":"default","X-App-ApiVersion":i};d.accessToken?H.Authorization=`Bearer ${d.accessToken}`:d.apiKey&&(H.Cookie=`__Secure-next-auth.session-token=${d.apiKey}`),l?.info?.("PPLX-WEB",`Query to ${a} (pref=${w}, mode=${r}), len=${F.length}`);let I={method:"POST",headers:H,body:JSON.stringify(G)};e&&(I.signal=e);try{z=await fetch(h,I)}catch(a){return l?.error?.("PPLX-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Perplexity connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:h,headers:H,transformedBody:G}}if(!z.ok){let a=z.status,b=`Perplexity returned HTTP ${a}`;return 401===a||403===a?b="Perplexity auth failed — session cookie may be expired. Re-paste your __Secure-next-auth.session-token.":429===a&&(b="Perplexity rate limited. Wait a moment and retry."),l?.warn?.("PPLX-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:h,headers:H,transformedBody:G}}if(!z.body)return{response:new Response(JSON.stringify({error:{message:"Perplexity returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:h,headers:H,transformedBody:G};let J=`chatcmpl-pplx-${crypto.randomUUID().slice(0,12)}`,K=Math.floor(Date.now()/1e3);if(c){let b;A=new Response((o=z.body,p=D.history,q=D.currentMsg,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="",h=null;for await(let f of x(o,e)){if(f.backendUuid&&(h=f.backendUuid),f.error){c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{reasoning_content:f.thinking+"\n"},finish_reason:null,logprobs:null}]})));continue}if(f.done){d=f.answer||d;break}let e=f.delta||"";e&&(e=v(e,!1))&&c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:e},finish_reason:null,logprobs:null}]}))),f.answer&&(d=f.answer)}c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode(f.$U)),u(p,q,v(d),h)}catch(d){c.enqueue(b.encode((0,g.N)({id:J,object:"chat.completion.chunk",created:K,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode(f.$U))}finally{c.close()}}})),{status:200,headers:{...f.uB}})}else A=await y(z.body,a,J,K,D.history,D.currentMsg,e);return{response:A,url:h,headers:H,transformedBody:G}}}},37691:(a,b,c)=>{var d=c(45654);c(1277),c(33889);var e=a.exports=d.sha512=d.sha512||{};d.md.sha512=d.md.algorithms.sha512=e;var f=d.sha384=d.sha512.sha384=d.sha512.sha384||{};f.create=function(){return e.create("SHA-384")},d.md.sha384=d.md.algorithms.sha384=f,d.sha512.sha256=d.sha512.sha256||{create:function(){return e.create("SHA-512/256")}},d.md["sha512/256"]=d.md.algorithms["sha512/256"]=d.sha512.sha256,d.sha512.sha224=d.sha512.sha224||{create:function(){return e.create("SHA-512/224")}},d.md["sha512/224"]=d.md.algorithms["sha512/224"]=d.sha512.sha224,e.create=function(a){if(h||(g=String.fromCharCode(128)+d.util.fillString("\0",128),i=[[0x428a2f98,0xd728ae22],[0x71374491,0x23ef65cd],[0xb5c0fbcf,0xec4d3b2f],[0xe9b5dba5,0x8189dbbc],[0x3956c25b,0xf348b538],[0x59f111f1,0xb605d019],[0x923f82a4,0xaf194f9b],[0xab1c5ed5,0xda6d8118],[0xd807aa98,0xa3030242],[0x12835b01,0x45706fbe],[0x243185be,0x4ee4b28c],[0x550c7dc3,0xd5ffb4e2],[0x72be5d74,0xf27b896f],[0x80deb1fe,0x3b1696b1],[0x9bdc06a7,0x25c71235],[0xc19bf174,0xcf692694],[0xe49b69c1,0x9ef14ad2],[0xefbe4786,0x384f25e3],[0xfc19dc6,0x8b8cd5b5],[0x240ca1cc,0x77ac9c65],[0x2de92c6f,0x592b0275],[0x4a7484aa,0x6ea6e483],[0x5cb0a9dc,0xbd41fbd4],[0x76f988da,0x831153b5],[0x983e5152,0xee66dfab],[0xa831c66d,0x2db43210],[0xb00327c8,0x98fb213f],[0xbf597fc7,0xbeef0ee4],[0xc6e00bf3,0x3da88fc2],[0xd5a79147,0x930aa725],[0x6ca6351,0xe003826f],[0x14292967,0xa0e6e70],[0x27b70a85,0x46d22ffc],[0x2e1b2138,0x5c26c926],[0x4d2c6dfc,0x5ac42aed],[0x53380d13,0x9d95b3df],[0x650a7354,0x8baf63de],[0x766a0abb,0x3c77b2a8],[0x81c2c92e,0x47edaee6],[0x92722c85,0x1482353b],[0xa2bfe8a1,0x4cf10364],[0xa81a664b,0xbc423001],[0xc24b8b70,0xd0f89791],[0xc76c51a3,0x654be30],[0xd192e819,0xd6ef5218],[0xd6990624,0x5565a910],[0xf40e3585,0x5771202a],[0x106aa070,0x32bbd1b8],[0x19a4c116,0xb8d2d0c8],[0x1e376c08,0x5141ab53],[0x2748774c,0xdf8eeb99],[0x34b0bcb5,0xe19b48a8],[0x391c0cb3,0xc5c95a63],[0x4ed8aa4a,0xe3418acb],[0x5b9cca4f,0x7763e373],[0x682e6ff3,0xd6b2b8a3],[0x748f82ee,0x5defb2fc],[0x78a5636f,0x43172f60],[0x84c87814,0xa1f0ab72],[0x8cc70208,0x1a6439ec],[0x90befffa,0x23631e28],[0xa4506ceb,0xde82bde9],[0xbef9a3f7,0xb2c67915],[0xc67178f2,0xe372532b],[0xca273ece,0xea26619c],[0xd186b8c7,0x21c0c207],[0xeada7dd6,0xcde0eb1e],[0xf57d4f7f,0xee6ed178],[0x6f067aa,0x72176fba],[0xa637dc5,0xa2c898a6],[0x113f9804,0xbef90dae],[0x1b710b35,0x131c471b],[0x28db77f5,0x23047d84],[0x32caab7b,0x40c72493],[0x3c9ebe0a,0x15c9bebc],[0x431d67c4,0x9c100d4c],[0x4cc5d4be,0xcb3e42b6],[0x597f299c,0xfc657e2a],[0x5fcb6fab,0x3ad6faec],[0x6c44198c,0x4a475817]],(j={})["SHA-512"]=[[0x6a09e667,0xf3bcc908],[0xbb67ae85,0x84caa73b],[0x3c6ef372,0xfe94f82b],[0xa54ff53a,0x5f1d36f1],[0x510e527f,0xade682d1],[0x9b05688c,0x2b3e6c1f],[0x1f83d9ab,0xfb41bd6b],[0x5be0cd19,0x137e2179]],j["SHA-384"]=[[0xcbbb9d5d,0xc1059ed8],[0x629a292a,0x367cd507],[0x9159015a,0x3070dd17],[0x152fecd8,0xf70e5939],[0x67332667,0xffc00b31],[0x8eb44a87,0x68581511],[0xdb0c2e0d,0x64f98fa7],[0x47b5481d,0xbefa4fa4]],j["SHA-512/256"]=[[0x22312194,0xfc2bf72c],[0x9f555fa3,0xc84c64c2],[0x2393b86b,0x6f53b151],[0x96387719,0x5940eabd],[0x96283ee2,0xa88effe3],[0xbe5e1e25,0x53863992],[0x2b0199fc,0x2c85b8aa],[0xeb72ddc,0x81c52ca2]],j["SHA-512/224"]=[[0x8c3d37c8,0x19544da2],[0x73e19966,0x89dcd4d6],[0x1dfab7ae,0x32ff9c82],[0x679dd514,0x582f9fcf],[0xf6d2b69,0x7bd44da8],[0x77e36f73,0x4c48942],[0x3f9d85a8,0x6a1d36c8],[0x1112e6ad,0x91d692a1]],h=!0),void 0===a&&(a="SHA-512"),!(a in j))throw Error("Invalid SHA-512 algorithm: "+a);for(var b=j[a],c=null,e=d.util.createBuffer(),f=Array(80),l=0;l<80;++l)f[l]=[,,];var m=64;switch(a){case"SHA-384":m=48;break;case"SHA-512/256":m=32;break;case"SHA-512/224":m=28}var n={algorithm:a.replace("-","").toLowerCase(),blockLength:128,digestLength:m,messageLength:0,fullMessageLength:null,messageLengthSize:16};return n.start=function(){n.messageLength=0,n.fullMessageLength=n.messageLength128=[];for(var a=n.messageLengthSize/4,f=0;f<a;++f)n.fullMessageLength.push(0);e=d.util.createBuffer(),c=Array(b.length);for(var f=0;f<b.length;++f)c[f]=b[f].slice(0);return n},n.start(),n.update=function(a,b){"utf8"===b&&(a=d.util.encodeUtf8(a));var g=a.length;n.messageLength+=g,g=[g/0x100000000>>>0,g>>>0];for(var h=n.fullMessageLength.length-1;h>=0;--h)n.fullMessageLength[h]+=g[1],g[1]=g[0]+(n.fullMessageLength[h]/0x100000000>>>0),n.fullMessageLength[h]=n.fullMessageLength[h]>>>0,g[0]=g[1]/0x100000000>>>0;return e.putBytes(a),k(c,f,e),(e.read>2048||0===e.length())&&e.compact(),n},n.digest=function(){var b,h,i=d.util.createBuffer();i.putBytes(e.bytes());var j=n.fullMessageLength[n.fullMessageLength.length-1]+n.messageLengthSize&n.blockLength-1;i.putBytes(g.substr(0,n.blockLength-j));for(var l=8*n.fullMessageLength[0],m=0;m<n.fullMessageLength.length-1;++m)l+=(b=8*n.fullMessageLength[m+1])/0x100000000>>>0,i.putInt32(l>>>0),l=b>>>0;i.putInt32(l);for(var o=Array(c.length),m=0;m<c.length;++m)o[m]=c[m].slice(0);k(o,f,i);var p=d.util.createBuffer();h="SHA-512"===a?o.length:"SHA-384"===a?o.length-2:o.length-4;for(var m=0;m<h;++m)p.putInt32(o[m][0]),(m!==h-1||"SHA-512/224"!==a)&&p.putInt32(o[m][1]);return p},n};var g=null,h=!1,i=null,j=null;function k(a,b,c){for(var d,e,f,g,h,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,A,B,C,D,E,F,G,H,I,J,K,L,M,N=c.length();N>=128;){for(G=0;G<16;++G)b[G][0]=c.getInt32()>>>0,b[G][1]=c.getInt32()>>>0;for(;G<80;++G)d=(((H=(J=b[G-2])[0])>>>19|(I=J[1])<<13)^(I>>>29|H<<3)^H>>>6)>>>0,e=((H<<13|I>>>19)^(I<<3|H>>>29)^(H<<26|I>>>6))>>>0,f=(((H=(L=b[G-15])[0])>>>1|(I=L[1])<<31)^(H>>>8|I<<24)^H>>>7)>>>0,g=((H<<31|I>>>1)^(H<<24|I>>>8)^(H<<25|I>>>7))>>>0,K=b[G-7],M=b[G-16],I=e+K[1]+g+M[1],b[G][0]=d+K[0]+f+M[0]+(I/0x100000000>>>0)>>>0,b[G][1]=I>>>0;for(G=0,q=a[0][0],r=a[0][1],s=a[1][0],t=a[1][1],u=a[2][0],v=a[2][1],w=a[3][0],x=a[3][1],y=a[4][0],z=a[4][1],A=a[5][0],B=a[5][1],C=a[6][0],D=a[6][1],E=a[7][0],F=a[7][1];G<80;++G)k=((y>>>14|z<<18)^(y>>>18|z<<14)^(z>>>9|y<<23))>>>0,l=((y<<18|z>>>14)^(y<<14|z>>>18)^(z<<23|y>>>9))>>>0,m=(C^y&(A^C))>>>0,n=(D^z&(B^D))>>>0,h=((q>>>28|r<<4)^(r>>>2|q<<30)^(r>>>7|q<<25))>>>0,j=((q<<4|r>>>28)^(r<<30|q>>>2)^(r<<25|q>>>7))>>>0,o=(q&s|u&(q^s))>>>0,p=(r&t|v&(r^t))>>>0,I=F+l+n+i[G][1]+b[G][1],d=E+k+m+i[G][0]+b[G][0]+(I/0x100000000>>>0)>>>0,e=I>>>0,f=h+o+((I=j+p)/0x100000000>>>0)>>>0,g=I>>>0,E=C,F=D,C=A,D=B,A=y,B=z,y=w+d+((I=x+e)/0x100000000>>>0)>>>0,z=I>>>0,w=u,x=v,u=s,v=t,s=q,t=r,q=d+f+((I=e+g)/0x100000000>>>0)>>>0,r=I>>>0;I=a[0][1]+r,a[0][0]=a[0][0]+q+(I/0x100000000>>>0)>>>0,a[0][1]=I>>>0,I=a[1][1]+t,a[1][0]=a[1][0]+s+(I/0x100000000>>>0)>>>0,a[1][1]=I>>>0,I=a[2][1]+v,a[2][0]=a[2][0]+u+(I/0x100000000>>>0)>>>0,a[2][1]=I>>>0,I=a[3][1]+x,a[3][0]=a[3][0]+w+(I/0x100000000>>>0)>>>0,a[3][1]=I>>>0,I=a[4][1]+z,a[4][0]=a[4][0]+y+(I/0x100000000>>>0)>>>0,a[4][1]=I>>>0,I=a[5][1]+B,a[5][0]=a[5][0]+A+(I/0x100000000>>>0)>>>0,a[5][1]=I>>>0,I=a[6][1]+D,a[6][0]=a[6][0]+C+(I/0x100000000>>>0)>>>0,a[6][1]=I>>>0,I=a[7][1]+F,a[7][0]=a[7][0]+E+(I/0x100000000>>>0)>>>0,a[7][1]=I>>>0,N-=128}}},37703:(a,b,c)=>{"use strict";c.d(b,{getMitmAlias:()=>f}),c(24081);var d=c(58609);(0,d.U)("modelAliases"),(0,d.U)("customModels");let e=(0,d.U)("mitmAlias");async function f(a){return a?await e.get(a)||{}:await e.getAll()}},37858:(a,b,c)=>{"use strict";let{createInflate:d,createGunzip:e,createBrotliDecompress:f,createZstdDecompress:g}=c(38522),{pipeline:h}=c(57075),i=c(60823),j={gzip:e,"x-gzip":e,br:f,deflate:d,compress:d,"x-compress":d,zstd:g},k=[204,304],l=!1;class m extends i{#V=[];#W;#X;constructor(a,{skipStatusCodes:b=k,skipErrorResponses:c=!0}={}){super(a),this.#W=b,this.#X=c}#Y(a,b){return!!(!a||b<200||this.#W.includes(b))||!!this.#X&&!!(b>=400)}#Z(a){let b=a.split(",");if(b.length>5)throw Error(`too many content-encodings in response: ${b.length}, maximum allowed is 5`);let c=[];for(let a=b.length-1;a>=0;a--){let d=b[a].trim();if(d){if(!j[d])return c.length=0,c;c.push(j[d]())}}return c}#$(a,b){a.on("readable",()=>{let c;for(;null!==(c=a.read())&&!1!==super.onResponseData(b,c););}),a.on("error",a=>{super.onResponseError(b,a)})}#_(a){let b=this.#V[0];this.#$(b,a),b.on("end",()=>{super.onResponseEnd(a,{})})}#aa(a){let b=this.#V[this.#V.length-1];this.#$(b,a),h(this.#V,b=>{b?super.onResponseError(a,b):super.onResponseEnd(a,{})})}#ab(){this.#V.length=0}onResponseStart(a,b,c,d){let e=c["content-encoding"];if(this.#Y(e,b))return super.onResponseStart(a,b,c,d);let f=this.#Z(e.toLowerCase());if(0===f.length)return this.#ab(),super.onResponseStart(a,b,c,d);this.#V=f;let{"content-encoding":g,"content-length":h,...i}=c;if(a?.rawHeaders){let b=a.rawHeaders;if(Array.isArray(b)){let c=[];for(let a=0;a<b.length;a+=2){let d=b[a],e=(Buffer.isBuffer(d)?d.toString("latin1"):`${d}`).toLowerCase();"content-encoding"!==e&&"content-length"!==e&&c.push(b[a],b[a+1])}a.rawHeaders=c}else if("object"==typeof b)for(let a of Object.keys(b)){let c=a.toLowerCase();("content-encoding"===c||"content-length"===c)&&delete b[a]}}return 1===this.#V.length?this.#_(a):this.#aa(a),super.onResponseStart(a,b,i,d)}onResponseData(a,b){this.#V.length>0?this.#V[0].write(b):super.onResponseData(a,b)}onResponseEnd(a,b){if(this.#V.length>0){this.#V[0].end(),this.#ab();return}super.onResponseEnd(a,b)}onResponseError(a,b){if(this.#V.length>0){for(let a of this.#V)a.destroy(b);this.#ab()}super.onResponseError(a,b)}}a.exports=function(a={}){return l||(process.emitWarning("DecompressInterceptor is experimental and subject to change","ExperimentalWarning"),l=!0),b=>(c,d)=>b(c,new m(d,a))}},38421:(a,b,c)=>{"use strict";c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(15251);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},38528:(a,b,c)=>{"use strict";c.d(b,{IQ:()=>h,U:()=>f,eZ:()=>g,gD:()=>i,u9:()=>j});var d=c(15251),e=c(26762);let f=a=>d.xq[a]?.usage||{};function g(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function h(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}function i(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function j(a,b,c=1e4,d=null){let f=new AbortController,g=setTimeout(()=>f.abort(),c);try{return await (0,e.Fm)(a,{...b,signal:f.signal},d)}finally{clearTimeout(g)}}},38627:(a,b,c)=>{var d=c(45654);c(1277),c(33889);var e=a.exports=d.md5=d.md5||{};d.md.md5=d.md.algorithms.md5=e,e.create=function(){j||function(){f=String.fromCharCode(128)+d.util.fillString("\0",64),g=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9],h=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21],i=Array(64);for(var a=0;a<64;++a)i[a]=Math.floor(0x100000000*Math.abs(Math.sin(a+1)));j=!0}();var a=null,b=d.util.createBuffer(),c=Array(16),e={algorithm:"md5",blockLength:64,digestLength:16,messageLength:0,fullMessageLength:null,messageLengthSize:8};return e.start=function(){e.messageLength=0,e.fullMessageLength=e.messageLength64=[];for(var c=e.messageLengthSize/4,f=0;f<c;++f)e.fullMessageLength.push(0);return b=d.util.createBuffer(),a={h0:0x67452301,h1:0xefcdab89,h2:0x98badcfe,h3:0x10325476},e},e.start(),e.update=function(f,g){"utf8"===g&&(f=d.util.encodeUtf8(f));var h=f.length;e.messageLength+=h,h=[h/0x100000000>>>0,h>>>0];for(var i=e.fullMessageLength.length-1;i>=0;--i)e.fullMessageLength[i]+=h[1],h[1]=h[0]+(e.fullMessageLength[i]/0x100000000>>>0),e.fullMessageLength[i]=e.fullMessageLength[i]>>>0,h[0]=h[1]/0x100000000>>>0;return b.putBytes(f),k(a,c,b),(b.read>2048||0===b.length())&&b.compact(),e},e.digest=function(){var g=d.util.createBuffer();g.putBytes(b.bytes());var h=e.fullMessageLength[e.fullMessageLength.length-1]+e.messageLengthSize&e.blockLength-1;g.putBytes(f.substr(0,e.blockLength-h));for(var i,j=0,l=e.fullMessageLength.length-1;l>=0;--l)j=(i=8*e.fullMessageLength[l]+j)/0x100000000>>>0,g.putInt32Le(i>>>0);var m={h0:a.h0,h1:a.h1,h2:a.h2,h3:a.h3};k(m,c,g);var n=d.util.createBuffer();return n.putInt32Le(m.h0),n.putInt32Le(m.h1),n.putInt32Le(m.h2),n.putInt32Le(m.h3),n},e};var f=null,g=null,h=null,i=null,j=!1;function k(a,b,c){for(var d,e,f,j,k,l,m,n,o=c.length();o>=64;){for(n=0,e=a.h0,f=a.h1,j=a.h2,k=a.h3;n<16;++n)b[n]=c.getInt32Le(),d=e+(k^f&(j^k))+i[n]+b[n],m=h[n],e=k,k=j,j=f,f+=d<<m|d>>>32-m;for(;n<32;++n)d=e+(j^k&(f^j))+i[n]+b[g[n]],m=h[n],e=k,k=j,j=f,f+=d<<m|d>>>32-m;for(;n<48;++n)d=e+(f^j^k)+i[n]+b[g[n]],m=h[n],e=k,k=j,j=f,f+=d<<m|d>>>32-m;for(;n<64;++n)d=e+(j^(f|~k))+i[n]+b[g[n]],m=h[n],e=k,k=j,j=f,f+=d<<m|d>>>32-m;a.h0=a.h0+e|0,a.h1=a.h1+f|0,a.h2=a.h2+j|0,a.h3=a.h3+k|0,o-=64}}},38650:(a,b,c)=>{"use strict";let{Writable:d}=c(57075),{EventEmitter:e}=c(78474),{assertCacheKey:f,assertCacheValue:g}=c(79468);class h extends e{#h=1024;#ac=0x6400000;#g=5242880;#ad=0;#ae=0;#af=new Map;#ag=!1;constructor(a){if(super(),a){if("object"!=typeof a)throw TypeError("MemoryCacheStore options must be an object");if(void 0!==a.maxCount){if("number"!=typeof a.maxCount||!Number.isInteger(a.maxCount)||a.maxCount<0)throw TypeError("MemoryCacheStore options.maxCount must be a non-negative integer");this.#h=a.maxCount}if(void 0!==a.maxSize){if("number"!=typeof a.maxSize||!Number.isInteger(a.maxSize)||a.maxSize<0)throw TypeError("MemoryCacheStore options.maxSize must be a non-negative integer");this.#ac=a.maxSize}if(void 0!==a.maxEntrySize){if("number"!=typeof a.maxEntrySize||!Number.isInteger(a.maxEntrySize)||a.maxEntrySize<0)throw TypeError("MemoryCacheStore options.maxEntrySize must be a non-negative integer");this.#g=a.maxEntrySize}}}get size(){return this.#ad}isFull(){return this.#ad>=this.#ac||this.#ae>=this.#h}get(a){f(a);let b=`${a.origin}:${a.path}`,c=Date.now(),d=this.#af.get(b),e=d?i(a,d,c):null;return null==e?void 0:{statusMessage:e.statusMessage,statusCode:e.statusCode,headers:e.headers,body:e.body,vary:e.vary?e.vary:void 0,etag:e.etag,cacheControlDirectives:e.cacheControlDirectives,cachedAt:e.cachedAt,staleAt:e.staleAt,deleteAt:e.deleteAt}}createWriteStream(a,b){f(a),g(b);let c=`${a.origin}:${a.path}`,e=this,h={...a,...b,body:[],size:0};return new d({write(a,b,c){"string"==typeof a&&(a=Buffer.from(a,b)),h.size+=a.byteLength,h.size>e.#g?this.destroy():h.body.push(a),c(null)},final(b){let d=e.#af.get(c);d||(d=[],e.#af.set(c,d));let f=i(a,d,Date.now());if(f){let a=d.indexOf(f);d.splice(a,1,h),e.#ad-=f.size}else d.push(h),e.#ae+=1;if(e.#ad+=h.size,e.#ad>e.#ac||e.#ae>e.#h){for(let[a,b]of(e.#ag||(e.emit("maxSizeExceeded",{size:e.#ad,maxSize:e.#ac,count:e.#ae,maxCount:e.#h}),e.#ag=!0),e.#af)){for(let a of b.splice(0,b.length/2))e.#ad-=a.size,e.#ae-=1;0===b.length&&e.#af.delete(a)}e.#ad<e.#ac&&e.#ae<e.#h&&(e.#ag=!1)}b(null)}})}delete(a){if("object"!=typeof a)throw TypeError(`expected key to be object, got ${typeof a}`);let b=`${a.origin}:${a.path}`;for(let a of this.#af.get(b)??[])this.#ad-=a.size,this.#ae-=1;this.#af.delete(b)}}function i(a,b,c){return b.find(b=>b.deleteAt>c&&b.method===a.method&&(null==b.vary||Object.keys(b.vary).every(c=>null===b.vary[c]?void 0===a.headers[c]:b.vary[c]===a.headers[c])))}a.exports=h},39065:(a,b,c)=>{"use strict";let{PoolStats:d}=c(19071),e=c(5318),f=c(50329),{kConnected:g,kSize:h,kRunning:i,kPending:j,kQueued:k,kBusy:l,kFree:m,kUrl:n,kClose:o,kDestroy:p,kDispatch:q}=c(49176),r=Symbol("clients"),s=Symbol("needDrain"),t=Symbol("queue"),u=Symbol("closed resolve"),v=Symbol("onDrain"),w=Symbol("onConnect"),x=Symbol("onDisconnect"),y=Symbol("onConnectionError"),z=Symbol("get dispatcher"),A=Symbol("has dispatcher"),B=Symbol("add client"),C=Symbol("remove client");class D extends e{[t]=new f;[k]=0;[r]=[];[s]=!1;[v](a,b,c){let d=this[t],e=!1;for(;!e;){let b=d.shift();if(!b)break;this[k]--,e=!a.dispatch(b.opts,b.handler)}if(a[s]=e,!e&&this[s]&&(this[s]=!1,this.emit("drain",b,[this,...c])),this[u]&&d.isEmpty()){let a=[];for(let b=0;b<this[r].length;b++){let c=this[r][b];c.destroyed||a.push(c.close())}return Promise.all(a).then(this[u])}}[w]=(a,b)=>{this.emit("connect",a,[this,...b])};[x]=(a,b,c)=>{this.emit("disconnect",a,[this,...b],c)};[y]=(a,b,c)=>{this.emit("connectionError",a,[this,...b],c)};get[l](){return this[s]}get[g](){let a=0;for(let{[g]:b}of this[r])a+=b;return a}get[m](){let a=0;for(let{[g]:b,[s]:c}of this[r])a+=b&&!c;return a}get[j](){let a=this[k];for(let{[j]:b}of this[r])a+=b;return a}get[i](){let a=0;for(let{[i]:b}of this[r])a+=b;return a}get[h](){let a=this[k];for(let{[h]:b}of this[r])a+=b;return a}get stats(){return new d(this)}[o](){if(!this[t].isEmpty())return new Promise(a=>{this[u]=a});{let a=[];for(let b=0;b<this[r].length;b++){let c=this[r][b];c.destroyed||a.push(c.close())}return Promise.all(a)}}[p](a){for(;;){let b=this[t].shift();if(!b)break;b.handler.onResponseError(null,a)}let b=Array(this[r].length);for(let c=0;c<this[r].length;c++)b[c]=this[r][c].destroy(a);return Promise.all(b)}[q](a,b){let c=this[z]();return c?c.dispatch(a,b)||(c[s]=!0,this[s]=!this[A]()):(this[s]=!0,this[t].push({opts:a,handler:b}),this[k]++),!this[s]}[A](){for(let a=0;a<this[r].length;a++){let b=this[r][a];if(!b[s]&&!0!==b.closed&&!0!==b.destroyed)return!0}return!1}[B](a){return a.on("drain",this[v].bind(this,a)).on("connect",this[w]).on("disconnect",this[x]).on("connectionError",this[y]),this[r].push(a),this[s]&&queueMicrotask(()=>{this[s]&&this[v](a,a[n],[a,this])}),this}[C](a){let b=this[r].indexOf(a);-1!==b&&this[r].splice(b,1),a.close(()=>{}),this[s]=!this[r].some(a=>!a[s]&&!0!==a.closed&&!0!==a.destroyed)}}a.exports={PoolBase:D,kClients:r,kNeedDrain:s,kAddClient:B,kRemoveClient:C,kGetDispatcher:z,kHasDispatcher:A}},39490:(a,b,c)=>{"use strict";RegExp("<think>([\\s\\S]*?)</think>\\s*")},39541:(a,b,c)=>{"use strict";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.d(b,{sS:()=>d}),c(49471),c(15251),c(26317)},39804:(a,b,c)=>{var d=c(45654);c(45518),c(27080);var e=a.exports=d.tls;function f(a,b,c){var f=b.entity===d.tls.ConnectionEnd.client;a.read.cipherState={init:!1,cipher:d.cipher.createDecipher("AES-CBC",f?c.keys.server_write_key:c.keys.client_write_key),iv:f?c.keys.server_write_IV:c.keys.client_write_IV},a.write.cipherState={init:!1,cipher:d.cipher.createCipher("AES-CBC",f?c.keys.client_write_key:c.keys.server_write_key),iv:f?c.keys.client_write_IV:c.keys.server_write_IV},a.read.cipherFunction=j,a.write.cipherFunction=g,a.read.macLength=a.write.macLength=c.mac_length,a.read.macFunction=a.write.macFunction=e.hmac_sha1}function g(a,b){var c,f=!1,g=b.macFunction(b.macKey,b.sequenceNumber,a);a.fragment.putBytes(g),b.updateSequenceNumber(),c=a.version.minor===e.Versions.TLS_1_0.minor?b.cipherState.init?null:b.cipherState.iv:d.random.getBytesSync(16),b.cipherState.init=!0;var i=b.cipherState.cipher;return i.start({iv:c}),a.version.minor>=e.Versions.TLS_1_1.minor&&i.output.putBytes(c),i.update(a.fragment),i.finish(h)&&(a.fragment=i.output,a.length=a.fragment.length(),f=!0),f}function h(a,b,c){if(!c){var d=a-b.length()%a;b.fillWithByte(d-1,d)}return!0}function i(a,b,c){var d=!0;if(c){for(var e=b.length(),f=b.last(),g=e-1-f;g<e-1;++g)d=d&&b.at(g)==f;d&&b.truncate(f+1)}return d}function j(a,b){var c,f,g,h,j,k=!1;j=a.version.minor===e.Versions.TLS_1_0.minor?b.cipherState.init?null:b.cipherState.iv:a.fragment.getBytes(16),b.cipherState.init=!0;var l=b.cipherState.cipher;l.start({iv:j}),l.update(a.fragment),k=l.finish(i);var m=b.macLength,n=d.random.getBytesSync(m),o=l.output.length();o>=m?(a.fragment=l.output.getBytes(o-m),n=l.output.getBytes(m)):a.fragment=l.output.getBytes(),a.fragment=d.util.createBuffer(a.fragment),a.length=a.fragment.length();var p=b.macFunction(b.macKey,b.sequenceNumber,a);return b.updateSequenceNumber(),k=(c=b.macKey,f=n,g=p,(h=d.hmac.create()).start("SHA1",c),h.update(f),f=h.digest().getBytes(),h.start(null,null),h.update(g),f===(g=h.digest().getBytes())&&k)}e.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=e.BulkCipherAlgorithm.aes,a.cipher_type=e.CipherType.block,a.enc_key_length=16,a.block_length=16,a.fixed_iv_length=16,a.record_iv_length=16,a.mac_algorithm=e.MACAlgorithm.hmac_sha1,a.mac_length=20,a.mac_key_length=20},initConnectionState:f},e.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function(a){a.bulk_cipher_algorithm=e.BulkCipherAlgorithm.aes,a.cipher_type=e.CipherType.block,a.enc_key_length=32,a.block_length=16,a.fixed_iv_length=16,a.record_iv_length=16,a.mac_algorithm=e.MACAlgorithm.hmac_sha1,a.mac_length=20,a.mac_key_length=20},initConnectionState:f}},39852:function(a,b,c){a.exports=function(a,b){var d=[function(a,b,c){a.exports=c(34)},function(a,b,c){var d=c(29)("wks"),e=c(33),f=c(2).Symbol,g="function"==typeof f;(a.exports=function(a){return d[a]||(d[a]=g&&f[a]||(g?f:e)("Symbol."+a))}).store=d},function(a,b){var c=a.exports="u">typeof window&&window.Math==Math?window:"u">typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=c)},function(a,b,c){var d=c(9);a.exports=function(a){if(!d(a))throw TypeError(a+" is not an object!");return a}},function(a,b,c){a.exports=!c(24)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b,c){var d=c(12),e=c(17);a.exports=c(4)?function(a,b,c){return d.f(a,b,e(1,c))}:function(a,b,c){return a[b]=c,a}},function(a,b){var c=a.exports={version:"2.4.0"};"number"==typeof __e&&(__e=c)},function(a,b,c){var d=c(14);a.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},function(a,b){var c={}.hasOwnProperty;a.exports=function(a,b){return c.call(a,b)}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,b){a.exports={}},function(a,b){var c={}.toString;a.exports=function(a){return c.call(a).slice(8,-1)}},function(a,b,c){var d=c(3),e=c(26),f=c(32),g=Object.defineProperty;b.f=c(4)?Object.defineProperty:function(a,b,c){if(d(a),b=f(b,!0),d(c),e)try{return g(a,b,c)}catch(a){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(a[b]=c.value),a}},function(a,b,c){var d=c(42),e=c(15);a.exports=function(a){return d(e(a))}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,b){a.exports=function(a){if(void 0==a)throw TypeError("Can't call method on "+a);return a}},function(a,b,c){var d=c(9),e=c(2).document,f=d(e)&&d(e.createElement);a.exports=function(a){return f?e.createElement(a):{}}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,b,c){var d=c(12).f,e=c(8),f=c(1)("toStringTag");a.exports=function(a,b,c){a&&!e(a=c?a:a.prototype,f)&&d(a,f,{configurable:!0,value:b})}},function(a,b,c){var d=c(29)("keys"),e=c(33);a.exports=function(a){return d[a]||(d[a]=e(a))}},function(a,b){var c=Math.ceil,d=Math.floor;a.exports=function(a){return isNaN(a*=1)?0:(a>0?d:c)(a)}},function(a,b,c){var d=c(11),e=c(1)("toStringTag"),f="Arguments"==d(function(){return arguments}()),g=function(a,b){try{return a[b]}catch(a){}};a.exports=function(a){var b,c,h;return void 0===a?"Undefined":null===a?"Null":"string"==typeof(c=g(b=Object(a),e))?c:f?d(b):"Object"==(h=d(b))&&"function"==typeof b.callee?"Arguments":h}},function(a,b){a.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(a,b,c){var d=c(2),e=c(6),f=c(7),g=c(5),h="prototype",i=function(a,b,c){var j,k,l,m=a&i.F,n=a&i.G,o=a&i.S,p=a&i.P,q=a&i.B,r=a&i.W,s=n?e:e[b]||(e[b]={}),t=s[h],u=n?d:o?d[b]:(d[b]||{})[h];for(j in n&&(c=b),c)(k=!m&&u&&void 0!==u[j])&&j in s||(l=k?u[j]:c[j],s[j]=n&&"function"!=typeof u[j]?c[j]:q&&k?f(l,d):r&&u[j]==l?function(a){var b=function(b,c,d){if(this instanceof a){switch(arguments.length){case 0:return new a;case 1:return new a(b);case 2:return new a(b,c)}return new a(b,c,d)}return a.apply(this,arguments)};return b[h]=a[h],b}(l):p&&"function"==typeof l?f(Function.call,l):l,p&&((s.virtual||(s.virtual={}))[j]=l,a&i.R&&t&&!t[j]&&g(t,j,l)))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,i.U=64,i.R=128,a.exports=i},function(a,b){a.exports=function(a){try{return!!a()}catch(a){return!0}}},function(a,b,c){a.exports=c(2).document&&document.documentElement},function(a,b,c){a.exports=!c(4)&&!c(24)(function(){return 7!=Object.defineProperty(c(16)("div"),"a",{get:function(){return 7}}).a})},function(a,b,c){"use strict";var d=c(28),e=c(23),f=c(57),g=c(5),h=c(8),i=c(10),j=c(45),k=c(18),l=c(52),m=c(1)("iterator"),n=!([].keys&&"next"in[].keys()),o="keys",p="values",q=function(){return this};a.exports=function(a,b,c,r,s,t,u){j(c,b,r);var v,w,x,y=function(a){if(!n&&a in C)return C[a];switch(a){case o:case p:return function(){return new c(this,a)}}return function(){return new c(this,a)}},z=b+" Iterator",A=s==p,B=!1,C=a.prototype,D=C[m]||C["@@iterator"]||s&&C[s],E=D||y(s),F=s?A?y("entries"):E:void 0,G="Array"==b&&C.entries||D;if(G&&(x=l(G.call(new a)))!==Object.prototype&&(k(x,z,!0),d||h(x,m)||g(x,m,q)),A&&D&&D.name!==p&&(B=!0,E=function(){return D.call(this)}),(!d||u)&&(n||B||!C[m])&&g(C,m,E),i[b]=E,i[z]=q,s)if(v={values:A?E:y(p),keys:t?E:y(o),entries:F},u)for(w in v)w in C||f(C,w,v[w]);else e(e.P+e.F*(n||B),b,v);return v}},function(a,b){a.exports=!0},function(a,b,c){var d=c(2),e="__core-js_shared__",f=d[e]||(d[e]={});a.exports=function(a){return f[a]||(f[a]={})}},function(a,b,c){var d,e,f,g=c(7),h=c(41),i=c(25),j=c(16),k=c(2),l=k.process,m=k.setImmediate,n=k.clearImmediate,o=k.MessageChannel,p=0,q={},r="onreadystatechange",s=function(){var a=+this;if(q.hasOwnProperty(a)){var b=q[a];delete q[a],b()}},t=function(a){s.call(a.data)};m&&n||(m=function(a){for(var b=[],c=1;arguments.length>c;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==c(11)(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(f=(e=new o).port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),a.exports={set:m,clear:n}},function(a,b,c){var d=c(20),e=Math.min;a.exports=function(a){return a>0?e(d(a),0x1fffffffffffff):0}},function(a,b,c){var d=c(9);a.exports=function(a,b){var c,e;if(!d(a))return a;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a))||"function"==typeof(c=a.valueOf)&&!d(e=c.call(a))||!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},function(a,b){var c=0,d=Math.random();a.exports=function(a){return"Symbol(".concat(void 0===a?"":a,")_",(++c+d).toString(36))}},function(a,b,c){"use strict";function d(a){return(0,i.createHash)("sha256").update(a).digest("hex")}function e(a){switch(j){case"darwin":return a.split("IOPlatformUUID")[1].split("\n")[0].replace(/\=|\s+|\"/gi,"").toLowerCase();case"win32":return a.toString().split("REG_SZ")[1].replace(/\r+|\n+|\s+/gi,"").toLowerCase();case"linux":case"freebsd":return a.toString().replace(/\r+|\n+|\s+/gi,"").toLowerCase();default:throw Error("Unsupported platform: "+process.platform)}}Object.defineProperty(b,"__esModule",{value:!0});var f,g=(f=c(35))&&f.__esModule?f:{default:f};b.machineIdSync=function(a){var b=e((0,h.execSync)(k[j]).toString());return a?b:d(b)},b.machineId=function(a){return new g.default(function(b,c){return(0,h.exec)(k[j],{},function(f,g,h){if(f)return c(Error("Error while obtaining machine id: "+f.stack));var i=e(g.toString());return b(a?i:d(i))})})};var h=c(70),i=c(71),j=process.platform,k={darwin:"ioreg -rd1 -c IOPlatformExpertDevice",win32:{native:"%windir%\\System32",mixed:"%windir%\\sysnative\\cmd.exe /c %windir%\\System32"}["win32"!==process.platform?"":"ia32"===process.arch&&process.env.hasOwnProperty("PROCESSOR_ARCHITEW6432")?"mixed":"native"]+"\\REG.exe QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",linux:"( cat /var/lib/dbus/machine-id /etc/machine-id 2> /dev/null || hostname ) | head -n 1 || :",freebsd:"kenv -q smbios.system.uuid || sysctl -n kern.hostuuid"}},function(a,b,c){a.exports={default:c(36),__esModule:!0}},function(a,b,c){c(66),c(68),c(69),c(67),a.exports=c(6).Promise},function(a,b){a.exports=function(){}},function(a,b){a.exports=function(a,b,c,d){if(!(a instanceof b)||void 0!==d&&d in a)throw TypeError(c+": incorrect invocation!");return a}},function(a,b,c){var d=c(13),e=c(31),f=c(62);a.exports=function(a){return function(b,c,g){var h,i=d(b),j=e(i.length),k=f(g,j);if(a&&c!=c){for(;j>k;)if((h=i[k++])!=h)return!0}else for(;j>k;k++)if((a||k in i)&&i[k]===c)return a||k||0;return!a&&-1}}},function(a,b,c){var d=c(7),e=c(44),f=c(43),g=c(3),h=c(31),i=c(64),j={},k={},b=a.exports=function(a,b,c,l,m){var n,o,p,q,r=m?function(){return a}:i(a),s=d(c,l,b?2:1),t=0;if("function"!=typeof r)throw TypeError(a+" is not iterable!");if(f(r)){for(n=h(a.length);n>t;t++)if((q=b?s(g(o=a[t])[0],o[1]):s(a[t]))===j||q===k)return q}else for(p=r.call(a);!(o=p.next()).done;)if((q=e(p,s,o.value,b))===j||q===k)return q};b.BREAK=j,b.RETURN=k},function(a,b){a.exports=function(a,b,c){var d=void 0===c;switch(b.length){case 0:return d?a():a.call(c);case 1:return d?a(b[0]):a.call(c,b[0]);case 2:return d?a(b[0],b[1]):a.call(c,b[0],b[1]);case 3:return d?a(b[0],b[1],b[2]):a.call(c,b[0],b[1],b[2]);case 4:return d?a(b[0],b[1],b[2],b[3]):a.call(c,b[0],b[1],b[2],b[3])}return a.apply(c,b)}},function(a,b,c){var d=c(11);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==d(a)?a.split(""):Object(a)}},function(a,b,c){var d=c(10),e=c(1)("iterator"),f=Array.prototype;a.exports=function(a){return void 0!==a&&(d.Array===a||f[e]===a)}},function(a,b,c){var d=c(3);a.exports=function(a,b,c,e){try{return e?b(d(c)[0],c[1]):b(c)}catch(b){var f=a.return;throw void 0!==f&&d(f.call(a)),b}}},function(a,b,c){"use strict";var d=c(49),e=c(17),f=c(18),g={};c(5)(g,c(1)("iterator"),function(){return this}),a.exports=function(a,b,c){a.prototype=d(g,{next:e(1,c)}),f(a,b+" Iterator")}},function(a,b,c){var d=c(1)("iterator"),e=!1;try{var f=[7][d]();f.return=function(){e=!0},Array.from(f,function(){throw 2})}catch(a){}a.exports=function(a,b){if(!b&&!e)return!1;var c=!1;try{var f=[7],g=f[d]();g.next=function(){return{done:c=!0}},f[d]=function(){return g},a(f)}catch(a){}return c}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(a,b,c){var d=c(2),e=c(30).set,f=d.MutationObserver||d.WebKitMutationObserver,g=d.process,h=d.Promise,i="process"==c(11)(g);a.exports=function(){var a,b,c,j=function(){var d,e;for(i&&(d=g.domain)&&d.exit();a;){e=a.fn,a=a.next;try{e()}catch(d){throw a?c():b=void 0,d}}b=void 0,d&&d.enter()};if(i)c=function(){g.nextTick(j)};else if(f){var k=!0,l=document.createTextNode("");new f(j).observe(l,{characterData:!0}),c=function(){l.data=k=!k}}else if(h&&h.resolve){var m=h.resolve();c=function(){m.then(j)}}else c=function(){e.call(d,j)};return function(d){var e={fn:d,next:void 0};b&&(b.next=e),a||(a=e,c()),b=e}}},function(a,b,c){var d=c(3),e=c(50),f=c(22),g=c(19)("IE_PROTO"),h=function(){},i="prototype",j=function(){var a,b=c(16)("iframe"),d=f.length;for(b.style.display="none",c(25).appendChild(b),b.src="javascript:",(a=b.contentWindow.document).open(),a.write("<script>document.F=Object<\/script>"),a.close(),j=a.F;d--;)delete j[i][f[d]];return j()};a.exports=Object.create||function(a,b){var c;return null!==a?(h[i]=d(a),c=new h,h[i]=null,c[g]=a):c=j(),void 0===b?c:e(c,b)}},function(a,b,c){var d=c(12),e=c(3),f=c(54);a.exports=c(4)?Object.defineProperties:function(a,b){e(a);for(var c,g=f(b),h=g.length,i=0;h>i;)d.f(a,c=g[i++],b[c]);return a}},function(a,b,c){var d=c(55),e=c(17),f=c(13),g=c(32),h=c(8),i=c(26),j=Object.getOwnPropertyDescriptor;b.f=c(4)?j:function(a,b){if(a=f(a),b=g(b,!0),i)try{return j(a,b)}catch(a){}if(h(a,b))return e(!d.f.call(a,b),a[b])}},function(a,b,c){var d=c(8),e=c(63),f=c(19)("IE_PROTO"),g=Object.prototype;a.exports=Object.getPrototypeOf||function(a){return d(a=e(a),f)?a[f]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?g:null}},function(a,b,c){var d=c(8),e=c(13),f=c(39)(!1),g=c(19)("IE_PROTO");a.exports=function(a,b){var c,h=e(a),i=0,j=[];for(c in h)c!=g&&d(h,c)&&j.push(c);for(;b.length>i;)d(h,c=b[i++])&&(~f(j,c)||j.push(c));return j}},function(a,b,c){var d=c(53),e=c(22);a.exports=Object.keys||function(a){return d(a,e)}},function(a,b){b.f=({}).propertyIsEnumerable},function(a,b,c){var d=c(5);a.exports=function(a,b,c){for(var e in b)c&&a[e]?a[e]=b[e]:d(a,e,b[e]);return a}},function(a,b,c){a.exports=c(5)},function(a,b,c){var d=c(9),e=c(3),f=function(a,b){if(e(a),!d(b)&&null!==b)throw TypeError(b+": can't set as prototype!")};a.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(a,b,d){try{(d=c(7)(Function.call,c(51).f(Object.prototype,"__proto__").set,2))(a,[]),b=!(a instanceof Array)}catch(a){b=!0}return function(a,c){return f(a,c),b?a.__proto__=c:d(a,c),a}}({},!1):void 0),check:f}},function(a,b,c){"use strict";var d=c(2),e=c(6),f=c(12),g=c(4),h=c(1)("species");a.exports=function(a){var b="function"==typeof e[a]?e[a]:d[a];g&&b&&!b[h]&&f.f(b,h,{configurable:!0,get:function(){return this}})}},function(a,b,c){var d=c(3),e=c(14),f=c(1)("species");a.exports=function(a,b){var c,g=d(a).constructor;return void 0===g||void 0==(c=d(g)[f])?b:e(c)}},function(a,b,c){var d=c(20),e=c(15);a.exports=function(a){return function(b,c){var f,g,h=String(e(b)),i=d(c),j=h.length;return i<0||i>=j?a?"":void 0:(f=h.charCodeAt(i))<55296||f>56319||i+1===j||(g=h.charCodeAt(i+1))<56320||g>57343?a?h.charAt(i):f:a?h.slice(i,i+2):(f-55296<<10)+(g-56320)+65536}}},function(a,b,c){var d=c(20),e=Math.max,f=Math.min;a.exports=function(a,b){return(a=d(a))<0?e(a+b,0):f(a,b)}},function(a,b,c){var d=c(15);a.exports=function(a){return Object(d(a))}},function(a,b,c){var d=c(21),e=c(1)("iterator"),f=c(10);a.exports=c(6).getIteratorMethod=function(a){if(void 0!=a)return a[e]||a["@@iterator"]||f[d(a)]}},function(a,b,c){"use strict";var d=c(37),e=c(47),f=c(10),g=c(13);a.exports=c(27)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var a=this._t,b=this._k,c=this._i++;return!a||c>=a.length?(this._t=void 0,e(1)):"keys"==b?e(0,c):"values"==b?e(0,a[c]):e(0,[c,a[c]])},"values"),f.Arguments=f.Array,d("keys"),d("values"),d("entries")},function(a,b){},function(a,b,c){"use strict";var d,e,f,g=c(28),h=c(2),i=c(7),j=c(21),k=c(23),l=c(9),m=(c(3),c(14)),n=c(38),o=c(40),p=(c(58).set,c(60)),q=c(30).set,r=c(48)(),s="Promise",t=h.TypeError,u=h.process,v=h[s],u=h.process,w="process"==j(u),x=function(){},y=!!function(){try{var a=v.resolve(1),b=(a.constructor={})[c(1)("species")]=function(a){a(x,x)};return(w||"function"==typeof PromiseRejectionEvent)&&a.then(x)instanceof b}catch(a){}}(),z=function(a,b){return a===b||a===v&&b===f},A=function(a){var b;return!(!l(a)||"function"!=typeof(b=a.then))&&b},B=function(a){return z(v,a)?new C(a):new e(a)},C=e=function(a){var b,c;this.promise=new a(function(a,d){if(void 0!==b||void 0!==c)throw t("Bad Promise constructor");b=a,c=d}),this.resolve=m(b),this.reject=m(c)},D=function(a){try{a()}catch(a){return{error:a}}},E=function(a,b){if(!a._n){a._n=!0;var c=a._c;r(function(){for(var d=a._v,e=1==a._s,f=0;c.length>f;)!function(b){var c,f,g=e?b.ok:b.fail,h=b.resolve,i=b.reject,j=b.domain;try{g?(e||(2==a._h&&H(a),a._h=1),!0===g?c=d:(j&&j.enter(),c=g(d),j&&j.exit()),c===b.promise?i(t("Promise-chain cycle")):(f=A(c))?f.call(c,h,i):h(c)):i(d)}catch(a){i(a)}}(c[f++]);a._c=[],a._n=!1,b&&!a._h&&F(a)})}},F=function(a){q.call(h,function(){var b,c,d,e=a._v;if(G(a)&&(b=D(function(){w?u.emit("unhandledRejection",e,a):(c=h.onunhandledrejection)?c({promise:a,reason:e}):(d=h.console)&&d.error&&d.error("Unhandled promise rejection",e)}),a._h=w||G(a)?2:1),a._a=void 0,b)throw b.error})},G=function(a){if(1==a._h)return!1;for(var b,c=a._a||a._c,d=0;c.length>d;)if((b=c[d++]).fail||!G(b.promise))return!1;return!0},H=function(a){q.call(h,function(){var b;w?u.emit("rejectionHandled",a):(b=h.onrejectionhandled)&&b({promise:a,reason:a._v})})},I=function(a){var b=this;b._d||(b._d=!0,(b=b._w||b)._v=a,b._s=2,b._a||(b._a=b._c.slice()),E(b,!0))},J=function(a){var b,c=this;if(!c._d){c._d=!0,c=c._w||c;try{if(c===a)throw t("Promise can't be resolved itself");(b=A(a))?r(function(){var d={_w:c,_d:!1};try{b.call(a,i(J,d,1),i(I,d,1))}catch(a){I.call(d,a)}}):(c._v=a,c._s=1,E(c,!1))}catch(a){I.call({_w:c,_d:!1},a)}}};y||(v=function(a){n(this,v,s,"_h"),m(a),d.call(this);try{a(i(J,this,1),i(I,this,1))}catch(a){I.call(this,a)}},(d=function(a){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=c(56)(v.prototype,{then:function(a,b){var c=B(p(this,v));return c.ok="function"!=typeof a||a,c.fail="function"==typeof b&&b,c.domain=w?u.domain:void 0,this._c.push(c),this._a&&this._a.push(c),this._s&&E(this,!1),c.promise},catch:function(a){return this.then(void 0,a)}}),C=function(){var a=new d;this.promise=a,this.resolve=i(J,a,1),this.reject=i(I,a,1)}),k(k.G+k.W+!y*k.F,{Promise:v}),c(18)(v,s),c(59)(s),f=c(6)[s],k(k.S+!y*k.F,s,{reject:function(a){var b=B(this);return(0,b.reject)(a),b.promise}}),k(k.S+k.F*(g||!y),s,{resolve:function(a){if(a instanceof v&&z(a.constructor,this))return a;var b=B(this);return(0,b.resolve)(a),b.promise}}),k(k.S+!(y&&c(46)(function(a){v.all(a).catch(x)}))*k.F,s,{all:function(a){var b=this,c=B(b),d=c.resolve,e=c.reject,f=D(function(){var c=[],f=0,g=1;o(a,!1,function(a){var h=f++,i=!1;c.push(void 0),g++,b.resolve(a).then(function(a){i||(i=!0,c[h]=a,--g||d(c))},e)}),--g||d(c)});return f&&e(f.error),c.promise},race:function(a){var b=this,c=B(b),d=c.reject,e=D(function(){o(a,!1,function(a){b.resolve(a).then(c.resolve,d)})});return e&&d(e.error),c.promise}})},function(a,b,c){"use strict";var d=c(61)(!0);c(27)(String,"String",function(a){this._t=String(a),this._i=0},function(){var a,b=this._t,c=this._i;return c>=b.length?{value:void 0,done:!0}:(a=d(b,c),this._i+=a.length,{value:a,done:!1})})},function(a,b,c){c(65);for(var d=c(2),e=c(5),f=c(10),g=c(1)("toStringTag"),h=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],i=0;i<5;i++){var j=h[i],k=d[j],l=k&&k.prototype;l&&!l[g]&&e(l,g,j),f[j]=f.Array}},function(a,b){a.exports=c(79646)},function(a,b){a.exports=c(55511)}];function e(a){if(f[a])return f[a].exports;var b=f[a]={exports:{},id:a,loaded:!1};return d[a].call(b.exports,b,b.exports,e),b.loaded=!0,b.exports}var f={};return e.m=d,e.c=f,e.p="",e(0)}(c(79646),c(55511))},40106:(a,b,c)=>{"use strict";let d=c(34589),e=c(77030),f=c(37067),g=c(84285),{ClientStats:h}=c(19071),{channels:i}=c(62571),j=c(76316),k=c(5318),{InvalidArgumentError:l,InformationalError:m,ClientDestroyedError:n}=c(61448),o=c(55285),{kUrl:p,kServerName:q,kClient:r,kBusy:s,kConnect:t,kResuming:u,kRunning:v,kPending:w,kSize:x,kQueue:y,kConnected:z,kConnecting:A,kNeedDrain:B,kKeepAliveDefaultTimeout:C,kHostHeader:D,kPendingIdx:E,kRunningIdx:F,kError:G,kPipelining:H,kKeepAliveTimeoutValue:I,kMaxHeadersSize:J,kKeepAliveMaxTimeout:K,kKeepAliveTimeoutThreshold:L,kHeadersTimeout:M,kBodyTimeout:N,kStrictContentLength:O,kConnector:P,kMaxRequests:Q,kCounter:R,kClose:S,kDestroy:T,kDispatch:U,kLocalAddress:V,kMaxResponseSize:W,kOnError:X,kHTTPContext:Y,kMaxConcurrentStreams:Z,kHostAuthority:$,kHTTP2InitialWindowSize:_,kHTTP2ConnectionWindowSize:aa,kResume:ab,kPingInterval:ac}=c(49176),ad=c(97678),ae=c(80985),af=Symbol("kClosedResolve"),ag=f&&f.maxHeaderSize&&Number.isInteger(f.maxHeaderSize)&&f.maxHeaderSize>0?()=>f.maxHeaderSize:()=>{throw new l("http module not available or http.maxHeaderSize invalid")},ah=()=>{};function ai(a){return a[Y]?.version==="h2"?a[Z]:a[H]??a[Y]?.defaultPipelining??1}class aj extends k{constructor(a,{maxHeaderSize:b,headersTimeout:c,socketTimeout:d,requestTimeout:f,connectTimeout:h,bodyTimeout:i,idleTimeout:j,keepAlive:k,keepAliveTimeout:m,maxKeepAliveTimeout:n,keepAliveMaxTimeout:r,keepAliveTimeoutThreshold:s,socketPath:t,pipelining:v,tls:w,strictContentLength:x,maxCachedSessions:z,connect:A,maxRequestsPerClient:G,localAddress:R,maxResponseSize:S,autoSelectFamily:T,autoSelectFamilyAttemptTimeout:U,maxConcurrentStreams:ad,allowH2:ae,useH2c:ah,initialWindowSize:ai,connectionWindowSize:aj,pingInterval:al,webSocket:am}={}){if(void 0!==k)throw new l("unsupported keepAlive, use pipelining=0 instead");if(void 0!==d)throw new l("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(void 0!==f)throw new l("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(void 0!==j)throw new l("unsupported idleTimeout, use keepAliveTimeout instead");if(void 0!==n)throw new l("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(null!=b){if(!Number.isInteger(b)||b<1)throw new l("invalid maxHeaderSize")}else b=ag();if(null!=t&&"string"!=typeof t)throw new l("invalid socketPath");if(null!=h&&(!Number.isFinite(h)||h<0))throw new l("invalid connectTimeout");if(null!=m&&(!Number.isFinite(m)||m<=0))throw new l("invalid keepAliveTimeout");if(null!=r&&(!Number.isFinite(r)||r<=0))throw new l("invalid keepAliveMaxTimeout");if(null!=s&&!Number.isFinite(s))throw new l("invalid keepAliveTimeoutThreshold");if(null!=c&&(!Number.isInteger(c)||c<0))throw new l("headersTimeout must be a positive integer or zero");if(null!=i&&(!Number.isInteger(i)||i<0))throw new l("bodyTimeout must be a positive integer or zero");if(null!=A&&"function"!=typeof A&&"object"!=typeof A)throw new l("connect must be a function or an object");if(null!=G&&(!Number.isInteger(G)||G<0))throw new l("maxRequestsPerClient must be a positive number");if(null!=R&&("string"!=typeof R||0===e.isIP(R)))throw new l("localAddress must be valid string IP address");if(null!=S&&(!Number.isInteger(S)||S<-1))throw new l("maxResponseSize must be a positive number");if(null!=U&&(!Number.isInteger(U)||U<-1))throw new l("autoSelectFamilyAttemptTimeout must be a positive number");if(null!=ae&&"boolean"!=typeof ae)throw new l("allowH2 must be a valid boolean value");if(null!=ad&&("number"!=typeof ad||ad<1))throw new l("maxConcurrentStreams must be a positive integer, greater than 0");if(null!=ah&&"boolean"!=typeof ah)throw new l("useH2c must be a valid boolean value");if(null!=ai&&(!Number.isInteger(ai)||ai<1))throw new l("initialWindowSize must be a positive integer, greater than 0");if(null!=aj&&(!Number.isInteger(aj)||aj<1))throw new l("connectionWindowSize must be a positive integer, greater than 0");if(null!=al&&("number"!=typeof al||!Number.isInteger(al)||al<0))throw new l("pingInterval must be a positive integer, greater or equal to 0");if(super({webSocket:am}),"function"!=typeof A)A=o({...w,maxCachedSessions:z,allowH2:ae,useH2c:ah,socketPath:t,timeout:h,..."boolean"==typeof T?{autoSelectFamily:T,autoSelectFamilyAttemptTimeout:U}:void 0,...A});else{const a=A;A=(b,c)=>a({...b,...null!=t?{socketPath:t}:null,...null!=ae?{allowH2:ae}:null},c)}this[p]=g.parseOrigin(a),this[$]=`${this[p].hostname}${this[p].port?`:${this[p].port}`:""}`,this[P]=A,this[H]=null!=v?v:1,this[J]=b,this[C]=null==m?4e3:m,this[K]=null==r?6e5:r,this[L]=null==s?2e3:s,this[I]=this[C],this[q]=null,this[V]=null!=R?R:null,this[u]=0,this[B]=0,this[D]=`host: ${this[$]}\r
|
|
299
|
+
`,this[N]=null!=i?i:3e5,this[M]=null!=c?c:3e5,this[O]=null==x||x,this[Q]=G,this[af]=null,this[W]=S>-1?S:-1,this[Y]=null,this[Z]=null!=ad?ad:100,this[_]=null!=ai?ai:262144,this[aa]=null!=aj?aj:524288,this[ac]=null!=al?al:6e4,this[y]=[],this[F]=0,this[E]=0,this[ab]=a=>ao(this,a),this[X]=a=>ak(this,a)}get pipelining(){return this[H]}set pipelining(a){this[H]=a,this[ab](!0)}get stats(){return new h(this)}get[w](){return this[y].length-this[E]}get[v](){return this[E]-this[F]}get[x](){return this[y].length-this[F]}get[z](){return!!this[Y]&&!this[A]&&!this[Y].destroyed}get[s](){let a=this[Y]?.version==="h2";return!!(this[Y]?.busy(null)||this[x]>=(ai(this)||1)||this[w]>0&&!a)}[t](a){al(this),this.once("connect",a)}[U](a,b){let c=new j(this[p].origin,a,b);return this[y].push(c),this[u]||(null==g.bodyLength(c.body)&&g.isIterable(c.body)?(this[u]=1,queueMicrotask(()=>ao(this))):this[ab](!0)),this[u]&&2!==this[B]&&this[s]&&(this[B]=2),this[B]<2}[S](){return new Promise(a=>{this[x]?this[af]=a:a(null)})}[T](a){return new Promise(b=>{let c=this[y].splice(this[E]);for(let b=0;b<c.length;b++){let d=c[b];null!=d&&g.errorRequest(this,d,a)}let d=()=>{this[af]&&(this[af](),this[af]=null),b(null)};this[Y]?(this[Y].destroy(a,d),this[Y]=null):queueMicrotask(d),this[ab]()})}}function ak(a,b){if(0===a[v]&&"UND_ERR_INFO"!==b.code&&"UND_ERR_SOCKET"!==b.code){d(a[E]===a[F]);let c=a[y].splice(a[F]);for(let d=0;d<c.length;d++){let e=c[d];null!=e&&g.errorRequest(a,e,b)}d(0===a[x])}}function al(a){d(!a[A]),d(!a[Y]);let{host:b,hostname:c,protocol:f,port:h}=a[p];if("["===c[0]){let a=c.indexOf("]");d(-1!==a);let b=c.substring(1,a);d(e.isIPv6(b)),c=b}a[A]=!0,i.beforeConnect.hasSubscribers&&i.beforeConnect.publish({connectParams:{host:b,hostname:c,protocol:f,port:h,version:a[Y]?.version,servername:a[q],localAddress:a[V]},connector:a[P]});try{a[P]({host:b,hostname:c,protocol:f,port:h,servername:a[q],localAddress:a[V]},(e,j)=>{if(e){am(a,e,{host:b,hostname:c,protocol:f,port:h}),a[ab]();return}if(a.destroyed){g.destroy(j.on("error",ah),new n),a[ab]();return}d(j);try{a[Y]="h2"===j.alpnProtocol?ae(a,j):ad(a,j)}catch(d){j.destroy().on("error",ah),am(a,d,{host:b,hostname:c,protocol:f,port:h}),a[ab]();return}a[A]=!1,j[R]=0,j[Q]=a[Q],j[r]=a,j[G]=null,i.connected.hasSubscribers&&i.connected.publish({connectParams:{host:b,hostname:c,protocol:f,port:h,version:a[Y]?.version,servername:a[q],localAddress:a[V]},connector:a[P],socket:j}),a.emit("connect",a[p],[a]),a[ab]()})}catch(d){am(a,d,{host:b,hostname:c,protocol:f,port:h}),a[ab]()}}function am(a,b,{host:c,hostname:d,protocol:e,port:f}){if(!a.destroyed){if(a[A]=!1,i.connectError.hasSubscribers&&i.connectError.publish({connectParams:{host:c,hostname:d,protocol:e,port:f,version:a[Y]?.version,servername:a[q],localAddress:a[V]},connector:a[P],error:b}),"ERR_TLS_CERT_ALTNAME_INVALID"===b.code){let c=a[y].splice(a[F],a[v]);a[E]=a[F];for(let d=0;d<c.length;d++)g.errorRequest(a,c[d],b);for(;a[w]>0&&a[y][a[E]].servername===a[q];){let c=a[y].splice(a[E],1)[0];g.errorRequest(a,c,b)}}else ak(a,b);a.emit("connectionError",a[p],[a],b)}}function an(a){a[B]=0,a.emit("drain",a[p],[a])}function ao(a,b){2!==a[u]&&(a[u]=2,function(a,b){for(;;){if(a.destroyed)return void d(0===a[w]);if(a[af]&&!a[x]){a[af](),a[af]=null;return}if(a[Y]&&a[Y].resume(),a[s])a[B]=2;else if(2===a[B]){b?(a[B]=1,queueMicrotask(()=>an(a))):an(a);continue}if(0===a[w]||a[v]>=(ai(a)||1))return;let c=a[y][a[E]];if(null===c)return;if("https:"===a[p].protocol&&a[q]!==c.servername){if(a[v]>0)return;a[q]=c.servername,a[Y]?.destroy(new m("servername changed"),()=>{a[Y]=null,ao(a)})}if(a[A])return;if(!a[Y])return void al(a);if(a[Y].destroyed||a[Y].busy(c))return;!c.aborted&&a[Y].write(c)?a[E]++:a[y].splice(a[E],1)}}(a,b),a[u]=0,a[F]>256&&(a[y].splice(0,a[F]),a[E]-=a[F],a[F]=0))}a.exports=aj},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}},40772:(a,b,c)=>{"use strict";c(26762);var d=c(15251),e=c(38528);d.sr.github?.apiVersion,d.sr.github?.userAgent;var f=c(10793),g=c(74570);(0,e.U)("antigravity"),g.XP,(0,f.A9)(),c(82961),c(20012),c(43835),(0,e.U)("minimax").urls,(0,e.U)("minimax-cn").urls,(0,e.U)("glm").url,(0,e.U)("glm-cn").url,(0,e.U)("vercel-ai-gateway").url},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(93048),e=c(38421),f=c(96997),g=c(26762);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){if(h.has(a))return h.get(a);let b=await fetch(`https://aiplatform.googleapis.com/v1/publishers/google/models/__probe__:generateContent?key=${a}`,{method:"POST",headers:{"Content-Type":"application/json"},body:"{}"}),c=await b.json().catch(()=>null),d=(c?.[0]?.error?.message||c?.error?.message||"").match(/projects\/([^/]+)\//),e=d?.[1]||null;return e&&h.set(a,e),e}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){let c=(0,f.Sc)(a?.apiKey);if(c){let a=await (0,f.pb)(c,b);return a?{accessToken:a.accessToken,expiresAt:a.expiresAt}:null}let d=i(a?.apiKey);if(d){let a=await (0,f.I9)(d.refresh_token,d.client_id,d.client_secret,b);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);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);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},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),{ReadableStreamFrom:m,isValidHTTPToken:n,normalizedMethodRecordsBase:o}=c(84285),p=c(34589),{isUint8Array:q}=c(73429),{webidl:r}=c(32984),{isomorphicEncode:s,collectASequenceOfCodePoints:t,removeChars:u}=c(70745);function v(a){let b=a.urlList,c=b.length;return 0===c?null:b[c-1].toString()}function w(a){for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c>126||c<32)return!1}return!0}function x(a){return a.urlList[a.urlList.length-1]}function y(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 z(){return{referrerPolicy:"strict-origin-when-cross-origin"}}function A(a,b=!1){return(p(r.is.URL(a)),J(a=new URL(a)))?"no-referrer":(a.username="",a.password="",a.hash="",!0===b&&(a.pathname="",a.search=""),a)}let B=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)$/),C=RegExp.prototype.test.bind(/^(?:(?:0{1,4}:){7}|(?:0{1,4}:){1,6}:|::)0{0,3}1$/);function D(a){return a.includes(":")?("["===a[0]&&"]"===a[a.length-1]&&(a=a.slice(1,-1)),C(a)):B(a)}function E(a){var b;return!!r.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||D(b.hostname)||"localhost"===b.hostname||"localhost."===b.hostname||b.hostname.endsWith(".localhost")||b.hostname.endsWith(".localhost."))||"file:"===b.protocol))}function F(a,b){return a.origin===b.origin&&"null"===a.origin||a.protocol===b.protocol&&a.hostname===b.hostname&&a.port===b.port}let G=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function H(a,b,c=0,d=1){class e{#ah;#ai;#aj;constructor(a,b){this.#ah=a,this.#ai=b,this.#aj=0}next(){let e;if("object"!=typeof this||this===null||!(#ah in this))throw TypeError(`'next' called on an object that does not implement interface ${a} Iterator.`);let f=this.#aj,g=b(this.#ah);if(f>=g.length)return{value:void 0,done:!0};let{[c]:h,[d]:i}=g[f];switch(this.#aj=f+1,this.#ai){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,G),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 I(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(!q(g))return void c(TypeError("Received non-Uint8Array chunk"));d.push(g),e+=g.length}}catch(a){c(a)}}function J(a){p("protocol"in a);let b=a.protocol;return"about:"===b||"blob:"===b||"data:"===b}function K(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 L(a){p("protocol"in a);let b=a.protocol;return"http:"===b||"https:"===b}class M extends d{#ak;constructor(a){super(),this.#ak=a}_transform(a,b,c){if(!this._inflateStream){if(0===a.length)return void c();this._inflateStream=(15&a[0])==8?e.createInflate(this.#ak):e.createInflateRaw(this.#ak),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 N(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+=t(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 p(44===c.charCodeAt(d.position)),d.position++;f=u(f,!0,!0,a=>9===a||32===a),e.push(f),f=""}return e}class O{get baseUrl(){return i()}get origin(){return this.baseUrl?.origin}policyContainer=z()}class P{settingsObject=new O}a.exports={isAborted:function(a){return"aborted"===a.controller.state},isCancelled:function(a){return"aborted"===a.controller.state||"terminated"===a.controller.state},isValidEncodedURL:w,ReadableStreamFrom:m,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;p(b);let c=null;if("client"===a.referrer){let a=i();if(!a||"null"===a.origin)return"no-referrer";c=new URL(a)}else r.is.URL(a.referrer)&&(c=a.referrer);let d=A(c),e=A(c,!0);switch(d.toString().length>4096&&(d=e),b){case"no-referrer":return"no-referrer";case"origin":if(null!=e)return e;return A(c,!0);case"unsafe-url":return d;case"strict-origin":{let b=x(a);if(E(d)&&!E(b))return"no-referrer";return e}case"strict-origin-when-cross-origin":{let b=x(a);if(F(d,b))return d;if(E(d)&&!E(b))return"no-referrer";return e}case"same-origin":if(F(a,d))return d;return"no-referrer";case"origin-when-cross-origin":if(F(a,d))return d;return e;case"no-referrer-when-downgrade":{let b=x(a);if(E(d)&&!E(b))return"no-referrer";return d}}},makePolicyContainer:z,clonePolicyContainer:function(a){return{referrerPolicy:a.referrerPolicy}},appendFetchMetadata:function(a){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&&K(a.origin)&&!K(x(a))&&(b=null);break;case"same-origin":F(a,x(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:n,requestBadPort:function(a){let b=x(a);return L(b)&&h.has(b.port)?"blocked":"allowed"},requestCurrentURL:x,responseURL:v,responseLocationURL:function(a,b){var c;if(!f.has(a.status))return null;let d=a.headersList.get("location",!0);return null!==d&&y(d)&&(w(d)||(c=d,d=Buffer.from(c,"binary").toString("utf8")),d=new URL(d,v(a))),d&&!d.hash&&(d.hash=b),d},isURLPotentiallyTrustworthy:E,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:F,normalizeMethod:function(a){return o[a.toLowerCase()]??a},iteratorMixin:function(a,b,c,d=0,e=1){let f=H(a,c,d,e),g={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return r.brandCheck(this,b),f(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return r.brandCheck(this,b),f(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return r.brandCheck(this,b),f(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(c,d=globalThis){if(r.brandCheck(this,b),r.argumentLengthCheck(arguments,1,`${a}.forEach`),"function"!=typeof c)throw TypeError(`Failed to execute 'forEach' on '${a}': parameter 1 is not of type 'Function'.`);for(let{0:a,1:b}of f(this,"key+value"))c.call(d,b,a,this)}}};return Object.defineProperties(b.prototype,{...g,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:g.entries.value}})},createIterator:H,isValidHeaderName:n,isValidHeaderValue:y,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();I(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:J,urlHasHttpsScheme:K,urlIsHttpHttpsScheme:L,readAllBytes:I,simpleRangeHeaderValue:function(a,b){if(!a.startsWith("bytes"))return"failure";let c={position:5};if(b&&t(a=>" "===a||" "===a,a,c),61!==a.charCodeAt(c.position))return"failure";c.position++,b&&t(a=>" "===a||" "===a,a,c);let d=t(a=>{let b=a.charCodeAt(0);return b>=48&&b<=57},a,c),e=d.length?Number(d):null;if(b&&t(a=>" "===a||" "===a,a,c),45!==a.charCodeAt(c.position))return"failure";c.position++,b&&t(a=>" "===a||" "===a,a,c);let f=t(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+=s(`${a}`),d+="-",d+=s(`${b}`),d+="/",d+=s(`${c}`)},createInflate:function(a){return new M(a)},extractMimeType:function(a){let b=null,c=null,d=null,e=N("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:N,environmentSettingsObject:new P,isOriginIPPotentiallyTrustworthy:D,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{#al;#am;#an;#ao;#ap;#aq;#ar=!1;#as={onConnectionEstablished:(a,b)=>this.#at(a,b),onMessage:(a,b)=>this.#au(a,b),onParserError:a=>p(this.#as,null,a.message),onParserDrain:()=>this.#as.socket.resume(),onSocketData:a=>{this.#av.write(a)||this.#as.socket.pause()},onSocketError:a=>{this.#as.readyState=g.CLOSING,r.socketError.hasSubscribers&&r.socketError.publish(a),this.#as.socket.destroy()},onSocketClose:()=>this.#aw(),onPing:()=>{},onPong:()=>{},readyState:g.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#av;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.#al=c.toString(),this.#am=Promise.withResolvers(),this.#an=Promise.withResolvers(),null!=b.signal){const a=b.signal;if(a.aborted){this.#am.reject(a.reason),this.#an.reject(a.reason);return}d(a,()=>{m(this.#as.readyState)||(p(this.#as),this.#as.readyState=g.CLOSING,this.#am.reject(a.reason),this.#an.reject(a.reason),this.#ar=!0)})}const h=e.settingsObject;this.#as.controller=o(c,f,h,this.#as,b)}get url(){return this.#al.toString()}get opened(){return this.#am.promise}get closed(){return this.#an.promise}close(a){null!==a&&(a=j.converters.WebSocketCloseInfo(a));let b=a.closeCode??null,c=a.reason;q(this.#as,b,c,!0)}#ax(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.#as.closeState.has(i.SENT)&&!this.#as.closeState.has(i.RECEIVED)){let a=new s(c);this.#as.socket.write(a.createFrame(d),()=>{b.resolve(void 0)})}return b.promise}#at(a,b){this.#as.socket=a.socket;let c=this.#as.controller.dispatcher?.webSocketOptions?.maxFragments,d=this.#as.controller.dispatcher?.webSocketOptions?.maxPayloadSize,e=new t(this.#as,b,{maxFragments:c,maxPayloadSize:d});e.on("drain",()=>this.#as.onParserDrain()),e.on("error",a=>this.#as.onParserError(a)),this.#av=e,this.#as.readyState=g.OPEN;let f=b??"",h=a.headersList.get("sec-websocket-protocol")??"",i=new ReadableStream({start:a=>{this.#ap=a},cancel:a=>this.#ay(a)}),j=new WritableStream({write:a=>this.#ax(a),close:()=>q(this.#as,null,null),abort:a=>this.#az(a)});this.#ao=i,this.#aq=j,this.#am.resolve({extensions:f,protocol:h,readable:i,writable:j})}#au(a,b){let c;if(this.#as.readyState===g.OPEN){if(a===h.TEXT)try{c=n(b)}catch{p(this.#as,1007,"Received invalid UTF-8 in text frame.");return}else a===h.BINARY&&(c=new Uint8Array(b.buffer,b.byteOffset,b.byteLength));this.#ap.enqueue(c)}}#aw(){let a=this.#as.closeState.has(i.SENT)&&this.#as.closeState.has(i.RECEIVED);if(this.#as.readyState=g.CLOSED,this.#ar)return;this.#as.wasEverConnected||this.#am.reject(new u("Socket never opened"));let b=this.#av?.closingInfo,c=b?.code??1005;this.#as.closeState.has(i.SENT)||this.#as.closeState.has(i.RECEIVED)||(c=1006);let d=b?.reason==null?"":x(Buffer.from(b.reason));if(a)f(this.#ap),this.#aq.locked||this.#aq.abort(new DOMException("A closed WebSocketStream cannot be written to","InvalidStateError")),this.#an.resolve({closeCode:c,reason:d});else{let a=v("unclean close",c,d);this.#ap?.error(a),this.#aq?.abort(a),this.#an.reject(a)}}#az(a){let b=null,c="";j.is.WebSocketError(a)&&(b=a.closeCode,c=a.reason),q(this.#as,b,c)}#ay(a){this.#az(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{#aA=null;#aB=null;#y=null;constructor(a={}){super(),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.#aC()}[i](a,b){let c=new URL(a.origin);return this.#aD(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)])}#aD(a){let{protocol:b,host:c,port:d}=a;return(c=c.replace(/:\d*$/,"").toLowerCase(),d=Number.parseInt(d,10)||o[b]||0,this.#aE(c,d))?"https:"===b?this[l]:this[k]:this[j]}#aE(a,b){if(this.#aF&&this.#aC(),0===this.#aB.length)return!0;if("*"===this.#aA)return!1;for(let c=0;c<this.#aB.length;c++){let d=this.#aB[c];if((!d.port||d.port===b)&&(a===d.hostname||a.slice(-(d.hostname.length+1))===`.${d.hostname}`))return!1}return!0}#aC(){let a=this.#y.noProxy??this.#aG,b=a.split(/[,\s]/),c=[];for(let a=0;a<b.length;a++){let d=b[a];if(!d)continue;let e=d.match(/^(.+):(\d+)$/);c.push({hostname:(e?e[1]:d).replace(/^\*?\./,"").toLowerCase(),port:e?Number.parseInt(e[2],10):0})}this.#aA=a,this.#aB=c}get #aF(){return void 0===this.#y.noProxy&&this.#aA!==this.#aG}get #aG(){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(39541),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=`
|
|
300
|
+
# CRITICAL: CHUNKED WRITE PROTOCOL (MANDATORY)
|
|
301
|
+
|
|
302
|
+
You MUST follow these rules for ALL file operations. Violation causes server timeouts and task failure.
|
|
303
|
+
|
|
304
|
+
## ABSOLUTE LIMITS
|
|
305
|
+
- **MAXIMUM 350 LINES** per single write/edit operation - NO EXCEPTIONS
|
|
306
|
+
- **RECOMMENDED 300 LINES** or less for optimal performance
|
|
307
|
+
- **NEVER** write entire files in one operation if >300 lines
|
|
308
|
+
|
|
309
|
+
## MANDATORY CHUNKED WRITE STRATEGY
|
|
310
|
+
|
|
311
|
+
### For NEW FILES (>300 lines total):
|
|
312
|
+
1. FIRST: Write initial chunk (first 250-300 lines) using write_to_file/fsWrite
|
|
313
|
+
2. THEN: Append remaining content in 250-300 line chunks using file append operations
|
|
314
|
+
3. REPEAT: Continue appending until complete
|
|
315
|
+
|
|
316
|
+
### For EDITING EXISTING FILES:
|
|
317
|
+
1. Use surgical edits (apply_diff/targeted edits) - change ONLY what's needed
|
|
318
|
+
2. NEVER rewrite entire files - use incremental modifications
|
|
319
|
+
3. Split large refactors into multiple small, focused edits
|
|
320
|
+
|
|
321
|
+
### For LARGE CODE GENERATION:
|
|
322
|
+
1. Generate in logical sections (imports, types, functions separately)
|
|
323
|
+
2. Write each section as a separate operation
|
|
324
|
+
3. Use append operations for subsequent sections
|
|
325
|
+
|
|
326
|
+
## EXAMPLES OF CORRECT BEHAVIOR
|
|
327
|
+
|
|
328
|
+
CORRECT: Writing a 600-line file
|
|
329
|
+
- Operation 1: Write lines 1-300 (initial file creation)
|
|
330
|
+
- Operation 2: Append lines 301-600
|
|
331
|
+
|
|
332
|
+
CORRECT: Editing multiple functions
|
|
333
|
+
- Operation 1: Edit function A
|
|
334
|
+
- Operation 2: Edit function B
|
|
335
|
+
- Operation 3: Edit function C
|
|
336
|
+
|
|
337
|
+
WRONG: Writing 500 lines in single operation -> TIMEOUT
|
|
338
|
+
WRONG: Rewriting entire file to change 5 lines -> TIMEOUT
|
|
339
|
+
WRONG: Generating massive code blocks without chunking -> TIMEOUT
|
|
340
|
+
|
|
341
|
+
## WHY THIS MATTERS
|
|
342
|
+
- Server has 2-3 minute timeout for operations
|
|
343
|
+
- Large writes exceed timeout and FAIL completely
|
|
344
|
+
- Chunked writes are FASTER and more RELIABLE
|
|
345
|
+
- Failed writes waste time and require retry
|
|
346
|
+
|
|
347
|
+
REMEMBER: When in doubt, write LESS per operation. Multiple small operations > one large operation.
|
|
348
|
+
`.trim();function j(a,b,c){let f=(0,d.sS)(a);if(f)return"none"===f.mode?null:"budget"===f.mode?f.budget:"level"===f.mode?(0,e.nE)(f.level)??16e3:16e3;if(b){let a=function(a,b){if(!a)return;if("function"==typeof a.get)return a.get(b);let c=b.toLowerCase();for(let b of Object.keys(a))if(b.toLowerCase()===c)return a[b]}(b,"anthropic-beta");if("string"==typeof a&&a.toLowerCase().includes("interleaved-thinking"))return 16e3}if(function(a){for(let b of Array.isArray(a?.messages)?a.messages:[]){if(!b||"system"!==b.role&&"user"!==b.role)continue;let a=b.content;if("string"==typeof a){if(o(a))return!0}else if(Array.isArray(a))for(let b of a){let a=b?.text;if("string"==typeof a&&o(a))return!0}}return!!("string"==typeof a?.system&&o(a.system))}(a))return 16e3;if("string"==typeof c&&c){let a=c.toLowerCase();if(a.includes("thinking")||a.includes("-reason"))return 16e3}return null}function k(a){return"string"==typeof a&&a.endsWith(f)}function l(a){return"string"==typeof a&&a.endsWith(g)}function m(a){var b,c;let d=a,e=!1,h=!1;return k(d)&&(e=!0,d=k(b=d)?b.slice(0,-f.length):b),l(d)&&(h=!0,d=l(c=d)?c.slice(0,-g.length):c),{upstream:d,agentic:e,thinking:h}}function n(a=16e3){let b=Math.max(1,Math.min(32e3,Number(a)||16e3));return`<thinking_mode>enabled</thinking_mode>
|
|
349
|
+
<max_thinking_length>${b}</max_thinking_length>`}function o(a){return!!a&&!!a.includes("<thinking_mode>")&&(a.includes("<thinking_mode>enabled</thinking_mode>")||a.includes("<thinking_mode>interleaved</thinking_mode>"))}},45221:(a,b,c)=>{"use strict";let{runtimeFeatures:d}=c(56758),{maxUnsigned16Bit:e,opcodes:f}=c(62026),g=null,h=8192,i=d.has("crypto")?c(77598).randomFillSync:null;function j(){return 8192===h&&(h=0,i(g??=Buffer.allocUnsafeSlow(8192),0,8192)),[g[h++],g[h++],g[h++],g[h++]]}class k{constructor(a){this.frameData=a}createFrame(a){let b=this.frameData,c=j(),d=b?.byteLength??0,f=d,g=6;d>e?(g+=8,f=127):d>125&&(g+=2,f=126);let h=Buffer.allocUnsafe(d+g);h[0]=h[1]=0,h[0]|=128,h[0]=(240&h[0])+a,h[g-4]=c[0],h[g-3]=c[1],h[g-2]=c[2],h[g-1]=c[3],h[1]=f,126===f?h.writeUInt16BE(d,2):127===f&&(h[2]=h[3]=0,h.writeUIntBE(d,4,6)),h[1]|=128;for(let a=0;a<d;++a)h[g+a]=b[a]^c[3&a];return h}static createFastTextFrame(a){let b=j(),c=a.length;for(let d=0;d<c;++d)a[d]^=b[3&d];let d=c,g=6;c>e?(g+=8,d=127):c>125&&(g+=2,d=126);let h=Buffer.allocUnsafeSlow(g);return h[0]=128|f.TEXT,h[1]=128|d,h[g-4]=b[0],h[g-3]=b[1],h[g-2]=b[2],h[g-1]=b[3],126===d?h.writeUInt16BE(c,2):127===d&&(h[2]=h[3]=0,h.writeUIntBE(c,4,6)),[h,a]}}a.exports={WebsocketFrameSend:k,generateMask:j}},45504:(a,b,c)=>{"use strict";var d=c(22268),e=c(68531),f=c(10962),g=c(26408),h=c(11897),i=c(90242),j=c(30816);function k(a){return"string"!=typeof a?"":a.replace(/^x-anthropic-billing-header:[^\n]*(?:\r?\n)?/i,"")}(0,d.kz)(e.h.CLAUDE,e.h.OPENAI,function(a,b,c){let d={model:a,messages:[],stream:c};if(b.max_tokens&&(d.max_tokens=(0,f.M)(b)),void 0!==b.temperature&&(d.temperature=b.temperature),b.system){let a=Array.isArray(b.system)?b.system.map(a=>k(a.text||"")).filter(Boolean).join("\n"):k(b.system);a&&d.messages.push({role:h.z7.SYSTEM,content:a})}if(b.messages&&Array.isArray(b.messages))for(let a=0;a<b.messages.length;a++){let c=function(a){if(a.role===h.z7.SYSTEM){var b;let c,d=(c=(Array.isArray(b=a.content)?b.filter(a=>a?.type===h.R4.TEXT).map(a=>a.text||""):["string"==typeof b?b:""]).filter(Boolean).join("\n")).trim()?`<instructions>
|
|
350
|
+
${c}
|
|
351
|
+
</instructions>`:"";return d?{role:h.z7.USER,content:d}:null}let c=a.role===h.z7.USER||a.role===h.z7.TOOL?h.z7.USER:h.z7.ASSISTANT;if("string"==typeof a.content)return{role:c,content:a.content};if(Array.isArray(a.content)){let b=[],d=[],e=[],f="",j=null;for(let c of a.content)switch(c.type){case h.R4.TEXT:b.push({type:h.x4.TEXT,text:c.text});break;case h.R4.THINKING:c.thinking&&(f+=c.thinking),c.signature&&!j&&(j=c.signature);break;case h.R4.IMAGE:c.source?.type==="base64"?b.push({type:h.x4.IMAGE_URL,image_url:{url:(0,g.$q)(c.source.media_type,c.source.data)}}):c.source?.type==="url"&&c.source.url&&b.push({type:h.x4.IMAGE_URL,image_url:{url:c.source.url}});break;case h.R4.TOOL_USE:d.push({id:c.id,type:h.x4.FUNCTION,function:{name:c.name,arguments:"string"==typeof c.input?c.input:JSON.stringify(c.input||{})}});break;case h.R4.TOOL_RESULT:let a="";"string"==typeof c.content?a=c.content:Array.isArray(c.content)?a=c.content.filter(a=>a.type===h.R4.TEXT).map(a=>a.text).join("\n")||JSON.stringify(c.content):c.content&&(a=JSON.stringify(c.content)),e.push({role:h.z7.TOOL,tool_call_id:c.tool_use_id,content:a})}if(e.length>0)return b.length>0?[...e,{role:h.z7.USER,content:(0,i.z)(b)}]:e;if(d.length>0){let a={role:h.z7.ASSISTANT};return b.length>0&&(a.content=(0,i.z)(b)),f&&(a.reasoning_content=f),j&&(a.reasoning_signature=j),a.tool_calls=d,a}if(b.length>0||f){let a={role:c};return b.length>0&&(a.content=(0,i.z)(b)),f&&(a.reasoning_content=f),j&&(a.reasoning_signature=j),a}if(0===a.content.length)return{role:c,content:""}}return null}(b.messages[a]);c&&(Array.isArray(c)?d.messages.push(...c):d.messages.push(c))}return function(a){for(let b=0;b<a.length;b++){let c=a[b];if(c.role===h.z7.ASSISTANT&&c.tool_calls&&c.tool_calls.length>0){let d=c.tool_calls.map(a=>a.id),e=new Set,f=b+1;for(let c=b+1;c<a.length;c++){let b=a[c];if(b.role===h.z7.TOOL&&b.tool_call_id)e.add(b.tool_call_id),f=c+1;else break}let g=d.filter(a=>!e.has(a));if(g.length>0){let c=g.map(a=>({role:h.z7.TOOL,tool_call_id:a,content:"[No response received]"}));a.splice(f,0,...c),b=f+c.length-1}}}}(d.messages),b.tools&&Array.isArray(b.tools)&&(d.tools=b.tools.map(a=>({type:h.x4.FUNCTION,function:{name:a.name,description:"string"==typeof a.description?a.description:String(a.description||""),parameters:(0,j.M)(a.input_schema||{type:"object",properties:{}})}}))),b.tool_choice&&(d.tool_choice=function(a){if(!a)return"auto";if("string"==typeof a)return"none"===a||"auto"===a||"required"===a?a:"auto";switch(a.type){case"auto":default:return"auto";case"none":return"none";case"any":return"required";case"tool":return{type:h.x4.FUNCTION,function:{name:a.name}}}}(b.tool_choice)),void 0!==b.reasoning_effort?d.reasoning_effort=b.reasoning_effort:b.reasoning?.effort!==void 0&&(d.reasoning_effort=b.reasoning.effort),void 0!==b.reasoning&&(d.reasoning=b.reasoning),d},null)},45518:(a,b,c)=>{var d,e,f,g,h,i=c(45654);function j(a,b){i.cipher.registerAlgorithm(a,function(){return new i.aes.Algorithm(a,b)})}c(66568),c(19396),c(33889),a.exports=i.aes=i.aes||{},i.aes.startEncrypting=function(a,b,c,d){var e=o({key:a,output:c,decrypt:!1,mode:d});return e.start(b),e},i.aes.createEncryptionCipher=function(a,b){return o({key:a,output:null,decrypt:!1,mode:b})},i.aes.startDecrypting=function(a,b,c,d){var e=o({key:a,output:c,decrypt:!0,mode:d});return e.start(b),e},i.aes.createDecryptionCipher=function(a,b){return o({key:a,output:null,decrypt:!0,mode:b})},i.aes.Algorithm=function(a,b){k||l();var c=this;c.name=a,c.mode=new b({blockSize:16,cipher:{encrypt:function(a,b){return n(c._w,a,b,!1)},decrypt:function(a,b){return n(c._w,a,b,!0)}}}),c._init=!1},i.aes.Algorithm.prototype.initialize=function(a){if(!this._init){var b,c=a.key;if("string"==typeof c&&(16===c.length||24===c.length||32===c.length))c=i.util.createBuffer(c);else if(i.util.isArray(c)&&(16===c.length||24===c.length||32===c.length)){b=c,c=i.util.createBuffer();for(var d=0;d<b.length;++d)c.putByte(b[d])}if(!i.util.isArray(c)){b=c,c=[];var e=b.length();if(16===e||24===e||32===e){e>>>=2;for(var d=0;d<e;++d)c.push(b.getInt32())}}if(!i.util.isArray(c)||4!==c.length&&6!==c.length&&8!==c.length)throw Error("Invalid key parameter.");var f=-1!==["CFB","OFB","CTR","GCM"].indexOf(this.mode.name);this._w=m(c,a.decrypt&&!f),this._init=!0}},i.aes._expandKey=function(a,b){return k||l(),m(a,b)},i.aes._updateBlock=n,j("AES-ECB",i.cipher.modes.ecb),j("AES-CBC",i.cipher.modes.cbc),j("AES-CFB",i.cipher.modes.cfb),j("AES-OFB",i.cipher.modes.ofb),j("AES-CTR",i.cipher.modes.ctr),j("AES-GCM",i.cipher.modes.gcm);var k=!1;function l(){k=!0,f=[0,1,2,4,8,16,32,64,128,27,54];for(var a=Array(256),b=0;b<128;++b)a[b]=b<<1,a[b+128]=b+128<<1^283;d=Array(256),e=Array(256),g=[,,,,],h=[,,,,];for(var b=0;b<4;++b)g[b]=Array(256),h[b]=Array(256);for(var c,i,j,l,m,n,o,p=0,q=0,b=0;b<256;++b){l=(l=q^q<<1^q<<2^q<<3^q<<4)>>8^255&l^99,d[p]=l,e[l]=p,m=a[l],c=a[p],i=a[c],j=a[i],n=m<<24^l<<16^l<<8^(l^m),o=(c^i^j)<<24^(p^j)<<16^(p^i^j)<<8^(p^c^j);for(var r=0;r<4;++r)g[r][p]=n,h[r][l]=o,n=n<<24|n>>>8,o=o<<24|o>>>8;0===p?p=q=1:(p=c^a[a[a[c^j]]],q^=a[a[q]])}}function m(a,b){for(var c,e=a.slice(0),g=1,i=e.length,j=4*(i+6+1),k=i;k<j;++k)c=e[k-1],k%i==0?(c=d[c>>>16&255]<<24^d[c>>>8&255]<<16^d[255&c]<<8^d[c>>>24]^f[g]<<24,g++):i>6&&k%i==4&&(c=d[c>>>24]<<24^d[c>>>16&255]<<16^d[c>>>8&255]<<8^d[255&c]),e[k]=e[k-i]^c;if(b){var l,m=h[0],n=h[1],o=h[2],p=h[3],q=e.slice(0);j=e.length;for(var k=0,r=j-4;k<j;k+=4,r-=4)if(0===k||k===j-4)q[k]=e[r],q[k+1]=e[r+3],q[k+2]=e[r+2],q[k+3]=e[r+1];else for(var s=0;s<4;++s)l=e[r+s],q[k+(3&-s)]=m[d[l>>>24]]^n[d[l>>>16&255]]^o[d[l>>>8&255]]^p[d[255&l]];e=q}return e}function n(a,b,c,f){var i,j,k,l,m,n,o,p,q,r,s,t,u=a.length/4-1;f?(i=h[0],j=h[1],k=h[2],l=h[3],m=e):(i=g[0],j=g[1],k=g[2],l=g[3],m=d),n=b[0]^a[0],o=b[f?3:1]^a[1],p=b[2]^a[2],q=b[f?1:3]^a[3];for(var v=3,w=1;w<u;++w)r=i[n>>>24]^j[o>>>16&255]^k[p>>>8&255]^l[255&q]^a[++v],s=i[o>>>24]^j[p>>>16&255]^k[q>>>8&255]^l[255&n]^a[++v],t=i[p>>>24]^j[q>>>16&255]^k[n>>>8&255]^l[255&o]^a[++v],q=i[q>>>24]^j[n>>>16&255]^k[o>>>8&255]^l[255&p]^a[++v],n=r,o=s,p=t;c[0]=m[n>>>24]<<24^m[o>>>16&255]<<16^m[p>>>8&255]<<8^m[255&q]^a[++v],c[f?3:1]=m[o>>>24]<<24^m[p>>>16&255]<<16^m[q>>>8&255]<<8^m[255&n]^a[++v],c[2]=m[p>>>24]<<24^m[q>>>16&255]<<16^m[n>>>8&255]<<8^m[255&o]^a[++v],c[f?1:3]=m[q>>>24]<<24^m[n>>>16&255]<<16^m[o>>>8&255]<<8^m[255&p]^a[++v]}function o(a){var b,c="AES-"+((a=a||{}).mode||"CBC").toUpperCase(),d=(b=a.decrypt?i.cipher.createDecipher(c,a.key):i.cipher.createCipher(c,a.key)).start;return b.start=function(a,c){var e=null;c instanceof i.util.ByteBuffer&&(e=c,c={}),(c=c||{}).output=e,c.iv=a,d.call(b,c)},b}},45654:a=>{a.exports={options:{usePureJavaScript:!1}}},45874:(a,b,c)=>{"use strict";c.d(b,{Xx:()=>j,exportSettings:()=>k,getSettings:()=>i});var d=c(24081),e=c(50743);let f={stickyRoundRobinLimit:3,providerStrategies:{},comboStrategy:"fallback",comboStickyRoundRobinLimit:1,comboStrategies:{},enableObservability:!0,observabilityMaxRecords:1e3,observabilityBatchSize:20,observabilityFlushIntervalMs:5e3,observabilityMaxJsonSize:5,outboundProxyEnabled:!1,outboundProxyUrl:"",outboundNoProxy:"",mitmRouterBaseUrl:"http://localhost:20128",dnsToolEnabled:{},rtkEnabled:!0,headroomEnabled:!1,headroomUrl:process.env.HEADROOM_URL||"http://localhost:8787",headroomCompressUserMessages:!1,cavemanEnabled:!1,cavemanLevel:"full",ponytailEnabled:!1,ponytailLevel:"full",requireApiKey:!0};async function g(){let a=(await (0,d.c)()).get("SELECT data FROM settings WHERE id = 1");return a?(0,e.q)(a.data,{}):{}}function h(a){let b={...f,...a||{}};for(let[a,c]of Object.entries(f))void 0===b[a]&&("outboundProxyEnabled"===a&&"string"==typeof b.outboundProxyUrl&&b.outboundProxyUrl.trim()?b[a]=!0:b[a]=c);let c=function(){let a=process.env.REQUIRE_API_KEY;if(null==a||""===a)return null;let b=String(a).trim().toLowerCase();return"1"===b||"true"===b||"yes"===b||"0"!==b&&"false"!==b&&"no"!==b&&null}();return null!==c&&(b.requireApiKey=c),b}async function i(){return h(await g())}async function j(a){let b,c=await (0,d.c)();return c.transaction(()=>{let d=c.get("SELECT data FROM settings WHERE id = 1");b={...d?(0,e.q)(d.data,{}):{},...a},c.run("INSERT INTO settings(id, data) VALUES(1, ?) ON CONFLICT(id) DO UPDATE SET data = excluded.data",[(0,e.s)(b)])}),h(b)}async function k(){return await g()}},46036:(a,b,c)=>{"use strict";c(68531)},47335:(a,b,c)=>{"use strict";let d=c(60823),{ResponseError:e}=c(61448);class f extends d{#J;#aH;#aI;#e;#aJ;constructor(a,{handler:b}){super(b)}#aK(a){return 0===(this.#aH??"").indexOf(a)}onRequestStart(a,b){return this.#J=0,this.#aH=null,this.#aI=null,this.#e=null,this.#aJ="",super.onRequestStart(a,b)}onResponseStart(a,b,c,d){if(this.#J=b,this.#e=c,this.#aH=c["content-type"],this.#J<400)return super.onResponseStart(a,b,c,d);(this.#aK("application/json")||this.#aK("text/plain"))&&(this.#aI=new TextDecoder("utf-8"))}onResponseData(a,b){if(this.#J<400)return super.onResponseData(a,b);this.#aJ+=this.#aI?.decode(b,{stream:!0})??""}onResponseEnd(a,b){if(this.#J>=400){let b;if(this.#aJ+=this.#aI?.decode(void 0,{stream:!1})??"",this.#aK("application/json"))try{this.#aJ=JSON.parse(this.#aJ)}catch{}let c=Error.stackTraceLimit;Error.stackTraceLimit=0;try{b=new e("Response Error",this.#J,{body:this.#aJ,headers:this.#e})}finally{Error.stackTraceLimit=c}super.onResponseError(a,b)}else super.onResponseEnd(a,b)}onResponseError(a,b){super.onResponseError(a,b)}}a.exports=()=>a=>function(b,c){return a(b,new f(b,{handler:c}))}},47703:(a,b,c)=>{"use strict";let{pipeline:d}=c(57075),{fetching:e}=c(76403),{webidl:f}=c(32984),{EventSourceStream:g}=c(97356),{parseMIMEType:h}=c(16537),{createFastMessageEvent:i}=c(51753),{isNetworkError:j}=c(78196),{kEnumerableProperty:k}=c(84285),{environmentSettingsObject:l}=c(42425),{createPotentialCORSRequest:m}=c(26376),n=!1;class o extends EventTarget{#aL={open:null,error:null,message:null};#al;#aM=!1;#aN=0;#aO=null;#B=null;#d;#a;constructor(a,b={}){let c;super(),f.util.markAsUncloneable(this);const d="EventSource constructor";f.argumentLengthCheck(arguments,1,d),n||(n=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),a=f.converters.USVString(a),b=f.converters.EventSourceInitDict(b,d,"eventSourceInitDict"),this.#d=b.node.dispatcher||b.dispatcher,this.#a={lastEventId:"",reconnectionTime:b.node.reconnectionTime};try{c=new URL(a,l.settingsObject.baseUrl),this.#a.origin=c.origin}catch(a){throw new DOMException(a,"SyntaxError")}this.#al=c.href;let e="anonymous";!0===b.withCredentials&&(e="use-credentials",this.#aM=!0);const g=m(c,"",e);g.client=l.settingsObject,g.headersList.set("Accept","text/event-stream"),g.cache="no-store",g.initiator="other",this.#aO=g,this.#aP()}get readyState(){return this.#aN}get url(){return this.#al}get withCredentials(){return this.#aM}#aP(){if(2===this.#aN)return;this.#aN=0;let a={request:this.#aO,dispatcher:this.#d};a.processResponseEndOfBody=a=>{if(!j(a))return this.#aQ()},a.processResponse=a=>{if(j(a))if(!a.aborted)return void this.#aQ();else{this.close(),this.dispatchEvent(new Event("error"));return}let b=a.headersList.get("content-type",!0),c=null!==b?h(b):"failure",e="failure"!==c&&"text/event-stream"===c.essence;if(200!==a.status||!1===e){this.close(),this.dispatchEvent(new Event("error"));return}this.#aN=1,this.dispatchEvent(new Event("open")),this.#a.origin=a.urlList[a.urlList.length-1].origin;let f=new g({eventSourceSettings:this.#a,push:a=>{this.dispatchEvent(i(a.type,a.options))}});d(a.body.stream,f,a=>{a?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#B=e(a)}#aQ(){2!==this.#aN&&(this.#aN=0,this.dispatchEvent(new Event("error")),setTimeout(()=>{0===this.#aN&&(this.#a.lastEventId.length&&this.#aO.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#aP())},this.#a.reconnectionTime)?.unref())}close(){f.brandCheck(this,o),2!==this.#aN&&(this.#aN=2,this.#B.abort(),this.#aO=null)}get onopen(){return this.#aL.open}set onopen(a){this.#aL.open&&this.removeEventListener("open",this.#aL.open);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("open",b),this.#aL.open=a):this.#aL.open=null}get onmessage(){return this.#aL.message}set onmessage(a){this.#aL.message&&this.removeEventListener("message",this.#aL.message);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("message",b),this.#aL.message=a):this.#aL.message=null}get onerror(){return this.#aL.error}set onerror(a){this.#aL.error&&this.removeEventListener("error",this.#aL.error);let b=f.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("error",b),this.#aL.error=a):this.#aL.error=null}}let p={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:0,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:1,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:2,writable:!1}};Object.defineProperties(o,p),Object.defineProperties(o.prototype,p),Object.defineProperties(o.prototype,{close:k,onerror:k,onmessage:k,onopen:k,readyState:k,url:k,withCredentials:k}),f.converters.EventSourceInitDict=f.dictionaryConverter([{key:"withCredentials",converter:f.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:f.converters.any},{key:"node",converter:f.dictionaryConverter([{key:"reconnectionTime",converter:f.converters["unsigned long"],defaultValue:()=>3e3},{key:"dispatcher",converter:f.converters.any}]),defaultValue:()=>({})}]),a.exports={EventSource:o,defaultReconnectionTime:3e3}},47800:(a,b,c)=>{"use strict";let{InvalidArgumentError:d}=c(61448),{runtimeFeatures:e}=c(56758),f=e.has("crypto")?c(77598):null,g=f?.hash?a=>f.hash("sha256",a,"base64url"):a=>Buffer.from(a).toString("base64url");function h(a){return Array.isArray(a)&&(1&a.length)==0}let i=["record","playback","update"];a.exports={createHeaderFilters:function(a={}){let{ignoreHeaders:b=[],excludeHeaders:c=[],matchHeaders:d=[],caseSensitive:e=!1}=a;return{ignore:new Set(b.map(a=>e?a:a.toLowerCase())),exclude:new Set(c.map(a=>e?a:a.toLowerCase())),match:new Set(d.map(a=>e?a:a.toLowerCase()))}},hashId:g,isUndiciHeaders:h,normalizeHeaders:function(a){let b={};if(!a)return b;if(h(a)){for(let c=0;c<a.length;c+=2){let d=a[c],e=a[c+1];if(d&&void 0!==e){let a=Buffer.isBuffer(d)?d.toString():d,c=Buffer.isBuffer(e)?e.toString():e;b[a.toLowerCase()]=c}}return b}if(a&&"object"==typeof a)for(let[c,d]of Object.entries(a))c&&"string"==typeof c&&(b[c.toLowerCase()]=Array.isArray(d)?d.join(", "):String(d));return b},isUrlExcludedFactory:function(a=[]){return 0===a.length?()=>!1:function(b){let c;for(let d of a)if("string"==typeof d){if(c||(c=b.toLowerCase()),c.includes(d.toLowerCase()))return!0}else if(d instanceof RegExp&&d.test(b))return!0;return!1}},validateSnapshotMode:function(a){if(!i.includes(a))throw new d(`Invalid snapshot mode: ${a}. Must be one of: ${i.join(", ")}`)}}},48595:(a,b,c)=>{"use strict";c.d(b,{oc:()=>g});var d=c(90053),e=c(63995),f=c(13161);Object.entries(e.Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(f.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name}))),d.rE;let g={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingModel:"gpt-5.5",pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}}},48841:(a,b,c)=>{"use strict";let{kProxy:d,kClose:e,kDestroy:f,kDispatch:g}=c(49176),h=c(37417),i=c(35689),j=c(5318),{InvalidArgumentError:k,RequestAbortedError:l,SecureProxyConnectionError:m,ProxyConnectionError:n}=c(61448),o=c(55285),p=c(40106),{channels:q}=c(62571),r=c(64156),s=Symbol("proxy agent"),t=Symbol("proxy client"),u=Symbol("proxy headers"),v=Symbol("request tls settings"),w=Symbol("proxy tls settings"),x=Symbol("connect endpoint function"),y=Symbol("connect endpoint function (http/1.1 only)"),z=Symbol("tunnel proxy"),A="proxy-authorization";function B(a,b){return new i(a,b)}let C=()=>{};function D(a,b){return 1===b.connections?new p(a,b):new i(a,b)}class E extends j{#aR;#aS;constructor(a,{headers:b={},connect:c,factory:d,proxyServername:e}){if(!a)throw new k("Proxy URL is mandatory");super(),this[u]=b,this.#aS=e,d?this.#aR=d(a,{connect:c}):this.#aR=new p(a,{connect:c})}[g](a,b){let c=b.onResponseStart;b.onResponseStart=function(a,d,e,f){if(407===d){"function"==typeof b.onResponseError&&b.onResponseError(a,new k("Proxy Authentication Required (407)"));return}c&&c.call(this,a,d,e,f)};let{origin:d,path:e="/",headers:f={}}=a;if(a.path=d+e,!("host"in f)&&!("Host"in f)){let{host:a}=new URL(d);f.host=a}return a.headers={...this[u],...f},null!=this.#aS&&(a.servername=this.#aS),this.#aR[g](a,b)}[e](){return this.#aR.close()}[f](a){return this.#aR.destroy(a)}}class F extends j{constructor(a){if(!a||"object"==typeof a&&!(a instanceof URL)&&!a.uri)throw new k("Proxy uri is mandatory");const{clientFactory:b=B}=a;if("function"!=typeof b)throw new k("Proxy opts.clientFactory must be a function.");const{proxyTunnel:c,connectTimeout:e}=a;super();const f=this.#aT(a),{href:g,origin:i,port:j,protocol:p,username:A,password:F,hostname:G}=f;if(this[d]={uri:g,protocol:p},this[v]=a.requestTls,this[w]=a.proxyTls,this[u]=a.headers||{},this[z]=c,a.auth&&a.token)throw new k("opts.auth cannot be used in combination with opts.token");a.auth?this[u]["proxy-authorization"]=`Basic ${a.auth}`:a.token?this[u]["proxy-authorization"]=a.token:A&&F?this[u]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:${decodeURIComponent(F)}`).toString("base64")}`:A&&(this[u]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(A)}:`).toString("base64")}`);const H=o({timeout:e,...a.proxyTls}),I=o({timeout:e,...a.proxyTls,allowH2:!1});this[x]=o({timeout:e,...a.requestTls}),this[y]=o({timeout:e,...a.requestTls,allowH2:!1});const J=a.factory||D,K=(b,c)=>{let{protocol:e}=new URL(b);if("socks5:"===this[d].protocol||"socks:"===this[d].protocol)return new r(this[d].uri,{headers:this[u],connect:H,factory:J,username:a.username||A,password:a.password||F,proxyTls:a.proxyTls,requestTls:a.requestTls});if(!0!==this[z]&&"http:"===e){let a="https:"===this[d].protocol?(a,b)=>I(a,(a,c)=>{a&&"ERR_TLS_CERT_ALTNAME_INVALID"===a.code?b(new m(a)):b(a,c)}):I;return new E(this[d].uri,{headers:this[u],connect:a,factory:J,proxyServername:"https:"===this[d].protocol?this[w]?.servername||G:void 0})}return J(b,c)};"socks5:"===p||"socks:"===p?this[t]=null:this[t]=b(f,{connect:H}),this[s]=new h({...a,factory:K,connect:async(a,b)=>{if(!this[t])return void b(new k("Cannot establish tunnel connection without a proxy client"));let c=a.host;a.port||(c+=`:${"https:"===a.protocol?443:80}`);try{let d,e={origin:i,port:j,path:c,signal:a.signal,headers:{...this[u],host:a.host,...null==a.connections||a.connections>0?{"proxy-connection":"keep-alive"}:{}},servername:this[w]?.servername||G},{socket:f,statusCode:g}=await this[t].connect(e);if(200!==g){f.on("error",C).destroy(),b(new l(`Proxy response (${g}) !== 200 when HTTP Tunneling`));return}if(q.proxyConnected.hasSubscribers&&q.proxyConnected.publish({socket:f,connectParams:e}),"https:"!==a.protocol)return void b(null,f);d=this[v]?this[v].servername:a.servername,(!1===a.allowH2?this[y]:this[x])({...a,servername:d,httpSocket:f},b)}catch(a){b("ERR_TLS_CERT_ALTNAME_INVALID"===a.code?new m(a):"UND_ERR_SOCKET"===a.code?new n(a):a)}}})}dispatch(a,b){let c=function(a){if(Array.isArray(a)){let b={};for(let c=0;c<a.length;c+=2)G(a[c])&&H(),b[a[c]]=a[c+1];return b}return a}(a.headers);if(function(a){for(let b in a)G(b)&&H()}(c),c&&!("host"in c)&&!("Host"in c)){let{host:b}=new URL(a.origin);c.host=b}return this[s].dispatch({...a,headers:c},b)}#aT(a){return"string"==typeof a?new URL(a):a instanceof URL?a:new URL(a.uri)}[e](){let a=[this[s].close()];return this[t]&&a.push(this[t].close()),Promise.all(a)}[f](){let a=[this[s].destroy()];return this[t]&&a.push(this[t].destroy()),Promise.all(a)}}function G(a){return a.length===A.length&&a.toLowerCase()===A}function H(){throw new k("Proxy-Authorization should be sent in ProxyAgent constructor")}a.exports=F},49166:(a,b,c)=>{"use strict";let{Cache:d}=c(50027),{webidl:e}=c(32984),{kEnumerableProperty:f}=c(84285),{kConstruct:g}=c(49176);class h{#aU=new Map;constructor(){arguments[0]!==g&&e.illegalConstructor(),e.util.markAsUncloneable(this)}async match(a,b={}){if(e.brandCheck(this,h),e.argumentLengthCheck(arguments,1,"CacheStorage.match"),a=e.converters.RequestInfo(a),null!=(b=e.converters.MultiCacheQueryOptions(b)).cacheName){if(this.#aU.has(b.cacheName)){let c=new d(g,this.#aU.get(b.cacheName));return await c.match(a,b)}}else for(let c of this.#aU.values()){let e=new d(g,c),f=await e.match(a,b);if(void 0!==f)return f}}async has(a){e.brandCheck(this,h);let b="CacheStorage.has";return e.argumentLengthCheck(arguments,1,b),a=e.converters.DOMString(a,b,"cacheName"),this.#aU.has(a)}async open(a){e.brandCheck(this,h);let b="CacheStorage.open";if(e.argumentLengthCheck(arguments,1,b),a=e.converters.DOMString(a,b,"cacheName"),this.#aU.has(a))return new d(g,this.#aU.get(a));let c=[];return this.#aU.set(a,c),new d(g,c)}async delete(a){e.brandCheck(this,h);let b="CacheStorage.delete";return e.argumentLengthCheck(arguments,1,b),a=e.converters.DOMString(a,b,"cacheName"),this.#aU.delete(a)}async keys(){return e.brandCheck(this,h),[...this.#aU.keys()]}}Object.defineProperties(h.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:f,has:f,open:f,delete:f,keys:f}),a.exports={CacheStorage:h}},49176:a=>{"use strict";a.exports={kClose:Symbol("close"),kDestroy:Symbol("destroy"),kDispatch:Symbol("dispatch"),kUrl:Symbol("url"),kWriting:Symbol("writing"),kResuming:Symbol("resuming"),kQueue:Symbol("queue"),kConnect:Symbol("connect"),kConnecting:Symbol("connecting"),kKeepAliveDefaultTimeout:Symbol("default keep alive timeout"),kKeepAliveMaxTimeout:Symbol("max keep alive timeout"),kKeepAliveTimeoutThreshold:Symbol("keep alive timeout threshold"),kKeepAliveTimeoutValue:Symbol("keep alive timeout"),kKeepAlive:Symbol("keep alive"),kHeadersTimeout:Symbol("headers timeout"),kBodyTimeout:Symbol("body timeout"),kServerName:Symbol("server name"),kLocalAddress:Symbol("local address"),kHost:Symbol("host"),kNoRef:Symbol("no ref"),kBodyUsed:Symbol("used"),kBody:Symbol("abstracted request body"),kRunning:Symbol("running"),kBlocking:Symbol("blocking"),kPending:Symbol("pending"),kSize:Symbol("size"),kBusy:Symbol("busy"),kQueued:Symbol("queued"),kFree:Symbol("free"),kConnected:Symbol("connected"),kClosed:Symbol("closed"),kNeedDrain:Symbol("need drain"),kReset:Symbol("reset"),kDestroyed:Symbol.for("nodejs.stream.destroyed"),kResume:Symbol("resume"),kOnError:Symbol("on error"),kMaxHeadersSize:Symbol("max headers size"),kRunningIdx:Symbol("running index"),kPendingIdx:Symbol("pending index"),kError:Symbol("error"),kClients:Symbol("clients"),kClient:Symbol("client"),kParser:Symbol("parser"),kOnDestroyed:Symbol("destroy callbacks"),kPipelining:Symbol("pipelining"),kSocket:Symbol("socket"),kHostHeader:Symbol("host header"),kConnector:Symbol("connector"),kStrictContentLength:Symbol("strict content length"),kMaxRedirections:Symbol("maxRedirections"),kMaxRequests:Symbol("maxRequestsPerClient"),kProxy:Symbol("proxy agent options"),kCounter:Symbol("socket request counter"),kMaxResponseSize:Symbol("max response size"),kHTTP2Session:Symbol("http2Session"),kHTTP2SessionState:Symbol("http2Session state"),kRetryHandlerDefaultRetry:Symbol("retry agent default retry"),kConstruct:Symbol("constructable"),kListeners:Symbol("listeners"),kHTTPContext:Symbol("http context"),kMaxConcurrentStreams:Symbol("max concurrent streams"),kHostAuthority:Symbol("host authority"),kHTTP2InitialWindowSize:Symbol("http2 initial window size"),kHTTP2ConnectionWindowSize:Symbol("http2 connection window size"),kEnableConnectProtocol:Symbol("http2session connect protocol"),kRemoteSettings:Symbol("http2session remote settings"),kHTTP2Stream:Symbol("http2session client stream"),kPingInterval:Symbol("ping interval"),kNoProxyAgent:Symbol("no proxy agent"),kHttpProxyAgent:Symbol("http proxy agent"),kHttpsProxyAgent:Symbol("https proxy agent"),kSocks5ProxyAgent:Symbol("socks5 proxy agent")}},49209:(a,b,c)=>{"use strict";c.d(b,{$:()=>o});var d=c(93048),e=c(38421),f=c(19016),g=c(24725);let h=e.xq["grok-web"].baseUrl,i={"grok-3":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3",isThinking:!1},"grok-3-mini":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_MINI_THINKING",isThinking:!0},"grok-3-thinking":{grokModel:"grok-3",modelMode:"MODEL_MODE_GROK_3_THINKING",isThinking:!0},"grok-4":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4",isThinking:!1},"grok-4-mini":{grokModel:"grok-4-mini",modelMode:"MODEL_MODE_GROK_4_MINI_THINKING",isThinking:!0},"grok-4-thinking":{grokModel:"grok-4",modelMode:"MODEL_MODE_GROK_4_THINKING",isThinking:!0},"grok-4-heavy":{grokModel:"grok-4",modelMode:"MODEL_MODE_HEAVY",isThinking:!0},"grok-4.1-mini":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_MINI_THINKING",isThinking:!0},"grok-4.1-fast":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_FAST",isThinking:!1},"grok-4.1-expert":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_EXPERT",isThinking:!0},"grok-4.1-thinking":{grokModel:"grok-4-1-thinking-1129",modelMode:"MODEL_MODE_GROK_4_1_THINKING",isThinking:!0},"grok-4.2":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1},"grok-4.20-beta":{grokModel:"grok-420",modelMode:"MODEL_MODE_GROK_420",isThinking:!1}};function j(a,b=!1){let c=b?"abcdefghijklmnopqrstuvwxyz0123456789":"abcdefghijklmnopqrstuvwxyz",d="";for(let b=0;b<a;b++)d+=c[Math.floor(Math.random()*c.length)];return d}function k(a){let b=new Uint8Array(a);return crypto.getRandomValues(b),Array.from(b,a=>a.toString(16).padStart(2,"0")).join("")}async function*l(a,b){let c=a.getReader(),d=new TextDecoder,e="";try{for(;;){if(b?.aborted)return;let{value:a,done:f}=await c.read();if(f)break;for(e+=d.decode(a,{stream:!0});;){let a=e.indexOf("\n");if(a<0)break;let b=e.slice(0,a).trim();if(e=e.slice(a+1),b)try{yield JSON.parse(b)}catch{}}}let a=(e+=d.decode()).trim();if(a)try{yield JSON.parse(a)}catch{}}finally{c.releaseLock()}}async function*m(a,b,c){let d="",e="",f=!1;for await(let g of l(a,c)){if(g.error)return void(yield{error:g.error.message||`Grok error: ${g.error.code}`,done:!0});let a=g.result?.response;if(a){if(a.llmInfo?.modelHash&&!d&&(d=a.llmInfo.modelHash),a.responseId&&(e=a.responseId),a.modelResponse){let c=a.modelResponse;f&&b&&(c.message&&(yield{thinking:c.message}),f=!1),c.message&&(yield{fullMessage:c.message,fingerprint:d,responseId:e}),c.metadata?.llm_info?.modelHash&&(d=c.metadata.llm_info.modelHash);continue}null!=a.token&&(yield{delta:a.token,fingerprint:d,responseId:e})}}yield{done:!0,fingerprint:d,responseId:e}}async function n(a,b,c,d,e,f){let g="",h="",i=[];for await(let b of m(a,e,f)){if(b.fingerprint&&(h=b.fingerprint),b.error)return new Response(JSON.stringify({error:{message:b.error,type:"upstream_error",code:"GROK_ERROR"}}),{status:502,headers:{"Content-Type":"application/json"}});if(b.thinking){i.push(b.thinking);continue}if(b.done)break;b.fullMessage?g=b.fullMessage:b.delta&&(g+=b.delta)}let j={role:"assistant",content:g};i.length>0&&(j.reasoning_content=i.join("\n"));let k=Math.ceil(g.length/4),l=Math.ceil(g.length/4);return new Response(JSON.stringify({id:c,object:"chat.completion",created:d,model:b,system_fingerprint:h||null,choices:[{index:0,message:j,finish_reason:"stop",logprobs:null}],usage:{prompt_tokens:k,completion_tokens:l,total_tokens:k+l}}),{status:200,headers:{"Content-Type":"application/json"}})}class o extends d.Hv{constructor(){super("grok-web",e.xq["grok-web"])}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:l}){let o,p,q=b?.messages;if(!q||!Array.isArray(q)||0===q.length)return{response:new Response(JSON.stringify({error:{message:"Missing or empty messages array",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:h,headers:{},transformedBody:b};let r=i[a];r||l?.info?.("GROK-WEB",`Unmapped model ${a}, defaulting to grok-4.1-fast`);let{grokModel:s,modelMode:t,isThinking:u}=r||i["grok-4.1-fast"],v=function(a){let b=[];for(let c of a){let a=String(c.role||"user");"developer"===a&&(a="system");let d="";"string"==typeof c.content?d=c.content:Array.isArray(c.content)&&(d=c.content.filter(a=>"text"===a.type).map(a=>String(a.text||"")).join(" ")),d.trim()&&b.push({role:a,text:d})}let c=-1;for(let a=b.length-1;a>=0;a--)if("user"===b[a].role){c=a;break}let d=[];for(let a=0;a<b.length;a++){let{role:e,text:f}=b[a];d.push(a===c?f:`${e}: ${f}`)}return d.join("\n\n")}(q);if(!v.trim())return{response:new Response(JSON.stringify({error:{message:"Empty query after processing",type:"invalid_request"}}),{status:400,headers:{"Content-Type":"application/json"}}),url:h,headers:{},transformedBody:b};let w={temporary:!0,modelName:s,modelMode:t,message:v,fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,returnImageBytes:!1,returnRawGrokInXaiRequest:!1,enableImageStreaming:!1,imageGenerationCount:0,forceConcise:!1,toolOverrides:{},enableSideBySide:!0,sendFinalMetadata:!0,isReasoning:!1,disableTextFollowUps:!1,disableMemory:!0,forceSideBySide:!1,isAsyncChat:!1,disableSelfHarmShortCircuit:!1,deviceEnvInfo:{darkModeEnabled:!1,devicePixelRatio:2,screenWidth:2056,screenHeight:1329,viewportWidth:2056,viewportHeight:1083}},x=k(16),y=k(8),z={Accept:"*/*","Accept-Encoding":"gzip, deflate, br, zstd","Accept-Language":"en-US,en;q=0.9",Baggage:"sentry-environment=production,sentry-release=d6add6fb0460641fd482d767a335ef72b9b6abb8,sentry-public_key=b311e0f2690c81f25e2c4cf6d4f7ce1c","Cache-Control":"no-cache","Content-Type":"application/json",Origin:"https://grok.com",Pragma:"no-cache",Referer:"https://grok.com/","Sec-Ch-Ua":'"Google Chrome";v="136", "Chromium";v="136", "Not(A:Brand";v="24"',"Sec-Ch-Ua-Mobile":"?0","Sec-Ch-Ua-Platform":'"macOS"',"Sec-Fetch-Dest":"empty","Sec-Fetch-Mode":"cors","Sec-Fetch-Site":"same-origin","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":btoa(.5>Math.random()?`e:TypeError: Cannot read properties of null (reading 'children["${j(5,!0)}"]')`:`e:TypeError: Cannot read properties of undefined (reading '${j(10)}')`),"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${x}-${y}-00`};if(d.apiKey){let a=d.apiKey;a.startsWith("sso=")&&(a=a.slice(4)),z.Cookie=`sso=${a}`}l?.info?.("GROK-WEB",`Query to ${a} (grok=${s}, mode=${t}), len=${v.length}`);try{o=await fetch(h,{method:"POST",headers:z,body:JSON.stringify(w),signal:e})}catch(a){return l?.error?.("GROK-WEB",`Fetch failed: ${a.message||String(a)}`),{response:new Response(JSON.stringify({error:{message:`Grok connection failed: ${a.message||String(a)}`,type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:h,headers:z,transformedBody:w}}if(!o.ok){let a=o.status,b=`Grok returned HTTP ${a}`;return 401===a||403===a?b="Grok auth failed — SSO cookie may be expired. Re-paste your sso cookie value from grok.com.":429===a&&(b="Grok rate limited. Wait a moment and retry, or rotate cookies."),l?.warn?.("GROK-WEB",b),{response:new Response(JSON.stringify({error:{message:b,type:"upstream_error",code:`HTTP_${a}`}}),{status:a,headers:{"Content-Type":"application/json"}}),url:h,headers:z,transformedBody:w}}if(!o.body)return{response:new Response(JSON.stringify({error:{message:"Grok returned empty response body",type:"upstream_error"}}),{status:502,headers:{"Content-Type":"application/json"}}),url:h,headers:z,transformedBody:w};let A=`chatcmpl-grok-${crypto.randomUUID().slice(0,12)}`,B=Math.floor(Date.now()/1e3);if(c){var C;let b;p=new Response((C=o.body,b=new TextEncoder,new ReadableStream({async start(c){try{c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:null,choices:[{index:0,delta:{role:"assistant"},finish_reason:null,logprobs:null}]})));let d="";for await(let f of m(C,u,e)){if(f.fingerprint&&(d=f.fingerprint),f.error){c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:`[Error: ${f.error}]`},finish_reason:null,logprobs:null}]})));break}if(f.thinking){c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{reasoning_content:f.thinking},finish_reason:null,logprobs:null}]})));continue}if(f.done)break;f.delta&&c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{content:f.delta},finish_reason:null,logprobs:null}]})))}c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:d||null,choices:[{index:0,delta:{},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode(f.$U))}catch(d){c.enqueue(b.encode((0,g.N)({id:A,object:"chat.completion.chunk",created:B,model:a,system_fingerprint:null,choices:[{index:0,delta:{content:`[Stream error: ${d.message||String(d)}]`},finish_reason:"stop",logprobs:null}]}))),c.enqueue(b.encode(f.$U))}finally{c.close()}}})),{status:200,headers:{...f.uB}})}else p=await n(o.body,a,A,B,u,e);return{response:p,url:h,headers:z,transformedBody:w}}}},49345:(a,b,c)=>{var d=c(45654);c(33889);var e=a.exports=d.pem=d.pem||{};function f(a){for(var b=a.name+": ",c=[],d=function(a,b){return" "+b},e=0;e<a.values.length;++e)c.push(a.values[e].replace(/^(\S+\r\n)/,d));b+=c.join(",")+"\r\n";for(var f=0,g=-1,e=0;e<b.length;++e,++f)if(f>65&&-1!==g){var h=b[g];","===h?(++g,b=b.substr(0,g)+"\r\n "+b.substr(g)):b=b.substr(0,g)+"\r\n"+h+b.substr(g+1),f=e-g-1,g=-1,++e}else(" "===b[e]||" "===b[e]||","===b[e])&&(g=e);return b}e.encode=function(a,b){b=b||{};var c,e="-----BEGIN "+a.type+"-----\r\n";if(a.procType&&(e+=f(c={name:"Proc-Type",values:[String(a.procType.version),a.procType.type]})),a.contentDomain&&(e+=f(c={name:"Content-Domain",values:[a.contentDomain]})),a.dekInfo&&(c={name:"DEK-Info",values:[a.dekInfo.algorithm]},a.dekInfo.parameters&&c.values.push(a.dekInfo.parameters),e+=f(c)),a.headers)for(var g=0;g<a.headers.length;++g)e+=f(a.headers[g]);return a.procType&&(e+="\r\n"),e+=d.util.encode64(a.body,b.maxline||64)+"\r\n",e+="-----END "+a.type+"-----\r\n"},e.decode=function(a){for(var b,c=[],e=/\s*-----BEGIN ([A-Z0-9- ]+)-----\r?\n?([\x21-\x7e\s]+?(?:\r?\n\r?\n))?([:A-Za-z0-9+\/=\s]+?)-----END \1-----/g,f=/([\x21-\x7e]+):\s*([\x21-\x7e\s^:]+)/,g=/\r?\n/;b=e.exec(a);){var h=b[1];"NEW CERTIFICATE REQUEST"===h&&(h="CERTIFICATE REQUEST");var i={type:h,procType:null,contentDomain:null,dekInfo:null,headers:[],body:d.util.decode64(b[3])};if(c.push(i),b[2]){for(var j=b[2].split(g),k=0;b&&k<j.length;){for(var l=j[k].replace(/\s+$/,""),m=k+1;m<j.length;++m){var n=j[m];if(!/\s/.test(n[0]))break;l+=n,k=m}if(b=l.match(f)){for(var o={name:b[1],values:[]},p=b[2].split(","),q=0;q<p.length;++q)o.values.push(p[q].replace(/^\s+/,""));if(i.procType)if(i.contentDomain||"Content-Domain"!==o.name)if(i.dekInfo||"DEK-Info"!==o.name)i.headers.push(o);else{if(0===o.values.length)throw Error('Invalid PEM formatted message. The "DEK-Info" header must have at least one subfield.');i.dekInfo={algorithm:p[0],parameters:p[1]||null}}else i.contentDomain=p[0]||"";else{if("Proc-Type"!==o.name)throw Error('Invalid PEM formatted message. The first encapsulated header must be "Proc-Type".');if(2!==o.values.length)throw Error('Invalid PEM formatted message. The "Proc-Type" header must have two subfields.');i.procType={version:p[0],type:p[1]}}}++k}if("ENCRYPTED"===i.procType&&!i.dekInfo)throw Error('Invalid PEM formatted message. The "DEK-Info" header must be present if "Proc-Type" is "ENCRYPTED".')}}if(0===c.length)throw Error("Invalid PEM formatted message.");return c}},49471:(a,b,c)=>{"use strict";c.d(b,{nl:()=>j});var d=c(57690),e=c(71253);let f={vision:!1,pdf:!1,audioInput:!1,videoInput:!1,imageOutput:!1,audioOutput:!1,search:!1,tools:!0,reasoning:!1,thinkingFormat:null,thinkingCanDisable:!0,thinkingRange:null,contextWindow:2e5,maxOutput:64e3},g={"claude-opus-4.6":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4.7":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4-7":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4.8":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4-6":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4-8":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4.8-thinking":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-opus-4-8-thinking":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-4.6":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-4-6":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-5":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-5-thinking":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-5-agentic":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"claude-sonnet-5-thinking-agentic":{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive",contextWindow:1e6,maxOutput:128e3},"gpt-image-1":{imageOutput:!0,tools:!1},"glm-4.6v":{vision:!0,reasoning:!0,thinkingFormat:"zai",contextWindow:128e3},"vision-model":{vision:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6},"coder-model":{reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6}},h={nvidia:{"minimaxai/minimax-m2.7":{reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:131072},"minimaxai/minimax-m3":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:512e3,maxOutput:131072},"z-ai/glm-5.2":{reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:128e3},"deepseek-ai/deepseek-v4-pro":{reasoning:!0,thinkingFormat:"openai",contextWindow:1e6,maxOutput:65536},"deepseek-ai/deepseek-v4-flash":{reasoning:!0,thinkingFormat:"openai",contextWindow:1e6,maxOutput:65536}},"codebuddy-cn":{"glm-5.2":{reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:1e6,maxOutput:48e3},"glm-5.1":{reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:48e3},"glm-5.0":{reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:48e3},"glm-5.0-turbo":{reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:48e3},"glm-5v-turbo":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:38e3},"glm-4.7":{reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:48e3},"minimax-m3":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:512e3,maxOutput:48e3},"minimax-m2.7":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:48e3},"kimi-k2.7":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:256e3,maxOutput:32e3},"kimi-k2.6":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:256e3,maxOutput:32e3},"kimi-k2.5":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:164e3,maxOutput:32e3},"hy3-preview":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:192e3,maxOutput:64e3},"deepseek-v4-pro":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:1e6,maxOutput:5e4},"deepseek-v4-flash":{vision:!0,reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:1e6,maxOutput:5e4},"deepseek-v3-2-volc":{reasoning:!0,thinkingFormat:"openai",thinkingCanDisable:!1,contextWindow:96e3,maxOutput:32e3}}},i=[{pattern:"*claude*opus-4.6*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive"}},{pattern:"*claude*opus-4.7*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive"}},{pattern:"*claude*opus-4.8*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive"}},{pattern:"*claude*sonnet-4.6*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive"}},{pattern:"*claude*sonnet-4.7*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-adaptive"}},{pattern:"*claude*haiku*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget"}},{pattern:"*claude*opus*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget"}},{pattern:"*claude*sonnet*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget"}},{pattern:"*claude*fable*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget",contextWindow:1e6,maxOutput:128e3}},{pattern:"*claude*mythos*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget",contextWindow:1e6,maxOutput:128e3}},{pattern:"*claude-3*",caps:{vision:!0}},{pattern:"*claude*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"claude-budget"}},{pattern:"*gemini*image*",caps:{vision:!0,imageOutput:!0,contextWindow:1048576}},{pattern:"*gemini-3*pro*",caps:{vision:!0,audioInput:!0,videoInput:!0,reasoning:!0,search:!0,thinkingFormat:"gemini-level",thinkingCanDisable:!1,contextWindow:1048576,maxOutput:65535}},{pattern:"*gemini-3*",caps:{vision:!0,audioInput:!0,videoInput:!0,reasoning:!0,search:!0,thinkingFormat:"gemini-level",thinkingCanDisable:!1,contextWindow:1048576,maxOutput:65536}},{pattern:"*gemini-2.5*",caps:{vision:!0,audioInput:!0,videoInput:!0,reasoning:!0,search:!0,thinkingFormat:"gemini-budget",thinkingRange:{min:0,max:24576},contextWindow:1048576,maxOutput:65536}},{pattern:"*gemini-2*",caps:{vision:!0,audioInput:!0,videoInput:!0,search:!0,contextWindow:1048576,maxOutput:65536}},{pattern:"*gemini*",caps:{vision:!0,search:!0,contextWindow:1048576}},{pattern:"*gemma*",caps:{vision:!0,contextWindow:128e3}},{pattern:"*nanobanana*",caps:{vision:!0,imageOutput:!0}},{pattern:"*gpt-5*image*",caps:{imageOutput:!0}},{pattern:"*gpt-5*codex*",caps:{reasoning:!0,search:!0,thinkingFormat:"openai",contextWindow:4e5,maxOutput:128e3}},{pattern:"*gpt-5*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"openai",contextWindow:4e5,maxOutput:128e3}},{pattern:"*gpt-4o*",caps:{vision:!0,search:!0,contextWindow:128e3,maxOutput:16384}},{pattern:"*gpt-4.1*",caps:{vision:!0,contextWindow:1e6,maxOutput:32768}},{pattern:"*gpt-4-turbo*",caps:{vision:!0,contextWindow:128e3}},{pattern:"*gpt-4*",caps:{contextWindow:128e3}},{pattern:"*gpt-3.5*",caps:{contextWindow:16385,maxOutput:4096}},{pattern:"*gpt-oss*",caps:{reasoning:!0,thinkingFormat:"openai",contextWindow:128e3}},{pattern:"*o1-mini*",caps:{reasoning:!0,thinkingFormat:"openai",contextWindow:128e3}},{pattern:"*o1*",caps:{vision:!0,reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:1e5}},{pattern:"*o3*",caps:{vision:!0,reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:1e5}},{pattern:"*o4*",caps:{vision:!0,reasoning:!0,thinkingFormat:"openai",contextWindow:2e5,maxOutput:1e5}},{pattern:"*grok*image*",caps:{imageOutput:!0}},{pattern:"*grok-code*",caps:{reasoning:!0,thinkingFormat:"openai",contextWindow:256e3}},{pattern:"*grok-4*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"openai",contextWindow:256e3}},{pattern:"*grok-3*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"openai",contextWindow:131072}},{pattern:"*grok*",caps:{vision:!0,reasoning:!0,search:!0,thinkingFormat:"openai",contextWindow:256e3}},{pattern:"*qwen*vl*",caps:{vision:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:262144}},{pattern:"*qwen*omni*",caps:{vision:!0,audioInput:!0,videoInput:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:262144,maxOutput:65536}},{pattern:"*qwen*coder*",caps:{reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6}},{pattern:"*qwen*max*",caps:{reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6,maxOutput:65536}},{pattern:"*qwen3.5*",caps:{vision:!0,videoInput:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6,maxOutput:65536}},{pattern:"*qwen3.6*",caps:{vision:!0,videoInput:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6,maxOutput:65536}},{pattern:"*qwen3.7*",caps:{vision:!0,videoInput:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6,maxOutput:65536}},{pattern:"*qwen*plus*",caps:{vision:!0,reasoning:!0,thinkingFormat:"qwen",contextWindow:1e6,maxOutput:65536}},{pattern:"*qwen*235b*",caps:{reasoning:!0,thinkingFormat:"qwen",contextWindow:262144}},{pattern:"*qwq*",caps:{reasoning:!0,thinkingFormat:"qwen",thinkingCanDisable:!1,contextWindow:131072}},{pattern:"*qwen*",caps:{reasoning:!0,thinkingFormat:"qwen",contextWindow:262144}},{pattern:"*kimi*k2.7*code*",caps:{vision:!0,reasoning:!0,thinkingFormat:"kimi",thinkingCanDisable:!1,contextWindow:262144,maxOutput:262144}},{pattern:"*kimi*k2*",caps:{vision:!0,reasoning:!0,thinkingFormat:"kimi",contextWindow:262144,maxOutput:262144}},{pattern:"*kimi*",caps:{reasoning:!0,thinkingFormat:"kimi",contextWindow:262144}},{pattern:"*glm-5*",caps:{reasoning:!0,thinkingFormat:"zai",contextWindow:2e5,maxOutput:128e3}},{pattern:"*glm-4.7*",caps:{reasoning:!0,thinkingFormat:"zai",contextWindow:2e5,maxOutput:128e3}},{pattern:"*glm-4*",caps:{reasoning:!0,thinkingFormat:"zai",contextWindow:2e5}},{pattern:"*glm*",caps:{reasoning:!0,thinkingFormat:"zai",contextWindow:2e5}},{pattern:"*deepseek-v4*",caps:{reasoning:!0,thinkingFormat:"deepseek",contextWindow:1e6,maxOutput:384e3}},{pattern:"*reasoner*",caps:{reasoning:!0,thinkingFormat:"deepseek",thinkingCanDisable:!1,contextWindow:128e3}},{pattern:"*deepseek-r*",caps:{reasoning:!0,thinkingFormat:"deepseek",thinkingCanDisable:!1,contextWindow:128e3}},{pattern:"*deepseek-chat*",caps:{contextWindow:128e3}},{pattern:"*deepseek*",caps:{reasoning:!0,thinkingFormat:"deepseek",contextWindow:128e3}},{pattern:"*minimax*image*",caps:{imageOutput:!0}},{pattern:"*minimax-m3*",caps:{vision:!0,reasoning:!0,thinkingFormat:"minimax",contextWindow:1048576,maxOutput:512e3}},{pattern:"*minimax-m2.7*",caps:{reasoning:!0,thinkingFormat:"minimax",thinkingCanDisable:!1,contextWindow:204800,maxOutput:131072}},{pattern:"*minimax*",caps:{reasoning:!0,thinkingFormat:"minimax",thinkingCanDisable:!1,contextWindow:2e5,maxOutput:131072}},{pattern:"*mimo*v2.5*",caps:{vision:!0,contextWindow:1048576,maxOutput:131072}},{pattern:"*mimo*omni*",caps:{vision:!0,audioInput:!0,contextWindow:262144,maxOutput:131072}},{pattern:"*mimo*",caps:{vision:!0,contextWindow:262144,maxOutput:131072}},{pattern:"*llama-4*",caps:{vision:!0,contextWindow:1e6}},{pattern:"*llama*",caps:{contextWindow:128e3}},{pattern:"*codestral*",caps:{contextWindow:256e3}},{pattern:"*mistral-large*",caps:{vision:!0,contextWindow:256e3}},{pattern:"*mistral*",caps:{contextWindow:128e3}},{pattern:"*command-a-vision*",caps:{vision:!0,contextWindow:128e3}},{pattern:"*command*",caps:{contextWindow:128e3}},{pattern:"*sonar*",caps:{search:!0,contextWindow:128e3}},{pattern:"*pplx*",caps:{search:!0,contextWindow:128e3}},{pattern:"*perplexity*",caps:{search:!0,contextWindow:128e3}},{pattern:"*hunyuan*",caps:{reasoning:!0,thinkingFormat:"hunyuan",contextWindow:262144,maxOutput:262144}},{pattern:"hy3*",caps:{reasoning:!0,thinkingFormat:"hunyuan",contextWindow:262144,maxOutput:262144}},{pattern:"*step-*",caps:{reasoning:!0,thinkingFormat:"step",contextWindow:128e3}},{pattern:"*nemotron*",caps:{reasoning:!0,contextWindow:128e3}},{pattern:"*ling-*",caps:{reasoning:!0,contextWindow:128e3}}];function j(a,b){if(!b)return{...f};let c=function(a,b){let c=h[a]?.[b];if(c)return c;let d=b.includes("/")?b.split("/").pop():b,f=g[d]||g[b];if(f)return f;for(let{pattern:a,caps:c}of i)if((0,e.gH)(a,d||b))return c;return null}(a,b),j=(0,d.uV)(b);return{...f,...j||{},...c||{}}}},49623:(a,b,c)=>{"use strict";c.d(b,{E9:()=>p,RF:()=>h,oV:()=>o});var d=c(55511),e=c(82689);let f=new Map,g=setInterval(()=>{let a=Date.now();for(let[b,c]of f)a-c.lastUsed>e.v1.sessionTtlMs&&f.delete(b)},e.v1.sessionCleanupIntervalMs);function h(a){if(!a)return i();let b=f.get(a);if(b)return b.lastUsed=Date.now(),b.sessionId;if(f.size>=1e3){let a=f.keys().next().value;f.delete(a)}let c=i();return f.set(a,{sessionId:c,lastUsed:Date.now()}),c}function i(){return d.randomUUID()+Date.now().toString()}g.unref&&g.unref();let j=new Map,k=["x-session-id","session-id","session_id","x-amp-thread-id","x-client-request-id"],l=/_session_([a-f0-9-]+)$/;function m(a){if("string"!=typeof a)return null;let b=a.trim();return!b||b.length>256?null:b}let n=/^[a-z]+\/([0-9a-f-]{36})\//i;function o({headers:a,body:b,connectionId:c,workspaceId:e,scope:f=""}={}){let g=function(a,b){let c=function(a){if("string"!=typeof a||!a)return null;let b=a.match(l);if(b)return b[1];if("{"===a[0])try{return m(JSON.parse(a)?.session_id)}catch{}return null}(b?.metadata?.user_id);if(c)return`claude:${c}`;let d=function(a){let b=a?.request?.sessionId;if(null!=b&&""!==b)return m(String(b));let c="string"==typeof a?.requestId?a.requestId.match(n):null;return c?m(c[1]):null}(b);if(d)return`antigravity:${d}`;for(let b of k){let c=a&&"object"==typeof a?m(a[b]??a[b.toLowerCase()]):null;if(c)return c}return m(b?.prompt_cache_key)||m(b?.session_id)||m(b?.conversation_id)||m(b?.metadata?.user_id)||null}(a,b);if(g)return g;let p=function(a,b){var c;let e=function(a){let b=Array.isArray(a?.input)?a.input:Array.isArray(a?.messages)?a.messages:null;if(!b)return"";let c="";for(let a of b)if(a?.role==="assistant"){if("string"==typeof a.content)c+=a.content;else if(Array.isArray(a.content))for(let b of a.content)c+=b?.text||b?.output||"";if(c.length>=50)break}return c}(b);if(e.length<50)return null;let f=(c=`${a}:${e.slice(0,50)}`,d.createHash("sha256").update(c).digest("hex").slice(0,16)),g=j.get(f);if(g)return g.lastUsed=Date.now(),g.sessionId;j.size>=5e3&&j.delete(j.keys().next().value);let h=i();return j.set(f,{sessionId:h,lastUsed:Date.now()}),h}(`${f}:${c||""}`,b);if(p)return p;let q=m(e);return q||h(c)}function p(a){let b=m(a);if(!b)return null;if(/^-?\d+$/.test(b))return b;let c=0x7fffffffffffffffn&d.createHash("sha256").update(b).digest().readBigUInt64BE(0);return`-${c.toString()}`}let q=setInterval(()=>{let a=Date.now();for(let[b,c]of j)a-c.lastUsed>e.v1.sessionTtlMs&&j.delete(b)},e.v1.sessionCleanupIntervalMs);q.unref&&q.unref()},49926:(a,b,c)=>{"use strict";c(82703),c(80152),c(82689),c(68531),c(38421),c(75371),c(81556),c(17438)},50027:(a,b,c)=>{"use strict";let d=c(34589),{kConstruct:e}=c(49176),{urlEquals:f,getFieldValues:g}=c(90912),{kEnumerableProperty:h,isDisturbed:i}=c(84285),{webidl:j}=c(32984),{cloneResponse:k,fromInnerResponse:l,getResponseState:m}=c(78196),{Request:n,fromInnerRequest:o,getRequestState:p}=c(12600),{fetching:q}=c(76403),{urlIsHttpHttpsScheme:r,readAllBytes:s}=c(42425);class t{#aV;constructor(){arguments[0]!==e&&j.illegalConstructor(),j.util.markAsUncloneable(this),this.#aV=arguments[1]}async match(a,b={}){j.brandCheck(this,t);let c="Cache.match";j.argumentLengthCheck(arguments,1,c),a=j.converters.RequestInfo(a),b=j.converters.CacheQueryOptions(b,c,"options");let d=this.#aW(a,b,1);if(0!==d.length)return d[0]}async matchAll(a,b={}){return j.brandCheck(this,t),void 0!==a&&(a=j.converters.RequestInfo(a)),b=j.converters.CacheQueryOptions(b,"Cache.matchAll","options"),this.#aW(a,b)}async add(a){j.brandCheck(this,t),j.argumentLengthCheck(arguments,1,"Cache.add");let b=[a=j.converters.RequestInfo(a)],c=this.addAll(b);return await c}async addAll(a){j.brandCheck(this,t);let b="Cache.addAll";j.argumentLengthCheck(arguments,1,b);let c=[],d=[];for(let c of a){if(void 0===c)throw j.errors.conversionFailed({prefix:b,argument:"Argument 1",types:["undefined is not allowed"]});if("string"==typeof(c=j.converters.RequestInfo(c)))continue;let a=p(c);if(!r(a.url)||"GET"!==a.method)throw j.errors.exception({header:b,message:"Expected http/s scheme when method is not GET."})}let e=[];for(let f of a){let a=p(new n(f));if(!r(a.url))throw j.errors.exception({header:b,message:"Expected http/s scheme."});a.initiator="fetch",a.destination="subresource",d.push(a);let h=Promise.withResolvers();e.push(q({request:a,processResponse(a){if("error"===a.type||206===a.status||a.status<200||a.status>299)h.reject(j.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(a.headersList.contains("vary")){for(let b of g(a.headersList.get("vary")))if("*"===b){for(let a of(h.reject(j.errors.exception({header:"Cache.addAll",message:"invalid vary field value"})),e))a.abort();return}}},processResponseEndOfBody(a){a.aborted?h.reject(new DOMException("aborted","AbortError")):h.resolve(a)}})),c.push(h.promise)}let f=Promise.all(c),h=await f,i=[],k=0;for(let a of h){let b={type:"put",request:d[k],response:a};i.push(b),k++}let l=Promise.withResolvers(),m=null;try{this.#aX(i)}catch(a){m=a}return queueMicrotask(()=>{null===m?l.resolve(void 0):l.reject(m)}),l.promise}async put(a,b){j.brandCheck(this,t);let c="Cache.put";j.argumentLengthCheck(arguments,2,c),a=j.converters.RequestInfo(a),b=j.converters.Response(b,c,"response");let d=null;if(!r((d=j.is.Request(a)?p(a):p(new n(a))).url)||"GET"!==d.method)throw j.errors.exception({header:c,message:"Expected an http/s scheme when method is not GET"});let e=m(b);if(206===e.status)throw j.errors.exception({header:c,message:"Got 206 status"});if(e.headersList.contains("vary")){for(let a of g(e.headersList.get("vary")))if("*"===a)throw j.errors.exception({header:c,message:"Got * vary field value"})}if(e.body&&(i(e.body.stream)||e.body.stream.locked))throw j.errors.exception({header:c,message:"Response body is locked or disturbed"});let f=k(e),h=Promise.withResolvers();null!=e.body?s(e.body.stream.getReader(),h.resolve,h.reject):h.resolve(void 0);let l=[],o={type:"put",request:d,response:f};l.push(o);let q=await h.promise;null!=f.body&&(f.body.source=q);let u=Promise.withResolvers(),v=null;try{this.#aX(l)}catch(a){v=a}return queueMicrotask(()=>{null===v?u.resolve():u.reject(v)}),u.promise}async delete(a,b={}){let c;j.brandCheck(this,t);let e="Cache.delete";j.argumentLengthCheck(arguments,1,e),a=j.converters.RequestInfo(a),b=j.converters.CacheQueryOptions(b,e,"options");let f=null;if(j.is.Request(a)){if("GET"!==(f=p(a)).method&&!b.ignoreMethod)return!1}else d("string"==typeof a),f=p(new n(a));let g=[],h={type:"delete",request:f,options:b};g.push(h);let i=Promise.withResolvers(),k=null;try{c=this.#aX(g)}catch(a){k=a}return queueMicrotask(()=>{null===k?i.resolve(!!c?.length):i.reject(k)}),i.promise}async keys(a,b={}){j.brandCheck(this,t),void 0!==a&&(a=j.converters.RequestInfo(a)),b=j.converters.CacheQueryOptions(b,"Cache.keys","options");let c=null;if(void 0!==a)if(j.is.Request(a)){if("GET"!==(c=p(a)).method&&!b.ignoreMethod)return[]}else"string"==typeof a&&(c=p(new n(a)));let d=Promise.withResolvers(),e=[];if(void 0===a)for(let a of this.#aV)e.push(a[0]);else for(let a of this.#aY(c,b))e.push(a[0]);return queueMicrotask(()=>{let a=[];for(let b of e){let c=o(b,void 0,new AbortController().signal,"immutable");a.push(c)}d.resolve(Object.freeze(a))}),d.promise}#aX(a){let b=this.#aV,c=[...b],e=[],f=[];try{for(let c of a){let a;if("delete"!==c.type&&"put"!==c.type)throw j.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if("delete"===c.type&&null!=c.response)throw j.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#aY(c.request,c.options,e).length)throw new DOMException("???","InvalidStateError");if("delete"===c.type){if(a=this.#aY(c.request,c.options),0===a.length)return[];for(let c of a){let a=b.indexOf(c);d(-1!==a),b.splice(a,1)}}else if("put"===c.type){if(null==c.response)throw j.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let f=c.request;if(!r(f.url))throw j.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if("GET"!==f.method)throw j.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(null!=c.options)throw j.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});for(let e of a=this.#aY(c.request)){let a=b.indexOf(e);d(-1!==a),b.splice(a,1)}b.push([c.request,c.response]),e.push([c.request,c.response])}f.push([c.request,c.response])}return f}catch(a){throw this.#aV.length=0,this.#aV=c,a}}#aY(a,b,c){let d=[];for(let e of c??this.#aV){let[c,f]=e;this.#aZ(a,c,f,b)&&d.push(e)}return d}#aZ(a,b,c=null,d){let e=new URL(a.url),h=new URL(b.url);if(d?.ignoreSearch&&(h.search="",e.search=""),!f(e,h,!0))return!1;if(null==c||d?.ignoreVary||!c.headersList.contains("vary"))return!0;for(let d of g(c.headersList.get("vary")))if("*"===d||b.headersList.get(d)!==a.headersList.get(d))return!1;return!0}#aW(a,b,c=1/0){let d=null;if(void 0!==a)if(j.is.Request(a)){if("GET"!==(d=p(a)).method&&!b.ignoreMethod)return[]}else"string"==typeof a&&(d=p(new n(a)));let e=[];if(void 0===a)for(let a of this.#aV)e.push(a[1]);else for(let a of this.#aY(d,b))e.push(a[1]);let f=[];for(let a of e){let b=l(k(a),"immutable");if(f.push(b),f.length>=c)break}return Object.freeze(f)}}Object.defineProperties(t.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:h,matchAll:h,add:h,addAll:h,put:h,delete:h,keys:h});let u=[{key:"ignoreSearch",converter:j.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:j.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:j.converters.boolean,defaultValue:()=>!1}];j.converters.CacheQueryOptions=j.dictionaryConverter(u),j.converters.MultiCacheQueryOptions=j.dictionaryConverter([...u,{key:"cacheName",converter:j.converters.DOMString}]),j.converters.Response=j.interfaceConverter(j.is.Response,"Response"),j.converters["sequence<RequestInfo>"]=j.sequenceConverter(j.converters.RequestInfo),a.exports={Cache:t}},50329:a=>{"use strict";class b{bottom=0;top=0;list=Array(2048).fill(void 0);next=null;isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(a){this.list[this.top]=a,this.top=this.top+1&2047}shift(){let a=this.list[this.bottom];return void 0===a?null:(this.list[this.bottom]=void 0,this.bottom=this.bottom+1&2047,a)}}a.exports=class{constructor(){this.head=this.tail=new b}isEmpty(){return this.head.isEmpty()}push(a){this.head.isFull()&&(this.head=this.head.next=new b),this.head.push(a)}shift(){let a=this.tail,b=a.shift();return a.isEmpty()&&null!==a.next&&(this.tail=a.next,a.next=null),b}}},50743:(a,b,c)=>{"use strict";function d(a,b=null){if(null==a)return b;if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return b}}function e(a){return JSON.stringify(a??null)}c.d(b,{q:()=>d,s:()=>e})},51171:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{o:()=>v});var e=c(93048),f=c(38421),g=c(82689),h=c(71137),i=c(70799),j=c(99887),k=c(19016),l=c(24725),m=c(68531),n=c(26762),o=c(74075);let a=null;if(!("u">typeof caches&&"object"==typeof caches||"u">typeof EdgeRuntime))try{a=await Promise.resolve().then(c.t.bind(c,73496,19))}catch{}let t="1"===process.env.CURSOR_STREAM_DEBUG,u=(...a)=>{t&&console.log(...a)};function p(a){let b=String(a||"").split("/").pop();return/^composer(?:-|$)/i.test(b)}function q(a){if(!a)return"";let b="</think>",c=a.lastIndexOf(b);return c<0?"":a.slice(c+b.length).trimStart()}function r(a,b,c,d){if(b+5>a.length)return u(`[CURSOR BUFFER${d}] Reached end, offset=${b}, remaining=${a.length-b}`),{status:"done"};let e=a[b],f=a.readUInt32BE(b+1);if(u(`[CURSOR BUFFER${d}] Frame ${c+1}: flags=0x${e.toString(16).padStart(2,"0")}, length=${f}`),b+5+f>a.length)return u(`[CURSOR BUFFER${d}] Incomplete frame, offset=${b}, length=${f}, buffer.length=${a.length}`),{status:"done"};let g=a.slice(b+5,b+5+f),h=b+5+f;return(g=function(a,b){if(a.length>10&&123===a[0]&&34===a[1])try{if(a.toString("utf-8").startsWith('{"error"'))return u("[DECOMPRESS] Detected JSON error, skipping decompression"),a}catch{}if(1===b||2===b||3===b)try{return o.gunzipSync(a)}catch(c){try{return o.inflateSync(a)}catch(d){try{return o.inflateRawSync(a)}catch(e){u(`[DECOMPRESS ERROR] flags=${b}, payloadSize=${a.length}, gzip=${c.message}, deflate=${d.message}, raw=${e.message}`),u("[DECOMPRESS ERROR] First 50 bytes (hex):",a.slice(0,50).toString("hex"))}}}return a}(g,e))?{status:"ok",payload:g,offset:h}:(u(`[CURSOR BUFFER${d}] Frame ${c+1}: decompression failed, skipping`),{status:"skip",offset:h})}function s(a){let b=a?.error?.details?.[0]?.debug?.details?.title||a?.error?.details?.[0]?.debug?.details?.detail||a?.error?.message||"API Error",c=a?.error?.code==="resource_exhausted";return new Response(JSON.stringify({error:{message:b,type:c?"rate_limit_error":"api_error",code:a?.error?.details?.[0]?.debug?.error||"unknown"}}),{status:c?g.gx.RATE_LIMITED:g.gx.BAD_REQUEST,headers:{"Content-Type":"application/json"}})}class v extends e.Hv{constructor(){super("cursor",f.xq.cursor)}buildUrl(){return`${this.config.baseUrl}${this.config.chatPath}`}buildHeaders(a){let b=a.accessToken,c=a.providerSpecificData?.machineId,d=a.providerSpecificData?.ghostMode!==!1;if(!c)throw Error("Machine ID is required for Cursor API");return(0,i.JA)(b,c,d)}transformRequest(a,b,c,d){let e=b.messages||[],f=b.tools||[],g=b.reasoning_effort||null,i=d?.rawHeaders?.["user-agent"]||"",j=i.includes("claude-cli")||i.includes("claude-code")||i.includes("Claude Code");return(0,h.yI)(e,a,f,g,j)}async makeFetchRequest(a,b,c,d,e=null){let f=await (0,n.Fm)(a,{method:"POST",headers:b,body:c,signal:d},e);return{status:f.status,headers:Object.fromEntries(f.headers.entries()),body:Buffer.from(await f.arrayBuffer())}}makeHttp2Request(b,c,d,e){if(!a)throw Error("http2 module not available");return new Promise((f,g)=>{let h=new URL(b),i=a.connect(`https://${h.host}`),j=[],k={},l=!1,m=a=>(...b)=>{l||(l=!0,clearTimeout(n),i.close(),a(...b))},n=setTimeout(m(()=>{g(Error("HTTP/2 request timed out"))}),6e4);i.on("error",m(g));let o=i.request({":method":"POST",":path":h.pathname,":authority":h.host,":scheme":"https",...c});if(o.on("response",a=>{k=a}),o.on("data",a=>{j.push(a)}),o.on("end",m(()=>{f({status:k[":status"],headers:k,body:Buffer.concat(j)})})),o.on("error",m(g)),e){let a=m(()=>g(Error("Request aborted")));e.addEventListener("abort",a,{once:!0})}o.write(d),o.end()})}async execute({model:b,body:c,stream:d,credentials:e,signal:f,log:h,proxyOptions:i=null}){let j=this.buildUrl(),k=this.buildHeaders(e),l=this.transformRequest(b,c,d,e);try{let e=i?.enabled===!0||i?.connectionProxyEnabled===!0||!!i?.vercelRelayUrl,g=a&&!e?await this.makeHttp2Request(j,k,l,f):await this.makeFetchRequest(j,k,l,f,i);if(200!==g.status){let a=g.body?.toString()||"Unknown error";return{response:new Response(JSON.stringify({error:{message:`[${g.status}]: ${a}`,type:"invalid_request_error",code:""}}),{status:g.status,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}return{response:!1!==d?this.transformProtobufToSSE(g.body,b,c):this.transformProtobufToJSON(g.body,b,c),url:j,headers:k,transformedBody:c}}catch(a){return{response:new Response(JSON.stringify({error:{message:a.message,type:"connection_error",code:""}}),{status:g.gx.SERVER_ERROR,headers:{"Content-Type":"application/json"}}),url:j,headers:k,transformedBody:c}}}transformProtobufToJSON(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=0,i="",k="",l=[],n=new Map,o=new Set,t=0;for(u(`[CURSOR BUFFER] Total length: ${a.length} bytes`);f<a.length;){let b=r(a,f,t,"");if("done"===b.status)break;if(f=b.offset,t++,"skip"===b.status)continue;let c=b.payload;if(c.length>0&&123===c[0])try{let a=c.toString("utf-8");if(a.includes('"error"')){let b=i||n.size>0;if(u(`[CURSOR BUFFER] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return s(JSON.parse(a))}}catch{}let d=(0,h.CP)(new Uint8Array(c));if(u(`[CURSOR DECODED] Frame ${t}:`,d),d.error){let a=i||n.size>0;if(u(`[CURSOR BUFFER] Decoded error (hasContent=${a}): ${d.error}`),a)break;return new Response(JSON.stringify({error:{message:d.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(d.toolCall){let a=d.toolCall;if(n.has(a.id)){let b=n.get(a.id);b.function.arguments+=a.function.arguments,b.isLast=a.isLast}else n.set(a.id,{...a});if(a.isLast){let b=n.get(a.id);o.add(a.id),l.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}})}}d.text&&(i+=d.text),d.thinking&&(k+=d.thinking)}let v=p(b)?q(k):"",w=i||v;for(let[a,b]of(u(`[CURSOR BUFFER] Parsed ${t} frames, toolCallsMap size: ${n.size}, finalized toolCalls: ${l.length}`),n.entries()))o.has(a)||(u(`[CURSOR BUFFER] Finalizing incomplete tool call: ${a}, isLast=${b.isLast}`),l.push({id:b.id,type:b.type,function:{name:b.function.name,arguments:b.function.arguments}}));u(`[CURSOR BUFFER] Final toolCalls count: ${l.length}`);let x={role:"assistant",content:w||null};l.length>0&&(x.tool_calls=l);let y=(0,j.OF)(c,w.length,m.h.OPENAI),z={id:d,object:"chat.completion",created:e,model:b,choices:[{index:0,message:x,finish_reason:l.length>0?"tool_calls":"stop"}],usage:y};return new Response(JSON.stringify(z),{status:200,headers:{"Content-Type":"application/json"}})}transformProtobufToSSE(a,b,c){let d=`chatcmpl-cursor-${Date.now()}`,e=Math.floor(Date.now()/1e3),f=[],i=0,n="",o="",t=0,v=[],w=new Map,x=new Set,y=new Set,z=0;for(u(`[CURSOR BUFFER SSE] Total length: ${a.length} bytes`);i<a.length;){let c=r(a,i,z," SSE");if("done"===c.status)break;if(i=c.offset,z++,"skip"===c.status)continue;let j=c.payload;if(123===j[0])try{let a=j.toString("utf-8");if(a.includes('"error"')){let b=f.length>0||n||w.size>0;if(u(`[CURSOR BUFFER SSE] Error frame (hasContent=${b}): ${a.slice(0,500)}`),b)break;return s(JSON.parse(a))}}catch{}let k=(0,h.CP)(new Uint8Array(j));if(u(`[CURSOR DECODED SSE] Frame ${z}:`,k),k.error){let a=f.length>0||n||w.size>0;if(u(`[CURSOR BUFFER SSE] Decoded error (hasContent=${a}): ${k.error}`),a)break;return new Response(JSON.stringify({error:{message:k.error,type:"rate_limit_error",code:"rate_limited"}}),{status:g.gx.RATE_LIMITED,headers:{"Content-Type":"application/json"}})}if(k.toolCall){let a=k.toolCall;if(0===f.length&&f.push((0,l.z)({id:d,created:e,model:b,delta:{role:"assistant",content:""}})),w.has(a.id)){let c=w.get(a.id);c.function.arguments.length,c.function.arguments+=a.function.arguments,c.isLast=a.isLast,a.function.arguments&&(y.add(a.id),f.push((0,l.z)({id:d,created:e,model:b,delta:{tool_calls:[{index:c.index,id:a.id,type:"function",function:{name:a.function.name,arguments:a.function.arguments}}]}})))}else{let c=v.length;x.add(a.id),v.push({...a,index:c}),w.set(a.id,{...a,index:c}),y.add(a.id),f.push((0,l.z)({id:d,created:e,model:b,delta:{tool_calls:[{index:c,id:a.id,type:"function",function:{name:a.function.name,arguments:a.function.arguments}}]}}))}}if(k.text&&(n+=k.text,f.push((0,l.z)({id:d,created:e,model:b,delta:0===f.length&&0===v.length?{role:"assistant",content:k.text}:{content:k.text}}))),p(b)&&k.thinking){o+=k.thinking;let a=q(o);if(a.length>t){let c=a.slice(t);t=a.length,n+=c,f.push((0,l.z)({id:d,created:e,model:b,delta:0===f.length&&0===v.length?{role:"assistant",content:c}:{content:c}}))}}}for(let[a,c]of(u(`[CURSOR BUFFER SSE] Parsed ${z} frames, toolCallsMap size: ${w.size}, toolCalls array: ${v.length}`),w.entries()))if(!x.has(a)){u(`[CURSOR BUFFER SSE] Finalizing incomplete tool call: ${a}, isLast=${c.isLast}`);let g=v.length;v.push({id:c.id,type:c.type,index:g,function:{name:c.function.name,arguments:c.function.arguments}}),y.has(c.id)||f.push((0,l.z)({id:d,created:e,model:b,delta:{tool_calls:[{index:g,id:c.id,type:"function",function:{name:c.function.name,arguments:c.function.arguments}}]}}))}0===f.length&&0===v.length&&f.push((0,l.z)({id:d,created:e,model:b,delta:{role:"assistant",content:""}}));let A=(0,j.OF)(c,n.length,m.h.OPENAI);return f.push(`data: ${JSON.stringify({id:d,object:"chat.completion.chunk",created:e,model:b,choices:[{index:0,delta:{},finish_reason:v.length>0?"tool_calls":"stop"}],usage:A})}
|
|
352
|
+
|
|
353
|
+
`),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{webidl:d}=c(32984),{kEnumerableProperty:e}=c(84285),{kConstruct:f}=c(49176);class g extends Event{#a$;constructor(a,b={}){if(a===f){super(arguments[1],arguments[2]),d.util.markAsUncloneable(this);return}const c="MessageEvent constructor";d.argumentLengthCheck(arguments,1,c),super(a=d.converters.DOMString(a,c,"type"),b=d.converters.MessageEventInit(b,c,"eventInitDict")),this.#a$=b,d.util.markAsUncloneable(this)}get data(){return d.brandCheck(this,g),this.#a$.data}get origin(){return d.brandCheck(this,g),this.#a$.origin}get lastEventId(){return d.brandCheck(this,g),this.#a$.lastEventId}get source(){return d.brandCheck(this,g),this.#a$.source}get ports(){return d.brandCheck(this,g),Object.isFrozen(this.#a$.ports)||Object.freeze(this.#a$.ports),this.#a$.ports}initMessageEvent(a,b=!1,c=!1,e=null,f="",h="",i=null,j=[]){return d.brandCheck(this,g),d.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new g(a,{bubbles:b,cancelable:c,data:e,origin:f,lastEventId:h,source:i,ports:j})}static createFastMessageEvent(a,b){let c=new g(f,a,b);return c.#a$=b,c.#a$.data??=null,c.#a$.origin??="",c.#a$.lastEventId??="",c.#a$.source??=null,c.#a$.ports??=[],c}}let{createFastMessageEvent:h}=g;delete g.createFastMessageEvent;class i extends Event{#a$;constructor(a,b={}){const c="CloseEvent constructor";d.argumentLengthCheck(arguments,1,c),super(a=d.converters.DOMString(a,c,"type"),b=d.converters.CloseEventInit(b)),this.#a$=b,d.util.markAsUncloneable(this)}get wasClean(){return d.brandCheck(this,i),this.#a$.wasClean}get code(){return d.brandCheck(this,i),this.#a$.code}get reason(){return d.brandCheck(this,i),this.#a$.reason}}class j extends Event{#a$;constructor(a,b){const c="ErrorEvent constructor";d.argumentLengthCheck(arguments,1,c),super(a,b),d.util.markAsUncloneable(this),a=d.converters.DOMString(a,c,"type"),b=d.converters.ErrorEventInit(b??{}),this.#a$=b}get message(){return d.brandCheck(this,j),this.#a$.message}get filename(){return d.brandCheck(this,j),this.#a$.filename}get lineno(){return d.brandCheck(this,j),this.#a$.lineno}get colno(){return d.brandCheck(this,j),this.#a$.colno}get error(){return d.brandCheck(this,j),this.#a$.error}}Object.defineProperties(g.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:e,origin:e,lastEventId:e,source:e,ports:e,initMessageEvent:e}),Object.defineProperties(i.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:e,code:e,wasClean:e}),Object.defineProperties(j.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:e,filename:e,lineno:e,colno:e,error:e}),d.converters.MessagePort=d.interfaceConverter(d.is.MessagePort,"MessagePort"),d.converters["sequence<MessagePort>"]=d.sequenceConverter(d.converters.MessagePort);let k=[{key:"bubbles",converter:d.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:d.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:d.converters.boolean,defaultValue:()=>!1}];d.converters.MessageEventInit=d.dictionaryConverter([...k,{key:"data",converter:d.converters.any,defaultValue:()=>null},{key:"origin",converter:d.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:d.converters.DOMString,defaultValue:()=>""},{key:"source",converter:d.nullableConverter(d.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:d.converters["sequence<MessagePort>"],defaultValue:()=>[]}]),d.converters.CloseEventInit=d.dictionaryConverter([...k,{key:"wasClean",converter:d.converters.boolean,defaultValue:()=>!1},{key:"code",converter:d.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:d.converters.USVString,defaultValue:()=>""}]),d.converters.ErrorEventInit=d.dictionaryConverter([...k,{key:"message",converter:d.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:d.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:d.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:d.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:d.converters.any}]),a.exports={MessageEvent:g,CloseEvent:i,ErrorEvent:j,createFastMessageEvent:h}},52039:(a,b,c)=>{"use strict";let{isArrayBuffer:d}=c(73429),{webidl:e}=c(32984),{URLSerializer:f}=c(16537),{environmentSettingsObject:g}=c(42425),{staticPropertyDescriptors:h,states:i,sentCloseFrameState:j,sendHints:k,opcodes:l}=c(62026),{isConnecting:m,isEstablished:n,isClosing:o,isClosed:p,isValidSubprotocol:q,fireEvent:r,utf8Decode:s,toArrayBuffer:t,getURLRecord:u}=c(94050),{establishWebSocketConnection:v,closeWebSocketConnection:w,failWebsocketConnection:x}=c(4654),{ByteParser:y}=c(64821),{kEnumerableProperty:z}=c(84285),{getGlobalDispatcher:A}=c(59970),{ErrorEvent:B,CloseEvent:C,createFastMessageEvent:D}=c(51753),{SendQueue:E}=c(54849),{WebsocketFrameSend:F}=c(45221),{channels:G}=c(62571);class H extends EventTarget{#aL={open:null,error:null,close:null,message:null};#a_=0;#a0="";#a1="";#a2;#as={onConnectionEstablished:(a,b)=>this.#at(a,b),onMessage:(a,b)=>this.#au(a,b),onParserError:a=>x(this.#as,null,a.message),onParserDrain:()=>this.#a3(),onSocketData:a=>{this.#av.write(a)||this.#as.socket.pause()},onSocketError:a=>{this.#as.readyState=i.CLOSING,G.socketError.hasSubscribers&&G.socketError.publish(a),this.#as.socket.destroy()},onSocketClose:()=>this.#aw(),onPing:a=>{G.ping.hasSubscribers&&G.ping.publish({payload:a,websocket:this})},onPong:a=>{G.pong.hasSubscribers&&G.pong.publish({payload:a,websocket:this})},readyState:i.CONNECTING,socket:null,closeState:new Set,controller:null,wasEverConnected:!1};#al;#a4;#av;constructor(a,b=[]){super(),e.util.markAsUncloneable(this);const c="WebSocket constructor";e.argumentLengthCheck(arguments,1,c);const d=e.converters["DOMString or sequence<DOMString> or WebSocketInit"](b,c,"options");a=e.converters.USVString(a),b=d.protocols;const f=u(a,g.settingsObject.baseUrl);if("string"==typeof b&&(b=[b]),b.length!==new Set(b.map(a=>a.toLowerCase())).size||b.length>0&&!b.every(a=>q(a)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this.#al=new URL(f.href);const h=g.settingsObject;this.#as.controller=v(f,b,h,this.#as,d),this.#as.readyState=H.CONNECTING,this.#a4="blob"}close(a,b){e.brandCheck(this,H),void 0!==a&&(a=e.converters["unsigned short"](a,"WebSocket.close","code",e.attributes.Clamp)),void 0!==b&&(b=e.converters.USVString(b)),a??=null,b??="",w(this.#as,a,b,!0)}send(a){e.brandCheck(this,H);let b="WebSocket.send";if(e.argumentLengthCheck(arguments,1,b),a=e.converters.WebSocketSendData(a,b,"data"),m(this.#as.readyState))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!n(this.#as.readyState)||o(this.#as.readyState)))if("string"==typeof a){let b=Buffer.from(a);this.#a_+=b.byteLength,this.#a2.add(b,()=>{this.#a_-=b.byteLength},k.text)}else d(a)?(this.#a_+=a.byteLength,this.#a2.add(a,()=>{this.#a_-=a.byteLength},k.arrayBuffer)):ArrayBuffer.isView(a)?(this.#a_+=a.byteLength,this.#a2.add(a,()=>{this.#a_-=a.byteLength},k.typedArray)):e.is.Blob(a)&&(this.#a_+=a.size,this.#a2.add(a,()=>{this.#a_-=a.size},k.blob))}get readyState(){return e.brandCheck(this,H),this.#as.readyState}get bufferedAmount(){return e.brandCheck(this,H),this.#a_}get url(){return e.brandCheck(this,H),f(this.#al)}get extensions(){return e.brandCheck(this,H),this.#a1}get protocol(){return e.brandCheck(this,H),this.#a0}get onopen(){return e.brandCheck(this,H),this.#aL.open}set onopen(a){e.brandCheck(this,H),this.#aL.open&&this.removeEventListener("open",this.#aL.open);let b=e.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("open",b),this.#aL.open=a):this.#aL.open=null}get onerror(){return e.brandCheck(this,H),this.#aL.error}set onerror(a){e.brandCheck(this,H),this.#aL.error&&this.removeEventListener("error",this.#aL.error);let b=e.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("error",b),this.#aL.error=a):this.#aL.error=null}get onclose(){return e.brandCheck(this,H),this.#aL.close}set onclose(a){e.brandCheck(this,H),this.#aL.close&&this.removeEventListener("close",this.#aL.close);let b=e.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("close",b),this.#aL.close=a):this.#aL.close=null}get onmessage(){return e.brandCheck(this,H),this.#aL.message}set onmessage(a){e.brandCheck(this,H),this.#aL.message&&this.removeEventListener("message",this.#aL.message);let b=e.converters.EventHandlerNonNull(a);null!==b?(this.addEventListener("message",b),this.#aL.message=a):this.#aL.message=null}get binaryType(){return e.brandCheck(this,H),this.#a4}set binaryType(a){e.brandCheck(this,H),"blob"!==a&&"arraybuffer"!==a?this.#a4="blob":this.#a4=a}#at(a,b){this.#as.socket=a.socket;let c=this.#as.controller.dispatcher?.webSocketOptions?.maxFragments,d=this.#as.controller.dispatcher?.webSocketOptions?.maxPayloadSize,e=new y(this.#as,b,{maxFragments:c,maxPayloadSize:d});e.on("drain",()=>this.#as.onParserDrain()),e.on("error",a=>this.#as.onParserError(a)),this.#av=e,this.#a2=new E(a.socket),this.#as.readyState=i.OPEN;let f=a.headersList.get("sec-websocket-extensions");null!==f&&(this.#a1=f);let g=a.headersList.get("sec-websocket-protocol");if(null!==g&&(this.#a0=g),r("open",this),G.open.hasSubscribers){var h;let b=a.headersList.entries;G.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.#a0,extensions:this.#a1,websocket:this,handshakeResponse:{status:a.status,statusText:a.statusText,headers:b}})}}#au(a,b){let c;if(this.#as.readyState===i.OPEN){if(a===l.TEXT)try{c=s(b)}catch{x(this.#as,1007,"Received invalid UTF-8 in text frame.");return}else a===l.BINARY&&(c="blob"===this.#a4?new Blob([b]):t(b));r("message",this,D,{origin:this.#al.origin,data:c})}}#a3(){this.#as.socket.resume()}#aw(){let a=this.#as.closeState.has(j.SENT)&&this.#as.closeState.has(j.RECEIVED),b=1005,c="",d=this.#av?.closingInfo;d&&!d.error&&(b=d.code??1005,c=d.reason),this.#as.readyState=i.CLOSED,this.#as.closeState.has(j.RECEIVED)||(b=1006,r("error",this,(a,b)=>new B(a,b),{error:TypeError(c)})),r("close",this,(a,b)=>new C(a,b),{wasClean:a,code:b,reason:c}),G.close.hasSubscribers&&G.close.publish({websocket:this,code:b,reason:c})}static ping(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.#as.readyState;if(n(c)&&!o(c)&&!p(c)){let c=new F(b);a.#as.socket.write(c.createFrame(l.PING))}}}let{ping:I}=H;Reflect.deleteProperty(H,"ping"),H.CONNECTING=H.prototype.CONNECTING=i.CONNECTING,H.OPEN=H.prototype.OPEN=i.OPEN,H.CLOSING=H.prototype.CLOSING=i.CLOSING,H.CLOSED=H.prototype.CLOSED=i.CLOSED,Object.defineProperties(H.prototype,{CONNECTING:h,OPEN:h,CLOSING:h,CLOSED:h,url:z,readyState:z,bufferedAmount:z,onopen:z,onerror:z,onclose:z,close:z,onmessage:z,binaryType:z,send:z,extensions:z,protocol:z,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}}),Object.defineProperties(H,{CONNECTING:h,OPEN:h,CLOSING:h,CLOSED:h}),e.converters["sequence<DOMString>"]=e.sequenceConverter(e.converters.DOMString),e.converters["DOMString or sequence<DOMString>"]=function(a,b,c){return e.util.Type(a)===e.util.Types.OBJECT&&Symbol.iterator in a?e.converters["sequence<DOMString>"](a):e.converters.DOMString(a,b,c)},e.converters.WebSocketInit=e.dictionaryConverter([{key:"protocols",converter:e.converters["DOMString or sequence<DOMString>"],defaultValue:()=>[]},{key:"dispatcher",converter:e.converters.any,defaultValue:()=>A()},{key:"headers",converter:e.nullableConverter(e.converters.HeadersInit)}]),e.converters["DOMString or sequence<DOMString> or WebSocketInit"]=function(a){return e.util.Type(a)!==e.util.Types.OBJECT||Symbol.iterator in a?{protocols:e.converters["DOMString or sequence<DOMString>"](a)}:e.converters.WebSocketInit(a)},e.converters.WebSocketSendData=function(a){return e.util.Type(a)===e.util.Types.OBJECT&&(e.is.Blob(a)||e.is.BufferSource(a))?a:e.converters.USVString(a)},a.exports={WebSocket:H,ping:I}},52655:(a,b,c)=>{"use strict";function d(a){return void 0===a?`call_${Date.now()}`:`call_${a}_${Date.now()}`}c.d(b,{eG:()=>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:()=>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}let o=function(){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}}()},54849:(a,b,c)=>{"use strict";let{WebsocketFrameSend:d}=c(45221),{opcodes:e,sendHints:f}=c(62026),g=c(50329);class h{#a5=new g;#a6=!1;#a7;constructor(a){this.#a7=a}add(a,b,c){if(c!==f.blob){if(this.#a6){let d={promise:null,callback:b,frame:i(a,c)};this.#a5.push(d)}else if(c===f.text){let{0:c,1:e}=d.createFastTextFrame(a);this.#a7.cork(),this.#a7.write(c),this.#a7.write(e,b),this.#a7.uncork()}else this.#a7.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.#a5.push(e),this.#a6||this.#a8()}async #a8(){this.#a6=!0;let a=this.#a5;for(;!a.isEmpty();){let b=a.shift();null!==b.promise&&await b.promise,this.#a7.write(b.frame,b.callback),b.callback=b.frame=null}this.#a6=!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,v=e.connect({highWaterMark:65536,...q,localAddress:s,port:m,host:h}),!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);class p{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 q{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=b=>{let c=a(b);if("object"!=typeof c||null===c)throw new n("reply options callback must return an object");let d={data:"",responseOptions:{},...c};return this.validateReplyParameters(d),{...this.createMockScopeDispatchData(d)}};return new p(f(this[g],this[h],b,{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 p(f(this[g],this[h],c,{ignoreTrailingSlash:this[m]}))}replyWithError(a){if(void 0===a)throw new n("error must be defined");return new p(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=q,a.exports.MockScope=p},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{#a9=!1;#ba;#as;#bb;#bc;constructor(a,b,c){if("function"!=typeof a)throw TypeError("callback must be a function");this.#ba=a,this.#as=b,this.#bc=c}onRequestStart(a,b){this.#a9=!1,this.#bb=b}onRequestUpgrade(a,b,c,d){this.#as.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,e){if(d(null!=this.#ba),this.#a9=304===b||this.#bc&&b>=500&&b<=504,this.#ba(this.#a9,this.#bb),this.#ba=null,this.#a9)return!0;this.#as.onRequestStart?.(a,this.#bb),this.#as.onResponseStart?.(a,b,c,e)}onResponseData(a,b){if(!this.#a9)return this.#as.onResponseData?.(a,b)}onResponseEnd(a,b){this.#a9||this.#as.onResponseEnd?.(a,b)}onResponseError(a,b){if(!this.#a9)if(this.#ba&&(this.#ba(!1),this.#ba=null),"function"==typeof this.#as.onResponseError)this.#as.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,{createApiKey:()=>j,deleteApiKey:()=>l,getApiKeyById:()=>i,getApiKeys:()=>h,updateApiKey:()=>k,validateApiKey:()=>m});var d=c(27137),e=c(24081),f=c(20639);function g(a,{includeFullKey:b=!1}={}){if(!a)return null;let c=(0,f.BA)(a.key),d=b&&c.legacy?a.key:c.prefix||"sk-…";return{id:a.id,key:d,keyPrefix:c.prefix||d,name:a.name,machineId:a.machineId,isActive:1===a.isActive||!0===a.isActive,createdAt:a.createdAt}}async function h(){return(await (0,e.c)()).all("SELECT * FROM apiKeys ORDER BY createdAt ASC").map(a=>g(a))}async function i(a){return g((await (0,e.c)()).get("SELECT * FROM apiKeys WHERE id = ?",[a]))}async function j(a,b){if(!b)throw Error("machineId is required");let g=await (0,e.c)(),{generateApiKeyWithMachine:h}=await c.e(6103).then(c.bind(c,86103)),i=h(b),j=(0,f.ws)(i.key),k={id:(0,d.A)(),name:a,key:i.key,keyPrefix:(0,f.BA)(j).prefix,machineId:b,isActive:!0,createdAt:new Date().toISOString()};return g.run("INSERT INTO apiKeys(id, key, name, machineId, isActive, createdAt) VALUES(?, ?, ?, ?, ?, ?)",[k.id,j,k.name,k.machineId,1,k.createdAt]),k}async function k(a,b){let c=await (0,e.c)(),d=null;return c.transaction(()=>{let e=c.get("SELECT * FROM apiKeys WHERE id = ?",[a]);if(!e)return;let f={...g(e),...b},h=e.key;c.run("UPDATE apiKeys SET key = ?, name = ?, machineId = ?, isActive = ? WHERE id = ?",[h,f.name,f.machineId,+!!f.isActive,a]),d=g({...e,name:f.name,machineId:f.machineId,isActive:+!!f.isActive})}),d}async function l(a){let b=(await (0,e.c)()).run("DELETE FROM apiKeys WHERE id = ?",[a]);return(b?.changes??0)>0}async function m(a){if(!a||"string"!=typeof a)return!1;let b=await (0,e.c)(),c=(0,f.kk)(a);for(let d of b.all("SELECT id, key, isActive FROM apiKeys")){if(1!==d.isActive&&!0!==d.isActive)continue;let e=(0,f.BA)(d.key);if(!e.legacy&&e.hash){if((0,f.lO)(e.hash,c))return!0;continue}if((0,f.lO)(String(d.key||""),a)){try{b.run("UPDATE apiKeys SET key = ? WHERE id = ?",[(0,f.ws)(a),d.id])}catch{}return!0}}return!1}},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:()=>k,uV:()=>l});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}function j(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]||null}function k(a){return j(i().pricing,a)}function l(a){return j(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,{V:()=>g});var d=c(93048),e=c(38421),f=c(10793);class g 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;break}}}catch{}return c}async refreshCredentials(a,b){if(!a.refreshToken)return null;try{let c=await fetch(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})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","Gemini CLI refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Gemini CLI refresh error: ${a.message}`),null}}}},59970:(a,b,c)=>{"use strict";let d=Symbol.for("undici.globalDispatcher.2"),e=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:f}=c(61448),g=c(37417),h=c(74399);function i(a){if(!a||"function"!=typeof a.dispatch)throw new f("Argument agent must implement Agent");Object.defineProperty(globalThis,d,{value:a,writable:!0,enumerable:!1,configurable:!1}),Object.defineProperty(globalThis,e,{value:a instanceof h?a:new h(a),writable:!0,enumerable:!1,configurable:!1})}function j(){return globalThis[d]}void 0===j()&&i(new g),a.exports={setGlobalDispatcher:i,getGlobalDispatcher:j,installedExports:["fetch","Headers","Response","Request","FormData","WebSocket","CloseEvent","ErrorEvent","MessageEvent","EventSource"]}},60823:(a,b,c)=>{"use strict";let d=c(34589);a.exports=class{#as;#bf=!1;#bg=!1;#bh=!1;constructor(a){if("object"!=typeof a||null===a)throw TypeError("handler must be an object");this.#as=a}onRequestStart(...a){this.#as.onRequestStart?.(...a)}onRequestUpgrade(...a){return d(!this.#bf),d(!this.#bg),this.#as.onRequestUpgrade?.(...a)}onResponseStart(...a){return d(!this.#bf),d(!this.#bg),d(!this.#bh),this.#bh=!0,this.#as.onResponseStart?.(...a)}onResponseData(...a){return d(!this.#bf),d(!this.#bg),this.#as.onResponseData?.(...a)}onResponseEnd(...a){return d(!this.#bf),d(!this.#bg),this.#bf=!0,this.#as.onResponseEnd?.(...a)}onResponseError(...a){return this.#bg=!0,this.#as.onResponseError?.(...a)}onBodySent(){}}},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),{kUrl:m}=c(49176),n=c(84285),o=Symbol("factory"),p=Symbol("options"),q=Symbol("kGreatestCommonDivisor"),r=Symbol("kCurrentWeight"),s=Symbol("kIndex"),t=Symbol("kWeight"),u=Symbol("kMaxWeightPerServer"),v=Symbol("kErrorPenalty");function w(a,b){return new l(a,b)}class x extends f{constructor(a=[],{factory:b=w,...c}={}){if("function"!=typeof b)throw new e("factory must be a function.");for(const d of(super(),this[p]={...n.deepClone(c)},this[s]=-1,this[r]=0,this[u]=this[p].maxWeightPerServer||100,this[v]=this[p].errorPenalty||15,Array.isArray(a)||(a=[a]),this[o]=b,a))this.addUpstream(d);this._updateBalancedPoolStats()}addUpstream(a){let b=n.parseOrigin(a).origin;if(this[g].find(a=>a[m].origin===b&&!0!==a.closed&&!0!==a.destroyed))return this;let c=this[o](b,this[p]);for(let a of(this[i](c),c.on("connect",()=>{c[t]=Math.min(this[u],c[t]+this[v])}),c.on("connectionError",()=>{c[t]=Math.max(1,c[t]-this[v]),this._updateBalancedPoolStats()}),c.on("disconnect",(...a)=>{let b=a[2];b&&"UND_ERR_SOCKET"===b.code&&(c[t]=Math.max(1,c[t]-this[v]),this._updateBalancedPoolStats())}),this[g]))a[t]=this[u];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][t],a);this[q]=a}removeUpstream(a){let b=n.parseOrigin(a).origin,c=this[g].find(a=>a[m].origin===b&&!0!==a.closed&&!0!==a.destroyed);return c&&this[j](c),this}getUpstream(a){let b=n.parseOrigin(a).origin;return this[g].find(a=>a[m].origin===b&&!0!==a.closed&&!0!==a.destroyed)}get upstreams(){return this[g].filter(a=>!0!==a.closed&&!0!==a.destroyed).map(a=>a[m].origin)}[k](){if(0===this[g].length)throw new d;let a=0,b=-1;for(;a++<this[g].length;){this[s]=(this[s]+1)%this[g].length;let a=this[g][this[s]];if((0===this[s]&&(this[r]=this[r]-this[q],this[r]<=0&&(this[r]=this[u])),!a[h]&&!0!==a.closed&&!0!==a.destroyed)&&((-1===b||a[t]>this[g][b][t])&&(b=this[s]),a[t]>=this[r]))return a}if(-1!==b)return this[r]=this[g][b][t],this[s]=b,this[g][b]}}a.exports=x},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}},62620:(a,b,c)=>{"use strict";var d=c(17438),e=c(77326),f=c(34721);c(86538);var g=c(91004);let h=new Set(["xmtp","xiaomi-tokenplan"]);for(let a of g.A)for(let b of(h.add(a.id),a.alias&&h.add(a.alias),a.aliases||[]))h.add(b);async function i(a){if(a.includes("/"))return null;let b=await (0,e.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}var j=c(70815);let k=!1;k=!0,(0,d.qd)({getSettings:e.mt,trackPendingRequest:e.uw,appendRequestLog:e.E5,saveRequestDetail:e.ox,saveRequestUsage:e.sZ,getRoutingEvents:f.Kx,getClusterWorkerStats:f.GU,getPromotedLearningVersion:f.p3,createLearningVersion:f.Hr,countRoutingEvents:f.f8,listCombosWithRoutingEvents:f.dC,getLastScheduledLearnAt:f.HP,getClusterLatencyP50:f._6,getComboModels:i,getVaultEntry:j.Bl,putVaultEntry:j.M8,searchVault:j.$s,cleanupExpiredVault:j.ui,buildExternalIdpRefreshParams:async(...a)=>(await c.e(995).then(c.bind(c,90995))).buildExternalIdpRefreshParams(...a),createXaiService:async()=>new(await c.e(9508).then(c.bind(c,39508))).XaiService,fetchKiroProfileArn:async(...a)=>(await Promise.all([c.e(6492),c.e(9046)]).then(c.bind(c,46492))).fetchKiroProfileArn(...a)})},62692:(a,b,c)=>{"use strict";c.d(b,{B:()=>l});var d=c(93048),e=c(38421),f=c(43835),g=c(27137),h=c(96997),i=c(19016),j=c(49471),k=c(85513);class l 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,k.l6)((a?.providerSpecificData?.region||"").trim()),e=b.filter(a=>a.includes("amazonaws.com")).map(a=>d&&"us-east-1"!==d&&a.includes("amazonaws.com")?a.replace(/([a-z]+)\.[a-z0-9-]+\.amazonaws\.com/,`$1.${d}.amazonaws.com`):a),f=b.filter(a=>!a.includes("amazonaws.com"));return e.length>0?[...e,...f]:b}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,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"]||"";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)}
|
|
354
|
+
|
|
355
|
+
`))}if("reasoningContentEvent"===m){let a=i.payload?.reasoningContentEvent||i.payload||{},c="string"==typeof a?a:a.text||a.content||"";if(c){l.hasReasoningContent=!0,l.totalContentLength+=c.length;let a={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:0===l.reasoningChunkCount&&0===d?{role:"assistant",reasoning_content:c}:{reasoning_content:c},finish_reason:null}]};d++,l.reasoningChunkCount++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(a)}
|
|
356
|
+
|
|
357
|
+
`))}}if("codeEvent"===m&&i.payload?.content){let a={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{content:i.payload.content},finish_reason:null}]};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(a)}
|
|
358
|
+
|
|
359
|
+
`))}if("toolUseEvent"===m&&i.payload){l.hasToolCalls=!0;let a=i.payload;for(let c of Array.isArray(a)?a:[a]){let a,h=c.toolUseId||`call_${Date.now()}`,i=c.name||"",j=c.input;if(l.seenToolIds.has(h))a=l.seenToolIds.get(h);else{a=l.toolCallIndex++,l.seenToolIds.set(h,a);let c={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{...0===d?{role:"assistant"}:{},tool_calls:[{index:a,id:h,type:"function",function:{name:i,arguments:""}}]},finish_reason:null}]};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(c)}
|
|
360
|
+
|
|
361
|
+
`))}if(void 0!==j){let c;if("string"==typeof j)c=j;else{if("object"!=typeof j)continue;c=JSON.stringify(j)}let h={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{tool_calls:[{index:a,function:{arguments:c}}]},finish_reason:null}]};d++,f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(h)}
|
|
362
|
+
|
|
363
|
+
`))}}}if("messageStopEvent"===m&&(l.hasMessageStop=!0,l.pendingFinishReason=l.hasToolCalls?"tool_calls":"stop"),"contextUsageEvent"===m&&i.payload?.contextUsagePercentage&&(l.contextUsagePercentage=i.payload.contextUsagePercentage,l.hasContextUsage=!0),"meteringEvent"===m&&(l.hasMeteringEvent=!0),"metricsEvent"===m){let a=i.payload?.metricsEvent||i.payload;if(a&&"object"==typeof a){let b=a.inputTokens||0,c=a.outputTokens||0,d=a.cacheReadInputTokens||a.cache_read_input_tokens||0,e=a.cacheCreationInputTokens||a.cache_creation_input_tokens||0;(b>0||c>0)&&(l.usage={prompt_tokens:b,completion_tokens:c,total_tokens:b+c},d>0&&(l.usage.cache_read_input_tokens=d),e>0&&(l.usage.cache_creation_input_tokens=e))}}if(l.hasMessageStop&&!l.finishEmitted&&(l.hasMeteringEvent||l.hasContextUsage||l.usage)){if(l.finishEmitted=!0,!l.usage){let a=l.totalContentLength>0?Math.max(1,Math.floor(l.totalContentLength/4)):0,b=l.contextUsagePercentage>0?Math.floor(l.contextUsagePercentage*k/100):0;l.usage={prompt_tokens:b,completion_tokens:a,total_tokens:b+a}}let a={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{},finish_reason:l.hasToolCalls?"tool_calls":"stop"}]};l.usage&&(a.usage=l.usage),f.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(a)}
|
|
364
|
+
|
|
365
|
+
`))}}j>=1e3&&console.warn("[Kiro] Max iterations reached in event parsing"),d!==h||l.finishEmitted||f.enqueue(new TextEncoder().encode(": ka\n\n"))},flush(a){if(!l.finishEmitted){l.finishEmitted=!0;let c={id:e,object:"chat.completion.chunk",created:g,model:b,choices:[{index:0,delta:{},finish_reason:l.pendingFinishReason||(l.hasToolCalls?"tool_calls":"stop")}]};l.usage&&(c.usage=l.usage),a.enqueue(new TextEncoder().encode(`data: ${JSON.stringify(c)}
|
|
366
|
+
|
|
367
|
+
`))}a.enqueue(new TextEncoder().encode(i.$U))}});return a.body?new Response(a.body.pipeThrough(m),{status:a.status,statusText:a.statusText,headers:{...i.pb}}):new Response(i.$U,{status:a.status,headers:{"Content-Type":"text/event-stream"}})}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{return await (0,h.Ql)(a.refreshToken,a.providerSpecificData,b,c)}catch(a){return b?.error?.("TOKEN",`Kiro refresh error: ${a.message}`),null}}}},63070:(a,b,c)=>{var d=c(45654);c(33889),c(36105);var e=a.exports=d.asn1=d.asn1||{};function f(a,b,c){if(c>b){var d=Error("Too few bytes to parse DER.");throw d.available=a.length(),d.remaining=b,d.requested=c,d}}e.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192},e.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30},e.maxDepth=256,e.create=function(a,b,c,f,g){if(d.util.isArray(f)){for(var h=[],i=0;i<f.length;++i)void 0!==f[i]&&h.push(f[i]);f=h}var j={tagClass:a,type:b,constructed:c,composed:c||d.util.isArray(f),value:f};return g&&"bitStringContents"in g&&(j.bitStringContents=g.bitStringContents,j.original=e.copy(j)),j},e.copy=function(a,b){var c;if(d.util.isArray(a)){c=[];for(var f=0;f<a.length;++f)c.push(e.copy(a[f],b));return c}return"string"==typeof a?a:(c={tagClass:a.tagClass,type:a.type,constructed:a.constructed,composed:a.composed,value:e.copy(a.value,b)},b&&!b.excludeBitStringContents&&(c.bitStringContents=a.bitStringContents),c)},e.equals=function(a,b,c){if(d.util.isArray(a)){if(!d.util.isArray(b)||a.length!==b.length)return!1;for(var f=0;f<a.length;++f)if(!e.equals(a[f],b[f]))return!1;return!0}if(typeof a!=typeof b)return!1;if("string"==typeof a)return a===b;var g=a.tagClass===b.tagClass&&a.type===b.type&&a.constructed===b.constructed&&a.composed===b.composed&&e.equals(a.value,b.value);return c&&c.includeBitStringContents&&(g=g&&a.bitStringContents===b.bitStringContents),g},e.getBerValueLength=function(a){var b=a.getByte();if(128!==b)return 128&b?a.getInt((127&b)<<3):b};var g=function(a,b){var c,d=a.getByte();if(b--,128!==d){if(128&d){var e=127&d;f(a,b,e),c=a.getInt(e<<3)}else c=d;if(c<0)throw Error("Negative length: "+c);return c}};e.fromDer=function(a,b){void 0===b&&(b={strict:!0,parseAllBytes:!0,decodeBitStrings:!0}),"boolean"==typeof b&&(b={strict:b,parseAllBytes:!0,decodeBitStrings:!0}),"strict"in b||(b.strict=!0),"parseAllBytes"in b||(b.parseAllBytes=!0),"decodeBitStrings"in b||(b.decodeBitStrings=!0),"maxDepth"in b||(b.maxDepth=e.maxDepth),"string"==typeof a&&(a=d.util.createBuffer(a));var c=a.length(),h=function a(b,c,d,h){if(d>=h.maxDepth)throw Error("ASN.1 parsing error: Max depth exceeded.");f(b,c,2);var i,j,k,l=b.getByte();c--;var m=192&l,n=31&l;i=b.length();var o=g(b,c);if(c-=i-b.length(),void 0!==o&&o>c){if(h.strict){var p=Error("Too few bytes to read ASN.1 value.");throw p.available=b.length(),p.remaining=c,p.requested=o,p}o=c}var q=(32&l)==32;if(q)if(j=[],void 0===o)for(;;){if(f(b,c,2),b.bytes(2)===String.fromCharCode(0,0)){b.getBytes(2),c-=2;break}i=b.length(),j.push(a(b,c,d+1,h)),c-=i-b.length()}else for(;o>0;)i=b.length(),j.push(a(b,o,d+1,h)),c-=i-b.length(),o-=i-b.length();if(void 0===j&&m===e.Class.UNIVERSAL&&n===e.Type.BITSTRING&&(k=b.bytes(o)),void 0===j&&h.decodeBitStrings&&m===e.Class.UNIVERSAL&&n===e.Type.BITSTRING&&o>1){var r=b.read,s=c,t=0;if(n===e.Type.BITSTRING&&(f(b,c,1),t=b.getByte(),c--),0===t)try{i=b.length();var u=a(b,c,d+1,{strict:!0,decodeBitStrings:!0}),v=i-b.length();c-=v,n==e.Type.BITSTRING&&v++;var w=u.tagClass;v===o&&(w===e.Class.UNIVERSAL||w===e.Class.CONTEXT_SPECIFIC)&&(j=[u])}catch(a){}void 0===j&&(b.read=r,c=s)}if(void 0===j){if(void 0===o){if(h.strict)throw Error("Non-constructed ASN.1 object of indefinite length.");o=c}if(n===e.Type.BMPSTRING)for(j="";o>0;o-=2)f(b,c,2),j+=String.fromCharCode(b.getInt16()),c-=2;else j=b.getBytes(o),c-=o}var x=void 0===k?null:{bitStringContents:k};return e.create(m,n,q,j,x)}(a,a.length(),0,b);if(b.parseAllBytes&&0!==a.length()){var i=Error("Unparsed DER bytes remain after ASN.1 parsing.");throw i.byteCount=c,i.remaining=a.length(),i}return h},e.toDer=function(a){var b=d.util.createBuffer(),c=a.tagClass|a.type,f=d.util.createBuffer(),g=!1;if("bitStringContents"in a&&(g=!0,a.original&&(g=e.equals(a,a.original))),g)f.putBytes(a.bitStringContents);else if(a.composed){a.constructed?c|=32:f.putByte(0);for(var h=0;h<a.value.length;++h)void 0!==a.value[h]&&f.putBuffer(e.toDer(a.value[h]))}else if(a.type===e.Type.BMPSTRING)for(var h=0;h<a.value.length;++h)f.putInt16(a.value.charCodeAt(h));else a.type===e.Type.INTEGER&&a.value.length>1&&(0===a.value.charCodeAt(0)&&(128&a.value.charCodeAt(1))==0||255===a.value.charCodeAt(0)&&(128&a.value.charCodeAt(1))==128)?f.putBytes(a.value.substr(1)):f.putBytes(a.value);if(b.putByte(c),127>=f.length())b.putByte(127&f.length());else{var i=f.length(),j="";do j+=String.fromCharCode(255&i),i>>>=8;while(i>0);b.putByte(128|j.length);for(var h=j.length-1;h>=0;--h)b.putByte(j.charCodeAt(h))}return b.putBuffer(f),b},e.oidToDer=function(a){var b,c,e,f,g=a.split("."),h=d.util.createBuffer();h.putByte(40*parseInt(g[0],10)+parseInt(g[1],10));for(var i=2;i<g.length;++i){if(b=!0,c=[],(e=parseInt(g[i],10))>0xffffffff)throw Error("OID value too large; max is 32-bits.");do f=127&e,e>>>=7,b||(f|=128),c.push(f),b=!1;while(e>0);for(var j=c.length-1;j>=0;--j)h.putByte(c[j])}return h},e.derToOid=function(a){"string"==typeof a&&(a=d.util.createBuffer(a));var b,c=a.getByte();b=Math.floor(c/40)+"."+c%40;for(var e=0;a.length()>0;){if(e>0x3fffffffffff)throw Error("OID value too large; max is 53-bits.");c=a.getByte(),e*=128,128&c?e+=127&c:(b+="."+(e+c),e=0)}return b},e.utcTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,2),10);c=c>=50?1900+c:2e3+c;var d=parseInt(a.substr(2,2),10)-1,e=parseInt(a.substr(4,2),10),f=parseInt(a.substr(6,2),10),g=parseInt(a.substr(8,2),10),h=0;if(a.length>11){var i=a.charAt(10),j=10;"+"!==i&&"-"!==i&&(h=parseInt(a.substr(10,2),10),j+=2)}if(b.setUTCFullYear(c,d,e),b.setUTCHours(f,g,h,0),j&&("+"===(i=a.charAt(j))||"-"===i)){var k=60*parseInt(a.substr(j+1,2),10)+parseInt(a.substr(j+4,2),10);k*=6e4,"+"===i?b.setTime(b-k):b.setTime(+b+k)}return b},e.generalizedTimeToDate=function(a){var b=new Date,c=parseInt(a.substr(0,4),10),d=parseInt(a.substr(4,2),10)-1,e=parseInt(a.substr(6,2),10),f=parseInt(a.substr(8,2),10),g=parseInt(a.substr(10,2),10),h=parseInt(a.substr(12,2),10),i=0,j=0,k=!1;"Z"===a.charAt(a.length-1)&&(k=!0);var l=a.length-5,m=a.charAt(l);return("+"===m||"-"===m)&&(j=(60*parseInt(a.substr(l+1,2),10)+parseInt(a.substr(l+4,2),10))*6e4,"+"===m&&(j*=-1),k=!0),"."===a.charAt(14)&&(i=1e3*parseFloat(a.substr(14),10)),k?(b.setUTCFullYear(c,d,e),b.setUTCHours(f,g,h,i),b.setTime(+b+j)):(b.setFullYear(c,d,e),b.setHours(f,g,h,i)),b},e.dateToUtcTime=function(a){if("string"==typeof a)return a;var b="",c=[];c.push((""+a.getUTCFullYear()).substr(2)),c.push(""+(a.getUTCMonth()+1)),c.push(""+a.getUTCDate()),c.push(""+a.getUTCHours()),c.push(""+a.getUTCMinutes()),c.push(""+a.getUTCSeconds());for(var d=0;d<c.length;++d)c[d].length<2&&(b+="0"),b+=c[d];return b+"Z"},e.dateToGeneralizedTime=function(a){if("string"==typeof a)return a;var b="",c=[];c.push(""+a.getUTCFullYear()),c.push(""+(a.getUTCMonth()+1)),c.push(""+a.getUTCDate()),c.push(""+a.getUTCHours()),c.push(""+a.getUTCMinutes()),c.push(""+a.getUTCSeconds());for(var d=0;d<c.length;++d)c[d].length<2&&(b+="0"),b+=c[d];return b+"Z"},e.integerToDer=function(a){var b=d.util.createBuffer();if(a>=-128&&a<128)return b.putSignedInt(a,8);if(a>=-32768&&a<32768)return b.putSignedInt(a,16);if(a>=-8388608&&a<8388608)return b.putSignedInt(a,24);if(a>=-0x80000000&&a<0x80000000)return b.putSignedInt(a,32);var c=Error("Integer too large; max is 32-bits.");throw c.integer=a,c},e.derToInteger=function(a){"string"==typeof a&&(a=d.util.createBuffer(a));var b=8*a.length();if(b>32)throw Error("Integer too large; max is 32-bits.");return a.getSignedInt(b)},e.validate=function(a,b,c,f){var g=!1;if((a.tagClass===b.tagClass||void 0===b.tagClass)&&(a.type===b.type||void 0===b.type))if(a.constructed===b.constructed||void 0===b.constructed){if(g=!0,b.value&&d.util.isArray(b.value))for(var h=0,i=0;g&&i<b.value.length;++i){var j=b.value[i];g=!!j.optional;var k=a.value[h];if(!k){!j.optional&&(g=!1,f&&f.push("["+b.name+'] Missing required element. Expected tag class "'+j.tagClass+'", type "'+j.type+'"'));continue}if(void 0!==j.tagClass&&void 0!==j.type&&(k.tagClass!==j.tagClass||k.type!==j.type))if(j.optional){g=!0;continue}else{g=!1,f&&f.push("["+b.name+"] Tag mismatch. Expected ("+j.tagClass+","+j.type+"), got ("+k.tagClass+","+k.type+")");break}if(e.validate(k,j,c,f))++h,g=!0;else if(j.optional)g=!0;else{g=!1;break}}if(g&&c&&(b.capture&&(c[b.capture]=a.value),b.captureAsn1&&(c[b.captureAsn1]=a),b.captureBitStringContents&&"bitStringContents"in a&&(c[b.captureBitStringContents]=a.bitStringContents),b.captureBitStringValue&&"bitStringContents"in a))if(a.bitStringContents.length<2)c[b.captureBitStringValue]="";else{if(0!==a.bitStringContents.charCodeAt(0))throw Error("captureBitStringValue only supported for zero unused bits");c[b.captureBitStringValue]=a.bitStringContents.slice(1)}}else f&&f.push("["+b.name+'] Expected constructed "'+b.constructed+'", got "'+a.constructed+'"');else f&&(a.tagClass!==b.tagClass&&f.push("["+b.name+'] Expected tag class "'+b.tagClass+'", got "'+a.tagClass+'"'),a.type!==b.type&&f.push("["+b.name+'] Expected type "'+b.type+'", got "'+a.type+'"'));return g};var h=/[^\\u0000-\\u00ff]/;e.prettyPrint=function(a,b,c){var f="";c=c||2,(b=b||0)>0&&(f+="\n");for(var g="",i=0;i<b*c;++i)g+=" ";switch(f+=g+"Tag: ",a.tagClass){case e.Class.UNIVERSAL:f+="Universal:";break;case e.Class.APPLICATION:f+="Application:";break;case e.Class.CONTEXT_SPECIFIC:f+="Context-Specific:";break;case e.Class.PRIVATE:f+="Private:"}if(a.tagClass===e.Class.UNIVERSAL)switch(f+=a.type,a.type){case e.Type.NONE:f+=" (None)";break;case e.Type.BOOLEAN:f+=" (Boolean)";break;case e.Type.INTEGER:f+=" (Integer)";break;case e.Type.BITSTRING:f+=" (Bit string)";break;case e.Type.OCTETSTRING:f+=" (Octet string)";break;case e.Type.NULL:f+=" (Null)";break;case e.Type.OID:f+=" (Object Identifier)";break;case e.Type.ODESC:f+=" (Object Descriptor)";break;case e.Type.EXTERNAL:f+=" (External or Instance of)";break;case e.Type.REAL:f+=" (Real)";break;case e.Type.ENUMERATED:f+=" (Enumerated)";break;case e.Type.EMBEDDED:f+=" (Embedded PDV)";break;case e.Type.UTF8:f+=" (UTF8)";break;case e.Type.ROID:f+=" (Relative Object Identifier)";break;case e.Type.SEQUENCE:f+=" (Sequence)";break;case e.Type.SET:f+=" (Set)";break;case e.Type.PRINTABLESTRING:f+=" (Printable String)";break;case e.Type.IA5String:f+=" (IA5String (ASCII))";break;case e.Type.UTCTIME:f+=" (UTC time)";break;case e.Type.GENERALIZEDTIME:f+=" (Generalized time)";break;case e.Type.BMPSTRING:f+=" (BMP String)"}else f+=a.type;if(f+="\n",f+=g+"Constructed: "+a.constructed+"\n",a.composed){for(var j=0,k="",i=0;i<a.value.length;++i)void 0!==a.value[i]&&(j+=1,k+=e.prettyPrint(a.value[i],b+1,c),i+1<a.value.length&&(k+=","));f+=g+"Sub values: "+j+k}else{if(f+=g+"Value: ",a.type===e.Type.OID){var l=e.derToOid(a.value);f+=l,d.pki&&d.pki.oids&&l in d.pki.oids&&(f+=" ("+d.pki.oids[l]+") ")}if(a.type===e.Type.INTEGER)try{f+=e.derToInteger(a.value)}catch(b){f+="0x"+d.util.bytesToHex(a.value)}else if(a.type===e.Type.BITSTRING){if(a.value.length>1?f+="0x"+d.util.bytesToHex(a.value.slice(1)):f+="(none)",a.value.length>0){var m=a.value.charCodeAt(0);1==m?f+=" (1 unused bit shown)":m>1&&(f+=" ("+m+" unused bits shown)")}}else if(a.type===e.Type.OCTETSTRING)h.test(a.value)||(f+="("+a.value+") "),f+="0x"+d.util.bytesToHex(a.value);else if(a.type===e.Type.UTF8)try{f+=d.util.decodeUtf8(a.value)}catch(b){if("URI malformed"===b.message)f+="0x"+d.util.bytesToHex(a.value)+" (malformed UTF8)";else throw b}else a.type===e.Type.PRINTABLESTRING||a.type===e.Type.IA5String?f+=a.value:h.test(a.value)?f+="0x"+d.util.bytesToHex(a.value):0===a.value.length?f+="[null]":f+=a.value}return f}},63993:(a,b,c)=>{"use strict";function d(a){return null==a?"":String(a).trim()}async function e(a={}){try{let b=function(a={}){let b=a?.connectionProxyEnabled===!0,c=d(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:d(a?.connectionNoProxy)}}(a);if(b.connectionProxyEnabled&&b.connectionProxyUrl)return{source:"legacy",proxyPoolId:null,proxyPool:null,...b,strictProxy:!1,vercelRelayUrl:""};return{source:"none",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:b.connectionNoProxy||"",strictProxy:!1,vercelRelayUrl:""}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1,vercelRelayUrl:""}}}c.d(b,{B:()=>e})},63995:(a,b,c)=>{"use strict";c.d(b,{Q2:()=>m});var d=c(91004);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.A.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.A.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.aliases?.length?{aliases:a.aliases}:{},...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.authModes?{authModes:a.authModes}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m={...h,...i,...j,...k,...l};Object.values(m).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(m).reduce((a,b)=>(a[b.id]=b.alias,a),{}),d.A.filter(a=>a.features?.usage).map(a=>a.id),d.A.filter(a=>a.features?.usageApikey).map(a=>a.id)},64156:(a,b,c)=>{"use strict";let d,{URL:e}=c(73136),f=c(5318),{InvalidArgumentError:g}=c(61448),{Socks5Client:h,STATES:i}=c(40603),{kDispatch:j,kClose:k,kDestroy:l}=c(49176),m=c(35689),n=c(55285),{debuglog:o}=c(57975),p=o("undici:socks5-proxy"),q=Symbol("proxy url"),r=Symbol("proxy headers"),s=Symbol("proxy auth"),t=Symbol("proxy protocol"),u=Symbol("pools"),v=Symbol("connector"),w=Symbol("request tls settings"),x=!1;class y extends f{constructor(a,b={}){if(super(),x||(process.emitWarning("SOCKS5 proxy support is experimental and subject to change","ExperimentalWarning"),x=!0),!a)throw new g("Proxy URL is mandatory");const c="string"==typeof a?new e(a):a;if("socks5:"!==c.protocol&&"socks:"!==c.protocol)throw new g("Proxy URL must use socks5:// or socks:// protocol");this[q]=c,this[r]=b.headers||{},this[t]=b.proxyTls?"https:":"http:",this[w]=b.requestTls,this[s]={username:b.username||(c.username?decodeURIComponent(c.username):null),password:b.password||(c.password?decodeURIComponent(c.password):null)},this[v]=b.connect||n({...b.proxyTls,servername:b.proxyTls?.servername||c.hostname}),this[u]=new Map}async createSocks5Connection(a,b){let c=this[q].hostname,d=parseInt(this[q].port)||1080;p("creating SOCKS5 connection to",c,d);let e=Promise.withResolvers();this[v]({hostname:c,host:c,port:d,protocol:this[t]},(a,b)=>{a?e.reject(a):e.resolve(b)});let f=await e.promise,g=new h(f,this[s]);g.on("error",a=>{p("SOCKS5 error:",a),f.destroy()}),await g.handshake();let j=Promise.withResolvers(),k=setTimeout(()=>{j.reject(Error("SOCKS5 authentication timeout"))},5e3),l=()=>{clearTimeout(k),g.removeListener("error",m),j.resolve()},m=a=>{clearTimeout(k),g.removeListener("authenticated",l),j.reject(a)};g.state===i.AUTHENTICATED?(clearTimeout(k),j.resolve()):(g.once("authenticated",l),g.once("error",m)),await j.promise,await g.connect(a,b);let n=Promise.withResolvers(),o=setTimeout(()=>{n.reject(Error("SOCKS5 connection timeout"))},5e3),r=c=>{p("SOCKS5 tunnel established to",a,b,"via",c),clearTimeout(o),g.removeListener("error",u),n.resolve()},u=a=>{clearTimeout(o),g.removeListener("connected",r),n.reject(a)};return g.once("connected",r),g.once("error",u),await n.promise,f}[j](a,b){let{origin:f}=a;p("dispatching request to",f,"via SOCKS5");try{let g=String(f),h=this[u].get(g);return(!h||h.destroyed||h.closed)&&(h=new m(f,{pipelining:a.pipelining,connections:a.connections,connect:async(a,b)=>{try{let a=new e(f),g=a.hostname,h=parseInt(a.port)||("https:"===a.protocol?443:80);p("establishing SOCKS5 connection to",g,h);let i=await this.createSocks5Connection(g,h),j=i;if("https:"===a.protocol){d||(d=c(41692)),p("upgrading to TLS"),j=d.connect({...this[w],socket:i,servername:this[w]?.servername||g});let a=Promise.withResolvers();j.once("secureConnect",a.resolve),j.once("error",a.reject),await a.promise}b(null,j)}catch(a){p("SOCKS5 connection error:",a),b(a)}}}),this[u].set(g,h)),h[j](a,b)}catch(a){if(p("dispatch error:",a),"function"==typeof b.onResponseError)return b.onResponseError(null,a),!1;if("function"==typeof b.onError)return b.onError(a),!1;throw a}}async [k](){let a=[];for(let b of this[u].values())a.push(b.close());this[u].clear(),await Promise.all(a)}async [l](a){let b=[];for(let c of this[u].values())b.push(c.destroy(a));this[u].clear(),await Promise.all(b)}}a.exports=y},64371:(a,b,c)=>{"use strict";let d,e=c(34589),{runtimeFeatures:f}=c(56758),g=new Map([["sha256",0],["sha384",1],["sha512",2]]);if(f.has("crypto")){let a=(d=c(77598)).getHashes();for(let b of(0===a.length&&g.clear(),g.keys()))!1===a.includes(b)&&g.delete(b)}else g.clear();let h=Map.prototype.get.bind(g),i=Map.prototype.has.bind(g),j=!1===f.has("crypto")||0===g.size?()=>!0:(a,b)=>{let c=l(b);if(0===c.length)return!0;for(let b of k(c)){let c=b.alg,d=b.val;if(n(m(c,a),d))return!0}return!1};function k(a){let b=[],c=null;for(let d of a){if(e(i(d.alg),"Invalid SRI hash algorithm token"),0===b.length){b.push(d),c=d;continue}let a=h(c.alg),f=h(d.alg);f<a||(f>a?(c=d,b[0]=d,b.length=1):b.push(d))}return b}function l(a){let b=[];for(let c of a.split(" ")){let a=c.split("?",1)[0],d="",e=[a.slice(0,6),a.slice(7)],f=e[0];if(!i(f))continue;e[1]&&(d=e[1]);let g={alg:f,val:d};b.push(g)}return b}let m=(a,b)=>d.hash(a,b,"base64");function n(a,b){let c=a.length;0!==c&&"="===a[c-1]&&(c-=1),0!==c&&"="===a[c-1]&&(c-=1);let d=b.length;if(0!==d&&"="===b[d-1]&&(d-=1),0!==d&&"="===b[d-1]&&(d-=1),c!==d)return!1;for(let d=0;d<c;++d)if(a[d]!==b[d]&&("+"!==a[d]||"-"!==b[d])&&("/"!==a[d]||"_"!==b[d]))return!1;return!0}a.exports={applyAlgorithmToBytes:m,bytesMatch:j,caseSensitiveMatch:n,isValidSRIHashAlgorithm:i,getStrongestMetadata:k,parseMetadata:l}},64704:a=>{"use strict";let b,c=0,d=Symbol("kFastTimer"),e=[];function f(){c+=499;let a=0,b=e.length;for(;a<b;){let d=e[a];0===d._state?(d._idleStart=c-499,d._state=1):1===d._state&&c>=d._idleStart+d._idleTimeout&&(d._state=-1,d._idleStart=-1,d._onTimeout(d._timerArg)),-1===d._state?(d._state=-2,0!=--b&&(e[a]=e[b])):++a}e.length=b,0!==e.length&&g()}function g(){b?.refresh?b.refresh():(clearTimeout(b),b=setTimeout(f,499),b?.unref())}class h{[d]=!0;_state=-2;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(a,b,c){this._onTimeout=a,this._idleTimeout=b,this._timerArg=c,this.refresh()}refresh(){-2===this._state&&e.push(this),b&&1!==e.length||g(),this._state=0}clear(){this._state=-1,this._idleStart=-1}}a.exports={setTimeout:(a,b,c)=>b<=1e3?setTimeout(a,b,c):new h(a,b,c),clearTimeout(a){a[d]?a.clear():clearTimeout(a)},setFastTimeout:(a,b,c)=>new h(a,b,c),clearFastTimeout(a){a.clear()},now:()=>c,tick(a=0){c+=a-1e3+1,f(),f()},reset(){c=0,e.length=0,clearTimeout(b),b=null},kFastTimer:d}},64821:(a,b,c)=>{"use strict";let{Writable:d}=c(57075),e=c(34589),{parserStates:f,opcodes:g,states:h,emptyBuffer:i,sentCloseFrameState:j}=c(62026),{isValidStatusCode:k,isValidOpcode:l,websocketMessageReceived:m,utf8Decode:n,isControlFrame:o,isTextBinaryFrame:p,isContinuationFrame:q}=c(94050),{failWebsocketConnection:r}=c(4654),{WebsocketFrameSend:s}=c(45221),{PerMessageDeflate:t}=c(97210),{MessageSizeExceededError:u}=c(61448);class v extends d{#bi=[];#bj=0;#bk=0;#bl=!1;#a=f.INFO;#bm={};#bn=[];#a1;#as;#bo;#bp;constructor(a,b,c={}){super(),this.#as=a,this.#a1=null==b?new Map:b,this.#bo=c.maxFragments??0,this.#bp=c.maxPayloadSize??0,this.#a1.has("permessage-deflate")&&this.#a1.set("permessage-deflate",new t(b,c))}_write(a,b,c){this.#bi.push(a),this.#bk+=a.length,this.#bl=!0,this.run(c)}#bq(){return!(this.#bp>0)||!!o(this.#bm.opcode)||!(this.#bm.payloadLength+this.#bj>this.#bp)||(r(this.#as,1009,"Payload size exceeds maximum allowed size"),!1)}run(a){for(;this.#bl;)if(this.#a===f.INFO){if(this.#bk<2)return a();let b=this.consume(2),c=(128&b[0])!=0,d=15&b[0],e=(128&b[1])==128,h=!c&&d!==g.CONTINUATION,i=127&b[1],j=64&b[0],k=32&b[0],m=16&b[0];if(!l(d))return r(this.#as,1002,"Invalid opcode received"),a();if(e)return r(this.#as,1002,"Frame cannot be masked"),a();if(0!==j&&!this.#a1.has("permessage-deflate"))return void r(this.#as,1002,"Expected RSV1 to be clear.");if(0!==k||0!==m)return void r(this.#as,1002,"RSV1, RSV2, RSV3 must be clear");if(h&&!p(d))return void r(this.#as,1002,"Invalid frame type was fragmented.");if(p(d)&&this.#bn.length>0)return void r(this.#as,1002,"Expected continuation frame");if(this.#bm.fragmented&&h)return void r(this.#as,1002,"Fragmented frame exceeded 125 bytes.");if((i>125||h)&&o(d))return void r(this.#as,1002,"Control frame either too large or fragmented");if(q(d)&&0===this.#bn.length&&!this.#bm.compressed)return void r(this.#as,1002,"Unexpected continuation frame");if(i<=125){if(this.#bm.payloadLength=i,this.#a=f.READ_DATA,!this.#bq())return}else 126===i?this.#a=f.PAYLOADLENGTH_16:127===i&&(this.#a=f.PAYLOADLENGTH_64);p(d)&&(this.#bm.binaryType=d,this.#bm.compressed=0!==j),this.#bm.opcode=d,this.#bm.masked=e,this.#bm.fin=c,this.#bm.fragmented=h}else if(this.#a===f.PAYLOADLENGTH_16){if(this.#bk<2)return a();let b=this.consume(2);if(this.#bm.payloadLength=b.readUInt16BE(0),this.#a=f.READ_DATA,!this.#bq())return}else if(this.#a===f.PAYLOADLENGTH_64){if(this.#bk<8)return a();let b=this.consume(8),c=b.readUInt32BE(0),d=b.readUInt32BE(4);if(0!==c||d>0x80000000-1)return void r(this.#as,1009,"Received payload length > 2^31 bytes.");if(this.#bm.payloadLength=d,this.#a=f.READ_DATA,!this.#bq())return}else if(this.#a===f.READ_DATA){if(this.#bk<this.#bm.payloadLength)return a();let b=this.consume(this.#bm.payloadLength);if(o(this.#bm.opcode))this.#bl=this.parseControlFrame(b),this.#a=f.INFO;else if(this.#bm.compressed){this.#a1.get("permessage-deflate").decompress(b,this.#bm.fin,(b,c)=>{if(b){let a=b instanceof u?1009:1007;r(this.#as,a,b.message);return}if(this.writeFragments(c)){if(this.#bp>0&&this.#bj>this.#bp)return void r(this.#as,1009,new u().message);if(!this.#bm.fin){this.#a=f.INFO,this.#bl=!0,this.run(a);return}m(this.#as,this.#bm.binaryType,this.consumeFragments()),this.#bl=!0,this.#a=f.INFO,this.run(a)}},this.#bj),this.#bl=!1;break}else{if(!this.writeFragments(b))return;!this.#bm.fragmented&&this.#bm.fin&&m(this.#as,this.#bm.binaryType,this.consumeFragments()),this.#a=f.INFO}}}consume(a){if(a>this.#bk)throw Error("Called consume() before buffers satiated.");if(0===a)return i;this.#bk-=a;let b=this.#bi[0];if(b.length>a)return this.#bi[0]=b.subarray(a,b.length),b.subarray(0,a);{if(b.length===a)return this.#bi.shift();let c=0,d=Buffer.allocUnsafeSlow(a);for(;c!==a;){let b=this.#bi[0],e=b.length;if(e+c===a){d.set(this.#bi.shift(),c);break}if(e+c>a){d.set(b.subarray(0,a-c),c),this.#bi[0]=b.subarray(a-c);break}d.set(this.#bi.shift(),c),c+=e}return d}}writeFragments(a){return this.#bo>0&&this.#bn.length===this.#bo?(r(this.#as,1008,"Too many message fragments"),!1):(this.#bj+=a.length,this.#bn.push(a),!0)}consumeFragments(){let a=this.#bn;if(1===a.length)return this.#bj=0,a.shift();let b=0,c=Buffer.allocUnsafeSlow(this.#bj);for(let d=0;d<a.length;++d){let e=a[d];c.set(e,b),b+=e.length}return this.#bn=[],this.#bj=0,c}parseCloseBody(a){let b;if(e(1!==a.length),a.length>=2&&(b=a.readUInt16BE(0)),void 0!==b&&!k(b))return{code:1002,reason:"Invalid status code",error:!0};let c=a.subarray(2);239===c[0]&&187===c[1]&&191===c[2]&&(c=c.subarray(3));try{c=n(c)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:b,reason:c,error:!1}}parseControlFrame(a){let{opcode:b,payloadLength:c}=this.#bm;if(b===g.CLOSE){if(1===c)return r(this.#as,1002,"Received close frame with a 1-byte body."),!1;if(this.#bm.closeInfo=this.parseCloseBody(a),this.#bm.closeInfo.error){let{code:a,reason:b}=this.#bm.closeInfo;return r(this.#as,a,b),!1}if(!this.#as.closeState.has(j.SENT)&&!this.#as.closeState.has(j.RECEIVED)){let a=i;this.#bm.closeInfo.code&&(a=Buffer.allocUnsafe(2)).writeUInt16BE(this.#bm.closeInfo.code,0);let b=new s(a);this.#as.socket.write(b.createFrame(g.CLOSE)),this.#as.closeState.add(j.SENT)}return this.#as.readyState=h.CLOSING,this.#as.closeState.add(j.RECEIVED),!1}if(b===g.PING){if(!this.#as.closeState.has(j.RECEIVED)){let b=new s(a);this.#as.socket.write(b.createFrame(g.PONG)),this.#as.onPing(a)}}else b===g.PONG&&this.#as.onPong(a);return!0}get closingInfo(){return this.#bm.closeInfo}}a.exports={ByteParser:v}},65369:(a,b,c)=>{"use strict";c.d(b,{c:()=>s});var d=c(55511),e=c(93048),f=c(38421),g=c(10793),h=c(82689),i=c(49623),j=c(26762),k=c(22435),l=c(69226);let m=[/high\s+traffic/i,/agent\s+(execution\s+)?terminated\s+due\s+to\s+error/i,/capacity/i,/temporarily\s+unavailable/i,/timeout/i,/stream\s+(ended|closed|terminated|interrupted)/i,/empty\s+response/i],n=new Set([h.gx.SERVER_ERROR,h.gx.BAD_GATEWAY,h.gx.SERVICE_UNAVAILABLE,h.gx.GATEWAY_TIMEOUT]),o=["stream","output_config","thinking","reasoning_effort","reasoning","enable_thinking","thinking_budget","thinkingConfig"],p=a=>{for(let b of o)delete a[b]},q=[/image/i,/imagen/i,/image-generation/i];function r(a){return!!a&&q.some(b=>b.test(a))}class s extends e.Hv{constructor(){super("antigravity",f.xq.antigravity)}buildUrl(a,b,c=0){let d=this.getBaseUrls(),e=d[c]||d[0],f=r(a);return`${e}/v1internal:${b&&!f?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0,c=null){let d=c||this._lastSessionId;return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||g.K["User-Agent"],[g.Ox.name]:g.Ox.value,...d&&{"X-Machine-Session-Id":d},Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,e){let f=e?.projectId||this.generateProjectId();if(r(a)){let c=function(a){let b={aspectRatio:"1:1"},c=a.match(/(\d+)x(\d+)$/);if(c){let a=parseInt(c[1]),d=parseInt(c[2]);if(a<=16&&d<=16)b.aspectRatio=`${a}:${d}`;else{let c=(a,b)=>b?c(b,a%b):a,e=c(a,d);b.aspectRatio=`${a/e}:${d/e}`}}return b}(a),g=a.replace(/-(\d+)x(\d+)$/,""),h=[];for(let a of b.request?.contents||b.contents||[]){let b=(a.parts||[]).filter(a=>void 0!==a.text).map(a=>({text:a.text}));b.length>0&&h.push({role:a.role||"user",parts:b})}let j=(0,i.oV)({headers:e?.rawHeaders,body:b,connectionId:e?.email||e?.connectionId,scope:"antigravity"});return this._lastSessionId=j,{project:f,model:g,userAgent:"antigravity",requestType:"image_gen",requestId:`agent-${d.randomUUID()}`,request:{contents:h,generationConfig:{temperature:1,topP:.95,topK:40,maxOutputTokens:8192,imageConfig:c},sessionId:j}}}let g=b.request?.contents?.map(a=>{let b=a.role;a.parts?.some(a=>a.functionResponse)&&(b="user");let c=a.parts?.filter(a=>(!a.thought||!!a.functionCall)&&(!a.thoughtSignature||!!a.functionCall||!!a.text)),d=c?.some(a=>a.functionCall&&!a.thoughtSignature)??!1;return b!==a.role||c?.length!==a.parts?.length||d?{...a,role:b,parts:d?c.map(a=>a.functionCall&&!a.thoughtSignature?{...a,thoughtSignature:l.bf}:a):c}:a}),h=b.request?.tools;if(h&&h.length>0){let a=new Set,b=[];for(let c of h)for(let d of c.functionDeclarations||[]){let c=function(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)}(d.name);a.has(c)||(a.add(c),b.push({...d,name:c,parameters:d.parameters?(0,k.Yr)(structuredClone(d.parameters)):{type:"object",properties:{reason:{type:"string",description:"Brief explanation"}},required:["reason"]}}))}h=b.length>0?[{functionDeclarations:b}]:[]}let{tools:j,toolConfig:m,...n}=b.request||{};p(n);let o={...n.generationConfig||{}};o.maxOutputTokens>16384&&(o.maxOutputTokens=16384);let q={...n,generationConfig:o,...g&&{contents:g},...h&&{tools:h},sessionId:b.request?.sessionId||(0,i.oV)({headers:e?.rawHeaders,body:b,connectionId:e?.email||e?.connectionId,scope:"antigravity"}),safetySettings:void 0,...h?.length>0&&{toolConfig:{functionCallingConfig:{mode:"VALIDATED"}}}};return p(b),this._lastSessionId=q.sessionId,{...b,project:f,model:a,userAgent:"antigravity",requestType:"agent",requestId:`agent-${d.randomUUID()}`,request:q}}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,j.Fm)(g.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})},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Antigravity refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Antigravity refresh error: ${a.message}`),null}}generateProjectId(){let a=["useful","bright","swift","calm","bold"][Math.floor(5*Math.random())],b=["fuze","wave","spark","flow","core"][Math.floor(5*Math.random())];return`${a}-${b}-${d.randomUUID().slice(0,5)}`}generateSessionId(){return d.randomUUID()+Date.now().toString()}parseRetryHeaders(a){if(!a?.get)return null;let b=a.get("retry-after");if(b){let a=parseInt(b,10);if(!isNaN(a)&&a>0)return 1e3*a;let c=new Date(b);if(!isNaN(c.getTime())){let a=c.getTime()-Date.now();return a>0?a:null}}let c=a.get("x-ratelimit-reset-after");if(c){let a=parseInt(c,10);if(!isNaN(a)&&a>0)return 1e3*a}let d=a.get("x-ratelimit-reset");if(d){let a=1e3*parseInt(d,10)-Date.now();return a>0?a:null}return null}parseRetryFromErrorMessage(a){if(!a||"string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=3600*parseInt(b[1])*1e3),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}extractErrorMessage(a,b=""){return[a?.error?.message,a?.message,a?.error,b].filter(Boolean).map(a=>"string"==typeof a?a:JSON.stringify(a)).join("\n")}isTransientAntigravityError(a,b){return!!(a===h.gx.RATE_LIMITED||n.has(a))||m.some(a=>a.test(b||""))}async computeRetryDelay(a,b){let c="",d=null,e=this.parseRetryHeaders(a.headers);try{d=(c=await a.clone().text())?JSON.parse(c):null}catch{}let f=this.extractErrorMessage(d,c);return(e||(e=this.parseRetryFromErrorMessage(f)),e)?e<=1e4&&e:!!this.isTransientAntigravityError(a.status,f)&&Math.min(1e3*2**b,a.status===h.gx.RATE_LIMITED?1e4:15e3)}static cloakTools(a,b=null){let c=a.request?.tools;if(!c||0===c.length)return{cloakedBody:a,toolNameMap:null};let d="github-copilot"===b,e=new Map,f=[],h=new Set(t.map(a=>a.name));for(let a of c)if(a.functionDeclarations)for(let b of a.functionDeclarations){if(d&&g.J5.has(b.name)||d&&h.has(b.name))continue;if(g.J5.has(b.name)){f.push(b);continue}let a=`${b.name}${g.QH}`;e.set(a,b.name),f.push({...b,name:a})}let i=[],j=new Set;for(let a of[...f,...t])!a?.name||j.has(a.name)||(j.add(a.name),i.push(a));let k=a.request?.contents?.map(a=>{if(!a.parts)return a;let b=a.parts.map(a=>a.functionCall&&!g.J5.has(a.functionCall.name)?{...a,functionCall:{...a.functionCall,name:`${a.functionCall.name}${g.QH}`}}:a.functionResponse&&!g.J5.has(a.functionResponse.name)?{...a,functionResponse:{...a.functionResponse,name:`${a.functionResponse.name}${g.QH}`}}:a);return{...a,parts:b}});return{cloakedBody:{...a,request:{...a.request,tools:[{functionDeclarations:i}],contents:k||a.request.contents}},toolNameMap:e}}}let t=[{name:"browser_subagent",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"command_status",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"find_by_name",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"generate_image",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"grep_search",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_dir",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_resources",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"mcp_sequential-thinking_sequentialthinking",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"multi_replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"notify_user",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_resource",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_terminal",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_url_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"run_command",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"search_web",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"send_command_input",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"task_boundary",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_content_chunk",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"write_to_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}}]},65429:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),b.SPECIAL_HEADERS=b.MINOR=b.MAJOR=b.HTAB_SP_VCHAR_OBS_TEXT=b.QUOTED_STRING=b.CONNECTION_TOKEN_CHARS=b.HEADER_CHARS=b.TOKEN=b.HEX=b.URL_CHAR=b.USERINFO_CHARS=b.MARK=b.ALPHANUM=b.NUM=b.HEX_MAP=b.NUM_MAP=b.ALPHA=b.STATUSES_HTTP=b.H_METHOD_MAP=b.METHOD_MAP=b.METHODS_RTSP=b.METHODS_ICE=b.METHODS_HTTP=b.HEADER_STATE=b.FINISH=b.STATUSES=b.METHODS=b.LENIENT_FLAGS=b.FLAGS=b.TYPE=b.ERROR=void 0;let d=c(33629);b.ERROR={OK:0,INTERNAL:1,STRICT:2,CR_EXPECTED:25,LF_EXPECTED:3,UNEXPECTED_CONTENT_LENGTH:4,UNEXPECTED_SPACE:30,CLOSED_CONNECTION:5,INVALID_METHOD:6,INVALID_URL:7,INVALID_CONSTANT:8,INVALID_VERSION:9,INVALID_HEADER_TOKEN:10,INVALID_CONTENT_LENGTH:11,INVALID_CHUNK_SIZE:12,INVALID_STATUS:13,INVALID_EOF_STATE:14,INVALID_TRANSFER_ENCODING:15,CB_MESSAGE_BEGIN:16,CB_HEADERS_COMPLETE:17,CB_MESSAGE_COMPLETE:18,CB_CHUNK_HEADER:19,CB_CHUNK_COMPLETE:20,PAUSED:21,PAUSED_UPGRADE:22,PAUSED_H2_UPGRADE:23,USER:24,CB_URL_COMPLETE:26,CB_STATUS_COMPLETE:27,CB_METHOD_COMPLETE:32,CB_VERSION_COMPLETE:33,CB_HEADER_FIELD_COMPLETE:28,CB_HEADER_VALUE_COMPLETE:29,CB_CHUNK_EXTENSION_NAME_COMPLETE:34,CB_CHUNK_EXTENSION_VALUE_COMPLETE:35,CB_RESET:31,CB_PROTOCOL_COMPLETE:38},b.TYPE={BOTH:0,REQUEST:1,RESPONSE:2},b.FLAGS={CONNECTION_KEEP_ALIVE:1,CONNECTION_CLOSE:2,CONNECTION_UPGRADE:4,CHUNKED:8,UPGRADE:16,CONTENT_LENGTH:32,SKIPBODY:64,TRAILING:128,TRANSFER_ENCODING:512},b.LENIENT_FLAGS={HEADERS:1,CHUNKED_LENGTH:2,KEEP_ALIVE:4,TRANSFER_ENCODING:8,VERSION:16,DATA_AFTER_CLOSE:32,OPTIONAL_LF_AFTER_CR:64,OPTIONAL_CRLF_AFTER_CHUNK:128,OPTIONAL_CR_BEFORE_LF:256,SPACES_AFTER_CHUNK_SIZE:512},b.METHODS={DELETE:0,GET:1,HEAD:2,POST:3,PUT:4,CONNECT:5,OPTIONS:6,TRACE:7,COPY:8,LOCK:9,MKCOL:10,MOVE:11,PROPFIND:12,PROPPATCH:13,SEARCH:14,UNLOCK:15,BIND:16,REBIND:17,UNBIND:18,ACL:19,REPORT:20,MKACTIVITY:21,CHECKOUT:22,MERGE:23,"M-SEARCH":24,NOTIFY:25,SUBSCRIBE:26,UNSUBSCRIBE:27,PATCH:28,PURGE:29,MKCALENDAR:30,LINK:31,UNLINK:32,SOURCE:33,PRI:34,DESCRIBE:35,ANNOUNCE:36,SETUP:37,PLAY:38,PAUSE:39,TEARDOWN:40,GET_PARAMETER:41,SET_PARAMETER:42,REDIRECT:43,RECORD:44,FLUSH:45,QUERY:46},b.STATUSES={CONTINUE:100,SWITCHING_PROTOCOLS:101,PROCESSING:102,EARLY_HINTS:103,RESPONSE_IS_STALE:110,REVALIDATION_FAILED:111,DISCONNECTED_OPERATION:112,HEURISTIC_EXPIRATION:113,MISCELLANEOUS_WARNING:199,OK:200,CREATED:201,ACCEPTED:202,NON_AUTHORITATIVE_INFORMATION:203,NO_CONTENT:204,RESET_CONTENT:205,PARTIAL_CONTENT:206,MULTI_STATUS:207,ALREADY_REPORTED:208,TRANSFORMATION_APPLIED:214,IM_USED:226,MISCELLANEOUS_PERSISTENT_WARNING:299,MULTIPLE_CHOICES:300,MOVED_PERMANENTLY:301,FOUND:302,SEE_OTHER:303,NOT_MODIFIED:304,USE_PROXY:305,SWITCH_PROXY:306,TEMPORARY_REDIRECT:307,PERMANENT_REDIRECT:308,BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,METHOD_NOT_ALLOWED:405,NOT_ACCEPTABLE:406,PROXY_AUTHENTICATION_REQUIRED:407,REQUEST_TIMEOUT:408,CONFLICT:409,GONE:410,LENGTH_REQUIRED:411,PRECONDITION_FAILED:412,PAYLOAD_TOO_LARGE:413,URI_TOO_LONG:414,UNSUPPORTED_MEDIA_TYPE:415,RANGE_NOT_SATISFIABLE:416,EXPECTATION_FAILED:417,IM_A_TEAPOT:418,PAGE_EXPIRED:419,ENHANCE_YOUR_CALM:420,MISDIRECTED_REQUEST:421,UNPROCESSABLE_ENTITY:422,LOCKED:423,FAILED_DEPENDENCY:424,TOO_EARLY:425,UPGRADE_REQUIRED:426,PRECONDITION_REQUIRED:428,TOO_MANY_REQUESTS:429,REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL:430,REQUEST_HEADER_FIELDS_TOO_LARGE:431,LOGIN_TIMEOUT:440,NO_RESPONSE:444,RETRY_WITH:449,BLOCKED_BY_PARENTAL_CONTROL:450,UNAVAILABLE_FOR_LEGAL_REASONS:451,CLIENT_CLOSED_LOAD_BALANCED_REQUEST:460,INVALID_X_FORWARDED_FOR:463,REQUEST_HEADER_TOO_LARGE:494,SSL_CERTIFICATE_ERROR:495,SSL_CERTIFICATE_REQUIRED:496,HTTP_REQUEST_SENT_TO_HTTPS_PORT:497,INVALID_TOKEN:498,CLIENT_CLOSED_REQUEST:499,INTERNAL_SERVER_ERROR:500,NOT_IMPLEMENTED:501,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504,HTTP_VERSION_NOT_SUPPORTED:505,VARIANT_ALSO_NEGOTIATES:506,INSUFFICIENT_STORAGE:507,LOOP_DETECTED:508,BANDWIDTH_LIMIT_EXCEEDED:509,NOT_EXTENDED:510,NETWORK_AUTHENTICATION_REQUIRED:511,WEB_SERVER_UNKNOWN_ERROR:520,WEB_SERVER_IS_DOWN:521,CONNECTION_TIMEOUT:522,ORIGIN_IS_UNREACHABLE:523,TIMEOUT_OCCURED:524,SSL_HANDSHAKE_FAILED:525,INVALID_SSL_CERTIFICATE:526,RAILGUN_ERROR:527,SITE_IS_OVERLOADED:529,SITE_IS_FROZEN:530,IDENTITY_PROVIDER_AUTHENTICATION_ERROR:561,NETWORK_READ_TIMEOUT:598,NETWORK_CONNECT_TIMEOUT:599},b.FINISH={SAFE:0,SAFE_WITH_CB:1,UNSAFE:2},b.HEADER_STATE={GENERAL:0,CONNECTION:1,CONTENT_LENGTH:2,TRANSFER_ENCODING:3,UPGRADE:4,CONNECTION_KEEP_ALIVE:5,CONNECTION_CLOSE:6,CONNECTION_UPGRADE:7,TRANSFER_ENCODING_CHUNKED:8},b.METHODS_HTTP=[b.METHODS.DELETE,b.METHODS.GET,b.METHODS.HEAD,b.METHODS.POST,b.METHODS.PUT,b.METHODS.CONNECT,b.METHODS.OPTIONS,b.METHODS.TRACE,b.METHODS.COPY,b.METHODS.LOCK,b.METHODS.MKCOL,b.METHODS.MOVE,b.METHODS.PROPFIND,b.METHODS.PROPPATCH,b.METHODS.SEARCH,b.METHODS.UNLOCK,b.METHODS.BIND,b.METHODS.REBIND,b.METHODS.UNBIND,b.METHODS.ACL,b.METHODS.REPORT,b.METHODS.MKACTIVITY,b.METHODS.CHECKOUT,b.METHODS.MERGE,b.METHODS["M-SEARCH"],b.METHODS.NOTIFY,b.METHODS.SUBSCRIBE,b.METHODS.UNSUBSCRIBE,b.METHODS.PATCH,b.METHODS.PURGE,b.METHODS.MKCALENDAR,b.METHODS.LINK,b.METHODS.UNLINK,b.METHODS.PRI,b.METHODS.SOURCE,b.METHODS.QUERY],b.METHODS_ICE=[b.METHODS.SOURCE],b.METHODS_RTSP=[b.METHODS.OPTIONS,b.METHODS.DESCRIBE,b.METHODS.ANNOUNCE,b.METHODS.SETUP,b.METHODS.PLAY,b.METHODS.PAUSE,b.METHODS.TEARDOWN,b.METHODS.GET_PARAMETER,b.METHODS.SET_PARAMETER,b.METHODS.REDIRECT,b.METHODS.RECORD,b.METHODS.FLUSH,b.METHODS.GET,b.METHODS.POST],b.METHOD_MAP=(0,d.enumToMap)(b.METHODS),b.H_METHOD_MAP=Object.fromEntries(Object.entries(b.METHODS).filter(([a])=>a.startsWith("H"))),b.STATUSES_HTTP=[b.STATUSES.CONTINUE,b.STATUSES.SWITCHING_PROTOCOLS,b.STATUSES.PROCESSING,b.STATUSES.EARLY_HINTS,b.STATUSES.RESPONSE_IS_STALE,b.STATUSES.REVALIDATION_FAILED,b.STATUSES.DISCONNECTED_OPERATION,b.STATUSES.HEURISTIC_EXPIRATION,b.STATUSES.MISCELLANEOUS_WARNING,b.STATUSES.OK,b.STATUSES.CREATED,b.STATUSES.ACCEPTED,b.STATUSES.NON_AUTHORITATIVE_INFORMATION,b.STATUSES.NO_CONTENT,b.STATUSES.RESET_CONTENT,b.STATUSES.PARTIAL_CONTENT,b.STATUSES.MULTI_STATUS,b.STATUSES.ALREADY_REPORTED,b.STATUSES.TRANSFORMATION_APPLIED,b.STATUSES.IM_USED,b.STATUSES.MISCELLANEOUS_PERSISTENT_WARNING,b.STATUSES.MULTIPLE_CHOICES,b.STATUSES.MOVED_PERMANENTLY,b.STATUSES.FOUND,b.STATUSES.SEE_OTHER,b.STATUSES.NOT_MODIFIED,b.STATUSES.USE_PROXY,b.STATUSES.SWITCH_PROXY,b.STATUSES.TEMPORARY_REDIRECT,b.STATUSES.PERMANENT_REDIRECT,b.STATUSES.BAD_REQUEST,b.STATUSES.UNAUTHORIZED,b.STATUSES.PAYMENT_REQUIRED,b.STATUSES.FORBIDDEN,b.STATUSES.NOT_FOUND,b.STATUSES.METHOD_NOT_ALLOWED,b.STATUSES.NOT_ACCEPTABLE,b.STATUSES.PROXY_AUTHENTICATION_REQUIRED,b.STATUSES.REQUEST_TIMEOUT,b.STATUSES.CONFLICT,b.STATUSES.GONE,b.STATUSES.LENGTH_REQUIRED,b.STATUSES.PRECONDITION_FAILED,b.STATUSES.PAYLOAD_TOO_LARGE,b.STATUSES.URI_TOO_LONG,b.STATUSES.UNSUPPORTED_MEDIA_TYPE,b.STATUSES.RANGE_NOT_SATISFIABLE,b.STATUSES.EXPECTATION_FAILED,b.STATUSES.IM_A_TEAPOT,b.STATUSES.PAGE_EXPIRED,b.STATUSES.ENHANCE_YOUR_CALM,b.STATUSES.MISDIRECTED_REQUEST,b.STATUSES.UNPROCESSABLE_ENTITY,b.STATUSES.LOCKED,b.STATUSES.FAILED_DEPENDENCY,b.STATUSES.TOO_EARLY,b.STATUSES.UPGRADE_REQUIRED,b.STATUSES.PRECONDITION_REQUIRED,b.STATUSES.TOO_MANY_REQUESTS,b.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE_UNOFFICIAL,b.STATUSES.REQUEST_HEADER_FIELDS_TOO_LARGE,b.STATUSES.LOGIN_TIMEOUT,b.STATUSES.NO_RESPONSE,b.STATUSES.RETRY_WITH,b.STATUSES.BLOCKED_BY_PARENTAL_CONTROL,b.STATUSES.UNAVAILABLE_FOR_LEGAL_REASONS,b.STATUSES.CLIENT_CLOSED_LOAD_BALANCED_REQUEST,b.STATUSES.INVALID_X_FORWARDED_FOR,b.STATUSES.REQUEST_HEADER_TOO_LARGE,b.STATUSES.SSL_CERTIFICATE_ERROR,b.STATUSES.SSL_CERTIFICATE_REQUIRED,b.STATUSES.HTTP_REQUEST_SENT_TO_HTTPS_PORT,b.STATUSES.INVALID_TOKEN,b.STATUSES.CLIENT_CLOSED_REQUEST,b.STATUSES.INTERNAL_SERVER_ERROR,b.STATUSES.NOT_IMPLEMENTED,b.STATUSES.BAD_GATEWAY,b.STATUSES.SERVICE_UNAVAILABLE,b.STATUSES.GATEWAY_TIMEOUT,b.STATUSES.HTTP_VERSION_NOT_SUPPORTED,b.STATUSES.VARIANT_ALSO_NEGOTIATES,b.STATUSES.INSUFFICIENT_STORAGE,b.STATUSES.LOOP_DETECTED,b.STATUSES.BANDWIDTH_LIMIT_EXCEEDED,b.STATUSES.NOT_EXTENDED,b.STATUSES.NETWORK_AUTHENTICATION_REQUIRED,b.STATUSES.WEB_SERVER_UNKNOWN_ERROR,b.STATUSES.WEB_SERVER_IS_DOWN,b.STATUSES.CONNECTION_TIMEOUT,b.STATUSES.ORIGIN_IS_UNREACHABLE,b.STATUSES.TIMEOUT_OCCURED,b.STATUSES.SSL_HANDSHAKE_FAILED,b.STATUSES.INVALID_SSL_CERTIFICATE,b.STATUSES.RAILGUN_ERROR,b.STATUSES.SITE_IS_OVERLOADED,b.STATUSES.SITE_IS_FROZEN,b.STATUSES.IDENTITY_PROVIDER_AUTHENTICATION_ERROR,b.STATUSES.NETWORK_READ_TIMEOUT,b.STATUSES.NETWORK_CONNECT_TIMEOUT],b.ALPHA=[];for(let a=65;a<=90;a++)b.ALPHA.push(String.fromCharCode(a)),b.ALPHA.push(String.fromCharCode(a+32));b.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9},b.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},b.NUM=["0","1","2","3","4","5","6","7","8","9"],b.ALPHANUM=b.ALPHA.concat(b.NUM),b.MARK=["-","_",".","!","~","*","'","(",")"],b.USERINFO_CHARS=b.ALPHANUM.concat(b.MARK).concat(["%",";",":","&","=","+","$",","]),b.URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(b.ALPHANUM),b.HEX=b.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]),b.TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(b.ALPHANUM),b.HEADER_CHARS=[" "];for(let a=32;a<=255;a++)127!==a&&b.HEADER_CHARS.push(a);b.CONNECTION_TOKEN_CHARS=b.HEADER_CHARS.filter(a=>44!==a),b.QUOTED_STRING=[" "," "];for(let a=33;a<=255;a++)34!==a&&92!==a&&b.QUOTED_STRING.push(a);b.HTAB_SP_VCHAR_OBS_TEXT=[" "," "];for(let a=33;a<=126;a++)b.HTAB_SP_VCHAR_OBS_TEXT.push(a);for(let a=128;a<=255;a++)b.HTAB_SP_VCHAR_OBS_TEXT.push(a);b.MAJOR=b.NUM_MAP,b.MINOR=b.MAJOR,b.SPECIAL_HEADERS={connection:b.HEADER_STATE.CONNECTION,"content-length":b.HEADER_STATE.CONTENT_LENGTH,"proxy-connection":b.HEADER_STATE.CONNECTION,"transfer-encoding":b.HEADER_STATE.TRANSFER_ENCODING,upgrade:b.HEADER_STATE.UPGRADE},b.default={ERROR:b.ERROR,TYPE:b.TYPE,FLAGS:b.FLAGS,LENIENT_FLAGS:b.LENIENT_FLAGS,METHODS:b.METHODS,STATUSES:b.STATUSES,FINISH:b.FINISH,HEADER_STATE:b.HEADER_STATE,ALPHA:b.ALPHA,NUM_MAP:b.NUM_MAP,HEX_MAP:b.HEX_MAP,NUM:b.NUM,ALPHANUM:b.ALPHANUM,MARK:b.MARK,USERINFO_CHARS:b.USERINFO_CHARS,URL_CHAR:b.URL_CHAR,HEX:b.HEX,TOKEN:b.TOKEN,HEADER_CHARS:b.HEADER_CHARS,CONNECTION_TOKEN_CHARS:b.CONNECTION_TOKEN_CHARS,QUOTED_STRING:b.QUOTED_STRING,HTAB_SP_VCHAR_OBS_TEXT:b.HTAB_SP_VCHAR_OBS_TEXT,MAJOR:b.MAJOR,MINOR:b.MINOR,SPECIAL_HEADERS:b.SPECIAL_HEADERS,METHODS_HTTP:b.METHODS_HTTP,METHODS_ICE:b.METHODS_ICE,METHODS_RTSP:b.METHODS_RTSP,METHOD_MAP:b.METHOD_MAP,H_METHOD_MAP:b.H_METHOD_MAP,STATUSES_HTTP:b.STATUSES_HTTP}},65630:(a,b,c)=>{"use strict";let{kClients:d}=c(49176),e=c(37417),{kAgent:f,kMockAgentSet:g,kMockAgentGet:h,kDispatches:i,kIsMockActive:j,kNetConnect:k,kGetNetConnect:l,kOptions:m,kFactory:n,kMockAgentRegisterCallHistory:o,kMockAgentIsCallHistoryEnabled:p,kMockAgentAddCallHistoryLog:q,kMockAgentMockCallHistoryInstance:r,kMockAgentAcceptsNonStandardSearchParameters:s,kMockCallHistoryAddLog:t,kIgnoreTrailingSlash:u}=c(80830),v=c(66498),w=c(86625),{matchValue:x,normalizeSearchParams:y,buildAndValidateMockOptions:z,normalizeOrigin:A}=c(70634),{InvalidArgumentError:B,UndiciError:C}=c(61448),D=c(7344),E=c(70459),{MockCallHistory:F}=c(21523);class G extends D{constructor(a={}){super(a);const b=z(a);if(this[k]=!0,this[j]=!0,this[p]=b.enableCallHistory??!1,this[s]=b.acceptNonStandardSearchParameters??!1,this[u]=b.ignoreTrailingSlash??!1,a?.agent&&"function"!=typeof a.agent.dispatch)throw new B("Argument opts.agent must implement Agent");const c=a?.agent?a.agent:new e(a);this[f]=c,this[d]=c[d],this[m]=b,this[p]&&this[o]()}get(a){let b=A(a),c=this[u]?b.replace(/\/$/,""):b,d=this[h](c);return d||(d=this[n](c),this[g](c,d)),d}dispatch(a,b){a.origin=A(a.origin),this.get(a.origin),this[q](a);let c=this[s],d={...a};if(c&&d.path){let[a,b]=d.path.split("?"),e=y(b,c);d.path=`${a}?${e}`}return this[f].dispatch(d,b)}async close(){this.clearCallHistory(),await this[f].close(),this[d].clear()}deactivate(){this[j]=!1}activate(){this[j]=!0}enableNetConnect(a){if("string"==typeof a||"function"==typeof a||a instanceof RegExp)Array.isArray(this[k])?this[k].push(a):this[k]=[a];else if(void 0===a)this[k]=!0;else throw new B("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[k]=!1}enableCallHistory(){return this[p]=!0,this}disableCallHistory(){return this[p]=!1,this}getCallHistory(){return this[r]}clearCallHistory(){void 0!==this[r]&&this[r].clear()}get isMockActive(){return this[j]}[o](){void 0===this[r]&&(this[r]=new F)}[q](a){this[p]&&(this[o](),this[r][t](a))}[g](a,b){this[d].set(a,b)}[n](a){let b=Object.assign({agent:this},this[m]);return this[m]&&1===this[m].connections?new v(a,b):new w(a,b)}[h](a){let b=this[d].get(a);if(b)return b;if("string"!=typeof a){let b=this[n]("http://localhost:9999");return this[g](a,b),b}for(let[b,c]of Array.from(this[d]))if(c&&"string"!=typeof b&&x(b,a)){let b=this[n](a);return this[g](a,b),b[i]=c[i],b}}[l](){return this[k]}pendingInterceptors(){return Array.from(this[d].entries()).flatMap(([a,b])=>b[i].map(b=>({...b,origin:a}))).filter(({pending:a})=>a)}assertNoPendingInterceptors({pendingInterceptorsFormatter:a=new E}={}){let b=this.pendingInterceptors();if(0!==b.length)throw new C(1===b.length?`1 interceptor is pending:
|
|
368
|
+
|
|
369
|
+
${a.format(b)}`.trim():`${b.length} interceptors are pending:
|
|
370
|
+
|
|
371
|
+
${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(h=0,a=d.rc2.expandKey(a,b);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),g=[300,301,302,303,307,308],h=()=>{};class i{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 i(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=k(h,"stripHeadersOnRedirect"),this.stripHeadersOnCrossOriginRedirect=k(i,"stripHeadersOnCrossOriginRedirect"),this.maxRedirections=b,this.handler=e,this.history=[]}onRequestStart(a,b){this.handler.onRequestStart?.(a,{...b,history:this.history})}onRequestUpgrade(a,b,c,d){this.handler.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,i){if(this.opts.throwOnMaxRedirect&&this.history.length>=this.maxRedirections)throw Error("max redirects");if((301===b||302===b)&&"POST"===this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",h)),this.opts.body=null),303===b&&"HEAD"!==this.opts.method&&(this.opts.method="GET",d.isStream(this.opts.body)&&d.destroy(this.opts.body.on("error",h)),this.opts.body=null),this.location=this.history.length>=this.maxRedirections||d.isDisturbed(this.opts.body)||-1===g.indexOf(b)?null:c.location,this.opts.origin&&this.history.push(new URL(this.opts.path,this.opts.origin)),!this.location)return void this.handler.onResponseStart?.(a,b,c,i);let{origin:k,pathname:l,search:m}=d.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),n=m?`${l}${m}`:l,o=`${k}${n}`;for(let a of this.history)if(a.toString()===o)throw new f(`Redirect loop detected. Cannot redirect to ${k}. 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)j(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))j(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,303===b,this.opts.origin!==k,this.stripHeadersOnRedirect,this.stripHeadersOnCrossOriginRedirect),this.opts.path=n,this.opts.origin=k,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 j(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 k(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=i},67594:(a,b,c)=>{"use strict";c.d(b,{j:()=>h});var d=c(93048),e=c(38421),f=c(77321);let g=new Set;class h 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 g.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 b&&(c.Accept="text/event-stream"),c}}},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+C0HNACECDGQLIANBADYCHCADIAE2AhQgA0HJDTYCECADQRo2AgxBACECDHwLIAEgBEYEQEHZACECDHwLIAEtAABBIEcNPSABQQFqIQEgAy0ALkEBcQ09IANBADYCHCADIAE2AhQgA0HCHDYCECADQR42AgxBACECDHsLIAEgBEYEQEHYACECDHsLAkACQAJAAkACQCABLQAAIgBBCmsOBAIDAwABCyABQQFqIQFBLCECDGULIABBOkcNASADQQA2AhwgAyABNgIUIANB5xE2AhAgA0EKNgIMQQAhAgx9CyABQQFqIQEgA0Evai0AAEEBcUUNcyADLQAyQYABcUUEQCADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALAkACQCAADhZNTEsBAQEBAQEBAQEBAQEBAQEBAQEAAQsgA0EpNgIcIAMgATYCFCADQawZNgIQIANBFTYCDEEAIQIMfgsgA0EANgIcIAMgATYCFCADQeULNgIQIANBETYCDEEAIQIMfQtBACEAAkAgAygCOCICRQ0AIAIoAlwiAkUNACADIAIRAAAhAAsgAEUNWSAAQRVHDQEgA0EFNgIcIAMgATYCFCADQZsbNgIQIANBFTYCDEEAIQIMfAtBywAhAgxiC0EAIQIgA0EANgIcIAMgATYCFCADQZAONgIQIANBFDYCDAx6CyADIAMvATJBgAFyOwEyDDsLIAEgBEcEQCADQRE2AgggAyABNgIEQcoAIQIMYAtB1wAhAgx4CyABIARGBEBB1gAhAgx4CwJAAkACQAJAIAEtAAAiAEEgciAAIABBwQBrQf8BcUEaSRtB/wFxQeMAaw4TAEBAQEBAQEBAQEBAQAFAQEACA0ALIAFBAWohAUHGACECDGELIAFBAWohAUHHACECDGALIAFBAWohAUHIACECDF8LIAFBAWohAUHJACECDF4LQdUAIQIgBCABIgBGDXYgBCABayADKAIAIgFqIQYgACABa0EFaiEHA0AgAUGQyABqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0IQQQgAUEFRg0KGiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAx2C0HUACECIAQgASIARg11IAQgAWsgAygCACIBaiEGIAAgAWtBD2ohBwNAIAFBgMgAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNB0EDIAFBD0YNCRogAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMdQtB0wAhAiAEIAEiAEYNdCAEIAFrIAMoAgAiAWohBiAAIAFrQQ5qIQcDQCABQeLHAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQYgAUEORg0HIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADHQLQdIAIQIgBCABIgBGDXMgBCABayADKAIAIgFqIQUgACABa0EBaiEGA0AgAUHgxwBqLQAAIAAtAAAiB0EgciAHIAdBwQBrQf8BcUEaSRtB/wFxRw0FIAFBAUYNAiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBTYCAAxzCyABIARGBEBB0QAhAgxzCwJAAkAgAS0AACIAQSByIAAgAEHBAGtB/wFxQRpJG0H/AXFB7gBrDgcAOTk5OTkBOQsgAUEBaiEBQcMAIQIMWgsgAUEBaiEBQcQAIQIMWQsgA0EANgIAIAZBAWohAUHFACECDFgLQdAAIQIgBCABIgBGDXAgBCABayADKAIAIgFqIQYgACABa0EJaiEHA0AgAUHWxwBqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0CQQIgAUEJRg0EGiABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxwC0HPACECIAQgASIARg1vIAQgAWsgAygCACIBaiEGIAAgAWtBBWohBwNAIAFB0McAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNASABQQVGDQIgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMbwsgACEBIANBADYCAAwzC0EBCzoALCADQQA2AgAgB0EBaiEBC0EtIQIMUgsCQANAIAEtAABB0MUAai0AAEEBRw0BIAQgAUEBaiIBRw0AC0HNACECDGsLQcIAIQIMUQsgASAERgRAQcwAIQIMagsgAS0AAEE6RgRAIAMoAgQhACADQQA2AgQgAyAAIAEQMCIARQ0zIANBywA2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMagsgA0EANgIcIAMgATYCFCADQecRNgIQIANBCjYCDEEAIQIMaQsCQAJAIAMtACxBAmsOAgABJwsgA0Ezai0AAEECcUUNJiADLQAuQQJxDSYgA0EANgIcIAMgATYCFCADQaYUNgIQIANBCzYCDEEAIQIMaQsgAy0AMkEgcUUNJSADLQAuQQJxDSUgA0EANgIcIAMgATYCFCADQb0TNgIQIANBDzYCDEEAIQIMaAtBACEAAkAgAygCOCICRQ0AIAIoAkgiAkUNACADIAIRAAAhAAsgAEUEQEHBACECDE8LIABBFUcEQCADQQA2AhwgAyABNgIUIANBpg82AhAgA0EcNgIMQQAhAgxoCyADQcoANgIcIAMgATYCFCADQYUcNgIQIANBFTYCDEEAIQIMZwsgASAERwRAA0AgAS0AAEHAwQBqLQAAQQFHDRcgBCABQQFqIgFHDQALQcQAIQIMZwtBxAAhAgxmCyABIARHBEADQAJAIAEtAAAiAEEgciAAIABBwQBrQf8BcUEaSRtB/wFxIgBBCUYNACAAQSBGDQACQAJAAkACQCAAQeMAaw4TAAMDAwMDAwMBAwMDAwMDAwMDAgMLIAFBAWohAUE2IQIMUgsgAUEBaiEBQTchAgxRCyABQQFqIQFBOCECDFALDBULIAQgAUEBaiIBRw0AC0E8IQIMZgtBPCECDGULIAEgBEYEQEHIACECDGULIANBEjYCCCADIAE2AgQCQAJAAkACQAJAIAMtACxBAWsOBBQAAQIJCyADLQAyQSBxDQNB4AEhAgxPCwJAIAMvATIiAEEIcUUNACADLQAoQQFHDQAgAy0ALkEIcUUNAgsgAyAAQff7A3FBgARyOwEyDAsLIAMgAy8BMkEQcjsBMgwECyADQQA2AgQgAyABIAEQMSIABEAgA0HBADYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgxmCyABQQFqIQEMWAsgA0EANgIcIAMgATYCFCADQfQTNgIQIANBBDYCDEEAIQIMZAtBxwAhAiABIARGDWMgAygCACIAIAQgAWtqIQUgASAAa0EGaiEGAkADQCAAQcDFAGotAAAgAS0AAEEgckcNASAAQQZGDUogAEEBaiEAIAQgAUEBaiIBRw0ACyADIAU2AgAMZAsgA0EANgIADAULAkAgASAERwRAA0AgAS0AAEHAwwBqLQAAIgBBAUcEQCAAQQJHDQMgAUEBaiEBDAULIAQgAUEBaiIBRw0AC0HFACECDGQLQcUAIQIMYwsLIANBADoALAwBC0ELIQIMRwtBPyECDEYLAkACQANAIAEtAAAiAEEgRwRAAkAgAEEKaw4EAwUFAwALIABBLEYNAwwECyAEIAFBAWoiAUcNAAtBxgAhAgxgCyADQQg6ACwMDgsgAy0AKEEBRw0CIAMtAC5BCHENAiADKAIEIQAgA0EANgIEIAMgACABEDEiAARAIANBwgA2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMXwsgAUEBaiEBDFALQTshAgxECwJAA0AgAS0AACIAQSBHIABBCUdxDQEgBCABQQFqIgFHDQALQcMAIQIMXQsLQTwhAgxCCwJAAkAgASAERwRAA0AgAS0AACIAQSBHBEAgAEEKaw4EAwQEAwQLIAQgAUEBaiIBRw0AC0E/IQIMXQtBPyECDFwLIAMgAy8BMkEgcjsBMgwKCyADKAIEIQAgA0EANgIEIAMgACABEDEiAEUNTiADQT42AhwgAyABNgIUIAMgADYCDEEAIQIMWgsCQCABIARHBEADQCABLQAAQcDDAGotAAAiAEEBRwRAIABBAkYNAwwMCyAEIAFBAWoiAUcNAAtBNyECDFsLQTchAgxaCyABQQFqIQEMBAtBOyECIAQgASIARg1YIAQgAWsgAygCACIBaiEGIAAgAWtBBWohBwJAA0AgAUGQyABqLQAAIAAtAAAiBUEgciAFIAVBwQBrQf8BcUEaSRtB/wFxRw0BIAFBBUYEQEEHIQEMPwsgAUEBaiEBIAQgAEEBaiIARw0ACyADIAY2AgAMWQsgA0EANgIAIAAhAQwFC0E6IQIgBCABIgBGDVcgBCABayADKAIAIgFqIQYgACABa0EIaiEHAkADQCABQbTBAGotAAAgAC0AACIFQSByIAUgBUHBAGtB/wFxQRpJG0H/AXFHDQEgAUEIRgRAQQUhAQw+CyABQQFqIQEgBCAAQQFqIgBHDQALIAMgBjYCAAxYCyADQQA2AgAgACEBDAQLQTkhAiAEIAEiAEYNViAEIAFrIAMoAgAiAWohBiAAIAFrQQNqIQcCQANAIAFBsMEAai0AACAALQAAIgVBIHIgBSAFQcEAa0H/AXFBGkkbQf8BcUcNASABQQNGBEBBBiEBDD0LIAFBAWohASAEIABBAWoiAEcNAAsgAyAGNgIADFcLIANBADYCACAAIQEMAwsCQANAIAEtAAAiAEEgRwRAIABBCmsOBAcEBAcCCyAEIAFBAWoiAUcNAAtBOCECDFYLIABBLEcNASABQQFqIQBBASEBAkACQAJAAkACQCADLQAsQQVrDgQDAQIEAAsgACEBDAQLQQIhAQwBC0EEIQELIANBAToALCADIAMvATIgAXI7ATIgACEBDAELIAMgAy8BMkEIcjsBMiAAIQELQT4hAgw7CyADQQA6ACwLQTkhAgw5CyABIARGBEBBNiECDFILAkACQAJAAkACQCABLQAAQQprDgQAAgIBAgsgAygCBCEAIANBADYCBCADIAAgARAxIgBFDQIgA0EzNgIcIAMgATYCFCADIAA2AgxBACECDFULIAMoAgQhACADQQA2AgQgAyAAIAEQMSIARQRAIAFBAWohAQwGCyADQTI2AhwgAyAANgIMIAMgAUEBajYCFEEAIQIMVAsgAy0ALkEBcQRAQd8BIQIMOwsgAygCBCEAIANBADYCBCADIAAgARAxIgANAQxJC0E0IQIMOQsgA0E1NgIcIAMgATYCFCADIAA2AgxBACECDFELQTUhAgw3CyADQS9qLQAAQQFxDQAgA0EANgIcIAMgATYCFCADQesWNgIQIANBGTYCDEEAIQIMTwtBMyECDDULIAEgBEYEQEEyIQIMTgsCQCABLQAAQQpGBEAgAUEBaiEBDAELIANBADYCHCADIAE2AhQgA0GSFzYCECADQQM2AgxBACECDE4LQTIhAgw0CyABIARGBEBBMSECDE0LAkAgAS0AACIAQQlGDQAgAEEgRg0AQQEhAgJAIAMtACxBBWsOBAYEBQANCyADIAMvATJBCHI7ATIMDAsgAy0ALkEBcUUNASADLQAsQQhHDQAgA0EAOgAsC0E9IQIMMgsgA0EANgIcIAMgATYCFCADQcIWNgIQIANBCjYCDEEAIQIMSgtBAiECDAELQQQhAgsgA0EBOgAsIAMgAy8BMiACcjsBMgwGCyABIARGBEBBMCECDEcLIAEtAABBCkYEQCABQQFqIQEMAQsgAy0ALkEBcQ0AIANBADYCHCADIAE2AhQgA0HcKDYCECADQQI2AgxBACECDEYLQTAhAgwsCyABQQFqIQFBMSECDCsLIAEgBEYEQEEvIQIMRAsgAS0AACIAQQlHIABBIEdxRQRAIAFBAWohASADLQAuQQFxDQEgA0EANgIcIAMgATYCFCADQZcQNgIQIANBCjYCDEEAIQIMRAtBASECAkACQAJAAkACQAJAIAMtACxBAmsOBwUEBAMBAgAECyADIAMvATJBCHI7ATIMAwtBAiECDAELQQQhAgsgA0EBOgAsIAMgAy8BMiACcjsBMgtBLyECDCsLIANBADYCHCADIAE2AhQgA0GEEzYCECADQQs2AgxBACECDEMLQeEBIQIMKQsgASAERgRAQS4hAgxCCyADQQA2AgQgA0ESNgIIIAMgASABEDEiAA0BC0EuIQIMJwsgA0EtNgIcIAMgATYCFCADIAA2AgxBACECDD8LQQAhAAJAIAMoAjgiAkUNACACKAJMIgJFDQAgAyACEQAAIQALIABFDQAgAEEVRw0BIANB2AA2AhwgAyABNgIUIANBsxs2AhAgA0EVNgIMQQAhAgw+C0HMACECDCQLIANBADYCHCADIAE2AhQgA0GzDjYCECADQR02AgxBACECDDwLIAEgBEYEQEHOACECDDwLIAEtAAAiAEEgRg0CIABBOkYNAQsgA0EAOgAsQQkhAgwhCyADKAIEIQAgA0EANgIEIAMgACABEDAiAA0BDAILIAMtAC5BAXEEQEHeASECDCALIAMoAgQhACADQQA2AgQgAyAAIAEQMCIARQ0CIANBKjYCHCADIAA2AgwgAyABQQFqNgIUQQAhAgw4CyADQcsANgIcIAMgADYCDCADIAFBAWo2AhRBACECDDcLIAFBAWohAUHAACECDB0LIAFBAWohAQwsCyABIARGBEBBKyECDDULAkAgAS0AAEEKRgRAIAFBAWohAQwBCyADLQAuQcAAcUUNBgsgAy0AMkGAAXEEQEEAIQACQCADKAI4IgJFDQAgAigCXCICRQ0AIAMgAhEAACEACyAARQ0SIABBFUYEQCADQQU2AhwgAyABNgIUIANBmxs2AhAgA0EVNgIMQQAhAgw2CyADQQA2AhwgAyABNgIUIANBkA42AhAgA0EUNgIMQQAhAgw1CyADQTJqIQIgAxA1QQAhAAJAIAMoAjgiBkUNACAGKAIoIgZFDQAgAyAGEQAAIQALIAAOFgIBAAQEBAQEBAQEBAQEBAQEBAQEBAMECyADQQE6ADALIAIgAi8BAEHAAHI7AQALQSshAgwYCyADQSk2AhwgAyABNgIUIANBrBk2AhAgA0EVNgIMQQAhAgwwCyADQQA2AhwgAyABNgIUIANB5Qs2AhAgA0ERNgIMQQAhAgwvCyADQQA2AhwgAyABNgIUIANBpQs2AhAgA0ECNgIMQQAhAgwuC0EBIQcgAy8BMiIFQQhxRQRAIAMpAyBCAFIhBwsCQCADLQAwBEBBASEAIAMtAClBBUYNASAFQcAAcUUgB3FFDQELAkAgAy0AKCICQQJGBEBBASEAIAMvATQiBkHlAEYNAkEAIQAgBUHAAHENAiAGQeQARg0CIAZB5gBrQQJJDQIgBkHMAUYNAiAGQbACRg0CDAELQQAhACAFQcAAcQ0BC0ECIQAgBUEIcQ0AIAVBgARxBEACQCACQQFHDQAgAy0ALkEKcQ0AQQUhAAwCC0EEIQAMAQsgBUEgcUUEQCADEDZBAEdBAnQhAAwBC0EAQQMgAykDIFAbIQALIABBAWsOBQIABwEDBAtBESECDBMLIANBAToAMQwpC0EAIQICQCADKAI4IgBFDQAgACgCMCIARQ0AIAMgABEAACECCyACRQ0mIAJBFUYEQCADQQM2AhwgAyABNgIUIANB0hs2AhAgA0EVNgIMQQAhAgwrC0EAIQIgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDAwqCyADQQA2AhwgAyABNgIUIANB+SA2AhAgA0EPNgIMQQAhAgwpC0EAIQACQCADKAI4IgJFDQAgAigCMCICRQ0AIAMgAhEAACEACyAADQELQQ4hAgwOCyAAQRVGBEAgA0ECNgIcIAMgATYCFCADQdIbNgIQIANBFTYCDEEAIQIMJwsgA0EANgIcIAMgATYCFCADQd0ONgIQIANBEjYCDEEAIQIMJgtBKiECDAwLIAEgBEcEQCADQQk2AgggAyABNgIEQSkhAgwMC0EmIQIMJAsgAyADKQMgIgwgBCABa60iCn0iC0IAIAsgDFgbNwMgIAogDFQEQEElIQIMJAsgAygCBCEAIANBADYCBCADIAAgASAMp2oiARAyIgBFDQAgA0EFNgIcIAMgATYCFCADIAA2AgxBACECDCMLQQ8hAgwJC0IAIQoCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAS0AAEEwaw43FxYAAQIDBAUGBxQUFBQUFBQICQoLDA0UFBQUFBQUFBQUFBQUFBQUFBQUFBQUFBQUFA4PEBESExQLQgIhCgwWC0IDIQoMFQtCBCEKDBQLQgUhCgwTC0IGIQoMEgtCByEKDBELQgghCgwQC0IJIQoMDwtCCiEKDA4LQgshCgwNC0IMIQoMDAtCDSEKDAsLQg4hCgwKC0IPIQoMCQtCCiEKDAgLQgshCgwHC0IMIQoMBgtCDSEKDAULQg4hCgwEC0IPIQoMAwsgA0EANgIcIAMgATYCFCADQZ8VNgIQIANBDDYCDEEAIQIMIQsgASAERgRAQSIhAgwhC0IAIQoCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIAEtAABBMGsONxUUAAECAwQFBgcWFhYWFhYWCAkKCwwNFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYODxAREhMWC0ICIQoMFAtCAyEKDBMLQgQhCgwSC0IFIQoMEQtCBiEKDBALQgchCgwPC0IIIQoMDgtCCSEKDA0LQgohCgwMC0ILIQoMCwtCDCEKDAoLQg0hCgwJC0IOIQoMCAtCDyEKDAcLQgohCgwGC0ILIQoMBQtCDCEKDAQLQg0hCgwDC0IOIQoMAgtCDyEKDAELQgEhCgsgAUEBaiEBIAMpAyAiC0L//////////w9YBEAgAyALQgSGIAqENwMgDAILIANBADYCHCADIAE2AhQgA0G1CTYCECADQQw2AgxBACECDB4LQSchAgwEC0EoIQIMAwsgAyABOgAsIANBADYCACAHQQFqIQFBDCECDAILIANBADYCACAGQQFqIQFBCiECDAELIAFBAWohAUEIIQIMAAsAC0EAIQIgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDAwXC0EAIQIgA0EANgIcIAMgATYCFCADQYMRNgIQIANBCTYCDAwWC0EAIQIgA0EANgIcIAMgATYCFCADQd8KNgIQIANBCTYCDAwVC0EAIQIgA0EANgIcIAMgATYCFCADQe0QNgIQIANBCTYCDAwUC0EAIQIgA0EANgIcIAMgATYCFCADQdIRNgIQIANBCTYCDAwTC0EAIQIgA0EANgIcIAMgATYCFCADQbI4NgIQIANBCDYCDAwSC0EAIQIgA0EANgIcIAMgATYCFCADQYMRNgIQIANBCTYCDAwRC0EAIQIgA0EANgIcIAMgATYCFCADQd8KNgIQIANBCTYCDAwQC0EAIQIgA0EANgIcIAMgATYCFCADQe0QNgIQIANBCTYCDAwPC0EAIQIgA0EANgIcIAMgATYCFCADQdIRNgIQIANBCTYCDAwOC0EAIQIgA0EANgIcIAMgATYCFCADQbkXNgIQIANBDzYCDAwNC0EAIQIgA0EANgIcIAMgATYCFCADQbkXNgIQIANBDzYCDAwMC0EAIQIgA0EANgIcIAMgATYCFCADQZkTNgIQIANBCzYCDAwLC0EAIQIgA0EANgIcIAMgATYCFCADQZ0JNgIQIANBCzYCDAwKC0EAIQIgA0EANgIcIAMgATYCFCADQZcQNgIQIANBCjYCDAwJC0EAIQIgA0EANgIcIAMgATYCFCADQbEQNgIQIANBCjYCDAwIC0EAIQIgA0EANgIcIAMgATYCFCADQbsdNgIQIANBAjYCDAwHC0EAIQIgA0EANgIcIAMgATYCFCADQZYWNgIQIANBAjYCDAwGC0EAIQIgA0EANgIcIAMgATYCFCADQfkYNgIQIANBAjYCDAwFC0EAIQIgA0EANgIcIAMgATYCFCADQcQYNgIQIANBAjYCDAwECyADQQI2AhwgAyABNgIUIANBqR42AhAgA0EWNgIMQQAhAgwDC0HeACECIAEgBEYNAiAJQQhqIQcgAygCACEFAkACQCABIARHBEAgBUGWyABqIQggBCAFaiABayEGIAVBf3NBCmoiBSABaiEAA0AgAS0AACAILQAARwRAQQIhCAwDCyAFRQRAQQAhCCAAIQEMAwsgBUEBayEFIAhBAWohCCAEIAFBAWoiAUcNAAsgBiEFIAQhAQsgB0EBNgIAIAMgBTYCAAwBCyADQQA2AgAgByAINgIACyAHIAE2AgQgCSgCDCEAAkACQCAJKAIIQQFrDgIEAQALIANBADYCHCADQcIeNgIQIANBFzYCDCADIABBAWo2AhRBACECDAMLIANBADYCHCADIAA2AhQgA0HXHjYCECADQQk2AgxBACECDAILIAEgBEYEQEEoIQIMAgsgA0EJNgIIIAMgATYCBEEnIQIMAQsgASAERgRAQQEhAgwBCwNAAkACQAJAIAEtAABBCmsOBAABAQABCyABQQFqIQEMAQsgAUEBaiEBIAMtAC5BIHENAEEAIQIgA0EANgIcIAMgATYCFCADQaEhNgIQIANBBTYCDAwCC0EBIQIgASAERw0ACwsgCUEQaiQAIAJFBEAgAygCDCEADAELIAMgAjYCHEEAIQAgAygCBCIBRQ0AIAMgASAEIAMoAggRAQAiAUUNACADIAQ2AhQgAyABNgIMIAEhAAsgAAu+AgECfyAAQQA6AAAgAEHkAGoiAUEBa0EAOgAAIABBADoAAiAAQQA6AAEgAUEDa0EAOgAAIAFBAmtBADoAACAAQQA6AAMgAUEEa0EAOgAAQQAgAGtBA3EiASAAaiIAQQA2AgBB5AAgAWtBfHEiAiAAaiIBQQRrQQA2AgACQCACQQlJDQAgAEEANgIIIABBADYCBCABQQhrQQA2AgAgAUEMa0EANgIAIAJBGUkNACAAQQA2AhggAEEANgIUIABBADYCECAAQQA2AgwgAUEQa0EANgIAIAFBFGtBADYCACABQRhrQQA2AgAgAUEca0EANgIAIAIgAEEEcUEYciICayIBQSBJDQAgACACaiEAA0AgAEIANwMYIABCADcDECAAQgA3AwggAEIANwMAIABBIGohACABQSBrIgFBH0sNAAsLC1YBAX8CQCAAKAIMDQACQAJAAkACQCAALQAxDgMBAAMCCyAAKAI4IgFFDQAgASgCMCIBRQ0AIAAgAREAACIBDQMLQQAPCwALIABByhk2AhBBDiEBCyABCxoAIAAoAgxFBEAgAEHeHzYCECAAQRU2AgwLCxQAIAAoAgxBFUYEQCAAQQA2AgwLCxQAIAAoAgxBFkYEQCAAQQA2AgwLCwcAIAAoAgwLBwAgACgCEAsJACAAIAE2AhALBwAgACgCFAsrAAJAIABBJ08NAEL//////wkgAK2IQgGDUA0AIABBAnRB0DhqKAIADwsACxcAIABBL08EQAALIABBAnRB7DlqKAIAC78JAQF/QfQtIQECQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQeQAaw70A2NiAAFhYWFhYWECAwQFYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYQYHCAkKCwwNDg9hYWFhYRBhYWFhYWFhYWFhYRFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWESExQVFhcYGRobYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRwdHh8gISIjJCUmJygpKissLS4vMDEyMzQ1NmE3ODk6YWFhYWFhYWE7YWFhPGFhYWE9Pj9hYWFhYWFhYUBhYUFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFCQ0RFRkdISUpLTE1OT1BRUlNhYWFhYWFhYVRVVldYWVpbYVxdYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhXmFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYV9gYQtB6iwPC0GYJg8LQe0xDwtBoDcPC0HJKQ8LQbQpDwtBli0PC0HrKw8LQaI1DwtB2zQPC0HgKQ8LQeMkDwtB1SQPC0HuJA8LQeYlDwtByjQPC0HQNw8LQao1DwtB9SwPC0H2Jg8LQYIiDwtB8jMPC0G+KA8LQec3DwtBzSEPC0HAIQ8LQbglDwtByyUPC0GWJA8LQY80DwtBzTUPC0HdKg8LQe4zDwtBnDQPC0GeMQ8LQfQ1DwtB5SIPC0GvJQ8LQZkxDwtBsjYPC0H5Ng8LQcQyDwtB3SwPC0GCMQ8LQcExDwtBjTcPC0HJJA8LQew2DwtB5yoPC0HIIw8LQeIhDwtByTcPC0GlIg8LQZQiDwtB2zYPC0HeNQ8LQYYmDwtBvCsPC0GLMg8LQaAjDwtB9jAPC0GALA8LQYkrDwtBpCYPC0HyIw8LQYEoDwtBqzIPC0HrJw8LQcI2DwtBoiQPC0HPKg8LQdwjDwtBhycPC0HkNA8LQbciDwtBrTEPC0HVIg8LQa80DwtB3iYPC0HWMg8LQfQ0DwtBgTgPC0H0Nw8LQZI2DwtBnScPC0GCKQ8LQY0jDwtB1zEPC0G9NQ8LQbQ3DwtB2DAPC0G2Jw8LQZo4DwtBpyoPC0HEJw8LQa4jDwtB9SIPCwALQcomIQELIAELFwAgACAALwEuQf7/A3EgAUEAR3I7AS4LGgAgACAALwEuQf3/A3EgAUEAR0EBdHI7AS4LGgAgACAALwEuQfv/A3EgAUEAR0ECdHI7AS4LGgAgACAALwEuQff/A3EgAUEAR0EDdHI7AS4LGgAgACAALwEuQe//A3EgAUEAR0EEdHI7AS4LGgAgACAALwEuQd//A3EgAUEAR0EFdHI7AS4LGgAgACAALwEuQb//A3EgAUEAR0EGdHI7AS4LGgAgACAALwEuQf/+A3EgAUEAR0EHdHI7AS4LGgAgACAALwEuQf/9A3EgAUEAR0EIdHI7AS4LGgAgACAALwEuQf/7A3EgAUEAR0EJdHI7AS4LPgECfwJAIAAoAjgiA0UNACADKAIEIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEHhEjYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIIIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEH8ETYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIMIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEHsCjYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIQIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEH6HjYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIUIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEHLEDYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIYIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEG3HzYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIcIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEG/FTYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIsIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEH+CDYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIgIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEGMHTYCEEEYIQQLIAQLPgECfwJAIAAoAjgiA0UNACADKAIkIgNFDQAgACABIAIgAWsgAxEBACIEQX9HDQAgAEHmFTYCEEEYIQQLIAQLOAAgAAJ/IAAvATJBFHFBFEYEQEEBIAAtAChBAUYNARogAC8BNEHlAEYMAQsgAC0AKUEFRgs6ADALWQECfwJAIAAtAChBAUYNACAALwE0IgFB5ABrQeQASQ0AIAFBzAFGDQAgAUGwAkYNACAALwEyIgBBwABxDQBBASECIABBiARxQYAERg0AIABBKHFFIQILIAILjAEBAn8CQAJAAkAgAC0AKkUNACAALQArRQ0AIAAvATIiAUECcUUNAQwCCyAALwEyIgFBAXFFDQELQQEhAiAALQAoQQFGDQAgAC8BNCIAQeQAa0HkAEkNACAAQcwBRg0AIABBsAJGDQAgAUHAAHENAEEAIQIgAUGIBHFBgARGDQAgAUEocUEARyECCyACC1cAIABBGGpCADcDACAAQgA3AwAgAEE4akIANwMAIABBMGpCADcDACAAQShqQgA3AwAgAEEgakIANwMAIABBEGpCADcDACAAQQhqQgA3AwAgAEH9ATYCHAsGACAAEDoLmi0BC38jAEEQayIKJABB3NUAKAIAIglFBEBBnNkAKAIAIgVFBEBBqNkAQn83AgBBoNkAQoCAhICAgMAANwIAQZzZACAKQQhqQXBxQdiq1aoFcyIFNgIAQbDZAEEANgIAQYDZAEEANgIAC0GE2QBBwNkENgIAQdTVAEHA2QQ2AgBB6NUAIAU2AgBB5NUAQX82AgBBiNkAQcCmAzYCAANAIAFBgNYAaiABQfTVAGoiAjYCACACIAFB7NUAaiIDNgIAIAFB+NUAaiADNgIAIAFBiNYAaiABQfzVAGoiAzYCACADIAI2AgAgAUGQ1gBqIAFBhNYAaiICNgIAIAIgAzYCACABQYzWAGogAjYCACABQSBqIgFBgAJHDQALQczZBEGBpgM2AgBB4NUAQazZACgCADYCAEHQ1QBBgKYDNgIAQdzVAEHI2QQ2AgBBzP8HQTg2AgBByNkEIQkLAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAEHsAU0EQEHE1QAoAgAiBkEQIABBE2pBcHEgAEELSRsiBEEDdiIAdiIBQQNxBEACQCABQQFxIAByQQFzIgJBA3QiAEHs1QBqIgEgAEH01QBqKAIAIgAoAggiA0YEQEHE1QAgBkF+IAJ3cTYCAAwBCyABIAM2AgggAyABNgIMCyAAQQhqIQEgACACQQN0IgJBA3I2AgQgACACaiIAIAAoAgRBAXI2AgQMEQtBzNUAKAIAIgggBE8NASABBEACQEECIAB0IgJBACACa3IgASAAdHFoIgBBA3QiAkHs1QBqIgEgAkH01QBqKAIAIgIoAggiA0YEQEHE1QAgBkF+IAB3cSIGNgIADAELIAEgAzYCCCADIAE2AgwLIAIgBEEDcjYCBCAAQQN0IgAgBGshBSAAIAJqIAU2AgAgAiAEaiIEIAVBAXI2AgQgCARAIAhBeHFB7NUAaiEAQdjVACgCACEDAn9BASAIQQN2dCIBIAZxRQRAQcTVACABIAZyNgIAIAAMAQsgACgCCAsiASADNgIMIAAgAzYCCCADIAA2AgwgAyABNgIICyACQQhqIQFB2NUAIAQ2AgBBzNUAIAU2AgAMEQtByNUAKAIAIgtFDQEgC2hBAnRB9NcAaigCACIAKAIEQXhxIARrIQUgACECA0ACQCACKAIQIgFFBEAgAkEUaigCACIBRQ0BCyABKAIEQXhxIARrIgMgBUkhAiADIAUgAhshBSABIAAgAhshACABIQIMAQsLIAAoAhghCSAAKAIMIgMgAEcEQEHU1QAoAgAaIAMgACgCCCIBNgIIIAEgAzYCDAwQCyAAQRRqIgIoAgAiAUUEQCAAKAIQIgFFDQMgAEEQaiECCwNAIAIhByABIgNBFGoiAigCACIBDQAgA0EQaiECIAMoAhAiAQ0ACyAHQQA2AgAMDwtBfyEEIABBv39LDQAgAEETaiIBQXBxIQRByNUAKAIAIghFDQBBACAEayEFAkACQAJAAn9BACAEQYACSQ0AGkEfIARB////B0sNABogBEEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+agsiBkECdEH01wBqKAIAIgJFBEBBACEBQQAhAwwBC0EAIQEgBEEZIAZBAXZrQQAgBkEfRxt0IQBBACEDA0ACQCACKAIEQXhxIARrIgcgBU8NACACIQMgByIFDQBBACEFIAIhAQwDCyABIAJBFGooAgAiByAHIAIgAEEddkEEcWpBEGooAgAiAkYbIAEgBxshASAAQQF0IQAgAg0ACwsgASADckUEQEEAIQNBAiAGdCIAQQAgAGtyIAhxIgBFDQMgAGhBAnRB9NcAaigCACEBCyABRQ0BCwNAIAEoAgRBeHEgBGsiAiAFSSEAIAIgBSAAGyEFIAEgAyAAGyEDIAEoAhAiAAR/IAAFIAFBFGooAgALIgENAAsLIANFDQAgBUHM1QAoAgAgBGtPDQAgAygCGCEHIAMgAygCDCIARwRAQdTVACgCABogACADKAIIIgE2AgggASAANgIMDA4LIANBFGoiAigCACIBRQRAIAMoAhAiAUUNAyADQRBqIQILA0AgAiEGIAEiAEEUaiICKAIAIgENACAAQRBqIQIgACgCECIBDQALIAZBADYCAAwNC0HM1QAoAgAiAyAETwRAQdjVACgCACEBAkAgAyAEayICQRBPBEAgASAEaiIAIAJBAXI2AgQgASADaiACNgIAIAEgBEEDcjYCBAwBCyABIANBA3I2AgQgASADaiIAIAAoAgRBAXI2AgRBACEAQQAhAgtBzNUAIAI2AgBB2NUAIAA2AgAgAUEIaiEBDA8LQdDVACgCACIDIARLBEAgBCAJaiIAIAMgBGsiAUEBcjYCBEHc1QAgADYCAEHQ1QAgATYCACAJIARBA3I2AgQgCUEIaiEBDA8LQQAhASAEAn9BnNkAKAIABEBBpNkAKAIADAELQajZAEJ/NwIAQaDZAEKAgISAgIDAADcCAEGc2QAgCkEMakFwcUHYqtWqBXM2AgBBsNkAQQA2AgBBgNkAQQA2AgBBgIAECyIAIARBxwBqIgVqIgZBACAAayIHcSICTwRAQbTZAEEwNgIADA8LAkBB/NgAKAIAIgFFDQBB9NgAKAIAIgggAmohACAAIAFNIAAgCEtxDQBBACEBQbTZAEEwNgIADA8LQYDZAC0AAEEEcQ0EAkACQCAJBEBBhNkAIQEDQCABKAIAIgAgCU0EQCAAIAEoAgRqIAlLDQMLIAEoAggiAQ0ACwtBABA7IgBBf0YNBSACIQZBoNkAKAIAIgFBAWsiAyAAcQRAIAIgAGsgACADakEAIAFrcWohBgsgBCAGTw0FIAZB/v///wdLDQVB/NgAKAIAIgMEQEH02AAoAgAiByAGaiEBIAEgB00NBiABIANLDQYLIAYQOyIBIABHDQEMBwsgBiADayAHcSIGQf7///8HSw0EIAYQOyEAIAAgASgCACABKAIEakYNAyAAIQELAkAgBiAEQcgAak8NACABQX9GDQBBpNkAKAIAIgAgBSAGa2pBACAAa3EiAEH+////B0sEQCABIQAMBwsgABA7QX9HBEAgACAGaiEGIAEhAAwHC0EAIAZrEDsaDAQLIAEiAEF/Rw0FDAMLQQAhAwwMC0EAIQAMCgsgAEF/Rw0CC0GA2QBBgNkAKAIAQQRyNgIACyACQf7///8HSw0BIAIQOyEAQQAQOyEBIABBf0YNASABQX9GDQEgACABTw0BIAEgAGsiBiAEQThqTQ0BC0H02ABB9NgAKAIAIAZqIgE2AgBB+NgAKAIAIAFJBEBB+NgAIAE2AgALAkACQAJAQdzVACgCACICBEBBhNkAIQEDQCAAIAEoAgAiAyABKAIEIgVqRg0CIAEoAggiAQ0ACwwCC0HU1QAoAgAiAUEARyAAIAFPcUUEQEHU1QAgADYCAAtBACEBQYjZACAGNgIAQYTZACAANgIAQeTVAEF/NgIAQejVAEGc2QAoAgA2AgBBkNkAQQA2AgADQCABQYDWAGogAUH01QBqIgI2AgAgAiABQezVAGoiAzYCACABQfjVAGogAzYCACABQYjWAGogAUH81QBqIgM2AgAgAyACNgIAIAFBkNYAaiABQYTWAGoiAjYCACACIAM2AgAgAUGM1gBqIAI2AgAgAUEgaiIBQYACRw0AC0F4IABrQQ9xIgEgAGoiAiAGQThrIgMgAWsiAUEBcjYCBEHg1QBBrNkAKAIANgIAQdDVACABNgIAQdzVACACNgIAIAAgA2pBODYCBAwCCyAAIAJNDQAgAiADSQ0AIAEoAgxBCHENAEF4IAJrQQ9xIgAgAmoiA0HQ1QAoAgAgBmoiByAAayIAQQFyNgIEIAEgBSAGajYCBEHg1QBBrNkAKAIANgIAQdDVACAANgIAQdzVACADNgIAIAIgB2pBODYCBAwBCyAAQdTVACgCAEkEQEHU1QAgADYCAAsgACAGaiEDQYTZACEBAkACQAJAA0AgAyABKAIARwRAIAEoAggiAQ0BDAILCyABLQAMQQhxRQ0BC0GE2QAhAQNAIAEoAgAiAyACTQRAIAMgASgCBGoiBSACSw0DCyABKAIIIQEMAAsACyABIAA2AgAgASABKAIEIAZqNgIEIABBeCAAa0EPcWoiCSAEQQNyNgIEIANBeCADa0EPcWoiBiAEIAlqIgRrIQEgAiAGRgRAQdzVACAENgIAQdDVAEHQ1QAoAgAgAWoiADYCACAEIABBAXI2AgQMCAtB2NUAKAIAIAZGBEBB2NUAIAQ2AgBBzNUAQczVACgCACABaiIANgIAIAQgAEEBcjYCBCAAIARqIAA2AgAMCAsgBigCBCIFQQNxQQFHDQYgBUF4cSEIIAVB/wFNBEAgBUEDdiEDIAYoAggiACAGKAIMIgJGBEBBxNUAQcTVACgCAEF+IAN3cTYCAAwHCyACIAA2AgggACACNgIMDAYLIAYoAhghByAGIAYoAgwiAEcEQCAAIAYoAggiAjYCCCACIAA2AgwMBQsgBkEUaiICKAIAIgVFBEAgBigCECIFRQ0EIAZBEGohAgsDQCACIQMgBSIAQRRqIgIoAgAiBQ0AIABBEGohAiAAKAIQIgUNAAsgA0EANgIADAQLQXggAGtBD3EiASAAaiIHIAZBOGsiAyABayIBQQFyNgIEIAAgA2pBODYCBCACIAVBNyAFa0EPcWpBP2siAyADIAJBEGpJGyIDQSM2AgRB4NUAQazZACgCADYCAEHQ1QAgATYCAEHc1QAgBzYCACADQRBqQYzZACkCADcCACADQYTZACkCADcCCEGM2QAgA0EIajYCAEGI2QAgBjYCAEGE2QAgADYCAEGQ2QBBADYCACADQSRqIQEDQCABQQc2AgAgBSABQQRqIgFLDQALIAIgA0YNACADIAMoAgRBfnE2AgQgAyADIAJrIgU2AgAgAiAFQQFyNgIEIAVB/wFNBEAgBUF4cUHs1QBqIQACf0HE1QAoAgAiAUEBIAVBA3Z0IgNxRQRAQcTVACABIANyNgIAIAAMAQsgACgCCAsiASACNgIMIAAgAjYCCCACIAA2AgwgAiABNgIIDAELQR8hASAFQf///wdNBEAgBUEmIAVBCHZnIgBrdkEBcSAAQQF0a0E+aiEBCyACIAE2AhwgAkIANwIQIAFBAnRB9NcAaiEAQcjVACgCACIDQQEgAXQiBnFFBEAgACACNgIAQcjVACADIAZyNgIAIAIgADYCGCACIAI2AgggAiACNgIMDAELIAVBGSABQQF2a0EAIAFBH0cbdCEBIAAoAgAhAwJAA0AgAyIAKAIEQXhxIAVGDQEgAUEddiEDIAFBAXQhASAAIANBBHFqQRBqIgYoAgAiAw0ACyAGIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggMAQsgACgCCCIBIAI2AgwgACACNgIIIAJBADYCGCACIAA2AgwgAiABNgIIC0HQ1QAoAgAiASAETQ0AQdzVACgCACIAIARqIgIgASAEayIBQQFyNgIEQdDVACABNgIAQdzVACACNgIAIAAgBEEDcjYCBCAAQQhqIQEMCAtBACEBQbTZAEEwNgIADAcLQQAhAAsgB0UNAAJAIAYoAhwiAkECdEH01wBqIgMoAgAgBkYEQCADIAA2AgAgAA0BQcjVAEHI1QAoAgBBfiACd3E2AgAMAgsgB0EQQRQgBygCECAGRhtqIAA2AgAgAEUNAQsgACAHNgIYIAYoAhAiAgRAIAAgAjYCECACIAA2AhgLIAZBFGooAgAiAkUNACAAQRRqIAI2AgAgAiAANgIYCyABIAhqIQEgBiAIaiIGKAIEIQULIAYgBUF+cTYCBCABIARqIAE2AgAgBCABQQFyNgIEIAFB/wFNBEAgAUF4cUHs1QBqIQACf0HE1QAoAgAiAkEBIAFBA3Z0IgFxRQRAQcTVACABIAJyNgIAIAAMAQsgACgCCAsiASAENgIMIAAgBDYCCCAEIAA2AgwgBCABNgIIDAELQR8hBSABQf///wdNBEAgAUEmIAFBCHZnIgBrdkEBcSAAQQF0a0E+aiEFCyAEIAU2AhwgBEIANwIQIAVBAnRB9NcAaiEAQcjVACgCACICQQEgBXQiA3FFBEAgACAENgIAQcjVACACIANyNgIAIAQgADYCGCAEIAQ2AgggBCAENgIMDAELIAFBGSAFQQF2a0EAIAVBH0cbdCEFIAAoAgAhAAJAA0AgACICKAIEQXhxIAFGDQEgBUEddiEAIAVBAXQhBSACIABBBHFqQRBqIgMoAgAiAA0ACyADIAQ2AgAgBCACNgIYIAQgBDYCDCAEIAQ2AggMAQsgAigCCCIAIAQ2AgwgAiAENgIIIARBADYCGCAEIAI2AgwgBCAANgIICyAJQQhqIQEMAgsCQCAHRQ0AAkAgAygCHCIBQQJ0QfTXAGoiAigCACADRgRAIAIgADYCACAADQFByNUAIAhBfiABd3EiCDYCAAwCCyAHQRBBFCAHKAIQIANGG2ogADYCACAARQ0BCyAAIAc2AhggAygCECIBBEAgACABNgIQIAEgADYCGAsgA0EUaigCACIBRQ0AIABBFGogATYCACABIAA2AhgLAkAgBUEPTQRAIAMgBCAFaiIAQQNyNgIEIAAgA2oiACAAKAIEQQFyNgIEDAELIAMgBGoiAiAFQQFyNgIEIAMgBEEDcjYCBCACIAVqIAU2AgAgBUH/AU0EQCAFQXhxQezVAGohAAJ/QcTVACgCACIBQQEgBUEDdnQiBXFFBEBBxNUAIAEgBXI2AgAgAAwBCyAAKAIICyIBIAI2AgwgACACNgIIIAIgADYCDCACIAE2AggMAQtBHyEBIAVB////B00EQCAFQSYgBUEIdmciAGt2QQFxIABBAXRrQT5qIQELIAIgATYCHCACQgA3AhAgAUECdEH01wBqIQBBASABdCIEIAhxRQRAIAAgAjYCAEHI1QAgBCAIcjYCACACIAA2AhggAiACNgIIIAIgAjYCDAwBCyAFQRkgAUEBdmtBACABQR9HG3QhASAAKAIAIQQCQANAIAQiACgCBEF4cSAFRg0BIAFBHXYhBCABQQF0IQEgACAEQQRxakEQaiIGKAIAIgQNAAsgBiACNgIAIAIgADYCGCACIAI2AgwgAiACNgIIDAELIAAoAggiASACNgIMIAAgAjYCCCACQQA2AhggAiAANgIMIAIgATYCCAsgA0EIaiEBDAELAkAgCUUNAAJAIAAoAhwiAUECdEH01wBqIgIoAgAgAEYEQCACIAM2AgAgAw0BQcjVACALQX4gAXdxNgIADAILIAlBEEEUIAkoAhAgAEYbaiADNgIAIANFDQELIAMgCTYCGCAAKAIQIgEEQCADIAE2AhAgASADNgIYCyAAQRRqKAIAIgFFDQAgA0EUaiABNgIAIAEgAzYCGAsCQCAFQQ9NBEAgACAEIAVqIgFBA3I2AgQgACABaiIBIAEoAgRBAXI2AgQMAQsgACAEaiIHIAVBAXI2AgQgACAEQQNyNgIEIAUgB2ogBTYCACAIBEAgCEF4cUHs1QBqIQFB2NUAKAIAIQMCf0EBIAhBA3Z0IgIgBnFFBEBBxNUAIAIgBnI2AgAgAQwBCyABKAIICyICIAM2AgwgASADNgIIIAMgATYCDCADIAI2AggLQdjVACAHNgIAQczVACAFNgIACyAAQQhqIQELIApBEGokACABC0MAIABFBEA/AEEQdA8LAkAgAEH//wNxDQAgAEEASA0AIABBEHZAACIAQX9GBEBBtNkAQTA2AgBBfw8LIABBEHQPCwALC5lCIgBBgAgLDQEAAAAAAAAAAgAAAAMAQZgICwUEAAAABQBBqAgLCQYAAAAHAAAACABB5AgLwjJJbnZhbGlkIGNoYXIgaW4gdXJsIHF1ZXJ5AFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fYm9keQBDb250ZW50LUxlbmd0aCBvdmVyZmxvdwBDaHVuayBzaXplIG92ZXJmbG93AEludmFsaWQgbWV0aG9kIGZvciBIVFRQL3gueCByZXF1ZXN0AEludmFsaWQgbWV0aG9kIGZvciBSVFNQL3gueCByZXF1ZXN0AEV4cGVjdGVkIFNPVVJDRSBtZXRob2QgZm9yIElDRS94LnggcmVxdWVzdABJbnZhbGlkIGNoYXIgaW4gdXJsIGZyYWdtZW50IHN0YXJ0AEV4cGVjdGVkIGRvdABTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3N0YXR1cwBJbnZhbGlkIHJlc3BvbnNlIHN0YXR1cwBFeHBlY3RlZCBMRiBhZnRlciBoZWFkZXJzAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMAVXNlciBjYWxsYmFjayBlcnJvcgBgb25fcmVzZXRgIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19oZWFkZXJgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2JlZ2luYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlYCBjYWxsYmFjayBlcnJvcgBgb25fc3RhdHVzX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdmVyc2lvbl9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3VybF9jb21wbGV0ZWAgY2FsbGJhY2sgZXJyb3IAYG9uX3Byb3RvY29sX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fcHJvdG9jb2wARW1wdHkgQ29udGVudC1MZW5ndGgASW52YWxpZCBjaGFyYWN0ZXIgaW4gQ29udGVudC1MZW5ndGgAVHJhbnNmZXItRW5jb2RpbmcgY2FuJ3QgYmUgcHJlc2VudCB3aXRoIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgc2l6ZQBFeHBlY3RlZCBMRiBhZnRlciBjaHVuayBzaXplAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBVbmV4cGVjdGVkIHdoaXRlc3BhY2UgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgaGVhZGVyIHZhbHVlAE1pc3NpbmcgZXhwZWN0ZWQgTEYgYWZ0ZXIgaGVhZGVyIHZhbHVlAEludmFsaWQgYFRyYW5zZmVyLUVuY29kaW5nYCBoZWFkZXIgdmFsdWUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciBjaHVuayBleHRlbnNpb24gdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZSB2YWx1ZQBJbnZhbGlkIHF1b3RlZC1wYWlyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGVkIHZhbHVlAFBhdXNlZCBieSBvbl9oZWFkZXJzX2NvbXBsZXRlAEludmFsaWQgRU9GIHN0YXRlAG9uX3Jlc2V0IHBhdXNlAG9uX2NodW5rX2hlYWRlciBwYXVzZQBvbl9tZXNzYWdlX2JlZ2luIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl92YWx1ZSBwYXVzZQBvbl9zdGF0dXNfY29tcGxldGUgcGF1c2UAb25fdmVyc2lvbl9jb21wbGV0ZSBwYXVzZQBvbl91cmxfY29tcGxldGUgcGF1c2UAb25fcHJvdG9jb2xfY29tcGxldGUgcGF1c2UAb25fY2h1bmtfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX3ZhbHVlX2NvbXBsZXRlIHBhdXNlAG9uX21lc3NhZ2VfY29tcGxldGUgcGF1c2UAb25fbWV0aG9kX2NvbXBsZXRlIHBhdXNlAG9uX2hlYWRlcl9maWVsZF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19leHRlbnNpb25fbmFtZSBwYXVzZQBVbmV4cGVjdGVkIHNwYWNlIGFmdGVyIHN0YXJ0IGxpbmUATWlzc2luZyBleHBlY3RlZCBDUiBhZnRlciByZXNwb25zZSBsaW5lAFNwYW4gY2FsbGJhY2sgZXJyb3IgaW4gb25fY2h1bmtfZXh0ZW5zaW9uX25hbWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBuYW1lAE1pc3NpbmcgZXhwZWN0ZWQgQ1IgYWZ0ZXIgY2h1bmsgZXh0ZW5zaW9uIG5hbWUASW52YWxpZCBzdGF0dXMgY29kZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABNaXNzaW5nIGV4cGVjdGVkIENSIGFmdGVyIGNodW5rIGRhdGEARXhwZWN0ZWQgTEYgYWZ0ZXIgY2h1bmsgZGF0YQBVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AARGF0YSBhZnRlciBgQ29ubmVjdGlvbjogY2xvc2VgAFNXSVRDSF9QUk9YWQBVU0VfUFJPWFkATUtBQ1RJVklUWQBVTlBST0NFU1NBQkxFX0VOVElUWQBRVUVSWQBDT1BZAE1PVkVEX1BFUk1BTkVOVExZAFRPT19FQVJMWQBOT1RJRlkARkFJTEVEX0RFUEVOREVOQ1kAQkFEX0dBVEVXQVkAUExBWQBQVVQAQ0hFQ0tPVVQAR0FURVdBWV9USU1FT1VUAFJFUVVFU1RfVElNRU9VVABORVRXT1JLX0NPTk5FQ1RfVElNRU9VVABDT05ORUNUSU9OX1RJTUVPVVQATE9HSU5fVElNRU9VVABORVRXT1JLX1JFQURfVElNRU9VVABQT1NUAE1JU0RJUkVDVEVEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9SRVFVRVNUAENMSUVOVF9DTE9TRURfTE9BRF9CQUxBTkNFRF9SRVFVRVNUAEJBRF9SRVFVRVNUAEhUVFBfUkVRVUVTVF9TRU5UX1RPX0hUVFBTX1BPUlQAUkVQT1JUAElNX0FfVEVBUE9UAFJFU0VUX0NPTlRFTlQATk9fQ09OVEVOVABQQVJUSUFMX0NPTlRFTlQASFBFX0lOVkFMSURfQ09OU1RBTlQASFBFX0NCX1JFU0VUAEdFVABIUEVfU1RSSUNUAENPTkZMSUNUAFRFTVBPUkFSWV9SRURJUkVDVABQRVJNQU5FTlRfUkVESVJFQ1QAQ09OTkVDVABNVUxUSV9TVEFUVVMASFBFX0lOVkFMSURfU1RBVFVTAFRPT19NQU5ZX1JFUVVFU1RTAEVBUkxZX0hJTlRTAFVOQVZBSUxBQkxFX0ZPUl9MRUdBTF9SRUFTT05TAE9QVElPTlMAU1dJVENISU5HX1BST1RPQ09MUwBWQVJJQU5UX0FMU09fTkVHT1RJQVRFUwBNVUxUSVBMRV9DSE9JQ0VTAElOVEVSTkFMX1NFUlZFUl9FUlJPUgBXRUJfU0VSVkVSX1VOS05PV05fRVJST1IAUkFJTEdVTl9FUlJPUgBJREVOVElUWV9QUk9WSURFUl9BVVRIRU5USUNBVElPTl9FUlJPUgBTU0xfQ0VSVElGSUNBVEVfRVJST1IASU5WQUxJRF9YX0ZPUldBUkRFRF9GT1IAU0VUX1BBUkFNRVRFUgBHRVRfUEFSQU1FVEVSAEhQRV9VU0VSAFNFRV9PVEhFUgBIUEVfQ0JfQ0hVTktfSEVBREVSAEV4cGVjdGVkIExGIGFmdGVyIENSAE1LQ0FMRU5EQVIAU0VUVVAAV0VCX1NFUlZFUl9JU19ET1dOAFRFQVJET1dOAEhQRV9DTE9TRURfQ09OTkVDVElPTgBIRVVSSVNUSUNfRVhQSVJBVElPTgBESVNDT05ORUNURURfT1BFUkFUSU9OAE5PTl9BVVRIT1JJVEFUSVZFX0lORk9STUFUSU9OAEhQRV9JTlZBTElEX1ZFUlNJT04ASFBFX0NCX01FU1NBR0VfQkVHSU4AU0lURV9JU19GUk9aRU4ASFBFX0lOVkFMSURfSEVBREVSX1RPS0VOAElOVkFMSURfVE9LRU4ARk9SQklEREVOAEVOSEFOQ0VfWU9VUl9DQUxNAEhQRV9JTlZBTElEX1VSTABCTE9DS0VEX0JZX1BBUkVOVEFMX0NPTlRST0wATUtDT0wAQUNMAEhQRV9JTlRFUk5BTABSRVFVRVNUX0hFQURFUl9GSUVMRFNfVE9PX0xBUkdFX1VOT0ZGSUNJQUwASFBFX09LAFVOTElOSwBVTkxPQ0sAUFJJAFJFVFJZX1dJVEgASFBFX0lOVkFMSURfQ09OVEVOVF9MRU5HVEgASFBFX1VORVhQRUNURURfQ09OVEVOVF9MRU5HVEgARkxVU0gAUFJPUFBBVENIAE0tU0VBUkNIAFVSSV9UT09fTE9ORwBQUk9DRVNTSU5HAE1JU0NFTExBTkVPVVNfUEVSU0lTVEVOVF9XQVJOSU5HAE1JU0NFTExBTkVPVVNfV0FSTklORwBIUEVfSU5WQUxJRF9UUkFOU0ZFUl9FTkNPRElORwBFeHBlY3RlZCBDUkxGAEhQRV9JTlZBTElEX0NIVU5LX1NJWkUATU9WRQBDT05USU5VRQBIUEVfQ0JfU1RBVFVTX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJTX0NPTVBMRVRFAEhQRV9DQl9WRVJTSU9OX0NPTVBMRVRFAEhQRV9DQl9VUkxfQ09NUExFVEUASFBFX0NCX1BST1RPQ09MX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19DT01QTEVURQBIUEVfQ0JfSEVBREVSX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fVkFMVUVfQ09NUExFVEUASFBFX0NCX0NIVU5LX0VYVEVOU0lPTl9OQU1FX0NPTVBMRVRFAEhQRV9DQl9NRVNTQUdFX0NPTVBMRVRFAEhQRV9DQl9NRVRIT0RfQ09NUExFVEUASFBFX0NCX0hFQURFUl9GSUVMRF9DT01QTEVURQBERUxFVEUASFBFX0lOVkFMSURfRU9GX1NUQVRFAElOVkFMSURfU1NMX0NFUlRJRklDQVRFAFBBVVNFAE5PX1JFU1BPTlNFAFVOU1VQUE9SVEVEX01FRElBX1RZUEUAR09ORQBOT1RfQUNDRVBUQUJMRQBTRVJWSUNFX1VOQVZBSUxBQkxFAFJBTkdFX05PVF9TQVRJU0ZJQUJMRQBPUklHSU5fSVNfVU5SRUFDSEFCTEUAUkVTUE9OU0VfSVNfU1RBTEUAUFVSR0UATUVSR0UAUkVRVUVTVF9IRUFERVJfRklFTERTX1RPT19MQVJHRQBSRVFVRVNUX0hFQURFUl9UT09fTEFSR0UAUEFZTE9BRF9UT09fTEFSR0UASU5TVUZGSUNJRU5UX1NUT1JBR0UASFBFX1BBVVNFRF9VUEdSQURFAEhQRV9QQVVTRURfSDJfVVBHUkFERQBTT1VSQ0UAQU5OT1VOQ0UAVFJBQ0UASFBFX1VORVhQRUNURURfU1BBQ0UAREVTQ1JJQkUAVU5TVUJTQ1JJQkUAUkVDT1JEAEhQRV9JTlZBTElEX01FVEhPRABOT1RfRk9VTkQAUFJPUEZJTkQAVU5CSU5EAFJFQklORABVTkFVVEhPUklaRUQATUVUSE9EX05PVF9BTExPV0VEAEhUVFBfVkVSU0lPTl9OT1RfU1VQUE9SVEVEAEFMUkVBRFlfUkVQT1JURUQAQUNDRVBURUQATk9UX0lNUExFTUVOVEVEAExPT1BfREVURUNURUQASFBFX0NSX0VYUEVDVEVEAEhQRV9MRl9FWFBFQ1RFRABDUkVBVEVEAElNX1VTRUQASFBFX1BBVVNFRABUSU1FT1VUX09DQ1VSRUQAUEFZTUVOVF9SRVFVSVJFRABQUkVDT05ESVRJT05fUkVRVUlSRUQAUFJPWFlfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATkVUV09SS19BVVRIRU5USUNBVElPTl9SRVFVSVJFRABMRU5HVEhfUkVRVUlSRUQAU1NMX0NFUlRJRklDQVRFX1JFUVVJUkVEAFVQR1JBREVfUkVRVUlSRUQAUEFHRV9FWFBJUkVEAFBSRUNPTkRJVElPTl9GQUlMRUQARVhQRUNUQVRJT05fRkFJTEVEAFJFVkFMSURBVElPTl9GQUlMRUQAU1NMX0hBTkRTSEFLRV9GQUlMRUQATE9DS0VEAFRSQU5TRk9STUFUSU9OX0FQUExJRUQATk9UX01PRElGSUVEAE5PVF9FWFRFTkRFRABCQU5EV0lEVEhfTElNSVRfRVhDRUVERUQAU0lURV9JU19PVkVSTE9BREVEAEhFQUQARXhwZWN0ZWQgSFRUUC8sIFJUU1AvIG9yIElDRS8A5xUAAK8VAACkEgAAkhoAACYWAACeFAAA2xkAAHkVAAB+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(99887),c(80152),c(82689),c(82703),c(81556),c(17438),c(25720),c(39490)},69632:(a,b,c)=>{"use strict";c.d(b,{H:()=>n});var d=c(22268),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,c=null){return(0,g.k)({id:a.responseId,created:a.created,model:a.model},b,c)}let m=a=>(0,k.F)(a,"commandcode");function n(a,b){var c;if(!a)return null;if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let d=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let c=b.startsWith("data:")?b.slice(5).trim():b;if(!c||"[DONE]"===c)return null;try{d=JSON.parse(c)}catch{return null}}if(!d||"object"!=typeof d||!d.type)return null;c=d.model,b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.model=b.model||c||"commandcode",b.chunkIndex=0,b.toolIndex=0,b.openText=!1,b.finishReason=null,b.usage=null),b.toolIndexById instanceof Map||(b.toolIndexById=new Map),b.openTools instanceof Set||(b.openTools=new Set),"number"!=typeof b.toolIndex&&(b.toolIndex=0),"number"!=typeof b.chunkIndex&&(b.chunkIndex=0);let e=[];switch(d.type){case"text-delta":{let a=d.text||d.delta||"";if(!a)break;let c=0===b.chunkIndex?{role:f.z7.ASSISTANT,content:a}:{content:a};b.chunkIndex++,b.openText=!0,e.push(l(b,c));break}case"reasoning-delta":{let a=d.text||"";if(!a)break;let c=(0,i.B)(a,0===b.chunkIndex);b.chunkIndex++,e.push(l(b,c));break}case"tool-input-start":{let a=d.id||d.toolCallId||(0,j.eG)(b.toolIndex),c=b.toolIndexById.get(a);null==c&&(c=b.toolIndex++,b.toolIndexById.set(a,c)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:c,id:a,type:f.x4.FUNCTION,function:{name:d.toolName||"",arguments:""}}]};b.chunkIndex++,e.push(l(b,g));break}case"tool-input-delta":{let a=d.id||d.toolCallId,c=b.toolIndexById.get(a);if(null==c)break;let f={tool_calls:[{index:c,function:{arguments:d.delta||d.inputTextDelta||""}}]};e.push(l(b,f));break}case"tool-call":{let a=d.toolCallId;if(b.toolIndexById.has(a))break;let c=b.toolIndex++;b.toolIndexById.set(a,c);let g="string"==typeof d.input?d.input:JSON.stringify(d.input??{}),h={...0===b.chunkIndex?{role:f.z7.ASSISTANT}:{},tool_calls:[{index:c,id:a,type:f.x4.FUNCTION,function:{name:d.toolName||"",arguments:g}}]};b.chunkIndex++,e.push(l(b,h));break}case"finish-step":b.finishReason=m(d.finishReason),d.usage&&(b.usage=d.usage);break;case"finish":{let a=b.finishReason||m(d.finishReason||"stop"),c=l(b,{},a),f=d.totalUsage||b.usage,g=(0,h.B)(f,"commandcode");g&&(c.usage=g),e.push(c);break}case"error":{b.finishReason=f.bC.STOP;let a=d.error??d.message??"unknown",c="string"==typeof a?a:JSON.stringify(a);e.push(l(b,{content:`
|
|
372
|
+
|
|
373
|
+
[CommandCode error: ${c}]`})),e.push(l(b,{},f.bC.STOP))}}return e.length?e:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,n)},69641:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(22884),c(87350),c(39541);var d=c(68531);c(82812),c(18762),c(20830),c(96997),c(98976),c(6125),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(76441),c(55261),c(4879),c(34578),c(78116),c(31629),c(23493),c(33871),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),{Headers:g}=c(28665),h=f.brandCheckMultiple([g,globalThis.Headers].filter(Boolean));function i(a,b){f.argumentLengthCheck(arguments,2,"setCookie"),h(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"),h(a);let b=a.get("cookie"),c={};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){h(a);let d="deleteCookie";f.argumentLengthCheck(arguments,2,d),b=f.converters.DOMString(b,d,"name"),c=f.converters.DeleteCookieAttributes(c),i(a,{name:b,value:"",expires:new Date(0),...c})},getSetCookies:function(a){f.argumentLengthCheck(arguments,1,"getSetCookies"),h(a);let b=a.getSetCookie();return b?b.map(a=>d(a)):[]},setCookie:i,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()}}},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);function p(a,b){return"string"==typeof a?a===b:a instanceof RegExp?a.test(b):"function"==typeof a&&!0===a(b)}function q(a){return Object.fromEntries(Object.entries(a).map(([a,b])=>[a.toLocaleLowerCase(),b]))}function r(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):q(a)[b.toLocaleLowerCase()]}function s(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 t(a,b){if("function"==typeof a.headers)return Array.isArray(b)&&(b=s(b)),a.headers(b?q(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(!p(d,r(b,c)))return!1;return!0}function u(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 v(a){if(Buffer.isBuffer(a)||a instanceof Uint8Array)return a;if(a instanceof ArrayBuffer)return a;if("object"==typeof a)return JSON.stringify(a);if(a)return a.toString();else return""}function w(a,b){let c=b.query?k(b.path,b.query):b.path,e="string"==typeof c?u(c):c,f=y(e),g=a.filter(({consumed:a})=>!a).filter(({path:a,ignoreTrailingSlash:b})=>b?p(y(u(a)),f):p(u(a),e));if(0===g.length)throw new d(`Mock dispatch not matched for path '${e}'`);if(0===(g=g.filter(({method:a})=>p(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||p(a,b.body))).length)throw new d(`Mock dispatch not matched for body '${b.body}' on path '${e}'`);if(0===(g=g.filter(a=>t(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 x(a,b){let c=a.findIndex(a=>!!a.consumed&&function(a,{path:b,method:c,body:d,headers:e}){let f=p(a.path,b),g=p(a.method,c),h=void 0===a.body||p(a.body,d),i=t(a,e);return f&&g&&h&&i}(a,b));-1!==c&&a.splice(c,1)}function y(a){for(;a.endsWith("/");)a=a.slice(0,-1);return 0===a.length&&(a="/"),a}function z(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 A(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 B(a){return m[a]||"unknown"}function C(a,b){let c=z(a),d=w(this[e],c);d.timesInvoked++,d.data.callback&&(d.data={...d.data,...d.data.callback(a)});let{data:{statusCode:f,data:g,headers:h,trailers:i,error:j},delay:k,persist:m}=d,{timesInvoked:o,times:p}=d;if(d.consumed=!m&&o>=p,d.pending=o<p,null!==j)return x(this[e],c),b.onResponseError(null,j),!0;let q=!1,r=null,t={paused:!1,rawHeaders:null,rawTrailers:null,pause(){this.paused=!0},resume(){this.paused=!1},abort:a=>{q||(q=!0,null!==r&&(clearTimeout(r),r=null),b.onResponseError?.(t,a))}};function u(d,e=g){if(q)return;let j=Array.isArray(a.headers)?s(a.headers):a.headers,k="function"==typeof e?e({...a,headers:j}):e;if(n(k))return k.then(a=>u(d,a));if(q)return;let m=v(k),o=A(h),p=A(i);t.rawHeaders=o,t.rawTrailers=p,b.onResponseStart?.(t,f,l(o),B(f)),b.onResponseData?.(t,Buffer.from(m)),b.onResponseEnd?.(t,l(p)),x(d,c)}return b.onRequestStart?.(t,null),"number"==typeof k&&k>0?r=setTimeout(()=>{r=null,u(this[e])},k):u(this[e]),!0}function D(a,b){let c=new URL(b);return!0===a||!!(Array.isArray(a)&&a.some(a=>p(a,c.host)))}a.exports={getResponseData:v,getMockDispatch:w,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:x,buildKey:z,generateKeyValues:A,matchValue:p,getResponse:async function a(a){let b=[];for await(let c of a)b.push(c);return Buffer.concat(b).toString("utf8")},getStatusText:B,mockDispatch:C,buildMockDispatch:function(){let a=this[f],b=this[h],c=this[g];return function(f,g){if(a.isMockActive)try{C.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(D(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:D,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:r,buildHeadersFromArray:s,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]/;function i(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>0&&d(a.charCodeAt(f));)f--;return 0===e&&f===a.length-1?a:a.slice(e,f+1)}a.exports={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 i(a,b,c,g)},removeChars:i,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)
|
|
374
|
+
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
|
|
375
|
+
FROM ${e} JOIN vault_entries ON vault_entries.id = ${e}.entryId
|
|
376
|
+
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
|
|
377
|
+
FROM vault_chunks JOIN vault_entries ON vault_entries.id = vault_chunks.entryId
|
|
378
|
+
WHERE vault_chunks.conversationId = ? AND vault_entries.expiresAt > ?${c?" AND vault_chunks.entryId = ?":""} AND (${b}) LIMIT ?`,d),o=Array.isArray(h)&&Array.isArray(l)?h.map(a=>({...a,score:l.reduce((b,c)=>b+Number(String(a?.text||"").toLowerCase().includes(c)),0)})).sort((a,b)=>b.score-a.score).slice(0,i):[]}let p=function(a,b){if(!Array.isArray(b))return[];let c=new Map;for(let d of b.slice(0,20)){let b=d?.entryId;if(!(!b||c.has(b)))try{c.set(b,a.get("SELECT toolName FROM vault_entries WHERE id = ?",[b])?.toolName??null)}catch{c.set(b,null)}}return b.map(a=>({entryId:a.entryId,chunkIndex:a.chunkIndex,text:a.text,toolName:c.get(a.entryId)??null}))}(m,o.slice(0,i));var j=[...new Set(p.map(a=>a.entryId))],k=new Date().toISOString();if(Array.isArray(j)&&k)for(let a of j.slice(0,20))try{m.run("UPDATE vault_entries SET lastAccessedAt = ? WHERE id = ?",[k,a])}catch{}return p}catch{return[]}}async function j(a){try{if("string"!=typeof a||!a)return null;let b=await (0,d.c)(),c=b.get("SELECT id, conversationId, toolName, content, expiresAt FROM vault_entries WHERE id = ?",[a]);if(!c)return null;let f=new Date().toISOString();if(c.expiresAt<f){try{b.run("DELETE FROM vault_chunks WHERE entryId = ?",[a]),g(b)&&b.run(`DELETE FROM ${e} WHERE entryId = ?`,[a]),b.run("DELETE FROM vault_entries WHERE id = ?",[a])}catch{}return null}try{b.run("UPDATE vault_entries SET lastAccessedAt = ? WHERE id = ?",[f,a])}catch{}return{id:c.id,conversationId:c.conversationId,toolName:c.toolName,content:c.content}}catch{return null}}async function k(){try{var a=await (0,d.c)(),b=new Date().toISOString();if("string"!=typeof b||!b)return 0;let c="SELECT id FROM vault_entries WHERE expiresAt < ?";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{}return a.run("DELETE FROM vault_entries WHERE expiresAt < ?",[b])?.changes??0}catch{return 0}}},70906:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{q:()=>i});var e=c(77168),f=c(77326);c(40772);var g=c(95695);c(63995);var h=a([e,g]);async function i(a,b=!1,c=null){let d=(0,g.SB)(a.provider),e={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||d.needsRefresh(e)))return{connection:a,refreshed:!1};let h=await d.refreshCredentials(e,console,c);if(!h){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let j={updatedAt:new Date().toISOString()};h.accessToken&&(j.accessToken=h.accessToken),h.refreshToken&&(j.refreshToken=h.refreshToken),h.idToken&&(j.idToken=h.idToken),h.lastRefreshAt&&(j.lastRefreshAt=h.lastRefreshAt),h.expiresIn?(j.expiresAt=new Date(Date.now()+1e3*h.expiresIn).toISOString(),j.expiresIn=h.expiresIn):h.expiresAt&&(j.expiresAt=h.expiresAt);let k={...h.providerSpecificData||{},...h.copilotToken?{copilotToken:h.copilotToken}:{},...h.copilotTokenExpiresAt?{copilotTokenExpiresAt:h.copilotTokenExpiresAt}:{}};return Object.keys(k).length>0&&(j.providerSpecificData={...a.providerSpecificData||{},...k}),await (0,f.updateProviderConnection)(a.id,j),{connection:{...a,...j,providerSpecificData:j.providerSpecificData||a.providerSpecificData},refreshed:!0}}[e,g]=h.then?(await h)():h,d()}catch(a){d(a)}})},71137:(a,b,c)=>{"use strict";c.d(b,{CP:()=>p,yI:()=>m});var d=c(27137),e=c(74075);let f="1"===process.env.CURSOR_PROTOBUF_DEBUG,g=(a,...b)=>f&&console.log(`[PROTOBUF:${a}]`,...b);new TextDecoder;let h="1.1.3",i=new Set([1,2,3,9,10,11,27,1,25]);function j(a){let b=[];for(;a>=128;)b.push(127&a|128),a>>>=7;return b.push(127&a),new Uint8Array(b)}function k(a,b,c){let d=j(a<<3|b);if(0===b)return l(d,j(c));if(2===b){let a="string"==typeof c?new TextEncoder().encode(c):c instanceof Uint8Array?c:Buffer.isBuffer(c)?new Uint8Array(c):new Uint8Array(0);return l(d,j(a.length),a)}return new Uint8Array(0)}function l(...a){let b=new Uint8Array(a.reduce((a,b)=>a+b.length,0)),c=0;for(let d of a)b.set(d,c),c+=d.length;return b}function m(a,b,c=[],f=null,h=!1){g("BODY",`Generating: ${a.length} msgs, model=${b}, tools=${c.length}, reasoning=${f||"none"}, forceAgentMode=${h}`);let i=function(a,b,c=[],e=null,f=!1){return k(1,2,function(a,b,c=[],e=null,f=!1){let h,i=c?.length>0,m=i||f,n=[],o=[],p=[];for(let b=0;b<a.length;b++){let c=a[b],d=Array.isArray(c?.tool_calls)&&c.tool_calls.length>0,e=Array.isArray(c?.tool_results)&&c.tool_results.length>0;if(c?.role==="assistant"&&d&&e){g("ENCODE",`normalizing mixed assistant tool payload at msg[${b}] (calls=${c.tool_calls.length}, results=${c.tool_results.length})`),p.push({...c,tool_results:[]});let d=a[b+1],e=d?.role==="assistant"&&Array.isArray(d?.tool_results)&&d.tool_results.length>0,f=new Set(c.tool_results.map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),h=new Set((d?.tool_results||[]).map(a=>a?.tool_call_id).filter(a=>"string"==typeof a)),i=f.size>0&&f.size===h.size;if(i){for(let a of f)if(!h.has(a)){i=!1;break}}e&&i||p.push({role:"assistant",content:"",tool_results:c.tool_results});continue}p.push(c)}for(let a=0;a<p.length;a++){let b=p[a],c="user"===b.role?1:2,e=(0,d.A)(),f=a===p.length-1;n.push({content:b.content,role:c,messageId:e,isLast:f,hasTools:i,toolResults:b.tool_results||[]}),o.push({messageId:e,role:c})}let q=0;return"medium"===e?q=1:"high"===e&&(q=2),l(...n.map(a=>k(1,2,function(a,b,c,d=null,e=!1,f=!1,g=[],h=null){let i=g.length>0;return l(k(1,2,a),k(2,0,b),k(13,2,c),...h?[k(32,2,h)]:[],...i?g.map(a=>k(18,2,function(a){var b;let c,d,e=function(a){let b="string"==typeof a&&a.length>0?a:"tool";if(b.startsWith("mcp__")){let a=b.slice(5),c=a.indexOf("__");if(c>=0){let b=a.slice(0,c)||"custom",d=a.slice(c+2)||"tool";return`mcp_${b}_${d}`}return`mcp_custom_${a||"tool"}`}return b.startsWith("mcp_")?b:`mcp_custom_${b}`}(a.tool_name||a.name||""),f=a.raw_args||"{}",g=a.result_content||a.result||"",{toolCallId:h,modelCallId:i}=(b=a.tool_call_id||"",c="\nmc_",(d=b.indexOf(c))>=0?{toolCallId:b.slice(0,d),modelCallId:b.slice(d+c.length)}:{toolCallId:b,modelCallId:null}),j=a.tool_index||a.index||1,{serverName:m,selectedTool:n}=function(a){if("string"!=typeof a||!a.startsWith("mcp_"))return{serverName:"custom",selectedTool:a||"tool"};let b=a.slice(4),c=b.indexOf("_");return c<0?{serverName:"custom",selectedTool:b||"tool"}:{serverName:b.slice(0,c)||"custom",selectedTool:b.slice(c+1)||"tool"}}(e);return l(k(1,2,h),k(2,2,e),k(3,0,j>0?j:1),...i?[k(12,2,i)]:[],k(5,2,f),k(8,2,function(a,b,c,d,e=1){return l(k(1,0,19),k(28,2,l(k(1,2,c),k(2,2,d))),k(35,2,a),...b?[k(48,2,b)]:[],k(49,0,e>0?e:1))}(h,i,n,g,j)),k(11,2,function(a,b,c,d,e,f,g=1){let h;return l(k(1,0,19),k(27,2,(h=l(k(1,2,c),k(3,2,e),k(4,2,d)),k(1,2,h))),k(3,2,a),k(9,2,b),k(10,2,e),k(48,0,g>0?g:1),...f?[k(49,2,f)]:[])}(h,e,n,m,f,i,j)))}(a))):[],k(29,0,+!!f),k(47,0,f?2:1),...e&&f?[k(51,2,j(1))]:[])}(a.content,a.role,a.messageId,null,a.isLast,a.hasTools,a.toolResults))),k(2,0,1),k(3,2,new Uint8Array(0)),k(4,0,1),k(5,2,l(k(1,2,b),k(4,2,new Uint8Array(0)))),k(8,2,""),k(13,0,1),k(15,2,(h=l(k(1,2,new Uint8Array(0)),k(2,2,new Uint8Array(0))),l(k(1,2,"cursor\\aisettings"),k(3,2,new Uint8Array(0)),k(6,2,h),k(8,0,1),k(9,0,1)))),k(19,0,1),k(23,2,(0,d.A)()),k(26,2,l(k(1,2,process.platform||"linux"),k(2,2,process.arch||"x64"),k(3,2,process.version||"v20.0.0"),k(4,2,process.cwd?.()||"/"),k(5,2,new Date().toISOString()))),k(27,0,+!!m),...m?[k(29,2,j(1))]:[],...o.map(a=>k(30,2,function(a,b,c=null){return l(k(1,2,a),...c?[k(2,2,c)]:[],k(3,0,b))}(a.messageId,a.role))),...c?.length>0?c.map(a=>{let b,c,d;return k(34,2,(b=a.function?.name||a.name||"",c=a.function?.description||a.description||"",d=a.function?.parameters||a.input_schema||{},l(...b?[k(1,2,b)]:[],...c?[k(2,2,c)]:[],...Object.keys(d).length>0?[k(3,2,JSON.stringify(d))]:[],k(4,2,"custom"))))}):[],k(35,0,0),k(38,0,0),k(46,0,m?2:1),k(47,2,""),k(48,0,+!m),k(49,0,q),k(51,0,0),k(53,0,1),k(54,2,m?"Agent":"Ask"))}(a,b,c,e,f))}(a,b,c,f,h),n=function(a,b=!1){let c=a,d=0;b&&(c=new Uint8Array(e.gzipSync(Buffer.from(a))),d=1);let f=new Uint8Array(5+c.length);return f[0]=d,f[1]=c.length>>24&255,f[2]=c.length>>16&255,f[3]=c.length>>8&255,f[4]=255&c.length,f.set(c,5),f}(i,!1);return g("BODY",`Protobuf=${i.length}B, Framed=${n.length}B`),n}function n(a,b){let c=0,d=0,e=b;for(;e<a.length;){let b=a[e];if(c|=(127&b)<<d,e++,!(128&b))break;d+=7}return[c,e]}function o(a){let b=new Map,c=0;for(;c<a.length;){let[d,e,f,g]=function(a,b){let c;if(b>=a.length)return[null,null,null,b];let[d,e]=n(a,b),f=7&d,g=e;if(0===f)[c,g]=n(a,g);else if(2===f){let[b,d]=n(a,g);c=a.slice(d,d+b),g=d+b}else 1===f?(c=a.slice(g,g+8),g+=8):5===f?(c=a.slice(g,g+4),g+=4):c=null;return[d>>3,f,c,g]}(a,c);if(null===d)break;b.has(d)||b.set(d,[]),b.get(d).push({wireType:e,value:f}),c=g}return b}function p(a){try{let b=o(a);for(let a of b.keys())i.has(a)||g("SCHEMA",`Unknown response field #${a} detected. Schema v${h} may be outdated.`);if(b.has(1)){let a=function(a){let b=o(a),c="",d="",e="",f=!1;if(b.has(3)&&(c=new TextDecoder().decode(b.get(3)[0].value).split("\n")[0]),b.has(9)&&(d=new TextDecoder().decode(b.get(9)[0].value)),b.has(11)&&(f=0!==b.get(11)[0].value),b.has(27))try{let a=o(b.get(27)[0].value);if(a.has(1)){let b=o(a.get(1)[0].value);b.has(1)&&(d=new TextDecoder().decode(b.get(1)[0].value)),b.has(3)&&(e=new TextDecoder().decode(b.get(3)[0].value))}}catch(a){g("EXTRACT",`MCP parse error: ${a.message}`)}return(!e&&b.has(10)&&(e=new TextDecoder().decode(b.get(10)[0].value)),c&&d)?{id:c,type:"function",function:{name:d,arguments:e||"{}"},isLast:f}:null}(b.get(1)[0].value);if(a)return g("EXTRACT",`Tool call: ${a.function.name}`),{text:null,error:null,toolCall:a,thinking:null}}if(b.has(2)){let{text:a,thinking:c}=function(a){let b=o(a),c=null,d=null;if(b.has(1)&&(c=new TextDecoder().decode(b.get(1)[0].value)),b.has(25))try{let a=o(b.get(25)[0].value);a.has(1)&&(d=new TextDecoder().decode(a.get(1)[0].value))}catch(a){g("EXTRACT",`Thinking parse error: ${a.message}`)}return{text:c,thinking:d}}(b.get(2)[0].value);if(a||c)return{text:a,error:null,toolCall:null,thinking:c}}return{text:null,error:null,toolCall:null,thinking:null}}catch(b){return g("EXTRACT",`Decode failed (schema v${h}): ${b.message}`),{text:null,error:null,toolCall:null,thinking:null,raw:Buffer.from(a).toString("base64"),decodeError:b.message}}}},71253:(a,b,c)=>{"use strict";c.d(b,{PROVIDER_PRICING:()=>f,calculateCostFromTokens:()=>j,gH:()=>h,getPricingForModel:()=>i});var d=c(57690);let e={"claude-opus-4-6":{input:5,output:25,cached:.5,reasoning:25,cache_creation:6.25},"claude-opus-4-5-20251101":{input:5,output:25,cached:.5,reasoning:25,cache_creation:6.25},"claude-sonnet-4-6":{input:3,output:15,cached:.3,reasoning:15,cache_creation:3.75},"claude-sonnet-4-5-20250929":{input:3,output:15,cached:.3,reasoning:15,cache_creation:3.75},"claude-haiku-4-5-20251001":{input:1,output:5,cached:.1,reasoning:5,cache_creation:1.25},"claude-sonnet-4-20250514":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3},"claude-opus-4-20250514":{input:15,output:25,cached:7.5,reasoning:112.5,cache_creation:15},"claude-3-5-sonnet-20241022":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3},"claude-haiku-4.5":{input:.5,output:2.5,cached:.05,reasoning:3.75,cache_creation:.5},"claude-opus-4.1":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-opus-4.5":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-opus-4.6":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-sonnet-4":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-sonnet-4.5":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-sonnet-4.6":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-opus-4-5-thinking":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-opus-4-6-thinking":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"gpt-3.5-turbo":{input:.5,output:1.5,cached:.25,reasoning:2.25,cache_creation:.5},"gpt-4":{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5},"gpt-4-turbo":{input:10,output:30,cached:5,reasoning:45,cache_creation:10},"gpt-4o":{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5},"gpt-4o-mini":{input:.15,output:.6,cached:.075,reasoning:.9,cache_creation:.15},"gpt-4.1":{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5},"gpt-5":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3},"gpt-5-mini":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"gpt-5-codex":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3},"gpt-5.1":{input:4,output:16,cached:2,reasoning:24,cache_creation:4},"gpt-5.1-codex":{input:4,output:16,cached:2,reasoning:24,cache_creation:4},"gpt-5.1-codex-mini":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5},"gpt-5.1-codex-mini-high":{input:2,output:8,cached:1,reasoning:12,cache_creation:2},"gpt-5.1-codex-max":{input:8,output:32,cached:4,reasoning:48,cache_creation:8},"gpt-5.2":{input:5,output:20,cached:2.5,reasoning:30,cache_creation:5},"gpt-5.2-codex":{input:5,output:20,cached:2.5,reasoning:30,cache_creation:5},"gpt-5.3-codex":{input:6,output:24,cached:3,reasoning:36,cache_creation:6},"gpt-5.3-codex-spark":{input:3,output:12,cached:.3,reasoning:12,cache_creation:3},o1:{input:15,output:60,cached:7.5,reasoning:90,cache_creation:15},"o1-mini":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3},"gemini-3-flash-preview":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-3-pro-preview":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-3.1-pro-low":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-3.1-pro-high":{input:4,output:18,cached:.5,reasoning:27,cache_creation:4},"gemini-pro-agent":{input:4,output:18,cached:.5,reasoning:27,cache_creation:4},"gemini-3-flash-agent":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-3.5-flash-low":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-3.5-flash-extra-low":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-3-flash":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-2.5-pro":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-2.5-flash":{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3},"gemini-2.5-flash-lite":{input:.15,output:1.25,cached:.015,reasoning:1.875,cache_creation:.15},"qwen3-coder-plus":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"qwen3-coder-flash":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"kimi-k2":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"kimi-k2-thinking":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5},"kimi-k2.5":{input:1.2,output:4.8,cached:.6,reasoning:7.2,cache_creation:1.2},"kimi-k2.5-thinking":{input:1.8,output:7.2,cached:.9,reasoning:10.8,cache_creation:1.8},"kimi-latest":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"deepseek-chat":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-reasoner":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-r1":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-v3.2-chat":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-v3.2-reasoner":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-v4-flash":{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14},"deepseek-v4-pro":{input:.435,output:.87,cached:.003625,reasoning:.87,cache_creation:.435},"glm-4.6":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"glm-4.6v":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"glm-4.7":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"glm-5":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"MiniMax-M3":{input:.3,output:1.2,cached:.06,reasoning:1.8,cache_creation:.3},"MiniMax-M2.1":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"MiniMax-M2.5":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"MiniMax-M2.7":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"minimax-m2.1":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"minimax-m2.5":{input:.6,output:2.4,cached:.3,reasoning:3.6,cache_creation:.6},"grok-code-fast-1":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},auto:{input:2,output:8,cached:1,reasoning:12,cache_creation:2},"oswe-vscode-prime":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"gpt-oss-120b-medium":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"vision-model":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5},"coder-model":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5}},f={gh:{"gpt-5.3-codex":{input:1.75,output:14,cached:.175,reasoning:14,cache_creation:1.75}}},g=[{pattern:"*-codex-xhigh",pricing:{input:10,output:40,cached:5,reasoning:60,cache_creation:10}},{pattern:"*-codex-high",pricing:{input:8,output:32,cached:4,reasoning:48,cache_creation:8}},{pattern:"*-codex-max",pricing:{input:8,output:32,cached:4,reasoning:48,cache_creation:8}},{pattern:"*-codex-mini-*",pricing:{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5}},{pattern:"*-codex-mini",pricing:{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5}},{pattern:"*-codex-low",pricing:{input:4,output:16,cached:2,reasoning:24,cache_creation:4}},{pattern:"*-codex-none",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"*-codex-spark",pricing:{input:3,output:12,cached:.3,reasoning:12,cache_creation:3}},{pattern:"codex-*",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"*-codex",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"claude-opus-*",pricing:{input:5,output:25,cached:.5,reasoning:25,cache_creation:6.25}},{pattern:"claude-sonnet-*",pricing:{input:3,output:15,cached:.3,reasoning:15,cache_creation:3.75}},{pattern:"claude-haiku-*",pricing:{input:1,output:5,cached:.1,reasoning:5,cache_creation:1.25}},{pattern:"claude-*",pricing:{input:3,output:15,cached:.3,reasoning:15,cache_creation:3.75}},{pattern:"gemini-*-flash-lite",pricing:{input:.15,output:1.25,cached:.015,reasoning:1.875,cache_creation:.15}},{pattern:"gemini-*-flash",pricing:{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3}},{pattern:"gemini-*-pro",pricing:{input:2,output:12,cached:.25,reasoning:18,cache_creation:2}},{pattern:"gemini-3-*",pricing:{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5}},{pattern:"gemini-2.5-*",pricing:{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3}},{pattern:"gemini-*",pricing:{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5}},{pattern:"gpt-5.3-*",pricing:{input:6,output:24,cached:3,reasoning:36,cache_creation:6}},{pattern:"gpt-5.2-*",pricing:{input:5,output:20,cached:2.5,reasoning:30,cache_creation:5}},{pattern:"gpt-5.1-*",pricing:{input:4,output:16,cached:2,reasoning:24,cache_creation:4}},{pattern:"gpt-5-*",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"gpt-5*",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"gpt-4o-*",pricing:{input:.15,output:.6,cached:.075,reasoning:.9,cache_creation:.15}},{pattern:"gpt-4o",pricing:{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5}},{pattern:"gpt-4*",pricing:{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5}},{pattern:"o1-*",pricing:{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},{pattern:"o1",pricing:{input:15,output:60,cached:7.5,reasoning:90,cache_creation:15}},{pattern:"o3-*",pricing:{input:10,output:40,cached:5,reasoning:60,cache_creation:10}},{pattern:"o4-*",pricing:{input:2,output:8,cached:1,reasoning:12,cache_creation:2}},{pattern:"qwen3-coder-*",pricing:{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},{pattern:"qwen*-coder-*",pricing:{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},{pattern:"qwen*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},{pattern:"kimi-*-thinking",pricing:{input:1.8,output:7.2,cached:.9,reasoning:10.8,cache_creation:1.8}},{pattern:"kimi-k2*",pricing:{input:1.2,output:4.8,cached:.6,reasoning:7.2,cache_creation:1.2}},{pattern:"kimi-*",pricing:{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},{pattern:"deepseek-*reasoner*",pricing:{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14}},{pattern:"deepseek-r*",pricing:{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14}},{pattern:"deepseek-v*",pricing:{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14}},{pattern:"deepseek-*",pricing:{input:.14,output:.28,cached:.0028,reasoning:.28,cache_creation:.14}},{pattern:"glm-5*",pricing:{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},{pattern:"glm-4*",pricing:{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75}},{pattern:"glm-*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},{pattern:"MiniMax-*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},{pattern:"minimax-*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},{pattern:"grok-code-*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},{pattern:"grok-*",pricing:{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}}];function h(a,b){return RegExp("^"+a.split("*").map(a=>a.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")).join(".*")+"$","i").test(b)}function i(a,b){if(!b)return null;if(a&&f[a]?.[b])return f[a][b];let c=(0,d.KN)(b),i=function(a){let b=a.includes("/")?a.split("/").pop():a;if(e[b]||e[a])return e[b]||e[a];for(let{pattern:c,pricing:d}of g)if(h(c,b||a))return d;return null}(b);return c&&i?{...i,...c}:c||i}function j(a,b){if(!a||!b)return 0;let c=0,d=a.prompt_tokens||a.input_tokens||0,e=a.cached_tokens||a.cache_read_input_tokens||0,f=a.cache_creation_input_tokens||0;c+=Math.max(0,d-e-f)*(b.input/1e6),e>0&&(c+=e*((b.cached||b.input)/1e6)),c+=(a.completion_tokens||a.output_tokens||0)*(b.output/1e6);let g=a.reasoning_tokens||0;return g>0&&(c+=g*((b.reasoning||b.output)/1e6)),f>0&&(c+=f*((b.cache_creation||b.input)/1e6)),c}},72345:(a,b,c)=>{"use strict";c.d(b,{H:()=>j});var d=c(93048),e=c(38421),f=c(77321),g=c(74570);let h=new Set(["minimax-m3","minimax-m2.7","minimax-m2.5","qwen3.7-max","qwen3.7-plus","qwen3.6-plus"]),i="https://opencode.ai/zen/go/v1";class j extends d.Hv{constructor(){super("opencode-go",e.xq["opencode-go"])}buildUrl(a){return this._lastModel=a,h.has(a)?`${i}/messages`:`${i}/chat/completions`}buildHeaders(a,b=!0){let c=a?.apiKey||a?.accessToken,d={"Content-Type":"application/json"};return h.has(this._lastModel)?(d["x-api-key"]=c,d["anthropic-version"]=g.b8):d.Authorization=`Bearer ${c}`,b&&(d.Accept="text/event-stream"),d}transformRequest(a,b,c,d){return super.transformRequest(a,b,c,d),(0,f.Z)({provider:this.provider,model:a,body:b})}}},73081:(a,b,c)=>{"use strict";c(68531),c(18101),new TextEncoder},73135:(a,b,c)=>{"use strict";let{addAbortListener:d}=c(84285),{RequestAbortedError:e}=c(61448),f=Symbol("kListener"),g=Symbol("kSignal");function h(a){a.abort?a.abort(a[g]?.reason):a.reason=a[g]?.reason??new e,i(a)}function i(a){a[g]&&("removeEventListener"in a[g]?a[g].removeEventListener("abort",a[f]):a[g].removeListener("abort",a[f]),a[g]=null,a[f]=null)}a.exports={addSignal:function(a,b){if(a.reason=null,a[g]=null,a[f]=null,b){if(b.aborted)return void h(a);a[g]=b,a[f]=()=>{h(a)},d(a[g],a[f])}},removeSignal:i}},73792:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{OJ:()=>x});var e=c(77168),f=c(77326),g=c(82961),h=c(20012),i=c(95695),j=c(74570),k=c(26762),l=c(63993),m=c(70906),n=c(48595),o=a([e,i,m]);[e,i,m]=o.then?(await o)():o;let y=n.oc;y.tickIntervalMs;let z={claude:{getUsage:g.g,sendPing:s},codex:{getUsage:h.Tl,sendPing:u}},A=global.__quotaAutoPing??={interval:null,running:!1,resetCache:{},failureCache:{}};function p(a){let b=new Date(a).getTime();return Number.isFinite(b)?new Date(6e4*Math.floor(b/6e4)).toISOString():a}function q(a,b=null){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}function r(a){if(!a||!0===a.unlimited)return!1;let b=q(a.remaining);if(null!==b)return b<=0;let c=q(a.used),d=q(a.total);return null!==d&&d>0&&null!==c&&c>=d}async function s(a,b,c,d){return(await d.proxyAwareFetch("https://api.anthropic.com/v1/messages?beta=true",{method:"POST",headers:{...j.$B,Authorization:`Bearer ${a.accessToken}`,"content-type":"application/json"},body:JSON.stringify({model:b.pingModel,max_tokens:b.pingMaxTokens,messages:[{role:"user",content:b.pingText}]})},c)).ok}async function t(a){if("function"==typeof a?.text)return void await a.text();let b=a?.body?.getReader?.();if(b)try{for(;;){let{done:a}=await b.read();if(a)return}}finally{b.releaseLock?.()}}async function u(a,b,c,d){var e;let f=d.getExecutor("codex"),{response:g}=await f.execute({model:b.pingModel,stream:!0,credentials:{accessToken:a.accessToken,connectionId:a.id,providerSpecificData:a.providerSpecificData},proxyOptions:c,log:console,body:{model:b.pingModel,input:(e=b.pingText,[{type:"message",role:"user",content:[{type:"input_text",text:e}]}]),instructions:b.pingInstructions,reasoning:b.pingReasoningEffort?{effort:b.pingReasoningEffort,summary:"auto"}:void 0,store:!1,stream:!0}});if(!g.ok){try{await g.body?.cancel?.()}catch{}return!1}return await t(g),!0}async function v(a,b,c,d,e,f=A){var g,h,i;let j=(g=a.id,`${b}:${g}`),k=f.resetCache[j];if(!c.pingWhenResetAtSlides&&k&&Date.now()<new Date(k).getTime()-y.refreshAheadMs||function(a,b,c=Date.now()){let d=a.failureCache[b];return d&&c-d<y.failureCooldownMs}(f,j))return;let l=(h=await e.resolveConnectionProxyConfig(a.providerSpecificData),{connectionProxyEnabled:!0===h.connectionProxyEnabled,connectionProxyUrl:h.connectionProxyUrl||"",connectionNoProxy:h.connectionNoProxy||"",vercelRelayUrl:h.vercelRelayUrl||"",strictProxy:!1}),m=a;try{m=(await e.refreshAndUpdateCredentials(m,!1,l)).connection}catch(c){f.failureCache[j]=Date.now(),console.warn(`[AutoPing] ${b}:${a.id}: refresh failed: ${c.message}`);return}let n=await d.getUsage(m.accessToken,l),o=n?.quotas||{},q=o?.[c.quotaKey],s=function(a){if(!a||"object"!=typeof a)return null;if(!0===a.unlimited)return 100;let b=Number(a.remainingPercentage);if(Number.isFinite(b))return Math.max(0,Math.min(100,b));let c=Number(a.remaining),d=Number(a.total);return Number.isFinite(c)&&Number.isFinite(d)&&d>0?Math.max(0,Math.min(100,c/d*100)):Number.isFinite(c)?Math.max(0,c):null}(q);if(null!=s)try{await e.updateProviderConnection(m.id,{lastQuota:{remainingPercentage:s,resetAt:q.resetAt??null,at:Date.now()}})}catch{}let t=q?.resetAt;if(!t||(f.resetCache[j]=t,c.skipWhenBlockingQuotaExhausted&&(i=c.quotaKey,Object.entries(o||{}).some(([a,b])=>a!==i&&!String(a).toLowerCase().includes("session")&&r(b)))||r(q)))return;let u=Date.now(),w=p(t),x=m.lastPingedResetKey||p(m.lastPingedResetAt);if(!(!function(a,b,c,d){if(a.pingWhenResetAtSlides){let d,e;return!!b&&(d=new Date(b).getTime(),e=new Date(c).getTime(),(Number.isFinite(d)&&Number.isFinite(e)?e-d:0)>=(a.resetAtDriftMs||0))}let e=new Date(c).getTime();return Number.isFinite(e)&&d>=e-y.pingLeadMs}(c,k,t,u)||function(a,b,c=Date.now()){if(!b)return!1;let d=new Date(a.lastPingAt).getTime();return Number.isFinite(d)&&c-d<b}(m,c.minPingIntervalMs,u))&&x!==w){if(!await d.sendPing(m,c,l,e)){f.failureCache[j]=Date.now(),console.warn(`[AutoPing] ${b}:${m.id}: ping failed (reset ${t})`);return}delete f.failureCache[j],await e.updateProviderConnection(m.id,{lastPingedResetAt:t,lastPingedResetKey:w,lastPingAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),console.log(`[AutoPing] ${b}:${m.id}: ping sent (reset ${t})`)}}async function w(a={getSettings:f.mt,getProviderConnections:f.getProviderConnections,updateProviderConnection:f.updateProviderConnection,resolveConnectionProxyConfig:l.B,refreshAndUpdateCredentials:m.q,proxyAwareFetch:k.Fm,getExecutor:i.SB},b=A){if(!b.running){b.running=!0;try{let d=await a.getSettings();for(let[e,f]of Object.entries(y.providers)){let g=z[e];if(!g)continue;let h=d?.[f.settingsKey]?.connections||{};if(0!==Object.keys(h).length)for(let d of(await a.getProviderConnections({provider:e,isActive:!0})).filter(a=>"oauth"===a.authType&&!0===h[a.id]))try{await v(d,e,f,g,a,b)}catch(a){var c;b.failureCache[c=d.id,`${e}:${c}`]=Date.now(),console.warn(`[AutoPing] ${e}:${d.id}: ${a.message}`)}}}catch(a){console.warn("[AutoPing] tick error:",a.message)}finally{b.running=!1}}}function x(){!A.interval&&(console.log("[AutoPing] scheduler started"),w().catch(()=>{}),A.interval=setInterval(()=>{w().catch(()=>{})},y.tickIntervalMs),A.interval.unref&&A.interval.unref())}d()}catch(a){d(a)}})},74399:(a,b,c)=>{"use strict";let d=c(7344),{InvalidArgumentError:e}=c(61448),{toRawHeaders:f}=c(84285);class g{#as;constructor(a){this.#as=a}onRequestStart(a,b){this.#as.onConnect?.(b=>a.abort(b),b)}onRequestUpgrade(a,b,c,d){let e=a?.rawHeaders??f(c??{});this.#as.onUpgrade?.(b,e,d)}onResponseStart(a,b,c,d){let e=a?.rawHeaders??f(c??{});this.#as.onHeaders?.(b,e,()=>a.resume(),d)===!1&&a.pause()}onResponseData(a,b){this.#as.onData?.(b)===!1&&a.pause()}onResponseEnd(a,b){let c=a?.rawTrailers??f(b??{});this.#as.onComplete?.(c)}onResponseError(a,b){if(!this.#as.onError)throw b;this.#as.onError(b)}onBodySent(a){this.#as.onBodySent?.(a)}onRequestSent(){this.#as.onRequestSent?.()}onResponseStarted(){this.#as.onResponseStarted?.()}}class h extends d{#d;constructor(a){if(super(),!a||"function"!=typeof a.dispatch)throw new e("Argument dispatcher must implement dispatch");this.#d=a}static wrapHandler(a){if(!a||"object"!=typeof a)throw new e("handler must be an object");return"function"==typeof a.onRequestStart?a:new g(a)}dispatch(a,b){return!1!==a.allowH2&&(a={...a,allowH2:!1}),this.#d.dispatch(a,h.wrapHandler(b))}close(...a){return this.#d.close(...a)}destroy(...a){return this.#d.destroy(...a)}}a.exports=h},74570:(a,b,c)=>{"use strict";c.d(b,{$B:()=>g,Bi:()=>f,Es:()=>h,XP:()=>j,b8:()=>e,ky:()=>i,w3:()=>k});var d=c(21820);let e="2023-06-01",f={"Anthropic-Version":e,"Anthropic-Beta":"claude-code-20250219,interleaved-thinking-2025-05-14"},g={"Anthropic-Version":e,"Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":function(){switch((0,d.arch)()){case"x64":return"x64";case"arm64":return"arm64";case"ia32":return"x86";default:return`other::${(0,d.arch)()}`}}(),"X-Stainless-Os":function(){switch((0,d.platform)()){case"darwin":return"MacOS";case"win32":return"Windows";case"linux":return"Linux";case"freebsd":return"FreeBSD";default:return`Other::${(0,d.platform)()}`}}(),"X-Stainless-Timeout":"600"},h="https://api.openai.com/v1",i="https://api.anthropic.com/v1",j={clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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"},k={clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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"}},75371:(a,b,c)=>{"use strict";c(68531),c(96684),c(62457)},76103:(a,b,c)=>{var d=c(45654);c(45518),c(63070),c(88819),c(36105),c(49345),c(56416),c(29984),c(33889),c(65737);var e=d.asn1,f=a.exports=d.pkcs7=d.pkcs7||{};function g(a){var b;if(a.type===d.pki.oids.contentType)b=e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.value).getBytes());else if(a.type===d.pki.oids.messageDigest)b=e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,a.value.bytes());else if(a.type===d.pki.oids.signingTime){var c=new Date("1950-01-01T00:00:00Z"),f=new Date("2050-01-01T00:00:00Z"),g=a.value;if("string"==typeof g){var h=Date.parse(g);g=isNaN(h)?13===g.length?e.utcTimeToDate(g):e.generalizedTimeToDate(g):new Date(h)}b=g>=c&&g<f?e.create(e.Class.UNIVERSAL,e.Type.UTCTIME,!1,e.dateToUtcTime(g)):e.create(e.Class.UNIVERSAL,e.Type.GENERALIZEDTIME,!1,e.dateToGeneralizedTime(g))}return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.type).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[b])])}function h(a,b,c){var f={};if(!e.validate(b,c,f,[])){var g=Error("Cannot read PKCS#7 message. ASN.1 object is not a supported PKCS#7 message.");throw g.errors=g,g}if(e.derToOid(f.contentType)!==d.pki.oids.data)throw Error("Unsupported PKCS#7 message. Only wrapped ContentType Data supported.");if(f.encryptedContent){var h="";if(d.util.isArray(f.encryptedContent))for(var i=0;i<f.encryptedContent.length;++i){if(f.encryptedContent[i].type!==e.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting encrypted content constructed of only OCTET STRING objects.");h+=f.encryptedContent[i].value}else h=f.encryptedContent;a.encryptedContent={algorithm:e.derToOid(f.encAlgorithm),parameter:d.util.createBuffer(f.encParameter.value),content:d.util.createBuffer(h)}}if(f.content){var h="";if(d.util.isArray(f.content))for(var i=0;i<f.content.length;++i){if(f.content[i].type!==e.Type.OCTETSTRING)throw Error("Malformed PKCS#7 message, expecting content constructed of only OCTET STRING objects.");h+=f.content[i].value}else h=f.content;a.content=d.util.createBuffer(h)}return a.version=f.version.charCodeAt(0),a.rawCapture=f,f}function i(a){if(void 0===a.encryptedContent.key)throw Error("Symmetric key not available.");if(void 0===a.content){var b;switch(a.encryptedContent.algorithm){case d.pki.oids["aes128-CBC"]:case d.pki.oids["aes192-CBC"]:case d.pki.oids["aes256-CBC"]:b=d.aes.createDecryptionCipher(a.encryptedContent.key);break;case d.pki.oids.desCBC:case d.pki.oids["des-EDE3-CBC"]:b=d.des.createDecryptionCipher(a.encryptedContent.key);break;default:throw Error("Unsupported symmetric cipher, OID "+a.encryptedContent.algorithm)}if(b.start(a.encryptedContent.parameter),b.update(a.encryptedContent.content),!b.finish())throw Error("Symmetric decryption failed.");a.content=b.output}}f.messageFromPem=function(a){var b=d.pem.decode(a)[0];if("PKCS7"!==b.type){var c=Error('Could not convert PKCS#7 message from PEM; PEM header type is not "PKCS#7".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PKCS#7 message from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.messageFromAsn1(g)},f.messageToPem=function(a,b){var c={type:"PKCS7",body:e.toDer(a.toAsn1()).getBytes()};return d.pem.encode(c,{maxline:b})},f.messageFromAsn1=function(a){var b,c={},g=[];if(!e.validate(a,f.asn1.contentInfoValidator,c,g)){var h=Error("Cannot read PKCS#7 message. ASN.1 object is not an PKCS#7 ContentInfo.");throw h.errors=g,h}var i=e.derToOid(c.contentType);switch(i){case d.pki.oids.envelopedData:b=f.createEnvelopedData();break;case d.pki.oids.encryptedData:b=f.createEncryptedData();break;case d.pki.oids.signedData:b=f.createSignedData();break;default:throw Error("Cannot read PKCS#7 message. ContentType with OID "+i+" is not (yet) supported.")}return b.fromAsn1(c.content.value[0]),b},f.createSignedData=function(){var a=null;return a={type:d.pki.oids.signedData,version:1,certificates:[],crls:[],signers:[],digestAlgorithmIdentifiers:[],contentInfo:null,signerInfos:[],fromAsn1:function(b){if(h(a,b,f.asn1.signedDataValidator),a.certificates=[],a.crls=[],a.digestAlgorithmIdentifiers=[],a.contentInfo=null,a.signerInfos=[],a.rawCapture.certificates)for(var c=a.rawCapture.certificates.value,e=0;e<c.length;++e)a.certificates.push(d.pki.certificateFromAsn1(c[e]))},toAsn1:function(){a.contentInfo||a.sign();for(var b=[],c=0;c<a.certificates.length;++c)b.push(d.pki.certificateToAsn1(a.certificates[c]));var f=[],g=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,a.digestAlgorithmIdentifiers),a.contentInfo])]);return b.length>0&&g.value[0].value.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,b)),f.length>0&&g.value[0].value.push(e.create(e.Class.CONTEXT_SPECIFIC,1,!0,f)),g.value[0].value.push(e.create(e.Class.UNIVERSAL,e.Type.SET,!0,a.signerInfos)),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.type).getBytes()),g])},addSigner:function(b){var c=b.issuer,e=b.serialNumber;if(b.certificate){var f=b.certificate;"string"==typeof f&&(f=d.pki.certificateFromPem(f)),c=f.issuer.attributes,e=f.serialNumber}var g=b.key;if(!g)throw Error("Could not add PKCS#7 signer; no private key specified.");"string"==typeof g&&(g=d.pki.privateKeyFromPem(g));var h=b.digestAlgorithm||d.pki.oids.sha1;switch(h){case d.pki.oids.sha1:case d.pki.oids.sha256:case d.pki.oids.sha384:case d.pki.oids.sha512:case d.pki.oids.md5:break;default:throw Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+h)}var i=b.authenticatedAttributes||[];if(i.length>0){for(var j=!1,k=!1,l=0;l<i.length;++l){var m=i[l];if(!j&&m.type===d.pki.oids.contentType){if(j=!0,k)break;continue}if(!k&&m.type===d.pki.oids.messageDigest){if(k=!0,j)break;continue}}if(!j||!k)throw Error("Invalid signer.authenticatedAttributes. If signer.authenticatedAttributes is specified, then it must contain at least two attributes, PKCS #9 content-type and PKCS #9 message-digest.")}a.signers.push({key:g,version:1,issuer:c,serialNumber:e,digestAlgorithm:h,signatureAlgorithm:d.pki.oids.rsaEncryption,signature:null,authenticatedAttributes:i,unauthenticatedAttributes:[]})},sign:function(b){if(b=b||{},("object"!=typeof a.content||null===a.contentInfo)&&(a.contentInfo=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d.pki.oids.data).getBytes())]),"content"in a)){var c;a.content instanceof d.util.ByteBuffer?c=a.content.bytes():"string"==typeof a.content&&(c=d.util.encodeUtf8(a.content)),b.detached?a.detachedContent=e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,c):a.contentInfo.value.push(e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,c)]))}0!==a.signers.length&&function(b){if(!(c=a.detachedContent?a.detachedContent:(c=a.contentInfo.value[1]).value[0]))throw Error("Could not sign PKCS#7 message; there is no content to sign.");var c,f=e.derToOid(a.contentInfo.value[0].value),h=e.toDer(c);for(var i in h.getByte(),e.getBerValueLength(h),h=h.getBytes(),b)b[i].start().update(h);for(var j=new Date,k=0;k<a.signers.length;++k){var l=a.signers[k];if(0===l.authenticatedAttributes.length){if(f!==d.pki.oids.data)throw Error("Invalid signer; authenticatedAttributes must be present when the ContentInfo content type is not PKCS#7 Data.")}else{l.authenticatedAttributesAsn1=e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[]);for(var m=e.create(e.Class.UNIVERSAL,e.Type.SET,!0,[]),n=0;n<l.authenticatedAttributes.length;++n){var o=l.authenticatedAttributes[n];o.type===d.pki.oids.messageDigest?o.value=b[l.digestAlgorithm].digest():o.type!==d.pki.oids.signingTime||o.value||(o.value=j),m.value.push(g(o)),l.authenticatedAttributesAsn1.value.push(g(o))}h=e.toDer(m).getBytes(),l.md.start().update(h)}l.signature=l.key.sign(l.md,"RSASSA-PKCS1-V1_5")}a.signerInfos=function(a){for(var b=[],c=0;c<a.length;++c)b.push(function(a){var b=e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(a.version).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[d.pki.distinguishedNameToAsn1({attributes:a.issuer}),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.digestAlgorithm).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])]);if(a.authenticatedAttributesAsn1&&b.value.push(a.authenticatedAttributesAsn1),b.value.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.signatureAlgorithm).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")])),b.value.push(e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,a.signature)),a.unauthenticatedAttributes.length>0){for(var c=e.create(e.Class.CONTEXT_SPECIFIC,1,!0,[]),f=0;f<a.unauthenticatedAttributes.length;++f){var h=a.unauthenticatedAttributes[f];c.values.push(g(h))}b.value.push(c)}return b}(a[c]));return b}(a.signers)}(function(){for(var b={},c=0;c<a.signers.length;++c){var f=a.signers[c],g=f.digestAlgorithm;g in b||(b[g]=d.md[d.pki.oids[g]].create()),0===f.authenticatedAttributes.length?f.md=b[g]:f.md=d.md[d.pki.oids[g]].create()}for(var g in a.digestAlgorithmIdentifiers=[],b)a.digestAlgorithmIdentifiers.push(e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(g).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")]));return b}())},verify:function(){throw Error("PKCS#7 signature verification not yet implemented.")},addCertificate:function(b){"string"==typeof b&&(b=d.pki.certificateFromPem(b)),a.certificates.push(b)},addCertificateRevokationList:function(a){throw Error("PKCS#7 CRL support not yet implemented.")}}},f.createEncryptedData=function(){var a=null;return a={type:d.pki.oids.encryptedData,version:0,encryptedContent:{algorithm:d.pki.oids["aes256-CBC"]},fromAsn1:function(b){h(a,b,f.asn1.encryptedDataValidator)},decrypt:function(b){void 0!==b&&(a.encryptedContent.key=b),i(a)}}},f.createEnvelopedData=function(){var a=null;return a={type:d.pki.oids.envelopedData,version:0,recipients:[],encryptedContent:{algorithm:d.pki.oids["aes256-CBC"]},fromAsn1:function(b){var c=h(a,b,f.asn1.envelopedDataValidator);a.recipients=function(a){for(var b=[],c=0;c<a.length;++c)b.push(function(a){var b={},c=[];if(!e.validate(a,f.asn1.recipientInfoValidator,b,c)){var g=Error("Cannot read PKCS#7 RecipientInfo. ASN.1 object is not an PKCS#7 RecipientInfo.");throw g.errors=c,g}return{version:b.version.charCodeAt(0),issuer:d.pki.RDNAttributesAsArray(b.issuer),serialNumber:d.util.createBuffer(b.serial).toHex(),encryptedContent:{algorithm:e.derToOid(b.encAlgorithm),parameter:b.encParameter?b.encParameter.value:void 0,content:b.encKey}}}(a[c]));return b}(c.recipientInfos.value)},toAsn1:function(){var b;return e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(a.type).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.INTEGER,!1,e.integerToDer(a.version).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SET,!0,function(a){for(var b,c=[],f=0;f<a.length;++f)c.push((b=a[f],e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,e.integerToDer(b.version).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[d.pki.distinguishedNameToAsn1({attributes:b.issuer}),e.create(e.Class.UNIVERSAL,e.Type.INTEGER,!1,d.util.hexToBytes(b.serialNumber))]),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.encryptedContent.algorithm).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.NULL,!1,"")]),e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b.encryptedContent.content)])));return c}(a.recipients)),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,(b=a.encryptedContent,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(d.pki.oids.data).getBytes()),e.create(e.Class.UNIVERSAL,e.Type.SEQUENCE,!0,[e.create(e.Class.UNIVERSAL,e.Type.OID,!1,e.oidToDer(b.algorithm).getBytes()),b.parameter?e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b.parameter.getBytes()):void 0]),e.create(e.Class.CONTEXT_SPECIFIC,0,!0,[e.create(e.Class.UNIVERSAL,e.Type.OCTETSTRING,!1,b.content.getBytes())])]))])])])},findRecipient:function(b){for(var c=b.issuer.attributes,d=0;d<a.recipients.length;++d){var e=a.recipients[d],f=e.issuer;if(e.serialNumber===b.serialNumber&&f.length===c.length){for(var g=!0,h=0;h<c.length;++h)if(f[h].type!==c[h].type||f[h].value!==c[h].value){g=!1;break}if(g)return e}}return null},decrypt:function(b,c){if(void 0===a.encryptedContent.key&&void 0!==b&&void 0!==c)switch(b.encryptedContent.algorithm){case d.pki.oids.rsaEncryption:case d.pki.oids.desCBC:var e=c.decrypt(b.encryptedContent.content);a.encryptedContent.key=d.util.createBuffer(e);break;default:throw Error("Unsupported asymmetric cipher, OID "+b.encryptedContent.algorithm)}i(a)},addRecipient:function(b){a.recipients.push({version:0,issuer:b.issuer.attributes,serialNumber:b.serialNumber,encryptedContent:{algorithm:d.pki.oids.rsaEncryption,key:b.publicKey}})},encrypt:function(b,c){if(void 0===a.encryptedContent.content){switch(c=c||a.encryptedContent.algorithm,b=b||a.encryptedContent.key,c){case d.pki.oids["aes128-CBC"]:e=16,f=16,g=d.aes.createEncryptionCipher;break;case d.pki.oids["aes192-CBC"]:e=24,f=16,g=d.aes.createEncryptionCipher;break;case d.pki.oids["aes256-CBC"]:e=32,f=16,g=d.aes.createEncryptionCipher;break;case d.pki.oids["des-EDE3-CBC"]:e=24,f=8,g=d.des.createEncryptionCipher;break;default:throw Error("Unsupported symmetric cipher, OID "+c)}if(void 0===b)b=d.util.createBuffer(d.random.getBytes(e));else if(b.length()!=e)throw Error("Symmetric key has wrong length; got "+b.length()+" bytes, expected "+e+".");a.encryptedContent.algorithm=c,a.encryptedContent.key=b,a.encryptedContent.parameter=d.util.createBuffer(d.random.getBytes(f));var e,f,g,h=g(b);if(h.start(a.encryptedContent.parameter.copy()),h.update(a.content),!h.finish())throw Error("Symmetric encryption failed.");a.encryptedContent.content=h.output}for(var i=0;i<a.recipients.length;++i){var j=a.recipients[i];if(void 0===j.encryptedContent.content)if(j.encryptedContent.algorithm===d.pki.oids.rsaEncryption)j.encryptedContent.content=j.encryptedContent.key.encrypt(a.encryptedContent.key.data);else throw Error("Unsupported asymmetric cipher, OID "+j.encryptedContent.algorithm)}}}}},76316:(a,b,c)=>{"use strict";let{InvalidArgumentError:d,NotSupportedError:e}=c(61448),f=c(34589),{isValidHTTPToken:g,isValidHeaderValue:h,isStream:i,destroy:j,isBuffer:k,isFormDataLike:l,isIterable:m,hasSafeIterator:n,isBlobLike:o,serializePathWithQuery:p,parseHeaders:q,assertRequestHandler:r,getServerName:s,normalizedMethodRecords:t,getProtocolFromUrlString:u}=c(84285),{channels:v}=c(62571),{headerNameLowerCasedRecord:w}=c(28820),x=/[^\u0021-\u00ff]/,y=Symbol("handler"),z=Symbol("controller"),A=Symbol("resume");class B{#br=!1;#bs=null;#L=!1;#bt;[A]=null;rawHeaders=null;rawTrailers=null;constructor(a){this.#bt=a}pause(){this.#br=!0}resume(){this.#br&&(this.#br=!1,this[A]?.())}abort(a){this.#L||(this.#L=!0,this.#bs=a,this.#bt(a))}get aborted(){return this.#L}get reason(){return this.#bs}get paused(){return this.#br}}class C{constructor(a,{path:b,method:c,body:e,headers:f,query:q,idempotent:w,blocking:z,upgrade:A,headersTimeout:B,bodyTimeout:C,reset:E,expectContinue:F,servername:G,throwOnError:H,maxRedirections:I,typeOfService:J},K){if("string"!=typeof b)throw new d("path must be a string");if("/"===b[0]||b.startsWith("http://")||b.startsWith("https://")||"CONNECT"===c){if(x.test(b))throw new d("invalid request path")}else throw new d("path must be an absolute URL or start with a slash");if("string"!=typeof c)throw new d("method must be a string");if(void 0===t[c]&&!g(c))throw new d("invalid request method");if(A&&"string"!=typeof A)throw new d("upgrade must be a string");if(A&&!h(A))throw new d("invalid upgrade header");if(null!=B&&(!Number.isFinite(B)||B<0))throw new d("invalid headersTimeout");if(null!=C&&(!Number.isFinite(C)||C<0))throw new d("invalid bodyTimeout");if(null!=E&&"boolean"!=typeof E)throw new d("invalid reset");if(null!=F&&"boolean"!=typeof F)throw new d("invalid expectContinue");if(null!=H)throw new d("invalid throwOnError");if(null!=I&&0!==I)throw new d("maxRedirections is not supported, use the redirect interceptor");if(null!=J&&(!Number.isInteger(J)||J<0||J>255))throw new d("typeOfService must be an integer between 0 and 255");if(this.headersTimeout=B,this.bodyTimeout=C,this.method=c,this.typeOfService=J??0,this.abort=null,null==e)this.body=null;else if(i(e)){this.body=e;const a=this.body._readableState;a&&a.autoDestroy||(this.endHandler=function(){j(this)},this.body.on("end",this.endHandler)),this.errorHandler=a=>{this.abort?this.abort(a):this.error=a},this.body.on("error",this.errorHandler)}else if(k(e))this.body=e.byteLength?e:null;else if(ArrayBuffer.isView(e))this.body=e.buffer.byteLength?Buffer.from(e.buffer,e.byteOffset,e.byteLength):null;else if(e instanceof ArrayBuffer)this.body=e.byteLength?Buffer.from(e):null;else if("string"==typeof e)this.body=e.length?Buffer.from(e):null;else if(l(e)||m(e)||o(e))this.body=e;else throw new d("body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable");if(this.completed=!1,this.aborted=!1,this.upgrade=A||null,this.path=q?p(b,q):b,this.origin=a,this.protocol=u(a),this.idempotent=null==w?"HEAD"===c||"GET"===c||"QUERY"===c:w,this.blocking=z??"HEAD"!==this.method,this.reset=null==E?null:E,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=null!=F&&F,Array.isArray(f)){if(f.length%2!=0)throw new d("headers array must be even");for(let a=0;a<f.length;a+=2)D(this,f[a],f[a+1])}else if(f&&"object"==typeof f)if(n(f))for(const a of f){if(!Array.isArray(a)||2!==a.length)throw new d("headers must be in key-value pair format");D(this,a[0],a[1])}else{const a=Object.keys(f);for(let b=0;b<a.length;++b)D(this,a[b],f[a[b]])}else if(null!=f)throw new d("headers must be an object or an array");r(K,c,A),this.servername=G||s(this.host)||null,this[y]=K,v.create.hasSubscribers&&v.create.publish({request:this})}onBodySent(a){if(v.bodyChunkSent.hasSubscribers&&v.bodyChunkSent.publish({request:this,chunk:a}),this[y].onBodySent)try{return this[y].onBodySent(a)}catch(a){this.abort(a)}}onRequestSent(){if(v.bodySent.hasSubscribers&&v.bodySent.publish({request:this}),this[y].onRequestSent)try{return this[y].onRequestSent()}catch(a){this.abort(a)}}onRequestStart(a,b){return(f(!this.aborted),f(!this.completed),this[z]=new B(a),this.error)?void this[z].abort(this.error):(this.abort=a,this[y].onRequestStart(this[z],b))}onResponseStarted(){return this[y].onResponseStarted?.()}onResponseStart(a,b,c,d){f(!this.aborted),f(!this.completed),v.headers.hasSubscribers&&v.headers.publish({request:this,response:{statusCode:a,headers:b,statusText:d}});let e=this[z];e&&(e[A]=c,e.rawHeaders=b);let g=Array.isArray(b)?q(b):b;try{return this[y].onResponseStart?.(e,a,g,d),!e?.paused}catch(a){return this.abort(a),!1}}onResponseData(a){f(!this.aborted),f(!this.completed),v.bodyChunkReceived.hasSubscribers&&v.bodyChunkReceived.publish({request:this,chunk:a});let b=this[z];try{return this[y].onResponseData?.(b,a),!b?.paused}catch(a){return this.abort(a),!1}}onRequestUpgrade(a,b,c){f(!this.aborted),f(!this.completed);let d=this[z];d&&(d.rawHeaders=b);let e=Array.isArray(b)?q(b):b;return this[y].onRequestUpgrade?.(d,a,e,c)}onResponseEnd(a){this.onFinally(),f(!this.aborted),f(!this.completed),this.completed=!0,v.trailers.hasSubscribers&&v.trailers.publish({request:this,trailers:a});let b=this[z];b&&(b.rawTrailers=a);let c=Array.isArray(a)?q(a):a;try{return this[y].onResponseEnd?.(b,c)}catch(a){this.onResponseError(a)}}onResponseError(a){if(this.onFinally(),v.error.hasSubscribers&&v.error.publish({request:this,error:a}),this.aborted)return;this.aborted=!0;let b=this[z];return this[y].onResponseError?.(b,a)}onFinally(){this.errorHandler&&(this.body.off("error",this.errorHandler),this.errorHandler=null),this.endHandler&&(this.body.off("end",this.endHandler),this.endHandler=null)}addHeader(a,b){return D(this,a,b),this}}function D(a,b,c){if(c&&"object"==typeof c&&!Array.isArray(c))throw new d(`invalid ${b} header`);if(void 0===c)return;let f=w[b];if(void 0===f&&void 0===w[f=b.toLowerCase()]&&!g(f))throw new d("invalid header key");if(Array.isArray(c)){let a=[];for(let e=0;e<c.length;e++)if("string"==typeof c[e]){if(!h(c[e]))throw new d(`invalid ${b} header`);a.push(c[e])}else if(null===c[e])a.push("");else if("object"==typeof c[e])throw new d(`invalid ${b} header`);else a.push(`${c[e]}`);c=a}else if("string"==typeof c){if(!h(c))throw new d(`invalid ${b} header`)}else c=null===c?"":`${c}`;if("host"===f){if(null!==a.host)throw new d("duplicate host header");if("string"!=typeof c)throw new d("invalid host header");a.host=c}else if("content-length"===f){if(null!==a.contentLength)throw new d("duplicate content-length header");if(!function(a){if("string"!=typeof a||0===a.length)return!1;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<48||c>57)return!1}return!0}(c))throw new d("invalid content-length header");a.contentLength=parseInt(c,10)}else if(null===a.contentType&&"content-type"===f)a.contentType=c,a.headers.push(b,c);else if("transfer-encoding"===f||"keep-alive"===f||"upgrade"===f)throw new d(`invalid ${f} header`);else if("connection"===f){let b="string"==typeof c?c:null;if(null===b)throw new d("invalid connection header");for(let c of b.toLowerCase().split(",")){let b=c.trim();if(!g(b))throw new d("invalid connection header");"close"===b&&(a.reset=!0)}}else if("expect"===f)throw new e("expect header not supported");else a.headers.push(b,c)}a.exports=C},76403:(a,b,c)=>{"use strict";let d,{makeNetworkError:e,makeAppropriateNetworkError:f,filterResponse:g,makeResponse:h,fromInnerResponse:i,getResponseState:j}=c(78196),{HeadersList:k}=c(28665),{Request:l,cloneRequest:m,getRequestDispatcher:n,getRequestState:o,removeRequestAbortListener:p}=c(12600),q=c(38522),{makePolicyContainer:r,clonePolicyContainer:s,requestBadPort:t,TAOCheck:u,appendRequestOriginHeader:v,responseLocationURL:w,requestCurrentURL:x,setRequestReferrerPolicyOnRedirect:y,tryUpgradeRequestToAPotentiallyTrustworthyURL:z,createOpaqueTimingInfo:A,appendFetchMetadata:B,corsCheck:C,crossOriginResourcePolicyCheck:D,determineRequestsReferrer:E,coarsenedSharedCurrentTime:F,sameOrigin:G,isCancelled:H,isAborted:I,isErrorLike:J,fullyReadBody:K,readableStreamClose:L,urlIsLocal:M,urlIsHttpHttpsScheme:N,urlHasHttpsScheme:O,clampAndCoarsenConnectionTimingInfo:P,simpleRangeHeaderValue:Q,buildContentRange:R,createInflate:S,extractMimeType:T,hasAuthenticationEntry:U,includesCredentials:V,isTraversableNavigable:W}=c(42425),X=c(34589),{safelyExtractBody:Y,extractBody:Z}=c(35381),{redirectStatusSet:$,nullBodyStatus:_,safeMethodsSet:aa,requestBodyHeader:ab,subresourceSet:ac}=c(19608),ad=c(78474),{Readable:ae,pipeline:af,finished:ag,isErrored:ah,isReadable:ai}=c(57075),{addAbortListener:aj,bufferToLowerCasedHeaderName:ak}=c(84285),{dataURLProcessor:al,serializeAMimeType:am,minimizeSupportedMimeType:an}=c(16537),{getGlobalDispatcher:ao}=c(59970),{webidl:ap}=c(32984),{STATUS_CODES:aq}=c(37067),{bytesMatch:ar}=c(64371),{isomorphicEncode:as}=c(70745),at=["GET","HEAD"],au="u">typeof __UNDICI_IS_NODE__||"u">typeof esbuildDetection?"node":"undici";function av(a,b,c){if(Array.isArray(c)){for(let b=0;b<c.length;b+=2){let d=ak(c[b]),e=c[b+1];if(Array.isArray(e)&&!Buffer.isBuffer(e))for(let b of e)a.append(d,b.toString("latin1"),!0);else a.append(d,e.toString("latin1"),!0)}return}for(let[c,d]of Object.entries(b??{}))if(Array.isArray(d))for(let b of d)a.append(c,`${b}`,!0);else a.append(c,`${d}`,!0)}class aw extends ad{constructor(a){super(),this.dispatcher=a,this.connection=null,this.dump=!1,this.state="ongoing"}terminate(a){"ongoing"===this.state&&(this.state="terminated",this.connection?.destroy(a),this.emit("terminated",a))}abort(a){"ongoing"===this.state&&(this.state="aborted",a||(a=new DOMException("The operation was aborted.","AbortError")),this.serializedAbortReason=a,this.connection?.destroy(a),this.emit("terminated",a))}}function ax(a,b="other"){if("error"===a.type&&a.aborted||!a.urlList?.length)return;let c=a.urlList[0],d=a.timingInfo,e=a.cacheState;N(c)&&null!==d&&(a.timingAllowPassed||(d=A({startTime:d.startTime}),e=""),d.endTime=F(),a.timingInfo=d,ay(d,c.href,b,globalThis,e,"",a.status))}let ay=performance.markResourceTiming;function az(a,b,c,d,e){if(a&&a.reject(d),b.body?.stream!=null&&ai(b.body.stream)&&b.body.stream.cancel(d).catch(a=>{if("ERR_INVALID_STATE"!==a.code)throw a}),null==c)return;let f=j(c);f.body?.stream!=null&&ai(f.body.stream)&&e.error(d)}function aA({request:a,processRequestBodyChunkLength:b,processRequestEndOfBody:c,processResponse:d,processResponseEndOfBody:e,processResponseConsumeBody:f,useParallelQueue:g=!1,dispatcher:h=ao(),requestObject:i=null}){X(h);let j=null,k=!1;null!=a.client&&(j=a.client.globalObject,k=a.client.crossOriginIsolatedCapability);let l=A({startTime:F(k)}),m={controller:new aw(h),request:a,timingInfo:l,processRequestBodyChunkLength:b,processRequestEndOfBody:c,processResponse:d,processResponseConsumeBody:f,processResponseEndOfBody:e,taskDestination:j,crossOriginIsolatedCapability:k,requestObject:i};return X(!a.body||a.body.stream),"client"===a.window&&(a.window=a.client?.globalObject?.constructor?.name==="Window"?a.client:"no-window"),"client"===a.origin&&(a.origin=a.client.origin),"client"===a.policyContainer&&(null!=a.client?a.policyContainer=s(a.client.policyContainer):a.policyContainer=r()),a.headersList.contains("accept",!0)||a.headersList.append("accept","*/*",!0),a.headersList.contains("accept-language",!0)||a.headersList.append("accept-language","*",!0),a.priority,ac.has(a.destination),aB(m,!1),m.controller}async function aB(a,b){try{let c=a.request,d=null;if(c.localURLsOnly&&!M(x(c))&&(d=e("local URLs only")),z(c),"blocked"===t(c)&&(d=e("bad port")),""===c.referrerPolicy&&(c.referrerPolicy=c.policyContainer.referrerPolicy),"no-referrer"!==c.referrer&&(c.referrer=E(c)),null===d){let b=x(c);G(b,c.url)&&"basic"===c.responseTainting||"data:"===b.protocol||"navigate"===c.mode||"websocket"===c.mode?(c.responseTainting="basic",d=await aC(a)):"same-origin"===c.mode?d=e('request mode cannot be "same-origin"'):"no-cors"===c.mode?"follow"!==c.redirect?d=e('redirect mode cannot be "follow" for "no-cors" request'):(c.responseTainting="opaque",d=await aC(a)):N(x(c))?(c.responseTainting="cors",d=await aE(a)):d=e("URL scheme must be a HTTP(S) scheme")}if(b)return d;0===d.status||d.internalResponse||(c.responseTainting,"basic"===c.responseTainting?d=g(d,"basic"):"cors"===c.responseTainting?d=g(d,"cors"):"opaque"===c.responseTainting?d=g(d,"opaque"):X(!1));let f=0===d.status?d:d.internalResponse;if(0===f.urlList.length&&f.urlList.push(...c.urlList),c.timingAllowFailed||(d.timingAllowPassed=!0),"opaque"===d.type&&206===f.status&&f.rangeRequested&&!c.headers.contains("range",!0)&&(d=f=e()),0!==d.status&&("HEAD"===c.method||"CONNECT"===c.method||_.includes(f.status))&&(f.body=null,a.controller.dump=!0),c.integrity){let b=b=>aD(a,e(b));if("opaque"===c.responseTainting||null==d.body)return void b(d.error);K(d.body,e=>{ar(e,c.integrity)?(d.body=Y(e)[0],aD(a,d)):b("integrity mismatch")},b)}else aD(a,d)}catch(b){a.controller.terminate(b)}}function aC(a){if(H(a)&&0===a.request.redirectCount)return Promise.resolve(f(a));let{request:b}=a,{protocol:g}=x(b);switch(g){case"about:":return Promise.resolve(e("about scheme is not supported"));case"blob:":{d||(d=c(4573).resolveObjectURL);let a=x(b);if(0!==a.search.length)return Promise.resolve(e("NetworkError when attempting to fetch resource."));let f=d(a.toString());if("GET"!==b.method||!ap.is.Blob(f))return Promise.resolve(e("invalid method"));let g=h(),i=f.size,j=as(`${i}`),k=f.type;if(b.headersList.contains("range",!0)){g.rangeRequested=!0;let a=Q(b.headersList.get("range",!0),!0);if("failure"===a)return Promise.resolve(e("failed to fetch the data URL"));let{rangeStartValue:c,rangeEndValue:d}=a;if(null===c)d=(c=i-d)+d-1;else{if(c>=i)return Promise.resolve(e("Range start is greater than the blob's size."));(null===d||d>=i)&&(d=i-1)}let h=f.slice(c,d+1,k);g.body=Z(h)[0];let j=as(`${h.size}`),l=R(c,d,i);g.status=206,g.statusText="Partial Content",g.headersList.set("content-length",j,!0),g.headersList.set("content-type",k,!0),g.headersList.set("content-range",l,!0)}else{let a=Z(f);g.statusText="OK",g.body=a[0],g.headersList.set("content-length",j,!0),g.headersList.set("content-type",k,!0)}return Promise.resolve(g)}case"data:":{let a=al(x(b));if("failure"===a)return Promise.resolve(e("failed to fetch the data URL"));return Promise.resolve(h({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:am(a.mimeType)}]],body:Y(a.body)[0]}))}case"file:":return Promise.resolve(e("not implemented... yet..."));case"http:":case"https:":return aE(a).catch(a=>e(a));default:return Promise.resolve(e("unknown scheme"))}}function aD(a,b){let c=a.timingInfo,d=()=>{let d=Date.now();"document"===a.request.destination&&(a.controller.fullTimingInfo=c),a.controller.reportTimingSteps=()=>{if(!N(a.request.url))return;c.endTime=d;let e=b.cacheState,f=b.bodyInfo;b.timingAllowPassed||(c=A(c),e="");let g=0;if("navigate"!==a.request.mode||!b.hasCrossOriginRedirects){g=b.status;let a=T(b.headersList);"failure"!==a&&(f.contentType=an(a))}null!=a.request.initiatorType&&ay(c,a.request.url.href,a.request.initiatorType,globalThis,e,f,g)},queueMicrotask(()=>void(a.request.done=!0,null!=a.processResponseEndOfBody&&queueMicrotask(()=>a.processResponseEndOfBody(b)),null!=a.request.initiatorType&&a.controller.reportTimingSteps()))};null!=a.processResponse&&queueMicrotask(()=>{a.processResponse(b),a.processResponse=null});let e="error"===b.type?b:b.internalResponse??b;null==e.body?d():ag(e.body.stream,()=>{d()})}async function aE(a){let b=a.request,c=null,d=null,f=a.timingInfo;if(b.serviceWorkers,null===c){if("follow"===b.redirect&&(b.serviceWorkers="none"),d=c=await aF(a),"cors"===b.responseTainting&&"failure"===C(b,c))return e("cors failure");"failure"===u(b,c)&&(b.timingAllowFailed=!0)}return("opaque"===b.responseTainting||"opaque"===c.type)&&"blocked"===D(b.origin,b.client,b.destination,d)?e("blocked"):($.has(d.status)&&("manual"!==b.redirect&&a.controller.connection.destroy(void 0,!1),"error"===b.redirect?c=e("unexpected redirect"):"manual"===b.redirect?c=d:"follow"===b.redirect?c=await function(a,b){let c,d=a.request,f=b.internalResponse?b.internalResponse:b;try{if(c=w(f,x(d).hash),null==c)return b}catch(a){return Promise.resolve(e(a))}if(!N(c))return Promise.resolve(e("URL scheme must be a HTTP(S) scheme"));if(20===d.redirectCount)return Promise.resolve(e("redirect count exceeded"));if(d.redirectCount+=1,"cors"===d.mode&&(c.username||c.password)&&!G(d,c))return Promise.resolve(e('cross origin not allowed for request mode "cors"'));if("cors"===d.responseTainting&&(c.username||c.password))return Promise.resolve(e('URL cannot contain credentials for request mode "cors"'));if(303!==f.status&&null!=d.body&&null==d.body.source)return Promise.resolve(e());if([301,302].includes(f.status)&&"POST"===d.method||303===f.status&&!at.includes(d.method))for(let a of(d.method="GET",d.body=null,ab))d.headersList.delete(a);G(x(d),c)||(d.headersList.delete("authorization",!0),d.headersList.delete("proxy-authorization",!0),d.headersList.delete("cookie",!0),d.headersList.delete("host",!0)),null!=d.body&&(X(null!=d.body.source),d.body=Y(d.body.source)[0]);let g=a.timingInfo;return g.redirectEndTime=g.postRedirectStartTime=F(a.crossOriginIsolatedCapability),0===g.redirectStartTime&&(g.redirectStartTime=g.startTime),d.urlList.push(c),y(d,f),aB(a,!0)}(a,c):X(!1)),c.timingInfo=f,c)}async function aF(a,b=!1,c=!1){let d=a.request,g=null,h=null,i=null;"no-window"===d.window&&"error"===d.redirect?(g=a,h=d):(d.body?.source!=null?h=m(d):(h=m({...d,body:null})).body=d.body,(g={...a}).request=h);let j="include"===d.credentials||"same-origin"===d.credentials&&"basic"===d.responseTainting,k=h.body?h.body.length:null,l=null;if(null==h.body&&["POST","PUT"].includes(h.method)&&(l="0"),null!=k&&(l=as(`${k}`)),null==l||h.headersList.contains("content-length",!0)||h.headersList.append("content-length",l,!0),null!=k&&h.keepalive,ap.is.URL(h.referrer)&&h.headersList.append("referer",as(h.referrer.href),!0),v(h),B(h),h.headersList.contains("user-agent",!0)||h.headersList.append("user-agent",au,!0),"default"===h.cache&&(h.headersList.contains("if-modified-since",!0)||h.headersList.contains("if-none-match",!0)||h.headersList.contains("if-unmodified-since",!0)||h.headersList.contains("if-match",!0)||h.headersList.contains("if-range",!0))&&(h.cache="no-store"),"no-cache"!==h.cache||h.preventNoCacheCacheControlHeaderModification||h.headersList.contains("cache-control",!0)||h.headersList.append("cache-control","max-age=0",!0),("no-store"===h.cache||"reload"===h.cache)&&(h.headersList.contains("pragma",!0)||h.headersList.append("pragma","no-cache",!0),h.headersList.contains("cache-control",!0)||h.headersList.append("cache-control","no-cache",!0)),h.headersList.contains("range",!0)&&h.headersList.append("accept-encoding","identity",!0),h.headersList.contains("accept-encoding",!0)||(O(x(h))?h.headersList.append("accept-encoding","br, gzip, deflate, zstd",!0):h.headersList.append("accept-encoding","gzip, deflate",!0)),h.headersList.delete("host",!0),j&&!h.headersList.contains("authorization",!0)){let a=null;if(U(h)&&(void 0===h.useURLCredentials||!V(x(h))));else if(V(x(h))&&b){let{username:b,password:c}=x(h);a=`Basic ${Buffer.from(`${b}:${c}`).toString("base64")}`}null!==a&&h.headersList.append("Authorization",a,!1)}if(h.cache="no-store","no-store"!==h.cache&&h.cache,null==i){if("only-if-cached"===h.cache)return e("only if cached");let a=await aG(g,j,c);!aa.has(h.method)&&a.status>=200&&a.status,null==i&&(i=a)}if(i.urlList=[...h.urlList],h.headersList.contains("range",!0)&&(i.rangeRequested=!0),i.requestIncludesCredentials=j,401===i.status&&"cors"!==h.responseTainting&&j&&(void 0!==d.useURLCredentials||W(d.traversableForUserPrompts))){if(null!=d.body){if(null==d.body.source)return i;d.body=Y(d.body.source)[0]}if(void 0===d.useURLCredentials||b)return H(a)?f(a):i;a.controller.connection.destroy(),i=await aF(a,!0)}if(407===i.status)return"no-window"===d.window?e():H(a)?f(a):e("proxy authentication required");if(421===i.status&&!c&&(null==d.body||null!=d.body.source)){if(H(a))return f(a);a.controller.connection.destroy(),i=await aF(a,b,!0)}return i}async function aG(a,b=!1,c=!1){X(!a.controller.connection||a.controller.connection.destroyed),a.controller.connection={abort:null,destroyed:!1,destroy(a,b=!0){!this.destroyed&&(this.destroyed=!0,b&&this.abort?.(a??new DOMException("The operation was aborted.","AbortError")))}};let d=a.request,g=null,i=a.timingInfo;d.cache="no-store",d.mode;let j=null;if(null==d.body&&a.processRequestEndOfBody)queueMicrotask(()=>a.processRequestEndOfBody());else if(null!=d.body){let b=async function*(b){H(a)||(yield b,a.processRequestBodyChunkLength?.(b.byteLength))};j=async function*(){try{for await(let a of d.body.stream)yield*b(a);!H(a)&&a.processRequestEndOfBody&&a.processRequestEndOfBody()}catch(b){H(a)||("AbortError"===b.name?a.controller.abort():a.controller.terminate(b))}}()}try{let{body:b,status:c,statusText:e,headersList:f,socket:l}=await function({body:b}){let c=x(d),e=a.controller.dispatcher,f=c.pathname+c.search,g=0===c.search.length&&"?"===c.href[c.href.length-c.hash.length-1];return function b(h,j){return new Promise((l,m)=>e.dispatch({path:g?`${f}?`:f,origin:c.origin,method:d.method,body:e.isMockActive?d.body&&(d.body.source||d.body.stream):h,__mockAgentBodyForDispatch:h,headers:d.headersList.entries,maxRedirections:0,upgrade:"websocket"===d.mode?"websocket":void 0,...!1===j?{allowH2:j}:null},{body:null,abort:null,onRequestStart(b){let{connection:c}=a.controller;i.finalConnectionTimingInfo=P(void 0,i.postRedirectStartTime,a.crossOriginIsolatedCapability);let d=a=>b.abort(a);c.destroyed?d(new DOMException("The operation was aborted.","AbortError")):(a.controller.on("terminated",d),this.abort=c.abort=d),i.finalNetworkRequestStartTime=F(a.crossOriginIsolatedCapability)},onResponseStarted(){i.finalNetworkResponseStartTime=F(a.crossOriginIsolatedCapability)},onResponseStart(a,b,c,e){if(b<200)return;let f=a?.rawHeaders??[],g=new k;av(g,c,f);let h=g.get("location",!0);this.body=new ae({read:()=>a.resume()});let i=h&&"follow"===d.redirect&&$.has(b),j=[];if("HEAD"!==d.method&&"CONNECT"!==d.method&&!_.includes(b)&&!i){let a=g.get("content-encoding",!0),b=a?a.toLowerCase().split(","):[];if(b.length>5)return void m(Error(`too many content-encodings in response: ${b.length}, maximum allowed is 5`));for(let a=b.length-1;a>=0;--a){let c=b[a].trim();if("x-gzip"===c||"gzip"===c)j.push(q.createGunzip({flush:q.constants.Z_SYNC_FLUSH,finishFlush:q.constants.Z_SYNC_FLUSH}));else if("deflate"===c)j.push(S({flush:q.constants.Z_SYNC_FLUSH,finishFlush:q.constants.Z_SYNC_FLUSH}));else if("br"===c)j.push(q.createBrotliDecompress({flush:q.constants.BROTLI_OPERATION_FLUSH,finishFlush:q.constants.BROTLI_OPERATION_FLUSH}));else if("zstd"===c)j.push(q.createZstdDecompress({flush:q.constants.ZSTD_e_continue,finishFlush:q.constants.ZSTD_e_end}));else{j.length=0;break}}}let n=b=>this.onResponseError(a,b);l({status:b,statusText:e,headersList:g,body:j.length?af(this.body,...j,b=>{b&&this.onResponseError(a,b)}).on("error",n):this.body.on("error",n)})},onResponseData(b,c){a.controller.dump||(i.encodedBodySize+=c.byteLength,!1===this.body.push(c)&&b.pause())},onResponseEnd(){this.abort&&a.controller.off("terminated",this.abort),a.controller.ended=!0,this.body?.push(null)},onResponseError(c,e){(this.abort&&a.controller.off("terminated",this.abort),"websocket"===d.mode&&!1!==j&&e?.code==="UND_ERR_INFO"&&e?.message==="HTTP/2: Extended CONNECT protocol not supported by server")?l(b(h,!1)):(this.body?.destroy(e),a.controller.terminate(e),m(e))},onRequestUpgrade(a,b,c,d){if(null!=d.session&&200!==b||null==d.session&&101!==b)return!1;let e=a?.rawHeaders??[],f=new k;return av(f,c,e),l({status:b,statusText:aq[b],headersList:f,socket:d}),!0}}))}(b)}({body:j});if(l)g=h({status:c,statusText:e,headersList:f,socket:l});else{let d=b[Symbol.asyncIterator]();a.controller.next=()=>d.next(),g=h({status:c,statusText:e,headersList:f})}}catch(b){if("AbortError"===b.name)return a.controller.connection.destroy(),f(a,b);return e(b)}let l=new ReadableStream({start(b){a.controller.controller=b},pull:()=>a.controller.resume(),cancel:b=>{H(a)||a.controller.abort(b)},type:"bytes"});return g.body={stream:l,source:null,length:null},a.controller.resume||a.controller.on("terminated",function(b){I(a)?(g.aborted=!0,ai(l)&&a.controller.controller.error(a.controller.serializedAbortReason)):ai(l)&&a.controller.controller.error(TypeError("terminated",{cause:J(b)?b:void 0})),a.controller.connection.destroy()}),a.controller.resume=async()=>{for(;;){let b,c;try{let{done:c,value:d}=await a.controller.next();if(I(a))break;b=c?void 0:d}catch(d){a.controller.ended&&!i.encodedBodySize?b=void 0:(b=d,c=!0)}if(void 0===b){L(a.controller.controller),function(a,b){a.request.done=!0,null!=a.processResponseDone&&queueMicrotask(()=>a.processResponseDone(b))}(a,g);return}if(i.decodedBodySize+=b?.byteLength??0,c)return void a.controller.terminate(b);let d=new Uint8Array(b);if(d.byteLength&&a.controller.controller.enqueue(d),ah(l))return void a.controller.terminate();if(a.controller.controller.desiredSize<=0)return}},g}a.exports={fetch:function(a,b){let c;ap.argumentLengthCheck(arguments,1,"globalThis.fetch");let d=Promise.withResolvers();try{c=new l(a,b)}catch(a){return d.reject(a),d.promise}let e=o(c);if(c.signal.aborted)return az(d,e,null,c.signal.reason,null),d.promise;let f=e.client.globalObject;f?.constructor?.name==="ServiceWorkerGlobalScope"&&(e.serviceWorkers="none");let g=null,h=!1,j=null,k=aj(c.signal,()=>{h=!0,X(null!=j),j.abort(c.signal.reason);let a=g?.deref();az(d,e,a,c.signal.reason,j.controller)}),m=()=>{k(),p(c)};return j=aA({request:e,processResponseEndOfBody:a=>{ax(a,"fetch"),m()},processResponse:a=>{if(!h){if(a.aborted){az(d,e,g,j.serializedAbortReason,j.controller),m();return}if("error"===a.type){d.reject(TypeError("fetch failed",{cause:a.error})),m();return}g=new WeakRef(i(a,"immutable")),d.resolve(g.deref()),d=null}},dispatcher:n(c),requestObject:c}),d.promise},Fetch:aw,fetching:aA,finalizeAndReportTiming:ax}},76441:(a,b,c)=>{},76540:(a,b,c)=>{"use strict";c(33873),c(29021);let{MITM_DIR:d}=c(37436),{generateRootCA:e,loadRootCA:f,generateLeafCert:g}=c(1653);a.exports={generateCert:function(){return e()},getCertForDomain:function(a){try{let b=f(),c=g(a,b);return{key:c.key,cert:c.cert}}catch(b){return console.error(`Failed to generate cert for ${a}:`,b.message),null}}}},76558:(a,b,c)=>{"use strict";c.d(b,{Yh:()=>p});var d=c(93048),e=c(38421),f=c(26762),g=c(55511),h=c(21820);let i=e.xq["mimo-free"].baseUrl,j="abcdefghijklmnopqrstuvwxyz0123456789",k=["Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36","Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36","Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36"],l="You are MiMoCode, an interactive CLI tool that helps users with software engineering tasks.",m=null,n=0;async function o(a=null){if(m&&Date.now()<n-3e5)return m;let b=await (0,f.Fm)("https://api.xiaomimimo.com/api/free-ai/bootstrap",{method:"POST",headers:{"Content-Type":"application/json","User-Agent":k[Math.floor(Math.random()*k.length)]},body:JSON.stringify({client:function(){let a="unknown-user";try{a=h.userInfo().username}catch{}let b=(h.cpus()[0]?.model||"unknown-cpu").trim(),c=`${h.hostname()}|${h.platform()}|${h.arch()}|${b}|${a}`;return(0,g.createHash)("sha256").update(c).digest("hex")}()})},a);if(!b.ok)throw Error(`MiMo bootstrap failed: ${b.status}`);let c=await b.json();if(!c.jwt)throw Error("MiMo bootstrap returned no JWT");return m=c.jwt,n=function(a){try{let b=JSON.parse(Buffer.from(a.split(".")[1],"base64").toString());if(b.exp)return 1e3*b.exp}catch{}return Date.now()+3e6}(c.jwt),m}class p extends d.Hv{constructor(){super("mimo-free",e.xq["mimo-free"]),this.sessionId=function(){let a="ses_";for(let b=0;b<24;b++)a+=j[Math.floor(Math.random()*j.length)];return a}()}buildUrl(){return i}buildHeaders(a,b=!0){return{"Content-Type":"application/json","X-Mimo-Source":"mimocode-cli-free","User-Agent":k[Math.floor(Math.random()*k.length)],"x-session-affinity":this.sessionId,Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b){let c;return!Array.isArray(c=b?.messages)||c.some(a=>a?.role==="system"&&"string"==typeof a.content&&a.content.includes(l))?b:{...b,messages:[{role:"system",content:l},...c]}}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:g,proxyOptions:h=null}){let i;try{i=await o(h)}catch(a){throw g?.error?.("AUTH",`MiMo bootstrap failed: ${a.message}`),a}let j=this.buildUrl(),k=this.transformRequest(a,b),l={...this.buildHeaders(d,c),Authorization:`Bearer ${i}`},p=JSON.stringify(k);g?.debug?.("FETCH",`MIMO-FREE → ${j} | body=${p.length}B`);let q=await (0,f.Fm)(j,{method:"POST",headers:l,body:p,signal:e},h);return 401===q.status||403===q.status?(g?.debug?.("AUTH",`MiMo auth failed (${q.status}), re-bootstrapping...`),m=null,n=0,i=await o(h),l.Authorization=`Bearer ${i}`,{response:await (0,f.Fm)(j,{method:"POST",headers:l,body:p,signal:e},h),url:j,headers:l,transformedBody:k}):{response:q,url:j,headers:l,transformedBody:k}}}},76632:(a,b,c)=>{var d=c(45654);c(1277),c(33889),(a.exports=d.hmac=d.hmac||{}).create=function(){var a=null,b=null,c=null,e=null,f={};return f.start=function(f,g){if(null!==f)if("string"==typeof f)if((f=f.toLowerCase())in d.md.algorithms)b=d.md.algorithms[f].create();else throw Error('Unknown hash algorithm "'+f+'"');else b=f;if(null===g)g=a;else{if("string"==typeof g)g=d.util.createBuffer(g);else if(d.util.isArray(g)){var h=g;g=d.util.createBuffer();for(var i=0;i<h.length;++i)g.putByte(h[i])}var j=g.length();j>b.blockLength&&(b.start(),b.update(g.bytes()),g=b.digest()),c=d.util.createBuffer(),e=d.util.createBuffer(),j=g.length();for(var i=0;i<j;++i){var h=g.at(i);c.putByte(54^h),e.putByte(92^h)}if(j<b.blockLength)for(var h=b.blockLength-j,i=0;i<h;++i)c.putByte(54),e.putByte(92);a=g,c=c.bytes(),e=e.bytes()}b.start(),b.update(c)},f.update=function(a){b.update(a)},f.getMac=function(){var a=b.digest().bytes();return b.start(),b.update(e),b.update(a),b.digest()},f.digest=f.getMac,f}},77168:(a,b,c)=>{"use strict";c.a(a,async(a,b)=>{try{c(26762),c(38421),c(10793),c(82689),c(13161),c(68531),c(87350),c(22884),c(86538),c(1654),c(96997),c(98976);var d=c(69641);c(20830);var e=c(95695);c(80152),c(18762);var f=a([d,e]);[d,e]=f.then?(await f)():f,b()}catch(a){b(a)}})},77321:(a,b,c)=>{"use strict";c.d(b,{Z:()=>h});var d=c(38421);let e=[{match:a=>/^kimi-/i.test(a||""),scope:"toolCalls"},{match:a=>/deepseek/i.test(a||""),scope:"all"}],f="deepseek-v4-pro",g={[`${f}-max`]:{thinkingType:"enabled",reasoningEffort:"max"},[`${f}-none`]:{thinkingType:"disabled",reasoningEffort:null}};function h({provider:a,model:b,body:c}){let i=d.xq[a]?.reasoningInject,j=e.find(a=>a.match(b));var k=function({provider:a,model:b,body:c}){let d=g[b];if("deepseek"!==a||!d||!c)return c;let e={...c,model:f,thinking:{type:d.thinkingType}};if(e.extra_body?.thinking){let{thinking:a,...b}=e.extra_body;0===Object.keys(b).length?delete e.extra_body:e.extra_body=b}return d.reasoningEffort?e.reasoning_effort=d.reasoningEffort:delete e.reasoning_effort,e}({provider:a,model:b,body:c}),l=i||j;if(!l||!k?.messages||function(a){if("string"==typeof a.system||Array.isArray(a.system))return!0;if(!Array.isArray(a.messages))return!1;for(let b of a.messages)if(Array.isArray(b.content)){for(let a of b.content)if(a?.type==="tool_use"||a?.type==="tool_result"||a?.type==="thinking")return!0}return!1}(k))return k;let m=k.messages.map(a=>!function(a,b){if(a?.role!=="assistant")return!1;let c=a.reasoning_content;return("string"!=typeof c||!(c.length>0))&&("toolCalls"!==b||Array.isArray(a.tool_calls)&&a.tool_calls.length>0)}(a,l.scope)?a:{...a,reasoning_content:" "});return{...k,messages:m}}},77326:(a,b,c)=>{"use strict";c.d(b,{E5:()=>w,SB:()=>y,ui:()=>z.ui,bI:()=>e.cleanupProviderConnections,iE:()=>e.createProviderConnection,eh:()=>A.eh,PX:()=>g.getApiKeys,Dj:()=>i,getProviderConnections:()=>e.getProviderConnections,mt:()=>f.getSettings,ox:()=>x.ox,sZ:()=>v,uw:()=>u,updateProviderConnection:()=>e.updateProviderConnection,Xx:()=>f.Xx});var d=c(24081),e=c(92216);c(20639);var f=c(45874);c(7044);var g=c(57431),h=c(50743);async function i(a){var b;return(b=(await (0,d.c)()).get("SELECT * FROM combos WHERE name = ?",[a]))?{id:b.id,name:b.name,kind:b.kind,models:(0,h.q)(b.models,[]),createdAt:b.createdAt,updatedAt:b.updatedAt}:null}c(37703),c(90181);var j=c(94735);global._pendingRequests||(global._pendingRequests={byModel:{},byAccount:{}}),global._lastErrorProvider||(global._lastErrorProvider={provider:"",ts:0}),global._statsEmitter||(global._statsEmitter=new j.EventEmitter,global._statsEmitter.setMaxListeners(50)),global._pendingTimers||(global._pendingTimers={}),global._recentRing||(global._recentRing={items:[],initialized:!1}),global._connectionMapCache||(global._connectionMapCache={map:{},ts:0}),global._statsEmitTimers||(global._statsEmitTimers={pending:null,update:null});let k=global._pendingRequests,l=global._lastErrorProvider,m=global._pendingTimers,n=global._recentRing;global._connectionMapCache;let o=global._statsEmitTimers,p=global._statsEmitter;function q(a,b=150){let c="update"===a?"update":"pending";o[c]||(o[c]=setTimeout(()=>{o[c]=null,p.emit(a)},b),o[c]?.unref?.())}function r(a){if(!a||null!==Object.getPrototypeOf(a)){let b=Object.create(null);return a&&Object.assign(b,a),b}return a}function s(a,b,c){let d=function(a){if(null==a)return null;let b=String(a);return"__proto__"===b||"constructor"===b||"prototype"===b?`__safe_${b}`:b}(b);null!=d&&(a[d]||(a[d]={requests:0,promptTokens:0,completionTokens:0,cachedTokens:0,cost:0}),a[d].requests+=c.requests||1,a[d].promptTokens+=c.promptTokens||0,a[d].completionTokens+=c.completionTokens||0,a[d].cachedTokens+=c.cachedTokens||0,a[d].cost+=c.cost||0,c.meta&&Object.assign(a[d],c.meta))}async function t(a,b,d){if(!d||!a||!b)return 0;try{let{getPricingForModel:e}=await Promise.resolve().then(c.bind(c,90181)),f=await e(a,b);if(!f)return 0;let{calculateCostFromTokens:g}=await Promise.resolve().then(c.bind(c,71253));return g(d,f)}catch(a){return console.error("Error calculating cost:",a),0}}function u(a,b,c,d,e=!1){let f=b?`${a} (${b})`:a;d&&(Date.now(),Math.random().toString(36).slice(2,9));let g=`${c||"none"}|${f}`;if(k.byModel[f]||(k.byModel[f]=0),k.byModel[f]=Math.max(0,k.byModel[f]+(d?1:-1)),0===k.byModel[f]&&delete k.byModel[f],c&&(k.byAccount[c]||(k.byAccount[c]={}),k.byAccount[c][f]||(k.byAccount[c][f]=0),k.byAccount[c][f]=Math.max(0,k.byAccount[c][f]+(d?1:-1)),0===k.byAccount[c][f]&&(delete k.byAccount[c][f],0===Object.keys(k.byAccount[c]).length&&delete k.byAccount[c])),d){m[g]||(m[g]=new Set);let a=setTimeout(()=>{m[g]?.delete(a),m[g]?.size===0&&delete m[g],(!m[g]||0===m[g].size)&&(k.byModel[f]>0&&(k.byModel[f]=0),c&&k.byAccount[c]?.[f]>0&&(k.byAccount[c][f]=0)),q("pending")},6e4);a.unref?.(),m[g].add(a)}else if(m[g]){let a=m[g],b=a.values().next().value;b&&(clearTimeout(b),a.delete(b)),0===a.size&&delete m[g]}!d&&e&&b&&(l.provider=b.toLowerCase(),l.ts=Date.now());let h=new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"});console.log(`[${h}] [PENDING] ${d?"START":"END"}${e?" (ERROR)":""} | provider=${b} | model=${a}`),q("pending")}async function v(a){try{let b=await (0,d.c)();a.timestamp||(a.timestamp=new Date().toISOString()),a.cost=await t(a.provider,a.model,a.tokens);let c=a.tokens||{},e=c.prompt_tokens||c.input_tokens||0,f=c.completion_tokens||c.output_tokens||0,g=!1;(b.transaction(()=>{var d;let i,j,k,l,m,n,o,p,q,t,u,v,w=a.requestId||null;if(w&&b.get("SELECT id FROM usageHistory WHERE requestId = ?",[w]))return;b.run("INSERT INTO usageHistory(timestamp, provider, model, connectionId, apiKey, endpoint, promptTokens, completionTokens, cost, status, tokens, meta, requestId) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)",[a.timestamp,a.provider||null,a.model||null,a.connectionId||null,a.apiKey||null,a.endpoint||null,e,f,a.cost||0,a.status||"ok",(0,h.s)(c),(0,h.s)({}),w]);let x=parseInt(process.env.USAGE_HISTORY_MAX||"50000",10),y=b.get("SELECT value FROM _meta WHERE key = 'usageHistoryCount'");if(i=y?.value!=null?parseInt(y.value,10)+1:b.get("SELECT COUNT(*) as c FROM usageHistory")?.c||0,Number.isFinite(x)&&x>0&&i>x){let a=i-x;b.run("DELETE FROM usageHistory WHERE id IN (SELECT id FROM usageHistory ORDER BY id ASC LIMIT ?)",[a]),i=x}b.run("INSERT INTO _meta(key, value) VALUES('usageHistoryCount', ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value",[String(i)]);let z=(j=(d=a.timestamp)?new Date(d):new Date,`${j.getFullYear()}-${String(j.getMonth()+1).padStart(2,"0")}-${String(j.getDate()).padStart(2,"0")}`),A=b.get("SELECT data FROM usageDaily WHERE dateKey = ?",[z]),B=A?(0,h.q)(A.data,{}):{requests:0,promptTokens:0,completionTokens:0,cost:0,byProvider:{},byModel:{},byAccount:{},byApiKey:{},byEndpoint:{}};k=a.tokens?.prompt_tokens||a.tokens?.input_tokens||0,l=a.tokens?.completion_tokens||a.tokens?.output_tokens||0,m=a.tokens?.cached_tokens||a.tokens?.cache_read_input_tokens||0,n=a.cost||0,o={promptTokens:k,completionTokens:l,cachedTokens:m,cost:n},B.requests=(B.requests||0)+1,B.promptTokens=(B.promptTokens||0)+k,B.completionTokens=(B.completionTokens||0)+l,B.cachedTokens=(B.cachedTokens||0)+m,B.cost=(B.cost||0)+n,B.byProvider=r(B.byProvider||{}),B.byModel=r(B.byModel||{}),B.byAccount=r(B.byAccount||{}),B.byApiKey=r(B.byApiKey||{}),B.byEndpoint=r(B.byEndpoint||{}),a.provider&&s(B.byProvider,a.provider,o),p=a.provider?`${a.model}|${a.provider}`:a.model,s(B.byModel,p,{...o,meta:{rawModel:a.model,provider:a.provider}}),a.connectionId&&s(B.byAccount,a.connectionId,{...o,meta:{rawModel:a.model,provider:a.provider}}),q=a.apiKey&&"string"==typeof a.apiKey?a.apiKey:"local-no-key",t=`${q}|${a.model}|${a.provider||"unknown"}`,s(B.byApiKey,t,{...o,meta:{rawModel:a.model,provider:a.provider,apiKey:a.apiKey||null}}),u=a.endpoint||"Unknown",v=`${u}|${a.model}|${a.provider||"unknown"}`,s(B.byEndpoint,v,{...o,meta:{endpoint:u,rawModel:a.model,provider:a.provider}}),b.run("INSERT INTO usageDaily(dateKey, data) VALUES(?, ?) ON CONFLICT(dateKey) DO UPDATE SET data = excluded.data",[z,(0,h.s)(B)]);let C=b.get("SELECT value FROM _meta WHERE key = 'totalRequestsLifetime'"),D=(C?parseInt(C.value,10):0)+1;b.run("INSERT INTO _meta(key, value) VALUES('totalRequestsLifetime', ?) ON CONFLICT(key) DO UPDATE SET value = excluded.value",[String(D)]),g=!0}),g)&&(n.items.push(a),n.items.length>50&&(n.items=n.items.slice(-50)),q("update",250))}catch(a){console.error("Failed to save usage stats:",a)}}async function w(){}var x=c(18922);async function y(){try{let a=(await (0,d.c)()).run("DELETE FROM fetchCache WHERE expiresAt < ?",[new Date().toISOString()]);return a?.changes??0}catch{return 0}}var z=c(70815),A=c(34721)},77935:(a,b,c)=>{"use strict";let{InvalidArgumentError:d,SocketError:e}=c(61448),{AsyncResource:f}=c(16698),g=c(34589),h=c(84285),{kHTTP2Stream:i}=c(49176),{addSignal:j,removeSignal:k}=c(73135);class l extends f{constructor(a,b){if(!a||"object"!=typeof a)throw new d("invalid opts");if("function"!=typeof b)throw new d("invalid callback");const{signal:c,opaque:e,responseHeaders:f}=a;if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new d("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=f||null,this.opaque=e||null,this.callback=b,this.abort=null,this.context=null,j(this,c)}onRequestStart(a,b){this.reason?a.abort(this.reason):(g(this.callback),this.abort=b=>a.abort(b),this.context=b)}onResponseStart(){throw new e("bad upgrade",null)}onRequestUpgrade(a,b,c,d){if(b!==(!0===d[i]?200:101)){let b=!0===d[i]?null:h.getSocketInfo(d);a.abort(new e("bad upgrade",b));return}let{callback:f,opaque:g,context:j}=this;k(this),this.callback=null;let l=a?.rawHeaders,m="raw"===this.responseHeaders?h.parseRawHeaders(l):c;this.runInAsyncScope(f,null,null,{headers:m,socket:d,opaque:g,context:j})}onResponseError(a,b){let{callback:c,opaque:d}=this;k(this),c&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(c,null,b,{opaque:d})}))}}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 l(b,c),d={...b,method:b.method||"GET",upgrade:b.protocol||"Websocket"};this.dispatch(d,a)}catch(d){if("function"!=typeof c)throw d;let a=b?.opaque;queueMicrotask(()=>c(d,{opaque:a}))}}},78075:(a,b,c)=>{"use strict";let d=c(31825);a.exports=a=>b=>function(c,e){return b(c,new d({...c,retryOptions:{...a,...c.retryOptions}},{handler:e,dispatch:b}))}},78116:()=>{},78196:(a,b,c)=>{"use strict";let{Headers:d,HeadersList:e,fill:f,getHeadersGuard:g,setHeadersGuard:h,setHeadersList:i}=c(28665),{extractBody:j,cloneBody:k,mixinBody:l,streamRegistry:m,bodyUnusable:n}=c(35381),o=c(84285),p=c(57975),{kEnumerableProperty:q}=o,{isValidReasonPhrase:r,isCancelled:s,isAborted:t,isErrorLike:u,environmentSettingsObject:v}=c(42425),{redirectStatusSet:w,nullBodyStatus:x}=c(19608),{webidl:y}=c(32984),{URLSerializer:z}=c(16537),{kConstruct:A}=c(49176),B=c(34589),{isomorphicEncode:C,serializeJavascriptValueToJSONString:D}=c(70745),E=new TextEncoder("utf-8");class F{#e;#a;static error(){return Q(M(),"immutable")}static json(a,b){y.argumentLengthCheck(arguments,1,"Response.json"),null!==b&&(b=y.converters.ResponseInit(b));let c=j(E.encode(D(a))),d=Q(L({}),"response");return P(d,b,{body:c[0],type:"application/json"}),d}static redirect(a,b=302){let c;y.argumentLengthCheck(arguments,1,"Response.redirect"),a=y.converters.USVString(a),b=y.converters["unsigned short"](b);try{c=new URL(a,v.settingsObject.baseUrl)}catch(b){throw TypeError(`Failed to parse URL from ${a}`,{cause:b})}if(!w.has(b))throw RangeError(`Invalid status code ${b}`);let d=Q(L({}),"immutable");d.#a.status=b;let e=C(z(c));return d.#a.headersList.append("location",e,!0),d}constructor(a=null,b){if(y.util.markAsUncloneable(this),a===A)return;null!==a&&(a=y.converters.BodyInit(a,"Response","body")),b=y.converters.ResponseInit(b),this.#a=L({}),this.#e=new d(A),h(this.#e,"response"),i(this.#e,this.#a.headersList);let c=null;if(null!=a){const[b,d]=j(a);c={body:b,type:d}}P(this,b,c)}get type(){return y.brandCheck(this,F),this.#a.type}get url(){y.brandCheck(this,F);let a=this.#a.urlList,b=a[a.length-1]??null;return null===b?"":z(b,!0)}get redirected(){return y.brandCheck(this,F),this.#a.urlList.length>1}get status(){return y.brandCheck(this,F),this.#a.status}get ok(){return y.brandCheck(this,F),this.#a.status>=200&&this.#a.status<=299}get statusText(){return y.brandCheck(this,F),this.#a.statusText}get headers(){return y.brandCheck(this,F),this.#e}get body(){return y.brandCheck(this,F),this.#a.body?this.#a.body.stream:null}get bodyUsed(){return y.brandCheck(this,F),!!this.#a.body&&o.isDisturbed(this.#a.body.stream)}clone(){if(y.brandCheck(this,F),n(this.#a))throw y.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let a=K(this.#a);return 0!==this.#a.urlList.length&&this.#a.body?.stream&&m.register(this,new WeakRef(this.#a.body.stream)),Q(a,g(this.#e))}[p.inspect.custom](a,b){null===b.depth&&(b.depth=2),b.colors??=!0;let c={status:this.status,statusText:this.statusText,headers:this.headers,body:this.body,bodyUsed:this.bodyUsed,ok:this.ok,redirected:this.redirected,type:this.type,url:this.url};return`Response ${p.formatWithOptions(b,c)}`}static getResponseHeaders(a){return a.#e}static setResponseHeaders(a,b){a.#e=b}static getResponseState(a){return a.#a}static setResponseState(a,b){a.#a=b}}let{getResponseHeaders:G,setResponseHeaders:H,getResponseState:I,setResponseState:J}=F;function K(a){if(a.internalResponse)return O(K(a.internalResponse),a.type);let b=L({...a,body:null});return null!=a.body&&(b.body=k(a.body)),b}function L(a){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...a,headersList:a?.headersList?new e(a?.headersList):new e,urlList:a?.urlList?[...a.urlList]:[]}}function M(a){return L({type:"error",status:0,error:u(a)?a:Error(a?String(a):a),aborted:a&&"AbortError"===a.name})}function N(a,b){return b={internalResponse:a,...b},new Proxy(a,{get:(a,c)=>c in b?b[c]:a[c],set:(a,c,d)=>(B(!(c in b)),a[c]=d,!0)})}function O(a,b){return"basic"===b?N(a,{type:"basic",headersList:a.headersList}):"cors"===b?N(a,{type:"cors",headersList:a.headersList}):"opaque"===b?N(a,{type:"opaque",urlList:[],status:0,statusText:"",body:null}):"opaqueredirect"===b?N(a,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null}):void B(!1)}function P(a,b,c){if(null!==b.status&&(b.status<200||b.status>599))throw RangeError('init["status"] must be in the range of 200 to 599, inclusive.');if("statusText"in b&&null!=b.statusText&&!r(String(b.statusText)))throw TypeError("Invalid statusText");if("status"in b&&null!=b.status&&(I(a).status=b.status),"statusText"in b&&null!=b.statusText&&(I(a).statusText=b.statusText),"headers"in b&&null!=b.headers&&f(G(a),b.headers),c){if(x.includes(a.status))throw y.errors.exception({header:"Response constructor",message:`Invalid response status code ${a.status}`});I(a).body=c.body,null==c.type||I(a).headersList.contains("content-type",!0)||I(a).headersList.append("content-type",c.type,!0)}}function Q(a,b){let c=new F(A);J(c,a);let e=new d(A);return H(c,e),i(e,a.headersList),h(e,b),0!==a.urlList.length&&a.body?.stream&&m.register(c,new WeakRef(a.body.stream)),c}Reflect.deleteProperty(F,"getResponseHeaders"),Reflect.deleteProperty(F,"setResponseHeaders"),Reflect.deleteProperty(F,"getResponseState"),Reflect.deleteProperty(F,"setResponseState"),l(F,I),Object.defineProperties(F.prototype,{type:q,url:q,status:q,ok:q,redirected:q,statusText:q,headers:q,clone:q,body:q,bodyUsed:q,[Symbol.toStringTag]:{value:"Response",configurable:!0}}),Object.defineProperties(F,{json:q,redirect:q,error:q}),y.converters.XMLHttpRequestBodyInit=function(a,b,c){return"string"==typeof a?y.converters.USVString(a,b,c):y.is.Blob(a)||y.is.BufferSource(a)||y.is.FormData(a)||y.is.URLSearchParams(a)?a:y.converters.DOMString(a,b,c)},y.converters.BodyInit=function(a,b,c){return y.is.ReadableStream(a)||a?.[Symbol.asyncIterator]?a:y.converters.XMLHttpRequestBodyInit(a,b,c)},y.converters.ResponseInit=y.dictionaryConverter([{key:"status",converter:y.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:y.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:y.converters.HeadersInit}]),y.is.Response=y.util.MakeTypeAssertion(F),a.exports={isNetworkError:function(a){return"error"===a.type&&0===a.status},makeNetworkError:M,makeResponse:L,makeAppropriateNetworkError:function(a,b=null){return B(s(a)),t(a)?M(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:b})):M(Object.assign(new DOMException("Request was cancelled."),{cause:b}))},filterResponse:O,Response:F,cloneResponse:K,fromInnerResponse:Q,getResponseState:I}},79401:(a,b,c)=>{"use strict";c.d(b,{KC:()=>j,RB:()=>q,Ty:()=>m,_G:()=>h,bg:()=>g,cT:()=>l,pM:()=>p,pr:()=>r,qk:()=>n,rf:()=>f,t6:()=>k,xG:()=>o});let d="https://openapi.qoder.sh",e="https://api3.qoder.sh",f="https://qoder.com/device/selectAccounts",g=`${d}/api/v1/deviceToken/poll`,h=`${d}/api/v1/userinfo`,i=`${e}/algo/api/v2/service/pro/sse/agent_chat_generation?FetchKeys=llm_model_result&AgentId=agent_common`,j=`${i}&Encode=1`,k=`${e}/algo/api/v2/model/list`,l="1.0.0",m="5",n="disagree",o="v2",p="x86_64_windows",q="5",r=`-----BEGIN PUBLIC KEY-----
|
|
379
|
+
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDA8iMH5c02LilrsERw9t6Pv5Nc
|
|
380
|
+
4k6Pz1EaDicBMpdpxKduSZu5OANqUq8er4GM95omAGIOPOh+Nx0spthYA2BqGz+l
|
|
381
|
+
6HRkPJ7S236FZz73In/KVuLnwI8JJ2CbuJap8kvheCCZpmAWpb/cPx/3Vr/J6I17
|
|
382
|
+
XcW+ML9FoCI6AOvOzwIDAQAB
|
|
383
|
+
-----END PUBLIC KEY-----`},79412:a=>{"use strict";let b=Symbol.for("undici.globalOrigin.1");a.exports={getGlobalOrigin:function(){return globalThis[b]},setGlobalOrigin:function(a){if(void 0===a)return void Object.defineProperty(globalThis,b,{value:void 0,writable:!0,enumerable:!1,configurable:!1});let c=new URL(a);if("http:"!==c.protocol&&"https:"!==c.protocol)throw TypeError(`Only http & https urls are allowed, received ${c.protocol}`);Object.defineProperty(globalThis,b,{value:c,writable:!0,enumerable:!1,configurable:!1})}}},79468:(a,b,c)=>{"use strict";let{safeHTTPMethods:d,pathHasQueryOrFragment:e,hasSafeIterator:f}=c(84285),{serializePathWithQuery:g}=c(84285);a.exports={makeCacheKey:function(a){if(!a.origin)throw Error("opts.origin is undefined");let b=a.path||"/";return a.query&&!e(b)&&(b=g(b,a.query)),{origin:a.origin.toString(),method:a.method,path:b,headers:a.headers}},normalizeHeaders:function(a){let b;if(null==a.headers)b={};else if("object"==typeof a.headers)if(b={},f(a.headers))for(let c of a.headers){if(!Array.isArray(c))throw Error("opts.headers is not a valid header map");let[a,d]=c;if("string"!=typeof a||"string"!=typeof d)throw Error("opts.headers is not a valid header map");b[a.toLowerCase()]=d}else for(let c of Object.keys(a.headers))b[c.toLowerCase()]=a.headers[c];else throw Error("opts.headers is not an object");return b},assertCacheKey:function(a){if("object"!=typeof a)throw TypeError(`expected key to be object, got ${typeof a}`);for(let b of["origin","method","path"])if("string"!=typeof a[b])throw TypeError(`expected key.${b} to be string, got ${typeof a[b]}`);if(void 0!==a.headers&&"object"!=typeof a.headers)throw TypeError(`expected headers to be object, got ${typeof a}`)},assertCacheValue:function(a){if("object"!=typeof a)throw TypeError(`expected value to be object, got ${typeof a}`);for(let b of["statusCode","cachedAt","staleAt","deleteAt"])if("number"!=typeof a[b])throw TypeError(`expected value.${b} to be number, got ${typeof a[b]}`);if("string"!=typeof a.statusMessage)throw TypeError(`expected value.statusMessage to be string, got ${typeof a.statusMessage}`);if(null!=a.headers&&"object"!=typeof a.headers)throw TypeError(`expected value.rawHeaders to be object, got ${typeof a.headers}`);if(void 0!==a.vary&&"object"!=typeof a.vary)throw TypeError(`expected value.vary to be object, got ${typeof a.vary}`);if(void 0!==a.etag&&"string"!=typeof a.etag)throw TypeError(`expected value.etag to be string, got ${typeof a.etag}`)},parseCacheControlHeader:function(a){let b,c={};if(Array.isArray(a))for(let c of(b=[],a))b.push(...c.split(","));else b=a.split(",");for(let a=0;a<b.length;a++){let d,e,f=b[a].toLowerCase(),g=f.indexOf("=");switch(-1!==g?(d=f.substring(0,g).trimStart(),e=f.substring(g+1)):d=f.trim(),d){case"min-fresh":case"max-stale":case"max-age":case"s-maxage":case"stale-while-revalidate":case"stale-if-error":{if(void 0===e||" "===e[0])continue;e.length>=2&&'"'===e[0]&&'"'===e[e.length-1]&&(e=e.substring(1,e.length-1));let a=parseInt(e,10);if(a!=a||"max-age"===d&&d in c&&c[d]>=a)continue;c[d]=a;break}case"private":case"no-cache":if(e){if('"'===e[0]){let f=[e.substring(1)],g='"'===e[e.length-1];if(!g)for(let c=a+1;c<b.length;c++){let a=b[c],d=a.length;if(f.push(a.trim()),0!==d&&'"'===a[d-1]){g=!0;break}}if(g){let a=f[f.length-1];'"'===a[a.length-1]&&(a=a.substring(0,a.length-1),f[f.length-1]=a);for(let a=0;a<f.length;a++)f[a]=f[a].trim();d in c?c[d]=c[d].concat(f):c[d]=f}}else{let a=e.trim();d in c?c[d]=c[d].concat(a):c[d]=[a]}break}case"public":case"no-store":case"must-revalidate":case"proxy-revalidate":case"immutable":case"no-transform":case"must-understand":case"only-if-cached":if(e)continue;c[d]=!0;break;default:continue}}return c},parseVaryHeader:function(a,b){if("string"==typeof a&&a.includes("*"))return b;let c={};for(let d of"string"==typeof a?a.split(","):a){let a=d.trim().toLowerCase();c[a]=b[a]??null}return c},isEtagUsable:function(a){return!(a.length<=2)&&('"'===a[0]&&'"'===a[a.length-1]?!('"'===a[1]||a.startsWith('"W/')):!!a.startsWith('W/"')&&'"'===a[a.length-1]&&4!==a.length)},assertCacheMethods:function(a,b="CacheMethods"){if(!Array.isArray(a))throw TypeError(`expected type of ${b} needs to be an array, got ${null===a?"null":typeof a}`);if(0===a.length)throw TypeError(`${b} needs to have at least one method`);for(let c of a)if(!d.includes(c))throw TypeError(`element of ${b}-array needs to be one of following values: ${d.join(", ")}, got ${c}`)},assertCacheStore:function(a,b="CacheStore"){if("object"!=typeof a||null===a)throw TypeError(`expected type of ${b} to be a CacheStore, got ${null===a?"null":typeof a}`);for(let c of["get","createWriteStream","delete"])if("function"!=typeof a[c])throw TypeError(`${b} needs to have a \`${c}()\` function`)},makeDeduplicationKey:function(a,b){let c={};if(a.headers)for(let d of Object.keys(a.headers).sort())b?.has(d.toLowerCase())||(c[d]=a.headers[d]);return JSON.stringify([a.origin,a.method,a.path,c])}}},80152:(a,b,c)=>{"use strict";c(23059)},80830:a=>{"use strict";a.exports={kAgent:Symbol("agent"),kOptions:Symbol("options"),kFactory:Symbol("factory"),kDispatches:Symbol("dispatches"),kDispatchKey:Symbol("dispatch key"),kDefaultHeaders:Symbol("default headers"),kDefaultTrailers:Symbol("default trailers"),kContentLength:Symbol("content length"),kMockAgent:Symbol("mock agent"),kMockAgentSet:Symbol("mock agent set"),kMockAgentGet:Symbol("mock agent get"),kMockDispatch:Symbol("mock dispatch"),kClose:Symbol("close"),kOriginalClose:Symbol("original agent close"),kOriginalDispatch:Symbol("original dispatch"),kOrigin:Symbol("origin"),kIsMockActive:Symbol("is mock active"),kNetConnect:Symbol("net connect"),kGetNetConnect:Symbol("get net connect"),kConnected:Symbol("connected"),kIgnoreTrailingSlash:Symbol("ignore trailing slash"),kMockAgentMockCallHistoryInstance:Symbol("mock agent mock call history name"),kMockAgentRegisterCallHistory:Symbol("mock agent register mock call history"),kMockAgentAddCallHistoryLog:Symbol("mock agent add call history log"),kMockAgentIsCallHistoryEnabled:Symbol("mock agent is call history enabled"),kMockAgentAcceptsNonStandardSearchParameters:Symbol("mock agent accepts non standard search parameters"),kMockCallHistoryAddLog:Symbol("mock call history add log"),kTotalDispatchCount:Symbol("total dispatch count")}},80985:(a,b,c)=>{"use strict";let d,e,f=c(34589),{pipeline:g}=c(57075),h=c(84285),{RequestContentLengthMismatchError:i,RequestAbortedError:j,SocketError:k,InformationalError:l,InvalidArgumentError:m,HeadersTimeoutError:n,BodyTimeoutError:o}=c(61448),{kUrl:p,kReset:q,kClient:r,kRunning:s,kPending:t,kQueue:u,kPendingIdx:v,kRunningIdx:w,kError:x,kSocket:y,kStrictContentLength:z,kOnError:A,kMaxConcurrentStreams:B,kPingInterval:C,kHTTP2Session:D,kHTTP2InitialWindowSize:E,kHTTP2ConnectionWindowSize:F,kHostAuthority:G,kResume:H,kSize:I,kHTTPContext:J,kClosed:K,kKeepAliveDefaultTimeout:L,kHeadersTimeout:M,kBodyTimeout:N,kEnableConnectProtocol:O,kRemoteSettings:P,kHTTP2Stream:Q,kHTTP2SessionState:R}=c(49176),{channels:S}=c(62571),T=Symbol("open streams"),U=Symbol("request stream id"),V=Symbol("request stream"),W=Symbol("request stream cleanup"),X=Symbol("request stream state"),Y=Symbol("received goaway");try{e=c(32467)}catch{e={constants:{}}}let{constants:{HTTP2_HEADER_AUTHORITY:Z,HTTP2_HEADER_METHOD:$,HTTP2_HEADER_PATH:_,HTTP2_HEADER_SCHEME:aa,HTTP2_HEADER_CONTENT_LENGTH:ab,HTTP2_HEADER_EXPECT:ac,HTTP2_HEADER_STATUS:ad,HTTP2_HEADER_PROTOCOL:ae,NGHTTP2_NO_ERROR:af,NGHTTP2_REFUSED_STREAM:ag}}=e;function ah(a){a[U]=null,a[V]=null,a[W]=null}function ai(a,b,c){let d=a[W],e=a[V];ah(a),d?.(e),a[U]=b.id,a[V]=b,a[W]=c}function aj(a){let b=a[W],c=a[V];ah(a),b?.(c)}function ak(a){let b=a[R];!1===b.refed&&(b.refed=!0,a.ref())}function al(a){let b=a[R];!0===b.refed&&(b.refed=!1,a.unref())}function am(a){let b=a[R];b?.idleTimeout!=null&&(clearTimeout(b.idleTimeout),b.idleTimeout=null)}function an(a){let b=a[r];if(b[D]!==a||a.closed||a.destroyed)return;if(0!==a[T]||0!==b[I])return void am(a);let c=a[R];null==c.idleTimeout&&(c.idleTimeout=setTimeout(ao,b[L],a).unref())}function ao(a){let b=a[r],c=a[y];if(a[R].idleTimeout=null,b[D]!==a||0!==a[T]||0!==b[I]||a.closed||a.destroyed)return;let d=new l("socket idle timeout");c[x]=d,h.destroy(c,d)}function ap(a){try{"function"==typeof this.setLocalWindowSize&&this.setLocalWindowSize(a)}catch{}}function aq(a){if(this[r][B]=a.maxConcurrentStreams??this[r][B],!0===this[P]&&!0===this[O]&&!1===a.enableConnectProtocol){let a=new l("HTTP/2: Server disabled extended CONNECT protocol against RFC-8441");this[y][x]=a,this[r][A](a);return}this[O]=a.enableConnectProtocol??this[O],this[P]=!0,this[r][H]()}function ar(a){let b=a[R];if((a.closed||a.destroyed)&&null!=b.ping.interval){clearInterval(b.ping.interval),b.ping.interval=null;return}a.ping((function(a,b){let c=this[r],d=this[y];if(null!=a){let b=new l(`HTTP/2: "PING" errored - type ${a.message}`);d[x]=b,c[A](b)}else c.emit("ping",b)}).bind(a))}function as(a){f("ERR_TLS_CERT_ALTNAME_INVALID"!==a.code),this[y][x]=a,this[Y]||this[r][A](a)}function at(a,b,c){if(0===c){if(this[Y])return;let c=new l(`HTTP/2: "frameError" received - type ${a}, code ${b}`);this[y][x]=c,this[r][A](c)}}function au(){let a=new k("other side closed",h.getSocketInfo(this[y]));this.destroy(a),h.destroy(this[y],a)}function av(a,b){if(this[Y])return;this[Y]=!0;let c=this[x]||(a===af?new l(`HTTP/2: "GOAWAY" frame received with code ${a}`):new k(`HTTP/2: "GOAWAY" frame received with code ${a}`,h.getSocketInfo(this[y]))),d=this[r],e=d[v],f=function(a,b){let c=Number.isInteger(b)?b:Number.MAX_SAFE_INTEGER;for(let b=a[w];b<a[v];b++){let d=a[u][b];if(null!=d&&("number"!=typeof d[U]||d[U]>c))return b}return a[v]}(d,b),g=[],i=[];for(let a=f;a<e;a++){let b=d[u][a];null!=b&&(i.push(function(a){let b=a[V];return aj(a),b}(b)),function(a){let{body:b}=a;return null==b||h.isBuffer(b)||h.isBlobLike(b)}(b)?g.push(b):h.errorRequest(d,b,c))}for(let a=0;a<i.length;a++)!function(a,b=ag){if(null!=a&&!a.destroyed&&!a.closed)try{a.close(b)}catch{}}(i[a]);if(f!==e){let a=d[u].slice(e);d[u].length=f,d[u].push(...g,...a)}d[D]===this&&(d[y]=null,d[J]=null,d[D]=null),am(this),this.closed||this.destroyed||this.close(),d[v]=f,d.emit("disconnect",d[p],[d],c),d[H]()}function aw(){let{[r]:a,[R]:b,[y]:c}=this,d=c[x]||this[x]||new k("closed",h.getSocketInfo(c));if(a[D]===this&&(a[y]=null,a[J]=null,a[D]=null),am(this),null!=b.ping.interval&&(clearInterval(b.ping.interval),b.ping.interval=null),a.destroyed){f(0===a[t]);let b=a[u].splice(a[w]);for(let c=0;c<b.length;c++){let e=b[c];null!=e&&h.errorRequest(a,e,d)}}}function ax(){let a=this[x]||new k("closed",h.getSocketInfo(this)),b=this[D],c=b[r];c[y]!==this&&(b[Y]||null!=c[D]&&c[D]!==b)||(c[y]=null,c[J]=null,c[D]===b&&(c[D]=null),b.destroy(a),c[v]=c[w],f(0===c[s]),c.emit("disconnect",c[p],[c],a),c[H]())}function ay(a){f("ERR_TLS_CERT_ALTNAME_INVALID"!==a.code),this[x]=a,this[D]?.[Y]||this[r][A](a)}function az(){h.destroy(this,new k("other side closed",h.getSocketInfo(this)))}function aA(){this[K]=!0}function aB(){}function aC(a){let b=a[D];a[D]=null,b[T]-=1,0===b[T]&&(al(b),an(b))}function aD(){this.off("error",aB);let a=this[X];this[X]=null,aH(a,new l("HTTP/2: stream closed before response headers")),aC(this)}function aE(){let a=this[X];a&&(aP(this),!a.pendingEnd||a.request.aborted||a.request.completed||(a.request.onResponseEnd(a.trailers||{}),aN(a))),aC(this),this[X]=null}function aF(a){a.off("response",aL),a.off("error",aI),a.off("end",aJ),a.off("timeout",aK),a.off("error",aB)}function aG(a){if(null==a)return;let b=a[X];if(null==b)return;let{request:c}=b;c[V]===a&&ah(c),aF(a),a.destroyed||a.closed||a.once("error",aB)}function aH(a,b){if(null==a)return;let{request:c}=a;a.responseReceived||c.aborted||c.completed||(aG(a.stream),a.abort(b,!0))}function aI(){let a=this[X];"number"==typeof this.rstCode&&0!==this.rstCode?aH(a,new l(`HTTP/2: "stream error" received - code ${this.rstCode}`)):aH(a,new l("HTTP/2: stream errored before response headers"))}function aJ(){aH(this[X],new l("HTTP/2: stream half-closed (remote)"))}function aK(){let a=this[X];aH(a,new l(`HTTP/2: "stream timeout after ${a.headersTimeout}"`))}function aL(a,b){let c=this[X],{request:d}=c;c.responseReceived=!0;let e=a[ad];delete a[ad],d.onRequestUpgrade(e,a,this),d.aborted||d.completed||(aF(this),ah(d),aN(c))}function aM(a,b){let{request:c,headersTimeout:d,session:e}=b;a[Q]=!0,a[D]=e,a[X]=b,b.stream=a,ai(c,a,aG),a.once("response",aL),a.on("error",aI),a.once("end",aJ),a.on("timeout",aK),a.once("close",aD),am(e),++e[T],a.setTimeout(d)}function aN(a,b=!1){a.requestFinalized||(a.requestFinalized=!0,function(a,b,c=!1){let d=a[u],e=a[w];if(e<a[v]&&d[e]===b){a[w]=e+1;return}let f=d.indexOf(b,e);-1!==f&&!(f>=a[v])&&(d.splice(f,1),a[v]--,c&&a[v]<a[w]&&(a[v]=a[w]))}(a.client,a.request,b),a.client[H]())}function aO(a,b,c,d,e,f){try{return c.request(e,f)}catch(f){if(f?.code==="ERR_HTTP2_INVALID_SESSION"||f?.code==="ERR_HTTP2_GOAWAY_SESSION"){let d=new k(f.message,h.getSocketInfo(c[y]));d.cause=f,c[x]=d;let e=c[r],g=c[y];if(e[D]===c&&(e[y]=null,e[J]=null,e[D]=null),null!=g&&null==g[x]&&(g[x]=d),!c.closed&&!c.destroyed)try{c.destroy(d)}catch{}return h.destroy(g,d),a[u].splice(a[v]+1,0,b),null}let e=new l(f.message,{cause:f});return c[x]=e,c[y][x]=e,c.destroy(e),h.destroy(c[y],e),d(e),null}}function aP(a){if(null==a)return;let b=a[X];if(null==b)return;let{request:c}=b;(c[V]===a&&ah(c),!a.destroyed&&!a.closed)&&(a.off("error",aB),a.off("continue",aY),a.off("response",aR),a.off("end",aS),a.off("error",aT),a.off("frameError",aU),a.off("aborted",aV),a.off("timeout",aW),a.off("trailers",aX),a.off("data",aQ),a.once("error",aB))}function aQ(a){let b=this[X];if(null==b)return;let{request:c}=b;c.aborted||c.completed||!1===c.onResponseData(a)&&this.pause()}function aR(a){let b=this[X];if(null==b)return;let{request:c}=b;this.off("response",aR),null==b.body||b.bodySent||this.writableEnded||(this.removeListener("continue",aY),this.end());let d=a[ad];(delete a[ad],c.onResponseStarted(),b.responseReceived=!0,(b.headersTimeout||b.bodyTimeout)&&this.setTimeout(b.bodyTimeout),c.aborted||c.completed)?aP(this):(!1===c.onResponseStart(Number(d),a,this.resume.bind(this),"")&&this.pause(),this.on("data",aQ))}function aS(){let a=this[X];if(null==a)return;let{request:b}=a;this.off("end",aS),a.responseReceived?b.aborted||b.completed||(a.pendingEnd=!0):a.abort(new l("HTTP/2: stream half-closed (remote)"),!0)}function aT(a){let b=this[X];null!=b&&(this.off("error",aT),b.abort(a))}function aU(a,b){let c=this[X];null!=c&&(this.off("frameError",aU),c.abort(new l(`HTTP/2: "frameError" received - type ${a}, code ${b}`)))}function aV(){this.off("data",aQ)}function aW(){let a=this[X];if(null==a)return;this.off("timeout",aW);let b=a.responseReceived?new o(`HTTP/2: "stream timeout after ${a.bodyTimeout}"`):new n(`HTTP/2: "headers timeout after ${a.headersTimeout}"`);a.abort(b)}function aX(a){let b=this[X];if(null==b)return;let{request:c}=b;this.off("trailers",aX),this.off("data",aQ),c.aborted||c.completed||(b.trailers=a)}function aY(){var a,b,c,d,e,i,j;let k,l=this[X];l.bodySent=!0;let{abort:m,body:n,client:o,contentLength:p,expectsPayload:r,request:t}=l;n&&0!==p?h.isBuffer(n)?aZ(m,this,n,o,t,o[y],p,r):h.isBlobLike(n)?"function"==typeof n.stream?a_(m,this,n.stream(),o,t,o[y],p,r):a$(m,this,n,o,t,o[y],p,r):h.isStream(n)?(a=m,b=o[y],c=r,d=this,e=n,i=o,j=t,f(0!==p||0===i[s],"stream body cannot be pipelined"),k=g(e,d,d=>{d?(h.destroy(k,d),a(d)):(h.removeAllListeners(k),j.onRequestSent(),c||(b[q]=!0),i[H]())}),h.addListener(k,"data",function(a){j.onBodySent(a)})):h.isIterable(n)?a_(m,this,n,o,t,o[y],p,r):f(!1):aZ(m,this,null,o,t,o[y],p,r)}function aZ(a,b,c,d,e,g,i,j){try{null!=c&&h.isBuffer(c)&&(f(i===c.byteLength,"buffer body must have content length"),b.cork(),b.write(c),b.uncork(),b.end(),e.onBodySent(c)),j||(g[q]=!0),e.onRequestSent(),d[H]()}catch(b){a(b)}}async function a$(a,b,c,d,e,f,g,h){try{if(null!=g&&g!==c.size)throw new i;let a=Buffer.from(await c.arrayBuffer());b.cork(),b.write(a),b.uncork(),b.end(),e.onBodySent(a),e.onRequestSent(),h||(f[q]=!0),d[H]()}catch(b){a(b)}}async function a_(a,b,c,d,e,g,h,i){f(0!==h||0===d[s],"iterator body cannot be pipelined");let j=null;function k(){if(j){let a=j;j=null,a()}}let l=()=>new Promise((a,b)=>{f(null===j),g[x]?b(g[x]):j=a});b.on("close",k).on("drain",k);try{for await(let a of c){if(g[x])throw g[x];let c=b.write(a);e.onBodySent(a),c||await l()}b.end(),e.onRequestSent(),i||(g[q]=!0),d[H]()}catch(b){a(b)}finally{b.off("close",k).off("drain",k)}}a.exports=function(a,b){a[y]=b;let g=a[E],k=a[F],n=e.connect(a[p],{createConnection:()=>b,peerMaxConcurrentStreams:a[B],settings:{enablePush:!1,...null!=g?{initialWindowSize:g}:null}});return a[y]=b,n[T]=0,n[r]=a,n[y]=b,n[R]={idleTimeout:null,refed:!0,ping:{interval:0===a[C]?null:setInterval(ar,a[C],n).unref()}},n[Y]=!1,n[O]=!1,n[P]=!1,k&&h.addListener(n,"connect",ap.bind(n,k)),h.addListener(n,"error",as),h.addListener(n,"frameError",at),h.addListener(n,"end",au),h.addListener(n,"goaway",av),h.addListener(n,"close",aw),h.addListener(n,"remoteSettings",aq),al(n),a[D]=n,b[D]=n,h.addListener(b,"error",ay),h.addListener(b,"end",az),h.addListener(b,"close",ax),b[K]=!1,b.on("close",aA),{version:"h2",defaultPipelining:1/0,write:b=>(function(a,b){let e=b.headersTimeout??a[M],g=b.bodyTimeout??a[N],k=a[D],{method:n,path:o,host:p,upgrade:q,expectContinue:r,signal:s,protocol:t,headers:u}=b;if(null!=q&&"websocket"!==q)return h.errorRequest(a,b,new m(`Custom upgrade "${q}" not supported over HTTP/2`)),!1;let v=function(a){let b={};for(let c=0;c<a.length;c+=2){let d=a[c+0],e=a[c+1],f=b[d];if("cookie"===d){null!=f?b[d]=Array.isArray(f)?(f.push(e),f):[f,e]:b[d]=e;continue}if("string"==typeof e){b[d]=f?`${f}, ${e}`:e;continue}for(let a=0;a<e.length;a++)b[d]=b[d]?`${b[d]}, ${e[a]}`:e[a]}return b}(u);v[Z]=p||a[G],v[$]=n;let w={abort:null,body:b.body,client:a,contentLength:null,expectsPayload:!1,request:b,headersTimeout:e,bodyTimeout:g,requestFinalized:!1,responseReceived:!1,bodySent:!1,pendingEnd:!1,trailers:null,session:k,stream:null},x=(c,d=!1)=>{if(!b.aborted&&!b.completed){if(c=c||new j,h.errorRequest(a,b,c),null!=w.stream){aj(b);let e=w.stream;e.close(),setImmediate(()=>{e.destroyed||h.destroy(e)}),a[A](c),aN(w,d)}h.destroy(w.body,c)}};w.abort=x;let B=null;try{b.onRequestStart(x,null)}catch(c){h.errorRequest(a,b,c)}if(b.aborted)return!1;if(q||"CONNECT"===n)return(ak(k),"websocket"===q)?!1===k[O]?(h.errorRequest(a,b,new l("HTTP/2: Extended CONNECT protocol not supported by server")),al(k),!1):(v[$]="CONNECT",v[ae]="websocket",v[_]=o,"ws:"===t||"wss:"===t?v[aa]="ws:"===t?"http":"https":v[aa]="http:"===t?"http":"https",null==(B=aO(a,b,k,x,v,{endStream:!1,signal:s})))?(al(k),!1):(aM(B,w),!0):null==(B=aO(a,b,k,x,v,{endStream:!1,signal:s}))?(al(k),!1):(aM(B,w),!0);v[_]=o,v[aa]="http:"===t?"http":"https";let C="PUT"===n||"POST"===n||"PATCH"===n||"QUERY"===n||"PROPFIND"===n||"PROPPATCH"===n,E=w.body;E&&"function"==typeof E.read&&E.read(0);let F=h.bodyLength(E);if(h.isFormDataLike(E)){let[a,b]=(d??=c(35381).extractBody)(E);v["content-type"]=b,E=a.stream,F=a.length}if(null==F&&(F=b.contentLength),0!==F||C||(F=null),"GET"!==n&&"HEAD"!==n&&"OPTIONS"!==n&&"TRACE"!==n&&"CONNECT"!==n&&F>0&&null!=b.contentLength&&b.contentLength!==F){if(a[z])return h.errorRequest(a,b,new i),!1;process.emitWarning(new i)}if(null!=F&&(f(E||0===F,"no body must not have content length"),v[ab]=`${F}`),ak(k),S.sendHeaders.hasSubscribers){let a="";for(let b in v)a+=`${b}: ${v[b]}\r
|
|
384
|
+
`;S.sendHeaders.publish({request:b,headers:a,socket:k[y]})}let H=null===E||0===F;return w.body=E,w.contentLength=F,w.expectsPayload=C,r&&(v[ac]="100-continue"),null!=(B=aO(a,b,k,x,v,{endStream:H,signal:s}))&&(B[Q]=!0,B[X]=w,w.stream=B,am(k),++k[T],e&&B.setTimeout(e),B[D]=k,B.on("close",aE),ai(b,B,aP),r&&B.once("continue",aY),B.on("response",aR),B.on("end",aS),B.on("error",aT),B.on("frameError",aU),B.on("aborted",aV),(e||g)&&B.on("timeout",aW),B.on("trailers",aX),r||aY.call(B),!0)})(a,b),resume(){var b;let c,d;c=(b=a)[y],d=b[D],c?.destroyed===!1&&(0===b[I]||0===b[B]?al(d):ak(d),0===b[I]&&0===d[T]?an(d):am(d))},destroy(a,c){b[K]?queueMicrotask(c):b.destroy(a).on("close",c)},get destroyed(){return b.destroyed},busy(b){if(!1===n[P]&&a[s]>0||a[s]>=a[B])return!0;if(null!=b){if(!(a[s]>0))return("websocket"===b.upgrade||"CONNECT"===b.method)&&!1===n[P];else if(("websocket"===b.upgrade||"CONNECT"===b.method)&&!1===n[P]||0!==h.bodyLength(b.body)&&(h.isStream(b.body)||h.isAsyncIterable(b.body)||h.isFormDataLike(b.body)))return!0}return!1}}}},81283:(a,b,c)=>{"use strict";let{exec:d,spawn:e,execSync:f}=c(79646),g=c(29021),h=c(33873);c(21820);let{log:i,err:j}=c(86772),{TOOL_HOSTS:k}=c(24464),{runElevatedPowerShell:l,isAdmin:m}=c(11380);function n(a,b,c){let d=`${a}.switchboard.new`,e=`${a}.switchboard.bak`;try{g.writeFileSync(d,c,"utf8");try{g.unlinkSync(e)}catch{}g.renameSync(a,e);try{g.renameSync(d,a)}catch(c){try{g.renameSync(e,a)}catch{g.writeFileSync(a,b,"utf8")}throw c}try{g.unlinkSync(e)}catch{}}finally{try{g.unlinkSync(d)}catch{}}}let o="win32"===process.platform,p="darwin"===process.platform,q=o?h.join(process.env.SystemRoot||"C:\\Windows","System32","drivers","etc","hosts"):"/etc/hosts";function r(){if(o)return!1;try{return f("command -v sudo",{stdio:"ignore",windowsHide:!0}),!0}catch{return!1}}function s(){if(o||!r())return!0;try{return f("sudo -n true",{stdio:"ignore",windowsHide:!0}),!0}catch{return!1}}function t(a,b){return new Promise((c,d)=>{let f=r(),g=f?e("sudo",["-S","sh","-c",a],{stdio:["pipe","pipe","pipe"],windowsHide:!0}):e("sh",["-c",a],{stdio:["ignore","pipe","pipe"],windowsHide:!0}),h="",i="";g.stdout.on("data",a=>{h+=a}),g.stderr.on("data",a=>{i+=a}),g.on("close",a=>{0===a?c(h):d(Error(i||`Exit code ${a}`))}),f&&(g.stdin.write(`${b}
|
|
385
|
+
`),g.stdin.end())})}async function u(a){o||(p?await t("dscacheutil -flushcache && killall -HUP mDNSResponder",a):await t("resolvectl flush-caches 2>/dev/null || true",a))}function v(a=null){try{let b=g.readFileSync(q,"utf8");if(a)return b.includes(a);return k.antigravity.every(a=>b.includes(a))}catch{return!1}}async function w(a,b){let c=k[a];if(!c)throw Error(`Unknown tool: ${a}`);let d=c.filter(a=>!v(a));if(0===d.length)return void i(`🌐 DNS ${a}: already active`);try{if(o){let a=g.readFileSync(q,"utf8"),b=a.replace(/[\r\n\s]+$/g,""),c=d.map(a=>`127.0.0.1 ${a}`).join("\r\n"),e=`${b}\r
|
|
386
|
+
${c}\r
|
|
387
|
+
`;n(q,a,e),await l("ipconfig /flushdns | Out-Null")}else{let a=g.readFileSync(q,"utf8").replace(/[\r\n\s]+$/g,""),c=d.map(a=>`127.0.0.1 ${a}`).join("\n"),e=`${a}
|
|
388
|
+
${c}
|
|
389
|
+
`.replace(/'/g,"'\\''");await t(`printf '%s' '${e}' | tee ${q} > /dev/null`,b),await u(b)}i(`🌐 DNS ${a}: ✅ added ${d.join(", ")}`)}catch(a){throw Error(a.message?.includes("incorrect password")?"Wrong sudo password":`Failed to add DNS entry: ${a.message}`)}}async function x(a,b){let c=k[a];if(!c)throw Error(`Unknown tool: ${a}`);let d=c.filter(a=>v(a));if(0===d.length)return void i(`🌐 DNS ${a}: already inactive`);try{if(o){let a=g.readFileSync(q,"utf8"),b=a.split(/\r?\n/).filter(a=>!d.some(b=>a.includes(b))).join("\r\n").replace(/[\r\n\s]+$/g,"")+"\r\n";n(q,a,b),await l("ipconfig /flushdns | Out-Null")}else{let a=(g.readFileSync(q,"utf8").split(/\r?\n/).filter(a=>!d.some(b=>a.includes(b))).join("\n").replace(/[\r\n\s]+$/g,"")+"\n").replace(/'/g,"'\\''");await t(`printf '%s' '${a}' | tee ${q} > /dev/null`,b),await u(b)}i(`🌐 DNS ${a}: ✅ removed ${d.join(", ")}`)}catch(a){throw Error(a.message?.includes("incorrect password")?"Wrong sudo password":`Failed to remove DNS entry: ${a.message}`)}}async function y(a){for(let b of Object.keys(k))try{await x(b,a)}catch(a){j(`DNS ${b}: failed to remove — ${a.message}`)}}a.exports={TOOL_HOSTS:k,addDNSEntry:w,removeDNSEntry:x,removeAllDNSEntries:y,removeAllDNSEntriesSync:function(){try{if(!g.existsSync(q))return;let a=Object.values(k).flat(),b=g.readFileSync(q,"utf8"),c=o?"\r\n":"\n",d=b.split(/\r?\n/).filter(b=>!a.some(a=>b.includes(a))).join(c).replace(/[\r\n\s]+$/g,"")+c;if(d===b)return;if(g.writeFileSync(q,d,"utf8"),o)try{f("ipconfig /flushdns",{windowsHide:!0,stdio:"ignore"})}catch{}else if(p)try{f("dscacheutil -flushcache && killall -HUP mDNSResponder",{stdio:"ignore"})}catch{}else try{f("resolvectl flush-caches 2>/dev/null || true",{stdio:"ignore"})}catch{}}catch{}},execWithPassword:t,isSudoAvailable:r,canRunSudoWithoutPassword:s,isSudoPasswordRequired:function(){return!o&&r()&&!s()},checkDNSEntry:v,checkAllDNSStatus:function(){try{let a=g.readFileSync(q,"utf8"),b={};for(let[c,d]of Object.entries(k))b[c]=d.every(b=>a.includes(b));return b}catch{return Object.fromEntries(Object.keys(k).map(a=>[a,!1]))}}}},81556:(a,b,c)=>{"use strict";c(17438),c(18762),c(99887)},82009:(a,b,c)=>{"use strict";c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},82340:(a,b,c)=>{"use strict";c(68531)},82689:(a,b,c)=>{"use strict";c.d(b,{DR:()=>l,Uc:()=>h,cI:()=>j,eo:()=>i,gx:()=>d,mY:()=>k,pH:()=>g,v1:()=>e}),c(23059);let d={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},e={sessionTtlMs:72e5,sessionCleanupIntervalMs:18e5,dnsCacheTtlMs:3e5,dnsCacheMaxSize:256,proxyDispatchersMaxSize:20};function f(a,b){let c=process.env[a];if(null==c||""===c)return b;let d=parseInt(c,10);return Number.isFinite(d)&&d>0?d:b}f("STREAM_STALL_TIMEOUT_MS",36e4),f("STREAM_FIRST_CHUNK_TIMEOUT_MS",2e5);let g=f("FETCH_CONNECT_TIMEOUT_MS",6e4);f("GEMINI_NATIVE_TTS_FETCH_TIMEOUT_MS",45e3);let h=64e3,i=32e3,j={429:{attempts:0,delayMs:0},502:{attempts:3,delayMs:3e3},503:{attempts:3,delayMs:2e3},504:{attempts:2,delayMs:3e3}},k=2e4;function l(a){return null==a?{attempts:0,delayMs:2e3}:"number"==typeof a?{attempts:a,delayMs:2e3}:{attempts:a.attempts||0,delayMs:null!=a.delayMs?a.delayMs:2e3}}},82703:(a,b,c)=>{"use strict";function d(a,b){let c;if(!a.trim())return;let d=a.match(/^event:\s*(.+)$/m),e=a.match(/^data:\s*(.+)$/m);if(!d||!e)return;let f=d[1].trim(),g=e[1].trim();if("[DONE]"!==g){try{c=JSON.parse(g)}catch{return}"response.created"===f?(b.responseId=c.response?.id||b.responseId,b.created=c.response?.created_at||b.created):"response.output_item.done"===f?b.items.set(c.output_index??0,c.item):"response.completed"===f||"response.done"===f?(b.status="completed",c.response?.usage&&(b.usage.input_tokens=c.response.usage.input_tokens||0,b.usage.output_tokens=c.response.usage.output_tokens||0,b.usage.total_tokens=c.response.usage.total_tokens||0)):"response.failed"===f&&(b.status="failed")}}c.d(b,{convertResponsesStreamToJson:()=>g});let e={input_tokens:0,output_tokens:0,total_tokens:0};class f extends Error{constructor(a){super(`SSE stream exceeded STREAM_TO_JSON_MAX_BYTES (${a} bytes)`),this.name="StreamToJsonMaxBytesError"}}async function g(a,{maxBytes:b}={}){if(!a||"function"!=typeof a.getReader)return{id:`resp_${Date.now()}`,object:"response",created_at:Math.floor(Date.now()/1e3),status:"failed",output:[],usage:{...e}};let c=a.getReader(),h=new TextDecoder,i=function(a){if(Number.isFinite(a)&&a>0)return a;let b=Number.parseInt(globalThis.process?.env?.STREAM_TO_JSON_MAX_BYTES||"",10);return Number.isFinite(b)&&b>0?b:0x1000000}(b),j="",k=0,l={responseId:"",created:Math.floor(Date.now()/1e3),status:"in_progress",usage:{...e},items:new Map};try{for(;;){let{done:a,value:b}=await c.read();if(a)break;if((k+=b?"number"==typeof b.byteLength?b.byteLength:"number"==typeof b.length?b.length:0:0)>i)throw new f(i);let e=(j+=h.decode(b,{stream:!0})).split("\n\n");for(let a of(j=e.pop()||"",e))d(a,l)}let a=h.decode();a&&(j+=a),j.trim()&&d(j,l)}catch(a){try{await c.cancel(a)}catch{}throw a}finally{c.releaseLock()}let m=[],n=l.items.size>0?Math.max(...l.items.keys()):-1;for(let a=0;a<=n;a++)m.push(l.items.get(a)||{type:"message",content:[],role:"assistant"});return{id:l.responseId||`resp_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,object:"response",created_at:l.created,status:l.status||"completed",output:m,usage:l.usage}}},82812:(a,b,c)=>{"use strict";c(11897),c(10962),c(25720),c(49623),c(15251),c(49471),c(82689)},82961:(a,b,c)=>{"use strict";c.d(b,{g:()=>i});var d=c(26762),e=c(74570),f=c(38528);let g={oauthUsageUrl:(0,f.U)("claude").oauthUrl,usageUrl:(0,f.U)("claude").orgUrl,settingsUrl:(0,f.U)("claude").settingsUrl,apiVersion:e.b8},h=new Map;async function i(a,b=null){try{let c=h.get(a);if(c&&Date.now()<c)return await j(a,b);let e=await (0,d.Fm)(g.oauthUsageUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":g.apiVersion}},b);if(e.ok){let a=await e.json(),b={},c=a=>a&&"object"==typeof a&&"number"==typeof a.utilization,d=a=>{let b=a.utilization,c=Math.max(0,100-b);return{used:b,total:100,remaining:c,remainingPercentage:c,resetAt:(0,f.eZ)(a.resets_at),unlimited:!1}};for(let[e,f]of(c(a.five_hour)&&(b["session (5h)"]=d(a.five_hour)),c(a.seven_day)&&(b["weekly (7d)"]=d(a.seven_day)),Object.entries(a)))if(e.startsWith("seven_day_")&&"seven_day"!==e&&c(f)){let a=e.replace("seven_day_","");b[`weekly ${a} (7d)`]=d(f)}return{plan:"Claude Code",extraUsage:a.extra_usage??null,quotas:b}}return 429===e.status&&h.set(a,Date.now()+18e4),console.warn(`[Claude Usage] OAuth endpoint returned ${e.status}, falling back to legacy`),await j(a,b)}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}async function j(a,b=null){try{let c=await (0,d.Fm)(g.settingsUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":g.apiVersion}},b);if(c.ok){let e=await c.json();if(e.organization_id){let c=await (0,d.Fm)(g.usageUrl.replace("{org_id}",e.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":g.apiVersion}},b);if(c.ok){let a=await c.json();return{plan:e.plan||"Unknown",organization:e.organization_name,quotas:a}}}return{plan:e.plan||"Unknown",organization:e.organization_name,message:"Claude connected. Usage details require admin access."}}return{message:"Claude connected. Usage API requires admin permissions."}}catch(a){return{message:`Claude connected. Unable to fetch usage: ${a.message}`}}}},84263:(a,b,c)=>{"use strict";c.d(b,{BL:()=>g});var d=c(32655);c(55511),c(26762);let e=new Map,f=["anthropic_version","anthropic_beta","client_metadata","mcp_servers","stop_sequences","thinking","top_k"];class g extends d.L{constructor(){super("kimchi")}transformRequest(a,b,c,d){let g,h=super.transformRequest(a,b,c,d);if(!h||"object"!=typeof h)return h;for(let a of(!function(a){var b;if(!a?.system||!Array.isArray(a.messages))return;let c=("string"==typeof(b=a.system)?b:Array.isArray(b)?b.map(a=>"string"==typeof a?a:"string"==typeof a?.text?a.text:"").filter(Boolean).join("\n"):"").trim();if(!c)return;let d=a.messages.find(a=>a?.role==="system");d?"string"==typeof d.content?d.content=`${c}
|
|
390
|
+
|
|
391
|
+
${d.content}`:Array.isArray(d.content)&&d.content.unshift({type:"text",text:c}):a.messages.unshift({role:"system",content:c})}(h),f))void 0!==h[a]&&delete h[a];if(delete h.system,g=function(a){if("string"!=typeof a||""===a.trim())return null;let b=a.includes("/")?a.split("/").pop():a;return e.get(b)||e.get(b.toLowerCase())||null}(a),(g?.provider==="anthropic"||g?.upstreamProvider==="anthropic"||/(^|[-_/])(?:claude|anthropic)(?:[-_/]|$)/i.test(String(a||"")))&&(delete h.reasoning_effort,delete h.reasoning,delete h.thinking),Array.isArray(h?.messages))for(let a of h.messages)a&&"object"==typeof a&&(delete a.cache_control,Array.isArray(a.content)&&(a.content=a.content.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,signature:c,...d}=a;return d})));Array.isArray(h?.tools)&&(h.tools=h.tools.map(a=>{if(!a||"object"!=typeof a)return a;let{cache_control:b,...c}=a;return c}));if(Array.isArray(h?.messages))for(let a of h.messages)a&&"assistant"===a.role&&"string"==typeof a.reasoning_content&&a.reasoning_content.length>8&&delete a.reasoning_content;return h}}},84285:(a,b,c)=>{"use strict";let d=c(34589),{kDestroyed:e,kBodyUsed:f,kListeners:g,kBody:h}=c(49176),{IncomingMessage:i}=c(37067),j=c(57075),k=c(77030),{stringify:l}=c(41792),{EventEmitter:m,addAbortListener:n}=c(78474),o=c(64704),{InvalidArgumentError:p,ConnectTimeoutError:q}=c(61448),{headerNameLowerCasedRecord:r}=c(28820),{tree:s}=c(36649);class t{constructor(a){this[h]=a,this[f]=!1}async *[Symbol.asyncIterator](){d(!this[f],"disturbed"),this[f]=!0,yield*this[h]}}function u(){}function v(a){return a&&"object"==typeof a&&"function"==typeof a.pipe&&"function"==typeof a.on}function w(a){return a instanceof Blob}function x(a){return a.includes("?")||a.includes("#")}function y(a){let b=parseInt(a,10);return b===Number(a)&&b>=0&&b<=65535}function z(a){return null!=a&&"h"===a[0]&&"t"===a[1]&&"t"===a[2]&&"p"===a[3]&&(":"===a[4]||"s"===a[4]&&":"===a[5])}function A(a){if("string"==typeof a){if(!z((a=new URL(a)).origin||a.protocol))throw new p("Invalid URL protocol: the URL must start with `http:` or `https:`.");return a}if(!a||"object"!=typeof a)throw new p("Invalid URL: The URL argument must be a non-null object.");if(!(a instanceof URL)){if(null!=a.port&&""!==a.port&&!1===y(a.port))throw new p("Invalid URL: port must be a valid integer or a string representation of an integer.");if(null!=a.path&&"string"!=typeof a.path)throw new p("Invalid URL path: the path must be a string or null/undefined.");if(null!=a.pathname&&"string"!=typeof a.pathname)throw new p("Invalid URL pathname: the pathname must be a string or null/undefined.");if(null!=a.hostname&&"string"!=typeof a.hostname)throw new p("Invalid URL hostname: the hostname must be a string or null/undefined.");if(null!=a.origin&&"string"!=typeof a.origin)throw new p("Invalid URL origin: the origin must be a string or null/undefined.");if(!z(a.origin||a.protocol))throw new p("Invalid URL protocol: the URL must start with `http:` or `https:`.");let b=null!=a.port?a.port:"https:"===a.protocol?443:80,c=null!=a.origin?a.origin:`${a.protocol||""}//${a.hostname||""}:${b}`,d=null!=a.path?a.path:`${a.pathname||""}${a.search||""}`;return"/"===c[c.length-1]&&(c=c.slice(0,c.length-1)),d&&"/"!==d[0]&&(d=`/${d}`),new URL(`${c}${d}`)}if(!z(a.origin||a.protocol))throw new p("Invalid URL protocol: the URL must start with `http:` or `https:`.");return a}function B(a){return null!=a&&("function"==typeof a[Symbol.iterator]||"function"==typeof a[Symbol.asyncIterator])}function C(a){if(null==a)return 0;if(v(a)){let b=a._readableState;return b&&!1===b.objectMode&&!0===b.ended&&Number.isFinite(b.length)?b.length:null}return w(a)?null!=a.size?a.size:null:H(a)?a.byteLength:null}function D(a){return a&&!!(a.destroyed||a[e]||j.isDestroyed?.(a))}function E(a,b){null==a||!v(a)||D(a)||("function"==typeof a.destroy?(Object.getPrototypeOf(a).constructor===i&&(a.socket=null),a.destroy(b)):b&&queueMicrotask(()=>{a.emit("error",b)}),!0!==a.destroyed&&(a[e]=!0))}let F=/timeout=(\d+)/;function G(a){return"string"==typeof a?r[a]??a.toLowerCase():s.lookup(a)??a.toString("latin1").toLowerCase()}function H(a){return a instanceof Uint8Array||Buffer.isBuffer(a)}function I(a){return a&&"object"==typeof a&&"function"==typeof a.append&&"function"==typeof a.delete&&"function"==typeof a.get&&"function"==typeof a.getAll&&"function"==typeof a.has&&"function"==typeof a.set&&"FormData"===a[Symbol.toStringTag]}let J=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,1,1,1,0,0,1,1,0,1,1,0,1,1,1,1,1,1,1,1,1,1,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),K=/^[\^_`a-zA-Z\-0-9!#$%&'*+.|~]+$/,L=/[^\t\x20-\x7e\x80-\xff]/,M=/^bytes (\d+)-(\d+)\/(\d+|\*)?$/,N="win32"===process.platform?(a,b)=>{if(!b.timeout)return u;let c=null,d=null,e=o.setFastTimeout(()=>{c=setImmediate(()=>{d=setImmediate(()=>O(a.deref(),b))})},b.timeout);return()=>{o.clearFastTimeout(e),clearImmediate(c),clearImmediate(d)}}:(a,b)=>{if(!b.timeout)return u;let c=null,d=o.setFastTimeout(()=>{c=setImmediate(()=>{O(a.deref(),b)})},b.timeout);return()=>{o.clearFastTimeout(d),clearImmediate(c)}};function O(a,b){if(null==a)return;let c="Connect Timeout Error";Array.isArray(a.autoSelectFamilyAttemptedAddresses)?c+=` (attempted addresses: ${a.autoSelectFamilyAttemptedAddresses.join(", ")},`:c+=` (attempted address: ${b.hostname}:${b.port},`,E(a,new q(c+=` timeout: ${b.timeout}ms)`))}let P=null,Q=null,R={delete:"DELETE",DELETE:"DELETE",get:"GET",GET:"GET",head:"HEAD",HEAD:"HEAD",options:"OPTIONS",OPTIONS:"OPTIONS",post:"POST",POST:"POST",put:"PUT",PUT:"PUT",query:"QUERY",QUERY:"QUERY"},S={...R,patch:"patch",PATCH:"PATCH"};Object.setPrototypeOf(R,null),Object.setPrototypeOf(S,null),a.exports={kEnumerableProperty:{__proto__:null,enumerable:!0},isDisturbed:function(a){return!!(a&&(j.isDisturbed(a)||a[f]))},isBlobLike:w,parseOrigin:function(a){if("/"!==(a=A(a)).pathname||a.search||a.hash)throw new p("invalid url");return a},parseURL:A,getServerName:function(a){if(!a)return null;d("string"==typeof a);let b=function(a){if("["===a[0]){let b=a.indexOf("]");return d(-1!==b),a.substring(1,b)}let b=a.indexOf(":");return -1===b?a:a.substring(0,b)}(a);return k.isIP(b)?"":b},isStream:v,isIterable:B,hasSafeIterator:function(a){let b=Object.getPrototypeOf(a);return Object.hasOwn(a,Symbol.iterator)||null!=b&&b!==Object.prototype&&"function"==typeof a[Symbol.iterator]},isAsyncIterable:function(a){return null!=a&&"function"==typeof a[Symbol.asyncIterator]},isDestroyed:D,headerNameToString:G,bufferToLowerCasedHeaderName:function(a){return s.lookup(a)??a.toString("latin1").toLowerCase()},addListener:function(a,b,c){return(a[g]??=[]).push([b,c]),a.on(b,c),a},removeAllListeners:function(a){if(null!=a[g]){for(let[b,c]of a[g])a.removeListener(b,c);a[g]=null}return a},errorRequest:function(a,b,c){try{b.onResponseError(c),d(b.aborted)}catch(b){a.emit("error",b)}},parseRawHeaders:function(a){let b,c;if(null==a)return[];if(!Array.isArray(a)){let b=[];for(let[c,d]of Object.entries(a))if(Array.isArray(d))for(let a of d)b.push(c,`${a}`);else b.push(c,`${d}`);return b}let d=a.length,e=Array(d);for(let f=0;f<d;f+=2)b=a[f],c=a[f+1],"string"!=typeof b&&(b=b.toString()),"string"!=typeof c&&(c=c.toString("latin1")),e[f]=b,e[f+1]=c;return e},toRawHeaders:function(a){let b=[];for(let[c,d]of Object.entries(a))if(Array.isArray(d))for(let a of d)b.push(Buffer.from(c,"latin1"),Buffer.from(`${a}`,"latin1"));else b.push(Buffer.from(c,"latin1"),Buffer.from(`${d}`,"latin1"));return b},encodeRawHeaders:function(a){if(!Array.isArray(a))throw TypeError("expected headers to be an array");return a.map(a=>Buffer.from(a))},parseHeaders:function(a,b){void 0===b&&(b={});for(let c=0;c<a.length;c+=2){let d=G(a[c]),e=b[d];if(void 0!==e)if(Object.hasOwn(b,d))"string"==typeof e&&(e=[e],b[d]=e),e.push(a[c+1].toString("latin1"));else{let e="string"==typeof a[c+1]?a[c+1]:Array.isArray(a[c+1])?a[c+1].map(a=>a.toString("latin1")):a[c+1].toString("latin1");"__proto__"===d?Object.defineProperty(b,d,{value:e,enumerable:!0,configurable:!0,writable:!0}):b[d]=e}else{let e="string"==typeof a[c+1]?a[c+1]:Array.isArray(a[c+1])?a[c+1].map(a=>a.toString("latin1")):a[c+1].toString("latin1");b[d]=e}}return b},parseKeepAliveTimeout:function(a){let b=a.match(F);return b?1e3*parseInt(b[1],10):null},destroy:E,bodyLength:C,deepClone:function(a){return JSON.parse(JSON.stringify(a))},ReadableStreamFrom:function(a){let b;return new ReadableStream({start(){b=a[Symbol.asyncIterator]()},pull(a){return b.next().then(({done:b,value:c})=>{if(b)return queueMicrotask(()=>{a.close(),a.byobRequest?.respond(0)});{let b=Buffer.isBuffer(c)?c:Buffer.from(c);return b.byteLength?a.enqueue(new Uint8Array(b)):this.pull(a)}})},cancel:()=>b.return(),type:"bytes"})},isBuffer:H,assertRequestHandler:function(a,b,c){if(!a||"object"!=typeof a)throw new p("handler must be an object");if("function"!=typeof a.onRequestStart)throw new p("invalid onRequestStart method");if("function"!=typeof a.onResponseError)throw new p("invalid onResponseError method");if("function"!=typeof a.onBodySent&&void 0!==a.onBodySent)throw new p("invalid onBodySent method");if("function"!=typeof a.onRequestSent&&void 0!==a.onRequestSent)throw new p("invalid onRequestSent method");if(c||"CONNECT"===b){if("function"!=typeof a.onRequestUpgrade)throw new p("invalid onRequestUpgrade method")}else{if("function"!=typeof a.onResponseStart)throw new p("invalid onResponseStart method");if("function"!=typeof a.onResponseData)throw new p("invalid onResponseData method");if("function"!=typeof a.onResponseEnd)throw new p("invalid onResponseEnd method")}},getSocketInfo:function(a){return{localAddress:a.localAddress,localPort:a.localPort,remoteAddress:a.remoteAddress,remotePort:a.remotePort,remoteFamily:a.remoteFamily,timeout:a.timeout,bytesWritten:a.bytesWritten,bytesRead:a.bytesRead}},isFormDataLike:I,pathHasQueryOrFragment:x,serializePathWithQuery:function(a,b){if(x(a))throw Error('Query params cannot be passed when url already contains "?" or "#".');let c=l(b);return c&&(a+="?"+c),a},addAbortListener:function(a,b){return!a||"aborted"in a?n(a,b)[Symbol.dispose]:"function"==typeof a.addEventListener?(a.addEventListener("abort",b,{once:!0}),()=>a.removeEventListener("abort",b)):(a.once("abort",b),()=>a.removeListener("abort",b))},isValidHTTPToken:function(a){if(a.length>=12)return K.test(a);if(0===a.length)return!1;for(let b=0;b<a.length;b++)if(1!==J[a.charCodeAt(b)])return!1;return!0},isValidHeaderValue:function(a){return!L.test(a)},isTokenCharCode:function(a){return 1===J[a]},parseRangeHeader:function(a){if(null==a||""===a)return{start:0,end:null,size:null};if(!a)return null;let b=M.exec(a);return b?{start:parseInt(b[1]),end:b[2]?parseInt(b[2]):null,size:b[3]&&"*"!==b[3]?parseInt(b[3]):null}:null},normalizedMethodRecordsBase:R,normalizedMethodRecords:S,isValidPort:y,isHttpOrHttpsPrefixed:z,safeHTTPMethods:Object.freeze(["GET","HEAD","OPTIONS","TRACE"]),wrapRequestBody:function(a){return v(a)?(0===C(a)&&a.on("data",function(){d(!1)}),"boolean"!=typeof a.readableDidRead&&(a[f]=!1,m.prototype.on.call(a,"data",function(){this[f]=!0})),a):a&&"function"==typeof a.pipeTo?new t(a):a&&I(a)?a:a&&"string"!=typeof a&&!ArrayBuffer.isView(a)&&B(a)?new t(a):a},setupConnectTimeout:N,getProtocolFromUrlString:function(a){if(a===P)return Q;let b=function(a){if("h"===a[0]&&"t"===a[1]&&"t"===a[2]&&"p"===a[3])switch(a[4]){case":":return"http:";case"s":if(":"===a[5])return"https:"}return a.slice(0,a.indexOf(":")+1)}(a);return P=a,Q=b,b}}},84460:(a,b,c)=>{"use strict";c.d(b,{C:()=>p});var d=c(22268),e=c(68531),f=c(10793),g=c(10962),h=c(22219),i=c(26408),j=c(22435),k=c(11897),l=c(49471),m=c(69226);function n(a,b,c,d=null){let e=new Map,p=(0,l.nl)(null,a).maxOutput||void 0,q={model:a,max_tokens:(0,g.M)(b,p),stream:c};void 0!==b.temperature&&(q.temperature=b.temperature),q.messages=[];let r=[];if(b.messages&&Array.isArray(b.messages)){let a;for(let a of b.messages)a.role===k.z7.SYSTEM&&r.push("string"==typeof a.content?a.content:(0,j.kU)(a.content,"\n"));let c=b.messages.filter(a=>a.role!==k.z7.SYSTEM),d=[],f=()=>{a&&d.length>0&&(q.messages.push({role:a,content:d}),d=[])};for(let b of c){let c=b.role===k.z7.USER||b.role===k.z7.TOOL?k.z7.USER:k.z7.ASSISTANT,g=function(a,b=new Map){let c=[];if(a.role===k.z7.TOOL)c.push({type:k.R4.TOOL_RESULT,tool_use_id:a.tool_call_id,content:a.content});else if(a.role===k.z7.USER){if("string"==typeof a.content)a.content&&c.push({type:k.R4.TEXT,text:a.content});else if(Array.isArray(a.content)){for(let b of a.content)if(b.type===k.x4.TEXT&&b.text)c.push({type:k.R4.TEXT,text:b.text});else if(b.type===k.R4.TOOL_RESULT)c.push({type:k.R4.TOOL_RESULT,tool_use_id:b.tool_use_id,content:b.content,...b.is_error&&{is_error:b.is_error}});else if(b.type===k.x4.IMAGE_URL){let a=b.image_url?.url;if("string"!=typeof a)continue;let d=(0,i.W$)(a);d?c.push({type:k.R4.IMAGE,source:{type:"base64",media_type:d.mimeType,data:d.base64}}):(a.startsWith("http://")||a.startsWith("https://"))&&c.push({type:k.R4.IMAGE,source:{type:"url",url:a}})}else if(b.type===k.x4.IMAGE&&b.source)c.push({type:k.R4.IMAGE,source:b.source});else if(b.type===k.x4.FILE&&b.file){let a=b.file.file_data,d=(0,i.W$)(a);d&&"application/pdf"===d.mimeType&&c.push({type:k.R4.DOCUMENT,source:{type:"base64",media_type:d.mimeType,data:d.base64}})}}}else if(a.role===k.z7.ASSISTANT){let b=Array.isArray(a.content)&&a.content.some(a=>a.type===k.R4.THINKING);if(a.reasoning_content&&!b&&c.push({type:k.R4.THINKING,thinking:a.reasoning_content,signature:a.reasoning_signature||m.xr}),Array.isArray(a.content)){for(let b of a.content)if(b.type===k.x4.TEXT&&b.text)c.push({type:k.R4.TEXT,text:b.text});else if(b.type===k.R4.TOOL_USE)c.push({type:k.R4.TOOL_USE,id:b.id,name:b.name,input:b.input});else if(b.type===k.R4.THINKING){let{cache_control:a,...d}=b;c.push(d)}}else if(a.content){let b="string"==typeof a.content?a.content:(0,j.kU)(a.content,"\n");b&&c.push({type:k.R4.TEXT,text:b})}if(a.tool_calls&&Array.isArray(a.tool_calls)){for(let b of a.tool_calls)if(b.type===k.x4.FUNCTION){if(!b.function||"string"!=typeof b.function.name)continue;let a=""+b.function.name;c.push({type:k.R4.TOOL_USE,id:b.id,name:a,input:(()=>{let a=(0,h.N)(b.function.arguments,null);return a&&"object"==typeof a?a:"object"==typeof b.function.arguments&&null!==b.function.arguments?b.function.arguments:{}})()})}}}return c}(b,e),l=g.some(a=>a.type===k.R4.TOOL_USE);if(g.some(a=>a.type===k.R4.TOOL_RESULT)){let b=g.filter(a=>a.type===k.R4.TOOL_RESULT),e=g.filter(a=>a.type!==k.R4.TOOL_RESULT);f(),b.length>0&&q.messages.push({role:k.z7.USER,content:b}),e.length>0&&(a=c,d.push(...e));continue}a!==c&&(f(),a=c),d.push(...g),l&&f()}f();for(let a=q.messages.length-1;a>=0;a--){let b=q.messages[a];if(b.role===k.z7.ASSISTANT&&Array.isArray(b.content)&&b.content.length>0){let a=[k.R4.TEXT,k.R4.TOOL_USE,k.R4.TOOL_RESULT,k.R4.IMAGE];for(let c=b.content.length-1;c>=0;c--){let d=b.content[c];if(a.includes(d.type)){d.cache_control={type:"ephemeral"};break}}break}}}if(b.response_format){let a=b.response_format;if("json_schema"===a.type&&a.json_schema?.schema){let b=JSON.stringify(a.json_schema.schema,null,2);r.push(`You must respond with valid JSON that strictly follows this JSON schema:
|
|
392
|
+
\`\`\`json
|
|
393
|
+
${b}
|
|
394
|
+
\`\`\`
|
|
395
|
+
Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&r.push("You must respond with valid JSON. Respond ONLY with a JSON object, no other text.")}let s=d?.accessToken||d?.apiKey||"",t="string"==typeof s&&s.includes("sk-ant-oat"),u={type:k.R4.TEXT,text:f.Co};if(r.length>0){let a=r.join("\n"),b={type:k.R4.TEXT,text:a,cache_control:{type:"ephemeral",ttl:"1h"}};q.system=t?[u,b]:[b]}else t&&(q.system=[u]);if(b.tools&&Array.isArray(b.tools)){for(let a of(q.tools=[],b.tools)){let b=a.type;if(b&&b!==k.x4.FUNCTION){q.tools.push(a);continue}let c=a.function??a,d=c.name,f=""+d;e.set(f,d),q.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:[]}})}q.tools.length>0&&(q.tools[q.tools.length-1].cache_control={type:"ephemeral",ttl:"1h"})}return b.tool_choice&&(q.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(o.has(a.type))return a}return{type:"auto"}}(b.tool_choice)),e.size>0&&(q._toolNameMap=e),q}let o=new Set(["auto","any","tool","none"]);function p(a,b,c){let d=n(a,b,c);return d.system&&Array.isArray(d.system)&&(d.system=d.system.filter(a=>!a.text||!a.text.includes("You are Claude Code")),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,n,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")}}let e=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],f=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],g=Array(61).fill(0).map((a,b)=>b.toString().padStart(2,"0"));function h(a){return"number"==typeof a&&(a=new Date(a)),`${e[a.getUTCDay()]}, ${g[a.getUTCDate()]} ${f[a.getUTCMonth()]} ${a.getUTCFullYear()} ${g[a.getUTCHours()]}:${g[a.getUTCMinutes()]}:${g[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:h,stringify:function(a){if(0===a.name.length)return null;b(a.name),c(a.value);let e=[`${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&&e.push("Secure"),a.httpOnly&&e.push("HttpOnly"),"number"==typeof a.maxAge){if(a.maxAge<0)throw Error("Invalid cookie max-age");e.push(`Max-Age=${a.maxAge}`)}if(a.domain){var f=a.domain;if(f.startsWith("-")||f.endsWith(".")||f.endsWith("-"))throw Error("Invalid cookie domain");e.push(`Domain=${a.domain}`)}for(let b of(a.path&&(d(a.path),e.push(`Path=${a.path}`)),a.expires&&"Invalid Date"!==a.expires.toString()&&e.push(`Expires=${h(a.expires)}`),a.sameSite&&e.push(`SameSite=${a.sameSite}`),a.unparsed)){if(!b.includes("="))throw Error("Invalid unparsed");let[a,...c]=b.split("=");e.push(`${a.trim()}=${c.join("=")}`)}return e.join("; ")}}},85513:(a,b,c)=>{"use strict";c.d(b,{i7:()=>e,l6:()=>f});let d=/^[a-z]{2}-[a-z]+-\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(91004);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*$/;function l(a,b=80){return String(a).replace(/[^a-zA-Z0-9]/g,"_").substring(0,b)}function m(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(m(a.url))return null;try{let f=new Date().toISOString().replace(/[:.]/g,"-"),g=l((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:a.url,host:a.headers.host,headers:a.headers,body:i??b.toString("utf8")},null,2)),h}catch{return null}},createResponseDumper:function(a,b="raw"){if(m(a.url))return null;let c=new Date().toISOString().replace(/[:.]/g,"-"),g=l((a.headers.host||"")+a.url),h=e.join(j,`${c}_${b}_${g}.res.txt`),i=0,n={},o=[];return{writeHeader:(a,b)=>{i=a,n=b||{}},writeChunk:a=>{null!=a&&o.push(Buffer.isBuffer(a)?a:Buffer.from(a))},end:()=>{try{let a=Buffer.concat(o),b=n["content-encoding"]||n["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={...n};delete e["content-encoding"],delete e["Content-Encoding"];let g=`STATUS: ${i}
|
|
396
|
+
HEADERS: ${JSON.stringify(e,null,2)}
|
|
397
|
+
---BODY---
|
|
398
|
+
${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{#ac=1048576;#bu=!1;#ad=0;#B=null;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.#ac=a??this.#ac}#bt(a){this.aborted=!0,this.reason=a}onRequestStart(a,b){return a.abort=this.#bt.bind(this),this.#B=a,super.onRequestStart(a,b)}onResponseStart(a,b,c,d){let f=c["content-length"];if(null!=f&&f>this.#ac)throw new e(`Response size (${f}) larger than maxSize (${this.#ac})`);return!0===this.aborted||super.onResponseStart(a,b,c,d)}onResponseError(a,b){this.#bu||(b=this.#B?.reason??b,super.onResponseError(a,b))}onResponseData(a,b){return this.#ad=this.#ad+b.length,this.#ad>=this.#ac&&(this.#bu=!0,!0===this.aborted?super.onResponseError(a,this.reason):super.onResponseEnd(a,{})),!0}onResponseEnd(a,b){if(!this.#bu){if(!0===this.#B.aborted)return void super.onResponseError(a,this.reason);super.onResponseEnd(a,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:()=>ae});var d=c(68531);c(82812),c(25720),c(30816),c(22884),c(39541);var e=c(49623);c(65369),c(15251);var f=c(22268);c(45504);var g=c(84460),h=c(10962),i=c(26408),j=c(90242),k=c(11897);function l(a,b,c){let d={model:a,messages:[],stream:c};if(b.generationConfig){let a=b.generationConfig;if(a.maxOutputTokens){let c={max_tokens:a.maxOutputTokens,tools:b.tools};d.max_tokens=(0,h.M)(c)}void 0!==a.temperature&&(d.temperature=a.temperature),void 0!==a.topP&&(d.top_p=a.topP)}if(b.systemInstruction){var e;let a="string"==typeof(e=b.systemInstruction)?e:e.parts&&Array.isArray(e.parts)?e.parts.map(a=>a.text||"").join(""):"";a&&d.messages.push({role:k.z7.SYSTEM,content:a})}if(b.contents&&Array.isArray(b.contents))for(let a of b.contents){let b=function(a){let b=a.role===k.RV.USER?k.z7.USER:k.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:k.x4.TEXT,text:b.text}),b.inlineData&&c.push({type:k.x4.IMAGE_URL,image_url:{url:(0,i.$q)(b.inlineData.mimeType,b.inlineData.data)}}),b.functionCall&&d.push({id:b.functionCall.id||`call_${b.functionCall.name}`,type:k.x4.FUNCTION,function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse)return{role:k.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:k.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&&d.messages.push(b)}if(b.tools&&Array.isArray(b.tools)){for(let a of(d.tools=[],b.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)d.tools.push({type:k.x4.FUNCTION,function:{name:b.name,description:b.description||"",parameters:b.parameters||{type:"object",properties:{}}}})}return d}function m(a,b,c){if(!b||!Array.isArray(b.contents))return l(a,b,c);let d=[];for(let a of b.contents){if(!a||!Array.isArray(a.parts)||!a.parts.some(a=>a&&a.functionResponse)){d.push(a);continue}for(let b of a.parts)b&&b.functionResponse&&d.push({...a,parts:[b]});let b=a.parts.filter(a=>!(a&&a.functionResponse));b.length>0&&d.push({...a,parts:b})}return l(a,{...b,contents:d},c)}(0,f.kz)(d.h.GEMINI,d.h.OPENAI,m,null),(0,f.kz)(d.h.GEMINI_CLI,d.h.OPENAI,m,null);var n=c(69226),o=c(10793),p=c(22435);function q(){return crypto.randomUUID()}function r(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 s(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 t(a,b,c,d=n.bf){let e={model:a,contents:[],generationConfig:{},safetySettings:p.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),void 0!==b.max_tokens&&(e.generationConfig.maxOutputTokens=b.max_tokens);let f={};if(b.messages&&Array.isArray(b.messages)){for(let a of b.messages)if(a.role===k.z7.ASSISTANT&&a.tool_calls)for(let b of a.tool_calls)b.type===k.x4.FUNCTION&&b.id&&b.function?.name&&(f[b.id]=b.function.name)}let g=new Map;if(b.messages&&Array.isArray(b.messages))for(let a of b.messages)a.role===k.z7.TOOL&&a.tool_call_id&&g.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],h=c.role===k.z7.DEVELOPER?k.z7.SYSTEM:c.role,i=c.content;if(h===k.z7.SYSTEM&&b.messages.length>1){let a="string"==typeof i?i:(0,p.kU)(i);if(a){let b=e.systemInstruction?.parts?.[0]?.text;e.systemInstruction={role:k.RV.USER,parts:[{text:b?`${b}
|
|
399
|
+
${a}`:a}]}}}else if(h===k.z7.USER||h===k.z7.SYSTEM&&1===b.messages.length){let a=(0,p.S6)(i);a.length>0&&e.contents.push({role:k.RV.USER,parts:a})}else if(h===k.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,p.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!==k.x4.FUNCTION)continue;let c=(0,p.pT)(e.function?.arguments||"{}");a.push({thoughtSignature:d,functionCall:{id:e.id,name:r(e.function.name),args:c}}),b.push(e.id)}if(a.length>0&&e.contents.push({role:k.RV.MODEL,parts:a}),b.some(a=>g.has(a))){let a=[];for(let c of b){if(!g.has(c))continue;let b=f[c];if(!b){let a=c.split("-");b=a.length>2?a.slice(0,-2).join("-"):c}let d=g.get(c),e=(0,p.pT)(d);null===e?e={result:d??""}:"object"!=typeof e&&(e={result:e}),a.push({functionResponse:{id:c,name:r(b),response:{result:e}}})}a.length>0&&e.contents.push({role:k.RV.USER,parts:a})}}else a.length>0&&e.contents.push({role:k.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,p.Yr)(structuredClone(c.input_schema||{type:"object",properties:{}}));a.push({name:r(c.name),description:c.description||"",parameters:b})}else if(c.type===k.x4.FUNCTION&&c.function){let b=c.function,d=(0,p.Yr)(structuredClone(b.parameters||{type:"object",properties:{}}));a.push({name:r(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:[r(b)]}}return{mode:"AUTO"}}(b.tool_choice)}),e.contents=s(e.contents),e}function u(a,b,c){return t(a,b,c)}function v(a,b,c){let d=t(a,b,c,n.$G);if(d.tools?.[0]?.functionDeclarations){for(let a of d.tools[0].functionDeclarations)if(a.parameters){let b=(0,p.Yr)(a.parameters);a.parameters=b}}return d}function w(a,b,c=null,d=!1){let f={project:c?.projectId||(0,p.w_)(),model:a,userAgent:d?"antigravity":"gemini-cli",requestId:d?`agent-${q()}`:(0,p.KZ)(),request:{sessionId:(0,e.E9)(c?._clientSessionId)||(d?(0,e.RF)(c?.email||c?.connectionId):(0,p.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:o.$V},{text:`Please ignore the following [ignore]${o.$V}[/ignore]`}];f.request.systemInstruction?.parts?f.request.systemInstruction.parts.unshift(...a):f.request.systemInstruction={role:k.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,u,null),(0,f.kz)(d.h.OPENAI,d.h.GEMINI_CLI,(a,b,c,d)=>w(a,v(a,b,c),d),null),(0,f.kz)(d.h.OPENAI,d.h.ANTIGRAVITY,function(a,b,c,d=null){if(a.toLowerCase().includes("claude")){let f=(0,g.C)(a,b,c);return function(a,b,c=null,d=n.bf){let f={project:c?.projectId||(0,p.w_)(),model:a,userAgent:"antigravity",requestId:`agent-${q()}`,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===k.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===k.R4.TEXT)b.push({text:c.text});else if(c.type===k.R4.TOOL_USE)b.push({thoughtSignature:d,functionCall:{id:c.id,name:r(c.name),args:c.input||{}}});else if(c.type===k.R4.TOOL_RESULT){let a=c.content;Array.isArray(a)&&(a=a.map(a=>a.type===k.R4.TEXT?a.text:JSON.stringify(a)).join("\n"));let d=g[c.tool_use_id]?r(g[c.tool_use_id]):"tool";b.push({functionResponse:{id:c.tool_use_id,name:d,response:{result:(0,p.pT)(a)||a}}})}}else"string"==typeof a.content&&b.push({text:a.content});b.length>0&&f.request.contents.push({role:a.role===k.z7.ASSISTANT?k.RV.MODEL:k.RV.USER,parts:b})}if(b.tools&&Array.isArray(b.tools)){let a=[];for(let c of b.tools)if(c.name&&c.input_schema){let b=(0,p.Yr)(c.input_schema);a.push({name:r(c.name),description:c.description||"",parameters:b})}a.length>0&&(f.request.tools=[{functionDeclarations:a}],f.request.toolConfig={functionCallingConfig:{mode:"VALIDATED"}})}let h=[{text:o.$V},{text:`Please ignore the following [ignore]${o.$V}[/ignore]`}];if(b.system)if(Array.isArray(b.system))for(let a of b.system)a.text&&h.push({text:a.text});else"string"==typeof b.system&&h.push({text:b.system});return f.request.systemInstruction?.parts?f.request.systemInstruction.parts.unshift(...h):f.request.systemInstruction={role:k.RV.USER,parts:h},f.request.contents=s(f.request.contents),f}(a,f,d)}let f=v(a,b,c);return w(a,f,d,!0)},null),(0,f.kz)(d.h.OPENAI,d.h.VERTEX,function(a,b,c,d){var e=u(a,b,c,d);if(!e?.contents)return e;for(let a of e.contents)if(Array.isArray(a.parts))for(let b of a.parts)void 0!==b.thoughtSignature&&(b.thoughtSignature=n.n6),b.functionCall&&"id"in b.functionCall&&delete b.functionCall.id,b.functionResponse&&"id"in b.functionResponse&&delete b.functionResponse.id;return e},null);var x=c(26317);(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=(0,x.Vp)(a.thinkingConfig.thinkingBudget||0);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||"").join(""):"";a&&e.messages.push({role:k.z7.SYSTEM,content:a})}if(d.contents&&Array.isArray(d.contents))for(let a of d.contents){let b=function(a){let b=a.role===k.RV.MODEL?k.z7.ASSISTANT:a.role===k.RV.USER?k.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:k.x4.TEXT,text:b.text});continue}void 0!==b.text&&""!==b.text&&c.push({type:k.x4.TEXT,text:b.text}),b.inlineData&&c.push({type:k.x4.IMAGE_URL,image_url:{url:(0,i.$q)(b.inlineData.mimeType,b.inlineData.data)}}),b.functionCall&&d.push({id:b.functionCall.id||`call_${b.functionCall.name}`,type:k.x4.FUNCTION,function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse&&e.push({role:k.z7.TOOL,tool_call_id:b.functionResponse.id||`call_${b.functionResponse.name}`,content:JSON.stringify(b.functionResponse.response?.result||b.functionResponse.response||{})})}if(e.length>0){if(d.length>0||c.length>0||f){let a={role:k.z7.ASSISTANT};return c.length>0&&(a.content=(0,j.z)(c)),f&&(a.reasoning_content=f),d.length>0&&(a.tool_calls=d),[...e,a]}return e}if(d.length>0){let a={role:k.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:k.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 y=c(27137),z=c(43835);function A(a,b){let c;try{c="string"==typeof b?b:JSON.stringify(b??{})}catch{c="{}"}return`[Tool call: ${a||"unknown"}(${c})]`}function B(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=b.temperature,j=b.top_p,{upstream:l,agentic:m}=(0,z.$D)(a),n=(0,z.P9)(b,d?.rawHeaders,a),{history:o,currentMessage:p}=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===k.z7.TOOL){b.push({role:k.z7.USER,content:B(c.content)});continue}if(c.role===k.z7.ASSISTANT){let a=[];if(Array.isArray(c.content))for(let b of c.content)b.type===k.R4.TOOL_USE?a.push(A(b.name,b.input)):(b.type===k.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(A(b.function?.name,b.function?.arguments));b.push({role:k.z7.ASSISTANT,content:a.filter(Boolean).join("\n")});continue}if(c.role===k.z7.USER&&Array.isArray(c.content)){let a=c.content.map(a=>a.type===k.R4.TOOL_RESULT?{type:k.x4.TEXT,text:B(a.content)}:a);b.push({...c,content:a});continue}b.push(c)}return b}(a));let g=[],h=[],j=[],l=[],m=null,n=!1,o=()=>{if("user"===m){let a={userInputMessage:{content:g.join("\n\n").trim()||"continue",modelId:""}};l.length>0&&(a.userInputMessage.images=l),j.length>0&&(a.userInputMessage.userInputMessageContext={toolResults:j}),f&&!n&&(a.userInputMessage.userInputMessageContext||(a.userInputMessage.userInputMessageContext={}),a.userInputMessage.userInputMessageContext.tools=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??[]}}}}}),n=!0),d.push(a),e=a,g=[],j=[],l=[]}else if("assistant"===m){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===k.z7.SYSTEM;if((e===k.z7.SYSTEM||e===k.z7.TOOL)&&(e=k.z7.USER),e!==m&&null!==m&&o(),m=e,e===k.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===k.x4.TEXT||a.text)b.push(a.text||"");else if(a.type===k.x4.IMAGE_URL){let c=a.image_url?.url||"",d=(0,i.W$)(c);if(d){let a=d.mimeType.split("/")[1]||d.mimeType;l.push({format:a,source:{bytes:d.base64}})}else(c.startsWith("http://")||c.startsWith("https://"))&&b.push(`[Image: ${c}]`)}else if(a.type===k.R4.IMAGE&&a.source?.type==="base64"&&a.source?.data){let b=a.source.media_type||k.BY,c=b.split("/")[1]||b;l.push({format:c,source:{bytes:a.source.data}})}a=b.join("\n");let d=c.content.filter(a=>a.type===k.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===k.z7.TOOL){let a="string"==typeof c.content?c.content:"";j.push({toolUseId:c.tool_call_id,status:"success",content:[{text:a}]})}else a&&g.push(f?`<instructions>
|
|
400
|
+
${a}
|
|
401
|
+
</instructions>`:a)}else if(e===k.z7.ASSISTANT){let a="",b=[];if(Array.isArray(c.content)?(a=c.content.filter(a=>a.type===k.x4.TEXT).map(a=>a.text).join("\n").trim(),b=c.content.filter(a=>a.type===k.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){o();let a=d[d.length-1];a?.assistantResponseMessage&&(a.assistantResponseMessage.toolUses=b.map(a=>a.function?{toolUseId:a.id||(0,y.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,y.A)(),name:a.name,input:a.input||{}})),m=null}}}null!==m&&o();for(let a=d.length-1;a>=0;a--)if(d[a].userInputMessage){e=d.splice(a,1)[0];break}let p=d[0]?.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 q=[];for(let a=0;a<d.length;a++){let b=d[a];if(b.userInputMessage&&q.length>0&&q[q.length-1].userInputMessage){let a=q[q.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 q.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(B(a.content));if(0===f.length)continue;let g=f.join("\n");a.content=a.content?`${a.content}
|
|
402
|
+
|
|
403
|
+
${g}`:g,b.toolResults=e,0!==e.length||b.tools?.length||delete a.userInputMessageContext}}(q,e),p?.length>0&&!e.userInputMessage.userInputMessageContext?.tools&&(e.userInputMessage.userInputMessageContext||(e.userInputMessage.userInputMessageContext={}),e.userInputMessage.userInputMessageContext.tools=p),{history:q,currentMessage:e}}(f,g,l),q=d?.providerSpecificData?.authMethod,r="api_key"===q||"idc"===q||"external_idp"===q?d?.providerSpecificData?.profileArn||"":d?.providerSpecificData?.profileArn||(0,z.We)(q),s=p?.userInputMessage?.content||"",t=new Date().toISOString(),u=[];null!==n&&u.push((0,z.aZ)(n)),u.push(`[Context: Current time is ${t}]`),m&&u.push(z.rG),s=`${u.join("\n\n")}
|
|
404
|
+
|
|
405
|
+
${s}`;let v={conversationState:{chatTriggerType:"MANUAL",conversationId:(0,e.oV)({headers:d?.rawHeaders,body:b,connectionId:d?.connectionId,scope:"kiro"}),currentMessage:{userInputMessage:{content:s,modelId:l,origin:"AI_EDITOR",...p?.userInputMessage?.images?.length>0&&{images:p.userInputMessage.images},...p?.userInputMessage?.userInputMessageContext&&{userInputMessageContext:p.userInputMessage.userInputMessageContext}}},history:o}};return r&&(v.profileArn=r),v.inferenceConfig={},v.inferenceConfig.maxTokens=32e3,void 0!==h&&(v.inferenceConfig.temperature=h),void 0!==j&&(v.inferenceConfig.topP=j),Object.defineProperty(v,"_kiroUpstreamModel",{value:l,enumerable:!1}),v},null);var C=c(82689);function D(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>!!a&&"object"==typeof a&&a.type===k.x4.TEXT&&"string"==typeof a.text).map(a=>a.text||"").join(""):""}function E(a){return a.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function F(a,b,c){let d=(c||"").replace(/[\u0000-\u0008\u000B\u000C\u000E-\u001F\u007F]/g,"");return`<tool_result>
|
|
406
|
+
<tool_name>${E(a||"tool")}</tool_name>
|
|
407
|
+
<tool_call_id>${E(b||"")}</tool_call_id>
|
|
408
|
+
<result>${E(d)}</result>
|
|
409
|
+
</tool_result>`}function G(a){return"string"==typeof a?a.split("\n")[0]:""}(0,f.kz)(d.h.OPENAI,d.h.CURSOR,function(a,b,c,d){let e=function(a){let b=[],c=new Map,d=(a,b)=>{if(!a)return;let d=b||"tool";c.set(a,{name:d});let e=G(a);e&&e!==a&&c.set(e,{name:d})};for(let b of a){if(b.role===k.z7.ASSISTANT&&b.tool_calls)for(let a of b.tool_calls)d(a.id||"",a.function?.name||"tool");if(b.role===k.z7.ASSISTANT&&Array.isArray(b.content))for(let a of b.content)a?.type===k.R4.TOOL_USE&&d(a.id||"",a.name||"tool")}for(let d=0;d<a.length;d++){let e=a[d];if(e.role===k.z7.SYSTEM){b.push({role:k.z7.USER,content:`[System Instructions]
|
|
410
|
+
${D(e.content)}`});continue}if(e.role===k.z7.TOOL){let a=D(e.content),d=e.tool_call_id||"",f=c.get(d)||{},g=e.name||f.name||"tool";b.push({role:k.z7.USER,content:F(g,d,a)});continue}if(e.role===k.z7.USER||e.role===k.z7.ASSISTANT){if(e.role===k.z7.USER&&Array.isArray(e.content)){let a=[];for(let b of e.content)if(b&&"object"==typeof b){if(b.type===k.R4.TEXT){"string"==typeof b.text&&a.push(b.text||"");continue}if(b.type===k.R4.TOOL_RESULT){let d=b.tool_use_id||"",e=c.get(d)||c.get(G(d)),f=e?.name||"tool",g=D(b.content);a.push(F(f,d,g))}}let d=a.filter(Boolean).join("\n");d&&b.push({role:k.z7.USER,content:d});continue}let a=D(e.content);if(e.role===k.z7.ASSISTANT&&e.tool_calls&&e.tool_calls.length>0){let c={role:k.z7.ASSISTANT,content:a||""};c.tool_calls=e.tool_calls.map(a=>{let{index:b,...c}=a||{};return c}),b.push(c)}else if(e.role===k.z7.ASSISTANT&&Array.isArray(e.content)){let c=e.content.filter(a=>a?.type===k.R4.TOOL_USE).map(a=>({id:a.id||"",type:k.x4.FUNCTION,function:{name:a.name||"tool",arguments:JSON.stringify(a.input||{})}})).filter(a=>a.id);c.length>0?b.push({role:k.z7.ASSISTANT,content:a||"",tool_calls:c}):a&&b.push({role:k.z7.ASSISTANT,content:a})}else a&&b.push({role:e.role,content:a})}}return b}(b.messages||[]),{user:f,metadata:g,tool_choice:h,stream_options:i,system:j,...l}=b;return{...l,messages:e,max_tokens:C.eo}},null);var H=c(22219);function I(a){return"string"==typeof a?a:Array.isArray(a)&&a.filter(a=>a&&a.type===k.x4.TEXT&&a.text).map(a=>a.text).join("\n")||""}(0,f.kz)(d.h.OPENAI,d.h.OLLAMA,function(a,b,c){let d={model:a,messages:function(a){if(!Array.isArray(a))return a;let b=[],c=new Map;for(let b of a)if(b.role===k.z7.ASSISTANT&&b.tool_calls)for(let a of b.tool_calls)a.id&&a.function?.name&&c.set(a.id,a.function.name);for(let d of a){if(d.role===k.z7.TOOL){let a=I(d.content)||"",e=c.get(d.tool_call_id)||d.name||"unknown_tool";b.push({role:k.z7.TOOL,tool_name:e,content:a});continue}if(d.role===k.z7.ASSISTANT&&d.tool_calls){let a=I(d.content)||"",c=d.tool_calls.map(a=>({type:k.x4.FUNCTION,function:{index:a.index||0,name:a.function?.name||"",arguments:"string"==typeof a.function?.arguments?(0,H.N)(a.function.arguments||"{}",{}):a.function?.arguments||{}}})),e={role:k.z7.ASSISTANT,content:a,tool_calls:c};d.reasoning_content&&(e.thinking=d.reasoning_content),b.push(e);continue}let a=d.role,e=I(d.content),f=function(a){if(!Array.isArray(a))return[];let b=[];for(let c of a){if(!c||c.type!==k.x4.IMAGE_URL)continue;let a="string"==typeof c.image_url?c.image_url:c.image_url?.url;if("string"!=typeof a||!a)continue;let d=(0,i.W$)(a);d&&b.push(d.base64)}return b}(d.content);if(!e&&a!==k.z7.ASSISTANT)continue;let g={role:a,content:e};f.length>0&&(g.images=f),a===k.z7.ASSISTANT&&d.reasoning_content&&(g.thinking=d.reasoning_content),b.push(g)}return b}(b.messages),stream:c};return void 0!==b.temperature&&(d.options=d.options||{},d.options.temperature=b.temperature),void 0!==b.max_tokens&&(d.options=d.options||{},d.options.num_predict=b.max_tokens),void 0!==b.top_p&&(d.options=d.options||{},d.options.top_p=b.top_p),b.tools&&Array.isArray(b.tools)&&(d.tools=b.tools),b.tool_choice&&(d.tool_choice=b.tool_choice),d},null);var J=c(55511);function K(a){if(null==a)return"";if("string"==typeof a)return a;if(Array.isArray(a)){let b=[];for(let c of a)"string"==typeof c?b.push(c):c&&"object"==typeof c&&"string"==typeof c.text&&b.push(c.text);return b.join("\n")}return String(a)}(0,f.kz)(d.h.OPENAI,d.h.COMMANDCODE,function(a,b,c){let{messages:d,system:e}=function(a=[]){let b=[],c=[];for(let d of a){if(!d)continue;let a=d.role;if(a===k.z7.SYSTEM){let a=K(d.content);a&&c.push(a);continue}if(a===k.z7.TOOL){let a="string"==typeof d.content?d.content:K(d.content);b.push({role:k.z7.TOOL,content:[{type:"tool-result",toolCallId:d.tool_call_id||"",toolName:d.name||"",output:{type:"text",value:a}}]});continue}if(a===k.z7.ASSISTANT){let a=[],c=K(d.content);if(d.reasoning_content&&a.push({type:"reasoning",text:d.reasoning_content}),c&&a.push({type:k.x4.TEXT,text:c}),Array.isArray(d.tool_calls))for(let b of d.tool_calls){let c=b.function||{};a.push({type:"tool-call",toolCallId:b.id||"",toolName:c.name||"",input:function(a){if(null==a)return{};if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return{}}}(c.arguments)})}b.push({role:k.z7.ASSISTANT,content:a.length?a:[{type:k.x4.TEXT,text:""}]});continue}b.push({role:k.z7.USER,content:function(a){if(null==a)return[{type:k.x4.TEXT,text:""}];if("string"==typeof a)return[{type:k.x4.TEXT,text:a}];if(Array.isArray(a)){let b=[];for(let c of a)"string"==typeof c?b.push({type:k.x4.TEXT,text:c}):c&&"object"==typeof c&&(c.type===k.x4.TEXT&&"string"==typeof c.text?b.push({type:k.x4.TEXT,text:c.text}):c.type===k.x4.IMAGE_URL||c.type===k.x4.IMAGE?b.push({type:k.x4.TEXT,text:"[image omitted]"}):"string"==typeof c.text&&b.push({type:k.x4.TEXT,text:c.text}));return b.length?b:[{type:k.x4.TEXT,text:""}]}return[{type:k.x4.TEXT,text:String(a)}]}(d.content)})}return{messages:b,system:c.join("\n\n")}}(b.messages),f={model:a,messages:d,stream:!1!==c,max_tokens:b.max_tokens??b.max_output_tokens??C.Uc,temperature:b.temperature??.3};e&&(f.system=e);let g=function(a){if(!Array.isArray(a)||0===a.length)return;let b=[];for(let c of a)c&&(c.type===k.x4.FUNCTION&&c.function?b.push({name:c.function.name,description:c.function.description,input_schema:c.function.parameters||{type:"object"}}):c.name&&(c.input_schema||c.parameters)&&b.push({name:c.name,description:c.description,input_schema:c.input_schema||c.parameters}));return b.length?b:void 0}(b.tools);g&&(f.tools=g),null!=b.top_p&&(f.top_p=b.top_p);let h=new Date().toISOString().slice(0,10);return{threadId:(0,J.randomUUID)(),memory:"",config:{workingDir:process.cwd(),date:h,environment:process.platform,structure:[],isGitRepo:!1,currentBranch:"",mainBranch:"",gitStatus:"",recentCommits:[]},params:f}},null),(0,f.kz)(d.h.CLAUDE,d.h.KIRO,function(a,b,c,d){let e,f=Array.isArray(b.messages)?b.messages:[],g=Array.isArray(b.tools)?b.tools:[],h=g.length>0,i=b.max_tokens||32e3,j=b.temperature,l=b.top_p,{upstream:m,agentic:n}=(0,z.$D)(a),o=(0,z.P9)(b,d?.rawHeaders,a);h||(f=function(a){let b=[];for(let c of a)if(c){if(c.role===k.z7.ASSISTANT&&Array.isArray(c.content)){let a=[];for(let b of c.content)b.type===k.R4.TEXT&&b.text?a.push(b.text):b.type===k.R4.TOOL_USE&&a.push(function(a,b){let c;try{c="string"==typeof b?b:JSON.stringify(b??{})}catch{c="{}"}return`[Tool call: ${a||"unknown"}(${c})]`}(b.name,b.input));b.push({...c,content:a.join("\n")});continue}if(c.role===k.z7.USER&&Array.isArray(c.content)){let a=c.content.map(a=>a.type===k.R4.TOOL_RESULT?{type:k.R4.TEXT,text:function(a){let b="";if("string"==typeof a)b=a;else if(Array.isArray(a))b=a.map(a=>"string"==typeof a?a:a?.text||"").filter(Boolean).join("\n");else if(a)try{b=JSON.stringify(a)}catch{b=""}return`[Tool result: ${b}]`}(a.content)}:a);b.push({...c,content:a});continue}b.push(c)}return b}(f));let{history:p,currentMessage:q}=function(a,b,c){let d=[],e=null,f=[],g=[],h=[],i=[],j=null,l=!1,m=Array.isArray(b)&&b.length>0,n=()=>{if(j===k.z7.USER){let a={userInputMessage:{content:f.join("\n\n").trim()||"continue",modelId:c}};i.length>0&&(a.userInputMessage.images=i),h.length>0&&(a.userInputMessage.userInputMessageContext={toolResults:h}),m&&!l&&(a.userInputMessage.userInputMessageContext||(a.userInputMessage.userInputMessageContext={}),a.userInputMessage.userInputMessageContext.tools=b.map(a=>{let b=a.name,c=a.description||`Tool: ${b}`,d=a.input_schema||{};return{toolSpecification:{name:b,description:c,inputSchema:{json:0===Object.keys(d).length?{type:"object",properties:{},required:[]}:{...d,required:d.required??[]}}}}}),l=!0),d.push(a),e=a,f=[],h=[],i=[]}else if(j===k.z7.ASSISTANT){let a=g.join("\n\n").trim()||"...";d.push({assistantResponseMessage:{content:a}}),g=[]}};for(let b of a){let a=b.role;if(a!==j&&null!==j&&n(),j=a,a===k.z7.USER){if("string"==typeof b.content)f.push(b.content);else if(Array.isArray(b.content)){for(let a of b.content)if(a.type===k.R4.TEXT)f.push(a.text);else if(a.type===k.R4.IMAGE&&a.source?.type==="base64"){let b=a.source.media_type||k.BY,c=b.split("/")[1]||b;i.push({format:c,source:{bytes:a.source.data}})}else if(a.type===k.R4.TOOL_RESULT){let b="";"string"==typeof a.content?b=a.content:Array.isArray(a.content)?b=a.content.filter(a=>a.type===k.R4.TEXT).map(a=>a.text).join("\n")||JSON.stringify(a.content):a.content&&(b=JSON.stringify(a.content)),h.push({toolUseId:a.tool_use_id,status:"success",content:[{text:b}]})}}}else if(a===k.z7.ASSISTANT){let a="",c=[];if("string"==typeof b.content)a=b.content;else if(Array.isArray(b.content))for(let d of b.content)d.type===k.R4.TEXT?a+=d.text:d.type===k.R4.TOOL_USE&&c.push({toolUseId:d.id,name:d.name,input:d.input||{}});if(a&&g.push(a),c.length>0){n();let a=d[d.length-1];a?.assistantResponseMessage&&(a.assistantResponseMessage.toolUses=c),j=null}}}null!==j&&n();for(let a=d.length-1;a>=0;a--)if(d[a].userInputMessage){e=d.splice(a,1)[0];break}let o=d[0]?.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 p=[];for(let a of d){let b=p[p.length-1];if(a.userInputMessage&&b?.userInputMessage){b.userInputMessage.content+="\n\n"+a.userInputMessage.content;let c=b.userInputMessage.userInputMessageContext,d=a.userInputMessage.userInputMessageContext;d&&(c?(d.toolResults?.length>0&&(c.toolResults=[...c.toolResults||[],...d.toolResults]),d.tools?.length>0&&(c.tools=[...c.tools||[],...d.tools])):b.userInputMessage.userInputMessageContext=d)}else p.push(a)}return e||(e={userInputMessage:{content:"",modelId:c}}),o?.length>0&&!e.userInputMessage.userInputMessageContext?.tools&&(e.userInputMessage.userInputMessageContext||(e.userInputMessage.userInputMessageContext={}),e.userInputMessage.userInputMessageContext.tools=o),{history:p,currentMessage:e}}(f,g,m);h&&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)if(c.has(a.toolUseId))e.push(a);else{let b=Array.isArray(a.content)?a.content.map(a=>a?.text||"").join("\n"):"";f.push(`[Tool result: ${b}]`)}if(0===f.length)continue;let g=f.join("\n");a.content=a.content?`${a.content}
|
|
411
|
+
|
|
412
|
+
${g}`:g,b.toolResults=e,0!==e.length||b.tools?.length||delete a.userInputMessageContext}}(p,q);let r=d?.providerSpecificData?.authMethod,s="api_key"===r||"idc"===r||"external_idp"===r?d?.providerSpecificData?.profileArn||"":d?.providerSpecificData?.profileArn||(0,z.We)(r),t=q?.userInputMessage?.content||"";if(b.system){let a="";"string"==typeof b.system?a=b.system:Array.isArray(b.system)&&(a=b.system.map(a=>a.text||"").join("\n")),a&&(e=a,t=`<instructions>
|
|
413
|
+
${a}
|
|
414
|
+
</instructions>
|
|
415
|
+
|
|
416
|
+
${t}`)}let u=new Date().toISOString(),v=[];null!==o&&v.push((0,z.aZ)(o)),v.push(`[Context: Current time is ${u}]`),n&&v.push(z.rG);let w={content:t=`${v.join("\n\n")}
|
|
417
|
+
|
|
418
|
+
${t}`,modelId:m,origin:"AI_EDITOR",...q?.userInputMessage?.userInputMessageContext&&{userInputMessageContext:q.userInputMessage.userInputMessageContext},...q?.userInputMessage?.images&&{images:q.userInputMessage.images}};e&&(w.systemInstruction=e);let x={conversationState:{chatTriggerType:"MANUAL",conversationId:(0,y.A)(),currentMessage:{userInputMessage:w},history:p}};return s&&(x.profileArn=s),(i||void 0!==j||void 0!==l)&&(x.inferenceConfig={},i&&(x.inferenceConfig.maxTokens=i),void 0!==j&&(x.inferenceConfig.temperature=j),void 0!==l&&(x.inferenceConfig.topP=l)),Object.defineProperty(x,"_kiroUpstreamModel",{value:m,enumerable:!1}),x},null);var L=c(18184),M=c(90694),N=c(29055),O=c(96684);function P(a,b,c=null){return(0,L.k)({id:`chatcmpl-${a.messageId}`,created:Math.floor(Date.now()/1e3),model:a.model},b,c)}(0,f.kz)(d.h.CLAUDE,d.h.OPENAI,null,function(a,b){if(!a)return null;let c=[];switch(a.type){case"message_start":{b.messageId=a.message?.id||`msg_${Date.now()}`,b.model=a.message?.model,b.toolCallIndex=0;let d=a.message?.usage;if(d&&"object"==typeof d){let a="number"==typeof d.input_tokens?d.input_tokens:0,c="number"==typeof d.cache_read_input_tokens?d.cache_read_input_tokens:0,e="number"==typeof d.cache_creation_input_tokens?d.cache_creation_input_tokens:0,f=a+c+e;b.usage={prompt_tokens:f,completion_tokens:0,total_tokens:f,input_tokens:a,output_tokens:0},c>0&&(b.usage.cache_read_input_tokens=c),e>0&&(b.usage.cache_creation_input_tokens=e)}c.push(P(b,{role:k.z7.ASSISTANT}));break}case"content_block_start":{let d=a.content_block;if(d?.type==="server_tool_use"){b.serverToolBlockIndex=a.index;break}if(d?.type===k.R4.TEXT)b.textBlockStarted=!0;else if(d?.type===k.R4.THINKING)b.inThinkingBlock=!0,b.currentBlockIndex=a.index,c.push(P(b,{content:"<think>"}));else if(d?.type===k.R4.TOOL_USE){let e=b.toolCallIndex++,f=b.toolNameMap?.get(d.name)||d.name,g={index:e,id:d.id,type:k.x4.FUNCTION,function:{name:f,arguments:""}};b.toolCalls.set(a.index,g),c.push(P(b,{tool_calls:[g]}))}break}case"content_block_delta":{if(a.index===b.serverToolBlockIndex)break;let d=a.delta;if(d?.type==="text_delta"&&d.text)c.push(P(b,{content:d.text}));else if(d?.type==="thinking_delta"&&d.thinking)c.push(P(b,(0,N.B)(d.thinking)));else if(d?.type==="input_json_delta"&&d.partial_json){let e=b.toolCalls.get(a.index);e&&(e.function.arguments+=d.partial_json,c.push(P(b,{tool_calls:[{index:e.index,id:e.id,function:{arguments:d.partial_json}}]})))}break}case"content_block_stop":if(a.index===b.serverToolBlockIndex){b.serverToolBlockIndex=-1;break}b.inThinkingBlock&&a.index===b.currentBlockIndex&&(c.push(P(b,{content:"</think>"})),b.inThinkingBlock=!1),b.textBlockStarted=!1,b.thinkingBlockStarted=!1;break;case"message_delta":if(a.usage&&"object"==typeof a.usage){let c=b.usage||{},d="number"==typeof a.usage.input_tokens?a.usage.input_tokens:c.input_tokens||0,e="number"==typeof a.usage.output_tokens?a.usage.output_tokens:0,f="number"==typeof a.usage.cache_read_input_tokens?a.usage.cache_read_input_tokens:c.cache_read_input_tokens||0,g="number"==typeof a.usage.cache_creation_input_tokens?a.usage.cache_creation_input_tokens:c.cache_creation_input_tokens||0,h=d+f+g;b.usage={prompt_tokens:h,completion_tokens:e,total_tokens:h+e,input_tokens:d,output_tokens:e},f>0&&(b.usage.cache_read_input_tokens=f),g>0&&(b.usage.cache_creation_input_tokens=g)}if(a.delta?.stop_reason){let d;d=a.delta.stop_reason,b.finishReason=(0,O.F)(d,"claude");let e=P(b,{},b.finishReason);b.usage&&(e.usage=(0,M.B)({input_tokens:b.usage.input_tokens||0,output_tokens:b.usage.output_tokens||0,cache_read_input_tokens:b.usage.cache_read_input_tokens,cache_creation_input_tokens:b.usage.cache_creation_input_tokens},"claude")),c.push(e),b.finishReasonSent=!0}break;case"message_stop":if(!b.finishReasonSent){let a=b.finishReason||(b.toolCalls?.size>0?k.bC.TOOL_CALLS:k.bC.STOP),d=b.usage&&"object"==typeof b.usage?{usage:{prompt_tokens:b.usage.input_tokens||0,completion_tokens:b.usage.output_tokens||0,total_tokens:(b.usage.input_tokens||0)+(b.usage.output_tokens||0)}}:{};c.push({...P(b,{},a),...d}),b.finishReasonSent=!0}}return c.length>0?c:null});let Q="proxy_";function R(a,b){try{let c=JSON.parse(b),d=a.startsWith(Q)?a.slice(Q.length):a;return"Read"===d&&S(c),JSON.stringify(c)}catch{let c=function(a){if(!a||a.length<4)return a;for(let b=2;b<=Math.floor(a.length/2);b++){let c=a.slice(0,b);if(c===a.slice(b))return c}return a}(b);if(c!==b)try{let b=JSON.parse(c),d=a.startsWith(Q)?a.slice(Q.length):a;return"Read"===d&&S(b),JSON.stringify(b)}catch{}return b}}function S(a){var b,c;"string"==typeof a.limit&&/^\d+$/.test(a.limit)&&(a.limit=Number(a.limit)),"string"==typeof a.offset&&/^-?\d+$/.test(a.offset)&&(a.offset=Number(a.offset)),"number"==typeof a.limit&&(a.limit>2e3&&(a.limit=2e3),a.limit<1&&delete a.limit),"number"==typeof a.offset&&a.offset<0&&(a.offset=0),"pages"in a&&(b=a.file_path,c=a.pages,!("string"==typeof b&&b.toLowerCase().endsWith(".pdf")&&"string"==typeof c&&/^\d+(?:-\d+)?$/.test(c)))&&delete a.pages}function T(a,b){a.thinkingBlockStarted&&(b.push({type:"content_block_stop",index:a.thinkingBlockIndex}),a.thinkingBlockStarted=!1)}function U(a,b){a.textBlockStarted&&!a.textBlockClosed&&(a.textBlockClosed=!0,b.push({type:"content_block_stop",index:a.textBlockIndex}),a.textBlockStarted=!1)}function V(a){return{id:`chatcmpl-${a.messageId}`,created:Math.floor(Date.now()/1e3),model:a.model}}function W(a,b){let c=a.name,d=b.toolNameMap?.get(c)||c,e=a.args||{},f=b.functionIndex++,g={id:`${d}-${Date.now()}-${f}`,index:f,type:k.x4.FUNCTION,function:{name:d,arguments:JSON.stringify(e)}};return b.geminiToolCallCount=(b.geminiToolCallCount||0)+1,(0,L.k)(V(b),{tool_calls:[g]},null)}function X(a,b){if(!a)return null;let c=a.response||a;if(!c||!c.candidates?.[0])return null;let d=[],e=c.candidates[0],f=e.content;if(b.messageId||(b.messageId=c.responseId||`msg_${Date.now()}`,b.model=c.modelVersion||"gemini",b.functionIndex=0,b.geminiToolCallCount=0,d.push((0,L.k)(V(b),{role:k.z7.ASSISTANT},null))),f?.parts)for(let a of f.parts){let c=a.thoughtSignature||a.thought_signature,e=!0===a.thought;if(c){let c=void 0!==a.text&&""!==a.text,f=!!a.functionCall;c&&d.push((0,L.k)(V(b),e?(0,N.B)(a.text):{content:a.text},null)),f&&d.push(W(a.functionCall,b));continue}void 0!==a.text&&""!==a.text&&d.push((0,L.k)(V(b),e?(0,N.B)(a.text):{content:a.text},null)),a.functionCall&&d.push(W(a.functionCall,b));let f=a.inlineData||a.inline_data;if(f?.data){let a=f.mimeType||f.mime_type||k.BY;d.push((0,L.k)(V(b),{images:[{type:k.x4.IMAGE_URL,image_url:{url:(0,i.$q)(a,f.data)}}]},null))}}let g=c.usageMetadata||a.usageMetadata,h=(0,M.B)(g,"gemini");if(h&&(b.usage=h),e.finishReason){let a=(0,O.F)(e.finishReason,"gemini");a===k.bC.STOP&&b.geminiToolCallCount>0&&(a=k.bC.TOOL_CALLS);let c=(0,L.k)(V(b),{},a);b.usage&&(c.usage=b.usage),d.push(c),b.finishReason=a}return d.length>0?d:null}(0,f.kz)(d.h.OPENAI,d.h.CLAUDE,null,function(a,b){let c=[];if(null===a&&!b.claudeFinishHandled){for(let[a,d]of(b.claudeFinishHandled=!0,T(b,c),U(b,c),b.toolCalls)){let e=b.toolArgBuffers?.get(a);if(e){let a=R(d.name,e);c.push({type:"content_block_delta",index:d.blockIndex,delta:{type:"input_json_delta",partial_json:a}})}c.push({type:"content_block_stop",index:d.blockIndex})}b.finishReason="stop";let a=b.usage||{input_tokens:0,output_tokens:0};return c.push({type:"message_delta",delta:{stop_reason:"end_turn"},usage:a}),c.push({type:"message_stop"}),c.length>0?c:null}if(!a||!a.choices?.[0])return null;let d=a.choices[0],e=d.delta;if(a.usage&&"object"==typeof a.usage){let c="number"==typeof a.usage.prompt_tokens?a.usage.prompt_tokens:0,d="number"==typeof a.usage.completion_tokens?a.usage.completion_tokens:0,e=a.usage.prompt_tokens_details?.cached_tokens,f=a.usage.prompt_tokens_details?.cache_creation_tokens,g="number"==typeof e?e:0,h="number"==typeof f?f:0;b.usage={input_tokens:c-g-h,output_tokens:d},g>0&&(b.usage.cache_read_input_tokens=g),h>0&&(b.usage.cache_creation_input_tokens=h)}b.messageStartSent||(b.messageStartSent=!0,b.messageId=a.id?.replace("chatcmpl-","")||`msg_${Date.now()}`,(!b.messageId||"chat"===b.messageId||b.messageId.length<8)&&(b.messageId=a.extend_fields?.requestId||a.extend_fields?.traceId||`msg_${Date.now()}`),b.model=a.model||k.rP,b.nextBlockIndex=0,c.push({type:"message_start",message:{id:b.messageId,type:"message",role:k.z7.ASSISTANT,model:b.model,content:[],stop_reason:null,stop_sequence:null,usage:{input_tokens:0,output_tokens:0}}}));let f=(0,N.V)(e);if(f&&(U(b,c),b.thinkingBlockStarted||(b.thinkingBlockIndex=b.nextBlockIndex++,b.thinkingBlockStarted=!0,c.push({type:"content_block_start",index:b.thinkingBlockIndex,content_block:{type:k.R4.THINKING,thinking:""}})),c.push({type:"content_block_delta",index:b.thinkingBlockIndex,delta:{type:"thinking_delta",thinking:f}})),e?.content&&(T(b,c),b.textBlockStarted||(b.textBlockIndex=b.nextBlockIndex++,b.textBlockStarted=!0,b.textBlockClosed=!1,c.push({type:"content_block_start",index:b.textBlockIndex,content_block:{type:k.R4.TEXT,text:""}})),c.push({type:"content_block_delta",index:b.textBlockIndex,delta:{type:"text_delta",text:e.content}})),e?.tool_calls)for(let a of e.tool_calls){let d=a.index??0;if(!b.toolCalls.has(d)&&(a.id||a.function?.name||a.function?.arguments)){T(b,c),U(b,c);let e=b.nextBlockIndex++,f=a.id||`toolu_${Date.now()}_${d}`;b.toolCalls.set(d,{id:f,name:a.function?.name||"",blockIndex:e});let g=a.function?.name||"";g.startsWith(Q)&&(g=g.slice(Q.length)),c.push({type:"content_block_start",index:e,content_block:{type:k.R4.TOOL_USE,id:f,name:g,input:{}}})}else if(a.id&&b.toolCalls.has(d)){let c=b.toolCalls.get(d);c&&String(c.id).startsWith("toolu_")&&(c.id=a.id)}a.function?.arguments&&b.toolCalls.get(d)&&(b.toolArgBuffers||(b.toolArgBuffers=new Map),b.toolArgBuffers.set(d,(b.toolArgBuffers.get(d)||"")+a.function.arguments))}if(d.finish_reason&&!b.claudeFinishHandled){let a;for(let[a,d]of(b.claudeFinishHandled=!0,T(b,c),U(b,c),b.toolCalls)){let e=b.toolArgBuffers?.get(a);if(e){let a=R(d.name,e);c.push({type:"content_block_delta",index:d.blockIndex,delta:{type:"input_json_delta",partial_json:a}})}c.push({type:"content_block_stop",index:d.blockIndex})}b.finishReason=d.finish_reason;let e=b.usage||{input_tokens:0,output_tokens:0};c.push({type:"message_delta",delta:{stop_reason:(a=d.finish_reason,(0,O.Q)(a,"claude"))},usage:e}),c.push({type:"message_stop"})}return c.length>0?c:null}),(0,f.kz)(d.h.GEMINI,d.h.OPENAI,null,X),(0,f.kz)(d.h.GEMINI_CLI,d.h.OPENAI,null,X),(0,f.kz)(d.h.ANTIGRAVITY,d.h.OPENAI,null,X),(0,f.kz)(d.h.VERTEX,d.h.OPENAI,null,X);let Y={[k.bC.STOP]:k.a_.STOP,[k.bC.LENGTH]:k.a_.MAX_TOKENS,[k.bC.TOOL_CALLS]:k.a_.STOP,[k.bC.CONTENT_FILTER]:k.a_.SAFETY};function Z(a,b){for(let c of Object.keys(a._toolCallAccum)){let d=a._toolCallAccum[c],e={};try{e=JSON.parse(d.arguments)}catch{}let f=a.toolNameMap?.get(d.name)||d.name;b.push({functionCall:{name:f,args:e}})}}function $(a,b,c=null,d=a._usage){let e={content:{role:k.RV.MODEL,parts:b}};c&&(e.finishReason=Y[c]||k.a_.STOP);let f={candidates:[e],modelVersion:a._modelVersion,responseId:a._responseId};return d&&(f.usageMetadata={promptTokenCount:d.prompt_tokens||0,candidatesTokenCount:d.completion_tokens||0,totalTokenCount:d.total_tokens||0},d.completion_tokens_details?.reasoning_tokens&&(f.usageMetadata.thoughtsTokenCount=d.completion_tokens_details.reasoning_tokens),d.prompt_tokens_details?.cached_tokens&&(f.usageMetadata.cachedContentTokenCount=d.prompt_tokens_details.cached_tokens)),{response:f}}function _(a,b){if(b._toolCallAccum||(b._toolCallAccum={}),null===a){if(b._finishHandled)return null;b._responseId||(b._responseId=`resp_${Date.now()}`),b._modelVersion||(b._modelVersion=""),b._finishHandled=!0;let a=[];return Z(b,a),0===a.length&&a.push({text:""}),$(b,a,k.bC.STOP)}if(!a)return null;a.usage&&"object"==typeof a.usage&&(b._usage=a.usage);let c=a.choices?.[0];if(!c)return null;let d=c.delta||{},e=c.finish_reason;if(e&&b._finishHandled)return null;b._responseId||(b._responseId=a.id||`resp_${Date.now()}`),b._modelVersion||(b._modelVersion=a.model||"");let f=[];if(d.reasoning_content&&f.push({thought:!0,text:d.reasoning_content}),d.content&&f.push({text:d.content}),d.tool_calls){for(let a of d.tool_calls){let c=a.index??0;b._toolCallAccum[c]||(b._toolCallAccum[c]={id:"",name:"",arguments:""});let d=b._toolCallAccum[c];if(a.id&&(d.id=a.id),a.function?.name){let b=a.function.name;d.name?d.name.endsWith(b)||b.startsWith(d.name)||(d.name+=b):d.name=b}a.function?.arguments&&(d.arguments+=a.function.arguments)}if(0===f.length&&!e)return null}return(e&&(Z(b,f),b._finishHandled=!0),0!==f.length||e)?(0===f.length&&e&&f.push({text:""}),$(b,f,e,a.usage||b._usage)):null}(0,f.kz)(d.h.OPENAI,d.h.ANTIGRAVITY,null,_),(0,f.kz)(d.h.OPENAI,d.h.GEMINI,null,_),(0,f.kz)(d.h.OPENAI,d.h.GEMINI_CLI,null,_),(0,f.kz)(d.h.OPENAI,d.h.VERTEX,null,_),c(2670);var aa=c(52655);function ab(a){return{id:a.responseId,created:a.created,model:a.model||"kiro"}}function ac(a,b){a.thinkingBlockStarted&&(b.push({type:"content_block_stop",index:a.thinkingBlockIndex}),a.thinkingBlockStarted=!1)}function ad(a,b){a.textBlockStarted&&!a.textBlockClosed&&(a.textBlockClosed=!0,b.push({type:"content_block_stop",index:a.textBlockIndex}),a.textBlockStarted=!1)}function ae(a){let b={messageId:null,model:null,textBlockStarted:!1,thinkingBlockStarted:!1,inThinkingBlock:!1,currentBlockIndex:null,toolCalls:new Map,finishReason:null,finishReasonSent:!1,usage:null,contentBlockIndex:-1};return a===d.h.OPENAI_RESPONSES?{...b,seq:0,responseId:`resp_${Date.now()}`,created:Math.floor(Date.now()/1e3),started:!1,msgTextBuf:{},msgItemAdded:{},msgContentAdded:{},msgItemDone:{},reasoningId:"",reasoningIndex:-1,reasoningBuf:"",reasoningPartAdded:!1,reasoningDone:!1,inThinking:!1,funcArgsBuf:{},funcNames:{},funcCallIds:{},funcArgsDone:{},funcItemDone:{},completedSent:!1}:b}(0,f.kz)(d.h.KIRO,d.h.OPENAI,null,function(a,b){if(!a)return null;if("chat.completion.chunk"===a.object&&a.choices)return a;let c=a;if("string"==typeof a){let b=a.split("\n"),d="",e="";for(let a of b)a.startsWith("event:")?d=a.slice(6).trim():a.startsWith(":event-type:")?d=a.slice(12).trim():a.startsWith("data:")?e=a.slice(5).trim():a.startsWith(":content-type:")||a.trim()&&!a.startsWith(":")&&(e=a.trim());if(!e)return null;try{(c=JSON.parse(e))._eventType=d}catch{c={text:e,_eventType:d}}}b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.chunkIndex=0);let d=c._eventType||c.event||"";if("assistantResponseEvent"===d||c.assistantResponseEvent){let a=c.assistantResponseEvent?.content||c.content||"";if(!a)return null;let d=(0,L.k)(ab(b),{...0===b.chunkIndex?{role:k.z7.ASSISTANT}:{},content:a},null);return b.chunkIndex++,d}if("reasoningContentEvent"===d||c.reasoningContentEvent){let a=c.reasoningContentEvent||c,d="string"==typeof a?a:a.text||a.content||c.content||"";if(!d)return null;let e=(0,L.k)(ab(b),(0,N.B)(d,0===b.chunkIndex),null);return b.chunkIndex++,e}if("toolUseEvent"===d||c.toolUseEvent){b.hadToolUse=!0;let a=c.toolUseEvent||c,d=a.toolUseId||(0,aa.eG)(b.toolCallIndex||0),e=a.name||"",f=a.input||{};"number"!=typeof b.toolCallIndex&&(b.toolCallIndex=0),b.toolIdToIndex||(b.toolIdToIndex=new Map);let g=b.toolIdToIndex.get(d);void 0===g&&(g=b.toolCallIndex++,b.toolIdToIndex.set(d,g));let h=(0,L.k)(ab(b),{...0===b.chunkIndex?{role:k.z7.ASSISTANT}:{},tool_calls:[{index:g,id:d,type:k.x4.FUNCTION,function:{name:e,arguments:JSON.stringify(f)}}]},null);return b.chunkIndex++,h}if("messageStopEvent"===d||"done"===d||c.messageStopEvent){let a=(0,O.F)(b.hadToolUse?"tool_use":"stop","kiro");b.finishReason=a;let c=(0,L.k)(ab(b),{},a);return b.usage&&"object"==typeof b.usage&&(c.usage=b.usage),c}if("usageEvent"===d||c.usageEvent){let a=(0,M.B)(c.usageEvent||c,"kiro");a&&(b.usage=a)}return null}),(0,f.kz)(d.h.CURSOR,d.h.OPENAI,null,function(a,b){return a?("chat.completion.chunk"===a.object&&a.choices||"chat.completion"===a.object&&a.choices,a):null}),c(9960),c(69632),(0,f.kz)(d.h.KIRO,d.h.CLAUDE,null,function(a,b){let c=[];if(null===a&&!b.claudeFinishHandled){if(b.claudeFinishHandled=!0,!b.messageStartSent)return null;for(let[a,d]of(ac(b,c),ad(b,c),b.toolCalls||[])){let e=b.toolArgBuffers?.get(a);e&&c.push({type:"content_block_delta",index:d.blockIndex,delta:{type:"input_json_delta",partial_json:e}}),c.push({type:"content_block_stop",index:d.blockIndex})}b.finishReason="stop";let a=b.usage||{input_tokens:0,output_tokens:0};return c.push({type:"message_delta",delta:{stop_reason:"end_turn"},usage:a}),c.push({type:"message_stop"}),c}if(null===a)return null;let d=a;if("string"==typeof a){let b=a.trim();if(!b||"[DONE]"===b)return null;try{d=JSON.parse(b.startsWith("data:")?b.slice(5).trim():b)}catch{return null}}if(!d||!d.choices?.[0])return null;let e=d.choices[0],f=e.delta||{};d.usage&&"object"==typeof d.usage&&(b.usage={input_tokens:"number"==typeof d.usage.prompt_tokens?d.usage.prompt_tokens:0,output_tokens:"number"==typeof d.usage.completion_tokens?d.usage.completion_tokens:0}),b.messageStartSent||(b.messageStartSent=!0,b.messageId="string"==typeof d.id&&d.id.replace("chatcmpl-","")||`msg_${Date.now()}`,b.model=d.model||"kiro",b.nextBlockIndex=0,c.push({type:"message_start",message:{id:b.messageId,type:"message",role:"assistant",model:b.model,content:[],stop_reason:null,stop_sequence:null,usage:{input_tokens:0,output_tokens:0}}}));let g=f.reasoning_content||f.reasoning;if(g&&(ad(b,c),b.thinkingBlockStarted||(b.thinkingBlockIndex=b.nextBlockIndex++,b.thinkingBlockStarted=!0,c.push({type:"content_block_start",index:b.thinkingBlockIndex,content_block:{type:"thinking",thinking:""}})),c.push({type:"content_block_delta",index:b.thinkingBlockIndex,delta:{type:"thinking_delta",thinking:g}})),f.content&&(ac(b,c),b.textBlockStarted||(b.textBlockIndex=b.nextBlockIndex++,b.textBlockStarted=!0,b.textBlockClosed=!1,c.push({type:"content_block_start",index:b.textBlockIndex,content_block:{type:"text",text:""}})),c.push({type:"content_block_delta",index:b.textBlockIndex,delta:{type:"text_delta",text:f.content}})),f.tool_calls)for(let a of(b.toolCalls||(b.toolCalls=new Map),b.toolArgBuffers||(b.toolArgBuffers=new Map),f.tool_calls)){let d=a.index??0;if(!b.toolCalls.has(d)&&(a.id||a.function?.name||a.function?.arguments)){ac(b,c),ad(b,c);let e=b.nextBlockIndex++,f=a.id||`toolu_${Date.now()}_${d}`;b.toolCalls.set(d,{id:f,name:a.function?.name||"",blockIndex:e}),c.push({type:"content_block_start",index:e,content_block:{type:"tool_use",id:f,name:a.function?.name||"",input:{}}})}else if(a.id&&b.toolCalls.has(d)){let c=b.toolCalls.get(d);c&&String(c.id).startsWith("toolu_")&&(c.id=a.id)}a.function?.arguments&&b.toolCalls.get(d)&&b.toolArgBuffers.set(d,(b.toolArgBuffers.get(d)||"")+a.function.arguments)}if(e.finish_reason&&!b.claudeFinishHandled){if(b.claudeFinishHandled=!0,ac(b,c),ad(b,c),b.toolCalls)for(let[a,d]of b.toolCalls){let e=b.toolArgBuffers?.get(a);e&&c.push({type:"content_block_delta",index:d.blockIndex,delta:{type:"input_json_delta",partial_json:e}}),c.push({type:"content_block_stop",index:d.blockIndex})}b.finishReason=e.finish_reason;let a=b.usage||{input_tokens:0,output_tokens:0};c.push({type:"message_delta",delta:{stop_reason:function(a){switch(a){case"stop":default:return"end_turn";case"length":return"max_tokens";case"tool_calls":return"tool_use"}}(e.finish_reason)},usage:a}),c.push({type:"message_stop"})}return c.length>0?c:null})},87404:(a,b,c)=>{"use strict";let{webidl:d}=c(32984),{validateCloseCodeAndReason:e}=c(94050),{kConstruct:f}=c(49176),{kEnumerableProperty:g}=c(84285);function h(){class a extends DOMException{get reason(){return""}}return void 0!==new a().reason?DOMException:new Proxy(DOMException,{construct(a,b,c){let d=Reflect.construct(a,b,a);return Object.setPrototypeOf(d,c.prototype),d}})}class i extends h(){#bv;#bs;constructor(a="",b){if(super(a=d.converters.DOMString(a,"WebSocketError","message"),"WebSocketError"),b===f)return;null!==b&&(b=d.converters.WebSocketCloseInfo(b));let c=b.closeCode??null;const g=b.reason??"";e(c,g),0!==g.length&&null===c&&(c=1e3),this.#bv=c,this.#bs=g}get closeCode(){return this.#bv}get reason(){return this.#bs}static createUnvalidatedWebSocketError(a,b,c){let d=new i(a,f);return d.#bv=b,d.#bs=c,d}}let{createUnvalidatedWebSocketError:j}=i;delete i.createUnvalidatedWebSocketError,Object.defineProperties(i.prototype,{closeCode:g,reason:g,[Symbol.toStringTag]:{value:"WebSocketError",writable:!1,enumerable:!1,configurable:!0}}),d.is.WebSocketError=d.util.MakeTypeAssertion(i),a.exports={WebSocketError:i,createUnvalidatedWebSocketError:j}},87981:(a,b,c)=>{var d=c(45654);c(29984),c(33889),(a.exports=d.pss=d.pss||{}).create=function(a){3==arguments.length&&(a={md:arguments[0],mgf:arguments[1],saltLength:arguments[2]});var b,c=a.md,e=a.mgf,f=c.digestLength,g=a.salt||null;if("string"==typeof g&&(g=d.util.createBuffer(g)),"saltLength"in a)b=a.saltLength;else if(null!==g)b=g.length();else throw Error("Salt length not specified or specific salt not given.");if(null!==g&&g.length()!==b)throw Error("Given salt length does not match length of given salt.");var h=a.prng||d.random,i={};return i.encode=function(a,i){var j,k,l=i-1,m=Math.ceil(l/8),n=a.digest().getBytes();if(m<f+b+2)throw Error("Message is too long to encrypt.");k=null===g?h.getBytesSync(b):g.bytes();var o=new d.util.ByteBuffer;o.fillWithByte(0,8),o.putBytes(n),o.putBytes(k),c.start(),c.update(o.getBytes());var p=c.digest().getBytes(),q=new d.util.ByteBuffer;q.fillWithByte(0,m-b-f-2),q.putByte(1),q.putBytes(k);var r=q.getBytes(),s=m-f-1,t=e.generate(p,s),u="";for(j=0;j<s;j++)u+=String.fromCharCode(r.charCodeAt(j)^t.charCodeAt(j));return(u=String.fromCharCode(u.charCodeAt(0)&~(65280>>8*m-l&255))+u.substr(1))+p+String.fromCharCode(188)},i.verify=function(a,g,h){var i,j=h-1,k=Math.ceil(j/8);if(g=g.substr(-k),k<f+b+2)throw Error("Inconsistent parameters to PSS signature verification.");if(188!==g.charCodeAt(k-1))throw Error("Encoded message does not end in 0xBC.");var l=k-f-1,m=g.substr(0,l),n=g.substr(l,f),o=65280>>8*k-j&255;if((m.charCodeAt(0)&o)!=0)throw Error("Bits beyond keysize not zero as expected.");var p=e.generate(n,l),q="";for(i=0;i<l;i++)q+=String.fromCharCode(m.charCodeAt(i)^p.charCodeAt(i));q=String.fromCharCode(q.charCodeAt(0)&~o)+q.substr(1);var r=k-f-b-2;for(i=0;i<r;i++)if(0!==q.charCodeAt(i))throw Error("Leftmost octets not zero as expected");if(1!==q.charCodeAt(r))throw Error("Inconsistent PSS signature, 0x01 marker not found");var s=q.substr(-b),t=new d.util.ByteBuffer;return t.fillWithByte(0,8),t.putBytes(a),t.putBytes(s),c.start(),c.update(t.getBytes()),n===c.digest().getBytes()},i}},88819:(a,b,c)=>{var d=c(45654);function e(a,b){d.cipher.registerAlgorithm(a,function(){return new d.des.Algorithm(a,b)})}c(66568),c(19396),c(33889),a.exports=d.des=d.des||{},d.des.startEncrypting=function(a,b,c,d){var e=o({key:a,output:c,decrypt:!1,mode:d||(null===b?"ECB":"CBC")});return e.start(b),e},d.des.createEncryptionCipher=function(a,b){return o({key:a,output:null,decrypt:!1,mode:b})},d.des.startDecrypting=function(a,b,c,d){var e=o({key:a,output:c,decrypt:!0,mode:d||(null===b?"ECB":"CBC")});return e.start(b),e},d.des.createDecryptionCipher=function(a,b){return o({key:a,output:null,decrypt:!0,mode:b})},d.des.Algorithm=function(a,b){var c=this;c.name=a,c.mode=new b({blockSize:8,cipher:{encrypt:function(a,b){return n(c._keys,a,b,!1)},decrypt:function(a,b){return n(c._keys,a,b,!0)}}}),c._init=!1},d.des.Algorithm.prototype.initialize=function(a){if(!this._init){var b=d.util.createBuffer(a.key);if(0===this.name.indexOf("3DES")&&24!==b.length())throw Error("Invalid Triple-DES key size: "+8*b.length());this._keys=function(a){for(var b,c=[0,4,0x20000000,0x20000004,65536,65540,0x20010000,0x20010004,512,516,0x20000200,0x20000204,66048,66052,0x20010200,0x20010204],d=[0,1,1048576,1048577,0x4000000,0x4000001,0x4100000,0x4100001,256,257,1048832,1048833,0x4000100,0x4000101,0x4100100,0x4100101],e=[0,8,2048,2056,0x1000000,0x1000008,0x1000800,0x1000808,0,8,2048,2056,0x1000000,0x1000008,0x1000800,0x1000808],f=[0,2097152,0x8000000,0x8200000,8192,2105344,0x8002000,0x8202000,131072,2228224,0x8020000,0x8220000,139264,2236416,0x8022000,0x8222000],g=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],h=[0,1024,32,1056,0,1024,32,1056,0x2000000,0x2000400,0x2000020,0x2000420,0x2000000,0x2000400,0x2000020,0x2000420],i=[0,0x10000000,524288,0x10080000,2,0x10000002,524290,0x10080002,0,0x10000000,524288,0x10080000,2,0x10000002,524290,0x10080002],j=[0,65536,2048,67584,0x20000000,0x20010000,0x20000800,0x20010800,131072,196608,133120,198656,0x20020000,0x20030000,0x20020800,0x20030800],k=[0,262144,0,262144,2,262146,2,262146,0x2000000,0x2040000,0x2000000,0x2040000,0x2000002,0x2040002,0x2000002,0x2040002],l=[0,0x10000000,8,0x10000008,0,0x10000000,8,0x10000008,1024,0x10000400,1032,0x10000408,1024,0x10000400,1032,0x10000408],m=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],n=[0,0x1000000,512,0x1000200,2097152,0x1200000,2097664,0x1200200,0x4000000,0x5000000,0x4000200,0x5000200,0x4200000,0x5200000,0x4200200,0x5200200],o=[0,4096,0x8000000,0x8001000,524288,528384,0x8080000,0x8081000,16,4112,0x8000010,0x8001010,524304,528400,0x8080010,0x8081010],p=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],q=a.length()>8?3:1,r=[],s=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],t=0,u=0;u<q;u++){var v=a.getInt32(),w=a.getInt32();b=(v>>>4^w)&0xf0f0f0f,w^=b,v^=b<<4,b=(w>>>-16^v)&65535,v^=b,w^=b<<-16,b=(v>>>2^w)&0x33333333,w^=b,v^=b<<2,b=(w>>>-16^v)&65535,v^=b,w^=b<<-16,b=(v>>>1^w)&0x55555555,w^=b,v^=b<<1,b=(w>>>8^v)&0xff00ff,v^=b,w^=b<<8,b=(v>>>1^w)&0x55555555,w^=b,v^=b<<1,b=v<<8|w>>>20&240,v=w<<24|w<<8&0xff0000|w>>>8&65280|w>>>24&240,w=b;for(var x=0;x<s.length;++x){s[x]?(v=v<<2|v>>>26,w=w<<2|w>>>26):(v=v<<1|v>>>27,w=w<<1|w>>>27),w&=-15;var y=c[(v&=-15)>>>28]|d[v>>>24&15]|e[v>>>20&15]|f[v>>>16&15]|g[v>>>12&15]|h[v>>>8&15]|i[v>>>4&15],z=j[w>>>28]|k[w>>>24&15]|l[w>>>20&15]|m[w>>>16&15]|n[w>>>12&15]|o[w>>>8&15]|p[w>>>4&15];b=(z>>>16^y)&65535,r[t++]=y^b,r[t++]=z^b<<16}}return r}(b),this._init=!0}},e("DES-ECB",d.cipher.modes.ecb),e("DES-CBC",d.cipher.modes.cbc),e("DES-CFB",d.cipher.modes.cfb),e("DES-OFB",d.cipher.modes.ofb),e("DES-CTR",d.cipher.modes.ctr),e("3DES-ECB",d.cipher.modes.ecb),e("3DES-CBC",d.cipher.modes.cbc),e("3DES-CFB",d.cipher.modes.cfb),e("3DES-OFB",d.cipher.modes.ofb),e("3DES-CTR",d.cipher.modes.ctr);var f=[0x1010400,0,65536,0x1010404,0x1010004,66564,4,65536,1024,0x1010400,0x1010404,1024,0x1000404,0x1010004,0x1000000,4,1028,0x1000400,0x1000400,66560,66560,0x1010000,0x1010000,0x1000404,65540,0x1000004,0x1000004,65540,0,1028,66564,0x1000000,65536,0x1010404,4,0x1010000,0x1010400,0x1000000,0x1000000,1024,0x1010004,65536,66560,0x1000004,1024,4,0x1000404,66564,0x1010404,65540,0x1010000,0x1000404,0x1000004,1028,66564,0x1010400,1028,0x1000400,0x1000400,0,65540,66560,0,0x1010004],g=[-0x7fef7fe0,-0x7fff8000,32768,1081376,1048576,32,-0x7fefffe0,-0x7fff7fe0,-0x7fffffe0,-0x7fef7fe0,-0x7fef8000,-0x80000000,-0x7fff8000,1048576,32,-0x7fefffe0,1081344,1048608,-0x7fff7fe0,0,-0x80000000,32768,1081376,-0x7ff00000,1048608,-0x7fffffe0,0,1081344,32800,-0x7fef8000,-0x7ff00000,32800,0,1081376,-0x7fefffe0,1048576,-0x7fff7fe0,-0x7ff00000,-0x7fef8000,32768,-0x7ff00000,-0x7fff8000,32,-0x7fef7fe0,1081376,32,32768,-0x80000000,32800,-0x7fef8000,1048576,-0x7fffffe0,1048608,-0x7fff7fe0,-0x7fffffe0,1048608,1081344,0,-0x7fff8000,32800,-0x80000000,-0x7fefffe0,-0x7fef7fe0,1081344],h=[520,0x8020200,0,0x8020008,0x8000200,0,131592,0x8000200,131080,0x8000008,0x8000008,131072,0x8020208,131080,0x8020000,520,0x8000000,8,0x8020200,512,131584,0x8020000,0x8020008,131592,0x8000208,131584,131072,0x8000208,8,0x8020208,512,0x8000000,0x8020200,0x8000000,131080,520,131072,0x8020200,0x8000200,0,512,131080,0x8020208,0x8000200,0x8000008,512,0,0x8020008,0x8000208,131072,0x8000000,0x8020208,8,131592,131584,0x8000008,0x8020000,0x8000208,520,0x8020000,131592,8,0x8020008,131584],i=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],j=[256,0x2080100,0x2080000,0x42000100,524288,256,0x40000000,0x2080000,0x40080100,524288,0x2000100,0x40080100,0x42000100,0x42080000,524544,0x40000000,0x2000000,0x40080000,0x40080000,0,0x40000100,0x42080100,0x42080100,0x2000100,0x42080000,0x40000100,0,0x42000000,0x2080100,0x2000000,0x42000000,524544,524288,0x42000100,256,0x2000000,0x40000000,0x2080000,0x42000100,0x40080100,0x2000100,0x40000000,0x42080000,0x2080100,0x40080100,256,0x2000000,0x42080000,0x42080100,524544,0x42000000,0x42080100,0x2080000,0,0x40080000,0x42000000,524544,0x2000100,0x40000100,524288,0,0x40080000,0x2080100,0x40000100],k=[0x20000010,0x20400000,16384,0x20404010,0x20400000,16,0x20404010,4194304,0x20004000,4210704,4194304,0x20000010,4194320,0x20004000,0x20000000,16400,0,4194320,0x20004010,16384,4210688,0x20004010,16,0x20400010,0x20400010,0,4210704,0x20404000,16400,4210688,0x20404000,0x20000000,0x20004000,16,0x20400010,4210688,0x20404010,4194304,16400,0x20000010,4194304,0x20004000,0x20000000,16400,0x20000010,0x20404010,4210688,0x20400000,4210704,0x20404000,0,0x20400010,16,16384,0x20400000,4210704,16384,4194320,0x20004010,0,0x20404000,0x20000000,4194320,0x20004010],l=[2097152,0x4200002,0x4000802,0,2048,0x4000802,2099202,0x4200800,0x4200802,2097152,0,0x4000002,2,0x4000000,0x4200002,2050,0x4000800,2099202,2097154,0x4000800,0x4000002,0x4200000,0x4200800,2097154,0x4200000,2048,2050,0x4200802,2099200,2,0x4000000,2099200,0x4000000,2099200,2097152,0x4000802,0x4000802,0x4200002,0x4200002,2,2097154,0x4000000,0x4000800,2097152,0x4200800,2050,2099202,0x4200800,2050,0x4000002,0x4200802,0x4200000,2099200,0,2,0x4200802,0,2099202,0x4200000,2048,0x4000002,0x4000800,2048,2097154],m=[0x10001040,4096,262144,0x10041040,0x10000000,0x10001040,64,0x10000000,262208,0x10040000,0x10041040,266240,0x10041000,266304,4096,64,0x10040000,0x10000040,0x10001000,4160,266240,262208,0x10040040,0x10041000,4160,0,0,0x10040040,0x10000040,0x10001000,266304,262144,266304,262144,0x10041000,4096,64,0x10040040,4096,266304,0x10001000,64,0x10000040,0x10040000,0x10040040,0x10000000,262144,0x10001040,0,0x10041040,262208,0x10000040,0x10040000,0x10001000,0x10001040,0,0x10041040,266240,266240,4160,4160,262208,0x10000000,0x10041000];function n(a,b,c,d){var e,n,o=32===a.length?3:9;e=3===o?d?[30,-2,-2]:[0,32,2]:d?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var p=b[0],q=b[1];n=(p>>>4^q)&0xf0f0f0f,q^=n,p^=n<<4,n=(p>>>16^q)&65535,q^=n,p^=n<<16,n=(q>>>2^p)&0x33333333,p^=n,q^=n<<2,n=(q>>>8^p)&0xff00ff,p^=n,q^=n<<8,n=(p>>>1^q)&0x55555555,q^=n,p^=n<<1,p=p<<1|p>>>31,q=q<<1|q>>>31;for(var r=0;r<o;r+=3){for(var s=e[r+1],t=e[r+2],u=e[r];u!=s;u+=t){var v=q^a[u],w=(q>>>4|q<<28)^a[u+1];n=p,p=q,q=n^(g[v>>>24&63]|i[v>>>16&63]|k[v>>>8&63]|m[63&v]|f[w>>>24&63]|h[w>>>16&63]|j[w>>>8&63]|l[63&w])}n=p,p=q,q=n}n=((p=p>>>1|p<<31)>>>1^(q=q>>>1|q<<31))&0x55555555,q^=n,p^=n<<1,n=(q>>>8^p)&0xff00ff,p^=n,q^=n<<8,n=(q>>>2^p)&0x33333333,p^=n,q^=n<<2,n=(p>>>16^q)&65535,q^=n,p^=n<<16,n=(p>>>4^q)&0xf0f0f0f,q^=n,p^=n<<4,c[0]=p,c[1]=q}function o(a){var b,c="DES-"+((a=a||{}).mode||"CBC").toUpperCase(),e=(b=a.decrypt?d.cipher.createDecipher(c,a.key):d.cipher.createCipher(c,a.key)).start;return b.start=function(a,c){var f=null;c instanceof d.util.ByteBuffer&&(f=c,c={}),(c=c||{}).output=f,c.iv=a,e.call(b,c)},b}},88998:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{initializeApp:()=>q,registerShutdownHandlers:()=>p}),c(62620);var e=c(1932),f=c(33873),g=c(29021),h=c(77326),i=c(3721),j=c(73792),k=c(24976),l=c(6951),m=c(24081),n=c(18922),o=a([j]);if(j=(o.then?(await o)():o)[0],!process.env.MITM_SERVER_PATH)try{let a=(0,e.fileURLToPath)("file:///home/runner/work/switchboard-router/switchboard-router/src/shared/services/initializeApp.js"),b=(0,f.dirname)((0,f.dirname)(a)),c=(0,f.join)(b,"mitm","server.js");(0,g.existsSync)(c)&&(process.env.MITM_SERVER_PATH=c)}catch{}try{(0,i.initDbHooks)(h.mt,h.Xx)}catch{}process.setMaxListeners(20);let s=global.__appSingleton??={signalHandlersRegistered:!1,mitmStartInProgress:!1,routingRetentionTimer:null,shuttingDown:!1};function p(){if(s.signalHandlersRegistered)return;let a=async()=>{if(s.shuttingDown)return;s.shuttingDown=!0;let a=setTimeout(()=>process.exit(1),1800);a.unref?.();try{await (0,n.pS)()}catch{}try{await (0,m.y)()}catch{}try{(0,i.removeAllDNSEntriesSync)()}catch{}clearTimeout(a),process.exit(0)};process.on("SIGINT",a),process.on("SIGTERM",a),process.on("exit",()=>{try{(0,i.removeAllDNSEntriesSync)()}catch{}}),s.signalHandlersRegistered=!0}async function q(){try{p(),await (0,h.bI)(),(0,l.v)().catch(()=>{}),r(),(0,j.OJ)(),function(){if(s.routingRetentionTimer)return;let a=()=>{(0,h.eh)(90).then(a=>{a>0&&console.log(`[InitApp] Purged ${a} routing_events older than 90d`)}).catch(a=>console.warn("[InitApp] routing retention failed:",a?.message||a)),(0,h.SB)().then(a=>{a>0&&console.log(`[InitApp] Purged ${a} expired fetch cache entries`)}).catch(a=>console.warn("[InitApp] fetch cache cleanup failed:",a?.message||a)),(0,h.ui)().then(a=>{a>0&&console.log(`[InitApp] Purged ${a} expired vault entries`)}).catch(a=>console.warn("[InitApp] vault cleanup failed:",a?.message||a))};setTimeout(a,3e4),s.routingRetentionTimer=setInterval(a,864e5),"function"==typeof s.routingRetentionTimer.unref&&s.routingRetentionTimer.unref()}();try{(0,k.JV)({log:{info:(...a)=>console.log(...a),warn:(...a)=>console.warn(...a),error:(...a)=>console.error(...a)}})}catch(a){console.warn("[InitApp] auto-learn scheduler failed to start:",a?.message||a)}}catch(a){console.error("[InitApp] Error:",a)}}async function r(){if(!s.mitmStartInProgress){s.mitmStartInProgress=!0;try{if(!(await (0,h.mt)()).mitmEnabled||(await (0,i.getMitmStatus)()).running)return;let a=await (0,i.loadEncryptedPassword)();if(!a&&"win32"!==process.platform)return void console.log("[InitApp] MITM was enabled but no saved password found, skipping auto-start");let b=(await (0,h.PX)()).find(a=>!1!==a.isActive);console.log("[InitApp] MITM was enabled, auto-starting..."),await (0,i.startMitm)(b?.key||"sk_switchboard",a),console.log("[InitApp] MITM auto-started");try{await (0,i.restoreToolDNS)(a),console.log("[InitApp] DNS restored from saved state")}catch(a){console.log("[InitApp] DNS restore failed:",a.message)}}catch(a){console.log("[InitApp] MITM auto-start failed:",a.message)}finally{s.mitmStartInProgress=!1}}}d()}catch(a){d(a)}})},89409:(a,b,c)=>{"use strict";let d=c(84285),{parseCacheControlHeader:e,parseVaryHeader:f,isEtagUsable:g}=c(79468),{parseHttpDate:h}=c(24214);function i(){}let j=[200,203,204,206,300,301,308,404,405,410,414,501],k=[206];class l{#bw;#bx;#by;#bz;#as;#bA;constructor({store:a,type:b,cacheByDefault:c},d,e){this.#bz=a,this.#bx=b,this.#by=c,this.#bw=d,this.#as=e}onRequestStart(a,b){this.#bA?.destroy(),this.#bA=void 0,this.#as.onRequestStart?.(a,b)}onRequestUpgrade(a,b,c,d){this.#as.onRequestUpgrade?.(a,b,c,d)}onResponseStart(a,b,c,l){var m,n,o,p,q,r;let s,t,u=()=>this.#as.onResponseStart?.(a,b,c,l),v=this;if(!d.safeHTTPMethods.includes(this.#bw.method)&&b>=200&&b<=399){try{this.#bz.delete(this.#bw)?.catch?.(i)}catch{}return u()}let w=c["cache-control"],x=c["last-modified"]&&j.includes(b);if(!w&&!c.expires&&!x&&!this.#by)return u();let y=w?e(w):{};if(m=this.#bx,n=b,o=c,p=y,q=this.#bw.headers,n<200||k.includes(n)||!j.includes(n)&&!o.expires&&!p.public&&void 0===p["max-age"]&&!(p.private&&"private"===m)&&(void 0===p["s-maxage"]||"shared"!==m)||p["no-store"]||"shared"===m&&!0===p.private||o.vary?.includes("*")||q?.authorization&&(!p.public&&!p["s-maxage"]&&!p["must-revalidate"]||"string"!=typeof q.authorization||Array.isArray(p["no-cache"])&&p["no-cache"].includes("authorization")||Array.isArray(p.private)&&p.private.includes("authorization"))||0)return u();let z=Date.now(),A=c.age?isNaN(s=parseInt(Array.isArray(r=c.age)?r[0]:r))?void 0:1e3*s:void 0;if(A&&A>=2147483647e3)return u();let B="string"==typeof c.date?h(c.date):void 0,C=function(a,b,c,d,e,f){if("shared"===a){let a=f["s-maxage"];if(void 0!==a)return a>0?1e3*a:void 0}let g=f["max-age"];if(void 0!==g)return g>0?1e3*g:void 0;if("string"==typeof d.expires){let a=h(d.expires);if(a){if(b>=a.getTime()||e&&(e>=a||void 0!==c&&c>a-e))return;return a.getTime()-b}}if("string"==typeof d["last-modified"]){var i;let a=new Date(d["last-modified"]);if((i=a)instanceof Date&&Number.isFinite(i.valueOf())){if(a.getTime()>=b)return;return .1*(b-a.getTime())}}if(f.immutable)return 31536e6}(this.#bx,z,A,c,B,y)??this.#by;if(void 0===C||A&&A>C)return u();let D=B?B.getTime():z,E=C+D;if(z>=E||this.#bw.headers&&c.vary&&!(t=f(c.vary,this.#bw.headers)))return u();let F=A?z-A:z,G=function(a,b,c,d){let e=-1/0,f=-1/0,g=-1/0;if(c["stale-while-revalidate"]&&(e=d+1e3*c["stale-while-revalidate"]),c["stale-if-error"]&&(f=d+1e3*c["stale-if-error"]),c.immutable&&e===-1/0&&f===-1/0&&(g=b+31536e6),e===-1/0&&f===-1/0&&g===-1/0){let c=Math.min(Math.max(b-a,0),1e3);return d+(d-a)+c}return Math.max(d,e,f,g)}(D,F,y,E),H=function(a,b){let c,d=["connection","proxy-authenticate","proxy-authentication-info","proxy-authorization","proxy-connection","te","transfer-encoding","upgrade","age"];for(let e of(a.connection&&(Array.isArray(a.connection)?d.push(...a.connection.map(a=>a.trim())):d.push(...a.connection.split(",").map(a=>a.trim()))),Array.isArray(b["no-cache"])&&d.push(...b["no-cache"]),Array.isArray(b.private)&&d.push(...b.private),d))a[e]&&(c??={...a},delete c[e]);return c??a}(c,y),I={statusCode:b,statusMessage:l,headers:H,vary:t,cacheControlDirectives:y,cachedAt:F,staleAt:E,deleteAt:G};if(304===b){let b=b=>{if(!b)return u();if(I.statusCode=b.statusCode,I.statusMessage=b.statusMessage,I.etag=b.etag,I.headers={...b.headers,...H},u(),this.#bA=this.#bz.createWriteStream(this.#bw,I),this.#bA&&b?.body)if("function"==typeof b.body.values){let c=b.body.values(),d=()=>{for(let b of c){let c=!1===this.#bA.write(b);if(this.#as.onResponseData?.(a,b),c)break}};this.#bA.on("error",function(){v.#bA=void 0,v.#bz.delete(v.#bw)}).on("drain",()=>{d()}).on("close",function(){v.#bA===this&&(v.#bA=void 0)}),d()}else"function"==typeof b.body.on&&(b.body.on("data",b=>{this.#bA.write(b),this.#as.onResponseData?.(a,b)}).on("end",()=>{this.#bA.end()}).on("error",()=>{this.#bA=void 0,this.#bz.delete(this.#bw)}),this.#bA.on("error",function(){v.#bA=void 0,v.#bz.delete(v.#bw)}).on("close",function(){v.#bA===this&&(v.#bA=void 0)}))},c=this.#bz.get(this.#bw);c&&"function"==typeof c.then?c.then(b):b(c)}else{if("string"==typeof c.etag&&g(c.etag)&&(I.etag=c.etag),this.#bA=this.#bz.createWriteStream(this.#bw,I),!this.#bA)return u();this.#bA.on("drain",()=>a.resume()).on("error",function(){v.#bA=void 0,v.#bz.delete(v.#bw)}).on("close",function(){v.#bA===this&&(v.#bA=void 0),a.resume()}),u()}}onResponseData(a,b){this.#bA?.write(b)===!1&&a.pause(),this.#as.onResponseData?.(a,b)}onResponseEnd(a,b){this.#bA?.end(),this.#as.onResponseEnd?.(a,b)}onResponseError(a,b){this.#bA?.destroy(b),this.#bA=void 0,this.#as.onResponseError?.(a,b)}}a.exports=l},89512:(a,b,c)=>{"use strict";let d=c(37417),e=c(65630),{SnapshotRecorder:f}=c(94279),{InvalidArgumentError:g,UndiciError:h}=c(61448),i=c(84285),{validateSnapshotMode:j}=c(47800),k=Symbol("kSnapshotRecorder"),l=Symbol("kSnapshotMode"),m=Symbol("kSnapshotPath"),n=Symbol("kSnapshotLoaded"),o=Symbol("kRealAgent"),p=!1;class q extends e{constructor(a={}){p||(process.emitWarning("SnapshotAgent is experimental and subject to change","ExperimentalWarning"),p=!0);const{mode:b="record",snapshotPath:c=null,...e}=a;if(super(e),j(b),("playback"===b||"update"===b)&&!c)throw new g(`snapshotPath is required when mode is '${b}'`);this[l]=b,this[m]=c,this[k]=new f({snapshotPath:this[m],mode:this[l],maxSnapshots:a.maxSnapshots,autoFlush:a.autoFlush,flushInterval:a.flushInterval,matchHeaders:a.matchHeaders,ignoreHeaders:a.ignoreHeaders,excludeHeaders:a.excludeHeaders,matchBody:a.matchBody,normalizeBody:a.normalizeBody,matchQuery:a.matchQuery,normalizeQuery:a.normalizeQuery,caseSensitive:a.caseSensitive,shouldRecord:a.shouldRecord,shouldPlayback:a.shouldPlayback,excludeUrls:a.excludeUrls}),this[n]=!1,("record"===this[l]||"update"===this[l]||"playback"===this[l]&&a.excludeUrls&&a.excludeUrls.length>0)&&(this[o]=new d(a)),("playback"===this[l]||"update"===this[l])&&this[m]&&this.loadSnapshots().catch(()=>{})}dispatch(a,b){let c=this[l];if(this[k].isUrlExcluded(a))return this[o].dispatch(a,b);if("playback"===c||"update"===c){if(!this[n])return this.#bB(a,b);let d=this[k].findSnapshot(a);if(d)return this.#bC(d,b);{if("update"===c)return this.#bD(a,b);let d=new h(`No snapshot found for ${a.method||"GET"} ${a.path}`);if(b.onResponseError)return void b.onResponseError(null,d);throw d}}if("record"===c)return this.#bD(a,b)}async #bB(a,b){return await this.loadSnapshots(),this.dispatch(a,b)}#bD(a,b){let c={statusCode:null,headers:{},trailers:{},body:[]},d=this;return this[o].dispatch(a,{onRequestStart(a,c){return b.onRequestStart(a,{...c,history:this.history})},onRequestUpgrade:(a,c,d,e)=>b.onRequestUpgrade(a,c,d,e),onResponseStart:(a,d,e,f)=>(c.statusCode=d,c.headers=e,b.onResponseStart(a,d,e,f)),onResponseData:(a,d)=>(c.body.push(d),b.onResponseData(a,d)),onResponseEnd(e,f){c.trailers=f;let g=Buffer.concat(c.body);d[k].record(a,{statusCode:c.statusCode,headers:c.headers,body:g,trailers:c.trailers}).then(()=>b.onResponseEnd(e,f)).catch(a=>b.onResponseError(e,a))},onResponseError:(a,c)=>b.onResponseError(a,c)})}#bC(a,b){try{let{response:c}=a,d=c.headers?i.toRawHeaders(c.headers):[],e=c.trailers?i.toRawHeaders(c.trailers):[],f={rawHeaders:d,rawTrailers:e,pause(){},resume(){},abort(a){this.aborted=!0,this.reason=a},aborted:!1,paused:!1};b.onRequestStart(f),b.onResponseStart(f,c.statusCode,c.headers,c.statusMessage);let g=Buffer.from(c.body,"base64");b.onResponseData(f,g),b.onResponseEnd(f,c.trailers)}catch(a){b.onResponseError?.(null,a)}}async loadSnapshots(a){await this[k].loadSnapshots(a||this[m]),this[n]=!0,"playback"===this[l]&&this.#bE()}async saveSnapshots(a){return this[k].saveSnapshots(a||this[m])}#bE(){for(let a of this[k].getSnapshots()){let{request:b,responses:c,response:d}=a,e=new URL(b.url),f=this.get(e.origin),g=c?c[0]:d;g&&f.intercept({path:e.pathname+e.search,method:b.method,headers:b.headers,body:b.body}).reply(g.statusCode,g.body,{headers:g.headers,trailers:g.trailers}).persist()}}getRecorder(){return this[k]}getMode(){return this[l]}clearSnapshots(){this[k].clear()}resetCallCounts(){this[k].resetCallCounts()}deleteSnapshot(a){return this[k].deleteSnapshot(a)}getSnapshotInfo(a){return this[k].getSnapshotInfo(a)}replaceSnapshots(a){this[k].replaceSnapshots(a)}async close(){"playback"===this[l]?this[k].destroy():await this[k].close(),await this[o]?.close(),await super.close()}}a.exports=q},89666:(a,b,c)=>{"use strict";c.d(b,{h:()=>k});var d=c(22268),e=c(68531),f=c(10342),g=c(11897),h=c(30816);let i=a=>"string"==typeof a&&a.length>64?a.substring(0,64):a;function j(a){return a?"object"!==a.type||a.properties?a:{...a,properties:{}}:{type:"object",properties:{}}}function k(a,b,c,d){let e=!1!==c;if(b.input)return{...b,model:a,stream:e};let f={model:a,input:[],stream:e,store:!1},k=!1;for(let a of b.messages||[]){if(a.role===g.z7.SYSTEM||a.role===g.z7.DEVELOPER){k||(f.instructions="string"==typeof a.content?a.content:"",k=!0);continue}if(a.role===g.z7.USER||a.role===g.z7.ASSISTANT){a.role===g.z7.ASSISTANT&&a.reasoning_content&&f.input.push({type:g.Du.REASONING,summary:[{type:g.Du.SUMMARY_TEXT,text:a.reasoning_content}]});let b=a.role===g.z7.USER?g.Du.INPUT_TEXT:g.Du.OUTPUT_TEXT,c="string"==typeof a.content?[{type:b,text:a.content}]:Array.isArray(a.content)?a.content.map(a=>{if(a.type===g.x4.TEXT)return{type:b,text:a.text};if(a.type===g.x4.IMAGE_URL){let b="string"==typeof a.image_url?a.image_url:a.image_url?.url;return{type:g.Du.INPUT_IMAGE,image_url:b,detail:a.image_url?.detail||"auto"}}if(a.type===g.Du.INPUT_IMAGE)return a;let c=a.text||a.content||JSON.stringify(a);return{type:b,text:"string"==typeof c?c:JSON.stringify(c)}}):[];c.length>0&&f.input.push({type:g.Du.MESSAGE,role:a.role,content:c})}if(a.role===g.z7.ASSISTANT&&a.tool_calls)for(let b of a.tool_calls)f.input.push({type:g.Du.FUNCTION_CALL,call_id:i(b.id),name:b.function?.name||"_unknown",arguments:b.function?.arguments||"{}"});if(a.role===g.z7.TOOL){let b="string"==typeof a.content?a.content:Array.isArray(a.content)?a.content.map(a=>a.text||JSON.stringify(a)).join(""):JSON.stringify(a.content);f.input.push({type:g.Du.FUNCTION_CALL_OUTPUT,call_id:i(a.tool_call_id),output:b})}}return k||(f.instructions=""),b.tools&&Array.isArray(b.tools)&&(f.tools=b.tools.map(a=>a.type===g.x4.FUNCTION&&a.function||a.function?{type:g.x4.FUNCTION,name:a.function.name,description:"string"==typeof a.function.description?a.function.description:String(a.function.description||""),parameters:(0,h.M)(j(a.function.parameters)),strict:a.function.strict}:a)),void 0!==b.temperature&&(f.temperature=b.temperature),void 0!==b.max_tokens&&(f.max_tokens=b.max_tokens),void 0!==b.top_p&&(f.top_p=b.top_p),void 0!==b.reasoning&&(f.reasoning=b.reasoning),void 0!==b.reasoning_effort&&(f.reasoning={effort:b.reasoning_effort,summary:"auto"}),f}(0,d.kz)(e.h.OPENAI_RESPONSES,e.h.OPENAI,function(a,b,c,d){if(!b.input)return b;let e={...b};e.messages=[],b.instructions&&e.messages.push({role:g.z7.SYSTEM,content:b.instructions});let i=null,k=[],l="",m=(0,f.m)(b.input);if(!m)return b;let n=a=>{if(Array.isArray(a.summary)){let b=a.summary.map(a=>a?.text||"").filter(Boolean).join("\n");if(b)return b}if(Array.isArray(a.content)){let b=a.content.map(a=>a?.text||"").filter(Boolean).join("\n");if(b)return b}return""};for(let a of m){let b=a.type||(a.role?g.Du.MESSAGE:null);if(b===g.Du.MESSAGE){if(i&&(e.messages.push(i),i=null),k.length>0){for(let a of k)e.messages.push(a);k=[]}let b=Array.isArray(a.content)?a.content.map(a=>{if(!a||"object"!=typeof a)return null;if(a.type===g.Du.INPUT_TEXT||a.type===g.Du.OUTPUT_TEXT)return{type:g.x4.TEXT,text:a.text};if(a.type===g.Du.INPUT_IMAGE){let b=a.image_url||a.file_id||"";return{type:g.x4.IMAGE_URL,image_url:{url:b,detail:a.detail||"auto"}}}if(a.type===g.Du.INPUT_FILE){let b=a.file_data||a.data||a.file_url||a.file_id||"";return{type:g.x4.FILE,file:{...b?{file_data:b}:{},...a.filename?{filename:a.filename}:{},...a.file_id&&!a.file_data&&!a.data?{file_id:a.file_id}:{}}}}return a}).filter(Boolean):a.content,c={role:a.role,content:b};a.role===g.z7.ASSISTANT&&l&&(c.reasoning_content=l),l="",e.messages.push(c)}else if(b===g.Du.FUNCTION_CALL){if(!a.name||"string"!=typeof a.name||""===a.name.trim())continue;!i&&(i={role:g.z7.ASSISTANT,content:null,tool_calls:[]},l&&(i.reasoning_content=l,l="")),i.tool_calls.push({id:a.call_id,type:g.x4.FUNCTION,function:{name:a.name,arguments:"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments??{})}})}else if(b===g.Du.FUNCTION_CALL_OUTPUT){if(i&&(e.messages.push(i),i=null),k.length>0){for(let a of k)e.messages.push(a);k=[]}e.messages.push({role:g.z7.TOOL,tool_call_id:a.call_id,content:"string"==typeof a.output?a.output:JSON.stringify(a.output)})}else if(b===g.Du.REASONING){let b=n(a);b&&(l=l?`${l}
|
|
419
|
+
${b}`:b);continue}}if(i&&e.messages.push(i),k.length>0)for(let a of k)e.messages.push(a);return b.tools&&Array.isArray(b.tools)&&(e.tools=b.tools.map(a=>{if(a.function)return a;let b=a.name;return b&&"string"==typeof b&&""!==b.trim()?{type:g.x4.FUNCTION,function:{name:b,description:"string"==typeof a.description?a.description:String(a.description||""),parameters:(0,h.M)(j(a.parameters)),strict:a.strict}}:null}).filter(Boolean)),void 0!==e.max_output_tokens&&(void 0===e.max_tokens&&(e.max_tokens=e.max_output_tokens),delete e.max_output_tokens),delete e.input,delete e.instructions,delete e.include,delete e.prompt_cache_key,delete e.store,delete e.reasoning,e},null),(0,d.kz)(e.h.OPENAI,e.h.OPENAI_RESPONSES,k,null)},90053:a=>{"use strict";a.exports={rE:"0.6.0"}},90181:(a,b,c)=>{"use strict";c.d(b,{getPricingForModel:()=>f}),c(24081);let d=(0,c(58609).U)("pricing");async function e(){return await d.getAll()}async function f(a,b){if(!b)return null;let d=await e();if(a&&d[a]?.[b])return d[a][b];let{getPricingForModel:f}=await Promise.resolve().then(c.bind(c,71253));return f(a,b)}},90242:(a,b,c)=>{"use strict";c.d(b,{z:()=>e});var d=c(11897);function e(a){return a.length>0&&a.every(a=>a.type===d.x4.TEXT&&Object.keys(a).every(a=>"type"===a||"text"===a))?a.map(a=>a.text||"").join("\n"):a}},90249:(a,b,c)=>{"use strict";let d=c(53053),e=c(84285),f=c(32264),{normalizeHeaders:g,makeCacheKey:h,makeDeduplicationKey:i}=c(79468),j=d.channel("undici:request:pending-requests");a.exports=(a={})=>{let{methods:b=["GET"],skipHeaderNames:c=[],excludeHeaderNames:d=[],maxBufferSize:k=5242880}=a;if("object"!=typeof a||null===a)throw TypeError(`expected type of opts to be an Object, got ${null===a?"null":typeof a}`);if(!Array.isArray(b))throw TypeError(`expected opts.methods to be an array, got ${typeof b}`);for(let a of b)if(!e.safeHTTPMethods.includes(a))throw TypeError(`expected opts.methods to only contain safe HTTP methods, got ${a}`);if(!Array.isArray(c))throw TypeError(`expected opts.skipHeaderNames to be an array, got ${typeof c}`);if(!Array.isArray(d))throw TypeError(`expected opts.excludeHeaderNames to be an array, got ${typeof d}`);if(!Number.isFinite(k)||k<=0)throw TypeError(`expected opts.maxBufferSize to be a positive finite number, got ${k}`);let l=new Set(c.map(a=>a.toLowerCase())),m=new Set(d.map(a=>a.toLowerCase())),n=new Map;return a=>(c,d)=>{if(!c.origin||!1===b.includes(c.method))return a(c,d);if(c={...c,headers:g(c)},l.size>0){for(let b of Object.keys(c.headers))if(l.has(b.toLowerCase()))return a(c,d)}let e=i(h(c),m),o=n.get(e);if(o)return!!o.addWaitingHandler(d)||a(c,d);let p=new f(d,()=>{n.delete(e),j.hasSubscribers&&j.publish({size:n.size,key:e,type:"removed"})},k);return n.set(e,p),j.hasSubscribers&&j.publish({size:n.size,key:e,type:"added"}),a(c,p)}}},90694:(a,b,c)=>{"use strict";function d({promptTokens:a,completionTokens:b,totalTokens:c,cachedTokens:e=0,cacheCreationTokens:f=0,reasoningTokens:g=0}){let h={prompt_tokens:a,completion_tokens:b,total_tokens:c};return(e>0||f>0)&&(h.prompt_tokens_details={},e>0&&(h.prompt_tokens_details.cached_tokens=e),f>0&&(h.prompt_tokens_details.cache_creation_tokens=f)),g>0&&(h.completion_tokens_details={reasoning_tokens:g}),h}c.d(b,{B:()=>g,c:()=>d});let e=a=>"number"==typeof a?a:0,f={claude(a){let b=e(a.input_tokens),c=e(a.output_tokens),d=e(a.cache_read_input_tokens),f=e(a.cache_creation_input_tokens),g=b+d+f;return{promptTokens:g,completionTokens:c,totalTokens:g+c,cachedTokens:d,cacheCreationTokens:f}},gemini(a){let b=e(a.cachedContentTokenCount),c=e(a.promptTokenCount),d=e(a.thoughtsTokenCount),f=e(a.totalTokenCount),g=e(a.candidatesTokenCount);return 0===g&&f>0&&(g=f-c-d)<0&&(g=0),{promptTokens:c,completionTokens:g+d,totalTokens:f,cachedTokens:b,reasoningTokens:d}},kiro(a){let b=e(a.inputTokens),c=e(a.outputTokens),d=e(a.cache_read_input_tokens)||e(a.cachedTokens)||e(a.cached_tokens),f=e(a.cache_creation_input_tokens),g={promptTokens:b,completionTokens:c,totalTokens:b+c};return d>0&&(g.cachedTokens=d),f>0&&(g.cacheCreationTokens=f),g},ollama(a){let b=e(a.prompt_eval_count),c=e(a.eval_count);return{promptTokens:b,completionTokens:c,totalTokens:b+c}},commandcode(a){let b=e(a.inputTokens),c=e(a.outputTokens),d="number"==typeof a.totalTokens?a.totalTokens:b+c;return{promptTokens:b,completionTokens:c,totalTokens:d}}};function g(a,b){let c=f[b];return c&&a&&"object"==typeof a?d(c(a)):null}},90912:(a,b,c)=>{"use strict";let d=c(34589),{URLSerializer:e}=c(16537),{isValidHeaderName:f}=c(42425);a.exports={urlEquals:function(a,b,c=!1){return e(a,c)===e(b,c)},getFieldValues:function(a){d(null!==a);let b=[];for(let c of a.split(","))f(c=c.trim())&&b.push(c);return b}}},91004:(a,b,c)=>{"use strict";c.d(b,{A:()=>e});var d=c(74570);c(21820);let e=[{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:{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:{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:{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"}},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"],transport:{baseUrls:["https://daily-cloudcode-pa.googleapis.com","https://daily-cloudcode-pa.sandbox.googleapis.com"],format:"antigravity",headers:{"User-Agent":"antigravity/1.107.0 darwin/arm64"},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-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-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:{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:{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:{baseUrl:"https://polly.{region}.amazonaws.com/v1/speech",authType:"apikey",authHeader:"aws-sigv4",format:"aws-polly",models:[{id:"standard",name:"Standard"},{id:"neural",name:"Neural"},{id:"long-form",name:"Long-form"},{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:{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:{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:{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:{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:{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:{baseUrl:"https://api.cartesia.ai/tts/bytes",authType:"apikey",authHeader:"x-api-key",format:"cartesia",models:[{id:"sonic-2",name:"Sonic 2"},{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:{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:{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:{baseUrl:"https://api.anthropic.com/v1/messages",format:"claude",urlSuffix:"?beta=true",headers:{"Anthropic-Version":"2023-06-01","Anthropic-Beta":"claude-code-20250219,oauth-2025-04-20,interleaved-thinking-2025-05-14,context-management-2025-06-27,prompt-caching-scope-2026-01-05,advanced-tool-use-2025-11-20,effort-2025-11-24,structured-outputs-2025-12-15,fast-mode-2026-02-01,redact-thinking-2026-02-12,token-efficient-tools-2026-03-28","Anthropic-Dangerous-Direct-Browser-Access":"true","User-Agent":"claude-cli/2.1.92 (external, sdk-cli)","X-App":"cli","X-Stainless-Helper-Method":"stream","X-Stainless-Retry-Count":"0","X-Stainless-Runtime-Version":"v24.14.0","X-Stainless-Package-Version":"0.80.0","X-Stainless-Runtime":"node","X-Stainless-Lang":"js","X-Stainless-Arch":"arm64","X-Stainless-Os":"MacOS","X-Stainless-Timeout":"600"},quirks:{cloakToolsOnOAuth:!0},auth:{apiKey:{header:"x-api-key",scheme:"raw"},oauth:{header:"Authorization",scheme:"bearer"},hooks:["claudeOverlay"]},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-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-haiku-4-5-20251001",name:"Claude 4.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:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},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:{baseUrl:"https://api.cline.bot/api/v1/chat/completions",headers:{"HTTP-Referer":"https://cline.bot","X-Title":"Cline"},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:{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:{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:{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:{baseUrl:"https://chatgpt.com/backend-api/codex/responses",format:"openai-responses",forceStream:!0,headers:{originator:"codex_cli_rs","User-Agent":"codex_cli_rs/0.136.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,refresh:{encoding:"form",scope:"openid profile email offline_access"},maxRefreshAgeMs:6912e5,trackRefreshAt:!0},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:{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:{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:{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:{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:{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/GetDefaultModelNudgeData",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:{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:{baseUrl:"https://api.deepgram.com/v1/listen",authType:"apikey",authHeader:"token",format:"deepgram"}},{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:{baseUrl:"https://api.deepseek.com/chat/completions",validateUrl:"https://api.deepseek.com/models",reasoningInject:{scope:"all"}},transports:[{format:"openai",baseUrl:"https://api.deepseek.com/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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"}]},{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:{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:{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"},{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:{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:{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:{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:{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:{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:{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:{baseUrl:"https://cloudcode-pa.googleapis.com/v1internal",format:"gemini-cli",cliVersion:"0.34.0",apiClient:"google-genai-sdk/1.41.0 gl-node/v22.19.0",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:{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:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-tts"},sttConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key",format:"gemini-stt"},embeddingConfig:{baseUrl:"https://generativelanguage.googleapis.com/v1beta/models",authType:"apikey",authHeader:"key"},imageConfig:{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:{baseUrl:"https://api.githubcopilot.com/chat/completions",responsesUrl:"https://api.githubcopilot.com/responses",headers:{"copilot-integration-id":"vscode-chat","editor-version":"vscode/1.110.0","editor-plugin-version":"copilot-chat/0.38.0","user-agent":"GitHubCopilotChat/0.38.0","openai-intent":"conversation-panel","x-github-api-version":"2025-04-01","x-vscode-user-agent-library-version":"electron-fetch","X-Initiator":"user",Accept:"application/json","Content-Type":"application/json"},copilot:{vscodeVersion:"1.110.0",chatVersion:"0.38.0",userAgent:"GitHubCopilotChat/0.38.0",apiVersion:"2025-04-01"},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:{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",userAgent:"GitHubCopilotChat/0.26.7",editorVersion:"vscode/1.85.0",editorPluginVersion:"copilot-chat/0.26.7"},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:{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:{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.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}},{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:{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:[{format:"openai",baseUrl:"https://api.z.ai/api/coding/paas/v4/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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.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}},{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:{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:{baseUrl:"google-tts",authType:"none",authHeader:"none",format:"google-tts",models:[]}},{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:{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:{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:{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:{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:{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:{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:{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)"},{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:{baseUrl:"https://api.jina.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"jina-embeddings-v3",name:"Jina Embeddings v3",dimensions:1024},{id:"jina-embeddings-v2-base-en",name:"Jina Embeddings v2 Base EN",dimensions:768},{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:{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:{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:{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},{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:{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:[{format:"openai",baseUrl:"https://api.kimi.com/coding/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer",hooks:["kimiHeaders"]}},{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}},{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:{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:[{format:"openai",baseUrl:"https://api.kimi.com/coding/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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"],searchViaChat:{defaultModel:"kimi-k2.5",endpoint:"https://api.moonshot.cn/v1/chat/completions",pricingUrl:"https://platform.moonshot.ai/docs/pricing/chat"}},{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:{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:{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:{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:{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},{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:{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:[{format:"openai",baseUrl:"https://api.minimaxi.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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:{baseUrl:"https://api.minimaxi.com/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},features:{usage:!0,usageApikey:!0}},{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:{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:[{format:"openai",baseUrl:"https://api.minimax.io/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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:{baseUrl:"https://api.minimax.io/v1/t2a_v2",authType:"apikey",authHeader:"bearer",format:"minimax-tts"},imageConfig:{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}},{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:{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:{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:{baseUrl:"https://api.xiaomimimo.com/api/free-ai/openai/chat",noAuth:!0},models:[{id:"mimo-auto",name:"MiMo Auto"}]},{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:{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:{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:{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:{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:{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:{baseUrl:"https://integrate.api.nvidia.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"nvidia-tts"},embeddingConfig:{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:{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:{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}},{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:{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:{baseUrl:"https://api.openai.com/v1/audio/speech",authType:"apikey",authHeader:"bearer",format:"openai",defaultModel:"gpt-4o-mini-tts"},sttConfig:{baseUrl:"https://api.openai.com/v1/audio/transcriptions",authType:"apikey",authHeader:"bearer",format:"openai"},embeddingConfig:{baseUrl:"https://api.openai.com/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{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 Go",icon:"terminal",color:"#E87040",textIcon:"OC",website:"https://opencode.ai/auth",notice:{text:"OpenCode Go subscription: $5/mo (then 0/mo). Access to Kimi, GLM, Qwen, MiMo, MiniMax models.",apiKeyUrl:"https://opencode.ai/auth"}},category:"apikey",transport:{baseUrl:"https://opencode.ai/zen/go/v1/chat/completions",headers:{}},models:[{id:"glm-5.2",name:"GLM 5.2"},{id:"glm-5.1",name:"GLM 5.1"},{id:"kimi-k2.7-code",name:"Kimi K2.7 Code"},{id:"kimi-k2.6",name:"Kimi K2.6"},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro"},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash"},{id:"mimo-v2.5",name:"MiMo V2.5"},{id:"mimo-v2.5-pro",name:"MiMo V2.5 Pro"},{id:"minimax-m3",name:"MiniMax M3",targetFormat:"claude"},{id:"minimax-m2.7",name:"MiniMax M2.7",targetFormat:"claude"},{id:"minimax-m2.5",name:"MiniMax M2.5",targetFormat:"claude"},{id:"qwen3.7-max",name:"Qwen 3.7 Max",targetFormat:"claude"},{id:"qwen3.7-plus",name:"Qwen 3.7 Plus",targetFormat:"claude"},{id:"qwen3.6-plus",name:"Qwen 3.6 Plus",targetFormat:"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:{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",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},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:{baseUrl:"https://openrouter.ai/api/v1/chat/completions",defaultModel:"openai/gpt-4o-mini-tts",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},embeddingConfig:{baseUrl:"https://openrouter.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},imageConfig:{baseUrl:"https://openrouter.ai/api/v1/images/generations",headers:{"HTTP-Referer":"https://endpoint-proxy.local","X-Title":"Endpoint Proxy"}},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:{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:{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:{baseUrl:"https://api.play.ht/api/v2/tts/stream",authType:"apikey",authHeader:"playht",format:"playht",models:[{id:"PlayDialog",name:"PlayDialog"},{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:{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",hidden:!0,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:{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:{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:{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:{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:{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:{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:"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:{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:{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:{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:{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:{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:{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:{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:{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:{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:{baseUrl:"https://api.venice.ai/api/v1/embeddings",authType:"apikey",authHeader:"bearer"},imageConfig:{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:{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:{baseUrl:"https://ai-gateway.vercel.sh/v1/embeddings"},imageConfig:{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:{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:{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:{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:{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:{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"}],serviceKinds:["llm","imageToText","webSearch","image"],imageConfig:{baseUrl:"https://api.x.ai/v1/images/generations",bodyFields:["model","prompt","n","response_format"]},searchViaChat:{defaultModel:"grok-4.20-reasoning",endpoint:"https://api.x.ai/v1/responses",pricingUrl:"https://x.ai/api#pricing"}},{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:{baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",validateUrl:"https://api.xiaomimimo.com/v1/models"},transports:[{format:"openai",baseUrl:"https://api.xiaomimimo.com/v1/chat/completions",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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"}]},{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:{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:[{format:"openai",auth:{combined:!0,header:"Authorization",scheme:"bearer"}},{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"}]},{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:{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}}]},92216:(a,b,c)=>{"use strict";c.r(b),c.d(b,{DEFAULT_QUOTA_FRESH_MS:()=>h,cleanupProviderConnections:()=>y,connToRow:()=>n,createProviderConnection:()=>t,deleteProviderConnection:()=>v,deleteProviderConnectionsByProvider:()=>w,getProviderConnectionById:()=>q,getProviderConnections:()=>p,getProviderQuotaHeadroom:()=>r,redactSecrets:()=>l,reorderProviderConnections:()=>x,updateProviderConnection:()=>u});var d=c(27137),e=c(24081),f=c(50743),g=c(20639);let h=2*c(48595).oc.tickIntervalMs,i=["displayName","email","globalPriority","defaultModel","accessToken","refreshToken","expiresAt","tokenType","scope","projectId","apiKey","testStatus","lastTested","lastError","lastErrorAt","rateLimitedUntil","expiresIn","errorCode","consecutiveUseCount","idToken","lastRefreshAt"],j=new Set(["accessToken","refreshToken","idToken","apiKey","copilotToken","cookies","clientSecret","secretAccessKey"]);function k(a,b,c=!1){return"string"==typeof a?c&&a?b(a):a:c&&null!==a&&"object"!=typeof a?void 0:Array.isArray(a)?a.map(a=>k(a,b,c)):a&&"object"==typeof a?Object.fromEntries(Object.entries(a).map(([a,d])=>[a,k(d,b,c||j.has(a))])):a}function l(a){return k(a,()=>void 0)}function m(a){return a?{...k((0,f.q)(a.data,{}),a=>(0,g.wu)(a)??a),id:a.id,provider:a.provider,authType:a.authType,name:a.name,email:a.email,priority:a.priority,isActive:1===a.isActive||!0===a.isActive,createdAt:a.createdAt,updatedAt:a.updatedAt}:null}function n(a){let{id:b,provider:c,authType:d,name:e,email:h,priority:i,isActive:j,createdAt:l,updatedAt:m,...n}=a,o=k(n,g.MG);return{id:b,provider:c,authType:d,name:e??null,email:h??null,priority:i??null,isActive:+(!1!==j),data:(0,f.s)(o),createdAt:l,updatedAt:m}}function o(a,b){let c=n(b);a.run(`INSERT INTO providerConnections(id, provider, authType, name, email, priority, isActive, data, createdAt, updatedAt)
|
|
420
|
+
VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
|
|
421
|
+
ON CONFLICT(id) DO UPDATE SET
|
|
422
|
+
provider=excluded.provider, authType=excluded.authType, name=excluded.name,
|
|
423
|
+
email=excluded.email, priority=excluded.priority, isActive=excluded.isActive,
|
|
424
|
+
data=excluded.data, updatedAt=excluded.updatedAt`,[c.id,c.provider,c.authType,c.name,c.email,c.priority,c.isActive,c.data,c.createdAt,c.updatedAt])}async function p(a={}){let b=await (0,e.c)(),c=[],d=[];a.provider&&(c.push("provider = ?"),d.push(a.provider)),void 0!==a.isActive&&(c.push("isActive = ?"),d.push(+!!a.isActive));let f=`SELECT * FROM providerConnections${c.length?` WHERE ${c.join(" AND ")}`:""}`,g=b.all(f,d).map(m);return g.sort((a,b)=>(a.priority||999)-(b.priority||999)),g}async function q(a){return m((await (0,e.c)()).get("SELECT * FROM providerConnections WHERE id = ?",[a]))}async function r(a=h){try{let b=Object.create(null),c=Number.isFinite(a)?a:h,d=Date.now();for(let a of(await p())){let e=a.lastQuota,f=Number(e?.at),g=Number(e?.remainingPercentage);if(!Number.isFinite(f)||d-f>c||!Number.isFinite(g))continue;let h=b[a.provider];(!Number.isFinite(h)||g>h)&&(b[a.provider]=g)}return b}catch{return{}}}function s(a,b){let c=a.all("SELECT * FROM providerConnections WHERE provider = ?",[b]).map(m);c.sort((a,b)=>{let c=(a.priority||0)-(b.priority||0);return 0!==c?c:new Date(b.updatedAt||0)-new Date(a.updatedAt||0)}),c.forEach((b,c)=>{a.run("UPDATE providerConnections SET priority = ? WHERE id = ?",[c+1,b.id])})}async function t(a){let b,c=await (0,e.c)(),f=new Date().toISOString();return c.transaction(()=>{let e=c.all("SELECT * FROM providerConnections WHERE provider = ?",[a.provider]).map(m),g=null;if("oauth"===a.authType&&a.email){let b=a.providerSpecificData?.username,c=a.providerSpecificData?.chatgptAccountId;g=e.find(d=>{if("oauth"!==d.authType||d.email!==a.email)return!1;let e=d.providerSpecificData?.chatgptAccountId;if(c&&e)return c===e;if(c&&!e||!c&&e)return!1;let f=d.providerSpecificData?.username;return b&&f?b===f:!b&&!f})}else"apikey"===a.authType&&a.name&&(g=e.find(b=>"apikey"===b.authType&&b.name===a.name));if(g){let d={...g,...a,updatedAt:f};o(c,d),b=d;return}let h=a.name||null;h||"oauth"!==a.authType&&"access_token"!==a.authType||(h=a.email||`Account ${e.length+1}`);let j=a.priority;j||(j=e.reduce((a,b)=>Math.max(a,b.priority||0),0)+1);let k={id:(0,d.A)(),provider:a.provider,authType:a.authType||"oauth",name:h,priority:j,isActive:void 0===a.isActive||a.isActive,createdAt:f,updatedAt:f};for(let b of i)void 0!==a[b]&&null!==a[b]&&(k[b]=a[b]);a.providerSpecificData&&Object.keys(a.providerSpecificData).length>0&&(k.providerSpecificData=a.providerSpecificData),void 0!==a.email&&(k.email=a.email),o(c,k),s(c,a.provider),b=k}),b}async function u(a,b){let c,d=await (0,e.c)();return d.transaction(()=>{let e=d.get("SELECT * FROM providerConnections WHERE id = ?",[a]);if(!e){c=null;return}let f=m(e),g={...f,...b,updatedAt:new Date().toISOString()};o(d,g),void 0!==b.priority&&s(d,f.provider),c=g}),c}async function v(a){let b=await (0,e.c)(),c=!1;return b.transaction(()=>{let d=b.get("SELECT provider FROM providerConnections WHERE id = ?",[a]);d&&(b.run("DELETE FROM providerConnections WHERE id = ?",[a]),s(b,d.provider),c=!0)}),c}async function w(a){let b=await (0,e.c)(),c=b.get("SELECT COUNT(*) AS n FROM providerConnections WHERE provider = ?",[a]);return b.run("DELETE FROM providerConnections WHERE provider = ?",[a]),c?.n||0}async function x(a){let b=await (0,e.c)();b.transaction(()=>s(b,a))}async function y(){let a=await (0,e.c)(),b=["displayName","email","globalPriority","defaultModel","accessToken","refreshToken","expiresAt","tokenType","scope","projectId","apiKey","testStatus","lastTested","lastError","lastErrorAt","rateLimitedUntil","expiresIn","consecutiveUseCount"],c=0;return a.transaction(()=>{for(let d of a.all("SELECT * FROM providerConnections")){let e=m(d),f=!1;for(let a of b)(null===e[a]||void 0===e[a])&&a in e&&(delete e[a],c++,f=!0);e.providerSpecificData&&0===Object.keys(e.providerSpecificData).length&&(delete e.providerSpecificData,c++,f=!0),f&&o(a,e)}}),c}},93048:(a,b,c)=>{"use strict";c.d(b,{Hv:()=>v,_2:()=>u});var d=c(82689),e=c(98976),f=c(26762),g=c(86363),h=c(74570),i=c(22884),j=c(71553),k=c(77030);let l=new Set(["localhost","ip6-localhost","ip6-loopback","metadata.google.internal"]),m=[".internal",".local",".localhost"];function n(a){let b=a.split(".");if(4!==b.length)return null;let c=0;for(let a of b){if(!/^\d{1,3}$/.test(a))return null;let b=Number(a);if(b>255)return null;c=256*c+b}return c>>>0}let o=[[n("0.0.0.0"),8],[n("10.0.0.0"),8],[n("127.0.0.0"),8],[n("169.254.0.0"),16],[n("172.16.0.0"),12],[n("192.168.0.0"),16],[n("100.64.0.0"),10]];function p(a){return o.some(([b,c])=>{let d=0===c?0:0xffffffff<<32-c>>>0;return(a&d)==(b&d)})}function q(a){let b=n(a);return null!==b&&p(b)}function r(a){let b=a.replace(/^\[|\]$/g,"").toLowerCase(),c=b.match(/^::ffff:(\d+\.\d+\.\d+\.\d+)$/),d=c?.[1]||function(a){let b=a.split("::");if(b.length>2)return null;let c=b[0]?b[0].split(":").filter(Boolean):[],d=2===b.length&&b[1]?b[1].split(":").filter(Boolean):[],e=8-c.length-d.length;if(e<0||1===b.length&&0!==e)return null;let f=[...c,...Array(e).fill("0"),...d];if(8!==f.length||f.slice(0,5).some(a=>"0"!==a)||"ffff"!==f[5])return null;let g=Number.parseInt(f[6],16),h=Number.parseInt(f[7],16);return[g,h].every(a=>Number.isInteger(a)&&a>=0&&a<=65535)?`${g>>>8}.${255&g}.${h>>>8}.${255&h}`:null}(b);return d?q(d):"::1"===b||"::"===b||b.startsWith("fe80:")||b.startsWith("fc")||b.startsWith("fd")}function s(a){let b=a.toLowerCase().replace(/^\[|\]$/g,"");if(l.has(b)||m.some(a=>b.endsWith(a)))throw Error("Blocked URL: internal host");let c=function(a){if(/^\d+$/.test(a)){let b=Number(a);if(Number.isSafeInteger(b)&&b>=0&&b<=0xffffffff)return b>>>0}if(/^0x[0-9a-f]+$/i.test(a)){let b=parseInt(a,16);if(Number.isFinite(b)&&b>=0&&b<=0xffffffff)return b>>>0}let b=a.split(".");if(4===b.length&&b.every(a=>/^(0x[0-9a-f]+|0[0-7]*|[1-9]\d*)$/i.test(a))){let a=0;for(let c of b){let b;if(!Number.isFinite(b=/^0x/i.test(c)?parseInt(c,16):c.startsWith("0")&&c.length>1?parseInt(c,8):parseInt(c,10))||b<0||b>255)return null;a=256*a+b}return a>>>0}return null}(b);if(null!==c&&p(c)||q(b)||b.includes(":")&&r(b)||4===(0,k.isIP)(b)&&q(b)||6===(0,k.isIP)(b)&&r(b))throw Error("Blocked URL: private IP")}async function t(a){let b,c;try{c=new URL(a)}catch{throw Error("Blocked URL: invalid URL")}if("http:"!==c.protocol&&"https:"!==c.protocol)throw Error("Blocked URL: unsupported scheme");s(c.hostname);let d=new URL(a).hostname.replace(/^\[|\]$/g,"");if(!(0,k.isIP)(d)){try{b=await (0,j.lookup)(d,{all:!0,verbatim:!0})}catch{throw Error("Blocked URL: DNS resolution failed")}if(!b?.length)throw Error("Blocked URL: DNS resolution failed");for(let a of b)s(a.address)}}function u(a){return a?.format==="gemini"||a?.format==="vertex"}class v{constructor(a,b){this.provider=a,this.config=b,this.noAuth=b?.noAuth||!1}getProvider(){return this.provider}getBaseUrls(){return this.config.baseUrls||(this.config.baseUrl?[this.config.baseUrl]:[])}getFallbackCount(){return this.getBaseUrls().length||1}buildUrl(a,b,c=0,d=null){if(this.provider?.startsWith?.("openai-compatible-")){let a=(d?.providerSpecificData?.baseUrl||h.Es).replace(/\/$/,""),b="responses"===(0,i.jD)(this.provider,d)?"/responses":"/chat/completions";return`${a}${b}`}if(this.provider?.startsWith?.("anthropic-compatible-")){let a=(d?.providerSpecificData?.baseUrl||h.ky).replace(/\/$/,"");return`${a}/messages`}let e=this.getBaseUrls();return e[c]||e[0]||this.config.baseUrl}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers};return this.provider?.startsWith?.("anthropic-compatible-")?(a.apiKey?c["x-api-key"]=a.apiKey:a.accessToken&&(c.Authorization=`Bearer ${a.accessToken}`),c["anthropic-version"]||(c["anthropic-version"]=h.b8)):a.accessToken?c.Authorization=`Bearer ${a.accessToken}`:a.apiKey&&(c.Authorization=`Bearer ${a.apiKey}`),b&&(c.Accept="text/event-stream"),c}transformRequest(a,b,c,d){return c&&b&&Array.isArray(b.messages)&&!b.stream_options&&(b.stream_options={include_usage:!0}),u(this.config)&&b&&"object"==typeof b?delete b.stream:c&&b&&"object"==typeof b&&!0!==b.stream&&(b.stream=!0),b}shouldRetry(a,b){return a===d.gx.RATE_LIMITED&&b+1<this.getFallbackCount()}async refreshCredentials(a,b,c=null){return null}needsRefresh(a){return(0,e.fp)(this.provider,a)}isUserConfiguredBase(a){return this.provider?.startsWith?.("openai-compatible-")||this.provider?.startsWith?.("anthropic-compatible-")||!!a?.providerSpecificData?.baseUrl||!!a?.runtimeTransport?.baseUrl}parseError(a,b){return{status:a.status,message:b||`HTTP ${a.status}`}}async execute({model:a,body:b,stream:c,credentials:e,signal:h,log:i,proxyOptions:j=null}){let k=this.getFallbackCount(),l=null,m=0,n={},o={...d.cI,...this.config.retry},p=d.mY,q=async(a,b,c,e=null)=>{var f;if(h?.aborted)return!1;let{attempts:g,delayMs:j}=(0,d.DR)(o[b]);if(g<=0||n[a]>=g)return!1;let k=j;if(e&&this.computeRetryDelay){let b=await this.computeRetryDelay(e,n[a]+1,j);if(!1===b)return!1;null!=b&&(k=b)}return k>p?(i?.debug?.("RETRY",`${c} skipped: ${k/1e3}s exceeds remaining budget ${p/1e3}s`),!1):(p-=k,n[a]++,i?.debug?.("RETRY",`${c} retry ${n[a]}/${g} after ${k/1e3}s`),await (f=k,h?.aborted?Promise.resolve():new Promise(a=>{let b=()=>{clearTimeout(c),h?.removeEventListener?.("abort",b),a()},c=setTimeout(b,f);h?.addEventListener?.("abort",b,{once:!0})})),!h?.aborted)};for(let o=0;o<k;o++){let p=this.transformRequest(a,b,c,e),r=this.buildUrl(a,c,o,e),s=this.buildHeaders(e,c);if(n[o]||(n[o]=0),this.isUserConfiguredBase(e))try{await t(r)}catch(a){throw Error(`SSRF blocked: ${a.message}`)}let u=new AbortController,v=this.config?.timeoutMs||d.pH,w=setTimeout(()=>u.abort(Error("fetch connect timeout")),v),x=h?AbortSignal.any([h,u.signal]):u.signal;try{let a=JSON.stringify(p),b=Date.now();(0,g.s)("FETCH",`${this.provider.toUpperCase()} → ${r} | body=${a.length}B | connectTimeout=${v}ms`);let c=await (0,f.Fm)(r,{method:"POST",headers:s,body:a,signal:x,redirect:"error"},j);clearTimeout(w);let d=c.headers?.get?.("content-type")||"",e=c.headers?.get?.("content-length")||"?";if((0,g.s)("FETCH",`${this.provider.toUpperCase()} ← ${c.status} | ttft=${Date.now()-b}ms | ct=${d} | cl=${e}`),await q(o,c.status,`status ${c.status}`,c)){try{await c.body?.cancel?.()}catch{}o--;continue}if(this.shouldRetry(c.status,o)){try{await c.body?.cancel?.()}catch{}i?.debug?.("RETRY",`${c.status} on ${r}, trying fallback ${o+1}`),m=c.status;continue}return{response:c,url:r,headers:s,transformedBody:p}}catch(b){clearTimeout(w),l=b;let a=u.signal.aborted&&"AbortError"===b.name;if((0,g.s)("FETCH",`${this.provider.toUpperCase()} ✖ ${b.name}: ${b.message}${a?" (connect timeout)":""}`),"AbortError"===b.name&&!a)throw b;if(await q(o,d.gx.BAD_GATEWAY,`network "${b.message}"`)){o--;continue}if(o+1<k){i?.debug?.("RETRY",`Error on ${r}, trying fallback ${o+1}`);continue}throw b}}throw l||Error(`All ${k} URLs failed with status ${m}`)}}},94050:(a,b,c)=>{"use strict";let{states:d,opcodes:e}=c(62026),{isUtf8:f}=c(4573),{removeHTTPWhitespace:g}=c(16537),{collectASequenceOfCodePointsFast:h}=c(70745);function i(a){return a===e.CLOSE||a===e.PING||a===e.PONG}function j(a){return a===e.CONTINUATION}function k(a){return a===e.TEXT||a===e.BINARY}a.exports={isConnecting:function(a){return a===d.CONNECTING},isEstablished:function(a){return a===d.OPEN},isClosing:function(a){return a===d.CLOSING},isClosed:function(a){return a===d.CLOSED},fireEvent:function(a,b,c=(a,b)=>new Event(a,b),d={}){let e=c(a,d);b.dispatchEvent(e)},isValidSubprotocol:function(a){if(0===a.length)return!1;for(let b=0;b<a.length;++b){let c=a.charCodeAt(b);if(c<33||c>126||34===c||40===c||41===c||44===c||47===c||58===c||59===c||60===c||61===c||62===c||63===c||64===c||91===c||92===c||93===c||123===c||125===c)return!1}return!0},isValidStatusCode:function(a){return a>=1e3&&a<1015?1004!==a&&1005!==a&&1006!==a:a>=3e3&&a<=4999},websocketMessageReceived:function(a,b,c){a.onMessage(b,c)},utf8Decode:(()=>{if("string"==typeof process.versions.icu){let a=new TextDecoder("utf-8",{fatal:!0});return a.decode.bind(a)}return function(a){if(f(a))return a.toString("utf-8");throw TypeError("Invalid utf-8 received.")}})(),isControlFrame:i,isContinuationFrame:j,isTextBinaryFrame:k,isValidOpcode:function(a){return k(a)||j(a)||i(a)},parseExtensions:function(a){let b={position:0},c=new Map;for(;b.position<a.length;){let[d,e=""]=h(";",a,b).split("=",2);c.set(g(d,!0,!1),g(e,!1,!0)),b.position++}return c},isValidClientWindowBits:function(a){if(0===a.length)return!1;for(let b=0;b<a.length;b++){let c=a.charCodeAt(b);if(c<48||c>57)return!1}let b=Number.parseInt(a,10);return b>=8&&b<=15},toArrayBuffer:function(a){return a.byteLength===a.buffer.byteLength?a.buffer:new Uint8Array(a).buffer},getURLRecord:function(a,b){let c;try{c=new URL(a,b)}catch(a){throw new DOMException(a,"SyntaxError")}if("http:"===c.protocol?c.protocol="ws:":"https:"===c.protocol&&(c.protocol="wss:"),"ws:"!==c.protocol&&"wss:"!==c.protocol)throw new DOMException("expected a ws: or wss: url","SyntaxError");if(c.hash.length||c.href.endsWith("#"))throw new DOMException("hash","SyntaxError");return c},validateCloseCodeAndReason:function(a,b){if(null!==a&&1e3!==a&&(a<3e3||a>4999))throw new DOMException("invalid code","InvalidAccessError");if(null!==b){let a=Buffer.byteLength(b);if(a>123)throw new DOMException(`Reason must be less than 123 bytes; received ${a}`,"SyntaxError")}}}},94107:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(55511),e=c(93048),f=c(38421),g=c(69632),h=c(19016);class i extends e.Hv{constructor(){super("commandcode",f.xq.commandcode)}transformRequest(a,b,c,d){return b.stream=!0,b}buildHeaders(a,b=!0){let c={"Content-Type":"application/json",...this.config.headers||{},"x-session-id":(0,d.randomUUID)()},e=a?.apiKey||a?.accessToken;return e&&(c.Authorization=`Bearer ${e}`),b&&(c.Accept="text/event-stream"),c}async execute(a){var b,c;let d,e,f,i,j,k,l=await super.execute(a);return l?.response?.ok&&l.response.body&&(b=l.response,c=a.model,d=new TextDecoder,e=new TextEncoder,f="",i={model:c},j=(a,b)=>{if(a)for(let c of Array.isArray(a)?a:[a])null!=c&&b.enqueue(e.encode(`data: ${JSON.stringify(c)}
|
|
425
|
+
|
|
426
|
+
`))},k=new TransformStream({transform(a,b){let c=(f+=d.decode(a,{stream:!0})).split("\n");for(let a of(f=c.pop()||"",c)){let c=a.trim();c&&j((0,g.H)(c,i),b)}},flush(a){let b=f.trim();b&&j((0,g.H)(b,i),a),a.enqueue(e.encode(h.$U))}}),l.response=new Response(b.body.pipeThrough(k),{status:b.status,statusText:b.statusText,headers:b.headers})),l}}},94279:(a,b,c)=>{"use strict";let{writeFile:d,readFile:e,mkdir:f}=c(51455),{dirname:g,resolve:h}=c(76760),{setTimeout:i,clearTimeout:j}=c(87997),{InvalidArgumentError:k,UndiciError:l}=c(61448),{hashId:m,isUrlExcludedFactory:n,normalizeHeaders:o,createHeaderFilters:p}=c(47800);function q(a,b,c={}){var d,e,f;let g=new URL(a.path,a.origin),h=a._normalizedHeaders||o(a.headers);return a._normalizedHeaders||(a._normalizedHeaders=h),{method:a.method||"GET",url:function(a,b,c){if(!1===b)return`${a.origin}${a.pathname}`;if(c){let b=String(c(a.searchParams)??"");return b?`${a.origin}${a.pathname}?${b}`:`${a.origin}${a.pathname}`}return a.toString()}(g,c.matchQuery,c.normalizeQuery),headers:r(h,b,c),body:(d=a.body,e=c.matchBody,f=c.normalizeBody,!1===e?"":f?String(f(d)??""):d?String(d):"")}}function r(a,b,c={}){if(!a||"object"!=typeof a)return{};let{caseSensitive:d=!1}=c,e={},{ignore:f,exclude:g,match:h}=b;for(let[b,c]of Object.entries(a)){let a=d?b:b.toLowerCase();!(g.has(a)||f.has(a))&&(0===h.size||h.has(a))&&(e[a]=c)}return e}function s(a,b,c={}){if(!a||"object"!=typeof a)return{};let{caseSensitive:d=!1}=c,e={},{exclude:f}=b;for(let[b,c]of Object.entries(a)){let a=d?b:b.toLowerCase();f.has(a)||(e[a]=c)}return e}function t(a){let b=[a.method,a.url];if(a.headers&&"object"==typeof a.headers)for(let c of Object.keys(a.headers).sort()){let d=Array.isArray(a.headers[c])?a.headers[c]:[a.headers[c]];for(let a of(b.push(c),d.sort()))b.push(String(a))}return b.push(a.body),m(b.join("|"))}class u{#bF;#bG;#bH=new Map;#bI;#bJ=1/0;#bK=!1;#bL;constructor(a={}){this.#bI=a.snapshotPath,this.#bJ=a.maxSnapshots||1/0,this.#bK=a.autoFlush||!1,this.flushInterval=a.flushInterval||3e4,this._flushTimer=null,this.matchOptions={matchHeaders:a.matchHeaders||[],ignoreHeaders:a.ignoreHeaders||[],excludeHeaders:a.excludeHeaders||[],matchBody:!1!==a.matchBody,normalizeBody:a.normalizeBody||void 0,matchQuery:!1!==a.matchQuery,normalizeQuery:a.normalizeQuery||void 0,caseSensitive:a.caseSensitive||!1},this.#bL=p(this.matchOptions),this.shouldRecord=a.shouldRecord||(()=>!0),this.shouldPlayback=a.shouldPlayback||(()=>!0),this.#bG=n(a.excludeUrls),this.#bK&&this.#bI&&this.#bM()}async record(a,b){if(!this.shouldRecord(a)||this.isUrlExcluded(a))return;let c=q(a,this.#bL,this.matchOptions),d=t(c),e=o(b.headers),f={statusCode:b.statusCode,headers:s(e,this.#bL,this.matchOptions),body:Buffer.isBuffer(b.body)?b.body.toString("base64"):Buffer.from(String(b.body||"")).toString("base64"),trailers:b.trailers};if(this.#bH.size>=this.#bJ&&!this.#bH.has(d)){let a=this.#bH.keys().next().value;this.#bH.delete(a)}let g=this.#bH.get(d);g&&g.responses?(g.responses.push(f),g.timestamp=new Date().toISOString()):this.#bH.set(d,{request:c,responses:[f],callCount:0,timestamp:new Date().toISOString()}),this.#bK&&this.#bI&&this.#bN()}isUrlExcluded(a){let b=new URL(a.path,a.origin).toString();return this.#bG(b)}findSnapshot(a){if(!this.shouldPlayback(a)||this.isUrlExcluded(a))return;let b=t(q(a,this.#bL,this.matchOptions)),c=this.#bH.get(b);if(!c)return;let d=c.callCount||0,e=Math.min(d,c.responses.length-1);return c.callCount=d+1,{...c,response:c.responses[e]}}async loadSnapshots(a){let b=a||this.#bI;if(!b)throw new k("Snapshot path is required");try{let a=await e(h(b),"utf8"),c=JSON.parse(a);if(Array.isArray(c))for(let{hash:a,snapshot:b}of(this.#bH.clear(),c))this.#bH.set(a,b);else this.#bH=new Map(Object.entries(c))}catch(a){if("ENOENT"===a.code)this.#bH.clear();else throw new l(`Failed to load snapshots from ${b}`,{cause:a})}}async saveSnapshots(a){let b=a||this.#bI;if(!b)throw new k("Snapshot path is required");let c=h(b);await f(g(c),{recursive:!0});let e=Array.from(this.#bH.entries()).map(([a,b])=>({hash:a,snapshot:b}));await d(c,JSON.stringify(e,null,2),{flush:!0})}clear(){this.#bH.clear()}getSnapshots(){return Array.from(this.#bH.values())}size(){return this.#bH.size}resetCallCounts(){for(let a of this.#bH.values())a.callCount=0}deleteSnapshot(a){let b=t(q(a,this.#bL,this.matchOptions));return this.#bH.delete(b)}getSnapshotInfo(a){let b=t(q(a,this.#bL,this.matchOptions)),c=this.#bH.get(b);return c?{hash:b,request:c.request,responseCount:c.responses?c.responses.length:+!!c.response,callCount:c.callCount||0,timestamp:c.timestamp}:null}replaceSnapshots(a){if(this.#bH.clear(),Array.isArray(a))for(let{hash:b,snapshot:c}of a)this.#bH.set(b,c);else a&&"object"==typeof a&&(this.#bH=new Map(Object.entries(a)))}#bM(){return this.#bN()}#bO(){this.#bF&&(j(this.#bF),this.saveSnapshots().catch(()=>{}),this.#bF=null)}#bN(){this.#bF=i(()=>{this.saveSnapshots().catch(()=>{}),this.#bK?this.#bF?.refresh():this.#bF=null},1e3)}destroy(){this.#bO(),this.#bF&&(j(this.#bF),this.#bF=null)}async close(){this.#bI&&0!==this.#bH.size&&await this.saveSnapshots(),this.destroy()}}a.exports={SnapshotRecorder:u,formatRequestKey:q,createRequestHash:t,filterHeadersForMatching:r,filterHeadersForStorage:s,createHeaderFilters:p}},94442:(a,b,c)=>{"use strict";let d=c(29021),e=c(55511),{exec:f}=c(79646),{execWithPassword:g,isSudoAvailable:h}=c(81283),{runElevatedPowerShell:i,quotePs:j}=c(11380),{log:k,err:l}=c(86772),m="win32"===process.platform,n="darwin"===process.platform,o=[{dir:"/usr/local/share/ca-certificates",cmd:"update-ca-certificates"},{dir:"/etc/ca-certificates/trust-source/anchors",cmd:"update-ca-trust"},{dir:"/etc/pki/ca-trust/source/anchors",cmd:"update-ca-trust"},{dir:"/etc/pki/trust/anchors",cmd:"update-ca-certificates"}];function p(){for(let a of o)if(d.existsSync(a.dir))return a;return o[0]}let q="Switchboard MITM Root CA";function r(a){let b=d.readFileSync(a,"utf-8"),c=Buffer.from(b.replace(/-----[^-]+-----/g,"").replace(/\s/g,""),"base64");return e.createHash("sha1").update(c).digest("hex").toUpperCase().match(/.{2}/g).join(":")}async function s(a){var b,c;let e,g;return m?(b=a,new Promise(a=>{let c;try{c=r(b).replace(/:/g,"")}catch{return a(!1)}f(`certutil -store Root ${c}`,{windowsHide:!0},b=>{a(!b)})})):n?(c=a,new Promise(a=>{try{let b=r(c).replace(/:/g,"");f(`security find-certificate -a -c "${q}" -Z /Library/Keychains/System.keychain 2>/dev/null`,{windowsHide:!0},(d,e)=>{if(d||!e||!RegExp(`SHA-1 hash:\\s*${b}`,"i").test(e))return a(!1);f(`security verify-cert -c "${c}" -p ssl -k /Library/Keychains/System.keychain 2>/dev/null`,{windowsHide:!0},b=>{a(!b)})})}catch{a(!1)}})):(e=p(),g=`${e.dir}/switchboard-root-ca.crt`,Promise.resolve(d.existsSync(g)))}async function t(a,b){let c=`security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain "${b}"`;try{await g(`security delete-certificate -c "Switchboard MITM Root CA" /Library/Keychains/System.keychain 2>/dev/null || true && ${c}`,a),k("\uD83D\uDD10 Cert: ✅ installed to system keychain")}catch(a){throw Error(a.message?.includes("canceled")?"User canceled authorization":"Certificate install failed")}}async function u(a){let b=`
|
|
427
|
+
certutil -delstore Root ${j(q)} 2>$null | Out-Null
|
|
428
|
+
$exit = & certutil -addstore Root ${j(a)} 2>&1
|
|
429
|
+
if ($LASTEXITCODE -ne 0) { throw "certutil exit $LASTEXITCODE" }
|
|
430
|
+
`;try{await i(b),k("\uD83D\uDD10 Cert: ✅ installed to Windows Root store")}catch(a){throw Error(`Failed to install certificate: ${a.message}`)}}async function v(a,b){let c=r(b).replace(/:/g,""),d=`security delete-certificate -Z "${c}" /Library/Keychains/System.keychain`;try{await g(d,a),k("\uD83D\uDD10 Cert: ✅ uninstalled from system keychain")}catch(a){throw Error("Failed to uninstall certificate")}}async function w(){let a=`certutil -delstore Root ${j(q)}`;try{await i(a),k("\uD83D\uDD10 Cert: ✅ uninstalled from Windows Root store")}catch(a){throw Error(`Failed to uninstall certificate: ${a.message}`)}}async function x(a,b="add"){let c="Switchboard MITM Root CA",d=`
|
|
431
|
+
if ! command -v certutil &> /dev/null; then
|
|
432
|
+
exit 0
|
|
433
|
+
fi
|
|
434
|
+
|
|
435
|
+
DIRS="$HOME/.pki/nssdb $HOME/snap/chromium/current/.pki/nssdb"
|
|
436
|
+
|
|
437
|
+
if [ -d "$HOME/.mozilla/firefox" ]; then
|
|
438
|
+
for profile in "$HOME"/.mozilla/firefox/*/; do
|
|
439
|
+
if [ -f "\${profile}cert9.db" ] || [ -f "\${profile}cert8.db" ]; then
|
|
440
|
+
DIRS="$DIRS $profile"
|
|
441
|
+
fi
|
|
442
|
+
done
|
|
443
|
+
fi
|
|
444
|
+
|
|
445
|
+
if [ -d "$HOME/snap/firefox/common/.mozilla/firefox" ]; then
|
|
446
|
+
for profile in "$HOME"/snap/firefox/common/.mozilla/firefox/*/; do
|
|
447
|
+
if [ -f "\${profile}cert9.db" ] || [ -f "\${profile}cert8.db" ]; then
|
|
448
|
+
DIRS="$DIRS $profile"
|
|
449
|
+
fi
|
|
450
|
+
done
|
|
451
|
+
fi
|
|
452
|
+
|
|
453
|
+
for db in $DIRS; do
|
|
454
|
+
if [ -d "$db" ]; then
|
|
455
|
+
if [ "${b}" = "add" ]; then
|
|
456
|
+
certutil -d sql:"$db" -A -t "C,," -n "${c}" -i "${a}" 2>/dev/null || \\
|
|
457
|
+
certutil -d "$db" -A -t "C,," -n "${c}" -i "${a}" 2>/dev/null || true
|
|
458
|
+
else
|
|
459
|
+
certutil -d sql:"$db" -D -n "${c}" 2>/dev/null || \\
|
|
460
|
+
certutil -d "$db" -D -n "${c}" 2>/dev/null || true
|
|
461
|
+
fi
|
|
462
|
+
fi
|
|
463
|
+
done
|
|
464
|
+
`;return new Promise(a=>{f(d,{shell:"/bin/bash"},()=>a())})}async function y(a,b){if(!h()){k(`🔐 Cert: cannot install to system store without sudo — trust this file on clients: ${b}`),await x(b,"add");return}let c=p(),d=`${c.dir}/switchboard-root-ca.crt`,e=`cp "${b}" "${d}" && (${c.cmd} 2>/dev/null || true)`;try{await g(e,a),await x(b,"add"),k(`🔐 Cert: ✅ installed to Linux trust store (${c.dir}) and user browser databases`)}catch(a){throw Error(`Certificate install failed: ${a.message}`)}}async function z(a){if(await x(null,"delete"),!h())return;let b=p(),c=`${b.dir}/switchboard-root-ca.crt`,d=`rm -f "${c}" && (${b.cmd} 2>/dev/null || true)`;try{await g(d,a),k("\uD83D\uDD10 Cert: ✅ uninstalled from Linux trust store and user browser databases")}catch(a){throw Error("Failed to uninstall certificate")}}a.exports={installCert:async function a(a,b){if(!d.existsSync(b))throw Error(`Certificate file not found: ${b}`);await s(b)?k("\uD83D\uDD10 Cert: already trusted ✅"):m?await u(b):n?await t(a,b):await y(a,b)},uninstallCert:async function a(a,b){await s(b)?m?await w():n?await v(a,b):await z(a):k("\uD83D\uDD10 Cert: not found in system store")},checkCertInstalled:s}},94463:(a,b,c)=>{var d=c(45654);c(63070),c(36105),c(20308),c(49345),c(70710),c(15873),c(87981),c(10401),c(33889),c(65737);var e=d.asn1,f=a.exports=d.pki=d.pki||{};f.pemToDer=function(a){var b=d.pem.decode(a)[0];if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert PEM to DER; PEM is encrypted.");return d.util.createBuffer(b.body)},f.privateKeyFromPem=function(a){var b=d.pem.decode(a)[0];if("PRIVATE KEY"!==b.type&&"RSA PRIVATE KEY"!==b.type){var c=Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');throw c.headerType=b.type,c}if(b.procType&&"ENCRYPTED"===b.procType.type)throw Error("Could not convert private key from PEM; PEM is encrypted.");var g=e.fromDer(b.body);return f.privateKeyFromAsn1(g)},f.privateKeyToPem=function(a,b){var c={type:"RSA PRIVATE KEY",body:e.toDer(f.privateKeyToAsn1(a)).getBytes()};return d.pem.encode(c,{maxline:b})},f.privateKeyInfoToPem=function(a,b){var c={type:"PRIVATE KEY",body:e.toDer(a).getBytes()};return d.pem.encode(c,{maxline:b})}},95095:(a,b,c)=>{"use strict";let d=c(7344),e=c(31825);class f extends d{#bP=null;#bQ=null;constructor(a,b={}){super(b),this.#bP=a,this.#bQ=b}dispatch(a,b){let c=new e({...a,retryOptions:this.#bQ},{dispatch:this.#bP.dispatch.bind(this.#bP),handler:b});return this.#bP.dispatch(a,c)}close(){return this.#bP.close()}destroy(){return this.#bP.destroy()}}a.exports=f},95695:(a,b,c)=>{"use strict";c.a(a,async(a,d)=>{try{c.d(b,{SB:()=>B});var e=c(65369),f=c(30322),g=c(59529),h=c(4620),i=c(16542),j=c(33113),k=c(62692),l=c(84263),m=c(37071),n=c(51171),o=c(41883),p=c(99120),q=c(67594),r=c(72345),s=c(49209),t=c(37606),u=c(18205),v=c(94107),w=c(14071),x=c(76558),y=c(16276),z=c(32655);c(93048);var A=a([n]);n=(A.then?(await A)():A)[0];let C={antigravity:new e.c,azure:new f.P,"gemini-cli":new g.V,github:new h.x,iflow:new i.r,qoder:new j.DH,kiro:new k.B,kimchi:new l.BL,codex:new m.T,cursor:new n.o,cu:new n.o,vertex:new o.w("vertex"),"vertex-partner":new o.w("vertex-partner"),qwen:new p.R,opencode:new q.j,"opencode-go":new r.H,"grok-web":new s.$,"perplexity-web":new t.Ay,"ollama-local":new u.D,commandcode:new v.A,"xiaomi-tokenplan":new w.F,"mimo-free":new x.Yh,mmf:new x.Yh,"codebuddy-cn":new y.v},D=new Map;function B(a){return C[a]?C[a]:(D.has(a)||D.set(a,new z.L(a)),D.get(a))}d()}catch(a){d(a)}})},96684:(a,b,c)=>{"use strict";c.d(b,{F:()=>e,Q:()=>f});var d=c(62457);function e(a,b){switch(b){case"claude":switch(a){case d.Ut.END_TURN:return d.bC.STOP;case d.Ut.MAX_TOKENS:return d.bC.LENGTH;case d.Ut.TOOL_USE:return d.bC.TOOL_CALLS;case d.Ut.STOP_SEQUENCE:default:return d.bC.STOP}case"commandcode":switch(a){case"stop":case"error":return d.bC.STOP;case"length":return d.bC.LENGTH;case"tool-calls":case"tool_use":return d.bC.TOOL_CALLS;case"content-filter":return d.bC.CONTENT_FILTER;default:return a||d.bC.STOP}case"gemini":{let b=String(a).toUpperCase();if(d.lW.has(b))return d.bC.ERROR;if(d.zh.has(b))return d.bC.CONTENT_FILTER;switch(b){case d.a_.STOP:return d.bC.STOP;case d.a_.MAX_TOKENS:return d.bC.LENGTH;default:return d.bC.STOP}}case"kiro":case"ollama":switch(a){case"tool_calls":case"tool_use":return d.bC.TOOL_CALLS;case"length":case"max_tokens":return d.bC.LENGTH;default:return d.bC.STOP}default:return a||d.bC.STOP}}function f(a,b){if("claude"!==b)return a;switch(a){case d.bC.STOP:return d.Ut.END_TURN;case d.bC.LENGTH:return d.Ut.MAX_TOKENS;case d.bC.TOOL_CALLS:return d.Ut.TOOL_USE;case d.bC.ERROR:default:return d.Ut.END_TURN}}},96997:(a,b,c)=>{"use strict";c.d(b,{Og:()=>z,jT:()=>y,Sc:()=>A,I9:()=>q,AH:()=>v,Ql:()=>u,$B:()=>F,pb:()=>C});var d=c(38421),e=c(10793),f=c(26762);let g=new Map;function h(a,b){g.get(a)===b&&(g.delete(a),b.cleanupTimer&&clearTimeout(b.cleanupTimer))}async function i(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=g.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;h(e,f)}let i={promise:null},j=(async()=>{try{let a=await c();if(a&&(a.accessToken||a.copilotToken||a.refreshToken)){let b;(b={result:a,expiresAt:Date.now()+1e4,cleanupTimer:null}).cleanupTimer=setTimeout(()=>{g.get(e)===b&&(g.delete(e),b.cleanupTimer=null)},1e4),b.cleanupTimer.unref?.(),g.set(e,b)}else h(e,i);return a}catch(a){throw h(e,i),a}})();return i.promise=j,g.set(e,i),j}var j=c(17438),k=c(85513);function l(a="",b=0){let c="";try{let b=a?JSON.parse(a):null;c=b?.error||b?.error_code||b?.code||""}catch{}return{status:b,errorCode:c||void 0,bodyLen:a?.length||0}}let m=null;async function n(a,b){return a?i("xai",a,async()=>{try{if(!m){let a=(0,j.oC)().createXaiService;if(!a)return b?.warn?.("TOKEN_REFRESH","xAI service not wired (setOpenSseDeps)"),null;m=await a()}let c=await m.refreshAccessToken(a);return{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,idToken:c.id_token}}catch(d){let a=String(d?.message||""),c=a.includes("invalid_grant")?"invalid_grant":a.includes("invalid_request")?"invalid_request":null;if(b?.warn?.("TOKEN_REFRESH","xai refresh failed",c?{errorCode:c}:void 0),c)return{error:c};return null}},b):null}async function o(a,b,c,e){let f=d.xq[a];return f&&f.refreshUrl?b?i(a,b,async()=>{try{let c=await fetch(f.refreshUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:b,client_id:f.clientId,client_secret:f.clientSecret})});if(!c.ok){let b=await c.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:c.status,error:l(b,c.status)}),null}let d=await c.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||b,expiresIn:d.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function p(a,b){return a?i("claude",a,async()=>{try{let c=await fetch(e.NA.anthropic.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.claude.clientId})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:l(a,c.status)}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!f.access_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}},b):null}async function q(a,b,c,d){return a?i(`google:${b}`,a,async()=>{try{let f=await fetch(e.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,client_id:b,client_secret:c})});if(!f.ok){let a=await f.text();return d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:l(a,f.status)}),null}let g=await f.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}async function r(a,b){return a?i("qwen",a,async()=>{let c=e.NA.qwen.token;try{let e=await fetch(c,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.qwen.clientId})});if(200===e.status){let c=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Qwen token",{hasNewAccessToken:!!c.access_token,hasNewRefreshToken:!!c.refresh_token,expiresIn:c.expires_in}),{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,providerSpecificData:c.resource_url?{resourceUrl:c.resource_url}:void 0}}{let a=await e.text().catch(()=>"");b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:l(a,e.status)})}}catch(a){b?.warn?.("TOKEN_REFRESH","Network error trying Qwen endpoint",{error:a.message})}return b?.error?.("TOKEN_REFRESH","Failed to refresh Qwen token"),null},b):null}async function s(a,b){return a?i("codex",a,async()=>{try{let c=await fetch(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text(),d=function(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error?.code||c?.error||c?.error_code||"",e=c?.error_description||c?.message||a||"",f=`${d} ${e}`.toLowerCase();return{status:b,code:d,description:e,permanent:["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant"].some(a=>f.includes(a))}}(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:l(a,c.status),code:d.code,permanent:d.permanent}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,hasIdToken:!!f.id_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,idToken:f.id_token,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function t(a,b,c){if(a?.profileArn)return{};let d=c?.trim?.()||null;if(!d){let a=(0,j.oC)().fetchKiroProfileArn;a&&(d=await a(b))}return d?{providerSpecificData:{profileArn:d}}:{}}async function u(a,b,c,e=null){return a?i("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,m=b?.region;if("external_idp"===g){let d;try{let c=(0,j.oC)().buildExternalIdpRefreshParams;if(!c)throw Error("buildExternalIdpRefreshParams not wired");d=await c(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let g=await (0,f.Fm)(d.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:d.body},e);if(!g.ok){let a=await g.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:g.status,error:l(a,g.status)}),null}let h=await g.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in,providerSpecificData:d.providerSpecificData}}if(h&&i){let d="idc"===g&&(0,k.i7)(m)?`https://oidc.${m}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",j=await (0,f.Fm)(d,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},e);if(!j.ok){let a=await j.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:j.status,error:l(a,j.status)}),null}let n=await j.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!n.accessToken,expiresIn:n.expiresIn}),{accessToken:n.accessToken,refreshToken:n.refreshToken||a,expiresIn:n.expiresIn,...await t(b,n.accessToken,n.profileArn)}}let n=await (0,f.Fm)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},e);if(!n.ok){let a=await n.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:n.status,error:l(a,n.status)}),null}let o=await n.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!o.accessToken,expiresIn:o.expiresIn}),{accessToken:o.accessToken,refreshToken:o.refreshToken||a,expiresIn:o.expiresIn,...await t(b,o.accessToken,o.profileArn)}},c):null}async function v(a,b){return a?i("iflow",a,async()=>{let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),f=await fetch(e.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.iflow.clientId,client_secret:d.xq.iflow.clientSecret})});if(!f.ok){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:f.status,error:l(a,f.status)}),null}let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function w(a,b){return a?i("github",a,async()=>{let c={grant_type:"refresh_token",refresh_token:a,client_id:d.xq.github.clientId};d.xq.github.clientSecret&&(c.client_secret=d.xq.github.clientSecret);let f=await fetch(e.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(c)});if(!f.ok){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:f.status,error:l(a,f.status)}),null}let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function x(a,b){return a?i("codebuddy-cn",a,async()=>{let c=d.sr["codebuddy-cn"]||{},e=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:e.status,error:l(a,e.status)}),null}let f=await e.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}function y(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function z(a){return e.Wu[a]||3e5}function A(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let B=new Map;async function C(a,b){let d=a.client_email,f=B.get(d);if(f&&f.expiresAt-Date.now()>3e5)return{accessToken:f.token,expiresAt:f.expiresAt};try{let{SignJWT:f,importPKCS8:g}=await c.e(3675).then(c.bind(c,3675));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let h=await g(a.private_key.replace(/\\n/g,"\n"),"RS256"),i=Math.floor(Date.now()/1e3),j=await new f({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(i).setExpirationTime(i+3600).sign(h),k=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:j})});if(!k.ok){let a=await k.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:l,expires_in:m}=await k.json(),n=Date.now()+(m??3600)*1e3;return B.set(d,{token:l,expiresAt:n}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:l,expiresAt:n}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function D(a,b){let c=A(a.apiKey);if(c)return C(c,b);try{let c="string"==typeof a.apiKey?JSON.parse(a.apiKey):null;if(c?.type==="authorized_user"&&c.refresh_token&&c.client_id&&c.client_secret)return q(c.refresh_token,c.client_id,c.client_secret,b)}catch{}return null}let E={"gemini-cli":(a,b)=>q(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>q(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>p(a.refreshToken,b),codex:(a,b)=>s(a.refreshToken,b),qwen:(a,b)=>r(a.refreshToken,b),iflow:(a,b)=>v(a.refreshToken,b),github:(a,b)=>w(a.refreshToken,b),kiro:(a,b)=>u(a.refreshToken,a.providerSpecificData,b),xai:(a,b)=>n(a.refreshToken,b),"codebuddy-cn":(a,b)=>x(a.refreshToken,b),vertex:D,"vertex-partner":D};async function F(a,b,c){let d="vertex"===a||"vertex-partner"===a;if(!b.refreshToken&&!(d&&b?.apiKey))return null;let e=E[a];return e?e(b,c):o(a,b.refreshToken,b,c)}},97210:(a,b,c)=>{"use strict";let{createInflateRaw:d,Z_DEFAULT_WINDOWBITS:e}=c(38522),{isValidClientWindowBits:f}=c(94050),{MessageSizeExceededError:g}=c(61448),h=Buffer.from([0,0,255,255]),i=Symbol("kBuffer"),j=Symbol("kLength");class k{#bR;#bQ={};#bp=0;constructor(a,b){this.#bQ.serverNoContextTakeover=a.has("server_no_context_takeover"),this.#bQ.serverMaxWindowBits=a.get("server_max_window_bits"),this.#bp=b.maxPayloadSize}decompress(a,b,c){if(!this.#bR){let a=e;if(this.#bQ.serverMaxWindowBits){if(!f(this.#bQ.serverMaxWindowBits))return void c(Error("Invalid server_max_window_bits"));a=Number.parseInt(this.#bQ.serverMaxWindowBits)}try{this.#bR=d({windowBits:a})}catch(a){c(a);return}this.#bR[i]=[],this.#bR[j]=0,this.#bR.on("data",a=>{if(this.#bR[j]+=a.length,this.#bp>0&&this.#bR[j]>this.#bp){c(new g),this.#bR.removeAllListeners(),this.#bR=null;return}this.#bR[i].push(a)}),this.#bR.on("error",a=>{this.#bR=null,c(a)})}this.#bR.write(a),b&&this.#bR.write(h),this.#bR.flush(()=>{if(!this.#bR)return;let a=Buffer.concat(this.#bR[i],this.#bR[j]);this.#bR[i].length=0,this.#bR[j]=0,c(null,a)})}}a.exports={PerMessageDeflate:k}},97356:(a,b,c)=>{"use strict";let{Transform:d}=c(57075),{isASCIINumber:e,isValidLastEventId:f}=c(26376),g=Buffer.from("data"),h=Buffer.from("event"),i=Buffer.from("id"),j=Buffer.from("retry");function k(a,b,c){if(b!==c.length)return!1;for(let d=0;d<b;d++)if(a[d]!==c[d])return!1;return!0}class l extends d{state;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;chunks=[];chunkIndex=0;pos=0;lineChunkIndex=0;linePos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(a={}){a.readableObjectMode=!0,super(a),this.state=a.eventSourceSettings||{},a.push&&(this.push=a.push)}_transform(a,b,c){if(0===a.length||(this.chunks.push(a),this.checkBOM&&this.handleBOM()))return void c();for(;this.hasCurrentByte();){let a=this.currentByte();if(this.eventEndCheck){if(this.crlfCheck){if(10===a){this.crlfCheck=!1,this.consumeCurrentByte();continue}this.crlfCheck=!1}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.consumeCurrentByte(),this.hasPendingEvent()&&this.processEvent(this.event),this.clearEvent();continue}this.eventEndCheck=!1;continue}if(10===a||13===a){13===a&&(this.crlfCheck=!0),this.parseLine(this.readLine(),this.event),this.consumeCurrentByte(),this.eventEndCheck=!0;continue}this.advanceCursor()}c()}parseLine(a,b){if(0===a.length)return;let c=a.indexOf(58);if(0===c)return;let d=a.length,e=a.length;if(-1!==c&&(d=c,32===a[e=c+1]&&++e),k(a,d,g)){let c=a.toString("utf8",e);void 0===b.data?b.data=c:b.data+=`
|
|
465
|
+
${c}`;return}if(k(a,d,j)){(function(a,b){if(b>=a.length)return!1;for(let c=b;c<a.length;c++)if(a[c]<48||a[c]>57)return!1;return!0})(a,e)&&(b.retry=a.toString("utf8",e));return}if(k(a,d,i)){(function(a,b){for(let c=b;c<a.length;c++)if(0===a[c])return!1;return!0})(a,e)&&(b.id=a.toString("utf8",e));return}if(k(a,d,h)){let c=a.toString("utf8",e);c.length>0&&(b.event=c)}}processEvent(a){a.retry&&e(a.retry)&&(this.state.reconnectionTime=parseInt(a.retry,10)),void 0!==a.id&&f(a.id)&&(this.state.lastEventId=a.id),void 0!==a.data&&this.push({type:a.event||"message",options:{data:a.data,lastEventId:this.state.lastEventId,origin:this.state.origin}})}clearEvent(){this.event.data=void 0,this.event.event=void 0,this.event.id=void 0,this.event.retry=void 0}hasPendingEvent(){return void 0!==this.event.data||void 0!==this.event.event||void 0!==this.event.id||void 0!==this.event.retry}hasCurrentByte(){return this.chunkIndex<this.chunks.length&&this.pos<this.chunks[this.chunkIndex].length}currentByte(){return this.chunks[this.chunkIndex][this.pos]}consumeCurrentByte(){this.advanceCursor(),this.syncLineStartToCursor()}advanceCursor(){for(this.pos++;this.chunkIndex<this.chunks.length&&this.pos>=this.chunks[this.chunkIndex].length;)this.chunkIndex++,this.pos=0}syncLineStartToCursor(){this.lineChunkIndex=this.chunkIndex,this.linePos=this.pos,this.dropConsumedChunks()}dropConsumedChunks(){for(;this.lineChunkIndex>0;)this.chunks.shift(),this.lineChunkIndex--,this.chunkIndex--;this.chunkIndex===this.chunks.length&&(this.chunks.length=0,this.chunkIndex=0,this.pos=0,this.lineChunkIndex=0,this.linePos=0)}readLine(){if(this.lineChunkIndex===this.chunkIndex)return this.chunks[this.chunkIndex].subarray(this.linePos,this.pos);let a=[],b=0;for(let c=this.lineChunkIndex;c<=this.chunkIndex;c++){let d=this.chunks[c],e=c===this.lineChunkIndex?this.linePos:0,f=c===this.chunkIndex?this.pos:d.length,g=d.subarray(e,f);b+=g.length,a.push(g)}return Buffer.concat(a,b)}peekBufferedByte(a){let b=this.lineChunkIndex,c=this.linePos;for(;b<this.chunks.length;){let d=this.chunks[b],e=d.length-c;if(a<e)return d[c+a];a-=e,b++,c=0}}discardLeadingBytes(a){for(;a>0&&this.lineChunkIndex<this.chunks.length;){let b=this.chunks[this.lineChunkIndex].length-this.linePos;a<b?(this.linePos+=a,a=0):(a-=b,this.lineChunkIndex++,this.linePos=0)}this.chunkIndex=this.lineChunkIndex,this.pos=this.linePos,this.dropConsumedChunks()}handleBOM(){let a=this.peekBufferedByte(0),b=this.peekBufferedByte(1),c=this.peekBufferedByte(2);return void 0===b?239===a||(this.checkBOM=!1,!0):void 0===c?239===a&&187===b||(this.checkBOM=!1,!1):(239===a&&187===b&&191===c&&this.discardLeadingBytes(3),this.checkBOM=!1,!this.hasCurrentByte())}}a.exports={EventSourceStream:l}},97465:(a,b,c)=>{"use strict";let d=c(34589),{AsyncResource:e}=c(16698),{InvalidArgumentError:f,SocketError:g}=c(61448),h=c(84285),{addSignal:i,removeSignal:j}=c(73135);class k extends e{constructor(a,b){if(!a||"object"!=typeof a)throw new f("invalid opts");if("function"!=typeof b)throw new f("invalid callback");const{signal:c,opaque:d,responseHeaders:e}=a;if(c&&"function"!=typeof c.on&&"function"!=typeof c.addEventListener)throw new f("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=d||null,this.responseHeaders=e||null,this.callback=b,this.abort=null,i(this,c)}onRequestStart(a,b){this.reason?a.abort(this.reason):(d(this.callback),this.abort=b=>a.abort(b),this.context=b)}onResponseStart(){throw new g("bad connect",null)}onRequestUpgrade(a,b,c,d){let{callback:e,opaque:f,context:g}=this;j(this),this.callback=null;let i=c,k=a?.rawHeaders;null!=i&&(i="raw"===this.responseHeaders?h.parseRawHeaders(k):c),this.runInAsyncScope(e,null,null,{statusCode:b,headers:i,socket:d,opaque:f,context:g})}onResponseError(a,b){let{callback:c,opaque:d}=this;j(this),c&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(c,null,b,{opaque:d})}))}}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),d={...b,method:"CONNECT"};this.dispatch(d,a)}catch(d){if("function"!=typeof c)throw d;let a=b?.opaque;queueMicrotask(()=>c(d,{opaque:a}))}}},97678:(a,b,c)=>{"use strict";let d,e=c(34589),f=c(84285),{channels:g}=c(62571),h=c(64704),{RequestContentLengthMismatchError:i,ResponseContentLengthMismatchError:j,RequestAbortedError:k,HeadersTimeoutError:l,HeadersOverflowError:m,SocketError:n,InformationalError:o,BodyTimeoutError:p,HTTPParserError:q,ResponseExceededMaxSizeError:r}=c(61448),{kUrl:s,kReset:t,kClient:u,kParser:v,kBlocking:w,kRunning:x,kPending:y,kSize:z,kWriting:A,kQueue:B,kNoRef:C,kKeepAliveDefaultTimeout:D,kHostHeader:E,kPendingIdx:F,kRunningIdx:G,kError:H,kPipelining:I,kSocket:J,kKeepAliveTimeoutValue:K,kMaxHeadersSize:L,kKeepAliveMaxTimeout:M,kKeepAliveTimeoutThreshold:N,kHeadersTimeout:O,kBodyTimeout:P,kStrictContentLength:Q,kMaxRequests:R,kCounter:S,kMaxResponseSize:T,kOnError:U,kResume:V,kHTTPContext:W,kClosed:X}=c(49176),Y=c(65429),Z=Buffer.alloc(0),$=Buffer[Symbol.species],_=f.removeAllListeners,aa=Symbol("kIdleSocketValidation"),ab=Symbol("kIdleSocketValidationTimeout"),ac=Symbol("kSocketUsed"),ad=null,ae=null,af=null,ag=0,ah=null,ai=null;class aj{constructor(a,b,{exports:c}){this.llhttp=c,this.ptr=this.llhttp.llhttp_alloc(Y.TYPE.RESPONSE),this.client=a,this.socket=b,this.timeout=null,this.timeoutWeakRef=new WeakRef(this),this.timeoutValue=null,this.timeoutType=null,this.statusCode=0,this.statusText="",this.upgrade=!1,this.headers=[],this.headersSize=0,this.headersMaxSize=a[L],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength=-1,this.connectionKeepAlive=!1,this.maxResponseSize=a[T]}setTimeout(a,b){a!==this.timeoutValue||1&b^1&this.timeoutType?(this.timeout&&(h.clearTimeout(this.timeout),this.timeout=null),a&&(1&b?this.timeout=h.setFastTimeout(ak,a,this.timeoutWeakRef):(this.timeout=setTimeout(ak,a,this.timeoutWeakRef),this.timeout?.unref())),this.timeoutValue=a):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=b}resume(){!this.socket.destroyed&&this.paused&&(e(null!=this.ptr),e(null===ae),this.llhttp.llhttp_resume(this.ptr),e(5===this.timeoutType),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||Z),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let a=this.socket.read();if(null===a)break;this.execute(a)}}execute(a){e(null===ae),e(null!=this.ptr),e(!this.paused);let{socket:b,llhttp:c}=this;a.length>ag&&(ah&&c.free(ah),ag=4096*Math.ceil(a.length/4096),ah=c.malloc(ag)),(null===ai||ai.buffer!==c.memory.buffer||ai.byteOffset!==ah||ai.byteLength!==ag)&&(ai=new Uint8Array(c.memory.buffer,ah,ag)),ai.set(a);try{let d;try{af=a,ae=this,d=c.llhttp_execute(this.ptr,ah,a.length)}finally{ae=null,af=null}if(d!==Y.ERROR.OK){let e=a.subarray(c.llhttp_get_error_pos(this.ptr)-ah);if(d===Y.ERROR.PAUSED_UPGRADE)this.onUpgrade(e);else if(d===Y.ERROR.PAUSED)this.paused=!0,b.unshift(e);else throw this.createError(d,e)}}catch(a){f.destroy(b,a)}}finish(){let a;e(null===ae),e(null!=this.ptr);let{llhttp:b}=this;if(this.paused){let a;do b.llhttp_resume(this.ptr),this.paused=!1,a=this.socket.read()||Z,this.execute(a);while(this.paused&&a.length>0);this.paused&&(b.llhttp_resume(this.ptr),this.paused=!1)}try{ae=this,a=b.llhttp_finish(this.ptr)}finally{ae=null}return a===Y.ERROR.OK?null:a===Y.ERROR.PAUSED||a===Y.ERROR.PAUSED_UPGRADE?(this.paused=!0,null):this.createError(a,Z)}createError(a,b){let{llhttp:c,contentLength:d,bytesRead:e}=this;if(-1!==d&&e!==d)return new j;let f=c.llhttp_get_error_reason(this.ptr),g="";if(f){let a=new Uint8Array(c.memory.buffer,f).indexOf(0);g="Response does not match the HTTP/1.1 protocol ("+Buffer.from(c.memory.buffer,f,a).toString()+")"}return new q(g,Y.ERROR[a],b)}destroy(){e(null===ae),e(null!=this.ptr),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&h.clearTimeout(this.timeout),this.timeout=null,this.timeoutValue=null,this.timeoutType=null,this.paused=!1}onStatus(a){return this.statusText=a.toString(),0}onMessageBegin(){let{socket:a,client:b}=this;if(a.destroyed)return -1;if(0===b[x])return f.destroy(a,new n("bad response",f.getSocketInfo(a))),-1;let c=b[B][b[G]];return c?(c.onResponseStarted(),0):-1}onHeaderField(a){let b=this.headers.length;return(1&b)==0?this.headers.push(a):this.headers[b-1]=Buffer.concat([this.headers[b-1],a]),this.trackHeader(a.length),0}onHeaderValue(a){let b=this.headers.length;(1&b)==1?(this.headers.push(a),b+=1):this.headers[b-1]=Buffer.concat([this.headers[b-1],a]);let c=this.headers[b-2];if(10===c.length){let d=f.bufferToLowerCasedHeaderName(c);"keep-alive"===d?this.keepAlive+=a.toString():"connection"===d&&(this.connectionKeepAlive=10===this.headers[b-1].length&&"keep-alive"===f.bufferToLowerCasedHeaderName(this.headers[b-1]))}else if(14===c.length&&"content-length"===f.bufferToLowerCasedHeaderName(c)){-1===this.contentLength&&(this.contentLength=0);for(let b=0;b<a.length;b++)this.contentLength=10*this.contentLength+(a[b]-48)}return this.trackHeader(a.length),0}trackHeader(a){this.headersSize+=a,this.headersSize>=this.headersMaxSize&&f.destroy(this.socket,new m)}onUpgrade(a){let{upgrade:b,client:c,socket:d,headers:g,statusCode:h}=this;e(b),e(c[J]===d),e(!d.destroyed),e(!this.paused),e((1&g.length)==0);let i=c[B][c[G]];e(i),e(i.upgrade||"CONNECT"===i.method),this.statusCode=0,this.statusText="",this.shouldKeepAlive=!1,this.headers=[],this.headersSize=0,d.unshift(a),d[v].destroy(),d[v]=null,d[u]=null,d[H]=null,_(d),c[J]=null,c[W]=null,c[B][c[G]++]=null,c.emit("disconnect",c[s],[c],new o("upgrade"));try{i.onRequestUpgrade(h,g,d)}catch(a){f.destroy(d,a)}c[V]()}onHeadersComplete(a,b,c){let{client:d,socket:g,headers:h,statusText:i}=this;if(g.destroyed)return -1;if(0===d[x])return f.destroy(g,new n("bad response",f.getSocketInfo(g))),-1;let j=d[B][d[G]];if(!j)return -1;if(e(!this.upgrade),e(this.statusCode<200),100===a)return f.destroy(g,new n("bad response",f.getSocketInfo(g))),-1;if(b&&!j.upgrade)return f.destroy(g,new n("bad upgrade",f.getSocketInfo(g))),-1;if(e(3===this.timeoutType),this.statusCode=a,this.shouldKeepAlive=c||"HEAD"===j.method&&!g[t]&&this.connectionKeepAlive,this.statusCode>=200){let a=null!=j.bodyTimeout?j.bodyTimeout:d[P];this.setTimeout(a,5)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if("CONNECT"===j.method||b)return e(1===d[x]),this.upgrade=!0,2;if(e((1&this.headers.length)==0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&d[I]){let a=this.keepAlive?f.parseKeepAliveTimeout(this.keepAlive):null;if(null!=a){let b=Math.min(a-d[N],d[M]);b<=0?g[t]=!0:d[K]=b}else d[K]=d[D]}else g[t]=!0;let k=!1===j.onResponseStart(a,h,this.resume,i);return j.aborted?-1:"HEAD"===j.method||a<200?1:(g[w]&&(g[w]=!1,d[V]()),k?Y.ERROR.PAUSED:0)}onBody(a){let{client:b,socket:c,statusCode:d,maxResponseSize:g}=this;if(c.destroyed)return -1;let h=b[B][b[G]];return(e(h),e(5===this.timeoutType),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),e(d>=200),g>-1&&this.bytesRead+a.length>g)?(f.destroy(c,new r),-1):(this.bytesRead+=a.length,!1===h.onResponseData(a))?Y.ERROR.PAUSED:0}onMessageComplete(){let{client:a,socket:b,statusCode:c,upgrade:d,headers:g,contentLength:h,bytesRead:i,shouldKeepAlive:k}=this;if(b.destroyed&&(!c||k))return -1;if(d)return 0;e(c>=100),e((1&this.headers.length)==0);let l=a[B][a[G]];return(e(l),this.statusCode=0,this.statusText="",this.bytesRead=0,this.contentLength=-1,this.keepAlive="",this.connectionKeepAlive=!1,this.headers=[],this.headersSize=0,c<200)?0:"HEAD"!==l.method&&-1!==h&&i!==h?(f.destroy(b,new j),-1):(l.onResponseEnd(g),a[B][a[G]++]=null,b[ac]=0===a[y],b[A])?(e(0===a[x]),f.destroy(b,new o("reset")),Y.ERROR.PAUSED):k?b[t]&&0===a[x]?(f.destroy(b,new o("reset")),Y.ERROR.PAUSED):(null==a[I]||1===a[I]?setImmediate(a[V]):a[V](),0):(f.destroy(b,new o("reset")),Y.ERROR.PAUSED)}}function ak(a){let b=a.deref();if(!b)return;let{socket:c,timeoutType:d,client:g,paused:h}=b;3===d?(!c[A]||c.writableNeedDrain||g[x]>1)&&(e(!h,"cannot be paused while waiting for headers"),f.destroy(c,new l)):5===d?h||f.destroy(c,new p):8===d&&(e(0===g[x]&&g[K]),f.destroy(c,new o("socket idle timeout")))}function al(a){e("ERR_TLS_CERT_ALTNAME_INVALID"!==a.code);let b=this[v];if("ECONNRESET"===a.code&&b.statusCode&&!b.shouldKeepAlive){let a=b.finish();a&&(this[H]=a,this[u][U](a));return}this[H]=a,this[u][U](a)}function am(){this[v]?.readMore()}function an(){let a=this[v];if(a.statusCode&&!a.shouldKeepAlive){let b=a.finish();b&&f.destroy(this,b);return}f.destroy(this,new n("other side closed",f.getSocketInfo(this)))}function ao(){let a=this[v];aq(this),a&&(this[H]||!a.statusCode||a.shouldKeepAlive||(this[H]=a.finish()||this[H]),this[v].destroy(),this[v]=null);let b=this[H]||new n("closed",f.getSocketInfo(this)),c=this[u];if(c[J]=null,c[W]=null,c.destroyed){e(0===c[y]);let a=c[B].splice(c[G]);for(let d=0;d<a.length;d++){let e=a[d];f.errorRequest(c,e,b)}}else if(c[x]>0&&"UND_ERR_INFO"!==b.code){let a=c[B][c[G]];c[B][c[G]++]=null,f.errorRequest(c,a,b)}c[F]=c[G],e(0===c[x]),c.emit("disconnect",c[s],[c],b),c[V]()}function ap(){this[X]=!0}function aq(a){a[ab]&&(clearTimeout(a[ab]),a[ab]=null),a[aa]=0}function ar(a,b,c,d,g,h,i,j){try{b?f.isBuffer(b)&&(e(h===b.byteLength,"buffer body must have content length"),g.cork(),g.write(`${i}content-length: ${h}\r
|
|
466
|
+
\r
|
|
467
|
+
`,"latin1"),g.write(b),g.uncork(),d.onBodySent(b),j||!1===d.reset||(g[t]=!0)):0===h?g.write(`${i}content-length: 0\r
|
|
468
|
+
\r
|
|
469
|
+
`,"latin1"):(e(null===h,"no body must not have content length"),g.write(`${i}\r
|
|
470
|
+
`,"latin1")),d.onRequestSent(),c[V]()}catch(b){a(b)}}async function as(a,b,c,d,e,f,g,h){try{if(null!=f&&f!==b.size)throw new i;let a=Buffer.from(await b.arrayBuffer());e.cork(),e.write(`${g}content-length: ${f}\r
|
|
471
|
+
\r
|
|
472
|
+
`,"latin1"),e.write(a),e.uncork(),d.onBodySent(a),d.onRequestSent(),h||!1===d.reset||(e[t]=!0),c[V]()}catch(b){a(b)}}async function at(a,b,c,d,f,g,h,i){e(0!==g||0===c[x],"iterator body cannot be pipelined");let j=null;function k(){if(j){let a=j;j=null,a()}}let l=()=>new Promise((a,b)=>{e(null===j),f[H]?b(f[H]):j=a});f.on("close",k).on("drain",k);let m=new au({abort:a,socket:f,request:d,contentLength:g,client:c,expectsPayload:i,header:h});try{for await(let a of b){if(f[H])throw f[H];m.write(a)||await l()}m.end()}catch(a){m.destroy(a)}finally{f.off("close",k).off("drain",k)}}class au{constructor({abort:a,socket:b,request:c,contentLength:d,client:e,expectsPayload:f,header:g}){this.socket=b,this.request=c,this.contentLength=d,this.client=e,this.bytesWritten=0,this.expectsPayload=f,this.header=g,this.abort=a,b[A]=!0}write(a){let{socket:b,request:c,contentLength:d,client:e,bytesWritten:f,expectsPayload:g,header:h}=this;if(b[H])throw b[H];if(b.destroyed)return!1;let j=a instanceof Uint8Array?a.byteLength:Buffer.byteLength(a);if(!j)return!0;if(null!==d&&f+j>d){if(e[Q])throw new i;process.emitWarning(new i)}b.cork(),0===f&&(g||!1===c.reset||(b[t]=!0),null===d?b.write(`${h}transfer-encoding: chunked\r
|
|
473
|
+
`,"latin1"):b.write(`${h}content-length: ${d}\r
|
|
474
|
+
\r
|
|
475
|
+
`,"latin1")),null===d&&b.write(`\r
|
|
476
|
+
${j.toString(16)}\r
|
|
477
|
+
`,"latin1"),this.bytesWritten+=j;let k=b.write(a);return b.uncork(),c.onBodySent(a),!k&&b[v].timeout&&3===b[v].timeoutType&&b[v].timeout.refresh&&b[v].timeout.refresh(),k}end(){let{socket:a,contentLength:b,client:c,bytesWritten:d,expectsPayload:e,header:f,request:g}=this;if(g.onRequestSent(),a[A]=!1,a[H])throw a[H];if(!a.destroyed){if(0===d?e?a.write(`${f}content-length: 0\r
|
|
478
|
+
\r
|
|
479
|
+
`,"latin1"):a.write(`${f}\r
|
|
480
|
+
`,"latin1"):null===b&&a.write("\r\n0\r\n\r\n","latin1"),null!==b&&d!==b)if(c[Q])throw new i;else process.emitWarning(new i);a[v].timeout&&3===a[v].timeoutType&&a[v].timeout.refresh&&a[v].timeout.refresh(),c[V]()}}destroy(a){let{socket:b,client:c,abort:d}=this;b[A]=!1,a&&(e(c[x]<=1,"pipeline should only contain this request"),d(a))}}a.exports=function(a,b){if(a[J]=b,ad||(ad=function(){let a,b=process.env.JEST_WORKER_ID?c(68759):void 0,d="ppc64"!==process.arch;if("1"===process.env.UNDICI_NO_WASM_SIMD?d=!1:"0"===process.env.UNDICI_NO_WASM_SIMD&&(d=!0),d)try{a=new WebAssembly.Module(c(23423))}catch{}return a||(a=new WebAssembly.Module(b||c(68759))),new WebAssembly.Instance(a,{env:{wasm_on_url:(a,b,c)=>0,wasm_on_status:(a,b,c)=>{e(ae.ptr===a);let d=b-ah+af.byteOffset;return ae.onStatus(new $(af.buffer,d,c))},wasm_on_message_begin:a=>(e(ae.ptr===a),ae.onMessageBegin()),wasm_on_header_field:(a,b,c)=>{e(ae.ptr===a);let d=b-ah+af.byteOffset;return ae.onHeaderField(new $(af.buffer,d,c))},wasm_on_header_value:(a,b,c)=>{e(ae.ptr===a);let d=b-ah+af.byteOffset;return ae.onHeaderValue(new $(af.buffer,d,c))},wasm_on_headers_complete:(a,b,c,d)=>(e(ae.ptr===a),ae.onHeadersComplete(b,1===c,1===d)),wasm_on_body:(a,b,c)=>{e(ae.ptr===a);let d=b-ah+af.byteOffset;return ae.onBody(new $(af.buffer,d,c))},wasm_on_message_complete:a=>(e(ae.ptr===a),ae.onMessageComplete())}})}()),b.errored)throw b.errored;if(b.destroyed)throw new n("destroyed");return b[C]=!1,b[A]=!1,b[t]=!1,b[w]=!1,b[aa]=0,b[ab]=null,b[ac]=!1,b[v]=new aj(a,b,ad),f.addListener(b,"error",al),f.addListener(b,"readable",am),f.addListener(b,"end",an),f.addListener(b,"close",ao),b[X]=!1,b.on("close",ap),{version:"h1",defaultPipelining:1,write:b=>(function(a,b){var h,j,l,m,n,p,q,r;let s,u,v,y,z,B,{method:C,path:D,host:F,upgrade:G,blocking:H,reset:K}=b,{body:L,headers:M,contentLength:N}=b,O="PUT"===C||"POST"===C||"PATCH"===C||"QUERY"===C||"PROPFIND"===C||"PROPPATCH"===C;if(f.isFormDataLike(L)){d||(d=c(35381).extractBody);let[a,e]=d(L);null==b.contentType&&M.push("content-type",e),L=a.stream,N=a.length}else f.isBlobLike(L)&&null==b.contentType&&L.type&&M.push("content-type",L.type);L&&"function"==typeof L.read&&L.read(0);let P=f.bodyLength(L);if(null===(N=P??N)&&(N=b.contentLength),0!==N||O||(N=null),"GET"!==C&&"HEAD"!==C&&"OPTIONS"!==C&&"TRACE"!==C&&"CONNECT"!==C&&N>0&&null!==b.contentLength&&b.contentLength!==N){if(a[Q])return f.errorRequest(a,b,new i),!1;process.emitWarning(new i)}let T=a[J];aq(T);let U=c=>{b.aborted||b.completed||(f.errorRequest(a,b,c||new k),f.destroy(L),f.destroy(T,new o("aborted")))};try{b.onRequestStart(U,null)}catch(c){f.errorRequest(a,b,c)}if(b.aborted)return!1;"HEAD"===C&&(T[t]=!0),(G||"CONNECT"===C)&&(T[t]=!0),null!=K&&(T[t]=K),a[R]&&++T[S]>=a[R]&&(T[t]=!0),H&&(T[w]=!0),T.setTypeOfService&&T.setTypeOfService(b.typeOfService);let V=`${C} ${D} HTTP/1.1\r
|
|
481
|
+
`;if("string"==typeof F?V+=`host: ${F}\r
|
|
482
|
+
`:V+=a[E],G?V+=`connection: upgrade\r
|
|
483
|
+
upgrade: ${G}\r
|
|
484
|
+
`:a[I]&&!T[t]?V+="connection: keep-alive\r\n":V+="connection: close\r\n",Array.isArray(M))for(let a=0;a<M.length;a+=2){let b=M[a+0],c=M[a+1];if(Array.isArray(c))for(let a=0;a<c.length;a++)V+=`${b}: ${c[a]}\r
|
|
485
|
+
`;else V+=`${b}: ${c}\r
|
|
486
|
+
`}return g.sendHeaders.hasSubscribers&&g.sendHeaders.publish({request:b,headers:V,socket:T}),L&&0!==P?f.isBuffer(L)?ar(U,L,a,b,T,N,V,O):f.isBlobLike(L)?"function"==typeof L.stream?at(U,L.stream(),a,b,T,N,V,O):as(U,L,a,b,T,N,V,O):f.isStream(L)?(h=U,j=L,l=a,m=b,n=T,p=N,q=V,r=O,e(0!==p||0===l[x],"stream body cannot be pipelined"),s=!1,u=new au({abort:h,socket:n,request:m,contentLength:p,client:l,expectsPayload:r,header:q}),v=function(a){if(!s)try{!u.write(a)&&this.pause&&this.pause()}catch(a){f.destroy(this,a)}},y=function(){!s&&j.resume&&j.resume()},z=function(){if(queueMicrotask(()=>{j.removeListener("error",B)}),!s){let a=new k;queueMicrotask(()=>B(a))}},B=function(a){if(!s){if(s=!0,e(n.destroyed||n[A]&&l[x]<=1),n.off("drain",y).off("error",B),j.removeListener("data",v).removeListener("end",B).removeListener("close",z),!a)try{u.end()}catch(b){a=b}u.destroy(a),a&&("UND_ERR_INFO"!==a.code||"reset"!==a.message)?f.destroy(j,a):f.destroy(j)}},j.on("data",v).on("end",B).on("error",B).on("close",z),j.resume&&j.resume(),n.on("drain",y).on("error",B),j.errorEmitted??j.errored?setImmediate(B,j.errored):(j.endEmitted??j.readableEnded)&&setImmediate(B,null),(j.closeEmitted??j.closed)&&setImmediate(z)):f.isIterable(L)?at(U,L,a,b,T,N,V,O):e(!1):ar(U,null,a,b,T,N,V,O),!0})(a,b),resume(){!function(a){let b=a[J];if(b&&!b.destroyed){if(0===a[z]?!b[C]&&b.unref&&(b.unref(),b[C]=!0):b[C]&&b.ref&&(b.ref(),b[C]=!1),0===a[x]&&a[y]>0&&b[ac]){if(0===b[aa]){b[aa]=1,b[ab]=setTimeout(()=>{b[ab]=null,b[aa]=2,a[J]!==b||b.destroyed||a[V]()},0),b[ab].unref?.(),b[v].readMore(),b.destroyed;return}if(1===b[aa]){b[v].readMore(),b.destroyed;return}}if(0===a[x]&&(b[v].readMore(),b.destroyed))return;if(0===a[z])8!==b[v].timeoutType&&b[v].setTimeout(a[K],8);else if(a[x]>0&&b[v].statusCode<200&&3!==b[v].timeoutType){let c=a[B][a[G]],d=null!=c.headersTimeout?c.headersTimeout:a[O];b[v].setTimeout(d,3)}}}(a)},destroy(a,c){b[X]?queueMicrotask(c):(b.on("close",c),b.destroy(a))},get destroyed(){return b.destroyed},busy:c=>!!(b[A]||b[t]||b[w]||1===b[aa]||c&&(a[x]>0&&!c.idempotent||a[x]>0&&(c.upgrade||"CONNECT"===c.method)||a[x]>0&&0!==f.bodyLength(c.body)&&(f.isStream(c.body)||f.isAsyncIterable(c.body)||f.isFormDataLike(c.body))))||!1}}},97915:(a,b,c)=>{"use strict";function d(a){return a.split(/[-_\s]+/).filter(Boolean).map(a=>/^\d/.test(a)?a:a.charAt(0).toUpperCase()+a.slice(1)).join(" ")}c.d(b,{pk:()=>g,Kq:()=>f});let e=[[/^kimi-k(\d+(?:\.\d+)?)(-thinking)?$/i,a=>`Kimi K${a[1]}${a[2]?" Thinking":""}`],[/^glm-(\d+(?:\.\d+)?)(v)?$/i,a=>`GLM ${a[1]}${a[2]?"V (Vision)":""}`],[/^minimax-m(\d+(?:\.\d+)?)$/i,a=>`MiniMax M${a[1]}`],[/^gpt-(.+)$/i,a=>`GPT ${d(a[1])}`],[/^gemini-(.+)$/i,a=>`Gemini ${d(a[1])}`],[/^grok-(.+)$/i,a=>`Grok ${d(a[1])}`],[/^deepseek-(.+)$/i,a=>`DeepSeek ${d(a[1])}`],[/^qwen([\d.]+.*)$/i,a=>`Qwen ${d(a[1])}`]];function f(a){return"string"!=typeof a?a:a.replace(/(\d)-(\d)/g,"$1.$2")}function g(a){let b="string"==typeof a?{id:a}:a;return void 0!==b.name?b:{...b,name:function(a){if("string"!=typeof a)return a;for(let[b,c]of e){let d=a.match(b);if(d)return c(d)}return a}(b.id)}}},98369:(a,b,c)=>{"use strict";let{bufferToLowerCasedHeaderName:d}=c(84285),{HTTP_TOKEN_CODEPOINTS:e}=c(16537),{makeEntry:f}=c(2887),{webidl:g}=c(32984),h=c(34589),{isomorphicDecode:i}=c(70745),j=Buffer.from("--"),k=new TextDecoder,l=new TextDecoder("utf-8",{ignoreBOM:!0});function m(a,b,c){let d=c.position;for(;d<b.length&&a(b[d]);)++d;return b.subarray(c.position,c.position=d)}function n(a,b,c,d){let e=0,f=a.length-1;if(b)for(;e<a.length&&d(a[e]);)e++;if(c)for(;f>0&&d(a[f]);)f--;return 0===e&&f===a.length-1?a:a.subarray(e,f+1)}function o(a){return TypeError("Failed to parse body as FormData.",{cause:TypeError(a)})}function p(a){return a<=127&&32!==a&&9!==a&&!(a<=31||127===a)&&40!==a&&41!==a&&60!==a&&62!==a&&64!==a&&44!==a&&59!==a&&58!==a&&92!==a&&34!==a&&47!==a&&91!==a&&93!==a&&63!==a&&61!==a}a.exports={multipartFormDataParser:function(a,b){h("failure"!==b&&"multipart/form-data"===b.essence);let c=b.parameters.get("boundary");if(void 0===c)throw o("missing boundary in content-type header");let q=Buffer.from(`--${c}`,"utf8"),r=[],s={position:0},t=a.indexOf(q);if(-1===t)throw o("no boundary found in multipart body");for(s.position=t;;){let b,c;if(a.subarray(s.position,s.position+q.length).equals(q))s.position+=q.length;else throw o("expected a value starting with -- and the boundary");if(function(a,b,c){if(a.length<b.length)return!1;for(let d=0;d<b.length;d++)if(b[d]!==a[c.position+d])return!1;return!0}(a,j,s))return r;if(13!==a[s.position]||10!==a[s.position+1])throw o("expected CRLF");s.position+=2;let{name:t,filename:u,contentType:v,encoding:w}=function(a,b){let c=null,f=null,g=null,h=null;for(;;){if(13===a[b.position]&&10===a[b.position+1]){if(null===c)throw o("header name is null");return{name:c,filename:f,contentType:g,encoding:h}}let j=m(a=>10!==a&&13!==a&&58!==a,a,b);if(j=n(j,!0,!0,a=>9===a||32===a),!e.test(j.toString()))throw o("header name does not match the field-name token production");if(58!==a[b.position])throw o("expected :");switch(b.position++,m(a=>32===a||9===a,a,b),d(j)){case"content-disposition":{c=f=null;let d=!1;if("form-data"!==m(a=>p(a),a,b).toString("ascii").toLowerCase())throw o("expected form-data for content-disposition header");for(;b.position<a.length&&(13!==a[b.position]||10!==a[b.position+1]);){let e=function(a,b){let c;59===a[b.position]&&b.position++,m(a=>32===a||9===a,a,b);let d=m(a=>p(a)&&61!==a&&42!==a,a,b);if(0===d.length)return null;let e=d.toString("ascii").toLowerCase(),f=42===a[b.position];if(f&&b.position++,61!==a[b.position])return null;if(b.position++,m(a=>32===a||9===a,a,b),f){let d=m(a=>32!==a&&13!==a&&10!==a&&59!==a,a,b);if(117!==d[0]&&85!==d[0]||116!==d[1]&&84!==d[1]||102!==d[2]&&70!==d[2]||45!==d[3]||56!==d[4])throw o("unknown encoding, expected utf-8''");c=decodeURIComponent(k.decode(d.subarray(7)))}else if(34===a[b.position]){b.position++;let d=m(a=>10!==a&&13!==a&&34!==a,a,b);if(34!==a[b.position])throw o("Closing quote not found");b.position++,c=k.decode(d).replace(/%0A/ig,"\n").replace(/%0D/ig,"\r").replace(/%22/g,'"')}else{let d=m(a=>p(a)&&59!==a,a,b);c=k.decode(d)}return{name:e,value:c,extended:f}}(a,b);if(!e)break;"name"===e.name?c=e.value:"filename"===e.name&&(e.extended?(f=e.value,d=!0):d||(f=e.value))}if(null===c)throw o("name attribute is required in content-disposition header");break}case"content-type":{let c=m(a=>10!==a&&13!==a,a,b);g=i(c=n(c,!1,!0,a=>9===a||32===a));break}case"content-transfer-encoding":{let c=m(a=>10!==a&&13!==a,a,b);h=i(c=n(c,!1,!0,a=>9===a||32===a));break}default:m(a=>10!==a&&13!==a,a,b)}if(13!==a[b.position]||10!==a[b.position+1])throw o("expected CRLF");b.position+=2}}(a,s);s.position+=2;{let c=a.indexOf(q.subarray(2),s.position);if(-1===c)throw o("expected boundary after body");b=a.subarray(s.position,c-4),s.position+=b.length,"base64"===w&&(b=Buffer.from(b.toString(),"base64"))}if(13!==a[s.position]||10!==a[s.position+1])throw o("expected CRLF");s.position+=2,null!==u?(!function(a){for(let b=0;b<a.length;++b)if((-128&a.charCodeAt(b))!=0)return!1;return!0}(v??="text/plain")&&(v=""),c=new File([b],u,{type:v})):c=l.decode(Buffer.from(b)),h(g.is.USVString(t)),h("string"==typeof c&&g.is.USVString(c)||g.is.File(c)),r.push(f(t,c,u))}},validateBoundary:function(a){let b=a.length;if(b<27||b>70)return!1;for(let c=0;c<b;++c){let b=a.charCodeAt(c);if(!(b>=48&&b<=57||b>=65&&b<=90||b>=97&&b<=122||39===b||45===b||95===b))return!1}return!0}}},98976:(a,b,c)=>{"use strict";c.d(b,{Vq:()=>k,fp:()=>i});var d=c(96997),e=c(15251);let f=e.sr.codex?.maxRefreshAgeMs,g=new Map;function h(a){if(null==a||""===a)return null;if("number"==typeof a)return a<1e12?1e3*a:a;let b=new Date(a).getTime();return Number.isFinite(b)?b:null}function i(a,b,c=Date.now()){if(!b)return!1;let g=h(b?.expiresAt??b?.tokenExpiresAt);if(null!==g&&g-c<(0,d.Og)(a))return!0;let j=e.sr[a]?.maxRefreshAgeMs;return!!(j&&b.refreshToken&&function(a,b=Date.now(),c=f){let d=h(a?.lastRefreshAt??a?.lastRefresh??a?.providerSpecificData?.lastRefreshAt);return!d||b-d>=c}(b,c,j))}async function j(a,b,c){let d,e=(d=b?.connectionId||b?.id||b?.email||b?.name||b?.refreshToken?.slice?.(-16)||"default",`${a}:${d}`),f=g.get(e);if(f)return f;let h=Promise.resolve().then(c).finally(()=>{g.delete(e)});return g.set(e,h),h}async function k(a,b,c){return b?j(a,b,async()=>{let f=await (0,d.$B)(a,b,c);return function(a,b,c,f=Date.now()){var g,h;if(!c)return null;if((0,d.jT)(c))return c;let i={},j=new Date(f).toISOString();c.accessToken&&(i.accessToken=c.accessToken),c.apiKey&&(i.apiKey=c.apiKey),c.token&&(i.token=c.token);let k=c.refreshToken??b?.refreshToken;k&&(i.refreshToken=k);let l=c.idToken??b?.idToken;return l&&(i.idToken=l),c.expiresIn?(i.expiresIn=c.expiresIn,i.expiresAt=function(a,b=Date.now()){return a?new Date(b+1e3*a).toISOString():null}(c.expiresIn,f)):c.expiresAt&&(i.expiresAt=c.expiresAt),c.projectId&&(i.projectId=c.projectId),c.providerSpecificData&&(g=b?.providerSpecificData,i.providerSpecificData=(h=c.providerSpecificData)&&"object"==typeof h?{...g||{},...h}:g),c.copilotToken&&(i.copilotToken=c.copilotToken),c.copilotTokenExpiresAt&&(i.copilotTokenExpiresAt=c.copilotTokenExpiresAt),(e.sr[a]?.trackRefreshAt||i.accessToken||i.apiKey||i.token||i.refreshToken||i.copilotToken)&&(i.lastRefreshAt=c.lastRefreshAt||j),i}(a,b,f)}):null}},99120:(a,b,c)=>{"use strict";c.d(b,{R:()=>i});var d=c(32655),e=c(38421),f=c(10793);let g="QwenCode/0.12.3 (linux; x64)",h={role:"system",content:[{type:"text",text:"",cache_control:{type:"ephemeral"}}]};class i extends d.L{constructor(){super("qwen")}isUserConfiguredBase(a){return super.isUserConfiguredBase(a)||!!a?.providerSpecificData?.resourceUrl}buildUrl(a,b,c=0,d=null){let e=d?.providerSpecificData?.resourceUrl,f=e?e.replace(/^https?:\/\//,"").replace(/\/$/,""):"portal.qwen.ai";return`https://${f}/v1/chat/completions`}buildHeaders(a,b=!0){return function(a,b=!0){let c=a?.apiKey||a?.accessToken||"",d={"Content-Type":"application/json",Authorization:`Bearer ${c}`,"User-Agent":g,"X-DashScope-AuthType":"qwen-oauth","X-DashScope-CacheControl":"enable","X-DashScope-UserAgent":g,"X-Stainless-Arch":"x64","X-Stainless-Lang":"js","X-Stainless-Os":"Linux","X-Stainless-Package-Version":"5.11.0","X-Stainless-Retry-Count":"1","X-Stainless-Runtime":"node","X-Stainless-Runtime-Version":"v18.19.1",Connection:"keep-alive","Accept-Language":"*","Sec-Fetch-Mode":"cors"};return d.Accept=b?"text/event-stream":"application/json",d}(a,b)}transformRequest(a,b,c,d){let e=b&&"object"==typeof b?{...b}:b;c&&e?.messages&&!e.stream_options&&!e.thinking&&!e.enable_thinking&&!1!==e.stream&&(e.stream_options={include_usage:!0});var f=e=function(a){let b;if(!0!==(b=a?.thinking)&&a?.enable_thinking!==!0&&("object"!=typeof b||null===b||Array.isArray(b)||"enabled"!==b.type))return a;let c=a.tool_choice;return"required"!==c&&("object"!=typeof c||null===c)?a:{...a,tool_choice:"auto"}}(e);if(!f||"object"!=typeof f)return f;let g={...f};return Array.isArray(g.messages)?g.messages=[h,...g.messages]:g.messages=[h],g}async refreshCredentials(a,b){if(!a?.refreshToken)return null;try{let c=await fetch(f.NA.qwen.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:e.xq.qwen.clientId})});if(!c.ok)return null;let d=await c.json();return b?.info?.("TOKEN","qwen refreshed"),{accessToken:d.access_token,refreshToken:d.refresh_token||a.refreshToken,expiresIn:d.expires_in,providerSpecificData:{...a.providerSpecificData||{},...d.resource_url?{resourceUrl:d.resource_url}:{}}}}catch(a){return b?.error?.("TOKEN",`qwen refresh error: ${a.message}`),null}}}},99528:(a,b,c)=>{"use strict";a.exports.request=c(16712),a.exports.stream=c(26757),a.exports.pipeline=c(57435),a.exports.upgrade=c(77935),a.exports.connect=c(97465)},99887:(a,b,c)=>{"use strict";c.d(b,{OF:()=>g});var d=c(68531);let e=Math.max(0,Number.parseInt(process.env.CLIENT_USAGE_BUFFER_TOKENS||"0",10)||0);function f(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=e),void 0!==b.prompt_tokens&&(b.prompt_tokens+=e),void 0!==b.total_tokens?b.total_tokens+=e:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function g(a,b,c=d.h.OPENAI){var e,h;return e=function(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a).length;return Math.ceil(b/4)}catch(a){return 0}}(a),h=b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c===d.h.CLAUDE?f({input_tokens:e,output_tokens:h,estimated:!0}):f({prompt_tokens:e,completion_tokens:h,total_tokens:e+h,estimated:!0})}}};
|